From 649b33d7783cf3021928534b7ae127e0a89e8807 Mon Sep 17 00:00:00 2001 From: Jack Humbert Date: Tue, 21 Jun 2016 22:39:54 -0400 Subject: Renames keyboard folder to keyboards, adds couple of tmk's fixes (#432) * fixes from tmk's repo * rename keyboard to keyboards --- keyboards/ergodox_ez/keymaps/ab/compiled.hex | 1147 ++++++++++++++++++ .../ergodox_ez/keymaps/ab/keyboard-layout.json | 385 ++++++ .../ergodox_ez/keymaps/ab/keyboard-layout.png | Bin 0 -> 79440 bytes keyboards/ergodox_ez/keymaps/ab/keymap.c | 140 +++ keyboards/ergodox_ez/keymaps/ab/readme.md | 21 + .../ergodox_ez/keymaps/adnw_k_o_y/compiled.hex | 1133 +++++++++++++++++ keyboards/ergodox_ez/keymaps/adnw_k_o_y/keymap.c | 185 +++ keyboards/ergodox_ez/keymaps/adnw_k_o_y/readme.md | 7 + keyboards/ergodox_ez/keymaps/alexjj/compiled.hex | 1172 ++++++++++++++++++ keyboards/ergodox_ez/keymaps/alexjj/keymap.c | 238 ++++ keyboards/ergodox_ez/keymaps/alexjj/readme.md | 179 +++ keyboards/ergodox_ez/keymaps/alexjj/rl-layout.jpg | Bin 0 -> 833107 bytes keyboards/ergodox_ez/keymaps/algernon/.gitignore | 1 + keyboards/ergodox_ez/keymaps/algernon/COPYING | 674 +++++++++++ keyboards/ergodox_ez/keymaps/algernon/Makefile | 8 + keyboards/ergodox_ez/keymaps/algernon/config.h | 29 + .../keymaps/algernon/images/base-layer.png | Bin 0 -> 96845 bytes .../keymaps/algernon/images/emacs-layer.png | Bin 0 -> 114267 bytes .../keymaps/algernon/images/experimental-layer.png | Bin 0 -> 96956 bytes .../keymaps/algernon/images/hun-layer.png | Bin 0 -> 78720 bytes .../keymaps/algernon/images/one-handed-layer.png | Bin 0 -> 85970 bytes .../keymaps/algernon/images/steno-layer.png | Bin 0 -> 65146 bytes keyboards/ergodox_ez/keymaps/algernon/keymap.c | 1172 ++++++++++++++++++ keyboards/ergodox_ez/keymaps/algernon/readme.md | 158 +++ .../ergodox_ez/keymaps/algernon/tools/max-focused | 5 + .../ergodox_ez/keymaps/andrew_osx/compiled.hex | 1158 ++++++++++++++++++ keyboards/ergodox_ez/keymaps/andrew_osx/keymap.c | 187 +++ keyboards/ergodox_ez/keymaps/bepo/README.md | 34 + keyboards/ergodox_ez/keymaps/bepo/bepo.png | Bin 0 -> 79747 bytes keyboards/ergodox_ez/keymaps/bepo/compiled.hex | 1190 ++++++++++++++++++ keyboards/ergodox_ez/keymaps/bepo/keymap.c | 311 +++++ .../ergodox_ez/keymaps/coderkun_neo2/Makefile | 1 + .../ergodox_ez/keymaps/coderkun_neo2/compiled.hex | 1195 ++++++++++++++++++ .../ergodox_ez/keymaps/coderkun_neo2/keymap.c | 274 +++++ .../ergodox_ez/keymaps/coderkun_neo2/readme.md | 31 + keyboards/ergodox_ez/keymaps/colemak/compiled.hex | 1158 ++++++++++++++++++ keyboards/ergodox_ez/keymaps/colemak/keymap.c | 184 +++ keyboards/ergodox_ez/keymaps/colemak/readme.md | 4 + .../keymaps/colemak_osx_pc_no/compiled.hex | 1179 ++++++++++++++++++ .../keymaps/colemak_osx_pc_no/keyboard-layout.png | Bin 0 -> 103158 bytes .../ergodox_ez/keymaps/colemak_osx_pc_no/keymap.c | 264 ++++ .../ergodox_ez/keymaps/colemak_osx_pc_no/readme.md | 23 + .../ergodox_ez/keymaps/csharp_dev/compiled.hex | 1159 ++++++++++++++++++ .../ergodox_ez/keymaps/csharp_dev/csharp_dev.png | Bin 0 -> 97642 bytes .../keymaps/csharp_dev/csharp_dev_legend.png | Bin 0 -> 387797 bytes keyboards/ergodox_ez/keymaps/csharp_dev/keymap.c | 239 ++++ keyboards/ergodox_ez/keymaps/csharp_dev/readme.md | 47 + keyboards/ergodox_ez/keymaps/dave/compiled.hex | 1169 ++++++++++++++++++ keyboards/ergodox_ez/keymaps/dave/keymap.c | 199 +++ keyboards/ergodox_ez/keymaps/dave/readme.md | 38 + keyboards/ergodox_ez/keymaps/default/compiled.hex | 1153 ++++++++++++++++++ keyboards/ergodox_ez/keymaps/default/default.png | Bin 0 -> 193672 bytes .../ergodox_ez/keymaps/default/default_highres.png | Bin 0 -> 1459389 bytes keyboards/ergodox_ez/keymaps/default/keymap.c | 182 +++ keyboards/ergodox_ez/keymaps/default/readme.md | 10 + .../ergodox_ez/keymaps/default_osx/compiled.hex | 1158 ++++++++++++++++++ .../keymaps/default_osx/default_osx_highres.png | Bin 0 -> 772418 bytes keyboards/ergodox_ez/keymaps/default_osx/keymap.c | 187 +++ keyboards/ergodox_ez/keymaps/default_osx/readme.md | 8 + .../ergodox_ez/keymaps/dragon788/compiled.hex | 1169 ++++++++++++++++++ keyboards/ergodox_ez/keymaps/dragon788/keymap.c | 229 ++++ keyboards/ergodox_ez/keymaps/dvorak/compiled.hex | 1158 ++++++++++++++++++ keyboards/ergodox_ez/keymaps/dvorak/dvorak.png | Bin 0 -> 87314 bytes keyboards/ergodox_ez/keymaps/dvorak/keymap.c | 184 +++ .../keymaps/dvorak_intl_squisher/README.md | 29 + .../keymaps/dvorak_intl_squisher/compiled.hex | 1158 ++++++++++++++++++ .../dvorak_intl_squisher/keyboard-layout0.png | Bin 0 -> 73585 bytes .../dvorak_intl_squisher/keyboard-layout1.png | Bin 0 -> 59122 bytes .../dvorak_intl_squisher/keyboard-layout2.png | Bin 0 -> 53319 bytes .../keymaps/dvorak_intl_squisher/keymap.c | 185 +++ .../ergodox_ez/keymaps/dvorak_spanish/README.md | 99 ++ .../ergodox_ez/keymaps/dvorak_spanish/compiled.hex | 1149 ++++++++++++++++++ .../ergodox_ez/keymaps/dvorak_spanish/keymap.c | 284 +++++ .../ergodox_ez/keymaps/emacs_osx_dk/compiled.hex | 1158 ++++++++++++++++++ .../keymaps/emacs_osx_dk/default_highres.png | Bin 0 -> 142146 bytes keyboards/ergodox_ez/keymaps/emacs_osx_dk/keymap.c | 184 +++ .../ergodox_ez/keymaps/emacs_osx_dk/readme.md | 10 + .../ergodox_ez/keymaps/erez_experimental/Makefile | 9 + .../keymaps/erez_experimental/compiled.hex | 1080 +++++++++++++++++ .../ergodox_ez/keymaps/erez_experimental/config.h | 12 + .../ergodox_ez/keymaps/erez_experimental/keymap.c | 199 +++ .../ergodox_ez/keymaps/erez_experimental/readme.md | 51 + .../ergodox_ez/keymaps/german-kinergo/compiled.hex | 1158 ++++++++++++++++++ .../ergodox_ez/keymaps/german-kinergo/keymap.c | 210 ++++ .../keymaps/german-kinergo/layout-code.png | Bin 0 -> 55386 bytes .../keymaps/german-kinergo/layout-media.png | Bin 0 -> 67634 bytes .../ergodox_ez/keymaps/german-kinergo/layout.png | Bin 0 -> 71175 bytes .../ergodox_ez/keymaps/german-kinergo/readme.md | 35 + .../keymaps/german-manuneo/compile_keymap.py | 710 +++++++++++ .../ergodox_ez/keymaps/german-manuneo/compiled.hex | 1274 ++++++++++++++++++++ .../ergodox_ez/keymaps/german-manuneo/keymap.c | 783 ++++++++++++ .../ergodox_ez/keymaps/german-manuneo/keymap.md | 188 +++ keyboards/ergodox_ez/keymaps/german/compiled.hex | 1158 ++++++++++++++++++ keyboards/ergodox_ez/keymaps/german/keymap.c | 185 +++ keyboards/ergodox_ez/keymaps/j3rn/compiled.hex | 1158 ++++++++++++++++++ keyboards/ergodox_ez/keymaps/j3rn/keymap.c | 187 +++ keyboards/ergodox_ez/keymaps/j3rn/readme.md | 29 + keyboards/ergodox_ez/keymaps/jack/compiled.hex | 1158 ++++++++++++++++++ keyboards/ergodox_ez/keymaps/jack/keymap.c | 118 ++ keyboards/ergodox_ez/keymaps/jacobono/README.md | 34 + keyboards/ergodox_ez/keymaps/jacobono/compiled.hex | 1179 ++++++++++++++++++ .../keymaps/jacobono/img/colemak-default-layer.png | Bin 0 -> 70434 bytes .../keymaps/jacobono/img/number-dpad-layer.png | Bin 0 -> 46225 bytes .../keymaps/jacobono/img/symbol-layer.png | Bin 0 -> 49615 bytes keyboards/ergodox_ez/keymaps/jacobono/keymap.c | 273 +++++ keyboards/ergodox_ez/keymaps/jgarr/compiled.hex | 1158 ++++++++++++++++++ keyboards/ergodox_ez/keymaps/jgarr/keymap.c | 184 +++ keyboards/ergodox_ez/keymaps/kastyle/compiled.hex | 1158 ++++++++++++++++++ keyboards/ergodox_ez/keymaps/kastyle/keymap.c | 184 +++ .../ergodox_ez/keymaps/kines-ish/compiled.hex | 1158 ++++++++++++++++++ keyboards/ergodox_ez/keymaps/kines-ish/keymap.c | 184 +++ keyboards/ergodox_ez/keymaps/kines-ish/readme.md | 19 + .../ergodox_ez/keymaps/mpiechotka/compiled.hex | 1181 ++++++++++++++++++ keyboards/ergodox_ez/keymaps/mpiechotka/keymap.c | 276 +++++ keyboards/ergodox_ez/keymaps/mpiechotka/readme.md | 6 + keyboards/ergodox_ez/keymaps/msc/compiled.hex | 1158 ++++++++++++++++++ .../ergodox_ez/keymaps/msc/img/code_layer.png | Bin 0 -> 71266 bytes .../ergodox_ez/keymaps/msc/img/main_layer.png | Bin 0 -> 90624 bytes .../ergodox_ez/keymaps/msc/img/media_layer.png | Bin 0 -> 75750 bytes keyboards/ergodox_ez/keymaps/msc/keymap.c | 184 +++ keyboards/ergodox_ez/keymaps/msc/readme.md | 32 + keyboards/ergodox_ez/keymaps/naps62/README.md | 29 + keyboards/ergodox_ez/keymaps/naps62/compiled.hex | 1158 ++++++++++++++++++ keyboards/ergodox_ez/keymaps/naps62/keymap.c | 187 +++ keyboards/ergodox_ez/keymaps/ordinary/compiled.hex | 1182 ++++++++++++++++++ keyboards/ergodox_ez/keymaps/ordinary/keymap.c | 454 +++++++ .../ergodox_ez/keymaps/ordinary/ordinary-base.png | Bin 0 -> 99605 bytes .../ergodox_ez/keymaps/ordinary/ordinary-base.txt | 27 + .../ergodox_ez/keymaps/ordinary/ordinary-media.png | Bin 0 -> 124144 bytes .../ergodox_ez/keymaps/ordinary/ordinary-media.txt | 27 + .../keymaps/ordinary/ordinary-special.png | Bin 0 -> 63065 bytes .../keymaps/ordinary/ordinary-special.txt | 27 + .../keymaps/ordinary/ordinary-symbol.png | Bin 0 -> 103735 bytes .../keymaps/ordinary/ordinary-symbol.txt | 27 + keyboards/ergodox_ez/keymaps/ordinary/readme.md | 103 ++ keyboards/ergodox_ez/keymaps/osx_de/compiled.hex | 1216 +++++++++++++++++++ keyboards/ergodox_ez/keymaps/osx_de/keymap.c | 364 ++++++ .../ergodox_ez/keymaps/osx_de/osx_de_highres.png | Bin 0 -> 298446 bytes keyboards/ergodox_ez/keymaps/osx_de/readme.md | 41 + .../keymaps/osx_de_adnw_koy/compiled.hex | 1152 ++++++++++++++++++ .../ergodox_ez/keymaps/osx_de_adnw_koy/keymap.c | 174 +++ .../osx_de_adnw_koy/osx_de_adnw_koy_highres.png | Bin 0 -> 183892 bytes .../keymaps/osx_de_experimental/compiled.hex | 1228 +++++++++++++++++++ .../keymaps/osx_de_experimental/keymap.c | 597 +++++++++ .../osx_de_experimental_highres.png | Bin 0 -> 303904 bytes .../keymaps/osx_de_experimental/readme.md | 22 + keyboards/ergodox_ez/keymaps/osx_fr/compiled.hex | 1158 ++++++++++++++++++ keyboards/ergodox_ez/keymaps/osx_fr/keymap.c | 187 +++ .../keymaps/osx_kinesis_pnut/compiled.hex | 1158 ++++++++++++++++++ .../ergodox_ez/keymaps/osx_kinesis_pnut/keymap.c | 191 +++ keyboards/ergodox_ez/keymaps/plover/compiled.hex | 1169 ++++++++++++++++++ keyboards/ergodox_ez/keymaps/plover/keymap.c | 228 ++++ keyboards/ergodox_ez/keymaps/plums/compiled.hex | 1165 ++++++++++++++++++ keyboards/ergodox_ez/keymaps/plums/keymap.c | 229 ++++ keyboards/ergodox_ez/keymaps/plums/plums.png | Bin 0 -> 223300 bytes keyboards/ergodox_ez/keymaps/plums/readme.md | 11 + .../keymaps/romanzolotarev-norman-osx/compiled.hex | 1098 +++++++++++++++++ .../keymaps/romanzolotarev-norman-osx/keymap.c | 46 + .../keymaps/romanzolotarev-norman-osx/readme.md | 28 + .../romanzolotarev-norman-osx.png | Bin 0 -> 96954 bytes .../compiled.hex | 1169 ++++++++++++++++++ .../romanzolotarev-norman-plover-osx-hjkl/keymap.c | 134 ++ .../readme.md | 50 + .../romanzolotarev-norman-plover-osx-hjkl.png | Bin 0 -> 130692 bytes .../romanzolotarev-norman-plover-osx/compiled.hex | 1169 ++++++++++++++++++ .../romanzolotarev-norman-plover-osx/keymap.c | 134 ++ .../romanzolotarev-norman-plover-osx/readme.md | 50 + .../romanzolotarev-norman-plover-osx.png | Bin 0 -> 130464 bytes .../romanzolotarev-norman-qwerty-osx/compiled.hex | 1120 +++++++++++++++++ .../romanzolotarev-norman-qwerty-osx/keymap.c | 74 ++ .../romanzolotarev-norman-qwerty-osx/readme.md | 34 + .../romanzolotarev-norman-qwerty-osx.png | Bin 0 -> 100627 bytes keyboards/ergodox_ez/keymaps/sneako/README.md | 6 + keyboards/ergodox_ez/keymaps/sneako/compiled.hex | 1158 ++++++++++++++++++ keyboards/ergodox_ez/keymaps/sneako/keymap.c | 187 +++ .../ergodox_ez/keymaps/software_neo2/compiled.hex | 1147 ++++++++++++++++++ .../ergodox_ez/keymaps/software_neo2/keymap.c | 139 +++ keyboards/ergodox_ez/keymaps/supercoder/README.md | 29 + .../ergodox_ez/keymaps/supercoder/compiled.hex | 1122 +++++++++++++++++ .../ergodox_ez/keymaps/supercoder/config_user.h | 9 + .../keymaps/supercoder/images/layout.png | Bin 0 -> 65607 bytes .../keymaps/supercoder/images/supercoder_2000.jpg | Bin 0 -> 75444 bytes keyboards/ergodox_ez/keymaps/supercoder/keymap.c | 75 ++ .../ergodox_ez/keymaps/supercoder/makefile.mk | 6 + .../ergodox_ez/keymaps/techtomas/compiled.hex | 1169 ++++++++++++++++++ keyboards/ergodox_ez/keymaps/techtomas/keymap.c | 231 ++++ keyboards/ergodox_ez/keymaps/techtomas/readme.md | 57 + keyboards/ergodox_ez/keymaps/tm2030/README.md | 136 +++ keyboards/ergodox_ez/keymaps/tm2030/compiled.hex | 1224 +++++++++++++++++++ keyboards/ergodox_ez/keymaps/tm2030/keymap.c | 242 ++++ .../ergodox_ez/keymaps/tonyabra_osx/compiled.hex | 1158 ++++++++++++++++++ keyboards/ergodox_ez/keymaps/tonyabra_osx/keymap.c | 184 +++ .../ergodox_ez/keymaps/tonyabra_osx/readme.md | 5 + .../ergodox_ez/keymaps/townk_osx/compiled.hex | 1171 ++++++++++++++++++ keyboards/ergodox_ez/keymaps/townk_osx/config.h | 92 ++ keyboards/ergodox_ez/keymaps/townk_osx/keymap.c | 285 +++++ keyboards/ergodox_ez/keymaps/townk_osx/makefile.mk | 4 + keyboards/ergodox_ez/keymaps/townk_osx/readme.md | 77 ++ .../keymaps/townk_osx/townk_osx_base.png | Bin 0 -> 785859 bytes .../ergodox_ez/keymaps/townk_osx/townk_osx_fn.png | Bin 0 -> 390041 bytes .../keymaps/townk_osx/townk_osx_keypad.png | Bin 0 -> 424425 bytes keyboards/ergodox_ez/keymaps/twey/compiled.hex | 1178 ++++++++++++++++++ keyboards/ergodox_ez/keymaps/twey/keymap.c | 221 ++++ keyboards/ergodox_ez/keymaps/twey/readme.md | 17 + .../keymaps/workman_osx_mdw/compiled.hex | 1213 +++++++++++++++++++ .../ergodox_ez/keymaps/workman_osx_mdw/keymap.c | 366 ++++++ .../ergodox_ez/keymaps/zweihander-osx/compiled.hex | 1173 ++++++++++++++++++ .../ergodox_ez/keymaps/zweihander-osx/keymap.c | 233 ++++ .../keymaps/zweihander-osx/readme.markdown | 45 + 209 files changed, 77438 insertions(+) create mode 100644 keyboards/ergodox_ez/keymaps/ab/compiled.hex create mode 100644 keyboards/ergodox_ez/keymaps/ab/keyboard-layout.json create mode 100644 keyboards/ergodox_ez/keymaps/ab/keyboard-layout.png create mode 100644 keyboards/ergodox_ez/keymaps/ab/keymap.c create mode 100644 keyboards/ergodox_ez/keymaps/ab/readme.md create mode 100644 keyboards/ergodox_ez/keymaps/adnw_k_o_y/compiled.hex create mode 100644 keyboards/ergodox_ez/keymaps/adnw_k_o_y/keymap.c create mode 100644 keyboards/ergodox_ez/keymaps/adnw_k_o_y/readme.md create mode 100644 keyboards/ergodox_ez/keymaps/alexjj/compiled.hex create mode 100644 keyboards/ergodox_ez/keymaps/alexjj/keymap.c create mode 100644 keyboards/ergodox_ez/keymaps/alexjj/readme.md create mode 100644 keyboards/ergodox_ez/keymaps/alexjj/rl-layout.jpg create mode 100644 keyboards/ergodox_ez/keymaps/algernon/.gitignore create mode 100644 keyboards/ergodox_ez/keymaps/algernon/COPYING create mode 100644 keyboards/ergodox_ez/keymaps/algernon/Makefile create mode 100644 keyboards/ergodox_ez/keymaps/algernon/config.h create mode 100644 keyboards/ergodox_ez/keymaps/algernon/images/base-layer.png create mode 100644 keyboards/ergodox_ez/keymaps/algernon/images/emacs-layer.png create mode 100644 keyboards/ergodox_ez/keymaps/algernon/images/experimental-layer.png create mode 100644 keyboards/ergodox_ez/keymaps/algernon/images/hun-layer.png create mode 100644 keyboards/ergodox_ez/keymaps/algernon/images/one-handed-layer.png create mode 100644 keyboards/ergodox_ez/keymaps/algernon/images/steno-layer.png create mode 100644 keyboards/ergodox_ez/keymaps/algernon/keymap.c create mode 100644 keyboards/ergodox_ez/keymaps/algernon/readme.md create mode 100755 keyboards/ergodox_ez/keymaps/algernon/tools/max-focused create mode 100644 keyboards/ergodox_ez/keymaps/andrew_osx/compiled.hex create mode 100644 keyboards/ergodox_ez/keymaps/andrew_osx/keymap.c create mode 100644 keyboards/ergodox_ez/keymaps/bepo/README.md create mode 100644 keyboards/ergodox_ez/keymaps/bepo/bepo.png create mode 100644 keyboards/ergodox_ez/keymaps/bepo/compiled.hex create mode 100644 keyboards/ergodox_ez/keymaps/bepo/keymap.c create mode 100644 keyboards/ergodox_ez/keymaps/coderkun_neo2/Makefile create mode 100644 keyboards/ergodox_ez/keymaps/coderkun_neo2/compiled.hex create mode 100644 keyboards/ergodox_ez/keymaps/coderkun_neo2/keymap.c create mode 100644 keyboards/ergodox_ez/keymaps/coderkun_neo2/readme.md create mode 100644 keyboards/ergodox_ez/keymaps/colemak/compiled.hex create mode 100644 keyboards/ergodox_ez/keymaps/colemak/keymap.c create mode 100644 keyboards/ergodox_ez/keymaps/colemak/readme.md create mode 100644 keyboards/ergodox_ez/keymaps/colemak_osx_pc_no/compiled.hex create mode 100644 keyboards/ergodox_ez/keymaps/colemak_osx_pc_no/keyboard-layout.png create mode 100644 keyboards/ergodox_ez/keymaps/colemak_osx_pc_no/keymap.c create mode 100644 keyboards/ergodox_ez/keymaps/colemak_osx_pc_no/readme.md create mode 100644 keyboards/ergodox_ez/keymaps/csharp_dev/compiled.hex create mode 100644 keyboards/ergodox_ez/keymaps/csharp_dev/csharp_dev.png create mode 100644 keyboards/ergodox_ez/keymaps/csharp_dev/csharp_dev_legend.png create mode 100644 keyboards/ergodox_ez/keymaps/csharp_dev/keymap.c create mode 100644 keyboards/ergodox_ez/keymaps/csharp_dev/readme.md create mode 100644 keyboards/ergodox_ez/keymaps/dave/compiled.hex create mode 100644 keyboards/ergodox_ez/keymaps/dave/keymap.c create mode 100644 keyboards/ergodox_ez/keymaps/dave/readme.md create mode 100644 keyboards/ergodox_ez/keymaps/default/compiled.hex create mode 100644 keyboards/ergodox_ez/keymaps/default/default.png create mode 100644 keyboards/ergodox_ez/keymaps/default/default_highres.png create mode 100644 keyboards/ergodox_ez/keymaps/default/keymap.c create mode 100644 keyboards/ergodox_ez/keymaps/default/readme.md create mode 100644 keyboards/ergodox_ez/keymaps/default_osx/compiled.hex create mode 100644 keyboards/ergodox_ez/keymaps/default_osx/default_osx_highres.png create mode 100644 keyboards/ergodox_ez/keymaps/default_osx/keymap.c create mode 100644 keyboards/ergodox_ez/keymaps/default_osx/readme.md create mode 100644 keyboards/ergodox_ez/keymaps/dragon788/compiled.hex create mode 100644 keyboards/ergodox_ez/keymaps/dragon788/keymap.c create mode 100644 keyboards/ergodox_ez/keymaps/dvorak/compiled.hex create mode 100644 keyboards/ergodox_ez/keymaps/dvorak/dvorak.png create mode 100644 keyboards/ergodox_ez/keymaps/dvorak/keymap.c create mode 100644 keyboards/ergodox_ez/keymaps/dvorak_intl_squisher/README.md create mode 100644 keyboards/ergodox_ez/keymaps/dvorak_intl_squisher/compiled.hex create mode 100644 keyboards/ergodox_ez/keymaps/dvorak_intl_squisher/keyboard-layout0.png create mode 100644 keyboards/ergodox_ez/keymaps/dvorak_intl_squisher/keyboard-layout1.png create mode 100644 keyboards/ergodox_ez/keymaps/dvorak_intl_squisher/keyboard-layout2.png create mode 100644 keyboards/ergodox_ez/keymaps/dvorak_intl_squisher/keymap.c create mode 100644 keyboards/ergodox_ez/keymaps/dvorak_spanish/README.md create mode 100644 keyboards/ergodox_ez/keymaps/dvorak_spanish/compiled.hex create mode 100755 keyboards/ergodox_ez/keymaps/dvorak_spanish/keymap.c create mode 100644 keyboards/ergodox_ez/keymaps/emacs_osx_dk/compiled.hex create mode 100644 keyboards/ergodox_ez/keymaps/emacs_osx_dk/default_highres.png create mode 100644 keyboards/ergodox_ez/keymaps/emacs_osx_dk/keymap.c create mode 100644 keyboards/ergodox_ez/keymaps/emacs_osx_dk/readme.md create mode 100644 keyboards/ergodox_ez/keymaps/erez_experimental/Makefile create mode 100644 keyboards/ergodox_ez/keymaps/erez_experimental/compiled.hex create mode 100644 keyboards/ergodox_ez/keymaps/erez_experimental/config.h create mode 100644 keyboards/ergodox_ez/keymaps/erez_experimental/keymap.c create mode 100644 keyboards/ergodox_ez/keymaps/erez_experimental/readme.md create mode 100644 keyboards/ergodox_ez/keymaps/german-kinergo/compiled.hex create mode 100644 keyboards/ergodox_ez/keymaps/german-kinergo/keymap.c create mode 100644 keyboards/ergodox_ez/keymaps/german-kinergo/layout-code.png create mode 100644 keyboards/ergodox_ez/keymaps/german-kinergo/layout-media.png create mode 100644 keyboards/ergodox_ez/keymaps/german-kinergo/layout.png create mode 100644 keyboards/ergodox_ez/keymaps/german-kinergo/readme.md create mode 100644 keyboards/ergodox_ez/keymaps/german-manuneo/compile_keymap.py create mode 100644 keyboards/ergodox_ez/keymaps/german-manuneo/compiled.hex create mode 100644 keyboards/ergodox_ez/keymaps/german-manuneo/keymap.c create mode 100644 keyboards/ergodox_ez/keymaps/german-manuneo/keymap.md create mode 100644 keyboards/ergodox_ez/keymaps/german/compiled.hex create mode 100644 keyboards/ergodox_ez/keymaps/german/keymap.c create mode 100644 keyboards/ergodox_ez/keymaps/j3rn/compiled.hex create mode 100644 keyboards/ergodox_ez/keymaps/j3rn/keymap.c create mode 100644 keyboards/ergodox_ez/keymaps/j3rn/readme.md create mode 100644 keyboards/ergodox_ez/keymaps/jack/compiled.hex create mode 100644 keyboards/ergodox_ez/keymaps/jack/keymap.c create mode 100644 keyboards/ergodox_ez/keymaps/jacobono/README.md create mode 100644 keyboards/ergodox_ez/keymaps/jacobono/compiled.hex create mode 100644 keyboards/ergodox_ez/keymaps/jacobono/img/colemak-default-layer.png create mode 100644 keyboards/ergodox_ez/keymaps/jacobono/img/number-dpad-layer.png create mode 100644 keyboards/ergodox_ez/keymaps/jacobono/img/symbol-layer.png create mode 100644 keyboards/ergodox_ez/keymaps/jacobono/keymap.c create mode 100644 keyboards/ergodox_ez/keymaps/jgarr/compiled.hex create mode 100644 keyboards/ergodox_ez/keymaps/jgarr/keymap.c create mode 100644 keyboards/ergodox_ez/keymaps/kastyle/compiled.hex create mode 100644 keyboards/ergodox_ez/keymaps/kastyle/keymap.c create mode 100644 keyboards/ergodox_ez/keymaps/kines-ish/compiled.hex create mode 100644 keyboards/ergodox_ez/keymaps/kines-ish/keymap.c create mode 100644 keyboards/ergodox_ez/keymaps/kines-ish/readme.md create mode 100644 keyboards/ergodox_ez/keymaps/mpiechotka/compiled.hex create mode 100644 keyboards/ergodox_ez/keymaps/mpiechotka/keymap.c create mode 100644 keyboards/ergodox_ez/keymaps/mpiechotka/readme.md create mode 100644 keyboards/ergodox_ez/keymaps/msc/compiled.hex create mode 100644 keyboards/ergodox_ez/keymaps/msc/img/code_layer.png create mode 100644 keyboards/ergodox_ez/keymaps/msc/img/main_layer.png create mode 100644 keyboards/ergodox_ez/keymaps/msc/img/media_layer.png create mode 100644 keyboards/ergodox_ez/keymaps/msc/keymap.c create mode 100644 keyboards/ergodox_ez/keymaps/msc/readme.md create mode 100644 keyboards/ergodox_ez/keymaps/naps62/README.md create mode 100644 keyboards/ergodox_ez/keymaps/naps62/compiled.hex create mode 100644 keyboards/ergodox_ez/keymaps/naps62/keymap.c create mode 100644 keyboards/ergodox_ez/keymaps/ordinary/compiled.hex create mode 100644 keyboards/ergodox_ez/keymaps/ordinary/keymap.c create mode 100644 keyboards/ergodox_ez/keymaps/ordinary/ordinary-base.png create mode 100644 keyboards/ergodox_ez/keymaps/ordinary/ordinary-base.txt create mode 100644 keyboards/ergodox_ez/keymaps/ordinary/ordinary-media.png create mode 100644 keyboards/ergodox_ez/keymaps/ordinary/ordinary-media.txt create mode 100644 keyboards/ergodox_ez/keymaps/ordinary/ordinary-special.png create mode 100644 keyboards/ergodox_ez/keymaps/ordinary/ordinary-special.txt create mode 100644 keyboards/ergodox_ez/keymaps/ordinary/ordinary-symbol.png create mode 100644 keyboards/ergodox_ez/keymaps/ordinary/ordinary-symbol.txt create mode 100644 keyboards/ergodox_ez/keymaps/ordinary/readme.md create mode 100644 keyboards/ergodox_ez/keymaps/osx_de/compiled.hex create mode 100644 keyboards/ergodox_ez/keymaps/osx_de/keymap.c create mode 100644 keyboards/ergodox_ez/keymaps/osx_de/osx_de_highres.png create mode 100644 keyboards/ergodox_ez/keymaps/osx_de/readme.md create mode 100644 keyboards/ergodox_ez/keymaps/osx_de_adnw_koy/compiled.hex create mode 100644 keyboards/ergodox_ez/keymaps/osx_de_adnw_koy/keymap.c create mode 100644 keyboards/ergodox_ez/keymaps/osx_de_adnw_koy/osx_de_adnw_koy_highres.png create mode 100644 keyboards/ergodox_ez/keymaps/osx_de_experimental/compiled.hex create mode 100644 keyboards/ergodox_ez/keymaps/osx_de_experimental/keymap.c create mode 100644 keyboards/ergodox_ez/keymaps/osx_de_experimental/osx_de_experimental_highres.png create mode 100644 keyboards/ergodox_ez/keymaps/osx_de_experimental/readme.md create mode 100644 keyboards/ergodox_ez/keymaps/osx_fr/compiled.hex create mode 100644 keyboards/ergodox_ez/keymaps/osx_fr/keymap.c create mode 100644 keyboards/ergodox_ez/keymaps/osx_kinesis_pnut/compiled.hex create mode 100644 keyboards/ergodox_ez/keymaps/osx_kinesis_pnut/keymap.c create mode 100644 keyboards/ergodox_ez/keymaps/plover/compiled.hex create mode 100644 keyboards/ergodox_ez/keymaps/plover/keymap.c create mode 100644 keyboards/ergodox_ez/keymaps/plums/compiled.hex create mode 100644 keyboards/ergodox_ez/keymaps/plums/keymap.c create mode 100644 keyboards/ergodox_ez/keymaps/plums/plums.png create mode 100644 keyboards/ergodox_ez/keymaps/plums/readme.md create mode 100644 keyboards/ergodox_ez/keymaps/romanzolotarev-norman-osx/compiled.hex create mode 100644 keyboards/ergodox_ez/keymaps/romanzolotarev-norman-osx/keymap.c create mode 100644 keyboards/ergodox_ez/keymaps/romanzolotarev-norman-osx/readme.md create mode 100644 keyboards/ergodox_ez/keymaps/romanzolotarev-norman-osx/romanzolotarev-norman-osx.png create mode 100644 keyboards/ergodox_ez/keymaps/romanzolotarev-norman-plover-osx-hjkl/compiled.hex create mode 100644 keyboards/ergodox_ez/keymaps/romanzolotarev-norman-plover-osx-hjkl/keymap.c create mode 100644 keyboards/ergodox_ez/keymaps/romanzolotarev-norman-plover-osx-hjkl/readme.md create mode 100644 keyboards/ergodox_ez/keymaps/romanzolotarev-norman-plover-osx-hjkl/romanzolotarev-norman-plover-osx-hjkl.png create mode 100644 keyboards/ergodox_ez/keymaps/romanzolotarev-norman-plover-osx/compiled.hex create mode 100644 keyboards/ergodox_ez/keymaps/romanzolotarev-norman-plover-osx/keymap.c create mode 100644 keyboards/ergodox_ez/keymaps/romanzolotarev-norman-plover-osx/readme.md create mode 100644 keyboards/ergodox_ez/keymaps/romanzolotarev-norman-plover-osx/romanzolotarev-norman-plover-osx.png create mode 100644 keyboards/ergodox_ez/keymaps/romanzolotarev-norman-qwerty-osx/compiled.hex create mode 100644 keyboards/ergodox_ez/keymaps/romanzolotarev-norman-qwerty-osx/keymap.c create mode 100644 keyboards/ergodox_ez/keymaps/romanzolotarev-norman-qwerty-osx/readme.md create mode 100644 keyboards/ergodox_ez/keymaps/romanzolotarev-norman-qwerty-osx/romanzolotarev-norman-qwerty-osx.png create mode 100644 keyboards/ergodox_ez/keymaps/sneako/README.md create mode 100644 keyboards/ergodox_ez/keymaps/sneako/compiled.hex create mode 100644 keyboards/ergodox_ez/keymaps/sneako/keymap.c create mode 100644 keyboards/ergodox_ez/keymaps/software_neo2/compiled.hex create mode 100644 keyboards/ergodox_ez/keymaps/software_neo2/keymap.c create mode 100644 keyboards/ergodox_ez/keymaps/supercoder/README.md create mode 100644 keyboards/ergodox_ez/keymaps/supercoder/compiled.hex create mode 100644 keyboards/ergodox_ez/keymaps/supercoder/config_user.h create mode 100644 keyboards/ergodox_ez/keymaps/supercoder/images/layout.png create mode 100644 keyboards/ergodox_ez/keymaps/supercoder/images/supercoder_2000.jpg create mode 100644 keyboards/ergodox_ez/keymaps/supercoder/keymap.c create mode 100644 keyboards/ergodox_ez/keymaps/supercoder/makefile.mk create mode 100644 keyboards/ergodox_ez/keymaps/techtomas/compiled.hex create mode 100644 keyboards/ergodox_ez/keymaps/techtomas/keymap.c create mode 100644 keyboards/ergodox_ez/keymaps/techtomas/readme.md create mode 100644 keyboards/ergodox_ez/keymaps/tm2030/README.md create mode 100644 keyboards/ergodox_ez/keymaps/tm2030/compiled.hex create mode 100644 keyboards/ergodox_ez/keymaps/tm2030/keymap.c create mode 100644 keyboards/ergodox_ez/keymaps/tonyabra_osx/compiled.hex create mode 100644 keyboards/ergodox_ez/keymaps/tonyabra_osx/keymap.c create mode 100644 keyboards/ergodox_ez/keymaps/tonyabra_osx/readme.md create mode 100644 keyboards/ergodox_ez/keymaps/townk_osx/compiled.hex create mode 100644 keyboards/ergodox_ez/keymaps/townk_osx/config.h create mode 100644 keyboards/ergodox_ez/keymaps/townk_osx/keymap.c create mode 100644 keyboards/ergodox_ez/keymaps/townk_osx/makefile.mk create mode 100644 keyboards/ergodox_ez/keymaps/townk_osx/readme.md create mode 100644 keyboards/ergodox_ez/keymaps/townk_osx/townk_osx_base.png create mode 100644 keyboards/ergodox_ez/keymaps/townk_osx/townk_osx_fn.png create mode 100644 keyboards/ergodox_ez/keymaps/townk_osx/townk_osx_keypad.png create mode 100644 keyboards/ergodox_ez/keymaps/twey/compiled.hex create mode 100644 keyboards/ergodox_ez/keymaps/twey/keymap.c create mode 100644 keyboards/ergodox_ez/keymaps/twey/readme.md create mode 100644 keyboards/ergodox_ez/keymaps/workman_osx_mdw/compiled.hex create mode 100644 keyboards/ergodox_ez/keymaps/workman_osx_mdw/keymap.c create mode 100644 keyboards/ergodox_ez/keymaps/zweihander-osx/compiled.hex create mode 100644 keyboards/ergodox_ez/keymaps/zweihander-osx/keymap.c create mode 100644 keyboards/ergodox_ez/keymaps/zweihander-osx/readme.markdown (limited to 'keyboards/ergodox_ez/keymaps') diff --git a/keyboards/ergodox_ez/keymaps/ab/compiled.hex b/keyboards/ergodox_ez/keymaps/ab/compiled.hex new file mode 100644 index 0000000000..9b4434b864 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/ab/compiled.hex @@ -0,0 +1,1147 @@ +:100000000C9424020C9468020C9468020C9468020C +:100010000C9468020C9468020C9468020C946802B8 +:100020000C9468020C9468020C940C0D0C94DE0D78 +:100030000C9468020C9468020C9468020C94680298 +:100040000C9468020C94E8210C9468020C946802E9 +:100050000C9468020C947B1B0C9468020C9468024C +:100060000C9468020C9468020C9468020C94680268 +:100070000C9468020C9468020C9468020C94680258 +:100080000C9468020C9468020C9468020C94680248 +:100090000C9468020C9468020C9468020C94680238 +:1000A0000C9468020C9468020C9468024B0E6D0E5E +:1000B0005B0F6D0E5B0FB20ED50E5B0F2A0F3D0F5F +:1000C0000C120C123B123B1271129112C213C2138A +:1000D0009C12C2134C134C13B313C213C213BC13A0 +:1000E00059135913591359135913591359135913B0 +:1000F00059135913591359135913591359135913A0 +:100100006B1378137F138613901335002B0039710E +:10011000E100E00000001E00140004001D002900A2 +:100120002F001F001A0016001B00E3004C002000E7 +:10013000080007000600E2002C002100150009005D +:100140001900E2002602220017000A000500000044 +:1001500006012300B60000004B0000002F0224001F +:10016000B70000004E000000300225001C000B000C +:10017000110000001901260018000D0010005200A7 +:10018000270227000C000E00360050002A002D0028 +:1001900012000F0037004F0028002E00130033001C +:1001A0003800510030002A0031002800340001548A +:1001B00000002900010001000100010000003A00D8 +:1001C000010001000100010001003B000100F200FC +:1001D0000100010001003C00F000F1000100F4000A +:1001E00000503D000100F3000100F50001003E0059 +:1001F000010001000100000001003F0001000000BB +:1002000001000000010040000100000001000000AA +:100210000100410001000100010000000100420056 +:100220000100010001000100010043000100010084 +:100230000100AA0001004400010001000100A90022 +:1002400001004500010001000100A80001002A0092 +:100250000100AE000100010000001603450072001D +:1002600067006F0044006F007800200045005A00CE +:10027000000016034500720067006F0044006F0025 +:100280007800200045005A00000004030904090218 +:100290006D00040100A0FA0904000001030101003F +:1002A000092111010001223F000705810308000A0E +:1002B00009040100010301020009211101000122CA +:1002C0004D000705820308000A090402000103002B +:1002D00000000921110100012236000705830308EF +:1002E000000A0904030001030000000921110100B4 +:1002F00001223900070584031000011201100100DA +:10030000000008EDFE0713010001020001050109CC +:1003100006A101050719E029E715002501950875D3 +:1003200001810205081901290595057501910295BC +:10033000017503910105071900297715002501951D +:100340007875018102C005010980A10185021601AD +:100350000026B7001A01002AB70075109501810028 +:10036000C0050C0901A1018503160100269C021A93 +:1003700001002A9C02751095018100C00501090247 +:10038000A1010901A100050919012905150025018F +:1003900095057501810295017503810105010930FB +:1003A00009311581257F9502750881060938158167 +:1003B000257F950175088106050C0A3802158125EF +:1003C0007F950175088106C0C005010906A10105D8 +:1003D0000719E029E71500250195087501810295A7 +:1003E0000175088101050819012905950575019117 +:1003F000029501750391010507190029FF150025D4 +:10040000FF950675088100C0000000000000000094 +:10041000000000010204060A0F17202C3A4A5D7101 +:10042000879DB3C7DAE9F5FCFFFCF5E9DAC7B39DB0 +:1004300087715D4A3A2C20170F0A0604020100005A +:10044000000000000000000011241FBECFEFDAE022 +:10045000DEBFCDBF04B603FE24C08091FB019091A6 +:10046000FC01A091FD01B091FE018730904BA740A7 +:10047000B04BB9F41092FB011092FC011092FD01F7 +:100480001092FE0114BE84B7877F84BF88E10FB647 +:10049000F89480936000109260000FBEE0E0FFE3EC +:1004A000099511E0A0E0B1E0EEE5F7E402C00590A7 +:1004B0000D92A433B107D9F711E0A4E3B1E001C074 +:1004C0001D92AB3FB107E1F70E94500A0C94AD2397 +:1004D0000C9400001092B9008AE08093B80008954F +:1004E00094EA9093BC009091BC0097FFFCCF909150 +:1004F000B900987F983021F0903111F081E0089593 +:100500008093BB0084E88093BC008091BC0087FF8F +:10051000FCCF8091B900887F883111F0803471F769 +:1005200080E0089584E98093BC008091BC0084FD44 +:10053000FCCF08958093BB0084E88093BC00809139 +:10054000BC0087FFFCCF9091B900987F81E0983282 +:1005500009F480E0089584E88093BC008091BC0099 +:1005600087FFFCCF8091BB0008958091010181112C +:1005700015C080E40E9470028093010181110CC0BB +:1005800082E10E949A0280930101811105C08FEFE0 +:100590000E949A02809301010E94920284B1807F9E +:1005A00084B985B1807F85B98AB1837F8AB98BB1DF +:1005B000837F8BB93E98469808950E94700480937B +:1005C00001010E94B50280B38C7080BB81B3836F40 +:1005D00081BBA5E3B1E0E3E4F1E08EE08E0F119280 +:1005E0001D928E13FCCF0C945A04BF92CF92DF92CF +:1005F000EF92FF920F931F93CF93DF9380910101AE +:10060000882379F0809134018F5F809334018111C8 +:1006100008C00E94700480930101811102C00E94F1 +:10062000020405E311E0C0E0D0E0DD24D39482E0D1 +:10063000C82EEE24E394F12CC730D10500F580914B +:100640000101811164C080E40E9470028093010165 +:10065000811112C082E10E949A02809301018111EE +:100660000BC0C7010C2E01C0880F0A94EAF78095D1 +:100670000E949A02809301010E94920248C0CA30EF +:10068000A1F028F4C83059F0C93061F005C0CC3071 +:1006900089F070F0CD3089F0209A289810C0219A06 +:1006A00029980DC0229A2A980AC0239A2B9807C02D +:1006B000529A01C0539A5B9802C03E9A469890EABB +:1006C0009A95F1F79FB1799902C082E001C080E06C +:1006D00091709D25982B7C9902C084E001C080E038 +:1006E000892B7D9902C038E001C030E0832B7E99D0 +:1006F00002C020E101C020E0822B9FB19095991F9C +:100700009927991F9295990F907E892B0FC0809100 +:100710000101811149C080E40E94700280930101AF +:10072000882379F1B12C0E9492028B2DF8019081DF +:10073000981719F08083C09200010E94B50221969B +:100740000F5F1F4FCE30D10509F076CF80910001A9 +:10075000882361F1815080930001882339F08FE96B +:100760009FE00197F1F700C0000020C0A3E4B1E0D2 +:10077000E5E3F1E0CF01825F91919D938E13FCCF71 +:1007800015C083E10E949A02809301018111CACFB2 +:1007900081E40E947002809301018111C3CF0E9405 +:1007A000AB02B82EB094BFCF80E0C0CF0E9400044F +:1007B00081E0DF91CF911F910F91FF90EF90DF903B +:1007C000CF90BF900895E82FF0E0ED5BFE4F808161 +:1007D000089508950F931F93CF93DF93C3E4D1E05F +:1007E00010E00C2F025F899190E00E94A11A180F6F +:1007F0000C13F9CF812FDF91CF911F910F910895A5 +:100800000C94D00456985E9825982D9826982E988A +:1008100027982F988FEF90E090938900809388001D +:1008200090938B0080938A0090938D0080938C002E +:10083000259A2D9A2FEF80E792E02150804090403A +:10084000E1F700C00000269A2E9A2FEF80E792E091 +:10085000215080409040E1F700C00000279A2F9A75 +:100860002FEF80E792E0215080409040E1F700C0F8 +:10087000000025982D982FEF80E792E021508040CE +:100880009040E1F700C0000026982E982FEF80E7F7 +:1008900092E0215080409040E1F700C0000027988E +:1008A0002F9856985E9825982D9826982E982798D8 +:1008B0002F98089589EA8093800089E080938100D1 +:1008C00024982C983F988AB18F748AB96E98479A69 +:1008D0008BB1806B8BB9769A0E9402040C94CF0482 +:1008E00080E2809301018091510181110EC00E942C +:1008F0006A0281E0809351012FEF83ED90E3215054 +:1009000080409040E1F700C0000080E40E94700247 +:100910008093010181112EC00E949A0280930101EF +:10092000811128C00E949A0280930101811122C086 +:100930008FE30E949A028093010181111BC00E94E3 +:10094000920280E40E94700280930101811112C022 +:100950008CE00E949A028093010181110BC00E94D9 +:100960009A0280930101811105C08FE30E949A02CF +:10097000809301010E94920280910101089561110A +:100980000BC0FC018281882321F085EE0E94B0100B +:1009900003C085EE0E94781180E090E008950895EC +:1009A0006091BD017091BE018091BF019091C00125 +:1009B0000E94AD1A56985E9825982D9826982E98E4 +:1009C00027982F98813019F0823021F00895259AC8 +:1009D0002D9A0895269A2E9A089581E0089581E02F +:1009E00008950C94EF0408950F931F93CF93DF9312 +:1009F0008C01FC01C081D181CE010E942619BE016B +:100A00000E949D05EC01B8010E94F104882309F4BD +:100A10008DC0F8018281882309F44AC080915D016C +:100A200081111FC0C431F0E5DF0709F051C00E94F9 +:100A3000F30481E080935D010E94451B90935C016B +:100A400080935B011092540110925601109255014F +:100A5000109258011092570110925A0110925901A8 +:100A600065C080915B0190915C010E94511B883CA4 +:100A7000910570F480915401E82FF0E0EE0FFF1F14 +:100A8000EB5AFE4FD183C0838F5F809354014EC0D9 +:100A9000C43880E5D80721F0C538D04501F13AC007 +:100AA000F8018281882341F01092520182E01EC039 +:100AB000C438E0E5DE0759F580915201811106C086 +:100AC00086E20E94B01086E20E94781182E01CC08B +:100AD000C438F0E5DF0741F3C538D045D9F4F80153 +:100AE0008281882331F01092530180E20E94C71165 +:100AF0001DC080915301811106C087E20E94B01091 +:100B000087E20E94781180E20E94CE110FC0C538A2 +:100B1000D04529F381E08093520180935301C801AD +:100B2000DF91CF911F910F910C94ED0480E0DF9144 +:100B3000CF911F910F910895089596E0799FF0014C +:100B4000112494E5899FE00DF11D1124E60FF11D9C +:100B5000EE0FFF1FE65FFE4F859194910895880F79 +:100B6000991FFC01E657F040859194910895880FF4 +:100B7000991FFC01E65FFE4F8591949108950F93B4 +:100B80001F93CF93DF93EC01811520E3920750F57B +:100B9000C11580E2D80708F0C3C0CB3BD10590F463 +:100BA000C83AD10508F06AC0C53AD10508F05BC063 +:100BB000C430D10508F0D0C1219709F0CAC101E0C5 +:100BC00010E00AC2CF3FD10511F008F0C5C1C03F07 +:100BD000D10508F0A2C0CE01805E9109089708F403 +:100BE000BBC1B7C1C13090E5D90709F4A2C020F557 +:100BF000C0318FE4D80770F4C11590E4D90708F02C +:100C000094C0C11521E3D20708F0A3C1DD278E01EE +:100C1000106CE2C1C115D04509F09BC10E942D1492 +:100C20008FEF94E32CE0815090402040E1F700C02A +:100C300000000E94A01BD0C1C11597E5D90758F448 +:100C4000C03121E5D20708F01CC1C43180E5D807C6 +:100C500008F475C07EC1CE0190578115904108F00F +:100C600078C1DF7073C1C53AD10509F477C1C63ABE +:100C7000D10509F076C102E810E4AEC1C83AD10549 +:100C800009F472C1C93AD10509F471C1CA3AD10552 +:100C900009F470C1CB3AD10509F46FC1CC3AD10542 +:100CA00009F46EC1CD3AD10509F46DC1C03BD1053F +:100CB00009F46CC1CE3AD10509F46BC1CF3AD10524 +:100CC00009F46AC1C13BD10509F469C1C23BD10530 +:100CD00009F468C1C33BD10509F467C1C43BD10520 +:100CE00009F466C1C53BD10509F465C1C63BD10510 +:100CF00009F464C1C73BD10509F463C1C83BD10500 +:100D000009F462C1C93BD10509F461C1CA3BD105EF +:100D100009F460C100E014E45FC18E0110655CC19C +:100D2000CE019F700E94B70558C1DF708E01106A16 +:100D300053C18091DA0181608093DA014DC10E9434 +:100D4000451D811102C00E942B1D0E94621D90E072 +:100D50009093FB018093FA01C23080E5D80721F41B +:100D60008091FA01816086C0C43090E5D90721F4F2 +:100D70008091FA0182607EC0C63020E5D20721F45E +:100D80008091FA01846076C0C83080E5D80719F4F4 +:100D90008091FA0127C0CA3090E5D90721F48091EB +:100DA000FA01806167C0CC3020E5D20721F4809140 +:100DB000FA0180625FC0CE3080E5D80721F48091CF +:100DC000FA01806457C0C03190E5D90721F48091C1 +:100DD000FA0180684FC0C23120E5D20729F4809122 +:100DE000FA018460886046C0C33080E5D80721F4EA +:100DF0008091FA018E7F3EC0C53090E5D90721F47D +:100E00008091FA018D7F36C0C73020E5D20721F4EA +:100E10008091FA018B7F2EC0C93080E5D80719F484 +:100E20008091FA0126C0CB3090E5D90721F480915A +:100E3000FA018F7E1FC0CD3020E5D20721F48091CA +:100E4000FA018F7D17C0CF3080E5D80721F480915B +:100E5000FA018F7B0FC0C13190E5D90721F4809151 +:100E6000FA018F7707C0C331D04531F48091FA0180 +:100E70008B7F877F8093FA018091FA010E94661D23 +:100E8000ABC08D2F99278F70992781309105D9F4A8 +:100E90009E012370332702C0880F991F2A95E2F71D +:100EA0009C688E0144E0000F111F4A95E1F700276E +:100EB0001370802B912B53E0CC0FDD1F5A95E1F777 +:100EC000C076DD272FC08230910531F4DC2FCC278E +:100ED0008E01016F106A80C08330910569F4CE01E4 +:100EE0008370992701E010E002C0000F111F8A955E +:100EF000E2F7C8019C680FC084309105B9F4CE01B7 +:100F00008370992701E010E002C0000F111F8A953D +:100F1000E2F7C8019A6823E0CC0FDD1F2A95E1F7BC +:100F2000C07ED7708C010C2B1D2B56C085309105CF +:100F300031F4DC2FCC278E01046F106A4DC0069768 +:100F400009F04AC0CF71DD27DC2FCC278E0110625B +:100F500043C000E010E040C08E013EC001E810E454 +:100F60003BC003E810E438C002EE14E435C009EEDB +:100F700014E432C00AEE14E42FC005EB14E42CC0D4 +:100F800006EB14E429C007EB14E426C00CEC14E4CF +:100F900023C00DEC14E420C003E815E41DC00AE8EA +:100FA00015E41AC002E915E417C004E915E414C0F9 +:100FB00001E216E411C003E216E40EC004E216E4F6 +:100FC0000BC005E216E408C006E216E405C007E21D +:100FD00016E402C00AE216E4C801DF91CF911F9126 +:100FE0000F91089596E0799FF001112494E5899F6F +:100FF000E00DF11D1124E60FF11DEE0FFF1FE65F5E +:10100000FE4F85919491803E9105E0F4803C9105DE +:1010100058F58133910509F46FC048F48932910580 +:1010200009F463C08A32910509F46DC072C0893336 +:101030009105E9F082389105D1F08533910509F4E5 +:101040004DC067C0833E910581F138F4803E910523 +:10105000B9F0823E9105D9F05CC0863E910561F100 +:10106000873E9105A1F155C00E94AF0508952091DA +:10107000FA0120FD02C021FF4CC080EE90E049C083 +:101080008091FA0180FFF9CF89E390E042C080911E +:10109000FA0182FF0EC08091FA0184FF03C080E054 +:1010A00090E037C083EE90E034C08091FA0182FF77 +:1010B000F2CF82EE90E02DC08091FA0183FF0BC049 +:1010C0008091FA0184FDEBCF87EE90E022C0809101 +:1010D000FA0183FFF5CF86EE90E01BC08091FA0104 +:1010E00085FF07C089E290E014C08091FA0185FF76 +:1010F000F9CF85E390E00DC08091FA0186FF07C02B +:101100008AE290E006C08091FA0186FFF9CF81E380 +:1011100090E00E94BF05089508950C948C0880917A +:101120006E010895CF93DF9300D01F92CDB7DEB745 +:101130009C018091F101843019F593E099833B8300 +:101140002A839093E9008FEF9091E800815095FDFC +:1011500006C095ED9A95F1F700008111F5CF8091C9 +:10116000E80085FF0DC040E050E063E070E0CE0194 +:1011700001960E94FC0A8091E8008E778093E80037 +:101180000F900F900F90DF91CF910895CF93DF9341 +:1011900000D01F92CDB7DEB72091F101243021F5A8 +:1011A00022E029839B838A8383E08093E9008FEF89 +:1011B0009091E800815095FD06C095ED9A95F1F764 +:1011C00000008111F5CF8091E80085FF0DC040E05F +:1011D00050E063E070E0CE0101960E94FC0A80912D +:1011E000E8008E778093E8000F900F900F90DF91CA +:1011F000CF9108952091F1012430F1F422E0209361 +:10120000E9002FEF3091E800215035FD06C035EDA3 +:101210003A95F1F700002111F5CF2091E80025FF64 +:101220000BC040E050E065E070E00E94FC0A809155 +:10123000E8008E778093E8000895CF93DF93EC0168 +:101240009091F101943009F046C080910C018823FF +:10125000D9F080910D018823B9F09093E9008FEFC8 +:101260009091E800815095FD06C095E19A95F1F7BF +:1012700000008111F5CF8091E80085FF2CC040E08F +:1012800050E060E170E017C081E08093E9008FEFEB +:101290009091E800815095FD06C095ED9A95F1F783 +:1012A00000008111F5CF8091E80085FF14C040E077 +:1012B00050E068E070E0CE010E94FC0A8091E800F6 +:1012C0008E778093E80080E1FE01AEE5B1E0019009 +:1012D0000D928A95E1F7DF91CF9108958091F00109 +:1012E000811109C00E94910C0E94EE0C8091E200D5 +:1012F00084608093E20008951092F00108950895AB +:101300000C94D5210E94361B0E94DB210E94940F71 +:101310000C948D0842E061EC81E00E940B0C42E0ED +:1013200061EC82E00E940B0C42E061EC83E00E94E1 +:101330000B0C42E161EC84E00C940B0C8091F30106 +:10134000833009F455C030F4813071F0823009F4F3 +:101350008EC008958A3009F47AC08B3009F460C0D9 +:10136000893009F09CC020C08091F201813A09F0D7 +:1013700096C08091E800877F8093E8008091F60115 +:101380009091F701892B21F460E18EE591E003C093 +:1013900060E080E090E070E00E94470B8091E80000 +:1013A0008B778093E80008958091F201813209F0F3 +:1013B00076C08091F6019091F701009719F003979C +:1013C00009F06DC08091E800877F8093E8008091EC +:1013D000E80082FD05C08091F1018111F8CF5FC066 +:1013E0008091F10080936E018091E8008B7753C06B +:1013F0008091F201813A09F052C08091F6019091FA +:10140000F701892B09F04BC08091E800877F80931A +:10141000E8008091E80080FFFCCF80910C0136C08D +:101420008091F2018132D9F58091F6019091F70116 +:10143000892BA9F58091E800877F8093E8000E94BE +:10144000400C8091F40180930C010C942D14809138 +:10145000F201813221F58091E800877F8093E800D6 +:101460000E94400C8091F50180936F010895809156 +:10147000F201813AA1F48091E800877F8093E8002F +:101480008091E80080FFFCCF80916F018093F10094 +:101490008091E8008E778093E8000C94400C0895CA +:1014A00084B7877F84BF88E10FB6F894809360008B +:1014B000109260000FBE90E080E80FB6F894809321 +:1014C0006100909361000FBE0E94E30F0E94910C97 +:1014D0000E94EE0C8091E20084608093E200789498 +:1014E0000E94740F0E94E50F82E091E00E948F0F2E +:1014F0000E94C3218091F101853069F40E94FD1A98 +:101500008091EF018823B1F30E94281B882391F377 +:101510000E94E60AEFCF0E94EB0FECCF292F332772 +:1015200023303105C9F064F42130310581F02230D7 +:10153000310509F043C08DE690E02EE832E042C06C +:1015400021323105F1F02232310541F137C082E11B +:1015500090E02BEF32E036C099278130910541F0C1 +:101560008230910541F0892B49F5EAE8F2E005C0A7 +:10157000E2E7F2E002C0EAE5F2E0849190E09F0148 +:1015800021C06430D8F4E62FF0E0EE0FFF1FEE5DCF +:10159000FE4F2081318189E090E014C0643070F406 +:1015A00070E0FB01EE0FFF1FE65EFE4F20813181F0 +:1015B000FB01EA5EFE4F808190E004C080E090E095 +:1015C00020E030E0FA0131832083089580E189BD75 +:1015D00082E189BD09B400FEFDCF8091D8008F7DE6 +:1015E0008093D8008091E00082608093E000809139 +:1015F000E00081FDFCCF0895CF92DF92EF92FF9241 +:101600000F931F93CF93DF93EC018B016A010E942C +:101610005F0C811133C0C114D10439F0F60180810F +:101620009181081B190BC80FD91FE12CF12C011552 +:10163000110519F18091E80085FD16C08091E80040 +:101640008E778093E800C114D10449F0F6018081BF +:101650009181E80EF91EF182E08285E00FC00E94C0 +:101660005F0C882321F30AC089918093F100015017 +:101670001109FFEFEF1AFF0ADACF80E0DF91CF9177 +:101680001F910F91FF90EF90DF90CF9008952091E0 +:10169000F8013091F9012617370748F061157105F7 +:1016A00039F42091E8002E772093E80001C0B901B9 +:1016B00040E061157105A9F12091F101222309F49F +:1016C00043C0253009F442C02091E80023FD40C00A +:1016D0002091E80022FD32C02091E80020FFE9CFF0 +:1016E0004091F3002091F20030E0342BFC01CF0157 +:1016F0006115710559F02830310540F481918093CE +:10170000F100615071092F5F3F4FF1CF41E0283068 +:10171000310509F040E02091E8002E772093E800A1 +:10172000C8CF4111C9CF0AC08091F101882361F06F +:10173000853061F08091E80083FD0AC08091E80067 +:1017400082FFF2CF80E0089582E0089583E008955B +:1017500081E008952091F8013091F90126173707AB +:1017600048F06115710539F42091E8002E77209337 +:10177000E80001C0B901FC0120E06115710591F19B +:101780008091F101882309F440C0853009F43FC0FD +:101790008091E80083FD3DC08091E80082FD2FC06C +:1017A0008091E80080FFE9CF2091F3008091F20062 +:1017B00090E0922B6115710559F08830910540F445 +:1017C00024912093F1003196615071090196F2CF76 +:1017D00021E0089709F020E08091E8008E7780935F +:1017E000E800CBCF2111CCCF0AC08091F101882332 +:1017F00061F0853061F08091E80083FD0AC080913E +:10180000E80082FFF2CF80E0089582E0089583E04F +:10181000089581E00895982F973058F59093E90046 +:10182000981739F07091EC002091ED005091F00084 +:1018300003C0242F762F50E021FF19C03091EB0018 +:101840003E7F3093EB003091ED003D7F3093ED0013 +:101850003091EB0031603093EB007093EC002093FB +:10186000ED005093F0002091EE0027FF07C09F5F2E +:10187000D3CF8F708093E90081E0089580E00895D0 +:101880008091F20187FF11C08091E80082FD05C0C0 +:101890008091F1018111F8CF11C08091E8008B7720 +:1018A0000BC08091F101882349F08091E80080FF0E +:1018B000F8CF8091E8008E778093E800089520911A +:1018C000E4003091E50095E64091EC00842F8170B2 +:1018D00040FF22C08091E80080FD1CC08091F10192 +:1018E000882391F0853091F08091EB0085FD10C048 +:1018F0004091E4005091E5004217530729F39A0103 +:10190000915011F784E0089582E0089583E00895EE +:1019100081E0089580E008954091E80042FFDECF25 +:1019200008950E94FF0C0E94070DE0EEF0E0808118 +:1019300081608083E8EDF0E080818F77808319BC3F +:10194000A7EDB0E08C918E7F8C9380818F7E808319 +:101950001092F00108950F931F93CF93DF930E948D +:10196000FF0C0E94070DC8EDD0E088818F77888337 +:1019700088818068888388818F7D888319BC1092D4 +:10198000F1011092ED011092EF011092EE0100EEC4 +:1019900010E0F80180818B7F80838881816088835B +:1019A00042E060E080E00E940B0CE1EEF0E080811C +:1019B0008E7F8083E2EEF0E0808181608083808191 +:1019C00088608083F80180818E7F80838881806138 +:1019D0008883DF91CF911F910F910895E8EDF0E09A +:1019E00080818F7E8083E7EDF0E08081816080835D +:1019F00084E082BF81E08093F0010C94AB0CE8EDB1 +:101A0000F0E080818E7F80831092E2000895109232 +:101A1000DA001092E10008951F920F920FB60F9214 +:101A200011242F933F934F935F936F937F938F93E3 +:101A30009F93AF93BF93EF93FF938091E10082FF59 +:101A40000BC08091E20082FF07C08091E1008B7F94 +:101A50008093E1000E94730F8091DA0080FF1FC025 +:101A60008091D80080FF1BC08091DA008E7F809328 +:101A7000DA008091D90080FF0DC080E189BD82E14C +:101A800089BD09B400FEFDCF81E08093F1010E9481 +:101A90006E0905C019BC1092F1010E947C09809169 +:101AA000E10080FF19C08091E20080FF15C08091A5 +:101AB000E2008E7F8093E2008091E200806180935B +:101AC000E2008091D80080628093D80019BC85E044 +:101AD0008093F1010E9480098091E10084FF30C071 +:101AE0008091E20084FF2CC080E189BD82E189BD44 +:101AF00009B400FEFDCF8091D8008F7D8093D8007F +:101B00008091E1008F7E8093E1008091E2008F7EE2 +:101B10008093E2008091E20081608093E2008091F6 +:101B2000ED01882311F084E007C08091E30087FD78 +:101B300002C081E001C083E08093F1010E9482092C +:101B40008091E10083FF29C08091E20083FF25C0DE +:101B50008091E100877F8093E10082E08093F10132 +:101B60001092ED018091E1008E7F8093E1008091E1 +:101B7000E2008E7F8093E2008091E200806180939A +:101B8000E20042E060E080E00E940B0C8091F000F7 +:101B900088608093F0000E947F09FF91EF91BF91D0 +:101BA000AF919F918F917F916F915F914F913F91F5 +:101BB0002F910F900FBE0F901F9018951F920F92AC +:101BC0000FB60F9211242F933F934F935F936F9310 +:101BD0007F938F939F93AF93BF93CF93DF93EF93B5 +:101BE000FF93C091E900CF708091EC00D82FD170A5 +:101BF00080FDD0E81092E9008091F000877F80930B +:101C0000F00078940E94220E1092E9008091F0007A +:101C100088608093F000CD2BCF70C093E900FF91D6 +:101C2000EF91DF91CF91BF91AF919F918F917F9174 +:101C30006F915F914F913F912F910F900FBE0F9039 +:101C40001F9018951F93CF93DF93CDB7DEB7AA9758 +:101C50000FB6F894DEBF0FBECDBFE2EFF1E088E033 +:101C60008E0F9091F10091938E13FBCF0E949E09ED +:101C70008091E80083FF1FC18091F2019091F301F0 +:101C8000492F50E04A30510508F015C1FA01EA5ACF +:101C9000FF4F0C945D23803881F0823809F00BC12E +:101CA0008091F6018F708093E9008091EB0085FBB5 +:101CB000882780F91092E90006C08091EE0190918A +:101CC000EF01911182609091E800977F9093E80076 +:101CD0008093F1001092F100C8C0282F2D7F09F0E9 +:101CE000EAC0882319F0823061F0E5C08091F401E8 +:101CF000813009F0E0C0933009F080E08093EF017B +:101D00002BC08091F401811127C08091F6018F7062 +:101D100009F4D1C08093E9002091EB0020FF1CC0A2 +:101D2000933021F48091EB00806214C09091EB001D +:101D300090619093EB0021E030E0A90102C0440FD4 +:101D4000551F8A95E2F74093EA001092EA008091CD +:101D5000EB0088608093EB001092E9008091E8002E +:101D6000877F86C08111A7C01091F4011F778091F1 +:101D7000E3008078812B8093E3008091E800877FE7 +:101D80008093E8000E94400C8091E80080FFFCCF27 +:101D90008091E30080688093E300111102C082E02B +:101DA00001C083E08093F10186C08058823008F042 +:101DB00082C08091F4019091F5018C3D53E095072C +:101DC00079F583E08A838AE289834FB7F894DE014C +:101DD000139620E03EE051E2E32FF0E050935700ED +:101DE000E49120FF03C0E295EF703F5FEF708E2F0C +:101DF00090E0EA3010F0C79601C0C0968D939D9395 +:101E00002F5F243149F74FBF8091E800877F80938F +:101E1000E8006AE270E0CE0101960E94470B14C010 +:101E2000AE014F5F5F4F6091F6010E948E0ABC01C8 +:101E3000009709F440C09091E800977F9093E800E4 +:101E400089819A810E94AA0B8091E8008B77809308 +:101E5000E80031C0803879F58091E800877F809371 +:101E6000E8008091ED018093F1008091E8008E7789 +:101E70008093E8000E94400C1EC081111CC090910C +:101E8000F4019230C0F48091E800877F8093E800ED +:101E90009093ED010E94400C8091ED01811106C0EC +:101EA0008091E30087FD02C081E001C084E080935F +:101EB000F1010E948A098091E80083FF0AC08091A5 +:101EC000E800877F8093E8008091EB008062809338 +:101ED000EB00AA960FB6F894DEBF0FBECDBFDF9120 +:101EE000CF911F9108950895CF938091F101882398 +:101EF000A1F0C091E900CF709091EC00892F817022 +:101F000090FD80E8C82B1092E9008091E80083FDE5 +:101F10000E94220ECF70C093E900CF910895909354 +:101F20007501809374010895E0917401F091750139 +:101F3000309721F00190F081E02D099480E0089520 +:101F4000E0917401F0917501309721F00280F381E6 +:101F5000E02D09940895E0917401F0917501309796 +:101F600021F00480F581E02D0994089520917201FB +:101F7000309173018217930771F0909373018093EE +:101F80007201E0917401F0917501309721F00680A3 +:101F9000F781E02D0994089520917001309171012D +:101FA0008217930771F09093710180937001E09113 +:101FB0007401F0917501309721F00084F185E02DD6 +:101FC0000994089508950C94E20F0E943C1B0E940E +:101FD000DD020C94FE1B9F92AF92BF92CF92DF92D4 +:101FE000EF92FF920F931F93CF93DF9300D000D017 +:101FF00000D0CDB7DEB70E94F5020DE010E0AA24B4 +:10200000A394B12C902E802F0E94E30398012958AD +:102010003E4F6901F901F080F826A1F40150110941 +:1020200088F78FEF89838A831B820E94451B81601A +:10203000782F9D838C8349815A816B818D810E9489 +:1020400082102FC09091DA0191FF04C08E830E940C +:10205000E9038E8125E030E0A501022E01C0440F86 +:102060000A94EAF7E42E4F21C1F029839A828E2147 +:1020700091E009F490E09B830E94451B8160782FDA +:102080009D838C8349815A816B818D810E9482104E +:10209000F6018081E826E08204C021503109E0F693 +:1020A000BDCF0E94E51E109176010E94940F181773 +:1020B000B9F00E94940F8093760126960FB6F8949B +:1020C000DEBF0FBECDBFDF91CF911F910F91FF906B +:1020D000EF90DF90CF90BF90AF909F900C948D08C1 +:1020E00026960FB6F894DEBF0FBECDBFDF91CF911D +:1020F0001F910F91FF90EF90DF90CF90BF90AF9026 +:102100009F900895CF93DF93CDB7DEB72B970FB68F +:10211000F894DEBF0FBECDBF4F83588769877A879B +:102120008B87DE01119686E0FD0111928A95E9F711 +:1021300085E0FE01379601900D928A95E1F749817D +:102140005A816B817C818D819E810E94CB162B965A +:102150000FB6F894DEBF0FBECDBFDF91CF910895CB +:10216000CF93882309F4C2C0C82F823859F40E9443 +:10217000940F81FDBBC089E30E94A5190E94721AC9 +:1021800089E30CC0833879F40E94940F80FDAEC0BF +:1021900083E50E94A5190E94721A83E50E94E7193F +:1021A000CF910C94721A843859F40E94940F82FDD6 +:1021B0009DC087E40E94A5190E94721A87E4EECFA1 +:1021C0008CEF8C0F813A48F48C2F0E9428218111CA +:1021D0008DC08C2F0E94A519E3CF80E28C0F883030 +:1021E00048F4C77081E001C0880FCA95EAF70E94E1 +:1021F0002B1AD6CF8BE58C0F833078F4C53A29F0B3 +:10220000C63A31F083E890E005C081E890E002C072 +:1022100082E890E0CF910C94B60F88E58C0F833163 +:1022200008F064C0C83A39F1C93A41F1CA3A49F1F3 +:10223000CB3A51F1CC3A59F1CD3A61F1C03B69F159 +:10224000CE3A71F1CF3A79F1C13B81F1C23B89F1CC +:10225000C33B91F1C43B99F1C53BA1F1C63BA9F148 +:10226000C73BB1F1C83BB9F1C93BC1F1CA3BC9F1A8 +:1022700080E090E038C082EE90E035C089EE90E0DA +:1022800032C08AEE90E02FC085EB90E02CC086EB48 +:1022900090E029C087EB90E026C08CEC90E023C052 +:1022A0008DEC90E020C083E891E01DC08AE891E0C9 +:1022B0001AC082E991E017C084E991E014C081E27C +:1022C00092E011C083E292E00EC084E292E00BC083 +:1022D00085E292E008C086E292E005C087E292E0E3 +:1022E00002C08AE292E0CF910C94CC0FCF91089576 +:1022F000882309F44BC0823859F40E94940F81FF5F +:1023000045C089E30E94A5190E94721A89E30CC096 +:10231000833871F40E94940F80FF38C083E50E94D7 +:10232000A5190E94721A83E50E94E7190C94721A8B +:10233000843859F40E94940F82FF28C087E40E94D9 +:10234000A5190E94721A87E4EFCF9CEF980F913A7B +:1023500058F390E2980F983050F4877091E001C0E4 +:10236000990F8A95EAF7892F0E94311ADFCF9BE5F2 +:10237000980F933020F480E090E00C94B60F885AC8 +:10238000833120F480E090E00C94CC0F08958823F2 +:1023900021F00E942B1A0C94721A0895882321F0C0 +:1023A0000E94311A0C94721A08957F928F929F9214 +:1023B000AF92BF92CF92DF92EF92FF920F931F9353 +:1023C000CF93DF931F92CDB7DEB77C01C62E772E59 +:1023D000FC01058102950F70128111110E94481AAB +:1023E0000E949E19882379F0112369F080E28C0DF8 +:1023F000883048F082E00E9487190E949E1991E07F +:10240000D82ED92601C0D12CE72DE295EF70F0E04F +:10241000E05AFF4F0C945D23872D807F072D0F70AE +:10242000882311F00295007F112389F0002309F41D +:1024300090C180E28C0D883020F4802F0E942B1AEE +:1024400003C0802F0E943B1A0E94721A82C18C2DF9 +:102450000E947811002309F495C180E28C0D883028 +:1024600020F4802F0E94311A03C0802F0E94411A4D +:102470000E94721A87C1972D907F872D8F7090329E +:1024800011F08295807FCC2021F0F1E0CF16B1F0E1 +:102490001EC0112349F0002309F414C1013009F0D2 +:1024A00011C10E945B1A6EC1002319F0013009F4BA +:1024B00069C189830E945E1A89810AC1112321F0B2 +:1024C000023008F05FC1FEC001115CC101C11123DF +:1024D00021F0002309F4F6C03CC1002309F4F8C040 +:1024E0003EC1872D86958695837090E0009719F000 +:1024F000019761F047C1112321F08C2D972D937026 +:1025000002C080E090E00E94B60F3CC1112321F090 +:102510008C2D972D937002C080E090E00E94CC0F2C +:1025200031C18C2D112319F00E94ED1D02C00E94B3 +:10253000551E0E94DA1E26C1872D837009F052C0F5 +:10254000111120C18C2D829586958770880F880F78 +:102550009C2D9F70892E912CA12CB12C082E04C08B +:10256000880C991CAA1CBB1C0A94D2F7C4FE14C088 +:102570000FE010E020E030E0B901A80104C0440FF2 +:10258000551F661F771F8A95D2F7CB01BA01609558 +:1025900070958095909503C060E070E0CB01272D89 +:1025A00026952695237030E02230310569F02330DE +:1025B000310589F0682979298A299B29213031053B +:1025C00071F00E941318DEC0682979298A299B2995 +:1025D0000E942F18D7C00E941318C501B4010E9491 +:1025E000F717D0C0112319F0872D817001C086958F +:1025F000882309F4C7C08C2D829586958770880F33 +:10260000880F9C2D9F70892E912CA12CB12C082E07 +:1026100004C0880C991CAA1CBB1C0A94D2F7C4FEE7 +:1026200014C00FE010E020E030E0B901A80104C0C0 +:10263000440F551F661F771F8A95D2F7CB01BA0149 +:10264000609570958095909503C060E070E0CB0137 +:10265000272D269526952370422F50E042305105B4 +:1026600069F04330510589F0682979298A299B2925 +:102670004130510571F00E94ED1884C06829792914 +:102680008A299B290E9409197DC00E94ED18C50165 +:10269000B4010E94D11876C08C2D90E0FC01E05E60 +:1026A000F109E531F10508F050C0E059FF4F0C94F5 +:1026B0005D230C2D0F70872D8F71112331F00E9437 +:1026C0006A18802F0E94C7115DC00E948B18802F4E +:1026D0000E94CE1157C0112339F0011153C0872D2C +:1026E0008F710E94B0184EC0023008F04BC0F7CF77 +:1026F000112339F0872D8F710E946A1843C011236E +:10270000C9F3872D8F710E948B183CC0112329F0CB +:10271000872D8F710E94551835C00E944B1832C00A +:10272000112351F0172D1F71812F0E946A1863E049 +:10273000812F0E947E1926C081E00E9487190230F5 +:1027400008F182E00E9487191DC0112331F0002397 +:1027500089F28C2D0E94B01015C0002391F28C2DAF +:102760000E9478110FC0472D4F706C2DC7010E9439 +:10277000BF040E946F1706C0472D4F706C2DC70114 +:102780000E949C05DD20F9F00E947A1980FD1BC093 +:10279000F70112820E9474190E946A18C7010E94F0 +:1027A000F2130E9474190F90DF91CF911F910F9136 +:1027B000FF90EF90DF90CF90BF90AF909F908F9061 +:1027C0007F900C948B180F90DF91CF911F910F91F8 +:1027D000FF90EF90DF90CF90BF90AF909F908F9041 +:1027E0007F9008950F931F93CF93DF93EC0188811F +:1027F00099812B813C81232BB9F09F3F11F48F3FAE +:1028000099F0CE010E94F404882371F068817981E7 +:102810008A810E9470198C010E9425190E94EC1770 +:10282000B801CE010E94D511DF91CF911F910F9178 +:1028300008950E94481A0E94581A0E941D1A0E9468 +:10284000721A0E948B1F0E94DA1E80E090E00E94A4 +:10285000B60F80E090E00C94CC0F0E94381A0C94D4 +:1028600019140E946519292F22952F7030E02C3001 +:1028700031054CF42A3031056CF4225031092230F4 +:102880003105A8F407C02C30310569F02F3031052F +:1028900051F00DC0803F69F018F4803E40F409C04B +:1028A000843F29F406C093FB882780F9089580E0CF +:1028B000089581E00895CF93DF9300D000D01F9258 +:1028C000CDB7DEB70F900F900F900F900F90DF9164 +:1028D000CF910895CF93DF9300D000D000D0CDB733 +:1028E000DEB726960FB6F894DEBF0FBECDBFDF91E0 +:1028F000CF9108951F93CF93DF93C091850116E088 +:1029000080918601C81799F0D0E01C9FF0011D9FAF +:10291000F00D1124E957FE4F40815181628173818E +:10292000848195810E946A142196C770E9CFDF9156 +:10293000CF911F9108954091B7015091B8016091D6 +:10294000B9017091BA018091BB019091BC010C94C6 +:102950006A148091BC0182958F7009F054C08091F7 +:10296000B901882309F44FC080918501A0918601A7 +:102970006091B7017091B8014091BA015091BB01CB +:10298000B6E08A1709F43FC090E041155105C1F146 +:102990007F3F11F46F3FA1F1B89FF001B99FF00D97 +:1029A0001124E957FE4F218172132AC0208162133E +:1029B00027C02281211124C02381348124173507A7 +:1029C00010F421503109241B350B283C3105C0F48B +:1029D0002091BC012F7020612093BC0126E0289F2C +:1029E000F001299FF00D1124E457FE4F80818F7074 +:1029F0008061808387EB91E00E94F2130C947A143B +:102A000001968770BECF0895CF92DF92EF92FF922A +:102A10000F931F93CF93DF93CDB7DEB762970FB6B7 +:102A2000F894DEBF0FBECDBF8C0185E0F801DE015A +:102A30001D9601900D928A95E1F7D8014C9111965F +:102A40005C91119712966C9112971396CD90DC9031 +:102A500014973091B7017091B8018091BA019091AB +:102A6000BB01009709F46BC17F3F19F43F3F09F4A4 +:102A700066C1E090B901EE2009F4C0C02091BC010C +:102A8000C816D90628F0F601E81BF90BCF0104C0DF +:102A9000809590958C0D9D1DFF24F394883C9105A5 +:102AA00078F0F12C207F09F0C6C07C2DD98AC88A25 +:102AB00089890E945B1487EB91E00E94F213B1C0F8 +:102AC000822F807F09F046C0751314C0341312C0E2 +:102AD000611110C02F7020612093BC010E949B14D3 +:102AE00087EB91E00E94F2138091BC01D80115960A +:102AF0008C932EC0CD2819F15F3F11F44F3FF9F0B0 +:102B0000F62E61111CC0809185012091860136E06E +:102B1000821709F45AC090E0389FF001399FF00DF8 +:102B20001124E957FE4F7181571306C07081471376 +:102B300003C07281711103C001968770E9CFF62E30 +:102B4000662309F418C18091BC0181608093BC01A7 +:102B5000F12C11C1751308C0341306C0611104C0F3 +:102B60008091BC01D801C3C04D875E878D859E854D +:102B70006A8B0E9431146A898823E1F16623D1F1BE +:102B80002091BC01822F82958F7090E0029774F0A3 +:102B90008091B7019091B80198878F831986DB8661 +:102BA000CA862C87CE0107960E94F21386E0F801B0 +:102BB000A7EBB1E001900D928A95E1F70E94A9146C +:102BC0000E949B14FF24F394D6C04D875E878D85A9 +:102BD0009E850E946519292F22952F7030E02230A2 +:102BE00031050CF0BCC09F7009F0B6C0805E883023 +:102BF00008F4C1C0C8010E94F213E4CFC816D90678 +:102C000008F453C0F601E81BF90BCF01883C91058D +:102C100008F450C0F12C7C2DD98AC88A89890E9479 +:102C20005B14E7EBF1E086E0DF011D928A95E9F79E +:102C30000E949B14A0C0751314C0341312C06111FC +:102C400010C08091BC01F8018583C8010E94F21375 +:102C500086E0E7EBF1E0DF011D928A95E9F7FE2CB3 +:102C60008AC04D875E878D859E856A8B0E94311450 +:102C70006A89882309F4BECF662309F4BBCF20916B +:102C8000BC01822F82958F7090E002970CF48ECF5A +:102C90008091B7019091B8019A8389831B82DD826C +:102CA000CC822E83CE0101967FCF809590958C0D9E +:102CB0009D1DACCFF62E662309F49CCF75132EC054 +:102CC00034132CC02091BC0120FD1FC0822F82959F +:102CD0008F70D9F0D80115962C9315978F3049F045 +:102CE0008F5F982F9295907F822F8F70892B1596EA +:102CF0008C93C8010E94F21386E0F801A7EBB1E0C3 +:102D000001900D928A95E1F793CF86E0F801A7EB49 +:102D1000B1E001900D928A95E1F72DC04D875E8755 +:102D20008D859E850E943114811140CF8091BC0118 +:102D300081608093BC01C8010E94F2131CC066230D +:102D400009F458CF4D875E878D859E850E9431148A +:102D5000882309F44FCF2ACF811148CF0CC02430EB +:102D600031050CF047CF9F7009F440CFF8019581F1 +:102D7000907F09F03BCF8F2D62960FB6F894DEBF9F +:102D80000FBECDBFDF91CF911F910F91FF90EF90BC +:102D9000DF90CF9008951F93CF93DF93CDB7DEB729 +:102DA0002C970FB6F894DEBF0FBECDBF4F83588768 +:102DB00069877A878B879C87CE0107960E940415C6 +:102DC000882369F08F8198852A853B85232BF1F133 +:102DD0009F3F09F063C08F3F09F060C037C086E0B5 +:102DE000FE013796DE01119601900D928A95E1F76A +:102DF0006F817885EA85FB85309741F17F3F11F43B +:102E00006F3F21F12091860130E0C9010196877062 +:102E100099274091850150E08417950709F447C030 +:102E200069837A83FD83EC8396E0929FD001939F20 +:102E3000B00D1124A957BE4FFE01319601900D929D +:102E40009A95E1F7809386010E947A1416E08091AA +:102E50008501909186018917C1F1189FC001112445 +:102E600089579E4F0E940415882379F1E0918501CE +:102E70001E9FF0011124E957FE4F4081518162816C +:102E80007381848195810E946A148091850190E00C +:102E900001968770992780938501D9CF4F815885F6 +:102EA00069857A858B859C850E946A14CFCF0E94A4 +:102EB0002D141092860110928501E7EBF1E086E077 +:102EC000DF011D928A95E9F7C1CF2C960FB6F894D1 +:102ED000DEBF0FBECDBFDF91CF911F910895EF925E +:102EE000FF920F931F93CF93DF938C01009709F408 +:102EF0006CC0F12CEE24E394E8012196F801849152 +:102F0000843740F4843008F051C0813081F0823041 +:102F100019F15BC0853709F444C0A8F19CE7980F0C +:102F2000903708F052C08F770E94781141C00E5F31 +:102F30001F4FFE01C49180E28C0F883048F4C770A7 +:102F40008E2D01C0880FCA95EAF70E944B1A14C053 +:102F50008C2F0E94B0102DC00E5F1F4FFE01C49138 +:102F600080E28C0F883058F4C7708E2D01C0880F16 +:102F7000CA95EAF70E94511A0E94721A1AC08C2F41 +:102F80000E94781116C00E5F1F4FFE01C491CC2322 +:102F900081F08FE99FE00197F1F700C00000C15078 +:102FA000F6CF0E5F1F4FFE01F49003C00E94B010D9 +:102FB0008E018F2D882309F49FCFEFE9FFE0319731 +:102FC000F1F700C000008150F5CFDF91CF911F9144 +:102FD0000F91FF90EF90089508956093C101709351 +:102FE000C2018093C3019093C4010C9419140F93F0 +:102FF0001F930091C1011091C2012091C301309132 +:10300000C401DC01CB01802B912BA22BB32B80932D +:10301000C1019093C201A093C301B093C4011F9159 +:103020000F910C9419140F931F930091C1011091EB +:10303000C2012091C3013091C401DC01CB01802386 +:103040009123A223B3238093C1019093C201A09343 +:10305000C301B093C4011F910F910C9419140F93E5 +:103060001F930091C1011091C2012091C3013091C1 +:10307000C401DC01CB0180279127A227B3278093CD +:10308000C1019093C201A093C301B093C4011F91E9 +:103090000F910C9419141092BD011092BE01109260 +:1030A000BF011092C0010C94191441E050E060E09F +:1030B00070E004C0440F551F661F771F8A95D2F732 +:1030C0004093BD015093BE016093BF017093C00156 +:1030D0000C94191441E050E060E070E004C0440F2B +:1030E000551F661F771F8A95D2F78091BD01909179 +:1030F000BE01A091BF01B091C001482B592B6A2B92 +:103100007B2B4093BD015093BE016093BF01709330 +:10311000C0010C94191441E050E060E070E004C07C +:10312000440F551F661F771F8A95D2F7409550951B +:10313000609570958091BD019091BE01A091BF01F5 +:10314000B091C001482359236A237B234093BD01DA +:103150005093BE016093BF017093C0010C94191489 +:1031600041E050E060E070E004C0440F551F661F6E +:10317000771F8A95D2F78091BD019091BE01A091F1 +:10318000BF01B091C001482759276A277B27409388 +:10319000BD015093BE016093BF017093C0010C94B8 +:1031A00019140F931F930091BD011091BE0120913E +:1031B000BF013091C001DC01CB01802B912BA22BF0 +:1031C000B32B8093BD019093BE01A093BF01B09338 +:1031D000C0011F910F910C9419140F931F9300912C +:1031E000BD011091BE012091BF013091C001DC01F1 +:1031F000CB0180239123A223B3238093BD0190931D +:10320000BE01A093BF01B093C0011F910F910C9418 +:1032100019140F931F930091BD011091BE012091CD +:10322000BF013091C001DC01CB0180279127A2278B +:10323000B3278093BD019093BE01A093BF01B093CB +:10324000C0011F910F910C9419140895CF92DF9231 +:10325000EF92FF920F931F93CF93DF938C01C09057 +:10326000C101D090C201E090C301F090C4018091EF +:10327000BD019091BE01A091BF01B091C001C82ACB +:10328000D92AEA2AFB2ACFE1D0E0D701C6010C2EC9 +:1032900004C0B695A795979587950A94D2F780FFB5 +:1032A00006C0B8018C2F0E94F207019721F42197E4 +:1032B00060F780E001C08C2FDF91CF911F910F91BB +:1032C000FF90EF90DF90CF900895CF93DF93EC01C4 +:1032D0000E942619BE010E94F207DF91CF91089546 +:1032E000CB010E94651908958091C501859585954A +:1032F000859508958091C5018770089598E0899F0C +:1033000090011124262B2093C5010C946A1820915A +:10331000C501809582238093C501982F977069F429 +:1033200030E0482F552747FD50952417350729F0E1 +:103330008595859585950C948B1808959091C50178 +:10334000977081E009F480E0089590910C01992331 +:1033500021F090910D01911109C020910E01309141 +:103360000F01F90132969FEF40E01FC0982F96950C +:10337000969596959F3050F5E0910E01F0910F01D2 +:10338000E90FF11D877021E030E0A90102C0440F70 +:10339000551F8A95E2F7CA019181892B818308958F +:1033A0009F3F39F04F5F4E3041F051915813F8CFA5 +:1033B0000DC05111F7CF942FF5CF9F3F39F0F90190 +:1033C000E90FF11D97FDFA95828308950895909174 +:1033D0000C01992321F090910D01911109C02091C8 +:1033E0000E0130910F01F9013296205F3F4F1FC04F +:1033F000982F9695969596959F30F0F4E0910E0152 +:10340000F0910F01E90FF11D877021E030E0A90173 +:1034100002C0440F551F8A95E2F7CA018095918139 +:103420008923818308953196E217F30729F090816B +:103430009813F9CF1082F7CF089581E090E0E091E2 +:103440000E01F0910F01E80FF91F108201968031F3 +:103450009105A9F708959091D901892B8093D901FD +:10346000089580959091D90189238093D901089579 +:103470001092D90108959091D801892B8093D80199 +:10348000089580959091D80189238093D80108955B +:103490001092D80108959091D701892B8093D7017C +:1034A000089580959091D70189238093D70108953D +:1034B0001092D70108958093C60108951092C60115 +:1034C000089580910E0190910F01FC0131969C01AD +:1034D000205F3F4F80E0919191118F5FE217F307DA +:1034E000D1F70895E0910E01F0910F018091D9017B +:1034F0008083E0910E01F0910F0190818091D801BD +:10350000892B8083E0910E01F0910F0190818091D1 +:10351000D701892B80838091C601882361F0E091D7 +:103520000E01F0910F019081892B80830E94611A16 +:1035300081111092C60180910E0190910F010C949F +:10354000A00F20E0009739F0AC01415051098423CD +:1035500095232F5FF7CF822F0895CF92DF92EF92BE +:10356000FF926C01EE24FF24C114D104E104F104A4 +:1035700021F0C701B60120E101C020E0C72ED82EFE +:10358000E92EFF24C114D104E104F10419F0285FED +:10359000C701B6016B017C0154E0F694E794D7941F +:1035A000C7945A95D1F7C114D104E104F10419F07C +:1035B0002C5FC701B6016B017C0142E0F694E794F1 +:1035C000D794C7944A95D1F7C114D104E104F1040A +:1035D00019F02E5FC701B601DC01CB01B695A795A6 +:1035E00097958795892B8A2B8B2B09F02F5F822F3C +:1035F000FF90EF90DF90CF9008958091F10184309B +:1036000021F11092DB0120E488E190E00FB6F894FC +:10361000A895809360000FBE2093600080E00E9418 +:103620008D0883B7817F846083BF83B7816083BF48 +:103630007894889583B78E7F83BF88E10FB6F8941E +:1036400080936000109260000FBE08950895089561 +:103650000E94261B0E94F5020E94271B0E94EA037B +:1036600091E0811101C090E0892F08950E942D14EE +:103670000E94940F0C948D0882E084BD93E095BD68 +:103680009AEF97BD80936E0008952FB7F8948091BC +:10369000DC019091DD01A091DE01B091DF012FBF2F +:1036A0000895CF92DF92EF92FF920F931F932FB75F +:1036B000F8944091DC015091DD016091DE01709140 +:1036C000DF012FBF6A017B01EE24FF248C0120E083 +:1036D00030E0C016D106E206F30610F4415051095D +:1036E0009A01281B390BC9011F910F91FF90EF9090 +:1036F000DF90CF9008951F920F920FB60F92112472 +:103700008F939F93AF93BF938091DC019091DD01E4 +:10371000A091DE01B091DF010196A11DB11D809342 +:10372000DC019093DD01A093DE01B093DF01BF9136 +:10373000AF919F918F910F900FBE0F901F90189592 +:103740000E94910CF8942FEF87EA91E62150804077 +:103750009040E1F700C0000087E090EBDC0180932F +:10376000FB019093FC01A093FD01B093FE019CE04E +:1037700088E10FB6F894A895809360000FBE9093EF +:103780006000FFCFEF92FF920F931F93CF93DF93D1 +:10379000D82FCDE08C2F0E94E30305E010E0E82E47 +:1037A000F12CC701002E02C0959587950A94E2F787 +:1037B00080FF09C0602F7C2F80E00E949D05D813F8 +:1037C00002C081E006C00150110958F7C15010F73E +:1037D00080E0DF91CF911F910F91FF90EF900895BE +:1037E000CF93C82F8CE20E94C21B882321F08C2F1C +:1037F000CF910C94C21B80E0CF910895CF930E948B +:10380000451D811102C00E942B1DC5E6C15049F023 +:103810000E94F5028FE39CE90197F1F700C00000D8 +:10382000F5CF89E20E94F01B811113C18AE20E9448 +:10383000F01B81110E942B1D85E00E94F01B81115D +:103840000E94A01B0E94501D8093DA0187E00E9415 +:10385000F01B8823A9F18BE10E94F01B882351F013 +:103860008091DA0181FB222720F991E0922790FBD9 +:1038700081F90EC08EE00E94F01B882361F08091D8 +:10388000DA0182FB222720F991E0922790FB82F94E +:103890008093DA0115C080E10E94F01B9091DA015B +:1038A000882341F093FB222720F981E0822780FBC7 +:1038B00093F904C0892F809580FB90F99093DA01E9 +:1038C0008091DA010E94541D0E94621D8093FA01CA +:1038D00080EE0E94F01B882341F08091FA01982F1E +:1038E000909590FB80F98093FA0189E30E94F01B88 +:1038F000882359F08091FA0181FB222720F991E079 +:10390000922790FB81F98093FA0182EE0E94F01BCE +:10391000882359F08091FA0182FB222720F991E057 +:10392000922790FB82F98093FA0186EE0E94F01BA9 +:10393000882359F08091FA0183FB222720F991E036 +:10394000922790FB83F98093FA0183EE0E94F01B8B +:10395000882359F08091FA0184FB222720F991E015 +:10396000922790FB84F98093FA0185E30E94F01B73 +:10397000882359F08091FA0185FB222720F991E0F4 +:10398000922790FB85F98093FA0181E30E94F01B56 +:10399000882359F08091FA0186FB222720F991E0D3 +:1039A000922790FB86F98093FA0181E10E94F01B37 +:1039B000882359F08091FA0187FB222720F991E0B2 +:1039C000922790FB87F98093FA018091FA010E9477 +:1039D000661D8091FA0187FB882780F980930D018D +:1039E00087E20E94F01BC82F8EE10E94F01B81111C +:1039F000C2608FE10E94F01B8111C46080E20E94CE +:103A0000F01B8111C86081E20E94F01B8111C0612E +:103A100082E20E94F01B8111C06283E20E94F01BCF +:103A20008111C06484E20E94F01B882311F0C068F9 +:103A300002C0CC2329F08C2F0E945D1D6C2F03C087 +:103A40000E94591D682F70E080E090E0CF910C94A7 +:103A5000ED17CF9108956DEE7EEF80E090E00E942B +:103A6000972360E082E090E00E94852360E083E09D +:103A700090E00E94852360E084E090E00E9485232E +:103A800060E085E090E00C94852380E090E00E9467 +:103A90007F2321E08D3E9E4F09F020E0822F089584 +:103AA00082E090E00C947723682F82E090E00C9401 +:103AB000852383E090E00C947723682F83E090E0E7 +:103AC0000C94852384E090E00C947723682F84E0A5 +:103AD00090E00C9485238091E20180FF0BC06091FF +:103AE000130185E0689FB001112475956795759560 +:103AF00067952BC081FF09C06091130185E0689F25 +:103B0000B00111247595679520C082FF07C06091B0 +:103B1000130185E0689FB001112417C09091E30163 +:103B20009923D1F060911201961788F72091130123 +:103B300085E0289F90011124929FA001939F500D32 +:103B4000112470E0CA010E9449236038710540F4D5 +:103B50006115710539F002C065E070E0862F0895A7 +:103B60008FE7089581E008958091E20180FF08C009 +:103B70006091110170E0759567957595679521C005 +:103B800081FF06C06091110170E07595679519C0BD +:103B900082FF04C06091110170E010C09091E301B8 +:103BA0009923C1F0609110019617A0F7809111013F +:103BB000899FC001112470E00E944923603871057B +:103BC00028F46115710521F0862F08958FE7089577 +:103BD00081E0089561E070E0F4CF803F21F40E941D +:103BE0006B1D819504C0813F29F40E946B1D809359 +:103BF000E6010895823F21F40E946B1D819504C067 +:103C0000833F29F40E946B1D8093E5010895893F4D +:103C100019F40E94B41D05C08A3F31F40E94B41DFE +:103C200081958093E70108958B3F21F40E94B41D94 +:103C3000819504C08C3F29F40E94B41D8093E80153 +:103C40000895843F21F48091E401816017C0853F8D +:103C500021F48091E401826011C0863F21F48091BB +:103C6000E40184600BC0873F21F48091E401886007 +:103C700005C0883F31F48091E40180618093E401C4 +:103C800008958D3F21F48091E20181600BC08E3F49 +:103C900021F48091E201826005C08F3F29F4809178 +:103CA000E20184608093E2010895803F39F48091BD +:103CB000E60187FF6CC01092E60169C0813F29F4DC +:103CC0008091E6011816BCF362C09091E501823F35 +:103CD00029F497FF5CC01092E50159C0833F19F4A5 +:103CE0001916CCF354C0893F41F48091E7011816AE +:103CF0000CF04DC01092E7014AC08A3F29F4809130 +:103D0000E70187FF44C0F6CF8B3F39F48091E8018B +:103D100087FF3DC01092E8013AC08C3F29F48091A2 +:103D2000E8011816BCF333C0843F21F48091E4010C +:103D30008E7F17C0853F21F48091E4018D7F11C0F3 +:103D4000863F21F48091E4018B7F0BC0873F21F4F3 +:103D50008091E401877F05C0883F31F48091E401C0 +:103D60008F7E8093E40113C08D3F21F48091E201A6 +:103D70008E7F0BC08E3F21F48091E2018D7F05C0C4 +:103D80008F3F29F48091E2018B7F8093E201809143 +:103D9000E50181110EC08091E60181110AC0809178 +:103DA000E701811106C08091E801811102C01092E3 +:103DB000E301089584EE91E00E94AB0F0E94451B41 +:103DC0009093E1018093E00108951F93CF93DF93D7 +:103DD0008091E0019091E1010E94511BAC01909112 +:103DE000E301992321F02091140130E006C02091D5 +:103DF00015018AE0289F900111244217530708F407 +:103E000086C08091E501C091E601D091E701109153 +:103E1000E801811107C0C11176C0D11174C0111120 +:103E200072C075C09F3F19F09F5F9093E301181611 +:103E300024F40E946B1D8093E5018091E50187FFCA +:103E400005C00E946B1D81958093E5011C1624F42A +:103E50000E946B1D8093E6018091E60187FF05C0FB +:103E60000E946B1D81958093E6016091E5016623B8 +:103E700039F1C091E601CC2319F1772767FD7095E0 +:103E8000872F972F0E945A2223E333E343E35FE314 +:103E90000E94BE220E9427226093E5016C2F7727A3 +:103EA00067FD7095872F972F0E945A2223E333E3F3 +:103EB00043E35FE30E94BE220E9427226093E60153 +:103EC0001D1624F40E94B41D8093E7018091E70140 +:103ED00087FF05C00E94B41D81958093E7011116EC +:103EE00024F40E94B41D8093E8018091E80187FFCB +:103EF00005C00E94B41D81958093E801DF91CF91A8 +:103F00001F910C94DA1E9F3F09F08ECF96CFDF9160 +:103F1000CF911F910895E4EEF1E085E0DF011D925D +:103F20008A95E9F71092E3011092E2010895833037 +:103F300081F128F4813059F08230D1F00895853034 +:103F400009F449C0B8F1863009F456C0089580914B +:103F50001501262F30E0280F311D2F3F310524F4A5 +:103F6000680F6093150108958FEF809315010895F0 +:103F700080911401262F30E0280F311D2F3F31058D +:103F800024F4680F6093140108958FEF8093140157 +:103F9000089580911301262F30E0280F311D2F3F07 +:103FA000310524F4680F6093130108958FEF809317 +:103FB0001301089580911201262F30E0280F311D42 +:103FC0002F3F310524F4680F6093120108958FEF9D +:103FD00080931201089580911101262F30E0280F5F +:103FE000311D2F3F310524F4680F609311010895AE +:103FF0008FEF80931101089580911001262F30E0FA +:10400000280F311D2F3F310524F4680F60931001F4 +:1040100008958FEF809310010895833011F128F4F3 +:10402000813049F0823091F00895853081F120F19E +:104030008630C1F1089580911501681720F4861B20 +:10404000809315010895109215010895809114012F +:10405000681720F4861B80931401089510921401B0 +:10406000089580911301681720F4861B8093130133 +:10407000089510921301089580911201681720F499 +:10408000861B809312010895109212010895809169 +:104090001101681720F4861B809311010895109276 +:1040A0001101089580911001681720F4861B8093F8 +:1040B000100108951092100108950F931F938D31F0 +:1040C00009F46BC008F03FC08E3009F47FC0C0F423 +:1040D000873009F469C068F4863009F0B1C0809176 +:1040E000DA01817F8E7F8093DA0181E08093EA019B +:1040F000A8C0883009F4A2C08B3009F49FC0A0C0CA +:10410000863109F49BC078F4803109F472C08131A2 +:1041100009F096C00E942D1490910D0181E089272D +:1041200080930D018BC0893109F488C08B3109F06F +:1041300087C08091DA0181FB222720F991E0922744 +:1041400090FB81F94CC0853309F470C048F4873284 +:1041500009F46CC008F459C0893209F467C070C012 +:10416000833438F48A3308F04EC0883309F466C0CB +:1041700067C0833409F45AC0883409F061C00E94D2 +:104180002D140FEF13ED20E3015010402040E1F714 +:1041900000C000000E94A01B51C00E94E1210E94AB +:1041A000940F0E948D084AC09091DA01892F809562 +:1041B000817080FB90F929F0966098609093DA0105 +:1041C00040C0997F977F9093DA0138C08091DA01DF +:1041D00082FB222720F991E0922790FB82F98093BD +:1041E000DA01992359F18091DA0181608093DA0133 +:1041F00025C08091DA0183FB222720F991E09227E4 +:1042000090FB83F9ECCF895301C08D5141E050E020 +:1042100060E070E08A019B0104C0000F111F221FA3 +:10422000331F8A95D2F7C901B80104C061E070E07C +:1042300080E090E00E94ED170E942D1481E001C003 +:1042400080E01F910F91089580E0089580E0089527 +:10425000CF93C82F8091EA01813079F018F0823035 +:10426000E9F187C0E0910E01F0910F018081813169 +:1042700069F0823209F07FC009C0E0910E01F0912F +:104280000F018081813111F0823261F48C2F0E9404 +:104290002421811104C08C2F0E945D201DC081E06B +:1042A00090E01AC08C2F0E942621811114C0C431C5 +:1042B00079F048F4CB3079F0C03109F060C082E089 +:1042C0008093EA0108C0C93219F0C83321F057C001 +:1042D0001092EA0154C081E0817053C0C93289F163 +:1042E00018F5C43171F1A8F4C73009F046C08AE06E +:1042F0008093150194E19093140193E0909313013E +:104300008093120188E08093110188E2809310016C +:1043100034C0CE51C63088F5EC2FF0E0E65DFE4F9C +:1043200080818093E90129C0CE34E9F020F4CB34B8 +:1043300021F56AE013C0C13579F0C235F1F461E0CE +:104340000DC08091E901882319F01092E90115C090 +:1043500081E08093EA0115C061E006C08091E90127 +:104360000E94971F0AC06AE08091E9010E940D2017 +:1043700004C01092EA0180E004C081E002C080E045 +:10438000ABCFCF910895E1E8F0E080818860808331 +:104390008081816080838FB7F89493E09093890047 +:1043A00090ED909388008FBF0895EFE6F0E0808154 +:1043B000826080830895EFE6F0E080818D7F8083C6 +:1043C0000895EFE6F0E0908182E0892780830895E8 +:1043D0001F920F920FB60F9211242F933F934F937A +:1043E0005F936F937F938F939F93AF93BF93EF935D +:1043F000FF938091EB019091EC0101969093EC0179 +:104400008093EB01811103C082E00E948D08E0914E +:10441000EC01E695E695F0E0E85FFB4FE4918091D2 +:10442000EB018E1303C080E00E948D08FF91EF9195 +:10443000BF91AF919F918F917F916F915F914F91BC +:104440003F912F910F900FBE0F901F90189504D0A1 +:104450006894B1118DC0089570D088F09F5790F086 +:10446000B92F9927B751A0F0D1F0660F771F881F99 +:10447000991F1AF0BA95C9F712C0B13081F077D000 +:10448000B1E0089574C0672F782F8827B85F39F09E +:10449000B93FCCF3869577956795B395D9F73EF4F8 +:1044A00090958095709561957F4F8F4F9F4F0895A0 +:1044B000E89409C097FB3EF49095809570956195BE +:1044C0007F4F8F4F9F4F9923A9F0F92F96E9BB2774 +:1044D0009395F695879577956795B795F111F8CFF0 +:1044E000FAF4BB0F11F460FF1BC06F5F7F4F8F4F5B +:1044F0009F4F16C0882311F096E911C0772321F051 +:104500009EE8872F762F05C0662371F096E8862FE8 +:1045100070E060E02AF09A95660F771F881FDAF73F +:10452000880F9695879597F9089557FD9058440FF1 +:10453000551F59F05F3F71F04795880F97FB991F02 +:1045400061F09F3F79F087950895121613061406BF +:10455000551FF2CF4695F1DF08C01616170618064C +:10456000991FF1CF86957105610508940895E89427 +:10457000BB2766277727CB0197F908950BD078C022 +:1045800069D028F06ED018F0952309F05AC05FC0AA +:104590001124EECFCADFA0F3959FD1F3950F50E021 +:1045A000551F629FF001729FBB27F00DB11D639FE5 +:1045B000AA27F00DB11DAA1F649F6627B00DA11D8B +:1045C000661F829F2227B00DA11D621F739FB00D31 +:1045D000A11D621F839FA00D611D221F749F3327A1 +:1045E000A00D611D231F849F600D211D822F762F3A +:1045F0006A2F11249F5750408AF0E1F088234AF037 +:10460000EE0FFF1FBB1F661F771F881F9150504082 +:10461000A9F79E3F510570F014C0AACF5F3FECF39D +:10462000983EDCF3869577956795B795F795E7956E +:104630009F5FC1F7FE2B880F911D9695879597F97F +:10464000089597F99F6780E870E060E008959FEF14 +:1046500080EC089500240A94161617061806090619 +:10466000089500240A9412161306140605060895E8 +:10467000092E0394000C11F4882352F0BB0F40F470 +:10468000BF2B11F460FF04C06F5F7F4F8F4F9F4FB0 +:10469000089597FB072E16F4009407D077FD09D0F4 +:1046A0000E94632307FC05D03EF4909581959F4FAF +:1046B0000895709561957F4F0895EE0FFF1F059047 +:1046C000F491E02D0994AA1BBB1B51E107C0AA1F5E +:1046D000BB1FA617B70710F0A61BB70B881F991FA3 +:1046E0005A95A9F780959095BC01CD010895F99947 +:1046F000FECF92BD81BDF89A992780B50895A8E1B3 +:10470000B0E042E050E00C949F23262FF999FECFB1 +:1047100092BD81BDF89A019700B4021639F01FBA14 +:1047200020BD0FB6F894FA9AF99A0FBE0895019633 +:10473000272F0E9486230C948523DC01CB01FC01EA +:10474000F999FECF06C0F2BDE1BDF89A319600B4EA +:0E4750000D9241505040B8F70895F894FFCFF5 +:10475E0002208F081D09FA08C60892080101C70138 +:10476E0028080A03140A3F4D3639C9037C03460351 +:10477E000D03A002B902D202EB02010203040506E8 +:04478E00070809000F +:00000001FF diff --git a/keyboards/ergodox_ez/keymaps/ab/keyboard-layout.json b/keyboards/ergodox_ez/keymaps/ab/keyboard-layout.json new file mode 100644 index 0000000000..4ade748732 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/ab/keyboard-layout.json @@ -0,0 +1,385 @@ +[ + { + "name": "Beginner's Keymap for Ergodox-EZ", + "author": "Anand Babu Periasamy" + }, + [ + { + "x": 3.5 + }, + "#\n3\n\n\nF3", + { + "x": 10.5 + }, + ")\n0\n\n\nF10" + ], + [ + { + "y": -0.875, + "x": 2.5 + }, + "@\n2\n\n\nF2", + { + "x": 1 + }, + "$\n4\n\n\nF4", + { + "x": 8.5 + }, + "(\n9\n\n\nF9", + { + "x": 1 + }, + "_\n-\n\n\nF11" + ], + [ + { + "y": -0.875, + "x": 5.5 + }, + "%\n5\n\n\nF5", + "^\n6\n\n\nF6", + { + "x": 4.5 + }, + "&\n7\n\n\nF7", + "*\n8\n\n\nF8" + ], + [ + { + "y": -0.875, + "w": 1.5 + }, + "~\n`\n\n\nEsc", + "!\n1\n\n\nF1", + { + "x": 14.5 + }, + "+\n=\n\n\nF12", + { + "a": 7, + "w": 1.5 + }, + "Backspace\n\n\n\nBackspace" + ], + [ + { + "y": -0.375, + "x": 3.5 + }, + "E\n\n\n\n", + { + "x": 10.5 + }, + "I" + ], + [ + { + "y": -0.8799999999999999, + "x": 2.5 + }, + "W" + ], + [ + { + "y": -0.9950000000000001, + "x": 4.5, + "a": 4 + }, + "R", + { + "x": 8.5, + "a": 7 + }, + "U", + { + "x": 1 + }, + "O" + ], + [ + { + "y": -0.875, + "x": 5.5 + }, + "T", + { + "h": 1.5 + }, + "", + { + "x": 4.5, + "h": 1.5 + }, + "", + "Y" + ], + [ + { + "y": -0.875, + "a": 6, + "w": 1.5 + }, + "Tab", + { + "a": 7 + }, + "Q", + { + "x": 14.5 + }, + "P", + { + "a": 4, + "w": 1.5 + }, + "|\n\\" + ], + [ + { + "y": -0.375, + "x": 3.5, + "a": 7 + }, + "D\n\n\n\n", + { + "x": 10.5 + }, + "K" + ], + [ + { + "y": -0.875, + "x": 2.5 + }, + "S\n\n\n\n", + { + "x": 1 + }, + "F\n\n\n\n", + { + "x": 8.5 + }, + "J", + { + "x": 1 + }, + "L" + ], + [ + { + "y": -0.875, + "x": 5.5 + }, + "G", + { + "x": 6.5 + }, + "H" + ], + [ + { + "y": -0.875, + "a": 4, + "fa": [ + 0, + 0, + 0, + 2 + ], + "w": 1.5 + }, + "\n\n\nCtrl\n\n\nCaps", + { + "a": 7 + }, + "A", + { + "x": 14.5, + "a": 4 + }, + ":\n;", + { + "a": 7, + "w": 1.5 + }, + "Enter" + ], + [ + { + "y": -0.625, + "x": 6.5, + "h": 1.5 + }, + "PgUp", + { + "x": 4.5, + "h": 1.5 + }, + "PgDn" + ], + [ + { + "y": -0.75, + "x": 3.5 + }, + "C", + { + "x": 10.5, + "a": 4 + }, + "<\n," + ], + [ + { + "y": -0.875, + "x": 2.5, + "a": 7 + }, + "X", + { + "x": 1 + }, + "V", + { + "x": 8.5 + }, + "M", + { + "x": 1, + "a": 4 + }, + ">\n." + ], + [ + { + "y": -0.875, + "x": 5.5, + "a": 7 + }, + "B", + { + "x": 6.5 + }, + "N" + ], + [ + { + "y": -0.875, + "w": 1.5 + }, + "Shift", + "Z", + { + "x": 14.5, + "a": 4 + }, + "?\n/", + { + "w": 1.5 + }, + "\"\n'" + ], + [ + { + "y": -0.375, + "x": 3.5, + "a": 7 + }, + "Alt\n\n\n\n", + { + "x": 10.5 + }, + "\n\n\n\n" + ], + [ + { + "y": -0.875, + "x": 2.5 + }, + "", + { + "x": 1 + }, + "Alt\n\n\n\n", + { + "x": 8.5 + }, + "", + { + "x": 1 + }, + "\n\n\n\n" + ], + [ + { + "y": -0.75, + "x": 0.5 + }, + "Ctrl\n\n\n\n", + "Esc", + { + "x": 14.5 + }, + "\n\n\n\n", + "Fn" + ], + [ + { + "r": 30, + "rx": 6.5, + "ry": 4.25, + "y": -1, + "x": 1 + }, + "", + "(" + ], + [ + { + "h": 2 + }, + "Space", + { + "h": 2 + }, + "Del", + "[" + ], + [ + { + "x": 2 + }, + "{" + ], + [ + { + "r": -30, + "rx": 13, + "y": -1, + "x": -3 + }, + ")", + "" + ], + [ + { + "x": -3 + }, + "]", + { + "h": 2 + }, + "Enter", + { + "h": 2 + }, + "" + ], + [ + { + "x": -3 + }, + "}" + ] +] \ No newline at end of file diff --git a/keyboards/ergodox_ez/keymaps/ab/keyboard-layout.png b/keyboards/ergodox_ez/keymaps/ab/keyboard-layout.png new file mode 100644 index 0000000000..9a6546e357 Binary files /dev/null and b/keyboards/ergodox_ez/keymaps/ab/keyboard-layout.png differ diff --git a/keyboards/ergodox_ez/keymaps/ab/keymap.c b/keyboards/ergodox_ez/keymaps/ab/keymap.c new file mode 100644 index 0000000000..9b5c93c1ee --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/ab/keymap.c @@ -0,0 +1,140 @@ +#include "ergodox_ez.h" +#include "debug.h" +#include "action_layer.h" + +#define BASE 0 // default layer +#define FN1 1 // media layer + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* Keymap 0: Basic layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | ` | 1 | 2 | 3 | 4 | 5 | 6 | | 7 | 8 | 9 | 0 | - | = | BSpace | + * |--------+------+------+------+------+------+------| |------+------+------+------+------+------+--------| + * | Tab | Q | W | E | R | T | Fwd | | Back | Y | U | I | O | P | \ | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * |Caps/Ctl| A | S | D | F | G |------| |------| H | J | K | L | ; | Enter | + * |--------+------+------+------+------+------| PgUp | | PgDn |------+------+------+------+------+--------| + * | LShift | Z | X | C | V | B | | | | N | M | , | . | / | ' | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | Ctrl | Esc | LGui | Alt | Alt | | Left | Up | Dn | Right| Fn | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | Copy | ( | | ) | Paste| + * ,------|------+------| |------+------+------. + * | | | [ | | ] | | | + * |Space | Del |------| |------| Enter|BSpace| + * | | | { | | } | | | + * `--------------------' `--------------------' + */ +// 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, KC_6, + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_WBAK, + CTL_T(KC_CAPS), KC_A, KC_S, KC_D, KC_F, KC_G, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_PGUP, + KC_LCTL, KC_ESC, KC_LGUI, KC_LALT, KC_LALT, + LCTL(KC_C), KC_LCBR, + KC_LPRN, + KC_SPC, KC_DEL, KC_LBRC, + // right hand + KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, + KC_WFWD, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, + KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_ENT, + KC_PGDN, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_QUOT, + KC_UP, KC_LEFT, KC_RIGHT,KC_DOWN, TG(FN1), + KC_RCBR, LCTL(KC_V), + KC_RPRN, + KC_RBRC, KC_ENT, KC_BSPC + ), +/* Keymap 1: Fn Keys, media and mouse keys + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | Esc | F1 | F2 | F3 | F4 | F5 | F6 | | F7 | F8 | F9 | F10 | F11 | F12 | BSpace | + * |--------+------+------+------+------+------+------| |------+------+------+------+------+------+--------| + * | | | | MsUp | | | | | | | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | |MsLeft|MsDown|MsRght| |------| |------| | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | | | | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * |Teensy| | | Lclk | Rclk | | |VolUp |VolDn | Mute | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------+------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// FN1 Layer + [FN1] = KEYMAP( + KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, + 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, + RESET, KC_TRNS, KC_TRNS, + // right hand + KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_BSPC, + 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_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_VOLD, KC_VOLU, KC_MUTE, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS + ), +}; + +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; +}; + +// 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/keyboards/ergodox_ez/keymaps/ab/readme.md b/keyboards/ergodox_ez/keymaps/ab/readme.md new file mode 100644 index 0000000000..6b1ac2be35 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/ab/readme.md @@ -0,0 +1,21 @@ +# Beginner's keymap for Ergodox-EZ +Beginner's keymap emulates standard QWERTY keyboard for beginners. Once you get comfortable with the Ergodox-EZ, you may fork this keymap and customize it for your own needs or find a suitable one from the community contributed keymaps. + +![Beginner's Keymap](keyboard-layout.png) + +#### Pros +* Easier to switch between regular keyboards and Ergodox-EZ. +* Easy on beginners. It has everything you need for your day to day usage. + +#### Cons +* Keys are not ergonomically placed to take full advantage of Ergodox-EZ. Take a look at this [Default Keymap](https://github.com/jackhumbert/qmk_firmware/blob/master/keyboards/ergodox_ez/keymaps/default/readme.md) +* While multiple layers are possible, beginner's keymap only uses one additional layer for mouse, function and volume keys. + +#### Notes +* Ideally number key [6] should have started from the right-hand side of the keyboard. Doing so breaks the familiar QWERTY layout. +* Quote key ['] should have been placed between [:] and [Enter]. Due to lack of key space, it is placed below [Enter]. +* Double [Alt] keys are placed adjacent to each other for convenience. +* [CapsLock] also acts as [Ctrl] key when you press and hold. It is convenient for GNU Emacs users. +* Additional bracket keys are placed in the center of the keyboard for programmer's convenience. + + diff --git a/keyboards/ergodox_ez/keymaps/adnw_k_o_y/compiled.hex b/keyboards/ergodox_ez/keymaps/adnw_k_o_y/compiled.hex new file mode 100644 index 0000000000..aee94c5831 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/adnw_k_o_y/compiled.hex @@ -0,0 +1,1133 @@ +:100000000C947B020C94BF020C94BF020C94BF02B0 +:100010000C94BF020C94BF020C94BF020C94BF025C +:100020000C94BF020C94BF020C94E90D0C94BB0E0F +:100030000C94BF020C94BF020C94BF020C94BF023C +:100040000C94BF020C9475210C94BF020C94BF0257 +:100050000C94BF020C94571C0C94BF020C94BF026A +:100060000C94BF020C94BF020C94BF020C94BF020C +:100070000C94BF020C94BF020C94BF020C94BF02FC +:100080000C94BF020C94BF020C94BF020C94BF02EC +:100090000C94BF020C94BF020C94BF020C94BF02DC +:1000A0000C94BF020C94BF020C94BF02280F4A0F9D +:1000B00038104A0F38108F0FB20F381007101A106F +:1000C000E912E912181318134E136E139F149F149C +:1000D00079139F142914291490149F149F149914B0 +:1000E00036143614361436143614361436143614C0 +:1000F00036143614361436143614361436143614B0 +:10010000481455145C1463146D140000F0A12E0003 +:100110004C002A00E100354100001E000E000B00DB +:100120001B6134004D001F00370004001400E1047F +:100130002800200012000800340050002C0021008C +:1001400036000C002F004F004A0022001D0018004E +:10015000330000006564500001530000006F000090 +:10016000E3004F000153000000670000E20023009D +:100170001900070005000000296124000A0017008B +:10018000130052004B002500060015001A00510014 +:10019000E50026000F00110010002F002B002700A3 +:1001A0002D0016420D6130004E002D001C00096824 +:1001B000E500C10000000100010001000100010094 +:1001C00000003A001E0220022202010001003B0052 +:1001D0001F0221022302010001003C002F0226021F +:1001E0002F00010001003D00300227023000010015 +:1001F00001003E003102350035020000010001001F +:1002000001000000010000000100010001000000E9 +:100210000100000001003F005200510024020000D4 +:1002200001004000240021001E00010001004100E7 +:10023000250022001F003700010042002600230095 +:10024000200027000100430025022E0231002E006D +:100250000100440045000100010001000000010010 +:100260000100010001000100000001000100010087 +:1002700001000100010001000100F2000100010085 +:1002800001000100F000F1000100F4000100010094 +:100290000100F3000100F500010001000100010070 +:1002A0000100000001000100010000000100000049 +:1002B0000100010001000000010000000100010038 +:1002C0000100010001000000010001000100010027 +:1002D0000100A9000100010001000100AC00AA001A +:1002E000B600010001000100AB00A8000100010000 +:1002F0000100010001000100010001000100AE0049 +:1003000001000100000016034500720067006F0045 +:1003100044006F007800200045005A0000001603DA +:100320004500720067006F0044006F0078002000F5 +:1003300045005A0000000403090409026D0004018D +:1003400000A0FA09040000010301010009211101C4 +:1003500000012240000705810308000A090401008A +:100360000103010200092111010001224D000705CE +:10037000820308000A0904020001030000000921A9 +:10038000110100012236000705830308000A090451 +:1003900003000103000000092111010001223900BE +:1003A000070584031000011201100100000008ED90 +:1003B000FE071301000102000105010906A1010564 +:1003C0000719E029E7150025019508750181020547 +:1003D000081901290595057501910295017503918B +:1003E0000105071900297715002501957875018108 +:1003F00002C005010980A101850216010026B7008F +:100400001A01002AB700751095018100C0050C097A +:1004100001A1018503160100269C021A01002A9CF5 +:1004200002751095018100C005010902A1010901B1 +:10043000A10005091901290515002501950575017A +:10044000810295017503810105010930093115818A +:10045000257F95027508810609381581257F95014C +:1004600075088106050C0A38021581257F950175EE +:10047000088106C0C005010906A101050719E02988 +:10048000E715002501950875018102950175088120 +:100490000105081901290595057501910295017558 +:1004A0000391010507190029FF150026FF00950695 +:1004B00075088100C000000000000000000000007E +:1004C000010204060A0F17202C3A4A5D71879DB37A +:1004D000C7DAE9F5FCFFFCF5E9DAC7B39D87715D82 +:1004E0004A3A2C20170F0A060402010000000000FF +:1004F00000000000000011241FBECFEFDAE0DEBFD5 +:10050000CDBF04B603FE24C08091FD019091FE0191 +:10051000A091FF01B09100028730904BA740B04BF3 +:10052000B9F41092FD011092FE011092FF01109299 +:10053000000214BE84B7877F84BF88E10FB6F894A9 +:1005400080936000109260000FBEE0E0FFE3099529 +:1005500011E0A0E0B1E0E8E7F6E402C005900D92FA +:10056000A433B107D9F711E0A4E3B1E001C01D92B3 +:10057000AD3FB107E1F70E94310B0C943A230C9484 +:1005800000001092B9008AE08093B800089594EAC0 +:100590009093BC009091BC0097FFFCCF9091B90064 +:1005A000987F983021F0903111F081E00895809388 +:1005B000BB0084E88093BC008091BC0087FFFCCF27 +:1005C0008091B900887F883111F0803471F780E024 +:1005D000089584E98093BC008091BC0084FDFCCF29 +:1005E00008958093BB0084E88093BC008091BC0098 +:1005F00087FFFCCF9091B900987F81E0983209F491 +:1006000080E0089584E88093BC008091BC0087FF5F +:10061000FCCF8091BB00089580B38C7080BB81B308 +:10062000836F81BB089580910101811115C080E421 +:100630000E94C7028093010181110CC082E10E94D7 +:10064000F10280930101811105C08FEF0E94F10238 +:10065000809301010E94E90284B1807F84B985B151 +:10066000807F85B98AB1837F8AB98BB1837F8BB94B +:100670003E98469808950E94DD04809301010E94EF +:1006800013030E940C03A5E3B1E0E3E4F1E08EE084 +:100690008E0F11921D928E13FCCF0C94C7040E94F2 +:1006A000DD04809301010E9413030E940C03A5E363 +:1006B000B1E0E3E4F1E08EE08E0F11921D928E1313 +:1006C000FCCF0895BF92CF92DF92EF92FF920F93EB +:1006D0001F93CF93DF9380910101882379F080915C +:1006E00034018F5F80933401811108C00E94DD04C2 +:1006F00080930101811102C00E946F0405E311E0A3 +:10070000C0E0D0E0DD24D39482E0C82EEE24E39450 +:10071000F12CC730D10500F580910101811164C031 +:1007200080E40E94C70280930101811112C082E11E +:100730000E94F1028093010181110BC0C7010C2EB0 +:1007400001C0880F0A94EAF780950E94F102809315 +:1007500001010E94E90248C0CA30A1F028F4C83063 +:1007600059F0C93061F005C0CC3089F070F0CD305F +:1007700089F0209A289810C0219A29980DC0229AB1 +:100780002A980AC0239A2B9807C0529A01C0539AFC +:100790005B9802C03E9A469890EA9A95F1F79FB10D +:1007A000799902C082E001C080E091709D25982B6C +:1007B0007C9902C084E001C080E0892B7D9902C051 +:1007C00038E001C030E0832B7E9902C020E101C0F7 +:1007D00020E0822B9FB19095991F9927991F9295A0 +:1007E000990F907E892B0FC080910101811149C022 +:1007F00080E40E94C70280930101882379F1B12C23 +:100800000E94E9028B2DF8019081981719F08083DE +:10081000C09200010E94130321960F5F1F4FCE303C +:10082000D10509F076CF80910001882361F18150D4 +:1008300080930001882339F08FE99FE00197F1F759 +:1008400000C0000020C0A3E4B1E0E5E3F1E0CF0187 +:10085000825F91919D938E13FCCF15C083E10E941E +:10086000F102809301018111CACF81E40E94C70285 +:10087000809301018111C3CF0E940203B82EB0946E +:10088000BFCF80E0C0CF0E946D0481E0DF91CF91A7 +:100890001F910F91FF90EF90DF90CF90BF90089540 +:1008A000E82FF0E0ED5BFE4F8081089508950F93EF +:1008B0001F93CF93DF93C3E4D1E010E00C2F025FCE +:1008C000899190E00E947E1B180F0C13F9CF812FA5 +:1008D000DF91CF911F910F9108950C943D0556988B +:1008E0005E9825982D9826982E9827982F988FEF08 +:1008F00090E0909389008093880090938B00809380 +:100900008A0090938D0080938C00259A2D9A2FEF6A +:1009100080E792E0215080409040E1F700C0000065 +:10092000269A2E9A2FEF80E792E021508040904047 +:10093000E1F700C00000279A2F9A2FEF80E792E09E +:10094000215080409040E1F700C0000025982D988C +:100950002FEF80E792E0215080409040E1F700C007 +:10096000000026982E982FEF80E792E021508040DB +:100970009040E1F700C0000027982F9856985E98A5 +:1009800025982D9826982E9827982F98089589EACB +:100990008093800089E08093810024982C983F9870 +:1009A0008AB18F748AB96E98479A8BB1806B8BB974 +:1009B000769A0E946F040C943C0580E280930101BA +:1009C0008091510181110EC00E94C10281E080938B +:1009D00051012FEF83ED90E3215080409040E1F7EB +:1009E00000C0000080E40E94C702809301018111D1 +:1009F0002EC00E94F10280930101811128C00E9443 +:100A0000F10280930101811122C08FE30E94F10263 +:100A10008093010181111BC00E94E90280E40E94C1 +:100A2000C70280930101811112C08CE00E94F10283 +:100A30008093010181110BC00E94F102809301019A +:100A4000811105C08FE30E94F102809301010E9491 +:100A5000E90280910101089561110BC0FC018281BE +:100A6000882321F085EE0E948D1103C085EE0E943F +:100A7000551280E090E0089508956091BE01709154 +:100A8000BF018091C0019091C1010E948A1B5698BC +:100A90005E9825982D9826982E9827982F98813023 +:100AA00019F0823021F00895259A2D9A0895269AFA +:100AB0002E9A089581E0089581E008950C945C05D4 +:100AC0000895282F882339F090E02A3010F44D96AD +:100AD00008950697089587E290E00895AF92BF9237 +:100AE000DF92EF92FF920F931F93CF93DF938C01CE +:100AF000FC01C081D181CE010E94031ABE010E9477 +:100B0000DE08EC01B8010E945E05882309F4C9C122 +:100B1000F8018281882309F4BEC080915E018111B1 +:100B20001FC0C431F0E7DF0709F0B5C10E946005BE +:100B300081E080935E010E94211C90935D0180936F +:100B40005C011092550110925701109256011092BB +:100B500059011092580110925B0110925A01A1C1E3 +:100B600080915C0190915D010E942D1C883C910553 +:100B700070F480915501E82FF0E0EE0FFF1FEA5A64 +:100B8000FE4FD183C0838F5F809355018AC1C130EE +:100B900020E8D20708F451C0F8018281882309F4C3 +:100BA0007EC05E01E894B7F880915401813079F0FD +:100BB00050F08230C1F482EE0E948D1187E50E94D0 +:100BC0008D1187E50EC082EE0E948D110CC080EE63 +:100BD0000E948D1181EE0E948D1188E10E948D117D +:100BE00088E10E9455128CE0E82EF12CC5010E2CF4 +:100BF00002C0969587950A94E2F78F700E9461056E +:100C0000D82E0E948D118D2D0E945512F4E0EF1AFE +:100C1000F1082CEFE2162FEFF20641F78091540114 +:100C2000813029F010F0823041F482EE04C080EE71 +:100C30000E94551281EE0E945512C43180E7D807F8 +:100C400068F4C23090E7D90708F046C0C115E0E764 +:100C5000DE0771F0C130D047A1F10CC1C33320E7EA +:100C6000D20709F4D8C0C433D04709F4EBC002C19D +:100C7000F8018281882309F402C10E940A15FFEF5E +:100C800024E38CE0F15020408040E1F700C00000F8 +:100C90000E947C1C06C1C13080E8D80770F2C431C4 +:100CA00020E7D20708F0B3C0C23080E7D807A0F42D +:100CB000C11590E7D90709F4E2C0C130D04709F067 +:100CC000D9C0F8018281882309F4D9C08091DB0161 +:100CD00081608093DB01E5C0F8018281882309F4FB +:100CE000CEC00E94D61C811102C00E94BC1C0E9472 +:100CF000E91C90E09093EF018093EE01C230F0E7A1 +:100D0000DF0721F48091EE0181607AC0C33020E7D3 +:100D1000D20721F48091EE01826072C0C43080E776 +:100D2000D80721F48091EE0184606AC0C53090E755 +:100D3000D90719F48091EE0127C0C630E0E7DE073D +:100D400021F48091EE0180615BC0C730F0E7DF07DE +:100D500021F48091EE01806253C0C83020E7D207B1 +:100D600021F48091EE0180644BC0C93080E7D80740 +:100D700021F48091EE01806843C0CA3090E7D90722 +:100D800029F48091EE01846088603AC0CB30E0E7BE +:100D9000DE0721F48091EE018E7F32C0CC30F0E787 +:100DA000DF0721F48091EE018D7F2AC0CD3020E74E +:100DB000D20721F48091EE018B7F22C0CE3080E7F4 +:100DC000D80719F48091EE011AC08091EE01CF305E +:100DD00090E7D90711F48F7E13C0C031E0E7DE073A +:100DE00011F48F7D0DC0C131F0E7DF0711F48F7B67 +:100DF00007C0C231D04711F48F7702C08B7F877F45 +:100E00008093EE018091EE010E94ED1C4AC0C33335 +:100E1000F0E7DF07A1F4F8018281882321F0109226 +:100E2000520182E016C080915201811106C086E213 +:100E30000E948D1186E20E94551282E018C0C433D0 +:100E4000D047C1F4F8018281882331F01092530118 +:100E500080E20E94A41225C080915301811106C036 +:100E600087E20E948D1187E20E94551280E20E9463 +:100E7000AB1217C081E08093520180935301C801E7 +:100E8000DF91CF911F910F91FF90EF90DF90BF9076 +:100E9000AF900C945A05C130F0E8DF0708F081CE1E +:100EA000CCCE80E0DF91CF911F910F91FF90EF901A +:100EB000DF90BF90AF90089526E0729FF00111245B +:100EC00044E5849FE00DF11D1124E60FF11DEE0FA6 +:100ED000FF1FE25FFE4F859194910E94F0088115FB +:100EE00060E49607B0F5811570E3970708F0DEC05F +:100EF000803E9105D8F4803C910508F06CC0883A9A +:100F0000910578F4853A910508F06BC08130910520 +:100F100009F452C108F40FC18430910508F04CC1A6 +:100F20000AC18B3B910508F467C005C18F3F91054D +:100F300009F048F4803F910508F0ADC0883E910566 +:100F400008F43AC1F8C0811520E2920708F0A5C064 +:100F50000895811543E5940790F4811562E596079D +:100F600008F0C8C0811571E5970708F0BEC081156B +:100F700020E5920708F09DC09F70906A0895811542 +:100F800045E59407D8F4811564E5960708F0C8C0D4 +:100F9000482F4695469570E2479FA0011124837023 +:100FA000992721E030E0B90102C0660F771F8A95CA +:100FB000E2F7CB01842B952B9A680895811576E58D +:100FC000970708F4B2C09C0130562115304108F053 +:100FD000B2C09F70AEC0FC01EE0FFF1FE657F0409D +:100FE00062C0853A910509F4A9C0863A910509F0D5 +:100FF000A8C082E890E40895883A910509F4A4C055 +:10100000893A910509F4A3C08A3A910509F4A2C06E +:101010008B3A910509F4A1C08C3A910509F4A0C05E +:101020008D3A910509F49FC0803B910509F49EC05B +:101030008E3A910509F49DC08F3A910509F49CC040 +:10104000813B910509F49BC0823B910509F49AC04C +:10105000833B910509F499C0843B910509F498C03C +:10106000853B910509F497C0863B910509F496C02C +:10107000873B910509F495C0883B910509F494C01C +:10108000893B910509F493C08A3B910509F492C00C +:1010900080E094E4089590650895FC01FF70EE0FE0 +:1010A000FF1FE65FFE4F8591949108959927906CFC +:1010B0000895482F437021E030E002C0220F331F13 +:1010C0004A95E2F73C68AC0164E0569547956A950D +:1010D000E1F74370342B8F708695869560E2869F8A +:1010E000C0011124822B932B0895982F8827816F9C +:1010F000906A0895482F4695469570E2479FA00153 +:1011000011248370992721E030E0B90102C0660FF5 +:10111000771F8A95E2F7CB01842B952B9C68089565 +:10112000982F8827846F906A08958F719927982F38 +:1011300088279062089580E090E0089581E890E427 +:10114000089583E890E4089582EE94E4089589EE8A +:1011500094E408958AEE94E4089585EB94E4089568 +:1011600086EB94E4089587EB94E408958CEC94E482 +:1011700008958DEC94E4089583E895E408958AE851 +:1011800095E4089582E995E4089584E995E4089545 +:1011900081E296E4089583E296E4089584E296E479 +:1011A000089585E296E4089586E296E4089587E23C +:1011B00096E408958AE296E40895089596E0799F6A +:1011C000F001112494E5899FE00DF11D1124E60F33 +:1011D000F11DEE0FFF1FE25FFE4F85919491089580 +:1011E0008238910549F1B0F48133910509F458C072 +:1011F00048F48932910509F44EC08A32910509F408 +:1012000054C008958533910509F440C08933910590 +:1012100099F00895833E910529F138F4803E9105B7 +:1012200091F0823E9105A1F00895863E9105F9F076 +:10123000873E910531F108952091EE0120FD3AC0DD +:1012400021FD38C008958091EE0180FD35C032C087 +:101250008091EE0182FF32C08091EE0184FD30C0AA +:1012600083EE39C08091EE0182FD28C0F5CF8091D8 +:10127000EE0183FF27C08091EE0184FD21C087EE3F +:101280002AC08091EE0183FD1DC0F5CF8091EE0153 +:1012900085FD1AC01BC08091EE0185FD17C014C0EA +:1012A0008091EE0186FD14C015C08091EE0186FD8F +:1012B00011C00EC080EE0FC089E30DC082EE0BC0DE +:1012C00080E009C086EE07C089E205C085E303C05F +:1012D0008AE201C081E390E0089508950C946D09BD +:1012E00080916F010895CF93DF9300D01F92CDB707 +:1012F000DEB79C018091F401843019F593E0998365 +:101300003B832A839093E9008FEF9091E80081500E +:1013100095FD06C095ED9A95F1F700008111F5CF86 +:101320008091E80085FF0DC040E050E063E070E090 +:10133000CE0101960E94D90B8091E8008E778093B0 +:10134000E8000F900F900F90DF91CF910895CF9309 +:10135000DF9300D01F92CDB7DEB72091F401243087 +:1013600021F522E029839B838A8383E08093E9002F +:101370008FEF9091E800815095FD06C095ED9A950C +:10138000F1F700008111F5CF8091E80085FF0DC0D5 +:1013900040E050E063E070E0CE0101960E94D90B7E +:1013A0008091E8008E778093E8000F900F900F9067 +:1013B000DF91CF9108952091F4012430F1F422E0DF +:1013C0002093E9002FEF3091E800215035FD06C051 +:1013D00035ED3A95F1F700002111F5CF2091E800A5 +:1013E00025FF0BC040E050E065E070E00E94D90BA3 +:1013F0008091E8008E778093E8000895CF93DF9383 +:10140000EC019091F401943009F046C080910C01F8 +:101410008823D9F080910D018823B9F09093E900D9 +:101420008FEF9091E800815095FD06C095E19A9567 +:10143000F1F700008111F5CF8091E80085FF2CC005 +:1014400040E050E060E170E017C081E08093E90087 +:101450008FEF9091E800815095FD06C095ED9A952B +:10146000F1F700008111F5CF8091E80085FF14C0ED +:1014700040E050E068E070E0CE010E94D90B80911E +:10148000E8008E778093E80080E1FE01AFE5B1E0EF +:1014900001900D928A95E1F7DF91CF9108958091A7 +:1014A000F301811109C00E946E0D0E94CB0D809145 +:1014B000E20084608093E20008951092F3010895A1 +:1014C00008950C9462210E94121C0E9468210E94BF +:1014D00071100C946E0942E061EC81E00E94E80C0E +:1014E00042E061EC82E00E94E80C42E061EC83E0C3 +:1014F0000E94E80C42E161EC84E00C94E80C8091DD +:10150000F601833009F455C030F4813071F0823037 +:1015100009F48EC008958A3009F47AC08B3009F43A +:1015200060C0893009F09CC020C08091F501813AEB +:1015300009F096C08091E800877F8093E800809151 +:10154000F9019091FA01892B21F460E18FE591E096 +:1015500003C060E080E090E070E00E94240C809185 +:10156000E8008B778093E80008958091F50181323F +:1015700009F076C08091F9019091FA01009719F075 +:10158000039709F06DC08091E800877F8093E800A1 +:101590008091E80082FD05C08091F4018111F8CFAF +:1015A0005FC08091F10080936F018091E8008B779C +:1015B00053C08091F501813A09F052C08091F90140 +:1015C0009091FA01892B09F04BC08091E800877F48 +:1015D0008093E8008091E80080FFFCCF80910C01AF +:1015E00036C08091F5018132D9F58091F901909151 +:1015F000FA01892BA9F58091E800877F8093E800A4 +:101600000E941D0D8091F70180930C010C940A1526 +:101610008091F501813221F58091E800877F8093E8 +:10162000E8000E941D0D8091F801809370010895DB +:101630008091F501813AA1F48091E800877F809341 +:10164000E8008091E80080FFFCCF809170018093DA +:10165000F1008091E8008E778093E8000C941D0DD6 +:10166000089584B7877F84BF88E10FB6F89480938C +:101670006000109260000FBE80E8809361001092BD +:1016800061000E94C0100E946E0D0E94CB0D8091DF +:10169000E20084608093E20078940E9451100E94DE +:1016A000C21082E091E00E946C100E945021809153 +:1016B000F401853069F40E94DA1B8091F2018823DD +:1016C000B1F30E94041C882391F30E94C30BEFCF57 +:1016D0000E94C810ECCF292F332723303105C9F0E1 +:1016E00064F42130310581F02230310509F043C026 +:1016F0008DE690E02AE333E042C021323105F1F07B +:101700002232310541F137C082E190E027EA33E02F +:1017100036C099278130910541F08230910541F022 +:10172000892B49F5E6E3F3E005C0EEE1F3E002C002 +:10173000E6E0F3E0849190E09F0121C06430D8F4AA +:10174000E62FF0E0EE0FFF1FEE5DFE4F20813181AE +:1017500089E090E014C0643070F470E0FB01EE0F9B +:10176000FF1FE65EFE4F20813181FB01EA5EFE4FE6 +:10177000808190E004C080E090E020E030E0FA0159 +:1017800031832083089580E189BD82E189BD09B458 +:1017900000FEFDCF8091D8008F7D8093D80080918E +:1017A000E00082608093E0008091E00081FDFCCF4A +:1017B0000895CF92DF92EF92FF920F931F93CF93F2 +:1017C000DF93EC018B016A010E943C0D811133C053 +:1017D000C114D10439F0F60180819181081B190BE5 +:1017E000C80FD91FE12CF12C0115110519F18091B9 +:1017F000E80085FD16C08091E8008E778093E800B0 +:10180000C114D10449F0F60180819181E80EF91EDE +:10181000F182E08285E00FC00E943C0D882321F315 +:101820000AC089918093F10001501109FFEFEF1A6E +:10183000FF0ADACF80E0DF91CF911F910F91FF90E7 +:10184000EF90DF90CF9008952091FB013091FC0143 +:101850002617370748F06115710539F42091E80023 +:101860002E772093E80001C0B90140E061157105B1 +:10187000A9F12091F401222309F443C0253009F491 +:1018800042C02091E80023FD40C02091E80022FDE5 +:1018900032C02091E80020FFE9CF4091F300209171 +:1018A000F20030E0342BFC01CF016115710559F0D5 +:1018B0002830310540F481918093F1006150710925 +:1018C0002F5F3F4FF1CF41E02830310509F040E074 +:1018D0002091E8002E772093E800C8CF4111C9CFAE +:1018E0000AC08091F401882361F0853061F0809115 +:1018F000E80083FD0AC08091E80082FFF2CF80E01B +:10190000089582E0089583E0089581E0089520918C +:10191000FB013091FC012617370748F0611571056E +:1019200039F42091E8002E772093E80001C0B90136 +:10193000FC0120E06115710591F18091F40188238B +:1019400009F440C0853009F43FC08091E80083FD70 +:101950003DC08091E80082FD2FC08091E80080FFAB +:10196000E9CF2091F3008091F20090E0922B611575 +:10197000710559F08830910540F424912093F100CD +:101980003196615071090196F2CF21E0089709F074 +:1019900020E08091E8008E778093E800CBCF211182 +:1019A000CCCF0AC08091F401882361F0853061F0CA +:1019B0008091E80083FD0AC08091E80082FFF2CFA9 +:1019C00080E0089582E0089583E0089581E008951D +:1019D000982F973058F59093E900981739F0709147 +:1019E000EC002091ED005091F00003C0242F762FE1 +:1019F00050E021FF19C03091EB003E7F3093EB00A7 +:101A00003091ED003D7F3093ED003091EB0031607F +:101A10003093EB007093EC002093ED005093F000B6 +:101A20002091EE0027FF07C09F5FD3CF8F70809378 +:101A3000E90081E0089580E008958091F50187FF35 +:101A400011C08091E80082FD05C08091F4018111F0 +:101A5000F8CF11C08091E8008B770BC08091F40122 +:101A6000882349F08091E80080FFF8CF8091E8005A +:101A70008E778093E80008952091E4003091E5008E +:101A800095E64091EC00842F817040FF22C0809148 +:101A9000E80080FD1CC08091F401882391F085301E +:101AA00091F08091EB0085FD10C04091E4005091D1 +:101AB000E5004217530729F39A01915011F784E08A +:101AC000089582E0089583E0089581E0089580E01C +:101AD00008954091E80042FFDECF08950E94DC0D9A +:101AE0000E94E40DE0EEF0E0808181608083E8ED0B +:101AF000F0E080818F77808319BCA7EDB0E08C91F6 +:101B00008E7F8C9380818F7E80831092F301089565 +:101B10000F931F93CF93DF930E94DC0D0E94E40D7F +:101B2000C8EDD0E088818F7788838881806888833A +:101B300088818F7D888319BC1092F4011092F00186 +:101B40001092F2011092F10100EE10E0F801808194 +:101B50008B7F808388818160888342E060E080E0C1 +:101B60000E94E80CE1EEF0E080818E7F8083E2EE5F +:101B7000F0E0808181608083808188608083F801CB +:101B800080818E7F8083888180618883DF91CF917F +:101B90001F910F910895E8EDF0E080818F7E8083A2 +:101BA000E7EDF0E080818160808384E082BF81E0A6 +:101BB0008093F3010C94880DE8EDF0E080818E7F36 +:101BC00080831092E20008951092DA001092E100F2 +:101BD00008951F920F920FB60F9211242F933F93E7 +:101BE0004F935F936F937F938F939F93AF93BF9325 +:101BF000EF93FF938091E10082FF0BC08091E200A0 +:101C000082FF07C08091E1008B7F8093E1000E94FA +:101C100050108091DA0080FF1FC08091D80080FFB3 +:101C20001BC08091DA008E7F8093DA008091D9000A +:101C300080FF0DC080E189BD82E189BD09B400FE4D +:101C4000FDCF81E08093F4010E944F0A05C019BCCA +:101C50001092F4010E945D0A8091E10080FF19C09A +:101C60008091E20080FF15C08091E2008E7F80931A +:101C7000E2008091E20080618093E2008091D800D0 +:101C800080628093D80019BC85E08093F4010E94A3 +:101C9000610A8091E10084FF30C08091E20084FFFE +:101CA0002CC080E189BD82E189BD09B400FEFDCF71 +:101CB0008091D8008F7D8093D8008091E1008F7E45 +:101CC0008093E1008091E2008F7E8093E20080911A +:101CD000E20081608093E2008091F001882311F09E +:101CE00084E007C08091E30087FD02C081E001C06D +:101CF00083E08093F4010E94630A8091E10083FFF6 +:101D000029C08091E20083FF25C08091E100877F98 +:101D10008093E10082E08093F4011092F0018091C1 +:101D2000E1008E7F8093E1008091E2008E7F8093BE +:101D3000E2008091E20080618093E20042E060E096 +:101D400080E00E94E80C8091F00088608093F000B1 +:101D50000E94600AFF91EF91BF91AF919F918F9187 +:101D60007F916F915F914F913F912F910F900FBE97 +:101D70000F901F9018951F920F920FB60F9211247B +:101D80002F933F934F935F936F937F938F939F9383 +:101D9000AF93BF93CF93DF93EF93FF93C091E9008D +:101DA000CF708091EC00D82FD17080FDD0E81092D8 +:101DB000E9008091F000877F8093F00078940E9482 +:101DC000FF0E1092E9008091F00088608093F0008F +:101DD000CD2BCF70C093E900FF91EF91DF91CF91B0 +:101DE000BF91AF919F918F917F916F915F914F9133 +:101DF0003F912F910F900FBE0F901F9018951F933A +:101E0000CF93DF93CDB7DEB7AA970FB6F894DEBFB6 +:101E10000FBECDBFE5EFF1E088E08E0F9091F100AD +:101E200091938E13FBCF0E947F0A8091E80083FF7D +:101E30001FC18091F5019091F601492F50E04A3081 +:101E4000510508F015C1FA01EA5AFF4F0C94EA2235 +:101E5000803881F0823809F00BC18091F9018F70D0 +:101E60008093E9008091EB0085FB882780F9109230 +:101E7000E90006C08091F1019091F2019111826018 +:101E80009091E800977F9093E8008093F100109282 +:101E9000F100C8C0282F2D7F09F0EAC0882319F06F +:101EA000823061F0E5C08091F701813009F0E0C037 +:101EB000933009F080E08093F2012BC08091F7010C +:101EC000811127C08091F9018F7009F4D1C08093EE +:101ED000E9002091EB0020FF1CC0933021F4809199 +:101EE000EB00806214C09091EB0090619093EB0046 +:101EF00021E030E0A90102C0440F551F8A95E2F7A6 +:101F00004093EA001092EA008091EB008860809391 +:101F1000EB001092E9008091E800877F86C0811174 +:101F2000A7C01091F7011F778091E3008078812B83 +:101F30008093E3008091E800877F8093E8000E940F +:101F40001D0D8091E80080FFFCCF8091E300806848 +:101F50008093E300111102C082E001C083E080930E +:101F6000F40186C08058823008F082C08091F70169 +:101F70009091F8018C3D53E0950779F583E08A83D1 +:101F80008AE289834FB7F894DE01139620E03EE0A1 +:101F900051E2E32FF0E050935700E49120FF03C09B +:101FA000E295EF703F5FEF708E2F90E0EA3010F017 +:101FB000C79601C0C0968D939D932F5F243149F73A +:101FC0004FBF8091E800877F8093E8006AE270E06D +:101FD000CE0101960E94240C14C0AE014F5F5F4FEA +:101FE0006091F9010E946B0BBC01009709F440C09D +:101FF0009091E800977F9093E80089819A810E94F0 +:10200000870C8091E8008B778093E80031C080389E +:1020100079F58091E800877F8093E8008091F00156 +:102020008093F1008091E8008E778093E8000E9411 +:102030001D0D1EC081111CC09091F7019230C0F49B +:102040008091E800877F8093E8009093F0010E94E0 +:102050001D0D8091F001811106C08091E30087FD84 +:1020600002C081E001C084E08093F4010E946B0A09 +:102070008091E80083FF0AC08091E800877F809309 +:10208000E8008091EB0080628093EB00AA960FB687 +:10209000F894DEBF0FBECDBFDF91CF911F910895A1 +:1020A0000895CF938091F4018823A1F0C091E900B5 +:1020B000CF709091EC00892F817090FD80E8C82B43 +:1020C0001092E9008091E80083FD0E94FF0ECF701E +:1020D000C093E900CF9108959093760180937501A4 +:1020E0000895E0917501F0917601309721F001900B +:1020F000F081E02D099480E00895E0917501F09160 +:102100007601309721F00280F381E02D0994089543 +:10211000E0917501F0917601309721F00480F5810E +:10212000E02D099408952091730130917401821774 +:10213000930771F09093740180937301E09175019E +:10214000F0917601309721F00680F781E02D099417 +:10215000089520917101309172018217930771F0F7 +:102160009093720180937101E0917501F091760175 +:10217000309721F00084F185E02D099408950895A9 +:102180000C94BF100E94181C0E943B030C949E1CD0 +:102190009F92AF92BF92CF92DF92EF92FF920F93F6 +:1021A0001F93CF93DF9300D000D000D0CDB7DEB720 +:1021B0000E9462030DE010E0AA24A394B12C902E9B +:1021C000802F0E945004980128583E4F6901F90160 +:1021D000F080F826A1F40150110988F78FEF898368 +:1021E0008A831B820E94211C8160782F9D838C83AF +:1021F00049815A816B818D810E945F112FC090911E +:10220000DB0191FF04C08E830E9456048E8125E07D +:1022100030E0A501022E01C0440F0A94EAF7E42E33 +:102220004F21C1F029839A828E2191E009F490E038 +:102230009B830E94211C8160782F9D838C83498120 +:102240005A816B818D810E945F11F6018081E826A1 +:10225000E08204C021503109E0F6BDCF0E946C1E1F +:10226000109177010E9471101817B9F00E94711037 +:102270008093770126960FB6F894DEBF0FBECDBFD0 +:10228000DF91CF911F910F91FF90EF90DF90CF9052 +:10229000BF90AF909F900C946E0926960FB6F8945D +:1022A000DEBF0FBECDBFDF91CF911F910F91FF9089 +:1022B000EF90DF90CF90BF90AF909F900895CF9315 +:1022C000DF93CDB7DEB72B970FB6F894DEBF0FBE06 +:1022D000CDBF4F83588769877A878B87DE01119638 +:1022E00086E0FD0111928A95E9F785E0FE013796B7 +:1022F00001900D928A95E1F749815A816B817C8129 +:102300008D819E810E94A8172B960FB6F894DEBF90 +:102310000FBECDBFDF91CF910895CF93882309F4ED +:10232000C2C0C82F823859F40E94711081FDBBC011 +:1023300089E30E94821A0E944F1B89E30CC08338F4 +:1023400079F40E94711080FDAEC083E50E94821A6C +:102350000E944F1B83E50E94C41ACF910C944F1B1F +:10236000843859F40E94711082FD9DC087E40E9458 +:10237000821A0E944F1B87E4EECF8CEF8C0F813ABC +:1023800048F48C2F0E94B62081118DC08C2F0E94A2 +:10239000821AE3CF80E28C0F883048F4C77081E066 +:1023A00001C0880FCA95EAF70E94081BD6CF8BE5BB +:1023B0008C0F833078F4C53A29F0C63A31F083E8BF +:1023C00090E005C081E890E002C082E890E0CF9103 +:1023D0000C94931088E58C0F833108F064C0C83AE0 +:1023E00039F1C93A41F1CA3A49F1CB3A51F1CC3A03 +:1023F00059F1CD3A61F1C03B69F1CE3A71F1CF3A72 +:1024000079F1C13B81F1C23B89F1C33B91F1C43BFE +:1024100099F1C53BA1F1C63BA9F1C73BB1F1C83B5E +:10242000B9F1C93BC1F1CA3BC9F180E090E038C0C5 +:1024300082EE90E035C089EE90E032C08AEE90E006 +:102440002FC085EB90E02CC086EB90E029C087EB95 +:1024500090E026C08CEC90E023C08DEC90E020C092 +:1024600083E891E01DC08AE891E01AC082E991E01A +:1024700017C084E991E014C081E292E011C083E2C8 +:1024800092E00EC084E292E00BC085E292E008C0C8 +:1024900086E292E005C087E292E002C08AE292E022 +:1024A000CF910C94A910CF910895882309F44BC0C3 +:1024B000823859F40E94711081FF45C089E30E945F +:1024C000821A0E944F1B89E30CC0833871F40E946A +:1024D000711080FF38C083E50E94821A0E944F1B52 +:1024E00083E50E94C41A0C944F1B843859F40E944F +:1024F000711082FF28C087E40E94821A0E944F1B3D +:1025000087E4EFCF9CEF980F913A58F390E2980F41 +:10251000983050F4877091E001C0990F8A95EAF7DE +:10252000892F0E940E1BDFCF9BE5980F933020F47C +:1025300080E090E00C949310885A833120F480E07E +:1025400090E00C94A9100895882321F00E94081BA4 +:102550000C944F1B0895882321F00E940E1B0C94AD +:102560004F1B08957F928F929F92AF92BF92CF920E +:10257000DF92EF92FF920F931F93CF93DF931F92FF +:10258000CDB7DEB77C01C62E772EFC010581029502 +:102590000F70128111110E94251B0E947B1A882343 +:1025A00079F0112369F080E28C0D883048F082E0E8 +:1025B0000E94641A0E947B1A91E0D82ED92601C08D +:1025C000D12CE72DE295EF70F0E0E05AFF4F0C942C +:1025D000EA22872D807F072D0F70882311F0029546 +:1025E000007F112389F0002309F490C180E28C0D53 +:1025F000883020F4802F0E94081B03C0802F0E9487 +:10260000181B0E944F1B82C18C2D0E945512002363 +:1026100009F495C180E28C0D883020F4802F0E944F +:102620000E1B03C0802F0E941E1B0E944F1B87C1E0 +:10263000972D907F872D8F70903211F08295807F3B +:10264000CC2021F0F1E0CF16B1F01EC0112349F0EB +:10265000002309F414C1013009F011C10E94381B94 +:102660006EC1002319F0013009F469C189830E9409 +:102670003B1B89810AC1112321F0023008F05FC1A0 +:10268000FEC001115CC101C1112321F0002309F436 +:10269000F6C03CC1002309F4F8C03EC1872D8695E1 +:1026A0008695837090E0009719F0019761F047C11B +:1026B000112321F08C2D972D937002C080E090E0C3 +:1026C0000E9493103CC1112321F08C2D972D937003 +:1026D00002C080E090E00E94A91031C18C2D11232E +:1026E00019F00E94741D02C00E94DC1D0E94611E30 +:1026F00026C1872D837009F052C0111120C18C2D85 +:10270000829586958770880F880F9C2D9F70892EE3 +:10271000912CA12CB12C082E04C0880C991CAA1C49 +:10272000BB1C0A94D2F7C4FE14C00FE010E020E0F6 +:1027300030E0B901A80104C0440F551F661F771F80 +:102740008A95D2F7CB01BA016095709580959095E6 +:1027500003C060E070E0CB01272D269526952370FD +:1027600030E02230310569F02330310589F06829E5 +:1027700079298A299B292130310571F00E94F018AE +:10278000DEC0682979298A299B290E940C19D7C0A3 +:102790000E94F018C501B4010E94D418D0C01123C2 +:1027A00019F0872D817001C08695882309F4C7C070 +:1027B0008C2D829586958770880F880F9C2D9F7031 +:1027C000892E912CA12CB12C082E04C0880C991CA8 +:1027D000AA1CBB1C0A94D2F7C4FE14C00FE010E080 +:1027E00020E030E0B901A80104C0440F551F661F66 +:1027F000771F8A95D2F7CB01BA01609570958095C5 +:10280000909503C060E070E0CB01272D26952695BA +:102810002370422F50E04230510569F0433051059A +:1028200089F0682979298A299B294130510571F05D +:102830000E94CA1984C0682979298A299B290E9483 +:10284000E6197DC00E94CA19C501B4010E94AE19E3 +:1028500076C08C2D90E0FC01E05EF109E531F105D8 +:1028600008F050C0E059FF4F0C94EA220C2D0F7075 +:10287000872D8F71112331F00E944719802F0E94FC +:10288000A4125DC00E946819802F0E94AB1257C02D +:10289000112339F0011153C0872D8F710E948D19BA +:1028A0004EC0023008F04BC0F7CF112339F0872D0E +:1028B0008F710E94471943C01123C9F3872D8F716F +:1028C0000E9468193CC0112329F0872D8F710E9446 +:1028D000321935C00E94281932C0112351F0172D2A +:1028E0001F71812F0E94471963E0812F0E945B1A9C +:1028F00026C081E00E94641A023008F182E00E9442 +:10290000641A1DC0112331F0002389F28C2D0E941E +:102910008D1115C0002391F28C2D0E9455120FC00D +:10292000472D4F706C2DC7010E942C050E944C183A +:1029300006C0472D4F706C2DC7010E94DD08DD20B9 +:10294000F9F00E94571A80FD1BC0F70112820E9405 +:10295000511A0E944719C7010E94CF140E94511AB0 +:102960000F90DF91CF911F910F91FF90EF90DF902B +:10297000CF90BF90AF909F908F907F900C946819EC +:102980000F90DF91CF911F910F91FF90EF90DF900B +:10299000CF90BF90AF909F908F907F9008950F93AE +:1029A0001F93CF93DF93EC01888199812B813C8128 +:1029B000232BB9F09F3F11F48F3F99F0CE010E9475 +:1029C0006E05882371F0688179818A810E944D1A91 +:1029D0008C010E94021A0E94C918B801CE010E94FF +:1029E000B212DF91CF911F910F9108950E94251B84 +:1029F0000E94351B0E94FA1A0E944F1B0E94121F50 +:102A00000E94611E80E090E00E94931080E090E0C0 +:102A10000C94A9100E94151B0C94F6140E94421AE3 +:102A2000292F22952F7030E02C3031054CF42A30BC +:102A300031056CF42250310922303105A8F407C069 +:102A40002C30310569F02F30310551F00DC0803F39 +:102A500069F018F4803E40F409C0843F29F406C0B0 +:102A600093FB882780F9089580E0089581E0089518 +:102A7000CF93DF9300D000D01F92CDB7DEB70F9079 +:102A80000F900F900F900F90DF91CF910895CF93FB +:102A9000DF9300D000D000D0CDB7DEB726960FB6BA +:102AA000F894DEBF0FBECDBFDF91CF9108951F9385 +:102AB000CF93DF93C091860116E080918701C817FC +:102AC00099F0D0E01C9FF0011D9FF00D1124E857F4 +:102AD000FE4F4081518162817381848195810E9482 +:102AE00047152196C770E9CFDF91CF911F910895C7 +:102AF0004091B8015091B9016091BA017091BB0148 +:102B00008091BC019091BD010C9447158091BD014D +:102B100082958F7009F054C08091BA01882309F41E +:102B20004FC080918601A09187016091B80170919A +:102B3000B9014091BB015091BC01B6E08A1709F47C +:102B40003FC090E041155105C1F17F3F11F46F3F47 +:102B5000A1F1B89FF001B99FF00D1124E857FE4F85 +:102B6000218172132AC02081621327C02281211182 +:102B700024C0238134812417350710F421503109F2 +:102B8000241B350B283C3105C0F42091BD012F706A +:102B900020612093BD0126E0289FF001299FF00DC0 +:102BA0001124E357FE4F80818F708061808388EB12 +:102BB00091E00E94CF140C94571501968770BECFF8 +:102BC0000895CF92DF92EF92FF920F931F93CF93CE +:102BD000DF93CDB7DEB762970FB6F894DEBF0FBEB6 +:102BE000CDBF8C0185E0F801DE011D9601900D92AC +:102BF0008A95E1F7D8014C9111965C911197129644 +:102C00006C9112971396CD90DC9014973091B80187 +:102C10007091B9018091BB019091BC01009709F4BA +:102C20006BC17F3F19F43F3F09F466C1E090BA01E0 +:102C3000EE2009F4C0C02091BD01C816D90628F0C5 +:102C4000F601E81BF90BCF0104C0809590958C0D1F +:102C50009D1DFF24F394883C910578F0F12C207F92 +:102C600009F0C6C07C2DD98AC88A89890E94381586 +:102C700088EB91E00E94CF14B1C0822F807F09F0D1 +:102C800046C0751314C0341312C0611110C02F70E8 +:102C900020612093BD010E94781588EB91E00E948D +:102CA000CF148091BD01D80115968C932EC0CD28EC +:102CB00019F15F3F11F44F3FF9F0F62E61111CC07E +:102CC000809186012091870136E0821709F45AC06D +:102CD00090E0389FF001399FF00D1124E857FE4F26 +:102CE0007181571306C07081471303C0728171113F +:102CF00003C001968770E9CFF62E662309F418C148 +:102D00008091BD0181608093BD01F12C11C17513CB +:102D100008C0341306C0611104C08091BD01D80100 +:102D2000C3C04D875E878D859E856A8B0E940E1578 +:102D30006A898823E1F16623D1F12091BD01822FB8 +:102D400082958F7090E0029774F08091B801909115 +:102D5000B90198878F831986DB86CA862C87CE01B6 +:102D600007960E94CF1486E0F801A8EBB1E001902D +:102D70000D928A95E1F70E9486150E947815FF242E +:102D8000F394D6C04D875E878D859E850E94421A3A +:102D9000292F22952F7030E0223031050CF0BCC075 +:102DA0009F7009F0B6C0805E883008F4C1C0C801C9 +:102DB0000E94CF14E4CFC816D90608F453C0F60118 +:102DC000E81BF90BCF01883C910508F450C0F12CA9 +:102DD0007C2DD98AC88A89890E943815E8EBF1E0F0 +:102DE00086E0DF011D928A95E9F70E947815A0C060 +:102DF000751314C0341312C0611110C08091BD014D +:102E0000F8018583C8010E94CF1486E0E8EBF1E069 +:102E1000DF011D928A95E9F7FE2C8AC04D875E87F7 +:102E20008D859E856A8B0E940E156A89882309F418 +:102E3000BECF662309F4BBCF2091BD01822F8295BE +:102E40008F7090E002970CF48ECF8091B801909132 +:102E5000B9019A8389831B82DD82CC822E83CE01C5 +:102E600001967FCF809590958C0D9D1DACCFF62E51 +:102E7000662309F49CCF75132EC034132CC0209107 +:102E8000BD0120FD1FC0822F82958F70D9F0D8011F +:102E900015962C9315978F3049F08F5F982F929548 +:102EA000907F822F8F70892B15968C93C8010E947A +:102EB000CF1486E0F801A8EBB1E001900D928A955D +:102EC000E1F793CF86E0F801A8EBB1E001900D9215 +:102ED0008A95E1F72DC04D875E878D859E850E947E +:102EE0000E15811140CF8091BD0181608093BD019D +:102EF000C8010E94CF141CC0662309F458CF4D8727 +:102F00005E878D859E850E940E15882309F44FCF1C +:102F10002ACF811148CF0CC0243031050CF047CFA7 +:102F20009F7009F440CFF8019581907F09F03BCF65 +:102F30008F2D62960FB6F894DEBF0FBECDBFDF9126 +:102F4000CF911F910F91FF90EF90DF90CF90089558 +:102F50001F93CF93DF93CDB7DEB72C970FB6F894BE +:102F6000DEBF0FBECDBF4F83588769877A878B87B7 +:102F70009C87CE0107960E94E115882369F08F8116 +:102F800098852A853B85232BF1F19F3F09F063C08B +:102F90008F3F09F060C037C086E0FE013796DE0142 +:102FA000119601900D928A95E1F76F817885EA85F7 +:102FB000FB85309741F17F3F11F46F3F21F1209164 +:102FC000870130E0C90101968770992740918601F9 +:102FD00050E08417950709F447C069837A83FD831D +:102FE000EC8396E0929FD001939FB00D1124A857D7 +:102FF000BE4FFE01319601900D929A95E1F78093B4 +:1030000087010E94571516E08091860190918701F3 +:103010008917C1F1189FC001112488579E4F0E9443 +:10302000E115882379F1E09186011E9FF0011124BA +:10303000E857FE4F4081518162817381848195817F +:103040000E9447158091860190E00196877099272C +:1030500080938601D9CF4F81588569857A858B8584 +:103060009C850E944715CFCF0E940A1510928701B8 +:1030700010928601E8EBF1E086E0DF011D928A956F +:10308000E9F7C1CF2C960FB6F894DEBF0FBECDBFC7 +:10309000DF91CF911F910895EF92FF920F931F93AD +:1030A000CF93DF938C01009709F46CC0F12CEE24D0 +:1030B000E394E8012196F8018491843740F4843048 +:1030C00008F051C0813081F0823019F15BC0853742 +:1030D00009F444C0A8F19CE7980F903708F052C05B +:1030E0008F770E94551241C00E5F1F4FFE01C491A1 +:1030F00080E28C0F883048F4C7708E2D01C0880F95 +:10310000CA95EAF70E94281B14C08C2F0E948D11CB +:103110002DC00E5F1F4FFE01C49180E28C0F8830DE +:1031200058F4C7708E2D01C0880FCA95EAF70E9427 +:103130002E1B0E944F1B1AC08C2F0E94551216C0C6 +:103140000E5F1F4FFE01C491CC2381F08FE99FE0F9 +:103150000197F1F700C00000C150F6CF0E5F1F4F7E +:10316000FE01F49003C00E948D118E018F2D8823E3 +:1031700009F49FCFEFE9FFE03197F1F700C00000BD +:103180008150F5CFDF91CF911F910F91FF90EF907C +:10319000089508956093C2017093C3018093C401A0 +:1031A0009093C5010C94F6140F931F930091C201E4 +:1031B0001091C3012091C4013091C501DC01CB0104 +:1031C000802B912BA22BB32B8093C2019093C30130 +:1031D000A093C401B093C5011F910F910C94F614F4 +:1031E0000F931F930091C2011091C3012091C4015C +:1031F0003091C501DC01CB0180239123A223B323AD +:103200008093C2019093C301A093C401B093C50100 +:103210001F910F910C94F6140F931F930091C2010C +:103220001091C3012091C4013091C501DC01CB0193 +:1032300080279127A227B3278093C2019093C301CF +:10324000A093C401B093C5011F910F910C94F61483 +:103250001092BE011092BF011092C0011092C101E4 +:103260000C94F61441E050E060E070E004C0440FBC +:10327000551F661F771F8A95D2F74093BE01509362 +:10328000BF016093C0017093C1010C94F61441E03A +:1032900050E060E070E004C0440F551F661F771FC8 +:1032A0008A95D2F78091BE019091BF01A091C00193 +:1032B000B091C101482B592B6A2B7B2B4093BE0147 +:1032C0005093BF016093C0017093C1010C94F61438 +:1032D00041E050E060E070E004C0440F551F661FFD +:1032E000771F8A95D2F7409550956095709580919B +:1032F000BE019091BF01A091C001B091C1014823CE +:1033000059236A237B234093BE015093BF016093EE +:10331000C0017093C1010C94F61441E050E060E0EC +:1033200070E004C0440F551F661F771F8A95D2F7BF +:103330008091BE019091BF01A091C001B091C101E7 +:10334000482759276A277B274093BE015093BF0126 +:103350006093C0017093C1010C94F6140F931F93F6 +:103360000091BE011091BF012091C0013091C101B7 +:10337000DC01CB01802B912BA22BB32B8093BE01C0 +:103380009093BF01A093C001B093C1011F910F9111 +:103390000C94F6140F931F930091BE011091BF017E +:1033A0002091C0013091C101DC01CB018023912328 +:1033B000A223B3238093BE019093BF01A093C001C9 +:1033C000B093C1011F910F910C94F6140F931F93AA +:1033D0000091BE011091BF012091C0013091C10147 +:1033E000DC01CB0180279127A227B3278093BE0160 +:1033F0009093BF01A093C001B093C1011F910F91A1 +:103400000C94F6140895CF92DF92EF92FF920F93EF +:103410001F93CF93DF938C01C090C201D090C30162 +:10342000E090C401F090C5018091BE019091BF0170 +:10343000A091C001B091C101C82AD92AEA2AFB2A69 +:10344000CFE1D0E0D701C6010C2E04C0B695A795F8 +:10345000979587950A94D2F780FF06C0B8018C2F04 +:103460000E945C07019721F4219760F780E001C07A +:103470008C2FDF91CF911F910F91FF90EF90DF90F4 +:10348000CF900895CF93DF93EC010E94031ABE0101 +:103490000E945C07DF91CF910895CB010E94421AF0 +:1034A00008958091C60185958595859508958091AB +:1034B000C6018770089598E0899F90011124262BFA +:1034C0002093C6010C9447192091C6018095822350 +:1034D0008093C601982F977069F430E0482F5527E4 +:1034E00047FD50952417350729F0859585958595D5 +:1034F0000C94681908959091C601977081E009F4C1 +:1035000080E0089590910C01992321F090910D0194 +:10351000911109C020910E0130910F01F9013296ED +:103520009FEF40E01FC0982F9695969596959F30F7 +:1035300050F5E0910E01F0910F01E90FF11D877038 +:1035400021E030E0A90102C0440F551F8A95E2F73F +:10355000CA019181892B818308959F3F39F04F5F84 +:103560004E3041F051915813F8CF0DC05111F7CFA3 +:10357000942FF5CF9F3F39F0F901E90FF11D97FD29 +:10358000FA9582830895089590910C01992321F072 +:1035900090910D01911109C020910E0130910F0100 +:1035A000F9013296205F3F4F1FC0982F9695969550 +:1035B00096959F30F0F4E0910E01F0910F01E90F24 +:1035C000F11D877021E030E0A90102C0440F551FB2 +:1035D0008A95E2F7CA0180959181892381830895B4 +:1035E0003196E217F30729F090819813F9CF1082F2 +:1035F000F7CF089581E090E0E0910E01F0910F0186 +:10360000E80FF91F1082019680319105A9F70895FE +:103610009091DA01892B8093DA0108958095909139 +:10362000DA0189238093DA0108951092DA0108956E +:103630009091D901892B8093D9010895809590911B +:10364000D90189238093D90108951092D901089551 +:103650009091D801892B8093D801089580959091FD +:10366000D80189238093D80108951092D801089534 +:103670008093C70108951092C701089580910E01AB +:1036800090910F01FC0131969C01205F3F4F80E03B +:10369000919191118F5FE217F307D1F70895E091AF +:1036A0000E01F0910F018091DA018083E0910E010B +:1036B000F0910F0190818091D901892B8083E09155 +:1036C0000E01F0910F0190818091D801892B8083A8 +:1036D0008091C701882361F0E0910E01F0910F0104 +:1036E0009081892B80830E943E1B81111092C7011B +:1036F00080910E0190910F010C947D1020E00097B5 +:1037000039F0AC0141505109842395232F5FF7CF45 +:10371000822F0895CF92DF92EF92FF926C01EE24F8 +:10372000FF24C114D104E104F10421F0C701B60162 +:1037300020E101C020E0C72ED82EE92EFF24C114BD +:10374000D104E104F10419F0285FC701B6016B014F +:103750007C0154E0F694E794D794C7945A95D1F736 +:10376000C114D104E104F10419F02C5FC701B601C2 +:103770006B017C0142E0F694E794D794C7944A9594 +:10378000D1F7C114D104E104F10419F02E5FC7018F +:10379000B601DC01CB01B695A79597958795892B46 +:1037A0008A2B8B2B09F02F5F822FFF90EF90DF90F9 +:1037B000CF9008958091F401843021F11092DC01C2 +:1037C00020E488E190E00FB6F894A895809360001B +:1037D0000FBE2093600080E00E946E0983B7817F56 +:1037E000846083BF83B7816083BF7894889583B7F3 +:1037F0008E7F83BF88E10FB6F894809360001092AB +:1038000060000FBE089508950E944F030E94620356 +:103810000E94031C0E94570491E0811101C090E0B6 +:10382000892F08950E940A150E9471100C946E0948 +:1038300082E084BD93E095BD9AEF97BD80936E00C2 +:1038400008952FB7F8948091DD019091DE01A09149 +:10385000DF01B091E0012FBF0895CF92DF92EF9288 +:10386000FF920F931F932FB7F8944091DD01509171 +:10387000DE016091DF017091E0012FBF6A017B01E1 +:10388000EE24FF248C0120E030E0C016D106E206D1 +:10389000F30610F4415051099A01281B390BC90154 +:1038A0001F910F91FF90EF90DF90CF9008951F929E +:1038B0000F920FB60F9211248F939F93AF93BF93E4 +:1038C0008091DD019091DE01A091DF01B091E001D6 +:1038D0000196A11DB11D8093DD019093DE01A0939F +:1038E000DF01B093E001BF91AF919F918F910F9055 +:1038F0000FBE0F901F9018950E946E0DF8942FEF39 +:1039000087EA91E6215080409040E1F700C0000036 +:1039100087E090EBDC018093FD019093FE01A09382 +:10392000FF01B09300029CE088E10FB6F894A895DF +:10393000809360000FBE90936000FFCF0E94D61C62 +:10394000811102C00E94BC1C0E94E11C8093DB011B +:103950000E94E91C90E09093EF018093EE0187FBB9 +:10396000882780F980930D010E94E51C682F70E084 +:1039700080E090E00C94CA186DEE7EEF80E090E05D +:103980000E94242360E082E090E00E94122360E025 +:1039900083E090E00E94122360E084E090E00E94C7 +:1039A000122360E085E090E00C94122380E090E028 +:1039B0000E940C2321E08D3E9E4F09F020E0822FD3 +:1039C000089582E090E00C94042383E090E00C944E +:1039D000042384E090E00C940423682F84E090E0BA +:1039E0000C9412238091E30180FF0BC060911301BE +:1039F00085E0689FB0011124759567957595679569 +:103A00002BC081FF09C06091130185E0689FB00160 +:103A100011247595679520C082FF07C0609113013E +:103A200085E0689FB001112417C09091E4019923AB +:103A3000D1F060911201961788F72091130185E06B +:103A4000289F90011124929FA001939F500D112453 +:103A500070E0CA010E94D6226038710540F46115F9 +:103A6000710539F002C065E070E0862F08958FE798 +:103A7000089581E008958091E30180FF08C060917E +:103A8000110170E0759567957595679521C081FF67 +:103A900006C06091110170E07595679519C082FFAD +:103AA00004C06091110170E010C09091E40199236D +:103AB000C1F0609110019617A0F780911101899FC4 +:103AC000C001112470E00E94D6226038710528F4EC +:103AD0006115710521F0862F08958FE7089581E023 +:103AE000089561E070E0F4CF803F21F40E94F21C61 +:103AF000819504C0813F29F40E94F21C8093E70164 +:103B00000895823F21F40E94F21C819504C0833FF6 +:103B100029F40E94F21C8093E6010895893F19F46C +:103B20000E943B1D05C08A3F31F40E943B1D8195D8 +:103B30008093E80108958B3F21F40E943B1D8195FD +:103B400004C08C3F29F40E943B1D8093E901089535 +:103B5000843F21F48091E501816017C0853F21F405 +:103B60008091E501826011C0863F21F48091E501DA +:103B700084600BC0873F21F48091E501886005C017 +:103B8000883F31F48091E50180618093E5010895DB +:103B90008D3F21F48091E30181600BC08E3F21F4C1 +:103BA0008091E301826005C08F3F29F48091E30199 +:103BB00084608093E3010895803F39F48091E701A8 +:103BC00087FF6CC01092E70169C0813F29F48091A2 +:103BD000E7011816BCF362C09091E601823F29F418 +:103BE00097FF5CC01092E60159C0833F19F4191683 +:103BF000CCF354C0893F41F48091E80118160CF0D1 +:103C00004DC01092E8014AC08A3F29F48091E80132 +:103C100087FF44C0F6CF8B3F39F48091E90187FFDD +:103C20003DC01092E9013AC08C3F29F48091E9012E +:103C30001816BCF333C0843F21F48091E5018E7FD8 +:103C400017C0853F21F48091E5018D7F11C0863F2B +:103C500021F48091E5018B7F0BC0873F21F4809197 +:103C6000E501877F05C0883F31F48091E5018F7EB3 +:103C70008093E50113C08D3F21F48091E3018E7F95 +:103C80000BC08E3F21F48091E3018D7F05C08F3FF3 +:103C900029F48091E3018B7F8093E3018091E60119 +:103CA00081110EC08091E70181110AC08091E80165 +:103CB000811106C08091E901811102C01092E401D6 +:103CC000089585EE91E00E9488100E94211C909337 +:103CD000E2018093E10108951F93CF93DF938091D8 +:103CE000E1019091E2010E942D1CAC019091E40150 +:103CF000992321F02091140130E006C02091150194 +:103D00008AE0289F900111244217530708F486C0C7 +:103D10008091E601C091E701D091E8011091E9019D +:103D2000811107C0C11176C0D11174C0111172C0C8 +:103D300075C09F3F19F09F5F9093E401181624F41B +:103D40000E94F21C8093E6018091E60187FF05C086 +:103D50000E94F21C81958093E6011C1624F40E94B7 +:103D6000F21C8093E7018091E70187FF05C00E9464 +:103D7000F21C81958093E7016091E601662339F199 +:103D8000C091E701CC2319F1772767FD7095872F44 +:103D9000972F0E94E72123E333E343E35FE30E948D +:103DA0004B220E94B4216093E6016C2F772767FDB8 +:103DB0007095872F972F0E94E72123E333E343E396 +:103DC0005FE30E944B220E94B4216093E7011D161D +:103DD00024F40E943B1D8093E8018091E80187FF55 +:103DE00005C00E943B1D81958093E801111624F4C3 +:103DF0000E943B1D8093E9018091E90187FF05C086 +:103E00000E943B1D81958093E901DF91CF911F9125 +:103E10000C94611E9F3F09F08ECF96CFDF91CF911A +:103E20001F910895E5EEF1E085E0DF011D928A958E +:103E3000E9F71092E4011092E3010895833081F1D3 +:103E400028F4813059F08230D1F00895853009F49A +:103E500049C0B8F1863009F456C008958091150123 +:103E6000262F30E0280F311D2F3F310524F4680F35 +:103E70006093150108958FEF809315010895809147 +:103E80001401262F30E0280F311D2F3F310524F477 +:103E9000680F6093140108958FEF809314010895C3 +:103EA00080911301262F30E0280F311D2F3F31055F +:103EB00024F4680F6093130108958FEF809313012A +:103EC000089580911201262F30E0280F311D2F3FD9 +:103ED000310524F4680F6093120108958FEF8093E9 +:103EE0001201089580911101262F30E0280F311D15 +:103EF0002F3F310524F4680F6093110108958FEF6F +:103F000080931101089580911001262F30E0280F31 +:103F1000311D2F3F310524F4680F6093100108957F +:103F20008FEF809310010895833011F128F48130D0 +:103F300049F0823091F00895853081F120F186308A +:103F4000C1F1089580911501681720F4861B8093B4 +:103F500015010895109215010895809114016817B4 +:103F600020F4861B80931401089510921401089583 +:103F700080911301681720F4861B80931301089524 +:103F800010921301089580911201681720F4861B86 +:103F900080931201089510921201089580911101E9 +:103FA000681720F4861B8093110108951092110167 +:103FB000089580911001681720F4861B80931001EA +:103FC00008951092100108950F931F938D3109F4F5 +:103FD00071C008F045C0803109F485C008F587300C +:103FE00009F46FC068F4863009F0ADC08091DB0140 +:103FF000817F8E7F8093DB0181E08093EB01A4C001 +:104000008B3009F49EC08E3009F09DC08091DB0199 +:1040100082FB222720F991E0922790FB82F96CC065 +:10402000863109F48EC060F4813109F08CC00E94A1 +:104030000A1590910D0181E0892780930D0181C0BF +:10404000893109F47EC08B3109F07DC08091DB019C +:1040500081FB222720F991E0922790FB81F94CC047 +:10406000853309F466C048F4873209F462C008F465 +:104070004FC0893209F45DC066C0833438F48A3396 +:1040800008F044C0883309F45CC05DC0833409F48F +:1040900050C0883409F057C00E940A150FEF13ED85 +:1040A00020E3015010402040E1F700C000000E94D2 +:1040B0007C1C47C00E946E210E9471100E946E09F4 +:1040C00040C09091DB01892F8095817080FB90F931 +:1040D00029F0966098609093DB0136C0997F977FB6 +:1040E0009093DB012EC08091DB0183FB222720F916 +:1040F00091E0922790FB83F98093DB01992309F1EA +:104100008091DB0181608093DB011BC0895301C07A +:104110008D5141E050E060E070E08A019B0104C0F5 +:10412000000F111F221F331F8A95D2F7C901B80152 +:1041300004C061E070E080E090E00E94CA180E9434 +:104140000A1581E001C080E01F910F91089580E081 +:10415000089580E008958E518A3030F4E82FF0E021 +:10416000E65DFE4F8081089580E00895CF93C82FCB +:104170008091EB01813079F018F08230E9F186C04E +:10418000E0910E01F0910F018081813169F082325E +:1041900009F07EC009C0E0910E01F0910F0180810D +:1041A000813111F0823261F48C2F0E94A72081119D +:1041B00004C08C2F0E94E41F1DC081E090E01AC053 +:1041C0008C2F0E94A920811114C0C43179F048F4C9 +:1041D000CB3079F0C03109F05FC082E08093EB0111 +:1041E00008C0C93219F0C83321F056C01092EB0153 +:1041F00053C081E0817052C0C93281F110F5C431E1 +:1042000069F1A8F4C73009F045C08AE08093150130 +:1042100094E19093140193E0909313018093120121 +:1042200088E08093110188E28093100133C082EE10 +:104230008C0F863078F58C2F0E94AB208093EA019A +:1042400029C0CE34E9F020F4CB3421F56AE013C064 +:10425000C13579F0C235F1F461E00DC08091EA0119 +:10426000882319F01092EA0115C081E08093EB01D8 +:1042700015C061E006C08091EA010E941E1F0AC0BD +:104280006AE08091EA010E94941F04C01092EB0141 +:1042900080E004C081E002C080E0ACCFCF910895FF +:1042A000E1E8F0E0808188608083808181608083A4 +:1042B0008FB7F89493E09093890090ED90938800E5 +:1042C0008FBF0895EFE6F0E08081826080830895DB +:1042D000EFE6F0E080818D7F80830895EFE6F0E0E7 +:1042E000908182E08927808308951F920F920FB6F4 +:1042F0000F9211242F933F934F935F936F937F936C +:104300008F939F93AF93BF93EF93FF938091EC01B3 +:104310009091ED0101969093ED018093EC01811154 +:1043200003C082E00E946E09E091ED01E695E695FA +:10433000F0E0EB54FB4FE4918091EC018E1303C04D +:1043400080E00E946E09FF91EF91BF91AF919F9124 +:104350008F917F916F915F914F913F912F910F902E +:104360000FBE0F901F90189504D06894B1118DC0A6 +:10437000089570D088F09F5790F0B92F9927B751C2 +:10438000A0F0D1F0660F771F881F991F1AF0BA9519 +:10439000C9F712C0B13081F077D0B1E0089574C090 +:1043A000672F782F8827B85F39F0B93FCCF386950F +:1043B00077956795B395D9F73EF49095809570956C +:1043C00061957F4F8F4F9F4F0895E89409C097FBE9 +:1043D0003EF490958095709561957F4F8F4F9F4FDC +:1043E0009923A9F0F92F96E9BB279395F695879520 +:1043F00077956795B795F111F8CFFAF4BB0F11F4E3 +:1044000060FF1BC06F5F7F4F8F4F9F4F16C0882389 +:1044100011F096E911C0772321F09EE8872F762FBF +:1044200005C0662371F096E8862F70E060E02AF000 +:104430009A95660F771F881FDAF7880F96958795EC +:1044400097F9089557FD9058440F551F59F05F3F55 +:1044500071F04795880F97FB991F61F09F3F79F0A6 +:1044600087950895121613061406551FF2CF469528 +:10447000F1DF08C0161617061806991FF1CF8695AA +:104480007105610508940895E894BB27662777278E +:10449000CB0197F908950BD078C069D028F06ED081 +:1044A00018F0952309F05AC05FC01124EECFCADF7F +:1044B000A0F3959FD1F3950F50E0551F629FF00137 +:1044C000729FBB27F00DB11D639FAA27F00DB11D90 +:1044D000AA1F649F6627B00DA11D661F829F222719 +:1044E000B00DA11D621F739FB00DA11D621F839FA0 +:1044F000A00D611D221F749F3327A00D611D231F76 +:10450000849F600D211D822F762F6A2F11249F57C3 +:1045100050408AF0E1F088234AF0EE0FFF1FBB1FE6 +:10452000661F771F881F91505040A9F79E3F510585 +:1045300070F014C0AACF5F3FECF3983EDCF3869591 +:1045400077956795B795F795E7959F5FC1F7FE2B30 +:10455000880F911D9695879597F9089597F99F670C +:1045600080E870E060E008959FEF80EC08950024FB +:104570000A941616170618060906089500240A94C8 +:1045800012161306140605060895092E0394000C4E +:1045900011F4882352F0BB0F40F4BF2B11F460FFDD +:1045A00004C06F5F7F4F8F4F9F4F089597FB072E7B +:1045B00016F4009407D077FD09D00E94F02207FC82 +:1045C00005D03EF4909581959F4F08957095619523 +:1045D0007F4F0895EE0FFF1F0590F491E02D099491 +:1045E000AA1BBB1B51E107C0AA1FBB1FA617B70719 +:1045F00010F0A61BB70B881F991F5A95A9F7809535 +:104600009095BC01CD010895F999FECF92BD81BD71 +:10461000F89A992780B50895A8E1B0E042E050E00B +:104620000C942C23262FF999FECF92BD81BDF89AC8 +:10463000019700B4021639F01FBA20BD0FB6F894E6 +:10464000FA9AF99A0FBE08950196272F0E94132314 +:104650000C941223DC01CB01FC01F999FECF06C0BA +:10466000F2BDE1BDF89A319600B40D924150504030 +:08467000B8F70895F894FFCF9C +:1046780002207009FE09DB09A70973090101C801B5 +:1046880028080A03140A404D363975042804F20331 +:10469800B9034C0365037E0397030102030405066F +:0446A80007080900F6 +:00000001FF diff --git a/keyboards/ergodox_ez/keymaps/adnw_k_o_y/keymap.c b/keyboards/ergodox_ez/keymaps/adnw_k_o_y/keymap.c new file mode 100644 index 0000000000..052517d70e --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/adnw_k_o_y/keymap.c @@ -0,0 +1,185 @@ +#include "ergodox_ez.h" +#include "debug.h" +#include "action_layer.h" +#include "keymap_german.h" + +#define BASE 0 // default layer +#define SYMB 1 // symbols +#define MDIA 2 // media keys + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* Keymap 0: Basic layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | = | 1 | 2 | 3 | 4 | 5 | LEFT | | RIGHT| 6 | 7 | 8 | 9 | 0 | - | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Del | K | . | O | , | Y | L1 | | L1 | V | G | C | L | ß | Z | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | BkSp | H | A | E | I | U |------| |------| D | T | R | N | S | F | + * |--------+------+------+------+------+------| Hyper| | Meh |------+------+------+------+------+--------| + * | LShift |X/Ctrl| Q | Ä | Ü | Ö | | | | B | P | W | M | J | RShift | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * |Grv/L1| '" |AltShf| Left | Right| | Up | Down | [ | ] | ~L1 | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | App | LGui | | Alt |Ctrl/Esc| + * ,------|------|------| |------+--------+------. + * | | | Home | | PgUp | | | + * | Space|Enter |------| |------| Tab |RShift| + * | | | End | | PgDn | | | + * `--------------------' `----------------------' + */ +// If it accepts an argument (i.e, is a function), it doesn't need KC_. +// Otherwise, it needs KC_* +[BASE] = KEYMAP( // layer 0 : default + // left hand + KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, KC_LEFT, + KC_DELT, DE_K, DE_DOT, DE_O, DE_COMM,DE_Y, TG(SYMB), + KC_BSPC, DE_H, DE_A, DE_E, DE_I, DE_U, + KC_LSFT, CTL_T(DE_X), DE_Q, DE_AE, DE_UE, DE_OE, ALL_T(KC_NO), + LT(SYMB,KC_GRV),KC_QUOT, LALT(KC_LSFT), KC_LEFT,KC_RGHT, + ALT_T(KC_APP), KC_LGUI, + KC_HOME, + KC_SPC,KC_ENT ,KC_END, + // right hand + KC_RGHT, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, + TG(SYMB), DE_V, DE_G, DE_C, DE_L, DE_SS, DE_Z, + DE_D, DE_T, DE_R, DE_N, LT(MDIA, DE_S), GUI_T(KC_F), + MEH_T(KC_NO),KC_B, KC_P, KC_W, KC_M, CTL_T(KC_J), KC_RSFT, + KC_UP, KC_DOWN,KC_LBRC,KC_RBRC, KC_FN1, + KC_LALT, CTL_T(KC_ESC), + KC_PGUP, + KC_PGDN,KC_TAB, KC_RSFT + ), +/* Keymap 1: Symbol Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | ! | @ | { | } | | | | | | Up | 7 | 8 | 9 | * | F12 | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | # | $ | ( | ) | ` |------| |------| Down | 4 | 5 | 6 | + | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | % | ^ | [ | ] | ~ | | | | & | 1 | 2 | 3 | \ | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | . | 0 | = | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// SYMBOLS +[SYMB] = KEYMAP( + // left hand + KC_TRNS,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, + KC_TRNS,KC_EXLM,KC_AT, KC_LCBR,KC_RCBR,KC_PIPE,KC_TRNS, + KC_TRNS,KC_HASH,KC_DLR, KC_LPRN,KC_RPRN,KC_GRV, + KC_TRNS,KC_PERC,KC_CIRC,KC_LBRC,KC_RBRC,KC_TILD,KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS, + KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS, + // right hand + KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + KC_TRNS, KC_UP, KC_7, KC_8, KC_9, KC_ASTR, KC_F12, + KC_DOWN, KC_4, KC_5, KC_6, KC_PLUS, KC_TRNS, + KC_TRNS, KC_AMPR, KC_1, KC_2, KC_3, KC_BSLS, KC_TRNS, + KC_TRNS,KC_DOT, KC_0, KC_EQL, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), +/* Keymap 2: Media and mouse keys + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | MsUp | | | | | | | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | |MsLeft|MsDown|MsRght| |------| |------| | | | | | Play | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | | Prev | Next | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | Lclk | Rclk | |VolUp |VolDn | Mute | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | |Brwser| + * | | |------| |------| |Back | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// MEDIA AND MOUSE +[MDIA] = KEYMAP( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_BTN1, KC_BTN2, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + // right hand + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, + KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, + KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_WBAK +), +}; + +const uint16_t PROGMEM fn_actions[] = { + [1] = ACTION_LAYER_TAP_TOGGLE(SYMB) // FN1 - Momentary Layer 1 (Symbols) +}; + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + // MACRODOWN only works in this function + switch(id) { + case 0: + if (record->event.pressed) { + register_code(KC_RSFT); + } else { + unregister_code(KC_RSFT); + } + break; + } + return MACRO_NONE; +}; + +// Runs just one time when the keyboard initializes. +void matrix_init_user(void) { + +}; + +// Runs constantly in the background, in a loop. +void matrix_scan_user(void) { + + uint8_t layer = biton32(layer_state); + + ergodox_board_led_off(); + ergodox_right_led_1_off(); + ergodox_right_led_2_off(); + ergodox_right_led_3_off(); + switch (layer) { + // TODO: Make this relevant to the ErgoDox EZ. + case 1: + ergodox_right_led_1_on(); + break; + case 2: + ergodox_right_led_2_on(); + break; + default: + // none + break; + } + +}; diff --git a/keyboards/ergodox_ez/keymaps/adnw_k_o_y/readme.md b/keyboards/ergodox_ez/keymaps/adnw_k_o_y/readme.md new file mode 100644 index 0000000000..f0dd3815c1 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/adnw_k_o_y/readme.md @@ -0,0 +1,7 @@ +# Basic implementation for k.o,y variant of the adnw layout + +adnw is a layout optimised for usage with german and english language +k.o,y is a variant of this layout +http://www.adnw.de/index.php?n=Main.SeitlicheNachbaranschl%C3%A4ge + +The os must use the de_DE layout diff --git a/keyboards/ergodox_ez/keymaps/alexjj/compiled.hex b/keyboards/ergodox_ez/keymaps/alexjj/compiled.hex new file mode 100644 index 0000000000..58fecdd211 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/alexjj/compiled.hex @@ -0,0 +1,1172 @@ +:100000000C94DA020C941E030C941E030C941E0331 +:100010000C941E030C941E030C941E030C941E03DC +:100020000C941E030C941E030C94D30D0C94A50E7B +:100030000C941E030C941E030C941E030C941E03BC +:100040000C941E030C94AF220C941E030C941E03FC +:100050000C941E030C94421C0C941E030C941E035F +:100060000C941E030C941E030C941E030C941E038C +:100070000C941E030C941E030C941E030C941E037C +:100080000C941E030C941E030C941E030C941E036C +:100090000C941E030C941E030C941E030C941E035C +:1000A0000C941E030C941E030C941E03120F340FA9 +:1000B0002210340F2210790F9C0F2210F10F041020 +:1000C000D312D3120213021338135813891489144C +:1000D00063138914131413147A1489148914831460 +:1000E0002014201420142014201420142014201470 +:1000F0002014201420142014201420142014201460 +:1001000032143F1446144D14571475FF01E201597F +:100110000259015D025D015E025E02E2000000F034 +:10012000A1F0A2F0A329002B00E300E100E0000011 +:10013000001E00140004001D7406014E001F001A6A +:100140000016001B0019012A002000080007000605 +:10015000005000280021001500090019004F004B35 +:1001600000220017000A0005000000C30023002F32 +:100170000000004A0000003E002400300000004D56 +:100180000000003B0025001C000B0011000000C215 +:1001900000260018000D0010005100490027000C37 +:1001A000000E00360052002C002D0012000F003708 +:1001B00000007FC1002E0013003300380035004CD2 +:1001C000002A0031003400E500E4000000010001D5 +:1001D0000001000100010000003A001E022002227E +:1001E00002033001003B001F022102230201000133 +:1001F000003C002F0226022F00010001003D0030CC +:100200000227023000010001003E003102350035B6 +:1002100002000001003F0001000000010000000199 +:1002200000400001000000010000000100410052F8 +:100230000051002402000001004200240021001EA1 +:1002400000010001004300250022001F00370001CB +:10025000004400260023002000270001004500255F +:10026000022E0231002E004C054600010001000163 +:10027000003D0400000050010001000100010000E9 +:100280000001000100010001000100010001000166 +:1002900000F2000100010001000100F000F1000186 +:1002A00000F400010001000100F3000100F500016D +:1002B0000001000100010001000000010001000137 +:1002C0000000000100000001000100010000000129 +:1002D0000000000100010001000100010000000118 +:1002E000000100010001000100AA0001000100015D +:1002F000000100AC00A900B600010001000100AB44 +:1003000000A800010001000100010001000100013E +:100310000001000100AE00010001000000E200E267 +:1003200000E200E200E200000059000100040001C8 +:1003300000E20001005A00010001000100E200E2B9 +:10034000005B000800070006000100E2005C0001FD +:100350000009000100010001005D0001000100052D +:1003600000000001005E000100000001000000012B +:10037000005F0001000000010000000100600001BA +:1003800000010001000000010061005F005C0059F5 +:100390000062000100620060005D005A006200E23D +:1003A00000570061005E005B006200E200570057EA +:1003B0000057005700570001000100010001000133 +:1003C000000100000016034500720067006F004442 +:1003D000006F007800200045005A00000016034519 +:1003E00000720067006F0044006F00780020004535 +:1003F000005A0000000403090409026D0004010012 +:10040000A0FA090400000103010100092111010003 +:1004100001223F000705810308000A0904010001C9 +:1004200003010200092111010001224D000705828C +:100430000308000A09040200010300000009211159 +:100440000100012236000705830308000A0904039E +:1004500000010300000009211101000122390007F9 +:100460000584031000011201100100000008EDFED8 +:10047000071301000102000105010906A10105079A +:1004800019E029E715002501950875018102050885 +:1004900019012905950575019102950175039101D1 +:1004A0000507190029771500250195787501810246 +:1004B000C005010980A101850216010026B7001AB6 +:1004C00001002AB700751095018100C0050C0901D3 +:1004D000A1018503160100269C021A01002A9C0234 +:1004E000751095018100C005010902A1010901A152 +:1004F00000050919012905150025019505750181DA +:100500000295017503810105010930093115812525 +:100510007F95027508810609381581257F9501753B +:10052000088106050C0A38021581257F950175089A +:100530008106C0C005010906A101050719E029E7E8 +:100540001500250195087501810295017508810145 +:100550000508190129059505750191029501750395 +:1005600091010507190029FF150025FF950675085B +:100570008100C00000000000000000000000010237 +:1005800004060A0F17202C3A4A5D71879DB3C7DA1B +:10059000E9F5FCFFFCF5E9DAC7B39D87715D4A3ADE +:1005A0002C20170F0A0604020100000000000000C2 +:1005B0000000000011241FBECFEFDAE0DEBFCDBF88 +:1005C00004B603FE24C08091FB019091FC01A09130 +:1005D000FD01B091FE018730904BA740B04BB9F4BC +:1005E0001092FB011092FC011092FD011092FE018D +:1005F00014BE84B7877F84BF88E10FB6F8948093D8 +:100600006000109260000FBEE0E0FFE3099511E08A +:10061000A0E0B1E0ECEEF8E402C005900D92A43346 +:10062000B107D9F711E0A4E3B1E001C01D92AB3FDF +:10063000B107E1F70E94170B0C9474240C9400008E +:100640001092B9008AE08093B800089594EA9093DC +:10065000BC009091BC0097FFFCCF9091B900987FAF +:10066000983021F0903111F081E008958093BB0023 +:1006700084E88093BC008091BC0087FFFCCF809110 +:10068000B900887F883111F0803471F780E00895D7 +:1006900084E98093BC008091BC0084FDFCCF089568 +:1006A0008093BB0084E88093BC008091BC0087FFEE +:1006B000FCCF9091B900987F81E0983209F480E0F6 +:1006C000089584E88093BC008091BC0087FFFCCF34 +:1006D0008091BB00089580910101811115C080E4D3 +:1006E0000E9426038093010181110CC082E10E94C7 +:1006F000500380930101811105C08FEF0E945003C8 +:10070000809301010E94480384B1807F84B985B140 +:10071000807F85B98AB1837F8AB98BB1837F8BB99A +:100720003E98469808950E942605809301010E94F4 +:100730006B0380B38C7080BB81B3836F81BBA5E3F7 +:10074000B1E0E3E4F1E08EE08E0F11921D928E1382 +:10075000FCCF0C941005BF92CF92DF92EF92FF92E4 +:100760000F931F93CF93DF9380910101882379F03A +:10077000809134018F5F80933401811108C00E9401 +:10078000260580930101811102C00E94B80405E38F +:1007900011E0C0E0D0E0DD24D39482E0C82EEE2446 +:1007A000E394F12CC730D10500F58091010181114E +:1007B00064C080E40E94260380930101811112C06D +:1007C00082E10E9450038093010181110BC0C70197 +:1007D0000C2E01C0880F0A94EAF780950E945003FE +:1007E000809301010E94480348C0CA30A1F028F458 +:1007F000C83059F0C93061F005C0CC3089F070F0D4 +:10080000CD3089F0209A289810C0219A29980DC0DF +:10081000229A2A980AC0239A2B9807C0529A01C09C +:10082000539A5B9802C03E9A469890EA9A95F1F7DF +:100830009FB1799902C082E001C080E091709D254E +:10084000982B7C9902C084E001C080E0892B7D99BF +:1008500002C038E001C030E0832B7E9902C020E165 +:1008600001C020E0822B9FB19095991F9927991F75 +:100870009295990F907E892B0FC080910101811173 +:1008800049C080E40E94260380930101882379F106 +:10089000B12C0E9448038B2DF8019081981719F014 +:1008A0008083C09200010E946B0321960F5F1F4F4F +:1008B000CE30D10509F076CF80910001882361F117 +:1008C000815080930001882339F08FE99FE00197E0 +:1008D000F1F700C0000020C0A3E4B1E0E5E3F1E0DF +:1008E000CF01825F91919D938E13FCCF15C083E160 +:1008F0000E945003809301018111CACF81E40E94BC +:100900002603809301018111C3CF0E946103B82E99 +:10091000B094BFCF80E0C0CF0E94B60481E0DF91E9 +:10092000CF911F910F91FF90EF90DF90CF90BF90EC +:100930000895E82FF0E0ED5BFE4F80810895089563 +:100940000F931F93CF93DF93C3E4D1E010E00C2FFC +:10095000025F899190E00E94681B180F0C13F9CF79 +:10096000812FDF91CF911F910F9108950C949305E2 +:1009700056985E9825982D9826982E9827982F9807 +:100980008FEF90E0909389008093880090938B0084 +:1009900080938A0090938D0080938C00259A2D9AE5 +:1009A0002FEF80E792E0215080409040E1F700C0B7 +:1009B0000000269A2E9A2FEF80E792E02150804087 +:1009C0009040E1F700C00000279A2F9A2FEF80E7B0 +:1009D00092E0215080409040E1F700C0000025984F +:1009E0002D982FEF80E792E0215080409040E1F772 +:1009F00000C0000026982E982FEF80E792E021504B +:100A000080409040E1F700C0000027982F9856984A +:100A10005E9825982D9826982E9827982F980895B7 +:100A200089EA8093800089E08093810024982C9843 +:100A30003F988AB18F748AB96E98479A8BB1806B50 +:100A40008BB9769A0E94B8040C94920580E2809348 +:100A500001018091510181110EC00E94200381E0AB +:100A6000809351012FEF83ED90E32150804090401F +:100A7000E1F700C0000080E40E942603809301019A +:100A800081112EC00E94500380930101811128C062 +:100A90000E94500380930101811122C08FE30E94C4 +:100AA00050038093010181111BC00E94480380E420 +:100AB0000E94260380930101811112C08CE00E94E4 +:100AC00050038093010181110BC00E945003809359 +:100AD0000101811105C08FE30E9450038093010141 +:100AE0000E944803809101010895CF93DF93EC01A8 +:100AF000662319F0633059F00DC08A81882321F0F4 +:100B000085EE0E94771103C085EE0E943F128A8114 +:100B1000811103C080E090E002C08AE091E0DF91A3 +:100B2000CF91089508956091BD017091BE018091AB +:100B3000BF019091C0010E94741B56985E98259841 +:100B40002D9826982E9827982F98823039F0833048 +:100B500041F0813041F4259A2D9A0895269A2E9AD3 +:100B60000895279A2F9A089581E0089581E00895C5 +:100B70000C94B60508950F931F93CF93DF938C01C8 +:100B8000FC01C081D181CE010E94ED19BE010E94FD +:100B90006406EC01B8010E94B805882309F48DC0F1 +:100BA000F8018281882309F44AC080915D01811196 +:100BB0001FC0C431F0E5DF0709F051C00E94BA053B +:100BC00081E080935D010E940C1C90935C018093F6 +:100BD0005B0110925401109256011092550110922F +:100BE00058011092570110925A011092590165C094 +:100BF00080915B0190915C010E94181C883C9105DA +:100C000070F480915401E82FF0E0EE0FFF1FEB5AD3 +:100C1000FE4FD183C0838F5F809354014EC0C43890 +:100C200080E5D80721F0C538D04501F13AC0F80178 +:100C30008281882341F01092520182E01EC0C438A4 +:100C4000E0E5DE0759F580915201811106C086E288 +:100C50000E94771186E20E943F1282E01CC0C438D5 +:100C6000F0E5DF0741F3C538D045D9F4F8018281BA +:100C7000882331F01092530180E20E948E121DC031 +:100C800080915301811106C087E20E94771187E2AB +:100C90000E943F1280E20E9495120FC0C538D045D5 +:100CA00029F381E08093520180935301C801DF91C1 +:100CB000CF911F910F910C94B40580E0DF91CF91FB +:100CC0001F910F910895089596E0799FF0011124E6 +:100CD00094E5899FE00DF11D1124E60FF11DEE0F43 +:100CE000FF1FEB5DFE4F859194910895880F991F2A +:100CF000FC01E356F040859194910895880F991F67 +:100D0000FC01E35EFE4F8591949108950F931F932C +:100D1000CF93DF93EC01811520E3920750F5C115C5 +:100D200080E2D80708F0C3C0CB3BD10590F4C83AA5 +:100D3000D10508F06AC0C53AD10508F05BC0C430DF +:100D4000D10508F0D0C1219709F0CAC101E010E037 +:100D50000AC2CF3FD10511F008F0C5C1C03FD1058F +:100D600008F0A2C0CE01805E9109089708F4BBC1CB +:100D7000B7C1C13090E5D90709F4A2C020F5C03150 +:100D80008FE4D80770F4C11590E4D90708F094C037 +:100D9000C11521E3D20708F0A3C1DD278E01106C35 +:100DA000E2C1C115D04509F09BC10E94F4148FEF38 +:100DB00094E32CE0815090402040E1F700C0000017 +:100DC0000E94671CD0C1C11597E5D90758F4C031FE +:100DD00021E5D20708F01CC1C43180E5D80708F42A +:100DE00075C07EC1CE0190578115904108F078C141 +:100DF000DF7073C1C53AD10509F477C1C63AD10590 +:100E000009F076C102E810E4AEC1C83AD10509F490 +:100E100072C1C93AD10509F471C1CA3AD10509F4C0 +:100E200070C1CB3AD10509F46FC1CC3AD10509F4B0 +:100E30006EC1CD3AD10509F46DC1C03BD10509F4AD +:100E40006CC1CE3AD10509F46BC1CF3AD10509F492 +:100E50006AC1C13BD10509F469C1C23BD10509F49E +:100E600068C1C33BD10509F467C1C43BD10509F48E +:100E700066C1C53BD10509F465C1C63BD10509F47E +:100E800064C1C73BD10509F463C1C83BD10509F46E +:100E900062C1C93BD10509F461C1CA3BD10509F45E +:100EA00060C100E014E45FC18E0110655CC1CE0139 +:100EB0009F700E947E0658C1DF708E01106A53C178 +:100EC0008091DA0181608093DA014DC10E940C1E8D +:100ED000811102C00E94F21D0E94291E90E0909391 +:100EE000FB018093FA01C23080E5D80721F480919C +:100EF000FA01816086C0C43090E5D90721F4809161 +:100F0000FA0182607EC0C63020E5D20721F48091CC +:100F1000FA01846076C0C83080E5D80719F4809162 +:100F2000FA0127C0CA3090E5D90721F48091FA016F +:100F3000806167C0CC3020E5D20721F48091FA01AE +:100F400080625FC0CE3080E5D80721F48091FA013D +:100F5000806457C0C03190E5D90721F48091FA012F +:100F600080684FC0C23120E5D20729F48091FA0190 +:100F70008460886046C0C33080E5D80721F4809142 +:100F8000FA018E7F3EC0C53090E5D90721F48091EB +:100F9000FA018D7F36C0C73020E5D20721F4809159 +:100FA000FA018B7F2EC0C93080E5D80719F48091F3 +:100FB000FA0126C0CB3090E5D90721F48091FA01DF +:100FC0008F7E1FC0CD3020E5D20721F48091FA0139 +:100FD0008F7D17C0CF3080E5D80721F48091FA01CA +:100FE0008F7B0FC0C13190E5D90721F48091FA01C0 +:100FF0008F7707C0C331D04531F48091FA018B7FE0 +:10100000877F8093FA018091FA010E942D1EABC068 +:101010008D2F99278F70992781309105D9F49E01E2 +:101020002370332702C0880F991F2A95E2F79C6826 +:101030008E0144E0000F111F4A95E1F7002713705D +:10104000802B912B53E0CC0FDD1F5A95E1F7C07632 +:10105000DD272FC08230910531F4DC2FCC278E01A3 +:10106000016F106A80C08330910569F4CE018370EE +:10107000992701E010E002C0000F111F8A95E2F7E6 +:10108000C8019C680FC084309105B9F4CE0183700B +:10109000992701E010E002C0000F111F8A95E2F7C6 +:1010A000C8019A6823E0CC0FDD1F2A95E1F7C07EC6 +:1010B000D7708C010C2B1D2B56C08530910531F457 +:1010C000DC2FCC278E01046F106A4DC0069709F003 +:1010D0004AC0CF71DD27DC2FCC278E01106243C0C0 +:1010E00000E010E040C08E013EC001E810E43BC0CB +:1010F00003E810E438C002EE14E435C009EE14E44D +:1011000032C00AEE14E42FC005EB14E42CC006EB49 +:1011100014E429C007EB14E426C00CEC14E423C04B +:101120000DEC14E420C003E815E41DC00AE815E442 +:101130001AC002E915E417C004E915E414C001E27D +:1011400016E411C003E216E40EC004E216E40BC07C +:1011500005E216E408C006E216E405C007E216E45C +:1011600002C00AE216E4C801DF91CF911F910F91EE +:10117000089596E0799FF001112494E5899FE00D90 +:10118000F11D1124E60FF11DEE0FFF1FEB5DFE4F69 +:1011900085919491803E9105E0F4803C910558F54D +:1011A0008133910509F46FC048F48932910509F43F +:1011B00063C08A32910509F46DC072C0893391050C +:1011C000E9F082389105D1F08533910509F44DC0DD +:1011D00067C0833E910581F138F4803E9105B9F0F6 +:1011E000823E9105D9F05CC0863E910561F1873E53 +:1011F0009105A1F155C00E94760608952091FA014B +:1012000020FD02C021FF4CC080EE90E049C08091DB +:10121000FA0180FFF9CF89E390E042C08091FA01A2 +:1012200082FF0EC08091FA0184FF03C080E090E04D +:1012300037C083EE90E034C08091FA0182FFF2CF94 +:1012400082EE90E02DC08091FA0183FF0BC0809167 +:10125000FA0184FDEBCF87EE90E022C08091FA0185 +:1012600083FFF5CF86EE90E01BC08091FA0185FFE9 +:1012700007C089E290E014C08091FA0185FFF9CFA0 +:1012800085E390E00DC08091FA0186FF07C08AE2F5 +:1012900090E006C08091FA0186FFF9CF81E390E0EB +:1012A0000E948606089508950C94530980916E015A +:1012B0000895CF93DF9300D01F92CDB7DEB79C0186 +:1012C0008091F101843019F593E099833B832A835F +:1012D0009093E9008FEF9091E800815095FD06C052 +:1012E00095ED9A95F1F700008111F5CF8091E80016 +:1012F00085FF0DC040E050E063E070E0CE01019654 +:101300000E94C30B8091E8008E778093E8000F90D5 +:101310000F900F90DF91CF910895CF93DF9300D07E +:101320001F92CDB7DEB72091F101243021F522E0E4 +:1013300029839B838A8383E08093E9008FEF9091D8 +:10134000E800815095FD06C095ED9A95F1F70000F3 +:101350008111F5CF8091E80085FF0DC040E050E09D +:1013600063E070E0CE0101960E94C30B8091E8001B +:101370008E778093E8000F900F900F90DF91CF91C0 +:1013800008952091F1012430F1F422E02093E90046 +:101390002FEF3091E800215035FD06C035ED3A952C +:1013A000F1F700002111F5CF2091E80025FF0BC0D7 +:1013B00040E050E065E070E00E94C30B8091E800DF +:1013C0008E778093E8000895CF93DF93EC0190919E +:1013D000F101943009F046C080910C018823D9F0C6 +:1013E00080910D018823B9F09093E9008FEF9091DF +:1013F000E800815095FD06C095E19A95F1F700004F +:101400008111F5CF8091E80085FF2CC040E050E0CD +:1014100060E170E017C081E08093E9008FEF909168 +:10142000E800815095FD06C095ED9A95F1F7000012 +:101430008111F5CF8091E80085FF14C040E050E0B5 +:1014400068E070E0CE010E94C30B8091E8008E77C7 +:101450008093E80080E1FE01AEE5B1E001900D92DD +:101460008A95E1F7DF91CF9108958091F001811184 +:1014700009C00E94580D0E94B50D8091E200846061 +:101480008093E20008951092F001089508950C945D +:101490009C220E94FD1B0E94A2220E945B100C94C1 +:1014A000540942E061EC81E00E94D20C42E061EC20 +:1014B00082E00E94D20C42E061EC83E00E94D20CF8 +:1014C00042E161EC84E00C94D20C8091F301833012 +:1014D00009F455C030F4813071F0823009F48EC0C7 +:1014E00008958A3009F47AC08B3009F460C08930DD +:1014F00009F09CC020C08091F201813A09F096C0A9 +:101500008091E800877F8093E8008091F6019091B8 +:10151000F701892B21F460E18EE591E003C060E0E2 +:1015200080E090E070E00E940E0C8091E8008B77E4 +:101530008093E80008958091F201813209F076C02D +:101540008091F6019091F701009719F0039709F047 +:101550006DC08091E800877F8093E8008091E8006B +:1015600082FD05C08091F1018111F8CF5FC08091AB +:10157000F10080936E018091E8008B7753C08091D9 +:10158000F201813A09F052C08091F6019091F70181 +:10159000892B09F04BC08091E800877F8093E80099 +:1015A0008091E80080FFFCCF80910C0136C08091D3 +:1015B000F2018132D9F58091F6019091F701892BE2 +:1015C000A9F58091E800877F8093E8000E94070DCD +:1015D0008091F40180930C010C94F4148091F20139 +:1015E000813221F58091E800877F8093E8000E9496 +:1015F000070D8091F50180936F0108958091F201AC +:10160000813AA1F48091E800877F8093E80080917F +:10161000E80080FFFCCF80916F018093F100809102 +:10162000E8008E778093E8000C94070D089584B746 +:10163000877F84BF88E10FB6F89480936000109292 +:1016400060000FBE90E080E80FB6F89480936100D0 +:10165000909361000FBE0E94AA100E94580D0E9434 +:10166000B50D8091E20084608093E20078940E943E +:101670003B100E94AC1082E091E00E9456100E9444 +:101680008A228091F101853069F40E94C41B809107 +:10169000EF018823B1F30E94EF1B882391F30E948E +:1016A000AD0BEFCF0E94B210ECCF292F33272330A0 +:1016B0003105C9F064F42130310581F02230310563 +:1016C00009F043C08DE690E029EF33E042C02132BB +:1016D0003105F1F02232310541F137C082E190E06D +:1016E00026E634E036C099278130910541F08230FA +:1016F000910541F0892B49F5E5EFF3E005C0EDEDEB +:10170000F3E002C0E5ECF3E0849190E09F0121C09A +:101710006430D8F4E62FF0E0EE0FFF1FEE5DFE4FD1 +:101720002081318189E090E014C0643070F470E071 +:10173000FB01EE0FFF1FE65EFE4F20813181FB01B2 +:10174000EA5EFE4F808190E004C080E090E020E0FF +:1017500030E0FA0131832083089580E189BD82E180 +:1017600089BD09B400FEFDCF8091D8008F7D8093A4 +:10177000D8008091E00082608093E0008091E000DA +:1017800081FDFCCF0895CF92DF92EF92FF920F93ED +:101790001F93CF93DF93EC018B016A010E94260D0A +:1017A000811133C0C114D10439F0F60180819181D7 +:1017B000081B190BC80FD91FE12CF12C01151105BD +:1017C00019F18091E80085FD16C08091E8008E77C0 +:1017D0008093E800C114D10449F0F6018081918121 +:1017E000E80EF91EF182E08285E00FC00E94260D0E +:1017F000882321F30AC089918093F10001501109D7 +:10180000FFEFEF1AFF0ADACF80E0DF91CF911F914F +:101810000F91FF90EF90DF90CF9008952091F80105 +:101820003091F9012617370748F06115710539F431 +:101830002091E8002E772093E80001C0B90140E034 +:1018400061157105A9F12091F101222309F443C02A +:10185000253009F442C02091E80023FD40C02091CA +:10186000E80022FD32C02091E80020FFE9CF40913E +:10187000F3002091F20030E0342BFC01CF01611520 +:10188000710559F02830310540F481918093F100C1 +:10189000615071092F5F3F4FF1CF41E02830310592 +:1018A00009F040E02091E8002E772093E800C8CFAF +:1018B0004111C9CF0AC08091F101882361F08530C0 +:1018C00061F08091E80083FD0AC08091E80082FF0A +:1018D000F2CF80E0089582E0089583E0089581E0EA +:1018E00008952091F8013091F9012617370748F043 +:1018F0006115710539F42091E8002E772093E800F6 +:1019000001C0B901FC0120E06115710591F18091E0 +:10191000F101882309F440C0853009F43FC080916B +:10192000E80083FD3DC08091E80082FD2FC08091DA +:10193000E80080FFE9CF2091F3008091F20090E071 +:10194000922B6115710559F08830910540F424916E +:101950002093F1003196615071090196F2CF21E098 +:10196000089709F020E08091E8008E778093E800E6 +:10197000CBCF2111CCCF0AC08091F101882361F037 +:10198000853061F08091E80083FD0AC08091E80015 +:1019900082FFF2CF80E0089582E0089583E0089509 +:1019A00081E00895982F973058F59093E9009817A3 +:1019B00039F07091EC002091ED005091F00003C0DF +:1019C000242F762F50E021FF19C03091EB003E7F8D +:1019D0003093EB003091ED003D7F3093ED0030917E +:1019E000EB0031603093EB007093EC002093ED003E +:1019F0005093F0002091EE0027FF07C09F5FD3CFE8 +:101A00008F708093E90081E0089580E008958091CF +:101A1000F20187FF11C08091E80082FD05C080912E +:101A2000F1018111F8CF11C08091E8008B770BC0D4 +:101A30008091F101882349F08091E80080FFF8CF80 +:101A40008091E8008E778093E80008952091E4006B +:101A50003091E50095E64091EC00842F817040FFC5 +:101A600022C08091E80080FD1CC08091F101882394 +:101A700091F0853091F08091EB0085FD10C0409190 +:101A8000E4005091E5004217530729F39A01915061 +:101A900011F784E0089582E0089583E0089581E0DD +:101AA000089580E008954091E80042FFDECF089558 +:101AB0000E94C60D0E94CE0DE0EEF0E080818160B4 +:101AC0008083E8EDF0E080818F77808319BCA7EDFB +:101AD000B0E08C918E7F8C9380818F7E808310927A +:101AE000F00108950F931F93CF93DF930E94C60DCB +:101AF0000E94CE0DC8EDD0E088818F7788838881E1 +:101B00008068888388818F7D888319BC1092F10159 +:101B10001092ED011092EF011092EE0100EE10E034 +:101B2000F80180818B7F808388818160888342E097 +:101B300060E080E00E94D20CE1EEF0E080818E7FD8 +:101B40008083E2EEF0E08081816080838081886024 +:101B50008083F80180818E7F808388818061888383 +:101B6000DF91CF911F910F910895E8EDF0E0808112 +:101B70008F7E8083E7EDF0E080818160808384E068 +:101B800082BF81E08093F0010C94720DE8EDF0E0EB +:101B900080818E7F80831092E20008951092DA0097 +:101BA0001092E10008951F920F920FB60F92112428 +:101BB0002F933F934F935F936F937F938F939F9355 +:101BC000AF93BF93EF93FF938091E10082FF0BC02F +:101BD0008091E20082FF07C08091E1008B7F8093BB +:101BE000E1000E943A108091DA0080FF1FC08091CE +:101BF000D80080FF1BC08091DA008E7F8093DA00CE +:101C00008091D90080FF0DC080E189BD82E189BD4E +:101C100009B400FEFDCF81E08093F1010E94350AF6 +:101C200005C019BC1092F1010E94430A8091E100A5 +:101C300080FF19C08091E20080FF15C08091E20012 +:101C40008E7F8093E2008091E20080618093E200C9 +:101C50008091D80080628093D80019BC85E0809381 +:101C6000F1010E94470A8091E10084FF30C0809119 +:101C7000E20084FF2CC080E189BD82E189BD09B406 +:101C800000FEFDCF8091D8008F7D8093D800809199 +:101C9000E1008F7E8093E1008091E2008F7E80934F +:101CA000E2008091E20081608093E2008091ED018A +:101CB000882311F084E007C08091E30087FD02C013 +:101CC00081E001C083E08093F1010E94490A809184 +:101CD000E10083FF29C08091E20083FF25C080914D +:101CE000E100877F8093E10082E08093F101109210 +:101CF000ED018091E1008E7F8093E1008091E20010 +:101D00008E7F8093E2008091E20080618093E20008 +:101D100042E060E080E00E94D20C8091F000886098 +:101D20008093F0000E94460AFF91EF91BF91AF911E +:101D30009F918F917F916F915F914F913F912F91E3 +:101D40000F900FBE0F901F9018951F920F920FB615 +:101D50000F9211242F933F934F935F936F937F9331 +:101D60008F939F93AF93BF93CF93DF93EF93FF93A3 +:101D7000C091E900CF708091EC00D82FD17080FD28 +:101D8000D0E81092E9008091F000877F8093F00006 +:101D900078940E94E90E1092E9008091F00088602A +:101DA0008093F000CD2BCF70C093E900FF91EF91AD +:101DB000DF91CF91BF91AF919F918F917F916F9163 +:101DC0005F914F913F912F910F900FBE0F901F90F9 +:101DD00018951F93CF93DF93CDB7DEB7AA970FB6B1 +:101DE000F894DEBF0FBECDBFE2EFF1E088E08E0FCA +:101DF0009091F10091938E13FBCF0E94650A809120 +:101E0000E80083FF1FC18091F2019091F301492FF7 +:101E100050E04A30510508F015C1FA01EA5AFF4F67 +:101E20000C942424803881F0823809F00BC1809111 +:101E3000F6018F708093E9008091EB0085FB882785 +:101E400080F91092E90006C08091EE019091EF01B7 +:101E5000911182609091E800977F9093E8008093C1 +:101E6000F1001092F100C8C0282F2D7F09F0EAC0C0 +:101E7000882319F0823061F0E5C08091F40181304F +:101E800009F0E0C0933009F080E08093EF012BC0AF +:101E90008091F401811127C08091F6018F7009F4BF +:101EA000D1C08093E9002091EB0020FF1CC093304B +:101EB00021F48091EB00806214C09091EB0090615E +:101EC0009093EB0021E030E0A90102C0440F551FC0 +:101ED0008A95E2F74093EA001092EA008091EB00C5 +:101EE00088608093EB001092E9008091E800877F82 +:101EF00086C08111A7C01091F4011F778091E30083 +:101F00008078812B8093E3008091E800877F809325 +:101F1000E8000E94070D8091E80080FFFCCF8091CF +:101F2000E30080688093E300111102C082E001C0E9 +:101F300083E08093F10186C08058823008F082C02F +:101F40008091F4019091F5018C3D53E0950779F56E +:101F500083E08A838AE289834FB7F894DE0113967F +:101F600020E03EE051E2E32FF0E050935700E4918F +:101F700020FF03C0E295EF703F5FEF708E2F90E07F +:101F8000EA3010F0C79601C0C0968D939D932F5FE5 +:101F9000243149F74FBF8091E800877F8093E800A4 +:101FA0006AE270E0CE0101960E940E0C14C0AE01F0 +:101FB0004F5F5F4F6091F6010E94550BBC01009787 +:101FC00009F440C09091E800977F9093E8008981E0 +:101FD0009A810E94710C8091E8008B778093E800D1 +:101FE00031C0803879F58091E800877F8093E800E0 +:101FF0008091ED018093F1008091E8008E778093CD +:10200000E8000E94070D1EC081111CC09091F401D0 +:102010009230C0F48091E800877F8093E80090932D +:10202000ED010E94070D8091ED01811106C08091A4 +:10203000E30087FD02C081E001C084E08093F101EC +:102040000E94510A8091E80083FF0AC08091E80055 +:10205000877F8093E8008091EB0080628093EB00A3 +:10206000AA960FB6F894DEBF0FBECDBFDF91CF9119 +:102070001F9108950895CF938091F1018823A1F0D5 +:10208000C091E900CF709091EC00892F817090FD94 +:1020900080E8C82B1092E9008091E80083FD0E943F +:1020A000E90ECF70C093E900CF9108959093750128 +:1020B000809374010895E0917401F0917501309757 +:1020C00021F00190F081E02D099480E00895E091E5 +:1020D0007401F0917501309721F00280F381E02DB9 +:1020E00009940895E0917401F0917501309721F001 +:1020F0000480F581E02D09940895209172013091BA +:1021000073018217930771F09093730180937201AA +:10211000E0917401F0917501309721F00680F7810C +:10212000E02D09940895209170013091710182177A +:10213000930771F09093710180937001E0917401A5 +:10214000F0917501309721F00084F185E02D09941C +:10215000089508950C94A9100E94031C0E949303F3 +:102160000C94C51C9F92AF92BF92CF92DF92EF92D8 +:10217000FF920F931F93CF93DF9300D000D000D036 +:10218000CDB7DEB70E94AB030DE010E0AA24A39404 +:10219000B12C902E802F0E949904980129583E4F0F +:1021A0006901F901F080F826A1F40150110988F7BE +:1021B0008FEF89838A831B820E940C1C8160782F99 +:1021C0009D838C8349815A816B818D810E94491145 +:1021D0002FC09091DA0191FF04C08E830E949F046A +:1021E0008E8125E030E0A501022E01C0440F0A9443 +:1021F000EAF7E42E4F21C1F029839A828E2191E0E3 +:1022000009F490E09B830E940C1C8160782F9D83D1 +:102210008C8349815A816B818D810E944911F6011D +:102220008081E826E08204C021503109E0F6BDCF6C +:102230000E94AC1F109176010E945B101817B9F034 +:102240000E945B108093760126960FB6F894DEBF4D +:102250000FBECDBFDF91CF911F910F91FF90EF90F7 +:10226000DF90CF90BF90AF909F900C94540926962A +:102270000FB6F894DEBF0FBECDBFDF91CF911F9197 +:102280000F91FF90EF90DF90CF90BF90AF909F9015 +:102290000895CF93DF93CDB7DEB72B970FB6F894A1 +:1022A000DEBF0FBECDBF4F83588769877A878B8784 +:1022B000DE01119686E0FD0111928A95E9F785E02D +:1022C000FE01379601900D928A95E1F749815A8176 +:1022D0006B817C818D819E810E9492172B960FB617 +:1022E000F894DEBF0FBECDBFDF91CF910895CF939D +:1022F000882309F4C2C0C82F823859F40E945B10A9 +:1023000081FDBBC089E30E946C1A0E94391B89E3DE +:102310000CC0833879F40E945B1080FDAEC083E569 +:102320000E946C1A0E94391B83E50E94AE1ACF915D +:102330000C94391B843859F40E945B1082FD9DC0B7 +:1023400087E40E946C1A0E94391B87E4EECF8CEF61 +:102350008C0F813A48F48C2F0E94EF2181118DC09F +:102360008C2F0E946C1AE3CF80E28C0F883048F4E7 +:10237000C77081E001C0880FCA95EAF70E94F21A7F +:10238000D6CF8BE58C0F833078F4C53A29F0C63A66 +:1023900031F083E890E005C081E890E002C082E877 +:1023A00090E0CF910C947D1088E58C0F833108F07C +:1023B00064C0C83A39F1C93A41F1CA3A49F1CB3A55 +:1023C00051F1CC3A59F1CD3A61F1C03B69F1CE3AC5 +:1023D00071F1CF3A79F1C13B81F1C23B89F1C33B45 +:1023E00091F1C43B99F1C53BA1F1C63BA9F1C73BB3 +:1023F000B1F1C83BB9F1C93BC1F1CA3BC9F180E0B9 +:1024000090E038C082EE90E035C089EE90E032C0B6 +:102410008AEE90E02FC085EB90E02CC086EB90E038 +:1024200029C087EB90E026C08CEC90E023C08DECB7 +:1024300090E020C083E891E01DC08AE891E01AC0D6 +:1024400082E991E017C084E991E014C081E292E052 +:1024500011C083E292E00EC084E292E00BC085E2FC +:1024600092E008C086E292E005C087E292E002C0F6 +:102470008AE292E0CF910C949310CF910895882333 +:1024800009F44BC0823859F40E945B1081FF45C0AB +:1024900089E30E946C1A0E94391B89E30CC08338BF +:1024A00071F40E945B1080FF38C083E50E946C1AB3 +:1024B0000E94391B83E50E94AE1A0C94391B8438A4 +:1024C00059F40E945B1082FF28C087E40E946C1AB6 +:1024D0000E94391B87E4EFCF9CEF980F913A58F395 +:1024E00090E2980F983050F4877091E001C0990FF6 +:1024F0008A95EAF7892F0E94F81ADFCF9BE5980F9B +:10250000933020F480E090E00C947D10885A833161 +:1025100020F480E090E00C9493100895882321F03B +:102520000E94F21A0C94391B0895882321F00E940E +:10253000F81A0C94391B08957F928F929F92AF9254 +:10254000BF92CF92DF92EF92FF920F931F93CF93A0 +:10255000DF931F92CDB7DEB77C01C62E772EFC012C +:10256000058102950F70128111110E940F1B0E94AC +:10257000651A882379F0112369F080E28C0D883088 +:1025800048F082E00E944E1A0E94651A91E0D82E0F +:10259000D92601C0D12CE72DE295EF70F0E0E05A8A +:1025A000FF4F0C942424872D807F072D0F708823E4 +:1025B00011F00295007F112389F0002309F490C1E6 +:1025C00080E28C0D883020F4802F0E94F21A03C024 +:1025D000802F0E94021B0E94391B82C18C2D0E94F9 +:1025E0003F12002309F495C180E28C0D883020F45D +:1025F000802F0E94F81A03C0802F0E94081B0E949F +:10260000391B87C1972D907F872D8F70903211F0E5 +:102610008295807FCC2021F0F1E0CF16B1F01EC072 +:10262000112349F0002309F414C1013009F011C14C +:102630000E94221B6EC1002319F0013009F469C108 +:1026400089830E94251B89810AC1112321F0023050 +:1026500008F05FC1FEC001115CC101C1112321F06E +:10266000002309F4F6C03CC1002309F4F8C03EC1C0 +:10267000872D86958695837090E0009719F00197D5 +:1026800061F047C1112321F08C2D972D937002C06A +:1026900080E090E00E947D103CC1112321F08C2D40 +:1026A000972D937002C080E090E00E94931031C19A +:1026B0008C2D112319F00E94B41E02C00E941C1F11 +:1026C0000E94A11F26C1872D837009F052C01111ED +:1026D00020C18C2D829586958770880F880F9C2D40 +:1026E0009F70892E912CA12CB12C082E04C0880C2F +:1026F000991CAA1CBB1C0A94D2F7C4FE14C00FE09C +:1027000010E020E030E0B901A80104C0440F551FDB +:10271000661F771F8A95D2F7CB01BA016095709535 +:102720008095909503C060E070E0CB01272D269541 +:102730002695237030E02230310569F023303105D1 +:1027400089F0682979298A299B292130310571F07E +:102750000E94DA18DEC0682979298A299B290E94FB +:10276000F618D7C00E94DA18C501B4010E94BE183D +:10277000D0C0112319F0872D817001C08695882360 +:1027800009F4C7C08C2D829586958770880F880FB5 +:102790009C2D9F70892E912CA12CB12C082E04C049 +:1027A000880C991CAA1CBB1C0A94D2F7C4FE14C046 +:1027B0000FE010E020E030E0B901A80104C0440FB0 +:1027C000551F661F771F8A95D2F7CB01BA01609516 +:1027D00070958095909503C060E070E0CB01272D47 +:1027E000269526952370422F50E04230510569F01E +:1027F0004330510589F0682979298A299B2941307C +:10280000510571F00E94B41984C0682979298A2978 +:102810009B290E94D0197DC00E94B419C501B40142 +:102820000E94981976C08C2D90E0FC01E05EF109C1 +:10283000E531F10508F050C0E059FF4F0C94242415 +:102840000C2D0F70872D8F71112331F00E943119DB +:10285000802F0E948E125DC00E945219802F0E940C +:10286000951257C0112339F0011153C0872D8F7174 +:102870000E9477194EC0023008F04BC0F7CF1123E9 +:1028800039F0872D8F710E94311943C01123C9F38C +:10289000872D8F710E9452193CC0112329F0872D7A +:1028A0008F710E941C1935C00E94121932C0112369 +:1028B00051F0172D1F71812F0E94311963E0812F74 +:1028C0000E94451A26C081E00E944E1A023008F18B +:1028D00082E00E944E1A1DC0112331F0002389F2BC +:1028E0008C2D0E94771115C0002391F28C2D0E942F +:1028F0003F120FC0472D4F706C2DC7010E94750508 +:102900000E94361806C0472D4F706C2DC7010E94DB +:102910006306DD20F9F00E94411A80FD1BC0F7011B +:1029200012820E943B1A0E943119C7010E94B914F9 +:102930000E943B1A0F90DF91CF911F910F91FF9052 +:10294000EF90DF90CF90BF90AF909F908F907F904F +:102950000C9452190F90DF91CF911F910F91FF901E +:10296000EF90DF90CF90BF90AF909F908F907F902F +:1029700008950F931F93CF93DF93EC018881998182 +:102980002B813C81232BB9F09F3F11F48F3F99F0AD +:10299000CE010E94BB05882371F0688179818A810C +:1029A0000E94371A8C010E94EC190E94B318B801DA +:1029B000CE010E949C12DF91CF911F910F9108953B +:1029C0000E940F1B0E941F1B0E94E41A0E94391BC9 +:1029D0000E9452200E94A11F80E090E00E947D1082 +:1029E00080E090E00C9493100E94FF1A0C94E01485 +:1029F0000E942C1A292F22952F7030E02C3031059F +:102A00004CF42A3031056CF4225031092230310562 +:102A1000A8F407C02C30310569F02F30310551F092 +:102A20000DC0803F69F018F4803E40F409C0843F37 +:102A300029F406C093FB882780F9089580E0089563 +:102A400081E00895CF93DF9300D000D01F92CDB7DF +:102A5000DEB70F900F900F900F900F90DF91CF91F6 +:102A60000895CF93DF9300D000D000D0CDB7DEB76C +:102A700026960FB6F894DEBF0FBECDBFDF91CF9183 +:102A800008951F93CF93DF93C091850116E0809145 +:102A90008601C81799F0D0E01C9FF0011D9FF00D32 +:102AA0001124E957FE4F40815181628173818481F5 +:102AB00095810E9431152196C770E9CFDF91CF91A2 +:102AC0001F9108954091B7015091B8016091B901EB +:102AD0007091BA018091BB019091BC010C943115A9 +:102AE0008091BC0182958F7009F054C08091B9012A +:102AF000882309F44FC080918501A09186016091DF +:102B0000B7017091B8014091BA015091BB01B6E094 +:102B10008A1709F43FC090E041155105C1F17F3F8C +:102B200011F46F3FA1F1B89FF001B99FF00D11248E +:102B3000E957FE4F218172132AC02081621327C0FA +:102B40002281211124C0238134812417350710F4F8 +:102B500021503109241B350B283C3105C0F420914C +:102B6000BC012F7020612093BC0126E0289FF0015A +:102B7000299FF00D1124E457FE4F80818F708061F2 +:102B8000808387EB91E00E94B9140C944115019663 +:102B90008770BECF0895CF92DF92EF92FF920F938E +:102BA0001F93CF93DF93CDB7DEB762970FB6F8943C +:102BB000DEBF0FBECDBF8C0185E0F801DE011D96A2 +:102BC00001900D928A95E1F7D8014C9111965C9194 +:102BD000119712966C9112971396CD90DC901497E2 +:102BE0003091B7017091B8018091BA019091BB0109 +:102BF000009709F46BC17F3F19F43F3F09F466C1A8 +:102C0000E090B901EE2009F4C0C02091BC01C816C3 +:102C1000D90628F0F601E81BF90BCF0104C0809516 +:102C200090958C0D9D1DFF24F394883C910578F0C0 +:102C3000F12C207F09F0C6C07C2DD98AC88A8989E9 +:102C40000E94221587EB91E00E94B914B1C0822F37 +:102C5000807F09F046C0751314C0341312C061118F +:102C600010C02F7020612093BC010E94621587EB79 +:102C700091E00E94B9148091BC01D80115968C9303 +:102C80002EC0CD2819F15F3F11F44F3FF9F0F62E19 +:102C900061111CC0809185012091860136E0821768 +:102CA00009F45AC090E0389FF001399FF00D1124CB +:102CB000E957FE4F7181571306C07081471303C057 +:102CC0007281711103C001968770E9CFF62E6623D9 +:102CD00009F418C18091BC0181608093BC01F12C82 +:102CE00011C1751308C0341306C0611104C080916E +:102CF000BC01D801C3C04D875E878D859E856A8BD8 +:102D00000E94F8146A898823E1F16623D1F12091A9 +:102D1000BC01822F82958F7090E0029774F08091B1 +:102D2000B7019091B80198878F831986DB86CA8690 +:102D30002C87CE0107960E94B91486E0F801A7EB14 +:102D4000B1E001900D928A95E1F70E9470150E9402 +:102D50006215FF24F394D6C04D875E878D859E85CE +:102D60000E942C1A292F22952F7030E02230310535 +:102D70000CF0BCC09F7009F0B6C0805E883008F4CB +:102D8000C1C0C8010E94B914E4CFC816D90608F41E +:102D900053C0F601E81BF90BCF01883C910508F4FC +:102DA00050C0F12C7C2DD98AC88A89890E942215AD +:102DB000E7EBF1E086E0DF011D928A95E9F70E94DA +:102DC0006215A0C0751314C0341312C0611110C075 +:102DD0008091BC01F8018583C8010E94B91486E086 +:102DE000E7EBF1E0DF011D928A95E9F7FE2C8AC03E +:102DF0004D875E878D859E856A8B0E94F8146A894F +:102E0000882309F4BECF662309F4BBCF2091BC010F +:102E1000822F82958F7090E002970CF48ECF809174 +:102E2000B7019091B8019A8389831B82DD82CC829D +:102E30002E83CE0101967FCF809590958C0D9D1DA0 +:102E4000ACCFF62E662309F49CCF75132EC0341335 +:102E50002CC02091BC0120FD1FC0822F82958F7055 +:102E6000D9F0D80115962C9315978F3049F08F5FC4 +:102E7000982F9295907F822F8F70892B15968C9327 +:102E8000C8010E94B91486E0F801A7EBB1E00190F7 +:102E90000D928A95E1F793CF86E0F801A7EBB1E0B8 +:102EA00001900D928A95E1F72DC04D875E878D8543 +:102EB0009E850E94F814811140CF8091BC018160F1 +:102EC0008093BC01C8010E94B9141CC0662309F498 +:102ED00058CF4D875E878D859E850E94F814882384 +:102EE00009F44FCF2ACF811148CF0CC024303105CF +:102EF0000CF047CF9F7009F440CFF8019581907F87 +:102F000009F03BCF8F2D62960FB6F894DEBF0FBE4F +:102F1000CDBFDF91CF911F910F91FF90EF90DF9088 +:102F2000CF9008951F93CF93DF93CDB7DEB72C9743 +:102F30000FB6F894DEBF0FBECDBF4F8358876987A9 +:102F40007A878B879C87CE0107960E94CB158823B2 +:102F500069F08F8198852A853B85232BF1F19F3F6E +:102F600009F063C08F3F09F060C037C086E0FE0102 +:102F70003796DE01119601900D928A95E1F76F81E7 +:102F80007885EA85FB85309741F17F3F11F46F3FEB +:102F900021F12091860130E0C901019687709927BF +:102FA0004091850150E08417950709F447C0698373 +:102FB0007A83FD83EC8396E0929FD001939FB00DBE +:102FC0001124A957BE4FFE01319601900D929A959A +:102FD000E1F7809386010E94411516E080918501FA +:102FE000909186018917C1F1189FC001112489575A +:102FF0009E4F0E94CB15882379F1E09185011E9F99 +:10300000F0011124E957FE4F4081518162817381A3 +:10301000848195810E9431158091850190E001960F +:103020008770992780938501D9CF4F81588569850D +:103030007A858B859C850E943115CFCF0E94F41430 +:103040001092860110928501E7EBF1E086E0DF0146 +:103050001D928A95E9F7C1CF2C960FB6F894DEBF82 +:103060000FBECDBFDF91CF911F910895EF92FF92D8 +:103070000F931F93CF93DF938C01009709F46CC0DB +:10308000F12CEE24E394E8012196F8018491843731 +:1030900040F4843008F051C0813081F0823019F161 +:1030A0005BC0853709F444C0A8F19CE7980F9037BE +:1030B00008F052C08F770E943F1241C00E5F1F4F31 +:1030C000FE01C49180E28C0F883048F4C7708E2DC9 +:1030D00001C0880FCA95EAF70E94121B14C08C2FFA +:1030E0000E9477112DC00E5F1F4FFE01C49180E238 +:1030F0008C0F883058F4C7708E2D01C0880FCA9588 +:10310000EAF70E94181B0E94391B1AC08C2F0E94DC +:103110003F1216C00E5F1F4FFE01C491CC2381F0F9 +:103120008FE99FE00197F1F700C00000C150F6CF92 +:103130000E5F1F4FFE01F49003C00E9477118E01B5 +:103140008F2D882309F49FCFEFE9FFE03197F1F746 +:1031500000C000008150F5CFDF91CF911F910F91FA +:10316000FF90EF90089508956093C1017093C2019C +:103170008093C3019093C4010C94E0140F931F93A8 +:103180000091C1011091C2012091C3013091C4018D +:10319000DC01CB01802B912BA22BB32B8093C1019F +:1031A0009093C201A093C301B093C4011F910F91EA +:1031B0000C94E0140F931F930091C1011091C20170 +:1031C0002091C3013091C401DC01CB018023912304 +:1031D000A223B3238093C1019093C201A093C301A2 +:1031E000B093C4011F910F910C94E0140F931F939F +:1031F0000091C1011091C2012091C3013091C4011D +:10320000DC01CB0180279127A227B3278093C1013E +:103210009093C201A093C301B093C4011F910F9179 +:103220000C94E0141092BD011092BE011092BF01E7 +:103230001092C0010C94E01441E050E060E070E0B6 +:1032400004C0440F551F661F771F8A95D2F740931D +:10325000BD015093BE016093BF017093C0010C94F7 +:10326000E01441E050E060E070E004C0440F551FFE +:10327000661F771F8A95D2F78091BD019091BE019C +:10328000A091BF01B091C001482B592B6A2B7B2B19 +:103290004093BD015093BE016093BF017093C00184 +:1032A0000C94E01441E050E060E070E004C0440F92 +:1032B000551F661F771F8A95D2F7409550956095E8 +:1032C00070958091BD019091BE01A091BF01B09118 +:1032D000C001482359236A237B234093BD015093A7 +:1032E000BE016093BF017093C0010C94E01441E0F3 +:1032F00050E060E070E004C0440F551F661F771F68 +:103300008A95D2F78091BD019091BE01A091BF0135 +:10331000B091C001482759276A277B274093BD01F8 +:103320005093BE016093BF017093C0010C94E014F0 +:103330000F931F930091BD011091BE012091BF0119 +:103340003091C001DC01CB01802B912BA22BB32B40 +:103350008093BD019093BE01A093BF01B093C001C3 +:103360001F910F910C94E0140F931F930091BD01D6 +:103370001091BE012091BF013091C001DC01CB0151 +:1033800080239123A223B3238093BD019093BE0198 +:10339000A093BF01B093C0011F910F910C94E01452 +:1033A0000F931F930091BD011091BE012091BF01A9 +:1033B0003091C001DC01CB0180279127A227B327E0 +:1033C0008093BD019093BE01A093BF01B093C00153 +:1033D0001F910F910C94E0140895CF92DF92EF9219 +:1033E000FF920F931F93CF93DF938C01C090C10185 +:1033F000D090C201E090C301F090C4018091BD0162 +:103400009091BE01A091BF01B091C001C82AD92AF4 +:10341000EA2AFB2ACFE1D0E0D701C6010C2E04C076 +:10342000B695A795979587950A94D2F780FF06C021 +:10343000B8018C2F0E94B908019721F4219760F7F9 +:1034400080E001C08C2FDF91CF911F910F91FF90F1 +:10345000EF90DF90CF900895CF93DF93EC010E941F +:10346000ED19BE010E94B908DF91CF910895CB01FB +:103470000E942C1A08958091C501859585958595A2 +:1034800008958091C5018770089598E0899F900103 +:103490001124262B2093C5010C9431192091C501CC +:1034A000809582238093C501982F977069F430E04E +:1034B000482F552747FD50952417350729F0859546 +:1034C000859585950C94521908959091C501977032 +:1034D00081E009F480E0089590910C01992321F096 +:1034E00090910D01911109C020910E0130910F01B1 +:1034F000F90132969FEF40E01FC0982F9695969560 +:1035000096959F3050F5E0910E01F0910F01E90F73 +:10351000F11D877021E030E0A90102C0440F551F62 +:103520008A95E2F7CA019181892B818308959F3F93 +:1035300039F04F5F4E3041F051915813F8CF0DC024 +:103540005111F7CF942FF5CF9F3F39F0F901E90FD3 +:10355000F11D97FDFA9582830895089590910C01CD +:10356000992321F090910D01911109C020910E0134 +:1035700030910F01F9013296205F3F4F1FC0982F05 +:103580009695969596959F30F0F4E0910E01F09106 +:103590000F01E90FF11D877021E030E0A90102C0A1 +:1035A000440F551F8A95E2F7CA01809591818923BE +:1035B000818308953196E217F30729F090819813DB +:1035C000F9CF1082F7CF089581E090E0E0910E01ED +:1035D000F0910F01E80FF91F1082019680319105DB +:1035E000A9F708959091D901892B8093D901089565 +:1035F00080959091D90189238093D90108951092E3 +:10360000D90108959091D801892B8093D80108950C +:1036100080959091D80189238093D80108951092C4 +:10362000D80108959091D701892B8093D7010895EF +:1036300080959091D70189238093D70108951092A6 +:10364000D70108958093C60108951092C601089588 +:1036500080910E0190910F01FC0131969C01205F39 +:103660003F4F80E0919191118F5FE217F307D1F7FF +:103670000895E0910E01F0910F018091D9018083AE +:10368000E0910E01F0910F0190818091D801892B7A +:103690008083E0910E01F0910F0190818091D7011C +:1036A000892B80838091C601882361F0E0910E010F +:1036B000F0910F019081892B80830E94281B81113A +:1036C0001092C60180910E0190910F010C94671029 +:1036D00020E0009739F0AC01415051098423952333 +:1036E0002F5FF7CF822F0895CF92DF92EF92FF9254 +:1036F0006C01EE24FF24C114D104E104F10421F093 +:10370000C701B60120E101C020E0C72ED82EE92E66 +:10371000FF24C114D104E104F10419F0285FC701AA +:10372000B6016B017C0154E0F694E794D794C794FA +:103730005A95D1F7C114D104E104F10419F02C5FBA +:10374000C701B6016B017C0142E0F694E794D7947F +:10375000C7944A95D1F7C114D104E104F10419F0DA +:103760002E5FC701B601DC01CB01B695A7959795F1 +:103770008795892B8A2B8B2B09F02F5F822FFF9047 +:10378000EF90DF90CF9008958091F101843021F186 +:103790001092DB0120E488E190E00FB6F894A89540 +:1037A000809360000FBE2093600080E00E94540967 +:1037B00083B7817F846083BF83B7816083BF789440 +:1037C000889583B78E7F83BF88E10FB6F894809386 +:1037D0006000109260000FBE0895089508950E9441 +:1037E000ED1B0E94AB030E94EE1B0E94A00491E01F +:1037F000811101C090E0892F08950E94F4140E9465 +:103800005B100C94540982E084BD93E095BD9AEF5F +:1038100097BD80936E0008952FB7F8948091DC01D6 +:103820009091DD01A091DE01B091DF012FBF0895DD +:10383000CF92DF92EF92FF920F931F932FB7F894DE +:103840004091DC015091DD016091DE017091DF015A +:103850002FBF6A017B01EE24FF248C0120E030E0C1 +:10386000C016D106E206F30610F4415051099A0140 +:10387000281B390BC9011F910F91FF90EF90DF902A +:10388000CF9008951F920F920FB60F9211248F932D +:103890009F93AF93BF938091DC019091DD01A09144 +:1038A000DE01B091DF010196A11DB11D8093DC0105 +:1038B0009093DD01A093DE01B093DF01BF91AF9142 +:1038C0009F918F910F900FBE0F901F9018950E949F +:1038D000580DF8942FEF87EA91E6215080409040F0 +:1038E000E1F700C0000087E090EBDC018093FB0172 +:1038F0009093FC01A093FD01B093FE019CE088E150 +:103900000FB6F894A895809360000FBE9093600066 +:10391000FFCFEF92FF920F931F93CF93DF93D82F98 +:10392000CDE08C2F0E94990405E010E0E82EF12CE8 +:10393000C701002E02C0959587950A94E2F780FF93 +:1039400009C0602F7C2F80E00E946406D81302C05B +:1039500081E006C00150110958F7C15010F780E00E +:10396000DF91CF911F910F91FF90EF900895CF932A +:10397000C82F8CE20E94891C882321F08C2FCF91C4 +:103980000C94891C80E0CF910895CF930E940C1E67 +:10399000811102C00E94F21DC5E6C15049F00E948B +:1039A000AB038FE39CE90197F1F700C00000F5CF6E +:1039B00089E20E94B71C811113C18AE20E94B71CE0 +:1039C00081110E94F21D85E00E94B71C81110E94A6 +:1039D000671C0E94171E8093DA0187E00E94B71CC3 +:1039E0008823A9F18BE10E94B71C882351F08091B4 +:1039F000DA0181FB222720F991E0922790FB81F9DF +:103A00000EC08EE00E94B71C882361F08091DA011D +:103A100082FB222720F991E0922790FB82F9809384 +:103A2000DA0115C080E10E94B71C9091DA01882369 +:103A300041F093FB222720F981E0822780FB93F954 +:103A400004C0892F809580FB90F99093DA018091D2 +:103A5000DA010E941B1E0E94291E8093FA0180EE4B +:103A60000E94B71C882341F08091FA01982F90950D +:103A700090FB80F98093FA0189E30E94B71C8823A8 +:103A800059F08091FA0181FB222720F991E09227D9 +:103A900090FB81F98093FA0182EE0E94B71C882383 +:103AA00059F08091FA0182FB222720F991E09227B8 +:103AB00090FB82F98093FA0186EE0E94B71C88235E +:103AC00059F08091FA0183FB222720F991E0922797 +:103AD00090FB83F98093FA0183EE0E94B71C882340 +:103AE00059F08091FA0184FB222720F991E0922776 +:103AF00090FB84F98093FA0185E30E94B71C882328 +:103B000059F08091FA0185FB222720F991E0922754 +:103B100090FB85F98093FA0181E30E94B71C88230A +:103B200059F08091FA0186FB222720F991E0922733 +:103B300090FB86F98093FA0181E10E94B71C8823EB +:103B400059F08091FA0187FB222720F991E0922712 +:103B500090FB87F98093FA018091FA010E942D1E53 +:103B60008091FA0187FB882780F980930D0187E215 +:103B70000E94B71CC82F8EE10E94B71C8111C26041 +:103B80008FE10E94B71C8111C46080E20E94B71CC3 +:103B90008111C86081E20E94B71C8111C06182E27C +:103BA0000E94B71C8111C06283E20E94B71C811180 +:103BB000C06484E20E94B71C882311F0C06802C070 +:103BC000CC2329F08C2F0E94241E6C2F03C00E944E +:103BD000201E682F70E080E090E0CF910C94B41824 +:103BE000CF9108956DEE7EEF80E090E00E945E241C +:103BF00060E082E090E00E944C2460E083E090E08E +:103C00000E944C2460E084E090E00E944C2460E03C +:103C100085E090E00C944C2480E090E00E944624E3 +:103C200021E08D3E9E4F09F020E0822F089582E032 +:103C300090E00C943E24682F82E090E00C944C2499 +:103C400083E090E00C943E24682F83E090E00C9495 +:103C50004C2484E090E00C943E24682F84E090E0B3 +:103C60000C944C248091E20180FF0BC06091130101 +:103C700085E0689FB00111247595679575956795E6 +:103C80002BC081FF09C06091130185E0689FB001DE +:103C900011247595679520C082FF07C060911301BC +:103CA00085E0689FB001112417C09091E30199232A +:103CB000D1F060911201961788F72091130185E0E9 +:103CC000289F90011124929FA001939F500D1124D1 +:103CD00070E0CA010E9410246038710540F461153B +:103CE000710539F002C065E070E0862F08958FE716 +:103CF000089581E008958091E20180FF08C06091FD +:103D0000110170E0759567957595679521C081FFE4 +:103D100006C06091110170E07595679519C082FF2A +:103D200004C06091110170E010C09091E3019923EB +:103D3000C1F0609110019617A0F780911101899F41 +:103D4000C001112470E00E9410246038710528F42D +:103D50006115710521F0862F08958FE7089581E0A0 +:103D6000089561E070E0F4CF803F21F40E94321E9C +:103D7000819504C0813F29F40E94321E8093E601A0 +:103D80000895823F21F40E94321E819504C0833F32 +:103D900029F40E94321E8093E5010895893F19F4A9 +:103DA0000E947B1E05C08A3F31F40E947B1E8195D4 +:103DB0008093E70108958B3F21F40E947B1E81953B +:103DC00004C08C3F29F40E947B1E8093E801089573 +:103DD000843F21F48091E401816017C0853F21F484 +:103DE0008091E401826011C0863F21F48091E4015A +:103DF00084600BC0873F21F48091E401886005C096 +:103E0000883F31F48091E40180618093E40108955A +:103E10008D3F21F48091E20181600BC08E3F21F43F +:103E20008091E201826005C08F3F29F48091E20118 +:103E300084608093E2010895803F39F48091E60127 +:103E400087FF6CC01092E60169C0813F29F4809120 +:103E5000E6011816BCF362C09091E501823F29F497 +:103E600097FF5CC01092E50159C0833F19F4191601 +:103E7000CCF354C0893F41F48091E70118160CF04F +:103E80004DC01092E7014AC08A3F29F48091E701B2 +:103E900087FF44C0F6CF8B3F39F48091E80187FF5C +:103EA0003DC01092E8013AC08C3F29F48091E801AE +:103EB0001816BCF333C0843F21F48091E4018E7F57 +:103EC00017C0853F21F48091E4018D7F11C0863FAA +:103ED00021F48091E4018B7F0BC0873F21F4809116 +:103EE000E401877F05C0883F31F48091E4018F7E33 +:103EF0008093E40113C08D3F21F48091E2018E7F15 +:103F00000BC08E3F21F48091E2018D7F05C08F3F71 +:103F100029F48091E2018B7F8093E2018091E50199 +:103F200081110EC08091E60181110AC08091E701E4 +:103F3000811106C08091E801811102C01092E30155 +:103F4000089584EE91E00E9472100E940C1C9093E0 +:103F5000E1018093E00108951F93CF93DF93809157 +:103F6000E0019091E1010E94181CAC019091E301E5 +:103F7000992321F02091140130E006C02091150111 +:103F80008AE0289F900111244217530708F486C045 +:103F90008091E501C091E601D091E7011091E8011F +:103FA000811107C0C11176C0D11174C0111172C046 +:103FB00075C09F3F19F09F5F9093E301181624F49A +:103FC0000E94321E8093E5018091E50187FF05C0C4 +:103FD0000E94321E81958093E5011C1624F40E94F4 +:103FE000321E8093E6018091E60187FF05C00E94A2 +:103FF000321E81958093E6016091E501662339F1D7 +:10400000C091E601CC2319F1772767FD7095872FC2 +:10401000972F0E94212323E333E343E35FE30E94CE +:1040200085230E94EE226093E5016C2F772767FDC0 +:104030007095872F972F0E94212323E333E343E3D7 +:104040005FE30E9485230E94EE226093E6011D1625 +:1040500024F40E947B1E8093E7018091E70187FF93 +:1040600005C00E947B1E81958093E701111624F400 +:104070000E947B1E8093E8018091E80187FF05C0C4 +:104080000E947B1E81958093E801DF91CF911F9163 +:104090000C94A11F9F3F09F08ECF96CFDF91CF9157 +:1040A0001F910895E4EEF1E085E0DF011D928A950D +:1040B000E9F71092E3011092E2010895833081F153 +:1040C00028F4813059F08230D1F00895853009F418 +:1040D00049C0B8F1863009F456C0089580911501A1 +:1040E000262F30E0280F311D2F3F310524F4680FB3 +:1040F0006093150108958FEF8093150108958091C5 +:104100001401262F30E0280F311D2F3F310524F4F4 +:10411000680F6093140108958FEF80931401089540 +:1041200080911301262F30E0280F311D2F3F3105DC +:1041300024F4680F6093130108958FEF80931301A7 +:10414000089580911201262F30E0280F311D2F3F56 +:10415000310524F4680F6093120108958FEF809366 +:104160001201089580911101262F30E0280F311D92 +:104170002F3F310524F4680F6093110108958FEFEC +:1041800080931101089580911001262F30E0280FAF +:10419000311D2F3F310524F4680F609310010895FD +:1041A0008FEF809310010895833011F128F481304E +:1041B00049F0823091F00895853081F120F1863008 +:1041C000C1F1089580911501681720F4861B809332 +:1041D0001501089510921501089580911401681732 +:1041E00020F4861B80931401089510921401089501 +:1041F00080911301681720F4861B809313010895A2 +:1042000010921301089580911201681720F4861B03 +:104210008093120108951092120108958091110166 +:10422000681720F4861B80931101089510921101E4 +:10423000089580911001681720F4861B8093100167 +:1042400008951092100108950F931F938D3109F472 +:104250006BC008F03FC08E3009F47FC0C0F48730D7 +:1042600009F469C068F4863009F0B1C08091DA01C0 +:10427000817F8E7F8093DA0181E08093EA01A8C07C +:10428000883009F4A2C08B3009F49FC0A0C08631E9 +:1042900009F49BC078F4803109F472C0813109F0CF +:1042A00096C00E94F41490910D0181E089278093BB +:1042B0000D018BC0893109F488C08B3109F087C0AA +:1042C0008091DA0181FB222720F991E0922790FB6F +:1042D00081F94CC0853309F470C048F4873209F481 +:1042E0006CC008F459C0893209F467C070C08334C7 +:1042F00038F48A3308F04EC0883309F466C067C0CA +:10430000833409F45AC0883409F061C00E94F4145F +:104310000FEF13ED20E3015010402040E1F700C003 +:1043200000000E94671C51C00E94A8220E945B10DE +:104330000E9454094AC09091DA01892F80958170BA +:1043400080FB90F929F0966098609093DA0140C064 +:10435000997F977F9093DA0138C08091DA0182FBD0 +:10436000222720F991E0922790FB82F98093DA01CD +:10437000992359F18091DA0181608093DA0125C097 +:104380008091DA0183FB222720F991E0922790FBAC +:1043900083F9ECCF895301C08D5141E050E060E0DA +:1043A00070E08A019B0104C0000F111F221F331F00 +:1043B0008A95D2F7C901B80104C061E070E080E0DD +:1043C00090E00E94B4180E94F41481E001C080E0E3 +:1043D0001F910F91089580E0089580E00895CF9394 +:1043E000C82F8091EA01813079F018F08230E9F12C +:1043F00087C0E0910E01F0910F018081813169F059 +:10440000823209F07FC009C0E0910E01F0910F01E6 +:104410008081813111F0823261F48C2F0E94EB2176 +:10442000811104C08C2F0E9424211DC081E090E0E6 +:104430001AC08C2F0E94ED21811114C0C43179F073 +:1044400048F4CB3079F0C03109F060C082E080934D +:10445000EA0108C0C93219F0C83321F057C01092E0 +:10446000EA0154C081E0817053C0C93289F118F566 +:10447000C43171F1A8F4C73009F046C08AE08093D6 +:10448000150194E19093140193E0909313018093AC +:10449000120188E08093110188E28093100134C0FA +:1044A000CE51C63088F5EC2FF0E0E65DFE4F8081FE +:1044B0008093E90129C0CE34E9F020F4CB3421F512 +:1044C0006AE013C0C13579F0C235F1F461E00DC086 +:1044D0008091E901882319F01092E90115C081E06B +:1044E0008093EA0115C061E006C08091E9010E9455 +:1044F0005E200AC06AE08091E9010E94D42004C0D5 +:104500001092EA0180E004C081E002C080E0ABCFFD +:10451000CF910895E1E8F0E0808188608083808118 +:10452000816080838FB7F89493E09093890090ED39 +:10453000909388008FBF0895EFE6F0E0808182605D +:1045400080830895EFE6F0E080818D7F8083089579 +:10455000EFE6F0E0908182E08927808308951F9242 +:104560000F920FB60F9211242F933F934F935F93A7 +:104570006F937F938F939F93AF93BF93EF93FF932B +:104580008091EB019091EC0101969093EC01809366 +:10459000EB01811103C082E00E945409E091EC011B +:1045A000E695E695F0E0ED58FA4FE4918091EB0145 +:1045B0008E1303C080E00E945409FF91EF91BF91D8 +:1045C000AF919F918F917F916F915F914F913F91AB +:1045D0002F910F900FBE0F901F90189504D06894E4 +:1045E000B1118DC0089570D088F09F5790F0B92F09 +:1045F0009927B751A0F0D1F0660F771F881F991F38 +:104600001AF0BA95C9F712C0B13081F077D0B1E095 +:10461000089574C0672F782F8827B85F39F0B93FA5 +:10462000CCF3869577956795B395D9F73EF4909539 +:104630008095709561957F4F8F4F9F4F0895E894B7 +:1046400009C097FB3EF490958095709561957F4FDA +:104650008F4F9F4F9923A9F0F92F96E9BB27939588 +:10466000F695879577956795B795F111F8CFFAF498 +:10467000BB0F11F460FF1BC06F5F7F4F8F4F9F4FC9 +:1046800016C0882311F096E911C0772321F09EE827 +:10469000872F762F05C0662371F096E8862F70E08D +:1046A00060E02AF09A95660F771F881FDAF7880F67 +:1046B0009695879597F9089557FD9058440F551F83 +:1046C00059F05F3F71F04795880F97FB991F61F094 +:1046D0009F3F79F087950895121613061406551F0B +:1046E000F2CF4695F1DF08C0161617061806991F77 +:1046F000F1CF86957105610508940895E894BB276C +:1047000066277727CB0197F908950BD078C069D039 +:1047100028F06ED018F0952309F05AC05FC011241C +:10472000EECFCADFA0F3959FD1F3950F50E0551F50 +:10473000629FF001729FBB27F00DB11D639FAA27F6 +:10474000F00DB11DAA1F649F6627B00DA11D661F45 +:10475000829F2227B00DA11D621F739FB00DA11D66 +:10476000621F839FA00D611D221F749F3327A00D20 +:10477000611D231F849F600D211D822F762F6A2FBC +:1047800011249F5750408AF0E1F088234AF0EE0F41 +:10479000FF1FBB1F661F771F881F91505040A9F74E +:1047A0009E3F510570F014C0AACF5F3FECF3983ED6 +:1047B000DCF3869577956795B795F795E7959F5FB5 +:1047C000C1F7FE2B880F911D9695879597F908954F +:1047D00097F99F6780E870E060E008959FEF80ECB4 +:1047E000089500240A941616170618060906089557 +:1047F00000240A9412161306140605060895092EBD +:104800000394000C11F4882352F0BB0F40F4BF2B2B +:1048100011F460FF04C06F5F7F4F8F4F9F4F08956B +:1048200097FB072E16F4009407D077FD09D00E945D +:104830002A2407FC05D03EF4909581959F4F08955A +:10484000709561957F4F0895EE0FFF1F0590F491CD +:10485000E02D0994AA1BBB1B51E107C0AA1FBB1F77 +:10486000A617B70710F0A61BB70B881F991F5A95FC +:10487000A9F780959095BC01CD010895F999FECFD7 +:1048800092BD81BDF89A992780B50895A8E1B0E05E +:1048900042E050E00C946624262FF999FECF92BD99 +:1048A00081BDF89A019700B4021639F01FBA20BDF5 +:1048B0000FB6F894FA9AF99A0FBE08950196272F29 +:1048C0000E944D240C944C24DC01CB01FC01F9998D +:1048D000FECF06C0F2BDE1BDF89A319600B40D924C +:0C48E00041505040B8F70895F894FFCF05 +:1048EC0002205609E409C1098D0959090101C701C2 +:1048FC0028080A03140A3F4D36393405E704B1047D +:10490C0078040B0424043D04560401020304050638 +:04491C00070809007F +:00000001FF diff --git a/keyboards/ergodox_ez/keymaps/alexjj/keymap.c b/keyboards/ergodox_ez/keymaps/alexjj/keymap.c new file mode 100644 index 0000000000..448f62da02 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/alexjj/keymap.c @@ -0,0 +1,238 @@ +#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 +#define UNIC 3 // unicode entry layer + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* Keymap 0: Basic layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | ESC | 1! | 2@ | 3# | 4$ | 5% | 6^ | | 7& | 8* | 9( | 0) | -_ | += | BkSp | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Tab | Q | W | E | R | T | { | | } | Y | U | I | O | P | |\ | + * |--------+------+------+------+------+------| [ | | ] |------+------+------+------+------+--------| + * | Win | A | S | D | F | G |------| |------| H | J | K | L | :; | '" | + * |--------+------+------+------+------+------| Home | | End |------+------+------+------+------+--------| + * | LShift |Z/Alt | X | C | V | B | | | | N | M | , | . | Alt | RShift | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * |LCtrl | COPY | PASTE| Left | Right| | Down | Up |Hyper | `~ | RCtrl | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * Hyper = Ctrl+Super+Alt+Shift | ~L3 | F5 | | F2 | ~L2 | + * ,------|------|------| |------+------+------. + * | | | PgUp | | Ins | | | + * | Enter| BkSp |------| |------| ~L1 |Space | + * | | | PgDn | | Del | | | + * `--------------------' `--------------------' + */ +// If it accepts an argument (i.e, is a function), it doesn't need KC_. +// Otherwise, it needs KC_* +[BASE] = KEYMAP( // layer 0 : default + // left hand + KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_LBRC, + KC_LGUI, KC_A, KC_S, KC_D, KC_F, KC_G, + KC_LSFT, ALT_T(KC_Z), KC_X, KC_C, KC_V, KC_B, KC_HOME, + KC_LCTRL, LCTL(KC_C), LCTL(KC_V), KC_LEFT,KC_RGHT, + KC_FN3, KC_F5, + KC_PGUP, + KC_ENT,KC_BSPC,KC_PGDN, + // right hand + KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, + KC_RBRC, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, + KC_H, KC_J, KC_K, KC_L, KC_SCLN,KC_QUOT, + KC_END, KC_N, KC_M, KC_COMM,KC_DOT, KC_SLSH, KC_RSFT, + KC_DOWN,KC_UP, ALL_T(KC_NO),KC_GRV, KC_RCTRL, + KC_F2, KC_FN2, + KC_INS, + KC_DELT,KC_FN1, KC_SPC + ), +/* Keymap 1: Symbol Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | F6 | | F7 | F8 | F9 | F10 | F11 | F12 |PrintScr| + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | ! | @ | { | } | | | | | | Up | 7 | 8 | 9 | * | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | # | $ | ( | ) | ` |------| |------| Down | 4 | 5 | 6 | + | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | % | ^ | [ | ] | ~ | | | | & | 1 | 2 | 3 | \ | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | £ | | | | | | . | 0 | = |Alt+F4| + * `----------------------------------' `----------------------------------' + * ↑ ,-------------. ,-------------. + * THERE! | | | | | | + * ,------|------|------| |------+------+------. + * CAD = Ctrl + Alt + Delete | | | | | | | | + * | | |------| |------| | | + * | | | | | CAD | | | + * `--------------------' `--------------------' + */ +// SYMBOLS +[SYMB] = KEYMAP( + // left hand + KC_TRNS,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, + KC_TRNS,KC_EXLM,KC_AT, KC_LCBR,KC_RCBR,KC_PIPE,KC_TRNS, + KC_TRNS,KC_HASH,KC_DLR, KC_LPRN,KC_RPRN,KC_GRV, + KC_TRNS,KC_PERC,KC_CIRC,KC_LBRC,KC_RBRC,KC_TILD,KC_TRNS, + KC_TRNS,M(3),KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS, + KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS, + // right hand + KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, + KC_TRNS, KC_UP, KC_7, KC_8, KC_9, KC_ASTR, KC_TRNS, + KC_DOWN, KC_4, KC_5, KC_6, KC_PLUS, KC_TRNS, + KC_TRNS, KC_AMPR, KC_1, KC_2, KC_3, KC_BSLS, KC_TRNS, + KC_TRNS,KC_DOT, KC_0, KC_EQL, LALT(KC_F4), + KC_TRNS, KC_TRNS, + KC_TRNS, + LCTL(LALT(KC_DEL)), KC_TRNS, KC_TRNS +), +/* Keymap 2: Media and mouse keys + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | TEENSY | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | MsUp | | | | | | | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | |MsLeft|MsDown|MsRght| |------| |------| | | | | | Play | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | | Prev | Next | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | Lclk | Rclk | |VolDn |VolUp | Mute | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | |Brwser| + * | | |------| |------| |Back | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// MEDIA AND MOUSE +[MDIA] = KEYMAP( + RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_BTN1, KC_BTN2, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + // right hand + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, + KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, + KC_VOLD, KC_VOLU, KC_MUTE, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_WBAK +), +/* Keymap 3: Unicode Entry + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | Alt | 1 | 2 | 3 | 4 | 5 | 6 | | 7 | 8 | 9 | 0 | + | + | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Alt | | | E | | | | | | | 7 | 8 | 9 | + | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | Alt | A | | D | F | |------| |------| | 4 | 5 | 6 | + | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | Alt | | | C | | B | | | | | 1 | 2 | 3 | + | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | Alt | Alt | Alt | | | | 0 | 0 | 0 | + | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * WINDOWS ONLY SETUP!! | ~L3 | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | Alt | Alt |------| |------| Alt | Alt | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// If it accepts an argument (i.e, is a function), it doesn't need KC_. +// Otherwise, it needs KC_* +[UNIC] = KEYMAP( // layer 3 : Unicode Entry + // left hand + KC_LALT, KC_P1, KC_P2, KC_P3, KC_P4, KC_P5, KC_P6, + KC_LALT, KC_TRNS, KC_TRNS, KC_E, KC_TRNS, KC_TRNS, KC_TRNS, + KC_LALT, KC_A, KC_TRNS, KC_D, KC_F, KC_TRNS, + KC_LALT, KC_TRNS, KC_TRNS, KC_C, KC_TRNS, KC_B, KC_TRNS, + KC_LALT, KC_LALT, KC_LALT, KC_TRNS,KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_LALT,KC_LALT, KC_TRNS, + // right hand + KC_P7, KC_P8, KC_P9, KC_P0, KC_PPLS,KC_PPLS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_P7, KC_P8, KC_P9, KC_PPLS, KC_TRNS, + KC_TRNS, KC_P4, KC_P5, KC_P6, KC_PPLS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_P1, KC_P2, KC_P3, KC_PPLS, KC_TRNS, + KC_P0, KC_P0, KC_P0, KC_PPLS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS,KC_LALT, KC_LALT + ), +}; + + +const uint16_t PROGMEM fn_actions[] = { + [1] = ACTION_LAYER_TAP_TOGGLE(SYMB), // FN1 - Momentary Layer 1 (Symbols) + [2] = ACTION_LAYER_TAP_TOGGLE(MDIA), // FN2 - Momentary Layer 2 (Media) + [3] = ACTION_LAYER_TAP_TOGGLE(UNIC) // FN3 - Momentary Layer 3 (Unicode entry) +}; + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + // MACRODOWN only works in this function + switch(id) { + case 0: + if (record->event.pressed) { + register_code(KC_RSFT); + } else { + unregister_code(KC_RSFT); + } + case 3: // this would trigger when you hit a key mapped as M(3) + if (record->event.pressed) { + return MACRO( I(255), D(LALT), T(P1), T(P5), T(P6), U(LALT), END ); + } + break; + } + return MACRO_NONE; +}; + +// Runs just one time when the keyboard initializes. +void matrix_init_user(void) { + +}; + +// Runs constantly in the background, in a loop. +void matrix_scan_user(void) { + + uint8_t layer = biton32(layer_state); + + ergodox_board_led_off(); + ergodox_right_led_1_off(); + ergodox_right_led_2_off(); + ergodox_right_led_3_off(); + switch (layer) { + // TODO: Make this relevant to the ErgoDox EZ. + case 1: + ergodox_right_led_1_on(); + break; + case 2: + ergodox_right_led_2_on(); + break; + case 3: + ergodox_right_led_3_on(); + break; + default: + // none + break; + } + +}; diff --git a/keyboards/ergodox_ez/keymaps/alexjj/readme.md b/keyboards/ergodox_ez/keymaps/alexjj/readme.md new file mode 100644 index 0000000000..239e32d399 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/alexjj/readme.md @@ -0,0 +1,179 @@ +Englishman in New York +=========================== + +:microphone: :tea: + +About +------ + +After using the massdrop configurator to get the basics, I wanted to add a +little extra to my ergodox. Notably the Hyper hotkey, the press and hold, +and a way to have my beloved £ :pound: symbol available[1](#unicode). Why not switch to a GB +layout? Well the computers I use are US keymap'd and I can't always change +that. Plus I've got used to 2/@ and 3/# and moving to the ergodox was hard +enough. :sweat_smile: + +I started from the default and edited from there as I needed. It's somewhat +similar to a regular layout, particularly R1 and shift/controls. I ended up +with a few keys that were blank, so I'm testing out some shortcuts. Alt+F4 for +quitting things in Windows, is one example, but I felt it was better placed on +the 1st layer - in case of fat fingers. + +Layout +------- + +![Layout](rl-layout.jpg "Isn't it lovely") + +### Base Layer + +``` +,--------------------------------------------------. ,--------------------------------------------------. +| ESC | 1! | 2@ | 3# | 4$ | 5% | 6^ | | 7& | 8* | 9( | 0) | -_ | += | BkSp | +|--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| +| Tab | Q | W | E | R | T | { | | } | Y | U | I | O | P | |\ | +|--------+------+------+------+------+------| [ | | ] |------+------+------+------+------+--------| +| Win | A | S | D | F | G |------| |------| H | J | K | L | :; | '" | +|--------+------+------+------+------+------| Home | | End |------+------+------+------+------+--------| +| LShift |Z/Alt | X | C | V | B | | | | N | M | , | . | Alt | RShift | +`--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + |LCtrl | COPY | PASTE| Left | Right| | Down | Up |Hyper | `~ | RCtrl | + `----------------------------------' `----------------------------------' + ,-------------. ,-------------. + Hyper = Ctrl+Super+Alt+Shift | ~L3 | F5 | | F2 | ~L2 | + ,------|------|------| |------+------+------. + | | | PgUp | | Ins | | | + | Enter| BkSp |------| |------| ~L1 |Space | + | | | PgDn | | Del | | | + `--------------------' `--------------------' +``` + +### Symbol Layer + +``` +,--------------------------------------------------. ,--------------------------------------------------. +| | F1 | F2 | F3 | F4 | F5 | F6 | | F7 | F8 | F9 | F10 | F11 | F12 |PrintScr| +|--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| +| | ! | @ | { | } | | | | | | Up | 7 | 8 | 9 | * | | +|--------+------+------+------+------+------| | | |------+------+------+------+------+--------| +| | # | $ | ( | ) | ` |------| |------| Down | 4 | 5 | 6 | + | | +|--------+------+------+------+------+------| | | |------+------+------+------+------+--------| +| | % | ^ | [ | ] | ~ | | | | & | 1 | 2 | 3 | \ | | +`--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + | | £ | | | | | | . | 0 | = |Alt+F4| + `----------------------------------' `----------------------------------' + ↑ ,-------------. ,-------------. + THERE! | | | | | | + ,------|------|------| |------+------+------. + CAD = Ctrl + Alt + Delete | | | | | | | | + | | |------| |------| | | + | | | | | CAD | | | + `--------------------' `--------------------' +``` +### Media Layer + +Not touched this, not used either. + +``` +,--------------------------------------------------. ,--------------------------------------------------. +| TEENSY | | | | | | | | | | | | | | | +|--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| +| | | | MsUp | | | | | | | | | | | | +|--------+------+------+------+------+------| | | |------+------+------+------+------+--------| +| | |MsLeft|MsDown|MsRght| |------| |------| | | | | | Play | +|--------+------+------+------+------+------| | | |------+------+------+------+------+--------| +| | | | | | | | | | | | Prev | Next | | | +`--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + | | | | Lclk | Rclk | |VolDn |VolUp | Mute | | | + `----------------------------------' `----------------------------------' + ,-------------. ,-------------. + | | | | | | + ,------|------|------| |------+------+------. + | | | | | | |Brwser| + | | |------| |------| |Back | + | | | | | | | | + `--------------------' `--------------------' +``` +### Unicode Layer + +Used to enter/test unicode input on Windows. All numbers are numpad keys. + +``` +,--------------------------------------------------. ,--------------------------------------------------. +| Alt | 1 | 2 | 3 | 4 | 5 | 6 | | 7 | 8 | 9 | 0 | + | + | | +|--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| +| Alt | | | E | | | | | | | 7 | 8 | 9 | + | | +|--------+------+------+------+------+------| | | |------+------+------+------+------+--------| +| Alt | A | | D | F | |------| |------| | 4 | 5 | 6 | + | | +|--------+------+------+------+------+------| | | |------+------+------+------+------+--------| +| Alt | | | C | | B | | | | | 1 | 2 | 3 | + | | +`--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + | Alt | Alt | Alt | | | | 0 | 0 | 0 | + | | + `----------------------------------' `----------------------------------' + ,-------------. ,-------------. + WINDOWS ONLY SETUP!! | ~L3 | | | | | + ,------|------|------| |------+------+------. + | | | | | | | | + | Alt | Alt |------| |------| Alt | Alt | + | | | | | | | | + `--------------------' `--------------------' +``` + + +Usage +------ + +~L1 / L2 / L3 will momentarily switch to a layer if held and another key is pressed. +If pressed and released will remain on layer until pressed again. + +### Unicode + +This layout is for Windows only. To enter a character Press and Hold Alt, type + and hex code then release Alt. + +Changelog +----------- + +### [0.2.1] - 2016-04-05 + +* Changed £ to alt code in Windows. Windows sucks at unicode. + +### [0.2.0] - 2016-03-27 + +* Added unicode layer +* Moved Copy/Paste to left hand side +* Switched Enter and Space (again) +* Added L3 (unicode layer) toggle +* Removed Press and Hold for Alt on right hand size (/) +* Swapped Volume Up/Down to match arrows +* Tried fixing £ macro +* Removed * in the matrix function things (upstream change) + +### [0.1.1] - 2016-03-23 + +* Changed £ input to a macro + + +### [0.1.0] - 2016-03-22 + +After actually using the keyboard, I've made some changes: + +* Swapped Enter and Space +* Moved backspace to thumb keys (top right still remains) +* Added Ctrl+Alt+Delete +* Added Teensy Reset on 2nd layer +* Switched Up and Down +* Changed copy/paste to be Ctrl+c and Ctrl+v as KC_COPY/PASTE didn't work (in Windows) +* Moved ~L2 to replace +L1 after learning how the function works (notes above) +* Hopefully fixed GBP symbol (unicode enabled in MakeFile) + +### [0.0.1] - 2016-03-21 + +First version + + +Issues +------- + +Space for feedback and notes for future improvements + +---- +1: For Windows only, and you have to edit the [registry](https://en.wikipedia.org/wiki/Unicode_input#Hexadecimal_code_input). diff --git a/keyboards/ergodox_ez/keymaps/alexjj/rl-layout.jpg b/keyboards/ergodox_ez/keymaps/alexjj/rl-layout.jpg new file mode 100644 index 0000000000..e4e92bf464 Binary files /dev/null and b/keyboards/ergodox_ez/keymaps/alexjj/rl-layout.jpg differ diff --git a/keyboards/ergodox_ez/keymaps/algernon/.gitignore b/keyboards/ergodox_ez/keymaps/algernon/.gitignore new file mode 100644 index 0000000000..a075e32bf4 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/algernon/.gitignore @@ -0,0 +1 @@ +/compiled.hex diff --git a/keyboards/ergodox_ez/keymaps/algernon/COPYING b/keyboards/ergodox_ez/keymaps/algernon/COPYING new file mode 100644 index 0000000000..94a9ed024d --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/algernon/COPYING @@ -0,0 +1,674 @@ + GNU GENERAL PUBLIC LICENSE + Version 3, 29 June 2007 + + Copyright (C) 2007 Free Software Foundation, Inc. + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The GNU General Public License is a free, copyleft license for +software and other kinds of works. + + The licenses for most software and other practical works are designed +to take away your freedom to share and change the works. By contrast, +the GNU General Public License is intended to guarantee your freedom to +share and change all versions of a program--to make sure it remains free +software for all its users. We, the Free Software Foundation, use the +GNU General Public License for most of our software; it applies also to +any other work released this way by its authors. You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +them if you wish), that you receive source code or can get it if you +want it, that you can change the software or use pieces of it in new +free programs, and that you know you can do these things. + + To protect your rights, we need to prevent others from denying you +these rights or asking you to surrender the rights. Therefore, you have +certain responsibilities if you distribute copies of the software, or if +you modify it: responsibilities to respect the freedom of others. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must pass on to the recipients the same +freedoms that you received. You must make sure that they, too, receive +or can get the source code. And you must show them these terms so they +know their rights. + + Developers that use the GNU GPL protect your rights with two steps: +(1) assert copyright on the software, and (2) offer you this License +giving you legal permission to copy, distribute and/or modify it. + + For the developers' and authors' protection, the GPL clearly explains +that there is no warranty for this free software. For both users' and +authors' sake, the GPL requires that modified versions be marked as +changed, so that their problems will not be attributed erroneously to +authors of previous versions. + + Some devices are designed to deny users access to install or run +modified versions of the software inside them, although the manufacturer +can do so. This is fundamentally incompatible with the aim of +protecting users' freedom to change the software. The systematic +pattern of such abuse occurs in the area of products for individuals to +use, which is precisely where it is most unacceptable. Therefore, we +have designed this version of the GPL to prohibit the practice for those +products. If such problems arise substantially in other domains, we +stand ready to extend this provision to those domains in future versions +of the GPL, as needed to protect the freedom of users. + + Finally, every program is threatened constantly by software patents. +States should not allow patents to restrict development and use of +software on general-purpose computers, but in those that do, we wish to +avoid the special danger that patents applied to a free program could +make it effectively proprietary. To prevent this, the GPL assures that +patents cannot be used to render the program non-free. + + The precise terms and conditions for copying, distribution and +modification follow. + + TERMS AND CONDITIONS + + 0. Definitions. + + "This License" refers to version 3 of the GNU General Public License. + + "Copyright" also means copyright-like laws that apply to other kinds of +works, such as semiconductor masks. + + "The Program" refers to any copyrightable work licensed under this +License. Each licensee is addressed as "you". "Licensees" and +"recipients" may be individuals or organizations. + + To "modify" a work means to copy from or adapt all or part of the work +in a fashion requiring copyright permission, other than the making of an +exact copy. The resulting work is called a "modified version" of the +earlier work or a work "based on" the earlier work. + + A "covered work" means either the unmodified Program or a work based +on the Program. + + To "propagate" a work means to do anything with it that, without +permission, would make you directly or secondarily liable for +infringement under applicable copyright law, except executing it on a +computer or modifying a private copy. Propagation includes copying, +distribution (with or without modification), making available to the +public, and in some countries other activities as well. + + To "convey" a work means any kind of propagation that enables other +parties to make or receive copies. Mere interaction with a user through +a computer network, with no transfer of a copy, is not conveying. + + An interactive user interface displays "Appropriate Legal Notices" +to the extent that it includes a convenient and prominently visible +feature that (1) displays an appropriate copyright notice, and (2) +tells the user that there is no warranty for the work (except to the +extent that warranties are provided), that licensees may convey the +work under this License, and how to view a copy of this License. If +the interface presents a list of user commands or options, such as a +menu, a prominent item in the list meets this criterion. + + 1. Source Code. + + The "source code" for a work means the preferred form of the work +for making modifications to it. "Object code" means any non-source +form of a work. + + A "Standard Interface" means an interface that either is an official +standard defined by a recognized standards body, or, in the case of +interfaces specified for a particular programming language, one that +is widely used among developers working in that language. + + The "System Libraries" of an executable work include anything, other +than the work as a whole, that (a) is included in the normal form of +packaging a Major Component, but which is not part of that Major +Component, and (b) serves only to enable use of the work with that +Major Component, or to implement a Standard Interface for which an +implementation is available to the public in source code form. A +"Major Component", in this context, means a major essential component +(kernel, window system, and so on) of the specific operating system +(if any) on which the executable work runs, or a compiler used to +produce the work, or an object code interpreter used to run it. + + The "Corresponding Source" for a work in object code form means all +the source code needed to generate, install, and (for an executable +work) run the object code and to modify the work, including scripts to +control those activities. However, it does not include the work's +System Libraries, or general-purpose tools or generally available free +programs which are used unmodified in performing those activities but +which are not part of the work. For example, Corresponding Source +includes interface definition files associated with source files for +the work, and the source code for shared libraries and dynamically +linked subprograms that the work is specifically designed to require, +such as by intimate data communication or control flow between those +subprograms and other parts of the work. + + The Corresponding Source need not include anything that users +can regenerate automatically from other parts of the Corresponding +Source. + + The Corresponding Source for a work in source code form is that +same work. + + 2. Basic Permissions. + + All rights granted under this License are granted for the term of +copyright on the Program, and are irrevocable provided the stated +conditions are met. This License explicitly affirms your unlimited +permission to run the unmodified Program. The output from running a +covered work is covered by this License only if the output, given its +content, constitutes a covered work. This License acknowledges your +rights of fair use or other equivalent, as provided by copyright law. + + You may make, run and propagate covered works that you do not +convey, without conditions so long as your license otherwise remains +in force. You may convey covered works to others for the sole purpose +of having them make modifications exclusively for you, or provide you +with facilities for running those works, provided that you comply with +the terms of this License in conveying all material for which you do +not control copyright. Those thus making or running the covered works +for you must do so exclusively on your behalf, under your direction +and control, on terms that prohibit them from making any copies of +your copyrighted material outside their relationship with you. + + Conveying under any other circumstances is permitted solely under +the conditions stated below. Sublicensing is not allowed; section 10 +makes it unnecessary. + + 3. Protecting Users' Legal Rights From Anti-Circumvention Law. + + No covered work shall be deemed part of an effective technological +measure under any applicable law fulfilling obligations under article +11 of the WIPO copyright treaty adopted on 20 December 1996, or +similar laws prohibiting or restricting circumvention of such +measures. + + When you convey a covered work, you waive any legal power to forbid +circumvention of technological measures to the extent such circumvention +is effected by exercising rights under this License with respect to +the covered work, and you disclaim any intention to limit operation or +modification of the work as a means of enforcing, against the work's +users, your or third parties' legal rights to forbid circumvention of +technological measures. + + 4. Conveying Verbatim Copies. + + You may convey verbatim copies of the Program's source code as you +receive it, in any medium, provided that you conspicuously and +appropriately publish on each copy an appropriate copyright notice; +keep intact all notices stating that this License and any +non-permissive terms added in accord with section 7 apply to the code; +keep intact all notices of the absence of any warranty; and give all +recipients a copy of this License along with the Program. + + You may charge any price or no price for each copy that you convey, +and you may offer support or warranty protection for a fee. + + 5. Conveying Modified Source Versions. + + You may convey a work based on the Program, or the modifications to +produce it from the Program, in the form of source code under the +terms of section 4, provided that you also meet all of these conditions: + + a) The work must carry prominent notices stating that you modified + it, and giving a relevant date. + + b) The work must carry prominent notices stating that it is + released under this License and any conditions added under section + 7. This requirement modifies the requirement in section 4 to + "keep intact all notices". + + c) You must license the entire work, as a whole, under this + License to anyone who comes into possession of a copy. This + License will therefore apply, along with any applicable section 7 + additional terms, to the whole of the work, and all its parts, + regardless of how they are packaged. This License gives no + permission to license the work in any other way, but it does not + invalidate such permission if you have separately received it. + + d) If the work has interactive user interfaces, each must display + Appropriate Legal Notices; however, if the Program has interactive + interfaces that do not display Appropriate Legal Notices, your + work need not make them do so. + + A compilation of a covered work with other separate and independent +works, which are not by their nature extensions of the covered work, +and which are not combined with it such as to form a larger program, +in or on a volume of a storage or distribution medium, is called an +"aggregate" if the compilation and its resulting copyright are not +used to limit the access or legal rights of the compilation's users +beyond what the individual works permit. Inclusion of a covered work +in an aggregate does not cause this License to apply to the other +parts of the aggregate. + + 6. Conveying Non-Source Forms. + + You may convey a covered work in object code form under the terms +of sections 4 and 5, provided that you also convey the +machine-readable Corresponding Source under the terms of this License, +in one of these ways: + + a) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by the + Corresponding Source fixed on a durable physical medium + customarily used for software interchange. + + b) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by a + written offer, valid for at least three years and valid for as + long as you offer spare parts or customer support for that product + model, to give anyone who possesses the object code either (1) a + copy of the Corresponding Source for all the software in the + product that is covered by this License, on a durable physical + medium customarily used for software interchange, for a price no + more than your reasonable cost of physically performing this + conveying of source, or (2) access to copy the + Corresponding Source from a network server at no charge. + + c) Convey individual copies of the object code with a copy of the + written offer to provide the Corresponding Source. This + alternative is allowed only occasionally and noncommercially, and + only if you received the object code with such an offer, in accord + with subsection 6b. + + d) Convey the object code by offering access from a designated + place (gratis or for a charge), and offer equivalent access to the + Corresponding Source in the same way through the same place at no + further charge. You need not require recipients to copy the + Corresponding Source along with the object code. If the place to + copy the object code is a network server, the Corresponding Source + may be on a different server (operated by you or a third party) + that supports equivalent copying facilities, provided you maintain + clear directions next to the object code saying where to find the + Corresponding Source. Regardless of what server hosts the + Corresponding Source, you remain obligated to ensure that it is + available for as long as needed to satisfy these requirements. + + e) Convey the object code using peer-to-peer transmission, provided + you inform other peers where the object code and Corresponding + Source of the work are being offered to the general public at no + charge under subsection 6d. + + A separable portion of the object code, whose source code is excluded +from the Corresponding Source as a System Library, need not be +included in conveying the object code work. + + A "User Product" is either (1) a "consumer product", which means any +tangible personal property which is normally used for personal, family, +or household purposes, or (2) anything designed or sold for incorporation +into a dwelling. In determining whether a product is a consumer product, +doubtful cases shall be resolved in favor of coverage. For a particular +product received by a particular user, "normally used" refers to a +typical or common use of that class of product, regardless of the status +of the particular user or of the way in which the particular user +actually uses, or expects or is expected to use, the product. A product +is a consumer product regardless of whether the product has substantial +commercial, industrial or non-consumer uses, unless such uses represent +the only significant mode of use of the product. + + "Installation Information" for a User Product means any methods, +procedures, authorization keys, or other information required to install +and execute modified versions of a covered work in that User Product from +a modified version of its Corresponding Source. The information must +suffice to ensure that the continued functioning of the modified object +code is in no case prevented or interfered with solely because +modification has been made. + + If you convey an object code work under this section in, or with, or +specifically for use in, a User Product, and the conveying occurs as +part of a transaction in which the right of possession and use of the +User Product is transferred to the recipient in perpetuity or for a +fixed term (regardless of how the transaction is characterized), the +Corresponding Source conveyed under this section must be accompanied +by the Installation Information. But this requirement does not apply +if neither you nor any third party retains the ability to install +modified object code on the User Product (for example, the work has +been installed in ROM). + + The requirement to provide Installation Information does not include a +requirement to continue to provide support service, warranty, or updates +for a work that has been modified or installed by the recipient, or for +the User Product in which it has been modified or installed. Access to a +network may be denied when the modification itself materially and +adversely affects the operation of the network or violates the rules and +protocols for communication across the network. + + Corresponding Source conveyed, and Installation Information provided, +in accord with this section must be in a format that is publicly +documented (and with an implementation available to the public in +source code form), and must require no special password or key for +unpacking, reading or copying. + + 7. Additional Terms. + + "Additional permissions" are terms that supplement the terms of this +License by making exceptions from one or more of its conditions. +Additional permissions that are applicable to the entire Program shall +be treated as though they were included in this License, to the extent +that they are valid under applicable law. If additional permissions +apply only to part of the Program, that part may be used separately +under those permissions, but the entire Program remains governed by +this License without regard to the additional permissions. + + When you convey a copy of a covered work, you may at your option +remove any additional permissions from that copy, or from any part of +it. (Additional permissions may be written to require their own +removal in certain cases when you modify the work.) You may place +additional permissions on material, added by you to a covered work, +for which you have or can give appropriate copyright permission. + + Notwithstanding any other provision of this License, for material you +add to a covered work, you may (if authorized by the copyright holders of +that material) supplement the terms of this License with terms: + + a) Disclaiming warranty or limiting liability differently from the + terms of sections 15 and 16 of this License; or + + b) Requiring preservation of specified reasonable legal notices or + author attributions in that material or in the Appropriate Legal + Notices displayed by works containing it; or + + c) Prohibiting misrepresentation of the origin of that material, or + requiring that modified versions of such material be marked in + reasonable ways as different from the original version; or + + d) Limiting the use for publicity purposes of names of licensors or + authors of the material; or + + e) Declining to grant rights under trademark law for use of some + trade names, trademarks, or service marks; or + + f) Requiring indemnification of licensors and authors of that + material by anyone who conveys the material (or modified versions of + it) with contractual assumptions of liability to the recipient, for + any liability that these contractual assumptions directly impose on + those licensors and authors. + + All other non-permissive additional terms are considered "further +restrictions" within the meaning of section 10. If the Program as you +received it, or any part of it, contains a notice stating that it is +governed by this License along with a term that is a further +restriction, you may remove that term. If a license document contains +a further restriction but permits relicensing or conveying under this +License, you may add to a covered work material governed by the terms +of that license document, provided that the further restriction does +not survive such relicensing or conveying. + + If you add terms to a covered work in accord with this section, you +must place, in the relevant source files, a statement of the +additional terms that apply to those files, or a notice indicating +where to find the applicable terms. + + Additional terms, permissive or non-permissive, may be stated in the +form of a separately written license, or stated as exceptions; +the above requirements apply either way. + + 8. Termination. + + You may not propagate or modify a covered work except as expressly +provided under this License. Any attempt otherwise to propagate or +modify it is void, and will automatically terminate your rights under +this License (including any patent licenses granted under the third +paragraph of section 11). + + However, if you cease all violation of this License, then your +license from a particular copyright holder is reinstated (a) +provisionally, unless and until the copyright holder explicitly and +finally terminates your license, and (b) permanently, if the copyright +holder fails to notify you of the violation by some reasonable means +prior to 60 days after the cessation. + + Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + + Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, you do not qualify to receive new licenses for the same +material under section 10. + + 9. Acceptance Not Required for Having Copies. + + You are not required to accept this License in order to receive or +run a copy of the Program. Ancillary propagation of a covered work +occurring solely as a consequence of using peer-to-peer transmission +to receive a copy likewise does not require acceptance. However, +nothing other than this License grants you permission to propagate or +modify any covered work. These actions infringe copyright if you do +not accept this License. Therefore, by modifying or propagating a +covered work, you indicate your acceptance of this License to do so. + + 10. Automatic Licensing of Downstream Recipients. + + Each time you convey a covered work, the recipient automatically +receives a license from the original licensors, to run, modify and +propagate that work, subject to this License. You are not responsible +for enforcing compliance by third parties with this License. + + An "entity transaction" is a transaction transferring control of an +organization, or substantially all assets of one, or subdividing an +organization, or merging organizations. If propagation of a covered +work results from an entity transaction, each party to that +transaction who receives a copy of the work also receives whatever +licenses to the work the party's predecessor in interest had or could +give under the previous paragraph, plus a right to possession of the +Corresponding Source of the work from the predecessor in interest, if +the predecessor has it or can get it with reasonable efforts. + + You may not impose any further restrictions on the exercise of the +rights granted or affirmed under this License. For example, you may +not impose a license fee, royalty, or other charge for exercise of +rights granted under this License, and you may not initiate litigation +(including a cross-claim or counterclaim in a lawsuit) alleging that +any patent claim is infringed by making, using, selling, offering for +sale, or importing the Program or any portion of it. + + 11. Patents. + + A "contributor" is a copyright holder who authorizes use under this +License of the Program or a work on which the Program is based. The +work thus licensed is called the contributor's "contributor version". + + A contributor's "essential patent claims" are all patent claims +owned or controlled by the contributor, whether already acquired or +hereafter acquired, that would be infringed by some manner, permitted +by this License, of making, using, or selling its contributor version, +but do not include claims that would be infringed only as a +consequence of further modification of the contributor version. For +purposes of this definition, "control" includes the right to grant +patent sublicenses in a manner consistent with the requirements of +this License. + + Each contributor grants you a non-exclusive, worldwide, royalty-free +patent license under the contributor's essential patent claims, to +make, use, sell, offer for sale, import and otherwise run, modify and +propagate the contents of its contributor version. + + In the following three paragraphs, a "patent license" is any express +agreement or commitment, however denominated, not to enforce a patent +(such as an express permission to practice a patent or covenant not to +sue for patent infringement). To "grant" such a patent license to a +party means to make such an agreement or commitment not to enforce a +patent against the party. + + If you convey a covered work, knowingly relying on a patent license, +and the Corresponding Source of the work is not available for anyone +to copy, free of charge and under the terms of this License, through a +publicly available network server or other readily accessible means, +then you must either (1) cause the Corresponding Source to be so +available, or (2) arrange to deprive yourself of the benefit of the +patent license for this particular work, or (3) arrange, in a manner +consistent with the requirements of this License, to extend the patent +license to downstream recipients. "Knowingly relying" means you have +actual knowledge that, but for the patent license, your conveying the +covered work in a country, or your recipient's use of the covered work +in a country, would infringe one or more identifiable patents in that +country that you have reason to believe are valid. + + If, pursuant to or in connection with a single transaction or +arrangement, you convey, or propagate by procuring conveyance of, a +covered work, and grant a patent license to some of the parties +receiving the covered work authorizing them to use, propagate, modify +or convey a specific copy of the covered work, then the patent license +you grant is automatically extended to all recipients of the covered +work and works based on it. + + A patent license is "discriminatory" if it does not include within +the scope of its coverage, prohibits the exercise of, or is +conditioned on the non-exercise of one or more of the rights that are +specifically granted under this License. You may not convey a covered +work if you are a party to an arrangement with a third party that is +in the business of distributing software, under which you make payment +to the third party based on the extent of your activity of conveying +the work, and under which the third party grants, to any of the +parties who would receive the covered work from you, a discriminatory +patent license (a) in connection with copies of the covered work +conveyed by you (or copies made from those copies), or (b) primarily +for and in connection with specific products or compilations that +contain the covered work, unless you entered into that arrangement, +or that patent license was granted, prior to 28 March 2007. + + Nothing in this License shall be construed as excluding or limiting +any implied license or other defenses to infringement that may +otherwise be available to you under applicable patent law. + + 12. No Surrender of Others' Freedom. + + If conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot convey a +covered work so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you may +not convey it at all. For example, if you agree to terms that obligate you +to collect a royalty for further conveying from those to whom you convey +the Program, the only way you could satisfy both those terms and this +License would be to refrain entirely from conveying the Program. + + 13. Use with the GNU Affero General Public License. + + Notwithstanding any other provision of this License, you have +permission to link or combine any covered work with a work licensed +under version 3 of the GNU Affero General Public License into a single +combined work, and to convey the resulting work. The terms of this +License will continue to apply to the part which is the covered work, +but the special requirements of the GNU Affero General Public License, +section 13, concerning interaction through a network will apply to the +combination as such. + + 14. Revised Versions of this License. + + The Free Software Foundation may publish revised and/or new versions of +the GNU General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + + Each version is given a distinguishing version number. If the +Program specifies that a certain numbered version of the GNU General +Public License "or any later version" applies to it, you have the +option of following the terms and conditions either of that numbered +version or of any later version published by the Free Software +Foundation. If the Program does not specify a version number of the +GNU General Public License, you may choose any version ever published +by the Free Software Foundation. + + If the Program specifies that a proxy can decide which future +versions of the GNU General Public License can be used, that proxy's +public statement of acceptance of a version permanently authorizes you +to choose that version for the Program. + + Later license versions may give you additional or different +permissions. However, no additional obligations are imposed on any +author or copyright holder as a result of your choosing to follow a +later version. + + 15. Disclaimer of Warranty. + + THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY +APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT +HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY +OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM +IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF +ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. Limitation of Liability. + + IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS +THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE +USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF +DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD +PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), +EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF +SUCH DAMAGES. + + 17. Interpretation of Sections 15 and 16. + + If the disclaimer of warranty and limitation of liability provided +above cannot be given local legal effect according to their terms, +reviewing courts shall apply local law that most closely approximates +an absolute waiver of all civil liability in connection with the +Program, unless a warranty or assumption of liability accompanies a +copy of the Program in return for a fee. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +state the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . + +Also add information on how to contact you by electronic and paper mail. + + If the program does terminal interaction, make it output a short +notice like this when it starts in an interactive mode: + + Copyright (C) + This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, your program's commands +might be different; for a GUI interface, you would use an "about box". + + You should also get your employer (if you work as a programmer) or school, +if any, to sign a "copyright disclaimer" for the program, if necessary. +For more information on this, and how to apply and follow the GNU GPL, see +. + + The GNU General Public License does not permit incorporating your program +into proprietary programs. If your program is a subroutine library, you +may consider it more useful to permit linking proprietary applications with +the library. If this is what you want to do, use the GNU Lesser General +Public License instead of this License. But first, please read +. diff --git a/keyboards/ergodox_ez/keymaps/algernon/Makefile b/keyboards/ergodox_ez/keymaps/algernon/Makefile new file mode 100644 index 0000000000..3db507c8f2 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/algernon/Makefile @@ -0,0 +1,8 @@ +BOOTMAGIC_ENABLE=no +COMMAND_ENABLE=no +SLEEP_LED_ENABLE=no +UNICODE_ENABLE=no + +ifndef QUANTUM_DIR + include ../../../../Makefile +endif diff --git a/keyboards/ergodox_ez/keymaps/algernon/config.h b/keyboards/ergodox_ez/keymaps/algernon/config.h new file mode 100644 index 0000000000..4cb878ebce --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/algernon/config.h @@ -0,0 +1,29 @@ +#ifndef CONFIG_ALGERNON_H +#define CONFIG_ALGERNON_H + +#include "../../config.h" + +#undef MOUSEKEY_TIME_TO_MAX +#undef MOUSEKEY_MAX_SPEED + +#define MOUSEKEY_TIME_TO_MAX 1 +#define MOUSEKEY_MAX_SPEED 2 + +#undef MOUSEKEY_DELAY +#define MOUSEKEY_DELAY 0 + +#undef MOUSEKEY_WHEEL_DELAY +#define MOUSEKEY_WHEEL_DELAY 0 + +#define ONESHOT_TAP_TOGGLE 2 +#define ONESHOT_TIMEOUT 3000 + +#undef LOCKING_SUPPORT_ENABLE +#undef LOCKING_RESYNC_ENABLE + +#undef LEADER_TIMEOUT +#define LEADER_TIMEOUT 1000 + +#define FORCE_NKRO + +#endif diff --git a/keyboards/ergodox_ez/keymaps/algernon/images/base-layer.png b/keyboards/ergodox_ez/keymaps/algernon/images/base-layer.png new file mode 100644 index 0000000000..1a7c0f4805 Binary files /dev/null and b/keyboards/ergodox_ez/keymaps/algernon/images/base-layer.png differ diff --git a/keyboards/ergodox_ez/keymaps/algernon/images/emacs-layer.png b/keyboards/ergodox_ez/keymaps/algernon/images/emacs-layer.png new file mode 100644 index 0000000000..1aa23cc00e Binary files /dev/null and b/keyboards/ergodox_ez/keymaps/algernon/images/emacs-layer.png differ diff --git a/keyboards/ergodox_ez/keymaps/algernon/images/experimental-layer.png b/keyboards/ergodox_ez/keymaps/algernon/images/experimental-layer.png new file mode 100644 index 0000000000..c5e695b8c1 Binary files /dev/null and b/keyboards/ergodox_ez/keymaps/algernon/images/experimental-layer.png differ diff --git a/keyboards/ergodox_ez/keymaps/algernon/images/hun-layer.png b/keyboards/ergodox_ez/keymaps/algernon/images/hun-layer.png new file mode 100644 index 0000000000..f1e5f9ec07 Binary files /dev/null and b/keyboards/ergodox_ez/keymaps/algernon/images/hun-layer.png differ diff --git a/keyboards/ergodox_ez/keymaps/algernon/images/one-handed-layer.png b/keyboards/ergodox_ez/keymaps/algernon/images/one-handed-layer.png new file mode 100644 index 0000000000..283559b3a9 Binary files /dev/null and b/keyboards/ergodox_ez/keymaps/algernon/images/one-handed-layer.png differ diff --git a/keyboards/ergodox_ez/keymaps/algernon/images/steno-layer.png b/keyboards/ergodox_ez/keymaps/algernon/images/steno-layer.png new file mode 100644 index 0000000000..e747bfb414 Binary files /dev/null and b/keyboards/ergodox_ez/keymaps/algernon/images/steno-layer.png differ diff --git a/keyboards/ergodox_ez/keymaps/algernon/keymap.c b/keyboards/ergodox_ez/keymaps/algernon/keymap.c new file mode 100644 index 0000000000..4eea6874c7 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/algernon/keymap.c @@ -0,0 +1,1172 @@ +/* + * algernon's ErgoDox EZ layout, please see the README.md file! + */ + +#include "ergodox_ez.h" +#include "led.h" +#include "debug.h" +#include "action_layer.h" +#include "action_util.h" +#include "mousekey.h" +#include "timer.h" +#include "keymap_plover.h" + +/* Layers */ + +enum { + BASE = 0, + APPSEL, + HUN, + EMACS, + OHLFT, + OHRGT, + PLVR, + EXPRM +}; + +/* Macros */ + +enum { + NONE = 0, + // Buttons that do extra stuff + A_GUI, + A_PLVR, + A_ESC, + A_MPN, + A_COLN, + + // Function / number keys + KF_1, // 1, F1 + KF_2, // 2, F2 + KF_3, // ... + KF_4, + KF_5, + KF_6, + KF_7, + KF_8, + KF_9, + KF_10, + KF_11, // =, F11 + + // Application select keys + APP_SLK, // Slack + APP_EMCS, // Emacs + APP_TERM, // Terminal + APP_CHRM, // Chrome + APP_MSIC, // Music + + // Diagonal mouse movement + A_MUL, + A_MUR, + A_MDL, + A_MDR, + + // Emacs layer keys + AE_VIS, // Visual mode + AE_PSTDEL, // Paste/Delete + AE_CPYC, // Copy/Cut + AE_EMACS, // Emacs copy & paste mode + AE_TERM, // Terminal copy & paste mode + AE_OTHER, // Other copy & paste mode + AE_INS, // Insert mode + AE_OVR, // Overwrite mode + AE_APPND, // Append + + // Hungarian layer keys + HU_AA, // Á + HU_OO, // Ó + HU_EE, // É + HU_UU, // Ú + HU_II, // Í + HU_OE, // Ö + HU_UE, // Ü + HU_OEE, // Ő + HU_UEE, // Ű + + // One-handed layout specials + OH_BSSPC, + OH_ENTSFT, + OH_BASE, + OH_LEFT, + OH_RIGHT, +}; + +/* Fn keys */ + +enum { + F_BSE = 0, + F_HUN, + F_GUI, + F_SFT, + F_ALT, + F_CTRL +}; + +/* States & timers */ + +uint8_t m_visual_state = 0; +static uint16_t m_cutdel_timer; +static uint16_t m_copypaste_timer; + +uint16_t gui_timer = 0; + +uint16_t kf_timers[12]; + +uint16_t oh_base_timer = 0; +uint16_t oh_bsspc_timer = 0; +uint16_t oh_entsft_timer = 0; + +#define OH_BLINK_INTERVAL 500 + +uint8_t oh_left_blink = 0; +uint16_t oh_left_blink_timer = 0; +uint8_t oh_right_blink = 0; +uint16_t oh_right_blink_timer = 0; + +enum { + CP_EMACS = 0, + CP_TERM = 1, + CP_OTHER = 2, +}; + +uint8_t cp_mode = CP_EMACS; + +/* The Keymap */ + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +/* Keymap 0: Base Layer + * + * ,-----------------------------------------------------. ,-----------------------------------------------------. + * | `~ | 1 F1 | 2 F2 | 3 F3 | 4 F4 | 5 F5 | Plvr | | Apps | 6 F6 | 7 F7 | 8 F8 | 9 F9 | 0 F10| F11 | + * |-----------+------+------+------+------+-------------| |------+------+------+------+------+------+-----------| + * | Next/Prev | ' | , | . | P | Y | [ | | ] | F | G | C | R | L | = | + * |-----------+------+------+------+------+------| | | |------+------+------+------+------+-----------| + * | Tab | A | O | E | U | I |------| |------| D | H | T | N | S | \ | + * |-----------+------+------+------+------+------| ( | | ) |------+------+------+------+------+-----------| + * | Play/Pause| / | Q | J | K | X | | | | B | M | W | V | Z | Stop | + * `-----------+------+------+------+------+-------------' `-------------+------+------+------+------+-----------' + * | Home | End | Down | Up | : | | - | Left | Right| PgUp | PgDn | + * `-----------------------------------' `-----------------------------------' + * ,-------------. ,-------------. + * | LAlt | GUI | |EMACS | 1HND | + * ,------|------|------| |------+------+------. + * | | | Ctrl | | LEAD | | | + * |Backsp|LShift|------| |------| Enter| Space| + * | | | ESC | | HUN | | | + * `--------------------' `--------------------' + */ +[BASE] = KEYMAP( +// left hand + KC_GRV ,M(KF_1) ,M(KF_2) ,M(KF_3),M(KF_4),M(KF_5),M(A_PLVR) +,M(A_MPN) ,KC_QUOT ,KC_COMM ,KC_DOT ,KC_P ,KC_Y ,KC_LBRC +,KC_TAB ,KC_A ,KC_O ,KC_E ,KC_U ,KC_I +,KC_MPLY ,KC_SLSH ,KC_Q ,KC_J ,KC_K ,KC_X ,KC_LPRN +,KC_HOME ,KC_END ,KC_DOWN ,KC_UP ,M(A_COLN) + + ,F(F_ALT),F(F_GUI) + ,F(F_CTRL) + ,KC_BSPC,F(F_SFT),M(A_ESC) + + // right hand + ,KC_APP ,M(KF_6),M(KF_7),M(KF_8),M(KF_9) ,M(KF_10) ,KC_F11 + ,KC_RBRC ,KC_F ,KC_G ,KC_C ,KC_R ,KC_L ,KC_EQL + ,KC_D ,KC_H ,KC_T ,KC_N ,KC_S ,KC_BSLS + ,KC_RPRN ,KC_B ,KC_M ,KC_W ,KC_V ,KC_Z ,KC_MSTP + ,KC_MINS,KC_LEFT,KC_RGHT ,KC_PGUP ,KC_PGDN + + ,OSL(EMACS),M(OH_LEFT) + ,KC_LEAD + ,F(F_HUN),KC_ENT ,KC_SPC + ), + +/* Keymap 1: Application select layer + * + * ,-----------------------------------------------------. ,-----------------------------------------------------. + * | |Music |Slack |Emacs |Term |Chrome| | | | | | | | | | + * |-----------+------+------+------+------+-------------| |------+------+------+------+------+------+-----------| + * | | | | | | | | | | | | | | | | + * |-----------+------+------+------+------+------| | | |------+------+------+------+------+-----------| + * | | | | | | |------| |------| | | | | | | + * |-----------+------+------+------+------+------| | | |------+------+------+------+------+-----------| + * | | | | | | | | | | | | | | | | + * `-----------+------+------+------+------+-------------' `-------------+------+------+------+------+-----------' + * | | | | | | | | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ + +[APPSEL] = KEYMAP( +// left hand + KC_TRNS ,M(APP_MSIC),M(APP_SLK),M(APP_EMCS),M(APP_TERM),M(APP_CHRM),KC_TRNS +,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS +,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS +,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS +,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS + + ,KC_TRNS ,KC_TRNS + ,KC_TRNS + ,KC_TRNS ,KC_TRNS ,KC_TRNS + + // right hand + ,KC_TRNS ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_TRNS + ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS + ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS + ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS + ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS + + ,KC_TRNS ,KC_TRNS + ,KC_TRNS + ,KC_TRNS ,KC_TRNS ,KC_TRNS + ), + + +/* Keymap 2: Hungarian Layer + * + * ,-----------------------------------------------------. ,-----------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |-----------+------+------+------+------+-------------| |------+------+------+------+------+------+-----------| + * | | | Ő | | Ű | | | | | | | | | | | + * |-----------+------+------+------+------+------| | | |------+------+------+------+------+-----------| + * | | Á | Ó | É | Ú | Í |------| |------| | | | | | | + * |-----------+------+------+------+------+------| | | |------+------+------+------+------+-----------| + * | | | Ö | | Ü | | | | | | | | | | | + * `-----------+------+------+------+------+-------------' `-------------+------+------+------+------+-----------' + * | | | | | | | | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | BASE | | | + * `--------------------' `--------------------' + */ + +[HUN] = KEYMAP( +// left hand + KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_NO ,KC_TRNS +,KC_NO ,KC_NO ,M(HU_OEE),KC_NO ,M(HU_UEE),KC_NO ,KC_NO +,KC_NO ,M(HU_AA),M(HU_OO) ,M(HU_EE),M(HU_UU) ,M(HU_II) +,KC_TRNS ,KC_NO ,M(HU_OE) ,KC_NO ,M(HU_UE) ,KC_NO ,KC_NO +,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_NO + + ,KC_TRNS ,KC_TRNS + ,KC_TRNS + ,KC_TRNS ,KC_TRNS ,KC_TRNS + + // right hand + ,KC_TRNS ,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_NO ,KC_NO + ,KC_NO + ,F(F_BSE),KC_TRNS ,KC_TRNS + ), + +/* Keymap 3: Spacemacs layer + * + * ,-----------------------------------------------------. ,-----------------------------------------------------. + * | MS Slow | 1 F1 | 2 F2 | 3 F3 | 4 F4 | 5 F5 |ScrLCK| |ScrLCK| 6 F6 | 7 F7 | 8 F8 | 9 F9 | 0 F10| F11 | + * |-----------+------+------+------+------+-------------| |------+------+------+------+------+------+-----------| + * | MS Normal | | Home | Up | PgUp | |Visual| |Scroll| $ |MsUpL | MsUp |MsUpR | R |PrintScreen| + * |-----------+------+------+------+------+------| Mode | | Up |------+------+------+------+------+-----------| + * | MS Fast |APPEND| Left | Down | Right| INS |------| |------| D |MsLeft| MsDn |MsRght| | | + * |-----------+------+------+------+------+------| Cut | |Scroll|------+------+------+------+------+-----------| + * | Play/Pause| | End | Down | PgDn | X | Copy | | Down | |MsDnL | W |MsDnR | | Stop | + * `-----------+------+------+------+------+-------------' `-------------+------+------+------+------+-----------' + * |EmacsM|TermM |OtherM| | | |Vol Up|Vol Dn| Mute | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | Alt | GUI | | BASE | MClk | + * ,------|------|------| |------+------+------. + * |Delete| | Ctrl | | Prev |Left |Right | + * | |LShift|------| |------| Click| Click| + * |Paste | | ESC | | Next | | | + * `--------------------' `--------------------' + */ +[EMACS] = KEYMAP( +// left hand + KC_ACL0 ,M(KF_1) ,M(KF_2) ,M(KF_3) ,M(KF_4) ,M(KF_5) ,LGUI(KC_L) +,KC_ACL1 ,KC_NO ,KC_HOME ,KC_UP ,KC_PGUP ,KC_NO ,M(AE_VIS) +,KC_ACL2 ,M(AE_APPND) ,KC_LEFT ,KC_DOWN ,KC_RIGHT,M(AE_INS) +,KC_MPLY ,KC_NO ,KC_END ,KC_DOWN ,KC_PGDN ,KC_X ,M(AE_CPYC) +,M(AE_EMACS),M(AE_TERM) ,M(AE_OTHER),KC_NO ,KC_NO + ,KC_TRNS ,KC_TRNS + ,KC_TRNS + ,M(AE_PSTDEL),KC_TRNS ,KC_TRNS + + // right hand + ,LGUI(KC_L),M(KF_6) ,M(KF_7) ,M(KF_8) ,M(KF_9) ,M(KF_10) ,M(KF_11) + ,KC_WH_U ,KC_DLR ,M(A_MUL),KC_MS_U ,M(A_MUR),M(AE_OVR),KC_PSCR + ,KC_D ,KC_MS_L ,KC_MS_D ,KC_MS_R ,KC_NO ,KC_NO + ,KC_WH_D ,KC_NO ,M(A_MDL),KC_W ,M(A_MDR),KC_NO ,KC_MSTP + ,KC_VOLU ,KC_VOLD ,KC_MUTE ,KC_NO ,KC_NO + + ,KC_TRNS ,KC_MS_BTN3 + ,KC_MPRV + ,KC_MNXT ,KC_BTN1 ,KC_BTN2 + ), + +/* Keymap 5: One-handed, left side + * + * ,-----------------------------------------------------. + * | `~ | 1 F1 | 2 F2 | 3 F3 | 4 F4 | 5 F5 |A BSE| + * |-----------+------+------+------+------+-------------| + * | Tab | ' | , | . | P | Y | [ | + * |-----------+------+------+------+------+------| | + * | - | A | O | E | U | I |------| + * |-----------+------+------+------+------+------| ( | + * | Play/Pause| ; | Q | J | K | X | | + * `-----------+------+------+------+------+-------------' + * | Home | End | Down | Up | ESC | + * `-----------------------------------' + * ,-------------. + * | LAlt | GUI | + * ,------|------|------| + * |BackSp|LShift| Ctrl | + * | | |------| + * |Space |Enter |OTHER | + * `--------------------' + */ +[OHLFT] = KEYMAP( +// left hand + KC_GRV ,M(KF_1) ,M(KF_2) ,M(KF_3) ,M(KF_4) ,M(KF_5) ,M(OH_BASE) +,KC_TAB ,KC_QUOT ,KC_COMM ,KC_DOT ,KC_P ,KC_Y ,KC_LBRC +,KC_MINS ,KC_A ,KC_O ,KC_E ,KC_U ,KC_I +,KC_MPLY ,KC_SCLN ,KC_Q ,KC_J ,KC_K ,KC_X ,KC_LPRN +,KC_HOME ,KC_END ,KC_DOWN ,KC_UP ,M(A_ESC) + + ,KC_TRNS ,KC_TRNS + ,KC_TRNS + ,M(OH_BSSPC),M(OH_ENTSFT),M(OH_RIGHT) + + // 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_NO ,KC_NO + ,KC_NO + ,KC_NO ,KC_NO ,KC_NO + ), + +/* Keymap 6: One-handed, right side + * + * ,-----------------------------------------------------. + * | = F11 | 0 F10| 9 F9 | 8 F8 | 7 F7 | 6 F6 |A BSE| + * |-----------+------+------+------+------+-------------| + * | / | L | R | C | G | F | ] | + * |-----------+------+------+------+------+------| | + * | \ | S | N | T | H | D |------| + * |-----------+------+------+------+------+------| ) | + * | Stop | Z | V | W | M | B | | + * `-----------+------+------+------+------+-------------' + * | PgDn | PgUp | Right| Left | ESC | + * `-----------------------------------' + * ,-------------. + * | LAlt | GUI | + * ,------|------|------| + * |BackSp|LShift| Ctrl | + * | | |------| + * |Space |Enter |OTHER | + * `--------------------' + */ +[OHRGT] = KEYMAP( +// left hand + M(KF_11) ,M(KF_10) ,M(KF_9) ,M(KF_8) ,M(KF_7) ,M(KF_6) ,M(OH_BASE) +,KC_SLSH ,KC_L ,KC_R ,KC_C ,KC_G ,KC_F ,KC_RBRC +,KC_BSLS ,KC_S ,KC_N ,KC_T ,KC_H ,KC_D +,KC_MSTP ,KC_Z ,KC_V ,KC_W ,KC_M ,KC_B ,KC_RPRN +,KC_PGDN ,KC_PGUP ,KC_RGHT ,KC_LEFT ,M(A_ESC) + + ,KC_TRNS ,KC_TRNS + ,KC_TRNS + ,M(OH_BSSPC),M(OH_ENTSFT),M(OH_LEFT) + + // 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_NO ,KC_NO + ,KC_NO + ,KC_NO ,KC_NO ,KC_NO + ), + +/* Keymap 7: Steno for Plover + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | BASE | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | # | # | # | # | # | | | | # | # | # | # | # | # | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | T | P | H | |------| |------| | F | P | L | T | D | + * |--------+ S +------+------+------+ * | | | | * +------+------+------+------+--------| + * | | | K | W | R | | | | | | R | B | G | S | Z | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | A | O |------| |------| E | U | + * | | | | | | | | + * `--------------------' `--------------------' + */ + +[PLVR] = KEYMAP( +// left hand +KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, M(A_PLVR), +KC_NO, PV_NUM, PV_NUM, PV_NUM, PV_NUM, PV_NUM, KC_NO, +KC_NO, PV_LS, PV_LT, PV_LP, PV_LH, PV_STAR, +KC_NO, PV_LS, PV_LK, PV_LW, PV_LR, PV_STAR, KC_NO, +KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, + KC_NO, + PV_A, PV_O, KC_NO, + + // right hand + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, PV_NUM, PV_NUM, PV_NUM, PV_NUM, PV_NUM, PV_NUM, + PV_STAR, PV_RF, PV_RP, PV_RL, PV_RT, PV_RD, + KC_NO, PV_STAR, PV_RR, PV_RB, PV_RG, PV_RS, PV_RZ, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, + KC_NO, + KC_NO,PV_E, PV_U + ), + +/* Keymap 8: Experimental layer + * + * ,-----------------------------------------------------. ,-----------------------------------------------------. + * | `~ | 1 F1 | 2 F2 | 3 F3 | 4 F4 | 5 F5 | Plvr | | Apps | 6 F6 | 7 F7 | 8 F8 | 9 F9 | 0 F10| F11 | + * |-----------+------+------+------+------+-------------| |------+------+------+------+------+------+-----------| + * | Next/Prev | ' | , | . | P | Y | [ | | ] | Q | F | C | R | J | = | + * |-----------+------+------+------+------+------| | | |------+------+------+------+------+-----------| + * | Tab | A | O | E | U | I |------| |------| D | H | T | N | S | \ | + * |-----------+------+------+------+------+------| ( | | ) |------+------+------+------+------+-----------| + * | Play/Pause| Z | K | V | G | X | | | | L | M | W | B | / | Stop | + * `-----------+------+------+------+------+-------------' `-------------+------+------+------+------+-----------' + * | Home | End | Down | Up | : | | - | Left | Right| PgUp | PgDn | + * `-----------------------------------' `-----------------------------------' + * ,-------------. ,-------------. + * | LAlt | GUI | |EMACS | 1HND | + * ,------|------|------| |------+------+------. + * | | | Ctrl | | LEAD | | | + * |Backsp|LShift|------| |------| Enter| Space| + * | | | ESC | | HUN | | | + * `--------------------' `--------------------' + */ +[EXPRM] = KEYMAP( +// left hand + KC_GRV ,M(KF_1) ,M(KF_2) ,M(KF_3),M(KF_4),M(KF_5),M(A_PLVR) +,M(A_MPN) ,KC_QUOT ,KC_COMM ,KC_DOT ,KC_P ,KC_Y ,KC_LBRC +,KC_TAB ,KC_A ,KC_O ,KC_E ,KC_U ,KC_I +,KC_MPLY ,KC_Z ,KC_K ,KC_V ,KC_G ,KC_X ,KC_LPRN +,KC_HOME ,KC_END ,KC_DOWN ,KC_UP ,M(A_COLN) + + ,F(F_ALT),F(F_GUI) + ,F(F_CTRL) + ,KC_BSPC,F(F_SFT),M(A_ESC) + + // right hand + ,KC_APP ,M(KF_6),M(KF_7),M(KF_8),M(KF_9) ,M(KF_10) ,KC_F11 + ,KC_RBRC ,KC_Q ,KC_F ,KC_C ,KC_R ,KC_J ,KC_EQL + ,KC_D ,KC_H ,KC_T ,KC_N ,KC_S ,KC_BSLS + ,KC_RPRN ,KC_L ,KC_M ,KC_W ,KC_B ,KC_SLSH ,KC_MSTP + ,KC_MINS,KC_LEFT,KC_RGHT ,KC_PGUP ,KC_PGDN + + ,OSL(EMACS),M(OH_LEFT) + ,KC_LEAD + ,F(F_HUN),KC_ENT ,KC_SPC + ), + + +}; + +const uint16_t PROGMEM fn_actions[] = { + [F_BSE] = ACTION_LAYER_CLEAR(ON_PRESS) + ,[F_HUN] = ACTION_LAYER_INVERT(HUN, ON_PRESS) + ,[F_GUI] = ACTION_MACRO_TAP(A_GUI) + ,[F_SFT] = ACTION_MODS_ONESHOT (MOD_LSFT) + ,[F_ALT] = ACTION_MODS_ONESHOT (MOD_LALT) + ,[F_CTRL] = ACTION_MODS_ONESHOT (MOD_LCTL) +}; + +void toggle_steno(int pressed) +{ + uint8_t layer = biton32(layer_state); + + if (pressed) { + if (layer != PLVR) layer_on(PLVR); else layer_off(PLVR); + + register_code(PV_LP); + register_code(PV_LH); + register_code(PV_LR); + register_code(PV_O); + register_code(PV_RL); + register_code(PV_RG); + } else { + unregister_code(PV_LP); + unregister_code(PV_LH); + unregister_code(PV_LR); + unregister_code(PV_O); + unregister_code(PV_RL); + unregister_code(PV_RG); + } +} + +macro_t *ang_do_hun (keyrecord_t *record, uint16_t accent, uint16_t hun_char) +{ + uint8_t need_shift = 0; + uint8_t hold_shift = 0; + + if (!record->event.pressed) + return MACRO_NONE; + + layer_off (HUN); + + if (keyboard_report->mods & MOD_BIT (KC_LSFT)) { + hold_shift = 1; + need_shift = 1; + unregister_code (KC_LSFT); + } + if ((get_oneshot_mods () & MOD_BIT(KC_LSFT)) && !has_oneshot_mods_timed_out ()) { + need_shift = 1; + hold_shift = 0; + unregister_code (KC_LSFT); + } + + clear_oneshot_mods (); + + register_code (KC_RALT); + unregister_code (KC_RALT); + if (accent == (KC_DQT)) { + register_code (KC_RSFT); + } + register_code (accent); + unregister_code (accent); + if (need_shift && accent != (KC_DQT)) { + register_code (KC_RSFT); + } else if (accent == (KC_DQT) && !need_shift) { + unregister_code (KC_RSFT); + } + register_code (hun_char); + unregister_code (hun_char); + if (need_shift || accent == (KC_DQT)) + unregister_code (KC_RSFT); + if (hold_shift) + register_code (KC_LSFT); + + return MACRO_NONE; +} + +void ang_handle_kf (keyrecord_t *record, uint8_t id) +{ + uint8_t code = id - KF_1; + + if (record->event.pressed) { + kf_timers[code] = timer_read (); + } else { + uint8_t kc; + + if (timer_elapsed (kf_timers[code]) > TAPPING_TERM) { + // Long press + kc = KC_F1 + code; + } else { + if (id == KF_11) + kc = KC_EQL; + else + kc = KC_1 + code; + } + + register_code (kc); + unregister_code (kc); + } +} + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + switch(id) { + case A_ESC: + if (record->event.pressed) { + if ((get_oneshot_mods ()) && !has_oneshot_mods_timed_out ()) { + clear_oneshot_mods (); + } else { + register_code (KC_ESC); + } + layer_off (HUN); + } else { + unregister_code (KC_ESC); + } + break; + + case A_COLN: + if (keyboard_report->mods & MOD_BIT(KC_LSFT) || + ((get_oneshot_mods() & MOD_BIT(KC_LSFT)) && !has_oneshot_mods_timed_out())) { + int oneshot = ((get_oneshot_mods() & MOD_BIT(KC_LSFT)) && !has_oneshot_mods_timed_out()); + + if (record->event.pressed) { + if (oneshot) + clear_oneshot_mods (); + unregister_code (KC_LSFT); + + register_code (KC_SCLN); + unregister_code (KC_SCLN); + if (!oneshot) + register_code (KC_LSFT); + } + } else { + return MACRODOWN (D(RSFT), T(SCLN), U(RSFT), END); + } + break; + + case A_MPN: + if (record->event.pressed) { + if (keyboard_report->mods & MOD_BIT(KC_LSFT) || + ((get_oneshot_mods() & MOD_BIT(KC_LSFT)) && !has_oneshot_mods_timed_out())) { + int oneshot = ((get_oneshot_mods() & MOD_BIT(KC_LSFT)) && !has_oneshot_mods_timed_out()); + + if (oneshot) + clear_oneshot_mods (); + unregister_code (KC_LSFT); + + register_code (KC_MPRV); + unregister_code (KC_MPRV); + + if (!oneshot) + register_code (KC_LSFT); + } else { + return MACRO (T(MNXT), END); + } + } + break; + + /* Hungarian layer */ + case HU_AA: + return ang_do_hun (record, KC_QUOT, KC_A); + case HU_OO: + return ang_do_hun (record, KC_QUOT, KC_O); + case HU_EE: + return ang_do_hun (record, KC_QUOT, KC_E); + case HU_UU: + return ang_do_hun (record, KC_QUOT, KC_U); + case HU_II: + return ang_do_hun (record, KC_QUOT, KC_I); + case HU_OE: + return ang_do_hun (record, KC_DQT, KC_O); + case HU_UE: + return ang_do_hun (record, KC_DQT, KC_U); + case HU_OEE: + return ang_do_hun (record, KC_EQL, KC_O); + case HU_UEE: + return ang_do_hun (record, KC_EQL, KC_U); + + /* Mouse movement */ + case A_MUL: + if (record->event.pressed) { + mousekey_on(KC_MS_UP); + mousekey_on(KC_MS_LEFT); + } else { + mousekey_off(KC_MS_UP); + mousekey_off(KC_MS_LEFT); + } + mousekey_send(); + break; + + case A_MUR: + if (record->event.pressed) { + mousekey_on(KC_MS_UP); + mousekey_on(KC_MS_RIGHT); + } else { + mousekey_off(KC_MS_UP); + mousekey_off(KC_MS_RIGHT); + } + mousekey_send(); + break; + + case A_MDL: + if (record->event.pressed) { + mousekey_on(KC_MS_DOWN); + mousekey_on(KC_MS_LEFT); + } else { + mousekey_off(KC_MS_DOWN); + mousekey_off(KC_MS_LEFT); + } + mousekey_send(); + break; + + case A_MDR: + if (record->event.pressed) { + mousekey_on(KC_MS_DOWN); + mousekey_on(KC_MS_RIGHT); + } else { + mousekey_off(KC_MS_DOWN); + mousekey_off(KC_MS_RIGHT); + } + mousekey_send(); + break; + + /* EMACS layer stuff */ + case AE_EMACS: + if (record->event.pressed) { + cp_mode = CP_EMACS; + } + break; + + case AE_TERM: + if (record->event.pressed) { + cp_mode = CP_TERM; + } + break; + + case AE_OTHER: + if (record->event.pressed) { + cp_mode = CP_OTHER; + } + break; + + case AE_VIS: + if (cp_mode == CP_EMACS && record->event.pressed) { + return MACRO(T(V), END); + } + break; + + case AE_CPYC: + if (record->event.pressed) { + m_copypaste_timer = timer_read (); + } else { + if (timer_elapsed (m_copypaste_timer) > TAPPING_TERM) { + // Long press: Cut + switch (cp_mode) { + case CP_EMACS: + return MACRO(T(X), END); + break; + case CP_TERM: + return MACRO(D(RCTRL), D(RSFT), T(X), U(RSFT), U(RCTRL), END); + break; + case CP_OTHER: + return MACRO(D(RCTRL), T(X), U(RCTRL), END); + break; + } + } else { + // Short press: Copy + switch (cp_mode) { + case CP_EMACS: + return MACRO(T(Y), END); + break; + case CP_TERM: + return MACRO(D(RCTRL), D(RSFT), T(C), U(RSFT), U(RCTRL), END); + break; + case CP_OTHER: + return MACRO(D(RCTRL), T(C), U(RCTRL), END); + break; + } + } + } + break; + + case AE_PSTDEL: + if (record->event.pressed) { + m_cutdel_timer = timer_read (); + } else { + if (timer_elapsed (m_cutdel_timer) > TAPPING_TERM) { + // Long press: Delete + switch (cp_mode) { + case CP_EMACS: + return MACRO(T(D), END); + break; + case CP_TERM: + case CP_OTHER: + return MACRO(T(DEL), END); + break; + } + } else { + // Short press: Paste + switch (cp_mode) { + case CP_EMACS: + if (keyboard_report->mods & MOD_BIT(KC_RSFT)) { + unregister_code (KC_RSFT); + return MACRO(U(RSFT), T(RBRC), T(P), D(RSFT), END); + } + else + return MACRO(T(P), END); + break; + case CP_TERM: + return MACRO(D(RCTRL), D(RSFT), T(V), U(RSFT), U(RCTRL), END); + break; + case CP_OTHER: + return MACRO(D(RCTRL), T(V), U(RCTRL), END); + break; + } + } + } + break; + + case AE_INS: + if (record->event.pressed) { + return MACRO(T(I), END); + } else { + layer_clear(); + } + break; + + case AE_OVR: + if (record->event.pressed) { + return MACRO(T(R), END); + } else { + layer_clear(); + } + break; + + case AE_APPND: + if (record->event.pressed) { + return MACRO(T(A), END); + } else { + layer_clear(); + } + break; + + /* Plover base */ + case A_PLVR: + toggle_steno(record->event.pressed); + break; + + /* GUI & AppSel */ + case A_GUI: + if (record->event.pressed) { + register_code (KC_LGUI); + if (record->tap.count && !record->tap.interrupted) { + if (record->tap.count >= 2) { + register_code (KC_W); + layer_on (APPSEL); + set_oneshot_layer (APPSEL, ONESHOT_START); + } + } else { + record->tap.count = 0; + } + gui_timer = 0; + } else { + if (record->tap.count >= 2) + { + unregister_code (KC_W); + clear_oneshot_layer_state (ONESHOT_PRESSED); + } + gui_timer = timer_read (); + } + break; + + case APP_SLK: + return MACRODOWN(T(S), T(C), T(U), T(D), T(C), T(L), T(O), T(U), T(D), T(ENT), END); + + case APP_EMCS: + return MACRODOWN(T(E), T(M), T(A), T(C), T(S), T(ENT), END); + + case APP_TERM: + return MACRODOWN(T(T), T(E), T(R), T(M), T(ENT), END); + + case APP_CHRM: + return MACRODOWN(T(C), T(H), T(R), T(O), T(M), T(ENT), END); + + case APP_MSIC: + return MACRODOWN(T(R), T(H), T(Y), T(T), T(H), T(M), T(B), T(O), T(X), T(ENT), END); + + /* Function keys */ + case KF_1 ... KF_11: + ang_handle_kf (record, id); + break; + + /* 1HAND layout */ + case OH_BASE: + if (record->event.pressed) { + oh_base_timer = timer_read (); + } else { + if (timer_elapsed (oh_base_timer) > TAPPING_TERM) { + layer_clear (); + } else { + return MACRO (T(APP), END); + } + } + break; + + case OH_BSSPC: + if (record->event.pressed) { + oh_bsspc_timer = timer_read (); + } else { + if (timer_elapsed (oh_bsspc_timer) > TAPPING_TERM) { + return MACRO (T(BSPC), END); + } else { + return MACRO (T(SPC), END); + } + } + break; + + case OH_ENTSFT: + if (record->event.pressed) { + oh_entsft_timer = timer_read (); + } else { + if (timer_elapsed (oh_entsft_timer) > TAPPING_TERM) { + if (keyboard_report->mods & MOD_BIT(KC_LSFT)) + unregister_code (KC_LSFT); + else + register_code (KC_LSFT); + } else { + return MACRO (T(ENT), END); + } + } + break; + + case OH_LEFT: + if (record->event.pressed) { + layer_move (OHLFT); + oh_left_blink = 1; + oh_left_blink_timer = timer_read (); + ergodox_right_led_1_on (); + } + break; + + case OH_RIGHT: + if (record->event.pressed) { + layer_move (OHRGT); + oh_right_blink = 1; + oh_right_blink_timer = timer_read (); + ergodox_right_led_3_on (); + } + break; + } + return MACRO_NONE; +}; + +// Runs just one time when the keyboard initializes. +void matrix_init_user(void) { + ergodox_led_all_on(); + for (int i = LED_BRIGHTNESS_HI; i > LED_BRIGHTNESS_LO; i--) { + ergodox_led_all_set (i); + _delay_ms (5); + } + _delay_ms(1000); + for (int i = LED_BRIGHTNESS_LO; i > 0; i--) { + ergodox_led_all_set (i); + _delay_ms (10); + } + ergodox_led_all_off(); +}; + +LEADER_EXTERNS(); + +void ang_do_unicode (void) { + register_code (KC_RCTL); + register_code (KC_RSFT); + register_code (KC_U); + unregister_code (KC_U); + unregister_code (KC_RSFT); + unregister_code (KC_RCTL); + _delay_ms (100); +} + +void ang_tap (uint16_t codes[]) { + for (int i = 0; codes[i] != 0; i++) { + register_code (codes[i]); + unregister_code (codes[i]); + _delay_ms (50); + } +} + +#define TAP_ONCE(code) \ + register_code (code); \ + unregister_code (code) + +uint8_t is_exp = 0; + +// Runs constantly in the background, in a loop. +void matrix_scan_user(void) { + uint8_t layer = biton32(layer_state); + + if (gui_timer && timer_elapsed (gui_timer) > TAPPING_TERM) + unregister_code (KC_LGUI); + + if (layer != OHLFT) + oh_left_blink = 0; + if (layer != OHRGT) + oh_right_blink = 0; + + if (layer == HUN) { + ergodox_right_led_2_on(); + ergodox_right_led_3_on(); + } else if (layer == EMACS) { + ergodox_right_led_1_on(); + ergodox_right_led_2_on(); + } else if (layer == PLVR) { + ergodox_right_led_1_on (); + ergodox_right_led_2_on (); + ergodox_right_led_3_on (); + } else if (layer == EXPRM) { + ergodox_right_led_1_on (); + ergodox_right_led_2_on (); + ergodox_right_led_3_on (); + + ergodox_right_led_2_set (LED_BRIGHTNESS_HI); + } + + if (layer == OHLFT || layer == OHRGT) { + ergodox_right_led_2_on(); + + if (oh_left_blink) { + if (timer_elapsed (oh_left_blink_timer) > OH_BLINK_INTERVAL) { + if ((keyboard_report->mods & MOD_BIT(KC_LSFT)) == 0) + ergodox_right_led_1_off (); + } + if (timer_elapsed (oh_left_blink_timer) > OH_BLINK_INTERVAL * 2) { + ergodox_right_led_1_on (); + oh_left_blink_timer = timer_read (); + } + } + + if (oh_right_blink) { + if (timer_elapsed (oh_right_blink_timer) > OH_BLINK_INTERVAL) { + if ((keyboard_report->mods & MOD_BIT(KC_LCTRL)) == 0) + ergodox_right_led_3_off (); + } + if (timer_elapsed (oh_right_blink_timer) > OH_BLINK_INTERVAL * 2) { + ergodox_right_led_3_on (); + oh_right_blink_timer = timer_read (); + } + } + } + + if (keyboard_report->mods & MOD_BIT(KC_LSFT) || + ((get_oneshot_mods() & MOD_BIT(KC_LSFT)) && !has_oneshot_mods_timed_out())) { + ergodox_right_led_1_set (LED_BRIGHTNESS_HI); + ergodox_right_led_1_on (); + } else { + ergodox_right_led_1_set (LED_BRIGHTNESS_LO); + if (layer != OHLFT && layer != EMACS && layer != PLVR && layer != EXPRM) + ergodox_right_led_1_off (); + } + + if (keyboard_report->mods & MOD_BIT(KC_LALT) || + ((get_oneshot_mods() & MOD_BIT(KC_LALT)) && !has_oneshot_mods_timed_out())) { + ergodox_right_led_2_set (LED_BRIGHTNESS_HI); + ergodox_right_led_2_on (); + } else { + ergodox_right_led_2_set (LED_BRIGHTNESS_LO); + if (layer != OHRGT && layer != HUN && layer != OHLFT && layer != EMACS && layer != PLVR && layer != EXPRM) + ergodox_right_led_2_off (); + } + + if (keyboard_report->mods & MOD_BIT(KC_LCTRL) || + ((get_oneshot_mods() & MOD_BIT(KC_LCTRL)) && !has_oneshot_mods_timed_out())) { + ergodox_right_led_3_set (LED_BRIGHTNESS_HI); + ergodox_right_led_3_on (); + } else { + ergodox_right_led_3_set (LED_BRIGHTNESS_LO); + if (layer != OHRGT && layer != HUN && layer != PLVR && layer != EXPRM) + ergodox_right_led_3_off (); + } + + LEADER_DICTIONARY() { + leading = false; + leader_end (); + + SEQ_ONE_KEY (KC_U) { + ang_do_unicode (); + } + +#ifdef QMK_VERSION + SEQ_ONE_KEY (KC_V) { + SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION); + } +#endif + + SEQ_ONE_KEY (KC_L) { + /* λ */ + ang_do_unicode (); + + uint16_t codes[] = {KC_0, KC_3, KC_B, KC_B, KC_ENT, 0}; + ang_tap (codes); + } + + SEQ_ONE_KEY (KC_Y) { + uint16_t codes[] = {KC_BSLS, KC_O, KC_SLSH, 0}; + ang_tap (codes); + } + + SEQ_ONE_KEY (KC_S) { + ang_do_unicode (); TAP_ONCE (KC_A); TAP_ONCE (KC_F); TAP_ONCE (KC_SPC); + TAP_ONCE (KC_BSLS); + register_code (KC_RSFT); TAP_ONCE (KC_MINS); TAP_ONCE (KC_9); unregister_code (KC_RSFT); + ang_do_unicode (); TAP_ONCE (KC_3); TAP_ONCE (KC_0); TAP_ONCE (KC_C); TAP_ONCE (KC_4); TAP_ONCE (KC_SPC); + register_code (KC_RSFT); TAP_ONCE (KC_0); TAP_ONCE (KC_MINS); unregister_code (KC_RSFT); + TAP_ONCE (KC_SLSH); + ang_do_unicode (); TAP_ONCE (KC_A); TAP_ONCE (KC_F); TAP_ONCE (KC_SPC); + } + + SEQ_TWO_KEYS (KC_W, KC_M) { + register_code (KC_LALT); + register_code (KC_F2); + unregister_code (KC_F2); + unregister_code (KC_LALT); + + _delay_ms (1000); + + uint16_t codes[] = {KC_M, KC_A, KC_X, KC_MINS, KC_F, KC_O, KC_C, KC_U, KC_S, KC_E, KC_D, KC_ENT, 0}; + ang_tap (codes); + register_code (KC_LGUI); + register_code (KC_UP); + unregister_code (KC_UP); + unregister_code (KC_LGUI); + } + + SEQ_ONE_KEY (KC_E) { + if (is_exp == 0) { + default_layer_and (0); + default_layer_or ((1 << EXPRM)); + is_exp = 1; + + ergodox_led_all_off (); + ergodox_right_led_3_on (); + _delay_ms (100); + ergodox_right_led_2_on (); + _delay_ms (100); + ergodox_right_led_3_off (); + ergodox_right_led_1_on (); + _delay_ms (100); + ergodox_right_led_2_off (); + _delay_ms (100); + ergodox_right_led_1_off (); + } else { + is_exp = 0; + default_layer_and (0); + default_layer_or (1 << BASE); + + ergodox_led_all_off (); + ergodox_right_led_1_on (); + _delay_ms (100); + ergodox_right_led_2_on (); + _delay_ms (100); + ergodox_right_led_1_off (); + ergodox_right_led_3_on (); + _delay_ms (100); + ergodox_right_led_2_off (); + _delay_ms (100); + ergodox_right_led_3_off (); + + } + } + } +} diff --git a/keyboards/ergodox_ez/keymaps/algernon/readme.md b/keyboards/ergodox_ez/keymaps/algernon/readme.md new file mode 100644 index 0000000000..c66b33f3d9 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/algernon/readme.md @@ -0,0 +1,158 @@ +algernon's layout +======================= + +This is an unconventional layout for the ErgoDox EZ. For more details about the +history of the layout, see my +[blog posts about my ErgoDox journey][blog-ergodox]. + + [blog-ergodox]: https://asylum.madhouse-project.org/blog/tags/ergodox/ + +Some of the things in the layout only work when one uses Spacemacs and GNOME +under Linux. Your mileage may vary. + +## Base layer + +[![Base layer](images/base-layer.png)](http://www.keyboard-layout-editor.com/#/gists/28f7eb305fdbff943613e1dc7aa9e82b) + +At its core, this is a Dvorak layout, with some minor changes (for example, `-` +being on the left half, and on the innermost key of the bottom row on the +right). The more interesting parts are how certain keys behave: + +* The keys on the number row double as function keys, when held for a bit longer + than an usual tap. This allows me to use the function keys without having to + switch layers. +* The `Shift`, `Alt`, and `Control` modifiers are one-shot. When tapped, they + are considered active for the next key press only. When double tapped, they + toggle on, until a third, single tap sometime later. When held, they act as + expected. My usual pattern is that I use these for the next keypress only, so + this behaviour is perfect. If I need them held, I'll just double-tap. +* The `GUI` key is special, because when I double-tap it, it sends `GUI + w`, + which pops up an application selector. It also switches to a one-shot layer, + where the number row on the left half turns into app selector macros, for the + most common things I usually want to switch to. Otherwise it behaves as on a + normal layout. +* The `ESC` key also doubles as a one-shot cancel key: if tapped while any of + the one-shot modifiers are in-flight (as in, single-tapped, and not expired + yet), it cancels all one-shot modifiers. Otherwise it sends the usual keycode. +* The **Emacs** and **Hun** layer keys are one-shot, the **1Hand** and **STENO** + keys are toggles. +* The **Lead** key allows me to type in a sequence of keys, and trigger some + actions: + - `LEAD u` enters unicode input mode, by sending the GTK+ key sequence that + does this. + - `LEAD l` uses the unicode input method to enter a `λ`. + - `LEAD s` does a lot of magic to type in a shruggie: `¯\_(ツ)_/¯` + - `LEAD y` types `\o/`. + - `LEAD w m` maximises the currently focused window. + - `LEAD e` makes the [experimental layer](#experimental-layer) the default. + - `LEAD v` prints the firmware version, the keyboard and the keymap, if + compiled with a QMK version that has these available. + +## Hungarian layer + +[![Hungarian layer](images/hun-layer.png)](http://www.keyboard-layout-editor.com/#/gists/b160f6ec90d58c127c114c89f66e9dc9) + +On this layer, the accented characters are at the same position as their base +variant. For some, which can have other diatribes, the long one is on top, +short's on bottom. Tapping any of the accented characters takes us back to the +base layer. + +## Emacs layer + +[![Emacs layer](images/emacs-layer.png)](http://www.keyboard-layout-editor.com/#/gists/c59c453f9fe1a3238ba1494e7e5c6892) + +This layer is primarily for navigating text - and for some mousing and other +things, because there was space. Most of the keys should be pretty +self-explanatory, except for a few: + +* There are three keys on the bottom row of the left side, that change how some + of the other keys - explained just below - work. The keys are for *Emacs + mode* (the default), *Terminal mode*, and *Traditional mode*, respectively. +* The *Visual mode* key (the top big key on the left side) sends the `v` key in + *Emacs mode*, to enter Visual mode in Spacemacs. In all other modes, it is a + no-op. +* The *Copy/Cut* key (the bottom big key on the left side) sends the copy + command on tap, the cut one when held for longer than a normal tap. The **copy + command** is `y` in *Emacs mode*, `Ctrl-Shift-c` in *Terminal mode*, and + `Ctrl-c` in *Traditional mode*. The **cut command** is `x` in *Emacs mode*, + `Ctrl-Shift-x` in *Terminal Mode* and `Ctrl-x` in *Traditional mode*. +* The *Paste/Delete* key (the leftmost key on the left thumb cluster) sends the + paste command on tap, the delete one when held longer than a normal tap. The + **paste command** is `p` in *Emacs mode*, `Ctrl-Shift-v` in *Terminal mode*, + and `Ctrl-v` in *Traditional mode*. The **delete command** is `d` in *Emacs + mode*, and `DEL` in the other two. +* The `A`, `I` and `R` keys will - after sending themselves - clear the layer + back to the base layer. This allows a quick escape from the layer. + +## One-handed layer + +[![One-handed layer](images/one-handed-layer.png)](http://www.keyboard-layout-editor.com/#/gists/edff2495135955b8963198dace7f7ece) + +The one-handed layer is used in situations where the right hand is occupied, by +mousing around, for example. Tapping the `OTHER` key switches which side is +active. For the most part, keys remain in their usual position. When the right +half is active, keys are mirrored to the left half. + +The differences are as follows: + +* The `ESC` key has been moved to the bottom row, so the `OTHER` key is easier + to tap. +* Most keys on the thumb cluster now have dual uses, and these do not change + when switching sides: + - The `Space`/`Backspace` key sends `Space` on tap, `Backspace` when held + for longer than a normal tap. + - The `Enter`/`Shift` key sends `Enter` on short-tap, `Shift` on long-tap. +* The `Apps`/`BASE` key can be used to go back to the base layer, by + long-tapping it. A short-tap will send the `App` key, as usual. + +## Steno layer + +[![Steno layer for Plover](images/steno-layer.png)](http://www.keyboard-layout-editor.com/#/gists/401ef9a84369e47c57f9aedcf0a0d667) + +This is to be used with [Plover](http://www.openstenoproject.org/plover/), +nothing really fancy here. The **STENO** key toggles the layer on and off, and +sends the toggle command to Plover too. + +## Experimental layer + +[![Experimental layer](images/experimental-layer.png)](http://www.keyboard-layout-editor.com/#/gists/6ff50bf71248e05aab5b3fec4fae3d08) + +While using the standard Dvorak layout, I encountered a number of +inconveniences, and on this layer, I am playing with ideas to make the layout +feel better. Initially, it was based on [Capewell-Dvorak][cpd], but that too, +had shortcomings I was not happy with. So now this is something inbetween, with +own observations thrown in. How it works out in the long run remains to be seen. + + [cpd]: http://www.michaelcapewell.com/projects/keyboard/layout_capewell-dvorak.htm + +# Building + +To make my workflow easier, this layout is maintained in +[its own repository][algernon:ez-layout]. To build it, you will need the +[QMK][qmk] firmware checked out, and this repo either checked out, or symlinked +to `keyboards/ergodox_ez/algernon`. One way to achieve that is this: + + [algernon:ez-layout]: https://github.com/algernon/ergodox-layout + [qmk]: https://github.com/jackhumbert/qmk_firmware + +``` +$ git clone https://github.com/jackhumbert/qmk_firmware.git +$ cd qmk_firmware/keyboards/ergodox_ez +$ git clone https://github.com/algernon/ergodox-layout.git keymaps/algernon +$ make KEYMAP=algernon +``` + +From time to time, updates may be submitted back to the QMK repository. If you +are reading it there, you can build the firmware like any other firmware +included with it (assuming you are in the root directory of the firmware): + +``` +$ cd keyboards/ergodox_ez +$ make KEYMAP=algernon +``` + +# License + +The layout, being a derivative of the original TMK firmware which is under the +GPL-2+, this layout is under the GPL as well, but GPL-3+, rather than the older +version. diff --git a/keyboards/ergodox_ez/keymaps/algernon/tools/max-focused b/keyboards/ergodox_ez/keymaps/algernon/tools/max-focused new file mode 100755 index 0000000000..4d5220aa8b --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/algernon/tools/max-focused @@ -0,0 +1,5 @@ +#! /bin/sh +WIN="$(xdotool getactivewindow)" +wmctrl -i -r ${WIN} -b remove,maximized_vert,maximized_horz +xdotool windowsize ${WIN} 100% 100% +wmctrl -i -r ${WIN} -b add,maximized_vert,maximized_horz diff --git a/keyboards/ergodox_ez/keymaps/andrew_osx/compiled.hex b/keyboards/ergodox_ez/keymaps/andrew_osx/compiled.hex new file mode 100644 index 0000000000..14d0fbe0bd --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/andrew_osx/compiled.hex @@ -0,0 +1,1158 @@ +:100000000C947A020C94BE020C94BE020C94BE02B4 +:100010000C94BE020C94BE020C94BE020C94BE0260 +:100020000C94BE020C94BE020C94620D0C94340E1F +:100030000C94BE020C94BE020C94BE020C94BE0240 +:100040000C94BE020C943E220C94BE020C94BE0290 +:100050000C94BE020C94D11B0C94BE020C94BE02F4 +:100060000C94BE020C94BE020C94BE020C94BE0210 +:100070000C94BE020C94BE020C94BE020C94BE0200 +:100080000C94BE020C94BE020C94BE020C94BE02F0 +:100090000C94BE020C94BE020C94BE020C94BE02E0 +:1000A0000C94BE020C94BE020C94BE02A10EC30EB0 +:1000B000B10FC30EB10F080F2B0FB10F800F930FAD +:1000C0006212621291129112C712E71218141814D8 +:1000D000F2121814A213A2130914181418141214EB +:1000E000AF13AF13AF13AF13AF13AF13AF13AF1300 +:1000F000AF13AF13AF13AF13AF13AF13AF13AF13F0 +:10010000C113CE13D513DC13E6130000F0A12E00AB +:100110002B002971E100354100001E00140004008D +:100120001D71E20027021F001A0016001B00E104E7 +:10013000E300200008000700060050002C0021000A +:100140001500090019004F002602220017000A00BE +:100150000500000065743400C1000000007F00004D +:10016000E3003400C10000000077000029002300F4 +:100170001C000B00110000002971240018000D0064 +:10018000100052002F0225000C000E003600510016 +:100190002800260012000F0037002F00E70027007C +:1001A000130033423871300030022A002D00310034 +:1001B000E500015400000100010001000100010000 +:1001C00000003A001E0220022202010001003B0052 +:1001D0001F0221022302010001003C002F0226021F +:1001E0002F00010001003D00300227023000010015 +:1001F00001003E003102350035020000010001001F +:1002000001000000010000000100010001000000E9 +:100210000100000001003F005200510024020000D4 +:1002200001004000240021001E00010001004100E7 +:10023000250022001F003700010042002600230095 +:10024000200027000100430025022E0231002E006D +:100250000100440045000100010001000000010010 +:100260000100010001000100000001000100010087 +:1002700001000100010001000100F2000100010085 +:1002800001000100F000F1000100F4000100010094 +:100290000100F3000100F500010001000100010070 +:1002A0000100000001000100010000000100000049 +:1002B0000100010001000000010000000100010038 +:1002C0000100010001000000010001000100010027 +:1002D0000100A9000100010001000100AC00AA001A +:1002E000B600010001000100AB00A8000100010000 +:1002F0000100010001000100010001000100AE0049 +:1003000001000100000016034500720067006F0045 +:1003100044006F007800200045005A0000001603DA +:100320004500720067006F0044006F0078002000F5 +:1003300045005A0000000403090409026D0004018D +:1003400000A0FA09040000010301010009211101C4 +:100350000001223F000705810308000A090401008B +:100360000103010200092111010001224D000705CE +:10037000820308000A0904020001030000000921A9 +:10038000110100012236000705830308000A090451 +:1003900003000103000000092111010001223900BE +:1003A000070584031000011201100100000008ED90 +:1003B000FE071301000102000105010906A1010564 +:1003C0000719E029E7150025019508750181020547 +:1003D000081901290595057501910295017503918B +:1003E0000105071900297715002501957875018108 +:1003F00002C005010980A101850216010026B7008F +:100400001A01002AB700751095018100C0050C097A +:1004100001A1018503160100269C021A01002A9CF5 +:1004200002751095018100C005010902A1010901B1 +:10043000A10005091901290515002501950575017A +:10044000810295017503810105010930093115818A +:10045000257F95027508810609381581257F95014C +:1004600075088106050C0A38021581257F950175EE +:10047000088106C0C005010906A101050719E02988 +:10048000E715002501950875018102950175088120 +:100490000105081901290595057501910295017558 +:1004A0000391010507190029FF150025FF95067521 +:1004B000088100C0000000000000000000000001F2 +:1004C0000204060A0F17202C3A4A5D71879DB3C7B4 +:1004D000DAE9F5FCFFFCF5E9DAC7B39D87715D4AFF +:1004E0003A2C20170F0A0604020100000000000049 +:1004F0000000000011241FBECFEFDAE0DEBFCDBF49 +:1005000004B603FE24C08091FB019091FC01A091F0 +:10051000FD01B091FE018730904BA740B04BB9F47C +:100520001092FB011092FC011092FD011092FE014D +:1005300014BE84B7877F84BF88E10FB6F894809398 +:100540006000109260000FBEE0E0FFE3099511E04B +:10055000A0E0B1E0EAE0F8E402C005900D92A43317 +:10056000B107D9F711E0A4E3B1E001C01D92AB3FA0 +:10057000B107E1F70E94A60A0C9403240C94000032 +:100580001092B9008AE08093B800089594EA90939D +:10059000BC009091BC0097FFFCCF9091B900987F70 +:1005A000983021F0903111F081E008958093BB00E4 +:1005B00084E88093BC008091BC0087FFFCCF8091D1 +:1005C000B900887F883111F0803471F780E0089598 +:1005D00084E98093BC008091BC0084FDFCCF089529 +:1005E0008093BB0084E88093BC008091BC0087FFAF +:1005F000FCCF9091B900987F81E0983209F480E0B7 +:10060000089584E88093BC008091BC0087FFFCCFF4 +:100610008091BB00089580910101811115C080E493 +:100620000E94C6028093010181110CC082E10E94E8 +:10063000F00280930101811105C08FEF0E94F0024A +:10064000809301010E94E80284B1807F84B985B162 +:10065000807F85B98AB1837F8AB98BB1837F8BB95B +:100660003E98469808950E94C604809301010E9416 +:100670000B0380B38C7080BB81B3836F81BBA5E318 +:10068000B1E0E3E4F1E08EE08E0F11921D928E1343 +:10069000FCCF0C94B004BF92CF92DF92EF92FF9206 +:1006A0000F931F93CF93DF9380910101882379F0FB +:1006B000809134018F5F80933401811108C00E94C2 +:1006C000C60480930101811102C00E94580405E311 +:1006D00011E0C0E0D0E0DD24D39482E0C82EEE2407 +:1006E000E394F12CC730D10500F58091010181110F +:1006F00064C080E40E94C60280930101811112C08F +:1007000082E10E94F0028093010181110BC0C701B8 +:100710000C2E01C0880F0A94EAF780950E94F0021F +:10072000809301010E94E80248C0CA30A1F028F479 +:10073000C83059F0C93061F005C0CC3089F070F094 +:10074000CD3089F0209A289810C0219A29980DC0A0 +:10075000229A2A980AC0239A2B9807C0529A01C05D +:10076000539A5B9802C03E9A469890EA9A95F1F7A0 +:100770009FB1799902C082E001C080E091709D250F +:10078000982B7C9902C084E001C080E0892B7D9980 +:1007900002C038E001C030E0832B7E9902C020E126 +:1007A00001C020E0822B9FB19095991F9927991F36 +:1007B0009295990F907E892B0FC080910101811134 +:1007C00049C080E40E94C60280930101882379F128 +:1007D000B12C0E94E8028B2DF8019081981719F036 +:1007E0008083C09200010E940B0321960F5F1F4F70 +:1007F000CE30D10509F076CF80910001882361F1D8 +:10080000815080930001882339F08FE99FE00197A0 +:10081000F1F700C0000020C0A3E4B1E0E5E3F1E09F +:10082000CF01825F91919D938E13FCCF15C083E120 +:100830000E94F002809301018111CACF81E40E94DD +:10084000C602809301018111C3CF0E940103B82E1B +:10085000B094BFCF80E0C0CF0E94560481E0DF910A +:10086000CF911F910F91FF90EF90DF90CF90BF90AD +:100870000895E82FF0E0ED5BFE4F80810895089524 +:100880000F931F93CF93DF93C3E4D1E010E00C2FBD +:10089000025F899190E00E94F71A180F0C13F9CFAC +:1008A000812FDF91CF911F910F9108950C94260510 +:1008B00056985E9825982D9826982E9827982F98C8 +:1008C0008FEF90E0909389008093880090938B0045 +:1008D00080938A0090938D0080938C00259A2D9AA6 +:1008E0002FEF80E792E0215080409040E1F700C078 +:1008F0000000269A2E9A2FEF80E792E02150804048 +:100900009040E1F700C00000279A2F9A2FEF80E770 +:1009100092E0215080409040E1F700C0000025980F +:100920002D982FEF80E792E0215080409040E1F732 +:1009300000C0000026982E982FEF80E792E021500B +:1009400080409040E1F700C0000027982F9856980B +:100950005E9825982D9826982E9827982F98089578 +:1009600089EA8093800089E08093810024982C9804 +:100970003F988AB18F748AB96E98479A8BB1806B11 +:100980008BB9769A0E9458040C94250580E28093D6 +:1009900001018091510181110EC00E94C00281E0CD +:1009A000809351012FEF83ED90E3215080409040E0 +:1009B000E1F700C0000080E40E94C60280930101BC +:1009C00081112EC00E94F00280930101811128C084 +:1009D0000E94F00280930101811122C08FE30E94E6 +:1009E000F0028093010181111BC00E94E80280E4A3 +:1009F0000E94C60280930101811112C08CE00E9406 +:100A0000F0028093010181110BC00E94F0028093DB +:100A10000101811105C08FE30E94F0028093010162 +:100A20000E94E80280910101089561110BC0FC0150 +:100A30008281882321F085EE0E94061103C085EE95 +:100A40000E94CE1180E090E0089508956091BD016C +:100A50007091BE018091BF019091C0010E94031B63 +:100A600056985E9825982D9826982E9827982F9816 +:100A7000813019F0823021F00895259A2D9A089539 +:100A8000269A2E9A089581E0089581E008950C94A5 +:100A9000450508950F931F93CF93DF938C01FC01BD +:100AA000C081D181CE010E947C19BE010E94F30554 +:100AB000EC01B8010E944705882309F48DC0F801B4 +:100AC0008281882309F44AC080915D0181111FC091 +:100AD000C431F0E5DF0709F051C00E94490581E00B +:100AE00080935D010E949B1B90935C0180935B014E +:100AF0001092540110925601109255011092580113 +:100B00001092570110925A011092590165C08091BC +:100B10005B0190915C010E94A71B883C910570F4D9 +:100B200080915401E82FF0E0EE0FFF1FEB5AFE4FCB +:100B3000D183C0838F5F809354014EC0C43880E559 +:100B4000D80721F0C538D04501F13AC0F8018281BB +:100B5000882341F01092520182E01EC0C438E0E5C3 +:100B6000DE0759F580915201811106C086E20E948C +:100B7000061186E20E94CE1182E01CC0C438F0E566 +:100B8000DF0741F3C538D045D9F4F80182818823C5 +:100B900031F01092530180E20E941D121DC080911D +:100BA0005301811106C087E20E94061187E20E946C +:100BB000CE1180E20E9424120FC0C538D04529F31F +:100BC00081E08093520180935301C801DF91CF915E +:100BD0001F910F910C94430580E0DF91CF911F91FD +:100BE0000F910895089596E0799FF001112494E5FE +:100BF000899FE00DF11D1124E60FF11DEE0FFF1F7F +:100C0000E25FFE4F859194910895880F991FFC0132 +:100C1000E657F040859194910895880F991FFC0143 +:100C2000E65FFE4F8591949108950F931F93CF93A4 +:100C3000DF93EC01811520E3920750F5C11580E2A6 +:100C4000D80708F0C3C0CB3BD10590F4C83AD10512 +:100C500008F06AC0C53AD10508F05BC0C430D105C0 +:100C600008F0D0C1219709F0CAC101E010E00AC222 +:100C7000CF3FD10511F008F0C5C1C03FD10508F044 +:100C8000A2C0CE01805E9109089708F4BBC1B7C12C +:100C9000C13090E5D90709F4A2C020F5C0318FE436 +:100CA000D80770F4C11590E4D90708F094C0C115B5 +:100CB00021E3D20708F0A3C1DD278E01106CE2C149 +:100CC000C115D04509F09BC10E9483148FEF94E3B6 +:100CD0002CE0815090402040E1F700C000000E94CD +:100CE000F61BD0C1C11597E5D90758F4C03121E5ED +:100CF000D20708F01CC1C43180E5D80708F475C0DC +:100D00007EC1CE0190578115904108F078C1DF7007 +:100D100073C1C53AD10509F477C1C63AD10509F0C6 +:100D200076C102E810E4AEC1C83AD10509F472C137 +:100D3000C93AD10509F471C1CA3AD10509F470C1A3 +:100D4000CB3AD10509F46FC1CC3AD10509F46EC193 +:100D5000CD3AD10509F46DC1C03BD10509F46CC190 +:100D6000CE3AD10509F46BC1CF3AD10509F46AC175 +:100D7000C13BD10509F469C1C23BD10509F468C181 +:100D8000C33BD10509F467C1C43BD10509F466C171 +:100D9000C53BD10509F465C1C63BD10509F464C161 +:100DA000C73BD10509F463C1C83BD10509F462C151 +:100DB000C93BD10509F461C1CA3BD10509F460C141 +:100DC00000E014E45FC18E0110655CC1CE019F702C +:100DD0000E940D0658C1DF708E01106A53C18091C8 +:100DE000DA0181608093DA014DC10E949B1D81115F +:100DF00002C00E94811D0E94B81D90E09093FB01EB +:100E00008093FA01C23080E5D80721F48091FA017D +:100E1000816086C0C43090E5D90721F48091FA0141 +:100E200082607EC0C63020E5D20721F48091FA01AD +:100E3000846076C0C83080E5D80719F48091FA0143 +:100E400027C0CA3090E5D90721F48091FA0180616A +:100E500067C0CC3020E5D20721F48091FA0180628E +:100E60005FC0CE3080E5D80721F48091FA0180641C +:100E700057C0C03190E5D90721F48091FA0180680C +:100E80004FC0C23120E5D20729F48091FA01846075 +:100E9000886046C0C33080E5D80721F48091FA010C +:100EA0008E7F3EC0C53090E5D90721F48091FA01CC +:100EB0008D7F36C0C73020E5D20721F48091FA013A +:100EC0008B7F2EC0C93080E5D80719F48091FA01D4 +:100ED00026C0CB3090E5D90721F48091FA018F7EAE +:100EE0001FC0CD3020E5D20721F48091FA018F7D1B +:100EF00017C0CF3080E5D80721F48091FA018F7BAD +:100F00000FC0C13190E5D90721F48091FA018F77A4 +:100F100007C0C331D04531F48091FA018B7F877FC0 +:100F20008093FA018091FA010E94BC1DABC08D2F05 +:100F300099278F70992781309105D9F49E012370EC +:100F4000332702C0880F991F2A95E2F79C688E010B +:100F500044E0000F111F4A95E1F700271370802B22 +:100F6000912B53E0CC0FDD1F5A95E1F7C076DD27BA +:100F70002FC08230910531F4DC2FCC278E01016F18 +:100F8000106A80C08330910569F4CE01837099277F +:100F900001E010E002C0000F111F8A95E2F7C801BE +:100FA0009C680FC084309105B9F4CE0183709927F5 +:100FB00001E010E002C0000F111F8A95E2F7C8019E +:100FC0009A6823E0CC0FDD1F2A95E1F7C07ED77029 +:100FD0008C010C2B1D2B56C08530910531F4DC2F74 +:100FE000CC278E01046F106A4DC0069709F04AC0E5 +:100FF000CF71DD27DC2FCC278E01106243C000E0CB +:1010000010E040C08E013EC001E810E43BC003E8A0 +:1010100010E438C002EE14E435C009EE14E432C026 +:101020000AEE14E42FC005EB14E42CC006EB14E424 +:1010300029C007EB14E426C00CEC14E423C00DEC2B +:1010400014E420C003E815E41DC00AE815E41AC042 +:1010500002E915E417C004E915E414C001E216E43E +:1010600011C003E216E40EC004E216E40BC005E270 +:1010700016E408C006E216E405C007E216E402C062 +:101080000AE216E4C801DF91CF911F910F910895F4 +:1010900096E0799FF001112494E5899FE00DF11D00 +:1010A0001124E60FF11DEE0FFF1FE25FFE4F859149 +:1010B0009491803E9105E0F4803C910558F5813390 +:1010C000910509F46FC048F48932910509F463C0B1 +:1010D0008A32910509F46DC072C089339105E9F037 +:1010E00082389105D1F08533910509F44DC067C070 +:1010F000833E910581F138F4803E9105B9F0823E3E +:101100009105D9F05CC0863E910561F1873E91055D +:10111000A1F155C00E94050608952091FA0120FD15 +:1011200002C021FF4CC080EE90E049C08091FA01DE +:1011300080FFF9CF89E390E042C08091FA0182FFFD +:101140000EC08091FA0184FF03C080E090E037C0B8 +:1011500083EE90E034C08091FA0182FFF2CF82EEFC +:1011600090E02DC08091FA0183FF0BC08091FA01BD +:1011700084FDEBCF87EE90E022C08091FA0183FFDF +:10118000F5CF86EE90E01BC08091FA0185FF07C085 +:1011900089E290E014C08091FA0185FFF9CF85E3E0 +:1011A00090E00DC08091FA0186FF07C08AE290E0CE +:1011B00006C08091FA0186FFF9CF81E390E00E949A +:1011C0001506089508950C94E20880916E01089523 +:1011D000CF93DF9300D01F92CDB7DEB79C018091F3 +:1011E000F101843019F593E099833B832A8390932E +:1011F000E9008FEF9091E800815095FD06C095EDD4 +:101200009A95F1F700008111F5CF8091E80085FFF4 +:101210000DC040E050E063E070E0CE0101960E9416 +:10122000520B8091E8008E778093E8000F900F902A +:101230000F90DF91CF910895CF93DF9300D01F924D +:10124000CDB7DEB72091F101243021F522E02983CA +:101250009B838A8383E08093E9008FEF9091E8007D +:10126000815095FD06C095ED9A95F1F7000081112A +:10127000F5CF8091E80085FF0DC040E050E063E0CD +:1012800070E0CE0101960E94520B8091E8008E77AB +:101290008093E8000F900F900F90DF91CF91089509 +:1012A0002091F1012430F1F422E02093E9002FEFA6 +:1012B0003091E800215035FD06C035ED3A95F1F743 +:1012C00000002111F5CF2091E80025FF0BC040E080 +:1012D00050E065E070E00E94520B8091E8008E774C +:1012E0008093E8000895CF93DF93EC019091F10192 +:1012F000943009F046C080910C018823D9F0809188 +:101300000D018823B9F09093E9008FEF9091E800E8 +:10131000815095FD06C095E19A95F1F70000811185 +:10132000F5CF8091E80085FF2CC040E050E060E1FF +:1013300070E017C081E08093E9008FEF9091E800A2 +:10134000815095FD06C095ED9A95F1F70000811149 +:10135000F5CF8091E80085FF14C040E050E068E0E0 +:1013600070E0CE010E94520B8091E8008E7780934E +:10137000E80080E1FE01AEE5B1E001900D928A95B2 +:10138000E1F7DF91CF9108958091F001811109C0BB +:101390000E94E70C0E94440D8091E20084608093DB +:1013A000E20008951092F001089508950C942B2204 +:1013B0000E948C1B0E9431220E94EA0F0C94E308C9 +:1013C00042E061EC81E00E94610C42E061EC82E06D +:1013D0000E94610C42E061EC83E00E94610C42E1FA +:1013E00061EC84E00C94610C8091F301833009F48A +:1013F00055C030F4813071F0823009F48EC0089508 +:101400008A3009F47AC08B3009F460C0893009F061 +:101410009CC020C08091F201813A09F096C0809171 +:10142000E800877F8093E8008091F6019091F701B2 +:10143000892B21F460E18EE591E003C060E080E05B +:1014400090E070E00E949D0B8091E8008B77809384 +:10145000E80008958091F201813209F076C0809110 +:10146000F6019091F701009719F0039709F06DC00C +:101470008091E800877F8093E8008091E80082FDFA +:1014800005C08091F1018111F8CF5FC08091F1001A +:1014900080936E018091E8008B7753C08091F201B8 +:1014A000813A09F052C08091F6019091F701892BA1 +:1014B00009F04BC08091E800877F8093E80080911D +:1014C000E80080FFFCCF80910C0136C08091F201D2 +:1014D0008132D9F58091F6019091F701892BA9F518 +:1014E0008091E800877F8093E8000E94960C8091AD +:1014F000F40180930C010C9483148091F2018132E9 +:1015000021F58091E800877F8093E8000E94960C87 +:101510008091F50180936F0108958091F201813AE5 +:10152000A1F48091E800877F8093E8008091E80033 +:1015300080FFFCCF80916F018093F1008091E800E3 +:101540008E778093E8000C94960C089584B7877F7B +:1015500084BF88E10FB6F894809360001092600019 +:101560000FBE90E080E80FB6F894809361009093EE +:1015700061000FBE0E9439100E94E70C0E94440DCA +:101580008091E20084608093E20078940E94CA0F08 +:101590000E943B1082E091E00E94E50F0E94192218 +:1015A0008091F101853069F40E94531B8091EF0115 +:1015B0008823B1F30E947E1B882391F30E943C0B89 +:1015C000EFCF0E944110ECCF292F33272330310574 +:1015D000C9F064F42130310581F02230310509F081 +:1015E00043C08DE690E02AE333E042C0213231056A +:1015F000F1F02232310541F137C082E190E027EA73 +:1016000033E036C099278130910541F08230910551 +:1016100041F0892B49F5E6E3F3E005C0EEE1F3E0A4 +:1016200002C0E6E0F3E0849190E09F0121C06430C5 +:10163000D8F4E62FF0E0EE0FFF1FEE5DFE4F2081A5 +:10164000318189E090E014C0643070F470E0FB01F7 +:10165000EE0FFF1FE65EFE4F20813181FB01EA5E47 +:10166000FE4F808190E004C080E090E020E030E018 +:10167000FA0131832083089580E189BD82E189BD2B +:1016800009B400FEFDCF8091D8008F7D8093D800F3 +:101690008091E00082608093E0008091E00081FD15 +:1016A000FCCF0895CF92DF92EF92FF920F931F939A +:1016B000CF93DF93EC018B016A010E94B50C81117D +:1016C00033C0C114D10439F0F60180819181081B27 +:1016D000190BC80FD91FE12CF12C0115110519F1B7 +:1016E0008091E80085FD16C08091E8008E77809398 +:1016F000E800C114D10449F0F60180819181E80E1F +:10170000F91EF182E08285E00FC00E94B50C8823AB +:1017100021F30AC089918093F10001501109FFEF74 +:10172000EF1AFF0ADACF80E0DF91CF911F910F917E +:10173000FF90EF90DF90CF9008952091F8013091C5 +:10174000F9012617370748F06115710539F4209122 +:10175000E8002E772093E80001C0B90140E0611550 +:101760007105A9F12091F101222309F443C025302C +:1017700009F442C02091E80023FD40C02091E80018 +:1017800022FD32C02091E80020FFE9CF4091F30014 +:101790002091F20030E0342BFC01CF01611571057E +:1017A00059F02830310540F481918093F100615067 +:1017B00071092F5F3F4FF1CF41E02830310509F02B +:1017C00040E02091E8002E772093E800C8CF411137 +:1017D000C9CF0AC08091F101882361F0853061F0A2 +:1017E0008091E80083FD0AC08091E80082FFF2CF7B +:1017F00080E0089582E0089583E0089581E00895EF +:101800002091F8013091F9012617370748F061154A +:10181000710539F42091E8002E772093E80001C08B +:10182000B901FC0120E06115710591F18091F10190 +:10183000882309F440C0853009F43FC08091E80056 +:1018400083FD3DC08091E80082FD2FC08091E800BB +:1018500080FFE9CF2091F3008091F20090E0922B7D +:101860006115710559F08830910540F42491209359 +:10187000F1003196615071090196F2CF21E008978D +:1018800009F020E08091E8008E778093E800CBCFCC +:101890002111CCCF0AC08091F101882361F08530FD +:1018A00061F08091E80083FD0AC08091E80082FF2A +:1018B000F2CF80E0089582E0089583E0089581E00A +:1018C0000895982F973058F59093E900981739F0BC +:1018D0007091EC002091ED005091F00003C0242F96 +:1018E000762F50E021FF19C03091EB003E7F3093FE +:1018F000EB003091ED003D7F3093ED003091EB0037 +:1019000031603093EB007093EC002093ED00509326 +:10191000F0002091EE0027FF07C09F5FD3CF8F70AC +:101920008093E90081E0089580E008958091F201BC +:1019300087FF11C08091E80082FD05C08091F10110 +:101940008111F8CF11C08091E8008B770BC0809196 +:10195000F101882349F08091E80080FFF8CF809161 +:10196000E8008E778093E80008952091E40030919C +:10197000E50095E64091EC00842F817040FF22C085 +:101980008091E80080FD1CC08091F101882391F0D6 +:10199000853091F08091EB0085FD10C04091E4000E +:1019A0005091E5004217530729F39A01915011F71E +:1019B00084E0089582E0089583E0089581E0089529 +:1019C00080E008954091E80042FFDECF08950E9434 +:1019D000550D0E945D0DE0EEF0E080818160808316 +:1019E000E8EDF0E080818F77808319BCA7EDB0E04F +:1019F0008C918E7F8C9380818F7E80831092F001FA +:101A000008950F931F93CF93DF930E94550D0E946B +:101A10005D0DC8EDD0E088818F77888388818068EC +:101A2000888388818F7D888319BC1092F101109280 +:101A3000ED011092EF011092EE0100EE10E0F801BE +:101A400080818B7F808388818160888342E060E031 +:101A500080E00E94610CE1EEF0E080818E7F808367 +:101A6000E2EEF0E080818160808380818860808305 +:101A7000F80180818E7F8083888180618883DF91F7 +:101A8000CF911F910F910895E8EDF0E080818F7E56 +:101A90008083E7EDF0E080818160808384E082BF15 +:101AA00081E08093F0010C94010DE8EDF0E080817D +:101AB0008E7F80831092E20008951092DA001092D7 +:101AC000E10008951F920F920FB60F9211242F93E9 +:101AD0003F934F935F936F937F938F939F93AF93B6 +:101AE000BF93EF93FF938091E10082FF0BC0809141 +:101AF000E20082FF07C08091E1008B7F8093E100CC +:101B00000E94C90F8091DA0080FF1FC08091D80029 +:101B100080FF1BC08091DA008E7F8093DA00809175 +:101B2000D90080FF0DC080E189BD82E189BD09B483 +:101B300000FEFDCF81E08093F1010E94C40905C041 +:101B400019BC1092F1010E94D2098091E10080FF3E +:101B500019C08091E20080FF15C08091E2008E7F65 +:101B60008093E2008091E20080618093E2008091A6 +:101B7000D80080628093D80019BC85E08093F10181 +:101B80000E94D6098091E10084FF30C08091E2007C +:101B900084FF2CC080E189BD82E189BD09B400FECB +:101BA000FDCF8091D8008F7D8093D8008091E10097 +:101BB0008F7E8093E1008091E2008F7E8093E2002F +:101BC0008091E20081608093E2008091ED018823A2 +:101BD00011F084E007C08091E30087FD02C081E03E +:101BE00001C083E08093F1010E94D8098091E10057 +:101BF00083FF29C08091E20083FF25C08091E1002E +:101C0000877F8093E10082E08093F1011092ED01E3 +:101C10008091E1008E7F8093E1008091E2008E7FD1 +:101C20008093E2008091E20080618093E20042E0D4 +:101C300060E080E00E94610C8091F00088608093F9 +:101C4000F0000E94D509FF91EF91BF91AF919F9154 +:101C50008F917F916F915F914F913F912F910F9055 +:101C60000FBE0F901F9018951F920F920FB60F92F4 +:101C700011242F933F934F935F936F937F938F9391 +:101C80009F93AF93BF93CF93DF93EF93FF93C09155 +:101C9000E900CF708091EC00D82FD17080FDD0E8A2 +:101CA0001092E9008091F000877F8093F000789493 +:101CB0000E94780E1092E9008091F0008860809375 +:101CC000F000CD2BCF70C093E900FF91EF91DF9131 +:101CD000CF91BF91AF919F918F917F916F915F91C4 +:101CE0004F913F912F910F900FBE0F901F9018951D +:101CF0001F93CF93DF93CDB7DEB7AA970FB6F894B3 +:101D0000DEBF0FBECDBFE2EFF1E088E08E0F909115 +:101D1000F10091938E13FBCF0E94F4098091E800AB +:101D200083FF1FC18091F2019091F301492F50E090 +:101D30004A30510508F015C1FA01EA5AFF4F0C94D8 +:101D4000B323803881F0823809F00BC18091F6010D +:101D50008F708093E9008091EB0085FB882780F9E4 +:101D60001092E90006C08091EE019091EF0191116F +:101D700082609091E800977F9093E8008093F10053 +:101D80001092F100C8C0282F2D7F09F0EAC08823E7 +:101D900019F0823061F0E5C08091F401813009F0E2 +:101DA000E0C0933009F080E08093EF012BC0809178 +:101DB000F401811127C08091F6018F7009F4D1C020 +:101DC0008093E9002091EB0020FF1CC0933021F4A8 +:101DD0008091EB00806214C09091EB009061909331 +:101DE000EB0021E030E0A90102C0440F551F8A95A5 +:101DF000E2F74093EA001092EA008091EB008860DD +:101E00008093EB001092E9008091E800877F86C004 +:101E10008111A7C01091F4011F778091E3008078B1 +:101E2000812B8093E3008091E800877F8093E80016 +:101E30000E94960C8091E80080FFFCCF8091E30027 +:101E400080688093E300111102C082E001C083E04A +:101E50008093F10186C08058823008F082C0809162 +:101E6000F4019091F5018C3D53E0950779F583E0FD +:101E70008A838AE289834FB7F894DE01139620E0C3 +:101E80003EE051E2E32FF0E050935700E49120FF51 +:101E900003C0E295EF703F5FEF708E2F90E0EA3065 +:101EA00010F0C79601C0C0968D939D932F5F24318B +:101EB00049F74FBF8091E800877F8093E8006AE28E +:101EC00070E0CE0101960E949D0B14C0AE014F5FE1 +:101ED0005F4F6091F6010E94E40ABC01009709F48B +:101EE00040C09091E800977F9093E80089819A81A3 +:101EF0000E94000C8091E8008B778093E80031C04D +:101F0000803879F58091E800877F8093E8008091A0 +:101F1000ED018093F1008091E8008E778093E800D6 +:101F20000E94960C1EC081111CC09091F401923049 +:101F3000C0F48091E800877F8093E8009093ED01E2 +:101F40000E94960C8091ED01811106C08091E30002 +:101F500087FD02C081E001C084E08093F1010E940E +:101F6000E0098091E80083FF0AC08091E800877F44 +:101F70008093E8008091EB0080628093EB00AA964A +:101F80000FB6F894DEBF0FBECDBFDF91CF911F918A +:101F900008950895CF938091F1018823A1F0C09115 +:101FA000E900CF709091EC00892F817090FD80E85E +:101FB000C82B1092E9008091E80083FD0E94780E02 +:101FC000CF70C093E900CF910895909375018093ED +:101FD00074010895E0917401F0917501309721F03A +:101FE0000190F081E02D099480E00895E091740162 +:101FF000F0917501309721F00280F381E02D099472 +:102000000895E0917401F0917501309721F00480FA +:10201000F581E02D099408952091720130917301AA +:102020008217930771F09093730180937201E0918E +:102030007401F0917501309721F00680F781E02D51 +:1020400009940895209170013091710182179307CE +:1020500071F09093710180937001E0917401F0919F +:102060007501309721F00084F185E02D09940895E1 +:1020700008950C9438100E94921B0E9433030C9414 +:10208000541C9F92AF92BF92CF92DF92EF92FF9239 +:102090000F931F93CF93DF9300D000D000D0CDB724 +:1020A000DEB70E944B030DE010E0AA24A394B12CEC +:1020B000902E802F0E943904980129583E4F6901C3 +:1020C000F901F080F826A1F40150110988F78FEF8B +:1020D00089838A831B820E949B1B8160782F9D834A +:1020E0008C8349815A816B818D810E94D8102FC0C9 +:1020F0009091DA0191FF04C08E830E943F048E818B +:1021000025E030E0A501022E01C0440F0A94EAF751 +:10211000E42E4F21C1F029839A828E2191E009F4A7 +:1021200090E09B830E949B1B8160782F9D838C8312 +:1021300049815A816B818D810E94D810F60180817E +:10214000E826E08204C021503109E0F6BDCF0E94AC +:102150003B1F109176010E94EA0F1817B9F00E94F8 +:10216000EA0F8093760126960FB6F894DEBF0FBE75 +:10217000CDBFDF91CF911F910F91FF90EF90DF9036 +:10218000CF90BF90AF909F900C94E30826960FB627 +:10219000F894DEBF0FBECDBFDF91CF911F910F919D +:1021A000FF90EF90DF90CF90BF90AF909F900895F9 +:1021B000CF93DF93CDB7DEB72B970FB6F894DEBF82 +:1021C0000FBECDBF4F83588769877A878B87DE0123 +:1021D000119686E0FD0111928A95E9F785E0FE01EE +:1021E000379601900D928A95E1F749815A816B816A +:1021F0007C818D819E810E9421172B960FB6F894C9 +:10220000DEBF0FBECDBFDF91CF910895CF9388235E +:1022100009F4C2C0C82F823859F40E94EA0F81FD28 +:10222000BBC089E30E94FB190E94C81A89E30CC055 +:10223000833879F40E94EA0F80FDAEC083E50E94E6 +:10224000FB190E94C81A83E50E943D1ACF910C9495 +:10225000C81A843859F40E94EA0F82FD9DC087E4B1 +:102260000E94FB190E94C81A87E4EECF8CEF8C0FF6 +:10227000813A48F48C2F0E947E2181118DC08C2FD1 +:102280000E94FB19E3CF80E28C0F883048F4C770BE +:1022900081E001C0880FCA95EAF70E94811AD6CF63 +:1022A0008BE58C0F833078F4C53A29F0C63A31F0CB +:1022B00083E890E005C081E890E002C082E890E009 +:1022C000CF910C940C1088E58C0F833108F064C01A +:1022D000C83A39F1C93A41F1CA3A49F1CB3A51F118 +:1022E000CC3A59F1CD3A61F1C03B69F1CE3A71F186 +:1022F000CF3A79F1C13B81F1C23B89F1C33B91F106 +:10230000C43B99F1C53BA1F1C63BA9F1C73BB1F173 +:10231000C83BB9F1C93BC1F1CA3BC9F180E090E0CB +:1023200038C082EE90E035C089EE90E032C08AEE8F +:1023300090E02FC085EB90E02CC086EB90E029C0A8 +:1023400087EB90E026C08CEC90E023C08DEC90E011 +:1023500020C083E891E01DC08AE891E01AC082E9BC +:1023600091E017C084E991E014C081E292E011C0CD +:1023700083E292E00EC084E292E00BC085E292E03C +:1023800008C086E292E005C087E292E002C08AE2DD +:1023900092E0CF910C942210CF910895882309F4F4 +:1023A0004BC0823859F40E94EA0F81FF45C089E38F +:1023B0000E94FB190E94C81A89E30CC0833871F48B +:1023C0000E94EA0F80FF38C083E50E94FB190E943B +:1023D000C81A83E50E943D1A0C94C81A843859F42F +:1023E0000E94EA0F82FF28C087E40E94FB190E9426 +:1023F000C81A87E4EFCF9CEF980F913A58F390E218 +:10240000980F983050F4877091E001C0990F8A9529 +:10241000EAF7892F0E94871ADFCF9BE5980F933048 +:1024200020F480E090E00C940C10885A833120F462 +:1024300080E090E00C9422100895882321F00E94FF +:10244000811A0C94C81A0895882321F00E94871AD3 +:102450000C94C81A08957F928F929F92AF92BF9268 +:10246000CF92DF92EF92FF920F931F93CF93DF9360 +:102470001F92CDB7DEB77C01C62E772EFC010581F9 +:1024800002950F70128111110E949E1A0E94F41978 +:10249000882379F0112369F080E28C0D883048F0B0 +:1024A00082E00E94DD190E94F41991E0D82ED9260D +:1024B00001C0D12CE72DE295EF70F0E0E05AFF4F1C +:1024C0000C94B323872D807F072D0F70882311F084 +:1024D0000295007F112389F0002309F490C180E266 +:1024E0008C0D883020F4802F0E94811A03C0802F29 +:1024F0000E94911A0E94C81A82C18C2D0E94CE118E +:10250000002309F495C180E28C0D883020F4802FDF +:102510000E94871A03C0802F0E94971A0E94C81A2F +:1025200087C1972D907F872D8F70903211F0829503 +:10253000807FCC2021F0F1E0CF16B1F01EC0112336 +:1025400049F0002309F414C1013009F011C10E94BF +:10255000B11A6EC1002319F0013009F469C18983F1 +:102560000E94B41A89810AC1112321F0023008F0B7 +:102570005FC1FEC001115CC101C1112321F0002324 +:1025800009F4F6C03CC1002309F4F8C03EC1872D10 +:1025900086958695837090E0009719F0019761F019 +:1025A00047C1112321F08C2D972D937002C080E03C +:1025B00090E00E940C103CC1112321F08C2D972D2E +:1025C000937002C080E090E00E94221031C18C2DF7 +:1025D000112319F00E94431E02C00E94AB1E0E94EC +:1025E000301F26C1872D837009F052C0111120C100 +:1025F0008C2D829586958770880F880F9C2D9F70F3 +:10260000892E912CA12CB12C082E04C0880C991C69 +:10261000AA1CBB1C0A94D2F7C4FE14C00FE010E041 +:1026200020E030E0B901A80104C0440F551F661F27 +:10263000771F8A95D2F7CB01BA0160957095809586 +:10264000909503C060E070E0CB01272D269526957C +:10265000237030E02230310569F02330310589F0F4 +:10266000682979298A299B292130310571F00E9436 +:102670006918DEC0682979298A299B290E94851852 +:10268000D7C00E946918C501B4010E944D18D0C07E +:10269000112319F0872D817001C08695882309F4D4 +:1026A000C7C08C2D829586958770880F880F9C2DCA +:1026B0009F70892E912CA12CB12C082E04C0880C5F +:1026C000991CAA1CBB1C0A94D2F7C4FE14C00FE0CC +:1026D00010E020E030E0B901A80104C0440F551F0C +:1026E000661F771F8A95D2F7CB01BA016095709566 +:1026F0008095909503C060E070E0CB01272D269572 +:1027000026952370422F50E04230510569F0433046 +:10271000510589F0682979298A299B294130510579 +:1027200071F00E94431984C0682979298A299B295C +:102730000E945F197DC00E944319C501B4010E9427 +:10274000271976C08C2D90E0FC01E05EF109E5319F +:10275000F10508F050C0E059FF4F0C94B3230C2D45 +:102760000F70872D8F71112331F00E94C018802FB8 +:102770000E941D125DC00E94E118802F0E94241249 +:1027800057C0112339F0011153C0872D8F710E945A +:1027900006194EC0023008F04BC0F7CF112339F0B4 +:1027A000872D8F710E94C01843C01123C9F3872D54 +:1027B0008F710E94E1183CC0112329F0872D8F7181 +:1027C0000E94AB1835C00E94A11832C0112351F0ED +:1027D000172D1F71812F0E94C01863E0812F0E9466 +:1027E000D41926C081E00E94DD19023008F182E090 +:1027F0000E94DD191DC0112331F0002389F28C2DB8 +:102800000E94061115C0002391F28C2D0E94CE115A +:102810000FC0472D4F706C2DC7010E9415050E94F7 +:10282000C51706C0472D4F706C2DC7010E94F205D9 +:10283000DD20F9F00E94D01980FD1BC0F701128243 +:102840000E94CA190E94C018C7010E9448140E9421 +:10285000CA190F90DF91CF911F910F91FF90EF90C8 +:10286000DF90CF90BF90AF909F908F907F900C940F +:10287000E1180F90DF91CF911F910F91FF90EF9092 +:10288000DF90CF90BF90AF909F908F907F900895F2 +:102890000F931F93CF93DF93EC01888199812B8154 +:1028A0003C81232BB9F09F3F11F48F3F99F0CE016B +:1028B0000E944A05882371F0688179818A810E948B +:1028C000C6198C010E947B190E944218B801CE01E2 +:1028D0000E942B12DF91CF911F910F9108950E94BA +:1028E0009E1A0E94AE1A0E94731A0E94C81A0E9471 +:1028F000E11F0E94301F80E090E00E940C1080E0F9 +:1029000090E00C9422100E948E1A0C946F140E9476 +:10291000BB19292F22952F7030E02C3031054CF453 +:102920002A3031056CF42250310922303105A8F4E7 +:1029300007C02C30310569F02F30310551F00DC042 +:10294000803F69F018F4803E40F409C0843F29F4C8 +:1029500006C093FB882780F9089580E0089581E000 +:102960000895CF93DF9300D000D01F92CDB7DEB78C +:102970000F900F900F900F900F90DF91CF910895CF +:10298000CF93DF9300D000D000D0CDB7DEB726962E +:102990000FB6F894DEBF0FBECDBFDF91CF91089583 +:1029A0001F93CF93DF93C091850116E0809186013C +:1029B000C81799F0D0E01C9FF0011D9FF00D112465 +:1029C000E957FE4F408151816281738184819581F5 +:1029D0000E94C0142196C770E9CFDF91CF911F915B +:1029E00008954091B7015091B8016091B90170917B +:1029F000BA018091BB019091BC010C94C0148091EC +:102A0000BC0182958F7009F054C08091B901882370 +:102A100009F44FC080918501A09186016091B701B2 +:102A20007091B8014091BA015091BB01B6E08A178C +:102A300009F43FC090E041155105C1F17F3F11F409 +:102A40006F3FA1F1B89FF001B99FF00D1124E95734 +:102A5000FE4F218172132AC02081621327C0228178 +:102A6000211124C0238134812417350710F421500B +:102A70003109241B350B283C3105C0F42091BC01E1 +:102A80002F7020612093BC0126E0289FF001299F30 +:102A9000F00D1124E457FE4F80818F708061808398 +:102AA00087EB91E00E9448140C94D0140196877033 +:102AB000BECF0895CF92DF92EF92FF920F931F93B4 +:102AC000CF93DF93CDB7DEB762970FB6F894DEBF32 +:102AD0000FBECDBF8C0185E0F801DE011D9601908F +:102AE0000D928A95E1F7D8014C9111965C9111975E +:102AF00012966C9112971396CD90DC9014973091AA +:102B0000B7017091B8018091BA019091BB01009713 +:102B100009F46BC17F3F19F43F3F09F466C1E090AF +:102B2000B901EE2009F4C0C02091BC01C816D90635 +:102B300028F0F601E81BF90BCF0104C080959095B1 +:102B40008C0D9D1DFF24F394883C910578F0F12CA9 +:102B5000207F09F0C6C07C2DD98AC88A89890E9445 +:102B6000B11487EB91E00E944814B1C0822F807F9E +:102B700009F046C0751314C0341312C0611110C09F +:102B80002F7020612093BC010E94F11487EB91E02B +:102B90000E9448148091BC01D80115968C932EC0D8 +:102BA000CD2819F15F3F11F44F3FF9F0F62E611176 +:102BB0001CC0809185012091860136E0821709F4BE +:102BC0005AC090E0389FF001399FF00D1124E95769 +:102BD000FE4F7181571306C07081471303C0728185 +:102BE000711103C001968770E9CFF62E662309F4B0 +:102BF00018C18091BC0181608093BC01F12C11C18E +:102C0000751308C0341306C0611104C08091BC0163 +:102C1000D801C3C04D875E878D859E856A8B0E94D3 +:102C200087146A898823E1F16623D1F12091BC01E0 +:102C3000822F82958F7090E0029774F08091B70197 +:102C40009091B80198878F831986DB86CA862C8776 +:102C5000CE0107960E94481486E0F801A7EBB1E088 +:102C600001900D928A95E1F70E94FF140E94F114E1 +:102C7000FF24F394D6C04D875E878D859E850E9484 +:102C8000BB19292F22952F7030E0223031050CF02E +:102C9000BCC09F7009F0B6C0805E883008F4C1C027 +:102CA000C8010E944814E4CFC816D90608F453C0DE +:102CB000F601E81BF90BCF01883C910508F450C0E0 +:102CC000F12C7C2DD98AC88A89890E94B114E7EB3E +:102CD000F1E086E0DF011D928A95E9F70E94F11488 +:102CE000A0C0751314C0341312C0611110C08091BC +:102CF000BC01F8018583C8010E94481486E0E7EB17 +:102D0000F1E0DF011D928A95E9F7FE2C8AC04D871C +:102D10005E878D859E856A8B0E9487146A898823C9 +:102D200009F4BECF662309F4BBCF2091BC01822FEA +:102D300082958F7090E002970CF48ECF8091B7014E +:102D40009091B8019A8389831B82DD82CC822E8385 +:102D5000CE0101967FCF809590958C0D9D1DACCFB7 +:102D6000F62E662309F49CCF75132EC034132CC0A5 +:102D70002091BC0120FD1FC0822F82958F70D9F059 +:102D8000D80115962C9315978F3049F08F5F982FA7 +:102D90009295907F822F8F70892B15968C93C80106 +:102DA0000E94481486E0F801A7EBB1E001900D9273 +:102DB0008A95E1F793CF86E0F801A7EBB1E00190A7 +:102DC0000D928A95E1F72DC04D875E878D859E8592 +:102DD0000E948714811140CF8091BC018160809353 +:102DE000BC01C8010E9448141CC0662309F458CFD6 +:102DF0004D875E878D859E850E948714882309F400 +:102E00004FCF2ACF811148CF0CC0243031050CF0B0 +:102E100047CF9F7009F440CFF8019581907F09F06A +:102E20003BCF8F2D62960FB6F894DEBF0FBECDBF9D +:102E3000DF91CF911F910F91FF90EF90DF90CF9096 +:102E400008951F93CF93DF93CDB7DEB72C970FB6BE +:102E5000F894DEBF0FBECDBF4F83588769877A874E +:102E60008B879C87CE0107960E945A15882369F0AC +:102E70008F8198852A853B85232BF1F19F3F09F0AF +:102E800063C08F3F09F060C037C086E0FE0137960F +:102E9000DE01119601900D928A95E1F76F81788598 +:102EA000EA85FB85309741F17F3F11F46F3F21F1B7 +:102EB0002091860130E0C9010196877099274091E1 +:102EC000850150E08417950709F447C069837A8328 +:102ED000FD83EC8396E0929FD001939FB00D112467 +:102EE000A957BE4FFE01319601900D929A95E1F7D8 +:102EF000809386010E94D01416E080918501909104 +:102F000086018917C1F1189FC001112489579E4F6E +:102F10000E945A15882379F1E09185011E9FF001E6 +:102F20001124E957FE4F4081518162817381848170 +:102F300095810E94C0148091850190E00196877070 +:102F4000992780938501D9CF4F81588569857A85E6 +:102F50008B859C850E94C014CFCF0E948314109251 +:102F6000860110928501E7EBF1E086E0DF011D921A +:102F70008A95E9F7C1CF2C960FB6F894DEBF0FBE45 +:102F8000CDBFDF91CF911F910895EF92FF920F93E4 +:102F90001F93CF93DF938C01009709F46CC0F12C41 +:102FA000EE24E394E8012196F8018491843740F4FB +:102FB000843008F051C0813081F0823019F15BC05B +:102FC000853709F444C0A8F19CE7980F903708F0C2 +:102FD00052C08F770E94CE1141C00E5F1F4FFE017D +:102FE000C49180E28C0F883048F4C7708E2D01C0E8 +:102FF000880FCA95EAF70E94A11A14C08C2F0E946C +:1030000006112DC00E5F1F4FFE01C49180E28C0F90 +:10301000883058F4C7708E2D01C0880FCA95EAF722 +:103020000E94A71A0E94C81A1AC08C2F0E94CE11A3 +:1030300016C00E5F1F4FFE01C491CC2381F08FE9B3 +:103040009FE00197F1F700C00000C150F6CF0E5F7E +:103050001F4FFE01F49003C00E9406118E018F2DB8 +:10306000882309F49FCFEFE9FFE03197F1F700C023 +:1030700000008150F5CFDF91CF911F910F91FF900C +:10308000EF90089508956093C1017093C2018093F9 +:10309000C3019093C4010C946F140F931F9300917C +:1030A000C1011091C2012091C3013091C401DC0122 +:1030B000CB01802B912BA22BB32B8093C10190933A +:1030C000C201A093C301B093C4011F910F910C944E +:1030D0006F140F931F930091C1011091C2012091B1 +:1030E000C3013091C401DC01CB0180239123A223D1 +:1030F000B3238093C1019093C201A093C301B09305 +:10310000C4011F910F910C946F140F931F930091A2 +:10311000C1011091C2012091C3013091C401DC01B1 +:10312000CB0180279127A227B3278093C1019093D9 +:10313000C201A093C301B093C4011F910F910C94DD +:103140006F141092BD011092BE011092BF01109237 +:10315000C0010C946F1441E050E060E070E004C0E6 +:10316000440F551F661F771F8A95D2F74093BD0104 +:103170005093BE016093BF017093C0010C946F1413 +:1031800041E050E060E070E004C0440F551F661F4E +:10319000771F8A95D2F78091BD019091BE01A091D1 +:1031A000BF01B091C001482B592B6A2B7B2B409358 +:1031B000BD015093BE016093BF017093C0010C9498 +:1031C0006F1441E050E060E070E004C0440F551F10 +:1031D000661F771F8A95D2F7409550956095709538 +:1031E0008091BD019091BE01A091BF01B091C0013D +:1031F000482359236A237B234093BD015093BE018A +:103200006093BF017093C0010C946F1441E050E0D3 +:1032100060E070E004C0440F551F661F771F8A9559 +:10322000D2F78091BD019091BE01A091BF01B091F4 +:10323000C001482759276A277B274093BD01509337 +:10324000BE016093BF017093C0010C946F140F9383 +:103250001F930091BD011091BE012091BF013091DB +:10326000C001DC01CB01802B912BA22BB32B8093CF +:10327000BD019093BE01A093BF01B093C0011F9107 +:103280000F910C946F140F931F930091BD01109137 +:10329000BE012091BF013091C001DC01CB01802330 +:1032A0009123A223B3238093BD019093BE01A093E9 +:1032B000BF01B093C0011F910F910C946F140F9335 +:1032C0001F930091BD011091BE012091BF0130916B +:1032D000C001DC01CB0180279127A227B32780936F +:1032E000BD019093BE01A093BF01B093C0011F9197 +:1032F0000F910C946F140895CF92DF92EF92FF928A +:103300000F931F93CF93DF938C01C090C101D09096 +:10331000C201E090C301F090C4018091BD01909181 +:10332000BE01A091BF01B091C001C82AD92AEA2AE2 +:10333000FB2ACFE1D0E0D701C6010C2E04C0B69520 +:10334000A795979587950A94D2F780FF06C0B80194 +:103350008C2F0E944808019721F4219760F780E0A4 +:1033600001C08C2FDF91CF911F910F91FF90EF90B3 +:10337000DF90CF900895CF93DF93EC010E947C19EA +:10338000BE010E944808DF91CF910895CB010E94B1 +:10339000BB1908958091C5018595859585950895FA +:1033A0008091C5018770089598E0899F900111244C +:1033B000262B2093C5010C94C0182091C50180953F +:1033C00082238093C501982F977069F430E0482FCD +:1033D000552747FD50952417350729F08595859584 +:1033E00085950C94E11808959091C501977081E03E +:1033F00009F480E0089590910C01992321F09091B7 +:103400000D01911109C020910E0130910F01F901B8 +:1034100032969FEF40E01FC0982F9695969596950F +:103420009F3050F5E0910E01F0910F01E90FF11D71 +:10343000877021E030E0A90102C0440F551F8A9532 +:10344000E2F7CA019181892B818308959F3F39F06A +:103450004F5F4E3041F051915813F8CF0DC05111CC +:10346000F7CF942FF5CF9F3F39F0F901E90FF11D08 +:1034700097FDFA9582830895089590910C01992300 +:1034800021F090910D01911109C020910E01309110 +:103490000F01F9013296205F3F4F1FC0982F96957C +:1034A000969596959F30F0F4E0910E01F0910F0102 +:1034B000E90FF11D877021E030E0A90102C0440F3F +:1034C000551F8A95E2F7CA018095918189238183EE +:1034D00008953196E217F30729F090819813F9CFF8 +:1034E0001082F7CF089581E090E0E0910E01F09115 +:1034F0000F01E80FF91F1082019680319105A9F79D +:1035000008959091D901892B8093D90108958095D0 +:103510009091D90189238093D90108951092D901FE +:1035200008959091D801892B8093D80108958095B2 +:103530009091D80189238093D80108951092D801E1 +:1035400008959091D701892B8093D7010895809594 +:103550009091D70189238093D70108951092D701C4 +:1035600008958093C60108951092C6010895809130 +:103570000E0190910F01FC0131969C01205F3F4F9D +:1035800080E0919191118F5FE217F307D1F70895D1 +:10359000E0910E01F0910F018091D9018083E091BB +:1035A0000E01F0910F0190818091D801892B8083C9 +:1035B000E0910E01F0910F0190818091D701892B4C +:1035C00080838091C601882361F0E0910E01F09123 +:1035D0000F019081892B80830E94B71A811110926C +:1035E000C60180910E0190910F010C94F60F20E01E +:1035F000009739F0AC0141505109842395232F5F86 +:10360000F7CF822F0895CF92DF92EF92FF926C0155 +:10361000EE24FF24C114D104E104F10421F0C70118 +:10362000B60120E101C020E0C72ED82EE92EFF24EC +:10363000C114D104E104F10419F0285FC701B601F7 +:103640006B017C0154E0F694E794D794C7945A95A3 +:10365000D1F7C114D104E104F10419F02C5FC701C2 +:10366000B6016B017C0142E0F694E794D794C794CD +:103670004A95D1F7C114D104E104F10419F02E5F89 +:10368000C701B601DC01CB01B695A7959795879543 +:10369000892B8A2B8B2B09F02F5F822FFF90EF90C5 +:1036A000DF90CF9008958091F101843021F1109244 +:1036B000DB0120E488E190E00FB6F894A8958093B0 +:1036C00060000FBE2093600080E00E94E30883B793 +:1036D000817F846083BF83B7816083BF789488953E +:1036E00083B78E7F83BF88E10FB6F8948093600024 +:1036F000109260000FBE0895089508950E947C1BEB +:103700000E944B030E947D1B0E94400491E08111A6 +:1037100001C090E0892F08950E9483140E94EA0F4F +:103720000C94E30882E084BD93E095BD9AEF97BDC9 +:1037300080936E0008952FB7F8948091DC019091EA +:10374000DD01A091DE01B091DF012FBF0895CF927E +:10375000DF92EF92FF920F931F932FB7F89440914F +:10376000DC015091DD016091DE017091DF012FBF1E +:103770006A017B01EE24FF248C0120E030E0C016BA +:10378000D106E206F30610F4415051099A01281BB4 +:10379000390BC9011F910F91FF90EF90DF90CF90EF +:1037A00008951F920F920FB60F9211248F939F933B +:1037B000AF93BF938091DC019091DD01A091DE0178 +:1037C000B091DF010196A11DB11D8093DC019093A2 +:1037D000DD01A093DE01B093DF01BF91AF919F9116 +:1037E0008F910F900FBE0F901F9018950E94E70CBD +:1037F000F8942FEF87EA91E6215080409040E1F75E +:1038000000C0000087E090EBDC018093FB01909307 +:10381000FC01A093FD01B093FE019CE088E10FB68E +:10382000F894A895809360000FBE90936000FFCF3E +:10383000EF92FF920F931F93CF93DF93D82FCDE09A +:103840008C2F0E94390405E010E0E82EF12CC7010E +:10385000002E02C0959587950A94E2F780FF09C073 +:10386000602F7C2F80E00E94F305D81302C081E016 +:1038700006C00150110958F7C15010F780E0DF91E0 +:10388000CF911F910F91FF90EF900895CF93C82F84 +:103890008CE20E94181C882321F08C2FCF910C946D +:1038A000181C80E0CF910895CF930E949B1D811139 +:1038B00002C00E94811DC5E6C15049F00E944B0321 +:1038C0008FE39CE90197F1F700C00000F5CF89E292 +:1038D0000E94461C811113C18AE20E94461C81117C +:1038E0000E94811D85E00E94461C81110E94F61BEA +:1038F0000E94A61D8093DA0187E00E94461C88235F +:10390000A9F18BE10E94461C882351F08091DA01D5 +:1039100081FB222720F991E0922790FB81F90EC0CC +:103920008EE00E94461C882361F08091DA0182FBC0 +:10393000222720F991E0922790FB82F98093DA0107 +:1039400015C080E10E94461C9091DA01882341F065 +:1039500093FB222720F981E0822780FB93F904C0A2 +:10396000892F809580FB90F99093DA018091DA019C +:103970000E94AA1D0E94B81D8093FA0180EE0E9449 +:10398000461C882341F08091FA01982F909590FB76 +:1039900080F98093FA0189E30E94461C882359F03C +:1039A0008091FA0181FB222720F991E0922790FB78 +:1039B00081F98093FA0182EE0E94461C882359F017 +:1039C0008091FA0182FB222720F991E0922790FB57 +:1039D00082F98093FA0186EE0E94461C882359F0F2 +:1039E0008091FA0183FB222720F991E0922790FB36 +:1039F00083F98093FA0183EE0E94461C882359F0D4 +:103A00008091FA0184FB222720F991E0922790FB14 +:103A100084F98093FA0185E30E94461C882359F0BB +:103A20008091FA0185FB222720F991E0922790FBF3 +:103A300085F98093FA0181E30E94461C882359F09E +:103A40008091FA0186FB222720F991E0922790FBD2 +:103A500086F98093FA0181E10E94461C882359F07F +:103A60008091FA0187FB222720F991E0922790FBB1 +:103A700087F98093FA018091FA010E94BC1D809120 +:103A8000FA0187FB882780F980930D0187E20E9465 +:103A9000461CC82F8EE10E94461C8111C2608FE136 +:103AA0000E94461C8111C46080E20E94461C811164 +:103AB000C86081E20E94461C8111C06182E20E94BE +:103AC000461C8111C06283E20E94461C8111C064C1 +:103AD00084E20E94461C882311F0C06802C0CC23F7 +:103AE00029F08C2F0E94B31D6C2F03C00E94AF1DC4 +:103AF000682F70E080E090E0CF910C944318CF9154 +:103B000008956DEE7EEF80E090E00E94ED2360E08E +:103B100082E090E00E94DB2360E083E090E00E947E +:103B2000DB2360E084E090E00E94DB2360E085E03E +:103B300090E00C94DB2380E090E00E94D52321E00C +:103B40008D3E9E4F09F020E0822F089582E090E0A4 +:103B50000C94CD23682F82E090E00C94DB2383E06B +:103B600090E00C94CD23682F83E090E00C94DB234D +:103B700084E090E00C94CD23682F84E090E00C94D6 +:103B8000DB238091E20180FF0BC06091130185E08F +:103B9000689FB001112475956795759567952BC041 +:103BA00081FF09C06091130185E0689FB001112475 +:103BB0007595679520C082FF07C06091130185E06D +:103BC000689FB001112417C09091E3019923D1F0AF +:103BD00060911201961788F72091130185E0289FC4 +:103BE00090011124929FA001939F500D112470E029 +:103BF000CA010E949F236038710540F46115710568 +:103C000039F002C065E070E0862F08958FE70895CF +:103C100081E008958091E20180FF08C06091110168 +:103C200070E0759567957595679521C081FF06C011 +:103C30006091110170E07595679519C082FF04C00D +:103C40006091110170E010C09091E3019923C1F0DF +:103C5000609110019617A0F780911101899FC00112 +:103C6000112470E00E949F236038710528F46115CB +:103C7000710521F0862F08958FE7089581E008955A +:103C800061E070E0F4CF803F21F40E94C11D819576 +:103C900004C0813F29F40E94C11D8093E60108956C +:103CA000823F21F40E94C11D819504C0833F29F405 +:103CB0000E94C11D8093E5010895893F19F40E9477 +:103CC0000A1E05C08A3F31F40E940A1E8195809326 +:103CD000E70108958B3F21F40E940A1E819504C0DC +:103CE0008C3F29F40E940A1E8093E8010895843FC6 +:103CF00021F48091E401816017C0853F21F4809117 +:103D0000E401826011C0863F21F48091E401846067 +:103D10000BC0873F21F48091E401886005C0883F93 +:103D200031F48091E40180618093E40108958D3F36 +:103D300021F48091E20181600BC08E3F21F48091DB +:103D4000E201826005C08F3F29F48091E201846026 +:103D50008093E2010895803F39F48091E60187FF66 +:103D60006CC01092E60169C0813F29F48091E601A0 +:103D70001816BCF362C09091E501823F29F497FFC9 +:103D80005CC01092E50159C0833F19F41916CCF3B9 +:103D900054C0893F41F48091E70118160CF04DC0E2 +:103DA0001092E7014AC08A3F29F48091E70187FF1A +:103DB00044C0F6CF8B3F39F48091E80187FF3DC0C6 +:103DC0001092E8013AC08C3F29F48091E80118165E +:103DD000BCF333C0843F21F48091E4018E7F17C08F +:103DE000853F21F48091E4018D7F11C0863F21F44D +:103DF0008091E4018B7F0BC0873F21F48091E40127 +:103E0000877F05C0883F31F48091E4018F7E8093E5 +:103E1000E40113C08D3F21F48091E2018E7F0BC03D +:103E20008E3F21F48091E2018D7F05C08F3F29F400 +:103E30008091E2018B7F8093E2018091E501811105 +:103E40000EC08091E60181110AC08091E7018111C5 +:103E500006C08091E801811102C01092E30108952B +:103E600084EE91E00E9401100E949B1B9093E1015F +:103E70008093E00108951F93CF93DF938091E00139 +:103E80009091E1010E94A71BAC019091E30199235D +:103E900021F02091140130E006C0209115018AE044 +:103EA000289F900111244217530708F486C080917F +:103EB000E501C091E601D091E7011091E80181117F +:103EC00007C0C11176C0D11174C0111172C075C084 +:103ED0009F3F19F09F5F9093E301181624F40E940E +:103EE000C11D8093E5018091E50187FF05C00E9417 +:103EF000C11D81958093E5011C1624F40E94C11D0B +:103F00008093E6018091E60187FF05C00E94C11DF4 +:103F100081958093E6016091E501662339F1C091B6 +:103F2000E601CC2319F1772767FD7095872F972F2E +:103F30000E94B02223E333E343E35FE30E941423B0 +:103F40000E947D226093E5016C2F772767FD7095B5 +:103F5000872F972F0E94B02223E333E343E35FE3ED +:103F60000E9414230E947D226093E6011D1624F412 +:103F70000E940A1E8093E7018091E70187FF05C038 +:103F80000E940A1E81958093E701111624F40E9475 +:103F90000A1E8093E8018091E80187FF05C00E9416 +:103FA0000A1E81958093E801DF91CF911F910C94B7 +:103FB000301F9F3F09F08ECF96CFDF91CF911F9199 +:103FC0000895E4EEF1E085E0DF011D928A95E9F7BE +:103FD0001092E3011092E2010895833081F128F4F8 +:103FE000813059F08230D1F00895853009F449C00C +:103FF000B8F1863009F456C0089580911501262F36 +:1040000030E0280F311D2F3F310524F4680F6093F5 +:10401000150108958FEF8093150108958091140183 +:10402000262F30E0280F311D2F3F310524F4680F73 +:104030006093140108958FEF809314010895809187 +:104040001301262F30E0280F311D2F3F310524F4B6 +:10405000680F6093130108958FEF80931301089503 +:1040600080911201262F30E0280F311D2F3F31059E +:1040700024F4680F6093120108958FEF809312016A +:10408000089580911101262F30E0280F311D2F3F18 +:10409000310524F4680F6093110108958FEF809328 +:1040A0001101089580911001262F30E0280F311D55 +:1040B0002F3F310524F4680F6093100108958FEFAE +:1040C000809310010895833011F128F4813049F074 +:1040D000823091F00895853081F120F18630C1F170 +:1040E000089580911501681720F4861B80931501AF +:1040F000089510921501089580911401681720F415 +:10410000861B8093140108951092140108958091E4 +:104110001301681720F4861B8093130108951092F1 +:104120001301089580911201681720F4861B809373 +:1041300012010895109212010895809111016817DB +:1041400020F4861B809311010895109211010895A7 +:1041500080911001681720F4861B80931001089548 +:104160001092100108950F931F938D3109F46BC0C5 +:1041700008F03FC08E3009F47FC0C0F4873009F4E6 +:1041800069C068F4863009F0B1C08091DA01817F9E +:104190008E7F8093DA0181E08093EA01A8C08830A5 +:1041A00009F4A2C08B3009F49FC0A0C0863109F485 +:1041B0009BC078F4803109F472C0813109F096C057 +:1041C0000E94831490910D0181E0892780930D0155 +:1041D0008BC0893109F488C08B3109F087C0809188 +:1041E000DA0181FB222720F991E0922790FB81F9E7 +:1041F0004CC0853309F470C048F4873209F46CC0B0 +:1042000008F459C0893209F467C070C0833438F4A7 +:104210008A3308F04EC0883309F466C067C083341F +:1042200009F45AC0883409F061C00E9483140FEF6A +:1042300013ED20E3015010402040E1F700C00000E2 +:104240000E94F61B51C00E9437220E94EA0F0E9472 +:10425000E3084AC09091DA01892F8095817080FB34 +:1042600090F929F0966098609093DA0140C0997FA8 +:10427000977F9093DA0138C08091DA0182FB222780 +:1042800020F991E0922790FB82F98093DA0199233B +:1042900059F18091DA0181608093DA0125C0809123 +:1042A000DA0183FB222720F991E0922790FB83F922 +:1042B000ECCF895301C08D5141E050E060E070E0E7 +:1042C0008A019B0104C0000F111F221F331F8A9512 +:1042D000D2F7C901B80104C061E070E080E090E06D +:1042E0000E9443180E94831481E001C080E01F9166 +:1042F0000F91089580E0089580E00895CF93C82F2E +:104300008091EA01813079F018F08230E9F187C0BC +:10431000E0910E01F0910F018081813169F08232CC +:1043200009F07FC009C0E0910E01F0910F0180817A +:10433000813111F0823261F48C2F0E947A21811137 +:1043400004C08C2F0E94B3201DC081E090E01AC0F1 +:104350008C2F0E947C21811114C0C43179F048F463 +:10436000CB3079F0C03109F060C082E08093EA017F +:1043700008C0C93219F0C83321F057C01092EA01C1 +:1043800054C081E0817053C0C93289F118F5C4313D +:1043900071F1A8F4C73009F046C08AE08093150196 +:1043A00094E19093140193E0909313018093120190 +:1043B00088E08093110188E28093100134C0CE51CF +:1043C000C63088F5EC2FF0E0E65DFE4F80818093EB +:1043D000E90129C0CE34E9F020F4CB3421F56AE0BC +:1043E00013C0C13579F0C235F1F461E00DC08091A0 +:1043F000E901882319F01092E90115C081E080934A +:10440000EA0115C061E006C08091E9010E94ED1F3C +:104410000AC06AE08091E9010E94632004C0109202 +:10442000EA0180E004C081E002C080E0ABCFCF9120 +:104430000895E1E8F0E08081886080838081816078 +:1044400080838FB7F89493E09093890090ED9093D8 +:1044500088008FBF0895EFE6F0E08081826080835E +:104460000895EFE6F0E080818D7F80830895EFE688 +:10447000F0E0908182E08927808308951F920F9257 +:104480000FB60F9211242F933F934F935F936F9327 +:104490007F938F939F93AF93BF93EF93FF938091FD +:1044A000EB019091EC0101969093EC018093EB016C +:1044B000811103C082E00E94E308E091EC01E695DF +:1044C000E695F0E0EC54FB4FE4918091EB018E1304 +:1044D00003C080E00E94E308FF91EF91BF91AF918C +:1044E0009F918F917F916F915F914F913F912F910C +:1044F0000F900FBE0F901F90189504D06894B111C3 +:104500008DC0089570D088F09F5790F0B92F9927EB +:10451000B751A0F0D1F0660F771F881F991F1AF0CE +:10452000BA95C9F712C0B13081F077D0B1E00895E3 +:1045300074C0672F782F8827B85F39F0B93FCCF364 +:10454000869577956795B395D9F73EF490958095C4 +:10455000709561957F4F8F4F9F4F0895E89409C0E4 +:1045600097FB3EF490958095709561957F4F8F4FA6 +:104570009F4F9923A9F0F92F96E9BB279395F695BC +:10458000879577956795B795F111F8CFFAF4BB0F3A +:1045900011F460FF1BC06F5F7F4F8F4F9F4F16C09E +:1045A000882311F096E911C0772321F09EE8872F28 +:1045B000762F05C0662371F096E8862F70E060E0E4 +:1045C0002AF09A95660F771F881FDAF7880F96955D +:1045D000879597F9089557FD9058440F551F59F046 +:1045E0005F3F71F04795880F97FB991F61F09F3FE0 +:1045F00079F087950895121613061406551FF2CF09 +:104600004695F1DF08C0161617061806991FF1CF58 +:1046100086957105610508940895E894BB2766277F +:104620007727CB0197F908950BD078C069D028F08F +:104630006ED018F0952309F05AC05FC01124EECF58 +:10464000CADFA0F3959FD1F3950F50E0551F629FED +:10465000F001729FBB27F00DB11D639FAA27F00DDB +:10466000B11DAA1F649F6627B00DA11D661F829F02 +:104670002227B00DA11D621F739FB00DA11D621FE7 +:10468000839FA00D611D221F749F3327A00D611D04 +:10469000231F849F600D211D822F762F6A2F1124E6 +:1046A0009F5750408AF0E1F088234AF0EE0FFF1F39 +:1046B000BB1F661F771F881F91505040A9F79E3F70 +:1046C000510570F014C0AACF5F3FECF3983EDCF3C5 +:1046D000869577956795B795F795E7959F5FC1F7AD +:1046E000FE2B880F911D9695879597F9089597F958 +:1046F0009F6780E870E060E008959FEF80EC089588 +:1047000000240A94161617061806090608950024B0 +:104710000A9412161306140605060895092E03942A +:10472000000C11F4882352F0BB0F40F4BF2B11F49E +:1047300060FF04C06F5F7F4F8F4F9F4F089597FBBF +:10474000072E16F4009407D077FD09D00E94B923F4 +:1047500007FC05D03EF4909581959F4F0895709584 +:1047600061957F4F0895EE0FFF1F0590F491E02DA6 +:104770000994AA1BBB1B51E107C0AA1FBB1FA617A8 +:10478000B70710F0A61BB70B881F991F5A95A9F7FA +:1047900080959095BC01CD010895F999FECF92BD09 +:1047A00081BDF89A992780B50895A8E1B0E042E06C +:1047B00050E00C94F523262FF999FECF92BD81BDD0 +:1047C000F89A019700B4021639F01FBA20BD0FB64F +:1047D000F894FA9AF99A0FBE08950196272F0E942D +:1047E000DC230C94DB23DC01CB01FC01F999FECF27 +:1047F00006C0F2BDE1BDF89A319600B40D92415069 +:0A4800005040B8F70895F894FFCF78 +:10480A000220E508730950091C09E8080101C701DB +:10481A0028080A03140A3F4D363975042804F2039E +:10482A00B9034C0365037E039703010203040506DB +:04483A000708090062 +:00000001FF diff --git a/keyboards/ergodox_ez/keymaps/andrew_osx/keymap.c b/keyboards/ergodox_ez/keymaps/andrew_osx/keymap.c new file mode 100644 index 0000000000..48257d23a3 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/andrew_osx/keymap.c @@ -0,0 +1,187 @@ +// Netable differences vs. the default firmware for the ErgoDox EZ: +// 1. The Cmd key is now on the right side, making Cmd+Space easier. +// 2. The media keys work on OSX (But not on Windows). +#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 + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | = | 1 | 2 | 3 | 4 | 5 | '" | | '" | 6 | 7 | 8 | 9 | 0 | BkSp | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Tab | Q | W | E | R | T | ~L1 | | ~L1 | Y | U | I | O | P | - | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * |Ctrl/Esc| A | S | D | F | G |------| |------| H | J | K | L |; / L2| / | + * |--------+------+------+------+------+------| Hyper| | Meh |------+------+------+------+------+--------| + * | LShift |Z/Ctrl| X | C | V | B | | | | N | M | , | . |//Ctrl| RShift | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * |Grv/L1| Alt |AltShf| Left | Right| | Up | Down | [ | ] | L1 | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | App | LGui | | Esc |Ctrl/Esc| + * ,------|------|------| |------+--------+------. + * | | | ( | | { | | | + * | Space| LGui |------| |------| RGui |Enter | + * | | | ) | | } | | | + * `--------------------' `----------------------' + */ +// If it accepts an argument (i.e, is a function), it doesn't need KC_. +// Otherwise, it needs KC_* +[BASE] = KEYMAP( // layer 0 : default + // left hand + KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, KC_QUOT, + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_FN1, + CTL_T(KC_ESC), KC_A, KC_S, KC_D, KC_F, KC_G, + KC_LSFT, CTL_T(KC_Z), KC_X, KC_C, KC_V, KC_B, ALL_T(KC_NO), + LT(SYMB,KC_GRV),KC_LALT, LALT(KC_LSFT), KC_LEFT,KC_RGHT, + ALT_T(KC_APP), KC_LGUI, + KC_LPRN, + KC_SPC,KC_LGUI,KC_RPRN, + // right hand + KC_QUOT, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, + KC_FN1, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_MINS, + KC_H, KC_J, KC_K, KC_L, LT(MDIA, KC_SCLN),KC_BSLS, + 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, TG(1), + KC_ESC, CTL_T(KC_ESC), + KC_LCBR, + KC_RCBR,KC_RGUI, KC_ENT + ), +/* Keymap 1: Symbol Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | ! | @ | { | } | | | | | | Up | 7 | 8 | 9 | * | F12 | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | # | $ | ( | ) | ` |------| |------| Down | 4 | 5 | 6 | + | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | % | ^ | [ | ] | ~ | | | | & | 1 | 2 | 3 | \ | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | . | 0 | = | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// SYMBOLS +[SYMB] = KEYMAP( + // left hand + KC_TRNS,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, + KC_TRNS,KC_EXLM,KC_AT, KC_LCBR,KC_RCBR,KC_PIPE,KC_TRNS, + KC_TRNS,KC_HASH,KC_DLR, KC_LPRN,KC_RPRN,KC_GRV, + KC_TRNS,KC_PERC,KC_CIRC,KC_LBRC,KC_RBRC,KC_TILD,KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS, + KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS, + // right hand + KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + KC_TRNS, KC_UP, KC_7, KC_8, KC_9, KC_ASTR, KC_F12, + KC_DOWN, KC_4, KC_5, KC_6, KC_PLUS, KC_TRNS, + KC_TRNS, KC_AMPR, KC_1, KC_2, KC_3, KC_BSLS, KC_TRNS, + KC_TRNS,KC_DOT, KC_0, KC_EQL, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), +/* Keymap 2: Media and mouse keys + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | MsUp | | | | | | | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | |MsLeft|MsDown|MsRght| |------| |------| | | | | | Play | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | | Prev | Next | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | Lclk | Rclk | |VolUp |VolDn | Mute | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | |Brwser| + * | | |------| |------| |Back | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// MEDIA AND MOUSE +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/keyboards/ergodox_ez/keymaps/bepo/README.md b/keyboards/ergodox_ez/keymaps/bepo/README.md new file mode 100644 index 0000000000..338909ed99 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/bepo/README.md @@ -0,0 +1,34 @@ +# BEPO keymap for the ErgoDox + +This keymap has been made for the BEPO layout (http://bepo.fr), which is an ergonomic french keyboard layout based on Dvorak rules. As it's made for french people, the following of this README will be in french. + +# Disposition BÉPO pour l'ErgoDox + +Cette keymap a été pensée pour la disposition BÉPO (http://bepo.fr), qui est une disposition de clavier francophone, ergonomique et libre, élaborée selon la méthode Dvorak. L'adaptation de cette disposition à l'ErgoDox a été réalisée en conservant les points forts du clavier TypeMatrix 2030 (très répandu dans la communauté bépo, avec un excellent rapport ergonomie / prix) voir en réglant certains de ses défauts (3 colonnes pour l'auriculaire droit et touche "Ê") et en apportant son lot de nouveautés (compatibilité avec les systèmes azerty et qwerty). + +Particularités +-------------- + +Touches de repos des pouces : "espace" à gauche et "entrée" à droite. + +Placement des touches de combinaison ("Shift", "Alt", "Ctrl"...) adapté aux pouces, et permettant de conserver chaque doigt pour les rangées de lettres auxquelles ils sont assignés sans avoir à changer la touche de combinaison de côté (exemple : "A" majuscule puis "M" majuscule avec les auriculaires et un seul appui d'une touche "Shift"). + +Les touches "Alt" et "Alt Gr" sont accessibles avec les pouces sur la rangée du bas comme sur la TypeMatrix 2030, avec une symétrie gauche / droite. + +Les touches "Ctrl" sont placées sur la même ligne que les touche "Alt" et "Alt Gr" comme sur un clavier clasique, elles sont accessibles aux pouces sur la rangée du bas (moins éloigné que le groupe de touches de pouces pour des petites mains). + +Les touches "Backspace" et "Delete" sont placées comme sur la TypeMatrix 2030, du côté gauche uniquement (pour laisser celles de la main droite servir de {caps,num,scroll}lock puisqu'elles ont des LED). + +La touche "Tab" est placée comme sur la TypeMatrix 2020. + +Meilleure symétrie et accessibilité que la TypeMatrix 2030 : les touches "W" et "%" ont dû être déplacées du côté gauche en raison du nombre de touches de l'ErgoDox, mais l'auriculaire droit ne gère maintenant que deux colonnes de touches au lieu de trois. La touche "Ê" redevient accessible sur la même rangée que les autres lettres, comme sur un clavier classique en disposition bépo. Les lettres, chiffres et symboles sont tous regroupés sur 4 lignes et 6 colonnes pour chaque main, et la première rangée de lettres à la main gauche conserve une identité visuelle "BÉPO". + +Touche de fonction permettant de saisir les touches F1 à F12, les touches F1 à F10 sont placées de façon logique par rapport aux chiffres 1 à 0. Cette même touche permet l'accès aux touches directionnelles sans déplacer la main droite. Les touches "Home" et "End" sont placées de la même façon que sur une TypeMatrix 2030 par rapport aux touches directionnelles. Les touches "Page Up" et "Page Down" sont également accessibles facilement sans déplacer la main droite. Les fonctions "VolUp" et "VolDown" sont placées comme sur la TypeMatrix 2030, avec la fonction "Mute" juste au dessus. Les fonctions "Undo", "Cut", "Copy" et "Paste" sont placées côte à côte comme elles le seraient sur un clavier QWERTY en combinaison avec la touche "Ctrl" (à l'emplacement des lettres "Z", "X", "C" et "V"). Par rapport au layout "SpaceFN", l'utilisation d'une touche de fonction dédiée au pouce permet de ne pas ajouter de latence, et la touche espace reste compatible avec les jeux (action au moment de l'appui et possibilité d'appui long). + +Touche de fonction permettant l'accès au pavé numérique comme sur la TypeMatrix 2030, mais sans avoir à déplacer la main droite : avec les doigts sur la rangée de repos, possibilité de saisir les chiffres "4", "5" et "6" comme sur un pavé numérique classique. Le double "0" de la TypeMatrix a été conservé, et gagne une possibilité de répétition en simples "0". + +L'appui sur une touche permet de basculer en mode BEPO sur un système configuré pour un clavier QWERTY. Cette compatibilité n'est pas parfaite (pas encore de gestion des accents mais ça devrait être faisable avec une disposition en qwerty international, et les combinaisons de touches ne sont pas toutes supportées puisque le clavier traduit déjà certaines touches en combinaisons) mais reste pratique pour une saisie de texte occasionnelle. + +TODO : couche de compatibilité pour utiliser la disposition BÉPO sur un système configuré pour un clavier AZERTY. + +> Olivier Smedts diff --git a/keyboards/ergodox_ez/keymaps/bepo/bepo.png b/keyboards/ergodox_ez/keymaps/bepo/bepo.png new file mode 100644 index 0000000000..3df7aa609f Binary files /dev/null and b/keyboards/ergodox_ez/keymaps/bepo/bepo.png differ diff --git a/keyboards/ergodox_ez/keymaps/bepo/compiled.hex b/keyboards/ergodox_ez/keymaps/bepo/compiled.hex new file mode 100644 index 0000000000..e2ed480f05 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/bepo/compiled.hex @@ -0,0 +1,1190 @@ +:100000000C94D3030C9417040C9417040C94170449 +:100010000C9417040C9417040C9417040C941704F4 +:100020000C9417040C9417040C94B10E0C94830FC9 +:100030000C9417040C9417040C9417040C941704D4 +:100040000C9417040C943D230C9417040C9417047F +:100050000C9417040C94D01C0C9417040C941704E3 +:100060000C9417040C9417040C9417040C941704A4 +:100070000C9417040C9417040C9417040C94170494 +:100080000C9417040C9417040C9417040C94170484 +:100090000C9417040C9417040C9417040C94170474 +:1000A0000C9417040C9417040C941704F00F1210FE +:1000B00000111210001157107A100011CF10E21029 +:1000C000B113B113E013E013161436146715671556 +:1000D00041146715F114F11458156715671561156A +:1000E000FE14FE14FE14FE14FE14FE14FE14FE1480 +:1000F000FE14FE14FE14FE14FE14FE14FE14FE1470 +:1001000010151D1524152B15351502E002E200010E +:10011000E201E00002620001620262016200350059 +:100120002E0030006400015400001E001400040082 +:100130001D00000004521F001A0016001B00E300FF +:10014000E1002000080007000600E0002C0021006C +:10015000150009001900E2000552220017000A00EC +:100160000500000029004C002A0000002B000000C0 +:100170000652470039000000530000000000230031 +:100180001C000B00110000004900240018000D00A5 +:100190001000E600013025000C000E003600E400DF +:1001A0002800260012000F003700E700E5002700B6 +:1001B000130033003800460004522D002F00340095 +:1001C000310048000000210222021A00080001004C +:1001D000000034020500040004000000045236024E +:1001E000080018001C00E3000252370213000C0044 +:1001F0001B00E0002C002602120008003700E2007D +:1002000005522702080036000E00000029004C00AD +:100210002A0000002B0000000652470039000000B1 +:100220005300000000001F022302060034000000FB +:1002300049002E02190017001400035201002D007E +:10024000070016000A00E400280038000F0015001F +:100250000B00E700025225020D00110009004600C4 +:1002600004522E001D00100006004800000020026D +:1002700035001A020802010000001E0005020402F7 +:100280000402010001001F00080218021C02E30220 +:100290000100200013020C021B02E00201002100F9 +:1002A000120208023302E2020100220008023300B7 +:1002B0000E02000001000100010000002B020000FE +:1002C0000100010001000000010000000100230006 +:1002D0001E02060238020000010024001902170263 +:1002E0001402E60201002500070216020A02E402D7 +:1002F000010026000F0215020B02E7020100270091 +:100300000D02110209020100010001001D0210028C +:10031000060201000000210222021A00080001006A +:1003200000003402310204003100000004523602A1 +:10033000080018002F02E3000252370224020C00CA +:100340003002E0002D022F00120022143700E200DC +:1003500005523000080036003502000029004C002C +:100360002A0000002B000000065247003900000060 +:100370005300000000001F022302060034000000AA +:1003800049002E02190017001400010001002D0081 +:10039000070016000A00E400280038000F001500CE +:1003A0000B00E700025225020D0011000900460073 +:1003B00004522E001D00100006004800000000003E +:1003C000000000000000000000003A0000000000F3 +:1003D0007A00000001003B00000000007B000100EB +:1003E00001003C00000000007C00010000003D0016 +:1003F000000000007D00010000003E000000000041 +:10040000000000000000A800A9000000AA000000F1 +:1004100000000000000000000000000000003F009D +:100420004B004E0000000000000040004A00500059 +:1004300000000100010041005200510000000100D5 +:10044000000042004D004F00000001000100430089 +:100450004400450000000000010000000000000012 +:10046000000000000000000000000000000000008C +:10047000000000000000000000000000000000007C +:10048000000000000000010001000000000000006A +:10049000000001000000000000000000000001005A +:1004A000010000000000000000000000000000004B +:1004B000000000000000000000000000000000003C +:1004C000000000000000000000000000000000002C +:1004D000000057005F005C005900620000005600F9 +:1004E00060005D005A0000305800540061005E005A +:1004F0005B008500010055000000000000000000C6 +:1005000000000000000000000000000000000000EB +:1005100000000000000000000000000000000000DB +:1005200000000000000000000000000000000100CA +:1005300001000000000000000000010000000000B9 +:1005400000000000000001000000000000000000AA +:10055000000000000000000000000000000000009B +:10056000010000000000000000000000000000008A +:10057000000000000000000000000000F400F20095 +:100580000000010000000000F000F1000000010088 +:1005900000000000F500F300000001000100000071 +:1005A000F900FA0000000000000000000000000058 +:1005B00000000000000016034500720067006F0095 +:1005C00044006F007800200045005A000000160328 +:1005D0004500720067006F0044006F007800200043 +:1005E00045005A0000000403090409026D000401DB +:1005F00000A0FA0904000001030101000921110112 +:1006000000012240000705810308000A09040100D7 +:100610000103010200092111010001224D0007051B +:10062000820308000A0904020001030000000921F6 +:10063000110100012236000705830308000A09049E +:10064000030001030000000921110100012239000B +:10065000070584031000011201100100000008EDDD +:10066000FE071301000102000105010906A10105B1 +:100670000719E029E7150025019508750181020594 +:1006800008190129059505750191029501750391D8 +:100690000105071900297715002501957875018155 +:1006A00002C005010980A101850216010026B700DC +:1006B0001A01002AB700751095018100C0050C09C8 +:1006C00001A1018503160100269C021A01002A9C43 +:1006D00002751095018100C005010902A1010901FF +:1006E000A1000509190129051500250195057501C8 +:1006F00081029501750381010501093009311581D8 +:10070000257F95027508810609381581257F950199 +:1007100075088106050C0A38021581257F9501753B +:10072000088106C0C005010906A101050719E029D5 +:10073000E71500250195087501810295017508816D +:1007400001050819012905950575019102950175A5 +:100750000391010507190029FF150026FF009506E2 +:1007600075088100C00000000000000000000000CB +:10077000010204060A0F17202C3A4A5D71879DB3C7 +:10078000C7DAE9F5FCFFFCF5E9DAC7B39D87715DCF +:100790004A3A2C20170F0A0604020100000000004C +:1007A00000000000000011241FBECFEFDAE0DEBF22 +:1007B000CDBF04B603FE24C08091FB019091FC01E3 +:1007C000A091FD01B091FE018730904BA740B04B46 +:1007D000B9F41092FB011092FC011092FD011092ED +:1007E000FE0114BE84B7877F84BF88E10FB6F894FA +:1007F00080936000109260000FBEE0E0FFE3099577 +:1008000011E0A0E0B1E0E8E0FAE402C005900D924A +:10081000A433B107D9F711E0A4E3B1E001C01D9200 +:10082000AB3FB107E1F70E94F50B0C9402250C9445 +:1008300000001092B9008AE08093B800089594EA0D +:100840009093BC009091BC0097FFFCCF9091B900B1 +:10085000987F983021F0903111F081E008958093D5 +:10086000BB0084E88093BC008091BC0087FFFCCF74 +:100870008091B900887F883111F0803471F780E071 +:10088000089584E98093BC008091BC0084FDFCCF76 +:1008900008958093BB0084E88093BC008091BC00E5 +:1008A00087FFFCCF9091B900987F81E0983209F4DE +:1008B00080E0089584E88093BC008091BC0087FFAD +:1008C000FCCF8091BB00089580910101811115C07A +:1008D00080E40E941F048093010181110CC082E119 +:1008E0000E94490480930101811105C08FEF0E948D +:1008F0004904809301010E94410484B1807F84B93E +:1009000085B1807F85B98AB1837F8AB98BB1837FB6 +:100910008BB93E98469808950E941F068093010166 +:100920000E94640480B38C7080BB81B3836F81BBF1 +:10093000A5E3B1E0E3E4F1E08EE08E0F11921D92A9 +:100940008E13FCCF0C940906BF92CF92DF92EF92E8 +:10095000FF920F931F93CF93DF9380910101882320 +:1009600079F0809134018F5F80933401811108C048 +:100970000E941F0680930101811102C00E94B105EF +:1009800005E311E0C0E0D0E0DD24D39482E0C82E7E +:10099000EE24E394F12CC730D10500F580910101DC +:1009A000811164C080E40E941F04809301018111C1 +:1009B00012C082E10E9449048093010181110BC0A1 +:1009C000C7010C2E01C0880F0A94EAF780950E9497 +:1009D0004904809301010E94410448C0CA30A1F03B +:1009E00028F4C83059F0C93061F005C0CC3089F026 +:1009F00070F0CD3089F0209A289810C0219A29985B +:100A00000DC0229A2A980AC0239A2B9807C0529A9E +:100A100001C0539A5B9802C03E9A469890EA9A9514 +:100A2000F1F79FB1799902C082E001C080E0917036 +:100A30009D25982B7C9902C084E001C080E0892B21 +:100A40007D9902C038E001C030E0832B7E9902C05E +:100A500020E101C020E0822B9FB19095991F99273A +:100A6000991F9295990F907E892B0FC0809101015B +:100A7000811149C080E40E941F04809301018823F2 +:100A800079F1B12C0E9441048B2DF80190819817C7 +:100A900019F08083C09200010E94640421960F5FC8 +:100AA0001F4FCE30D10509F076CF80910001882309 +:100AB00061F1815080930001882339F08FE99FE034 +:100AC0000197F1F700C0000020C0A3E4B1E0E5E326 +:100AD000F1E0CF01825F91919D938E13FCCF15C001 +:100AE00083E10E944904809301018111CACF81E40E +:100AF0000E941F04809301018111C3CF0E945A04F8 +:100B0000B82EB094BFCF80E0C0CF0E94AF0581E087 +:100B1000DF91CF911F910F91FF90EF90DF90CF90D9 +:100B2000BF900895E82FF0E0ED5BFE4F80810895BF +:100B300008950F931F93CF93DF93C3E4D1E010E0A8 +:100B40000C2F025F899190E00E94461C180F0C1335 +:100B5000F9CF812FDF91CF911F910F9108950C94C0 +:100B6000910656985E9825982D9826982E98279845 +:100B70002F988FEF90E09093890080938800909356 +:100B80008B0080938A0090938D0080938C00259A2F +:100B90002D9A2FEF80E792E0215080409040E1F7BE +:100BA00000C00000269A2E9A2FEF80E792E0215095 +:100BB00080409040E1F700C00000279A2F9A2FEF65 +:100BC00080E792E0215080409040E1F700C00000B3 +:100BD00025982D982FEF80E792E02150804090409B +:100BE000E1F700C0000026982E982FEF80E792E0F2 +:100BF000215080409040E1F700C0000027982F98D6 +:100C000056985E9825982D9826982E9827982F9874 +:100C1000089589EA8093800089E080938100249878 +:100C20002C983F988AB18F748AB96E98479A8BB185 +:100C3000806B8BB9769A0E94B1050C94900680E285 +:100C4000809301018091510181110EC00E9419040D +:100C500081E0809351012FEF83ED90E3215080409C +:100C60009040E1F700C0000080E40E941F048093E0 +:100C7000010181112EC00E9449048093010181115C +:100C800028C00E94490480930101811122C08FE392 +:100C90000E9449048093010181111BC00E944104FC +:100CA00080E40E941F0480930101811112C08CE036 +:100CB0000E9449048093010181110BC00E944904E4 +:100CC00080930101811105C08FE30E944904809344 +:100CD00001010E944104809101010895662319F0E9 +:100CE000613041F017C0FC018281811116C084E19E +:100CF00091E00895FC018281882331F084E00E9414 +:100D00000F1A8FE091E0089584E00E94301A8AE083 +:100D100091E0089580E090E0089587E191E00895E2 +:100D20000895089581E0089581E008950C94940653 +:100D300008950F931F93CF93DF938C01FC01C08123 +:100D4000D181CE010E94CB1ABE010E944207EC0164 +:100D5000B8010E949606882309F48DC0F8018281AB +:100D6000882309F44AC080915D0181111FC0C431FC +:100D7000F0E5DF0709F051C00E94980681E08093FA +:100D80005D010E949A1C90935C0180935B0110921C +:100D90005401109256011092550110925801109270 +:100DA000570110925A011092590165C080915B0160 +:100DB00090915C010E94A61C883C910570F4809182 +:100DC0005401E82FF0E0EE0FFF1FEB5AFE4FD183E6 +:100DD000C0838F5F809354014EC0C43880E5D8072C +:100DE00021F0C538D04501F13AC0F801828188234D +:100DF00041F01092520182E01EC0C438E0E5DE07E7 +:100E000059F580915201811106C086E20E94551267 +:100E100086E20E941D1382E01CC0C438F0E5DF07A3 +:100E200041F3C538D045D9F4F8018281882331F0E7 +:100E30001092530180E20E946C131DC080915301F7 +:100E4000811106C087E20E94551287E20E941D139D +:100E500080E20E9473130FC0C538D04529F381E0AA +:100E60008093520180935301C801DF91CF911F916C +:100E70000F910C94920680E0DF91CF911F910F911A +:100E80000895089596E0799FF001112494E5899FD3 +:100E9000E00DF11D1124E60FF11DEE0FFF1FE25EC4 +:100EA000FE4F859194910895880F991FFC01E25699 +:100EB000F040859194910895880F991FFC01E25E9E +:100EC000FE4F8591949108950F931F93CF93DF93D5 +:100ED000EC01811520E3920750F5C11580E2D80797 +:100EE00008F0C3C0CB3BD10590F4C83AD10508F057 +:100EF0006AC0C53AD10508F05BC0C430D10508F01E +:100F0000D0C1219709F0CAC101E010E00AC2CF3F69 +:100F1000D10511F008F0C5C1C03FD10508F0A2C04D +:100F2000CE01805E9109089708F4BBC1B7C1C130FA +:100F300090E5D90709F4A2C020F5C0318FE4D807A5 +:100F400070F4C11590E4D90708F094C0C11521E3ED +:100F5000D20708F0A3C1DD278E01106CE2C1C115D4 +:100F6000D04509F09BC10E94D2158FEF94E32CE08D +:100F7000815090402040E1F700C000000E94F51C25 +:100F8000D0C1C11597E5D90758F4C03121E5D20782 +:100F900008F01CC1C43180E5D80708F475C07EC1D3 +:100FA000CE0190578115904108F078C1DF7073C170 +:100FB000C53AD10509F477C1C63AD10509F076C121 +:100FC00002E810E4AEC1C83AD10509F472C1C93AC9 +:100FD000D10509F471C1CA3AD10509F470C1CB3AFF +:100FE000D10509F46FC1CC3AD10509F46EC1CD3AEF +:100FF000D10509F46DC1C03BD10509F46CC1CE3AED +:10100000D10509F46BC1CF3AD10509F46AC1C13BDE +:10101000D10509F469C1C23BD10509F468C1C33BDC +:10102000D10509F467C1C43BD10509F466C1C53BCC +:10103000D10509F465C1C63BD10509F464C1C73BBC +:10104000D10509F463C1C83BD10509F462C1C93BAC +:10105000D10509F461C1CA3BD10509F460C100E0C2 +:1010600014E45FC18E0110655CC1CE019F700E94C7 +:101070005C0758C1DF708E01106A53C18091DA019C +:1010800081608093DA014DC10E949A1E811102C0D5 +:101090000E94801E0E94B71E90E09093FB018093F7 +:1010A000FA01C23080E5D80721F48091FA0181600D +:1010B00086C0C43090E5D90721F48091FA0182609E +:1010C0007EC0C63020E5D20721F48091FA01846009 +:1010D00076C0C83080E5D80719F48091FA0127C09E +:1010E000CA3090E5D90721F48091FA01806167C088 +:1010F000CC3020E5D20721F48091FA0180625FC0F4 +:10110000CE3080E5D80721F48091FA01806457C081 +:10111000C03190E5D90721F48091FA0180684FC071 +:10112000C23120E5D20729F48091FA0184608860F9 +:1011300046C0C33080E5D80721F48091FA018E7F44 +:101140003EC0C53090E5D90721F48091FA018D7F2A +:1011500036C0C73020E5D20721F48091FA018B7F99 +:101160002EC0C93080E5D80719F48091FA0126C055 +:10117000CB3090E5D90721F48091FA018F7E1FC012 +:10118000CD3020E5D20721F48091FA018F7D17C080 +:10119000CF3080E5D80721F48091FA018F7B0FC012 +:1011A000C13190E5D90721F48091FA018F7707C00A +:1011B000C331D04531F48091FA018B7F877F8093D2 +:1011C000FA018091FA010E94BB1EABC08D2F9927B6 +:1011D0008F70992781309105D9F49E0123703327B0 +:1011E00002C0880F991F2A95E2F79C688E0144E09F +:1011F000000F111F4A95E1F700271370802B912BE8 +:1012000053E0CC0FDD1F5A95E1F7C076DD272FC0E4 +:101210008230910531F4DC2FCC278E01016F106AEA +:1012200080C08330910569F4CE018370992701E075 +:1012300010E002C0000F111F8A95E2F7C8019C68F8 +:101240000FC084309105B9F4CE018370992701E075 +:1012500010E002C0000F111F8A95E2F7C8019A68DA +:1012600023E0CC0FDD1F2A95E1F7C07ED7708C01FB +:101270000C2B1D2B56C08530910531F4DC2FCC276B +:101280008E01046F106A4DC0069709F04AC0CF71F5 +:10129000DD27DC2FCC278E01106243C000E010E078 +:1012A00040C08E013EC001E810E43BC003E810E4FA +:1012B00038C002EE14E435C009EE14E432C00AEE80 +:1012C00014E42FC005EB14E42CC006EB14E429C091 +:1012D00007EB14E426C00CEC14E423C00DEC14E47A +:1012E00020C003E815E41DC00AE815E41AC002E9AD +:1012F00015E417C004E915E414C001E216E411C0B6 +:1013000003E216E40EC004E216E40BC005E216E4A4 +:1013100008C006E216E405C007E216E402C00AE2CD +:1013200016E4C801DF91CF911F910F91089596E0C7 +:10133000799FF001112494E5899FE00DF11D11249E +:10134000E60FF11DEE0FFF1FE25EFE4F85919491B7 +:10135000803E9105E0F4803C910558F5813391057C +:1013600009F46FC048F48932910509F463C08A32E8 +:10137000910509F46DC072C089339105E9F0823896 +:101380009105D1F08533910509F44DC067C0833EC6 +:10139000910581F138F4803E9105B9F0823E9105C6 +:1013A000D9F05CC0863E910561F1873E9105A1F1BF +:1013B00055C00E94540708952091FA0120FD02C0F3 +:1013C00021FF4CC080EE90E049C08091FA0180FF7F +:1013D000F9CF89E390E042C08091FA0182FF0EC00C +:1013E0008091FA0184FF03C080E090E037C083EE73 +:1013F00090E034C08091FA0182FFF2CF82EE90E05B +:101400002DC08091FA0183FF0BC08091FA0184FD09 +:10141000EBCF87EE90E022C08091FA0183FFF5CFF9 +:1014200086EE90E01BC08091FA0185FF07C089E23B +:1014300090E014C08091FA0185FFF9CF85E390E038 +:101440000DC08091FA0186FF07C08AE290E006C0D5 +:101450008091FA0186FFF9CF81E390E00E94640752 +:10146000089508950C94310A80916E010895CF93E8 +:10147000DF9300D01F92CDB7DEB79C018091F101C0 +:10148000843019F593E099833B832A839093E90094 +:101490008FEF9091E800815095FD06C095ED9A95EB +:1014A000F1F700008111F5CF8091E80085FF0DC0B4 +:1014B00040E050E063E070E0CE0101960E94A10C94 +:1014C0008091E8008E778093E8000F900F900F9046 +:1014D000DF91CF910895CF93DF9300D01F92CDB7C6 +:1014E000DEB72091F101243021F522E029839B838E +:1014F0008A8383E08093E9008FEF9091E800815028 +:1015000095FD06C095ED9A95F1F700008111F5CF94 +:101510008091E80085FF0DC040E050E063E070E09E +:10152000CE0101960E94A10C8091E8008E778093F5 +:10153000E8000F900F900F90DF91CF9108952091C8 +:10154000F1012430F1F422E02093E9002FEF3091F3 +:10155000E800215035FD06C035ED3A95F1F7000061 +:101560002111F5CF2091E80025FF0BC040E050E0AD +:1015700065E070E00E94A10C8091E8008E77809376 +:10158000E8000895CF93DF93EC019091F10194303E +:1015900009F046C080910C018823D9F080910D019B +:1015A0008823B9F09093E9008FEF9091E800815083 +:1015B00095FD06C095E19A95F1F700008111F5CFF0 +:1015C0008091E80085FF2CC040E050E060E170E0D1 +:1015D00017C081E08093E9008FEF9091E80081507F +:1015E00095FD06C095ED9A95F1F700008111F5CFB4 +:1015F0008091E80085FF14C040E050E068E070E0B2 +:10160000CE010E94A10C8091E8008E778093E800C3 +:1016100080E1FE01AEE5B1E001900D928A95E1F71F +:10162000DF91CF9108958091F001811109C00E944E +:10163000360E0E94930E8091E20084608093E20057 +:1016400008951092F001089508950C942A230E94A1 +:101650008B1C0E9430230E9439110C94320A42E004 +:1016600061EC81E00E94B00D42E061EC82E00E94FA +:10167000B00D42E061EC83E00E94B00D42E161EC0C +:1016800084E00C94B00D8091F301833009F455C0CF +:1016900030F4813071F0823009F48EC008958A30C0 +:1016A00009F47AC08B3009F460C0893009F09CC01D +:1016B00020C08091F201813A09F096C08091E80043 +:1016C000877F8093E8008091F6019091F701892B44 +:1016D00021F460E18EE591E003C060E080E090E0FD +:1016E00070E00E94EC0C8091E8008B778093E8001A +:1016F00008958091F201813209F076C08091F6015F +:101700009091F701009719F0039709F06DC080914F +:10171000E800877F8093E8008091E80082FD05C0A3 +:101720008091F1018111F8CF5FC08091F100809329 +:101730006E018091E8008B7753C08091F201813A6D +:1017400009F052C08091F6019091F701892B09F0C0 +:101750004BC08091E800877F8093E8008091E8008B +:1017600080FFFCCF80910C0136C08091F201813264 +:10177000D9F58091F6019091F701892BA9F5809117 +:10178000E800877F8093E8000E94E50D8091F401D6 +:1017900080930C010C94D2158091F201813221F5D5 +:1017A0008091E800877F8093E8000E94E50D80919A +:1017B000F50180936F0108958091F201813AA1F4BF +:1017C0008091E800877F8093E8008091E80080FFA7 +:1017D000FCCF80916F018093F1008091E8008E77BB +:1017E0008093E8000C94E50D089584B7877F84BF4B +:1017F00088E10FB6F89480936000109260000FBEED +:1018000090E080E80FB6F8948093610090936100B7 +:101810000FBE0E9488110E94360E0E94930E809186 +:10182000E20084608093E20078940E9419110E9483 +:101830008A1182E091E00E9434110E941823809165 +:10184000F101853069F40E94521C8091EF018823D8 +:10185000B1F30E947D1C882391F30E948B0CEFCF83 +:101860000E949011ECCF292F332723303105C9F086 +:1018700064F42130310581F02230310509F043C094 +:101880008DE690E02AEE35E042C021323105F1F0DC +:101890002232310541F137C082E190E027E536E0A0 +:1018A00036C099278130910541F08230910541F091 +:1018B000892B49F5E6EEF5E005C0EEECF5E002C057 +:1018C000E6EBF5E0849190E09F0121C06430D8F40C +:1018D000E62FF0E0EE0FFF1FEE5DFE4F208131811D +:1018E00089E090E014C0643070F470E0FB01EE0F0A +:1018F000FF1FE65EFE4F20813181FB01EA5EFE4F55 +:10190000808190E004C080E090E020E030E0FA01C7 +:1019100031832083089580E189BD82E189BD09B4C6 +:1019200000FEFDCF8091D8008F7D8093D8008091FC +:10193000E00082608093E0008091E00081FDFCCFB8 +:101940000895CF92DF92EF92FF920F931F93CF9360 +:10195000DF93EC018B016A010E94040E811133C0F8 +:10196000C114D10439F0F60180819181081B190B53 +:10197000C80FD91FE12CF12C0115110519F1809127 +:10198000E80085FD16C08091E8008E778093E8001E +:10199000C114D10449F0F60180819181E80EF91E4D +:1019A000F182E08285E00FC00E94040E882321F3BB +:1019B0000AC089918093F10001501109FFEFEF1ADD +:1019C000FF0ADACF80E0DF91CF911F910F91FF9056 +:1019D000EF90DF90CF9008952091F8013091F901B8 +:1019E0002617370748F06115710539F42091E80092 +:1019F0002E772093E80001C0B90140E06115710520 +:101A0000A9F12091F101222309F443C0253009F402 +:101A100042C02091E80023FD40C02091E80022FD53 +:101A200032C02091E80020FFE9CF4091F3002091DF +:101A3000F20030E0342BFC01CF016115710559F043 +:101A40002830310540F481918093F1006150710993 +:101A50002F5F3F4FF1CF41E02830310509F040E0E2 +:101A60002091E8002E772093E800C8CF4111C9CF1C +:101A70000AC08091F101882361F0853061F0809186 +:101A8000E80083FD0AC08091E80082FFF2CF80E089 +:101A9000089582E0089583E0089581E008952091FB +:101AA000F8013091F9012617370748F061157105E3 +:101AB00039F42091E8002E772093E80001C0B901A5 +:101AC000FC0120E06115710591F18091F1018823FD +:101AD00009F440C0853009F43FC08091E80083FDDF +:101AE0003DC08091E80082FD2FC08091E80080FF1A +:101AF000E9CF2091F3008091F20090E0922B6115E4 +:101B0000710559F08830910540F424912093F1003B +:101B10003196615071090196F2CF21E0089709F0E2 +:101B200020E08091E8008E778093E800CBCF2111F0 +:101B3000CCCF0AC08091F101882361F0853061F03B +:101B40008091E80083FD0AC08091E80082FFF2CF17 +:101B500080E0089582E0089583E0089581E008958B +:101B6000982F973058F59093E900981739F07091B5 +:101B7000EC002091ED005091F00003C0242F762F4F +:101B800050E021FF19C03091EB003E7F3093EB0015 +:101B90003091ED003D7F3093ED003091EB003160EE +:101BA0003093EB007093EC002093ED005093F00025 +:101BB0002091EE0027FF07C09F5FD3CF8F708093E7 +:101BC000E90081E0089580E008958091F20187FFA7 +:101BD00011C08091E80082FD05C08091F101811162 +:101BE000F8CF11C08091E8008B770BC08091F10194 +:101BF000882349F08091E80080FFF8CF8091E800C9 +:101C00008E778093E80008952091E4003091E500FC +:101C100095E64091EC00842F817040FF22C08091B6 +:101C2000E80080FD1CC08091F101882391F085308F +:101C300091F08091EB0085FD10C04091E40050913F +:101C4000E5004217530729F39A01915011F784E0F8 +:101C5000089582E0089583E0089581E0089580E08A +:101C600008954091E80042FFDECF08950E94A40E3F +:101C70000E94AC0EE0EEF0E0808181608083E8EDB0 +:101C8000F0E080818F77808319BCA7EDB0E08C9164 +:101C90008E7F8C9380818F7E80831092F0010895D7 +:101CA0000F931F93CF93DF930E94A40E0E94AC0E5C +:101CB000C8EDD0E088818F778883888180688883A9 +:101CC00088818F7D888319BC1092F1011092ED01FB +:101CD0001092EF011092EE0100EE10E0F801808109 +:101CE0008B7F808388818160888342E060E080E030 +:101CF0000E94B00DE1EEF0E080818E7F8083E2EE05 +:101D0000F0E0808181608083808188608083F80139 +:101D100080818E7F8083888180618883DF91CF91ED +:101D20001F910F910895E8EDF0E080818F7E808310 +:101D3000E7EDF0E080818160808384E082BF81E014 +:101D40008093F0010C94500EE8EDF0E080818E7FDE +:101D500080831092E20008951092DA001092E10060 +:101D600008951F920F920FB60F9211242F933F9355 +:101D70004F935F936F937F938F939F93AF93BF9393 +:101D8000EF93FF938091E10082FF0BC08091E2000E +:101D900082FF07C08091E1008B7F8093E1000E9469 +:101DA00018118091DA0080FF1FC08091D80080FF59 +:101DB0001BC08091DA008E7F8093DA008091D90079 +:101DC00080FF0DC080E189BD82E189BD09B400FEBC +:101DD000FDCF81E08093F1010E94130B05C019BC77 +:101DE0001092F1010E94210B8091E10080FF19C047 +:101DF0008091E20080FF15C08091E2008E7F809389 +:101E0000E2008091E20080618093E2008091D8003E +:101E100080628093D80019BC85E08093F1010E9414 +:101E2000250B8091E10084FF30C08091E20084FFA7 +:101E30002CC080E189BD82E189BD09B400FEFDCFDF +:101E40008091D8008F7D8093D8008091E1008F7EB3 +:101E50008093E1008091E2008F7E8093E200809188 +:101E6000E20081608093E2008091ED01882311F00F +:101E700084E007C08091E30087FD02C081E001C0DB +:101E800083E08093F1010E94270B8091E10083FFA2 +:101E900029C08091E20083FF25C08091E100877F07 +:101EA0008093E10082E08093F1011092ED01809136 +:101EB000E1008E7F8093E1008091E2008E7F80932D +:101EC000E2008091E20080618093E20042E060E005 +:101ED00080E00E94B00D8091F00088608093F00057 +:101EE0000E94240BFF91EF91BF91AF919F918F9131 +:101EF0007F916F915F914F913F912F910F900FBE06 +:101F00000F901F9018951F920F920FB60F921124E9 +:101F10002F933F934F935F936F937F938F939F93F1 +:101F2000AF93BF93CF93DF93EF93FF93C091E900FB +:101F3000CF708091EC00D82FD17080FDD0E8109246 +:101F4000E9008091F000877F8093F00078940E94F0 +:101F5000C70F1092E9008091F00088608093F00034 +:101F6000CD2BCF70C093E900FF91EF91DF91CF911E +:101F7000BF91AF919F918F917F916F915F914F91A1 +:101F80003F912F910F900FBE0F901F9018951F93A8 +:101F9000CF93DF93CDB7DEB7AA970FB6F894DEBF25 +:101FA0000FBECDBFE2EFF1E088E08E0F9091F1001F +:101FB00091938E13FBCF0E94430B8091E80083FF27 +:101FC0001FC18091F2019091F301492F50E04A30F6 +:101FD000510508F015C1FA01EA5AFF4F0C94B224DA +:101FE000803881F0823809F00BC18091F6018F7042 +:101FF0008093E9008091EB0085FB882780F910929F +:10200000E90006C08091EE019091EF01911182608C +:102010009091E800977F9093E8008093F1001092F0 +:10202000F100C8C0282F2D7F09F0EAC0882319F0DD +:10203000823061F0E5C08091F401813009F0E0C0A8 +:10204000933009F080E08093EF012BC08091F40180 +:10205000811127C08091F6018F7009F4D1C080935F +:10206000E9002091EB0020FF1CC0933021F4809107 +:10207000EB00806214C09091EB0090619093EB00B4 +:1020800021E030E0A90102C0440F551F8A95E2F714 +:102090004093EA001092EA008091EB008860809300 +:1020A000EB001092E9008091E800877F86C08111E3 +:1020B000A7C01091F4011F778091E3008078812BF5 +:1020C0008093E3008091E800877F8093E8000E947E +:1020D000E50D8091E80080FFFCCF8091E3008068EF +:1020E0008093E300111102C082E001C083E080937D +:1020F000F10186C08058823008F082C08091F401DE +:102100009091F5018C3D53E0950779F583E08A8342 +:102110008AE289834FB7F894DE01139620E03EE00F +:1021200051E2E32FF0E050935700E49120FF03C009 +:10213000E295EF703F5FEF708E2F90E0EA3010F085 +:10214000C79601C0C0968D939D932F5F243149F7A8 +:102150004FBF8091E800877F8093E8006AE270E0DB +:10216000CE0101960E94EC0C14C0AE014F5F5F4F90 +:102170006091F6010E94330CBC01009709F440C045 +:102180009091E800977F9093E80089819A810E945E +:102190004F0D8091E8008B778093E80031C0803844 +:1021A00079F58091E800877F8093E8008091ED01C8 +:1021B0008093F1008091E8008E778093E8000E9480 +:1021C000E50D1EC081111CC09091F4019230C0F445 +:1021D0008091E800877F8093E8009093ED010E9452 +:1021E000E50D8091ED01811106C08091E30087FD2E +:1021F00002C081E001C084E08093F1010E942F0BB6 +:102200008091E80083FF0AC08091E800877F809377 +:10221000E8008091EB0080628093EB00AA960FB6F5 +:10222000F894DEBF0FBECDBFDF91CF911F9108950F +:102230000895CF938091F1018823A1F0C091E90026 +:10224000CF709091EC00892F817090FD80E8C82BB1 +:102250001092E9008091E80083FD0E94C70FCF70C3 +:10226000C093E900CF910895909375018093740114 +:102270000895E0917401F0917501309721F001907B +:10228000F081E02D099480E00895E0917401F091CF +:102290007501309721F00280F381E02D09940895B3 +:1022A000E0917401F0917501309721F00480F5817F +:1022B000E02D0994089520917201309173018217E5 +:1022C000930771F09093730180937201E091740110 +:1022D000F0917501309721F00680F781E02D099487 +:1022E000089520917001309171018217930771F068 +:1022F0009093710180937001E0917401F0917501E8 +:10230000309721F00084F185E02D09940895089517 +:102310000C9487110E94911C0E948C040C94531DF4 +:102320009F92AF92BF92CF92DF92EF92FF920F9364 +:102330001F93CF93DF9300D000D000D0CDB7DEB78E +:102340000E94A4040DE010E0AA24A394B12C902EC6 +:10235000802F0E949205980129583E4F6901F9018A +:10236000F080F826A1F40150110988F78FEF8983D6 +:102370008A831B820E949A1C8160782F9D838C83A4 +:1023800049815A816B818D810E9427122FC09091C3 +:10239000DA0191FF04C08E830E9498058E8125E0AA +:1023A00030E0A501022E01C0440F0A94EAF7E42EA2 +:1023B0004F21C1F029839A828E2191E009F490E0A7 +:1023C0009B830E949A1C8160782F9D838C83498116 +:1023D0005A816B818D810E942712F6018081E82647 +:1023E000E08204C021503109E0F6BDCF0E943A20BE +:1023F000109176010E9439111817B9F00E94391115 +:102400008093760126960FB6F894DEBF0FBECDBF3F +:10241000DF91CF911F910F91FF90EF90DF90CF90C0 +:10242000BF90AF909F900C94320A26960FB6F89406 +:10243000DEBF0FBECDBFDF91CF911F910F91FF90F7 +:10244000EF90DF90CF90BF90AF909F900895CF9383 +:10245000DF93CDB7DEB72B970FB6F894DEBF0FBE74 +:10246000CDBF4F83588769877A878B87DE011196A6 +:1024700086E0FD0111928A95E9F785E0FE01379625 +:1024800001900D928A95E1F749815A816B817C8197 +:102490008D819E810E9470182B960FB6F894DEBF36 +:1024A0000FBECDBFDF91CF910895CF93882309F45C +:1024B000C2C0C82F823859F40E94391181FDBBC0B7 +:1024C00089E30E944A1B0E94171C89E30CC08338D1 +:1024D00079F40E94391180FDAEC083E50E944A1B49 +:1024E0000E94171C83E50E948C1BCF910C94171C33 +:1024F000843859F40E94391182FD9DC087E40E94FE +:102500004A1B0E94171C87E4EECF8CEF8C0F813A98 +:1025100048F48C2F0E947D2281118DC08C2F0E9447 +:102520004A1BE3CF80E28C0F883048F4C77081E00B +:1025300001C0880FCA95EAF70E94D01BD6CF8BE561 +:102540008C0F833078F4C53A29F0C63A31F083E82D +:1025500090E005C081E890E002C082E890E0CF9171 +:102560000C945B1188E58C0F833108F064C0C83A85 +:1025700039F1C93A41F1CA3A49F1CB3A51F1CC3A71 +:1025800059F1CD3A61F1C03B69F1CE3A71F1CF3AE0 +:1025900079F1C13B81F1C23B89F1C33B91F1C43B6D +:1025A00099F1C53BA1F1C63BA9F1C73BB1F1C83BCD +:1025B000B9F1C93BC1F1CA3BC9F180E090E038C034 +:1025C00082EE90E035C089EE90E032C08AEE90E075 +:1025D0002FC085EB90E02CC086EB90E029C087EB04 +:1025E00090E026C08CEC90E023C08DEC90E020C001 +:1025F00083E891E01DC08AE891E01AC082E991E089 +:1026000017C084E991E014C081E292E011C083E236 +:1026100092E00EC084E292E00BC085E292E008C036 +:1026200086E292E005C087E292E002C08AE292E090 +:10263000CF910C947111CF910895882309F44BC068 +:10264000823859F40E94391181FF45C089E30E9404 +:102650004A1B0E94171C89E30CC0833871F40E9446 +:10266000391180FF38C083E50E944A1B0E94171C65 +:1026700083E50E948C1B0C94171C843859F40E942B +:10268000391182FF28C087E40E944A1B0E94171C50 +:1026900087E4EFCF9CEF980F913A58F390E2980FB0 +:1026A000983050F4877091E001C0990F8A95EAF74D +:1026B000892F0E94D61BDFCF9BE5980F933020F423 +:1026C00080E090E00C945B11885A833120F480E024 +:1026D00090E00C9471110895882321F00E94D01B82 +:1026E0000C94171C0895882321F00E94D61B0C948B +:1026F000171C08957F928F929F92AF92BF92CF92B4 +:10270000DF92EF92FF920F931F93CF93DF931F926D +:10271000CDB7DEB77C01C62E772EFC010581029570 +:102720000F70128111110E94ED1B0E94431B882320 +:1027300079F0112369F080E28C0D883048F082E056 +:102740000E942C1B0E94431B91E0D82ED92601C069 +:10275000D12CE72DE295EF70F0E0E05AFF4F0C949A +:10276000B224872D807F072D0F70882311F00295EA +:10277000007F112389F0002309F490C180E28C0DC1 +:10278000883020F4802F0E94D01B03C0802F0E942D +:10279000E01B0E94171C82C18C2D0E941D13002378 +:1027A00009F495C180E28C0D883020F4802F0E94BE +:1027B000D61B03C0802F0E94E61B0E94171C87C1F6 +:1027C000972D907F872D8F70903211F08295807FAA +:1027D000CC2021F0F1E0CF16B1F01EC0112349F05A +:1027E000002309F414C1013009F011C10E94001C3A +:1027F0006EC1002319F0013009F469C189830E9478 +:10280000031C89810AC1112321F0023008F05FC145 +:10281000FEC001115CC101C1112321F0002309F4A4 +:10282000F6C03CC1002309F4F8C03EC1872D86954F +:102830008695837090E0009719F0019761F047C189 +:10284000112321F08C2D972D937002C080E090E031 +:102850000E945B113CC1112321F08C2D972D9370A8 +:1028600002C080E090E00E94711131C18C2D1123D3 +:1028700019F00E94421F02C00E94AA1F0E942F202E +:1028800026C1872D837009F052C0111120C18C2DF3 +:10289000829586958770880F880F9C2D9F70892E52 +:1028A000912CA12CB12C082E04C0880C991CAA1CB8 +:1028B000BB1C0A94D2F7C4FE14C00FE010E020E065 +:1028C00030E0B901A80104C0440F551F661F771FEF +:1028D0008A95D2F7CB01BA01609570958095909555 +:1028E00003C060E070E0CB01272D2695269523706C +:1028F00030E02230310569F02330310589F0682954 +:1029000079298A299B292130310571F00E94B81953 +:10291000DEC0682979298A299B290E94D419D7C049 +:102920000E94B819C501B4010E949C19D0C011239E +:1029300019F0872D817001C08695882309F4C7C0DE +:102940008C2D829586958770880F880F9C2D9F709F +:10295000892E912CA12CB12C082E04C0880C991C16 +:10296000AA1CBB1C0A94D2F7C4FE14C00FE010E0EE +:1029700020E030E0B901A80104C0440F551F661FD4 +:10298000771F8A95D2F7CB01BA0160957095809533 +:10299000909503C060E070E0CB01272D2695269529 +:1029A0002370422F50E04230510569F04330510509 +:1029B00089F0682979298A299B294130510571F0CC +:1029C0000E94921A84C0682979298A299B290E9429 +:1029D000AE1A7DC00E94921AC501B4010E94761AF7 +:1029E00076C08C2D90E0FC01E05EF109E531F10547 +:1029F00008F050C0E059FF4F0C94B2240C2D0F701A +:102A0000872D8F71112331F00E940F1A802F0E94A1 +:102A10006C135DC00E94301A802F0E94731357C040 +:102A2000112339F0011153C0872D8F710E94551A5F +:102A30004EC0023008F04BC0F7CF112339F0872D7C +:102A40008F710E940F1A43C01123C9F3872D8F7114 +:102A50000E94301A3CC0112329F0872D8F710E94EB +:102A6000FA1935C00E94F01932C0112351F0172D08 +:102A70001F71812F0E940F1A63E0812F0E94231B78 +:102A800026C081E00E942C1B023008F182E00E94E7 +:102A90002C1B1DC0112331F0002389F28C2D0E94C4 +:102AA000551215C0002391F28C2D0E941D130FC0EA +:102AB000472D4F706C2DC7010E946E060E9414199D +:102AC00006C0472D4F706C2DC7010E944107DD20C5 +:102AD000F9F00E941F1B80FD1BC0F70112820E94AB +:102AE000191B0E940F1AC7010E9497150E94191BFB +:102AF0000F90DF91CF911F910F91FF90EF90DF909A +:102B0000CF90BF90AF909F908F907F900C94301A91 +:102B10000F90DF91CF911F910F91FF90EF90DF9079 +:102B2000CF90BF90AF909F908F907F9008950F931C +:102B30001F93CF93DF93EC01888199812B813C8196 +:102B4000232BB9F09F3F11F48F3F99F0CE010E94E3 +:102B50009906882371F0688179818A810E94151B0A +:102B60008C010E94CA1A0E949119B801CE010E94DC +:102B70007A13DF91CF911F910F9108950E94ED1B61 +:102B80000E94FD1B0E94C21B0E94171C0E94E02095 +:102B90000E942F2080E090E00E945B1180E090E096 +:102BA0000C9471110E94DD1B0C94BE150E940A1B2F +:102BB000292F22952F7030E02C3031054CF42A302B +:102BC00031056CF42250310922303105A8F407C0D8 +:102BD0002C30310569F02F30310551F00DC0803FA8 +:102BE00069F018F4803E40F409C0843F29F406C01F +:102BF00093FB882780F9089580E0089581E0089587 +:102C0000CF93DF9300D000D01F92CDB7DEB70F90E7 +:102C10000F900F900F900F90DF91CF910895CF9369 +:102C2000DF9300D000D000D0CDB7DEB726960FB628 +:102C3000F894DEBF0FBECDBFDF91CF9108951F93F3 +:102C4000CF93DF93C091850116E080918601C8176C +:102C500099F0D0E01C9FF0011D9FF00D1124E95761 +:102C6000FE4F4081518162817381848195810E94F0 +:102C70000F162196C770E9CFDF91CF911F9108956C +:102C80004091B7015091B8016091B9017091BA01BA +:102C90008091BB019091BC010C940F168091BC01F6 +:102CA00082958F7009F054C08091B901882309F48E +:102CB0004FC080918501A09186016091B70170910C +:102CC000B8014091BA015091BB01B6E08A1709F4EE +:102CD0003FC090E041155105C1F17F3F11F46F3FB6 +:102CE000A1F1B89FF001B99FF00D1124E957FE4FF3 +:102CF000218172132AC02081621327C022812111F1 +:102D000024C0238134812417350710F42150310960 +:102D1000241B350B283C3105C0F42091BC012F70D9 +:102D200020612093BC0126E0289FF001299FF00D2F +:102D30001124E457FE4F80818F708061808387EB80 +:102D400091E00E9497150C941F1601968770BECFD4 +:102D50000895CF92DF92EF92FF920F931F93CF933C +:102D6000DF93CDB7DEB762970FB6F894DEBF0FBE24 +:102D7000CDBF8C0185E0F801DE011D9601900D921A +:102D80008A95E1F7D8014C9111965C9111971296B2 +:102D90006C9112971396CD90DC9014973091B701F7 +:102DA0007091B8018091BA019091BB01009709F42C +:102DB0006BC17F3F19F43F3F09F466C1E090B90150 +:102DC000EE2009F4C0C02091BC01C816D90628F035 +:102DD000F601E81BF90BCF0104C0809590958C0D8E +:102DE0009D1DFF24F394883C910578F0F12C207F01 +:102DF00009F0C6C07C2DD98AC88A89890E9400162C +:102E000087EB91E00E949715B1C0822F807F09F077 +:102E100046C0751314C0341312C0611110C02F7056 +:102E200020612093BC010E94401687EB91E00E9434 +:102E300097158091BC01D80115968C932EC0CD2892 +:102E400019F15F3F11F44F3FF9F0F62E61111CC0EC +:102E5000809185012091860136E0821709F45AC0DD +:102E600090E0389FF001399FF00D1124E957FE4F93 +:102E70007181571306C07081471303C072817111AD +:102E800003C001968770E9CFF62E662309F418C1B6 +:102E90008091BC0181608093BC01F12C11C175133C +:102EA00008C0341306C0611104C08091BC01D80170 +:102EB000C3C04D875E878D859E856A8B0E94D6151F +:102EC0006A898823E1F16623D1F12091BC01822F28 +:102ED00082958F7090E0029774F08091B701909185 +:102EE000B80198878F831986DB86CA862C87CE0126 +:102EF00007960E94971586E0F801A7EBB1E00190D4 +:102F00000D928A95E1F70E944E160E944016FF240A +:102F1000F394D6C04D875E878D859E850E940A1BDF +:102F2000292F22952F7030E0223031050CF0BCC0E3 +:102F30009F7009F0B6C0805E883008F4C1C0C80137 +:102F40000E949715E4CFC816D90608F453C0F601BD +:102F5000E81BF90BCF01883C910508F450C0F12C17 +:102F60007C2DD98AC88A89890E940016E7EBF1E096 +:102F700086E0DF011D928A95E9F70E944016A0C005 +:102F8000751314C0341312C0611110C08091BC01BC +:102F9000F8018583C8010E94971586E0E7EBF1E010 +:102FA000DF011D928A95E9F7FE2C8AC04D875E8766 +:102FB0008D859E856A8B0E94D6156A89882309F4BF +:102FC000BECF662309F4BBCF2091BC01822F82952E +:102FD0008F7090E002970CF48ECF8091B7019091A2 +:102FE000B8019A8389831B82DD82CC822E83CE0135 +:102FF00001967FCF809590958C0D9D1DACCFF62EC0 +:10300000662309F49CCF75132EC034132CC0209175 +:10301000BC0120FD1FC0822F82958F70D9F0D8018E +:1030200015962C9315978F3049F08F5F982F9295B6 +:10303000907F822F8F70892B15968C93C8010E94E8 +:10304000971586E0F801A7EBB1E001900D928A9503 +:10305000E1F793CF86E0F801A7EBB1E001900D9284 +:103060008A95E1F72DC04D875E878D859E850E94EC +:10307000D615811140CF8091BC0181608093BC0145 +:10308000C8010E9497151CC0662309F458CF4D87CC +:103090005E878D859E850E94D615882309F44FCFC3 +:1030A0002ACF811148CF0CC0243031050CF047CF16 +:1030B0009F7009F440CFF8019581907F09F03BCFD4 +:1030C0008F2D62960FB6F894DEBF0FBECDBFDF9195 +:1030D000CF911F910F91FF90EF90DF90CF900895C7 +:1030E0001F93CF93DF93CDB7DEB72C970FB6F8942D +:1030F000DEBF0FBECDBF4F83588769877A878B8726 +:103100009C87CE0107960E94A916882369F08F81BB +:1031100098852A853B85232BF1F19F3F09F063C0F9 +:103120008F3F09F060C037C086E0FE013796DE01B0 +:10313000119601900D928A95E1F76F817885EA8565 +:10314000FB85309741F17F3F11F46F3F21F12091D2 +:10315000860130E0C9010196877099274091850169 +:1031600050E08417950709F447C069837A83FD838B +:10317000EC8396E0929FD001939FB00D1124A95744 +:10318000BE4FFE01319601900D929A95E1F7809322 +:1031900086010E941F1616E080918501909186019C +:1031A0008917C1F1189FC001112489579E4F0E94B1 +:1031B000A916882379F1E09185011E9FF001112461 +:1031C000E957FE4F408151816281738184819581ED +:1031D0000E940F168091850190E0019687709927D3 +:1031E00080938501D9CF4F81588569857A858B85F4 +:1031F0009C850E940F16CFCF0E94D2151092860197 +:1032000010928501E7EBF1E086E0DF011D928A95DF +:10321000E9F7C1CF2C960FB6F894DEBF0FBECDBF35 +:10322000DF91CF911F910895EF92FF920F931F931B +:10323000CF93DF938C01009709F46CC0F12CEE243E +:10324000E394E8012196F8018491843740F48430B6 +:1032500008F051C0813081F0823019F15BC08537B0 +:1032600009F444C0A8F19CE7980F903708F052C0C9 +:103270008F770E941D1341C00E5F1F4FFE01C49146 +:1032800080E28C0F883048F4C7708E2D01C0880F03 +:10329000CA95EAF70E94F01B14C08C2F0E945512A9 +:1032A0002DC00E5F1F4FFE01C49180E28C0F88304D +:1032B00058F4C7708E2D01C0880FCA95EAF70E9496 +:1032C000F61B0E94171C1AC08C2F0E941D1316C0DB +:1032D0000E5F1F4FFE01C491CC2381F08FE99FE068 +:1032E0000197F1F700C00000C150F6CF0E5F1F4FED +:1032F000FE01F49003C00E9455128E018F2D882389 +:1033000009F49FCFEFE9FFE03197F1F700C000002B +:103310008150F5CFDF91CF911F910F91FF90EF90EA +:10332000089508956093C1017093C2018093C30111 +:103330009093C4010C94BE150F931F930091C1018B +:103340001091C2012091C3013091C401DC01CB0175 +:10335000802B912BA22BB32B8093C1019093C201A0 +:10336000A093C301B093C4011F910F910C94BE159B +:103370000F931F930091C1011091C2012091C301CD +:103380003091C401DC01CB0180239123A223B3231C +:103390008093C1019093C201A093C301B093C40173 +:1033A0001F910F910C94BE150F931F930091C101B3 +:1033B0001091C2012091C3013091C401DC01CB0105 +:1033C00080279127A227B3278093C1019093C20140 +:1033D000A093C301B093C4011F910F910C94BE152B +:1033E0001092BD011092BE011092BF011092C00157 +:1033F0000C94BE1541E050E060E070E004C0440F62 +:10340000551F661F771F8A95D2F74093BD015093D1 +:10341000BE016093BF017093C0010C94BE1541E0E2 +:1034200050E060E070E004C0440F551F661F771F36 +:103430008A95D2F78091BD019091BE01A091BF0104 +:10344000B091C001482B592B6A2B7B2B4093BD01B7 +:103450005093BE016093BF017093C0010C94BE15E0 +:1034600041E050E060E070E004C0440F551F661F6B +:10347000771F8A95D2F74095509560957095809109 +:10348000BD019091BE01A091BF01B091C001482340 +:1034900059236A237B234093BD015093BE0160935F +:1034A000BF017093C0010C94BE1541E050E060E094 +:1034B00070E004C0440F551F661F771F8A95D2F72E +:1034C0008091BD019091BE01A091BF01B091C0015A +:1034D000482759276A277B274093BD015093BE0197 +:1034E0006093BF017093C0010C94BE150F931F939E +:1034F0000091BD011091BE012091BF013091C0012A +:10350000DC01CB01802B912BA22BB32B8093BD012F +:103510009093BE01A093BF01B093C0011F910F9182 +:103520000C94BE150F931F930091BD011091BE0125 +:103530002091BF013091C001DC01CB018023912398 +:10354000A223B3238093BD019093BE01A093BF013A +:10355000B093C0011F910F910C94BE150F931F9350 +:103560000091BD011091BE012091BF013091C001B9 +:10357000DC01CB0180279127A227B3278093BD01CF +:103580009093BE01A093BF01B093C0011F910F9112 +:103590000C94BE150895CF92DF92EF92FF920F9395 +:1035A0001F93CF93DF938C01C090C101D090C201D3 +:1035B000E090C301F090C4018091BD019091BE01E3 +:1035C000A091BF01B091C001C82AD92AEA2AFB2ADA +:1035D000CFE1D0E0D701C6010C2E04C0B695A79567 +:1035E000979587950A94D2F780FF06C0B8018C2F73 +:1035F0000E949709019721F4219760F780E001C0AC +:103600008C2FDF91CF911F910F91FF90EF90DF9062 +:10361000CF900895CF93DF93EC010E94CB1ABE01A7 +:103620000E949709DF91CF910895CB010E940A1B58 +:1036300008958091C501859585958595089580911A +:10364000C5018770089598E0899F90011124262B69 +:103650002093C5010C940F1A2091C50180958223F7 +:103660008093C501982F977069F430E0482F552753 +:1036700047FD50952417350729F085958595859543 +:103680000C94301A08959091C501977081E009F467 +:1036900080E0089590910C01992321F090910D0103 +:1036A000911109C020910E0130910F01F90132965C +:1036B0009FEF40E01FC0982F9695969596959F3066 +:1036C00050F5E0910E01F0910F01E90FF11D8770A7 +:1036D00021E030E0A90102C0440F551F8A95E2F7AE +:1036E000CA019181892B818308959F3F39F04F5FF3 +:1036F0004E3041F051915813F8CF0DC05111F7CF12 +:10370000942FF5CF9F3F39F0F901E90FF11D97FD97 +:10371000FA9582830895089590910C01992321F0E0 +:1037200090910D01911109C020910E0130910F016E +:10373000F9013296205F3F4F1FC0982F96959695BE +:1037400096959F30F0F4E0910E01F0910F01E90F92 +:10375000F11D877021E030E0A90102C0440F551F20 +:103760008A95E2F7CA018095918189238183089522 +:103770003196E217F30729F090819813F9CF108260 +:10378000F7CF089581E090E0E0910E01F0910F01F4 +:10379000E80FF91F1082019680319105A9F708956D +:1037A0009091D901892B8093D901089580959091AA +:1037B000D90189238093D90108951092D9010895E0 +:1037C0009091D801892B8093D8010895809590918C +:1037D000D80189238093D80108951092D8010895C3 +:1037E0009091D701892B8093D7010895809590916E +:1037F000D70189238093D70108951092D7010895A6 +:103800008093C60108951092C601089580910E011B +:1038100090910F01FC0131969C01205F3F4F80E0A9 +:10382000919191118F5FE217F307D1F70895E0911D +:103830000E01F0910F018091D9018083E0910E017A +:10384000F0910F0190818091D801892B8083E091C4 +:103850000E01F0910F0190818091D701892B808317 +:103860008091C601882361F0E0910E01F0910F0173 +:103870009081892B80830E94061C81111092C601C1 +:1038800080910E0190910F010C94451120E000975A +:1038900039F0AC0141505109842395232F5FF7CFB4 +:1038A000822F08958091F101843021F11092DB0183 +:1038B00020E488E190E00FB6F894A895809360002A +:1038C0000FBE2093600080E00E94320A83B7817FA0 +:1038D000846083BF83B7816083BF7894889583B702 +:1038E0008E7F83BF88E10FB6F894809360001092BA +:1038F00060000FBE0895089508950E947B1C0E94E9 +:10390000A4040E947C1C0E94990591E0811101C0D1 +:1039100090E0892F08950E94D2150E9439110C94CD +:10392000320A82E084BD93E095BD9AEF97BD809303 +:103930006E0008952FB7F8948091DC019091DD011D +:10394000A091DE01B091DF012FBF0895CF92DF92E9 +:10395000EF92FF920F931F932FB7F8944091DC01E1 +:103960005091DD016091DE017091DF012FBF6A018E +:103970007B01EE24FF248C0120E030E0C016D1064C +:10398000E206F30610F4415051099A01281B390B45 +:10399000C9011F910F91FF90EF90DF90CF90089594 +:1039A0001F920F920FB60F9211248F939F93AF9394 +:1039B000BF938091DC019091DD01A091DE01B09177 +:1039C000DF010196A11DB11D8093DC019093DD0103 +:1039D000A093DE01B093DF01BF91AF919F918F91D2 +:1039E0000F900FBE0F901F9018950E94360EF894FE +:1039F0002FEF87EA91E6215080409040E1F700C028 +:103A0000000087E090EBDC018093FB019093FC01C8 +:103A1000A093FD01B093FE019CE088E10FB6F894FD +:103A2000A895809360000FBE90936000FFCFEF9247 +:103A3000FF920F931F93CF93DF93D82FCDE08C2F5E +:103A40000E94920505E010E0E82EF12CC701002E3F +:103A500002C0959587950A94E2F780FF09C0602F10 +:103A60007C2F80E00E944207D81302C081E006C08C +:103A70000150110958F7C15010F780E0DF91CF9144 +:103A80001F910F91FF90EF900895CF93C82F8CE274 +:103A90000E94171D882321F08C2FCF910C94171DA5 +:103AA00080E0CF910895CF930E949A1E811102C0A9 +:103AB0000E94801EC5E6C15049F00E94A4048FE315 +:103AC0009CE90197F1F700C00000F5CF89E20E9460 +:103AD000451D811113C18AE20E94451D81110E947A +:103AE000801E85E00E94451D81110E94F51C0E94E8 +:103AF000A51E8093DA0187E00E94451D8823A9F165 +:103B00008BE10E94451D882351F08091DA0181FBF1 +:103B1000222720F991E0922790FB81F90EC08EE0D8 +:103B20000E94451D882361F08091DA0182FB2227E3 +:103B300020F991E0922790FB82F98093DA0115C079 +:103B400080E10E94451D9091DA01882341F093FBAA +:103B5000222720F981E0822780FB93F904C0892F76 +:103B6000809580FB90F99093DA018091DA010E94B0 +:103B7000A91E0E94B71E8093FA0180EE0E94451D87 +:103B8000882341F08091FA01982F909590FB80F95D +:103B90008093FA0189E30E94451D882359F08091A2 +:103BA000FA0181FB222720F991E0922790FB81F90D +:103BB0008093FA0182EE0E94451D882359F080917E +:103BC000FA0182FB222720F991E0922790FB82F9EB +:103BD0008093FA0186EE0E94451D882359F080915A +:103BE000FA0183FB222720F991E0922790FB83F9C9 +:103BF0008093FA0183EE0E94451D882359F080913D +:103C0000FA0184FB222720F991E0922790FB84F9A6 +:103C10008093FA0185E30E94451D882359F0809125 +:103C2000FA0185FB222720F991E0922790FB85F984 +:103C30008093FA0181E30E94451D882359F0809109 +:103C4000FA0186FB222720F991E0922790FB86F962 +:103C50008093FA0181E10E94451D882359F08091EB +:103C6000FA0187FB222720F991E0922790FB87F940 +:103C70008093FA018091FA010E94BB1E8091FA01A3 +:103C800087FB882780F980930D0187E20E94451DFC +:103C9000C82F8EE10E94451D8111C2608FE10E94F4 +:103CA000451D8111C46080E20E94451D8111C860DC +:103CB00081E20E94451D8111C06182E20E94451D82 +:103CC0008111C06283E20E94451D8111C06484E2BB +:103CD0000E94451D882311F0C06802C0CC2329F042 +:103CE0008C2F0E94B21E6C2F03C00E94AE1E682F44 +:103CF00070E080E090E0CF910C949219CF910895FC +:103D00006DEE7EEF80E090E00E94EC2460E082E0C7 +:103D100090E00E94DA2460E083E090E00E94DA24E0 +:103D200060E084E090E00E94DA2460E085E090E0CA +:103D30000C94DA2480E090E00E94D42421E08D3EAF +:103D40009E4F09F020E0822F089582E090E00C94CD +:103D5000CC24682F82E090E00C94DA2483E090E099 +:103D60000C94CC24682F83E090E00C94DA2484E057 +:103D700090E00C94CC24682F84E090E00C94DA243A +:103D80008091E20180FF0BC06091130185E0689F84 +:103D9000B001112475956795759567952BC081FFC6 +:103DA00009C06091130185E0689FB00111247595E9 +:103DB000679520C082FF07C06091130185E0689F6E +:103DC000B001112417C09091E3019923D1F06091C3 +:103DD0001201961788F72091130185E0289F900122 +:103DE0001124929FA001939F500D112470E0CA01ED +:103DF0000E949E246038710540F46115710539F008 +:103E000002C065E070E0862F08958FE7089581E095 +:103E100008958091E20180FF08C06091110170E077 +:103E2000759567957595679521C081FF06C060916E +:103E3000110170E07595679519C082FF04C060910B +:103E4000110170E010C09091E3019923C1F06091DD +:103E500010019617A0F780911101899FC0011124CC +:103E600070E00E949E246038710528F46115710588 +:103E700021F0862F08958FE7089581E0089561E08D +:103E800070E0F4CF803F21F40E94C01E819504C0F1 +:103E9000813F29F40E94C01E8093E6010895823F6D +:103EA00021F40E94C01E819504C0833F29F40E9422 +:103EB000C01E8093E5010895893F19F40E94091FEF +:103EC00005C08A3F31F40E94091F81958093E70164 +:103ED00008958B3F21F40E94091F819504C08C3FF7 +:103EE00029F40E94091F8093E8010895843F21F47A +:103EF0008091E401816017C0853F21F48091E40145 +:103F0000826011C0863F21F48091E40184600BC07F +:103F1000873F21F48091E401886005C0883F31F437 +:103F20008091E40180618093E40108958D3F21F444 +:103F30008091E20181600BC08E3F21F48091E2010B +:103F4000826005C08F3F29F48091E20184608093F4 +:103F5000E2010895803F39F48091E60187FF6CC04B +:103F60001092E60169C0813F29F48091E60118169C +:103F7000BCF362C09091E501823F29F497FF5CC0D9 +:103F80001092E50159C0833F19F41916CCF354C0BF +:103F9000893F41F48091E70118160CF04DC0109252 +:103FA000E7014AC08A3F29F48091E70187FF44C0B6 +:103FB000F6CF8B3F39F48091E80187FF3DC0109226 +:103FC000E8013AC08C3F29F48091E8011816BCF34F +:103FD00033C0843F21F48091E4018E7F17C0853F78 +:103FE00021F48091E4018D7F11C0863F21F48091FE +:103FF000E4018B7F0BC0873F21F48091E401877F30 +:1040000005C0883F31F48091E4018F7E8093E40104 +:1040100013C08D3F21F48091E2018E7F0BC08E3F53 +:1040200021F48091E2018D7F05C08F3F29F48091BA +:10403000E2018B7F8093E2018091E50181110EC046 +:104040008091E60181110AC08091E701811106C0CB +:104050008091E801811102C01092E301089584EE7D +:1040600091E00E9450110E949A1C9093E10180936C +:10407000E00108951F93CF93DF938091E001909129 +:10408000E1010E94A61CAC019091E301992321F06B +:104090002091140130E006C0209115018AE0289F8C +:1040A000900111244217530708F486C08091E5015E +:1040B000C091E601D091E7011091E801811107C09C +:1040C000C11176C0D11174C0111172C075C09F3F6B +:1040D00019F09F5F9093E301181624F40E94C01E0C +:1040E0008093E5018091E50187FF05C00E94C01E15 +:1040F00081958093E5011C1624F40E94C01E8093D4 +:10410000E6018091E60187FF05C00E94C01E8195EF +:104110008093E6016091E501662339F1C091E601E3 +:10412000CC2319F1772767FD7095872F972F0E9471 +:10413000AF2323E333E343E35FE30E9413240E94AE +:104140007C236093E5016C2F772767FD7095872F9F +:10415000972F0E94AF2323E333E343E35FE30E94FF +:1041600013240E947C236093E6011D1624F40E9410 +:10417000091F8093E7018091E70187FF05C00E9436 +:10418000091F81958093E701111624F40E94091FED +:104190008093E8018091E80187FF05C00E94091F14 +:1041A00081958093E801DF91CF911F910C942F208E +:1041B0009F3F09F08ECF96CFDF91CF911F91089549 +:1041C000E4EEF1E085E0DF011D928A95E9F71092B7 +:1041D000E3011092E2010895833081F128F48130E7 +:1041E00059F08230D1F00895853009F449C0B8F112 +:1041F000863009F456C0089580911501262F30E0CD +:10420000280F311D2F3F310524F4680F60931501ED +:1042100008958FEF80931501089580911401262F42 +:1042200030E0280F311D2F3F310524F4680F6093D3 +:10423000140108958FEF8093140108958091130164 +:10424000262F30E0280F311D2F3F310524F4680F51 +:104250006093130108958FEF809313010895809167 +:104260001201262F30E0280F311D2F3F310524F495 +:10427000680F6093120108958FEF809312010895E3 +:1042800080911101262F30E0280F311D2F3F31057D +:1042900024F4680F6093110108958FEF809311014A +:1042A000089580911001262F30E0280F311D2F3FF7 +:1042B000310524F4680F6093100108958FEF809307 +:1042C00010010895833011F128F4813049F08230D3 +:1042D00091F00895853081F120F18630C1F1089583 +:1042E00080911501681720F4861B809315010895AD +:1042F00010921501089580911401681720F4861B0F +:10430000809314010895109214010895809113016F +:10431000681720F4861B80931301089510921301EF +:10432000089580911201681720F4861B8093120172 +:10433000089510921201089580911101681720F4D8 +:10434000861B8093110108951092110108958091A8 +:104350001001681720F4861B8093100108951092B5 +:10436000100108950F931F938D3109F46BC008F06D +:104370003FC08E3009F47FC0C0F4873009F469C0B3 +:1043800068F4863009F0B1C08091DA01817F8E7FB8 +:104390008093DA0181E08093EA01A8C0883009F4B3 +:1043A000A2C08B3009F49FC0A0C0863109F49BC025 +:1043B00078F4803109F472C0813109F096C00E940E +:1043C000D21590910D0181E0892780930D018BC05A +:1043D000893109F488C08B3109F087C08091DA01F6 +:1043E00081FB222720F991E0922790FB81F94CC0B4 +:1043F000853309F470C048F4873209F46CC008F4BE +:1044000059C0893209F467C070C0833438F48A33E4 +:1044100008F04EC0883309F466C067C0833409F4DD +:104420005AC0883409F061C00E94D2150FEF13ED15 +:1044300020E3015010402040E1F700C000000E943E +:10444000F51C51C00E9436230E9439110E94320A85 +:104450004AC09091DA01892F8095817080FB90F994 +:1044600029F0966098609093DA0140C0997F977F19 +:104470009093DA0138C08091DA0182FB222720F97B +:1044800091E0922790FB82F98093DA01992359F108 +:104490008091DA0181608093DA0125C08091DA0190 +:1044A00083FB222720F991E0922790FB83F9ECCF40 +:1044B000895301C08D5141E050E060E070E08A0115 +:1044C0009B0104C0000F111F221F331F8A95D2F7D2 +:1044D000C901B80104C061E070E080E090E00E9492 +:1044E00092190E94D21581E001C080E01F910F91C6 +:1044F000089580E0089580E00895CF93C82F8091BB +:10450000EA01813079F018F08230E9F187C0E0915A +:104510000E01F0910F018081813169F0823209F042 +:104520007FC009C0E0910E01F0910F0180818131BF +:1045300011F0823261F48C2F0E947922811104C023 +:104540008C2F0E94B2211DC081E090E01AC08C2FF8 +:104550000E947B22811114C0C43179F048F4CB3021 +:1045600079F0C03109F060C082E08093EA0108C0B0 +:10457000C93219F0C83321F057C01092EA0154C073 +:1045800081E0817053C0C93289F118F5C43171F1ED +:10459000A8F4C73009F046C08AE08093150194E181 +:1045A0009093140193E0909313018093120188E09B +:1045B0008093110188E28093100134C0CE51C6303F +:1045C00088F5EC2FF0E0E65DFE4F80818093E901F5 +:1045D00029C0CE34E9F020F4CB3421F56AE013C0D1 +:1045E000C13579F0C235F1F461E00DC08091E90187 +:1045F000882319F01092E90115C081E08093EA0147 +:1046000015C061E006C08091E9010E94EC200AC05B +:104610006AE08091E9010E94622104C01092EA01DF +:1046200080E004C081E002C080E0ABCFCF9108956C +:10463000E1E8F0E080818860808380818160808310 +:104640008FB7F89493E09093890090ED9093880051 +:104650008FBF0895EFE6F0E0808182608083089547 +:10466000EFE6F0E080818D7F80830895EFE6F0E053 +:10467000908182E08927808308951F920F920FB660 +:104680000F9211242F933F934F935F936F937F93D8 +:104690008F939F93AF93BF93EF93FF938091EB0121 +:1046A0009091EC0101969093EC018093EB018111C4 +:1046B00003C082E00E94320AE091EC01E695E695A3 +:1046C000F0E0EB59F84FE4918091EB018E1303C0B9 +:1046D00080E00E94320AFF91EF91BF91AF919F91CC +:1046E0008F917F916F915F914F913F912F910F909B +:1046F0000FBE0F901F90189504D06894B1118DC013 +:10470000089570D088F09F5790F0B92F9927B7512E +:10471000A0F0D1F0660F771F881F991F1AF0BA9585 +:10472000C9F712C0B13081F077D0B1E0089574C0FC +:10473000672F782F8827B85F39F0B93FCCF386957B +:1047400077956795B395D9F73EF4909580957095D8 +:1047500061957F4F8F4F9F4F0895E89409C097FB55 +:104760003EF490958095709561957F4F8F4F9F4F48 +:104770009923A9F0F92F96E9BB279395F69587958C +:1047800077956795B795F111F8CFFAF4BB0F11F44F +:1047900060FF1BC06F5F7F4F8F4F9F4F16C08823F6 +:1047A00011F096E911C0772321F09EE8872F762F2C +:1047B00005C0662371F096E8862F70E060E02AF06D +:1047C0009A95660F771F881FDAF7880F9695879559 +:1047D00097F9089557FD9058440F551F59F05F3FC2 +:1047E00071F04795880F97FB991F61F09F3F79F013 +:1047F00087950895121613061406551FF2CF469595 +:10480000F1DF08C0161617061806991FF1CF869516 +:104810007105610508940895E894BB2766277727FA +:10482000CB0197F908950BD078C069D028F06ED0ED +:1048300018F0952309F05AC05FC01124EECFCADFEB +:10484000A0F3959FD1F3950F50E0551F629FF001A3 +:10485000729FBB27F00DB11D639FAA27F00DB11DFC +:10486000AA1F649F6627B00DA11D661F829F222785 +:10487000B00DA11D621F739FB00DA11D621F839F0C +:10488000A00D611D221F749F3327A00D611D231FE2 +:10489000849F600D211D822F762F6A2F11249F5730 +:1048A00050408AF0E1F088234AF0EE0FFF1FBB1F53 +:1048B000661F771F881F91505040A9F79E3F5105F2 +:1048C00070F014C0AACF5F3FECF3983EDCF38695FE +:1048D00077956795B795F795E7959F5FC1F7FE2B9D +:1048E000880F911D9695879597F9089597F99F6779 +:1048F00080E870E060E008959FEF80EC0895002468 +:104900000A941616170618060906089500240A9434 +:1049100012161306140605060895092E0394000CBA +:1049200011F4882352F0BB0F40F4BF2B11F460FF49 +:1049300004C06F5F7F4F8F4F9F4F089597FB072EE7 +:1049400016F4009407D077FD09D00E94B82407FC24 +:1049500005D03EF4909581959F4F0895709561958F +:104960007F4F0895EE0FFF1F0590F491E02D0994FD +:10497000AA1BBB1B51E107C0AA1FBB1FA617B70785 +:1049800010F0A61BB70B881F991F5A95A9F78095A1 +:104990009095BC01CD010895F999FECF92BD81BDDE +:1049A000F89A992780B50895A8E1B0E042E050E078 +:1049B0000C94F424262FF999FECF92BD81BDF89A6C +:1049C000019700B4021639F01FBA20BD0FB6F89453 +:1049D000FA9AF99A0FBE08950196272F0E94DB24B8 +:1049E0000C94DA24DC01CB01FC01F999FECF06C05E +:1049F000F2BDE1BDF89A319600B40D92415050409D +:084A0000B8F70895F894FFCF08 +:104A08000220340AC20A9F0A6B0A370A0101C70149 +:104A180028080A03140A404D36392507D806A20685 +:104A28006906FC0515062E0647060102030405065D +:044A38000708090062 +:00000001FF diff --git a/keyboards/ergodox_ez/keymaps/bepo/keymap.c b/keyboards/ergodox_ez/keymaps/bepo/keymap.c new file mode 100644 index 0000000000..921a94d63a --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/bepo/keymap.c @@ -0,0 +1,311 @@ +#include "ergodox_ez.h" +#include "debug.h" +#include "action_layer.h" +#include "keymap_bepo.h" + +#define BASE 0 // default layer +#define QWER 1 // qwerty compat layer +#define SQWER 2 // shifted qwerty compat layer +#define AQWER 3 // alted qwerty compat layer +#define FNAV 4 // function / navigation keys +#define NUM 5 // numeric keypad keys +#define MSE 6 // mouse keys + +#define KP_00 0 +#define CA_Fx 1 + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* Keymap 0: Base layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | $ | " | < | > | ( | ) |Delete| |ScroLo| @ | + | - | / | * | = | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | % | B |E_ACUT| P | O |E_GRAV|Backsp| |CapsLo| ^ | V | D | L | J | Z | + * |--------+------+------+------+------+------| ace | | |------+------+------+------+------+--------| + * | W | A | U | I | E | , |------| |------| C | T | S | R | N | M | + * |--------+------+------+------+------+------| Tab | | NumLo|------+------+------+------+------+--------| + * | E_CIRC |A_GRAV| Y | X | . | K | | | | ' | Q | G | H | F | C_CEDIL| + * `--------+------+------+------+------+-------------,-------------. ,-------------`-------------+------+------+------+------+--------' + * |QWERTY| |LSuper| LCtrl| LAlt| |Escape| L_Mse| | |Insert| | AltGr| RCtrl|RSuper|PrntSc| Pause| + * `----------------------------------' ,------|------|------| |------+------+------. `----------------------------------' + * | | | L_Num| | CA_Fx| | | + * | Space|LShift|------| |------|RShift|Enter | + * | | |L_FNav| |L_FNav| | | + * `--------------------' `--------------------' + */ +[BASE] = KEYMAP( +// Left hand +BP_DOLLAR, BP_DQOT, BP_LGIL, BP_RGIL, BP_LPRN, BP_RPRN, KC_DEL, +BP_PERCENT, BP_B, BP_E_ACUTE, BP_P, BP_O, BP_E_GRAVE, KC_BSPC, +BP_W, BP_A, BP_U, BP_I, BP_E, BP_COMMA, +BP_ECRC, BP_A_GRAVE, BP_Y, BP_X, BP_DOT, BP_K, KC_TAB, +TG(QWER), KC_NO, KC_LGUI, KC_LCTL, KC_LALT, + KC_ESC, MO(MSE), + MO(NUM), + KC_SPC, KC_LSHIFT, MO(FNAV), +// Right hand + KC_SLCK, BP_AT, BP_PLUS, BP_MINUS, BP_SLASH, BP_ASTR, BP_EQUAL, + KC_CAPSLOCK, BP_DCRC, BP_V, BP_D, BP_L, BP_J, BP_Z, + BP_C, BP_T, BP_S, BP_R, BP_N, BP_M, + KC_NUMLOCK, BP_APOS, BP_Q, BP_G, BP_H, BP_F, BP_CCED, + BP_ALGR, KC_RCTL, KC_RGUI, KC_PSCREEN, KC_PAUSE, +KC_NO, KC_INS, +M(CA_Fx), +MO(FNAV), KC_RSHIFT, KC_ENTER), +/* Keymap 1: QWERTY system compatibility layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | $ | " | < | > | ( | ) |Delete| |ScroLo| @ | + | - | / | * | = | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | % | b | e | p | o | e |Backsp| |CapsLo| ^ | v | d | l | j | z | + * |--------+------+------+------+------+------| ace | | |------+------+------+------+------+--------| + * | w | a | u | i | e | , |------| |------| c | t | s | r | n | m | + * |--------+------+------+------+------+------| Tab | | NumLo|------+------+------+------+------+--------| + * | e | a | y | x | . | k | | | | ' | q | g | h | f | c | + * `--------+------+------+------+------+-------------,-------------. ,-------------`-------------+------+------+------+------+--------' + * | BEPO | |LSuper| LCtrl| LAlt| |Escape| L_Mse| | |Insert| | AltGr| RCtrl|RSuper|PrntSc| Pause| + * `----------------------------------' ,------|------|------| |------+------+------. `----------------------------------' + * | | | L_Num| | | | | + * | Space|LShift|------| |------|RShift|Enter | + * | | |L_FNav| |L_FNav| | | + * `--------------------' `--------------------' + */ +[QWER] = KEYMAP( +// Left hand +KC_DOLLAR, S(KC_QUOT), S(KC_COMM), S(KC_DOT), KC_LPRN, KC_RPRN, KC_DEL, +KC_PERCENT, KC_B, KC_E, KC_P, KC_O, KC_E, KC_BSPC, +KC_W, KC_A, KC_U, KC_I, KC_E, KC_COMMA, +KC_E, KC_A, KC_Y, KC_X, KC_DOT, KC_K, KC_TAB, +KC_TRNS, KC_NO, KC_LGUI, KC_LCTL, KC_LALT, + KC_ESC, MO(MSE), + MO(NUM), + KC_SPC, MO(SQWER), MO(FNAV), +// Right hand + KC_SLCK, KC_AT, KC_PLUS, KC_MINUS, KC_SLASH, KC_ASTR, KC_EQUAL, + KC_CAPSLOCK, KC_CIRC, KC_V, KC_D, KC_L, KC_J, KC_Z, + KC_C, KC_T, KC_S, KC_R, KC_N, KC_M, + KC_NUMLOCK, KC_QUOT, KC_Q, KC_G, KC_H, KC_F, KC_C, + MO(AQWER), KC_RCTL, KC_RGUI, KC_PSCREEN, KC_PAUSE, +KC_NO, KC_INS, +KC_TRNS, +MO(FNAV), MO(SQWER), KC_ENTER), +/* Keymap 2: QWERTY shifted system compatibility layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | # | 1 | 2 | 3 | 4 | 5 |Delete| |ScroLo| 6 | 7 | 8 | 9 | 0 | = | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | ` | B | E | P | O | E |Backsp| |CapsLo| ! | V | D | L | J | Z | + * |--------+------+------+------+------+------| ace | | |------+------+------+------+------+--------| + * | W | A | U | I | E | ; |------| |------| C | T | S | R | N | M | + * |--------+------+------+------+------+------| Tab | | NumLo|------+------+------+------+------+--------| + * | E | A | Y | X | : | K | | | | ? | Q | G | H | F | C | + * `--------+------+------+------+------+-------------,-------------. ,-------------`-------------+------+------+------+------+--------' + * | BEPO | |LSuper| LCtrl| LAlt| |Escape| L_Mse| | |Insert| | AltGr| RCtrl|RSuper|PrntSc| Pause| + * `----------------------------------' ,------|------|------| |------+------+------. `----------------------------------' + * | | | L_Num| | | | | + * | Space|LShift|------| |------|RShift|Enter | + * | | |L_FNav| |L_FNav| | | + * `--------------------' `--------------------' + */ +[SQWER] = KEYMAP( +// Left hand +KC_HASH, KC_1, KC_2, KC_3, KC_4, KC_5, KC_TRNS, +KC_GRV, S(KC_B), S(KC_E), S(KC_P), S(KC_O), S(KC_E), KC_TRNS, +S(KC_W), S(KC_A), S(KC_U), S(KC_I), S(KC_E), KC_SCOLON, +S(KC_E), S(KC_A), S(KC_Y), S(KC_X), KC_COLON, S(KC_K), S(KC_TAB), +KC_TRNS, KC_TRNS, S(KC_LGUI), S(KC_LCTL), S(KC_LALT), + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, +// Right hand + KC_TRNS, KC_6, KC_7, KC_8, KC_9, KC_0, KC_TRNS, + KC_TRNS, KC_EXLM, S(KC_V), S(KC_D), S(KC_L), S(KC_J), S(KC_Z), + S(KC_C), S(KC_T), S(KC_S), S(KC_R), S(KC_N), S(KC_M), + KC_TRNS, S(KC_SLASH), S(KC_Q), S(KC_G), S(KC_H), S(KC_F), S(KC_C), + S(KC_RALT), S(KC_RCTL), S(KC_RGUI), KC_TRNS, KC_TRNS, +KC_TRNS, KC_TRNS, +KC_TRNS, +KC_TRNS, KC_TRNS, KC_TRNS), +/* Keymap 3: QWERTY alted system compatibility layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | $ | " | < | > | [ | ] |Delete| |ScroLo| @ | + | - | / | * | = | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | % | | | e | & | o | e |Backsp| |CapsLo| ^ | v | d | l | j | z | + * |--------+------+------+------+------+------| ace | | |------+------+------+------+------+--------| + * | w | a | u | i | € | , |------| |------| c | t | s | r | n | m | + * |--------+------+------+------+------+------| Tab | | NumLo|------+------+------+------+------+--------| + * | e | \ | { | } | . | ~ | | | | ' | q | g | h | f | c | + * `--------+------+------+------+------+-------------,-------------. ,-------------`-------------+------+------+------+------+--------' + * | BEPO | |LSuper| LCtrl| LAlt| |Escape| L_Mse| | |Insert| | AltGr| RCtrl|RSuper|PrntSc| Pause| + * `----------------------------------' ,------|------|------| |------+------+------. `----------------------------------' + * | | | L_Num| | | | | + * | _ |LShift|------| |------|RShift|Enter | + * | | |L_FNav| |L_FNav| | | + * `--------------------' `--------------------' + */ +[AQWER] = KEYMAP( +// Left hand +KC_DOLLAR, S(KC_QUOT), S(KC_COMM), S(KC_DOT), KC_LBRC, KC_RBRC, KC_DEL, +KC_PERCENT, KC_PIPE, KC_E, KC_AMPR, KC_O, KC_E, KC_BSPC, +KC_W, KC_A, KC_U, KC_I, RALT(KC_5), KC_COMMA, +KC_E, KC_BSLASH, KC_LCBR, KC_RCBR, KC_DOT, KC_TILDE, KC_TAB, +KC_TRNS, KC_NO, KC_LGUI, KC_LCTL, KC_LALT, + KC_ESC, MO(MSE), + MO(NUM), + KC_UNDS, MO(SQWER), MO(FNAV), +// Right hand + KC_SLCK, KC_AT, KC_PLUS, KC_MINUS, KC_SLASH, KC_ASTR, KC_EQUAL, + KC_CAPSLOCK, KC_CIRC, KC_V, KC_D, KC_L, KC_J, KC_Z, + KC_C, KC_T, KC_S, KC_R, KC_N, KC_M, + KC_NUMLOCK, KC_QUOT, KC_Q, KC_G, KC_H, KC_F, KC_C, + KC_TRNS, KC_RCTL, KC_RGUI, KC_PSCREEN, KC_PAUSE, +KC_NO, KC_INS, +KC_TRNS, +MO(FNAV), MO(SQWER), KC_ENTER), +/* Keymap 4: function / navigation layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 |VolMut| | | F6 | F7 | F8 | F9 | F10 | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | | | |VolDwn| | | PgUp | Home | Up | End | F11 | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | |------| |------| PgDn | Left | Down | Right| F12 | | + * |--------+------+------+------+------+------| VolUp| | |------+------+------+------+------+--------| + * | | Undo | Cut | Copy | Paste| | | | | | | | | | | + * `--------+------+------+------+------+-------------,-------------. ,-------------`-------------+------+------+------+------+--------' + * | | | | | | | | | | | | | | | | | | + * `----------------------------------' ,------|------|------| |------+------+------. `----------------------------------' + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +[FNAV] = KEYMAP( +// Left hand +KC_NO, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_MUTE, +KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_VOLU, +KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, +KC_NO, KC_UNDO, KC_CUT, KC_COPY, KC_PASTE, KC_NO, KC_VOLD, +KC_NO, KC_NO, KC_TRNS, KC_TRNS, KC_TRNS, + KC_NO, KC_NO, + KC_NO, + KC_NO, KC_TRNS, KC_TRNS, +// Right hand + KC_NO, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_NO, + KC_NO, KC_PGUP, KC_HOME, KC_UP, KC_END, KC_F11, KC_NO, + KC_PGDOWN, KC_LEFT, KC_DOWN, KC_RIGHT, KC_F12, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, KC_NO, +KC_NO, KC_NO, +KC_TRNS, +KC_TRNS, KC_TRNS, KC_NO), +/* Keymap 5: numeric layer, sends keypad codes + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | + | - | / | * | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | | | | | | | | 7 | 8 | 9 | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | |------| |------| | 4 | 5 | 6 | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | 1 | 2 | 3 | | | + * `--------+------+------+------+------+-------------,-------------. ,-------------`-------------+------+------+------+------+--------' + * | | | | | | | | | | | | | 0 | 00 | . | | | + * `----------------------------------' ,------|------|------| |------+------+------. `----------------------------------' + * | | | | | | | | + * | | |------| |------| | Enter| + * | | | | | | | | + * `--------------------' `--------------------' + */ +[NUM] = KEYMAP( +// Left 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_TRNS, KC_TRNS, KC_TRNS, + KC_NO, KC_NO, + KC_TRNS, + KC_NO, KC_TRNS, KC_NO, +// Right hand + KC_NO, KC_NO, KC_KP_PLUS, KC_KP_MINUS, KC_KP_SLASH, KC_KP_ASTERISK, KC_NO, + KC_NO, KC_NO, KC_KP_7, KC_KP_8, KC_KP_9, KC_NO, KC_NO, + KC_NO, KC_KP_4, KC_KP_5, KC_KP_6, KC_NO, KC_NO, + KC_NO, KC_NO, KC_KP_1, KC_KP_2, KC_KP_3, KC_NO, KC_NO, + KC_KP_0, M(KP_00), KC_KP_COMMA, KC_NO, KC_NO, +KC_NO, KC_NO, +KC_NO, +KC_NO, KC_TRNS, KC_KP_ENTER), +/* Keymap 6: mouse layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | | | | | | | |LClick| Up |RClick| WhUp | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | |------| |------| | Left | Down | Right|WhDown| | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | | | | | | + * `--------+------+------+------+------+-------------,-------------. ,-------------`-------------+------+------+------+------+--------' + * | | | | | | | | | | | | | | | | | | + * `----------------------------------' ,------|------|------| |------+------+------. `----------------------------------' + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +[MSE] = KEYMAP( +// Left 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_TRNS, KC_TRNS, KC_TRNS, + KC_NO, KC_TRNS, + KC_NO, + KC_NO, KC_TRNS, KC_NO, +// Right hand + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_MS_BTN1, KC_MS_UP, KC_MS_BTN2, KC_MS_WH_UP, KC_NO, + KC_NO, KC_MS_LEFT, KC_MS_DOWN, KC_MS_RIGHT, KC_MS_WH_DOWN, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, KC_NO, +KC_NO, KC_NO, +KC_NO, +KC_NO, KC_TRNS, KC_NO) +}; + +const uint16_t PROGMEM fn_actions[] = { +}; + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + switch(id) { + case KP_00: + if (record->event.pressed) { + return MACRO( T(KP_0), D(KP_0), END ); + } else { + return MACRO( U(KP_0), END ); + } + break; + case CA_Fx: + if (record->event.pressed) { + layer_on(FNAV); + return MACRO( D(LALT), D(LCTL), END ); + } else { + layer_off(FNAV); + return MACRO( U(LCTL), U(LALT), END ); + } + break; + } + return MACRO_NONE; +}; + +// Runs just one time when the keyboard initializes. +void matrix_init_user(void) { +}; + +// Runs constantly in the background, in a loop. +void matrix_scan_user(void) { +}; diff --git a/keyboards/ergodox_ez/keymaps/coderkun_neo2/Makefile b/keyboards/ergodox_ez/keymaps/coderkun_neo2/Makefile new file mode 100644 index 0000000000..e7b2d0a65e --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/coderkun_neo2/Makefile @@ -0,0 +1 @@ +UNICODE_ENABLE = yes \ No newline at end of file diff --git a/keyboards/ergodox_ez/keymaps/coderkun_neo2/compiled.hex b/keyboards/ergodox_ez/keymaps/coderkun_neo2/compiled.hex new file mode 100644 index 0000000000..5aa02ca4b0 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/coderkun_neo2/compiled.hex @@ -0,0 +1,1195 @@ +:100000000C9425030C9469030C9469030C94690304 +:100010000C9469030C9469030C9469030C946903B0 +:100020000C9469030C9469030C94890E0C945B0F77 +:100030000C9469030C9469030C9469030C94690390 +:100040000C9469030C9465230C9469030C94690364 +:100050000C9469030C94F81C0C9469030C946903C8 +:100060000C9469030C9469030C9469030C94690360 +:100070000C9469030C9469030C9469030C94690350 +:100080000C9469030C9469030C9469030C94690340 +:100090000C9469030C9469030C9469030C94690330 +:1000A0000C9469030C9469030C946903C80FEA0F5C +:1000B000D810EA0FD8102F105210D810A710BA106D +:1000C00089138913B813B813EE130E143F153F1597 +:1000D00019143F15C914C91430153F153F153915AA +:1000E000D614D614D614D614D614D614D614D614C0 +:1000F000D614D614D614D614D614D614D614D614B0 +:10010000E814F514FC1403150D1500F001F002F0CD +:10011000F0A3F0A42B0034003900E100E00000005F +:100120001E00140004001D00E200007F1F001A00E2 +:1001300016001B00035228002000080007000600DC +:10014000E3002C00210015000900190064002D00B7 +:10015000220017000A000500000050002E004A008F +:1001600000000154000052002E004D000000025417 +:100170000000510023001C000B00110000004F0084 +:10018000240018000D001000E6002D0025000C00D2 +:100190000E003600E7002C00260012000F0037008A +:1001A000035228002700130033003800E6000077D0 +:1001B0002A002F003100E500E40000002B000600BB +:1001C0003900E100E00000001E00130007003400C9 +:1001D000E200007F1F0017000B00140003522800EC +:1001E0002000090033001500E3002C0021000E0060 +:1001F00012001A0004522D0022000F000C00110002 +:10020000000050002E004A000000010000005200D3 +:100210002E004D00000001000000510023000500E9 +:1002200018000D0000004F002400040038001000EA +:1002300004522D00250016001C003600E7002C009B +:1002400026000A0008003700035228002700190082 +:100250001B002D00E60000772A001D003100E5009C +:10026000E40000002B001D000000E100E0000000A1 +:100270001E001B0018002F00E200007F1F00190065 +:100280000C0033000352280020000F00040034004B +:10029000E3002C00210006000800130004522D008A +:1002A00022001A0012001C00000050002E004A001C +:1002B00000000100000052002E004D00000001006F +:1002C0000000510023000E001600050000004F0042 +:1002D00024000B001100100004522D0025000A001C +:1002E00015003600E7002C00260009001700370033 +:1002F000035228002700140007000D00E6000077D5 +:100300002A002D000000E500E400000001000100CB +:1003100001000100010000000100010001000100D6 +:1003200001000100010001000100010001000100C5 +:10033000010001000100010001000100010013A7FC +:1003400015A701000100F4000100010001000100F7 +:100350000000F20001000100000001000000F000B8 +:1003600001000100000001000000F1000100010097 +:10037000010001000000F300010042003E003A00CD +:100380000100F500010043003F003B0001000100B7 +:100390000100440040003C00010001000100450054 +:1003A00041003D00010001000100010001000100C9 +:1003B000010000000000000000000000000000003C +:1003C00000004B004A0029000000000000002A0045 +:1003D00050002B00010000000000520051004900B5 +:1003E0000000000000004C004F0028000100000049 +:1003F00000004E004D007A000000000000000000E8 +:1004000000000100000000000000000000000100EA +:1004100000000000000000000000000000000000DC +:100420000000240021001E00010000000000250043 +:1004300022001F0000000000000026002300200012 +:100440000100000000003000360000000000000045 +:1004500000003800370000000000000016034500CF +:10046000720067006F0044006F00780020004500B4 +:100470005A00000016034500720067006F00440038 +:100480006F007800200045005A00000004030904B2 +:1004900009026D00040100A0FA0904000001030133 +:1004A0000100092111010001223F00070581030815 +:1004B000000A0904010001030102000921110100E1 +:1004C00001224D000705820308000A090402000109 +:1004D00003000000092111010001223600070583F5 +:1004E0000308000A090403000103000000092111A8 +:1004F00001000122390007058403100001120110D8 +:100500000100000008EDFE071301000102000105D3 +:10051000010906A101050719E029E7150025019544 +:1005200008750181020508190129059505750191D4 +:10053000029501750391010507190029771500251A +:1005400001957875018102C005010980A10185022C +:1005500016010026B7001A01002AB7007510950190 +:100560008100C0050C0901A1018503160100269C2C +:10057000021A01002A9C02751095018100C0050134 +:100580000902A1010901A1000509190129051500A8 +:10059000250195057501810295017503810105010C +:1005A000093009311581257F9502750881060938C2 +:1005B0001581257F950175088106050C0A380215FD +:1005C00081257F950175088106C0C005010906A136 +:1005D00001050719E029E715002501950875018136 +:1005E0000295017508810105081901290595057510 +:1005F0000191029501750391010507190029FF1565 +:100600000025FF950675088100C00000000000006D +:100610000000000000010204060A0F17202C3A4ACD +:100620005D71879DB3C7DAE9F5FCFFFCF5E9DAC730 +:10063000B39D87715D4A3A2C20170F0A0604020108 +:100640000000000000000000000011241FBECFEFDA +:10065000DAE0DEBFCDBF04B603FE24C08091FC010A +:100660009091FD01A091FE01B091FF018730904B68 +:10067000A740B04BB9F41092FC011092FD0110920A +:10068000FE011092FF0114BE84B7877F84BF88E10A +:100690000FB6F89480936000109260000FBEE0E007 +:1006A000FFE3099511E0A0E0B1E0E8E5FAE402C05B +:1006B00005900D92A433B107D9F711E0A4E3B1E09E +:1006C00001C01D92AC3FB107E1F70E94CD0B0C9425 +:1006D0002A250C9400001092B9008AE08093B8009B +:1006E000089594EA9093BC009091BC0097FFFCCFD2 +:1006F0009091B900987F983021F0903111F081E00D +:1007000008958093BB0084E88093BC008091BC0076 +:1007100087FFFCCF8091B900887F883111F0803449 +:1007200071F780E0089584E98093BC008091BC005B +:1007300084FDFCCF08958093BB0084E88093BC00C7 +:100740008091BC0087FFFCCF9091B900987F81E039 +:10075000983209F480E0089584E88093BC00809189 +:10076000BC0087FFFCCF8091BB0008958091010100 +:10077000811115C080E40E947103809301018111F1 +:100780000CC082E10E949B0380930101811105C08E +:100790008FEF0E949B03809301010E94930384B119 +:1007A000807F84B985B1807F85B98AB1837F8AB91A +:1007B0008BB1837F8BB93E98469808950E9471054E +:1007C000809301010E94B60380B38C7080BB81B31B +:1007D000836F81BBA5E3B1E0E3E4F1E08EE08E0F2F +:1007E00011921D928E13FCCF0C945B05BF92CF9299 +:1007F000DF92EF92FF920F931F93CF93DF9380913D +:100800000101882379F0809134018F5F8093340156 +:10081000811108C00E94710580930101811102C0FD +:100820000E94030505E311E0C0E0D0E0DD24D3948D +:1008300082E0C82EEE24E394F12CC730D10500F5F8 +:1008400080910101811164C080E40E947103809352 +:100850000101811112C082E10E949B03809301017A +:1008600081110BC0C7010C2E01C0880F0A94EAF752 +:1008700080950E949B03809301010E94930348C0CE +:10088000CA30A1F028F4C83059F0C93061F005C071 +:10089000CC3089F070F0CD3089F0209A289810C0C3 +:1008A000219A29980DC0229A2A980AC0239A2B9837 +:1008B00007C0529A01C0539A5B9802C03E9A46986C +:1008C00090EA9A95F1F79FB1799902C082E001C050 +:1008D00080E091709D25982B7C9902C084E001C036 +:1008E00080E0892B7D9902C038E001C030E0832B85 +:1008F0007E9902C020E101C020E0822B9FB190953B +:10090000991F9927991F9295990F907E892B0FC057 +:1009100080910101811149C080E40E94710380939C +:100920000101882379F1B12C0E9493038B2DF801EA +:100930009081981719F08083C09200010E94B6033D +:1009400021960F5F1F4FCE30D10509F076CF8091F1 +:100950000001882361F1815080930001882339F0E0 +:100960008FE99FE00197F1F700C0000020C0A3E4E9 +:10097000B1E0E5E3F1E0CF01825F91919D938E13A9 +:10098000FCCF15C083E10E949B038093010181117C +:10099000CACF81E40E947103809301018111C3CF0A +:1009A0000E94AC03B82EB094BFCF80E0C0CF0E94AD +:1009B000010581E0DF91CF911F910F91FF90EF90A2 +:1009C000DF90CF90BF900895E82FF0E0ED5BFE4FF1 +:1009D0008081089508950F931F93CF93DF93C3E40D +:1009E000D1E010E00C2F025F899190E00E941E1C64 +:1009F000180F0C13F9CF812FDF91CF911F910F9119 +:100A000008950C94D10556985E9825982D982698AF +:100A10002E9827982F988FEF90E0909389008093DD +:100A2000880090938B0080938A0090938D00809330 +:100A30008C00259A2D9A2FEF80E792E0215080407C +:100A40009040E1F700C00000269A2E9A2FEF80E731 +:100A500092E0215080409040E1F700C00000279ACA +:100A60002F9A2FEF80E792E0215080409040E1F7ED +:100A700000C0000025982D982FEF80E792E02150CC +:100A800080409040E1F700C0000026982E982FEF9C +:100A900080E792E0215080409040E1F700C00000E4 +:100AA00027982F9856985E9825982D9826982E98D6 +:100AB00027982F98089589EA8093800089E0809391 +:100AC000810024982C983F988AB18F748AB96E98C7 +:100AD000479A8BB1806B8BB9769A0E9403050C9470 +:100AE000D00580E2809301018091510181110EC0F7 +:100AF0000E946B0381E0809351012FEF83ED90E31F +:100B0000215080409040E1F700C0000080E40E9446 +:100B100071038093010181112EC00E949B03809379 +:100B20000101811128C00E949B0380930101811162 +:100B300022C08FE30E949B038093010181111BC09F +:100B40000E94930380E40E9471038093010181114C +:100B500012C08CE00E949B038093010181110BC0A5 +:100B60000E949B0380930101811105C08FE30E94C5 +:100B70009B03809301010E949303809101010895DA +:100B800061110BC0FC018281882321F085EE0E9457 +:100B90002D1203C085EE0E94F51280E090E00895CA +:100BA00008956091BE017091BF018091C001909144 +:100BB000C1010E942A1C56985E9825982D98269867 +:100BC0002E9827982F98823051F0833029F0813069 +:100BD00049F4269A2E9A0895259A2D9A0895279ACF +:100BE0002F9A089556985E98089581E0089581E0BF +:100BF00008950C94F7050895282F882339F090E084 +:100C00002A3010F44D9608950697089587E290E0F3 +:100C10000895AF92BF92DF92EF92FF920F931F93CE +:100C2000CF93DF938C01FC01C081D181CE010E9462 +:100C3000A31ABE010E941A07EC01B8010E94F9052F +:100C4000882309F4EBC0F8018281882309F4A0C04D +:100C500080915E0181111FC0C431F0E5DF0709F00A +:100C6000D7C00E94FB0581E080935E010E94C21CF8 +:100C700090935D0180935C01109255011092570191 +:100C800010925601109259011092580110925B0176 +:100C900010925A01C3C080915C0190915D010E9445 +:100CA000CE1C883C910570F480915501E82FF0E04E +:100CB000EE0FFF1FEA5AFE4FD183C0838F5F8093F0 +:100CC0005501ACC0C13080E8D80708F451C0F80124 +:100CD0008281882309F460C05E01E894B7F88091AE +:100CE0005401813079F050F08230C1F482EE0E94DC +:100CF0002D1287E50E942D1287E50EC082EE0E941C +:100D00002D120CC080EE0E942D1281EE0E942D1239 +:100D100088E10E942D1288E10E94F5128CE0E82EF5 +:100D2000F12CC5010E2C02C0969587950A94E2F726 +:100D30008F700E94FC05D82E0E942D128D2D0E94CE +:100D4000F512F4E0EF1AF1088CEFE8168FEFF806D1 +:100D500041F780915401813029F010F0823041F444 +:100D600082EE04C080EE0E94F51281EE0E94F51220 +:100D7000C438E0E5DE0721F0C538D04501F137C0C1 +:100D8000F8018281882361F01092520182E01EC036 +:100D9000C130F0E8DF0760F3C43880E5D80761F4BC +:100DA00080915201811106C086E20E942D1286E2D6 +:100DB0000E94F51282E018C0C538D045C1F4F80190 +:100DC0008281882331F01092530180E20E94441303 +:100DD00025C080915301811106C087E20E942D1227 +:100DE00087E20E94F51280E20E944B1317C081E057 +:100DF0008093520180935301C801DF91CF911F91DD +:100E00000F91FF90EF90DF90BF90AF900C94F5059D +:100E1000C130F0E8DF0708F05FCFAACF80E0DF91B4 +:100E2000CF911F910F91FF90EF90DF90BF90AF9007 +:100E30000895089596E0799FF001112494E5899F23 +:100E4000E00DF11D1124E60FF11DEE0FFF1FEC5E0A +:100E5000FE4F859194910895880F991FFC01E657E4 +:100E6000F040859194910895880F991FFC01E65FE9 +:100E7000FE4F8591949108950F931F93CF93DF9325 +:100E8000EC01811520E3920750F5C11580E2D807E7 +:100E900008F0C3C0CB3BD10590F4C83AD10508F0A7 +:100EA0006AC0C53AD10508F05BC0C430D10508F06E +:100EB000D0C1219709F0CAC101E010E00AC2CF3FBA +:100EC000D10511F008F0C5C1C03FD10508F0A2C09E +:100ED000CE01805E9109089708F4BBC1B7C1C1304B +:100EE00090E5D90709F4A2C020F5C0318FE4D807F6 +:100EF00070F4C11590E4D90708F094C0C11521E33E +:100F0000D20708F0A3C1DD278E01106CE2C1C11524 +:100F1000D04509F09BC10E94AA158FEF94E32CE005 +:100F2000815090402040E1F700C000000E941D1D4C +:100F3000D0C1C11597E5D90758F4C03121E5D207D2 +:100F400008F01CC1C43180E5D80708F475C07EC123 +:100F5000CE0190578115904108F078C1DF7073C1C0 +:100F6000C53AD10509F477C1C63AD10509F076C171 +:100F700002E810E4AEC1C83AD10509F472C1C93A19 +:100F8000D10509F471C1CA3AD10509F470C1CB3A4F +:100F9000D10509F46FC1CC3AD10509F46EC1CD3A3F +:100FA000D10509F46DC1C03BD10509F46CC1CE3A3D +:100FB000D10509F46BC1CF3AD10509F46AC1C13B2F +:100FC000D10509F469C1C23BD10509F468C1C33B2D +:100FD000D10509F467C1C43BD10509F466C1C53B1D +:100FE000D10509F465C1C63BD10509F464C1C73B0D +:100FF000D10509F463C1C83BD10509F462C1C93BFD +:10100000D10509F461C1CA3BD10509F460C100E012 +:1010100014E45FC18E0110655CC1CE019F700E9417 +:10102000340758C1DF708E01106A53C18091DB0113 +:1010300081608093DB014DC10E94C21E811102C0FC +:101040000E94A81E0E94DF1E90E09093FC018093F6 +:10105000FB01C23080E5D80721F48091FB0181605B +:1010600086C0C43090E5D90721F48091FB018260ED +:101070007EC0C63020E5D20721F48091FB01846058 +:1010800076C0C83080E5D80719F48091FB0127C0ED +:10109000CA3090E5D90721F48091FB01806167C0D7 +:1010A000CC3020E5D20721F48091FB0180625FC043 +:1010B000CE3080E5D80721F48091FB01806457C0D1 +:1010C000C03190E5D90721F48091FB0180684FC0C1 +:1010D000C23120E5D20729F48091FB018460886049 +:1010E00046C0C33080E5D80721F48091FB018E7F94 +:1010F0003EC0C53090E5D90721F48091FB018D7F7A +:1011000036C0C73020E5D20721F48091FB018B7FE8 +:101110002EC0C93080E5D80719F48091FB0126C0A4 +:10112000CB3090E5D90721F48091FB018F7E1FC061 +:10113000CD3020E5D20721F48091FB018F7D17C0CF +:10114000CF3080E5D80721F48091FB018F7B0FC061 +:10115000C13190E5D90721F48091FB018F7707C059 +:10116000C331D04531F48091FB018B7F877F809321 +:10117000FB018091FB010E94E31EABC08D2F9927DC +:101180008F70992781309105D9F49E012370332700 +:1011900002C0880F991F2A95E2F79C688E0144E0EF +:1011A000000F111F4A95E1F700271370802B912B38 +:1011B00053E0CC0FDD1F5A95E1F7C076DD272FC035 +:1011C0008230910531F4DC2FCC278E01016F106A3B +:1011D00080C08330910569F4CE018370992701E0C6 +:1011E00010E002C0000F111F8A95E2F7C8019C6849 +:1011F0000FC084309105B9F4CE018370992701E0C6 +:1012000010E002C0000F111F8A95E2F7C8019A682A +:1012100023E0CC0FDD1F2A95E1F7C07ED7708C014B +:101220000C2B1D2B56C08530910531F4DC2FCC27BB +:101230008E01046F106A4DC0069709F04AC0CF7145 +:10124000DD27DC2FCC278E01106243C000E010E0C8 +:1012500040C08E013EC001E810E43BC003E810E44A +:1012600038C002EE14E435C009EE14E432C00AEED0 +:1012700014E42FC005EB14E42CC006EB14E429C0E1 +:1012800007EB14E426C00CEC14E423C00DEC14E4CA +:1012900020C003E815E41DC00AE815E41AC002E9FD +:1012A00015E417C004E915E414C001E216E411C006 +:1012B00003E216E40EC004E216E40BC005E216E4F5 +:1012C00008C006E216E405C007E216E402C00AE21E +:1012D00016E4C801DF91CF911F910F91089596E018 +:1012E000799FF001112494E5899FE00DF11D1124EF +:1012F000E60FF11DEE0FFF1FEC5EFE4F85919491FE +:10130000803E9105E0F4803C910558F581339105CC +:1013100009F46FC048F48932910509F463C08A3238 +:10132000910509F46DC072C089339105E9F08238E6 +:101330009105D1F08533910509F44DC067C0833E16 +:10134000910581F138F4803E9105B9F0823E910516 +:10135000D9F05CC0863E910561F1873E9105A1F10F +:1013600055C00E942C0708952091FB0120FD02C06A +:1013700021FF4CC080EE90E049C08091FB0180FFCE +:10138000F9CF89E390E042C08091FB0182FF0EC05B +:101390008091FB0184FF03C080E090E037C083EEC2 +:1013A00090E034C08091FB0182FFF2CF82EE90E0AA +:1013B0002DC08091FB0183FF0BC08091FB0184FD58 +:1013C000EBCF87EE90E022C08091FB0183FFF5CF49 +:1013D00086EE90E01BC08091FB0185FF07C089E28B +:1013E00090E014C08091FB0185FFF9CF85E390E088 +:1013F0000DC08091FB0186FF07C08AE290E006C025 +:101400008091FB0186FFF9CF81E390E00E943C07C9 +:10141000089508950C94090A80916F010895CF935F +:10142000DF9300D01F92CDB7DEB79C018091F2010F +:10143000843019F593E099833B832A839093E900E4 +:101440008FEF9091E800815095FD06C095ED9A953B +:10145000F1F700008111F5CF8091E80085FF0DC004 +:1014600040E050E063E070E0CE0101960E94790C0C +:101470008091E8008E778093E8000F900F900F9096 +:10148000DF91CF910895CF93DF9300D01F92CDB716 +:10149000DEB72091F201243021F522E029839B83DD +:1014A0008A8383E08093E9008FEF9091E800815078 +:1014B00095FD06C095ED9A95F1F700008111F5CFE5 +:1014C0008091E80085FF0DC040E050E063E070E0EF +:1014D000CE0101960E94790C8091E8008E7780936E +:1014E000E8000F900F900F90DF91CF910895209119 +:1014F000F2012430F1F422E02093E9002FEF309143 +:10150000E800215035FD06C035ED3A95F1F70000B1 +:101510002111F5CF2091E80025FF0BC040E050E0FD +:1015200065E070E00E94790C8091E8008E778093EE +:10153000E8000895CF93DF93EC019091F20194308D +:1015400009F046C080910C018823D9F080910D01EB +:101550008823B9F09093E9008FEF9091E8008150D3 +:1015600095FD06C095E19A95F1F700008111F5CF40 +:101570008091E80085FF2CC040E050E060E170E021 +:1015800017C081E08093E9008FEF9091E8008150CF +:1015900095FD06C095ED9A95F1F700008111F5CF04 +:1015A0008091E80085FF14C040E050E068E070E002 +:1015B000CE010E94790C8091E8008E778093E8003C +:1015C00080E1FE01AFE5B1E001900D928A95E1F76F +:1015D000DF91CF9108958091F101811109C00E949E +:1015E0000E0E0E946B0E8091E20084608093E200F8 +:1015F00008951092F101089508950C9452230E94C9 +:10160000B31C0E9458230E9411110C940A0A42E054 +:1016100061EC81E00E94880D42E061EC82E00E9472 +:10162000880D42E061EC83E00E94880D42E161ECAC +:1016300084E00C94880D8091F401833009F455C046 +:1016400030F4813071F0823009F48EC008958A3010 +:1016500009F47AC08B3009F460C0893009F09CC06D +:1016600020C08091F301813A09F096C08091E80092 +:10167000877F8093E8008091F7019091F801892B92 +:1016800021F460E18FE591E003C060E080E090E04C +:1016900070E00E94C40C8091E8008B778093E80092 +:1016A00008958091F301813209F076C08091F701AD +:1016B0009091F801009719F0039709F06DC080919F +:1016C000E800877F8093E8008091E80082FD05C0F4 +:1016D0008091F2018111F8CF5FC08091F100809379 +:1016E0006F018091E8008B7753C08091F301813ABC +:1016F00009F052C08091F7019091F801892B09F00F +:101700004BC08091E800877F8093E8008091E800DB +:1017100080FFFCCF80910C0136C08091F3018132B3 +:10172000D9F58091F7019091F801892BA9F5809165 +:10173000E800877F8093E8000E94BD0D8091F5014D +:1017400080930C010C94AA158091F301813221F54C +:101750008091E800877F8093E8000E94BD0D809112 +:10176000F6018093700108958091F301813AA1F40C +:101770008091E800877F8093E8008091E80080FFF7 +:10178000FCCF809170018093F1008091E8008E770A +:101790008093E8000C94BD0D089584B7877F84BFC3 +:1017A00088E10FB6F89480936000109260000FBE3D +:1017B00090E080E80FB6F894809361009093610008 +:1017C0000FBE0E9460110E940E0E0E946B0E80914F +:1017D000E20084608093E20078940E94F1100E94FD +:1017E000621182E091E00E940C110E9440238091DE +:1017F000F201853069F40E947A1C8091F0018823FF +:10180000B1F30E94A51C882391F30E94630CEFCFD3 +:101810000E946811ECCF292F332723303105C9F0FE +:1018200064F42130310581F02230310509F043C0E4 +:101830008DE690E020E934E042C021323105F1F03C +:101840002232310541F137C082E190E02DEF34E0E2 +:1018500036C099278130910541F08230910541F0E1 +:10186000892B49F5ECE8F4E005C0E4E7F4E002C0B8 +:10187000ECE5F4E0849190E09F0121C06430D8F45D +:10188000E62FF0E0EE0FFF1FEE5DFE4F208131816D +:1018900089E090E014C0643070F470E0FB01EE0F5A +:1018A000FF1FE65EFE4F20813181FB01EA5EFE4FA5 +:1018B000808190E004C080E090E020E030E0FA0118 +:1018C00031832083089580E189BD82E189BD09B417 +:1018D00000FEFDCF8091D8008F7D8093D80080914D +:1018E000E00082608093E0008091E00081FDFCCF09 +:1018F0000895CF92DF92EF92FF920F931F93CF93B1 +:10190000DF93EC018B016A010E94DC0D811133C071 +:10191000C114D10439F0F60180819181081B190BA3 +:10192000C80FD91FE12CF12C0115110519F1809177 +:10193000E80085FD16C08091E8008E778093E8006E +:10194000C114D10449F0F60180819181E80EF91E9D +:10195000F182E08285E00FC00E94DC0D882321F334 +:101960000AC089918093F10001501109FFEFEF1A2D +:10197000FF0ADACF80E0DF91CF911F910F91FF90A6 +:10198000EF90DF90CF9008952091F9013091FA0106 +:101990002617370748F06115710539F42091E800E2 +:1019A0002E772093E80001C0B90140E06115710570 +:1019B000A9F12091F201222309F443C0253009F452 +:1019C00042C02091E80023FD40C02091E80022FDA4 +:1019D00032C02091E80020FFE9CF4091F300209130 +:1019E000F20030E0342BFC01CF016115710559F094 +:1019F0002830310540F481918093F10061507109E4 +:101A00002F5F3F4FF1CF41E02830310509F040E032 +:101A10002091E8002E772093E800C8CF4111C9CF6C +:101A20000AC08091F201882361F0853061F08091D5 +:101A3000E80083FD0AC08091E80082FFF2CF80E0D9 +:101A4000089582E0089583E0089581E0089520914B +:101A5000F9013091FA012617370748F06115710531 +:101A600039F42091E8002E772093E80001C0B901F5 +:101A7000FC0120E06115710591F18091F20188234C +:101A800009F440C0853009F43FC08091E80083FD2F +:101A90003DC08091E80082FD2FC08091E80080FF6A +:101AA000E9CF2091F3008091F20090E0922B611534 +:101AB000710559F08830910540F424912093F1008C +:101AC0003196615071090196F2CF21E0089709F033 +:101AD00020E08091E8008E778093E800CBCF211141 +:101AE000CCCF0AC08091F201882361F0853061F08B +:101AF0008091E80083FD0AC08091E80082FFF2CF68 +:101B000080E0089582E0089583E0089581E00895DB +:101B1000982F973058F59093E900981739F0709105 +:101B2000EC002091ED005091F00003C0242F762F9F +:101B300050E021FF19C03091EB003E7F3093EB0065 +:101B40003091ED003D7F3093ED003091EB0031603E +:101B50003093EB007093EC002093ED005093F00075 +:101B60002091EE0027FF07C09F5FD3CF8F70809337 +:101B7000E90081E0089580E008958091F30187FFF6 +:101B800011C08091E80082FD05C08091F2018111B1 +:101B9000F8CF11C08091E8008B770BC08091F201E3 +:101BA000882349F08091E80080FFF8CF8091E80019 +:101BB0008E778093E80008952091E4003091E5004D +:101BC00095E64091EC00842F817040FF22C0809107 +:101BD000E80080FD1CC08091F201882391F08530DF +:101BE00091F08091EB0085FD10C04091E400509190 +:101BF000E5004217530729F39A01915011F784E049 +:101C0000089582E0089583E0089581E0089580E0DA +:101C100008954091E80042FFDECF08950E947C0EB7 +:101C20000E94840EE0EEF0E0808181608083E8ED28 +:101C3000F0E080818F77808319BCA7EDB0E08C91B4 +:101C40008E7F8C9380818F7E80831092F101089526 +:101C50000F931F93CF93DF930E947C0E0E94840EFC +:101C6000C8EDD0E088818F778883888180688883F9 +:101C700088818F7D888319BC1092F2011092EE0149 +:101C80001092F0011092EF0100EE10E0F801808157 +:101C90008B7F808388818160888342E060E080E080 +:101CA0000E94880DE1EEF0E080818E7F8083E2EE7D +:101CB000F0E0808181608083808188608083F8018A +:101CC00080818E7F8083888180618883DF91CF913E +:101CD0001F910F910895E8EDF0E080818F7E808361 +:101CE000E7EDF0E080818160808384E082BF81E065 +:101CF0008093F1010C94280EE8EDF0E080818E7F56 +:101D000080831092E20008951092DA001092E100B0 +:101D100008951F920F920FB60F9211242F933F93A5 +:101D20004F935F936F937F938F939F93AF93BF93E3 +:101D3000EF93FF938091E10082FF0BC08091E2005E +:101D400082FF07C08091E1008B7F8093E1000E94B9 +:101D5000F0108091DA0080FF1FC08091D80080FFD2 +:101D60001BC08091DA008E7F8093DA008091D900C9 +:101D700080FF0DC080E189BD82E189BD09B400FE0C +:101D8000FDCF81E08093F2010E94EB0A05C019BCEF +:101D90001092F2010E94F90A8091E10080FF19C0BF +:101DA0008091E20080FF15C08091E2008E7F8093D9 +:101DB000E2008091E20080618093E2008091D8008F +:101DC00080628093D80019BC85E08093F2010E9464 +:101DD000FD0A8091E10084FF30C08091E20084FF21 +:101DE0002CC080E189BD82E189BD09B400FEFDCF30 +:101DF0008091D8008F7D8093D8008091E1008F7E04 +:101E00008093E1008091E2008F7E8093E2008091D8 +:101E1000E20081608093E2008091EE01882311F05E +:101E200084E007C08091E30087FD02C081E001C02B +:101E300083E08093F2010E94FF0A8091E10083FF1A +:101E400029C08091E20083FF25C08091E100877F57 +:101E50008093E10082E08093F2011092EE01809184 +:101E6000E1008E7F8093E1008091E2008E7F80937D +:101E7000E2008091E20080618093E20042E060E055 +:101E800080E00E94880D8091F00088608093F000CF +:101E90000E94FC0AFF91EF91BF91AF919F918F91AA +:101EA0007F916F915F914F913F912F910F900FBE56 +:101EB0000F901F9018951F920F920FB60F9211243A +:101EC0002F933F934F935F936F937F938F939F9342 +:101ED000AF93BF93CF93DF93EF93FF93C091E9004C +:101EE000CF708091EC00D82FD17080FDD0E8109297 +:101EF000E9008091F000877F8093F00078940E9441 +:101F00009F0F1092E9008091F00088608093F000AC +:101F1000CD2BCF70C093E900FF91EF91DF91CF916E +:101F2000BF91AF919F918F917F916F915F914F91F1 +:101F30003F912F910F900FBE0F901F9018951F93F8 +:101F4000CF93DF93CDB7DEB7AA970FB6F894DEBF75 +:101F50000FBECDBFE3EFF1E088E08E0F9091F1006E +:101F600091938E13FBCF0E941B0B8091E80083FF9F +:101F70001FC18091F3019091F401492F50E04A3044 +:101F8000510508F015C1FA01EA5AFF4F0C94DA2402 +:101F9000803881F0823809F00BC18091F7018F7091 +:101FA0008093E9008091EB0085FB882780F91092EF +:101FB000E90006C08091EF019091F00191118260DB +:101FC0009091E800977F9093E8008093F100109241 +:101FD000F100C8C0282F2D7F09F0EAC0882319F02E +:101FE000823061F0E5C08091F501813009F0E0C0F8 +:101FF000933009F080E08093F0012BC08091F501CF +:10200000811127C08091F7018F7009F4D1C08093AE +:10201000E9002091EB0020FF1CC0933021F4809157 +:10202000EB00806214C09091EB0090619093EB0004 +:1020300021E030E0A90102C0440F551F8A95E2F764 +:102040004093EA001092EA008091EB008860809350 +:10205000EB001092E9008091E800877F86C0811133 +:10206000A7C01091F5011F778091E3008078812B44 +:102070008093E3008091E800877F8093E8000E94CE +:10208000BD0D8091E80080FFFCCF8091E300806867 +:102090008093E300111102C082E001C083E08093CD +:1020A000F20186C08058823008F082C08091F5012C +:1020B0009091F6018C3D53E0950779F583E08A8392 +:1020C0008AE289834FB7F894DE01139620E03EE060 +:1020D00051E2E32FF0E050935700E49120FF03C05A +:1020E000E295EF703F5FEF708E2F90E0EA3010F0D6 +:1020F000C79601C0C0968D939D932F5F243149F7F9 +:102100004FBF8091E800877F8093E8006AE270E02B +:10211000CE0101960E94C40C14C0AE014F5F5F4F08 +:102120006091F7010E940B0CBC01009709F440C0BC +:102130009091E800977F9093E80089819A810E94AE +:10214000270D8091E8008B778093E80031C08038BC +:1021500079F58091E800877F8093E8008091EE0117 +:102160008093F1008091E8008E778093E8000E94D0 +:10217000BD0D1EC081111CC09091F5019230C0F4BC +:102180008091E800877F8093E8009093EE010E94A1 +:10219000BD0D8091EE01811106C08091E30087FDA5 +:1021A00002C081E001C084E08093F2010E94070B2D +:1021B0008091E80083FF0AC08091E800877F8093C8 +:1021C000E8008091EB0080628093EB00AA960FB646 +:1021D000F894DEBF0FBECDBFDF91CF911F91089560 +:1021E0000895CF938091F2018823A1F0C091E90076 +:1021F000CF709091EC00892F817090FD80E8C82B02 +:102200001092E9008091E80083FD0E949F0FCF703B +:10221000C093E900CF910895909376018093750162 +:102220000895E0917501F0917601309721F00190C9 +:10223000F081E02D099480E00895E0917501F0911E +:102240007601309721F00280F381E02D0994089502 +:10225000E0917501F0917601309721F00480F581CD +:10226000E02D099408952091730130917401821733 +:10227000930771F09093740180937301E09175015D +:10228000F0917601309721F00680F781E02D0994D6 +:10229000089520917101309172018217930771F0B6 +:1022A0009093720180937101E0917501F091760134 +:1022B000309721F00084F185E02D09940895089568 +:1022C0000C945F110E94B91C0E94DE030C947B1DCC +:1022D0009F92AF92BF92CF92DF92EF92FF920F93B5 +:1022E0001F93CF93DF9300D000D000D0CDB7DEB7DF +:1022F0000E94F6030DE010E0AA24A394B12C902EC6 +:10230000802F0E94E404980128583E4F6901F9018A +:10231000F080F826A1F40150110988F78FEF898326 +:102320008A831B820E94C21C8160782F9D838C83CC +:1023300049815A816B818D810E94FF112FC090913C +:10234000DB0191FF04C08E830E94EA048E8125E0A8 +:1023500030E0A501022E01C0440F0A94EAF7E42EF2 +:102360004F21C1F029839A828E2191E009F490E0F7 +:102370009B830E94C21C8160782F9D838C8349813E +:102380005A816B818D810E94FF11F6018081E826C0 +:10239000E08204C021503109E0F6BDCF0E946220E6 +:1023A000109177010E9411111817B9F00E941111B4 +:1023B0008093770126960FB6F894DEBF0FBECDBF8F +:1023C000DF91CF911F910F91FF90EF90DF90CF9011 +:1023D000BF90AF909F900C940A0A26960FB6F8947F +:1023E000DEBF0FBECDBFDF91CF911F910F91FF9048 +:1023F000EF90DF90CF90BF90AF909F900895CF93D4 +:10240000DF93CDB7DEB72B970FB6F894DEBF0FBEC4 +:10241000CDBF4F83588769877A878B87DE011196F6 +:1024200086E0FD0111928A95E9F785E0FE01379675 +:1024300001900D928A95E1F749815A816B817C81E7 +:102440008D819E810E9448182B960FB6F894DEBFAE +:102450000FBECDBFDF91CF910895CF93882309F4AC +:10246000C2C0C82F823859F40E94111181FDBBC02F +:1024700089E30E94221B0E94EF1B89E30CC0833872 +:1024800079F40E94111180FDAEC083E50E94221BE9 +:102490000E94EF1B83E50E94641BCF910C94EF1BFD +:1024A000843859F40E94111182FD9DC087E40E9476 +:1024B000221B0E94EF1B87E4EECF8CEF8C0F813A3A +:1024C00048F48C2F0E94A52281118DC08C2F0E9470 +:1024D000221BE3CF80E28C0F883048F4C77081E084 +:1024E00001C0880FCA95EAF70E94A81BD6CF8BE5DA +:1024F0008C0F833078F4C53A29F0C63A31F083E87E +:1025000090E005C081E890E002C082E890E0CF91C1 +:102510000C94331188E58C0F833108F064C0C83AFD +:1025200039F1C93A41F1CA3A49F1CB3A51F1CC3AC1 +:1025300059F1CD3A61F1C03B69F1CE3A71F1CF3A30 +:1025400079F1C13B81F1C23B89F1C33B91F1C43BBD +:1025500099F1C53BA1F1C63BA9F1C73BB1F1C83B1D +:10256000B9F1C93BC1F1CA3BC9F180E090E038C084 +:1025700082EE90E035C089EE90E032C08AEE90E0C5 +:102580002FC085EB90E02CC086EB90E029C087EB54 +:1025900090E026C08CEC90E023C08DEC90E020C051 +:1025A00083E891E01DC08AE891E01AC082E991E0D9 +:1025B00017C084E991E014C081E292E011C083E287 +:1025C00092E00EC084E292E00BC085E292E008C087 +:1025D00086E292E005C087E292E002C08AE292E0E1 +:1025E000CF910C944911CF910895882309F44BC0E1 +:1025F000823859F40E94111181FF45C089E30E947D +:10260000221B0E94EF1B89E30CC0833871F40E94E7 +:10261000111180FF38C083E50E94221B0E94EF1B2E +:1026200083E50E94641B0C94EF1B843859F40E94CC +:10263000111182FF28C087E40E94221B0E94EF1B19 +:1026400087E4EFCF9CEF980F913A58F390E2980F00 +:10265000983050F4877091E001C0990F8A95EAF79D +:10266000892F0E94AE1BDFCF9BE5980F933020F49B +:1026700080E090E00C943311885A833120F480E09C +:1026800090E00C9449110895882321F00E94A81B22 +:102690000C94EF1B0895882321F00E94AE1B0C942C +:1026A000EF1B08957F928F929F92AF92BF92CF922D +:1026B000DF92EF92FF920F931F93CF93DF931F92BE +:1026C000CDB7DEB77C01C62E772EFC0105810295C1 +:1026D0000F70128111110E94C51B0E941B1B8823C1 +:1026E00079F0112369F080E28C0D883048F082E0A7 +:1026F0000E94041B0E941B1B91E0D82ED92601C00A +:10270000D12CE72DE295EF70F0E0E05AFF4F0C94EA +:10271000DA24872D807F072D0F70882311F0029512 +:10272000007F112389F0002309F490C180E28C0D11 +:10273000883020F4802F0E94A81B03C0802F0E94A5 +:10274000B81B0E94EF1B82C18C2D0E94F512002342 +:1027500009F495C180E28C0D883020F4802F0E940E +:10276000AE1B03C0802F0E94BE1B0E94EF1B87C1BF +:10277000972D907F872D8F70903211F08295807FFA +:10278000CC2021F0F1E0CF16B1F01EC0112349F0AA +:10279000002309F414C1013009F011C10E94D81BB3 +:1027A0006EC1002319F0013009F469C189830E94C8 +:1027B000DB1B89810AC1112321F0023008F05FC1BF +:1027C000FEC001115CC101C1112321F0002309F4F5 +:1027D000F6C03CC1002309F4F8C03EC1872D8695A0 +:1027E0008695837090E0009719F0019761F047C1DA +:1027F000112321F08C2D972D937002C080E090E082 +:102800000E9433113CC1112321F08C2D972D937020 +:1028100002C080E090E00E94491131C18C2D11234B +:1028200019F00E946A1F02C00E94D21F0E94572006 +:1028300026C1872D837009F052C0111120C18C2D43 +:10284000829586958770880F880F9C2D9F70892EA2 +:10285000912CA12CB12C082E04C0880C991CAA1C08 +:10286000BB1C0A94D2F7C4FE14C00FE010E020E0B5 +:1028700030E0B901A80104C0440F551F661F771F3F +:102880008A95D2F7CB01BA016095709580959095A5 +:1028900003C060E070E0CB01272D269526952370BC +:1028A00030E02230310569F02330310589F06829A4 +:1028B00079298A299B292130310571F00E949019CC +:1028C000DEC0682979298A299B290E94AC19D7C0C2 +:1028D0000E949019C501B4010E947419D0C011233F +:1028E00019F0872D817001C08695882309F4C7C02F +:1028F0008C2D829586958770880F880F9C2D9F70F0 +:10290000892E912CA12CB12C082E04C0880C991C66 +:10291000AA1CBB1C0A94D2F7C4FE14C00FE010E03E +:1029200020E030E0B901A80104C0440F551F661F24 +:10293000771F8A95D2F7CB01BA0160957095809583 +:10294000909503C060E070E0CB01272D2695269579 +:102950002370422F50E04230510569F04330510559 +:1029600089F0682979298A299B294130510571F01C +:102970000E946A1A84C0682979298A299B290E94A1 +:10298000861A7DC00E946A1AC501B4010E944E1ABF +:1029900076C08C2D90E0FC01E05EF109E531F10597 +:1029A00008F050C0E059FF4F0C94DA240C2D0F7042 +:1029B000872D8F71112331F00E94E719802F0E941B +:1029C00044135DC00E94081A802F0E944B1357C009 +:1029D000112339F0011153C0872D8F710E942D1AD8 +:1029E0004EC0023008F04BC0F7CF112339F0872DCD +:1029F0008F710E94E71943C01123C9F3872D8F718E +:102A00000E94081A3CC0112329F0872D8F710E9463 +:102A1000D21935C00E94C81932C0112351F0172DA8 +:102A20001F71812F0E94E71963E0812F0E94FB1A1A +:102A300026C081E00E94041B023008F182E00E945F +:102A4000041B1DC0112331F0002389F28C2D0E943C +:102A50002D1215C0002391F28C2D0E94F5120FC08B +:102A6000472D4F706C2DC7010E94C0050E94EC18C5 +:102A700006C0472D4F706C2DC7010E941907DD203D +:102A8000F9F00E94F71A80FD1BC0F70112820E9424 +:102A9000F11A0E94E719C7010E946F150E94F11AEE +:102AA0000F90DF91CF911F910F91FF90EF90DF90EA +:102AB000CF90BF90AF909F908F907F900C94081A0A +:102AC0000F90DF91CF911F910F91FF90EF90DF90CA +:102AD000CF90BF90AF909F908F907F9008950F936D +:102AE0001F93CF93DF93EC01888199812B813C81E7 +:102AF000232BB9F09F3F11F48F3F99F0CE010E9434 +:102B00000906882371F0688179818A810E94ED1A13 +:102B10008C010E94A21A0E946919B801CE010E947C +:102B20005213DF91CF911F910F9108950E94C51B01 +:102B30000E94D51B0E949A1B0E94EF1B0E94082135 +:102B40000E94572080E090E00E94331180E090E0E6 +:102B50000C9449110E94B51B0C9496150E94E21A20 +:102B6000292F22952F7030E02C3031054CF42A307B +:102B700031056CF42250310922303105A8F407C028 +:102B80002C30310569F02F30310551F00DC0803FF8 +:102B900069F018F4803E40F409C0843F29F406C06F +:102BA00093FB882780F9089580E0089581E00895D7 +:102BB000CF93DF9300D000D01F92CDB7DEB70F9038 +:102BC0000F900F900F900F90DF91CF910895CF93BA +:102BD000DF9300D000D000D0CDB7DEB726960FB679 +:102BE000F894DEBF0FBECDBFDF91CF9108951F9344 +:102BF000CF93DF93C091860116E080918701C817BB +:102C000099F0D0E01C9FF0011D9FF00D1124E857B2 +:102C1000FE4F4081518162817381848195810E9440 +:102C2000E7152196C770E9CFDF91CF911F910895E5 +:102C30004091B8015091B9016091BA017091BB0106 +:102C40008091BC019091BD010C94E7158091BD016C +:102C500082958F7009F054C08091BA01882309F4DD +:102C60004FC080918601A09187016091B801709159 +:102C7000B9014091BB015091BC01B6E08A1709F43B +:102C80003FC090E041155105C1F17F3F11F46F3F06 +:102C9000A1F1B89FF001B99FF00D1124E857FE4F44 +:102CA000218172132AC02081621327C02281211141 +:102CB00024C0238134812417350710F421503109B1 +:102CC000241B350B283C3105C0F42091BD012F7029 +:102CD00020612093BD0126E0289FF001299FF00D7F +:102CE0001124E357FE4F80818F708061808388EBD1 +:102CF00091E00E946F150C94F71501968770BECF76 +:102D00000895CF92DF92EF92FF920F931F93CF938C +:102D1000DF93CDB7DEB762970FB6F894DEBF0FBE74 +:102D2000CDBF8C0185E0F801DE011D9601900D926A +:102D30008A95E1F7D8014C9111965C911197129602 +:102D40006C9112971396CD90DC9014973091B80146 +:102D50007091B9018091BB019091BC01009709F479 +:102D60006BC17F3F19F43F3F09F466C1E090BA019F +:102D7000EE2009F4C0C02091BD01C816D90628F084 +:102D8000F601E81BF90BCF0104C0809590958C0DDE +:102D90009D1DFF24F394883C910578F0F12C207F51 +:102DA00009F0C6C07C2DD98AC88A89890E94D815A5 +:102DB00088EB91E00E946F15B1C0822F807F09F0EF +:102DC00046C0751314C0341312C0611110C02F70A7 +:102DD00020612093BD010E94181688EB91E00E94AB +:102DE0006F158091BD01D80115968C932EC0CD280A +:102DF00019F15F3F11F44F3FF9F0F62E61111CC03D +:102E0000809186012091870136E0821709F45AC02B +:102E100090E0389FF001399FF00D1124E857FE4FE4 +:102E20007181571306C07081471303C072817111FD +:102E300003C001968770E9CFF62E662309F418C106 +:102E40008091BD0181608093BD01F12C11C175138A +:102E500008C0341306C0611104C08091BD01D801BF +:102E6000C3C04D875E878D859E856A8B0E94AE1597 +:102E70006A898823E1F16623D1F12091BD01822F77 +:102E800082958F7090E0029774F08091B8019091D4 +:102E9000B90198878F831986DB86CA862C87CE0175 +:102EA00007960E946F1586E0F801A8EBB1E001904B +:102EB0000D928A95E1F70E9426160E941816FF24AB +:102EC000F394D6C04D875E878D859E850E94E21A59 +:102ED000292F22952F7030E0223031050CF0BCC034 +:102EE0009F7009F0B6C0805E883008F4C1C0C80188 +:102EF0000E946F15E4CFC816D90608F453C0F60136 +:102F0000E81BF90BCF01883C910508F450C0F12C67 +:102F10007C2DD98AC88A89890E94D815E8EBF1E00E +:102F200086E0DF011D928A95E9F70E941816A0C07D +:102F3000751314C0341312C0611110C08091BD010B +:102F4000F8018583C8010E946F1586E0E8EBF1E087 +:102F5000DF011D928A95E9F7FE2C8AC04D875E87B6 +:102F60008D859E856A8B0E94AE156A89882309F437 +:102F7000BECF662309F4BBCF2091BD01822F82957D +:102F80008F7090E002970CF48ECF8091B8019091F1 +:102F9000B9019A8389831B82DD82CC822E83CE0184 +:102FA00001967FCF809590958C0D9D1DACCFF62E10 +:102FB000662309F49CCF75132EC034132CC02091C6 +:102FC000BD0120FD1FC0822F82958F70D9F0D801DE +:102FD00015962C9315978F3049F08F5F982F929507 +:102FE000907F822F8F70892B15968C93C8010E9439 +:102FF0006F1586E0F801A8EBB1E001900D928A957B +:10300000E1F793CF86E0F801A8EBB1E001900D92D3 +:103010008A95E1F72DC04D875E878D859E850E943C +:10302000AE15811140CF8091BD0181608093BD01BB +:10303000C8010E946F151CC0662309F458CF4D8744 +:103040005E878D859E850E94AE15882309F44FCF3B +:103050002ACF811148CF0CC0243031050CF047CF66 +:103060009F7009F440CFF8019581907F09F03BCF24 +:103070008F2D62960FB6F894DEBF0FBECDBFDF91E5 +:10308000CF911F910F91FF90EF90DF90CF90089517 +:103090001F93CF93DF93CDB7DEB72C970FB6F8947D +:1030A000DEBF0FBECDBF4F83588769877A878B8776 +:1030B0009C87CE0107960E948116882369F08F8134 +:1030C00098852A853B85232BF1F19F3F09F063C04A +:1030D0008F3F09F060C037C086E0FE013796DE0101 +:1030E000119601900D928A95E1F76F817885EA85B6 +:1030F000FB85309741F17F3F11F46F3F21F1209123 +:10310000870130E0C90101968770992740918601B7 +:1031100050E08417950709F447C069837A83FD83DB +:10312000EC8396E0929FD001939FB00D1124A85795 +:10313000BE4FFE01319601900D929A95E1F7809372 +:1031400087010E94F71516E0809186019091870112 +:103150008917C1F1189FC001112488579E4F0E9402 +:103160008116882379F1E09186011E9FF0011124D8 +:10317000E857FE4F4081518162817381848195813E +:103180000E94E7158091860190E00196877099274B +:1031900080938601D9CF4F81588569857A858B8543 +:1031A0009C850E94E715CFCF0E94AA151092870137 +:1031B00010928601E8EBF1E086E0DF011D928A952E +:1031C000E9F7C1CF2C960FB6F894DEBF0FBECDBF86 +:1031D000DF91CF911F910895EF92FF920F931F936C +:1031E000CF93DF938C01009709F46CC0F12CEE248F +:1031F000E394E8012196F8018491843740F4843007 +:1032000008F051C0813081F0823019F15BC0853700 +:1032100009F444C0A8F19CE7980F903708F052C019 +:103220008F770E94F51241C00E5F1F4FFE01C491BF +:1032300080E28C0F883048F4C7708E2D01C0880F53 +:10324000CA95EAF70E94C81B14C08C2F0E942D1249 +:103250002DC00E5F1F4FFE01C49180E28C0F88309D +:1032600058F4C7708E2D01C0880FCA95EAF70E94E6 +:10327000CE1B0E94EF1B1AC08C2F0E94F51216C0A5 +:103280000E5F1F4FFE01C491CC2381F08FE99FE0B8 +:103290000197F1F700C00000C150F6CF0E5F1F4F3D +:1032A000FE01F49003C00E942D128E018F2D882301 +:1032B00009F49FCFEFE9FFE03197F1F700C000007C +:1032C0008150F5CFDF91CF911F910F91FF90EF903B +:1032D000089508956093C2017093C3018093C4015F +:1032E0009093C5010C9496150F931F930091C20102 +:1032F0001091C3012091C4013091C501DC01CB01C3 +:10330000802B912BA22BB32B8093C2019093C301EE +:10331000A093C401B093C5011F910F910C94961511 +:103320000F931F930091C2011091C3012091C4011A +:103330003091C501DC01CB0180239123A223B3236B +:103340008093C2019093C301A093C401B093C501BF +:103350001F910F910C9496150F931F930091C2012A +:103360001091C3012091C4013091C501DC01CB0152 +:1033700080279127A227B3278093C2019093C3018E +:10338000A093C401B093C5011F910F910C949615A1 +:103390001092BE011092BF011092C0011092C101A3 +:1033A0000C94961541E050E060E070E004C0440FDA +:1033B000551F661F771F8A95D2F74093BE01509321 +:1033C000BF016093C0017093C1010C94961541E058 +:1033D00050E060E070E004C0440F551F661F771F87 +:1033E0008A95D2F78091BE019091BF01A091C00152 +:1033F000B091C101482B592B6A2B7B2B4093BE0106 +:103400005093BF016093C0017093C1010C94961555 +:1034100041E050E060E070E004C0440F551F661FBB +:10342000771F8A95D2F74095509560957095809159 +:10343000BE019091BF01A091C001B091C10148238C +:1034400059236A237B234093BE015093BF016093AD +:10345000C0017093C1010C94961541E050E060E00A +:1034600070E004C0440F551F661F771F8A95D2F77E +:103470008091BE019091BF01A091C001B091C101A6 +:10348000482759276A277B274093BE015093BF01E5 +:103490006093C0017093C1010C9496150F931F9314 +:1034A0000091BE011091BF012091C0013091C10176 +:1034B000DC01CB01802B912BA22BB32B8093BE017F +:1034C0009093BF01A093C001B093C1011F910F91D0 +:1034D0000C9496150F931F930091BE011091BF019C +:1034E0002091C0013091C101DC01CB0180239123E7 +:1034F000A223B3238093BE019093BF01A093C00188 +:10350000B093C1011F910F910C9496150F931F93C7 +:103510000091BE011091BF012091C0013091C10105 +:10352000DC01CB0180279127A227B3278093BE011E +:103530009093BF01A093C001B093C1011F910F915F +:103540000C9496150895CF92DF92EF92FF920F930D +:103550001F93CF93DF938C01C090C201D090C30121 +:10356000E090C401F090C5018091BE019091BF012F +:10357000A091C001B091C101C82AD92AEA2AFB2A28 +:10358000CFE1D0E0D701C6010C2E04C0B695A795B7 +:10359000979587950A94D2F780FF06C0B8018C2FC3 +:1035A0000E946F09019721F4219760F780E001C024 +:1035B0008C2FDF91CF911F910F91FF90EF90DF90B3 +:1035C000CF900895CF93DF93EC010E94A31ABE0120 +:1035D0000E946F09DF91CF910895CB010E94E21AFA +:1035E00008958091C601859585958595089580916A +:1035F000C6018770089598E0899F90011124262BB9 +:103600002093C6010C94E7192091C601809582236E +:103610008093C601982F977069F430E0482F5527A2 +:1036200047FD50952417350729F085958595859593 +:103630000C94081A08959091C601977081E009F4DE +:1036400080E0089590910C01992321F090910D0153 +:10365000911109C020910E0130910F01F9013296AC +:103660009FEF40E01FC0982F9695969596959F30B6 +:1036700050F5E0910E01F0910F01E90FF11D8770F7 +:1036800021E030E0A90102C0440F551F8A95E2F7FE +:10369000CA019181892B818308959F3F39F04F5F43 +:1036A0004E3041F051915813F8CF0DC05111F7CF62 +:1036B000942FF5CF9F3F39F0F901E90FF11D97FDE8 +:1036C000FA9582830895089590910C01992321F031 +:1036D00090910D01911109C020910E0130910F01BF +:1036E000F9013296205F3F4F1FC0982F969596950F +:1036F00096959F30F0F4E0910E01F0910F01E90FE3 +:10370000F11D877021E030E0A90102C0440F551F70 +:103710008A95E2F7CA018095918189238183089572 +:103720003196E217F30729F090819813F9CF1082B0 +:10373000F7CF089581E090E0E0910E01F0910F0144 +:10374000E80FF91F1082019680319105A9F70895BD +:103750009091DA01892B8093DA01089580959091F8 +:10376000DA0189238093DA0108951092DA0108952D +:103770009091D901892B8093D901089580959091DA +:10378000D90189238093D90108951092D901089510 +:103790009091D801892B8093D801089580959091BC +:1037A000D80189238093D80108951092D8010895F3 +:1037B0008093C70108951092C701089580910E016A +:1037C00090910F01FC0131969C01205F3F4F80E0FA +:1037D000919191118F5FE217F307D1F70895E0916E +:1037E0000E01F0910F018091DA018083E0910E01CA +:1037F000F0910F0190818091D901892B8083E09114 +:103800000E01F0910F0190818091D801892B808366 +:103810008091C701882361F0E0910E01F0910F01C2 +:103820009081892B80830E94DE1B81111092C70139 +:1038300080910E0190910F010C941D1120E00097D2 +:1038400039F0AC0141505109842395232F5FF7CF04 +:10385000822F0895CF92DF92EF92FF926C01EE24B7 +:10386000FF24C114D104E104F10421F0C701B60121 +:1038700020E101C020E0C72ED82EE92EFF24C1147C +:10388000D104E104F10419F0285FC701B6016B010E +:103890007C0154E0F694E794D794C7945A95D1F7F5 +:1038A000C114D104E104F10419F02C5FC701B60181 +:1038B0006B017C0142E0F694E794D794C7944A9553 +:1038C000D1F7C114D104E104F10419F02E5FC7014E +:1038D000B601DC01CB01B695A79597958795892B05 +:1038E0008A2B8B2B09F02F5F822FFF90EF90DF90B8 +:1038F000CF9008958091F201843021F11092DC0183 +:1039000020E488E190E00FB6F894A89580936000D9 +:103910000FBE2093600080E00E940A0A83B7817F77 +:10392000846083BF83B7816083BF7894889583B7B1 +:103930008E7F83BF88E10FB6F89480936000109269 +:1039400060000FBE0895089508950E94A31C0E9470 +:10395000F6030E94A41C0E94EB0491E0811101C0B7 +:1039600090E0892F08950E94AA150E9411110C94CD +:103970000A0A82E084BD93E095BD9AEF97BD8093DB +:103980006E0008952FB7F8948091DD019091DE01CB +:10399000A091DF01B091E0012FBF0895CF92DF9297 +:1039A000EF92FF920F931F932FB7F8944091DD0190 +:1039B0005091DE016091DF017091E0012FBF6A013B +:1039C0007B01EE24FF248C0120E030E0C016D106FC +:1039D000E206F30610F4415051099A01281B390BF5 +:1039E000C9011F910F91FF90EF90DF90CF90089544 +:1039F0001F920F920FB60F9211248F939F93AF9344 +:103A0000BF938091DD019091DE01A091DF01B09123 +:103A1000E0010196A11DB11D8093DD019093DE01AF +:103A2000A093DF01B093E001BF91AF919F918F917F +:103A30000F900FBE0F901F9018950E940E0EF894D5 +:103A40002FEF87EA91E6215080409040E1F700C0D7 +:103A5000000087E090EBDC018093FC019093FD0176 +:103A6000A093FE01B093FF019CE088E10FB6F894AB +:103A7000A895809360000FBE90936000FFCFEF92F7 +:103A8000FF920F931F93CF93DF93D82FCDE08C2F0E +:103A90000E94E40405E010E0E82EF12CC701002E9E +:103AA00002C0959587950A94E2F780FF09C0602FC0 +:103AB0007C2F80E00E941A07D81302C081E006C064 +:103AC0000150110958F7C15010F780E0DF91CF91F4 +:103AD0001F910F91FF90EF900895CF93C82F8CE224 +:103AE0000E943F1D882321F08C2FCF910C943F1D05 +:103AF00080E0CF910895CF930E94C21E811102C031 +:103B00000E94A81EC5E6C15049F00E94F6038FE34B +:103B10009CE90197F1F700C00000F5CF89E20E940F +:103B20006D1D811113C18AE20E946D1D81110E94D9 +:103B3000A81E85E00E946D1D81110E941D1D0E941E +:103B4000CD1E8093DB0187E00E946D1D8823A9F1C3 +:103B50008BE10E946D1D882351F08091DB0181FB78 +:103B6000222720F991E0922790FB81F90EC08EE088 +:103B70000E946D1D882361F08091DB0182FB22276A +:103B800020F991E0922790FB82F98093DB0115C028 +:103B900080E10E946D1D9091DB01882341F093FB31 +:103BA000222720F981E0822780FB93F904C0892F26 +:103BB000809580FB90F99093DB018091DB010E945E +:103BC000D11E0E94DF1E8093FB0180EE0E946D1DBE +:103BD000882341F08091FB01982F909590FB80F90C +:103BE0008093FB0189E30E946D1D882359F0809129 +:103BF000FB0181FB222720F991E0922790FB81F9BC +:103C00008093FB0182EE0E946D1D882359F0809104 +:103C1000FB0182FB222720F991E0922790FB82F999 +:103C20008093FB0186EE0E946D1D882359F08091E0 +:103C3000FB0183FB222720F991E0922790FB83F977 +:103C40008093FB0183EE0E946D1D882359F08091C3 +:103C5000FB0184FB222720F991E0922790FB84F955 +:103C60008093FB0185E30E946D1D882359F08091AC +:103C7000FB0185FB222720F991E0922790FB85F933 +:103C80008093FB0181E30E946D1D882359F0809190 +:103C9000FB0186FB222720F991E0922790FB86F911 +:103CA0008093FB0181E10E946D1D882359F0809172 +:103CB000FB0187FB222720F991E0922790FB87F9EF +:103CC0008093FB018091FB010E94E31E8091FB0128 +:103CD00087FB882780F980930D0187E20E946D1D84 +:103CE000C82F8EE10E946D1D8111C2608FE10E947C +:103CF0006D1D8111C46080E20E946D1D8111C8603C +:103D000081E20E946D1D8111C06182E20E946D1DE1 +:103D10008111C06283E20E946D1D8111C06484E242 +:103D20000E946D1D882311F0C06802C0CC2329F0C9 +:103D30008C2F0E94DA1E6C2F03C00E94D61E682FA3 +:103D400070E080E090E0CF910C946A19CF910895D3 +:103D50006DEE7EEF80E090E00E94142560E082E04E +:103D600090E00E94022560E083E090E00E9402253E +:103D700060E084E090E00E94022560E085E090E051 +:103D80000C94022580E090E00E94FC2421E08D3E0E +:103D90009E4F09F020E0822F089582E090E00C947D +:103DA000F424682F82E090E00C94022583E090E0F8 +:103DB0000C94F424682F83E090E00C94022584E0B6 +:103DC00090E00C94F424682F84E090E00C94022599 +:103DD0008091E30180FF0BC06091130185E0689F33 +:103DE000B001112475956795759567952BC081FF76 +:103DF00009C06091130185E0689FB0011124759599 +:103E0000679520C082FF07C06091130185E0689F1D +:103E1000B001112417C09091E4019923D1F0609171 +:103E20001201961788F72091130185E0289F9001D1 +:103E30001124929FA001939F500D112470E0CA019C +:103E40000E94C6246038710540F46115710539F08F +:103E500002C065E070E0862F08958FE7089581E045 +:103E600008958091E30180FF08C06091110170E026 +:103E7000759567957595679521C081FF06C060911E +:103E8000110170E07595679519C082FF04C06091BB +:103E9000110170E010C09091E4019923C1F060918C +:103EA00010019617A0F780911101899FC00111247C +:103EB00070E00E94C6246038710528F46115710510 +:103EC00021F0862F08958FE7089581E0089561E03D +:103ED00070E0F4CF803F21F40E94E81E819504C079 +:103EE000813F29F40E94E81E8093E7010895823FF4 +:103EF00021F40E94E81E819504C0833F29F40E94AA +:103F0000E81E8093E6010895893F19F40E94311F4D +:103F100005C08A3F31F40E94311F81958093E801EA +:103F200008958B3F21F40E94311F819504C08C3F7E +:103F300029F40E94311F8093E9010895843F21F400 +:103F40008091E501816017C0853F21F48091E501F2 +:103F5000826011C0863F21F48091E50184600BC02E +:103F6000873F21F48091E501886005C0883F31F4E6 +:103F70008091E50180618093E50108958D3F21F4F2 +:103F80008091E30181600BC08E3F21F48091E301B9 +:103F9000826005C08F3F29F48091E30184608093A3 +:103FA000E3010895803F39F48091E70187FF6CC0F9 +:103FB0001092E70169C0813F29F48091E70118164A +:103FC000BCF362C09091E601823F29F497FF5CC088 +:103FD0001092E60159C0833F19F41916CCF354C06E +:103FE000893F41F48091E80118160CF04DC0109201 +:103FF000E8014AC08A3F29F48091E80187FF44C064 +:10400000F6CF8B3F39F48091E90187FF3DC01092D4 +:10401000E9013AC08C3F29F48091E9011816BCF3FC +:1040200033C0843F21F48091E5018E7F17C0853F26 +:1040300021F48091E5018D7F11C0863F21F48091AC +:10404000E5018B7F0BC0873F21F48091E501877FDD +:1040500005C0883F31F48091E5018F7E8093E501B2 +:1040600013C08D3F21F48091E3018E7F0BC08E3F02 +:1040700021F48091E3018D7F05C08F3F29F4809169 +:10408000E3018B7F8093E3018091E60181110EC0F3 +:104090008091E70181110AC08091E801811106C079 +:1040A0008091E901811102C01092E401089585EE2A +:1040B00091E00E9428110E94C21C9093E20180931B +:1040C000E10108951F93CF93DF938091E1019091D7 +:1040D000E2010E94CE1CAC019091E401992321F0F1 +:1040E0002091140130E006C0209115018AE0289F3C +:1040F000900111244217530708F486C08091E6010D +:10410000C091E701D091E8011091E901811107C048 +:10411000C11176C0D11174C0111172C075C09F3F1A +:1041200019F09F5F9093E401181624F40E94E81E92 +:104130008093E6018091E60187FF05C00E94E81E9A +:1041400081958093E6011C1624F40E94E81E80935A +:10415000E7018091E70187FF05C00E94E81E819575 +:104160008093E7016091E601662339F1C091E70190 +:10417000CC2319F1772767FD7095872F972F0E9421 +:10418000D72323E333E343E35FE30E943B240E940E +:10419000A4236093E6016C2F772767FD7095872F26 +:1041A000972F0E94D72323E333E343E35FE30E9487 +:1041B0003B240E94A4236093E7011D1624F40E946F +:1041C000311F8093E8018091E80187FF05C00E94BC +:1041D000311F81958093E801111624F40E94311F4C +:1041E0008093E9018091E90187FF05C00E94311F9A +:1041F00081958093E901DF91CF911F910C94572015 +:104200009F3F09F08ECF96CFDF91CF911F910895F8 +:10421000E5EEF1E085E0DF011D928A95E9F7109265 +:10422000E4011092E3010895833081F128F4813094 +:1042300059F08230D1F00895853009F449C0B8F1C1 +:10424000863009F456C0089580911501262F30E07C +:10425000280F311D2F3F310524F4680F609315019D +:1042600008958FEF80931501089580911401262FF2 +:1042700030E0280F311D2F3F310524F4680F609383 +:10428000140108958FEF8093140108958091130114 +:10429000262F30E0280F311D2F3F310524F4680F01 +:1042A0006093130108958FEF809313010895809117 +:1042B0001201262F30E0280F311D2F3F310524F445 +:1042C000680F6093120108958FEF80931201089593 +:1042D00080911101262F30E0280F311D2F3F31052D +:1042E00024F4680F6093110108958FEF80931101FA +:1042F000089580911001262F30E0280F311D2F3FA7 +:10430000310524F4680F6093100108958FEF8093B6 +:1043100010010895833011F128F4813049F0823082 +:1043200091F00895853081F120F18630C1F1089532 +:1043300080911501681720F4861B8093150108955C +:1043400010921501089580911401681720F4861BBE +:10435000809314010895109214010895809113011F +:10436000681720F4861B809313010895109213019F +:10437000089580911201681720F4861B8093120122 +:10438000089510921201089580911101681720F488 +:10439000861B809311010895109211010895809158 +:1043A0001001681720F4861B809310010895109265 +:1043B000100108950F931F938D3109F46BC008F01D +:1043C0003FC08E3009F47FC0C0F4873009F469C063 +:1043D00068F4863009F0B1C08091DB01817F8E7F67 +:1043E0008093DB0181E08093EB01A8C0883009F461 +:1043F000A2C08B3009F49FC0A0C0863109F49BC0D5 +:1044000078F4803109F472C0813109F096C00E94BD +:10441000AA1590910D0181E0892780930D018BC031 +:10442000893109F488C08B3109F087C08091DB01A4 +:1044300081FB222720F991E0922790FB81F94CC063 +:10444000853309F470C048F4873209F46CC008F46D +:1044500059C0893209F467C070C0833438F48A3394 +:1044600008F04EC0883309F466C067C0833409F48D +:104470005AC0883409F061C00E94AA150FEF13EDED +:1044800020E3015010402040E1F700C000000E94EE +:104490001D1D51C00E945E230E9411110E940A0A34 +:1044A0004AC09091DB01892F8095817080FB90F943 +:1044B00029F0966098609093DB0140C0997F977FC8 +:1044C0009093DB0138C08091DB0182FB222720F929 +:1044D00091E0922790FB82F98093DB01992359F1B7 +:1044E0008091DB0181608093DB0125C08091DB013D +:1044F00083FB222720F991E0922790FB83F9ECCFF0 +:10450000895301C08D5141E050E060E070E08A01C4 +:104510009B0104C0000F111F221F331F8A95D2F781 +:10452000C901B80104C061E070E080E090E00E9441 +:104530006A190E94AA1581E001C080E01F910F91C5 +:10454000089580E0089580E00895CF93C82F80916A +:10455000EB01813079F018F08230E9F187C0E09109 +:104560000E01F0910F018081813169F0823209F0F2 +:104570007FC009C0E0910E01F0910F01808181316F +:1045800011F0823261F48C2F0E94A122811104C0AB +:104590008C2F0E94DA211DC081E090E01AC08C2F80 +:1045A0000E94A322811114C0C43179F048F4CB30A9 +:1045B00079F0C03109F060C082E08093EB0108C05F +:1045C000C93219F0C83321F057C01092EB0154C022 +:1045D00081E0817053C0C93289F118F5C43171F19D +:1045E000A8F4C73009F046C08AE08093150194E131 +:1045F0009093140193E0909313018093120188E04B +:104600008093110188E28093100134C0CE51C630EE +:1046100088F5EC2FF0E0E65DFE4F80818093EA01A3 +:1046200029C0CE34E9F020F4CB3421F56AE013C080 +:10463000C13579F0C235F1F461E00DC08091EA0135 +:10464000882319F01092EA0115C081E08093EB01F4 +:1046500015C061E006C08091EA010E9414210AC0E1 +:104660006AE08091EA010E948A2104C01092EB0165 +:1046700080E004C081E002C080E0ABCFCF9108951C +:10468000E1E8F0E0808188608083808181608083C0 +:104690008FB7F89493E09093890090ED9093880001 +:1046A0008FBF0895EFE6F0E08081826080830895F7 +:1046B000EFE6F0E080818D7F80830895EFE6F0E003 +:1046C000908182E08927808308951F920F920FB610 +:1046D0000F9211242F933F934F935F936F937F9388 +:1046E0008F939F93AF93BF93EF93FF938091EC01D0 +:1046F0009091ED0101969093ED018093EC01811171 +:1047000003C082E00E940A0AE091ED01E695E69579 +:10471000F0E0E65FF94FE4918091EC018E1303C065 +:1047200080E00E940A0AFF91EF91BF91AF919F91A3 +:104730008F917F916F915F914F913F912F910F904A +:104740000FBE0F901F90189504D06894B1118DC0C2 +:10475000089570D088F09F5790F0B92F9927B751DE +:10476000A0F0D1F0660F771F881F991F1AF0BA9535 +:10477000C9F712C0B13081F077D0B1E0089574C0AC +:10478000672F782F8827B85F39F0B93FCCF386952B +:1047900077956795B395D9F73EF490958095709588 +:1047A00061957F4F8F4F9F4F0895E89409C097FB05 +:1047B0003EF490958095709561957F4F8F4F9F4FF8 +:1047C0009923A9F0F92F96E9BB279395F69587953C +:1047D00077956795B795F111F8CFFAF4BB0F11F4FF +:1047E00060FF1BC06F5F7F4F8F4F9F4F16C08823A6 +:1047F00011F096E911C0772321F09EE8872F762FDC +:1048000005C0662371F096E8862F70E060E02AF01C +:104810009A95660F771F881FDAF7880F9695879508 +:1048200097F9089557FD9058440F551F59F05F3F71 +:1048300071F04795880F97FB991F61F09F3F79F0C2 +:1048400087950895121613061406551FF2CF469544 +:10485000F1DF08C0161617061806991FF1CF8695C6 +:104860007105610508940895E894BB2766277727AA +:10487000CB0197F908950BD078C069D028F06ED09D +:1048800018F0952309F05AC05FC01124EECFCADF9B +:10489000A0F3959FD1F3950F50E0551F629FF00153 +:1048A000729FBB27F00DB11D639FAA27F00DB11DAC +:1048B000AA1F649F6627B00DA11D661F829F222735 +:1048C000B00DA11D621F739FB00DA11D621F839FBC +:1048D000A00D611D221F749F3327A00D611D231F92 +:1048E000849F600D211D822F762F6A2F11249F57E0 +:1048F00050408AF0E1F088234AF0EE0FFF1FBB1F03 +:10490000661F771F881F91505040A9F79E3F5105A1 +:1049100070F014C0AACF5F3FECF3983EDCF38695AD +:1049200077956795B795F795E7959F5FC1F7FE2B4C +:10493000880F911D9695879597F9089597F99F6728 +:1049400080E870E060E008959FEF80EC0895002417 +:104950000A941616170618060906089500240A94E4 +:1049600012161306140605060895092E0394000C6A +:1049700011F4882352F0BB0F40F4BF2B11F460FFF9 +:1049800004C06F5F7F4F8F4F9F4F089597FB072E97 +:1049900016F4009407D077FD09D00E94E02407FCAC +:1049A00005D03EF4909581959F4F0895709561953F +:1049B0007F4F0895EE0FFF1F0590F491E02D0994AD +:1049C000AA1BBB1B51E107C0AA1FBB1FA617B70735 +:1049D00010F0A61BB70B881F991F5A95A9F7809551 +:1049E0009095BC01CD010895F999FECF92BD81BD8E +:1049F000F89A992780B50895A8E1B0E042E050E028 +:104A00000C941C25262FF999FECF92BD81BDF89AF2 +:104A1000019700B4021639F01FBA20BD0FB6F89402 +:104A2000FA9AF99A0FBE08950196272F0E9403253E +:104A30000C940225DC01CB01FC01F999FECF06C0E4 +:104A4000F2BDE1BDF89A319600B40D92415050404C +:084A5000B8F70895F894FFCFB8 +:104A580002200C0A9A0A770A430A0F0A0101C801C0 +:104A680028080A03140A3F4D3639CB057E05480548 +:104A78000F05A204BB04D404ED04010203040506D7 +:044A88000708090012 +:00000001FF diff --git a/keyboards/ergodox_ez/keymaps/coderkun_neo2/keymap.c b/keyboards/ergodox_ez/keymaps/coderkun_neo2/keymap.c new file mode 100644 index 0000000000..d25e2b9954 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/coderkun_neo2/keymap.c @@ -0,0 +1,274 @@ +#include "ergodox_ez.h" +#include "debug.h" +#include "action_layer.h" +#include "keymap_neo2.h" + +// Layer names +#define BASE 0 // default layer +#define PMQ 1 // poor man’s QWERTZ +#define PMN 2 // poor man’s Neo +#define FMU 3 // FMU layer +#define NHL 4 // Neo’s software layer 4 rebuilt in Hardware + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* Layer 0: default + * ┌───────┬─────┬─────┬─────┬─────┬─────┬─────┐ ┌─────┬─────┬─────┬─────┬─────┬─────┬───────┐ + * │ TAB │ 1 │ 2 │ 3 │ 4 │ 5 │ ` │ │ ´ │ 6 │ 7 │ 8 │ 9 │ 0 │ BKSPC │ + * ├───────┼─────┼─────┼─────┼─────┼─────┼─────┤ ├─────┼─────┼─────┼─────┼─────┼─────┼───────┤ + * │ Y │ X │ V │ L │ C │ W │ HOM │ │ END │ K │ H │ G │ F │ Q │ ß │ + * ├───────┼─────┼─────┼─────╆─────╅─────┤ E │ │ ├─────╆─────╅─────┼─────┼─────┼───────┤ + * │ Mod3 │ U │ I │ A │ E │ O ├─────┤ ├─────┤ S │ N │ R │ T │ D │ Mod3 │ + * ├───────┼─────┼─────┼─────╄─────╃─────┤ TL2 │ │ TL3 ├─────╄─────╃─────┼─────┼─────┼───────┤ + * │ LSHFT │ Ü │ Ö │ Ä │ P │ Z │ │ │ │ B │ M │ , │ . │ J │ Shift │ + * └─┬─────┼─────┼─────┼─────┼─────┼─────┴─────┘ └─────┴─────┼─────┼─────┼─────┼─────┼─────┬─┘ + * │ CTL │ ALT │ MO1 │ Win │ Mod4│ │ Mod4│ Win │ MO1 │ Alt │ CTL │ + * └─────┴─────┴─────┴─────┴─────┘ ┌─────┬─────┐ ┌─────┬─────┐ └─────┴─────┴─────┴─────┴─────┘ + * │ ← │ ↑ │ │ ↓ │ → │ + * ┌─────┼─────┼─────┤ ├─────┼─────┼─────┐ + * │ │ │ ─ │ │ ─ │ │ │ + * │ SPC │ RTN ├─────┤ ├─────┤ RTN │ SPC │ + * │ │ │ HYP │ │ MEH │ │ │ + * └─────┴─────┴─────┘ └─────┴─────┴─────┘ + */ +[BASE] = KEYMAP( + // left hand + KC_TAB, KC_1, KC_2, KC_3, KC_4, KC_5, KC_EQL, + NEO_Y, NEO_X, NEO_V, NEO_L, NEO_C, NEO_W, KC_HOME, + NEO_L1_L, NEO_U, NEO_I, NEO_A, NEO_E, NEO_O, + KC_LSFT, NEO_UE, NEO_OE, NEO_AE, NEO_P, NEO_Z, TG(PMQ), + KC_LCTL, KC_LALT,MO(FMU),KC_LGUI,NEO_L2_L, + KC_LEFT, KC_UP, + KC_MINS, + KC_SPC, KC_ENT, ALL_T(KC_NO), + // right hand + DE_ACUT, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, + KC_END, NEO_K, NEO_H, NEO_G, NEO_F, NEO_Q, NEO_SS, + NEO_S, NEO_N, NEO_R, NEO_T, NEO_D, NEO_L1_R, + TG(PMN), NEO_B, NEO_M, KC_COMM,KC_DOT, NEO_J, KC_RSFT, + NEO_L2_R,KC_RGUI,MO(FMU),KC_RALT,KC_RCTL, + KC_DOWN, KC_RGHT, + KC_MINS, + MEH_T(KC_NO),KC_ENT,KC_SPC + ), + +/* Layer 1: poor man’s QWERTZ + * based on kaimi’s layout + * ┌───────┬─────┬─────┬─────┬─────┬─────┬─────┐ ┌─────┬─────┬─────┬─────┬─────┬─────┬───────┐ + * │ TAB │ 1 │ 2 │ 3 │ 4 │ 5 │ ` │ │ ´ │ 6 │ 7 │ 8 │ 9 │ 0 │ BKSPC │ + * ├───────┼─────┼─────┼─────┼─────┼─────┼─────┤ ├─────┼─────┼─────┼─────┼─────┼─────┼───────┤ + * │ C │ P │ T │ F │ K │ L │ HOM │ │ END │ B │ A │ S │ G │ V │ Y │ + * ├───────┼─────┼─────┼─────╆─────╅─────┤ E │ │ ├─────╆─────╅─────┼─────┼─────┼───────┤ + * │ Mod3 │ D │ H │ Ö │ O │ I ├─────┤ ├─────┤ U │ - │ Z │ E │ X │ Mod3 │ + * ├───────┼─────┼─────┼─────╄─────╃─────┤(TL2)│ │(TL3)├─────╄─────╃─────┼─────┼─────┼───────┤ + * │ LSHFT │ Ä │ Q │ R │ W │ N │ │ │ │ J │ M │ , │ . │ ẞ │ Shift │ + * └─┬─────┼─────┼─────┼─────┼─────┼─────┴─────┘ └─────┴─────┼─────┼─────┼─────┼─────┼─────┬─┘ + * │ CTL │ ALT │ MO1 │ Win │ MO4 │ │ M04 │ Win │ MO1 │ Alt │ CTL │ + * └─────┴─────┴─────┴─────┴─────┘ ┌─────┬─────┐ ┌─────┬─────┐ └─────┴─────┴─────┴─────┴─────┘ + * │ ← │ ↑ │ │ ↓ │ → │ + * ┌─────┼─────┼─────┤ ├─────┼─────┼─────┐ + * │ │ │ ─ │ │ ─ │ │ │ + * │ SPC │ RTN ├─────┤ ├─────┤ RTN │ SPC │ + * │ │ │ HYP │ │ MEH │ │ │ + * └─────┴─────┴─────┘ └─────┴─────┴─────┘ + */ +[PMQ] = KEYMAP( + // left hand + KC_TAB, KC_1, KC_2, KC_3, KC_4, KC_5, KC_EQL, + DE_C, DE_P, DE_T, DE_F, DE_K, DE_L, KC_HOME, + NEO_L1_L, DE_D, DE_H, DE_OE, DE_O, DE_I, + KC_LSFT, DE_AE, DE_Q, DE_R, DE_W, DE_N, KC_TRNS, + KC_LCTL, KC_LALT,MO(FMU),KC_LGUI,MO(NHL), + KC_LEFT, KC_UP, + KC_MINS, + KC_SPC, KC_ENT, ALL_T(KC_NO), + // right hand + DE_ACUT, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, + KC_END, DE_B, DE_A, DE_S, DE_G, DE_V, DE_Y, + DE_U, DE_MINS,DE_Z, DE_E, DE_X, NEO_L1_R, + KC_TRNS, DE_J, DE_M, DE_COMM,DE_DOT, DE_SS, KC_RSFT, + MO(NHL),KC_RGUI,MO(FMU),KC_RALT,KC_RCTL, + KC_DOWN, KC_RGHT, + KC_MINS, + MEH_T(KC_NO),KC_ENT,KC_SPC + ), + +/* Layer 2: poor man’s Neo + * based on kaimi’s layout + * ┌───────┬─────┬─────┬─────┬─────┬─────┬─────┐ ┌─────┬─────┬─────┬─────┬─────┬─────┬───────┐ + * │ TAB │ 1 │ 2 │ 3 │ 4 │ 5 │ ` │ │ ´ │ 6 │ 7 │ 8 │ 9 │ 0 │ BKSPC │ + * ├───────┼─────┼─────┼─────┼─────┼─────┼─────┤ ├─────┼─────┼─────┼─────┼─────┼─────┼───────┤ + * │ Y │ X │ V │ L │ C │ W │ HOM │ │ END │ K │ H │ G │ F │ Q │ ß │ + * ├───────┼─────┼─────┼─────╆─────╅─────┤ E │ │ ├─────╆─────╅─────┼─────┼─────┼───────┤ + * │ Mod3 │ U │ I │ A │ E │ O ├─────┤ ├─────┤ S │ N │ R │ T │ D │ Mod3 │ + * ├───────┼─────┼─────┼─────╄─────╃─────┤(TL2)│ │(TL3)├─────╄─────╃─────┼─────┼─────┼───────┤ + * │ LSHFT │ Ü │ Ö │ Ä │ P │ Z │ │ │ │ B │ M │ , │ . │ J │ Shift │ + * └─┬─────┼─────┼─────┼─────┼─────┼─────┴─────┘ └─────┴─────┼─────┼─────┼─────┼─────┼─────┬─┘ + * │ CTL │ ALT │ MO1 │ Win │ MO4 │ │ M04 │ Win │ MO1 │ Alt │ CTL │ + * └─────┴─────┴─────┴─────┴─────┘ ┌─────┬─────┐ ┌─────┬─────┐ └─────┴─────┴─────┴─────┴─────┘ + * │ ← │ ↑ │ │ ↓ │ → │ + * ┌─────┼─────┼─────┤ ├─────┼─────┼─────┐ + * │ │ │ ─ │ │ ─ │ │ │ + * │ SPC │ RTN ├─────┤ ├─────┤ RTN │ SPC │ + * │ │ │ HYP │ │ MEH │ │ │ + * └─────┴─────┴─────┘ └─────┴─────┴─────┘ + */ +[PMN] = KEYMAP( + KC_TAB, KC_1, KC_2, KC_3, KC_4, KC_5, KC_EQL, + DE_Y, DE_X, DE_V, DE_L, DE_C, DE_W, KC_HOME, + KC_NO, DE_U, DE_I, DE_A, DE_E, DE_O, + KC_LSFT, DE_UE, DE_OE, DE_AE, DE_P, DE_Z, KC_TRNS, + KC_LCTL, KC_LALT,MO(FMU),KC_LGUI,MO(NHL), + KC_LEFT, KC_UP, + KC_MINS, + KC_SPC, KC_ENT, ALL_T(KC_NO), + // right hand + DE_ACUT, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, + KC_END, DE_K, DE_H, DE_G, DE_F, DE_Q, DE_SS, + DE_S, DE_N, DE_R, DE_T, DE_D, KC_NO, + KC_TRNS, DE_B, DE_M, KC_COMM,KC_DOT, DE_J, KC_RSFT, + MO(NHL),KC_RGUI,MO(FMU),KC_RALT,KC_RCTL, + KC_DOWN, KC_RGHT, + KC_MINS, + MEH_T(KC_NO),KC_ENT,KC_SPC + ), + +/* Layer 3: F-keys, Mouse and Unicode + * ┌───────┬─────┬─────┬─────┬─────┬─────┬─────┐ ┌─────┬─────┬─────┬─────┬─────┬─────┬───────┐ + * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ + * ├───────┼─────┼─────┼─────┼─────┼─────┼─────┤ ├─────┼─────┼─────┼─────┼─────┼─────┼───────┤ + * │ │ │ │ │ ✕ │ │ │ │ │ │ F9 │ F10 │ F11 │ F12 │ │ + * ├───────┼─────┼─────┼─────╆─────╅─────┤ │ │ ├─────╆─────╅─────┼─────┼─────┼───────┤ + * │ │ │ │ │ ✓ │ ├─────┤ ├─────┤ │ F5 │ F6 │ F7 │ F8 │ │ + * ├───────┼─────┼─────┼─────╄─────╃─────┤ │ │ ├─────╄─────╃─────┼─────┼─────┼───────┤ + * │ │ │ │ │ │ │ │ │ │ │ F1 │ F2 │ F3 │ F4 │ │ + * └─┬─────┼─────┼─────┼─────┼─────┼─────┴─────┘ └─────┴─────┼─────┼─────┼─────┼─────┼─────┬─┘ + * │ │ │(MO1)│ │ │ │ │ │(MO1)│ │ │ + * └─────┴─────┴─────┴─────┴─────┘ ┌─────┬─────┐ ┌─────┬─────┐ └─────┴─────┴─────┴─────┴─────┘ + * │ Ms← │ Ms↑ │ │ Ms↓ │ Ms→ │ + * ┌─────┼─────┼─────┤ ├─────┼─────┼─────┐ + * │ │ │ MLC │ │ MRC │ │ │ + * │ │ ├─────┤ ├─────┤ │ │ + * │ │ │ │ │ │ │ │ + * └─────┴─────┴─────┘ └─────┴─────┴─────┘ + */ +[FMU] = KEYMAP( + // left hand + KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,UC(0x2713),KC_TRNS,KC_TRNS, + KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,UC(0x2715),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_MS_L, KC_MS_U, + KC_BTN1, + 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_F9, KC_F10, KC_F11, KC_F12, KC_TRNS, + KC_TRNS,KC_F5, KC_F6, KC_F7, KC_F8, KC_TRNS, + KC_TRNS, KC_TRNS,KC_F1, KC_F2, KC_F3, KC_F4, KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_MS_D, KC_MS_R, + KC_BTN2, + KC_TRNS, KC_TRNS,KC_TRNS + ), + +/* Layer 4: Neo’s software layer 4 rebuilt in Hardware + * based on kaimi’s layout + * ┌───────┬─────┬─────┬─────┬─────┬─────┬─────┐ ┌─────┬─────┬─────┬─────┬─────┬─────┬───────┐ + * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ + * ├───────┼─────┼─────┼─────┼─────┼─────┼─────┤ ├─────┼─────┼─────┼─────┼─────┼─────┼───────┤ + * │ │ PgUp│ BSpc│ ↑ │ Del │ PgDn│ │ │ │ │ 7 │ 8 │ 9 │ + │ − │ + * ├───────┼─────┼─────┼─────╆─────╅─────┤ │ │ ├─────╆─────╅─────┼─────┼─────┼───────┤ + * │ │ Home│ ← │ ↓ │ → │ End ├─────┤ ├─────┤ │ 4 │ 5 │ 6 │ , │ . │ + * ├───────┼─────┼─────┼─────╄─────╃─────┤(TL2)│ │(TL3)├─────╄─────╃─────┼─────┼─────┼───────┤ + * │ │ Esc │ Tab │ Ins │ Ret │ Undo│ │ │ │ │ 1 │ 2 │ 3 │ │ │ + * └─┬─────┼─────┼─────┼─────┼─────┼─────┴─────┘ └─────┴─────┼─────┼─────┼─────┼─────┼─────┬─┘ + * │ │ │(MO1)│ │(MO4)│ │(MO4)│ │(MO1)│ │ │ + * └─────┴─────┴─────┴─────┴─────┘ ┌─────┬─────┐ ┌─────┬─────┐ └─────┴─────┴─────┴─────┴─────┘ + * │ │ │ │ │ │ + * ┌─────┼─────┼─────┤ ├─────┼─────┼─────┐ + * │ │ │ │ │ │ │ │ + * │ │ ├─────┤ ├─────┤ │ │ + * │ │ │ │ │ │ │ │ + * └─────┴─────┴─────┘ └─────┴─────┴─────┘ + */ +[NHL] = KEYMAP( + // left hand + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_PGUP,KC_BSPC,KC_UP, KC_DELT,KC_PGDN,KC_NO, + KC_NO, KC_HOME,KC_LEFT,KC_DOWN,KC_RGHT,KC_END, + KC_NO, KC_ESC, KC_TAB, KC_INS, KC_ENT, KC_UNDO,KC_TRNS, + KC_NO, KC_NO, KC_TRNS,KC_NO, KC_TRNS, + KC_NO, KC_NO, + KC_NO, + KC_NO, KC_NO, KC_NO, + // right hand + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_7, KC_8, KC_9, DE_PLUS,DE_MINS, + KC_NO, KC_4, KC_5, KC_6, KC_COMM,KC_DOT, + KC_TRNS, KC_NO, KC_1, KC_2, KC_3, KC_NO, KC_NO, + KC_TRNS,KC_NO, KC_TRNS,KC_NO, KC_NO, + KC_NO, KC_NO, + KC_NO, + KC_NO, KC_NO, KC_NO + ), +}; + +const uint16_t PROGMEM fn_actions[] = { + [BASE] = ACTION_FUNCTION(BASE), + [PMQ] = ACTION_FUNCTION(PMQ), + [PMN] = ACTION_FUNCTION(PMN), + [FMU] = ACTION_LAYER_TAP_TOGGLE(FMU), + [NHL] = ACTION_LAYER_TAP_TOGGLE(NHL) +}; + + +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) { + case FMU: + ergodox_right_led_1_on(); + break; + case PMQ: + ergodox_right_led_2_on(); + break; + case PMN: + ergodox_right_led_3_on(); + break; + default: + ergodox_board_led_off(); + break; + } + +}; diff --git a/keyboards/ergodox_ez/keymaps/coderkun_neo2/readme.md b/keyboards/ergodox_ez/keymaps/coderkun_neo2/readme.md new file mode 100644 index 0000000000..2a4d3a535b --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/coderkun_neo2/readme.md @@ -0,0 +1,31 @@ +# coderkun’s Neo2 layout for the ErgoDox EZ + +The idea of this layout is to use it for [Neo2](http://www.neo-layout.org) but also provide layers to use QWERTZ with activated Neo driver and to use (basic) Neo when no driver is available (standard QWERTZ driver is active) (e. g. on other computers, in virtual machines) and to make heavily use of thumb keys. + +The main goal of the default layer is to provide a complete symmetric layout with each modifier equally placed for both hands (mirror, of course). + +It also features a layer for additional keys like F-keys (F1 – F12), some mouse keys and (hopefully in the near future) some useful Unicode symbols. + + +## Layers + +0. Default layer for Neo2 +1. Poor man’s QWERTZ +2. Poor man’s Neo +3. F-keys, mouse keys und Unicode symbols +4. Neo’s software layers 4 rebuilt in hardware + + +## Build + +1. Enable Unicode in Makefile + + ``` + UNICODE_ENABLE = yes + ``` +2. Build as usual + + ``` + make clean + make KEYMAP=coderkun_neo2 + ``` diff --git a/keyboards/ergodox_ez/keymaps/colemak/compiled.hex b/keyboards/ergodox_ez/keymaps/colemak/compiled.hex new file mode 100644 index 0000000000..e3ce9a68f9 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/colemak/compiled.hex @@ -0,0 +1,1158 @@ +:100000000C947A020C94BE020C94BE020C94BE02B4 +:100010000C94BE020C94BE020C94BE020C94BE0260 +:100020000C94BE020C94BE020C94620D0C94340E1F +:100030000C94BE020C94BE020C94BE020C94BE0240 +:100040000C94BE020C943E220C94BE020C94BE0290 +:100050000C94BE020C94D11B0C94BE020C94BE02F4 +:100060000C94BE020C94BE020C94BE020C94BE0210 +:100070000C94BE020C94BE020C94BE020C94BE0200 +:100080000C94BE020C94BE020C94BE020C94BE02F0 +:100090000C94BE020C94BE020C94BE020C94BE02E0 +:1000A0000C94BE020C94BE020C94BE02A10EC30EB0 +:1000B000B10FC30EB10F080F2B0FB10F800F930FAD +:1000C0006212621291129112C712E71218141814D8 +:1000D000F2121814A213A2130914181418141214EB +:1000E000AF13AF13AF13AF13AF13AF13AF13AF1300 +:1000F000AF13AF13AF13AF13AF13AF13AF13AF13F0 +:10010000C113CE13D513DC13E6130000F0A12E00AB +:100110004C002A00E100354100001E0014000400DC +:100120001D7134004D001F001A0015001B00E10472 +:100130002A00200009001600060050002C002100B3 +:100140001300170019004F004A0022000A000700A0 +:10015000050000006574500001540000007F00009D +:10016000E3004F000154000000770000E20023008C +:100170000D000B000E000000297124000F0011007B +:10018000100052004B0025001800080036005100F6 +:10019000280026001C000C0037002F002B00270031 +:1001A00033001242387130004E002D00310034000F +:1001B000E500C10000000100010001000100010094 +:1001C00000003A001E0220022202010001003B0052 +:1001D0001F0221022302010001003C002F0226021F +:1001E0002F00010001003D00300227023000010015 +:1001F00001003E003102350035020000010001001F +:1002000001000000010000000100010001000000E9 +:100210000100000001003F005200510024020000D4 +:1002200001004000240021001E00010001004100E7 +:10023000250022001F003700010042002600230095 +:10024000200027000100430025022E0231002E006D +:100250000100440045000100010001000000010010 +:100260000100010001000100000001000100010087 +:1002700001000100010001000100F2000100010085 +:1002800001000100F000F1000100F4000100010094 +:100290000100F3000100F500010001000100010070 +:1002A0000100000001000100010000000100000049 +:1002B0000100010001000000010000000100010038 +:1002C0000100010001000000010001000100010027 +:1002D0000100A9000100010001000100AC00AA001A +:1002E000B600010001000100AB00A8000100010000 +:1002F0000100010001000100010001000100AE0049 +:1003000001000100000016034500720067006F0045 +:1003100044006F007800200045005A0000001603DA +:100320004500720067006F0044006F0078002000F5 +:1003300045005A0000000403090409026D0004018D +:1003400000A0FA09040000010301010009211101C4 +:100350000001223F000705810308000A090401008B +:100360000103010200092111010001224D000705CE +:10037000820308000A0904020001030000000921A9 +:10038000110100012236000705830308000A090451 +:1003900003000103000000092111010001223900BE +:1003A000070584031000011201100100000008ED90 +:1003B000FE071301000102000105010906A1010564 +:1003C0000719E029E7150025019508750181020547 +:1003D000081901290595057501910295017503918B +:1003E0000105071900297715002501957875018108 +:1003F00002C005010980A101850216010026B7008F +:100400001A01002AB700751095018100C0050C097A +:1004100001A1018503160100269C021A01002A9CF5 +:1004200002751095018100C005010902A1010901B1 +:10043000A10005091901290515002501950575017A +:10044000810295017503810105010930093115818A +:10045000257F95027508810609381581257F95014C +:1004600075088106050C0A38021581257F950175EE +:10047000088106C0C005010906A101050719E02988 +:10048000E715002501950875018102950175088120 +:100490000105081901290595057501910295017558 +:1004A0000391010507190029FF150025FF95067521 +:1004B000088100C0000000000000000000000001F2 +:1004C0000204060A0F17202C3A4A5D71879DB3C7B4 +:1004D000DAE9F5FCFFFCF5E9DAC7B39D87715D4AFF +:1004E0003A2C20170F0A0604020100000000000049 +:1004F0000000000011241FBECFEFDAE0DEBFCDBF49 +:1005000004B603FE24C08091FB019091FC01A091F0 +:10051000FD01B091FE018730904BA740B04BB9F47C +:100520001092FB011092FC011092FD011092FE014D +:1005300014BE84B7877F84BF88E10FB6F894809398 +:100540006000109260000FBEE0E0FFE3099511E04B +:10055000A0E0B1E0EAE0F8E402C005900D92A43317 +:10056000B107D9F711E0A4E3B1E001C01D92AB3FA0 +:10057000B107E1F70E94A60A0C9403240C94000032 +:100580001092B9008AE08093B800089594EA90939D +:10059000BC009091BC0097FFFCCF9091B900987F70 +:1005A000983021F0903111F081E008958093BB00E4 +:1005B00084E88093BC008091BC0087FFFCCF8091D1 +:1005C000B900887F883111F0803471F780E0089598 +:1005D00084E98093BC008091BC0084FDFCCF089529 +:1005E0008093BB0084E88093BC008091BC0087FFAF +:1005F000FCCF9091B900987F81E0983209F480E0B7 +:10060000089584E88093BC008091BC0087FFFCCFF4 +:100610008091BB00089580910101811115C080E493 +:100620000E94C6028093010181110CC082E10E94E8 +:10063000F00280930101811105C08FEF0E94F0024A +:10064000809301010E94E80284B1807F84B985B162 +:10065000807F85B98AB1837F8AB98BB1837F8BB95B +:100660003E98469808950E94C604809301010E9416 +:100670000B0380B38C7080BB81B3836F81BBA5E318 +:10068000B1E0E3E4F1E08EE08E0F11921D928E1343 +:10069000FCCF0C94B004BF92CF92DF92EF92FF9206 +:1006A0000F931F93CF93DF9380910101882379F0FB +:1006B000809134018F5F80933401811108C00E94C2 +:1006C000C60480930101811102C00E94580405E311 +:1006D00011E0C0E0D0E0DD24D39482E0C82EEE2407 +:1006E000E394F12CC730D10500F58091010181110F +:1006F00064C080E40E94C60280930101811112C08F +:1007000082E10E94F0028093010181110BC0C701B8 +:100710000C2E01C0880F0A94EAF780950E94F0021F +:10072000809301010E94E80248C0CA30A1F028F479 +:10073000C83059F0C93061F005C0CC3089F070F094 +:10074000CD3089F0209A289810C0219A29980DC0A0 +:10075000229A2A980AC0239A2B9807C0529A01C05D +:10076000539A5B9802C03E9A469890EA9A95F1F7A0 +:100770009FB1799902C082E001C080E091709D250F +:10078000982B7C9902C084E001C080E0892B7D9980 +:1007900002C038E001C030E0832B7E9902C020E126 +:1007A00001C020E0822B9FB19095991F9927991F36 +:1007B0009295990F907E892B0FC080910101811134 +:1007C00049C080E40E94C60280930101882379F128 +:1007D000B12C0E94E8028B2DF8019081981719F036 +:1007E0008083C09200010E940B0321960F5F1F4F70 +:1007F000CE30D10509F076CF80910001882361F1D8 +:10080000815080930001882339F08FE99FE00197A0 +:10081000F1F700C0000020C0A3E4B1E0E5E3F1E09F +:10082000CF01825F91919D938E13FCCF15C083E120 +:100830000E94F002809301018111CACF81E40E94DD +:10084000C602809301018111C3CF0E940103B82E1B +:10085000B094BFCF80E0C0CF0E94560481E0DF910A +:10086000CF911F910F91FF90EF90DF90CF90BF90AD +:100870000895E82FF0E0ED5BFE4F80810895089524 +:100880000F931F93CF93DF93C3E4D1E010E00C2FBD +:10089000025F899190E00E94F71A180F0C13F9CFAC +:1008A000812FDF91CF911F910F9108950C94260510 +:1008B00056985E9825982D9826982E9827982F98C8 +:1008C0008FEF90E0909389008093880090938B0045 +:1008D00080938A0090938D0080938C00259A2D9AA6 +:1008E0002FEF80E792E0215080409040E1F700C078 +:1008F0000000269A2E9A2FEF80E792E02150804048 +:100900009040E1F700C00000279A2F9A2FEF80E770 +:1009100092E0215080409040E1F700C0000025980F +:100920002D982FEF80E792E0215080409040E1F732 +:1009300000C0000026982E982FEF80E792E021500B +:1009400080409040E1F700C0000027982F9856980B +:100950005E9825982D9826982E9827982F98089578 +:1009600089EA8093800089E08093810024982C9804 +:100970003F988AB18F748AB96E98479A8BB1806B11 +:100980008BB9769A0E9458040C94250580E28093D6 +:1009900001018091510181110EC00E94C00281E0CD +:1009A000809351012FEF83ED90E3215080409040E0 +:1009B000E1F700C0000080E40E94C60280930101BC +:1009C00081112EC00E94F00280930101811128C084 +:1009D0000E94F00280930101811122C08FE30E94E6 +:1009E000F0028093010181111BC00E94E80280E4A3 +:1009F0000E94C60280930101811112C08CE00E9406 +:100A0000F0028093010181110BC00E94F0028093DB +:100A10000101811105C08FE30E94F0028093010162 +:100A20000E94E80280910101089561110BC0FC0150 +:100A30008281882321F085EE0E94061103C085EE95 +:100A40000E94CE1180E090E0089508956091BD016C +:100A50007091BE018091BF019091C0010E94031B63 +:100A600056985E9825982D9826982E9827982F9816 +:100A7000813019F0823021F00895259A2D9A089539 +:100A8000269A2E9A089581E0089581E008950C94A5 +:100A9000450508950F931F93CF93DF938C01FC01BD +:100AA000C081D181CE010E947C19BE010E94F30554 +:100AB000EC01B8010E944705882309F48DC0F801B4 +:100AC0008281882309F44AC080915D0181111FC091 +:100AD000C431F0E5DF0709F051C00E94490581E00B +:100AE00080935D010E949B1B90935C0180935B014E +:100AF0001092540110925601109255011092580113 +:100B00001092570110925A011092590165C08091BC +:100B10005B0190915C010E94A71B883C910570F4D9 +:100B200080915401E82FF0E0EE0FFF1FEB5AFE4FCB +:100B3000D183C0838F5F809354014EC0C43880E559 +:100B4000D80721F0C538D04501F13AC0F8018281BB +:100B5000882341F01092520182E01EC0C438E0E5C3 +:100B6000DE0759F580915201811106C086E20E948C +:100B7000061186E20E94CE1182E01CC0C438F0E566 +:100B8000DF0741F3C538D045D9F4F80182818823C5 +:100B900031F01092530180E20E941D121DC080911D +:100BA0005301811106C087E20E94061187E20E946C +:100BB000CE1180E20E9424120FC0C538D04529F31F +:100BC00081E08093520180935301C801DF91CF915E +:100BD0001F910F910C94430580E0DF91CF911F91FD +:100BE0000F910895089596E0799FF001112494E5FE +:100BF000899FE00DF11D1124E60FF11DEE0FFF1F7F +:100C0000E25FFE4F859194910895880F991FFC0132 +:100C1000E657F040859194910895880F991FFC0143 +:100C2000E65FFE4F8591949108950F931F93CF93A4 +:100C3000DF93EC01811520E3920750F5C11580E2A6 +:100C4000D80708F0C3C0CB3BD10590F4C83AD10512 +:100C500008F06AC0C53AD10508F05BC0C430D105C0 +:100C600008F0D0C1219709F0CAC101E010E00AC222 +:100C7000CF3FD10511F008F0C5C1C03FD10508F044 +:100C8000A2C0CE01805E9109089708F4BBC1B7C12C +:100C9000C13090E5D90709F4A2C020F5C0318FE436 +:100CA000D80770F4C11590E4D90708F094C0C115B5 +:100CB00021E3D20708F0A3C1DD278E01106CE2C149 +:100CC000C115D04509F09BC10E9483148FEF94E3B6 +:100CD0002CE0815090402040E1F700C000000E94CD +:100CE000F61BD0C1C11597E5D90758F4C03121E5ED +:100CF000D20708F01CC1C43180E5D80708F475C0DC +:100D00007EC1CE0190578115904108F078C1DF7007 +:100D100073C1C53AD10509F477C1C63AD10509F0C6 +:100D200076C102E810E4AEC1C83AD10509F472C137 +:100D3000C93AD10509F471C1CA3AD10509F470C1A3 +:100D4000CB3AD10509F46FC1CC3AD10509F46EC193 +:100D5000CD3AD10509F46DC1C03BD10509F46CC190 +:100D6000CE3AD10509F46BC1CF3AD10509F46AC175 +:100D7000C13BD10509F469C1C23BD10509F468C181 +:100D8000C33BD10509F467C1C43BD10509F466C171 +:100D9000C53BD10509F465C1C63BD10509F464C161 +:100DA000C73BD10509F463C1C83BD10509F462C151 +:100DB000C93BD10509F461C1CA3BD10509F460C141 +:100DC00000E014E45FC18E0110655CC1CE019F702C +:100DD0000E940D0658C1DF708E01106A53C18091C8 +:100DE000DA0181608093DA014DC10E949B1D81115F +:100DF00002C00E94811D0E94B81D90E09093FB01EB +:100E00008093FA01C23080E5D80721F48091FA017D +:100E1000816086C0C43090E5D90721F48091FA0141 +:100E200082607EC0C63020E5D20721F48091FA01AD +:100E3000846076C0C83080E5D80719F48091FA0143 +:100E400027C0CA3090E5D90721F48091FA0180616A +:100E500067C0CC3020E5D20721F48091FA0180628E +:100E60005FC0CE3080E5D80721F48091FA0180641C +:100E700057C0C03190E5D90721F48091FA0180680C +:100E80004FC0C23120E5D20729F48091FA01846075 +:100E9000886046C0C33080E5D80721F48091FA010C +:100EA0008E7F3EC0C53090E5D90721F48091FA01CC +:100EB0008D7F36C0C73020E5D20721F48091FA013A +:100EC0008B7F2EC0C93080E5D80719F48091FA01D4 +:100ED00026C0CB3090E5D90721F48091FA018F7EAE +:100EE0001FC0CD3020E5D20721F48091FA018F7D1B +:100EF00017C0CF3080E5D80721F48091FA018F7BAD +:100F00000FC0C13190E5D90721F48091FA018F77A4 +:100F100007C0C331D04531F48091FA018B7F877FC0 +:100F20008093FA018091FA010E94BC1DABC08D2F05 +:100F300099278F70992781309105D9F49E012370EC +:100F4000332702C0880F991F2A95E2F79C688E010B +:100F500044E0000F111F4A95E1F700271370802B22 +:100F6000912B53E0CC0FDD1F5A95E1F7C076DD27BA +:100F70002FC08230910531F4DC2FCC278E01016F18 +:100F8000106A80C08330910569F4CE01837099277F +:100F900001E010E002C0000F111F8A95E2F7C801BE +:100FA0009C680FC084309105B9F4CE0183709927F5 +:100FB00001E010E002C0000F111F8A95E2F7C8019E +:100FC0009A6823E0CC0FDD1F2A95E1F7C07ED77029 +:100FD0008C010C2B1D2B56C08530910531F4DC2F74 +:100FE000CC278E01046F106A4DC0069709F04AC0E5 +:100FF000CF71DD27DC2FCC278E01106243C000E0CB +:1010000010E040C08E013EC001E810E43BC003E8A0 +:1010100010E438C002EE14E435C009EE14E432C026 +:101020000AEE14E42FC005EB14E42CC006EB14E424 +:1010300029C007EB14E426C00CEC14E423C00DEC2B +:1010400014E420C003E815E41DC00AE815E41AC042 +:1010500002E915E417C004E915E414C001E216E43E +:1010600011C003E216E40EC004E216E40BC005E270 +:1010700016E408C006E216E405C007E216E402C062 +:101080000AE216E4C801DF91CF911F910F910895F4 +:1010900096E0799FF001112494E5899FE00DF11D00 +:1010A0001124E60FF11DEE0FFF1FE25FFE4F859149 +:1010B0009491803E9105E0F4803C910558F5813390 +:1010C000910509F46FC048F48932910509F463C0B1 +:1010D0008A32910509F46DC072C089339105E9F037 +:1010E00082389105D1F08533910509F44DC067C070 +:1010F000833E910581F138F4803E9105B9F0823E3E +:101100009105D9F05CC0863E910561F1873E91055D +:10111000A1F155C00E94050608952091FA0120FD15 +:1011200002C021FF4CC080EE90E049C08091FA01DE +:1011300080FFF9CF89E390E042C08091FA0182FFFD +:101140000EC08091FA0184FF03C080E090E037C0B8 +:1011500083EE90E034C08091FA0182FFF2CF82EEFC +:1011600090E02DC08091FA0183FF0BC08091FA01BD +:1011700084FDEBCF87EE90E022C08091FA0183FFDF +:10118000F5CF86EE90E01BC08091FA0185FF07C085 +:1011900089E290E014C08091FA0185FFF9CF85E3E0 +:1011A00090E00DC08091FA0186FF07C08AE290E0CE +:1011B00006C08091FA0186FFF9CF81E390E00E949A +:1011C0001506089508950C94E20880916E01089523 +:1011D000CF93DF9300D01F92CDB7DEB79C018091F3 +:1011E000F101843019F593E099833B832A8390932E +:1011F000E9008FEF9091E800815095FD06C095EDD4 +:101200009A95F1F700008111F5CF8091E80085FFF4 +:101210000DC040E050E063E070E0CE0101960E9416 +:10122000520B8091E8008E778093E8000F900F902A +:101230000F90DF91CF910895CF93DF9300D01F924D +:10124000CDB7DEB72091F101243021F522E02983CA +:101250009B838A8383E08093E9008FEF9091E8007D +:10126000815095FD06C095ED9A95F1F7000081112A +:10127000F5CF8091E80085FF0DC040E050E063E0CD +:1012800070E0CE0101960E94520B8091E8008E77AB +:101290008093E8000F900F900F90DF91CF91089509 +:1012A0002091F1012430F1F422E02093E9002FEFA6 +:1012B0003091E800215035FD06C035ED3A95F1F743 +:1012C00000002111F5CF2091E80025FF0BC040E080 +:1012D00050E065E070E00E94520B8091E8008E774C +:1012E0008093E8000895CF93DF93EC019091F10192 +:1012F000943009F046C080910C018823D9F0809188 +:101300000D018823B9F09093E9008FEF9091E800E8 +:10131000815095FD06C095E19A95F1F70000811185 +:10132000F5CF8091E80085FF2CC040E050E060E1FF +:1013300070E017C081E08093E9008FEF9091E800A2 +:10134000815095FD06C095ED9A95F1F70000811149 +:10135000F5CF8091E80085FF14C040E050E068E0E0 +:1013600070E0CE010E94520B8091E8008E7780934E +:10137000E80080E1FE01AEE5B1E001900D928A95B2 +:10138000E1F7DF91CF9108958091F001811109C0BB +:101390000E94E70C0E94440D8091E20084608093DB +:1013A000E20008951092F001089508950C942B2204 +:1013B0000E948C1B0E9431220E94EA0F0C94E308C9 +:1013C00042E061EC81E00E94610C42E061EC82E06D +:1013D0000E94610C42E061EC83E00E94610C42E1FA +:1013E00061EC84E00C94610C8091F301833009F48A +:1013F00055C030F4813071F0823009F48EC0089508 +:101400008A3009F47AC08B3009F460C0893009F061 +:101410009CC020C08091F201813A09F096C0809171 +:10142000E800877F8093E8008091F6019091F701B2 +:10143000892B21F460E18EE591E003C060E080E05B +:1014400090E070E00E949D0B8091E8008B77809384 +:10145000E80008958091F201813209F076C0809110 +:10146000F6019091F701009719F0039709F06DC00C +:101470008091E800877F8093E8008091E80082FDFA +:1014800005C08091F1018111F8CF5FC08091F1001A +:1014900080936E018091E8008B7753C08091F201B8 +:1014A000813A09F052C08091F6019091F701892BA1 +:1014B00009F04BC08091E800877F8093E80080911D +:1014C000E80080FFFCCF80910C0136C08091F201D2 +:1014D0008132D9F58091F6019091F701892BA9F518 +:1014E0008091E800877F8093E8000E94960C8091AD +:1014F000F40180930C010C9483148091F2018132E9 +:1015000021F58091E800877F8093E8000E94960C87 +:101510008091F50180936F0108958091F201813AE5 +:10152000A1F48091E800877F8093E8008091E80033 +:1015300080FFFCCF80916F018093F1008091E800E3 +:101540008E778093E8000C94960C089584B7877F7B +:1015500084BF88E10FB6F894809360001092600019 +:101560000FBE90E080E80FB6F894809361009093EE +:1015700061000FBE0E9439100E94E70C0E94440DCA +:101580008091E20084608093E20078940E94CA0F08 +:101590000E943B1082E091E00E94E50F0E94192218 +:1015A0008091F101853069F40E94531B8091EF0115 +:1015B0008823B1F30E947E1B882391F30E943C0B89 +:1015C000EFCF0E944110ECCF292F33272330310574 +:1015D000C9F064F42130310581F02230310509F081 +:1015E00043C08DE690E02AE333E042C0213231056A +:1015F000F1F02232310541F137C082E190E027EA73 +:1016000033E036C099278130910541F08230910551 +:1016100041F0892B49F5E6E3F3E005C0EEE1F3E0A4 +:1016200002C0E6E0F3E0849190E09F0121C06430C5 +:10163000D8F4E62FF0E0EE0FFF1FEE5DFE4F2081A5 +:10164000318189E090E014C0643070F470E0FB01F7 +:10165000EE0FFF1FE65EFE4F20813181FB01EA5E47 +:10166000FE4F808190E004C080E090E020E030E018 +:10167000FA0131832083089580E189BD82E189BD2B +:1016800009B400FEFDCF8091D8008F7D8093D800F3 +:101690008091E00082608093E0008091E00081FD15 +:1016A000FCCF0895CF92DF92EF92FF920F931F939A +:1016B000CF93DF93EC018B016A010E94B50C81117D +:1016C00033C0C114D10439F0F60180819181081B27 +:1016D000190BC80FD91FE12CF12C0115110519F1B7 +:1016E0008091E80085FD16C08091E8008E77809398 +:1016F000E800C114D10449F0F60180819181E80E1F +:10170000F91EF182E08285E00FC00E94B50C8823AB +:1017100021F30AC089918093F10001501109FFEF74 +:10172000EF1AFF0ADACF80E0DF91CF911F910F917E +:10173000FF90EF90DF90CF9008952091F8013091C5 +:10174000F9012617370748F06115710539F4209122 +:10175000E8002E772093E80001C0B90140E0611550 +:101760007105A9F12091F101222309F443C025302C +:1017700009F442C02091E80023FD40C02091E80018 +:1017800022FD32C02091E80020FFE9CF4091F30014 +:101790002091F20030E0342BFC01CF01611571057E +:1017A00059F02830310540F481918093F100615067 +:1017B00071092F5F3F4FF1CF41E02830310509F02B +:1017C00040E02091E8002E772093E800C8CF411137 +:1017D000C9CF0AC08091F101882361F0853061F0A2 +:1017E0008091E80083FD0AC08091E80082FFF2CF7B +:1017F00080E0089582E0089583E0089581E00895EF +:101800002091F8013091F9012617370748F061154A +:10181000710539F42091E8002E772093E80001C08B +:10182000B901FC0120E06115710591F18091F10190 +:10183000882309F440C0853009F43FC08091E80056 +:1018400083FD3DC08091E80082FD2FC08091E800BB +:1018500080FFE9CF2091F3008091F20090E0922B7D +:101860006115710559F08830910540F42491209359 +:10187000F1003196615071090196F2CF21E008978D +:1018800009F020E08091E8008E778093E800CBCFCC +:101890002111CCCF0AC08091F101882361F08530FD +:1018A00061F08091E80083FD0AC08091E80082FF2A +:1018B000F2CF80E0089582E0089583E0089581E00A +:1018C0000895982F973058F59093E900981739F0BC +:1018D0007091EC002091ED005091F00003C0242F96 +:1018E000762F50E021FF19C03091EB003E7F3093FE +:1018F000EB003091ED003D7F3093ED003091EB0037 +:1019000031603093EB007093EC002093ED00509326 +:10191000F0002091EE0027FF07C09F5FD3CF8F70AC +:101920008093E90081E0089580E008958091F201BC +:1019300087FF11C08091E80082FD05C08091F10110 +:101940008111F8CF11C08091E8008B770BC0809196 +:10195000F101882349F08091E80080FFF8CF809161 +:10196000E8008E778093E80008952091E40030919C +:10197000E50095E64091EC00842F817040FF22C085 +:101980008091E80080FD1CC08091F101882391F0D6 +:10199000853091F08091EB0085FD10C04091E4000E +:1019A0005091E5004217530729F39A01915011F71E +:1019B00084E0089582E0089583E0089581E0089529 +:1019C00080E008954091E80042FFDECF08950E9434 +:1019D000550D0E945D0DE0EEF0E080818160808316 +:1019E000E8EDF0E080818F77808319BCA7EDB0E04F +:1019F0008C918E7F8C9380818F7E80831092F001FA +:101A000008950F931F93CF93DF930E94550D0E946B +:101A10005D0DC8EDD0E088818F77888388818068EC +:101A2000888388818F7D888319BC1092F101109280 +:101A3000ED011092EF011092EE0100EE10E0F801BE +:101A400080818B7F808388818160888342E060E031 +:101A500080E00E94610CE1EEF0E080818E7F808367 +:101A6000E2EEF0E080818160808380818860808305 +:101A7000F80180818E7F8083888180618883DF91F7 +:101A8000CF911F910F910895E8EDF0E080818F7E56 +:101A90008083E7EDF0E080818160808384E082BF15 +:101AA00081E08093F0010C94010DE8EDF0E080817D +:101AB0008E7F80831092E20008951092DA001092D7 +:101AC000E10008951F920F920FB60F9211242F93E9 +:101AD0003F934F935F936F937F938F939F93AF93B6 +:101AE000BF93EF93FF938091E10082FF0BC0809141 +:101AF000E20082FF07C08091E1008B7F8093E100CC +:101B00000E94C90F8091DA0080FF1FC08091D80029 +:101B100080FF1BC08091DA008E7F8093DA00809175 +:101B2000D90080FF0DC080E189BD82E189BD09B483 +:101B300000FEFDCF81E08093F1010E94C40905C041 +:101B400019BC1092F1010E94D2098091E10080FF3E +:101B500019C08091E20080FF15C08091E2008E7F65 +:101B60008093E2008091E20080618093E2008091A6 +:101B7000D80080628093D80019BC85E08093F10181 +:101B80000E94D6098091E10084FF30C08091E2007C +:101B900084FF2CC080E189BD82E189BD09B400FECB +:101BA000FDCF8091D8008F7D8093D8008091E10097 +:101BB0008F7E8093E1008091E2008F7E8093E2002F +:101BC0008091E20081608093E2008091ED018823A2 +:101BD00011F084E007C08091E30087FD02C081E03E +:101BE00001C083E08093F1010E94D8098091E10057 +:101BF00083FF29C08091E20083FF25C08091E1002E +:101C0000877F8093E10082E08093F1011092ED01E3 +:101C10008091E1008E7F8093E1008091E2008E7FD1 +:101C20008093E2008091E20080618093E20042E0D4 +:101C300060E080E00E94610C8091F00088608093F9 +:101C4000F0000E94D509FF91EF91BF91AF919F9154 +:101C50008F917F916F915F914F913F912F910F9055 +:101C60000FBE0F901F9018951F920F920FB60F92F4 +:101C700011242F933F934F935F936F937F938F9391 +:101C80009F93AF93BF93CF93DF93EF93FF93C09155 +:101C9000E900CF708091EC00D82FD17080FDD0E8A2 +:101CA0001092E9008091F000877F8093F000789493 +:101CB0000E94780E1092E9008091F0008860809375 +:101CC000F000CD2BCF70C093E900FF91EF91DF9131 +:101CD000CF91BF91AF919F918F917F916F915F91C4 +:101CE0004F913F912F910F900FBE0F901F9018951D +:101CF0001F93CF93DF93CDB7DEB7AA970FB6F894B3 +:101D0000DEBF0FBECDBFE2EFF1E088E08E0F909115 +:101D1000F10091938E13FBCF0E94F4098091E800AB +:101D200083FF1FC18091F2019091F301492F50E090 +:101D30004A30510508F015C1FA01EA5AFF4F0C94D8 +:101D4000B323803881F0823809F00BC18091F6010D +:101D50008F708093E9008091EB0085FB882780F9E4 +:101D60001092E90006C08091EE019091EF0191116F +:101D700082609091E800977F9093E8008093F10053 +:101D80001092F100C8C0282F2D7F09F0EAC08823E7 +:101D900019F0823061F0E5C08091F401813009F0E2 +:101DA000E0C0933009F080E08093EF012BC0809178 +:101DB000F401811127C08091F6018F7009F4D1C020 +:101DC0008093E9002091EB0020FF1CC0933021F4A8 +:101DD0008091EB00806214C09091EB009061909331 +:101DE000EB0021E030E0A90102C0440F551F8A95A5 +:101DF000E2F74093EA001092EA008091EB008860DD +:101E00008093EB001092E9008091E800877F86C004 +:101E10008111A7C01091F4011F778091E3008078B1 +:101E2000812B8093E3008091E800877F8093E80016 +:101E30000E94960C8091E80080FFFCCF8091E30027 +:101E400080688093E300111102C082E001C083E04A +:101E50008093F10186C08058823008F082C0809162 +:101E6000F4019091F5018C3D53E0950779F583E0FD +:101E70008A838AE289834FB7F894DE01139620E0C3 +:101E80003EE051E2E32FF0E050935700E49120FF51 +:101E900003C0E295EF703F5FEF708E2F90E0EA3065 +:101EA00010F0C79601C0C0968D939D932F5F24318B +:101EB00049F74FBF8091E800877F8093E8006AE28E +:101EC00070E0CE0101960E949D0B14C0AE014F5FE1 +:101ED0005F4F6091F6010E94E40ABC01009709F48B +:101EE00040C09091E800977F9093E80089819A81A3 +:101EF0000E94000C8091E8008B778093E80031C04D +:101F0000803879F58091E800877F8093E8008091A0 +:101F1000ED018093F1008091E8008E778093E800D6 +:101F20000E94960C1EC081111CC09091F401923049 +:101F3000C0F48091E800877F8093E8009093ED01E2 +:101F40000E94960C8091ED01811106C08091E30002 +:101F500087FD02C081E001C084E08093F1010E940E +:101F6000E0098091E80083FF0AC08091E800877F44 +:101F70008093E8008091EB0080628093EB00AA964A +:101F80000FB6F894DEBF0FBECDBFDF91CF911F918A +:101F900008950895CF938091F1018823A1F0C09115 +:101FA000E900CF709091EC00892F817090FD80E85E +:101FB000C82B1092E9008091E80083FD0E94780E02 +:101FC000CF70C093E900CF910895909375018093ED +:101FD00074010895E0917401F0917501309721F03A +:101FE0000190F081E02D099480E00895E091740162 +:101FF000F0917501309721F00280F381E02D099472 +:102000000895E0917401F0917501309721F00480FA +:10201000F581E02D099408952091720130917301AA +:102020008217930771F09093730180937201E0918E +:102030007401F0917501309721F00680F781E02D51 +:1020400009940895209170013091710182179307CE +:1020500071F09093710180937001E0917401F0919F +:102060007501309721F00084F185E02D09940895E1 +:1020700008950C9438100E94921B0E9433030C9414 +:10208000541C9F92AF92BF92CF92DF92EF92FF9239 +:102090000F931F93CF93DF9300D000D000D0CDB724 +:1020A000DEB70E944B030DE010E0AA24A394B12CEC +:1020B000902E802F0E943904980129583E4F6901C3 +:1020C000F901F080F826A1F40150110988F78FEF8B +:1020D00089838A831B820E949B1B8160782F9D834A +:1020E0008C8349815A816B818D810E94D8102FC0C9 +:1020F0009091DA0191FF04C08E830E943F048E818B +:1021000025E030E0A501022E01C0440F0A94EAF751 +:10211000E42E4F21C1F029839A828E2191E009F4A7 +:1021200090E09B830E949B1B8160782F9D838C8312 +:1021300049815A816B818D810E94D810F60180817E +:10214000E826E08204C021503109E0F6BDCF0E94AC +:102150003B1F109176010E94EA0F1817B9F00E94F8 +:10216000EA0F8093760126960FB6F894DEBF0FBE75 +:10217000CDBFDF91CF911F910F91FF90EF90DF9036 +:10218000CF90BF90AF909F900C94E30826960FB627 +:10219000F894DEBF0FBECDBFDF91CF911F910F919D +:1021A000FF90EF90DF90CF90BF90AF909F900895F9 +:1021B000CF93DF93CDB7DEB72B970FB6F894DEBF82 +:1021C0000FBECDBF4F83588769877A878B87DE0123 +:1021D000119686E0FD0111928A95E9F785E0FE01EE +:1021E000379601900D928A95E1F749815A816B816A +:1021F0007C818D819E810E9421172B960FB6F894C9 +:10220000DEBF0FBECDBFDF91CF910895CF9388235E +:1022100009F4C2C0C82F823859F40E94EA0F81FD28 +:10222000BBC089E30E94FB190E94C81A89E30CC055 +:10223000833879F40E94EA0F80FDAEC083E50E94E6 +:10224000FB190E94C81A83E50E943D1ACF910C9495 +:10225000C81A843859F40E94EA0F82FD9DC087E4B1 +:102260000E94FB190E94C81A87E4EECF8CEF8C0FF6 +:10227000813A48F48C2F0E947E2181118DC08C2FD1 +:102280000E94FB19E3CF80E28C0F883048F4C770BE +:1022900081E001C0880FCA95EAF70E94811AD6CF63 +:1022A0008BE58C0F833078F4C53A29F0C63A31F0CB +:1022B00083E890E005C081E890E002C082E890E009 +:1022C000CF910C940C1088E58C0F833108F064C01A +:1022D000C83A39F1C93A41F1CA3A49F1CB3A51F118 +:1022E000CC3A59F1CD3A61F1C03B69F1CE3A71F186 +:1022F000CF3A79F1C13B81F1C23B89F1C33B91F106 +:10230000C43B99F1C53BA1F1C63BA9F1C73BB1F173 +:10231000C83BB9F1C93BC1F1CA3BC9F180E090E0CB +:1023200038C082EE90E035C089EE90E032C08AEE8F +:1023300090E02FC085EB90E02CC086EB90E029C0A8 +:1023400087EB90E026C08CEC90E023C08DEC90E011 +:1023500020C083E891E01DC08AE891E01AC082E9BC +:1023600091E017C084E991E014C081E292E011C0CD +:1023700083E292E00EC084E292E00BC085E292E03C +:1023800008C086E292E005C087E292E002C08AE2DD +:1023900092E0CF910C942210CF910895882309F4F4 +:1023A0004BC0823859F40E94EA0F81FF45C089E38F +:1023B0000E94FB190E94C81A89E30CC0833871F48B +:1023C0000E94EA0F80FF38C083E50E94FB190E943B +:1023D000C81A83E50E943D1A0C94C81A843859F42F +:1023E0000E94EA0F82FF28C087E40E94FB190E9426 +:1023F000C81A87E4EFCF9CEF980F913A58F390E218 +:10240000980F983050F4877091E001C0990F8A9529 +:10241000EAF7892F0E94871ADFCF9BE5980F933048 +:1024200020F480E090E00C940C10885A833120F462 +:1024300080E090E00C9422100895882321F00E94FF +:10244000811A0C94C81A0895882321F00E94871AD3 +:102450000C94C81A08957F928F929F92AF92BF9268 +:10246000CF92DF92EF92FF920F931F93CF93DF9360 +:102470001F92CDB7DEB77C01C62E772EFC010581F9 +:1024800002950F70128111110E949E1A0E94F41978 +:10249000882379F0112369F080E28C0D883048F0B0 +:1024A00082E00E94DD190E94F41991E0D82ED9260D +:1024B00001C0D12CE72DE295EF70F0E0E05AFF4F1C +:1024C0000C94B323872D807F072D0F70882311F084 +:1024D0000295007F112389F0002309F490C180E266 +:1024E0008C0D883020F4802F0E94811A03C0802F29 +:1024F0000E94911A0E94C81A82C18C2D0E94CE118E +:10250000002309F495C180E28C0D883020F4802FDF +:102510000E94871A03C0802F0E94971A0E94C81A2F +:1025200087C1972D907F872D8F70903211F0829503 +:10253000807FCC2021F0F1E0CF16B1F01EC0112336 +:1025400049F0002309F414C1013009F011C10E94BF +:10255000B11A6EC1002319F0013009F469C18983F1 +:102560000E94B41A89810AC1112321F0023008F0B7 +:102570005FC1FEC001115CC101C1112321F0002324 +:1025800009F4F6C03CC1002309F4F8C03EC1872D10 +:1025900086958695837090E0009719F0019761F019 +:1025A00047C1112321F08C2D972D937002C080E03C +:1025B00090E00E940C103CC1112321F08C2D972D2E +:1025C000937002C080E090E00E94221031C18C2DF7 +:1025D000112319F00E94431E02C00E94AB1E0E94EC +:1025E000301F26C1872D837009F052C0111120C100 +:1025F0008C2D829586958770880F880F9C2D9F70F3 +:10260000892E912CA12CB12C082E04C0880C991C69 +:10261000AA1CBB1C0A94D2F7C4FE14C00FE010E041 +:1026200020E030E0B901A80104C0440F551F661F27 +:10263000771F8A95D2F7CB01BA0160957095809586 +:10264000909503C060E070E0CB01272D269526957C +:10265000237030E02230310569F02330310589F0F4 +:10266000682979298A299B292130310571F00E9436 +:102670006918DEC0682979298A299B290E94851852 +:10268000D7C00E946918C501B4010E944D18D0C07E +:10269000112319F0872D817001C08695882309F4D4 +:1026A000C7C08C2D829586958770880F880F9C2DCA +:1026B0009F70892E912CA12CB12C082E04C0880C5F +:1026C000991CAA1CBB1C0A94D2F7C4FE14C00FE0CC +:1026D00010E020E030E0B901A80104C0440F551F0C +:1026E000661F771F8A95D2F7CB01BA016095709566 +:1026F0008095909503C060E070E0CB01272D269572 +:1027000026952370422F50E04230510569F0433046 +:10271000510589F0682979298A299B294130510579 +:1027200071F00E94431984C0682979298A299B295C +:102730000E945F197DC00E944319C501B4010E9427 +:10274000271976C08C2D90E0FC01E05EF109E5319F +:10275000F10508F050C0E059FF4F0C94B3230C2D45 +:102760000F70872D8F71112331F00E94C018802FB8 +:102770000E941D125DC00E94E118802F0E94241249 +:1027800057C0112339F0011153C0872D8F710E945A +:1027900006194EC0023008F04BC0F7CF112339F0B4 +:1027A000872D8F710E94C01843C01123C9F3872D54 +:1027B0008F710E94E1183CC0112329F0872D8F7181 +:1027C0000E94AB1835C00E94A11832C0112351F0ED +:1027D000172D1F71812F0E94C01863E0812F0E9466 +:1027E000D41926C081E00E94DD19023008F182E090 +:1027F0000E94DD191DC0112331F0002389F28C2DB8 +:102800000E94061115C0002391F28C2D0E94CE115A +:102810000FC0472D4F706C2DC7010E9415050E94F7 +:10282000C51706C0472D4F706C2DC7010E94F205D9 +:10283000DD20F9F00E94D01980FD1BC0F701128243 +:102840000E94CA190E94C018C7010E9448140E9421 +:10285000CA190F90DF91CF911F910F91FF90EF90C8 +:10286000DF90CF90BF90AF909F908F907F900C940F +:10287000E1180F90DF91CF911F910F91FF90EF9092 +:10288000DF90CF90BF90AF909F908F907F900895F2 +:102890000F931F93CF93DF93EC01888199812B8154 +:1028A0003C81232BB9F09F3F11F48F3F99F0CE016B +:1028B0000E944A05882371F0688179818A810E948B +:1028C000C6198C010E947B190E944218B801CE01E2 +:1028D0000E942B12DF91CF911F910F9108950E94BA +:1028E0009E1A0E94AE1A0E94731A0E94C81A0E9471 +:1028F000E11F0E94301F80E090E00E940C1080E0F9 +:1029000090E00C9422100E948E1A0C946F140E9476 +:10291000BB19292F22952F7030E02C3031054CF453 +:102920002A3031056CF42250310922303105A8F4E7 +:1029300007C02C30310569F02F30310551F00DC042 +:10294000803F69F018F4803E40F409C0843F29F4C8 +:1029500006C093FB882780F9089580E0089581E000 +:102960000895CF93DF9300D000D01F92CDB7DEB78C +:102970000F900F900F900F900F90DF91CF910895CF +:10298000CF93DF9300D000D000D0CDB7DEB726962E +:102990000FB6F894DEBF0FBECDBFDF91CF91089583 +:1029A0001F93CF93DF93C091850116E0809186013C +:1029B000C81799F0D0E01C9FF0011D9FF00D112465 +:1029C000E957FE4F408151816281738184819581F5 +:1029D0000E94C0142196C770E9CFDF91CF911F915B +:1029E00008954091B7015091B8016091B90170917B +:1029F000BA018091BB019091BC010C94C0148091EC +:102A0000BC0182958F7009F054C08091B901882370 +:102A100009F44FC080918501A09186016091B701B2 +:102A20007091B8014091BA015091BB01B6E08A178C +:102A300009F43FC090E041155105C1F17F3F11F409 +:102A40006F3FA1F1B89FF001B99FF00D1124E95734 +:102A5000FE4F218172132AC02081621327C0228178 +:102A6000211124C0238134812417350710F421500B +:102A70003109241B350B283C3105C0F42091BC01E1 +:102A80002F7020612093BC0126E0289FF001299F30 +:102A9000F00D1124E457FE4F80818F708061808398 +:102AA00087EB91E00E9448140C94D0140196877033 +:102AB000BECF0895CF92DF92EF92FF920F931F93B4 +:102AC000CF93DF93CDB7DEB762970FB6F894DEBF32 +:102AD0000FBECDBF8C0185E0F801DE011D9601908F +:102AE0000D928A95E1F7D8014C9111965C9111975E +:102AF00012966C9112971396CD90DC9014973091AA +:102B0000B7017091B8018091BA019091BB01009713 +:102B100009F46BC17F3F19F43F3F09F466C1E090AF +:102B2000B901EE2009F4C0C02091BC01C816D90635 +:102B300028F0F601E81BF90BCF0104C080959095B1 +:102B40008C0D9D1DFF24F394883C910578F0F12CA9 +:102B5000207F09F0C6C07C2DD98AC88A89890E9445 +:102B6000B11487EB91E00E944814B1C0822F807F9E +:102B700009F046C0751314C0341312C0611110C09F +:102B80002F7020612093BC010E94F11487EB91E02B +:102B90000E9448148091BC01D80115968C932EC0D8 +:102BA000CD2819F15F3F11F44F3FF9F0F62E611176 +:102BB0001CC0809185012091860136E0821709F4BE +:102BC0005AC090E0389FF001399FF00D1124E95769 +:102BD000FE4F7181571306C07081471303C0728185 +:102BE000711103C001968770E9CFF62E662309F4B0 +:102BF00018C18091BC0181608093BC01F12C11C18E +:102C0000751308C0341306C0611104C08091BC0163 +:102C1000D801C3C04D875E878D859E856A8B0E94D3 +:102C200087146A898823E1F16623D1F12091BC01E0 +:102C3000822F82958F7090E0029774F08091B70197 +:102C40009091B80198878F831986DB86CA862C8776 +:102C5000CE0107960E94481486E0F801A7EBB1E088 +:102C600001900D928A95E1F70E94FF140E94F114E1 +:102C7000FF24F394D6C04D875E878D859E850E9484 +:102C8000BB19292F22952F7030E0223031050CF02E +:102C9000BCC09F7009F0B6C0805E883008F4C1C027 +:102CA000C8010E944814E4CFC816D90608F453C0DE +:102CB000F601E81BF90BCF01883C910508F450C0E0 +:102CC000F12C7C2DD98AC88A89890E94B114E7EB3E +:102CD000F1E086E0DF011D928A95E9F70E94F11488 +:102CE000A0C0751314C0341312C0611110C08091BC +:102CF000BC01F8018583C8010E94481486E0E7EB17 +:102D0000F1E0DF011D928A95E9F7FE2C8AC04D871C +:102D10005E878D859E856A8B0E9487146A898823C9 +:102D200009F4BECF662309F4BBCF2091BC01822FEA +:102D300082958F7090E002970CF48ECF8091B7014E +:102D40009091B8019A8389831B82DD82CC822E8385 +:102D5000CE0101967FCF809590958C0D9D1DACCFB7 +:102D6000F62E662309F49CCF75132EC034132CC0A5 +:102D70002091BC0120FD1FC0822F82958F70D9F059 +:102D8000D80115962C9315978F3049F08F5F982FA7 +:102D90009295907F822F8F70892B15968C93C80106 +:102DA0000E94481486E0F801A7EBB1E001900D9273 +:102DB0008A95E1F793CF86E0F801A7EBB1E00190A7 +:102DC0000D928A95E1F72DC04D875E878D859E8592 +:102DD0000E948714811140CF8091BC018160809353 +:102DE000BC01C8010E9448141CC0662309F458CFD6 +:102DF0004D875E878D859E850E948714882309F400 +:102E00004FCF2ACF811148CF0CC0243031050CF0B0 +:102E100047CF9F7009F440CFF8019581907F09F06A +:102E20003BCF8F2D62960FB6F894DEBF0FBECDBF9D +:102E3000DF91CF911F910F91FF90EF90DF90CF9096 +:102E400008951F93CF93DF93CDB7DEB72C970FB6BE +:102E5000F894DEBF0FBECDBF4F83588769877A874E +:102E60008B879C87CE0107960E945A15882369F0AC +:102E70008F8198852A853B85232BF1F19F3F09F0AF +:102E800063C08F3F09F060C037C086E0FE0137960F +:102E9000DE01119601900D928A95E1F76F81788598 +:102EA000EA85FB85309741F17F3F11F46F3F21F1B7 +:102EB0002091860130E0C9010196877099274091E1 +:102EC000850150E08417950709F447C069837A8328 +:102ED000FD83EC8396E0929FD001939FB00D112467 +:102EE000A957BE4FFE01319601900D929A95E1F7D8 +:102EF000809386010E94D01416E080918501909104 +:102F000086018917C1F1189FC001112489579E4F6E +:102F10000E945A15882379F1E09185011E9FF001E6 +:102F20001124E957FE4F4081518162817381848170 +:102F300095810E94C0148091850190E00196877070 +:102F4000992780938501D9CF4F81588569857A85E6 +:102F50008B859C850E94C014CFCF0E948314109251 +:102F6000860110928501E7EBF1E086E0DF011D921A +:102F70008A95E9F7C1CF2C960FB6F894DEBF0FBE45 +:102F8000CDBFDF91CF911F910895EF92FF920F93E4 +:102F90001F93CF93DF938C01009709F46CC0F12C41 +:102FA000EE24E394E8012196F8018491843740F4FB +:102FB000843008F051C0813081F0823019F15BC05B +:102FC000853709F444C0A8F19CE7980F903708F0C2 +:102FD00052C08F770E94CE1141C00E5F1F4FFE017D +:102FE000C49180E28C0F883048F4C7708E2D01C0E8 +:102FF000880FCA95EAF70E94A11A14C08C2F0E946C +:1030000006112DC00E5F1F4FFE01C49180E28C0F90 +:10301000883058F4C7708E2D01C0880FCA95EAF722 +:103020000E94A71A0E94C81A1AC08C2F0E94CE11A3 +:1030300016C00E5F1F4FFE01C491CC2381F08FE9B3 +:103040009FE00197F1F700C00000C150F6CF0E5F7E +:103050001F4FFE01F49003C00E9406118E018F2DB8 +:10306000882309F49FCFEFE9FFE03197F1F700C023 +:1030700000008150F5CFDF91CF911F910F91FF900C +:10308000EF90089508956093C1017093C2018093F9 +:10309000C3019093C4010C946F140F931F9300917C +:1030A000C1011091C2012091C3013091C401DC0122 +:1030B000CB01802B912BA22BB32B8093C10190933A +:1030C000C201A093C301B093C4011F910F910C944E +:1030D0006F140F931F930091C1011091C2012091B1 +:1030E000C3013091C401DC01CB0180239123A223D1 +:1030F000B3238093C1019093C201A093C301B09305 +:10310000C4011F910F910C946F140F931F930091A2 +:10311000C1011091C2012091C3013091C401DC01B1 +:10312000CB0180279127A227B3278093C1019093D9 +:10313000C201A093C301B093C4011F910F910C94DD +:103140006F141092BD011092BE011092BF01109237 +:10315000C0010C946F1441E050E060E070E004C0E6 +:10316000440F551F661F771F8A95D2F74093BD0104 +:103170005093BE016093BF017093C0010C946F1413 +:1031800041E050E060E070E004C0440F551F661F4E +:10319000771F8A95D2F78091BD019091BE01A091D1 +:1031A000BF01B091C001482B592B6A2B7B2B409358 +:1031B000BD015093BE016093BF017093C0010C9498 +:1031C0006F1441E050E060E070E004C0440F551F10 +:1031D000661F771F8A95D2F7409550956095709538 +:1031E0008091BD019091BE01A091BF01B091C0013D +:1031F000482359236A237B234093BD015093BE018A +:103200006093BF017093C0010C946F1441E050E0D3 +:1032100060E070E004C0440F551F661F771F8A9559 +:10322000D2F78091BD019091BE01A091BF01B091F4 +:10323000C001482759276A277B274093BD01509337 +:10324000BE016093BF017093C0010C946F140F9383 +:103250001F930091BD011091BE012091BF013091DB +:10326000C001DC01CB01802B912BA22BB32B8093CF +:10327000BD019093BE01A093BF01B093C0011F9107 +:103280000F910C946F140F931F930091BD01109137 +:10329000BE012091BF013091C001DC01CB01802330 +:1032A0009123A223B3238093BD019093BE01A093E9 +:1032B000BF01B093C0011F910F910C946F140F9335 +:1032C0001F930091BD011091BE012091BF0130916B +:1032D000C001DC01CB0180279127A227B32780936F +:1032E000BD019093BE01A093BF01B093C0011F9197 +:1032F0000F910C946F140895CF92DF92EF92FF928A +:103300000F931F93CF93DF938C01C090C101D09096 +:10331000C201E090C301F090C4018091BD01909181 +:10332000BE01A091BF01B091C001C82AD92AEA2AE2 +:10333000FB2ACFE1D0E0D701C6010C2E04C0B69520 +:10334000A795979587950A94D2F780FF06C0B80194 +:103350008C2F0E944808019721F4219760F780E0A4 +:1033600001C08C2FDF91CF911F910F91FF90EF90B3 +:10337000DF90CF900895CF93DF93EC010E947C19EA +:10338000BE010E944808DF91CF910895CB010E94B1 +:10339000BB1908958091C5018595859585950895FA +:1033A0008091C5018770089598E0899F900111244C +:1033B000262B2093C5010C94C0182091C50180953F +:1033C00082238093C501982F977069F430E0482FCD +:1033D000552747FD50952417350729F08595859584 +:1033E00085950C94E11808959091C501977081E03E +:1033F00009F480E0089590910C01992321F09091B7 +:103400000D01911109C020910E0130910F01F901B8 +:1034100032969FEF40E01FC0982F9695969596950F +:103420009F3050F5E0910E01F0910F01E90FF11D71 +:10343000877021E030E0A90102C0440F551F8A9532 +:10344000E2F7CA019181892B818308959F3F39F06A +:103450004F5F4E3041F051915813F8CF0DC05111CC +:10346000F7CF942FF5CF9F3F39F0F901E90FF11D08 +:1034700097FDFA9582830895089590910C01992300 +:1034800021F090910D01911109C020910E01309110 +:103490000F01F9013296205F3F4F1FC0982F96957C +:1034A000969596959F30F0F4E0910E01F0910F0102 +:1034B000E90FF11D877021E030E0A90102C0440F3F +:1034C000551F8A95E2F7CA018095918189238183EE +:1034D00008953196E217F30729F090819813F9CFF8 +:1034E0001082F7CF089581E090E0E0910E01F09115 +:1034F0000F01E80FF91F1082019680319105A9F79D +:1035000008959091D901892B8093D90108958095D0 +:103510009091D90189238093D90108951092D901FE +:1035200008959091D801892B8093D80108958095B2 +:103530009091D80189238093D80108951092D801E1 +:1035400008959091D701892B8093D7010895809594 +:103550009091D70189238093D70108951092D701C4 +:1035600008958093C60108951092C6010895809130 +:103570000E0190910F01FC0131969C01205F3F4F9D +:1035800080E0919191118F5FE217F307D1F70895D1 +:10359000E0910E01F0910F018091D9018083E091BB +:1035A0000E01F0910F0190818091D801892B8083C9 +:1035B000E0910E01F0910F0190818091D701892B4C +:1035C00080838091C601882361F0E0910E01F09123 +:1035D0000F019081892B80830E94B71A811110926C +:1035E000C60180910E0190910F010C94F60F20E01E +:1035F000009739F0AC0141505109842395232F5F86 +:10360000F7CF822F0895CF92DF92EF92FF926C0155 +:10361000EE24FF24C114D104E104F10421F0C70118 +:10362000B60120E101C020E0C72ED82EE92EFF24EC +:10363000C114D104E104F10419F0285FC701B601F7 +:103640006B017C0154E0F694E794D794C7945A95A3 +:10365000D1F7C114D104E104F10419F02C5FC701C2 +:10366000B6016B017C0142E0F694E794D794C794CD +:103670004A95D1F7C114D104E104F10419F02E5F89 +:10368000C701B601DC01CB01B695A7959795879543 +:10369000892B8A2B8B2B09F02F5F822FFF90EF90C5 +:1036A000DF90CF9008958091F101843021F1109244 +:1036B000DB0120E488E190E00FB6F894A8958093B0 +:1036C00060000FBE2093600080E00E94E30883B793 +:1036D000817F846083BF83B7816083BF789488953E +:1036E00083B78E7F83BF88E10FB6F8948093600024 +:1036F000109260000FBE0895089508950E947C1BEB +:103700000E944B030E947D1B0E94400491E08111A6 +:1037100001C090E0892F08950E9483140E94EA0F4F +:103720000C94E30882E084BD93E095BD9AEF97BDC9 +:1037300080936E0008952FB7F8948091DC019091EA +:10374000DD01A091DE01B091DF012FBF0895CF927E +:10375000DF92EF92FF920F931F932FB7F89440914F +:10376000DC015091DD016091DE017091DF012FBF1E +:103770006A017B01EE24FF248C0120E030E0C016BA +:10378000D106E206F30610F4415051099A01281BB4 +:10379000390BC9011F910F91FF90EF90DF90CF90EF +:1037A00008951F920F920FB60F9211248F939F933B +:1037B000AF93BF938091DC019091DD01A091DE0178 +:1037C000B091DF010196A11DB11D8093DC019093A2 +:1037D000DD01A093DE01B093DF01BF91AF919F9116 +:1037E0008F910F900FBE0F901F9018950E94E70CBD +:1037F000F8942FEF87EA91E6215080409040E1F75E +:1038000000C0000087E090EBDC018093FB01909307 +:10381000FC01A093FD01B093FE019CE088E10FB68E +:10382000F894A895809360000FBE90936000FFCF3E +:10383000EF92FF920F931F93CF93DF93D82FCDE09A +:103840008C2F0E94390405E010E0E82EF12CC7010E +:10385000002E02C0959587950A94E2F780FF09C073 +:10386000602F7C2F80E00E94F305D81302C081E016 +:1038700006C00150110958F7C15010F780E0DF91E0 +:10388000CF911F910F91FF90EF900895CF93C82F84 +:103890008CE20E94181C882321F08C2FCF910C946D +:1038A000181C80E0CF910895CF930E949B1D811139 +:1038B00002C00E94811DC5E6C15049F00E944B0321 +:1038C0008FE39CE90197F1F700C00000F5CF89E292 +:1038D0000E94461C811113C18AE20E94461C81117C +:1038E0000E94811D85E00E94461C81110E94F61BEA +:1038F0000E94A61D8093DA0187E00E94461C88235F +:10390000A9F18BE10E94461C882351F08091DA01D5 +:1039100081FB222720F991E0922790FB81F90EC0CC +:103920008EE00E94461C882361F08091DA0182FBC0 +:10393000222720F991E0922790FB82F98093DA0107 +:1039400015C080E10E94461C9091DA01882341F065 +:1039500093FB222720F981E0822780FB93F904C0A2 +:10396000892F809580FB90F99093DA018091DA019C +:103970000E94AA1D0E94B81D8093FA0180EE0E9449 +:10398000461C882341F08091FA01982F909590FB76 +:1039900080F98093FA0189E30E94461C882359F03C +:1039A0008091FA0181FB222720F991E0922790FB78 +:1039B00081F98093FA0182EE0E94461C882359F017 +:1039C0008091FA0182FB222720F991E0922790FB57 +:1039D00082F98093FA0186EE0E94461C882359F0F2 +:1039E0008091FA0183FB222720F991E0922790FB36 +:1039F00083F98093FA0183EE0E94461C882359F0D4 +:103A00008091FA0184FB222720F991E0922790FB14 +:103A100084F98093FA0185E30E94461C882359F0BB +:103A20008091FA0185FB222720F991E0922790FBF3 +:103A300085F98093FA0181E30E94461C882359F09E +:103A40008091FA0186FB222720F991E0922790FBD2 +:103A500086F98093FA0181E10E94461C882359F07F +:103A60008091FA0187FB222720F991E0922790FBB1 +:103A700087F98093FA018091FA010E94BC1D809120 +:103A8000FA0187FB882780F980930D0187E20E9465 +:103A9000461CC82F8EE10E94461C8111C2608FE136 +:103AA0000E94461C8111C46080E20E94461C811164 +:103AB000C86081E20E94461C8111C06182E20E94BE +:103AC000461C8111C06283E20E94461C8111C064C1 +:103AD00084E20E94461C882311F0C06802C0CC23F7 +:103AE00029F08C2F0E94B31D6C2F03C00E94AF1DC4 +:103AF000682F70E080E090E0CF910C944318CF9154 +:103B000008956DEE7EEF80E090E00E94ED2360E08E +:103B100082E090E00E94DB2360E083E090E00E947E +:103B2000DB2360E084E090E00E94DB2360E085E03E +:103B300090E00C94DB2380E090E00E94D52321E00C +:103B40008D3E9E4F09F020E0822F089582E090E0A4 +:103B50000C94CD23682F82E090E00C94DB2383E06B +:103B600090E00C94CD23682F83E090E00C94DB234D +:103B700084E090E00C94CD23682F84E090E00C94D6 +:103B8000DB238091E20180FF0BC06091130185E08F +:103B9000689FB001112475956795759567952BC041 +:103BA00081FF09C06091130185E0689FB001112475 +:103BB0007595679520C082FF07C06091130185E06D +:103BC000689FB001112417C09091E3019923D1F0AF +:103BD00060911201961788F72091130185E0289FC4 +:103BE00090011124929FA001939F500D112470E029 +:103BF000CA010E949F236038710540F46115710568 +:103C000039F002C065E070E0862F08958FE70895CF +:103C100081E008958091E20180FF08C06091110168 +:103C200070E0759567957595679521C081FF06C011 +:103C30006091110170E07595679519C082FF04C00D +:103C40006091110170E010C09091E3019923C1F0DF +:103C5000609110019617A0F780911101899FC00112 +:103C6000112470E00E949F236038710528F46115CB +:103C7000710521F0862F08958FE7089581E008955A +:103C800061E070E0F4CF803F21F40E94C11D819576 +:103C900004C0813F29F40E94C11D8093E60108956C +:103CA000823F21F40E94C11D819504C0833F29F405 +:103CB0000E94C11D8093E5010895893F19F40E9477 +:103CC0000A1E05C08A3F31F40E940A1E8195809326 +:103CD000E70108958B3F21F40E940A1E819504C0DC +:103CE0008C3F29F40E940A1E8093E8010895843FC6 +:103CF00021F48091E401816017C0853F21F4809117 +:103D0000E401826011C0863F21F48091E401846067 +:103D10000BC0873F21F48091E401886005C0883F93 +:103D200031F48091E40180618093E40108958D3F36 +:103D300021F48091E20181600BC08E3F21F48091DB +:103D4000E201826005C08F3F29F48091E201846026 +:103D50008093E2010895803F39F48091E60187FF66 +:103D60006CC01092E60169C0813F29F48091E601A0 +:103D70001816BCF362C09091E501823F29F497FFC9 +:103D80005CC01092E50159C0833F19F41916CCF3B9 +:103D900054C0893F41F48091E70118160CF04DC0E2 +:103DA0001092E7014AC08A3F29F48091E70187FF1A +:103DB00044C0F6CF8B3F39F48091E80187FF3DC0C6 +:103DC0001092E8013AC08C3F29F48091E80118165E +:103DD000BCF333C0843F21F48091E4018E7F17C08F +:103DE000853F21F48091E4018D7F11C0863F21F44D +:103DF0008091E4018B7F0BC0873F21F48091E40127 +:103E0000877F05C0883F31F48091E4018F7E8093E5 +:103E1000E40113C08D3F21F48091E2018E7F0BC03D +:103E20008E3F21F48091E2018D7F05C08F3F29F400 +:103E30008091E2018B7F8093E2018091E501811105 +:103E40000EC08091E60181110AC08091E7018111C5 +:103E500006C08091E801811102C01092E30108952B +:103E600084EE91E00E9401100E949B1B9093E1015F +:103E70008093E00108951F93CF93DF938091E00139 +:103E80009091E1010E94A71BAC019091E30199235D +:103E900021F02091140130E006C0209115018AE044 +:103EA000289F900111244217530708F486C080917F +:103EB000E501C091E601D091E7011091E80181117F +:103EC00007C0C11176C0D11174C0111172C075C084 +:103ED0009F3F19F09F5F9093E301181624F40E940E +:103EE000C11D8093E5018091E50187FF05C00E9417 +:103EF000C11D81958093E5011C1624F40E94C11D0B +:103F00008093E6018091E60187FF05C00E94C11DF4 +:103F100081958093E6016091E501662339F1C091B6 +:103F2000E601CC2319F1772767FD7095872F972F2E +:103F30000E94B02223E333E343E35FE30E941423B0 +:103F40000E947D226093E5016C2F772767FD7095B5 +:103F5000872F972F0E94B02223E333E343E35FE3ED +:103F60000E9414230E947D226093E6011D1624F412 +:103F70000E940A1E8093E7018091E70187FF05C038 +:103F80000E940A1E81958093E701111624F40E9475 +:103F90000A1E8093E8018091E80187FF05C00E9416 +:103FA0000A1E81958093E801DF91CF911F910C94B7 +:103FB000301F9F3F09F08ECF96CFDF91CF911F9199 +:103FC0000895E4EEF1E085E0DF011D928A95E9F7BE +:103FD0001092E3011092E2010895833081F128F4F8 +:103FE000813059F08230D1F00895853009F449C00C +:103FF000B8F1863009F456C0089580911501262F36 +:1040000030E0280F311D2F3F310524F4680F6093F5 +:10401000150108958FEF8093150108958091140183 +:10402000262F30E0280F311D2F3F310524F4680F73 +:104030006093140108958FEF809314010895809187 +:104040001301262F30E0280F311D2F3F310524F4B6 +:10405000680F6093130108958FEF80931301089503 +:1040600080911201262F30E0280F311D2F3F31059E +:1040700024F4680F6093120108958FEF809312016A +:10408000089580911101262F30E0280F311D2F3F18 +:10409000310524F4680F6093110108958FEF809328 +:1040A0001101089580911001262F30E0280F311D55 +:1040B0002F3F310524F4680F6093100108958FEFAE +:1040C000809310010895833011F128F4813049F074 +:1040D000823091F00895853081F120F18630C1F170 +:1040E000089580911501681720F4861B80931501AF +:1040F000089510921501089580911401681720F415 +:10410000861B8093140108951092140108958091E4 +:104110001301681720F4861B8093130108951092F1 +:104120001301089580911201681720F4861B809373 +:1041300012010895109212010895809111016817DB +:1041400020F4861B809311010895109211010895A7 +:1041500080911001681720F4861B80931001089548 +:104160001092100108950F931F938D3109F46BC0C5 +:1041700008F03FC08E3009F47FC0C0F4873009F4E6 +:1041800069C068F4863009F0B1C08091DA01817F9E +:104190008E7F8093DA0181E08093EA01A8C08830A5 +:1041A00009F4A2C08B3009F49FC0A0C0863109F485 +:1041B0009BC078F4803109F472C0813109F096C057 +:1041C0000E94831490910D0181E0892780930D0155 +:1041D0008BC0893109F488C08B3109F087C0809188 +:1041E000DA0181FB222720F991E0922790FB81F9E7 +:1041F0004CC0853309F470C048F4873209F46CC0B0 +:1042000008F459C0893209F467C070C0833438F4A7 +:104210008A3308F04EC0883309F466C067C083341F +:1042200009F45AC0883409F061C00E9483140FEF6A +:1042300013ED20E3015010402040E1F700C00000E2 +:104240000E94F61B51C00E9437220E94EA0F0E9472 +:10425000E3084AC09091DA01892F8095817080FB34 +:1042600090F929F0966098609093DA0140C0997FA8 +:10427000977F9093DA0138C08091DA0182FB222780 +:1042800020F991E0922790FB82F98093DA0199233B +:1042900059F18091DA0181608093DA0125C0809123 +:1042A000DA0183FB222720F991E0922790FB83F922 +:1042B000ECCF895301C08D5141E050E060E070E0E7 +:1042C0008A019B0104C0000F111F221F331F8A9512 +:1042D000D2F7C901B80104C061E070E080E090E06D +:1042E0000E9443180E94831481E001C080E01F9166 +:1042F0000F91089580E0089580E00895CF93C82F2E +:104300008091EA01813079F018F08230E9F187C0BC +:10431000E0910E01F0910F018081813169F08232CC +:1043200009F07FC009C0E0910E01F0910F0180817A +:10433000813111F0823261F48C2F0E947A21811137 +:1043400004C08C2F0E94B3201DC081E090E01AC0F1 +:104350008C2F0E947C21811114C0C43179F048F463 +:10436000CB3079F0C03109F060C082E08093EA017F +:1043700008C0C93219F0C83321F057C01092EA01C1 +:1043800054C081E0817053C0C93289F118F5C4313D +:1043900071F1A8F4C73009F046C08AE08093150196 +:1043A00094E19093140193E0909313018093120190 +:1043B00088E08093110188E28093100134C0CE51CF +:1043C000C63088F5EC2FF0E0E65DFE4F80818093EB +:1043D000E90129C0CE34E9F020F4CB3421F56AE0BC +:1043E00013C0C13579F0C235F1F461E00DC08091A0 +:1043F000E901882319F01092E90115C081E080934A +:10440000EA0115C061E006C08091E9010E94ED1F3C +:104410000AC06AE08091E9010E94632004C0109202 +:10442000EA0180E004C081E002C080E0ABCFCF9120 +:104430000895E1E8F0E08081886080838081816078 +:1044400080838FB7F89493E09093890090ED9093D8 +:1044500088008FBF0895EFE6F0E08081826080835E +:104460000895EFE6F0E080818D7F80830895EFE688 +:10447000F0E0908182E08927808308951F920F9257 +:104480000FB60F9211242F933F934F935F936F9327 +:104490007F938F939F93AF93BF93EF93FF938091FD +:1044A000EB019091EC0101969093EC018093EB016C +:1044B000811103C082E00E94E308E091EC01E695DF +:1044C000E695F0E0EC54FB4FE4918091EB018E1304 +:1044D00003C080E00E94E308FF91EF91BF91AF918C +:1044E0009F918F917F916F915F914F913F912F910C +:1044F0000F900FBE0F901F90189504D06894B111C3 +:104500008DC0089570D088F09F5790F0B92F9927EB +:10451000B751A0F0D1F0660F771F881F991F1AF0CE +:10452000BA95C9F712C0B13081F077D0B1E00895E3 +:1045300074C0672F782F8827B85F39F0B93FCCF364 +:10454000869577956795B395D9F73EF490958095C4 +:10455000709561957F4F8F4F9F4F0895E89409C0E4 +:1045600097FB3EF490958095709561957F4F8F4FA6 +:104570009F4F9923A9F0F92F96E9BB279395F695BC +:10458000879577956795B795F111F8CFFAF4BB0F3A +:1045900011F460FF1BC06F5F7F4F8F4F9F4F16C09E +:1045A000882311F096E911C0772321F09EE8872F28 +:1045B000762F05C0662371F096E8862F70E060E0E4 +:1045C0002AF09A95660F771F881FDAF7880F96955D +:1045D000879597F9089557FD9058440F551F59F046 +:1045E0005F3F71F04795880F97FB991F61F09F3FE0 +:1045F00079F087950895121613061406551FF2CF09 +:104600004695F1DF08C0161617061806991FF1CF58 +:1046100086957105610508940895E894BB2766277F +:104620007727CB0197F908950BD078C069D028F08F +:104630006ED018F0952309F05AC05FC01124EECF58 +:10464000CADFA0F3959FD1F3950F50E0551F629FED +:10465000F001729FBB27F00DB11D639FAA27F00DDB +:10466000B11DAA1F649F6627B00DA11D661F829F02 +:104670002227B00DA11D621F739FB00DA11D621FE7 +:10468000839FA00D611D221F749F3327A00D611D04 +:10469000231F849F600D211D822F762F6A2F1124E6 +:1046A0009F5750408AF0E1F088234AF0EE0FFF1F39 +:1046B000BB1F661F771F881F91505040A9F79E3F70 +:1046C000510570F014C0AACF5F3FECF3983EDCF3C5 +:1046D000869577956795B795F795E7959F5FC1F7AD +:1046E000FE2B880F911D9695879597F9089597F958 +:1046F0009F6780E870E060E008959FEF80EC089588 +:1047000000240A94161617061806090608950024B0 +:104710000A9412161306140605060895092E03942A +:10472000000C11F4882352F0BB0F40F4BF2B11F49E +:1047300060FF04C06F5F7F4F8F4F9F4F089597FBBF +:10474000072E16F4009407D077FD09D00E94B923F4 +:1047500007FC05D03EF4909581959F4F0895709584 +:1047600061957F4F0895EE0FFF1F0590F491E02DA6 +:104770000994AA1BBB1B51E107C0AA1FBB1FA617A8 +:10478000B70710F0A61BB70B881F991F5A95A9F7FA +:1047900080959095BC01CD010895F999FECF92BD09 +:1047A00081BDF89A992780B50895A8E1B0E042E06C +:1047B00050E00C94F523262FF999FECF92BD81BDD0 +:1047C000F89A019700B4021639F01FBA20BD0FB64F +:1047D000F894FA9AF99A0FBE08950196272F0E942D +:1047E000DC230C94DB23DC01CB01FC01F999FECF27 +:1047F00006C0F2BDE1BDF89A319600B40D92415069 +:0A4800005040B8F70895F894FFCF78 +:10480A000220E508730950091C09E8080101C701DB +:10481A0028080A03140A3F4D363975042804F2039E +:10482A00B9034C0365037E039703010203040506DB +:04483A000708090062 +:00000001FF diff --git a/keyboards/ergodox_ez/keymaps/colemak/keymap.c b/keyboards/ergodox_ez/keymaps/colemak/keymap.c new file mode 100644 index 0000000000..9601726f7b --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/colemak/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 + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | = | 1 | 2 | 3 | 4 | 5 | LEFT | | RIGHT| 6 | 7 | 8 | 9 | 0 | - | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Del | Q | W | F | P | G | L1 | | L1 | J | L | U | Y | ; | \ | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | BkSp | A | R | S | T | D |------| |------| H | N | E | I |O / L2| ' | + * |--------+------+------+------+------+------| Hyper| | Meh |------+------+------+------+------+--------| + * | LShift |Z/Ctrl| X | C | V | B | | | | K | M | , | . |//Ctrl| RShift | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * |Grv/L1| '" |AltShf| Left | Right| | Up | Down | [ | ] | ~L1 | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | App | LGui | | Alt |Ctrl/Esc| + * ,------|------|------| |------+--------+------. + * | | | Home | | PgUp | | | + * | Space|Backsp|------| |------| Tab |Enter | + * | |ace | End | | PgDn | | | + * `--------------------' `----------------------' + */ +// If it accepts an argument (i.e, is a function), it doesn't need KC_. +// Otherwise, it needs KC_* +[BASE] = KEYMAP( // layer 0 : default + // left hand + KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, KC_LEFT, + KC_DELT, KC_Q, KC_W, KC_F, KC_P, KC_G, TG(SYMB), + 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, ALL_T(KC_NO), + LT(SYMB,KC_GRV),KC_QUOT, LALT(KC_LSFT), KC_LEFT,KC_RGHT, + ALT_T(KC_APP), KC_LGUI, + KC_HOME, + KC_SPC,KC_BSPC,KC_END, + // right hand + KC_RGHT, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, + TG(SYMB), KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSLS, + KC_H, KC_N, KC_E, KC_I, LT(MDIA, 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, KC_FN1, + KC_LALT, CTL_T(KC_ESC), + KC_PGUP, + KC_PGDN,KC_TAB, KC_ENT + ), +/* Keymap 1: Symbol Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | ! | @ | { | } | | | | | | Up | 7 | 8 | 9 | * | F12 | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | # | $ | ( | ) | ` |------| |------| Down | 4 | 5 | 6 | + | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | % | ^ | [ | ] | ~ | | | | & | 1 | 2 | 3 | \ | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | . | 0 | = | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// SYMBOLS +[SYMB] = KEYMAP( + // left hand + KC_TRNS,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, + KC_TRNS,KC_EXLM,KC_AT, KC_LCBR,KC_RCBR,KC_PIPE,KC_TRNS, + KC_TRNS,KC_HASH,KC_DLR, KC_LPRN,KC_RPRN,KC_GRV, + KC_TRNS,KC_PERC,KC_CIRC,KC_LBRC,KC_RBRC,KC_TILD,KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS, + KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS, + // right hand + KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + KC_TRNS, KC_UP, KC_7, KC_8, KC_9, KC_ASTR, KC_F12, + KC_DOWN, KC_4, KC_5, KC_6, KC_PLUS, KC_TRNS, + KC_TRNS, KC_AMPR, KC_1, KC_2, KC_3, KC_BSLS, KC_TRNS, + KC_TRNS,KC_DOT, KC_0, KC_EQL, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), +/* Keymap 2: Media and mouse keys + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | MsUp | | | | | | | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | |MsLeft|MsDown|MsRght| |------| |------| | | | | | Play | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | | Prev | Next | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | Lclk | Rclk | |VolUp |VolDn | Mute | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | |Brwser| + * | | |------| |------| |Back | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// MEDIA AND MOUSE +[MDIA] = KEYMAP( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_BTN1, KC_BTN2, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + // right hand + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, + KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, + KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_WBAK +), +}; + +const uint16_t PROGMEM fn_actions[] = { + [1] = ACTION_LAYER_TAP_TOGGLE(SYMB) // FN1 - Momentary Layer 1 (Symbols) +}; + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + // MACRODOWN only works in this function + switch(id) { + case 0: + if (record->event.pressed) { + register_code(KC_RSFT); + } else { + unregister_code(KC_RSFT); + } + break; + } + return MACRO_NONE; +}; + +// Runs just one time when the keyboard initializes. +void matrix_init_user(void) { + +}; + +// Runs constantly in the background, in a loop. +void matrix_scan_user(void) { + + uint8_t layer = biton32(layer_state); + + ergodox_board_led_off(); + ergodox_right_led_1_off(); + ergodox_right_led_2_off(); + ergodox_right_led_3_off(); + switch (layer) { + // TODO: Make this relevant to the ErgoDox EZ. + case 1: + ergodox_right_led_1_on(); + break; + case 2: + ergodox_right_led_2_on(); + break; + default: + // none + break; + } + +}; diff --git a/keyboards/ergodox_ez/keymaps/colemak/readme.md b/keyboards/ergodox_ez/keymaps/colemak/readme.md new file mode 100644 index 0000000000..e28b2f0856 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/colemak/readme.md @@ -0,0 +1,4 @@ +# ErgoDox EZ Colemak Configuration + +Colemak layout with same layers as default ergodox ez keymap. + diff --git a/keyboards/ergodox_ez/keymaps/colemak_osx_pc_no/compiled.hex b/keyboards/ergodox_ez/keymaps/colemak_osx_pc_no/compiled.hex new file mode 100644 index 0000000000..726a776d29 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/colemak_osx_pc_no/compiled.hex @@ -0,0 +1,1179 @@ +:100000000C9461030C94A5030C94A5030C94A50314 +:100010000C94A5030C94A5030C94A5030C94A503C0 +:100020000C94A5030C94A5030C94590E0C942B0F5F +:100030000C94A5030C94A5030C94A5030C94A503A0 +:100040000C94A5030C94E5220C94A5030C94A50331 +:100050000C94A5030C94781C0C94A5030C94A50394 +:100060000C94A5030C94A5030C94A5030C94A50370 +:100070000C94A5030C94A5030C94A5030C94A50360 +:100080000C94A5030C94A5030C94A5030C94A50350 +:100090000C94A5030C94A5030C94A5030C94A50340 +:1000A0000C94A5030C94A5030C94A5030A060F0653 +:1000B000140619061E06230628062D063206980F7A +:1000C000BA0FA810BA0FA810FF0F2210A8107710AF +:1000D0008A105913591388138813BE13DE130F1592 +:1000E0000F15E9130F159914991400150F150F1515 +:1000F0000915A614A614A614A614A614A614A614CC +:10010000A614A614A614A614A614A614A614A6141F +:10011000A614B814C514CC14D314DD14012E022E69 +:10012000012C022C0001E10135023502E10001350C +:1001300002350001E1012E022E012C022C02E10009 +:1001400001E6012E022E02E6012C022C0001E10143 +:1001500030023002E1012C022C0001E10164026452 +:1001600002E100016402640001E60130023002E6AF +:10017000012C022C000000002200C001C002C003BC +:10018000C004C005C006C007C008C02E002D02373D +:10019000021E02045200002514140004001D00F485 +:1001A00000387426141A0015001B00F5003771245E +:1001B000140900160006002B00C1002714130017B5 +:1001C00000190036782D0031020A000700050000F2 +:1001D00000230201541F020000360200003500C552 +:1001E000003200000027020000490021140D000B1E +:1001F000000E000000240225020F00110010005024 +:10020000004C002602180008004F0029002C00C3F3 +:10021000001C000C005100C7002800C4002F001271 +:1002200000520020022A001F14340033003802025A +:10023000520000241601000100010001000000012D +:1002400000010001000100010001000100010001A6 +:1002500000010001003778251601000100010001AE +:1002600000010026160100010001003671010001A5 +:100270000001000100010000000100010001000078 +:1002800000010000002414010064000000010000CF +:100290000001002102010001000100000001000135 +:1002A0000001000100010001000100010001000146 +:1002B00000010001000100C8000100010001002E42 +:1002C000140100C90001000100010001000100311A +:1002D00000010001000100035200000100010001C3 +:1002E00000010001000000010001002000010001E8 +:1002F000000100010001001F0001000100010001D8 +:100300000001001E0001000100010001002202277F +:1003100000210001000100010001000100010000B6 +:1003200000010001000100000001000000010001C7 +:1003300000010000000100000001000100010001B7 +:10034000004A00000001000100C200220026004A0D +:100350000001000100C60023004D00010001000162 +:1003600000010024004E00010001000100010025F1 +:10037000004B00010001000100010001000100012B +:100380000000000100010001000100010000000167 +:100390000001002000010001000100010001001F18 +:1003A00000010001000100010001001E0001000128 +:1003B00000010001002202270021000100010001CC +:1003C0000001000100010000000100010001000027 +:1003D0000001000000010001000100000001000018 +:1003E0000001000100010001004A000000010001BD +:1003F00000C200220026004A0001000100CA0023BA +:10040000004D00010001000100010024004E000128 +:100410000001000100010025004B00010001000166 +:1004200000010001000100010000002200010001A4 +:1004300000010001000000010001003C000100017A +:10044000000100010001003B00010001000100016A +:100450000001003A0001000100010001000100015B +:10046000003D000100010001000100010001000049 +:100470000001000100010000000100000001000176 +:100480000001000000010000000100010001000166 +:1004900000301400000100010001003E0042000194 +:1004A000000100010001003F0043000100010001C4 +:1004B0000001004000440001000100010001004172 +:1004C00000450001000100010001000100010001E0 +:1004D00000000016034500720067006F0044006FC3 +:1004E000007800200045005A000000160345007205 +:1004F0000067006F0044006F007800200045005A3C +:100500000000000403090409026D00040100A0FAC0 +:100510000904000001030101000921110100012269 +:100520003F000705810308000A09040100010301D7 +:100530000200092111010001224D00070582030874 +:10054000000A090402000103000000092111010052 +:10055000012236000705830308000A09040300018D +:100560000300000009211101000122390007058460 +:10057000031000011201100100000008EDFE071336 +:1005800001000102000105010906A101050719E0AA +:1005900029E7150025019508750181020508190153 +:1005A00029059505750191029501750391010507CE +:1005B0001900297715002501957875018102C0057C +:1005C000010980A101850216010026B7001A010069 +:1005D0002AB700751095018100C0050C0901A10121 +:1005E0008503160100269C021A01002A9C02751040 +:1005F00095018100C005010902A1010901A10005C1 +:100600000919012905150025019505750181029536 +:1006100001750381010501093009311581257F9597 +:10062000027508810609381581257F9501750881B5 +:1006300006050C0A38021581257F9501750881068B +:10064000C0C005010906A101050719E029E7150049 +:10065000250195087501810295017508810105083C +:1006600019012905950575019102950175039101FF +:100670000507190029FF150025FF9506750881005B +:10068000C00000000000000000000000010204069D +:100690000A0F17202C3A4A5D71879DB3C7DAE9F536 +:1006A000FCFFFCF5E9DAC7B39D87715D4A3A2C205F +:1006B000170F0A06040201000000000000000000FD +:1006C000000011241FBECFEFDAE0DEBFCDBF04B6BD +:1006D00003FE24C08091FB019091FC01A091FD01DB +:1006E000B091FE018730904BA740B04BB9F4109207 +:1006F000FB011092FC011092FD011092FE0114BE4C +:1007000084B7877F84BF88E10FB6F8948093600038 +:10071000109260000FBEE0E0FFE3099511E0A0E059 +:10072000B1E0E8E5F9E402C005900D92A433B10709 +:10073000D9F711E0A4E3B1E001C01D92AB3FB107CE +:10074000E1F70E949D0B0C94AA240C9400001092D7 +:10075000B9008AE08093B800089594EA9093BC00B1 +:100760009091BC0097FFFCCF9091B900987F983092 +:1007700021F0903111F081E008958093BB0084E86E +:100780008093BC008091BC0087FFFCCF8091B900B2 +:10079000887F883111F0803471F780E0089584E912 +:1007A0008093BC008091BC0084FDFCCF08958093B1 +:1007B000BB0084E88093BC008091BC0087FFFCCF25 +:1007C0009091B900987F81E0983209F480E0089513 +:1007D00084E88093BC008091BC0087FFFCCF8091AF +:1007E000BB00089580910101811115C080E40E9431 +:1007F000AD038093010181110CC082E10E94D703F7 +:1008000080930101811105C08FEF0E94D70380936F +:1008100001010E94CF0384B1807F84B985B1807FBC +:1008200085B98AB1837F8AB98BB1837F8BB93E98B2 +:10083000469808950E94AF05809301010E94F2033B +:1008400080B38C7080BB81B3836F81BBA5E3B1E0C3 +:10085000E3E4F1E08EE08E0F11921D928E13FCCF37 +:100860000C949905BF92CF92DF92EF92FF920F9373 +:100870001F93CF93DF9380910101882379F08091BA +:1008800034018F5F80933401811108C00E94AF054D +:1008900080930101811102C00E94410505E311E02E +:1008A000C0E0D0E0DD24D39482E0C82EEE24E394AF +:1008B000F12CC730D10500F580910101811164C090 +:1008C00080E40E94AD0380930101811112C082E196 +:1008D0000E94D7038093010181110BC0C7010C2E28 +:1008E00001C0880F0A94EAF780950E94D70380938D +:1008F00001010E94CF0348C0CA30A1F028F4C830DB +:1009000059F0C93061F005C0CC3089F070F0CD30BD +:1009100089F0209A289810C0219A29980DC0229A0F +:100920002A980AC0239A2B9807C0529A01C0539A5A +:100930005B9802C03E9A469890EA9A95F1F79FB16B +:10094000799902C082E001C080E091709D25982BCA +:100950007C9902C084E001C080E0892B7D9902C0AF +:1009600038E001C030E0832B7E9902C020E101C055 +:1009700020E0822B9FB19095991F9927991F9295FE +:10098000990F907E892B0FC080910101811149C080 +:1009900080E40E94AD0380930101882379F1B12C9A +:1009A0000E94CF038B2DF8019081981719F0808356 +:1009B000C09200010E94F20321960F5F1F4FCE30BC +:1009C000D10509F076CF80910001882361F1815033 +:1009D00080930001882339F08FE99FE00197F1F7B8 +:1009E00000C0000020C0A3E4B1E0E5E3F1E0CF01E6 +:1009F000825F91919D938E13FCCF15C083E10E947D +:100A0000D703809301018111CACF81E40E94AD0315 +:100A1000809301018111C3CF0E94E803B82EB094E6 +:100A2000BFCF80E0C0CF0E943F0581E0DF91CF9132 +:100A30001F910F91FF90EF90DF90CF90BF9008959E +:100A4000E82FF0E0ED5BFE4F8081089508950F934D +:100A50001F93CF93DF93C3E4D1E010E00C2F025F2C +:100A6000899190E00E94EE1B180F0C13F9CF812F93 +:100A7000DF91CF911F910F910895089508950C94DF +:100A80003E0556985E9825982D9826982E9827987A +:100A90002F988FEF90E09093890080938800909337 +:100AA0008B0080938A0090938D0080938C00259A10 +:100AB0002D9A2FEF80E792E0215080409040E1F79F +:100AC00000C00000269A2E9A2FEF80E792E0215076 +:100AD00080409040E1F700C00000279A2F9A2FEF46 +:100AE00080E792E0215080409040E1F700C0000094 +:100AF00025982D982FEF80E792E02150804090407C +:100B0000E1F700C0000026982E982FEF80E792E0D2 +:100B1000215080409040E1F700C0000027982F98B6 +:100B200056985E9825982D9826982E9827982F9855 +:100B3000089589EA8093800089E080938100249859 +:100B40002C983F988AB18F748AB96E98479A8BB166 +:100B5000806B8BB9769A0E9441050C943D0580E22A +:100B6000809301018091510181110EC00E94A70361 +:100B700081E0809351012FEF83ED90E3215080407D +:100B80009040E1F700C0000080E40E94AD03809334 +:100B9000010181112EC00E94D703809301018111B0 +:100BA00028C00E94D70380930101811122C08FE3E6 +:100BB0000E94D7038093010181111BC00E94CF03C3 +:100BC00080E40E94AD0380930101811112C08CE08A +:100BD0000E94D7038093010181110BC00E94D703AB +:100BE00080930101811105C08FE30E94D703809398 +:100BF00001010E94CF03809101010895FC018281CF +:100C0000462F50E04930510590F5FA01EA5AFF4F5E +:100C10000C945A24882359F188E691E0089588239A +:100C200031F183E691E00895882309F18AE591E0A6 +:100C300008958823E1F08DE491E008958823B9F0C8 +:100C400080E491E00895882391F083E391E0089592 +:100C5000882369F08EE291E00895882341F085E2CF +:100C600091E00895882319F08CE191E0089580E0E7 +:100C700090E0089581E0089581E008950C943C0689 +:100C800008950F931F93CF93DF938C01FC01C081D4 +:100C9000D181CE010E94731ABE010E94EA06EC01C6 +:100CA000B8010E943E06882309F48DC0F8018281B4 +:100CB000882309F44AC080915D0181111FC0C431AD +:100CC000F0E5DF0709F051C00E94400681E0809303 +:100CD0005D010E94421C90935C0180935B01109225 +:100CE0005401109256011092550110925801109221 +:100CF000570110925A011092590165C080915B0111 +:100D000090915C010E944E1C883C910570F480918A +:100D10005401E82FF0E0EE0FFF1FEB5AFE4FD18396 +:100D2000C0838F5F809354014EC0C43880E5D807DC +:100D300021F0C538D04501F13AC0F80182818823FD +:100D400041F01092520182E01EC0C438E0E5DE0797 +:100D500059F580915201811106C086E20E94FD1171 +:100D600086E20E94C51282E01CC0C438F0E5DF07AD +:100D700041F3C538D045D9F4F8018281882331F098 +:100D80001092530180E20E9414131DC08091530100 +:100D9000811106C087E20E94FD1187E20E94C51200 +:100DA00080E20E941B130FC0C538D04529F381E0B3 +:100DB0008093520180935301C801DF91CF911F911D +:100DC0000F910C943A0680E0DF91CF911F910F9123 +:100DD0000895089596E0799FF001112494E5899F84 +:100DE000E00DF11D1124E60FF11DEE0FFF1FE55779 +:100DF000FE4F859194910895880F991FFC01EB5047 +:100E0000F040859194910895880F991FFC01EB584B +:100E1000FE4F8591949108950F931F93CF93DF9385 +:100E2000EC01811520E3920750F5C11580E2D80747 +:100E300008F0C3C0CB3BD10590F4C83AD10508F007 +:100E40006AC0C53AD10508F05BC0C430D10508F0CE +:100E5000D0C1219709F0CAC101E010E00AC2CF3F1A +:100E6000D10511F008F0C5C1C03FD10508F0A2C0FE +:100E7000CE01805E9109089708F4BBC1B7C1C130AB +:100E800090E5D90709F4A2C020F5C0318FE4D80756 +:100E900070F4C11590E4D90708F094C0C11521E39E +:100EA000D20708F0A3C1DD278E01106CE2C1C11585 +:100EB000D04509F09BC10E947A158FEF94E32CE096 +:100EC000815090402040E1F700C000000E949D1C2E +:100ED000D0C1C11597E5D90758F4C03121E5D20733 +:100EE00008F01CC1C43180E5D80708F475C07EC184 +:100EF000CE0190578115904108F078C1DF7073C121 +:100F0000C53AD10509F477C1C63AD10509F076C1D1 +:100F100002E810E4AEC1C83AD10509F472C1C93A79 +:100F2000D10509F471C1CA3AD10509F470C1CB3AAF +:100F3000D10509F46FC1CC3AD10509F46EC1CD3A9F +:100F4000D10509F46DC1C03BD10509F46CC1CE3A9D +:100F5000D10509F46BC1CF3AD10509F46AC1C13B8F +:100F6000D10509F469C1C23BD10509F468C1C33B8D +:100F7000D10509F467C1C43BD10509F466C1C53B7D +:100F8000D10509F465C1C63BD10509F464C1C73B6D +:100F9000D10509F463C1C83BD10509F462C1C93B5D +:100FA000D10509F461C1CA3BD10509F460C100E073 +:100FB00014E45FC18E0110655CC1CE019F700E9478 +:100FC000040758C1DF708E01106A53C18091DA01A5 +:100FD00081608093DA014DC10E94421E811102C0DE +:100FE0000E94281E0E945F1E90E09093FB01809358 +:100FF000FA01C23080E5D80721F48091FA018160BE +:1010000086C0C43090E5D90721F48091FA0182604E +:101010007EC0C63020E5D20721F48091FA018460B9 +:1010200076C0C83080E5D80719F48091FA0127C04E +:10103000CA3090E5D90721F48091FA01806167C038 +:10104000CC3020E5D20721F48091FA0180625FC0A4 +:10105000CE3080E5D80721F48091FA01806457C032 +:10106000C03190E5D90721F48091FA0180684FC022 +:10107000C23120E5D20729F48091FA0184608860AA +:1010800046C0C33080E5D80721F48091FA018E7FF5 +:101090003EC0C53090E5D90721F48091FA018D7FDB +:1010A00036C0C73020E5D20721F48091FA018B7F4A +:1010B0002EC0C93080E5D80719F48091FA0126C006 +:1010C000CB3090E5D90721F48091FA018F7E1FC0C3 +:1010D000CD3020E5D20721F48091FA018F7D17C031 +:1010E000CF3080E5D80721F48091FA018F7B0FC0C3 +:1010F000C13190E5D90721F48091FA018F7707C0BB +:10110000C331D04531F48091FA018B7F877F809382 +:10111000FA018091FA010E94631EABC08D2F9927BE +:101120008F70992781309105D9F49E012370332760 +:1011300002C0880F991F2A95E2F79C688E0144E04F +:10114000000F111F4A95E1F700271370802B912B98 +:1011500053E0CC0FDD1F5A95E1F7C076DD272FC095 +:101160008230910531F4DC2FCC278E01016F106A9B +:1011700080C08330910569F4CE018370992701E026 +:1011800010E002C0000F111F8A95E2F7C8019C68A9 +:101190000FC084309105B9F4CE018370992701E026 +:1011A00010E002C0000F111F8A95E2F7C8019A688B +:1011B00023E0CC0FDD1F2A95E1F7C07ED7708C01AC +:1011C0000C2B1D2B56C08530910531F4DC2FCC271C +:1011D0008E01046F106A4DC0069709F04AC0CF71A6 +:1011E000DD27DC2FCC278E01106243C000E010E029 +:1011F00040C08E013EC001E810E43BC003E810E4AB +:1012000038C002EE14E435C009EE14E432C00AEE30 +:1012100014E42FC005EB14E42CC006EB14E429C041 +:1012200007EB14E426C00CEC14E423C00DEC14E42A +:1012300020C003E815E41DC00AE815E41AC002E95D +:1012400015E417C004E915E414C001E216E411C066 +:1012500003E216E40EC004E216E40BC005E216E455 +:1012600008C006E216E405C007E216E402C00AE27E +:1012700016E4C801DF91CF911F910F91089596E078 +:10128000799FF001112494E5899FE00DF11D11244F +:10129000E60FF11DEE0FFF1FE557FE4F859194916C +:1012A000803E9105E0F4803C910558F5813391052D +:1012B00009F46FC048F48932910509F463C08A3299 +:1012C000910509F46DC072C089339105E9F0823847 +:1012D0009105D1F08533910509F44DC067C0833E77 +:1012E000910581F138F4803E9105B9F0823E910577 +:1012F000D9F05CC0863E910561F1873E9105A1F170 +:1013000055C00E94FC0608952091FA0120FD02C0FC +:1013100021FF4CC080EE90E049C08091FA0180FF2F +:10132000F9CF89E390E042C08091FA0182FF0EC0BC +:101330008091FA0184FF03C080E090E037C083EE23 +:1013400090E034C08091FA0182FFF2CF82EE90E00B +:101350002DC08091FA0183FF0BC08091FA0184FDBA +:10136000EBCF87EE90E022C08091FA0183FFF5CFAA +:1013700086EE90E01BC08091FA0185FF07C089E2EC +:1013800090E014C08091FA0185FFF9CF85E390E0E9 +:101390000DC08091FA0186FF07C08AE290E006C086 +:1013A0008091FA0186FFF9CF81E390E00E940C075B +:1013B000089508950C94D90980916E010895CF93F2 +:1013C000DF9300D01F92CDB7DEB79C018091F10171 +:1013D000843019F593E099833B832A839093E90045 +:1013E0008FEF9091E800815095FD06C095ED9A959C +:1013F000F1F700008111F5CF8091E80085FF0DC065 +:1014000040E050E063E070E0CE0101960E94490C9C +:101410008091E8008E778093E8000F900F900F90F6 +:10142000DF91CF910895CF93DF9300D01F92CDB776 +:10143000DEB72091F101243021F522E029839B833E +:101440008A8383E08093E9008FEF9091E8008150D8 +:1014500095FD06C095ED9A95F1F700008111F5CF45 +:101460008091E80085FF0DC040E050E063E070E04F +:10147000CE0101960E94490C8091E8008E778093FE +:10148000E8000F900F900F90DF91CF910895209179 +:10149000F1012430F1F422E02093E9002FEF3091A4 +:1014A000E800215035FD06C035ED3A95F1F7000012 +:1014B0002111F5CF2091E80025FF0BC040E050E05E +:1014C00065E070E00E94490C8091E8008E7780937F +:1014D000E8000895CF93DF93EC019091F1019430EF +:1014E00009F046C080910C018823D9F080910D014C +:1014F0008823B9F09093E9008FEF9091E800815034 +:1015000095FD06C095E19A95F1F700008111F5CFA0 +:101510008091E80085FF2CC040E050E060E170E081 +:1015200017C081E08093E9008FEF9091E80081502F +:1015300095FD06C095ED9A95F1F700008111F5CF64 +:101540008091E80085FF14C040E050E068E070E062 +:10155000CE010E94490C8091E8008E778093E800CC +:1015600080E1FE01AEE5B1E001900D928A95E1F7D0 +:10157000DF91CF9108958091F001811109C00E94FF +:10158000DE0D0E943B0E8091E20084608093E200B9 +:1015900008951092F001089508950C94D2220E94AB +:1015A000331C0E94D8220E94E1100C94DA0942E018 +:1015B00061EC81E00E94580D42E061EC82E00E9403 +:1015C000580D42E061EC83E00E94580D42E161EC6D +:1015D00084E00C94580D8091F301833009F455C0D8 +:1015E00030F4813071F0823009F48EC008958A3071 +:1015F00009F47AC08B3009F460C0893009F09CC0CE +:1016000020C08091F201813A09F096C08091E800F3 +:10161000877F8093E8008091F6019091F701892BF4 +:1016200021F460E18EE591E003C060E080E090E0AD +:1016300070E00E94940C8091E8008B778093E80022 +:1016400008958091F201813209F076C08091F6010F +:101650009091F701009719F0039709F06DC0809100 +:10166000E800877F8093E8008091E80082FD05C054 +:101670008091F1018111F8CF5FC08091F1008093DA +:101680006E018091E8008B7753C08091F201813A1E +:1016900009F052C08091F6019091F701892B09F071 +:1016A0004BC08091E800877F8093E8008091E8003C +:1016B00080FFFCCF80910C0136C08091F201813215 +:1016C000D9F58091F6019091F701892BA9F58091C8 +:1016D000E800877F8093E8000E948D0D8091F401DF +:1016E00080930C010C947A158091F201813221F5DE +:1016F0008091E800877F8093E8000E948D0D8091A3 +:10170000F50180936F0108958091F201813AA1F46F +:101710008091E800877F8093E8008091E80080FF57 +:10172000FCCF80916F018093F1008091E8008E776B +:101730008093E8000C948D0D089584B7877F84BF53 +:1017400088E10FB6F89480936000109260000FBE9D +:1017500090E080E80FB6F894809361009093610068 +:101760000FBE0E9430110E94DE0D0E943B0E809140 +:10177000E20084608093E20078940E94C1100E948D +:10178000321182E091E00E94DC100E94C022809120 +:10179000F101853069F40E94FA1B8091EF018823E2 +:1017A000B1F30E94251C882391F30E94330CEFCFE4 +:1017B0000E943811ECCF292F332723303105C9F08F +:1017C00064F42130310581F02230310509F043C045 +:1017D0008DE690E027E035E042C021323105F1F09E +:1017E0002232310541F137C082E190E024E735E053 +:1017F00036C099278130910541F08230910541F042 +:10180000892B49F5E3E0F5E005C0EBEEF4E002C01A +:10181000E3EDF4E0849190E09F0121C06430D8F4BE +:10182000E62FF0E0EE0FFF1FEE5DFE4F20813181CD +:1018300089E090E014C0643070F470E0FB01EE0FBA +:10184000FF1FE65EFE4F20813181FB01EA5EFE4F05 +:10185000808190E004C080E090E020E030E0FA0178 +:1018600031832083089580E189BD82E189BD09B477 +:1018700000FEFDCF8091D8008F7D8093D8008091AD +:10188000E00082608093E0008091E00081FDFCCF69 +:101890000895CF92DF92EF92FF920F931F93CF9311 +:1018A000DF93EC018B016A010E94AC0D811133C002 +:1018B000C114D10439F0F60180819181081B190B04 +:1018C000C80FD91FE12CF12C0115110519F18091D8 +:1018D000E80085FD16C08091E8008E778093E800CF +:1018E000C114D10449F0F60180819181E80EF91EFE +:1018F000F182E08285E00FC00E94AC0D882321F3C5 +:101900000AC089918093F10001501109FFEFEF1A8D +:10191000FF0ADACF80E0DF91CF911F910F91FF9006 +:10192000EF90DF90CF9008952091F8013091F90168 +:101930002617370748F06115710539F42091E80042 +:101940002E772093E80001C0B90140E061157105D0 +:10195000A9F12091F101222309F443C0253009F4B3 +:1019600042C02091E80023FD40C02091E80022FD04 +:1019700032C02091E80020FFE9CF4091F300209190 +:10198000F20030E0342BFC01CF016115710559F0F4 +:101990002830310540F481918093F1006150710944 +:1019A0002F5F3F4FF1CF41E02830310509F040E093 +:1019B0002091E8002E772093E800C8CF4111C9CFCD +:1019C0000AC08091F101882361F0853061F0809137 +:1019D000E80083FD0AC08091E80082FFF2CF80E03A +:1019E000089582E0089583E0089581E008952091AC +:1019F000F8013091F9012617370748F06115710594 +:101A000039F42091E8002E772093E80001C0B90155 +:101A1000FC0120E06115710591F18091F1018823AD +:101A200009F440C0853009F43FC08091E80083FD8F +:101A30003DC08091E80082FD2FC08091E80080FFCA +:101A4000E9CF2091F3008091F20090E0922B611594 +:101A5000710559F08830910540F424912093F100EC +:101A60003196615071090196F2CF21E0089709F093 +:101A700020E08091E8008E778093E800CBCF2111A1 +:101A8000CCCF0AC08091F101882361F0853061F0EC +:101A90008091E80083FD0AC08091E80082FFF2CFC8 +:101AA00080E0089582E0089583E0089581E008953C +:101AB000982F973058F59093E900981739F0709166 +:101AC000EC002091ED005091F00003C0242F762F00 +:101AD00050E021FF19C03091EB003E7F3093EB00C6 +:101AE0003091ED003D7F3093ED003091EB0031609F +:101AF0003093EB007093EC002093ED005093F000D6 +:101B00002091EE0027FF07C09F5FD3CF8F70809397 +:101B1000E90081E0089580E008958091F20187FF57 +:101B200011C08091E80082FD05C08091F101811112 +:101B3000F8CF11C08091E8008B770BC08091F10144 +:101B4000882349F08091E80080FFF8CF8091E80079 +:101B50008E778093E80008952091E4003091E500AD +:101B600095E64091EC00842F817040FF22C0809167 +:101B7000E80080FD1CC08091F101882391F0853040 +:101B800091F08091EB0085FD10C04091E4005091F0 +:101B9000E5004217530729F39A01915011F784E0A9 +:101BA000089582E0089583E0089581E0089580E03B +:101BB00008954091E80042FFDECF08950E944C0E48 +:101BC0000E94540EE0EEF0E0808181608083E8EDB9 +:101BD000F0E080818F77808319BCA7EDB0E08C9115 +:101BE0008E7F8C9380818F7E80831092F001089588 +:101BF0000F931F93CF93DF930E944C0E0E94540EBD +:101C0000C8EDD0E088818F77888388818068888359 +:101C100088818F7D888319BC1092F1011092ED01AB +:101C20001092EF011092EE0100EE10E0F8018081B9 +:101C30008B7F808388818160888342E060E080E0E0 +:101C40000E94580DE1EEF0E080818E7F8083E2EE0D +:101C5000F0E0808181608083808188608083F801EA +:101C600080818E7F8083888180618883DF91CF919E +:101C70001F910F910895E8EDF0E080818F7E8083C1 +:101C8000E7EDF0E080818160808384E082BF81E0C5 +:101C90008093F0010C94F80DE8EDF0E080818E7FE8 +:101CA00080831092E20008951092DA001092E10011 +:101CB00008951F920F920FB60F9211242F933F9306 +:101CC0004F935F936F937F938F939F93AF93BF9344 +:101CD000EF93FF938091E10082FF0BC08091E200BF +:101CE00082FF07C08091E1008B7F8093E1000E941A +:101CF000C0108091DA0080FF1FC08091D80080FF63 +:101D00001BC08091DA008E7F8093DA008091D90029 +:101D100080FF0DC080E189BD82E189BD09B400FE6C +:101D2000FDCF81E08093F1010E94BB0A05C019BC80 +:101D30001092F1010E94C90A8091E10080FF19C050 +:101D40008091E20080FF15C08091E2008E7F809339 +:101D5000E2008091E20080618093E2008091D800EF +:101D600080628093D80019BC85E08093F1010E94C5 +:101D7000CD0A8091E10084FF30C08091E20084FFB1 +:101D80002CC080E189BD82E189BD09B400FEFDCF90 +:101D90008091D8008F7D8093D8008091E1008F7E64 +:101DA0008093E1008091E2008F7E8093E200809139 +:101DB000E20081608093E2008091ED01882311F0C0 +:101DC00084E007C08091E30087FD02C081E001C08C +:101DD00083E08093F1010E94CF0A8091E10083FFAC +:101DE00029C08091E20083FF25C08091E100877FB8 +:101DF0008093E10082E08093F1011092ED018091E7 +:101E0000E1008E7F8093E1008091E2008E7F8093DD +:101E1000E2008091E20080618093E20042E060E0B5 +:101E200080E00E94580D8091F00088608093F0005F +:101E30000E94CC0AFF91EF91BF91AF919F918F913A +:101E40007F916F915F914F913F912F910F900FBEB6 +:101E50000F901F9018951F920F920FB60F9211249A +:101E60002F933F934F935F936F937F938F939F93A2 +:101E7000AF93BF93CF93DF93EF93FF93C091E900AC +:101E8000CF708091EC00D82FD17080FDD0E81092F7 +:101E9000E9008091F000877F8093F00078940E94A1 +:101EA0006F0F1092E9008091F00088608093F0003D +:101EB000CD2BCF70C093E900FF91EF91DF91CF91CF +:101EC000BF91AF919F918F917F916F915F914F9152 +:101ED0003F912F910F900FBE0F901F9018951F9359 +:101EE000CF93DF93CDB7DEB7AA970FB6F894DEBFD6 +:101EF0000FBECDBFE2EFF1E088E08E0F9091F100D0 +:101F000091938E13FBCF0E94EB0A8091E80083FF30 +:101F10001FC18091F2019091F301492F50E04A30A6 +:101F2000510508F015C1FA01E15AFF4F0C945A24EB +:101F3000803881F0823809F00BC18091F6018F70F2 +:101F40008093E9008091EB0085FB882780F910924F +:101F5000E90006C08091EE019091EF01911182603D +:101F60009091E800977F9093E8008093F1001092A1 +:101F7000F100C8C0282F2D7F09F0EAC0882319F08E +:101F8000823061F0E5C08091F401813009F0E0C059 +:101F9000933009F080E08093EF012BC08091F40131 +:101FA000811127C08091F6018F7009F4D1C0809310 +:101FB000E9002091EB0020FF1CC0933021F48091B8 +:101FC000EB00806214C09091EB0090619093EB0065 +:101FD00021E030E0A90102C0440F551F8A95E2F7C5 +:101FE0004093EA001092EA008091EB0088608093B1 +:101FF000EB001092E9008091E800877F86C0811194 +:10200000A7C01091F4011F778091E3008078812BA5 +:102010008093E3008091E800877F8093E8000E942E +:102020008D0D8091E80080FFFCCF8091E3008068F7 +:102030008093E300111102C082E001C083E080932D +:10204000F10186C08058823008F082C08091F4018E +:102050009091F5018C3D53E0950779F583E08A83F3 +:102060008AE289834FB7F894DE01139620E03EE0C0 +:1020700051E2E32FF0E050935700E49120FF03C0BA +:10208000E295EF703F5FEF708E2F90E0EA3010F036 +:10209000C79601C0C0968D939D932F5F243149F759 +:1020A0004FBF8091E800877F8093E8006AE270E08C +:1020B000CE0101960E94940C14C0AE014F5F5F4F99 +:1020C0006091F6010E94DB0BBC01009709F440C04F +:1020D0009091E800977F9093E80089819A810E940F +:1020E000F70C8091E8008B778093E80031C080384E +:1020F00079F58091E800877F8093E8008091ED0179 +:102100008093F1008091E8008E778093E8000E9430 +:102110008D0D1EC081111CC09091F4019230C0F44D +:102120008091E800877F8093E8009093ED010E9402 +:102130008D0D8091ED01811106C08091E30087FD36 +:1021400002C081E001C084E08093F1010E94D70ABF +:102150008091E80083FF0AC08091E800877F809328 +:10216000E8008091EB0080628093EB00AA960FB6A6 +:10217000F894DEBF0FBECDBFDF91CF911F910895C0 +:102180000895CF938091F1018823A1F0C091E900D7 +:10219000CF709091EC00892F817090FD80E8C82B62 +:1021A0001092E9008091E80083FD0E946F0FCF70CC +:1021B000C093E900CF9108959093750180937401C5 +:1021C0000895E0917401F0917501309721F001902C +:1021D000F081E02D099480E00895E0917401F09180 +:1021E0007501309721F00280F381E02D0994089564 +:1021F000E0917401F0917501309721F00480F58130 +:10220000E02D099408952091720130917301821795 +:10221000930771F09093730180937201E0917401C0 +:10222000F0917501309721F00680F781E02D099437 +:10223000089520917001309171018217930771F018 +:102240009093710180937001E0917401F091750198 +:10225000309721F00084F185E02D099408950895C8 +:102260000C942F110E94391C0E941A040C94FB1C20 +:102270009F92AF92BF92CF92DF92EF92FF920F9315 +:102280001F93CF93DF9300D000D000D0CDB7DEB73F +:102290000E9432040DE010E0AA24A394B12C902EE9 +:1022A000802F0E942005980129583E4F6901F901AD +:1022B000F080F826A1F40150110988F78FEF898387 +:1022C0008A831B820E94421C8160782F9D838C83AD +:1022D00049815A816B818D810E94CF112FC09091CD +:1022E000DA0191FF04C08E830E9426058E8125E0CD +:1022F00030E0A501022E01C0440F0A94EAF7E42E53 +:102300004F21C1F029839A828E2191E009F490E057 +:102310009B830E94421C8160782F9D838C8349811E +:102320005A816B818D810E94CF11F6018081E82650 +:10233000E08204C021503109E0F6BDCF0E94E21FC7 +:10234000109176010E94E1101817B9F00E94E11077 +:102350008093760126960FB6F894DEBF0FBECDBFF0 +:10236000DF91CF911F910F91FF90EF90DF90CF9071 +:10237000BF90AF909F900C94DA0926960FB6F89410 +:10238000DEBF0FBECDBFDF91CF911F910F91FF90A8 +:10239000EF90DF90CF90BF90AF909F900895CF9334 +:1023A000DF93CDB7DEB72B970FB6F894DEBF0FBE25 +:1023B000CDBF4F83588769877A878B87DE01119657 +:1023C00086E0FD0111928A95E9F785E0FE013796D6 +:1023D00001900D928A95E1F749815A816B817C8148 +:1023E0008D819E810E9418182B960FB6F894DEBF3F +:1023F0000FBECDBFDF91CF910895CF93882309F40D +:10240000C2C0C82F823859F40E94E11081FDBBC0C0 +:1024100089E30E94F21A0E94BF1B89E30CC0833833 +:1024200079F40E94E11080FDAEC083E50E94F21AAB +:102430000E94BF1B83E50E94341BCF910C94BF1BED +:10244000843859F40E94E11082FD9DC087E40E9407 +:10245000F21A0E94BF1B87E4EECF8CEF8C0F813AFB +:1024600048F48C2F0E94252281118DC08C2F0E9450 +:10247000F21AE3CF80E28C0F883048F4C77081E015 +:1024800001C0880FCA95EAF70E94781BD6CF8BE56A +:102490008C0F833078F4C53A29F0C63A31F083E8DE +:1024A00090E005C081E890E002C082E890E0CF9122 +:1024B0000C94031188E58C0F833108F064C0C83A8E +:1024C00039F1C93A41F1CA3A49F1CB3A51F1CC3A22 +:1024D00059F1CD3A61F1C03B69F1CE3A71F1CF3A91 +:1024E00079F1C13B81F1C23B89F1C33B91F1C43B1E +:1024F00099F1C53BA1F1C63BA9F1C73BB1F1C83B7E +:10250000B9F1C93BC1F1CA3BC9F180E090E038C0E4 +:1025100082EE90E035C089EE90E032C08AEE90E025 +:102520002FC085EB90E02CC086EB90E029C087EBB4 +:1025300090E026C08CEC90E023C08DEC90E020C0B1 +:1025400083E891E01DC08AE891E01AC082E991E039 +:1025500017C084E991E014C081E292E011C083E2E7 +:1025600092E00EC084E292E00BC085E292E008C0E7 +:1025700086E292E005C087E292E002C08AE292E041 +:10258000CF910C941911CF910895882309F44BC071 +:10259000823859F40E94E11081FF45C089E30E940E +:1025A000F21A0E94BF1B89E30CC0833871F40E94A9 +:1025B000E11080FF38C083E50E94F21A0E94BF1B21 +:1025C00083E50E94341B0C94BF1B843859F40E948D +:1025D000E11082FF28C087E40E94F21A0E94BF1B0C +:1025E00087E4EFCF9CEF980F913A58F390E2980F61 +:1025F000983050F4877091E001C0990F8A95EAF7FE +:10260000892F0E947E1BDFCF9BE5980F933020F42B +:1026100080E090E00C940311885A833120F480E02C +:1026200090E00C9419110895882321F00E94781BE2 +:102630000C94BF1B0895882321F00E947E1B0C94EC +:10264000BF1B08957F928F929F92AF92BF92CF92BD +:10265000DF92EF92FF920F931F93CF93DF931F921E +:10266000CDB7DEB77C01C62E772EFC010581029521 +:102670000F70128111110E94951B0E94EB1A882382 +:1026800079F0112369F080E28C0D883048F082E007 +:102690000E94D41A0E94EB1A91E0D82ED92601C0CC +:1026A000D12CE72DE295EF70F0E0E759FF4F0C9445 +:1026B0005A24872D807F072D0F70882311F00295F3 +:1026C000007F112389F0002309F490C180E28C0D72 +:1026D000883020F4802F0E94781B03C0802F0E9436 +:1026E000881B0E94BF1B82C18C2D0E94C512002333 +:1026F00009F495C180E28C0D883020F4802F0E946F +:102700007E1B03C0802F0E948E1B0E94BF1B87C1AF +:10271000972D907F872D8F70903211F08295807F5A +:10272000CC2021F0F1E0CF16B1F01EC0112349F00A +:10273000002309F414C1013009F011C10E94A81B43 +:102740006EC1002319F0013009F469C189830E9428 +:10275000AB1B89810AC1112321F0023008F05FC14F +:10276000FEC001115CC101C1112321F0002309F455 +:10277000F6C03CC1002309F4F8C03EC1872D869500 +:102780008695837090E0009719F0019761F047C13A +:10279000112321F08C2D972D937002C080E090E0E2 +:1027A0000E9403113CC1112321F08C2D972D9370B1 +:1027B00002C080E090E00E94191131C18C2D1123DC +:1027C00019F00E94EA1E02C00E94521F0E94D71FE9 +:1027D00026C1872D837009F052C0111120C18C2DA4 +:1027E000829586958770880F880F9C2D9F70892E03 +:1027F000912CA12CB12C082E04C0880C991CAA1C69 +:10280000BB1C0A94D2F7C4FE14C00FE010E020E015 +:1028100030E0B901A80104C0440F551F661F771F9F +:102820008A95D2F7CB01BA01609570958095909505 +:1028300003C060E070E0CB01272D2695269523701C +:1028400030E02230310569F02330310589F0682904 +:1028500079298A299B292130310571F00E9460195C +:10286000DEC0682979298A299B290E947C19D7C052 +:102870000E946019C501B4010E944419D0C01123FF +:1028800019F0872D817001C08695882309F4C7C08F +:102890008C2D829586958770880F880F9C2D9F7050 +:1028A000892E912CA12CB12C082E04C0880C991CC7 +:1028B000AA1CBB1C0A94D2F7C4FE14C00FE010E09F +:1028C00020E030E0B901A80104C0440F551F661F85 +:1028D000771F8A95D2F7CB01BA01609570958095E4 +:1028E000909503C060E070E0CB01272D26952695DA +:1028F0002370422F50E04230510569F043305105BA +:1029000089F0682979298A299B294130510571F07C +:102910000E943A1A84C0682979298A299B290E9431 +:10292000561A7DC00E943A1AC501B4010E941E1AAF +:1029300076C08C2D90E0FC01E05EF109E531F105F7 +:1029400008F050C0E758FF4F0C945A240C2D0F701C +:10295000872D8F71112331F00E94B719802F0E94AB +:1029600014135DC00E94D819802F0E941B1357C0FA +:10297000112339F0011153C0872D8F710E94FD1969 +:102980004EC0023008F04BC0F7CF112339F0872D2D +:102990008F710E94B71943C01123C9F3872D8F711E +:1029A0000E94D8193CC0112329F0872D8F710E94F5 +:1029B000A21935C00E94981932C0112351F0172D69 +:1029C0001F71812F0E94B71963E0812F0E94CB1ADB +:1029D00026C081E00E94D41A023008F182E00E94F1 +:1029E000D41A1DC0112331F0002389F28C2D0E94CE +:1029F000FD1115C0002391F28C2D0E94C5120FC04D +:102A0000472D4F706C2DC7010E94FE050E94BC1817 +:102A100006C0472D4F706C2DC7010E94E906DD20CE +:102A2000F9F00E94C71A80FD1BC0F70112820E94B4 +:102A3000C11A0E94B719C7010E943F150E94C11A0E +:102A40000F90DF91CF911F910F91FF90EF90DF904A +:102A5000CF90BF90AF909F908F907F900C94D8199B +:102A60000F90DF91CF911F910F91FF90EF90DF902A +:102A7000CF90BF90AF909F908F907F9008950F93CD +:102A80001F93CF93DF93EC01888199812B813C8147 +:102A9000232BB9F09F3F11F48F3F99F0CE010E9494 +:102AA0004106882371F0688179818A810E94BD1A6C +:102AB0008C010E94721A0E943919B801CE010E943D +:102AC0002213DF91CF911F910F9108950E94951BC2 +:102AD0000E94A51B0E946A1B0E94BF1B0E948820A7 +:102AE0000E94D71F80E090E00E94031180E090E0F8 +:102AF0000C9419110E94851B0C9466150E94B21A41 +:102B0000292F22952F7030E02C3031054CF42A30DB +:102B100031056CF42250310922303105A8F407C088 +:102B20002C30310569F02F30310551F00DC0803F58 +:102B300069F018F4803E40F409C0843F29F406C0CF +:102B400093FB882780F9089580E0089581E0089537 +:102B5000CF93DF9300D000D01F92CDB7DEB70F9098 +:102B60000F900F900F900F90DF91CF910895CF931A +:102B7000DF9300D000D000D0CDB7DEB726960FB6D9 +:102B8000F894DEBF0FBECDBFDF91CF9108951F93A4 +:102B9000CF93DF93C091850116E080918601C8171D +:102BA00099F0D0E01C9FF0011D9FF00D1124E95712 +:102BB000FE4F4081518162817381848195810E94A1 +:102BC000B7152196C770E9CFDF91CF911F91089576 +:102BD0004091B7015091B8016091B9017091BA016B +:102BE0008091BB019091BC010C94B7158091BC0100 +:102BF00082958F7009F054C08091B901882309F43F +:102C00004FC080918501A09186016091B7017091BC +:102C1000B8014091BA015091BB01B6E08A1709F49E +:102C20003FC090E041155105C1F17F3F11F46F3F66 +:102C3000A1F1B89FF001B99FF00D1124E957FE4FA3 +:102C4000218172132AC02081621327C022812111A1 +:102C500024C0238134812417350710F42150310911 +:102C6000241B350B283C3105C0F42091BC012F708A +:102C700020612093BC0126E0289FF001299FF00DE0 +:102C80001124E457FE4F80818F708061808387EB31 +:102C900091E00E943F150C94C71501968770BECF36 +:102CA0000895CF92DF92EF92FF920F931F93CF93ED +:102CB000DF93CDB7DEB762970FB6F894DEBF0FBED5 +:102CC000CDBF8C0185E0F801DE011D9601900D92CB +:102CD0008A95E1F7D8014C9111965C911197129663 +:102CE0006C9112971396CD90DC9014973091B701A8 +:102CF0007091B8018091BA019091BB01009709F4DD +:102D00006BC17F3F19F43F3F09F466C1E090B90100 +:102D1000EE2009F4C0C02091BC01C816D90628F0E5 +:102D2000F601E81BF90BCF0104C0809590958C0D3E +:102D30009D1DFF24F394883C910578F0F12C207FB1 +:102D400009F0C6C07C2DD98AC88A89890E94A81535 +:102D500087EB91E00E943F15B1C0822F807F09F080 +:102D600046C0751314C0341312C0611110C02F7007 +:102D700020612093BC010E94E81587EB91E00E943E +:102D80003F158091BC01D80115968C932EC0CD289B +:102D900019F15F3F11F44F3FF9F0F62E61111CC09D +:102DA000809185012091860136E0821709F45AC08E +:102DB00090E0389FF001399FF00D1124E957FE4F44 +:102DC0007181571306C07081471303C0728171115E +:102DD00003C001968770E9CFF62E662309F418C167 +:102DE0008091BC0181608093BC01F12C11C17513ED +:102DF00008C0341306C0611104C08091BC01D80121 +:102E0000C3C04D875E878D859E856A8B0E947E1527 +:102E10006A898823E1F16623D1F12091BC01822FD8 +:102E200082958F7090E0029774F08091B701909135 +:102E3000B80198878F831986DB86CA862C87CE01D6 +:102E400007960E943F1586E0F801A7EBB1E00190DC +:102E50000D928A95E1F70E94F6150E94E815FF246D +:102E6000F394D6C04D875E878D859E850E94B21AE9 +:102E7000292F22952F7030E0223031050CF0BCC094 +:102E80009F7009F0B6C0805E883008F4C1C0C801E8 +:102E90000E943F15E4CFC816D90608F453C0F601C6 +:102EA000E81BF90BCF01883C910508F450C0F12CC8 +:102EB0007C2DD98AC88A89890E94A815E7EBF1E0A0 +:102EC00086E0DF011D928A95E9F70E94E815A0C00F +:102ED000751314C0341312C0611110C08091BC016D +:102EE000F8018583C8010E943F1586E0E7EBF1E019 +:102EF000DF011D928A95E9F7FE2C8AC04D875E8717 +:102F00008D859E856A8B0E947E156A89882309F4C7 +:102F1000BECF662309F4BBCF2091BC01822F8295DE +:102F20008F7090E002970CF48ECF8091B701909152 +:102F3000B8019A8389831B82DD82CC822E83CE01E5 +:102F400001967FCF809590958C0D9D1DACCFF62E70 +:102F5000662309F49CCF75132EC034132CC0209126 +:102F6000BC0120FD1FC0822F82958F70D9F0D8013F +:102F700015962C9315978F3049F08F5F982F929567 +:102F8000907F822F8F70892B15968C93C8010E9499 +:102F90003F1586E0F801A7EBB1E001900D928A950C +:102FA000E1F793CF86E0F801A7EBB1E001900D9235 +:102FB0008A95E1F72DC04D875E878D859E850E949D +:102FC0007E15811140CF8091BC0181608093BC014E +:102FD000C8010E943F151CC0662309F458CF4D87D5 +:102FE0005E878D859E850E947E15882309F44FCFCC +:102FF0002ACF811148CF0CC0243031050CF047CFC7 +:103000009F7009F440CFF8019581907F09F03BCF84 +:103010008F2D62960FB6F894DEBF0FBECDBFDF9145 +:10302000CF911F910F91FF90EF90DF90CF90089577 +:103030001F93CF93DF93CDB7DEB72C970FB6F894DD +:10304000DEBF0FBECDBF4F83588769877A878B87D6 +:103050009C87CE0107960E945116882369F08F81C4 +:1030600098852A853B85232BF1F19F3F09F063C0AA +:103070008F3F09F060C037C086E0FE013796DE0161 +:10308000119601900D928A95E1F76F817885EA8516 +:10309000FB85309741F17F3F11F46F3F21F1209183 +:1030A000860130E0C901019687709927409185011A +:1030B00050E08417950709F447C069837A83FD833C +:1030C000EC8396E0929FD001939FB00D1124A957F5 +:1030D000BE4FFE01319601900D929A95E1F78093D3 +:1030E00086010E94C71516E08091850190918601A6 +:1030F0008917C1F1189FC001112489579E4F0E9462 +:103100005116882379F1E09185011E9FF001112469 +:10311000E957FE4F4081518162817381848195819D +:103120000E94B7158091850190E0019687709927DC +:1031300080938501D9CF4F81588569857A858B85A4 +:103140009C850E94B715CFCF0E947A1510928601F8 +:1031500010928501E7EBF1E086E0DF011D928A9590 +:10316000E9F7C1CF2C960FB6F894DEBF0FBECDBFE6 +:10317000DF91CF911F910895EF92FF920F931F93CC +:10318000CF93DF938C01009709F46CC0F12CEE24EF +:10319000E394E8012196F8018491843740F4843067 +:1031A00008F051C0813081F0823019F15BC0853761 +:1031B00009F444C0A8F19CE7980F903708F052C07A +:1031C0008F770E94C51241C00E5F1F4FFE01C49150 +:1031D00080E28C0F883048F4C7708E2D01C0880FB4 +:1031E000CA95EAF70E94981B14C08C2F0E94FD110B +:1031F0002DC00E5F1F4FFE01C49180E28C0F8830FE +:1032000058F4C7708E2D01C0880FCA95EAF70E9446 +:103210009E1B0E94BF1B1AC08C2F0E94C51216C095 +:103220000E5F1F4FFE01C491CC2381F08FE99FE018 +:103230000197F1F700C00000C150F6CF0E5F1F4F9D +:10324000FE01F49003C00E94FD118E018F2D882392 +:1032500009F49FCFEFE9FFE03197F1F700C00000DC +:103260008150F5CFDF91CF911F910F91FF90EF909B +:10327000089508956093C1017093C2018093C301C2 +:103280009093C4010C9466150F931F930091C10194 +:103290001091C2012091C3013091C401DC01CB0126 +:1032A000802B912BA22BB32B8093C1019093C20151 +:1032B000A093C301B093C4011F910F910C946615A4 +:1032C0000F931F930091C1011091C2012091C3017E +:1032D0003091C401DC01CB0180239123A223B323CD +:1032E0008093C1019093C201A093C301B093C40124 +:1032F0001F910F910C9466150F931F930091C101BC +:103300001091C2012091C3013091C401DC01CB01B5 +:1033100080279127A227B3278093C1019093C201F0 +:10332000A093C301B093C4011F910F910C94661533 +:103330001092BD011092BE011092BF011092C00107 +:103340000C94661541E050E060E070E004C0440F6A +:10335000551F661F771F8A95D2F74093BD01509382 +:10336000BE016093BF017093C0010C94661541E0EB +:1033700050E060E070E004C0440F551F661F771FE7 +:103380008A95D2F78091BD019091BE01A091BF01B5 +:10339000B091C001482B592B6A2B7B2B4093BD0168 +:1033A0005093BE016093BF017093C0010C946615E9 +:1033B00041E050E060E070E004C0440F551F661F1C +:1033C000771F8A95D2F740955095609570958091BA +:1033D000BD019091BE01A091BF01B091C0014823F1 +:1033E00059236A237B234093BD015093BE01609310 +:1033F000BF017093C0010C94661541E050E060E09D +:1034000070E004C0440F551F661F771F8A95D2F7DE +:103410008091BD019091BE01A091BF01B091C0010A +:10342000482759276A277B274093BD015093BE0147 +:103430006093BF017093C0010C9466150F931F93A6 +:103440000091BD011091BE012091BF013091C001DA +:10345000DC01CB01802B912BA22BB32B8093BD01E0 +:103460009093BE01A093BF01B093C0011F910F9133 +:103470000C9466150F931F930091BD011091BE012E +:103480002091BF013091C001DC01CB018023912349 +:10349000A223B3238093BD019093BE01A093BF01EB +:1034A000B093C0011F910F910C9466150F931F9359 +:1034B0000091BD011091BE012091BF013091C0016A +:1034C000DC01CB0180279127A227B3278093BD0180 +:1034D0009093BE01A093BF01B093C0011F910F91C3 +:1034E0000C9466150895CF92DF92EF92FF920F939E +:1034F0001F93CF93DF938C01C090C101D090C20184 +:10350000E090C301F090C4018091BD019091BE0193 +:10351000A091BF01B091C001C82AD92AEA2AFB2A8A +:10352000CFE1D0E0D701C6010C2E04C0B695A79517 +:10353000979587950A94D2F780FF06C0B8018C2F23 +:103540000E943F09019721F4219760F780E001C0B4 +:103550008C2FDF91CF911F910F91FF90EF90DF9013 +:10356000CF900895CF93DF93EC010E94731ABE01B0 +:103570000E943F09DF91CF910895CB010E94B21ABA +:1035800008958091C50185958595859508958091CB +:10359000C5018770089598E0899F90011124262B1A +:1035A0002093C5010C94B7192091C5018095822301 +:1035B0008093C501982F977069F430E0482F552704 +:1035C00047FD50952417350729F0859585958595F4 +:1035D0000C94D81908959091C501977081E009F471 +:1035E00080E0089590910C01992321F090910D01B4 +:1035F000911109C020910E0130910F01F90132960D +:103600009FEF40E01FC0982F9695969596959F3016 +:1036100050F5E0910E01F0910F01E90FF11D877057 +:1036200021E030E0A90102C0440F551F8A95E2F75E +:10363000CA019181892B818308959F3F39F04F5FA3 +:103640004E3041F051915813F8CF0DC05111F7CFC2 +:10365000942FF5CF9F3F39F0F901E90FF11D97FD48 +:10366000FA9582830895089590910C01992321F091 +:1036700090910D01911109C020910E0130910F011F +:10368000F9013296205F3F4F1FC0982F969596956F +:1036900096959F30F0F4E0910E01F0910F01E90F43 +:1036A000F11D877021E030E0A90102C0440F551FD1 +:1036B0008A95E2F7CA0180959181892381830895D3 +:1036C0003196E217F30729F090819813F9CF108211 +:1036D000F7CF089581E090E0E0910E01F0910F01A5 +:1036E000E80FF91F1082019680319105A9F708951E +:1036F0009091D901892B8093D9010895809590915B +:10370000D90189238093D90108951092D901089590 +:103710009091D801892B8093D8010895809590913C +:10372000D80189238093D80108951092D801089573 +:103730009091D701892B8093D7010895809590911E +:10374000D70189238093D70108951092D701089556 +:103750008093C60108951092C601089580910E01CC +:1037600090910F01FC0131969C01205F3F4F80E05A +:10377000919191118F5FE217F307D1F70895E091CE +:103780000E01F0910F018091D9018083E0910E012B +:10379000F0910F0190818091D801892B8083E09175 +:1037A0000E01F0910F0190818091D701892B8083C8 +:1037B0008091C601882361F0E0910E01F0910F0124 +:1037C0009081892B80830E94AE1B81111092C601CB +:1037D00080910E0190910F010C94ED1020E0009764 +:1037E00039F0AC0141505109842395232F5FF7CF65 +:1037F000822F08958091F101843021F11092DB0134 +:1038000020E488E190E00FB6F894A89580936000DA +:103810000FBE2093600080E00E94DA0983B7817FA9 +:10382000846083BF83B7816083BF7894889583B7B2 +:103830008E7F83BF88E10FB6F8948093600010926A +:1038400060000FBE0895089508950E94231C0E94F1 +:1038500032040E94241C0E94270591E0811101C0BE +:1038600090E0892F08950E947A150E94E1100C942F +:10387000DA0982E084BD93E095BD9AEF97BD80930D +:103880006E0008952FB7F8948091DC019091DD01CE +:10389000A091DE01B091DF012FBF0895CF92DF929A +:1038A000EF92FF920F931F932FB7F8944091DC0192 +:1038B0005091DD016091DE017091DF012FBF6A013F +:1038C0007B01EE24FF248C0120E030E0C016D106FD +:1038D000E206F30610F4415051099A01281B390BF6 +:1038E000C9011F910F91FF90EF90DF90CF90089545 +:1038F0001F920F920FB60F9211248F939F93AF9345 +:10390000BF938091DC019091DD01A091DE01B09127 +:10391000DF010196A11DB11D8093DC019093DD01B3 +:10392000A093DE01B093DF01BF91AF919F918F9182 +:103930000F900FBE0F901F9018950E94DE0DF89407 +:103940002FEF87EA91E6215080409040E1F700C0D8 +:10395000000087E090EBDC018093FB019093FC0179 +:10396000A093FD01B093FE019CE088E10FB6F894AE +:10397000A895809360000FBE90936000FFCFEF92F8 +:10398000FF920F931F93CF93DF93D82FCDE08C2F0F +:103990000E94200505E010E0E82EF12CC701002E62 +:1039A00002C0959587950A94E2F780FF09C0602FC1 +:1039B0007C2F80E00E94EA06D81302C081E006C096 +:1039C0000150110958F7C15010F780E0DF91CF91F5 +:1039D0001F910F91FF90EF900895CF93C82F8CE225 +:1039E0000E94BF1C882321F08C2FCF910C94BF1C08 +:1039F00080E0CF910895CF930E94421E811102C0B2 +:103A00000E94281EC5E6C15049F00E9432048FE38F +:103A10009CE90197F1F700C00000F5CF89E20E9410 +:103A2000ED1C811113C18AE20E94ED1C81110E94DC +:103A3000281E85E00E94ED1C81110E949D1C0E94A1 +:103A40004D1E8093DA0187E00E94ED1C8823A9F1C6 +:103A50008BE10E94ED1C882351F08091DA0181FBFB +:103A6000222720F991E0922790FB81F90EC08EE089 +:103A70000E94ED1C882361F08091DA0182FB2227ED +:103A800020F991E0922790FB82F98093DA0115C02A +:103A900080E10E94ED1C9091DA01882341F093FBB4 +:103AA000222720F981E0822780FB93F904C0892F27 +:103AB000809580FB90F99093DA018091DA010E9461 +:103AC000511E0E945F1E8093FA0180EE0E94ED1C41 +:103AD000882341F08091FA01982F909590FB80F90E +:103AE0008093FA0189E30E94ED1C882359F08091AC +:103AF000FA0181FB222720F991E0922790FB81F9BE +:103B00008093FA0182EE0E94ED1C882359F0809187 +:103B1000FA0182FB222720F991E0922790FB82F99B +:103B20008093FA0186EE0E94ED1C882359F0809163 +:103B3000FA0183FB222720F991E0922790FB83F979 +:103B40008093FA0183EE0E94ED1C882359F0809146 +:103B5000FA0184FB222720F991E0922790FB84F957 +:103B60008093FA0185E30E94ED1C882359F080912F +:103B7000FA0185FB222720F991E0922790FB85F935 +:103B80008093FA0181E30E94ED1C882359F0809113 +:103B9000FA0186FB222720F991E0922790FB86F913 +:103BA0008093FA0181E10E94ED1C882359F08091F5 +:103BB000FA0187FB222720F991E0922790FB87F9F1 +:103BC0008093FA018091FA010E94631E8091FA01AC +:103BD00087FB882780F980930D0187E20E94ED1C06 +:103BE000C82F8EE10E94ED1C8111C2608FE10E94FE +:103BF000ED1C8111C46080E20E94ED1C8111C8603F +:103C000081E20E94ED1C8111C06182E20E94ED1CE4 +:103C10008111C06283E20E94ED1C8111C06484E2C4 +:103C20000E94ED1C882311F0C06802C0CC2329F04B +:103C30008C2F0E945A1E6C2F03C00E94561E682FA4 +:103C400070E080E090E0CF910C943A19CF91089504 +:103C50006DEE7EEF80E090E00E94942460E082E0D0 +:103C600090E00E94822460E083E090E00E94822441 +:103C700060E084E090E00E94822460E085E090E0D3 +:103C80000C94822480E090E00E947C2421E08D3E10 +:103C90009E4F09F020E0822F089582E090E00C947E +:103CA0007424682F82E090E00C94822483E090E0FA +:103CB0000C947424682F83E090E00C94822484E0B8 +:103CC00090E00C947424682F84E090E00C9482249B +:103CD0008091E20180FF0BC06091130185E0689F35 +:103CE000B001112475956795759567952BC081FF77 +:103CF00009C06091130185E0689FB001112475959A +:103D0000679520C082FF07C06091130185E0689F1E +:103D1000B001112417C09091E3019923D1F0609173 +:103D20001201961788F72091130185E0289F9001D2 +:103D30001124929FA001939F500D112470E0CA019D +:103D40000E9446246038710540F46115710539F010 +:103D500002C065E070E0862F08958FE7089581E046 +:103D600008958091E20180FF08C06091110170E028 +:103D7000759567957595679521C081FF06C060911F +:103D8000110170E07595679519C082FF04C06091BC +:103D9000110170E010C09091E3019923C1F060918E +:103DA00010019617A0F780911101899FC00111247D +:103DB00070E00E9446246038710528F46115710591 +:103DC00021F0862F08958FE7089581E0089561E03E +:103DD00070E0F4CF803F21F40E94681E819504C0FA +:103DE000813F29F40E94681E8093E6010895823F76 +:103DF00021F40E94681E819504C0833F29F40E942B +:103E0000681E8093E5010895893F19F40E94B11E50 +:103E100005C08A3F31F40E94B11E81958093E7016D +:103E200008958B3F21F40E94B11E819504C08C3F00 +:103E300029F40E94B11E8093E8010895843F21F483 +:103E40008091E401816017C0853F21F48091E401F5 +:103E5000826011C0863F21F48091E40184600BC030 +:103E6000873F21F48091E401886005C0883F31F4E8 +:103E70008091E40180618093E40108958D3F21F4F5 +:103E80008091E20181600BC08E3F21F48091E201BC +:103E9000826005C08F3F29F48091E20184608093A5 +:103EA000E2010895803F39F48091E60187FF6CC0FC +:103EB0001092E60169C0813F29F48091E60118164D +:103EC000BCF362C09091E501823F29F497FF5CC08A +:103ED0001092E50159C0833F19F41916CCF354C070 +:103EE000893F41F48091E70118160CF04DC0109203 +:103EF000E7014AC08A3F29F48091E70187FF44C067 +:103F0000F6CF8B3F39F48091E80187FF3DC01092D6 +:103F1000E8013AC08C3F29F48091E8011816BCF3FF +:103F200033C0843F21F48091E4018E7F17C0853F28 +:103F300021F48091E4018D7F11C0863F21F48091AE +:103F4000E4018B7F0BC0873F21F48091E401877FE0 +:103F500005C0883F31F48091E4018F7E8093E401B5 +:103F600013C08D3F21F48091E2018E7F0BC08E3F04 +:103F700021F48091E2018D7F05C08F3F29F480916B +:103F8000E2018B7F8093E2018091E50181110EC0F7 +:103F90008091E60181110AC08091E701811106C07C +:103FA0008091E801811102C01092E301089584EE2E +:103FB00091E00E94F8100E94421C9093E1018093CE +:103FC000E00108951F93CF93DF938091E0019091DA +:103FD000E1010E944E1CAC019091E301992321F074 +:103FE0002091140130E006C0209115018AE0289F3D +:103FF000900111244217530708F486C08091E5010F +:10400000C091E601D091E7011091E801811107C04C +:10401000C11176C0D11174C0111172C075C09F3F1B +:1040200019F09F5F9093E301181624F40E94681E14 +:104030008093E5018091E50187FF05C00E94681E1D +:1040400081958093E5011C1624F40E94681E8093DC +:10405000E6018091E60187FF05C00E94681E8195F8 +:104060008093E6016091E501662339F1C091E60194 +:10407000CC2319F1772767FD7095872F972F0E9422 +:10408000572323E333E343E35FE30E94BB230E9410 +:1040900024236093E5016C2F772767FD7095872FA8 +:1040A000972F0E94572323E333E343E35FE30E9408 +:1040B000BB230E9424236093E6011D1624F40E9472 +:1040C000B11E8093E7018091E70187FF05C00E9440 +:1040D000B11E81958093E701111624F40E94B11E50 +:1040E0008093E8018091E80187FF05C00E94B11E1E +:1040F00081958093E801DF91CF911F910C94D71F98 +:104100009F3F09F08ECF96CFDF91CF911F910895F9 +:10411000E4EEF1E085E0DF011D928A95E9F7109267 +:10412000E3011092E2010895833081F128F4813097 +:1041300059F08230D1F00895853009F449C0B8F1C2 +:10414000863009F456C0089580911501262F30E07D +:10415000280F311D2F3F310524F4680F609315019E +:1041600008958FEF80931501089580911401262FF3 +:1041700030E0280F311D2F3F310524F4680F609384 +:10418000140108958FEF8093140108958091130115 +:10419000262F30E0280F311D2F3F310524F4680F02 +:1041A0006093130108958FEF809313010895809118 +:1041B0001201262F30E0280F311D2F3F310524F446 +:1041C000680F6093120108958FEF80931201089594 +:1041D00080911101262F30E0280F311D2F3F31052E +:1041E00024F4680F6093110108958FEF80931101FB +:1041F000089580911001262F30E0280F311D2F3FA8 +:10420000310524F4680F6093100108958FEF8093B7 +:1042100010010895833011F128F4813049F0823083 +:1042200091F00895853081F120F18630C1F1089533 +:1042300080911501681720F4861B8093150108955D +:1042400010921501089580911401681720F4861BBF +:104250008093140108951092140108958091130120 +:10426000681720F4861B80931301089510921301A0 +:10427000089580911201681720F4861B8093120123 +:10428000089510921201089580911101681720F489 +:10429000861B809311010895109211010895809159 +:1042A0001001681720F4861B809310010895109266 +:1042B000100108950F931F938D3109F46BC008F01E +:1042C0003FC08E3009F47FC0C0F4873009F469C064 +:1042D00068F4863009F0B1C08091DA01817F8E7F69 +:1042E0008093DA0181E08093EA01A8C0883009F464 +:1042F000A2C08B3009F49FC0A0C0863109F49BC0D6 +:1043000078F4803109F472C0813109F096C00E94BE +:104310007A1590910D0181E0892780930D018BC062 +:10432000893109F488C08B3109F087C08091DA01A6 +:1043300081FB222720F991E0922790FB81F94CC064 +:10434000853309F470C048F4873209F46CC008F46E +:1043500059C0893209F467C070C0833438F48A3395 +:1043600008F04EC0883309F466C067C0833409F48E +:104370005AC0883409F061C00E947A150FEF13ED1E +:1043800020E3015010402040E1F700C000000E94EF +:104390009D1C51C00E94DE220E94E1100E94DA0999 +:1043A0004AC09091DA01892F8095817080FB90F945 +:1043B00029F0966098609093DA0140C0997F977FCA +:1043C0009093DA0138C08091DA0182FB222720F92C +:1043D00091E0922790FB82F98093DA01992359F1B9 +:1043E0008091DA0181608093DA0125C08091DA0141 +:1043F00083FB222720F991E0922790FB83F9ECCFF1 +:10440000895301C08D5141E050E060E070E08A01C5 +:104410009B0104C0000F111F221F331F8A95D2F782 +:10442000C901B80104C061E070E080E090E00E9442 +:104430003A190E947A1581E001C080E01F910F9126 +:10444000089580E0089580E00895CF93C82F80916B +:10445000EA01813079F018F08230E9F187C0E0910B +:104460000E01F0910F018081813169F0823209F0F3 +:104470007FC009C0E0910E01F0910F018081813170 +:1044800011F0823261F48C2F0E942122811104C02C +:104490008C2F0E945A211DC081E090E01AC08C2F01 +:1044A0000E942322811114C0C43179F048F4CB302A +:1044B00079F0C03109F060C082E08093EA0108C061 +:1044C000C93219F0C83321F057C01092EA0154C024 +:1044D00081E0817053C0C93289F118F5C43171F19E +:1044E000A8F4C73009F046C08AE08093150194E132 +:1044F0009093140193E0909313018093120188E04C +:104500008093110188E28093100134C0CE51C630EF +:1045100088F5EC2FF0E0E65DFE4F80818093E901A5 +:1045200029C0CE34E9F020F4CB3421F56AE013C081 +:10453000C13579F0C235F1F461E00DC08091E90137 +:10454000882319F01092E90115C081E08093EA01F7 +:1045500015C061E006C08091E9010E9494200AC064 +:104560006AE08091E9010E940A2104C01092EA01E8 +:1045700080E004C081E002C080E0ABCFCF9108951D +:10458000E1E8F0E0808188608083808181608083C1 +:104590008FB7F89493E09093890090ED9093880002 +:1045A0008FBF0895EFE6F0E08081826080830895F8 +:1045B000EFE6F0E080818D7F80830895EFE6F0E004 +:1045C000908182E08927808308951F920F920FB611 +:1045D0000F9211242F933F934F935F936F937F9389 +:1045E0008F939F93AF93BF93EF93FF938091EB01D2 +:1045F0009091EC0101969093EC018093EB01811175 +:1046000003C082E00E94DA09E091EC01E695E695AC +:10461000F0E0EF57F94FE4918091EB018E1303C066 +:1046200080E00E94DA09FF91EF91BF91AF919F91D5 +:104630008F917F916F915F914F913F912F910F904B +:104640000FBE0F901F90189504D06894B1118DC0C3 +:10465000089570D088F09F5790F0B92F9927B751DF +:10466000A0F0D1F0660F771F881F991F1AF0BA9536 +:10467000C9F712C0B13081F077D0B1E0089574C0AD +:10468000672F782F8827B85F39F0B93FCCF386952C +:1046900077956795B395D9F73EF490958095709589 +:1046A00061957F4F8F4F9F4F0895E89409C097FB06 +:1046B0003EF490958095709561957F4F8F4F9F4FF9 +:1046C0009923A9F0F92F96E9BB279395F69587953D +:1046D00077956795B795F111F8CFFAF4BB0F11F400 +:1046E00060FF1BC06F5F7F4F8F4F9F4F16C08823A7 +:1046F00011F096E911C0772321F09EE8872F762FDD +:1047000005C0662371F096E8862F70E060E02AF01D +:104710009A95660F771F881FDAF7880F9695879509 +:1047200097F9089557FD9058440F551F59F05F3F72 +:1047300071F04795880F97FB991F61F09F3F79F0C3 +:1047400087950895121613061406551FF2CF469545 +:10475000F1DF08C0161617061806991FF1CF8695C7 +:104760007105610508940895E894BB2766277727AB +:10477000CB0197F908950BD078C069D028F06ED09E +:1047800018F0952309F05AC05FC01124EECFCADF9C +:10479000A0F3959FD1F3950F50E0551F629FF00154 +:1047A000729FBB27F00DB11D639FAA27F00DB11DAD +:1047B000AA1F649F6627B00DA11D661F829F222736 +:1047C000B00DA11D621F739FB00DA11D621F839FBD +:1047D000A00D611D221F749F3327A00D611D231F93 +:1047E000849F600D211D822F762F6A2F11249F57E1 +:1047F00050408AF0E1F088234AF0EE0FFF1FBB1F04 +:10480000661F771F881F91505040A9F79E3F5105A2 +:1048100070F014C0AACF5F3FECF3983EDCF38695AE +:1048200077956795B795F795E7959F5FC1F7FE2B4D +:10483000880F911D9695879597F9089597F99F6729 +:1048400080E870E060E008959FEF80EC0895002418 +:104850000A941616170618060906089500240A94E5 +:1048600012161306140605060895092E0394000C6B +:1048700011F4882352F0BB0F40F4BF2B11F460FFFA +:1048800004C06F5F7F4F8F4F9F4F089597FB072E98 +:1048900016F4009407D077FD09D00E94602407FC2D +:1048A00005D03EF4909581959F4F08957095619540 +:1048B0007F4F0895EE0FFF1F0590F491E02D0994AE +:1048C000AA1BBB1B51E107C0AA1FBB1FA617B70736 +:1048D00010F0A61BB70B881F991F5A95A9F7809552 +:1048E0009095BC01CD010895F999FECF92BD81BD8F +:1048F000F89A992780B50895A8E1B0E042E050E029 +:104900000C949C24262FF999FECF92BD81BDF89A74 +:10491000019700B4021639F01FBA20BD0FB6F89403 +:10492000FA9AF99A0FBE08950196272F0E948324C0 +:104930000C948224DC01CB01FC01F999FECF06C066 +:10494000F2BDE1BDF89A319600B40D92415050404D +:08495000B8F70895F894FFCFB9 +:104958000220DC096A0A470A130ADF090101C701B4 +:1049680028080A03140A3F4D36394206F505BF05E3 +:104978008605190532054B05640501020304050681 +:044988000708090013 +:00000001FF diff --git a/keyboards/ergodox_ez/keymaps/colemak_osx_pc_no/keyboard-layout.png b/keyboards/ergodox_ez/keymaps/colemak_osx_pc_no/keyboard-layout.png new file mode 100644 index 0000000000..57df5a1f99 Binary files /dev/null and b/keyboards/ergodox_ez/keymaps/colemak_osx_pc_no/keyboard-layout.png differ diff --git a/keyboards/ergodox_ez/keymaps/colemak_osx_pc_no/keymap.c b/keyboards/ergodox_ez/keymaps/colemak_osx_pc_no/keymap.c new file mode 100644 index 0000000000..3b74d266f7 --- /dev/null +++ b/keyboards/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 "keymap_norwegian.h" + +#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/keyboards/ergodox_ez/keymaps/colemak_osx_pc_no/readme.md b/keyboards/ergodox_ez/keymaps/colemak_osx_pc_no/readme.md new file mode 100644 index 0000000000..48f095cae9 --- /dev/null +++ b/keyboards/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/keyboards/ergodox_ez/keymaps/csharp_dev/compiled.hex b/keyboards/ergodox_ez/keymaps/csharp_dev/compiled.hex new file mode 100644 index 0000000000..3f42f6272e --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/csharp_dev/compiled.hex @@ -0,0 +1,1159 @@ +:100000000C94F5020C9439030C9439030C943903C5 +:100010000C9439030C9439030C9439030C94390370 +:100020000C9439030C9439030C94B90E0C948B0F77 +:100030000C9439030C9439030C9439030C94390350 +:100040000C9439030C9445220C9439030C94390315 +:100050000C9439030C94271D0C9439030C94390328 +:100060000C9439030C9439030C9439030C94390320 +:100070000C9439030C9439030C9439030C94390310 +:100080000C9439030C9439030C9439030C94390300 +:100090000C9439030C9439030C9439030C943903F0 +:1000A0000C9439030C9439030C943903B505BB0542 +:1000B000C105C705CD05D205D705E105E605DC0577 +:1000C000EB05F005F505FA05FF050406F80F1A1013 +:1000D00008111A1008115F1082100811D710EA10C9 +:1000E000B913B913E813E8131E143E146F156F15F6 +:1000F00049146F15F914F91460156F156F1569150A +:100100000615061506150615061506150615061517 +:100110000615061506150615061506150615061507 +:10012000181525152C1533153D1501E1012602265C +:100130000127022702E101330233000111021101FC +:10014000080208011A021A012C022C000138023898 +:100150000138023801E101170217011202120107EA +:1001600002070112021202E1012C022C0001050219 +:1001700005011502150108020801040204010E021E +:100180000E01330233000111021101180218010F90 +:10019000020F010F020F00011502150108020801EC +:1001A000170217011802180115021501110211009A +:1001B00001090209010F020F0112021201040204D7 +:1001C00001170217012C022C00010C020C01110274 +:1001D0001101170217012C022C0001050205011262 +:1001E000021201120212010F020F012C022C000157 +:1001F0001602160117021701150215010C020C0157 +:10020000110211010A020A012C022C000119021923 +:100210000104020401150215012C022C000119022F +:100220001901120212010C020C01070207012C0233 +:100230002C00010602060112021201110211011620 +:10024000021601170217012C022C000116021601DA +:100250001702170104020401170217010C020C0116 +:10026000060206012C022C000113021301150215CF +:10027000010C020C011902190104020401170217F2 +:1002800001080208012C022C0001130213011802BC +:100290001801050205010F020F010C020C010602F4 +:1002A00006012C022C000000F0A1260227022F02DA +:1002B00030022B6100001E00140004001D64360291 +:1002C00019011F001A0016001B0037022C622000C3 +:1002D0000800070006003102286821001500090007 +:1002E000190024020601220017000A000500000080 +:1002F000374134022A0000003800000036001601A1 +:100300004C000000330000004A0023001C000B00DA +:10031000110000004D41240018000D0010002E00B7 +:10032000520025000C000E0034002E022868260022 +:1003300012000F001E022D002C62270013002D0258 +:100340003802250251002F0030001C011D0101530D +:10035000000029002B0001000100010000003A000C +:100360000A300B300100E30001003B000C300D307F +:100370000100E20001003C0010300F300E3001009F +:1003800001003D00113012301330010001003E0029 +:100390001430153016300000010035000100000057 +:1003A000310000001B01B200010000003502000016 +:1003B00001003F00173018301930000001004000E4 +:1003C0000100010001004B0001004100010001009B +:1003D00001004E004F0042000100010001004900F1 +:1003E00050004300010001000100460001004400EC +:1003F00045000100010001000000160345007200E5 +:1004000067006F0044006F007800200045005A002C +:10041000000016034500720067006F0044006F0083 +:100420007800200045005A00000004030904090276 +:100430006D00040100A0FA0904000001030101009D +:100440000921110100012240000705810308000A6B +:100450000904010001030102000921110100012228 +:100460004D000705820308000A0904020001030089 +:10047000000009211101000122360007058303084D +:10048000000A090403000103000000092111010012 +:100490000122390007058403100001120110010038 +:1004A000000008EDFE07130100010200010501092B +:1004B00006A101050719E029E71500250195087532 +:1004C000018102050819012905950575019102951B +:1004D000017503910105071900297715002501957C +:1004E0007875018102C005010980A101850216010C +:1004F0000026B7001A01002AB70075109501810087 +:10050000C0050C0901A1018503160100269C021AF1 +:1005100001002A9C02751095018100C005010902A5 +:10052000A1010901A10005091901290515002501ED +:100530009505750181029501750381010501093059 +:1005400009311581257F95027508810609381581C5 +:10055000257F950175088106050C0A38021581254D +:100560007F950175088106C0C005010906A1010536 +:100570000719E029E7150025019508750181029505 +:100580000175088101050819012905950575019175 +:10059000029501750391010507190029FF15002631 +:1005A000FF00950675088100C000000000000000F3 +:1005B00000000000010204060A0F17202C3A4A5DD1 +:1005C00071879DB3C7DAE9F5FCFFFCF5E9DAC7B33B +:1005D0009D87715D4A3A2C20170F0A06040201001C +:1005E0000000000000000000000011241FBECFEF3B +:1005F000DAE0DEBFCDBF04B603FE24C08091FD016A +:100600009091FE01A091FF01B09100028730904BC4 +:10061000A740B04BB9F41092FD011092FE01109268 +:10062000FF011092000214BE84B7877F84BF88E167 +:100630000FB6F89480936000109260000FBEE0E067 +:10064000FFE3099511E0A0E0B1E0E8E1F8E402C0C1 +:1006500005900D92A433B107D9F711E0A4E3B1E0FE +:1006600001C01D92AD3FB107E1F70E94010C0C944F +:100670000A240C9400001092B9008AE08093B8001C +:10068000089594EA9093BC009091BC0097FFFCCF32 +:100690009091B900987F983021F0903111F081E06D +:1006A00008958093BB0084E88093BC008091BC00D7 +:1006B00087FFFCCF8091B900887F883111F08034AA +:1006C00071F780E0089584E98093BC008091BC00BC +:1006D00084FDFCCF08958093BB0084E88093BC0028 +:1006E0008091BC0087FFFCCF9091B900987F81E09A +:1006F000983209F480E0089584E88093BC008091EA +:10070000BC0087FFFCCF8091BB00089580B38C7044 +:1007100080BB81B3836F81BB0895809101018111FA +:1007200015C080E40E9441038093010181110CC037 +:1007300082E10E946B0380930101811105C08FEF5C +:100740000E946B03809301010E94630384B1807F48 +:1007500084B985B1807F85B98AB1837F8AB98BB12D +:10076000837F8BB93E98469808950E9457058093E1 +:1007700001010E948D030E948603A5E3B1E0E3E43A +:10078000F1E08EE08E0F11921D928E13FCCF0C942F +:1007900041050E945705809301010E948D030E942C +:1007A0008603A5E3B1E0E3E4F1E08EE08E0F119261 +:1007B0001D928E13FCCF0895BF92CF92DF92EF92DD +:1007C000FF920F931F93CF93DF93809101018823B2 +:1007D00079F0809134018F5F80933401811108C0DA +:1007E0000E94570580930101811102C00E94E90413 +:1007F00005E311E0C0E0D0E0DD24D39482E0C82E10 +:10080000EE24E394F12CC730D10500F5809101016D +:10081000811164C080E40E94410380930101811131 +:1008200012C082E10E946B038093010181110BC011 +:10083000C7010C2E01C0880F0A94EAF780950E9428 +:100840006B03809301010E94630348C0CA30A1F08A +:1008500028F4C83059F0C93061F005C0CC3089F0B7 +:1008600070F0CD3089F0209A289810C0219A2998EC +:100870000DC0229A2A980AC0239A2B9807C0529A30 +:1008800001C0539A5B9802C03E9A469890EA9A95A6 +:10089000F1F79FB1799902C082E001C080E09170C8 +:1008A0009D25982B7C9902C084E001C080E0892BB3 +:1008B0007D9902C038E001C030E0832B7E9902C0F0 +:1008C00020E101C020E0822B9FB19095991F9927CC +:1008D000991F9295990F907E892B0FC080910101ED +:1008E000811149C080E40E94410380930101882363 +:1008F00079F1B12C0E9463038B2DF8019081981738 +:1009000019F08083C09200010E948D0321960F5F31 +:100910001F4FCE30D10509F076CF8091000188239A +:1009200061F1815080930001882339F08FE99FE0C5 +:100930000197F1F700C0000020C0A3E4B1E0E5E3B7 +:10094000F1E0CF01825F91919D938E13FCCF15C092 +:1009500083E10E946B03809301018111CACF81E47E +:100960000E944103809301018111C3CF0E947C0347 +:10097000B82EB094BFCF80E0C0CF0E94E70481E0E2 +:10098000DF91CF911F910F91FF90EF90DF90CF906B +:10099000BF900895E82FF0E0ED5BFE4F8081089551 +:1009A00008950F931F93CF93DF93C3E4D1E010E03A +:1009B0000C2F025F899190E00E944E1C180F0C13BF +:1009C000F9CF812FDF91CF911F910F9108950C9452 +:1009D0000D0656985E9825982D9826982E9827985B +:1009E0002F988FEF90E090938900809388009093E8 +:1009F0008B0080938A0090938D0080938C00259AC1 +:100A00002D9A2FEF80E792E0215080409040E1F74F +:100A100000C00000269A2E9A2FEF80E792E0215026 +:100A200080409040E1F700C00000279A2F9A2FEFF6 +:100A300080E792E0215080409040E1F700C0000044 +:100A400025982D982FEF80E792E02150804090402C +:100A5000E1F700C0000026982E982FEF80E792E083 +:100A6000215080409040E1F700C0000027982F9867 +:100A700056985E9825982D9826982E9827982F9806 +:100A8000089589EA8093800089E08093810024980A +:100A90002C983F988AB18F748AB96E98479A8BB117 +:100AA000806B8BB9769A0E94E9040C940C0680E264 +:100AB000809301018091510181110EC00E943B037E +:100AC00081E0809351012FEF83ED90E3215080402E +:100AD0009040E1F700C0000080E40E944103809351 +:100AE000010181112EC00E946B03809301018111CD +:100AF00028C00E946B0380930101811122C08FE303 +:100B00000E946B038093010181111BC00E9463034B +:100B100080E40E94410380930101811112C08CE0A6 +:100B20000E946B038093010181110BC00E946B0333 +:100B300080930101811105C08FE30E946B038093B4 +:100B400001010E946303809101010895462F50E046 +:100B5000FA013A97E031F10508F05BC0EA5AFF4F1D +:100B6000DC0112968C910C94BA23882309F451C0AD +:100B700089E892E00895882309F44BC088E692E062 +:100B80000895882309F445C08BE492E008958823F2 +:100B900009F43FC082E392E008958823D1F18DE10A +:100BA00092E008958823A9F18CE092E008958823CB +:100BB00081F18FEE91E00895882359F18AED91E05B +:100BC0000895882331F189EC91E00895882309F193 +:100BD00080EB91E008958823E1F087E991E00895A2 +:100BE0008823B9F086E891E00895882391F08DE696 +:100BF00091E00895882369F08CE491E008958823BA +:100C000041F08BE391E00895882319F08AE291E0A6 +:100C1000089580E090E0089508956091BE0170917C +:100C2000BF018091C0019091C1010E945A1C569849 +:100C30005E9825982D9826982E9827982F98813081 +:100C400019F0823021F00895259A2D9A0895269A58 +:100C50002E9A089581E0089581E008950C942C0661 +:100C60000895282F882339F090E02A3010F44D960B +:100C700008950697089587E290E00895AF92BF9295 +:100C8000DF92EF92FF920F931F93CF93DF938C012C +:100C9000FC01C081D181CE010E94D31ABE010E9405 +:100CA000AE09EC01B8010E942E06882309F4C9C1DF +:100CB000F8018281882309F4BEC080915E01811110 +:100CC0001FC0C431F0E7DF0709F0B5C10E9430064C +:100CD00081E080935E010E94F11C90935D018093FE +:100CE0005C0110925501109257011092560110921A +:100CF00059011092580110925B0110925A01A1C142 +:100D000080915C0190915D010E94FD1C883C9105E1 +:100D100070F480915501E82FF0E0EE0FFF1FEA5AC2 +:100D2000FE4FD183C0838F5F809355018AC1C1304C +:100D300020E8D20708F451C0F8018281882309F421 +:100D40007EC05E01E894B7F880915401813079F05B +:100D500050F08230C1F482EE0E945D1287E50E945D +:100D60005D1287E50EC082EE0E945D120CC080EE1F +:100D70000E945D1281EE0E945D1288E10E945D1268 +:100D800088E10E9425138CE0E82EF12CC5010E2C81 +:100D900002C0969587950A94E2F78F700E943106FB +:100DA000D82E0E945D128D2D0E942513F4E0EF1ABB +:100DB000F1082CEFE2162FEFF20641F78091540173 +:100DC000813029F010F0823041F482EE04C080EED0 +:100DD0000E94251381EE0E942513C43180E7D807B5 +:100DE00068F4C23090E7D90708F046C0C115E0E7C3 +:100DF000DE0771F0C130D047A1F10CC1C33320E749 +:100E0000D20709F4D8C0C433D04709F4EBC002C1FB +:100E1000F8018281882309F402C10E94DA15FFEFEC +:100E200024E38CE0F15020408040E1F700C0000056 +:100E30000E944C1D06C1C13080E8D80770F2C43151 +:100E400020E7D20708F0B3C0C23080E7D807A0F48B +:100E5000C11590E7D90709F4E2C0C130D04709F0C5 +:100E6000D9C0F8018281882309F4D9C08091DB01BF +:100E700081608093DB01E5C0F8018281882309F459 +:100E8000CEC00E94A61D811102C00E948C1D0E942E +:100E9000B91D90E09093EF018093EE01C230F0E72E +:100EA000DF0721F48091EE0181607AC0C33020E732 +:100EB000D20721F48091EE01826072C0C43080E7D5 +:100EC000D80721F48091EE0184606AC0C53090E7B4 +:100ED000D90719F48091EE0127C0C630E0E7DE079C +:100EE00021F48091EE0180615BC0C730F0E7DF073D +:100EF00021F48091EE01806253C0C83020E7D20710 +:100F000021F48091EE0180644BC0C93080E7D8079E +:100F100021F48091EE01806843C0CA3090E7D90780 +:100F200029F48091EE01846088603AC0CB30E0E71C +:100F3000DE0721F48091EE018E7F32C0CC30F0E7E5 +:100F4000DF0721F48091EE018D7F2AC0CD3020E7AC +:100F5000D20721F48091EE018B7F22C0CE3080E752 +:100F6000D80719F48091EE011AC08091EE01CF30BC +:100F700090E7D90711F48F7E13C0C031E0E7DE0798 +:100F800011F48F7D0DC0C131F0E7DF0711F48F7BC5 +:100F900007C0C231D04711F48F7702C08B7F877FA3 +:100FA0008093EE018091EE010E94BD1D4AC0C333C3 +:100FB000F0E7DF07A1F4F8018281882321F0109285 +:100FC000520182E016C080915201811106C086E272 +:100FD0000E945D1286E20E94251382E018C0C4338D +:100FE000D047C1F4F8018281882331F01092530177 +:100FF00080E20E94741325C080915301811106C0C4 +:1010000087E20E945D1287E20E94251380E20E941F +:101010007B1317C081E08093520180935301C80174 +:10102000DF91CF911F910F91FF90EF90DF90BF90D4 +:10103000AF900C942A06C130F0E8DF0708F081CEAB +:10104000CCCE80E0DF91CF911F910F91FF90EF9078 +:10105000DF90BF90AF90089526E0729FF0011124B9 +:1010600044E5849FE00DF11D1124E60FF11DEE0F04 +:10107000FF1FE655FD4F859194910E94C00981158F +:1010800060E49607B0F5811570E3970708F0DEC0BD +:10109000803E9105D8F4803C910508F06CC0883AF8 +:1010A000910578F4853A910508F06BC0813091057F +:1010B00009F452C108F40FC18430910508F04CC105 +:1010C0000AC18B3B910508F467C005C18F3F9105AC +:1010D00009F048F4803F910508F0ADC0883E9105C5 +:1010E00008F43AC1F8C0811520E2920708F0A5C0C3 +:1010F0000895811543E5940790F4811562E59607FC +:1011000008F0C8C0811571E5970708F0BEC08115C9 +:1011100020E5920708F09DC09F70906A08958115A0 +:1011200045E59407D8F4811564E5960708F0C8C032 +:10113000482F4695469570E2479FA0011124837081 +:10114000992721E030E0B90102C0660F771F8A9528 +:10115000E2F7CB01842B952B9A680895811576E5EB +:10116000970708F4B2C09C0130562115304108F0B1 +:10117000B2C09F70AEC0FC01EE0FFF1FEA5DFE4FD4 +:1011800062C0853A910509F4A9C0863A910509F033 +:10119000A8C082E890E40895883A910509F4A4C0B3 +:1011A000893A910509F4A3C08A3A910509F4A2C0CD +:1011B0008B3A910509F4A1C08C3A910509F4A0C0BD +:1011C0008D3A910509F49FC0803B910509F49EC0BA +:1011D0008E3A910509F49DC08F3A910509F49CC09F +:1011E000813B910509F49BC0823B910509F49AC0AB +:1011F000833B910509F499C0843B910509F498C09B +:10120000853B910509F497C0863B910509F496C08A +:10121000873B910509F495C0883B910509F494C07A +:10122000893B910509F493C08A3B910509F492C06A +:1012300080E094E4089590650895FC01FF70EE0F3E +:10124000FF1FEA55FD4F8591949108959927906C61 +:101250000895482F437021E030E002C0220F331F71 +:101260004A95E2F73C68AC0164E0569547956A956B +:10127000E1F74370342B8F708695869560E2869FE8 +:10128000C0011124822B932B0895982F8827816FFA +:10129000906A0895482F4695469570E2479FA001B1 +:1012A00011248370992721E030E0B90102C0660F54 +:1012B000771F8A95E2F7CB01842B952B9C680895C4 +:1012C000982F8827846F906A08958F719927982F97 +:1012D00088279062089580E090E0089581E890E486 +:1012E000089583E890E4089582EE94E4089589EEE9 +:1012F00094E408958AEE94E4089585EB94E40895C7 +:1013000086EB94E4089587EB94E408958CEC94E4E0 +:1013100008958DEC94E4089583E895E408958AE8AF +:1013200095E4089582E995E4089584E995E40895A3 +:1013300081E296E4089583E296E4089584E296E4D7 +:10134000089585E296E4089586E296E4089587E29A +:1013500096E408958AE296E40895089596E0799FC8 +:10136000F001112494E5899FE00DF11D1124E60F91 +:10137000F11DEE0FFF1FE655FD4F859194910895E5 +:101380008238910549F1B0F48133910509F458C0D0 +:1013900048F48932910509F44EC08A32910509F466 +:1013A00054C008958533910509F440C089339105EF +:1013B00099F00895833E910529F138F4803E910516 +:1013C00091F0823E9105A1F00895863E9105F9F0D5 +:1013D000873E910531F108952091EE0120FD3AC03C +:1013E00021FD38C008958091EE0180FD35C032C0E6 +:1013F0008091EE0182FF32C08091EE0184FD30C009 +:1014000083EE39C08091EE0182FD28C0F5CF809136 +:10141000EE0183FF27C08091EE0184FD21C087EE9D +:101420002AC08091EE0183FD1DC0F5CF8091EE01B1 +:1014300085FD1AC01BC08091EE0185FD17C014C048 +:101440008091EE0186FD14C015C08091EE0186FDED +:1014500011C00EC080EE0FC089E30DC082EE0BC03C +:1014600080E009C086EE07C089E205C085E303C0BD +:101470008AE201C081E390E0089508950C943D0A4A +:1014800080916F010895CF93DF9300D01F92CDB765 +:10149000DEB79C018091F401843019F593E09983C3 +:1014A0003B832A839093E9008FEF9091E80081506D +:1014B00095FD06C095ED9A95F1F700008111F5CFE5 +:1014C0008091E80085FF0DC040E050E063E070E0EF +:1014D000CE0101960E94A90C8091E8008E7780933E +:1014E000E8000F900F900F90DF91CF910895CF9368 +:1014F000DF9300D01F92CDB7DEB72091F4012430E6 +:1015000021F522E029839B838A8383E08093E9008D +:101510008FEF9091E800815095FD06C095ED9A956A +:10152000F1F700008111F5CF8091E80085FF0DC033 +:1015300040E050E063E070E0CE0101960E94A90C0B +:101540008091E8008E778093E8000F900F900F90C5 +:10155000DF91CF9108952091F4012430F1F422E03D +:101560002093E9002FEF3091E800215035FD06C0AF +:1015700035ED3A95F1F700002111F5CF2091E80003 +:1015800025FF0BC040E050E065E070E00E94A90C30 +:101590008091E8008E778093E8000895CF93DF93E1 +:1015A000EC019091F401943009F046C080910C0157 +:1015B0008823D9F080910D018823B9F09093E90038 +:1015C0008FEF9091E800815095FD06C095E19A95C6 +:1015D000F1F700008111F5CF8091E80085FF2CC064 +:1015E00040E050E060E170E017C081E08093E900E6 +:1015F0008FEF9091E800815095FD06C095ED9A958A +:10160000F1F700008111F5CF8091E80085FF14C04B +:1016100040E050E068E070E0CE010E94A90C8091AB +:10162000E8008E778093E80080E1FE01AFE5B1E04D +:1016300001900D928A95E1F7DF91CF910895809105 +:10164000F301811109C00E943E0E0E949B0E809101 +:10165000E20084608093E20008951092F3010895FF +:1016600008950C9432220E94E21C0E9438220E94AB +:1016700041110C943E0A42E061EC81E00E94B80DF9 +:1016800042E061EC82E00E94B80D42E061EC83E050 +:101690000E94B80D42E161EC84E00C94B80D809199 +:1016A000F601833009F455C030F4813071F0823096 +:1016B00009F48EC008958A3009F47AC08B3009F499 +:1016C00060C0893009F09CC020C08091F501813A4A +:1016D00009F096C08091E800877F8093E8008091B0 +:1016E000F9019091FA01892B21F460E18FE591E0F5 +:1016F00003C060E080E090E070E00E94F40C809114 +:10170000E8008B778093E80008958091F50181329D +:1017100009F076C08091F9019091FA01009719F0D3 +:10172000039709F06DC08091E800877F8093E800FF +:101730008091E80082FD05C08091F4018111F8CF0D +:101740005FC08091F10080936F018091E8008B77FA +:1017500053C08091F501813A09F052C08091F9019E +:101760009091FA01892B09F04BC08091E800877FA6 +:101770008093E8008091E80080FFFCCF80910C010D +:1017800036C08091F5018132D9F58091F9019091AF +:10179000FA01892BA9F58091E800877F8093E80002 +:1017A0000E94ED0D8091F70180930C010C94DA15E5 +:1017B0008091F501813221F58091E800877F809347 +:1017C000E8000E94ED0D8091F8018093700108956A +:1017D0008091F501813AA1F48091E800877F8093A0 +:1017E000E8008091E80080FFFCCF80917001809339 +:1017F000F1008091E8008E778093E8000C94ED0D65 +:10180000089584B7877F84BF88E10FB6F8948093EA +:101810006000109260000FBE80E88093610010921B +:1018200061000E9490110E943E0E0E949B0E8091CA +:10183000E20084608093E20078940E9421110E946B +:10184000921182E091E00E943C110E94202280913E +:10185000F401853069F40E94AA1C8091F20188236A +:10186000B1F30E94D41C882391F30E94930CEFCF14 +:101870000E949811ECCF292F332723303105C9F06E +:1018800064F42130310581F02230310509F043C084 +:101890008DE690E02EE234E042C021323105F1F0D5 +:1018A0002232310541F137C082E190E02BE934E08A +:1018B00036C099278130910541F08230910541F081 +:1018C000892B49F5EAE2F4E005C0E2E1F4E002C068 +:1018D000EAEFF3E0849190E09F0121C06430D8F4F6 +:1018E000E62FF0E0EE0FFF1FEE5DFE4F208131810D +:1018F00089E090E014C0643070F470E0FB01EE0FFA +:10190000FF1FE65EFE4F20813181FB01EA5EFE4F44 +:10191000808190E004C080E090E020E030E0FA01B7 +:1019200031832083089580E189BD82E189BD09B4B6 +:1019300000FEFDCF8091D8008F7D8093D8008091EC +:10194000E00082608093E0008091E00081FDFCCFA8 +:101950000895CF92DF92EF92FF920F931F93CF9350 +:10196000DF93EC018B016A010E940C0E811133C0E0 +:10197000C114D10439F0F60180819181081B190B43 +:10198000C80FD91FE12CF12C0115110519F1809117 +:10199000E80085FD16C08091E8008E778093E8000E +:1019A000C114D10449F0F60180819181E80EF91E3D +:1019B000F182E08285E00FC00E940C0E882321F3A3 +:1019C0000AC089918093F10001501109FFEFEF1ACD +:1019D000FF0ADACF80E0DF91CF911F910F91FF9046 +:1019E000EF90DF90CF9008952091FB013091FC01A2 +:1019F0002617370748F06115710539F42091E80082 +:101A00002E772093E80001C0B90140E0611571050F +:101A1000A9F12091F401222309F443C0253009F4EF +:101A200042C02091E80023FD40C02091E80022FD43 +:101A300032C02091E80020FFE9CF4091F3002091CF +:101A4000F20030E0342BFC01CF016115710559F033 +:101A50002830310540F481918093F1006150710983 +:101A60002F5F3F4FF1CF41E02830310509F040E0D2 +:101A70002091E8002E772093E800C8CF4111C9CF0C +:101A80000AC08091F401882361F0853061F0809173 +:101A9000E80083FD0AC08091E80082FFF2CF80E079 +:101AA000089582E0089583E0089581E008952091EB +:101AB000FB013091FC012617370748F061157105CD +:101AC00039F42091E8002E772093E80001C0B90195 +:101AD000FC0120E06115710591F18091F4018823EA +:101AE00009F440C0853009F43FC08091E80083FDCF +:101AF0003DC08091E80082FD2FC08091E80080FF0A +:101B0000E9CF2091F3008091F20090E0922B6115D3 +:101B1000710559F08830910540F424912093F1002B +:101B20003196615071090196F2CF21E0089709F0D2 +:101B300020E08091E8008E778093E800CBCF2111E0 +:101B4000CCCF0AC08091F401882361F0853061F028 +:101B50008091E80083FD0AC08091E80082FFF2CF07 +:101B600080E0089582E0089583E0089581E008957B +:101B7000982F973058F59093E900981739F07091A5 +:101B8000EC002091ED005091F00003C0242F762F3F +:101B900050E021FF19C03091EB003E7F3093EB0005 +:101BA0003091ED003D7F3093ED003091EB003160DE +:101BB0003093EB007093EC002093ED005093F00015 +:101BC0002091EE0027FF07C09F5FD3CF8F708093D7 +:101BD000E90081E0089580E008958091F50187FF94 +:101BE00011C08091E80082FD05C08091F40181114F +:101BF000F8CF11C08091E8008B770BC08091F40181 +:101C0000882349F08091E80080FFF8CF8091E800B8 +:101C10008E778093E80008952091E4003091E500EC +:101C200095E64091EC00842F817040FF22C08091A6 +:101C3000E80080FD1CC08091F401882391F085307C +:101C400091F08091EB0085FD10C04091E40050912F +:101C5000E5004217530729F39A01915011F784E0E8 +:101C6000089582E0089583E0089581E0089580E07A +:101C700008954091E80042FFDECF08950E94AC0E27 +:101C80000E94B40EE0EEF0E0808181608083E8ED98 +:101C9000F0E080818F77808319BCA7EDB0E08C9154 +:101CA0008E7F8C9380818F7E80831092F3010895C4 +:101CB0000F931F93CF93DF930E94AC0E0E94B40E3C +:101CC000C8EDD0E088818F77888388818068888399 +:101CD00088818F7D888319BC1092F4011092F001E5 +:101CE0001092F2011092F10100EE10E0F8018081F3 +:101CF0008B7F808388818160888342E060E080E020 +:101D00000E94B80DE1EEF0E080818E7F8083E2EEEC +:101D1000F0E0808181608083808188608083F80129 +:101D200080818E7F8083888180618883DF91CF91DD +:101D30001F910F910895E8EDF0E080818F7E808300 +:101D4000E7EDF0E080818160808384E082BF81E004 +:101D50008093F3010C94580EE8EDF0E080818E7FC3 +:101D600080831092E20008951092DA001092E10050 +:101D700008951F920F920FB60F9211242F933F9345 +:101D80004F935F936F937F938F939F93AF93BF9383 +:101D9000EF93FF938091E10082FF0BC08091E200FE +:101DA00082FF07C08091E1008B7F8093E1000E9459 +:101DB00020118091DA0080FF1FC08091D80080FF41 +:101DC0001BC08091DA008E7F8093DA008091D90069 +:101DD00080FF0DC080E189BD82E189BD09B400FEAC +:101DE000FDCF81E08093F4010E941F0B05C019BC58 +:101DF0001092F4010E942D0B8091E10080FF19C028 +:101E00008091E20080FF15C08091E2008E7F809378 +:101E1000E2008091E20080618093E2008091D8002E +:101E200080628093D80019BC85E08093F4010E9401 +:101E3000310B8091E10084FF30C08091E20084FF8B +:101E40002CC080E189BD82E189BD09B400FEFDCFCF +:101E50008091D8008F7D8093D8008091E1008F7EA3 +:101E60008093E1008091E2008F7E8093E200809178 +:101E7000E20081608093E2008091F001882311F0FC +:101E800084E007C08091E30087FD02C081E001C0CB +:101E900083E08093F4010E94330B8091E10083FF83 +:101EA00029C08091E20083FF25C08091E100877FF7 +:101EB0008093E10082E08093F4011092F001809120 +:101EC000E1008E7F8093E1008091E2008E7F80931D +:101ED000E2008091E20080618093E20042E060E0F5 +:101EE00080E00E94B80D8091F00088608093F0003F +:101EF0000E94300BFF91EF91BF91AF919F918F9115 +:101F00007F916F915F914F913F912F910F900FBEF5 +:101F10000F901F9018951F920F920FB60F921124D9 +:101F20002F933F934F935F936F937F938F939F93E1 +:101F3000AF93BF93CF93DF93EF93FF93C091E900EB +:101F4000CF708091EC00D82FD17080FDD0E8109236 +:101F5000E9008091F000877F8093F00078940E94E0 +:101F6000CF0F1092E9008091F00088608093F0001C +:101F7000CD2BCF70C093E900FF91EF91DF91CF910E +:101F8000BF91AF919F918F917F916F915F914F9191 +:101F90003F912F910F900FBE0F901F9018951F9398 +:101FA000CF93DF93CDB7DEB7AA970FB6F894DEBF15 +:101FB0000FBECDBFE5EFF1E088E08E0F9091F1000C +:101FC00091938E13FBCF0E944F0B8091E80083FF0B +:101FD0001FC18091F5019091F601492F50E04A30E0 +:101FE000510508F015C1FA01EA59FF4F0C94BA23C4 +:101FF000803881F0823809F00BC18091F9018F702F +:102000008093E9008091EB0085FB882780F910928E +:10201000E90006C08091F1019091F2019111826076 +:102020009091E800977F9093E8008093F1001092E0 +:10203000F100C8C0282F2D7F09F0EAC0882319F0CD +:10204000823061F0E5C08091F701813009F0E0C095 +:10205000933009F080E08093F2012BC08091F7016A +:10206000811127C08091F9018F7009F4D1C080934C +:10207000E9002091EB0020FF1CC0933021F48091F7 +:10208000EB00806214C09091EB0090619093EB00A4 +:1020900021E030E0A90102C0440F551F8A95E2F704 +:1020A0004093EA001092EA008091EB0088608093F0 +:1020B000EB001092E9008091E800877F86C08111D3 +:1020C000A7C01091F7011F778091E3008078812BE2 +:1020D0008093E3008091E800877F8093E8000E946E +:1020E000ED0D8091E80080FFFCCF8091E3008068D7 +:1020F0008093E300111102C082E001C083E080936D +:10210000F40186C08058823008F082C08091F701C7 +:102110009091F8018C3D53E0950779F583E08A832F +:102120008AE289834FB7F894DE01139620E03EE0FF +:1021300051E2E32FF0E050935700E49120FF03C0F9 +:10214000E295EF703F5FEF708E2F90E0EA3010F075 +:10215000C79601C0C0968D939D932F5F243149F798 +:102160004FBF8091E800877F8093E8006AE270E0CB +:10217000CE0101960E94F40C14C0AE014F5F5F4F78 +:102180006091F9010E943B0CBC01009709F440C02A +:102190009091E800977F9093E80089819A810E944E +:1021A000570D8091E8008B778093E80031C080382C +:1021B00079F58091E800877F8093E8008091F001B5 +:1021C0008093F1008091E8008E778093E8000E9470 +:1021D000ED0D1EC081111CC09091F7019230C0F42A +:1021E0008091E800877F8093E8009093F0010E943F +:1021F000ED0D8091F001811106C08091E30087FD13 +:1022000002C081E001C084E08093F4010E943B0B96 +:102210008091E80083FF0AC08091E800877F809367 +:10222000E8008091EB0080628093EB00AA960FB6E5 +:10223000F894DEBF0FBECDBFDF91CF911F910895FF +:102240000895CF938091F4018823A1F0C091E90013 +:10225000CF709091EC00892F817090FD80E8C82BA1 +:102260001092E9008091E80083FD0E94CF0FCF70AB +:10227000C093E900CF910895909376018093750102 +:102280000895E0917501F0917601309721F0019069 +:10229000F081E02D099480E00895E0917501F091BE +:1022A0007601309721F00280F381E02D09940895A2 +:1022B000E0917501F0917601309721F00480F5816D +:1022C000E02D0994089520917301309174018217D3 +:1022D000930771F09093740180937301E0917501FD +:1022E000F0917601309721F00680F781E02D099476 +:1022F000089520917101309172018217930771F056 +:102300009093720180937101E0917501F0917601D3 +:10231000309721F00084F185E02D09940895089507 +:102320000C948F110E94E81C0E94B5030C946E1D42 +:102330009F92AF92BF92CF92DF92EF92FF920F9354 +:102340001F93CF93DF9300D000D000D0CDB7DEB77E +:102350000E94DC030DE010E0AA24A394B12C902E7F +:10236000802F0E94CA04980128583E4F6901F90144 +:10237000F080F826A1F40150110988F78FEF8983C6 +:102380008A831B820E94F11C8160782F9D838C833D +:1023900049815A816B818D810E942F122FC09091AB +:1023A000DB0191FF04C08E830E94D0048E8125E062 +:1023B00030E0A501022E01C0440F0A94EAF7E42E92 +:1023C0004F21C1F029839A828E2191E009F490E097 +:1023D0009B830E94F11C8160782F9D838C834981AF +:1023E0005A816B818D810E942F12F6018081E8262F +:1023F000E08204C021503109E0F6BDCF0E943C1FAD +:10240000109177010E9441111817B9F00E944111F3 +:102410008093770126960FB6F894DEBF0FBECDBF2E +:10242000DF91CF911F910F91FF90EF90DF90CF90B0 +:10243000BF90AF909F900C943E0A26960FB6F894EA +:10244000DEBF0FBECDBFDF91CF911F910F91FF90E7 +:10245000EF90DF90CF90BF90AF909F900895CF9373 +:10246000DF93CDB7DEB72B970FB6F894DEBF0FBE64 +:10247000CDBF4F83588769877A878B87DE01119696 +:1024800086E0FD0111928A95E9F785E0FE01379615 +:1024900001900D928A95E1F749815A816B817C8187 +:1024A0008D819E810E9478182B960FB6F894DEBF1E +:1024B0000FBECDBFDF91CF910895CF93882309F44C +:1024C000C2C0C82F823859F40E94411181FDBBC09F +:1024D00089E30E94521B0E941F1C89E30CC08338B1 +:1024E00079F40E94411180FDAEC083E50E94521B29 +:1024F0000E941F1C83E50E94941BCF910C941F1C0B +:10250000843859F40E94411182FD9DC087E40E94E5 +:10251000521B0E941F1C87E4EECF8CEF8C0F813A78 +:1025200048F48C2F0E94862181118DC08C2F0E942F +:10253000521BE3CF80E28C0F883048F4C77081E0F3 +:1025400001C0880FCA95EAF70E94D81BD6CF8BE549 +:102550008C0F833078F4C53A29F0C63A31F083E81D +:1025600090E005C081E890E002C082E890E0CF9161 +:102570000C94631188E58C0F833108F064C0C83A6D +:1025800039F1C93A41F1CA3A49F1CB3A51F1CC3A61 +:1025900059F1CD3A61F1C03B69F1CE3A71F1CF3AD0 +:1025A00079F1C13B81F1C23B89F1C33B91F1C43B5D +:1025B00099F1C53BA1F1C63BA9F1C73BB1F1C83BBD +:1025C000B9F1C93BC1F1CA3BC9F180E090E038C024 +:1025D00082EE90E035C089EE90E032C08AEE90E065 +:1025E0002FC085EB90E02CC086EB90E029C087EBF4 +:1025F00090E026C08CEC90E023C08DEC90E020C0F1 +:1026000083E891E01DC08AE891E01AC082E991E078 +:1026100017C084E991E014C081E292E011C083E226 +:1026200092E00EC084E292E00BC085E292E008C026 +:1026300086E292E005C087E292E002C08AE292E080 +:10264000CF910C947911CF910895882309F44BC050 +:10265000823859F40E94411181FF45C089E30E94EC +:10266000521B0E941F1C89E30CC0833871F40E9426 +:10267000411180FF38C083E50E94521B0E941F1C3D +:1026800083E50E94941B0C941F1C843859F40E940B +:10269000411182FF28C087E40E94521B0E941F1C28 +:1026A00087E4EFCF9CEF980F913A58F390E2980FA0 +:1026B000983050F4877091E001C0990F8A95EAF73D +:1026C000892F0E94DE1BDFCF9BE5980F933020F40B +:1026D00080E090E00C946311885A833120F480E00C +:1026E00090E00C9479110895882321F00E94D81B62 +:1026F0000C941F1C0895882321F00E94DE1B0C946B +:102700001F1C08957F928F929F92AF92BF92CF929B +:10271000DF92EF92FF920F931F93CF93DF931F925D +:10272000CDB7DEB77C01C62E772EFC010581029560 +:102730000F70128111110E94F51B0E944B1B882300 +:1027400079F0112369F080E28C0D883048F082E046 +:102750000E94341B0E944B1B91E0D82ED92601C049 +:10276000D12CE72DE295EF70F0E0E059FF4F0C948B +:10277000BA23872D807F072D0F70882311F00295D3 +:10278000007F112389F0002309F490C180E28C0DB1 +:10279000883020F4802F0E94D81B03C0802F0E9415 +:1027A000E81B0E941F1C82C18C2D0E942513002350 +:1027B00009F495C180E28C0D883020F4802F0E94AE +:1027C000DE1B03C0802F0E94EE1B0E941F1C87C1CE +:1027D000972D907F872D8F70903211F08295807F9A +:1027E000CC2021F0F1E0CF16B1F01EC0112349F04A +:1027F000002309F414C1013009F011C10E94081C22 +:102800006EC1002319F0013009F469C189830E9467 +:102810000B1C89810AC1112321F0023008F05FC12D +:10282000FEC001115CC101C1112321F0002309F494 +:10283000F6C03CC1002309F4F8C03EC1872D86953F +:102840008695837090E0009719F0019761F047C179 +:10285000112321F08C2D972D937002C080E090E021 +:102860000E9463113CC1112321F08C2D972D937090 +:1028700002C080E090E00E94791131C18C2D1123BB +:1028800019F00E94441E02C00E94AC1E0E94311F1B +:1028900026C1872D837009F052C0111120C18C2DE3 +:1028A000829586958770880F880F9C2D9F70892E42 +:1028B000912CA12CB12C082E04C0880C991CAA1CA8 +:1028C000BB1C0A94D2F7C4FE14C00FE010E020E055 +:1028D00030E0B901A80104C0440F551F661F771FDF +:1028E0008A95D2F7CB01BA01609570958095909545 +:1028F00003C060E070E0CB01272D2695269523705C +:1029000030E02230310569F02330310589F0682943 +:1029100079298A299B292130310571F00E94C0193B +:10292000DEC0682979298A299B290E94DC19D7C031 +:102930000E94C019C501B4010E94A419D0C011237E +:1029400019F0872D817001C08695882309F4C7C0CE +:102950008C2D829586958770880F880F9C2D9F708F +:10296000892E912CA12CB12C082E04C0880C991C06 +:10297000AA1CBB1C0A94D2F7C4FE14C00FE010E0DE +:1029800020E030E0B901A80104C0440F551F661FC4 +:10299000771F8A95D2F7CB01BA0160957095809523 +:1029A000909503C060E070E0CB01272D2695269519 +:1029B0002370422F50E04230510569F043305105F9 +:1029C00089F0682979298A299B294130510571F0BC +:1029D0000E949A1A84C0682979298A299B290E9411 +:1029E000B61A7DC00E949A1AC501B4010E947E1ACF +:1029F00076C08C2D90E0FC01E05EF109E531F10537 +:102A000008F050C0E058FF4F0C94BA230C2D0F7003 +:102A1000872D8F71112331F00E94171A802F0E9489 +:102A200074135DC00E94381A802F0E947B1357C018 +:102A3000112339F0011153C0872D8F710E945D1A47 +:102A40004EC0023008F04BC0F7CF112339F0872D6C +:102A50008F710E94171A43C01123C9F3872D8F71FC +:102A60000E94381A3CC0112329F0872D8F710E94D3 +:102A7000021A35C00E94F81932C0112351F0172DE7 +:102A80001F71812F0E94171A63E0812F0E942B1B58 +:102A900026C081E00E94341B023008F182E00E94CF +:102AA000341B1DC0112331F0002389F28C2D0E94AC +:102AB0005D1215C0002391F28C2D0E9425130FC0CA +:102AC000472D4F706C2DC7010E94A6050E941C194E +:102AD00006C0472D4F706C2DC7010E94AD09DD2047 +:102AE000F9F00E94271B80FD1BC0F70112820E9493 +:102AF000211B0E94171AC7010E949F150E94211BCB +:102B00000F90DF91CF911F910F91FF90EF90DF9089 +:102B1000CF90BF90AF909F908F907F900C94381A79 +:102B20000F90DF91CF911F910F91FF90EF90DF9069 +:102B3000CF90BF90AF909F908F907F9008950F930C +:102B40001F93CF93DF93EC01888199812B813C8186 +:102B5000232BB9F09F3F11F48F3F99F0CE010E94D3 +:102B60003E06882371F0688179818A810E941D1B4D +:102B70008C010E94D21A0E949919B801CE010E94BC +:102B80008213DF91CF911F910F9108950E94F51B41 +:102B90000E94051C0E94CA1B0E941F1C0E94E21F6B +:102BA0000E94311F80E090E00E94631180E090E07D +:102BB0000C9479110E94E51B0C94C6150E94121BFF +:102BC000292F22952F7030E02C3031054CF42A301B +:102BD00031056CF42250310922303105A8F407C0C8 +:102BE0002C30310569F02F30310551F00DC0803F98 +:102BF00069F018F4803E40F409C0843F29F406C00F +:102C000093FB882780F9089580E0089581E0089576 +:102C1000CF93DF9300D000D01F92CDB7DEB70F90D7 +:102C20000F900F900F900F90DF91CF910895CF9359 +:102C3000DF9300D000D000D0CDB7DEB726960FB618 +:102C4000F894DEBF0FBECDBFDF91CF9108951F93E3 +:102C5000CF93DF93C091860116E080918701C8175A +:102C600099F0D0E01C9FF0011D9FF00D1124E85752 +:102C7000FE4F4081518162817381848195810E94E0 +:102C800017162196C770E9CFDF91CF911F91089554 +:102C90004091B8015091B9016091BA017091BB01A6 +:102CA0008091BC019091BD010C9417168091BD01DB +:102CB00082958F7009F054C08091BA01882309F47D +:102CC0004FC080918601A09187016091B8017091F9 +:102CD000B9014091BB015091BC01B6E08A1709F4DB +:102CE0003FC090E041155105C1F17F3F11F46F3FA6 +:102CF000A1F1B89FF001B99FF00D1124E857FE4FE4 +:102D0000218172132AC02081621327C022812111E0 +:102D100024C0238134812417350710F42150310950 +:102D2000241B350B283C3105C0F42091BD012F70C8 +:102D300020612093BD0126E0289FF001299FF00D1E +:102D40001124E357FE4F80818F708061808388EB70 +:102D500091E00E949F150C94271601968770BECFB4 +:102D60000895CF92DF92EF92FF920F931F93CF932C +:102D7000DF93CDB7DEB762970FB6F894DEBF0FBE14 +:102D8000CDBF8C0185E0F801DE011D9601900D920A +:102D90008A95E1F7D8014C9111965C9111971296A2 +:102DA0006C9112971396CD90DC9014973091B801E6 +:102DB0007091B9018091BB019091BC01009709F419 +:102DC0006BC17F3F19F43F3F09F466C1E090BA013F +:102DD000EE2009F4C0C02091BD01C816D90628F024 +:102DE000F601E81BF90BCF0104C0809590958C0D7E +:102DF0009D1DFF24F394883C910578F0F12C207FF1 +:102E000009F0C6C07C2DD98AC88A89890E94081613 +:102E100088EB91E00E949F15B1C0822F807F09F05E +:102E200046C0751314C0341312C0611110C02F7046 +:102E300020612093BD010E94481688EB91E00E941A +:102E40009F158091BD01D80115968C932EC0CD2879 +:102E500019F15F3F11F44F3FF9F0F62E61111CC0DC +:102E6000809186012091870136E0821709F45AC0CB +:102E700090E0389FF001399FF00D1124E857FE4F84 +:102E80007181571306C07081471303C0728171119D +:102E900003C001968770E9CFF62E662309F418C1A6 +:102EA0008091BD0181608093BD01F12C11C175132A +:102EB00008C0341306C0611104C08091BD01D8015F +:102EC000C3C04D875E878D859E856A8B0E94DE1507 +:102ED0006A898823E1F16623D1F12091BD01822F17 +:102EE00082958F7090E0029774F08091B801909174 +:102EF000B90198878F831986DB86CA862C87CE0115 +:102F000007960E949F1586E0F801A8EBB1E00190BA +:102F10000D928A95E1F70E9456160E944816FF24EA +:102F2000F394D6C04D875E878D859E850E94121BC7 +:102F3000292F22952F7030E0223031050CF0BCC0D3 +:102F40009F7009F0B6C0805E883008F4C1C0C80127 +:102F50000E949F15E4CFC816D90608F453C0F601A5 +:102F6000E81BF90BCF01883C910508F450C0F12C07 +:102F70007C2DD98AC88A89890E940816E8EBF1E07D +:102F800086E0DF011D928A95E9F70E944816A0C0ED +:102F9000751314C0341312C0611110C08091BD01AB +:102FA000F8018583C8010E949F1586E0E8EBF1E0F7 +:102FB000DF011D928A95E9F7FE2C8AC04D875E8756 +:102FC0008D859E856A8B0E94DE156A89882309F4A7 +:102FD000BECF662309F4BBCF2091BD01822F82951D +:102FE0008F7090E002970CF48ECF8091B801909191 +:102FF000B9019A8389831B82DD82CC822E83CE0124 +:1030000001967FCF809590958C0D9D1DACCFF62EAF +:10301000662309F49CCF75132EC034132CC0209165 +:10302000BD0120FD1FC0822F82958F70D9F0D8017D +:1030300015962C9315978F3049F08F5F982F9295A6 +:10304000907F822F8F70892B15968C93C8010E94D8 +:103050009F1586E0F801A8EBB1E001900D928A95EA +:10306000E1F793CF86E0F801A8EBB1E001900D9273 +:103070008A95E1F72DC04D875E878D859E850E94DC +:10308000DE15811140CF8091BD0181608093BD012B +:10309000C8010E949F151CC0662309F458CF4D87B4 +:1030A0005E878D859E850E94DE15882309F44FCFAB +:1030B0002ACF811148CF0CC0243031050CF047CF06 +:1030C0009F7009F440CFF8019581907F09F03BCFC4 +:1030D0008F2D62960FB6F894DEBF0FBECDBFDF9185 +:1030E000CF911F910F91FF90EF90DF90CF900895B7 +:1030F0001F93CF93DF93CDB7DEB72C970FB6F8941D +:10310000DEBF0FBECDBF4F83588769877A878B8715 +:103110009C87CE0107960E94B116882369F08F81A3 +:1031200098852A853B85232BF1F19F3F09F063C0E9 +:103130008F3F09F060C037C086E0FE013796DE01A0 +:10314000119601900D928A95E1F76F817885EA8555 +:10315000FB85309741F17F3F11F46F3F21F12091C2 +:10316000870130E0C9010196877099274091860157 +:1031700050E08417950709F447C069837A83FD837B +:10318000EC8396E0929FD001939FB00D1124A85735 +:10319000BE4FFE01319601900D929A95E1F7809312 +:1031A00087010E94271616E0809186019091870181 +:1031B0008917C1F1189FC001112488579E4F0E94A2 +:1031C000B116882379F1E09186011E9FF001112448 +:1031D000E857FE4F408151816281738184819581DE +:1031E0000E9417168091860190E0019687709927BA +:1031F00080938601D9CF4F81588569857A858B85E3 +:103200009C850E941716CFCF0E94DA151092870175 +:1032100010928601E8EBF1E086E0DF011D928A95CD +:10322000E9F7C1CF2C960FB6F894DEBF0FBECDBF25 +:10323000DF91CF911F910895EF92FF920F931F930B +:10324000CF93DF938C01009709F46CC0F12CEE242E +:10325000E394E8012196F8018491843740F48430A6 +:1032600008F051C0813081F0823019F15BC08537A0 +:1032700009F444C0A8F19CE7980F903708F052C0B9 +:103280008F770E94251341C00E5F1F4FFE01C4912E +:1032900080E28C0F883048F4C7708E2D01C0880FF3 +:1032A000CA95EAF70E94F81B14C08C2F0E945D1289 +:1032B0002DC00E5F1F4FFE01C49180E28C0F88303D +:1032C00058F4C7708E2D01C0880FCA95EAF70E9486 +:1032D000FE1B0E941F1C1AC08C2F0E94251316C0B3 +:1032E0000E5F1F4FFE01C491CC2381F08FE99FE058 +:1032F0000197F1F700C00000C150F6CF0E5F1F4FDD +:10330000FE01F49003C00E945D128E018F2D882370 +:1033100009F49FCFEFE9FFE03197F1F700C000001B +:103320008150F5CFDF91CF911F910F91FF90EF90DA +:10333000089508956093C2017093C3018093C401FE +:103340009093C5010C94C6150F931F930091C20171 +:103350001091C3012091C4013091C501DC01CB0162 +:10336000802B912BA22BB32B8093C2019093C3018E +:10337000A093C401B093C5011F910F910C94C61581 +:103380000F931F930091C2011091C3012091C401BA +:103390003091C501DC01CB0180239123A223B3230B +:1033A0008093C2019093C301A093C401B093C5015F +:1033B0001F910F910C94C6150F931F930091C2019A +:1033C0001091C3012091C4013091C501DC01CB01F2 +:1033D00080279127A227B3278093C2019093C3012E +:1033E000A093C401B093C5011F910F910C94C61511 +:1033F0001092BE011092BF011092C0011092C10143 +:103400000C94C61541E050E060E070E004C0440F49 +:10341000551F661F771F8A95D2F74093BE015093C0 +:10342000BF016093C0017093C1010C94C61541E0C7 +:1034300050E060E070E004C0440F551F661F771F26 +:103440008A95D2F78091BE019091BF01A091C001F1 +:10345000B091C101482B592B6A2B7B2B4093BE01A5 +:103460005093BF016093C0017093C1010C94C615C5 +:1034700041E050E060E070E004C0440F551F661F5B +:10348000771F8A95D2F740955095609570958091F9 +:10349000BE019091BF01A091C001B091C10148232C +:1034A00059236A237B234093BE015093BF0160934D +:1034B000C0017093C1010C94C61541E050E060E07A +:1034C00070E004C0440F551F661F771F8A95D2F71E +:1034D0008091BE019091BF01A091C001B091C10146 +:1034E000482759276A277B274093BE015093BF0185 +:1034F0006093C0017093C1010C94C6150F931F9384 +:103500000091BE011091BF012091C0013091C10115 +:10351000DC01CB01802B912BA22BB32B8093BE011E +:103520009093BF01A093C001B093C1011F910F916F +:103530000C94C6150F931F930091BE011091BF010B +:103540002091C0013091C101DC01CB018023912386 +:10355000A223B3238093BE019093BF01A093C00127 +:10356000B093C1011F910F910C94C6150F931F9337 +:103570000091BE011091BF012091C0013091C101A5 +:10358000DC01CB0180279127A227B3278093BE01BE +:103590009093BF01A093C001B093C1011F910F91FF +:1035A0000C94C6150895CF92DF92EF92FF920F937D +:1035B0001F93CF93DF938C01C090C201D090C301C1 +:1035C000E090C401F090C5018091BE019091BF01CF +:1035D000A091C001B091C101C82AD92AEA2AFB2AC8 +:1035E000CFE1D0E0D701C6010C2E04C0B695A79557 +:1035F000979587950A94D2F780FF06C0B8018C2F63 +:103600000E942C08019721F4219760F780E001C007 +:103610008C2FDF91CF911F910F91FF90EF90DF9052 +:10362000CF900895CF93DF93EC010E94D31ABE018F +:103630000E942C08DF91CF910895CB010E94121BAC +:1036400008958091C6018595859585950895809109 +:10365000C6018770089598E0899F90011124262B58 +:103660002093C6010C94171A2091C60180958223DD +:103670008093C601982F977069F430E0482F552742 +:1036800047FD50952417350729F085958595859533 +:103690000C94381A08959091C601977081E009F44E +:1036A00080E0089590910C01992321F090910D01F3 +:1036B000911109C020910E0130910F01F90132964C +:1036C0009FEF40E01FC0982F9695969596959F3056 +:1036D00050F5E0910E01F0910F01E90FF11D877097 +:1036E00021E030E0A90102C0440F551F8A95E2F79E +:1036F000CA019181892B818308959F3F39F04F5FE3 +:103700004E3041F051915813F8CF0DC05111F7CF01 +:10371000942FF5CF9F3F39F0F901E90FF11D97FD87 +:10372000FA9582830895089590910C01992321F0D0 +:1037300090910D01911109C020910E0130910F015E +:10374000F9013296205F3F4F1FC0982F96959695AE +:1037500096959F30F0F4E0910E01F0910F01E90F82 +:10376000F11D877021E030E0A90102C0440F551F10 +:103770008A95E2F7CA018095918189238183089512 +:103780003196E217F30729F090819813F9CF108250 +:10379000F7CF089581E090E0E0910E01F0910F01E4 +:1037A000E80FF91F1082019680319105A9F708955D +:1037B0009091DA01892B8093DA0108958095909198 +:1037C000DA0189238093DA0108951092DA010895CD +:1037D0009091D901892B8093D9010895809590917A +:1037E000D90189238093D90108951092D9010895B0 +:1037F0009091D801892B8093D8010895809590915C +:10380000D80189238093D80108951092D801089592 +:103810008093C70108951092C701089580910E0109 +:1038200090910F01FC0131969C01205F3F4F80E099 +:10383000919191118F5FE217F307D1F70895E0910D +:103840000E01F0910F018091DA018083E0910E0169 +:10385000F0910F0190818091D901892B8083E091B3 +:103860000E01F0910F0190818091D801892B808306 +:103870008091C701882361F0E0910E01F0910F0162 +:103880009081892B80830E940E1C81111092C701A8 +:1038900080910E0190910F010C944D1120E0009742 +:1038A00039F0AC0141505109842395232F5FF7CFA4 +:1038B000822F0895CF92DF92EF92FF926C01EE2457 +:1038C000FF24C114D104E104F10421F0C701B601C1 +:1038D00020E101C020E0C72ED82EE92EFF24C1141C +:1038E000D104E104F10419F0285FC701B6016B01AE +:1038F0007C0154E0F694E794D794C7945A95D1F795 +:10390000C114D104E104F10419F02C5FC701B60120 +:103910006B017C0142E0F694E794D794C7944A95F2 +:10392000D1F7C114D104E104F10419F02E5FC701ED +:10393000B601DC01CB01B695A79597958795892BA4 +:103940008A2B8B2B09F02F5F822FFF90EF90DF9057 +:10395000CF9008958091F401843021F11092DC0120 +:1039600020E488E190E00FB6F894A8958093600079 +:103970000FBE2093600080E00E943E0A83B7817FE3 +:10398000846083BF83B7816083BF7894889583B751 +:103990008E7F83BF88E10FB6F89480936000109209 +:1039A00060000FBE089508950E94C9030E94DC03C1 +:1039B0000E94D31C0E94D10491E0811101C090E0CB +:1039C000892F08950E94DA150E9441110C943E0A35 +:1039D00082E084BD93E095BD9AEF97BD80936E0021 +:1039E00008952FB7F8948091DD019091DE01A091A8 +:1039F000DF01B091E0012FBF0895CF92DF92EF92E7 +:103A0000FF920F931F932FB7F8944091DD015091CF +:103A1000DE016091DF017091E0012FBF6A017B013F +:103A2000EE24FF248C0120E030E0C016D106E2062F +:103A3000F30610F4415051099A01281B390BC901B2 +:103A40001F910F91FF90EF90DF90CF9008951F92FC +:103A50000F920FB60F9211248F939F93AF93BF9342 +:103A60008091DD019091DE01A091DF01B091E00134 +:103A70000196A11DB11D8093DD019093DE01A093FD +:103A8000DF01B093E001BF91AF919F918F910F90B3 +:103A90000FBE0F901F9018950E943E0EF8942FEFC6 +:103AA00087EA91E6215080409040E1F700C0000095 +:103AB00087E090EBDC018093FD019093FE01A093E1 +:103AC000FF01B09300029CE088E10FB6F894A8953E +:103AD000809360000FBE90936000FFCF0E94A61DF0 +:103AE000811102C00E948C1D0E94B11D8093DB01D8 +:103AF0000E94B91D90E09093EF018093EE0187FB47 +:103B0000882780F980930D010E94B51D682F70E011 +:103B100080E090E00C949A196DEE7EEF80E090E0EA +:103B20000E94F42360E082E090E00E94E22360E0E3 +:103B300083E090E00E94E22360E084E090E00E9455 +:103B4000E22360E085E090E00C94E22380E090E0E6 +:103B50000E94DC2321E08D3E9E4F09F020E0822F61 +:103B6000089582E090E00C94D42383E090E00C94DC +:103B7000D42384E090E00C94D423682F84E090E078 +:103B80000C94E2238091E30180FF0BC0609113014C +:103B900085E0689FB00111247595679575956795C7 +:103BA0002BC081FF09C06091130185E0689FB001BF +:103BB00011247595679520C082FF07C0609113019D +:103BC00085E0689FB001112417C09091E40199230A +:103BD000D1F060911201961788F72091130185E0CA +:103BE000289F90011124929FA001939F500D1124B2 +:103BF00070E0CA010E94A6236038710540F4611587 +:103C0000710539F002C065E070E0862F08958FE7F6 +:103C1000089581E008958091E30180FF08C06091DC +:103C2000110170E0759567957595679521C081FFC5 +:103C300006C06091110170E07595679519C082FF0B +:103C400004C06091110170E010C09091E4019923CB +:103C5000C1F0609110019617A0F780911101899F22 +:103C6000C001112470E00E94A6236038710528F479 +:103C70006115710521F0862F08958FE7089581E081 +:103C8000089561E070E0F4CF803F21F40E94C21DEE +:103C9000819504C0813F29F40E94C21D8093E701F1 +:103CA0000895823F21F40E94C21D819504C0833F84 +:103CB00029F40E94C21D8093E6010895893F19F4FA +:103CC0000E940B1E05C08A3F31F40E940B1E819595 +:103CD0008093E80108958B3F21F40E940B1E81958B +:103CE00004C08C3F29F40E940B1E8093E9010895C3 +:103CF000843F21F48091E501816017C0853F21F464 +:103D00008091E501826011C0863F21F48091E50138 +:103D100084600BC0873F21F48091E501886005C075 +:103D2000883F31F48091E50180618093E501089539 +:103D30008D3F21F48091E30181600BC08E3F21F41F +:103D40008091E301826005C08F3F29F48091E301F7 +:103D500084608093E3010895803F39F48091E70106 +:103D600087FF6CC01092E70169C0813F29F4809100 +:103D7000E7011816BCF362C09091E601823F29F476 +:103D800097FF5CC01092E60159C0833F19F41916E1 +:103D9000CCF354C0893F41F48091E80118160CF02F +:103DA0004DC01092E8014AC08A3F29F48091E80191 +:103DB00087FF44C0F6CF8B3F39F48091E90187FF3C +:103DC0003DC01092E9013AC08C3F29F48091E9018D +:103DD0001816BCF333C0843F21F48091E5018E7F37 +:103DE00017C0853F21F48091E5018D7F11C0863F8A +:103DF00021F48091E5018B7F0BC0873F21F48091F6 +:103E0000E501877F05C0883F31F48091E5018F7E11 +:103E10008093E50113C08D3F21F48091E3018E7FF3 +:103E20000BC08E3F21F48091E3018D7F05C08F3F51 +:103E300029F48091E3018B7F8093E3018091E60177 +:103E400081110EC08091E70181110AC08091E801C3 +:103E5000811106C08091E901811102C01092E40134 +:103E6000089585EE91E00E9458110E94F11C9093F4 +:103E7000E2018093E10108951F93CF93DF93809136 +:103E8000E1019091E2010E94FD1CAC019091E401DE +:103E9000992321F02091140130E006C020911501F2 +:103EA0008AE0289F900111244217530708F486C026 +:103EB0008091E601C091E701D091E8011091E901FC +:103EC000811107C0C11176C0D11174C0111172C027 +:103ED00075C09F3F19F09F5F9093E401181624F47A +:103EE0000E94C21D8093E6018091E60187FF05C014 +:103EF0000E94C21D81958093E6011C1624F40E9445 +:103F0000C21D8093E7018091E70187FF05C00E94F1 +:103F1000C21D81958093E7016091E601662339F126 +:103F2000C091E701CC2319F1772767FD7095872FA2 +:103F3000972F0E94B72223E333E343E35FE30E941A +:103F40001B230E9484226093E6016C2F772767FD74 +:103F50007095872F972F0E94B72223E333E343E323 +:103F60005FE30E941B230E9484226093E7011D16D9 +:103F700024F40E940B1E8093E8018091E80187FFE2 +:103F800005C00E940B1E81958093E801111624F450 +:103F90000E940B1E8093E9018091E90187FF05C013 +:103FA0000E940B1E81958093E901DF91CF911F91B3 +:103FB0000C94311F9F3F09F08ECF96CFDF91CF91A8 +:103FC0001F910895E5EEF1E085E0DF011D928A95ED +:103FD000E9F71092E4011092E3010895833081F132 +:103FE00028F4813059F08230D1F00895853009F4F9 +:103FF00049C0B8F1863009F456C008958091150182 +:10400000262F30E0280F311D2F3F310524F4680F93 +:104010006093150108958FEF8093150108958091A5 +:104020001401262F30E0280F311D2F3F310524F4D5 +:10403000680F6093140108958FEF80931401089521 +:1040400080911301262F30E0280F311D2F3F3105BD +:1040500024F4680F6093130108958FEF8093130188 +:10406000089580911201262F30E0280F311D2F3F37 +:10407000310524F4680F6093120108958FEF809347 +:104080001201089580911101262F30E0280F311D73 +:104090002F3F310524F4680F6093110108958FEFCD +:1040A00080931101089580911001262F30E0280F90 +:1040B000311D2F3F310524F4680F609310010895DE +:1040C0008FEF809310010895833011F128F481302F +:1040D00049F0823091F00895853081F120F18630E9 +:1040E000C1F1089580911501681720F4861B809313 +:1040F0001501089510921501089580911401681713 +:1041000020F4861B809314010895109214010895E1 +:1041100080911301681720F4861B80931301089582 +:1041200010921301089580911201681720F4861BE4 +:104130008093120108951092120108958091110147 +:10414000681720F4861B80931101089510921101C5 +:10415000089580911001681720F4861B8093100148 +:1041600008951092100108950F931F938D3109F453 +:1041700071C008F045C0803109F485C008F587306A +:1041800009F46FC068F4863009F0ADC08091DB019E +:10419000817F8E7F8093DB0181E08093EB01A4C05F +:1041A0008B3009F49EC08E3009F09DC08091DB01F8 +:1041B00082FB222720F991E0922790FB82F96CC0C4 +:1041C000863109F48EC060F4813109F08CC00E9400 +:1041D000DA1590910D0181E0892780930D0181C04E +:1041E000893109F47EC08B3109F07DC08091DB01FB +:1041F00081FB222720F991E0922790FB81F94CC0A6 +:10420000853309F466C048F4873209F462C008F4C3 +:104210004FC0893209F45DC066C0833438F48A33F4 +:1042200008F044C0883309F45CC05DC0833409F4ED +:1042300050C0883409F057C00E94DA150FEF13ED13 +:1042400020E3015010402040E1F700C000000E9430 +:104250004C1D47C00E943E220E9441110E943E0A0E +:1042600040C09091DB01892F8095817080FB90F98F +:1042700029F0966098609093DB0136C0997F977F14 +:104280009093DB012EC08091DB0183FB222720F974 +:1042900091E0922790FB83F98093DB01992309F148 +:1042A0008091DB0181608093DB011BC0895301C0D9 +:1042B0008D5141E050E060E070E08A019B0104C054 +:1042C000000F111F221F331F8A95D2F7C901B801B1 +:1042D00004C061E070E080E090E00E949A190E94C2 +:1042E000DA1581E001C080E01F910F91089580E010 +:1042F000089580E008958E518A3030F4E82FF0E080 +:10430000E65DFE4F8081089580E00895CF93C82F29 +:104310008091EB01813079F018F08230E9F186C0AC +:10432000E0910E01F0910F018081813169F08232BC +:1043300009F07EC009C0E0910E01F0910F0180816B +:10434000813111F0823261F48C2F0E94772181112A +:1043500004C08C2F0E94B4201DC081E090E01AC0E0 +:104360008C2F0E947921811114C0C43179F048F456 +:10437000CB3079F0C03109F05FC082E08093EB016F +:1043800008C0C93219F0C83321F056C01092EB01B1 +:1043900053C081E0817052C0C93281F110F5C4313F +:1043A00069F1A8F4C73009F045C08AE0809315018F +:1043B00094E19093140193E0909313018093120180 +:1043C00088E08093110188E28093100133C082EE6F +:1043D0008C0F863078F58C2F0E947B218093EA0128 +:1043E00029C0CE34E9F020F4CB3421F56AE013C0C3 +:1043F000C13579F0C235F1F461E00DC08091EA0178 +:10440000882319F01092EA0115C081E08093EB0136 +:1044100015C061E006C08091EA010E94EE1F0AC04B +:104420006AE08091EA010E94642004C01092EB01CE +:1044300080E004C081E002C080E0ACCFCF9108955D +:10444000E1E8F0E080818860808380818160808302 +:104450008FB7F89493E09093890090ED9093880043 +:104460008FBF0895EFE6F0E0808182608083089539 +:10447000EFE6F0E080818D7F80830895EFE6F0E045 +:10448000908182E08927808308951F920F920FB652 +:104490000F9211242F933F934F935F936F937F93CA +:1044A0008F939F93AF93BF93EF93FF938091EC0112 +:1044B0009091ED0101969093ED018093EC018111B3 +:1044C00003C082E00E943E0AE091ED01E695E69588 +:1044D000F0E0E755FA4FE4918091EC018E1303C0B0 +:1044E00080E00E943E0AFF91EF91BF91AF919F91B2 +:1044F0008F917F916F915F914F913F912F910F908D +:104500000FBE0F901F90189504D06894B1118DC004 +:10451000089570D088F09F5790F0B92F9927B75120 +:10452000A0F0D1F0660F771F881F991F1AF0BA9577 +:10453000C9F712C0B13081F077D0B1E0089574C0EE +:10454000672F782F8827B85F39F0B93FCCF386956D +:1045500077956795B395D9F73EF4909580957095CA +:1045600061957F4F8F4F9F4F0895E89409C097FB47 +:104570003EF490958095709561957F4F8F4F9F4F3A +:104580009923A9F0F92F96E9BB279395F69587957E +:1045900077956795B795F111F8CFFAF4BB0F11F441 +:1045A00060FF1BC06F5F7F4F8F4F9F4F16C08823E8 +:1045B00011F096E911C0772321F09EE8872F762F1E +:1045C00005C0662371F096E8862F70E060E02AF05F +:1045D0009A95660F771F881FDAF7880F969587954B +:1045E00097F9089557FD9058440F551F59F05F3FB4 +:1045F00071F04795880F97FB991F61F09F3F79F005 +:1046000087950895121613061406551FF2CF469586 +:10461000F1DF08C0161617061806991FF1CF869508 +:104620007105610508940895E894BB2766277727EC +:10463000CB0197F908950BD078C069D028F06ED0DF +:1046400018F0952309F05AC05FC01124EECFCADFDD +:10465000A0F3959FD1F3950F50E0551F629FF00195 +:10466000729FBB27F00DB11D639FAA27F00DB11DEE +:10467000AA1F649F6627B00DA11D661F829F222777 +:10468000B00DA11D621F739FB00DA11D621F839FFE +:10469000A00D611D221F749F3327A00D611D231FD4 +:1046A000849F600D211D822F762F6A2F11249F5722 +:1046B00050408AF0E1F088234AF0EE0FFF1FBB1F45 +:1046C000661F771F881F91505040A9F79E3F5105E4 +:1046D00070F014C0AACF5F3FECF3983EDCF38695F0 +:1046E00077956795B795F795E7959F5FC1F7FE2B8F +:1046F000880F911D9695879597F9089597F99F676B +:1047000080E870E060E008959FEF80EC0895002459 +:104710000A941616170618060906089500240A9426 +:1047200012161306140605060895092E0394000CAC +:1047300011F4882352F0BB0F40F4BF2B11F460FF3B +:1047400004C06F5F7F4F8F4F9F4F089597FB072ED9 +:1047500016F4009407D077FD09D00E94C02307FC0F +:1047600005D03EF4909581959F4F08957095619581 +:104770007F4F0895EE0FFF1F0590F491E02D0994EF +:10478000AA1BBB1B51E107C0AA1FBB1FA617B70777 +:1047900010F0A61BB70B881F991F5A95A9F7809593 +:1047A0009095BC01CD010895F999FECF92BD81BDD0 +:1047B000F89A992780B50895A8E1B0E042E050E06A +:1047C0000C94FC23262FF999FECF92BD81BDF89A57 +:1047D000019700B4021639F01FBA20BD0FB6F89445 +:1047E000FA9AF99A0FBE08950196272F0E94E323A3 +:1047F0000C94E223DC01CB01FC01F999FECF06C049 +:10480000F2BDE1BDF89A319600B40D92415050408E +:08481000B8F70895F894FFCFFA +:104818000220400ACE0AAB0A770A430A0101C801FE +:1048280028080A03140A404D363969051C05E604B0 +:10483800AD044004590472048B0401020304050604 +:044848000708090054 +:00000001FF diff --git a/keyboards/ergodox_ez/keymaps/csharp_dev/csharp_dev.png b/keyboards/ergodox_ez/keymaps/csharp_dev/csharp_dev.png new file mode 100644 index 0000000000..6fba568fc3 Binary files /dev/null and b/keyboards/ergodox_ez/keymaps/csharp_dev/csharp_dev.png differ diff --git a/keyboards/ergodox_ez/keymaps/csharp_dev/csharp_dev_legend.png b/keyboards/ergodox_ez/keymaps/csharp_dev/csharp_dev_legend.png new file mode 100644 index 0000000000..b0a1c513cd Binary files /dev/null and b/keyboards/ergodox_ez/keymaps/csharp_dev/csharp_dev_legend.png differ diff --git a/keyboards/ergodox_ez/keymaps/csharp_dev/keymap.c b/keyboards/ergodox_ez/keymaps/csharp_dev/keymap.c new file mode 100644 index 0000000000..e9648ede7d --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/csharp_dev/keymap.c @@ -0,0 +1,239 @@ +#include "ergodox_ez.h" +#include "debug.h" +#include "action_layer.h" + +#define BASE 0 // default layer +#define FKEYS 1 // 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 | , | |Home |End~L1| + * ,------|------|------| |------+------+------. + * | | | Copy | | UP | | | + * | Enter| Space|------| |------| Space|Enter | + * | ~WIN | ~LSFT| Past | | DOWN | ~LSFT| ~WIN | + * `--------------------' `--------------------' + */ +// 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), KC_COMM, + LCTL(KC_C), + GUI_T(KC_ENTER),SFT_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), + KC_HOME, LT(1,KC_END), + KC_UP, + KC_DOWN,SFT_T(KC_SPACE), GUI_T(KC_ENTER) + ), + +/* Keymap 1: F keys + macros + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | ESC | F1 | F2 | F3 | F4 | F5 | ` | | Calc | F6 | F7 | F8 | F9 | F10 | F11 | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Tab |Public|Static|string|int |return| | | |//TODO| | | | | F12 | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | |Privat|Const |var |float |null |------| |------|new | | | | | | + * |--------+------+------+------+------+------| \ | | ~ |------+------+------+------+------+--------| + * | | | |void |bool |break;| | | |(); | | | | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | WIN | Alt | | | | PgUp | PgDw | Ins | PtSc | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | Cut | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| Left | Right| + * | | | | | | | | + * `--------------------' `--------------------' + */ +// FKEYS + MACROS +[FKEYS] = KEYMAP( + // left hand + KC_ESCAPE,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_GRAVE, + KC_TAB,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_BSLASH, + KC_TRNS,KC_LGUI,KC_LALT,KC_TRNS,KC_TRNS, + KC_TRNS,LCTL(KC_X), + 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_TILD, M(MACRO_PARENTHESE), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_PGUP,KC_PGDOWN, KC_INSERT, KC_PSCREEN, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_LEFT, KC_RIGHT +), + + +}; + +const uint16_t PROGMEM fn_actions[] = { + [1] = ACTION_LAYER_TAP_TOGGLE(FKEYS) // 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(9), T(0),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/keyboards/ergodox_ez/keymaps/csharp_dev/readme.md b/keyboards/ergodox_ez/keymaps/csharp_dev/readme.md new file mode 100644 index 0000000000..96af077ade --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/csharp_dev/readme.md @@ -0,0 +1,47 @@ +# ErgoDox EZ C# Developer configuration + +## Changelog + +* Feb 12, 2016 (V1): + * First version commit +* Mar 20, 2016 (V2): + * Removed "Classic QWERTY" layer, inverted GUI and SHIFT on Hold for Space and Enter + +## 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 + +## 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/keyboards/ergodox_ez/keymaps/dave/compiled.hex b/keyboards/ergodox_ez/keymaps/dave/compiled.hex new file mode 100644 index 0000000000..22b5c66821 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/dave/compiled.hex @@ -0,0 +1,1169 @@ +:100000000C9478020C94BC020C94BC020C94BC02BC +:100010000C94BC020C94BC020C94BC020C94BC0268 +:100020000C94BC020C94BC020C94BC0D0C948E0E6F +:100030000C94BC020C94BC020C94BC020C94BC0248 +:100040000C94BC020C9498220C94BC020C94BC023C +:100050000C94BC020C942B1C0C94BC020C94BC029F +:100060000C94BC020C94BC020C94BC020C94BC0218 +:100070000C94BC020C94BC020C94BC020C94BC0208 +:100080000C94BC020C94BC020C94BC020C94BC02F8 +:100090000C94BC020C94BC020C94BC020C94BC02E8 +:1000A0000C94BC020C94BC020C94BC02FB0E1D0F01 +:1000B0000B101D0F0B10620F850F0B10DA0FED0FD9 +:1000C000BC12BC12EB12EB12211341137214721406 +:1000D0004C137214FC13FC136314721472146C141A +:1000E0000914091409140914091409140914091428 +:1000F0000914091409140914091409140914091418 +:100100001B1428142F143614401429002B00E0006F +:10011000E100357100001E00140004001D006400A1 +:10012000E3001F001A0016001B000000025220000E +:1001300008000700060000002C002100150009003F +:100140001900E2001151220017000A00050000000A +:10015000460023001C0000000B00000046002300A6 +:100160000A00000005000000007524001C000B00C0 +:10017000110000000075250018000D001000E600B9 +:10018000115126000C000E0036002F002C00270015 +:1001900012000F003700300001522D001300330011 +:1001A00038000000E7002A0028002800E50034712C +:1001B0000000010001000100010001000000010039 +:1001C0001E02200222020100010001001F02210282 +:1001D00023020100010001002F0226022F0001006E +:1001E000010001003002270230000100125101001D +:1001F000310235003502000001000100010000005D +:1002000001000000010001000100000001000000E9 +:1002100001000100010001000100000001000000D8 +:100220005F005C00590062001251540060005D00E4 +:100230005A0062000100550061005E005B0063002F +:1002400001005600570057005800580001002E00CA +:100250003200340001000100000001000100010033 +:100260000100010000003A004A005000F400F200D2 +:1002700001003B0052005100F000F10001003C0081 +:100280004D004F00F500F30001003D0049004C0017 +:100290000100010010513E004B004E000100000023 +:1002A00001003F00010000000100000001004000CB +:1002B00001000000010000000100410001000100F8 +:1002C00001000000010042000100B600AC00AA00DD +:1002D0001051430049004C00AE00A800010044004A +:1002E0000100B700AB00A9000100450001000100BA +:1002F00001000100010001000100010001000100F6 +:10030000000016034500720067006F0044006F0094 +:100310007800200045005A000000160345007200D6 +:1003200067006F0044006F007800200045005A000D +:1003300000000403090409026D00040100A0FA0989 +:100340000400000103010100092111010001223F05 +:10035000000705810308000A0904010001030102E6 +:1003600000092111010001224D0007058203080048 +:100370000A09040200010300000009211101000123 +:100380002236000705830308000A0904030001035D +:100390000000000921110100012239000705840332 +:1003A0001000011201100100000008EDFE0713010A +:1003B000000102000105010906A101050719E02954 +:1003C000E715002501950875018102050819012925 +:1003D00005950575019102950175039101050719B0 +:1003E00000297715002501957875018102C0050166 +:1003F0000980A101850216010026B7001A01002A12 +:10040000B700751095018100C0050C0901A1018597 +:1004100003160100269C021A01002A9C0275109501 +:10042000018100C005010902A1010901A10005091E +:100430001901290515002501950575018102950110 +:10044000750381010501093009311581257F950268 +:100450007508810609381581257F95017508810683 +:10046000050C0A38021581257F950175088106C0A3 +:10047000C005010906A101050719E029E7150025B6 +:10048000019508750181029501750881010508191A +:1004900001290595057501910295017503910105E5 +:1004A00007190029FF150025FF950675088100C072 +:1004B0000000000000000000000000010204060A25 +:1004C0000F17202C3A4A5D71879DB3C7DAE9F5FC16 +:1004D000FFFCF5E9DAC7B39D87715D4A3A2C201716 +:1004E0000F0A0604020100000000000000000000E6 +:1004F00011241FBECFEFDAE0DEBFCDBF04B603FE8E +:1005000024C08091FF0190910002A0910102B0915E +:1005100002028730904BA740B04BB9F41092FF0114 +:1005200010920002109201021092020214BE84B7CF +:10053000877F84BF88E10FB6F894809360001092A3 +:1005400060000FBEE0E0FFE3099511E0A0E0B1E03C +:10055000EEEBF8E402C005900D92A433B107D9F791 +:1005600011E0A4E3B1E001C01D92AF3FB107E1F794 +:100570000E94000B0C945D240C9400001092B900B2 +:100580008AE08093B800089594EA9093BC0090911B +:10059000BC0097FFFCCF9091B900987F983021F074 +:1005A000903111F081E008958093BB0084E880933E +:1005B000BC008091BC0087FFFCCF8091B900887F90 +:1005C000883111F0803471F780E0089584E98093D8 +:1005D000BC008091BC0084FDFCCF08958093BB00DB +:1005E00084E88093BC008091BC0087FFFCCF909191 +:1005F000B900987F81E0983209F480E0089584E89A +:100600008093BC008091BC0087FFFCCF8091BB0031 +:10061000089580910101811115C080E40E94C402F7 +:100620008093010181110CC082E10E94EE0280934F +:100630000101811105C08FEF0E94EE02809301013C +:100640000E94E60284B1807F84B985B1807F85B93C +:100650008AB1837F8AB98BB1837F8BB93E984698E4 +:1006600008950E94C404809301010E94090380B38D +:100670008C7080BB81B3836F81BBA5E3B1E0E3E401 +:10068000F1E08EE08E0F11921D928E13FCCF0C9430 +:10069000AE04BF92CF92DF92EF92FF920F931F931F +:1006A000CF93DF9380910101882379F08091340109 +:1006B0008F5F80933401811108C00E94C40480932D +:1006C0000101811102C00E94560405E311E0C0E05F +:1006D000D0E0DD24D39482E0C82EEE24E394F12C04 +:1006E000C730D10500F580910101811164C080E41B +:1006F0000E94C40280930101811112C082E10E9414 +:10070000EE028093010181110BC0C7010C2E01C0C4 +:10071000880F0A94EAF780950E94EE028093010107 +:100720000E94E60248C0CA30A1F028F4C83059F04F +:10073000C93061F005C0CC3089F070F0CD3089F05F +:10074000209A289810C0219A29980DC0229A2A9898 +:100750000AC0239A2B9807C0529A01C0539A5B98FB +:1007600002C03E9A469890EA9A95F1F79FB179991E +:1007700002C082E001C080E091709D25982B7C9999 +:1007800002C084E001C080E0892B7D9902C038E07E +:1007900001C030E0832B7E9902C020E101C020E03F +:1007A000822B9FB19095991F9927991F9295990F28 +:1007B000907E892B0FC080910101811149C080E496 +:1007C0000E94C40280930101882379F1B12C0E9418 +:1007D000E6028B2DF8019081981719F08083C09262 +:1007E00000010E94090321960F5F1F4FCE30D105F3 +:1007F00009F076CF80910001882361F181508093C8 +:100800000001882339F08FE99FE00197F1F700C0DC +:10081000000020C0A3E4B1E0E5E3F1E0CF01825F96 +:1008200091919D938E13FCCF15C083E10E94EE023F +:10083000809301018111CACF81E40E94C402809398 +:1008400001018111C3CF0E94FF02B82EB094BFCF27 +:1008500080E0C0CF0E94540481E0DF91CF911F91CE +:100860000F91FF90EF90DF90CF90BF900895E82F09 +:10087000F0E0ED5BFE4F8081089508950F931F9384 +:10088000CF93DF93C3E4D1E010E00C2F025F899196 +:1008900090E00E94511B180F0C13F9CF812FDF91AC +:1008A000CF911F910F9108950C94240556985E984E +:1008B00025982D9826982E9827982F988FEF90E0BE +:1008C000909389008093880090938B0080938A0096 +:1008D00090938D0080938C00259A2D9A2FEF80E7BE +:1008E00092E0215080409040E1F700C00000269A3D +:1008F0002E9A2FEF80E792E0215080409040E1F760 +:1009000000C00000279A2F9A2FEF80E792E0215035 +:1009100080409040E1F700C0000025982D982FEF0F +:1009200080E792E0215080409040E1F700C0000055 +:1009300026982E982FEF80E792E02150804090403B +:10094000E1F700C0000027982F9856985E982598E8 +:100950002D9826982E9827982F98089589EA8093A5 +:10096000800089E08093810024982C983F988AB178 +:100970008F748AB96E98479A8BB1806B8BB9769ACF +:100980000E9456040C94230580E28093010180911B +:10099000510181110EC00E94BE0281E0809351017D +:1009A0002FEF83ED90E3215080409040E1F700C0AD +:1009B000000080E40E94C4028093010181112EC0D6 +:1009C0000E94EE0280930101811128C00E94EE0274 +:1009D00080930101811122C08FE30E94EE02809377 +:1009E000010181111BC00E94E60280E40E94C40242 +:1009F00080930101811112C08CE00E94EE0280936D +:100A0000010181110BC00E94EE028093010181114E +:100A100005C08FE30E94EE02809301010E94E6026E +:100A200080910101089561110BC0FC01828188232E +:100A300021F085EE0E94601103C085EE0E9428120D +:100A400080E090E008950895EF92FF921F93CF9376 +:100A5000DF936091C1017091C2018091C3019091B7 +:100A6000C4010E945D1B56985E9821E030E0E82F9B +:100A7000F0E0AF014E5A5E4F7A01A1E0B0E0122FD4 +:100A8000821308C0AF01E701988161E09F3F69F4DC +:100A900060E00BC0A901B9016E5A7E4FEB0198814D +:100AA00061E0911101C060E06195960FBA016E5A44 +:100AB0007E4FEB0198834C5F5F4F992321F194B1F6 +:100AC000ED0102C0CC0FDD1F4A95E2F7AE019C2B71 +:100AD00094B995B1492B45B9EB01488150E02130DB +:100AE000310529F450938900409388001AC01230D0 +:100AF00029F450938B0040938A0013C050938D00CB +:100B000040938C000EC094B1BD0102C0660F771FE8 +:100B10004A95E2F7AB014095942394B995B14923E6 +:100B200045B92F5F3F4F2430310509F0A8CFDF9141 +:100B3000CF911F91FF90EF90089581E0089581E09B +:100B400008950C949F0508950F931F93CF93DF93FF +:100B50008C01FC01C081D181CE010E94D619BE0159 +:100B60000E944D06EC01B8010E94A105882309F4FA +:100B70008DC0F8018281882309F44AC08091610107 +:100B800081111FC0C431F0E5DF0709F051C00E9498 +:100B9000A30581E0809361010E94F51B90936001A1 +:100BA00080935F011092580110925A0110925901DE +:100BB00010925C0110925B0110925E0110925D0137 +:100BC00065C080915F01909160010E94011C883C8A +:100BD000910570F480915801E82FF0E0EE0FFF1FAF +:100BE000E75AFE4FD183C0838F5F809358014EC078 +:100BF000C43880E5D80721F0C538D04501F13AC0A6 +:100C0000F8018281882341F01092560182E01EC0D3 +:100C1000C438E0E5DE0759F580915601811106C020 +:100C200086E20E94601186E20E94281282E01CC0C7 +:100C3000C438F0E5DF0741F3C538D045D9F4F801F1 +:100C40008281882331F01092570180E20E9477124E +:100C50001DC080915701811106C087E20E9460117A +:100C600087E20E94281280E20E947E120FC0C538DF +:100C7000D04529F381E08093560180935701C80144 +:100C8000DF91CF911F910F910C949D0580E0DF9132 +:100C9000CF911F910F910895089596E0799FF001EB +:100CA000112494E5899FE00DF11D1124E60FF11D3B +:100CB000EE0FFF1FE65FFE4F859194910895880F18 +:100CC000991FFC01E657F040859194910895880F93 +:100CD000991FFC01E65FFE4F8591949108950F9353 +:100CE0001F93CF93DF93EC01811520E3920750F51A +:100CF000C11580E2D80708F0C3C0CB3BD10590F402 +:100D0000C83AD10508F06AC0C53AD10508F05BC001 +:100D1000C430D10508F0D0C1219709F0CAC101E063 +:100D200010E00AC2CF3FD10511F008F0C5C1C03FA5 +:100D3000D10508F0A2C0CE01805E9109089708F4A1 +:100D4000BBC1B7C1C13090E5D90709F4A2C020F5F5 +:100D5000C0318FE4D80770F4C11590E4D90708F0CA +:100D600094C0C11521E3D20708F0A3C1DD278E018D +:100D7000106CE2C1C115D04509F09BC10E94DD1481 +:100D80008FEF94E32CE0815090402040E1F700C0C9 +:100D900000000E94501CD0C1C11597E5D90758F436 +:100DA000C03121E5D20708F01CC1C43180E5D80765 +:100DB00008F475C07EC1CE0190578115904108F0AE +:100DC00078C1DF7073C1C53AD10509F477C1C63A5D +:100DD000D10509F076C102E810E4AEC1C83AD105E8 +:100DE00009F472C1C93AD10509F471C1CA3AD105F1 +:100DF00009F470C1CB3AD10509F46FC1CC3AD105E1 +:100E000009F46EC1CD3AD10509F46DC1C03BD105DD +:100E100009F46CC1CE3AD10509F46BC1CF3AD105C2 +:100E200009F46AC1C13BD10509F469C1C23BD105CE +:100E300009F468C1C33BD10509F467C1C43BD105BE +:100E400009F466C1C53BD10509F465C1C63BD105AE +:100E500009F464C1C73BD10509F463C1C83BD1059E +:100E600009F462C1C93BD10509F461C1CA3BD1058E +:100E700009F460C100E014E45FC18E0110655CC13B +:100E8000CE019F700E94670658C1DF708E01106A04 +:100E900053C18091DE0181608093DE014DC10E94CB +:100EA000F51D811102C00E94DB1D0E94121E90E000 +:100EB0009093FF018093FE01C23080E5D80721F4B2 +:100EC0008091FE01816086C0C43090E5D90721F48D +:100ED0008091FE0182607EC0C63020E5D20721F4F9 +:100EE0008091FE01846076C0C83080E5D80719F48F +:100EF0008091FE0127C0CA3090E5D90721F4809186 +:100F0000FE01806167C0CC3020E5D20721F48091DA +:100F1000FE0180625FC0CE3080E5D80721F4809169 +:100F2000FE01806457C0C03190E5D90721F480915B +:100F3000FE0180684FC0C23120E5D20729F48091BC +:100F4000FE018460886046C0C33080E5D80721F484 +:100F50008091FE018E7F3EC0C53090E5D90721F417 +:100F60008091FE018D7F36C0C73020E5D20721F485 +:100F70008091FE018B7F2EC0C93080E5D80719F41F +:100F80008091FE0126C0CB3090E5D90721F48091F5 +:100F9000FE018F7E1FC0CD3020E5D20721F4809165 +:100FA000FE018F7D17C0CF3080E5D80721F48091F6 +:100FB000FE018F7B0FC0C13190E5D90721F48091EC +:100FC000FE018F7707C0C331D04531F48091FE0117 +:100FD0008B7F877F8093FE018091FE010E94161E09 +:100FE000ABC08D2F99278F70992781309105D9F447 +:100FF0009E012370332702C0880F991F2A95E2F7BC +:101000009C688E0144E0000F111F4A95E1F700270C +:101010001370802B912B53E0CC0FDD1F5A95E1F715 +:10102000C076DD272FC08230910531F4DC2FCC272C +:101030008E01016F106A80C08330910569F4CE0182 +:101040008370992701E010E002C0000F111F8A95FC +:10105000E2F7C8019C680FC084309105B9F4CE0155 +:101060008370992701E010E002C0000F111F8A95DC +:10107000E2F7C8019A6823E0CC0FDD1F2A95E1F75B +:10108000C07ED7708C010C2B1D2B56C0853091056E +:1010900031F4DC2FCC278E01046F106A4DC0069707 +:1010A00009F04AC0CF71DD27DC2FCC278E011062FA +:1010B00043C000E010E040C08E013EC001E810E4F3 +:1010C0003BC003E810E438C002EE14E435C009EE7A +:1010D00014E432C00AEE14E42FC005EB14E42CC073 +:1010E00006EB14E429C007EB14E426C00CEC14E46E +:1010F00023C00DEC14E420C003E815E41DC00AE889 +:1011000015E41AC002E915E417C004E915E414C097 +:1011100001E216E411C003E216E40EC004E216E494 +:101120000BC005E216E408C006E216E405C007E2BB +:1011300016E402C00AE216E4C801DF91CF911F91C4 +:101140000F91089596E0799FF001112494E5899F0D +:10115000E00DF11D1124E60FF11DEE0FFF1FE65FFC +:10116000FE4F85919491803E9105E0F4803C91057D +:1011700058F58133910509F46FC048F4893291051F +:1011800009F463C08A32910509F46DC072C08933D5 +:101190009105E9F082389105D1F08533910509F484 +:1011A0004DC067C0833E910581F138F4803E9105C2 +:1011B000B9F0823E9105D9F05CC0863E910561F19F +:1011C000873E9105A1F155C00E945F0608952091C8 +:1011D000FE0120FD02C021FF4CC080EE90E049C01E +:1011E0008091FE0180FFF9CF89E390E042C08091B9 +:1011F000FE0182FF0EC08091FE0184FF03C080E0EB +:1012000090E037C083EE90E034C08091FE0182FF11 +:10121000F2CF82EE90E02DC08091FE0183FF0BC0E3 +:101220008091FE0184FDEBCF87EE90E022C080919B +:10123000FE0183FFF5CF86EE90E01BC08091FE019A +:1012400085FF07C089E290E014C08091FE0185FF10 +:10125000F9CF85E390E00DC08091FE0186FF07C0C5 +:101260008AE290E006C08091FE0186FFF9CF81E31B +:1012700090E00E946F06089508950C943C098091B7 +:1012800072010895CF93DF9300D01F92CDB7DEB7E0 +:101290009C018091F501843019F593E099833B839B +:1012A0002A839093E9008FEF9091E800815095FD9B +:1012B00006C095ED9A95F1F700008111F5CF809168 +:1012C000E80085FF0DC040E050E063E070E0CE0133 +:1012D00001960E94AC0B8091E8008E778093E80025 +:1012E0000F900F900F90DF91CF910895CF93DF93E0 +:1012F00000D01F92CDB7DEB72091F501243021F543 +:1013000022E029839B838A8383E08093E9008FEF27 +:101310009091E800815095FD06C095ED9A95F1F702 +:1013200000008111F5CF8091E80085FF0DC040E0FD +:1013300050E063E070E0CE0101960E94AC0B80911A +:10134000E8008E778093E8000F900F900F90DF9168 +:10135000CF9108952091F5012430F1F422E02093FB +:10136000E9002FEF3091E800215035FD06C035ED42 +:101370003A95F1F700002111F5CF2091E80025FF03 +:101380000BC040E050E065E070E00E94AC0B809143 +:10139000E8008E778093E8000895CF93DF93EC0107 +:1013A0009091F501943009F046C080910C0188239A +:1013B000D9F080910D018823B9F09093E9008FEF67 +:1013C0009091E800815095FD06C095E19A95F1F75E +:1013D00000008111F5CF8091E80085FF2CC040E02E +:1013E00050E060E170E017C081E08093E9008FEF8A +:1013F0009091E800815095FD06C095ED9A95F1F722 +:1014000000008111F5CF8091E80085FF14C040E015 +:1014100050E068E070E0CE010E94AC0B8091E800E3 +:101420008E778093E80080E1FE01A2E6B1E00190B2 +:101430000D928A95E1F7DF91CF9108958091F401A3 +:10144000811109C00E94410D0E949E0D8091E20011 +:1014500084608093E20008951092F4010895089545 +:101460000C9485220E94E61B0E948B220E9444104D +:101470000C943D0942E061EC81E00E94BB0C42E02B +:1014800061EC82E00E94BB0C42E061EC83E00E94D0 +:10149000BB0C42E161EC84E00C94BB0C8091F70141 +:1014A000833009F455C030F4813071F0823009F492 +:1014B0008EC008958A3009F47AC08B3009F460C078 +:1014C000893009F09CC020C08091F601813A09F072 +:1014D00096C08091E800877F8093E8008091FA01B0 +:1014E0009091FB01892B21F460E182E691E003C039 +:1014F00060E080E090E070E00E94F70B8091E800EF +:101500008B778093E80008958091F601813209F08D +:1015100076C08091FA019091FB01009719F0039732 +:1015200009F06DC08091E800877F8093E80080918A +:10153000E80082FD05C08091F5018111F8CF5FC000 +:101540008091F100809372018091E8008B7753C005 +:101550008091F601813A09F052C08091FA01909190 +:10156000FB01892B09F04BC08091E800877F8093B5 +:10157000E8008091E80080FFFCCF80910C0136C02C +:101580008091F6018132D9F58091FA019091FB01A9 +:10159000892BA9F58091E800877F8093E8000E945D +:1015A000F00C8091F80180930C010C94DD14809173 +:1015B000F601813221F58091E800877F8093E80071 +:1015C0000E94F00C8091F90180937301089580913D +:1015D000F601813AA1F48091E800877F8093E800CA +:1015E0008091E80080FFFCCF809173018093F1002F +:1015F0008091E8008E778093E8000C94F00C0895B9 +:1016000084B7877F84BF88E10FB6F8948093600029 +:10161000109260000FBE90E080E80FB6F8948093BF +:101620006100909361000FBE0E9493100E94410DD3 +:101630000E949E0D8091E20084608093E200789485 +:101640000E9424100E94951082E091E00E943F10B9 +:101650000E9473228091F501853069F40E94AD1BD0 +:101660008091F3018823B1F30E94D81B882391F362 +:101670000E94960BEFCF0E949B10ECCF292F3327AF +:1016800023303105C9F064F42130310581F0223076 +:10169000310509F043C08DE690E026E333E042C017 +:1016A00021323105F1F02232310541F137C082E1BA +:1016B00090E023EA33E036C099278130910541F06C +:1016C0008230910541F0892B49F5E2E3F3E005C052 +:1016D000EAE1F3E002C0E2E0F3E0849190E09F01F0 +:1016E00021C06430D8F4E62FF0E0EE0FFF1FEE5D6E +:1016F000FE4F2081318189E090E014C0643070F4A5 +:1017000070E0FB01EE0FFF1FE65EFE4F208131818E +:10171000FB01EA5EFE4F808190E004C080E090E033 +:1017200020E030E0FA0131832083089580E189BD13 +:1017300082E189BD09B400FEFDCF8091D8008F7D84 +:101740008093D8008091E00082608093E0008091D7 +:10175000E00081FDFCCF0895CF92DF92EF92FF92DF +:101760000F931F93CF93DF93EC018B016A010E94CB +:101770000F0D811133C0C114D10439F0F6018081FD +:101780009181081B190BC80FD91FE12CF12C0115F1 +:10179000110519F18091E80085FD16C08091E800DF +:1017A0008E778093E800C114D10449F0F60180815E +:1017B0009181E80EF91EF182E08285E00FC00E945F +:1017C0000F0D882321F30AC089918093F100015005 +:1017D0001109FFEFEF1AFF0ADACF80E0DF91CF9116 +:1017E0001F910F91FF90EF90DF90CF90089520917F +:1017F000FC013091FD012617370748F0611571058E +:1018000039F42091E8002E772093E80001C0B90157 +:1018100040E061157105A9F12091F501222309F439 +:1018200043C0253009F442C02091E80023FD40C0A8 +:101830002091E80022FD32C02091E80020FFE9CF8E +:101840004091F3002091F20030E0342BFC01CF01F5 +:101850006115710559F02830310540F4819180936C +:10186000F100615071092F5F3F4FF1CF41E0283007 +:10187000310509F040E02091E8002E772093E80040 +:10188000C8CF4111C9CF0AC08091F501882361F00A +:10189000853061F08091E80083FD0AC08091E80006 +:1018A00082FFF2CF80E0089582E0089583E00895FA +:1018B00081E008952091FC013091FD012617370742 +:1018C00048F06115710539F42091E8002E772093D6 +:1018D000E80001C0B901FC0120E06115710591F13A +:1018E0008091F501882309F440C0853009F43FC098 +:1018F0008091E80083FD3DC08091E80082FD2FC00B +:101900008091E80080FFE9CF2091F3008091F20000 +:1019100090E0922B6115710559F08830910540F4E3 +:1019200024912093F1003196615071090196F2CF14 +:1019300021E0089709F020E08091E8008E778093FD +:10194000E800CBCF2111CCCF0AC08091F5018823CC +:1019500061F0853061F08091E80083FD0AC08091DC +:10196000E80082FFF2CF80E0089582E0089583E0EE +:10197000089581E00895982F973058F59093E900E5 +:10198000981739F07091EC002091ED005091F00023 +:1019900003C0242F762F50E021FF19C03091EB00B7 +:1019A0003E7F3093EB003091ED003D7F3093ED00B2 +:1019B0003091EB0031603093EB007093EC0020939A +:1019C000ED005093F0002091EE0027FF07C09F5FCD +:1019D000D3CF8F708093E90081E0089580E008956F +:1019E0008091F60187FF11C08091E80082FD05C05B +:1019F0008091F5018111F8CF11C08091E8008B77BB +:101A00000BC08091F501882349F08091E80080FFA8 +:101A1000F8CF8091E8008E778093E80008952091B8 +:101A2000E4003091E50095E64091EC00842F817050 +:101A300040FF22C08091E80080FD1CC08091F5012C +:101A4000882391F0853091F08091EB0085FD10C0E6 +:101A50004091E4005091E5004217530729F39A01A1 +:101A6000915011F784E0089582E0089583E008958D +:101A700081E0089580E008954091E80042FFDECFC4 +:101A800008950E94AF0D0E94B70DE0EEF0E0808156 +:101A900081608083E8EDF0E080818F77808319BCDE +:101AA000A7EDB0E08C918E7F8C9380818F7E8083B8 +:101AB0001092F40108950F931F93CF93DF930E9428 +:101AC000AF0D0E94B70DC8EDD0E088818F77888375 +:101AD00088818068888388818F7D888319BC109273 +:101AE000F5011092F1011092F3011092F20100EE53 +:101AF00010E0F80180818B7F8083888181608883FA +:101B000042E060E080E00E94BB0CE1EEF0E080810A +:101B10008E7F8083E2EEF0E080818160808380812F +:101B200088608083F80180818E7F808388818061D6 +:101B30008883DF91CF911F910F910895E8EDF0E038 +:101B400080818F7E8083E7EDF0E0808181608083FB +:101B500084E082BF81E08093F4010C945B0DE8ED9A +:101B6000F0E080818E7F80831092E20008951092D1 +:101B7000DA001092E10008951F920F920FB60F92B3 +:101B800011242F933F934F935F936F937F938F9382 +:101B90009F93AF93BF93EF93FF938091E10082FFF8 +:101BA0000BC08091E20082FF07C08091E1008B7F33 +:101BB0008093E1000E9423108091DA0080FF1FC013 +:101BC0008091D80080FF1BC08091DA008E7F8093C7 +:101BD000DA008091D90080FF0DC080E189BD82E1EB +:101BE00089BD09B400FEFDCF81E08093F5010E941C +:101BF0001E0A05C019BC1092F5010E942C0A8091A2 +:101C0000E10080FF19C08091E20080FF15C0809143 +:101C1000E2008E7F8093E2008091E20080618093F9 +:101C2000E2008091D80080628093D80019BC85E0E2 +:101C30008093F5010E94300A8091E10084FF30C05A +:101C40008091E20084FF2CC080E189BD82E189BDE2 +:101C500009B400FEFDCF8091D8008F7D8093D8001D +:101C60008091E1008F7E8093E1008091E2008F7E81 +:101C70008093E2008091E20081608093E200809195 +:101C8000F101882311F084E007C08091E30087FD13 +:101C900002C081E001C083E08093F5010E94320A16 +:101CA0008091E10083FF29C08091E20083FF25C07D +:101CB0008091E100877F8093E10082E08093F501CD +:101CC0001092F1018091E1008E7F8093E10080917C +:101CD000E2008E7F8093E2008091E2008061809339 +:101CE000E20042E060E080E00E94BB0C8091F000E6 +:101CF00088608093F0000E942F0AFF91EF91BF91BE +:101D0000AF919F918F917F916F915F914F913F9193 +:101D10002F910F900FBE0F901F9018951F920F924A +:101D20000FB60F9211242F933F934F935F936F93AE +:101D30007F938F939F93AF93BF93CF93DF93EF9353 +:101D4000FF93C091E900CF708091EC00D82FD17043 +:101D500080FDD0E81092E9008091F000877F8093A9 +:101D6000F00078940E94D20E1092E9008091F00069 +:101D700088608093F000CD2BCF70C093E900FF9175 +:101D8000EF91DF91CF91BF91AF919F918F917F9113 +:101D90006F915F914F913F912F910F900FBE0F90D8 +:101DA0001F9018951F93CF93DF93CDB7DEB7AA97F7 +:101DB0000FB6F894DEBF0FBECDBFE6EFF1E088E0CE +:101DC0008E0F9091F10091938E13FBCF0E944E0ADB +:101DD0008091E80083FF1FC18091F6019091F70187 +:101DE000492F50E04A30510508F015C1FA01EA5A6E +:101DF000FF4F0C940D24803881F0823809F00BC11C +:101E00008091FA018F708093E9008091EB0085FB4F +:101E1000882780F91092E90006C08091F201909124 +:101E2000F301911182609091E800977F9093E80010 +:101E30008093F1001092F100C8C0282F2D7F09F087 +:101E4000EAC0882319F0823061F0E5C08091F80182 +:101E5000813009F0E0C0933009F080E08093F30115 +:101E60002BC08091F801811127C08091FA018F70F9 +:101E700009F4D1C08093E9002091EB0020FF1CC041 +:101E8000933021F48091EB00806214C09091EB00BC +:101E900090619093EB0021E030E0A90102C0440F73 +:101EA000551F8A95E2F74093EA001092EA0080916C +:101EB000EB0088608093EB001092E9008091E800CD +:101EC000877F86C08111A7C01091F8011F7780918C +:101ED000E3008078812B8093E3008091E800877F86 +:101EE0008093E8000E94F00C8091E80080FFFCCF16 +:101EF0008091E30080688093E300111102C082E0CA +:101F000001C083E08093F50186C08058823008F0DC +:101F100082C08091F8019091F9018C3D53E09507C2 +:101F200079F583E08A838AE289834FB7F894DE01EA +:101F3000139620E03EE051E2E32FF0E0509357008B +:101F4000E49120FF03C0E295EF703F5FEF708E2FAA +:101F500090E0EA3010F0C79601C0C0968D939D9333 +:101F60002F5F243149F74FBF8091E800877F80932E +:101F7000E8006AE270E0CE0101960E94F70B14C0FF +:101F8000AE014F5F5F4F6091FA010E943E0BBC01B2 +:101F9000009709F440C09091E800977F9093E80083 +:101FA00089819A810E945A0C8091E8008B778093F6 +:101FB000E80031C0803879F58091E800877F809310 +:101FC000E8008091F1018093F1008091E8008E7724 +:101FD0008093E8000E94F00C1EC081111CC09091FB +:101FE000F8019230C0F48091E800877F8093E80088 +:101FF0009093F1010E94F00C8091F101811106C0D3 +:102000008091E30087FD02C081E001C084E08093FD +:10201000F5010E943A0A8091E80083FF0AC080918E +:10202000E800877F8093E8008091EB0080628093D6 +:10203000EB00AA960FB6F894DEBF0FBECDBFDF91BE +:10204000CF911F9108950895CF938091F501882332 +:10205000A1F0C091E900CF709091EC00892F8170C0 +:1020600090FD80E8C82B1092E9008091E80083FD84 +:102070000E94D20ECF70C093E900CF910895909343 +:102080007901809378010895E0917801F0917901C8 +:10209000309721F00190F081E02D099480E00895BF +:1020A000E0917801F0917901309721F00280F3817D +:1020B000E02D09940895E0917801F091790130972D +:1020C00021F00480F581E02D099408952091760196 +:1020D000309177018217930771F090937701809385 +:1020E0007601E0917801F0917901309721F0068036 +:1020F000F781E02D099408952091740130917501C4 +:102100008217930771F09093750180937401E091A9 +:102110007801F0917901309721F00084F185E02D6C +:102120000994089508950C9492100E94EC1B0E944B +:1021300031030C94AE1C9F92AF92BF92CF92DF926C +:10214000EF92FF920F931F93CF93DF9300D000D0B5 +:1021500000D0CDB7DEB70E9449030DE010E0AA24FD +:10216000A394B12C902E802F0E94370498012558FB +:102170003E4F6901F901F080F826A1F401501109E0 +:1021800088F78FEF89838A831B820E94F51B816009 +:10219000782F9D838C8349815A816B818D810E9428 +:1021A00032112FC09091DE0191FF04C08E830E94F6 +:1021B0003D048E8125E030E0A501022E01C0440FD0 +:1021C0000A94EAF7E42E4F21C1F029839A828E21E6 +:1021D00091E009F490E09B830E94F51B8160782FC9 +:1021E0009D838C8349815A816B818D810E9432113C +:1021F000F6018081E826E08204C021503109E0F632 +:10220000BDCF0E94951F10917A010E9444101817AB +:10221000B9F00E94441080937A0126960FB6F89484 +:10222000DEBF0FBECDBFDF91CF911F910F91FF9009 +:10223000EF90DF90CF90BF90AF909F900C943D09AE +:1022400026960FB6F894DEBF0FBECDBFDF91CF91BB +:102250001F910F91FF90EF90DF90CF90BF90AF90C4 +:102260009F900895CF93DF93CDB7DEB72B970FB62E +:10227000F894DEBF0FBECDBF4F83588769877A873A +:102280008B87DE01119686E0FD0111928A95E9F7B0 +:1022900085E0FE01379601900D928A95E1F749811C +:1022A0005A816B817C818D819E810E947B172B9648 +:1022B0000FB6F894DEBF0FBECDBFDF91CF9108956A +:1022C000CF93882309F4C2C0C82F823859F40E94E2 +:1022D000441081FDBBC089E30E94551A0E94221B55 +:1022E00089E30CC0833879F40E94441080FDAEC0AD +:1022F00083E50E94551A0E94221B83E50E94971ACB +:10230000CF910C94221B843859F40E94441082FD12 +:102310009DC087E40E94551A0E94221B87E4EECFDD +:102320008CEF8C0F813A48F48C2F0E94D8218111B8 +:102330008DC08C2F0E94551AE3CF80E28C0F88301D +:1023400048F4C77081E001C0880FCA95EAF70E947F +:10235000DB1AD6CF8BE58C0F833078F4C53A29F0A1 +:10236000C63A31F083E890E005C081E890E002C011 +:1023700082E890E0CF910C94661088E58C0F833151 +:1023800008F064C0C83A39F1C93A41F1CA3A49F192 +:10239000CB3A51F1CC3A59F1CD3A61F1C03B69F1F8 +:1023A000CE3A71F1CF3A79F1C13B81F1C23B89F16B +:1023B000C33B91F1C43B99F1C53BA1F1C63BA9F1E7 +:1023C000C73BB1F1C83BB9F1C93BC1F1CA3BC9F147 +:1023D00080E090E038C082EE90E035C089EE90E079 +:1023E00032C08AEE90E02FC085EB90E02CC086EBE7 +:1023F00090E029C087EB90E026C08CEC90E023C0F1 +:102400008DEC90E020C083E891E01DC08AE891E067 +:102410001AC082E991E017C084E991E014C081E21A +:1024200092E011C083E292E00EC084E292E00BC021 +:1024300085E292E008C086E292E005C087E292E081 +:1024400002C08AE292E0CF910C947C10CF91089563 +:10245000882309F44BC0823859F40E94441081FF4C +:1024600045C089E30E94551A0E94221B89E30CC0D3 +:10247000833871F40E94441080FF38C083E50E94C5 +:10248000551A0E94221B83E50E94971A0C94221B66 +:10249000843859F40E94441082FF28C087E40E94C7 +:1024A000551A0E94221B87E4EFCF9CEF980F913AB8 +:1024B00058F390E2980F983050F4877091E001C083 +:1024C000990F8A95EAF7892F0E94E11ADFCF9BE5E1 +:1024D000980F933020F480E090E00C946610885AB6 +:1024E000833120F480E090E00C947C1008958823E0 +:1024F00021F00E94DB1A0C94221B0895882321F0FE +:102500000E94E11A0C94221B08957F928F929F9251 +:10251000AF92BF92CF92DF92EF92FF920F931F93F1 +:10252000CF93DF931F92CDB7DEB77C01C62E772EF7 +:10253000FC01058102950F70128111110E94F81A99 +:102540000E944E1A882379F0112369F080E28C0DE5 +:10255000883048F082E00E94371A0E944E1A91E0BB +:10256000D82ED92601C0D12CE72DE295EF70F0E0EE +:10257000E05AFF4F0C940D24872D807F072D0F709C +:10258000882311F00295007F112389F0002309F4BC +:1025900090C180E28C0D883020F4802F0E94DB1ADD +:1025A00003C0802F0E94EB1A0E94221B82C18C2D37 +:1025B0000E942812002309F495C180E28C0D883016 +:1025C00020F4802F0E94E11A03C0802F0E94F11A8C +:1025D0000E94221B87C1972D907F872D8F7090328C +:1025E00011F08295807FCC2021F0F1E0CF16B1F080 +:1025F0001EC0112349F0002309F414C1013009F071 +:1026000011C10E940B1B6EC1002319F0013009F4A7 +:1026100069C189830E940E1B89810AC1112321F09F +:10262000023008F05FC1FEC001115CC101C111237D +:1026300021F0002309F4F6C03CC1002309F4F8C0DE +:102640003EC1872D86958695837090E0009719F09E +:10265000019761F047C1112321F08C2D972D9370C4 +:1026600002C080E090E00E9466103CC1112321F07E +:102670008C2D972D937002C080E090E00E947C101A +:1026800031C18C2D112319F00E949D1E02C00E94A1 +:10269000051F0E948A1F26C1872D837009F052C032 +:1026A000111120C18C2D829586958770880F880F17 +:1026B0009C2D9F70892E912CA12CB12C082E04C02A +:1026C000880C991CAA1CBB1C0A94D2F7C4FE14C027 +:1026D0000FE010E020E030E0B901A80104C0440F91 +:1026E000551F661F771F8A95D2F7CB01BA016095F7 +:1026F00070958095909503C060E070E0CB01272D28 +:1027000026952695237030E02230310569F023307C +:10271000310589F0682979298A299B2921303105D9 +:1027200071F00E94C318DEC0682979298A299B2983 +:102730000E94DF18D7C00E94C318C501B4010E94CF +:10274000A718D0C0112319F0872D817001C086957C +:10275000882309F4C7C08C2D829586958770880FD1 +:10276000880F9C2D9F70892E912CA12CB12C082EA6 +:1027700004C0880C991CAA1CBB1C0A94D2F7C4FE86 +:1027800014C00FE010E020E030E0B901A80104C05F +:10279000440F551F661F771F8A95D2F7CB01BA01E8 +:1027A000609570958095909503C060E070E0CB01D6 +:1027B000272D269526952370422F50E04230510553 +:1027C00069F04330510589F0682979298A299B29C4 +:1027D0004130510571F00E949D1984C06829792902 +:1027E0008A299B290E94B9197DC00E949D19C501A3 +:1027F000B4010E94811976C08C2D90E0FC01E05E4E +:10280000F109E531F10508F050C0E059FF4F0C9493 +:102810000D240C2D0F70872D8F71112331F00E9424 +:102820001A19802F0E9477125DC00E943B19802FD9 +:102830000E947E1257C0112339F0011153C0872D19 +:102840008F710E9460194EC0023008F04BC0F7CF64 +:10285000112339F0872D8F710E941A1943C011235B +:10286000C9F3872D8F710E943B193CC0112329F0B9 +:10287000872D8F710E94051935C00E94FB1832C048 +:10288000112351F0172D1F71812F0E941A1963E037 +:10289000812F0E942E1A26C081E00E94371A023032 +:1028A00008F182E00E94371A1DC0112331F0002385 +:1028B00089F28C2D0E94601115C0002391F28C2D9D +:1028C0000E9428120FC0472D4F706C2DC7010E9427 +:1028D00013050E941F1806C0472D4F706C2DC701AD +:1028E0000E944C06DD20F9F00E942A1A80FD1BC0D0 +:1028F000F70112820E94241A0E941A19C7010E942D +:10290000A2140E94241A0F90DF91CF911F910F9172 +:10291000FF90EF90DF90CF90BF90AF909F908F90FF +:102920007F900C943B190F90DF91CF911F910F91E5 +:10293000FF90EF90DF90CF90BF90AF909F908F90DF +:102940007F9008950F931F93CF93DF93EC018881BD +:1029500099812B813C81232BB9F09F3F11F48F3F4C +:1029600099F0CE010E94A405882371F068817981D5 +:102970008A810E94201A8C010E94D5190E949C18FD +:10298000B801CE010E948512DF91CF911F910F9166 +:1029900008950E94F81A0E94081B0E94CD1A0E94F6 +:1029A000221B0E943B200E948A1F80E090E00E9430 +:1029B000661080E090E00C947C100E94E81A0C9461 +:1029C000C9140E94151A292F22952F7030E02C303F +:1029D00031054CF42A3031056CF422503109223093 +:1029E0003105A8F407C02C30310569F02F303105CE +:1029F00051F00DC0803F69F018F4803E40F409C0EA +:102A0000843F29F406C093FB882780F9089580E06D +:102A1000089581E00895CF93DF9300D000D01F92F6 +:102A2000CDB7DEB70F900F900F900F900F90DF9102 +:102A3000CF910895CF93DF9300D000D000D0CDB7D1 +:102A4000DEB726960FB6F894DEBF0FBECDBFDF917E +:102A5000CF9108951F93CF93DF93C091890116E022 +:102A600080918A01C81799F0D0E01C9FF0011D9F4A +:102A7000F00D1124E557FE4F408151816281738131 +:102A8000848195810E941A152196C770E9CFDF9144 +:102A9000CF911F9108954091BB015091BC0160916D +:102AA000BD017091BE018091BF019091C0010C9455 +:102AB0001A158091C00182958F7009F054C08091E1 +:102AC000BD01882309F44FC080918901A0918A013A +:102AD0006091BB017091BC014091BE015091BF015A +:102AE000B6E08A1709F43FC090E041155105C1F1E5 +:102AF0007F3F11F46F3FA1F1B89FF001B99FF00D36 +:102B00001124E557FE4F218172132AC020816213E0 +:102B100027C02281211124C0238134812417350745 +:102B200010F421503109241B350B283C3105C0F429 +:102B30002091C0012F7020612093C00126E0289FC2 +:102B4000F001299FF00D1124E057FE4F80818F7016 +:102B5000806180838BEB91E00E94A2140C942A1573 +:102B600001968770BECF0895CF92DF92EF92FF92C9 +:102B70000F931F93CF93DF93CDB7DEB762970FB656 +:102B8000F894DEBF0FBECDBF8C0185E0F801DE01F9 +:102B90001D9601900D928A95E1F7D8014C911196FE +:102BA0005C91119712966C9112971396CD90DC90D0 +:102BB00014973091BB017091BC018091BE0190913E +:102BC000BF01009709F46BC17F3F19F43F3F09F43F +:102BD00066C1E090BD01EE2009F4C0C02091C001A3 +:102BE000C816D90628F0F601E81BF90BCF0104C07E +:102BF000809590958C0D9D1DFF24F394883C910544 +:102C000078F0F12C207F09F0C6C07C2DD98AC88AC3 +:102C100089890E940B158BEB91E00E94A214B1C030 +:102C2000822F807F09F046C0751314C0341312C080 +:102C3000611110C02F7020612093C0010E944B15BC +:102C40008BEB91E00E94A2148091C001D8011596EF +:102C50008C932EC0CD2819F15F3F11F44F3FF9F04E +:102C6000F62E61111CC08091890120918A0136E005 +:102C7000821709F45AC090E0389FF001399FF00D97 +:102C80001124E557FE4F7181571306C07081471319 +:102C900003C07281711103C001968770E9CFF62ECF +:102CA000662309F418C18091C00181608093C0013E +:102CB000F12C11C1751308C0341306C0611104C092 +:102CC0008091C001D801C3C04D875E878D859E85E8 +:102CD0006A8B0E94E1146A898823E1F16623D1F1AD +:102CE0002091C001822F82958F7090E0029774F03E +:102CF0008091BB019091BC0198878F831986DB86F8 +:102D0000CA862C87CE0107960E94A21486E0F8019D +:102D1000ABEBB1E001900D928A95E1F70E94591555 +:102D20000E944B15FF24F394D6C04D875E878D8596 +:102D30009E850E94151A292F22952F7030E022308F +:102D400031050CF0BCC09F7009F0B6C0805E8830C1 +:102D500008F4C1C0C8010E94A214E4CFC816D90665 +:102D600008F453C0F601E81BF90BCF01883C91052C +:102D700008F450C0F12C7C2DD98AC88A89890E9418 +:102D80000B15EBEBF1E086E0DF011D928A95E9F788 +:102D90000E944B15A0C0751314C0341312C06111EA +:102DA00010C08091C001F8018583C8010E94A2145F +:102DB00086E0EBEBF1E0DF011D928A95E9F7FE2C4E +:102DC0008AC04D875E878D859E856A8B0E94E1143F +:102DD0006A89882309F4BECF662309F4BBCF20910A +:102DE000C001822F82958F7090E002970CF48ECFF5 +:102DF0008091BB019091BC019A8389831B82DD8203 +:102E0000CC822E83CE0101967FCF809590958C0D3C +:102E10009D1DACCFF62E662309F49CCF75132EC0F2 +:102E200034132CC02091C00120FD1FC0822F829539 +:102E30008F70D9F0D80115962C9315978F3049F0E3 +:102E40008F5F982F9295907F822F8F70892B159688 +:102E50008C93C8010E94A21486E0F801ABEBB1E0AC +:102E600001900D928A95E1F793CF86E0F801ABEBE4 +:102E7000B1E001900D928A95E1F72DC04D875E87F4 +:102E80008D859E850E94E114811140CF8091C00103 +:102E900081608093C001C8010E94A2141CC06623F7 +:102EA00009F458CF4D875E878D859E850E94E11479 +:102EB000882309F44FCF2ACF811148CF0CC024308A +:102EC00031050CF047CF9F7009F440CFF801958190 +:102ED000907F09F03BCF8F2D62960FB6F894DEBF3E +:102EE0000FBECDBFDF91CF911F910F91FF90EF905B +:102EF000DF90CF9008951F93CF93DF93CDB7DEB7C8 +:102F00002C970FB6F894DEBF0FBECDBF4F83588706 +:102F100069877A878B879C87CE0107960E94B415B4 +:102F2000882369F08F8198852A853B85232BF1F1D1 +:102F30009F3F09F063C08F3F09F060C037C086E053 +:102F4000FE013796DE01119601900D928A95E1F708 +:102F50006F817885EA85FB85309741F17F3F11F4D9 +:102F60006F3F21F120918A0130E0C90101968770FD +:102F700099274091890150E08417950709F447C0CB +:102F800069837A83FD83EC8396E0929FD001939FBF +:102F9000B00D1124A557BE4FFE01319601900D9240 +:102FA0009A95E1F780938A010E942A1516E0809194 +:102FB000890190918A018917C1F1189FC0011124DC +:102FC00085579E4F0E94B415882379F1E0918901BD +:102FD0001E9FF0011124E557FE4F4081518162810F +:102FE0007381848195810E941A158091890190E0F6 +:102FF00001968770992780938901D9CF4F81588591 +:1030000069857A858B859C850E941A15CFCF0E9491 +:10301000DD1410928A0110928901EBEBF1E086E059 +:10302000DF011D928A95E9F7C1CF2C960FB6F8946F +:10303000DEBF0FBECDBFDF91CF911F910895EF92FC +:10304000FF920F931F93CF93DF938C01009709F4A6 +:103050006CC0F12CEE24E394E8012196F8018491F0 +:10306000843740F4843008F051C0813081F08230E0 +:1030700019F15BC0853709F444C0A8F19CE7980FAB +:10308000903708F052C08F770E94281241C00E5F1F +:103090001F4FFE01C49180E28C0F883048F4C77046 +:1030A0008E2D01C0880FCA95EAF70E94FB1A14C042 +:1030B0008C2F0E9460112DC00E5F1F4FFE01C49126 +:1030C00080E28C0F883058F4C7708E2D01C0880FB5 +:1030D000CA95EAF70E94011B0E94221B1AC08C2F7E +:1030E0000E94281216C00E5F1F4FFE01C491CC2310 +:1030F00081F08FE99FE00197F1F700C00000C15017 +:10310000F6CF0E5F1F4FFE01F49003C00E946011C6 +:103110008E018F2D882309F49FCFEFE9FFE03197CF +:10312000F1F700C000008150F5CFDF91CF911F91E2 +:103130000F91FF90EF90089508956093C5017093EB +:10314000C6018093C7019093C8010C94C9140F93D2 +:103150001F930091C5011091C6012091C7013091C4 +:10316000C801DC01CB01802B912BA22BB32B8093C8 +:10317000C5019093C601A093C701B093C8011F91E8 +:103180000F910C94C9140F931F930091C5011091D6 +:10319000C6012091C7013091C801DC01CB01802319 +:1031A0009123A223B3238093C5019093C601A093DA +:1031B000C701B093C8011F910F910C94C9140F93CC +:1031C0001F930091C5011091C6012091C701309154 +:1031D000C801DC01CB0180279127A227B327809368 +:1031E000C5019093C601A093C701B093C8011F9178 +:1031F0000F910C94C9141092C1011092C201109247 +:10320000C3011092C4010C94C91441E050E060E085 +:1032100070E004C0440F551F661F771F8A95D2F7D0 +:103220004093C1015093C2016093C3017093C401E4 +:103230000C94C91441E050E060E070E004C0440F19 +:10324000551F661F771F8A95D2F78091C101909113 +:10325000C201A091C301B091C401482B592B6A2B24 +:103260007B2B4093C1015093C2016093C3017093C3 +:10327000C4010C94C91441E050E060E070E004C067 +:10328000440F551F661F771F8A95D2F740955095BA +:10329000609570958091C1019091C201A091C30188 +:1032A000B091C401482359236A237B234093C10171 +:1032B0005093C2016093C3017093C4010C94C9146C +:1032C00041E050E060E070E004C0440F551F661F0D +:1032D000771F8A95D2F78091C1019091C201A09188 +:1032E000C301B091C401482759276A277B2740931F +:1032F000C1015093C2016093C3017093C4010C9447 +:10330000C9140F931F930091C1011091C201209124 +:10331000C3013091C401DC01CB01802B912BA22B86 +:10332000B32B8093C1019093C201A093C301B093CA +:10333000C4011F910F910C94C9140F931F93009116 +:10334000C1011091C2012091C3013091C401DC017F +:10335000CB0180239123A223B3238093C1019093B7 +:10336000C201A093C301B093C4011F910F910C94AB +:10337000C9140F931F930091C1011091C2012091B4 +:10338000C3013091C401DC01CB0180279127A22722 +:10339000B3278093C1019093C201A093C301B0935E +:1033A000C4011F910F910C94C9140895CF92DF921C +:1033B000EF92FF920F931F93CF93DF938C01C090F6 +:1033C000C501D090C601E090C701F090C80180917E +:1033D000C1019091C201A091C301B091C401C82A5A +:1033E000D92AEA2AFB2ACFE1D0E0D701C6010C2E68 +:1033F00004C0B695A795979587950A94D2F780FF54 +:1034000006C0B8018C2F0E94A208019721F42197D1 +:1034100060F780E001C08C2FDF91CF911F910F9159 +:10342000FF90EF90DF90CF900895CF93DF93EC0162 +:103430000E94D619BE010E94A208DF91CF91089583 +:10344000CB010E94151A08958091C9018595859533 +:10345000859508958091C9018770089598E0899FA6 +:1034600090011124262B2093C9010C941A19209144 +:10347000C901809582238093C901982F977069F4C0 +:1034800030E0482F552747FD50952417350729F080 +:103490008595859585950C943B1908959091C90162 +:1034A000977081E009F480E0089590910C019923D0 +:1034B00021F090910D01911109C020910E013091E0 +:1034C0000F01F90132969FEF40E01FC0982F9695AB +:1034D000969596959F3050F5E0910E01F0910F0171 +:1034E000E90FF11D877021E030E0A90102C0440F0F +:1034F000551F8A95E2F7CA019181892B818308952E +:103500009F3F39F04F5F4E3041F051915813F8CF43 +:103510000DC05111F7CF942FF5CF9F3F39F0F9012E +:10352000E90FF11D97FDFA95828308950895909112 +:103530000C01992321F090910D01911109C0209166 +:103540000E0130910F01F9013296205F3F4F1FC0ED +:10355000982F9695969596959F30F0F4E0910E01F0 +:10356000F0910F01E90FF11D877021E030E0A90112 +:1035700002C0440F551F8A95E2F7CA0180959181D8 +:103580008923818308953196E217F30729F090810A +:103590009813F9CF1082F7CF089581E090E0E09181 +:1035A0000E01F0910F01E80FF91F10820196803192 +:1035B0009105A9F708959091DD01892B8093DD0194 +:1035C000089580959091DD0189238093DD01089510 +:1035D0001092DD0108959091DC01892B8093DC012C +:1035E000089580959091DC0189238093DC010895F2 +:1035F0001092DC0108959091DB01892B8093DB010F +:10360000089580959091DB0189238093DB010895D3 +:103610001092DB0108958093CA0108951092CA01A7 +:10362000089580910E0190910F01FC0131969C014B +:10363000205F3F4F80E0919191118F5FE217F30778 +:10364000D1F70895E0910E01F0910F018091DD0115 +:103650008083E0910E01F0910F0190818091DC0157 +:10366000892B8083E0910E01F0910F019081809170 +:10367000DB01892B80838091CA01882361F0E0916E +:103680000E01F0910F019081892B80830E94111B04 +:1036900081111092CA0180910E0190910F010C943A +:1036A000501020E0009739F0AC01415051098423BB +:1036B00095232F5FF7CF822F0895CF92DF92EF925D +:1036C000FF926C01EE24FF24C114D104E104F10443 +:1036D00021F0C701B60120E101C020E0C72ED82E9D +:1036E000E92EFF24C114D104E104F10419F0285F8C +:1036F000C701B6016B017C0154E0F694E794D794BE +:10370000C7945A95D1F7C114D104E104F10419F01A +:103710002C5FC701B6016B017C0142E0F694E7948F +:10372000D794C7944A95D1F7C114D104E104F104A8 +:1037300019F02E5FC701B601DC01CB01B695A79544 +:1037400097958795892B8A2B8B2B09F02F5F822FDA +:10375000FF90EF90DF90CF9008958091F501843035 +:1037600021F11092DF0120E488E190E00FB6F89497 +:10377000A895809360000FBE2093600080E00E94B7 +:103780003D0983B7817F846083BF83B7816083BF36 +:103790007894889583B78E7F83BF88E10FB6F894BD +:1037A00080936000109260000FBE08950895089500 +:1037B0000E94D61B0E9449030E94D71B0E943E0410 +:1037C00091E0811101C090E0892F08950E94DD14DD +:1037D0000E9444100C943D0982E084BD93E095BDA5 +:1037E0009AEF97BD80936E0008952FB7F89480915B +:1037F000E0019091E101A091E201B091E3012FBFBE +:103800000895CF92DF92EF92FF920F931F932FB7FD +:10381000F8944091E0015091E1016091E2017091D2 +:10382000E3012FBF6A017B01EE24FF248C0120E01D +:1038300030E0C016D106E206F30610F441505109FB +:103840009A01281B390BC9011F910F91FF90EF902E +:10385000DF90CF9008951F920F920FB60F92112410 +:103860008F939F93AF93BF938091E0019091E1017B +:10387000A091E201B091E3010196A11DB11D8093D9 +:10388000E0019093E101A093E201B093E301BF91C5 +:10389000AF919F918F910F900FBE0F901F90189531 +:1038A0000E94410DF8942FEF87EA91E62150804065 +:1038B0009040E1F700C0000087E090EBDC018093CE +:1038C000FF0190930002A0930102B09302029CE0DA +:1038D00088E10FB6F894A895809360000FBE90938E +:1038E0006000FFCFEF92FF920F931F93CF93DF9370 +:1038F000D82FCDE08C2F0E94370405E010E0E82E91 +:10390000F12CC701002E02C0959587950A94E2F725 +:1039100080FF09C0602F7C2F80E00E944D06D813E5 +:1039200002C081E006C00150110958F7C15010F7DC +:1039300080E0DF91CF911F910F91FF90EF9008955C +:10394000CF93C82F8CE20E94721C882321F08C2F09 +:10395000CF910C94721C80E0CF910895CF930E9478 +:10396000F51D811102C00E94DB1DC5E6C15049F062 +:103970000E9449038FE39CE90197F1F700C0000022 +:10398000F5CF89E20E94A01C811113C18AE20E9436 +:10399000A01C81110E94DB1D85E00E94A01C8111EA +:1039A0000E94501C0E94001E8093DE0187E00E944E +:1039B000A01C8823A9F18BE10E94A01C882351F050 +:1039C0008091DE0181FB222720F991E0922790FB74 +:1039D00081F90EC08EE00E94A01C882361F08091C6 +:1039E000DE0182FB222720F991E0922790FB82F9E9 +:1039F0008093DE0115C080E10E94A01C9091DE0141 +:103A0000882341F093FB222720F981E0822780FB65 +:103A100093F904C0892F809580FB90F99093DE0183 +:103A20008091DE010E94041E0E94121E8093FE01FE +:103A300080EE0E94A01C882341F08091FE01982F07 +:103A4000909590FB80F98093FE0189E30E94A01C71 +:103A5000882359F08091FE0181FB222720F991E013 +:103A6000922790FB81F98093FE0182EE0E94A01CB8 +:103A7000882359F08091FE0182FB222720F991E0F2 +:103A8000922790FB82F98093FE0186EE0E94A01C93 +:103A9000882359F08091FE0183FB222720F991E0D1 +:103AA000922790FB83F98093FE0183EE0E94A01C75 +:103AB000882359F08091FE0184FB222720F991E0B0 +:103AC000922790FB84F98093FE0185E30E94A01C5D +:103AD000882359F08091FE0185FB222720F991E08F +:103AE000922790FB85F98093FE0181E30E94A01C40 +:103AF000882359F08091FE0186FB222720F991E06E +:103B0000922790FB86F98093FE0181E10E94A01C20 +:103B1000882359F08091FE0187FB222720F991E04C +:103B2000922790FB87F98093FE018091FE010E940D +:103B3000161E8091FE0187FB882780F980930D0176 +:103B400087E20E94A01CC82F8EE10E94A01C811158 +:103B5000C2608FE10E94A01C8111C46080E20E94BB +:103B6000A01C8111C86081E20E94A01C8111C0616B +:103B700082E20E94A01C8111C06283E20E94A01C0C +:103B80008111C06484E20E94A01C882311F0C068E7 +:103B900002C0CC2329F08C2F0E940D1E6C2F03C075 +:103BA0000E94091E682F70E080E090E0CF910C9495 +:103BB0009D18CF9108956DEE7EEF80E090E00E9419 +:103BC000472460E082E090E00E94352460E083E0DA +:103BD00090E00E94352460E084E090E00E9435246B +:103BE00060E085E090E00C94352480E090E00E9455 +:103BF0002F2421E08D3E9E4F09F020E0822F089572 +:103C000082E090E00C942724682F82E090E00C94EE +:103C1000352483E090E00C942724682F83E090E023 +:103C20000C94352484E090E00C942724682F84E0E1 +:103C300090E00C9435248091E60180FF0BC06091E8 +:103C4000130185E0689FB0011124759567957595FE +:103C500067952BC081FF09C06091130185E0689FC3 +:103C6000B00111247595679520C082FF07C060914F +:103C7000130185E0689FB001112417C09091E701FE +:103C80009923D1F060911201961788F720911301C2 +:103C900085E0289F90011124929FA001939F500DD1 +:103CA000112470E0CA010E94F9236038710540F4C4 +:103CB0006115710539F002C065E070E0862F089546 +:103CC0008FE7089581E008958091E60180FF08C0A4 +:103CD0006091110170E0759567957595679521C0A4 +:103CE00081FF06C06091110170E07595679519C05C +:103CF00082FF04C06091110170E010C09091E70153 +:103D00009923C1F0609110019617A0F780911101DD +:103D1000899FC001112470E00E94F9236038710569 +:103D200028F46115710521F0862F08958FE7089515 +:103D300081E0089561E070E0F4CF803F21F40E94BB +:103D40001B1E819504C0813F29F40E941B1E809395 +:103D5000EA010895823F21F40E941B1E819504C050 +:103D6000833F29F40E941B1E8093E9010895893F37 +:103D700019F40E94641E05C08A3F31F40E94641E3B +:103D800081958093EB0108958B3F21F40E94641E7E +:103D9000819504C08C3F29F40E94641E8093EC013D +:103DA0000895843F21F48091E801816017C0853F28 +:103DB00021F48091E801826011C0863F21F4809156 +:103DC000E80184600BC0873F21F48091E80188609E +:103DD00005C0883F31F48091E80180618093E8015B +:103DE00008958D3F21F48091E60181600BC08E3FE4 +:103DF00021F48091E601826005C08F3F29F4809113 +:103E0000E60184608093E6010895803F39F4809153 +:103E1000EA0187FF6CC01092EA0169C0813F29F472 +:103E20008091EA011816BCF362C09091E901823FCB +:103E300029F497FF5CC01092E90159C0833F19F43F +:103E40001916CCF354C0893F41F48091EB01181648 +:103E50000CF04DC01092EB014AC08A3F29F48091CA +:103E6000EB0187FF44C0F6CF8B3F39F48091EC0122 +:103E700087FF3DC01092EC013AC08C3F29F480913D +:103E8000EC011816BCF333C0843F21F48091E801A3 +:103E90008E7F17C0853F21F48091E8018D7F11C08E +:103EA000863F21F48091E8018B7F0BC0873F21F48E +:103EB0008091E801877F05C0883F31F48091E80157 +:103EC0008F7E8093E80113C08D3F21F48091E6013D +:103ED0008E7F0BC08E3F21F48091E6018D7F05C05F +:103EE0008F3F29F48091E6018B7F8093E6018091DA +:103EF000E90181110EC08091EA0181110AC080910F +:103F0000EB01811106C08091EC01811102C0109279 +:103F1000E701089588EE91E00E945B100E94F51B76 +:103F20009093E5018093E40108951F93CF93DF936D +:103F30008091E4019091E5010E94011CAC019091F7 +:103F4000E701992321F02091140130E006C020916F +:103F500015018AE0289F900111244217530708F4A5 +:103F600086C08091E901C091EA01D091EB011091E6 +:103F7000EC01811107C0C11176C0D11174C01111BB +:103F800072C075C09F3F19F09F5F9093E7011816AC +:103F900024F40E941B1E8093E9018091E90187FFB0 +:103FA00005C00E941B1E81958093E9011C1624F414 +:103FB0000E941B1E8093EA018091EA0187FF05C0E1 +:103FC0000E941B1E81958093EA016091E90166239E +:103FD00039F1C091EA01CC2319F1772767FD70957B +:103FE000872F972F0E940A2323E333E343E35FE302 +:103FF0000E946E230E94D7226093E9016C2F7727DD +:1040000067FD7095872F972F0E940A2323E333E3E0 +:1040100043E35FE30E946E230E94D7226093EA018C +:104020001D1624F40E94641E8093EB018091EB0125 +:1040300087FF05C00E94641E81958093EB011116D5 +:1040400024F40E94641E8093EC018091EC0187FFB0 +:1040500005C00E94641E81958093EC01DF91CF9191 +:104060001F910C948A1F9F3F09F08ECF96CFDF914E +:10407000CF911F910895E8EEF1E085E0DF011D92F8 +:104080008A95E9F71092E7011092E60108958330CE +:1040900081F128F4813059F08230D1F008958530D3 +:1040A00009F449C0B8F1863009F456C008958091EA +:1040B0001501262F30E0280F311D2F3F310524F444 +:1040C000680F6093150108958FEF8093150108958F +:1040D00080911401262F30E0280F311D2F3F31052C +:1040E00024F4680F6093140108958FEF80931401F6 +:1040F000089580911301262F30E0280F311D2F3FA6 +:10410000310524F4680F6093130108958FEF8093B5 +:104110001301089580911201262F30E0280F311DE0 +:104120002F3F310524F4680F6093120108958FEF3B +:1041300080931201089580911101262F30E0280FFD +:10414000311D2F3F310524F4680F6093110108954C +:104150008FEF80931101089580911001262F30E098 +:10416000280F311D2F3F310524F4680F6093100193 +:1041700008958FEF809310010895833011F128F492 +:10418000813049F0823091F00895853081F120F13D +:104190008630C1F1089580911501681720F4861BBF +:1041A00080931501089510921501089580911401CE +:1041B000681720F4861B809314010895109214014F +:1041C000089580911301681720F4861B80931301D2 +:1041D000089510921301089580911201681720F438 +:1041E000861B809312010895109212010895809108 +:1041F0001101681720F4861B809311010895109215 +:104200001101089580911001681720F4861B809396 +:10421000100108951092100108950F931F938D318E +:1042200009F46BC008F03FC08E3009F47FC0C0F4C1 +:10423000873009F469C068F4863009F0B1C0809114 +:10424000DE01817F8E7F8093DE0181E08093EE012D +:10425000A8C0883009F4A2C08B3009F49FC0A0C068 +:10426000863109F49BC078F4803109F472C0813141 +:1042700009F096C00E94DD1490910D0181E089271C +:1042800080930D018BC0893109F488C08B3109F00E +:1042900087C08091DE0181FB222720F991E09227DF +:1042A00090FB81F94CC0853309F470C048F4873223 +:1042B00009F46CC008F459C0893209F467C070C0B1 +:1042C000833438F48A3308F04EC0883309F466C06A +:1042D00067C0833409F45AC0883409F061C00E9471 +:1042E000DD140FEF13ED20E3015010402040E1F703 +:1042F00000C000000E94501C51C00E9491220E94E8 +:1043000044100E943D094AC09091DE01892F80959A +:10431000817080FB90F929F0966098609093DE019F +:1043200040C0997F977F9093DE0138C08091DE0175 +:1043300082FB222720F991E0922790FB82F980935B +:10434000DE01992359F18091DE0181608093DE01C5 +:1043500025C08091DE0183FB222720F991E092277E +:1043600090FB83F9ECCF895301C08D5141E050E0BF +:1043700060E070E08A019B0104C0000F111F221F42 +:10438000331F8A95D2F7C901B80104C061E070E01B +:1043900080E090E00E949D180E94DD1481E001C041 +:1043A00080E01F910F91089580E0089580E00895C6 +:1043B000CF93C82F8091EE01813079F018F08230D0 +:1043C000E9F187C0E0910E01F0910F018081813108 +:1043D00069F0823209F07FC009C0E0910E01F091CE +:1043E0000F018081813111F0823261F48C2F0E94A3 +:1043F000D421811104C08C2F0E940D211DC081E0A9 +:1044000090E01AC08C2F0E94D621811114C0C431B3 +:1044100079F048F4CB3079F0C03109F060C082E027 +:104420008093EE0108C0C93219F0C83321F057C09B +:104430001092EE0154C081E0817053C0C93289F1FD +:1044400018F5C43171F1A8F4C73009F046C08AE00C +:104450008093150194E19093140193E090931301DC +:104460008093120188E08093110188E2809310010B +:1044700034C0CE51C63088F5EC2FF0E0E65DFE4F3B +:1044800080818093ED0129C0CE34E9F020F4CB3453 +:1044900021F56AE013C0C13579F0C235F1F461E06D +:1044A0000DC08091ED01882319F01092ED0115C027 +:1044B00081E08093EE0115C061E006C08091ED01BE +:1044C0000E9447200AC06AE08091ED010E94BD2051 +:1044D00004C01092EE0180E004C081E002C080E0E0 +:1044E000ABCFCF910895E1E8F0E0808188608083D0 +:1044F0008081816080838FB7F89493E090938900E6 +:1045000090ED909388008FBF0895EFE6F0E08081F2 +:10451000826080830895EFE6F0E080818D7F808364 +:104520000895EFE6F0E0908182E089278083089586 +:104530001F920F920FB60F9211242F933F934F9318 +:104540005F936F937F938F939F93AF93BF93EF93FB +:10455000FF938091EF019091F00101969093F0010B +:104560008093EF01811103C082E00E943D09E09138 +:10457000F001E695E695F0E0E055FB4FE49180917F +:10458000EF018E1303C080E00E943D09FF91EF917F +:10459000BF91AF919F918F917F916F915F914F915B +:1045A0003F912F910F900FBE0F901F90189504D040 +:1045B0006894B1118DC0089570D088F09F5790F025 +:1045C000B92F9927B751A0F0D1F0660F771F881F38 +:1045D000991F1AF0BA95C9F712C0B13081F077D09F +:1045E000B1E0089574C0672F782F8827B85F39F03D +:1045F000B93FCCF3869577956795B395D9F73EF497 +:1046000090958095709561957F4F8F4F9F4F08953E +:10461000E89409C097FB3EF490958095709561955C +:104620007F4F8F4F9F4F9923A9F0F92F96E9BB2712 +:104630009395F695879577956795B795F111F8CF8E +:10464000FAF4BB0F11F460FF1BC06F5F7F4F8F4FF9 +:104650009F4F16C0882311F096E911C0772321F0EF +:104660009EE8872F762F05C0662371F096E8862F87 +:1046700070E060E02AF09A95660F771F881FDAF7DE +:10468000880F9695879597F9089557FD9058440F90 +:10469000551F59F05F3F71F04795880F97FB991FA1 +:1046A00061F09F3F79F0879508951216130614065E +:1046B000551FF2CF4695F1DF08C0161617061806EB +:1046C000991FF1CF86957105610508940895E894C6 +:1046D000BB2766277727CB0197F908950BD078C0C1 +:1046E00069D028F06ED018F0952309F05AC05FC049 +:1046F0001124EECFCADFA0F3959FD1F3950F50E0C0 +:10470000551F629FF001729FBB27F00DB11D639F83 +:10471000AA27F00DB11DAA1F649F6627B00DA11D29 +:10472000661F829F2227B00DA11D621F739FB00DCF +:10473000A11D621F839FA00D611D221F749F33273F +:10474000A00D611D231F849F600D211D822F762FD8 +:104750006A2F11249F5750408AF0E1F088234AF0D5 +:10476000EE0FFF1FBB1F661F771F881F9150504021 +:10477000A9F79E3F510570F014C0AACF5F3FECF33C +:10478000983EDCF3869577956795B795F795E7950D +:104790009F5FC1F7FE2B880F911D9695879597F91E +:1047A000089597F99F6780E870E060E008959FEFB3 +:1047B00080EC089500240A941616170618060906B8 +:1047C000089500240A941216130614060506089587 +:1047D000092E0394000C11F4882352F0BB0F40F40F +:1047E000BF2B11F460FF04C06F5F7F4F8F4F9F4F4F +:1047F000089597FB072E16F4009407D077FD09D093 +:104800000E94132407FC05D03EF4909581959F4F9C +:104810000895709561957F4F0895EE0FFF1F0590E5 +:10482000F491E02D0994AA1BBB1B51E107C0AA1FFC +:10483000BB1FA617B70710F0A61BB70B881F991F41 +:104840005A95A9F780959095BC01CD010895F999E5 +:10485000FECF92BD81BDF89A992780B50895A8E151 +:10486000B0E042E050E00C944F24262FF999FECF9F +:1048700092BD81BDF89A019700B4021639F01FBAB3 +:1048800020BD0FB6F894FA9AF99A0FBE08950196D2 +:10489000272F0E9436240C943524DC01CB01FC0127 +:1048A000F999FECF06C0F2BDE1BDF89A319600B489 +:0E48B0000D9241505040B8F70895F894FFCF94 +:1048BE0002203F09CD09AA09760942090101CB015F +:1048CE0028080A03140A3F4D363971042404EE03F6 +:1048DE00B503480361037A0393030102030405063B +:0448EE0007080900AE +:00000001FF diff --git a/keyboards/ergodox_ez/keymaps/dave/keymap.c b/keyboards/ergodox_ez/keymaps/dave/keymap.c new file mode 100644 index 0000000000..e9480af3e9 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/dave/keymap.c @@ -0,0 +1,199 @@ +#include "ergodox_ez.h" +#include "debug.h" +#include "action_layer.h" + +#define BASE 0 // default layer +#define PROG 1 // programming +#define NAVI 2 // navigation + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* Keymap 0: Basic layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | Esc | 1 | 2 | 3 | 4 | 5 | 6 | | 6 | 7 | 8 | 9 | 0 | - | BkSpce | + * |--------+------+------+------+------+------+------| |------+------+------+------+------+------+--------| + * | Tab | Q | W | E | R | T | Y | | G | Y | U | I | O | P | Enter | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | LCtrl | A | S | D | F | G |------| |------| H | J | K | L | ; | Enter | + * |--------+------+------+------+------+------| H | | B |------+------+------+------+------+--------| + * | LShift | Z | X | C | V | B | | | | N | M | , | . | / | RShift | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * |`/Ctrl| \ | | | LAlt | | RAlt | [ | ] | |'/Ctrl| + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | PrtS | PrtS | | CtAl | CtAl | + * ,------+------+------| |------+------+------. + * | | | L1 | | L1 | | | + * | Spce | ~L2 +------| |------+ ~L1 | Spce | + * | | | LGui | | RGui | | | + * `--------------------' `--------------------' + */ +// If it accepts an argument (i.e, is a function), it doesn't need KC_. +// Otherwise, it needs KC_* +[BASE] = KEYMAP( // layer 0 : default + // left hand + KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, + KC_LCTRL, KC_A, KC_S, KC_D, KC_F, KC_G, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_H, + CTL_T(KC_GRV),KC_NUBS,KC_NO, KC_NO, KC_LALT, + KC_PSCREEN, KC_PSCREEN, + TO(PROG, ON_PRESS), + KC_SPC, MO(NAVI), KC_LGUI, + // right hand + KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_BSPC, + KC_G, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_ENTER, + KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_ENTER, + KC_B, KC_N, KC_M, KC_COMM,KC_DOT, KC_SLSH, KC_RSFT, + KC_RALT,KC_LBRC,KC_RBRC,KC_NO, CTL_T(KC_QUOT), + MT(0x5, KC_NO), MT(0x5, KC_NO), + TO(PROG, ON_PRESS), + KC_RGUI, MO(PROG), KC_SPC + ), + +/* Keymap 1: Symbol Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | K/ | K* | K- | = | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | ! | @ | ( | ) | | | | | | | K7 | K8 | K9 | K+ | # | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | # | $ | { | } | ` |------| |------| | K4 | K5 | K6 | K+ | ' | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | % | ^ | [ | ] | ~ | | | | | K1 | K2 | K3 | K= | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | K0 | K0 | K. | K= | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | L2 | | L2 | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// PROGRAMMING +[PROG] = KEYMAP( + // left hand + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 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, + TO(NAVI, ON_PRESS), + KC_TRNS, KC_TRNS, KC_TRNS, + // right hand + KC_TRNS, KC_TRNS, KC_NO, KC_PSLS, KC_PAST, KC_PMNS, KC_EQUAL, + KC_TRNS, KC_TRNS, KC_P7, KC_P8, KC_P9, KC_PPLS, KC_NUHS, + KC_TRNS, KC_P4, KC_P5, KC_P6, KC_PPLS, KC_QUOT, + KC_TRNS, KC_TRNS, KC_P1, KC_P2, KC_P3, KC_PENT, KC_TRNS, + KC_P0, KC_P0, KC_PDOT, KC_PENT, KC_TRNS, + KC_TRNS, KC_TRNS, + TO(NAVI, ON_PRESS), + KC_TRNS, KC_TRNS, KC_TRNS +), + +/* Keymap 2: Navigation and system keys + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | F6 | | F7 | F8 | F9 | F10 | F11 | F12 | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | Home | Up | End | Ins | PgUp | | | | | | Ins | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | Left | Down | Rght | Del | PgDn |------| |------| | Back | Del | Fwrd | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | Lclk | MsUp | Rclk | | | | | | | Prev | Play | Next | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | MsLt | MsDn | MsRt | | |VolDn | Mute |VolUp | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | L0 | | L0 | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// NAVIGATION +[NAVI] = KEYMAP( + KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, + KC_TRNS, KC_HOME, KC_UP, KC_END, KC_INS, KC_PGUP, KC_TRNS, + KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_DELT, KC_PGDN, + KC_TRNS, KC_BTN1, KC_MS_U, KC_BTN2, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS, + KC_TRNS, KC_TRNS, + TO(BASE, ON_PRESS), + KC_TRNS, KC_TRNS, KC_TRNS, + // right hand + KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_INS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_WBAK, KC_DELT, KC_WFWD, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_MPRV, KC_MPLY, KC_MNXT, KC_TRNS, KC_TRNS, + KC_VOLD, KC_MUTE, KC_VOLU, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + TO(BASE, ON_PRESS), + KC_TRNS, KC_TRNS, KC_TRNS +), +}; + +const uint16_t PROGMEM fn_actions[] = { + //[1] = ACTION_LAYER_TAP_TOGGLE(PROG), // FN1 - Momentary Layer 1 (Symbols) + //[2] = ACTION_LAYER_TAP_TOGGLE(NAVI) // FN2 - Momentary Layer 2 (Navigation) +}; + +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) { + /* leds is a static array holding the current brightness of each of the + * three keyboard LEDs. It's 4 long simply to avoid the ugliness of +1s and + * -1s in the code below, and because wasting a byte really doesn't matter + * that much (no, it *doesn't*, stop whinging!). Note that because it's + * static it'll maintain state across invocations of this routine. + */ + static uint8_t leds[4]; + uint8_t led; + uint8_t layer = biton32(layer_state); + + ergodox_board_led_off(); + + /* Loop over each LED/layer */ + for (led = 1; led <= 3; ++led) { + /* If the current layer matches the current LED, increment its + * brightness by 1 up to a maximum of 255. If the current layer doesn't + * match, decrement its brightness by 1 down to a minimum of zero. + */ + leds[led] += (layer == led) ? + (leds[led] < 255 ? 1 : 0): + (leds[led] > 0 ? -1 : 0); + /* Set LED state according to the new brightness */ + if (leds[led]) { + ergodox_right_led_on(led); + ergodox_right_led_set(led, leds[led]); + } + else { + ergodox_right_led_off(led); + } + } + + +}; diff --git a/keyboards/ergodox_ez/keymaps/dave/readme.md b/keyboards/ergodox_ez/keymaps/dave/readme.md new file mode 100644 index 0000000000..aa0f9bd192 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/dave/readme.md @@ -0,0 +1,38 @@ +This keymap is my preferred layout (after a certain amount of experimentation). +The rationale behind the design is as follows: + +I grew up typing from a very early age and thus never learned the "correct" way +to touch type (essentially, I'm self-taught). As a, result my fingers don't +tend to stay on the "home keys" and occasionally my right hand wants to type +keys that are on the left of the keyboard, and vice versa. + +Hence, despite liking the idea of split keyboards in principle, I've never been +able to get on with them because the split simply doesn't work with my style of +typing. The Ergodox solves this neatly by virtue of having a few extra keys in +the "middle" of the keyboard which I can utilise for deliberate redundancy. +Thus in this keymap there are two "6" keys (one on the left, one on the right) +and likewise Y, H, G, and B are all duplicated to enable one-handed patterns +that I use frequently (e.g. "byobu" with the right hand, "yes" with the left, +etc.). + +I occasionally use the numeric pad for data entry, thus this is duplicated +under the natural home position of the right hand in layer 1 (activated by +holding one of the right thumb buttons), while the cursor keys are duplicated +under the classic WASD gaming layout of the left hand in layer 2 (activated by +holding one of the left thumb buttons). Various other useful keys also appear +in these layers (brackets and symbols for coding in layer 1, navigation and +F-keys in layer 2, etc.). + +Finally, modifier keys like Ctrl, Shift, and Alt, along with Backspace and +Enter are all in traditional locations in an effort to reuse existing muscle +memory as much as possible (keys like =, #, and ' are in layer 1). The layout +maps are in the comments of keymap_dave.c so I won't bother duplicating them +here. + +Oh, and the LEDs are rather pimped ... because I could! + +Anyway, although I'm sure this keymap won't be to many people's taste you might +find some interesting ideas in here for your own layouts. Do tweet me +(@waveform80) if you have any questions / suggestions / bugs. + +Dave. diff --git a/keyboards/ergodox_ez/keymaps/default/compiled.hex b/keyboards/ergodox_ez/keymaps/default/compiled.hex new file mode 100644 index 0000000000..0285acb6b9 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/default/compiled.hex @@ -0,0 +1,1153 @@ +:100000000C940E030C9452030C9452030C94520360 +:100010000C9452030C9452030C9452030C9452030C +:100020000C9452030C9452030C94740E0C94460FCF +:100030000C9452030C9452030C9452030C945203EC +:100040000C9452030C9416220C9452030C945203F9 +:100050000C9452030C94141D0C9452030C945203F0 +:100060000C9452030C9452030C9452030C945203BC +:100070000C9452030C9452030C9452030C945203AC +:100080000C9452030C9452030C9452030C9452039C +:100090000C9452030C9452030C9452030C9452038C +:1000A0000C9452030C9452030C945203AB0FCD0FDB +:1000B000B810CD0FB8100F103210B81087109A106A +:1000C00074137413A313A313DB13FD132515251544 +:1000D00008142515AF14AF1418152515251520156E +:1000E000BC14BC14BC14BC14BC14BC14BC14BC1490 +:1000F000BC14BC14BC14BC14BC14BC14BC14BC1480 +:10010000CE14DC14E314EA14F4146572676F646FA0 +:10011000785F657A2F64656661756C74204020761F +:10012000342E302D3232322D67623835643266001B +:100130000000F0A12E004C002A00E1003541000033 +:100140001E00140004001D6134004D001F001A0041 +:1001500016001B00E1042A0020000800070006002A +:1001600050002C0021001500090019004F004A0022 +:10017000220017000A0005000000656450000153CA +:100180000000006F0000E3004F0001530000006713 +:100190000000E20023001C000B0011000000296198 +:1001A000240018000D00100052004B0025000C0028 +:1001B0000E00360051002800260012000F00370004 +:1001C0002F002B00270013003342386130004E000F +:1001D0002D0031003468E500C1000000003001004E +:1001E00001000100010000003A001E02200222026C +:1001F000010001003B001F02210223020100010057 +:100200003C002F0226022F00010001003D003002B9 +:1002100027023000010001003E00310235003502A6 +:1002200000000100010001000000010000000100C9 +:100230000100010000000100000001003F00520029 +:1002400051002402000001004000240021001E0093 +:10025000010001004100250022001F0037000100BD +:100260004200260023002000270001004300250251 +:100270002E0231002E000100440045000100010063 +:100280000100000001000100010001000100000068 +:100290000100010001000100010001000100010056 +:1002A000F2000100010001000100F000F100010076 +:1002B000F400010001000100F3000100F50001005D +:1002C0000100010001000100000001000100010027 +:1002D0000000010000000100010001000000010019 +:1002E0000000010001000100010001000000010008 +:1002F0000100010001000100A9000100010001004E +:100300000100AC00AA00B600010001000100AB0032 +:10031000A80001000100010001000100010001002E +:1003200001000100AE00010001000000000000001B +:10033000000000002A2B2800000000000000000040 +:100340000000000000000029000000002C1E3420E6 +:10035000212224342627252E362D3738271E1F200C +:100360002122232425263333362E37381F04050651 +:100370000708090A0B0C0D0E0F1011121314151695 +:100380001718191A1B1C1D2F3130232D3504050693 +:100390000708090A0B0C0D0E0F1011121314151675 +:1003A0001718191A1B1C1D2F3130354C0000000086 +:1003B000000000000000000000000000000000003D +:1003C000000000000000000000000000000101012A +:1003D0000101010001010101000000000000000016 +:1003E0000000000000000100010001010101010105 +:1003F00001010101010101010101010101010101ED +:1004000001010101010101000000010100000000E3 +:1004100000000000000000000000000000000000DC +:10042000000000000000000101010100160345006A +:10043000720067006F0044006F00780020004500E4 +:100440005A00000016034500720067006F00440068 +:100450006F007800200045005A00000004030904E2 +:1004600009026D00040100A0FA0904000001030163 +:100470000100092111010001224000070581030844 +:10048000000A090401000103010200092111010011 +:1004900001224D000705820308000A090402000139 +:1004A0000300000009211101000122360007058325 +:1004B0000308000A090403000103000000092111D8 +:1004C0000100012239000705840310000112011008 +:1004D0000100000008EDFE07130100010200010504 +:1004E000010906A101050719E029E7150025019575 +:1004F0000875018102050819012905950575019105 +:10050000029501750391010507190029771500254A +:1005100001957875018102C005010980A10185025C +:1005200016010026B7001A01002AB70075109501C0 +:100530008100C0050C0901A1018503160100269C5C +:10054000021A01002A9C02751095018100C0050164 +:100550000902A1010901A1000509190129051500D8 +:10056000250195057501810295017503810105013C +:10057000093009311581257F9502750881060938F2 +:100580001581257F950175088106050C0A3802152D +:1005900081257F950175088106C0C005010906A166 +:1005A00001050719E029E715002501950875018166 +:1005B0000295017508810105081901290595057540 +:1005C0000191029501750391010507190029FF1595 +:1005D0000026FF00950675088100C000000000009D +:1005E000000000000000010204060A0F17202C3A48 +:1005F0004A5D71879DB3C7DAE9F5FCFFFCF5E9DADE +:10060000C7B39D87715D4A3A2C20170F0A06040272 +:1006100001000000000000000000000011241FBEC7 +:10062000CFEFDAE0DEBFCDBF04B603FE24C0809179 +:10063000FD019091FE01A091FF01B0910002873071 +:10064000904BA740B04BB9F41092FD011092FE01FF +:100650001092FF011092000214BE84B7877F84BFFE +:1006600088E10FB6F89480936000109260000FBE8E +:10067000E0E0FFE3099511E0A0E0B1E0EAEBF7E488 +:1006800002C005900D92A433B107D9F711E0A4E39D +:10069000B1E001C01D92AD3FB107E1F70E94BE0B72 +:1006A0000C94DB230C9400001092B9008AE0809334 +:1006B000B800089594EA9093BC009091BC0097FF15 +:1006C000FCCF9091B900987F983021F0903111F0D3 +:1006D00081E008958093BB0084E88093BC00809102 +:1006E000BC0087FFFCCF8091B900887F883111F072 +:1006F000803471F780E0089584E98093BC00809194 +:10070000BC0084FDFCCF08958093BB0084E88093F7 +:10071000BC008091BC0087FFFCCF9091B900987F0E +:1007200081E0983209F480E0089584E88093BC0069 +:100730008091BC0087FFFCCF8091BB00089580B3FF +:100740008C7080BB81B3836F81BB08958091010160 +:10075000811115C080E40E945A0380930101811128 +:100760000CC082E10E94840380930101811105C0C5 +:100770008FEF0E948403809301010E947C0384B167 +:10078000807F84B985B1807F85B98AB1837F8AB93A +:100790008BB1837F8BB93E98469808950E946D0572 +:1007A000809301010E94A6030E949F03E3E4F1E00D +:1007B000A5E3B1E011921D9281E0E135F807D1F790 +:1007C0000C9457050E946D05809301010E94A603B9 +:1007D0000E949F03E3E4F1E0A5E3B1E011921D92D2 +:1007E00081E0E135F807D1F70895BF92CF92DF920B +:1007F000EF92FF920F931F93CF93DF9380910101AC +:10080000882379F0809134018F5F809334018111C6 +:1008100008C00E946D0580930101811102C00E94F1 +:10082000FF0405E311E0C0E0D0E0DD24D39482E0D2 +:10083000C82EEE24E394F12CC73000F5809101011D +:10084000811162C080E40E945A03809301018111EA +:1008500012C082E10E9484038093010181110BC0C8 +:10086000C7010C2E01C0880F0A94EAF780950E94F8 +:100870008403809301010E947C0346C0CA30A1F02A +:1008800028F4C83059F0C93061F005C0CC3089F087 +:1008900070F0CD3089F0209A289810C0219A2998BC +:1008A0000DC0229A2A980AC0239A2B9807C0529A00 +:1008B00001C0539A5B9802C03E9A4698E0EAEA95D6 +:1008C000F1F78FB179995AC092E081708D25892B0B +:1008D0007C9B02C090E001C094E0892B7D9B02C00C +:1008E00090E001C098E0892B7E9B02C090E001C09F +:1008F00090E1892B9FB19095991F9927991F929507 +:10090000990F907E892B0FC08091010181114BC0FE +:1009100080E40E945A0380930101882389F1B12C5D +:100920000E947C038B2DF8019081981719F0808329 +:10093000C09200010E94A60321960F5F1F4FCE3088 +:10094000D10509F079CF80910001882371F18150A0 +:1009500080930001882339F08FE99FE00197F1F738 +:1009600000C0000022C0A3E4B1E0E5E3F1E0819122 +:100970008D9391E0E334F907D1F717C090E0A5CF4C +:1009800083E10E948403809301018111C8CF81E437 +:100990000E945A03809301018111C1CF0E949503E7 +:1009A000B82EB094BDCF80E0BECF0E94FD0481E0A0 +:1009B000DF91CF911F910F91FF90EF90DF90CF903B +:1009C000BF900895E82FF0E0ED5BFE4F8081089521 +:1009D00008951F93CF93DF93C3E4D1E010E0899192 +:1009E00090E00E94391C180F81E0C135D807B9F793 +:1009F000812FDF91CF911F9108950C94CA055698CD +:100A00005E9825982D9826982E9827982F988FEFE6 +:100A100090E0909389008093880090938B0080935E +:100A20008A0090938D0080938C00259A2D9A2FEF49 +:100A300080E792E0215080409040E1F700C0000044 +:100A4000269A2E9A2FEF80E792E021508040904026 +:100A5000E1F700C00000279A2F9A2FEF80E792E07D +:100A6000215080409040E1F700C0000025982D986B +:100A70002FEF80E792E0215080409040E1F700C0E6 +:100A8000000026982E982FEF80E792E021508040BA +:100A90009040E1F700C0000027982F9856985E9884 +:100AA00025982D9826982E9827982F98089589EAAA +:100AB0008093800089E08093810024982C983F984F +:100AC0008AB18F748AB96E98479A8BB1806B8BB953 +:100AD000769A0E94FF040C94C90580E2809301017C +:100AE0008091510181110EC00E94540381E08093D6 +:100AF00051012FEF83ED90E3215080409040E1F7CA +:100B000000C0000080E40E945A038093010181111B +:100B10002EC00E94840380930101811128C00E948D +:100B2000840380930101811122C08FE30E9484031A +:100B30008093010181111BC00E947C0380E40E940C +:100B40005A0380930101811112C08CE00E9484033A +:100B50008093010181110BC00E94840380930101E5 +:100B6000811105C08FE30E948403809301010E94DC +:100B70007C03809101010895611108C0FC0182810C +:100B8000882321F08AE091E00E94C30780E090E092 +:100B9000089508956091BE017091BF018091C001D8 +:100BA0009091C1010E94451C56985E9825982D98F9 +:100BB00026982E9827982F98813019F0823021F0AE +:100BC0000895259A2D9A0895269A2E9A089581E0DF +:100BD000089581E008950C94E9050895282F88234D +:100BE00039F090E02A3010F44D9608950697089554 +:100BF00087E290E00895BF92CF92DF92EF92FF924A +:100C00000F931F93CF93DF938C01FC01C081D1819F +:100C1000CE010E94C01ABE010E946D09EC01B8010C +:100C20000E94EB05882309F4A3C1F801828188237F +:100C3000C9F180915E0181111EC0C431F0E7DF0768 +:100C400089F50E94ED0581E080935E010E94DF1C22 +:100C500090935D0180935C011092550110925701B1 +:100C600010925601109259011092580110925B0196 +:100C700010925A017DC180915C0190915D010E94AA +:100C8000EB1C883C910570F480915501E82FF0E051 +:100C9000EE0FFF1FEA5AFE4FD183C0838F5F809310 +:100CA000550166C1C13020E8D20708F451C0F801EF +:100CB0008281882309F44CC06E01E894D7F88091B2 +:100CC0005401813079F050F08230C1F482EE0E94FC +:100CD000121287E50E94121287E50EC082EE0E9472 +:100CE00012120CC080EE0E94121281EE0E941212AB +:100CF00088E10E94121288E10E94DA128CE0E82E4C +:100D0000F12CC6010E2C02C0969587950A94E2F745 +:100D10008F700E94EE05B82E0E9412128B2D0E9439 +:100D2000DA12F4E0EF1AF1082CEFE2162FEFF206D8 +:100D300041F780915401813029F010F0823041F464 +:100D400082EE04C080EE0E94DA1281EE0E94DA1276 +:100D5000C43180E7D80760F4C23090E7D90780F546 +:100D6000C115E0E7DE0771F0C130D047F1F0EFC008 +:100D7000C33320E7D20709F4BEC0C433D04709F417 +:100D8000CEC0E5C0F8018281882309F4E5C00E9445 +:100D90009315FFEF24E38CE0F15020408040E1F711 +:100DA00000C000000E94391DE3C0F8018281882341 +:100DB00009F4D2C08091DB0181608093DB01D8C04F +:100DC000F8018281882309F4C7C00E94941D811113 +:100DD00002C00E947A1D0E94A71D90E09093EF012F +:100DE0008093EE01C230F0E7DF0721F48091EE013D +:100DF00081607AC0C33020E7D20721F48091EE01F0 +:100E0000826072C0C43080E7D80721F48091EE017F +:100E100084606AC0C53090E7D90719F48091EE016B +:100E200027C0C630E0E7DE0721F48091EE01806143 +:100E30005BC0C730F0E7DF0721F48091EE018062EC +:100E400053C0C83020E7D20721F48091EE018064BE +:100E50004BC0C93080E7D80721F48091EE0180684B +:100E600043C0CA3090E7D90729F48091EE0184602D +:100E700088603AC0CB30E0E7DE0721F48091EE01D4 +:100E80008E7F32C0CC30F0E7DF0721F48091EE0195 +:100E90008D7F2AC0CD3020E7D20721F48091EE016A +:100EA0008B7F22C0CE3080E7D80719F48091EE0105 +:100EB0001AC08091EE01CF3090E7D90711F48F7EF0 +:100EC00013C0C031E0E7DE0711F48F7D0DC0C131E2 +:100ED000F0E7DF0711F48F7B07C0C231D04711F470 +:100EE0008F7702C08B7F877F8093EE018091EE0128 +:100EF0000E94AB1D3DC0F8018281882321F0109231 +:100F0000520182E013C080915201811106C086E235 +:100F10000E94121286E20E94DA1282E015C0F801E5 +:100F20008281882331F01092530182E10E942913BB +:100F30001FC080915301811106C087E20E941212E6 +:100F400087E20E94DA1282E10E94301311C081E030 +:100F50008093520180935301C801DF91CF911F917B +:100F60000F91FF90EF90DF90CF90BF900C94E7052A +:100F700080E0DF91CF911F910F91FF90EF90DF9074 +:100F8000CF90BF9008951F93CF93DF93EC01FE01A4 +:100F900024912223F1F030E0F901E45DFC4F14913B +:100FA000F901E455FC4F2491222359F081EE0E946F +:100FB0001212812F0E941212812F0E94DA1281EEEA +:100FC00004C0812F0E941212812F0E94DA122196F2 +:100FD000DECFDF91CF911F91089526E0729FF0013F +:100FE000112444E5849FE00DF11D1124E60FF11D4D +:100FF000EE0FFF1FEC5CFE4F859194910E947F09DC +:10100000811520E49207B0F5811540E3940708F0BC +:10101000DDC0803E9105D8F4803C910508F06BC09E +:10102000883A910578F4853A910508F06AC08130D4 +:10103000910509F450C108F40DC18430910508F000 +:101040004AC108C18B3B910508F466C003C18F3FBC +:10105000910509F048F4803F910508F0ACC0883E46 +:10106000910508F438C1F6C0811520E2920708F016 +:10107000A4C00895811543E5940790F4811522E5F5 +:10108000920708F0C7C0811541E5940708F0BDC07C +:10109000811520E5920708F09CC09F70906A089522 +:1010A000811545E59407D0F4811524E5920708F0F1 +:1010B000C6C0282F2695269540E2249F9001112432 +:1010C000AC014370552781E090E002C0880F991F62 +:1010D0004A95E2F7822B932B9A680895811546E58D +:1010E000940708F4B1C09C0130562115304108F036 +:1010F000B1C09F70ADC0FC01EE0FFF1FE055F04086 +:1011000062C0853A910509F4A8C0863A910509F4B0 +:10111000A7C083E890E40895883A910509F4A3C034 +:10112000893A910509F4A2C08A3A910509F4A1C04F +:101130008B3A910509F4A0C08C3A910509F49FC03F +:101140008D3A910509F49EC0803B910509F49DC03C +:101150008E3A910509F49CC08F3A910509F49BC021 +:10116000813B910509F49AC0823B910509F499C02D +:10117000833B910509F498C0843B910509F497C01D +:10118000853B910509F496C0863B910509F495C00D +:10119000873B910509F494C0883B910509F493C0FD +:1011A000893B910509F492C08A3B910509F091C0F1 +:1011B0008AE296E40895906508959F70880F991FBC +:1011C000805D9E4FFC018591949108959927906CC4 +:1011D0000895482F437021E030E002C0220F331FF2 +:1011E0004A95E2F73C68AC0164E0569547956A95EC +:1011F000E1F74370342B8F708695869540E2849F8B +:10120000C0011124822B932B0895982F8827816F7A +:10121000906A0895282F2695269540E2249F9001F4 +:101220001124AC014370552781E090E002C0880F83 +:10123000991F4A95E2F7822B932B9C680895982F6B +:101240008827846F906A08958F719927982F88272F +:101250009062089580E090E0089581E890E4089518 +:1012600082E890E4089582EE94E4089589EE94E48F +:1012700008958AEE94E4089585EB94E4089586EB4E +:1012800094E4089587EB94E408958CEC94E4089535 +:101290008DEC94E4089583E895E408958AE895E454 +:1012A000089582E995E4089584E995E4089581E23A +:1012B00096E4089583E296E4089584E296E408951E +:1012C00085E296E4089586E296E4089587E296E43E +:1012D000089580E094E40895089596E0799FF001E0 +:1012E000112494E5899FE00DF11D1124E60FF11DF5 +:1012F000EE0FFF1FEC5CFE4F8591949108958238AC +:10130000910549F1B0F48133910509F459C048F4CD +:101310008932910509F44FC08A32910509F455C00C +:1013200008958533910509F441C08933910599F0F9 +:101330000895833E910531F138F4803E910591F096 +:10134000823E9105A9F00895863E910501F1873E00 +:10135000910539F108952091EE0120FD3BC021FD5A +:1013600039C008958091EE0180FF34C089E341C007 +:101370008091EE0182FF32C08091EE0184FF2CC08B +:1013800080E037C08091EE0182FD28C0F5CF8091CA +:10139000EE0183FF25C08091EE0184FDF1CF87EE41 +:1013A00028C08091EE0183FD1BC0F5CF8091EE0136 +:1013B00085FF18C019C08091EE0185FF15C012C0CD +:1013C0008091EE0186FF12C013C08091EE0186FF6E +:1013D0000FC00CC080EE0DC083EE0BC082EE09C0C2 +:1013E00086EE07C085E305C089E203C081E301C042 +:1013F0008AE290E0089508950C94FB0980916F01B2 +:101400000895CF93DF9300D01F92CDB7DEB7209120 +:10141000F401243019F523E029839B838A832093E8 +:10142000E9008FEF9091E800815095FD06C095EDA1 +:101430009A95F1F700008111F5CF8091E80085FFC2 +:101440000DC040E050E063E070E0CE0101960E94E4 +:10145000670C8091E8008E778093E8000F900F90E2 +:101460000F90DF91CF910895CF93DF9300D01F921B +:10147000CDB7DEB72091F401243021F522E0298395 +:101480009B838A8383E08093E9008FEF9091E8004B +:10149000815095FD06C095ED9A95F1F700008111F8 +:1014A000F5CF8091E80085FF0DC040E050E063E09B +:1014B00070E0CE0101960E94670C8091E8008E7763 +:1014C0008093E8000F900F900F90DF91CF910895D7 +:1014D0002091F4012430F1F422E02093E9002FEF71 +:1014E0003091E800215035FD06C035ED3A95F1F711 +:1014F00000002111F5CF2091E80025FF0BC040E04E +:1015000050E065E070E00E94670C8091E8008E7703 +:101510008093E8000895CF93DF93EC018091F4016C +:10152000843009F046C090910C019923D9F0909134 +:101530000D019923B9F08093E9008FEF9091E800B5 +:10154000815095FD06C095E19A95F1F70000811153 +:10155000F5CF8091E80085FF2CC040E050E060E1CD +:1015600070E017C081E08093E9008FEF9091E80070 +:10157000815095FD06C095ED9A95F1F70000811117 +:10158000F5CF8091E80085FF14C040E050E068E0AE +:1015900070E0CE010E94670C8091E8008E77809306 +:1015A000E80080E1FE01AFE5B1E001900D928A957F +:1015B000E1F7DF91CF9108958091F301811109C086 +:1015C0000E94F90D0E94560E8091E2008460809383 +:1015D000E20008951092F301089508950C940322F7 +:1015E0000E94D01C0E9409220E94F3100C94FC0956 +:1015F00042E061EC81E00E94730D42E061EC82E028 +:101600000E94730D42E061EC83E00E94730D42E1A1 +:1016100061EC84E00C94730D8091F601833009F441 +:1016200055C030F4813071F0823009F48EC00895D5 +:101630008A3009F47AC08B3009F460C0893009F02F +:101640009CC020C08091F501813A09F096C080913C +:10165000E800877F8093E8008091F9019091FA017A +:10166000892B21F060E080E090E003C060E18FE52D +:1016700091E070E00E94B00C8091E8008B7780933D +:10168000E80008958091F501813209F076C08091DB +:10169000F9019091FA01009719F0039709F06DC0D4 +:1016A0008091E800877F8093E8008091E80082FDC8 +:1016B00005C08091F4018111F8CF5FC08091F100E5 +:1016C00080936F018091E8008B7753C08091F50182 +:1016D000813A09F052C08091F9019091FA01892B69 +:1016E00009F04BC08091E800877F8093E8008091EB +:1016F000E80080FFFCCF80910C0136C08091F5019D +:101700008132D9F58091F9019091FA01892BA9F5DF +:101710008091E800877F8093E8000E94A80D809167 +:10172000F70180930C010C9493158091F50181329F +:1017300021F58091E800877F8093E8000E94A80D42 +:101740008091F8018093700108958091F501813AAC +:10175000A1F48091E800877F8093E8008091E80001 +:1017600080FFFCCF809170018093F1008091E800B0 +:101770008E778093E8000C94A80D089584B7877F36 +:1017800084BF88E10FB6F8948093600010926000E7 +:101790000FBE80E880936100109261000E944211A8 +:1017A0000E94F90D0E94560E8091E20084608093A1 +:1017B000E20078940E94D1100E94441182E091E0EE +:1017C0000E94EE100E94F1218091F401853069F4AD +:1017D0000E94981C8091F2018823B1F30E94C21CE0 +:1017E000882391F30E94510CEFCF0E944A11ECCF55 +:1017F000292F332723303105A9F06CF4213031052E +:1018000009F442C02230310509F043C08DE690E072 +:1018100020E634E042C021323105C9F022323105E0 +:1018200019F137C099278130910541F08230910537 +:1018300041F0892B71F5ECE5F4E005C0E4E4F4E057 +:1018400002C0ECE2F4E0849190E09F0126C0643095 +:1018500000F5E62FF0E0EE0FFF1FEE5DFE4F20815A +:10186000318189E090E019C0643098F4E62FF0E00F +:10187000DF01AA0FBB1FA65EBE4F2D913C91EA5E11 +:10188000FE4F808190E009C082E190E02DEC34E0D1 +:1018900004C080E090E020E030E0FA013183208352 +:1018A000089580E189BD82E189BD09B400FEFDCFC4 +:1018B0008091D8008F7D8093D8008091E000826075 +:1018C0008093E0008091E00081FDFCCF0895CF92ED +:1018D000DF92EF92FF920F931F93CF93DF937C01E0 +:1018E0008B01EA010E94C90D811131C0209731F0AE +:1018F00088819981081B190BE80EF91EC12CD12C87 +:101900000115110519F18091E80085FD14C0809141 +:10191000E8008E778093E800209741F088819981D4 +:101920008C0D9D1D9983888385E011C00E94C90D8F +:10193000882331F30CC0F70181917F018093F1007E +:1019400001501109FFEFCF1ADF0ADACF80E0DF91F3 +:10195000CF911F910F91FF90EF90DF90CF9008955E +:101960002091FB013091FC012617370748F06115E3 +:10197000710539F42091E8002E772093E80001C02A +:10198000B901FC0120E061157105B9F18091F40104 +:10199000882309F440C0853009F43FC08091E800F5 +:1019A00083FD3DC08091E80082FF06C08091E80081 +:1019B00082FF26C080E008958091E80080FFE3CF99 +:1019C0002091F3008091F20090E0922B6115710557 +:1019D00051F08830910538F421912093F100615045 +:1019E00071090196F3CF21E0089709F020E080917A +:1019F000E8008E778093E800C6CF2111C7CFD6CFFD +:101A00008091F401882339F0853039F08091E80025 +:101A100083FFCCCF04C082E0089583E0089581E085 +:101A200008952091FB013091FC012617370748F0FB +:101A30006115710539F42091E8002E772093E800B4 +:101A400001C0B901FC0120E061157105C1F180916F +:101A5000F401882309F441C0853009F440C0809125 +:101A6000E80083FD3EC08091E80082FF06C08091BF +:101A7000E80082FF27C080E008958091E80080FFA1 +:101A8000E3CF2091F3008091F20090E0922B61155A +:101A9000710559F08830910540F424912093F100AC +:101AA0003196615071090196F2CF21E0089709F053 +:101AB00020E08091E8008E778093E800C5CF211167 +:101AC000C6CFD5CF8091F401882339F0853039F025 +:101AD0008091E80083FFCBCF04C082E0089583E0CB +:101AE000089581E00895982F973058F59093E90074 +:101AF000981739F07091EC002091ED005091F000B2 +:101B000003C0242F762F50E021FF19C03091EB0045 +:101B10003E7F3093EB003091ED003D7F3093ED0040 +:101B20003091EB0031603093EB007093EC00209328 +:101B3000ED005093F0002091EE0027FF07C09F5F5B +:101B4000D3CF8F708093E90081E0089580E00895FD +:101B50008091F50187FD05C08091E80080FF0EC0EF +:101B600012C08091E80082FD05C08091F4018111CE +:101B7000F8CF08958091E8008B7708C08091F40138 +:101B80008111EACF08958091E8008E778093E80074 +:101B900008958091E4009091E50045E62091EC00E5 +:101BA00020FF21C02091E80020FD21C02091F401F8 +:101BB000222389F0253089F02091EB0025FD0FC00C +:101BC0002091E4003091E5002817390739F341509E +:101BD00041F0C901E3CF82E0089583E0089581E0F8 +:101BE000089584E008952091E80022FFDFCF80E08F +:101BF00008950E94670E0E946F0EE0EEF0E0808173 +:101C000081608083E8EDF0E080818F77808319BC6C +:101C1000A7EDB0E08C918E7F8C9380818F7E808346 +:101C20001092F30108950F931F93CF93DF930E94B7 +:101C3000670E0E946F0EC8EDD0E088818F77888391 +:101C400088818068888388818F7D888319BC109201 +:101C5000F4011092F0011092F2011092F10100EEE5 +:101C600010E0F80180818B7F808388818160888388 +:101C700042E060E080E00E94730DE1EEF0E08081E0 +:101C80008E7F8083E2EEF0E08081816080838081BE +:101C900088608083F80180818E7F80838881806165 +:101CA0008883DF91CF911F910F910895E8EDF0E0C7 +:101CB00080818F7E8083E7EDF0E08081816080838A +:101CC00084E082BF81E08093F3010C94130EE8ED71 +:101CD000F0E080818E7F80831092E2000895109260 +:101CE000DA001092E10008951F920F920FB60F9242 +:101CF00011242F933F934F935F936F937F938F9311 +:101D00009F93AF93BF93EF93FF938091E10082FF86 +:101D10000BC08091E20082FF07C08091E1008B7FC1 +:101D20008093E1000E94D0108091DA0080FF1FC0F4 +:101D30008091D80080FF1BC08091DA008E7F809355 +:101D4000DA008091D90080FF0DC080E189BD82E179 +:101D500089BD09B400FEFDCF81E08093F4010E94AB +:101D6000DC0A05C019BC1092F4010E94EA0A8091B5 +:101D7000E10080FF19C08091E20080FF15C08091D2 +:101D8000E2008E7F8093E2008091E2008061809388 +:101D9000E2008091D80080628093D80019BC85E071 +:101DA0008093F4010E94EE0A8091E10084FF30C02C +:101DB0008091E20084FF2CC080E189BD82E189BD71 +:101DC00009B400FEFDCF8091D8008F7D8093D800AC +:101DD0008091E1008F7E8093E1008091E2008F7E10 +:101DE0008093E2008091E20081608093E200809124 +:101DF000F001882311F084E007C08091E30087FFA1 +:101E000002C083E001C081E08093F4010E94F00AE7 +:101E10008091E10083FF29C08091E20083FF25C00B +:101E20008091E100877F8093E10082E08093F4015C +:101E30001092F0018091E1008E7F8093E10080910B +:101E4000E2008E7F8093E2008091E20080618093C7 +:101E5000E20042E060E080E00E94730D8091F000BB +:101E600088608093F0000E94ED0AFF91EF91BF918E +:101E7000AF919F918F917F916F915F914F913F9122 +:101E80002F910F900FBE0F901F9018951F920F92D9 +:101E90000FB60F9211242F933F934F935F936F933D +:101EA0007F938F939F93AF93BF93CF93EF93FF93C2 +:101EB000C091E900CF708091EC001092E900809110 +:101EC000F000877F8093F00078940E94820F109238 +:101ED000E9008091F00088608093F000C093E900F1 +:101EE000FF91EF91CF91BF91AF919F918F917F9192 +:101EF0006F915F914F913F912F910F900FBE0F9077 +:101F00001F9018951F93CF93DF93CDB7DEB7AA9795 +:101F10000FB6F894DEBF0FBECDBFE5EFF1E08091C4 +:101F2000F100819321E0ED3FF207C9F70E940C0B0D +:101F30008091E80083FF1CC12091F5013091F601EA +:101F4000832F90E08A30910508F012C1FC01EA5A13 +:101F5000FF4F0C948B23203881F0223809F008C100 +:101F60008091F9018F708093E9008091EB0085FBEF +:101F7000882780F91092E90006C08091F1019091C4 +:101F8000F201911182609091E800977F9093E800B0 +:101F90008093F1001092F100C5C0822F8D7F09F06F +:101FA000E7C0222319F0223061F0E2C08091F701EE +:101FB000813009F0DDC0333009F080E08093F20118 +:101FC00028C08091F701811124C02091F9012F7060 +:101FD00009F4CEC02093E9008091EB0080FF19C086 +:101FE0008091EB00333011F4806211C080618093E6 +:101FF000EB0081E090E0022E01C0880F0A94EAF71E +:102000008093EA001092EA008091EB008860809350 +:10201000EB001092E9008091E800877F86C02111D3 +:10202000A7C01091F7011F778091E3008078812B82 +:102030008093E3008091E800877F8093E8000E940E +:10204000A80D8091E80080FFFCCF8091E3008068BC +:102050008093E300112311F083E001C082E08093BC +:10206000F40186C02058223008F082C08091F70128 +:102070009091F8018C3D23E0920779F583E08A8303 +:102080008AE289834FB7F894DE01139620E03EE0A0 +:1020900051E2E32FF0E050935700E49120FF03C09A +:1020A000E295EF703F5FEF708E2F90E0EA3010F016 +:1020B000C79601C0C0968D939D932F5F243149F739 +:1020C0004FBF8091E800877F8093E8006AE270E06C +:1020D000CE0101960E94B00C14C0AE014F5F5F4F5D +:1020E0006091F9010E94F80B009709F441C020911A +:1020F000E800277F2093E800BC0189819A810E9433 +:10210000110D8091E8008B778093E80031C0203872 +:1021100079F58091E800877F8093E8008091F00155 +:102120008093F1008091E8008E778093E8000E9410 +:10213000A80D1EC021111CC09091F7019230C0F46F +:102140008091E800877F8093E8009093F0010E94DF +:10215000A80D8091F001811104C08091E30087FFF8 +:1021600002C084E001C081E08093F4010E94F80A7B +:102170008091E80083FF0AC08091E800877F809308 +:10218000E8008091EB0080628093EB00AA960FB686 +:10219000F894DEBF0FBECDBFDF91CF911F910895A0 +:1021A0000895CF938091F4018823B1F08091E900E4 +:1021B0008F709091EC0090FF02C090E801C090E019 +:1021C000C92FC82B1092E9008091E80083FD0E947E +:1021D000820FCF70C093E900CF910895909376015C +:1021E000809375010895E0917501F0917601309723 +:1021F00021F00190F081E02D099480E00895E091B4 +:102200007501F0917601309721F00280F381E02D85 +:1022100009940895E0917501F0917601309721F0CD +:102220000480F581E02D0994089520917301309187 +:1022300074018217930771F0909374018093730176 +:10224000E0917501F0917601309721F00680F781D9 +:10225000E02D099408952091710130917201821747 +:10226000930771F09093720180937101E091750171 +:10227000F0917601309721F00084F185E02D0994EA +:10228000089508950C9441110E94D61C0E94CE031B +:102290000C945C1D9F92AF92BF92CF92DF92EF920F +:1022A000FF920F931F93CF93DF9300D000D000D005 +:1022B000CDB7DEB70E94F50386E8E82E81E0F82E60 +:1022C0000DE010E0CC24C394D12C902E802F0E94DE +:1022D000E204F701B2907F01B826A1F40150110980 +:1022E000A0F78FEF89838A831B820E94DF1C8160A5 +:1022F000782F9D838C8349815A816B818D810E94C7 +:10230000E41131C09091DB0191FF04C08E830E94E3 +:10231000E8048E8125E030E0A601022E01C0440FC2 +:102320000A94EAF7A42E4B21D1F029839A828A21BC +:1023300091E009F490E09B830E94DF1C8160782F7C +:102340009D838C8349815A816B818D810E94E41128 +:10235000F801E858FE4F80818A25808304C021500F +:102360003109D0F6BBCF0E94291F109177010E943E +:10237000F3101817B9F00E94F31080937701269696 +:102380000FB6F894DEBF0FBECDBFDF91CF911F9186 +:102390000F91FF90EF90DF90CF90BF90AF909F9004 +:1023A0000C94FC0926960FB6F894DEBF0FBECDBF85 +:1023B000DF91CF911F910F91FF90EF90DF90CF9021 +:1023C000BF90AF909F900895CF93DF93CDB7DEB7C6 +:1023D0002B970FB6F894DEBF0FBECDBF4F83588743 +:1023E00069877A878B87DE01119686E0FD0111925D +:1023F0008A95E9F785E0FE01379601900D928A955E +:10240000E1F749815A816B817C818D819E810E9497 +:1024100063182B960FB6F894DEBF0FBECDBFDF91C9 +:10242000CF910895CF93C82F882309F4C1C0823873 +:1024300059F40E94F31081FDBBC089E30E94401B48 +:102440000E940A1C89E30CC0833879F40E94F310BF +:1024500080FDAEC083E50E94401B0E940A1C83E5FC +:102460000E94801BCF910C940A1C843859F40E945E +:10247000F31082FD9DC087E40E94401B0E940A1C4D +:1024800087E4EECF8CEF8C0F813A48F48C2F0E94BA +:10249000592181118DC08C2F0E94401BE3CF80E217 +:1024A0008C0F883048F4C77081E001C0880FCA954E +:1024B000EAF70E94C11BD6CF8BE58C0F833078F4EE +:1024C000C53A29F0C63A31F482E890E005C081E8C7 +:1024D00090E002C083E890E0CF910C94151188E55C +:1024E0008C0F833108F064C0C83A39F1C93A41F120 +:1024F000CA3A49F1CB3A51F1CC3A59F1CD3A61F1AE +:10250000C03B69F1CE3A71F1CF3A79F1C13B81F12B +:10251000C23B89F1C33B91F1C43B99F1C53BA1F1A9 +:10252000C63BA9F1C73BB1F1C83BB9F1C93BC1F109 +:10253000CA3BC9F58AE292E038C082EE90E035C02D +:1025400089EE90E032C08AEE90E02FC085EB90E0FB +:102550002CC086EB90E029C087EB90E026C08CEC85 +:1025600090E023C08DEC90E020C083E891E01DC096 +:102570008AE891E01AC082E991E017C084E991E00D +:1025800014C081E292E011C083E292E00EC084E2C6 +:1025900092E00BC085E292E008C086E292E005C0BE +:1025A00087E292E002C080E090E0CF910C942B1182 +:1025B000CF910895882309F44BC0823859F40E94C2 +:1025C000F31081FF45C089E30E94401B0E940A1C52 +:1025D00089E30CC0833871F40E94F31080FF38C087 +:1025E00083E50E94401B0E940A1C83E50E94801B19 +:1025F0000C940A1C843859F40E94F31082FF28C0FE +:1026000087E40E94401B0E940A1C87E4EFCF9CEFE6 +:10261000980F913A58F390E2980F983050F48770E1 +:1026200091E001C0990F8A95EAF7892F0E94C71B94 +:10263000DFCF9BE5980F933020F480E090E00C947E +:102640001511885A833120F480E090E00C942B110E +:102650000895882321F00E94C11B0C940A1C089540 +:10266000882321F00E94C71B0C940A1C08958F92A6 +:102670009F92AF92BF92CF92DF92EF92FF920F9311 +:102680001F93CF93DF931F92CDB7DEB74C01A62ED9 +:10269000472FFC01E580E2948FE0E822F280FF20E2 +:1026A00021F079830E94DE1B498149830E94391BF6 +:1026B0004981882381F0FF2071F080E28A0D883003 +:1026C00050F082E00E94221B0E94391BBB24B3946D +:1026D000B826498101C0B12CE42FE295EF70F0E0FB +:1026E000E05AFF4F0C948B23842F807F142F1F7090 +:1026F000882311F01295107FFF2089F0112309F42F +:102700008DC180E28A0D883020F4812F0E94C11B88 +:1027100003C0812F0E94D11B0E940A1C7FC18A2DF9 +:102720000E94DA12112309F490C180E28A0D8830E8 +:1027300020F4812F0E94C71B03C0812F0E94D71B4A +:102740000E940A1C82C1242F207F842F8F70203288 +:1027500011F08295807FAA2021F0F1E0AF16B9F048 +:1027600020C0FF2049F0EE2009F40FC191E0E912EA +:102770000CC10E94F11B69C1EE2021F0E1E0EE16D0 +:1027800009F463C189830E94F41B898104C1FF207D +:1027900029F0F1E0FE1508F458C1F7C0E11055C169 +:1027A000FAC0FF2021F0EE2009F4EFC037C1EE207F +:1027B00009F4F1C039C1242F26952695237030E005 +:1027C0002115310521F02130310561F03EC1FF2096 +:1027D00021F08A2D942F937002C080E090E00E9437 +:1027E000151133C1FF2021F08A2D942F937002C060 +:1027F00080E090E00E942B1128C18A2DFF2019F063 +:102800000E94311E02C00E94991E0E941E1F1DC1FF +:10281000842F837009F04EC0F11017C12A2D229524 +:1028200026952770220F220F8A2D8F70C82ED12C4B +:10283000E12CF12C022E04C0CC0CDD1CEE1CFF1C84 +:102840000A94D2F7A4FE10C06FE070E080E090E040 +:1028500004C0660F771F881F991F2A95D2F76095CD +:1028600070958095909503C060E070E0CB01242FB7 +:1028700026952695237030E02230310569F023300B +:10288000310589F06C297D298E299F292130310558 +:1028900071F00E94B719D9C06C297D298E299F2912 +:1028A0000E94D119D2C00E94B719C701B6010E9477 +:1028B0009D19CBC0FF2019F0842F817001C086952F +:1028C000882309F4C2C02A2D229526952770220F4D +:1028D000220F8A2D8F70C82ED12CE12CF12C022EC4 +:1028E00004C0CC0CDD1CEE1CFF1C0A94D2F7A4FE25 +:1028F00010C06FE070E080E090E004C0660F771FCA +:10290000881F991F2A95D2F76095709580959095AC +:1029100003C060E070E0CB01242F2695269523703C +:1029200030E02230310569F02330310589F06C291F +:102930007D298E299F292130310571F00E948B1A43 +:1029400084C06C297D298E299F290E94A51A7DC0EB +:102950000E948B1AC701B6010E94711A76C00A2D17 +:1029600010E0F801E05EF109E531F10508F052C030 +:10297000E059FF4F0C948B231A2D1F70842F8F71F9 +:10298000FF2031F00E940A1A812F0E9429135DC096 +:102990000E942B1A812F0E94301357C0FF2039F05C +:1029A000E11053C0842F8F710E94501A4EC081E0F5 +:1029B0008E1508F44AC0F6CFFF2039F0842F8F71AE +:1029C0000E940A1A42C0FF20C9F3842F8F710E940F +:1029D0002B1A3BC0FF2029F0842F8F710E94F5191C +:1029E00034C00E94EB1931C0FF2051F0142F1F7129 +:1029F000812F0E940A1A63E0812F0E94191B25C0B3 +:102A000081E00E94221B91E09E15F8F482E00E9472 +:102A1000221B1BC0FF2031F0EE2081F28A2D0E9484 +:102A2000121213C0EE2089F28A2D0E94DA120DC014 +:102A30004F706A2DC4010E94BC050E94101905C088 +:102A40004F706A2DC4010E946C09BB20F1F00E94F6 +:102A5000151B80FD1AC0F40112820E940F1B0E94F8 +:102A60000A1AC4010E9453150E940F1B0F90DF9198 +:102A7000CF911F910F91FF90EF90DF90CF90BF907B +:102A8000AF909F908F900C942B1A0F90DF91CF9165 +:102A90001F910F91FF90EF90DF90CF90BF90AF907C +:102AA0009F908F9008950F931F93CF93DF93EC0126 +:102AB000288139818B819C81892B31F03F3F11F036 +:102AC00080E003C02F3FE1F781E0811113C0CE0108 +:102AD0000E94FB05882371F0688179818A810E94B8 +:102AE0000B1B8C010E94BF1A0E949219B801CE01E3 +:102AF0000E943713DF91CF911F910F9108950E948B +:102B0000DE1B0E94EE1B0E94B31B0E940A1C0E9447 +:102B1000CA1F0E941E1F80E090E00E94151180E0F5 +:102B200090E00C942B110E94CE1B0C947F150E94F8 +:102B3000001B292F22952F7030E02C3031054CF4EA +:102B40002A3031056CF42250310922303105B0F4BD +:102B500007C02C30310571F02F30310559F00EC00F +:102B6000803F31F018F4803E48F402C0843F31F4D5 +:102B700081E0089593FB882780F9089580E0089507 +:102B8000CF93DF9300D000D01F92CDB7DEB70F9068 +:102B90000F900F900F900F90DF91CF910895CF93EA +:102BA000DF9300D000D000D0CDB7DEB726960FB6A9 +:102BB000F894DEBF0FBECDBFDF91CF9108951F9374 +:102BC000CF93DF93C091860116E080918701C817EB +:102BD00099F0D0E01C9FF0011D9FF00D1124E857E3 +:102BE000FE4F4081518162817381848195810E9471 +:102BF000CF152196C770E9CFDF91CF911F9108952E +:102C00004091B8015091B9016091BA017091BB0136 +:102C10008091BC019091BD010C94CF15CF93809110 +:102C2000BD0182958F7009F05FC08091BA01882341 +:102C300009F45AC020918601A09187016091B801E2 +:102C40007091B9018091BB019091BC0131E06F3F5F +:102C500009F030E0B32FC6E02A1709F445C0009709 +:102C600021F07F3F21F44B2F03C041E001C040E041 +:102C700030E040FD35C0C29FF001C39FF00D11242C +:102C8000E857FE4F418174132BC04081641328C064 +:102C90004281411125C0438154814817590710F4DE +:102CA00041505109481B590B483C5105C8F48091CB +:102CB000BD018F7080618093BD0186E0829FF0012D +:102CC000839FF00D1124E357FE4F80818F70806148 +:102CD000808388EB91E00E945315CF910C94DF150F +:102CE0002F5F3F4F2770B8CFCF910895CF92DF92DB +:102CF000EF92FF920F931F93CF93DF93CDB7DEB781 +:102D000062970FB6F894DEBF0FBECDBF8C0185E091 +:102D1000F801DE011D9601900D928A95E1F7D80128 +:102D20004C9111965C91119712966C911297139693 +:102D3000ED90FC9014977091B801E091B901209149 +:102D4000BB013091BC012115310531F0EF3F31F469 +:102D500081E07F3F19F403C081E001C080E0B82F1B +:102D6000B170CB2E80FD6CC1D090BA01DD2009F48A +:102D7000F5C0F091BD01E216F30638F0C701821BE1 +:102D8000930B883C910548F09BC0209530952E0D03 +:102D90003F1D283C310508F093C08F2F807F09F03C +:102DA00052C0E51314C0741312C0D62E61110FC0A7 +:102DB000FF70F061F093BD010E94001688EB91E076 +:102DC0000E9453158091BD01F80185836CC1EF28E5 +:102DD00031F05F3F31F481E04F3F19F403C081E0EF +:102DE00001C080E080FD03C081E0862701C080E053 +:102DF000F82FF170FF2E80FF1CC08091860120917A +:102E0000870136E0821709F428C190E0389FF0016D +:102E1000399FF00D1124E857FE4F7181571306C0FA +:102E20007081471303C07281671303C001968770D6 +:102E3000E9CFD62E662309F436C18091BD018160A9 +:102E40008093BD0153C0E51308C0741306C061111F +:102E500004C0D8011596FC93AEC04D875E878D8562 +:102E60009E856A8B0E9497156A89882329F1D62E40 +:102E7000662311F12091BD01822F82958F7090E021 +:102E800002970CF460C08091B8019091B9019887C5 +:102E90008F831986FB86EA862C87CE01079651C060 +:102EA000E51731F14D875E878D859E856A8B0E947F +:102EB00097156A8981112EC0C8010E945315A4C0BC +:102EC0008F2F807F69F77E2DF98AE88A89890E9491 +:102ED000C01588EB91E00E945315E8EBF1E086E025 +:102EE000DF011D928A95E9F70E940016D12CDBC004 +:102EF0007413D8CF6111D6CFD8011596FC93C801B1 +:102F00000E945315E8EBF1E086E0DF011D928A95FF +:102F1000E9F7C9C0D62E662379F22091BD01822F30 +:102F200082958F7090E0029774F08091B801909133 +:102F3000B9019A8389831B82FD82EC822E83CE01A4 +:102F400001960E94531586E0F801A8EBB1E00190CC +:102F50000D928A95E1F70E940E166FC0E216F306F5 +:102F600028F0C701821B930B9C0104C0209530956B +:102F70002E0D3F1D283C310508F052C0D62E662389 +:102F800009F49ACFE5132CC074132AC08091BD01B7 +:102F900080FD1DC0982F92959F70C9F0D80115969D +:102FA0008C9315979F3039F09F5F9295907F8F702B +:102FB000892B15968C93C8010E94531586E0F80161 +:102FC000A8EBB1E001900D928A95E1F736C086E05A +:102FD000F801A8EBB1E001900D928A95E1F763C08A +:102FE0004D875E878D859E850E949715882379F091 +:102FF00086E0F801A8EBB1E001900D928A95E1F727 +:103000000E940E160E940016DD24D3944CC08091BD +:10301000BD0181608093BD01C8010E94531543C06A +:103020007E2DF98AE88A89890E94C015E8EBF1E0D3 +:1030300086E0DF011D928A95E9F70E94001633C0F1 +:10304000662309F439CF4D875E878D859E850E9462 +:103050009715882309F430CFCBCF4D875E878D85B8 +:103060009E850E94001B292F22952F7030E0223070 +:1030700031052CF49F7041F0811106C00CC0243042 +:1030800031052CF49F7049F4805E883020F0C8012F +:103090000E945315CF2CDC2C06C0D80115969C91AC +:1030A000907F91F7F8CF8D2D62960FB6F894DEBF22 +:1030B0000FBECDBFDF91CF911F910F91FF90EF9089 +:1030C000DF90CF9008951F93CF93DF93CDB7DEB7F6 +:1030D0002C970FB6F894DEBF0FBECDBF4F83588735 +:1030E00069877A878B879C87CE0107960E94761620 +:1030F0008823C1F02F8138858A859B85892B31F003 +:103100003F3F11F080E003C02F3FE1F781E08111E4 +:1031100047C04F81588569857A858B859C850E943B +:10312000CF153EC086E0FE013796DE011196019074 +:103130000D928A95E1F7FF81E8854A855B85411507 +:10314000510531F0EF3F31F481E0FF3F19F403C046 +:1031500081E001C080E080FD23C02091870130E044 +:10316000C9010196877099276091860170E08617E2 +:103170009707F1F1F983EA835D834C8396E0929F90 +:10318000D001939FB00D1124A857BE4FFE01319678 +:1031900001900D929A95E1F7809387010E94DF15C7 +:1031A00016E08091860190918701891779F1189F27 +:1031B000C001112488579E4F0E947616882331F152 +:1031C000E09186011E9FF0011124E857FE4F4081D7 +:1031D000518162817381848195810E94CF15809194 +:1031E000860190E001968770992780938601D9CF58 +:1031F0000E9493151092870110928601E8EBF1E08E +:1032000086E0DF011D928A95E9F7CACF2C960FB6AA +:10321000F894DEBF0FBECDBFDF91CF911F9108950F +:10322000EF92FF920F931F93CF93DF939C01009730 +:1032300009F471C0F12CEE24E394E9012196F9011F +:103240008491843740F4843008F056C0813081F096 +:10325000823021F160C0853709F449C0C0F19CE794 +:10326000980F903708F057C08F770E94DA1246C047 +:1032700089010E5F1F4FFE01849190E2980F9830F4 +:1032800050F48770FE2D01C0FF0F8A95EAF78F2F4B +:103290000E94E11B15C00E94121214C089010E5F2A +:1032A0001F4FFE01849190E2980F983068F4877068 +:1032B000FE2D01C0FF0F8A95EAF78F2F0E94E71BB2 +:1032C0000E940A1CE8011AC00E94DA12FBCF2E5F8E +:1032D0003F4FFE01C491CC2341F08FE99FE001975D +:1032E000F1F700C00000C150F6CFE90107C0FE01B0 +:1032F000F490E901229602C00E9412128F2D8823B9 +:1033000041F0EFE9FFE03197F1F700C00000815094 +:10331000F6CF9E0192CFDF91CF911F910F91FF9039 +:10332000EF90089508956093C2017093C301809354 +:10333000C4019093C5010C947F150F931F930091C6 +:10334000C2011091C3012091C4013091C501062B27 +:10335000172B282B392B0093C2011093C301209304 +:10336000C4013093C5011F910F910C947F150F93E9 +:103370001F930091C2011091C3012091C4013091AB +:10338000C50106231723282339230093C201109374 +:10339000C3012093C4013093C5011F910F910C9478 +:1033A0007F150F931F930091C2011091C3012091CB +:1033B000C4013091C5010627172728273927009314 +:1033C000C2011093C3012093C4013093C5011F9122 +:1033D0000F910C947F151092BE011092BF011092B4 +:1033E000C0011092C1010C947F1541E050E060E0F3 +:1033F00070E004C0440F551F661F771F8A95D2F7EF +:103400004093BE015093BF016093C0017093C1010E +:103410000C947F1541E050E060E070E004C0440F80 +:10342000551F661F771F8A95D2F78091BE01909134 +:10343000BF01A091C001B091C101842B952BA62B97 +:10344000B72B8093BE019093BF01A093C001B093AE +:10345000C1010C947F1541E050E060E070E004C0D1 +:10346000440F551F661F771F8A95D2F740955095D8 +:10347000609570958091BE019091BF01A091C001AF +:10348000B091C10184239523A623B7238093BE0165 +:103490009093BF01A093C001B093C1010C947F151C +:1034A00041E050E060E070E004C0440F551F661F2B +:1034B000771F8A95D2F78091BE019091BF01A091AC +:1034C000C001B091C10184279527A627B727809313 +:1034D000BE019093BF01A093C001B093C1010C94B1 +:1034E0007F150F931F930091BE011091BF01209192 +:1034F000C0013091C101062B172B282B392B0093CB +:10350000BE011093BF012093C0013093C1011F91F0 +:103510000F910C947F150F931F930091BE01109192 +:10352000BF012091C0013091C10106231723282338 +:1035300039230093BE011093BF012093C001309343 +:10354000C1011F910F910C947F150F931F93009150 +:10355000BE011091BF012091C0013091C101062729 +:103560001727282739270093BE011093BF01209306 +:10357000C0013093C1011F910F910C947F150895E4 +:10358000CF92DF92EF92FF920F931F93CF93DF932F +:10359000EC01C090C201D090C301E090C401F09052 +:1035A000C5018091BE019091BF01A091C001B09171 +:1035B000C101C82AD92AEA2AFB2A0FE110E0B70183 +:1035C000A601002E04C076956795579547950A94F5 +:1035D000D2F740FD05C00150110988F780E007C00F +:1035E000BE01802F0E94ED070197A9F3802FDF9184 +:1035F000CF911F910F91FF90EF90DF90CF900895A2 +:10360000CF93DF93EC010E94C01ABE010E94ED0728 +:10361000DF91CF910895CB010E94001B0895809106 +:10362000C60185958595859508958091C601877019 +:10363000089598E0899F90011124622B6093C60140 +:103640000C940A1A4091C601809584238093C60188 +:10365000982F977069F450E0282F332727FD309575 +:103660004217530729F08595859585950C942B1A5B +:1036700008959091C601977081E009F480E0089563 +:1036800090910C019923D9F090910D019923B9F0F3 +:10369000982F9695969596959F3088F5E0910E0116 +:1036A000F0910F01E90FF11D877021E030E001C0BA +:1036B000220F8A95EAF78181822B818308954091B8 +:1036C0000E0150910F0120E030E09FEFFA01E20F70 +:1036D000F31F6281681799F09F3F19F4611101C0CF +:1036E000922F2F5F3F4F2E30310581F79F3F39F0EA +:1036F000FA01E90FF11D97FDFA9582830895089567 +:1037000090910C019923E1F090910D019923C1F062 +:10371000982F9695969596959F3020F5E0910E01FD +:10372000F0910F01E90FF11D877021E030E001C039 +:10373000220F8A95EAF72095818128232183089515 +:1037400040910E0150910F0120E030E0FA01E20FAC +:10375000F31F9281981301C012822F5F3F4F2E30CA +:103760003105A1F7089581E090E0E0910E01F0911C +:103770000F01E80FF91F1082019680319105A9F71A +:1037800008959091DA01982B9093DA01089580952D +:103790009091DA0198239093DA0108951092DA015A +:1037A00008959091D901982B9093D901089580950F +:1037B0009091D90198239093D90108951092D9013D +:1037C00008959091D801982B9093D80108958095F1 +:1037D0009091D80198239093D80108951092D80120 +:1037E00008958093C70108951092C70108954091EC +:1037F0000E0150910F0120E030E080E0FA01E20F6D +:10380000F31F918191118F5F2F5F3F4F2F30310553 +:10381000A9F70895E0910E01F0910F018091DA016E +:103820008083E0910E01F0910F0180819091D90188 +:10383000892B8083E0910E01F0910F01808190919E +:10384000D801892B80839091C701992361F0E09181 +:103850000E01F0910F018081892B80830E94F71B5C +:1038600081111092C70180910E0190910F010C946B +:10387000FF1040E0009739F09C012150310982236C +:1038800093234F5FF7CF842F0895CF92DF92EF926B +:10389000FF920F931F936C01EE24FF24C114D104F7 +:1038A000E104F10421F46B017C0180E001C080E1BE +:1038B00033272F2D1E2D0D2D011511052105310545 +:1038C00019F0885F6801790197018601A4E03695B7 +:1038D000279517950795AA95D1F70115110521058B +:1038E000310519F08C5F6801790197018601F2E0DA +:1038F0003695279517950795FA95D1F70115110576 +:103900002105310519F08E5F68017901B701A60123 +:103910007695679557954795452B462B472B09F08C +:103920008F5F1F910F91FF90EF90DF90CF900895E0 +:103930008091F401843021F11092DC0120E488E1CF +:1039400090E00FB6F894A895809360000FBE209386 +:10395000600080E00E94FC0983B7817F846083BFA0 +:1039600083B7816083BF7894889583B78E7F83BF48 +:1039700088E10FB6F89480936000109260000FBE4B +:10398000089508950E94E2030E94F5030E94C11C5D +:103990000E94E90491E0811101C090E0892F08950F +:1039A0000E9493150E94F3100C94FC0982E084BDE0 +:1039B00093E095BD9AEF97BD80936E0008952FB761 +:1039C000F8948091DD019091DE01A091DF01B0912A +:1039D000E0012FBF0895CF92DF92EF92FF920F93F5 +:1039E0001F932FB7F8944091DD015091DE01609153 +:1039F000DF017091E0012FBF6A017B01EE24FF24FB +:103A00008C0120E030E0C016D106E206F30610F487 +:103A100041505109481B590BCA011F910F91FF904A +:103A2000EF90DF90CF9008951F920F920FB60F92F4 +:103A300011248F939F93AF93BF938091DD01909159 +:103A4000DE01A091DF01B091E0010196A11DB11D41 +:103A50008093DD019093DE01A093DF01B093E0013C +:103A6000BF91AF919F918F910F900FBE0F901F90BC +:103A700018950E94F90DF8942FEF87EA91E62150EE +:103A800080409040E1F700C0000087E090EBDC014F +:103A90008093FD019093FE01A093FF01B09300027B +:103AA0002CE088E190E00FB6F894A8958093600030 +:103AB0000FBE20936000FFCF0E94941D811102C0B1 +:103AC0000E947A1D0E949F1D8093DB010E94A71D0A +:103AD00090E09093EF018093EE0187FB882780F9B7 +:103AE00080930D010E94A31D682F70E080E090E09C +:103AF0000C9493196DEE7EEF80E090E00E94C52358 +:103B000060E082E090E00E94B32360E083E090E018 +:103B10000E94B32360E084E090E00E94B32360E061 +:103B200085E090E00C94B32380E090E00E94AD2308 +:103B300021E08D3E9E4F09F020E0822F089582E023 +:103B400090E00C94A52383E090E00C94A52384E0FE +:103B500090E00C94A523682F84E090E00C94B323AC +:103B60008091E30180FF0BC06091130185E0689FA5 +:103B7000B001112475956795759567952AC081FFE9 +:103B800009C06091130185E0689FB001112475950B +:103B900067951FC082FF07C06091130185E0689F91 +:103BA000B001112416C04091E4014423C9F0609192 +:103BB0001201461788F72091130185E0289F900194 +:103BC0001124429FC001439F900D112470E00E9478 +:103BD00077236038710540F46115710539F002C032 +:103BE00065E070E0862F08958FE7089581E00895DD +:103BF0008091E30180FF08C06091110170E075952C +:103C000067957595679521C081FF06C06091110188 +:103C100070E07595679519C082FF04C0609111012D +:103C200070E010C08091E4018823C1F06091100120 +:103C30008617A0F790911101989FC001112470E0A0 +:103C40000E9477236038710528F46115710521F011 +:103C5000862F08958FE7089581E0089561E070E070 +:103C6000F4CF803F21F40E94B01D819504C0813FB4 +:103C700029F40E94B01D8093E7010895823F21F44A +:103C80000E94B01D819504C0833F29F40E94B01D9D +:103C90008093E6010895893F19F40E94F81D05C03C +:103CA0008A3F31F40E94F81D81958093E8010895C0 +:103CB0008B3F21F40E94F81D819504C08C3F29F4AC +:103CC0000E94F81D8093E9010895843F21F48091BA +:103CD000E501816017C0853F21F48091E501826094 +:103CE00011C0863F21F48091E50184600BC0873FBD +:103CF00021F48091E501886005C0883F31F480910E +:103D0000E50180618093E50108958D3F21F4809164 +:103D1000E30181600BC08E3F21F48091E30182605A +:103D200005C08F3F29F48091E30184608093E30113 +:103D30000895803F39F48091E70187FF6CC01092AD +:103D4000E70169C0813F29F48091E7011816BCF3AF +:103D500062C09091E601823F29F497FF5CC0109207 +:103D6000E60159C0833F19F41916CCF354C0893FBA +:103D700041F48091E80118160CF04DC01092E80152 +:103D80004AC08A3F29F48091E80187FF44C0F6CFFA +:103D90008B3F39F48091E90187FF3DC01092E90122 +:103DA0003AC08C3F29F48091E9011816BCF333C066 +:103DB000843F21F48091E5018E7F17C0853F21F477 +:103DC0008091E5018D7F11C0863F21F48091E5014E +:103DD0008B7F0BC0873F21F48091E501877F05C071 +:103DE000883F31F48091E5018F7E8093E50113C017 +:103DF0008D3F21F48091E3018E7F0BC08E3F21F433 +:103E00008091E3018D7F05C08F3F29F48091E3010C +:103E10008B7F8093E3018091E60181110EC0809138 +:103E2000E70181110AC08091E801811106C08091EB +:103E3000E901811102C01092E401089585EE91E03C +:103E40000E940A110E94DF1C9093E2018093E1011D +:103E500008951F93CF93DF938091E1019091E20148 +:103E60000E94EB1C4091E401442321F020911401B5 +:103E700030E006C0209115015AE0259F90011124E1 +:103E80008217930708F482C08091E6011091E70140 +:103E9000D091E801C091E901811107C0111105C05D +:103EA000D11103C0CC2309F471C04F3F19F04F5F0B +:103EB0004093E401181624F40E94B01D8093E6019B +:103EC0008091E60187FF05C00E94B01D8195809317 +:103ED000E601111624F40E94B01D8093E701809141 +:103EE000E70187FF05C00E94B01D81958093E7011F +:103EF0006091E601662339F11091E701112319F170 +:103F0000772767FD7095872F972F0E94882223E3DC +:103F100033E343E35FE30E94EC220E945522609367 +:103F2000E601612F772767FD7095872F972F0E94F5 +:103F3000882223E333E343E35FE30E94EC220E9401 +:103F400055226093E7011D1624F40E94F81D80930A +:103F5000E8018091E80187FF05C00E94F81D819566 +:103F60008093E8011C1624F40E94F81D8093E90157 +:103F70008091E90187FF05C00E94F81D819580931B +:103F8000E901DF91CF911F910C941E1FDF91CF911A +:103F90001F910895E5EEF1E085E0DF011D928A951D +:103FA000E9F71092E4011092E3010895833081F162 +:103FB00028F4813059F08230D1F00895853009F429 +:103FC00049C0B8F1863009F456C008952091150112 +:103FD000862F90E0820F911D8F3F910520F4620F94 +:103FE0006093150108958FEF809315010895209136 +:103FF0001401862F90E0820F911D8F3F910520F4D0 +:10400000620F6093140108958FEF80931401089557 +:1040100020911301862F90E0820F911D8F3F910513 +:1040200020F4620F6093130108958FEF80931301C2 +:10403000089520911201862F90E0820F911D8F3FED +:10404000910520F4620F6093120108958FEF809321 +:104050001201089520911101862F90E0820F911D89 +:104060008F3F910520F4620F6093110108958FEF47 +:1040700080931101089520911001862F90E0820F06 +:10408000911D8F3F910520F4620F609310010895F8 +:104090008FEF809310010895833011F128F481305F +:1040A00049F0823091F00895853081F120F1863019 +:1040B000C1F1089580911501681720F4861B809343 +:1040C0001501089510921501089580911401681743 +:1040D00020F4861B80931401089510921401089512 +:1040E00080911301681720F4861B809313010895B3 +:1040F00010921301089580911201681720F4861B15 +:104100008093120108951092120108958091110177 +:10411000681720F4861B80931101089510921101F5 +:10412000089580911001681720F4861B8093100178 +:1041300008951092100108958D3109F43FC008F5DB +:10414000803109F485C070F4873009F456C018F442 +:104150008630D9F131C08B3009F4A5C08E3009F416 +:1041600066C02AC0863109F49EC020F4813109F46A +:1041700079C022C0893109F496C08B3109F44DC051 +:104180001BC0853309F487C048F4873209F483C023 +:1041900008F473C0893209F47EC00EC0833438F449 +:1041A0008A3308F068C0883309F47DC005C08334C1 +:1041B00009F471C0883499F080E008950E940F22BC +:1041C0000E94F3100E94FC096EC08091DB01817F88 +:1041D0008E7F8093DB0181E08093EB0108950E9444 +:1041E00093152FEF83ED90E3215080409040E1F74D +:1041F00000C000000E94391D56C09091DB01892F3C +:104200008095817080FB90F919F0966098601DC0D0 +:10421000997F977F9093DB0146C09091DB0191FBE2 +:10422000882780F921E0822780FB91F909C09091CD +:10423000DB0192FB882780F921E0822780FB92F93D +:104240009093DB01882379F191609093DB010895CD +:104250009091DB0193FB882780F921E0822780FB86 +:1042600093F9EECF0E94931580910D0191E089277B +:1042700080930D0118C027EC01C023EE280F61E0E8 +:1042800070E080E090E004C0660F771F881F991FE0 +:104290002A95D2F704C061E070E080E090E00E94CF +:1042A00093190E94931581E0089580E0089580E0BD +:1042B0000895CF93C82F8091EB01813079F018F0E9 +:1042C0008230D1F184C0A0910E01B0910F018C9188 +:1042D000813169F0823209F07CC009C0A0910E01E1 +:1042E000B0910F018C91813111F0823249F48C2F01 +:1042F0000E94552181111DC08C2F0E949C201AC044 +:104300008C2F0E945721811114C0C43179F048F4D8 +:10431000CB3079F0C03109F060C082E08093EB01CE +:1043200008C0C93219F0C83321F057C01092EB0110 +:1043300054C081E0817053C0C93289F118F5C4318D +:1043400071F1A8F4C73009F046C08AE080931501E6 +:1043500094E19093140193E09093130180931201E0 +:1043600088E08093110188E28093100134C0CE511F +:10437000C63088F5EC2FF0E0E65DFE4F808180933B +:10438000EA0129C0CE34E9F020F4CB3421F56AE00B +:1043900013C0C13579F0C235F1F461E00DC08091F0 +:1043A000EA01882319F01092EA0115C081E0809398 +:1043B000EB0115C061E006C08091EA010E94D61FA2 +:1043C0000AC06AE08091EA010E944C2004C0109269 +:1043D000EB0180E004C081E002C080E0ABCFCF9170 +:1043E0000895E1E8F0E080818860808380818160C9 +:1043F00080838FB7F89493E09093890090ED909329 +:1044000088008FBF0895EFE6F0E0808182608083AE +:104410000895EFE6F0E080818D7F80830895EFE6D8 +:10442000F0E0808192E08927808308951F920F92A7 +:104430000FB60F9211242F933F934F935F936F9377 +:104440007F938F939F93AF93BF93EF93FF9380914D +:10445000EC019091ED0101969093ED018093EC01B8 +:10446000811103C082E00E94FC09E091ED01E69514 +:10447000E695F0E0E552FA4FE4918091EC018E135D +:1044800003C080E00E94FC09FF91EF91BF91AF91C2 +:104490009F918F917F916F915F914F913F912F915C +:1044A0000F900FBE0F901F90189504D06894B11113 +:1044B0008DC0089570D088F09F5790F0B92F99273C +:1044C000B751A0F0D1F0660F771F881F991F1AF01F +:1044D000BA95C9F712C0B13081F077D0B1E0089534 +:1044E00074C0672F782F8827B85F39F0B93FCCF3B5 +:1044F000869577956795B395D9F73EF49095809515 +:10450000709561957F4F8F4F9F4F0895E89409C034 +:1045100097FB3EF490958095709561957F4F8F4FF6 +:104520009F4F9923A9F0F92F96E9BB279395F6950C +:10453000879577956795B795F111F8CFFAF4BB0F8A +:1045400011F460FF1BC06F5F7F4F8F4F9F4F16C0EE +:10455000882311F096E911C0772321F09EE8872F78 +:10456000762F05C0662371F096E8862F70E060E034 +:104570002AF09A95660F771F881FDAF7880F9695AD +:10458000879597F9089557FD9058440F551F59F096 +:104590005F3F71F04795880F97FB991F61F09F3F30 +:1045A00079F087950895121613061406551FF2CF59 +:1045B0004695F1DF08C0161617061806991FF1CFA9 +:1045C00086957105610508940895E894BB276627D0 +:1045D0007727CB0197F908950BD078C069D028F0E0 +:1045E0006ED018F0952309F05AC05FC01124EECFA9 +:1045F000CADFA0F3959FD1F3950F50E0551F629F3E +:10460000F001729FBB27F00DB11D639FAA27F00D2B +:10461000B11DAA1F649F6627B00DA11D661F829F52 +:104620002227B00DA11D621F739FB00DA11D621F37 +:10463000839FA00D611D221F749F3327A00D611D54 +:10464000231F849F600D211D822F762F6A2F112436 +:104650009F5750408AF0E1F088234AF0EE0FFF1F89 +:10466000BB1F661F771F881F91505040A9F79E3FC0 +:10467000510570F014C0AACF5F3FECF3983EDCF315 +:10468000869577956795B795F795E7959F5FC1F7FD +:10469000FE2B880F911D9695879597F9089597F9A8 +:1046A0009F6780E870E060E008959FEF80EC0895D8 +:1046B00000240A9416161706180609060895002401 +:1046C0000A9412161306140605060895092E03947B +:1046D000000C11F4882352F0BB0F40F4BF2B11F4EF +:1046E00060FF04C06F5F7F4F8F4F9F4F089597FB10 +:1046F000072E16F4009407D077FD09D00E9491236D +:1047000007FC05D03EF4909581959F4F08957095D4 +:1047100061957F4F0895EE0FFF1F0590F491E02DF6 +:104720000994AA1BBB1B51E107C0AA1FBB1FA617F8 +:10473000B70710F0A61BB70B881F991F5A95A9F74A +:1047400080959095BC01CD010895F999FECF92BD59 +:1047500081BDF89A992780B50895A8E1B0E042E0BC +:1047600050E00C94CD23262FF999FECF92BD81BD48 +:10477000F89A019700B4021639F01FBA20BD0FB69F +:10478000F894FA9AF99A0FBE08950196272F0E947D +:10479000B4230C94B323DC01CB01FC01F999FECFC7 +:1047A00006C0F2BDE1BDF89A319600B40D924150B9 +:0A47B0005040B8F70895F894FFCFC9 +:1047BA000220FE098B0A680A340A010A0101C801AB +:1047CA0028080A03140A404D36399B054E05180578 +:1047DA00DF0472048B04A404BD0401020304050669 +:0447EA0007080900B3 +:00000001FF diff --git a/keyboards/ergodox_ez/keymaps/default/default.png b/keyboards/ergodox_ez/keymaps/default/default.png new file mode 100644 index 0000000000..6575f7b5e3 Binary files /dev/null and b/keyboards/ergodox_ez/keymaps/default/default.png differ diff --git a/keyboards/ergodox_ez/keymaps/default/default_highres.png b/keyboards/ergodox_ez/keymaps/default/default_highres.png new file mode 100644 index 0000000000..7d9f045f43 Binary files /dev/null and b/keyboards/ergodox_ez/keymaps/default/default_highres.png differ diff --git a/keyboards/ergodox_ez/keymaps/default/keymap.c b/keyboards/ergodox_ez/keymaps/default/keymap.c new file mode 100644 index 0000000000..b48a54a43f --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/default/keymap.c @@ -0,0 +1,182 @@ +#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 + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | = | 1 | 2 | 3 | 4 | 5 | LEFT | | RIGHT| 6 | 7 | 8 | 9 | 0 | - | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Del | Q | W | E | R | T | L1 | | L1 | Y | U | I | O | P | \ | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | 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 | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * |Grv/L1| '" |AltShf| Left | Right| | Up | Down | [ | ] | ~L1 | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | App | LGui | | Alt |Ctrl/Esc| + * ,------|------|------| |------+--------+------. + * | | | Home | | PgUp | | | + * | Space|Backsp|------| |------| Tab |Enter | + * | |ace | End | | PgDn | | | + * `--------------------' `----------------------' + */ +// If it accepts an argument (i.e, is a function), it doesn't need KC_. +// Otherwise, it needs KC_* +[BASE] = KEYMAP( // layer 0 : default + // left hand + KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, KC_LEFT, + KC_DELT, KC_Q, KC_W, KC_E, KC_R, KC_T, TG(SYMB), + KC_BSPC, KC_A, KC_S, KC_D, KC_F, KC_G, + KC_LSFT, CTL_T(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, + ALT_T(KC_APP), KC_LGUI, + KC_HOME, + KC_SPC,KC_BSPC,KC_END, + // right hand + KC_RGHT, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, + TG(SYMB), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, + 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), + KC_PGUP, + KC_PGDN,KC_TAB, KC_ENT + ), +/* Keymap 1: Symbol Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * |Version | 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 + M(0), KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, + KC_TRNS,KC_EXLM,KC_AT, KC_LCBR,KC_RCBR,KC_PIPE,KC_TRNS, + KC_TRNS,KC_HASH,KC_DLR, KC_LPRN,KC_RPRN,KC_GRV, + KC_TRNS,KC_PERC,KC_CIRC,KC_LBRC,KC_RBRC,KC_TILD,KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS, + KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS, + // right hand + KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + KC_TRNS, KC_UP, KC_7, KC_8, KC_9, KC_ASTR, KC_F12, + KC_DOWN, KC_4, KC_5, KC_6, KC_PLUS, KC_TRNS, + KC_TRNS, KC_AMPR, KC_1, KC_2, KC_3, KC_BSLS, KC_TRNS, + KC_TRNS,KC_DOT, KC_0, KC_EQL, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), +/* Keymap 2: Media and mouse keys + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | MsUp | | | | | | | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | |MsLeft|MsDown|MsRght| |------| |------| | | | | | Play | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | | Prev | Next | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | Lclk | Rclk | |VolUp |VolDn | Mute | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | |Brwser| + * | | |------| |------| |Back | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// MEDIA AND MOUSE +[MDIA] = KEYMAP( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_BTN1, KC_BTN2, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + // right hand + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, + KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, + KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_WBAK +), +}; + +const uint16_t PROGMEM fn_actions[] = { + [1] = ACTION_LAYER_TAP_TOGGLE(SYMB) // FN1 - Momentary Layer 1 (Symbols) +}; + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + // MACRODOWN only works in this function + switch(id) { + case 0: + if (record->event.pressed) { + SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION); + } + 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/keyboards/ergodox_ez/keymaps/default/readme.md b/keyboards/ergodox_ez/keymaps/default/readme.md new file mode 100644 index 0000000000..8f6dba45e9 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/default/readme.md @@ -0,0 +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/keyboards/ergodox_ez/keymaps/default_osx/compiled.hex b/keyboards/ergodox_ez/keymaps/default_osx/compiled.hex new file mode 100644 index 0000000000..cdd9b9704c --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/default_osx/compiled.hex @@ -0,0 +1,1158 @@ +:100000000C947A020C94BE020C94BE020C94BE02B4 +:100010000C94BE020C94BE020C94BE020C94BE0260 +:100020000C94BE020C94BE020C94620D0C94340E1F +:100030000C94BE020C94BE020C94BE020C94BE0240 +:100040000C94BE020C943E220C94BE020C94BE0290 +:100050000C94BE020C94D11B0C94BE020C94BE02F4 +:100060000C94BE020C94BE020C94BE020C94BE0210 +:100070000C94BE020C94BE020C94BE020C94BE0200 +:100080000C94BE020C94BE020C94BE020C94BE02F0 +:100090000C94BE020C94BE020C94BE020C94BE02E0 +:1000A0000C94BE020C94BE020C94BE02A10EC30EB0 +:1000B000B10FC30EB10F080F2B0FB10F800F930FAD +:1000C0006212621291129112C712E71218141814D8 +:1000D000F2121814A213A2130914181418141214EB +:1000E000AF13AF13AF13AF13AF13AF13AF13AF1300 +:1000F000AF13AF13AF13AF13AF13AF13AF13AF13F0 +:10010000C113CE13D513DC13E6130000F0A12E00AB +:100110004C002A00E100354100001E0014000400DC +:100120001D7134004D001F001A0016001B00E10471 +:100130002A00200008000700060050002C002100C3 +:100140001500090019004F004A00220017000A009C +:10015000050000006574500001540000007F00009D +:10016000E3004F000154000000770000E20023008C +:100170001C000B00110000002971240018000D0064 +:10018000100052004B0025000C000E0036005100FC +:100190002800260012000F0037002F002B00270038 +:1001A00013003342387130004E002D003100E3005F +:1001B000E500C10000000100010001000100010094 +:1001C00000003A001E0220022202010001003B0052 +:1001D0001F0221022302010001003C002F0226021F +:1001E0002F00010001003D00300227023000010015 +:1001F00001003E003102350035020000010001001F +:1002000001000000010000000100010001000000E9 +:100210000100000001003F005200510024020000D4 +:1002200001004000240021001E00010001004100E7 +:10023000250022001F003700010042002600230095 +:10024000200027000100430025022E0231002E006D +:100250000100440045000100010001000000010010 +:100260000100010001000100000001000100010087 +:1002700001000100010001000100F2000100010085 +:1002800001000100F000F1000100F4000100010094 +:100290000100F3000100F500010001000100010070 +:1002A0000100000001000100010000000100000049 +:1002B0000100010001000000010000000100010038 +:1002C0000100010001000000010001000100010027 +:1002D0000100A9000100010001000100AC00AA001A +:1002E000B600010001000100AB00A8000100010000 +:1002F0000100010001000100010001000100AE0049 +:1003000001000100000016034500720067006F0045 +:1003100044006F007800200045005A0000001603DA +:100320004500720067006F0044006F0078002000F5 +:1003300045005A0000000403090409026D0004018D +:1003400000A0FA09040000010301010009211101C4 +:100350000001223F000705810308000A090401008B +:100360000103010200092111010001224D000705CE +:10037000820308000A0904020001030000000921A9 +:10038000110100012236000705830308000A090451 +:1003900003000103000000092111010001223900BE +:1003A000070584031000011201100100000008ED90 +:1003B000FE071301000102000105010906A1010564 +:1003C0000719E029E7150025019508750181020547 +:1003D000081901290595057501910295017503918B +:1003E0000105071900297715002501957875018108 +:1003F00002C005010980A101850216010026B7008F +:100400001A01002AB700751095018100C0050C097A +:1004100001A1018503160100269C021A01002A9CF5 +:1004200002751095018100C005010902A1010901B1 +:10043000A10005091901290515002501950575017A +:10044000810295017503810105010930093115818A +:10045000257F95027508810609381581257F95014C +:1004600075088106050C0A38021581257F950175EE +:10047000088106C0C005010906A101050719E02988 +:10048000E715002501950875018102950175088120 +:100490000105081901290595057501910295017558 +:1004A0000391010507190029FF150025FF95067521 +:1004B000088100C0000000000000000000000001F2 +:1004C0000204060A0F17202C3A4A5D71879DB3C7B4 +:1004D000DAE9F5FCFFFCF5E9DAC7B39D87715D4AFF +:1004E0003A2C20170F0A0604020100000000000049 +:1004F0000000000011241FBECFEFDAE0DEBFCDBF49 +:1005000004B603FE24C08091FB019091FC01A091F0 +:10051000FD01B091FE018730904BA740B04BB9F47C +:100520001092FB011092FC011092FD011092FE014D +:1005300014BE84B7877F84BF88E10FB6F894809398 +:100540006000109260000FBEE0E0FFE3099511E04B +:10055000A0E0B1E0EAE0F8E402C005900D92A43317 +:10056000B107D9F711E0A4E3B1E001C01D92AB3FA0 +:10057000B107E1F70E94A60A0C9403240C94000032 +:100580001092B9008AE08093B800089594EA90939D +:10059000BC009091BC0097FFFCCF9091B900987F70 +:1005A000983021F0903111F081E008958093BB00E4 +:1005B00084E88093BC008091BC0087FFFCCF8091D1 +:1005C000B900887F883111F0803471F780E0089598 +:1005D00084E98093BC008091BC0084FDFCCF089529 +:1005E0008093BB0084E88093BC008091BC0087FFAF +:1005F000FCCF9091B900987F81E0983209F480E0B7 +:10060000089584E88093BC008091BC0087FFFCCFF4 +:100610008091BB00089580910101811115C080E493 +:100620000E94C6028093010181110CC082E10E94E8 +:10063000F00280930101811105C08FEF0E94F0024A +:10064000809301010E94E80284B1807F84B985B162 +:10065000807F85B98AB1837F8AB98BB1837F8BB95B +:100660003E98469808950E94C604809301010E9416 +:100670000B0380B38C7080BB81B3836F81BBA5E318 +:10068000B1E0E3E4F1E08EE08E0F11921D928E1343 +:10069000FCCF0C94B004BF92CF92DF92EF92FF9206 +:1006A0000F931F93CF93DF9380910101882379F0FB +:1006B000809134018F5F80933401811108C00E94C2 +:1006C000C60480930101811102C00E94580405E311 +:1006D00011E0C0E0D0E0DD24D39482E0C82EEE2407 +:1006E000E394F12CC730D10500F58091010181110F +:1006F00064C080E40E94C60280930101811112C08F +:1007000082E10E94F0028093010181110BC0C701B8 +:100710000C2E01C0880F0A94EAF780950E94F0021F +:10072000809301010E94E80248C0CA30A1F028F479 +:10073000C83059F0C93061F005C0CC3089F070F094 +:10074000CD3089F0209A289810C0219A29980DC0A0 +:10075000229A2A980AC0239A2B9807C0529A01C05D +:10076000539A5B9802C03E9A469890EA9A95F1F7A0 +:100770009FB1799902C082E001C080E091709D250F +:10078000982B7C9902C084E001C080E0892B7D9980 +:1007900002C038E001C030E0832B7E9902C020E126 +:1007A00001C020E0822B9FB19095991F9927991F36 +:1007B0009295990F907E892B0FC080910101811134 +:1007C00049C080E40E94C60280930101882379F128 +:1007D000B12C0E94E8028B2DF8019081981719F036 +:1007E0008083C09200010E940B0321960F5F1F4F70 +:1007F000CE30D10509F076CF80910001882361F1D8 +:10080000815080930001882339F08FE99FE00197A0 +:10081000F1F700C0000020C0A3E4B1E0E5E3F1E09F +:10082000CF01825F91919D938E13FCCF15C083E120 +:100830000E94F002809301018111CACF81E40E94DD +:10084000C602809301018111C3CF0E940103B82E1B +:10085000B094BFCF80E0C0CF0E94560481E0DF910A +:10086000CF911F910F91FF90EF90DF90CF90BF90AD +:100870000895E82FF0E0ED5BFE4F80810895089524 +:100880000F931F93CF93DF93C3E4D1E010E00C2FBD +:10089000025F899190E00E94F71A180F0C13F9CFAC +:1008A000812FDF91CF911F910F9108950C94260510 +:1008B00056985E9825982D9826982E9827982F98C8 +:1008C0008FEF90E0909389008093880090938B0045 +:1008D00080938A0090938D0080938C00259A2D9AA6 +:1008E0002FEF80E792E0215080409040E1F700C078 +:1008F0000000269A2E9A2FEF80E792E02150804048 +:100900009040E1F700C00000279A2F9A2FEF80E770 +:1009100092E0215080409040E1F700C0000025980F +:100920002D982FEF80E792E0215080409040E1F732 +:1009300000C0000026982E982FEF80E792E021500B +:1009400080409040E1F700C0000027982F9856980B +:100950005E9825982D9826982E9827982F98089578 +:1009600089EA8093800089E08093810024982C9804 +:100970003F988AB18F748AB96E98479A8BB1806B11 +:100980008BB9769A0E9458040C94250580E28093D6 +:1009900001018091510181110EC00E94C00281E0CD +:1009A000809351012FEF83ED90E3215080409040E0 +:1009B000E1F700C0000080E40E94C60280930101BC +:1009C00081112EC00E94F00280930101811128C084 +:1009D0000E94F00280930101811122C08FE30E94E6 +:1009E000F0028093010181111BC00E94E80280E4A3 +:1009F0000E94C60280930101811112C08CE00E9406 +:100A0000F0028093010181110BC00E94F0028093DB +:100A10000101811105C08FE30E94F0028093010162 +:100A20000E94E80280910101089561110BC0FC0150 +:100A30008281882321F085EE0E94061103C085EE95 +:100A40000E94CE1180E090E0089508956091BD016C +:100A50007091BE018091BF019091C0010E94031B63 +:100A600056985E9825982D9826982E9827982F9816 +:100A7000813019F0823021F00895259A2D9A089539 +:100A8000269A2E9A089581E0089581E008950C94A5 +:100A9000450508950F931F93CF93DF938C01FC01BD +:100AA000C081D181CE010E947C19BE010E94F30554 +:100AB000EC01B8010E944705882309F48DC0F801B4 +:100AC0008281882309F44AC080915D0181111FC091 +:100AD000C431F0E5DF0709F051C00E94490581E00B +:100AE00080935D010E949B1B90935C0180935B014E +:100AF0001092540110925601109255011092580113 +:100B00001092570110925A011092590165C08091BC +:100B10005B0190915C010E94A71B883C910570F4D9 +:100B200080915401E82FF0E0EE0FFF1FEB5AFE4FCB +:100B3000D183C0838F5F809354014EC0C43880E559 +:100B4000D80721F0C538D04501F13AC0F8018281BB +:100B5000882341F01092520182E01EC0C438E0E5C3 +:100B6000DE0759F580915201811106C086E20E948C +:100B7000061186E20E94CE1182E01CC0C438F0E566 +:100B8000DF0741F3C538D045D9F4F80182818823C5 +:100B900031F01092530180E20E941D121DC080911D +:100BA0005301811106C087E20E94061187E20E946C +:100BB000CE1180E20E9424120FC0C538D04529F31F +:100BC00081E08093520180935301C801DF91CF915E +:100BD0001F910F910C94430580E0DF91CF911F91FD +:100BE0000F910895089596E0799FF001112494E5FE +:100BF000899FE00DF11D1124E60FF11DEE0FFF1F7F +:100C0000E25FFE4F859194910895880F991FFC0132 +:100C1000E657F040859194910895880F991FFC0143 +:100C2000E65FFE4F8591949108950F931F93CF93A4 +:100C3000DF93EC01811520E3920750F5C11580E2A6 +:100C4000D80708F0C3C0CB3BD10590F4C83AD10512 +:100C500008F06AC0C53AD10508F05BC0C430D105C0 +:100C600008F0D0C1219709F0CAC101E010E00AC222 +:100C7000CF3FD10511F008F0C5C1C03FD10508F044 +:100C8000A2C0CE01805E9109089708F4BBC1B7C12C +:100C9000C13090E5D90709F4A2C020F5C0318FE436 +:100CA000D80770F4C11590E4D90708F094C0C115B5 +:100CB00021E3D20708F0A3C1DD278E01106CE2C149 +:100CC000C115D04509F09BC10E9483148FEF94E3B6 +:100CD0002CE0815090402040E1F700C000000E94CD +:100CE000F61BD0C1C11597E5D90758F4C03121E5ED +:100CF000D20708F01CC1C43180E5D80708F475C0DC +:100D00007EC1CE0190578115904108F078C1DF7007 +:100D100073C1C53AD10509F477C1C63AD10509F0C6 +:100D200076C102E810E4AEC1C83AD10509F472C137 +:100D3000C93AD10509F471C1CA3AD10509F470C1A3 +:100D4000CB3AD10509F46FC1CC3AD10509F46EC193 +:100D5000CD3AD10509F46DC1C03BD10509F46CC190 +:100D6000CE3AD10509F46BC1CF3AD10509F46AC175 +:100D7000C13BD10509F469C1C23BD10509F468C181 +:100D8000C33BD10509F467C1C43BD10509F466C171 +:100D9000C53BD10509F465C1C63BD10509F464C161 +:100DA000C73BD10509F463C1C83BD10509F462C151 +:100DB000C93BD10509F461C1CA3BD10509F460C141 +:100DC00000E014E45FC18E0110655CC1CE019F702C +:100DD0000E940D0658C1DF708E01106A53C18091C8 +:100DE000DA0181608093DA014DC10E949B1D81115F +:100DF00002C00E94811D0E94B81D90E09093FB01EB +:100E00008093FA01C23080E5D80721F48091FA017D +:100E1000816086C0C43090E5D90721F48091FA0141 +:100E200082607EC0C63020E5D20721F48091FA01AD +:100E3000846076C0C83080E5D80719F48091FA0143 +:100E400027C0CA3090E5D90721F48091FA0180616A +:100E500067C0CC3020E5D20721F48091FA0180628E +:100E60005FC0CE3080E5D80721F48091FA0180641C +:100E700057C0C03190E5D90721F48091FA0180680C +:100E80004FC0C23120E5D20729F48091FA01846075 +:100E9000886046C0C33080E5D80721F48091FA010C +:100EA0008E7F3EC0C53090E5D90721F48091FA01CC +:100EB0008D7F36C0C73020E5D20721F48091FA013A +:100EC0008B7F2EC0C93080E5D80719F48091FA01D4 +:100ED00026C0CB3090E5D90721F48091FA018F7EAE +:100EE0001FC0CD3020E5D20721F48091FA018F7D1B +:100EF00017C0CF3080E5D80721F48091FA018F7BAD +:100F00000FC0C13190E5D90721F48091FA018F77A4 +:100F100007C0C331D04531F48091FA018B7F877FC0 +:100F20008093FA018091FA010E94BC1DABC08D2F05 +:100F300099278F70992781309105D9F49E012370EC +:100F4000332702C0880F991F2A95E2F79C688E010B +:100F500044E0000F111F4A95E1F700271370802B22 +:100F6000912B53E0CC0FDD1F5A95E1F7C076DD27BA +:100F70002FC08230910531F4DC2FCC278E01016F18 +:100F8000106A80C08330910569F4CE01837099277F +:100F900001E010E002C0000F111F8A95E2F7C801BE +:100FA0009C680FC084309105B9F4CE0183709927F5 +:100FB00001E010E002C0000F111F8A95E2F7C8019E +:100FC0009A6823E0CC0FDD1F2A95E1F7C07ED77029 +:100FD0008C010C2B1D2B56C08530910531F4DC2F74 +:100FE000CC278E01046F106A4DC0069709F04AC0E5 +:100FF000CF71DD27DC2FCC278E01106243C000E0CB +:1010000010E040C08E013EC001E810E43BC003E8A0 +:1010100010E438C002EE14E435C009EE14E432C026 +:101020000AEE14E42FC005EB14E42CC006EB14E424 +:1010300029C007EB14E426C00CEC14E423C00DEC2B +:1010400014E420C003E815E41DC00AE815E41AC042 +:1010500002E915E417C004E915E414C001E216E43E +:1010600011C003E216E40EC004E216E40BC005E270 +:1010700016E408C006E216E405C007E216E402C062 +:101080000AE216E4C801DF91CF911F910F910895F4 +:1010900096E0799FF001112494E5899FE00DF11D00 +:1010A0001124E60FF11DEE0FFF1FE25FFE4F859149 +:1010B0009491803E9105E0F4803C910558F5813390 +:1010C000910509F46FC048F48932910509F463C0B1 +:1010D0008A32910509F46DC072C089339105E9F037 +:1010E00082389105D1F08533910509F44DC067C070 +:1010F000833E910581F138F4803E9105B9F0823E3E +:101100009105D9F05CC0863E910561F1873E91055D +:10111000A1F155C00E94050608952091FA0120FD15 +:1011200002C021FF4CC080EE90E049C08091FA01DE +:1011300080FFF9CF89E390E042C08091FA0182FFFD +:101140000EC08091FA0184FF03C080E090E037C0B8 +:1011500083EE90E034C08091FA0182FFF2CF82EEFC +:1011600090E02DC08091FA0183FF0BC08091FA01BD +:1011700084FDEBCF87EE90E022C08091FA0183FFDF +:10118000F5CF86EE90E01BC08091FA0185FF07C085 +:1011900089E290E014C08091FA0185FFF9CF85E3E0 +:1011A00090E00DC08091FA0186FF07C08AE290E0CE +:1011B00006C08091FA0186FFF9CF81E390E00E949A +:1011C0001506089508950C94E20880916E01089523 +:1011D000CF93DF9300D01F92CDB7DEB79C018091F3 +:1011E000F101843019F593E099833B832A8390932E +:1011F000E9008FEF9091E800815095FD06C095EDD4 +:101200009A95F1F700008111F5CF8091E80085FFF4 +:101210000DC040E050E063E070E0CE0101960E9416 +:10122000520B8091E8008E778093E8000F900F902A +:101230000F90DF91CF910895CF93DF9300D01F924D +:10124000CDB7DEB72091F101243021F522E02983CA +:101250009B838A8383E08093E9008FEF9091E8007D +:10126000815095FD06C095ED9A95F1F7000081112A +:10127000F5CF8091E80085FF0DC040E050E063E0CD +:1012800070E0CE0101960E94520B8091E8008E77AB +:101290008093E8000F900F900F90DF91CF91089509 +:1012A0002091F1012430F1F422E02093E9002FEFA6 +:1012B0003091E800215035FD06C035ED3A95F1F743 +:1012C00000002111F5CF2091E80025FF0BC040E080 +:1012D00050E065E070E00E94520B8091E8008E774C +:1012E0008093E8000895CF93DF93EC019091F10192 +:1012F000943009F046C080910C018823D9F0809188 +:101300000D018823B9F09093E9008FEF9091E800E8 +:10131000815095FD06C095E19A95F1F70000811185 +:10132000F5CF8091E80085FF2CC040E050E060E1FF +:1013300070E017C081E08093E9008FEF9091E800A2 +:10134000815095FD06C095ED9A95F1F70000811149 +:10135000F5CF8091E80085FF14C040E050E068E0E0 +:1013600070E0CE010E94520B8091E8008E7780934E +:10137000E80080E1FE01AEE5B1E001900D928A95B2 +:10138000E1F7DF91CF9108958091F001811109C0BB +:101390000E94E70C0E94440D8091E20084608093DB +:1013A000E20008951092F001089508950C942B2204 +:1013B0000E948C1B0E9431220E94EA0F0C94E308C9 +:1013C00042E061EC81E00E94610C42E061EC82E06D +:1013D0000E94610C42E061EC83E00E94610C42E1FA +:1013E00061EC84E00C94610C8091F301833009F48A +:1013F00055C030F4813071F0823009F48EC0089508 +:101400008A3009F47AC08B3009F460C0893009F061 +:101410009CC020C08091F201813A09F096C0809171 +:10142000E800877F8093E8008091F6019091F701B2 +:10143000892B21F460E18EE591E003C060E080E05B +:1014400090E070E00E949D0B8091E8008B77809384 +:10145000E80008958091F201813209F076C0809110 +:10146000F6019091F701009719F0039709F06DC00C +:101470008091E800877F8093E8008091E80082FDFA +:1014800005C08091F1018111F8CF5FC08091F1001A +:1014900080936E018091E8008B7753C08091F201B8 +:1014A000813A09F052C08091F6019091F701892BA1 +:1014B00009F04BC08091E800877F8093E80080911D +:1014C000E80080FFFCCF80910C0136C08091F201D2 +:1014D0008132D9F58091F6019091F701892BA9F518 +:1014E0008091E800877F8093E8000E94960C8091AD +:1014F000F40180930C010C9483148091F2018132E9 +:1015000021F58091E800877F8093E8000E94960C87 +:101510008091F50180936F0108958091F201813AE5 +:10152000A1F48091E800877F8093E8008091E80033 +:1015300080FFFCCF80916F018093F1008091E800E3 +:101540008E778093E8000C94960C089584B7877F7B +:1015500084BF88E10FB6F894809360001092600019 +:101560000FBE90E080E80FB6F894809361009093EE +:1015700061000FBE0E9439100E94E70C0E94440DCA +:101580008091E20084608093E20078940E94CA0F08 +:101590000E943B1082E091E00E94E50F0E94192218 +:1015A0008091F101853069F40E94531B8091EF0115 +:1015B0008823B1F30E947E1B882391F30E943C0B89 +:1015C000EFCF0E944110ECCF292F33272330310574 +:1015D000C9F064F42130310581F02230310509F081 +:1015E00043C08DE690E02AE333E042C0213231056A +:1015F000F1F02232310541F137C082E190E027EA73 +:1016000033E036C099278130910541F08230910551 +:1016100041F0892B49F5E6E3F3E005C0EEE1F3E0A4 +:1016200002C0E6E0F3E0849190E09F0121C06430C5 +:10163000D8F4E62FF0E0EE0FFF1FEE5DFE4F2081A5 +:10164000318189E090E014C0643070F470E0FB01F7 +:10165000EE0FFF1FE65EFE4F20813181FB01EA5E47 +:10166000FE4F808190E004C080E090E020E030E018 +:10167000FA0131832083089580E189BD82E189BD2B +:1016800009B400FEFDCF8091D8008F7D8093D800F3 +:101690008091E00082608093E0008091E00081FD15 +:1016A000FCCF0895CF92DF92EF92FF920F931F939A +:1016B000CF93DF93EC018B016A010E94B50C81117D +:1016C00033C0C114D10439F0F60180819181081B27 +:1016D000190BC80FD91FE12CF12C0115110519F1B7 +:1016E0008091E80085FD16C08091E8008E77809398 +:1016F000E800C114D10449F0F60180819181E80E1F +:10170000F91EF182E08285E00FC00E94B50C8823AB +:1017100021F30AC089918093F10001501109FFEF74 +:10172000EF1AFF0ADACF80E0DF91CF911F910F917E +:10173000FF90EF90DF90CF9008952091F8013091C5 +:10174000F9012617370748F06115710539F4209122 +:10175000E8002E772093E80001C0B90140E0611550 +:101760007105A9F12091F101222309F443C025302C +:1017700009F442C02091E80023FD40C02091E80018 +:1017800022FD32C02091E80020FFE9CF4091F30014 +:101790002091F20030E0342BFC01CF01611571057E +:1017A00059F02830310540F481918093F100615067 +:1017B00071092F5F3F4FF1CF41E02830310509F02B +:1017C00040E02091E8002E772093E800C8CF411137 +:1017D000C9CF0AC08091F101882361F0853061F0A2 +:1017E0008091E80083FD0AC08091E80082FFF2CF7B +:1017F00080E0089582E0089583E0089581E00895EF +:101800002091F8013091F9012617370748F061154A +:10181000710539F42091E8002E772093E80001C08B +:10182000B901FC0120E06115710591F18091F10190 +:10183000882309F440C0853009F43FC08091E80056 +:1018400083FD3DC08091E80082FD2FC08091E800BB +:1018500080FFE9CF2091F3008091F20090E0922B7D +:101860006115710559F08830910540F42491209359 +:10187000F1003196615071090196F2CF21E008978D +:1018800009F020E08091E8008E778093E800CBCFCC +:101890002111CCCF0AC08091F101882361F08530FD +:1018A00061F08091E80083FD0AC08091E80082FF2A +:1018B000F2CF80E0089582E0089583E0089581E00A +:1018C0000895982F973058F59093E900981739F0BC +:1018D0007091EC002091ED005091F00003C0242F96 +:1018E000762F50E021FF19C03091EB003E7F3093FE +:1018F000EB003091ED003D7F3093ED003091EB0037 +:1019000031603093EB007093EC002093ED00509326 +:10191000F0002091EE0027FF07C09F5FD3CF8F70AC +:101920008093E90081E0089580E008958091F201BC +:1019300087FF11C08091E80082FD05C08091F10110 +:101940008111F8CF11C08091E8008B770BC0809196 +:10195000F101882349F08091E80080FFF8CF809161 +:10196000E8008E778093E80008952091E40030919C +:10197000E50095E64091EC00842F817040FF22C085 +:101980008091E80080FD1CC08091F101882391F0D6 +:10199000853091F08091EB0085FD10C04091E4000E +:1019A0005091E5004217530729F39A01915011F71E +:1019B00084E0089582E0089583E0089581E0089529 +:1019C00080E008954091E80042FFDECF08950E9434 +:1019D000550D0E945D0DE0EEF0E080818160808316 +:1019E000E8EDF0E080818F77808319BCA7EDB0E04F +:1019F0008C918E7F8C9380818F7E80831092F001FA +:101A000008950F931F93CF93DF930E94550D0E946B +:101A10005D0DC8EDD0E088818F77888388818068EC +:101A2000888388818F7D888319BC1092F101109280 +:101A3000ED011092EF011092EE0100EE10E0F801BE +:101A400080818B7F808388818160888342E060E031 +:101A500080E00E94610CE1EEF0E080818E7F808367 +:101A6000E2EEF0E080818160808380818860808305 +:101A7000F80180818E7F8083888180618883DF91F7 +:101A8000CF911F910F910895E8EDF0E080818F7E56 +:101A90008083E7EDF0E080818160808384E082BF15 +:101AA00081E08093F0010C94010DE8EDF0E080817D +:101AB0008E7F80831092E20008951092DA001092D7 +:101AC000E10008951F920F920FB60F9211242F93E9 +:101AD0003F934F935F936F937F938F939F93AF93B6 +:101AE000BF93EF93FF938091E10082FF0BC0809141 +:101AF000E20082FF07C08091E1008B7F8093E100CC +:101B00000E94C90F8091DA0080FF1FC08091D80029 +:101B100080FF1BC08091DA008E7F8093DA00809175 +:101B2000D90080FF0DC080E189BD82E189BD09B483 +:101B300000FEFDCF81E08093F1010E94C40905C041 +:101B400019BC1092F1010E94D2098091E10080FF3E +:101B500019C08091E20080FF15C08091E2008E7F65 +:101B60008093E2008091E20080618093E2008091A6 +:101B7000D80080628093D80019BC85E08093F10181 +:101B80000E94D6098091E10084FF30C08091E2007C +:101B900084FF2CC080E189BD82E189BD09B400FECB +:101BA000FDCF8091D8008F7D8093D8008091E10097 +:101BB0008F7E8093E1008091E2008F7E8093E2002F +:101BC0008091E20081608093E2008091ED018823A2 +:101BD00011F084E007C08091E30087FD02C081E03E +:101BE00001C083E08093F1010E94D8098091E10057 +:101BF00083FF29C08091E20083FF25C08091E1002E +:101C0000877F8093E10082E08093F1011092ED01E3 +:101C10008091E1008E7F8093E1008091E2008E7FD1 +:101C20008093E2008091E20080618093E20042E0D4 +:101C300060E080E00E94610C8091F00088608093F9 +:101C4000F0000E94D509FF91EF91BF91AF919F9154 +:101C50008F917F916F915F914F913F912F910F9055 +:101C60000FBE0F901F9018951F920F920FB60F92F4 +:101C700011242F933F934F935F936F937F938F9391 +:101C80009F93AF93BF93CF93DF93EF93FF93C09155 +:101C9000E900CF708091EC00D82FD17080FDD0E8A2 +:101CA0001092E9008091F000877F8093F000789493 +:101CB0000E94780E1092E9008091F0008860809375 +:101CC000F000CD2BCF70C093E900FF91EF91DF9131 +:101CD000CF91BF91AF919F918F917F916F915F91C4 +:101CE0004F913F912F910F900FBE0F901F9018951D +:101CF0001F93CF93DF93CDB7DEB7AA970FB6F894B3 +:101D0000DEBF0FBECDBFE2EFF1E088E08E0F909115 +:101D1000F10091938E13FBCF0E94F4098091E800AB +:101D200083FF1FC18091F2019091F301492F50E090 +:101D30004A30510508F015C1FA01EA5AFF4F0C94D8 +:101D4000B323803881F0823809F00BC18091F6010D +:101D50008F708093E9008091EB0085FB882780F9E4 +:101D60001092E90006C08091EE019091EF0191116F +:101D700082609091E800977F9093E8008093F10053 +:101D80001092F100C8C0282F2D7F09F0EAC08823E7 +:101D900019F0823061F0E5C08091F401813009F0E2 +:101DA000E0C0933009F080E08093EF012BC0809178 +:101DB000F401811127C08091F6018F7009F4D1C020 +:101DC0008093E9002091EB0020FF1CC0933021F4A8 +:101DD0008091EB00806214C09091EB009061909331 +:101DE000EB0021E030E0A90102C0440F551F8A95A5 +:101DF000E2F74093EA001092EA008091EB008860DD +:101E00008093EB001092E9008091E800877F86C004 +:101E10008111A7C01091F4011F778091E3008078B1 +:101E2000812B8093E3008091E800877F8093E80016 +:101E30000E94960C8091E80080FFFCCF8091E30027 +:101E400080688093E300111102C082E001C083E04A +:101E50008093F10186C08058823008F082C0809162 +:101E6000F4019091F5018C3D53E0950779F583E0FD +:101E70008A838AE289834FB7F894DE01139620E0C3 +:101E80003EE051E2E32FF0E050935700E49120FF51 +:101E900003C0E295EF703F5FEF708E2F90E0EA3065 +:101EA00010F0C79601C0C0968D939D932F5F24318B +:101EB00049F74FBF8091E800877F8093E8006AE28E +:101EC00070E0CE0101960E949D0B14C0AE014F5FE1 +:101ED0005F4F6091F6010E94E40ABC01009709F48B +:101EE00040C09091E800977F9093E80089819A81A3 +:101EF0000E94000C8091E8008B778093E80031C04D +:101F0000803879F58091E800877F8093E8008091A0 +:101F1000ED018093F1008091E8008E778093E800D6 +:101F20000E94960C1EC081111CC09091F401923049 +:101F3000C0F48091E800877F8093E8009093ED01E2 +:101F40000E94960C8091ED01811106C08091E30002 +:101F500087FD02C081E001C084E08093F1010E940E +:101F6000E0098091E80083FF0AC08091E800877F44 +:101F70008093E8008091EB0080628093EB00AA964A +:101F80000FB6F894DEBF0FBECDBFDF91CF911F918A +:101F900008950895CF938091F1018823A1F0C09115 +:101FA000E900CF709091EC00892F817090FD80E85E +:101FB000C82B1092E9008091E80083FD0E94780E02 +:101FC000CF70C093E900CF910895909375018093ED +:101FD00074010895E0917401F0917501309721F03A +:101FE0000190F081E02D099480E00895E091740162 +:101FF000F0917501309721F00280F381E02D099472 +:102000000895E0917401F0917501309721F00480FA +:10201000F581E02D099408952091720130917301AA +:102020008217930771F09093730180937201E0918E +:102030007401F0917501309721F00680F781E02D51 +:1020400009940895209170013091710182179307CE +:1020500071F09093710180937001E0917401F0919F +:102060007501309721F00084F185E02D09940895E1 +:1020700008950C9438100E94921B0E9433030C9414 +:10208000541C9F92AF92BF92CF92DF92EF92FF9239 +:102090000F931F93CF93DF9300D000D000D0CDB724 +:1020A000DEB70E944B030DE010E0AA24A394B12CEC +:1020B000902E802F0E943904980129583E4F6901C3 +:1020C000F901F080F826A1F40150110988F78FEF8B +:1020D00089838A831B820E949B1B8160782F9D834A +:1020E0008C8349815A816B818D810E94D8102FC0C9 +:1020F0009091DA0191FF04C08E830E943F048E818B +:1021000025E030E0A501022E01C0440F0A94EAF751 +:10211000E42E4F21C1F029839A828E2191E009F4A7 +:1021200090E09B830E949B1B8160782F9D838C8312 +:1021300049815A816B818D810E94D810F60180817E +:10214000E826E08204C021503109E0F6BDCF0E94AC +:102150003B1F109176010E94EA0F1817B9F00E94F8 +:10216000EA0F8093760126960FB6F894DEBF0FBE75 +:10217000CDBFDF91CF911F910F91FF90EF90DF9036 +:10218000CF90BF90AF909F900C94E30826960FB627 +:10219000F894DEBF0FBECDBFDF91CF911F910F919D +:1021A000FF90EF90DF90CF90BF90AF909F900895F9 +:1021B000CF93DF93CDB7DEB72B970FB6F894DEBF82 +:1021C0000FBECDBF4F83588769877A878B87DE0123 +:1021D000119686E0FD0111928A95E9F785E0FE01EE +:1021E000379601900D928A95E1F749815A816B816A +:1021F0007C818D819E810E9421172B960FB6F894C9 +:10220000DEBF0FBECDBFDF91CF910895CF9388235E +:1022100009F4C2C0C82F823859F40E94EA0F81FD28 +:10222000BBC089E30E94FB190E94C81A89E30CC055 +:10223000833879F40E94EA0F80FDAEC083E50E94E6 +:10224000FB190E94C81A83E50E943D1ACF910C9495 +:10225000C81A843859F40E94EA0F82FD9DC087E4B1 +:102260000E94FB190E94C81A87E4EECF8CEF8C0FF6 +:10227000813A48F48C2F0E947E2181118DC08C2FD1 +:102280000E94FB19E3CF80E28C0F883048F4C770BE +:1022900081E001C0880FCA95EAF70E94811AD6CF63 +:1022A0008BE58C0F833078F4C53A29F0C63A31F0CB +:1022B00083E890E005C081E890E002C082E890E009 +:1022C000CF910C940C1088E58C0F833108F064C01A +:1022D000C83A39F1C93A41F1CA3A49F1CB3A51F118 +:1022E000CC3A59F1CD3A61F1C03B69F1CE3A71F186 +:1022F000CF3A79F1C13B81F1C23B89F1C33B91F106 +:10230000C43B99F1C53BA1F1C63BA9F1C73BB1F173 +:10231000C83BB9F1C93BC1F1CA3BC9F180E090E0CB +:1023200038C082EE90E035C089EE90E032C08AEE8F +:1023300090E02FC085EB90E02CC086EB90E029C0A8 +:1023400087EB90E026C08CEC90E023C08DEC90E011 +:1023500020C083E891E01DC08AE891E01AC082E9BC +:1023600091E017C084E991E014C081E292E011C0CD +:1023700083E292E00EC084E292E00BC085E292E03C +:1023800008C086E292E005C087E292E002C08AE2DD +:1023900092E0CF910C942210CF910895882309F4F4 +:1023A0004BC0823859F40E94EA0F81FF45C089E38F +:1023B0000E94FB190E94C81A89E30CC0833871F48B +:1023C0000E94EA0F80FF38C083E50E94FB190E943B +:1023D000C81A83E50E943D1A0C94C81A843859F42F +:1023E0000E94EA0F82FF28C087E40E94FB190E9426 +:1023F000C81A87E4EFCF9CEF980F913A58F390E218 +:10240000980F983050F4877091E001C0990F8A9529 +:10241000EAF7892F0E94871ADFCF9BE5980F933048 +:1024200020F480E090E00C940C10885A833120F462 +:1024300080E090E00C9422100895882321F00E94FF +:10244000811A0C94C81A0895882321F00E94871AD3 +:102450000C94C81A08957F928F929F92AF92BF9268 +:10246000CF92DF92EF92FF920F931F93CF93DF9360 +:102470001F92CDB7DEB77C01C62E772EFC010581F9 +:1024800002950F70128111110E949E1A0E94F41978 +:10249000882379F0112369F080E28C0D883048F0B0 +:1024A00082E00E94DD190E94F41991E0D82ED9260D +:1024B00001C0D12CE72DE295EF70F0E0E05AFF4F1C +:1024C0000C94B323872D807F072D0F70882311F084 +:1024D0000295007F112389F0002309F490C180E266 +:1024E0008C0D883020F4802F0E94811A03C0802F29 +:1024F0000E94911A0E94C81A82C18C2D0E94CE118E +:10250000002309F495C180E28C0D883020F4802FDF +:102510000E94871A03C0802F0E94971A0E94C81A2F +:1025200087C1972D907F872D8F70903211F0829503 +:10253000807FCC2021F0F1E0CF16B1F01EC0112336 +:1025400049F0002309F414C1013009F011C10E94BF +:10255000B11A6EC1002319F0013009F469C18983F1 +:102560000E94B41A89810AC1112321F0023008F0B7 +:102570005FC1FEC001115CC101C1112321F0002324 +:1025800009F4F6C03CC1002309F4F8C03EC1872D10 +:1025900086958695837090E0009719F0019761F019 +:1025A00047C1112321F08C2D972D937002C080E03C +:1025B00090E00E940C103CC1112321F08C2D972D2E +:1025C000937002C080E090E00E94221031C18C2DF7 +:1025D000112319F00E94431E02C00E94AB1E0E94EC +:1025E000301F26C1872D837009F052C0111120C100 +:1025F0008C2D829586958770880F880F9C2D9F70F3 +:10260000892E912CA12CB12C082E04C0880C991C69 +:10261000AA1CBB1C0A94D2F7C4FE14C00FE010E041 +:1026200020E030E0B901A80104C0440F551F661F27 +:10263000771F8A95D2F7CB01BA0160957095809586 +:10264000909503C060E070E0CB01272D269526957C +:10265000237030E02230310569F02330310589F0F4 +:10266000682979298A299B292130310571F00E9436 +:102670006918DEC0682979298A299B290E94851852 +:10268000D7C00E946918C501B4010E944D18D0C07E +:10269000112319F0872D817001C08695882309F4D4 +:1026A000C7C08C2D829586958770880F880F9C2DCA +:1026B0009F70892E912CA12CB12C082E04C0880C5F +:1026C000991CAA1CBB1C0A94D2F7C4FE14C00FE0CC +:1026D00010E020E030E0B901A80104C0440F551F0C +:1026E000661F771F8A95D2F7CB01BA016095709566 +:1026F0008095909503C060E070E0CB01272D269572 +:1027000026952370422F50E04230510569F0433046 +:10271000510589F0682979298A299B294130510579 +:1027200071F00E94431984C0682979298A299B295C +:102730000E945F197DC00E944319C501B4010E9427 +:10274000271976C08C2D90E0FC01E05EF109E5319F +:10275000F10508F050C0E059FF4F0C94B3230C2D45 +:102760000F70872D8F71112331F00E94C018802FB8 +:102770000E941D125DC00E94E118802F0E94241249 +:1027800057C0112339F0011153C0872D8F710E945A +:1027900006194EC0023008F04BC0F7CF112339F0B4 +:1027A000872D8F710E94C01843C01123C9F3872D54 +:1027B0008F710E94E1183CC0112329F0872D8F7181 +:1027C0000E94AB1835C00E94A11832C0112351F0ED +:1027D000172D1F71812F0E94C01863E0812F0E9466 +:1027E000D41926C081E00E94DD19023008F182E090 +:1027F0000E94DD191DC0112331F0002389F28C2DB8 +:102800000E94061115C0002391F28C2D0E94CE115A +:102810000FC0472D4F706C2DC7010E9415050E94F7 +:10282000C51706C0472D4F706C2DC7010E94F205D9 +:10283000DD20F9F00E94D01980FD1BC0F701128243 +:102840000E94CA190E94C018C7010E9448140E9421 +:10285000CA190F90DF91CF911F910F91FF90EF90C8 +:10286000DF90CF90BF90AF909F908F907F900C940F +:10287000E1180F90DF91CF911F910F91FF90EF9092 +:10288000DF90CF90BF90AF909F908F907F900895F2 +:102890000F931F93CF93DF93EC01888199812B8154 +:1028A0003C81232BB9F09F3F11F48F3F99F0CE016B +:1028B0000E944A05882371F0688179818A810E948B +:1028C000C6198C010E947B190E944218B801CE01E2 +:1028D0000E942B12DF91CF911F910F9108950E94BA +:1028E0009E1A0E94AE1A0E94731A0E94C81A0E9471 +:1028F000E11F0E94301F80E090E00E940C1080E0F9 +:1029000090E00C9422100E948E1A0C946F140E9476 +:10291000BB19292F22952F7030E02C3031054CF453 +:102920002A3031056CF42250310922303105A8F4E7 +:1029300007C02C30310569F02F30310551F00DC042 +:10294000803F69F018F4803E40F409C0843F29F4C8 +:1029500006C093FB882780F9089580E0089581E000 +:102960000895CF93DF9300D000D01F92CDB7DEB78C +:102970000F900F900F900F900F90DF91CF910895CF +:10298000CF93DF9300D000D000D0CDB7DEB726962E +:102990000FB6F894DEBF0FBECDBFDF91CF91089583 +:1029A0001F93CF93DF93C091850116E0809186013C +:1029B000C81799F0D0E01C9FF0011D9FF00D112465 +:1029C000E957FE4F408151816281738184819581F5 +:1029D0000E94C0142196C770E9CFDF91CF911F915B +:1029E00008954091B7015091B8016091B90170917B +:1029F000BA018091BB019091BC010C94C0148091EC +:102A0000BC0182958F7009F054C08091B901882370 +:102A100009F44FC080918501A09186016091B701B2 +:102A20007091B8014091BA015091BB01B6E08A178C +:102A300009F43FC090E041155105C1F17F3F11F409 +:102A40006F3FA1F1B89FF001B99FF00D1124E95734 +:102A5000FE4F218172132AC02081621327C0228178 +:102A6000211124C0238134812417350710F421500B +:102A70003109241B350B283C3105C0F42091BC01E1 +:102A80002F7020612093BC0126E0289FF001299F30 +:102A9000F00D1124E457FE4F80818F708061808398 +:102AA00087EB91E00E9448140C94D0140196877033 +:102AB000BECF0895CF92DF92EF92FF920F931F93B4 +:102AC000CF93DF93CDB7DEB762970FB6F894DEBF32 +:102AD0000FBECDBF8C0185E0F801DE011D9601908F +:102AE0000D928A95E1F7D8014C9111965C9111975E +:102AF00012966C9112971396CD90DC9014973091AA +:102B0000B7017091B8018091BA019091BB01009713 +:102B100009F46BC17F3F19F43F3F09F466C1E090AF +:102B2000B901EE2009F4C0C02091BC01C816D90635 +:102B300028F0F601E81BF90BCF0104C080959095B1 +:102B40008C0D9D1DFF24F394883C910578F0F12CA9 +:102B5000207F09F0C6C07C2DD98AC88A89890E9445 +:102B6000B11487EB91E00E944814B1C0822F807F9E +:102B700009F046C0751314C0341312C0611110C09F +:102B80002F7020612093BC010E94F11487EB91E02B +:102B90000E9448148091BC01D80115968C932EC0D8 +:102BA000CD2819F15F3F11F44F3FF9F0F62E611176 +:102BB0001CC0809185012091860136E0821709F4BE +:102BC0005AC090E0389FF001399FF00D1124E95769 +:102BD000FE4F7181571306C07081471303C0728185 +:102BE000711103C001968770E9CFF62E662309F4B0 +:102BF00018C18091BC0181608093BC01F12C11C18E +:102C0000751308C0341306C0611104C08091BC0163 +:102C1000D801C3C04D875E878D859E856A8B0E94D3 +:102C200087146A898823E1F16623D1F12091BC01E0 +:102C3000822F82958F7090E0029774F08091B70197 +:102C40009091B80198878F831986DB86CA862C8776 +:102C5000CE0107960E94481486E0F801A7EBB1E088 +:102C600001900D928A95E1F70E94FF140E94F114E1 +:102C7000FF24F394D6C04D875E878D859E850E9484 +:102C8000BB19292F22952F7030E0223031050CF02E +:102C9000BCC09F7009F0B6C0805E883008F4C1C027 +:102CA000C8010E944814E4CFC816D90608F453C0DE +:102CB000F601E81BF90BCF01883C910508F450C0E0 +:102CC000F12C7C2DD98AC88A89890E94B114E7EB3E +:102CD000F1E086E0DF011D928A95E9F70E94F11488 +:102CE000A0C0751314C0341312C0611110C08091BC +:102CF000BC01F8018583C8010E94481486E0E7EB17 +:102D0000F1E0DF011D928A95E9F7FE2C8AC04D871C +:102D10005E878D859E856A8B0E9487146A898823C9 +:102D200009F4BECF662309F4BBCF2091BC01822FEA +:102D300082958F7090E002970CF48ECF8091B7014E +:102D40009091B8019A8389831B82DD82CC822E8385 +:102D5000CE0101967FCF809590958C0D9D1DACCFB7 +:102D6000F62E662309F49CCF75132EC034132CC0A5 +:102D70002091BC0120FD1FC0822F82958F70D9F059 +:102D8000D80115962C9315978F3049F08F5F982FA7 +:102D90009295907F822F8F70892B15968C93C80106 +:102DA0000E94481486E0F801A7EBB1E001900D9273 +:102DB0008A95E1F793CF86E0F801A7EBB1E00190A7 +:102DC0000D928A95E1F72DC04D875E878D859E8592 +:102DD0000E948714811140CF8091BC018160809353 +:102DE000BC01C8010E9448141CC0662309F458CFD6 +:102DF0004D875E878D859E850E948714882309F400 +:102E00004FCF2ACF811148CF0CC0243031050CF0B0 +:102E100047CF9F7009F440CFF8019581907F09F06A +:102E20003BCF8F2D62960FB6F894DEBF0FBECDBF9D +:102E3000DF91CF911F910F91FF90EF90DF90CF9096 +:102E400008951F93CF93DF93CDB7DEB72C970FB6BE +:102E5000F894DEBF0FBECDBF4F83588769877A874E +:102E60008B879C87CE0107960E945A15882369F0AC +:102E70008F8198852A853B85232BF1F19F3F09F0AF +:102E800063C08F3F09F060C037C086E0FE0137960F +:102E9000DE01119601900D928A95E1F76F81788598 +:102EA000EA85FB85309741F17F3F11F46F3F21F1B7 +:102EB0002091860130E0C9010196877099274091E1 +:102EC000850150E08417950709F447C069837A8328 +:102ED000FD83EC8396E0929FD001939FB00D112467 +:102EE000A957BE4FFE01319601900D929A95E1F7D8 +:102EF000809386010E94D01416E080918501909104 +:102F000086018917C1F1189FC001112489579E4F6E +:102F10000E945A15882379F1E09185011E9FF001E6 +:102F20001124E957FE4F4081518162817381848170 +:102F300095810E94C0148091850190E00196877070 +:102F4000992780938501D9CF4F81588569857A85E6 +:102F50008B859C850E94C014CFCF0E948314109251 +:102F6000860110928501E7EBF1E086E0DF011D921A +:102F70008A95E9F7C1CF2C960FB6F894DEBF0FBE45 +:102F8000CDBFDF91CF911F910895EF92FF920F93E4 +:102F90001F93CF93DF938C01009709F46CC0F12C41 +:102FA000EE24E394E8012196F8018491843740F4FB +:102FB000843008F051C0813081F0823019F15BC05B +:102FC000853709F444C0A8F19CE7980F903708F0C2 +:102FD00052C08F770E94CE1141C00E5F1F4FFE017D +:102FE000C49180E28C0F883048F4C7708E2D01C0E8 +:102FF000880FCA95EAF70E94A11A14C08C2F0E946C +:1030000006112DC00E5F1F4FFE01C49180E28C0F90 +:10301000883058F4C7708E2D01C0880FCA95EAF722 +:103020000E94A71A0E94C81A1AC08C2F0E94CE11A3 +:1030300016C00E5F1F4FFE01C491CC2381F08FE9B3 +:103040009FE00197F1F700C00000C150F6CF0E5F7E +:103050001F4FFE01F49003C00E9406118E018F2DB8 +:10306000882309F49FCFEFE9FFE03197F1F700C023 +:1030700000008150F5CFDF91CF911F910F91FF900C +:10308000EF90089508956093C1017093C2018093F9 +:10309000C3019093C4010C946F140F931F9300917C +:1030A000C1011091C2012091C3013091C401DC0122 +:1030B000CB01802B912BA22BB32B8093C10190933A +:1030C000C201A093C301B093C4011F910F910C944E +:1030D0006F140F931F930091C1011091C2012091B1 +:1030E000C3013091C401DC01CB0180239123A223D1 +:1030F000B3238093C1019093C201A093C301B09305 +:10310000C4011F910F910C946F140F931F930091A2 +:10311000C1011091C2012091C3013091C401DC01B1 +:10312000CB0180279127A227B3278093C1019093D9 +:10313000C201A093C301B093C4011F910F910C94DD +:103140006F141092BD011092BE011092BF01109237 +:10315000C0010C946F1441E050E060E070E004C0E6 +:10316000440F551F661F771F8A95D2F74093BD0104 +:103170005093BE016093BF017093C0010C946F1413 +:1031800041E050E060E070E004C0440F551F661F4E +:10319000771F8A95D2F78091BD019091BE01A091D1 +:1031A000BF01B091C001482B592B6A2B7B2B409358 +:1031B000BD015093BE016093BF017093C0010C9498 +:1031C0006F1441E050E060E070E004C0440F551F10 +:1031D000661F771F8A95D2F7409550956095709538 +:1031E0008091BD019091BE01A091BF01B091C0013D +:1031F000482359236A237B234093BD015093BE018A +:103200006093BF017093C0010C946F1441E050E0D3 +:1032100060E070E004C0440F551F661F771F8A9559 +:10322000D2F78091BD019091BE01A091BF01B091F4 +:10323000C001482759276A277B274093BD01509337 +:10324000BE016093BF017093C0010C946F140F9383 +:103250001F930091BD011091BE012091BF013091DB +:10326000C001DC01CB01802B912BA22BB32B8093CF +:10327000BD019093BE01A093BF01B093C0011F9107 +:103280000F910C946F140F931F930091BD01109137 +:10329000BE012091BF013091C001DC01CB01802330 +:1032A0009123A223B3238093BD019093BE01A093E9 +:1032B000BF01B093C0011F910F910C946F140F9335 +:1032C0001F930091BD011091BE012091BF0130916B +:1032D000C001DC01CB0180279127A227B32780936F +:1032E000BD019093BE01A093BF01B093C0011F9197 +:1032F0000F910C946F140895CF92DF92EF92FF928A +:103300000F931F93CF93DF938C01C090C101D09096 +:10331000C201E090C301F090C4018091BD01909181 +:10332000BE01A091BF01B091C001C82AD92AEA2AE2 +:10333000FB2ACFE1D0E0D701C6010C2E04C0B69520 +:10334000A795979587950A94D2F780FF06C0B80194 +:103350008C2F0E944808019721F4219760F780E0A4 +:1033600001C08C2FDF91CF911F910F91FF90EF90B3 +:10337000DF90CF900895CF93DF93EC010E947C19EA +:10338000BE010E944808DF91CF910895CB010E94B1 +:10339000BB1908958091C5018595859585950895FA +:1033A0008091C5018770089598E0899F900111244C +:1033B000262B2093C5010C94C0182091C50180953F +:1033C00082238093C501982F977069F430E0482FCD +:1033D000552747FD50952417350729F08595859584 +:1033E00085950C94E11808959091C501977081E03E +:1033F00009F480E0089590910C01992321F09091B7 +:103400000D01911109C020910E0130910F01F901B8 +:1034100032969FEF40E01FC0982F9695969596950F +:103420009F3050F5E0910E01F0910F01E90FF11D71 +:10343000877021E030E0A90102C0440F551F8A9532 +:10344000E2F7CA019181892B818308959F3F39F06A +:103450004F5F4E3041F051915813F8CF0DC05111CC +:10346000F7CF942FF5CF9F3F39F0F901E90FF11D08 +:1034700097FDFA9582830895089590910C01992300 +:1034800021F090910D01911109C020910E01309110 +:103490000F01F9013296205F3F4F1FC0982F96957C +:1034A000969596959F30F0F4E0910E01F0910F0102 +:1034B000E90FF11D877021E030E0A90102C0440F3F +:1034C000551F8A95E2F7CA018095918189238183EE +:1034D00008953196E217F30729F090819813F9CFF8 +:1034E0001082F7CF089581E090E0E0910E01F09115 +:1034F0000F01E80FF91F1082019680319105A9F79D +:1035000008959091D901892B8093D90108958095D0 +:103510009091D90189238093D90108951092D901FE +:1035200008959091D801892B8093D80108958095B2 +:103530009091D80189238093D80108951092D801E1 +:1035400008959091D701892B8093D7010895809594 +:103550009091D70189238093D70108951092D701C4 +:1035600008958093C60108951092C6010895809130 +:103570000E0190910F01FC0131969C01205F3F4F9D +:1035800080E0919191118F5FE217F307D1F70895D1 +:10359000E0910E01F0910F018091D9018083E091BB +:1035A0000E01F0910F0190818091D801892B8083C9 +:1035B000E0910E01F0910F0190818091D701892B4C +:1035C00080838091C601882361F0E0910E01F09123 +:1035D0000F019081892B80830E94B71A811110926C +:1035E000C60180910E0190910F010C94F60F20E01E +:1035F000009739F0AC0141505109842395232F5F86 +:10360000F7CF822F0895CF92DF92EF92FF926C0155 +:10361000EE24FF24C114D104E104F10421F0C70118 +:10362000B60120E101C020E0C72ED82EE92EFF24EC +:10363000C114D104E104F10419F0285FC701B601F7 +:103640006B017C0154E0F694E794D794C7945A95A3 +:10365000D1F7C114D104E104F10419F02C5FC701C2 +:10366000B6016B017C0142E0F694E794D794C794CD +:103670004A95D1F7C114D104E104F10419F02E5F89 +:10368000C701B601DC01CB01B695A7959795879543 +:10369000892B8A2B8B2B09F02F5F822FFF90EF90C5 +:1036A000DF90CF9008958091F101843021F1109244 +:1036B000DB0120E488E190E00FB6F894A8958093B0 +:1036C00060000FBE2093600080E00E94E30883B793 +:1036D000817F846083BF83B7816083BF789488953E +:1036E00083B78E7F83BF88E10FB6F8948093600024 +:1036F000109260000FBE0895089508950E947C1BEB +:103700000E944B030E947D1B0E94400491E08111A6 +:1037100001C090E0892F08950E9483140E94EA0F4F +:103720000C94E30882E084BD93E095BD9AEF97BDC9 +:1037300080936E0008952FB7F8948091DC019091EA +:10374000DD01A091DE01B091DF012FBF0895CF927E +:10375000DF92EF92FF920F931F932FB7F89440914F +:10376000DC015091DD016091DE017091DF012FBF1E +:103770006A017B01EE24FF248C0120E030E0C016BA +:10378000D106E206F30610F4415051099A01281BB4 +:10379000390BC9011F910F91FF90EF90DF90CF90EF +:1037A00008951F920F920FB60F9211248F939F933B +:1037B000AF93BF938091DC019091DD01A091DE0178 +:1037C000B091DF010196A11DB11D8093DC019093A2 +:1037D000DD01A093DE01B093DF01BF91AF919F9116 +:1037E0008F910F900FBE0F901F9018950E94E70CBD +:1037F000F8942FEF87EA91E6215080409040E1F75E +:1038000000C0000087E090EBDC018093FB01909307 +:10381000FC01A093FD01B093FE019CE088E10FB68E +:10382000F894A895809360000FBE90936000FFCF3E +:10383000EF92FF920F931F93CF93DF93D82FCDE09A +:103840008C2F0E94390405E010E0E82EF12CC7010E +:10385000002E02C0959587950A94E2F780FF09C073 +:10386000602F7C2F80E00E94F305D81302C081E016 +:1038700006C00150110958F7C15010F780E0DF91E0 +:10388000CF911F910F91FF90EF900895CF93C82F84 +:103890008CE20E94181C882321F08C2FCF910C946D +:1038A000181C80E0CF910895CF930E949B1D811139 +:1038B00002C00E94811DC5E6C15049F00E944B0321 +:1038C0008FE39CE90197F1F700C00000F5CF89E292 +:1038D0000E94461C811113C18AE20E94461C81117C +:1038E0000E94811D85E00E94461C81110E94F61BEA +:1038F0000E94A61D8093DA0187E00E94461C88235F +:10390000A9F18BE10E94461C882351F08091DA01D5 +:1039100081FB222720F991E0922790FB81F90EC0CC +:103920008EE00E94461C882361F08091DA0182FBC0 +:10393000222720F991E0922790FB82F98093DA0107 +:1039400015C080E10E94461C9091DA01882341F065 +:1039500093FB222720F981E0822780FB93F904C0A2 +:10396000892F809580FB90F99093DA018091DA019C +:103970000E94AA1D0E94B81D8093FA0180EE0E9449 +:10398000461C882341F08091FA01982F909590FB76 +:1039900080F98093FA0189E30E94461C882359F03C +:1039A0008091FA0181FB222720F991E0922790FB78 +:1039B00081F98093FA0182EE0E94461C882359F017 +:1039C0008091FA0182FB222720F991E0922790FB57 +:1039D00082F98093FA0186EE0E94461C882359F0F2 +:1039E0008091FA0183FB222720F991E0922790FB36 +:1039F00083F98093FA0183EE0E94461C882359F0D4 +:103A00008091FA0184FB222720F991E0922790FB14 +:103A100084F98093FA0185E30E94461C882359F0BB +:103A20008091FA0185FB222720F991E0922790FBF3 +:103A300085F98093FA0181E30E94461C882359F09E +:103A40008091FA0186FB222720F991E0922790FBD2 +:103A500086F98093FA0181E10E94461C882359F07F +:103A60008091FA0187FB222720F991E0922790FBB1 +:103A700087F98093FA018091FA010E94BC1D809120 +:103A8000FA0187FB882780F980930D0187E20E9465 +:103A9000461CC82F8EE10E94461C8111C2608FE136 +:103AA0000E94461C8111C46080E20E94461C811164 +:103AB000C86081E20E94461C8111C06182E20E94BE +:103AC000461C8111C06283E20E94461C8111C064C1 +:103AD00084E20E94461C882311F0C06802C0CC23F7 +:103AE00029F08C2F0E94B31D6C2F03C00E94AF1DC4 +:103AF000682F70E080E090E0CF910C944318CF9154 +:103B000008956DEE7EEF80E090E00E94ED2360E08E +:103B100082E090E00E94DB2360E083E090E00E947E +:103B2000DB2360E084E090E00E94DB2360E085E03E +:103B300090E00C94DB2380E090E00E94D52321E00C +:103B40008D3E9E4F09F020E0822F089582E090E0A4 +:103B50000C94CD23682F82E090E00C94DB2383E06B +:103B600090E00C94CD23682F83E090E00C94DB234D +:103B700084E090E00C94CD23682F84E090E00C94D6 +:103B8000DB238091E20180FF0BC06091130185E08F +:103B9000689FB001112475956795759567952BC041 +:103BA00081FF09C06091130185E0689FB001112475 +:103BB0007595679520C082FF07C06091130185E06D +:103BC000689FB001112417C09091E3019923D1F0AF +:103BD00060911201961788F72091130185E0289FC4 +:103BE00090011124929FA001939F500D112470E029 +:103BF000CA010E949F236038710540F46115710568 +:103C000039F002C065E070E0862F08958FE70895CF +:103C100081E008958091E20180FF08C06091110168 +:103C200070E0759567957595679521C081FF06C011 +:103C30006091110170E07595679519C082FF04C00D +:103C40006091110170E010C09091E3019923C1F0DF +:103C5000609110019617A0F780911101899FC00112 +:103C6000112470E00E949F236038710528F46115CB +:103C7000710521F0862F08958FE7089581E008955A +:103C800061E070E0F4CF803F21F40E94C11D819576 +:103C900004C0813F29F40E94C11D8093E60108956C +:103CA000823F21F40E94C11D819504C0833F29F405 +:103CB0000E94C11D8093E5010895893F19F40E9477 +:103CC0000A1E05C08A3F31F40E940A1E8195809326 +:103CD000E70108958B3F21F40E940A1E819504C0DC +:103CE0008C3F29F40E940A1E8093E8010895843FC6 +:103CF00021F48091E401816017C0853F21F4809117 +:103D0000E401826011C0863F21F48091E401846067 +:103D10000BC0873F21F48091E401886005C0883F93 +:103D200031F48091E40180618093E40108958D3F36 +:103D300021F48091E20181600BC08E3F21F48091DB +:103D4000E201826005C08F3F29F48091E201846026 +:103D50008093E2010895803F39F48091E60187FF66 +:103D60006CC01092E60169C0813F29F48091E601A0 +:103D70001816BCF362C09091E501823F29F497FFC9 +:103D80005CC01092E50159C0833F19F41916CCF3B9 +:103D900054C0893F41F48091E70118160CF04DC0E2 +:103DA0001092E7014AC08A3F29F48091E70187FF1A +:103DB00044C0F6CF8B3F39F48091E80187FF3DC0C6 +:103DC0001092E8013AC08C3F29F48091E80118165E +:103DD000BCF333C0843F21F48091E4018E7F17C08F +:103DE000853F21F48091E4018D7F11C0863F21F44D +:103DF0008091E4018B7F0BC0873F21F48091E40127 +:103E0000877F05C0883F31F48091E4018F7E8093E5 +:103E1000E40113C08D3F21F48091E2018E7F0BC03D +:103E20008E3F21F48091E2018D7F05C08F3F29F400 +:103E30008091E2018B7F8093E2018091E501811105 +:103E40000EC08091E60181110AC08091E7018111C5 +:103E500006C08091E801811102C01092E30108952B +:103E600084EE91E00E9401100E949B1B9093E1015F +:103E70008093E00108951F93CF93DF938091E00139 +:103E80009091E1010E94A71BAC019091E30199235D +:103E900021F02091140130E006C0209115018AE044 +:103EA000289F900111244217530708F486C080917F +:103EB000E501C091E601D091E7011091E80181117F +:103EC00007C0C11176C0D11174C0111172C075C084 +:103ED0009F3F19F09F5F9093E301181624F40E940E +:103EE000C11D8093E5018091E50187FF05C00E9417 +:103EF000C11D81958093E5011C1624F40E94C11D0B +:103F00008093E6018091E60187FF05C00E94C11DF4 +:103F100081958093E6016091E501662339F1C091B6 +:103F2000E601CC2319F1772767FD7095872F972F2E +:103F30000E94B02223E333E343E35FE30E941423B0 +:103F40000E947D226093E5016C2F772767FD7095B5 +:103F5000872F972F0E94B02223E333E343E35FE3ED +:103F60000E9414230E947D226093E6011D1624F412 +:103F70000E940A1E8093E7018091E70187FF05C038 +:103F80000E940A1E81958093E701111624F40E9475 +:103F90000A1E8093E8018091E80187FF05C00E9416 +:103FA0000A1E81958093E801DF91CF911F910C94B7 +:103FB000301F9F3F09F08ECF96CFDF91CF911F9199 +:103FC0000895E4EEF1E085E0DF011D928A95E9F7BE +:103FD0001092E3011092E2010895833081F128F4F8 +:103FE000813059F08230D1F00895853009F449C00C +:103FF000B8F1863009F456C0089580911501262F36 +:1040000030E0280F311D2F3F310524F4680F6093F5 +:10401000150108958FEF8093150108958091140183 +:10402000262F30E0280F311D2F3F310524F4680F73 +:104030006093140108958FEF809314010895809187 +:104040001301262F30E0280F311D2F3F310524F4B6 +:10405000680F6093130108958FEF80931301089503 +:1040600080911201262F30E0280F311D2F3F31059E +:1040700024F4680F6093120108958FEF809312016A +:10408000089580911101262F30E0280F311D2F3F18 +:10409000310524F4680F6093110108958FEF809328 +:1040A0001101089580911001262F30E0280F311D55 +:1040B0002F3F310524F4680F6093100108958FEFAE +:1040C000809310010895833011F128F4813049F074 +:1040D000823091F00895853081F120F18630C1F170 +:1040E000089580911501681720F4861B80931501AF +:1040F000089510921501089580911401681720F415 +:10410000861B8093140108951092140108958091E4 +:104110001301681720F4861B8093130108951092F1 +:104120001301089580911201681720F4861B809373 +:1041300012010895109212010895809111016817DB +:1041400020F4861B809311010895109211010895A7 +:1041500080911001681720F4861B80931001089548 +:104160001092100108950F931F938D3109F46BC0C5 +:1041700008F03FC08E3009F47FC0C0F4873009F4E6 +:1041800069C068F4863009F0B1C08091DA01817F9E +:104190008E7F8093DA0181E08093EA01A8C08830A5 +:1041A00009F4A2C08B3009F49FC0A0C0863109F485 +:1041B0009BC078F4803109F472C0813109F096C057 +:1041C0000E94831490910D0181E0892780930D0155 +:1041D0008BC0893109F488C08B3109F087C0809188 +:1041E000DA0181FB222720F991E0922790FB81F9E7 +:1041F0004CC0853309F470C048F4873209F46CC0B0 +:1042000008F459C0893209F467C070C0833438F4A7 +:104210008A3308F04EC0883309F466C067C083341F +:1042200009F45AC0883409F061C00E9483140FEF6A +:1042300013ED20E3015010402040E1F700C00000E2 +:104240000E94F61B51C00E9437220E94EA0F0E9472 +:10425000E3084AC09091DA01892F8095817080FB34 +:1042600090F929F0966098609093DA0140C0997FA8 +:10427000977F9093DA0138C08091DA0182FB222780 +:1042800020F991E0922790FB82F98093DA0199233B +:1042900059F18091DA0181608093DA0125C0809123 +:1042A000DA0183FB222720F991E0922790FB83F922 +:1042B000ECCF895301C08D5141E050E060E070E0E7 +:1042C0008A019B0104C0000F111F221F331F8A9512 +:1042D000D2F7C901B80104C061E070E080E090E06D +:1042E0000E9443180E94831481E001C080E01F9166 +:1042F0000F91089580E0089580E00895CF93C82F2E +:104300008091EA01813079F018F08230E9F187C0BC +:10431000E0910E01F0910F018081813169F08232CC +:1043200009F07FC009C0E0910E01F0910F0180817A +:10433000813111F0823261F48C2F0E947A21811137 +:1043400004C08C2F0E94B3201DC081E090E01AC0F1 +:104350008C2F0E947C21811114C0C43179F048F463 +:10436000CB3079F0C03109F060C082E08093EA017F +:1043700008C0C93219F0C83321F057C01092EA01C1 +:1043800054C081E0817053C0C93289F118F5C4313D +:1043900071F1A8F4C73009F046C08AE08093150196 +:1043A00094E19093140193E0909313018093120190 +:1043B00088E08093110188E28093100134C0CE51CF +:1043C000C63088F5EC2FF0E0E65DFE4F80818093EB +:1043D000E90129C0CE34E9F020F4CB3421F56AE0BC +:1043E00013C0C13579F0C235F1F461E00DC08091A0 +:1043F000E901882319F01092E90115C081E080934A +:10440000EA0115C061E006C08091E9010E94ED1F3C +:104410000AC06AE08091E9010E94632004C0109202 +:10442000EA0180E004C081E002C080E0ABCFCF9120 +:104430000895E1E8F0E08081886080838081816078 +:1044400080838FB7F89493E09093890090ED9093D8 +:1044500088008FBF0895EFE6F0E08081826080835E +:104460000895EFE6F0E080818D7F80830895EFE688 +:10447000F0E0908182E08927808308951F920F9257 +:104480000FB60F9211242F933F934F935F936F9327 +:104490007F938F939F93AF93BF93EF93FF938091FD +:1044A000EB019091EC0101969093EC018093EB016C +:1044B000811103C082E00E94E308E091EC01E695DF +:1044C000E695F0E0EC54FB4FE4918091EB018E1304 +:1044D00003C080E00E94E308FF91EF91BF91AF918C +:1044E0009F918F917F916F915F914F913F912F910C +:1044F0000F900FBE0F901F90189504D06894B111C3 +:104500008DC0089570D088F09F5790F0B92F9927EB +:10451000B751A0F0D1F0660F771F881F991F1AF0CE +:10452000BA95C9F712C0B13081F077D0B1E00895E3 +:1045300074C0672F782F8827B85F39F0B93FCCF364 +:10454000869577956795B395D9F73EF490958095C4 +:10455000709561957F4F8F4F9F4F0895E89409C0E4 +:1045600097FB3EF490958095709561957F4F8F4FA6 +:104570009F4F9923A9F0F92F96E9BB279395F695BC +:10458000879577956795B795F111F8CFFAF4BB0F3A +:1045900011F460FF1BC06F5F7F4F8F4F9F4F16C09E +:1045A000882311F096E911C0772321F09EE8872F28 +:1045B000762F05C0662371F096E8862F70E060E0E4 +:1045C0002AF09A95660F771F881FDAF7880F96955D +:1045D000879597F9089557FD9058440F551F59F046 +:1045E0005F3F71F04795880F97FB991F61F09F3FE0 +:1045F00079F087950895121613061406551FF2CF09 +:104600004695F1DF08C0161617061806991FF1CF58 +:1046100086957105610508940895E894BB2766277F +:104620007727CB0197F908950BD078C069D028F08F +:104630006ED018F0952309F05AC05FC01124EECF58 +:10464000CADFA0F3959FD1F3950F50E0551F629FED +:10465000F001729FBB27F00DB11D639FAA27F00DDB +:10466000B11DAA1F649F6627B00DA11D661F829F02 +:104670002227B00DA11D621F739FB00DA11D621FE7 +:10468000839FA00D611D221F749F3327A00D611D04 +:10469000231F849F600D211D822F762F6A2F1124E6 +:1046A0009F5750408AF0E1F088234AF0EE0FFF1F39 +:1046B000BB1F661F771F881F91505040A9F79E3F70 +:1046C000510570F014C0AACF5F3FECF3983EDCF3C5 +:1046D000869577956795B795F795E7959F5FC1F7AD +:1046E000FE2B880F911D9695879597F9089597F958 +:1046F0009F6780E870E060E008959FEF80EC089588 +:1047000000240A94161617061806090608950024B0 +:104710000A9412161306140605060895092E03942A +:10472000000C11F4882352F0BB0F40F4BF2B11F49E +:1047300060FF04C06F5F7F4F8F4F9F4F089597FBBF +:10474000072E16F4009407D077FD09D00E94B923F4 +:1047500007FC05D03EF4909581959F4F0895709584 +:1047600061957F4F0895EE0FFF1F0590F491E02DA6 +:104770000994AA1BBB1B51E107C0AA1FBB1FA617A8 +:10478000B70710F0A61BB70B881F991F5A95A9F7FA +:1047900080959095BC01CD010895F999FECF92BD09 +:1047A00081BDF89A992780B50895A8E1B0E042E06C +:1047B00050E00C94F523262FF999FECF92BD81BDD0 +:1047C000F89A019700B4021639F01FBA20BD0FB64F +:1047D000F894FA9AF99A0FBE08950196272F0E942D +:1047E000DC230C94DB23DC01CB01FC01F999FECF27 +:1047F00006C0F2BDE1BDF89A319600B40D92415069 +:0A4800005040B8F70895F894FFCF78 +:10480A000220E508730950091C09E8080101C701DB +:10481A0028080A03140A3F4D363975042804F2039E +:10482A00B9034C0365037E039703010203040506DB +:04483A000708090062 +:00000001FF diff --git a/keyboards/ergodox_ez/keymaps/default_osx/default_osx_highres.png b/keyboards/ergodox_ez/keymaps/default_osx/default_osx_highres.png new file mode 100644 index 0000000000..04f46bbd54 Binary files /dev/null and b/keyboards/ergodox_ez/keymaps/default_osx/default_osx_highres.png differ diff --git a/keyboards/ergodox_ez/keymaps/default_osx/keymap.c b/keyboards/ergodox_ez/keymaps/default_osx/keymap.c new file mode 100644 index 0000000000..c57ffbb889 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/default_osx/keymap.c @@ -0,0 +1,187 @@ +// Netable differences vs. the default firmware for the ErgoDox EZ: +// 1. The Cmd key is now on the right side, making Cmd+Space easier. +// 2. The media keys work on OSX (But not on Windows). +#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 + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | = | 1 | 2 | 3 | 4 | 5 | LEFT | | RIGHT| 6 | 7 | 8 | 9 | 0 | - | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Del | Q | W | E | R | T | L1 | | L1 | Y | U | I | O | P | \ | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | BkSp | A | S | D | F | G |------| |------| H | J | K | L |; / L2| LGui | + * |--------+------+------+------+------+------| Hyper| | Meh |------+------+------+------+------+--------| + * | LShift |Z/Ctrl| X | C | V | B | | | | N | M | , | . |//Ctrl| RShift | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * |Grv/L1| '" |AltShf| Left | Right| | Up | Down | [ | ] | ~L1 | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | App | LGui | | Alt |Ctrl/Esc| + * ,------|------|------| |------+--------+------. + * | | | Home | | PgUp | | | + * | Space|Backsp|------| |------| Tab |Enter | + * | |ace | End | | PgDn | | | + * `--------------------' `----------------------' + */ +// If it accepts an argument (i.e, is a function), it doesn't need KC_. +// Otherwise, it needs KC_* +[BASE] = KEYMAP( // layer 0 : default + // left hand + KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, KC_LEFT, + KC_DELT, KC_Q, KC_W, KC_E, KC_R, KC_T, TG(SYMB), + KC_BSPC, KC_A, KC_S, KC_D, KC_F, KC_G, + KC_LSFT, CTL_T(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, + ALT_T(KC_APP), KC_LGUI, + KC_HOME, + KC_SPC,KC_BSPC,KC_END, + // right hand + KC_RGHT, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, + TG(SYMB), 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_LGUI, + 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), + KC_PGUP, + KC_PGDN,KC_TAB, KC_ENT + ), +/* Keymap 1: Symbol Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | ! | @ | { | } | | | | | | Up | 7 | 8 | 9 | * | F12 | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | # | $ | ( | ) | ` |------| |------| Down | 4 | 5 | 6 | + | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | % | ^ | [ | ] | ~ | | | | & | 1 | 2 | 3 | \ | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | . | 0 | = | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// SYMBOLS +[SYMB] = KEYMAP( + // left hand + KC_TRNS,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, + KC_TRNS,KC_EXLM,KC_AT, KC_LCBR,KC_RCBR,KC_PIPE,KC_TRNS, + KC_TRNS,KC_HASH,KC_DLR, KC_LPRN,KC_RPRN,KC_GRV, + KC_TRNS,KC_PERC,KC_CIRC,KC_LBRC,KC_RBRC,KC_TILD,KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS, + KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS, + // right hand + KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + KC_TRNS, KC_UP, KC_7, KC_8, KC_9, KC_ASTR, KC_F12, + KC_DOWN, KC_4, KC_5, KC_6, KC_PLUS, KC_TRNS, + KC_TRNS, KC_AMPR, KC_1, KC_2, KC_3, KC_BSLS, KC_TRNS, + KC_TRNS,KC_DOT, KC_0, KC_EQL, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), +/* Keymap 2: Media and mouse keys + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | MsUp | | | | | | | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | |MsLeft|MsDown|MsRght| |------| |------| | | | | | Play | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | | Prev | Next | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | Lclk | Rclk | |VolUp |VolDn | Mute | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | |Brwser| + * | | |------| |------| |Back | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// MEDIA AND MOUSE +[MDIA] = KEYMAP( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_BTN1, KC_BTN2, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + // right hand + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, + KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, + KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_WBAK +), +}; + +const uint16_t PROGMEM fn_actions[] = { + [1] = ACTION_LAYER_TAP_TOGGLE(SYMB) // FN1 - Momentary Layer 1 (Symbols) +}; + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + // MACRODOWN only works in this function + switch(id) { + case 0: + if (record->event.pressed) { + register_code(KC_RSFT); + } else { + unregister_code(KC_RSFT); + } + break; + } + return MACRO_NONE; +}; + +// Runs just one time when the keyboard initializes. +void matrix_init_user(void) { + +}; + +// Runs constantly in the background, in a loop. +void matrix_scan_user(void) { + + uint8_t layer = biton32(layer_state); + + ergodox_board_led_off(); + ergodox_right_led_1_off(); + ergodox_right_led_2_off(); + ergodox_right_led_3_off(); + switch (layer) { + // TODO: Make this relevant to the ErgoDox EZ. + case 1: + ergodox_right_led_1_on(); + break; + case 2: + ergodox_right_led_2_on(); + break; + default: + // none + break; + } + +}; diff --git a/keyboards/ergodox_ez/keymaps/default_osx/readme.md b/keyboards/ergodox_ez/keymaps/default_osx/readme.md new file mode 100644 index 0000000000..aa749aac90 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/default_osx/readme.md @@ -0,0 +1,8 @@ +# The OSX Friendly Version of the Default Firmware + +So, I took the default firmware and just made a couple of tweaks that make it easier to use with OS X: + +1. The Cmd key is now on the right side, making Cmd+Space easier. +2. The media keys work on OSX (But not on Windows). + +![default osx](default_osx_highres.png) diff --git a/keyboards/ergodox_ez/keymaps/dragon788/compiled.hex b/keyboards/ergodox_ez/keymaps/dragon788/compiled.hex new file mode 100644 index 0000000000..e46a5054b5 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/dragon788/compiled.hex @@ -0,0 +1,1169 @@ +:100000000C94CE020C9412030C9412030C94120361 +:100010000C9412030C9412030C9412030C9412030C +:100020000C9412030C9412030C94B60D0C94880ECD +:100030000C9412030C9412030C9412030C941203EC +:100040000C9412030C9492220C9412030C9412033D +:100050000C9412030C94251C0C9412030C941203A0 +:100060000C9412030C9412030C9412030C941203BC +:100070000C9412030C9412030C9412030C941203AC +:100080000C9412030C9412030C9412030C9412039C +:100090000C9412030C9412030C9412030C9412038C +:1000A0000C9412030C9412030C941203F50E170F08 +:1000B0000510170F05105C0F7F0F0510D40FE70F09 +:1000C000B612B612E512E5121B133B136C146C1436 +:1000D00046136C14F613F6135D146C146C1466144A +:1000E0000314031403140314031403140314031458 +:1000F0000314031403140314031403140314031448 +:1001000015142214291430143A140000F0A12E0002 +:100110002B002971E100C10000001E001400040042 +:100120001D003500E2001F001A0016001B003400FD +:100130004C00200008000700060050002A002100A3 +:100140001500090019004F424D00220017000A0057 +:10015000050000006500E30001540000007F00007E +:100160004A00035402540000007700004B002300B3 +:100170001C000B00110000002971240018000D0064 +:10018000100052424E0025000C000E0036005100B7 +:100190002C00260012000F0037002F002800270037 +:1001A00013003300380030002B712D003100347102 +:1001B000E500C10000000100010001000100010094 +:1001C00000003A001E0220022202010001003B0052 +:1001D0001F0221022302010001003C002F0226021F +:1001E0002F00010001003D00300227023000010015 +:1001F00001003E003102350035020000010001001F +:1002000001000000010000000100010001000000E9 +:100210000100000001003F005200510024020000D4 +:10022000B2004000240021001E0001000100410036 +:10023000250022001F003700010042002600230095 +:10024000200027000100430025022E0231002E006D +:1002500001004400450001000100010000000050C1 +:100260000100010001000100000001000100010087 +:1002700001000100AB0001000100F20001000100DB +:10028000F5000100F500F00001000100F40001009C +:10029000F400F10001000100AE0001000100F300D4 +:1002A0000100000001000100010000000100000049 +:1002B000AC0001000100000001000000A9000100E5 +:1002C0000100F2000100000001000100F400F10053 +:1002D00001000100A8000100F500F000010001008C +:1002E000B70001000100F30001000100B6000100A9 +:1002F0000100010001000100AA000100010001004D +:1003000001000100000000000000000000000000EB +:10031000000000001E0014000400000000000000A7 +:100320001F001A001600000019000000200008003D +:100330000700000006000000210015000900000071 +:1003400000000000220017000A000000C4000000A6 +:10035000000000000000000000000100000000009C +:10036000000000000100000023001C000B00000042 +:1003700001000000240018000D0001000100000031 +:1003800025000C000E0001001000000026001200E5 +:100390000F000000110000002700130033000000D0 +:1003A0000000010001002F003400000000001603CF +:1003B0004500720067006F0044006F007800200065 +:1003C00045005A00000016034500720067006F00E8 +:1003D00044006F007800200045005A00000004032C +:1003E000090409026D00040100A0FA0904000001DB +:1003F00003010100092111010001223F00070581CD +:100400000308000A09040100010301020009211187 +:10041000010001224D000705820308000A090402B9 +:10042000000103000000092111010001223600072C +:1004300005830308000A0904030001030000000902 +:100440002111010001223900070584031000011267 +:1004500001100100000008EDFE0713010001020079 +:100460000105010906A101050719E029E715002585 +:100470000195087501810205081901290595057581 +:10048000019102950175039101050719002977155E +:10049000002501957875018102C005010980A1013F +:1004A000850216010026B7001A01002AB700751050 +:1004B00095018100C0050C0901A101850316010009 +:1004C000269C021A01002A9C02751095018100C029 +:1004D00005010902A1010901A10005091901290568 +:1004E00015002501950575018102950175038101AE +:1004F0000501093009311581257F950275088106AE +:1005000009381581257F950175088106050C0A3883 +:10051000021581257F950175088106C0C005010976 +:1005200006A101050719E029E715002501950875C1 +:1005300001810295017508810105081901290595B8 +:1005400005750191029501750391010507190029AF +:10055000FF150025FF950675088100C0000000000A +:1005600000000000000000010204060A0F17202C02 +:100570003A4A5D71879DB3C7DAE9F5FCFFFCF5E9FE +:10058000DAC7B39D87715D4A3A2C20170F0A06041B +:1005900002010000000000000000000011241FBE46 +:1005A000CFEFDAE0DEBFCDBF04B603FE24C08091FA +:1005B000FB019091FC01A091FD01B091FE018730FB +:1005C000904BA740B04BB9F41092FB011092FC0184 +:1005D0001092FD011092FE0114BE84B7877F84BF84 +:1005E00088E10FB6F89480936000109260000FBE0F +:1005F000E0E0FFE3099511E0A0E0B1E0E2EBF8E410 +:1006000002C005900D92A433B107D9F711E0A4E31D +:10061000B1E001C01D92AB3FB107E1F70E94FA0AB9 +:100620000C9457240C9400001092B9008AE0809337 +:10063000B800089594EA9093BC009091BC0097FF95 +:10064000FCCF9091B900987F983021F0903111F053 +:1006500081E008958093BB0084E88093BC00809182 +:10066000BC0087FFFCCF8091B900887F883111F0F2 +:10067000803471F780E0089584E98093BC00809114 +:10068000BC0084FDFCCF08958093BB0084E8809378 +:10069000BC008091BC0087FFFCCF9091B900987F8F +:1006A00081E0983209F480E0089584E88093BC00EA +:1006B0008091BC0087FFFCCF8091BB0008958091A2 +:1006C0000101811115C080E40E941A038093010189 +:1006D00081110CC082E10E944403809301018111C9 +:1006E00005C08FEF0E944403809301010E943C03E8 +:1006F00084B1807F84B985B1807F85B98AB1837FD9 +:100700008AB98BB1837F8BB93E98469808950E9431 +:100710001A05809301010E945F0380B38C7080BB37 +:1007200081B3836F81BBA5E3B1E0E3E4F1E08EE048 +:100730008E0F11921D928E13FCCF0C940405BF9264 +:10074000CF92DF92EF92FF920F931F93CF93DF939D +:1007500080910101882379F0809134018F5F80932B +:100760003401811108C00E941A0580930101811192 +:1007700002C00E94AC0405E311E0C0E0D0E0DD243B +:10078000D39482E0C82EEE24E394F12CC730D10537 +:1007900000F580910101811164C080E40E941A0378 +:1007A00080930101811112C082E10E944403809371 +:1007B000010181110BC0C7010C2E01C0880F0A94E2 +:1007C000EAF780950E944403809301010E943C0354 +:1007D00048C0CA30A1F028F4C83059F0C93061F0DF +:1007E00005C0CC3089F070F0CD3089F0209A28987F +:1007F00010C0219A29980DC0229A2A980AC0239ADB +:100800002B9807C0529A01C0539A5B9802C03E9A37 +:10081000469890EA9A95F1F79FB1799902C082E0E3 +:1008200001C080E091709D25982B7C9902C084E0E6 +:1008300001C080E0892B7D9902C038E001C030E022 +:10084000832B7E9902C020E101C020E0822B9FB162 +:100850009095991F9927991F9295990F907E892BB2 +:100860000FC080910101811149C080E40E941A03E8 +:1008700080930101882379F1B12C0E943C038B2DD8 +:10088000F8019081981719F08083C09200010E94AE +:100890005F0321960F5F1F4FCE30D10509F076CF51 +:1008A00080910001882361F18150809300018823A9 +:1008B00039F08FE99FE00197F1F700C0000020C0F8 +:1008C000A3E4B1E0E5E3F1E0CF01825F91919D9374 +:1008D0008E13FCCF15C083E10E9444038093010175 +:1008E0008111CACF81E40E941A0380930101811112 +:1008F000C3CF0E945503B82EB094BFCF80E0C0CFC5 +:100900000E94AA0481E0DF91CF911F910F91FF9087 +:10091000EF90DF90CF90BF900895E82FF0E0ED5B6F +:10092000FE4F8081089508950F931F93CF93DF9317 +:10093000C3E4D1E010E00C2F025F899190E00E94A7 +:100940004B1B180F0C13F9CF812FDF91CF911F9103 +:100950000F9108950C947A0556985E9825982D98D5 +:1009600026982E9827982F988FEF90E090938900E3 +:100970008093880090938B0080938A0090938D00E1 +:1009800080938C00259A2D9A2FEF80E792E02150DA +:1009900080409040E1F700C00000269A2E9A2FEF89 +:1009A00080E792E0215080409040E1F700C00000D5 +:1009B000279A2F9A2FEF80E792E0215080409040B5 +:1009C000E1F700C0000025982D982FEF80E792E016 +:1009D000215080409040E1F700C0000026982E98FA +:1009E0002FEF80E792E0215080409040E1F700C077 +:1009F000000027982F9856985E9825982D9826984D +:100A00002E9827982F98089589EA8093800089E08E +:100A10008093810024982C983F988AB18F748AB96A +:100A20006E98479A8BB1806B8BB9769A0E94AC0412 +:100A30000C94790580E2809301018091510181112C +:100A40000EC00E94140381E0809351012FEF83EDCB +:100A500090E3215080409040E1F700C0000080E426 +:100A60000E941A038093010181112EC00E94440349 +:100A700080930101811128C00E94440380930101E9 +:100A8000811122C08FE30E944403809301018111F0 +:100A90001BC00E943C0380E40E941A038093010162 +:100AA000811112C08CE00E944403809301018111E6 +:100AB0000BC00E94440380930101811105C08FE3A4 +:100AC0000E944403809301010E943C038091010134 +:100AD000089561110BC0FC018281882321F085EE0D +:100AE0000E945A1103C085EE0E94221280E090E01D +:100AF000089508956091BD017091BE018091BF017C +:100B00009091C0010E94571B56985E9825982D9889 +:100B100026982E9827982F98813019F0823021F04E +:100B20000895259A2D9A0895269A2E9A089581E07F +:100B3000089581E008950C94990508950F931F93EB +:100B4000CF93DF938C01FC01C081D181CE010E9443 +:100B5000D019BE010E944706EC01B8010E949B0516 +:100B6000882309F48DC0F8018281882309F44AC0E2 +:100B700080915D0181111FC0C431F0E5DF0709F0EC +:100B800051C00E949D0581E080935D010E94EF1B92 +:100B900090935C0180935B01109254011092560176 +:100BA00010925501109258011092570110925A015B +:100BB0001092590165C080915B0190915C010E9487 +:100BC000FB1B883C910570F480915401E82FF0E004 +:100BD000EE0FFF1FEB5AFE4FD183C0838F5F8093D0 +:100BE00054014EC0C43880E5D80721F0C538D0453F +:100BF00001F13AC0F8018281882341F0109252013C +:100C000082E01EC0C438E0E5DE0759F5809152014C +:100C1000811106C086E20E945A1186E20E942212C9 +:100C200082E01CC0C438F0E5DF0741F3C538D04589 +:100C3000D9F4F8018281882331F01092530180E2C7 +:100C40000E9471121DC080915301811106C087E27C +:100C50000E945A1187E20E94221280E20E947812BA +:100C60000FC0C538D04529F381E0809352018093AD +:100C70005301C801DF91CF911F910F910C949705FB +:100C800080E0DF91CF911F910F910895089596E034 +:100C9000799FF001112494E5899FE00DF11D112445 +:100CA000E60FF11DEE0FFF1FE25FFE4F859194915D +:100CB0000895880F991FFC01E657F04085919491A3 +:100CC0000895880F991FFC01E65FFE4F859194916E +:100CD00008950F931F93CF93DF93EC01811520E3C9 +:100CE000920750F5C11580E2D80708F0C3C0CB3B8E +:100CF000D10590F4C83AD10508F06AC0C53AD105CB +:100D000008F05BC0C430D10508F0D0C1219709F0CC +:100D1000CAC101E010E00AC2CF3FD10511F008F0CE +:100D2000C5C1C03FD10508F0A2C0CE01805E9109C7 +:100D3000089708F4BBC1B7C1C13090E5D90709F4E1 +:100D4000A2C020F5C0318FE4D80770F4C11590E43B +:100D5000D90708F094C0C11521E3D20708F0A3C158 +:100D6000DD278E01106CE2C1C115D04509F09BC191 +:100D70000E94D7148FEF94E32CE0815090402040E4 +:100D8000E1F700C000000E944A1CD0C1C11597E5E0 +:100D9000D90758F4C03121E5D20708F01CC1C4318D +:100DA00080E5D80708F475C07EC1CE019057811543 +:100DB000904108F078C1DF7073C1C53AD10509F4DC +:100DC00077C1C63AD10509F076C102E810E4AEC198 +:100DD000C83AD10509F472C1C93AD10509F471C103 +:100DE000CA3AD10509F470C1CB3AD10509F46FC1F3 +:100DF000CC3AD10509F46EC1CD3AD10509F46DC1E3 +:100E0000C03BD10509F46CC1CE3AD10509F46BC1E0 +:100E1000CF3AD10509F46AC1C13BD10509F469C1D2 +:100E2000C23BD10509F468C1C33BD10509F467C1D0 +:100E3000C43BD10509F466C1C53BD10509F465C1C0 +:100E4000C63BD10509F464C1C73BD10509F463C1B0 +:100E5000C83BD10509F462C1C93BD10509F461C1A0 +:100E6000CA3BD10509F460C100E014E45FC18E0102 +:100E700010655CC1CE019F700E94610658C1DF7091 +:100E80008E01106A53C18091DA0181608093DA018A +:100E90004DC10E94EF1D811102C00E94D51D0E940C +:100EA0000C1E90E09093FB018093FA01C23080E524 +:100EB000D80721F48091FA01816086C0C43090E5A2 +:100EC000D90721F48091FA0182607EC0C63020E506 +:100ED000D20721F48091FA01846076C0C83080E5A1 +:100EE000D80719F48091FA0127C0CA3090E5D907D4 +:100EF00021F48091FA01806167C0CC3020E5D207EF +:100F000021F48091FA0180625FC0CE3080E5D8077D +:100F100021F48091FA01806457C0C03190E5D9076F +:100F200021F48091FA0180684FC0C23120E5D207D8 +:100F300029F48091FA018460886046C0C33080E55E +:100F4000D80721F48091FA018E7F3EC0C53090E52C +:100F5000D90721F48091FA018D7F36C0C73020E592 +:100F6000D20721F48091FA018B7F2EC0C93080E531 +:100F7000D80719F48091FA0126C0CB3090E5D90743 +:100F800021F48091FA018F7E1FC0CD3020E5D20779 +:100F900021F48091FA018F7D17C0CF3080E5D8070A +:100FA00021F48091FA018F7B0FC0C13190E5D90700 +:100FB00021F48091FA018F7707C0C331D04531F415 +:100FC0008091FA018B7F877F8093FA018091FA01EB +:100FD0000E94101EABC08D2F99278F7099278130EA +:100FE0009105D9F49E012370332702C0880F991F01 +:100FF0002A95E2F79C688E0144E0000F111F4A9584 +:10100000E1F700271370802B912B53E0CC0FDD1FED +:101010005A95E1F7C076DD272FC08230910531F473 +:10102000DC2FCC278E01016F106A80C083309105C0 +:1010300069F4CE018370992701E010E002C0000F2F +:10104000111F8A95E2F7C8019C680FC08430910592 +:10105000B9F4CE018370992701E010E002C0000FBF +:10106000111F8A95E2F7C8019A6823E0CC0FDD1FB3 +:101070002A95E1F7C07ED7708C010C2B1D2B56C032 +:101080008530910531F4DC2FCC278E01046F106A76 +:101090004DC0069709F04AC0CF71DD27DC2FCC2761 +:1010A0008E01106243C000E010E040C08E013EC0DF +:1010B00001E810E43BC003E810E438C002EE14E499 +:1010C00035C009EE14E432C00AEE14E42FC005EB7B +:1010D00014E42CC006EB14E429C007EB14E426C08A +:1010E0000CEC14E423C00DEC14E420C003E815E478 +:1010F0001DC00AE815E41AC002E915E417C004E9A6 +:1011000015E414C001E216E411C003E216E40EC0B7 +:1011100004E216E40BC005E216E408C006E216E499 +:1011200005C007E216E402C00AE216E4C801DF9136 +:10113000CF911F910F91089596E0799FF0011124AE +:1011400094E5899FE00DF11D1124E60FF11DEE0FCE +:10115000FF1FE25FFE4F85919491803E9105E0F480 +:10116000803C910558F58133910509F46FC048F42E +:101170008932910509F463C08A32910509F46DC082 +:1011800072C089339105E9F082389105D1F0853339 +:10119000910509F44DC067C0833E910581F138F493 +:1011A000803E9105B9F0823E9105D9F05CC0863E43 +:1011B000910561F1873E9105A1F155C00E94590644 +:1011C00008952091FA0120FD02C021FF4CC080EE5D +:1011D00090E049C08091FA0180FFF9CF89E390E067 +:1011E00042C08091FA0182FF0EC08091FA0184FF13 +:1011F00003C080E090E037C083EE90E034C080917F +:10120000FA0182FFF2CF82EE90E02DC08091FA01C8 +:1012100083FF0BC08091FA0184FDEBCF87EE90E055 +:1012200022C08091FA0183FFF5CF86EE90E01BC0CB +:101230008091FA0185FF07C089E290E014C0809197 +:10124000FA0185FFF9CF85E390E00DC08091FA01A6 +:1012500086FF07C08AE290E006C08091FA0186FF0F +:10126000F9CF81E390E00E946906089508950C94F7 +:10127000360980916E010895CF93DF9300D01F92BD +:10128000CDB7DEB79C018091F101843019F593E070 +:1012900099833B832A839093E9008FEF9091E80034 +:1012A000815095FD06C095ED9A95F1F700008111EA +:1012B000F5CF8091E80085FF0DC040E050E063E08D +:1012C00070E0CE0101960E94A60B8091E8008E7717 +:1012D0008093E8000F900F900F90DF91CF910895C9 +:1012E000CF93DF9300D01F92CDB7DEB72091F101ED +:1012F000243021F522E029839B838A8383E0809335 +:10130000E9008FEF9091E800815095FD06C095EDC2 +:101310009A95F1F700008111F5CF8091E80085FFE3 +:101320000DC040E050E063E070E0CE0101960E9405 +:10133000A60B8091E8008E778093E8000F900F90C5 +:101340000F90DF91CF9108952091F1012430F1F4B5 +:1013500022E02093E9002FEF3091E800215035FD85 +:1013600006C035ED3A95F1F700002111F5CF209137 +:10137000E80025FF0BC040E050E065E070E00E940F +:10138000A60B8091E8008E778093E8000895CF93B4 +:10139000DF93EC019091F101943009F046C0809107 +:1013A0000C018823D9F080910D018823B9F0909326 +:1013B000E9008FEF9091E800815095FD06C095E11E +:1013C0009A95F1F700008111F5CF8091E80085FF33 +:1013D0002CC040E050E060E170E017C081E08093F5 +:1013E000E9008FEF9091E800815095FD06C095EDE2 +:1013F0009A95F1F700008111F5CF8091E80085FF03 +:1014000014C040E050E068E070E0CE010E94A60BFE +:101410008091E8008E778093E80080E1FE01AEE5E0 +:10142000B1E001900D928A95E1F7DF91CF91089597 +:101430008091F001811109C00E943B0D0E94980D1E +:101440008091E20084608093E20008951092F001A0 +:10145000089508950C947F220E94E01B0E9485222B +:101460000E943E100C94370942E061EC81E00E943A +:10147000B50C42E061EC82E00E94B50C42E061EC08 +:1014800083E00E94B50C42E161EC84E00C94B50C61 +:101490008091F301833009F455C030F4813071F04C +:1014A000823009F48EC008958A3009F47AC08B30F6 +:1014B00009F460C0893009F09CC020C08091F2011D +:1014C000813A09F096C08091E800877F8093E80018 +:1014D0008091F6019091F701892B21F460E18EE56E +:1014E00091E003C060E080E090E070E00E94F10BCA +:1014F0008091E8008B778093E80008958091F20155 +:10150000813209F076C08091F6019091F701009741 +:1015100019F0039709F06DC08091E800877F8093F0 +:10152000E8008091E80082FD05C08091F101811101 +:10153000F8CF5FC08091F10080936E018091E80048 +:101540008B7753C08091F201813A09F052C08091AB +:10155000F6019091F701892B09F04BC08091E800CA +:10156000877F8093E8008091E80080FFFCCF809126 +:101570000C0136C08091F2018132D9F58091F601DB +:101580009091F701892BA9F58091E800877F8093DE +:10159000E8000E94EA0C8091F40180930C010C9405 +:1015A000D7148091F201813221F58091E800877F84 +:1015B0008093E8000E94EA0C8091F50180936F010E +:1015C00008958091F201813AA1F48091E800877F2B +:1015D0008093E8008091E80080FFFCCF80916F014C +:1015E0008093F1008091E8008E778093E8000C945E +:1015F000EA0C089584B7877F84BF88E10FB6F8941A +:1016000080936000109260000FBE90E080E80FB6FB +:10161000F89480936100909361000FBE0E948D103A +:101620000E943B0D0E94980D8091E200846080939F +:10163000E20078940E941E100E948F1082E091E0D8 +:101640000E9439100E946D228091F101853069F469 +:101650000E94A71B8091EF018823B1F30E94D21B47 +:10166000882391F30E94900BEFCF0E949510ECCF4E +:10167000292F332723303105C9F064F42130310597 +:1016800081F02230310509F043C08DE690E022EE72 +:1016900033E042C021323105F1F02232310541F10F +:1016A00037C082E190E02FE434E036C099278130E2 +:1016B000910541F08230910541F0892B49F5EEED1D +:1016C000F3E005C0E6ECF3E002C0EEEAF3E084915B +:1016D00090E09F0121C06430D8F4E62FF0E0EE0FD7 +:1016E000FF1FEE5DFE4F2081318189E090E014C044 +:1016F000643070F470E0FB01EE0FFF1FE65EFE4FFA +:1017000020813181FB01EA5EFE4F808190E004C0C0 +:1017100080E090E020E030E0FA01318320830895FA +:1017200080E189BD82E189BD09B400FEFDCF8091D1 +:10173000D8008F7D8093D8008091E00082608093F4 +:10174000E0008091E00081FDFCCF0895CF92DF9210 +:10175000EF92FF920F931F93CF93DF93EC018B01D6 +:101760006A010E94090D811133C0C114D10439F0FE +:10177000F60180819181081B190BC80FD91FE12C3C +:10178000F12C0115110519F18091E80085FD16C0B5 +:101790008091E8008E778093E800C114D10449F06D +:1017A000F60180819181E80EF91EF182E08285E0E8 +:1017B0000FC00E94090D882321F30AC089918093EC +:1017C000F10001501109FFEFEF1AFF0ADACF80E0B4 +:1017D000DF91CF911F910F91FF90EF90DF90CF900D +:1017E00008952091F8013091F9012617370748F044 +:1017F0006115710539F42091E8002E772093E800F7 +:1018000001C0B90140E061157105A9F12091F10114 +:10181000222309F443C0253009F442C02091E80096 +:1018200023FD40C02091E80022FD32C02091E80055 +:1018300020FFE9CF4091F3002091F20030E0342BFB +:10184000FC01CF016115710559F02830310540F4D4 +:1018500081918093F100615071092F5F3F4FF1CF6B +:1018600041E02830310509F040E02091E8002E7772 +:101870002093E800C8CF4111C9CF0AC08091F1017F +:10188000882361F0853061F08091E80083FD0AC013 +:101890008091E80082FFF2CF80E0089582E0089511 +:1018A00083E0089581E008952091F8013091F901D5 +:1018B0002617370748F06115710539F42091E800C3 +:1018C0002E772093E80001C0B901FC0120E06115EA +:1018D000710591F18091F101882309F440C08530B0 +:1018E00009F43FC08091E80083FD3DC08091E8008D +:1018F00082FD2FC08091E80080FFE9CF2091F300A6 +:101900008091F20090E0922B6115710559F08830BA +:10191000910540F424912093F100319661507109B2 +:101920000196F2CF21E0089709F020E08091E800CD +:101930008E778093E800CBCF2111CCCF0AC0809165 +:10194000F101882361F0853061F08091E80083FD2A +:101950000AC08091E80082FFF2CF80E0089582E023 +:10196000089583E0089581E00895982F973058F501 +:101970009093E900981739F07091EC002091ED00F8 +:101980005091F00003C0242F762F50E021FF19C0A2 +:101990003091EB003E7F3093EB003091ED003D7FC6 +:1019A0003093ED003091EB0031603093EB00709399 +:1019B000EC002093ED005093F0002091EE0027FF03 +:1019C00007C09F5FD3CF8F708093E90081E00895B7 +:1019D00080E008958091F20187FF11C08091E800B6 +:1019E00082FD05C08091F1018111F8CF11C0809175 +:1019F000E8008B770BC08091F101882349F080913A +:101A0000E80080FFF8CF8091E8008E778093E800AF +:101A100008952091E4003091E50095E64091EC00B6 +:101A2000842F817040FF22C08091E80080FD1CC09F +:101A30008091F101882391F0853091F08091EB0045 +:101A400085FD10C04091E4005091E5004217530716 +:101A500029F39A01915011F784E0089582E00895E6 +:101A600083E0089581E0089580E008954091E800C2 +:101A700042FFDECF08950E94A90D0E94B10DE0EE55 +:101A8000F0E0808181608083E8EDF0E080818F77F5 +:101A9000808319BCA7EDB0E08C918E7F8C93808100 +:101AA0008F7E80831092F00108950F931F93CF9340 +:101AB000DF930E94A90D0E94B10DC8EDD0E088818E +:101AC0008F77888388818068888388818F7D8883E9 +:101AD00019BC1092F1011092ED011092EF011092D9 +:101AE000EE0100EE10E0F80180818B7F8083888119 +:101AF0008160888342E060E080E00E94B50CE1EE06 +:101B0000F0E080818E7F8083E2EEF0E08081816072 +:101B10008083808188608083F80180818E7F8083CC +:101B2000888180618883DF91CF911F910F91089503 +:101B3000E8EDF0E080818F7E8083E7EDF0E080814A +:101B40008160808384E082BF81E08093F0010C9407 +:101B5000550DE8EDF0E080818E7F80831092E200E9 +:101B600008951092DA001092E10008951F920F92EA +:101B70000FB60F9211242F933F934F935F936F9360 +:101B80007F938F939F93AF93BF93EF93FF93809136 +:101B9000E10082FF0BC08091E20082FF07C08091CC +:101BA000E1008B7F8093E1000E941D108091DA009C +:101BB00080FF1FC08091D80080FF1BC08091DA0099 +:101BC0008E7F8093DA008091D90080FF0DC080E184 +:101BD00089BD82E189BD09B400FEFDCF81E080931B +:101BE000F1010E94180A05C019BC1092F1010E946F +:101BF000260A8091E10080FF19C08091E20080FFF9 +:101C000015C08091E2008E7F8093E2008091E20017 +:101C100080618093E2008091D80080628093D80038 +:101C200019BC85E08093F1010E942A0A8091E100AD +:101C300084FF30C08091E20084FF2CC080E189BD28 +:101C400082E189BD09B400FEFDCF8091D8008F7D6F +:101C50008093D8008091E1008F7E8093E100809195 +:101C6000E2008F7E8093E2008091E20081608093A9 +:101C7000E2008091ED01882311F084E007C080919B +:101C8000E30087FD02C081E001C083E08093F101A1 +:101C90000E942C0A8091E10083FF29C08091E2001C +:101CA00083FF25C08091E100877F8093E10082E07F +:101CB0008093F1011092ED018091E1008E7F80937D +:101CC000E1008091E2008E7F8093E2008091E2004B +:101CD00080618093E20042E060E080E00E94B50C09 +:101CE0008091F00088608093F0000E94290AFF91A3 +:101CF000EF91BF91AF919F918F917F916F915F9184 +:101D00004F913F912F910F900FBE0F901F901895FC +:101D10001F920F920FB60F9211242F933F934F9360 +:101D20005F936F937F938F939F93AF93BF93CF9363 +:101D3000DF93EF93FF93C091E900CF708091EC00A7 +:101D4000D82FD17080FDD0E81092E9008091F0008A +:101D5000877F8093F00078940E94CC0E1092E90067 +:101D60008091F00088608093F000CD2BCF70C093FD +:101D7000E900FF91EF91DF91CF91BF91AF919F91DA +:101D80008F917F916F915F914F913F912F910F9024 +:101D90000FBE0F901F9018951F93CF93DF93CDB771 +:101DA000DEB7AA970FB6F894DEBF0FBECDBFE2EF45 +:101DB000F1E088E08E0F9091F10091938E13FBCFAC +:101DC0000E94480A8091E80083FF1FC18091F201C0 +:101DD0009091F301492F50E04A30510508F015C1A8 +:101DE000FA01EA5AFF4F0C940724803881F08238B8 +:101DF00009F00BC18091F6018F708093E90080910A +:101E0000EB0085FB882780F91092E90006C08091DD +:101E1000EE019091EF01911182609091E800977F1F +:101E20009093E8008093F1001092F100C8C0282F31 +:101E30002D7F09F0EAC0882319F0823061F0E5C0F7 +:101E40008091F401813009F0E0C0933009F080E026 +:101E50008093EF012BC08091F401811127C0809104 +:101E6000F6018F7009F4D1C08093E9002091EB0056 +:101E700020FF1CC0933021F48091EB00806214C0DD +:101E80009091EB0090619093EB0021E030E0A9018C +:101E900002C0440F551F8A95E2F74093EA00109262 +:101EA000EA008091EB0088608093EB001092E900DB +:101EB0008091E800877F86C08111A7C01091F4014E +:101EC0001F778091E3008078812B8093E3008091DD +:101ED000E800877F8093E8000E94EA0C8091E80088 +:101EE00080FFFCCF8091E30080688093E3001111B4 +:101EF00002C082E001C083E08093F10186C0805877 +:101F0000823008F082C08091F4019091F5018C3DFF +:101F100053E0950779F583E08A838AE289834FB796 +:101F2000F894DE01139620E03EE051E2E32FF0E06A +:101F300050935700E49120FF03C0E295EF703F5F9C +:101F4000EF708E2F90E0EA3010F0C79601C0C09677 +:101F50008D939D932F5F243149F74FBF8091E80007 +:101F6000877F8093E8006AE270E0CE0101960E94CC +:101F7000F10B14C0AE014F5F5F4F6091F6010E94FC +:101F8000380BBC01009709F440C09091E800977F9E +:101F90009093E80089819A810E94540C8091E80016 +:101FA0008B778093E80031C0803879F58091E80024 +:101FB000877F8093E8008091ED018093F10080910C +:101FC000E8008E778093E8000E94EA0C1EC0811121 +:101FD0001CC09091F4019230C0F48091E800877F9A +:101FE0008093E8009093ED010E94EA0C8091ED014E +:101FF000811106C08091E30087FD02C081E001C02D +:1020000084E08093F1010E94340A8091E80083FF0C +:102010000AC08091E800877F8093E8008091EB0000 +:1020200080628093EB00AA960FB6F894DEBF0FBED5 +:10203000CDBFDF91CF911F9108950895CF938091E7 +:10204000F1018823A1F0C091E900CF709091EC00DC +:10205000892F817090FD80E8C82B1092E900809153 +:10206000E80083FD0E94CC0ECF70C093E900CF91B1 +:10207000089590937501809374010895E09174011F +:10208000F0917501309721F00190F081E02D0994D5 +:1020900080E00895E0917401F0917501309721F08E +:1020A0000280F381E02D09940895E0917401F0918C +:1020B0007501309721F00480F581E02D0994089591 +:1020C00020917201309173018217930771F0909300 +:1020D000730180937201E0917401F0917501309762 +:1020E00021F00680F781E02D099408952091700178 +:1020F000309171018217930771F090937101809371 +:102100007001E0917401F0917501309721F0008425 +:10211000F185E02D0994089508950C948C100E9487 +:10212000E61B0E9487030C94A81C9F92AF92BF925B +:10213000CF92DF92EF92FF920F931F93CF93DF9393 +:1021400000D000D000D0CDB7DEB70E949F030DE0D5 +:1021500010E0AA24A394B12C902E802F0E948D040D +:10216000980129583E4F6901F901F080F826A1F441 +:102170000150110988F78FEF89838A831B820E949F +:10218000EF1B8160782F9D838C8349815A816B81FD +:102190008D810E942C112FC09091DA0191FF04C013 +:1021A0008E830E9493048E8125E030E0A501022EEB +:1021B00001C0440F0A94EAF7E42E4F21C1F02983AD +:1021C0009A828E2191E009F490E09B830E94EF1B9C +:1021D0008160782F9D838C8349815A816B818D81A9 +:1021E0000E942C11F6018081E826E08204C0215073 +:1021F0003109E0F6BDCF0E948F1F109176010E9439 +:102200003E101817B9F00E943E1080937601269672 +:102210000FB6F894DEBF0FBECDBFDF91CF911F91F7 +:102220000F91FF90EF90DF90CF90BF90AF909F9075 +:102230000C94370926960FB6F894DEBF0FBECDBFBB +:10224000DF91CF911F910F91FF90EF90DF90CF9092 +:10225000BF90AF909F900895CF93DF93CDB7DEB737 +:102260002B970FB6F894DEBF0FBECDBF4F835887B4 +:1022700069877A878B87DE01119686E0FD011192CE +:102280008A95E9F785E0FE01379601900D928A95CF +:10229000E1F749815A816B817C818D819E810E9409 +:1022A00075172B960FB6F894DEBF0FBECDBFDF912A +:1022B000CF910895CF93882309F4C2C0C82F8238E4 +:1022C00059F40E943E1081FDBBC089E30E944F1A61 +:1022D0000E941C1B89E30CC0833879F40E943E10D5 +:1022E00080FDAEC083E50E944F1A0E941C1B83E54F +:1022F0000E94911ACF910C941C1B843859F40E94AF +:102300003E1082FD9DC087E40E944F1A0E941C1B54 +:1023100087E4EECF8CEF8C0F813A48F48C2F0E942B +:10232000D22181118DC08C2F0E944F1AE3CF80E201 +:102330008C0F883048F4C77081E001C0880FCA95BF +:10234000EAF70E94D51AD6CF8BE58C0F833078F44C +:10235000C53A29F0C63A31F083E890E005C081E83B +:1023600090E002C082E890E0CF910C94601088E584 +:102370008C0F833108F064C0C83A39F1C93A41F191 +:10238000CA3A49F1CB3A51F1CC3A59F1CD3A61F11F +:10239000C03B69F1CE3A71F1CF3A79F1C13B81F19D +:1023A000C23B89F1C33B91F1C43B99F1C53BA1F11B +:1023B000C63BA9F1C73BB1F1C83BB9F1C93BC1F17B +:1023C000CA3BC9F180E090E038C082EE90E035C0B1 +:1023D00089EE90E032C08AEE90E02FC085EB90E06D +:1023E0002CC086EB90E029C087EB90E026C08CECF7 +:1023F00090E023C08DEC90E020C083E891E01DC008 +:102400008AE891E01AC082E991E017C084E991E07E +:1024100014C081E292E011C083E292E00EC084E237 +:1024200092E00BC085E292E008C086E292E005C02F +:1024300087E292E002C08AE292E0CF910C9476109B +:10244000CF910895882309F44BC0823859F40E9433 +:102450003E1081FF45C089E30E944F1A0E941C1B59 +:1024600089E30CC0833871F40E943E1080FF38C0AD +:1024700083E50E944F1A0E941C1B83E50E94911A5B +:102480000C941C1B843859F40E943E1082FF28C013 +:1024900087E40E944F1A0E941C1B87E4EFCF9CEF39 +:1024A000980F913A58F390E2980F983050F4877053 +:1024B00091E001C0990F8A95EAF7892F0E94DB1AF3 +:1024C000DFCF9BE5980F933020F480E090E00C94F0 +:1024D0006010885A833120F480E090E00C947610EC +:1024E0000895882321F00E94D51A0C941C1B08958E +:1024F000882321F00E94DB1A0C941C1B08957F9204 +:102500008F929F92AF92BF92CF92DF92EF92FF9203 +:102510000F931F93CF93DF931F92CDB7DEB77C014C +:10252000C62E772EFC01058102950F7012811111C4 +:102530000E94F21A0E94481A882379F0112369F048 +:1025400080E28C0D883048F082E00E94311A0E94AF +:10255000481A91E0D82ED92601C0D12CE72DE2955A +:10256000EF70F0E0E05AFF4F0C940724872D807F36 +:10257000072D0F70882311F00295007F112389F039 +:10258000002309F490C180E28C0D883020F4802F64 +:102590000E94D51A03C0802F0E94E51A0E941C1BBE +:1025A00082C18C2D0E942212002309F495C180E281 +:1025B0008C0D883020F4802F0E94DB1A03C0802FFE +:1025C0000E94EB1A0E941C1B87C1972D907F872DBC +:1025D0008F70903211F08295807FCC2021F0F1E055 +:1025E000CF16B1F01EC0112349F0002309F414C125 +:1025F000013009F011C10E94051B6EC1002319F0C2 +:10260000013009F469C189830E94081B89810AC1CC +:10261000112321F0023008F05FC1FEC001115CC13E +:1026200001C1112321F0002309F4F6C03CC10023AD +:1026300009F4F8C03EC1872D86958695837090E099 +:10264000009719F0019761F047C1112321F08C2DFB +:10265000972D937002C080E090E00E9460103CC112 +:10266000112321F08C2D972D937002C080E090E013 +:102670000E94761031C18C2D112319F00E94971EF3 +:1026800002C00E94FF1E0E94841F26C1872D8370F6 +:1026900009F052C0111120C18C2D8295869587704A +:1026A000880F880F9C2D9F70892E912CA12CB12C06 +:1026B000082E04C0880C991CAA1CBB1C0A94D2F7D3 +:1026C000C4FE14C00FE010E020E030E0B901A80122 +:1026D00004C0440F551F661F771F8A95D2F7CB01A0 +:1026E000BA01609570958095909503C060E070E0A8 +:1026F000CB01272D26952695237030E02230310519 +:1027000069F02330310589F0682979298A299B29C4 +:102710002130310571F00E94BD18DEC06829792989 +:102720008A299B290E94D918D7C00E94BD18C501CB +:10273000B4010E94A118D0C0112319F0872D817017 +:1027400001C08695882309F4C7C08C2D8295869593 +:102750008770880F880F9C2D9F70892E912CA12C3B +:10276000B12C082E04C0880C991CAA1CBB1C0A940E +:10277000D2F7C4FE14C00FE010E020E030E0B90151 +:10278000A80104C0440F551F661F771F8A95D2F712 +:10279000CB01BA01609570958095909503C060E07B +:1027A00070E0CB01272D269526952370422F50E00F +:1027B0004230510569F04330510589F06829792983 +:1027C0008A299B294130510571F00E94971984C0D4 +:1027D000682979298A299B290E94B3197DC00E9402 +:1027E0009719C501B4010E947B1976C08C2D90E029 +:1027F000FC01E05EF109E531F10508F050C0E05957 +:10280000FF4F0C9407240C2D0F70872D8F7111230F +:1028100031F00E941419802F0E9471125DC00E9435 +:102820003519802F0E94781257C0112339F00111F9 +:1028300053C0872D8F710E945A194EC0023008F084 +:102840004BC0F7CF112339F0872D8F710E941419D7 +:1028500043C01123C9F3872D8F710E9435193CC0E5 +:10286000112329F0872D8F710E94FF1835C00E9417 +:10287000F51832C0112351F0172D1F71812F0E94BE +:10288000141963E0812F0E94281A26C081E00E945B +:10289000311A023008F182E00E94311A1DC0112362 +:1028A00031F0002389F28C2D0E945A1115C00023AB +:1028B00091F28C2D0E9422120FC0472D4F706C2D6B +:1028C000C7010E9469050E94191806C0472D4F7064 +:1028D0006C2DC7010E944606DD20F9F00E94241AE3 +:1028E00080FD1BC0F70112820E941E1A0E9414195B +:1028F000C7010E949C140E941E1A0F90DF91CF9175 +:102900001F910F91FF90EF90DF90CF90BF90AF900D +:102910009F908F907F900C9435190F90DF91CF91FD +:102920001F910F91FF90EF90DF90CF90BF90AF90ED +:102930009F908F907F9008950F931F93CF93DF9375 +:10294000EC01888199812B813C81232BB9F09F3F39 +:1029500011F48F3F99F0CE010E949E05882371F0FB +:10296000688179818A810E941A1A8C010E94CF198C +:102970000E949618B801CE010E947F12DF91CF917C +:102980001F910F9108950E94F21A0E94021B0E944B +:10299000C71A0E941C1B0E9435200E94841F80E0E1 +:1029A00090E00E94601080E090E00C9476100E940D +:1029B000E21A0C94C3140E940F1A292F22952F702B +:1029C00030E02C3031054CF42A3031056CF42250C3 +:1029D000310922303105A8F407C02C30310569F0E7 +:1029E0002F30310551F00DC0803F69F018F4803E62 +:1029F00040F409C0843F29F406C093FB882780F97E +:102A0000089580E0089581E00895CF93DF9300D08A +:102A100000D01F92CDB7DEB70F900F900F900F90A0 +:102A20000F90DF91CF910895CF93DF9300D000D026 +:102A300000D0CDB7DEB726960FB6F894DEBF0FBE36 +:102A4000CDBFDF91CF9108951F93CF93DF93C091B6 +:102A5000850116E080918601C81799F0D0E01C9F8F +:102A6000F0011D9FF00D1124E957FE4F4081518167 +:102A700062817381848195810E9414152196C770AB +:102A8000E9CFDF91CF911F9108954091B701509107 +:102A9000B8016091B9017091BA018091BB01909128 +:102AA000BC010C9414158091BC0182958F7009F0C3 +:102AB00054C08091B901882309F44FC080918501E9 +:102AC000A09186016091B7017091B8014091BA015F +:102AD0005091BB01B6E08A1709F43FC090E0411560 +:102AE0005105C1F17F3F11F46F3FA1F1B89FF00193 +:102AF000B99FF00D1124E957FE4F218172132AC0AE +:102B00002081621327C02281211124C023813481B6 +:102B10002417350710F421503109241B350B283CAC +:102B20003105C0F42091BC012F7020612093BC01BD +:102B300026E0289FF001299FF00D1124E457FE4F55 +:102B400080818F708061808387EB91E00E949C146C +:102B50000C94241501968770BECF0895CF92DF9212 +:102B6000EF92FF920F931F93CF93DF93CDB7DEB712 +:102B700062970FB6F894DEBF0FBECDBF8C0185E023 +:102B8000F801DE011D9601900D928A95E1F7D801BA +:102B90004C9111965C91119712966C911297139625 +:102BA000CD90DC9014973091B7017091B80180916D +:102BB000BA019091BB01009709F46BC17F3F19F4F2 +:102BC0003F3F09F466C1E090B901EE2009F4C0C0AE +:102BD0002091BC01C816D90628F0F601E81BF90BB4 +:102BE000CF0104C0809590958C0D9D1DFF24F3941A +:102BF000883C910578F0F12C207F09F0C6C07C2D2F +:102C0000D98AC88A89890E94051587EB91E00E94BC +:102C10009C14B1C0822F807F09F046C0751314C088 +:102C2000341312C0611110C02F7020612093BC01B9 +:102C30000E94451587EB91E00E949C148091BC0195 +:102C4000D80115968C932EC0CD2819F15F3F11F451 +:102C50004F3FF9F0F62E61111CC080918501209143 +:102C6000860136E0821709F45AC090E0389FF001DF +:102C7000399FF00D1124E957FE4F7181571306C09B +:102C80007081471303C07281711103C00196877070 +:102C9000E9CFF62E662309F418C18091BC0181604A +:102CA0008093BC01F12C11C1751308C0341306C008 +:102CB000611104C08091BC01D801C3C04D875E87FB +:102CC0008D859E856A8B0E94DB146A898823E1F1D9 +:102CD0006623D1F12091BC01822F82958F7090E004 +:102CE000029774F08091B7019091B80198878F8313 +:102CF0001986DB86CA862C87CE0107960E949C1413 +:102D000086E0F801A7EBB1E001900D928A95E1F71A +:102D10000E9453150E944515FF24F394D6C04D8799 +:102D20005E878D859E850E940F1A292F22952F7010 +:102D300030E0223031050CF0BCC09F7009F0B6C005 +:102D4000805E883008F4C1C0C8010E949C14E4CFA2 +:102D5000C816D90608F453C0F601E81BF90BCF01D9 +:102D6000883C910508F450C0F12C7C2DD98AC88A82 +:102D700089890E940515E7EBF1E086E0DF011D92ED +:102D80008A95E9F70E944515A0C0751314C0341345 +:102D900012C0611110C08091BC01F8018583C80187 +:102DA0000E949C1486E0E7EBF1E0DF011D928A951A +:102DB000E9F7FE2C8AC04D875E878D859E856A8BDC +:102DC0000E94DB146A89882309F4BECF662309F4C4 +:102DD000BBCF2091BC01822F82958F7090E002972B +:102DE0000CF48ECF8091B7019091B8019A838983BA +:102DF0001B82DD82CC822E83CE0101967FCF80950F +:102E000090958C0D9D1DACCFF62E662309F49CCFBA +:102E100075132EC034132CC02091BC0120FD1FC09F +:102E2000822F82958F70D9F0D80115962C93159723 +:102E30008F3049F08F5F982F9295907F822F8F70FF +:102E4000892B15968C93C8010E949C1486E0F8018A +:102E5000A7EBB1E001900D928A95E1F793CF86E060 +:102E6000F801A7EBB1E001900D928A95E1F72DC032 +:102E70004D875E878D859E850E94DB14811140CF32 +:102E80008091BC0181608093BC01C8010E949C14A8 +:102E90001CC0662309F458CF4D875E878D859E85BB +:102EA0000E94DB14882309F44FCF2ACF811148CF29 +:102EB0000CC0243031050CF047CF9F7009F440CF8F +:102EC000F8019581907F09F03BCF8F2D62960FB668 +:102ED000F894DEBF0FBECDBFDF91CF911F910F9150 +:102EE000FF90EF90DF90CF9008951F93CF93DF93E3 +:102EF000CDB7DEB72C970FB6F894DEBF0FBECDBFAF +:102F00004F83588769877A878B879C87CE0107967E +:102F10000E94AE15882369F08F8198852A853B85AC +:102F2000232BF1F19F3F09F063C08F3F09F060C090 +:102F300037C086E0FE013796DE01119601900D92B2 +:102F40008A95E1F76F817885EA85FB85309741F1B5 +:102F50007F3F11F46F3F21F12091860130E0C901DC +:102F60000196877099274091850150E08417950755 +:102F700009F447C069837A83FD83EC8396E0929FCE +:102F8000D001939FB00D1124A957BE4FFE01319679 +:102F900001900D929A95E1F7809386010E94241585 +:102FA00016E080918501909186018917C1F1189FE3 +:102FB000C001112489579E4F0E94AE15882379F1D4 +:102FC000E09185011E9FF0011124E957FE4F4081D9 +:102FD000518162817381848195810E941415809151 +:102FE000850190E001968770992780938501D9CF5C +:102FF0004F81588569857A858B859C850E9414153B +:10300000CFCF0E94D7141092860110928501E7EB72 +:10301000F1E086E0DF011D928A95E9F7C1CF2C9699 +:103020000FB6F894DEBF0FBECDBFDF91CF911F91D9 +:103030000895EF92FF920F931F93CF93DF938C012C +:10304000009709F46CC0F12CEE24E394E80121967A +:10305000F8018491843740F4843008F051C0813005 +:1030600081F0823019F15BC0853709F444C0A8F1C2 +:103070009CE7980F903708F052C08F770E94221279 +:1030800041C00E5F1F4FFE01C49180E28C0F88305B +:1030900048F4C7708E2D01C0880FCA95EAF70E94C8 +:1030A000F51A14C08C2F0E945A112DC00E5F1F4FAD +:1030B000FE01C49180E28C0F883058F4C7708E2DC9 +:1030C00001C0880FCA95EAF70E94FB1A0E941C1BD8 +:1030D0001AC08C2F0E94221216C00E5F1F4FFE01D5 +:1030E000C491CC2381F08FE99FE00197F1F700C0F4 +:1030F0000000C150F6CF0E5F1F4FFE01F49003C0D9 +:103100000E945A118E018F2D882309F49FCFEFE979 +:10311000FFE03197F1F700C000008150F5CFDF915B +:10312000CF911F910F91FF90EF90089508956093B4 +:10313000C1017093C2018093C3019093C4010C94A8 +:10314000C3140F931F930091C1011091C2012091EC +:10315000C3013091C401DC01CB01802B912BA22B48 +:10316000B32B8093C1019093C201A093C301B0938C +:10317000C4011F910F910C94C3140F931F930091DE +:10318000C1011091C2012091C3013091C401DC0141 +:10319000CB0180239123A223B3238093C101909379 +:1031A000C201A093C301B093C4011F910F910C946D +:1031B000C3140F931F930091C1011091C20120917C +:1031C000C3013091C401DC01CB0180279127A227E4 +:1031D000B3278093C1019093C201A093C301B09320 +:1031E000C4011F910F910C94C3141092BD01109251 +:1031F000BE011092BF011092C0010C94C31441E0B3 +:1032000050E060E070E004C0440F551F661F771F58 +:103210008A95D2F74093BD015093BE016093BF01E0 +:103220007093C0010C94C31441E050E060E070E082 +:1032300004C0440F551F661F771F8A95D2F78091EF +:10324000BD019091BE01A091BF01B091C001482B7A +:10325000592B6A2B7B2B4093BD015093BE01609389 +:10326000BF017093C0010C94C31441E050E060E0D2 +:1032700070E004C0440F551F661F771F8A95D2F770 +:1032800040955095609570958091BD019091BE01DB +:10329000A091BF01B091C001482359236A237B2329 +:1032A0004093BD015093BE016093BF017093C00174 +:1032B0000C94C31441E050E060E070E004C0440F9F +:1032C000551F661F771F8A95D2F78091BD01909197 +:1032D000BE01A091BF01B091C001482759276A27BC +:1032E0007B274093BD015093BE016093BF01709353 +:1032F000C0010C94C3140F931F930091BD01109152 +:10330000BE012091BF013091C001DC01CB01802BB7 +:10331000912BA22BB32B8093BD019093BE01A09360 +:10332000BF01B093C0011F910F910C94C3140F9370 +:103330001F930091BD011091BE012091BF013091FA +:10334000C001DC01CB0180239123A223B32380930E +:10335000BD019093BE01A093BF01B093C0011F9126 +:103360000F910C94C3140F931F930091BD01109102 +:10337000BE012091BF013091C001DC01CB0180274B +:103380009127A227B3278093BD019093BE01A093FC +:10339000BF01B093C0011F910F910C94C314089505 +:1033A000CF92DF92EF92FF920F931F93CF93DF9311 +:1033B0008C01C090C101D090C201E090C301F09097 +:1033C000C4018091BD019091BE01A091BF01B09157 +:1033D000C001C82AD92AEA2AFB2ACFE1D0E0D701C6 +:1033E000C6010C2E04C0B695A795979587950A94AB +:1033F000D2F780FF06C0B8018C2F0E949C0801976D +:1034000021F4219760F780E001C08C2FDF91CF91EC +:103410001F910F91FF90EF90DF90CF900895CF9381 +:10342000DF93EC010E94D019BE010E949C08DF913D +:10343000CF910895CB010E940F1A08958091C50184 +:1034400085958595859508958091C5018770089526 +:1034500098E0899F90011124262B2093C5010C949C +:1034600014192091C501809582238093C501982F5E +:10347000977069F430E0482F552747FD5095241781 +:10348000350729F08595859585950C94351908950E +:103490009091C501977081E009F480E008959091C2 +:1034A0000C01992321F090910D01911109C02091F7 +:1034B0000E0130910F01F90132969FEF40E01FC0DD +:1034C000982F9695969596959F3050F5E0910E0120 +:1034D000F0910F01E90FF11D877021E030E0A901A3 +:1034E00002C0440F551F8A95E2F7CA019181892BCA +:1034F000818308959F3F39F04F5F4E3041F05191E5 +:103500005813F8CF0DC05111F7CF942FF5CF9F3F2F +:1035100039F0F901E90FF11D97FDFA9582830895BD +:10352000089590910C01992321F090910D01911132 +:1035300009C020910E0130910F01F9013296205FF0 +:103540003F4F1FC0982F9695969596959F30F0F413 +:10355000E0910E01F0910F01E90FF11D877021E05C +:1035600030E0A90102C0440F551F8A95E2F7CA0155 +:10357000809591818923818308953196E217F3071D +:1035800029F090819813F9CF1082F7CF089581E048 +:1035900090E0E0910E01F0910F01E80FF91F108209 +:1035A000019680319105A9F708959091D901892B51 +:1035B0008093D901089580959091D90189238093B2 +:1035C000D90108951092D90108959091D801892BBD +:1035D0008093D801089580959091D8018923809394 +:1035E000D80108951092D80108959091D701892BA0 +:1035F0008093D701089580959091D7018923809376 +:10360000D70108951092D70108958093C6010895B7 +:103610001092C601089580910E0190910F01FC0156 +:1036200031969C01205F3F4F80E0919191118F5F17 +:10363000E217F307D1F70895E0910E01F0910F0121 +:103640008091D9018083E0910E01F0910F0190816A +:103650008091D801892B8083E0910E01F0910F01B8 +:1036600090818091D701892B80838091C601882326 +:1036700061F0E0910E01F0910F019081892B808320 +:103680000E940B1B81111092C60180910E01909136 +:103690000F010C944A1020E0009739F0AC01415022 +:1036A0005109842395232F5FF7CF822F0895CF925E +:1036B000DF92EF92FF926C01EE24FF24C114D1043B +:1036C000E104F10421F0C701B60120E101C020E0CE +:1036D000C72ED82EE92EFF24C114D104E104F10431 +:1036E00019F0285FC701B6016B017C0154E0F69424 +:1036F000E794D794C7945A95D1F7C114D104E10443 +:10370000F10419F02C5FC701B6016B017C0142E0A6 +:10371000F694E794D794C7944A95D1F7C114D1048D +:10372000E104F10419F02E5FC701B601DC01CB0101 +:10373000B695A79597958795892B8A2B8B2B09F0A2 +:103740002F5F822FFF90EF90DF90CF9008958091B0 +:10375000F101843021F11092DB0120E488E190E056 +:103760000FB6F894A895809360000FBE2093600078 +:1037700080E00E94370983B7817F846083BF83B76D +:10378000816083BF7894889583B78E7F83BF88E1FB +:103790000FB6F89480936000109260000FBE0895F9 +:1037A000089508950E94D01B0E949F030E94D11B80 +:1037B0000E94940491E0811101C090E0892F089546 +:1037C0000E94D7140E943E100C94370982E084BDF9 +:1037D00093E095BD9AEF97BD80936E0008952FB743 +:1037E000F8948091DC019091DD01A091DE01B0910F +:1037F000DF012FBF0895CF92DF92EF92FF920F93D8 +:103800001F932FB7F8944091DC015091DD01609136 +:10381000DE017091DF012FBF6A017B01EE24FF24DE +:103820008C0120E030E0C016D106E206F30610F469 +:10383000415051099A01281B390BC9011F910F9161 +:10384000FF90EF90DF90CF9008951F920F920FB6E8 +:103850000F9211248F939F93AF93BF938091DC01BC +:103860009091DD01A091DE01B091DF010196A11DD3 +:10387000B11D8093DC019093DD01A093DE01B09334 +:10388000DF01BF91AF919F918F910F900FBE0F906D +:103890001F9018950E943B0DF8942FEF87EA91E650 +:1038A000215080409040E1F700C0000087E090EB9D +:1038B000DC018093FB019093FC01A093FD01B09388 +:1038C000FE019CE088E10FB6F894A8958093600013 +:1038D0000FBE90936000FFCFEF92FF920F931F9364 +:1038E000CF93DF93D82FCDE08C2F0E948D0405E07D +:1038F00010E0E82EF12CC701002E02C095958795A7 +:103900000A94E2F780FF09C0602F7C2F80E00E94BC +:103910004706D81302C081E006C00150110958F7CC +:10392000C15010F780E0DF91CF911F910F91FF9070 +:10393000EF900895CF93C82F8CE20E946C1C8823CF +:1039400021F08C2FCF910C946C1C80E0CF910895C6 +:10395000CF930E94EF1D811102C00E94D51DC5E6C4 +:10396000C15049F00E949F038FE39CE90197F1F752 +:1039700000C00000F5CF89E20E949A1C811113C19A +:103980008AE20E949A1C81110E94D51D85E00E9446 +:103990009A1C81110E944A1C0E94FA1D8093DA0130 +:1039A00087E00E949A1C8823A9F18BE10E949A1C4F +:1039B000882351F08091DA0181FB222720F991E0E0 +:1039C000922790FB81F90EC08EE00E949A1C8823FA +:1039D00061F08091DA0182FB222720F991E09227A1 +:1039E00090FB82F98093DA0115C080E10E949A1C55 +:1039F0009091DA01882341F093FB222720F981E09E +:103A0000822780FB93F904C0892F809580FB90F971 +:103A10009093DA018091DA010E94FE1D0E940C1E33 +:103A20008093FA0180EE0E949A1C882341F08091D5 +:103A3000FA01982F909590FB80F98093FA0189E321 +:103A40000E949A1C882359F08091FA0181FB222759 +:103A500020F991E0922790FB81F98093FA0182EEA0 +:103A60000E949A1C882359F08091FA0182FB222738 +:103A700020F991E0922790FB82F98093FA0186EE7B +:103A80000E949A1C882359F08091FA0183FB222717 +:103A900020F991E0922790FB83F98093FA0183EE5D +:103AA0000E949A1C882359F08091FA0184FB2227F6 +:103AB00020F991E0922790FB84F98093FA0185E345 +:103AC0000E949A1C882359F08091FA0185FB2227D5 +:103AD00020F991E0922790FB85F98093FA0181E328 +:103AE0000E949A1C882359F08091FA0186FB2227B4 +:103AF00020F991E0922790FB86F98093FA0181E109 +:103B00000E949A1C882359F08091FA0187FB222792 +:103B100020F991E0922790FB87F98093FA01809138 +:103B2000FA010E94101E8091FA0187FB882780F914 +:103B300080930D0187E20E949A1CC82F8EE10E949B +:103B40009A1C8111C2608FE10E949A1C8111C4608D +:103B500080E20E949A1C8111C86081E20E949A1C36 +:103B60008111C06182E20E949A1C8111C06283E2CD +:103B70000E949A1C8111C06484E20E949A1C8823CE +:103B800011F0C06802C0CC2329F08C2F0E94071EC0 +:103B90006C2F03C00E94031E682F70E080E090E04D +:103BA000CF910C949718CF9108956DEE7EEF80E041 +:103BB00090E00E94412460E082E090E00E942F2487 +:103BC00060E083E090E00E942F2460E084E090E0D9 +:103BD0000E942F2460E085E090E00C942F2480E088 +:103BE00090E00E94292421E08D3E9E4F09F020E0C4 +:103BF000822F089582E090E00C942124682F82E0C7 +:103C000090E00C942F2483E090E00C942124682F02 +:103C100083E090E00C942F2484E090E00C94212425 +:103C2000682F84E090E00C942F248091E20180FFC3 +:103C30000BC06091130185E0689FB0011124759558 +:103C40006795759567952BC081FF09C06091130139 +:103C500085E0689FB00111247595679520C082FFAB +:103C600007C06091130185E0689FB001112417C05F +:103C70009091E3019923D1F060911201961788F792 +:103C80002091130185E0289F90011124929FA001AB +:103C9000939F500D112470E0CA010E94F3236038F5 +:103CA000710540F46115710539F002C065E070E0FE +:103CB000862F08958FE7089581E008958091E201AD +:103CC00080FF08C06091110170E07595679575954A +:103CD000679521C081FF06C06091110170E0759564 +:103CE000679519C082FF04C06091110170E010C097 +:103CF0009091E3019923C1F0609110019617A0F70C +:103D000080911101899FC001112470E00E94F3236A +:103D10006038710528F46115710521F0862F08952A +:103D20008FE7089581E0089561E070E0F4CF803F6F +:103D300021F40E94151E819504C0813F29F40E9440 +:103D4000151E8093E6010895823F21F40E94151EFE +:103D5000819504C0833F29F40E94151E8093E501DC +:103D60000895893F19F40E945E1E05C08A3F31F410 +:103D70000E945E1E81958093E70108958B3F21F498 +:103D80000E945E1E819504C08C3F29F40E945E1E35 +:103D90008093E8010895843F21F48091E4018160DB +:103DA00017C0853F21F48091E401826011C0863FF5 +:103DB00021F48091E40184600BC0873F21F480915D +:103DC000E401886005C0883F31F48091E40180619E +:103DD0008093E40108958D3F21F48091E201816098 +:103DE0000BC08E3F21F48091E201826005C08F3FBD +:103DF00029F48091E20184608093E2010895803F7C +:103E000039F48091E60187FF6CC01092E60169C029 +:103E1000813F29F48091E6011816BCF362C09091AD +:103E2000E501823F29F497FF5CC01092E50159C07B +:103E3000833F19F41916CCF354C0893F41F48091A3 +:103E4000E70118160CF04DC01092E7014AC08A3FF6 +:103E500029F48091E70187FF44C0F6CF8B3F39F406 +:103E60008091E80187FF3DC01092E8013AC08C3F85 +:103E700029F48091E8011816BCF333C0843F21F483 +:103E80008091E4018E7F17C0853F21F48091E40189 +:103E90008D7F11C0863F21F48091E4018B7F0BC0A0 +:103EA000873F21F48091E401877F05C0883F31F48A +:103EB0008091E4018F7E8093E40113C08D3F21F453 +:103EC0008091E2018E7F0BC08E3F21F48091E20150 +:103ED0008D7F05C08F3F29F48091E2018B7F809315 +:103EE000E2018091E50181110EC08091E60181110E +:103EF0000AC08091E701811106C08091E80181111B +:103F000002C01092E301089584EE91E00E945510E2 +:103F10000E94EF1B9093E1018093E00108951F93AD +:103F2000CF93DF938091E0019091E1010E94FB1B10 +:103F3000AC019091E301992321F02091140130E02C +:103F400006C0209115018AE0289F90011124421794 +:103F5000530708F486C08091E501C091E601D09135 +:103F6000E7011091E801811107C0C11176C0D1119C +:103F700074C0111172C075C09F3F19F09F5F90937C +:103F8000E301181624F40E94151E8093E501809128 +:103F9000E50187FF05C00E94151E81958093E5010C +:103FA0001C1624F40E94151E8093E6018091E60100 +:103FB00087FF05C00E94151E81958093E6016091E0 +:103FC000E501662339F1C091E601CC2319F1772789 +:103FD00067FD7095872F972F0E94042323E333E317 +:103FE00043E35FE30E9468230E94D1226093E501CE +:103FF0006C2F772767FD7095872F972F0E940423DA +:1040000023E333E343E35FE30E9468230E94D1226A +:104010006093E6011D1624F40E945E1E8093E70162 +:104020008091E70187FF05C00E945E1E8195809305 +:10403000E701111624F40E945E1E8093E80180912E +:10404000E80187FF05C00E945E1E81958093E8010C +:10405000DF91CF911F910C94841F9F3F09F08ECF69 +:1040600096CFDF91CF911F910895E4EEF1E085E0C6 +:10407000DF011D928A95E9F71092E3011092E201A7 +:104080000895833081F128F4813059F08230D1F0E5 +:104090000895853009F449C0B8F1863009F456C056 +:1040A000089580911501262F30E0280F311D2F3FF4 +:1040B000310524F4680F6093150108958FEF809304 +:1040C0001501089580911401262F30E0280F311D2D +:1040D0002F3F310524F4680F6093140108958FEF8A +:1040E00080931401089580911301262F30E0280F4A +:1040F000311D2F3F310524F4680F6093130108959B +:104100008FEF80931301089580911201262F30E0E4 +:10411000280F311D2F3F310524F4680F60931201E1 +:1041200008958FEF80931201089580911101262F39 +:1041300030E0280F311D2F3F310524F4680F6093C4 +:10414000110108958FEF809311010895809110015E +:10415000262F30E0280F311D2F3F310524F4680F42 +:104160006093100108958FEF8093100108958330BC +:1041700011F128F4813049F0823091F008958530B2 +:1041800081F120F18630C1F1089580911501681701 +:1041900020F4861B8093150108951092150108954F +:1041A00080911401681720F4861B809314010895F0 +:1041B00010921401089580911301681720F4861B52 +:1041C00080931301089510921301089580911201B4 +:1041D000681720F4861B8093120108951092120133 +:1041E000089580911101681720F4861B80931101B6 +:1041F000089510921101089580911001681720F41C +:10420000861B8093100108951092100108950F935A +:104210001F938D3109F46BC008F03FC08E3009F454 +:104220007FC0C0F4873009F469C068F4863009F0B3 +:10423000B1C08091DA01817F8E7F8093DA0181E0C5 +:104240008093EA01A8C0883009F4A2C08B3009F439 +:104250009FC0A0C0863109F49BC078F4803109F476 +:1042600072C0813109F096C00E94D71490910D015F +:1042700081E0892780930D018BC0893109F488C0C2 +:104280008B3109F087C08091DA0181FB222720F968 +:1042900091E0922790FB81F94CC0853309F470C0FE +:1042A00048F4873209F46CC008F459C0893209F423 +:1042B00067C070C0833438F48A3308F04EC0883346 +:1042C00009F466C067C0833409F45AC0883409F021 +:1042D00061C00E94D7140FEF13ED20E3015010408E +:1042E0002040E1F700C000000E944A1C51C00E941B +:1042F0008B220E943E100E9437094AC09091DA0139 +:10430000892F8095817080FB90F929F096609860E4 +:104310009093DA0140C0997F977F9093DA0138C07B +:104320008091DA0182FB222720F991E0922790FB0D +:1043300082F98093DA01992359F18091DA01816041 +:104340008093DA0125C08091DA0183FB222720F9CE +:1043500091E0922790FB83F9ECCF895301C08D51F6 +:1043600041E050E060E070E08A019B0104C0000F72 +:10437000111F221F331F8A95D2F7C901B80104C04B +:1043800061E070E080E090E00E9497180E94D714EE +:1043900081E001C080E01F910F91089580E00895B1 +:1043A00080E00895CF93C82F8091EA01813079F0A1 +:1043B00018F08230E9F187C0E0910E01F0910F0111 +:1043C0008081813169F0823209F07FC009C0E091BB +:1043D0000E01F0910F018081813111F0823261F480 +:1043E0008C2F0E94CE21811104C08C2F0E940721A6 +:1043F0001DC081E090E01AC08C2F0E94D021811155 +:1044000014C0C43179F048F4CB3079F0C03109F0F0 +:1044100060C082E08093EA0108C0C93219F0C83355 +:1044200021F057C01092EA0154C081E0817053C05E +:10443000C93289F118F5C43171F1A8F4C73009F017 +:1044400046C08AE08093150194E19093140193E0B3 +:10445000909313018093120188E08093110188E208 +:104460008093100134C0CE51C63088F5EC2FF0E0B7 +:10447000E65DFE4F80818093E90129C0CE34E9F0EA +:1044800020F4CB3421F56AE013C0C13579F0C23590 +:10449000F1F461E00DC08091E901882319F01092D8 +:1044A000E90115C081E08093EA0115C061E006C012 +:1044B0008091E9010E9441200AC06AE08091E901EF +:1044C0000E94B72004C01092EA0180E004C081E09D +:1044D00002C080E0ABCFCF910895E1E8F0E08081A9 +:1044E000886080838081816080838FB7F89493E0B7 +:1044F0009093890090ED909388008FBF0895EFE628 +:10450000F0E08081826080830895EFE6F0E08081B2 +:104510008D7F80830895EFE6F0E0908182E0892727 +:10452000808308951F920F920FB60F9211242F933C +:104530003F934F935F936F937F938F939F93AF932B +:10454000BF93EF93FF938091EB019091EC01019663 +:104550009093EC018093EB01811103C082E00E94F3 +:104560003709E091EC01E695E695F0E0E45AFA4F60 +:10457000E4918091EB018E1303C080E00E94370923 +:10458000FF91EF91BF91AF919F918F917F916F912B +:104590005F914F913F912F910F900FBE0F901F9001 +:1045A000189504D06894B1118DC0089570D088F02A +:1045B0009F5790F0B92F9927B751A0F0D1F0660F0F +:1045C000771F881F991F1AF0BA95C9F712C0B1302A +:1045D00081F077D0B1E0089574C0672F782F8827D5 +:1045E000B85F39F0B93FCCF3869577956795B39569 +:1045F000D9F73EF490958095709561957F4F8F4FD8 +:104600009F4F0895E89409C097FB3EF490958095DC +:10461000709561957F4F8F4F9F4F9923A9F0F92F88 +:1046200096E9BB279395F695879577956795B79506 +:10463000F111F8CFFAF4BB0F11F460FF1BC06F5FEC +:104640007F4F8F4F9F4F16C0882311F096E911C0FE +:10465000772321F09EE8872F762F05C0662371F01F +:1046600096E8862F70E060E02AF09A95660F771F33 +:10467000881FDAF7880F9695879597F9089557FD63 +:104680009058440F551F59F05F3F71F04795880FC0 +:1046900097FB991F61F09F3F79F087950895121657 +:1046A00013061406551FF2CF4695F1DF08C0161603 +:1046B00017061806991FF1CF8695710561050894B4 +:1046C0000895E894BB2766277727CB0197F90895CB +:1046D0000BD078C069D028F06ED018F0952309F07F +:1046E0005AC05FC01124EECFCADFA0F3959FD1F36B +:1046F000950F50E0551F629FF001729FBB27F00D90 +:10470000B11D639FAA27F00DB11DAA1F649F6627E4 +:10471000B00DA11D661F829F2227B00DA11D621F33 +:10472000739FB00DA11D621F839FA00D611D221FED +:10473000749F3327A00D611D231F849F600D211DD1 +:10474000822F762F6A2F11249F5750408AF0E1F074 +:1047500088234AF0EE0FFF1FBB1F661F771F881FBD +:1047600091505040A9F79E3F510570F014C0AACF58 +:104770005F3FECF3983EDCF3869577956795B795A8 +:10478000F795E7959F5FC1F7FE2B880F911D9695D2 +:10479000879597F9089597F99F6780E870E060E042 +:1047A00008959FEF80EC089500240A9416161706CA +:1047B00018060906089500240A9412161306140612 +:1047C00005060895092E0394000C11F4882352F075 +:1047D000BB0F40F4BF2B11F460FF04C06F5F7F4F2D +:1047E0008F4F9F4F089597FB072E16F4009407D024 +:1047F00077FD09D00E940D2407FC05D03EF490956A +:1048000081959F4F0895709561957F4F0895EE0FA4 +:10481000FF1F0590F491E02D0994AA1BBB1B51E1E9 +:1048200007C0AA1FBB1FA617B70710F0A61BB70B20 +:10483000881F991F5A95A9F780959095BC01CD01C5 +:104840000895F999FECF92BD81BDF89A992780B558 +:104850000895A8E1B0E042E050E00C944924262FEE +:10486000F999FECF92BD81BDF89A019700B4021666 +:1048700039F01FBA20BD0FB6F894FA9AF99A0FBE14 +:1048800008950196272F0E9430240C942F24DC01D8 +:10489000CB01FC01F999FECF06C0F2BDE1BDF89A4B +:1048A000319600B40D9241505040B8F70895F894F5 +:0248B000FFCF38 +:1048B20002203909C709A40970093C090101C7018D +:1048C20028080A03140A3F4D36391D05D0049A04FC +:1048D2006104F4030D0426043F04010203040506E7 +:0448E20007080900BA +:00000001FF diff --git a/keyboards/ergodox_ez/keymaps/dragon788/keymap.c b/keyboards/ergodox_ez/keymaps/dragon788/keymap.c new file mode 100644 index 0000000000..3aec8c6cf9 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/dragon788/keymap.c @@ -0,0 +1,229 @@ +#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 +#define PLVR 3 // Plover layer + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* Keymap 0: Basic layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | = | 1 | 2 | 3 | 4 | 5 | LGui | |Plover| 6 | 7 | 8 | 9 | 0 | - | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Tab | Q | W | E | R | T | L1 | | L2 | Y | U | I | O | P | \ | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * |Esc/Ctrl| A | S | D | F | G |------| |------| H | J | K | L | ; | '"/Ctrl| + * |--------+------+------+------+------+------| Hyper| | Meh |------+------+------+------+------+--------| + * | LShift | Z | X | C | V | B | | | | N | M | , | . | / | RShift | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | ~L1 | Grv | '" | Left |Rgt/L2| | Up/L2| Down | [ | ] | ~L1 | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | App | Home | | PgUp |Ctrl/Esc| + * ,------|------|------| |------+--------+------. + * | | | End | | PgDn | | | + * |Backsp|Delete|------| |------| Enter |Space | + * | ace | | LAlt | |TabCtl| | | + * `--------------------' `----------------------' + */ +// If it accepts an argument (i.e, is a function), it doesn't need KC_. +// Otherwise, it needs KC_* +[BASE] = KEYMAP( // layer 0 : default + // left hand + KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, KC_LGUI, + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, TG(1), + CTL_T(KC_ESC), KC_A, KC_S, KC_D, KC_F, KC_G, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, ALL_T(KC_NO), + KC_FN1, KC_GRV, KC_QUOT,KC_LEFT, LT(MDIA, KC_RGHT), + KC_APP, KC_HOME, + KC_END, + KC_BSPC,KC_DELT,KC_LALT, + // right hand + TG(3), KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, + TG(2), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, + KC_H, KC_J, KC_K, KC_L, KC_SCLN, CTL_T(KC_QUOT), + MEH_T(KC_NO),KC_N, KC_M, KC_COMM,KC_DOT, KC_SLSH, KC_RSFT, + LT(MDIA, KC_UP), KC_DOWN,KC_LBRC,KC_RBRC, KC_FN1, + KC_PGUP, CTL_T(KC_ESC), + KC_PGDN, + CTL_T(KC_TAB),KC_ENT, KC_SPC + ), +/* 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 | = | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | Calc | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// 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_CALC, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), +/* Keymap 2: Media and mouse keys + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | Rclk | Lclk | | | | | | Lclk | Rclk | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | |MsLeft| MsUp |MsDown|MsRght|------| |------|MsLeft|MsDown| MsUp |MsRght| | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | | | | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | Lclk | Rclk | | | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | Prev | |VolUp | | + * ,------|------|------| |------+------+------. + * | | | Play | | Mute |Brwser|Brwser| + * | Lclk | Rclk |------| |------|Fwd |Back | + * | | | Next | |VolDn | | | + * `--------------------' `--------------------' + */ +// MEDIA AND MOUSE +KEYMAP( + RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_BTN2, KC_BTN1, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_MS_L, KC_MS_U, 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_TRNS, + KC_TRNS, KC_MPRV, + KC_MPLY, + KC_BTN1, KC_BTN2, KC_MNXT, + // right hand + 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_MS_L, KC_MS_D, KC_MS_U, 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_TRNS, KC_TRNS, KC_TRNS, + KC_VOLU, KC_TRNS, + KC_MUTE, + KC_VOLD, KC_WBAK, KC_WFWD +), + +/* Keymap 4: Steno for Plover from https://github.com/shayneholmes/tmk_keyboard/commit/11290f8489013018f778627db725160c745e75bd + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | 1 | 2 | 3 | 4 | 5 | | | | 6 | 7 | 8 | 9 | 0 | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | q | w | e | r | t |------| |------| y | u | i | o | p | [ | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | a | s | d | f | g | | | | h | j | k | l | ; | ' | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | c | v |------| |------| n | m | + * | | | | | | | | + * `--------------------' `--------------------' + */ + +[PLVR] = KEYMAP( // layout: layer 4: Steno for Plover + // left hand + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_1, KC_2, KC_3, KC_4, KC_5, KC_NO, + KC_NO, KC_Q, KC_W, KC_E, KC_R, KC_T, + KC_NO, KC_A, KC_S, KC_D, KC_F, KC_G, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_FN4, KC_NO, + KC_NO, + KC_C, KC_V, KC_NO, + // right hand + KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, + KC_NO, KC_6, KC_7, KC_8, KC_9, KC_0, KC_TRNS, + KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, + KC_NO, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + KC_TRNS, KC_TRNS, KC_NO, KC_NO, KC_NO, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_NO, KC_N, KC_M +), + +}; + +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/keyboards/ergodox_ez/keymaps/dvorak/compiled.hex b/keyboards/ergodox_ez/keymaps/dvorak/compiled.hex new file mode 100644 index 0000000000..c757b276d4 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/dvorak/compiled.hex @@ -0,0 +1,1158 @@ +:100000000C947A020C94BE020C94BE020C94BE02B4 +:100010000C94BE020C94BE020C94BE020C94BE0260 +:100020000C94BE020C94BE020C94620D0C94340E1F +:100030000C94BE020C94BE020C94BE020C94BE0240 +:100040000C94BE020C943E220C94BE020C94BE0290 +:100050000C94BE020C94D11B0C94BE020C94BE02F4 +:100060000C94BE020C94BE020C94BE020C94BE0210 +:100070000C94BE020C94BE020C94BE020C94BE0200 +:100080000C94BE020C94BE020C94BE020C94BE02F0 +:100090000C94BE020C94BE020C94BE020C94BE02E0 +:1000A0000C94BE020C94BE020C94BE02A10EC30EB0 +:1000B000B10FC30EB10F080F2B0FB10F800F930FAD +:1000C0006212621291129112C712E71218141814D8 +:1000D000F2121814A213A2130914181418141214EB +:1000E000AF13AF13AF13AF13AF13AF13AF13AF1300 +:1000F000AF13AF13AF13AF13AF13AF13AF13AF13F0 +:10010000C113CE13D513DC13E6130000F0A12E00AB +:100110004C002A00E100354100001E0034000400BC +:10012000337134004D001F00360012001400E1044A +:100130002A002000370008000D0050002C0021008C +:10014000130018000E004F004A0022001C000C0093 +:100150001B0000006574500001540000007F000087 +:10016000E3004F000154000000770000E20023008C +:100170000900070005000000297124000A000B0097 +:10018000100052004B002500060017001A00510015 +:10019000280026001500110019002F002B00270051 +:1001A0000F0016421D7130004E00310038002D0046 +:1001B000E500C10000000100010001000100010094 +:1001C00000003A001E0220022202010001003B0052 +:1001D0001F0221022302010001003C002F0226021F +:1001E0002F00010001003D00300227023000010015 +:1001F00001003E003102350035020000010001001F +:1002000001000000010000000100010001000000E9 +:100210000100000001003F005200510024020000D4 +:1002200001004000240021001E00010001004100E7 +:10023000250022001F003700010042002600230095 +:10024000200027000100430025022E0231002E006D +:100250000100440045000100010001000000010010 +:100260000100010001000100000001000100010087 +:1002700001000100010001000100F2000100010085 +:1002800001000100F000F1000100F4000100010094 +:100290000100F3000100F500010001000100010070 +:1002A0000100000001000100010000000100000049 +:1002B0000100010001000000010000000100010038 +:1002C0000100010001000000010001000100010027 +:1002D0000100A9000100010001000100AC00AA001A +:1002E000B600010001000100AB00A8000100010000 +:1002F0000100010001000100010001000100AE0049 +:1003000001000100000016034500720067006F0045 +:1003100044006F007800200045005A0000001603DA +:100320004500720067006F0044006F0078002000F5 +:1003300045005A0000000403090409026D0004018D +:1003400000A0FA09040000010301010009211101C4 +:100350000001223F000705810308000A090401008B +:100360000103010200092111010001224D000705CE +:10037000820308000A0904020001030000000921A9 +:10038000110100012236000705830308000A090451 +:1003900003000103000000092111010001223900BE +:1003A000070584031000011201100100000008ED90 +:1003B000FE071301000102000105010906A1010564 +:1003C0000719E029E7150025019508750181020547 +:1003D000081901290595057501910295017503918B +:1003E0000105071900297715002501957875018108 +:1003F00002C005010980A101850216010026B7008F +:100400001A01002AB700751095018100C0050C097A +:1004100001A1018503160100269C021A01002A9CF5 +:1004200002751095018100C005010902A1010901B1 +:10043000A10005091901290515002501950575017A +:10044000810295017503810105010930093115818A +:10045000257F95027508810609381581257F95014C +:1004600075088106050C0A38021581257F950175EE +:10047000088106C0C005010906A101050719E02988 +:10048000E715002501950875018102950175088120 +:100490000105081901290595057501910295017558 +:1004A0000391010507190029FF150025FF95067521 +:1004B000088100C0000000000000000000000001F2 +:1004C0000204060A0F17202C3A4A5D71879DB3C7B4 +:1004D000DAE9F5FCFFFCF5E9DAC7B39D87715D4AFF +:1004E0003A2C20170F0A0604020100000000000049 +:1004F0000000000011241FBECFEFDAE0DEBFCDBF49 +:1005000004B603FE24C08091FB019091FC01A091F0 +:10051000FD01B091FE018730904BA740B04BB9F47C +:100520001092FB011092FC011092FD011092FE014D +:1005300014BE84B7877F84BF88E10FB6F894809398 +:100540006000109260000FBEE0E0FFE3099511E04B +:10055000A0E0B1E0EAE0F8E402C005900D92A43317 +:10056000B107D9F711E0A4E3B1E001C01D92AB3FA0 +:10057000B107E1F70E94A60A0C9403240C94000032 +:100580001092B9008AE08093B800089594EA90939D +:10059000BC009091BC0097FFFCCF9091B900987F70 +:1005A000983021F0903111F081E008958093BB00E4 +:1005B00084E88093BC008091BC0087FFFCCF8091D1 +:1005C000B900887F883111F0803471F780E0089598 +:1005D00084E98093BC008091BC0084FDFCCF089529 +:1005E0008093BB0084E88093BC008091BC0087FFAF +:1005F000FCCF9091B900987F81E0983209F480E0B7 +:10060000089584E88093BC008091BC0087FFFCCFF4 +:100610008091BB00089580910101811115C080E493 +:100620000E94C6028093010181110CC082E10E94E8 +:10063000F00280930101811105C08FEF0E94F0024A +:10064000809301010E94E80284B1807F84B985B162 +:10065000807F85B98AB1837F8AB98BB1837F8BB95B +:100660003E98469808950E94C604809301010E9416 +:100670000B0380B38C7080BB81B3836F81BBA5E318 +:10068000B1E0E3E4F1E08EE08E0F11921D928E1343 +:10069000FCCF0C94B004BF92CF92DF92EF92FF9206 +:1006A0000F931F93CF93DF9380910101882379F0FB +:1006B000809134018F5F80933401811108C00E94C2 +:1006C000C60480930101811102C00E94580405E311 +:1006D00011E0C0E0D0E0DD24D39482E0C82EEE2407 +:1006E000E394F12CC730D10500F58091010181110F +:1006F00064C080E40E94C60280930101811112C08F +:1007000082E10E94F0028093010181110BC0C701B8 +:100710000C2E01C0880F0A94EAF780950E94F0021F +:10072000809301010E94E80248C0CA30A1F028F479 +:10073000C83059F0C93061F005C0CC3089F070F094 +:10074000CD3089F0209A289810C0219A29980DC0A0 +:10075000229A2A980AC0239A2B9807C0529A01C05D +:10076000539A5B9802C03E9A469890EA9A95F1F7A0 +:100770009FB1799902C082E001C080E091709D250F +:10078000982B7C9902C084E001C080E0892B7D9980 +:1007900002C038E001C030E0832B7E9902C020E126 +:1007A00001C020E0822B9FB19095991F9927991F36 +:1007B0009295990F907E892B0FC080910101811134 +:1007C00049C080E40E94C60280930101882379F128 +:1007D000B12C0E94E8028B2DF8019081981719F036 +:1007E0008083C09200010E940B0321960F5F1F4F70 +:1007F000CE30D10509F076CF80910001882361F1D8 +:10080000815080930001882339F08FE99FE00197A0 +:10081000F1F700C0000020C0A3E4B1E0E5E3F1E09F +:10082000CF01825F91919D938E13FCCF15C083E120 +:100830000E94F002809301018111CACF81E40E94DD +:10084000C602809301018111C3CF0E940103B82E1B +:10085000B094BFCF80E0C0CF0E94560481E0DF910A +:10086000CF911F910F91FF90EF90DF90CF90BF90AD +:100870000895E82FF0E0ED5BFE4F80810895089524 +:100880000F931F93CF93DF93C3E4D1E010E00C2FBD +:10089000025F899190E00E94F71A180F0C13F9CFAC +:1008A000812FDF91CF911F910F9108950C94260510 +:1008B00056985E9825982D9826982E9827982F98C8 +:1008C0008FEF90E0909389008093880090938B0045 +:1008D00080938A0090938D0080938C00259A2D9AA6 +:1008E0002FEF80E792E0215080409040E1F700C078 +:1008F0000000269A2E9A2FEF80E792E02150804048 +:100900009040E1F700C00000279A2F9A2FEF80E770 +:1009100092E0215080409040E1F700C0000025980F +:100920002D982FEF80E792E0215080409040E1F732 +:1009300000C0000026982E982FEF80E792E021500B +:1009400080409040E1F700C0000027982F9856980B +:100950005E9825982D9826982E9827982F98089578 +:1009600089EA8093800089E08093810024982C9804 +:100970003F988AB18F748AB96E98479A8BB1806B11 +:100980008BB9769A0E9458040C94250580E28093D6 +:1009900001018091510181110EC00E94C00281E0CD +:1009A000809351012FEF83ED90E3215080409040E0 +:1009B000E1F700C0000080E40E94C60280930101BC +:1009C00081112EC00E94F00280930101811128C084 +:1009D0000E94F00280930101811122C08FE30E94E6 +:1009E000F0028093010181111BC00E94E80280E4A3 +:1009F0000E94C60280930101811112C08CE00E9406 +:100A0000F0028093010181110BC00E94F0028093DB +:100A10000101811105C08FE30E94F0028093010162 +:100A20000E94E80280910101089561110BC0FC0150 +:100A30008281882321F085EE0E94061103C085EE95 +:100A40000E94CE1180E090E0089508956091BD016C +:100A50007091BE018091BF019091C0010E94031B63 +:100A600056985E9825982D9826982E9827982F9816 +:100A7000813019F0823021F00895259A2D9A089539 +:100A8000269A2E9A089581E0089581E008950C94A5 +:100A9000450508950F931F93CF93DF938C01FC01BD +:100AA000C081D181CE010E947C19BE010E94F30554 +:100AB000EC01B8010E944705882309F48DC0F801B4 +:100AC0008281882309F44AC080915D0181111FC091 +:100AD000C431F0E5DF0709F051C00E94490581E00B +:100AE00080935D010E949B1B90935C0180935B014E +:100AF0001092540110925601109255011092580113 +:100B00001092570110925A011092590165C08091BC +:100B10005B0190915C010E94A71B883C910570F4D9 +:100B200080915401E82FF0E0EE0FFF1FEB5AFE4FCB +:100B3000D183C0838F5F809354014EC0C43880E559 +:100B4000D80721F0C538D04501F13AC0F8018281BB +:100B5000882341F01092520182E01EC0C438E0E5C3 +:100B6000DE0759F580915201811106C086E20E948C +:100B7000061186E20E94CE1182E01CC0C438F0E566 +:100B8000DF0741F3C538D045D9F4F80182818823C5 +:100B900031F01092530180E20E941D121DC080911D +:100BA0005301811106C087E20E94061187E20E946C +:100BB000CE1180E20E9424120FC0C538D04529F31F +:100BC00081E08093520180935301C801DF91CF915E +:100BD0001F910F910C94430580E0DF91CF911F91FD +:100BE0000F910895089596E0799FF001112494E5FE +:100BF000899FE00DF11D1124E60FF11DEE0FFF1F7F +:100C0000E25FFE4F859194910895880F991FFC0132 +:100C1000E657F040859194910895880F991FFC0143 +:100C2000E65FFE4F8591949108950F931F93CF93A4 +:100C3000DF93EC01811520E3920750F5C11580E2A6 +:100C4000D80708F0C3C0CB3BD10590F4C83AD10512 +:100C500008F06AC0C53AD10508F05BC0C430D105C0 +:100C600008F0D0C1219709F0CAC101E010E00AC222 +:100C7000CF3FD10511F008F0C5C1C03FD10508F044 +:100C8000A2C0CE01805E9109089708F4BBC1B7C12C +:100C9000C13090E5D90709F4A2C020F5C0318FE436 +:100CA000D80770F4C11590E4D90708F094C0C115B5 +:100CB00021E3D20708F0A3C1DD278E01106CE2C149 +:100CC000C115D04509F09BC10E9483148FEF94E3B6 +:100CD0002CE0815090402040E1F700C000000E94CD +:100CE000F61BD0C1C11597E5D90758F4C03121E5ED +:100CF000D20708F01CC1C43180E5D80708F475C0DC +:100D00007EC1CE0190578115904108F078C1DF7007 +:100D100073C1C53AD10509F477C1C63AD10509F0C6 +:100D200076C102E810E4AEC1C83AD10509F472C137 +:100D3000C93AD10509F471C1CA3AD10509F470C1A3 +:100D4000CB3AD10509F46FC1CC3AD10509F46EC193 +:100D5000CD3AD10509F46DC1C03BD10509F46CC190 +:100D6000CE3AD10509F46BC1CF3AD10509F46AC175 +:100D7000C13BD10509F469C1C23BD10509F468C181 +:100D8000C33BD10509F467C1C43BD10509F466C171 +:100D9000C53BD10509F465C1C63BD10509F464C161 +:100DA000C73BD10509F463C1C83BD10509F462C151 +:100DB000C93BD10509F461C1CA3BD10509F460C141 +:100DC00000E014E45FC18E0110655CC1CE019F702C +:100DD0000E940D0658C1DF708E01106A53C18091C8 +:100DE000DA0181608093DA014DC10E949B1D81115F +:100DF00002C00E94811D0E94B81D90E09093FB01EB +:100E00008093FA01C23080E5D80721F48091FA017D +:100E1000816086C0C43090E5D90721F48091FA0141 +:100E200082607EC0C63020E5D20721F48091FA01AD +:100E3000846076C0C83080E5D80719F48091FA0143 +:100E400027C0CA3090E5D90721F48091FA0180616A +:100E500067C0CC3020E5D20721F48091FA0180628E +:100E60005FC0CE3080E5D80721F48091FA0180641C +:100E700057C0C03190E5D90721F48091FA0180680C +:100E80004FC0C23120E5D20729F48091FA01846075 +:100E9000886046C0C33080E5D80721F48091FA010C +:100EA0008E7F3EC0C53090E5D90721F48091FA01CC +:100EB0008D7F36C0C73020E5D20721F48091FA013A +:100EC0008B7F2EC0C93080E5D80719F48091FA01D4 +:100ED00026C0CB3090E5D90721F48091FA018F7EAE +:100EE0001FC0CD3020E5D20721F48091FA018F7D1B +:100EF00017C0CF3080E5D80721F48091FA018F7BAD +:100F00000FC0C13190E5D90721F48091FA018F77A4 +:100F100007C0C331D04531F48091FA018B7F877FC0 +:100F20008093FA018091FA010E94BC1DABC08D2F05 +:100F300099278F70992781309105D9F49E012370EC +:100F4000332702C0880F991F2A95E2F79C688E010B +:100F500044E0000F111F4A95E1F700271370802B22 +:100F6000912B53E0CC0FDD1F5A95E1F7C076DD27BA +:100F70002FC08230910531F4DC2FCC278E01016F18 +:100F8000106A80C08330910569F4CE01837099277F +:100F900001E010E002C0000F111F8A95E2F7C801BE +:100FA0009C680FC084309105B9F4CE0183709927F5 +:100FB00001E010E002C0000F111F8A95E2F7C8019E +:100FC0009A6823E0CC0FDD1F2A95E1F7C07ED77029 +:100FD0008C010C2B1D2B56C08530910531F4DC2F74 +:100FE000CC278E01046F106A4DC0069709F04AC0E5 +:100FF000CF71DD27DC2FCC278E01106243C000E0CB +:1010000010E040C08E013EC001E810E43BC003E8A0 +:1010100010E438C002EE14E435C009EE14E432C026 +:101020000AEE14E42FC005EB14E42CC006EB14E424 +:1010300029C007EB14E426C00CEC14E423C00DEC2B +:1010400014E420C003E815E41DC00AE815E41AC042 +:1010500002E915E417C004E915E414C001E216E43E +:1010600011C003E216E40EC004E216E40BC005E270 +:1010700016E408C006E216E405C007E216E402C062 +:101080000AE216E4C801DF91CF911F910F910895F4 +:1010900096E0799FF001112494E5899FE00DF11D00 +:1010A0001124E60FF11DEE0FFF1FE25FFE4F859149 +:1010B0009491803E9105E0F4803C910558F5813390 +:1010C000910509F46FC048F48932910509F463C0B1 +:1010D0008A32910509F46DC072C089339105E9F037 +:1010E00082389105D1F08533910509F44DC067C070 +:1010F000833E910581F138F4803E9105B9F0823E3E +:101100009105D9F05CC0863E910561F1873E91055D +:10111000A1F155C00E94050608952091FA0120FD15 +:1011200002C021FF4CC080EE90E049C08091FA01DE +:1011300080FFF9CF89E390E042C08091FA0182FFFD +:101140000EC08091FA0184FF03C080E090E037C0B8 +:1011500083EE90E034C08091FA0182FFF2CF82EEFC +:1011600090E02DC08091FA0183FF0BC08091FA01BD +:1011700084FDEBCF87EE90E022C08091FA0183FFDF +:10118000F5CF86EE90E01BC08091FA0185FF07C085 +:1011900089E290E014C08091FA0185FFF9CF85E3E0 +:1011A00090E00DC08091FA0186FF07C08AE290E0CE +:1011B00006C08091FA0186FFF9CF81E390E00E949A +:1011C0001506089508950C94E20880916E01089523 +:1011D000CF93DF9300D01F92CDB7DEB79C018091F3 +:1011E000F101843019F593E099833B832A8390932E +:1011F000E9008FEF9091E800815095FD06C095EDD4 +:101200009A95F1F700008111F5CF8091E80085FFF4 +:101210000DC040E050E063E070E0CE0101960E9416 +:10122000520B8091E8008E778093E8000F900F902A +:101230000F90DF91CF910895CF93DF9300D01F924D +:10124000CDB7DEB72091F101243021F522E02983CA +:101250009B838A8383E08093E9008FEF9091E8007D +:10126000815095FD06C095ED9A95F1F7000081112A +:10127000F5CF8091E80085FF0DC040E050E063E0CD +:1012800070E0CE0101960E94520B8091E8008E77AB +:101290008093E8000F900F900F90DF91CF91089509 +:1012A0002091F1012430F1F422E02093E9002FEFA6 +:1012B0003091E800215035FD06C035ED3A95F1F743 +:1012C00000002111F5CF2091E80025FF0BC040E080 +:1012D00050E065E070E00E94520B8091E8008E774C +:1012E0008093E8000895CF93DF93EC019091F10192 +:1012F000943009F046C080910C018823D9F0809188 +:101300000D018823B9F09093E9008FEF9091E800E8 +:10131000815095FD06C095E19A95F1F70000811185 +:10132000F5CF8091E80085FF2CC040E050E060E1FF +:1013300070E017C081E08093E9008FEF9091E800A2 +:10134000815095FD06C095ED9A95F1F70000811149 +:10135000F5CF8091E80085FF14C040E050E068E0E0 +:1013600070E0CE010E94520B8091E8008E7780934E +:10137000E80080E1FE01AEE5B1E001900D928A95B2 +:10138000E1F7DF91CF9108958091F001811109C0BB +:101390000E94E70C0E94440D8091E20084608093DB +:1013A000E20008951092F001089508950C942B2204 +:1013B0000E948C1B0E9431220E94EA0F0C94E308C9 +:1013C00042E061EC81E00E94610C42E061EC82E06D +:1013D0000E94610C42E061EC83E00E94610C42E1FA +:1013E00061EC84E00C94610C8091F301833009F48A +:1013F00055C030F4813071F0823009F48EC0089508 +:101400008A3009F47AC08B3009F460C0893009F061 +:101410009CC020C08091F201813A09F096C0809171 +:10142000E800877F8093E8008091F6019091F701B2 +:10143000892B21F460E18EE591E003C060E080E05B +:1014400090E070E00E949D0B8091E8008B77809384 +:10145000E80008958091F201813209F076C0809110 +:10146000F6019091F701009719F0039709F06DC00C +:101470008091E800877F8093E8008091E80082FDFA +:1014800005C08091F1018111F8CF5FC08091F1001A +:1014900080936E018091E8008B7753C08091F201B8 +:1014A000813A09F052C08091F6019091F701892BA1 +:1014B00009F04BC08091E800877F8093E80080911D +:1014C000E80080FFFCCF80910C0136C08091F201D2 +:1014D0008132D9F58091F6019091F701892BA9F518 +:1014E0008091E800877F8093E8000E94960C8091AD +:1014F000F40180930C010C9483148091F2018132E9 +:1015000021F58091E800877F8093E8000E94960C87 +:101510008091F50180936F0108958091F201813AE5 +:10152000A1F48091E800877F8093E8008091E80033 +:1015300080FFFCCF80916F018093F1008091E800E3 +:101540008E778093E8000C94960C089584B7877F7B +:1015500084BF88E10FB6F894809360001092600019 +:101560000FBE90E080E80FB6F894809361009093EE +:1015700061000FBE0E9439100E94E70C0E94440DCA +:101580008091E20084608093E20078940E94CA0F08 +:101590000E943B1082E091E00E94E50F0E94192218 +:1015A0008091F101853069F40E94531B8091EF0115 +:1015B0008823B1F30E947E1B882391F30E943C0B89 +:1015C000EFCF0E944110ECCF292F33272330310574 +:1015D000C9F064F42130310581F02230310509F081 +:1015E00043C08DE690E02AE333E042C0213231056A +:1015F000F1F02232310541F137C082E190E027EA73 +:1016000033E036C099278130910541F08230910551 +:1016100041F0892B49F5E6E3F3E005C0EEE1F3E0A4 +:1016200002C0E6E0F3E0849190E09F0121C06430C5 +:10163000D8F4E62FF0E0EE0FFF1FEE5DFE4F2081A5 +:10164000318189E090E014C0643070F470E0FB01F7 +:10165000EE0FFF1FE65EFE4F20813181FB01EA5E47 +:10166000FE4F808190E004C080E090E020E030E018 +:10167000FA0131832083089580E189BD82E189BD2B +:1016800009B400FEFDCF8091D8008F7D8093D800F3 +:101690008091E00082608093E0008091E00081FD15 +:1016A000FCCF0895CF92DF92EF92FF920F931F939A +:1016B000CF93DF93EC018B016A010E94B50C81117D +:1016C00033C0C114D10439F0F60180819181081B27 +:1016D000190BC80FD91FE12CF12C0115110519F1B7 +:1016E0008091E80085FD16C08091E8008E77809398 +:1016F000E800C114D10449F0F60180819181E80E1F +:10170000F91EF182E08285E00FC00E94B50C8823AB +:1017100021F30AC089918093F10001501109FFEF74 +:10172000EF1AFF0ADACF80E0DF91CF911F910F917E +:10173000FF90EF90DF90CF9008952091F8013091C5 +:10174000F9012617370748F06115710539F4209122 +:10175000E8002E772093E80001C0B90140E0611550 +:101760007105A9F12091F101222309F443C025302C +:1017700009F442C02091E80023FD40C02091E80018 +:1017800022FD32C02091E80020FFE9CF4091F30014 +:101790002091F20030E0342BFC01CF01611571057E +:1017A00059F02830310540F481918093F100615067 +:1017B00071092F5F3F4FF1CF41E02830310509F02B +:1017C00040E02091E8002E772093E800C8CF411137 +:1017D000C9CF0AC08091F101882361F0853061F0A2 +:1017E0008091E80083FD0AC08091E80082FFF2CF7B +:1017F00080E0089582E0089583E0089581E00895EF +:101800002091F8013091F9012617370748F061154A +:10181000710539F42091E8002E772093E80001C08B +:10182000B901FC0120E06115710591F18091F10190 +:10183000882309F440C0853009F43FC08091E80056 +:1018400083FD3DC08091E80082FD2FC08091E800BB +:1018500080FFE9CF2091F3008091F20090E0922B7D +:101860006115710559F08830910540F42491209359 +:10187000F1003196615071090196F2CF21E008978D +:1018800009F020E08091E8008E778093E800CBCFCC +:101890002111CCCF0AC08091F101882361F08530FD +:1018A00061F08091E80083FD0AC08091E80082FF2A +:1018B000F2CF80E0089582E0089583E0089581E00A +:1018C0000895982F973058F59093E900981739F0BC +:1018D0007091EC002091ED005091F00003C0242F96 +:1018E000762F50E021FF19C03091EB003E7F3093FE +:1018F000EB003091ED003D7F3093ED003091EB0037 +:1019000031603093EB007093EC002093ED00509326 +:10191000F0002091EE0027FF07C09F5FD3CF8F70AC +:101920008093E90081E0089580E008958091F201BC +:1019300087FF11C08091E80082FD05C08091F10110 +:101940008111F8CF11C08091E8008B770BC0809196 +:10195000F101882349F08091E80080FFF8CF809161 +:10196000E8008E778093E80008952091E40030919C +:10197000E50095E64091EC00842F817040FF22C085 +:101980008091E80080FD1CC08091F101882391F0D6 +:10199000853091F08091EB0085FD10C04091E4000E +:1019A0005091E5004217530729F39A01915011F71E +:1019B00084E0089582E0089583E0089581E0089529 +:1019C00080E008954091E80042FFDECF08950E9434 +:1019D000550D0E945D0DE0EEF0E080818160808316 +:1019E000E8EDF0E080818F77808319BCA7EDB0E04F +:1019F0008C918E7F8C9380818F7E80831092F001FA +:101A000008950F931F93CF93DF930E94550D0E946B +:101A10005D0DC8EDD0E088818F77888388818068EC +:101A2000888388818F7D888319BC1092F101109280 +:101A3000ED011092EF011092EE0100EE10E0F801BE +:101A400080818B7F808388818160888342E060E031 +:101A500080E00E94610CE1EEF0E080818E7F808367 +:101A6000E2EEF0E080818160808380818860808305 +:101A7000F80180818E7F8083888180618883DF91F7 +:101A8000CF911F910F910895E8EDF0E080818F7E56 +:101A90008083E7EDF0E080818160808384E082BF15 +:101AA00081E08093F0010C94010DE8EDF0E080817D +:101AB0008E7F80831092E20008951092DA001092D7 +:101AC000E10008951F920F920FB60F9211242F93E9 +:101AD0003F934F935F936F937F938F939F93AF93B6 +:101AE000BF93EF93FF938091E10082FF0BC0809141 +:101AF000E20082FF07C08091E1008B7F8093E100CC +:101B00000E94C90F8091DA0080FF1FC08091D80029 +:101B100080FF1BC08091DA008E7F8093DA00809175 +:101B2000D90080FF0DC080E189BD82E189BD09B483 +:101B300000FEFDCF81E08093F1010E94C40905C041 +:101B400019BC1092F1010E94D2098091E10080FF3E +:101B500019C08091E20080FF15C08091E2008E7F65 +:101B60008093E2008091E20080618093E2008091A6 +:101B7000D80080628093D80019BC85E08093F10181 +:101B80000E94D6098091E10084FF30C08091E2007C +:101B900084FF2CC080E189BD82E189BD09B400FECB +:101BA000FDCF8091D8008F7D8093D8008091E10097 +:101BB0008F7E8093E1008091E2008F7E8093E2002F +:101BC0008091E20081608093E2008091ED018823A2 +:101BD00011F084E007C08091E30087FD02C081E03E +:101BE00001C083E08093F1010E94D8098091E10057 +:101BF00083FF29C08091E20083FF25C08091E1002E +:101C0000877F8093E10082E08093F1011092ED01E3 +:101C10008091E1008E7F8093E1008091E2008E7FD1 +:101C20008093E2008091E20080618093E20042E0D4 +:101C300060E080E00E94610C8091F00088608093F9 +:101C4000F0000E94D509FF91EF91BF91AF919F9154 +:101C50008F917F916F915F914F913F912F910F9055 +:101C60000FBE0F901F9018951F920F920FB60F92F4 +:101C700011242F933F934F935F936F937F938F9391 +:101C80009F93AF93BF93CF93DF93EF93FF93C09155 +:101C9000E900CF708091EC00D82FD17080FDD0E8A2 +:101CA0001092E9008091F000877F8093F000789493 +:101CB0000E94780E1092E9008091F0008860809375 +:101CC000F000CD2BCF70C093E900FF91EF91DF9131 +:101CD000CF91BF91AF919F918F917F916F915F91C4 +:101CE0004F913F912F910F900FBE0F901F9018951D +:101CF0001F93CF93DF93CDB7DEB7AA970FB6F894B3 +:101D0000DEBF0FBECDBFE2EFF1E088E08E0F909115 +:101D1000F10091938E13FBCF0E94F4098091E800AB +:101D200083FF1FC18091F2019091F301492F50E090 +:101D30004A30510508F015C1FA01EA5AFF4F0C94D8 +:101D4000B323803881F0823809F00BC18091F6010D +:101D50008F708093E9008091EB0085FB882780F9E4 +:101D60001092E90006C08091EE019091EF0191116F +:101D700082609091E800977F9093E8008093F10053 +:101D80001092F100C8C0282F2D7F09F0EAC08823E7 +:101D900019F0823061F0E5C08091F401813009F0E2 +:101DA000E0C0933009F080E08093EF012BC0809178 +:101DB000F401811127C08091F6018F7009F4D1C020 +:101DC0008093E9002091EB0020FF1CC0933021F4A8 +:101DD0008091EB00806214C09091EB009061909331 +:101DE000EB0021E030E0A90102C0440F551F8A95A5 +:101DF000E2F74093EA001092EA008091EB008860DD +:101E00008093EB001092E9008091E800877F86C004 +:101E10008111A7C01091F4011F778091E3008078B1 +:101E2000812B8093E3008091E800877F8093E80016 +:101E30000E94960C8091E80080FFFCCF8091E30027 +:101E400080688093E300111102C082E001C083E04A +:101E50008093F10186C08058823008F082C0809162 +:101E6000F4019091F5018C3D53E0950779F583E0FD +:101E70008A838AE289834FB7F894DE01139620E0C3 +:101E80003EE051E2E32FF0E050935700E49120FF51 +:101E900003C0E295EF703F5FEF708E2F90E0EA3065 +:101EA00010F0C79601C0C0968D939D932F5F24318B +:101EB00049F74FBF8091E800877F8093E8006AE28E +:101EC00070E0CE0101960E949D0B14C0AE014F5FE1 +:101ED0005F4F6091F6010E94E40ABC01009709F48B +:101EE00040C09091E800977F9093E80089819A81A3 +:101EF0000E94000C8091E8008B778093E80031C04D +:101F0000803879F58091E800877F8093E8008091A0 +:101F1000ED018093F1008091E8008E778093E800D6 +:101F20000E94960C1EC081111CC09091F401923049 +:101F3000C0F48091E800877F8093E8009093ED01E2 +:101F40000E94960C8091ED01811106C08091E30002 +:101F500087FD02C081E001C084E08093F1010E940E +:101F6000E0098091E80083FF0AC08091E800877F44 +:101F70008093E8008091EB0080628093EB00AA964A +:101F80000FB6F894DEBF0FBECDBFDF91CF911F918A +:101F900008950895CF938091F1018823A1F0C09115 +:101FA000E900CF709091EC00892F817090FD80E85E +:101FB000C82B1092E9008091E80083FD0E94780E02 +:101FC000CF70C093E900CF910895909375018093ED +:101FD00074010895E0917401F0917501309721F03A +:101FE0000190F081E02D099480E00895E091740162 +:101FF000F0917501309721F00280F381E02D099472 +:102000000895E0917401F0917501309721F00480FA +:10201000F581E02D099408952091720130917301AA +:102020008217930771F09093730180937201E0918E +:102030007401F0917501309721F00680F781E02D51 +:1020400009940895209170013091710182179307CE +:1020500071F09093710180937001E0917401F0919F +:102060007501309721F00084F185E02D09940895E1 +:1020700008950C9438100E94921B0E9433030C9414 +:10208000541C9F92AF92BF92CF92DF92EF92FF9239 +:102090000F931F93CF93DF9300D000D000D0CDB724 +:1020A000DEB70E944B030DE010E0AA24A394B12CEC +:1020B000902E802F0E943904980129583E4F6901C3 +:1020C000F901F080F826A1F40150110988F78FEF8B +:1020D00089838A831B820E949B1B8160782F9D834A +:1020E0008C8349815A816B818D810E94D8102FC0C9 +:1020F0009091DA0191FF04C08E830E943F048E818B +:1021000025E030E0A501022E01C0440F0A94EAF751 +:10211000E42E4F21C1F029839A828E2191E009F4A7 +:1021200090E09B830E949B1B8160782F9D838C8312 +:1021300049815A816B818D810E94D810F60180817E +:10214000E826E08204C021503109E0F6BDCF0E94AC +:102150003B1F109176010E94EA0F1817B9F00E94F8 +:10216000EA0F8093760126960FB6F894DEBF0FBE75 +:10217000CDBFDF91CF911F910F91FF90EF90DF9036 +:10218000CF90BF90AF909F900C94E30826960FB627 +:10219000F894DEBF0FBECDBFDF91CF911F910F919D +:1021A000FF90EF90DF90CF90BF90AF909F900895F9 +:1021B000CF93DF93CDB7DEB72B970FB6F894DEBF82 +:1021C0000FBECDBF4F83588769877A878B87DE0123 +:1021D000119686E0FD0111928A95E9F785E0FE01EE +:1021E000379601900D928A95E1F749815A816B816A +:1021F0007C818D819E810E9421172B960FB6F894C9 +:10220000DEBF0FBECDBFDF91CF910895CF9388235E +:1022100009F4C2C0C82F823859F40E94EA0F81FD28 +:10222000BBC089E30E94FB190E94C81A89E30CC055 +:10223000833879F40E94EA0F80FDAEC083E50E94E6 +:10224000FB190E94C81A83E50E943D1ACF910C9495 +:10225000C81A843859F40E94EA0F82FD9DC087E4B1 +:102260000E94FB190E94C81A87E4EECF8CEF8C0FF6 +:10227000813A48F48C2F0E947E2181118DC08C2FD1 +:102280000E94FB19E3CF80E28C0F883048F4C770BE +:1022900081E001C0880FCA95EAF70E94811AD6CF63 +:1022A0008BE58C0F833078F4C53A29F0C63A31F0CB +:1022B00083E890E005C081E890E002C082E890E009 +:1022C000CF910C940C1088E58C0F833108F064C01A +:1022D000C83A39F1C93A41F1CA3A49F1CB3A51F118 +:1022E000CC3A59F1CD3A61F1C03B69F1CE3A71F186 +:1022F000CF3A79F1C13B81F1C23B89F1C33B91F106 +:10230000C43B99F1C53BA1F1C63BA9F1C73BB1F173 +:10231000C83BB9F1C93BC1F1CA3BC9F180E090E0CB +:1023200038C082EE90E035C089EE90E032C08AEE8F +:1023300090E02FC085EB90E02CC086EB90E029C0A8 +:1023400087EB90E026C08CEC90E023C08DEC90E011 +:1023500020C083E891E01DC08AE891E01AC082E9BC +:1023600091E017C084E991E014C081E292E011C0CD +:1023700083E292E00EC084E292E00BC085E292E03C +:1023800008C086E292E005C087E292E002C08AE2DD +:1023900092E0CF910C942210CF910895882309F4F4 +:1023A0004BC0823859F40E94EA0F81FF45C089E38F +:1023B0000E94FB190E94C81A89E30CC0833871F48B +:1023C0000E94EA0F80FF38C083E50E94FB190E943B +:1023D000C81A83E50E943D1A0C94C81A843859F42F +:1023E0000E94EA0F82FF28C087E40E94FB190E9426 +:1023F000C81A87E4EFCF9CEF980F913A58F390E218 +:10240000980F983050F4877091E001C0990F8A9529 +:10241000EAF7892F0E94871ADFCF9BE5980F933048 +:1024200020F480E090E00C940C10885A833120F462 +:1024300080E090E00C9422100895882321F00E94FF +:10244000811A0C94C81A0895882321F00E94871AD3 +:102450000C94C81A08957F928F929F92AF92BF9268 +:10246000CF92DF92EF92FF920F931F93CF93DF9360 +:102470001F92CDB7DEB77C01C62E772EFC010581F9 +:1024800002950F70128111110E949E1A0E94F41978 +:10249000882379F0112369F080E28C0D883048F0B0 +:1024A00082E00E94DD190E94F41991E0D82ED9260D +:1024B00001C0D12CE72DE295EF70F0E0E05AFF4F1C +:1024C0000C94B323872D807F072D0F70882311F084 +:1024D0000295007F112389F0002309F490C180E266 +:1024E0008C0D883020F4802F0E94811A03C0802F29 +:1024F0000E94911A0E94C81A82C18C2D0E94CE118E +:10250000002309F495C180E28C0D883020F4802FDF +:102510000E94871A03C0802F0E94971A0E94C81A2F +:1025200087C1972D907F872D8F70903211F0829503 +:10253000807FCC2021F0F1E0CF16B1F01EC0112336 +:1025400049F0002309F414C1013009F011C10E94BF +:10255000B11A6EC1002319F0013009F469C18983F1 +:102560000E94B41A89810AC1112321F0023008F0B7 +:102570005FC1FEC001115CC101C1112321F0002324 +:1025800009F4F6C03CC1002309F4F8C03EC1872D10 +:1025900086958695837090E0009719F0019761F019 +:1025A00047C1112321F08C2D972D937002C080E03C +:1025B00090E00E940C103CC1112321F08C2D972D2E +:1025C000937002C080E090E00E94221031C18C2DF7 +:1025D000112319F00E94431E02C00E94AB1E0E94EC +:1025E000301F26C1872D837009F052C0111120C100 +:1025F0008C2D829586958770880F880F9C2D9F70F3 +:10260000892E912CA12CB12C082E04C0880C991C69 +:10261000AA1CBB1C0A94D2F7C4FE14C00FE010E041 +:1026200020E030E0B901A80104C0440F551F661F27 +:10263000771F8A95D2F7CB01BA0160957095809586 +:10264000909503C060E070E0CB01272D269526957C +:10265000237030E02230310569F02330310589F0F4 +:10266000682979298A299B292130310571F00E9436 +:102670006918DEC0682979298A299B290E94851852 +:10268000D7C00E946918C501B4010E944D18D0C07E +:10269000112319F0872D817001C08695882309F4D4 +:1026A000C7C08C2D829586958770880F880F9C2DCA +:1026B0009F70892E912CA12CB12C082E04C0880C5F +:1026C000991CAA1CBB1C0A94D2F7C4FE14C00FE0CC +:1026D00010E020E030E0B901A80104C0440F551F0C +:1026E000661F771F8A95D2F7CB01BA016095709566 +:1026F0008095909503C060E070E0CB01272D269572 +:1027000026952370422F50E04230510569F0433046 +:10271000510589F0682979298A299B294130510579 +:1027200071F00E94431984C0682979298A299B295C +:102730000E945F197DC00E944319C501B4010E9427 +:10274000271976C08C2D90E0FC01E05EF109E5319F +:10275000F10508F050C0E059FF4F0C94B3230C2D45 +:102760000F70872D8F71112331F00E94C018802FB8 +:102770000E941D125DC00E94E118802F0E94241249 +:1027800057C0112339F0011153C0872D8F710E945A +:1027900006194EC0023008F04BC0F7CF112339F0B4 +:1027A000872D8F710E94C01843C01123C9F3872D54 +:1027B0008F710E94E1183CC0112329F0872D8F7181 +:1027C0000E94AB1835C00E94A11832C0112351F0ED +:1027D000172D1F71812F0E94C01863E0812F0E9466 +:1027E000D41926C081E00E94DD19023008F182E090 +:1027F0000E94DD191DC0112331F0002389F28C2DB8 +:102800000E94061115C0002391F28C2D0E94CE115A +:102810000FC0472D4F706C2DC7010E9415050E94F7 +:10282000C51706C0472D4F706C2DC7010E94F205D9 +:10283000DD20F9F00E94D01980FD1BC0F701128243 +:102840000E94CA190E94C018C7010E9448140E9421 +:10285000CA190F90DF91CF911F910F91FF90EF90C8 +:10286000DF90CF90BF90AF909F908F907F900C940F +:10287000E1180F90DF91CF911F910F91FF90EF9092 +:10288000DF90CF90BF90AF909F908F907F900895F2 +:102890000F931F93CF93DF93EC01888199812B8154 +:1028A0003C81232BB9F09F3F11F48F3F99F0CE016B +:1028B0000E944A05882371F0688179818A810E948B +:1028C000C6198C010E947B190E944218B801CE01E2 +:1028D0000E942B12DF91CF911F910F9108950E94BA +:1028E0009E1A0E94AE1A0E94731A0E94C81A0E9471 +:1028F000E11F0E94301F80E090E00E940C1080E0F9 +:1029000090E00C9422100E948E1A0C946F140E9476 +:10291000BB19292F22952F7030E02C3031054CF453 +:102920002A3031056CF42250310922303105A8F4E7 +:1029300007C02C30310569F02F30310551F00DC042 +:10294000803F69F018F4803E40F409C0843F29F4C8 +:1029500006C093FB882780F9089580E0089581E000 +:102960000895CF93DF9300D000D01F92CDB7DEB78C +:102970000F900F900F900F900F90DF91CF910895CF +:10298000CF93DF9300D000D000D0CDB7DEB726962E +:102990000FB6F894DEBF0FBECDBFDF91CF91089583 +:1029A0001F93CF93DF93C091850116E0809186013C +:1029B000C81799F0D0E01C9FF0011D9FF00D112465 +:1029C000E957FE4F408151816281738184819581F5 +:1029D0000E94C0142196C770E9CFDF91CF911F915B +:1029E00008954091B7015091B8016091B90170917B +:1029F000BA018091BB019091BC010C94C0148091EC +:102A0000BC0182958F7009F054C08091B901882370 +:102A100009F44FC080918501A09186016091B701B2 +:102A20007091B8014091BA015091BB01B6E08A178C +:102A300009F43FC090E041155105C1F17F3F11F409 +:102A40006F3FA1F1B89FF001B99FF00D1124E95734 +:102A5000FE4F218172132AC02081621327C0228178 +:102A6000211124C0238134812417350710F421500B +:102A70003109241B350B283C3105C0F42091BC01E1 +:102A80002F7020612093BC0126E0289FF001299F30 +:102A9000F00D1124E457FE4F80818F708061808398 +:102AA00087EB91E00E9448140C94D0140196877033 +:102AB000BECF0895CF92DF92EF92FF920F931F93B4 +:102AC000CF93DF93CDB7DEB762970FB6F894DEBF32 +:102AD0000FBECDBF8C0185E0F801DE011D9601908F +:102AE0000D928A95E1F7D8014C9111965C9111975E +:102AF00012966C9112971396CD90DC9014973091AA +:102B0000B7017091B8018091BA019091BB01009713 +:102B100009F46BC17F3F19F43F3F09F466C1E090AF +:102B2000B901EE2009F4C0C02091BC01C816D90635 +:102B300028F0F601E81BF90BCF0104C080959095B1 +:102B40008C0D9D1DFF24F394883C910578F0F12CA9 +:102B5000207F09F0C6C07C2DD98AC88A89890E9445 +:102B6000B11487EB91E00E944814B1C0822F807F9E +:102B700009F046C0751314C0341312C0611110C09F +:102B80002F7020612093BC010E94F11487EB91E02B +:102B90000E9448148091BC01D80115968C932EC0D8 +:102BA000CD2819F15F3F11F44F3FF9F0F62E611176 +:102BB0001CC0809185012091860136E0821709F4BE +:102BC0005AC090E0389FF001399FF00D1124E95769 +:102BD000FE4F7181571306C07081471303C0728185 +:102BE000711103C001968770E9CFF62E662309F4B0 +:102BF00018C18091BC0181608093BC01F12C11C18E +:102C0000751308C0341306C0611104C08091BC0163 +:102C1000D801C3C04D875E878D859E856A8B0E94D3 +:102C200087146A898823E1F16623D1F12091BC01E0 +:102C3000822F82958F7090E0029774F08091B70197 +:102C40009091B80198878F831986DB86CA862C8776 +:102C5000CE0107960E94481486E0F801A7EBB1E088 +:102C600001900D928A95E1F70E94FF140E94F114E1 +:102C7000FF24F394D6C04D875E878D859E850E9484 +:102C8000BB19292F22952F7030E0223031050CF02E +:102C9000BCC09F7009F0B6C0805E883008F4C1C027 +:102CA000C8010E944814E4CFC816D90608F453C0DE +:102CB000F601E81BF90BCF01883C910508F450C0E0 +:102CC000F12C7C2DD98AC88A89890E94B114E7EB3E +:102CD000F1E086E0DF011D928A95E9F70E94F11488 +:102CE000A0C0751314C0341312C0611110C08091BC +:102CF000BC01F8018583C8010E94481486E0E7EB17 +:102D0000F1E0DF011D928A95E9F7FE2C8AC04D871C +:102D10005E878D859E856A8B0E9487146A898823C9 +:102D200009F4BECF662309F4BBCF2091BC01822FEA +:102D300082958F7090E002970CF48ECF8091B7014E +:102D40009091B8019A8389831B82DD82CC822E8385 +:102D5000CE0101967FCF809590958C0D9D1DACCFB7 +:102D6000F62E662309F49CCF75132EC034132CC0A5 +:102D70002091BC0120FD1FC0822F82958F70D9F059 +:102D8000D80115962C9315978F3049F08F5F982FA7 +:102D90009295907F822F8F70892B15968C93C80106 +:102DA0000E94481486E0F801A7EBB1E001900D9273 +:102DB0008A95E1F793CF86E0F801A7EBB1E00190A7 +:102DC0000D928A95E1F72DC04D875E878D859E8592 +:102DD0000E948714811140CF8091BC018160809353 +:102DE000BC01C8010E9448141CC0662309F458CFD6 +:102DF0004D875E878D859E850E948714882309F400 +:102E00004FCF2ACF811148CF0CC0243031050CF0B0 +:102E100047CF9F7009F440CFF8019581907F09F06A +:102E20003BCF8F2D62960FB6F894DEBF0FBECDBF9D +:102E3000DF91CF911F910F91FF90EF90DF90CF9096 +:102E400008951F93CF93DF93CDB7DEB72C970FB6BE +:102E5000F894DEBF0FBECDBF4F83588769877A874E +:102E60008B879C87CE0107960E945A15882369F0AC +:102E70008F8198852A853B85232BF1F19F3F09F0AF +:102E800063C08F3F09F060C037C086E0FE0137960F +:102E9000DE01119601900D928A95E1F76F81788598 +:102EA000EA85FB85309741F17F3F11F46F3F21F1B7 +:102EB0002091860130E0C9010196877099274091E1 +:102EC000850150E08417950709F447C069837A8328 +:102ED000FD83EC8396E0929FD001939FB00D112467 +:102EE000A957BE4FFE01319601900D929A95E1F7D8 +:102EF000809386010E94D01416E080918501909104 +:102F000086018917C1F1189FC001112489579E4F6E +:102F10000E945A15882379F1E09185011E9FF001E6 +:102F20001124E957FE4F4081518162817381848170 +:102F300095810E94C0148091850190E00196877070 +:102F4000992780938501D9CF4F81588569857A85E6 +:102F50008B859C850E94C014CFCF0E948314109251 +:102F6000860110928501E7EBF1E086E0DF011D921A +:102F70008A95E9F7C1CF2C960FB6F894DEBF0FBE45 +:102F8000CDBFDF91CF911F910895EF92FF920F93E4 +:102F90001F93CF93DF938C01009709F46CC0F12C41 +:102FA000EE24E394E8012196F8018491843740F4FB +:102FB000843008F051C0813081F0823019F15BC05B +:102FC000853709F444C0A8F19CE7980F903708F0C2 +:102FD00052C08F770E94CE1141C00E5F1F4FFE017D +:102FE000C49180E28C0F883048F4C7708E2D01C0E8 +:102FF000880FCA95EAF70E94A11A14C08C2F0E946C +:1030000006112DC00E5F1F4FFE01C49180E28C0F90 +:10301000883058F4C7708E2D01C0880FCA95EAF722 +:103020000E94A71A0E94C81A1AC08C2F0E94CE11A3 +:1030300016C00E5F1F4FFE01C491CC2381F08FE9B3 +:103040009FE00197F1F700C00000C150F6CF0E5F7E +:103050001F4FFE01F49003C00E9406118E018F2DB8 +:10306000882309F49FCFEFE9FFE03197F1F700C023 +:1030700000008150F5CFDF91CF911F910F91FF900C +:10308000EF90089508956093C1017093C2018093F9 +:10309000C3019093C4010C946F140F931F9300917C +:1030A000C1011091C2012091C3013091C401DC0122 +:1030B000CB01802B912BA22BB32B8093C10190933A +:1030C000C201A093C301B093C4011F910F910C944E +:1030D0006F140F931F930091C1011091C2012091B1 +:1030E000C3013091C401DC01CB0180239123A223D1 +:1030F000B3238093C1019093C201A093C301B09305 +:10310000C4011F910F910C946F140F931F930091A2 +:10311000C1011091C2012091C3013091C401DC01B1 +:10312000CB0180279127A227B3278093C1019093D9 +:10313000C201A093C301B093C4011F910F910C94DD +:103140006F141092BD011092BE011092BF01109237 +:10315000C0010C946F1441E050E060E070E004C0E6 +:10316000440F551F661F771F8A95D2F74093BD0104 +:103170005093BE016093BF017093C0010C946F1413 +:1031800041E050E060E070E004C0440F551F661F4E +:10319000771F8A95D2F78091BD019091BE01A091D1 +:1031A000BF01B091C001482B592B6A2B7B2B409358 +:1031B000BD015093BE016093BF017093C0010C9498 +:1031C0006F1441E050E060E070E004C0440F551F10 +:1031D000661F771F8A95D2F7409550956095709538 +:1031E0008091BD019091BE01A091BF01B091C0013D +:1031F000482359236A237B234093BD015093BE018A +:103200006093BF017093C0010C946F1441E050E0D3 +:1032100060E070E004C0440F551F661F771F8A9559 +:10322000D2F78091BD019091BE01A091BF01B091F4 +:10323000C001482759276A277B274093BD01509337 +:10324000BE016093BF017093C0010C946F140F9383 +:103250001F930091BD011091BE012091BF013091DB +:10326000C001DC01CB01802B912BA22BB32B8093CF +:10327000BD019093BE01A093BF01B093C0011F9107 +:103280000F910C946F140F931F930091BD01109137 +:10329000BE012091BF013091C001DC01CB01802330 +:1032A0009123A223B3238093BD019093BE01A093E9 +:1032B000BF01B093C0011F910F910C946F140F9335 +:1032C0001F930091BD011091BE012091BF0130916B +:1032D000C001DC01CB0180279127A227B32780936F +:1032E000BD019093BE01A093BF01B093C0011F9197 +:1032F0000F910C946F140895CF92DF92EF92FF928A +:103300000F931F93CF93DF938C01C090C101D09096 +:10331000C201E090C301F090C4018091BD01909181 +:10332000BE01A091BF01B091C001C82AD92AEA2AE2 +:10333000FB2ACFE1D0E0D701C6010C2E04C0B69520 +:10334000A795979587950A94D2F780FF06C0B80194 +:103350008C2F0E944808019721F4219760F780E0A4 +:1033600001C08C2FDF91CF911F910F91FF90EF90B3 +:10337000DF90CF900895CF93DF93EC010E947C19EA +:10338000BE010E944808DF91CF910895CB010E94B1 +:10339000BB1908958091C5018595859585950895FA +:1033A0008091C5018770089598E0899F900111244C +:1033B000262B2093C5010C94C0182091C50180953F +:1033C00082238093C501982F977069F430E0482FCD +:1033D000552747FD50952417350729F08595859584 +:1033E00085950C94E11808959091C501977081E03E +:1033F00009F480E0089590910C01992321F09091B7 +:103400000D01911109C020910E0130910F01F901B8 +:1034100032969FEF40E01FC0982F9695969596950F +:103420009F3050F5E0910E01F0910F01E90FF11D71 +:10343000877021E030E0A90102C0440F551F8A9532 +:10344000E2F7CA019181892B818308959F3F39F06A +:103450004F5F4E3041F051915813F8CF0DC05111CC +:10346000F7CF942FF5CF9F3F39F0F901E90FF11D08 +:1034700097FDFA9582830895089590910C01992300 +:1034800021F090910D01911109C020910E01309110 +:103490000F01F9013296205F3F4F1FC0982F96957C +:1034A000969596959F30F0F4E0910E01F0910F0102 +:1034B000E90FF11D877021E030E0A90102C0440F3F +:1034C000551F8A95E2F7CA018095918189238183EE +:1034D00008953196E217F30729F090819813F9CFF8 +:1034E0001082F7CF089581E090E0E0910E01F09115 +:1034F0000F01E80FF91F1082019680319105A9F79D +:1035000008959091D901892B8093D90108958095D0 +:103510009091D90189238093D90108951092D901FE +:1035200008959091D801892B8093D80108958095B2 +:103530009091D80189238093D80108951092D801E1 +:1035400008959091D701892B8093D7010895809594 +:103550009091D70189238093D70108951092D701C4 +:1035600008958093C60108951092C6010895809130 +:103570000E0190910F01FC0131969C01205F3F4F9D +:1035800080E0919191118F5FE217F307D1F70895D1 +:10359000E0910E01F0910F018091D9018083E091BB +:1035A0000E01F0910F0190818091D801892B8083C9 +:1035B000E0910E01F0910F0190818091D701892B4C +:1035C00080838091C601882361F0E0910E01F09123 +:1035D0000F019081892B80830E94B71A811110926C +:1035E000C60180910E0190910F010C94F60F20E01E +:1035F000009739F0AC0141505109842395232F5F86 +:10360000F7CF822F0895CF92DF92EF92FF926C0155 +:10361000EE24FF24C114D104E104F10421F0C70118 +:10362000B60120E101C020E0C72ED82EE92EFF24EC +:10363000C114D104E104F10419F0285FC701B601F7 +:103640006B017C0154E0F694E794D794C7945A95A3 +:10365000D1F7C114D104E104F10419F02C5FC701C2 +:10366000B6016B017C0142E0F694E794D794C794CD +:103670004A95D1F7C114D104E104F10419F02E5F89 +:10368000C701B601DC01CB01B695A7959795879543 +:10369000892B8A2B8B2B09F02F5F822FFF90EF90C5 +:1036A000DF90CF9008958091F101843021F1109244 +:1036B000DB0120E488E190E00FB6F894A8958093B0 +:1036C00060000FBE2093600080E00E94E30883B793 +:1036D000817F846083BF83B7816083BF789488953E +:1036E00083B78E7F83BF88E10FB6F8948093600024 +:1036F000109260000FBE0895089508950E947C1BEB +:103700000E944B030E947D1B0E94400491E08111A6 +:1037100001C090E0892F08950E9483140E94EA0F4F +:103720000C94E30882E084BD93E095BD9AEF97BDC9 +:1037300080936E0008952FB7F8948091DC019091EA +:10374000DD01A091DE01B091DF012FBF0895CF927E +:10375000DF92EF92FF920F931F932FB7F89440914F +:10376000DC015091DD016091DE017091DF012FBF1E +:103770006A017B01EE24FF248C0120E030E0C016BA +:10378000D106E206F30610F4415051099A01281BB4 +:10379000390BC9011F910F91FF90EF90DF90CF90EF +:1037A00008951F920F920FB60F9211248F939F933B +:1037B000AF93BF938091DC019091DD01A091DE0178 +:1037C000B091DF010196A11DB11D8093DC019093A2 +:1037D000DD01A093DE01B093DF01BF91AF919F9116 +:1037E0008F910F900FBE0F901F9018950E94E70CBD +:1037F000F8942FEF87EA91E6215080409040E1F75E +:1038000000C0000087E090EBDC018093FB01909307 +:10381000FC01A093FD01B093FE019CE088E10FB68E +:10382000F894A895809360000FBE90936000FFCF3E +:10383000EF92FF920F931F93CF93DF93D82FCDE09A +:103840008C2F0E94390405E010E0E82EF12CC7010E +:10385000002E02C0959587950A94E2F780FF09C073 +:10386000602F7C2F80E00E94F305D81302C081E016 +:1038700006C00150110958F7C15010F780E0DF91E0 +:10388000CF911F910F91FF90EF900895CF93C82F84 +:103890008CE20E94181C882321F08C2FCF910C946D +:1038A000181C80E0CF910895CF930E949B1D811139 +:1038B00002C00E94811DC5E6C15049F00E944B0321 +:1038C0008FE39CE90197F1F700C00000F5CF89E292 +:1038D0000E94461C811113C18AE20E94461C81117C +:1038E0000E94811D85E00E94461C81110E94F61BEA +:1038F0000E94A61D8093DA0187E00E94461C88235F +:10390000A9F18BE10E94461C882351F08091DA01D5 +:1039100081FB222720F991E0922790FB81F90EC0CC +:103920008EE00E94461C882361F08091DA0182FBC0 +:10393000222720F991E0922790FB82F98093DA0107 +:1039400015C080E10E94461C9091DA01882341F065 +:1039500093FB222720F981E0822780FB93F904C0A2 +:10396000892F809580FB90F99093DA018091DA019C +:103970000E94AA1D0E94B81D8093FA0180EE0E9449 +:10398000461C882341F08091FA01982F909590FB76 +:1039900080F98093FA0189E30E94461C882359F03C +:1039A0008091FA0181FB222720F991E0922790FB78 +:1039B00081F98093FA0182EE0E94461C882359F017 +:1039C0008091FA0182FB222720F991E0922790FB57 +:1039D00082F98093FA0186EE0E94461C882359F0F2 +:1039E0008091FA0183FB222720F991E0922790FB36 +:1039F00083F98093FA0183EE0E94461C882359F0D4 +:103A00008091FA0184FB222720F991E0922790FB14 +:103A100084F98093FA0185E30E94461C882359F0BB +:103A20008091FA0185FB222720F991E0922790FBF3 +:103A300085F98093FA0181E30E94461C882359F09E +:103A40008091FA0186FB222720F991E0922790FBD2 +:103A500086F98093FA0181E10E94461C882359F07F +:103A60008091FA0187FB222720F991E0922790FBB1 +:103A700087F98093FA018091FA010E94BC1D809120 +:103A8000FA0187FB882780F980930D0187E20E9465 +:103A9000461CC82F8EE10E94461C8111C2608FE136 +:103AA0000E94461C8111C46080E20E94461C811164 +:103AB000C86081E20E94461C8111C06182E20E94BE +:103AC000461C8111C06283E20E94461C8111C064C1 +:103AD00084E20E94461C882311F0C06802C0CC23F7 +:103AE00029F08C2F0E94B31D6C2F03C00E94AF1DC4 +:103AF000682F70E080E090E0CF910C944318CF9154 +:103B000008956DEE7EEF80E090E00E94ED2360E08E +:103B100082E090E00E94DB2360E083E090E00E947E +:103B2000DB2360E084E090E00E94DB2360E085E03E +:103B300090E00C94DB2380E090E00E94D52321E00C +:103B40008D3E9E4F09F020E0822F089582E090E0A4 +:103B50000C94CD23682F82E090E00C94DB2383E06B +:103B600090E00C94CD23682F83E090E00C94DB234D +:103B700084E090E00C94CD23682F84E090E00C94D6 +:103B8000DB238091E20180FF0BC06091130185E08F +:103B9000689FB001112475956795759567952BC041 +:103BA00081FF09C06091130185E0689FB001112475 +:103BB0007595679520C082FF07C06091130185E06D +:103BC000689FB001112417C09091E3019923D1F0AF +:103BD00060911201961788F72091130185E0289FC4 +:103BE00090011124929FA001939F500D112470E029 +:103BF000CA010E949F236038710540F46115710568 +:103C000039F002C065E070E0862F08958FE70895CF +:103C100081E008958091E20180FF08C06091110168 +:103C200070E0759567957595679521C081FF06C011 +:103C30006091110170E07595679519C082FF04C00D +:103C40006091110170E010C09091E3019923C1F0DF +:103C5000609110019617A0F780911101899FC00112 +:103C6000112470E00E949F236038710528F46115CB +:103C7000710521F0862F08958FE7089581E008955A +:103C800061E070E0F4CF803F21F40E94C11D819576 +:103C900004C0813F29F40E94C11D8093E60108956C +:103CA000823F21F40E94C11D819504C0833F29F405 +:103CB0000E94C11D8093E5010895893F19F40E9477 +:103CC0000A1E05C08A3F31F40E940A1E8195809326 +:103CD000E70108958B3F21F40E940A1E819504C0DC +:103CE0008C3F29F40E940A1E8093E8010895843FC6 +:103CF00021F48091E401816017C0853F21F4809117 +:103D0000E401826011C0863F21F48091E401846067 +:103D10000BC0873F21F48091E401886005C0883F93 +:103D200031F48091E40180618093E40108958D3F36 +:103D300021F48091E20181600BC08E3F21F48091DB +:103D4000E201826005C08F3F29F48091E201846026 +:103D50008093E2010895803F39F48091E60187FF66 +:103D60006CC01092E60169C0813F29F48091E601A0 +:103D70001816BCF362C09091E501823F29F497FFC9 +:103D80005CC01092E50159C0833F19F41916CCF3B9 +:103D900054C0893F41F48091E70118160CF04DC0E2 +:103DA0001092E7014AC08A3F29F48091E70187FF1A +:103DB00044C0F6CF8B3F39F48091E80187FF3DC0C6 +:103DC0001092E8013AC08C3F29F48091E80118165E +:103DD000BCF333C0843F21F48091E4018E7F17C08F +:103DE000853F21F48091E4018D7F11C0863F21F44D +:103DF0008091E4018B7F0BC0873F21F48091E40127 +:103E0000877F05C0883F31F48091E4018F7E8093E5 +:103E1000E40113C08D3F21F48091E2018E7F0BC03D +:103E20008E3F21F48091E2018D7F05C08F3F29F400 +:103E30008091E2018B7F8093E2018091E501811105 +:103E40000EC08091E60181110AC08091E7018111C5 +:103E500006C08091E801811102C01092E30108952B +:103E600084EE91E00E9401100E949B1B9093E1015F +:103E70008093E00108951F93CF93DF938091E00139 +:103E80009091E1010E94A71BAC019091E30199235D +:103E900021F02091140130E006C0209115018AE044 +:103EA000289F900111244217530708F486C080917F +:103EB000E501C091E601D091E7011091E80181117F +:103EC00007C0C11176C0D11174C0111172C075C084 +:103ED0009F3F19F09F5F9093E301181624F40E940E +:103EE000C11D8093E5018091E50187FF05C00E9417 +:103EF000C11D81958093E5011C1624F40E94C11D0B +:103F00008093E6018091E60187FF05C00E94C11DF4 +:103F100081958093E6016091E501662339F1C091B6 +:103F2000E601CC2319F1772767FD7095872F972F2E +:103F30000E94B02223E333E343E35FE30E941423B0 +:103F40000E947D226093E5016C2F772767FD7095B5 +:103F5000872F972F0E94B02223E333E343E35FE3ED +:103F60000E9414230E947D226093E6011D1624F412 +:103F70000E940A1E8093E7018091E70187FF05C038 +:103F80000E940A1E81958093E701111624F40E9475 +:103F90000A1E8093E8018091E80187FF05C00E9416 +:103FA0000A1E81958093E801DF91CF911F910C94B7 +:103FB000301F9F3F09F08ECF96CFDF91CF911F9199 +:103FC0000895E4EEF1E085E0DF011D928A95E9F7BE +:103FD0001092E3011092E2010895833081F128F4F8 +:103FE000813059F08230D1F00895853009F449C00C +:103FF000B8F1863009F456C0089580911501262F36 +:1040000030E0280F311D2F3F310524F4680F6093F5 +:10401000150108958FEF8093150108958091140183 +:10402000262F30E0280F311D2F3F310524F4680F73 +:104030006093140108958FEF809314010895809187 +:104040001301262F30E0280F311D2F3F310524F4B6 +:10405000680F6093130108958FEF80931301089503 +:1040600080911201262F30E0280F311D2F3F31059E +:1040700024F4680F6093120108958FEF809312016A +:10408000089580911101262F30E0280F311D2F3F18 +:10409000310524F4680F6093110108958FEF809328 +:1040A0001101089580911001262F30E0280F311D55 +:1040B0002F3F310524F4680F6093100108958FEFAE +:1040C000809310010895833011F128F4813049F074 +:1040D000823091F00895853081F120F18630C1F170 +:1040E000089580911501681720F4861B80931501AF +:1040F000089510921501089580911401681720F415 +:10410000861B8093140108951092140108958091E4 +:104110001301681720F4861B8093130108951092F1 +:104120001301089580911201681720F4861B809373 +:1041300012010895109212010895809111016817DB +:1041400020F4861B809311010895109211010895A7 +:1041500080911001681720F4861B80931001089548 +:104160001092100108950F931F938D3109F46BC0C5 +:1041700008F03FC08E3009F47FC0C0F4873009F4E6 +:1041800069C068F4863009F0B1C08091DA01817F9E +:104190008E7F8093DA0181E08093EA01A8C08830A5 +:1041A00009F4A2C08B3009F49FC0A0C0863109F485 +:1041B0009BC078F4803109F472C0813109F096C057 +:1041C0000E94831490910D0181E0892780930D0155 +:1041D0008BC0893109F488C08B3109F087C0809188 +:1041E000DA0181FB222720F991E0922790FB81F9E7 +:1041F0004CC0853309F470C048F4873209F46CC0B0 +:1042000008F459C0893209F467C070C0833438F4A7 +:104210008A3308F04EC0883309F466C067C083341F +:1042200009F45AC0883409F061C00E9483140FEF6A +:1042300013ED20E3015010402040E1F700C00000E2 +:104240000E94F61B51C00E9437220E94EA0F0E9472 +:10425000E3084AC09091DA01892F8095817080FB34 +:1042600090F929F0966098609093DA0140C0997FA8 +:10427000977F9093DA0138C08091DA0182FB222780 +:1042800020F991E0922790FB82F98093DA0199233B +:1042900059F18091DA0181608093DA0125C0809123 +:1042A000DA0183FB222720F991E0922790FB83F922 +:1042B000ECCF895301C08D5141E050E060E070E0E7 +:1042C0008A019B0104C0000F111F221F331F8A9512 +:1042D000D2F7C901B80104C061E070E080E090E06D +:1042E0000E9443180E94831481E001C080E01F9166 +:1042F0000F91089580E0089580E00895CF93C82F2E +:104300008091EA01813079F018F08230E9F187C0BC +:10431000E0910E01F0910F018081813169F08232CC +:1043200009F07FC009C0E0910E01F0910F0180817A +:10433000813111F0823261F48C2F0E947A21811137 +:1043400004C08C2F0E94B3201DC081E090E01AC0F1 +:104350008C2F0E947C21811114C0C43179F048F463 +:10436000CB3079F0C03109F060C082E08093EA017F +:1043700008C0C93219F0C83321F057C01092EA01C1 +:1043800054C081E0817053C0C93289F118F5C4313D +:1043900071F1A8F4C73009F046C08AE08093150196 +:1043A00094E19093140193E0909313018093120190 +:1043B00088E08093110188E28093100134C0CE51CF +:1043C000C63088F5EC2FF0E0E65DFE4F80818093EB +:1043D000E90129C0CE34E9F020F4CB3421F56AE0BC +:1043E00013C0C13579F0C235F1F461E00DC08091A0 +:1043F000E901882319F01092E90115C081E080934A +:10440000EA0115C061E006C08091E9010E94ED1F3C +:104410000AC06AE08091E9010E94632004C0109202 +:10442000EA0180E004C081E002C080E0ABCFCF9120 +:104430000895E1E8F0E08081886080838081816078 +:1044400080838FB7F89493E09093890090ED9093D8 +:1044500088008FBF0895EFE6F0E08081826080835E +:104460000895EFE6F0E080818D7F80830895EFE688 +:10447000F0E0908182E08927808308951F920F9257 +:104480000FB60F9211242F933F934F935F936F9327 +:104490007F938F939F93AF93BF93EF93FF938091FD +:1044A000EB019091EC0101969093EC018093EB016C +:1044B000811103C082E00E94E308E091EC01E695DF +:1044C000E695F0E0EC54FB4FE4918091EB018E1304 +:1044D00003C080E00E94E308FF91EF91BF91AF918C +:1044E0009F918F917F916F915F914F913F912F910C +:1044F0000F900FBE0F901F90189504D06894B111C3 +:104500008DC0089570D088F09F5790F0B92F9927EB +:10451000B751A0F0D1F0660F771F881F991F1AF0CE +:10452000BA95C9F712C0B13081F077D0B1E00895E3 +:1045300074C0672F782F8827B85F39F0B93FCCF364 +:10454000869577956795B395D9F73EF490958095C4 +:10455000709561957F4F8F4F9F4F0895E89409C0E4 +:1045600097FB3EF490958095709561957F4F8F4FA6 +:104570009F4F9923A9F0F92F96E9BB279395F695BC +:10458000879577956795B795F111F8CFFAF4BB0F3A +:1045900011F460FF1BC06F5F7F4F8F4F9F4F16C09E +:1045A000882311F096E911C0772321F09EE8872F28 +:1045B000762F05C0662371F096E8862F70E060E0E4 +:1045C0002AF09A95660F771F881FDAF7880F96955D +:1045D000879597F9089557FD9058440F551F59F046 +:1045E0005F3F71F04795880F97FB991F61F09F3FE0 +:1045F00079F087950895121613061406551FF2CF09 +:104600004695F1DF08C0161617061806991FF1CF58 +:1046100086957105610508940895E894BB2766277F +:104620007727CB0197F908950BD078C069D028F08F +:104630006ED018F0952309F05AC05FC01124EECF58 +:10464000CADFA0F3959FD1F3950F50E0551F629FED +:10465000F001729FBB27F00DB11D639FAA27F00DDB +:10466000B11DAA1F649F6627B00DA11D661F829F02 +:104670002227B00DA11D621F739FB00DA11D621FE7 +:10468000839FA00D611D221F749F3327A00D611D04 +:10469000231F849F600D211D822F762F6A2F1124E6 +:1046A0009F5750408AF0E1F088234AF0EE0FFF1F39 +:1046B000BB1F661F771F881F91505040A9F79E3F70 +:1046C000510570F014C0AACF5F3FECF3983EDCF3C5 +:1046D000869577956795B795F795E7959F5FC1F7AD +:1046E000FE2B880F911D9695879597F9089597F958 +:1046F0009F6780E870E060E008959FEF80EC089588 +:1047000000240A94161617061806090608950024B0 +:104710000A9412161306140605060895092E03942A +:10472000000C11F4882352F0BB0F40F4BF2B11F49E +:1047300060FF04C06F5F7F4F8F4F9F4F089597FBBF +:10474000072E16F4009407D077FD09D00E94B923F4 +:1047500007FC05D03EF4909581959F4F0895709584 +:1047600061957F4F0895EE0FFF1F0590F491E02DA6 +:104770000994AA1BBB1B51E107C0AA1FBB1FA617A8 +:10478000B70710F0A61BB70B881F991F5A95A9F7FA +:1047900080959095BC01CD010895F999FECF92BD09 +:1047A00081BDF89A992780B50895A8E1B0E042E06C +:1047B00050E00C94F523262FF999FECF92BD81BDD0 +:1047C000F89A019700B4021639F01FBA20BD0FB64F +:1047D000F894FA9AF99A0FBE08950196272F0E942D +:1047E000DC230C94DB23DC01CB01FC01F999FECF27 +:1047F00006C0F2BDE1BDF89A319600B40D92415069 +:0A4800005040B8F70895F894FFCF78 +:10480A000220E508730950091C09E8080101C701DB +:10481A0028080A03140A3F4D363975042804F2039E +:10482A00B9034C0365037E039703010203040506DB +:04483A000708090062 +:00000001FF diff --git a/keyboards/ergodox_ez/keymaps/dvorak/dvorak.png b/keyboards/ergodox_ez/keymaps/dvorak/dvorak.png new file mode 100644 index 0000000000..cb83163095 Binary files /dev/null and b/keyboards/ergodox_ez/keymaps/dvorak/dvorak.png differ diff --git a/keyboards/ergodox_ez/keymaps/dvorak/keymap.c b/keyboards/ergodox_ez/keymaps/dvorak/keymap.c new file mode 100644 index 0000000000..22947327d3 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/dvorak/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 + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | = | 1 | 2 | 3 | 4 | 5 | LEFT | | RIGHT| 6 | 7 | 8 | 9 | 0 | \ | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Del | ' | , | . | P | Y | L1 | | L1 | F | G | C | R | L | / | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | BkSp | A | O | E | U | I |------| |------| D | H | T | N |S / L2| - | + * |--------+------+------+------+------+------| Hyper| | Meh |------+------+------+------+------+--------| + * | LShift |:/Ctrl| Q | J | K | X | | | | B | M | W | V |Z/Ctrl| RShift | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * |Grv/L1| '" |AltShf| Left | Right| | Up | Down | [ | ] | ~L1 | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | App | LGui | | Alt |Ctrl/Esc| + * ,------|------|------| |------+--------+------. + * | | | Home | | PgUp | | | + * | Space|Backsp|------| |------| Tab |Enter | + * | |ace | End | | PgDn | | | + * `--------------------' `----------------------' + */ +// If it accepts an argument (i.e, is a function), it doesn't need KC_. +// Otherwise, it needs KC_* +[BASE] = KEYMAP( // layer 0 : default + // left hand + KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, KC_LEFT, + KC_DELT, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, TG(1), + KC_BSPC, KC_A, KC_O, KC_E, KC_U, KC_I, + KC_LSFT, CTL_T(KC_SCLN), KC_Q, KC_J, KC_K, KC_X, ALL_T(KC_NO), + LT(SYMB,KC_GRV),KC_QUOT, LALT(KC_LSFT), KC_LEFT,KC_RGHT, + ALT_T(KC_APP), KC_LGUI, + KC_HOME, + KC_SPC,KC_BSPC,KC_END, + // right hand + KC_RGHT, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSLS, + TG(1), KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLSH, + KC_D, KC_H, KC_T, KC_N, LT(MDIA, KC_S), KC_MINS, + MEH_T(KC_NO),KC_B, KC_M, KC_W, KC_V, CTL_T(KC_Z), KC_RSFT, + KC_UP, KC_DOWN,KC_LBRC,KC_RBRC, KC_FN1, + KC_LALT, CTL_T(KC_ESC), + KC_PGUP, + KC_PGDN,KC_TAB, KC_ENT + ), +/* Keymap 1: Symbol Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | ! | @ | { | } | | | | | | Up | 7 | 8 | 9 | * | F12 | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | # | $ | ( | ) | ` |------| |------| Down | 4 | 5 | 6 | + | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | % | ^ | [ | ] | ~ | | | | & | 1 | 2 | 3 | \ | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | . | 0 | = | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// SYMBOLS +[SYMB] = KEYMAP( + // left hand + KC_TRNS,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, + KC_TRNS,KC_EXLM,KC_AT, KC_LCBR,KC_RCBR,KC_PIPE,KC_TRNS, + KC_TRNS,KC_HASH,KC_DLR, KC_LPRN,KC_RPRN,KC_GRV, + KC_TRNS,KC_PERC,KC_CIRC,KC_LBRC,KC_RBRC,KC_TILD,KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS, + KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS, + // right hand + KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + KC_TRNS, KC_UP, KC_7, KC_8, KC_9, KC_ASTR, KC_F12, + KC_DOWN, KC_4, KC_5, KC_6, KC_PLUS, KC_TRNS, + KC_TRNS, KC_AMPR, KC_1, KC_2, KC_3, KC_BSLS, KC_TRNS, + KC_TRNS,KC_DOT, KC_0, KC_EQL, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), +/* Keymap 2: Media and mouse keys + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | MsUp | | | | | | | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | |MsLeft|MsDown|MsRght| |------| |------| | | | | | Play | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | | Prev | Next | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | Lclk | Rclk | |VolUp |VolDn | Mute | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | |Brwser| + * | | |------| |------| |Back | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// MEDIA AND MOUSE +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/keyboards/ergodox_ez/keymaps/dvorak_intl_squisher/README.md b/keyboards/ergodox_ez/keymaps/dvorak_intl_squisher/README.md new file mode 100644 index 0000000000..984106ff46 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/dvorak_intl_squisher/README.md @@ -0,0 +1,29 @@ +# ErgoDox EZ Dvorak International Squisher + +Dvorak layout adjusted with several (linux) applications in mind: + +* Easier Escape for VIM +* Windows/Super key for awesome WM +* Alt+Shift for international characters +* PrintScreen for sys-rq +* Insert for the X11 clip-board + +Major layer changes: + +* Common multimedia keys are integrated into layer 0, less common into layer 1 +* No mouse keys +* Layer 2 is qwerty (for easier gaming & less fortunate keyboard users) + +Known issues: + +* Alt+Shift does not work reliably (depends on the X11 kb layout? Not + entirely clear...) + +![layer0](keyboard-layout0.png) +![layer1](keyboard-layout1.png) +![layer2](keyboard-layout2.png) + +## Changelog + +* 2016-03-29 + * Initial release diff --git a/keyboards/ergodox_ez/keymaps/dvorak_intl_squisher/compiled.hex b/keyboards/ergodox_ez/keymaps/dvorak_intl_squisher/compiled.hex new file mode 100644 index 0000000000..dc734d2419 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/dvorak_intl_squisher/compiled.hex @@ -0,0 +1,1158 @@ +:100000000C947A020C94BE020C94BE020C94BE02B4 +:100010000C94BE020C94BE020C94BE020C94BE0260 +:100020000C94BE020C94BE020C94620D0C94340E1F +:100030000C94BE020C94BE020C94BE020C94BE0240 +:100040000C94BE020C943E220C94BE020C94BE0290 +:100050000C94BE020C94D11B0C94BE020C94BE02F4 +:100060000C94BE020C94BE020C94BE020C94BE0210 +:100070000C94BE020C94BE020C94BE020C94BE0200 +:100080000C94BE020C94BE020C94BE020C94BE02F0 +:100090000C94BE020C94BE020C94BE020C94BE02E0 +:1000A0000C94BE020C94BE020C94BE02A10EC30EB0 +:1000B000B10FC30EB10F080F2B0FB10F800F930FAD +:1000C0006212621291129112C712E71218141814D8 +:1000D000F2121814A213A2130914181418141214EB +:1000E000AF13AF13AF13AF13AF13AF13AF13AF1300 +:1000F000AF13AF13AF13AF13AF13AF13AF13AF13F0 +:10010000C113CE13D513DC13E6130000F0A12E00AB +:1001100029002A00E100354100001E0034000400DF +:100120003371E2004D001F00360012001400E3009E +:100130002B002000370008000D0050002C0021008B +:10014000130018000E004F004A0022001C000C0093 +:100150001B0000006571B6004C000000007F00002D +:100160000154AE0049000000007700000254230053 +:100170000900070005000000460024000A000B00EB +:10018000100052004B002500060017001A00510015 +:10019000280026001500110019002F00E514270083 +:1001A0000F0016001D7130004E00314238002D0046 +:1001B000E500C10000000100010001000100010094 +:1001C00000003A001E0220022202010001003B0052 +:1001D0001F0221022302010001003C002F0226021F +:1001E0002F00AC0001003D00300227023000AB00C0 +:1001F00001003E003102350035020000010001001F +:1002000001000000010000000100010001000000E9 +:100210000100000001003F005200510024020000D4 +:1002200001004000240021001E000100A90041003F +:10023000250022001F003700010042002600230095 +:1002400020002700A800430025022E0231002E00C6 +:10025000AA00440045000100010001000000010067 +:100260000100010001000100000001001400040071 +:100270001D710100010001001A0016001B000100A1 +:100280000100010008000700060001000100010054 +:1002900015000900190001000100010017000A0003 +:1002A0000500000001000100010000000100000045 +:1002B0000100010001000000010000000100010038 +:1002C0001C000B00110000000100010018000D00CF +:1002D00010000100010001000C000E0036000100BA +:1002E0000100010012000F003700010001000100B1 +:1002F00013003342387101000100010001000100C8 +:1003000001000100000016034500720067006F0045 +:1003100044006F007800200045005A0000001603DA +:100320004500720067006F0044006F0078002000F5 +:1003300045005A0000000403090409026D0004018D +:1003400000A0FA09040000010301010009211101C4 +:100350000001223F000705810308000A090401008B +:100360000103010200092111010001224D000705CE +:10037000820308000A0904020001030000000921A9 +:10038000110100012236000705830308000A090451 +:1003900003000103000000092111010001223900BE +:1003A000070584031000011201100100000008ED90 +:1003B000FE071301000102000105010906A1010564 +:1003C0000719E029E7150025019508750181020547 +:1003D000081901290595057501910295017503918B +:1003E0000105071900297715002501957875018108 +:1003F00002C005010980A101850216010026B7008F +:100400001A01002AB700751095018100C0050C097A +:1004100001A1018503160100269C021A01002A9CF5 +:1004200002751095018100C005010902A1010901B1 +:10043000A10005091901290515002501950575017A +:10044000810295017503810105010930093115818A +:10045000257F95027508810609381581257F95014C +:1004600075088106050C0A38021581257F950175EE +:10047000088106C0C005010906A101050719E02988 +:10048000E715002501950875018102950175088120 +:100490000105081901290595057501910295017558 +:1004A0000391010507190029FF150025FF95067521 +:1004B000088100C0000000000000000000000001F2 +:1004C0000204060A0F17202C3A4A5D71879DB3C7B4 +:1004D000DAE9F5FCFFFCF5E9DAC7B39D87715D4AFF +:1004E0003A2C20170F0A0604020100000000000049 +:1004F0000000000011241FBECFEFDAE0DEBFCDBF49 +:1005000004B603FE24C08091FB019091FC01A091F0 +:10051000FD01B091FE018730904BA740B04BB9F47C +:100520001092FB011092FC011092FD011092FE014D +:1005300014BE84B7877F84BF88E10FB6F894809398 +:100540006000109260000FBEE0E0FFE3099511E04B +:10055000A0E0B1E0EAE0F8E402C005900D92A43317 +:10056000B107D9F711E0A4E3B1E001C01D92AB3FA0 +:10057000B107E1F70E94A60A0C9403240C94000032 +:100580001092B9008AE08093B800089594EA90939D +:10059000BC009091BC0097FFFCCF9091B900987F70 +:1005A000983021F0903111F081E008958093BB00E4 +:1005B00084E88093BC008091BC0087FFFCCF8091D1 +:1005C000B900887F883111F0803471F780E0089598 +:1005D00084E98093BC008091BC0084FDFCCF089529 +:1005E0008093BB0084E88093BC008091BC0087FFAF +:1005F000FCCF9091B900987F81E0983209F480E0B7 +:10060000089584E88093BC008091BC0087FFFCCFF4 +:100610008091BB00089580910101811115C080E493 +:100620000E94C6028093010181110CC082E10E94E8 +:10063000F00280930101811105C08FEF0E94F0024A +:10064000809301010E94E80284B1807F84B985B162 +:10065000807F85B98AB1837F8AB98BB1837F8BB95B +:100660003E98469808950E94C604809301010E9416 +:100670000B0380B38C7080BB81B3836F81BBA5E318 +:10068000B1E0E3E4F1E08EE08E0F11921D928E1343 +:10069000FCCF0C94B004BF92CF92DF92EF92FF9206 +:1006A0000F931F93CF93DF9380910101882379F0FB +:1006B000809134018F5F80933401811108C00E94C2 +:1006C000C60480930101811102C00E94580405E311 +:1006D00011E0C0E0D0E0DD24D39482E0C82EEE2407 +:1006E000E394F12CC730D10500F58091010181110F +:1006F00064C080E40E94C60280930101811112C08F +:1007000082E10E94F0028093010181110BC0C701B8 +:100710000C2E01C0880F0A94EAF780950E94F0021F +:10072000809301010E94E80248C0CA30A1F028F479 +:10073000C83059F0C93061F005C0CC3089F070F094 +:10074000CD3089F0209A289810C0219A29980DC0A0 +:10075000229A2A980AC0239A2B9807C0529A01C05D +:10076000539A5B9802C03E9A469890EA9A95F1F7A0 +:100770009FB1799902C082E001C080E091709D250F +:10078000982B7C9902C084E001C080E0892B7D9980 +:1007900002C038E001C030E0832B7E9902C020E126 +:1007A00001C020E0822B9FB19095991F9927991F36 +:1007B0009295990F907E892B0FC080910101811134 +:1007C00049C080E40E94C60280930101882379F128 +:1007D000B12C0E94E8028B2DF8019081981719F036 +:1007E0008083C09200010E940B0321960F5F1F4F70 +:1007F000CE30D10509F076CF80910001882361F1D8 +:10080000815080930001882339F08FE99FE00197A0 +:10081000F1F700C0000020C0A3E4B1E0E5E3F1E09F +:10082000CF01825F91919D938E13FCCF15C083E120 +:100830000E94F002809301018111CACF81E40E94DD +:10084000C602809301018111C3CF0E940103B82E1B +:10085000B094BFCF80E0C0CF0E94560481E0DF910A +:10086000CF911F910F91FF90EF90DF90CF90BF90AD +:100870000895E82FF0E0ED5BFE4F80810895089524 +:100880000F931F93CF93DF93C3E4D1E010E00C2FBD +:10089000025F899190E00E94F71A180F0C13F9CFAC +:1008A000812FDF91CF911F910F9108950C94260510 +:1008B00056985E9825982D9826982E9827982F98C8 +:1008C0008FEF90E0909389008093880090938B0045 +:1008D00080938A0090938D0080938C00259A2D9AA6 +:1008E0002FEF80E792E0215080409040E1F700C078 +:1008F0000000269A2E9A2FEF80E792E02150804048 +:100900009040E1F700C00000279A2F9A2FEF80E770 +:1009100092E0215080409040E1F700C0000025980F +:100920002D982FEF80E792E0215080409040E1F732 +:1009300000C0000026982E982FEF80E792E021500B +:1009400080409040E1F700C0000027982F9856980B +:100950005E9825982D9826982E9827982F98089578 +:1009600089EA8093800089E08093810024982C9804 +:100970003F988AB18F748AB96E98479A8BB1806B11 +:100980008BB9769A0E9458040C94250580E28093D6 +:1009900001018091510181110EC00E94C00281E0CD +:1009A000809351012FEF83ED90E3215080409040E0 +:1009B000E1F700C0000080E40E94C60280930101BC +:1009C00081112EC00E94F00280930101811128C084 +:1009D0000E94F00280930101811122C08FE30E94E6 +:1009E000F0028093010181111BC00E94E80280E4A3 +:1009F0000E94C60280930101811112C08CE00E9406 +:100A0000F0028093010181110BC00E94F0028093DB +:100A10000101811105C08FE30E94F0028093010162 +:100A20000E94E80280910101089561110BC0FC0150 +:100A30008281882321F085EE0E94061103C085EE95 +:100A40000E94CE1180E090E0089508956091BD016C +:100A50007091BE018091BF019091C0010E94031B63 +:100A600056985E9825982D9826982E9827982F9816 +:100A7000813019F0823021F00895259A2D9A089539 +:100A8000269A2E9A089581E0089581E008950C94A5 +:100A9000450508950F931F93CF93DF938C01FC01BD +:100AA000C081D181CE010E947C19BE010E94F30554 +:100AB000EC01B8010E944705882309F48DC0F801B4 +:100AC0008281882309F44AC080915D0181111FC091 +:100AD000C431F0E5DF0709F051C00E94490581E00B +:100AE00080935D010E949B1B90935C0180935B014E +:100AF0001092540110925601109255011092580113 +:100B00001092570110925A011092590165C08091BC +:100B10005B0190915C010E94A71B883C910570F4D9 +:100B200080915401E82FF0E0EE0FFF1FEB5AFE4FCB +:100B3000D183C0838F5F809354014EC0C43880E559 +:100B4000D80721F0C538D04501F13AC0F8018281BB +:100B5000882341F01092520182E01EC0C438E0E5C3 +:100B6000DE0759F580915201811106C086E20E948C +:100B7000061186E20E94CE1182E01CC0C438F0E566 +:100B8000DF0741F3C538D045D9F4F80182818823C5 +:100B900031F01092530180E20E941D121DC080911D +:100BA0005301811106C087E20E94061187E20E946C +:100BB000CE1180E20E9424120FC0C538D04529F31F +:100BC00081E08093520180935301C801DF91CF915E +:100BD0001F910F910C94430580E0DF91CF911F91FD +:100BE0000F910895089596E0799FF001112494E5FE +:100BF000899FE00DF11D1124E60FF11DEE0FFF1F7F +:100C0000E25FFE4F859194910895880F991FFC0132 +:100C1000E657F040859194910895880F991FFC0143 +:100C2000E65FFE4F8591949108950F931F93CF93A4 +:100C3000DF93EC01811520E3920750F5C11580E2A6 +:100C4000D80708F0C3C0CB3BD10590F4C83AD10512 +:100C500008F06AC0C53AD10508F05BC0C430D105C0 +:100C600008F0D0C1219709F0CAC101E010E00AC222 +:100C7000CF3FD10511F008F0C5C1C03FD10508F044 +:100C8000A2C0CE01805E9109089708F4BBC1B7C12C +:100C9000C13090E5D90709F4A2C020F5C0318FE436 +:100CA000D80770F4C11590E4D90708F094C0C115B5 +:100CB00021E3D20708F0A3C1DD278E01106CE2C149 +:100CC000C115D04509F09BC10E9483148FEF94E3B6 +:100CD0002CE0815090402040E1F700C000000E94CD +:100CE000F61BD0C1C11597E5D90758F4C03121E5ED +:100CF000D20708F01CC1C43180E5D80708F475C0DC +:100D00007EC1CE0190578115904108F078C1DF7007 +:100D100073C1C53AD10509F477C1C63AD10509F0C6 +:100D200076C102E810E4AEC1C83AD10509F472C137 +:100D3000C93AD10509F471C1CA3AD10509F470C1A3 +:100D4000CB3AD10509F46FC1CC3AD10509F46EC193 +:100D5000CD3AD10509F46DC1C03BD10509F46CC190 +:100D6000CE3AD10509F46BC1CF3AD10509F46AC175 +:100D7000C13BD10509F469C1C23BD10509F468C181 +:100D8000C33BD10509F467C1C43BD10509F466C171 +:100D9000C53BD10509F465C1C63BD10509F464C161 +:100DA000C73BD10509F463C1C83BD10509F462C151 +:100DB000C93BD10509F461C1CA3BD10509F460C141 +:100DC00000E014E45FC18E0110655CC1CE019F702C +:100DD0000E940D0658C1DF708E01106A53C18091C8 +:100DE000DA0181608093DA014DC10E949B1D81115F +:100DF00002C00E94811D0E94B81D90E09093FB01EB +:100E00008093FA01C23080E5D80721F48091FA017D +:100E1000816086C0C43090E5D90721F48091FA0141 +:100E200082607EC0C63020E5D20721F48091FA01AD +:100E3000846076C0C83080E5D80719F48091FA0143 +:100E400027C0CA3090E5D90721F48091FA0180616A +:100E500067C0CC3020E5D20721F48091FA0180628E +:100E60005FC0CE3080E5D80721F48091FA0180641C +:100E700057C0C03190E5D90721F48091FA0180680C +:100E80004FC0C23120E5D20729F48091FA01846075 +:100E9000886046C0C33080E5D80721F48091FA010C +:100EA0008E7F3EC0C53090E5D90721F48091FA01CC +:100EB0008D7F36C0C73020E5D20721F48091FA013A +:100EC0008B7F2EC0C93080E5D80719F48091FA01D4 +:100ED00026C0CB3090E5D90721F48091FA018F7EAE +:100EE0001FC0CD3020E5D20721F48091FA018F7D1B +:100EF00017C0CF3080E5D80721F48091FA018F7BAD +:100F00000FC0C13190E5D90721F48091FA018F77A4 +:100F100007C0C331D04531F48091FA018B7F877FC0 +:100F20008093FA018091FA010E94BC1DABC08D2F05 +:100F300099278F70992781309105D9F49E012370EC +:100F4000332702C0880F991F2A95E2F79C688E010B +:100F500044E0000F111F4A95E1F700271370802B22 +:100F6000912B53E0CC0FDD1F5A95E1F7C076DD27BA +:100F70002FC08230910531F4DC2FCC278E01016F18 +:100F8000106A80C08330910569F4CE01837099277F +:100F900001E010E002C0000F111F8A95E2F7C801BE +:100FA0009C680FC084309105B9F4CE0183709927F5 +:100FB00001E010E002C0000F111F8A95E2F7C8019E +:100FC0009A6823E0CC0FDD1F2A95E1F7C07ED77029 +:100FD0008C010C2B1D2B56C08530910531F4DC2F74 +:100FE000CC278E01046F106A4DC0069709F04AC0E5 +:100FF000CF71DD27DC2FCC278E01106243C000E0CB +:1010000010E040C08E013EC001E810E43BC003E8A0 +:1010100010E438C002EE14E435C009EE14E432C026 +:101020000AEE14E42FC005EB14E42CC006EB14E424 +:1010300029C007EB14E426C00CEC14E423C00DEC2B +:1010400014E420C003E815E41DC00AE815E41AC042 +:1010500002E915E417C004E915E414C001E216E43E +:1010600011C003E216E40EC004E216E40BC005E270 +:1010700016E408C006E216E405C007E216E402C062 +:101080000AE216E4C801DF91CF911F910F910895F4 +:1010900096E0799FF001112494E5899FE00DF11D00 +:1010A0001124E60FF11DEE0FFF1FE25FFE4F859149 +:1010B0009491803E9105E0F4803C910558F5813390 +:1010C000910509F46FC048F48932910509F463C0B1 +:1010D0008A32910509F46DC072C089339105E9F037 +:1010E00082389105D1F08533910509F44DC067C070 +:1010F000833E910581F138F4803E9105B9F0823E3E +:101100009105D9F05CC0863E910561F1873E91055D +:10111000A1F155C00E94050608952091FA0120FD15 +:1011200002C021FF4CC080EE90E049C08091FA01DE +:1011300080FFF9CF89E390E042C08091FA0182FFFD +:101140000EC08091FA0184FF03C080E090E037C0B8 +:1011500083EE90E034C08091FA0182FFF2CF82EEFC +:1011600090E02DC08091FA0183FF0BC08091FA01BD +:1011700084FDEBCF87EE90E022C08091FA0183FFDF +:10118000F5CF86EE90E01BC08091FA0185FF07C085 +:1011900089E290E014C08091FA0185FFF9CF85E3E0 +:1011A00090E00DC08091FA0186FF07C08AE290E0CE +:1011B00006C08091FA0186FFF9CF81E390E00E949A +:1011C0001506089508950C94E20880916E01089523 +:1011D000CF93DF9300D01F92CDB7DEB79C018091F3 +:1011E000F101843019F593E099833B832A8390932E +:1011F000E9008FEF9091E800815095FD06C095EDD4 +:101200009A95F1F700008111F5CF8091E80085FFF4 +:101210000DC040E050E063E070E0CE0101960E9416 +:10122000520B8091E8008E778093E8000F900F902A +:101230000F90DF91CF910895CF93DF9300D01F924D +:10124000CDB7DEB72091F101243021F522E02983CA +:101250009B838A8383E08093E9008FEF9091E8007D +:10126000815095FD06C095ED9A95F1F7000081112A +:10127000F5CF8091E80085FF0DC040E050E063E0CD +:1012800070E0CE0101960E94520B8091E8008E77AB +:101290008093E8000F900F900F90DF91CF91089509 +:1012A0002091F1012430F1F422E02093E9002FEFA6 +:1012B0003091E800215035FD06C035ED3A95F1F743 +:1012C00000002111F5CF2091E80025FF0BC040E080 +:1012D00050E065E070E00E94520B8091E8008E774C +:1012E0008093E8000895CF93DF93EC019091F10192 +:1012F000943009F046C080910C018823D9F0809188 +:101300000D018823B9F09093E9008FEF9091E800E8 +:10131000815095FD06C095E19A95F1F70000811185 +:10132000F5CF8091E80085FF2CC040E050E060E1FF +:1013300070E017C081E08093E9008FEF9091E800A2 +:10134000815095FD06C095ED9A95F1F70000811149 +:10135000F5CF8091E80085FF14C040E050E068E0E0 +:1013600070E0CE010E94520B8091E8008E7780934E +:10137000E80080E1FE01AEE5B1E001900D928A95B2 +:10138000E1F7DF91CF9108958091F001811109C0BB +:101390000E94E70C0E94440D8091E20084608093DB +:1013A000E20008951092F001089508950C942B2204 +:1013B0000E948C1B0E9431220E94EA0F0C94E308C9 +:1013C00042E061EC81E00E94610C42E061EC82E06D +:1013D0000E94610C42E061EC83E00E94610C42E1FA +:1013E00061EC84E00C94610C8091F301833009F48A +:1013F00055C030F4813071F0823009F48EC0089508 +:101400008A3009F47AC08B3009F460C0893009F061 +:101410009CC020C08091F201813A09F096C0809171 +:10142000E800877F8093E8008091F6019091F701B2 +:10143000892B21F460E18EE591E003C060E080E05B +:1014400090E070E00E949D0B8091E8008B77809384 +:10145000E80008958091F201813209F076C0809110 +:10146000F6019091F701009719F0039709F06DC00C +:101470008091E800877F8093E8008091E80082FDFA +:1014800005C08091F1018111F8CF5FC08091F1001A +:1014900080936E018091E8008B7753C08091F201B8 +:1014A000813A09F052C08091F6019091F701892BA1 +:1014B00009F04BC08091E800877F8093E80080911D +:1014C000E80080FFFCCF80910C0136C08091F201D2 +:1014D0008132D9F58091F6019091F701892BA9F518 +:1014E0008091E800877F8093E8000E94960C8091AD +:1014F000F40180930C010C9483148091F2018132E9 +:1015000021F58091E800877F8093E8000E94960C87 +:101510008091F50180936F0108958091F201813AE5 +:10152000A1F48091E800877F8093E8008091E80033 +:1015300080FFFCCF80916F018093F1008091E800E3 +:101540008E778093E8000C94960C089584B7877F7B +:1015500084BF88E10FB6F894809360001092600019 +:101560000FBE90E080E80FB6F894809361009093EE +:1015700061000FBE0E9439100E94E70C0E94440DCA +:101580008091E20084608093E20078940E94CA0F08 +:101590000E943B1082E091E00E94E50F0E94192218 +:1015A0008091F101853069F40E94531B8091EF0115 +:1015B0008823B1F30E947E1B882391F30E943C0B89 +:1015C000EFCF0E944110ECCF292F33272330310574 +:1015D000C9F064F42130310581F02230310509F081 +:1015E00043C08DE690E02AE333E042C0213231056A +:1015F000F1F02232310541F137C082E190E027EA73 +:1016000033E036C099278130910541F08230910551 +:1016100041F0892B49F5E6E3F3E005C0EEE1F3E0A4 +:1016200002C0E6E0F3E0849190E09F0121C06430C5 +:10163000D8F4E62FF0E0EE0FFF1FEE5DFE4F2081A5 +:10164000318189E090E014C0643070F470E0FB01F7 +:10165000EE0FFF1FE65EFE4F20813181FB01EA5E47 +:10166000FE4F808190E004C080E090E020E030E018 +:10167000FA0131832083089580E189BD82E189BD2B +:1016800009B400FEFDCF8091D8008F7D8093D800F3 +:101690008091E00082608093E0008091E00081FD15 +:1016A000FCCF0895CF92DF92EF92FF920F931F939A +:1016B000CF93DF93EC018B016A010E94B50C81117D +:1016C00033C0C114D10439F0F60180819181081B27 +:1016D000190BC80FD91FE12CF12C0115110519F1B7 +:1016E0008091E80085FD16C08091E8008E77809398 +:1016F000E800C114D10449F0F60180819181E80E1F +:10170000F91EF182E08285E00FC00E94B50C8823AB +:1017100021F30AC089918093F10001501109FFEF74 +:10172000EF1AFF0ADACF80E0DF91CF911F910F917E +:10173000FF90EF90DF90CF9008952091F8013091C5 +:10174000F9012617370748F06115710539F4209122 +:10175000E8002E772093E80001C0B90140E0611550 +:101760007105A9F12091F101222309F443C025302C +:1017700009F442C02091E80023FD40C02091E80018 +:1017800022FD32C02091E80020FFE9CF4091F30014 +:101790002091F20030E0342BFC01CF01611571057E +:1017A00059F02830310540F481918093F100615067 +:1017B00071092F5F3F4FF1CF41E02830310509F02B +:1017C00040E02091E8002E772093E800C8CF411137 +:1017D000C9CF0AC08091F101882361F0853061F0A2 +:1017E0008091E80083FD0AC08091E80082FFF2CF7B +:1017F00080E0089582E0089583E0089581E00895EF +:101800002091F8013091F9012617370748F061154A +:10181000710539F42091E8002E772093E80001C08B +:10182000B901FC0120E06115710591F18091F10190 +:10183000882309F440C0853009F43FC08091E80056 +:1018400083FD3DC08091E80082FD2FC08091E800BB +:1018500080FFE9CF2091F3008091F20090E0922B7D +:101860006115710559F08830910540F42491209359 +:10187000F1003196615071090196F2CF21E008978D +:1018800009F020E08091E8008E778093E800CBCFCC +:101890002111CCCF0AC08091F101882361F08530FD +:1018A00061F08091E80083FD0AC08091E80082FF2A +:1018B000F2CF80E0089582E0089583E0089581E00A +:1018C0000895982F973058F59093E900981739F0BC +:1018D0007091EC002091ED005091F00003C0242F96 +:1018E000762F50E021FF19C03091EB003E7F3093FE +:1018F000EB003091ED003D7F3093ED003091EB0037 +:1019000031603093EB007093EC002093ED00509326 +:10191000F0002091EE0027FF07C09F5FD3CF8F70AC +:101920008093E90081E0089580E008958091F201BC +:1019300087FF11C08091E80082FD05C08091F10110 +:101940008111F8CF11C08091E8008B770BC0809196 +:10195000F101882349F08091E80080FFF8CF809161 +:10196000E8008E778093E80008952091E40030919C +:10197000E50095E64091EC00842F817040FF22C085 +:101980008091E80080FD1CC08091F101882391F0D6 +:10199000853091F08091EB0085FD10C04091E4000E +:1019A0005091E5004217530729F39A01915011F71E +:1019B00084E0089582E0089583E0089581E0089529 +:1019C00080E008954091E80042FFDECF08950E9434 +:1019D000550D0E945D0DE0EEF0E080818160808316 +:1019E000E8EDF0E080818F77808319BCA7EDB0E04F +:1019F0008C918E7F8C9380818F7E80831092F001FA +:101A000008950F931F93CF93DF930E94550D0E946B +:101A10005D0DC8EDD0E088818F77888388818068EC +:101A2000888388818F7D888319BC1092F101109280 +:101A3000ED011092EF011092EE0100EE10E0F801BE +:101A400080818B7F808388818160888342E060E031 +:101A500080E00E94610CE1EEF0E080818E7F808367 +:101A6000E2EEF0E080818160808380818860808305 +:101A7000F80180818E7F8083888180618883DF91F7 +:101A8000CF911F910F910895E8EDF0E080818F7E56 +:101A90008083E7EDF0E080818160808384E082BF15 +:101AA00081E08093F0010C94010DE8EDF0E080817D +:101AB0008E7F80831092E20008951092DA001092D7 +:101AC000E10008951F920F920FB60F9211242F93E9 +:101AD0003F934F935F936F937F938F939F93AF93B6 +:101AE000BF93EF93FF938091E10082FF0BC0809141 +:101AF000E20082FF07C08091E1008B7F8093E100CC +:101B00000E94C90F8091DA0080FF1FC08091D80029 +:101B100080FF1BC08091DA008E7F8093DA00809175 +:101B2000D90080FF0DC080E189BD82E189BD09B483 +:101B300000FEFDCF81E08093F1010E94C40905C041 +:101B400019BC1092F1010E94D2098091E10080FF3E +:101B500019C08091E20080FF15C08091E2008E7F65 +:101B60008093E2008091E20080618093E2008091A6 +:101B7000D80080628093D80019BC85E08093F10181 +:101B80000E94D6098091E10084FF30C08091E2007C +:101B900084FF2CC080E189BD82E189BD09B400FECB +:101BA000FDCF8091D8008F7D8093D8008091E10097 +:101BB0008F7E8093E1008091E2008F7E8093E2002F +:101BC0008091E20081608093E2008091ED018823A2 +:101BD00011F084E007C08091E30087FD02C081E03E +:101BE00001C083E08093F1010E94D8098091E10057 +:101BF00083FF29C08091E20083FF25C08091E1002E +:101C0000877F8093E10082E08093F1011092ED01E3 +:101C10008091E1008E7F8093E1008091E2008E7FD1 +:101C20008093E2008091E20080618093E20042E0D4 +:101C300060E080E00E94610C8091F00088608093F9 +:101C4000F0000E94D509FF91EF91BF91AF919F9154 +:101C50008F917F916F915F914F913F912F910F9055 +:101C60000FBE0F901F9018951F920F920FB60F92F4 +:101C700011242F933F934F935F936F937F938F9391 +:101C80009F93AF93BF93CF93DF93EF93FF93C09155 +:101C9000E900CF708091EC00D82FD17080FDD0E8A2 +:101CA0001092E9008091F000877F8093F000789493 +:101CB0000E94780E1092E9008091F0008860809375 +:101CC000F000CD2BCF70C093E900FF91EF91DF9131 +:101CD000CF91BF91AF919F918F917F916F915F91C4 +:101CE0004F913F912F910F900FBE0F901F9018951D +:101CF0001F93CF93DF93CDB7DEB7AA970FB6F894B3 +:101D0000DEBF0FBECDBFE2EFF1E088E08E0F909115 +:101D1000F10091938E13FBCF0E94F4098091E800AB +:101D200083FF1FC18091F2019091F301492F50E090 +:101D30004A30510508F015C1FA01EA5AFF4F0C94D8 +:101D4000B323803881F0823809F00BC18091F6010D +:101D50008F708093E9008091EB0085FB882780F9E4 +:101D60001092E90006C08091EE019091EF0191116F +:101D700082609091E800977F9093E8008093F10053 +:101D80001092F100C8C0282F2D7F09F0EAC08823E7 +:101D900019F0823061F0E5C08091F401813009F0E2 +:101DA000E0C0933009F080E08093EF012BC0809178 +:101DB000F401811127C08091F6018F7009F4D1C020 +:101DC0008093E9002091EB0020FF1CC0933021F4A8 +:101DD0008091EB00806214C09091EB009061909331 +:101DE000EB0021E030E0A90102C0440F551F8A95A5 +:101DF000E2F74093EA001092EA008091EB008860DD +:101E00008093EB001092E9008091E800877F86C004 +:101E10008111A7C01091F4011F778091E3008078B1 +:101E2000812B8093E3008091E800877F8093E80016 +:101E30000E94960C8091E80080FFFCCF8091E30027 +:101E400080688093E300111102C082E001C083E04A +:101E50008093F10186C08058823008F082C0809162 +:101E6000F4019091F5018C3D53E0950779F583E0FD +:101E70008A838AE289834FB7F894DE01139620E0C3 +:101E80003EE051E2E32FF0E050935700E49120FF51 +:101E900003C0E295EF703F5FEF708E2F90E0EA3065 +:101EA00010F0C79601C0C0968D939D932F5F24318B +:101EB00049F74FBF8091E800877F8093E8006AE28E +:101EC00070E0CE0101960E949D0B14C0AE014F5FE1 +:101ED0005F4F6091F6010E94E40ABC01009709F48B +:101EE00040C09091E800977F9093E80089819A81A3 +:101EF0000E94000C8091E8008B778093E80031C04D +:101F0000803879F58091E800877F8093E8008091A0 +:101F1000ED018093F1008091E8008E778093E800D6 +:101F20000E94960C1EC081111CC09091F401923049 +:101F3000C0F48091E800877F8093E8009093ED01E2 +:101F40000E94960C8091ED01811106C08091E30002 +:101F500087FD02C081E001C084E08093F1010E940E +:101F6000E0098091E80083FF0AC08091E800877F44 +:101F70008093E8008091EB0080628093EB00AA964A +:101F80000FB6F894DEBF0FBECDBFDF91CF911F918A +:101F900008950895CF938091F1018823A1F0C09115 +:101FA000E900CF709091EC00892F817090FD80E85E +:101FB000C82B1092E9008091E80083FD0E94780E02 +:101FC000CF70C093E900CF910895909375018093ED +:101FD00074010895E0917401F0917501309721F03A +:101FE0000190F081E02D099480E00895E091740162 +:101FF000F0917501309721F00280F381E02D099472 +:102000000895E0917401F0917501309721F00480FA +:10201000F581E02D099408952091720130917301AA +:102020008217930771F09093730180937201E0918E +:102030007401F0917501309721F00680F781E02D51 +:1020400009940895209170013091710182179307CE +:1020500071F09093710180937001E0917401F0919F +:102060007501309721F00084F185E02D09940895E1 +:1020700008950C9438100E94921B0E9433030C9414 +:10208000541C9F92AF92BF92CF92DF92EF92FF9239 +:102090000F931F93CF93DF9300D000D000D0CDB724 +:1020A000DEB70E944B030DE010E0AA24A394B12CEC +:1020B000902E802F0E943904980129583E4F6901C3 +:1020C000F901F080F826A1F40150110988F78FEF8B +:1020D00089838A831B820E949B1B8160782F9D834A +:1020E0008C8349815A816B818D810E94D8102FC0C9 +:1020F0009091DA0191FF04C08E830E943F048E818B +:1021000025E030E0A501022E01C0440F0A94EAF751 +:10211000E42E4F21C1F029839A828E2191E009F4A7 +:1021200090E09B830E949B1B8160782F9D838C8312 +:1021300049815A816B818D810E94D810F60180817E +:10214000E826E08204C021503109E0F6BDCF0E94AC +:102150003B1F109176010E94EA0F1817B9F00E94F8 +:10216000EA0F8093760126960FB6F894DEBF0FBE75 +:10217000CDBFDF91CF911F910F91FF90EF90DF9036 +:10218000CF90BF90AF909F900C94E30826960FB627 +:10219000F894DEBF0FBECDBFDF91CF911F910F919D +:1021A000FF90EF90DF90CF90BF90AF909F900895F9 +:1021B000CF93DF93CDB7DEB72B970FB6F894DEBF82 +:1021C0000FBECDBF4F83588769877A878B87DE0123 +:1021D000119686E0FD0111928A95E9F785E0FE01EE +:1021E000379601900D928A95E1F749815A816B816A +:1021F0007C818D819E810E9421172B960FB6F894C9 +:10220000DEBF0FBECDBFDF91CF910895CF9388235E +:1022100009F4C2C0C82F823859F40E94EA0F81FD28 +:10222000BBC089E30E94FB190E94C81A89E30CC055 +:10223000833879F40E94EA0F80FDAEC083E50E94E6 +:10224000FB190E94C81A83E50E943D1ACF910C9495 +:10225000C81A843859F40E94EA0F82FD9DC087E4B1 +:102260000E94FB190E94C81A87E4EECF8CEF8C0FF6 +:10227000813A48F48C2F0E947E2181118DC08C2FD1 +:102280000E94FB19E3CF80E28C0F883048F4C770BE +:1022900081E001C0880FCA95EAF70E94811AD6CF63 +:1022A0008BE58C0F833078F4C53A29F0C63A31F0CB +:1022B00083E890E005C081E890E002C082E890E009 +:1022C000CF910C940C1088E58C0F833108F064C01A +:1022D000C83A39F1C93A41F1CA3A49F1CB3A51F118 +:1022E000CC3A59F1CD3A61F1C03B69F1CE3A71F186 +:1022F000CF3A79F1C13B81F1C23B89F1C33B91F106 +:10230000C43B99F1C53BA1F1C63BA9F1C73BB1F173 +:10231000C83BB9F1C93BC1F1CA3BC9F180E090E0CB +:1023200038C082EE90E035C089EE90E032C08AEE8F +:1023300090E02FC085EB90E02CC086EB90E029C0A8 +:1023400087EB90E026C08CEC90E023C08DEC90E011 +:1023500020C083E891E01DC08AE891E01AC082E9BC +:1023600091E017C084E991E014C081E292E011C0CD +:1023700083E292E00EC084E292E00BC085E292E03C +:1023800008C086E292E005C087E292E002C08AE2DD +:1023900092E0CF910C942210CF910895882309F4F4 +:1023A0004BC0823859F40E94EA0F81FF45C089E38F +:1023B0000E94FB190E94C81A89E30CC0833871F48B +:1023C0000E94EA0F80FF38C083E50E94FB190E943B +:1023D000C81A83E50E943D1A0C94C81A843859F42F +:1023E0000E94EA0F82FF28C087E40E94FB190E9426 +:1023F000C81A87E4EFCF9CEF980F913A58F390E218 +:10240000980F983050F4877091E001C0990F8A9529 +:10241000EAF7892F0E94871ADFCF9BE5980F933048 +:1024200020F480E090E00C940C10885A833120F462 +:1024300080E090E00C9422100895882321F00E94FF +:10244000811A0C94C81A0895882321F00E94871AD3 +:102450000C94C81A08957F928F929F92AF92BF9268 +:10246000CF92DF92EF92FF920F931F93CF93DF9360 +:102470001F92CDB7DEB77C01C62E772EFC010581F9 +:1024800002950F70128111110E949E1A0E94F41978 +:10249000882379F0112369F080E28C0D883048F0B0 +:1024A00082E00E94DD190E94F41991E0D82ED9260D +:1024B00001C0D12CE72DE295EF70F0E0E05AFF4F1C +:1024C0000C94B323872D807F072D0F70882311F084 +:1024D0000295007F112389F0002309F490C180E266 +:1024E0008C0D883020F4802F0E94811A03C0802F29 +:1024F0000E94911A0E94C81A82C18C2D0E94CE118E +:10250000002309F495C180E28C0D883020F4802FDF +:102510000E94871A03C0802F0E94971A0E94C81A2F +:1025200087C1972D907F872D8F70903211F0829503 +:10253000807FCC2021F0F1E0CF16B1F01EC0112336 +:1025400049F0002309F414C1013009F011C10E94BF +:10255000B11A6EC1002319F0013009F469C18983F1 +:102560000E94B41A89810AC1112321F0023008F0B7 +:102570005FC1FEC001115CC101C1112321F0002324 +:1025800009F4F6C03CC1002309F4F8C03EC1872D10 +:1025900086958695837090E0009719F0019761F019 +:1025A00047C1112321F08C2D972D937002C080E03C +:1025B00090E00E940C103CC1112321F08C2D972D2E +:1025C000937002C080E090E00E94221031C18C2DF7 +:1025D000112319F00E94431E02C00E94AB1E0E94EC +:1025E000301F26C1872D837009F052C0111120C100 +:1025F0008C2D829586958770880F880F9C2D9F70F3 +:10260000892E912CA12CB12C082E04C0880C991C69 +:10261000AA1CBB1C0A94D2F7C4FE14C00FE010E041 +:1026200020E030E0B901A80104C0440F551F661F27 +:10263000771F8A95D2F7CB01BA0160957095809586 +:10264000909503C060E070E0CB01272D269526957C +:10265000237030E02230310569F02330310589F0F4 +:10266000682979298A299B292130310571F00E9436 +:102670006918DEC0682979298A299B290E94851852 +:10268000D7C00E946918C501B4010E944D18D0C07E +:10269000112319F0872D817001C08695882309F4D4 +:1026A000C7C08C2D829586958770880F880F9C2DCA +:1026B0009F70892E912CA12CB12C082E04C0880C5F +:1026C000991CAA1CBB1C0A94D2F7C4FE14C00FE0CC +:1026D00010E020E030E0B901A80104C0440F551F0C +:1026E000661F771F8A95D2F7CB01BA016095709566 +:1026F0008095909503C060E070E0CB01272D269572 +:1027000026952370422F50E04230510569F0433046 +:10271000510589F0682979298A299B294130510579 +:1027200071F00E94431984C0682979298A299B295C +:102730000E945F197DC00E944319C501B4010E9427 +:10274000271976C08C2D90E0FC01E05EF109E5319F +:10275000F10508F050C0E059FF4F0C94B3230C2D45 +:102760000F70872D8F71112331F00E94C018802FB8 +:102770000E941D125DC00E94E118802F0E94241249 +:1027800057C0112339F0011153C0872D8F710E945A +:1027900006194EC0023008F04BC0F7CF112339F0B4 +:1027A000872D8F710E94C01843C01123C9F3872D54 +:1027B0008F710E94E1183CC0112329F0872D8F7181 +:1027C0000E94AB1835C00E94A11832C0112351F0ED +:1027D000172D1F71812F0E94C01863E0812F0E9466 +:1027E000D41926C081E00E94DD19023008F182E090 +:1027F0000E94DD191DC0112331F0002389F28C2DB8 +:102800000E94061115C0002391F28C2D0E94CE115A +:102810000FC0472D4F706C2DC7010E9415050E94F7 +:10282000C51706C0472D4F706C2DC7010E94F205D9 +:10283000DD20F9F00E94D01980FD1BC0F701128243 +:102840000E94CA190E94C018C7010E9448140E9421 +:10285000CA190F90DF91CF911F910F91FF90EF90C8 +:10286000DF90CF90BF90AF909F908F907F900C940F +:10287000E1180F90DF91CF911F910F91FF90EF9092 +:10288000DF90CF90BF90AF909F908F907F900895F2 +:102890000F931F93CF93DF93EC01888199812B8154 +:1028A0003C81232BB9F09F3F11F48F3F99F0CE016B +:1028B0000E944A05882371F0688179818A810E948B +:1028C000C6198C010E947B190E944218B801CE01E2 +:1028D0000E942B12DF91CF911F910F9108950E94BA +:1028E0009E1A0E94AE1A0E94731A0E94C81A0E9471 +:1028F000E11F0E94301F80E090E00E940C1080E0F9 +:1029000090E00C9422100E948E1A0C946F140E9476 +:10291000BB19292F22952F7030E02C3031054CF453 +:102920002A3031056CF42250310922303105A8F4E7 +:1029300007C02C30310569F02F30310551F00DC042 +:10294000803F69F018F4803E40F409C0843F29F4C8 +:1029500006C093FB882780F9089580E0089581E000 +:102960000895CF93DF9300D000D01F92CDB7DEB78C +:102970000F900F900F900F900F90DF91CF910895CF +:10298000CF93DF9300D000D000D0CDB7DEB726962E +:102990000FB6F894DEBF0FBECDBFDF91CF91089583 +:1029A0001F93CF93DF93C091850116E0809186013C +:1029B000C81799F0D0E01C9FF0011D9FF00D112465 +:1029C000E957FE4F408151816281738184819581F5 +:1029D0000E94C0142196C770E9CFDF91CF911F915B +:1029E00008954091B7015091B8016091B90170917B +:1029F000BA018091BB019091BC010C94C0148091EC +:102A0000BC0182958F7009F054C08091B901882370 +:102A100009F44FC080918501A09186016091B701B2 +:102A20007091B8014091BA015091BB01B6E08A178C +:102A300009F43FC090E041155105C1F17F3F11F409 +:102A40006F3FA1F1B89FF001B99FF00D1124E95734 +:102A5000FE4F218172132AC02081621327C0228178 +:102A6000211124C0238134812417350710F421500B +:102A70003109241B350B283C3105C0F42091BC01E1 +:102A80002F7020612093BC0126E0289FF001299F30 +:102A9000F00D1124E457FE4F80818F708061808398 +:102AA00087EB91E00E9448140C94D0140196877033 +:102AB000BECF0895CF92DF92EF92FF920F931F93B4 +:102AC000CF93DF93CDB7DEB762970FB6F894DEBF32 +:102AD0000FBECDBF8C0185E0F801DE011D9601908F +:102AE0000D928A95E1F7D8014C9111965C9111975E +:102AF00012966C9112971396CD90DC9014973091AA +:102B0000B7017091B8018091BA019091BB01009713 +:102B100009F46BC17F3F19F43F3F09F466C1E090AF +:102B2000B901EE2009F4C0C02091BC01C816D90635 +:102B300028F0F601E81BF90BCF0104C080959095B1 +:102B40008C0D9D1DFF24F394883C910578F0F12CA9 +:102B5000207F09F0C6C07C2DD98AC88A89890E9445 +:102B6000B11487EB91E00E944814B1C0822F807F9E +:102B700009F046C0751314C0341312C0611110C09F +:102B80002F7020612093BC010E94F11487EB91E02B +:102B90000E9448148091BC01D80115968C932EC0D8 +:102BA000CD2819F15F3F11F44F3FF9F0F62E611176 +:102BB0001CC0809185012091860136E0821709F4BE +:102BC0005AC090E0389FF001399FF00D1124E95769 +:102BD000FE4F7181571306C07081471303C0728185 +:102BE000711103C001968770E9CFF62E662309F4B0 +:102BF00018C18091BC0181608093BC01F12C11C18E +:102C0000751308C0341306C0611104C08091BC0163 +:102C1000D801C3C04D875E878D859E856A8B0E94D3 +:102C200087146A898823E1F16623D1F12091BC01E0 +:102C3000822F82958F7090E0029774F08091B70197 +:102C40009091B80198878F831986DB86CA862C8776 +:102C5000CE0107960E94481486E0F801A7EBB1E088 +:102C600001900D928A95E1F70E94FF140E94F114E1 +:102C7000FF24F394D6C04D875E878D859E850E9484 +:102C8000BB19292F22952F7030E0223031050CF02E +:102C9000BCC09F7009F0B6C0805E883008F4C1C027 +:102CA000C8010E944814E4CFC816D90608F453C0DE +:102CB000F601E81BF90BCF01883C910508F450C0E0 +:102CC000F12C7C2DD98AC88A89890E94B114E7EB3E +:102CD000F1E086E0DF011D928A95E9F70E94F11488 +:102CE000A0C0751314C0341312C0611110C08091BC +:102CF000BC01F8018583C8010E94481486E0E7EB17 +:102D0000F1E0DF011D928A95E9F7FE2C8AC04D871C +:102D10005E878D859E856A8B0E9487146A898823C9 +:102D200009F4BECF662309F4BBCF2091BC01822FEA +:102D300082958F7090E002970CF48ECF8091B7014E +:102D40009091B8019A8389831B82DD82CC822E8385 +:102D5000CE0101967FCF809590958C0D9D1DACCFB7 +:102D6000F62E662309F49CCF75132EC034132CC0A5 +:102D70002091BC0120FD1FC0822F82958F70D9F059 +:102D8000D80115962C9315978F3049F08F5F982FA7 +:102D90009295907F822F8F70892B15968C93C80106 +:102DA0000E94481486E0F801A7EBB1E001900D9273 +:102DB0008A95E1F793CF86E0F801A7EBB1E00190A7 +:102DC0000D928A95E1F72DC04D875E878D859E8592 +:102DD0000E948714811140CF8091BC018160809353 +:102DE000BC01C8010E9448141CC0662309F458CFD6 +:102DF0004D875E878D859E850E948714882309F400 +:102E00004FCF2ACF811148CF0CC0243031050CF0B0 +:102E100047CF9F7009F440CFF8019581907F09F06A +:102E20003BCF8F2D62960FB6F894DEBF0FBECDBF9D +:102E3000DF91CF911F910F91FF90EF90DF90CF9096 +:102E400008951F93CF93DF93CDB7DEB72C970FB6BE +:102E5000F894DEBF0FBECDBF4F83588769877A874E +:102E60008B879C87CE0107960E945A15882369F0AC +:102E70008F8198852A853B85232BF1F19F3F09F0AF +:102E800063C08F3F09F060C037C086E0FE0137960F +:102E9000DE01119601900D928A95E1F76F81788598 +:102EA000EA85FB85309741F17F3F11F46F3F21F1B7 +:102EB0002091860130E0C9010196877099274091E1 +:102EC000850150E08417950709F447C069837A8328 +:102ED000FD83EC8396E0929FD001939FB00D112467 +:102EE000A957BE4FFE01319601900D929A95E1F7D8 +:102EF000809386010E94D01416E080918501909104 +:102F000086018917C1F1189FC001112489579E4F6E +:102F10000E945A15882379F1E09185011E9FF001E6 +:102F20001124E957FE4F4081518162817381848170 +:102F300095810E94C0148091850190E00196877070 +:102F4000992780938501D9CF4F81588569857A85E6 +:102F50008B859C850E94C014CFCF0E948314109251 +:102F6000860110928501E7EBF1E086E0DF011D921A +:102F70008A95E9F7C1CF2C960FB6F894DEBF0FBE45 +:102F8000CDBFDF91CF911F910895EF92FF920F93E4 +:102F90001F93CF93DF938C01009709F46CC0F12C41 +:102FA000EE24E394E8012196F8018491843740F4FB +:102FB000843008F051C0813081F0823019F15BC05B +:102FC000853709F444C0A8F19CE7980F903708F0C2 +:102FD00052C08F770E94CE1141C00E5F1F4FFE017D +:102FE000C49180E28C0F883048F4C7708E2D01C0E8 +:102FF000880FCA95EAF70E94A11A14C08C2F0E946C +:1030000006112DC00E5F1F4FFE01C49180E28C0F90 +:10301000883058F4C7708E2D01C0880FCA95EAF722 +:103020000E94A71A0E94C81A1AC08C2F0E94CE11A3 +:1030300016C00E5F1F4FFE01C491CC2381F08FE9B3 +:103040009FE00197F1F700C00000C150F6CF0E5F7E +:103050001F4FFE01F49003C00E9406118E018F2DB8 +:10306000882309F49FCFEFE9FFE03197F1F700C023 +:1030700000008150F5CFDF91CF911F910F91FF900C +:10308000EF90089508956093C1017093C2018093F9 +:10309000C3019093C4010C946F140F931F9300917C +:1030A000C1011091C2012091C3013091C401DC0122 +:1030B000CB01802B912BA22BB32B8093C10190933A +:1030C000C201A093C301B093C4011F910F910C944E +:1030D0006F140F931F930091C1011091C2012091B1 +:1030E000C3013091C401DC01CB0180239123A223D1 +:1030F000B3238093C1019093C201A093C301B09305 +:10310000C4011F910F910C946F140F931F930091A2 +:10311000C1011091C2012091C3013091C401DC01B1 +:10312000CB0180279127A227B3278093C1019093D9 +:10313000C201A093C301B093C4011F910F910C94DD +:103140006F141092BD011092BE011092BF01109237 +:10315000C0010C946F1441E050E060E070E004C0E6 +:10316000440F551F661F771F8A95D2F74093BD0104 +:103170005093BE016093BF017093C0010C946F1413 +:1031800041E050E060E070E004C0440F551F661F4E +:10319000771F8A95D2F78091BD019091BE01A091D1 +:1031A000BF01B091C001482B592B6A2B7B2B409358 +:1031B000BD015093BE016093BF017093C0010C9498 +:1031C0006F1441E050E060E070E004C0440F551F10 +:1031D000661F771F8A95D2F7409550956095709538 +:1031E0008091BD019091BE01A091BF01B091C0013D +:1031F000482359236A237B234093BD015093BE018A +:103200006093BF017093C0010C946F1441E050E0D3 +:1032100060E070E004C0440F551F661F771F8A9559 +:10322000D2F78091BD019091BE01A091BF01B091F4 +:10323000C001482759276A277B274093BD01509337 +:10324000BE016093BF017093C0010C946F140F9383 +:103250001F930091BD011091BE012091BF013091DB +:10326000C001DC01CB01802B912BA22BB32B8093CF +:10327000BD019093BE01A093BF01B093C0011F9107 +:103280000F910C946F140F931F930091BD01109137 +:10329000BE012091BF013091C001DC01CB01802330 +:1032A0009123A223B3238093BD019093BE01A093E9 +:1032B000BF01B093C0011F910F910C946F140F9335 +:1032C0001F930091BD011091BE012091BF0130916B +:1032D000C001DC01CB0180279127A227B32780936F +:1032E000BD019093BE01A093BF01B093C0011F9197 +:1032F0000F910C946F140895CF92DF92EF92FF928A +:103300000F931F93CF93DF938C01C090C101D09096 +:10331000C201E090C301F090C4018091BD01909181 +:10332000BE01A091BF01B091C001C82AD92AEA2AE2 +:10333000FB2ACFE1D0E0D701C6010C2E04C0B69520 +:10334000A795979587950A94D2F780FF06C0B80194 +:103350008C2F0E944808019721F4219760F780E0A4 +:1033600001C08C2FDF91CF911F910F91FF90EF90B3 +:10337000DF90CF900895CF93DF93EC010E947C19EA +:10338000BE010E944808DF91CF910895CB010E94B1 +:10339000BB1908958091C5018595859585950895FA +:1033A0008091C5018770089598E0899F900111244C +:1033B000262B2093C5010C94C0182091C50180953F +:1033C00082238093C501982F977069F430E0482FCD +:1033D000552747FD50952417350729F08595859584 +:1033E00085950C94E11808959091C501977081E03E +:1033F00009F480E0089590910C01992321F09091B7 +:103400000D01911109C020910E0130910F01F901B8 +:1034100032969FEF40E01FC0982F9695969596950F +:103420009F3050F5E0910E01F0910F01E90FF11D71 +:10343000877021E030E0A90102C0440F551F8A9532 +:10344000E2F7CA019181892B818308959F3F39F06A +:103450004F5F4E3041F051915813F8CF0DC05111CC +:10346000F7CF942FF5CF9F3F39F0F901E90FF11D08 +:1034700097FDFA9582830895089590910C01992300 +:1034800021F090910D01911109C020910E01309110 +:103490000F01F9013296205F3F4F1FC0982F96957C +:1034A000969596959F30F0F4E0910E01F0910F0102 +:1034B000E90FF11D877021E030E0A90102C0440F3F +:1034C000551F8A95E2F7CA018095918189238183EE +:1034D00008953196E217F30729F090819813F9CFF8 +:1034E0001082F7CF089581E090E0E0910E01F09115 +:1034F0000F01E80FF91F1082019680319105A9F79D +:1035000008959091D901892B8093D90108958095D0 +:103510009091D90189238093D90108951092D901FE +:1035200008959091D801892B8093D80108958095B2 +:103530009091D80189238093D80108951092D801E1 +:1035400008959091D701892B8093D7010895809594 +:103550009091D70189238093D70108951092D701C4 +:1035600008958093C60108951092C6010895809130 +:103570000E0190910F01FC0131969C01205F3F4F9D +:1035800080E0919191118F5FE217F307D1F70895D1 +:10359000E0910E01F0910F018091D9018083E091BB +:1035A0000E01F0910F0190818091D801892B8083C9 +:1035B000E0910E01F0910F0190818091D701892B4C +:1035C00080838091C601882361F0E0910E01F09123 +:1035D0000F019081892B80830E94B71A811110926C +:1035E000C60180910E0190910F010C94F60F20E01E +:1035F000009739F0AC0141505109842395232F5F86 +:10360000F7CF822F0895CF92DF92EF92FF926C0155 +:10361000EE24FF24C114D104E104F10421F0C70118 +:10362000B60120E101C020E0C72ED82EE92EFF24EC +:10363000C114D104E104F10419F0285FC701B601F7 +:103640006B017C0154E0F694E794D794C7945A95A3 +:10365000D1F7C114D104E104F10419F02C5FC701C2 +:10366000B6016B017C0142E0F694E794D794C794CD +:103670004A95D1F7C114D104E104F10419F02E5F89 +:10368000C701B601DC01CB01B695A7959795879543 +:10369000892B8A2B8B2B09F02F5F822FFF90EF90C5 +:1036A000DF90CF9008958091F101843021F1109244 +:1036B000DB0120E488E190E00FB6F894A8958093B0 +:1036C00060000FBE2093600080E00E94E30883B793 +:1036D000817F846083BF83B7816083BF789488953E +:1036E00083B78E7F83BF88E10FB6F8948093600024 +:1036F000109260000FBE0895089508950E947C1BEB +:103700000E944B030E947D1B0E94400491E08111A6 +:1037100001C090E0892F08950E9483140E94EA0F4F +:103720000C94E30882E084BD93E095BD9AEF97BDC9 +:1037300080936E0008952FB7F8948091DC019091EA +:10374000DD01A091DE01B091DF012FBF0895CF927E +:10375000DF92EF92FF920F931F932FB7F89440914F +:10376000DC015091DD016091DE017091DF012FBF1E +:103770006A017B01EE24FF248C0120E030E0C016BA +:10378000D106E206F30610F4415051099A01281BB4 +:10379000390BC9011F910F91FF90EF90DF90CF90EF +:1037A00008951F920F920FB60F9211248F939F933B +:1037B000AF93BF938091DC019091DD01A091DE0178 +:1037C000B091DF010196A11DB11D8093DC019093A2 +:1037D000DD01A093DE01B093DF01BF91AF919F9116 +:1037E0008F910F900FBE0F901F9018950E94E70CBD +:1037F000F8942FEF87EA91E6215080409040E1F75E +:1038000000C0000087E090EBDC018093FB01909307 +:10381000FC01A093FD01B093FE019CE088E10FB68E +:10382000F894A895809360000FBE90936000FFCF3E +:10383000EF92FF920F931F93CF93DF93D82FCDE09A +:103840008C2F0E94390405E010E0E82EF12CC7010E +:10385000002E02C0959587950A94E2F780FF09C073 +:10386000602F7C2F80E00E94F305D81302C081E016 +:1038700006C00150110958F7C15010F780E0DF91E0 +:10388000CF911F910F91FF90EF900895CF93C82F84 +:103890008CE20E94181C882321F08C2FCF910C946D +:1038A000181C80E0CF910895CF930E949B1D811139 +:1038B00002C00E94811DC5E6C15049F00E944B0321 +:1038C0008FE39CE90197F1F700C00000F5CF89E292 +:1038D0000E94461C811113C18AE20E94461C81117C +:1038E0000E94811D85E00E94461C81110E94F61BEA +:1038F0000E94A61D8093DA0187E00E94461C88235F +:10390000A9F18BE10E94461C882351F08091DA01D5 +:1039100081FB222720F991E0922790FB81F90EC0CC +:103920008EE00E94461C882361F08091DA0182FBC0 +:10393000222720F991E0922790FB82F98093DA0107 +:1039400015C080E10E94461C9091DA01882341F065 +:1039500093FB222720F981E0822780FB93F904C0A2 +:10396000892F809580FB90F99093DA018091DA019C +:103970000E94AA1D0E94B81D8093FA0180EE0E9449 +:10398000461C882341F08091FA01982F909590FB76 +:1039900080F98093FA0189E30E94461C882359F03C +:1039A0008091FA0181FB222720F991E0922790FB78 +:1039B00081F98093FA0182EE0E94461C882359F017 +:1039C0008091FA0182FB222720F991E0922790FB57 +:1039D00082F98093FA0186EE0E94461C882359F0F2 +:1039E0008091FA0183FB222720F991E0922790FB36 +:1039F00083F98093FA0183EE0E94461C882359F0D4 +:103A00008091FA0184FB222720F991E0922790FB14 +:103A100084F98093FA0185E30E94461C882359F0BB +:103A20008091FA0185FB222720F991E0922790FBF3 +:103A300085F98093FA0181E30E94461C882359F09E +:103A40008091FA0186FB222720F991E0922790FBD2 +:103A500086F98093FA0181E10E94461C882359F07F +:103A60008091FA0187FB222720F991E0922790FBB1 +:103A700087F98093FA018091FA010E94BC1D809120 +:103A8000FA0187FB882780F980930D0187E20E9465 +:103A9000461CC82F8EE10E94461C8111C2608FE136 +:103AA0000E94461C8111C46080E20E94461C811164 +:103AB000C86081E20E94461C8111C06182E20E94BE +:103AC000461C8111C06283E20E94461C8111C064C1 +:103AD00084E20E94461C882311F0C06802C0CC23F7 +:103AE00029F08C2F0E94B31D6C2F03C00E94AF1DC4 +:103AF000682F70E080E090E0CF910C944318CF9154 +:103B000008956DEE7EEF80E090E00E94ED2360E08E +:103B100082E090E00E94DB2360E083E090E00E947E +:103B2000DB2360E084E090E00E94DB2360E085E03E +:103B300090E00C94DB2380E090E00E94D52321E00C +:103B40008D3E9E4F09F020E0822F089582E090E0A4 +:103B50000C94CD23682F82E090E00C94DB2383E06B +:103B600090E00C94CD23682F83E090E00C94DB234D +:103B700084E090E00C94CD23682F84E090E00C94D6 +:103B8000DB238091E20180FF0BC06091130185E08F +:103B9000689FB001112475956795759567952BC041 +:103BA00081FF09C06091130185E0689FB001112475 +:103BB0007595679520C082FF07C06091130185E06D +:103BC000689FB001112417C09091E3019923D1F0AF +:103BD00060911201961788F72091130185E0289FC4 +:103BE00090011124929FA001939F500D112470E029 +:103BF000CA010E949F236038710540F46115710568 +:103C000039F002C065E070E0862F08958FE70895CF +:103C100081E008958091E20180FF08C06091110168 +:103C200070E0759567957595679521C081FF06C011 +:103C30006091110170E07595679519C082FF04C00D +:103C40006091110170E010C09091E3019923C1F0DF +:103C5000609110019617A0F780911101899FC00112 +:103C6000112470E00E949F236038710528F46115CB +:103C7000710521F0862F08958FE7089581E008955A +:103C800061E070E0F4CF803F21F40E94C11D819576 +:103C900004C0813F29F40E94C11D8093E60108956C +:103CA000823F21F40E94C11D819504C0833F29F405 +:103CB0000E94C11D8093E5010895893F19F40E9477 +:103CC0000A1E05C08A3F31F40E940A1E8195809326 +:103CD000E70108958B3F21F40E940A1E819504C0DC +:103CE0008C3F29F40E940A1E8093E8010895843FC6 +:103CF00021F48091E401816017C0853F21F4809117 +:103D0000E401826011C0863F21F48091E401846067 +:103D10000BC0873F21F48091E401886005C0883F93 +:103D200031F48091E40180618093E40108958D3F36 +:103D300021F48091E20181600BC08E3F21F48091DB +:103D4000E201826005C08F3F29F48091E201846026 +:103D50008093E2010895803F39F48091E60187FF66 +:103D60006CC01092E60169C0813F29F48091E601A0 +:103D70001816BCF362C09091E501823F29F497FFC9 +:103D80005CC01092E50159C0833F19F41916CCF3B9 +:103D900054C0893F41F48091E70118160CF04DC0E2 +:103DA0001092E7014AC08A3F29F48091E70187FF1A +:103DB00044C0F6CF8B3F39F48091E80187FF3DC0C6 +:103DC0001092E8013AC08C3F29F48091E80118165E +:103DD000BCF333C0843F21F48091E4018E7F17C08F +:103DE000853F21F48091E4018D7F11C0863F21F44D +:103DF0008091E4018B7F0BC0873F21F48091E40127 +:103E0000877F05C0883F31F48091E4018F7E8093E5 +:103E1000E40113C08D3F21F48091E2018E7F0BC03D +:103E20008E3F21F48091E2018D7F05C08F3F29F400 +:103E30008091E2018B7F8093E2018091E501811105 +:103E40000EC08091E60181110AC08091E7018111C5 +:103E500006C08091E801811102C01092E30108952B +:103E600084EE91E00E9401100E949B1B9093E1015F +:103E70008093E00108951F93CF93DF938091E00139 +:103E80009091E1010E94A71BAC019091E30199235D +:103E900021F02091140130E006C0209115018AE044 +:103EA000289F900111244217530708F486C080917F +:103EB000E501C091E601D091E7011091E80181117F +:103EC00007C0C11176C0D11174C0111172C075C084 +:103ED0009F3F19F09F5F9093E301181624F40E940E +:103EE000C11D8093E5018091E50187FF05C00E9417 +:103EF000C11D81958093E5011C1624F40E94C11D0B +:103F00008093E6018091E60187FF05C00E94C11DF4 +:103F100081958093E6016091E501662339F1C091B6 +:103F2000E601CC2319F1772767FD7095872F972F2E +:103F30000E94B02223E333E343E35FE30E941423B0 +:103F40000E947D226093E5016C2F772767FD7095B5 +:103F5000872F972F0E94B02223E333E343E35FE3ED +:103F60000E9414230E947D226093E6011D1624F412 +:103F70000E940A1E8093E7018091E70187FF05C038 +:103F80000E940A1E81958093E701111624F40E9475 +:103F90000A1E8093E8018091E80187FF05C00E9416 +:103FA0000A1E81958093E801DF91CF911F910C94B7 +:103FB000301F9F3F09F08ECF96CFDF91CF911F9199 +:103FC0000895E4EEF1E085E0DF011D928A95E9F7BE +:103FD0001092E3011092E2010895833081F128F4F8 +:103FE000813059F08230D1F00895853009F449C00C +:103FF000B8F1863009F456C0089580911501262F36 +:1040000030E0280F311D2F3F310524F4680F6093F5 +:10401000150108958FEF8093150108958091140183 +:10402000262F30E0280F311D2F3F310524F4680F73 +:104030006093140108958FEF809314010895809187 +:104040001301262F30E0280F311D2F3F310524F4B6 +:10405000680F6093130108958FEF80931301089503 +:1040600080911201262F30E0280F311D2F3F31059E +:1040700024F4680F6093120108958FEF809312016A +:10408000089580911101262F30E0280F311D2F3F18 +:10409000310524F4680F6093110108958FEF809328 +:1040A0001101089580911001262F30E0280F311D55 +:1040B0002F3F310524F4680F6093100108958FEFAE +:1040C000809310010895833011F128F4813049F074 +:1040D000823091F00895853081F120F18630C1F170 +:1040E000089580911501681720F4861B80931501AF +:1040F000089510921501089580911401681720F415 +:10410000861B8093140108951092140108958091E4 +:104110001301681720F4861B8093130108951092F1 +:104120001301089580911201681720F4861B809373 +:1041300012010895109212010895809111016817DB +:1041400020F4861B809311010895109211010895A7 +:1041500080911001681720F4861B80931001089548 +:104160001092100108950F931F938D3109F46BC0C5 +:1041700008F03FC08E3009F47FC0C0F4873009F4E6 +:1041800069C068F4863009F0B1C08091DA01817F9E +:104190008E7F8093DA0181E08093EA01A8C08830A5 +:1041A00009F4A2C08B3009F49FC0A0C0863109F485 +:1041B0009BC078F4803109F472C0813109F096C057 +:1041C0000E94831490910D0181E0892780930D0155 +:1041D0008BC0893109F488C08B3109F087C0809188 +:1041E000DA0181FB222720F991E0922790FB81F9E7 +:1041F0004CC0853309F470C048F4873209F46CC0B0 +:1042000008F459C0893209F467C070C0833438F4A7 +:104210008A3308F04EC0883309F466C067C083341F +:1042200009F45AC0883409F061C00E9483140FEF6A +:1042300013ED20E3015010402040E1F700C00000E2 +:104240000E94F61B51C00E9437220E94EA0F0E9472 +:10425000E3084AC09091DA01892F8095817080FB34 +:1042600090F929F0966098609093DA0140C0997FA8 +:10427000977F9093DA0138C08091DA0182FB222780 +:1042800020F991E0922790FB82F98093DA0199233B +:1042900059F18091DA0181608093DA0125C0809123 +:1042A000DA0183FB222720F991E0922790FB83F922 +:1042B000ECCF895301C08D5141E050E060E070E0E7 +:1042C0008A019B0104C0000F111F221F331F8A9512 +:1042D000D2F7C901B80104C061E070E080E090E06D +:1042E0000E9443180E94831481E001C080E01F9166 +:1042F0000F91089580E0089580E00895CF93C82F2E +:104300008091EA01813079F018F08230E9F187C0BC +:10431000E0910E01F0910F018081813169F08232CC +:1043200009F07FC009C0E0910E01F0910F0180817A +:10433000813111F0823261F48C2F0E947A21811137 +:1043400004C08C2F0E94B3201DC081E090E01AC0F1 +:104350008C2F0E947C21811114C0C43179F048F463 +:10436000CB3079F0C03109F060C082E08093EA017F +:1043700008C0C93219F0C83321F057C01092EA01C1 +:1043800054C081E0817053C0C93289F118F5C4313D +:1043900071F1A8F4C73009F046C08AE08093150196 +:1043A00094E19093140193E0909313018093120190 +:1043B00088E08093110188E28093100134C0CE51CF +:1043C000C63088F5EC2FF0E0E65DFE4F80818093EB +:1043D000E90129C0CE34E9F020F4CB3421F56AE0BC +:1043E00013C0C13579F0C235F1F461E00DC08091A0 +:1043F000E901882319F01092E90115C081E080934A +:10440000EA0115C061E006C08091E9010E94ED1F3C +:104410000AC06AE08091E9010E94632004C0109202 +:10442000EA0180E004C081E002C080E0ABCFCF9120 +:104430000895E1E8F0E08081886080838081816078 +:1044400080838FB7F89493E09093890090ED9093D8 +:1044500088008FBF0895EFE6F0E08081826080835E +:104460000895EFE6F0E080818D7F80830895EFE688 +:10447000F0E0908182E08927808308951F920F9257 +:104480000FB60F9211242F933F934F935F936F9327 +:104490007F938F939F93AF93BF93EF93FF938091FD +:1044A000EB019091EC0101969093EC018093EB016C +:1044B000811103C082E00E94E308E091EC01E695DF +:1044C000E695F0E0EC54FB4FE4918091EB018E1304 +:1044D00003C080E00E94E308FF91EF91BF91AF918C +:1044E0009F918F917F916F915F914F913F912F910C +:1044F0000F900FBE0F901F90189504D06894B111C3 +:104500008DC0089570D088F09F5790F0B92F9927EB +:10451000B751A0F0D1F0660F771F881F991F1AF0CE +:10452000BA95C9F712C0B13081F077D0B1E00895E3 +:1045300074C0672F782F8827B85F39F0B93FCCF364 +:10454000869577956795B395D9F73EF490958095C4 +:10455000709561957F4F8F4F9F4F0895E89409C0E4 +:1045600097FB3EF490958095709561957F4F8F4FA6 +:104570009F4F9923A9F0F92F96E9BB279395F695BC +:10458000879577956795B795F111F8CFFAF4BB0F3A +:1045900011F460FF1BC06F5F7F4F8F4F9F4F16C09E +:1045A000882311F096E911C0772321F09EE8872F28 +:1045B000762F05C0662371F096E8862F70E060E0E4 +:1045C0002AF09A95660F771F881FDAF7880F96955D +:1045D000879597F9089557FD9058440F551F59F046 +:1045E0005F3F71F04795880F97FB991F61F09F3FE0 +:1045F00079F087950895121613061406551FF2CF09 +:104600004695F1DF08C0161617061806991FF1CF58 +:1046100086957105610508940895E894BB2766277F +:104620007727CB0197F908950BD078C069D028F08F +:104630006ED018F0952309F05AC05FC01124EECF58 +:10464000CADFA0F3959FD1F3950F50E0551F629FED +:10465000F001729FBB27F00DB11D639FAA27F00DDB +:10466000B11DAA1F649F6627B00DA11D661F829F02 +:104670002227B00DA11D621F739FB00DA11D621FE7 +:10468000839FA00D611D221F749F3327A00D611D04 +:10469000231F849F600D211D822F762F6A2F1124E6 +:1046A0009F5750408AF0E1F088234AF0EE0FFF1F39 +:1046B000BB1F661F771F881F91505040A9F79E3F70 +:1046C000510570F014C0AACF5F3FECF3983EDCF3C5 +:1046D000869577956795B795F795E7959F5FC1F7AD +:1046E000FE2B880F911D9695879597F9089597F958 +:1046F0009F6780E870E060E008959FEF80EC089588 +:1047000000240A94161617061806090608950024B0 +:104710000A9412161306140605060895092E03942A +:10472000000C11F4882352F0BB0F40F4BF2B11F49E +:1047300060FF04C06F5F7F4F8F4F9F4F089597FBBF +:10474000072E16F4009407D077FD09D00E94B923F4 +:1047500007FC05D03EF4909581959F4F0895709584 +:1047600061957F4F0895EE0FFF1F0590F491E02DA6 +:104770000994AA1BBB1B51E107C0AA1FBB1FA617A8 +:10478000B70710F0A61BB70B881F991F5A95A9F7FA +:1047900080959095BC01CD010895F999FECF92BD09 +:1047A00081BDF89A992780B50895A8E1B0E042E06C +:1047B00050E00C94F523262FF999FECF92BD81BDD0 +:1047C000F89A019700B4021639F01FBA20BD0FB64F +:1047D000F894FA9AF99A0FBE08950196272F0E942D +:1047E000DC230C94DB23DC01CB01FC01F999FECF27 +:1047F00006C0F2BDE1BDF89A319600B40D92415069 +:0A4800005040B8F70895F894FFCF78 +:10480A000220E508730950091C09E8080101C701DB +:10481A0028080A03140A3F4D363975042804F2039E +:10482A00B9034C0365037E039703010203040506DB +:04483A000708090062 +:00000001FF diff --git a/keyboards/ergodox_ez/keymaps/dvorak_intl_squisher/keyboard-layout0.png b/keyboards/ergodox_ez/keymaps/dvorak_intl_squisher/keyboard-layout0.png new file mode 100644 index 0000000000..6a36f9bfa1 Binary files /dev/null and b/keyboards/ergodox_ez/keymaps/dvorak_intl_squisher/keyboard-layout0.png differ diff --git a/keyboards/ergodox_ez/keymaps/dvorak_intl_squisher/keyboard-layout1.png b/keyboards/ergodox_ez/keymaps/dvorak_intl_squisher/keyboard-layout1.png new file mode 100644 index 0000000000..c6e6d913cb Binary files /dev/null and b/keyboards/ergodox_ez/keymaps/dvorak_intl_squisher/keyboard-layout1.png differ diff --git a/keyboards/ergodox_ez/keymaps/dvorak_intl_squisher/keyboard-layout2.png b/keyboards/ergodox_ez/keymaps/dvorak_intl_squisher/keyboard-layout2.png new file mode 100644 index 0000000000..23f56ff4c0 Binary files /dev/null and b/keyboards/ergodox_ez/keymaps/dvorak_intl_squisher/keyboard-layout2.png differ diff --git a/keyboards/ergodox_ez/keymaps/dvorak_intl_squisher/keymap.c b/keyboards/ergodox_ez/keymaps/dvorak_intl_squisher/keymap.c new file mode 100644 index 0000000000..82f55b4bc0 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/dvorak_intl_squisher/keymap.c @@ -0,0 +1,185 @@ +#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 + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | = | 1 | 2 | 3 | 4 | 5 | BrBck| | Play | 6 | 7 | 8 | 9 | 0 | \ / L2 | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Esc | ' | , | . | P | Y | Del | | Ins | F | G | C | R | L | / | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | BkSp | A | O | E | U | I |------| |------| D | H | T | N | S | - | + * |--------+------+------+------+------+------| Hyper| | Meh |------+------+------+------+------+--------| + * | LShift |:/Ctrl| Q | J | K | X | | | | B | M | W | V |Z/Ctrl| RShift | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * |Grv/L1| LAlt | LGui | Left | Right| | Up | Down | [ | ] | ~L1 | + * `----------------------------------' `----------------------------------' + * ,-------------. ,---------------. + * | App | L1 | | L2 |PrntScr | + * ,------|------|------| |------+--------+------. + * | | | Home | | PgUp | | | + * | Space| Tab |------| |------| AltShf |Enter | + * | | | End | | PgDn | | | + * `--------------------' `----------------------' + */ +// If it accepts an argument (i.e, is a function), it doesn't need KC_. +// Otherwise, it needs KC_* +[BASE] = KEYMAP( // layer 0 : default + // left hand + KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, KC_WBAK, + KC_ESC, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_DELT, + KC_BSPC, KC_A, KC_O, KC_E, KC_U, KC_I, + KC_LSFT, CTL_T(KC_SCLN), KC_Q, KC_J, KC_K, KC_X, ALL_T(KC_NO), + LT(SYMB,KC_GRV),KC_LALT, KC_LGUI, KC_LEFT,KC_RGHT, + CTL_T(KC_APP), TG(1), + KC_HOME, + KC_SPC,KC_TAB,KC_END, + // right hand + KC_MPLY, KC_6, KC_7, KC_8, KC_9, KC_0, LT(MDIA, KC_BSLS), + KC_INS, KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLSH, + KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS, + MEH_T(KC_NO),KC_B, KC_M, KC_W, KC_V, CTL_T(KC_Z), KC_RSFT, + KC_UP, KC_DOWN,KC_LBRC,KC_RBRC, KC_FN1, + TG(2), KC_PSCREEN, + KC_PGUP, + KC_PGDN,RALT(KC_RSFT), KC_ENT + ), +/* Keymap 1: Symbol & Media Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | ! | @ | { | } | | | | | | Up | 7 | 8 | 9 | * | F12 | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | # | $ | ( | ) | ` |------| |------| Down | 4 | 5 | 6 | + | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | % | ^ | [ | ] | ~ | | | | & | 1 | 2 | 3 | \ | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | Prev | Next | | | . | 0 | = | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | |VolUp | | | + * | | |------| |------| Mute | | + * | | | | |VolDn | | | + * `--------------------' `--------------------' + */ +// 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_MPRV,KC_MNXT, + 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_VOLU, + KC_VOLD, KC_MUTE, KC_TRNS +), +/* Keymap 2: QWERTY Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | Q | W | E | R | T | | | | Y | U | I | O | P | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | A | S | D | F | G |------| |------| H | J | K | L | ; | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | |Z/Ctrl| X | C | V | B | | | | N | M | , | . |//Ctrl| | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// MEDIA AND MOUSE +KEYMAP( // layer 0 : default + // left hand + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_TRNS, + KC_TRNS, KC_A, KC_S, KC_D, KC_F, KC_G, + KC_TRNS, CTL_T(KC_Z), KC_X, KC_C, KC_V, KC_B, 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_Y, KC_U, KC_I, KC_O, KC_P, KC_TRNS, + KC_H, KC_J, KC_K, KC_L, LT(MDIA, KC_SCLN),KC_TRNS, + KC_TRNS, KC_N, KC_M, KC_COMM,KC_DOT, CTL_T(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 + ), +}; + +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/keyboards/ergodox_ez/keymaps/dvorak_spanish/README.md b/keyboards/ergodox_ez/keymaps/dvorak_spanish/README.md new file mode 100644 index 0000000000..e075e3cd7d --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/dvorak_spanish/README.md @@ -0,0 +1,99 @@ +# Ergodox Spanish Dvorak Layout + * See spanish dvorak layout [here](http://djelibeibi.unex.es/dvorak/) + * Software layout must be set to SPANISH QWERTY to work properly + +## Keymap Layers + - L0: spanish dvorak with some customizations (see layout below) + - L1: auxiliary keys (includes qwerty shortcuts, numpad...) + - L2: qwerty layout with customizations + + +### Keymap 0: Base layer +Keys with double values (like Esc/Ctrl) correspond to the 'tapped' key and the 'held' key, respectively + +

+
+,--------------------------------------------------.           ,--------------------------------------------------.
+|   \    |   1  |   2  |   3  |   4  |   5  |  <>  |           |   ¡  |   6  |   7  |   8  |   9  |   0  |   '    |
+|--------+------+------+------+------+-------------|           |------+------+------+------+------+------+--------|
+| F1/~L1 |   .  |   ,  |   Ñ  |   P  |   Y  |MEH_T |           |  L1  |   F  |   G  |   C  |   H  |   L  |ALL_T/+ |
+|--------+------+------+------+------+------| DEL  |           | ~L1  |------+------+------+------+------+--------|
+|Esc/Ctrl|   A  |   O  |   E  |   U  |   I  |------|           |------|   D  |   R  |   T  |   N  |   S  |'/RCtrl |
+|--------+------+------+------+------+------| LGUI |           | RALT |------+------+------+------+------+--------|
+| {/LSft |   -  |   Q  |   J  |   K  |   X  |      |           |      |   B  |   M  |   W  |   V  |   Z  | }/RSft |
+'--------+------+------+------+------+-------------'           '-------------+------+------+------+------+--------'
+  |[/LALT| HOME |PGDOWN| PGUP | END  |                                       | LEFT | DOWN |  UP  |RIGHT |]/LALT|
+  '----------------------------------'                                       '----------------------------------'
+                                       ,-------------.       ,-------------.
+                                       |F5/CAG|F6/~L1|       |F7/~L1|F8/CAG|
+                                ,------|------|------|       |------+--------+------.
+                                |      |      |F4/CA |       |F11/CA|        |      |
+                                | ENTER| TAB  |------|       |------|  BSPC  | SPACE|
+                                |      |      |F3/SA |       |F12/SA|        |      |
+                                '--------------------'       '----------------------'
+ CAG = CTRL-ALT-GUI
+  CA = CTRL-ALT
+  SA = SHIFT-ALT
+
+
+ +### Keymap 1: Aux layer + +

+
+,--------------------------------------------------.           ,--------------------------------------------------.
+|        |  F1  |  F2  |  F3  |  F4  |  F5  | SLEEP|           | PWR  |  F6  |  F7  |  F8  |  F9  |  F10 |   F11  |
+|--------+------+------+------+------+-------------|           |------+------+------+------+------+------+--------|
+|        |  <   |  >   | MsUp |      |      |      |           | ~L0  |      |   7  |   8  |   9  |   *  |  '^    |
+|--------+------+------+------+------+------|      |           |      |------+------+------+------+------+--------|
+|        |      |MsLeft|MsDown|MsRght|      |------|           |------|      |   4  |   5  |   6  |   +  |   Ç    |
+|--------+------+------+------+------+------|      |           |PSCR  |------+------+------+------+------+--------|
+|CAPSLOCK|      |      |      |      |      |      |           |      |      |   1  |   2  |   3  |   /  |        |
+'--------+------+------+------+------+-------------'           '-------------+------+------+------+------+--------'
+  |CTRL-S|CTRL-Z|CTRL-X|CTRL-C|CTRL-V|                                       |      |    . |   0  |   =  |      |
+  '----------------------------------'                                       '----------------------------------'
+                                       ,-------------.       ,-------------.
+                                       |      |      |       |      | Play |
+                                ,------|------|------|       |------+------+------.
+                                |      |      |      |       | VolUp|      |      |
+                                | Lclk | Rclk |------|       |------| Prev | Next |
+                                |      |      |  L2  |       | VolDn|      |      |
+                                '--------------------'       '--------------------'
+
+
+ +### Keymap 2: QWERTY layer + +

+
+,--------------------------------------------------.           ,--------------------------------------------------.
+|   \    |   1  |   2  |   3  |   4  |   5  |  <>  |           |   ¡  |   6  |   7  |   8  |   9  |   0  |   '    |
+|--------+------+------+------+------+-------------|           |------+------+------+------+------+------+--------|
+|  TRANS |   Q  |   W  |   E  |   R  |   T  |MEH_T |           | TRANS|   Y  |   U  |   I  |   O  |   P  |ALL_T/+ |
+|--------+------+------+------+------+------| DEL  |           |      |------+------+------+------+------+--------|
+|Esc/Ctrl|   A  |   S  |   D  |   F  |   G  |------|           |------|   H  |   J  |   K  |   L  |   Ñ  |'/RCtrl |
+|--------+------+------+------+------+------| LGUI |           | RALT |------+------+------+------+------+--------|
+| {/LSft |   Z  |   X  |   C  |   V  |   B  |      |           |      |   N  |   M  |   ,  |   .  |   -  | }/RSft |
+'--------+------+------+------+------+-------------'           '-------------+------+------+------+------+--------'
+  |[/LALT| HOME |PGDOWN| PGUP | END  |                                       | LEFT | DOWN |  UP  |RIGHT |]/LALT|
+  '----------------------------------'                                       '----------------------------------'
+                                       ,-------------.       ,-------------.
+                                       |F5/CAG| TRANS|       | TRANS|F8/CAG|
+                                ,------|------|------|       |------+--------+------.
+                                |      |      |F4/CA |       |F11/CA|        |      |
+                                | ENTER| TAB  |------|       |------|  BSPC  | SPACE|
+                                |      |      | TRANS|       |F12/SA|        |      |
+                                '--------------------'       '----------------------'
+ CAG = CTRL-ALT-GUI
+  CA = CTRL-ALT
+  SA = SHIFT-ALT
+
+
+ + +## Generation of .hex file +> [Download scripts from here](https://github.com/johgh/keyboard/tree/master/ergodox) + +> Execute install.sh and generate.sh scripts. + +> Flash with `teensy_loader` binary (should be installed from previous step) diff --git a/keyboards/ergodox_ez/keymaps/dvorak_spanish/compiled.hex b/keyboards/ergodox_ez/keymaps/dvorak_spanish/compiled.hex new file mode 100644 index 0000000000..dcac1fe29d --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/dvorak_spanish/compiled.hex @@ -0,0 +1,1149 @@ +:100000000C947B020C94BF020C94BF020C94BF02B0 +:100010000C94BF020C94BF020C94BF020C94BF025C +:100020000C94BF020C94BF020C946D0E0C943F0F05 +:100030000C94BF020C94BF020C94BF020C94BF023C +:100040000C94BF020C94F9210C94BF020C94BF02D3 +:100050000C94BF020C94DB1C0C94BF020C94BF02E6 +:100060000C94BF020C94BF020C94BF020C94BF020C +:100070000C94BF020C94BF020C94BF020C94BF02FC +:100080000C94BF020C94BF020C94BF020C94BF02EC +:100090000C94BF020C94BF020C94BF020C94BF02DC +:1000A0000C94BF020C94BF020C94BF02AC0FCE0F95 +:1000B000BC10CE0FBC1013103610BC108B109E104D +:1000C0006D136D139C139C13D213F2132315231578 +:1000D000FD132315AD14AD141415231523151D158B +:1000E000BA14BA14BA14BA14BA14BA14BA14BA14A0 +:1000F000BA14BA14BA14BA14BA14BA14BA14BA1490 +:10010000CC14D914E014E714F1140000F0A1350068 +:100110003A4129610030023000001E00370004001F +:1001200038004A003C661F003600120014004E00E2 +:100130002B002000330008000D004B002800210098 +:10014000130018000E004D003D6522001C000C003D +:100150001B0000003E6D64004C670000E3000000DF +:100160003F412E00C1000000E60000004041230096 +:100170000900070005000000416D24000A00150079 +:100180001000500044652500060017001A005100B9 +:100190002C0026000B001100190052002A00270035 +:1001A0000F0016001D004F0045662D00306F3461B2 +:1001B000013003300000000001000000043016018F +:1001C00000003A006400000000001D0102533B00E3 +:1001D0006402F20000001B01F5003C00F000F10099 +:1001E00000000601F4003D000000F30000001901CA +:1001F00000003E0000000000000000000000A6001B +:1002000000000000000000000100A5000100000047 +:100210004600000001003F00000000000000000058 +:10022000AE004000240021001E000000A900410093 +:10023000250022001F003700AB00420026002300EB +:1002400020002700AC004300550057005400670011 +:10025000AA0044002F00310000000000000035001B +:10026000010029610030023000001E00140004006B +:100270001D004A0001001F001A0016001B004E005E +:100280002B0020000800070006004B00280021007A +:100290001500090019004D003D65220017000A00F5 +:1002A000050000003E6D64004C670000E3000000A4 +:1002B00001002E0001000000E60000000100230004 +:1002C0001C000B0011000000416D240018000D00FF +:1002D00010005000446525000C000E00360051004F +:1002E0002C00260012000F00370052002A002700C1 +:1002F0001300330038004F0045662D00306F346125 +:1003000001300330000016034500720067006F00E3 +:1003100044006F007800200045005A0000001603DA +:100320004500720067006F0044006F0078002000F5 +:1003300045005A0000000403090409026D0004018D +:1003400000A0FA09040000010301010009211101C4 +:1003500000012240000705810308000A090401008A +:100360000103010200092111010001224D000705CE +:10037000820308000A0904020001030000000921A9 +:10038000110100012236000705830308000A090451 +:1003900003000103000000092111010001223900BE +:1003A000070584031000011201100100000008ED90 +:1003B000FE071301000102000105010906A1010564 +:1003C0000719E029E7150025019508750181020547 +:1003D000081901290595057501910295017503918B +:1003E0000105071900297715002501957875018108 +:1003F00002C005010980A101850216010026B7008F +:100400001A01002AB700751095018100C0050C097A +:1004100001A1018503160100269C021A01002A9CF5 +:1004200002751095018100C005010902A1010901B1 +:10043000A10005091901290515002501950575017A +:10044000810295017503810105010930093115818A +:10045000257F95027508810609381581257F95014C +:1004600075088106050C0A38021581257F950175EE +:10047000088106C0C005010906A101050719E02988 +:10048000E715002501950875018102950175088120 +:100490000105081901290595057501910295017558 +:1004A0000391010507190029FF150026FF00950695 +:1004B00075088100C000000000000000000000007E +:1004C000010204060A0F17202C3A4A5D71879DB37A +:1004D000C7DAE9F5FCFFFCF5E9DAC7B39D87715D82 +:1004E0004A3A2C20170F0A060402010000000000FF +:1004F00000000000000011241FBECFEFDAE0DEBFD5 +:10050000CDBF04B603FE24C08091FF01909100028C +:10051000A0910102B09102028730904BA740B04BEE +:10052000B9F41092FF011092000210920102109291 +:10053000020214BE84B7877F84BF88E10FB6F894A7 +:1005400080936000109260000FBEE0E0FFE3099529 +:1005500011E0A0E0B1E0E0E8F7E402C005900D9200 +:10056000A433B107D9F711E0A4E3B1E001C01D92B3 +:10057000AF3FB107E1F70E94B50B0C94BE230C947A +:1005800000001092B9008AE08093B800089594EAC0 +:100590009093BC009091BC0097FFFCCF9091B90064 +:1005A000987F983021F0903111F081E00895809388 +:1005B000BB0084E88093BC008091BC0087FFFCCF27 +:1005C0008091B900887F883111F0803471F780E024 +:1005D000089584E98093BC008091BC0084FDFCCF29 +:1005E00008958093BB0084E88093BC008091BC0098 +:1005F00087FFFCCF9091B900987F81E0983209F491 +:1006000080E0089584E88093BC008091BC0087FF5F +:10061000FCCF8091BB00089580B38C7080BB81B308 +:10062000836F81BB089580910101811115C080E421 +:100630000E94C7028093010181110CC082E10E94D7 +:10064000F10280930101811105C08FEF0E94F10238 +:10065000809301010E94E90284B1807F84B985B151 +:10066000807F85B98AB1837F8AB98BB1837F8BB94B +:100670003E98469808950E94DD04809301010E94EF +:1006800013030E940C03A5E3B1E0E3E4F1E08EE084 +:100690008E0F11921D928E13FCCF0C94C7040E94F2 +:1006A000DD04809301010E9413030E940C03A5E363 +:1006B000B1E0E3E4F1E08EE08E0F11921D928E1313 +:1006C000FCCF0895BF92CF92DF92EF92FF920F93EB +:1006D0001F93CF93DF9380910101882379F080915C +:1006E00034018F5F80933401811108C00E94DD04C2 +:1006F00080930101811102C00E946F0405E311E0A3 +:10070000C0E0D0E0DD24D39482E0C82EEE24E39450 +:10071000F12CC730D10500F580910101811164C031 +:1007200080E40E94C70280930101811112C082E11E +:100730000E94F1028093010181110BC0C7010C2EB0 +:1007400001C0880F0A94EAF780950E94F102809315 +:1007500001010E94E90248C0CA30A1F028F4C83063 +:1007600059F0C93061F005C0CC3089F070F0CD305F +:1007700089F0209A289810C0219A29980DC0229AB1 +:100780002A980AC0239A2B9807C0529A01C0539AFC +:100790005B9802C03E9A469890EA9A95F1F79FB10D +:1007A000799902C082E001C080E091709D25982B6C +:1007B0007C9902C084E001C080E0892B7D9902C051 +:1007C00038E001C030E0832B7E9902C020E101C0F7 +:1007D00020E0822B9FB19095991F9927991F9295A0 +:1007E000990F907E892B0FC080910101811149C022 +:1007F00080E40E94C70280930101882379F1B12C23 +:100800000E94E9028B2DF8019081981719F08083DE +:10081000C09200010E94130321960F5F1F4FCE303C +:10082000D10509F076CF80910001882361F18150D4 +:1008300080930001882339F08FE99FE00197F1F759 +:1008400000C0000020C0A3E4B1E0E5E3F1E0CF0187 +:10085000825F91919D938E13FCCF15C083E10E941E +:10086000F102809301018111CACF81E40E94C70285 +:10087000809301018111C3CF0E940203B82EB0946E +:10088000BFCF80E0C0CF0E946D0481E0DF91CF91A7 +:100890001F910F91FF90EF90DF90CF90BF90089540 +:1008A000E82FF0E0ED5BFE4F8081089508950F93EF +:1008B0001F93CF93DF93C3E4D1E010E00C2F025FCE +:1008C000899190E00E94021C180F0C13F9CF812F20 +:1008D000DF91CF911F910F9108950C94BC0556980C +:1008E0005E9825982D9826982E9827982F988FEF08 +:1008F00090E0909389008093880090938B00809380 +:100900008A0090938D0080938C00259A2D9A2FEF6A +:1009100080E792E0215080409040E1F700C0000065 +:10092000269A2E9A2FEF80E792E021508040904047 +:10093000E1F700C00000279A2F9A2FEF80E792E09E +:10094000215080409040E1F700C0000025982D988C +:100950002FEF80E792E0215080409040E1F700C007 +:10096000000026982E982FEF80E792E021508040DB +:100970009040E1F700C0000027982F9856985E98A5 +:1009800025982D9826982E9827982F98089589EACB +:100990008093800089E08093810024982C983F9870 +:1009A0008AB18F748AB96E98479A8BB1806B8BB974 +:1009B000769A0E946F040C94BB0580E2809301013B +:1009C0008091510181110EC00E94C10281E080938B +:1009D00051012FEF83ED90E3215080409040E1F7EB +:1009E00000C0000080E40E94C702809301018111D1 +:1009F0002EC00E94F10280930101811128C00E9443 +:100A0000F10280930101811122C08FE30E94F10263 +:100A10008093010181111BC00E94E90280E40E94C1 +:100A2000C70280930101811112C08CE00E94F10283 +:100A30008093010181110BC00E94F102809301019A +:100A4000811105C08FE30E94F102809301010E9491 +:100A5000E902809101010895FC01623009F445C06A +:100A600028F4662351F0613041F182C0633009F40B +:100A70005BC0643009F472C07BC08281882341F07E +:100A80000E94A51C909353018093520185EE6AC089 +:100A900085EE0E94D91280915201909153010E94DB +:100AA000B11C8F35910508F063C086EE0E941112CB +:100AB00084E30E94111284E34DC082818111E0CF52 +:100AC00085EE0E94D91280915201909153010E94AB +:100AD000B11C8F35910508F04BC086EE0E941112B3 +:100AE00081E30E94111281E335C08281882341F0A5 +:100AF0000E94A51C909353018093520182EE32C054 +:100B000082EE0E94D91280915201909153010E946D +:100B1000B11C8F35910560F586EE0E9411128FE2AF +:100B20000E9411128FE216C082818111E1CF82EE04 +:100B30000E94D91280915201909153010E94B11CE0 +:100B40008F359105A8F486EE0E94111280E30E9471 +:100B5000111280E30E94D91286EE08C08281882398 +:100B600021F089E30E94111203C089E30E94D91287 +:100B700080E090E0089508956091C0017091C101F6 +:100B80008091C2019091C3010E940E1C56985E98FC +:100B900025982D9826982E9827982F98813029F0FF +:100BA000823029F4269A2E9A02C0279A2F9A0E9400 +:100BB000F51081FF02C0259A2D9A089581E00895CD +:100BC00081E008950C94E0050895282F882339F0DA +:100BD00090E02A3010F44D9608950697089587E224 +:100BE00090E00895AF92BF92DF92EF92FF920F9341 +:100BF0001F93CF93DF938C01FC01C081D181CE0183 +:100C00000E94871ABE010E946209EC01B8010E948D +:100C1000E205882309F4C9C1F8018281882309F417 +:100C2000BEC08091600181111FC0C431F0E7DF07B1 +:100C300009F0B5C10E94E40581E0809360010E9443 +:100C4000A51C90935F0180935E0110925701109252 +:100C500059011092580110925B0110925A011092A2 +:100C60005D0110925C01A1C180915E0190915F01D4 +:100C70000E94B11C883C910570F480915701E82FC7 +:100C8000F0E0EE0FFF1FE85AFE4FD183C0838F5F65 +:100C9000809357018AC1C13020E8D20708F451C0BF +:100CA000F8018281882309F47EC05E01E894B7F8D8 +:100CB00080915601813079F050F08230C1F482EE9B +:100CC0000E94111287E50E94111287E50EC082EE84 +:100CD0000E9411120CC080EE0E94111281EE0E943F +:100CE000111288E10E94111288E10E94D9128CE051 +:100CF000E82EF12CC5010E2C02C0969587950A941A +:100D0000E2F78F700E94E505D82E0E9411128D2DFA +:100D10000E94D912F4E0EF1AF1082CEFE2162FEF3F +:100D2000F20641F780915601813029F010F08230AF +:100D300041F482EE04C080EE0E94D91281EE0E943E +:100D4000D912C43180E7D80768F4C23090E7D907D8 +:100D500008F046C0C115E0E7DE0771F0C130D047AA +:100D6000A1F10CC1C33320E7D20709F4D8C0C433C2 +:100D7000D04709F4EBC002C1F8018281882309F44D +:100D800002C10E948E15FFEF24E38CE0F150204059 +:100D90008040E1F700C000000E94001D06C1C13084 +:100DA00080E8D80770F2C43120E7D20708F0B3C05A +:100DB000C23080E7D807A0F4C11590E7D90709F43D +:100DC000E2C0C130D04709F0D9C0F8018281882340 +:100DD00009F4D9C08091DD0181608093DD01E5C017 +:100DE000F8018281882309F4CEC00E945A1D811126 +:100DF00002C00E94401D0E946D1D90E09093F10181 +:100E00008093F001C230F0E7DF0721F48091F00118 +:100E100081607AC0C33020E7D20721F48091F001CD +:100E2000826072C0C43080E7D80721F48091F0015D +:100E300084606AC0C53090E7D90719F48091F00149 +:100E400027C0C630E0E7DE0721F48091F001806121 +:100E50005BC0C730F0E7DF0721F48091F0018062CA +:100E600053C0C83020E7D20721F48091F00180649C +:100E70004BC0C93080E7D80721F48091F001806829 +:100E800043C0CA3090E7D90729F48091F00184600B +:100E900088603AC0CB30E0E7DE0721F48091F001B2 +:100EA0008E7F32C0CC30F0E7DF0721F48091F00173 +:100EB0008D7F2AC0CD3020E7D20721F48091F00148 +:100EC0008B7F22C0CE3080E7D80719F48091F001E3 +:100ED0001AC08091F001CF3090E7D90711F48F7ECE +:100EE00013C0C031E0E7DE0711F48F7D0DC0C131C2 +:100EF000F0E7DF0711F48F7B07C0C231D04711F450 +:100F00008F7702C08B7F877F8093F0018091F00103 +:100F10000E94711D4AC0C333F0E7DF07A1F4F80156 +:100F20008281882321F01092540182E016C08091C2 +:100F30005401811106C086E20E94111286E20E94CD +:100F4000D91282E018C0C433D047C1F4F8018281BD +:100F5000882331F01092550180E20E94281325C0A9 +:100F600080915501811106C087E20E94111287E22B +:100F70000E94D91280E20E942F1317C081E0809353 +:100F8000540180935501C801DF91CF911F910F91BA +:100F9000FF90EF90DF90BF90AF900C94DE05C130D2 +:100FA000F0E8DF0708F081CECCCE80E0DF91CF9172 +:100FB0001F910F91FF90EF90DF90BF90AF90089539 +:100FC00026E0729FF001112444E5849FE00DF11D9D +:100FD0001124E60FF11DEE0FFF1FE25FFE4F85911A +:100FE00094910E947409811560E49607B0F581150B +:100FF00070E3970708F0DEC0803E9105D8F4803C8E +:10100000910508F06CC0883A910578F4853A91050D +:1010100008F06BC08130910509F452C108F40FC18A +:101020008430910508F04CC10AC18B3B910508F44E +:1010300067C005C18F3F910509F048F4803F9105D5 +:1010400008F0ADC0883E910508F43AC1F8C081159A +:1010500020E2920708F0A5C00895811543E59407A2 +:1010600090F4811562E5960708F0C8C0811571E516 +:10107000970708F0BEC0811520E5920708F09DC0D3 +:101080009F70906A0895811545E59407D8F48115FD +:1010900064E5960708F0C8C0482F4695469570E26B +:1010A000479FA00111248370992721E030E0B90106 +:1010B00002C0660F771F8A95E2F7CB01842B952B30 +:1010C0009A680895811576E5970708F4B2C09C01E7 +:1010D00030562115304108F0B2C09F70AEC0FC01FF +:1010E000EE0FFF1FE657F04062C0853A910509F404 +:1010F000A9C0863A910509F0A8C082E890E4089555 +:10110000883A910509F4A4C0893A910509F4A3C06D +:101110008A3A910509F4A2C08B3A910509F4A1C05D +:101120008C3A910509F4A0C08D3A910509F49FC04D +:10113000803B910509F49EC08E3A910509F49DC04B +:101140008F3A910509F49CC0813B910509F49BC03D +:10115000823B910509F49AC0833B910509F499C03B +:10116000843B910509F498C0853B910509F497C02B +:10117000863B910509F496C0873B910509F495C01B +:10118000883B910509F494C0893B910509F493C00B +:101190008A3B910509F492C080E094E4089590653B +:1011A0000895FC01FF70EE0FFF1FE65FFE4F859173 +:1011B000949108959927906C0895482F437021E0E9 +:1011C00030E002C0220F331F4A95E2F73C68AC01C1 +:1011D00064E0569547956A95E1F74370342B8F701C +:1011E0008695869560E2869FC0011124822B932B01 +:1011F0000895982F8827816F906A0895482F469503 +:10120000469570E2479FA00111248370992721E041 +:1012100030E0B90102C0660F771F8A95E2F7CB0173 +:10122000842B952B9C680895982F8827846F906A4B +:1012300008958F719927982F88279062089580E0EC +:1012400090E0089581E890E4089583E890E408959B +:1012500082EE94E4089589EE94E408958AEE94E48D +:10126000089585EB94E4089586EB94E4089587EB64 +:1012700094E408958CEC94E408958DEC94E408953E +:1012800083E895E408958AE895E4089582E995E471 +:10129000089584E995E4089581E296E4089583E24F +:1012A00096E4089584E296E4089585E296E408952C +:1012B00086E296E4089587E296E408958AE296E449 +:1012C0000895089596E0799FF001112494E5899F8F +:1012D000E00DF11D1124E60FF11DEE0FFF1FE25F7F +:1012E000FE4F8591949108958238910549F1B0F4AB +:1012F0008133910509F458C048F48932910509F405 +:101300004EC08A32910509F454C008958533910581 +:1013100009F440C08933910599F00895833E910501 +:1013200029F138F4803E910591F0823E9105A1F0BB +:101330000895863E9105F9F0873E910531F10895B3 +:101340002091F00120FD3AC021FD38C00895809120 +:10135000F00180FD35C032C08091F00182FF32C0C3 +:101360008091F00184FD30C083EE39C08091F0019E +:1013700082FD28C0F5CF8091F00183FF27C08091C6 +:10138000F00184FD21C087EE2AC08091F00183FD29 +:101390001DC0F5CF8091F00185FD1AC01BC0809162 +:1013A000F00185FD17C014C08091F00186FD14C0C6 +:1013B00015C08091F00186FD11C00EC080EE0FC0F7 +:1013C00089E30DC082EE0BC080E009C086EE07C045 +:1013D00089E205C085E303C08AE201C081E390E0B1 +:1013E000089508950C94F109809171010895CF93A7 +:1013F000DF9300D01F92CDB7DEB79C018091F6013C +:10140000843019F593E099833B832A839093E90014 +:101410008FEF9091E800815095FD06C095ED9A956B +:10142000F1F700008111F5CF8091E80085FF0DC034 +:1014300040E050E063E070E0CE0101960E945D0C58 +:101440008091E8008E778093E8000F900F900F90C6 +:10145000DF91CF910895CF93DF9300D01F92CDB746 +:10146000DEB72091F601243021F522E029839B8309 +:101470008A8383E08093E9008FEF9091E8008150A8 +:1014800095FD06C095ED9A95F1F700008111F5CF15 +:101490008091E80085FF0DC040E050E063E070E01F +:1014A000CE0101960E945D0C8091E8008E778093BA +:1014B000E8000F900F900F90DF91CF910895209149 +:1014C000F6012430F1F422E02093E9002FEF30916F +:1014D000E800215035FD06C035ED3A95F1F70000E2 +:1014E0002111F5CF2091E80025FF0BC040E050E02E +:1014F00065E070E00E945D0C8091E8008E7780933B +:10150000E8000895CF93DF93EC019091F6019430B9 +:1015100009F046C080910C018823D9F080910D011B +:101520008823B9F09093E9008FEF9091E800815003 +:1015300095FD06C095E19A95F1F700008111F5CF70 +:101540008091E80085FF2CC040E050E060E170E051 +:1015500017C081E08093E9008FEF9091E8008150FF +:1015600095FD06C095ED9A95F1F700008111F5CF34 +:101570008091E80085FF14C040E050E068E070E032 +:10158000CE010E945D0C8091E8008E778093E80088 +:1015900080E1FE01A1E6B1E001900D928A95E1F7AC +:1015A000DF91CF9108958091F501811109C00E94CA +:1015B000F20D0E944F0E8091E20084608093E20061 +:1015C00008951092F501089508950C94E6210E9463 +:1015D000961C0E94EC210E94F5100C94F20942E046 +:1015E00061EC81E00E946C0D42E061EC82E00E94BF +:1015F0006C0D42E061EC83E00E946C0D42E161EC15 +:1016000084E00C946C0D8091F801833009F455C08E +:1016100030F4813071F0823009F48EC008958A3040 +:1016200009F47AC08B3009F460C0893009F09CC09D +:1016300020C08091F701813A09F096C08091E800BE +:10164000877F8093E8008091FB019091FC01892BBA +:1016500021F460E181E691E003C060E080E090E089 +:1016600070E00E94A80C8091E8008B778093E800DE +:1016700008958091F701813209F076C08091FB01D5 +:101680009091FC01009719F0039709F06DC08091CB +:10169000E800877F8093E8008091E80082FD05C024 +:1016A0008091F6018111F8CF5FC08091F1008093A5 +:1016B00071018091E8008B7753C08091F701813AE6 +:1016C00009F052C08091FB019091FC01892B09F037 +:1016D0004BC08091E800877F8093E8008091E8000C +:1016E00080FFFCCF80910C0136C08091F7018132E0 +:1016F000D9F58091FB019091FC01892BA9F580918E +:10170000E800877F8093E8000E94A10D8091F90195 +:1017100080930C010C948E158091F701813221F594 +:101720008091E800877F8093E8000E94A10D80915E +:10173000FA018093720108958091F701813AA1F432 +:101740008091E800877F8093E8008091E80080FF27 +:10175000FCCF809172018093F1008091E8008E7738 +:101760008093E8000C94A10D089584B7877F84BF0F +:1017700088E10FB6F89480936000109260000FBE6D +:1017800080E880936100109261000E9444110E94E1 +:10179000F20D0E944F0E8091E20084608093E2007F +:1017A00078940E94D5100E94461182E091E00E9438 +:1017B000F0100E94D4218091F601853069F40E94D6 +:1017C0005E1C8091F4018823B1F30E94881C882359 +:1017D00091F30E94470CEFCF0E944C11ECCF292FC0 +:1017E000332723303105C9F064F42130310581F00D +:1017F0002230310509F043C08DE690E02AE333E062 +:1018000042C021323105F1F02232310541F137C0B9 +:1018100082E190E027EA33E036C0992781309105D4 +:1018200041F08230910541F0892B49F5E6E3F3E080 +:1018300005C0EEE1F3E002C0E6E0F3E0849190E061 +:101840009F0121C06430D8F4E62FF0E0EE0FFF1FB7 +:10185000EE5DFE4F2081318189E090E014C064305C +:1018600070F470E0FB01EE0FFF1FE65EFE4F20817B +:101870003181FB01EA5EFE4F808190E004C080E090 +:1018800090E020E030E0FA0131832083089580E188 +:1018900089BD82E189BD09B400FEFDCF8091D800E9 +:1018A0008F7D8093D8008091E00082608093E0007B +:1018B0008091E00081FDFCCF0895CF92DF92EF92FE +:1018C000FF920F931F93CF93DF93EC018B016A017B +:1018D0000E94C00D811133C0C114D10439F0F6014A +:1018E00080819181081B190BC80FD91FE12CF12CA5 +:1018F0000115110519F18091E80085FD16C0809150 +:10190000E8008E778093E800C114D10449F0F60115 +:1019100080819181E80EF91EF182E08285E00FC09E +:101920000E94C00D882321F30AC089918093F100A1 +:1019300001501109FFEFEF1AFF0ADACF80E0DF91C3 +:10194000CF911F910F91FF90EF90DF90CF9008956E +:101950002091FD013091FE012617370748F06115EF +:10196000710539F42091E8002E772093E80001C03A +:10197000B90140E061157105A9F12091F60122231A +:1019800009F443C0253009F442C02091E80023FD4A +:1019900040C02091E80022FD32C02091E80020FFE5 +:1019A000E9CF4091F3002091F20030E0342BFC01AC +:1019B000CF016115710559F02830310540F481914E +:1019C0008093F100615071092F5F3F4FF1CF41E0EB +:1019D0002830310509F040E02091E8002E7720936F +:1019E000E800C8CF4111C9CF0AC08091F601882311 +:1019F00061F0853061F08091E80083FD0AC080913C +:101A0000E80082FFF2CF80E0089582E0089583E04D +:101A1000089581E008952091FD013091FE0126177F +:101A2000370748F06115710539F42091E8002E77E9 +:101A30002093E80001C0B901FC0120E061157105A7 +:101A400091F18091F601882309F440C0853009F4B2 +:101A50003FC08091E80083FD3DC08091E80082FD99 +:101A60002FC08091E80080FFE9CF2091F3008091A2 +:101A7000F20090E0922B6115710559F088309105C4 +:101A800040F424912093F100319661507109019640 +:101A9000F2CF21E0089709F020E08091E8008E77EE +:101AA0008093E800CBCF2111CCCF0AC08091F60102 +:101AB000882361F0853061F08091E80083FD0AC0E1 +:101AC0008091E80082FFF2CF80E0089582E00895DF +:101AD00083E0089581E00895982F973058F590930A +:101AE000E900981739F07091EC002091ED005091C9 +:101AF000F00003C0242F762F50E021FF19C0309151 +:101B0000EB003E7F3093EB003091ED003D7F309352 +:101B1000ED003091EB0031603093EB007093EC00FE +:101B20002093ED005093F0002091EE0027FF07C0B6 +:101B30009F5FD3CF8F708093E90081E0089580E0AC +:101B400008958091F70187FF11C08091E80082FD20 +:101B500005C08091F6018111F8CF11C08091E80095 +:101B60008B770BC08091F601882349F08091E800C3 +:101B700080FFF8CF8091E8008E778093E800089589 +:101B80002091E4003091E50095E64091EC00842F2F +:101B9000817040FF22C08091E80080FD1CC08091D0 +:101BA000F601882391F0853091F08091EB0085FD5E +:101BB00010C04091E4005091E5004217530729F30B +:101BC0009A01915011F784E0089582E0089583E02E +:101BD000089581E0089580E008954091E80042FF73 +:101BE000DECF08950E94600E0E94680EE0EEF0E0E5 +:101BF000808181608083E8EDF0E080818F77808351 +:101C000019BCA7EDB0E08C918E7F8C9380818F7E84 +:101C100080831092F50108950F931F93CF93DF9364 +:101C20000E94600E0E94680EC8EDD0E088818F7718 +:101C3000888388818068888388818F7D888319BCA8 +:101C40001092F6011092F2011092F4011092F30139 +:101C500000EE10E0F80180818B7F808388818160B5 +:101C6000888342E060E080E00E946C0DE1EEF0E0ED +:101C700080818E7F8083E2EEF0E0808181608083CE +:101C8000808188608083F80180818E7F8083888155 +:101C900080618883DF91CF911F910F910895E8EDC6 +:101CA000F0E080818F7E8083E7EDF0E080818160CD +:101CB000808384E082BF81E08093F5010C940C0E58 +:101CC000E8EDF0E080818E7F80831092E20008953D +:101CD0001092DA001092E10008951F920F920FB651 +:101CE0000F9211242F933F934F935F936F937F93A2 +:101CF0008F939F93AF93BF93EF93FF938091E100F6 +:101D000082FF0BC08091E20082FF07C08091E1005A +:101D10008B7F8093E1000E94D4108091DA0080FFD5 +:101D20001FC08091D80080FF1BC08091DA008E7F99 +:101D30008093DA008091D90080FF0DC080E189BDD9 +:101D400082E189BD09B400FEFDCF81E08093F601F8 +:101D50000E94D30A05C019BC1092F6010E94E10A44 +:101D60008091E10080FF19C08091E20080FF15C0E2 +:101D70008091E2008E7F8093E2008091E20080619A +:101D80008093E2008091D80080628093D80019BCD3 +:101D900085E08093F6010E94E50A8091E10084FFCE +:101DA00030C08091E20084FF2CC080E189BD82E1D7 +:101DB00089BD09B400FEFDCF8091D8008F7D80934E +:101DC000D8008091E1008F7E8093E1008091E20055 +:101DD0008F7E8093E2008091E20081608093E20038 +:101DE0008091F201882311F084E007C08091E30024 +:101DF00087FD02C081E001C083E08093F6010E946C +:101E0000E70A8091E10083FF29C08091E20083FF0F +:101E100025C08091E100877F8093E10082E080937C +:101E2000F6011092F2018091E1008E7F8093E10033 +:101E30008091E2008E7F8093E2008091E2008061D9 +:101E40008093E20042E060E080E00E946C0D8091AF +:101E5000F00088608093F0000E94E40AFF91EF9107 +:101E6000BF91AF919F918F917F916F915F914F91B2 +:101E70003F912F910F900FBE0F901F9018951F92BA +:101E80000F920FB60F9211242F933F934F935F93AE +:101E90006F937F938F939F93AF93BF93CF93DF9372 +:101EA000EF93FF93C091E900CF708091EC00D82FA1 +:101EB000D17080FDD0E81092E9008091F000877F1A +:101EC0008093F00078940E94830F1092E900809133 +:101ED000F00088608093F000CD2BCF70C093E900B4 +:101EE000FF91EF91DF91CF91BF91AF919F918F9132 +:101EF0007F916F915F914F913F912F910F900FBE06 +:101F00000F901F9018951F93CF93DF93CDB7DEB737 +:101F1000AA970FB6F894DEBF0FBECDBFE7EFF1E092 +:101F200088E08E0F9091F10091938E13FBCF0E9469 +:101F3000030B8091E80083FF1FC18091F70190910E +:101F4000F801492F50E04A30510508F015C1FA0157 +:101F5000EA5AFF4F0C946E23803881F0823809F0E2 +:101F60000BC18091FB018F708093E9008091EB00A1 +:101F700085FB882780F91092E90006C08091F30163 +:101F80009091F401911182609091E800977F909375 +:101F9000E8008093F1001092F100C8C0282F2D7F37 +:101FA00009F0EAC0882319F0823061F0E5C0809121 +:101FB000F901813009F0E0C0933009F080E08093AE +:101FC000F4012BC08091F901811127C08091FB01A0 +:101FD0008F7009F4D1C08093E9002091EB0020FFBD +:101FE0001CC0933021F48091EB00806214C090916A +:101FF000EB0090619093EB0021E030E0A90102C07A +:10200000440F551F8A95E2F74093EA001092EA00C8 +:102010008091EB0088608093EB001092E900809142 +:10202000E800877F86C08111A7C01091F9011F7752 +:102030008091E3008078812B8093E3008091E80019 +:10204000877F8093E8000E94A10D8091E80080FFC7 +:10205000FCCF8091E30080688093E300111102C0FF +:1020600082E001C083E08093F60186C08058823010 +:1020700008F082C08091F9019091FA018C3D53E003 +:10208000950779F583E08A838AE289834FB7F894CC +:10209000DE01139620E03EE051E2E32FF0E05093A2 +:1020A0005700E49120FF03C0E295EF703F5FEF70AF +:1020B0008E2F90E0EA3010F0C79601C0C0968D9345 +:1020C0009D932F5F243149F74FBF8091E800877FB0 +:1020D0008093E8006AE270E0CE0101960E94A80CAD +:1020E00014C0AE014F5F5F4F6091FB010E94EF0B88 +:1020F000BC01009709F440C09091E800977F90934D +:10210000E80089819A810E940B0D8091E8008B770D +:102110008093E80031C0803879F58091E800877FAE +:102120008093E8008091F2018093F1008091E800B3 +:102130008E778093E8000E94A10D1EC081111CC003 +:102140009091F9019230C0F48091E800877F8093EC +:10215000E8009093F2010E94A10D8091F20181119B +:1021600006C08091E30087FD02C081E001C084E0E9 +:102170008093F6010E94EF0A8091E80083FF0AC075 +:102180008091E800877F8093E8008091EB00806277 +:102190008093EB00AA960FB6F894DEBF0FBECDBFBA +:1021A000DF91CF911F9108950895CF938091F6010B +:1021B0008823A1F0C091E900CF709091EC00892FA5 +:1021C000817090FD80E8C82B1092E9008091E800B2 +:1021D00083FD0E94830FCF70C093E900CF910895D3 +:1021E00090937801809377010895E0917701F091C1 +:1021F0007801309721F00190F081E02D099480E082 +:102200000895E0917701F0917801309721F00280F4 +:10221000F381E02D09940895E0917701F091780120 +:10222000309721F00480F581E02D099408952091E4 +:102230007501309176018217930771F090937601C2 +:1022400080937501E0917701F0917801309721F04A +:102250000680F781E02D0994089520917301309153 +:1022600074018217930771F0909374018093730146 +:10227000E0917701F0917801309721F00084F185A9 +:10228000E02D0994089508950C9443110E949C1C1C +:102290000E943B030C94221D9F92AF92BF92CF925B +:1022A000DF92EF92FF920F931F93CF93DF9300D0B3 +:1022B00000D000D0CDB7DEB70E9462030DE010E081 +:1022C000AA24A394B12C902E802F0E945004980130 +:1022D00026583E4F6901F901F080F826A1F401501B +:1022E000110988F78FEF89838A831B820E94A51CBE +:1022F0008160782F9D838C8349815A816B818D8188 +:102300000E94E3112FC09091DD0191FF04C08E83E4 +:102310000E9456048E8125E030E0A501022E01C006 +:10232000440F0A94EAF7E42E4F21C1F029839A82E0 +:102330008E2191E009F490E09B830E94A51C8160AE +:10234000782F9D838C8349815A816B818D810E9476 +:10235000E311F6018081E826E08204C021503109B2 +:10236000E0F6BDCF0E94F01E109179010E94F51099 +:102370001817B9F00E94F5108093790126960FB6D0 +:10238000F894DEBF0FBECDBFDF91CF911F910F91AB +:10239000FF90EF90DF90CF90BF90AF909F900C9404 +:1023A000F20926960FB6F894DEBF0FBECDBFDF91BF +:1023B000CF911F910F91FF90EF90DF90CF90BF9042 +:1023C000AF909F900895CF93DF93CDB7DEB72B9753 +:1023D0000FB6F894DEBF0FBECDBF4F835887698715 +:1023E0007A878B87DE01119686E0FD0111928A952E +:1023F000E9F785E0FE01379601900D928A95E1F7A5 +:1024000049815A816B817C818D819E810E942C182B +:102410002B960FB6F894DEBF0FBECDBFDF91CF91E4 +:102420000895CF93882309F4C2C0C82F823859F485 +:102430000E94F51081FDBBC089E30E94061B0E942B +:10244000D31B89E30CC0833879F40E94F51080FD1A +:10245000AEC083E50E94061B0E94D31B83E50E9449 +:10246000481BCF910C94D31B843859F40E94F5106B +:1024700082FD9DC087E40E94061B0E94D31B87E457 +:10248000EECF8CEF8C0F813A48F48C2F0E943A21CA +:1024900081118DC08C2F0E94061BE3CF80E28C0F30 +:1024A000883048F4C77081E001C0880FCA95EAF708 +:1024B0000E948C1BD6CF8BE58C0F833078F4C53A05 +:1024C00029F0C63A31F083E890E005C081E890E059 +:1024D00002C082E890E0CF910C94171188E58C0F30 +:1024E000833108F064C0C83A39F1C93A41F1CA3AB7 +:1024F00049F1CB3A51F1CC3A59F1CD3A61F1C03BB7 +:1025000069F1CE3A71F1CF3A79F1C13B81F1C23B29 +:1025100089F1C33B91F1C43B99F1C53BA1F1C63BA5 +:10252000A9F1C73BB1F1C83BB9F1C93BC1F1CA3B05 +:10253000C9F180E090E038C082EE90E035C089EECD +:1025400090E032C08AEE90E02FC085EB90E02CC086 +:1025500086EB90E029C087EB90E026C08CEC90E001 +:1025600023C08DEC90E020C083E891E01DC08AE894 +:1025700091E01AC082E991E017C084E991E014C0AB +:1025800081E292E011C083E292E00EC084E292E028 +:102590000BC085E292E008C086E292E005C087E2C7 +:1025A00092E002C08AE292E0CF910C942D11CF917B +:1025B0000895882309F44BC0823859F40E94F5101D +:1025C00081FF45C089E30E94061B0E94D31B89E35B +:1025D0000CC0833871F40E94F51080FF38C083E589 +:1025E0000E94061B0E94D31B83E50E94481B0C948B +:1025F000D31B843859F40E94F51082FF28C087E469 +:102600000E94061B0E94D31B87E4EFCF9CEF980F1C +:10261000913A58F390E2980F983050F4877091E017 +:1026200001C0990F8A95EAF7892F0E94921BDFCF8C +:102630009BE5980F933020F480E090E00C94171104 +:10264000885A833120F480E090E00C942D11089595 +:10265000882321F00E948C1B0C94D31B089588239F +:1026600021F00E94921B0C94D31B08957F928F92AD +:102670009F92AF92BF92CF92DF92EF92FF920F9311 +:102680001F93CF93DF931F92CDB7DEB77C01C62E89 +:10269000772EFC01058102950F70128111110E94A5 +:1026A000A91B0E94FF1A882379F0112369F080E2A8 +:1026B0008C0D883048F082E00E94E81A0E94FF1AD0 +:1026C00091E0D82ED92601C0D12CE72DE295EF70EC +:1026D000F0E0E05AFF4F0C946E23872D807F072D8A +:1026E0000F70882311F00295007F112389F00023D9 +:1026F00009F490C180E28C0D883020F4802F0E9474 +:102700008C1B03C0802F0E949C1B0E94D31B82C184 +:102710008C2D0E94D912002309F495C180E28C0D02 +:10272000883020F4802F0E94921B03C0802F0E94CB +:10273000A21B0E94D31B87C1972D907F872D8F707E +:10274000903211F08295807FCC2021F0F1E0CF16FD +:10275000B1F01EC0112349F0002309F414C1013067 +:1027600009F011C10E94BC1B6EC1002319F0013099 +:1027700009F469C189830E94BF1B89810AC11123A1 +:1027800021F0023008F05FC1FEC001115CC101C13F +:10279000112321F0002309F4F6C03CC1002309F401 +:1027A000F8C03EC1872D86958695837090E000978E +:1027B00019F0019761F047C1112321F08C2D972D5D +:1027C000937002C080E090E00E9417113CC1112379 +:1027D00021F08C2D972D937002C080E090E00E9434 +:1027E0002D1131C18C2D112319F00E94F81D02C04A +:1027F0000E94601E0E94E51E26C1872D837009F08D +:1028000052C0111120C18C2D829586958770880F3A +:10281000880F9C2D9F70892E912CA12CB12C082EF5 +:1028200004C0880C991CAA1CBB1C0A94D2F7C4FED5 +:1028300014C00FE010E020E030E0B901A80104C0AE +:10284000440F551F661F771F8A95D2F7CB01BA0137 +:10285000609570958095909503C060E070E0CB0125 +:10286000272D26952695237030E02230310569F01A +:102870002330310589F0682979298A299B2921305B +:10288000310571F00E947419DEC0682979298A29FE +:102890009B290E949019D7C00E947419C501B401E8 +:1028A0000E945819D0C0112319F0872D817001C0E2 +:1028B0008695882309F4C7C08C2D829586958770EC +:1028C000880F880F9C2D9F70892E912CA12CB12CE4 +:1028D000082E04C0880C991CAA1CBB1C0A94D2F7B1 +:1028E000C4FE14C00FE010E020E030E0B901A80100 +:1028F00004C0440F551F661F771F8A95D2F7CB017E +:10290000BA01609570958095909503C060E070E085 +:10291000CB01272D269526952370422F50E042307B +:10292000510569F04330510589F0682979298A29D0 +:102930009B294130510571F00E944E1A84C06829CC +:1029400079298A299B290E946A1A7DC00E944E1A01 +:10295000C501B4010E94321A76C08C2D90E0FC01B2 +:10296000E05EF109E531F10508F050C0E059FF4F94 +:102970000C946E230C2D0F70872D8F71112331F065 +:102980000E94CB19802F0E9428135DC00E94EC1971 +:10299000802F0E942F1357C0112339F0011153C00B +:1029A000872D8F710E94111A4EC0023008F04BC063 +:1029B000F7CF112339F0872D8F710E94CB1943C0B7 +:1029C0001123C9F3872D8F710E94EC193CC011238C +:1029D00029F0872D8F710E94B61935C00E94AC195D +:1029E00032C0112351F0172D1F71812F0E94CB1976 +:1029F00063E0812F0E94DF1A26C081E00E94E81A5E +:102A0000023008F182E00E94E81A1DC0112331F063 +:102A1000002389F28C2D0E94111215C0002391F21F +:102A20008C2D0E94D9120FC0472D4F706C2DC701FD +:102A30000E942C050E94D01806C0472D4F706C2DA7 +:102A4000C7010E946109DD20F9F00E94DB1A80FDB8 +:102A50001BC0F70112820E94D51A0E94CB19C70130 +:102A60000E9453150E94D51A0F90DF91CF911F91AC +:102A70000F91FF90EF90DF90CF90BF90AF909F901D +:102A80008F907F900C94EC190F90DF91CF911F9154 +:102A90000F91FF90EF90DF90CF90BF90AF909F90FD +:102AA0008F907F9008950F931F93CF93DF93EC0146 +:102AB000888199812B813C81232BB9F09F3F11F4B0 +:102AC0008F3F99F0CE010E94F205882371F0688152 +:102AD00079818A810E94D11A8C010E94861A0E94F3 +:102AE0004D19B801CE010E943613DF91CF911F918D +:102AF0000F9108950E94A91B0E94B91B0E947E1B82 +:102B00000E94D31B0E94961F0E94E51E80E090E069 +:102B10000E94171180E090E00C942D110E94991BE7 +:102B20000C947A150E94C61A292F22952F7030E036 +:102B30002C3031054CF42A3031056CF42250310927 +:102B400022303105A8F407C02C30310569F02F3050 +:102B5000310551F00DC0803F69F018F4803E40F41B +:102B600009C0843F29F406C093FB882780F90895A3 +:102B700080E0089581E00895CF93DF9300D000D0E6 +:102B80001F92CDB7DEB70F900F900F900F900F9060 +:102B9000DF91CF910895CF93DF9300D000D000D084 +:102BA000CDB7DEB726960FB6F894DEBF0FBECDBF09 +:102BB000DF91CF9108951F93CF93DF93C091880148 +:102BC00016E080918901C81799F0D0E01C9FF001B0 +:102BD0001D9FF00D1124E657FE4F40815181628107 +:102BE0007381848195810E94CB152196C770E9CFAE +:102BF000DF91CF911F9108954091BA015091BB018F +:102C00006091BC017091BD018091BE019091BF01A6 +:102C10000C94CB158091BF0182958F7009F054C040 +:102C20008091BC01882309F44FC080918801A09154 +:102C300089016091BA017091BB014091BD01509131 +:102C4000BE01B6E08A1709F43FC090E04115510576 +:102C5000C1F17F3F11F46F3FA1F1B89FF001B99F1F +:102C6000F00D1124E657FE4F218172132AC02081F6 +:102C7000621327C02281211124C0238134812417AB +:102C8000350710F421503109241B350B283C310540 +:102C9000C0F42091BF012F7020612093BF0126E076 +:102CA000289FF001299FF00D1124E157FE4F8081EC +:102CB0008F70806180838AEB91E00E9453150C94A1 +:102CC000DB1501968770BECF0895CF92DF92EF9209 +:102CD000FF920F931F93CF93DF93CDB7DEB7629729 +:102CE0000FB6F894DEBF0FBECDBF8C0185E0F801B2 +:102CF000DE011D9601900D928A95E1F7D8014C9165 +:102D000011965C91119712966C9112971396CD9033 +:102D1000DC9014973091BA017091BB018091BD0194 +:102D20009091BE01009709F46BC17F3F19F43F3FBA +:102D300009F466C1E090BC01EE2009F4C0C0209106 +:102D4000BF01C816D90628F0F601E81BF90BCF0120 +:102D500004C0809590958C0D9D1DFF24F394883CB4 +:102D6000910578F0F12C207F09F0C6C07C2DD98A1E +:102D7000C88A89890E94BC158AEB91E00E9453158C +:102D8000B1C0822F807F09F046C0751314C0341380 +:102D900012C0611110C02F7020612093BF010E94EA +:102DA000FC158AEB91E00E9453158091BF01D80178 +:102DB00015968C932EC0CD2819F15F3F11F44F3F2B +:102DC000F9F0F62E61111CC08091880120918901D3 +:102DD00036E0821709F45AC090E0389FF001399F1D +:102DE000F00D1124E657FE4F7181571306C0708114 +:102DF000471303C07281711103C001968770E9CF38 +:102E0000F62E662309F418C18091BF01816080937A +:102E1000BF01F12C11C1751308C0341306C0611134 +:102E200004C08091BF01D801C3C04D875E878D85E6 +:102E30009E856A8B0E9492156A898823E1F1662338 +:102E4000D1F12091BF01822F82958F7090E002977F +:102E500074F08091BA019091BB0198878F83198695 +:102E6000DB86CA862C87CE0107960E94531586E022 +:102E7000F801AAEBB1E001900D928A95E1F70E946A +:102E80000A160E94FC15FF24F394D6C04D875E8776 +:102E90008D859E850E94C61A292F22952F7030E0BD +:102EA000223031050CF0BCC09F7009F0B6C0805EC6 +:102EB000883008F4C1C0C8010E945315E4CFC81679 +:102EC000D90608F453C0F601E81BF90BCF01883C82 +:102ED000910508F450C0F12C7C2DD98AC88A8989C3 +:102EE0000E94BC15EAEBF1E086E0DF011D928A95B5 +:102EF000E9F70E94FC15A0C0751314C0341312C06A +:102F0000611110C08091BF01F8018583C8010E9442 +:102F1000531586E0EAEBF1E0DF011D928A95E9F7AF +:102F2000FE2C8AC04D875E878D859E856A8B0E94A8 +:102F300092156A89882309F4BECF662309F4BBCFB2 +:102F40002091BF01822F82958F7090E002970CF440 +:102F50008ECF8091BA019091BB019A8389831B82A5 +:102F6000DD82CC822E83CE0101967FCF8095909515 +:102F70008C0D9D1DACCFF62E662309F49CCF7513E6 +:102F80002EC034132CC02091BF0120FD1FC0822F02 +:102F900082958F70D9F0D80115962C9315978F30A4 +:102FA00049F08F5F982F9295907F822F8F70892B99 +:102FB00015968C93C8010E94531586E0F801AAEB80 +:102FC000B1E001900D928A95E1F793CF86E0F80188 +:102FD000AAEBB1E001900D928A95E1F72DC04D87E3 +:102FE0005E878D859E850E949215811140CF8091CC +:102FF000BF0181608093BF01C8010E9453151CC0AE +:10300000662309F458CF4D875E878D859E850E9483 +:103010009215882309F44FCF2ACF811148CF0CC0D5 +:10302000243031050CF047CF9F7009F440CFF801F0 +:103030009581907F09F03BCF8F2D62960FB6F89463 +:10304000DEBF0FBECDBFDF91CF911F910F91FF90DB +:10305000EF90DF90CF9008951F93CF93DF93CDB77C +:10306000DEB72C970FB6F894DEBF0FBECDBF4F83EF +:10307000588769877A878B879C87CE0107960E943D +:103080006516882369F08F8198852A853B85232BD7 +:10309000F1F19F3F09F063C08F3F09F060C037C076 +:1030A00086E0FE013796DE01119601900D928A9519 +:1030B000E1F76F817885EA85FB85309741F17F3FA5 +:1030C00011F46F3F21F12091890130E0C90101968F +:1030D000877099274091880150E08417950709F47B +:1030E00047C069837A83FD83EC8396E0929FD00189 +:1030F000939FB00D1124A657BE4FFE01319601904B +:103100000D929A95E1F7809389010E94DB1516E0F4 +:1031100080918801909189018917C1F1189FC001A0 +:10312000112486579E4F0E946516882379F1E091FD +:1031300088011E9FF0011124E657FE4F4081518106 +:1031400062817381848195810E94CB158091880171 +:1031500090E001968770992780938801D9CF4F819D +:10316000588569857A858B859C850E94CB15CFCF44 +:103170000E948E151092890110928801EAEBF1E00D +:1031800086E0DF011D928A95E9F7C1CF2C960FB634 +:10319000F894DEBF0FBECDBFDF91CF911F91089590 +:1031A000EF92FF920F931F93CF93DF938C010097C1 +:1031B00009F46CC0F12CEE24E394E8012196F801A7 +:1031C0008491843740F4843008F051C0813081F01C +:1031D000823019F15BC0853709F444C0A8F19CE73F +:1031E000980F903708F052C08F770E94D91241C0D3 +:1031F0000E5F1F4FFE01C49180E28C0F883048F4AF +:10320000C7708E2D01C0880FCA95EAF70E94AC1BCB +:1032100014C08C2F0E9411122DC00E5F1F4FFE0193 +:10322000C49180E28C0F883058F4C7708E2D01C095 +:10323000880FCA95EAF70E94B21B0E94D31B1AC0DE +:103240008C2F0E94D91216C00E5F1F4FFE01C49131 +:10325000CC2381F08FE99FE00197F1F700C00000D7 +:10326000C150F6CF0E5F1F4FFE01F49003C00E94C5 +:1032700011128E018F2D882309F49FCFEFE9FFE013 +:103280003197F1F700C000008150F5CFDF91CF9169 +:103290001F910F91FF90EF90089508956093C401DE +:1032A0007093C5018093C6019093C7010C947A1561 +:1032B0000F931F930091C4011091C5012091C60185 +:1032C0003091C701DC01CB01802B912BA22BB32BBA +:1032D0008093C4019093C501A093C601B093C70128 +:1032E0001F910F910C947A150F931F930091C401B5 +:1032F0001091C5012091C6013091C701DC01CB01BD +:1033000080239123A223B3238093C4019093C5010A +:10331000A093C601B093C7011F910F910C947A1529 +:103320000F931F930091C4011091C5012091C60114 +:103330003091C701DC01CB0180279127A227B32759 +:103340008093C4019093C501A093C601B093C701B7 +:103350001F910F910C947A151092C0011092C10127 +:103360001092C2011092C3010C947A1541E050E012 +:1033700060E070E004C0440F551F661F771F8A95F8 +:10338000D2F74093C0015093C1016093C201709382 +:10339000C3010C947A1541E050E060E070E004C095 +:1033A000440F551F661F771F8A95D2F78091C00181 +:1033B0009091C101A091C201B091C301482B592B3A +:1033C0006A2B7B2B4093C0015093C1016093C201D3 +:1033D0007093C3010C947A1541E050E060E070E016 +:1033E00004C0440F551F661F771F8A95D2F740957A +:1033F0005095609570958091C0019091C101A09108 +:10340000C201B091C301482359236A237B2340930F +:10341000C0015093C1016093C2017093C3010C9429 +:103420007A1541E050E060E070E004C0440F551FA1 +:10343000661F771F8A95D2F78091C0019091C101D4 +:10344000A091C201B091C301482759276A277B2761 +:103450004093C0015093C1016093C2017093C301B6 +:103460000C947A150F931F930091C0011091C10124 +:103470002091C2013091C301DC01CB01802B912B43 +:10348000A22BB32B8093C0019093C101A093C201E2 +:10349000B093C3011F910F910C947A150F931F9352 +:1034A0000091C0011091C1012091C2013091C3016E +:1034B000DC01CB0180239123A223B3238093C0019D +:1034C0009093C101A093C201B093C3011F910F91CA +:1034D0000C947A150F931F930091C0011091C101B4 +:1034E0002091C2013091C301DC01CB0180279127DB +:1034F000A227B3278093C0019093C101A093C2017A +:10350000B093C3011F910F910C947A150895CF9237 +:10351000DF92EF92FF920F931F93CF93DF938C0173 +:10352000C090C401D090C501E090C601F090C701E1 +:103530008091C0019091C101A091C201B091C301DD +:10354000C82AD92AEA2AFB2ACFE1D0E0D701C6014E +:103550000C2E04C0B695A795979587950A94D2F737 +:1035600080FF06C0B8018C2F0E94E007019721F46C +:10357000219760F780E001C08C2FDF91CF911F91E0 +:103580000F91FF90EF90DF90CF900895CF93DF934E +:10359000EC010E94871ABE010E94E007DF91CF91E3 +:1035A0000895CB010E94C61A08958091C80185959F +:1035B0008595859508958091C8018770089598E054 +:1035C000899F90011124262B2093C8010C94CB19BC +:1035D0002091C801809582238093C801982F97700D +:1035E00069F430E0482F552747FD509524173507DB +:1035F00029F08595859585950C94EC190895909101 +:10360000C801977081E009F480E0089590910C0161 +:10361000992321F090910D01911109C020910E0183 +:1036200030910F01F90132969FEF40E01FC0982FB3 +:103630009695969596959F3050F5E0910E01F091F4 +:103640000F01E90FF11D877021E030E0A90102C0F0 +:10365000440F551F8A95E2F7CA019181892B818316 +:1036600008959F3F39F04F5F4E3041F0519158130C +:10367000F8CF0DC05111F7CF942FF5CF9F3F39F000 +:10368000F901E90FF11D97FDFA95828308950895D8 +:1036900090910C01992321F090910D01911109C095 +:1036A00020910E0130910F01F9013296205F3F4FBA +:1036B0001FC0982F9695969596959F30F0F4E091BF +:1036C0000E01F0910F01E90FF11D877021E030E04C +:1036D000A90102C0440F551F8A95E2F7CA018095DF +:1036E00091818923818308953196E217F30729F0A8 +:1036F00090819813F9CF1082F7CF089581E090E080 +:10370000E0910E01F0910F01E80FF91F1082019670 +:1037100080319105A9F708959091DC01892B809360 +:10372000DC01089580959091DC0189238093DC0170 +:1037300008951092DC0108959091DB01892B80930C +:10374000DB01089580959091DB0189238093DB0153 +:1037500008951092DB0108959091DA01892B8093EE +:10376000DA01089580959091DA0189238093DA0136 +:1037700008951092DA0108958093C9010895109276 +:10378000C901089580910E0190910F01FC013196BD +:103790009C01205F3F4F80E0919191118F5FE21774 +:1037A000F307D1F70895E0910E01F0910F01809198 +:1037B000DC018083E0910E01F0910F0190818091F6 +:1037C000DB01892B8083E0910E01F0910F01908144 +:1037D0008091DA01892B80838091C901882361F06F +:1037E000E0910E01F0910F019081892B80830E945E +:1037F000C21B81111092C90180910E0190910F019D +:103800000C94011120E0009739F0AC0141505109AE +:10381000842395232F5FF7CF822F0895CF92DF92D5 +:10382000EF92FF926C01EE24FF24C114D104E10455 +:10383000F10421F0C701B60120E101C020E0C72E4C +:10384000D82EE92EFF24C114D104E104F10419F0AB +:10385000285FC701B6016B017C0154E0F694E79440 +:10386000D794C7945A95D1F7C114D104E104F10457 +:1038700019F02C5FC701B6016B017C0142E0F694A0 +:10388000E794D794C7944A95D1F7C114D104E104C1 +:10389000F10419F02E5FC701B601DC01CB01B6952A +:1038A000A79597958795892B8A2B8B2B09F02F5FEE +:1038B000822FFF90EF90DF90CF9008958091F601D6 +:1038C000843021F11092DE0120E488E190E00FB60F +:1038D000F894A895809360000FBE2093600080E06C +:1038E0000E94F20983B7817F846083BF83B78160C0 +:1038F00083BF7894889583B78E7F83BF88E10FB6A6 +:10390000F89480936000109260000FBE08950895AF +:103910000E944F030E9462030E94871C0E9457046A +:1039200091E0811101C090E0892F08950E948E15C9 +:103930000E94F5100C94F20982E084BD93E095BDDD +:103940009AEF97BD80936E0008952FB7F8948091F9 +:10395000DF019091E001A091E101B091E2012FBF60 +:103960000895CF92DF92EF92FF920F931F932FB79C +:10397000F8944091DF015091E0016091E101709174 +:10398000E2012FBF6A017B01EE24FF248C0120E0BD +:1039900030E0C016D106E206F30610F4415051099A +:1039A0009A01281B390BC9011F910F91FF90EF90CD +:1039B000DF90CF9008951F920F920FB60F921124AF +:1039C0008F939F93AF93BF938091DF019091E0011C +:1039D000A091E101B091E2010196A11DB11D80937A +:1039E000DF019093E001A093E101B093E201BF9168 +:1039F000AF919F918F910F900FBE0F901F901895D0 +:103A00000E94F20DF8942FEF87EA91E62150804052 +:103A10009040E1F700C0000087E090EBDC0180936C +:103A2000FF0190930002A0930102B09302029CE078 +:103A300088E10FB6F894A895809360000FBE90932C +:103A40006000FFCF0E945A1D811102C00E94401DDC +:103A50000E94651D8093DD010E946D1D90E0909392 +:103A6000F1018093F00187FB882780F980930D0195 +:103A70000E94691D682F70E080E090E00C944E1960 +:103A80006DEE7EEF80E090E00E94A82360E082E08F +:103A900090E00E94962360E083E090E00E949623ED +:103AA00060E084E090E00E94962360E085E090E092 +:103AB0000C94962380E090E00E94902321E08D3EBC +:103AC0009E4F09F020E0822F089582E090E00C9450 +:103AD000882383E090E00C94882384E090E00C94A9 +:103AE0008823682F84E090E00C9496238091E50170 +:103AF00080FF0BC06091130185E0689FB001112425 +:103B000075956795759567952BC081FF09C0609184 +:103B1000130185E0689FB00111247595679520C059 +:103B200082FF07C06091130185E0689FB0011124F6 +:103B300017C09091E6019923D1F060911201961778 +:103B400088F72091130185E0289F90011124929F0E +:103B5000A001939F500D112470E0CA010E945A23C6 +:103B60006038710540F46115710539F002C065E0F7 +:103B700070E0862F08958FE7089581E00895809181 +:103B8000E50180FF08C06091110170E075956795AF +:103B90007595679521C081FF06C06091110170E0A5 +:103BA0007595679519C082FF04C06091110170E09E +:103BB00010C09091E6019923C1F060911001961711 +:103BC000A0F780911101899FC001112470E00E942B +:103BD0005A236038710528F46115710521F0862F8C +:103BE00008958FE7089581E0089561E070E0F4CFD3 +:103BF000803F21F40E94761D819504C0813F29F405 +:103C00000E94761D8093E9010895823F21F40E946D +:103C1000761D819504C0833F29F40E94761D809310 +:103C2000E8010895893F19F40E94BF1D05C08A3F2D +:103C300031F40E94BF1D81958093EA0108958B3F66 +:103C400021F40E94BF1D819504C08C3F29F40E947D +:103C5000BF1D8093EB010895843F21F48091E7011B +:103C6000816017C0853F21F48091E701826011C017 +:103C7000863F21F48091E70184600BC0873F21F4E7 +:103C80008091E701886005C0883F31F48091E701A9 +:103C900080618093E70108958D3F21F48091E501D3 +:103CA00081600BC08E3F21F48091E501826005C0E8 +:103CB0008F3F29F48091E50184608093E5010895A8 +:103CC000803F39F48091E90187FF6CC01092E901CF +:103CD00069C0813F29F48091E9011816BCF362C0E4 +:103CE0009091E801823F29F497FF5CC01092E801AF +:103CF00059C0833F19F41916CCF354C0893F41F4DD +:103D00008091EA0118160CF04DC01092EA014AC0E9 +:103D10008A3F29F48091EA0187FF44C0F6CF8B3FA8 +:103D200039F48091EB0187FF3DC01092EB013AC05E +:103D30008C3F29F48091EB011816BCF333C0843F0B +:103D400021F48091E7018E7F17C0853F21F4809197 +:103D5000E7018D7F11C0863F21F48091E7018B7FC1 +:103D60000BC0873F21F48091E701877F05C0883F22 +:103D700031F48091E7018F7E8093E70113C08D3F7E +:103D800021F48091E5018E7F0BC08E3F21F480915C +:103D9000E5018D7F05C08F3F29F48091E5018B7F80 +:103DA0008093E5018091E80181110EC08091E901C5 +:103DB00081110AC08091EA01811106C08091EB0156 +:103DC000811102C01092E601089587EE91E00E94F1 +:103DD0000C110E94A51C9093E4018093E3010895C7 +:103DE0001F93CF93DF938091E3019091E4010E94B0 +:103DF000B11CAC019091E601992321F020911401AE +:103E000030E006C0209115018AE0289F900111241E +:103E10004217530708F486C08091E801C091E90178 +:103E2000D091EA011091EB01811107C0C11176C058 +:103E3000D11174C0111172C075C09F3F19F09F5FFE +:103E40009093E601181624F40E94761D8093E801F1 +:103E50008091E80187FF05C00E94761D81958093BF +:103E6000E8011C1624F40E94761D8093E9018091DC +:103E7000E90187FF05C00E94761D81958093E901C5 +:103E80006091E801662339F1C091E901CC2319F171 +:103E9000772767FD7095872F972F0E946B2223E36A +:103EA00033E343E35FE30E94CF220E943822609312 +:103EB000E8016C2F772767FD7095872F972F0E9459 +:103EC0006B2223E333E343E35FE30E94CF220E94AC +:103ED00038226093E9011D1624F40E94BF1D8093CF +:103EE000EA018091EA0187FF05C00E94BF1D81950C +:103EF0008093EA01111624F40E94BF1D8093EB0108 +:103F00008091EB0187FF05C00E94BF1D81958093C2 +:103F1000EB01DF91CF911F910C94E51E9F3F09F0BB +:103F20008ECF96CFDF91CF911F910895E7EEF1E00C +:103F300085E0DF011D928A95E9F71092E601109263 +:103F4000E5010895833081F128F4813059F0823001 +:103F5000D1F00895853009F449C0B8F1863009F4EC +:103F600056C0089580911501262F30E0280F311D8D +:103F70002F3F310524F4680F6093150108958FEFEA +:103F800080931501089580911401262F30E0280FA9 +:103F9000311D2F3F310524F4680F609314010895FB +:103FA0008FEF80931401089580911301262F30E044 +:103FB000280F311D2F3F310524F4680F6093130142 +:103FC00008958FEF80931301089580911201262F99 +:103FD00030E0280F311D2F3F310524F4680F609326 +:103FE000120108958FEF80931201089580911101BD +:103FF000262F30E0280F311D2F3F310524F4680FA4 +:104000006093110108958FEF8093110108958091BD +:104010001001262F30E0280F311D2F3F310524F4E9 +:10402000680F6093100108958FEF80931001089539 +:10403000833011F128F4813049F0823091F00895F5 +:10404000853081F120F18630C1F10895809115010C +:10405000681720F4861B80931501089510921501AE +:10406000089580911401681720F4861B8093140131 +:10407000089510921401089580911301681720F497 +:10408000861B809313010895109213010895809167 +:104090001201681720F4861B809312010895109274 +:1040A0001201089580911101681720F4861B8093F6 +:1040B000110108951092110108958091100168175F +:1040C00020F4861B8093100108951092100108952A +:1040D0000F931F938D3109F471C008F045C08031F2 +:1040E00009F485C008F5873009F46FC068F486309C +:1040F00009F0ADC08091DD01817F8E7F8093DD016D +:1041000081E08093ED01A4C08B3009F49EC08E3015 +:1041100009F09DC08091DD0182FB222720F991E00A +:10412000922790FB82F96CC0863109F48EC060F44E +:10413000813109F08CC00E948E1590910D0181E0B3 +:10414000892780930D0181C0893109F47EC08B31AC +:1041500009F07DC08091DD0181FB222720F991E0EB +:10416000922790FB81F94CC0853309F466C048F46E +:10417000873209F462C008F44FC0893209F45DC087 +:1041800066C0833438F48A3308F044C0883309F4B5 +:104190005CC05DC0833409F450C0883409F057C056 +:1041A0000E948E150FEF13ED20E3015010402040C8 +:1041B000E1F700C000000E94001D47C00E94F221EC +:1041C0000E94F5100E94F20940C09091DD01892FF4 +:1041D0008095817080FB90F929F0966098609093AB +:1041E000DD0136C0997F977F9093DD012EC08091CD +:1041F000DD0183FB222720F991E0922790FB83F9D0 +:104200008093DD01992309F18091DD018160809324 +:10421000DD011BC0895301C08D5141E050E060E0D9 +:1042200070E08A019B0104C0000F111F221F331F81 +:104230008A95D2F7C901B80104C061E070E080E05E +:1042400090E00E944E190E948E1581E001C080E02E +:104250001F910F91089580E0089580E008958E5198 +:104260008A3030F4E82FF0E0E65DFE4F808108955B +:1042700080E00895CF93C82F8091ED01813079F0CF +:1042800018F08230E9F186C0E0910E01F0910F0143 +:104290008081813169F0823209F07EC009C0E091ED +:1042A0000E01F0910F018081813111F0823261F4B1 +:1042B0008C2F0E942B21811104C08C2F0E9468201A +:1042C0001DC081E090E01AC08C2F0E942D21811129 +:1042D00014C0C43179F048F4CB3079F0C03109F022 +:1042E0005FC082E08093ED0108C0C93219F0C83385 +:1042F00021F056C01092ED0153C081E0817052C090 +:10430000C93281F110F5C43169F1A8F4C73009F060 +:1043100045C08AE08093150194E19093140193E0E5 +:10432000909313018093120188E08093110188E239 +:104330008093100133C082EE8C0F863078F58C2F7D +:104340000E942F218093EC0129C0CE34E9F020F4A3 +:10435000CB3421F56AE013C0C13579F0C235F1F4F0 +:1043600061E00DC08091EC01882319F01092EC01FE +:1043700015C081E08093ED0115C061E006C0809119 +:10438000EC010E94A21F0AC06AE08091EC010E9429 +:10439000182004C01092ED0180E004C081E002C04A +:1043A00080E0ACCFCF910895E1E8F0E080818860B3 +:1043B00080838081816080838FB7F89493E09093AD +:1043C000890090ED909388008FBF0895EFE6F0E0AC +:1043D0008081826080830895EFE6F0E080818D7FA8 +:1043E00080830895EFE6F0E0908182E08927808362 +:1043F00008951F920F920FB60F9211242F933F939F +:104400004F935F936F937F938F939F93AF93BF93DC +:10441000EF93FF938091EE019091EF0101969093BD +:10442000EF018093EE01811103C082E00E94F20946 +:10443000E091EF01E695E695F0E0EB54FB4FE49157 +:104440008091EE018E1303C080E00E94F209FF917B +:10445000EF91BF91AF919F918F917F916F915F91FC +:104460004F913F912F910F900FBE0F901F90189575 +:1044700004D06894B1118DC0089570D088F09F5712 +:1044800090F0B92F9927B751A0F0D1F0660F771FA0 +:10449000881F991F1AF0BA95C9F712C0B13081F080 +:1044A00077D0B1E0089574C0672F782F8827B85F60 +:1044B00039F0B93FCCF3869577956795B395D9F7E1 +:1044C0003EF490958095709561957F4F8F4F9F4FEB +:1044D0000895E89409C097FB3EF4909580957095F7 +:1044E00061957F4F8F4F9F4F9923A9F0F92F96E940 +:1044F000BB279395F695879577956795B795F111B5 +:10450000F8CFFAF4BB0F11F460FF1BC06F5F7F4F51 +:104510008F4F9F4F16C0882311F096E911C0772363 +:1045200021F09EE8872F762F05C0662371F096E86C +:10453000862F70E060E02AF09A95660F771F881F3B +:10454000DAF7880F9695879597F9089557FD905853 +:10455000440F551F59F05F3F71F04795880F97FB47 +:10456000991F61F09F3F79F0879508951216130601 +:104570001406551FF2CF4695F1DF08C01616170630 +:104580001806991FF1CF8695710561050894089565 +:10459000E894BB2766277727CB0197F908950BD0BE +:1045A00078C069D028F06ED018F0952309F05AC071 +:1045B0005FC01124EECFCADFA0F3959FD1F3950F12 +:1045C00050E0551F629FF001729FBB27F00DB11D97 +:1045D000639FAA27F00DB11DAA1F649F6627B00D27 +:1045E000A11D661F829F2227B00DA11D621F739F10 +:1045F000B00DA11D621F839FA00D611D221F749F1E +:104600003327A00D611D231F849F600D211D822F64 +:10461000762F6A2F11249F5750408AF0E1F08823AB +:104620004AF0EE0FFF1FBB1F661F771F881F9150B8 +:104630005040A9F79E3F510570F014C0AACF5F3FCC +:10464000ECF3983EDCF3869577956795B795F795EB +:10465000E7959F5FC1F7FE2B880F911D9695879573 +:1046600097F9089597F99F6780E870E060E00895F2 +:104670009FEF80EC089500240A941616170618067A +:104680000906089500240A94121613061406050656 +:104690000895092E0394000C11F4882352F0BB0FE7 +:1046A00040F4BF2B11F460FF04C06F5F7F4F8F4F4A +:1046B0009F4F089597FB072E16F4009407D077FDBF +:1046C00009D00E94742307FC05D03EF49095819593 +:1046D0009F4F0895709561957F4F0895EE0FFF1FCE +:1046E0000590F491E02D0994AA1BBB1B51E107C072 +:1046F000AA1FBB1FA617B70710F0A61BB70B881F72 +:10470000991F5A95A9F780959095BC01CD01089500 +:10471000F999FECF92BD81BDF89A992780B5089589 +:10472000A8E1B0E042E050E00C94B023262FF999C4 +:10473000FECF92BD81BDF89A019700B4021639F000 +:104740001FBA20BD0FB6F894FA9AF99A0FBE0895D1 +:104750000196272F0E9497230C949623DC01CB010E +:10476000FC01F999FECF06C0F2BDE1BDF89A319681 +:1047700000B40D9241505040B8F70895F894FFCF1F +:104780000220F409820A5F0A2B0AF7090101CA0113 +:1047900028080A03140A404D363975042804F20328 +:1047A000B9034C0365037E03970301020304050666 +:0447B00007080900ED +:00000001FF diff --git a/keyboards/ergodox_ez/keymaps/dvorak_spanish/keymap.c b/keyboards/ergodox_ez/keymaps/dvorak_spanish/keymap.c new file mode 100755 index 0000000000..6eb864b447 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/dvorak_spanish/keymap.c @@ -0,0 +1,284 @@ +#include "ergodox_ez.h" +#include "debug.h" +#include "action_layer.h" + +/****************************************************************************************** + * SPANISH DVORAK LAYOUT (see http://djelibeibi.unex.es/dvorak/) + * Layer 1: auxiliary keys + * Layer 2: full qwerty layout + ****************************************************************************************** + * IMPORTANT: Software layout must be set to SPANISH QWERTY to work properly + *****************************************************************************************/ + +// LAYERS +#define BASE 0 // dvorak layout (default) +#define AUX 1 // auxiliary keys +#define QWERTY 2 // qwerty layout + +// MACROS +#define OBRACE 0 // key { or shift +#define CBRACE 1 // key } or shift +#define OBRACK 2 // key [ or left alt +#define CBRACK 3 // key ] or left alt +#define CAPS 4 // caps lock + +// LEDS +#define USB_LED_NUM_LOCK 0 +#define USB_LED_CAPS_LOCK 1 +#define USB_LED_SCROLL_LOCK 2 +#define USB_LED_COMPOSE 3 +#define USB_LED_KANA 4 + +// TIMERS +#define KEY_TAP_FAST 85 +#define KEY_TAP_SLOW 95 + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* Keymap 0: Base layer + * Keys with double values (like Esc/Ctrl) correspond to the 'tapped' key and the 'held' key, respectively + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | \ | 1 | 2 | 3 | 4 | 5 | <> | | ¡ | 6 | 7 | 8 | 9 | 0 | ' | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | F1/~L1 | . | , | Ñ | P | Y |MEH_T | | L1 | F | G | C | H | L |ALL_T/+ | + * |--------+------+------+------+------+------| DEL | | ~L1 |------+------+------+------+------+--------| + * |Esc/Ctrl| A | O | E | U | I |------| |------| D | R | T | N | S |'/RCtrl | + * |--------+------+------+------+------+------| LGUI | | RALT |------+------+------+------+------+--------| + * | {/LSft | - | Q | J | K | X | | | | B | M | W | V | Z | }/RSft | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * |[/LALT| HOME |PGDOWN| PGUP | END | | LEFT | DOWN | UP |RIGHT |]/LALT| + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * |F5/CAG|F6/~L1| |F7/~L1|F8/CAG| + * ,------|------|------| |------+--------+------. + * | | |F4/CA | |F11/CA| | | + * | ENTER| TAB |------| |------| BSPC | SPACE| + * | | |F3/SA | |F12/SA| | | + * `--------------------' `----------------------' + * CAG = CTRL-ALT-GUI + * CA = CTRL-ALT + * SA = SHIFT-ALT + * + */ +[BASE] = KEYMAP( + // left hand + KC_GRAVE, KC_1, KC_2, KC_3, KC_4, KC_5, KC_NONUS_BSLASH, + LT(AUX, KC_F1), KC_DOT, KC_COMM,KC_SCLN,KC_P, KC_Y, MEH_T(KC_DEL), + CTL_T(KC_ESC), KC_A, KC_O, KC_E, KC_U, KC_I, + M(OBRACE), KC_SLSH,KC_Q, KC_J, KC_K, KC_X, KC_LGUI, + M(OBRACK), KC_HOME,KC_PGDN,KC_PGUP,KC_END, + LCAG_T(KC_F5), LT(AUX, KC_F6), + MT((MOD_LALT | MOD_LCTL), KC_F4), + KC_ENT,KC_TAB,MT((MOD_LALT | MOD_LSFT), KC_F3), + // right hand + KC_EQL, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINUS, + KC_FN1, KC_F, KC_G, KC_C, KC_H, KC_L, ALL_T(KC_RBRACKET), + KC_D, KC_R, KC_T, KC_N, KC_S, CTL_T(KC_QUOTE), + KC_RALT, KC_B, KC_M, KC_W, KC_V, KC_Z, M(CBRACE), + KC_LEFT,KC_DOWN,KC_UP, KC_RGHT,M(CBRACK), + LT(AUX, KC_F7), LCAG_T(KC_F8), + MT((MOD_LALT | MOD_LCTL), KC_F11), + MT((MOD_LALT | MOD_LSFT), KC_F12),KC_BSPC, KC_SPC + ), +/* Keymap 1: Aux layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | SLEEP | PWR | F6 | F7 | F8 | F9 | F10 | F11 | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | < | > | MsUp | | | | | ~L0 | | 7 | 8 | 9 | * | `^ | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | |MsLeft|MsDown|MsRght| |------| |------| | 4 | 5 | 6 | + | Ç | + * |--------+------+------+------+------+------| | |PSCR |------+------+------+------+------+--------| + * |CAPSLOCK| | | | | | | | | | 1 | 2 | 3 | / | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * |CTRL-S|CTRL-Z|CTRL-X|CTRL-C|CTRL-V| | | . | 0 | = | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | Play | + * ,------|------|------| |------+------+------. + * | | | | | VolUp| | | + * | Lclk | Rclk |------| |------| Prev | Next | + * | | | L2 | | VolDn| | | + * `--------------------' `--------------------' + */ +[AUX] = KEYMAP( + // left hand + KC_NO , KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_SLEP, + KC_TRNS, KC_NONUS_BSLASH, LSFT(KC_NONUS_BSLASH), KC_MS_U, KC_NO, KC_NO, KC_NO, + KC_NO , KC_NO, KC_MS_L, KC_MS_D, KC_MS_R, KC_NO , + M(CAPS), KC_NO, KC_NO , KC_NO , KC_NO , KC_NO , KC_NO, + LCTL(KC_S), LCTL(KC_Z), LCTL(KC_X), LCTL(KC_C), LCTL(KC_V), + KC_NO , KC_TRNS, + KC_NO, + KC_BTN1, KC_BTN2, TG(QWERTY), + // right hand + KC_PWR, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + KC_TRNS, KC_NO, KC_7, KC_8, KC_9, KC_PAST, KC_LBRACKET, + KC_NO, KC_4, KC_5, KC_6, KC_PPLS, KC_BSLASH, + KC_PSCR, KC_NO, KC_1, KC_2, KC_3, KC_PSLS, KC_NO, + KC_NO ,KC_DOT, KC_0, KC_PEQL, KC_NO, + KC_TRNS, KC_MPLY, + KC_VOLU, + KC_VOLD, KC_MPRV, KC_MNXT +), +/* Keymap 2: QWERTY layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | \ | 1 | 2 | 3 | 4 | 5 | <> | | ¡ | 6 | 7 | 8 | 9 | 0 | ' | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | TRANS | Q | W | E | R | T |MEH_T | | TRANS| Y | U | I | O | P |ALL_T/+ | + * |--------+------+------+------+------+------| DEL | | |------+------+------+------+------+--------| + * |Esc/Ctrl| A | S | D | F | G |------| |------| H | J | K | L | Ñ |'/RCtrl | + * |--------+------+------+------+------+------| LGUI | | RALT |------+------+------+------+------+--------| + * | {/LSft | Z | X | C | V | B | | | | N | M | , | . | - | }/RSft | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * |[/LALT| HOME |PGDOWN| PGUP | END | | LEFT | DOWN | UP |RIGHT |]/LALT| + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * |F5/CAG| TRANS| | TRANS|F8/CAG| + * ,------|------|------| |------+--------+------. + * | | |F4/CA | |F11/CA| | | + * | ENTER| TAB |------| |------| BSPC | SPACE| + * | | | TRANS| |F12/SA| | | + * `--------------------' `----------------------' + * CAG = CTRL-ALT-GUI + * CA = CTRL-ALT + * SA = SHIFT-ALT + * + */ +[QWERTY] = KEYMAP( + // left hand + KC_GRAVE, KC_1, KC_2, KC_3, KC_4, KC_5, KC_NONUS_BSLASH, + KC_TRNS, KC_Q, KC_W, KC_E, KC_R, KC_T, MEH_T(KC_DEL), + CTL_T(KC_ESC), KC_A, KC_S, KC_D, KC_F, KC_G, + M(OBRACE), KC_Z, KC_X, KC_C, KC_V, KC_B, KC_LGUI, + M(OBRACK), KC_HOME,KC_PGDN,KC_PGUP,KC_END, + LCAG_T(KC_F5), KC_TRNS, + MT((MOD_LALT | MOD_LCTL), KC_F4), + KC_ENT,KC_TAB,KC_TRNS, + // right hand + KC_EQL, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINUS, + KC_TRNS, KC_Y, KC_U, KC_I, KC_O, KC_P, ALL_T(KC_RBRACKET), + KC_H, KC_J, KC_K, KC_L, KC_SCLN,CTL_T(KC_QUOTE), + KC_RALT, KC_N, KC_M, KC_COMM,KC_DOT, KC_SLSH,M(CBRACE), + KC_LEFT,KC_DOWN,KC_UP, KC_RGHT,M(CBRACK), + KC_TRNS, LCAG_T(KC_F8), + MT((MOD_LALT | MOD_LCTL), KC_F11), + MT((MOD_LALT | MOD_LSFT), KC_F12),KC_BSPC, KC_SPC +), +}; + +const uint16_t PROGMEM fn_actions[] = { + [1] = ACTION_LAYER_TAP_TOGGLE(AUX) // FN1 - Momentary Layer 1 (Aux) +}; + +static uint16_t key_timer; + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + switch(id) { + case OBRACE: { + if (record->event.pressed) { + key_timer = timer_read(); + register_code(KC_RSFT); + } else { + unregister_code(KC_RSFT); + if (timer_elapsed(key_timer) < KEY_TAP_SLOW) { + register_code(KC_RALT); + register_code(KC_QUOTE); + unregister_code(KC_QUOTE); + unregister_code(KC_RALT); + } + } + break; + } + case CBRACE: { + if (record->event.pressed) { + key_timer = timer_read(); + register_code(KC_RSFT); + } else { + unregister_code(KC_RSFT); + if (timer_elapsed(key_timer) < KEY_TAP_SLOW) { + register_code(KC_RALT); + register_code(KC_BSLS); + unregister_code(KC_BSLS); + unregister_code(KC_RALT); + } + } + break; + } + case OBRACK: { + if (record->event.pressed) { + key_timer = timer_read(); + register_code(KC_LALT); + } else { + unregister_code(KC_LALT); + if (timer_elapsed(key_timer) < KEY_TAP_SLOW) { + register_code(KC_RALT); + register_code(KC_LBRACKET); + unregister_code(KC_LBRACKET); + unregister_code(KC_RALT); + } + } + break; + } + case CBRACK: { + if (record->event.pressed) { + key_timer = timer_read(); + register_code(KC_LALT); + } else { + unregister_code(KC_LALT); + if (timer_elapsed(key_timer) < KEY_TAP_SLOW) { + register_code(KC_RALT); + register_code(KC_RBRACKET); + unregister_code(KC_RBRACKET); + unregister_code(KC_RALT); + } + } + break; + } + case CAPS: { + if (record->event.pressed) { + register_code(KC_CAPSLOCK); + } else { + unregister_code(KC_CAPSLOCK); + } + break; + } + } + return MACRO_NONE; +}; + +// Runs just one time when the keyboard initializes. +void matrix_init_user(void) { + +}; + +// Runs constantly in the background, in a loop. +void matrix_scan_user(void) { + + uint8_t layer = biton32(layer_state); + + ergodox_board_led_off(); + ergodox_right_led_1_off(); + ergodox_right_led_2_off(); + ergodox_right_led_3_off(); + switch (layer) { + case 1: + ergodox_right_led_3_on(); + break; + case 2: + ergodox_right_led_2_on(); + break; + default: + // none + break; + } + + // Turn the caps lock led on + if (host_keyboard_leds() & (1<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/keyboards/ergodox_ez/keymaps/emacs_osx_dk/readme.md b/keyboards/ergodox_ez/keymaps/emacs_osx_dk/readme.md new file mode 100644 index 0000000000..4839988d9b --- /dev/null +++ b/keyboards/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/keyboards/ergodox_ez/keymaps/erez_experimental/Makefile b/keyboards/ergodox_ez/keymaps/erez_experimental/Makefile new file mode 100644 index 0000000000..b673c5ce52 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/erez_experimental/Makefile @@ -0,0 +1,9 @@ +# Having a file like this allows you to override Makefile definitions +# for your own particular keymap + +SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend +COMMAND_ENABLE = no # Commands for debug and configuration + +ifndef QUANTUM_DIR + include ../../../../Makefile +endif diff --git a/keyboards/ergodox_ez/keymaps/erez_experimental/compiled.hex b/keyboards/ergodox_ez/keymaps/erez_experimental/compiled.hex new file mode 100644 index 0000000000..c709537d60 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/erez_experimental/compiled.hex @@ -0,0 +1,1080 @@ +:100000000C945D020C94A1020C94A1020C94A10228 +:100010000C94A1020C94A1020C94A1020C94A102D4 +:100020000C94A1020C94A1020C94DB0D0C94AD0E67 +:100030000C94EA1C0C94A1020C94A1020C94A10251 +:100040000C94A1020C94A1020C94A1020C94A102A4 +:100050000C94A1020C94511D0C94A1020C94A102C9 +:100060000C94A1020C94A1020C94A1020C94A10284 +:100070000C94A1020C94A1020C94A1020C94A10274 +:100080000C94A1020C94A1020C94A1020C94A10264 +:100090000C94A1020C94A1020C94A1020C94A10254 +:1000A0000C94A1020C94A1020C94A102120F340F23 +:1000B0001F10340F1F10760F990F1F10EE0F011035 +:1000C000CD12CD12FC12FC1243136513BD14BD14E6 +:1000D0007013BD1417141714AE14BD14BD14B71447 +:1000E0002414241424142414241424142414241450 +:1000F0002414241424142414241424142414241440 +:10010000361443144A1451145B140000F0A100C8C3 +:1001100001C82E004C002A003370354100001E003B +:10012000140004001D6134004D001F001A00160069 +:100130001B00E104147020000800070006005000B6 +:100140002C0021001500090019004F004A00220070 +:1001500017000A000500000065645000015300000C +:100160002F6F0000E3004F000153000030670000D4 +:10017000E20023001C000B00110000002961240094 +:1001800018000D64100052004B0025000C000E00FA +:10019000360051002800260012000F0037002F0003 +:1001A0002B41270013003342386130004E002D00F0 +:1001B0003100346834702D4100000100010001005D +:1001C0000100010000003A0001001E0023000100B0 +:1001D00001003B0001001F002400010001003C0061 +:1001E0000100200025004B0101003D00010021001D +:1001F00026004E0101003E00010022002700000001 +:1002000001000100010000000100000001000100E8 +:10021000010000000100000001003F000100240275 +:10022000310200000100400001002D021F02010008 +:100230000100410001002D002E00010001004200DC +:1002400001001300220201000100430001002E0200 +:10025000010001000100440045000100010001000F +:100260000000010001000100010001000000010088 +:1002700001004B00010001000100010001004A00E3 +:10028000010001000100010001004D00010001001A +:100290000100010001004E00010001000100010009 +:1002A0000100010001000000010001000100000048 +:1002B0000100000001000100010000000100000039 +:1002C0000100010001000100010000000100010027 +:1002D000010001000100A90001000100010001006E +:1002E000AC00AA00B600010001000100AB00A800AC +:1002F00001000100010001000100010001000100F6 +:100300000100AE000100010000001603450072006C +:1003100067006F0044006F007800200045005A001D +:10032000000016034500720067006F0044006F0074 +:100330007800200045005A00000004030904090267 +:100340006D00040100A0FA0904000001030101008E +:100350000921110100012240000705810308000A5C +:100360000904010001030102000921110100012219 +:100370004D000705820308000A090402000103007A +:10038000000009211101000122360007058303083E +:10039000000A090403000103000000092111010003 +:1003A0000122390007058403100001120110010029 +:1003B000000008EDFE07130100010200010501091C +:1003C00006A101050719E029E71500250195087523 +:1003D000018102050819012905950575019102950C +:1003E000017503910105071900297715002501956D +:1003F0007875018102C005010980A10185021601FD +:100400000026B7001A01002AB70075109501810077 +:10041000C0050C0901A1018503160100269C021AE2 +:1004200001002A9C02751095018100C00501090296 +:10043000A1010901A10005091901290515002501DE +:10044000950575018102950175038101050109304A +:1004500009311581257F95027508810609381581B6 +:10046000257F950175088106050C0A38021581253E +:100470007F950175088106C0C005010906A1010527 +:100480000719E029E71500250195087501810295F6 +:100490000175088101050819012905950575019166 +:1004A000029501750391010507190029FF15002622 +:1004B000FF00950675088100C00011241FBECFEF14 +:1004C000DAE0DEBFCDBF04B603FE24C08091F401A4 +:1004D0009091F501A091F601B091F7018730904B12 +:1004E000A740B04BB9F41092F4011092F5011092AC +:1004F000F6011092F70114BE84B7877F84BF88E1AC +:100500000FB6F89480936000109260000FBEE0E098 +:10051000FFE3099511E0A0E0B1E0E6E3F3E402C0F7 +:1005200005900D92AA32B107D9F711E0AAE2B1E025 +:1005300001C01D92A43FB107E1F70E94270B0C9464 +:1005400099210C9400001092B9008AE08093B800C1 +:10055000089594EA9093BC009091BC0097FFFCCF63 +:100560009091B900987F983021F0903111F081E09E +:1005700008958093BB0084E88093BC008091BC0008 +:1005800087FFFCCF8091B900887F883111F08034DB +:1005900071F780E0089584E98093BC008091BC00ED +:1005A00084FDFCCF08958093BB0084E88093BC0059 +:1005B0008091BC0087FFFCCF9091B900987F81E0CB +:1005C000983209F480E0089584E88093BC0080911B +:1005D000BC0087FFFCCF8091BB00089580B38C7076 +:1005E00080BB81B3836F81BB08958091010181112C +:1005F00015C080E40E94A9028093010181110CC002 +:1006000082E10E94D30280930101811105C08FEF26 +:100610000E94D302809301010E94CB0284B1807FAB +:1006200084B985B1807F85B98AB1837F8AB98BB15E +:10063000837F8BB93E98469808950E94BC048093AE +:1006400001010E94F5020E94EE02E9E3F1E0ABE253 +:10065000B1E011921D9281E0E734F807D1F70C94D4 +:10066000A6040E94BC04809301010E94F5020E942E +:10067000EE02E9E3F1E0ABE2B1E011921D9281E01C +:10068000E734F807D1F70895BF92CF92DF92EF9247 +:10069000FF920F931F93CF93DF93809101018823E3 +:1006A00079F080912A018F5F80932A01811108C01F +:1006B0000E94BC0480930101811102C00E944E047B +:1006C0000BE211E0C0E0D0E0DD24D39482E0C82E3C +:1006D000EE24E394F12CC73000F5809101018111E3 +:1006E00062C080E40E94A90280930101811112C0BE +:1006F00082E10E94D3028093010181110BC0C701E6 +:100700000C2E01C0880F0A94EAF780950E94D3024C +:10071000809301010E94CB0246C0CA30A1F028F4A8 +:10072000C83059F0C93061F005C0CC3089F070F0A4 +:10073000CD3089F0209A289810C0219A29980DC0B0 +:10074000229A2A980AC0239A2B9807C0529A01C06D +:10075000539A5B9802C03E9A4698E0EAEA95F1F710 +:100760008FB179995AC092E081708D25892B7C9B3D +:1007700002C090E001C094E0892B7D9B02C090E014 +:1007800001C098E0892B7E9B02C090E001C090E1FF +:10079000892B9FB19095991F9927991F9295990F31 +:1007A000907E892B0FC08091010181114BC080E4A4 +:1007B0000E94A90280930101882389F1B12C0E9433 +:1007C000CB028B2DF8019081981719F08083C0928D +:1007D00000010E94F50221960F5F1F4FCE30D10518 +:1007E00009F079CF80910001882371F181508093C5 +:1007F0000001882339F08FE99FE00197F1F700C0ED +:10080000000022C0A9E3B1E0EBE2F1E081918D9319 +:1008100091E0E933F907D1F717C090E0A5CF83E164 +:100820000E94D302809301018111C8CF81E40E940C +:10083000A902809301018111C1CF0E94E402B82E68 +:10084000B094BDCF80E0BECF0E944C0481E0DF9128 +:10085000CF911F910F91FF90EF90DF90CF90BF90BD +:100860000895E82FF0E0E75CFE4F80810895089539 +:100870001F93CF93DF93C9E3D1E010E0899190E01B +:100880000E944D1C180F81E0C734D807B9F7812F9B +:10089000DF91CF911F9108950C940F0556985E98A3 +:1008A00025982D9826982E9827982F988FEF90E0CE +:1008B000909389008093880090938B0080938A00A6 +:1008C00090938D0080938C00259A2D9A2FEF80E7CE +:1008D00092E0215080409040E1F700C00000269A4D +:1008E0002E9A2FEF80E792E0215080409040E1F770 +:1008F00000C00000279A2F9A2FEF80E792E0215046 +:1009000080409040E1F700C0000025982D982FEF1F +:1009100080E792E0215080409040E1F700C0000065 +:1009200026982E982FEF80E792E02150804090404B +:10093000E1F700C0000027982F9856985E982598F8 +:100940002D9826982E9827982F98089589EA8093B5 +:10095000800089E08093810024982C983F988AB188 +:100960008F748AB96E98479A8BB1806B8BB9769ADF +:100970000E944E040C940E0580E280930101809148 +:10098000470181110EC00E94A30281E080934701BC +:100990002FEF83ED90E3215080409040E1F700C0BD +:1009A000000080E40E94A9028093010181112EC001 +:1009B0000E94D30280930101811128C00E94D302BA +:1009C00080930101811122C08FE30E94D3028093A2 +:1009D000010181111BC00E94CB0280E40E94A90288 +:1009E00080930101811112C08CE00E94D302809398 +:1009F000010181110BC00E94D3028093010181117A +:100A000005C08FE30E94D302809301010E94CB02B4 +:100A100080910101089580E090E00895089560912B +:100A2000B4017091B5018091B6019091B7010E9417 +:100A3000591C56985E9825982D9826982E98279898 +:100A40002F98813029F0823029F4269A2E9A02C0FC +:100A5000259A2D9A80915401882309F450C08091E1 +:100A60005201909153010E94281D8D32914008F44B +:100A700046C0109254010E94870580914C019091CC +:100A80004D014A97C1F480914E0190914F01892BFD +:100A900091F48091500190915101892B61F482EE83 +:100AA0000E9479118DE30E9479118DE30E94361224 +:100AB00082EE0E94361280914C0190914D01429736 +:100AC000F1F480914E0190914F01892BC1F48091F6 +:100AD000500190915101892B91F480EE0E9479117F +:100AE00081EE0E94791182E10E94791182E10E94D7 +:100AF000361281EE0E94361280EE0C943612089562 +:100B000081E0089581E008950C9482050895089588 +:100B1000282F882339F090E02A3010F44D9608955C +:100B20000697089587E290E00895BF92CF92DF92F2 +:100B3000EF92FF920F931F93CF93DF938C01FC01F1 +:100B4000C081D181CE010E94561ABE010E94DD08EB +:100B5000EC01B8010E948405882309F4A3C1F801BF +:100B600082818823C9F18091540181111EC0C43152 +:100B7000F0E7DF0789F50E94860581E08093540144 +:100B80000E941C1D909353018093520110924B01BF +:100B900010924D0110924C0110924F0110924E0193 +:100BA00010925101109250017DC18091520190919B +:100BB00053010E94281D883C910570F480914B01DF +:100BC000E82FF0E0EE0FFF1FE45BFE4FD183C08300 +:100BD0008F5F80934B0166C1C13020E8D20708F4D3 +:100BE00051C0F8018281882309F44CC06E01E89459 +:100BF000D7F880914A01813079F050F08230C1F409 +:100C000082EE0E94791187E50E94791187E50EC076 +:100C100082EE0E9479110CC080EE0E94791181EE63 +:100C20000E94791188E10E94791188E10E943612B0 +:100C30008CE0E82EF12CC6010E2C02C0969587950B +:100C40000A94E2F78F700E948805B82E0E947911ED +:100C50008B2D0E943612F4E0EF1AF1082CEFE21609 +:100C60002FEFF20641F780914A01813029F010F010 +:100C7000823041F482EE04C080EE0E94361281EE92 +:100C80000E943612C43180E7D80760F4C23090E782 +:100C9000D90780F5C115E0E7DE0771F0C130D04714 +:100CA000F1F0EFC0C33320E7D20709F4BEC0C4336C +:100CB000D04709F4CEC0E5C0F8018281882309F449 +:100CC000E5C00E942915FFEF24E38CE0F15020409D +:100CD0008040E1F700C000000E94761DE3C0F801EB +:100CE0008281882309F4D2C08091D60181608093EB +:100CF000D601D8C0F8018281882309F4C7C00E94B8 +:100D0000D11D811102C00E94B71D0E94E41D90E018 +:100D10009093E6018093E501C230F0E7DF0721F40C +:100D20008091E50181607AC0C33020E7D20721F4C9 +:100D30008091E501826072C0C43080E7D80721F459 +:100D40008091E50184606AC0C53090E7D90719F445 +:100D50008091E50127C0C630E0E7DE0721F48091ED +:100D6000E50180615BC0C730F0E7DF0721F48091C7 +:100D7000E501806253C0C83020E7D20721F480919A +:100D8000E50180644BC0C93080E7D80721F4809129 +:100D9000E501806843C0CA3090E7D90729F4809103 +:100DA000E501846088603AC0CB30E0E7DE0721F4DB +:100DB0008091E5018E7F32C0CC30F0E7DF0721F46F +:100DC0008091E5018D7F2AC0CD3020E7D20721F444 +:100DD0008091E5018B7F22C0CE3080E7D80719F4DF +:100DE0008091E5011AC08091E501CF3090E7D907E5 +:100DF00011F48F7E13C0C031E0E7DE0711F48F7D60 +:100E00000DC0C131F0E7DF0711F48F7B07C0C2319D +:100E1000D04711F48F7702C08B7F877F8093E501E5 +:100E20008091E5010E94E81D3DC0F8018281882380 +:100E300021F01092480182E013C080914801811195 +:100E400006C086E20E94791186E20E94361282E094 +:100E500015C0F8018281882331F01092490180E2A7 +:100E60000E9485121FC080914901811106C087E24E +:100E70000E94791187E20E94361280E20E948C1251 +:100E800011C081E08093480180934901C801DF913E +:100E9000CF911F910F91FF90EF90DF90CF90BF9077 +:100EA0000C94800580E0DF91CF911F910F91FF900E +:100EB000EF90DF90CF90BF90089526E0729FF001F1 +:100EC000112444E5849FE00DF11D1124E60FF11D6E +:100ED000EE0FFF1FEE5EFE4F859194910E94EF088A +:100EE000811520E49207B0F5811540E3940708F0DE +:100EF000DDC0803E9105D8F4803C910508F06BC0C0 +:100F0000883A910578F4853A910508F06AC08130F5 +:100F1000910509F450C108F40DC18430910508F021 +:100F20004AC108C18B3B910508F466C003C18F3FDD +:100F3000910509F048F4803F910508F0ACC0883E67 +:100F4000910508F438C1F6C0811520E2920708F037 +:100F5000A4C00895811543E5940790F4811522E516 +:100F6000920708F0C7C0811541E5940708F0BDC09D +:100F7000811520E5920708F09CC09F70906A089543 +:100F8000811545E59407D0F4811524E5920708F012 +:100F9000C6C0282F2695269540E2249F9001112453 +:100FA000AC014370552781E090E002C0880F991F83 +:100FB0004A95E2F7822B932B9A680895811546E5AE +:100FC000940708F4B1C09C0130562115304108F057 +:100FD000B1C09F70ADC0FC01EE0FFF1FE657F0409F +:100FE00062C0853A910509F4A8C0863A910509F4D2 +:100FF000A7C083E890E40895883A910509F4A3C056 +:10100000893A910509F4A2C08A3A910509F4A1C070 +:101010008B3A910509F4A0C08C3A910509F49FC060 +:101020008D3A910509F49EC0803B910509F49DC05D +:101030008E3A910509F49CC08F3A910509F49BC042 +:10104000813B910509F49AC0823B910509F499C04E +:10105000833B910509F498C0843B910509F497C03E +:10106000853B910509F496C0863B910509F495C02E +:10107000873B910509F494C0883B910509F493C01E +:10108000893B910509F492C08A3B910509F091C012 +:101090008AE296E40895906508959F70880F991FDD +:1010A000865F9E4FFC018591949108959927906CDD +:1010B0000895482F437021E030E002C0220F331F13 +:1010C0004A95E2F73C68AC0164E0569547956A950D +:1010D000E1F74370342B8F708695869540E2849FAC +:1010E000C0011124822B932B0895982F8827816F9C +:1010F000906A0895282F2695269540E2249F900116 +:101100001124AC014370552781E090E002C0880FA4 +:10111000991F4A95E2F7822B932B9C680895982F8C +:101120008827846F906A08958F719927982F882750 +:101130009062089580E090E0089581E890E4089539 +:1011400082E890E4089582EE94E4089589EE94E4B0 +:1011500008958AEE94E4089585EB94E4089586EB6F +:1011600094E4089587EB94E408958CEC94E4089556 +:101170008DEC94E4089583E895E408958AE895E475 +:10118000089582E995E4089584E995E4089581E25B +:1011900096E4089583E296E4089584E296E408953F +:1011A00085E296E4089586E296E4089587E296E45F +:1011B000089580E094E40895089596E0799FF00101 +:1011C000112494E5899FE00DF11D1124E60FF11D16 +:1011D000EE0FFF1FEE5EFE4F8591949108958238C9 +:1011E000910549F1B0F48133910509F459C048F4EF +:1011F0008932910509F44FC08A32910509F455C02E +:1012000008958533910509F441C08933910599F01A +:101210000895833E910531F138F4803E910591F0B7 +:10122000823E9105A9F00895863E910501F1873E21 +:10123000910539F108952091E50120FD3BC021FD84 +:1012400039C008958091E50180FF34C089E341C031 +:101250008091E50182FF32C08091E50184FF2CC0BE +:1012600080E037C08091E50182FD28C0F5CF8091F4 +:10127000E50183FF25C08091E50184FDF1CF87EE74 +:1012800028C08091E50183FD1BC0F5CF8091E50169 +:1012900085FF18C019C08091E50185FF15C012C0F7 +:1012A0008091E50186FF12C013C08091E50186FFA1 +:1012B0000FC00CC080EE0DC083EE0BC082EE09C0E3 +:1012C00086EE07C085E305C089E203C081E301C063 +:1012D0008AE290E0089508950C946B09809165016D +:1012E0000895CF93DF9300D01F92CDB7DEB7209142 +:1012F000EB01243019F523E029839B838A83209313 +:10130000E9008FEF9091E800815095FD06C095EDC2 +:101310009A95F1F700008111F5CF8091E80085FFE3 +:101320000DC040E050E063E070E0CE0101960E9405 +:10133000CE0B8091E8008E778093E8000F900F909D +:101340000F90DF91CF910895CF93DF9300D01F923C +:10135000CDB7DEB72091EB01243021F522E02983BF +:101360009B838A8383E08093E9008FEF9091E8006C +:10137000815095FD06C095ED9A95F1F70000811119 +:10138000F5CF8091E80085FF0DC040E050E063E0BC +:1013900070E0CE0101960E94CE0B8091E8008E771E +:1013A0008093E8000F900F900F90DF91CF910895F8 +:1013B0002091EB012430F1F422E02093E9002FEF9B +:1013C0003091E800215035FD06C035ED3A95F1F732 +:1013D00000002111F5CF2091E80025FF0BC040E06F +:1013E00050E065E070E00E94CE0B8091E8008E77BF +:1013F0008093E8000895CF93DF93EC018091EB0197 +:10140000843009F046C090910C019923D9F0909155 +:101410000D019923B9F08093E9008FEF9091E800D6 +:10142000815095FD06C095E19A95F1F70000811174 +:10143000F5CF8091E80085FF2CC040E050E060E1EE +:1014400070E017C081E08093E9008FEF9091E80091 +:10145000815095FD06C095ED9A95F1F70000811138 +:10146000F5CF8091E80085FF14C040E050E068E0CF +:1014700070E0CE010E94CE0B8091E8008E778093C1 +:10148000E80080E1FE01A5E5B1E001900D928A95AA +:10149000E1F7DF91CF9108958091EA01811109C0B0 +:1014A0000E94600D0E94BD0D8091E20084608093D7 +:1014B000E20008951092EA010895089508950C94A9 +:1014C000E41C42E061EC81E00E94DA0C42E061EC55 +:1014D00082E00E94DA0C42E061EC83E00E94DA0CC8 +:1014E00042E161EC84E00C94DA0C8091ED018330F0 +:1014F00009F455C030F4813071F0823009F48EC0A7 +:1015000008958A3009F47AC08B3009F460C08930BC +:1015100009F09CC020C08091EC01813A09F096C08E +:101520008091E800877F8093E8008091F00190919E +:10153000F101892B21F060E080E090E003C060E1E0 +:1015400085E591E070E00E94170C8091E8008B77B0 +:101550008093E80008958091EC01813209F076C013 +:101560008091F0019091F101009719F0039709F033 +:101570006DC08091E800877F8093E8008091E8004B +:1015800082FD05C08091EB018111F8CF5FC0809191 +:10159000F100809365018091E8008B7753C08091C2 +:1015A000EC01813A09F052C08091F0019091F10173 +:1015B000892B09F04BC08091E800877F8093E80079 +:1015C0008091E80080FFFCCF80910C0136C08091B3 +:1015D000EC018132D9F58091F0019091F101892BD4 +:1015E000A9F58091E800877F8093E8000E940F0DA5 +:1015F0008091EE0180930C010C9429158091EC01EF +:10160000813221F58091E800877F8093E8000E9475 +:101610000F0D8091EF018093660108958091EC0198 +:10162000813AA1F48091E800877F8093E80080915F +:10163000E80080FFFCCF809166018093F1008091EB +:10164000E8008E778093E8000C940F0D089584B71E +:10165000877F84BF88E10FB6F89480936000109272 +:1016600060000FBE80E880936100109261000E94CC +:10167000A9100E94600D0E94BD0D8091E20084605F +:101680008093E20078940E9438100E94AB1082E0B0 +:1016900091E00E9455108091EB01853069F40E9421 +:1016A000AC1C8091E9018823B1F30E94D61C8823E9 +:1016B00091F30E94B80BEFCF0E94B110ECCF292F0D +:1016C000332723303105A9F06CF42130310509F4BA +:1016D00042C02230310509F043C08DE690E02EE390 +:1016E00033E042C021323105C9F02232310519F10F +:1016F00037C099278130910541F08230910541F042 +:10170000892B71F5EAE3F3E005C0E2E2F3E002C001 +:10171000EAE0F3E0849190E09F0126C0643000F598 +:10172000E62FF0E0EE0FFF1FEE5DFE4F20813181CE +:1017300089E090E019C0643098F4E62FF0E0DF0112 +:10174000AA0FBB1FA65EBE4F2D913C91EA5EFE4FD5 +:10175000808190E009C082E190E02BEA33E004C090 +:1017600080E090E020E030E0FA01318320830895AA +:1017700080E189BD82E189BD09B400FEFDCF809181 +:10178000D8008F7D8093D8008091E00082608093A4 +:10179000E0008091E00081FDFCCF0895CF92DF92C0 +:1017A000EF92FF920F931F93CF93DF937C018B01F6 +:1017B000EA010E94300D811131C0209731F08881FB +:1017C0009981081B190BE80EF91EC12CD12C0115AB +:1017D000110519F18091E80085FD14C08091E800A1 +:1017E0008E778093E800209741F0888199818C0D55 +:1017F0009D1D9983888385E011C00E94300D882348 +:1018000031F30CC0F70181917F018093F100015009 +:101810001109FFEFCF1ADF0ADACF80E0DF91CF9115 +:101820001F910F91FF90EF90DF90CF90089520913E +:10183000F2013091F3012617370748F06115710561 +:1018400039F42091E8002E772093E80001C0B90117 +:10185000FC0120E061157105B9F18091EB0188234D +:1018600009F440C0853009F43FC08091E80083FD51 +:101870003DC08091E80082FF06C08091E80082FFB1 +:1018800026C080E008958091E80080FFE3CF20919A +:10189000F3008091F20090E0922B6115710551F0F8 +:1018A0008830910538F421912093F100615071093D +:1018B0000196F3CF21E0089709F020E08091E8003D +:1018C0008E778093E800C6CF2111C7CFD6CF809105 +:1018D000EB01882339F0853039F08091E80083FFEF +:1018E000CCCF04C082E0089583E0089581E008959C +:1018F0002091F2013091F3012617370748F0611566 +:10190000710539F42091E8002E772093E80001C09A +:10191000B901FC0120E061157105C1F18091EB0175 +:10192000882309F441C0853009F440C08091E80063 +:1019300083FD3EC08091E80082FF06C08091E800F0 +:1019400082FF27C080E008958091E80080FFE3CF08 +:101950002091F3008091F20090E0922B61157105C7 +:1019600059F08830910540F424912093F10031968C +:10197000615071090196F2CF21E0089709F020E04B +:101980008091E8008E778093E800C5CF2111C6CF03 +:10199000D5CF8091EB01882339F0853039F08091E3 +:1019A000E80083FFCBCF04C082E0089583E0089570 +:1019B00081E00895982F973058F59093E900981793 +:1019C00039F07091EC002091ED005091F00003C0CF +:1019D000242F762F50E021FF19C03091EB003E7F7D +:1019E0003093EB003091ED003D7F3093ED0030916E +:1019F000EB0031603093EB007093EC002093ED002E +:101A00005093F0002091EE0027FF07C09F5FD3CFD7 +:101A10008F708093E90081E0089580E008958091BF +:101A2000EC0187FD05C08091E80080FF0EC012C068 +:101A30008091E80082FD05C08091EB018111F8CF13 +:101A400008958091E8008B7708C08091EB018111A7 +:101A5000EACF08958091E8008E778093E80008959A +:101A60008091E4009091E50045E62091EC0020FF94 +:101A700021C02091E80020FD21C02091EB0122230C +:101A800089F0253089F02091EB0025FD0FC02091D1 +:101A9000E4003091E5002817390739F3415041F04F +:101AA000C901E3CF82E0089583E0089581E00895BD +:101AB00084E008952091E80022FFDFCF80E00895C0 +:101AC0000E94CE0D0E94D60DE0EEF0E08081816094 +:101AD0008083E8EDF0E080818F77808319BCA7EDEB +:101AE000B0E08C918E7F8C9380818F7E808310926A +:101AF000EA0108950F931F93CF93DF930E94CE0DB9 +:101B00000E94D60DC8EDD0E088818F7788838881C8 +:101B10008068888388818F7D888319BC1092EB014F +:101B20001092E7011092E9011092E80100EE10E036 +:101B3000F80180818B7F808388818160888342E087 +:101B400060E080E00E94DA0CE1EEF0E080818E7FC0 +:101B50008083E2EEF0E08081816080838081886014 +:101B60008083F80180818E7F808388818061888373 +:101B7000DF91CF911F910F910895E8EDF0E0808102 +:101B80008F7E8083E7EDF0E080818160808384E058 +:101B900082BF81E08093EA010C947A0DE8EDF0E0D9 +:101BA00080818E7F80831092E20008951092DA0087 +:101BB0001092E10008951F920F920FB60F92112418 +:101BC0002F933F934F935F936F937F938F939F9345 +:101BD000AF93BF93EF93FF938091E10082FF0BC01F +:101BE0008091E20082FF07C08091E1008B7F8093AB +:101BF000E1000E9437108091DA0080FF1FC08091C1 +:101C0000D80080FF1BC08091DA008E7F8093DA00BD +:101C10008091D90080FF0DC080E189BD82E189BD3E +:101C200009B400FEFDCF81E08093EB010E944C0AD5 +:101C300005C019BC1092EB010E945A0A8091E10084 +:101C400080FF19C08091E20080FF15C08091E20002 +:101C50008E7F8093E2008091E20080618093E200B9 +:101C60008091D80080628093D80019BC85E0809371 +:101C7000EB010E945E0A8091E10084FF30C08091F8 +:101C8000E20084FF2CC080E189BD82E189BD09B4F6 +:101C900000FEFDCF8091D8008F7D8093D800809189 +:101CA000E1008F7E8093E1008091E2008F7E80933F +:101CB000E2008091E20081608093E2008091E70180 +:101CC000882311F084E007C08091E30087FF02C001 +:101CD00083E001C081E08093EB010E945F0A809164 +:101CE000E10083FF29C08091E20083FF25C080913D +:101CF000E100877F8093E10082E08093EB01109206 +:101D0000E7018091E1008E7F8093E1008091E20005 +:101D10008E7F8093E2008091E20080618093E200F8 +:101D200042E060E080E00E94DA0C8091F000886080 +:101D30008093F0000E945D0AFF91EF91BF91AF91F7 +:101D40009F918F917F916F915F914F913F912F91D3 +:101D50000F900FBE0F901F9018951F920F920FB605 +:101D60000F9211242F933F934F935F936F937F9321 +:101D70008F939F93AF93BF93CF93EF93FF93C091B4 +:101D8000E900CF708091EC001092E9008091F000A2 +:101D9000877F8093F00078940E94E90E1092E9000A +:101DA0008091F00088608093F000C093E900FF917B +:101DB000EF91CF91BF91AF919F918F917F916F9153 +:101DC0005F914F913F912F910F900FBE0F901F90F9 +:101DD00018951F93CF93DF93CDB7DEB7AA970FB6B1 +:101DE000F894DEBF0FBECDBFECEEF1E08091F100C4 +:101DF000819321E0E43FF207C9F70E94750A8091C0 +:101E0000E80083FF1CC12091EC013091ED01832F8C +:101E100090E08A30910508F012C1FC01EA5AFF4FA8 +:101E20000C944921203881F0223809F008C18091B2 +:101E3000F0018F708093E9008091EB0085FB88278B +:101E400080F91092E90006C08091E8019091E901C3 +:101E5000911182609091E800977F9093E8008093C1 +:101E6000F1001092F100C5C0822F8D7F09F0E7C00C +:101E7000222319F0223061F0E2C08091EE0181301E +:101E800009F0DDC0333009F080E08093E90128C01B +:101E90008091EE01811124C02091F0012F7009F48E +:101EA000CEC02093E9008091EB0080FF19C08091A3 +:101EB000EB00333011F4806211C080618093EB003D +:101EC00081E090E0022E01C0880F0A94EAF7809327 +:101ED000EA001092EA008091EB0088608093EB00AA +:101EE0001092E9008091E800877F86C02111A7C089 +:101EF0001091EE011F778091E3008078812B809311 +:101F0000E3008091E800877F8093E8000E940F0D36 +:101F10008091E80080FFFCCF8091E300806880938F +:101F2000E300112311F083E001C082E08093EB0114 +:101F300086C02058223008F082C08091EE01909136 +:101F4000EF018C3D23E0920779F583E08A838AE2F2 +:101F500089834FB7F894DE01139620E03EE051E20A +:101F6000E32FF0E050935700E49120FF03C0E29587 +:101F7000EF703F5FEF708E2F90E0EA3010F0C79661 +:101F800001C0C0968D939D932F5F243149F74FBFB9 +:101F90008091E800877F8093E8006AE270E0CE01DC +:101FA00001960E94170C14C0AE014F5F5F4F609105 +:101FB000F0010E945F0B009709F441C02091E800F6 +:101FC000277F2093E800BC0189819A810E94780CC8 +:101FD0008091E8008B778093E80031C0203879F554 +:101FE0008091E800877F8093E8008091E7018093EB +:101FF000F1008091E8008E778093E8000E940F0D39 +:102000001EC021111CC09091EE019230C0F480914D +:10201000E800877F8093E8009093E7010E940F0D0E +:102020008091E701811104C08091E30087FF02C025 +:1020300084E001C081E08093EB010E94610A8091FD +:10204000E80083FF0AC08091E800877F8093E80062 +:102050008091EB0080628093EB00AA960FB6F89413 +:10206000DEBF0FBECDBFDF91CF911F9108950895C0 +:10207000CF938091EB018823B1F08091E9008F70BC +:102080009091EC0090FF02C090E801C090E0C92F51 +:10209000C82B1092E9008091E80083FD0E94E90EB0 +:1020A000CF70C093E900CF91089590936C01809315 +:1020B0006B010895E0916B01F0916C01309721F074 +:1020C0000190F081E02D099480E00895E0916B018A +:1020D000F0916C01309721F00280F381E02D09949A +:1020E0000895E0916B01F0916C01309721F004802C +:1020F000F581E02D099408952091690130916A01DC +:102100008217930771F090936A0180936901E091BF +:102110006B01F0916C01309721F00680F781E02D82 +:1021200009940895209167013091680182179307FF +:1021300071F09093680180936701E0916B01F091D9 +:102140006C01309721F00084F185E02D0994089509 +:1021500008950C94A8100E94131D0E941D030C9456 +:10216000991D9F92AF92BF92CF92DF92EF92FF9212 +:102170000F931F93CF93DF9300D000D000D0CDB743 +:10218000DEB70E9444038CE7E82E81E0F82E0DE0D4 +:1021900010E0CC24C394D12C902E802F0E943104C7 +:1021A000F701B2907F01B826A1F401501109A0F700 +:1021B0008FEF89838A831B820E941C1D8160782F88 +:1021C0009D838C8349815A816B818D810E944B1143 +:1021D00031C09091D60191FF04C08E830E943704D4 +:1021E0008E8125E030E0A601022E01C0440F0A9442 +:1021F000EAF7A42E4B21D1F029839A828A2191E01B +:1022000009F490E09B830E941C1D8160782F9D83C0 +:102210008C8349815A816B818D810E944B11F80119 +:10222000E259FE4F80818A25808304C02150310904 +:10223000D0F6BBCF0E94661F10916D010E945A100C +:102240001817B9F00E945A1080936D0126960FB6A8 +:10225000F894DEBF0FBECDBFDF91CF911F910F91DC +:10226000FF90EF90DF90CF90BF90AF909F900C9435 +:102270006C0926960FB6F894DEBF0FBECDBFDF9176 +:10228000CF911F910F91FF90EF90DF90CF90BF9073 +:10229000AF909F900895CF93DF93CDB7DEB72B9784 +:1022A0000FB6F894DEBF0FBECDBF4F835887698746 +:1022B0007A878B87DE01119686E0FD0111928A955F +:1022C000E9F785E0FE01379601900D928A95E1F7D6 +:1022D00049815A816B817C818D819E810E94F91791 +:1022E0002B960FB6F894DEBF0FBECDBFDF91CF9116 +:1022F0000895882309F4B9C0823859F40E945A100D +:1023000081FDB3C089E30E94401B0E94171C89E332 +:102310000CC0833871F40E945A1080FDA6C083E57A +:102320000E94401B0E94171C83E50E94801B0C9496 +:10233000171C843859F40E945A1082FD96C087E415 +:102340000E94401B0E94171C87E4EFCF9CEF980F60 +:10235000913A18F40E94401BEACF90E2980F98300F +:1023600050F4877091E001C0990F8A95EAF7892FA0 +:102370000E94C41BDCCF9BE5980F933070F4853A24 +:1023800029F0863A31F482E890E005C081E890E0D7 +:1023900002C083E890E00C947C1098E5980F93318C +:1023A00008F063C0883A39F1893A41F18A3A49F133 +:1023B0008B3A51F18C3A59F18D3A61F1803B69F1D8 +:1023C0008E3A71F18F3A79F1813B81F1823B89F14B +:1023D000833B91F1843B99F1853BA1F1863BA9F1C7 +:1023E000873BB1F1883BB9F1893BC1F18A3BC9F523 +:1023F0008AE292E038C082EE90E035C089EE90E04B +:1024000032C08AEE90E02FC085EB90E02CC086EBC6 +:1024100090E029C087EB90E026C08CEC90E023C0D0 +:102420008DEC90E020C083E891E01DC08AE891E047 +:102430001AC082E991E017C084E991E014C081E2FA +:1024400092E011C083E292E00EC084E292E00BC001 +:1024500085E292E008C086E292E005C087E292E061 +:1024600002C080E090E00C9492100895882309F453 +:102470004BC0823859F40E945A1081FF45C089E34D +:102480000E94401B0E94171C89E30CC0833871F422 +:102490000E945A1080FF38C083E50E94401B0E94B2 +:1024A000171C83E50E94801B0C94171C843859F478 +:1024B0000E945A1082FF28C087E40E94401B0E949D +:1024C000171C87E4EFCF9CEF980F913A58F390E2F6 +:1024D000980F983050F4877091E001C0990F8A9559 +:1024E000EAF7892F0E94CA1BDFCF9BE5980F933034 +:1024F00020F480E090E00C947C10885A833120F422 +:1025000080E090E00C9492100895882321F00E94BE +:10251000C41B0C94171C0895882321F00E94CA1B29 +:102520000C94171C08958F929F92AF92BF92CF92F6 +:10253000DF92EF92FF920F931F93CF93DF934C01A3 +:10254000A62EC72FFC01E280D581D295DF700E94B4 +:10255000DB1A882319F082E00E941E1BE1100E9402 +:10256000E11B0E94391B882379F0EE2069F080E29C +:102570008A0D883048F082E00E941E1B0E94391BA1 +:10258000BB24B394B82601C0B12CEC2FE295EF70B8 +:10259000F0E0E05AFF4F0C9449218C2F807F1C2FD4 +:1025A0001F70882311F01295107FEE2089F01123FF +:1025B00009F4C9C180E28A0D883020F4812F0E947D +:1025C000C41B03C0812F0E94D41B0E94171CBBC1D7 +:1025D0008A2D0E943612112309F4CFC180E28A0DA0 +:1025E000883020F4812F0E94CA1B03C0812F0E94D3 +:1025F000DA1B0E94171CC1C18C2F807F1C2F1F70FB +:10260000803211F01295107FAA2021F0F1E0AF1670 +:1026100039F12FC0EE2091F0DD2309F41DC1D13036 +:1026200021F4812F0E94F41BA8C1D23009F014C1FB +:102630000E94FD1B812F0E94A81A0EC1DD2369F0A4 +:10264000D13041F40E94C11B812309F496C10E943C +:10265000AB1A03C0D23009F490C10E94FD1B02C125 +:10266000EE2021F0D23008F088C1F6C0D11185C12A +:10267000F9C0EE2021F0DD2309F4EEC064C1DD23B2 +:1026800009F4F0C067C12C2F26952695237030E001 +:102690002115310521F02130310561F06EC1EE20A8 +:1026A00021F08A2D9C2F937002C080E090E00E9460 +:1026B0007C1063C1EE2021F08A2D9C2F937002C004 +:1026C00080E090E00E94921058C18A2DEE2019F00F +:1026D0000E946E1E02C00E94D61E0E945B1F4DC14A +:1026E0008C2F837009F04EC0E11047C12A2D22952E +:1026F00026952770220F220F8A2D8F70C82ED12C7D +:10270000E12CF12C022E04C0CC0CDD1CEE1CFF1CB5 +:102710000A94D2F7A4FE10C06FE070E080E090E071 +:1027200004C0660F771F881F991F2A95D2F76095FE +:1027300070958095909503C060E070E0CB012C2FE0 +:1027400026952695237030E02230310569F023303C +:10275000310589F06C297D298E299F292130310589 +:1027600071F00E944D1909C16C297D298E299F297C +:102770000E94671902C10E944D19C701B6010E944B +:102780003319FBC0EE2019F08C2F817001C08695A3 +:10279000882309F4F2C02A2D229526952770220F4E +:1027A000220F8A2D8F70C82ED12CE12CF12C022EF5 +:1027B00004C0CC0CDD1CEE1CFF1C0A94D2F7A4FE56 +:1027C00010C06FE070E080E090E004C0660F771FFB +:1027D000881F991F2A95D2F76095709580959095DE +:1027E00003C060E070E0CB012C2F26952695237066 +:1027F00030E02230310569F02330310589F06C2951 +:102800007D298E299F292130310571F00E94211ADE +:10281000B4C06C297D298E299F290E943B1AADC026 +:102820000E94211AC701B6010E94071AA6C00A2DEC +:1028300010E0F801E05EF109E531F10508F07EC035 +:10284000E059FF4F0C9449211A2D1F708C2F8F7166 +:10285000EE2031F00E94A019812F0E9485128DC0B8 +:102860000E94C119812F0E948C1287C0EE2039F07E +:10287000D11183C08C2F8F710E94E6197EC0D23097 +:1028800008F07BC0F7CFEE2039F08C2F8F710E94BB +:10289000A01973C0EE20C9F38C2F8F710E94C1194B +:1028A0006CC0EE2029F08C2F8F710E948B1965C0AF +:1028B0000E94811962C0EE20B9F00E94A51A0E9400 +:1028C000CA1B0E94D71A843029F40E94171B8C2F30 +:1028D0008F7164C0D23008F06FC0CF718C2F0E940E +:1028E000A01963E08C2F0DC00E94A51A0E94C41B82 +:1028F000D230A8F00E94171B0E94AB1A64E08C2F04 +:102900008F71DF91CF911F910F91FF90EF90DF902A +:10291000CF90BF90AF909F908F900C94071B81E059 +:10292000DF91CF911F910F91FF90EF90DF90CF90AB +:10293000BF90AF909F908F900C941E1BEE2039F0AB +:10294000DD2309F4A2CF8A2D0E94791116C0DD2360 +:1029500009F4A2CF8A2D0E9436120FC04C2F4F705F +:102960006A2DC4010E940B050E94A61806C04C2FB8 +:102970004F706A2DC4010E94DC08BB20E9F00E9460 +:10298000D71A80FD19C0F40112820E94D11A0E9448 +:10299000A019C4010E94E9140E94D11ADF91CF91BD +:1029A0001F910F91FF90EF90DF90CF90BF90AF906D +:1029B0009F908F900C94C119DF91CF911F910F912F +:1029C000FF90EF90DF90CF90BF90AF909F908F904F +:1029D00008950F931F93CF93DF93EC0128813981E2 +:1029E0008B819C81892B31F03F3F11F080E003C047 +:1029F0002F3FE1F781E0811113C0CE010E949505C0 +:102A0000882371F0688179818A810E94A11A8C01E2 +:102A10000E94551A0E942819B801CE010E949312F3 +:102A2000DF91CF911F910F9108950E94E11B0E94A9 +:102A3000F11B0E94B31B0E94171C0E9407200E94DA +:102A40005B1F80E090E00E947C1080E090E00C949E +:102A500092100E94D11B0C9415150E94961A292FD2 +:102A600022952F7030E02C3031054CF42A3031059E +:102A70006CF42250310922303105B0F407C02C30FB +:102A8000310571F02F30310559F00EC0803F31F023 +:102A900018F4803E48F402C0843F31F481E0089588 +:102AA00093FB882780F9089580E00895CF93DF9302 +:102AB00000D000D01F92CDB7DEB70F900F900F90CF +:102AC0000F900F90DF91CF910895CF93DF9300D0B7 +:102AD00000D000D0CDB7DEB726960FB6F894DEBF93 +:102AE0000FBECDBFDF91CF9108951F93CF93DF939A +:102AF000C0917C0116E080917D01C81799F0D0E06B +:102B00001C9FF0011D9FF00D1124E258FE4F4081E3 +:102B1000518162817381848195810E94651521961E +:102B2000C770E9CFDF91CF911F9108954091AE0119 +:102B30005091AF016091B0017091B1018091B201EB +:102B40009091B3010C946515CF938091B301829558 +:102B50008F7009F05FC08091B001882309F45AC0DA +:102B600020917C01A0917D016091AE017091AF0137 +:102B70008091B1019091B20131E06F3F09F030E0F6 +:102B8000B32FC6E02A1709F445C0009721F07F3F14 +:102B900021F44B2F03C041E001C040E030E040FD94 +:102BA00035C0C29FF001C39FF00D1124E258FE4FC3 +:102BB000418174132BC04081641328C042814111AC +:102BC00025C0438154814817590710F441505109D9 +:102BD000481B590B483C5105C8F48091B3018F70D4 +:102BE00080618093B30186E0829FF001839FF00DA6 +:102BF0001124ED57FE4F80818F70806180838EEAB3 +:102C000091E00E94E914CF910C9475152F5F3F4F0E +:102C10002770B8CFCF910895CF92DF92EF92FF92B5 +:102C20000F931F93CF93DF93CDB7DEB762970FB6A5 +:102C3000F894DEBF0FBECDBF8C0185E0F801DE0148 +:102C40001D9601900D928A95E1F7D8014C9111964D +:102C50005C91119712966C9112971396ED90FC90DF +:102C600014977091AE01E091AF012091B1013091C4 +:102C7000B2012115310531F0EF3F31F481E07F3FA2 +:102C800019F403C081E001C080E0B82FB170CB2EF1 +:102C900080FD6CC1D090B001DD2009F4F5C0F09149 +:102CA000B301E216F30638F0C701821B930B883C90 +:102CB000910548F09BC0209530952E0D3F1D283C76 +:102CC000310508F093C08F2F807F09F052C0E513C3 +:102CD00014C0741312C0D62E61110FC0FF70F061C2 +:102CE000F093B3010E9496158EEA91E00E94E914D8 +:102CF0008091B301F80185836CC1EF2831F05F3F0B +:102D000031F481E04F3F19F403C081E001C080E05D +:102D100080FD03C081E0862701C080E0F82FF170BC +:102D2000FF2E80FF1CC080917C0120917D0136E048 +:102D3000821709F428C190E0389FF001399FF00D07 +:102D40001124E258FE4F7181571306C0708147135A +:102D500003C07281671303C001968770E9CFD62E36 +:102D6000662309F436C18091B30181608093B30179 +:102D700053C0E51308C0741306C0611104C0D80124 +:102D80001596FC93AEC04D875E878D859E856A8BB8 +:102D90000E942D156A89882329F1D62E662311F108 +:102DA0002091B301822F82958F7090E002970CF4EE +:102DB00060C08091AE019091AF0198878F83198692 +:102DC000FB86EA862C87CE01079651C0E51731F1C4 +:102DD0004D875E878D859E856A8B0E942D156A8939 +:102DE00081112EC0C8010E94E914A4C08F2F807FDA +:102DF00069F77E2DF98AE88A89890E9456158EEA3C +:102E000091E00E94E914EEEAF1E086E0DF011D9214 +:102E10008A95E9F70E949615D12CDBC07413D8CFA0 +:102E20006111D6CFD8011596FC93C8010E94E91410 +:102E3000EEEAF1E086E0DF011D928A95E9F7C9C06C +:102E4000D62E662379F22091B301822F82958F705E +:102E500090E0029774F08091AE019091AF019A8357 +:102E600089831B82FD82EC822E83CE0101960E9413 +:102E7000E91486E0F801AEEAB1E001900D928A957E +:102E8000E1F70E94A4156FC0E216F30628F0C7010F +:102E9000821B930B9C0104C0209530952E0D3F1D85 +:102EA000283C310508F052C0D62E662309F49ACF8B +:102EB000E5132CC074132AC08091B30180FD1DC09E +:102EC000982F92959F70C9F0D80115968C931597FD +:102ED0009F3039F09F5F9295907F8F70892B159668 +:102EE0008C93C8010E94E91486E0F801AEEAB1E0D3 +:102EF00001900D928A95E1F736C086E0F801AEEABE +:102F0000B1E001900D928A95E1F763C04D875E872D +:102F10008D859E850E942D15882379F086E0F80125 +:102F2000AEEAB1E001900D928A95E1F70E94A415F6 +:102F30000E949615DD24D3944CC08091B30181602A +:102F40008093B301C8010E94E91443C07E2DF98A21 +:102F5000E88A89890E945615EEEAF1E086E0DF01F1 +:102F60001D928A95E9F70E94961533C0662309F4ED +:102F700039CF4D875E878D859E850E942D158823CC +:102F800009F430CFCBCF4D875E878D859E850E941B +:102F9000961A292F22952F7030E0223031052CF41B +:102FA0009F7041F0811106C00CC0243031052CF413 +:102FB0009F7049F4805E883020F0C8010E94E914B7 +:102FC000CF2CDC2C06C0D80115969C91907F91F7F0 +:102FD000F8CF8D2D62960FB6F894DEBF0FBECDBF31 +:102FE000DF91CF911F910F91FF90EF90DF90CF90E5 +:102FF00008951F93CF93DF93CDB7DEB72C970FB60D +:10300000F894DEBF0FBECDBF4F83588769877A879C +:103010008B879C87CE0107960E940C168823C1F0EF +:103020002F8138858A859B85892B31F03F3F11F0B0 +:1030300080E003C02F3FE1F781E0811147C04F815D +:10304000588569857A858B859C850E9465153EC06B +:1030500086E0FE013796DE01119601900D928A9569 +:10306000E1F7FF81E8854A855B854115510531F01F +:10307000EF3F31F481E0FF3F19F403C081E001C06C +:1030800080E080FD23C020917D0130E0C9010196E0 +:103090008770992760917C0170E086179707F1F19E +:1030A000F983EA835D834C8396E0929FD001939FDE +:1030B000B00D1124A258BE4FFE01319601900D9221 +:1030C0009A95E1F780937D010E94751516E0809135 +:1030D0007C0190917D01891779F1189FC00111241D +:1030E00082589E4F0E940C16882331F1E0917C019A +:1030F0001E9FF0011124E258FE4F408151816281F0 +:103100007381848195810E94651580917C0190E096 +:1031100001968770992780937C01D9CF0E94291549 +:1031200010927D0110927C01EEEAF1E086E0DF0171 +:103130001D928A95E9F7CACF2C960FB6F894DEBF98 +:103140000FBECDBFDF91CF911F910895EF92FF92F7 +:103150000F931F93CF93DF939C01009709F471C0E5 +:10316000F12CEE24E394E9012196F901849184374E +:1031700040F4843008F056C0813081F0823021F173 +:1031800060C0853709F449C0C0F19CE7980F9037BB +:1031900008F057C08F770E94361246C089010E5F33 +:1031A0001F4FFE01849190E2980F983050F4877081 +:1031B000FE2D01C0FF0F8A95EAF78F2F0E94E41BB6 +:1031C00015C00E94791114C089010E5F1F4FFE01C6 +:1031D000849190E2980F983068F48770FE2D01C0BA +:1031E000FF0F8A95EAF78F2F0E94EA1B0E94171C97 +:1031F000E8011AC00E943612FBCF2E5F3F4FFE013E +:10320000C491CC2341F08FE99FE00197F1F700C012 +:103210000000C150F6CFE90107C0FE01F490E901BA +:10322000229602C00E9479118F2D882341F0EFE988 +:10323000FFE03197F1F700C000008150F6CF9E010A +:1032400092CFDF91CF911F910F91FF90EF90089552 +:1032500008956093B8017093B9018093BA01909377 +:10326000BB010C9415150F931F930091B801109199 +:10327000B9012091BA013091BB01062B172B282BE5 +:10328000392B0093B8011093B9012093BA01309300 +:10329000BB011F910F910C9415150F931F93009173 +:1032A000B8011091B9012091BA013091BB010623F8 +:1032B0001723282339230093B8011093B9012093D1 +:1032C000BA013093BB011F910F910C9415150F9308 +:1032D0001F930091B8011091B9012091BA0130916A +:1032E000BB0106271727282739270093B801109319 +:1032F000B9012093BA013093BB011F910F910C9437 +:1033000015151092B4011092B5011092B6011092E9 +:10331000B7010C94151541E050E060E070E004C086 +:10332000440F551F661F771F8A95D2F74093B4014B +:103330005093B5016093B6017093B7010C941515C5 +:1033400041E050E060E070E004C0440F551F661F8C +:10335000771F8A95D2F78091B4019091B501A09121 +:10336000B601B091B701842B952BA62BB72B809378 +:10337000B4019093B501A093B601B093B7010C943A +:10338000151541E050E060E070E004C0440F551FA7 +:10339000661F771F8A95D2F7409550956095709576 +:1033A0008091B4019091B501A091B601B091B7019F +:1033B00084239523A623B7238093B4019093B5016A +:1033C000A093B601B093B7010C94151541E050E0FD +:1033D00060E070E004C0440F551F661F771F8A9598 +:1033E000D2F78091B4019091B501A091B601B0914E +:1033F000B70184279527A627B7278093B401909318 +:10340000B501A093B601B093B7010C9415150F93B5 +:103410001F930091B4011091B5012091B601309134 +:10342000B701062B172B282B392B0093B4011093CF +:10343000B5012093B6013093B7011F910F910C9401 +:1034400015150F931F930091B4011091B5012091B0 +:10345000B6013091B701062317232823392300939F +:10346000B4011093B5012093B6013093B7011F91B9 +:103470000F910C9415150F931F930091B4011091A7 +:10348000B5012091B6013091B701062717272827EB +:1034900039270093B4011093B5012093B6013093FE +:1034A000B7011F910F910C9415150895CF92DF92DB +:1034B000EF92FF920F931F93CF93DF93EC01C09095 +:1034C000B801D090B901E090BA01F090BB018091B1 +:1034D000B4019091B501A091B601B091B701C82A8D +:1034E000D92AEA2AFB2A0FE110E0B701A601002E33 +:1034F00004C076956795579547950A94D2F740FD95 +:1035000005C00150110988F780E007C0BE01802F77 +:103510000E945D070197A9F3802FDF91CF911F9142 +:103520000F91FF90EF90DF90CF900895CF93DF93AE +:10353000EC010E94561ABE010E945D07DF91CF91F7 +:103540000895CB010E94961A08958091C1010895B3 +:103550008093C10108951092C10108950E941C1D1D +:103560002091BF013091C0018217930750F00E9453 +:103570001C1D2091BF013091C001821B930B9C0147 +:103580000AC00E941C1D2091BF013091C0012095EE +:103590003095280F391F81E02C32314008F480E04B +:1035A00008958091BE0185958595859508958091B2 +:1035B000BE01877008950E941C1D2091BC013091AE +:1035C000BD018217930768F00E941C1D2091BC0169 +:1035D0003091BD01821B930B8C32914078F480E0D6 +:1035E00014C00E941C1D2091BC013091BD0120958A +:1035F0003095280F391F2C32314088F38091BE015D +:1036000082FB882780F991E089278170089598E0EE +:10361000899F90011124622B6093BE010E94A01922 +:103620000E941C1D9093BD018093BC0108951092CF +:10363000BE011092BD011092BC0108954091BE01DF +:10364000809584238093BE01982F977089F450E071 +:10365000282F332727FD30954217530749F08595CA +:10366000859585950E94C1191092BD011092BC01EB +:1036700008959091BE01977081E009F480E008956B +:1036800090910C019923D9F090910D019923B9F0F3 +:10369000982F9695969596959F3088F5E0910E0116 +:1036A000F0910F01E90FF11D877021E030E001C0BA +:1036B000220F8A95EAF78181822B818308954091B8 +:1036C0000E0150910F0120E030E09FEFFA01E20F70 +:1036D000F31F6281681799F09F3F19F4611101C0CF +:1036E000922F2F5F3F4F2E30310581F79F3F39F0EA +:1036F000FA01E90FF11D97FDFA9582830895089567 +:1037000090910C019923E1F090910D019923C1F062 +:10371000982F9695969596959F3020F5E0910E01FD +:10372000F0910F01E90FF11D877021E030E001C039 +:10373000220F8A95EAF72095818128232183089515 +:1037400040910E0150910F0120E030E0FA01E20FAC +:10375000F31F9281981301C012822F5F3F4F2E30CA +:103760003105A1F7089581E090E0E0910E01F0911C +:103770000F01E80FF91F1082019680319105A9F71A +:1037800008958091D50108959091D501982B90933B +:10379000D501089580959091D50198239093D501F6 +:1037A00008951092D50108959091D401982B90938B +:1037B000D401089580959091D40198239093D401D9 +:1037C00008951092D40108959091D301982B90936D +:1037D000D301089580959091D30198239093D301BC +:1037E00008951092D30108958093C2010E941C1D78 +:1037F0009093C0018093BF0108951092C20110926E +:10380000C0011092BF01089540910E0150910F0127 +:1038100020E030E080E0FA01E20FF31F9181911186 +:103820008F5F2F5F3F4F2F303105A9F70895E0914B +:103830000E01F0910F018091D5018083E0910E017E +:10384000F0910F0180819091D401892B8083E091C8 +:103850000E01F0910F0180819091D301892B80831B +:103860008091C201882399F00E94AE1A81110E94B2 +:10387000FD1BE0910E01F0910F0180819091C2013A +:10388000892B80830E94041C81110E94FD1B809162 +:103890000E0190910F010C94661040E0009739F0F2 +:1038A0009C0121503109822393234F5FF7CF842F4E +:1038B0000895CF92DF92EF92FF920F931F936C01C6 +:1038C000EE24FF24C114D104E104F10421F46B01BE +:1038D0007C0180E001C080E133272F2D1E2D0D2DAE +:1038E000011511052105310519F0885F680179017D +:1038F00097018601A4E03695279517950795AA9517 +:10390000D1F7011511052105310519F08C5F68010A +:10391000790197018601F2E036952795179507956D +:10392000FA95D1F7011511052105310519F08E5FC2 +:1039300068017901B701A601769567955795479576 +:10394000452B462B472B09F08F5F1F910F91FF905E +:10395000EF90DF90CF9008958091EB01843021F1BA +:103960001092D70120E488E190E00FB6F894A89572 +:10397000809360000FBE2093600080E00E946C097D +:1039800083B7817F846083BF83B7816083BF78946E +:10399000889583B78E7F83BF88E10FB6F8948093B4 +:1039A0006000109260000FBE089508950E943103D8 +:1039B0000E9444030E94D51C0E94380491E08111AA +:1039C00001C090E0892F08950E9429150E945A1085 +:1039D0000C946C091F920F920FB60F9211248F93C3 +:1039E0009F93AF93BF938091D701811113C08091B2 +:1039F000D8019091D901A091DA01B091DB014196F3 +:103A0000A11DB11D8093D8019093D901A093DA0133 +:103A1000B093DB01BF91AF919F918F910F900FBE3B +:103A20000F901F90189582E084BD93E095BD9AEFAA +:103A300097BD80936E0008952FB7F8948091D801B8 +:103A40009091D901A091DA01B091DB012FBF0895C7 +:103A5000CF92DF92EF92FF920F931F932FB7F894BC +:103A60004091D8015091D9016091DA017091DB0148 +:103A70002FBF6A017B01EE24FF248C0120E030E09F +:103A8000C016D106E206F30610F441505109481B56 +:103A9000590BCA011F910F91FF90EF90DF90CF90CB +:103AA00008951F920F920FB60F9211248F939F9338 +:103AB000AF93BF938091D8019091D901A091DA0181 +:103AC000B091DB010196A11DB11D8093D8019093A7 +:103AD000D901A093DA01B093DB01BF91AF919F911F +:103AE0008F910F900FBE0F901F9018950E94600D40 +:103AF000F8942FEF87EA91E6215080409040E1F75B +:103B000000C0000087E090EBDC018093F40190930B +:103B1000F501A093F601B093F7012CE088E190E065 +:103B20000FB6F894A895809360000FBE20936000B4 +:103B3000FFCF0E94D11D811102C00E94B71D0E94BB +:103B4000DC1D8093D6010E94E41D90E09093E60175 +:103B50008093E50187FB882780F980930D010E94FF +:103B6000E01D682F70E080E090E00C9429196DEE64 +:103B70007EEF80E090E00E94832160E082E090E0B0 +:103B80000E94712160E083E090E00E94712160E07A +:103B900084E090E00E94712160E085E090E00C9468 +:103BA000712180E090E00E946B2121E08D3E9E4FCC +:103BB00009F020E0822F089582E090E00C946321C8 +:103BC00083E090E00C94632184E090E00C94632106 +:103BD000682F84E090E00C9471218091DE0180FFD9 +:103BE0000BC06091130185E0689FB00111247595A9 +:103BF0006795759567952AC081FF09C0609113018B +:103C000085E0689FB0011124759567951FC082FFFC +:103C100007C06091130185E0689FB001112416C0B0 +:103C20004091DF014423C9F060911201461788F7E3 +:103C30002091130185E0289F90011124429FC0012B +:103C4000439F900D112470E00E943521603871056A +:103C500040F46115710539F002C065E070E0862F0F +:103C600008958FE7089581E008958091DE0180FF37 +:103C700008C06091110170E075956795759567951D +:103C800021C081FF06C06091110170E075956795B4 +:103C900019C082FF04C06091110170E010C08091D2 +:103CA000DF018823C1F0609110018617A0F7909181 +:103CB0001101989FC001112470E00E9435216038E5 +:103CC000710528F46115710521F0862F08958FE79D +:103CD000089581E0089561E070E0F4CF803F21F421 +:103CE0000E94ED1D819504C0813F29F40E94ED1DC5 +:103CF0008093E2010895823F21F40E94ED1D819599 +:103D000004C0833F29F40E94ED1D8093E1010895D2 +:103D1000893F19F40E94351E05C08A3F31F40E9484 +:103D2000351E81958093E30108958B3F21F40E9415 +:103D3000351E819504C08C3F29F40E94351E809366 +:103D4000E4010895843F21F48091E001816017C06F +:103D5000853F21F48091E001826011C0863F21F40B +:103D60008091E00184600BC0873F21F48091E001E5 +:103D7000886005C0883F31F48091E00180618093C4 +:103D8000E00108958D3F21F48091DE0181600BC038 +:103D90008E3F21F48091DE01826005C08F3F29F4BF +:103DA0008091DE0184608093DE010895803F39F4C4 +:103DB0008091E20187FF6CC01092E20169C0813FEF +:103DC00029F48091E2011816BCF362C09091E101E0 +:103DD000823F29F497FF5CC01092E10159C0833FF4 +:103DE00019F41916CCF354C0893F41F48091E301D2 +:103DF00018160CF04DC01092E3014AC08A3F29F416 +:103E00008091E30187FF44C0F6CF8B3F39F4809166 +:103E1000E40187FF3DC01092E4013AC08C3F29F4D1 +:103E20008091E4011816BCF333C0843F21F48091E3 +:103E3000E0018E7F17C0853F21F48091E0018D7FE6 +:103E400011C0863F21F48091E0018B7F0BC0873F3A +:103E500021F48091E001877F05C0883F31F4809193 +:103E6000E0018F7E8093E00113C08D3F21F48091AB +:103E7000DE018E7F0BC08E3F21F48091DE018D7FAD +:103E800005C08F3F29F48091DE018B7F8093DE0196 +:103E90008091E10181110EC08091E20181110AC07F +:103EA0008091E301811106C08091E401811102C07B +:103EB0001092DF01089580EE91E00E9471100E943F +:103EC0001C1D9093DD018093DC0108951F93CF9317 +:103ED000DF938091DC019091DD010E94281D4091CB +:103EE000DF01442321F02091140130E006C020912D +:103EF00015015AE0259F900111248217930708F4B9 +:103F000082C08091E1011091E201D091E301C09162 +:103F1000E401811107C0111105C0D11103C0CC23E8 +:103F200009F471C04F3F19F04F5F4093DF0118163D +:103F300024F40E94ED1D8093E1018091E10187FF4F +:103F400005C00E94ED1D81958093E101111624F4B6 +:103F50000E94ED1D8093E2018091E20187FF05C080 +:103F60000E94ED1D81958093E2016091E10166233D +:103F700039F11091E201112319F1772767FD70954E +:103F8000872F972F0E94462023E333E343E35FE329 +:103F90000E94AA200E9413206093E101612F7727DD +:103FA00067FD7095872F972F0E94462023E333E308 +:103FB00043E35FE30E94AA200E9413206093E20182 +:103FC0001D1624F40E94351E8093E3018091E301C5 +:103FD00087FF05C00E94351E81958093E3011C1662 +:103FE00024F40E94351E8093E4018091E40187FF50 +:103FF00005C00E94351E81958093E401DF91CF9129 +:104000001F910C945B1FDF91CF911F910895E0EEFB +:10401000F1E085E0DF011D928A95E9F71092DF015A +:104020001092DE01089504D06894B1118DC00895F6 +:1040300070D088F09F5790F0B92F9927B751A0F012 +:10404000D1F0660F771F881F991F1AF0BA95C9F72C +:1040500012C0B13081F077D0B1E0089574C0672FFD +:10406000782F8827B85F39F0B93FCCF386957795DC +:104070006795B395D9F73EF49095809570956195C5 +:104080007F4F8F4F9F4F0895E89409C097FB3EF4F0 +:1040900090958095709561957F4F8F4F9F4F992395 +:1040A000A9F0F92F96E9BB279395F6958795779513 +:1040B0006795B795F111F8CFFAF4BB0F11F460FFD3 +:1040C0001BC06F5F7F4F8F4F9F4F16C0882311F02B +:1040D00096E911C0772321F09EE8872F762F05C03F +:1040E000662371F096E8862F70E060E02AF09A95DA +:1040F000660F771F881FDAF7880F9695879597F9CF +:10410000089557FD9058440F551F59F05F3F71F0C7 +:104110004795880F97FB991F61F09F3F79F087952E +:104120000895121613061406551FF2CF4695F1DFB7 +:1041300008C0161617061806991FF1CF8695710547 +:10414000610508940895E894BB2766277727CB017B +:1041500097F908950BD078C069D028F06ED018F088 +:10416000952309F05AC05FC01124EECFCADFA0F337 +:10417000959FD1F3950F50E0551F629FF001729FFC +:10418000BB27F00DB11D639FAA27F00DB11DAA1F1B +:10419000649F6627B00DA11D661F829F2227B00D68 +:1041A000A11D621F739FB00DA11D621F839FA00DF3 +:1041B000611D221F749F3327A00D611D231F849F43 +:1041C000600D211D822F762F6A2F11249F5750409A +:1041D0008AF0E1F088234AF0EE0FFF1FBB1F661F35 +:1041E000771F881F91505040A9F79E3F510570F0EE +:1041F00014C0AACF5F3FECF3983EDCF38695779529 +:104200006795B795F795E7959F5FC1F7FE2B880FE8 +:10421000911D9695879597F9089597F99F6780E87E +:1042200070E060E008959FEF80EC089500240A9408 +:104230001616170618060906089500240A94121681 +:104240001306140605060895092E0394000C11F4B4 +:10425000882352F0BB0F40F4BF2B11F460FF04C061 +:104260006F5F7F4F8F4F9F4F089597FB072E16F478 +:10427000009407D077FD09D00E944F2107FC05D09C +:104280003EF4909581959F4F0895709561957F4F6D +:104290000895EE0FFF1F0590F491E02D0994AA1BDD +:1042A000BB1B51E107C0AA1FBB1FA617B70710F021 +:1042B000A61BB70B881F991F5A95A9F78095909553 +:1042C000BC01CD010895F999FECF92BD81BDF89A48 +:1042D000992780B50895A8E1B0E042E050E00C9441 +:1042E0008B21262FF999FECF92BD81BDF89A0197B7 +:1042F00000B4021639F01FBA20BD0FB6F894FA9A2E +:10430000F99A0FBE08950196272F0E9472210C94EE +:104310007121DC01CB01FC01F999FECF06C0F2BD91 +:10432000E1BDF89A319600B40D9241505040B8F773 +:064330000895F894FFCF90 +:1043360002206E09FB09D809A40971090101C3010C +:1043460028080A03140A404D363979042C04F6036A +:0A435600BD035003690382039B03BB +:00000001FF diff --git a/keyboards/ergodox_ez/keymaps/erez_experimental/config.h b/keyboards/ergodox_ez/keymaps/erez_experimental/config.h new file mode 100644 index 0000000000..e5d7fe1885 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/erez_experimental/config.h @@ -0,0 +1,12 @@ +#ifndef CONFIG_USER_H +#define CONFIG_USER_H + +#include "../../config.h" + +#define ONESHOT_TAP_TOGGLE 2 +#define ONESHOT_TIMEOUT 300 + +#undef LEADER_TIMEOUT +#define LEADER_TIMEOUT 300 + +#endif diff --git a/keyboards/ergodox_ez/keymaps/erez_experimental/keymap.c b/keyboards/ergodox_ez/keymaps/erez_experimental/keymap.c new file mode 100644 index 0000000000..04ad2a8167 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/erez_experimental/keymap.c @@ -0,0 +1,199 @@ +#include +#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 + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | = | 1 | 2 | 3 | 4 | 5 | LEFT | | RIGHT| 6 | 7 | 8 | 9 | 0 | - | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Del | Q | W | E | R | T | L1 | | L1 | Y | U | I | O | P | \ | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | BkSp | A | S | D | F | G |------| |------| H | Alt/J| K | L |; / L2| LGui/' | + * |--------+------+------+------+------+------| Hyper| | Meh |------+------+------+------+------+--------| + * |LShift/(|Z/Ctrl| X | C | V | B | [ | | ] | N | M | , | . |//Ctrl|RShift/)| + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * |Grv/L1| '" |AltShf| Left | Right| | Up | Down | [ | ] | -/L1 | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | App | LGui | | Alt |Ctrl/Esc| + * ,------|------|------| |------+--------+------. + * | | | Home | | PgUp | | | + * | Space|Leader|------| |------| Tab/L1 |Enter | + * | | | End | | PgDn | | | + * `--------------------' `----------------------' + */ +// If it accepts an argument (i.e, is a function), it doesn't need KC_. +// Otherwise, it needs KC_* +[BASE] = KEYMAP( // layer 0 : default + // left hand + KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, KC_LEFT, + KC_DELT, KC_Q, KC_W, KC_E, KC_R, KC_T, TG(SYMB), + KC_BSPC, KC_A, KC_S, KC_D, KC_F, KC_G, + KC_LSPO, CTL_T(KC_Z), KC_X, KC_C, KC_V, KC_B, ALL_T(KC_LBRC), + LT(SYMB,KC_GRV),KC_QUOT, LALT(KC_LSFT), KC_LEFT, KC_RGHT, + ALT_T(KC_APP), KC_LGUI, + KC_HOME, + KC_SPC,KC_LEAD,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, + KC_H,ALT_T(KC_J),KC_K, KC_L, LT(MDIA,KC_SCLN),GUI_T(KC_QUOT), + MEH_T(KC_RBRC),KC_N,KC_M, KC_COMM,KC_DOT, CTL_T(KC_SLSH), KC_RSPC, + KC_UP, KC_DOWN,KC_LBRC,KC_RBRC, LT(SYMB,KC_MINS), + KC_LALT, CTL_T(KC_ESC), + KC_PGUP, + KC_PGDN,LT(SYMB, KC_TAB), KC_ENT + ), +/* Keymap 1: Symbol Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | | | | | | | | | | | | F12 | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | 1 | 2 | 3 | 4 | 5 |------| |------| & | _ | - | ; | + | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | 6 | 7 | 8 | 9 | 0 | | | | | | @ | = | % | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | |NxtTab|PrvTab| | | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// SYMBOLS +[SYMB] = KEYMAP( + // left hand + KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, + KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_1, KC_2, KC_3, KC_4, KC_5, + KC_TRNS, KC_6, KC_7, KC_8, KC_9, KC_0, KC_TRNS, + KC_TRNS, KC_TRNS,KC_TRNS,LCTL(KC_PGUP), LCTL(KC_PGDN), + 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_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_F12, + KC_AMPR, KC_UNDS, KC_MINS, CM_SCLN, KC_PLUS, KC_TRNS, + KC_TRNS, KC_PIPE, KC_AT, KC_EQL, KC_PERC, 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 +), +/* Keymap 2: Media and mouse keys + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | PgUp | Home | End | PgDn | |------| |------| | | | | | Play | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | | Prev | Next | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | |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_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_PGUP, KC_HOME, KC_END, KC_PGDN, 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_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, + KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, + KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_WBAK +), +}; + +const uint16_t PROGMEM fn_actions[] = { + [1] = ACTION_LAYER_TAP_TOGGLE(SYMB), // FN1 - Momentary Layer 1 (Symbols) + [2] = ACTION_MACRO_TAP(0), // Eric Tang's Famous Macro! + [3] = ACTION_MACRO_TAP(1) // Eric Tang's Famous Macro! +}; + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + return MACRO_NONE; +}; + +// Runs just one time when the keyboard initializes. +void matrix_init_user(void) { + +}; + +LEADER_EXTERNS(); + +// 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; + } + + LEADER_DICTIONARY() { + leading = false; + leader_end(); + + SEQ_ONE_KEY(KC_W) { + register_code(KC_LALT); + register_code(KC_F4); + unregister_code(KC_F4); + unregister_code(KC_LALT); + } + SEQ_ONE_KEY(KC_O) { + register_code(KC_LCTL); + register_code(KC_LSFT); + register_code(KC_O); + unregister_code(KC_O); + unregister_code(KC_LSFT); + unregister_code(KC_LCTL); + } + } +} + diff --git a/keyboards/ergodox_ez/keymaps/erez_experimental/readme.md b/keyboards/ergodox_ez/keymaps/erez_experimental/readme.md new file mode 100644 index 0000000000..66acfa187b --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/erez_experimental/readme.md @@ -0,0 +1,51 @@ +# Erez's experimental layout + +This is my personal layout which I use to test out ideas which may or may not make it onto the default layout we ship with. It's based off the default layout, with various tweaks. + +Changelog: + +## May 24, 2016: + +* Implements Leader key example + * Leader, W sends Alt-F4 + * Leader, O sends Ctrl-shift-o (a shortcut I use in FrontApp) + +## May 8, 2016: + +* Makes bottom-right key send minus/underscore when tapped, L1 temporary toggle when held +* Tweaked the positions of the numbers on the symbol layer. Basically, 12345 are now directly under their number-row counterparts in layer 0. You can imagine pulling the number row down to the home row. And 67890 are directly under 12345 - so it's a matter of just adding 5 and going to the next row (1+5 = 6, 2+5 = 7 and so on). +* Tweaks media/nav layer + * Removes mouse control, as I don't use it + * Makes left home row keys PgUp, Home, End, PgDn + +## Apr 29, 2016: + +* Tweaks the Hyper and Meh key to send brackets when tapped +* Turns bottom-right key into a minus/underscore (easy to reach with the right pinky) + +## Apr 25, 2016: + +* Made it so that the right and left Shift keys send opening and closing parens ( ) when tapped + +## 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: + * Put the minus, underscore, and semicolon right in the homerow for the right hand + * Parens are in better places for me + * The arrow keys now send Ctrl-PgUp and Ctrl-PgDn, for switching browser tabs with the arrows when in symbol layer + * Tab (right-hand outer thumb key) now does double duty to toggle symbol layer when held down + * Backspace (left-hand outer thumb key) now just toggles symbol layer (I wasn't using it as a backspace) + + +## Jan 19, 2016: + +* 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). + diff --git a/keyboards/ergodox_ez/keymaps/german-kinergo/compiled.hex b/keyboards/ergodox_ez/keymaps/german-kinergo/compiled.hex new file mode 100644 index 0000000000..1ecea9fa49 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/german-kinergo/compiled.hex @@ -0,0 +1,1158 @@ +:100000000C947A020C94BE020C94BE020C94BE02B4 +:100010000C94BE020C94BE020C94BE020C94BE0260 +:100020000C94BE020C94BE020C94640D0C94360E1B +:100030000C94BE020C94BE020C94BE020C94BE0240 +:100040000C94BE020C9440220C94BE020C94BE028E +:100050000C94BE020C94D31B0C94BE020C94BE02F2 +:100060000C94BE020C94BE020C94BE020C94BE0210 +:100070000C94BE020C94BE020C94BE020C94BE0200 +:100080000C94BE020C94BE020C94BE020C94BE02F0 +:100090000C94BE020C94BE020C94BE020C94BE02E0 +:1000A0000C94BE020C94BE020C94BE02A30EC50EAC +:1000B000B30FC50EB30F0A0F2D0FB30F820F950F9D +:1000C0006412641293129312C912E9121A141A14C8 +:1000D000F4121A14A413A4130B141A141A141414DB +:1000E000B113B113B113B113B113B113B113B113F0 +:1000F000B113B113B113B113B113B113B113B113E0 +:10010000C313D013D713DE13E8130000F0A12900A6 +:100110002B003900E100E30000001E001400040081 +:100120001D0035004D001F001A0016001B00640062 +:100130004C00200008000700060050002A002100A3 +:100140001500090019004F004A00220017000A009C +:1001500005000000E0002E000152000002520000E5 +:10016000E20046000152000002520000E6002300B7 +:100170001C000B0011000000E400240018000D001A +:10018000100051004B0025000C000E0036005200FC +:100190002C00260012000F00370031002800270035 +:1001A00013003300380030004E002D002F00344281 +:1001B000E500E7000000010001000100010001006E +:1001C00000003A001E0231002202010001003B0043 +:1001D000141421023500010001003C002414250202 +:1001E0002514010001003D002714260226140100F9 +:1001F00001003E0064142E023014000001000100D2 +:1002000001000000010000000100010001000000E9 +:100210000100000001003F005200510023020000D5 +:1002200001004000240021001E00010001004100E7 +:10023000250022001F003700010042002600230095 +:100240002000270001004300300230002D14270257 +:100250000100440045000100010001000000010010 +:10026000010001000100010000003A000100F70058 +:10027000FB00010001003B00F400F200FA00FD0069 +:10028000F5003C00F000F100F900FE00F4003D0034 +:10029000F500F300FC00FF0001003E000100F80043 +:1002A000F600000001000100010000000100000054 +:1002B00001000100010000000100000001003F00FA +:1002C00001000100B400000001004000AA00AC00E1 +:1002D000B600010001004100A800AD00B50001001A +:1002E000B7004200A900AE00B9000100B60043000B +:1002F0000100AB00B700010001004400450001000F +:1003000001000100000016034500720067006F0045 +:1003100044006F007800200045005A0000001603DA +:100320004500720067006F0044006F0078002000F5 +:1003300045005A0000000403090409026D0004018D +:1003400000A0FA09040000010301010009211101C4 +:100350000001223F000705810308000A090401008B +:100360000103010200092111010001224D000705CE +:10037000820308000A0904020001030000000921A9 +:10038000110100012236000705830308000A090451 +:1003900003000103000000092111010001223900BE +:1003A000070584031000011201100100000008ED90 +:1003B000FE071301000102000105010906A1010564 +:1003C0000719E029E7150025019508750181020547 +:1003D000081901290595057501910295017503918B +:1003E0000105071900297715002501957875018108 +:1003F00002C005010980A101850216010026B7008F +:100400001A01002AB700751095018100C0050C097A +:1004100001A1018503160100269C021A01002A9CF5 +:1004200002751095018100C005010902A1010901B1 +:10043000A10005091901290515002501950575017A +:10044000810295017503810105010930093115818A +:10045000257F95027508810609381581257F95014C +:1004600075088106050C0A38021581257F950175EE +:10047000088106C0C005010906A101050719E02988 +:10048000E715002501950875018102950175088120 +:100490000105081901290595057501910295017558 +:1004A0000391010507190029FF150025FF95067521 +:1004B000088100C0000000000000000000000001F2 +:1004C0000204060A0F17202C3A4A5D71879DB3C7B4 +:1004D000DAE9F5FCFFFCF5E9DAC7B39D87715D4AFF +:1004E0003A2C20170F0A0604020100000000000049 +:1004F0000000000011241FBECFEFDAE0DEBFCDBF49 +:1005000004B603FE24C08091FB019091FC01A091F0 +:10051000FD01B091FE018730904BA740B04BB9F47C +:100520001092FB011092FC011092FD011092FE014D +:1005300014BE84B7877F84BF88E10FB6F894809398 +:100540006000109260000FBEE0E0FFE3099511E04B +:10055000A0E0B1E0EEE0F8E402C005900D92A43313 +:10056000B107D9F711E0A4E3B1E001C01D92AB3FA0 +:10057000B107E1F70E94A80A0C9405240C9400002E +:100580001092B9008AE08093B800089594EA90939D +:10059000BC009091BC0097FFFCCF9091B900987F70 +:1005A000983021F0903111F081E008958093BB00E4 +:1005B00084E88093BC008091BC0087FFFCCF8091D1 +:1005C000B900887F883111F0803471F780E0089598 +:1005D00084E98093BC008091BC0084FDFCCF089529 +:1005E0008093BB0084E88093BC008091BC0087FFAF +:1005F000FCCF9091B900987F81E0983209F480E0B7 +:10060000089584E88093BC008091BC0087FFFCCFF4 +:100610008091BB00089580910101811115C080E493 +:100620000E94C6028093010181110CC082E10E94E8 +:10063000F00280930101811105C08FEF0E94F0024A +:10064000809301010E94E80284B1807F84B985B162 +:10065000807F85B98AB1837F8AB98BB1837F8BB95B +:100660003E98469808950E94C604809301010E9416 +:100670000B0380B38C7080BB81B3836F81BBA5E318 +:10068000B1E0E3E4F1E08EE08E0F11921D928E1343 +:10069000FCCF0C94B004BF92CF92DF92EF92FF9206 +:1006A0000F931F93CF93DF9380910101882379F0FB +:1006B000809134018F5F80933401811108C00E94C2 +:1006C000C60480930101811102C00E94580405E311 +:1006D00011E0C0E0D0E0DD24D39482E0C82EEE2407 +:1006E000E394F12CC730D10500F58091010181110F +:1006F00064C080E40E94C60280930101811112C08F +:1007000082E10E94F0028093010181110BC0C701B8 +:100710000C2E01C0880F0A94EAF780950E94F0021F +:10072000809301010E94E80248C0CA30A1F028F479 +:10073000C83059F0C93061F005C0CC3089F070F094 +:10074000CD3089F0209A289810C0219A29980DC0A0 +:10075000229A2A980AC0239A2B9807C0529A01C05D +:10076000539A5B9802C03E9A469890EA9A95F1F7A0 +:100770009FB1799902C082E001C080E091709D250F +:10078000982B7C9902C084E001C080E0892B7D9980 +:1007900002C038E001C030E0832B7E9902C020E126 +:1007A00001C020E0822B9FB19095991F9927991F36 +:1007B0009295990F907E892B0FC080910101811134 +:1007C00049C080E40E94C60280930101882379F128 +:1007D000B12C0E94E8028B2DF8019081981719F036 +:1007E0008083C09200010E940B0321960F5F1F4F70 +:1007F000CE30D10509F076CF80910001882361F1D8 +:10080000815080930001882339F08FE99FE00197A0 +:10081000F1F700C0000020C0A3E4B1E0E5E3F1E09F +:10082000CF01825F91919D938E13FCCF15C083E120 +:100830000E94F002809301018111CACF81E40E94DD +:10084000C602809301018111C3CF0E940103B82E1B +:10085000B094BFCF80E0C0CF0E94560481E0DF910A +:10086000CF911F910F91FF90EF90DF90CF90BF90AD +:100870000895E82FF0E0ED5BFE4F80810895089524 +:100880000F931F93CF93DF93C3E4D1E010E00C2FBD +:10089000025F899190E00E94F91A180F0C13F9CFAA +:1008A000812FDF91CF911F910F9108950C94260510 +:1008B00056985E9825982D9826982E9827982F98C8 +:1008C0008FEF90E0909389008093880090938B0045 +:1008D00080938A0090938D0080938C00259A2D9AA6 +:1008E0002FEF80E792E0215080409040E1F700C078 +:1008F0000000269A2E9A2FEF80E792E02150804048 +:100900009040E1F700C00000279A2F9A2FEF80E770 +:1009100092E0215080409040E1F700C0000025980F +:100920002D982FEF80E792E0215080409040E1F732 +:1009300000C0000026982E982FEF80E792E021500B +:1009400080409040E1F700C0000027982F9856980B +:100950005E9825982D9826982E9827982F98089578 +:1009600089EA8093800089E08093810024982C9804 +:100970003F988AB18F748AB96E98479A8BB1806B11 +:100980008BB9769A0E9458040C94250580E28093D6 +:1009900001018091510181110EC00E94C00281E0CD +:1009A000809351012FEF83ED90E3215080409040E0 +:1009B000E1F700C0000080E40E94C60280930101BC +:1009C00081112EC00E94F00280930101811128C084 +:1009D0000E94F00280930101811122C08FE30E94E6 +:1009E000F0028093010181111BC00E94E80280E4A3 +:1009F0000E94C60280930101811112C08CE00E9406 +:100A0000F0028093010181110BC00E94F0028093DB +:100A10000101811105C08FE30E94F0028093010162 +:100A20000E94E80280910101089561110BC0FC0150 +:100A30008281882321F085EE0E94081103C085EE93 +:100A40000E94D01180E090E0089508956091BD016A +:100A50007091BE018091BF019091C0010E94051B61 +:100A600056985E9825982D9826982E9827982F9816 +:100A7000813029F0823031F4269A2E9A0895259AF1 +:100A80002D9A089556985E98089581E0089581E022 +:100A900008950C94470508950F931F93CF93DF9308 +:100AA0008C01FC01C081D181CE010E947E19BE0162 +:100AB0000E94F505EC01B8010E944905882309F45C +:100AC0008DC0F8018281882309F44AC080915D01BC +:100AD00081111FC0C431F0E5DF0709F051C00E9449 +:100AE0004B0581E080935D010E949D1B90935C010A +:100AF00080935B011092540110925601109255019F +:100B0000109258011092570110925A0110925901F7 +:100B100065C080915B0190915C010E94A91B883C9B +:100B2000910570F480915401E82FF0E0EE0FFF1F63 +:100B3000EB5AFE4FD183C0838F5F809354014EC028 +:100B4000C43880E5D80721F0C538D04501F13AC056 +:100B5000F8018281882341F01092520182E01EC088 +:100B6000C438E0E5DE0759F580915201811106C0D5 +:100B700086E20E94081186E20E94D01182E01CC029 +:100B8000C438F0E5DF0741F3C538D045D9F4F801A2 +:100B90008281882331F01092530180E20E941F125B +:100BA0001DC080915301811106C087E20E94081187 +:100BB00087E20E94D01180E20E9426120FC0C53841 +:100BC000D04529F381E08093520180935301C801FD +:100BD000DF91CF911F910F910C94450580E0DF913B +:100BE000CF911F910F910895089596E0799FF0019C +:100BF000112494E5899FE00DF11D1124E60FF11DEC +:100C0000EE0FFF1FE25FFE4F859194910895880FCC +:100C1000991FFC01E657F040859194910895880F43 +:100C2000991FFC01E65FFE4F8591949108950F9303 +:100C30001F93CF93DF93EC01811520E3920750F5CA +:100C4000C11580E2D80708F0C3C0CB3BD10590F4B2 +:100C5000C83AD10508F06AC0C53AD10508F05BC0B2 +:100C6000C430D10508F0D0C1219709F0CAC101E014 +:100C700010E00AC2CF3FD10511F008F0C5C1C03F56 +:100C8000D10508F0A2C0CE01805E9109089708F452 +:100C9000BBC1B7C1C13090E5D90709F4A2C020F5A6 +:100CA000C0318FE4D80770F4C11590E4D90708F07B +:100CB00094C0C11521E3D20708F0A3C1DD278E013E +:100CC000106CE2C1C115D04509F09BC10E9485148A +:100CD0008FEF94E32CE0815090402040E1F700C07A +:100CE00000000E94F81BD0C1C11597E5D90758F440 +:100CF000C03121E5D20708F01CC1C43180E5D80716 +:100D000008F475C07EC1CE0190578115904108F05E +:100D100078C1DF7073C1C53AD10509F477C1C63A0D +:100D2000D10509F076C102E810E4AEC1C83AD10598 +:100D300009F472C1C93AD10509F471C1CA3AD105A1 +:100D400009F470C1CB3AD10509F46FC1CC3AD10591 +:100D500009F46EC1CD3AD10509F46DC1C03BD1058E +:100D600009F46CC1CE3AD10509F46BC1CF3AD10573 +:100D700009F46AC1C13BD10509F469C1C23BD1057F +:100D800009F468C1C33BD10509F467C1C43BD1056F +:100D900009F466C1C53BD10509F465C1C63BD1055F +:100DA00009F464C1C73BD10509F463C1C83BD1054F +:100DB00009F462C1C93BD10509F461C1CA3BD1053F +:100DC00009F460C100E014E45FC18E0110655CC1EC +:100DD000CE019F700E940F0658C1DF708E01106A0D +:100DE00053C18091DA0181608093DA014DC10E9484 +:100DF0009D1D811102C00E94831D0E94BA1D90E0BA +:100E00009093FB018093FA01C23080E5D80721F46A +:100E10008091FA01816086C0C43090E5D90721F441 +:100E20008091FA0182607EC0C63020E5D20721F4AD +:100E30008091FA01846076C0C83080E5D80719F443 +:100E40008091FA0127C0CA3090E5D90721F480913A +:100E5000FA01806167C0CC3020E5D20721F480918F +:100E6000FA0180625FC0CE3080E5D80721F480911E +:100E7000FA01806457C0C03190E5D90721F4809110 +:100E8000FA0180684FC0C23120E5D20729F4809171 +:100E9000FA018460886046C0C33080E5D80721F439 +:100EA0008091FA018E7F3EC0C53090E5D90721F4CC +:100EB0008091FA018D7F36C0C73020E5D20721F43A +:100EC0008091FA018B7F2EC0C93080E5D80719F4D4 +:100ED0008091FA0126C0CB3090E5D90721F48091AA +:100EE000FA018F7E1FC0CD3020E5D20721F480911A +:100EF000FA018F7D17C0CF3080E5D80721F48091AB +:100F0000FA018F7B0FC0C13190E5D90721F48091A0 +:100F1000FA018F7707C0C331D04531F48091FA01CF +:100F20008B7F877F8093FA018091FA010E94BE1D1A +:100F3000ABC08D2F99278F70992781309105D9F4F7 +:100F40009E012370332702C0880F991F2A95E2F76C +:100F50009C688E0144E0000F111F4A95E1F70027BD +:100F60001370802B912B53E0CC0FDD1F5A95E1F7C6 +:100F7000C076DD272FC08230910531F4DC2FCC27DD +:100F80008E01016F106A80C08330910569F4CE0133 +:100F90008370992701E010E002C0000F111F8A95AD +:100FA000E2F7C8019C680FC084309105B9F4CE0106 +:100FB0008370992701E010E002C0000F111F8A958D +:100FC000E2F7C8019A6823E0CC0FDD1F2A95E1F70C +:100FD000C07ED7708C010C2B1D2B56C0853091051F +:100FE00031F4DC2FCC278E01046F106A4DC00697B8 +:100FF00009F04AC0CF71DD27DC2FCC278E011062AB +:1010000043C000E010E040C08E013EC001E810E4A3 +:101010003BC003E810E438C002EE14E435C009EE2A +:1010200014E432C00AEE14E42FC005EB14E42CC023 +:1010300006EB14E429C007EB14E426C00CEC14E41E +:1010400023C00DEC14E420C003E815E41DC00AE839 +:1010500015E41AC002E915E417C004E915E414C048 +:1010600001E216E411C003E216E40EC004E216E445 +:101070000BC005E216E408C006E216E405C007E26C +:1010800016E402C00AE216E4C801DF91CF911F9175 +:101090000F91089596E0799FF001112494E5899FBE +:1010A000E00DF11D1124E60FF11DEE0FFF1FE25FB1 +:1010B000FE4F85919491803E9105E0F4803C91052E +:1010C00058F58133910509F46FC048F489329105D0 +:1010D00009F463C08A32910509F46DC072C0893386 +:1010E0009105E9F082389105D1F08533910509F435 +:1010F0004DC067C0833E910581F138F4803E910573 +:10110000B9F0823E9105D9F05CC0863E910561F14F +:10111000873E9105A1F155C00E94070608952091D0 +:10112000FA0120FD02C021FF4CC080EE90E049C0D2 +:101130008091FA0180FFF9CF89E390E042C080916D +:10114000FA0182FF0EC08091FA0184FF03C080E0A3 +:1011500090E037C083EE90E034C08091FA0182FFC6 +:10116000F2CF82EE90E02DC08091FA0183FF0BC098 +:101170008091FA0184FDEBCF87EE90E022C0809150 +:10118000FA0183FFF5CF86EE90E01BC08091FA0153 +:1011900085FF07C089E290E014C08091FA0185FFC5 +:1011A000F9CF85E390E00DC08091FA0186FF07C07A +:1011B0008AE290E006C08091FA0186FFF9CF81E3D0 +:1011C00090E00E941706089508950C94E408809119 +:1011D0006E010895CF93DF9300D01F92CDB7DEB795 +:1011E0009C018091F101843019F593E099833B8350 +:1011F0002A839093E9008FEF9091E800815095FD4C +:1012000006C095ED9A95F1F700008111F5CF809118 +:10121000E80085FF0DC040E050E063E070E0CE01E3 +:1012200001960E94540B8091E8008E778093E8002D +:101230000F900F900F90DF91CF910895CF93DF9390 +:1012400000D01F92CDB7DEB72091F101243021F5F7 +:1012500022E029839B838A8383E08093E9008FEFD8 +:101260009091E800815095FD06C095ED9A95F1F7B3 +:1012700000008111F5CF8091E80085FF0DC040E0AE +:1012800050E063E070E0CE0101960E94540B809123 +:10129000E8008E778093E8000F900F900F90DF9119 +:1012A000CF9108952091F1012430F1F422E02093B0 +:1012B000E9002FEF3091E800215035FD06C035EDF3 +:1012C0003A95F1F700002111F5CF2091E80025FFB4 +:1012D0000BC040E050E065E070E00E94540B80914C +:1012E000E8008E778093E8000895CF93DF93EC01B8 +:1012F0009091F101943009F046C080910C0188234F +:10130000D9F080910D018823B9F09093E9008FEF17 +:101310009091E800815095FD06C095E19A95F1F70E +:1013200000008111F5CF8091E80085FF2CC040E0DE +:1013300050E060E170E017C081E08093E9008FEF3A +:101340009091E800815095FD06C095ED9A95F1F7D2 +:1013500000008111F5CF8091E80085FF14C040E0C6 +:1013600050E068E070E0CE010E94540B8091E800EC +:101370008E778093E80080E1FE01AEE5B1E0019058 +:101380000D928A95E1F7DF91CF9108958091F00158 +:10139000811109C00E94E90C0E94460D8091E20073 +:1013A00084608093E20008951092F00108950895FA +:1013B0000C942D220E948E1B0E9433220E94EC0F5F +:1013C0000C94E50842E061EC81E00E94630C42E08D +:1013D00061EC82E00E94630C42E061EC83E00E94D9 +:1013E000630C42E161EC84E00C94630C8091F301A6 +:1013F000833009F455C030F4813071F0823009F443 +:101400008EC008958A3009F47AC08B3009F460C028 +:10141000893009F09CC020C08091F201813A09F026 +:1014200096C08091E800877F8093E8008091F60164 +:101430009091F701892B21F460E18EE591E003C0E2 +:1014400060E080E090E070E00E949F0B8091E800F7 +:101450008B778093E80008958091F201813209F042 +:1014600076C08091F6019091F701009719F00397EB +:1014700009F06DC08091E800877F8093E80080913B +:10148000E80082FD05C08091F1018111F8CF5FC0B5 +:101490008091F10080936E018091E8008B7753C0BA +:1014A0008091F201813A09F052C08091F601909149 +:1014B000F701892B09F04BC08091E800877F80936A +:1014C000E8008091E80080FFFCCF80910C0136C0DD +:1014D0008091F2018132D9F58091F6019091F70166 +:1014E000892BA9F58091E800877F8093E8000E940E +:1014F000980C8091F40180930C010C9485148091D8 +:10150000F201813221F58091E800877F8093E80025 +:101510000E94980C8091F50180936F01089580914D +:10152000F201813AA1F48091E800877F8093E8007E +:101530008091E80080FFFCCF80916F018093F100E3 +:101540008091E8008E778093E8000C94980C0895C1 +:1015500084B7877F84BF88E10FB6F89480936000DA +:10156000109260000FBE90E080E80FB6F894809370 +:101570006100909361000FBE0E943B100E94E90C35 +:101580000E94460D8091E20084608093E20078948E +:101590000E94CC0F0E943D1082E091E00E94E70F74 +:1015A0000E941B228091F101853069F40E94551B35 +:1015B0008091EF018823B1F30E94801B882391F36F +:1015C0000E943E0BEFCF0E944310ECCF292F332710 +:1015D00023303105C9F064F42130310581F0223027 +:1015E000310509F043C08DE690E02AE333E042C0C4 +:1015F00021323105F1F02232310541F137C082E16B +:1016000090E027EA33E036C099278130910541F018 +:101610008230910541F0892B49F5E6E3F3E005C0FE +:10162000EEE1F3E002C0E6E0F3E0849190E09F0198 +:1016300021C06430D8F4E62FF0E0EE0FFF1FEE5D1E +:10164000FE4F2081318189E090E014C0643070F455 +:1016500070E0FB01EE0FFF1FE65EFE4F208131813F +:10166000FB01EA5EFE4F808190E004C080E090E0E4 +:1016700020E030E0FA0131832083089580E189BDC4 +:1016800082E189BD09B400FEFDCF8091D8008F7D35 +:101690008093D8008091E00082608093E000809188 +:1016A000E00081FDFCCF0895CF92DF92EF92FF9290 +:1016B0000F931F93CF93DF93EC018B016A010E947C +:1016C000B70C811133C0C114D10439F0F601808107 +:1016D0009181081B190BC80FD91FE12CF12C0115A2 +:1016E000110519F18091E80085FD16C08091E80090 +:1016F0008E778093E800C114D10449F0F60180810F +:101700009181E80EF91EF182E08285E00FC00E940F +:10171000B70C882321F30AC089918093F10001500E +:101720001109FFEFEF1AFF0ADACF80E0DF91CF91C6 +:101730001F910F91FF90EF90DF90CF90089520912F +:10174000F8013091F9012617370748F06115710546 +:1017500039F42091E8002E772093E80001C0B90108 +:1017600040E061157105A9F12091F101222309F4EE +:1017700043C0253009F442C02091E80023FD40C059 +:101780002091E80022FD32C02091E80020FFE9CF3F +:101790004091F3002091F20030E0342BFC01CF01A6 +:1017A0006115710559F02830310540F4819180931D +:1017B000F100615071092F5F3F4FF1CF41E02830B8 +:1017C000310509F040E02091E8002E772093E800F1 +:1017D000C8CF4111C9CF0AC08091F101882361F0BF +:1017E000853061F08091E80083FD0AC08091E800B7 +:1017F00082FFF2CF80E0089582E0089583E00895AB +:1018000081E008952091F8013091F90126173707FA +:1018100048F06115710539F42091E8002E77209386 +:10182000E80001C0B901FC0120E06115710591F1EA +:101830008091F101882309F440C0853009F43FC04C +:101840008091E80083FD3DC08091E80082FD2FC0BB +:101850008091E80080FFE9CF2091F3008091F200B1 +:1018600090E0922B6115710559F08830910540F494 +:1018700024912093F1003196615071090196F2CFC5 +:1018800021E0089709F020E08091E8008E778093AE +:10189000E800CBCF2111CCCF0AC08091F101882381 +:1018A00061F0853061F08091E80083FD0AC080918D +:1018B000E80082FFF2CF80E0089582E0089583E09F +:1018C000089581E00895982F973058F59093E90096 +:1018D000981739F07091EC002091ED005091F000D4 +:1018E00003C0242F762F50E021FF19C03091EB0068 +:1018F0003E7F3093EB003091ED003D7F3093ED0063 +:101900003091EB0031603093EB007093EC0020934A +:10191000ED005093F0002091EE0027FF07C09F5F7D +:10192000D3CF8F708093E90081E0089580E008951F +:101930008091F20187FF11C08091E80082FD05C00F +:101940008091F1018111F8CF11C08091E8008B776F +:101950000BC08091F101882349F08091E80080FF5D +:10196000F8CF8091E8008E778093E8000895209169 +:10197000E4003091E50095E64091EC00842F817001 +:1019800040FF22C08091E80080FD1CC08091F101E1 +:10199000882391F0853091F08091EB0085FD10C097 +:1019A0004091E4005091E5004217530729F39A0152 +:1019B000915011F784E0089582E0089583E008953E +:1019C00081E0089580E008954091E80042FFDECF75 +:1019D00008950E94570D0E945F0DE0EEF0E08081B7 +:1019E00081608083E8EDF0E080818F77808319BC8F +:1019F000A7EDB0E08C918E7F8C9380818F7E808369 +:101A00001092F00108950F931F93CF93DF930E94DC +:101A1000570D0E945F0DC8EDD0E088818F778883D5 +:101A200088818068888388818F7D888319BC109223 +:101A3000F1011092ED011092EF011092EE0100EE13 +:101A400010E0F80180818B7F8083888181608883AA +:101A500042E060E080E00E94630CE1EEF0E0808113 +:101A60008E7F8083E2EEF0E08081816080838081E0 +:101A700088608083F80180818E7F80838881806187 +:101A80008883DF91CF911F910F910895E8EDF0E0E9 +:101A900080818F7E8083E7EDF0E0808181608083AC +:101AA00084E082BF81E08093F0010C94030DE8EDA7 +:101AB000F0E080818E7F80831092E2000895109282 +:101AC000DA001092E10008951F920F920FB60F9264 +:101AD00011242F933F934F935F936F937F938F9333 +:101AE0009F93AF93BF93EF93FF938091E10082FFA9 +:101AF0000BC08091E20082FF07C08091E1008B7FE4 +:101B00008093E1000E94CB0F8091DA0080FF1FC01C +:101B10008091D80080FF1BC08091DA008E7F809377 +:101B2000DA008091D90080FF0DC080E189BD82E19B +:101B300089BD09B400FEFDCF81E08093F1010E94D0 +:101B4000C60905C019BC1092F1010E94D409809108 +:101B5000E10080FF19C08091E20080FF15C08091F4 +:101B6000E2008E7F8093E2008091E20080618093AA +:101B7000E2008091D80080628093D80019BC85E093 +:101B80008093F1010E94D8098091E10084FF30C068 +:101B90008091E20084FF2CC080E189BD82E189BD93 +:101BA00009B400FEFDCF8091D8008F7D8093D800CE +:101BB0008091E1008F7E8093E1008091E2008F7E32 +:101BC0008093E2008091E20081608093E200809146 +:101BD000ED01882311F084E007C08091E30087FDC8 +:101BE00002C081E001C083E08093F1010E94DA0924 +:101BF0008091E10083FF29C08091E20083FF25C02E +:101C00008091E100877F8093E10082E08093F10181 +:101C10001092ED018091E1008E7F8093E100809130 +:101C2000E2008E7F8093E2008091E20080618093E9 +:101C3000E20042E060E080E00E94630C8091F000EE +:101C400088608093F0000E94D709FF91EF91BF91C7 +:101C5000AF919F918F917F916F915F914F913F9144 +:101C60002F910F900FBE0F901F9018951F920F92FB +:101C70000FB60F9211242F933F934F935F936F935F +:101C80007F938F939F93AF93BF93CF93DF93EF9304 +:101C9000FF93C091E900CF708091EC00D82FD170F4 +:101CA00080FDD0E81092E9008091F000877F80935A +:101CB000F00078940E947A0E1092E9008091F00072 +:101CC00088608093F000CD2BCF70C093E900FF9126 +:101CD000EF91DF91CF91BF91AF919F918F917F91C4 +:101CE0006F915F914F913F912F910F900FBE0F9089 +:101CF0001F9018951F93CF93DF93CDB7DEB7AA97A8 +:101D00000FB6F894DEBF0FBECDBFE2EFF1E088E082 +:101D10008E0F9091F10091938E13FBCF0E94F609E4 +:101D20008091E80083FF1FC18091F2019091F3013F +:101D3000492F50E04A30510508F015C1FA01EA5A1E +:101D4000FF4F0C94B523803881F0823809F00BC125 +:101D50008091F6018F708093E9008091EB0085FB04 +:101D6000882780F91092E90006C08091EE019091D9 +:101D7000EF01911182609091E800977F9093E800C5 +:101D80008093F1001092F100C8C0282F2D7F09F038 +:101D9000EAC0882319F0823061F0E5C08091F40137 +:101DA000813009F0E0C0933009F080E08093EF01CA +:101DB0002BC08091F401811127C08091F6018F70B2 +:101DC00009F4D1C08093E9002091EB0020FF1CC0F2 +:101DD000933021F48091EB00806214C09091EB006D +:101DE00090619093EB0021E030E0A90102C0440F24 +:101DF000551F8A95E2F74093EA001092EA0080911D +:101E0000EB0088608093EB001092E9008091E8007D +:101E1000877F86C08111A7C01091F4011F77809140 +:101E2000E3008078812B8093E3008091E800877F36 +:101E30008093E8000E94980C8091E80080FFFCCF1E +:101E40008091E30080688093E300111102C082E07A +:101E500001C083E08093F10186C08058823008F091 +:101E600082C08091F4019091F5018C3D53E095077B +:101E700079F583E08A838AE289834FB7F894DE019B +:101E8000139620E03EE051E2E32FF0E0509357003C +:101E9000E49120FF03C0E295EF703F5FEF708E2F5B +:101EA00090E0EA3010F0C79601C0C0968D939D93E4 +:101EB0002F5F243149F74FBF8091E800877F8093DF +:101EC000E8006AE270E0CE0101960E949F0B14C008 +:101ED000AE014F5F5F4F6091F6010E94E60ABC01C0 +:101EE000009709F440C09091E800977F9093E80034 +:101EF00089819A810E94020C8091E8008B778093FF +:101F0000E80031C0803879F58091E800877F8093C0 +:101F1000E8008091ED018093F1008091E8008E77D8 +:101F20008093E8000E94980C1EC081111CC0909103 +:101F3000F4019230C0F48091E800877F8093E8003C +:101F40009093ED010E94980C8091ED01811106C0E3 +:101F50008091E30087FD02C081E001C084E08093AE +:101F6000F1010E94E2098091E80083FF0AC080919C +:101F7000E800877F8093E8008091EB008062809387 +:101F8000EB00AA960FB6F894DEBF0FBECDBFDF916F +:101F9000CF911F9108950895CF938091F1018823E7 +:101FA000A1F0C091E900CF709091EC00892F817071 +:101FB00090FD80E8C82B1092E9008091E80083FD35 +:101FC0000E947A0ECF70C093E900CF91089590934C +:101FD0007501809374010895E0917401F091750189 +:101FE000309721F00190F081E02D099480E0089570 +:101FF000E0917401F0917501309721F00280F38136 +:10200000E02D09940895E0917401F09175013097E5 +:1020100021F00480F581E02D09940895209172014A +:10202000309173018217930771F09093730180933D +:102030007201E0917401F0917501309721F00680F2 +:10204000F781E02D0994089520917001309171017C +:102050008217930771F09093710180937001E09162 +:102060007401F0917501309721F00084F185E02D25 +:102070000994089508950C943A100E94941B0E94AC +:1020800033030C94561C9F92AF92BF92CF92DF9273 +:10209000EF92FF920F931F93CF93DF9300D000D066 +:1020A00000D0CDB7DEB70E944B030DE010E0AA24AC +:1020B000A394B12C902E802F0E94390498012958A6 +:1020C0003E4F6901F901F080F826A1F40150110991 +:1020D00088F78FEF89838A831B820E949D1B816012 +:1020E000782F9D838C8349815A816B818D810E94D9 +:1020F000DA102FC09091DA0191FF04C08E830E9404 +:102100003F048E8125E030E0A501022E01C0440F7E +:102110000A94EAF7E42E4F21C1F029839A828E2196 +:1021200091E009F490E09B830E949D1B8160782FD1 +:102130009D838C8349815A816B818D810E94DA1045 +:10214000F6018081E826E08204C021503109E0F6E2 +:10215000BDCF0E943D1F109176010E94EC0F181711 +:10216000B9F00E94EC0F8093760126960FB6F89492 +:10217000DEBF0FBECDBFDF91CF911F910F91FF90BA +:10218000EF90DF90CF90BF90AF909F900C94E508B8 +:1021900026960FB6F894DEBF0FBECDBFDF91CF916C +:1021A0001F910F91FF90EF90DF90CF90BF90AF9075 +:1021B0009F900895CF93DF93CDB7DEB72B970FB6DF +:1021C000F894DEBF0FBECDBF4F83588769877A87EB +:1021D0008B87DE01119686E0FD0111928A95E9F761 +:1021E00085E0FE01379601900D928A95E1F74981CD +:1021F0005A816B817C818D819E810E9423172B9651 +:102200000FB6F894DEBF0FBECDBFDF91CF9108951A +:10221000CF93882309F4C2C0C82F823859F40E9492 +:10222000EC0F81FDBBC089E30E94FD190E94CA1A10 +:1022300089E30CC0833879F40E94EC0F80FDAEC0B6 +:1022400083E50E94FD190E94CA1A83E50E943F1A85 +:10225000CF910C94CA1A843859F40E94EC0F82FD75 +:102260009DC087E40E94FD190E94CA1A87E4EECF40 +:102270008CEF8C0F813A48F48C2F0E9480218111C1 +:102280008DC08C2F0E94FD19E3CF80E28C0F883027 +:1022900048F4C77081E001C0880FCA95EAF70E9430 +:1022A000831AD6CF8BE58C0F833078F4C53A29F0AA +:1022B000C63A31F083E890E005C081E890E002C0C2 +:1022C00082E890E0CF910C940E1088E58C0F83315A +:1022D00008F064C0C83A39F1C93A41F1CA3A49F143 +:1022E000CB3A51F1CC3A59F1CD3A61F1C03B69F1A9 +:1022F000CE3A71F1CF3A79F1C13B81F1C23B89F11C +:10230000C33B91F1C43B99F1C53BA1F1C63BA9F197 +:10231000C73BB1F1C83BB9F1C93BC1F1CA3BC9F1F7 +:1023200080E090E038C082EE90E035C089EE90E029 +:1023300032C08AEE90E02FC085EB90E02CC086EB97 +:1023400090E029C087EB90E026C08CEC90E023C0A1 +:102350008DEC90E020C083E891E01DC08AE891E018 +:102360001AC082E991E017C084E991E014C081E2CB +:1023700092E011C083E292E00EC084E292E00BC0D2 +:1023800085E292E008C086E292E005C087E292E032 +:1023900002C08AE292E0CF910C942410CF9108956C +:1023A000882309F44BC0823859F40E94EC0F81FF56 +:1023B00045C089E30E94FD190E94CA1A89E30CC036 +:1023C000833871F40E94EC0F80FF38C083E50E94CF +:1023D000FD190E94CA1A83E50E943F1A0C94CA1A7A +:1023E000843859F40E94EC0F82FF28C087E40E94D1 +:1023F000FD190E94CA1A87E4EFCF9CEF980F913A1B +:1024000058F390E2980F983050F4877091E001C033 +:10241000990F8A95EAF7892F0E94891ADFCF9BE5E9 +:10242000980F933020F480E090E00C940E10885ABE +:10243000833120F480E090E00C94241008958823E8 +:1024400021F00E94831A0C94CA1A0895882321F05F +:102450000E94891A0C94CA1A08957F928F929F92B3 +:10246000AF92BF92CF92DF92EF92FF920F931F93A2 +:10247000CF93DF931F92CDB7DEB77C01C62E772EA8 +:10248000FC01058102950F70128111110E94A01AA2 +:102490000E94F619882379F0112369F080E28C0DEF +:1024A000883048F082E00E94DF190E94F61991E01E +:1024B000D82ED92601C0D12CE72DE295EF70F0E09F +:1024C000E05AFF4F0C94B523872D807F072D0F70A6 +:1024D000882311F00295007F112389F0002309F46D +:1024E00090C180E28C0D883020F4802F0E94831AE6 +:1024F00003C0802F0E94931A0E94CA1A82C18C2D99 +:102500000E94D011002309F495C180E28C0D88301F +:1025100020F4802F0E94891A03C0802F0E94991AEC +:102520000E94CA1A87C1972D907F872D8F70903295 +:1025300011F08295807FCC2021F0F1E0CF16B1F030 +:102540001EC0112349F0002309F414C1013009F021 +:1025500011C10E94B31A6EC1002319F0013009F4B1 +:1025600069C189830E94B61A89810AC1112321F0A9 +:10257000023008F05FC1FEC001115CC101C111232E +:1025800021F0002309F4F6C03CC1002309F4F8C08F +:102590003EC1872D86958695837090E0009719F04F +:1025A000019761F047C1112321F08C2D972D937075 +:1025B00002C080E090E00E940E103CC1112321F087 +:1025C0008C2D972D937002C080E090E00E94241023 +:1025D00031C18C2D112319F00E94451E02C00E94AA +:1025E000AD1E0E94321F26C1872D837009F052C094 +:1025F000111120C18C2D829586958770880F880FC8 +:102600009C2D9F70892E912CA12CB12C082E04C0DA +:10261000880C991CAA1CBB1C0A94D2F7C4FE14C0D7 +:102620000FE010E020E030E0B901A80104C0440F41 +:10263000551F661F771F8A95D2F7CB01BA016095A7 +:1026400070958095909503C060E070E0CB01272DD8 +:1026500026952695237030E02230310569F023302D +:10266000310589F0682979298A299B29213031058A +:1026700071F00E946B18DEC0682979298A299B298C +:102680000E948718D7C00E946B18C501B4010E9430 +:102690004F18D0C0112319F0872D817001C0869585 +:1026A000882309F4C7C08C2D829586958770880F82 +:1026B000880F9C2D9F70892E912CA12CB12C082E57 +:1026C00004C0880C991CAA1CBB1C0A94D2F7C4FE37 +:1026D00014C00FE010E020E030E0B901A80104C010 +:1026E000440F551F661F771F8A95D2F7CB01BA0199 +:1026F000609570958095909503C060E070E0CB0187 +:10270000272D269526952370422F50E04230510503 +:1027100069F04330510589F0682979298A299B2974 +:102720004130510571F00E94451984C0682979290A +:102730008A299B290E9461197DC00E944519C50103 +:10274000B4010E94291976C08C2D90E0FC01E05E56 +:10275000F109E531F10508F050C0E059FF4F0C9444 +:10276000B5230C2D0F70872D8F71112331F00E942E +:10277000C218802F0E941F125DC00E94E318802F94 +:102780000E94261257C0112339F0011153C0872D22 +:102790008F710E9408194EC0023008F04BC0F7CF6D +:1027A000112339F0872D8F710E94C21843C0112365 +:1027B000C9F3872D8F710E94E3183CC0112329F0C3 +:1027C000872D8F710E94AD1835C00E94A31832C0AA +:1027D000112351F0172D1F71812F0E94C21863E041 +:1027E000812F0E94D61926C081E00E94DF19023095 +:1027F00008F182E00E94DF191DC0112331F000238F +:1028000089F28C2D0E94081115C0002391F28C2DA5 +:102810000E94D0110FC0472D4F706C2DC7010E9430 +:1028200015050E94C71706C0472D4F706C2DC701B4 +:102830000E94F405DD20F9F00E94D21980FD1BC032 +:10284000F70112820E94CC190E94C218C7010E948F +:102850004A140E94CC190F90DF91CF911F910F91D4 +:10286000FF90EF90DF90CF90BF90AF909F908F90B0 +:102870007F900C94E3180F90DF91CF911F910F91EF +:10288000FF90EF90DF90CF90BF90AF909F908F9090 +:102890007F9008950F931F93CF93DF93EC0188816E +:1028A00099812B813C81232BB9F09F3F11F48F3FFD +:1028B00099F0CE010E944C05882371F068817981DE +:1028C0008A810E94C8198C010E947D190E944418B7 +:1028D000B801CE010E942D12DF91CF911F910F916F +:1028E00008950E94A01A0E94B01A0E94751A0E94B0 +:1028F000CA1A0E94E31F0E94321F80E090E00E94EB +:102900000E1080E090E00C9424100E94901A0C9419 +:1029100071140E94BD19292F22952F7030E02C30A0 +:1029200031054CF42A3031056CF422503109223043 +:102930003105A8F407C02C30310569F02F3031057E +:1029400051F00DC0803F69F018F4803E40F409C09A +:10295000843F29F406C093FB882780F9089580E01E +:10296000089581E00895CF93DF9300D000D01F92A7 +:10297000CDB7DEB70F900F900F900F900F90DF91B3 +:10298000CF910895CF93DF9300D000D000D0CDB782 +:10299000DEB726960FB6F894DEBF0FBECDBFDF912F +:1029A000CF9108951F93CF93DF93C091850116E0D7 +:1029B00080918601C81799F0D0E01C9FF0011D9FFF +:1029C000F00D1124E957FE4F4081518162817381DE +:1029D000848195810E94C2142196C770E9CFDF914E +:1029E000CF911F9108954091B7015091B801609126 +:1029F000B9017091BA018091BB019091BC010C9416 +:102A0000C2148091BC0182958F7009F054C08091EE +:102A1000B901882309F44FC080918501A0918601F6 +:102A20006091B7017091B8014091BA015091BB011A +:102A3000B6E08A1709F43FC090E041155105C1F195 +:102A40007F3F11F46F3FA1F1B89FF001B99FF00DE6 +:102A50001124E957FE4F218172132AC0208162138D +:102A600027C02281211124C02381348124173507F6 +:102A700010F421503109241B350B283C3105C0F4DA +:102A80002091BC012F7020612093BC0126E0289F7B +:102A9000F001299FF00D1124E457FE4F80818F70C3 +:102AA0008061808387EB91E00E944A140C94D214D9 +:102AB00001968770BECF0895CF92DF92EF92FF927A +:102AC0000F931F93CF93DF93CDB7DEB762970FB607 +:102AD000F894DEBF0FBECDBF8C0185E0F801DE01AA +:102AE0001D9601900D928A95E1F7D8014C911196AF +:102AF0005C91119712966C9112971396CD90DC9081 +:102B000014973091B7017091B8018091BA019091FA +:102B1000BB01009709F46BC17F3F19F43F3F09F4F3 +:102B200066C1E090B901EE2009F4C0C02091BC015B +:102B3000C816D90628F0F601E81BF90BCF0104C02E +:102B4000809590958C0D9D1DFF24F394883C9105F4 +:102B500078F0F12C207F09F0C6C07C2DD98AC88A74 +:102B600089890E94B31487EB91E00E944A14B1C096 +:102B7000822F807F09F046C0751314C0341312C031 +:102B8000611110C02F7020612093BC010E94F314CA +:102B900087EB91E00E944A148091BC01D801159600 +:102BA0008C932EC0CD2819F15F3F11F44F3FF9F0FF +:102BB000F62E61111CC0809185012091860136E0BE +:102BC000821709F45AC090E0389FF001399FF00D48 +:102BD0001124E957FE4F7181571306C070814713C6 +:102BE00003C07281711103C001968770E9CFF62E80 +:102BF000662309F418C18091BC0181608093BC01F7 +:102C0000F12C11C1751308C0341306C0611104C042 +:102C10008091BC01D801C3C04D875E878D859E859C +:102C20006A8B0E9489146A898823E1F16623D1F1B5 +:102C30002091BC01822F82958F7090E0029774F0F2 +:102C40008091B7019091B80198878F831986DB86B0 +:102C5000CA862C87CE0107960E944A1486E0F801A6 +:102C6000A7EBB1E001900D928A95E1F70E94011562 +:102C70000E94F314FF24F394D6C04D875E878D85A0 +:102C80009E850E94BD19292F22952F7030E0223099 +:102C900031050CF0BCC09F7009F0B6C0805E883072 +:102CA00008F4C1C0C8010E944A14E4CFC816D9066E +:102CB00008F453C0F601E81BF90BCF01883C9105DD +:102CC00008F450C0F12C7C2DD98AC88A89890E94C9 +:102CD000B314E7EBF1E086E0DF011D928A95E9F796 +:102CE0000E94F314A0C0751314C0341312C06111F4 +:102CF00010C08091BC01F8018583C8010E944A146C +:102D000086E0E7EBF1E0DF011D928A95E9F7FE2C02 +:102D10008AC04D875E878D859E856A8B0E94891447 +:102D20006A89882309F4BECF662309F4BBCF2091BA +:102D3000BC01822F82958F7090E002970CF48ECFA9 +:102D40008091B7019091B8019A8389831B82DD82BB +:102D5000CC822E83CE0101967FCF809590958C0DED +:102D60009D1DACCFF62E662309F49CCF75132EC0A3 +:102D700034132CC02091BC0120FD1FC0822F8295EE +:102D80008F70D9F0D80115962C9315978F3049F094 +:102D90008F5F982F9295907F822F8F70892B159639 +:102DA0008C93C8010E944A1486E0F801A7EBB1E0B9 +:102DB00001900D928A95E1F793CF86E0F801A7EB99 +:102DC000B1E001900D928A95E1F72DC04D875E87A5 +:102DD0008D859E850E948914811140CF8091BC0110 +:102DE00081608093BC01C8010E944A141CC0662304 +:102DF00009F458CF4D875E878D859E850E94891482 +:102E0000882309F44FCF2ACF811148CF0CC024303A +:102E100031050CF047CF9F7009F440CFF801958140 +:102E2000907F09F03BCF8F2D62960FB6F894DEBFEE +:102E30000FBECDBFDF91CF911F910F91FF90EF900B +:102E4000DF90CF9008951F93CF93DF93CDB7DEB778 +:102E50002C970FB6F894DEBF0FBECDBF4F835887B7 +:102E600069877A878B879C87CE0107960E945C15BD +:102E7000882369F08F8198852A853B85232BF1F182 +:102E80009F3F09F063C08F3F09F060C037C086E004 +:102E9000FE013796DE01119601900D928A95E1F7B9 +:102EA0006F817885EA85FB85309741F17F3F11F48A +:102EB0006F3F21F12091860130E0C90101968770B2 +:102EC00099274091850150E08417950709F447C080 +:102ED00069837A83FD83EC8396E0929FD001939F70 +:102EE000B00D1124A957BE4FFE01319601900D92ED +:102EF0009A95E1F7809386010E94D21416E08091A2 +:102F00008501909186018917C1F1189FC001112494 +:102F100089579E4F0E945C15882379F1E0918501C5 +:102F20001E9FF0011124E957FE4F408151816281BB +:102F30007381848195810E94C2148091850190E003 +:102F400001968770992780938501D9CF4F81588545 +:102F500069857A858B859C850E94C214CFCF0E949B +:102F600085141092860110928501E7EBF1E086E06E +:102F7000DF011D928A95E9F7C1CF2C960FB6F89420 +:102F8000DEBF0FBECDBFDF91CF911F910895EF92AD +:102F9000FF920F931F93CF93DF938C01009709F457 +:102FA0006CC0F12CEE24E394E8012196F8018491A1 +:102FB000843740F4843008F051C0813081F0823091 +:102FC00019F15BC0853709F444C0A8F19CE7980F5C +:102FD000903708F052C08F770E94D01141C00E5F29 +:102FE0001F4FFE01C49180E28C0F883048F4C770F7 +:102FF0008E2D01C0880FCA95EAF70E94A31A14C04B +:103000008C2F0E9408112DC00E5F1F4FFE01C4912E +:1030100080E28C0F883058F4C7708E2D01C0880F65 +:10302000CA95EAF70E94A91A0E94CA1A1AC08C2FE0 +:103030000E94D01116C00E5F1F4FFE01C491CC2319 +:1030400081F08FE99FE00197F1F700C00000C150C7 +:10305000F6CF0E5F1F4FFE01F49003C00E940811CF +:103060008E018F2D882309F49FCFEFE9FFE0319780 +:10307000F1F700C000008150F5CFDF91CF911F9193 +:103080000F91FF90EF90089508956093C1017093A0 +:10309000C2018093C3019093C4010C9471140F93E7 +:1030A0001F930091C1011091C2012091C301309181 +:1030B000C401DC01CB01802B912BA22BB32B80937D +:1030C000C1019093C201A093C301B093C4011F91A9 +:1030D0000F910C9471140F931F930091C1011091E3 +:1030E000C2012091C3013091C401DC01CB018023D6 +:1030F0009123A223B3238093C1019093C201A09393 +:10310000C301B093C4011F910F910C9471140F93DC +:103110001F930091C1011091C2012091C301309110 +:10312000C401DC01CB0180279127A227B32780931C +:10313000C1019093C201A093C301B093C4011F9138 +:103140000F910C9471141092BD011092BE01109257 +:10315000BF011092C0010C94711441E050E060E096 +:1031600070E004C0440F551F661F771F8A95D2F781 +:103170004093BD015093BE016093BF017093C001A5 +:103180000C94711441E050E060E070E004C0440F22 +:10319000551F661F771F8A95D2F78091BD019091C8 +:1031A000BE01A091BF01B091C001482B592B6A2BE1 +:1031B0007B2B4093BD015093BE016093BF01709380 +:1031C000C0010C94711441E050E060E070E004C074 +:1031D000440F551F661F771F8A95D2F7409550956B +:1031E000609570958091BD019091BE01A091BF0145 +:1031F000B091C001482359236A237B234093BD012A +:103200005093BE016093BF017093C0010C94711480 +:1032100041E050E060E070E004C0440F551F661FBD +:10322000771F8A95D2F78091BD019091BE01A09140 +:10323000BF01B091C001482759276A277B274093D7 +:10324000BD015093BE016093BF017093C0010C9407 +:1032500071140F931F930091BD011091BE01209135 +:10326000BF013091C001DC01CB01802B912BA22B3F +:10327000B32B8093BD019093BE01A093BF01B09387 +:10328000C0011F910F910C9471140F931F93009123 +:10329000BD011091BE012091BF013091C001DC0140 +:1032A000CB0180239123A223B3238093BD0190936C +:1032B000BE01A093BF01B093C0011F910F910C9468 +:1032C00071140F931F930091BD011091BE012091C5 +:1032D000BF013091C001DC01CB0180279127A227DB +:1032E000B3278093BD019093BE01A093BF01B0931B +:1032F000C0011F910F910C9471140895CF92DF9229 +:10330000EF92FF920F931F93CF93DF938C01C090A6 +:10331000C101D090C201E090C301F090C40180913E +:10332000BD019091BE01A091BF01B091C001C82A1A +:10333000D92AEA2AFB2ACFE1D0E0D701C6010C2E18 +:1033400004C0B695A795979587950A94D2F780FF04 +:1033500006C0B8018C2F0E944A08019721F42197DA +:1033600060F780E001C08C2FDF91CF911F910F910A +:10337000FF90EF90DF90CF900895CF93DF93EC0113 +:103380000E947E19BE010E944A08DF91CF910895E4 +:10339000CB010E94BD1908958091C5018595859541 +:1033A000859508958091C5018770089598E0899F5B +:1033B00090011124262B2093C5010C94C218209152 +:1033C000C501809582238093C501982F977069F479 +:1033D00030E0482F552747FD50952417350729F031 +:1033E0008595859585950C94E31808959091C50170 +:1033F000977081E009F480E0089590910C01992381 +:1034000021F090910D01911109C020910E01309190 +:103410000F01F90132969FEF40E01FC0982F96955B +:10342000969596959F3050F5E0910E01F0910F0121 +:10343000E90FF11D877021E030E0A90102C0440FBF +:10344000551F8A95E2F7CA019181892B81830895DE +:103450009F3F39F04F5F4E3041F051915813F8CFF4 +:103460000DC05111F7CF942FF5CF9F3F39F0F901DF +:10347000E90FF11D97FDFA958283089508959091C3 +:103480000C01992321F090910D01911109C0209117 +:103490000E0130910F01F9013296205F3F4F1FC09E +:1034A000982F9695969596959F30F0F4E0910E01A1 +:1034B000F0910F01E90FF11D877021E030E0A901C3 +:1034C00002C0440F551F8A95E2F7CA018095918189 +:1034D0008923818308953196E217F30729F09081BB +:1034E0009813F9CF1082F7CF089581E090E0E09132 +:1034F0000E01F0910F01E80FF91F10820196803143 +:103500009105A9F708959091D901892B8093D9014C +:10351000089580959091D90189238093D9010895C8 +:103520001092D90108959091D801892B8093D801E8 +:10353000089580959091D80189238093D8010895AA +:103540001092D80108959091D701892B8093D701CB +:10355000089580959091D70189238093D70108958C +:103560001092D70108958093C60108951092C60164 +:10357000089580910E0190910F01FC0131969C01FC +:10358000205F3F4F80E0919191118F5FE217F30729 +:10359000D1F70895E0910E01F0910F018091D901CA +:1035A0008083E0910E01F0910F0190818091D8010C +:1035B000892B8083E0910E01F0910F019081809121 +:1035C000D701892B80838091C601882361F0E09127 +:1035D0000E01F0910F019081892B80830E94B91A0E +:1035E00081111092C60180910E0190910F010C94EF +:1035F000F80F20E0009739F0AC01415051098423C5 +:1036000095232F5FF7CF822F0895CF92DF92EF920D +:10361000FF926C01EE24FF24C114D104E104F104F3 +:1036200021F0C701B60120E101C020E0C72ED82E4D +:10363000E92EFF24C114D104E104F10419F0285F3C +:10364000C701B6016B017C0154E0F694E794D7946E +:10365000C7945A95D1F7C114D104E104F10419F0CB +:103660002C5FC701B6016B017C0142E0F694E79440 +:10367000D794C7944A95D1F7C114D104E104F10459 +:1036800019F02E5FC701B601DC01CB01B695A795F5 +:1036900097958795892B8A2B8B2B09F02F5F822F8B +:1036A000FF90EF90DF90CF9008958091F1018430EA +:1036B00021F11092DB0120E488E190E00FB6F8944C +:1036C000A895809360000FBE2093600080E00E9468 +:1036D000E50883B7817F846083BF83B7816083BF40 +:1036E0007894889583B78E7F83BF88E10FB6F8946E +:1036F00080936000109260000FBE089508950895B1 +:103700000E947E1B0E944B030E947F1B0E9440046C +:1037100091E0811101C090E0892F08950E948514E5 +:103720000E94EC0F0C94E50882E084BD93E095BD07 +:103730009AEF97BD80936E0008952FB7F89480910B +:10374000DC019091DD01A091DE01B091DF012FBF7E +:103750000895CF92DF92EF92FF920F931F932FB7AE +:10376000F8944091DC015091DD016091DE0170918F +:10377000DF012FBF6A017B01EE24FF248C0120E0D2 +:1037800030E0C016D106E206F30610F441505109AC +:103790009A01281B390BC9011F910F91FF90EF90DF +:1037A000DF90CF9008951F920F920FB60F921124C1 +:1037B0008F939F93AF93BF938091DC019091DD0134 +:1037C000A091DE01B091DF010196A11DB11D809392 +:1037D000DC019093DD01A093DE01B093DF01BF9186 +:1037E000AF919F918F910F900FBE0F901F901895E2 +:1037F0000E94E90CF8942FEF87EA91E6215080406F +:103800009040E1F700C0000087E090EBDC0180937E +:10381000FB019093FC01A093FD01B093FE019CE09D +:1038200088E10FB6F894A895809360000FBE90933E +:103830006000FFCFEF92FF920F931F93CF93DF9320 +:10384000D82FCDE08C2F0E94390405E010E0E82E3F +:10385000F12CC701002E02C0959587950A94E2F7D6 +:1038600080FF09C0602F7C2F80E00E94F505D813EF +:1038700002C081E006C00150110958F7C15010F78D +:1038800080E0DF91CF911F910F91FF90EF9008950D +:10389000CF93C82F8CE20E941A1C882321F08C2F12 +:1038A000CF910C941A1C80E0CF910895CF930E9481 +:1038B0009D1D811102C00E94831DC5E6C15049F0C3 +:1038C0000E944B038FE39CE90197F1F700C00000D1 +:1038D000F5CF89E20E94481C811113C18AE20E943F +:1038E000481C81110E94831D85E00E94481C8111A3 +:1038F0000E94F81B0E94A81D8093DA0187E00E94B5 +:10390000481C8823A9F18BE10E94481C882351F0B0 +:103910008091DA0181FB222720F991E0922790FB28 +:1039200081F90EC08EE00E94481C882361F08091CE +:10393000DA0182FB222720F991E0922790FB82F99D +:103940008093DA0115C080E10E94481C9091DA0151 +:10395000882341F093FB222720F981E0822780FB16 +:1039600093F904C0892F809580FB90F99093DA0138 +:103970008091DA010E94AC1D0E94BA1D8093FA0169 +:1039800080EE0E94481C882341F08091FA01982F14 +:10399000909590FB80F98093FA0189E30E94481C7E +:1039A000882359F08091FA0181FB222720F991E0C8 +:1039B000922790FB81F98093FA0182EE0E94481CC5 +:1039C000882359F08091FA0182FB222720F991E0A7 +:1039D000922790FB82F98093FA0186EE0E94481CA0 +:1039E000882359F08091FA0183FB222720F991E086 +:1039F000922790FB83F98093FA0183EE0E94481C82 +:103A0000882359F08091FA0184FB222720F991E064 +:103A1000922790FB84F98093FA0185E30E94481C69 +:103A2000882359F08091FA0185FB222720F991E043 +:103A3000922790FB85F98093FA0181E30E94481C4C +:103A4000882359F08091FA0186FB222720F991E022 +:103A5000922790FB86F98093FA0181E10E94481C2D +:103A6000882359F08091FA0187FB222720F991E001 +:103A7000922790FB87F98093FA018091FA010E94C6 +:103A8000BE1D8091FA0187FB882780F980930D0184 +:103A900087E20E94481CC82F8EE10E94481C8111B9 +:103AA000C2608FE10E94481C8111C46080E20E94C4 +:103AB000481C8111C86081E20E94481C8111C061CC +:103AC00082E20E94481C8111C06283E20E94481C6D +:103AD0008111C06484E20E94481C882311F0C068F0 +:103AE00002C0CC2329F08C2F0E94B51D6C2F03C07F +:103AF0000E94B11D682F70E080E090E0CF910C949F +:103B00004518CF9108956DEE7EEF80E090E00E9421 +:103B1000EF2360E082E090E00E94DD2360E083E03C +:103B200090E00E94DD2360E084E090E00E94DD23CD +:103B300060E085E090E00C94DD2380E090E00E945E +:103B4000D72321E08D3E9E4F09F020E0822F08957B +:103B500082E090E00C94CF23682F82E090E00C94F8 +:103B6000DD2383E090E00C94CF23682F83E090E086 +:103B70000C94DD2384E090E00C94CF23682F84E044 +:103B800090E00C94DD238091E20180FF0BC06091F6 +:103B9000130185E0689FB0011124759567957595AF +:103BA00067952BC081FF09C06091130185E0689F74 +:103BB000B00111247595679520C082FF07C0609100 +:103BC000130185E0689FB001112417C09091E301B3 +:103BD0009923D1F060911201961788F72091130173 +:103BE00085E0289F90011124929FA001939F500D82 +:103BF000112470E0CA010E94A1236038710540F4CD +:103C00006115710539F002C065E070E0862F0895F6 +:103C10008FE7089581E008958091E20180FF08C058 +:103C20006091110170E0759567957595679521C054 +:103C300081FF06C06091110170E07595679519C00C +:103C400082FF04C06091110170E010C09091E30107 +:103C50009923C1F0609110019617A0F7809111018E +:103C6000899FC001112470E00E94A1236038710572 +:103C700028F46115710521F0862F08958FE70895C6 +:103C800081E0089561E070E0F4CF803F21F40E946C +:103C9000C31D819504C0813F29F40E94C31D8093F8 +:103CA000E6010895823F21F40E94C31D819504C05E +:103CB000833F29F40E94C31D8093E5010895893F45 +:103CC00019F40E940C1E05C08A3F31F40E940C1E9C +:103CD00081958093E70108958B3F21F40E940C1E8B +:103CE000819504C08C3F29F40E940C1E8093E8014A +:103CF0000895843F21F48091E401816017C0853FDD +:103D000021F48091E401826011C0863F21F480910A +:103D1000E40184600BC0873F21F48091E401886056 +:103D200005C0883F31F48091E40180618093E40113 +:103D300008958D3F21F48091E20181600BC08E3F98 +:103D400021F48091E201826005C08F3F29F48091C7 +:103D5000E20184608093E2010895803F39F480910C +:103D6000E60187FF6CC01092E60169C0813F29F42B +:103D70008091E6011816BCF362C09091E501823F84 +:103D800029F497FF5CC01092E50159C0833F19F4F4 +:103D90001916CCF354C0893F41F48091E7011816FD +:103DA0000CF04DC01092E7014AC08A3F29F480917F +:103DB000E70187FF44C0F6CF8B3F39F48091E801DB +:103DC00087FF3DC01092E8013AC08C3F29F48091F2 +:103DD000E8011816BCF333C0843F21F48091E4015C +:103DE0008E7F17C0853F21F48091E4018D7F11C043 +:103DF000863F21F48091E4018B7F0BC0873F21F443 +:103E00008091E401877F05C0883F31F48091E4010F +:103E10008F7E8093E40113C08D3F21F48091E201F5 +:103E20008E7F0BC08E3F21F48091E2018D7F05C013 +:103E30008F3F29F48091E2018B7F8093E201809192 +:103E4000E50181110EC08091E60181110AC08091C7 +:103E5000E701811106C08091E801811102C0109232 +:103E6000E301089584EE91E00E9403100E949D1BDF +:103E70009093E1018093E00108951F93CF93DF9326 +:103E80008091E0019091E1010E94A91BAC01909109 +:103E9000E301992321F02091140130E006C0209124 +:103EA00015018AE0289F900111244217530708F456 +:103EB00086C08091E501C091E601D091E7011091A3 +:103EC000E801811107C0C11176C0D11174C0111170 +:103ED00072C075C09F3F19F09F5F9093E301181661 +:103EE00024F40E94C31D8093E5018091E50187FFC2 +:103EF00005C00E94C31D81958093E5011C1624F422 +:103F00000E94C31D8093E6018091E60187FF05C0F2 +:103F10000E94C31D81958093E6016091E5016623AF +:103F200039F1C091E601CC2319F1772767FD70952F +:103F3000872F972F0E94B22223E333E343E35FE30B +:103F40000E9416230E947F226093E5016C2F772741 +:103F500067FD7095872F972F0E94B22223E333E3EA +:103F600043E35FE30E9416230E947F226093E601F1 +:103F70001D1624F40E940C1E8093E7018091E70136 +:103F800087FF05C00E940C1E81958093E7011116E2 +:103F900024F40E940C1E8093E8018091E80187FFC1 +:103FA00005C00E940C1E81958093E801DF91CF919E +:103FB0001F910C94321F9F3F09F08ECF96CFDF9157 +:103FC000CF911F910895E4EEF1E085E0DF011D92AD +:103FD0008A95E9F71092E3011092E2010895833087 +:103FE00081F128F4813059F08230D1F00895853084 +:103FF00009F449C0B8F1863009F456C0089580919B +:104000001501262F30E0280F311D2F3F310524F4F4 +:10401000680F6093150108958FEF8093150108953F +:1040200080911401262F30E0280F311D2F3F3105DC +:1040300024F4680F6093140108958FEF80931401A6 +:10404000089580911301262F30E0280F311D2F3F56 +:10405000310524F4680F6093130108958FEF809366 +:104060001301089580911201262F30E0280F311D91 +:104070002F3F310524F4680F6093120108958FEFEC +:1040800080931201089580911101262F30E0280FAE +:10409000311D2F3F310524F4680F609311010895FD +:1040A0008FEF80931101089580911001262F30E049 +:1040B000280F311D2F3F310524F4680F6093100144 +:1040C00008958FEF809310010895833011F128F443 +:1040D000813049F0823091F00895853081F120F1EE +:1040E0008630C1F1089580911501681720F4861B70 +:1040F000809315010895109215010895809114017F +:10410000681720F4861B80931401089510921401FF +:10411000089580911301681720F4861B8093130182 +:10412000089510921301089580911201681720F4E8 +:10413000861B8093120108951092120108958091B8 +:104140001101681720F4861B8093110108951092C5 +:104150001101089580911001681720F4861B809347 +:10416000100108951092100108950F931F938D313F +:1041700009F46BC008F03FC08E3009F47FC0C0F472 +:10418000873009F469C068F4863009F0B1C08091C5 +:10419000DA01817F8E7F8093DA0181E08093EA01EA +:1041A000A8C0883009F4A2C08B3009F49FC0A0C019 +:1041B000863109F49BC078F4803109F472C08131F2 +:1041C00009F096C00E94851490910D0181E0892725 +:1041D00080930D018BC0893109F488C08B3109F0BF +:1041E00087C08091DA0181FB222720F991E0922794 +:1041F00090FB81F94CC0853309F470C048F48732D4 +:1042000009F46CC008F459C0893209F467C070C061 +:10421000833438F48A3308F04EC0883309F466C01A +:1042200067C0833409F45AC0883409F061C00E9421 +:1042300085140FEF13ED20E3015010402040E1F70B +:1042400000C000000E94F81B51C00E9439220E9449 +:10425000EC0F0E94E5084AC09091DA01892F809501 +:10426000817080FB90F929F0966098609093DA0154 +:1042700040C0997F977F9093DA0138C08091DA012E +:1042800082FB222720F991E0922790FB82F980930C +:10429000DA01992359F18091DA0181608093DA0182 +:1042A00025C08091DA0183FB222720F991E0922733 +:1042B00090FB83F9ECCF895301C08D5141E050E070 +:1042C00060E070E08A019B0104C0000F111F221FF3 +:1042D000331F8A95D2F7C901B80104C061E070E0CC +:1042E00080E090E00E9445180E94851481E001C0A2 +:1042F00080E01F910F91089580E0089580E0089577 +:10430000CF93C82F8091EA01813079F018F0823084 +:10431000E9F187C0E0910E01F0910F0180818131B8 +:1043200069F0823209F07FC009C0E0910E01F0917E +:104330000F018081813111F0823261F48C2F0E9453 +:104340007C21811104C08C2F0E94B5201DC081E00A +:1043500090E01AC08C2F0E947E21811114C0C431BC +:1043600079F048F4CB3079F0C03109F060C082E0D8 +:104370008093EA0108C0C93219F0C83321F057C050 +:104380001092EA0154C081E0817053C0C93289F1B2 +:1043900018F5C43171F1A8F4C73009F046C08AE0BD +:1043A0008093150194E19093140193E0909313018D +:1043B0008093120188E08093110188E280931001BC +:1043C00034C0CE51C63088F5EC2FF0E0E65DFE4FEC +:1043D00080818093E90129C0CE34E9F020F4CB3408 +:1043E00021F56AE013C0C13579F0C235F1F461E01E +:1043F0000DC08091E901882319F01092E90115C0E0 +:1044000081E08093EA0115C061E006C08091E90176 +:104410000E94EF1F0AC06AE08091E9010E946520B6 +:1044200004C01092EA0180E004C081E002C080E094 +:10443000ABCFCF910895E1E8F0E080818860808380 +:104440008081816080838FB7F89493E09093890096 +:1044500090ED909388008FBF0895EFE6F0E08081A3 +:10446000826080830895EFE6F0E080818D7F808315 +:104470000895EFE6F0E0908182E089278083089537 +:104480001F920F920FB60F9211242F933F934F93C9 +:104490005F936F937F938F939F93AF93BF93EF93AC +:1044A000FF938091EB019091EC0101969093EC01C8 +:1044B0008093EB01811103C082E00E94E508E09146 +:1044C000EC01E695E695F0E0EC54FB4FE491809129 +:1044D000EB018E1303C080E00E94E508FF91EF918D +:1044E000BF91AF919F918F917F916F915F914F910C +:1044F0003F912F910F900FBE0F901F90189504D0F1 +:104500006894B1118DC0089570D088F09F5790F0D5 +:10451000B92F9927B751A0F0D1F0660F771F881FE8 +:10452000991F1AF0BA95C9F712C0B13081F077D04F +:10453000B1E0089574C0672F782F8827B85F39F0ED +:10454000B93FCCF3869577956795B395D9F73EF447 +:1045500090958095709561957F4F8F4F9F4F0895EF +:10456000E89409C097FB3EF490958095709561950D +:104570007F4F8F4F9F4F9923A9F0F92F96E9BB27C3 +:104580009395F695879577956795B795F111F8CF3F +:10459000FAF4BB0F11F460FF1BC06F5F7F4F8F4FAA +:1045A0009F4F16C0882311F096E911C0772321F0A0 +:1045B0009EE8872F762F05C0662371F096E8862F38 +:1045C00070E060E02AF09A95660F771F881FDAF78F +:1045D000880F9695879597F9089557FD9058440F41 +:1045E000551F59F05F3F71F04795880F97FB991F52 +:1045F00061F09F3F79F0879508951216130614060F +:10460000551FF2CF4695F1DF08C01616170618069B +:10461000991FF1CF86957105610508940895E89476 +:10462000BB2766277727CB0197F908950BD078C071 +:1046300069D028F06ED018F0952309F05AC05FC0F9 +:104640001124EECFCADFA0F3959FD1F3950F50E070 +:10465000551F629FF001729FBB27F00DB11D639F34 +:10466000AA27F00DB11DAA1F649F6627B00DA11DDA +:10467000661F829F2227B00DA11D621F739FB00D80 +:10468000A11D621F839FA00D611D221F749F3327F0 +:10469000A00D611D231F849F600D211D822F762F89 +:1046A0006A2F11249F5750408AF0E1F088234AF086 +:1046B000EE0FFF1FBB1F661F771F881F91505040D2 +:1046C000A9F79E3F510570F014C0AACF5F3FECF3ED +:1046D000983EDCF3869577956795B795F795E795BE +:1046E0009F5FC1F7FE2B880F911D9695879597F9CF +:1046F000089597F99F6780E870E060E008959FEF64 +:1047000080EC089500240A94161617061806090668 +:10471000089500240A941216130614060506089537 +:10472000092E0394000C11F4882352F0BB0F40F4BF +:10473000BF2B11F460FF04C06F5F7F4F8F4F9F4FFF +:10474000089597FB072E16F4009407D077FD09D043 +:104750000E94BB2307FC05D03EF4909581959F4FA6 +:104760000895709561957F4F0895EE0FFF1F059096 +:10477000F491E02D0994AA1BBB1B51E107C0AA1FAD +:10478000BB1FA617B70710F0A61BB70B881F991FF2 +:104790005A95A9F780959095BC01CD010895F99996 +:1047A000FECF92BD81BDF89A992780B50895A8E102 +:1047B000B0E042E050E00C94F723262FF999FECFA9 +:1047C00092BD81BDF89A019700B4021639F01FBA64 +:1047D00020BD0FB6F894FA9AF99A0FBE0895019683 +:1047E000272F0E94DE230C94DD23DC01CB01FC018A +:1047F000F999FECF06C0F2BDE1BDF89A319600B43A +:0E4800000D9241505040B8F70895F894FFCF44 +:10480E000220E708750952091E09EA080101C701CD +:10481E0028080A03140A3F4D363975042804F2039A +:10482E00B9034C0365037E039703010203040506D7 +:04483E00070809005E +:00000001FF diff --git a/keyboards/ergodox_ez/keymaps/german-kinergo/keymap.c b/keyboards/ergodox_ez/keymaps/german-kinergo/keymap.c new file mode 100644 index 0000000000..b1cecf0ddd --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/german-kinergo/keymap.c @@ -0,0 +1,210 @@ +// German keymap derived from "german", but more closely resembling the German layout of the Kinesis Ergo Elan. +// +// chschmitz, 2016-01-27 +#include "ergodox_ez.h" +#include "debug.h" +#include "action_layer.h" +#include "keymap_german.h" + +// Layer names +#define BASE 0 // default layer +#define SYMB 1 // symbol layer +#define MDIA 2 // media keys + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* Keymap 0: Basic layer + * + * X'es mark the spots where this is different from the "german" layout which it is based on. + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * |X Esc X| 1 | 2 | 3 | 4 | 5 |X ` X| |XPRSCX| 6 | 7 | 8 | 9 | 0 | ß | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * |X Tab X| Q | W | E | R | T |X L1 X| |X L1 X| Z | U | I | O | P | Ü | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | Caps | A | S | D | F | G |------| |------| H | J | K | L | Ö | Ä/L2 | + * |--------+------+------+------+------+------|X L2 X| |X L2 X|------+------+------+------+------+--------| + * | LShift | Y | X | C | V | B | | | | N | M | , | . |X - X| RShift | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * |XLGuiX|X ^ X|X < X|XLEFTX|XRIGHT| |XDownX|X Up X|X # X|X + X|XRGuiX| + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * |XCTRLX|XALTX | | Alt |Ctrl/Esc| + * ,------+------+------| |------+--------+------. + * |XXX |XXX | Home | | PgUp |XXX |XXX | + * | Bkspc|Del |------| |------| Enter | Space| + * | | | 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_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, DE_ACUT, + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, MO(1), + KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, + KC_LSFT, DE_Y, KC_X, KC_C, KC_V, KC_B, MO(2), + KC_LGUI, DE_CIRC, DE_LESS, KC_LEFT, KC_RIGHT, + KC_LCTRL, KC_LALT, + KC_HOME, + KC_BSPC,KC_DELT,KC_END, + // right hand + KC_PSCREEN, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, + MO(1), DE_Z, KC_U, KC_I, KC_O, KC_P, DE_UE, + KC_H, KC_J, KC_K, KC_L, DE_OE, LT(MDIA,DE_AE), + MO(2), KC_N, KC_M, KC_COMM, KC_DOT, DE_MINS, KC_RSFT, + KC_DOWN, KC_UP, DE_HASH, DE_PLUS, KC_RGUI, + KC_RALT, KC_RCTRL, + KC_PGUP, + KC_PGDN, KC_ENT, KC_SPC + ), +// [BASE] = KEYMAP( // layer 0 : default +// // left hand +// KC_CIRC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_MPLY, +// KC_DELT, KC_Q, KC_W, KC_E, KC_R, KC_T, TG(1), +// KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, +// KC_LSFT, DE_Y, KC_X, KC_C, KC_V, KC_B, ALL_T(KC_NO), +// LT(SYMB,DE_LESS),CTL_T(DE_HASH), DE_ACUT, DE_MINS, DE_PLUS, +// ALT_T(KC_APP), KC_LGUI, +// KC_HOME, +// KC_SPC,KC_BSPC,KC_END, +// // right hand +// KC_MNXT, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, +// TG(2), DE_Z, KC_U, KC_I, KC_O, KC_P, DE_UE, +// KC_H, KC_J, KC_K, KC_L, DE_OE, LT(MDIA,DE_AE), +// MEH_T(KC_NO),KC_N, KC_M, KC_COMM, KC_DOT, CTL_T(DE_MINS), KC_RSFT, +// KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_FN1, +// KC_LALT,CTL_T(KC_ESC), +// KC_PGUP, +// KC_PGDN,KC_TAB, KC_ENT +// ), +/* Keymap 1: Symbol Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | ! | @ | { | } | | | | | | Up | 7 | 8 | 9 | * | F12 | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | # | $ | ( | ) | ` |------| |------| Down | 4 | 5 | 6 | + | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | % | ^ | [ | ] | ~ | | | | & | 1 | 2 | 3 | \ | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | . | 0 | = | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// SYMBOLS +[SYMB] = KEYMAP( + // left hand + KC_TRNS,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, + KC_TRNS,DE_EXLM,DE_AT, DE_LCBR,DE_RCBR,DE_PIPE,KC_TRNS, + KC_TRNS,DE_HASH,DE_DLR, DE_LPRN,DE_RPRN,DE_GRV, + KC_TRNS,DE_PERC,DE_CIRC,DE_LBRC,DE_RBRC,DE_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, DE_ASTR, KC_F12, + KC_DOWN, KC_4, KC_5, KC_6, DE_PLUS, KC_TRNS, + KC_TRNS, DE_AMPR, KC_1, KC_2, KC_3, DE_BSLS, KC_TRNS, + KC_TRNS,KC_DOT, KC_0, DE_EQL, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), +/* Keymap 2: Media and mouse keys + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | Lclk | MsUp | Rclk | | | | | |VolDwn| Mute |VolUp | | F12 | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | Btn4 |MsLeft|MsDown|MsRght| Btn5 |------| |------| | Prev | Stop | Play | Next | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | |WhRght|WhDown| WhUp |WhLeft|WhClk | | | |BwSrch|BwBack|BwHome|BwRefr|BwFwd | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | |MsAcl0|MsAcl1|MsAcl2| | | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | |Brwser|Brwser| + * | Lclk | Rclk |------| |------|Back |Forwd | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// MEDIA AND MOUSE +[MDIA] = KEYMAP( + KC_TRNS, KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_TRNS, + KC_TRNS, KC_TRNS, KC_BTN1, KC_MS_U, KC_BTN2, KC_TRNS, KC_TRNS, + KC_TRNS, KC_BTN4, KC_MS_L, KC_MS_D, KC_MS_R, KC_BTN5, + KC_TRNS, KC_WH_L, KC_WH_D, KC_WH_U, KC_WH_R, KC_BTN3, KC_TRNS, + KC_TRNS, KC_TRNS, KC_ACL0, KC_ACL1, KC_ACL2, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_BTN1, KC_BTN2, KC_TRNS, + // right hand + KC_TRNS, KC_F6 , KC_F7 , KC_F8 , KC_F9 , KC_F10 , KC_F11, + KC_TRNS, KC_TRNS, KC_VOLD, KC_MUTE, KC_VOLU, KC_TRNS, KC_F12, + KC_TRNS, KC_MPRV, KC_MSTP, KC_MPLY, KC_MNXT, KC_TRNS, + KC_TRNS, KC_WSCH, KC_WBAK, KC_WHOM, KC_WREF, KC_WFWD, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_WBAK, KC_WFWD +), +}; + +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) { + case SYMB: + ergodox_right_led_1_on(); + break; + case MDIA: + ergodox_right_led_2_on(); + break; + default: + ergodox_board_led_off(); + break; + } + +}; diff --git a/keyboards/ergodox_ez/keymaps/german-kinergo/layout-code.png b/keyboards/ergodox_ez/keymaps/german-kinergo/layout-code.png new file mode 100644 index 0000000000..a0ef551e12 Binary files /dev/null and b/keyboards/ergodox_ez/keymaps/german-kinergo/layout-code.png differ diff --git a/keyboards/ergodox_ez/keymaps/german-kinergo/layout-media.png b/keyboards/ergodox_ez/keymaps/german-kinergo/layout-media.png new file mode 100644 index 0000000000..56aea1dca4 Binary files /dev/null and b/keyboards/ergodox_ez/keymaps/german-kinergo/layout-media.png differ diff --git a/keyboards/ergodox_ez/keymaps/german-kinergo/layout.png b/keyboards/ergodox_ez/keymaps/german-kinergo/layout.png new file mode 100644 index 0000000000..76a1aa5d7a Binary files /dev/null and b/keyboards/ergodox_ez/keymaps/german-kinergo/layout.png differ diff --git a/keyboards/ergodox_ez/keymaps/german-kinergo/readme.md b/keyboards/ergodox_ez/keymaps/german-kinergo/readme.md new file mode 100644 index 0000000000..557d85a8a4 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/german-kinergo/readme.md @@ -0,0 +1,35 @@ +# German Layout for the ErgoDox + +This layout is inspired by the "kinesis-qwerty-mod" from benblazak's +[ergodox-firmware](https://github.com/benblazak/ergodox-firmware), as well as by the "german" layout from the +[qmk_firmware](https://github.com/jackhumbert/qmk_firmware). +The goal was to have a layout that is pretty close to an ordinary German +keyboard, so I don't have to make adjustments on the operating system level +and I keep some of the muscle memory to use a regular keyboard. + +Modifications I made with regard to the aforementioned layouts: + +* The key layout is pretty close to the layout of a German Kinesis Ergo Elan. + The only exception I made is that I reversed the "up" and "down" cursor keys, + since that feels more natural to me. + +* All layer changes are "momentary", i.e. they only last as long as the respective key is pressed. + +* I sacrificed the Hyper and Meh keys, which I don't use, and put layer change keys in their place. + +* I added a PrintScreen key which I use quite regularly for screenshots. + +## Default Layer + +![Layout of the default layer](layout.png "Layout of the default layer") + +## Code Layer + +![Layout of the code layer](layout-code.png "Layout of the code layer") + +## Media Layer + +![Layout of the media layer](layout-media.png "Layout of the media layer") + +Christoph Schmitz <schm4704 at web dot de> +2016-01-28 diff --git a/keyboards/ergodox_ez/keymaps/german-manuneo/compile_keymap.py b/keyboards/ergodox_ez/keymaps/german-manuneo/compile_keymap.py new file mode 100644 index 0000000000..7076a6ecb2 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/german-manuneo/compile_keymap.py @@ -0,0 +1,710 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- +"""Compiler for keymap.c files + +This scrip will generate a keymap.c file from a simple +markdown file with a specific layout. + +Usage: + python compile_keymap.py INPUT_PATH [OUTPUT_PATH] +""" +from __future__ import division +from __future__ import print_function +from __future__ import absolute_import +from __future__ import unicode_literals + +import os +import io +import re +import sys +import json +import unicodedata +import collections +import itertools as it + +PY2 = sys.version_info.major == 2 + +if PY2: + chr = unichr + + +KEYBOARD_LAYOUTS = { + # These map positions in the parsed layout to + # positions in the KEYMAP MATRIX + 'ergodox_ez': [ + [ 0, 1, 2, 3, 4, 5, 6], [38, 39, 40, 41, 42, 43, 44], + [ 7, 8, 9, 10, 11, 12, 13], [45, 46, 47, 48, 49, 50, 51], + [14, 15, 16, 17, 18, 19 ], [ 52, 53, 54, 55, 56, 57], + [20, 21, 22, 23, 24, 25, 26], [58, 59, 60, 61, 62, 63, 64], + [27, 28, 29, 30, 31 ], [ 65, 66, 67, 68, 69], + [ 32, 33], [70, 71 ], + [ 34], [72 ], + [ 35, 36, 37], [73, 74, 75 ], + ] +} + +ROW_INDENTS = { + 'ergodox_ez': [0, 0, 0, 0, 0, 1, 0, 0, 0, 2, 5, 0, 6, 0, 4, 0] +} + +BLANK_LAYOUTS = [ +# Compact Layout +""" +.------------------------------------.------------------------------------. +| | | | | | | | | | | | | | | +!-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! +| | | | | | | | | | | | | | | +!-----+----+----+----x----x----! ! !----x----x----+----+----+-----! +| | | | | | |-----!-----! | | | | | | +!-----+----+----+----x----x----! ! !----x----x----+----+----+-----! +| | | | | | | | | | | | | | | +'-----+----+----+----+----+----------'----------+----+----+----+----+-----' + | | | | | | ! | | | | | + '------------------------' '------------------------' + .-----------. .-----------. + | | | ! | | + .-----+-----+-----! !-----+-----+-----. + ! ! | | ! | ! ! + ! ! !-----! !-----! ! ! + | | | | ! | | | + '-----------------' '-----------------' +""", + +# Wide Layout +""" +.---------------------------------------------. .---------------------------------------------. +| | | | | | | | ! | | | | | | | +!-------+-----+-----+-----+-----+-------------! !-------+-----+-----+-----+-----+-----+-------! +| | | | | | | | ! | | | | | | | +!-------+-----+-----+-----x-----x-----! ! ! !-----x-----x-----+-----+-----+-------! +| | | | | | |-------! !-------! | | | | | | +!-------+-----+-----+-----x-----x-----! ! ! !-----x-----x-----+-----+-----+-------! +| | | | | | | | ! | | | | | | | +'-------+-----+-----+-----+-----+-------------' '-------------+-----+-----+-----+-----+-------' + | | | | | | ! | | | | | + '------------------------------' '------------------------------' + .---------------. .---------------. + | | | ! | | + .-------+-------+-------! !-------+-------+-------. + ! ! | | ! | ! ! + ! ! !-------! !-------! ! ! + | | | | ! | | | + '-----------------------' '-----------------------' +""", +] + + +DEFAULT_CONFIG = { + "keymaps_includes": [ + "keymap_common.h", + ], + 'filler': "-+.'!:x", + 'separator': "|", + 'default_key_prefix': ["KC_"], +} + + +SECTIONS = [ + 'layout_config', + 'layers', +] + + +# Markdown Parsing + +ONELINE_COMMENT_RE = re.compile(r""" + ^ # comment must be at the start of the line + \s* # arbitrary whitespace + // # start of the comment + (.*) # the comment + $ # until the end of line +""", re.MULTILINE | re.VERBOSE +) + +INLINE_COMMENT_RE = re.compile(r""" + ([\,\"\[\]\{\}\d]) # anythig that might end a expression + \s+ # comment must be preceded by whitespace + // # start of the comment + \s # and succeded by whitespace + (?:[^\"\]\}\{\[]*) # the comment (except things which might be json) + $ # until the end of line +""", re.MULTILINE | re.VERBOSE) + +TRAILING_COMMA_RE = re.compile(r""" + , # the comma + (?:\s*) # arbitrary whitespace + $ # only works if the trailing comma is followed by newline + (\s*) # arbitrary whitespace + ([\]\}]) # end of an array or object +""", re.MULTILINE | re.VERBOSE) + + +def loads(raw_data): + if isinstance(raw_data, bytes): + raw_data = raw_data.decode('utf-8') + + raw_data = ONELINE_COMMENT_RE.sub(r"", raw_data) + raw_data = INLINE_COMMENT_RE.sub(r"\1", raw_data) + raw_data = TRAILING_COMMA_RE.sub(r"\1\2", raw_data) + return json.loads(raw_data) + + +def parse_config(path): + def reset_section(): + section.update({ + 'name': section.get('name', ""), + 'sub_name': "", + 'start_line': -1, + 'end_line': -1, + 'code_lines': [], + }) + + def start_section(line_index, line): + end_section() + if line.startswith("# "): + name = line[2:] + elif line.startswith("## "): + name = line[3:] + else: + name = "" + + name = name.strip().replace(" ", "_").lower() + if name in SECTIONS: + section['name'] = name + else: + section['sub_name'] = name + section['start_line'] = line_index + + def end_section(): + if section['start_line'] >= 0: + if section['name'] == 'layout_config': + config.update(loads("\n".join( + section['code_lines'] + ))) + elif section['sub_name'].startswith('layer'): + layer_name = section['sub_name'] + config['layer_lines'][layer_name] = section['code_lines'] + + reset_section() + + def amend_section(line_index, line): + section['end_line'] = line_index + section['code_lines'].append(line) + + config = DEFAULT_CONFIG.copy() + config.update({ + 'layer_lines': collections.OrderedDict(), + 'macro_ids': {'UM'}, + 'unicode_macros': {}, + }) + + section = {} + reset_section() + + with io.open(path, encoding="utf-8") as fh: + for i, line in enumerate(fh): + if line.startswith("#"): + start_section(i, line) + elif line.startswith(" "): + amend_section(i, line[4:]) + else: + # TODO: maybe parse description + pass + + end_section() + assert 'layout' in config + return config + +# header file parsing + +IF0_RE = re.compile(r""" + ^ + #if 0 + $.*? + #endif +""", re.MULTILINE | re.DOTALL | re.VERBOSE) + + +COMMENT_RE = re.compile(r""" + /\* + .*? + \*/" +""", re.MULTILINE | re.DOTALL | re.VERBOSE) + + +def read_header_file(path): + with io.open(path, encoding="utf-8") as fh: + data = fh.read() + data, _ = COMMENT_RE.subn("", data) + data, _ = IF0_RE.subn("", data) + return data + + +def regex_partial(re_str_fmt, flags): + def partial(*args, **kwargs): + re_str = re_str_fmt.format(*args, **kwargs) + return re.compile(re_str, flags) + return partial + + +KEYDEF_REP = regex_partial(r""" + #define + \s + ( + (?:{}) # the prefixes + (?:\w+) # the key name + ) # capture group end +""", re.MULTILINE | re.DOTALL | re.VERBOSE) + + +ENUM_RE = re.compile(r""" + ( + enum + \s\w+\s + \{ + .*? # the enum content + \} + ; + ) # capture group end +""", re.MULTILINE | re.DOTALL | re.VERBOSE) + + +ENUM_KEY_REP = regex_partial(r""" + ( + {} # the prefixes + \w+ # the key name + ) # capture group end +""", re.MULTILINE | re.DOTALL | re.VERBOSE) + + +def parse_keydefs(config, data): + prefix_options = "|".join(config['key_prefixes']) + keydef_re = KEYDEF_REP(prefix_options) + enum_key_re = ENUM_KEY_REP(prefix_options) + for match in keydef_re.finditer(data): + yield match.groups()[0] + + for enum_match in ENUM_RE.finditer(data): + enum = enum_match.groups()[0] + for key_match in enum_key_re.finditer(enum): + yield key_match.groups()[0] + + +def parse_valid_keys(config, out_path): + basepath = os.path.abspath(os.path.join(os.path.dirname(out_path))) + dirpaths = [] + subpaths = [] + while len(subpaths) < 6: + path = os.path.join(basepath, *subpaths) + dirpaths.append(path) + dirpaths.append(os.path.join(path, "tmk_core", "common")) + dirpaths.append(os.path.join(path, "quantum")) + subpaths.append('..') + + includes = set(config['keymaps_includes']) + includes.add("keycode.h") + + valid_keycodes = set() + for dirpath, include in it.product(dirpaths, includes): + include_path = os.path.join(dirpath, include) + if os.path.exists(include_path): + header_data = read_header_file(include_path) + valid_keycodes.update( + parse_keydefs(config, header_data) + ) + return valid_keycodes + + +# Keymap Parsing + +def iter_raw_codes(layer_lines, filler, separator): + filler_re = re.compile("[" + filler + " ]") + for line in layer_lines: + line, _ = filler_re.subn("", line.strip()) + if not line: + continue + codes = line.split(separator) + for code in codes[1:-1]: + yield code + + +def iter_indexed_codes(raw_codes, key_indexes): + key_rows = {} + key_indexes_flat = [] + + for row_index, key_indexes in enumerate(key_indexes): + for key_index in key_indexes: + key_rows[key_index] = row_index + key_indexes_flat.extend(key_indexes) + assert len(raw_codes) == len(key_indexes_flat) + for raw_code, key_index in zip(raw_codes, key_indexes_flat): + # we keep track of the row mostly for layout purposes + yield raw_code, key_index, key_rows[key_index] + + +LAYER_CHANGE_RE = re.compile(r""" + (DF|TG|MO)\(\d+\) +""", re.VERBOSE) + + +MACRO_RE = re.compile(r""" + M\(\w+\) +""", re.VERBOSE) + + +UNICODE_RE = re.compile(r""" + U[0-9A-F]{4} +""", re.VERBOSE) + + +NON_CODE = re.compile(r""" + ^[^A-Z0-9_]$ +""", re.VERBOSE) + + +def parse_uni_code(raw_code): + macro_id = "UC_" + ( + unicodedata.name(raw_code) + .replace(" ", "_") + .replace("-", "_") + ) + code = "M({})".format(macro_id) + uc_hex = "{:04X}".format(ord(raw_code)) + return code, macro_id, uc_hex + + +def parse_key_code(raw_code, key_prefixes, valid_keycodes): + if raw_code in valid_keycodes: + return raw_code + + for prefix in key_prefixes: + code = prefix + raw_code + if code in valid_keycodes: + return code + + +def parse_code(raw_code, key_prefixes, valid_keycodes): + if not raw_code: + return 'KC_TRNS', None, None + + if LAYER_CHANGE_RE.match(raw_code): + return raw_code, None, None + + if MACRO_RE.match(raw_code): + macro_id = raw_code[2:-1] + return raw_code, macro_id, None + + if UNICODE_RE.match(raw_code): + hex_code = raw_code[1:] + return parse_uni_code(chr(int(hex_code, 16))) + + if NON_CODE.match(raw_code): + return parse_uni_code(raw_code) + + code = parse_key_code(raw_code, key_prefixes, valid_keycodes) + return code, None, None + + +def parse_keymap(config, key_indexes, layer_lines, valid_keycodes): + keymap = {} + raw_codes = list(iter_raw_codes( + layer_lines, config['filler'], config['separator'] + )) + indexed_codes = iter_indexed_codes(raw_codes, key_indexes) + key_prefixes = config['key_prefixes'] + for raw_code, key_index, row_index in indexed_codes: + code, macro_id, uc_hex = parse_code( + raw_code, key_prefixes, valid_keycodes + ) + # TODO: line numbers for invalid codes + err_msg = "Could not parse key '{}' on row {}".format( + raw_code, row_index + ) + assert code is not None, err_msg + # print(repr(raw_code), repr(code), macro_id, uc_hex) + if macro_id: + config['macro_ids'].add(macro_id) + if uc_hex: + config['unicode_macros'][macro_id] = uc_hex + keymap[key_index] = (code, row_index) + return keymap + + +def parse_keymaps(config, valid_keycodes): + keymaps = collections.OrderedDict() + key_indexes = config.get( + 'key_indexes', KEYBOARD_LAYOUTS[config['layout']] + ) + # TODO: maybe validate key_indexes + + for layer_name, layer_lines, in config['layer_lines'].items(): + keymaps[layer_name] = parse_keymap( + config, key_indexes, layer_lines, valid_keycodes + ) + return keymaps + +# keymap.c output + +USERCODE = """ +// Runs just one time when the keyboard initializes. +void matrix_init_user(void) { + +}; + +// Runs constantly in the background, in a loop. +void matrix_scan_user(void) { + uint8_t layer = biton32(layer_state); + + ergodox_board_led_off(); + ergodox_right_led_1_off(); + ergodox_right_led_2_off(); + ergodox_right_led_3_off(); + switch (layer) { + case L1: + ergodox_right_led_1_on(); + break; + case L2: + ergodox_right_led_2_on(); + break; + case L3: + ergodox_right_led_3_on(); + break; + case L4: + ergodox_right_led_1_on(); + ergodox_right_led_2_on(); + break; + case L5: + ergodox_right_led_1_on(); + ergodox_right_led_3_on(); + break; + // case L6: + // ergodox_right_led_2_on(); + // ergodox_right_led_3_on(); + // break; + // case L7: + // ergodox_right_led_1_on(); + // ergodox_right_led_2_on(); + // ergodox_right_led_3_on(); + // break; + default: + ergodox_board_led_off(); + break; + } +}; +""" + +MACROCODE = """ +#define UC_MODE_WIN 0 +#define UC_MODE_LINUX 1 +#define UC_MODE_OSX 2 + +// TODO: allow default mode to be configured +static uint16_t unicode_mode = UC_MODE_WIN; + +uint16_t hextokeycode(uint8_t hex) {{ + if (hex == 0x0) {{ + return KC_P0; + }} + if (hex < 0xA) {{ + return KC_P1 + (hex - 0x1); + }} + return KC_A + (hex - 0xA); +}} + +void unicode_action_function(uint16_t hi, uint16_t lo) {{ + switch (unicode_mode) {{ + case UC_MODE_WIN: + register_code(KC_LALT); + + register_code(KC_PPLS); + unregister_code(KC_PPLS); + + register_code(hextokeycode((hi & 0xF0) >> 4)); + unregister_code(hextokeycode((hi & 0xF0) >> 4)); + register_code(hextokeycode((hi & 0x0F))); + unregister_code(hextokeycode((hi & 0x0F))); + register_code(hextokeycode((lo & 0xF0) >> 4)); + unregister_code(hextokeycode((lo & 0xF0) >> 4)); + register_code(hextokeycode((lo & 0x0F))); + unregister_code(hextokeycode((lo & 0x0F))); + + unregister_code(KC_LALT); + break; + case UC_MODE_LINUX: + register_code(KC_LCTL); + register_code(KC_LSFT); + + register_code(KC_U); + unregister_code(KC_U); + + register_code(hextokeycode((hi & 0xF0) >> 4)); + unregister_code(hextokeycode((hi & 0xF0) >> 4)); + register_code(hextokeycode((hi & 0x0F))); + unregister_code(hextokeycode((hi & 0x0F))); + register_code(hextokeycode((lo & 0xF0) >> 4)); + unregister_code(hextokeycode((lo & 0xF0) >> 4)); + register_code(hextokeycode((lo & 0x0F))); + unregister_code(hextokeycode((lo & 0x0F))); + + unregister_code(KC_LCTL); + unregister_code(KC_LSFT); + break; + case UC_MODE_OSX: + break; + }} +}} + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) {{ + if (!record->event.pressed) {{ + return MACRO_NONE; + }} + // MACRODOWN only works in this function + switch(id) {{ + case UM: + unicode_mode = (unicode_mode + 1) % 2; + break; +{macro_cases} +{unicode_macro_cases} + default: + break; + }} + return MACRO_NONE; +}}; +""" + + +UNICODE_MACRO_TEMPLATE = """ +case {macro_id}: + unicode_action_function(0x{hi:02x}, 0x{lo:02x}); + break; +""".strip() + + +def unicode_macro_cases(config): + for macro_id, uc_hex in config['unicode_macros'].items(): + hi = int(uc_hex, 16) >> 8 + lo = int(uc_hex, 16) & 0xFF + unimacro_keys = ", ".join( + "T({})".format( + "KP_" + digit if digit.isdigit() else digit + ) for digit in uc_hex + ) + yield UNICODE_MACRO_TEMPLATE.format( + macro_id=macro_id, hi=hi, lo=lo + ) + + +def iter_keymap_lines(keymap, row_indents=None): + col_widths = {} + col = 0 + # first pass, figure out the column widths + prev_row_index = None + for code, row_index in keymap.values(): + if row_index != prev_row_index: + col = 0 + if row_indents: + col = row_indents[row_index] + col_widths[col] = max(len(code), col_widths.get(col, 0)) + prev_row_index = row_index + col += 1 + + # second pass, yield the cell values + col = 0 + prev_row_index = None + for key_index in sorted(keymap): + code, row_index = keymap[key_index] + if row_index != prev_row_index: + col = 0 + yield "\n" + if row_indents: + for indent_col in range(row_indents[row_index]): + pad = " " * (col_widths[indent_col] - 4) + yield (" /*-*/" + pad) + col = row_indents[row_index] + else: + yield pad + yield " {}".format(code) + if key_index < len(keymap) - 1: + yield "," + # This will be yielded on the next iteration when + # we know that we're not at the end of a line. + pad = " " * (col_widths[col] - len(code)) + prev_row_index = row_index + col += 1 + + +def iter_keymap_parts(config, keymaps): + # includes + for include_path in config['keymaps_includes']: + yield '#include "{}"\n'.format(include_path) + + yield "\n" + + # definitions + for i, macro_id in enumerate(sorted(config['macro_ids'])): + yield "#define {} {}\n".format(macro_id, i) + + yield "\n" + + for i, layer_name in enumerate(config['layer_lines']): + yield '#define L{0:<3} {0:<5} // {1}\n'.format(i, layer_name) + + yield "\n" + + # keymaps + yield "const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {\n" + + for i, layer_name in enumerate(config['layer_lines']): + # comment + layer_lines = config['layer_lines'][layer_name] + prefixed_lines = " * " + " * ".join(layer_lines) + yield "/*\n{} */\n".format(prefixed_lines) + + # keymap codes + keymap = keymaps[layer_name] + row_indents = ROW_INDENTS.get(config['layout']) + keymap_lines = "".join(iter_keymap_lines(keymap, row_indents)) + yield "[L{0}] = KEYMAP({1}\n),\n".format(i, keymap_lines) + + yield "};\n\n" + + # no idea what this is for + yield "const uint16_t PROGMEM fn_actions[] = {};\n" + + # macros + yield MACROCODE.format( + macro_cases="", + unicode_macro_cases="\n".join(unicode_macro_cases(config)), + ) + + # TODO: dynamically create blinking lights + yield USERCODE + + +def main(argv=sys.argv[1:]): + if not argv or '-h' in argv or '--help' in argv: + print(__doc__) + return 0 + + in_path = os.path.abspath(argv[0]) + if not os.path.exists(in_path): + print("No such file '{}'".format(in_path)) + return 1 + + if len(argv) > 1: + out_path = os.path.abspath(argv[1]) + else: + dirname = os.path.dirname(in_path) + out_path = os.path.join(dirname, "keymap.c") + + config = parse_config(in_path) + valid_keys = parse_valid_keys(config, out_path) + keymaps = parse_keymaps(config, valid_keys) + + with io.open(out_path, mode="w", encoding="utf-8") as fh: + for part in iter_keymap_parts(config, keymaps): + fh.write(part) + + +if __name__ == '__main__': + sys.exit(main()) diff --git a/keyboards/ergodox_ez/keymaps/german-manuneo/compiled.hex b/keyboards/ergodox_ez/keymaps/german-manuneo/compiled.hex new file mode 100644 index 0000000000..bef079b16a --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/german-manuneo/compiled.hex @@ -0,0 +1,1274 @@ +:100000000C9427040C946B040C946B040C946B04F8 +:100010000C946B040C946B040C946B040C946B04A4 +:100020000C946B040C946B040C9403110C94D51178 +:100030000C946B040C946B040C946B040C946B0484 +:100040000C946B040C94DF250C946B040C946B04DF +:100050000C946B040C94721F0C946B040C946B0442 +:100060000C946B040C946B040C946B040C946B0454 +:100070000C946B040C946B040C946B040C946B0444 +:100080000C946B040C946B040C946B040C946B0434 +:100090000C946B040C946B040C946B040C946B0424 +:1000A0000C946B040C946B040C946B040F08DC0729 +:1000B000C707210848087B085D0863087808A60878 +:1000C0009B0866089E08B20757088F089808D9074A +:1000D000D0071E081508FD07D30792072A088008D5 +:1000E00089089508030833081208AC0786085108E8 +:1000F000F40709080008E8078C08F7079D0754086B +:10010000EE072D088C071808CA07B807E207DF07B3 +:10011000360806087208A307F1071B088F07240892 +:100120006F0875083F08C1075A08AF07D607BB0715 +:1001300030086008A10895070C08270869083908E5 +:10014000BE0792084E08A907FA07C4074508CD075D +:100150006C08A6073C084B089807B507AB0883084E +:10016000E507A0074208EB0780074212641252130A +:1001700064125213A912CC12521321133413031612 +:1001800003163216321668168816B917B917931661 +:10019000B91743174317AA17B917B917B317501749 +:1001A0005017501750175017501750175017501717 +:1001B00050175017501750175017501750176217F5 +:1001C0006F1776177D178717055204520152035295 +:1001D000010000001E001B0018002F000100290074 +:1001E0001F0013000C003300E300E10020000900B1 +:1001F00004003400E2002A0021001A000800060072 +:10020000E000650022000A00120019000000490009 +:100210002E004A0000004D00000002542E0202543D +:1002200000002B0000005E3023000B0016000500CC +:1002300000004C0024000D0011001000E4004B00F1 +:1002400025000E0015003600E6002C0026000F00E9 +:100250001700370050002800270014000700520044 +:1002600051004E0035001C002D001D004F00000005 +:100270000100010001000100010000001E02300227 +:1002800038020100010001001F0264143800300030 +:1002900001000100200224022302270201000100C4 +:1002A000010024142514010001000100010027149D +:1002B00026140100000001000100010000000100FF +:1002C0000000010001000100000001000000010029 +:1002D0000100310021022D14000001000100640022 +:1002E00025022202010001000100640226023602FA +:1002F0000100010001000100301437023830010014 +:1003000035021F02310255300230010001000100A8 +:100310002D0201003D30000001000100010001003C +:10032000010000003A00010001000100010001008D +:100330003B00010001000100010001003C00010040 +:1003400001000100010001003D0001000100010069 +:10035000010001003E000100010001000000010059 +:100360004400010000000100000001004500010000 +:1003700000005300000001003F00010001000100E7 +:100380000000010040005F005C00590062000100B5 +:10039000410060005D005A008500010042006100DC +:1003A0005E005B00630001004300550056005700EB +:1003B0005800010067005400560057005800000024 +:1003C0000100010001000100010000004D30393042 +:1003D00001005B3001000100513058303C303B30AF +:1003E000010001005030013014145D3001000100A3 +:1003F0004A30593008145C30010001004930573050 +:100400000430003000000100053001000000010050 +:1004100000000100010001000000010000000100D7 +:100420004F305A3037301E02000001004E300100BC +:100430004B30010001000100483056305430533039 +:10044000010001004C30010003303A30010001008E +:100450005230010001000100010001000100010013 +:100460000100010001000000010001000100010085 +:100470000100000042302030343001000100010052 +:1004800046302E30263033300100010045302D300B +:100490001E3001000100010040302B3022300100ED +:1004A000010001003F3025302C3001000000010028 +:1004B0000100010000000100000001000100010036 +:1004C00000000100000001004430233031301F30B3 +:1004D00000000100433035302A302930010001008E +:1004E0003E3027303030010001000100413028301B +:1004F00032300100010001004730010021300100CD +:10050000010001000100363024302F3001000000CE +:10051000010001000100010001000000010008309D +:100520001B30010001000100010015300D301A30B0 +:10053000010001000100143006300100010001003B +:10054000010012300A3001000100010001000C30EE +:100550001330010000000100010001000000010053 +:100560000000010001000100000001000000010086 +:1005700001000B30183007300000010001001C3072 +:10058000113010300100010001000E301730010061 +:100590000100010001000F301930010001000100CD +:1005A00001000100093001000100010001001D30BF +:1005B00001001630010000000100010001000100EF +:1005C0000100000001000100010001000100010024 +:1005D0000100010001000100010001000100010013 +:1005E0000100010001000100010001000100010003 +:1005F00001000100010001000100010000000100F4 +:1006000001000100000001000000010001000100E4 +:1006100000000100000001000100010001000100D4 +:1006200000000100010001000100010001000100C3 +:1006300001000100010001000100010001000100B2 +:1006400001000100010001000100010001000100A2 +:100650000100010001000100010001000100000093 +:1006600016034500720067006F0044006F007800B9 +:10067000200045005A000000160345007200670084 +:100680006F0044006F007800200045005A00000011 +:100690000403090409026D00040100A0FA09040022 +:1006A000000103010100092111010001223F00079F +:1006B00005810308000A0904010001030102000981 +:1006C0002111010001224D000705820308000A09DB +:1006D000040200010300000009211101000122367B +:1006E000000705830308000A090403000103000052 +:1006F00000092111010001223900070584031000BF +:10070000011201100100000008EDFE0713010001B5 +:1007100002000105010906A101050719E029E715F5 +:100720000025019508750181020508190129059523 +:1007300005750191029501750391010507190029BD +:100740007715002501957875018102C005010980A2 +:10075000A101850216010026B7001A01002AB70080 +:10076000751095018100C0050C0901A101850316D2 +:100770000100269C021A01002A9C02751095018135 +:1007800000C005010902A1010901A1000509190123 +:10079000290515002501950575018102950175034F +:1007A00081010501093009311581257F9502750800 +:1007B000810609381581257F950175088106050C8C +:1007C0000A38021581257F950175088106C0C0058C +:1007D000010906A101050719E029E7150025019582 +:1007E0000875018102950175088101050819012923 +:1007F000059505750191029501750391010507198C +:100800000029FF150025FF950675088100C000002E +:10081000000000000000000000010204060A0F179B +:10082000202C3A4A5D71879DB3C7DAE9F5FCFFFCDD +:10083000F5E9DAC7B39D87715D4A3A2C20170F0A94 +:100840000604020100000000000000000000112466 +:100850001FBECFEFDAE0DEBFCDBF04B603FE24C07B +:100860008091FD019091FE01A091FF01B0910002E5 +:100870008730904BA740B04BB9F41092FD01109215 +:10088000FE011092FF011092000214BE84B7877F10 +:1008900084BF88E10FB6F8948093600010926000E6 +:1008A0000FBEE0E0FFE3099511E0A0E0B1E0ECE469 +:1008B000FFE402C005900D92A433B107D9F711E00F +:1008C000A4E3B1E001C01D92AD3FB107E1F70E9482 +:1008D000470E0C94A4270C9400001092B9008AE0F3 +:1008E0008093B800089594EA9093BC009091BC0066 +:1008F00097FFFCCF9091B900987F983021F090310C +:1009000011F081E008958093BB0084E88093BC00DF +:100910008091BC0087FFFCCF8091B900887F88312F +:1009200011F0803471F780E0089584E98093BC0071 +:100930008091BC0084FDFCCF08958093BB0084E8C7 +:100940008093BC008091BC0087FFFCCF9091B900E0 +:10095000987F81E0983209F480E0089584E88093DC +:10096000BC008091BC0087FFFCCF8091BB00089544 +:1009700080910101811115C080E40E94730480936D +:10098000010181110CC082E10E949D04809301014C +:10099000811105C08FEF0E949D04809301010E9488 +:1009A000950484B1807F84B985B1807F85B98AB18F +:1009B000837F8AB98BB1837F8BB93E98469808951F +:1009C0000E947306809301010E94B80480B38C706A +:1009D00080BB81B3836F81BBA5E3B1E0E3E4F1E0C9 +:1009E0008EE08E0F11921D928E13FCCF0C945D063B +:1009F000BF92CF92DF92EF92FF920F931F93CF930C +:100A0000DF9380910101882379F0809134018F5F19 +:100A100080933401811108C00E9473068093010104 +:100A2000811102C00E94050605E311E0C0E0D0E09C +:100A3000DD24D39482E0C82EEE24E394F12CC73059 +:100A4000D10500F580910101811164C080E40E940C +:100A5000730480930101811112C082E10E949D0400 +:100A60008093010181110BC0C7010C2E01C0880FBA +:100A70000A94EAF780950E949D04809301010E94E8 +:100A8000950448C0CA30A1F028F4C83059F0C930E4 +:100A900061F005C0CC3089F070F0CD3089F0209A3B +:100AA000289810C0219A29980DC0229A2A980AC025 +:100AB000239A2B9807C0529A01C0539A5B9802C0A0 +:100AC0003E9A469890EA9A95F1F79FB1799902C0BB +:100AD00082E001C080E091709D25982B7C9902C036 +:100AE00084E001C080E0892B7D9902C038E001C01C +:100AF00030E0832B7E9902C020E101C020E0822BF0 +:100B00009FB19095991F9927991F9295990F907E63 +:100B1000892B0FC080910101811149C080E40E949E +:100B2000730480930101882379F1B12C0E9495040C +:100B30008B2DF8019081981719F08083C0920001E5 +:100B40000E94B80421960F5F1F4FCE30D10509F0E7 +:100B500076CF80910001882361F18150809300015C +:100B6000882339F08FE99FE00197F1F700C000007A +:100B700020C0A3E4B1E0E5E3F1E0CF01825F919111 +:100B80009D938E13FCCF15C083E10E949D0480933A +:100B900001018111CACF81E40E9473048093010195 +:100BA0008111C3CF0E94AE04B82EB094BFCF80E0B5 +:100BB000C0CF0E94030681E0DF91CF911F910F917A +:100BC000FF90EF90DF90CF90BF900895E82FF0E076 +:100BD000ED5BFE4F8081089508950F931F93CF938F +:100BE000DF93C3E4D1E010E00C2F025F899190E025 +:100BF0000E94981E180F0C13F9CF812FDF91CF910F +:100C00001F910F9108950C94B50856985E982598F9 +:100C10002D9826982E9827982F988FEF90E09093F4 +:100C200089008093880090938B0080938A00909332 +:100C30008D0080938C00259A2D9A2FEF80E792E00B +:100C4000215080409040E1F700C00000269A2E9A83 +:100C50002FEF80E792E0215080409040E1F700C004 +:100C60000000279A2F9A2FEF80E792E021508040D2 +:100C70009040E1F700C0000025982D982FEF80E705 +:100C800092E0215080409040E1F700C0000026989B +:100C90002E982FEF80E792E0215080409040E1F7BE +:100CA00000C0000027982F9856985E9825982D9898 +:100CB00026982E9827982F98089589EA8093800087 +:100CC00089E08093810024982C983F988AB18F7492 +:100CD0008AB96E98479A8BB1806B8BB9769A0E94CD +:100CE00005060C94B40880E28093010180915101C3 +:100CF00081110EC00E946D0481E0809351012FEF9D +:100D000083ED90E3215080409040E1F700C0000067 +:100D100080E40E9473048093010181112EC00E941F +:100D20009D0480930101811128C00E949D0480933D +:100D30000101811122C08FE30E949D048093010173 +:100D400081111BC00E94950480E40E94730480936B +:100D50000101811112C08CE00E949D048093010169 +:100D600081110BC00E949D0480930101811105C077 +:100D70008FE30E949D04809301010E94950480915D +:100D800001010895882359F0282F30E08A3020F49B +:100D9000C901885A9F4F0895C9010697089582E6B0 +:100DA00090E008950F931F93CF93DF938C01EB0195 +:100DB0008091520190915301009709F448C0019726 +:100DC00009F089C080EE0E94A71481EE0E94A7144A +:100DD00088E10E94A71488E10E946F15C801807FF6 +:100DE000992724E0969587952A95E1F70E94C206F7 +:100DF000182F0E94A714812F0E946F15802F8F70CB +:100E00000E94C206182F0E94A714812F0E946F15FE +:100E1000CE01807F992734E0969587953A95E1F742 +:100E20000E94C206D82F0E94A7148D2F0E946F1512 +:100E30008C2F8F700E94C206C82F0E94A7148C2F7F +:100E40000E946F1580EE0E946F1581EE3EC082EE0B +:100E50000E94A71487E50E94A71487E50E946F15DA +:100E6000C801807F992744E0969587954A95E1F7D8 +:100E70000E94C206182F0E94A714812F0E946F158E +:100E8000802F8F700E94C206182F0E94A714812FF6 +:100E90000E946F15CE01807F992754E09695879523 +:100EA0005A95E1F70E94C206D82F0E94A7148D2FF1 +:100EB0000E946F158C2F8F700E94C206C82F0E944F +:100EC000A7148C2F0E946F1582EEDF91CF911F9196 +:100ED0000F910C946F15DF91CF911F910F91089591 +:100EE000FC018281882309F43CC1862F90E08F3574 +:100EF000910508F036C1FC01EA5AFF4F0C945427C3 +:100F0000809152019091530101968170992790939D +:100F100053018093520125C16FEB70E019C160E964 +:100F200070E008C061EA70E013C163E870E00BC1D3 +:100F30006BE570E081E290E012C16BEB70E008C1FC +:100F400063E570E0F7CF6EEB70E002C164E070E043 +:100F5000D4C069EB70E001C162EB70E0F9C065E8F4 +:100F600070E0F1C069E970E0F3C065E570E0E2CFE0 +:100F700068EC70E0EDC069E870E0E5C064E770E03F +:100F8000E2C062E970E0D6CF66E770E0DCC063E9FA +:100F900070E0D0CF60EC70E0DBC062EB70E0DDC0F1 +:100FA00069EA70E0D5C068EA70E0D2C064E870E039 +:100FB000CAC06DE970E0CCC067EF70E0CEC063ECF2 +:100FC00070E0C6C061EC70E0C3C069E570E0B2CF0C +:100FD00063EB70E0BDC064E570E0ACCF6DEB70E03A +:100FE000B7C066EB70E0B4C065EB70E0B1C06AEB0F +:100FF00070E0AEC067E770E0A6C060EA70E0A8C02D +:1010000062EC70E0A5C06EE970E0A2C068EB70E031 +:101010009FC067EB70E09CC062E870E094C063E43E +:1010200070E06BC061EB70E093C066EA70E090C066 +:1010300066EC70E08DC06EE170E05FC06FE970E05B +:1010400087C068E070E059C067ED70E086C060E876 +:1010500070E079C063EA70E07BC069EC70E078C052 +:1010600061E870E070C066E970E072C064EC70E046 +:101070006FC065E770E067C063E070E03EC061EBA1 +:1010800070E06BC06EEB70E068C063EB70E065C051 +:1010900065E070E032C061E970E04CCF69E770E074 +:1010A00052C064EB70E054C06CEB70E051C06AE970 +:1010B00070E04EC068E870E046C061E970E048C08A +:1010C00067E870E040C062E970E042C067E970E044 +:1010D0003FC068E770E037C060E770E034C069E0A7 +:1010E00070E00BC065EC70E033C060E670E005C0F6 +:1010F00067EA70E02DC060E070E082E290E02FC00F +:1011000064EA70E025C06CEB70E027C067EC70E02B +:101110001FC068E970E01CC069EB70E019C06BE9A2 +:1011200070E016C06FE770E00EC065EA70E010C0B6 +:101130006CE970E00DC065E970E00AC063E970E039 +:1011400007C066E870E080E290E009C064E970E002 +:1011500083E090E004C06DEB70E080E090E00E94DE +:10116000D20680E090E0089508956091BF017091EB +:10117000C0018091C1019091C2010E94A41E5698A5 +:101180005E9825982D9826982E9827982F9883302A +:10119000A9F028F4813051F0823069F012C0843017 +:1011A00041F0853071F4259A2D9A08C0259A2D9A20 +:1011B0000895259A2D9A269A2E9A0895279A2F9A5D +:1011C000089556985E98089581E0089581E0089505 +:1011D0000C94E60808950F931F93CF93DF938C012F +:1011E000FC01C081D181CE010E941D1DBE010E9463 +:1011F0009409EC01B8010E94E808882309F48DC025 +:10120000F8018281882309F44AC080915F0181112D +:101210001FC0C431F0E5DF0709F051C00E94EA08A1 +:1012200081E080935F010E943C1F90935E01809358 +:101230005D011092560110925801109257011092C0 +:101240005A011092590110925C0110925B0165C025 +:1012500080915D0190915E010E94481F883C91053C +:1012600070F480915601E82FF0E0EE0FFF1FE95A6D +:10127000FE4FD183C0838F5F809356014EC0C43828 +:1012800080E5D80721F0C538D04501F13AC0F80112 +:101290008281882341F01092540182E01EC0C4383C +:1012A000E0E5DE0759F580915401811106C086E220 +:1012B0000E94A71486E20E946F1582E01CC0C43809 +:1012C000F0E5DF0741F3C538D045D9F4F801828154 +:1012D000882331F01092550180E20E94BE151DC096 +:1012E00080915501811106C087E20E94A71487E210 +:1012F0000E946F1580E20E94C5150FC0C538D04509 +:1013000029F381E08093540180935501C801DF9156 +:10131000CF911F910F910C94E40880E0DF91CF9161 +:101320001F910F910895089596E0799FF00111247F +:1013300094E5899FE00DF11D1124E60FF11DEE0FDC +:10134000FF1FE853FE4F859194910895880F991FD0 +:10135000FC01E85BFF4F859194910895880F991FD8 +:10136000FC01E853FE4F8591949108950F931F93CC +:10137000CF93DF93EC01811520E3920750F5C1155F +:1013800080E2D80708F0C3C0CB3BD10590F4C83A3F +:10139000D10508F06AC0C53AD10508F05BC0C43079 +:1013A000D10508F0D0C1219709F0CAC101E010E0D1 +:1013B0000AC2CF3FD10511F008F0C5C1C03FD10529 +:1013C00008F0A2C0CE01805E9109089708F4BBC165 +:1013D000B7C1C13090E5D90709F4A2C020F5C031EA +:1013E0008FE4D80770F4C11590E4D90708F094C0D1 +:1013F000C11521E3D20708F0A3C1DD278E01106CCF +:10140000E2C1C115D04509F09BC10E9424188FEF9D +:1014100094E32CE0815090402040E1F700C00000B0 +:101420000E94971FD0C1C11597E5D90758F4C03164 +:1014300021E5D20708F01CC1C43180E5D80708F4C3 +:1014400075C07EC1CE0190578115904108F078C1DA +:10145000DF7073C1C53AD10509F477C1C63AD10529 +:1014600009F076C102E810E4AEC1C83AD10509F42A +:1014700072C1C93AD10509F471C1CA3AD10509F45A +:1014800070C1CB3AD10509F46FC1CC3AD10509F44A +:101490006EC1CD3AD10509F46DC1C03BD10509F447 +:1014A0006CC1CE3AD10509F46BC1CF3AD10509F42C +:1014B0006AC1C13BD10509F469C1C23BD10509F438 +:1014C00068C1C33BD10509F467C1C43BD10509F428 +:1014D00066C1C53BD10509F465C1C63BD10509F418 +:1014E00064C1C73BD10509F463C1C83BD10509F408 +:1014F00062C1C93BD10509F461C1CA3BD10509F4F8 +:1015000060C100E014E45FC18E0110655CC1CE01D2 +:101510009F700E94AE0958C1DF708E01106A53C1DE +:101520008091DC0181608093DC014DC10E943C21EF +:10153000811102C00E9422210E94592190E09093C3 +:10154000FD018093FC01C23080E5D80721F4809131 +:10155000FC01816086C0C43090E5D90721F48091F8 +:10156000FC0182607EC0C63020E5D20721F4809164 +:10157000FC01846076C0C83080E5D80719F48091FA +:10158000FC0127C0CA3090E5D90721F48091FC0105 +:10159000806167C0CC3020E5D20721F48091FC0146 +:1015A00080625FC0CE3080E5D80721F48091FC01D5 +:1015B000806457C0C03190E5D90721F48091FC01C7 +:1015C00080684FC0C23120E5D20729F48091FC0128 +:1015D0008460886046C0C33080E5D80721F48091DC +:1015E000FC018E7F3EC0C53090E5D90721F4809183 +:1015F000FC018D7F36C0C73020E5D20721F48091F1 +:10160000FC018B7F2EC0C93080E5D80719F480918A +:10161000FC0126C0CB3090E5D90721F48091FC0174 +:101620008F7E1FC0CD3020E5D20721F48091FC01D0 +:101630008F7D17C0CF3080E5D80721F48091FC0161 +:101640008F7B0FC0C13190E5D90721F48091FC0157 +:101650008F7707C0C331D04531F48091FC018B7F77 +:10166000877F8093FC018091FC010E945D21ABC0CB +:101670008D2F99278F70992781309105D9F49E017C +:101680002370332702C0880F991F2A95E2F79C68C0 +:101690008E0144E0000F111F4A95E1F700271370F7 +:1016A000802B912B53E0CC0FDD1F5A95E1F7C076CC +:1016B000DD272FC08230910531F4DC2FCC278E013D +:1016C000016F106A80C08330910569F4CE01837088 +:1016D000992701E010E002C0000F111F8A95E2F780 +:1016E000C8019C680FC084309105B9F4CE018370A5 +:1016F000992701E010E002C0000F111F8A95E2F760 +:10170000C8019A6823E0CC0FDD1F2A95E1F7C07E5F +:10171000D7708C010C2B1D2B56C08530910531F4F0 +:10172000DC2FCC278E01046F106A4DC0069709F09C +:101730004AC0CF71DD27DC2FCC278E01106243C059 +:1017400000E010E040C08E013EC001E810E43BC064 +:1017500003E810E438C002EE14E435C009EE14E4E6 +:1017600032C00AEE14E42FC005EB14E42CC006EBE3 +:1017700014E429C007EB14E426C00CEC14E423C0E5 +:101780000DEC14E420C003E815E41DC00AE815E4DC +:101790001AC002E915E417C004E915E414C001E217 +:1017A00016E411C003E216E40EC004E216E40BC016 +:1017B00005E216E408C006E216E405C007E216E4F6 +:1017C00002C00AE216E4C801DF91CF911F910F9188 +:1017D000089596E0799FF001112494E5899FE00D2A +:1017E000F11D1124E60FF11DEE0FFF1FE853FE4F10 +:1017F00085919491803E9105E0F4803C910558F5E7 +:101800008133910509F46FC048F48932910509F4D8 +:1018100063C08A32910509F46DC072C089339105A5 +:10182000E9F082389105D1F08533910509F44DC076 +:1018300067C0833E910581F138F4803E9105B9F08F +:10184000823E9105D9F05CC0863E910561F1873EEC +:101850009105A1F155C00E94A60908952091FC01AF +:1018600020FD02C021FF4CC080EE90E049C0809175 +:10187000FC0180FFF9CF89E390E042C08091FC0138 +:1018800082FF0EC08091FC0184FF03C080E090E0E5 +:1018900037C083EE90E034C08091FC0182FFF2CF2C +:1018A00082EE90E02DC08091FC0183FF0BC08091FF +:1018B000FC0184FDEBCF87EE90E022C08091FC011B +:1018C00083FFF5CF86EE90E01BC08091FC0185FF81 +:1018D00007C089E290E014C08091FC0185FFF9CF38 +:1018E00085E390E00DC08091FC0186FF07C08AE28D +:1018F00090E006C08091FC0186FFF9CF81E390E083 +:101900000E94B609089508950C94830C809170018B +:101910000895CF93DF9300D01F92CDB7DEB79C011F +:101920008091F301843019F593E099833B832A83F6 +:101930009093E9008FEF9091E800815095FD06C0EB +:1019400095ED9A95F1F700008111F5CF8091E800AF +:1019500085FF0DC040E050E063E070E0CE010196ED +:101960000E94F30E8091E8008E778093E8000F903C +:101970000F900F90DF91CF910895CF93DF9300D018 +:101980001F92CDB7DEB72091F301243021F522E07C +:1019900029839B838A8383E08093E9008FEF909172 +:1019A000E800815095FD06C095ED9A95F1F700008D +:1019B0008111F5CF8091E80085FF0DC040E050E037 +:1019C00063E070E0CE0101960E94F30E8091E80082 +:1019D0008E778093E8000F900F900F90DF91CF915A +:1019E00008952091F3012430F1F422E02093E900DE +:1019F0002FEF3091E800215035FD06C035ED3A95C6 +:101A0000F1F700002111F5CF2091E80025FF0BC070 +:101A100040E050E065E070E00E94F30E8091E80045 +:101A20008E778093E8000895CF93DF93EC01909137 +:101A3000F301943009F046C080910C018823D9F05D +:101A400080910D018823B9F09093E9008FEF909178 +:101A5000E800815095FD06C095E19A95F1F70000E8 +:101A60008111F5CF8091E80085FF2CC040E050E067 +:101A700060E170E017C081E08093E9008FEF909102 +:101A8000E800815095FD06C095ED9A95F1F70000AC +:101A90008111F5CF8091E80085FF14C040E050E04F +:101AA00068E070E0CE010E94F30E8091E8008E772E +:101AB0008093E80080E1FE01A0E6B1E001900D9284 +:101AC0008A95E1F7DF91CF9108958091F20181111C +:101AD00009C00E9488100E94E5108091E200846095 +:101AE0008093E20008951092F201089508950C94F5 +:101AF000CC250E942D1F0E94D2250E948B130C948E +:101B0000840C42E061EC81E00E94021042E061EC52 +:101B100082E00E94021042E061EC83E00E94021029 +:101B200042E161EC84E00C9402108091F501833075 +:101B300009F455C030F4813071F0823009F48EC060 +:101B400008958A3009F47AC08B3009F460C0893076 +:101B500009F09CC020C08091F401813A09F096C040 +:101B60008091E800877F8093E8008091F801909150 +:101B7000F901892B21F460E180E691E003C060E087 +:101B800080E090E070E00E943E0F8091E8008B774B +:101B90008093E80008958091F401813209F076C0C5 +:101BA0008091F8019091F901009719F0039709F0DD +:101BB0006DC08091E800877F8093E8008091E80005 +:101BC00082FD05C08091F3018111F8CF5FC0809143 +:101BD000F100809370018091E8008B7753C0809171 +:101BE000F401813A09F052C08091F8019091F90115 +:101BF000892B09F04BC08091E800877F8093E80033 +:101C00008091E80080FFFCCF80910C0136C080916C +:101C1000F4018132D9F58091F8019091F901892B75 +:101C2000A9F58091E800877F8093E8000E94371033 +:101C30008091F60180930C010C9424188091F4019A +:101C4000813221F58091E800877F8093E8000E942F +:101C500037108091F7018093710108958091F4010C +:101C6000813AA1F48091E800877F8093E800809119 +:101C7000E80080FFFCCF809171018093F10080919A +:101C8000E8008E778093E8000C943710089584B7AD +:101C9000877F84BF88E10FB6F8948093600010922C +:101CA00060000FBE90E080E80FB6F894809361006A +:101CB000909361000FBE0E94DA130E9488100E9468 +:101CC000E5108091E20084608093E20078940E94A5 +:101CD0006B130E94DC1382E091E00E9486130E9445 +:101CE000BA258091F301853069F40E94F41E809139 +:101CF000F1018823B1F30E941F1F882391F30E94F2 +:101D0000DD0EEFCF0E94E213ECCF292F33272330D3 +:101D10003105C9F064F42130310581F022303105FC +:101D200009F043C08DE690E024E936E042C021325C +:101D30003105F1F02232310541F137C082E190E006 +:101D400021E037E036C099278130910541F082309B +:101D5000910541F0892B49F5E0E9F6E005C0E8E797 +:101D6000F6E002C0E0E6F6E0849190E09F0121C039 +:101D70006430D8F4E62FF0E0EE0FFF1FEE5DFE4F6B +:101D80002081318189E090E014C0643070F470E00B +:101D9000FB01EE0FFF1FE65EFE4F20813181FB014C +:101DA000EA5EFE4F808190E004C080E090E020E099 +:101DB00030E0FA0131832083089580E189BD82E11A +:101DC00089BD09B400FEFDCF8091D8008F7D80933E +:101DD000D8008091E00082608093E0008091E00074 +:101DE00081FDFCCF0895CF92DF92EF92FF920F9387 +:101DF0001F93CF93DF93EC018B016A010E94561071 +:101E0000811133C0C114D10439F0F6018081918170 +:101E1000081B190BC80FD91FE12CF12C0115110556 +:101E200019F18091E80085FD16C08091E8008E7759 +:101E30008093E800C114D10449F0F60180819181BA +:101E4000E80EF91EF182E08285E00FC00E94561074 +:101E5000882321F30AC089918093F1000150110970 +:101E6000FFEFEF1AFF0ADACF80E0DF91CF911F91E9 +:101E70000F91FF90EF90DF90CF9008952091FA019D +:101E80003091FB012617370748F06115710539F4C9 +:101E90002091E8002E772093E80001C0B90140E0CE +:101EA00061157105A9F12091F301222309F443C0C2 +:101EB000253009F442C02091E80023FD40C0209164 +:101EC000E80022FD32C02091E80020FFE9CF4091D8 +:101ED000F3002091F20030E0342BFC01CF016115BA +:101EE000710559F02830310540F481918093F1005B +:101EF000615071092F5F3F4FF1CF41E0283031052C +:101F000009F040E02091E8002E772093E800C8CF48 +:101F10004111C9CF0AC08091F301882361F0853057 +:101F200061F08091E80083FD0AC08091E80082FFA3 +:101F3000F2CF80E0089582E0089583E0089581E083 +:101F400008952091FA013091FB012617370748F0D8 +:101F50006115710539F42091E8002E772093E8008F +:101F600001C0B901FC0120E06115710591F180917A +:101F7000F301882309F440C0853009F43FC0809103 +:101F8000E80083FD3DC08091E80082FD2FC0809174 +:101F9000E80080FFE9CF2091F3008091F20090E00B +:101FA000922B6115710559F08830910540F4249108 +:101FB0002093F1003196615071090196F2CF21E032 +:101FC000089709F020E08091E8008E778093E80080 +:101FD000CBCF2111CCCF0AC08091F301882361F0CF +:101FE000853061F08091E80083FD0AC08091E800AF +:101FF00082FFF2CF80E0089582E0089583E00895A3 +:1020000081E00895982F973058F59093E90098173C +:1020100039F07091EC002091ED005091F00003C078 +:10202000242F762F50E021FF19C03091EB003E7F26 +:102030003093EB003091ED003D7F3093ED00309117 +:10204000EB0031603093EB007093EC002093ED00D7 +:102050005093F0002091EE0027FF07C09F5FD3CF81 +:102060008F708093E90081E0089580E00895809169 +:10207000F40187FF11C08091E80082FD05C08091C6 +:10208000F3018111F8CF11C08091E8008B770BC06C +:102090008091F301882349F08091E80080FFF8CF18 +:1020A0008091E8008E778093E80008952091E40005 +:1020B0003091E50095E64091EC00842F817040FF5F +:1020C00022C08091E80080FD1CC08091F30188232C +:1020D00091F0853091F08091EB0085FD10C040912A +:1020E000E4005091E5004217530729F39A019150FB +:1020F00011F784E0089582E0089583E0089581E077 +:10210000089580E008954091E80042FFDECF0895F1 +:102110000E94F6100E94FE10E0EEF0E080818160E7 +:102120008083E8EDF0E080818F77808319BCA7ED94 +:10213000B0E08C918E7F8C9380818F7E8083109213 +:10214000F20108950F931F93CF93DF930E94F6102F +:102150000E94FE10C8EDD0E088818F778883888147 +:102160008068888388818F7D888319BC1092F301F1 +:102170001092EF011092F1011092F00100EE10E0C8 +:10218000F80180818B7F808388818160888342E031 +:1021900060E080E00E940210E1EEF0E080818E7F3E +:1021A0008083E2EEF0E080818160808380818860BE +:1021B0008083F80180818E7F80838881806188831D +:1021C000DF91CF911F910F910895E8EDF0E08081AC +:1021D0008F7E8083E7EDF0E080818160808384E002 +:1021E00082BF81E08093F2010C94A210E8EDF0E050 +:1021F00080818E7F80831092E20008951092DA0031 +:102200001092E10008951F920F920FB60F921124C1 +:102210002F933F934F935F936F937F938F939F93EE +:10222000AF93BF93EF93FF938091E10082FF0BC0C8 +:102230008091E20082FF07C08091E1008B7F809354 +:10224000E1000E946A138091DA0080FF1FC0809134 +:10225000D80080FF1BC08091DA008E7F8093DA0067 +:102260008091D90080FF0DC080E189BD82E189BDE8 +:1022700009B400FEFDCF81E08093F3010E94650D5B +:1022800005C019BC1092F3010E94730D8091E1000A +:1022900080FF19C08091E20080FF15C08091E200AC +:1022A0008E7F8093E2008091E20080618093E20063 +:1022B0008091D80080628093D80019BC85E080931B +:1022C000F3010E94770D8091E10084FF30C080917E +:1022D000E20084FF2CC080E189BD82E189BD09B4A0 +:1022E00000FEFDCF8091D8008F7D8093D800809133 +:1022F000E1008F7E8093E1008091E2008F7E8093E9 +:10230000E2008091E20081608093E2008091EF0121 +:10231000882311F084E007C08091E30087FD02C0AC +:1023200081E001C083E08093F3010E94790D8091E8 +:10233000E10083FF29C08091E20083FF25C08091E6 +:10234000E100877F8093E10082E08093F3011092A7 +:10235000EF018091E1008E7F8093E1008091E200A7 +:102360008E7F8093E2008091E20080618093E200A2 +:1023700042E060E080E00E9402108091F0008860FE +:102380008093F0000E94760DFF91EF91BF91AF9185 +:102390009F918F917F916F915F914F913F912F917D +:1023A0000F900FBE0F901F9018951F920F920FB6AF +:1023B0000F9211242F933F934F935F936F937F93CB +:1023C0008F939F93AF93BF93CF93DF93EF93FF933D +:1023D000C091E900CF708091EC00D82FD17080FDC2 +:1023E000D0E81092E9008091F000877F8093F000A0 +:1023F00078940E9419121092E9008091F000886090 +:102400008093F000CD2BCF70C093E900FF91EF9146 +:10241000DF91CF91BF91AF919F918F917F916F91FC +:102420005F914F913F912F910F900FBE0F901F9092 +:1024300018951F93CF93DF93CDB7DEB7AA970FB64A +:10244000F894DEBF0FBECDBFE4EFF1E088E08E0F61 +:102450009091F10091938E13FBCF0E94950D809186 +:10246000E80083FF1FC18091F4019091F501492F8D +:1024700050E04A30510508F015C1FA01EB54FF4F06 +:102480000C945427803881F0823809F00BC1809178 +:10249000F8018F708093E9008091EB0085FB88271D +:1024A00080F91092E90006C08091F0019091F1014D +:1024B000911182609091E800977F9093E80080935B +:1024C000F1001092F100C8C0282F2D7F09F0EAC05A +:1024D000882319F0823061F0E5C08091F6018130E7 +:1024E00009F0E0C0933009F080E08093F1012BC047 +:1024F0008091F601811127C08091F8018F7009F455 +:10250000D1C08093E9002091EB0020FF1CC09330E4 +:1025100021F48091EB00806214C09091EB009061F7 +:102520009093EB0021E030E0A90102C0440F551F59 +:102530008A95E2F74093EA001092EA008091EB005E +:1025400088608093EB001092E9008091E800877F1B +:1025500086C08111A7C01091F6011F778091E3001A +:102560008078812B8093E3008091E800877F8093BF +:10257000E8000E9437108091E80080FFFCCF809136 +:10258000E30080688093E300111102C082E001C083 +:1025900083E08093F30186C08058823008F082C0C7 +:1025A0008091F6019091F7018C3D53E0950779F504 +:1025B00083E08A838AE289834FB7F894DE01139619 +:1025C00020E03EE051E2E32FF0E050935700E49129 +:1025D00020FF03C0E295EF703F5FEF708E2F90E019 +:1025E000EA3010F0C79601C0C0968D939D932F5F7F +:1025F000243149F74FBF8091E800877F8093E8003E +:102600006AE270E0CE0101960E943E0F14C0AE0156 +:102610004F5F5F4F6091F8010E94850EBC010097EB +:1026200009F440C09091E800977F9093E800898179 +:102630009A810E94A10F8091E8008B778093E80037 +:1026400031C0803879F58091E800877F8093E80079 +:102650008091EF018093F1008091E8008E77809364 +:10266000E8000E9437101EC081111CC09091F60135 +:102670009230C0F48091E800877F8093E8009093C7 +:10268000EF010E9437108091EF01811106C0809107 +:10269000E30087FD02C081E001C084E08093F30184 +:1026A0000E94810D8091E80083FF0AC08091E800BC +:1026B000877F8093E8008091EB0080628093EB003D +:1026C000AA960FB6F894DEBF0FBECDBFDF91CF91B3 +:1026D0001F9108950895CF938091F3018823A1F06D +:1026E000C091E900CF709091EC00892F817090FD2E +:1026F00080E8C82B1092E9008091E80083FD0E94D9 +:102700001912CF70C093E900CF910895909377018B +:10271000809376010895E0917601F09177013097EA +:1027200021F00190F081E02D099480E00895E0917E +:102730007601F0917701309721F00280F381E02D4E +:1027400009940895E0917601F0917701309721F096 +:102750000480F581E02D0994089520917401309151 +:1027600075018217930771F090937501809374013E +:10277000E0917601F0917701309721F00680F781A2 +:10278000E02D099408952091720130917301821710 +:10279000930771F09093730180937201E091760139 +:1027A000F0917701309721F00084F185E02D0994B4 +:1027B000089508950C94D9130E94331F0E94E004D9 +:1027C0000C94F51F9F92AF92BF92CF92DF92EF923F +:1027D000FF920F931F93CF93DF9300D000D000D0D0 +:1027E000CDB7DEB70E94F8040DE010E0AA24A39450 +:1027F000B12C902E802F0E94E605980127583E4F5D +:102800006901F901F080F826A1F40150110988F757 +:102810008FEF89838A831B820E943C1F8160782FFF +:102820009D838C8349815A816B818D810E947914AB +:102830002FC09091DC0191FF04C08E830E94EC05B3 +:102840008E8125E030E0A501022E01C0440F0A94DC +:10285000EAF7E42E4F21C1F029839A828E2191E07C +:1028600009F490E09B830E943C1F8160782F9D8338 +:102870008C8349815A816B818D810E947914F60184 +:102880008081E826E08204C021503109E0F6BDCF06 +:102890000E94DC22109178010E948B131817B9F066 +:1028A0000E948B138093780126960FB6F894DEBFB2 +:1028B0000FBECDBFDF91CF911F910F91FF90EF9091 +:1028C000DF90CF90BF90AF909F900C94840C269691 +:1028D0000FB6F894DEBF0FBECDBFDF91CF911F9131 +:1028E0000F91FF90EF90DF90CF90BF90AF909F90AF +:1028F0000895CF93DF93CDB7DEB72B970FB6F8943B +:10290000DEBF0FBECDBF4F83588769877A878B871D +:10291000DE01119686E0FD0111928A95E9F785E0C6 +:10292000FE01379601900D928A95E1F749815A810F +:102930006B817C818D819E810E94C21A2B960FB67D +:10294000F894DEBF0FBECDBFDF91CF910895CF9336 +:10295000882309F4C2C0C82F823859F40E948B130F +:1029600081FDBBC089E30E949C1D0E94691E89E312 +:102970000CC0833879F40E948B1380FDAEC083E5D0 +:102980000E949C1D0E94691E83E50E94DE1DCF915E +:102990000C94691E843859F40E948B1382FD9DC0EB +:1029A00087E40E949C1D0E94691E87E4EECF8CEF95 +:1029B0008C0F813A48F48C2F0E941F2581118DC005 +:1029C0008C2F0E949C1DE3CF80E28C0F883048F44E +:1029D000C77081E001C0880FCA95EAF70E94221EE5 +:1029E000D6CF8BE58C0F833078F4C53A29F0C63A00 +:1029F00031F083E890E005C081E890E002C082E811 +:102A000090E0CF910C94AD1388E58C0F833108F0E2 +:102A100064C0C83A39F1C93A41F1CA3A49F1CB3AEE +:102A200051F1CC3A59F1CD3A61F1C03B69F1CE3A5E +:102A300071F1CF3A79F1C13B81F1C23B89F1C33BDE +:102A400091F1C43B99F1C53BA1F1C63BA9F1C73B4C +:102A5000B1F1C83BB9F1C93BC1F1CA3BC9F180E052 +:102A600090E038C082EE90E035C089EE90E032C050 +:102A70008AEE90E02FC085EB90E02CC086EB90E0D2 +:102A800029C087EB90E026C08CEC90E023C08DEC51 +:102A900090E020C083E891E01DC08AE891E01AC070 +:102AA00082E991E017C084E991E014C081E292E0EC +:102AB00011C083E292E00EC084E292E00BC085E296 +:102AC00092E008C086E292E005C087E292E002C090 +:102AD0008AE292E0CF910C94C313CF91089588239A +:102AE00009F44BC0823859F40E948B1381FF45C012 +:102AF00089E30E949C1D0E94691E89E30CC08338F3 +:102B000071F40E948B1380FF38C083E50E949C1DE6 +:102B10000E94691E83E50E94DE1D0C94691E8438A4 +:102B200059F40E948B1382FF28C087E40E949C1DE9 +:102B30000E94691E87E4EFCF9CEF980F913A58F3FB +:102B400090E2980F983050F4877091E001C0990F8F +:102B50008A95EAF7892F0E94281EDFCF9BE5980F00 +:102B6000933020F480E090E00C94AD13885A8331C8 +:102B700020F480E090E00C94C3130895882321F0A2 +:102B80000E94221E0C94691E0895882321F00E9441 +:102B9000281E0C94691E08957F928F929F92AF9287 +:102BA000BF92CF92DF92EF92FF920F931F93CF933A +:102BB000DF931F92CDB7DEB77C01C62E772EFC01C6 +:102BC000058102950F70128111110E943F1E0E9413 +:102BD000951D882379F0112369F080E28C0D8830EF +:102BE00048F082E00E947E1D0E94951D91E0D82E43 +:102BF000D92601C0D12CE72DE295EF70F0E0E15429 +:102C0000FF4F0C945427872D807F072D0F7088234A +:102C100011F00295007F112389F0002309F490C17F +:102C200080E28C0D883020F4802F0E94221E03C089 +:102C3000802F0E94321E0E94691E82C18C2D0E942C +:102C40006F15002309F495C180E28C0D883020F4C3 +:102C5000802F0E94281E03C0802F0E94381E0E94D1 +:102C6000691E87C1972D907F872D8F70903211F04C +:102C70008295807FCC2021F0F1E0CF16B1F01EC00C +:102C8000112349F0002309F414C1013009F011C1E6 +:102C90000E94521E6EC1002319F0013009F469C16F +:102CA00089830E94551E89810AC1112321F00230B7 +:102CB00008F05FC1FEC001115CC101C1112321F008 +:102CC000002309F4F6C03CC1002309F4F8C03EC15A +:102CD000872D86958695837090E0009719F001976F +:102CE00061F047C1112321F08C2D972D937002C004 +:102CF00080E090E00E94AD133CC1112321F08C2DA7 +:102D0000972D937002C080E090E00E94C31331C100 +:102D10008C2D112319F00E94E42102C00E944C2244 +:102D20000E94D12226C1872D837009F052C0111153 +:102D300020C18C2D829586958770880F880F9C2DD9 +:102D40009F70892E912CA12CB12C082E04C0880CC8 +:102D5000991CAA1CBB1C0A94D2F7C4FE14C00FE035 +:102D600010E020E030E0B901A80104C0440F551F75 +:102D7000661F771F8A95D2F7CB01BA0160957095CF +:102D80008095909503C060E070E0CB01272D2695DB +:102D90002695237030E02230310569F0233031056B +:102DA00089F0682979298A299B292130310571F018 +:102DB0000E940A1CDEC0682979298A299B290E9461 +:102DC000261CD7C00E940A1CC501B4010E94EE1B3C +:102DD000D0C0112319F0872D817001C086958823FA +:102DE00009F4C7C08C2D829586958770880F880F4F +:102DF0009C2D9F70892E912CA12CB12C082E04C0E3 +:102E0000880C991CAA1CBB1C0A94D2F7C4FE14C0DF +:102E10000FE010E020E030E0B901A80104C0440F49 +:102E2000551F661F771F8A95D2F7CB01BA016095AF +:102E300070958095909503C060E070E0CB01272DE0 +:102E4000269526952370422F50E04230510569F0B7 +:102E50004330510589F0682979298A299B29413015 +:102E6000510571F00E94E41C84C0682979298A29DF +:102E70009B290E94001D7DC00E94E41CC501B40175 +:102E80000E94C81C76C08C2D90E0FC01E05EF10928 +:102E9000E531F10508F050C0E153FF4F0C94542781 +:102EA0000C2D0F70872D8F71112331F00E94611C42 +:102EB000802F0E94BE155DC00E94821C802F0E9440 +:102EC000C51557C0112339F0011153C0872D8F71DB +:102ED0000E94A71C4EC0023008F04BC0F7CF112350 +:102EE00039F0872D8F710E94611C43C01123C9F3F3 +:102EF000872D8F710E94821C3CC0112329F0872DE1 +:102F00008F710E944C1C35C00E94421C32C011239C +:102F100051F0172D1F71812F0E94611C63E0812FDA +:102F20000E94751D26C081E00E947E1D023008F1BE +:102F300082E00E947E1D1DC0112331F0002389F222 +:102F40008C2D0E94A71415C0002391F28C2D0E9495 +:102F50006F150FC0472D4F706C2DC7010E94700771 +:102F60000E94661B06C0472D4F706C2DC7010E9442 +:102F70009309DD20F9F00E94711D80FD1BC0F7014F +:102F800012820E946B1D0E94611CC7010E94E917FA +:102F90000E946B1D0F90DF91CF911F910F91FF90B9 +:102FA000EF90DF90CF90BF90AF909F908F907F90E9 +:102FB0000C94821C0F90DF91CF911F910F91FF9085 +:102FC000EF90DF90CF90BF90AF909F908F907F90C9 +:102FD00008950F931F93CF93DF93EC01888199811C +:102FE0002B813C81232BB9F09F3F11F48F3F99F047 +:102FF000CE010E94EB08882371F0688179818A8173 +:103000000E94671D8C010E941C1D0E94E31BB801D9 +:10301000CE010E94CC15DF91CF911F910F910895A1 +:103020000E943F1E0E944F1E0E94141E0E94691E95 +:103030000E9482230E94D12280E090E00E94AD1382 +:1030400080E090E00C94C3130E942F1E0C94101883 +:103050000E945C1D292F22952F7030E02C30310505 +:103060004CF42A3031056CF42250310922303105FC +:10307000A8F407C02C30310569F02F30310551F02C +:103080000DC0803F69F018F4803E40F409C0843FD1 +:1030900029F406C093FB882780F9089580E00895FD +:1030A00081E00895CF93DF9300D000D01F92CDB779 +:1030B000DEB70F900F900F900F900F90DF91CF9190 +:1030C0000895CF93DF9300D000D000D0CDB7DEB706 +:1030D00026960FB6F894DEBF0FBECDBFDF91CF911D +:1030E00008951F93CF93DF93C091870116E08091DD +:1030F0008801C81799F0D0E01C9FF0011D9FF00DCA +:103100001124E757FE4F4081518162817381848190 +:1031100095810E9461182196C770E9CFDF91CF9108 +:103120001F9108954091B9015091BA016091BB017E +:103130007091BC018091BD019091BE010C94611809 +:103140008091BE0182958F7009F054C08091BB01BF +:10315000882309F44FC080918701A0918801609174 +:10316000B9017091BA014091BC015091BD01B6E026 +:103170008A1709F43FC090E041155105C1F17F3F26 +:1031800011F46F3FA1F1B89FF001B99FF00D112428 +:10319000E757FE4F218172132AC02081621327C096 +:1031A0002281211124C0238134812417350710F492 +:1031B00021503109241B350B283C3105C0F42091E6 +:1031C000BE012F7020612093BE0126E0289FF001F0 +:1031D000299FF00D1124E257FE4F80818F7080618E +:1031E000808389EB91E00E94E9170C947118019695 +:1031F0008770BECF0895CF92DF92EF92FF920F9328 +:103200001F93CF93DF93CDB7DEB762970FB6F894D5 +:10321000DEBF0FBECDBF8C0185E0F801DE011D963B +:1032200001900D928A95E1F7D8014C9111965C912D +:10323000119712966C9112971396CD90DC9014977B +:103240003091B9017091BA018091BC019091BD019A +:10325000009709F46BC17F3F19F43F3F09F466C141 +:10326000E090BB01EE2009F4C0C02091BE01C81659 +:10327000D90628F0F601E81BF90BCF0104C08095B0 +:1032800090958C0D9D1DFF24F394883C910578F05A +:10329000F12C207F09F0C6C07C2DD98AC88A898983 +:1032A0000E94521889EB91E00E94E917B1C0822F69 +:1032B000807F09F046C0751314C0341312C0611129 +:1032C00010C02F7020612093BE010E94921889EBDC +:1032D00091E00E94E9178091BE01D80115968C9368 +:1032E0002EC0CD2819F15F3F11F44F3FF9F0F62EB3 +:1032F00061111CC0809187012091880136E08217FE +:1033000009F45AC090E0389FF001399FF00D112464 +:10331000E757FE4F7181571306C07081471303C0F2 +:103320007281711103C001968770E9CFF62E662372 +:1033300009F418C18091BE0181608093BE01F12C17 +:1033400011C1751308C0341306C0611104C0809107 +:10335000BE01D801C3C04D875E878D859E856A8B6F +:103360000E9428186A898823E1F16623D1F120910F +:10337000BE01822F82958F7090E0029774F0809149 +:10338000B9019091BA0198878F831986DB86CA8626 +:103390002C87CE0107960E94E91786E0F801A9EB79 +:1033A000B1E001900D928A95E1F70E94A0180E9469 +:1033B0009218FF24F394D6C04D875E878D859E8535 +:1033C0000E945C1D292F22952F7030E0223031059C +:1033D0000CF0BCC09F7009F0B6C0805E883008F465 +:1033E000C1C0C8010E94E917E4CFC816D90608F485 +:1033F00053C0F601E81BF90BCF01883C910508F496 +:1034000050C0F12C7C2DD98AC88A89890E94521813 +:10341000E9EBF1E086E0DF011D928A95E9F70E9471 +:103420009218A0C0751314C0341312C0611110C0DB +:103430008091BE01F8018583C8010E94E91786E0EA +:10344000E9EBF1E0DF011D928A95E9F7FE2C8AC0D5 +:103450004D875E878D859E856A8B0E9428186A89B4 +:10346000882309F4BECF662309F4BBCF2091BE01A7 +:10347000822F82958F7090E002970CF48ECF80910E +:10348000B9019091BA019A8389831B82DD82CC8233 +:103490002E83CE0101967FCF809590958C0D9D1D3A +:1034A000ACCFF62E662309F49CCF75132EC03413CF +:1034B0002CC02091BE0120FD1FC0822F82958F70ED +:1034C000D9F0D80115962C9315978F3049F08F5F5E +:1034D000982F9295907F822F8F70892B15968C93C1 +:1034E000C8010E94E91786E0F801A9EBB1E001905C +:1034F0000D928A95E1F793CF86E0F801A9EBB1E050 +:1035000001900D928A95E1F72DC04D875E878D85DC +:103510009E850E942818811140CF8091BE01816054 +:103520008093BE01C8010E94E9171CC0662309F4FC +:1035300058CF4D875E878D859E850E9428188823E9 +:1035400009F44FCF2ACF811148CF0CC02430310568 +:103550000CF047CF9F7009F440CFF8019581907F20 +:1035600009F03BCF8F2D62960FB6F894DEBF0FBEE9 +:10357000CDBFDF91CF911F910F91FF90EF90DF9022 +:10358000CF9008951F93CF93DF93CDB7DEB72C97DD +:103590000FB6F894DEBF0FBECDBF4F835887698743 +:1035A0007A878B879C87CE0107960E94FB18882319 +:1035B00069F08F8198852A853B85232BF1F19F3F08 +:1035C00009F063C08F3F09F060C037C086E0FE019C +:1035D0003796DE01119601900D928A95E1F76F8181 +:1035E0007885EA85FB85309741F17F3F11F46F3F85 +:1035F00021F12091880130E0C90101968770992757 +:103600004091870150E08417950709F447C069830A +:103610007A83FD83EC8396E0929FD001939FB00D57 +:103620001124A757BE4FFE01319601900D929A9535 +:10363000E1F7809388010E94711816E0809187015C +:10364000909188018917C1F1189FC00111248757F3 +:103650009E4F0E94FB18882379F1E09187011E9FFD +:10366000F0011124E757FE4F40815181628173813F +:10367000848195810E9461188091870190E0019674 +:103680008770992780938701D9CF4F8158856985A5 +:103690007A858B859C850E946118CFCF0E94241863 +:1036A0001092880110928701E9EBF1E086E0DF01DA +:1036B0001D928A95E9F7C1CF2C960FB6F894DEBF1C +:1036C0000FBECDBFDF91CF911F910895EF92FF9272 +:1036D0000F931F93CF93DF938C01009709F46CC075 +:1036E000F12CEE24E394E8012196F80184918437CB +:1036F00040F4843008F051C0813081F0823019F1FB +:103700005BC0853709F444C0A8F19CE7980F903757 +:1037100008F052C08F770E946F1541C00E5F1F4F97 +:10372000FE01C49180E28C0F883048F4C7708E2D62 +:1037300001C0880FCA95EAF70E94421E14C08C2F60 +:103740000E94A7142DC00E5F1F4FFE01C49180E29E +:103750008C0F883058F4C7708E2D01C0880FCA9521 +:10376000EAF70E94481E0E94691E1AC08C2F0E9410 +:103770006F1516C00E5F1F4FFE01C491CC2381F060 +:103780008FE99FE00197F1F700C00000C150F6CF2C +:103790000E5F1F4FFE01F49003C00E94A7148E011C +:1037A0008F2D882309F49FCFEFE9FFE03197F1F7E0 +:1037B00000C000008150F5CFDF91CF911F910F9194 +:1037C000FF90EF90089508956093C3017093C40132 +:1037D0008093C5019093C6010C9410180F931F930A +:1037E0000091C3011091C4012091C5013091C6011F +:1037F000DC01CB01802B912BA22BB32B8093C30137 +:103800009093C401A093C501B093C6011F910F917D +:103810000C9410180F931F930091C3011091C401D1 +:103820002091C5013091C601DC01CB018023912399 +:10383000A223B3238093C3019093C401A093C50135 +:10384000B093C6011F910F910C9410180F931F9302 +:103850000091C3011091C4012091C5013091C601AE +:10386000DC01CB0180279127A227B3278093C301D6 +:103870009093C401A093C501B093C6011F910F910D +:103880000C9410181092BF011092C0011092C10147 +:103890001092C2010C94101841E050E060E070E01A +:1038A00004C0440F551F661F771F8A95D2F74093B7 +:1038B000BF015093C0016093C1017093C2010C9489 +:1038C000101841E050E060E070E004C0440F551F64 +:1038D000661F771F8A95D2F78091BF019091C00132 +:1038E000A091C101B091C201482B592B6A2B7B2BAF +:1038F0004093BF015093C0016093C1017093C20116 +:103900000C94101841E050E060E070E004C0440FF7 +:10391000551F661F771F8A95D2F740955095609581 +:1039200070958091BF019091C001A091C101B091AB +:10393000C201482359236A237B234093BF0150933C +:10394000C0016093C1017093C2010C94101841E052 +:1039500050E060E070E004C0440F551F661F771F01 +:103960008A95D2F78091BF019091C001A091C101C9 +:10397000B091C201482759276A277B274093BF018E +:103980005093C0016093C1017093C2010C94101850 +:103990000F931F930091BF011091C0012091C101AD +:1039A0003091C201DC01CB01802B912BA22BB32BD8 +:1039B0008093BF019093C001A093C101B093C20155 +:1039C0001F910F910C9410180F931F930091BF013A +:1039D0001091C0012091C1013091C201DC01CB01E5 +:1039E00080239123A223B3238093BF019093C0012E +:1039F000A093C101B093C2011F910F910C941018B4 +:103A00000F931F930091BF011091C0012091C1013C +:103A10003091C201DC01CB0180279127A227B32777 +:103A20008093BF019093C001A093C101B093C201E4 +:103A30001F910F910C9410180895CF92DF92EF927E +:103A4000FF920F931F93CF93DF938C01C090C3011C +:103A5000D090C401E090C501F090C6018091BF01F3 +:103A60009091C001A091C101B091C201C82AD92A88 +:103A7000EA2AFB2ACFE1D0E0D701C6010C2E04C010 +:103A8000B695A795979587950A94D2F780FF06C0BB +:103A9000B8018C2F0E94E90B019721F4219760F760 +:103AA00080E001C08C2FDF91CF911F910F91FF908B +:103AB000EF90DF90CF900895CF93DF93EC010E94B9 +:103AC0001D1DBE010E94E90BDF91CF910895CB012E +:103AD0000E945C1D08958091C70185958595859507 +:103AE00008958091C7018770089598E0899F90019B +:103AF0001124262B2093C7010C94611C2091C7012F +:103B0000809582238093C701982F977069F430E0E5 +:103B1000482F552747FD50952417350729F08595DF +:103B2000859585950C94821C08959091C701977096 +:103B300081E009F480E0089590910C01992321F02F +:103B400090910D01911109C020910E0130910F014A +:103B5000F90132969FEF40E01FC0982F96959695F9 +:103B600096959F3050F5E0910E01F0910F01E90F0D +:103B7000F11D877021E030E0A90102C0440F551FFC +:103B80008A95E2F7CA019181892B818308959F3F2D +:103B900039F04F5F4E3041F051915813F8CF0DC0BE +:103BA0005111F7CF942FF5CF9F3F39F0F901E90F6D +:103BB000F11D97FDFA9582830895089590910C0167 +:103BC000992321F090910D01911109C020910E01CE +:103BD00030910F01F9013296205F3F4F1FC0982F9F +:103BE0009695969596959F30F0F4E0910E01F091A0 +:103BF0000F01E90FF11D877021E030E0A90102C03B +:103C0000440F551F8A95E2F7CA0180959181892357 +:103C1000818308953196E217F30729F09081981374 +:103C2000F9CF1082F7CF089581E090E0E0910E0186 +:103C3000F0910F01E80FF91F108201968031910574 +:103C4000A9F708959091DB01892B8093DB010895FA +:103C500080959091DB0189238093DB010895109278 +:103C6000DB0108959091DA01892B8093DA010895A0 +:103C700080959091DA0189238093DA01089510925A +:103C8000DA0108959091D901892B8093D901089583 +:103C900080959091D90189238093D901089510923C +:103CA000D90108958093C80108951092C80108951C +:103CB00080910E0190910F01FC0131969C01205FD3 +:103CC0003F4F80E0919191118F5FE217F307D1F799 +:103CD0000895E0910E01F0910F018091DB01808346 +:103CE000E0910E01F0910F0190818091DA01892B12 +:103CF0008083E0910E01F0910F0190818091D901B4 +:103D0000892B80838091C801882361F0E0910E01A6 +:103D1000F0910F019081892B80830E94581E8111A0 +:103D20001092C80180910E0190910F010C9497138D +:103D300020E0009739F0AC014150510984239523CC +:103D40002F5FF7CF822F0895CF92DF92EF92FF92ED +:103D50006C01EE24FF24C114D104E104F10421F02C +:103D6000C701B60120E101C020E0C72ED82EE92E00 +:103D7000FF24C114D104E104F10419F0285FC70144 +:103D8000B6016B017C0154E0F694E794D794C79494 +:103D90005A95D1F7C114D104E104F10419F02C5F54 +:103DA000C701B6016B017C0142E0F694E794D79419 +:103DB000C7944A95D1F7C114D104E104F10419F074 +:103DC0002E5FC701B601DC01CB01B695A79597958B +:103DD0008795892B8A2B8B2B09F02F5F822FFF90E1 +:103DE000EF90DF90CF9008958091F301843021F11E +:103DF0001092DD0120E488E190E00FB6F894A895D8 +:103E0000809360000FBE2093600080E00E94840CCD +:103E100083B7817F846083BF83B7816083BF7894D9 +:103E2000889583B78E7F83BF88E10FB6F89480931F +:103E30006000109260000FBE0895089508950E94DA +:103E40001D1F0E94F8040E941E1F0E94ED0591E0B4 +:103E5000811101C090E0892F08950E9424180E94CA +:103E60008B130C94840C82E084BD93E095BD9AEF93 +:103E700097BD80936E0008952FB7F8948091DE016E +:103E80009091DF01A091E001B091E1012FBF089571 +:103E9000CF92DF92EF92FF920F931F932FB7F89478 +:103EA0004091DE015091DF016091E0017091E101EC +:103EB0002FBF6A017B01EE24FF248C0120E030E05B +:103EC000C016D106E206F30610F4415051099A01DA +:103ED000281B390BC9011F910F91FF90EF90DF90C4 +:103EE000CF9008951F920F920FB60F9211248F93C7 +:103EF0009F93AF93BF938091DE019091DF01A091DA +:103F0000E001B091E1010196A11DB11D8093DE0198 +:103F10009093DF01A093E001B093E101BF91AF91D5 +:103F20009F918F910F900FBE0F901F9018950E9438 +:103F30008810F8942FEF87EA91E621508040904056 +:103F4000E1F700C0000087E090EBDC018093FD0109 +:103F50009093FE01A093FF01B09300029CE088E1E2 +:103F60000FB6F894A895809360000FBE9093600000 +:103F7000FFCFEF92FF920F931F93CF93DF93D82F32 +:103F8000CDE08C2F0E94E60505E010E0E82EF12C34 +:103F9000C701002E02C0959587950A94E2F780FF2D +:103FA00009C0602F7C2F80E00E949409D81302C0C2 +:103FB00081E006C00150110958F7C15010F780E0A8 +:103FC000DF91CF911F910F91FF90EF900895CF93C4 +:103FD000C82F8CE20E94B91F882321F08C2FCF912B +:103FE0000C94B91F80E0CF910895CF930E943C219B +:103FF000811102C00E942221C5E6C15049F00E94F1 +:10400000F8048FE39CE90197F1F700C00000F5CFB9 +:1040100089E20E94E71F811113C18AE20E94E71F13 +:1040200081110E94222185E00E94E71F81110E94D8 +:10403000971F0E9447218093DC0187E00E94E71FC1 +:104040008823A9F18BE10E94E71F882351F080911A +:10405000DC0181FB222720F991E0922790FB81F976 +:104060000EC08EE00E94E71F882361F08091DC0182 +:1040700082FB222720F991E0922790FB82F980931E +:10408000DC0115C080E10E94E71F9091DC018823CC +:1040900041F093FB222720F981E0822780FB93F9EE +:1040A00004C0892F809580FB90F99093DC0180916A +:1040B000DC010E944B210E9459218093FC0180EE7B +:1040C0000E94E71F882341F08091FC01982F909572 +:1040D00090FB80F98093FC0189E30E94E71F88230D +:1040E00059F08091FC0181FB222720F991E0922771 +:1040F00090FB81F98093FC0182EE0E94E71F8823E8 +:1041000059F08091FC0182FB222720F991E092274F +:1041100090FB82F98093FC0186EE0E94E71F8823C2 +:1041200059F08091FC0183FB222720F991E092272E +:1041300090FB83F98093FC0183EE0E94E71F8823A4 +:1041400059F08091FC0184FB222720F991E092270D +:1041500090FB84F98093FC0185E30E94E71F88238C +:1041600059F08091FC0185FB222720F991E09227EC +:1041700090FB85F98093FC0181E30E94E71F88236F +:1041800059F08091FC0186FB222720F991E09227CB +:1041900090FB86F98093FC0181E10E94E71F882350 +:1041A00059F08091FC0187FB222720F991E09227AA +:1041B00090FB87F98093FC018091FC010E945D21B6 +:1041C0008091FC0187FB882780F980930D0187E2AD +:1041D0000E94E71FC82F8EE10E94E71F8111C26075 +:1041E0008FE10E94E71F8111C46080E20E94E71FF7 +:1041F0008111C86081E20E94E71F8111C06182E2E3 +:104200000E94E71F8111C06283E20E94E71F8111B3 +:10421000C06484E20E94E71F882311F0C06802C0D6 +:10422000CC2329F08C2F0E9454216C2F03C00E94B4 +:104230005021682F70E080E090E0CF910C94E41B57 +:10424000CF9108956DEE7EEF80E090E00E948E2782 +:1042500060E082E090E00E947C2760E083E090E0F4 +:104260000E947C2760E084E090E00E947C2760E070 +:1042700085E090E00C947C2780E090E00E94762717 +:1042800021E08D3E9E4F09F020E0822F089582E0CC +:1042900090E00C946E27682F82E090E00C947C27CD +:1042A00083E090E00C946E27682F83E090E00C94FC +:1042B0007C2784E090E00C946E27682F84E090E0E7 +:1042C0000C947C278091E40180FF0BC06091130166 +:1042D00085E0689FB0011124759567957595679580 +:1042E0002BC081FF09C06091130185E0689FB00178 +:1042F00011247595679520C082FF07C06091130156 +:1043000085E0689FB001112417C09091E5019923C1 +:10431000D1F060911201961788F72091130185E082 +:10432000289F90011124929FA001939F500D11246A +:1043300070E0CA010E9440276038710540F46115A1 +:10434000710539F002C065E070E0862F08958FE7AF +:10435000089581E008958091E40180FF08C0609194 +:10436000110170E0759567957595679521C081FF7E +:1043700006C06091110170E07595679519C082FFC4 +:1043800004C06091110170E010C09091E501992383 +:10439000C1F0609110019617A0F780911101899FDB +:1043A000C001112470E00E9440276038710528F494 +:1043B0006115710521F0862F08958FE7089581E03A +:1043C000089561E070E0F4CF803F21F40E94622103 +:1043D000819504C0813F29F40E9462218093E80105 +:1043E0000895823F21F40E946221819504C0833F99 +:1043F00029F40E9462218093E7010895893F19F40E +:104400000E94AB2105C08A3F31F40E94AB21819507 +:104410008093E90108958B3F21F40E94AB2181959F +:1044200004C08C3F29F40E94AB218093EA010895D7 +:10443000843F21F48091E601816017C0853F21F41B +:104440008091E601826011C0863F21F48091E601EF +:1044500084600BC0873F21F48091E601886005C02D +:10446000883F31F48091E60180618093E6010895F0 +:104470008D3F21F48091E40181600BC08E3F21F4D7 +:104480008091E401826005C08F3F29F48091E401AE +:1044900084608093E4010895803F39F48091E801BD +:1044A00087FF6CC01092E80169C0813F29F48091B8 +:1044B000E8011816BCF362C09091E701823F29F42D +:1044C00097FF5CC01092E70159C0833F19F4191699 +:1044D000CCF354C0893F41F48091E90118160CF0E7 +:1044E0004DC01092E9014AC08A3F29F48091E90148 +:1044F00087FF44C0F6CF8B3F39F48091EA0187FFF4 +:104500003DC01092EA013AC08C3F29F48091EA0143 +:104510001816BCF333C0843F21F48091E6018E7FEE +:1045200017C0853F21F48091E6018D7F11C0863F41 +:1045300021F48091E6018B7F0BC0873F21F48091AD +:10454000E601877F05C0883F31F48091E6018F7EC8 +:104550008093E60113C08D3F21F48091E4018E7FAA +:104560000BC08E3F21F48091E4018D7F05C08F3F09 +:1045700029F48091E4018B7F8093E4018091E7012D +:1045800081110EC08091E80181110AC08091E9017A +:10459000811106C08091EA01811102C01092E501EB +:1045A000089586EE91E00E94A2130E943C1F909312 +:1045B000E3018093E20108951F93CF93DF938091ED +:1045C000E2019091E3010E94481FAC019091E50146 +:1045D000992321F02091140130E006C020911501AB +:1045E0008AE0289F900111244217530708F486C0DF +:1045F0008091E701C091E801D091E9011091EA01B1 +:10460000811107C0C11176C0D11174C0111172C0DF +:1046100075C09F3F19F09F5F9093E501181624F431 +:104620000E9462218093E7018091E70187FF05C026 +:104630000E94622181958093E7011C1624F40E9458 +:1046400062218093E8018091E80187FF05C00E9404 +:10465000622181958093E8016091E701662339F139 +:10466000C091E801CC2319F1772767FD7095872F5A +:10467000972F0E94512623E333E343E35FE30E9435 +:10468000B5260E941E266093E7016C2F772767FDF1 +:104690007095872F972F0E94512623E333E343E33E +:1046A0005FE30E94B5260E941E266093E8011D1656 +:1046B00024F40E94AB218093E9018091E90187FFF6 +:1046C00005C00E94AB2181958093E901111624F465 +:1046D0000E94AB218093EA018091EA0187FF05C027 +:1046E0000E94AB2181958093EA01DF91CF911F91C8 +:1046F0000C94D1229F3F09F08ECF96CFDF91CF91BE +:104700001F910895E6EEF1E085E0DF011D928A95A4 +:10471000E9F71092E5011092E4010895833081F1E8 +:1047200028F4813059F08230D1F00895853009F4B1 +:1047300049C0B8F1863009F456C00895809115013A +:10474000262F30E0280F311D2F3F310524F4680F4C +:104750006093150108958FEF80931501089580915E +:104760001401262F30E0280F311D2F3F310524F48E +:10477000680F6093140108958FEF809314010895DA +:1047800080911301262F30E0280F311D2F3F310576 +:1047900024F4680F6093130108958FEF8093130141 +:1047A000089580911201262F30E0280F311D2F3FF0 +:1047B000310524F4680F6093120108958FEF809300 +:1047C0001201089580911101262F30E0280F311D2C +:1047D0002F3F310524F4680F6093110108958FEF86 +:1047E00080931101089580911001262F30E0280F49 +:1047F000311D2F3F310524F4680F60931001089597 +:104800008FEF809310010895833011F128F48130E7 +:1048100049F0823091F00895853081F120F18630A1 +:10482000C1F1089580911501681720F4861B8093CB +:1048300015010895109215010895809114016817CB +:1048400020F4861B8093140108951092140108959A +:1048500080911301681720F4861B8093130108953B +:1048600010921301089580911201681720F4861B9D +:104870008093120108951092120108958091110100 +:10488000681720F4861B809311010895109211017E +:10489000089580911001681720F4861B8093100101 +:1048A00008951092100108950F931F938D3109F40C +:1048B0006BC008F03FC08E3009F47FC0C0F4873071 +:1048C00009F469C068F4863009F0B1C08091DC0158 +:1048D000817F8E7F8093DC0181E08093EC01A8C012 +:1048E000883009F4A2C08B3009F49FC0A0C0863183 +:1048F00009F49BC078F4803109F472C0813109F069 +:1049000096C00E94241890910D0181E08927809320 +:104910000D018BC0893109F488C08B3109F087C043 +:104920008091DC0181FB222720F991E0922790FB06 +:1049300081F94CC0853309F470C048F4873209F41A +:104940006CC008F459C0893209F467C070C0833460 +:1049500038F48A3308F04EC0883309F466C067C063 +:10496000833409F45AC0883409F061C00E942418C5 +:104970000FEF13ED20E3015010402040E1F700C09D +:1049800000000E94971F51C00E94D8250E948B13DF +:104990000E94840C4AC09091DC01892F809581701F +:1049A00080FB90F929F0966098609093DC0140C0FC +:1049B000997F977F9093DC0138C08091DC0182FB66 +:1049C000222720F991E0922790FB82F98093DC0165 +:1049D000992359F18091DC0181608093DC0125C02D +:1049E0008091DC0183FB222720F991E0922790FB44 +:1049F00083F9ECCF895301C08D5141E050E060E074 +:104A000070E08A019B0104C0000F111F221F331F99 +:104A10008A95D2F7C901B80104C061E070E080E076 +:104A200090E00E94E41B0E94241881E001C080E015 +:104A30001F910F91089580E0089580E00895CF932D +:104A4000C82F8091EC01813079F018F08230E9F1C3 +:104A500087C0E0910E01F0910F018081813169F0F2 +:104A6000823209F07FC009C0E0910E01F0910F0180 +:104A70008081813111F0823261F48C2F0E941B25DC +:104A8000811104C08C2F0E9454241DC081E090E04D +:104A90001AC08C2F0E941D25811114C0C43179F0D9 +:104AA00048F4CB3079F0C03109F060C082E08093E7 +:104AB000EC0108C0C93219F0C83321F057C0109278 +:104AC000EC0154C081E0817053C0C93289F118F5FE +:104AD000C43171F1A8F4C73009F046C08AE0809370 +:104AE000150194E19093140193E090931301809346 +:104AF000120188E08093110188E28093100134C094 +:104B0000CE51C63088F5EC2FF0E0E65DFE4F808197 +:104B10008093EB0129C0CE34E9F020F4CB3421F5A9 +:104B20006AE013C0C13579F0C235F1F461E00DC01F +:104B30008091EB01882319F01092EB0115C081E000 +:104B40008093EC0115C061E006C08091EB010E94EA +:104B50008E230AC06AE08091EB010E94042404C005 +:104B60001092EC0180E004C081E002C080E0ABCF95 +:104B7000CF910895E1E8F0E08081886080838081B2 +:104B8000816080838FB7F89493E09093890090EDD3 +:104B9000909388008FBF0895EFE6F0E080818260F7 +:104BA00080830895EFE6F0E080818D7F8083089513 +:104BB000EFE6F0E0908182E08927808308951F92DC +:104BC0000F920FB60F9211242F933F934F935F9341 +:104BD0006F937F938F939F93AF93BF93EF93FF93C5 +:104BE0008091ED019091EE0101969093EE018093FA +:104BF000ED01811103C082E00E94840CE091EE017E +:104C0000E695E695F0E0E25FF74FE4918091ED01E3 +:104C10008E1303C080E00E94840CFF91EF91BF913E +:104C2000AF919F918F917F916F915F914F913F9144 +:104C30002F910F900FBE0F901F90189504D068947D +:104C4000B1118DC0089570D088F09F5790F0B92FA2 +:104C50009927B751A0F0D1F0660F771F881F991FD1 +:104C60001AF0BA95C9F712C0B13081F077D0B1E02F +:104C7000089574C0672F782F8827B85F39F0B93F3F +:104C8000CCF3869577956795B395D9F73EF49095D3 +:104C90008095709561957F4F8F4F9F4F0895E89451 +:104CA00009C097FB3EF490958095709561957F4F74 +:104CB0008F4F9F4F9923A9F0F92F96E9BB27939522 +:104CC000F695879577956795B795F111F8CFFAF432 +:104CD000BB0F11F460FF1BC06F5F7F4F8F4F9F4F63 +:104CE00016C0882311F096E911C0772321F09EE8C1 +:104CF000872F762F05C0662371F096E8862F70E027 +:104D000060E02AF09A95660F771F881FDAF7880F00 +:104D10009695879597F9089557FD9058440F551F1C +:104D200059F05F3F71F04795880F97FB991F61F02D +:104D30009F3F79F087950895121613061406551FA4 +:104D4000F2CF4695F1DF08C0161617061806991F10 +:104D5000F1CF86957105610508940895E894BB2705 +:104D600066277727CB0197F908950BD078C069D0D3 +:104D700028F06ED018F0952309F05AC05FC01124B6 +:104D8000EECFCADFA0F3959FD1F3950F50E0551FEA +:104D9000629FF001729FBB27F00DB11D639FAA2790 +:104DA000F00DB11DAA1F649F6627B00DA11D661FDF +:104DB000829F2227B00DA11D621F739FB00DA11D00 +:104DC000621F839FA00D611D221F749F3327A00DBA +:104DD000611D231F849F600D211D822F762F6A2F56 +:104DE00011249F5750408AF0E1F088234AF0EE0FDB +:104DF000FF1FBB1F661F771F881F91505040A9F7E8 +:104E00009E3F510570F014C0AACF5F3FECF3983E6F +:104E1000DCF3869577956795B795F795E7959F5F4E +:104E2000C1F7FE2B880F911D9695879597F90895E8 +:104E300097F99F6780E870E060E008959FEF80EC4D +:104E4000089500240A9416161706180609060895F0 +:104E500000240A9412161306140605060895092E56 +:104E60000394000C11F4882352F0BB0F40F4BF2BC5 +:104E700011F460FF04C06F5F7F4F8F4F9F4F089505 +:104E800097FB072E16F4009407D077FD09D00E94F7 +:104E90005A2707FC05D03EF4909581959F4F0895C1 +:104EA000709561957F4F0895EE0FFF1F0590F49167 +:104EB000E02D0994AA1BBB1B51E107C0AA1FBB1F11 +:104EC000A617B70710F0A61BB70B881F991F5A9596 +:104ED000A9F780959095BC01CD010895F999FECF71 +:104EE00092BD81BDF89A992780B50895A8E1B0E0F8 +:104EF00042E050E00C949627262FF999FECF92BD00 +:104F000081BDF89A019700B4021639F01FBA20BD8E +:104F10000FB6F894FA9AF99A0FBE08950196272FC2 +:104F20000E947D270C947C27DC01CB01FC01F999C0 +:104F3000FECF06C0F2BDE1BDF89A319600B40D92E5 +:0C4F400041505040B8F70895F894FFCF9E +:104F4C000220860C140DF10CBD0C890C0101C90159 +:104F5C0028080A03140A3F4D3639CF0782074C073D +:104F6C001307A606BF06D806F106010203040506C0 +:044F7C000708090019 +:00000001FF diff --git a/keyboards/ergodox_ez/keymaps/german-manuneo/keymap.c b/keyboards/ergodox_ez/keymaps/german-manuneo/keymap.c new file mode 100644 index 0000000000..5fcc14d518 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/german-manuneo/keymap.c @@ -0,0 +1,783 @@ +#include "ergodox_ez.h" +#include "action_layer.h" +#include "keymap.h" +#include "keymap_german.h" + +#define UC_ASYMPTOTICALLY_EQUAL_TO 0 +#define UC_DIVISION_SIGN 1 +#define UC_DOWNWARDS_ARROW 2 +#define UC_ELEMENT_OF 3 +#define UC_EMPTY_SET 4 +#define UC_FOR_ALL 5 +#define UC_GREEK_CAPITAL_LETTER_ALPHA 6 +#define UC_GREEK_CAPITAL_LETTER_BETA 7 +#define UC_GREEK_CAPITAL_LETTER_CHI 8 +#define UC_GREEK_CAPITAL_LETTER_DELTA 9 +#define UC_GREEK_CAPITAL_LETTER_EPSILON 10 +#define UC_GREEK_CAPITAL_LETTER_ETA 11 +#define UC_GREEK_CAPITAL_LETTER_GAMMA 12 +#define UC_GREEK_CAPITAL_LETTER_IOTA 13 +#define UC_GREEK_CAPITAL_LETTER_KAPPA 14 +#define UC_GREEK_CAPITAL_LETTER_LAMDA 15 +#define UC_GREEK_CAPITAL_LETTER_MU 16 +#define UC_GREEK_CAPITAL_LETTER_NU 17 +#define UC_GREEK_CAPITAL_LETTER_OMEGA 18 +#define UC_GREEK_CAPITAL_LETTER_OMICRON 19 +#define UC_GREEK_CAPITAL_LETTER_PHI 20 +#define UC_GREEK_CAPITAL_LETTER_PI 21 +#define UC_GREEK_CAPITAL_LETTER_PSI 22 +#define UC_GREEK_CAPITAL_LETTER_RHO 23 +#define UC_GREEK_CAPITAL_LETTER_SIGMA 24 +#define UC_GREEK_CAPITAL_LETTER_TAU 25 +#define UC_GREEK_CAPITAL_LETTER_THETA 26 +#define UC_GREEK_CAPITAL_LETTER_UPSILON 27 +#define UC_GREEK_CAPITAL_LETTER_XI 28 +#define UC_GREEK_CAPITAL_LETTER_ZETA 29 +#define UC_GREEK_SMALL_LETTER_ALPHA 30 +#define UC_GREEK_SMALL_LETTER_BETA 31 +#define UC_GREEK_SMALL_LETTER_CHI 32 +#define UC_GREEK_SMALL_LETTER_DELTA 33 +#define UC_GREEK_SMALL_LETTER_EPSILON 34 +#define UC_GREEK_SMALL_LETTER_ETA 35 +#define UC_GREEK_SMALL_LETTER_FINAL_SIGMA 36 +#define UC_GREEK_SMALL_LETTER_GAMMA 37 +#define UC_GREEK_SMALL_LETTER_IOTA 38 +#define UC_GREEK_SMALL_LETTER_KAPPA 39 +#define UC_GREEK_SMALL_LETTER_LAMDA 40 +#define UC_GREEK_SMALL_LETTER_MU 41 +#define UC_GREEK_SMALL_LETTER_NU 42 +#define UC_GREEK_SMALL_LETTER_OMEGA 43 +#define UC_GREEK_SMALL_LETTER_OMICRON 44 +#define UC_GREEK_SMALL_LETTER_PHI 45 +#define UC_GREEK_SMALL_LETTER_PI 46 +#define UC_GREEK_SMALL_LETTER_PSI 47 +#define UC_GREEK_SMALL_LETTER_RHO 48 +#define UC_GREEK_SMALL_LETTER_SIGMA 49 +#define UC_GREEK_SMALL_LETTER_TAU 50 +#define UC_GREEK_SMALL_LETTER_THETA 51 +#define UC_GREEK_SMALL_LETTER_UPSILON 52 +#define UC_GREEK_SMALL_LETTER_XI 53 +#define UC_GREEK_SMALL_LETTER_ZETA 54 +#define UC_INFINITY 55 +#define UC_LEFTWARDS_ARROW 56 +#define UC_MULTIPLICATION_SIGN 57 +#define UC_NOT_AN_ELEMENT_OF 58 +#define UC_NOT_EQUAL_TO 59 +#define UC_PLUS_MINUS_SIGN 60 +#define UC_RIGHTWARDS_ARROW 61 +#define UC_SUBSCRIPT_EIGHT 62 +#define UC_SUBSCRIPT_FIVE 63 +#define UC_SUBSCRIPT_FOUR 64 +#define UC_SUBSCRIPT_NINE 65 +#define UC_SUBSCRIPT_ONE 66 +#define UC_SUBSCRIPT_SEVEN 67 +#define UC_SUBSCRIPT_SIX 68 +#define UC_SUBSCRIPT_THREE 69 +#define UC_SUBSCRIPT_TWO 70 +#define UC_SUBSCRIPT_ZERO 71 +#define UC_SUPERSCRIPT_EIGHT 72 +#define UC_SUPERSCRIPT_FIVE 73 +#define UC_SUPERSCRIPT_FOUR 74 +#define UC_SUPERSCRIPT_LATIN_SMALL_LETTER_N 75 +#define UC_SUPERSCRIPT_NINE 76 +#define UC_SUPERSCRIPT_ONE 77 +#define UC_SUPERSCRIPT_SEVEN 78 +#define UC_SUPERSCRIPT_SIX 79 +#define UC_SUPERSCRIPT_THREE 80 +#define UC_SUPERSCRIPT_TWO 81 +#define UC_SUPERSCRIPT_ZERO 82 +#define UC_THERE_DOES_NOT_EXIST 83 +#define UC_THERE_EXISTS 84 +#define UC_UPWARDS_ARROW 85 +#define UC_VULGAR_FRACTION_ONE_EIGHTH 86 +#define UC_VULGAR_FRACTION_ONE_FIFTH 87 +#define UC_VULGAR_FRACTION_ONE_HALF 88 +#define UC_VULGAR_FRACTION_ONE_QUARTER 89 +#define UC_VULGAR_FRACTION_ONE_SIXTH 90 +#define UC_VULGAR_FRACTION_ONE_THIRD 91 +#define UC_VULGAR_FRACTION_THREE_QUARTERS 92 +#define UC_VULGAR_FRACTION_TWO_THIRDS 93 +#define UM 94 + +#define L0 0 // layer_0 +#define L1 1 // layer_1 +#define L2 2 // layer_2 +#define L3 3 // layer_3 +#define L4 4 // layer_4 +#define L5 5 // layer_5 +#define L6 6 // layer_6 + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* + * .------------------------------------.------------------------------------. + * |MO(5)| 1 | 2 | 3 | 4 | 5 |ACUT | GRV | 6 | 7 | 8 | 9 | 0 |CIRC | + * !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + * |MO(4)| X | P | F | W | G |HOME |TG(2)| H | J | K | L | Q | Z | + * !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + * |MO(1)| U | I | A | E | O |-----!-----! S | N | R | T | D | SS | + * !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + * |MO(3)| UE | OE | AE | C | V |END | TAB | B | M |COMM| DOT| UP | Y | + * '-----+----+----+----+----+----------'----------+----+----+----+----+-----' + * | | |LGUI|LALT|LCTL| !RCTL|RALT|LEFT|DOWN|RGHT| + * '------------------------' '------------------------' + * .-----------. .-----------. + * |INS |TG(2)| !M(UM)|DELT | + * .-----+-----+-----! !-----+-----+-----. + * ! ! | APP | ! PGUP| ! ! + * ! ! !-----! !-----! ! ! + * |BSPC |LSFT | ESC | ! PGDN|ENTER|SPACE| + * '-----------------' '-----------------' + */ +[L0] = KEYMAP( + MO(5), DE_1, DE_2, DE_3, DE_4, DE_5, DE_ACUT, + MO(4), DE_X, DE_P, DE_F, DE_W, DE_G, KC_HOME, + MO(1), DE_U, DE_I, DE_A, DE_E, DE_O, + MO(3), DE_UE, DE_OE, DE_AE, DE_C, DE_V, KC_END, + KC_TRNS, KC_TRNS, KC_LGUI, KC_LALT, KC_LCTL, + /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ KC_INS, TG(2), + /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ KC_APP, + /*-*/ /*-*/ /*-*/ /*-*/ KC_BSPC, KC_LSFT, KC_ESC, + DE_GRV, DE_6, DE_7, DE_8, DE_9, DE_0, DE_CIRC, + TG(2), DE_H, DE_J, DE_K, DE_L, DE_Q, DE_Z, + /*-*/ DE_S, DE_N, DE_R, DE_T, DE_D, DE_SS, + KC_TAB, DE_B, DE_M, DE_COMM, DE_DOT, KC_UP, DE_Y, + /*-*/ /*-*/ KC_RCTL, KC_RALT, KC_LEFT, KC_DOWN, KC_RGHT, + M(UM), KC_DELT, + KC_PGUP, + KC_PGDN, KC_ENTER, KC_SPACE +), +/* + * .------------------------------------.------------------------------------. + * | |EXLM|DQOT|PARA| | | | | | | | |RING| | + * !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + * | |ASTR|PIPE|SLSH|LCBR|RCBR| | |HASH|LESS|MORE| |DQOT| | + * !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + * | |UNDS|MINS|AMPR|LBRC|RBRC|-----!-----!DLR |LPRN|RPRN|TILD|QUOT| QST | + * !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + * | | |PLUS|EQL | | | | |BSLS|PERC|SCLN|COLN| ↑ | | + * '-----+----+----+----+----+----------'----------+----+----+----+----+-----' + * | | | | | | ! | | ← | ↓ | → | + * '------------------------' '------------------------' + * .-----------. .-----------. + * | | | ! | | + * .-----+-----+-----! !-----+-----+-----. + * ! ! | | ! | ! ! + * ! ! !-----! !-----! ! ! + * | | | | ! | | | + * '-----------------' '-----------------' + */ +[L1] = KEYMAP( + KC_TRNS, DE_EXLM, DE_DQOT, DE_PARA, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, DE_ASTR, DE_PIPE, DE_SLSH, DE_LCBR, DE_RCBR, KC_TRNS, + KC_TRNS, DE_UNDS, DE_MINS, DE_AMPR, DE_LBRC, DE_RBRC, + KC_TRNS, KC_TRNS, DE_PLUS, DE_EQL, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ KC_TRNS, KC_TRNS, + /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ KC_TRNS, + /*-*/ /*-*/ /*-*/ /*-*/ KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, DE_RING, KC_TRNS, + KC_TRNS, DE_HASH, DE_LESS, DE_MORE, KC_TRNS, DE_DQOT, KC_TRNS, + /*-*/ DE_DLR, DE_LPRN, DE_RPRN, DE_TILD, DE_QUOT, DE_QST, + KC_TRNS, DE_BSLS, DE_PERC, DE_SCLN, DE_COLN, M(UC_UPWARDS_ARROW), KC_TRNS, + /*-*/ /*-*/ KC_TRNS, KC_TRNS, M(UC_LEFTWARDS_ARROW), M(UC_DOWNWARDS_ARROW), M(UC_RIGHTWARDS_ARROW), + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), +/* + * .------------------------------------.------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | F11 | F12 | F6 | F7 | F8 | F9 |F10 |PEQL | + * !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + * | | | | | | | | | | P7 | P8 | P9 |PAST|PSLS | + * !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + * | | | | | | |-----!-----! | P4 | P5 | P6 |PMNS|PMNS | + * !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + * | | | | | | | | NLCK| | P1 | P2 | P3 |PPLS|PPLS | + * '-----+----+----+----+----+----------'----------+----+----+----+----+-----' + * | | | | | | ! P0 |PCMM|PDOT|PENT|PENT| + * '------------------------' '------------------------' + * .-----------. .-----------. + * | | | ! | | + * .-----+-----+-----! !-----+-----+-----. + * ! ! | | ! | ! ! + * ! ! !-----! !-----! ! ! + * | | | | ! | | | + * '-----------------' '-----------------' + */ +[L2] = KEYMAP( + KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F11, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ KC_TRNS, KC_TRNS, + /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ KC_TRNS, + /*-*/ /*-*/ /*-*/ /*-*/ KC_TRNS, KC_TRNS, KC_TRNS, + KC_F12, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_PEQL, + KC_TRNS, KC_TRNS, KC_P7, KC_P8, KC_P9, KC_PAST, KC_PSLS, + /*-*/ KC_TRNS, KC_P4, KC_P5, KC_P6, KC_PMNS, KC_PMNS, + KC_NLCK, KC_TRNS, KC_P1, KC_P2, KC_P3, KC_PPLS, KC_PPLS, + /*-*/ /*-*/ KC_P0, KC_PCMM, KC_PDOT, KC_PENT, KC_PENT, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), +/* + * .------------------------------------.------------------------------------. + * | | ¹ | ² | ³ | ⁴ | ⁵ | ∀ | | ⁶ | ⁷ | ⁸ | ⁹ | ⁰ | | + * !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + * | | × | ½ | ÷ | ¼ | ⅕ | | | ⅙ | | ⅛ | | | | + * !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + * | | | ± | AT |EURO| ∅ |-----!-----! ∞ | ⁿ | ∃ | ∈ | | | + * !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + * | | ⅓ | ≠ | ⅔ | ¾ | ≃ | | |EXLM| | ∄ | ∉ | | | + * '-----+----+----+----+----+----------'----------+----+----+----+----+-----' + * | | | | | | ! | | | | | + * '------------------------' '------------------------' + * .-----------. .-----------. + * | | | ! | | + * .-----+-----+-----! !-----+-----+-----. + * ! ! | | ! | ! ! + * ! ! !-----! !-----! ! ! + * | | | | ! | | | + * '-----------------' '-----------------' + */ +[L3] = KEYMAP( + KC_TRNS, M(UC_SUPERSCRIPT_ONE), M(UC_SUPERSCRIPT_TWO), M(UC_SUPERSCRIPT_THREE), M(UC_SUPERSCRIPT_FOUR), M(UC_SUPERSCRIPT_FIVE), M(UC_FOR_ALL), + KC_TRNS, M(UC_MULTIPLICATION_SIGN), M(UC_VULGAR_FRACTION_ONE_HALF), M(UC_DIVISION_SIGN), M(UC_VULGAR_FRACTION_ONE_QUARTER), M(UC_VULGAR_FRACTION_ONE_FIFTH), KC_TRNS, + KC_TRNS, KC_TRNS, M(UC_PLUS_MINUS_SIGN), DE_AT, DE_EURO, M(UC_EMPTY_SET), + KC_TRNS, M(UC_VULGAR_FRACTION_ONE_THIRD), M(UC_NOT_EQUAL_TO), M(UC_VULGAR_FRACTION_TWO_THIRDS), M(UC_VULGAR_FRACTION_THREE_QUARTERS), M(UC_ASYMPTOTICALLY_EQUAL_TO), KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ KC_TRNS, KC_TRNS, + /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ KC_TRNS, + /*-*/ /*-*/ /*-*/ /*-*/ KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, M(UC_SUPERSCRIPT_SIX), M(UC_SUPERSCRIPT_SEVEN), M(UC_SUPERSCRIPT_EIGHT), M(UC_SUPERSCRIPT_NINE), M(UC_SUPERSCRIPT_ZERO), KC_TRNS, + KC_TRNS, M(UC_VULGAR_FRACTION_ONE_SIXTH), KC_TRNS, M(UC_VULGAR_FRACTION_ONE_EIGHTH), KC_TRNS, KC_TRNS, KC_TRNS, + /*-*/ M(UC_INFINITY), M(UC_SUPERSCRIPT_LATIN_SMALL_LETTER_N), M(UC_THERE_EXISTS), M(UC_ELEMENT_OF), KC_TRNS, KC_TRNS, + KC_TRNS, DE_EXLM, KC_TRNS, M(UC_THERE_DOES_NOT_EXIST), M(UC_NOT_AN_ELEMENT_OF), KC_TRNS, KC_TRNS, + /*-*/ /*-*/ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), +/* + * .------------------------------------.------------------------------------. + * | | ₁ | ₂ | ₃ | ₄ | ₅ | | | ₆ | ₇ | ₈ | ₉ | ₀ | | + * !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + * | | χ | π | φ | ω | γ | | | η | ξ | κ | λ | | ζ | + * !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + * | | υ | ι | α | ε | ο |-----!-----! σ | ν | ρ | τ | δ | ς | + * !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + * | | | θ | | | | | | β | μ | | | | ψ | + * '-----+----+----+----+----+----------'----------+----+----+----+----+-----' + * | | | | | | ! | | | | | + * '------------------------' '------------------------' + * .-----------. .-----------. + * | | | ! | | + * .-----+-----+-----! !-----+-----+-----. + * ! ! | | ! | ! ! + * ! ! !-----! !-----! ! ! + * | | | | ! | | | + * '-----------------' '-----------------' + */ +[L4] = KEYMAP( + KC_TRNS, M(UC_SUBSCRIPT_ONE), M(UC_SUBSCRIPT_TWO), M(UC_SUBSCRIPT_THREE), M(UC_SUBSCRIPT_FOUR), M(UC_SUBSCRIPT_FIVE), KC_TRNS, + KC_TRNS, M(UC_GREEK_SMALL_LETTER_CHI), M(UC_GREEK_SMALL_LETTER_PI), M(UC_GREEK_SMALL_LETTER_PHI), M(UC_GREEK_SMALL_LETTER_OMEGA), M(UC_GREEK_SMALL_LETTER_GAMMA), KC_TRNS, + KC_TRNS, M(UC_GREEK_SMALL_LETTER_UPSILON), M(UC_GREEK_SMALL_LETTER_IOTA), M(UC_GREEK_SMALL_LETTER_ALPHA), M(UC_GREEK_SMALL_LETTER_EPSILON), M(UC_GREEK_SMALL_LETTER_OMICRON), + KC_TRNS, KC_TRNS, M(UC_GREEK_SMALL_LETTER_THETA), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ KC_TRNS, KC_TRNS, + /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ KC_TRNS, + /*-*/ /*-*/ /*-*/ /*-*/ KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, M(UC_SUBSCRIPT_SIX), M(UC_SUBSCRIPT_SEVEN), M(UC_SUBSCRIPT_EIGHT), M(UC_SUBSCRIPT_NINE), M(UC_SUBSCRIPT_ZERO), KC_TRNS, + KC_TRNS, M(UC_GREEK_SMALL_LETTER_ETA), M(UC_GREEK_SMALL_LETTER_XI), M(UC_GREEK_SMALL_LETTER_KAPPA), M(UC_GREEK_SMALL_LETTER_LAMDA), KC_TRNS, M(UC_GREEK_SMALL_LETTER_ZETA), + /*-*/ M(UC_GREEK_SMALL_LETTER_SIGMA), M(UC_GREEK_SMALL_LETTER_NU), M(UC_GREEK_SMALL_LETTER_RHO), M(UC_GREEK_SMALL_LETTER_TAU), M(UC_GREEK_SMALL_LETTER_DELTA), M(UC_GREEK_SMALL_LETTER_FINAL_SIGMA), + KC_TRNS, M(UC_GREEK_SMALL_LETTER_BETA), M(UC_GREEK_SMALL_LETTER_MU), KC_TRNS, KC_TRNS, KC_TRNS, M(UC_GREEK_SMALL_LETTER_PSI), + /*-*/ /*-*/ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), +/* + * .------------------------------------.------------------------------------. + * | | | | | | | | | | | | | | | + * !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + * | | Χ | Π | Φ | Ω | Γ | | | Η | Ξ | Κ | Λ | | Ζ | + * !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + * | | Υ | Ι | Α | Ε | Ο |-----!-----! Σ | Ν | Ρ | Τ | Δ | | + * !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + * | | | Θ | | | | | | Β | Μ | | | | Ψ | + * '-----+----+----+----+----+----------'----------+----+----+----+----+-----' + * | | | | | | ! | | | | | + * '------------------------' '------------------------' + * .-----------. .-----------. + * | | | ! | | + * .-----+-----+-----! !-----+-----+-----. + * ! ! | | ! | ! ! + * ! ! !-----! !-----! ! ! + * | | | | ! | | | + * '-----------------' '-----------------' + */ +[L5] = KEYMAP( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, M(UC_GREEK_CAPITAL_LETTER_CHI), M(UC_GREEK_CAPITAL_LETTER_PI), M(UC_GREEK_CAPITAL_LETTER_PHI), M(UC_GREEK_CAPITAL_LETTER_OMEGA), M(UC_GREEK_CAPITAL_LETTER_GAMMA), KC_TRNS, + KC_TRNS, M(UC_GREEK_CAPITAL_LETTER_UPSILON), M(UC_GREEK_CAPITAL_LETTER_IOTA), M(UC_GREEK_CAPITAL_LETTER_ALPHA), M(UC_GREEK_CAPITAL_LETTER_EPSILON), M(UC_GREEK_CAPITAL_LETTER_OMICRON), + KC_TRNS, KC_TRNS, M(UC_GREEK_CAPITAL_LETTER_THETA), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ KC_TRNS, KC_TRNS, + /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ KC_TRNS, + /*-*/ /*-*/ /*-*/ /*-*/ KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, M(UC_GREEK_CAPITAL_LETTER_ETA), M(UC_GREEK_CAPITAL_LETTER_XI), M(UC_GREEK_CAPITAL_LETTER_KAPPA), M(UC_GREEK_CAPITAL_LETTER_LAMDA), KC_TRNS, M(UC_GREEK_CAPITAL_LETTER_ZETA), + /*-*/ M(UC_GREEK_CAPITAL_LETTER_SIGMA), M(UC_GREEK_CAPITAL_LETTER_NU), M(UC_GREEK_CAPITAL_LETTER_RHO), M(UC_GREEK_CAPITAL_LETTER_TAU), M(UC_GREEK_CAPITAL_LETTER_DELTA), KC_TRNS, + KC_TRNS, M(UC_GREEK_CAPITAL_LETTER_BETA), M(UC_GREEK_CAPITAL_LETTER_MU), KC_TRNS, KC_TRNS, KC_TRNS, M(UC_GREEK_CAPITAL_LETTER_PSI), + /*-*/ /*-*/ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), +/* + * .------------------------------------.------------------------------------. + * | | | | | | | | | | | | | | | + * !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + * | | | | | | | | | | | | | | | + * !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + * | | | | | | |-----!-----! | | | | | | + * !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + * | | | | | | | | | | | | | | | + * '-----+----+----+----+----+----------'----------+----+----+----+----+-----' + * | | | | | | ! | | | | | + * '------------------------' '------------------------' + * .-----------. .-----------. + * | | | ! | | + * .-----+-----+-----! !-----+-----+-----. + * ! ! | | ! | ! ! + * ! ! !-----! !-----! ! ! + * | | | | ! | | | + * '-----------------' '-----------------' + */ +[L6] = KEYMAP( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ KC_TRNS, KC_TRNS, + /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ KC_TRNS, + /*-*/ /*-*/ /*-*/ /*-*/ KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + /*-*/ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + /*-*/ /*-*/ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), +}; + +const uint16_t PROGMEM fn_actions[] = {}; + +#define UC_MODE_WIN 0 +#define UC_MODE_LINUX 1 +#define UC_MODE_OSX 2 + +// TODO: allow default mode to be configured +static uint16_t unicode_mode = UC_MODE_WIN; + +uint16_t hextokeycode(uint8_t hex) { + if (hex == 0x0) { + return KC_P0; + } + if (hex < 0xA) { + return KC_P1 + (hex - 0x1); + } + return KC_A + (hex - 0xA); +} + +void unicode_action_function(uint16_t hi, uint16_t lo) { + switch (unicode_mode) { + case UC_MODE_WIN: + register_code(KC_LALT); + + register_code(KC_PPLS); + unregister_code(KC_PPLS); + + register_code(hextokeycode((hi & 0xF0) >> 4)); + unregister_code(hextokeycode((hi & 0xF0) >> 4)); + register_code(hextokeycode((hi & 0x0F))); + unregister_code(hextokeycode((hi & 0x0F))); + register_code(hextokeycode((lo & 0xF0) >> 4)); + unregister_code(hextokeycode((lo & 0xF0) >> 4)); + register_code(hextokeycode((lo & 0x0F))); + unregister_code(hextokeycode((lo & 0x0F))); + + unregister_code(KC_LALT); + break; + case UC_MODE_LINUX: + register_code(KC_LCTL); + register_code(KC_LSFT); + + register_code(KC_U); + unregister_code(KC_U); + + register_code(hextokeycode((hi & 0xF0) >> 4)); + unregister_code(hextokeycode((hi & 0xF0) >> 4)); + register_code(hextokeycode((hi & 0x0F))); + unregister_code(hextokeycode((hi & 0x0F))); + register_code(hextokeycode((lo & 0xF0) >> 4)); + unregister_code(hextokeycode((lo & 0xF0) >> 4)); + register_code(hextokeycode((lo & 0x0F))); + unregister_code(hextokeycode((lo & 0x0F))); + + unregister_code(KC_LCTL); + unregister_code(KC_LSFT); + break; + case UC_MODE_OSX: + break; + } +} + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) { + if (!record->event.pressed) { + return MACRO_NONE; + } + // MACRODOWN only works in this function + switch(id) { + case UM: + unicode_mode = (unicode_mode + 1) % 2; + break; + +case UC_GREEK_SMALL_LETTER_OMICRON: + unicode_action_function(0x03, 0xbf); + break; +case UC_LEFTWARDS_ARROW: + unicode_action_function(0x21, 0x90); + break; +case UC_GREEK_CAPITAL_LETTER_RHO: + unicode_action_function(0x03, 0xa1); + break; +case UC_SUBSCRIPT_THREE: + unicode_action_function(0x20, 0x83); + break; +case UC_VULGAR_FRACTION_ONE_EIGHTH: + unicode_action_function(0x21, 0x5b); + break; +case UC_GREEK_SMALL_LETTER_LAMDA: + unicode_action_function(0x03, 0xbb); + break; +case UC_VULGAR_FRACTION_ONE_THIRD: + unicode_action_function(0x21, 0x53); + break; +case UC_GREEK_SMALL_LETTER_XI: + unicode_action_function(0x03, 0xbe); + break; +case UC_THERE_DOES_NOT_EXIST: + unicode_action_function(0x22, 0x04); + break; +case UC_SUPERSCRIPT_ONE: + unicode_action_function(0x00, 0xb9); + break; +case UC_GREEK_SMALL_LETTER_BETA: + unicode_action_function(0x03, 0xb2); + break; +case UC_SUBSCRIPT_FIVE: + unicode_action_function(0x20, 0x85); + break; +case UC_GREEK_CAPITAL_LETTER_IOTA: + unicode_action_function(0x03, 0x99); + break; +case UC_VULGAR_FRACTION_ONE_FIFTH: + unicode_action_function(0x21, 0x55); + break; +case UC_GREEK_SMALL_LETTER_PSI: + unicode_action_function(0x03, 0xc8); + break; +case UC_SUBSCRIPT_NINE: + unicode_action_function(0x20, 0x89); + break; +case UC_SUPERSCRIPT_FOUR: + unicode_action_function(0x20, 0x74); + break; +case UC_RIGHTWARDS_ARROW: + unicode_action_function(0x21, 0x92); + break; +case UC_SUPERSCRIPT_SIX: + unicode_action_function(0x20, 0x76); + break; +case UC_DOWNWARDS_ARROW: + unicode_action_function(0x21, 0x93); + break; +case UC_GREEK_SMALL_LETTER_PI: + unicode_action_function(0x03, 0xc0); + break; +case UC_SUPERSCRIPT_TWO: + unicode_action_function(0x00, 0xb2); + break; +case UC_GREEK_CAPITAL_LETTER_OMEGA: + unicode_action_function(0x03, 0xa9); + break; +case UC_GREEK_CAPITAL_LETTER_PSI: + unicode_action_function(0x03, 0xa8); + break; +case UC_SUBSCRIPT_FOUR: + unicode_action_function(0x20, 0x84); + break; +case UC_GREEK_CAPITAL_LETTER_NU: + unicode_action_function(0x03, 0x9d); + break; +case UC_DIVISION_SIGN: + unicode_action_function(0x00, 0xf7); + break; +case UC_GREEK_SMALL_LETTER_SIGMA: + unicode_action_function(0x03, 0xc3); + break; +case UC_GREEK_SMALL_LETTER_RHO: + unicode_action_function(0x03, 0xc1); + break; +case UC_VULGAR_FRACTION_ONE_SIXTH: + unicode_action_function(0x21, 0x59); + break; +case UC_GREEK_SMALL_LETTER_GAMMA: + unicode_action_function(0x03, 0xb3); + break; +case UC_VULGAR_FRACTION_TWO_THIRDS: + unicode_action_function(0x21, 0x54); + break; +case UC_GREEK_SMALL_LETTER_NU: + unicode_action_function(0x03, 0xbd); + break; +case UC_GREEK_SMALL_LETTER_ZETA: + unicode_action_function(0x03, 0xb6); + break; +case UC_GREEK_SMALL_LETTER_EPSILON: + unicode_action_function(0x03, 0xb5); + break; +case UC_GREEK_SMALL_LETTER_KAPPA: + unicode_action_function(0x03, 0xba); + break; +case UC_SUPERSCRIPT_SEVEN: + unicode_action_function(0x20, 0x77); + break; +case UC_GREEK_CAPITAL_LETTER_PI: + unicode_action_function(0x03, 0xa0); + break; +case UC_GREEK_SMALL_LETTER_FINAL_SIGMA: + unicode_action_function(0x03, 0xc2); + break; +case UC_GREEK_CAPITAL_LETTER_XI: + unicode_action_function(0x03, 0x9e); + break; +case UC_GREEK_SMALL_LETTER_THETA: + unicode_action_function(0x03, 0xb8); + break; +case UC_GREEK_SMALL_LETTER_ETA: + unicode_action_function(0x03, 0xb7); + break; +case UC_SUBSCRIPT_TWO: + unicode_action_function(0x20, 0x82); + break; +case UC_ASYMPTOTICALLY_EQUAL_TO: + unicode_action_function(0x22, 0x43); + break; +case UC_GREEK_SMALL_LETTER_ALPHA: + unicode_action_function(0x03, 0xb1); + break; +case UC_GREEK_CAPITAL_LETTER_PHI: + unicode_action_function(0x03, 0xa6); + break; +case UC_GREEK_SMALL_LETTER_PHI: + unicode_action_function(0x03, 0xc6); + break; +case UC_INFINITY: + unicode_action_function(0x22, 0x1e); + break; +case UC_GREEK_CAPITAL_LETTER_OMICRON: + unicode_action_function(0x03, 0x9f); + break; +case UC_ELEMENT_OF: + unicode_action_function(0x22, 0x08); + break; +case UC_MULTIPLICATION_SIGN: + unicode_action_function(0x00, 0xd7); + break; +case UC_SUBSCRIPT_ZERO: + unicode_action_function(0x20, 0x80); + break; +case UC_GREEK_CAPITAL_LETTER_SIGMA: + unicode_action_function(0x03, 0xa3); + break; +case UC_GREEK_SMALL_LETTER_OMEGA: + unicode_action_function(0x03, 0xc9); + break; +case UC_SUBSCRIPT_ONE: + unicode_action_function(0x20, 0x81); + break; +case UC_GREEK_CAPITAL_LETTER_ZETA: + unicode_action_function(0x03, 0x96); + break; +case UC_GREEK_SMALL_LETTER_TAU: + unicode_action_function(0x03, 0xc4); + break; +case UC_SUPERSCRIPT_FIVE: + unicode_action_function(0x20, 0x75); + break; +case UC_THERE_EXISTS: + unicode_action_function(0x22, 0x03); + break; +case UC_PLUS_MINUS_SIGN: + unicode_action_function(0x00, 0xb1); + break; +case UC_VULGAR_FRACTION_THREE_QUARTERS: + unicode_action_function(0x00, 0xbe); + break; +case UC_SUPERSCRIPT_THREE: + unicode_action_function(0x00, 0xb3); + break; +case UC_EMPTY_SET: + unicode_action_function(0x22, 0x05); + break; +case UC_UPWARDS_ARROW: + unicode_action_function(0x21, 0x91); + break; +case UC_SUPERSCRIPT_NINE: + unicode_action_function(0x20, 0x79); + break; +case UC_GREEK_SMALL_LETTER_DELTA: + unicode_action_function(0x03, 0xb4); + break; +case UC_GREEK_SMALL_LETTER_MU: + unicode_action_function(0x03, 0xbc); + break; +case UC_GREEK_CAPITAL_LETTER_KAPPA: + unicode_action_function(0x03, 0x9a); + break; +case UC_SUBSCRIPT_EIGHT: + unicode_action_function(0x20, 0x88); + break; +case UC_GREEK_CAPITAL_LETTER_ALPHA: + unicode_action_function(0x03, 0x91); + break; +case UC_SUBSCRIPT_SEVEN: + unicode_action_function(0x20, 0x87); + break; +case UC_GREEK_CAPITAL_LETTER_BETA: + unicode_action_function(0x03, 0x92); + break; +case UC_GREEK_CAPITAL_LETTER_ETA: + unicode_action_function(0x03, 0x97); + break; +case UC_SUPERSCRIPT_EIGHT: + unicode_action_function(0x20, 0x78); + break; +case UC_SUPERSCRIPT_ZERO: + unicode_action_function(0x20, 0x70); + break; +case UC_NOT_AN_ELEMENT_OF: + unicode_action_function(0x22, 0x09); + break; +case UC_GREEK_SMALL_LETTER_UPSILON: + unicode_action_function(0x03, 0xc5); + break; +case UC_NOT_EQUAL_TO: + unicode_action_function(0x22, 0x60); + break; +case UC_GREEK_CAPITAL_LETTER_CHI: + unicode_action_function(0x03, 0xa7); + break; +case UC_FOR_ALL: + unicode_action_function(0x22, 0x00); + break; +case UC_GREEK_CAPITAL_LETTER_TAU: + unicode_action_function(0x03, 0xa4); + break; +case UC_VULGAR_FRACTION_ONE_QUARTER: + unicode_action_function(0x00, 0xbc); + break; +case UC_GREEK_SMALL_LETTER_CHI: + unicode_action_function(0x03, 0xc7); + break; +case UC_GREEK_CAPITAL_LETTER_THETA: + unicode_action_function(0x03, 0x98); + break; +case UC_GREEK_SMALL_LETTER_IOTA: + unicode_action_function(0x03, 0xb9); + break; +case UC_GREEK_CAPITAL_LETTER_LAMDA: + unicode_action_function(0x03, 0x9b); + break; +case UC_SUPERSCRIPT_LATIN_SMALL_LETTER_N: + unicode_action_function(0x20, 0x7f); + break; +case UC_GREEK_CAPITAL_LETTER_UPSILON: + unicode_action_function(0x03, 0xa5); + break; +case UC_GREEK_CAPITAL_LETTER_MU: + unicode_action_function(0x03, 0x9c); + break; +case UC_GREEK_CAPITAL_LETTER_EPSILON: + unicode_action_function(0x03, 0x95); + break; +case UC_GREEK_CAPITAL_LETTER_GAMMA: + unicode_action_function(0x03, 0x93); + break; +case UC_SUBSCRIPT_SIX: + unicode_action_function(0x20, 0x86); + break; +case UC_GREEK_CAPITAL_LETTER_DELTA: + unicode_action_function(0x03, 0x94); + break; +case UC_VULGAR_FRACTION_ONE_HALF: + unicode_action_function(0x00, 0xbd); + break; + default: + break; + } + return MACRO_NONE; +}; + +// Runs just one time when the keyboard initializes. +void matrix_init_user(void) { + +}; + +// Runs constantly in the background, in a loop. +void matrix_scan_user(void) { + uint8_t layer = biton32(layer_state); + + ergodox_board_led_off(); + ergodox_right_led_1_off(); + ergodox_right_led_2_off(); + ergodox_right_led_3_off(); + switch (layer) { + case L1: + ergodox_right_led_1_on(); + break; + case L2: + ergodox_right_led_2_on(); + break; + case L3: + ergodox_right_led_3_on(); + break; + case L4: + ergodox_right_led_1_on(); + ergodox_right_led_2_on(); + break; + case L5: + ergodox_right_led_1_on(); + ergodox_right_led_3_on(); + break; + // case L6: + // ergodox_right_led_2_on(); + // ergodox_right_led_3_on(); + // break; + // case L7: + // ergodox_right_led_1_on(); + // ergodox_right_led_2_on(); + // ergodox_right_led_3_on(); + // break; + default: + ergodox_board_led_off(); + break; + } +}; diff --git a/keyboards/ergodox_ez/keymaps/german-manuneo/keymap.md b/keyboards/ergodox_ez/keymaps/german-manuneo/keymap.md new file mode 100644 index 0000000000..2c9e0a8376 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/german-manuneo/keymap.md @@ -0,0 +1,188 @@ +# ManuNeo Ergodox Keyboard Layout + +Compile this file to a `keymap.c` file using `compile_keymap.py` + + python compile_keymap.py keymaps/german-manuneo/keymap.md + +Tested with python 2.7 and python 3.4 + + +# Layout Config + + { + "layout": "ergodox_ez", + "keymaps_includes": [ + "ergodox_ez.h", + "action_layer.h", + "keymap_common.h", + "keymap_extras/keymap_german.h", + ], + "key_prefixes": ["DE_", "KC_"], + "macros": { + // TODO: implement macros + // "MUC": "", + }, + // TODO: implement default unicode mode + } + + +# Layers + + +## Layer 0 + + .------------------------------------.------------------------------------. + |MO(5)| 1 | 2 | 3 | 4 | 5 |ACUT | GRV | 6 | 7 | 8 | 9 | 0 |CIRC | + !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + |MO(4)| X | P | F | W | G |HOME |TG(2)| H | J | K | L | Q | Z | + !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + |MO(1)| U | I | A | E | O |-----!-----! S | N | R | T | D | SS | + !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + |MO(3)| UE | OE | AE | C | V |END | TAB | B | M |COMM| DOT| UP | Y | + '-----+----+----+----+----+----------'----------+----+----+----+----+-----' + | | |LGUI|LALT|LCTL| !RCTL|RALT|LEFT|DOWN|RGHT| + '------------------------' '------------------------' + .-----------. .-----------. + |INS |TG(2)| !M(UM)|DELT | + .-----+-----+-----! !-----+-----+-----. + ! ! | APP | ! PGUP| ! ! + ! ! !-----! !-----! ! ! + |BSPC |LSFT | ESC | ! PGDN|ENTER|SPACE| + '-----------------' '-----------------' + + +## Layer 1 + + .------------------------------------.------------------------------------. + | |EXLM|DQOT|PARA| | | | | | | | |RING| | + !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + | |ASTR|PIPE|SLSH|LCBR|RCBR| | |HASH|LESS|MORE| |DQOT| | + !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + | |UNDS|MINS|AMPR|LBRC|RBRC|-----!-----!DLR |LPRN|RPRN|TILD|QUOT| QST | + !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + | | |PLUS|EQL | | | | |BSLS|PERC|SCLN|COLN| ↑ | | + '-----+----+----+----+----+----------'----------+----+----+----+----+-----' + | | | | | | ! | | ← | ↓ | → | + '------------------------' '------------------------' + .-----------. .-----------. + | | | ! | | + .-----+-----+-----! !-----+-----+-----. + ! ! | | ! | ! ! + ! ! !-----! !-----! ! ! + | | | | ! | | | + '-----------------' '-----------------' + + +## Layer 2 + + .------------------------------------.------------------------------------. + | | F1 | F2 | F3 | F4 | F5 | F11 | F12 | F6 | F7 | F8 | F9 |F10 |PEQL | + !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + | | | | | | | | | | P7 | P8 | P9 |PAST|PSLS | + !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + | | | | | | |-----!-----! | P4 | P5 | P6 |PMNS|PMNS | + !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + | | | | | | | | NLCK| | P1 | P2 | P3 |PPLS|PPLS | + '-----+----+----+----+----+----------'----------+----+----+----+----+-----' + | | | | | | ! P0 |PCMM|PDOT|PENT|PENT| + '------------------------' '------------------------' + .-----------. .-----------. + | | | ! | | + .-----+-----+-----! !-----+-----+-----. + ! ! | | ! | ! ! + ! ! !-----! !-----! ! ! + | | | | ! | | | + '-----------------' '-----------------' + + + +## Layer 3 + +http://symbolcodes.tlt.psu.edu/bylanguage/mathchart.html + + .------------------------------------.------------------------------------. + | | ¹ | ² | ³ | ⁴ | ⁵ | ∀ | | ⁶ | ⁷ | ⁸ | ⁹ | ⁰ | | + !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + | | × | ½ | ÷ | ¼ | ⅕ | | | ⅙ | | ⅛ | | | | + !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + | | | ± | AT |EURO| ∅ |-----!-----! ∞ | ⁿ | ∃ | ∈ | | | + !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + | | ⅓ | ≠ | ⅔ | ¾ | ≃ | | |EXLM| | ∄ | ∉ | | | + '-----+----+----+----+----+----------'----------+----+----+----+----+-----' + | | | | | | ! | | | | | + '------------------------' '------------------------' + .-----------. .-----------. + | | | ! | | + .-----+-----+-----! !-----+-----+-----. + ! ! | | ! | ! ! + ! ! !-----! !-----! ! ! + | | | | ! | | | + '-----------------' '-----------------' + + +## Layer 4 + + + .------------------------------------.------------------------------------. + | | ₁ | ₂ | ₃ | ₄ | ₅ | | | ₆ | ₇ | ₈ | ₉ | ₀ | | + !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + | | χ | π | φ | ω | γ | | | η | ξ | κ | λ | | ζ | + !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + | | υ | ι | α | ε | ο |-----!-----! σ | ν | ρ | τ | δ | ς | + !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + | | | θ | | | | | | β | μ | | | | ψ | + '-----+----+----+----+----+----------'----------+----+----+----+----+-----' + | | | | | | ! | | | | | + '------------------------' '------------------------' + .-----------. .-----------. + | | | ! | | + .-----+-----+-----! !-----+-----+-----. + ! ! | | ! | ! ! + ! ! !-----! !-----! ! ! + | | | | ! | | | + '-----------------' '-----------------' + + +## Layer 5 + + .------------------------------------.------------------------------------. + | | | | | | | | | | | | | | | + !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + | | Χ | Π | Φ | Ω | Γ | | | Η | Ξ | Κ | Λ | | Ζ | + !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + | | Υ | Ι | Α | Ε | Ο |-----!-----! Σ | Ν | Ρ | Τ | Δ | | + !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + | | | Θ | | | | | | Β | Μ | | | | Ψ | + '-----+----+----+----+----+----------'----------+----+----+----+----+-----' + | | | | | | ! | | | | | + '------------------------' '------------------------' + .-----------. .-----------. + | | | ! | | + .-----+-----+-----! !-----+-----+-----. + ! ! | | ! | ! ! + ! ! !-----! !-----! ! ! + | | | | ! | | | + '-----------------' '-----------------' + + +## Layer 6 + + .------------------------------------.------------------------------------. + | | | | | | | | | | | | | | | + !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + | | | | | | | | | | | | | | | + !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + | | | | | | |-----!-----! | | | | | | + !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + | | | | | | | | | | | | | | | + '-----+----+----+----+----+----------'----------+----+----+----+----+-----' + | | | | | | ! | | | | | + '------------------------' '------------------------' + .-----------. .-----------. + | | | ! | | + .-----+-----+-----! !-----+-----+-----. + ! ! | | ! | ! ! + ! ! !-----! !-----! ! ! + | | | | ! | | | + '-----------------' '-----------------' + diff --git a/keyboards/ergodox_ez/keymaps/german/compiled.hex b/keyboards/ergodox_ez/keymaps/german/compiled.hex new file mode 100644 index 0000000000..3979ad8c93 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/german/compiled.hex @@ -0,0 +1,1158 @@ +:100000000C947A020C94BE020C94BE020C94BE02B4 +:100010000C94BE020C94BE020C94BE020C94BE0260 +:100020000C94BE020C94BE020C94640D0C94360E1B +:100030000C94BE020C94BE020C94BE020C94BE0240 +:100040000C94BE020C9440220C94BE020C94BE028E +:100050000C94BE020C94D31B0C94BE020C94BE02F2 +:100060000C94BE020C94BE020C94BE020C94BE0210 +:100070000C94BE020C94BE020C94BE020C94BE0200 +:100080000C94BE020C94BE020C94BE020C94BE02F0 +:100090000C94BE020C94BE020C94BE020C94BE02E0 +:1000A0000C94BE020C94BE020C94BE02A30EC50EAC +:1000B000B30FC50EB30F0A0F2D0FB30F820F950F9D +:1000C0006412641293129312C912E9121A141A14C8 +:1000D000F4121A14A413A4130B141A141A141414DB +:1000E000B113B113B113B113B113B113B113B113F0 +:1000F000B113B113B113B113B113B113B113B113E0 +:10010000C313D013D713DE13E8130000F0A12302AA +:100110004C003900E100644100001E00140004009E +:100120001D0031714D001F001A0016001B002E002B +:100130002A00200008000700060038002C002100DB +:1001400015000900190030004A00220017000A00BB +:10015000050000006574AE0001540000007F00003F +:10016000E300AB000254000000770000E20023002F +:100170001C000B00110000002971240018000D0064 +:10018000100050004B0025000C000E0036005100FE +:100190002800260012000F00370052002B00270015 +:1001A0001300330038714F004E002D002F003442F1 +:1001B000E500C10000000100010001000100010094 +:1001C00000003A001E0231002202010001003B0043 +:1001D000141421023500010001003C002414250202 +:1001E0002514010001003D002714260226140100F9 +:1001F00001003E0064142E023014000001000100D2 +:1002000001000000010000000100010001000000E9 +:100210000100000001003F005200510023020000D5 +:1002200001004000240021001E00010001004100E7 +:10023000250022001F003700010042002600230095 +:100240002000270001004300300230002D14270257 +:100250000100440045000100010001000000010010 +:10026000010001000100010000003A000100F70058 +:10027000FB00010001003B00F400F200FA00FD0069 +:10028000F5003C00F000F100F900FE00F4003D0034 +:10029000F500F300FC00FF0001003E000100F80043 +:1002A000F600000001000100010000000100000054 +:1002B00001000100010000000100000001003F00FA +:1002C00001000100B400000001004000AA00AC00E1 +:1002D000B600010001004100A800AD00B50001001A +:1002E000B7004200A900AE00B9000100B60043000B +:1002F0000100AB00B700010001004400450001000F +:1003000001000100000016034500720067006F0045 +:1003100044006F007800200045005A0000001603DA +:100320004500720067006F0044006F0078002000F5 +:1003300045005A0000000403090409026D0004018D +:1003400000A0FA09040000010301010009211101C4 +:100350000001223F000705810308000A090401008B +:100360000103010200092111010001224D000705CE +:10037000820308000A0904020001030000000921A9 +:10038000110100012236000705830308000A090451 +:1003900003000103000000092111010001223900BE +:1003A000070584031000011201100100000008ED90 +:1003B000FE071301000102000105010906A1010564 +:1003C0000719E029E7150025019508750181020547 +:1003D000081901290595057501910295017503918B +:1003E0000105071900297715002501957875018108 +:1003F00002C005010980A101850216010026B7008F +:100400001A01002AB700751095018100C0050C097A +:1004100001A1018503160100269C021A01002A9CF5 +:1004200002751095018100C005010902A1010901B1 +:10043000A10005091901290515002501950575017A +:10044000810295017503810105010930093115818A +:10045000257F95027508810609381581257F95014C +:1004600075088106050C0A38021581257F950175EE +:10047000088106C0C005010906A101050719E02988 +:10048000E715002501950875018102950175088120 +:100490000105081901290595057501910295017558 +:1004A0000391010507190029FF150025FF95067521 +:1004B000088100C0000000000000000000000001F2 +:1004C0000204060A0F17202C3A4A5D71879DB3C7B4 +:1004D000DAE9F5FCFFFCF5E9DAC7B39D87715D4AFF +:1004E0003A2C20170F0A0604020100000000000049 +:1004F0000000000011241FBECFEFDAE0DEBFCDBF49 +:1005000004B603FE24C08091FB019091FC01A091F0 +:10051000FD01B091FE018730904BA740B04BB9F47C +:100520001092FB011092FC011092FD011092FE014D +:1005300014BE84B7877F84BF88E10FB6F894809398 +:100540006000109260000FBEE0E0FFE3099511E04B +:10055000A0E0B1E0EEE0F8E402C005900D92A43313 +:10056000B107D9F711E0A4E3B1E001C01D92AB3FA0 +:10057000B107E1F70E94A80A0C9405240C9400002E +:100580001092B9008AE08093B800089594EA90939D +:10059000BC009091BC0097FFFCCF9091B900987F70 +:1005A000983021F0903111F081E008958093BB00E4 +:1005B00084E88093BC008091BC0087FFFCCF8091D1 +:1005C000B900887F883111F0803471F780E0089598 +:1005D00084E98093BC008091BC0084FDFCCF089529 +:1005E0008093BB0084E88093BC008091BC0087FFAF +:1005F000FCCF9091B900987F81E0983209F480E0B7 +:10060000089584E88093BC008091BC0087FFFCCFF4 +:100610008091BB00089580910101811115C080E493 +:100620000E94C6028093010181110CC082E10E94E8 +:10063000F00280930101811105C08FEF0E94F0024A +:10064000809301010E94E80284B1807F84B985B162 +:10065000807F85B98AB1837F8AB98BB1837F8BB95B +:100660003E98469808950E94C604809301010E9416 +:100670000B0380B38C7080BB81B3836F81BBA5E318 +:10068000B1E0E3E4F1E08EE08E0F11921D928E1343 +:10069000FCCF0C94B004BF92CF92DF92EF92FF9206 +:1006A0000F931F93CF93DF9380910101882379F0FB +:1006B000809134018F5F80933401811108C00E94C2 +:1006C000C60480930101811102C00E94580405E311 +:1006D00011E0C0E0D0E0DD24D39482E0C82EEE2407 +:1006E000E394F12CC730D10500F58091010181110F +:1006F00064C080E40E94C60280930101811112C08F +:1007000082E10E94F0028093010181110BC0C701B8 +:100710000C2E01C0880F0A94EAF780950E94F0021F +:10072000809301010E94E80248C0CA30A1F028F479 +:10073000C83059F0C93061F005C0CC3089F070F094 +:10074000CD3089F0209A289810C0219A29980DC0A0 +:10075000229A2A980AC0239A2B9807C0529A01C05D +:10076000539A5B9802C03E9A469890EA9A95F1F7A0 +:100770009FB1799902C082E001C080E091709D250F +:10078000982B7C9902C084E001C080E0892B7D9980 +:1007900002C038E001C030E0832B7E9902C020E126 +:1007A00001C020E0822B9FB19095991F9927991F36 +:1007B0009295990F907E892B0FC080910101811134 +:1007C00049C080E40E94C60280930101882379F128 +:1007D000B12C0E94E8028B2DF8019081981719F036 +:1007E0008083C09200010E940B0321960F5F1F4F70 +:1007F000CE30D10509F076CF80910001882361F1D8 +:10080000815080930001882339F08FE99FE00197A0 +:10081000F1F700C0000020C0A3E4B1E0E5E3F1E09F +:10082000CF01825F91919D938E13FCCF15C083E120 +:100830000E94F002809301018111CACF81E40E94DD +:10084000C602809301018111C3CF0E940103B82E1B +:10085000B094BFCF80E0C0CF0E94560481E0DF910A +:10086000CF911F910F91FF90EF90DF90CF90BF90AD +:100870000895E82FF0E0ED5BFE4F80810895089524 +:100880000F931F93CF93DF93C3E4D1E010E00C2FBD +:10089000025F899190E00E94F91A180F0C13F9CFAA +:1008A000812FDF91CF911F910F9108950C94260510 +:1008B00056985E9825982D9826982E9827982F98C8 +:1008C0008FEF90E0909389008093880090938B0045 +:1008D00080938A0090938D0080938C00259A2D9AA6 +:1008E0002FEF80E792E0215080409040E1F700C078 +:1008F0000000269A2E9A2FEF80E792E02150804048 +:100900009040E1F700C00000279A2F9A2FEF80E770 +:1009100092E0215080409040E1F700C0000025980F +:100920002D982FEF80E792E0215080409040E1F732 +:1009300000C0000026982E982FEF80E792E021500B +:1009400080409040E1F700C0000027982F9856980B +:100950005E9825982D9826982E9827982F98089578 +:1009600089EA8093800089E08093810024982C9804 +:100970003F988AB18F748AB96E98479A8BB1806B11 +:100980008BB9769A0E9458040C94250580E28093D6 +:1009900001018091510181110EC00E94C00281E0CD +:1009A000809351012FEF83ED90E3215080409040E0 +:1009B000E1F700C0000080E40E94C60280930101BC +:1009C00081112EC00E94F00280930101811128C084 +:1009D0000E94F00280930101811122C08FE30E94E6 +:1009E000F0028093010181111BC00E94E80280E4A3 +:1009F0000E94C60280930101811112C08CE00E9406 +:100A0000F0028093010181110BC00E94F0028093DB +:100A10000101811105C08FE30E94F0028093010162 +:100A20000E94E80280910101089561110BC0FC0150 +:100A30008281882321F085EE0E94081103C085EE93 +:100A40000E94D01180E090E0089508956091BD016A +:100A50007091BE018091BF019091C0010E94051B61 +:100A600056985E9825982D9826982E9827982F9816 +:100A7000813029F0823031F4269A2E9A0895259AF1 +:100A80002D9A089556985E98089581E0089581E022 +:100A900008950C94470508950F931F93CF93DF9308 +:100AA0008C01FC01C081D181CE010E947E19BE0162 +:100AB0000E94F505EC01B8010E944905882309F45C +:100AC0008DC0F8018281882309F44AC080915D01BC +:100AD00081111FC0C431F0E5DF0709F051C00E9449 +:100AE0004B0581E080935D010E949D1B90935C010A +:100AF00080935B011092540110925601109255019F +:100B0000109258011092570110925A0110925901F7 +:100B100065C080915B0190915C010E94A91B883C9B +:100B2000910570F480915401E82FF0E0EE0FFF1F63 +:100B3000EB5AFE4FD183C0838F5F809354014EC028 +:100B4000C43880E5D80721F0C538D04501F13AC056 +:100B5000F8018281882341F01092520182E01EC088 +:100B6000C438E0E5DE0759F580915201811106C0D5 +:100B700086E20E94081186E20E94D01182E01CC029 +:100B8000C438F0E5DF0741F3C538D045D9F4F801A2 +:100B90008281882331F01092530180E20E941F125B +:100BA0001DC080915301811106C087E20E94081187 +:100BB00087E20E94D01180E20E9426120FC0C53841 +:100BC000D04529F381E08093520180935301C801FD +:100BD000DF91CF911F910F910C94450580E0DF913B +:100BE000CF911F910F910895089596E0799FF0019C +:100BF000112494E5899FE00DF11D1124E60FF11DEC +:100C0000EE0FFF1FE25FFE4F859194910895880FCC +:100C1000991FFC01E657F040859194910895880F43 +:100C2000991FFC01E65FFE4F8591949108950F9303 +:100C30001F93CF93DF93EC01811520E3920750F5CA +:100C4000C11580E2D80708F0C3C0CB3BD10590F4B2 +:100C5000C83AD10508F06AC0C53AD10508F05BC0B2 +:100C6000C430D10508F0D0C1219709F0CAC101E014 +:100C700010E00AC2CF3FD10511F008F0C5C1C03F56 +:100C8000D10508F0A2C0CE01805E9109089708F452 +:100C9000BBC1B7C1C13090E5D90709F4A2C020F5A6 +:100CA000C0318FE4D80770F4C11590E4D90708F07B +:100CB00094C0C11521E3D20708F0A3C1DD278E013E +:100CC000106CE2C1C115D04509F09BC10E9485148A +:100CD0008FEF94E32CE0815090402040E1F700C07A +:100CE00000000E94F81BD0C1C11597E5D90758F440 +:100CF000C03121E5D20708F01CC1C43180E5D80716 +:100D000008F475C07EC1CE0190578115904108F05E +:100D100078C1DF7073C1C53AD10509F477C1C63A0D +:100D2000D10509F076C102E810E4AEC1C83AD10598 +:100D300009F472C1C93AD10509F471C1CA3AD105A1 +:100D400009F470C1CB3AD10509F46FC1CC3AD10591 +:100D500009F46EC1CD3AD10509F46DC1C03BD1058E +:100D600009F46CC1CE3AD10509F46BC1CF3AD10573 +:100D700009F46AC1C13BD10509F469C1C23BD1057F +:100D800009F468C1C33BD10509F467C1C43BD1056F +:100D900009F466C1C53BD10509F465C1C63BD1055F +:100DA00009F464C1C73BD10509F463C1C83BD1054F +:100DB00009F462C1C93BD10509F461C1CA3BD1053F +:100DC00009F460C100E014E45FC18E0110655CC1EC +:100DD000CE019F700E940F0658C1DF708E01106A0D +:100DE00053C18091DA0181608093DA014DC10E9484 +:100DF0009D1D811102C00E94831D0E94BA1D90E0BA +:100E00009093FB018093FA01C23080E5D80721F46A +:100E10008091FA01816086C0C43090E5D90721F441 +:100E20008091FA0182607EC0C63020E5D20721F4AD +:100E30008091FA01846076C0C83080E5D80719F443 +:100E40008091FA0127C0CA3090E5D90721F480913A +:100E5000FA01806167C0CC3020E5D20721F480918F +:100E6000FA0180625FC0CE3080E5D80721F480911E +:100E7000FA01806457C0C03190E5D90721F4809110 +:100E8000FA0180684FC0C23120E5D20729F4809171 +:100E9000FA018460886046C0C33080E5D80721F439 +:100EA0008091FA018E7F3EC0C53090E5D90721F4CC +:100EB0008091FA018D7F36C0C73020E5D20721F43A +:100EC0008091FA018B7F2EC0C93080E5D80719F4D4 +:100ED0008091FA0126C0CB3090E5D90721F48091AA +:100EE000FA018F7E1FC0CD3020E5D20721F480911A +:100EF000FA018F7D17C0CF3080E5D80721F48091AB +:100F0000FA018F7B0FC0C13190E5D90721F48091A0 +:100F1000FA018F7707C0C331D04531F48091FA01CF +:100F20008B7F877F8093FA018091FA010E94BE1D1A +:100F3000ABC08D2F99278F70992781309105D9F4F7 +:100F40009E012370332702C0880F991F2A95E2F76C +:100F50009C688E0144E0000F111F4A95E1F70027BD +:100F60001370802B912B53E0CC0FDD1F5A95E1F7C6 +:100F7000C076DD272FC08230910531F4DC2FCC27DD +:100F80008E01016F106A80C08330910569F4CE0133 +:100F90008370992701E010E002C0000F111F8A95AD +:100FA000E2F7C8019C680FC084309105B9F4CE0106 +:100FB0008370992701E010E002C0000F111F8A958D +:100FC000E2F7C8019A6823E0CC0FDD1F2A95E1F70C +:100FD000C07ED7708C010C2B1D2B56C0853091051F +:100FE00031F4DC2FCC278E01046F106A4DC00697B8 +:100FF00009F04AC0CF71DD27DC2FCC278E011062AB +:1010000043C000E010E040C08E013EC001E810E4A3 +:101010003BC003E810E438C002EE14E435C009EE2A +:1010200014E432C00AEE14E42FC005EB14E42CC023 +:1010300006EB14E429C007EB14E426C00CEC14E41E +:1010400023C00DEC14E420C003E815E41DC00AE839 +:1010500015E41AC002E915E417C004E915E414C048 +:1010600001E216E411C003E216E40EC004E216E445 +:101070000BC005E216E408C006E216E405C007E26C +:1010800016E402C00AE216E4C801DF91CF911F9175 +:101090000F91089596E0799FF001112494E5899FBE +:1010A000E00DF11D1124E60FF11DEE0FFF1FE25FB1 +:1010B000FE4F85919491803E9105E0F4803C91052E +:1010C00058F58133910509F46FC048F489329105D0 +:1010D00009F463C08A32910509F46DC072C0893386 +:1010E0009105E9F082389105D1F08533910509F435 +:1010F0004DC067C0833E910581F138F4803E910573 +:10110000B9F0823E9105D9F05CC0863E910561F14F +:10111000873E9105A1F155C00E94070608952091D0 +:10112000FA0120FD02C021FF4CC080EE90E049C0D2 +:101130008091FA0180FFF9CF89E390E042C080916D +:10114000FA0182FF0EC08091FA0184FF03C080E0A3 +:1011500090E037C083EE90E034C08091FA0182FFC6 +:10116000F2CF82EE90E02DC08091FA0183FF0BC098 +:101170008091FA0184FDEBCF87EE90E022C0809150 +:10118000FA0183FFF5CF86EE90E01BC08091FA0153 +:1011900085FF07C089E290E014C08091FA0185FFC5 +:1011A000F9CF85E390E00DC08091FA0186FF07C07A +:1011B0008AE290E006C08091FA0186FFF9CF81E3D0 +:1011C00090E00E941706089508950C94E408809119 +:1011D0006E010895CF93DF9300D01F92CDB7DEB795 +:1011E0009C018091F101843019F593E099833B8350 +:1011F0002A839093E9008FEF9091E800815095FD4C +:1012000006C095ED9A95F1F700008111F5CF809118 +:10121000E80085FF0DC040E050E063E070E0CE01E3 +:1012200001960E94540B8091E8008E778093E8002D +:101230000F900F900F90DF91CF910895CF93DF9390 +:1012400000D01F92CDB7DEB72091F101243021F5F7 +:1012500022E029839B838A8383E08093E9008FEFD8 +:101260009091E800815095FD06C095ED9A95F1F7B3 +:1012700000008111F5CF8091E80085FF0DC040E0AE +:1012800050E063E070E0CE0101960E94540B809123 +:10129000E8008E778093E8000F900F900F90DF9119 +:1012A000CF9108952091F1012430F1F422E02093B0 +:1012B000E9002FEF3091E800215035FD06C035EDF3 +:1012C0003A95F1F700002111F5CF2091E80025FFB4 +:1012D0000BC040E050E065E070E00E94540B80914C +:1012E000E8008E778093E8000895CF93DF93EC01B8 +:1012F0009091F101943009F046C080910C0188234F +:10130000D9F080910D018823B9F09093E9008FEF17 +:101310009091E800815095FD06C095E19A95F1F70E +:1013200000008111F5CF8091E80085FF2CC040E0DE +:1013300050E060E170E017C081E08093E9008FEF3A +:101340009091E800815095FD06C095ED9A95F1F7D2 +:1013500000008111F5CF8091E80085FF14C040E0C6 +:1013600050E068E070E0CE010E94540B8091E800EC +:101370008E778093E80080E1FE01AEE5B1E0019058 +:101380000D928A95E1F7DF91CF9108958091F00158 +:10139000811109C00E94E90C0E94460D8091E20073 +:1013A00084608093E20008951092F00108950895FA +:1013B0000C942D220E948E1B0E9433220E94EC0F5F +:1013C0000C94E50842E061EC81E00E94630C42E08D +:1013D00061EC82E00E94630C42E061EC83E00E94D9 +:1013E000630C42E161EC84E00C94630C8091F301A6 +:1013F000833009F455C030F4813071F0823009F443 +:101400008EC008958A3009F47AC08B3009F460C028 +:10141000893009F09CC020C08091F201813A09F026 +:1014200096C08091E800877F8093E8008091F60164 +:101430009091F701892B21F460E18EE591E003C0E2 +:1014400060E080E090E070E00E949F0B8091E800F7 +:101450008B778093E80008958091F201813209F042 +:1014600076C08091F6019091F701009719F00397EB +:1014700009F06DC08091E800877F8093E80080913B +:10148000E80082FD05C08091F1018111F8CF5FC0B5 +:101490008091F10080936E018091E8008B7753C0BA +:1014A0008091F201813A09F052C08091F601909149 +:1014B000F701892B09F04BC08091E800877F80936A +:1014C000E8008091E80080FFFCCF80910C0136C0DD +:1014D0008091F2018132D9F58091F6019091F70166 +:1014E000892BA9F58091E800877F8093E8000E940E +:1014F000980C8091F40180930C010C9485148091D8 +:10150000F201813221F58091E800877F8093E80025 +:101510000E94980C8091F50180936F01089580914D +:10152000F201813AA1F48091E800877F8093E8007E +:101530008091E80080FFFCCF80916F018093F100E3 +:101540008091E8008E778093E8000C94980C0895C1 +:1015500084B7877F84BF88E10FB6F89480936000DA +:10156000109260000FBE90E080E80FB6F894809370 +:101570006100909361000FBE0E943B100E94E90C35 +:101580000E94460D8091E20084608093E20078948E +:101590000E94CC0F0E943D1082E091E00E94E70F74 +:1015A0000E941B228091F101853069F40E94551B35 +:1015B0008091EF018823B1F30E94801B882391F36F +:1015C0000E943E0BEFCF0E944310ECCF292F332710 +:1015D00023303105C9F064F42130310581F0223027 +:1015E000310509F043C08DE690E02AE333E042C0C4 +:1015F00021323105F1F02232310541F137C082E16B +:1016000090E027EA33E036C099278130910541F018 +:101610008230910541F0892B49F5E6E3F3E005C0FE +:10162000EEE1F3E002C0E6E0F3E0849190E09F0198 +:1016300021C06430D8F4E62FF0E0EE0FFF1FEE5D1E +:10164000FE4F2081318189E090E014C0643070F455 +:1016500070E0FB01EE0FFF1FE65EFE4F208131813F +:10166000FB01EA5EFE4F808190E004C080E090E0E4 +:1016700020E030E0FA0131832083089580E189BDC4 +:1016800082E189BD09B400FEFDCF8091D8008F7D35 +:101690008093D8008091E00082608093E000809188 +:1016A000E00081FDFCCF0895CF92DF92EF92FF9290 +:1016B0000F931F93CF93DF93EC018B016A010E947C +:1016C000B70C811133C0C114D10439F0F601808107 +:1016D0009181081B190BC80FD91FE12CF12C0115A2 +:1016E000110519F18091E80085FD16C08091E80090 +:1016F0008E778093E800C114D10449F0F60180810F +:101700009181E80EF91EF182E08285E00FC00E940F +:10171000B70C882321F30AC089918093F10001500E +:101720001109FFEFEF1AFF0ADACF80E0DF91CF91C6 +:101730001F910F91FF90EF90DF90CF90089520912F +:10174000F8013091F9012617370748F06115710546 +:1017500039F42091E8002E772093E80001C0B90108 +:1017600040E061157105A9F12091F101222309F4EE +:1017700043C0253009F442C02091E80023FD40C059 +:101780002091E80022FD32C02091E80020FFE9CF3F +:101790004091F3002091F20030E0342BFC01CF01A6 +:1017A0006115710559F02830310540F4819180931D +:1017B000F100615071092F5F3F4FF1CF41E02830B8 +:1017C000310509F040E02091E8002E772093E800F1 +:1017D000C8CF4111C9CF0AC08091F101882361F0BF +:1017E000853061F08091E80083FD0AC08091E800B7 +:1017F00082FFF2CF80E0089582E0089583E00895AB +:1018000081E008952091F8013091F90126173707FA +:1018100048F06115710539F42091E8002E77209386 +:10182000E80001C0B901FC0120E06115710591F1EA +:101830008091F101882309F440C0853009F43FC04C +:101840008091E80083FD3DC08091E80082FD2FC0BB +:101850008091E80080FFE9CF2091F3008091F200B1 +:1018600090E0922B6115710559F08830910540F494 +:1018700024912093F1003196615071090196F2CFC5 +:1018800021E0089709F020E08091E8008E778093AE +:10189000E800CBCF2111CCCF0AC08091F101882381 +:1018A00061F0853061F08091E80083FD0AC080918D +:1018B000E80082FFF2CF80E0089582E0089583E09F +:1018C000089581E00895982F973058F59093E90096 +:1018D000981739F07091EC002091ED005091F000D4 +:1018E00003C0242F762F50E021FF19C03091EB0068 +:1018F0003E7F3093EB003091ED003D7F3093ED0063 +:101900003091EB0031603093EB007093EC0020934A +:10191000ED005093F0002091EE0027FF07C09F5F7D +:10192000D3CF8F708093E90081E0089580E008951F +:101930008091F20187FF11C08091E80082FD05C00F +:101940008091F1018111F8CF11C08091E8008B776F +:101950000BC08091F101882349F08091E80080FF5D +:10196000F8CF8091E8008E778093E8000895209169 +:10197000E4003091E50095E64091EC00842F817001 +:1019800040FF22C08091E80080FD1CC08091F101E1 +:10199000882391F0853091F08091EB0085FD10C097 +:1019A0004091E4005091E5004217530729F39A0152 +:1019B000915011F784E0089582E0089583E008953E +:1019C00081E0089580E008954091E80042FFDECF75 +:1019D00008950E94570D0E945F0DE0EEF0E08081B7 +:1019E00081608083E8EDF0E080818F77808319BC8F +:1019F000A7EDB0E08C918E7F8C9380818F7E808369 +:101A00001092F00108950F931F93CF93DF930E94DC +:101A1000570D0E945F0DC8EDD0E088818F778883D5 +:101A200088818068888388818F7D888319BC109223 +:101A3000F1011092ED011092EF011092EE0100EE13 +:101A400010E0F80180818B7F8083888181608883AA +:101A500042E060E080E00E94630CE1EEF0E0808113 +:101A60008E7F8083E2EEF0E08081816080838081E0 +:101A700088608083F80180818E7F80838881806187 +:101A80008883DF91CF911F910F910895E8EDF0E0E9 +:101A900080818F7E8083E7EDF0E0808181608083AC +:101AA00084E082BF81E08093F0010C94030DE8EDA7 +:101AB000F0E080818E7F80831092E2000895109282 +:101AC000DA001092E10008951F920F920FB60F9264 +:101AD00011242F933F934F935F936F937F938F9333 +:101AE0009F93AF93BF93EF93FF938091E10082FFA9 +:101AF0000BC08091E20082FF07C08091E1008B7FE4 +:101B00008093E1000E94CB0F8091DA0080FF1FC01C +:101B10008091D80080FF1BC08091DA008E7F809377 +:101B2000DA008091D90080FF0DC080E189BD82E19B +:101B300089BD09B400FEFDCF81E08093F1010E94D0 +:101B4000C60905C019BC1092F1010E94D409809108 +:101B5000E10080FF19C08091E20080FF15C08091F4 +:101B6000E2008E7F8093E2008091E20080618093AA +:101B7000E2008091D80080628093D80019BC85E093 +:101B80008093F1010E94D8098091E10084FF30C068 +:101B90008091E20084FF2CC080E189BD82E189BD93 +:101BA00009B400FEFDCF8091D8008F7D8093D800CE +:101BB0008091E1008F7E8093E1008091E2008F7E32 +:101BC0008093E2008091E20081608093E200809146 +:101BD000ED01882311F084E007C08091E30087FDC8 +:101BE00002C081E001C083E08093F1010E94DA0924 +:101BF0008091E10083FF29C08091E20083FF25C02E +:101C00008091E100877F8093E10082E08093F10181 +:101C10001092ED018091E1008E7F8093E100809130 +:101C2000E2008E7F8093E2008091E20080618093E9 +:101C3000E20042E060E080E00E94630C8091F000EE +:101C400088608093F0000E94D709FF91EF91BF91C7 +:101C5000AF919F918F917F916F915F914F913F9144 +:101C60002F910F900FBE0F901F9018951F920F92FB +:101C70000FB60F9211242F933F934F935F936F935F +:101C80007F938F939F93AF93BF93CF93DF93EF9304 +:101C9000FF93C091E900CF708091EC00D82FD170F4 +:101CA00080FDD0E81092E9008091F000877F80935A +:101CB000F00078940E947A0E1092E9008091F00072 +:101CC00088608093F000CD2BCF70C093E900FF9126 +:101CD000EF91DF91CF91BF91AF919F918F917F91C4 +:101CE0006F915F914F913F912F910F900FBE0F9089 +:101CF0001F9018951F93CF93DF93CDB7DEB7AA97A8 +:101D00000FB6F894DEBF0FBECDBFE2EFF1E088E082 +:101D10008E0F9091F10091938E13FBCF0E94F609E4 +:101D20008091E80083FF1FC18091F2019091F3013F +:101D3000492F50E04A30510508F015C1FA01EA5A1E +:101D4000FF4F0C94B523803881F0823809F00BC125 +:101D50008091F6018F708093E9008091EB0085FB04 +:101D6000882780F91092E90006C08091EE019091D9 +:101D7000EF01911182609091E800977F9093E800C5 +:101D80008093F1001092F100C8C0282F2D7F09F038 +:101D9000EAC0882319F0823061F0E5C08091F40137 +:101DA000813009F0E0C0933009F080E08093EF01CA +:101DB0002BC08091F401811127C08091F6018F70B2 +:101DC00009F4D1C08093E9002091EB0020FF1CC0F2 +:101DD000933021F48091EB00806214C09091EB006D +:101DE00090619093EB0021E030E0A90102C0440F24 +:101DF000551F8A95E2F74093EA001092EA0080911D +:101E0000EB0088608093EB001092E9008091E8007D +:101E1000877F86C08111A7C01091F4011F77809140 +:101E2000E3008078812B8093E3008091E800877F36 +:101E30008093E8000E94980C8091E80080FFFCCF1E +:101E40008091E30080688093E300111102C082E07A +:101E500001C083E08093F10186C08058823008F091 +:101E600082C08091F4019091F5018C3D53E095077B +:101E700079F583E08A838AE289834FB7F894DE019B +:101E8000139620E03EE051E2E32FF0E0509357003C +:101E9000E49120FF03C0E295EF703F5FEF708E2F5B +:101EA00090E0EA3010F0C79601C0C0968D939D93E4 +:101EB0002F5F243149F74FBF8091E800877F8093DF +:101EC000E8006AE270E0CE0101960E949F0B14C008 +:101ED000AE014F5F5F4F6091F6010E94E60ABC01C0 +:101EE000009709F440C09091E800977F9093E80034 +:101EF00089819A810E94020C8091E8008B778093FF +:101F0000E80031C0803879F58091E800877F8093C0 +:101F1000E8008091ED018093F1008091E8008E77D8 +:101F20008093E8000E94980C1EC081111CC0909103 +:101F3000F4019230C0F48091E800877F8093E8003C +:101F40009093ED010E94980C8091ED01811106C0E3 +:101F50008091E30087FD02C081E001C084E08093AE +:101F6000F1010E94E2098091E80083FF0AC080919C +:101F7000E800877F8093E8008091EB008062809387 +:101F8000EB00AA960FB6F894DEBF0FBECDBFDF916F +:101F9000CF911F9108950895CF938091F1018823E7 +:101FA000A1F0C091E900CF709091EC00892F817071 +:101FB00090FD80E8C82B1092E9008091E80083FD35 +:101FC0000E947A0ECF70C093E900CF91089590934C +:101FD0007501809374010895E0917401F091750189 +:101FE000309721F00190F081E02D099480E0089570 +:101FF000E0917401F0917501309721F00280F38136 +:10200000E02D09940895E0917401F09175013097E5 +:1020100021F00480F581E02D09940895209172014A +:10202000309173018217930771F09093730180933D +:102030007201E0917401F0917501309721F00680F2 +:10204000F781E02D0994089520917001309171017C +:102050008217930771F09093710180937001E09162 +:102060007401F0917501309721F00084F185E02D25 +:102070000994089508950C943A100E94941B0E94AC +:1020800033030C94561C9F92AF92BF92CF92DF9273 +:10209000EF92FF920F931F93CF93DF9300D000D066 +:1020A00000D0CDB7DEB70E944B030DE010E0AA24AC +:1020B000A394B12C902E802F0E94390498012958A6 +:1020C0003E4F6901F901F080F826A1F40150110991 +:1020D00088F78FEF89838A831B820E949D1B816012 +:1020E000782F9D838C8349815A816B818D810E94D9 +:1020F000DA102FC09091DA0191FF04C08E830E9404 +:102100003F048E8125E030E0A501022E01C0440F7E +:102110000A94EAF7E42E4F21C1F029839A828E2196 +:1021200091E009F490E09B830E949D1B8160782FD1 +:102130009D838C8349815A816B818D810E94DA1045 +:10214000F6018081E826E08204C021503109E0F6E2 +:10215000BDCF0E943D1F109176010E94EC0F181711 +:10216000B9F00E94EC0F8093760126960FB6F89492 +:10217000DEBF0FBECDBFDF91CF911F910F91FF90BA +:10218000EF90DF90CF90BF90AF909F900C94E508B8 +:1021900026960FB6F894DEBF0FBECDBFDF91CF916C +:1021A0001F910F91FF90EF90DF90CF90BF90AF9075 +:1021B0009F900895CF93DF93CDB7DEB72B970FB6DF +:1021C000F894DEBF0FBECDBF4F83588769877A87EB +:1021D0008B87DE01119686E0FD0111928A95E9F761 +:1021E00085E0FE01379601900D928A95E1F74981CD +:1021F0005A816B817C818D819E810E9423172B9651 +:102200000FB6F894DEBF0FBECDBFDF91CF9108951A +:10221000CF93882309F4C2C0C82F823859F40E9492 +:10222000EC0F81FDBBC089E30E94FD190E94CA1A10 +:1022300089E30CC0833879F40E94EC0F80FDAEC0B6 +:1022400083E50E94FD190E94CA1A83E50E943F1A85 +:10225000CF910C94CA1A843859F40E94EC0F82FD75 +:102260009DC087E40E94FD190E94CA1A87E4EECF40 +:102270008CEF8C0F813A48F48C2F0E9480218111C1 +:102280008DC08C2F0E94FD19E3CF80E28C0F883027 +:1022900048F4C77081E001C0880FCA95EAF70E9430 +:1022A000831AD6CF8BE58C0F833078F4C53A29F0AA +:1022B000C63A31F083E890E005C081E890E002C0C2 +:1022C00082E890E0CF910C940E1088E58C0F83315A +:1022D00008F064C0C83A39F1C93A41F1CA3A49F143 +:1022E000CB3A51F1CC3A59F1CD3A61F1C03B69F1A9 +:1022F000CE3A71F1CF3A79F1C13B81F1C23B89F11C +:10230000C33B91F1C43B99F1C53BA1F1C63BA9F197 +:10231000C73BB1F1C83BB9F1C93BC1F1CA3BC9F1F7 +:1023200080E090E038C082EE90E035C089EE90E029 +:1023300032C08AEE90E02FC085EB90E02CC086EB97 +:1023400090E029C087EB90E026C08CEC90E023C0A1 +:102350008DEC90E020C083E891E01DC08AE891E018 +:102360001AC082E991E017C084E991E014C081E2CB +:1023700092E011C083E292E00EC084E292E00BC0D2 +:1023800085E292E008C086E292E005C087E292E032 +:1023900002C08AE292E0CF910C942410CF9108956C +:1023A000882309F44BC0823859F40E94EC0F81FF56 +:1023B00045C089E30E94FD190E94CA1A89E30CC036 +:1023C000833871F40E94EC0F80FF38C083E50E94CF +:1023D000FD190E94CA1A83E50E943F1A0C94CA1A7A +:1023E000843859F40E94EC0F82FF28C087E40E94D1 +:1023F000FD190E94CA1A87E4EFCF9CEF980F913A1B +:1024000058F390E2980F983050F4877091E001C033 +:10241000990F8A95EAF7892F0E94891ADFCF9BE5E9 +:10242000980F933020F480E090E00C940E10885ABE +:10243000833120F480E090E00C94241008958823E8 +:1024400021F00E94831A0C94CA1A0895882321F05F +:102450000E94891A0C94CA1A08957F928F929F92B3 +:10246000AF92BF92CF92DF92EF92FF920F931F93A2 +:10247000CF93DF931F92CDB7DEB77C01C62E772EA8 +:10248000FC01058102950F70128111110E94A01AA2 +:102490000E94F619882379F0112369F080E28C0DEF +:1024A000883048F082E00E94DF190E94F61991E01E +:1024B000D82ED92601C0D12CE72DE295EF70F0E09F +:1024C000E05AFF4F0C94B523872D807F072D0F70A6 +:1024D000882311F00295007F112389F0002309F46D +:1024E00090C180E28C0D883020F4802F0E94831AE6 +:1024F00003C0802F0E94931A0E94CA1A82C18C2D99 +:102500000E94D011002309F495C180E28C0D88301F +:1025100020F4802F0E94891A03C0802F0E94991AEC +:102520000E94CA1A87C1972D907F872D8F70903295 +:1025300011F08295807FCC2021F0F1E0CF16B1F030 +:102540001EC0112349F0002309F414C1013009F021 +:1025500011C10E94B31A6EC1002319F0013009F4B1 +:1025600069C189830E94B61A89810AC1112321F0A9 +:10257000023008F05FC1FEC001115CC101C111232E +:1025800021F0002309F4F6C03CC1002309F4F8C08F +:102590003EC1872D86958695837090E0009719F04F +:1025A000019761F047C1112321F08C2D972D937075 +:1025B00002C080E090E00E940E103CC1112321F087 +:1025C0008C2D972D937002C080E090E00E94241023 +:1025D00031C18C2D112319F00E94451E02C00E94AA +:1025E000AD1E0E94321F26C1872D837009F052C094 +:1025F000111120C18C2D829586958770880F880FC8 +:102600009C2D9F70892E912CA12CB12C082E04C0DA +:10261000880C991CAA1CBB1C0A94D2F7C4FE14C0D7 +:102620000FE010E020E030E0B901A80104C0440F41 +:10263000551F661F771F8A95D2F7CB01BA016095A7 +:1026400070958095909503C060E070E0CB01272DD8 +:1026500026952695237030E02230310569F023302D +:10266000310589F0682979298A299B29213031058A +:1026700071F00E946B18DEC0682979298A299B298C +:102680000E948718D7C00E946B18C501B4010E9430 +:102690004F18D0C0112319F0872D817001C0869585 +:1026A000882309F4C7C08C2D829586958770880F82 +:1026B000880F9C2D9F70892E912CA12CB12C082E57 +:1026C00004C0880C991CAA1CBB1C0A94D2F7C4FE37 +:1026D00014C00FE010E020E030E0B901A80104C010 +:1026E000440F551F661F771F8A95D2F7CB01BA0199 +:1026F000609570958095909503C060E070E0CB0187 +:10270000272D269526952370422F50E04230510503 +:1027100069F04330510589F0682979298A299B2974 +:102720004130510571F00E94451984C0682979290A +:102730008A299B290E9461197DC00E944519C50103 +:10274000B4010E94291976C08C2D90E0FC01E05E56 +:10275000F109E531F10508F050C0E059FF4F0C9444 +:10276000B5230C2D0F70872D8F71112331F00E942E +:10277000C218802F0E941F125DC00E94E318802F94 +:102780000E94261257C0112339F0011153C0872D22 +:102790008F710E9408194EC0023008F04BC0F7CF6D +:1027A000112339F0872D8F710E94C21843C0112365 +:1027B000C9F3872D8F710E94E3183CC0112329F0C3 +:1027C000872D8F710E94AD1835C00E94A31832C0AA +:1027D000112351F0172D1F71812F0E94C21863E041 +:1027E000812F0E94D61926C081E00E94DF19023095 +:1027F00008F182E00E94DF191DC0112331F000238F +:1028000089F28C2D0E94081115C0002391F28C2DA5 +:102810000E94D0110FC0472D4F706C2DC7010E9430 +:1028200015050E94C71706C0472D4F706C2DC701B4 +:102830000E94F405DD20F9F00E94D21980FD1BC032 +:10284000F70112820E94CC190E94C218C7010E948F +:102850004A140E94CC190F90DF91CF911F910F91D4 +:10286000FF90EF90DF90CF90BF90AF909F908F90B0 +:102870007F900C94E3180F90DF91CF911F910F91EF +:10288000FF90EF90DF90CF90BF90AF909F908F9090 +:102890007F9008950F931F93CF93DF93EC0188816E +:1028A00099812B813C81232BB9F09F3F11F48F3FFD +:1028B00099F0CE010E944C05882371F068817981DE +:1028C0008A810E94C8198C010E947D190E944418B7 +:1028D000B801CE010E942D12DF91CF911F910F916F +:1028E00008950E94A01A0E94B01A0E94751A0E94B0 +:1028F000CA1A0E94E31F0E94321F80E090E00E94EB +:102900000E1080E090E00C9424100E94901A0C9419 +:1029100071140E94BD19292F22952F7030E02C30A0 +:1029200031054CF42A3031056CF422503109223043 +:102930003105A8F407C02C30310569F02F3031057E +:1029400051F00DC0803F69F018F4803E40F409C09A +:10295000843F29F406C093FB882780F9089580E01E +:10296000089581E00895CF93DF9300D000D01F92A7 +:10297000CDB7DEB70F900F900F900F900F90DF91B3 +:10298000CF910895CF93DF9300D000D000D0CDB782 +:10299000DEB726960FB6F894DEBF0FBECDBFDF912F +:1029A000CF9108951F93CF93DF93C091850116E0D7 +:1029B00080918601C81799F0D0E01C9FF0011D9FFF +:1029C000F00D1124E957FE4F4081518162817381DE +:1029D000848195810E94C2142196C770E9CFDF914E +:1029E000CF911F9108954091B7015091B801609126 +:1029F000B9017091BA018091BB019091BC010C9416 +:102A0000C2148091BC0182958F7009F054C08091EE +:102A1000B901882309F44FC080918501A0918601F6 +:102A20006091B7017091B8014091BA015091BB011A +:102A3000B6E08A1709F43FC090E041155105C1F195 +:102A40007F3F11F46F3FA1F1B89FF001B99FF00DE6 +:102A50001124E957FE4F218172132AC0208162138D +:102A600027C02281211124C02381348124173507F6 +:102A700010F421503109241B350B283C3105C0F4DA +:102A80002091BC012F7020612093BC0126E0289F7B +:102A9000F001299FF00D1124E457FE4F80818F70C3 +:102AA0008061808387EB91E00E944A140C94D214D9 +:102AB00001968770BECF0895CF92DF92EF92FF927A +:102AC0000F931F93CF93DF93CDB7DEB762970FB607 +:102AD000F894DEBF0FBECDBF8C0185E0F801DE01AA +:102AE0001D9601900D928A95E1F7D8014C911196AF +:102AF0005C91119712966C9112971396CD90DC9081 +:102B000014973091B7017091B8018091BA019091FA +:102B1000BB01009709F46BC17F3F19F43F3F09F4F3 +:102B200066C1E090B901EE2009F4C0C02091BC015B +:102B3000C816D90628F0F601E81BF90BCF0104C02E +:102B4000809590958C0D9D1DFF24F394883C9105F4 +:102B500078F0F12C207F09F0C6C07C2DD98AC88A74 +:102B600089890E94B31487EB91E00E944A14B1C096 +:102B7000822F807F09F046C0751314C0341312C031 +:102B8000611110C02F7020612093BC010E94F314CA +:102B900087EB91E00E944A148091BC01D801159600 +:102BA0008C932EC0CD2819F15F3F11F44F3FF9F0FF +:102BB000F62E61111CC0809185012091860136E0BE +:102BC000821709F45AC090E0389FF001399FF00D48 +:102BD0001124E957FE4F7181571306C070814713C6 +:102BE00003C07281711103C001968770E9CFF62E80 +:102BF000662309F418C18091BC0181608093BC01F7 +:102C0000F12C11C1751308C0341306C0611104C042 +:102C10008091BC01D801C3C04D875E878D859E859C +:102C20006A8B0E9489146A898823E1F16623D1F1B5 +:102C30002091BC01822F82958F7090E0029774F0F2 +:102C40008091B7019091B80198878F831986DB86B0 +:102C5000CA862C87CE0107960E944A1486E0F801A6 +:102C6000A7EBB1E001900D928A95E1F70E94011562 +:102C70000E94F314FF24F394D6C04D875E878D85A0 +:102C80009E850E94BD19292F22952F7030E0223099 +:102C900031050CF0BCC09F7009F0B6C0805E883072 +:102CA00008F4C1C0C8010E944A14E4CFC816D9066E +:102CB00008F453C0F601E81BF90BCF01883C9105DD +:102CC00008F450C0F12C7C2DD98AC88A89890E94C9 +:102CD000B314E7EBF1E086E0DF011D928A95E9F796 +:102CE0000E94F314A0C0751314C0341312C06111F4 +:102CF00010C08091BC01F8018583C8010E944A146C +:102D000086E0E7EBF1E0DF011D928A95E9F7FE2C02 +:102D10008AC04D875E878D859E856A8B0E94891447 +:102D20006A89882309F4BECF662309F4BBCF2091BA +:102D3000BC01822F82958F7090E002970CF48ECFA9 +:102D40008091B7019091B8019A8389831B82DD82BB +:102D5000CC822E83CE0101967FCF809590958C0DED +:102D60009D1DACCFF62E662309F49CCF75132EC0A3 +:102D700034132CC02091BC0120FD1FC0822F8295EE +:102D80008F70D9F0D80115962C9315978F3049F094 +:102D90008F5F982F9295907F822F8F70892B159639 +:102DA0008C93C8010E944A1486E0F801A7EBB1E0B9 +:102DB00001900D928A95E1F793CF86E0F801A7EB99 +:102DC000B1E001900D928A95E1F72DC04D875E87A5 +:102DD0008D859E850E948914811140CF8091BC0110 +:102DE00081608093BC01C8010E944A141CC0662304 +:102DF00009F458CF4D875E878D859E850E94891482 +:102E0000882309F44FCF2ACF811148CF0CC024303A +:102E100031050CF047CF9F7009F440CFF801958140 +:102E2000907F09F03BCF8F2D62960FB6F894DEBFEE +:102E30000FBECDBFDF91CF911F910F91FF90EF900B +:102E4000DF90CF9008951F93CF93DF93CDB7DEB778 +:102E50002C970FB6F894DEBF0FBECDBF4F835887B7 +:102E600069877A878B879C87CE0107960E945C15BD +:102E7000882369F08F8198852A853B85232BF1F182 +:102E80009F3F09F063C08F3F09F060C037C086E004 +:102E9000FE013796DE01119601900D928A95E1F7B9 +:102EA0006F817885EA85FB85309741F17F3F11F48A +:102EB0006F3F21F12091860130E0C90101968770B2 +:102EC00099274091850150E08417950709F447C080 +:102ED00069837A83FD83EC8396E0929FD001939F70 +:102EE000B00D1124A957BE4FFE01319601900D92ED +:102EF0009A95E1F7809386010E94D21416E08091A2 +:102F00008501909186018917C1F1189FC001112494 +:102F100089579E4F0E945C15882379F1E0918501C5 +:102F20001E9FF0011124E957FE4F408151816281BB +:102F30007381848195810E94C2148091850190E003 +:102F400001968770992780938501D9CF4F81588545 +:102F500069857A858B859C850E94C214CFCF0E949B +:102F600085141092860110928501E7EBF1E086E06E +:102F7000DF011D928A95E9F7C1CF2C960FB6F89420 +:102F8000DEBF0FBECDBFDF91CF911F910895EF92AD +:102F9000FF920F931F93CF93DF938C01009709F457 +:102FA0006CC0F12CEE24E394E8012196F8018491A1 +:102FB000843740F4843008F051C0813081F0823091 +:102FC00019F15BC0853709F444C0A8F19CE7980F5C +:102FD000903708F052C08F770E94D01141C00E5F29 +:102FE0001F4FFE01C49180E28C0F883048F4C770F7 +:102FF0008E2D01C0880FCA95EAF70E94A31A14C04B +:103000008C2F0E9408112DC00E5F1F4FFE01C4912E +:1030100080E28C0F883058F4C7708E2D01C0880F65 +:10302000CA95EAF70E94A91A0E94CA1A1AC08C2FE0 +:103030000E94D01116C00E5F1F4FFE01C491CC2319 +:1030400081F08FE99FE00197F1F700C00000C150C7 +:10305000F6CF0E5F1F4FFE01F49003C00E940811CF +:103060008E018F2D882309F49FCFEFE9FFE0319780 +:10307000F1F700C000008150F5CFDF91CF911F9193 +:103080000F91FF90EF90089508956093C1017093A0 +:10309000C2018093C3019093C4010C9471140F93E7 +:1030A0001F930091C1011091C2012091C301309181 +:1030B000C401DC01CB01802B912BA22BB32B80937D +:1030C000C1019093C201A093C301B093C4011F91A9 +:1030D0000F910C9471140F931F930091C1011091E3 +:1030E000C2012091C3013091C401DC01CB018023D6 +:1030F0009123A223B3238093C1019093C201A09393 +:10310000C301B093C4011F910F910C9471140F93DC +:103110001F930091C1011091C2012091C301309110 +:10312000C401DC01CB0180279127A227B32780931C +:10313000C1019093C201A093C301B093C4011F9138 +:103140000F910C9471141092BD011092BE01109257 +:10315000BF011092C0010C94711441E050E060E096 +:1031600070E004C0440F551F661F771F8A95D2F781 +:103170004093BD015093BE016093BF017093C001A5 +:103180000C94711441E050E060E070E004C0440F22 +:10319000551F661F771F8A95D2F78091BD019091C8 +:1031A000BE01A091BF01B091C001482B592B6A2BE1 +:1031B0007B2B4093BD015093BE016093BF01709380 +:1031C000C0010C94711441E050E060E070E004C074 +:1031D000440F551F661F771F8A95D2F7409550956B +:1031E000609570958091BD019091BE01A091BF0145 +:1031F000B091C001482359236A237B234093BD012A +:103200005093BE016093BF017093C0010C94711480 +:1032100041E050E060E070E004C0440F551F661FBD +:10322000771F8A95D2F78091BD019091BE01A09140 +:10323000BF01B091C001482759276A277B274093D7 +:10324000BD015093BE016093BF017093C0010C9407 +:1032500071140F931F930091BD011091BE01209135 +:10326000BF013091C001DC01CB01802B912BA22B3F +:10327000B32B8093BD019093BE01A093BF01B09387 +:10328000C0011F910F910C9471140F931F93009123 +:10329000BD011091BE012091BF013091C001DC0140 +:1032A000CB0180239123A223B3238093BD0190936C +:1032B000BE01A093BF01B093C0011F910F910C9468 +:1032C00071140F931F930091BD011091BE012091C5 +:1032D000BF013091C001DC01CB0180279127A227DB +:1032E000B3278093BD019093BE01A093BF01B0931B +:1032F000C0011F910F910C9471140895CF92DF9229 +:10330000EF92FF920F931F93CF93DF938C01C090A6 +:10331000C101D090C201E090C301F090C40180913E +:10332000BD019091BE01A091BF01B091C001C82A1A +:10333000D92AEA2AFB2ACFE1D0E0D701C6010C2E18 +:1033400004C0B695A795979587950A94D2F780FF04 +:1033500006C0B8018C2F0E944A08019721F42197DA +:1033600060F780E001C08C2FDF91CF911F910F910A +:10337000FF90EF90DF90CF900895CF93DF93EC0113 +:103380000E947E19BE010E944A08DF91CF910895E4 +:10339000CB010E94BD1908958091C5018595859541 +:1033A000859508958091C5018770089598E0899F5B +:1033B00090011124262B2093C5010C94C218209152 +:1033C000C501809582238093C501982F977069F479 +:1033D00030E0482F552747FD50952417350729F031 +:1033E0008595859585950C94E31808959091C50170 +:1033F000977081E009F480E0089590910C01992381 +:1034000021F090910D01911109C020910E01309190 +:103410000F01F90132969FEF40E01FC0982F96955B +:10342000969596959F3050F5E0910E01F0910F0121 +:10343000E90FF11D877021E030E0A90102C0440FBF +:10344000551F8A95E2F7CA019181892B81830895DE +:103450009F3F39F04F5F4E3041F051915813F8CFF4 +:103460000DC05111F7CF942FF5CF9F3F39F0F901DF +:10347000E90FF11D97FDFA958283089508959091C3 +:103480000C01992321F090910D01911109C0209117 +:103490000E0130910F01F9013296205F3F4F1FC09E +:1034A000982F9695969596959F30F0F4E0910E01A1 +:1034B000F0910F01E90FF11D877021E030E0A901C3 +:1034C00002C0440F551F8A95E2F7CA018095918189 +:1034D0008923818308953196E217F30729F09081BB +:1034E0009813F9CF1082F7CF089581E090E0E09132 +:1034F0000E01F0910F01E80FF91F10820196803143 +:103500009105A9F708959091D901892B8093D9014C +:10351000089580959091D90189238093D9010895C8 +:103520001092D90108959091D801892B8093D801E8 +:10353000089580959091D80189238093D8010895AA +:103540001092D80108959091D701892B8093D701CB +:10355000089580959091D70189238093D70108958C +:103560001092D70108958093C60108951092C60164 +:10357000089580910E0190910F01FC0131969C01FC +:10358000205F3F4F80E0919191118F5FE217F30729 +:10359000D1F70895E0910E01F0910F018091D901CA +:1035A0008083E0910E01F0910F0190818091D8010C +:1035B000892B8083E0910E01F0910F019081809121 +:1035C000D701892B80838091C601882361F0E09127 +:1035D0000E01F0910F019081892B80830E94B91A0E +:1035E00081111092C60180910E0190910F010C94EF +:1035F000F80F20E0009739F0AC01415051098423C5 +:1036000095232F5FF7CF822F0895CF92DF92EF920D +:10361000FF926C01EE24FF24C114D104E104F104F3 +:1036200021F0C701B60120E101C020E0C72ED82E4D +:10363000E92EFF24C114D104E104F10419F0285F3C +:10364000C701B6016B017C0154E0F694E794D7946E +:10365000C7945A95D1F7C114D104E104F10419F0CB +:103660002C5FC701B6016B017C0142E0F694E79440 +:10367000D794C7944A95D1F7C114D104E104F10459 +:1036800019F02E5FC701B601DC01CB01B695A795F5 +:1036900097958795892B8A2B8B2B09F02F5F822F8B +:1036A000FF90EF90DF90CF9008958091F1018430EA +:1036B00021F11092DB0120E488E190E00FB6F8944C +:1036C000A895809360000FBE2093600080E00E9468 +:1036D000E50883B7817F846083BF83B7816083BF40 +:1036E0007894889583B78E7F83BF88E10FB6F8946E +:1036F00080936000109260000FBE089508950895B1 +:103700000E947E1B0E944B030E947F1B0E9440046C +:1037100091E0811101C090E0892F08950E948514E5 +:103720000E94EC0F0C94E50882E084BD93E095BD07 +:103730009AEF97BD80936E0008952FB7F89480910B +:10374000DC019091DD01A091DE01B091DF012FBF7E +:103750000895CF92DF92EF92FF920F931F932FB7AE +:10376000F8944091DC015091DD016091DE0170918F +:10377000DF012FBF6A017B01EE24FF248C0120E0D2 +:1037800030E0C016D106E206F30610F441505109AC +:103790009A01281B390BC9011F910F91FF90EF90DF +:1037A000DF90CF9008951F920F920FB60F921124C1 +:1037B0008F939F93AF93BF938091DC019091DD0134 +:1037C000A091DE01B091DF010196A11DB11D809392 +:1037D000DC019093DD01A093DE01B093DF01BF9186 +:1037E000AF919F918F910F900FBE0F901F901895E2 +:1037F0000E94E90CF8942FEF87EA91E6215080406F +:103800009040E1F700C0000087E090EBDC0180937E +:10381000FB019093FC01A093FD01B093FE019CE09D +:1038200088E10FB6F894A895809360000FBE90933E +:103830006000FFCFEF92FF920F931F93CF93DF9320 +:10384000D82FCDE08C2F0E94390405E010E0E82E3F +:10385000F12CC701002E02C0959587950A94E2F7D6 +:1038600080FF09C0602F7C2F80E00E94F505D813EF +:1038700002C081E006C00150110958F7C15010F78D +:1038800080E0DF91CF911F910F91FF90EF9008950D +:10389000CF93C82F8CE20E941A1C882321F08C2F12 +:1038A000CF910C941A1C80E0CF910895CF930E9481 +:1038B0009D1D811102C00E94831DC5E6C15049F0C3 +:1038C0000E944B038FE39CE90197F1F700C00000D1 +:1038D000F5CF89E20E94481C811113C18AE20E943F +:1038E000481C81110E94831D85E00E94481C8111A3 +:1038F0000E94F81B0E94A81D8093DA0187E00E94B5 +:10390000481C8823A9F18BE10E94481C882351F0B0 +:103910008091DA0181FB222720F991E0922790FB28 +:1039200081F90EC08EE00E94481C882361F08091CE +:10393000DA0182FB222720F991E0922790FB82F99D +:103940008093DA0115C080E10E94481C9091DA0151 +:10395000882341F093FB222720F981E0822780FB16 +:1039600093F904C0892F809580FB90F99093DA0138 +:103970008091DA010E94AC1D0E94BA1D8093FA0169 +:1039800080EE0E94481C882341F08091FA01982F14 +:10399000909590FB80F98093FA0189E30E94481C7E +:1039A000882359F08091FA0181FB222720F991E0C8 +:1039B000922790FB81F98093FA0182EE0E94481CC5 +:1039C000882359F08091FA0182FB222720F991E0A7 +:1039D000922790FB82F98093FA0186EE0E94481CA0 +:1039E000882359F08091FA0183FB222720F991E086 +:1039F000922790FB83F98093FA0183EE0E94481C82 +:103A0000882359F08091FA0184FB222720F991E064 +:103A1000922790FB84F98093FA0185E30E94481C69 +:103A2000882359F08091FA0185FB222720F991E043 +:103A3000922790FB85F98093FA0181E30E94481C4C +:103A4000882359F08091FA0186FB222720F991E022 +:103A5000922790FB86F98093FA0181E10E94481C2D +:103A6000882359F08091FA0187FB222720F991E001 +:103A7000922790FB87F98093FA018091FA010E94C6 +:103A8000BE1D8091FA0187FB882780F980930D0184 +:103A900087E20E94481CC82F8EE10E94481C8111B9 +:103AA000C2608FE10E94481C8111C46080E20E94C4 +:103AB000481C8111C86081E20E94481C8111C061CC +:103AC00082E20E94481C8111C06283E20E94481C6D +:103AD0008111C06484E20E94481C882311F0C068F0 +:103AE00002C0CC2329F08C2F0E94B51D6C2F03C07F +:103AF0000E94B11D682F70E080E090E0CF910C949F +:103B00004518CF9108956DEE7EEF80E090E00E9421 +:103B1000EF2360E082E090E00E94DD2360E083E03C +:103B200090E00E94DD2360E084E090E00E94DD23CD +:103B300060E085E090E00C94DD2380E090E00E945E +:103B4000D72321E08D3E9E4F09F020E0822F08957B +:103B500082E090E00C94CF23682F82E090E00C94F8 +:103B6000DD2383E090E00C94CF23682F83E090E086 +:103B70000C94DD2384E090E00C94CF23682F84E044 +:103B800090E00C94DD238091E20180FF0BC06091F6 +:103B9000130185E0689FB0011124759567957595AF +:103BA00067952BC081FF09C06091130185E0689F74 +:103BB000B00111247595679520C082FF07C0609100 +:103BC000130185E0689FB001112417C09091E301B3 +:103BD0009923D1F060911201961788F72091130173 +:103BE00085E0289F90011124929FA001939F500D82 +:103BF000112470E0CA010E94A1236038710540F4CD +:103C00006115710539F002C065E070E0862F0895F6 +:103C10008FE7089581E008958091E20180FF08C058 +:103C20006091110170E0759567957595679521C054 +:103C300081FF06C06091110170E07595679519C00C +:103C400082FF04C06091110170E010C09091E30107 +:103C50009923C1F0609110019617A0F7809111018E +:103C6000899FC001112470E00E94A1236038710572 +:103C700028F46115710521F0862F08958FE70895C6 +:103C800081E0089561E070E0F4CF803F21F40E946C +:103C9000C31D819504C0813F29F40E94C31D8093F8 +:103CA000E6010895823F21F40E94C31D819504C05E +:103CB000833F29F40E94C31D8093E5010895893F45 +:103CC00019F40E940C1E05C08A3F31F40E940C1E9C +:103CD00081958093E70108958B3F21F40E940C1E8B +:103CE000819504C08C3F29F40E940C1E8093E8014A +:103CF0000895843F21F48091E401816017C0853FDD +:103D000021F48091E401826011C0863F21F480910A +:103D1000E40184600BC0873F21F48091E401886056 +:103D200005C0883F31F48091E40180618093E40113 +:103D300008958D3F21F48091E20181600BC08E3F98 +:103D400021F48091E201826005C08F3F29F48091C7 +:103D5000E20184608093E2010895803F39F480910C +:103D6000E60187FF6CC01092E60169C0813F29F42B +:103D70008091E6011816BCF362C09091E501823F84 +:103D800029F497FF5CC01092E50159C0833F19F4F4 +:103D90001916CCF354C0893F41F48091E7011816FD +:103DA0000CF04DC01092E7014AC08A3F29F480917F +:103DB000E70187FF44C0F6CF8B3F39F48091E801DB +:103DC00087FF3DC01092E8013AC08C3F29F48091F2 +:103DD000E8011816BCF333C0843F21F48091E4015C +:103DE0008E7F17C0853F21F48091E4018D7F11C043 +:103DF000863F21F48091E4018B7F0BC0873F21F443 +:103E00008091E401877F05C0883F31F48091E4010F +:103E10008F7E8093E40113C08D3F21F48091E201F5 +:103E20008E7F0BC08E3F21F48091E2018D7F05C013 +:103E30008F3F29F48091E2018B7F8093E201809192 +:103E4000E50181110EC08091E60181110AC08091C7 +:103E5000E701811106C08091E801811102C0109232 +:103E6000E301089584EE91E00E9403100E949D1BDF +:103E70009093E1018093E00108951F93CF93DF9326 +:103E80008091E0019091E1010E94A91BAC01909109 +:103E9000E301992321F02091140130E006C0209124 +:103EA00015018AE0289F900111244217530708F456 +:103EB00086C08091E501C091E601D091E7011091A3 +:103EC000E801811107C0C11176C0D11174C0111170 +:103ED00072C075C09F3F19F09F5F9093E301181661 +:103EE00024F40E94C31D8093E5018091E50187FFC2 +:103EF00005C00E94C31D81958093E5011C1624F422 +:103F00000E94C31D8093E6018091E60187FF05C0F2 +:103F10000E94C31D81958093E6016091E5016623AF +:103F200039F1C091E601CC2319F1772767FD70952F +:103F3000872F972F0E94B22223E333E343E35FE30B +:103F40000E9416230E947F226093E5016C2F772741 +:103F500067FD7095872F972F0E94B22223E333E3EA +:103F600043E35FE30E9416230E947F226093E601F1 +:103F70001D1624F40E940C1E8093E7018091E70136 +:103F800087FF05C00E940C1E81958093E7011116E2 +:103F900024F40E940C1E8093E8018091E80187FFC1 +:103FA00005C00E940C1E81958093E801DF91CF919E +:103FB0001F910C94321F9F3F09F08ECF96CFDF9157 +:103FC000CF911F910895E4EEF1E085E0DF011D92AD +:103FD0008A95E9F71092E3011092E2010895833087 +:103FE00081F128F4813059F08230D1F00895853084 +:103FF00009F449C0B8F1863009F456C0089580919B +:104000001501262F30E0280F311D2F3F310524F4F4 +:10401000680F6093150108958FEF8093150108953F +:1040200080911401262F30E0280F311D2F3F3105DC +:1040300024F4680F6093140108958FEF80931401A6 +:10404000089580911301262F30E0280F311D2F3F56 +:10405000310524F4680F6093130108958FEF809366 +:104060001301089580911201262F30E0280F311D91 +:104070002F3F310524F4680F6093120108958FEFEC +:1040800080931201089580911101262F30E0280FAE +:10409000311D2F3F310524F4680F609311010895FD +:1040A0008FEF80931101089580911001262F30E049 +:1040B000280F311D2F3F310524F4680F6093100144 +:1040C00008958FEF809310010895833011F128F443 +:1040D000813049F0823091F00895853081F120F1EE +:1040E0008630C1F1089580911501681720F4861B70 +:1040F000809315010895109215010895809114017F +:10410000681720F4861B80931401089510921401FF +:10411000089580911301681720F4861B8093130182 +:10412000089510921301089580911201681720F4E8 +:10413000861B8093120108951092120108958091B8 +:104140001101681720F4861B8093110108951092C5 +:104150001101089580911001681720F4861B809347 +:10416000100108951092100108950F931F938D313F +:1041700009F46BC008F03FC08E3009F47FC0C0F472 +:10418000873009F469C068F4863009F0B1C08091C5 +:10419000DA01817F8E7F8093DA0181E08093EA01EA +:1041A000A8C0883009F4A2C08B3009F49FC0A0C019 +:1041B000863109F49BC078F4803109F472C08131F2 +:1041C00009F096C00E94851490910D0181E0892725 +:1041D00080930D018BC0893109F488C08B3109F0BF +:1041E00087C08091DA0181FB222720F991E0922794 +:1041F00090FB81F94CC0853309F470C048F48732D4 +:1042000009F46CC008F459C0893209F467C070C061 +:10421000833438F48A3308F04EC0883309F466C01A +:1042200067C0833409F45AC0883409F061C00E9421 +:1042300085140FEF13ED20E3015010402040E1F70B +:1042400000C000000E94F81B51C00E9439220E9449 +:10425000EC0F0E94E5084AC09091DA01892F809501 +:10426000817080FB90F929F0966098609093DA0154 +:1042700040C0997F977F9093DA0138C08091DA012E +:1042800082FB222720F991E0922790FB82F980930C +:10429000DA01992359F18091DA0181608093DA0182 +:1042A00025C08091DA0183FB222720F991E0922733 +:1042B00090FB83F9ECCF895301C08D5141E050E070 +:1042C00060E070E08A019B0104C0000F111F221FF3 +:1042D000331F8A95D2F7C901B80104C061E070E0CC +:1042E00080E090E00E9445180E94851481E001C0A2 +:1042F00080E01F910F91089580E0089580E0089577 +:10430000CF93C82F8091EA01813079F018F0823084 +:10431000E9F187C0E0910E01F0910F0180818131B8 +:1043200069F0823209F07FC009C0E0910E01F0917E +:104330000F018081813111F0823261F48C2F0E9453 +:104340007C21811104C08C2F0E94B5201DC081E00A +:1043500090E01AC08C2F0E947E21811114C0C431BC +:1043600079F048F4CB3079F0C03109F060C082E0D8 +:104370008093EA0108C0C93219F0C83321F057C050 +:104380001092EA0154C081E0817053C0C93289F1B2 +:1043900018F5C43171F1A8F4C73009F046C08AE0BD +:1043A0008093150194E19093140193E0909313018D +:1043B0008093120188E08093110188E280931001BC +:1043C00034C0CE51C63088F5EC2FF0E0E65DFE4FEC +:1043D00080818093E90129C0CE34E9F020F4CB3408 +:1043E00021F56AE013C0C13579F0C235F1F461E01E +:1043F0000DC08091E901882319F01092E90115C0E0 +:1044000081E08093EA0115C061E006C08091E90176 +:104410000E94EF1F0AC06AE08091E9010E946520B6 +:1044200004C01092EA0180E004C081E002C080E094 +:10443000ABCFCF910895E1E8F0E080818860808380 +:104440008081816080838FB7F89493E09093890096 +:1044500090ED909388008FBF0895EFE6F0E08081A3 +:10446000826080830895EFE6F0E080818D7F808315 +:104470000895EFE6F0E0908182E089278083089537 +:104480001F920F920FB60F9211242F933F934F93C9 +:104490005F936F937F938F939F93AF93BF93EF93AC +:1044A000FF938091EB019091EC0101969093EC01C8 +:1044B0008093EB01811103C082E00E94E508E09146 +:1044C000EC01E695E695F0E0EC54FB4FE491809129 +:1044D000EB018E1303C080E00E94E508FF91EF918D +:1044E000BF91AF919F918F917F916F915F914F910C +:1044F0003F912F910F900FBE0F901F90189504D0F1 +:104500006894B1118DC0089570D088F09F5790F0D5 +:10451000B92F9927B751A0F0D1F0660F771F881FE8 +:10452000991F1AF0BA95C9F712C0B13081F077D04F +:10453000B1E0089574C0672F782F8827B85F39F0ED +:10454000B93FCCF3869577956795B395D9F73EF447 +:1045500090958095709561957F4F8F4F9F4F0895EF +:10456000E89409C097FB3EF490958095709561950D +:104570007F4F8F4F9F4F9923A9F0F92F96E9BB27C3 +:104580009395F695879577956795B795F111F8CF3F +:10459000FAF4BB0F11F460FF1BC06F5F7F4F8F4FAA +:1045A0009F4F16C0882311F096E911C0772321F0A0 +:1045B0009EE8872F762F05C0662371F096E8862F38 +:1045C00070E060E02AF09A95660F771F881FDAF78F +:1045D000880F9695879597F9089557FD9058440F41 +:1045E000551F59F05F3F71F04795880F97FB991F52 +:1045F00061F09F3F79F0879508951216130614060F +:10460000551FF2CF4695F1DF08C01616170618069B +:10461000991FF1CF86957105610508940895E89476 +:10462000BB2766277727CB0197F908950BD078C071 +:1046300069D028F06ED018F0952309F05AC05FC0F9 +:104640001124EECFCADFA0F3959FD1F3950F50E070 +:10465000551F629FF001729FBB27F00DB11D639F34 +:10466000AA27F00DB11DAA1F649F6627B00DA11DDA +:10467000661F829F2227B00DA11D621F739FB00D80 +:10468000A11D621F839FA00D611D221F749F3327F0 +:10469000A00D611D231F849F600D211D822F762F89 +:1046A0006A2F11249F5750408AF0E1F088234AF086 +:1046B000EE0FFF1FBB1F661F771F881F91505040D2 +:1046C000A9F79E3F510570F014C0AACF5F3FECF3ED +:1046D000983EDCF3869577956795B795F795E795BE +:1046E0009F5FC1F7FE2B880F911D9695879597F9CF +:1046F000089597F99F6780E870E060E008959FEF64 +:1047000080EC089500240A94161617061806090668 +:10471000089500240A941216130614060506089537 +:10472000092E0394000C11F4882352F0BB0F40F4BF +:10473000BF2B11F460FF04C06F5F7F4F8F4F9F4FFF +:10474000089597FB072E16F4009407D077FD09D043 +:104750000E94BB2307FC05D03EF4909581959F4FA6 +:104760000895709561957F4F0895EE0FFF1F059096 +:10477000F491E02D0994AA1BBB1B51E107C0AA1FAD +:10478000BB1FA617B70710F0A61BB70B881F991FF2 +:104790005A95A9F780959095BC01CD010895F99996 +:1047A000FECF92BD81BDF89A992780B50895A8E102 +:1047B000B0E042E050E00C94F723262FF999FECFA9 +:1047C00092BD81BDF89A019700B4021639F01FBA64 +:1047D00020BD0FB6F894FA9AF99A0FBE0895019683 +:1047E000272F0E94DE230C94DD23DC01CB01FC018A +:1047F000F999FECF06C0F2BDE1BDF89A319600B43A +:0E4800000D9241505040B8F70895F894FFCF44 +:10480E000220E708750952091E09EA080101C701CD +:10481E0028080A03140A3F4D363975042804F2039A +:10482E00B9034C0365037E039703010203040506D7 +:04483E00070809005E +:00000001FF diff --git a/keyboards/ergodox_ez/keymaps/german/keymap.c b/keyboards/ergodox_ez/keymaps/german/keymap.c new file mode 100644 index 0000000000..3eab51f0e2 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/german/keymap.c @@ -0,0 +1,185 @@ +#include "ergodox_ez.h" +#include "debug.h" +#include "action_layer.h" +#include "keymap_german.h" + +// Layer names +#define BASE 0 // default layer +#define SYMB 1 // symbol layer +#define MDIA 2 // media keys + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* Keymap 0: Basic layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | ^ | 1 | 2 | 3 | 4 | 5 | Play | | Next | 6 | 7 | 8 | 9 | 0 | ß | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Del | Q | W | E | R | T | L1 | | L2 | Z | U | I | O | P | Ü | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | Caps | A | S | D | F | G |------| |------| H | J | K | L | Ö | Ä/L2 | + * |--------+------+------+------+------+------| Hyper| | Meh |------+------+------+------+------+--------| + * | LShift | Y | X | C | V | B | | | | N | M | , | . |-/Ctrl| RShift | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | 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) { + case SYMB: + ergodox_right_led_1_on(); + break; + case MDIA: + ergodox_right_led_2_on(); + break; + default: + ergodox_board_led_off(); + break; + } + +}; diff --git a/keyboards/ergodox_ez/keymaps/j3rn/compiled.hex b/keyboards/ergodox_ez/keymaps/j3rn/compiled.hex new file mode 100644 index 0000000000..d925383407 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/j3rn/compiled.hex @@ -0,0 +1,1158 @@ +:100000000C947B020C94BF020C94BF020C94BF02B0 +:100010000C94BF020C94BF020C94BF020C94BF025C +:100020000C94BF020C94BF020C94630D0C94350E1B +:100030000C94BF020C94BF020C94BF020C94BF023C +:100040000C94BF020C943F220C94BF020C94BF028C +:100050000C94BF020C94D21B0C94BF020C94BF02F0 +:100060000C94BF020C94BF020C94BF020C94BF020C +:100070000C94BF020C94BF020C94BF020C94BF02FC +:100080000C94BF020C94BF020C94BF020C94BF02EC +:100090000C94BF020C94BF020C94BF020C94BF02DC +:1000A0000C94BF020C94BF020C94BF02A20EC40EAB +:1000B000B20FC40EB20F090F2C0FB20F810F940FA5 +:1000C0006312631292129212C812E81219141914D0 +:1000D000F3121914A313A3130A14191419141314E3 +:1000E000B013B013B013B013B013B013B013B013F8 +:1000F000B013B013B013B013B013B013B013B013E8 +:10010000C213CF13D613DD13E7130000F0A1F0A242 +:1001100035002B002971E100C10000001E00140011 +:1001200004421D71C200E1001F001A0016001B00EE +:10013000E104E300200008000700060050002C0046 +:1001400021001500090019004F004D002200170082 +:100150000A000500000065742F002D000000007FDC +:1001600000004A0030002E000000007700004B0025 +:1001700023001C000B00110000002971240018004E +:100180000D00100052004E0025000C000E0036003D +:1001900051002800260012000F0037002F002B000E +:1001A00027001300330038713000E2002A003100CC +:1001B0003400E500C1000000010001000100010061 +:1001C000010000003A001E0220022202010001008C +:1001D0003B001F0221022302010001003C002F020C +:1001E00026022F00010001003D00300227023000EE +:1001F000010001003E00310235003502000001001F +:1002000001000100000001000000010001000100E8 +:1002100000000100000001003F00520051002402D4 +:10022000000001004000240021001E000100010028 +:100230004100250022001F00370001004200260077 +:100240002300200027000100430025022E02310078 +:100250002E000100440045000100010001000000E3 +:100260000100010001000100010000000100010087 +:100270000100010001000100010001000100010076 +:100280000100010001000100010001000100010066 +:100290000100010001000100010001000100010056 +:1002A0000100010000000100010001000000010048 +:1002B0000000010001000100000001000000010039 +:1002C00001000100F2000100000001000100010036 +:1002D000F1000100A90001000100F400F000AC00F1 +:1002E000AA00B6000100F500F300AB00A800010071 +:1002F00001000100010001000100010001000100F6 +:10030000AE00010001000000160345007200670006 +:100310006F0044006F007800200045005A00000084 +:1003200016034500720067006F0044006F007800FC +:10033000200045005A0000000403090409026D0072 +:10034000040100A0FA0904000001030101000921D1 +:1003500011010001223F000705810308000A09047A +:1003600001000103010200092111010001224D00D9 +:100370000705820308000A090402000103000000C7 +:100380000921110100012236000705830308000A34 +:1003900009040300010300000009211101000122EA +:1003A000390007058403100001120110010000004C +:1003B00008EDFE071301000102000105010906A175 +:1003C00001050719E029E715002501950875018148 +:1003D0000205081901290595057501910295017518 +:1003E00003910105071900297715002501957875F6 +:1003F000018102C005010980A101850216010026C4 +:10040000B7001A01002AB700751095018100C005D8 +:100410000C0901A1018503160100269C021A0100A6 +:100420002A9C02751095018100C005010902A101F5 +:100430000901A100050919012905150025019505E6 +:1004400075018102950175038101050109300931AA +:100450001581257F95027508810609381581257F4C +:10046000950175088106050C0A38021581257F95CE +:100470000175088106C0C005010906A1010507191B +:10048000E029E715002501950875018102950175A0 +:100490000881010508190129059505750191029545 +:1004A00001750391010507190029FF150025FF9526 +:1004B0000675088100C00000000000000000000078 +:1004C00000010204060A0F17202C3A4A5D71879D2D +:1004D000B3C7DAE9F5FCFFFCF5E9DAC7B39D87712C +:1004E0005D4A3A2C20170F0A0604020100000000A2 +:1004F00000000000000011241FBECFEFDAE0DEBFD5 +:10050000CDBF04B603FE24C08091FB019091FC0195 +:10051000A091FD01B091FE018730904BA740B04BF8 +:10052000B9F41092FB011092FC011092FD0110929F +:10053000FE0114BE84B7877F84BF88E10FB6F894AC +:1005400080936000109260000FBEE0E0FFE3099529 +:1005500011E0A0E0B1E0ECE0F8E402C005900D92FB +:10056000A433B107D9F711E0A4E3B1E001C01D92B3 +:10057000AB3FB107E1F70E94A70A0C9404240C9446 +:1005800000001092B9008AE08093B800089594EAC0 +:100590009093BC009091BC0097FFFCCF9091B90064 +:1005A000987F983021F0903111F081E00895809388 +:1005B000BB0084E88093BC008091BC0087FFFCCF27 +:1005C0008091B900887F883111F0803471F780E024 +:1005D000089584E98093BC008091BC0084FDFCCF29 +:1005E00008958093BB0084E88093BC008091BC0098 +:1005F00087FFFCCF9091B900987F81E0983209F491 +:1006000080E0089584E88093BC008091BC0087FF5F +:10061000FCCF8091BB00089580910101811115C02C +:1006200080E40E94C7028093010181110CC082E125 +:100630000E94F10280930101811105C08FEF0E9499 +:10064000F102809301010E94E90284B1807F84B9A4 +:1006500085B1807F85B98AB1837F8AB98BB1837F69 +:100660008BB93E98469808950E94C7048093010173 +:100670000E940C0380B38C7080BB81B3836F81BBFD +:10068000A5E3B1E0E3E4F1E08EE08E0F11921D925C +:100690008E13FCCF0C94B104BF92CF92DF92EF92F5 +:1006A000FF920F931F93CF93DF93809101018823D3 +:1006B00079F0809134018F5F80933401811108C0FB +:1006C0000E94C70480930101811102C00E94590455 +:1006D00005E311E0C0E0D0E0DD24D39482E0C82E31 +:1006E000EE24E394F12CC730D10500F5809101018F +:1006F000811164C080E40E94C702809301018111CE +:1007000012C082E10E94F1028093010181110BC0AD +:10071000C7010C2E01C0880F0A94EAF780950E9449 +:10072000F102809301010E94E90248C0CA30A1F0A1 +:1007300028F4C83059F0C93061F005C0CC3089F0D8 +:1007400070F0CD3089F0209A289810C0219A29980D +:100750000DC0229A2A980AC0239A2B9807C0529A51 +:1007600001C0539A5B9802C03E9A469890EA9A95C7 +:10077000F1F79FB1799902C082E001C080E09170E9 +:100780009D25982B7C9902C084E001C080E0892BD4 +:100790007D9902C038E001C030E0832B7E9902C011 +:1007A00020E101C020E0822B9FB19095991F9927ED +:1007B000991F9295990F907E892B0FC0809101010E +:1007C000811149C080E40E94C702809301018823FF +:1007D00079F1B12C0E94E9028B2DF80190819817D4 +:1007E00019F08083C09200010E940C0321960F5FD4 +:1007F0001F4FCE30D10509F076CF809100018823BC +:1008000061F1815080930001882339F08FE99FE0E6 +:100810000197F1F700C0000020C0A3E4B1E0E5E3D8 +:10082000F1E0CF01825F91919D938E13FCCF15C0B3 +:1008300083E10E94F102809301018111CACF81E41A +:100840000E94C702809301018111C3CF0E9402035D +:10085000B82EB094BFCF80E0C0CF0E94570481E093 +:10086000DF91CF911F910F91FF90EF90DF90CF908C +:10087000BF900895E82FF0E0ED5BFE4F8081089572 +:1008800008950F931F93CF93DF93C3E4D1E010E05B +:100890000C2F025F899190E00E94F81A180F0C1338 +:1008A000F9CF812FDF91CF911F910F9108950C9473 +:1008B000270556985E9825982D9826982E98279863 +:1008C0002F988FEF90E09093890080938800909309 +:1008D0008B0080938A0090938D0080938C00259AE2 +:1008E0002D9A2FEF80E792E0215080409040E1F771 +:1008F00000C00000269A2E9A2FEF80E792E0215048 +:1009000080409040E1F700C00000279A2F9A2FEF17 +:1009100080E792E0215080409040E1F700C0000065 +:1009200025982D982FEF80E792E02150804090404D +:10093000E1F700C0000026982E982FEF80E792E0A4 +:10094000215080409040E1F700C0000027982F9888 +:1009500056985E9825982D9826982E9827982F9827 +:10096000089589EA8093800089E08093810024982B +:100970002C983F988AB18F748AB96E98479A8BB138 +:10098000806B8BB9769A0E9459040C94260580E2FC +:10099000809301018091510181110EC00E94C1021A +:1009A00081E0809351012FEF83ED90E3215080404F +:1009B0009040E1F700C0000080E40E94C7028093ED +:1009C000010181112EC00E94F10280930101811169 +:1009D00028C00E94F10280930101811122C08FE39F +:1009E0000E94F1028093010181111BC00E94E90263 +:1009F00080E40E94C70280930101811112C08CE043 +:100A00000E94F1028093010181110BC00E94F1024A +:100A100080930101811105C08FE30E94F102809350 +:100A200001010E94E90280910101089561110BC04A +:100A3000FC018281882321F085EE0E94071103C00A +:100A400085EE0E94CF1180E090E0089508956091B6 +:100A5000BD017091BE018091BF019091C0010E94C3 +:100A6000041B56985E9825982D9826982E982798BE +:100A70002F98813019F0823021F00895259A2D9A0F +:100A80000895269A2E9A089581E0089581E00895A8 +:100A90000C94460508950F931F93CF93DF938C0119 +:100AA000FC01C081D181CE010E947D19BE010E944E +:100AB000F405EC01B8010E944805882309F48DC0B3 +:100AC000F8018281882309F44AC080915D01811177 +:100AD0001FC0C431F0E5DF0709F051C00E944A058C +:100AE00081E080935D010E949C1B90935C01809348 +:100AF0005B01109254011092560110925501109210 +:100B000058011092570110925A011092590165C074 +:100B100080915B0190915C010E94A81B883C91052B +:100B200070F480915401E82FF0E0EE0FFF1FEB5AB4 +:100B3000FE4FD183C0838F5F809354014EC0C43871 +:100B400080E5D80721F0C538D04501F13AC0F80159 +:100B50008281882341F01092520182E01EC0C43885 +:100B6000E0E5DE0759F580915201811106C086E269 +:100B70000E94071186E20E94CF1182E01CC0C43897 +:100B8000F0E5DF0741F3C538D045D9F4F80182819B +:100B9000882331F01092530180E20E941E121DC082 +:100BA00080915301811106C087E20E94071187E2FC +:100BB0000E94CF1180E20E9425120FC0C538D04597 +:100BC00029F381E08093520180935301C801DF91A2 +:100BD000CF911F910F910C94440580E0DF91CF914C +:100BE0001F910F910895089596E0799FF0011124C7 +:100BF00094E5899FE00DF11D1124E60FF11DEE0F24 +:100C0000FF1FE05FFE4F859194910895880F991F13 +:100C1000FC01E657F040859194910895880F991F43 +:100C2000FC01E65FFE4F8591949108950F931F9309 +:100C3000CF93DF93EC01811520E3920750F5C115A6 +:100C400080E2D80708F0C3C0CB3BD10590F4C83A86 +:100C5000D10508F06AC0C53AD10508F05BC0C430C0 +:100C6000D10508F0D0C1219709F0CAC101E010E018 +:100C70000AC2CF3FD10511F008F0C5C1C03FD10570 +:100C800008F0A2C0CE01805E9109089708F4BBC1AC +:100C9000B7C1C13090E5D90709F4A2C020F5C03131 +:100CA0008FE4D80770F4C11590E4D90708F094C018 +:100CB000C11521E3D20708F0A3C1DD278E01106C16 +:100CC000E2C1C115D04509F09BC10E9484148FEF89 +:100CD00094E32CE0815090402040E1F700C00000F8 +:100CE0000E94F71BD0C1C11597E5D90758F4C03150 +:100CF00021E5D20708F01CC1C43180E5D80708F40B +:100D000075C07EC1CE0190578115904108F078C121 +:100D1000DF7073C1C53AD10509F477C1C63AD10570 +:100D200009F076C102E810E4AEC1C83AD10509F471 +:100D300072C1C93AD10509F471C1CA3AD10509F4A1 +:100D400070C1CB3AD10509F46FC1CC3AD10509F491 +:100D50006EC1CD3AD10509F46DC1C03BD10509F48E +:100D60006CC1CE3AD10509F46BC1CF3AD10509F473 +:100D70006AC1C13BD10509F469C1C23BD10509F47F +:100D800068C1C33BD10509F467C1C43BD10509F46F +:100D900066C1C53BD10509F465C1C63BD10509F45F +:100DA00064C1C73BD10509F463C1C83BD10509F44F +:100DB00062C1C93BD10509F461C1CA3BD10509F43F +:100DC00060C100E014E45FC18E0110655CC1CE011A +:100DD0009F700E940E0658C1DF708E01106A53C1C9 +:100DE0008091DA0181608093DA014DC10E949C1DDF +:100DF000811102C00E94821D0E94B91D90E0909353 +:100E0000FB018093FA01C23080E5D80721F480917C +:100E1000FA01816086C0C43090E5D90721F4809141 +:100E2000FA0182607EC0C63020E5D20721F48091AD +:100E3000FA01846076C0C83080E5D80719F4809143 +:100E4000FA0127C0CA3090E5D90721F48091FA0150 +:100E5000806167C0CC3020E5D20721F48091FA018F +:100E600080625FC0CE3080E5D80721F48091FA011E +:100E7000806457C0C03190E5D90721F48091FA0110 +:100E800080684FC0C23120E5D20729F48091FA0171 +:100E90008460886046C0C33080E5D80721F4809123 +:100EA000FA018E7F3EC0C53090E5D90721F48091CC +:100EB000FA018D7F36C0C73020E5D20721F480913A +:100EC000FA018B7F2EC0C93080E5D80719F48091D4 +:100ED000FA0126C0CB3090E5D90721F48091FA01C0 +:100EE0008F7E1FC0CD3020E5D20721F48091FA011A +:100EF0008F7D17C0CF3080E5D80721F48091FA01AB +:100F00008F7B0FC0C13190E5D90721F48091FA01A0 +:100F10008F7707C0C331D04531F48091FA018B7FC0 +:100F2000877F8093FA018091FA010E94BD1DABC0BA +:100F30008D2F99278F70992781309105D9F49E01C3 +:100F40002370332702C0880F991F2A95E2F79C6807 +:100F50008E0144E0000F111F4A95E1F7002713703E +:100F6000802B912B53E0CC0FDD1F5A95E1F7C07613 +:100F7000DD272FC08230910531F4DC2FCC278E0184 +:100F8000016F106A80C08330910569F4CE018370CF +:100F9000992701E010E002C0000F111F8A95E2F7C7 +:100FA000C8019C680FC084309105B9F4CE018370EC +:100FB000992701E010E002C0000F111F8A95E2F7A7 +:100FC000C8019A6823E0CC0FDD1F2A95E1F7C07EA7 +:100FD000D7708C010C2B1D2B56C08530910531F438 +:100FE000DC2FCC278E01046F106A4DC0069709F0E4 +:100FF0004AC0CF71DD27DC2FCC278E01106243C0A1 +:1010000000E010E040C08E013EC001E810E43BC0AB +:1010100003E810E438C002EE14E435C009EE14E42D +:1010200032C00AEE14E42FC005EB14E42CC006EB2A +:1010300014E429C007EB14E426C00CEC14E423C02C +:101040000DEC14E420C003E815E41DC00AE815E423 +:101050001AC002E915E417C004E915E414C001E25E +:1010600016E411C003E216E40EC004E216E40BC05D +:1010700005E216E408C006E216E405C007E216E43D +:1010800002C00AE216E4C801DF91CF911F910F91CF +:10109000089596E0799FF001112494E5899FE00D71 +:1010A000F11D1124E60FF11DEE0FFF1FE05FFE4F53 +:1010B00085919491803E9105E0F4803C910558F52E +:1010C0008133910509F46FC048F48932910509F420 +:1010D00063C08A32910509F46DC072C089339105ED +:1010E000E9F082389105D1F08533910509F44DC0BE +:1010F00067C0833E910581F138F4803E9105B9F0D7 +:10110000823E9105D9F05CC0863E910561F1873E33 +:101110009105A1F155C00E94060608952091FA019B +:1011200020FD02C021FF4CC080EE90E049C08091BC +:10113000FA0180FFF9CF89E390E042C08091FA0183 +:1011400082FF0EC08091FA0184FF03C080E090E02E +:1011500037C083EE90E034C08091FA0182FFF2CF75 +:1011600082EE90E02DC08091FA0183FF0BC0809148 +:10117000FA0184FDEBCF87EE90E022C08091FA0166 +:1011800083FFF5CF86EE90E01BC08091FA0185FFCA +:1011900007C089E290E014C08091FA0185FFF9CF81 +:1011A00085E390E00DC08091FA0186FF07C08AE2D6 +:1011B00090E006C08091FA0186FFF9CF81E390E0CC +:1011C0000E941606089508950C94E30880916E011C +:1011D0000895CF93DF9300D01F92CDB7DEB79C0167 +:1011E0008091F101843019F593E099833B832A8340 +:1011F0009093E9008FEF9091E800815095FD06C033 +:1012000095ED9A95F1F700008111F5CF8091E800F6 +:1012100085FF0DC040E050E063E070E0CE01019634 +:101220000E94530B8091E8008E778093E8000F9026 +:101230000F900F90DF91CF910895CF93DF9300D05F +:101240001F92CDB7DEB72091F101243021F522E0C5 +:1012500029839B838A8383E08093E9008FEF9091B9 +:10126000E800815095FD06C095ED9A95F1F70000D4 +:101270008111F5CF8091E80085FF0DC040E050E07E +:1012800063E070E0CE0101960E94530B8091E8006C +:101290008E778093E8000F900F900F90DF91CF91A1 +:1012A00008952091F1012430F1F422E02093E90027 +:1012B0002FEF3091E800215035FD06C035ED3A950D +:1012C000F1F700002111F5CF2091E80025FF0BC0B8 +:1012D00040E050E065E070E00E94530B8091E80030 +:1012E0008E778093E8000895CF93DF93EC0190917F +:1012F000F101943009F046C080910C018823D9F0A7 +:1013000080910D018823B9F09093E9008FEF9091BF +:10131000E800815095FD06C095E19A95F1F700002F +:101320008111F5CF8091E80085FF2CC040E050E0AE +:1013300060E170E017C081E08093E9008FEF909149 +:10134000E800815095FD06C095ED9A95F1F70000F3 +:101350008111F5CF8091E80085FF14C040E050E096 +:1013600068E070E0CE010E94530B8091E8008E7718 +:101370008093E80080E1FE01AEE5B1E001900D92BE +:101380008A95E1F7DF91CF9108958091F001811165 +:1013900009C00E94E80C0E94450D8091E200846023 +:1013A0008093E20008951092F001089508950C943E +:1013B0002C220E948D1B0E9432220E94EB0F0C9463 +:1013C000E40842E061EC81E00E94620C42E061ECE2 +:1013D00082E00E94620C42E061EC83E00E94620CB9 +:1013E00042E161EC84E00C94620C8091F301833063 +:1013F00009F455C030F4813071F0823009F48EC0A8 +:1014000008958A3009F47AC08B3009F460C08930BD +:1014100009F09CC020C08091F201813A09F096C089 +:101420008091E800877F8093E8008091F601909199 +:10143000F701892B21F460E18EE591E003C060E0C3 +:1014400080E090E070E00E949E0B8091E8008B7736 +:101450008093E80008958091F201813209F076C00E +:101460008091F6019091F701009719F0039709F028 +:101470006DC08091E800877F8093E8008091E8004C +:1014800082FD05C08091F1018111F8CF5FC080918C +:10149000F10080936E018091E8008B7753C08091BA +:1014A000F201813A09F052C08091F6019091F70162 +:1014B000892B09F04BC08091E800877F8093E8007A +:1014C0008091E80080FFFCCF80910C0136C08091B4 +:1014D000F2018132D9F58091F6019091F701892BC3 +:1014E000A9F58091E800877F8093E8000E94970C1F +:1014F0008091F40180930C010C9484148091F2018A +:10150000813221F58091E800877F8093E8000E9476 +:10151000970C8091F50180936F0108958091F201FD +:10152000813AA1F48091E800877F8093E800809160 +:10153000E80080FFFCCF80916F018093F1008091E3 +:10154000E8008E778093E8000C94970C089584B798 +:10155000877F84BF88E10FB6F89480936000109273 +:1015600060000FBE90E080E80FB6F89480936100B1 +:10157000909361000FBE0E943A100E94E80C0E94F6 +:10158000450D8091E20084608093E20078940E948F +:10159000CB0F0E943C1082E091E00E94E60F0E9477 +:1015A0001A228091F101853069F40E94541B8091C8 +:1015B000EF018823B1F30E947F1B882391F30E94DF +:1015C0003D0BEFCF0E944210ECCF292F3327233061 +:1015D0003105C9F064F42130310581F02230310544 +:1015E00009F043C08DE690E02CE333E042C02132A5 +:1015F0003105F1F02232310541F137C082E190E04E +:1016000029EA33E036C099278130910541F08230D4 +:10161000910541F0892B49F5E8E3F3E005C0E0E2EC +:10162000F3E002C0E8E0F3E0849190E09F0121C084 +:101630006430D8F4E62FF0E0EE0FFF1FEE5DFE4FB2 +:101640002081318189E090E014C0643070F470E052 +:10165000FB01EE0FFF1FE65EFE4F20813181FB0193 +:10166000EA5EFE4F808190E004C080E090E020E0E0 +:1016700030E0FA0131832083089580E189BD82E161 +:1016800089BD09B400FEFDCF8091D8008F7D809385 +:10169000D8008091E00082608093E0008091E000BB +:1016A00081FDFCCF0895CF92DF92EF92FF920F93CE +:1016B0001F93CF93DF93EC018B016A010E94B60C5C +:1016C000811133C0C114D10439F0F60180819181B8 +:1016D000081B190BC80FD91FE12CF12C011511059E +:1016E00019F18091E80085FD16C08091E8008E77A1 +:1016F0008093E800C114D10449F0F6018081918102 +:10170000E80EF91EF182E08285E00FC00E94B60C5F +:10171000882321F30AC089918093F10001501109B7 +:10172000FFEFEF1AFF0ADACF80E0DF91CF911F9130 +:101730000F91FF90EF90DF90CF9008952091F801E6 +:101740003091F9012617370748F06115710539F412 +:101750002091E8002E772093E80001C0B90140E015 +:1017600061157105A9F12091F101222309F443C00B +:10177000253009F442C02091E80023FD40C02091AB +:10178000E80022FD32C02091E80020FFE9CF40911F +:10179000F3002091F20030E0342BFC01CF01611501 +:1017A000710559F02830310540F481918093F100A2 +:1017B000615071092F5F3F4FF1CF41E02830310573 +:1017C00009F040E02091E8002E772093E800C8CF90 +:1017D0004111C9CF0AC08091F101882361F08530A1 +:1017E00061F08091E80083FD0AC08091E80082FFEB +:1017F000F2CF80E0089582E0089583E0089581E0CB +:1018000008952091F8013091F9012617370748F023 +:101810006115710539F42091E8002E772093E800D6 +:1018200001C0B901FC0120E06115710591F18091C1 +:10183000F101882309F440C0853009F43FC080914C +:10184000E80083FD3DC08091E80082FD2FC08091BB +:10185000E80080FFE9CF2091F3008091F20090E052 +:10186000922B6115710559F08830910540F424914F +:101870002093F1003196615071090196F2CF21E079 +:10188000089709F020E08091E8008E778093E800C7 +:10189000CBCF2111CCCF0AC08091F101882361F018 +:1018A000853061F08091E80083FD0AC08091E800F6 +:1018B00082FFF2CF80E0089582E0089583E00895EA +:1018C00081E00895982F973058F59093E900981784 +:1018D00039F07091EC002091ED005091F00003C0C0 +:1018E000242F762F50E021FF19C03091EB003E7F6E +:1018F0003093EB003091ED003D7F3093ED0030915F +:10190000EB0031603093EB007093EC002093ED001E +:101910005093F0002091EE0027FF07C09F5FD3CFC8 +:101920008F708093E90081E0089580E008958091B0 +:10193000F20187FF11C08091E80082FD05C080910F +:10194000F1018111F8CF11C08091E8008B770BC0B5 +:101950008091F101882349F08091E80080FFF8CF61 +:101960008091E8008E778093E80008952091E4004C +:101970003091E50095E64091EC00842F817040FFA6 +:1019800022C08091E80080FD1CC08091F101882375 +:1019900091F0853091F08091EB0085FD10C0409171 +:1019A000E4005091E5004217530729F39A01915042 +:1019B00011F784E0089582E0089583E0089581E0BE +:1019C000089580E008954091E80042FFDECF089539 +:1019D0000E94560D0E945E0DE0EEF0E08081816075 +:1019E0008083E8EDF0E080818F77808319BCA7EDDC +:1019F000B0E08C918E7F8C9380818F7E808310925B +:101A0000F00108950F931F93CF93DF930E94560D1B +:101A10000E945E0DC8EDD0E088818F778883888131 +:101A20008068888388818F7D888319BC1092F1013A +:101A30001092ED011092EF011092EE0100EE10E015 +:101A4000F80180818B7F808388818160888342E078 +:101A500060E080E00E94620CE1EEF0E080818E7F29 +:101A60008083E2EEF0E08081816080838081886005 +:101A70008083F80180818E7F808388818061888364 +:101A8000DF91CF911F910F910895E8EDF0E08081F3 +:101A90008F7E8083E7EDF0E080818160808384E049 +:101AA00082BF81E08093F0010C94020DE8EDF0E03C +:101AB00080818E7F80831092E20008951092DA0078 +:101AC0001092E10008951F920F920FB60F92112409 +:101AD0002F933F934F935F936F937F938F939F9336 +:101AE000AF93BF93EF93FF938091E10082FF0BC010 +:101AF0008091E20082FF07C08091E1008B7F80939C +:101B0000E1000E94CA0F8091DA0080FF1FC080911F +:101B1000D80080FF1BC08091DA008E7F8093DA00AE +:101B20008091D90080FF0DC080E189BD82E189BD2F +:101B300009B400FEFDCF81E08093F1010E94C50948 +:101B400005C019BC1092F1010E94D3098091E100F7 +:101B500080FF19C08091E20080FF15C08091E200F3 +:101B60008E7F8093E2008091E20080618093E200AA +:101B70008091D80080628093D80019BC85E0809362 +:101B8000F1010E94D7098091E10084FF30C080916B +:101B9000E20084FF2CC080E189BD82E189BD09B4E7 +:101BA00000FEFDCF8091D8008F7D8093D80080917A +:101BB000E1008F7E8093E1008091E2008F7E809330 +:101BC000E2008091E20081608093E2008091ED016B +:101BD000882311F084E007C08091E30087FD02C0F4 +:101BE00081E001C083E08093F1010E94D9098091D6 +:101BF000E10083FF29C08091E20083FF25C080912E +:101C0000E100877F8093E10082E08093F1011092F0 +:101C1000ED018091E1008E7F8093E1008091E200F0 +:101C20008E7F8093E2008091E20080618093E200E9 +:101C300042E060E080E00E94620C8091F0008860E9 +:101C40008093F0000E94D609FF91EF91BF91AF9170 +:101C50009F918F917F916F915F914F913F912F91C4 +:101C60000F900FBE0F901F9018951F920F920FB6F6 +:101C70000F9211242F933F934F935F936F937F9312 +:101C80008F939F93AF93BF93CF93DF93EF93FF9384 +:101C9000C091E900CF708091EC00D82FD17080FD09 +:101CA000D0E81092E9008091F000877F8093F000E7 +:101CB00078940E94790E1092E9008091F00088607B +:101CC0008093F000CD2BCF70C093E900FF91EF918E +:101CD000DF91CF91BF91AF919F918F917F916F9144 +:101CE0005F914F913F912F910F900FBE0F901F90DA +:101CF00018951F93CF93DF93CDB7DEB7AA970FB692 +:101D0000F894DEBF0FBECDBFE2EFF1E088E08E0FAA +:101D10009091F10091938E13FBCF0E94F509809171 +:101D2000E80083FF1FC18091F2019091F301492FD8 +:101D300050E04A30510508F015C1FA01EA5AFF4F48 +:101D40000C94B423803881F0823809F00BC1809163 +:101D5000F6018F708093E9008091EB0085FB882766 +:101D600080F91092E90006C08091EE019091EF0198 +:101D7000911182609091E800977F9093E8008093A2 +:101D8000F1001092F100C8C0282F2D7F09F0EAC0A1 +:101D9000882319F0823061F0E5C08091F401813030 +:101DA00009F0E0C0933009F080E08093EF012BC090 +:101DB0008091F401811127C08091F6018F7009F4A0 +:101DC000D1C08093E9002091EB0020FF1CC093302C +:101DD00021F48091EB00806214C09091EB0090613F +:101DE0009093EB0021E030E0A90102C0440F551FA1 +:101DF0008A95E2F74093EA001092EA008091EB00A6 +:101E000088608093EB001092E9008091E800877F62 +:101E100086C08111A7C01091F4011F778091E30063 +:101E20008078812B8093E3008091E800877F809306 +:101E3000E8000E94970C8091E80080FFFCCF809121 +:101E4000E30080688093E300111102C082E001C0CA +:101E500083E08093F10186C08058823008F082C010 +:101E60008091F4019091F5018C3D53E0950779F54F +:101E700083E08A838AE289834FB7F894DE01139660 +:101E800020E03EE051E2E32FF0E050935700E49170 +:101E900020FF03C0E295EF703F5FEF708E2F90E060 +:101EA000EA3010F0C79601C0C0968D939D932F5FC6 +:101EB000243149F74FBF8091E800877F8093E80085 +:101EC0006AE270E0CE0101960E949E0B14C0AE0142 +:101ED0004F5F5F4F6091F6010E94E50ABC010097D9 +:101EE00009F440C09091E800977F9093E8008981C1 +:101EF0009A810E94010C8091E8008B778093E80022 +:101F000031C0803879F58091E800877F8093E800C0 +:101F10008091ED018093F1008091E8008E778093AD +:101F2000E8000E94970C1EC081111CC09091F40122 +:101F30009230C0F48091E800877F8093E80090930E +:101F4000ED010E94970C8091ED01811106C08091F6 +:101F5000E30087FD02C081E001C084E08093F101CD +:101F60000E94E1098091E80083FF0AC08091E800A7 +:101F7000877F8093E8008091EB0080628093EB0084 +:101F8000AA960FB6F894DEBF0FBECDBFDF91CF91FA +:101F90001F9108950895CF938091F1018823A1F0B6 +:101FA000C091E900CF709091EC00892F817090FD75 +:101FB00080E8C82B1092E9008091E80083FD0E9420 +:101FC000790ECF70C093E900CF9108959093750179 +:101FD000809374010895E0917401F0917501309738 +:101FE00021F00190F081E02D099480E00895E091C6 +:101FF0007401F0917501309721F00280F381E02D9A +:1020000009940895E0917401F0917501309721F0E1 +:102010000480F581E02D099408952091720130919A +:1020200073018217930771F090937301809372018B +:10203000E0917401F0917501309721F00680F781ED +:10204000E02D09940895209170013091710182175B +:10205000930771F09093710180937001E091740186 +:10206000F0917501309721F00084F185E02D0994FD +:10207000089508950C9439100E94931B0E94340314 +:102080000C94551C9F92AF92BF92CF92DF92EF9229 +:10209000FF920F931F93CF93DF9300D000D000D017 +:1020A000CDB7DEB70E944C030DE010E0AA24A39444 +:1020B000B12C902E802F0E943A04980129583E4F4F +:1020C0006901F901F080F826A1F40150110988F79F +:1020D0008FEF89838A831B820E949C1B8160782FEB +:1020E0009D838C8349815A816B818D810E94D91097 +:1020F0002FC09091DA0191FF04C08E830E944004AA +:102100008E8125E030E0A501022E01C0440F0A9423 +:10211000EAF7E42E4F21C1F029839A828E2191E0C3 +:1021200009F490E09B830E949C1B8160782F9D8323 +:102130008C8349815A816B818D810E94D910F6016F +:102140008081E826E08204C021503109E0F6BDCF4D +:102150000E943C1F109176010E94EB0F1817B9F0F6 +:102160000E94EB0F8093760126960FB6F894DEBF9F +:102170000FBECDBFDF91CF911F910F91FF90EF90D8 +:10218000DF90CF90BF90AF909F900C94E40826967C +:102190000FB6F894DEBF0FBECDBFDF91CF911F9178 +:1021A0000F91FF90EF90DF90CF90BF90AF909F90F6 +:1021B0000895CF93DF93CDB7DEB72B970FB6F89482 +:1021C000DEBF0FBECDBF4F83588769877A878B8765 +:1021D000DE01119686E0FD0111928A95E9F785E00E +:1021E000FE01379601900D928A95E1F749815A8157 +:1021F0006B817C818D819E810E9422172B960FB668 +:10220000F894DEBF0FBECDBFDF91CF910895CF937D +:10221000882309F4C2C0C82F823859F40E94EB0FFA +:1022200081FDBBC089E30E94FC190E94C91A89E3A1 +:102230000CC0833879F40E94EB0F80FDAEC083E5BB +:102240000E94FC190E94C91A83E50E943E1ACF9190 +:102250000C94C91A843859F40E94EB0F82FD9DC07A +:1022600087E40E94FC190E94C91A87E4EECF8CEF24 +:102270008C0F813A48F48C2F0E947F2181118DC0F0 +:102280008C2F0E94FC19E3CF80E28C0F883048F439 +:10229000C77081E001C0880FCA95EAF70E94821AD0 +:1022A000D6CF8BE58C0F833078F4C53A29F0C63A47 +:1022B00031F083E890E005C081E890E002C082E858 +:1022C00090E0CF910C940D1088E58C0F833108F0CD +:1022D00064C0C83A39F1C93A41F1CA3A49F1CB3A36 +:1022E00051F1CC3A59F1CD3A61F1C03B69F1CE3AA6 +:1022F00071F1CF3A79F1C13B81F1C23B89F1C33B26 +:1023000091F1C43B99F1C53BA1F1C63BA9F1C73B93 +:10231000B1F1C83BB9F1C93BC1F1CA3BC9F180E099 +:1023200090E038C082EE90E035C089EE90E032C097 +:102330008AEE90E02FC085EB90E02CC086EB90E019 +:1023400029C087EB90E026C08CEC90E023C08DEC98 +:1023500090E020C083E891E01DC08AE891E01AC0B7 +:1023600082E991E017C084E991E014C081E292E033 +:1023700011C083E292E00EC084E292E00BC085E2DD +:1023800092E008C086E292E005C087E292E002C0D7 +:102390008AE292E0CF910C942310CF910895882384 +:1023A00009F44BC0823859F40E94EB0F81FF45C0FD +:1023B00089E30E94FC190E94C91A89E30CC0833882 +:1023C00071F40E94EB0F80FF38C083E50E94FC1976 +:1023D0000E94C91A83E50E943E1A0C94C91A8438D7 +:1023E00059F40E94EB0F82FF28C087E40E94FC1979 +:1023F0000E94C91A87E4EFCF9CEF980F913A58F3E7 +:1024000090E2980F983050F4877091E001C0990FD6 +:102410008A95EAF7892F0E94881ADFCF9BE5980FEB +:10242000933020F480E090E00C940D10885A8331B2 +:1024300020F480E090E00C9423100895882321F08C +:102440000E94821A0C94C91A0895882321F00E94D0 +:10245000881A0C94C91A08957F928F929F92AF9216 +:10246000BF92CF92DF92EF92FF920F931F93CF9381 +:10247000DF931F92CDB7DEB77C01C62E772EFC010D +:10248000058102950F70128111110E949F1A0E94FE +:10249000F519882379F0112369F080E28C0D8830DA +:1024A00048F082E00E94DE190E94F51991E0D82ED2 +:1024B000D92601C0D12CE72DE295EF70F0E0E05A6B +:1024C000FF4F0C94B423872D807F072D0F70882336 +:1024D00011F00295007F112389F0002309F490C1C7 +:1024E00080E28C0D883020F4802F0E94821A03C075 +:1024F000802F0E94921A0E94C91A82C18C2D0E94BC +:10250000CF11002309F495C180E28C0D883020F4AE +:10251000802F0E94881A03C0802F0E94981A0E9460 +:10252000C91A87C1972D907F872D8F70903211F037 +:102530008295807FCC2021F0F1E0CF16B1F01EC053 +:10254000112349F0002309F414C1013009F011C12D +:102550000E94B21A6EC1002319F0013009F469C15A +:1025600089830E94B51A89810AC1112321F00230A2 +:1025700008F05FC1FEC001115CC101C1112321F04F +:10258000002309F4F6C03CC1002309F4F8C03EC1A1 +:10259000872D86958695837090E0009719F00197B6 +:1025A00061F047C1112321F08C2D972D937002C04B +:1025B00080E090E00E940D103CC1112321F08C2D91 +:1025C000972D937002C080E090E00E94231031C1EB +:1025D0008C2D112319F00E94441E02C00E94AC1ED3 +:1025E0000E94311F26C1872D837009F052C011113E +:1025F00020C18C2D829586958770880F880F9C2D21 +:102600009F70892E912CA12CB12C082E04C0880C0F +:10261000991CAA1CBB1C0A94D2F7C4FE14C00FE07C +:1026200010E020E030E0B901A80104C0440F551FBC +:10263000661F771F8A95D2F7CB01BA016095709516 +:102640008095909503C060E070E0CB01272D269522 +:102650002695237030E02230310569F023303105B2 +:1026600089F0682979298A299B292130310571F05F +:102670000E946A18DEC0682979298A299B290E944C +:102680008618D7C00E946A18C501B4010E944E186E +:10269000D0C0112319F0872D817001C08695882341 +:1026A00009F4C7C08C2D829586958770880F880F96 +:1026B0009C2D9F70892E912CA12CB12C082E04C02A +:1026C000880C991CAA1CBB1C0A94D2F7C4FE14C027 +:1026D0000FE010E020E030E0B901A80104C0440F91 +:1026E000551F661F771F8A95D2F7CB01BA016095F7 +:1026F00070958095909503C060E070E0CB01272D28 +:10270000269526952370422F50E04230510569F0FE +:102710004330510589F0682979298A299B2941305C +:10272000510571F00E94441984C0682979298A29C9 +:102730009B290E9460197DC00E944419C501B40103 +:102740000E94281976C08C2D90E0FC01E05EF10912 +:10275000E531F10508F050C0E059FF4F0C94B42367 +:102760000C2D0F70872D8F71112331F00E94C1182D +:10277000802F0E941E125DC00E94E218802F0E94CE +:10278000251257C0112339F0011153C0872D8F71C5 +:102790000E9407194EC0023008F04BC0F7CF11233A +:1027A00039F0872D8F710E94C11843C01123C9F3DE +:1027B000872D8F710E94E2183CC0112329F0872DCC +:1027C0008F710E94AC1835C00E94A21832C011232C +:1027D00051F0172D1F71812F0E94C11863E0812FC6 +:1027E0000E94D51926C081E00E94DE19023008F14E +:1027F00082E00E94DE191DC0112331F0002389F20E +:102800008C2D0E94071115C0002391F28C2D0E947F +:10281000CF110FC0472D4F706C2DC7010E941605B8 +:102820000E94C61706C0472D4F706C2DC7010E942D +:10283000F305DD20F9F00E94D11980FD1BC0F701DE +:1028400012820E94CB190E94C118C7010E9449142C +:102850000E94CB190F90DF91CF911F910F91FF90A4 +:10286000EF90DF90CF90BF90AF909F908F907F9030 +:102870000C94E2180F90DF91CF911F910F91FF9070 +:10288000EF90DF90CF90BF90AF909F908F907F9010 +:1028900008950F931F93CF93DF93EC018881998163 +:1028A0002B813C81232BB9F09F3F11F48F3F99F08E +:1028B000CE010E944B05882371F0688179818A815D +:1028C0000E94C7198C010E947C190E944318B8010C +:1028D000CE010E942C12DF91CF911F910F9108958C +:1028E0000E949F1A0E94AF1A0E94741A0E94C91A6D +:1028F0000E94E21F0E94311F80E090E00E940D10B4 +:1029000080E090E00C9423100E948F1A0C947014B5 +:102910000E94BC19292F22952F7030E02C303105F0 +:102920004CF42A3031056CF4225031092230310543 +:10293000A8F407C02C30310569F02F30310551F073 +:102940000DC0803F69F018F4803E40F409C0843F18 +:1029500029F406C093FB882780F9089580E0089544 +:1029600081E00895CF93DF9300D000D01F92CDB7C0 +:10297000DEB70F900F900F900F900F90DF91CF91D7 +:102980000895CF93DF9300D000D000D0CDB7DEB74D +:1029900026960FB6F894DEBF0FBECDBFDF91CF9164 +:1029A00008951F93CF93DF93C091850116E0809126 +:1029B0008601C81799F0D0E01C9FF0011D9FF00D13 +:1029C0001124E957FE4F40815181628173818481D6 +:1029D00095810E94C1142196C770E9CFDF91CF91F4 +:1029E0001F9108954091B7015091B8016091B901CC +:1029F0007091BA018091BB019091BC010C94C114FB +:102A00008091BC0182958F7009F054C08091B9010A +:102A1000882309F44FC080918501A09186016091BF +:102A2000B7017091B8014091BA015091BB01B6E075 +:102A30008A1709F43FC090E041155105C1F17F3F6D +:102A400011F46F3FA1F1B89FF001B99FF00D11246F +:102A5000E957FE4F218172132AC02081621327C0DB +:102A60002281211124C0238134812417350710F4D9 +:102A700021503109241B350B283C3105C0F420912D +:102A8000BC012F7020612093BC0126E0289FF0013B +:102A9000299FF00D1124E457FE4F80818F708061D3 +:102AA000808387EB91E00E9449140C94D114019625 +:102AB0008770BECF0895CF92DF92EF92FF920F936F +:102AC0001F93CF93DF93CDB7DEB762970FB6F8941D +:102AD000DEBF0FBECDBF8C0185E0F801DE011D9683 +:102AE00001900D928A95E1F7D8014C9111965C9175 +:102AF000119712966C9112971396CD90DC901497C3 +:102B00003091B7017091B8018091BA019091BB01E9 +:102B1000009709F46BC17F3F19F43F3F09F466C188 +:102B2000E090B901EE2009F4C0C02091BC01C816A4 +:102B3000D90628F0F601E81BF90BCF0104C08095F7 +:102B400090958C0D9D1DFF24F394883C910578F0A1 +:102B5000F12C207F09F0C6C07C2DD98AC88A8989CA +:102B60000E94B21487EB91E00E944914B1C0822FF9 +:102B7000807F09F046C0751314C0341312C0611170 +:102B800010C02F7020612093BC010E94F21487EBCB +:102B900091E00E9449148091BC01D80115968C9354 +:102BA0002EC0CD2819F15F3F11F44F3FF9F0F62EFA +:102BB00061111CC0809185012091860136E0821749 +:102BC00009F45AC090E0389FF001399FF00D1124AC +:102BD000E957FE4F7181571306C07081471303C038 +:102BE0007281711103C001968770E9CFF62E6623BA +:102BF00009F418C18091BC0181608093BC01F12C63 +:102C000011C1751308C0341306C0611104C080914E +:102C1000BC01D801C3C04D875E878D859E856A8BB8 +:102C20000E9488146A898823E1F16623D1F12091FA +:102C3000BC01822F82958F7090E0029774F0809192 +:102C4000B7019091B80198878F831986DB86CA8671 +:102C50002C87CE0107960E94491486E0F801A7EB65 +:102C6000B1E001900D928A95E1F70E9400150E9453 +:102C7000F214FF24F394D6C04D875E878D859E8520 +:102C80000E94BC19292F22952F7030E02230310587 +:102C90000CF0BCC09F7009F0B6C0805E883008F4AC +:102CA000C1C0C8010E944914E4CFC816D90608F46F +:102CB00053C0F601E81BF90BCF01883C910508F4DD +:102CC00050C0F12C7C2DD98AC88A89890E94B214FF +:102CD000E7EBF1E086E0DF011D928A95E9F70E94BB +:102CE000F214A0C0751314C0341312C0611110C0C7 +:102CF0008091BC01F8018583C8010E94491486E0D7 +:102D0000E7EBF1E0DF011D928A95E9F7FE2C8AC01E +:102D10004D875E878D859E856A8B0E9488146A899F +:102D2000882309F4BECF662309F4BBCF2091BC01F0 +:102D3000822F82958F7090E002970CF48ECF809155 +:102D4000B7019091B8019A8389831B82DD82CC827E +:102D50002E83CE0101967FCF809590958C0D9D1D81 +:102D6000ACCFF62E662309F49CCF75132EC0341316 +:102D70002CC02091BC0120FD1FC0822F82958F7036 +:102D8000D9F0D80115962C9315978F3049F08F5FA5 +:102D9000982F9295907F822F8F70892B15968C9308 +:102DA000C8010E94491486E0F801A7EBB1E0019048 +:102DB0000D928A95E1F793CF86E0F801A7EBB1E099 +:102DC00001900D928A95E1F72DC04D875E878D8524 +:102DD0009E850E948814811140CF8091BC01816042 +:102DE0008093BC01C8010E9449141CC0662309F4E9 +:102DF00058CF4D875E878D859E850E9488148823D5 +:102E000009F44FCF2ACF811148CF0CC024303105AF +:102E10000CF047CF9F7009F440CFF8019581907F67 +:102E200009F03BCF8F2D62960FB6F894DEBF0FBE30 +:102E3000CDBFDF91CF911F910F91FF90EF90DF9069 +:102E4000CF9008951F93CF93DF93CDB7DEB72C9724 +:102E50000FB6F894DEBF0FBECDBF4F83588769878A +:102E60007A878B879C87CE0107960E945B15882303 +:102E700069F08F8198852A853B85232BF1F19F3F4F +:102E800009F063C08F3F09F060C037C086E0FE01E3 +:102E90003796DE01119601900D928A95E1F76F81C8 +:102EA0007885EA85FB85309741F17F3F11F46F3FCC +:102EB00021F12091860130E0C901019687709927A0 +:102EC0004091850150E08417950709F447C0698354 +:102ED0007A83FD83EC8396E0929FD001939FB00D9F +:102EE0001124A957BE4FFE01319601900D929A957B +:102EF000E1F7809386010E94D11416E0809185014C +:102F0000909186018917C1F1189FC001112489573A +:102F10009E4F0E945B15882379F1E09185011E9FE9 +:102F2000F0011124E957FE4F408151816281738184 +:102F3000848195810E94C1148091850190E0019661 +:102F40008770992780938501D9CF4F8158856985EE +:102F50007A858B859C850E94C114CFCF0E948414F2 +:102F60001092860110928501E7EBF1E086E0DF0127 +:102F70001D928A95E9F7C1CF2C960FB6F894DEBF63 +:102F80000FBECDBFDF91CF911F910895EF92FF92B9 +:102F90000F931F93CF93DF938C01009709F46CC0BC +:102FA000F12CEE24E394E8012196F8018491843712 +:102FB00040F4843008F051C0813081F0823019F142 +:102FC0005BC0853709F444C0A8F19CE7980F90379F +:102FD00008F052C08F770E94CF1141C00E5F1F4F83 +:102FE000FE01C49180E28C0F883048F4C7708E2DAA +:102FF00001C0880FCA95EAF70E94A21A14C08C2F4C +:103000000E9407112DC00E5F1F4FFE01C49180E288 +:103010008C0F883058F4C7708E2D01C0880FCA9568 +:10302000EAF70E94A81A0E94C91A1AC08C2F0E949F +:10303000CF1116C00E5F1F4FFE01C491CC2381F04B +:103040008FE99FE00197F1F700C00000C150F6CF73 +:103050000E5F1F4FFE01F49003C00E9407118E0106 +:103060008F2D882309F49FCFEFE9FFE03197F1F727 +:1030700000C000008150F5CFDF91CF911F910F91DB +:10308000FF90EF90089508956093C1017093C2017D +:103090008093C3019093C4010C9470140F931F93F9 +:1030A0000091C1011091C2012091C3013091C4016E +:1030B000DC01CB01802B912BA22BB32B8093C10180 +:1030C0009093C201A093C301B093C4011F910F91CB +:1030D0000C9470140F931F930091C1011091C201C1 +:1030E0002091C3013091C401DC01CB0180239123E5 +:1030F000A223B3238093C1019093C201A093C30183 +:10310000B093C4011F910F910C9470140F931F93EF +:103110000091C1011091C2012091C3013091C401FD +:10312000DC01CB0180279127A227B3278093C1011F +:103130009093C201A093C301B093C4011F910F915A +:103140000C9470141092BD011092BE011092BF0138 +:103150001092C0010C94701441E050E060E070E007 +:1031600004C0440F551F661F771F8A95D2F74093FE +:10317000BD015093BE016093BF017093C0010C94D8 +:10318000701441E050E060E070E004C0440F551F4F +:10319000661F771F8A95D2F78091BD019091BE017D +:1031A000A091BF01B091C001482B592B6A2B7B2BFA +:1031B0004093BD015093BE016093BF017093C00165 +:1031C0000C94701441E050E060E070E004C0440FE3 +:1031D000551F661F771F8A95D2F7409550956095C9 +:1031E00070958091BD019091BE01A091BF01B091F9 +:1031F000C001482359236A237B234093BD01509388 +:10320000BE016093BF017093C0010C94701441E043 +:1032100050E060E070E004C0440F551F661F771F48 +:103220008A95D2F78091BD019091BE01A091BF0116 +:10323000B091C001482759276A277B274093BD01D9 +:103240005093BE016093BF017093C0010C94701441 +:103250000F931F930091BD011091BE012091BF01FA +:103260003091C001DC01CB01802B912BA22BB32B21 +:103270008093BD019093BE01A093BF01B093C001A4 +:103280001F910F910C9470140F931F930091BD0127 +:103290001091BE012091BF013091C001DC01CB0132 +:1032A00080239123A223B3238093BD019093BE0179 +:1032B000A093BF01B093C0011F910F910C947014A3 +:1032C0000F931F930091BD011091BE012091BF018A +:1032D0003091C001DC01CB0180279127A227B327C1 +:1032E0008093BD019093BE01A093BF01B093C00134 +:1032F0001F910F910C9470140895CF92DF92EF926A +:10330000FF920F931F93CF93DF938C01C090C10165 +:10331000D090C201E090C301F090C4018091BD0142 +:103320009091BE01A091BF01B091C001C82AD92AD5 +:10333000EA2AFB2ACFE1D0E0D701C6010C2E04C057 +:10334000B695A795979587950A94D2F780FF06C002 +:10335000B8018C2F0E944908019721F4219760F74A +:1033600080E001C08C2FDF91CF911F910F91FF90D2 +:10337000EF90DF90CF900895CF93DF93EC010E9400 +:103380007D19BE010E944908DF91CF910895CB01BC +:103390000E94BC1908958091C501859585958595F4 +:1033A00008958091C5018770089598E0899F9001E4 +:1033B0001124262B2093C5010C94C1182091C5011E +:1033C000809582238093C501982F977069F430E02F +:1033D000482F552747FD50952417350729F0859527 +:1033E000859585950C94E21808959091C501977084 +:1033F00081E009F480E0089590910C01992321F077 +:1034000090910D01911109C020910E0130910F0191 +:10341000F90132969FEF40E01FC0982F9695969540 +:1034200096959F3050F5E0910E01F0910F01E90F54 +:10343000F11D877021E030E0A90102C0440F551F43 +:103440008A95E2F7CA019181892B818308959F3F74 +:1034500039F04F5F4E3041F051915813F8CF0DC005 +:103460005111F7CF942FF5CF9F3F39F0F901E90FB4 +:10347000F11D97FDFA9582830895089590910C01AE +:10348000992321F090910D01911109C020910E0115 +:1034900030910F01F9013296205F3F4F1FC0982FE6 +:1034A0009695969596959F30F0F4E0910E01F091E7 +:1034B0000F01E90FF11D877021E030E0A90102C082 +:1034C000440F551F8A95E2F7CA018095918189239F +:1034D000818308953196E217F30729F090819813BC +:1034E000F9CF1082F7CF089581E090E0E0910E01CE +:1034F000F0910F01E80FF91F1082019680319105BC +:10350000A9F708959091D901892B8093D901089545 +:1035100080959091D90189238093D90108951092C3 +:10352000D90108959091D801892B8093D8010895ED +:1035300080959091D80189238093D80108951092A5 +:10354000D80108959091D701892B8093D7010895D0 +:1035500080959091D70189238093D7010895109287 +:10356000D70108958093C60108951092C601089569 +:1035700080910E0190910F01FC0131969C01205F1A +:103580003F4F80E0919191118F5FE217F307D1F7E0 +:103590000895E0910E01F0910F018091D90180838F +:1035A000E0910E01F0910F0190818091D801892B5B +:1035B0008083E0910E01F0910F0190818091D701FD +:1035C000892B80838091C601882361F0E0910E01F0 +:1035D000F0910F019081892B80830E94B81A81118C +:1035E0001092C60180910E0190910F010C94F70F7B +:1035F00020E0009739F0AC01415051098423952314 +:103600002F5FF7CF822F0895CF92DF92EF92FF9234 +:103610006C01EE24FF24C114D104E104F10421F073 +:10362000C701B60120E101C020E0C72ED82EE92E47 +:10363000FF24C114D104E104F10419F0285FC7018B +:10364000B6016B017C0154E0F694E794D794C794DB +:103650005A95D1F7C114D104E104F10419F02C5F9B +:10366000C701B6016B017C0142E0F694E794D79460 +:10367000C7944A95D1F7C114D104E104F10419F0BB +:103680002E5FC701B601DC01CB01B695A7959795D2 +:103690008795892B8A2B8B2B09F02F5F822FFF9028 +:1036A000EF90DF90CF9008958091F101843021F167 +:1036B0001092DB0120E488E190E00FB6F894A89521 +:1036C000809360000FBE2093600080E00E94E408B9 +:1036D00083B7817F846083BF83B7816083BF789421 +:1036E000889583B78E7F83BF88E10FB6F894809367 +:1036F0006000109260000FBE0895089508950E9422 +:103700007D1B0E944C030E947E1B0E94410491E09D +:10371000811101C090E0892F08950E9484140E94B5 +:10372000EB0F0C94E40882E084BD93E095BD9AEF22 +:1037300097BD80936E0008952FB7F8948091DC01B7 +:103740009091DD01A091DE01B091DF012FBF0895BE +:10375000CF92DF92EF92FF920F931F932FB7F894BF +:103760004091DC015091DD016091DE017091DF013B +:103770002FBF6A017B01EE24FF248C0120E030E0A2 +:10378000C016D106E206F30610F4415051099A0121 +:10379000281B390BC9011F910F91FF90EF90DF900B +:1037A000CF9008951F920F920FB60F9211248F930E +:1037B0009F93AF93BF938091DC019091DD01A09125 +:1037C000DE01B091DF010196A11DB11D8093DC01E6 +:1037D0009093DD01A093DE01B093DF01BF91AF9123 +:1037E0009F918F910F900FBE0F901F9018950E9480 +:1037F000E80CF8942FEF87EA91E621508040904042 +:10380000E1F700C0000087E090EBDC018093FB0152 +:103810009093FC01A093FD01B093FE019CE088E130 +:103820000FB6F894A895809360000FBE9093600047 +:10383000FFCFEF92FF920F931F93CF93DF93D82F79 +:10384000CDE08C2F0E943A0405E010E0E82EF12C28 +:10385000C701002E02C0959587950A94E2F780FF74 +:1038600009C0602F7C2F80E00E94F405D81302C0AD +:1038700081E006C00150110958F7C15010F780E0EF +:10388000DF91CF911F910F91FF90EF900895CF930B +:10389000C82F8CE20E94191C882321F08C2FCF9115 +:1038A0000C94191C80E0CF910895CF930E949C1D29 +:1038B000811102C00E94821DC5E6C15049F00E94DC +:1038C0004C038FE39CE90197F1F700C00000F5CFAE +:1038D00089E20E94471C811113C18AE20E94471CA1 +:1038E00081110E94821D85E00E94471C81110E9467 +:1038F000F71B0E94A71D8093DA0187E00E94471CF6 +:103900008823A9F18BE10E94471C882351F0809104 +:10391000DA0181FB222720F991E0922790FB81F9BF +:103920000EC08EE00E94471C882361F08091DA016E +:1039300082FB222720F991E0922790FB82F9809365 +:10394000DA0115C080E10E94471C9091DA018823BA +:1039500041F093FB222720F981E0822780FB93F935 +:1039600004C0892F809580FB90F99093DA018091B3 +:10397000DA010E94AB1D0E94B91D8093FA0180EE0E +:103980000E94471C882341F08091FA01982F90955E +:1039900090FB80F98093FA0189E30E94471C8823F9 +:1039A00059F08091FA0181FB222720F991E09227BA +:1039B00090FB81F98093FA0182EE0E94471C8823D4 +:1039C00059F08091FA0182FB222720F991E0922799 +:1039D00090FB82F98093FA0186EE0E94471C8823AF +:1039E00059F08091FA0183FB222720F991E0922778 +:1039F00090FB83F98093FA0183EE0E94471C882391 +:103A000059F08091FA0184FB222720F991E0922756 +:103A100090FB84F98093FA0185E30E94471C882378 +:103A200059F08091FA0185FB222720F991E0922735 +:103A300090FB85F98093FA0181E30E94471C88235B +:103A400059F08091FA0186FB222720F991E0922714 +:103A500090FB86F98093FA0181E10E94471C88233C +:103A600059F08091FA0187FB222720F991E09227F3 +:103A700090FB87F98093FA018091FA010E94BD1DA5 +:103A80008091FA0187FB882780F980930D0187E2F6 +:103A90000E94471CC82F8EE10E94471C8111C26002 +:103AA0008FE10E94471C8111C46080E20E94471C84 +:103AB0008111C86081E20E94471C8111C06182E2CD +:103AC0000E94471C8111C06283E20E94471C811141 +:103AD000C06484E20E94471C882311F0C06802C0C1 +:103AE000CC2329F08C2F0E94B41D6C2F03C00E94A0 +:103AF000B01D682F70E080E090E0CF910C944418E6 +:103B0000CF9108956DEE7EEF80E090E00E94EE236D +:103B100060E082E090E00E94DC2360E083E090E0DF +:103B20000E94DC2360E084E090E00E94DC2360E0FF +:103B300085E090E00C94DC2380E090E00E94D623A6 +:103B400021E08D3E9E4F09F020E0822F089582E013 +:103B500090E00C94CE23682F82E090E00C94DC235C +:103B600083E090E00C94CE23682F83E090E00C94E7 +:103B7000DC2384E090E00C94CE23682F84E090E076 +:103B80000C94DC238091E20180FF0BC06091130153 +:103B900085E0689FB00111247595679575956795C7 +:103BA0002BC081FF09C06091130185E0689FB001BF +:103BB00011247595679520C082FF07C0609113019D +:103BC00085E0689FB001112417C09091E30199230B +:103BD000D1F060911201961788F72091130185E0CA +:103BE000289F90011124929FA001939F500D1124B2 +:103BF00070E0CA010E94A0236038710540F461158D +:103C0000710539F002C065E070E0862F08958FE7F6 +:103C1000089581E008958091E20180FF08C06091DD +:103C2000110170E0759567957595679521C081FFC5 +:103C300006C06091110170E07595679519C082FF0B +:103C400004C06091110170E010C09091E3019923CC +:103C5000C1F0609110019617A0F780911101899F22 +:103C6000C001112470E00E94A0236038710528F47F +:103C70006115710521F0862F08958FE7089581E081 +:103C8000089561E070E0F4CF803F21F40E94C21DEE +:103C9000819504C0813F29F40E94C21D8093E601F2 +:103CA0000895823F21F40E94C21D819504C0833F84 +:103CB00029F40E94C21D8093E5010895893F19F4FB +:103CC0000E940B1E05C08A3F31F40E940B1E819595 +:103CD0008093E70108958B3F21F40E940B1E81958C +:103CE00004C08C3F29F40E940B1E8093E8010895C4 +:103CF000843F21F48091E401816017C0853F21F465 +:103D00008091E401826011C0863F21F48091E4013A +:103D100084600BC0873F21F48091E401886005C076 +:103D2000883F31F48091E40180618093E40108953B +:103D30008D3F21F48091E20181600BC08E3F21F420 +:103D40008091E201826005C08F3F29F48091E201F9 +:103D500084608093E2010895803F39F48091E60108 +:103D600087FF6CC01092E60169C0813F29F4809101 +:103D7000E6011816BCF362C09091E501823F29F478 +:103D800097FF5CC01092E50159C0833F19F41916E2 +:103D9000CCF354C0893F41F48091E70118160CF030 +:103DA0004DC01092E7014AC08A3F29F48091E70193 +:103DB00087FF44C0F6CF8B3F39F48091E80187FF3D +:103DC0003DC01092E8013AC08C3F29F48091E8018F +:103DD0001816BCF333C0843F21F48091E4018E7F38 +:103DE00017C0853F21F48091E4018D7F11C0863F8B +:103DF00021F48091E4018B7F0BC0873F21F48091F7 +:103E0000E401877F05C0883F31F48091E4018F7E13 +:103E10008093E40113C08D3F21F48091E2018E7FF5 +:103E20000BC08E3F21F48091E2018D7F05C08F3F52 +:103E300029F48091E2018B7F8093E2018091E5017A +:103E400081110EC08091E60181110AC08091E701C5 +:103E5000811106C08091E801811102C01092E30136 +:103E6000089584EE91E00E9402100E949C1B9093A2 +:103E7000E1018093E00108951F93CF93DF93809138 +:103E8000E0019091E1010E94A81BAC019091E30137 +:103E9000992321F02091140130E006C020911501F2 +:103EA0008AE0289F900111244217530708F486C026 +:103EB0008091E501C091E601D091E7011091E80100 +:103EC000811107C0C11176C0D11174C0111172C027 +:103ED00075C09F3F19F09F5F9093E301181624F47B +:103EE0000E94C21D8093E5018091E50187FF05C016 +:103EF0000E94C21D81958093E5011C1624F40E9446 +:103F0000C21D8093E6018091E60187FF05C00E94F3 +:103F1000C21D81958093E6016091E501662339F128 +:103F2000C091E601CC2319F1772767FD7095872FA3 +:103F3000972F0E94B12223E333E343E35FE30E9420 +:103F400015230E947E226093E5016C2F772767FD81 +:103F50007095872F972F0E94B12223E333E343E329 +:103F60005FE30E9415230E947E226093E6011D16E6 +:103F700024F40E940B1E8093E7018091E70187FFE4 +:103F800005C00E940B1E81958093E701111624F451 +:103F90000E940B1E8093E8018091E80187FF05C015 +:103FA0000E940B1E81958093E801DF91CF911F91B4 +:103FB0000C94311F9F3F09F08ECF96CFDF91CF91A8 +:103FC0001F910895E4EEF1E085E0DF011D928A95EE +:103FD000E9F71092E3011092E2010895833081F134 +:103FE00028F4813059F08230D1F00895853009F4F9 +:103FF00049C0B8F1863009F456C008958091150182 +:10400000262F30E0280F311D2F3F310524F4680F93 +:104010006093150108958FEF8093150108958091A5 +:104020001401262F30E0280F311D2F3F310524F4D5 +:10403000680F6093140108958FEF80931401089521 +:1040400080911301262F30E0280F311D2F3F3105BD +:1040500024F4680F6093130108958FEF8093130188 +:10406000089580911201262F30E0280F311D2F3F37 +:10407000310524F4680F6093120108958FEF809347 +:104080001201089580911101262F30E0280F311D73 +:104090002F3F310524F4680F6093110108958FEFCD +:1040A00080931101089580911001262F30E0280F90 +:1040B000311D2F3F310524F4680F609310010895DE +:1040C0008FEF809310010895833011F128F481302F +:1040D00049F0823091F00895853081F120F18630E9 +:1040E000C1F1089580911501681720F4861B809313 +:1040F0001501089510921501089580911401681713 +:1041000020F4861B809314010895109214010895E1 +:1041100080911301681720F4861B80931301089582 +:1041200010921301089580911201681720F4861BE4 +:104130008093120108951092120108958091110147 +:10414000681720F4861B80931101089510921101C5 +:10415000089580911001681720F4861B8093100148 +:1041600008951092100108950F931F938D3109F453 +:104170006BC008F03FC08E3009F47FC0C0F48730B8 +:1041800009F469C068F4863009F0B1C08091DA01A1 +:10419000817F8E7F8093DA0181E08093EA01A8C05D +:1041A000883009F4A2C08B3009F49FC0A0C08631CA +:1041B00009F49BC078F4803109F472C0813109F0B0 +:1041C00096C00E94841490910D0181E0892780930C +:1041D0000D018BC0893109F488C08B3109F087C08B +:1041E0008091DA0181FB222720F991E0922790FB50 +:1041F00081F94CC0853309F470C048F4873209F462 +:104200006CC008F459C0893209F467C070C08334A7 +:1042100038F48A3308F04EC0883309F466C067C0AA +:10422000833409F45AC0883409F061C00E948414B0 +:104230000FEF13ED20E3015010402040E1F700C0E4 +:1042400000000E94F71B51C00E9438220E94EB0F11 +:104250000E94E4084AC09091DA01892F809581700C +:1042600080FB90F929F0966098609093DA0140C045 +:10427000997F977F9093DA0138C08091DA0182FBB1 +:10428000222720F991E0922790FB82F98093DA01AE +:10429000992359F18091DA0181608093DA0125C078 +:1042A0008091DA0183FB222720F991E0922790FB8D +:1042B00083F9ECCF895301C08D5141E050E060E0BB +:1042C00070E08A019B0104C0000F111F221F331FE1 +:1042D0008A95D2F7C901B80104C061E070E080E0BE +:1042E00090E00E9444180E94841481E001C080E0A4 +:1042F0001F910F91089580E0089580E00895CF9375 +:10430000C82F8091EA01813079F018F08230E9F10C +:1043100087C0E0910E01F0910F018081813169F039 +:10432000823209F07FC009C0E0910E01F0910F01C7 +:104330008081813111F0823261F48C2F0E947B21C7 +:10434000811104C08C2F0E94B4201DC081E090E038 +:104350001AC08C2F0E947D21811114C0C43179F0C4 +:1043600048F4CB3079F0C03109F060C082E080932E +:10437000EA0108C0C93219F0C83321F057C01092C1 +:10438000EA0154C081E0817053C0C93289F118F547 +:10439000C43171F1A8F4C73009F046C08AE08093B7 +:1043A000150194E19093140193E09093130180938D +:1043B000120188E08093110188E28093100134C0DB +:1043C000CE51C63088F5EC2FF0E0E65DFE4F8081DF +:1043D0008093E90129C0CE34E9F020F4CB3421F5F3 +:1043E0006AE013C0C13579F0C235F1F461E00DC067 +:1043F0008091E901882319F01092E90115C081E04C +:104400008093EA0115C061E006C08091E9010E9435 +:10441000EE1F0AC06AE08091E9010E94642004C096 +:104420001092EA0180E004C081E002C080E0ABCFDE +:10443000CF910895E1E8F0E08081886080838081F9 +:10444000816080838FB7F89493E09093890090ED1A +:10445000909388008FBF0895EFE6F0E0808182603E +:1044600080830895EFE6F0E080818D7F808308955A +:10447000EFE6F0E0908182E08927808308951F9223 +:104480000F920FB60F9211242F933F934F935F9388 +:104490006F937F938F939F93AF93BF93EF93FF930C +:1044A0008091EB019091EC0101969093EC01809347 +:1044B000EB01811103C082E00E94E408E091EC016D +:1044C000E695E695F0E0EA54FB4FE4918091EB012C +:1044D0008E1303C080E00E94E408FF91EF91BF912A +:1044E000AF919F918F917F916F915F914F913F918C +:1044F0002F910F900FBE0F901F90189504D06894C5 +:10450000B1118DC0089570D088F09F5790F0B92FE9 +:104510009927B751A0F0D1F0660F771F881F991F18 +:104520001AF0BA95C9F712C0B13081F077D0B1E076 +:10453000089574C0672F782F8827B85F39F0B93F86 +:10454000CCF3869577956795B395D9F73EF490951A +:104550008095709561957F4F8F4F9F4F0895E89498 +:1045600009C097FB3EF490958095709561957F4FBB +:104570008F4F9F4F9923A9F0F92F96E9BB27939569 +:10458000F695879577956795B795F111F8CFFAF479 +:10459000BB0F11F460FF1BC06F5F7F4F8F4F9F4FAA +:1045A00016C0882311F096E911C0772321F09EE808 +:1045B000872F762F05C0662371F096E8862F70E06E +:1045C00060E02AF09A95660F771F881FDAF7880F48 +:1045D0009695879597F9089557FD9058440F551F64 +:1045E00059F05F3F71F04795880F97FB991F61F075 +:1045F0009F3F79F087950895121613061406551FEC +:10460000F2CF4695F1DF08C0161617061806991F57 +:10461000F1CF86957105610508940895E894BB274C +:1046200066277727CB0197F908950BD078C069D01A +:1046300028F06ED018F0952309F05AC05FC01124FD +:10464000EECFCADFA0F3959FD1F3950F50E0551F31 +:10465000629FF001729FBB27F00DB11D639FAA27D7 +:10466000F00DB11DAA1F649F6627B00DA11D661F26 +:10467000829F2227B00DA11D621F739FB00DA11D47 +:10468000621F839FA00D611D221F749F3327A00D01 +:10469000611D231F849F600D211D822F762F6A2F9D +:1046A00011249F5750408AF0E1F088234AF0EE0F22 +:1046B000FF1FBB1F661F771F881F91505040A9F72F +:1046C0009E3F510570F014C0AACF5F3FECF3983EB7 +:1046D000DCF3869577956795B795F795E7959F5F96 +:1046E000C1F7FE2B880F911D9695879597F9089530 +:1046F00097F99F6780E870E060E008959FEF80EC95 +:10470000089500240A941616170618060906089537 +:1047100000240A9412161306140605060895092E9D +:104720000394000C11F4882352F0BB0F40F4BF2B0C +:1047300011F460FF04C06F5F7F4F8F4F9F4F08954C +:1047400097FB072E16F4009407D077FD09D00E943E +:10475000BA2307FC05D03EF4909581959F4F0895AC +:10476000709561957F4F0895EE0FFF1F0590F491AE +:10477000E02D0994AA1BBB1B51E107C0AA1FBB1F58 +:10478000A617B70710F0A61BB70B881F991F5A95DD +:10479000A9F780959095BC01CD010895F999FECFB8 +:1047A00092BD81BDF89A992780B50895A8E1B0E03F +:1047B00042E050E00C94F623262FF999FECF92BDEB +:1047C00081BDF89A019700B4021639F01FBA20BDD6 +:1047D0000FB6F894FA9AF99A0FBE08950196272F0A +:1047E0000E94DD230C94DC23DC01CB01FC01F99950 +:1047F000FECF06C0F2BDE1BDF89A319600B40D922D +:0C48000041505040B8F70895F894FFCFE5 +:10480C000220E608740951091D09E9080101C701D4 +:10481C0028080A03140A3F4D363977042A04F40396 +:10482C00BB034E03670380039903010203040506CF +:04483C000708090060 +:00000001FF diff --git a/keyboards/ergodox_ez/keymaps/j3rn/keymap.c b/keyboards/ergodox_ez/keymaps/j3rn/keymap.c new file mode 100644 index 0000000000..6e271321d5 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/j3rn/keymap.c @@ -0,0 +1,187 @@ +#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 | [ | | ] | 6 | 7 | 8 | 9 | 0 | BkSp | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Tab | Q | W | E | R | T | - | | = | Y | U | I | O | P | \ | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * |Ctrl/Esc|A / L2| S | D | F | G |------| |------| H | J | K | L | ; | ' | + * |--------+------+------+------+------+------| Hyper| | Meh |------+------+------+------+------+--------| + * | LShift |Z/Ctrl| X | C | V | B | | | | N | M | , | . |//Ctrl| RShift | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | ~L1 | ~L2 |AltShf| Left | Right| | Up | Down | [ | ] | ~L1 | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | App | Home | | PgUp |Ctrl/Esc| + * ,------|------|------| |------+--------+------. + * | | | End | | PgDn | | | + * |Space | LGui |------| |------| Tab |Enter | + * | | |Shift | | Alt | | | + * `--------------------' `----------------------' + */ +// 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, KC_LBRC, + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_MINS, + CTL_T(KC_ESC), LT(MDIA, KC_A),KC_S, KC_D, KC_F, KC_G, + KC_LSFT, CTL_T(KC_Z), KC_X, KC_C, KC_V, KC_B, ALL_T(KC_NO), + KC_FN1, KC_FN2, LALT(KC_LSFT), KC_LEFT,KC_RGHT, + + ALT_T(KC_APP), KC_HOME, + KC_END, + KC_SPC, KC_LGUI, KC_LSHIFT, + // right hand + KC_RBRC, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, + KC_EQL, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, + KC_H, KC_J, KC_K, KC_L, KC_SCLN, 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_PGUP, CTL_T(KC_ESC), + KC_PGDN, + KC_LALT, KC_TAB, KC_ENT + ), +/* Keymap 1: Symbol Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | ! | @ | { | } | | | | | | Up | 7 | 8 | 9 | * | F12 | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | # | $ | ( | ) | ` |------| |------| Down | 4 | 5 | 6 | + | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | % | ^ | [ | ] | ~ | | | | & | 1 | 2 | 3 | \ | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | . | 0 | = | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// SYMBOLS +[SYMB] = KEYMAP( + // left hand + KC_TRNS,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, + KC_TRNS,KC_EXLM,KC_AT, KC_LCBR,KC_RCBR,KC_PIPE,KC_TRNS, + KC_TRNS,KC_HASH,KC_DLR, KC_LPRN,KC_RPRN,KC_GRV, + KC_TRNS,KC_PERC,KC_CIRC,KC_LBRC,KC_RBRC,KC_TILD,KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS, + KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS, + // right hand + KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + KC_TRNS, KC_UP, KC_7, KC_8, KC_9, KC_ASTR, KC_F12, + KC_DOWN, KC_4, KC_5, KC_6, KC_PLUS, KC_TRNS, + KC_TRNS, KC_AMPR, KC_1, KC_2, KC_3, KC_BSLS, KC_TRNS, + KC_TRNS,KC_DOT, KC_0, KC_EQL, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), +/* Keymap 2: Media and mouse keys + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | | | | | | | | | Lclk | Rclk | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | |------| |------|MsLeft|MsDown| MsUp |MsRght| | Play | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | | Prev | Next | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | |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_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + // right hand + 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_MS_L, KC_MS_D, KC_MS_U, KC_MS_R, KC_TRNS, KC_MPLY, + KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, + KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_WBAK +), +}; + +const uint16_t PROGMEM fn_actions[] = { + [1] = ACTION_LAYER_TAP_TOGGLE(SYMB), // FN1 - Momentary Layer 1 (Symbols) + [2] = ACTION_LAYER_TAP_TOGGLE(MDIA) // FN2 - Momentary Layer 2 (Media) +}; + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + // MACRODOWN only works in this function + switch(id) { + case 0: + if (record->event.pressed) { + register_code(KC_RSFT); + } else { + unregister_code(KC_RSFT); + } + 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/keyboards/ergodox_ez/keymaps/j3rn/readme.md b/keyboards/ergodox_ez/keymaps/j3rn/readme.md new file mode 100644 index 0000000000..fc4b640426 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/j3rn/readme.md @@ -0,0 +1,29 @@ +# J3RN's Mac-centric ErgoDox EZ keymap + +## Motivation + +Essentially, I wanted to switch to a layout that was less jarring than the default ErgoDox EZ layout, and did not require finger gymnastics to perform common OS X shortcuts (most of which involve the CMD (LGui) key). + +## How is it different from the default ErgoDox EZ layout? + +This layout more closely resembles that of the Mac keyboard, and has some other goodness baked in. Here is a rundown of what that means: + +### Mac-like changes + +- **The key to the left of "1" is "~" instead of "=".** +- **The key to the right of "0" is Backspace instead of "-"** (misleadingly labeled "delete" on the Mac's keyboard). There was no room to fit in "-" and "=" between "0" and Backspace, unfortunately. +- **The key to the left of "Q" is Tab instead of Delete.** +- **The rightmost big key on the left thumb is CMD (LGui) instead of Backspace.** + +### Other changes + +- **The button to the left of "A" is Ctrl/Esc instead of Backspace.** This is actually how I have the keyboard on my Macbook set up to be, since it's loads more convenient than a CAPS LOCK key. This is the Ctrl key I find myself using most. +- **Mouse uses Vim-style navigation**. To activate "Media mode," hold the 'a' key. This allows you to move the mouse around with hjkl just like in Vim. Additionally, right and left click are the conveniently placed 'i' and 'o' keys. +- **The key to the right of "5" and the key to left of "6" are "[" and "]", respectively, instead of Left and Right.** There is a more convenient set of Left and Right already present. Truth be told, I don't really use these keys, as they are a stretch to reach. +- **The Toggle L1 keys have been replaced by the otherwise displaced "-" and "=".** They are laid out, left-to-right, in the same order as on the Mac keyboard. Honestly, they are not terribly conveniently placed, and their placement might change in a later version. I found that I did not toggle L1 frequently at all, and found using the momentary keys to access L1 to fit my workflow better. +- **The "~"/L1 key in the bottom-left is now just momentary L1.** The "~" key was moved to the top-left as mentioned before, and I like to keep my multi-use keys to a minimum due to the latency for them to switch from "press" to "hold." +- **The Home and End buttons have been shifted up on the left thumb, and Shift inserted below them.** This makes doing Shift-5 and other such combinations less painful. +- **The Page Up and Page Down buttons have been shifted up on the right thumb, and Alt was moved from above them to below them.** I use Alt more than Page Up or Page Down (mostly in terminal applications), and thought that it deserved a more accessible location. + + +**I'm always open to feedback and/or suggestions!** diff --git a/keyboards/ergodox_ez/keymaps/jack/compiled.hex b/keyboards/ergodox_ez/keymaps/jack/compiled.hex new file mode 100644 index 0000000000..b5f54dd926 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/jack/compiled.hex @@ -0,0 +1,1158 @@ +:100000000C947A020C94BE020C94BE020C94BE02B4 +:100010000C94BE020C94BE020C94BE020C94BE0260 +:100020000C94BE020C94BE020C94620D0C94340E1F +:100030000C94BE020C94BE020C94BE020C94BE0240 +:100040000C94BE020C943E220C94BE020C94BE0290 +:100050000C94BE020C94D11B0C94BE020C94BE02F4 +:100060000C94BE020C94BE020C94BE020C94BE0210 +:100070000C94BE020C94BE020C94BE020C94BE0200 +:100080000C94BE020C94BE020C94BE020C94BE02F0 +:100090000C94BE020C94BE020C94BE020C94BE02E0 +:1000A0000C94BE020C94BE020C94BE02A10EC30EB0 +:1000B000B10FC30EB10F080F2B0FB10F800F930FAD +:1000C0006212621291129112C712E71218141814D8 +:1000D000F2121814A213A2130914181418141214EB +:1000E000AF13AF13AF13AF13AF13AF13AF13AF1300 +:1000F000AF13AF13AF13AF13AF13AF13AF13AF13F0 +:10010000C113CE13D513DC13E6130000F0A10000D9 +:100110002B002900E100000000001E001400040074 +:100120001D00E0004D001F001A0016001B00E20039 +:100130002C002000080007000600E3002C0021002E +:1001400015000900190002524A00220017000A0097 +:1001500005000000657400000000000000000000C1 +:10016000E300000000000000000000000000230089 +:100170001C000B00110000000000240018000D00FE +:10018000100001524B0025000C000E0036005000FC +:100190002C00260012000F00370051002C00270011 +:1001A00013003300380052004E0000002A003400D3 +:1001B00028004F000000010035000100010001008F +:1001C00000003A001E003A004000010001003B0020 +:1001D0001F003B004100010001003C0020003C00EA +:1001E0004200010001003D0021003D0043000100EC +:1001F00001003E0022003E0044000000010001001A +:1002000001000000010000000100010001000000E9 +:100210000100000001003F0023003F0045000000F6 +:100220000100400024002D000000010001004100F9 +:1002300025002E000000AB000100420026002F0028 +:100240000000AA0001004300270030000050A90070 +:10025000010044002A0031000100AE00000001004E +:100260003502010001000100000001001E023A00F9 +:1002700040000100010001001F023B00410001009D +:100280000100010020023C004200010001000100C9 +:1002900021023D00430001000100010022023E0056 +:1002A0004400000001000100010000000100000006 +:1002B0000100010001000000010000000100010038 +:1002C00023023F00450000000100010024022D022E +:1002D000000001000100010025022E020000AB0019 +:1002E0000100010026022F020000AA000100010007 +:1002F000270230020050A900010001002A0031024B +:100300000100AE00000016034500720067006F0098 +:1003100044006F007800200045005A0000001603DA +:100320004500720067006F0044006F0078002000F5 +:1003300045005A0000000403090409026D0004018D +:1003400000A0FA09040000010301010009211101C4 +:100350000001223F000705810308000A090401008B +:100360000103010200092111010001224D000705CE +:10037000820308000A0904020001030000000921A9 +:10038000110100012236000705830308000A090451 +:1003900003000103000000092111010001223900BE +:1003A000070584031000011201100100000008ED90 +:1003B000FE071301000102000105010906A1010564 +:1003C0000719E029E7150025019508750181020547 +:1003D000081901290595057501910295017503918B +:1003E0000105071900297715002501957875018108 +:1003F00002C005010980A101850216010026B7008F +:100400001A01002AB700751095018100C0050C097A +:1004100001A1018503160100269C021A01002A9CF5 +:1004200002751095018100C005010902A1010901B1 +:10043000A10005091901290515002501950575017A +:10044000810295017503810105010930093115818A +:10045000257F95027508810609381581257F95014C +:1004600075088106050C0A38021581257F950175EE +:10047000088106C0C005010906A101050719E02988 +:10048000E715002501950875018102950175088120 +:100490000105081901290595057501910295017558 +:1004A0000391010507190029FF150025FF95067521 +:1004B000088100C0000000000000000000000001F2 +:1004C0000204060A0F17202C3A4A5D71879DB3C7B4 +:1004D000DAE9F5FCFFFCF5E9DAC7B39D87715D4AFF +:1004E0003A2C20170F0A0604020100000000000049 +:1004F0000000000011241FBECFEFDAE0DEBFCDBF49 +:1005000004B603FE24C08091FB019091FC01A091F0 +:10051000FD01B091FE018730904BA740B04BB9F47C +:100520001092FB011092FC011092FD011092FE014D +:1005300014BE84B7877F84BF88E10FB6F894809398 +:100540006000109260000FBEE0E0FFE3099511E04B +:10055000A0E0B1E0EAE0F8E402C005900D92A43317 +:10056000B107D9F711E0A4E3B1E001C01D92AB3FA0 +:10057000B107E1F70E94A60A0C9403240C94000032 +:100580001092B9008AE08093B800089594EA90939D +:10059000BC009091BC0097FFFCCF9091B900987F70 +:1005A000983021F0903111F081E008958093BB00E4 +:1005B00084E88093BC008091BC0087FFFCCF8091D1 +:1005C000B900887F883111F0803471F780E0089598 +:1005D00084E98093BC008091BC0084FDFCCF089529 +:1005E0008093BB0084E88093BC008091BC0087FFAF +:1005F000FCCF9091B900987F81E0983209F480E0B7 +:10060000089584E88093BC008091BC0087FFFCCFF4 +:100610008091BB00089580910101811115C080E493 +:100620000E94C6028093010181110CC082E10E94E8 +:10063000F00280930101811105C08FEF0E94F0024A +:10064000809301010E94E80284B1807F84B985B162 +:10065000807F85B98AB1837F8AB98BB1837F8BB95B +:100660003E98469808950E94C604809301010E9416 +:100670000B0380B38C7080BB81B3836F81BBA5E318 +:10068000B1E0E3E4F1E08EE08E0F11921D928E1343 +:10069000FCCF0C94B004BF92CF92DF92EF92FF9206 +:1006A0000F931F93CF93DF9380910101882379F0FB +:1006B000809134018F5F80933401811108C00E94C2 +:1006C000C60480930101811102C00E94580405E311 +:1006D00011E0C0E0D0E0DD24D39482E0C82EEE2407 +:1006E000E394F12CC730D10500F58091010181110F +:1006F00064C080E40E94C60280930101811112C08F +:1007000082E10E94F0028093010181110BC0C701B8 +:100710000C2E01C0880F0A94EAF780950E94F0021F +:10072000809301010E94E80248C0CA30A1F028F479 +:10073000C83059F0C93061F005C0CC3089F070F094 +:10074000CD3089F0209A289810C0219A29980DC0A0 +:10075000229A2A980AC0239A2B9807C0529A01C05D +:10076000539A5B9802C03E9A469890EA9A95F1F7A0 +:100770009FB1799902C082E001C080E091709D250F +:10078000982B7C9902C084E001C080E0892B7D9980 +:1007900002C038E001C030E0832B7E9902C020E126 +:1007A00001C020E0822B9FB19095991F9927991F36 +:1007B0009295990F907E892B0FC080910101811134 +:1007C00049C080E40E94C60280930101882379F128 +:1007D000B12C0E94E8028B2DF8019081981719F036 +:1007E0008083C09200010E940B0321960F5F1F4F70 +:1007F000CE30D10509F076CF80910001882361F1D8 +:10080000815080930001882339F08FE99FE00197A0 +:10081000F1F700C0000020C0A3E4B1E0E5E3F1E09F +:10082000CF01825F91919D938E13FCCF15C083E120 +:100830000E94F002809301018111CACF81E40E94DD +:10084000C602809301018111C3CF0E940103B82E1B +:10085000B094BFCF80E0C0CF0E94560481E0DF910A +:10086000CF911F910F91FF90EF90DF90CF90BF90AD +:100870000895E82FF0E0ED5BFE4F80810895089524 +:100880000F931F93CF93DF93C3E4D1E010E00C2FBD +:10089000025F899190E00E94F71A180F0C13F9CFAC +:1008A000812FDF91CF911F910F9108950C94260510 +:1008B00056985E9825982D9826982E9827982F98C8 +:1008C0008FEF90E0909389008093880090938B0045 +:1008D00080938A0090938D0080938C00259A2D9AA6 +:1008E0002FEF80E792E0215080409040E1F700C078 +:1008F0000000269A2E9A2FEF80E792E02150804048 +:100900009040E1F700C00000279A2F9A2FEF80E770 +:1009100092E0215080409040E1F700C0000025980F +:100920002D982FEF80E792E0215080409040E1F732 +:1009300000C0000026982E982FEF80E792E021500B +:1009400080409040E1F700C0000027982F9856980B +:100950005E9825982D9826982E9827982F98089578 +:1009600089EA8093800089E08093810024982C9804 +:100970003F988AB18F748AB96E98479A8BB1806B11 +:100980008BB9769A0E9458040C94250580E28093D6 +:1009900001018091510181110EC00E94C00281E0CD +:1009A000809351012FEF83ED90E3215080409040E0 +:1009B000E1F700C0000080E40E94C60280930101BC +:1009C00081112EC00E94F00280930101811128C084 +:1009D0000E94F00280930101811122C08FE30E94E6 +:1009E000F0028093010181111BC00E94E80280E4A3 +:1009F0000E94C60280930101811112C08CE00E9406 +:100A0000F0028093010181110BC00E94F0028093DB +:100A10000101811105C08FE30E94F0028093010162 +:100A20000E94E80280910101089561110BC0FC0150 +:100A30008281882321F085EE0E94061103C085EE95 +:100A40000E94CE1180E090E0089508956091BD016C +:100A50007091BE018091BF019091C0010E94031B63 +:100A600056985E9825982D9826982E9827982F9816 +:100A7000813019F0823021F00895259A2D9A089539 +:100A8000269A2E9A089581E0089581E008950C94A5 +:100A9000450508950F931F93CF93DF938C01FC01BD +:100AA000C081D181CE010E947C19BE010E94F30554 +:100AB000EC01B8010E944705882309F48DC0F801B4 +:100AC0008281882309F44AC080915D0181111FC091 +:100AD000C431F0E5DF0709F051C00E94490581E00B +:100AE00080935D010E949B1B90935C0180935B014E +:100AF0001092540110925601109255011092580113 +:100B00001092570110925A011092590165C08091BC +:100B10005B0190915C010E94A71B883C910570F4D9 +:100B200080915401E82FF0E0EE0FFF1FEB5AFE4FCB +:100B3000D183C0838F5F809354014EC0C43880E559 +:100B4000D80721F0C538D04501F13AC0F8018281BB +:100B5000882341F01092520182E01EC0C438E0E5C3 +:100B6000DE0759F580915201811106C086E20E948C +:100B7000061186E20E94CE1182E01CC0C438F0E566 +:100B8000DF0741F3C538D045D9F4F80182818823C5 +:100B900031F01092530180E20E941D121DC080911D +:100BA0005301811106C087E20E94061187E20E946C +:100BB000CE1180E20E9424120FC0C538D04529F31F +:100BC00081E08093520180935301C801DF91CF915E +:100BD0001F910F910C94430580E0DF91CF911F91FD +:100BE0000F910895089596E0799FF001112494E5FE +:100BF000899FE00DF11D1124E60FF11DEE0FFF1F7F +:100C0000E25FFE4F859194910895880F991FFC0132 +:100C1000E657F040859194910895880F991FFC0143 +:100C2000E65FFE4F8591949108950F931F93CF93A4 +:100C3000DF93EC01811520E3920750F5C11580E2A6 +:100C4000D80708F0C3C0CB3BD10590F4C83AD10512 +:100C500008F06AC0C53AD10508F05BC0C430D105C0 +:100C600008F0D0C1219709F0CAC101E010E00AC222 +:100C7000CF3FD10511F008F0C5C1C03FD10508F044 +:100C8000A2C0CE01805E9109089708F4BBC1B7C12C +:100C9000C13090E5D90709F4A2C020F5C0318FE436 +:100CA000D80770F4C11590E4D90708F094C0C115B5 +:100CB00021E3D20708F0A3C1DD278E01106CE2C149 +:100CC000C115D04509F09BC10E9483148FEF94E3B6 +:100CD0002CE0815090402040E1F700C000000E94CD +:100CE000F61BD0C1C11597E5D90758F4C03121E5ED +:100CF000D20708F01CC1C43180E5D80708F475C0DC +:100D00007EC1CE0190578115904108F078C1DF7007 +:100D100073C1C53AD10509F477C1C63AD10509F0C6 +:100D200076C102E810E4AEC1C83AD10509F472C137 +:100D3000C93AD10509F471C1CA3AD10509F470C1A3 +:100D4000CB3AD10509F46FC1CC3AD10509F46EC193 +:100D5000CD3AD10509F46DC1C03BD10509F46CC190 +:100D6000CE3AD10509F46BC1CF3AD10509F46AC175 +:100D7000C13BD10509F469C1C23BD10509F468C181 +:100D8000C33BD10509F467C1C43BD10509F466C171 +:100D9000C53BD10509F465C1C63BD10509F464C161 +:100DA000C73BD10509F463C1C83BD10509F462C151 +:100DB000C93BD10509F461C1CA3BD10509F460C141 +:100DC00000E014E45FC18E0110655CC1CE019F702C +:100DD0000E940D0658C1DF708E01106A53C18091C8 +:100DE000DA0181608093DA014DC10E949B1D81115F +:100DF00002C00E94811D0E94B81D90E09093FB01EB +:100E00008093FA01C23080E5D80721F48091FA017D +:100E1000816086C0C43090E5D90721F48091FA0141 +:100E200082607EC0C63020E5D20721F48091FA01AD +:100E3000846076C0C83080E5D80719F48091FA0143 +:100E400027C0CA3090E5D90721F48091FA0180616A +:100E500067C0CC3020E5D20721F48091FA0180628E +:100E60005FC0CE3080E5D80721F48091FA0180641C +:100E700057C0C03190E5D90721F48091FA0180680C +:100E80004FC0C23120E5D20729F48091FA01846075 +:100E9000886046C0C33080E5D80721F48091FA010C +:100EA0008E7F3EC0C53090E5D90721F48091FA01CC +:100EB0008D7F36C0C73020E5D20721F48091FA013A +:100EC0008B7F2EC0C93080E5D80719F48091FA01D4 +:100ED00026C0CB3090E5D90721F48091FA018F7EAE +:100EE0001FC0CD3020E5D20721F48091FA018F7D1B +:100EF00017C0CF3080E5D80721F48091FA018F7BAD +:100F00000FC0C13190E5D90721F48091FA018F77A4 +:100F100007C0C331D04531F48091FA018B7F877FC0 +:100F20008093FA018091FA010E94BC1DABC08D2F05 +:100F300099278F70992781309105D9F49E012370EC +:100F4000332702C0880F991F2A95E2F79C688E010B +:100F500044E0000F111F4A95E1F700271370802B22 +:100F6000912B53E0CC0FDD1F5A95E1F7C076DD27BA +:100F70002FC08230910531F4DC2FCC278E01016F18 +:100F8000106A80C08330910569F4CE01837099277F +:100F900001E010E002C0000F111F8A95E2F7C801BE +:100FA0009C680FC084309105B9F4CE0183709927F5 +:100FB00001E010E002C0000F111F8A95E2F7C8019E +:100FC0009A6823E0CC0FDD1F2A95E1F7C07ED77029 +:100FD0008C010C2B1D2B56C08530910531F4DC2F74 +:100FE000CC278E01046F106A4DC0069709F04AC0E5 +:100FF000CF71DD27DC2FCC278E01106243C000E0CB +:1010000010E040C08E013EC001E810E43BC003E8A0 +:1010100010E438C002EE14E435C009EE14E432C026 +:101020000AEE14E42FC005EB14E42CC006EB14E424 +:1010300029C007EB14E426C00CEC14E423C00DEC2B +:1010400014E420C003E815E41DC00AE815E41AC042 +:1010500002E915E417C004E915E414C001E216E43E +:1010600011C003E216E40EC004E216E40BC005E270 +:1010700016E408C006E216E405C007E216E402C062 +:101080000AE216E4C801DF91CF911F910F910895F4 +:1010900096E0799FF001112494E5899FE00DF11D00 +:1010A0001124E60FF11DEE0FFF1FE25FFE4F859149 +:1010B0009491803E9105E0F4803C910558F5813390 +:1010C000910509F46FC048F48932910509F463C0B1 +:1010D0008A32910509F46DC072C089339105E9F037 +:1010E00082389105D1F08533910509F44DC067C070 +:1010F000833E910581F138F4803E9105B9F0823E3E +:101100009105D9F05CC0863E910561F1873E91055D +:10111000A1F155C00E94050608952091FA0120FD15 +:1011200002C021FF4CC080EE90E049C08091FA01DE +:1011300080FFF9CF89E390E042C08091FA0182FFFD +:101140000EC08091FA0184FF03C080E090E037C0B8 +:1011500083EE90E034C08091FA0182FFF2CF82EEFC +:1011600090E02DC08091FA0183FF0BC08091FA01BD +:1011700084FDEBCF87EE90E022C08091FA0183FFDF +:10118000F5CF86EE90E01BC08091FA0185FF07C085 +:1011900089E290E014C08091FA0185FFF9CF85E3E0 +:1011A00090E00DC08091FA0186FF07C08AE290E0CE +:1011B00006C08091FA0186FFF9CF81E390E00E949A +:1011C0001506089508950C94E20880916E01089523 +:1011D000CF93DF9300D01F92CDB7DEB79C018091F3 +:1011E000F101843019F593E099833B832A8390932E +:1011F000E9008FEF9091E800815095FD06C095EDD4 +:101200009A95F1F700008111F5CF8091E80085FFF4 +:101210000DC040E050E063E070E0CE0101960E9416 +:10122000520B8091E8008E778093E8000F900F902A +:101230000F90DF91CF910895CF93DF9300D01F924D +:10124000CDB7DEB72091F101243021F522E02983CA +:101250009B838A8383E08093E9008FEF9091E8007D +:10126000815095FD06C095ED9A95F1F7000081112A +:10127000F5CF8091E80085FF0DC040E050E063E0CD +:1012800070E0CE0101960E94520B8091E8008E77AB +:101290008093E8000F900F900F90DF91CF91089509 +:1012A0002091F1012430F1F422E02093E9002FEFA6 +:1012B0003091E800215035FD06C035ED3A95F1F743 +:1012C00000002111F5CF2091E80025FF0BC040E080 +:1012D00050E065E070E00E94520B8091E8008E774C +:1012E0008093E8000895CF93DF93EC019091F10192 +:1012F000943009F046C080910C018823D9F0809188 +:101300000D018823B9F09093E9008FEF9091E800E8 +:10131000815095FD06C095E19A95F1F70000811185 +:10132000F5CF8091E80085FF2CC040E050E060E1FF +:1013300070E017C081E08093E9008FEF9091E800A2 +:10134000815095FD06C095ED9A95F1F70000811149 +:10135000F5CF8091E80085FF14C040E050E068E0E0 +:1013600070E0CE010E94520B8091E8008E7780934E +:10137000E80080E1FE01AEE5B1E001900D928A95B2 +:10138000E1F7DF91CF9108958091F001811109C0BB +:101390000E94E70C0E94440D8091E20084608093DB +:1013A000E20008951092F001089508950C942B2204 +:1013B0000E948C1B0E9431220E94EA0F0C94E308C9 +:1013C00042E061EC81E00E94610C42E061EC82E06D +:1013D0000E94610C42E061EC83E00E94610C42E1FA +:1013E00061EC84E00C94610C8091F301833009F48A +:1013F00055C030F4813071F0823009F48EC0089508 +:101400008A3009F47AC08B3009F460C0893009F061 +:101410009CC020C08091F201813A09F096C0809171 +:10142000E800877F8093E8008091F6019091F701B2 +:10143000892B21F460E18EE591E003C060E080E05B +:1014400090E070E00E949D0B8091E8008B77809384 +:10145000E80008958091F201813209F076C0809110 +:10146000F6019091F701009719F0039709F06DC00C +:101470008091E800877F8093E8008091E80082FDFA +:1014800005C08091F1018111F8CF5FC08091F1001A +:1014900080936E018091E8008B7753C08091F201B8 +:1014A000813A09F052C08091F6019091F701892BA1 +:1014B00009F04BC08091E800877F8093E80080911D +:1014C000E80080FFFCCF80910C0136C08091F201D2 +:1014D0008132D9F58091F6019091F701892BA9F518 +:1014E0008091E800877F8093E8000E94960C8091AD +:1014F000F40180930C010C9483148091F2018132E9 +:1015000021F58091E800877F8093E8000E94960C87 +:101510008091F50180936F0108958091F201813AE5 +:10152000A1F48091E800877F8093E8008091E80033 +:1015300080FFFCCF80916F018093F1008091E800E3 +:101540008E778093E8000C94960C089584B7877F7B +:1015500084BF88E10FB6F894809360001092600019 +:101560000FBE90E080E80FB6F894809361009093EE +:1015700061000FBE0E9439100E94E70C0E94440DCA +:101580008091E20084608093E20078940E94CA0F08 +:101590000E943B1082E091E00E94E50F0E94192218 +:1015A0008091F101853069F40E94531B8091EF0115 +:1015B0008823B1F30E947E1B882391F30E943C0B89 +:1015C000EFCF0E944110ECCF292F33272330310574 +:1015D000C9F064F42130310581F02230310509F081 +:1015E00043C08DE690E02AE333E042C0213231056A +:1015F000F1F02232310541F137C082E190E027EA73 +:1016000033E036C099278130910541F08230910551 +:1016100041F0892B49F5E6E3F3E005C0EEE1F3E0A4 +:1016200002C0E6E0F3E0849190E09F0121C06430C5 +:10163000D8F4E62FF0E0EE0FFF1FEE5DFE4F2081A5 +:10164000318189E090E014C0643070F470E0FB01F7 +:10165000EE0FFF1FE65EFE4F20813181FB01EA5E47 +:10166000FE4F808190E004C080E090E020E030E018 +:10167000FA0131832083089580E189BD82E189BD2B +:1016800009B400FEFDCF8091D8008F7D8093D800F3 +:101690008091E00082608093E0008091E00081FD15 +:1016A000FCCF0895CF92DF92EF92FF920F931F939A +:1016B000CF93DF93EC018B016A010E94B50C81117D +:1016C00033C0C114D10439F0F60180819181081B27 +:1016D000190BC80FD91FE12CF12C0115110519F1B7 +:1016E0008091E80085FD16C08091E8008E77809398 +:1016F000E800C114D10449F0F60180819181E80E1F +:10170000F91EF182E08285E00FC00E94B50C8823AB +:1017100021F30AC089918093F10001501109FFEF74 +:10172000EF1AFF0ADACF80E0DF91CF911F910F917E +:10173000FF90EF90DF90CF9008952091F8013091C5 +:10174000F9012617370748F06115710539F4209122 +:10175000E8002E772093E80001C0B90140E0611550 +:101760007105A9F12091F101222309F443C025302C +:1017700009F442C02091E80023FD40C02091E80018 +:1017800022FD32C02091E80020FFE9CF4091F30014 +:101790002091F20030E0342BFC01CF01611571057E +:1017A00059F02830310540F481918093F100615067 +:1017B00071092F5F3F4FF1CF41E02830310509F02B +:1017C00040E02091E8002E772093E800C8CF411137 +:1017D000C9CF0AC08091F101882361F0853061F0A2 +:1017E0008091E80083FD0AC08091E80082FFF2CF7B +:1017F00080E0089582E0089583E0089581E00895EF +:101800002091F8013091F9012617370748F061154A +:10181000710539F42091E8002E772093E80001C08B +:10182000B901FC0120E06115710591F18091F10190 +:10183000882309F440C0853009F43FC08091E80056 +:1018400083FD3DC08091E80082FD2FC08091E800BB +:1018500080FFE9CF2091F3008091F20090E0922B7D +:101860006115710559F08830910540F42491209359 +:10187000F1003196615071090196F2CF21E008978D +:1018800009F020E08091E8008E778093E800CBCFCC +:101890002111CCCF0AC08091F101882361F08530FD +:1018A00061F08091E80083FD0AC08091E80082FF2A +:1018B000F2CF80E0089582E0089583E0089581E00A +:1018C0000895982F973058F59093E900981739F0BC +:1018D0007091EC002091ED005091F00003C0242F96 +:1018E000762F50E021FF19C03091EB003E7F3093FE +:1018F000EB003091ED003D7F3093ED003091EB0037 +:1019000031603093EB007093EC002093ED00509326 +:10191000F0002091EE0027FF07C09F5FD3CF8F70AC +:101920008093E90081E0089580E008958091F201BC +:1019300087FF11C08091E80082FD05C08091F10110 +:101940008111F8CF11C08091E8008B770BC0809196 +:10195000F101882349F08091E80080FFF8CF809161 +:10196000E8008E778093E80008952091E40030919C +:10197000E50095E64091EC00842F817040FF22C085 +:101980008091E80080FD1CC08091F101882391F0D6 +:10199000853091F08091EB0085FD10C04091E4000E +:1019A0005091E5004217530729F39A01915011F71E +:1019B00084E0089582E0089583E0089581E0089529 +:1019C00080E008954091E80042FFDECF08950E9434 +:1019D000550D0E945D0DE0EEF0E080818160808316 +:1019E000E8EDF0E080818F77808319BCA7EDB0E04F +:1019F0008C918E7F8C9380818F7E80831092F001FA +:101A000008950F931F93CF93DF930E94550D0E946B +:101A10005D0DC8EDD0E088818F77888388818068EC +:101A2000888388818F7D888319BC1092F101109280 +:101A3000ED011092EF011092EE0100EE10E0F801BE +:101A400080818B7F808388818160888342E060E031 +:101A500080E00E94610CE1EEF0E080818E7F808367 +:101A6000E2EEF0E080818160808380818860808305 +:101A7000F80180818E7F8083888180618883DF91F7 +:101A8000CF911F910F910895E8EDF0E080818F7E56 +:101A90008083E7EDF0E080818160808384E082BF15 +:101AA00081E08093F0010C94010DE8EDF0E080817D +:101AB0008E7F80831092E20008951092DA001092D7 +:101AC000E10008951F920F920FB60F9211242F93E9 +:101AD0003F934F935F936F937F938F939F93AF93B6 +:101AE000BF93EF93FF938091E10082FF0BC0809141 +:101AF000E20082FF07C08091E1008B7F8093E100CC +:101B00000E94C90F8091DA0080FF1FC08091D80029 +:101B100080FF1BC08091DA008E7F8093DA00809175 +:101B2000D90080FF0DC080E189BD82E189BD09B483 +:101B300000FEFDCF81E08093F1010E94C40905C041 +:101B400019BC1092F1010E94D2098091E10080FF3E +:101B500019C08091E20080FF15C08091E2008E7F65 +:101B60008093E2008091E20080618093E2008091A6 +:101B7000D80080628093D80019BC85E08093F10181 +:101B80000E94D6098091E10084FF30C08091E2007C +:101B900084FF2CC080E189BD82E189BD09B400FECB +:101BA000FDCF8091D8008F7D8093D8008091E10097 +:101BB0008F7E8093E1008091E2008F7E8093E2002F +:101BC0008091E20081608093E2008091ED018823A2 +:101BD00011F084E007C08091E30087FD02C081E03E +:101BE00001C083E08093F1010E94D8098091E10057 +:101BF00083FF29C08091E20083FF25C08091E1002E +:101C0000877F8093E10082E08093F1011092ED01E3 +:101C10008091E1008E7F8093E1008091E2008E7FD1 +:101C20008093E2008091E20080618093E20042E0D4 +:101C300060E080E00E94610C8091F00088608093F9 +:101C4000F0000E94D509FF91EF91BF91AF919F9154 +:101C50008F917F916F915F914F913F912F910F9055 +:101C60000FBE0F901F9018951F920F920FB60F92F4 +:101C700011242F933F934F935F936F937F938F9391 +:101C80009F93AF93BF93CF93DF93EF93FF93C09155 +:101C9000E900CF708091EC00D82FD17080FDD0E8A2 +:101CA0001092E9008091F000877F8093F000789493 +:101CB0000E94780E1092E9008091F0008860809375 +:101CC000F000CD2BCF70C093E900FF91EF91DF9131 +:101CD000CF91BF91AF919F918F917F916F915F91C4 +:101CE0004F913F912F910F900FBE0F901F9018951D +:101CF0001F93CF93DF93CDB7DEB7AA970FB6F894B3 +:101D0000DEBF0FBECDBFE2EFF1E088E08E0F909115 +:101D1000F10091938E13FBCF0E94F4098091E800AB +:101D200083FF1FC18091F2019091F301492F50E090 +:101D30004A30510508F015C1FA01EA5AFF4F0C94D8 +:101D4000B323803881F0823809F00BC18091F6010D +:101D50008F708093E9008091EB0085FB882780F9E4 +:101D60001092E90006C08091EE019091EF0191116F +:101D700082609091E800977F9093E8008093F10053 +:101D80001092F100C8C0282F2D7F09F0EAC08823E7 +:101D900019F0823061F0E5C08091F401813009F0E2 +:101DA000E0C0933009F080E08093EF012BC0809178 +:101DB000F401811127C08091F6018F7009F4D1C020 +:101DC0008093E9002091EB0020FF1CC0933021F4A8 +:101DD0008091EB00806214C09091EB009061909331 +:101DE000EB0021E030E0A90102C0440F551F8A95A5 +:101DF000E2F74093EA001092EA008091EB008860DD +:101E00008093EB001092E9008091E800877F86C004 +:101E10008111A7C01091F4011F778091E3008078B1 +:101E2000812B8093E3008091E800877F8093E80016 +:101E30000E94960C8091E80080FFFCCF8091E30027 +:101E400080688093E300111102C082E001C083E04A +:101E50008093F10186C08058823008F082C0809162 +:101E6000F4019091F5018C3D53E0950779F583E0FD +:101E70008A838AE289834FB7F894DE01139620E0C3 +:101E80003EE051E2E32FF0E050935700E49120FF51 +:101E900003C0E295EF703F5FEF708E2F90E0EA3065 +:101EA00010F0C79601C0C0968D939D932F5F24318B +:101EB00049F74FBF8091E800877F8093E8006AE28E +:101EC00070E0CE0101960E949D0B14C0AE014F5FE1 +:101ED0005F4F6091F6010E94E40ABC01009709F48B +:101EE00040C09091E800977F9093E80089819A81A3 +:101EF0000E94000C8091E8008B778093E80031C04D +:101F0000803879F58091E800877F8093E8008091A0 +:101F1000ED018093F1008091E8008E778093E800D6 +:101F20000E94960C1EC081111CC09091F401923049 +:101F3000C0F48091E800877F8093E8009093ED01E2 +:101F40000E94960C8091ED01811106C08091E30002 +:101F500087FD02C081E001C084E08093F1010E940E +:101F6000E0098091E80083FF0AC08091E800877F44 +:101F70008093E8008091EB0080628093EB00AA964A +:101F80000FB6F894DEBF0FBECDBFDF91CF911F918A +:101F900008950895CF938091F1018823A1F0C09115 +:101FA000E900CF709091EC00892F817090FD80E85E +:101FB000C82B1092E9008091E80083FD0E94780E02 +:101FC000CF70C093E900CF910895909375018093ED +:101FD00074010895E0917401F0917501309721F03A +:101FE0000190F081E02D099480E00895E091740162 +:101FF000F0917501309721F00280F381E02D099472 +:102000000895E0917401F0917501309721F00480FA +:10201000F581E02D099408952091720130917301AA +:102020008217930771F09093730180937201E0918E +:102030007401F0917501309721F00680F781E02D51 +:1020400009940895209170013091710182179307CE +:1020500071F09093710180937001E0917401F0919F +:102060007501309721F00084F185E02D09940895E1 +:1020700008950C9438100E94921B0E9433030C9414 +:10208000541C9F92AF92BF92CF92DF92EF92FF9239 +:102090000F931F93CF93DF9300D000D000D0CDB724 +:1020A000DEB70E944B030DE010E0AA24A394B12CEC +:1020B000902E802F0E943904980129583E4F6901C3 +:1020C000F901F080F826A1F40150110988F78FEF8B +:1020D00089838A831B820E949B1B8160782F9D834A +:1020E0008C8349815A816B818D810E94D8102FC0C9 +:1020F0009091DA0191FF04C08E830E943F048E818B +:1021000025E030E0A501022E01C0440F0A94EAF751 +:10211000E42E4F21C1F029839A828E2191E009F4A7 +:1021200090E09B830E949B1B8160782F9D838C8312 +:1021300049815A816B818D810E94D810F60180817E +:10214000E826E08204C021503109E0F6BDCF0E94AC +:102150003B1F109176010E94EA0F1817B9F00E94F8 +:10216000EA0F8093760126960FB6F894DEBF0FBE75 +:10217000CDBFDF91CF911F910F91FF90EF90DF9036 +:10218000CF90BF90AF909F900C94E30826960FB627 +:10219000F894DEBF0FBECDBFDF91CF911F910F919D +:1021A000FF90EF90DF90CF90BF90AF909F900895F9 +:1021B000CF93DF93CDB7DEB72B970FB6F894DEBF82 +:1021C0000FBECDBF4F83588769877A878B87DE0123 +:1021D000119686E0FD0111928A95E9F785E0FE01EE +:1021E000379601900D928A95E1F749815A816B816A +:1021F0007C818D819E810E9421172B960FB6F894C9 +:10220000DEBF0FBECDBFDF91CF910895CF9388235E +:1022100009F4C2C0C82F823859F40E94EA0F81FD28 +:10222000BBC089E30E94FB190E94C81A89E30CC055 +:10223000833879F40E94EA0F80FDAEC083E50E94E6 +:10224000FB190E94C81A83E50E943D1ACF910C9495 +:10225000C81A843859F40E94EA0F82FD9DC087E4B1 +:102260000E94FB190E94C81A87E4EECF8CEF8C0FF6 +:10227000813A48F48C2F0E947E2181118DC08C2FD1 +:102280000E94FB19E3CF80E28C0F883048F4C770BE +:1022900081E001C0880FCA95EAF70E94811AD6CF63 +:1022A0008BE58C0F833078F4C53A29F0C63A31F0CB +:1022B00083E890E005C081E890E002C082E890E009 +:1022C000CF910C940C1088E58C0F833108F064C01A +:1022D000C83A39F1C93A41F1CA3A49F1CB3A51F118 +:1022E000CC3A59F1CD3A61F1C03B69F1CE3A71F186 +:1022F000CF3A79F1C13B81F1C23B89F1C33B91F106 +:10230000C43B99F1C53BA1F1C63BA9F1C73BB1F173 +:10231000C83BB9F1C93BC1F1CA3BC9F180E090E0CB +:1023200038C082EE90E035C089EE90E032C08AEE8F +:1023300090E02FC085EB90E02CC086EB90E029C0A8 +:1023400087EB90E026C08CEC90E023C08DEC90E011 +:1023500020C083E891E01DC08AE891E01AC082E9BC +:1023600091E017C084E991E014C081E292E011C0CD +:1023700083E292E00EC084E292E00BC085E292E03C +:1023800008C086E292E005C087E292E002C08AE2DD +:1023900092E0CF910C942210CF910895882309F4F4 +:1023A0004BC0823859F40E94EA0F81FF45C089E38F +:1023B0000E94FB190E94C81A89E30CC0833871F48B +:1023C0000E94EA0F80FF38C083E50E94FB190E943B +:1023D000C81A83E50E943D1A0C94C81A843859F42F +:1023E0000E94EA0F82FF28C087E40E94FB190E9426 +:1023F000C81A87E4EFCF9CEF980F913A58F390E218 +:10240000980F983050F4877091E001C0990F8A9529 +:10241000EAF7892F0E94871ADFCF9BE5980F933048 +:1024200020F480E090E00C940C10885A833120F462 +:1024300080E090E00C9422100895882321F00E94FF +:10244000811A0C94C81A0895882321F00E94871AD3 +:102450000C94C81A08957F928F929F92AF92BF9268 +:10246000CF92DF92EF92FF920F931F93CF93DF9360 +:102470001F92CDB7DEB77C01C62E772EFC010581F9 +:1024800002950F70128111110E949E1A0E94F41978 +:10249000882379F0112369F080E28C0D883048F0B0 +:1024A00082E00E94DD190E94F41991E0D82ED9260D +:1024B00001C0D12CE72DE295EF70F0E0E05AFF4F1C +:1024C0000C94B323872D807F072D0F70882311F084 +:1024D0000295007F112389F0002309F490C180E266 +:1024E0008C0D883020F4802F0E94811A03C0802F29 +:1024F0000E94911A0E94C81A82C18C2D0E94CE118E +:10250000002309F495C180E28C0D883020F4802FDF +:102510000E94871A03C0802F0E94971A0E94C81A2F +:1025200087C1972D907F872D8F70903211F0829503 +:10253000807FCC2021F0F1E0CF16B1F01EC0112336 +:1025400049F0002309F414C1013009F011C10E94BF +:10255000B11A6EC1002319F0013009F469C18983F1 +:102560000E94B41A89810AC1112321F0023008F0B7 +:102570005FC1FEC001115CC101C1112321F0002324 +:1025800009F4F6C03CC1002309F4F8C03EC1872D10 +:1025900086958695837090E0009719F0019761F019 +:1025A00047C1112321F08C2D972D937002C080E03C +:1025B00090E00E940C103CC1112321F08C2D972D2E +:1025C000937002C080E090E00E94221031C18C2DF7 +:1025D000112319F00E94431E02C00E94AB1E0E94EC +:1025E000301F26C1872D837009F052C0111120C100 +:1025F0008C2D829586958770880F880F9C2D9F70F3 +:10260000892E912CA12CB12C082E04C0880C991C69 +:10261000AA1CBB1C0A94D2F7C4FE14C00FE010E041 +:1026200020E030E0B901A80104C0440F551F661F27 +:10263000771F8A95D2F7CB01BA0160957095809586 +:10264000909503C060E070E0CB01272D269526957C +:10265000237030E02230310569F02330310589F0F4 +:10266000682979298A299B292130310571F00E9436 +:102670006918DEC0682979298A299B290E94851852 +:10268000D7C00E946918C501B4010E944D18D0C07E +:10269000112319F0872D817001C08695882309F4D4 +:1026A000C7C08C2D829586958770880F880F9C2DCA +:1026B0009F70892E912CA12CB12C082E04C0880C5F +:1026C000991CAA1CBB1C0A94D2F7C4FE14C00FE0CC +:1026D00010E020E030E0B901A80104C0440F551F0C +:1026E000661F771F8A95D2F7CB01BA016095709566 +:1026F0008095909503C060E070E0CB01272D269572 +:1027000026952370422F50E04230510569F0433046 +:10271000510589F0682979298A299B294130510579 +:1027200071F00E94431984C0682979298A299B295C +:102730000E945F197DC00E944319C501B4010E9427 +:10274000271976C08C2D90E0FC01E05EF109E5319F +:10275000F10508F050C0E059FF4F0C94B3230C2D45 +:102760000F70872D8F71112331F00E94C018802FB8 +:102770000E941D125DC00E94E118802F0E94241249 +:1027800057C0112339F0011153C0872D8F710E945A +:1027900006194EC0023008F04BC0F7CF112339F0B4 +:1027A000872D8F710E94C01843C01123C9F3872D54 +:1027B0008F710E94E1183CC0112329F0872D8F7181 +:1027C0000E94AB1835C00E94A11832C0112351F0ED +:1027D000172D1F71812F0E94C01863E0812F0E9466 +:1027E000D41926C081E00E94DD19023008F182E090 +:1027F0000E94DD191DC0112331F0002389F28C2DB8 +:102800000E94061115C0002391F28C2D0E94CE115A +:102810000FC0472D4F706C2DC7010E9415050E94F7 +:10282000C51706C0472D4F706C2DC7010E94F205D9 +:10283000DD20F9F00E94D01980FD1BC0F701128243 +:102840000E94CA190E94C018C7010E9448140E9421 +:10285000CA190F90DF91CF911F910F91FF90EF90C8 +:10286000DF90CF90BF90AF909F908F907F900C940F +:10287000E1180F90DF91CF911F910F91FF90EF9092 +:10288000DF90CF90BF90AF909F908F907F900895F2 +:102890000F931F93CF93DF93EC01888199812B8154 +:1028A0003C81232BB9F09F3F11F48F3F99F0CE016B +:1028B0000E944A05882371F0688179818A810E948B +:1028C000C6198C010E947B190E944218B801CE01E2 +:1028D0000E942B12DF91CF911F910F9108950E94BA +:1028E0009E1A0E94AE1A0E94731A0E94C81A0E9471 +:1028F000E11F0E94301F80E090E00E940C1080E0F9 +:1029000090E00C9422100E948E1A0C946F140E9476 +:10291000BB19292F22952F7030E02C3031054CF453 +:102920002A3031056CF42250310922303105A8F4E7 +:1029300007C02C30310569F02F30310551F00DC042 +:10294000803F69F018F4803E40F409C0843F29F4C8 +:1029500006C093FB882780F9089580E0089581E000 +:102960000895CF93DF9300D000D01F92CDB7DEB78C +:102970000F900F900F900F900F90DF91CF910895CF +:10298000CF93DF9300D000D000D0CDB7DEB726962E +:102990000FB6F894DEBF0FBECDBFDF91CF91089583 +:1029A0001F93CF93DF93C091850116E0809186013C +:1029B000C81799F0D0E01C9FF0011D9FF00D112465 +:1029C000E957FE4F408151816281738184819581F5 +:1029D0000E94C0142196C770E9CFDF91CF911F915B +:1029E00008954091B7015091B8016091B90170917B +:1029F000BA018091BB019091BC010C94C0148091EC +:102A0000BC0182958F7009F054C08091B901882370 +:102A100009F44FC080918501A09186016091B701B2 +:102A20007091B8014091BA015091BB01B6E08A178C +:102A300009F43FC090E041155105C1F17F3F11F409 +:102A40006F3FA1F1B89FF001B99FF00D1124E95734 +:102A5000FE4F218172132AC02081621327C0228178 +:102A6000211124C0238134812417350710F421500B +:102A70003109241B350B283C3105C0F42091BC01E1 +:102A80002F7020612093BC0126E0289FF001299F30 +:102A9000F00D1124E457FE4F80818F708061808398 +:102AA00087EB91E00E9448140C94D0140196877033 +:102AB000BECF0895CF92DF92EF92FF920F931F93B4 +:102AC000CF93DF93CDB7DEB762970FB6F894DEBF32 +:102AD0000FBECDBF8C0185E0F801DE011D9601908F +:102AE0000D928A95E1F7D8014C9111965C9111975E +:102AF00012966C9112971396CD90DC9014973091AA +:102B0000B7017091B8018091BA019091BB01009713 +:102B100009F46BC17F3F19F43F3F09F466C1E090AF +:102B2000B901EE2009F4C0C02091BC01C816D90635 +:102B300028F0F601E81BF90BCF0104C080959095B1 +:102B40008C0D9D1DFF24F394883C910578F0F12CA9 +:102B5000207F09F0C6C07C2DD98AC88A89890E9445 +:102B6000B11487EB91E00E944814B1C0822F807F9E +:102B700009F046C0751314C0341312C0611110C09F +:102B80002F7020612093BC010E94F11487EB91E02B +:102B90000E9448148091BC01D80115968C932EC0D8 +:102BA000CD2819F15F3F11F44F3FF9F0F62E611176 +:102BB0001CC0809185012091860136E0821709F4BE +:102BC0005AC090E0389FF001399FF00D1124E95769 +:102BD000FE4F7181571306C07081471303C0728185 +:102BE000711103C001968770E9CFF62E662309F4B0 +:102BF00018C18091BC0181608093BC01F12C11C18E +:102C0000751308C0341306C0611104C08091BC0163 +:102C1000D801C3C04D875E878D859E856A8B0E94D3 +:102C200087146A898823E1F16623D1F12091BC01E0 +:102C3000822F82958F7090E0029774F08091B70197 +:102C40009091B80198878F831986DB86CA862C8776 +:102C5000CE0107960E94481486E0F801A7EBB1E088 +:102C600001900D928A95E1F70E94FF140E94F114E1 +:102C7000FF24F394D6C04D875E878D859E850E9484 +:102C8000BB19292F22952F7030E0223031050CF02E +:102C9000BCC09F7009F0B6C0805E883008F4C1C027 +:102CA000C8010E944814E4CFC816D90608F453C0DE +:102CB000F601E81BF90BCF01883C910508F450C0E0 +:102CC000F12C7C2DD98AC88A89890E94B114E7EB3E +:102CD000F1E086E0DF011D928A95E9F70E94F11488 +:102CE000A0C0751314C0341312C0611110C08091BC +:102CF000BC01F8018583C8010E94481486E0E7EB17 +:102D0000F1E0DF011D928A95E9F7FE2C8AC04D871C +:102D10005E878D859E856A8B0E9487146A898823C9 +:102D200009F4BECF662309F4BBCF2091BC01822FEA +:102D300082958F7090E002970CF48ECF8091B7014E +:102D40009091B8019A8389831B82DD82CC822E8385 +:102D5000CE0101967FCF809590958C0D9D1DACCFB7 +:102D6000F62E662309F49CCF75132EC034132CC0A5 +:102D70002091BC0120FD1FC0822F82958F70D9F059 +:102D8000D80115962C9315978F3049F08F5F982FA7 +:102D90009295907F822F8F70892B15968C93C80106 +:102DA0000E94481486E0F801A7EBB1E001900D9273 +:102DB0008A95E1F793CF86E0F801A7EBB1E00190A7 +:102DC0000D928A95E1F72DC04D875E878D859E8592 +:102DD0000E948714811140CF8091BC018160809353 +:102DE000BC01C8010E9448141CC0662309F458CFD6 +:102DF0004D875E878D859E850E948714882309F400 +:102E00004FCF2ACF811148CF0CC0243031050CF0B0 +:102E100047CF9F7009F440CFF8019581907F09F06A +:102E20003BCF8F2D62960FB6F894DEBF0FBECDBF9D +:102E3000DF91CF911F910F91FF90EF90DF90CF9096 +:102E400008951F93CF93DF93CDB7DEB72C970FB6BE +:102E5000F894DEBF0FBECDBF4F83588769877A874E +:102E60008B879C87CE0107960E945A15882369F0AC +:102E70008F8198852A853B85232BF1F19F3F09F0AF +:102E800063C08F3F09F060C037C086E0FE0137960F +:102E9000DE01119601900D928A95E1F76F81788598 +:102EA000EA85FB85309741F17F3F11F46F3F21F1B7 +:102EB0002091860130E0C9010196877099274091E1 +:102EC000850150E08417950709F447C069837A8328 +:102ED000FD83EC8396E0929FD001939FB00D112467 +:102EE000A957BE4FFE01319601900D929A95E1F7D8 +:102EF000809386010E94D01416E080918501909104 +:102F000086018917C1F1189FC001112489579E4F6E +:102F10000E945A15882379F1E09185011E9FF001E6 +:102F20001124E957FE4F4081518162817381848170 +:102F300095810E94C0148091850190E00196877070 +:102F4000992780938501D9CF4F81588569857A85E6 +:102F50008B859C850E94C014CFCF0E948314109251 +:102F6000860110928501E7EBF1E086E0DF011D921A +:102F70008A95E9F7C1CF2C960FB6F894DEBF0FBE45 +:102F8000CDBFDF91CF911F910895EF92FF920F93E4 +:102F90001F93CF93DF938C01009709F46CC0F12C41 +:102FA000EE24E394E8012196F8018491843740F4FB +:102FB000843008F051C0813081F0823019F15BC05B +:102FC000853709F444C0A8F19CE7980F903708F0C2 +:102FD00052C08F770E94CE1141C00E5F1F4FFE017D +:102FE000C49180E28C0F883048F4C7708E2D01C0E8 +:102FF000880FCA95EAF70E94A11A14C08C2F0E946C +:1030000006112DC00E5F1F4FFE01C49180E28C0F90 +:10301000883058F4C7708E2D01C0880FCA95EAF722 +:103020000E94A71A0E94C81A1AC08C2F0E94CE11A3 +:1030300016C00E5F1F4FFE01C491CC2381F08FE9B3 +:103040009FE00197F1F700C00000C150F6CF0E5F7E +:103050001F4FFE01F49003C00E9406118E018F2DB8 +:10306000882309F49FCFEFE9FFE03197F1F700C023 +:1030700000008150F5CFDF91CF911F910F91FF900C +:10308000EF90089508956093C1017093C2018093F9 +:10309000C3019093C4010C946F140F931F9300917C +:1030A000C1011091C2012091C3013091C401DC0122 +:1030B000CB01802B912BA22BB32B8093C10190933A +:1030C000C201A093C301B093C4011F910F910C944E +:1030D0006F140F931F930091C1011091C2012091B1 +:1030E000C3013091C401DC01CB0180239123A223D1 +:1030F000B3238093C1019093C201A093C301B09305 +:10310000C4011F910F910C946F140F931F930091A2 +:10311000C1011091C2012091C3013091C401DC01B1 +:10312000CB0180279127A227B3278093C1019093D9 +:10313000C201A093C301B093C4011F910F910C94DD +:103140006F141092BD011092BE011092BF01109237 +:10315000C0010C946F1441E050E060E070E004C0E6 +:10316000440F551F661F771F8A95D2F74093BD0104 +:103170005093BE016093BF017093C0010C946F1413 +:1031800041E050E060E070E004C0440F551F661F4E +:10319000771F8A95D2F78091BD019091BE01A091D1 +:1031A000BF01B091C001482B592B6A2B7B2B409358 +:1031B000BD015093BE016093BF017093C0010C9498 +:1031C0006F1441E050E060E070E004C0440F551F10 +:1031D000661F771F8A95D2F7409550956095709538 +:1031E0008091BD019091BE01A091BF01B091C0013D +:1031F000482359236A237B234093BD015093BE018A +:103200006093BF017093C0010C946F1441E050E0D3 +:1032100060E070E004C0440F551F661F771F8A9559 +:10322000D2F78091BD019091BE01A091BF01B091F4 +:10323000C001482759276A277B274093BD01509337 +:10324000BE016093BF017093C0010C946F140F9383 +:103250001F930091BD011091BE012091BF013091DB +:10326000C001DC01CB01802B912BA22BB32B8093CF +:10327000BD019093BE01A093BF01B093C0011F9107 +:103280000F910C946F140F931F930091BD01109137 +:10329000BE012091BF013091C001DC01CB01802330 +:1032A0009123A223B3238093BD019093BE01A093E9 +:1032B000BF01B093C0011F910F910C946F140F9335 +:1032C0001F930091BD011091BE012091BF0130916B +:1032D000C001DC01CB0180279127A227B32780936F +:1032E000BD019093BE01A093BF01B093C0011F9197 +:1032F0000F910C946F140895CF92DF92EF92FF928A +:103300000F931F93CF93DF938C01C090C101D09096 +:10331000C201E090C301F090C4018091BD01909181 +:10332000BE01A091BF01B091C001C82AD92AEA2AE2 +:10333000FB2ACFE1D0E0D701C6010C2E04C0B69520 +:10334000A795979587950A94D2F780FF06C0B80194 +:103350008C2F0E944808019721F4219760F780E0A4 +:1033600001C08C2FDF91CF911F910F91FF90EF90B3 +:10337000DF90CF900895CF93DF93EC010E947C19EA +:10338000BE010E944808DF91CF910895CB010E94B1 +:10339000BB1908958091C5018595859585950895FA +:1033A0008091C5018770089598E0899F900111244C +:1033B000262B2093C5010C94C0182091C50180953F +:1033C00082238093C501982F977069F430E0482FCD +:1033D000552747FD50952417350729F08595859584 +:1033E00085950C94E11808959091C501977081E03E +:1033F00009F480E0089590910C01992321F09091B7 +:103400000D01911109C020910E0130910F01F901B8 +:1034100032969FEF40E01FC0982F9695969596950F +:103420009F3050F5E0910E01F0910F01E90FF11D71 +:10343000877021E030E0A90102C0440F551F8A9532 +:10344000E2F7CA019181892B818308959F3F39F06A +:103450004F5F4E3041F051915813F8CF0DC05111CC +:10346000F7CF942FF5CF9F3F39F0F901E90FF11D08 +:1034700097FDFA9582830895089590910C01992300 +:1034800021F090910D01911109C020910E01309110 +:103490000F01F9013296205F3F4F1FC0982F96957C +:1034A000969596959F30F0F4E0910E01F0910F0102 +:1034B000E90FF11D877021E030E0A90102C0440F3F +:1034C000551F8A95E2F7CA018095918189238183EE +:1034D00008953196E217F30729F090819813F9CFF8 +:1034E0001082F7CF089581E090E0E0910E01F09115 +:1034F0000F01E80FF91F1082019680319105A9F79D +:1035000008959091D901892B8093D90108958095D0 +:103510009091D90189238093D90108951092D901FE +:1035200008959091D801892B8093D80108958095B2 +:103530009091D80189238093D80108951092D801E1 +:1035400008959091D701892B8093D7010895809594 +:103550009091D70189238093D70108951092D701C4 +:1035600008958093C60108951092C6010895809130 +:103570000E0190910F01FC0131969C01205F3F4F9D +:1035800080E0919191118F5FE217F307D1F70895D1 +:10359000E0910E01F0910F018091D9018083E091BB +:1035A0000E01F0910F0190818091D801892B8083C9 +:1035B000E0910E01F0910F0190818091D701892B4C +:1035C00080838091C601882361F0E0910E01F09123 +:1035D0000F019081892B80830E94B71A811110926C +:1035E000C60180910E0190910F010C94F60F20E01E +:1035F000009739F0AC0141505109842395232F5F86 +:10360000F7CF822F0895CF92DF92EF92FF926C0155 +:10361000EE24FF24C114D104E104F10421F0C70118 +:10362000B60120E101C020E0C72ED82EE92EFF24EC +:10363000C114D104E104F10419F0285FC701B601F7 +:103640006B017C0154E0F694E794D794C7945A95A3 +:10365000D1F7C114D104E104F10419F02C5FC701C2 +:10366000B6016B017C0142E0F694E794D794C794CD +:103670004A95D1F7C114D104E104F10419F02E5F89 +:10368000C701B601DC01CB01B695A7959795879543 +:10369000892B8A2B8B2B09F02F5F822FFF90EF90C5 +:1036A000DF90CF9008958091F101843021F1109244 +:1036B000DB0120E488E190E00FB6F894A8958093B0 +:1036C00060000FBE2093600080E00E94E30883B793 +:1036D000817F846083BF83B7816083BF789488953E +:1036E00083B78E7F83BF88E10FB6F8948093600024 +:1036F000109260000FBE0895089508950E947C1BEB +:103700000E944B030E947D1B0E94400491E08111A6 +:1037100001C090E0892F08950E9483140E94EA0F4F +:103720000C94E30882E084BD93E095BD9AEF97BDC9 +:1037300080936E0008952FB7F8948091DC019091EA +:10374000DD01A091DE01B091DF012FBF0895CF927E +:10375000DF92EF92FF920F931F932FB7F89440914F +:10376000DC015091DD016091DE017091DF012FBF1E +:103770006A017B01EE24FF248C0120E030E0C016BA +:10378000D106E206F30610F4415051099A01281BB4 +:10379000390BC9011F910F91FF90EF90DF90CF90EF +:1037A00008951F920F920FB60F9211248F939F933B +:1037B000AF93BF938091DC019091DD01A091DE0178 +:1037C000B091DF010196A11DB11D8093DC019093A2 +:1037D000DD01A093DE01B093DF01BF91AF919F9116 +:1037E0008F910F900FBE0F901F9018950E94E70CBD +:1037F000F8942FEF87EA91E6215080409040E1F75E +:1038000000C0000087E090EBDC018093FB01909307 +:10381000FC01A093FD01B093FE019CE088E10FB68E +:10382000F894A895809360000FBE90936000FFCF3E +:10383000EF92FF920F931F93CF93DF93D82FCDE09A +:103840008C2F0E94390405E010E0E82EF12CC7010E +:10385000002E02C0959587950A94E2F780FF09C073 +:10386000602F7C2F80E00E94F305D81302C081E016 +:1038700006C00150110958F7C15010F780E0DF91E0 +:10388000CF911F910F91FF90EF900895CF93C82F84 +:103890008CE20E94181C882321F08C2FCF910C946D +:1038A000181C80E0CF910895CF930E949B1D811139 +:1038B00002C00E94811DC5E6C15049F00E944B0321 +:1038C0008FE39CE90197F1F700C00000F5CF89E292 +:1038D0000E94461C811113C18AE20E94461C81117C +:1038E0000E94811D85E00E94461C81110E94F61BEA +:1038F0000E94A61D8093DA0187E00E94461C88235F +:10390000A9F18BE10E94461C882351F08091DA01D5 +:1039100081FB222720F991E0922790FB81F90EC0CC +:103920008EE00E94461C882361F08091DA0182FBC0 +:10393000222720F991E0922790FB82F98093DA0107 +:1039400015C080E10E94461C9091DA01882341F065 +:1039500093FB222720F981E0822780FB93F904C0A2 +:10396000892F809580FB90F99093DA018091DA019C +:103970000E94AA1D0E94B81D8093FA0180EE0E9449 +:10398000461C882341F08091FA01982F909590FB76 +:1039900080F98093FA0189E30E94461C882359F03C +:1039A0008091FA0181FB222720F991E0922790FB78 +:1039B00081F98093FA0182EE0E94461C882359F017 +:1039C0008091FA0182FB222720F991E0922790FB57 +:1039D00082F98093FA0186EE0E94461C882359F0F2 +:1039E0008091FA0183FB222720F991E0922790FB36 +:1039F00083F98093FA0183EE0E94461C882359F0D4 +:103A00008091FA0184FB222720F991E0922790FB14 +:103A100084F98093FA0185E30E94461C882359F0BB +:103A20008091FA0185FB222720F991E0922790FBF3 +:103A300085F98093FA0181E30E94461C882359F09E +:103A40008091FA0186FB222720F991E0922790FBD2 +:103A500086F98093FA0181E10E94461C882359F07F +:103A60008091FA0187FB222720F991E0922790FBB1 +:103A700087F98093FA018091FA010E94BC1D809120 +:103A8000FA0187FB882780F980930D0187E20E9465 +:103A9000461CC82F8EE10E94461C8111C2608FE136 +:103AA0000E94461C8111C46080E20E94461C811164 +:103AB000C86081E20E94461C8111C06182E20E94BE +:103AC000461C8111C06283E20E94461C8111C064C1 +:103AD00084E20E94461C882311F0C06802C0CC23F7 +:103AE00029F08C2F0E94B31D6C2F03C00E94AF1DC4 +:103AF000682F70E080E090E0CF910C944318CF9154 +:103B000008956DEE7EEF80E090E00E94ED2360E08E +:103B100082E090E00E94DB2360E083E090E00E947E +:103B2000DB2360E084E090E00E94DB2360E085E03E +:103B300090E00C94DB2380E090E00E94D52321E00C +:103B40008D3E9E4F09F020E0822F089582E090E0A4 +:103B50000C94CD23682F82E090E00C94DB2383E06B +:103B600090E00C94CD23682F83E090E00C94DB234D +:103B700084E090E00C94CD23682F84E090E00C94D6 +:103B8000DB238091E20180FF0BC06091130185E08F +:103B9000689FB001112475956795759567952BC041 +:103BA00081FF09C06091130185E0689FB001112475 +:103BB0007595679520C082FF07C06091130185E06D +:103BC000689FB001112417C09091E3019923D1F0AF +:103BD00060911201961788F72091130185E0289FC4 +:103BE00090011124929FA001939F500D112470E029 +:103BF000CA010E949F236038710540F46115710568 +:103C000039F002C065E070E0862F08958FE70895CF +:103C100081E008958091E20180FF08C06091110168 +:103C200070E0759567957595679521C081FF06C011 +:103C30006091110170E07595679519C082FF04C00D +:103C40006091110170E010C09091E3019923C1F0DF +:103C5000609110019617A0F780911101899FC00112 +:103C6000112470E00E949F236038710528F46115CB +:103C7000710521F0862F08958FE7089581E008955A +:103C800061E070E0F4CF803F21F40E94C11D819576 +:103C900004C0813F29F40E94C11D8093E60108956C +:103CA000823F21F40E94C11D819504C0833F29F405 +:103CB0000E94C11D8093E5010895893F19F40E9477 +:103CC0000A1E05C08A3F31F40E940A1E8195809326 +:103CD000E70108958B3F21F40E940A1E819504C0DC +:103CE0008C3F29F40E940A1E8093E8010895843FC6 +:103CF00021F48091E401816017C0853F21F4809117 +:103D0000E401826011C0863F21F48091E401846067 +:103D10000BC0873F21F48091E401886005C0883F93 +:103D200031F48091E40180618093E40108958D3F36 +:103D300021F48091E20181600BC08E3F21F48091DB +:103D4000E201826005C08F3F29F48091E201846026 +:103D50008093E2010895803F39F48091E60187FF66 +:103D60006CC01092E60169C0813F29F48091E601A0 +:103D70001816BCF362C09091E501823F29F497FFC9 +:103D80005CC01092E50159C0833F19F41916CCF3B9 +:103D900054C0893F41F48091E70118160CF04DC0E2 +:103DA0001092E7014AC08A3F29F48091E70187FF1A +:103DB00044C0F6CF8B3F39F48091E80187FF3DC0C6 +:103DC0001092E8013AC08C3F29F48091E80118165E +:103DD000BCF333C0843F21F48091E4018E7F17C08F +:103DE000853F21F48091E4018D7F11C0863F21F44D +:103DF0008091E4018B7F0BC0873F21F48091E40127 +:103E0000877F05C0883F31F48091E4018F7E8093E5 +:103E1000E40113C08D3F21F48091E2018E7F0BC03D +:103E20008E3F21F48091E2018D7F05C08F3F29F400 +:103E30008091E2018B7F8093E2018091E501811105 +:103E40000EC08091E60181110AC08091E7018111C5 +:103E500006C08091E801811102C01092E30108952B +:103E600084EE91E00E9401100E949B1B9093E1015F +:103E70008093E00108951F93CF93DF938091E00139 +:103E80009091E1010E94A71BAC019091E30199235D +:103E900021F02091140130E006C0209115018AE044 +:103EA000289F900111244217530708F486C080917F +:103EB000E501C091E601D091E7011091E80181117F +:103EC00007C0C11176C0D11174C0111172C075C084 +:103ED0009F3F19F09F5F9093E301181624F40E940E +:103EE000C11D8093E5018091E50187FF05C00E9417 +:103EF000C11D81958093E5011C1624F40E94C11D0B +:103F00008093E6018091E60187FF05C00E94C11DF4 +:103F100081958093E6016091E501662339F1C091B6 +:103F2000E601CC2319F1772767FD7095872F972F2E +:103F30000E94B02223E333E343E35FE30E941423B0 +:103F40000E947D226093E5016C2F772767FD7095B5 +:103F5000872F972F0E94B02223E333E343E35FE3ED +:103F60000E9414230E947D226093E6011D1624F412 +:103F70000E940A1E8093E7018091E70187FF05C038 +:103F80000E940A1E81958093E701111624F40E9475 +:103F90000A1E8093E8018091E80187FF05C00E9416 +:103FA0000A1E81958093E801DF91CF911F910C94B7 +:103FB000301F9F3F09F08ECF96CFDF91CF911F9199 +:103FC0000895E4EEF1E085E0DF011D928A95E9F7BE +:103FD0001092E3011092E2010895833081F128F4F8 +:103FE000813059F08230D1F00895853009F449C00C +:103FF000B8F1863009F456C0089580911501262F36 +:1040000030E0280F311D2F3F310524F4680F6093F5 +:10401000150108958FEF8093150108958091140183 +:10402000262F30E0280F311D2F3F310524F4680F73 +:104030006093140108958FEF809314010895809187 +:104040001301262F30E0280F311D2F3F310524F4B6 +:10405000680F6093130108958FEF80931301089503 +:1040600080911201262F30E0280F311D2F3F31059E +:1040700024F4680F6093120108958FEF809312016A +:10408000089580911101262F30E0280F311D2F3F18 +:10409000310524F4680F6093110108958FEF809328 +:1040A0001101089580911001262F30E0280F311D55 +:1040B0002F3F310524F4680F6093100108958FEFAE +:1040C000809310010895833011F128F4813049F074 +:1040D000823091F00895853081F120F18630C1F170 +:1040E000089580911501681720F4861B80931501AF +:1040F000089510921501089580911401681720F415 +:10410000861B8093140108951092140108958091E4 +:104110001301681720F4861B8093130108951092F1 +:104120001301089580911201681720F4861B809373 +:1041300012010895109212010895809111016817DB +:1041400020F4861B809311010895109211010895A7 +:1041500080911001681720F4861B80931001089548 +:104160001092100108950F931F938D3109F46BC0C5 +:1041700008F03FC08E3009F47FC0C0F4873009F4E6 +:1041800069C068F4863009F0B1C08091DA01817F9E +:104190008E7F8093DA0181E08093EA01A8C08830A5 +:1041A00009F4A2C08B3009F49FC0A0C0863109F485 +:1041B0009BC078F4803109F472C0813109F096C057 +:1041C0000E94831490910D0181E0892780930D0155 +:1041D0008BC0893109F488C08B3109F087C0809188 +:1041E000DA0181FB222720F991E0922790FB81F9E7 +:1041F0004CC0853309F470C048F4873209F46CC0B0 +:1042000008F459C0893209F467C070C0833438F4A7 +:104210008A3308F04EC0883309F466C067C083341F +:1042200009F45AC0883409F061C00E9483140FEF6A +:1042300013ED20E3015010402040E1F700C00000E2 +:104240000E94F61B51C00E9437220E94EA0F0E9472 +:10425000E3084AC09091DA01892F8095817080FB34 +:1042600090F929F0966098609093DA0140C0997FA8 +:10427000977F9093DA0138C08091DA0182FB222780 +:1042800020F991E0922790FB82F98093DA0199233B +:1042900059F18091DA0181608093DA0125C0809123 +:1042A000DA0183FB222720F991E0922790FB83F922 +:1042B000ECCF895301C08D5141E050E060E070E0E7 +:1042C0008A019B0104C0000F111F221F331F8A9512 +:1042D000D2F7C901B80104C061E070E080E090E06D +:1042E0000E9443180E94831481E001C080E01F9166 +:1042F0000F91089580E0089580E00895CF93C82F2E +:104300008091EA01813079F018F08230E9F187C0BC +:10431000E0910E01F0910F018081813169F08232CC +:1043200009F07FC009C0E0910E01F0910F0180817A +:10433000813111F0823261F48C2F0E947A21811137 +:1043400004C08C2F0E94B3201DC081E090E01AC0F1 +:104350008C2F0E947C21811114C0C43179F048F463 +:10436000CB3079F0C03109F060C082E08093EA017F +:1043700008C0C93219F0C83321F057C01092EA01C1 +:1043800054C081E0817053C0C93289F118F5C4313D +:1043900071F1A8F4C73009F046C08AE08093150196 +:1043A00094E19093140193E0909313018093120190 +:1043B00088E08093110188E28093100134C0CE51CF +:1043C000C63088F5EC2FF0E0E65DFE4F80818093EB +:1043D000E90129C0CE34E9F020F4CB3421F56AE0BC +:1043E00013C0C13579F0C235F1F461E00DC08091A0 +:1043F000E901882319F01092E90115C081E080934A +:10440000EA0115C061E006C08091E9010E94ED1F3C +:104410000AC06AE08091E9010E94632004C0109202 +:10442000EA0180E004C081E002C080E0ABCFCF9120 +:104430000895E1E8F0E08081886080838081816078 +:1044400080838FB7F89493E09093890090ED9093D8 +:1044500088008FBF0895EFE6F0E08081826080835E +:104460000895EFE6F0E080818D7F80830895EFE688 +:10447000F0E0908182E08927808308951F920F9257 +:104480000FB60F9211242F933F934F935F936F9327 +:104490007F938F939F93AF93BF93EF93FF938091FD +:1044A000EB019091EC0101969093EC018093EB016C +:1044B000811103C082E00E94E308E091EC01E695DF +:1044C000E695F0E0EC54FB4FE4918091EB018E1304 +:1044D00003C080E00E94E308FF91EF91BF91AF918C +:1044E0009F918F917F916F915F914F913F912F910C +:1044F0000F900FBE0F901F90189504D06894B111C3 +:104500008DC0089570D088F09F5790F0B92F9927EB +:10451000B751A0F0D1F0660F771F881F991F1AF0CE +:10452000BA95C9F712C0B13081F077D0B1E00895E3 +:1045300074C0672F782F8827B85F39F0B93FCCF364 +:10454000869577956795B395D9F73EF490958095C4 +:10455000709561957F4F8F4F9F4F0895E89409C0E4 +:1045600097FB3EF490958095709561957F4F8F4FA6 +:104570009F4F9923A9F0F92F96E9BB279395F695BC +:10458000879577956795B795F111F8CFFAF4BB0F3A +:1045900011F460FF1BC06F5F7F4F8F4F9F4F16C09E +:1045A000882311F096E911C0772321F09EE8872F28 +:1045B000762F05C0662371F096E8862F70E060E0E4 +:1045C0002AF09A95660F771F881FDAF7880F96955D +:1045D000879597F9089557FD9058440F551F59F046 +:1045E0005F3F71F04795880F97FB991F61F09F3FE0 +:1045F00079F087950895121613061406551FF2CF09 +:104600004695F1DF08C0161617061806991FF1CF58 +:1046100086957105610508940895E894BB2766277F +:104620007727CB0197F908950BD078C069D028F08F +:104630006ED018F0952309F05AC05FC01124EECF58 +:10464000CADFA0F3959FD1F3950F50E0551F629FED +:10465000F001729FBB27F00DB11D639FAA27F00DDB +:10466000B11DAA1F649F6627B00DA11D661F829F02 +:104670002227B00DA11D621F739FB00DA11D621FE7 +:10468000839FA00D611D221F749F3327A00D611D04 +:10469000231F849F600D211D822F762F6A2F1124E6 +:1046A0009F5750408AF0E1F088234AF0EE0FFF1F39 +:1046B000BB1F661F771F881F91505040A9F79E3F70 +:1046C000510570F014C0AACF5F3FECF3983EDCF3C5 +:1046D000869577956795B795F795E7959F5FC1F7AD +:1046E000FE2B880F911D9695879597F9089597F958 +:1046F0009F6780E870E060E008959FEF80EC089588 +:1047000000240A94161617061806090608950024B0 +:104710000A9412161306140605060895092E03942A +:10472000000C11F4882352F0BB0F40F4BF2B11F49E +:1047300060FF04C06F5F7F4F8F4F9F4F089597FBBF +:10474000072E16F4009407D077FD09D00E94B923F4 +:1047500007FC05D03EF4909581959F4F0895709584 +:1047600061957F4F0895EE0FFF1F0590F491E02DA6 +:104770000994AA1BBB1B51E107C0AA1FBB1FA617A8 +:10478000B70710F0A61BB70B881F991F5A95A9F7FA +:1047900080959095BC01CD010895F999FECF92BD09 +:1047A00081BDF89A992780B50895A8E1B0E042E06C +:1047B00050E00C94F523262FF999FECF92BD81BDD0 +:1047C000F89A019700B4021639F01FBA20BD0FB64F +:1047D000F894FA9AF99A0FBE08950196272F0E942D +:1047E000DC230C94DB23DC01CB01FC01F999FECF27 +:1047F00006C0F2BDE1BDF89A319600B40D92415069 +:0A4800005040B8F70895F894FFCF78 +:10480A000220E508730950091C09E8080101C701DB +:10481A0028080A03140A3F4D363975042804F2039E +:10482A00B9034C0365037E039703010203040506DB +:04483A000708090062 +:00000001FF diff --git a/keyboards/ergodox_ez/keymaps/jack/keymap.c b/keyboards/ergodox_ez/keymaps/jack/keymap.c new file mode 100644 index 0000000000..80bf9d535d --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/jack/keymap.c @@ -0,0 +1,118 @@ +#include "ergodox_ez.h" +#include "debug.h" +#include "action_layer.h" + +// TODO: Define layer names that make sense for the ErgoDox EZ. +#define BASE 0 // default layer +#define SYMB 1 // symbols +#define MDIA 2 // media keys + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +[BASE] = KEYMAP( // layer 0 : default + // left hand + KC_NO, KC_1, KC_2, KC_3, KC_4, KC_5, KC_NO, + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_NO, + KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_NO, + KC_NO, KC_LCTL, KC_LALT,KC_LGUI, MO(2), + ALT_T(KC_APP), KC_LGUI, + KC_HOME, + KC_SPC,KC_SPC,KC_END, + // right hand + KC_NO, KC_6, KC_7, KC_8, KC_9, KC_0, KC_NO, + KC_NO, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, + KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + KC_NO, KC_N, KC_M, KC_COMM,KC_DOT, KC_SLSH, KC_ENT, + MO(1), KC_LEFT,KC_DOWN,KC_UP, KC_RGHT, + KC_NO, KC_NO, + KC_PGUP, + KC_PGDN, KC_SPC,KC_SPC + ), +[SYMB] = KEYMAP( + // left hand + KC_TRNS,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_TRNS, + KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, + KC_TRNS, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11,KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS, + KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS, + // right hand + KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + KC_TRNS, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, + KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, + KC_TRNS, KC_F12, KC_NO, KC_NO, KC_NO, RESET, KC_TRNS, + KC_TRNS, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), +[MDIA] = KEYMAP( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_TRNS, + KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, + KC_TRNS, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + // right hand + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, + KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, + KC_TRNS, KC_F12, KC_NO, KC_NO, KC_NO, RESET, KC_TRNS, + KC_TRNS, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), +}; + +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/keyboards/ergodox_ez/keymaps/jacobono/README.md b/keyboards/ergodox_ez/keymaps/jacobono/README.md new file mode 100644 index 0000000000..48de0509fc --- /dev/null +++ b/keyboards/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/keyboards/ergodox_ez/keymaps/jacobono/compiled.hex b/keyboards/ergodox_ez/keymaps/jacobono/compiled.hex new file mode 100644 index 0000000000..bfa00ed2e1 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/jacobono/compiled.hex @@ -0,0 +1,1179 @@ +:100000000C9422030C9466030C9466030C94660310 +:100010000C9466030C9466030C9466030C946603BC +:100020000C9466030C9466030C940A0E0C94DC0E7C +:100030000C9466030C9466030C9466030C9466039C +:100040000C9466030C94E6220C9466030C946603ED +:100050000C9466030C94791C0C9466030C94660350 +:100060000C9466030C9466030C9466030C9466036C +:100070000C9466030C9466030C9466030C9466035C +:100080000C9466030C9466030C9466030C9466034C +:100090000C9466030C9466030C9466030C9466033C +:1000A0000C9466030C9466030C946603490F6B0F63 +:1000B00059106B0F5910B00FD30F591028103B1067 +:1000C0000A130A13391339136F138F13C014C01492 +:1000D0009A13C0144A144A14B114C014C014BA14A8 +:1000E00057145714571457145714571457145714B8 +:1000F00057145714571457145714571457145714A8 +:10010000691476147D1484148E140000F0A201008A +:100110002B002A00E100015400001E00140004001E +:100120001D71010003521F001A0015001B00010081 +:100130002800200009001600060052002C002100B3 +:1001400013001700190002522C0A22000A000700AF +:1001500005000000E3005000010000000100000065 +:1001600065004F00010000002B08000029712300EA +:100170000D000B000E000000E20024000F00110033 +:10018000100002522C0A2500180008003600510009 +:100190002C0026001C000C0037000100280027005E +:1001A000330012003871E60003524C002B004C0063 +:1001B000E500E70000002A002B00E000E10001005C +:1001C00000001E00140004001D7134004D001F00CB +:1001D0001A0016001B00E104E300200008000700DD +:1001E000060050002C0021001500090019000252E1 +:1001F0004A00220017000A00050000002B005000F2 +:1002000001000000E20000004C004F00010000006F +:10021000E6000000E20023001C000B0011000000BB +:100220002971240018000D00100002524B00250017 +:100230000C000E00360051002800260012000F00AE +:1002400037002F00E70027001300334438713000D7 +:100250004E004C003100E400E500C1000000010048 +:10026000010001000100010000003A00010031021C +:100270000100010001003B001F021E0222020100DA +:1002800001003C0025022E022302010001003D0076 +:100290002E002D002102010001003E002D0234023B +:1002A0002402000001000100010000000100000024 +:1002B00001000100010000000100000001003F00FA +:1002C0003502340233000000010040002F022602F4 +:1002D0002F00010001004100300227023000010020 +:1002E00001004200200234003100010001004300FF +:1002F00033023500380001000100440045000100D0 +:1003000001000100000001000100010001000100E6 +:1003100000000100010001000100010001000100D6 +:1003200001005000010001000100010052005100D5 +:10033000010001000100010001004F000100010067 +:1003400001000100010001000100000001000100A6 +:100350000100000001000000010001000100000098 +:10036000010000000100010021022E002402000013 +:1003700001000100240021001E00360001000100E0 +:10038000250022001F002700010001002600230095 +:1003900020003700010001002E022D002502380048 +:1003A0000100010001000100010001000000010046 +:1003B0000100010001000100000001000100010036 +:1003C00001000100010001000100F2000100010034 +:1003D00001000100F000F1000100F4000100010043 +:1003E0000100F3000100F50001000100010001001F +:1003F00001000000010001000100000001000000F8 +:1004000001000100010000000100000001000100E6 +:1004100001000100010000000100010001000100D5 +:100420000100A9000100010001000100AC00AA00C8 +:10043000B600010001000100AB00A80001000100AE +:100440000100010001000100010001000100AE00F7 +:1004500001000100000016034500720067006F00F4 +:1004600044006F007800200045005A000000160389 +:100470004500720067006F0044006F0078002000A4 +:1004800045005A0000000403090409026D0004013C +:1004900000A0FA0904000001030101000921110173 +:1004A0000001223F000705810308000A090401003A +:1004B0000103010200092111010001224D0007057D +:1004C000820308000A090402000103000000092158 +:1004D000110100012236000705830308000A090400 +:1004E000030001030000000921110100012239006D +:1004F000070584031000011201100100000008ED3F +:10050000FE071301000102000105010906A1010512 +:100510000719E029E71500250195087501810205F5 +:100520000819012905950575019102950175039139 +:1005300001050719002977150025019578750181B6 +:1005400002C005010980A101850216010026B7003D +:100550001A01002AB700751095018100C0050C0929 +:1005600001A1018503160100269C021A01002A9CA4 +:1005700002751095018100C005010902A101090160 +:10058000A100050919012905150025019505750129 +:100590008102950175038101050109300931158139 +:1005A000257F95027508810609381581257F9501FB +:1005B00075088106050C0A38021581257F9501759D +:1005C000088106C0C005010906A101050719E02937 +:1005D000E7150025019508750181029501750881CF +:1005E0000105081901290595057501910295017507 +:1005F0000391010507190029FF150025FF950675D0 +:10060000088100C0000000000000000000000001A0 +:100610000204060A0F17202C3A4A5D71879DB3C762 +:10062000DAE9F5FCFFFCF5E9DAC7B39D87715D4AAD +:100630003A2C20170F0A06040201000000000000F7 +:100640000000000011241FBECFEFDAE0DEBFCDBFF7 +:1006500004B603FE24C08091FB019091FC01A0919F +:10066000FD01B091FE018730904BA740B04BB9F42B +:100670001092FB011092FC011092FD011092FE01FC +:1006800014BE84B7877F84BF88E10FB6F894809347 +:100690006000109260000FBEE0E0FFE3099511E0FA +:1006A000A0E0B1E0EAE5F9E402C005900D92A433C0 +:1006B000B107D9F711E0A4E3B1E001C01D92AB3F4F +:1006C000B107E1F70E944E0B0C94AB240C94000090 +:1006D0001092B9008AE08093B800089594EA90934C +:1006E000BC009091BC0097FFFCCF9091B900987F1F +:1006F000983021F0903111F081E008958093BB0093 +:1007000084E88093BC008091BC0087FFFCCF80917F +:10071000B900887F883111F0803471F780E0089546 +:1007200084E98093BC008091BC0084FDFCCF0895D7 +:100730008093BB0084E88093BC008091BC0087FF5D +:10074000FCCF9091B900987F81E0983209F480E065 +:10075000089584E88093BC008091BC0087FFFCCFA3 +:100760008091BB00089580910101811115C080E442 +:100770000E946E038093010181110CC082E10E94EE +:10078000980380930101811105C08FEF0E949803A7 +:10079000809301010E94900384B1807F84B985B168 +:1007A000807F85B98AB1837F8AB98BB1837F8BB90A +:1007B0003E98469808950E946E05809301010E941C +:1007C000B30380B38C7080BB81B3836F81BBA5E31F +:1007D000B1E0E3E4F1E08EE08E0F11921D928E13F2 +:1007E000FCCF0C945805BF92CF92DF92EF92FF920C +:1007F0000F931F93CF93DF9380910101882379F0AA +:10080000809134018F5F80933401811108C00E9470 +:100810006E0580930101811102C00E94000505E36D +:1008200011E0C0E0D0E0DD24D39482E0C82EEE24B5 +:10083000E394F12CC730D10500F5809101018111BD +:1008400064C080E40E946E0380930101811112C094 +:1008500082E10E9498038093010181110BC0C701BE +:100860000C2E01C0880F0A94EAF780950E94980325 +:10087000809301010E94900348C0CA30A1F028F47F +:10088000C83059F0C93061F005C0CC3089F070F043 +:10089000CD3089F0209A289810C0219A29980DC04F +:1008A000229A2A980AC0239A2B9807C0529A01C00C +:1008B000539A5B9802C03E9A469890EA9A95F1F74F +:1008C0009FB1799902C082E001C080E091709D25BE +:1008D000982B7C9902C084E001C080E0892B7D992F +:1008E00002C038E001C030E0832B7E9902C020E1D5 +:1008F00001C020E0822B9FB19095991F9927991FE5 +:100900009295990F907E892B0FC0809101018111E2 +:1009100049C080E40E946E0380930101882379F12D +:10092000B12C0E9490038B2DF8019081981719F03B +:100930008083C09200010E94B30321960F5F1F4F76 +:10094000CE30D10509F076CF80910001882361F186 +:10095000815080930001882339F08FE99FE001974F +:10096000F1F700C0000020C0A3E4B1E0E5E3F1E04E +:10097000CF01825F91919D938E13FCCF15C083E1CF +:100980000E949803809301018111CACF81E40E94E3 +:100990006E03809301018111C3CF0E94A903B82E79 +:1009A000B094BFCF80E0C0CF0E94FE0481E0DF9111 +:1009B000CF911F910F91FF90EF90DF90CF90BF905C +:1009C0000895E82FF0E0ED5BFE4F808108950895D3 +:1009D0000F931F93CF93DF93C3E4D1E010E00C2F6C +:1009E000025F899190E00E949F1B180F0C13F9CFB2 +:1009F000812FDF91CF911F910F9108950C94CE0517 +:100A000056985E9825982D9826982E9827982F9876 +:100A10008FEF90E0909389008093880090938B00F3 +:100A200080938A0090938D0080938C00259A2D9A54 +:100A30002FEF80E792E0215080409040E1F700C026 +:100A40000000269A2E9A2FEF80E792E021508040F6 +:100A50009040E1F700C00000279A2F9A2FEF80E71F +:100A600092E0215080409040E1F700C000002598BE +:100A70002D982FEF80E792E0215080409040E1F7E1 +:100A800000C0000026982E982FEF80E792E02150BA +:100A900080409040E1F700C0000027982F985698BA +:100AA0005E9825982D9826982E9827982F98089527 +:100AB00089EA8093800089E08093810024982C98B3 +:100AC0003F988AB18F748AB96E98479A8BB1806BC0 +:100AD0008BB9769A0E9400050C94CD0580E2809334 +:100AE00001018091510181110EC00E94680381E0D3 +:100AF000809351012FEF83ED90E32150804090408F +:100B0000E1F700C0000080E40E946E0380930101C1 +:100B100081112EC00E94980380930101811128C089 +:100B20000E94980380930101811122C08FE30E94EB +:100B300098038093010181111BC00E94900380E4FF +:100B40000E946E0380930101811112C08CE00E940B +:100B500098038093010181110BC00E949803809338 +:100B60000101811105C08FE30E9498038093010168 +:100B70000E94900380910101089561110BC0FC0156 +:100B80008281882321F085EE0E94AE1103C085EE9C +:100B90000E94761280E090E0089508956091BD0172 +:100BA0007091BE018091BF019091C0010E94AB1B6A +:100BB00056985E9825982D9826982E9827982F98C5 +:100BC000813019F0823021F00895259A2D9A0895E8 +:100BD000269A2E9A089581E0089581E008950C9454 +:100BE000ED0508950F931F93CF93DF938C01FC01C4 +:100BF000C081D181CE010E94241ABE010E949B06B1 +:100C0000EC01B8010E94EF05882309F48DC0F801BA +:100C10008281882309F44AC080915D0181111FC03F +:100C2000C431F0E5DF0709F051C00E94F10581E011 +:100C300080935D010E94431C90935C0180935B0153 +:100C400010925401109256011092550110925801C1 +:100C50001092570110925A011092590165C080916B +:100C60005B0190915C010E944F1C883C910570F4DF +:100C700080915401E82FF0E0EE0FFF1FEB5AFE4F7A +:100C8000D183C0838F5F809354014EC0C43880E508 +:100C9000D80721F0C538D04501F13AC0F80182816A +:100CA000882341F01092520182E01EC0C438E0E572 +:100CB000DE0759F580915201811106C086E20E943B +:100CC000AE1186E20E94761282E01CC0C438F0E5C4 +:100CD000DF0741F3C538D045D9F4F8018281882374 +:100CE00031F01092530180E20E94C5121DC0809124 +:100CF0005301811106C087E20E94AE1187E20E9473 +:100D0000761280E20E94CC120FC0C538D04529F37C +:100D100081E08093520180935301C801DF91CF910C +:100D20001F910F910C94EB0580E0DF91CF911F9103 +:100D30000F910895089596E0799FF001112494E5AC +:100D4000899FE00DF11D1124E60FF11DEE0FFF1F2D +:100D5000E25FFE4F859194910895880F991FFC01E1 +:100D6000E657F040859194910895880F991FFC01F2 +:100D7000E65FFE4F8591949108950F931F93CF9353 +:100D8000DF93EC01811520E3920750F5C11580E255 +:100D9000D80708F0C3C0CB3BD10590F4C83AD105C1 +:100DA00008F06AC0C53AD10508F05BC0C430D1056F +:100DB00008F0D0C1219709F0CAC101E010E00AC2D1 +:100DC000CF3FD10511F008F0C5C1C03FD10508F0F3 +:100DD000A2C0CE01805E9109089708F4BBC1B7C1DB +:100DE000C13090E5D90709F4A2C020F5C0318FE4E5 +:100DF000D80770F4C11590E4D90708F094C0C11564 +:100E000021E3D20708F0A3C1DD278E01106CE2C1F7 +:100E1000C115D04509F09BC10E942B158FEF94E3BB +:100E20002CE0815090402040E1F700C000000E947B +:100E30009E1CD0C1C11597E5D90758F4C03121E5F2 +:100E4000D20708F01CC1C43180E5D80708F475C08A +:100E50007EC1CE0190578115904108F078C1DF70B6 +:100E600073C1C53AD10509F477C1C63AD10509F075 +:100E700076C102E810E4AEC1C83AD10509F472C1E6 +:100E8000C93AD10509F471C1CA3AD10509F470C152 +:100E9000CB3AD10509F46FC1CC3AD10509F46EC142 +:100EA000CD3AD10509F46DC1C03BD10509F46CC13F +:100EB000CE3AD10509F46BC1CF3AD10509F46AC124 +:100EC000C13BD10509F469C1C23BD10509F468C130 +:100ED000C33BD10509F467C1C43BD10509F466C120 +:100EE000C53BD10509F465C1C63BD10509F464C110 +:100EF000C73BD10509F463C1C83BD10509F462C100 +:100F0000C93BD10509F461C1CA3BD10509F460C1EF +:100F100000E014E45FC18E0110655CC1CE019F70DA +:100F20000E94B50658C1DF708E01106A53C18091CE +:100F3000DA0181608093DA014DC10E94431E811164 +:100F400002C00E94291E0E94601E90E09093FB0147 +:100F50008093FA01C23080E5D80721F48091FA012C +:100F6000816086C0C43090E5D90721F48091FA01F0 +:100F700082607EC0C63020E5D20721F48091FA015C +:100F8000846076C0C83080E5D80719F48091FA01F2 +:100F900027C0CA3090E5D90721F48091FA01806119 +:100FA00067C0CC3020E5D20721F48091FA0180623D +:100FB0005FC0CE3080E5D80721F48091FA018064CB +:100FC00057C0C03190E5D90721F48091FA018068BB +:100FD0004FC0C23120E5D20729F48091FA01846024 +:100FE000886046C0C33080E5D80721F48091FA01BB +:100FF0008E7F3EC0C53090E5D90721F48091FA017B +:101000008D7F36C0C73020E5D20721F48091FA01E8 +:101010008B7F2EC0C93080E5D80719F48091FA0182 +:1010200026C0CB3090E5D90721F48091FA018F7E5C +:101030001FC0CD3020E5D20721F48091FA018F7DC9 +:1010400017C0CF3080E5D80721F48091FA018F7B5B +:101050000FC0C13190E5D90721F48091FA018F7753 +:1010600007C0C331D04531F48091FA018B7F877F6F +:101070008093FA018091FA010E94641EABC08D2F0B +:1010800099278F70992781309105D9F49E0123709B +:10109000332702C0880F991F2A95E2F79C688E01BA +:1010A00044E0000F111F4A95E1F700271370802BD1 +:1010B000912B53E0CC0FDD1F5A95E1F7C076DD2769 +:1010C0002FC08230910531F4DC2FCC278E01016FC7 +:1010D000106A80C08330910569F4CE01837099272E +:1010E00001E010E002C0000F111F8A95E2F7C8016D +:1010F0009C680FC084309105B9F4CE0183709927A4 +:1011000001E010E002C0000F111F8A95E2F7C8014C +:101110009A6823E0CC0FDD1F2A95E1F7C07ED770D7 +:101120008C010C2B1D2B56C08530910531F4DC2F22 +:10113000CC278E01046F106A4DC0069709F04AC093 +:10114000CF71DD27DC2FCC278E01106243C000E079 +:1011500010E040C08E013EC001E810E43BC003E84F +:1011600010E438C002EE14E435C009EE14E432C0D5 +:101170000AEE14E42FC005EB14E42CC006EB14E4D3 +:1011800029C007EB14E426C00CEC14E423C00DECDA +:1011900014E420C003E815E41DC00AE815E41AC0F1 +:1011A00002E915E417C004E915E414C001E216E4ED +:1011B00011C003E216E40EC004E216E40BC005E21F +:1011C00016E408C006E216E405C007E216E402C011 +:1011D0000AE216E4C801DF91CF911F910F910895A3 +:1011E00096E0799FF001112494E5899FE00DF11DAF +:1011F0001124E60FF11DEE0FFF1FE25FFE4F8591F8 +:101200009491803E9105E0F4803C910558F581333E +:10121000910509F46FC048F48932910509F463C05F +:101220008A32910509F46DC072C089339105E9F0E5 +:1012300082389105D1F08533910509F44DC067C01E +:10124000833E910581F138F4803E9105B9F0823EEC +:101250009105D9F05CC0863E910561F1873E91050C +:10126000A1F155C00E94AD0608952091FA0120FD1C +:1012700002C021FF4CC080EE90E049C08091FA018D +:1012800080FFF9CF89E390E042C08091FA0182FFAC +:101290000EC08091FA0184FF03C080E090E037C067 +:1012A00083EE90E034C08091FA0182FFF2CF82EEAB +:1012B00090E02DC08091FA0183FF0BC08091FA016C +:1012C00084FDEBCF87EE90E022C08091FA0183FF8E +:1012D000F5CF86EE90E01BC08091FA0185FF07C034 +:1012E00089E290E014C08091FA0185FFF9CF85E38F +:1012F00090E00DC08091FA0186FF07C08AE290E07D +:1013000006C08091FA0186FFF9CF81E390E00E9448 +:10131000BD06089508950C948A0980916E01089580 +:10132000CF93DF9300D01F92CDB7DEB79C018091A1 +:10133000F101843019F593E099833B832A839093DC +:10134000E9008FEF9091E800815095FD06C095ED82 +:101350009A95F1F700008111F5CF8091E80085FFA3 +:101360000DC040E050E063E070E0CE0101960E94C5 +:10137000FA0B8091E8008E778093E8000F900F9031 +:101380000F90DF91CF910895CF93DF9300D01F92FC +:10139000CDB7DEB72091F101243021F522E0298379 +:1013A0009B838A8383E08093E9008FEF9091E8002C +:1013B000815095FD06C095ED9A95F1F700008111D9 +:1013C000F5CF8091E80085FF0DC040E050E063E07C +:1013D00070E0CE0101960E94FA0B8091E8008E77B2 +:1013E0008093E8000F900F900F90DF91CF910895B8 +:1013F0002091F1012430F1F422E02093E9002FEF55 +:101400003091E800215035FD06C035ED3A95F1F7F1 +:1014100000002111F5CF2091E80025FF0BC040E02E +:1014200050E065E070E00E94FA0B8091E8008E7752 +:101430008093E8000895CF93DF93EC019091F10140 +:10144000943009F046C080910C018823D9F0809136 +:101450000D018823B9F09093E9008FEF9091E80097 +:10146000815095FD06C095E19A95F1F70000811134 +:10147000F5CF8091E80085FF2CC040E050E060E1AE +:1014800070E017C081E08093E9008FEF9091E80051 +:10149000815095FD06C095ED9A95F1F700008111F8 +:1014A000F5CF8091E80085FF14C040E050E068E08F +:1014B00070E0CE010E94FA0B8091E8008E77809355 +:1014C000E80080E1FE01AEE5B1E001900D928A9561 +:1014D000E1F7DF91CF9108958091F001811109C06A +:1014E0000E948F0D0E94EC0D8091E2008460809339 +:1014F000E20008951092F001089508950C94D3220B +:101500000E94341C0E94D9220E9492100C948B09D4 +:1015100042E061EC81E00E94090D42E061EC82E072 +:101520000E94090D42E061EC83E00E94090D42E156 +:1015300061EC84E00C94090D8091F301833009F48F +:1015400055C030F4813071F0823009F48EC00895B6 +:101550008A3009F47AC08B3009F460C0893009F010 +:101560009CC020C08091F201813A09F096C0809120 +:10157000E800877F8093E8008091F6019091F70161 +:10158000892B21F460E18EE591E003C060E080E00A +:1015900090E070E00E94450C8091E8008B7780938A +:1015A000E80008958091F201813209F076C08091BF +:1015B000F6019091F701009719F0039709F06DC0BB +:1015C0008091E800877F8093E8008091E80082FDA9 +:1015D00005C08091F1018111F8CF5FC08091F100C9 +:1015E00080936E018091E8008B7753C08091F20167 +:1015F000813A09F052C08091F6019091F701892B50 +:1016000009F04BC08091E800877F8093E8008091CB +:10161000E80080FFFCCF80910C0136C08091F20180 +:101620008132D9F58091F6019091F701892BA9F5C6 +:101630008091E800877F8093E8000E943E0D8091B2 +:10164000F40180930C010C942B158091F2018132EE +:1016500021F58091E800877F8093E8000E943E0D8D +:101660008091F50180936F0108958091F201813A94 +:10167000A1F48091E800877F8093E8008091E800E2 +:1016800080FFFCCF80916F018093F1008091E80092 +:101690008E778093E8000C943E0D089584B7877F81 +:1016A00084BF88E10FB6F8948093600010926000C8 +:1016B0000FBE90E080E80FB6F8948093610090939D +:1016C00061000FBE0E94E1100E948F0D0E94EC0D80 +:1016D0008091E20084608093E20078940E9472100E +:1016E0000E94E31082E091E00E948D100E94C122CE +:1016F0008091F101853069F40E94FB1B8091EF011C +:101700008823B1F30E94261C882391F30E94E40BE6 +:10171000EFCF0E94E910ECCF292F3327233031057A +:10172000C9F064F42130310581F02230310509F02F +:1017300043C08DE690E02AE834E042C02132310512 +:10174000F1F02232310541F137C082E190E027EF1C +:1017500034E036C099278130910541F082309105FF +:1017600041F0892B49F5E6E8F4E005C0EEE6F4E047 +:1017700002C0E6E5F4E0849190E09F0121C064306E +:10178000D8F4E62FF0E0EE0FFF1FEE5DFE4F208154 +:10179000318189E090E014C0643070F470E0FB01A6 +:1017A000EE0FFF1FE65EFE4F20813181FB01EA5EF6 +:1017B000FE4F808190E004C080E090E020E030E0C7 +:1017C000FA0131832083089580E189BD82E189BDDA +:1017D00009B400FEFDCF8091D8008F7D8093D800A2 +:1017E0008091E00082608093E0008091E00081FDC4 +:1017F000FCCF0895CF92DF92EF92FF920F931F9349 +:10180000CF93DF93EC018B016A010E945D0D811182 +:1018100033C0C114D10439F0F60180819181081BD5 +:10182000190BC80FD91FE12CF12C0115110519F165 +:101830008091E80085FD16C08091E8008E77809346 +:10184000E800C114D10449F0F60180819181E80ECD +:10185000F91EF182E08285E00FC00E945D0D8823B1 +:1018600021F30AC089918093F10001501109FFEF23 +:10187000EF1AFF0ADACF80E0DF91CF911F910F912D +:10188000FF90EF90DF90CF9008952091F801309174 +:10189000F9012617370748F06115710539F42091D1 +:1018A000E8002E772093E80001C0B90140E06115FF +:1018B0007105A9F12091F101222309F443C02530DB +:1018C00009F442C02091E80023FD40C02091E800C7 +:1018D00022FD32C02091E80020FFE9CF4091F300C3 +:1018E0002091F20030E0342BFC01CF01611571052D +:1018F00059F02830310540F481918093F100615016 +:1019000071092F5F3F4FF1CF41E02830310509F0D9 +:1019100040E02091E8002E772093E800C8CF4111E5 +:10192000C9CF0AC08091F101882361F0853061F050 +:101930008091E80083FD0AC08091E80082FFF2CF29 +:1019400080E0089582E0089583E0089581E008959D +:101950002091F8013091F9012617370748F06115F9 +:10196000710539F42091E8002E772093E80001C03A +:10197000B901FC0120E06115710591F18091F1013F +:10198000882309F440C0853009F43FC08091E80005 +:1019900083FD3DC08091E80082FD2FC08091E8006A +:1019A00080FFE9CF2091F3008091F20090E0922B2C +:1019B0006115710559F08830910540F42491209308 +:1019C000F1003196615071090196F2CF21E008973C +:1019D00009F020E08091E8008E778093E800CBCF7B +:1019E0002111CCCF0AC08091F101882361F08530AC +:1019F00061F08091E80083FD0AC08091E80082FFD9 +:101A0000F2CF80E0089582E0089583E0089581E0B8 +:101A10000895982F973058F59093E900981739F06A +:101A20007091EC002091ED005091F00003C0242F44 +:101A3000762F50E021FF19C03091EB003E7F3093AC +:101A4000EB003091ED003D7F3093ED003091EB00E5 +:101A500031603093EB007093EC002093ED005093D5 +:101A6000F0002091EE0027FF07C09F5FD3CF8F705B +:101A70008093E90081E0089580E008958091F2016B +:101A800087FF11C08091E80082FD05C08091F101BF +:101A90008111F8CF11C08091E8008B770BC0809145 +:101AA000F101882349F08091E80080FFF8CF809110 +:101AB000E8008E778093E80008952091E40030914B +:101AC000E50095E64091EC00842F817040FF22C034 +:101AD0008091E80080FD1CC08091F101882391F085 +:101AE000853091F08091EB0085FD10C04091E400BD +:101AF0005091E5004217530729F39A01915011F7CD +:101B000084E0089582E0089583E0089581E00895D7 +:101B100080E008954091E80042FFDECF08950E94E2 +:101B2000FD0D0E94050EE0EEF0E080818160808373 +:101B3000E8EDF0E080818F77808319BCA7EDB0E0FD +:101B40008C918E7F8C9380818F7E80831092F001A8 +:101B500008950F931F93CF93DF930E94FD0D0E9472 +:101B6000050EC8EDD0E088818F77888388818068F2 +:101B7000888388818F7D888319BC1092F10110922F +:101B8000ED011092EF011092EE0100EE10E0F8016D +:101B900080818B7F808388818160888342E060E0E0 +:101BA00080E00E94090DE1EEF0E080818E7F80836D +:101BB000E2EEF0E0808181608083808188608083B4 +:101BC000F80180818E7F8083888180618883DF91A6 +:101BD000CF911F910F910895E8EDF0E080818F7E05 +:101BE0008083E7EDF0E080818160808384E082BFC4 +:101BF00081E08093F0010C94A90DE8EDF0E0808184 +:101C00008E7F80831092E20008951092DA00109285 +:101C1000E10008951F920F920FB60F9211242F9397 +:101C20003F934F935F936F937F938F939F93AF9364 +:101C3000BF93EF93FF938091E10082FF0BC08091EF +:101C4000E20082FF07C08091E1008B7F8093E1007A +:101C50000E9471108091DA0080FF1FC08091D8002F +:101C600080FF1BC08091DA008E7F8093DA00809124 +:101C7000D90080FF0DC080E189BD82E189BD09B432 +:101C800000FEFDCF81E08093F1010E946C0A05C047 +:101C900019BC1092F1010E947A0A8091E10080FF44 +:101CA00019C08091E20080FF15C08091E2008E7F14 +:101CB0008093E2008091E20080618093E200809155 +:101CC000D80080628093D80019BC85E08093F10130 +:101CD0000E947E0A8091E10084FF30C08091E20082 +:101CE00084FF2CC080E189BD82E189BD09B400FE7A +:101CF000FDCF8091D8008F7D8093D8008091E10046 +:101D00008F7E8093E1008091E2008F7E8093E200DD +:101D10008091E20081608093E2008091ED01882350 +:101D200011F084E007C08091E30087FD02C081E0EC +:101D300001C083E08093F1010E94800A8091E1005C +:101D400083FF29C08091E20083FF25C08091E100DC +:101D5000877F8093E10082E08093F1011092ED0192 +:101D60008091E1008E7F8093E1008091E2008E7F80 +:101D70008093E2008091E20080618093E20042E083 +:101D800060E080E00E94090D8091F00088608093FF +:101D9000F0000E947D0AFF91EF91BF91AF919F915A +:101DA0008F917F916F915F914F913F912F910F9004 +:101DB0000FBE0F901F9018951F920F920FB60F92A3 +:101DC00011242F933F934F935F936F937F938F9340 +:101DD0009F93AF93BF93CF93DF93EF93FF93C09104 +:101DE000E900CF708091EC00D82FD17080FDD0E851 +:101DF0001092E9008091F000877F8093F000789442 +:101E00000E94200F1092E9008091F000886080937A +:101E1000F000CD2BCF70C093E900FF91EF91DF91DF +:101E2000CF91BF91AF919F918F917F916F915F9172 +:101E30004F913F912F910F900FBE0F901F901895CB +:101E40001F93CF93DF93CDB7DEB7AA970FB6F89461 +:101E5000DEBF0FBECDBFE2EFF1E088E08E0F9091C4 +:101E6000F10091938E13FBCF0E949C0A8091E800B1 +:101E700083FF1FC18091F2019091F301492F50E03F +:101E80004A30510508F015C1FA01EA5AFF4F0C9487 +:101E90005B24803881F0823809F00BC18091F60113 +:101EA0008F708093E9008091EB0085FB882780F993 +:101EB0001092E90006C08091EE019091EF0191111E +:101EC00082609091E800977F9093E8008093F10002 +:101ED0001092F100C8C0282F2D7F09F0EAC0882396 +:101EE00019F0823061F0E5C08091F401813009F091 +:101EF000E0C0933009F080E08093EF012BC0809127 +:101F0000F401811127C08091F6018F7009F4D1C0CE +:101F10008093E9002091EB0020FF1CC0933021F456 +:101F20008091EB00806214C09091EB0090619093DF +:101F3000EB0021E030E0A90102C0440F551F8A9553 +:101F4000E2F74093EA001092EA008091EB0088608B +:101F50008093EB001092E9008091E800877F86C0B3 +:101F60008111A7C01091F4011F778091E300807860 +:101F7000812B8093E3008091E800877F8093E800C5 +:101F80000E943E0D8091E80080FFFCCF8091E3002D +:101F900080688093E300111102C082E001C083E0F9 +:101FA0008093F10186C08058823008F082C0809111 +:101FB000F4019091F5018C3D53E0950779F583E0AC +:101FC0008A838AE289834FB7F894DE01139620E072 +:101FD0003EE051E2E32FF0E050935700E49120FF00 +:101FE00003C0E295EF703F5FEF708E2F90E0EA3014 +:101FF00010F0C79601C0C0968D939D932F5F24313A +:1020000049F74FBF8091E800877F8093E8006AE23C +:1020100070E0CE0101960E94450C14C0AE014F5FE6 +:102020005F4F6091F6010E948C0BBC01009709F490 +:1020300040C09091E800977F9093E80089819A8151 +:102040000E94A80C8091E8008B778093E80031C053 +:10205000803879F58091E800877F8093E80080914F +:10206000ED018093F1008091E8008E778093E80085 +:102070000E943E0D1EC081111CC09091F40192304F +:10208000C0F48091E800877F8093E8009093ED0191 +:102090000E943E0D8091ED01811106C08091E30008 +:1020A00087FD02C081E001C084E08093F1010E94BD +:1020B000880A8091E80083FF0AC08091E800877F4A +:1020C0008093E8008091EB0080628093EB00AA96F9 +:1020D0000FB6F894DEBF0FBECDBFDF91CF911F9139 +:1020E00008950895CF938091F1018823A1F0C091C4 +:1020F000E900CF709091EC00892F817090FD80E80D +:10210000C82B1092E9008091E80083FD0E94200F07 +:10211000CF70C093E900CF9108959093750180939B +:1021200074010895E0917401F0917501309721F0E8 +:102130000190F081E02D099480E00895E091740110 +:10214000F0917501309721F00280F381E02D099420 +:102150000895E0917401F0917501309721F00480A9 +:10216000F581E02D09940895209172013091730159 +:102170008217930771F09093730180937201E0913D +:102180007401F0917501309721F00680F781E02D00 +:10219000099408952091700130917101821793077D +:1021A00071F09093710180937001E0917401F0914E +:1021B0007501309721F00084F185E02D0994089590 +:1021C00008950C94E0100E943A1C0E94DB030C94CA +:1021D000FC1C9F92AF92BF92CF92DF92EF92FF9240 +:1021E0000F931F93CF93DF9300D000D000D0CDB7D3 +:1021F000DEB70E94F3030DE010E0AA24A394B12CF3 +:10220000902E802F0E94E104980129583E4F6901C9 +:10221000F901F080F826A1F40150110988F78FEF39 +:1022200089838A831B820E94431C8160782F9D834F +:102230008C8349815A816B818D810E9480112FC0CE +:102240009091DA0191FF04C08E830E94E7048E8191 +:1022500025E030E0A501022E01C0440F0A94EAF700 +:10226000E42E4F21C1F029839A828E2191E009F456 +:1022700090E09B830E94431C8160782F9D838C8318 +:1022800049815A816B818D810E948011F601808184 +:10229000E826E08204C021503109E0F6BDCF0E945B +:1022A000E31F109176010E9492101817B9F00E9456 +:1022B00092108093760126960FB6F894DEBF0FBE7B +:1022C000CDBFDF91CF911F910F91FF90EF90DF90E5 +:1022D000CF90BF90AF909F900C948B0926960FB62D +:1022E000F894DEBF0FBECDBFDF91CF911F910F914C +:1022F000FF90EF90DF90CF90BF90AF909F900895A8 +:10230000CF93DF93CDB7DEB72B970FB6F894DEBF30 +:102310000FBECDBF4F83588769877A878B87DE01D1 +:10232000119686E0FD0111928A95E9F785E0FE019C +:10233000379601900D928A95E1F749815A816B8118 +:102340007C818D819E810E94C9172B960FB6F894CF +:10235000DEBF0FBECDBFDF91CF910895CF9388230D +:1023600009F4C2C0C82F823859F40E94921081FD2E +:10237000BBC089E30E94A31A0E94701B89E30CC0B2 +:10238000833879F40E94921080FDAEC083E50E94EC +:10239000A31A0E94701B83E50E94E51ACF910C944A +:1023A000701B843859F40E94921082FD9DC087E40E +:1023B0000E94A31A0E94701B87E4EECF8CEF8C0F53 +:1023C000813A48F48C2F0E94262281118DC08C2FD7 +:1023D0000E94A31AE3CF80E28C0F883048F4C770C4 +:1023E00081E001C0880FCA95EAF70E94291BD6CF69 +:1023F0008BE58C0F833078F4C53A29F0C63A31F07A +:1024000083E890E005C081E890E002C082E890E0B7 +:10241000CF910C94B41088E58C0F833108F064C020 +:10242000C83A39F1C93A41F1CA3A49F1CB3A51F1C6 +:10243000CC3A59F1CD3A61F1C03B69F1CE3A71F134 +:10244000CF3A79F1C13B81F1C23B89F1C33B91F1B4 +:10245000C43B99F1C53BA1F1C63BA9F1C73BB1F122 +:10246000C83BB9F1C93BC1F1CA3BC9F180E090E07A +:1024700038C082EE90E035C089EE90E032C08AEE3E +:1024800090E02FC085EB90E02CC086EB90E029C057 +:1024900087EB90E026C08CEC90E023C08DEC90E0C0 +:1024A00020C083E891E01DC08AE891E01AC082E96B +:1024B00091E017C084E991E014C081E292E011C07C +:1024C00083E292E00EC084E292E00BC085E292E0EB +:1024D00008C086E292E005C087E292E002C08AE28C +:1024E00092E0CF910C94CA10CF910895882309F4FB +:1024F0004BC0823859F40E94921081FF45C089E395 +:102500000E94A31A0E94701B89E30CC0833871F4E7 +:102510000E94921080FF38C083E50E94A31A0E9497 +:10252000701B83E50E94E51A0C94701B843859F4E3 +:102530000E94921082FF28C087E40E94A31A0E9482 +:10254000701B87E4EFCF9CEF980F913A58F390E21D +:10255000980F983050F4877091E001C0990F8A95D8 +:10256000EAF7892F0E942F1BDFCF9BE5980F93304E +:1025700020F480E090E00C94B410885A833120F469 +:1025800080E090E00C94CA100895882321F00E9406 +:10259000291B0C94701B0895882321F00E942F1B87 +:1025A0000C94701B08957F928F929F92AF92BF926E +:1025B000CF92DF92EF92FF920F931F93CF93DF930F +:1025C0001F92CDB7DEB77C01C62E772EFC010581A8 +:1025D00002950F70128111110E94461B0E949C1AD5 +:1025E000882379F0112369F080E28C0D883048F05F +:1025F00082E00E94851A0E949C1A91E0D82ED9266A +:1026000001C0D12CE72DE295EF70F0E0E05AFF4FCA +:102610000C945B24872D807F072D0F70882311F089 +:102620000295007F112389F0002309F490C180E214 +:102630008C0D883020F4802F0E94291B03C0802F2E +:102640000E94391B0E94701B82C18C2D0E94761241 +:10265000002309F495C180E28C0D883020F4802F8E +:102660000E942F1B03C0802F0E943F1B0E94701BE3 +:1026700087C1972D907F872D8F70903211F08295B2 +:10268000807FCC2021F0F1E0CF16B1F01EC01123E5 +:1026900049F0002309F414C1013009F011C10E946E +:1026A000591B6EC1002319F0013009F469C18983F7 +:1026B0000E945C1B89810AC1112321F0023008F0BD +:1026C0005FC1FEC001115CC101C1112321F00023D3 +:1026D00009F4F6C03CC1002309F4F8C03EC1872DBF +:1026E00086958695837090E0009719F0019761F0C8 +:1026F00047C1112321F08C2D972D937002C080E0EB +:1027000090E00E94B4103CC1112321F08C2D972D34 +:10271000937002C080E090E00E94CA1031C18C2DFD +:10272000112319F00E94EB1E02C00E94531F0E9449 +:10273000D81F26C1872D837009F052C0111120C106 +:102740008C2D829586958770880F880F9C2D9F70A1 +:10275000892E912CA12CB12C082E04C0880C991C18 +:10276000AA1CBB1C0A94D2F7C4FE14C00FE010E0F0 +:1027700020E030E0B901A80104C0440F551F661FD6 +:10278000771F8A95D2F7CB01BA0160957095809535 +:10279000909503C060E070E0CB01272D269526952B +:1027A000237030E02230310569F02330310589F0A3 +:1027B000682979298A299B292130310571F00E94E5 +:1027C0001119DEC0682979298A299B290E942D19AF +:1027D000D7C00E941119C501B4010E94F518D0C0DC +:1027E000112319F0872D817001C08695882309F483 +:1027F000C7C08C2D829586958770880F880F9C2D79 +:102800009F70892E912CA12CB12C082E04C0880C0D +:10281000991CAA1CBB1C0A94D2F7C4FE14C00FE07A +:1028200010E020E030E0B901A80104C0440F551FBA +:10283000661F771F8A95D2F7CB01BA016095709514 +:102840008095909503C060E070E0CB01272D269520 +:1028500026952370422F50E04230510569F04330F5 +:10286000510589F0682979298A299B294130510528 +:1028700071F00E94EB1984C0682979298A299B2963 +:102880000E94071A7DC00E94EB19C501B4010E9485 +:10289000CF1976C08C2D90E0FC01E05EF109E531A6 +:1028A000F10508F050C0E059FF4F0C945B240C2D4B +:1028B0000F70872D8F71112331F00E946819802FBE +:1028C0000E94C5125DC00E948919802F0E94CC12FF +:1028D00057C0112339F0011153C0872D8F710E9409 +:1028E000AE194EC0023008F04BC0F7CF112339F0BB +:1028F000872D8F710E94681943C01123C9F3872D5A +:102900008F710E9489193CC0112329F0872D8F7186 +:102910000E94531935C00E94491932C0112351F049 +:10292000172D1F71812F0E94681963E0812F0E946B +:102930007C1A26C081E00E94851A023008F182E0EC +:102940000E94851A1DC0112331F0002389F28C2DBD +:102950000E94AE1115C0002391F28C2D0E947612B8 +:102960000FC0472D4F706C2DC7010E94BD050E94FE +:102970006D1806C0472D4F706C2DC7010E949A0636 +:10298000DD20F9F00E94781A80FD1BC0F701128249 +:102990000E94721A0E946819C7010E94F0140E94D6 +:1029A000721A0F90DF91CF911F910F91FF90EF90CE +:1029B000DF90CF90BF90AF909F908F907F900C94BE +:1029C00089190F90DF91CF911F910F91FF90EF9098 +:1029D000DF90CF90BF90AF909F908F907F900895A1 +:1029E0000F931F93CF93DF93EC01888199812B8103 +:1029F0003C81232BB9F09F3F11F48F3F99F0CE011A +:102A00000E94F205882371F0688179818A810E9491 +:102A10006E1A8C010E94231A0E94EA18B801CE0196 +:102A20000E94D312DF91CF911F910F9108950E94C0 +:102A3000461B0E94561B0E941B1B0E94701B0E947B +:102A400089200E94D81F80E090E00E94B41080E0AE +:102A500090E00C94CA100E94361B0C9417150E942B +:102A6000631A292F22952F7030E02C3031054CF459 +:102A70002A3031056CF42250310922303105A8F496 +:102A800007C02C30310569F02F30310551F00DC0F1 +:102A9000803F69F018F4803E40F409C0843F29F477 +:102AA00006C093FB882780F9089580E0089581E0AF +:102AB0000895CF93DF9300D000D01F92CDB7DEB73B +:102AC0000F900F900F900F900F90DF91CF9108957E +:102AD000CF93DF9300D000D000D0CDB7DEB72696DD +:102AE0000FB6F894DEBF0FBECDBFDF91CF91089532 +:102AF0001F93CF93DF93C091850116E080918601EB +:102B0000C81799F0D0E01C9FF0011D9FF00D112413 +:102B1000E957FE4F408151816281738184819581A3 +:102B20000E9468152196C770E9CFDF91CF911F9160 +:102B300008954091B7015091B8016091B901709129 +:102B4000BA018091BB019091BC010C9468158091F1 +:102B5000BC0182958F7009F054C08091B90188231F +:102B600009F44FC080918501A09186016091B70161 +:102B70007091B8014091BA015091BB01B6E08A173B +:102B800009F43FC090E041155105C1F17F3F11F4B8 +:102B90006F3FA1F1B89FF001B99FF00D1124E957E3 +:102BA000FE4F218172132AC02081621327C0228127 +:102BB000211124C0238134812417350710F42150BA +:102BC0003109241B350B283C3105C0F42091BC0190 +:102BD0002F7020612093BC0126E0289FF001299FDF +:102BE000F00D1124E457FE4F80818F708061808347 +:102BF00087EB91E00E94F0140C9478150196877091 +:102C0000BECF0895CF92DF92EF92FF920F931F9362 +:102C1000CF93DF93CDB7DEB762970FB6F894DEBFE0 +:102C20000FBECDBF8C0185E0F801DE011D9601903D +:102C30000D928A95E1F7D8014C9111965C9111970C +:102C400012966C9112971396CD90DC901497309158 +:102C5000B7017091B8018091BA019091BB010097C2 +:102C600009F46BC17F3F19F43F3F09F466C1E0905E +:102C7000B901EE2009F4C0C02091BC01C816D906E4 +:102C800028F0F601E81BF90BCF0104C08095909560 +:102C90008C0D9D1DFF24F394883C910578F0F12C58 +:102CA000207F09F0C6C07C2DD98AC88A89890E94F4 +:102CB000591587EB91E00E94F014B1C0822F807FFC +:102CC00009F046C0751314C0341312C0611110C04E +:102CD0002F7020612093BC010E94991587EB91E031 +:102CE0000E94F0148091BC01D80115968C932EC0DF +:102CF000CD2819F15F3F11F44F3FF9F0F62E611125 +:102D00001CC0809185012091860136E0821709F46C +:102D10005AC090E0389FF001399FF00D1124E95717 +:102D2000FE4F7181571306C07081471303C0728133 +:102D3000711103C001968770E9CFF62E662309F45E +:102D400018C18091BC0181608093BC01F12C11C13C +:102D5000751308C0341306C0611104C08091BC0112 +:102D6000D801C3C04D875E878D859E856A8B0E9482 +:102D70002F156A898823E1F16623D1F12091BC01E6 +:102D8000822F82958F7090E0029774F08091B70146 +:102D90009091B80198878F831986DB86CA862C8725 +:102DA000CE0107960E94F01486E0F801A7EBB1E08F +:102DB00001900D928A95E1F70E94A7150E9499153E +:102DC000FF24F394D6C04D875E878D859E850E9433 +:102DD000631A292F22952F7030E0223031050CF034 +:102DE000BCC09F7009F0B6C0805E883008F4C1C0D6 +:102DF000C8010E94F014E4CFC816D90608F453C0E5 +:102E0000F601E81BF90BCF01883C910508F450C08E +:102E1000F12C7C2DD98AC88A89890E945915E7EB43 +:102E2000F1E086E0DF011D928A95E9F70E9499158D +:102E3000A0C0751314C0341312C0611110C080916A +:102E4000BC01F8018583C8010E94F01486E0E7EB1D +:102E5000F1E0DF011D928A95E9F7FE2C8AC04D87CB +:102E60005E878D859E856A8B0E942F156A898823CF +:102E700009F4BECF662309F4BBCF2091BC01822F99 +:102E800082958F7090E002970CF48ECF8091B701FD +:102E90009091B8019A8389831B82DD82CC822E8334 +:102EA000CE0101967FCF809590958C0D9D1DACCF66 +:102EB000F62E662309F49CCF75132EC034132CC054 +:102EC0002091BC0120FD1FC0822F82958F70D9F008 +:102ED000D80115962C9315978F3049F08F5F982F56 +:102EE0009295907F822F8F70892B15968C93C801B5 +:102EF0000E94F01486E0F801A7EBB1E001900D927A +:102F00008A95E1F793CF86E0F801A7EBB1E0019055 +:102F10000D928A95E1F72DC04D875E878D859E8540 +:102F20000E942F15811140CF8091BC018160809358 +:102F3000BC01C8010E94F0141CC0662309F458CFDC +:102F40004D875E878D859E850E942F15882309F405 +:102F50004FCF2ACF811148CF0CC0243031050CF05F +:102F600047CF9F7009F440CFF8019581907F09F019 +:102F70003BCF8F2D62960FB6F894DEBF0FBECDBF4C +:102F8000DF91CF911F910F91FF90EF90DF90CF9045 +:102F900008951F93CF93DF93CDB7DEB72C970FB66D +:102FA000F894DEBF0FBECDBF4F83588769877A87FD +:102FB0008B879C87CE0107960E940216882369F0B2 +:102FC0008F8198852A853B85232BF1F19F3F09F05E +:102FD00063C08F3F09F060C037C086E0FE013796BE +:102FE000DE01119601900D928A95E1F76F81788547 +:102FF000EA85FB85309741F17F3F11F46F3F21F166 +:103000002091860130E0C90101968770992740918F +:10301000850150E08417950709F447C069837A83D6 +:10302000FD83EC8396E0929FD001939FB00D112415 +:10303000A957BE4FFE01319601900D929A95E1F786 +:10304000809386010E94781516E080918501909109 +:1030500086018917C1F1189FC001112489579E4F1D +:103060000E940216882379F1E09185011E9FF001EC +:103070001124E957FE4F408151816281738184811F +:1030800095810E9468158091850190E00196877076 +:10309000992780938501D9CF4F81588569857A8595 +:1030A0008B859C850E946815CFCF0E942B151092AE +:1030B000860110928501E7EBF1E086E0DF011D92C9 +:1030C0008A95E9F7C1CF2C960FB6F894DEBF0FBEF4 +:1030D000CDBFDF91CF911F910895EF92FF920F9393 +:1030E0001F93CF93DF938C01009709F46CC0F12CF0 +:1030F000EE24E394E8012196F8018491843740F4AA +:10310000843008F051C0813081F0823019F15BC009 +:10311000853709F444C0A8F19CE7980F903708F070 +:1031200052C08F770E94761241C00E5F1F4FFE0182 +:10313000C49180E28C0F883048F4C7708E2D01C096 +:10314000880FCA95EAF70E94491B14C08C2F0E9471 +:10315000AE112DC00E5F1F4FFE01C49180E28C0F97 +:10316000883058F4C7708E2D01C0880FCA95EAF7D1 +:103170000E944F1B0E94701B1AC08C2F0E94761257 +:1031800016C00E5F1F4FFE01C491CC2381F08FE962 +:103190009FE00197F1F700C00000C150F6CF0E5F2D +:1031A0001F4FFE01F49003C00E94AE118E018F2DBF +:1031B000882309F49FCFEFE9FFE03197F1F700C0D2 +:1031C00000008150F5CFDF91CF911F910F91FF90BB +:1031D000EF90089508956093C1017093C2018093A8 +:1031E000C3019093C4010C9417150F931F93009182 +:1031F000C1011091C2012091C3013091C401DC01D1 +:10320000CB01802B912BA22BB32B8093C1019093E8 +:10321000C201A093C301B093C4011F910F910C94FC +:1032200017150F931F930091C1011091C2012091B6 +:10323000C3013091C401DC01CB0180239123A2237F +:10324000B3238093C1019093C201A093C301B093B3 +:10325000C4011F910F910C9417150F931F930091A8 +:10326000C1011091C2012091C3013091C401DC0160 +:10327000CB0180279127A227B3278093C101909388 +:10328000C201A093C301B093C4011F910F910C948C +:1032900017151092BD011092BE011092BF0110923D +:1032A000C0010C94171541E050E060E070E004C0EC +:1032B000440F551F661F771F8A95D2F74093BD01B3 +:1032C0005093BE016093BF017093C0010C94171519 +:1032D00041E050E060E070E004C0440F551F661FFD +:1032E000771F8A95D2F78091BD019091BE01A09180 +:1032F000BF01B091C001482B592B6A2B7B2B409307 +:10330000BD015093BE016093BF017093C0010C9446 +:10331000171541E050E060E070E004C0440F551F15 +:10332000661F771F8A95D2F74095509560957095E6 +:103330008091BD019091BE01A091BF01B091C001EB +:10334000482359236A237B234093BD015093BE0138 +:103350006093BF017093C0010C94171541E050E0D9 +:1033600060E070E004C0440F551F661F771F8A9508 +:10337000D2F78091BD019091BE01A091BF01B091A3 +:10338000C001482759276A277B274093BD015093E6 +:10339000BE016093BF017093C0010C9417150F9389 +:1033A0001F930091BD011091BE012091BF0130918A +:1033B000C001DC01CB01802B912BA22BB32B80937E +:1033C000BD019093BE01A093BF01B093C0011F91B6 +:1033D0000F910C9417150F931F930091BD0110913D +:1033E000BE012091BF013091C001DC01CB018023DF +:1033F0009123A223B3238093BD019093BE01A09398 +:10340000BF01B093C0011F910F910C9417150F933A +:103410001F930091BD011091BE012091BF01309119 +:10342000C001DC01CB0180279127A227B32780931D +:10343000BD019093BE01A093BF01B093C0011F9145 +:103440000F910C9417150895CF92DF92EF92FF928F +:103450000F931F93CF93DF938C01C090C101D09045 +:10346000C201E090C301F090C4018091BD01909130 +:10347000BE01A091BF01B091C001C82AD92AEA2A91 +:10348000FB2ACFE1D0E0D701C6010C2E04C0B695CF +:10349000A795979587950A94D2F780FF06C0B80143 +:1034A0008C2F0E94F008019721F4219760F780E0AB +:1034B00001C08C2FDF91CF911F910F91FF90EF9062 +:1034C000DF90CF900895CF93DF93EC010E94241AF0 +:1034D000BE010E94F008DF91CF910895CB010E94B8 +:1034E000631A08958091C501859585958595089500 +:1034F0008091C5018770089598E0899F90011124FB +:10350000262B2093C5010C9468192091C501809544 +:1035100082238093C501982F977069F430E0482F7B +:10352000552747FD50952417350729F08595859532 +:1035300085950C94891908959091C501977081E043 +:1035400009F480E0089590910C01992321F0909165 +:103550000D01911109C020910E0130910F01F90167 +:1035600032969FEF40E01FC0982F969596959695BE +:103570009F3050F5E0910E01F0910F01E90FF11D20 +:10358000877021E030E0A90102C0440F551F8A95E1 +:10359000E2F7CA019181892B818308959F3F39F019 +:1035A0004F5F4E3041F051915813F8CF0DC051117B +:1035B000F7CF942FF5CF9F3F39F0F901E90FF11DB7 +:1035C00097FDFA9582830895089590910C019923AF +:1035D00021F090910D01911109C020910E013091BF +:1035E0000F01F9013296205F3F4F1FC0982F96952B +:1035F000969596959F30F0F4E0910E01F0910F01B1 +:10360000E90FF11D877021E030E0A90102C0440FED +:10361000551F8A95E2F7CA0180959181892381839C +:1036200008953196E217F30729F090819813F9CFA6 +:103630001082F7CF089581E090E0E0910E01F091C3 +:103640000F01E80FF91F1082019680319105A9F74B +:1036500008959091D901892B8093D901089580957F +:103660009091D90189238093D90108951092D901AD +:1036700008959091D801892B8093D8010895809561 +:103680009091D80189238093D80108951092D80190 +:1036900008959091D701892B8093D7010895809543 +:1036A0009091D70189238093D70108951092D70173 +:1036B00008958093C60108951092C60108958091DF +:1036C0000E0190910F01FC0131969C01205F3F4F4C +:1036D00080E0919191118F5FE217F307D1F7089580 +:1036E000E0910E01F0910F018091D9018083E0916A +:1036F0000E01F0910F0190818091D801892B808378 +:10370000E0910E01F0910F0190818091D701892BFA +:1037100080838091C601882361F0E0910E01F091D1 +:103720000F019081892B80830E945F1B8111109271 +:10373000C60180910E0190910F010C949E1020E023 +:10374000009739F0AC0141505109842395232F5F34 +:10375000F7CF822F0895CF92DF92EF92FF926C0104 +:10376000EE24FF24C114D104E104F10421F0C701C7 +:10377000B60120E101C020E0C72ED82EE92EFF249B +:10378000C114D104E104F10419F0285FC701B601A6 +:103790006B017C0154E0F694E794D794C7945A9552 +:1037A000D1F7C114D104E104F10419F02C5FC70171 +:1037B000B6016B017C0142E0F694E794D794C7947C +:1037C0004A95D1F7C114D104E104F10419F02E5F38 +:1037D000C701B601DC01CB01B695A79597958795F2 +:1037E000892B8A2B8B2B09F02F5F822FFF90EF9074 +:1037F000DF90CF9008958091F101843021F11092F3 +:10380000DB0120E488E190E00FB6F894A89580935E +:1038100060000FBE2093600080E00E948B0983B798 +:10382000817F846083BF83B7816083BF78948895EC +:1038300083B78E7F83BF88E10FB6F89480936000D2 +:10384000109260000FBE0895089508950E94241CF0 +:103850000E94F3030E94251C0E94E80491E081115C +:1038600001C090E0892F08950E942B150E949210AC +:103870000C948B0982E084BD93E095BD9AEF97BDCF +:1038800080936E0008952FB7F8948091DC01909199 +:10389000DD01A091DE01B091DF012FBF0895CF922D +:1038A000DF92EF92FF920F931F932FB7F8944091FE +:1038B000DC015091DD016091DE017091DF012FBFCD +:1038C0006A017B01EE24FF248C0120E030E0C01669 +:1038D000D106E206F30610F4415051099A01281B63 +:1038E000390BC9011F910F91FF90EF90DF90CF909E +:1038F00008951F920F920FB60F9211248F939F93EA +:10390000AF93BF938091DC019091DD01A091DE0126 +:10391000B091DF010196A11DB11D8093DC01909350 +:10392000DD01A093DE01B093DF01BF91AF919F91C4 +:103930008F910F900FBE0F901F9018950E948F0DC2 +:10394000F8942FEF87EA91E6215080409040E1F70C +:1039500000C0000087E090EBDC018093FB019093B6 +:10396000FC01A093FD01B093FE019CE088E10FB63D +:10397000F894A895809360000FBE90936000FFCFED +:10398000EF92FF920F931F93CF93DF93D82FCDE049 +:103990008C2F0E94E10405E010E0E82EF12CC70115 +:1039A000002E02C0959587950A94E2F780FF09C022 +:1039B000602F7C2F80E00E949B06D81302C081E01C +:1039C00006C00150110958F7C15010F780E0DF918F +:1039D000CF911F910F91FF90EF900895CF93C82F33 +:1039E0008CE20E94C01C882321F08C2FCF910C9474 +:1039F000C01C80E0CF910895CF930E94431E811197 +:103A000002C00E94291EC5E6C15049F00E94F3037E +:103A10008FE39CE90197F1F700C00000F5CF89E240 +:103A20000E94EE1C811113C18AE20E94EE1C8111DA +:103A30000E94291E85E00E94EE1C81110E949E1C9E +:103A40000E944E1E8093DA0187E00E94EE1C8823BC +:103A5000A9F18BE10E94EE1C882351F08091DA01DC +:103A600081FB222720F991E0922790FB81F90EC07B +:103A70008EE00E94EE1C882361F08091DA0182FBC7 +:103A8000222720F991E0922790FB82F98093DA01B6 +:103A900015C080E10E94EE1C9091DA01882341F06C +:103AA00093FB222720F981E0822780FB93F904C051 +:103AB000892F809580FB90F99093DA018091DA014B +:103AC0000E94521E0E94601E8093FA0180EE0E94A6 +:103AD000EE1C882341F08091FA01982F909590FB7D +:103AE00080F98093FA0189E30E94EE1C882359F043 +:103AF0008091FA0181FB222720F991E0922790FB27 +:103B000081F98093FA0182EE0E94EE1C882359F01D +:103B10008091FA0182FB222720F991E0922790FB05 +:103B200082F98093FA0186EE0E94EE1C882359F0F8 +:103B30008091FA0183FB222720F991E0922790FBE4 +:103B400083F98093FA0183EE0E94EE1C882359F0DA +:103B50008091FA0184FB222720F991E0922790FBC3 +:103B600084F98093FA0185E30E94EE1C882359F0C2 +:103B70008091FA0185FB222720F991E0922790FBA2 +:103B800085F98093FA0181E30E94EE1C882359F0A5 +:103B90008091FA0186FB222720F991E0922790FB81 +:103BA00086F98093FA0181E10E94EE1C882359F086 +:103BB0008091FA0187FB222720F991E0922790FB60 +:103BC00087F98093FA018091FA010E94641E809126 +:103BD000FA0187FB882780F980930D0187E20E9414 +:103BE000EE1CC82F8EE10E94EE1C8111C2608FE195 +:103BF0000E94EE1C8111C46080E20E94EE1C8111C3 +:103C0000C86081E20E94EE1C8111C06182E20E94C4 +:103C1000EE1C8111C06283E20E94EE1C8111C0641F +:103C200084E20E94EE1C882311F0C06802C0CC23FD +:103C300029F08C2F0E945B1E6C2F03C00E94571E20 +:103C4000682F70E080E090E0CF910C94EB18CF915A +:103C500008956DEE7EEF80E090E00E94952460E094 +:103C600082E090E00E94832460E083E090E00E9484 +:103C7000832460E084E090E00E94832460E085E09B +:103C800090E00C94832480E090E00E947D2421E069 +:103C90008D3E9E4F09F020E0822F089582E090E053 +:103CA0000C947524682F82E090E00C94832483E0C8 +:103CB00090E00C947524682F83E090E00C948324AA +:103CC00084E090E00C947524682F84E090E00C94DC +:103CD00083248091E20180FF0BC06091130185E095 +:103CE000689FB001112475956795759567952BC0F0 +:103CF00081FF09C06091130185E0689FB001112424 +:103D00007595679520C082FF07C06091130185E01B +:103D1000689FB001112417C09091E3019923D1F05D +:103D200060911201961788F72091130185E0289F72 +:103D300090011124929FA001939F500D112470E0D7 +:103D4000CA010E9447246038710540F4611571056D +:103D500039F002C065E070E0862F08958FE708957E +:103D600081E008958091E20180FF08C06091110117 +:103D700070E0759567957595679521C081FF06C0C0 +:103D80006091110170E07595679519C082FF04C0BC +:103D90006091110170E010C09091E3019923C1F08E +:103DA000609110019617A0F780911101899FC001C1 +:103DB000112470E00E9447246038710528F46115D1 +:103DC000710521F0862F08958FE7089581E0089509 +:103DD00061E070E0F4CF803F21F40E94691E81957C +:103DE00004C0813F29F40E94691E8093E601089572 +:103DF000823F21F40E94691E819504C0833F29F40B +:103E00000E94691E8093E5010895893F19F40E947C +:103E1000B21E05C08A3F31F40E94B21E8195809384 +:103E2000E70108958B3F21F40E94B21E819504C0E2 +:103E30008C3F29F40E94B21E8093E8010895843FCC +:103E400021F48091E401816017C0853F21F48091C5 +:103E5000E401826011C0863F21F48091E401846016 +:103E60000BC0873F21F48091E401886005C0883F42 +:103E700031F48091E40180618093E40108958D3FE5 +:103E800021F48091E20181600BC08E3F21F480918A +:103E9000E201826005C08F3F29F48091E2018460D5 +:103EA0008093E2010895803F39F48091E60187FF15 +:103EB0006CC01092E60169C0813F29F48091E6014F +:103EC0001816BCF362C09091E501823F29F497FF78 +:103ED0005CC01092E50159C0833F19F41916CCF368 +:103EE00054C0893F41F48091E70118160CF04DC091 +:103EF0001092E7014AC08A3F29F48091E70187FFC9 +:103F000044C0F6CF8B3F39F48091E80187FF3DC074 +:103F10001092E8013AC08C3F29F48091E80118160C +:103F2000BCF333C0843F21F48091E4018E7F17C03D +:103F3000853F21F48091E4018D7F11C0863F21F4FB +:103F40008091E4018B7F0BC0873F21F48091E401D5 +:103F5000877F05C0883F31F48091E4018F7E809394 +:103F6000E40113C08D3F21F48091E2018E7F0BC0EC +:103F70008E3F21F48091E2018D7F05C08F3F29F4AF +:103F80008091E2018B7F8093E2018091E5018111B4 +:103F90000EC08091E60181110AC08091E701811174 +:103FA00006C08091E801811102C01092E3010895DA +:103FB00084EE91E00E94A9100E94431C9093E101BD +:103FC0008093E00108951F93CF93DF938091E001E8 +:103FD0009091E1010E944F1CAC019091E301992363 +:103FE00021F02091140130E006C0209115018AE0F3 +:103FF000289F900111244217530708F486C080912E +:10400000E501C091E601D091E7011091E80181112D +:1040100007C0C11176C0D11174C0111172C075C032 +:104020009F3F19F09F5F9093E301181624F40E94BC +:10403000691E8093E5018091E50187FF05C00E941C +:10404000691E81958093E5011C1624F40E94691E67 +:104050008093E6018091E60187FF05C00E94691EFA +:1040600081958093E6016091E501662339F1C09165 +:10407000E601CC2319F1772767FD7095872F972FDD +:104080000E94582323E333E343E35FE30E94BC230E +:104090000E9425236093E5016C2F772767FD7095BB +:1040A000872F972F0E94582323E333E343E35FE3F3 +:1040B0000E94BC230E9425236093E6011D1624F470 +:1040C0000E94B21E8093E7018091E70187FF05C03F +:1040D0000E94B21E81958093E701111624F40E947C +:1040E000B21E8093E8018091E80187FF05C00E941D +:1040F000B21E81958093E801DF91CF911F910C94BE +:10410000D81F9F3F09F08ECF96CFDF91CF911F919F +:104110000895E4EEF1E085E0DF011D928A95E9F76C +:104120001092E3011092E2010895833081F128F4A6 +:10413000813059F08230D1F00895853009F449C0BA +:10414000B8F1863009F456C0089580911501262FE4 +:1041500030E0280F311D2F3F310524F4680F6093A4 +:10416000150108958FEF8093150108958091140132 +:10417000262F30E0280F311D2F3F310524F4680F22 +:104180006093140108958FEF809314010895809136 +:104190001301262F30E0280F311D2F3F310524F465 +:1041A000680F6093130108958FEF809313010895B2 +:1041B00080911201262F30E0280F311D2F3F31054D +:1041C00024F4680F6093120108958FEF8093120119 +:1041D000089580911101262F30E0280F311D2F3FC7 +:1041E000310524F4680F6093110108958FEF8093D7 +:1041F0001101089580911001262F30E0280F311D04 +:104200002F3F310524F4680F6093100108958FEF5C +:10421000809310010895833011F128F4813049F022 +:10422000823091F00895853081F120F18630C1F11E +:10423000089580911501681720F4861B809315015D +:10424000089510921501089580911401681720F4C3 +:10425000861B809314010895109214010895809193 +:104260001301681720F4861B8093130108951092A0 +:104270001301089580911201681720F4861B809322 +:10428000120108951092120108958091110168178A +:1042900020F4861B80931101089510921101089556 +:1042A00080911001681720F4861B809310010895F7 +:1042B0001092100108950F931F938D3109F46BC074 +:1042C00008F03FC08E3009F47FC0C0F4873009F495 +:1042D00069C068F4863009F0B1C08091DA01817F4D +:1042E0008E7F8093DA0181E08093EA01A8C0883054 +:1042F00009F4A2C08B3009F49FC0A0C0863109F434 +:104300009BC078F4803109F472C0813109F096C005 +:104310000E942B1590910D0181E0892780930D015A +:104320008BC0893109F488C08B3109F087C0809136 +:10433000DA0181FB222720F991E0922790FB81F995 +:104340004CC0853309F470C048F4873209F46CC05E +:1043500008F459C0893209F467C070C0833438F456 +:104360008A3308F04EC0883309F466C067C08334CE +:1043700009F45AC0883409F061C00E942B150FEF70 +:1043800013ED20E3015010402040E1F700C0000091 +:104390000E949E1C51C00E94DF220E9492100E9427 +:1043A0008B094AC09091DA01892F8095817080FB3A +:1043B00090F929F0966098609093DA0140C0997F57 +:1043C000977F9093DA0138C08091DA0182FB22272F +:1043D00020F991E0922790FB82F98093DA019923EA +:1043E00059F18091DA0181608093DA0125C08091D2 +:1043F000DA0183FB222720F991E0922790FB83F9D1 +:10440000ECCF895301C08D5141E050E060E070E095 +:104410008A019B0104C0000F111F221F331F8A95C0 +:10442000D2F7C901B80104C061E070E080E090E01B +:104430000E94EB180E942B1581E001C080E01F91C3 +:104440000F91089580E0089580E00895CF93C82FDC +:104450008091EA01813079F018F08230E9F187C06B +:10446000E0910E01F0910F018081813169F082327B +:1044700009F07FC009C0E0910E01F0910F01808129 +:10448000813111F0823261F48C2F0E94222281113D +:1044900004C08C2F0E945B211DC081E090E01AC0F7 +:1044A0008C2F0E942422811114C0C43179F048F469 +:1044B000CB3079F0C03109F060C082E08093EA012E +:1044C00008C0C93219F0C83321F057C01092EA0170 +:1044D00054C081E0817053C0C93289F118F5C431EC +:1044E00071F1A8F4C73009F046C08AE08093150145 +:1044F00094E19093140193E090931301809312013F +:1045000088E08093110188E28093100134C0CE517D +:10451000C63088F5EC2FF0E0E65DFE4F8081809399 +:10452000E90129C0CE34E9F020F4CB3421F56AE06A +:1045300013C0C13579F0C235F1F461E00DC080914E +:10454000E901882319F01092E90115C081E08093F8 +:10455000EA0115C061E006C08091E9010E94952042 +:104560000AC06AE08091E9010E940B2104C0109208 +:10457000EA0180E004C081E002C080E0ABCFCF91CF +:104580000895E1E8F0E08081886080838081816027 +:1045900080838FB7F89493E09093890090ED909387 +:1045A00088008FBF0895EFE6F0E08081826080830D +:1045B0000895EFE6F0E080818D7F80830895EFE637 +:1045C000F0E0908182E08927808308951F920F9206 +:1045D0000FB60F9211242F933F934F935F936F93D6 +:1045E0007F938F939F93AF93BF93EF93FF938091AC +:1045F000EB019091EC0101969093EC018093EB011B +:10460000811103C082E00E948B09E091EC01E695E4 +:10461000E695F0E0EC5FF94FE4918091EB018E13A9 +:1046200003C080E00E948B09FF91EF91BF91AF9191 +:104630009F918F917F916F915F914F913F912F91BA +:104640000F900FBE0F901F90189504D06894B11171 +:104650008DC0089570D088F09F5790F0B92F99279A +:10466000B751A0F0D1F0660F771F881F991F1AF07D +:10467000BA95C9F712C0B13081F077D0B1E0089592 +:1046800074C0672F782F8827B85F39F0B93FCCF313 +:10469000869577956795B395D9F73EF49095809573 +:1046A000709561957F4F8F4F9F4F0895E89409C093 +:1046B00097FB3EF490958095709561957F4F8F4F55 +:1046C0009F4F9923A9F0F92F96E9BB279395F6956B +:1046D000879577956795B795F111F8CFFAF4BB0FE9 +:1046E00011F460FF1BC06F5F7F4F8F4F9F4F16C04D +:1046F000882311F096E911C0772321F09EE8872FD7 +:10470000762F05C0662371F096E8862F70E060E092 +:104710002AF09A95660F771F881FDAF7880F96950B +:10472000879597F9089557FD9058440F551F59F0F4 +:104730005F3F71F04795880F97FB991F61F09F3F8E +:1047400079F087950895121613061406551FF2CFB7 +:104750004695F1DF08C0161617061806991FF1CF07 +:1047600086957105610508940895E894BB2766272E +:104770007727CB0197F908950BD078C069D028F03E +:104780006ED018F0952309F05AC05FC01124EECF07 +:10479000CADFA0F3959FD1F3950F50E0551F629F9C +:1047A000F001729FBB27F00DB11D639FAA27F00D8A +:1047B000B11DAA1F649F6627B00DA11D661F829FB1 +:1047C0002227B00DA11D621F739FB00DA11D621F96 +:1047D000839FA00D611D221F749F3327A00D611DB3 +:1047E000231F849F600D211D822F762F6A2F112495 +:1047F0009F5750408AF0E1F088234AF0EE0FFF1FE8 +:10480000BB1F661F771F881F91505040A9F79E3F1E +:10481000510570F014C0AACF5F3FECF3983EDCF373 +:10482000869577956795B795F795E7959F5FC1F75B +:10483000FE2B880F911D9695879597F9089597F906 +:104840009F6780E870E060E008959FEF80EC089536 +:1048500000240A941616170618060906089500245F +:104860000A9412161306140605060895092E0394D9 +:10487000000C11F4882352F0BB0F40F4BF2B11F44D +:1048800060FF04C06F5F7F4F8F4F9F4F089597FB6E +:10489000072E16F4009407D077FD09D00E946124FA +:1048A00007FC05D03EF4909581959F4F0895709533 +:1048B00061957F4F0895EE0FFF1F0590F491E02D55 +:1048C0000994AA1BBB1B51E107C0AA1FBB1FA61757 +:1048D000B70710F0A61BB70B881F991F5A95A9F7A9 +:1048E00080959095BC01CD010895F999FECF92BDB8 +:1048F00081BDF89A992780B50895A8E1B0E042E01B +:1049000050E00C949D24262FF999FECF92BD81BDD5 +:10491000F89A019700B4021639F01FBA20BD0FB6FD +:10492000F894FA9AF99A0FBE08950196272F0E94DB +:1049300084240C948324DC01CB01FC01F999FECF83 +:1049400006C0F2BDE1BDF89A319600B40D92415017 +:0A4950005040B8F70895F894FFCF27 +:10495A0002208D091B0AF809C40990090101C7013F +:10496A0028080A03140A3F4D3639C5057805420559 +:10497A0009059C04B504CE04E704010203040506F4 +:04498A000708090011 +:00000001FF diff --git a/keyboards/ergodox_ez/keymaps/jacobono/img/colemak-default-layer.png b/keyboards/ergodox_ez/keymaps/jacobono/img/colemak-default-layer.png new file mode 100644 index 0000000000..06f63c4968 Binary files /dev/null and b/keyboards/ergodox_ez/keymaps/jacobono/img/colemak-default-layer.png differ diff --git a/keyboards/ergodox_ez/keymaps/jacobono/img/number-dpad-layer.png b/keyboards/ergodox_ez/keymaps/jacobono/img/number-dpad-layer.png new file mode 100644 index 0000000000..4dd7182785 Binary files /dev/null and b/keyboards/ergodox_ez/keymaps/jacobono/img/number-dpad-layer.png differ diff --git a/keyboards/ergodox_ez/keymaps/jacobono/img/symbol-layer.png b/keyboards/ergodox_ez/keymaps/jacobono/img/symbol-layer.png new file mode 100644 index 0000000000..ee224cf0c1 Binary files /dev/null and b/keyboards/ergodox_ez/keymaps/jacobono/img/symbol-layer.png differ diff --git a/keyboards/ergodox_ez/keymaps/jacobono/keymap.c b/keyboards/ergodox_ez/keymaps/jacobono/keymap.c new file mode 100644 index 0000000000..6b19800af0 --- /dev/null +++ b/keyboards/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/keyboards/ergodox_ez/keymaps/jgarr/compiled.hex b/keyboards/ergodox_ez/keymaps/jgarr/compiled.hex new file mode 100644 index 0000000000..d452983998 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/jgarr/compiled.hex @@ -0,0 +1,1158 @@ +:100000000C947A020C94BE020C94BE020C94BE02B4 +:100010000C94BE020C94BE020C94BE020C94BE0260 +:100020000C94BE020C94BE020C94620D0C94340E1F +:100030000C94BE020C94BE020C94BE020C94BE0240 +:100040000C94BE020C943E220C94BE020C94BE0290 +:100050000C94BE020C94D11B0C94BE020C94BE02F4 +:100060000C94BE020C94BE020C94BE020C94BE0210 +:100070000C94BE020C94BE020C94BE020C94BE0200 +:100080000C94BE020C94BE020C94BE020C94BE02F0 +:100090000C94BE020C94BE020C94BE020C94BE02E0 +:1000A0000C94BE020C94BE020C94BE02A10EC30EB0 +:1000B000B10FC30EB10F080F2B0FB10F800F930FAD +:1000C0006212621291129112C712E71218141814D8 +:1000D000F2121814A213A2130914181418141214EB +:1000E000AF13AF13AF13AF13AF13AF13AF13AF1300 +:1000F000AF13AF13AF13AF13AF13AF13AF13AF13F0 +:10010000C113CE13D513DC13E6130000F0A13500A4 +:100110002B002971E100E00000001E003400040003 +:100120003371E3004D001F00360012001400E2009E +:100130002A002000370008000D0050002C0021008C +:10014000130018000E004F004A0022001C000C0093 +:100150001B000000E1044C0001540000007F00007F +:10016000E3002A000154000000770000E2002300B1 +:100170000900070005000000C10024000A000B0070 +:10018000100052004B002500060017001A00510015 +:100190002C0026001500110019002F002800270050 +:1001A0000F0016421D7130004E00310038002D0046 +:1001B000E5002E0000000100010001000100010027 +:1001C00000003A001E0220022202010001003B0052 +:1001D0001F0221022302010001003C002F0226021F +:1001E0002F00010001003D00300227023000010015 +:1001F00001003E003102350035020000010001001F +:1002000001000000010000000100010001000000E9 +:100210000100000001003F005200510024020000D4 +:1002200001004000240021001E00010001004100E7 +:10023000250022001F003700010042002600230095 +:10024000200027000100430025022E0231002E006D +:100250000100440045000100010001000000010010 +:100260000100010001000100000001000100010087 +:1002700001000100010001000100F2000100010085 +:1002800001000100F000F1000100F4000100010094 +:100290000100F3000100F500010001000100010070 +:1002A0000100000001000100010000000100000049 +:1002B0000100010001000000010000000100010038 +:1002C0000100010001000000010001000100010027 +:1002D0000100A9000100010001000100AC00AA001A +:1002E000B600010001000100AB00A8000100010000 +:1002F0000100010001000100010001000100AE0049 +:1003000001000100000016034500720067006F0045 +:1003100044006F007800200045005A0000001603DA +:100320004500720067006F0044006F0078002000F5 +:1003300045005A0000000403090409026D0004018D +:1003400000A0FA09040000010301010009211101C4 +:100350000001223F000705810308000A090401008B +:100360000103010200092111010001224D000705CE +:10037000820308000A0904020001030000000921A9 +:10038000110100012236000705830308000A090451 +:1003900003000103000000092111010001223900BE +:1003A000070584031000011201100100000008ED90 +:1003B000FE071301000102000105010906A1010564 +:1003C0000719E029E7150025019508750181020547 +:1003D000081901290595057501910295017503918B +:1003E0000105071900297715002501957875018108 +:1003F00002C005010980A101850216010026B7008F +:100400001A01002AB700751095018100C0050C097A +:1004100001A1018503160100269C021A01002A9CF5 +:1004200002751095018100C005010902A1010901B1 +:10043000A10005091901290515002501950575017A +:10044000810295017503810105010930093115818A +:10045000257F95027508810609381581257F95014C +:1004600075088106050C0A38021581257F950175EE +:10047000088106C0C005010906A101050719E02988 +:10048000E715002501950875018102950175088120 +:100490000105081901290595057501910295017558 +:1004A0000391010507190029FF150025FF95067521 +:1004B000088100C0000000000000000000000001F2 +:1004C0000204060A0F17202C3A4A5D71879DB3C7B4 +:1004D000DAE9F5FCFFFCF5E9DAC7B39D87715D4AFF +:1004E0003A2C20170F0A0604020100000000000049 +:1004F0000000000011241FBECFEFDAE0DEBFCDBF49 +:1005000004B603FE24C08091FB019091FC01A091F0 +:10051000FD01B091FE018730904BA740B04BB9F47C +:100520001092FB011092FC011092FD011092FE014D +:1005300014BE84B7877F84BF88E10FB6F894809398 +:100540006000109260000FBEE0E0FFE3099511E04B +:10055000A0E0B1E0EAE0F8E402C005900D92A43317 +:10056000B107D9F711E0A4E3B1E001C01D92AB3FA0 +:10057000B107E1F70E94A60A0C9403240C94000032 +:100580001092B9008AE08093B800089594EA90939D +:10059000BC009091BC0097FFFCCF9091B900987F70 +:1005A000983021F0903111F081E008958093BB00E4 +:1005B00084E88093BC008091BC0087FFFCCF8091D1 +:1005C000B900887F883111F0803471F780E0089598 +:1005D00084E98093BC008091BC0084FDFCCF089529 +:1005E0008093BB0084E88093BC008091BC0087FFAF +:1005F000FCCF9091B900987F81E0983209F480E0B7 +:10060000089584E88093BC008091BC0087FFFCCFF4 +:100610008091BB00089580910101811115C080E493 +:100620000E94C6028093010181110CC082E10E94E8 +:10063000F00280930101811105C08FEF0E94F0024A +:10064000809301010E94E80284B1807F84B985B162 +:10065000807F85B98AB1837F8AB98BB1837F8BB95B +:100660003E98469808950E94C604809301010E9416 +:100670000B0380B38C7080BB81B3836F81BBA5E318 +:10068000B1E0E3E4F1E08EE08E0F11921D928E1343 +:10069000FCCF0C94B004BF92CF92DF92EF92FF9206 +:1006A0000F931F93CF93DF9380910101882379F0FB +:1006B000809134018F5F80933401811108C00E94C2 +:1006C000C60480930101811102C00E94580405E311 +:1006D00011E0C0E0D0E0DD24D39482E0C82EEE2407 +:1006E000E394F12CC730D10500F58091010181110F +:1006F00064C080E40E94C60280930101811112C08F +:1007000082E10E94F0028093010181110BC0C701B8 +:100710000C2E01C0880F0A94EAF780950E94F0021F +:10072000809301010E94E80248C0CA30A1F028F479 +:10073000C83059F0C93061F005C0CC3089F070F094 +:10074000CD3089F0209A289810C0219A29980DC0A0 +:10075000229A2A980AC0239A2B9807C0529A01C05D +:10076000539A5B9802C03E9A469890EA9A95F1F7A0 +:100770009FB1799902C082E001C080E091709D250F +:10078000982B7C9902C084E001C080E0892B7D9980 +:1007900002C038E001C030E0832B7E9902C020E126 +:1007A00001C020E0822B9FB19095991F9927991F36 +:1007B0009295990F907E892B0FC080910101811134 +:1007C00049C080E40E94C60280930101882379F128 +:1007D000B12C0E94E8028B2DF8019081981719F036 +:1007E0008083C09200010E940B0321960F5F1F4F70 +:1007F000CE30D10509F076CF80910001882361F1D8 +:10080000815080930001882339F08FE99FE00197A0 +:10081000F1F700C0000020C0A3E4B1E0E5E3F1E09F +:10082000CF01825F91919D938E13FCCF15C083E120 +:100830000E94F002809301018111CACF81E40E94DD +:10084000C602809301018111C3CF0E940103B82E1B +:10085000B094BFCF80E0C0CF0E94560481E0DF910A +:10086000CF911F910F91FF90EF90DF90CF90BF90AD +:100870000895E82FF0E0ED5BFE4F80810895089524 +:100880000F931F93CF93DF93C3E4D1E010E00C2FBD +:10089000025F899190E00E94F71A180F0C13F9CFAC +:1008A000812FDF91CF911F910F9108950C94260510 +:1008B00056985E9825982D9826982E9827982F98C8 +:1008C0008FEF90E0909389008093880090938B0045 +:1008D00080938A0090938D0080938C00259A2D9AA6 +:1008E0002FEF80E792E0215080409040E1F700C078 +:1008F0000000269A2E9A2FEF80E792E02150804048 +:100900009040E1F700C00000279A2F9A2FEF80E770 +:1009100092E0215080409040E1F700C0000025980F +:100920002D982FEF80E792E0215080409040E1F732 +:1009300000C0000026982E982FEF80E792E021500B +:1009400080409040E1F700C0000027982F9856980B +:100950005E9825982D9826982E9827982F98089578 +:1009600089EA8093800089E08093810024982C9804 +:100970003F988AB18F748AB96E98479A8BB1806B11 +:100980008BB9769A0E9458040C94250580E28093D6 +:1009900001018091510181110EC00E94C00281E0CD +:1009A000809351012FEF83ED90E3215080409040E0 +:1009B000E1F700C0000080E40E94C60280930101BC +:1009C00081112EC00E94F00280930101811128C084 +:1009D0000E94F00280930101811122C08FE30E94E6 +:1009E000F0028093010181111BC00E94E80280E4A3 +:1009F0000E94C60280930101811112C08CE00E9406 +:100A0000F0028093010181110BC00E94F0028093DB +:100A10000101811105C08FE30E94F0028093010162 +:100A20000E94E80280910101089561110BC0FC0150 +:100A30008281882321F085EE0E94061103C085EE95 +:100A40000E94CE1180E090E0089508956091BD016C +:100A50007091BE018091BF019091C0010E94031B63 +:100A600056985E9825982D9826982E9827982F9816 +:100A7000813019F0823021F00895259A2D9A089539 +:100A8000269A2E9A089581E0089581E008950C94A5 +:100A9000450508950F931F93CF93DF938C01FC01BD +:100AA000C081D181CE010E947C19BE010E94F30554 +:100AB000EC01B8010E944705882309F48DC0F801B4 +:100AC0008281882309F44AC080915D0181111FC091 +:100AD000C431F0E5DF0709F051C00E94490581E00B +:100AE00080935D010E949B1B90935C0180935B014E +:100AF0001092540110925601109255011092580113 +:100B00001092570110925A011092590165C08091BC +:100B10005B0190915C010E94A71B883C910570F4D9 +:100B200080915401E82FF0E0EE0FFF1FEB5AFE4FCB +:100B3000D183C0838F5F809354014EC0C43880E559 +:100B4000D80721F0C538D04501F13AC0F8018281BB +:100B5000882341F01092520182E01EC0C438E0E5C3 +:100B6000DE0759F580915201811106C086E20E948C +:100B7000061186E20E94CE1182E01CC0C438F0E566 +:100B8000DF0741F3C538D045D9F4F80182818823C5 +:100B900031F01092530180E20E941D121DC080911D +:100BA0005301811106C087E20E94061187E20E946C +:100BB000CE1180E20E9424120FC0C538D04529F31F +:100BC00081E08093520180935301C801DF91CF915E +:100BD0001F910F910C94430580E0DF91CF911F91FD +:100BE0000F910895089596E0799FF001112494E5FE +:100BF000899FE00DF11D1124E60FF11DEE0FFF1F7F +:100C0000E25FFE4F859194910895880F991FFC0132 +:100C1000E657F040859194910895880F991FFC0143 +:100C2000E65FFE4F8591949108950F931F93CF93A4 +:100C3000DF93EC01811520E3920750F5C11580E2A6 +:100C4000D80708F0C3C0CB3BD10590F4C83AD10512 +:100C500008F06AC0C53AD10508F05BC0C430D105C0 +:100C600008F0D0C1219709F0CAC101E010E00AC222 +:100C7000CF3FD10511F008F0C5C1C03FD10508F044 +:100C8000A2C0CE01805E9109089708F4BBC1B7C12C +:100C9000C13090E5D90709F4A2C020F5C0318FE436 +:100CA000D80770F4C11590E4D90708F094C0C115B5 +:100CB00021E3D20708F0A3C1DD278E01106CE2C149 +:100CC000C115D04509F09BC10E9483148FEF94E3B6 +:100CD0002CE0815090402040E1F700C000000E94CD +:100CE000F61BD0C1C11597E5D90758F4C03121E5ED +:100CF000D20708F01CC1C43180E5D80708F475C0DC +:100D00007EC1CE0190578115904108F078C1DF7007 +:100D100073C1C53AD10509F477C1C63AD10509F0C6 +:100D200076C102E810E4AEC1C83AD10509F472C137 +:100D3000C93AD10509F471C1CA3AD10509F470C1A3 +:100D4000CB3AD10509F46FC1CC3AD10509F46EC193 +:100D5000CD3AD10509F46DC1C03BD10509F46CC190 +:100D6000CE3AD10509F46BC1CF3AD10509F46AC175 +:100D7000C13BD10509F469C1C23BD10509F468C181 +:100D8000C33BD10509F467C1C43BD10509F466C171 +:100D9000C53BD10509F465C1C63BD10509F464C161 +:100DA000C73BD10509F463C1C83BD10509F462C151 +:100DB000C93BD10509F461C1CA3BD10509F460C141 +:100DC00000E014E45FC18E0110655CC1CE019F702C +:100DD0000E940D0658C1DF708E01106A53C18091C8 +:100DE000DA0181608093DA014DC10E949B1D81115F +:100DF00002C00E94811D0E94B81D90E09093FB01EB +:100E00008093FA01C23080E5D80721F48091FA017D +:100E1000816086C0C43090E5D90721F48091FA0141 +:100E200082607EC0C63020E5D20721F48091FA01AD +:100E3000846076C0C83080E5D80719F48091FA0143 +:100E400027C0CA3090E5D90721F48091FA0180616A +:100E500067C0CC3020E5D20721F48091FA0180628E +:100E60005FC0CE3080E5D80721F48091FA0180641C +:100E700057C0C03190E5D90721F48091FA0180680C +:100E80004FC0C23120E5D20729F48091FA01846075 +:100E9000886046C0C33080E5D80721F48091FA010C +:100EA0008E7F3EC0C53090E5D90721F48091FA01CC +:100EB0008D7F36C0C73020E5D20721F48091FA013A +:100EC0008B7F2EC0C93080E5D80719F48091FA01D4 +:100ED00026C0CB3090E5D90721F48091FA018F7EAE +:100EE0001FC0CD3020E5D20721F48091FA018F7D1B +:100EF00017C0CF3080E5D80721F48091FA018F7BAD +:100F00000FC0C13190E5D90721F48091FA018F77A4 +:100F100007C0C331D04531F48091FA018B7F877FC0 +:100F20008093FA018091FA010E94BC1DABC08D2F05 +:100F300099278F70992781309105D9F49E012370EC +:100F4000332702C0880F991F2A95E2F79C688E010B +:100F500044E0000F111F4A95E1F700271370802B22 +:100F6000912B53E0CC0FDD1F5A95E1F7C076DD27BA +:100F70002FC08230910531F4DC2FCC278E01016F18 +:100F8000106A80C08330910569F4CE01837099277F +:100F900001E010E002C0000F111F8A95E2F7C801BE +:100FA0009C680FC084309105B9F4CE0183709927F5 +:100FB00001E010E002C0000F111F8A95E2F7C8019E +:100FC0009A6823E0CC0FDD1F2A95E1F7C07ED77029 +:100FD0008C010C2B1D2B56C08530910531F4DC2F74 +:100FE000CC278E01046F106A4DC0069709F04AC0E5 +:100FF000CF71DD27DC2FCC278E01106243C000E0CB +:1010000010E040C08E013EC001E810E43BC003E8A0 +:1010100010E438C002EE14E435C009EE14E432C026 +:101020000AEE14E42FC005EB14E42CC006EB14E424 +:1010300029C007EB14E426C00CEC14E423C00DEC2B +:1010400014E420C003E815E41DC00AE815E41AC042 +:1010500002E915E417C004E915E414C001E216E43E +:1010600011C003E216E40EC004E216E40BC005E270 +:1010700016E408C006E216E405C007E216E402C062 +:101080000AE216E4C801DF91CF911F910F910895F4 +:1010900096E0799FF001112494E5899FE00DF11D00 +:1010A0001124E60FF11DEE0FFF1FE25FFE4F859149 +:1010B0009491803E9105E0F4803C910558F5813390 +:1010C000910509F46FC048F48932910509F463C0B1 +:1010D0008A32910509F46DC072C089339105E9F037 +:1010E00082389105D1F08533910509F44DC067C070 +:1010F000833E910581F138F4803E9105B9F0823E3E +:101100009105D9F05CC0863E910561F1873E91055D +:10111000A1F155C00E94050608952091FA0120FD15 +:1011200002C021FF4CC080EE90E049C08091FA01DE +:1011300080FFF9CF89E390E042C08091FA0182FFFD +:101140000EC08091FA0184FF03C080E090E037C0B8 +:1011500083EE90E034C08091FA0182FFF2CF82EEFC +:1011600090E02DC08091FA0183FF0BC08091FA01BD +:1011700084FDEBCF87EE90E022C08091FA0183FFDF +:10118000F5CF86EE90E01BC08091FA0185FF07C085 +:1011900089E290E014C08091FA0185FFF9CF85E3E0 +:1011A00090E00DC08091FA0186FF07C08AE290E0CE +:1011B00006C08091FA0186FFF9CF81E390E00E949A +:1011C0001506089508950C94E20880916E01089523 +:1011D000CF93DF9300D01F92CDB7DEB79C018091F3 +:1011E000F101843019F593E099833B832A8390932E +:1011F000E9008FEF9091E800815095FD06C095EDD4 +:101200009A95F1F700008111F5CF8091E80085FFF4 +:101210000DC040E050E063E070E0CE0101960E9416 +:10122000520B8091E8008E778093E8000F900F902A +:101230000F90DF91CF910895CF93DF9300D01F924D +:10124000CDB7DEB72091F101243021F522E02983CA +:101250009B838A8383E08093E9008FEF9091E8007D +:10126000815095FD06C095ED9A95F1F7000081112A +:10127000F5CF8091E80085FF0DC040E050E063E0CD +:1012800070E0CE0101960E94520B8091E8008E77AB +:101290008093E8000F900F900F90DF91CF91089509 +:1012A0002091F1012430F1F422E02093E9002FEFA6 +:1012B0003091E800215035FD06C035ED3A95F1F743 +:1012C00000002111F5CF2091E80025FF0BC040E080 +:1012D00050E065E070E00E94520B8091E8008E774C +:1012E0008093E8000895CF93DF93EC019091F10192 +:1012F000943009F046C080910C018823D9F0809188 +:101300000D018823B9F09093E9008FEF9091E800E8 +:10131000815095FD06C095E19A95F1F70000811185 +:10132000F5CF8091E80085FF2CC040E050E060E1FF +:1013300070E017C081E08093E9008FEF9091E800A2 +:10134000815095FD06C095ED9A95F1F70000811149 +:10135000F5CF8091E80085FF14C040E050E068E0E0 +:1013600070E0CE010E94520B8091E8008E7780934E +:10137000E80080E1FE01AEE5B1E001900D928A95B2 +:10138000E1F7DF91CF9108958091F001811109C0BB +:101390000E94E70C0E94440D8091E20084608093DB +:1013A000E20008951092F001089508950C942B2204 +:1013B0000E948C1B0E9431220E94EA0F0C94E308C9 +:1013C00042E061EC81E00E94610C42E061EC82E06D +:1013D0000E94610C42E061EC83E00E94610C42E1FA +:1013E00061EC84E00C94610C8091F301833009F48A +:1013F00055C030F4813071F0823009F48EC0089508 +:101400008A3009F47AC08B3009F460C0893009F061 +:101410009CC020C08091F201813A09F096C0809171 +:10142000E800877F8093E8008091F6019091F701B2 +:10143000892B21F460E18EE591E003C060E080E05B +:1014400090E070E00E949D0B8091E8008B77809384 +:10145000E80008958091F201813209F076C0809110 +:10146000F6019091F701009719F0039709F06DC00C +:101470008091E800877F8093E8008091E80082FDFA +:1014800005C08091F1018111F8CF5FC08091F1001A +:1014900080936E018091E8008B7753C08091F201B8 +:1014A000813A09F052C08091F6019091F701892BA1 +:1014B00009F04BC08091E800877F8093E80080911D +:1014C000E80080FFFCCF80910C0136C08091F201D2 +:1014D0008132D9F58091F6019091F701892BA9F518 +:1014E0008091E800877F8093E8000E94960C8091AD +:1014F000F40180930C010C9483148091F2018132E9 +:1015000021F58091E800877F8093E8000E94960C87 +:101510008091F50180936F0108958091F201813AE5 +:10152000A1F48091E800877F8093E8008091E80033 +:1015300080FFFCCF80916F018093F1008091E800E3 +:101540008E778093E8000C94960C089584B7877F7B +:1015500084BF88E10FB6F894809360001092600019 +:101560000FBE90E080E80FB6F894809361009093EE +:1015700061000FBE0E9439100E94E70C0E94440DCA +:101580008091E20084608093E20078940E94CA0F08 +:101590000E943B1082E091E00E94E50F0E94192218 +:1015A0008091F101853069F40E94531B8091EF0115 +:1015B0008823B1F30E947E1B882391F30E943C0B89 +:1015C000EFCF0E944110ECCF292F33272330310574 +:1015D000C9F064F42130310581F02230310509F081 +:1015E00043C08DE690E02AE333E042C0213231056A +:1015F000F1F02232310541F137C082E190E027EA73 +:1016000033E036C099278130910541F08230910551 +:1016100041F0892B49F5E6E3F3E005C0EEE1F3E0A4 +:1016200002C0E6E0F3E0849190E09F0121C06430C5 +:10163000D8F4E62FF0E0EE0FFF1FEE5DFE4F2081A5 +:10164000318189E090E014C0643070F470E0FB01F7 +:10165000EE0FFF1FE65EFE4F20813181FB01EA5E47 +:10166000FE4F808190E004C080E090E020E030E018 +:10167000FA0131832083089580E189BD82E189BD2B +:1016800009B400FEFDCF8091D8008F7D8093D800F3 +:101690008091E00082608093E0008091E00081FD15 +:1016A000FCCF0895CF92DF92EF92FF920F931F939A +:1016B000CF93DF93EC018B016A010E94B50C81117D +:1016C00033C0C114D10439F0F60180819181081B27 +:1016D000190BC80FD91FE12CF12C0115110519F1B7 +:1016E0008091E80085FD16C08091E8008E77809398 +:1016F000E800C114D10449F0F60180819181E80E1F +:10170000F91EF182E08285E00FC00E94B50C8823AB +:1017100021F30AC089918093F10001501109FFEF74 +:10172000EF1AFF0ADACF80E0DF91CF911F910F917E +:10173000FF90EF90DF90CF9008952091F8013091C5 +:10174000F9012617370748F06115710539F4209122 +:10175000E8002E772093E80001C0B90140E0611550 +:101760007105A9F12091F101222309F443C025302C +:1017700009F442C02091E80023FD40C02091E80018 +:1017800022FD32C02091E80020FFE9CF4091F30014 +:101790002091F20030E0342BFC01CF01611571057E +:1017A00059F02830310540F481918093F100615067 +:1017B00071092F5F3F4FF1CF41E02830310509F02B +:1017C00040E02091E8002E772093E800C8CF411137 +:1017D000C9CF0AC08091F101882361F0853061F0A2 +:1017E0008091E80083FD0AC08091E80082FFF2CF7B +:1017F00080E0089582E0089583E0089581E00895EF +:101800002091F8013091F9012617370748F061154A +:10181000710539F42091E8002E772093E80001C08B +:10182000B901FC0120E06115710591F18091F10190 +:10183000882309F440C0853009F43FC08091E80056 +:1018400083FD3DC08091E80082FD2FC08091E800BB +:1018500080FFE9CF2091F3008091F20090E0922B7D +:101860006115710559F08830910540F42491209359 +:10187000F1003196615071090196F2CF21E008978D +:1018800009F020E08091E8008E778093E800CBCFCC +:101890002111CCCF0AC08091F101882361F08530FD +:1018A00061F08091E80083FD0AC08091E80082FF2A +:1018B000F2CF80E0089582E0089583E0089581E00A +:1018C0000895982F973058F59093E900981739F0BC +:1018D0007091EC002091ED005091F00003C0242F96 +:1018E000762F50E021FF19C03091EB003E7F3093FE +:1018F000EB003091ED003D7F3093ED003091EB0037 +:1019000031603093EB007093EC002093ED00509326 +:10191000F0002091EE0027FF07C09F5FD3CF8F70AC +:101920008093E90081E0089580E008958091F201BC +:1019300087FF11C08091E80082FD05C08091F10110 +:101940008111F8CF11C08091E8008B770BC0809196 +:10195000F101882349F08091E80080FFF8CF809161 +:10196000E8008E778093E80008952091E40030919C +:10197000E50095E64091EC00842F817040FF22C085 +:101980008091E80080FD1CC08091F101882391F0D6 +:10199000853091F08091EB0085FD10C04091E4000E +:1019A0005091E5004217530729F39A01915011F71E +:1019B00084E0089582E0089583E0089581E0089529 +:1019C00080E008954091E80042FFDECF08950E9434 +:1019D000550D0E945D0DE0EEF0E080818160808316 +:1019E000E8EDF0E080818F77808319BCA7EDB0E04F +:1019F0008C918E7F8C9380818F7E80831092F001FA +:101A000008950F931F93CF93DF930E94550D0E946B +:101A10005D0DC8EDD0E088818F77888388818068EC +:101A2000888388818F7D888319BC1092F101109280 +:101A3000ED011092EF011092EE0100EE10E0F801BE +:101A400080818B7F808388818160888342E060E031 +:101A500080E00E94610CE1EEF0E080818E7F808367 +:101A6000E2EEF0E080818160808380818860808305 +:101A7000F80180818E7F8083888180618883DF91F7 +:101A8000CF911F910F910895E8EDF0E080818F7E56 +:101A90008083E7EDF0E080818160808384E082BF15 +:101AA00081E08093F0010C94010DE8EDF0E080817D +:101AB0008E7F80831092E20008951092DA001092D7 +:101AC000E10008951F920F920FB60F9211242F93E9 +:101AD0003F934F935F936F937F938F939F93AF93B6 +:101AE000BF93EF93FF938091E10082FF0BC0809141 +:101AF000E20082FF07C08091E1008B7F8093E100CC +:101B00000E94C90F8091DA0080FF1FC08091D80029 +:101B100080FF1BC08091DA008E7F8093DA00809175 +:101B2000D90080FF0DC080E189BD82E189BD09B483 +:101B300000FEFDCF81E08093F1010E94C40905C041 +:101B400019BC1092F1010E94D2098091E10080FF3E +:101B500019C08091E20080FF15C08091E2008E7F65 +:101B60008093E2008091E20080618093E2008091A6 +:101B7000D80080628093D80019BC85E08093F10181 +:101B80000E94D6098091E10084FF30C08091E2007C +:101B900084FF2CC080E189BD82E189BD09B400FECB +:101BA000FDCF8091D8008F7D8093D8008091E10097 +:101BB0008F7E8093E1008091E2008F7E8093E2002F +:101BC0008091E20081608093E2008091ED018823A2 +:101BD00011F084E007C08091E30087FD02C081E03E +:101BE00001C083E08093F1010E94D8098091E10057 +:101BF00083FF29C08091E20083FF25C08091E1002E +:101C0000877F8093E10082E08093F1011092ED01E3 +:101C10008091E1008E7F8093E1008091E2008E7FD1 +:101C20008093E2008091E20080618093E20042E0D4 +:101C300060E080E00E94610C8091F00088608093F9 +:101C4000F0000E94D509FF91EF91BF91AF919F9154 +:101C50008F917F916F915F914F913F912F910F9055 +:101C60000FBE0F901F9018951F920F920FB60F92F4 +:101C700011242F933F934F935F936F937F938F9391 +:101C80009F93AF93BF93CF93DF93EF93FF93C09155 +:101C9000E900CF708091EC00D82FD17080FDD0E8A2 +:101CA0001092E9008091F000877F8093F000789493 +:101CB0000E94780E1092E9008091F0008860809375 +:101CC000F000CD2BCF70C093E900FF91EF91DF9131 +:101CD000CF91BF91AF919F918F917F916F915F91C4 +:101CE0004F913F912F910F900FBE0F901F9018951D +:101CF0001F93CF93DF93CDB7DEB7AA970FB6F894B3 +:101D0000DEBF0FBECDBFE2EFF1E088E08E0F909115 +:101D1000F10091938E13FBCF0E94F4098091E800AB +:101D200083FF1FC18091F2019091F301492F50E090 +:101D30004A30510508F015C1FA01EA5AFF4F0C94D8 +:101D4000B323803881F0823809F00BC18091F6010D +:101D50008F708093E9008091EB0085FB882780F9E4 +:101D60001092E90006C08091EE019091EF0191116F +:101D700082609091E800977F9093E8008093F10053 +:101D80001092F100C8C0282F2D7F09F0EAC08823E7 +:101D900019F0823061F0E5C08091F401813009F0E2 +:101DA000E0C0933009F080E08093EF012BC0809178 +:101DB000F401811127C08091F6018F7009F4D1C020 +:101DC0008093E9002091EB0020FF1CC0933021F4A8 +:101DD0008091EB00806214C09091EB009061909331 +:101DE000EB0021E030E0A90102C0440F551F8A95A5 +:101DF000E2F74093EA001092EA008091EB008860DD +:101E00008093EB001092E9008091E800877F86C004 +:101E10008111A7C01091F4011F778091E3008078B1 +:101E2000812B8093E3008091E800877F8093E80016 +:101E30000E94960C8091E80080FFFCCF8091E30027 +:101E400080688093E300111102C082E001C083E04A +:101E50008093F10186C08058823008F082C0809162 +:101E6000F4019091F5018C3D53E0950779F583E0FD +:101E70008A838AE289834FB7F894DE01139620E0C3 +:101E80003EE051E2E32FF0E050935700E49120FF51 +:101E900003C0E295EF703F5FEF708E2F90E0EA3065 +:101EA00010F0C79601C0C0968D939D932F5F24318B +:101EB00049F74FBF8091E800877F8093E8006AE28E +:101EC00070E0CE0101960E949D0B14C0AE014F5FE1 +:101ED0005F4F6091F6010E94E40ABC01009709F48B +:101EE00040C09091E800977F9093E80089819A81A3 +:101EF0000E94000C8091E8008B778093E80031C04D +:101F0000803879F58091E800877F8093E8008091A0 +:101F1000ED018093F1008091E8008E778093E800D6 +:101F20000E94960C1EC081111CC09091F401923049 +:101F3000C0F48091E800877F8093E8009093ED01E2 +:101F40000E94960C8091ED01811106C08091E30002 +:101F500087FD02C081E001C084E08093F1010E940E +:101F6000E0098091E80083FF0AC08091E800877F44 +:101F70008093E8008091EB0080628093EB00AA964A +:101F80000FB6F894DEBF0FBECDBFDF91CF911F918A +:101F900008950895CF938091F1018823A1F0C09115 +:101FA000E900CF709091EC00892F817090FD80E85E +:101FB000C82B1092E9008091E80083FD0E94780E02 +:101FC000CF70C093E900CF910895909375018093ED +:101FD00074010895E0917401F0917501309721F03A +:101FE0000190F081E02D099480E00895E091740162 +:101FF000F0917501309721F00280F381E02D099472 +:102000000895E0917401F0917501309721F00480FA +:10201000F581E02D099408952091720130917301AA +:102020008217930771F09093730180937201E0918E +:102030007401F0917501309721F00680F781E02D51 +:1020400009940895209170013091710182179307CE +:1020500071F09093710180937001E0917401F0919F +:102060007501309721F00084F185E02D09940895E1 +:1020700008950C9438100E94921B0E9433030C9414 +:10208000541C9F92AF92BF92CF92DF92EF92FF9239 +:102090000F931F93CF93DF9300D000D000D0CDB724 +:1020A000DEB70E944B030DE010E0AA24A394B12CEC +:1020B000902E802F0E943904980129583E4F6901C3 +:1020C000F901F080F826A1F40150110988F78FEF8B +:1020D00089838A831B820E949B1B8160782F9D834A +:1020E0008C8349815A816B818D810E94D8102FC0C9 +:1020F0009091DA0191FF04C08E830E943F048E818B +:1021000025E030E0A501022E01C0440F0A94EAF751 +:10211000E42E4F21C1F029839A828E2191E009F4A7 +:1021200090E09B830E949B1B8160782F9D838C8312 +:1021300049815A816B818D810E94D810F60180817E +:10214000E826E08204C021503109E0F6BDCF0E94AC +:102150003B1F109176010E94EA0F1817B9F00E94F8 +:10216000EA0F8093760126960FB6F894DEBF0FBE75 +:10217000CDBFDF91CF911F910F91FF90EF90DF9036 +:10218000CF90BF90AF909F900C94E30826960FB627 +:10219000F894DEBF0FBECDBFDF91CF911F910F919D +:1021A000FF90EF90DF90CF90BF90AF909F900895F9 +:1021B000CF93DF93CDB7DEB72B970FB6F894DEBF82 +:1021C0000FBECDBF4F83588769877A878B87DE0123 +:1021D000119686E0FD0111928A95E9F785E0FE01EE +:1021E000379601900D928A95E1F749815A816B816A +:1021F0007C818D819E810E9421172B960FB6F894C9 +:10220000DEBF0FBECDBFDF91CF910895CF9388235E +:1022100009F4C2C0C82F823859F40E94EA0F81FD28 +:10222000BBC089E30E94FB190E94C81A89E30CC055 +:10223000833879F40E94EA0F80FDAEC083E50E94E6 +:10224000FB190E94C81A83E50E943D1ACF910C9495 +:10225000C81A843859F40E94EA0F82FD9DC087E4B1 +:102260000E94FB190E94C81A87E4EECF8CEF8C0FF6 +:10227000813A48F48C2F0E947E2181118DC08C2FD1 +:102280000E94FB19E3CF80E28C0F883048F4C770BE +:1022900081E001C0880FCA95EAF70E94811AD6CF63 +:1022A0008BE58C0F833078F4C53A29F0C63A31F0CB +:1022B00083E890E005C081E890E002C082E890E009 +:1022C000CF910C940C1088E58C0F833108F064C01A +:1022D000C83A39F1C93A41F1CA3A49F1CB3A51F118 +:1022E000CC3A59F1CD3A61F1C03B69F1CE3A71F186 +:1022F000CF3A79F1C13B81F1C23B89F1C33B91F106 +:10230000C43B99F1C53BA1F1C63BA9F1C73BB1F173 +:10231000C83BB9F1C93BC1F1CA3BC9F180E090E0CB +:1023200038C082EE90E035C089EE90E032C08AEE8F +:1023300090E02FC085EB90E02CC086EB90E029C0A8 +:1023400087EB90E026C08CEC90E023C08DEC90E011 +:1023500020C083E891E01DC08AE891E01AC082E9BC +:1023600091E017C084E991E014C081E292E011C0CD +:1023700083E292E00EC084E292E00BC085E292E03C +:1023800008C086E292E005C087E292E002C08AE2DD +:1023900092E0CF910C942210CF910895882309F4F4 +:1023A0004BC0823859F40E94EA0F81FF45C089E38F +:1023B0000E94FB190E94C81A89E30CC0833871F48B +:1023C0000E94EA0F80FF38C083E50E94FB190E943B +:1023D000C81A83E50E943D1A0C94C81A843859F42F +:1023E0000E94EA0F82FF28C087E40E94FB190E9426 +:1023F000C81A87E4EFCF9CEF980F913A58F390E218 +:10240000980F983050F4877091E001C0990F8A9529 +:10241000EAF7892F0E94871ADFCF9BE5980F933048 +:1024200020F480E090E00C940C10885A833120F462 +:1024300080E090E00C9422100895882321F00E94FF +:10244000811A0C94C81A0895882321F00E94871AD3 +:102450000C94C81A08957F928F929F92AF92BF9268 +:10246000CF92DF92EF92FF920F931F93CF93DF9360 +:102470001F92CDB7DEB77C01C62E772EFC010581F9 +:1024800002950F70128111110E949E1A0E94F41978 +:10249000882379F0112369F080E28C0D883048F0B0 +:1024A00082E00E94DD190E94F41991E0D82ED9260D +:1024B00001C0D12CE72DE295EF70F0E0E05AFF4F1C +:1024C0000C94B323872D807F072D0F70882311F084 +:1024D0000295007F112389F0002309F490C180E266 +:1024E0008C0D883020F4802F0E94811A03C0802F29 +:1024F0000E94911A0E94C81A82C18C2D0E94CE118E +:10250000002309F495C180E28C0D883020F4802FDF +:102510000E94871A03C0802F0E94971A0E94C81A2F +:1025200087C1972D907F872D8F70903211F0829503 +:10253000807FCC2021F0F1E0CF16B1F01EC0112336 +:1025400049F0002309F414C1013009F011C10E94BF +:10255000B11A6EC1002319F0013009F469C18983F1 +:102560000E94B41A89810AC1112321F0023008F0B7 +:102570005FC1FEC001115CC101C1112321F0002324 +:1025800009F4F6C03CC1002309F4F8C03EC1872D10 +:1025900086958695837090E0009719F0019761F019 +:1025A00047C1112321F08C2D972D937002C080E03C +:1025B00090E00E940C103CC1112321F08C2D972D2E +:1025C000937002C080E090E00E94221031C18C2DF7 +:1025D000112319F00E94431E02C00E94AB1E0E94EC +:1025E000301F26C1872D837009F052C0111120C100 +:1025F0008C2D829586958770880F880F9C2D9F70F3 +:10260000892E912CA12CB12C082E04C0880C991C69 +:10261000AA1CBB1C0A94D2F7C4FE14C00FE010E041 +:1026200020E030E0B901A80104C0440F551F661F27 +:10263000771F8A95D2F7CB01BA0160957095809586 +:10264000909503C060E070E0CB01272D269526957C +:10265000237030E02230310569F02330310589F0F4 +:10266000682979298A299B292130310571F00E9436 +:102670006918DEC0682979298A299B290E94851852 +:10268000D7C00E946918C501B4010E944D18D0C07E +:10269000112319F0872D817001C08695882309F4D4 +:1026A000C7C08C2D829586958770880F880F9C2DCA +:1026B0009F70892E912CA12CB12C082E04C0880C5F +:1026C000991CAA1CBB1C0A94D2F7C4FE14C00FE0CC +:1026D00010E020E030E0B901A80104C0440F551F0C +:1026E000661F771F8A95D2F7CB01BA016095709566 +:1026F0008095909503C060E070E0CB01272D269572 +:1027000026952370422F50E04230510569F0433046 +:10271000510589F0682979298A299B294130510579 +:1027200071F00E94431984C0682979298A299B295C +:102730000E945F197DC00E944319C501B4010E9427 +:10274000271976C08C2D90E0FC01E05EF109E5319F +:10275000F10508F050C0E059FF4F0C94B3230C2D45 +:102760000F70872D8F71112331F00E94C018802FB8 +:102770000E941D125DC00E94E118802F0E94241249 +:1027800057C0112339F0011153C0872D8F710E945A +:1027900006194EC0023008F04BC0F7CF112339F0B4 +:1027A000872D8F710E94C01843C01123C9F3872D54 +:1027B0008F710E94E1183CC0112329F0872D8F7181 +:1027C0000E94AB1835C00E94A11832C0112351F0ED +:1027D000172D1F71812F0E94C01863E0812F0E9466 +:1027E000D41926C081E00E94DD19023008F182E090 +:1027F0000E94DD191DC0112331F0002389F28C2DB8 +:102800000E94061115C0002391F28C2D0E94CE115A +:102810000FC0472D4F706C2DC7010E9415050E94F7 +:10282000C51706C0472D4F706C2DC7010E94F205D9 +:10283000DD20F9F00E94D01980FD1BC0F701128243 +:102840000E94CA190E94C018C7010E9448140E9421 +:10285000CA190F90DF91CF911F910F91FF90EF90C8 +:10286000DF90CF90BF90AF909F908F907F900C940F +:10287000E1180F90DF91CF911F910F91FF90EF9092 +:10288000DF90CF90BF90AF909F908F907F900895F2 +:102890000F931F93CF93DF93EC01888199812B8154 +:1028A0003C81232BB9F09F3F11F48F3F99F0CE016B +:1028B0000E944A05882371F0688179818A810E948B +:1028C000C6198C010E947B190E944218B801CE01E2 +:1028D0000E942B12DF91CF911F910F9108950E94BA +:1028E0009E1A0E94AE1A0E94731A0E94C81A0E9471 +:1028F000E11F0E94301F80E090E00E940C1080E0F9 +:1029000090E00C9422100E948E1A0C946F140E9476 +:10291000BB19292F22952F7030E02C3031054CF453 +:102920002A3031056CF42250310922303105A8F4E7 +:1029300007C02C30310569F02F30310551F00DC042 +:10294000803F69F018F4803E40F409C0843F29F4C8 +:1029500006C093FB882780F9089580E0089581E000 +:102960000895CF93DF9300D000D01F92CDB7DEB78C +:102970000F900F900F900F900F90DF91CF910895CF +:10298000CF93DF9300D000D000D0CDB7DEB726962E +:102990000FB6F894DEBF0FBECDBFDF91CF91089583 +:1029A0001F93CF93DF93C091850116E0809186013C +:1029B000C81799F0D0E01C9FF0011D9FF00D112465 +:1029C000E957FE4F408151816281738184819581F5 +:1029D0000E94C0142196C770E9CFDF91CF911F915B +:1029E00008954091B7015091B8016091B90170917B +:1029F000BA018091BB019091BC010C94C0148091EC +:102A0000BC0182958F7009F054C08091B901882370 +:102A100009F44FC080918501A09186016091B701B2 +:102A20007091B8014091BA015091BB01B6E08A178C +:102A300009F43FC090E041155105C1F17F3F11F409 +:102A40006F3FA1F1B89FF001B99FF00D1124E95734 +:102A5000FE4F218172132AC02081621327C0228178 +:102A6000211124C0238134812417350710F421500B +:102A70003109241B350B283C3105C0F42091BC01E1 +:102A80002F7020612093BC0126E0289FF001299F30 +:102A9000F00D1124E457FE4F80818F708061808398 +:102AA00087EB91E00E9448140C94D0140196877033 +:102AB000BECF0895CF92DF92EF92FF920F931F93B4 +:102AC000CF93DF93CDB7DEB762970FB6F894DEBF32 +:102AD0000FBECDBF8C0185E0F801DE011D9601908F +:102AE0000D928A95E1F7D8014C9111965C9111975E +:102AF00012966C9112971396CD90DC9014973091AA +:102B0000B7017091B8018091BA019091BB01009713 +:102B100009F46BC17F3F19F43F3F09F466C1E090AF +:102B2000B901EE2009F4C0C02091BC01C816D90635 +:102B300028F0F601E81BF90BCF0104C080959095B1 +:102B40008C0D9D1DFF24F394883C910578F0F12CA9 +:102B5000207F09F0C6C07C2DD98AC88A89890E9445 +:102B6000B11487EB91E00E944814B1C0822F807F9E +:102B700009F046C0751314C0341312C0611110C09F +:102B80002F7020612093BC010E94F11487EB91E02B +:102B90000E9448148091BC01D80115968C932EC0D8 +:102BA000CD2819F15F3F11F44F3FF9F0F62E611176 +:102BB0001CC0809185012091860136E0821709F4BE +:102BC0005AC090E0389FF001399FF00D1124E95769 +:102BD000FE4F7181571306C07081471303C0728185 +:102BE000711103C001968770E9CFF62E662309F4B0 +:102BF00018C18091BC0181608093BC01F12C11C18E +:102C0000751308C0341306C0611104C08091BC0163 +:102C1000D801C3C04D875E878D859E856A8B0E94D3 +:102C200087146A898823E1F16623D1F12091BC01E0 +:102C3000822F82958F7090E0029774F08091B70197 +:102C40009091B80198878F831986DB86CA862C8776 +:102C5000CE0107960E94481486E0F801A7EBB1E088 +:102C600001900D928A95E1F70E94FF140E94F114E1 +:102C7000FF24F394D6C04D875E878D859E850E9484 +:102C8000BB19292F22952F7030E0223031050CF02E +:102C9000BCC09F7009F0B6C0805E883008F4C1C027 +:102CA000C8010E944814E4CFC816D90608F453C0DE +:102CB000F601E81BF90BCF01883C910508F450C0E0 +:102CC000F12C7C2DD98AC88A89890E94B114E7EB3E +:102CD000F1E086E0DF011D928A95E9F70E94F11488 +:102CE000A0C0751314C0341312C0611110C08091BC +:102CF000BC01F8018583C8010E94481486E0E7EB17 +:102D0000F1E0DF011D928A95E9F7FE2C8AC04D871C +:102D10005E878D859E856A8B0E9487146A898823C9 +:102D200009F4BECF662309F4BBCF2091BC01822FEA +:102D300082958F7090E002970CF48ECF8091B7014E +:102D40009091B8019A8389831B82DD82CC822E8385 +:102D5000CE0101967FCF809590958C0D9D1DACCFB7 +:102D6000F62E662309F49CCF75132EC034132CC0A5 +:102D70002091BC0120FD1FC0822F82958F70D9F059 +:102D8000D80115962C9315978F3049F08F5F982FA7 +:102D90009295907F822F8F70892B15968C93C80106 +:102DA0000E94481486E0F801A7EBB1E001900D9273 +:102DB0008A95E1F793CF86E0F801A7EBB1E00190A7 +:102DC0000D928A95E1F72DC04D875E878D859E8592 +:102DD0000E948714811140CF8091BC018160809353 +:102DE000BC01C8010E9448141CC0662309F458CFD6 +:102DF0004D875E878D859E850E948714882309F400 +:102E00004FCF2ACF811148CF0CC0243031050CF0B0 +:102E100047CF9F7009F440CFF8019581907F09F06A +:102E20003BCF8F2D62960FB6F894DEBF0FBECDBF9D +:102E3000DF91CF911F910F91FF90EF90DF90CF9096 +:102E400008951F93CF93DF93CDB7DEB72C970FB6BE +:102E5000F894DEBF0FBECDBF4F83588769877A874E +:102E60008B879C87CE0107960E945A15882369F0AC +:102E70008F8198852A853B85232BF1F19F3F09F0AF +:102E800063C08F3F09F060C037C086E0FE0137960F +:102E9000DE01119601900D928A95E1F76F81788598 +:102EA000EA85FB85309741F17F3F11F46F3F21F1B7 +:102EB0002091860130E0C9010196877099274091E1 +:102EC000850150E08417950709F447C069837A8328 +:102ED000FD83EC8396E0929FD001939FB00D112467 +:102EE000A957BE4FFE01319601900D929A95E1F7D8 +:102EF000809386010E94D01416E080918501909104 +:102F000086018917C1F1189FC001112489579E4F6E +:102F10000E945A15882379F1E09185011E9FF001E6 +:102F20001124E957FE4F4081518162817381848170 +:102F300095810E94C0148091850190E00196877070 +:102F4000992780938501D9CF4F81588569857A85E6 +:102F50008B859C850E94C014CFCF0E948314109251 +:102F6000860110928501E7EBF1E086E0DF011D921A +:102F70008A95E9F7C1CF2C960FB6F894DEBF0FBE45 +:102F8000CDBFDF91CF911F910895EF92FF920F93E4 +:102F90001F93CF93DF938C01009709F46CC0F12C41 +:102FA000EE24E394E8012196F8018491843740F4FB +:102FB000843008F051C0813081F0823019F15BC05B +:102FC000853709F444C0A8F19CE7980F903708F0C2 +:102FD00052C08F770E94CE1141C00E5F1F4FFE017D +:102FE000C49180E28C0F883048F4C7708E2D01C0E8 +:102FF000880FCA95EAF70E94A11A14C08C2F0E946C +:1030000006112DC00E5F1F4FFE01C49180E28C0F90 +:10301000883058F4C7708E2D01C0880FCA95EAF722 +:103020000E94A71A0E94C81A1AC08C2F0E94CE11A3 +:1030300016C00E5F1F4FFE01C491CC2381F08FE9B3 +:103040009FE00197F1F700C00000C150F6CF0E5F7E +:103050001F4FFE01F49003C00E9406118E018F2DB8 +:10306000882309F49FCFEFE9FFE03197F1F700C023 +:1030700000008150F5CFDF91CF911F910F91FF900C +:10308000EF90089508956093C1017093C2018093F9 +:10309000C3019093C4010C946F140F931F9300917C +:1030A000C1011091C2012091C3013091C401DC0122 +:1030B000CB01802B912BA22BB32B8093C10190933A +:1030C000C201A093C301B093C4011F910F910C944E +:1030D0006F140F931F930091C1011091C2012091B1 +:1030E000C3013091C401DC01CB0180239123A223D1 +:1030F000B3238093C1019093C201A093C301B09305 +:10310000C4011F910F910C946F140F931F930091A2 +:10311000C1011091C2012091C3013091C401DC01B1 +:10312000CB0180279127A227B3278093C1019093D9 +:10313000C201A093C301B093C4011F910F910C94DD +:103140006F141092BD011092BE011092BF01109237 +:10315000C0010C946F1441E050E060E070E004C0E6 +:10316000440F551F661F771F8A95D2F74093BD0104 +:103170005093BE016093BF017093C0010C946F1413 +:1031800041E050E060E070E004C0440F551F661F4E +:10319000771F8A95D2F78091BD019091BE01A091D1 +:1031A000BF01B091C001482B592B6A2B7B2B409358 +:1031B000BD015093BE016093BF017093C0010C9498 +:1031C0006F1441E050E060E070E004C0440F551F10 +:1031D000661F771F8A95D2F7409550956095709538 +:1031E0008091BD019091BE01A091BF01B091C0013D +:1031F000482359236A237B234093BD015093BE018A +:103200006093BF017093C0010C946F1441E050E0D3 +:1032100060E070E004C0440F551F661F771F8A9559 +:10322000D2F78091BD019091BE01A091BF01B091F4 +:10323000C001482759276A277B274093BD01509337 +:10324000BE016093BF017093C0010C946F140F9383 +:103250001F930091BD011091BE012091BF013091DB +:10326000C001DC01CB01802B912BA22BB32B8093CF +:10327000BD019093BE01A093BF01B093C0011F9107 +:103280000F910C946F140F931F930091BD01109137 +:10329000BE012091BF013091C001DC01CB01802330 +:1032A0009123A223B3238093BD019093BE01A093E9 +:1032B000BF01B093C0011F910F910C946F140F9335 +:1032C0001F930091BD011091BE012091BF0130916B +:1032D000C001DC01CB0180279127A227B32780936F +:1032E000BD019093BE01A093BF01B093C0011F9197 +:1032F0000F910C946F140895CF92DF92EF92FF928A +:103300000F931F93CF93DF938C01C090C101D09096 +:10331000C201E090C301F090C4018091BD01909181 +:10332000BE01A091BF01B091C001C82AD92AEA2AE2 +:10333000FB2ACFE1D0E0D701C6010C2E04C0B69520 +:10334000A795979587950A94D2F780FF06C0B80194 +:103350008C2F0E944808019721F4219760F780E0A4 +:1033600001C08C2FDF91CF911F910F91FF90EF90B3 +:10337000DF90CF900895CF93DF93EC010E947C19EA +:10338000BE010E944808DF91CF910895CB010E94B1 +:10339000BB1908958091C5018595859585950895FA +:1033A0008091C5018770089598E0899F900111244C +:1033B000262B2093C5010C94C0182091C50180953F +:1033C00082238093C501982F977069F430E0482FCD +:1033D000552747FD50952417350729F08595859584 +:1033E00085950C94E11808959091C501977081E03E +:1033F00009F480E0089590910C01992321F09091B7 +:103400000D01911109C020910E0130910F01F901B8 +:1034100032969FEF40E01FC0982F9695969596950F +:103420009F3050F5E0910E01F0910F01E90FF11D71 +:10343000877021E030E0A90102C0440F551F8A9532 +:10344000E2F7CA019181892B818308959F3F39F06A +:103450004F5F4E3041F051915813F8CF0DC05111CC +:10346000F7CF942FF5CF9F3F39F0F901E90FF11D08 +:1034700097FDFA9582830895089590910C01992300 +:1034800021F090910D01911109C020910E01309110 +:103490000F01F9013296205F3F4F1FC0982F96957C +:1034A000969596959F30F0F4E0910E01F0910F0102 +:1034B000E90FF11D877021E030E0A90102C0440F3F +:1034C000551F8A95E2F7CA018095918189238183EE +:1034D00008953196E217F30729F090819813F9CFF8 +:1034E0001082F7CF089581E090E0E0910E01F09115 +:1034F0000F01E80FF91F1082019680319105A9F79D +:1035000008959091D901892B8093D90108958095D0 +:103510009091D90189238093D90108951092D901FE +:1035200008959091D801892B8093D80108958095B2 +:103530009091D80189238093D80108951092D801E1 +:1035400008959091D701892B8093D7010895809594 +:103550009091D70189238093D70108951092D701C4 +:1035600008958093C60108951092C6010895809130 +:103570000E0190910F01FC0131969C01205F3F4F9D +:1035800080E0919191118F5FE217F307D1F70895D1 +:10359000E0910E01F0910F018091D9018083E091BB +:1035A0000E01F0910F0190818091D801892B8083C9 +:1035B000E0910E01F0910F0190818091D701892B4C +:1035C00080838091C601882361F0E0910E01F09123 +:1035D0000F019081892B80830E94B71A811110926C +:1035E000C60180910E0190910F010C94F60F20E01E +:1035F000009739F0AC0141505109842395232F5F86 +:10360000F7CF822F0895CF92DF92EF92FF926C0155 +:10361000EE24FF24C114D104E104F10421F0C70118 +:10362000B60120E101C020E0C72ED82EE92EFF24EC +:10363000C114D104E104F10419F0285FC701B601F7 +:103640006B017C0154E0F694E794D794C7945A95A3 +:10365000D1F7C114D104E104F10419F02C5FC701C2 +:10366000B6016B017C0142E0F694E794D794C794CD +:103670004A95D1F7C114D104E104F10419F02E5F89 +:10368000C701B601DC01CB01B695A7959795879543 +:10369000892B8A2B8B2B09F02F5F822FFF90EF90C5 +:1036A000DF90CF9008958091F101843021F1109244 +:1036B000DB0120E488E190E00FB6F894A8958093B0 +:1036C00060000FBE2093600080E00E94E30883B793 +:1036D000817F846083BF83B7816083BF789488953E +:1036E00083B78E7F83BF88E10FB6F8948093600024 +:1036F000109260000FBE0895089508950E947C1BEB +:103700000E944B030E947D1B0E94400491E08111A6 +:1037100001C090E0892F08950E9483140E94EA0F4F +:103720000C94E30882E084BD93E095BD9AEF97BDC9 +:1037300080936E0008952FB7F8948091DC019091EA +:10374000DD01A091DE01B091DF012FBF0895CF927E +:10375000DF92EF92FF920F931F932FB7F89440914F +:10376000DC015091DD016091DE017091DF012FBF1E +:103770006A017B01EE24FF248C0120E030E0C016BA +:10378000D106E206F30610F4415051099A01281BB4 +:10379000390BC9011F910F91FF90EF90DF90CF90EF +:1037A00008951F920F920FB60F9211248F939F933B +:1037B000AF93BF938091DC019091DD01A091DE0178 +:1037C000B091DF010196A11DB11D8093DC019093A2 +:1037D000DD01A093DE01B093DF01BF91AF919F9116 +:1037E0008F910F900FBE0F901F9018950E94E70CBD +:1037F000F8942FEF87EA91E6215080409040E1F75E +:1038000000C0000087E090EBDC018093FB01909307 +:10381000FC01A093FD01B093FE019CE088E10FB68E +:10382000F894A895809360000FBE90936000FFCF3E +:10383000EF92FF920F931F93CF93DF93D82FCDE09A +:103840008C2F0E94390405E010E0E82EF12CC7010E +:10385000002E02C0959587950A94E2F780FF09C073 +:10386000602F7C2F80E00E94F305D81302C081E016 +:1038700006C00150110958F7C15010F780E0DF91E0 +:10388000CF911F910F91FF90EF900895CF93C82F84 +:103890008CE20E94181C882321F08C2FCF910C946D +:1038A000181C80E0CF910895CF930E949B1D811139 +:1038B00002C00E94811DC5E6C15049F00E944B0321 +:1038C0008FE39CE90197F1F700C00000F5CF89E292 +:1038D0000E94461C811113C18AE20E94461C81117C +:1038E0000E94811D85E00E94461C81110E94F61BEA +:1038F0000E94A61D8093DA0187E00E94461C88235F +:10390000A9F18BE10E94461C882351F08091DA01D5 +:1039100081FB222720F991E0922790FB81F90EC0CC +:103920008EE00E94461C882361F08091DA0182FBC0 +:10393000222720F991E0922790FB82F98093DA0107 +:1039400015C080E10E94461C9091DA01882341F065 +:1039500093FB222720F981E0822780FB93F904C0A2 +:10396000892F809580FB90F99093DA018091DA019C +:103970000E94AA1D0E94B81D8093FA0180EE0E9449 +:10398000461C882341F08091FA01982F909590FB76 +:1039900080F98093FA0189E30E94461C882359F03C +:1039A0008091FA0181FB222720F991E0922790FB78 +:1039B00081F98093FA0182EE0E94461C882359F017 +:1039C0008091FA0182FB222720F991E0922790FB57 +:1039D00082F98093FA0186EE0E94461C882359F0F2 +:1039E0008091FA0183FB222720F991E0922790FB36 +:1039F00083F98093FA0183EE0E94461C882359F0D4 +:103A00008091FA0184FB222720F991E0922790FB14 +:103A100084F98093FA0185E30E94461C882359F0BB +:103A20008091FA0185FB222720F991E0922790FBF3 +:103A300085F98093FA0181E30E94461C882359F09E +:103A40008091FA0186FB222720F991E0922790FBD2 +:103A500086F98093FA0181E10E94461C882359F07F +:103A60008091FA0187FB222720F991E0922790FBB1 +:103A700087F98093FA018091FA010E94BC1D809120 +:103A8000FA0187FB882780F980930D0187E20E9465 +:103A9000461CC82F8EE10E94461C8111C2608FE136 +:103AA0000E94461C8111C46080E20E94461C811164 +:103AB000C86081E20E94461C8111C06182E20E94BE +:103AC000461C8111C06283E20E94461C8111C064C1 +:103AD00084E20E94461C882311F0C06802C0CC23F7 +:103AE00029F08C2F0E94B31D6C2F03C00E94AF1DC4 +:103AF000682F70E080E090E0CF910C944318CF9154 +:103B000008956DEE7EEF80E090E00E94ED2360E08E +:103B100082E090E00E94DB2360E083E090E00E947E +:103B2000DB2360E084E090E00E94DB2360E085E03E +:103B300090E00C94DB2380E090E00E94D52321E00C +:103B40008D3E9E4F09F020E0822F089582E090E0A4 +:103B50000C94CD23682F82E090E00C94DB2383E06B +:103B600090E00C94CD23682F83E090E00C94DB234D +:103B700084E090E00C94CD23682F84E090E00C94D6 +:103B8000DB238091E20180FF0BC06091130185E08F +:103B9000689FB001112475956795759567952BC041 +:103BA00081FF09C06091130185E0689FB001112475 +:103BB0007595679520C082FF07C06091130185E06D +:103BC000689FB001112417C09091E3019923D1F0AF +:103BD00060911201961788F72091130185E0289FC4 +:103BE00090011124929FA001939F500D112470E029 +:103BF000CA010E949F236038710540F46115710568 +:103C000039F002C065E070E0862F08958FE70895CF +:103C100081E008958091E20180FF08C06091110168 +:103C200070E0759567957595679521C081FF06C011 +:103C30006091110170E07595679519C082FF04C00D +:103C40006091110170E010C09091E3019923C1F0DF +:103C5000609110019617A0F780911101899FC00112 +:103C6000112470E00E949F236038710528F46115CB +:103C7000710521F0862F08958FE7089581E008955A +:103C800061E070E0F4CF803F21F40E94C11D819576 +:103C900004C0813F29F40E94C11D8093E60108956C +:103CA000823F21F40E94C11D819504C0833F29F405 +:103CB0000E94C11D8093E5010895893F19F40E9477 +:103CC0000A1E05C08A3F31F40E940A1E8195809326 +:103CD000E70108958B3F21F40E940A1E819504C0DC +:103CE0008C3F29F40E940A1E8093E8010895843FC6 +:103CF00021F48091E401816017C0853F21F4809117 +:103D0000E401826011C0863F21F48091E401846067 +:103D10000BC0873F21F48091E401886005C0883F93 +:103D200031F48091E40180618093E40108958D3F36 +:103D300021F48091E20181600BC08E3F21F48091DB +:103D4000E201826005C08F3F29F48091E201846026 +:103D50008093E2010895803F39F48091E60187FF66 +:103D60006CC01092E60169C0813F29F48091E601A0 +:103D70001816BCF362C09091E501823F29F497FFC9 +:103D80005CC01092E50159C0833F19F41916CCF3B9 +:103D900054C0893F41F48091E70118160CF04DC0E2 +:103DA0001092E7014AC08A3F29F48091E70187FF1A +:103DB00044C0F6CF8B3F39F48091E80187FF3DC0C6 +:103DC0001092E8013AC08C3F29F48091E80118165E +:103DD000BCF333C0843F21F48091E4018E7F17C08F +:103DE000853F21F48091E4018D7F11C0863F21F44D +:103DF0008091E4018B7F0BC0873F21F48091E40127 +:103E0000877F05C0883F31F48091E4018F7E8093E5 +:103E1000E40113C08D3F21F48091E2018E7F0BC03D +:103E20008E3F21F48091E2018D7F05C08F3F29F400 +:103E30008091E2018B7F8093E2018091E501811105 +:103E40000EC08091E60181110AC08091E7018111C5 +:103E500006C08091E801811102C01092E30108952B +:103E600084EE91E00E9401100E949B1B9093E1015F +:103E70008093E00108951F93CF93DF938091E00139 +:103E80009091E1010E94A71BAC019091E30199235D +:103E900021F02091140130E006C0209115018AE044 +:103EA000289F900111244217530708F486C080917F +:103EB000E501C091E601D091E7011091E80181117F +:103EC00007C0C11176C0D11174C0111172C075C084 +:103ED0009F3F19F09F5F9093E301181624F40E940E +:103EE000C11D8093E5018091E50187FF05C00E9417 +:103EF000C11D81958093E5011C1624F40E94C11D0B +:103F00008093E6018091E60187FF05C00E94C11DF4 +:103F100081958093E6016091E501662339F1C091B6 +:103F2000E601CC2319F1772767FD7095872F972F2E +:103F30000E94B02223E333E343E35FE30E941423B0 +:103F40000E947D226093E5016C2F772767FD7095B5 +:103F5000872F972F0E94B02223E333E343E35FE3ED +:103F60000E9414230E947D226093E6011D1624F412 +:103F70000E940A1E8093E7018091E70187FF05C038 +:103F80000E940A1E81958093E701111624F40E9475 +:103F90000A1E8093E8018091E80187FF05C00E9416 +:103FA0000A1E81958093E801DF91CF911F910C94B7 +:103FB000301F9F3F09F08ECF96CFDF91CF911F9199 +:103FC0000895E4EEF1E085E0DF011D928A95E9F7BE +:103FD0001092E3011092E2010895833081F128F4F8 +:103FE000813059F08230D1F00895853009F449C00C +:103FF000B8F1863009F456C0089580911501262F36 +:1040000030E0280F311D2F3F310524F4680F6093F5 +:10401000150108958FEF8093150108958091140183 +:10402000262F30E0280F311D2F3F310524F4680F73 +:104030006093140108958FEF809314010895809187 +:104040001301262F30E0280F311D2F3F310524F4B6 +:10405000680F6093130108958FEF80931301089503 +:1040600080911201262F30E0280F311D2F3F31059E +:1040700024F4680F6093120108958FEF809312016A +:10408000089580911101262F30E0280F311D2F3F18 +:10409000310524F4680F6093110108958FEF809328 +:1040A0001101089580911001262F30E0280F311D55 +:1040B0002F3F310524F4680F6093100108958FEFAE +:1040C000809310010895833011F128F4813049F074 +:1040D000823091F00895853081F120F18630C1F170 +:1040E000089580911501681720F4861B80931501AF +:1040F000089510921501089580911401681720F415 +:10410000861B8093140108951092140108958091E4 +:104110001301681720F4861B8093130108951092F1 +:104120001301089580911201681720F4861B809373 +:1041300012010895109212010895809111016817DB +:1041400020F4861B809311010895109211010895A7 +:1041500080911001681720F4861B80931001089548 +:104160001092100108950F931F938D3109F46BC0C5 +:1041700008F03FC08E3009F47FC0C0F4873009F4E6 +:1041800069C068F4863009F0B1C08091DA01817F9E +:104190008E7F8093DA0181E08093EA01A8C08830A5 +:1041A00009F4A2C08B3009F49FC0A0C0863109F485 +:1041B0009BC078F4803109F472C0813109F096C057 +:1041C0000E94831490910D0181E0892780930D0155 +:1041D0008BC0893109F488C08B3109F087C0809188 +:1041E000DA0181FB222720F991E0922790FB81F9E7 +:1041F0004CC0853309F470C048F4873209F46CC0B0 +:1042000008F459C0893209F467C070C0833438F4A7 +:104210008A3308F04EC0883309F466C067C083341F +:1042200009F45AC0883409F061C00E9483140FEF6A +:1042300013ED20E3015010402040E1F700C00000E2 +:104240000E94F61B51C00E9437220E94EA0F0E9472 +:10425000E3084AC09091DA01892F8095817080FB34 +:1042600090F929F0966098609093DA0140C0997FA8 +:10427000977F9093DA0138C08091DA0182FB222780 +:1042800020F991E0922790FB82F98093DA0199233B +:1042900059F18091DA0181608093DA0125C0809123 +:1042A000DA0183FB222720F991E0922790FB83F922 +:1042B000ECCF895301C08D5141E050E060E070E0E7 +:1042C0008A019B0104C0000F111F221F331F8A9512 +:1042D000D2F7C901B80104C061E070E080E090E06D +:1042E0000E9443180E94831481E001C080E01F9166 +:1042F0000F91089580E0089580E00895CF93C82F2E +:104300008091EA01813079F018F08230E9F187C0BC +:10431000E0910E01F0910F018081813169F08232CC +:1043200009F07FC009C0E0910E01F0910F0180817A +:10433000813111F0823261F48C2F0E947A21811137 +:1043400004C08C2F0E94B3201DC081E090E01AC0F1 +:104350008C2F0E947C21811114C0C43179F048F463 +:10436000CB3079F0C03109F060C082E08093EA017F +:1043700008C0C93219F0C83321F057C01092EA01C1 +:1043800054C081E0817053C0C93289F118F5C4313D +:1043900071F1A8F4C73009F046C08AE08093150196 +:1043A00094E19093140193E0909313018093120190 +:1043B00088E08093110188E28093100134C0CE51CF +:1043C000C63088F5EC2FF0E0E65DFE4F80818093EB +:1043D000E90129C0CE34E9F020F4CB3421F56AE0BC +:1043E00013C0C13579F0C235F1F461E00DC08091A0 +:1043F000E901882319F01092E90115C081E080934A +:10440000EA0115C061E006C08091E9010E94ED1F3C +:104410000AC06AE08091E9010E94632004C0109202 +:10442000EA0180E004C081E002C080E0ABCFCF9120 +:104430000895E1E8F0E08081886080838081816078 +:1044400080838FB7F89493E09093890090ED9093D8 +:1044500088008FBF0895EFE6F0E08081826080835E +:104460000895EFE6F0E080818D7F80830895EFE688 +:10447000F0E0908182E08927808308951F920F9257 +:104480000FB60F9211242F933F934F935F936F9327 +:104490007F938F939F93AF93BF93EF93FF938091FD +:1044A000EB019091EC0101969093EC018093EB016C +:1044B000811103C082E00E94E308E091EC01E695DF +:1044C000E695F0E0EC54FB4FE4918091EB018E1304 +:1044D00003C080E00E94E308FF91EF91BF91AF918C +:1044E0009F918F917F916F915F914F913F912F910C +:1044F0000F900FBE0F901F90189504D06894B111C3 +:104500008DC0089570D088F09F5790F0B92F9927EB +:10451000B751A0F0D1F0660F771F881F991F1AF0CE +:10452000BA95C9F712C0B13081F077D0B1E00895E3 +:1045300074C0672F782F8827B85F39F0B93FCCF364 +:10454000869577956795B395D9F73EF490958095C4 +:10455000709561957F4F8F4F9F4F0895E89409C0E4 +:1045600097FB3EF490958095709561957F4F8F4FA6 +:104570009F4F9923A9F0F92F96E9BB279395F695BC +:10458000879577956795B795F111F8CFFAF4BB0F3A +:1045900011F460FF1BC06F5F7F4F8F4F9F4F16C09E +:1045A000882311F096E911C0772321F09EE8872F28 +:1045B000762F05C0662371F096E8862F70E060E0E4 +:1045C0002AF09A95660F771F881FDAF7880F96955D +:1045D000879597F9089557FD9058440F551F59F046 +:1045E0005F3F71F04795880F97FB991F61F09F3FE0 +:1045F00079F087950895121613061406551FF2CF09 +:104600004695F1DF08C0161617061806991FF1CF58 +:1046100086957105610508940895E894BB2766277F +:104620007727CB0197F908950BD078C069D028F08F +:104630006ED018F0952309F05AC05FC01124EECF58 +:10464000CADFA0F3959FD1F3950F50E0551F629FED +:10465000F001729FBB27F00DB11D639FAA27F00DDB +:10466000B11DAA1F649F6627B00DA11D661F829F02 +:104670002227B00DA11D621F739FB00DA11D621FE7 +:10468000839FA00D611D221F749F3327A00D611D04 +:10469000231F849F600D211D822F762F6A2F1124E6 +:1046A0009F5750408AF0E1F088234AF0EE0FFF1F39 +:1046B000BB1F661F771F881F91505040A9F79E3F70 +:1046C000510570F014C0AACF5F3FECF3983EDCF3C5 +:1046D000869577956795B795F795E7959F5FC1F7AD +:1046E000FE2B880F911D9695879597F9089597F958 +:1046F0009F6780E870E060E008959FEF80EC089588 +:1047000000240A94161617061806090608950024B0 +:104710000A9412161306140605060895092E03942A +:10472000000C11F4882352F0BB0F40F4BF2B11F49E +:1047300060FF04C06F5F7F4F8F4F9F4F089597FBBF +:10474000072E16F4009407D077FD09D00E94B923F4 +:1047500007FC05D03EF4909581959F4F0895709584 +:1047600061957F4F0895EE0FFF1F0590F491E02DA6 +:104770000994AA1BBB1B51E107C0AA1FBB1FA617A8 +:10478000B70710F0A61BB70B881F991F5A95A9F7FA +:1047900080959095BC01CD010895F999FECF92BD09 +:1047A00081BDF89A992780B50895A8E1B0E042E06C +:1047B00050E00C94F523262FF999FECF92BD81BDD0 +:1047C000F89A019700B4021639F01FBA20BD0FB64F +:1047D000F894FA9AF99A0FBE08950196272F0E942D +:1047E000DC230C94DB23DC01CB01FC01F999FECF27 +:1047F00006C0F2BDE1BDF89A319600B40D92415069 +:0A4800005040B8F70895F894FFCF78 +:10480A000220E508730950091C09E8080101C701DB +:10481A0028080A03140A3F4D363975042804F2039E +:10482A00B9034C0365037E039703010203040506DB +:04483A000708090062 +:00000001FF diff --git a/keyboards/ergodox_ez/keymaps/jgarr/keymap.c b/keyboards/ergodox_ez/keymaps/jgarr/keymap.c new file mode 100644 index 0000000000..a3ad2040f4 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/jgarr/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 | Del | |Backspace| 6 | 7 | 8 | 9 | 0 | \ | + * |--------+------+------+------+------+-------------| |---------+------+------+------+------+------+--------| + * | Tab | ' | , | . | P | Y | L1 | | L1 | F | G | C | R | L | / | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * |Ctrl/Esc| A | O | E | U | I |------| |---------| D | H | T | N |S / L2| - | + * |--------+------+------+------+------+------| Hyper| | Meh |------+------+------+------+------+--------| + * | LShift |:/Ctrl| Q | J | K | X | | | | B | M | W | V |Z/Ctrl| RShift | + * `--------+------+------+------+------+-------------' `----------------+------+------+------+------+--------' + * | Ctrl | LGui | Alt | Left | Right| | Up | Down | [ | ] | = | + * `----------------------------------' `----------------------------------' + * ,--------------. ,-------------. + * | AltShf| LGui | | Alt | ~L1 | + * ,------|-------|------| |------+--------+------. + * | | | Home | | PgUp | | | + * | Space|Backsp |------| |------| Enter |Space | + * | |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, KC_DELT, + KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, TG(1), + CTL_T(KC_ESC), KC_A, KC_O, KC_E, KC_U, KC_I, + KC_LSFT, CTL_T(KC_SCLN), KC_Q, KC_J, KC_K, KC_X, ALL_T(KC_NO), + KC_LCTL, KC_LGUI, KC_LALT, KC_LEFT, KC_RGHT, + LALT(KC_LSFT), KC_LGUI, + KC_HOME, + KC_SPC,KC_BSPC,KC_END, + // right hand + KC_BSPC, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSLS, + TG(1), KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLSH, + KC_D, KC_H, KC_T, KC_N, LT(MDIA, KC_S), KC_MINS, + MEH_T(KC_NO),KC_B, KC_M, KC_W, KC_V, CTL_T(KC_Z), KC_RSFT, + KC_UP, KC_DOWN,KC_LBRC,KC_RBRC, KC_EQL, + KC_LALT, KC_FN1, + KC_PGUP, + KC_PGDN,KC_ENT, KC_SPC + ), +/* Keymap 1: Symbol Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | ! | @ | { | } | | | | | | Up | 7 | 8 | 9 | * | F12 | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | # | $ | ( | ) | ` |------| |------| Down | 4 | 5 | 6 | + | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | % | ^ | [ | ] | ~ | | | | & | 1 | 2 | 3 | \ | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | . | 0 | = | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// SYMBOLS +[SYMB] = KEYMAP( + // left hand + KC_TRNS,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, + KC_TRNS,KC_EXLM,KC_AT, KC_LCBR,KC_RCBR,KC_PIPE,KC_TRNS, + KC_TRNS,KC_HASH,KC_DLR, KC_LPRN,KC_RPRN,KC_GRV, + KC_TRNS,KC_PERC,KC_CIRC,KC_LBRC,KC_RBRC,KC_TILD,KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS, + KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS, + // right hand + KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + KC_TRNS, KC_UP, KC_7, KC_8, KC_9, KC_ASTR, KC_F12, + KC_DOWN, KC_4, KC_5, KC_6, KC_PLUS, KC_TRNS, + KC_TRNS, KC_AMPR, KC_1, KC_2, KC_3, KC_BSLS, KC_TRNS, + KC_TRNS,KC_DOT, KC_0, KC_EQL, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), +/* Keymap 2: Media and mouse keys + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | MsUp | | | | | | | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | |MsLeft|MsDown|MsRght| |------| |------| | | | | | Play | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | | Prev | Next | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | Lclk | Rclk | |VolUp |VolDn | Mute | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | |Brwser| + * | | |------| |------| |Back | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// MEDIA AND MOUSE +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/keyboards/ergodox_ez/keymaps/kastyle/compiled.hex b/keyboards/ergodox_ez/keymaps/kastyle/compiled.hex new file mode 100644 index 0000000000..0a229cac5b --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/kastyle/compiled.hex @@ -0,0 +1,1158 @@ +:100000000C947A020C94BE020C94BE020C94BE02B4 +:100010000C94BE020C94BE020C94BE020C94BE0260 +:100020000C94BE020C94BE020C94620D0C94340E1F +:100030000C94BE020C94BE020C94BE020C94BE0240 +:100040000C94BE020C943E220C94BE020C94BE0290 +:100050000C94BE020C94D11B0C94BE020C94BE02F4 +:100060000C94BE020C94BE020C94BE020C94BE0210 +:100070000C94BE020C94BE020C94BE020C94BE0200 +:100080000C94BE020C94BE020C94BE020C94BE02F0 +:100090000C94BE020C94BE020C94BE020C94BE02E0 +:1000A0000C94BE020C94BE020C94BE02A10EC30EB0 +:1000B000B10FC30EB10F080F2B0FB10F800F930FAD +:1000C0006212621291129112C712E71218141814D8 +:1000D000F2121814A213A2130914181418141214EB +:1000E000AF13AF13AF13AF13AF13AF13AF13AF1300 +:1000F000AF13AF13AF13AF13AF13AF13AF13AF13F0 +:10010000C113CE13D513DC13E6130000F0A12E00AB +:100110002B00E000E100354100001E001400040047 +:100120001D7134004D001F001A0016001B00E10471 +:100130004C00200008000700060050002A002100A3 +:100140001500090019004F004A00220017000A009C +:10015000050000002971E30001540000007F000049 +:10016000657465000154000000770000E200230080 +:100170001C000B00110000002971240018000D0064 +:10018000100052004B0025000C000E0036005100FC +:100190002C00260012000F0037002F002800270037 +:1001A00013003342387130004E002D00310034000E +:1001B000E500C10000000100010001000100010094 +:1001C00000003A001E0220022202010001003B0052 +:1001D0001F0221022302010001003C002F0226021F +:1001E0002F00010001003D00300227023000010015 +:1001F00001003E003102350035020000010001001F +:1002000001000000010000000100010001000000E9 +:100210000100000001003F005200510024020000D4 +:1002200001004000240021001E00010001004100E7 +:10023000250022001F003700010042002600230095 +:10024000200027000100430025022E0231002E006D +:100250000100440045000100010001000000010010 +:100260000100010001000100000001000100010087 +:1002700001000100010001000100F2000100010085 +:1002800001000100F000F1000100F4000100010094 +:100290000100F3000100F500010001000100010070 +:1002A0000100000001000100010000000100000049 +:1002B0000100010001000000010000000100010038 +:1002C0000100010001000000010001000100010027 +:1002D0000100A9000100010001000100AC00AA001A +:1002E000B600010001000100AB00A8000100010000 +:1002F0000100010001000100010001000100AE0049 +:1003000001000100000016034500720067006F0045 +:1003100044006F007800200045005A0000001603DA +:100320004500720067006F0044006F0078002000F5 +:1003300045005A0000000403090409026D0004018D +:1003400000A0FA09040000010301010009211101C4 +:100350000001223F000705810308000A090401008B +:100360000103010200092111010001224D000705CE +:10037000820308000A0904020001030000000921A9 +:10038000110100012236000705830308000A090451 +:1003900003000103000000092111010001223900BE +:1003A000070584031000011201100100000008ED90 +:1003B000FE071301000102000105010906A1010564 +:1003C0000719E029E7150025019508750181020547 +:1003D000081901290595057501910295017503918B +:1003E0000105071900297715002501957875018108 +:1003F00002C005010980A101850216010026B7008F +:100400001A01002AB700751095018100C0050C097A +:1004100001A1018503160100269C021A01002A9CF5 +:1004200002751095018100C005010902A1010901B1 +:10043000A10005091901290515002501950575017A +:10044000810295017503810105010930093115818A +:10045000257F95027508810609381581257F95014C +:1004600075088106050C0A38021581257F950175EE +:10047000088106C0C005010906A101050719E02988 +:10048000E715002501950875018102950175088120 +:100490000105081901290595057501910295017558 +:1004A0000391010507190029FF150025FF95067521 +:1004B000088100C0000000000000000000000001F2 +:1004C0000204060A0F17202C3A4A5D71879DB3C7B4 +:1004D000DAE9F5FCFFFCF5E9DAC7B39D87715D4AFF +:1004E0003A2C20170F0A0604020100000000000049 +:1004F0000000000011241FBECFEFDAE0DEBFCDBF49 +:1005000004B603FE24C08091FB019091FC01A091F0 +:10051000FD01B091FE018730904BA740B04BB9F47C +:100520001092FB011092FC011092FD011092FE014D +:1005300014BE84B7877F84BF88E10FB6F894809398 +:100540006000109260000FBEE0E0FFE3099511E04B +:10055000A0E0B1E0EAE0F8E402C005900D92A43317 +:10056000B107D9F711E0A4E3B1E001C01D92AB3FA0 +:10057000B107E1F70E94A60A0C9403240C94000032 +:100580001092B9008AE08093B800089594EA90939D +:10059000BC009091BC0097FFFCCF9091B900987F70 +:1005A000983021F0903111F081E008958093BB00E4 +:1005B00084E88093BC008091BC0087FFFCCF8091D1 +:1005C000B900887F883111F0803471F780E0089598 +:1005D00084E98093BC008091BC0084FDFCCF089529 +:1005E0008093BB0084E88093BC008091BC0087FFAF +:1005F000FCCF9091B900987F81E0983209F480E0B7 +:10060000089584E88093BC008091BC0087FFFCCFF4 +:100610008091BB00089580910101811115C080E493 +:100620000E94C6028093010181110CC082E10E94E8 +:10063000F00280930101811105C08FEF0E94F0024A +:10064000809301010E94E80284B1807F84B985B162 +:10065000807F85B98AB1837F8AB98BB1837F8BB95B +:100660003E98469808950E94C604809301010E9416 +:100670000B0380B38C7080BB81B3836F81BBA5E318 +:10068000B1E0E3E4F1E08EE08E0F11921D928E1343 +:10069000FCCF0C94B004BF92CF92DF92EF92FF9206 +:1006A0000F931F93CF93DF9380910101882379F0FB +:1006B000809134018F5F80933401811108C00E94C2 +:1006C000C60480930101811102C00E94580405E311 +:1006D00011E0C0E0D0E0DD24D39482E0C82EEE2407 +:1006E000E394F12CC730D10500F58091010181110F +:1006F00064C080E40E94C60280930101811112C08F +:1007000082E10E94F0028093010181110BC0C701B8 +:100710000C2E01C0880F0A94EAF780950E94F0021F +:10072000809301010E94E80248C0CA30A1F028F479 +:10073000C83059F0C93061F005C0CC3089F070F094 +:10074000CD3089F0209A289810C0219A29980DC0A0 +:10075000229A2A980AC0239A2B9807C0529A01C05D +:10076000539A5B9802C03E9A469890EA9A95F1F7A0 +:100770009FB1799902C082E001C080E091709D250F +:10078000982B7C9902C084E001C080E0892B7D9980 +:1007900002C038E001C030E0832B7E9902C020E126 +:1007A00001C020E0822B9FB19095991F9927991F36 +:1007B0009295990F907E892B0FC080910101811134 +:1007C00049C080E40E94C60280930101882379F128 +:1007D000B12C0E94E8028B2DF8019081981719F036 +:1007E0008083C09200010E940B0321960F5F1F4F70 +:1007F000CE30D10509F076CF80910001882361F1D8 +:10080000815080930001882339F08FE99FE00197A0 +:10081000F1F700C0000020C0A3E4B1E0E5E3F1E09F +:10082000CF01825F91919D938E13FCCF15C083E120 +:100830000E94F002809301018111CACF81E40E94DD +:10084000C602809301018111C3CF0E940103B82E1B +:10085000B094BFCF80E0C0CF0E94560481E0DF910A +:10086000CF911F910F91FF90EF90DF90CF90BF90AD +:100870000895E82FF0E0ED5BFE4F80810895089524 +:100880000F931F93CF93DF93C3E4D1E010E00C2FBD +:10089000025F899190E00E94F71A180F0C13F9CFAC +:1008A000812FDF91CF911F910F9108950C94260510 +:1008B00056985E9825982D9826982E9827982F98C8 +:1008C0008FEF90E0909389008093880090938B0045 +:1008D00080938A0090938D0080938C00259A2D9AA6 +:1008E0002FEF80E792E0215080409040E1F700C078 +:1008F0000000269A2E9A2FEF80E792E02150804048 +:100900009040E1F700C00000279A2F9A2FEF80E770 +:1009100092E0215080409040E1F700C0000025980F +:100920002D982FEF80E792E0215080409040E1F732 +:1009300000C0000026982E982FEF80E792E021500B +:1009400080409040E1F700C0000027982F9856980B +:100950005E9825982D9826982E9827982F98089578 +:1009600089EA8093800089E08093810024982C9804 +:100970003F988AB18F748AB96E98479A8BB1806B11 +:100980008BB9769A0E9458040C94250580E28093D6 +:1009900001018091510181110EC00E94C00281E0CD +:1009A000809351012FEF83ED90E3215080409040E0 +:1009B000E1F700C0000080E40E94C60280930101BC +:1009C00081112EC00E94F00280930101811128C084 +:1009D0000E94F00280930101811122C08FE30E94E6 +:1009E000F0028093010181111BC00E94E80280E4A3 +:1009F0000E94C60280930101811112C08CE00E9406 +:100A0000F0028093010181110BC00E94F0028093DB +:100A10000101811105C08FE30E94F0028093010162 +:100A20000E94E80280910101089561110BC0FC0150 +:100A30008281882321F085EE0E94061103C085EE95 +:100A40000E94CE1180E090E0089508956091BD016C +:100A50007091BE018091BF019091C0010E94031B63 +:100A600056985E9825982D9826982E9827982F9816 +:100A7000813019F0823021F00895259A2D9A089539 +:100A8000269A2E9A089581E0089581E008950C94A5 +:100A9000450508950F931F93CF93DF938C01FC01BD +:100AA000C081D181CE010E947C19BE010E94F30554 +:100AB000EC01B8010E944705882309F48DC0F801B4 +:100AC0008281882309F44AC080915D0181111FC091 +:100AD000C431F0E5DF0709F051C00E94490581E00B +:100AE00080935D010E949B1B90935C0180935B014E +:100AF0001092540110925601109255011092580113 +:100B00001092570110925A011092590165C08091BC +:100B10005B0190915C010E94A71B883C910570F4D9 +:100B200080915401E82FF0E0EE0FFF1FEB5AFE4FCB +:100B3000D183C0838F5F809354014EC0C43880E559 +:100B4000D80721F0C538D04501F13AC0F8018281BB +:100B5000882341F01092520182E01EC0C438E0E5C3 +:100B6000DE0759F580915201811106C086E20E948C +:100B7000061186E20E94CE1182E01CC0C438F0E566 +:100B8000DF0741F3C538D045D9F4F80182818823C5 +:100B900031F01092530180E20E941D121DC080911D +:100BA0005301811106C087E20E94061187E20E946C +:100BB000CE1180E20E9424120FC0C538D04529F31F +:100BC00081E08093520180935301C801DF91CF915E +:100BD0001F910F910C94430580E0DF91CF911F91FD +:100BE0000F910895089596E0799FF001112494E5FE +:100BF000899FE00DF11D1124E60FF11DEE0FFF1F7F +:100C0000E25FFE4F859194910895880F991FFC0132 +:100C1000E657F040859194910895880F991FFC0143 +:100C2000E65FFE4F8591949108950F931F93CF93A4 +:100C3000DF93EC01811520E3920750F5C11580E2A6 +:100C4000D80708F0C3C0CB3BD10590F4C83AD10512 +:100C500008F06AC0C53AD10508F05BC0C430D105C0 +:100C600008F0D0C1219709F0CAC101E010E00AC222 +:100C7000CF3FD10511F008F0C5C1C03FD10508F044 +:100C8000A2C0CE01805E9109089708F4BBC1B7C12C +:100C9000C13090E5D90709F4A2C020F5C0318FE436 +:100CA000D80770F4C11590E4D90708F094C0C115B5 +:100CB00021E3D20708F0A3C1DD278E01106CE2C149 +:100CC000C115D04509F09BC10E9483148FEF94E3B6 +:100CD0002CE0815090402040E1F700C000000E94CD +:100CE000F61BD0C1C11597E5D90758F4C03121E5ED +:100CF000D20708F01CC1C43180E5D80708F475C0DC +:100D00007EC1CE0190578115904108F078C1DF7007 +:100D100073C1C53AD10509F477C1C63AD10509F0C6 +:100D200076C102E810E4AEC1C83AD10509F472C137 +:100D3000C93AD10509F471C1CA3AD10509F470C1A3 +:100D4000CB3AD10509F46FC1CC3AD10509F46EC193 +:100D5000CD3AD10509F46DC1C03BD10509F46CC190 +:100D6000CE3AD10509F46BC1CF3AD10509F46AC175 +:100D7000C13BD10509F469C1C23BD10509F468C181 +:100D8000C33BD10509F467C1C43BD10509F466C171 +:100D9000C53BD10509F465C1C63BD10509F464C161 +:100DA000C73BD10509F463C1C83BD10509F462C151 +:100DB000C93BD10509F461C1CA3BD10509F460C141 +:100DC00000E014E45FC18E0110655CC1CE019F702C +:100DD0000E940D0658C1DF708E01106A53C18091C8 +:100DE000DA0181608093DA014DC10E949B1D81115F +:100DF00002C00E94811D0E94B81D90E09093FB01EB +:100E00008093FA01C23080E5D80721F48091FA017D +:100E1000816086C0C43090E5D90721F48091FA0141 +:100E200082607EC0C63020E5D20721F48091FA01AD +:100E3000846076C0C83080E5D80719F48091FA0143 +:100E400027C0CA3090E5D90721F48091FA0180616A +:100E500067C0CC3020E5D20721F48091FA0180628E +:100E60005FC0CE3080E5D80721F48091FA0180641C +:100E700057C0C03190E5D90721F48091FA0180680C +:100E80004FC0C23120E5D20729F48091FA01846075 +:100E9000886046C0C33080E5D80721F48091FA010C +:100EA0008E7F3EC0C53090E5D90721F48091FA01CC +:100EB0008D7F36C0C73020E5D20721F48091FA013A +:100EC0008B7F2EC0C93080E5D80719F48091FA01D4 +:100ED00026C0CB3090E5D90721F48091FA018F7EAE +:100EE0001FC0CD3020E5D20721F48091FA018F7D1B +:100EF00017C0CF3080E5D80721F48091FA018F7BAD +:100F00000FC0C13190E5D90721F48091FA018F77A4 +:100F100007C0C331D04531F48091FA018B7F877FC0 +:100F20008093FA018091FA010E94BC1DABC08D2F05 +:100F300099278F70992781309105D9F49E012370EC +:100F4000332702C0880F991F2A95E2F79C688E010B +:100F500044E0000F111F4A95E1F700271370802B22 +:100F6000912B53E0CC0FDD1F5A95E1F7C076DD27BA +:100F70002FC08230910531F4DC2FCC278E01016F18 +:100F8000106A80C08330910569F4CE01837099277F +:100F900001E010E002C0000F111F8A95E2F7C801BE +:100FA0009C680FC084309105B9F4CE0183709927F5 +:100FB00001E010E002C0000F111F8A95E2F7C8019E +:100FC0009A6823E0CC0FDD1F2A95E1F7C07ED77029 +:100FD0008C010C2B1D2B56C08530910531F4DC2F74 +:100FE000CC278E01046F106A4DC0069709F04AC0E5 +:100FF000CF71DD27DC2FCC278E01106243C000E0CB +:1010000010E040C08E013EC001E810E43BC003E8A0 +:1010100010E438C002EE14E435C009EE14E432C026 +:101020000AEE14E42FC005EB14E42CC006EB14E424 +:1010300029C007EB14E426C00CEC14E423C00DEC2B +:1010400014E420C003E815E41DC00AE815E41AC042 +:1010500002E915E417C004E915E414C001E216E43E +:1010600011C003E216E40EC004E216E40BC005E270 +:1010700016E408C006E216E405C007E216E402C062 +:101080000AE216E4C801DF91CF911F910F910895F4 +:1010900096E0799FF001112494E5899FE00DF11D00 +:1010A0001124E60FF11DEE0FFF1FE25FFE4F859149 +:1010B0009491803E9105E0F4803C910558F5813390 +:1010C000910509F46FC048F48932910509F463C0B1 +:1010D0008A32910509F46DC072C089339105E9F037 +:1010E00082389105D1F08533910509F44DC067C070 +:1010F000833E910581F138F4803E9105B9F0823E3E +:101100009105D9F05CC0863E910561F1873E91055D +:10111000A1F155C00E94050608952091FA0120FD15 +:1011200002C021FF4CC080EE90E049C08091FA01DE +:1011300080FFF9CF89E390E042C08091FA0182FFFD +:101140000EC08091FA0184FF03C080E090E037C0B8 +:1011500083EE90E034C08091FA0182FFF2CF82EEFC +:1011600090E02DC08091FA0183FF0BC08091FA01BD +:1011700084FDEBCF87EE90E022C08091FA0183FFDF +:10118000F5CF86EE90E01BC08091FA0185FF07C085 +:1011900089E290E014C08091FA0185FFF9CF85E3E0 +:1011A00090E00DC08091FA0186FF07C08AE290E0CE +:1011B00006C08091FA0186FFF9CF81E390E00E949A +:1011C0001506089508950C94E20880916E01089523 +:1011D000CF93DF9300D01F92CDB7DEB79C018091F3 +:1011E000F101843019F593E099833B832A8390932E +:1011F000E9008FEF9091E800815095FD06C095EDD4 +:101200009A95F1F700008111F5CF8091E80085FFF4 +:101210000DC040E050E063E070E0CE0101960E9416 +:10122000520B8091E8008E778093E8000F900F902A +:101230000F90DF91CF910895CF93DF9300D01F924D +:10124000CDB7DEB72091F101243021F522E02983CA +:101250009B838A8383E08093E9008FEF9091E8007D +:10126000815095FD06C095ED9A95F1F7000081112A +:10127000F5CF8091E80085FF0DC040E050E063E0CD +:1012800070E0CE0101960E94520B8091E8008E77AB +:101290008093E8000F900F900F90DF91CF91089509 +:1012A0002091F1012430F1F422E02093E9002FEFA6 +:1012B0003091E800215035FD06C035ED3A95F1F743 +:1012C00000002111F5CF2091E80025FF0BC040E080 +:1012D00050E065E070E00E94520B8091E8008E774C +:1012E0008093E8000895CF93DF93EC019091F10192 +:1012F000943009F046C080910C018823D9F0809188 +:101300000D018823B9F09093E9008FEF9091E800E8 +:10131000815095FD06C095E19A95F1F70000811185 +:10132000F5CF8091E80085FF2CC040E050E060E1FF +:1013300070E017C081E08093E9008FEF9091E800A2 +:10134000815095FD06C095ED9A95F1F70000811149 +:10135000F5CF8091E80085FF14C040E050E068E0E0 +:1013600070E0CE010E94520B8091E8008E7780934E +:10137000E80080E1FE01AEE5B1E001900D928A95B2 +:10138000E1F7DF91CF9108958091F001811109C0BB +:101390000E94E70C0E94440D8091E20084608093DB +:1013A000E20008951092F001089508950C942B2204 +:1013B0000E948C1B0E9431220E94EA0F0C94E308C9 +:1013C00042E061EC81E00E94610C42E061EC82E06D +:1013D0000E94610C42E061EC83E00E94610C42E1FA +:1013E00061EC84E00C94610C8091F301833009F48A +:1013F00055C030F4813071F0823009F48EC0089508 +:101400008A3009F47AC08B3009F460C0893009F061 +:101410009CC020C08091F201813A09F096C0809171 +:10142000E800877F8093E8008091F6019091F701B2 +:10143000892B21F460E18EE591E003C060E080E05B +:1014400090E070E00E949D0B8091E8008B77809384 +:10145000E80008958091F201813209F076C0809110 +:10146000F6019091F701009719F0039709F06DC00C +:101470008091E800877F8093E8008091E80082FDFA +:1014800005C08091F1018111F8CF5FC08091F1001A +:1014900080936E018091E8008B7753C08091F201B8 +:1014A000813A09F052C08091F6019091F701892BA1 +:1014B00009F04BC08091E800877F8093E80080911D +:1014C000E80080FFFCCF80910C0136C08091F201D2 +:1014D0008132D9F58091F6019091F701892BA9F518 +:1014E0008091E800877F8093E8000E94960C8091AD +:1014F000F40180930C010C9483148091F2018132E9 +:1015000021F58091E800877F8093E8000E94960C87 +:101510008091F50180936F0108958091F201813AE5 +:10152000A1F48091E800877F8093E8008091E80033 +:1015300080FFFCCF80916F018093F1008091E800E3 +:101540008E778093E8000C94960C089584B7877F7B +:1015500084BF88E10FB6F894809360001092600019 +:101560000FBE90E080E80FB6F894809361009093EE +:1015700061000FBE0E9439100E94E70C0E94440DCA +:101580008091E20084608093E20078940E94CA0F08 +:101590000E943B1082E091E00E94E50F0E94192218 +:1015A0008091F101853069F40E94531B8091EF0115 +:1015B0008823B1F30E947E1B882391F30E943C0B89 +:1015C000EFCF0E944110ECCF292F33272330310574 +:1015D000C9F064F42130310581F02230310509F081 +:1015E00043C08DE690E02AE333E042C0213231056A +:1015F000F1F02232310541F137C082E190E027EA73 +:1016000033E036C099278130910541F08230910551 +:1016100041F0892B49F5E6E3F3E005C0EEE1F3E0A4 +:1016200002C0E6E0F3E0849190E09F0121C06430C5 +:10163000D8F4E62FF0E0EE0FFF1FEE5DFE4F2081A5 +:10164000318189E090E014C0643070F470E0FB01F7 +:10165000EE0FFF1FE65EFE4F20813181FB01EA5E47 +:10166000FE4F808190E004C080E090E020E030E018 +:10167000FA0131832083089580E189BD82E189BD2B +:1016800009B400FEFDCF8091D8008F7D8093D800F3 +:101690008091E00082608093E0008091E00081FD15 +:1016A000FCCF0895CF92DF92EF92FF920F931F939A +:1016B000CF93DF93EC018B016A010E94B50C81117D +:1016C00033C0C114D10439F0F60180819181081B27 +:1016D000190BC80FD91FE12CF12C0115110519F1B7 +:1016E0008091E80085FD16C08091E8008E77809398 +:1016F000E800C114D10449F0F60180819181E80E1F +:10170000F91EF182E08285E00FC00E94B50C8823AB +:1017100021F30AC089918093F10001501109FFEF74 +:10172000EF1AFF0ADACF80E0DF91CF911F910F917E +:10173000FF90EF90DF90CF9008952091F8013091C5 +:10174000F9012617370748F06115710539F4209122 +:10175000E8002E772093E80001C0B90140E0611550 +:101760007105A9F12091F101222309F443C025302C +:1017700009F442C02091E80023FD40C02091E80018 +:1017800022FD32C02091E80020FFE9CF4091F30014 +:101790002091F20030E0342BFC01CF01611571057E +:1017A00059F02830310540F481918093F100615067 +:1017B00071092F5F3F4FF1CF41E02830310509F02B +:1017C00040E02091E8002E772093E800C8CF411137 +:1017D000C9CF0AC08091F101882361F0853061F0A2 +:1017E0008091E80083FD0AC08091E80082FFF2CF7B +:1017F00080E0089582E0089583E0089581E00895EF +:101800002091F8013091F9012617370748F061154A +:10181000710539F42091E8002E772093E80001C08B +:10182000B901FC0120E06115710591F18091F10190 +:10183000882309F440C0853009F43FC08091E80056 +:1018400083FD3DC08091E80082FD2FC08091E800BB +:1018500080FFE9CF2091F3008091F20090E0922B7D +:101860006115710559F08830910540F42491209359 +:10187000F1003196615071090196F2CF21E008978D +:1018800009F020E08091E8008E778093E800CBCFCC +:101890002111CCCF0AC08091F101882361F08530FD +:1018A00061F08091E80083FD0AC08091E80082FF2A +:1018B000F2CF80E0089582E0089583E0089581E00A +:1018C0000895982F973058F59093E900981739F0BC +:1018D0007091EC002091ED005091F00003C0242F96 +:1018E000762F50E021FF19C03091EB003E7F3093FE +:1018F000EB003091ED003D7F3093ED003091EB0037 +:1019000031603093EB007093EC002093ED00509326 +:10191000F0002091EE0027FF07C09F5FD3CF8F70AC +:101920008093E90081E0089580E008958091F201BC +:1019300087FF11C08091E80082FD05C08091F10110 +:101940008111F8CF11C08091E8008B770BC0809196 +:10195000F101882349F08091E80080FFF8CF809161 +:10196000E8008E778093E80008952091E40030919C +:10197000E50095E64091EC00842F817040FF22C085 +:101980008091E80080FD1CC08091F101882391F0D6 +:10199000853091F08091EB0085FD10C04091E4000E +:1019A0005091E5004217530729F39A01915011F71E +:1019B00084E0089582E0089583E0089581E0089529 +:1019C00080E008954091E80042FFDECF08950E9434 +:1019D000550D0E945D0DE0EEF0E080818160808316 +:1019E000E8EDF0E080818F77808319BCA7EDB0E04F +:1019F0008C918E7F8C9380818F7E80831092F001FA +:101A000008950F931F93CF93DF930E94550D0E946B +:101A10005D0DC8EDD0E088818F77888388818068EC +:101A2000888388818F7D888319BC1092F101109280 +:101A3000ED011092EF011092EE0100EE10E0F801BE +:101A400080818B7F808388818160888342E060E031 +:101A500080E00E94610CE1EEF0E080818E7F808367 +:101A6000E2EEF0E080818160808380818860808305 +:101A7000F80180818E7F8083888180618883DF91F7 +:101A8000CF911F910F910895E8EDF0E080818F7E56 +:101A90008083E7EDF0E080818160808384E082BF15 +:101AA00081E08093F0010C94010DE8EDF0E080817D +:101AB0008E7F80831092E20008951092DA001092D7 +:101AC000E10008951F920F920FB60F9211242F93E9 +:101AD0003F934F935F936F937F938F939F93AF93B6 +:101AE000BF93EF93FF938091E10082FF0BC0809141 +:101AF000E20082FF07C08091E1008B7F8093E100CC +:101B00000E94C90F8091DA0080FF1FC08091D80029 +:101B100080FF1BC08091DA008E7F8093DA00809175 +:101B2000D90080FF0DC080E189BD82E189BD09B483 +:101B300000FEFDCF81E08093F1010E94C40905C041 +:101B400019BC1092F1010E94D2098091E10080FF3E +:101B500019C08091E20080FF15C08091E2008E7F65 +:101B60008093E2008091E20080618093E2008091A6 +:101B7000D80080628093D80019BC85E08093F10181 +:101B80000E94D6098091E10084FF30C08091E2007C +:101B900084FF2CC080E189BD82E189BD09B400FECB +:101BA000FDCF8091D8008F7D8093D8008091E10097 +:101BB0008F7E8093E1008091E2008F7E8093E2002F +:101BC0008091E20081608093E2008091ED018823A2 +:101BD00011F084E007C08091E30087FD02C081E03E +:101BE00001C083E08093F1010E94D8098091E10057 +:101BF00083FF29C08091E20083FF25C08091E1002E +:101C0000877F8093E10082E08093F1011092ED01E3 +:101C10008091E1008E7F8093E1008091E2008E7FD1 +:101C20008093E2008091E20080618093E20042E0D4 +:101C300060E080E00E94610C8091F00088608093F9 +:101C4000F0000E94D509FF91EF91BF91AF919F9154 +:101C50008F917F916F915F914F913F912F910F9055 +:101C60000FBE0F901F9018951F920F920FB60F92F4 +:101C700011242F933F934F935F936F937F938F9391 +:101C80009F93AF93BF93CF93DF93EF93FF93C09155 +:101C9000E900CF708091EC00D82FD17080FDD0E8A2 +:101CA0001092E9008091F000877F8093F000789493 +:101CB0000E94780E1092E9008091F0008860809375 +:101CC000F000CD2BCF70C093E900FF91EF91DF9131 +:101CD000CF91BF91AF919F918F917F916F915F91C4 +:101CE0004F913F912F910F900FBE0F901F9018951D +:101CF0001F93CF93DF93CDB7DEB7AA970FB6F894B3 +:101D0000DEBF0FBECDBFE2EFF1E088E08E0F909115 +:101D1000F10091938E13FBCF0E94F4098091E800AB +:101D200083FF1FC18091F2019091F301492F50E090 +:101D30004A30510508F015C1FA01EA5AFF4F0C94D8 +:101D4000B323803881F0823809F00BC18091F6010D +:101D50008F708093E9008091EB0085FB882780F9E4 +:101D60001092E90006C08091EE019091EF0191116F +:101D700082609091E800977F9093E8008093F10053 +:101D80001092F100C8C0282F2D7F09F0EAC08823E7 +:101D900019F0823061F0E5C08091F401813009F0E2 +:101DA000E0C0933009F080E08093EF012BC0809178 +:101DB000F401811127C08091F6018F7009F4D1C020 +:101DC0008093E9002091EB0020FF1CC0933021F4A8 +:101DD0008091EB00806214C09091EB009061909331 +:101DE000EB0021E030E0A90102C0440F551F8A95A5 +:101DF000E2F74093EA001092EA008091EB008860DD +:101E00008093EB001092E9008091E800877F86C004 +:101E10008111A7C01091F4011F778091E3008078B1 +:101E2000812B8093E3008091E800877F8093E80016 +:101E30000E94960C8091E80080FFFCCF8091E30027 +:101E400080688093E300111102C082E001C083E04A +:101E50008093F10186C08058823008F082C0809162 +:101E6000F4019091F5018C3D53E0950779F583E0FD +:101E70008A838AE289834FB7F894DE01139620E0C3 +:101E80003EE051E2E32FF0E050935700E49120FF51 +:101E900003C0E295EF703F5FEF708E2F90E0EA3065 +:101EA00010F0C79601C0C0968D939D932F5F24318B +:101EB00049F74FBF8091E800877F8093E8006AE28E +:101EC00070E0CE0101960E949D0B14C0AE014F5FE1 +:101ED0005F4F6091F6010E94E40ABC01009709F48B +:101EE00040C09091E800977F9093E80089819A81A3 +:101EF0000E94000C8091E8008B778093E80031C04D +:101F0000803879F58091E800877F8093E8008091A0 +:101F1000ED018093F1008091E8008E778093E800D6 +:101F20000E94960C1EC081111CC09091F401923049 +:101F3000C0F48091E800877F8093E8009093ED01E2 +:101F40000E94960C8091ED01811106C08091E30002 +:101F500087FD02C081E001C084E08093F1010E940E +:101F6000E0098091E80083FF0AC08091E800877F44 +:101F70008093E8008091EB0080628093EB00AA964A +:101F80000FB6F894DEBF0FBECDBFDF91CF911F918A +:101F900008950895CF938091F1018823A1F0C09115 +:101FA000E900CF709091EC00892F817090FD80E85E +:101FB000C82B1092E9008091E80083FD0E94780E02 +:101FC000CF70C093E900CF910895909375018093ED +:101FD00074010895E0917401F0917501309721F03A +:101FE0000190F081E02D099480E00895E091740162 +:101FF000F0917501309721F00280F381E02D099472 +:102000000895E0917401F0917501309721F00480FA +:10201000F581E02D099408952091720130917301AA +:102020008217930771F09093730180937201E0918E +:102030007401F0917501309721F00680F781E02D51 +:1020400009940895209170013091710182179307CE +:1020500071F09093710180937001E0917401F0919F +:102060007501309721F00084F185E02D09940895E1 +:1020700008950C9438100E94921B0E9433030C9414 +:10208000541C9F92AF92BF92CF92DF92EF92FF9239 +:102090000F931F93CF93DF9300D000D000D0CDB724 +:1020A000DEB70E944B030DE010E0AA24A394B12CEC +:1020B000902E802F0E943904980129583E4F6901C3 +:1020C000F901F080F826A1F40150110988F78FEF8B +:1020D00089838A831B820E949B1B8160782F9D834A +:1020E0008C8349815A816B818D810E94D8102FC0C9 +:1020F0009091DA0191FF04C08E830E943F048E818B +:1021000025E030E0A501022E01C0440F0A94EAF751 +:10211000E42E4F21C1F029839A828E2191E009F4A7 +:1021200090E09B830E949B1B8160782F9D838C8312 +:1021300049815A816B818D810E94D810F60180817E +:10214000E826E08204C021503109E0F6BDCF0E94AC +:102150003B1F109176010E94EA0F1817B9F00E94F8 +:10216000EA0F8093760126960FB6F894DEBF0FBE75 +:10217000CDBFDF91CF911F910F91FF90EF90DF9036 +:10218000CF90BF90AF909F900C94E30826960FB627 +:10219000F894DEBF0FBECDBFDF91CF911F910F919D +:1021A000FF90EF90DF90CF90BF90AF909F900895F9 +:1021B000CF93DF93CDB7DEB72B970FB6F894DEBF82 +:1021C0000FBECDBF4F83588769877A878B87DE0123 +:1021D000119686E0FD0111928A95E9F785E0FE01EE +:1021E000379601900D928A95E1F749815A816B816A +:1021F0007C818D819E810E9421172B960FB6F894C9 +:10220000DEBF0FBECDBFDF91CF910895CF9388235E +:1022100009F4C2C0C82F823859F40E94EA0F81FD28 +:10222000BBC089E30E94FB190E94C81A89E30CC055 +:10223000833879F40E94EA0F80FDAEC083E50E94E6 +:10224000FB190E94C81A83E50E943D1ACF910C9495 +:10225000C81A843859F40E94EA0F82FD9DC087E4B1 +:102260000E94FB190E94C81A87E4EECF8CEF8C0FF6 +:10227000813A48F48C2F0E947E2181118DC08C2FD1 +:102280000E94FB19E3CF80E28C0F883048F4C770BE +:1022900081E001C0880FCA95EAF70E94811AD6CF63 +:1022A0008BE58C0F833078F4C53A29F0C63A31F0CB +:1022B00083E890E005C081E890E002C082E890E009 +:1022C000CF910C940C1088E58C0F833108F064C01A +:1022D000C83A39F1C93A41F1CA3A49F1CB3A51F118 +:1022E000CC3A59F1CD3A61F1C03B69F1CE3A71F186 +:1022F000CF3A79F1C13B81F1C23B89F1C33B91F106 +:10230000C43B99F1C53BA1F1C63BA9F1C73BB1F173 +:10231000C83BB9F1C93BC1F1CA3BC9F180E090E0CB +:1023200038C082EE90E035C089EE90E032C08AEE8F +:1023300090E02FC085EB90E02CC086EB90E029C0A8 +:1023400087EB90E026C08CEC90E023C08DEC90E011 +:1023500020C083E891E01DC08AE891E01AC082E9BC +:1023600091E017C084E991E014C081E292E011C0CD +:1023700083E292E00EC084E292E00BC085E292E03C +:1023800008C086E292E005C087E292E002C08AE2DD +:1023900092E0CF910C942210CF910895882309F4F4 +:1023A0004BC0823859F40E94EA0F81FF45C089E38F +:1023B0000E94FB190E94C81A89E30CC0833871F48B +:1023C0000E94EA0F80FF38C083E50E94FB190E943B +:1023D000C81A83E50E943D1A0C94C81A843859F42F +:1023E0000E94EA0F82FF28C087E40E94FB190E9426 +:1023F000C81A87E4EFCF9CEF980F913A58F390E218 +:10240000980F983050F4877091E001C0990F8A9529 +:10241000EAF7892F0E94871ADFCF9BE5980F933048 +:1024200020F480E090E00C940C10885A833120F462 +:1024300080E090E00C9422100895882321F00E94FF +:10244000811A0C94C81A0895882321F00E94871AD3 +:102450000C94C81A08957F928F929F92AF92BF9268 +:10246000CF92DF92EF92FF920F931F93CF93DF9360 +:102470001F92CDB7DEB77C01C62E772EFC010581F9 +:1024800002950F70128111110E949E1A0E94F41978 +:10249000882379F0112369F080E28C0D883048F0B0 +:1024A00082E00E94DD190E94F41991E0D82ED9260D +:1024B00001C0D12CE72DE295EF70F0E0E05AFF4F1C +:1024C0000C94B323872D807F072D0F70882311F084 +:1024D0000295007F112389F0002309F490C180E266 +:1024E0008C0D883020F4802F0E94811A03C0802F29 +:1024F0000E94911A0E94C81A82C18C2D0E94CE118E +:10250000002309F495C180E28C0D883020F4802FDF +:102510000E94871A03C0802F0E94971A0E94C81A2F +:1025200087C1972D907F872D8F70903211F0829503 +:10253000807FCC2021F0F1E0CF16B1F01EC0112336 +:1025400049F0002309F414C1013009F011C10E94BF +:10255000B11A6EC1002319F0013009F469C18983F1 +:102560000E94B41A89810AC1112321F0023008F0B7 +:102570005FC1FEC001115CC101C1112321F0002324 +:1025800009F4F6C03CC1002309F4F8C03EC1872D10 +:1025900086958695837090E0009719F0019761F019 +:1025A00047C1112321F08C2D972D937002C080E03C +:1025B00090E00E940C103CC1112321F08C2D972D2E +:1025C000937002C080E090E00E94221031C18C2DF7 +:1025D000112319F00E94431E02C00E94AB1E0E94EC +:1025E000301F26C1872D837009F052C0111120C100 +:1025F0008C2D829586958770880F880F9C2D9F70F3 +:10260000892E912CA12CB12C082E04C0880C991C69 +:10261000AA1CBB1C0A94D2F7C4FE14C00FE010E041 +:1026200020E030E0B901A80104C0440F551F661F27 +:10263000771F8A95D2F7CB01BA0160957095809586 +:10264000909503C060E070E0CB01272D269526957C +:10265000237030E02230310569F02330310589F0F4 +:10266000682979298A299B292130310571F00E9436 +:102670006918DEC0682979298A299B290E94851852 +:10268000D7C00E946918C501B4010E944D18D0C07E +:10269000112319F0872D817001C08695882309F4D4 +:1026A000C7C08C2D829586958770880F880F9C2DCA +:1026B0009F70892E912CA12CB12C082E04C0880C5F +:1026C000991CAA1CBB1C0A94D2F7C4FE14C00FE0CC +:1026D00010E020E030E0B901A80104C0440F551F0C +:1026E000661F771F8A95D2F7CB01BA016095709566 +:1026F0008095909503C060E070E0CB01272D269572 +:1027000026952370422F50E04230510569F0433046 +:10271000510589F0682979298A299B294130510579 +:1027200071F00E94431984C0682979298A299B295C +:102730000E945F197DC00E944319C501B4010E9427 +:10274000271976C08C2D90E0FC01E05EF109E5319F +:10275000F10508F050C0E059FF4F0C94B3230C2D45 +:102760000F70872D8F71112331F00E94C018802FB8 +:102770000E941D125DC00E94E118802F0E94241249 +:1027800057C0112339F0011153C0872D8F710E945A +:1027900006194EC0023008F04BC0F7CF112339F0B4 +:1027A000872D8F710E94C01843C01123C9F3872D54 +:1027B0008F710E94E1183CC0112329F0872D8F7181 +:1027C0000E94AB1835C00E94A11832C0112351F0ED +:1027D000172D1F71812F0E94C01863E0812F0E9466 +:1027E000D41926C081E00E94DD19023008F182E090 +:1027F0000E94DD191DC0112331F0002389F28C2DB8 +:102800000E94061115C0002391F28C2D0E94CE115A +:102810000FC0472D4F706C2DC7010E9415050E94F7 +:10282000C51706C0472D4F706C2DC7010E94F205D9 +:10283000DD20F9F00E94D01980FD1BC0F701128243 +:102840000E94CA190E94C018C7010E9448140E9421 +:10285000CA190F90DF91CF911F910F91FF90EF90C8 +:10286000DF90CF90BF90AF909F908F907F900C940F +:10287000E1180F90DF91CF911F910F91FF90EF9092 +:10288000DF90CF90BF90AF909F908F907F900895F2 +:102890000F931F93CF93DF93EC01888199812B8154 +:1028A0003C81232BB9F09F3F11F48F3F99F0CE016B +:1028B0000E944A05882371F0688179818A810E948B +:1028C000C6198C010E947B190E944218B801CE01E2 +:1028D0000E942B12DF91CF911F910F9108950E94BA +:1028E0009E1A0E94AE1A0E94731A0E94C81A0E9471 +:1028F000E11F0E94301F80E090E00E940C1080E0F9 +:1029000090E00C9422100E948E1A0C946F140E9476 +:10291000BB19292F22952F7030E02C3031054CF453 +:102920002A3031056CF42250310922303105A8F4E7 +:1029300007C02C30310569F02F30310551F00DC042 +:10294000803F69F018F4803E40F409C0843F29F4C8 +:1029500006C093FB882780F9089580E0089581E000 +:102960000895CF93DF9300D000D01F92CDB7DEB78C +:102970000F900F900F900F900F90DF91CF910895CF +:10298000CF93DF9300D000D000D0CDB7DEB726962E +:102990000FB6F894DEBF0FBECDBFDF91CF91089583 +:1029A0001F93CF93DF93C091850116E0809186013C +:1029B000C81799F0D0E01C9FF0011D9FF00D112465 +:1029C000E957FE4F408151816281738184819581F5 +:1029D0000E94C0142196C770E9CFDF91CF911F915B +:1029E00008954091B7015091B8016091B90170917B +:1029F000BA018091BB019091BC010C94C0148091EC +:102A0000BC0182958F7009F054C08091B901882370 +:102A100009F44FC080918501A09186016091B701B2 +:102A20007091B8014091BA015091BB01B6E08A178C +:102A300009F43FC090E041155105C1F17F3F11F409 +:102A40006F3FA1F1B89FF001B99FF00D1124E95734 +:102A5000FE4F218172132AC02081621327C0228178 +:102A6000211124C0238134812417350710F421500B +:102A70003109241B350B283C3105C0F42091BC01E1 +:102A80002F7020612093BC0126E0289FF001299F30 +:102A9000F00D1124E457FE4F80818F708061808398 +:102AA00087EB91E00E9448140C94D0140196877033 +:102AB000BECF0895CF92DF92EF92FF920F931F93B4 +:102AC000CF93DF93CDB7DEB762970FB6F894DEBF32 +:102AD0000FBECDBF8C0185E0F801DE011D9601908F +:102AE0000D928A95E1F7D8014C9111965C9111975E +:102AF00012966C9112971396CD90DC9014973091AA +:102B0000B7017091B8018091BA019091BB01009713 +:102B100009F46BC17F3F19F43F3F09F466C1E090AF +:102B2000B901EE2009F4C0C02091BC01C816D90635 +:102B300028F0F601E81BF90BCF0104C080959095B1 +:102B40008C0D9D1DFF24F394883C910578F0F12CA9 +:102B5000207F09F0C6C07C2DD98AC88A89890E9445 +:102B6000B11487EB91E00E944814B1C0822F807F9E +:102B700009F046C0751314C0341312C0611110C09F +:102B80002F7020612093BC010E94F11487EB91E02B +:102B90000E9448148091BC01D80115968C932EC0D8 +:102BA000CD2819F15F3F11F44F3FF9F0F62E611176 +:102BB0001CC0809185012091860136E0821709F4BE +:102BC0005AC090E0389FF001399FF00D1124E95769 +:102BD000FE4F7181571306C07081471303C0728185 +:102BE000711103C001968770E9CFF62E662309F4B0 +:102BF00018C18091BC0181608093BC01F12C11C18E +:102C0000751308C0341306C0611104C08091BC0163 +:102C1000D801C3C04D875E878D859E856A8B0E94D3 +:102C200087146A898823E1F16623D1F12091BC01E0 +:102C3000822F82958F7090E0029774F08091B70197 +:102C40009091B80198878F831986DB86CA862C8776 +:102C5000CE0107960E94481486E0F801A7EBB1E088 +:102C600001900D928A95E1F70E94FF140E94F114E1 +:102C7000FF24F394D6C04D875E878D859E850E9484 +:102C8000BB19292F22952F7030E0223031050CF02E +:102C9000BCC09F7009F0B6C0805E883008F4C1C027 +:102CA000C8010E944814E4CFC816D90608F453C0DE +:102CB000F601E81BF90BCF01883C910508F450C0E0 +:102CC000F12C7C2DD98AC88A89890E94B114E7EB3E +:102CD000F1E086E0DF011D928A95E9F70E94F11488 +:102CE000A0C0751314C0341312C0611110C08091BC +:102CF000BC01F8018583C8010E94481486E0E7EB17 +:102D0000F1E0DF011D928A95E9F7FE2C8AC04D871C +:102D10005E878D859E856A8B0E9487146A898823C9 +:102D200009F4BECF662309F4BBCF2091BC01822FEA +:102D300082958F7090E002970CF48ECF8091B7014E +:102D40009091B8019A8389831B82DD82CC822E8385 +:102D5000CE0101967FCF809590958C0D9D1DACCFB7 +:102D6000F62E662309F49CCF75132EC034132CC0A5 +:102D70002091BC0120FD1FC0822F82958F70D9F059 +:102D8000D80115962C9315978F3049F08F5F982FA7 +:102D90009295907F822F8F70892B15968C93C80106 +:102DA0000E94481486E0F801A7EBB1E001900D9273 +:102DB0008A95E1F793CF86E0F801A7EBB1E00190A7 +:102DC0000D928A95E1F72DC04D875E878D859E8592 +:102DD0000E948714811140CF8091BC018160809353 +:102DE000BC01C8010E9448141CC0662309F458CFD6 +:102DF0004D875E878D859E850E948714882309F400 +:102E00004FCF2ACF811148CF0CC0243031050CF0B0 +:102E100047CF9F7009F440CFF8019581907F09F06A +:102E20003BCF8F2D62960FB6F894DEBF0FBECDBF9D +:102E3000DF91CF911F910F91FF90EF90DF90CF9096 +:102E400008951F93CF93DF93CDB7DEB72C970FB6BE +:102E5000F894DEBF0FBECDBF4F83588769877A874E +:102E60008B879C87CE0107960E945A15882369F0AC +:102E70008F8198852A853B85232BF1F19F3F09F0AF +:102E800063C08F3F09F060C037C086E0FE0137960F +:102E9000DE01119601900D928A95E1F76F81788598 +:102EA000EA85FB85309741F17F3F11F46F3F21F1B7 +:102EB0002091860130E0C9010196877099274091E1 +:102EC000850150E08417950709F447C069837A8328 +:102ED000FD83EC8396E0929FD001939FB00D112467 +:102EE000A957BE4FFE01319601900D929A95E1F7D8 +:102EF000809386010E94D01416E080918501909104 +:102F000086018917C1F1189FC001112489579E4F6E +:102F10000E945A15882379F1E09185011E9FF001E6 +:102F20001124E957FE4F4081518162817381848170 +:102F300095810E94C0148091850190E00196877070 +:102F4000992780938501D9CF4F81588569857A85E6 +:102F50008B859C850E94C014CFCF0E948314109251 +:102F6000860110928501E7EBF1E086E0DF011D921A +:102F70008A95E9F7C1CF2C960FB6F894DEBF0FBE45 +:102F8000CDBFDF91CF911F910895EF92FF920F93E4 +:102F90001F93CF93DF938C01009709F46CC0F12C41 +:102FA000EE24E394E8012196F8018491843740F4FB +:102FB000843008F051C0813081F0823019F15BC05B +:102FC000853709F444C0A8F19CE7980F903708F0C2 +:102FD00052C08F770E94CE1141C00E5F1F4FFE017D +:102FE000C49180E28C0F883048F4C7708E2D01C0E8 +:102FF000880FCA95EAF70E94A11A14C08C2F0E946C +:1030000006112DC00E5F1F4FFE01C49180E28C0F90 +:10301000883058F4C7708E2D01C0880FCA95EAF722 +:103020000E94A71A0E94C81A1AC08C2F0E94CE11A3 +:1030300016C00E5F1F4FFE01C491CC2381F08FE9B3 +:103040009FE00197F1F700C00000C150F6CF0E5F7E +:103050001F4FFE01F49003C00E9406118E018F2DB8 +:10306000882309F49FCFEFE9FFE03197F1F700C023 +:1030700000008150F5CFDF91CF911F910F91FF900C +:10308000EF90089508956093C1017093C2018093F9 +:10309000C3019093C4010C946F140F931F9300917C +:1030A000C1011091C2012091C3013091C401DC0122 +:1030B000CB01802B912BA22BB32B8093C10190933A +:1030C000C201A093C301B093C4011F910F910C944E +:1030D0006F140F931F930091C1011091C2012091B1 +:1030E000C3013091C401DC01CB0180239123A223D1 +:1030F000B3238093C1019093C201A093C301B09305 +:10310000C4011F910F910C946F140F931F930091A2 +:10311000C1011091C2012091C3013091C401DC01B1 +:10312000CB0180279127A227B3278093C1019093D9 +:10313000C201A093C301B093C4011F910F910C94DD +:103140006F141092BD011092BE011092BF01109237 +:10315000C0010C946F1441E050E060E070E004C0E6 +:10316000440F551F661F771F8A95D2F74093BD0104 +:103170005093BE016093BF017093C0010C946F1413 +:1031800041E050E060E070E004C0440F551F661F4E +:10319000771F8A95D2F78091BD019091BE01A091D1 +:1031A000BF01B091C001482B592B6A2B7B2B409358 +:1031B000BD015093BE016093BF017093C0010C9498 +:1031C0006F1441E050E060E070E004C0440F551F10 +:1031D000661F771F8A95D2F7409550956095709538 +:1031E0008091BD019091BE01A091BF01B091C0013D +:1031F000482359236A237B234093BD015093BE018A +:103200006093BF017093C0010C946F1441E050E0D3 +:1032100060E070E004C0440F551F661F771F8A9559 +:10322000D2F78091BD019091BE01A091BF01B091F4 +:10323000C001482759276A277B274093BD01509337 +:10324000BE016093BF017093C0010C946F140F9383 +:103250001F930091BD011091BE012091BF013091DB +:10326000C001DC01CB01802B912BA22BB32B8093CF +:10327000BD019093BE01A093BF01B093C0011F9107 +:103280000F910C946F140F931F930091BD01109137 +:10329000BE012091BF013091C001DC01CB01802330 +:1032A0009123A223B3238093BD019093BE01A093E9 +:1032B000BF01B093C0011F910F910C946F140F9335 +:1032C0001F930091BD011091BE012091BF0130916B +:1032D000C001DC01CB0180279127A227B32780936F +:1032E000BD019093BE01A093BF01B093C0011F9197 +:1032F0000F910C946F140895CF92DF92EF92FF928A +:103300000F931F93CF93DF938C01C090C101D09096 +:10331000C201E090C301F090C4018091BD01909181 +:10332000BE01A091BF01B091C001C82AD92AEA2AE2 +:10333000FB2ACFE1D0E0D701C6010C2E04C0B69520 +:10334000A795979587950A94D2F780FF06C0B80194 +:103350008C2F0E944808019721F4219760F780E0A4 +:1033600001C08C2FDF91CF911F910F91FF90EF90B3 +:10337000DF90CF900895CF93DF93EC010E947C19EA +:10338000BE010E944808DF91CF910895CB010E94B1 +:10339000BB1908958091C5018595859585950895FA +:1033A0008091C5018770089598E0899F900111244C +:1033B000262B2093C5010C94C0182091C50180953F +:1033C00082238093C501982F977069F430E0482FCD +:1033D000552747FD50952417350729F08595859584 +:1033E00085950C94E11808959091C501977081E03E +:1033F00009F480E0089590910C01992321F09091B7 +:103400000D01911109C020910E0130910F01F901B8 +:1034100032969FEF40E01FC0982F9695969596950F +:103420009F3050F5E0910E01F0910F01E90FF11D71 +:10343000877021E030E0A90102C0440F551F8A9532 +:10344000E2F7CA019181892B818308959F3F39F06A +:103450004F5F4E3041F051915813F8CF0DC05111CC +:10346000F7CF942FF5CF9F3F39F0F901E90FF11D08 +:1034700097FDFA9582830895089590910C01992300 +:1034800021F090910D01911109C020910E01309110 +:103490000F01F9013296205F3F4F1FC0982F96957C +:1034A000969596959F30F0F4E0910E01F0910F0102 +:1034B000E90FF11D877021E030E0A90102C0440F3F +:1034C000551F8A95E2F7CA018095918189238183EE +:1034D00008953196E217F30729F090819813F9CFF8 +:1034E0001082F7CF089581E090E0E0910E01F09115 +:1034F0000F01E80FF91F1082019680319105A9F79D +:1035000008959091D901892B8093D90108958095D0 +:103510009091D90189238093D90108951092D901FE +:1035200008959091D801892B8093D80108958095B2 +:103530009091D80189238093D80108951092D801E1 +:1035400008959091D701892B8093D7010895809594 +:103550009091D70189238093D70108951092D701C4 +:1035600008958093C60108951092C6010895809130 +:103570000E0190910F01FC0131969C01205F3F4F9D +:1035800080E0919191118F5FE217F307D1F70895D1 +:10359000E0910E01F0910F018091D9018083E091BB +:1035A0000E01F0910F0190818091D801892B8083C9 +:1035B000E0910E01F0910F0190818091D701892B4C +:1035C00080838091C601882361F0E0910E01F09123 +:1035D0000F019081892B80830E94B71A811110926C +:1035E000C60180910E0190910F010C94F60F20E01E +:1035F000009739F0AC0141505109842395232F5F86 +:10360000F7CF822F0895CF92DF92EF92FF926C0155 +:10361000EE24FF24C114D104E104F10421F0C70118 +:10362000B60120E101C020E0C72ED82EE92EFF24EC +:10363000C114D104E104F10419F0285FC701B601F7 +:103640006B017C0154E0F694E794D794C7945A95A3 +:10365000D1F7C114D104E104F10419F02C5FC701C2 +:10366000B6016B017C0142E0F694E794D794C794CD +:103670004A95D1F7C114D104E104F10419F02E5F89 +:10368000C701B601DC01CB01B695A7959795879543 +:10369000892B8A2B8B2B09F02F5F822FFF90EF90C5 +:1036A000DF90CF9008958091F101843021F1109244 +:1036B000DB0120E488E190E00FB6F894A8958093B0 +:1036C00060000FBE2093600080E00E94E30883B793 +:1036D000817F846083BF83B7816083BF789488953E +:1036E00083B78E7F83BF88E10FB6F8948093600024 +:1036F000109260000FBE0895089508950E947C1BEB +:103700000E944B030E947D1B0E94400491E08111A6 +:1037100001C090E0892F08950E9483140E94EA0F4F +:103720000C94E30882E084BD93E095BD9AEF97BDC9 +:1037300080936E0008952FB7F8948091DC019091EA +:10374000DD01A091DE01B091DF012FBF0895CF927E +:10375000DF92EF92FF920F931F932FB7F89440914F +:10376000DC015091DD016091DE017091DF012FBF1E +:103770006A017B01EE24FF248C0120E030E0C016BA +:10378000D106E206F30610F4415051099A01281BB4 +:10379000390BC9011F910F91FF90EF90DF90CF90EF +:1037A00008951F920F920FB60F9211248F939F933B +:1037B000AF93BF938091DC019091DD01A091DE0178 +:1037C000B091DF010196A11DB11D8093DC019093A2 +:1037D000DD01A093DE01B093DF01BF91AF919F9116 +:1037E0008F910F900FBE0F901F9018950E94E70CBD +:1037F000F8942FEF87EA91E6215080409040E1F75E +:1038000000C0000087E090EBDC018093FB01909307 +:10381000FC01A093FD01B093FE019CE088E10FB68E +:10382000F894A895809360000FBE90936000FFCF3E +:10383000EF92FF920F931F93CF93DF93D82FCDE09A +:103840008C2F0E94390405E010E0E82EF12CC7010E +:10385000002E02C0959587950A94E2F780FF09C073 +:10386000602F7C2F80E00E94F305D81302C081E016 +:1038700006C00150110958F7C15010F780E0DF91E0 +:10388000CF911F910F91FF90EF900895CF93C82F84 +:103890008CE20E94181C882321F08C2FCF910C946D +:1038A000181C80E0CF910895CF930E949B1D811139 +:1038B00002C00E94811DC5E6C15049F00E944B0321 +:1038C0008FE39CE90197F1F700C00000F5CF89E292 +:1038D0000E94461C811113C18AE20E94461C81117C +:1038E0000E94811D85E00E94461C81110E94F61BEA +:1038F0000E94A61D8093DA0187E00E94461C88235F +:10390000A9F18BE10E94461C882351F08091DA01D5 +:1039100081FB222720F991E0922790FB81F90EC0CC +:103920008EE00E94461C882361F08091DA0182FBC0 +:10393000222720F991E0922790FB82F98093DA0107 +:1039400015C080E10E94461C9091DA01882341F065 +:1039500093FB222720F981E0822780FB93F904C0A2 +:10396000892F809580FB90F99093DA018091DA019C +:103970000E94AA1D0E94B81D8093FA0180EE0E9449 +:10398000461C882341F08091FA01982F909590FB76 +:1039900080F98093FA0189E30E94461C882359F03C +:1039A0008091FA0181FB222720F991E0922790FB78 +:1039B00081F98093FA0182EE0E94461C882359F017 +:1039C0008091FA0182FB222720F991E0922790FB57 +:1039D00082F98093FA0186EE0E94461C882359F0F2 +:1039E0008091FA0183FB222720F991E0922790FB36 +:1039F00083F98093FA0183EE0E94461C882359F0D4 +:103A00008091FA0184FB222720F991E0922790FB14 +:103A100084F98093FA0185E30E94461C882359F0BB +:103A20008091FA0185FB222720F991E0922790FBF3 +:103A300085F98093FA0181E30E94461C882359F09E +:103A40008091FA0186FB222720F991E0922790FBD2 +:103A500086F98093FA0181E10E94461C882359F07F +:103A60008091FA0187FB222720F991E0922790FBB1 +:103A700087F98093FA018091FA010E94BC1D809120 +:103A8000FA0187FB882780F980930D0187E20E9465 +:103A9000461CC82F8EE10E94461C8111C2608FE136 +:103AA0000E94461C8111C46080E20E94461C811164 +:103AB000C86081E20E94461C8111C06182E20E94BE +:103AC000461C8111C06283E20E94461C8111C064C1 +:103AD00084E20E94461C882311F0C06802C0CC23F7 +:103AE00029F08C2F0E94B31D6C2F03C00E94AF1DC4 +:103AF000682F70E080E090E0CF910C944318CF9154 +:103B000008956DEE7EEF80E090E00E94ED2360E08E +:103B100082E090E00E94DB2360E083E090E00E947E +:103B2000DB2360E084E090E00E94DB2360E085E03E +:103B300090E00C94DB2380E090E00E94D52321E00C +:103B40008D3E9E4F09F020E0822F089582E090E0A4 +:103B50000C94CD23682F82E090E00C94DB2383E06B +:103B600090E00C94CD23682F83E090E00C94DB234D +:103B700084E090E00C94CD23682F84E090E00C94D6 +:103B8000DB238091E20180FF0BC06091130185E08F +:103B9000689FB001112475956795759567952BC041 +:103BA00081FF09C06091130185E0689FB001112475 +:103BB0007595679520C082FF07C06091130185E06D +:103BC000689FB001112417C09091E3019923D1F0AF +:103BD00060911201961788F72091130185E0289FC4 +:103BE00090011124929FA001939F500D112470E029 +:103BF000CA010E949F236038710540F46115710568 +:103C000039F002C065E070E0862F08958FE70895CF +:103C100081E008958091E20180FF08C06091110168 +:103C200070E0759567957595679521C081FF06C011 +:103C30006091110170E07595679519C082FF04C00D +:103C40006091110170E010C09091E3019923C1F0DF +:103C5000609110019617A0F780911101899FC00112 +:103C6000112470E00E949F236038710528F46115CB +:103C7000710521F0862F08958FE7089581E008955A +:103C800061E070E0F4CF803F21F40E94C11D819576 +:103C900004C0813F29F40E94C11D8093E60108956C +:103CA000823F21F40E94C11D819504C0833F29F405 +:103CB0000E94C11D8093E5010895893F19F40E9477 +:103CC0000A1E05C08A3F31F40E940A1E8195809326 +:103CD000E70108958B3F21F40E940A1E819504C0DC +:103CE0008C3F29F40E940A1E8093E8010895843FC6 +:103CF00021F48091E401816017C0853F21F4809117 +:103D0000E401826011C0863F21F48091E401846067 +:103D10000BC0873F21F48091E401886005C0883F93 +:103D200031F48091E40180618093E40108958D3F36 +:103D300021F48091E20181600BC08E3F21F48091DB +:103D4000E201826005C08F3F29F48091E201846026 +:103D50008093E2010895803F39F48091E60187FF66 +:103D60006CC01092E60169C0813F29F48091E601A0 +:103D70001816BCF362C09091E501823F29F497FFC9 +:103D80005CC01092E50159C0833F19F41916CCF3B9 +:103D900054C0893F41F48091E70118160CF04DC0E2 +:103DA0001092E7014AC08A3F29F48091E70187FF1A +:103DB00044C0F6CF8B3F39F48091E80187FF3DC0C6 +:103DC0001092E8013AC08C3F29F48091E80118165E +:103DD000BCF333C0843F21F48091E4018E7F17C08F +:103DE000853F21F48091E4018D7F11C0863F21F44D +:103DF0008091E4018B7F0BC0873F21F48091E40127 +:103E0000877F05C0883F31F48091E4018F7E8093E5 +:103E1000E40113C08D3F21F48091E2018E7F0BC03D +:103E20008E3F21F48091E2018D7F05C08F3F29F400 +:103E30008091E2018B7F8093E2018091E501811105 +:103E40000EC08091E60181110AC08091E7018111C5 +:103E500006C08091E801811102C01092E30108952B +:103E600084EE91E00E9401100E949B1B9093E1015F +:103E70008093E00108951F93CF93DF938091E00139 +:103E80009091E1010E94A71BAC019091E30199235D +:103E900021F02091140130E006C0209115018AE044 +:103EA000289F900111244217530708F486C080917F +:103EB000E501C091E601D091E7011091E80181117F +:103EC00007C0C11176C0D11174C0111172C075C084 +:103ED0009F3F19F09F5F9093E301181624F40E940E +:103EE000C11D8093E5018091E50187FF05C00E9417 +:103EF000C11D81958093E5011C1624F40E94C11D0B +:103F00008093E6018091E60187FF05C00E94C11DF4 +:103F100081958093E6016091E501662339F1C091B6 +:103F2000E601CC2319F1772767FD7095872F972F2E +:103F30000E94B02223E333E343E35FE30E941423B0 +:103F40000E947D226093E5016C2F772767FD7095B5 +:103F5000872F972F0E94B02223E333E343E35FE3ED +:103F60000E9414230E947D226093E6011D1624F412 +:103F70000E940A1E8093E7018091E70187FF05C038 +:103F80000E940A1E81958093E701111624F40E9475 +:103F90000A1E8093E8018091E80187FF05C00E9416 +:103FA0000A1E81958093E801DF91CF911F910C94B7 +:103FB000301F9F3F09F08ECF96CFDF91CF911F9199 +:103FC0000895E4EEF1E085E0DF011D928A95E9F7BE +:103FD0001092E3011092E2010895833081F128F4F8 +:103FE000813059F08230D1F00895853009F449C00C +:103FF000B8F1863009F456C0089580911501262F36 +:1040000030E0280F311D2F3F310524F4680F6093F5 +:10401000150108958FEF8093150108958091140183 +:10402000262F30E0280F311D2F3F310524F4680F73 +:104030006093140108958FEF809314010895809187 +:104040001301262F30E0280F311D2F3F310524F4B6 +:10405000680F6093130108958FEF80931301089503 +:1040600080911201262F30E0280F311D2F3F31059E +:1040700024F4680F6093120108958FEF809312016A +:10408000089580911101262F30E0280F311D2F3F18 +:10409000310524F4680F6093110108958FEF809328 +:1040A0001101089580911001262F30E0280F311D55 +:1040B0002F3F310524F4680F6093100108958FEFAE +:1040C000809310010895833011F128F4813049F074 +:1040D000823091F00895853081F120F18630C1F170 +:1040E000089580911501681720F4861B80931501AF +:1040F000089510921501089580911401681720F415 +:10410000861B8093140108951092140108958091E4 +:104110001301681720F4861B8093130108951092F1 +:104120001301089580911201681720F4861B809373 +:1041300012010895109212010895809111016817DB +:1041400020F4861B809311010895109211010895A7 +:1041500080911001681720F4861B80931001089548 +:104160001092100108950F931F938D3109F46BC0C5 +:1041700008F03FC08E3009F47FC0C0F4873009F4E6 +:1041800069C068F4863009F0B1C08091DA01817F9E +:104190008E7F8093DA0181E08093EA01A8C08830A5 +:1041A00009F4A2C08B3009F49FC0A0C0863109F485 +:1041B0009BC078F4803109F472C0813109F096C057 +:1041C0000E94831490910D0181E0892780930D0155 +:1041D0008BC0893109F488C08B3109F087C0809188 +:1041E000DA0181FB222720F991E0922790FB81F9E7 +:1041F0004CC0853309F470C048F4873209F46CC0B0 +:1042000008F459C0893209F467C070C0833438F4A7 +:104210008A3308F04EC0883309F466C067C083341F +:1042200009F45AC0883409F061C00E9483140FEF6A +:1042300013ED20E3015010402040E1F700C00000E2 +:104240000E94F61B51C00E9437220E94EA0F0E9472 +:10425000E3084AC09091DA01892F8095817080FB34 +:1042600090F929F0966098609093DA0140C0997FA8 +:10427000977F9093DA0138C08091DA0182FB222780 +:1042800020F991E0922790FB82F98093DA0199233B +:1042900059F18091DA0181608093DA0125C0809123 +:1042A000DA0183FB222720F991E0922790FB83F922 +:1042B000ECCF895301C08D5141E050E060E070E0E7 +:1042C0008A019B0104C0000F111F221F331F8A9512 +:1042D000D2F7C901B80104C061E070E080E090E06D +:1042E0000E9443180E94831481E001C080E01F9166 +:1042F0000F91089580E0089580E00895CF93C82F2E +:104300008091EA01813079F018F08230E9F187C0BC +:10431000E0910E01F0910F018081813169F08232CC +:1043200009F07FC009C0E0910E01F0910F0180817A +:10433000813111F0823261F48C2F0E947A21811137 +:1043400004C08C2F0E94B3201DC081E090E01AC0F1 +:104350008C2F0E947C21811114C0C43179F048F463 +:10436000CB3079F0C03109F060C082E08093EA017F +:1043700008C0C93219F0C83321F057C01092EA01C1 +:1043800054C081E0817053C0C93289F118F5C4313D +:1043900071F1A8F4C73009F046C08AE08093150196 +:1043A00094E19093140193E0909313018093120190 +:1043B00088E08093110188E28093100134C0CE51CF +:1043C000C63088F5EC2FF0E0E65DFE4F80818093EB +:1043D000E90129C0CE34E9F020F4CB3421F56AE0BC +:1043E00013C0C13579F0C235F1F461E00DC08091A0 +:1043F000E901882319F01092E90115C081E080934A +:10440000EA0115C061E006C08091E9010E94ED1F3C +:104410000AC06AE08091E9010E94632004C0109202 +:10442000EA0180E004C081E002C080E0ABCFCF9120 +:104430000895E1E8F0E08081886080838081816078 +:1044400080838FB7F89493E09093890090ED9093D8 +:1044500088008FBF0895EFE6F0E08081826080835E +:104460000895EFE6F0E080818D7F80830895EFE688 +:10447000F0E0908182E08927808308951F920F9257 +:104480000FB60F9211242F933F934F935F936F9327 +:104490007F938F939F93AF93BF93EF93FF938091FD +:1044A000EB019091EC0101969093EC018093EB016C +:1044B000811103C082E00E94E308E091EC01E695DF +:1044C000E695F0E0EC54FB4FE4918091EB018E1304 +:1044D00003C080E00E94E308FF91EF91BF91AF918C +:1044E0009F918F917F916F915F914F913F912F910C +:1044F0000F900FBE0F901F90189504D06894B111C3 +:104500008DC0089570D088F09F5790F0B92F9927EB +:10451000B751A0F0D1F0660F771F881F991F1AF0CE +:10452000BA95C9F712C0B13081F077D0B1E00895E3 +:1045300074C0672F782F8827B85F39F0B93FCCF364 +:10454000869577956795B395D9F73EF490958095C4 +:10455000709561957F4F8F4F9F4F0895E89409C0E4 +:1045600097FB3EF490958095709561957F4F8F4FA6 +:104570009F4F9923A9F0F92F96E9BB279395F695BC +:10458000879577956795B795F111F8CFFAF4BB0F3A +:1045900011F460FF1BC06F5F7F4F8F4F9F4F16C09E +:1045A000882311F096E911C0772321F09EE8872F28 +:1045B000762F05C0662371F096E8862F70E060E0E4 +:1045C0002AF09A95660F771F881FDAF7880F96955D +:1045D000879597F9089557FD9058440F551F59F046 +:1045E0005F3F71F04795880F97FB991F61F09F3FE0 +:1045F00079F087950895121613061406551FF2CF09 +:104600004695F1DF08C0161617061806991FF1CF58 +:1046100086957105610508940895E894BB2766277F +:104620007727CB0197F908950BD078C069D028F08F +:104630006ED018F0952309F05AC05FC01124EECF58 +:10464000CADFA0F3959FD1F3950F50E0551F629FED +:10465000F001729FBB27F00DB11D639FAA27F00DDB +:10466000B11DAA1F649F6627B00DA11D661F829F02 +:104670002227B00DA11D621F739FB00DA11D621FE7 +:10468000839FA00D611D221F749F3327A00D611D04 +:10469000231F849F600D211D822F762F6A2F1124E6 +:1046A0009F5750408AF0E1F088234AF0EE0FFF1F39 +:1046B000BB1F661F771F881F91505040A9F79E3F70 +:1046C000510570F014C0AACF5F3FECF3983EDCF3C5 +:1046D000869577956795B795F795E7959F5FC1F7AD +:1046E000FE2B880F911D9695879597F9089597F958 +:1046F0009F6780E870E060E008959FEF80EC089588 +:1047000000240A94161617061806090608950024B0 +:104710000A9412161306140605060895092E03942A +:10472000000C11F4882352F0BB0F40F4BF2B11F49E +:1047300060FF04C06F5F7F4F8F4F9F4F089597FBBF +:10474000072E16F4009407D077FD09D00E94B923F4 +:1047500007FC05D03EF4909581959F4F0895709584 +:1047600061957F4F0895EE0FFF1F0590F491E02DA6 +:104770000994AA1BBB1B51E107C0AA1FBB1FA617A8 +:10478000B70710F0A61BB70B881F991F5A95A9F7FA +:1047900080959095BC01CD010895F999FECF92BD09 +:1047A00081BDF89A992780B50895A8E1B0E042E06C +:1047B00050E00C94F523262FF999FECF92BD81BDD0 +:1047C000F89A019700B4021639F01FBA20BD0FB64F +:1047D000F894FA9AF99A0FBE08950196272F0E942D +:1047E000DC230C94DB23DC01CB01FC01F999FECF27 +:1047F00006C0F2BDE1BDF89A319600B40D92415069 +:0A4800005040B8F70895F894FFCF78 +:10480A000220E508730950091C09E8080101C701DB +:10481A0028080A03140A3F4D363975042804F2039E +:10482A00B9034C0365037E039703010203040506DB +:04483A000708090062 +:00000001FF diff --git a/keyboards/ergodox_ez/keymaps/kastyle/keymap.c b/keyboards/ergodox_ez/keymaps/kastyle/keymap.c new file mode 100644 index 0000000000..3982e0a19f --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/kastyle/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 + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | = | 1 | 2 | 3 | 4 | 5 | LGUI | | App | 6 | 7 | 8 | 9 | 0 | - | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Tab | Q | W | E | R | T | L1 | | L1 | Y | U | I | O | P | \ | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | LCtrl | A | S | D | F | G |------| |------| H | J | K | L |; / L2| ' | + * |--------+------+------+------+------+------| Hyper| | Meh |------+------+------+------+------+--------| + * | LShift |Z/Ctrl| X | C | V | B | | | | N | M | , | . |//Ctrl| RShift | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * |Grv/L1| '" |AltShf| Left | Right| | Up | Down | [ | ] | ~L1 | + * `----------------------------------' `----------------------------------' + * ,---------------. ,---------------. + * |Ctrl/Esc| Alt | | Alt |Ctrl/Esc| + * ,------|--------|------| |------+--------+------. + * | | | Home | | PgUp | | | + * |Backsp| Del |------| |------| Enter | Space| + * | | | End | | PgDn | | | + * `----------------------' `----------------------' + */ +// If it accepts an argument (i.e, is a function), it doesn't need KC_. +// Otherwise, it needs KC_* +[BASE] = KEYMAP( // layer 0 : default + // left hand + KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, KC_LGUI, + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, TG(1), + KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, + KC_LSFT, CTL_T(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, + CTL_T(KC_ESC), ALT_T(KC_APP), + KC_HOME, + KC_BSPC,KC_DEL,KC_END, + // right hand + KC_APP, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, + TG(1), 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, + 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), + KC_PGUP, + KC_PGDN,KC_ENT, KC_SPC + ), +/* Keymap 1: Symbol Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | ! | @ | { | } | | | | | | Up | 7 | 8 | 9 | * | F12 | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | # | $ | ( | ) | ` |------| |------| Down | 4 | 5 | 6 | + | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | % | ^ | [ | ] | ~ | | | | & | 1 | 2 | 3 | \ | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | . | 0 | = | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// SYMBOLS +[SYMB] = KEYMAP( + // left hand + KC_TRNS,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, + KC_TRNS,KC_EXLM,KC_AT, KC_LCBR,KC_RCBR,KC_PIPE,KC_TRNS, + KC_TRNS,KC_HASH,KC_DLR, KC_LPRN,KC_RPRN,KC_GRV, + KC_TRNS,KC_PERC,KC_CIRC,KC_LBRC,KC_RBRC,KC_TILD,KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS, + KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS, + // right hand + KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + KC_TRNS, KC_UP, KC_7, KC_8, KC_9, KC_ASTR, KC_F12, + KC_DOWN, KC_4, KC_5, KC_6, KC_PLUS, KC_TRNS, + KC_TRNS, KC_AMPR, KC_1, KC_2, KC_3, KC_BSLS, KC_TRNS, + KC_TRNS,KC_DOT, KC_0, KC_EQL, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), +/* Keymap 2: Media and mouse keys + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | MsUp | | | | | | | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | |MsLeft|MsDown|MsRght| |------| |------| | | | | | Play | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | | Prev | Next | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | Lclk | Rclk | |VolUp |VolDn | Mute | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | |Brwser| + * | | |------| |------| |Back | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// MEDIA AND MOUSE +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/keyboards/ergodox_ez/keymaps/kines-ish/compiled.hex b/keyboards/ergodox_ez/keymaps/kines-ish/compiled.hex new file mode 100644 index 0000000000..54524b326a --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/kines-ish/compiled.hex @@ -0,0 +1,1158 @@ +:100000000C947A020C94BE020C94BE020C94BE02B4 +:100010000C94BE020C94BE020C94BE020C94BE0260 +:100020000C94BE020C94BE020C94620D0C94340E1F +:100030000C94BE020C94BE020C94BE020C94BE0240 +:100040000C94BE020C943E220C94BE020C94BE0290 +:100050000C94BE020C94D11B0C94BE020C94BE02F4 +:100060000C94BE020C94BE020C94BE020C94BE0210 +:100070000C94BE020C94BE020C94BE020C94BE0200 +:100080000C94BE020C94BE020C94BE020C94BE02F0 +:100090000C94BE020C94BE020C94BE020C94BE02E0 +:1000A0000C94BE020C94BE020C94BE02A10EC30EB0 +:1000B000B10FC30EB10F080F2B0FB10F800F930FAD +:1000C0006212621291129112C712E71218141814D8 +:1000D000F2121814A213A2130914181418141214EB +:1000E000AF13AF13AF13AF13AF13AF13AF13AF1300 +:1000F000AF13AF13AF13AF13AF13AF13AF13AF13F0 +:10010000C113CE13D513DC13E6130000F0A12E00AB +:100110002B003900E100290000001E00140004003B +:100120001D0035004D001F001A0016001B0049007D +:100130004C00200008000700060050002A002100A3 +:100140001500090019004F004A00220017000A009C +:1001500005000000E000500001540000007F000096 +:10016000E2004F000154000000770000E30023008C +:100170001C000B0011000000E400240018000D001A +:10018000100052004B0025000C000E0036005100FC +:100190002C00260012000F0037002F002800270037 +:1001A00013003300380030004E002D0031003400C1 +:1001B000E500C200000046004700480001000100C1 +:1001C00000003A001E0220022202010001003B0052 +:1001D0001F0221022302010001003C002F0226021F +:1001E0002F00010001003D00300227023000010015 +:1001F00001003E003102350035020000010001001F +:1002000001000000010000000100010001000000E9 +:100210000100000001003F005200510024020000D4 +:1002200001004000240021001E00010001004100E7 +:10023000250022001F003700010042002600230095 +:10024000200027000100430025022E0231002E006D +:100250000100440045000100010001000000010010 +:100260000100010001000100000001000100010087 +:1002700001000100010001000100F2000100010085 +:1002800001000100F000F1000100F4000100010094 +:100290000100F3000100F500010001000100010070 +:1002A0000100000001000100010000000100000049 +:1002B0000100010001000000010000000100010038 +:1002C0000100010001000000010001000100010027 +:1002D0000100A9000100010001000100AC00AA001A +:1002E000B600010001000100AB00A8000100010000 +:1002F0000100010001000100010001000100AE0049 +:1003000001000100000016034500720067006F0045 +:1003100044006F007800200045005A0000001603DA +:100320004500720067006F0044006F0078002000F5 +:1003300045005A0000000403090409026D0004018D +:1003400000A0FA09040000010301010009211101C4 +:100350000001223F000705810308000A090401008B +:100360000103010200092111010001224D000705CE +:10037000820308000A0904020001030000000921A9 +:10038000110100012236000705830308000A090451 +:1003900003000103000000092111010001223900BE +:1003A000070584031000011201100100000008ED90 +:1003B000FE071301000102000105010906A1010564 +:1003C0000719E029E7150025019508750181020547 +:1003D000081901290595057501910295017503918B +:1003E0000105071900297715002501957875018108 +:1003F00002C005010980A101850216010026B7008F +:100400001A01002AB700751095018100C0050C097A +:1004100001A1018503160100269C021A01002A9CF5 +:1004200002751095018100C005010902A1010901B1 +:10043000A10005091901290515002501950575017A +:10044000810295017503810105010930093115818A +:10045000257F95027508810609381581257F95014C +:1004600075088106050C0A38021581257F950175EE +:10047000088106C0C005010906A101050719E02988 +:10048000E715002501950875018102950175088120 +:100490000105081901290595057501910295017558 +:1004A0000391010507190029FF150025FF95067521 +:1004B000088100C0000000000000000000000001F2 +:1004C0000204060A0F17202C3A4A5D71879DB3C7B4 +:1004D000DAE9F5FCFFFCF5E9DAC7B39D87715D4AFF +:1004E0003A2C20170F0A0604020100000000000049 +:1004F0000000000011241FBECFEFDAE0DEBFCDBF49 +:1005000004B603FE24C08091FB019091FC01A091F0 +:10051000FD01B091FE018730904BA740B04BB9F47C +:100520001092FB011092FC011092FD011092FE014D +:1005300014BE84B7877F84BF88E10FB6F894809398 +:100540006000109260000FBEE0E0FFE3099511E04B +:10055000A0E0B1E0EAE0F8E402C005900D92A43317 +:10056000B107D9F711E0A4E3B1E001C01D92AB3FA0 +:10057000B107E1F70E94A60A0C9403240C94000032 +:100580001092B9008AE08093B800089594EA90939D +:10059000BC009091BC0097FFFCCF9091B900987F70 +:1005A000983021F0903111F081E008958093BB00E4 +:1005B00084E88093BC008091BC0087FFFCCF8091D1 +:1005C000B900887F883111F0803471F780E0089598 +:1005D00084E98093BC008091BC0084FDFCCF089529 +:1005E0008093BB0084E88093BC008091BC0087FFAF +:1005F000FCCF9091B900987F81E0983209F480E0B7 +:10060000089584E88093BC008091BC0087FFFCCFF4 +:100610008091BB00089580910101811115C080E493 +:100620000E94C6028093010181110CC082E10E94E8 +:10063000F00280930101811105C08FEF0E94F0024A +:10064000809301010E94E80284B1807F84B985B162 +:10065000807F85B98AB1837F8AB98BB1837F8BB95B +:100660003E98469808950E94C604809301010E9416 +:100670000B0380B38C7080BB81B3836F81BBA5E318 +:10068000B1E0E3E4F1E08EE08E0F11921D928E1343 +:10069000FCCF0C94B004BF92CF92DF92EF92FF9206 +:1006A0000F931F93CF93DF9380910101882379F0FB +:1006B000809134018F5F80933401811108C00E94C2 +:1006C000C60480930101811102C00E94580405E311 +:1006D00011E0C0E0D0E0DD24D39482E0C82EEE2407 +:1006E000E394F12CC730D10500F58091010181110F +:1006F00064C080E40E94C60280930101811112C08F +:1007000082E10E94F0028093010181110BC0C701B8 +:100710000C2E01C0880F0A94EAF780950E94F0021F +:10072000809301010E94E80248C0CA30A1F028F479 +:10073000C83059F0C93061F005C0CC3089F070F094 +:10074000CD3089F0209A289810C0219A29980DC0A0 +:10075000229A2A980AC0239A2B9807C0529A01C05D +:10076000539A5B9802C03E9A469890EA9A95F1F7A0 +:100770009FB1799902C082E001C080E091709D250F +:10078000982B7C9902C084E001C080E0892B7D9980 +:1007900002C038E001C030E0832B7E9902C020E126 +:1007A00001C020E0822B9FB19095991F9927991F36 +:1007B0009295990F907E892B0FC080910101811134 +:1007C00049C080E40E94C60280930101882379F128 +:1007D000B12C0E94E8028B2DF8019081981719F036 +:1007E0008083C09200010E940B0321960F5F1F4F70 +:1007F000CE30D10509F076CF80910001882361F1D8 +:10080000815080930001882339F08FE99FE00197A0 +:10081000F1F700C0000020C0A3E4B1E0E5E3F1E09F +:10082000CF01825F91919D938E13FCCF15C083E120 +:100830000E94F002809301018111CACF81E40E94DD +:10084000C602809301018111C3CF0E940103B82E1B +:10085000B094BFCF80E0C0CF0E94560481E0DF910A +:10086000CF911F910F91FF90EF90DF90CF90BF90AD +:100870000895E82FF0E0ED5BFE4F80810895089524 +:100880000F931F93CF93DF93C3E4D1E010E00C2FBD +:10089000025F899190E00E94F71A180F0C13F9CFAC +:1008A000812FDF91CF911F910F9108950C94260510 +:1008B00056985E9825982D9826982E9827982F98C8 +:1008C0008FEF90E0909389008093880090938B0045 +:1008D00080938A0090938D0080938C00259A2D9AA6 +:1008E0002FEF80E792E0215080409040E1F700C078 +:1008F0000000269A2E9A2FEF80E792E02150804048 +:100900009040E1F700C00000279A2F9A2FEF80E770 +:1009100092E0215080409040E1F700C0000025980F +:100920002D982FEF80E792E0215080409040E1F732 +:1009300000C0000026982E982FEF80E792E021500B +:1009400080409040E1F700C0000027982F9856980B +:100950005E9825982D9826982E9827982F98089578 +:1009600089EA8093800089E08093810024982C9804 +:100970003F988AB18F748AB96E98479A8BB1806B11 +:100980008BB9769A0E9458040C94250580E28093D6 +:1009900001018091510181110EC00E94C00281E0CD +:1009A000809351012FEF83ED90E3215080409040E0 +:1009B000E1F700C0000080E40E94C60280930101BC +:1009C00081112EC00E94F00280930101811128C084 +:1009D0000E94F00280930101811122C08FE30E94E6 +:1009E000F0028093010181111BC00E94E80280E4A3 +:1009F0000E94C60280930101811112C08CE00E9406 +:100A0000F0028093010181110BC00E94F0028093DB +:100A10000101811105C08FE30E94F0028093010162 +:100A20000E94E80280910101089561110BC0FC0150 +:100A30008281882321F085EE0E94061103C085EE95 +:100A40000E94CE1180E090E0089508956091BD016C +:100A50007091BE018091BF019091C0010E94031B63 +:100A600056985E9825982D9826982E9827982F9816 +:100A7000813019F0823021F00895259A2D9A089539 +:100A8000269A2E9A089581E0089581E008950C94A5 +:100A9000450508950F931F93CF93DF938C01FC01BD +:100AA000C081D181CE010E947C19BE010E94F30554 +:100AB000EC01B8010E944705882309F48DC0F801B4 +:100AC0008281882309F44AC080915D0181111FC091 +:100AD000C431F0E5DF0709F051C00E94490581E00B +:100AE00080935D010E949B1B90935C0180935B014E +:100AF0001092540110925601109255011092580113 +:100B00001092570110925A011092590165C08091BC +:100B10005B0190915C010E94A71B883C910570F4D9 +:100B200080915401E82FF0E0EE0FFF1FEB5AFE4FCB +:100B3000D183C0838F5F809354014EC0C43880E559 +:100B4000D80721F0C538D04501F13AC0F8018281BB +:100B5000882341F01092520182E01EC0C438E0E5C3 +:100B6000DE0759F580915201811106C086E20E948C +:100B7000061186E20E94CE1182E01CC0C438F0E566 +:100B8000DF0741F3C538D045D9F4F80182818823C5 +:100B900031F01092530180E20E941D121DC080911D +:100BA0005301811106C087E20E94061187E20E946C +:100BB000CE1180E20E9424120FC0C538D04529F31F +:100BC00081E08093520180935301C801DF91CF915E +:100BD0001F910F910C94430580E0DF91CF911F91FD +:100BE0000F910895089596E0799FF001112494E5FE +:100BF000899FE00DF11D1124E60FF11DEE0FFF1F7F +:100C0000E25FFE4F859194910895880F991FFC0132 +:100C1000E657F040859194910895880F991FFC0143 +:100C2000E65FFE4F8591949108950F931F93CF93A4 +:100C3000DF93EC01811520E3920750F5C11580E2A6 +:100C4000D80708F0C3C0CB3BD10590F4C83AD10512 +:100C500008F06AC0C53AD10508F05BC0C430D105C0 +:100C600008F0D0C1219709F0CAC101E010E00AC222 +:100C7000CF3FD10511F008F0C5C1C03FD10508F044 +:100C8000A2C0CE01805E9109089708F4BBC1B7C12C +:100C9000C13090E5D90709F4A2C020F5C0318FE436 +:100CA000D80770F4C11590E4D90708F094C0C115B5 +:100CB00021E3D20708F0A3C1DD278E01106CE2C149 +:100CC000C115D04509F09BC10E9483148FEF94E3B6 +:100CD0002CE0815090402040E1F700C000000E94CD +:100CE000F61BD0C1C11597E5D90758F4C03121E5ED +:100CF000D20708F01CC1C43180E5D80708F475C0DC +:100D00007EC1CE0190578115904108F078C1DF7007 +:100D100073C1C53AD10509F477C1C63AD10509F0C6 +:100D200076C102E810E4AEC1C83AD10509F472C137 +:100D3000C93AD10509F471C1CA3AD10509F470C1A3 +:100D4000CB3AD10509F46FC1CC3AD10509F46EC193 +:100D5000CD3AD10509F46DC1C03BD10509F46CC190 +:100D6000CE3AD10509F46BC1CF3AD10509F46AC175 +:100D7000C13BD10509F469C1C23BD10509F468C181 +:100D8000C33BD10509F467C1C43BD10509F466C171 +:100D9000C53BD10509F465C1C63BD10509F464C161 +:100DA000C73BD10509F463C1C83BD10509F462C151 +:100DB000C93BD10509F461C1CA3BD10509F460C141 +:100DC00000E014E45FC18E0110655CC1CE019F702C +:100DD0000E940D0658C1DF708E01106A53C18091C8 +:100DE000DA0181608093DA014DC10E949B1D81115F +:100DF00002C00E94811D0E94B81D90E09093FB01EB +:100E00008093FA01C23080E5D80721F48091FA017D +:100E1000816086C0C43090E5D90721F48091FA0141 +:100E200082607EC0C63020E5D20721F48091FA01AD +:100E3000846076C0C83080E5D80719F48091FA0143 +:100E400027C0CA3090E5D90721F48091FA0180616A +:100E500067C0CC3020E5D20721F48091FA0180628E +:100E60005FC0CE3080E5D80721F48091FA0180641C +:100E700057C0C03190E5D90721F48091FA0180680C +:100E80004FC0C23120E5D20729F48091FA01846075 +:100E9000886046C0C33080E5D80721F48091FA010C +:100EA0008E7F3EC0C53090E5D90721F48091FA01CC +:100EB0008D7F36C0C73020E5D20721F48091FA013A +:100EC0008B7F2EC0C93080E5D80719F48091FA01D4 +:100ED00026C0CB3090E5D90721F48091FA018F7EAE +:100EE0001FC0CD3020E5D20721F48091FA018F7D1B +:100EF00017C0CF3080E5D80721F48091FA018F7BAD +:100F00000FC0C13190E5D90721F48091FA018F77A4 +:100F100007C0C331D04531F48091FA018B7F877FC0 +:100F20008093FA018091FA010E94BC1DABC08D2F05 +:100F300099278F70992781309105D9F49E012370EC +:100F4000332702C0880F991F2A95E2F79C688E010B +:100F500044E0000F111F4A95E1F700271370802B22 +:100F6000912B53E0CC0FDD1F5A95E1F7C076DD27BA +:100F70002FC08230910531F4DC2FCC278E01016F18 +:100F8000106A80C08330910569F4CE01837099277F +:100F900001E010E002C0000F111F8A95E2F7C801BE +:100FA0009C680FC084309105B9F4CE0183709927F5 +:100FB00001E010E002C0000F111F8A95E2F7C8019E +:100FC0009A6823E0CC0FDD1F2A95E1F7C07ED77029 +:100FD0008C010C2B1D2B56C08530910531F4DC2F74 +:100FE000CC278E01046F106A4DC0069709F04AC0E5 +:100FF000CF71DD27DC2FCC278E01106243C000E0CB +:1010000010E040C08E013EC001E810E43BC003E8A0 +:1010100010E438C002EE14E435C009EE14E432C026 +:101020000AEE14E42FC005EB14E42CC006EB14E424 +:1010300029C007EB14E426C00CEC14E423C00DEC2B +:1010400014E420C003E815E41DC00AE815E41AC042 +:1010500002E915E417C004E915E414C001E216E43E +:1010600011C003E216E40EC004E216E40BC005E270 +:1010700016E408C006E216E405C007E216E402C062 +:101080000AE216E4C801DF91CF911F910F910895F4 +:1010900096E0799FF001112494E5899FE00DF11D00 +:1010A0001124E60FF11DEE0FFF1FE25FFE4F859149 +:1010B0009491803E9105E0F4803C910558F5813390 +:1010C000910509F46FC048F48932910509F463C0B1 +:1010D0008A32910509F46DC072C089339105E9F037 +:1010E00082389105D1F08533910509F44DC067C070 +:1010F000833E910581F138F4803E9105B9F0823E3E +:101100009105D9F05CC0863E910561F1873E91055D +:10111000A1F155C00E94050608952091FA0120FD15 +:1011200002C021FF4CC080EE90E049C08091FA01DE +:1011300080FFF9CF89E390E042C08091FA0182FFFD +:101140000EC08091FA0184FF03C080E090E037C0B8 +:1011500083EE90E034C08091FA0182FFF2CF82EEFC +:1011600090E02DC08091FA0183FF0BC08091FA01BD +:1011700084FDEBCF87EE90E022C08091FA0183FFDF +:10118000F5CF86EE90E01BC08091FA0185FF07C085 +:1011900089E290E014C08091FA0185FFF9CF85E3E0 +:1011A00090E00DC08091FA0186FF07C08AE290E0CE +:1011B00006C08091FA0186FFF9CF81E390E00E949A +:1011C0001506089508950C94E20880916E01089523 +:1011D000CF93DF9300D01F92CDB7DEB79C018091F3 +:1011E000F101843019F593E099833B832A8390932E +:1011F000E9008FEF9091E800815095FD06C095EDD4 +:101200009A95F1F700008111F5CF8091E80085FFF4 +:101210000DC040E050E063E070E0CE0101960E9416 +:10122000520B8091E8008E778093E8000F900F902A +:101230000F90DF91CF910895CF93DF9300D01F924D +:10124000CDB7DEB72091F101243021F522E02983CA +:101250009B838A8383E08093E9008FEF9091E8007D +:10126000815095FD06C095ED9A95F1F7000081112A +:10127000F5CF8091E80085FF0DC040E050E063E0CD +:1012800070E0CE0101960E94520B8091E8008E77AB +:101290008093E8000F900F900F90DF91CF91089509 +:1012A0002091F1012430F1F422E02093E9002FEFA6 +:1012B0003091E800215035FD06C035ED3A95F1F743 +:1012C00000002111F5CF2091E80025FF0BC040E080 +:1012D00050E065E070E00E94520B8091E8008E774C +:1012E0008093E8000895CF93DF93EC019091F10192 +:1012F000943009F046C080910C018823D9F0809188 +:101300000D018823B9F09093E9008FEF9091E800E8 +:10131000815095FD06C095E19A95F1F70000811185 +:10132000F5CF8091E80085FF2CC040E050E060E1FF +:1013300070E017C081E08093E9008FEF9091E800A2 +:10134000815095FD06C095ED9A95F1F70000811149 +:10135000F5CF8091E80085FF14C040E050E068E0E0 +:1013600070E0CE010E94520B8091E8008E7780934E +:10137000E80080E1FE01AEE5B1E001900D928A95B2 +:10138000E1F7DF91CF9108958091F001811109C0BB +:101390000E94E70C0E94440D8091E20084608093DB +:1013A000E20008951092F001089508950C942B2204 +:1013B0000E948C1B0E9431220E94EA0F0C94E308C9 +:1013C00042E061EC81E00E94610C42E061EC82E06D +:1013D0000E94610C42E061EC83E00E94610C42E1FA +:1013E00061EC84E00C94610C8091F301833009F48A +:1013F00055C030F4813071F0823009F48EC0089508 +:101400008A3009F47AC08B3009F460C0893009F061 +:101410009CC020C08091F201813A09F096C0809171 +:10142000E800877F8093E8008091F6019091F701B2 +:10143000892B21F460E18EE591E003C060E080E05B +:1014400090E070E00E949D0B8091E8008B77809384 +:10145000E80008958091F201813209F076C0809110 +:10146000F6019091F701009719F0039709F06DC00C +:101470008091E800877F8093E8008091E80082FDFA +:1014800005C08091F1018111F8CF5FC08091F1001A +:1014900080936E018091E8008B7753C08091F201B8 +:1014A000813A09F052C08091F6019091F701892BA1 +:1014B00009F04BC08091E800877F8093E80080911D +:1014C000E80080FFFCCF80910C0136C08091F201D2 +:1014D0008132D9F58091F6019091F701892BA9F518 +:1014E0008091E800877F8093E8000E94960C8091AD +:1014F000F40180930C010C9483148091F2018132E9 +:1015000021F58091E800877F8093E8000E94960C87 +:101510008091F50180936F0108958091F201813AE5 +:10152000A1F48091E800877F8093E8008091E80033 +:1015300080FFFCCF80916F018093F1008091E800E3 +:101540008E778093E8000C94960C089584B7877F7B +:1015500084BF88E10FB6F894809360001092600019 +:101560000FBE90E080E80FB6F894809361009093EE +:1015700061000FBE0E9439100E94E70C0E94440DCA +:101580008091E20084608093E20078940E94CA0F08 +:101590000E943B1082E091E00E94E50F0E94192218 +:1015A0008091F101853069F40E94531B8091EF0115 +:1015B0008823B1F30E947E1B882391F30E943C0B89 +:1015C000EFCF0E944110ECCF292F33272330310574 +:1015D000C9F064F42130310581F02230310509F081 +:1015E00043C08DE690E02AE333E042C0213231056A +:1015F000F1F02232310541F137C082E190E027EA73 +:1016000033E036C099278130910541F08230910551 +:1016100041F0892B49F5E6E3F3E005C0EEE1F3E0A4 +:1016200002C0E6E0F3E0849190E09F0121C06430C5 +:10163000D8F4E62FF0E0EE0FFF1FEE5DFE4F2081A5 +:10164000318189E090E014C0643070F470E0FB01F7 +:10165000EE0FFF1FE65EFE4F20813181FB01EA5E47 +:10166000FE4F808190E004C080E090E020E030E018 +:10167000FA0131832083089580E189BD82E189BD2B +:1016800009B400FEFDCF8091D8008F7D8093D800F3 +:101690008091E00082608093E0008091E00081FD15 +:1016A000FCCF0895CF92DF92EF92FF920F931F939A +:1016B000CF93DF93EC018B016A010E94B50C81117D +:1016C00033C0C114D10439F0F60180819181081B27 +:1016D000190BC80FD91FE12CF12C0115110519F1B7 +:1016E0008091E80085FD16C08091E8008E77809398 +:1016F000E800C114D10449F0F60180819181E80E1F +:10170000F91EF182E08285E00FC00E94B50C8823AB +:1017100021F30AC089918093F10001501109FFEF74 +:10172000EF1AFF0ADACF80E0DF91CF911F910F917E +:10173000FF90EF90DF90CF9008952091F8013091C5 +:10174000F9012617370748F06115710539F4209122 +:10175000E8002E772093E80001C0B90140E0611550 +:101760007105A9F12091F101222309F443C025302C +:1017700009F442C02091E80023FD40C02091E80018 +:1017800022FD32C02091E80020FFE9CF4091F30014 +:101790002091F20030E0342BFC01CF01611571057E +:1017A00059F02830310540F481918093F100615067 +:1017B00071092F5F3F4FF1CF41E02830310509F02B +:1017C00040E02091E8002E772093E800C8CF411137 +:1017D000C9CF0AC08091F101882361F0853061F0A2 +:1017E0008091E80083FD0AC08091E80082FFF2CF7B +:1017F00080E0089582E0089583E0089581E00895EF +:101800002091F8013091F9012617370748F061154A +:10181000710539F42091E8002E772093E80001C08B +:10182000B901FC0120E06115710591F18091F10190 +:10183000882309F440C0853009F43FC08091E80056 +:1018400083FD3DC08091E80082FD2FC08091E800BB +:1018500080FFE9CF2091F3008091F20090E0922B7D +:101860006115710559F08830910540F42491209359 +:10187000F1003196615071090196F2CF21E008978D +:1018800009F020E08091E8008E778093E800CBCFCC +:101890002111CCCF0AC08091F101882361F08530FD +:1018A00061F08091E80083FD0AC08091E80082FF2A +:1018B000F2CF80E0089582E0089583E0089581E00A +:1018C0000895982F973058F59093E900981739F0BC +:1018D0007091EC002091ED005091F00003C0242F96 +:1018E000762F50E021FF19C03091EB003E7F3093FE +:1018F000EB003091ED003D7F3093ED003091EB0037 +:1019000031603093EB007093EC002093ED00509326 +:10191000F0002091EE0027FF07C09F5FD3CF8F70AC +:101920008093E90081E0089580E008958091F201BC +:1019300087FF11C08091E80082FD05C08091F10110 +:101940008111F8CF11C08091E8008B770BC0809196 +:10195000F101882349F08091E80080FFF8CF809161 +:10196000E8008E778093E80008952091E40030919C +:10197000E50095E64091EC00842F817040FF22C085 +:101980008091E80080FD1CC08091F101882391F0D6 +:10199000853091F08091EB0085FD10C04091E4000E +:1019A0005091E5004217530729F39A01915011F71E +:1019B00084E0089582E0089583E0089581E0089529 +:1019C00080E008954091E80042FFDECF08950E9434 +:1019D000550D0E945D0DE0EEF0E080818160808316 +:1019E000E8EDF0E080818F77808319BCA7EDB0E04F +:1019F0008C918E7F8C9380818F7E80831092F001FA +:101A000008950F931F93CF93DF930E94550D0E946B +:101A10005D0DC8EDD0E088818F77888388818068EC +:101A2000888388818F7D888319BC1092F101109280 +:101A3000ED011092EF011092EE0100EE10E0F801BE +:101A400080818B7F808388818160888342E060E031 +:101A500080E00E94610CE1EEF0E080818E7F808367 +:101A6000E2EEF0E080818160808380818860808305 +:101A7000F80180818E7F8083888180618883DF91F7 +:101A8000CF911F910F910895E8EDF0E080818F7E56 +:101A90008083E7EDF0E080818160808384E082BF15 +:101AA00081E08093F0010C94010DE8EDF0E080817D +:101AB0008E7F80831092E20008951092DA001092D7 +:101AC000E10008951F920F920FB60F9211242F93E9 +:101AD0003F934F935F936F937F938F939F93AF93B6 +:101AE000BF93EF93FF938091E10082FF0BC0809141 +:101AF000E20082FF07C08091E1008B7F8093E100CC +:101B00000E94C90F8091DA0080FF1FC08091D80029 +:101B100080FF1BC08091DA008E7F8093DA00809175 +:101B2000D90080FF0DC080E189BD82E189BD09B483 +:101B300000FEFDCF81E08093F1010E94C40905C041 +:101B400019BC1092F1010E94D2098091E10080FF3E +:101B500019C08091E20080FF15C08091E2008E7F65 +:101B60008093E2008091E20080618093E2008091A6 +:101B7000D80080628093D80019BC85E08093F10181 +:101B80000E94D6098091E10084FF30C08091E2007C +:101B900084FF2CC080E189BD82E189BD09B400FECB +:101BA000FDCF8091D8008F7D8093D8008091E10097 +:101BB0008F7E8093E1008091E2008F7E8093E2002F +:101BC0008091E20081608093E2008091ED018823A2 +:101BD00011F084E007C08091E30087FD02C081E03E +:101BE00001C083E08093F1010E94D8098091E10057 +:101BF00083FF29C08091E20083FF25C08091E1002E +:101C0000877F8093E10082E08093F1011092ED01E3 +:101C10008091E1008E7F8093E1008091E2008E7FD1 +:101C20008093E2008091E20080618093E20042E0D4 +:101C300060E080E00E94610C8091F00088608093F9 +:101C4000F0000E94D509FF91EF91BF91AF919F9154 +:101C50008F917F916F915F914F913F912F910F9055 +:101C60000FBE0F901F9018951F920F920FB60F92F4 +:101C700011242F933F934F935F936F937F938F9391 +:101C80009F93AF93BF93CF93DF93EF93FF93C09155 +:101C9000E900CF708091EC00D82FD17080FDD0E8A2 +:101CA0001092E9008091F000877F8093F000789493 +:101CB0000E94780E1092E9008091F0008860809375 +:101CC000F000CD2BCF70C093E900FF91EF91DF9131 +:101CD000CF91BF91AF919F918F917F916F915F91C4 +:101CE0004F913F912F910F900FBE0F901F9018951D +:101CF0001F93CF93DF93CDB7DEB7AA970FB6F894B3 +:101D0000DEBF0FBECDBFE2EFF1E088E08E0F909115 +:101D1000F10091938E13FBCF0E94F4098091E800AB +:101D200083FF1FC18091F2019091F301492F50E090 +:101D30004A30510508F015C1FA01EA5AFF4F0C94D8 +:101D4000B323803881F0823809F00BC18091F6010D +:101D50008F708093E9008091EB0085FB882780F9E4 +:101D60001092E90006C08091EE019091EF0191116F +:101D700082609091E800977F9093E8008093F10053 +:101D80001092F100C8C0282F2D7F09F0EAC08823E7 +:101D900019F0823061F0E5C08091F401813009F0E2 +:101DA000E0C0933009F080E08093EF012BC0809178 +:101DB000F401811127C08091F6018F7009F4D1C020 +:101DC0008093E9002091EB0020FF1CC0933021F4A8 +:101DD0008091EB00806214C09091EB009061909331 +:101DE000EB0021E030E0A90102C0440F551F8A95A5 +:101DF000E2F74093EA001092EA008091EB008860DD +:101E00008093EB001092E9008091E800877F86C004 +:101E10008111A7C01091F4011F778091E3008078B1 +:101E2000812B8093E3008091E800877F8093E80016 +:101E30000E94960C8091E80080FFFCCF8091E30027 +:101E400080688093E300111102C082E001C083E04A +:101E50008093F10186C08058823008F082C0809162 +:101E6000F4019091F5018C3D53E0950779F583E0FD +:101E70008A838AE289834FB7F894DE01139620E0C3 +:101E80003EE051E2E32FF0E050935700E49120FF51 +:101E900003C0E295EF703F5FEF708E2F90E0EA3065 +:101EA00010F0C79601C0C0968D939D932F5F24318B +:101EB00049F74FBF8091E800877F8093E8006AE28E +:101EC00070E0CE0101960E949D0B14C0AE014F5FE1 +:101ED0005F4F6091F6010E94E40ABC01009709F48B +:101EE00040C09091E800977F9093E80089819A81A3 +:101EF0000E94000C8091E8008B778093E80031C04D +:101F0000803879F58091E800877F8093E8008091A0 +:101F1000ED018093F1008091E8008E778093E800D6 +:101F20000E94960C1EC081111CC09091F401923049 +:101F3000C0F48091E800877F8093E8009093ED01E2 +:101F40000E94960C8091ED01811106C08091E30002 +:101F500087FD02C081E001C084E08093F1010E940E +:101F6000E0098091E80083FF0AC08091E800877F44 +:101F70008093E8008091EB0080628093EB00AA964A +:101F80000FB6F894DEBF0FBECDBFDF91CF911F918A +:101F900008950895CF938091F1018823A1F0C09115 +:101FA000E900CF709091EC00892F817090FD80E85E +:101FB000C82B1092E9008091E80083FD0E94780E02 +:101FC000CF70C093E900CF910895909375018093ED +:101FD00074010895E0917401F0917501309721F03A +:101FE0000190F081E02D099480E00895E091740162 +:101FF000F0917501309721F00280F381E02D099472 +:102000000895E0917401F0917501309721F00480FA +:10201000F581E02D099408952091720130917301AA +:102020008217930771F09093730180937201E0918E +:102030007401F0917501309721F00680F781E02D51 +:1020400009940895209170013091710182179307CE +:1020500071F09093710180937001E0917401F0919F +:102060007501309721F00084F185E02D09940895E1 +:1020700008950C9438100E94921B0E9433030C9414 +:10208000541C9F92AF92BF92CF92DF92EF92FF9239 +:102090000F931F93CF93DF9300D000D000D0CDB724 +:1020A000DEB70E944B030DE010E0AA24A394B12CEC +:1020B000902E802F0E943904980129583E4F6901C3 +:1020C000F901F080F826A1F40150110988F78FEF8B +:1020D00089838A831B820E949B1B8160782F9D834A +:1020E0008C8349815A816B818D810E94D8102FC0C9 +:1020F0009091DA0191FF04C08E830E943F048E818B +:1021000025E030E0A501022E01C0440F0A94EAF751 +:10211000E42E4F21C1F029839A828E2191E009F4A7 +:1021200090E09B830E949B1B8160782F9D838C8312 +:1021300049815A816B818D810E94D810F60180817E +:10214000E826E08204C021503109E0F6BDCF0E94AC +:102150003B1F109176010E94EA0F1817B9F00E94F8 +:10216000EA0F8093760126960FB6F894DEBF0FBE75 +:10217000CDBFDF91CF911F910F91FF90EF90DF9036 +:10218000CF90BF90AF909F900C94E30826960FB627 +:10219000F894DEBF0FBECDBFDF91CF911F910F919D +:1021A000FF90EF90DF90CF90BF90AF909F900895F9 +:1021B000CF93DF93CDB7DEB72B970FB6F894DEBF82 +:1021C0000FBECDBF4F83588769877A878B87DE0123 +:1021D000119686E0FD0111928A95E9F785E0FE01EE +:1021E000379601900D928A95E1F749815A816B816A +:1021F0007C818D819E810E9421172B960FB6F894C9 +:10220000DEBF0FBECDBFDF91CF910895CF9388235E +:1022100009F4C2C0C82F823859F40E94EA0F81FD28 +:10222000BBC089E30E94FB190E94C81A89E30CC055 +:10223000833879F40E94EA0F80FDAEC083E50E94E6 +:10224000FB190E94C81A83E50E943D1ACF910C9495 +:10225000C81A843859F40E94EA0F82FD9DC087E4B1 +:102260000E94FB190E94C81A87E4EECF8CEF8C0FF6 +:10227000813A48F48C2F0E947E2181118DC08C2FD1 +:102280000E94FB19E3CF80E28C0F883048F4C770BE +:1022900081E001C0880FCA95EAF70E94811AD6CF63 +:1022A0008BE58C0F833078F4C53A29F0C63A31F0CB +:1022B00083E890E005C081E890E002C082E890E009 +:1022C000CF910C940C1088E58C0F833108F064C01A +:1022D000C83A39F1C93A41F1CA3A49F1CB3A51F118 +:1022E000CC3A59F1CD3A61F1C03B69F1CE3A71F186 +:1022F000CF3A79F1C13B81F1C23B89F1C33B91F106 +:10230000C43B99F1C53BA1F1C63BA9F1C73BB1F173 +:10231000C83BB9F1C93BC1F1CA3BC9F180E090E0CB +:1023200038C082EE90E035C089EE90E032C08AEE8F +:1023300090E02FC085EB90E02CC086EB90E029C0A8 +:1023400087EB90E026C08CEC90E023C08DEC90E011 +:1023500020C083E891E01DC08AE891E01AC082E9BC +:1023600091E017C084E991E014C081E292E011C0CD +:1023700083E292E00EC084E292E00BC085E292E03C +:1023800008C086E292E005C087E292E002C08AE2DD +:1023900092E0CF910C942210CF910895882309F4F4 +:1023A0004BC0823859F40E94EA0F81FF45C089E38F +:1023B0000E94FB190E94C81A89E30CC0833871F48B +:1023C0000E94EA0F80FF38C083E50E94FB190E943B +:1023D000C81A83E50E943D1A0C94C81A843859F42F +:1023E0000E94EA0F82FF28C087E40E94FB190E9426 +:1023F000C81A87E4EFCF9CEF980F913A58F390E218 +:10240000980F983050F4877091E001C0990F8A9529 +:10241000EAF7892F0E94871ADFCF9BE5980F933048 +:1024200020F480E090E00C940C10885A833120F462 +:1024300080E090E00C9422100895882321F00E94FF +:10244000811A0C94C81A0895882321F00E94871AD3 +:102450000C94C81A08957F928F929F92AF92BF9268 +:10246000CF92DF92EF92FF920F931F93CF93DF9360 +:102470001F92CDB7DEB77C01C62E772EFC010581F9 +:1024800002950F70128111110E949E1A0E94F41978 +:10249000882379F0112369F080E28C0D883048F0B0 +:1024A00082E00E94DD190E94F41991E0D82ED9260D +:1024B00001C0D12CE72DE295EF70F0E0E05AFF4F1C +:1024C0000C94B323872D807F072D0F70882311F084 +:1024D0000295007F112389F0002309F490C180E266 +:1024E0008C0D883020F4802F0E94811A03C0802F29 +:1024F0000E94911A0E94C81A82C18C2D0E94CE118E +:10250000002309F495C180E28C0D883020F4802FDF +:102510000E94871A03C0802F0E94971A0E94C81A2F +:1025200087C1972D907F872D8F70903211F0829503 +:10253000807FCC2021F0F1E0CF16B1F01EC0112336 +:1025400049F0002309F414C1013009F011C10E94BF +:10255000B11A6EC1002319F0013009F469C18983F1 +:102560000E94B41A89810AC1112321F0023008F0B7 +:102570005FC1FEC001115CC101C1112321F0002324 +:1025800009F4F6C03CC1002309F4F8C03EC1872D10 +:1025900086958695837090E0009719F0019761F019 +:1025A00047C1112321F08C2D972D937002C080E03C +:1025B00090E00E940C103CC1112321F08C2D972D2E +:1025C000937002C080E090E00E94221031C18C2DF7 +:1025D000112319F00E94431E02C00E94AB1E0E94EC +:1025E000301F26C1872D837009F052C0111120C100 +:1025F0008C2D829586958770880F880F9C2D9F70F3 +:10260000892E912CA12CB12C082E04C0880C991C69 +:10261000AA1CBB1C0A94D2F7C4FE14C00FE010E041 +:1026200020E030E0B901A80104C0440F551F661F27 +:10263000771F8A95D2F7CB01BA0160957095809586 +:10264000909503C060E070E0CB01272D269526957C +:10265000237030E02230310569F02330310589F0F4 +:10266000682979298A299B292130310571F00E9436 +:102670006918DEC0682979298A299B290E94851852 +:10268000D7C00E946918C501B4010E944D18D0C07E +:10269000112319F0872D817001C08695882309F4D4 +:1026A000C7C08C2D829586958770880F880F9C2DCA +:1026B0009F70892E912CA12CB12C082E04C0880C5F +:1026C000991CAA1CBB1C0A94D2F7C4FE14C00FE0CC +:1026D00010E020E030E0B901A80104C0440F551F0C +:1026E000661F771F8A95D2F7CB01BA016095709566 +:1026F0008095909503C060E070E0CB01272D269572 +:1027000026952370422F50E04230510569F0433046 +:10271000510589F0682979298A299B294130510579 +:1027200071F00E94431984C0682979298A299B295C +:102730000E945F197DC00E944319C501B4010E9427 +:10274000271976C08C2D90E0FC01E05EF109E5319F +:10275000F10508F050C0E059FF4F0C94B3230C2D45 +:102760000F70872D8F71112331F00E94C018802FB8 +:102770000E941D125DC00E94E118802F0E94241249 +:1027800057C0112339F0011153C0872D8F710E945A +:1027900006194EC0023008F04BC0F7CF112339F0B4 +:1027A000872D8F710E94C01843C01123C9F3872D54 +:1027B0008F710E94E1183CC0112329F0872D8F7181 +:1027C0000E94AB1835C00E94A11832C0112351F0ED +:1027D000172D1F71812F0E94C01863E0812F0E9466 +:1027E000D41926C081E00E94DD19023008F182E090 +:1027F0000E94DD191DC0112331F0002389F28C2DB8 +:102800000E94061115C0002391F28C2D0E94CE115A +:102810000FC0472D4F706C2DC7010E9415050E94F7 +:10282000C51706C0472D4F706C2DC7010E94F205D9 +:10283000DD20F9F00E94D01980FD1BC0F701128243 +:102840000E94CA190E94C018C7010E9448140E9421 +:10285000CA190F90DF91CF911F910F91FF90EF90C8 +:10286000DF90CF90BF90AF909F908F907F900C940F +:10287000E1180F90DF91CF911F910F91FF90EF9092 +:10288000DF90CF90BF90AF909F908F907F900895F2 +:102890000F931F93CF93DF93EC01888199812B8154 +:1028A0003C81232BB9F09F3F11F48F3F99F0CE016B +:1028B0000E944A05882371F0688179818A810E948B +:1028C000C6198C010E947B190E944218B801CE01E2 +:1028D0000E942B12DF91CF911F910F9108950E94BA +:1028E0009E1A0E94AE1A0E94731A0E94C81A0E9471 +:1028F000E11F0E94301F80E090E00E940C1080E0F9 +:1029000090E00C9422100E948E1A0C946F140E9476 +:10291000BB19292F22952F7030E02C3031054CF453 +:102920002A3031056CF42250310922303105A8F4E7 +:1029300007C02C30310569F02F30310551F00DC042 +:10294000803F69F018F4803E40F409C0843F29F4C8 +:1029500006C093FB882780F9089580E0089581E000 +:102960000895CF93DF9300D000D01F92CDB7DEB78C +:102970000F900F900F900F900F90DF91CF910895CF +:10298000CF93DF9300D000D000D0CDB7DEB726962E +:102990000FB6F894DEBF0FBECDBFDF91CF91089583 +:1029A0001F93CF93DF93C091850116E0809186013C +:1029B000C81799F0D0E01C9FF0011D9FF00D112465 +:1029C000E957FE4F408151816281738184819581F5 +:1029D0000E94C0142196C770E9CFDF91CF911F915B +:1029E00008954091B7015091B8016091B90170917B +:1029F000BA018091BB019091BC010C94C0148091EC +:102A0000BC0182958F7009F054C08091B901882370 +:102A100009F44FC080918501A09186016091B701B2 +:102A20007091B8014091BA015091BB01B6E08A178C +:102A300009F43FC090E041155105C1F17F3F11F409 +:102A40006F3FA1F1B89FF001B99FF00D1124E95734 +:102A5000FE4F218172132AC02081621327C0228178 +:102A6000211124C0238134812417350710F421500B +:102A70003109241B350B283C3105C0F42091BC01E1 +:102A80002F7020612093BC0126E0289FF001299F30 +:102A9000F00D1124E457FE4F80818F708061808398 +:102AA00087EB91E00E9448140C94D0140196877033 +:102AB000BECF0895CF92DF92EF92FF920F931F93B4 +:102AC000CF93DF93CDB7DEB762970FB6F894DEBF32 +:102AD0000FBECDBF8C0185E0F801DE011D9601908F +:102AE0000D928A95E1F7D8014C9111965C9111975E +:102AF00012966C9112971396CD90DC9014973091AA +:102B0000B7017091B8018091BA019091BB01009713 +:102B100009F46BC17F3F19F43F3F09F466C1E090AF +:102B2000B901EE2009F4C0C02091BC01C816D90635 +:102B300028F0F601E81BF90BCF0104C080959095B1 +:102B40008C0D9D1DFF24F394883C910578F0F12CA9 +:102B5000207F09F0C6C07C2DD98AC88A89890E9445 +:102B6000B11487EB91E00E944814B1C0822F807F9E +:102B700009F046C0751314C0341312C0611110C09F +:102B80002F7020612093BC010E94F11487EB91E02B +:102B90000E9448148091BC01D80115968C932EC0D8 +:102BA000CD2819F15F3F11F44F3FF9F0F62E611176 +:102BB0001CC0809185012091860136E0821709F4BE +:102BC0005AC090E0389FF001399FF00D1124E95769 +:102BD000FE4F7181571306C07081471303C0728185 +:102BE000711103C001968770E9CFF62E662309F4B0 +:102BF00018C18091BC0181608093BC01F12C11C18E +:102C0000751308C0341306C0611104C08091BC0163 +:102C1000D801C3C04D875E878D859E856A8B0E94D3 +:102C200087146A898823E1F16623D1F12091BC01E0 +:102C3000822F82958F7090E0029774F08091B70197 +:102C40009091B80198878F831986DB86CA862C8776 +:102C5000CE0107960E94481486E0F801A7EBB1E088 +:102C600001900D928A95E1F70E94FF140E94F114E1 +:102C7000FF24F394D6C04D875E878D859E850E9484 +:102C8000BB19292F22952F7030E0223031050CF02E +:102C9000BCC09F7009F0B6C0805E883008F4C1C027 +:102CA000C8010E944814E4CFC816D90608F453C0DE +:102CB000F601E81BF90BCF01883C910508F450C0E0 +:102CC000F12C7C2DD98AC88A89890E94B114E7EB3E +:102CD000F1E086E0DF011D928A95E9F70E94F11488 +:102CE000A0C0751314C0341312C0611110C08091BC +:102CF000BC01F8018583C8010E94481486E0E7EB17 +:102D0000F1E0DF011D928A95E9F7FE2C8AC04D871C +:102D10005E878D859E856A8B0E9487146A898823C9 +:102D200009F4BECF662309F4BBCF2091BC01822FEA +:102D300082958F7090E002970CF48ECF8091B7014E +:102D40009091B8019A8389831B82DD82CC822E8385 +:102D5000CE0101967FCF809590958C0D9D1DACCFB7 +:102D6000F62E662309F49CCF75132EC034132CC0A5 +:102D70002091BC0120FD1FC0822F82958F70D9F059 +:102D8000D80115962C9315978F3049F08F5F982FA7 +:102D90009295907F822F8F70892B15968C93C80106 +:102DA0000E94481486E0F801A7EBB1E001900D9273 +:102DB0008A95E1F793CF86E0F801A7EBB1E00190A7 +:102DC0000D928A95E1F72DC04D875E878D859E8592 +:102DD0000E948714811140CF8091BC018160809353 +:102DE000BC01C8010E9448141CC0662309F458CFD6 +:102DF0004D875E878D859E850E948714882309F400 +:102E00004FCF2ACF811148CF0CC0243031050CF0B0 +:102E100047CF9F7009F440CFF8019581907F09F06A +:102E20003BCF8F2D62960FB6F894DEBF0FBECDBF9D +:102E3000DF91CF911F910F91FF90EF90DF90CF9096 +:102E400008951F93CF93DF93CDB7DEB72C970FB6BE +:102E5000F894DEBF0FBECDBF4F83588769877A874E +:102E60008B879C87CE0107960E945A15882369F0AC +:102E70008F8198852A853B85232BF1F19F3F09F0AF +:102E800063C08F3F09F060C037C086E0FE0137960F +:102E9000DE01119601900D928A95E1F76F81788598 +:102EA000EA85FB85309741F17F3F11F46F3F21F1B7 +:102EB0002091860130E0C9010196877099274091E1 +:102EC000850150E08417950709F447C069837A8328 +:102ED000FD83EC8396E0929FD001939FB00D112467 +:102EE000A957BE4FFE01319601900D929A95E1F7D8 +:102EF000809386010E94D01416E080918501909104 +:102F000086018917C1F1189FC001112489579E4F6E +:102F10000E945A15882379F1E09185011E9FF001E6 +:102F20001124E957FE4F4081518162817381848170 +:102F300095810E94C0148091850190E00196877070 +:102F4000992780938501D9CF4F81588569857A85E6 +:102F50008B859C850E94C014CFCF0E948314109251 +:102F6000860110928501E7EBF1E086E0DF011D921A +:102F70008A95E9F7C1CF2C960FB6F894DEBF0FBE45 +:102F8000CDBFDF91CF911F910895EF92FF920F93E4 +:102F90001F93CF93DF938C01009709F46CC0F12C41 +:102FA000EE24E394E8012196F8018491843740F4FB +:102FB000843008F051C0813081F0823019F15BC05B +:102FC000853709F444C0A8F19CE7980F903708F0C2 +:102FD00052C08F770E94CE1141C00E5F1F4FFE017D +:102FE000C49180E28C0F883048F4C7708E2D01C0E8 +:102FF000880FCA95EAF70E94A11A14C08C2F0E946C +:1030000006112DC00E5F1F4FFE01C49180E28C0F90 +:10301000883058F4C7708E2D01C0880FCA95EAF722 +:103020000E94A71A0E94C81A1AC08C2F0E94CE11A3 +:1030300016C00E5F1F4FFE01C491CC2381F08FE9B3 +:103040009FE00197F1F700C00000C150F6CF0E5F7E +:103050001F4FFE01F49003C00E9406118E018F2DB8 +:10306000882309F49FCFEFE9FFE03197F1F700C023 +:1030700000008150F5CFDF91CF911F910F91FF900C +:10308000EF90089508956093C1017093C2018093F9 +:10309000C3019093C4010C946F140F931F9300917C +:1030A000C1011091C2012091C3013091C401DC0122 +:1030B000CB01802B912BA22BB32B8093C10190933A +:1030C000C201A093C301B093C4011F910F910C944E +:1030D0006F140F931F930091C1011091C2012091B1 +:1030E000C3013091C401DC01CB0180239123A223D1 +:1030F000B3238093C1019093C201A093C301B09305 +:10310000C4011F910F910C946F140F931F930091A2 +:10311000C1011091C2012091C3013091C401DC01B1 +:10312000CB0180279127A227B3278093C1019093D9 +:10313000C201A093C301B093C4011F910F910C94DD +:103140006F141092BD011092BE011092BF01109237 +:10315000C0010C946F1441E050E060E070E004C0E6 +:10316000440F551F661F771F8A95D2F74093BD0104 +:103170005093BE016093BF017093C0010C946F1413 +:1031800041E050E060E070E004C0440F551F661F4E +:10319000771F8A95D2F78091BD019091BE01A091D1 +:1031A000BF01B091C001482B592B6A2B7B2B409358 +:1031B000BD015093BE016093BF017093C0010C9498 +:1031C0006F1441E050E060E070E004C0440F551F10 +:1031D000661F771F8A95D2F7409550956095709538 +:1031E0008091BD019091BE01A091BF01B091C0013D +:1031F000482359236A237B234093BD015093BE018A +:103200006093BF017093C0010C946F1441E050E0D3 +:1032100060E070E004C0440F551F661F771F8A9559 +:10322000D2F78091BD019091BE01A091BF01B091F4 +:10323000C001482759276A277B274093BD01509337 +:10324000BE016093BF017093C0010C946F140F9383 +:103250001F930091BD011091BE012091BF013091DB +:10326000C001DC01CB01802B912BA22BB32B8093CF +:10327000BD019093BE01A093BF01B093C0011F9107 +:103280000F910C946F140F931F930091BD01109137 +:10329000BE012091BF013091C001DC01CB01802330 +:1032A0009123A223B3238093BD019093BE01A093E9 +:1032B000BF01B093C0011F910F910C946F140F9335 +:1032C0001F930091BD011091BE012091BF0130916B +:1032D000C001DC01CB0180279127A227B32780936F +:1032E000BD019093BE01A093BF01B093C0011F9197 +:1032F0000F910C946F140895CF92DF92EF92FF928A +:103300000F931F93CF93DF938C01C090C101D09096 +:10331000C201E090C301F090C4018091BD01909181 +:10332000BE01A091BF01B091C001C82AD92AEA2AE2 +:10333000FB2ACFE1D0E0D701C6010C2E04C0B69520 +:10334000A795979587950A94D2F780FF06C0B80194 +:103350008C2F0E944808019721F4219760F780E0A4 +:1033600001C08C2FDF91CF911F910F91FF90EF90B3 +:10337000DF90CF900895CF93DF93EC010E947C19EA +:10338000BE010E944808DF91CF910895CB010E94B1 +:10339000BB1908958091C5018595859585950895FA +:1033A0008091C5018770089598E0899F900111244C +:1033B000262B2093C5010C94C0182091C50180953F +:1033C00082238093C501982F977069F430E0482FCD +:1033D000552747FD50952417350729F08595859584 +:1033E00085950C94E11808959091C501977081E03E +:1033F00009F480E0089590910C01992321F09091B7 +:103400000D01911109C020910E0130910F01F901B8 +:1034100032969FEF40E01FC0982F9695969596950F +:103420009F3050F5E0910E01F0910F01E90FF11D71 +:10343000877021E030E0A90102C0440F551F8A9532 +:10344000E2F7CA019181892B818308959F3F39F06A +:103450004F5F4E3041F051915813F8CF0DC05111CC +:10346000F7CF942FF5CF9F3F39F0F901E90FF11D08 +:1034700097FDFA9582830895089590910C01992300 +:1034800021F090910D01911109C020910E01309110 +:103490000F01F9013296205F3F4F1FC0982F96957C +:1034A000969596959F30F0F4E0910E01F0910F0102 +:1034B000E90FF11D877021E030E0A90102C0440F3F +:1034C000551F8A95E2F7CA018095918189238183EE +:1034D00008953196E217F30729F090819813F9CFF8 +:1034E0001082F7CF089581E090E0E0910E01F09115 +:1034F0000F01E80FF91F1082019680319105A9F79D +:1035000008959091D901892B8093D90108958095D0 +:103510009091D90189238093D90108951092D901FE +:1035200008959091D801892B8093D80108958095B2 +:103530009091D80189238093D80108951092D801E1 +:1035400008959091D701892B8093D7010895809594 +:103550009091D70189238093D70108951092D701C4 +:1035600008958093C60108951092C6010895809130 +:103570000E0190910F01FC0131969C01205F3F4F9D +:1035800080E0919191118F5FE217F307D1F70895D1 +:10359000E0910E01F0910F018091D9018083E091BB +:1035A0000E01F0910F0190818091D801892B8083C9 +:1035B000E0910E01F0910F0190818091D701892B4C +:1035C00080838091C601882361F0E0910E01F09123 +:1035D0000F019081892B80830E94B71A811110926C +:1035E000C60180910E0190910F010C94F60F20E01E +:1035F000009739F0AC0141505109842395232F5F86 +:10360000F7CF822F0895CF92DF92EF92FF926C0155 +:10361000EE24FF24C114D104E104F10421F0C70118 +:10362000B60120E101C020E0C72ED82EE92EFF24EC +:10363000C114D104E104F10419F0285FC701B601F7 +:103640006B017C0154E0F694E794D794C7945A95A3 +:10365000D1F7C114D104E104F10419F02C5FC701C2 +:10366000B6016B017C0142E0F694E794D794C794CD +:103670004A95D1F7C114D104E104F10419F02E5F89 +:10368000C701B601DC01CB01B695A7959795879543 +:10369000892B8A2B8B2B09F02F5F822FFF90EF90C5 +:1036A000DF90CF9008958091F101843021F1109244 +:1036B000DB0120E488E190E00FB6F894A8958093B0 +:1036C00060000FBE2093600080E00E94E30883B793 +:1036D000817F846083BF83B7816083BF789488953E +:1036E00083B78E7F83BF88E10FB6F8948093600024 +:1036F000109260000FBE0895089508950E947C1BEB +:103700000E944B030E947D1B0E94400491E08111A6 +:1037100001C090E0892F08950E9483140E94EA0F4F +:103720000C94E30882E084BD93E095BD9AEF97BDC9 +:1037300080936E0008952FB7F8948091DC019091EA +:10374000DD01A091DE01B091DF012FBF0895CF927E +:10375000DF92EF92FF920F931F932FB7F89440914F +:10376000DC015091DD016091DE017091DF012FBF1E +:103770006A017B01EE24FF248C0120E030E0C016BA +:10378000D106E206F30610F4415051099A01281BB4 +:10379000390BC9011F910F91FF90EF90DF90CF90EF +:1037A00008951F920F920FB60F9211248F939F933B +:1037B000AF93BF938091DC019091DD01A091DE0178 +:1037C000B091DF010196A11DB11D8093DC019093A2 +:1037D000DD01A093DE01B093DF01BF91AF919F9116 +:1037E0008F910F900FBE0F901F9018950E94E70CBD +:1037F000F8942FEF87EA91E6215080409040E1F75E +:1038000000C0000087E090EBDC018093FB01909307 +:10381000FC01A093FD01B093FE019CE088E10FB68E +:10382000F894A895809360000FBE90936000FFCF3E +:10383000EF92FF920F931F93CF93DF93D82FCDE09A +:103840008C2F0E94390405E010E0E82EF12CC7010E +:10385000002E02C0959587950A94E2F780FF09C073 +:10386000602F7C2F80E00E94F305D81302C081E016 +:1038700006C00150110958F7C15010F780E0DF91E0 +:10388000CF911F910F91FF90EF900895CF93C82F84 +:103890008CE20E94181C882321F08C2FCF910C946D +:1038A000181C80E0CF910895CF930E949B1D811139 +:1038B00002C00E94811DC5E6C15049F00E944B0321 +:1038C0008FE39CE90197F1F700C00000F5CF89E292 +:1038D0000E94461C811113C18AE20E94461C81117C +:1038E0000E94811D85E00E94461C81110E94F61BEA +:1038F0000E94A61D8093DA0187E00E94461C88235F +:10390000A9F18BE10E94461C882351F08091DA01D5 +:1039100081FB222720F991E0922790FB81F90EC0CC +:103920008EE00E94461C882361F08091DA0182FBC0 +:10393000222720F991E0922790FB82F98093DA0107 +:1039400015C080E10E94461C9091DA01882341F065 +:1039500093FB222720F981E0822780FB93F904C0A2 +:10396000892F809580FB90F99093DA018091DA019C +:103970000E94AA1D0E94B81D8093FA0180EE0E9449 +:10398000461C882341F08091FA01982F909590FB76 +:1039900080F98093FA0189E30E94461C882359F03C +:1039A0008091FA0181FB222720F991E0922790FB78 +:1039B00081F98093FA0182EE0E94461C882359F017 +:1039C0008091FA0182FB222720F991E0922790FB57 +:1039D00082F98093FA0186EE0E94461C882359F0F2 +:1039E0008091FA0183FB222720F991E0922790FB36 +:1039F00083F98093FA0183EE0E94461C882359F0D4 +:103A00008091FA0184FB222720F991E0922790FB14 +:103A100084F98093FA0185E30E94461C882359F0BB +:103A20008091FA0185FB222720F991E0922790FBF3 +:103A300085F98093FA0181E30E94461C882359F09E +:103A40008091FA0186FB222720F991E0922790FBD2 +:103A500086F98093FA0181E10E94461C882359F07F +:103A60008091FA0187FB222720F991E0922790FBB1 +:103A700087F98093FA018091FA010E94BC1D809120 +:103A8000FA0187FB882780F980930D0187E20E9465 +:103A9000461CC82F8EE10E94461C8111C2608FE136 +:103AA0000E94461C8111C46080E20E94461C811164 +:103AB000C86081E20E94461C8111C06182E20E94BE +:103AC000461C8111C06283E20E94461C8111C064C1 +:103AD00084E20E94461C882311F0C06802C0CC23F7 +:103AE00029F08C2F0E94B31D6C2F03C00E94AF1DC4 +:103AF000682F70E080E090E0CF910C944318CF9154 +:103B000008956DEE7EEF80E090E00E94ED2360E08E +:103B100082E090E00E94DB2360E083E090E00E947E +:103B2000DB2360E084E090E00E94DB2360E085E03E +:103B300090E00C94DB2380E090E00E94D52321E00C +:103B40008D3E9E4F09F020E0822F089582E090E0A4 +:103B50000C94CD23682F82E090E00C94DB2383E06B +:103B600090E00C94CD23682F83E090E00C94DB234D +:103B700084E090E00C94CD23682F84E090E00C94D6 +:103B8000DB238091E20180FF0BC06091130185E08F +:103B9000689FB001112475956795759567952BC041 +:103BA00081FF09C06091130185E0689FB001112475 +:103BB0007595679520C082FF07C06091130185E06D +:103BC000689FB001112417C09091E3019923D1F0AF +:103BD00060911201961788F72091130185E0289FC4 +:103BE00090011124929FA001939F500D112470E029 +:103BF000CA010E949F236038710540F46115710568 +:103C000039F002C065E070E0862F08958FE70895CF +:103C100081E008958091E20180FF08C06091110168 +:103C200070E0759567957595679521C081FF06C011 +:103C30006091110170E07595679519C082FF04C00D +:103C40006091110170E010C09091E3019923C1F0DF +:103C5000609110019617A0F780911101899FC00112 +:103C6000112470E00E949F236038710528F46115CB +:103C7000710521F0862F08958FE7089581E008955A +:103C800061E070E0F4CF803F21F40E94C11D819576 +:103C900004C0813F29F40E94C11D8093E60108956C +:103CA000823F21F40E94C11D819504C0833F29F405 +:103CB0000E94C11D8093E5010895893F19F40E9477 +:103CC0000A1E05C08A3F31F40E940A1E8195809326 +:103CD000E70108958B3F21F40E940A1E819504C0DC +:103CE0008C3F29F40E940A1E8093E8010895843FC6 +:103CF00021F48091E401816017C0853F21F4809117 +:103D0000E401826011C0863F21F48091E401846067 +:103D10000BC0873F21F48091E401886005C0883F93 +:103D200031F48091E40180618093E40108958D3F36 +:103D300021F48091E20181600BC08E3F21F48091DB +:103D4000E201826005C08F3F29F48091E201846026 +:103D50008093E2010895803F39F48091E60187FF66 +:103D60006CC01092E60169C0813F29F48091E601A0 +:103D70001816BCF362C09091E501823F29F497FFC9 +:103D80005CC01092E50159C0833F19F41916CCF3B9 +:103D900054C0893F41F48091E70118160CF04DC0E2 +:103DA0001092E7014AC08A3F29F48091E70187FF1A +:103DB00044C0F6CF8B3F39F48091E80187FF3DC0C6 +:103DC0001092E8013AC08C3F29F48091E80118165E +:103DD000BCF333C0843F21F48091E4018E7F17C08F +:103DE000853F21F48091E4018D7F11C0863F21F44D +:103DF0008091E4018B7F0BC0873F21F48091E40127 +:103E0000877F05C0883F31F48091E4018F7E8093E5 +:103E1000E40113C08D3F21F48091E2018E7F0BC03D +:103E20008E3F21F48091E2018D7F05C08F3F29F400 +:103E30008091E2018B7F8093E2018091E501811105 +:103E40000EC08091E60181110AC08091E7018111C5 +:103E500006C08091E801811102C01092E30108952B +:103E600084EE91E00E9401100E949B1B9093E1015F +:103E70008093E00108951F93CF93DF938091E00139 +:103E80009091E1010E94A71BAC019091E30199235D +:103E900021F02091140130E006C0209115018AE044 +:103EA000289F900111244217530708F486C080917F +:103EB000E501C091E601D091E7011091E80181117F +:103EC00007C0C11176C0D11174C0111172C075C084 +:103ED0009F3F19F09F5F9093E301181624F40E940E +:103EE000C11D8093E5018091E50187FF05C00E9417 +:103EF000C11D81958093E5011C1624F40E94C11D0B +:103F00008093E6018091E60187FF05C00E94C11DF4 +:103F100081958093E6016091E501662339F1C091B6 +:103F2000E601CC2319F1772767FD7095872F972F2E +:103F30000E94B02223E333E343E35FE30E941423B0 +:103F40000E947D226093E5016C2F772767FD7095B5 +:103F5000872F972F0E94B02223E333E343E35FE3ED +:103F60000E9414230E947D226093E6011D1624F412 +:103F70000E940A1E8093E7018091E70187FF05C038 +:103F80000E940A1E81958093E701111624F40E9475 +:103F90000A1E8093E8018091E80187FF05C00E9416 +:103FA0000A1E81958093E801DF91CF911F910C94B7 +:103FB000301F9F3F09F08ECF96CFDF91CF911F9199 +:103FC0000895E4EEF1E085E0DF011D928A95E9F7BE +:103FD0001092E3011092E2010895833081F128F4F8 +:103FE000813059F08230D1F00895853009F449C00C +:103FF000B8F1863009F456C0089580911501262F36 +:1040000030E0280F311D2F3F310524F4680F6093F5 +:10401000150108958FEF8093150108958091140183 +:10402000262F30E0280F311D2F3F310524F4680F73 +:104030006093140108958FEF809314010895809187 +:104040001301262F30E0280F311D2F3F310524F4B6 +:10405000680F6093130108958FEF80931301089503 +:1040600080911201262F30E0280F311D2F3F31059E +:1040700024F4680F6093120108958FEF809312016A +:10408000089580911101262F30E0280F311D2F3F18 +:10409000310524F4680F6093110108958FEF809328 +:1040A0001101089580911001262F30E0280F311D55 +:1040B0002F3F310524F4680F6093100108958FEFAE +:1040C000809310010895833011F128F4813049F074 +:1040D000823091F00895853081F120F18630C1F170 +:1040E000089580911501681720F4861B80931501AF +:1040F000089510921501089580911401681720F415 +:10410000861B8093140108951092140108958091E4 +:104110001301681720F4861B8093130108951092F1 +:104120001301089580911201681720F4861B809373 +:1041300012010895109212010895809111016817DB +:1041400020F4861B809311010895109211010895A7 +:1041500080911001681720F4861B80931001089548 +:104160001092100108950F931F938D3109F46BC0C5 +:1041700008F03FC08E3009F47FC0C0F4873009F4E6 +:1041800069C068F4863009F0B1C08091DA01817F9E +:104190008E7F8093DA0181E08093EA01A8C08830A5 +:1041A00009F4A2C08B3009F49FC0A0C0863109F485 +:1041B0009BC078F4803109F472C0813109F096C057 +:1041C0000E94831490910D0181E0892780930D0155 +:1041D0008BC0893109F488C08B3109F087C0809188 +:1041E000DA0181FB222720F991E0922790FB81F9E7 +:1041F0004CC0853309F470C048F4873209F46CC0B0 +:1042000008F459C0893209F467C070C0833438F4A7 +:104210008A3308F04EC0883309F466C067C083341F +:1042200009F45AC0883409F061C00E9483140FEF6A +:1042300013ED20E3015010402040E1F700C00000E2 +:104240000E94F61B51C00E9437220E94EA0F0E9472 +:10425000E3084AC09091DA01892F8095817080FB34 +:1042600090F929F0966098609093DA0140C0997FA8 +:10427000977F9093DA0138C08091DA0182FB222780 +:1042800020F991E0922790FB82F98093DA0199233B +:1042900059F18091DA0181608093DA0125C0809123 +:1042A000DA0183FB222720F991E0922790FB83F922 +:1042B000ECCF895301C08D5141E050E060E070E0E7 +:1042C0008A019B0104C0000F111F221F331F8A9512 +:1042D000D2F7C901B80104C061E070E080E090E06D +:1042E0000E9443180E94831481E001C080E01F9166 +:1042F0000F91089580E0089580E00895CF93C82F2E +:104300008091EA01813079F018F08230E9F187C0BC +:10431000E0910E01F0910F018081813169F08232CC +:1043200009F07FC009C0E0910E01F0910F0180817A +:10433000813111F0823261F48C2F0E947A21811137 +:1043400004C08C2F0E94B3201DC081E090E01AC0F1 +:104350008C2F0E947C21811114C0C43179F048F463 +:10436000CB3079F0C03109F060C082E08093EA017F +:1043700008C0C93219F0C83321F057C01092EA01C1 +:1043800054C081E0817053C0C93289F118F5C4313D +:1043900071F1A8F4C73009F046C08AE08093150196 +:1043A00094E19093140193E0909313018093120190 +:1043B00088E08093110188E28093100134C0CE51CF +:1043C000C63088F5EC2FF0E0E65DFE4F80818093EB +:1043D000E90129C0CE34E9F020F4CB3421F56AE0BC +:1043E00013C0C13579F0C235F1F461E00DC08091A0 +:1043F000E901882319F01092E90115C081E080934A +:10440000EA0115C061E006C08091E9010E94ED1F3C +:104410000AC06AE08091E9010E94632004C0109202 +:10442000EA0180E004C081E002C080E0ABCFCF9120 +:104430000895E1E8F0E08081886080838081816078 +:1044400080838FB7F89493E09093890090ED9093D8 +:1044500088008FBF0895EFE6F0E08081826080835E +:104460000895EFE6F0E080818D7F80830895EFE688 +:10447000F0E0908182E08927808308951F920F9257 +:104480000FB60F9211242F933F934F935F936F9327 +:104490007F938F939F93AF93BF93EF93FF938091FD +:1044A000EB019091EC0101969093EC018093EB016C +:1044B000811103C082E00E94E308E091EC01E695DF +:1044C000E695F0E0EC54FB4FE4918091EB018E1304 +:1044D00003C080E00E94E308FF91EF91BF91AF918C +:1044E0009F918F917F916F915F914F913F912F910C +:1044F0000F900FBE0F901F90189504D06894B111C3 +:104500008DC0089570D088F09F5790F0B92F9927EB +:10451000B751A0F0D1F0660F771F881F991F1AF0CE +:10452000BA95C9F712C0B13081F077D0B1E00895E3 +:1045300074C0672F782F8827B85F39F0B93FCCF364 +:10454000869577956795B395D9F73EF490958095C4 +:10455000709561957F4F8F4F9F4F0895E89409C0E4 +:1045600097FB3EF490958095709561957F4F8F4FA6 +:104570009F4F9923A9F0F92F96E9BB279395F695BC +:10458000879577956795B795F111F8CFFAF4BB0F3A +:1045900011F460FF1BC06F5F7F4F8F4F9F4F16C09E +:1045A000882311F096E911C0772321F09EE8872F28 +:1045B000762F05C0662371F096E8862F70E060E0E4 +:1045C0002AF09A95660F771F881FDAF7880F96955D +:1045D000879597F9089557FD9058440F551F59F046 +:1045E0005F3F71F04795880F97FB991F61F09F3FE0 +:1045F00079F087950895121613061406551FF2CF09 +:104600004695F1DF08C0161617061806991FF1CF58 +:1046100086957105610508940895E894BB2766277F +:104620007727CB0197F908950BD078C069D028F08F +:104630006ED018F0952309F05AC05FC01124EECF58 +:10464000CADFA0F3959FD1F3950F50E0551F629FED +:10465000F001729FBB27F00DB11D639FAA27F00DDB +:10466000B11DAA1F649F6627B00DA11D661F829F02 +:104670002227B00DA11D621F739FB00DA11D621FE7 +:10468000839FA00D611D221F749F3327A00D611D04 +:10469000231F849F600D211D822F762F6A2F1124E6 +:1046A0009F5750408AF0E1F088234AF0EE0FFF1F39 +:1046B000BB1F661F771F881F91505040A9F79E3F70 +:1046C000510570F014C0AACF5F3FECF3983EDCF3C5 +:1046D000869577956795B795F795E7959F5FC1F7AD +:1046E000FE2B880F911D9695879597F9089597F958 +:1046F0009F6780E870E060E008959FEF80EC089588 +:1047000000240A94161617061806090608950024B0 +:104710000A9412161306140605060895092E03942A +:10472000000C11F4882352F0BB0F40F4BF2B11F49E +:1047300060FF04C06F5F7F4F8F4F9F4F089597FBBF +:10474000072E16F4009407D077FD09D00E94B923F4 +:1047500007FC05D03EF4909581959F4F0895709584 +:1047600061957F4F0895EE0FFF1F0590F491E02DA6 +:104770000994AA1BBB1B51E107C0AA1FBB1FA617A8 +:10478000B70710F0A61BB70B881F991F5A95A9F7FA +:1047900080959095BC01CD010895F999FECF92BD09 +:1047A00081BDF89A992780B50895A8E1B0E042E06C +:1047B00050E00C94F523262FF999FECF92BD81BDD0 +:1047C000F89A019700B4021639F01FBA20BD0FB64F +:1047D000F894FA9AF99A0FBE08950196272F0E942D +:1047E000DC230C94DB23DC01CB01FC01F999FECF27 +:1047F00006C0F2BDE1BDF89A319600B40D92415069 +:0A4800005040B8F70895F894FFCF78 +:10480A000220E508730950091C09E8080101C701DB +:10481A0028080A03140A3F4D363975042804F2039E +:10482A00B9034C0365037E039703010203040506DB +:04483A000708090062 +:00000001FF diff --git a/keyboards/ergodox_ez/keymaps/kines-ish/keymap.c b/keyboards/ergodox_ez/keymaps/kines-ish/keymap.c new file mode 100644 index 0000000000..5063c99f28 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/kines-ish/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 + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | = | 1 | 2 | 3 | 4 | 5 | LEFT | | RIGHT| 6 | 7 | 8 | 9 | 0 | - | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Tab | Q | W | E | R | T | L1 | | L1 | Y | U | I | O | P | \ | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | Caps | A | S | D | F | G |------| |------| H | J | K | L | ; | ' | + * |--------+------+------+------+------+------| Hyper| | Meh |------+------+------+------+------+--------| + * | LShift | Z | X | C | V | B | | | | N | M | , | . | / | RShift | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | Esc | Grv |Insert| Left | Right| | Up | Down | [ | ] | L2 | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | Ctrl | Alt | | LGui | Ctrl | + * ,------|------|------| |------+------+------. + * | | | Home | | PgUp | | | + * |Backsp| Del |------| |------| Enter| Space| + * |ace | | End | | PgDn | | | + * `--------------------' `--------------------' + */ +// If it accepts an argument (i.e, is a function), it doesn't need KC_. +// Otherwise, it needs KC_* +[BASE] = KEYMAP( // layer 0 : default + // left hand + KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, KC_LEFT, + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, TG(SYMB), + KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, ALL_T(KC_NO), + KC_ESC, KC_GRV, KC_INS, KC_LEFT, KC_RGHT, + KC_LCTL,KC_LALT, + KC_HOME, + KC_BSPC,KC_DEL,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, + KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + MEH_T(KC_NO),KC_N, KC_M, KC_COMM,KC_DOT, KC_SLSH, KC_RSFT, + KC_UP, KC_DOWN,KC_LBRC,KC_RBRC, KC_FN2, + KC_LGUI, KC_RCTL, + KC_PGUP, + KC_PGDN, KC_ENT, KC_SPC + ), +/* Keymap 1: Symbol Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | PrScr | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | ScrLk | ! | @ | { | } | | | | | | Up | 7 | 8 | 9 | * | F12 | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | Pause | # | $ | ( | ) | ` |------| |------| Down | 4 | 5 | 6 | + | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | % | ^ | [ | ] | ~ | | | | & | 1 | 2 | 3 | \ | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | . | 0 | = | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// SYMBOLS +[SYMB] = KEYMAP( + // left hand + KC_PSCR,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, + KC_SLCK,KC_EXLM,KC_AT, KC_LCBR,KC_RCBR,KC_PIPE,KC_TRNS, + KC_PAUS,KC_HASH,KC_DLR, KC_LPRN,KC_RPRN,KC_GRV, + KC_TRNS,KC_PERC,KC_CIRC,KC_LBRC,KC_RBRC,KC_TILD,KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS, + KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS, + // right hand + KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + KC_TRNS, KC_UP, KC_7, KC_8, KC_9, KC_ASTR, KC_F12, + KC_DOWN, KC_4, KC_5, KC_6, KC_PLUS, KC_TRNS, + KC_TRNS, KC_AMPR, KC_1, KC_2, KC_3, KC_BSLS, KC_TRNS, + KC_TRNS,KC_DOT, KC_0, KC_EQL, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), +/* Keymap 2: Media and mouse keys + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | MsUp | | | | | | | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | |MsLeft|MsDown|MsRght| |------| |------| | | | | | Play | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | | Prev | Next | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | Lclk | Rclk | |VolUp |VolDn | Mute | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | |Brwser| + * | | |------| |------| |Back | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// MEDIA AND MOUSE +[MDIA] = KEYMAP( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_BTN1, KC_BTN2, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + // right hand + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, + KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, + KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_WBAK +), +}; + +const uint16_t PROGMEM fn_actions[] = { + [1] = ACTION_LAYER_TAP_TOGGLE(SYMB) // FN1 - Momentary Layer 1 (Symbols) +}; + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + // MACRODOWN only works in this function + switch(id) { + case 0: + if (record->event.pressed) { + register_code(KC_RSFT); + } else { + unregister_code(KC_RSFT); + } + break; + } + return MACRO_NONE; +}; + +// Runs just one time when the keyboard initializes. +void matrix_init_user(void) { + +}; + +// Runs constantly in the background, in a loop. +void matrix_scan_user(void) { + + uint8_t layer = biton32(layer_state); + + ergodox_board_led_off(); + ergodox_right_led_1_off(); + ergodox_right_led_2_off(); + ergodox_right_led_3_off(); + switch (layer) { + // TODO: Make this relevant to the ErgoDox EZ. + case 1: + ergodox_right_led_1_on(); + break; + case 2: + ergodox_right_led_2_on(); + break; + default: + // none + break; + } + +}; diff --git a/keyboards/ergodox_ez/keymaps/kines-ish/readme.md b/keyboards/ergodox_ez/keymaps/kines-ish/readme.md new file mode 100644 index 0000000000..5d39a0590d --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/kines-ish/readme.md @@ -0,0 +1,19 @@ +This keymap attempts to match the Kinesis Contoured (aka Advantage) default +layout as closely as possible. See +http://www.kinesis-ergo.com/wp-content/uploads/2013/06/advantage_layout_win.pdf + +Apart from the obvious mappings, this keymap also: + +* removes the dual-purpose momentary layer/normal keys: Z, /, and Grv; + because the author--coming from a Kinesis keyboard--finds the delays and + accidental modifiers to be more disconcerting than helpful. + +* puts Esc in the bottom left since there's no place for it in the top + left to match the Kinesis. + +* changes the bottom-right key into an L2 toggle since there's otherwise no + way to get to L2. + +* adds PrScr, ScrLk and Pause to the L1 keymap, down the left side, since + they're present on the Kinesis but not available in the default + ergodox_ez keymap. diff --git a/keyboards/ergodox_ez/keymaps/mpiechotka/compiled.hex b/keyboards/ergodox_ez/keymaps/mpiechotka/compiled.hex new file mode 100644 index 0000000000..35a56dd4c1 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/mpiechotka/compiled.hex @@ -0,0 +1,1181 @@ +:100000000C9402030C9446030C9446030C94460390 +:100010000C9446030C9446030C9446030C9446033C +:100020000C9446030C9446030C941C0E0C94EE0E98 +:100030000C9446030C9446030C9446030C9446031C +:100040000C9446030C94F8220C9446030C9446033B +:100050000C9446030C948B1C0C9446030C9446039E +:100060000C9446030C9446030C9446030C944603EC +:100070000C9446030C9446030C9446030C944603DC +:100080000C9446030C9446030C9446030C944603CC +:100090000C9446030C9446030C9446030C944603BC +:1000A0000C9446030C9446030C9446035B0F7D0F9F +:1000B0006B107D0F6B10C20FE50F6B103A104D10D7 +:1000C0001C131C134B134B138113A113D214D21402 +:1000D000AC13D2145C145C14C314D214D214CC1418 +:1000E0006914691469146914691469146914691428 +:1000F0006914691469146914691469146914691418 +:100100007B1488148F149614A0140147024774328C +:10011000014702477432012102217432012802286A +:10012000000147024774320147024774320120023E +:100130002074320128022800014702477432014727 +:1001400002477432011F021F743201280228000185 +:100150004702477432014702477432011E021E747F +:10016000320128022800000001C002C003C004C000 +:1001700005C0018C028C2E004C002900E1003542A4 +:1001800000001E00140004001D0034004D421F003A +:100190001A0015001B00E1042A7120000900160056 +:1001A000060050002C7221001300170019004F00A8 +:1001B0004A0022000A00070005000000E20050008B +:1001C000025400002E00000001204F0002540000E5 +:1001D0002D000000E20023000D000B000E000000C7 +:1001E000E60024000F001100100052004B00250013 +:1001F0001800080036005100287226001C000C0070 +:1002000037002F002B7127003300120038713000A7 +:100210004E432D0031003400E500004200002E0066 +:100220004C002900E100354200001E0014000400CB +:100230001D0034004D421F001A0016001B00E1048F +:100240002A71200008000700060050002C722100CF +:100250001500090019004F004A00220017000A008B +:1002600005000000E2005000025400002E000000D3 +:1002700001204F00025400002D000000E200230086 +:100280001C000B0011000000E600240018000D0007 +:10029000100052004B0025000C000E0036005100EB +:1002A0002872260012000F0037002F002B71270044 +:1002B00013003300387130004E432D0031003400FC +:1002C000E500004200000100010001000100010002 +:1002D00000003A001E0220022202010001003B0041 +:1002E0001F0221022302010001003C002F0226020E +:1002F0002F00010001003D00300227023000010004 +:1003000001003E003102350035020000010001000D +:1003100001000000010000000100010001000000D8 +:100320000100000001003F005200510024020000C3 +:1003300001004000240021001E00010001004100D6 +:10034000250022001F003700010042002600230084 +:10035000200027000100430025022E0231002E005C +:100360000100440045000100010001000000000000 +:100370000000000000000000000000000620022035 +:100380000000000001000000072003200000000022 +:100390000100000000000420000000000100000037 +:1003A0000000052000000000010000000000000027 +:1003B000000000000100000000000000000000003C +:1003C000010000000000000000000000010000002B +:1003D000000000000000000001000000000000001C +:1003E000000000000100000000000000000000000C +:1003F00001000000000000000000000001000000FB +:1004000000000000000000000100000000000000EB +:1004100000000000000016034500720067006F0036 +:1004200044006F007800200045005A0000001603C9 +:100430004500720067006F0044006F0078002000E4 +:1004400045005A0000000403090409026D0004017C +:1004500000A0FA09040000010301010009211101B3 +:100460000001223F000705810308000A090401007A +:100470000103010200092111010001224D000705BD +:10048000820308000A090402000103000000092198 +:10049000110100012236000705830308000A090440 +:1004A00003000103000000092111010001223900AD +:1004B000070584031000011201100100000008ED7F +:1004C000FE071301000102000105010906A1010553 +:1004D0000719E029E7150025019508750181020536 +:1004E000081901290595057501910295017503917A +:1004F00001050719002977150025019578750181F7 +:1005000002C005010980A101850216010026B7007D +:100510001A01002AB700751095018100C0050C0969 +:1005200001A1018503160100269C021A01002A9CE4 +:1005300002751095018100C005010902A1010901A0 +:10054000A100050919012905150025019505750169 +:100550008102950175038101050109300931158179 +:10056000257F95027508810609381581257F95013B +:1005700075088106050C0A38021581257F950175DD +:10058000088106C0C005010906A101050719E02977 +:10059000E71500250195087501810295017508810F +:1005A0000105081901290595057501910295017547 +:1005B0000391010507190029FF150025FF95067510 +:1005C000088100C0000000000000000000000001E1 +:1005D0000204060A0F17202C3A4A5D71879DB3C7A3 +:1005E000DAE9F5FCFFFCF5E9DAC7B39D87715D4AEE +:1005F0003A2C20170F0A0604020100000000000038 +:100600000000000011241FBECFEFDAE0DEBFCDBF37 +:1006100004B603FE24C08091FB019091FC01A091DF +:10062000FD01B091FE018730904BA740B04BB9F46B +:100630001092FB011092FC011092FD011092FE013C +:1006400014BE84B7877F84BF88E10FB6F894809387 +:100650006000109260000FBEE0E0FFE3099511E03A +:10066000A0E0B1E0EEE7F9E402C005900D92A433FA +:10067000B107D9F711E0A4E3B1E001C01D92AB3F8F +:10068000B107E1F70E94600B0C94BD240C940000AC +:100690001092B9008AE08093B800089594EA90938C +:1006A000BC009091BC0097FFFCCF9091B900987F5F +:1006B000983021F0903111F081E008958093BB00D3 +:1006C00084E88093BC008091BC0087FFFCCF8091C0 +:1006D000B900887F883111F0803471F780E0089587 +:1006E00084E98093BC008091BC0084FDFCCF089518 +:1006F0008093BB0084E88093BC008091BC0087FF9E +:10070000FCCF9091B900987F81E0983209F480E0A5 +:10071000089584E88093BC008091BC0087FFFCCFE3 +:100720008091BB00089580910101811115C080E482 +:100730000E944E038093010181110CC082E10E944E +:10074000780380930101811105C08FEF0E94780327 +:10075000809301010E94700384B1807F84B985B1C8 +:10076000807F85B98AB1837F8AB98BB1837F8BB94A +:100770003E98469808950E944E05809301010E947C +:10078000930380B38C7080BB81B3836F81BBA5E37F +:10079000B1E0E3E4F1E08EE08E0F11921D928E1332 +:1007A000FCCF0C943805BF92CF92DF92EF92FF926C +:1007B0000F931F93CF93DF9380910101882379F0EA +:1007C000809134018F5F80933401811108C00E94B1 +:1007D0004E0580930101811102C00E94E00405E3EF +:1007E00011E0C0E0D0E0DD24D39482E0C82EEE24F6 +:1007F000E394F12CC730D10500F5809101018111FE +:1008000064C080E40E944E0380930101811112C0F4 +:1008100082E10E9478038093010181110BC0C7011E +:100820000C2E01C0880F0A94EAF780950E94780385 +:10083000809301010E94700348C0CA30A1F028F4DF +:10084000C83059F0C93061F005C0CC3089F070F083 +:10085000CD3089F0209A289810C0219A29980DC08F +:10086000229A2A980AC0239A2B9807C0529A01C04C +:10087000539A5B9802C03E9A469890EA9A95F1F78F +:100880009FB1799902C082E001C080E091709D25FE +:10089000982B7C9902C084E001C080E0892B7D996F +:1008A00002C038E001C030E0832B7E9902C020E115 +:1008B00001C020E0822B9FB19095991F9927991F25 +:1008C0009295990F907E892B0FC080910101811123 +:1008D00049C080E40E944E0380930101882379F18E +:1008E000B12C0E9470038B2DF8019081981719F09C +:1008F0008083C09200010E94930321960F5F1F4FD7 +:10090000CE30D10509F076CF80910001882361F1C6 +:10091000815080930001882339F08FE99FE001978F +:10092000F1F700C0000020C0A3E4B1E0E5E3F1E08E +:10093000CF01825F91919D938E13FCCF15C083E10F +:100940000E947803809301018111CACF81E40E9443 +:100950004E03809301018111C3CF0E948903B82EF9 +:10096000B094BFCF80E0C0CF0E94DE0481E0DF9171 +:10097000CF911F910F91FF90EF90DF90CF90BF909C +:100980000895E82FF0E0ED5BFE4F80810895089513 +:100990000F931F93CF93DF93C3E4D1E010E00C2FAC +:1009A000025F899190E00E94B11B180F0C13F9CFE0 +:1009B000812FDF91CF911F910F9108950C94E00545 +:1009C00056985E9825982D9826982E9827982F98B7 +:1009D0008FEF90E0909389008093880090938B0034 +:1009E00080938A0090938D0080938C00259A2D9A95 +:1009F0002FEF80E792E0215080409040E1F700C067 +:100A00000000269A2E9A2FEF80E792E02150804036 +:100A10009040E1F700C00000279A2F9A2FEF80E75F +:100A200092E0215080409040E1F700C000002598FE +:100A30002D982FEF80E792E0215080409040E1F721 +:100A400000C0000026982E982FEF80E792E02150FA +:100A500080409040E1F700C0000027982F985698FA +:100A60005E9825982D9826982E9827982F98089567 +:100A700089EA8093800089E08093810024982C98F3 +:100A80003F988AB18F748AB96E98479A8BB1806B00 +:100A90008BB9769A0E94E0040C94DF0580E2809383 +:100AA00001018091510181110EC00E94480381E033 +:100AB000809351012FEF83ED90E3215080409040CF +:100AC000E1F700C0000080E40E944E038093010122 +:100AD00081112EC00E94780380930101811128C0EA +:100AE0000E94780380930101811122C08FE30E944C +:100AF00078038093010181111BC00E94700380E480 +:100B00000E944E0380930101811112C08CE00E946B +:100B100078038093010181110BC00E9478038093B8 +:100B20000101811105C08FE30E94780380930101C8 +:100B30000E947003809101010895FC01623021F14F +:100B400028F4662349F0613071F036C0643041F119 +:100B500008F1653059F130C08281882311F085EEAB +:100B60000CC085EE0EC08281882351F085EE0E9474 +:100B7000C01185EE0E94881283EE0E94C0111CC035 +:100B800083EE0E94881218C08281811115C08FE403 +:100B900091E00895828181110FC088E391E008956A +:100BA0008281811109C081E291E0089582818111E1 +:100BB00003C08AE091E0089580E090E008950895F0 +:100BC0006091BD017091BE018091BF019091C00103 +:100BD0000E94BD1B56985E9825982D9826982E98B1 +:100BE00027982F98823019F0833021F00895259AA4 +:100BF0002D9A0895269A2E9A089581E0089581E00D +:100C000008950C94FF0508950F931F93CF93DF93DE +:100C10008C01FC01C081D181CE010E94361ABE0137 +:100C20000E94AD06EC01B8010E940106882309F478 +:100C30008DC0F8018281882309F44AC080915D014A +:100C400081111FC0C431F0E5DF0709F051C00E94D7 +:100C5000030681E080935D010E94551C90935C0126 +:100C600080935B011092540110925601109255012D +:100C7000109258011092570110925A011092590186 +:100C800065C080915B0190915C010E94611C883C71 +:100C9000910570F480915401E82FF0E0EE0FFF1FF2 +:100CA000EB5AFE4FD183C0838F5F809354014EC0B7 +:100CB000C43880E5D80721F0C538D04501F13AC0E5 +:100CC000F8018281882341F01092520182E01EC017 +:100CD000C438E0E5DE0759F580915201811106C064 +:100CE00086E20E94C01186E20E94881282E01CC047 +:100CF000C438F0E5DF0741F3C538D045D9F4F80131 +:100D00008281882331F01092530180E20E94D71231 +:100D10001DC080915301811106C087E20E94C0115D +:100D200087E20E94881280E20E94DE120FC0C5385E +:100D3000D04529F381E08093520180935301C8018B +:100D4000DF91CF911F910F910C94FD0580E0DF9111 +:100D5000CF911F910F910895089596E0799FF0012A +:100D6000112494E5899FE00DF11D1124E60FF11D7A +:100D7000EE0FFF1FEA58FE4F859194910895880F5A +:100D8000991FFC01EA51F040859194910895880FD4 +:100D9000991FFC01EA59FE4F8591949108950F9394 +:100DA0001F93CF93DF93EC01811520E3920750F559 +:100DB000C11580E2D80708F0C3C0CB3BD10590F441 +:100DC000C83AD10508F06AC0C53AD10508F05BC041 +:100DD000C430D10508F0D0C1219709F0CAC101E0A3 +:100DE00010E00AC2CF3FD10511F008F0C5C1C03FE5 +:100DF000D10508F0A2C0CE01805E9109089708F4E1 +:100E0000BBC1B7C1C13090E5D90709F4A2C020F534 +:100E1000C0318FE4D80770F4C11590E4D90708F009 +:100E200094C0C11521E3D20708F0A3C1DD278E01CC +:100E3000106CE2C1C115D04509F09BC10E943D155F +:100E40008FEF94E32CE0815090402040E1F700C008 +:100E500000000E94B01CD0C1C11597E5D90758F415 +:100E6000C03121E5D20708F01CC1C43180E5D807A4 +:100E700008F475C07EC1CE0190578115904108F0ED +:100E800078C1DF7073C1C53AD10509F477C1C63A9C +:100E9000D10509F076C102E810E4AEC1C83AD10527 +:100EA00009F472C1C93AD10509F471C1CA3AD10530 +:100EB00009F470C1CB3AD10509F46FC1CC3AD10520 +:100EC00009F46EC1CD3AD10509F46DC1C03BD1051D +:100ED00009F46CC1CE3AD10509F46BC1CF3AD10502 +:100EE00009F46AC1C13BD10509F469C1C23BD1050E +:100EF00009F468C1C33BD10509F467C1C43BD105FE +:100F000009F466C1C53BD10509F465C1C63BD105ED +:100F100009F464C1C73BD10509F463C1C83BD105DD +:100F200009F462C1C93BD10509F461C1CA3BD105CD +:100F300009F460C100E014E45FC18E0110655CC17A +:100F4000CE019F700E94C70658C1DF708E01106AE3 +:100F500053C18091DA0181608093DA014DC10E9412 +:100F6000551E811102C00E943B1E0E94721E90E01D +:100F70009093FB018093FA01C23080E5D80721F4F9 +:100F80008091FA01816086C0C43090E5D90721F4D0 +:100F90008091FA0182607EC0C63020E5D20721F43C +:100FA0008091FA01846076C0C83080E5D80719F4D2 +:100FB0008091FA0127C0CA3090E5D90721F48091C9 +:100FC000FA01806167C0CC3020E5D20721F480911E +:100FD000FA0180625FC0CE3080E5D80721F48091AD +:100FE000FA01806457C0C03190E5D90721F480919F +:100FF000FA0180684FC0C23120E5D20729F4809100 +:10100000FA018460886046C0C33080E5D80721F4C7 +:101010008091FA018E7F3EC0C53090E5D90721F45A +:101020008091FA018D7F36C0C73020E5D20721F4C8 +:101030008091FA018B7F2EC0C93080E5D80719F462 +:101040008091FA0126C0CB3090E5D90721F4809138 +:10105000FA018F7E1FC0CD3020E5D20721F48091A8 +:10106000FA018F7D17C0CF3080E5D80721F4809139 +:10107000FA018F7B0FC0C13190E5D90721F480912F +:10108000FA018F7707C0C331D04531F48091FA015E +:101090008B7F877F8093FA018091FA010E94761EF0 +:1010A000ABC08D2F99278F70992781309105D9F486 +:1010B0009E012370332702C0880F991F2A95E2F7FB +:1010C0009C688E0144E0000F111F4A95E1F700274C +:1010D0001370802B912B53E0CC0FDD1F5A95E1F755 +:1010E000C076DD272FC08230910531F4DC2FCC276C +:1010F0008E01016F106A80C08330910569F4CE01C2 +:101100008370992701E010E002C0000F111F8A953B +:10111000E2F7C8019C680FC084309105B9F4CE0194 +:101120008370992701E010E002C0000F111F8A951B +:10113000E2F7C8019A6823E0CC0FDD1F2A95E1F79A +:10114000C07ED7708C010C2B1D2B56C085309105AD +:1011500031F4DC2FCC278E01046F106A4DC0069746 +:1011600009F04AC0CF71DD27DC2FCC278E01106239 +:1011700043C000E010E040C08E013EC001E810E432 +:101180003BC003E810E438C002EE14E435C009EEB9 +:1011900014E432C00AEE14E42FC005EB14E42CC0B2 +:1011A00006EB14E429C007EB14E426C00CEC14E4AD +:1011B00023C00DEC14E420C003E815E41DC00AE8C8 +:1011C00015E41AC002E915E417C004E915E414C0D7 +:1011D00001E216E411C003E216E40EC004E216E4D4 +:1011E0000BC005E216E408C006E216E405C007E2FB +:1011F00016E402C00AE216E4C801DF91CF911F9104 +:101200000F91089596E0799FF001112494E5899F4C +:10121000E00DF11D1124E60FF11DEE0FFF1FEA583E +:10122000FE4F85919491803E9105E0F4803C9105BC +:1012300058F58133910509F46FC048F4893291055E +:1012400009F463C08A32910509F46DC072C0893314 +:101250009105E9F082389105D1F08533910509F4C3 +:101260004DC067C0833E910581F138F4803E910501 +:10127000B9F0823E9105D9F05CC0863E910561F1DE +:10128000873E9105A1F155C00E94BF0608952091A7 +:10129000FA0120FD02C021FF4CC080EE90E049C061 +:1012A0008091FA0180FFF9CF89E390E042C08091FC +:1012B000FA0182FF0EC08091FA0184FF03C080E032 +:1012C00090E037C083EE90E034C08091FA0182FF55 +:1012D000F2CF82EE90E02DC08091FA0183FF0BC027 +:1012E0008091FA0184FDEBCF87EE90E022C08091DF +:1012F000FA0183FFF5CF86EE90E01BC08091FA01E2 +:1013000085FF07C089E290E014C08091FA0185FF53 +:10131000F9CF85E390E00DC08091FA0186FF07C008 +:101320008AE290E006C08091FA0186FFF9CF81E35E +:1013300090E00E94CF06089508950C949C09809136 +:101340006E010895CF93DF9300D01F92CDB7DEB723 +:101350009C018091F101843019F593E099833B83DE +:101360002A839093E9008FEF9091E800815095FDDA +:1013700006C095ED9A95F1F700008111F5CF8091A7 +:10138000E80085FF0DC040E050E063E070E0CE0172 +:1013900001960E940C0C8091E8008E778093E80003 +:1013A0000F900F900F90DF91CF910895CF93DF931F +:1013B00000D01F92CDB7DEB72091F101243021F586 +:1013C00022E029839B838A8383E08093E9008FEF67 +:1013D0009091E800815095FD06C095ED9A95F1F742 +:1013E00000008111F5CF8091E80085FF0DC040E03D +:1013F00050E063E070E0CE0101960E940C0C8091F9 +:10140000E8008E778093E8000F900F900F90DF91A7 +:10141000CF9108952091F1012430F1F422E020933E +:10142000E9002FEF3091E800215035FD06C035ED81 +:101430003A95F1F700002111F5CF2091E80025FF42 +:101440000BC040E050E065E070E00E940C0C809121 +:10145000E8008E778093E8000895CF93DF93EC0146 +:101460009091F101943009F046C080910C018823DD +:10147000D9F080910D018823B9F09093E9008FEFA6 +:101480009091E800815095FD06C095E19A95F1F79D +:1014900000008111F5CF8091E80085FF2CC040E06D +:1014A00050E060E170E017C081E08093E9008FEFC9 +:1014B0009091E800815095FD06C095ED9A95F1F761 +:1014C00000008111F5CF8091E80085FF14C040E055 +:1014D00050E068E070E0CE010E940C0C8091E800C2 +:1014E0008E778093E80080E1FE01AEE5B1E00190E7 +:1014F0000D928A95E1F7DF91CF9108958091F001E7 +:10150000811109C00E94A10D0E94FE0D8091E20090 +:1015100084608093E20008951092F0010895089588 +:101520000C94E5220E94461C0E94EB220E94A4100B +:101530000C949D0942E061EC81E00E941B0D42E0A9 +:1015400061EC82E00E941B0D42E061EC83E00E94AE +:101550001B0D42E161EC84E00C941B0D8091F301C2 +:10156000833009F455C030F4813071F0823009F4D1 +:101570008EC008958A3009F47AC08B3009F460C0B7 +:10158000893009F09CC020C08091F201813A09F0B5 +:1015900096C08091E800877F8093E8008091F601F3 +:1015A0009091F701892B21F460E18EE591E003C071 +:1015B00060E080E090E070E00E94570C8091E800CD +:1015C0008B778093E80008958091F201813209F0D1 +:1015D00076C08091F6019091F701009719F003977A +:1015E00009F06DC08091E800877F8093E8008091CA +:1015F000E80082FD05C08091F1018111F8CF5FC044 +:101600008091F10080936E018091E8008B7753C048 +:101610008091F201813A09F052C08091F6019091D7 +:10162000F701892B09F04BC08091E800877F8093F8 +:10163000E8008091E80080FFFCCF80910C0136C06B +:101640008091F2018132D9F58091F6019091F701F4 +:10165000892BA9F58091E800877F8093E8000E949C +:10166000500D8091F40180930C010C943D158091F4 +:10167000F201813221F58091E800877F8093E800B4 +:101680000E94500D8091F50180936F010895809123 +:10169000F201813AA1F48091E800877F8093E8000D +:1016A0008091E80080FFFCCF80916F018093F10072 +:1016B0008091E8008E778093E8000C94500D089597 +:1016C00084B7877F84BF88E10FB6F8948093600069 +:1016D000109260000FBE90E080E80FB6F8948093FF +:1016E0006100909361000FBE0E94F3100E94A10D53 +:1016F0000E94FE0D8091E20084608093E200789465 +:101700000E9484100E94F51082E091E00E949F10D8 +:101710000E94D3228091F101853069F40E940D1C52 +:101720008091EF018823B1F30E94381C882391F344 +:101730000E94F60BEFCF0E94FB10ECCF292F33272E +:1017400023303105C9F064F42130310581F02230B5 +:10175000310509F043C08DE690E02AE434E042C050 +:1017600021323105F1F02232310541F137C082E1F9 +:1017700090E027EB34E036C099278130910541F0A5 +:101780008230910541F0892B49F5E6E4F4E005C08B +:10179000EEE2F4E002C0E6E1F4E0849190E09F0123 +:1017A00021C06430D8F4E62FF0E0EE0FFF1FEE5DAD +:1017B000FE4F2081318189E090E014C0643070F4E4 +:1017C00070E0FB01EE0FFF1FE65EFE4F20813181CE +:1017D000FB01EA5EFE4F808190E004C080E090E073 +:1017E00020E030E0FA0131832083089580E189BD53 +:1017F00082E189BD09B400FEFDCF8091D8008F7DC4 +:101800008093D8008091E00082608093E000809116 +:10181000E00081FDFCCF0895CF92DF92EF92FF921E +:101820000F931F93CF93DF93EC018B016A010E940A +:101830006F0D811133C0C114D10439F0F6018081DC +:101840009181081B190BC80FD91FE12CF12C011530 +:10185000110519F18091E80085FD16C08091E8001E +:101860008E778093E800C114D10449F0F60180819D +:101870009181E80EF91EF182E08285E00FC00E949E +:101880006F0D882321F30AC089918093F1000150E4 +:101890001109FFEFEF1AFF0ADACF80E0DF91CF9155 +:1018A0001F910F91FF90EF90DF90CF9008952091BE +:1018B000F8013091F9012617370748F061157105D5 +:1018C00039F42091E8002E772093E80001C0B90197 +:1018D00040E061157105A9F12091F101222309F47D +:1018E00043C0253009F442C02091E80023FD40C0E8 +:1018F0002091E80022FD32C02091E80020FFE9CFCE +:101900004091F3002091F20030E0342BFC01CF0134 +:101910006115710559F02830310540F481918093AB +:10192000F100615071092F5F3F4FF1CF41E0283046 +:10193000310509F040E02091E8002E772093E8007F +:10194000C8CF4111C9CF0AC08091F101882361F04D +:10195000853061F08091E80083FD0AC08091E80045 +:1019600082FFF2CF80E0089582E0089583E0089539 +:1019700081E008952091F8013091F9012617370789 +:1019800048F06115710539F42091E8002E77209315 +:10199000E80001C0B901FC0120E06115710591F179 +:1019A0008091F101882309F440C0853009F43FC0DB +:1019B0008091E80083FD3DC08091E80082FD2FC04A +:1019C0008091E80080FFE9CF2091F3008091F20040 +:1019D00090E0922B6115710559F08830910540F423 +:1019E00024912093F1003196615071090196F2CF54 +:1019F00021E0089709F020E08091E8008E7780933D +:101A0000E800CBCF2111CCCF0AC08091F10188230F +:101A100061F0853061F08091E80083FD0AC080911B +:101A2000E80082FFF2CF80E0089582E0089583E02D +:101A3000089581E00895982F973058F59093E90024 +:101A4000981739F07091EC002091ED005091F00062 +:101A500003C0242F762F50E021FF19C03091EB00F6 +:101A60003E7F3093EB003091ED003D7F3093ED00F1 +:101A70003091EB0031603093EB007093EC002093D9 +:101A8000ED005093F0002091EE0027FF07C09F5F0C +:101A9000D3CF8F708093E90081E0089580E00895AE +:101AA0008091F20187FF11C08091E80082FD05C09E +:101AB0008091F1018111F8CF11C08091E8008B77FE +:101AC0000BC08091F101882349F08091E80080FFEC +:101AD000F8CF8091E8008E778093E80008952091F8 +:101AE000E4003091E50095E64091EC00842F817090 +:101AF00040FF22C08091E80080FD1CC08091F10170 +:101B0000882391F0853091F08091EB0085FD10C025 +:101B10004091E4005091E5004217530729F39A01E0 +:101B2000915011F784E0089582E0089583E00895CC +:101B300081E0089580E008954091E80042FFDECF03 +:101B400008950E940F0E0E94170EE0EEF0E08081D3 +:101B500081608083E8EDF0E080818F77808319BC1D +:101B6000A7EDB0E08C918E7F8C9380818F7E8083F7 +:101B70001092F00108950F931F93CF93DF930E946B +:101B80000F0E0E94170EC8EDD0E088818F778883F2 +:101B900088818068888388818F7D888319BC1092B2 +:101BA000F1011092ED011092EF011092EE0100EEA2 +:101BB00010E0F80180818B7F808388818160888339 +:101BC00042E060E080E00E941B0DE1EEF0E08081E9 +:101BD0008E7F8083E2EEF0E080818160808380816F +:101BE00088608083F80180818E7F80838881806116 +:101BF0008883DF91CF911F910F910895E8EDF0E078 +:101C000080818F7E8083E7EDF0E08081816080833A +:101C100084E082BF81E08093F0010C94BB0DE8ED7D +:101C2000F0E080818E7F80831092E2000895109210 +:101C3000DA001092E10008951F920F920FB60F92F2 +:101C400011242F933F934F935F936F937F938F93C1 +:101C50009F93AF93BF93EF93FF938091E10082FF37 +:101C60000BC08091E20082FF07C08091E1008B7F72 +:101C70008093E1000E9483108091DA0080FF1FC0F2 +:101C80008091D80080FF1BC08091DA008E7F809306 +:101C9000DA008091D90080FF0DC080E189BD82E12A +:101CA00089BD09B400FEFDCF81E08093F1010E945F +:101CB0007E0A05C019BC1092F1010E948C0A809125 +:101CC000E10080FF19C08091E20080FF15C0809183 +:101CD000E2008E7F8093E2008091E2008061809339 +:101CE000E2008091D80080628093D80019BC85E022 +:101CF0008093F1010E94900A8091E10084FF30C03E +:101D00008091E20084FF2CC080E189BD82E189BD21 +:101D100009B400FEFDCF8091D8008F7D8093D8005C +:101D20008091E1008F7E8093E1008091E2008F7EC0 +:101D30008093E2008091E20081608093E2008091D4 +:101D4000ED01882311F084E007C08091E30087FD56 +:101D500002C081E001C083E08093F1010E94920AF9 +:101D60008091E10083FF29C08091E20083FF25C0BC +:101D70008091E100877F8093E10082E08093F10110 +:101D80001092ED018091E1008E7F8093E1008091BF +:101D9000E2008E7F8093E2008091E2008061809378 +:101DA000E20042E060E080E00E941B0D8091F000C4 +:101DB00088608093F0000E948F0AFF91EF91BF919D +:101DC000AF919F918F917F916F915F914F913F91D3 +:101DD0002F910F900FBE0F901F9018951F920F928A +:101DE0000FB60F9211242F933F934F935F936F93EE +:101DF0007F938F939F93AF93BF93CF93DF93EF9393 +:101E0000FF93C091E900CF708091EC00D82FD17082 +:101E100080FDD0E81092E9008091F000877F8093E8 +:101E2000F00078940E94320F1092E9008091F00047 +:101E300088608093F000CD2BCF70C093E900FF91B4 +:101E4000EF91DF91CF91BF91AF919F918F917F9152 +:101E50006F915F914F913F912F910F900FBE0F9017 +:101E60001F9018951F93CF93DF93CDB7DEB7AA9736 +:101E70000FB6F894DEBF0FBECDBFE2EFF1E088E011 +:101E80008E0F9091F10091938E13FBCF0E94AE0ABA +:101E90008091E80083FF1FC18091F2019091F301CE +:101EA000492F50E04A30510508F015C1FA01EA5AAD +:101EB000FF4F0C946D24803881F0823809F00BC1FB +:101EC0008091F6018F708093E9008091EB0085FB93 +:101ED000882780F91092E90006C08091EE01909168 +:101EE000EF01911182609091E800977F9093E80054 +:101EF0008093F1001092F100C8C0282F2D7F09F0C7 +:101F0000EAC0882319F0823061F0E5C08091F401C5 +:101F1000813009F0E0C0933009F080E08093EF0158 +:101F20002BC08091F401811127C08091F6018F7040 +:101F300009F4D1C08093E9002091EB0020FF1CC080 +:101F4000933021F48091EB00806214C09091EB00FB +:101F500090619093EB0021E030E0A90102C0440FB2 +:101F6000551F8A95E2F74093EA001092EA008091AB +:101F7000EB0088608093EB001092E9008091E8000C +:101F8000877F86C08111A7C01091F4011F778091CF +:101F9000E3008078812B8093E3008091E800877FC5 +:101FA0008093E8000E94500D8091E80080FFFCCFF4 +:101FB0008091E30080688093E300111102C082E009 +:101FC00001C083E08093F10186C08058823008F020 +:101FD00082C08091F4019091F5018C3D53E095070A +:101FE00079F583E08A838AE289834FB7F894DE012A +:101FF000139620E03EE051E2E32FF0E050935700CB +:10200000E49120FF03C0E295EF703F5FEF708E2FE9 +:1020100090E0EA3010F0C79601C0C0968D939D9372 +:102020002F5F243149F74FBF8091E800877F80936D +:10203000E8006AE270E0CE0101960E94570C14C0DD +:10204000AE014F5F5F4F6091F6010E949E0BBC0195 +:10205000009709F440C09091E800977F9093E800C2 +:1020600089819A810E94BA0C8091E8008B778093D5 +:10207000E80031C0803879F58091E800877F80934F +:10208000E8008091ED018093F1008091E8008E7767 +:102090008093E8000E94500D1EC081111CC09091D9 +:1020A000F4019230C0F48091E800877F8093E800CB +:1020B0009093ED010E94500D8091ED01811106C0B9 +:1020C0008091E30087FD02C081E001C084E080933D +:1020D000F1010E949A0A8091E80083FF0AC0809172 +:1020E000E800877F8093E8008091EB008062809316 +:1020F000EB00AA960FB6F894DEBF0FBECDBFDF91FE +:10210000CF911F9108950895CF938091F101882375 +:10211000A1F0C091E900CF709091EC00892F8170FF +:1021200090FD80E8C82B1092E9008091E80083FDC3 +:102130000E94320FCF70C093E900CF910895909321 +:102140007501809374010895E0917401F091750117 +:10215000309721F00190F081E02D099480E00895FE +:10216000E0917401F0917501309721F00280F381C4 +:10217000E02D09940895E0917401F0917501309774 +:1021800021F00480F581E02D0994089520917201D9 +:10219000309173018217930771F0909373018093CC +:1021A0007201E0917401F0917501309721F0068081 +:1021B000F781E02D0994089520917001309171010B +:1021C0008217930771F09093710180937001E091F1 +:1021D0007401F0917501309721F00084F185E02DB4 +:1021E0000994089508950C94F2100E944C1C0E94CA +:1021F000BB030C940E1D9F92AF92BF92CF92DF92C1 +:10220000EF92FF920F931F93CF93DF9300D000D0F4 +:1022100000D0CDB7DEB70E94D3030DE010E0AA24B2 +:10222000A394B12C902E802F0E94C10498012958AC +:102230003E4F6901F901F080F826A1F4015011091F +:1022400088F78FEF89838A831B820E94551C8160E7 +:10225000782F9D838C8349815A816B818D810E9467 +:1022600092112FC09091DA0191FF04C08E830E94D9 +:10227000C7048E8125E030E0A501022E01C0440F85 +:102280000A94EAF7E42E4F21C1F029839A828E2125 +:1022900091E009F490E09B830E94551C8160782FA7 +:1022A0009D838C8349815A816B818D810E9492111B +:1022B000F6018081E826E08204C021503109E0F671 +:1022C000BDCF0E94F51F109176010E94A41018172F +:1022D000B9F00E94A4108093760126960FB6F89468 +:1022E000DEBF0FBECDBFDF91CF911F910F91FF9049 +:1022F000EF90DF90CF90BF90AF909F900C949D098E +:1023000026960FB6F894DEBF0FBECDBFDF91CF91FA +:102310001F910F91FF90EF90DF90CF90BF90AF9003 +:102320009F900895CF93DF93CDB7DEB72B970FB66D +:10233000F894DEBF0FBECDBF4F83588769877A8779 +:102340008B87DE01119686E0FD0111928A95E9F7EF +:1023500085E0FE01379601900D928A95E1F749815B +:102360005A816B817C818D819E810E94DB172B9627 +:102370000FB6F894DEBF0FBECDBFDF91CF910895A9 +:10238000CF93882309F4C2C0C82F823859F40E9421 +:10239000A41081FDBBC089E30E94B51A0E94821B74 +:1023A00089E30CC0833879F40E94A41080FDAEC08C +:1023B00083E50E94B51A0E94821B83E50E94F71AEA +:1023C000CF910C94821B843859F40E94A41082FD92 +:1023D0009DC087E40E94B51A0E94821B87E4EECF5D +:1023E0008CEF8C0F813A48F48C2F0E943822811197 +:1023F0008DC08C2F0E94B51AE3CF80E28C0F8830FD +:1024000048F4C77081E001C0880FCA95EAF70E94BE +:102410003B1BD6CF8BE58C0F833078F4C53A29F07F +:10242000C63A31F083E890E005C081E890E002C050 +:1024300082E890E0CF910C94C61088E58C0F833130 +:1024400008F064C0C83A39F1C93A41F1CA3A49F1D1 +:10245000CB3A51F1CC3A59F1CD3A61F1C03B69F137 +:10246000CE3A71F1CF3A79F1C13B81F1C23B89F1AA +:10247000C33B91F1C43B99F1C53BA1F1C63BA9F126 +:10248000C73BB1F1C83BB9F1C93BC1F1CA3BC9F186 +:1024900080E090E038C082EE90E035C089EE90E0B8 +:1024A00032C08AEE90E02FC085EB90E02CC086EB26 +:1024B00090E029C087EB90E026C08CEC90E023C030 +:1024C0008DEC90E020C083E891E01DC08AE891E0A7 +:1024D0001AC082E991E017C084E991E014C081E25A +:1024E00092E011C083E292E00EC084E292E00BC061 +:1024F00085E292E008C086E292E005C087E292E0C1 +:1025000002C08AE292E0CF910C94DC10CF91089542 +:10251000882309F44BC0823859F40E94A41081FF2B +:1025200045C089E30E94B51A0E94821B89E30CC052 +:10253000833871F40E94A41080FF38C083E50E94A4 +:10254000B51A0E94821B83E50E94F71A0C94821B25 +:10255000843859F40E94A41082FF28C087E40E94A6 +:10256000B51A0E94821B87E4EFCF9CEF980F913A37 +:1025700058F390E2980F983050F4877091E001C0C2 +:10258000990F8A95EAF7892F0E94411BDFCF9BE5BF +:10259000980F933020F480E090E00C94C610885A95 +:1025A000833120F480E090E00C94DC1008958823BF +:1025B00021F00E943B1B0C94821B0895882321F07C +:1025C0000E94411B0C94821B08957F928F929F92D0 +:1025D000AF92BF92CF92DF92EF92FF920F931F9331 +:1025E000CF93DF931F92CDB7DEB77C01C62E772E37 +:1025F000FC01058102950F70128111110E94581B78 +:102600000E94AE1A882379F0112369F080E28C0DC4 +:10261000883048F082E00E94971A0E94AE1A91E03A +:10262000D82ED92601C0D12CE72DE295EF70F0E02D +:10263000E05AFF4F0C946D24872D807F072D0F707B +:10264000882311F00295007F112389F0002309F4FB +:1026500090C180E28C0D883020F4802F0E943B1BBB +:1026600003C0802F0E944B1B0E94821B82C18C2DB5 +:102670000E948812002309F495C180E28C0D8830F5 +:1026800020F4802F0E94411B03C0802F0E94511B09 +:102690000E94821B87C1972D907F872D8F7090326B +:1026A00011F08295807FCC2021F0F1E0CF16B1F0BF +:1026B0001EC0112349F0002309F414C1013009F0B0 +:1026C00011C10E946B1B6EC1002319F0013009F487 +:1026D00069C189830E946E1B89810AC1112321F07F +:1026E000023008F05FC1FEC001115CC101C11123BD +:1026F00021F0002309F4F6C03CC1002309F4F8C01E +:102700003EC1872D86958695837090E0009719F0DD +:10271000019761F047C1112321F08C2D972D937003 +:1027200002C080E090E00E94C6103CC1112321F05D +:102730008C2D972D937002C080E090E00E94DC10F9 +:1027400031C18C2D112319F00E94FD1E02C00E9480 +:10275000651F0E94EA1F26C1872D837009F052C0B1 +:10276000111120C18C2D829586958770880F880F56 +:102770009C2D9F70892E912CA12CB12C082E04C069 +:10278000880C991CAA1CBB1C0A94D2F7C4FE14C066 +:102790000FE010E020E030E0B901A80104C0440FD0 +:1027A000551F661F771F8A95D2F7CB01BA01609536 +:1027B00070958095909503C060E070E0CB01272D67 +:1027C00026952695237030E02230310569F02330BC +:1027D000310589F0682979298A299B292130310519 +:1027E00071F00E942319DEC0682979298A299B2962 +:1027F0000E943F19D7C00E942319C501B4010E944D +:102800000719D0C0112319F0872D817001C086955A +:10281000882309F4C7C08C2D829586958770880F10 +:10282000880F9C2D9F70892E912CA12CB12C082EE5 +:1028300004C0880C991CAA1CBB1C0A94D2F7C4FEC5 +:1028400014C00FE010E020E030E0B901A80104C09E +:10285000440F551F661F771F8A95D2F7CB01BA0127 +:10286000609570958095909503C060E070E0CB0115 +:10287000272D269526952370422F50E04230510592 +:1028800069F04330510589F0682979298A299B2903 +:102890004130510571F00E94FD1984C068297929E1 +:1028A0008A299B290E94191A7DC00E94FD19C50121 +:1028B000B4010E94E11976C08C2D90E0FC01E05E2D +:1028C000F109E531F10508F050C0E059FF4F0C94D3 +:1028D0006D240C2D0F70872D8F71112331F00E9404 +:1028E0007A19802F0E94D7125DC00E949B19802FF9 +:1028F0000E94DE1257C0112339F0011153C0872DF9 +:102900008F710E94C0194EC0023008F04BC0F7CF43 +:10291000112339F0872D8F710E947A1943C011233A +:10292000C9F3872D8F710E949B193CC0112329F098 +:10293000872D8F710E94651935C00E945B1932C0C6 +:10294000112351F0172D1F71812F0E947A1963E016 +:10295000812F0E948E1A26C081E00E94971A0230B1 +:1029600008F182E00E94971A1DC0112331F0002364 +:1029700089F28C2D0E94C01115C0002391F28C2D7C +:102980000E9488120FC0472D4F706C2DC7010E9406 +:102990009D050E947F1806C0472D4F706C2DC70102 +:1029A0000E94AC06DD20F9F00E948A1A80FD1BC04F +:1029B000F70112820E94841A0E947A19C7010E94AC +:1029C00002150E94841A0F90DF91CF911F910F91F1 +:1029D000FF90EF90DF90CF90BF90AF909F908F903F +:1029E0007F900C949B190F90DF91CF911F910F91C5 +:1029F000FF90EF90DF90CF90BF90AF909F908F901F +:102A00007F9008950F931F93CF93DF93EC018881FC +:102A100099812B813C81232BB9F09F3F11F48F3F8B +:102A200099F0CE010E940406882371F068817981B3 +:102A30008A810E94801A8C010E94351A0E94FC181B +:102A4000B801CE010E94E512DF91CF911F910F9145 +:102A500008950E94581B0E94681B0E942D1B0E9413 +:102A6000821B0E949B200E94EA1F80E090E00E944F +:102A7000C61080E090E00C94DC100E94481B0C947F +:102A800029150E94751A292F22952F7030E02C30BD +:102A900031054CF42A3031056CF4225031092230D2 +:102AA0003105A8F407C02C30310569F02F3031050D +:102AB00051F00DC0803F69F018F4803E40F409C029 +:102AC000843F29F406C093FB882780F9089580E0AD +:102AD000089581E00895CF93DF9300D000D01F9236 +:102AE000CDB7DEB70F900F900F900F900F90DF9142 +:102AF000CF910895CF93DF9300D000D000D0CDB711 +:102B0000DEB726960FB6F894DEBF0FBECDBFDF91BD +:102B1000CF9108951F93CF93DF93C091850116E065 +:102B200080918601C81799F0D0E01C9FF0011D9F8D +:102B3000F00D1124E957FE4F40815181628173816C +:102B4000848195810E947A152196C770E9CFDF9123 +:102B5000CF911F9108954091B7015091B8016091B4 +:102B6000B9017091BA018091BB019091BC010C94A4 +:102B70007A158091BC0182958F7009F054C08091C4 +:102B8000B901882309F44FC080918501A091860185 +:102B90006091B7017091B8014091BA015091BB01A9 +:102BA000B6E08A1709F43FC090E041155105C1F124 +:102BB0007F3F11F46F3FA1F1B89FF001B99FF00D75 +:102BC0001124E957FE4F218172132AC0208162131C +:102BD00027C02281211124C0238134812417350785 +:102BE00010F421503109241B350B283C3105C0F469 +:102BF0002091BC012F7020612093BC0126E0289F0A +:102C0000F001299FF00D1124E457FE4F80818F7051 +:102C10008061808387EB91E00E9402150C948A15F5 +:102C200001968770BECF0895CF92DF92EF92FF9208 +:102C30000F931F93CF93DF93CDB7DEB762970FB695 +:102C4000F894DEBF0FBECDBF8C0185E0F801DE0138 +:102C50001D9601900D928A95E1F7D8014C9111963D +:102C60005C91119712966C9112971396CD90DC900F +:102C700014973091B7017091B8018091BA01909189 +:102C8000BB01009709F46BC17F3F19F43F3F09F482 +:102C900066C1E090B901EE2009F4C0C02091BC01EA +:102CA000C816D90628F0F601E81BF90BCF0104C0BD +:102CB000809590958C0D9D1DFF24F394883C910583 +:102CC00078F0F12C207F09F0C6C07C2DD98AC88A03 +:102CD00089890E946B1587EB91E00E940215B1C0B3 +:102CE000822F807F09F046C0751314C0341312C0C0 +:102CF000611110C02F7020612093BC010E94AB15A0 +:102D000087EB91E00E9402158091BC01D8011596D5 +:102D10008C932EC0CD2819F15F3F11F44F3FF9F08D +:102D2000F62E61111CC0809185012091860136E04C +:102D3000821709F45AC090E0389FF001399FF00DD6 +:102D40001124E957FE4F7181571306C07081471354 +:102D500003C07281711103C001968770E9CFF62E0E +:102D6000662309F418C18091BC0181608093BC0185 +:102D7000F12C11C1751308C0341306C0611104C0D1 +:102D80008091BC01D801C3C04D875E878D859E852B +:102D90006A8B0E9441156A898823E1F16623D1F18B +:102DA0002091BC01822F82958F7090E0029774F081 +:102DB0008091B7019091B80198878F831986DB863F +:102DC000CA862C87CE0107960E94021586E0F8017C +:102DD000A7EBB1E001900D928A95E1F70E94B91539 +:102DE0000E94AB15FF24F394D6C04D875E878D8576 +:102DF0009E850E94751A292F22952F7030E022306F +:102E000031050CF0BCC09F7009F0B6C0805E883000 +:102E100008F4C1C0C8010E940215E4CFC816D90643 +:102E200008F453C0F601E81BF90BCF01883C91056B +:102E300008F450C0F12C7C2DD98AC88A89890E9457 +:102E40006B15E7EBF1E086E0DF011D928A95E9F76B +:102E50000E94AB15A0C0751314C0341312C06111C9 +:102E600010C08091BC01F8018583C8010E94021541 +:102E700086E0E7EBF1E0DF011D928A95E9F7FE2C91 +:102E80008AC04D875E878D859E856A8B0E9441151D +:102E90006A89882309F4BECF662309F4BBCF209149 +:102EA000BC01822F82958F7090E002970CF48ECF38 +:102EB0008091B7019091B8019A8389831B82DD824A +:102EC000CC822E83CE0101967FCF809590958C0D7C +:102ED0009D1DACCFF62E662309F49CCF75132EC032 +:102EE00034132CC02091BC0120FD1FC0822F82957D +:102EF0008F70D9F0D80115962C9315978F3049F023 +:102F00008F5F982F9295907F822F8F70892B1596C7 +:102F10008C93C8010E94021586E0F801A7EBB1E08E +:102F200001900D928A95E1F793CF86E0F801A7EB27 +:102F3000B1E001900D928A95E1F72DC04D875E8733 +:102F40008D859E850E944115811140CF8091BC01E5 +:102F500081608093BC01C8010E9402151CC06623D9 +:102F600009F458CF4D875E878D859E850E94411557 +:102F7000882309F44FCF2ACF811148CF0CC02430C9 +:102F800031050CF047CF9F7009F440CFF8019581CF +:102F9000907F09F03BCF8F2D62960FB6F894DEBF7D +:102FA0000FBECDBFDF91CF911F910F91FF90EF909A +:102FB000DF90CF9008951F93CF93DF93CDB7DEB707 +:102FC0002C970FB6F894DEBF0FBECDBF4F83588746 +:102FD00069877A878B879C87CE0107960E94141693 +:102FE000882369F08F8198852A853B85232BF1F111 +:102FF0009F3F09F063C08F3F09F060C037C086E093 +:10300000FE013796DE01119601900D928A95E1F747 +:103010006F817885EA85FB85309741F17F3F11F418 +:103020006F3F21F12091860130E0C9010196877040 +:1030300099274091850150E08417950709F447C00E +:1030400069837A83FD83EC8396E0929FD001939FFE +:10305000B00D1124A957BE4FFE01319601900D927B +:103060009A95E1F7809386010E948A1516E0809177 +:103070008501909186018917C1F1189FC001112423 +:1030800089579E4F0E941416882379F1E09185019B +:103090001E9FF0011124E957FE4F4081518162814A +:1030A0007381848195810E947A158091850190E0D9 +:1030B00001968770992780938501D9CF4F815885D4 +:1030C00069857A858B859C850E947A15CFCF0E9471 +:1030D0003D151092860110928501E7EBF1E086E044 +:1030E000DF011D928A95E9F7C1CF2C960FB6F894AF +:1030F000DEBF0FBECDBFDF91CF911F910895EF923C +:10310000FF920F931F93CF93DF938C01009709F4E5 +:103110006CC0F12CEE24E394E8012196F80184912F +:10312000843740F4843008F051C0813081F082301F +:1031300019F15BC0853709F444C0A8F19CE7980FEA +:10314000903708F052C08F770E94881241C00E5FFE +:103150001F4FFE01C49180E28C0F883048F4C77085 +:103160008E2D01C0880FCA95EAF70E945B1B14C020 +:103170008C2F0E94C0112DC00E5F1F4FFE01C49105 +:1031800080E28C0F883058F4C7708E2D01C0880FF4 +:10319000CA95EAF70E94611B0E94821B1AC08C2FFD +:1031A0000E94881216C00E5F1F4FFE01C491CC23EF +:1031B00081F08FE99FE00197F1F700C00000C15056 +:1031C000F6CF0E5F1F4FFE01F49003C00E94C011A6 +:1031D0008E018F2D882309F49FCFEFE9FFE031970F +:1031E000F1F700C000008150F5CFDF91CF911F9122 +:1031F0000F91FF90EF90089508956093C10170932F +:10320000C2018093C3019093C4010C9429150F93BC +:103210001F930091C1011091C2012091C30130910F +:10322000C401DC01CB01802B912BA22BB32B80930B +:10323000C1019093C201A093C301B093C4011F9137 +:103240000F910C9429150F931F930091C1011091B8 +:10325000C2012091C3013091C401DC01CB01802364 +:103260009123A223B3238093C1019093C201A09321 +:10327000C301B093C4011F910F910C9429150F93B2 +:103280001F930091C1011091C2012091C30130919F +:10329000C401DC01CB0180279127A227B3278093AB +:1032A000C1019093C201A093C301B093C4011F91C7 +:1032B0000F910C9429151092BD011092BE0110922D +:1032C000BF011092C0010C94291541E050E060E06C +:1032D00070E004C0440F551F661F771F8A95D2F710 +:1032E0004093BD015093BE016093BF017093C00134 +:1032F0000C94291541E050E060E070E004C0440FF8 +:10330000551F661F771F8A95D2F78091BD01909156 +:10331000BE01A091BF01B091C001482B592B6A2B6F +:103320007B2B4093BD015093BE016093BF0170930E +:10333000C0010C94291541E050E060E070E004C049 +:10334000440F551F661F771F8A95D2F740955095F9 +:10335000609570958091BD019091BE01A091BF01D3 +:10336000B091C001482359236A237B234093BD01B8 +:103370005093BE016093BF017093C0010C94291556 +:1033800041E050E060E070E004C0440F551F661F4C +:10339000771F8A95D2F78091BD019091BE01A091CF +:1033A000BF01B091C001482759276A277B27409366 +:1033B000BD015093BE016093BF017093C0010C9496 +:1033C00029150F931F930091BD011091BE0120910B +:1033D000BF013091C001DC01CB01802B912BA22BCE +:1033E000B32B8093BD019093BE01A093BF01B09316 +:1033F000C0011F910F910C9429150F931F930091F9 +:10340000BD011091BE012091BF013091C001DC01CE +:10341000CB0180239123A223B3238093BD019093FA +:10342000BE01A093BF01B093C0011F910F910C94F6 +:1034300029150F931F930091BD011091BE0120919A +:10344000BF013091C001DC01CB0180279127A22769 +:10345000B3278093BD019093BE01A093BF01B093A9 +:10346000C0011F910F910C9429150895CF92DF92FE +:10347000EF92FF920F931F93CF93DF938C01C09035 +:10348000C101D090C201E090C301F090C4018091CD +:10349000BD019091BE01A091BF01B091C001C82AA9 +:1034A000D92AEA2AFB2ACFE1D0E0D701C6010C2EA7 +:1034B00004C0B695A795979587950A94D2F780FF93 +:1034C00006C0B8018C2F0E940209019721F42197B0 +:1034D00060F780E001C08C2FDF91CF911F910F9199 +:1034E000FF90EF90DF90CF900895CF93DF93EC01A2 +:1034F0000E94361ABE010E940209DF91CF91089501 +:10350000CB010E94751A08958091C5018595859516 +:10351000859508958091C5018770089598E0899FE9 +:1035200090011124262B2093C5010C947A19209127 +:10353000C501809582238093C501982F977069F407 +:1035400030E0482F552747FD50952417350729F0BF +:103550008595859585950C949B1908959091C50145 +:10356000977081E009F480E0089590910C0199230F +:1035700021F090910D01911109C020910E0130911F +:103580000F01F90132969FEF40E01FC0982F9695EA +:10359000969596959F3050F5E0910E01F0910F01B0 +:1035A000E90FF11D877021E030E0A90102C0440F4E +:1035B000551F8A95E2F7CA019181892B818308956D +:1035C0009F3F39F04F5F4E3041F051915813F8CF83 +:1035D0000DC05111F7CF942FF5CF9F3F39F0F9016E +:1035E000E90FF11D97FDFA95828308950895909152 +:1035F0000C01992321F090910D01911109C02091A6 +:103600000E0130910F01F9013296205F3F4F1FC02C +:10361000982F9695969596959F30F0F4E0910E012F +:10362000F0910F01E90FF11D877021E030E0A90151 +:1036300002C0440F551F8A95E2F7CA018095918117 +:103640008923818308953196E217F30729F0908149 +:103650009813F9CF1082F7CF089581E090E0E091C0 +:103660000E01F0910F01E80FF91F108201968031D1 +:103670009105A9F708959091D901892B8093D901DB +:10368000089580959091D90189238093D901089557 +:103690001092D90108959091D801892B8093D80177 +:1036A000089580959091D80189238093D801089539 +:1036B0001092D80108959091D701892B8093D7015A +:1036C000089580959091D70189238093D70108951B +:1036D0001092D70108958093C60108951092C601F3 +:1036E000089580910E0190910F01FC0131969C018B +:1036F000205F3F4F80E0919191118F5FE217F307B8 +:10370000D1F70895E0910E01F0910F018091D90158 +:103710008083E0910E01F0910F0190818091D8019A +:10372000892B8083E0910E01F0910F0190818091AF +:10373000D701892B80838091C601882361F0E091B5 +:103740000E01F0910F019081892B80830E94711BE3 +:1037500081111092C60180910E0190910F010C947D +:10376000B01020E0009739F0AC014150510984239A +:1037700095232F5FF7CF822F0895CF92DF92EF929C +:10378000FF926C01EE24FF24C114D104E104F10482 +:1037900021F0C701B60120E101C020E0C72ED82EDC +:1037A000E92EFF24C114D104E104F10419F0285FCB +:1037B000C701B6016B017C0154E0F694E794D794FD +:1037C000C7945A95D1F7C114D104E104F10419F05A +:1037D0002C5FC701B6016B017C0142E0F694E794CF +:1037E000D794C7944A95D1F7C114D104E104F104E8 +:1037F00019F02E5FC701B601DC01CB01B695A79584 +:1038000097958795892B8A2B8B2B09F02F5F822F19 +:10381000FF90EF90DF90CF9008958091F101843078 +:1038200021F11092DB0120E488E190E00FB6F894DA +:10383000A895809360000FBE2093600080E00E94F6 +:103840009D0983B7817F846083BF83B7816083BF15 +:103850007894889583B78E7F83BF88E10FB6F894FC +:1038600080936000109260000FBE0895089508953F +:103870000E94361C0E94D3030E94371C0E94C80479 +:1038800091E0811101C090E0892F08950E943D15BB +:103890000E94A4100C949D0982E084BD93E095BD24 +:1038A0009AEF97BD80936E0008952FB7F89480919A +:1038B000DC019091DD01A091DE01B091DF012FBF0D +:1038C0000895CF92DF92EF92FF920F931F932FB73D +:1038D000F8944091DC015091DD016091DE0170911E +:1038E000DF012FBF6A017B01EE24FF248C0120E061 +:1038F00030E0C016D106E206F30610F4415051093B +:103900009A01281B390BC9011F910F91FF90EF906D +:10391000DF90CF9008951F920F920FB60F9211244F +:103920008F939F93AF93BF938091DC019091DD01C2 +:10393000A091DE01B091DF010196A11DB11D809320 +:10394000DC019093DD01A093DE01B093DF01BF9114 +:10395000AF919F918F910F900FBE0F901F90189570 +:103960000E94A10DF8942FEF87EA91E62150804044 +:103970009040E1F700C0000087E090EBDC0180930D +:10398000FB019093FC01A093FD01B093FE019CE02C +:1039900088E10FB6F894A895809360000FBE9093CD +:1039A0006000FFCFEF92FF920F931F93CF93DF93AF +:1039B000D82FCDE08C2F0E94C10405E010E0E82E46 +:1039C000F12CC701002E02C0959587950A94E2F765 +:1039D00080FF09C0602F7C2F80E00E94AD06D813C5 +:1039E00002C081E006C00150110958F7C15010F71C +:1039F00080E0DF91CF911F910F91FF90EF9008959C +:103A0000CF93C82F8CE20E94D21C882321F08C2FE8 +:103A1000CF910C94D21C80E0CF910895CF930E9457 +:103A2000551E811102C00E943B1EC5E6C15049F0DF +:103A30000E94D3038FE39CE90197F1F700C00000D7 +:103A4000F5CF89E20E94001D811113C18AE20E9414 +:103A5000001D81110E943B1E85E00E94001D811106 +:103A60000E94B01C0E94601E8093DA0187E00E94D1 +:103A7000001D8823A9F18BE10E94001D882351F0CD +:103A80008091DA0181FB222720F991E0922790FBB7 +:103A900081F90EC08EE00E94001D882361F08091A4 +:103AA000DA0182FB222720F991E0922790FB82F92C +:103AB0008093DA0115C080E10E94001D9091DA0127 +:103AC000882341F093FB222720F981E0822780FBA5 +:103AD00093F904C0892F809580FB90F99093DA01C7 +:103AE0008091DA010E94641E0E94721E8093FA0186 +:103AF00080EE0E94001D882341F08091FA01982FEA +:103B0000909590FB80F98093FA0189E30E94001D53 +:103B1000882359F08091FA0181FB222720F991E056 +:103B2000922790FB81F98093FA0182EE0E94001D9A +:103B3000882359F08091FA0182FB222720F991E035 +:103B4000922790FB82F98093FA0186EE0E94001D75 +:103B5000882359F08091FA0183FB222720F991E014 +:103B6000922790FB83F98093FA0183EE0E94001D57 +:103B7000882359F08091FA0184FB222720F991E0F3 +:103B8000922790FB84F98093FA0185E30E94001D3F +:103B9000882359F08091FA0185FB222720F991E0D2 +:103BA000922790FB85F98093FA0181E30E94001D22 +:103BB000882359F08091FA0186FB222720F991E0B1 +:103BC000922790FB86F98093FA0181E10E94001D03 +:103BD000882359F08091FA0187FB222720F991E090 +:103BE000922790FB87F98093FA018091FA010E9455 +:103BF000761E8091FA0187FB882780F980930D015A +:103C000087E20E94001DC82F8EE10E94001D8111D5 +:103C1000C2608FE10E94001D8111C46080E20E9499 +:103C2000001D8111C86081E20E94001D8111C061E8 +:103C300082E20E94001D8111C06283E20E94001D89 +:103C40008111C06484E20E94001D882311F0C068C5 +:103C500002C0CC2329F08C2F0E946D1E6C2F03C054 +:103C60000E94691E682F70E080E090E0CF910C9474 +:103C7000FD18CF9108956DEE7EEF80E090E00E94F8 +:103C8000A72460E082E090E00E94952460E083E059 +:103C900090E00E94952460E084E090E00E949524EA +:103CA00060E085E090E00C94952480E090E00E9434 +:103CB0008F2421E08D3E9E4F09F020E0822F089551 +:103CC00082E090E00C948724682F82E090E00C94CE +:103CD000952483E090E00C948724682F83E090E0A3 +:103CE0000C94952484E090E00C948724682F84E061 +:103CF00090E00C9495248091E20180FF0BC06091CC +:103D0000130185E0689FB00111247595679575953D +:103D100067952BC081FF09C06091130185E0689F02 +:103D2000B00111247595679520C082FF07C060918E +:103D3000130185E0689FB001112417C09091E30141 +:103D40009923D1F060911201961788F72091130101 +:103D500085E0289F90011124929FA001939F500D10 +:103D6000112470E0CA010E9459246038710540F4A2 +:103D70006115710539F002C065E070E0862F089585 +:103D80008FE7089581E008958091E20180FF08C0E7 +:103D90006091110170E0759567957595679521C0E3 +:103DA00081FF06C06091110170E07595679519C09B +:103DB00082FF04C06091110170E010C09091E30196 +:103DC0009923C1F0609110019617A0F7809111011D +:103DD000899FC001112470E00E9459246038710548 +:103DE00028F46115710521F0862F08958FE7089555 +:103DF00081E0089561E070E0F4CF803F21F40E94FB +:103E00007B1E819504C0813F29F40E947B1E809314 +:103E1000E6010895823F21F40E947B1E819504C033 +:103E2000833F29F40E947B1E8093E5010895893F1A +:103E300019F40E94C41E05C08A3F31F40E94C41EBA +:103E400081958093E70108958B3F21F40E94C41E61 +:103E5000819504C08C3F29F40E94C41E8093E80120 +:103E60000895843F21F48091E401816017C0853F6B +:103E700021F48091E401826011C0863F21F4809199 +:103E8000E40184600BC0873F21F48091E4018860E5 +:103E900005C0883F31F48091E40180618093E401A2 +:103EA00008958D3F21F48091E20181600BC08E3F27 +:103EB00021F48091E201826005C08F3F29F4809156 +:103EC000E20184608093E2010895803F39F480919B +:103ED000E60187FF6CC01092E60169C0813F29F4BA +:103EE0008091E6011816BCF362C09091E501823F13 +:103EF00029F497FF5CC01092E50159C0833F19F483 +:103F00001916CCF354C0893F41F48091E70118168B +:103F10000CF04DC01092E7014AC08A3F29F480910D +:103F2000E70187FF44C0F6CF8B3F39F48091E80169 +:103F300087FF3DC01092E8013AC08C3F29F4809180 +:103F4000E8011816BCF333C0843F21F48091E401EA +:103F50008E7F17C0853F21F48091E4018D7F11C0D1 +:103F6000863F21F48091E4018B7F0BC0873F21F4D1 +:103F70008091E401877F05C0883F31F48091E4019E +:103F80008F7E8093E40113C08D3F21F48091E20184 +:103F90008E7F0BC08E3F21F48091E2018D7F05C0A2 +:103FA0008F3F29F48091E2018B7F8093E201809121 +:103FB000E50181110EC08091E60181110AC0809156 +:103FC000E701811106C08091E801811102C01092C1 +:103FD000E301089584EE91E00E94BB100E94551CFD +:103FE0009093E1018093E00108951F93CF93DF93B5 +:103FF0008091E0019091E1010E94611CAC019091DF +:10400000E301992321F02091140130E006C02091B2 +:1040100015018AE0289F900111244217530708F4E4 +:1040200086C08091E501C091E601D091E701109131 +:10403000E801811107C0C11176C0D11174C01111FE +:1040400072C075C09F3F19F09F5F9093E3011816EF +:1040500024F40E947B1E8093E5018091E50187FF97 +:1040600005C00E947B1E81958093E5011C1624F4F7 +:104070000E947B1E8093E6018091E60187FF05C0C8 +:104080000E947B1E81958093E6016091E501662385 +:1040900039F1C091E601CC2319F1772767FD7095BE +:1040A000872F972F0E946A2323E333E343E35FE3E1 +:1040B0000E94CE230E9437236093E5016C2F77275F +:1040C00067FD7095872F972F0E946A2323E333E3C0 +:1040D00043E35FE30E94CE230E9437236093E6010F +:1040E0001D1624F40E94C41E8093E7018091E7010D +:1040F00087FF05C00E94C41E81958093E7011116B9 +:1041000024F40E94C41E8093E8018091E80187FF97 +:1041100005C00E94C41E81958093E801DF91CF9174 +:104120001F910C94EA1F9F3F09F08ECF96CFDF912D +:10413000CF911F910895E4EEF1E085E0DF011D923B +:104140008A95E9F71092E3011092E2010895833015 +:1041500081F128F4813059F08230D1F00895853012 +:1041600009F449C0B8F1863009F456C00895809129 +:104170001501262F30E0280F311D2F3F310524F483 +:10418000680F6093150108958FEF809315010895CE +:1041900080911401262F30E0280F311D2F3F31056B +:1041A00024F4680F6093140108958FEF8093140135 +:1041B000089580911301262F30E0280F311D2F3FE5 +:1041C000310524F4680F6093130108958FEF8093F5 +:1041D0001301089580911201262F30E0280F311D20 +:1041E0002F3F310524F4680F6093120108958FEF7B +:1041F00080931201089580911101262F30E0280F3D +:10420000311D2F3F310524F4680F6093110108958B +:104210008FEF80931101089580911001262F30E0D7 +:10422000280F311D2F3F310524F4680F60931001D2 +:1042300008958FEF809310010895833011F128F4D1 +:10424000813049F0823091F00895853081F120F17C +:104250008630C1F1089580911501681720F4861BFE +:10426000809315010895109215010895809114010D +:10427000681720F4861B809314010895109214018E +:10428000089580911301681720F4861B8093130111 +:10429000089510921301089580911201681720F477 +:1042A000861B809312010895109212010895809147 +:1042B0001101681720F4861B809311010895109254 +:1042C0001101089580911001681720F4861B8093D6 +:1042D000100108951092100108950F931F938D31CE +:1042E00009F46BC008F03FC08E3009F47FC0C0F401 +:1042F000873009F469C068F4863009F0B1C0809154 +:10430000DA01817F8E7F8093DA0181E08093EA0178 +:10431000A8C0883009F4A2C08B3009F49FC0A0C0A7 +:10432000863109F49BC078F4803109F472C0813180 +:1043300009F096C00E943D1590910D0181E08927FA +:1043400080930D018BC0893109F488C08B3109F04D +:1043500087C08091DA0181FB222720F991E0922722 +:1043600090FB81F94CC0853309F470C048F4873262 +:1043700009F46CC008F459C0893209F467C070C0F0 +:10438000833438F48A3308F04EC0883309F466C0A9 +:1043900067C0833409F45AC0883409F061C00E94B0 +:1043A0003D150FEF13ED20E3015010402040E1F7E1 +:1043B00000C000000E94B01C51C00E94F1220E9467 +:1043C000A4100E949D094AC09091DA01892F80951E +:1043D000817080FB90F929F0966098609093DA01E3 +:1043E00040C0997F977F9093DA0138C08091DA01BD +:1043F00082FB222720F991E0922790FB82F980939B +:10440000DA01992359F18091DA0181608093DA0110 +:1044100025C08091DA0183FB222720F991E09227C1 +:1044200090FB83F9ECCF895301C08D5141E050E0FE +:1044300060E070E08A019B0104C0000F111F221F81 +:10444000331F8A95D2F7C901B80104C061E070E05A +:1044500080E090E00E94FD180E943D1581E001C0BF +:1044600080E01F910F91089580E0089580E0089505 +:10447000CF93C82F8091EA01813079F018F0823013 +:10448000E9F187C0E0910E01F0910F018081813147 +:1044900069F0823209F07FC009C0E0910E01F0910D +:1044A0000F018081813111F0823261F48C2F0E94E2 +:1044B0003422811104C08C2F0E946D211DC081E027 +:1044C00090E01AC08C2F0E943622811114C0C43192 +:1044D00079F048F4CB3079F0C03109F060C082E067 +:1044E0008093EA0108C0C93219F0C83321F057C0DF +:1044F0001092EA0154C081E0817053C0C93289F141 +:1045000018F5C43171F1A8F4C73009F046C08AE04B +:104510008093150194E19093140193E0909313011B +:104520008093120188E08093110188E2809310014A +:1045300034C0CE51C63088F5EC2FF0E0E65DFE4F7A +:1045400080818093E90129C0CE34E9F020F4CB3496 +:1045500021F56AE013C0C13579F0C235F1F461E0AC +:104560000DC08091E901882319F01092E90115C06E +:1045700081E08093EA0115C061E006C08091E90105 +:104580000E94A7200AC06AE08091E9010E941D21D3 +:1045900004C01092EA0180E004C081E002C080E023 +:1045A000ABCFCF910895E1E8F0E08081886080830F +:1045B0008081816080838FB7F89493E09093890025 +:1045C00090ED909388008FBF0895EFE6F0E0808132 +:1045D000826080830895EFE6F0E080818D7F8083A4 +:1045E0000895EFE6F0E0908182E0892780830895C6 +:1045F0001F920F920FB60F9211242F933F934F9358 +:104600005F936F937F938F939F93AF93BF93EF933A +:10461000FF938091EB019091EC0101969093EC0156 +:104620008093EB01811103C082E00E949D09E0911B +:10463000EC01E695E695F0E0EC53FA4FE4918091B9 +:10464000EB018E1303C080E00E949D09FF91EF9162 +:10465000BF91AF919F918F917F916F915F914F919A +:104660003F912F910F900FBE0F901F90189504D07F +:104670006894B1118DC0089570D088F09F5790F064 +:10468000B92F9927B751A0F0D1F0660F771F881F77 +:10469000991F1AF0BA95C9F712C0B13081F077D0DE +:1046A000B1E0089574C0672F782F8827B85F39F07C +:1046B000B93FCCF3869577956795B395D9F73EF4D6 +:1046C00090958095709561957F4F8F4F9F4F08957E +:1046D000E89409C097FB3EF490958095709561959C +:1046E0007F4F8F4F9F4F9923A9F0F92F96E9BB2752 +:1046F0009395F695879577956795B795F111F8CFCE +:10470000FAF4BB0F11F460FF1BC06F5F7F4F8F4F38 +:104710009F4F16C0882311F096E911C0772321F02E +:104720009EE8872F762F05C0662371F096E8862FC6 +:1047300070E060E02AF09A95660F771F881FDAF71D +:10474000880F9695879597F9089557FD9058440FCF +:10475000551F59F05F3F71F04795880F97FB991FE0 +:1047600061F09F3F79F0879508951216130614069D +:10477000551FF2CF4695F1DF08C01616170618062A +:10478000991FF1CF86957105610508940895E89405 +:10479000BB2766277727CB0197F908950BD078C000 +:1047A00069D028F06ED018F0952309F05AC05FC088 +:1047B0001124EECFCADFA0F3959FD1F3950F50E0FF +:1047C000551F629FF001729FBB27F00DB11D639FC3 +:1047D000AA27F00DB11DAA1F649F6627B00DA11D69 +:1047E000661F829F2227B00DA11D621F739FB00D0F +:1047F000A11D621F839FA00D611D221F749F33277F +:10480000A00D611D231F849F600D211D822F762F17 +:104810006A2F11249F5750408AF0E1F088234AF014 +:10482000EE0FFF1FBB1F661F771F881F9150504060 +:10483000A9F79E3F510570F014C0AACF5F3FECF37B +:10484000983EDCF3869577956795B795F795E7954C +:104850009F5FC1F7FE2B880F911D9695879597F95D +:10486000089597F99F6780E870E060E008959FEFF2 +:1048700080EC089500240A941616170618060906F7 +:10488000089500240A9412161306140605060895C6 +:10489000092E0394000C11F4882352F0BB0F40F44E +:1048A000BF2B11F460FF04C06F5F7F4F8F4F9F4F8E +:1048B000089597FB072E16F4009407D077FD09D0D2 +:1048C0000E94732407FC05D03EF4909581959F4F7C +:1048D0000895709561957F4F0895EE0FFF1F059025 +:1048E000F491E02D0994AA1BBB1B51E107C0AA1F3C +:1048F000BB1FA617B70710F0A61BB70B881F991F81 +:104900005A95A9F780959095BC01CD010895F99924 +:10491000FECF92BD81BDF89A992780B50895A8E190 +:10492000B0E042E050E00C94AF24262FF999FECF7E +:1049300092BD81BDF89A019700B4021639F01FBAF2 +:1049400020BD0FB6F894FA9AF99A0FBE0895019611 +:10495000272F0E9496240C949524DC01CB01FC01A6 +:10496000F999FECF06C0F2BDE1BDF89A319600B4C8 +:0E4970000D9241505040B8F70895F894FFCFD3 +:10497E0002209F092D0A0A0AD609A2090101C701C0 +:10498E0028080A03140A3F4D3639850538050205F5 +:10499E00C9045C0475048E04A70401020304050611 +:0449AE0007080900ED +:00000001FF diff --git a/keyboards/ergodox_ez/keymaps/mpiechotka/keymap.c b/keyboards/ergodox_ez/keymaps/mpiechotka/keymap.c new file mode 100644 index 0000000000..5bfef59955 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/mpiechotka/keymap.c @@ -0,0 +1,276 @@ +#include "ergodox_ez.h" +#include "debug.h" +#include "action_layer.h" +#include "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 | ' | + * |--------+------+------+------+------+------| = | | - |------+------+------+------+------+--------| + * | 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, KC_EQL, + 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, + KC_MINS, 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 | ' | + * |--------+------+------+------+------+------| = | | - |------+------+------+------+------+--------| + * | 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, KC_EQL, + 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, + KC_MINS, 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); + } + break; + case PC1: + if (!record->event.pressed) { + return MACRO(T(SLCK), W(50), T(SLCK), W(50), T(1), W(50), T(ENT), END); + } + break; + case PC2: + if (!record->event.pressed) { + return MACRO(T(SLCK), W(50), T(SLCK), W(50), T(2), W(50), T(ENT), END); + } + break; + case PC3: + if (!record->event.pressed) { + return MACRO(T(SLCK), W(50), T(SLCK), W(50), T(3), W(50), T(ENT), END); + } + break; + case PC4: + if (!record->event.pressed) { + return MACRO(T(SLCK), W(50), T(SLCK), W(50), T(4), W(50), T(ENT), 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 SYMB: + ergodox_right_led_1_on(); + break; + case MACR: + ergodox_right_led_2_on(); + break; + default: + // none + break; + } +}; diff --git a/keyboards/ergodox_ez/keymaps/mpiechotka/readme.md b/keyboards/ergodox_ez/keymaps/mpiechotka/readme.md new file mode 100644 index 0000000000..785400d1d2 --- /dev/null +++ b/keyboards/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/keyboards/ergodox_ez/keymaps/msc/compiled.hex b/keyboards/ergodox_ez/keymaps/msc/compiled.hex new file mode 100644 index 0000000000..b30b84d293 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/msc/compiled.hex @@ -0,0 +1,1158 @@ +:100000000C947A020C94BE020C94BE020C94BE02B4 +:100010000C94BE020C94BE020C94BE020C94BE0260 +:100020000C94BE020C94BE020C94620D0C94340E1F +:100030000C94BE020C94BE020C94BE020C94BE0240 +:100040000C94BE020C943E220C94BE020C94BE0290 +:100050000C94BE020C94D11B0C94BE020C94BE02F4 +:100060000C94BE020C94BE020C94BE020C94BE0210 +:100070000C94BE020C94BE020C94BE020C94BE0200 +:100080000C94BE020C94BE020C94BE020C94BE02F0 +:100090000C94BE020C94BE020C94BE020C94BE02E0 +:1000A0000C94BE020C94BE020C94BE02A10EC30EB0 +:1000B000B10FC30EB10F080F2B0FB10F800F930FAD +:1000C0006212621291129112C712E71218141814D8 +:1000D000F2121814A213A2130914181418141214EB +:1000E000AF13AF13AF13AF13AF13AF13AF13AF1300 +:1000F000AF13AF13AF13AF13AF13AF13AF13AF13F0 +:10010000C113CE13D513DC13E6130000F0A12E00AB +:100110004C002A00E100E30000001E00140004006F +:100120001D71E2004D001F001A0016001B00E104C3 +:100130002A00200008000700060050002C002100C3 +:100140001500090019004F004A00220017000A009C +:10015000050000006574500001540000007F00009D +:10016000E3004F000154000000770000E20023008C +:100170001C000B00110000002971240018000D0064 +:10018000100050004B0025000C000E0036005100FE +:100190002800260012000F00370052002B00270015 +:1001A0001300330038714F004E002D0031003478B9 +:1001B000E5000254000001000100010001000100FF +:1001C00000003A001E0220022202010001003B0052 +:1001D0001F0221022302010001003C002F0226021F +:1001E0002F00010001003D00300227023000010015 +:1001F00001003E003102350035020000010001001F +:1002000001000000010000000100010001000000E9 +:100210000100000001003F005200510024020000D4 +:1002200001004000240021001E00010001004100E7 +:10023000250022001F003700010042002600230095 +:10024000200027000100430025022E0231002E006D +:100250000100440045000100010001000000010010 +:100260000100010001000100000001000100010087 +:1002700001000100010001000100F2000100010085 +:10028000F5000100F000F10001000100F4000100A0 +:100290000100F30001000100010001000100010064 +:1002A0000100000001000100010000000100000049 +:1002B0000100010001000000010000000100010038 +:1002C0000100010001000000010001000100010027 +:1002D000A800AC0001000100010001000100AA001B +:1002E000B6000100010001000100A90001000100A9 +:1002F000010001000100AB00010001000100AE009F +:1003000001000100000016034500720067006F0045 +:1003100044006F007800200045005A0000001603DA +:100320004500720067006F0044006F0078002000F5 +:1003300045005A0000000403090409026D0004018D +:1003400000A0FA09040000010301010009211101C4 +:100350000001223F000705810308000A090401008B +:100360000103010200092111010001224D000705CE +:10037000820308000A0904020001030000000921A9 +:10038000110100012236000705830308000A090451 +:1003900003000103000000092111010001223900BE +:1003A000070584031000011201100100000008ED90 +:1003B000FE071301000102000105010906A1010564 +:1003C0000719E029E7150025019508750181020547 +:1003D000081901290595057501910295017503918B +:1003E0000105071900297715002501957875018108 +:1003F00002C005010980A101850216010026B7008F +:100400001A01002AB700751095018100C0050C097A +:1004100001A1018503160100269C021A01002A9CF5 +:1004200002751095018100C005010902A1010901B1 +:10043000A10005091901290515002501950575017A +:10044000810295017503810105010930093115818A +:10045000257F95027508810609381581257F95014C +:1004600075088106050C0A38021581257F950175EE +:10047000088106C0C005010906A101050719E02988 +:10048000E715002501950875018102950175088120 +:100490000105081901290595057501910295017558 +:1004A0000391010507190029FF150025FF95067521 +:1004B000088100C0000000000000000000000001F2 +:1004C0000204060A0F17202C3A4A5D71879DB3C7B4 +:1004D000DAE9F5FCFFFCF5E9DAC7B39D87715D4AFF +:1004E0003A2C20170F0A0604020100000000000049 +:1004F0000000000011241FBECFEFDAE0DEBFCDBF49 +:1005000004B603FE24C08091FB019091FC01A091F0 +:10051000FD01B091FE018730904BA740B04BB9F47C +:100520001092FB011092FC011092FD011092FE014D +:1005300014BE84B7877F84BF88E10FB6F894809398 +:100540006000109260000FBEE0E0FFE3099511E04B +:10055000A0E0B1E0EAE0F8E402C005900D92A43317 +:10056000B107D9F711E0A4E3B1E001C01D92AB3FA0 +:10057000B107E1F70E94A60A0C9403240C94000032 +:100580001092B9008AE08093B800089594EA90939D +:10059000BC009091BC0097FFFCCF9091B900987F70 +:1005A000983021F0903111F081E008958093BB00E4 +:1005B00084E88093BC008091BC0087FFFCCF8091D1 +:1005C000B900887F883111F0803471F780E0089598 +:1005D00084E98093BC008091BC0084FDFCCF089529 +:1005E0008093BB0084E88093BC008091BC0087FFAF +:1005F000FCCF9091B900987F81E0983209F480E0B7 +:10060000089584E88093BC008091BC0087FFFCCFF4 +:100610008091BB00089580910101811115C080E493 +:100620000E94C6028093010181110CC082E10E94E8 +:10063000F00280930101811105C08FEF0E94F0024A +:10064000809301010E94E80284B1807F84B985B162 +:10065000807F85B98AB1837F8AB98BB1837F8BB95B +:100660003E98469808950E94C604809301010E9416 +:100670000B0380B38C7080BB81B3836F81BBA5E318 +:10068000B1E0E3E4F1E08EE08E0F11921D928E1343 +:10069000FCCF0C94B004BF92CF92DF92EF92FF9206 +:1006A0000F931F93CF93DF9380910101882379F0FB +:1006B000809134018F5F80933401811108C00E94C2 +:1006C000C60480930101811102C00E94580405E311 +:1006D00011E0C0E0D0E0DD24D39482E0C82EEE2407 +:1006E000E394F12CC730D10500F58091010181110F +:1006F00064C080E40E94C60280930101811112C08F +:1007000082E10E94F0028093010181110BC0C701B8 +:100710000C2E01C0880F0A94EAF780950E94F0021F +:10072000809301010E94E80248C0CA30A1F028F479 +:10073000C83059F0C93061F005C0CC3089F070F094 +:10074000CD3089F0209A289810C0219A29980DC0A0 +:10075000229A2A980AC0239A2B9807C0529A01C05D +:10076000539A5B9802C03E9A469890EA9A95F1F7A0 +:100770009FB1799902C082E001C080E091709D250F +:10078000982B7C9902C084E001C080E0892B7D9980 +:1007900002C038E001C030E0832B7E9902C020E126 +:1007A00001C020E0822B9FB19095991F9927991F36 +:1007B0009295990F907E892B0FC080910101811134 +:1007C00049C080E40E94C60280930101882379F128 +:1007D000B12C0E94E8028B2DF8019081981719F036 +:1007E0008083C09200010E940B0321960F5F1F4F70 +:1007F000CE30D10509F076CF80910001882361F1D8 +:10080000815080930001882339F08FE99FE00197A0 +:10081000F1F700C0000020C0A3E4B1E0E5E3F1E09F +:10082000CF01825F91919D938E13FCCF15C083E120 +:100830000E94F002809301018111CACF81E40E94DD +:10084000C602809301018111C3CF0E940103B82E1B +:10085000B094BFCF80E0C0CF0E94560481E0DF910A +:10086000CF911F910F91FF90EF90DF90CF90BF90AD +:100870000895E82FF0E0ED5BFE4F80810895089524 +:100880000F931F93CF93DF93C3E4D1E010E00C2FBD +:10089000025F899190E00E94F71A180F0C13F9CFAC +:1008A000812FDF91CF911F910F9108950C94260510 +:1008B00056985E9825982D9826982E9827982F98C8 +:1008C0008FEF90E0909389008093880090938B0045 +:1008D00080938A0090938D0080938C00259A2D9AA6 +:1008E0002FEF80E792E0215080409040E1F700C078 +:1008F0000000269A2E9A2FEF80E792E02150804048 +:100900009040E1F700C00000279A2F9A2FEF80E770 +:1009100092E0215080409040E1F700C0000025980F +:100920002D982FEF80E792E0215080409040E1F732 +:1009300000C0000026982E982FEF80E792E021500B +:1009400080409040E1F700C0000027982F9856980B +:100950005E9825982D9826982E9827982F98089578 +:1009600089EA8093800089E08093810024982C9804 +:100970003F988AB18F748AB96E98479A8BB1806B11 +:100980008BB9769A0E9458040C94250580E28093D6 +:1009900001018091510181110EC00E94C00281E0CD +:1009A000809351012FEF83ED90E3215080409040E0 +:1009B000E1F700C0000080E40E94C60280930101BC +:1009C00081112EC00E94F00280930101811128C084 +:1009D0000E94F00280930101811122C08FE30E94E6 +:1009E000F0028093010181111BC00E94E80280E4A3 +:1009F0000E94C60280930101811112C08CE00E9406 +:100A0000F0028093010181110BC00E94F0028093DB +:100A10000101811105C08FE30E94F0028093010162 +:100A20000E94E80280910101089561110BC0FC0150 +:100A30008281882321F085EE0E94061103C085EE95 +:100A40000E94CE1180E090E0089508956091BD016C +:100A50007091BE018091BF019091C0010E94031B63 +:100A600056985E9825982D9826982E9827982F9816 +:100A7000813019F0823021F00895259A2D9A089539 +:100A8000269A2E9A089581E0089581E008950C94A5 +:100A9000450508950F931F93CF93DF938C01FC01BD +:100AA000C081D181CE010E947C19BE010E94F30554 +:100AB000EC01B8010E944705882309F48DC0F801B4 +:100AC0008281882309F44AC080915D0181111FC091 +:100AD000C431F0E5DF0709F051C00E94490581E00B +:100AE00080935D010E949B1B90935C0180935B014E +:100AF0001092540110925601109255011092580113 +:100B00001092570110925A011092590165C08091BC +:100B10005B0190915C010E94A71B883C910570F4D9 +:100B200080915401E82FF0E0EE0FFF1FEB5AFE4FCB +:100B3000D183C0838F5F809354014EC0C43880E559 +:100B4000D80721F0C538D04501F13AC0F8018281BB +:100B5000882341F01092520182E01EC0C438E0E5C3 +:100B6000DE0759F580915201811106C086E20E948C +:100B7000061186E20E94CE1182E01CC0C438F0E566 +:100B8000DF0741F3C538D045D9F4F80182818823C5 +:100B900031F01092530180E20E941D121DC080911D +:100BA0005301811106C087E20E94061187E20E946C +:100BB000CE1180E20E9424120FC0C538D04529F31F +:100BC00081E08093520180935301C801DF91CF915E +:100BD0001F910F910C94430580E0DF91CF911F91FD +:100BE0000F910895089596E0799FF001112494E5FE +:100BF000899FE00DF11D1124E60FF11DEE0FFF1F7F +:100C0000E25FFE4F859194910895880F991FFC0132 +:100C1000E657F040859194910895880F991FFC0143 +:100C2000E65FFE4F8591949108950F931F93CF93A4 +:100C3000DF93EC01811520E3920750F5C11580E2A6 +:100C4000D80708F0C3C0CB3BD10590F4C83AD10512 +:100C500008F06AC0C53AD10508F05BC0C430D105C0 +:100C600008F0D0C1219709F0CAC101E010E00AC222 +:100C7000CF3FD10511F008F0C5C1C03FD10508F044 +:100C8000A2C0CE01805E9109089708F4BBC1B7C12C +:100C9000C13090E5D90709F4A2C020F5C0318FE436 +:100CA000D80770F4C11590E4D90708F094C0C115B5 +:100CB00021E3D20708F0A3C1DD278E01106CE2C149 +:100CC000C115D04509F09BC10E9483148FEF94E3B6 +:100CD0002CE0815090402040E1F700C000000E94CD +:100CE000F61BD0C1C11597E5D90758F4C03121E5ED +:100CF000D20708F01CC1C43180E5D80708F475C0DC +:100D00007EC1CE0190578115904108F078C1DF7007 +:100D100073C1C53AD10509F477C1C63AD10509F0C6 +:100D200076C102E810E4AEC1C83AD10509F472C137 +:100D3000C93AD10509F471C1CA3AD10509F470C1A3 +:100D4000CB3AD10509F46FC1CC3AD10509F46EC193 +:100D5000CD3AD10509F46DC1C03BD10509F46CC190 +:100D6000CE3AD10509F46BC1CF3AD10509F46AC175 +:100D7000C13BD10509F469C1C23BD10509F468C181 +:100D8000C33BD10509F467C1C43BD10509F466C171 +:100D9000C53BD10509F465C1C63BD10509F464C161 +:100DA000C73BD10509F463C1C83BD10509F462C151 +:100DB000C93BD10509F461C1CA3BD10509F460C141 +:100DC00000E014E45FC18E0110655CC1CE019F702C +:100DD0000E940D0658C1DF708E01106A53C18091C8 +:100DE000DA0181608093DA014DC10E949B1D81115F +:100DF00002C00E94811D0E94B81D90E09093FB01EB +:100E00008093FA01C23080E5D80721F48091FA017D +:100E1000816086C0C43090E5D90721F48091FA0141 +:100E200082607EC0C63020E5D20721F48091FA01AD +:100E3000846076C0C83080E5D80719F48091FA0143 +:100E400027C0CA3090E5D90721F48091FA0180616A +:100E500067C0CC3020E5D20721F48091FA0180628E +:100E60005FC0CE3080E5D80721F48091FA0180641C +:100E700057C0C03190E5D90721F48091FA0180680C +:100E80004FC0C23120E5D20729F48091FA01846075 +:100E9000886046C0C33080E5D80721F48091FA010C +:100EA0008E7F3EC0C53090E5D90721F48091FA01CC +:100EB0008D7F36C0C73020E5D20721F48091FA013A +:100EC0008B7F2EC0C93080E5D80719F48091FA01D4 +:100ED00026C0CB3090E5D90721F48091FA018F7EAE +:100EE0001FC0CD3020E5D20721F48091FA018F7D1B +:100EF00017C0CF3080E5D80721F48091FA018F7BAD +:100F00000FC0C13190E5D90721F48091FA018F77A4 +:100F100007C0C331D04531F48091FA018B7F877FC0 +:100F20008093FA018091FA010E94BC1DABC08D2F05 +:100F300099278F70992781309105D9F49E012370EC +:100F4000332702C0880F991F2A95E2F79C688E010B +:100F500044E0000F111F4A95E1F700271370802B22 +:100F6000912B53E0CC0FDD1F5A95E1F7C076DD27BA +:100F70002FC08230910531F4DC2FCC278E01016F18 +:100F8000106A80C08330910569F4CE01837099277F +:100F900001E010E002C0000F111F8A95E2F7C801BE +:100FA0009C680FC084309105B9F4CE0183709927F5 +:100FB00001E010E002C0000F111F8A95E2F7C8019E +:100FC0009A6823E0CC0FDD1F2A95E1F7C07ED77029 +:100FD0008C010C2B1D2B56C08530910531F4DC2F74 +:100FE000CC278E01046F106A4DC0069709F04AC0E5 +:100FF000CF71DD27DC2FCC278E01106243C000E0CB +:1010000010E040C08E013EC001E810E43BC003E8A0 +:1010100010E438C002EE14E435C009EE14E432C026 +:101020000AEE14E42FC005EB14E42CC006EB14E424 +:1010300029C007EB14E426C00CEC14E423C00DEC2B +:1010400014E420C003E815E41DC00AE815E41AC042 +:1010500002E915E417C004E915E414C001E216E43E +:1010600011C003E216E40EC004E216E40BC005E270 +:1010700016E408C006E216E405C007E216E402C062 +:101080000AE216E4C801DF91CF911F910F910895F4 +:1010900096E0799FF001112494E5899FE00DF11D00 +:1010A0001124E60FF11DEE0FFF1FE25FFE4F859149 +:1010B0009491803E9105E0F4803C910558F5813390 +:1010C000910509F46FC048F48932910509F463C0B1 +:1010D0008A32910509F46DC072C089339105E9F037 +:1010E00082389105D1F08533910509F44DC067C070 +:1010F000833E910581F138F4803E9105B9F0823E3E +:101100009105D9F05CC0863E910561F1873E91055D +:10111000A1F155C00E94050608952091FA0120FD15 +:1011200002C021FF4CC080EE90E049C08091FA01DE +:1011300080FFF9CF89E390E042C08091FA0182FFFD +:101140000EC08091FA0184FF03C080E090E037C0B8 +:1011500083EE90E034C08091FA0182FFF2CF82EEFC +:1011600090E02DC08091FA0183FF0BC08091FA01BD +:1011700084FDEBCF87EE90E022C08091FA0183FFDF +:10118000F5CF86EE90E01BC08091FA0185FF07C085 +:1011900089E290E014C08091FA0185FFF9CF85E3E0 +:1011A00090E00DC08091FA0186FF07C08AE290E0CE +:1011B00006C08091FA0186FFF9CF81E390E00E949A +:1011C0001506089508950C94E20880916E01089523 +:1011D000CF93DF9300D01F92CDB7DEB79C018091F3 +:1011E000F101843019F593E099833B832A8390932E +:1011F000E9008FEF9091E800815095FD06C095EDD4 +:101200009A95F1F700008111F5CF8091E80085FFF4 +:101210000DC040E050E063E070E0CE0101960E9416 +:10122000520B8091E8008E778093E8000F900F902A +:101230000F90DF91CF910895CF93DF9300D01F924D +:10124000CDB7DEB72091F101243021F522E02983CA +:101250009B838A8383E08093E9008FEF9091E8007D +:10126000815095FD06C095ED9A95F1F7000081112A +:10127000F5CF8091E80085FF0DC040E050E063E0CD +:1012800070E0CE0101960E94520B8091E8008E77AB +:101290008093E8000F900F900F90DF91CF91089509 +:1012A0002091F1012430F1F422E02093E9002FEFA6 +:1012B0003091E800215035FD06C035ED3A95F1F743 +:1012C00000002111F5CF2091E80025FF0BC040E080 +:1012D00050E065E070E00E94520B8091E8008E774C +:1012E0008093E8000895CF93DF93EC019091F10192 +:1012F000943009F046C080910C018823D9F0809188 +:101300000D018823B9F09093E9008FEF9091E800E8 +:10131000815095FD06C095E19A95F1F70000811185 +:10132000F5CF8091E80085FF2CC040E050E060E1FF +:1013300070E017C081E08093E9008FEF9091E800A2 +:10134000815095FD06C095ED9A95F1F70000811149 +:10135000F5CF8091E80085FF14C040E050E068E0E0 +:1013600070E0CE010E94520B8091E8008E7780934E +:10137000E80080E1FE01AEE5B1E001900D928A95B2 +:10138000E1F7DF91CF9108958091F001811109C0BB +:101390000E94E70C0E94440D8091E20084608093DB +:1013A000E20008951092F001089508950C942B2204 +:1013B0000E948C1B0E9431220E94EA0F0C94E308C9 +:1013C00042E061EC81E00E94610C42E061EC82E06D +:1013D0000E94610C42E061EC83E00E94610C42E1FA +:1013E00061EC84E00C94610C8091F301833009F48A +:1013F00055C030F4813071F0823009F48EC0089508 +:101400008A3009F47AC08B3009F460C0893009F061 +:101410009CC020C08091F201813A09F096C0809171 +:10142000E800877F8093E8008091F6019091F701B2 +:10143000892B21F460E18EE591E003C060E080E05B +:1014400090E070E00E949D0B8091E8008B77809384 +:10145000E80008958091F201813209F076C0809110 +:10146000F6019091F701009719F0039709F06DC00C +:101470008091E800877F8093E8008091E80082FDFA +:1014800005C08091F1018111F8CF5FC08091F1001A +:1014900080936E018091E8008B7753C08091F201B8 +:1014A000813A09F052C08091F6019091F701892BA1 +:1014B00009F04BC08091E800877F8093E80080911D +:1014C000E80080FFFCCF80910C0136C08091F201D2 +:1014D0008132D9F58091F6019091F701892BA9F518 +:1014E0008091E800877F8093E8000E94960C8091AD +:1014F000F40180930C010C9483148091F2018132E9 +:1015000021F58091E800877F8093E8000E94960C87 +:101510008091F50180936F0108958091F201813AE5 +:10152000A1F48091E800877F8093E8008091E80033 +:1015300080FFFCCF80916F018093F1008091E800E3 +:101540008E778093E8000C94960C089584B7877F7B +:1015500084BF88E10FB6F894809360001092600019 +:101560000FBE90E080E80FB6F894809361009093EE +:1015700061000FBE0E9439100E94E70C0E94440DCA +:101580008091E20084608093E20078940E94CA0F08 +:101590000E943B1082E091E00E94E50F0E94192218 +:1015A0008091F101853069F40E94531B8091EF0115 +:1015B0008823B1F30E947E1B882391F30E943C0B89 +:1015C000EFCF0E944110ECCF292F33272330310574 +:1015D000C9F064F42130310581F02230310509F081 +:1015E00043C08DE690E02AE333E042C0213231056A +:1015F000F1F02232310541F137C082E190E027EA73 +:1016000033E036C099278130910541F08230910551 +:1016100041F0892B49F5E6E3F3E005C0EEE1F3E0A4 +:1016200002C0E6E0F3E0849190E09F0121C06430C5 +:10163000D8F4E62FF0E0EE0FFF1FEE5DFE4F2081A5 +:10164000318189E090E014C0643070F470E0FB01F7 +:10165000EE0FFF1FE65EFE4F20813181FB01EA5E47 +:10166000FE4F808190E004C080E090E020E030E018 +:10167000FA0131832083089580E189BD82E189BD2B +:1016800009B400FEFDCF8091D8008F7D8093D800F3 +:101690008091E00082608093E0008091E00081FD15 +:1016A000FCCF0895CF92DF92EF92FF920F931F939A +:1016B000CF93DF93EC018B016A010E94B50C81117D +:1016C00033C0C114D10439F0F60180819181081B27 +:1016D000190BC80FD91FE12CF12C0115110519F1B7 +:1016E0008091E80085FD16C08091E8008E77809398 +:1016F000E800C114D10449F0F60180819181E80E1F +:10170000F91EF182E08285E00FC00E94B50C8823AB +:1017100021F30AC089918093F10001501109FFEF74 +:10172000EF1AFF0ADACF80E0DF91CF911F910F917E +:10173000FF90EF90DF90CF9008952091F8013091C5 +:10174000F9012617370748F06115710539F4209122 +:10175000E8002E772093E80001C0B90140E0611550 +:101760007105A9F12091F101222309F443C025302C +:1017700009F442C02091E80023FD40C02091E80018 +:1017800022FD32C02091E80020FFE9CF4091F30014 +:101790002091F20030E0342BFC01CF01611571057E +:1017A00059F02830310540F481918093F100615067 +:1017B00071092F5F3F4FF1CF41E02830310509F02B +:1017C00040E02091E8002E772093E800C8CF411137 +:1017D000C9CF0AC08091F101882361F0853061F0A2 +:1017E0008091E80083FD0AC08091E80082FFF2CF7B +:1017F00080E0089582E0089583E0089581E00895EF +:101800002091F8013091F9012617370748F061154A +:10181000710539F42091E8002E772093E80001C08B +:10182000B901FC0120E06115710591F18091F10190 +:10183000882309F440C0853009F43FC08091E80056 +:1018400083FD3DC08091E80082FD2FC08091E800BB +:1018500080FFE9CF2091F3008091F20090E0922B7D +:101860006115710559F08830910540F42491209359 +:10187000F1003196615071090196F2CF21E008978D +:1018800009F020E08091E8008E778093E800CBCFCC +:101890002111CCCF0AC08091F101882361F08530FD +:1018A00061F08091E80083FD0AC08091E80082FF2A +:1018B000F2CF80E0089582E0089583E0089581E00A +:1018C0000895982F973058F59093E900981739F0BC +:1018D0007091EC002091ED005091F00003C0242F96 +:1018E000762F50E021FF19C03091EB003E7F3093FE +:1018F000EB003091ED003D7F3093ED003091EB0037 +:1019000031603093EB007093EC002093ED00509326 +:10191000F0002091EE0027FF07C09F5FD3CF8F70AC +:101920008093E90081E0089580E008958091F201BC +:1019300087FF11C08091E80082FD05C08091F10110 +:101940008111F8CF11C08091E8008B770BC0809196 +:10195000F101882349F08091E80080FFF8CF809161 +:10196000E8008E778093E80008952091E40030919C +:10197000E50095E64091EC00842F817040FF22C085 +:101980008091E80080FD1CC08091F101882391F0D6 +:10199000853091F08091EB0085FD10C04091E4000E +:1019A0005091E5004217530729F39A01915011F71E +:1019B00084E0089582E0089583E0089581E0089529 +:1019C00080E008954091E80042FFDECF08950E9434 +:1019D000550D0E945D0DE0EEF0E080818160808316 +:1019E000E8EDF0E080818F77808319BCA7EDB0E04F +:1019F0008C918E7F8C9380818F7E80831092F001FA +:101A000008950F931F93CF93DF930E94550D0E946B +:101A10005D0DC8EDD0E088818F77888388818068EC +:101A2000888388818F7D888319BC1092F101109280 +:101A3000ED011092EF011092EE0100EE10E0F801BE +:101A400080818B7F808388818160888342E060E031 +:101A500080E00E94610CE1EEF0E080818E7F808367 +:101A6000E2EEF0E080818160808380818860808305 +:101A7000F80180818E7F8083888180618883DF91F7 +:101A8000CF911F910F910895E8EDF0E080818F7E56 +:101A90008083E7EDF0E080818160808384E082BF15 +:101AA00081E08093F0010C94010DE8EDF0E080817D +:101AB0008E7F80831092E20008951092DA001092D7 +:101AC000E10008951F920F920FB60F9211242F93E9 +:101AD0003F934F935F936F937F938F939F93AF93B6 +:101AE000BF93EF93FF938091E10082FF0BC0809141 +:101AF000E20082FF07C08091E1008B7F8093E100CC +:101B00000E94C90F8091DA0080FF1FC08091D80029 +:101B100080FF1BC08091DA008E7F8093DA00809175 +:101B2000D90080FF0DC080E189BD82E189BD09B483 +:101B300000FEFDCF81E08093F1010E94C40905C041 +:101B400019BC1092F1010E94D2098091E10080FF3E +:101B500019C08091E20080FF15C08091E2008E7F65 +:101B60008093E2008091E20080618093E2008091A6 +:101B7000D80080628093D80019BC85E08093F10181 +:101B80000E94D6098091E10084FF30C08091E2007C +:101B900084FF2CC080E189BD82E189BD09B400FECB +:101BA000FDCF8091D8008F7D8093D8008091E10097 +:101BB0008F7E8093E1008091E2008F7E8093E2002F +:101BC0008091E20081608093E2008091ED018823A2 +:101BD00011F084E007C08091E30087FD02C081E03E +:101BE00001C083E08093F1010E94D8098091E10057 +:101BF00083FF29C08091E20083FF25C08091E1002E +:101C0000877F8093E10082E08093F1011092ED01E3 +:101C10008091E1008E7F8093E1008091E2008E7FD1 +:101C20008093E2008091E20080618093E20042E0D4 +:101C300060E080E00E94610C8091F00088608093F9 +:101C4000F0000E94D509FF91EF91BF91AF919F9154 +:101C50008F917F916F915F914F913F912F910F9055 +:101C60000FBE0F901F9018951F920F920FB60F92F4 +:101C700011242F933F934F935F936F937F938F9391 +:101C80009F93AF93BF93CF93DF93EF93FF93C09155 +:101C9000E900CF708091EC00D82FD17080FDD0E8A2 +:101CA0001092E9008091F000877F8093F000789493 +:101CB0000E94780E1092E9008091F0008860809375 +:101CC000F000CD2BCF70C093E900FF91EF91DF9131 +:101CD000CF91BF91AF919F918F917F916F915F91C4 +:101CE0004F913F912F910F900FBE0F901F9018951D +:101CF0001F93CF93DF93CDB7DEB7AA970FB6F894B3 +:101D0000DEBF0FBECDBFE2EFF1E088E08E0F909115 +:101D1000F10091938E13FBCF0E94F4098091E800AB +:101D200083FF1FC18091F2019091F301492F50E090 +:101D30004A30510508F015C1FA01EA5AFF4F0C94D8 +:101D4000B323803881F0823809F00BC18091F6010D +:101D50008F708093E9008091EB0085FB882780F9E4 +:101D60001092E90006C08091EE019091EF0191116F +:101D700082609091E800977F9093E8008093F10053 +:101D80001092F100C8C0282F2D7F09F0EAC08823E7 +:101D900019F0823061F0E5C08091F401813009F0E2 +:101DA000E0C0933009F080E08093EF012BC0809178 +:101DB000F401811127C08091F6018F7009F4D1C020 +:101DC0008093E9002091EB0020FF1CC0933021F4A8 +:101DD0008091EB00806214C09091EB009061909331 +:101DE000EB0021E030E0A90102C0440F551F8A95A5 +:101DF000E2F74093EA001092EA008091EB008860DD +:101E00008093EB001092E9008091E800877F86C004 +:101E10008111A7C01091F4011F778091E3008078B1 +:101E2000812B8093E3008091E800877F8093E80016 +:101E30000E94960C8091E80080FFFCCF8091E30027 +:101E400080688093E300111102C082E001C083E04A +:101E50008093F10186C08058823008F082C0809162 +:101E6000F4019091F5018C3D53E0950779F583E0FD +:101E70008A838AE289834FB7F894DE01139620E0C3 +:101E80003EE051E2E32FF0E050935700E49120FF51 +:101E900003C0E295EF703F5FEF708E2F90E0EA3065 +:101EA00010F0C79601C0C0968D939D932F5F24318B +:101EB00049F74FBF8091E800877F8093E8006AE28E +:101EC00070E0CE0101960E949D0B14C0AE014F5FE1 +:101ED0005F4F6091F6010E94E40ABC01009709F48B +:101EE00040C09091E800977F9093E80089819A81A3 +:101EF0000E94000C8091E8008B778093E80031C04D +:101F0000803879F58091E800877F8093E8008091A0 +:101F1000ED018093F1008091E8008E778093E800D6 +:101F20000E94960C1EC081111CC09091F401923049 +:101F3000C0F48091E800877F8093E8009093ED01E2 +:101F40000E94960C8091ED01811106C08091E30002 +:101F500087FD02C081E001C084E08093F1010E940E +:101F6000E0098091E80083FF0AC08091E800877F44 +:101F70008093E8008091EB0080628093EB00AA964A +:101F80000FB6F894DEBF0FBECDBFDF91CF911F918A +:101F900008950895CF938091F1018823A1F0C09115 +:101FA000E900CF709091EC00892F817090FD80E85E +:101FB000C82B1092E9008091E80083FD0E94780E02 +:101FC000CF70C093E900CF910895909375018093ED +:101FD00074010895E0917401F0917501309721F03A +:101FE0000190F081E02D099480E00895E091740162 +:101FF000F0917501309721F00280F381E02D099472 +:102000000895E0917401F0917501309721F00480FA +:10201000F581E02D099408952091720130917301AA +:102020008217930771F09093730180937201E0918E +:102030007401F0917501309721F00680F781E02D51 +:1020400009940895209170013091710182179307CE +:1020500071F09093710180937001E0917401F0919F +:102060007501309721F00084F185E02D09940895E1 +:1020700008950C9438100E94921B0E9433030C9414 +:10208000541C9F92AF92BF92CF92DF92EF92FF9239 +:102090000F931F93CF93DF9300D000D000D0CDB724 +:1020A000DEB70E944B030DE010E0AA24A394B12CEC +:1020B000902E802F0E943904980129583E4F6901C3 +:1020C000F901F080F826A1F40150110988F78FEF8B +:1020D00089838A831B820E949B1B8160782F9D834A +:1020E0008C8349815A816B818D810E94D8102FC0C9 +:1020F0009091DA0191FF04C08E830E943F048E818B +:1021000025E030E0A501022E01C0440F0A94EAF751 +:10211000E42E4F21C1F029839A828E2191E009F4A7 +:1021200090E09B830E949B1B8160782F9D838C8312 +:1021300049815A816B818D810E94D810F60180817E +:10214000E826E08204C021503109E0F6BDCF0E94AC +:102150003B1F109176010E94EA0F1817B9F00E94F8 +:10216000EA0F8093760126960FB6F894DEBF0FBE75 +:10217000CDBFDF91CF911F910F91FF90EF90DF9036 +:10218000CF90BF90AF909F900C94E30826960FB627 +:10219000F894DEBF0FBECDBFDF91CF911F910F919D +:1021A000FF90EF90DF90CF90BF90AF909F900895F9 +:1021B000CF93DF93CDB7DEB72B970FB6F894DEBF82 +:1021C0000FBECDBF4F83588769877A878B87DE0123 +:1021D000119686E0FD0111928A95E9F785E0FE01EE +:1021E000379601900D928A95E1F749815A816B816A +:1021F0007C818D819E810E9421172B960FB6F894C9 +:10220000DEBF0FBECDBFDF91CF910895CF9388235E +:1022100009F4C2C0C82F823859F40E94EA0F81FD28 +:10222000BBC089E30E94FB190E94C81A89E30CC055 +:10223000833879F40E94EA0F80FDAEC083E50E94E6 +:10224000FB190E94C81A83E50E943D1ACF910C9495 +:10225000C81A843859F40E94EA0F82FD9DC087E4B1 +:102260000E94FB190E94C81A87E4EECF8CEF8C0FF6 +:10227000813A48F48C2F0E947E2181118DC08C2FD1 +:102280000E94FB19E3CF80E28C0F883048F4C770BE +:1022900081E001C0880FCA95EAF70E94811AD6CF63 +:1022A0008BE58C0F833078F4C53A29F0C63A31F0CB +:1022B00083E890E005C081E890E002C082E890E009 +:1022C000CF910C940C1088E58C0F833108F064C01A +:1022D000C83A39F1C93A41F1CA3A49F1CB3A51F118 +:1022E000CC3A59F1CD3A61F1C03B69F1CE3A71F186 +:1022F000CF3A79F1C13B81F1C23B89F1C33B91F106 +:10230000C43B99F1C53BA1F1C63BA9F1C73BB1F173 +:10231000C83BB9F1C93BC1F1CA3BC9F180E090E0CB +:1023200038C082EE90E035C089EE90E032C08AEE8F +:1023300090E02FC085EB90E02CC086EB90E029C0A8 +:1023400087EB90E026C08CEC90E023C08DEC90E011 +:1023500020C083E891E01DC08AE891E01AC082E9BC +:1023600091E017C084E991E014C081E292E011C0CD +:1023700083E292E00EC084E292E00BC085E292E03C +:1023800008C086E292E005C087E292E002C08AE2DD +:1023900092E0CF910C942210CF910895882309F4F4 +:1023A0004BC0823859F40E94EA0F81FF45C089E38F +:1023B0000E94FB190E94C81A89E30CC0833871F48B +:1023C0000E94EA0F80FF38C083E50E94FB190E943B +:1023D000C81A83E50E943D1A0C94C81A843859F42F +:1023E0000E94EA0F82FF28C087E40E94FB190E9426 +:1023F000C81A87E4EFCF9CEF980F913A58F390E218 +:10240000980F983050F4877091E001C0990F8A9529 +:10241000EAF7892F0E94871ADFCF9BE5980F933048 +:1024200020F480E090E00C940C10885A833120F462 +:1024300080E090E00C9422100895882321F00E94FF +:10244000811A0C94C81A0895882321F00E94871AD3 +:102450000C94C81A08957F928F929F92AF92BF9268 +:10246000CF92DF92EF92FF920F931F93CF93DF9360 +:102470001F92CDB7DEB77C01C62E772EFC010581F9 +:1024800002950F70128111110E949E1A0E94F41978 +:10249000882379F0112369F080E28C0D883048F0B0 +:1024A00082E00E94DD190E94F41991E0D82ED9260D +:1024B00001C0D12CE72DE295EF70F0E0E05AFF4F1C +:1024C0000C94B323872D807F072D0F70882311F084 +:1024D0000295007F112389F0002309F490C180E266 +:1024E0008C0D883020F4802F0E94811A03C0802F29 +:1024F0000E94911A0E94C81A82C18C2D0E94CE118E +:10250000002309F495C180E28C0D883020F4802FDF +:102510000E94871A03C0802F0E94971A0E94C81A2F +:1025200087C1972D907F872D8F70903211F0829503 +:10253000807FCC2021F0F1E0CF16B1F01EC0112336 +:1025400049F0002309F414C1013009F011C10E94BF +:10255000B11A6EC1002319F0013009F469C18983F1 +:102560000E94B41A89810AC1112321F0023008F0B7 +:102570005FC1FEC001115CC101C1112321F0002324 +:1025800009F4F6C03CC1002309F4F8C03EC1872D10 +:1025900086958695837090E0009719F0019761F019 +:1025A00047C1112321F08C2D972D937002C080E03C +:1025B00090E00E940C103CC1112321F08C2D972D2E +:1025C000937002C080E090E00E94221031C18C2DF7 +:1025D000112319F00E94431E02C00E94AB1E0E94EC +:1025E000301F26C1872D837009F052C0111120C100 +:1025F0008C2D829586958770880F880F9C2D9F70F3 +:10260000892E912CA12CB12C082E04C0880C991C69 +:10261000AA1CBB1C0A94D2F7C4FE14C00FE010E041 +:1026200020E030E0B901A80104C0440F551F661F27 +:10263000771F8A95D2F7CB01BA0160957095809586 +:10264000909503C060E070E0CB01272D269526957C +:10265000237030E02230310569F02330310589F0F4 +:10266000682979298A299B292130310571F00E9436 +:102670006918DEC0682979298A299B290E94851852 +:10268000D7C00E946918C501B4010E944D18D0C07E +:10269000112319F0872D817001C08695882309F4D4 +:1026A000C7C08C2D829586958770880F880F9C2DCA +:1026B0009F70892E912CA12CB12C082E04C0880C5F +:1026C000991CAA1CBB1C0A94D2F7C4FE14C00FE0CC +:1026D00010E020E030E0B901A80104C0440F551F0C +:1026E000661F771F8A95D2F7CB01BA016095709566 +:1026F0008095909503C060E070E0CB01272D269572 +:1027000026952370422F50E04230510569F0433046 +:10271000510589F0682979298A299B294130510579 +:1027200071F00E94431984C0682979298A299B295C +:102730000E945F197DC00E944319C501B4010E9427 +:10274000271976C08C2D90E0FC01E05EF109E5319F +:10275000F10508F050C0E059FF4F0C94B3230C2D45 +:102760000F70872D8F71112331F00E94C018802FB8 +:102770000E941D125DC00E94E118802F0E94241249 +:1027800057C0112339F0011153C0872D8F710E945A +:1027900006194EC0023008F04BC0F7CF112339F0B4 +:1027A000872D8F710E94C01843C01123C9F3872D54 +:1027B0008F710E94E1183CC0112329F0872D8F7181 +:1027C0000E94AB1835C00E94A11832C0112351F0ED +:1027D000172D1F71812F0E94C01863E0812F0E9466 +:1027E000D41926C081E00E94DD19023008F182E090 +:1027F0000E94DD191DC0112331F0002389F28C2DB8 +:102800000E94061115C0002391F28C2D0E94CE115A +:102810000FC0472D4F706C2DC7010E9415050E94F7 +:10282000C51706C0472D4F706C2DC7010E94F205D9 +:10283000DD20F9F00E94D01980FD1BC0F701128243 +:102840000E94CA190E94C018C7010E9448140E9421 +:10285000CA190F90DF91CF911F910F91FF90EF90C8 +:10286000DF90CF90BF90AF909F908F907F900C940F +:10287000E1180F90DF91CF911F910F91FF90EF9092 +:10288000DF90CF90BF90AF909F908F907F900895F2 +:102890000F931F93CF93DF93EC01888199812B8154 +:1028A0003C81232BB9F09F3F11F48F3F99F0CE016B +:1028B0000E944A05882371F0688179818A810E948B +:1028C000C6198C010E947B190E944218B801CE01E2 +:1028D0000E942B12DF91CF911F910F9108950E94BA +:1028E0009E1A0E94AE1A0E94731A0E94C81A0E9471 +:1028F000E11F0E94301F80E090E00E940C1080E0F9 +:1029000090E00C9422100E948E1A0C946F140E9476 +:10291000BB19292F22952F7030E02C3031054CF453 +:102920002A3031056CF42250310922303105A8F4E7 +:1029300007C02C30310569F02F30310551F00DC042 +:10294000803F69F018F4803E40F409C0843F29F4C8 +:1029500006C093FB882780F9089580E0089581E000 +:102960000895CF93DF9300D000D01F92CDB7DEB78C +:102970000F900F900F900F900F90DF91CF910895CF +:10298000CF93DF9300D000D000D0CDB7DEB726962E +:102990000FB6F894DEBF0FBECDBFDF91CF91089583 +:1029A0001F93CF93DF93C091850116E0809186013C +:1029B000C81799F0D0E01C9FF0011D9FF00D112465 +:1029C000E957FE4F408151816281738184819581F5 +:1029D0000E94C0142196C770E9CFDF91CF911F915B +:1029E00008954091B7015091B8016091B90170917B +:1029F000BA018091BB019091BC010C94C0148091EC +:102A0000BC0182958F7009F054C08091B901882370 +:102A100009F44FC080918501A09186016091B701B2 +:102A20007091B8014091BA015091BB01B6E08A178C +:102A300009F43FC090E041155105C1F17F3F11F409 +:102A40006F3FA1F1B89FF001B99FF00D1124E95734 +:102A5000FE4F218172132AC02081621327C0228178 +:102A6000211124C0238134812417350710F421500B +:102A70003109241B350B283C3105C0F42091BC01E1 +:102A80002F7020612093BC0126E0289FF001299F30 +:102A9000F00D1124E457FE4F80818F708061808398 +:102AA00087EB91E00E9448140C94D0140196877033 +:102AB000BECF0895CF92DF92EF92FF920F931F93B4 +:102AC000CF93DF93CDB7DEB762970FB6F894DEBF32 +:102AD0000FBECDBF8C0185E0F801DE011D9601908F +:102AE0000D928A95E1F7D8014C9111965C9111975E +:102AF00012966C9112971396CD90DC9014973091AA +:102B0000B7017091B8018091BA019091BB01009713 +:102B100009F46BC17F3F19F43F3F09F466C1E090AF +:102B2000B901EE2009F4C0C02091BC01C816D90635 +:102B300028F0F601E81BF90BCF0104C080959095B1 +:102B40008C0D9D1DFF24F394883C910578F0F12CA9 +:102B5000207F09F0C6C07C2DD98AC88A89890E9445 +:102B6000B11487EB91E00E944814B1C0822F807F9E +:102B700009F046C0751314C0341312C0611110C09F +:102B80002F7020612093BC010E94F11487EB91E02B +:102B90000E9448148091BC01D80115968C932EC0D8 +:102BA000CD2819F15F3F11F44F3FF9F0F62E611176 +:102BB0001CC0809185012091860136E0821709F4BE +:102BC0005AC090E0389FF001399FF00D1124E95769 +:102BD000FE4F7181571306C07081471303C0728185 +:102BE000711103C001968770E9CFF62E662309F4B0 +:102BF00018C18091BC0181608093BC01F12C11C18E +:102C0000751308C0341306C0611104C08091BC0163 +:102C1000D801C3C04D875E878D859E856A8B0E94D3 +:102C200087146A898823E1F16623D1F12091BC01E0 +:102C3000822F82958F7090E0029774F08091B70197 +:102C40009091B80198878F831986DB86CA862C8776 +:102C5000CE0107960E94481486E0F801A7EBB1E088 +:102C600001900D928A95E1F70E94FF140E94F114E1 +:102C7000FF24F394D6C04D875E878D859E850E9484 +:102C8000BB19292F22952F7030E0223031050CF02E +:102C9000BCC09F7009F0B6C0805E883008F4C1C027 +:102CA000C8010E944814E4CFC816D90608F453C0DE +:102CB000F601E81BF90BCF01883C910508F450C0E0 +:102CC000F12C7C2DD98AC88A89890E94B114E7EB3E +:102CD000F1E086E0DF011D928A95E9F70E94F11488 +:102CE000A0C0751314C0341312C0611110C08091BC +:102CF000BC01F8018583C8010E94481486E0E7EB17 +:102D0000F1E0DF011D928A95E9F7FE2C8AC04D871C +:102D10005E878D859E856A8B0E9487146A898823C9 +:102D200009F4BECF662309F4BBCF2091BC01822FEA +:102D300082958F7090E002970CF48ECF8091B7014E +:102D40009091B8019A8389831B82DD82CC822E8385 +:102D5000CE0101967FCF809590958C0D9D1DACCFB7 +:102D6000F62E662309F49CCF75132EC034132CC0A5 +:102D70002091BC0120FD1FC0822F82958F70D9F059 +:102D8000D80115962C9315978F3049F08F5F982FA7 +:102D90009295907F822F8F70892B15968C93C80106 +:102DA0000E94481486E0F801A7EBB1E001900D9273 +:102DB0008A95E1F793CF86E0F801A7EBB1E00190A7 +:102DC0000D928A95E1F72DC04D875E878D859E8592 +:102DD0000E948714811140CF8091BC018160809353 +:102DE000BC01C8010E9448141CC0662309F458CFD6 +:102DF0004D875E878D859E850E948714882309F400 +:102E00004FCF2ACF811148CF0CC0243031050CF0B0 +:102E100047CF9F7009F440CFF8019581907F09F06A +:102E20003BCF8F2D62960FB6F894DEBF0FBECDBF9D +:102E3000DF91CF911F910F91FF90EF90DF90CF9096 +:102E400008951F93CF93DF93CDB7DEB72C970FB6BE +:102E5000F894DEBF0FBECDBF4F83588769877A874E +:102E60008B879C87CE0107960E945A15882369F0AC +:102E70008F8198852A853B85232BF1F19F3F09F0AF +:102E800063C08F3F09F060C037C086E0FE0137960F +:102E9000DE01119601900D928A95E1F76F81788598 +:102EA000EA85FB85309741F17F3F11F46F3F21F1B7 +:102EB0002091860130E0C9010196877099274091E1 +:102EC000850150E08417950709F447C069837A8328 +:102ED000FD83EC8396E0929FD001939FB00D112467 +:102EE000A957BE4FFE01319601900D929A95E1F7D8 +:102EF000809386010E94D01416E080918501909104 +:102F000086018917C1F1189FC001112489579E4F6E +:102F10000E945A15882379F1E09185011E9FF001E6 +:102F20001124E957FE4F4081518162817381848170 +:102F300095810E94C0148091850190E00196877070 +:102F4000992780938501D9CF4F81588569857A85E6 +:102F50008B859C850E94C014CFCF0E948314109251 +:102F6000860110928501E7EBF1E086E0DF011D921A +:102F70008A95E9F7C1CF2C960FB6F894DEBF0FBE45 +:102F8000CDBFDF91CF911F910895EF92FF920F93E4 +:102F90001F93CF93DF938C01009709F46CC0F12C41 +:102FA000EE24E394E8012196F8018491843740F4FB +:102FB000843008F051C0813081F0823019F15BC05B +:102FC000853709F444C0A8F19CE7980F903708F0C2 +:102FD00052C08F770E94CE1141C00E5F1F4FFE017D +:102FE000C49180E28C0F883048F4C7708E2D01C0E8 +:102FF000880FCA95EAF70E94A11A14C08C2F0E946C +:1030000006112DC00E5F1F4FFE01C49180E28C0F90 +:10301000883058F4C7708E2D01C0880FCA95EAF722 +:103020000E94A71A0E94C81A1AC08C2F0E94CE11A3 +:1030300016C00E5F1F4FFE01C491CC2381F08FE9B3 +:103040009FE00197F1F700C00000C150F6CF0E5F7E +:103050001F4FFE01F49003C00E9406118E018F2DB8 +:10306000882309F49FCFEFE9FFE03197F1F700C023 +:1030700000008150F5CFDF91CF911F910F91FF900C +:10308000EF90089508956093C1017093C2018093F9 +:10309000C3019093C4010C946F140F931F9300917C +:1030A000C1011091C2012091C3013091C401DC0122 +:1030B000CB01802B912BA22BB32B8093C10190933A +:1030C000C201A093C301B093C4011F910F910C944E +:1030D0006F140F931F930091C1011091C2012091B1 +:1030E000C3013091C401DC01CB0180239123A223D1 +:1030F000B3238093C1019093C201A093C301B09305 +:10310000C4011F910F910C946F140F931F930091A2 +:10311000C1011091C2012091C3013091C401DC01B1 +:10312000CB0180279127A227B3278093C1019093D9 +:10313000C201A093C301B093C4011F910F910C94DD +:103140006F141092BD011092BE011092BF01109237 +:10315000C0010C946F1441E050E060E070E004C0E6 +:10316000440F551F661F771F8A95D2F74093BD0104 +:103170005093BE016093BF017093C0010C946F1413 +:1031800041E050E060E070E004C0440F551F661F4E +:10319000771F8A95D2F78091BD019091BE01A091D1 +:1031A000BF01B091C001482B592B6A2B7B2B409358 +:1031B000BD015093BE016093BF017093C0010C9498 +:1031C0006F1441E050E060E070E004C0440F551F10 +:1031D000661F771F8A95D2F7409550956095709538 +:1031E0008091BD019091BE01A091BF01B091C0013D +:1031F000482359236A237B234093BD015093BE018A +:103200006093BF017093C0010C946F1441E050E0D3 +:1032100060E070E004C0440F551F661F771F8A9559 +:10322000D2F78091BD019091BE01A091BF01B091F4 +:10323000C001482759276A277B274093BD01509337 +:10324000BE016093BF017093C0010C946F140F9383 +:103250001F930091BD011091BE012091BF013091DB +:10326000C001DC01CB01802B912BA22BB32B8093CF +:10327000BD019093BE01A093BF01B093C0011F9107 +:103280000F910C946F140F931F930091BD01109137 +:10329000BE012091BF013091C001DC01CB01802330 +:1032A0009123A223B3238093BD019093BE01A093E9 +:1032B000BF01B093C0011F910F910C946F140F9335 +:1032C0001F930091BD011091BE012091BF0130916B +:1032D000C001DC01CB0180279127A227B32780936F +:1032E000BD019093BE01A093BF01B093C0011F9197 +:1032F0000F910C946F140895CF92DF92EF92FF928A +:103300000F931F93CF93DF938C01C090C101D09096 +:10331000C201E090C301F090C4018091BD01909181 +:10332000BE01A091BF01B091C001C82AD92AEA2AE2 +:10333000FB2ACFE1D0E0D701C6010C2E04C0B69520 +:10334000A795979587950A94D2F780FF06C0B80194 +:103350008C2F0E944808019721F4219760F780E0A4 +:1033600001C08C2FDF91CF911F910F91FF90EF90B3 +:10337000DF90CF900895CF93DF93EC010E947C19EA +:10338000BE010E944808DF91CF910895CB010E94B1 +:10339000BB1908958091C5018595859585950895FA +:1033A0008091C5018770089598E0899F900111244C +:1033B000262B2093C5010C94C0182091C50180953F +:1033C00082238093C501982F977069F430E0482FCD +:1033D000552747FD50952417350729F08595859584 +:1033E00085950C94E11808959091C501977081E03E +:1033F00009F480E0089590910C01992321F09091B7 +:103400000D01911109C020910E0130910F01F901B8 +:1034100032969FEF40E01FC0982F9695969596950F +:103420009F3050F5E0910E01F0910F01E90FF11D71 +:10343000877021E030E0A90102C0440F551F8A9532 +:10344000E2F7CA019181892B818308959F3F39F06A +:103450004F5F4E3041F051915813F8CF0DC05111CC +:10346000F7CF942FF5CF9F3F39F0F901E90FF11D08 +:1034700097FDFA9582830895089590910C01992300 +:1034800021F090910D01911109C020910E01309110 +:103490000F01F9013296205F3F4F1FC0982F96957C +:1034A000969596959F30F0F4E0910E01F0910F0102 +:1034B000E90FF11D877021E030E0A90102C0440F3F +:1034C000551F8A95E2F7CA018095918189238183EE +:1034D00008953196E217F30729F090819813F9CFF8 +:1034E0001082F7CF089581E090E0E0910E01F09115 +:1034F0000F01E80FF91F1082019680319105A9F79D +:1035000008959091D901892B8093D90108958095D0 +:103510009091D90189238093D90108951092D901FE +:1035200008959091D801892B8093D80108958095B2 +:103530009091D80189238093D80108951092D801E1 +:1035400008959091D701892B8093D7010895809594 +:103550009091D70189238093D70108951092D701C4 +:1035600008958093C60108951092C6010895809130 +:103570000E0190910F01FC0131969C01205F3F4F9D +:1035800080E0919191118F5FE217F307D1F70895D1 +:10359000E0910E01F0910F018091D9018083E091BB +:1035A0000E01F0910F0190818091D801892B8083C9 +:1035B000E0910E01F0910F0190818091D701892B4C +:1035C00080838091C601882361F0E0910E01F09123 +:1035D0000F019081892B80830E94B71A811110926C +:1035E000C60180910E0190910F010C94F60F20E01E +:1035F000009739F0AC0141505109842395232F5F86 +:10360000F7CF822F0895CF92DF92EF92FF926C0155 +:10361000EE24FF24C114D104E104F10421F0C70118 +:10362000B60120E101C020E0C72ED82EE92EFF24EC +:10363000C114D104E104F10419F0285FC701B601F7 +:103640006B017C0154E0F694E794D794C7945A95A3 +:10365000D1F7C114D104E104F10419F02C5FC701C2 +:10366000B6016B017C0142E0F694E794D794C794CD +:103670004A95D1F7C114D104E104F10419F02E5F89 +:10368000C701B601DC01CB01B695A7959795879543 +:10369000892B8A2B8B2B09F02F5F822FFF90EF90C5 +:1036A000DF90CF9008958091F101843021F1109244 +:1036B000DB0120E488E190E00FB6F894A8958093B0 +:1036C00060000FBE2093600080E00E94E30883B793 +:1036D000817F846083BF83B7816083BF789488953E +:1036E00083B78E7F83BF88E10FB6F8948093600024 +:1036F000109260000FBE0895089508950E947C1BEB +:103700000E944B030E947D1B0E94400491E08111A6 +:1037100001C090E0892F08950E9483140E94EA0F4F +:103720000C94E30882E084BD93E095BD9AEF97BDC9 +:1037300080936E0008952FB7F8948091DC019091EA +:10374000DD01A091DE01B091DF012FBF0895CF927E +:10375000DF92EF92FF920F931F932FB7F89440914F +:10376000DC015091DD016091DE017091DF012FBF1E +:103770006A017B01EE24FF248C0120E030E0C016BA +:10378000D106E206F30610F4415051099A01281BB4 +:10379000390BC9011F910F91FF90EF90DF90CF90EF +:1037A00008951F920F920FB60F9211248F939F933B +:1037B000AF93BF938091DC019091DD01A091DE0178 +:1037C000B091DF010196A11DB11D8093DC019093A2 +:1037D000DD01A093DE01B093DF01BF91AF919F9116 +:1037E0008F910F900FBE0F901F9018950E94E70CBD +:1037F000F8942FEF87EA91E6215080409040E1F75E +:1038000000C0000087E090EBDC018093FB01909307 +:10381000FC01A093FD01B093FE019CE088E10FB68E +:10382000F894A895809360000FBE90936000FFCF3E +:10383000EF92FF920F931F93CF93DF93D82FCDE09A +:103840008C2F0E94390405E010E0E82EF12CC7010E +:10385000002E02C0959587950A94E2F780FF09C073 +:10386000602F7C2F80E00E94F305D81302C081E016 +:1038700006C00150110958F7C15010F780E0DF91E0 +:10388000CF911F910F91FF90EF900895CF93C82F84 +:103890008CE20E94181C882321F08C2FCF910C946D +:1038A000181C80E0CF910895CF930E949B1D811139 +:1038B00002C00E94811DC5E6C15049F00E944B0321 +:1038C0008FE39CE90197F1F700C00000F5CF89E292 +:1038D0000E94461C811113C18AE20E94461C81117C +:1038E0000E94811D85E00E94461C81110E94F61BEA +:1038F0000E94A61D8093DA0187E00E94461C88235F +:10390000A9F18BE10E94461C882351F08091DA01D5 +:1039100081FB222720F991E0922790FB81F90EC0CC +:103920008EE00E94461C882361F08091DA0182FBC0 +:10393000222720F991E0922790FB82F98093DA0107 +:1039400015C080E10E94461C9091DA01882341F065 +:1039500093FB222720F981E0822780FB93F904C0A2 +:10396000892F809580FB90F99093DA018091DA019C +:103970000E94AA1D0E94B81D8093FA0180EE0E9449 +:10398000461C882341F08091FA01982F909590FB76 +:1039900080F98093FA0189E30E94461C882359F03C +:1039A0008091FA0181FB222720F991E0922790FB78 +:1039B00081F98093FA0182EE0E94461C882359F017 +:1039C0008091FA0182FB222720F991E0922790FB57 +:1039D00082F98093FA0186EE0E94461C882359F0F2 +:1039E0008091FA0183FB222720F991E0922790FB36 +:1039F00083F98093FA0183EE0E94461C882359F0D4 +:103A00008091FA0184FB222720F991E0922790FB14 +:103A100084F98093FA0185E30E94461C882359F0BB +:103A20008091FA0185FB222720F991E0922790FBF3 +:103A300085F98093FA0181E30E94461C882359F09E +:103A40008091FA0186FB222720F991E0922790FBD2 +:103A500086F98093FA0181E10E94461C882359F07F +:103A60008091FA0187FB222720F991E0922790FBB1 +:103A700087F98093FA018091FA010E94BC1D809120 +:103A8000FA0187FB882780F980930D0187E20E9465 +:103A9000461CC82F8EE10E94461C8111C2608FE136 +:103AA0000E94461C8111C46080E20E94461C811164 +:103AB000C86081E20E94461C8111C06182E20E94BE +:103AC000461C8111C06283E20E94461C8111C064C1 +:103AD00084E20E94461C882311F0C06802C0CC23F7 +:103AE00029F08C2F0E94B31D6C2F03C00E94AF1DC4 +:103AF000682F70E080E090E0CF910C944318CF9154 +:103B000008956DEE7EEF80E090E00E94ED2360E08E +:103B100082E090E00E94DB2360E083E090E00E947E +:103B2000DB2360E084E090E00E94DB2360E085E03E +:103B300090E00C94DB2380E090E00E94D52321E00C +:103B40008D3E9E4F09F020E0822F089582E090E0A4 +:103B50000C94CD23682F82E090E00C94DB2383E06B +:103B600090E00C94CD23682F83E090E00C94DB234D +:103B700084E090E00C94CD23682F84E090E00C94D6 +:103B8000DB238091E20180FF0BC06091130185E08F +:103B9000689FB001112475956795759567952BC041 +:103BA00081FF09C06091130185E0689FB001112475 +:103BB0007595679520C082FF07C06091130185E06D +:103BC000689FB001112417C09091E3019923D1F0AF +:103BD00060911201961788F72091130185E0289FC4 +:103BE00090011124929FA001939F500D112470E029 +:103BF000CA010E949F236038710540F46115710568 +:103C000039F002C065E070E0862F08958FE70895CF +:103C100081E008958091E20180FF08C06091110168 +:103C200070E0759567957595679521C081FF06C011 +:103C30006091110170E07595679519C082FF04C00D +:103C40006091110170E010C09091E3019923C1F0DF +:103C5000609110019617A0F780911101899FC00112 +:103C6000112470E00E949F236038710528F46115CB +:103C7000710521F0862F08958FE7089581E008955A +:103C800061E070E0F4CF803F21F40E94C11D819576 +:103C900004C0813F29F40E94C11D8093E60108956C +:103CA000823F21F40E94C11D819504C0833F29F405 +:103CB0000E94C11D8093E5010895893F19F40E9477 +:103CC0000A1E05C08A3F31F40E940A1E8195809326 +:103CD000E70108958B3F21F40E940A1E819504C0DC +:103CE0008C3F29F40E940A1E8093E8010895843FC6 +:103CF00021F48091E401816017C0853F21F4809117 +:103D0000E401826011C0863F21F48091E401846067 +:103D10000BC0873F21F48091E401886005C0883F93 +:103D200031F48091E40180618093E40108958D3F36 +:103D300021F48091E20181600BC08E3F21F48091DB +:103D4000E201826005C08F3F29F48091E201846026 +:103D50008093E2010895803F39F48091E60187FF66 +:103D60006CC01092E60169C0813F29F48091E601A0 +:103D70001816BCF362C09091E501823F29F497FFC9 +:103D80005CC01092E50159C0833F19F41916CCF3B9 +:103D900054C0893F41F48091E70118160CF04DC0E2 +:103DA0001092E7014AC08A3F29F48091E70187FF1A +:103DB00044C0F6CF8B3F39F48091E80187FF3DC0C6 +:103DC0001092E8013AC08C3F29F48091E80118165E +:103DD000BCF333C0843F21F48091E4018E7F17C08F +:103DE000853F21F48091E4018D7F11C0863F21F44D +:103DF0008091E4018B7F0BC0873F21F48091E40127 +:103E0000877F05C0883F31F48091E4018F7E8093E5 +:103E1000E40113C08D3F21F48091E2018E7F0BC03D +:103E20008E3F21F48091E2018D7F05C08F3F29F400 +:103E30008091E2018B7F8093E2018091E501811105 +:103E40000EC08091E60181110AC08091E7018111C5 +:103E500006C08091E801811102C01092E30108952B +:103E600084EE91E00E9401100E949B1B9093E1015F +:103E70008093E00108951F93CF93DF938091E00139 +:103E80009091E1010E94A71BAC019091E30199235D +:103E900021F02091140130E006C0209115018AE044 +:103EA000289F900111244217530708F486C080917F +:103EB000E501C091E601D091E7011091E80181117F +:103EC00007C0C11176C0D11174C0111172C075C084 +:103ED0009F3F19F09F5F9093E301181624F40E940E +:103EE000C11D8093E5018091E50187FF05C00E9417 +:103EF000C11D81958093E5011C1624F40E94C11D0B +:103F00008093E6018091E60187FF05C00E94C11DF4 +:103F100081958093E6016091E501662339F1C091B6 +:103F2000E601CC2319F1772767FD7095872F972F2E +:103F30000E94B02223E333E343E35FE30E941423B0 +:103F40000E947D226093E5016C2F772767FD7095B5 +:103F5000872F972F0E94B02223E333E343E35FE3ED +:103F60000E9414230E947D226093E6011D1624F412 +:103F70000E940A1E8093E7018091E70187FF05C038 +:103F80000E940A1E81958093E701111624F40E9475 +:103F90000A1E8093E8018091E80187FF05C00E9416 +:103FA0000A1E81958093E801DF91CF911F910C94B7 +:103FB000301F9F3F09F08ECF96CFDF91CF911F9199 +:103FC0000895E4EEF1E085E0DF011D928A95E9F7BE +:103FD0001092E3011092E2010895833081F128F4F8 +:103FE000813059F08230D1F00895853009F449C00C +:103FF000B8F1863009F456C0089580911501262F36 +:1040000030E0280F311D2F3F310524F4680F6093F5 +:10401000150108958FEF8093150108958091140183 +:10402000262F30E0280F311D2F3F310524F4680F73 +:104030006093140108958FEF809314010895809187 +:104040001301262F30E0280F311D2F3F310524F4B6 +:10405000680F6093130108958FEF80931301089503 +:1040600080911201262F30E0280F311D2F3F31059E +:1040700024F4680F6093120108958FEF809312016A +:10408000089580911101262F30E0280F311D2F3F18 +:10409000310524F4680F6093110108958FEF809328 +:1040A0001101089580911001262F30E0280F311D55 +:1040B0002F3F310524F4680F6093100108958FEFAE +:1040C000809310010895833011F128F4813049F074 +:1040D000823091F00895853081F120F18630C1F170 +:1040E000089580911501681720F4861B80931501AF +:1040F000089510921501089580911401681720F415 +:10410000861B8093140108951092140108958091E4 +:104110001301681720F4861B8093130108951092F1 +:104120001301089580911201681720F4861B809373 +:1041300012010895109212010895809111016817DB +:1041400020F4861B809311010895109211010895A7 +:1041500080911001681720F4861B80931001089548 +:104160001092100108950F931F938D3109F46BC0C5 +:1041700008F03FC08E3009F47FC0C0F4873009F4E6 +:1041800069C068F4863009F0B1C08091DA01817F9E +:104190008E7F8093DA0181E08093EA01A8C08830A5 +:1041A00009F4A2C08B3009F49FC0A0C0863109F485 +:1041B0009BC078F4803109F472C0813109F096C057 +:1041C0000E94831490910D0181E0892780930D0155 +:1041D0008BC0893109F488C08B3109F087C0809188 +:1041E000DA0181FB222720F991E0922790FB81F9E7 +:1041F0004CC0853309F470C048F4873209F46CC0B0 +:1042000008F459C0893209F467C070C0833438F4A7 +:104210008A3308F04EC0883309F466C067C083341F +:1042200009F45AC0883409F061C00E9483140FEF6A +:1042300013ED20E3015010402040E1F700C00000E2 +:104240000E94F61B51C00E9437220E94EA0F0E9472 +:10425000E3084AC09091DA01892F8095817080FB34 +:1042600090F929F0966098609093DA0140C0997FA8 +:10427000977F9093DA0138C08091DA0182FB222780 +:1042800020F991E0922790FB82F98093DA0199233B +:1042900059F18091DA0181608093DA0125C0809123 +:1042A000DA0183FB222720F991E0922790FB83F922 +:1042B000ECCF895301C08D5141E050E060E070E0E7 +:1042C0008A019B0104C0000F111F221F331F8A9512 +:1042D000D2F7C901B80104C061E070E080E090E06D +:1042E0000E9443180E94831481E001C080E01F9166 +:1042F0000F91089580E0089580E00895CF93C82F2E +:104300008091EA01813079F018F08230E9F187C0BC +:10431000E0910E01F0910F018081813169F08232CC +:1043200009F07FC009C0E0910E01F0910F0180817A +:10433000813111F0823261F48C2F0E947A21811137 +:1043400004C08C2F0E94B3201DC081E090E01AC0F1 +:104350008C2F0E947C21811114C0C43179F048F463 +:10436000CB3079F0C03109F060C082E08093EA017F +:1043700008C0C93219F0C83321F057C01092EA01C1 +:1043800054C081E0817053C0C93289F118F5C4313D +:1043900071F1A8F4C73009F046C08AE08093150196 +:1043A00094E19093140193E0909313018093120190 +:1043B00088E08093110188E28093100134C0CE51CF +:1043C000C63088F5EC2FF0E0E65DFE4F80818093EB +:1043D000E90129C0CE34E9F020F4CB3421F56AE0BC +:1043E00013C0C13579F0C235F1F461E00DC08091A0 +:1043F000E901882319F01092E90115C081E080934A +:10440000EA0115C061E006C08091E9010E94ED1F3C +:104410000AC06AE08091E9010E94632004C0109202 +:10442000EA0180E004C081E002C080E0ABCFCF9120 +:104430000895E1E8F0E08081886080838081816078 +:1044400080838FB7F89493E09093890090ED9093D8 +:1044500088008FBF0895EFE6F0E08081826080835E +:104460000895EFE6F0E080818D7F80830895EFE688 +:10447000F0E0908182E08927808308951F920F9257 +:104480000FB60F9211242F933F934F935F936F9327 +:104490007F938F939F93AF93BF93EF93FF938091FD +:1044A000EB019091EC0101969093EC018093EB016C +:1044B000811103C082E00E94E308E091EC01E695DF +:1044C000E695F0E0EC54FB4FE4918091EB018E1304 +:1044D00003C080E00E94E308FF91EF91BF91AF918C +:1044E0009F918F917F916F915F914F913F912F910C +:1044F0000F900FBE0F901F90189504D06894B111C3 +:104500008DC0089570D088F09F5790F0B92F9927EB +:10451000B751A0F0D1F0660F771F881F991F1AF0CE +:10452000BA95C9F712C0B13081F077D0B1E00895E3 +:1045300074C0672F782F8827B85F39F0B93FCCF364 +:10454000869577956795B395D9F73EF490958095C4 +:10455000709561957F4F8F4F9F4F0895E89409C0E4 +:1045600097FB3EF490958095709561957F4F8F4FA6 +:104570009F4F9923A9F0F92F96E9BB279395F695BC +:10458000879577956795B795F111F8CFFAF4BB0F3A +:1045900011F460FF1BC06F5F7F4F8F4F9F4F16C09E +:1045A000882311F096E911C0772321F09EE8872F28 +:1045B000762F05C0662371F096E8862F70E060E0E4 +:1045C0002AF09A95660F771F881FDAF7880F96955D +:1045D000879597F9089557FD9058440F551F59F046 +:1045E0005F3F71F04795880F97FB991F61F09F3FE0 +:1045F00079F087950895121613061406551FF2CF09 +:104600004695F1DF08C0161617061806991FF1CF58 +:1046100086957105610508940895E894BB2766277F +:104620007727CB0197F908950BD078C069D028F08F +:104630006ED018F0952309F05AC05FC01124EECF58 +:10464000CADFA0F3959FD1F3950F50E0551F629FED +:10465000F001729FBB27F00DB11D639FAA27F00DDB +:10466000B11DAA1F649F6627B00DA11D661F829F02 +:104670002227B00DA11D621F739FB00DA11D621FE7 +:10468000839FA00D611D221F749F3327A00D611D04 +:10469000231F849F600D211D822F762F6A2F1124E6 +:1046A0009F5750408AF0E1F088234AF0EE0FFF1F39 +:1046B000BB1F661F771F881F91505040A9F79E3F70 +:1046C000510570F014C0AACF5F3FECF3983EDCF3C5 +:1046D000869577956795B795F795E7959F5FC1F7AD +:1046E000FE2B880F911D9695879597F9089597F958 +:1046F0009F6780E870E060E008959FEF80EC089588 +:1047000000240A94161617061806090608950024B0 +:104710000A9412161306140605060895092E03942A +:10472000000C11F4882352F0BB0F40F4BF2B11F49E +:1047300060FF04C06F5F7F4F8F4F9F4F089597FBBF +:10474000072E16F4009407D077FD09D00E94B923F4 +:1047500007FC05D03EF4909581959F4F0895709584 +:1047600061957F4F0895EE0FFF1F0590F491E02DA6 +:104770000994AA1BBB1B51E107C0AA1FBB1FA617A8 +:10478000B70710F0A61BB70B881F991F5A95A9F7FA +:1047900080959095BC01CD010895F999FECF92BD09 +:1047A00081BDF89A992780B50895A8E1B0E042E06C +:1047B00050E00C94F523262FF999FECF92BD81BDD0 +:1047C000F89A019700B4021639F01FBA20BD0FB64F +:1047D000F894FA9AF99A0FBE08950196272F0E942D +:1047E000DC230C94DB23DC01CB01FC01F999FECF27 +:1047F00006C0F2BDE1BDF89A319600B40D92415069 +:0A4800005040B8F70895F894FFCF78 +:10480A000220E508730950091C09E8080101C701DB +:10481A0028080A03140A3F4D363975042804F2039E +:10482A00B9034C0365037E039703010203040506DB +:04483A000708090062 +:00000001FF diff --git a/keyboards/ergodox_ez/keymaps/msc/img/code_layer.png b/keyboards/ergodox_ez/keymaps/msc/img/code_layer.png new file mode 100644 index 0000000000..7b5efaae79 Binary files /dev/null and b/keyboards/ergodox_ez/keymaps/msc/img/code_layer.png differ diff --git a/keyboards/ergodox_ez/keymaps/msc/img/main_layer.png b/keyboards/ergodox_ez/keymaps/msc/img/main_layer.png new file mode 100644 index 0000000000..65f92dda1b Binary files /dev/null and b/keyboards/ergodox_ez/keymaps/msc/img/main_layer.png differ diff --git a/keyboards/ergodox_ez/keymaps/msc/img/media_layer.png b/keyboards/ergodox_ez/keymaps/msc/img/media_layer.png new file mode 100644 index 0000000000..a69799b073 Binary files /dev/null and b/keyboards/ergodox_ez/keymaps/msc/img/media_layer.png differ diff --git a/keyboards/ergodox_ez/keymaps/msc/keymap.c b/keyboards/ergodox_ez/keymaps/msc/keymap.c new file mode 100644 index 0000000000..e567e513f9 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/msc/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 + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | = | 1 | 2 | 3 | 4 | 5 | LEFT | | RIGHT| 6 | 7 | 8 | 9 | 0 | - | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Del | Q | W | E | R | T | L1 | | L1 | Y | U | I | O | P | \ | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | BkSp | A | S | D | F | G |------| |------| H | J | K | L | ; |' / Cmd | + * |--------+------+------+------+------+------| Hyper| | Meh |------+------+------+------+------+--------| + * | LShift |Z/Ctrl| X | C | V | B | | | | N | M | , | . |//Ctrl| RShift | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | Cmd | Alt |AltShf| Left | Right| | Left | Down | Up |Right | L2 | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | App | LGui | | Alt |Ctrl/Esc| + * ,------|------|------| |------+--------+------. + * | | | Home | | PgUp | | | + * | Space|Backsp|------| |------| Tab |Enter | + * | |ace | End | | PgDn | | | + * `--------------------' `----------------------' + */ +// If it accepts an argument (i.e, is a function), it doesn't need KC_. +// Otherwise, it needs KC_* +[BASE] = KEYMAP( // layer 0 : default + // left hand + KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, KC_LEFT, + KC_DELT, KC_Q, KC_W, KC_E, KC_R, KC_T, TG(SYMB), + KC_BSPC, KC_A, KC_S, KC_D, KC_F, KC_G, + KC_LSFT, CTL_T(KC_Z), KC_X, KC_C, KC_V, KC_B, ALL_T(KC_NO), + KC_LGUI,KC_LALT, LALT(KC_LSFT), KC_LEFT,KC_RGHT, + ALT_T(KC_APP), KC_LGUI, + KC_HOME, + KC_SPC,KC_BSPC,KC_END, + // right hand + KC_RGHT, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, + TG(SYMB), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, + KC_H, KC_J, KC_K, KC_L, 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_LEFT, KC_DOWN, KC_UP, KC_RIGHT, TG(MDIA), + KC_LALT, CTL_T(KC_ESC), + KC_PGUP, + KC_PGDN,KC_TAB, KC_ENT + ), +/* Keymap 1: Symbol Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | ! | @ | { | } | | | | | | Up | 7 | 8 | 9 | * | F12 | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | # | $ | ( | ) | ` |------| |------| Down | 4 | 5 | 6 | + | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | % | ^ | [ | ] | ~ | | | | & | 1 | 2 | 3 | \ | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | . | 0 | = | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// SYMBOLS +[SYMB] = KEYMAP( + // left hand + KC_TRNS,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, + KC_TRNS,KC_EXLM,KC_AT, KC_LCBR,KC_RCBR,KC_PIPE,KC_TRNS, + KC_TRNS,KC_HASH,KC_DLR, KC_LPRN,KC_RPRN,KC_GRV, + KC_TRNS,KC_PERC,KC_CIRC,KC_LBRC,KC_RBRC,KC_TILD,KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS, + KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS, + // right hand + KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + KC_TRNS, KC_UP, KC_7, KC_8, KC_9, KC_ASTR, KC_F12, + KC_DOWN, KC_4, KC_5, KC_6, KC_PLUS, KC_TRNS, + KC_TRNS, KC_AMPR, KC_1, KC_2, KC_3, KC_BSLS, KC_TRNS, + KC_TRNS,KC_DOT, KC_0, KC_EQL, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), +/* Keymap 2: Media and mouse keys + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | MsUp | | | | | | | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | |MsLeft|MsDown|MsRght| |------| |------| | | | | | Play | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | Mute | | | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | Prev |VolDn |VolUp | Next | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | |Brwser| + * | Lclk | Rclk |------| |------| |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_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_BTN1, KC_BTN2, 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_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_MPRV, KC_VOLD, KC_VOLU, KC_MNXT, 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/keyboards/ergodox_ez/keymaps/msc/readme.md b/keyboards/ergodox_ez/keymaps/msc/readme.md new file mode 100644 index 0000000000..0d14fcbd29 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/msc/readme.md @@ -0,0 +1,32 @@ +# MSC Configuration + +### Based mostly on the ErgoDox EZ default layout with optimizations for coding on osx. + +#### Expecting the user to rely on Coder Layer this keymap removes some of the duplicate symbol keys in the lower portions of the board and replaces them with arrow keys and modifiers. The Media Layer is also updated to match the change in the arrow keys and the left and right click buttons are moved under the thumb position. The Media layer is now reached with toggle button in the lower right. + +### Main Layer + +![Main Layer](img/main_layer.png) + +### Code Layer + +![Code Layer](img/code_layer.png) + +### Media Layer + +![Media Layer](img/media_layer.png) + +## Changelog + +Version 1.0 + +- Changed the temp code layer key in the bottom right to toggle media layer +- Changed the temp media key to only be ";" +- Changed right hand bottom row to match vim home row nav directions +- Changed media keys to match arrow key changes +- Changed media left and right click to spacebar and backspace locations +- Changed bottom left to Cmd +- Changed single quote on left bottom row to alt + +#### Coming Soon: +- A new layer for Blender editing with a focus on left hand shortcut and a righthand num pad to control the view in Blender. diff --git a/keyboards/ergodox_ez/keymaps/naps62/README.md b/keyboards/ergodox_ez/keymaps/naps62/README.md new file mode 100644 index 0000000000..14728e4cc4 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/naps62/README.md @@ -0,0 +1,29 @@ +# ErgoDox EZ naps62 Configuration + +## Motivation + +I wanted a layout that suited my Linux & Vim usage. I also didn't like the lack of efficient access to some of the more common special characters used in programming. + +## Key features / changes + +### Base Layer (L1) + +* **No `MT(mod, kc)` keys (modifier when pressed, key when tapped).** Those keys work with a global timeout. When a key press is shorter than the timeout, it's considered a tap, otherwise it's a hold. I couldn't find any particular timeout that would work for me. I need to use mods extremely fast, but also want the confort of using them more slowly in other occasions. So I gave up on this feature altogether. +* **Direct access to `{}[]`.** When programming, these are used extremely often. I was still getting used to the coder layer, and I prefer the arrows on the home row, so I used the bottom-right keys for this. +* **Layer keys everywhere.** I either use my little finger or my index finger to go to L1, whichever is more confortable in any given situation. L2 is not used while coding/writing, so I don't need an extremely-optimized access to it. +* **Lang key.** This is nothing more than `Super-Space` combo, which in my systems (both Linux & Windows) is the shortcut to change the keyboard language. I'm Portuguese, so I often cycle between US layout for coding, and PT layout for writing. +* **Special chars on the right-most column.** I only use Ctrl & Shift keys on the left side, so I used the right keys to include some of the more useful special characters as well. + +### Coder Layer (L2) + +* The `=` and `-` signs where nowhere to be found. `-` was already on the base layer, but it's still useful to have a fully-featured NumPad on the coder layer. + +### Media Layer (L3) + +* **Better media keys**. Why was Play/Pause so far away? And where was Mute? I put all my media keys close to each other, including the missing ones +* **Arrow keys on home row.** I use vim, so I'm always on my home row. I use this sometimes to get around, but not as often as to need them on the base row. I'm fine with them here +* I don't use mouse keys. They're still set up, and I made some changes as an experiment, but I mostly forgot they exist by now. + +## Author + +[Miguel Palhas](https://github.com/naps62) diff --git a/keyboards/ergodox_ez/keymaps/naps62/compiled.hex b/keyboards/ergodox_ez/keymaps/naps62/compiled.hex new file mode 100644 index 0000000000..02cbf8be37 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/naps62/compiled.hex @@ -0,0 +1,1158 @@ +:100000000C947A020C94BE020C94BE020C94BE02B4 +:100010000C94BE020C94BE020C94BE020C94BE0260 +:100020000C94BE020C94BE020C94620D0C94340E1F +:100030000C94BE020C94BE020C94BE020C94BE0240 +:100040000C94BE020C943E220C94BE020C94BE0290 +:100050000C94BE020C94D11B0C94BE020C94BE02F4 +:100060000C94BE020C94BE020C94BE020C94BE0210 +:100070000C94BE020C94BE020C94BE020C94BE0200 +:100080000C94BE020C94BE020C94BE020C94BE02F0 +:100090000C94BE020C94BE020C94BE020C94BE02E0 +:1000A0000C94BE020C94BE020C94BE02A10EC30EB0 +:1000B000B10FC30EB10F080F2B0FB10F800F930FAD +:1000C0006212621291129112C712E71218141814D8 +:1000D000F2121814A213A2130914181418141214EB +:1000E000AF13AF13AF13AF13AF13AF13AF13AF1300 +:1000F000AF13AF13AF13AF13AF13AF13AF13AF13F0 +:10010000C113CE13D513DC13E6130000F0A12900B0 +:100110002B00E000E100015200001E00140004006A +:100120001D003500E3001F001A0016001B003400FC +:10013000E200200008000700060031002C0021002A +:100140001500090019000252E300220017000A00FE +:10015000050000004A002C08025200000152000075 +:100160004D00290002520000015200004B00230004 +:100170001C000B00110000004900240018000D00B5 +:1001800010002F024C0025000C000E00360030023B +:100190002C00260012000F0037002F002800270037 +:1001A00013003300380030002A002A0031003400E8 +:1001B0002D000152000001000100010001000100BA +:1001C00000003A001E0220022202010001003B0052 +:1001D0001F0221022302010001003C002F0226021F +:1001E0002F00010001003D00300227023000010015 +:1001F00001003E003102350035020000010001001F +:1002000001000000010000000100010001000000E9 +:100210000100000001003F005200510024020000D4 +:1002200001004000240021001E002E0001004100BA +:10023000250022001F003700010042002600230095 +:10024000200027000100430025022E0231002D006E +:1002500001004400450001000100010000000050C1 +:10026000010001000100010000000100010004087C +:1002700001000100010001001A0816080100010038 +:10028000F50001000808070801000100F400010062 +:10029000F400F10001000100010001001708F30063 +:1002A0000100000001000100010000000100000049 +:1002B0000100010001000000010000000100010038 +:1002C0000100500001000000010001000100510088 +:1002D000AA00AE000100010001005200A900AC001C +:1002E000B700010001004F00A800AB00B6000100FC +:1002F00001000100010001000100010001000100F6 +:1003000001000100000016034500720067006F0045 +:1003100044006F007800200045005A0000001603DA +:100320004500720067006F0044006F0078002000F5 +:1003300045005A0000000403090409026D0004018D +:1003400000A0FA09040000010301010009211101C4 +:100350000001223F000705810308000A090401008B +:100360000103010200092111010001224D000705CE +:10037000820308000A0904020001030000000921A9 +:10038000110100012236000705830308000A090451 +:1003900003000103000000092111010001223900BE +:1003A000070584031000011201100100000008ED90 +:1003B000FE071301000102000105010906A1010564 +:1003C0000719E029E7150025019508750181020547 +:1003D000081901290595057501910295017503918B +:1003E0000105071900297715002501957875018108 +:1003F00002C005010980A101850216010026B7008F +:100400001A01002AB700751095018100C0050C097A +:1004100001A1018503160100269C021A01002A9CF5 +:1004200002751095018100C005010902A1010901B1 +:10043000A10005091901290515002501950575017A +:10044000810295017503810105010930093115818A +:10045000257F95027508810609381581257F95014C +:1004600075088106050C0A38021581257F950175EE +:10047000088106C0C005010906A101050719E02988 +:10048000E715002501950875018102950175088120 +:100490000105081901290595057501910295017558 +:1004A0000391010507190029FF150025FF95067521 +:1004B000088100C0000000000000000000000001F2 +:1004C0000204060A0F17202C3A4A5D71879DB3C7B4 +:1004D000DAE9F5FCFFFCF5E9DAC7B39D87715D4AFF +:1004E0003A2C20170F0A0604020100000000000049 +:1004F0000000000011241FBECFEFDAE0DEBFCDBF49 +:1005000004B603FE24C08091FB019091FC01A091F0 +:10051000FD01B091FE018730904BA740B04BB9F47C +:100520001092FB011092FC011092FD011092FE014D +:1005300014BE84B7877F84BF88E10FB6F894809398 +:100540006000109260000FBEE0E0FFE3099511E04B +:10055000A0E0B1E0EAE0F8E402C005900D92A43317 +:10056000B107D9F711E0A4E3B1E001C01D92AB3FA0 +:10057000B107E1F70E94A60A0C9403240C94000032 +:100580001092B9008AE08093B800089594EA90939D +:10059000BC009091BC0097FFFCCF9091B900987F70 +:1005A000983021F0903111F081E008958093BB00E4 +:1005B00084E88093BC008091BC0087FFFCCF8091D1 +:1005C000B900887F883111F0803471F780E0089598 +:1005D00084E98093BC008091BC0084FDFCCF089529 +:1005E0008093BB0084E88093BC008091BC0087FFAF +:1005F000FCCF9091B900987F81E0983209F480E0B7 +:10060000089584E88093BC008091BC0087FFFCCFF4 +:100610008091BB00089580910101811115C080E493 +:100620000E94C6028093010181110CC082E10E94E8 +:10063000F00280930101811105C08FEF0E94F0024A +:10064000809301010E94E80284B1807F84B985B162 +:10065000807F85B98AB1837F8AB98BB1837F8BB95B +:100660003E98469808950E94C604809301010E9416 +:100670000B0380B38C7080BB81B3836F81BBA5E318 +:10068000B1E0E3E4F1E08EE08E0F11921D928E1343 +:10069000FCCF0C94B004BF92CF92DF92EF92FF9206 +:1006A0000F931F93CF93DF9380910101882379F0FB +:1006B000809134018F5F80933401811108C00E94C2 +:1006C000C60480930101811102C00E94580405E311 +:1006D00011E0C0E0D0E0DD24D39482E0C82EEE2407 +:1006E000E394F12CC730D10500F58091010181110F +:1006F00064C080E40E94C60280930101811112C08F +:1007000082E10E94F0028093010181110BC0C701B8 +:100710000C2E01C0880F0A94EAF780950E94F0021F +:10072000809301010E94E80248C0CA30A1F028F479 +:10073000C83059F0C93061F005C0CC3089F070F094 +:10074000CD3089F0209A289810C0219A29980DC0A0 +:10075000229A2A980AC0239A2B9807C0529A01C05D +:10076000539A5B9802C03E9A469890EA9A95F1F7A0 +:100770009FB1799902C082E001C080E091709D250F +:10078000982B7C9902C084E001C080E0892B7D9980 +:1007900002C038E001C030E0832B7E9902C020E126 +:1007A00001C020E0822B9FB19095991F9927991F36 +:1007B0009295990F907E892B0FC080910101811134 +:1007C00049C080E40E94C60280930101882379F128 +:1007D000B12C0E94E8028B2DF8019081981719F036 +:1007E0008083C09200010E940B0321960F5F1F4F70 +:1007F000CE30D10509F076CF80910001882361F1D8 +:10080000815080930001882339F08FE99FE00197A0 +:10081000F1F700C0000020C0A3E4B1E0E5E3F1E09F +:10082000CF01825F91919D938E13FCCF15C083E120 +:100830000E94F002809301018111CACF81E40E94DD +:10084000C602809301018111C3CF0E940103B82E1B +:10085000B094BFCF80E0C0CF0E94560481E0DF910A +:10086000CF911F910F91FF90EF90DF90CF90BF90AD +:100870000895E82FF0E0ED5BFE4F80810895089524 +:100880000F931F93CF93DF93C3E4D1E010E00C2FBD +:10089000025F899190E00E94F71A180F0C13F9CFAC +:1008A000812FDF91CF911F910F9108950C94260510 +:1008B00056985E9825982D9826982E9827982F98C8 +:1008C0008FEF90E0909389008093880090938B0045 +:1008D00080938A0090938D0080938C00259A2D9AA6 +:1008E0002FEF80E792E0215080409040E1F700C078 +:1008F0000000269A2E9A2FEF80E792E02150804048 +:100900009040E1F700C00000279A2F9A2FEF80E770 +:1009100092E0215080409040E1F700C0000025980F +:100920002D982FEF80E792E0215080409040E1F732 +:1009300000C0000026982E982FEF80E792E021500B +:1009400080409040E1F700C0000027982F9856980B +:100950005E9825982D9826982E9827982F98089578 +:1009600089EA8093800089E08093810024982C9804 +:100970003F988AB18F748AB96E98479A8BB1806B11 +:100980008BB9769A0E9458040C94250580E28093D6 +:1009900001018091510181110EC00E94C00281E0CD +:1009A000809351012FEF83ED90E3215080409040E0 +:1009B000E1F700C0000080E40E94C60280930101BC +:1009C00081112EC00E94F00280930101811128C084 +:1009D0000E94F00280930101811122C08FE30E94E6 +:1009E000F0028093010181111BC00E94E80280E4A3 +:1009F0000E94C60280930101811112C08CE00E9406 +:100A0000F0028093010181110BC00E94F0028093DB +:100A10000101811105C08FE30E94F0028093010162 +:100A20000E94E80280910101089561110BC0FC0150 +:100A30008281882321F085EE0E94061103C085EE95 +:100A40000E94CE1180E090E0089508956091BD016C +:100A50007091BE018091BF019091C0010E94031B63 +:100A600056985E9825982D9826982E9827982F9816 +:100A7000813019F0823021F00895259A2D9A089539 +:100A8000269A2E9A089581E0089581E008950C94A5 +:100A9000450508950F931F93CF93DF938C01FC01BD +:100AA000C081D181CE010E947C19BE010E94F30554 +:100AB000EC01B8010E944705882309F48DC0F801B4 +:100AC0008281882309F44AC080915D0181111FC091 +:100AD000C431F0E5DF0709F051C00E94490581E00B +:100AE00080935D010E949B1B90935C0180935B014E +:100AF0001092540110925601109255011092580113 +:100B00001092570110925A011092590165C08091BC +:100B10005B0190915C010E94A71B883C910570F4D9 +:100B200080915401E82FF0E0EE0FFF1FEB5AFE4FCB +:100B3000D183C0838F5F809354014EC0C43880E559 +:100B4000D80721F0C538D04501F13AC0F8018281BB +:100B5000882341F01092520182E01EC0C438E0E5C3 +:100B6000DE0759F580915201811106C086E20E948C +:100B7000061186E20E94CE1182E01CC0C438F0E566 +:100B8000DF0741F3C538D045D9F4F80182818823C5 +:100B900031F01092530180E20E941D121DC080911D +:100BA0005301811106C087E20E94061187E20E946C +:100BB000CE1180E20E9424120FC0C538D04529F31F +:100BC00081E08093520180935301C801DF91CF915E +:100BD0001F910F910C94430580E0DF91CF911F91FD +:100BE0000F910895089596E0799FF001112494E5FE +:100BF000899FE00DF11D1124E60FF11DEE0FFF1F7F +:100C0000E25FFE4F859194910895880F991FFC0132 +:100C1000E657F040859194910895880F991FFC0143 +:100C2000E65FFE4F8591949108950F931F93CF93A4 +:100C3000DF93EC01811520E3920750F5C11580E2A6 +:100C4000D80708F0C3C0CB3BD10590F4C83AD10512 +:100C500008F06AC0C53AD10508F05BC0C430D105C0 +:100C600008F0D0C1219709F0CAC101E010E00AC222 +:100C7000CF3FD10511F008F0C5C1C03FD10508F044 +:100C8000A2C0CE01805E9109089708F4BBC1B7C12C +:100C9000C13090E5D90709F4A2C020F5C0318FE436 +:100CA000D80770F4C11590E4D90708F094C0C115B5 +:100CB00021E3D20708F0A3C1DD278E01106CE2C149 +:100CC000C115D04509F09BC10E9483148FEF94E3B6 +:100CD0002CE0815090402040E1F700C000000E94CD +:100CE000F61BD0C1C11597E5D90758F4C03121E5ED +:100CF000D20708F01CC1C43180E5D80708F475C0DC +:100D00007EC1CE0190578115904108F078C1DF7007 +:100D100073C1C53AD10509F477C1C63AD10509F0C6 +:100D200076C102E810E4AEC1C83AD10509F472C137 +:100D3000C93AD10509F471C1CA3AD10509F470C1A3 +:100D4000CB3AD10509F46FC1CC3AD10509F46EC193 +:100D5000CD3AD10509F46DC1C03BD10509F46CC190 +:100D6000CE3AD10509F46BC1CF3AD10509F46AC175 +:100D7000C13BD10509F469C1C23BD10509F468C181 +:100D8000C33BD10509F467C1C43BD10509F466C171 +:100D9000C53BD10509F465C1C63BD10509F464C161 +:100DA000C73BD10509F463C1C83BD10509F462C151 +:100DB000C93BD10509F461C1CA3BD10509F460C141 +:100DC00000E014E45FC18E0110655CC1CE019F702C +:100DD0000E940D0658C1DF708E01106A53C18091C8 +:100DE000DA0181608093DA014DC10E949B1D81115F +:100DF00002C00E94811D0E94B81D90E09093FB01EB +:100E00008093FA01C23080E5D80721F48091FA017D +:100E1000816086C0C43090E5D90721F48091FA0141 +:100E200082607EC0C63020E5D20721F48091FA01AD +:100E3000846076C0C83080E5D80719F48091FA0143 +:100E400027C0CA3090E5D90721F48091FA0180616A +:100E500067C0CC3020E5D20721F48091FA0180628E +:100E60005FC0CE3080E5D80721F48091FA0180641C +:100E700057C0C03190E5D90721F48091FA0180680C +:100E80004FC0C23120E5D20729F48091FA01846075 +:100E9000886046C0C33080E5D80721F48091FA010C +:100EA0008E7F3EC0C53090E5D90721F48091FA01CC +:100EB0008D7F36C0C73020E5D20721F48091FA013A +:100EC0008B7F2EC0C93080E5D80719F48091FA01D4 +:100ED00026C0CB3090E5D90721F48091FA018F7EAE +:100EE0001FC0CD3020E5D20721F48091FA018F7D1B +:100EF00017C0CF3080E5D80721F48091FA018F7BAD +:100F00000FC0C13190E5D90721F48091FA018F77A4 +:100F100007C0C331D04531F48091FA018B7F877FC0 +:100F20008093FA018091FA010E94BC1DABC08D2F05 +:100F300099278F70992781309105D9F49E012370EC +:100F4000332702C0880F991F2A95E2F79C688E010B +:100F500044E0000F111F4A95E1F700271370802B22 +:100F6000912B53E0CC0FDD1F5A95E1F7C076DD27BA +:100F70002FC08230910531F4DC2FCC278E01016F18 +:100F8000106A80C08330910569F4CE01837099277F +:100F900001E010E002C0000F111F8A95E2F7C801BE +:100FA0009C680FC084309105B9F4CE0183709927F5 +:100FB00001E010E002C0000F111F8A95E2F7C8019E +:100FC0009A6823E0CC0FDD1F2A95E1F7C07ED77029 +:100FD0008C010C2B1D2B56C08530910531F4DC2F74 +:100FE000CC278E01046F106A4DC0069709F04AC0E5 +:100FF000CF71DD27DC2FCC278E01106243C000E0CB +:1010000010E040C08E013EC001E810E43BC003E8A0 +:1010100010E438C002EE14E435C009EE14E432C026 +:101020000AEE14E42FC005EB14E42CC006EB14E424 +:1010300029C007EB14E426C00CEC14E423C00DEC2B +:1010400014E420C003E815E41DC00AE815E41AC042 +:1010500002E915E417C004E915E414C001E216E43E +:1010600011C003E216E40EC004E216E40BC005E270 +:1010700016E408C006E216E405C007E216E402C062 +:101080000AE216E4C801DF91CF911F910F910895F4 +:1010900096E0799FF001112494E5899FE00DF11D00 +:1010A0001124E60FF11DEE0FFF1FE25FFE4F859149 +:1010B0009491803E9105E0F4803C910558F5813390 +:1010C000910509F46FC048F48932910509F463C0B1 +:1010D0008A32910509F46DC072C089339105E9F037 +:1010E00082389105D1F08533910509F44DC067C070 +:1010F000833E910581F138F4803E9105B9F0823E3E +:101100009105D9F05CC0863E910561F1873E91055D +:10111000A1F155C00E94050608952091FA0120FD15 +:1011200002C021FF4CC080EE90E049C08091FA01DE +:1011300080FFF9CF89E390E042C08091FA0182FFFD +:101140000EC08091FA0184FF03C080E090E037C0B8 +:1011500083EE90E034C08091FA0182FFF2CF82EEFC +:1011600090E02DC08091FA0183FF0BC08091FA01BD +:1011700084FDEBCF87EE90E022C08091FA0183FFDF +:10118000F5CF86EE90E01BC08091FA0185FF07C085 +:1011900089E290E014C08091FA0185FFF9CF85E3E0 +:1011A00090E00DC08091FA0186FF07C08AE290E0CE +:1011B00006C08091FA0186FFF9CF81E390E00E949A +:1011C0001506089508950C94E20880916E01089523 +:1011D000CF93DF9300D01F92CDB7DEB79C018091F3 +:1011E000F101843019F593E099833B832A8390932E +:1011F000E9008FEF9091E800815095FD06C095EDD4 +:101200009A95F1F700008111F5CF8091E80085FFF4 +:101210000DC040E050E063E070E0CE0101960E9416 +:10122000520B8091E8008E778093E8000F900F902A +:101230000F90DF91CF910895CF93DF9300D01F924D +:10124000CDB7DEB72091F101243021F522E02983CA +:101250009B838A8383E08093E9008FEF9091E8007D +:10126000815095FD06C095ED9A95F1F7000081112A +:10127000F5CF8091E80085FF0DC040E050E063E0CD +:1012800070E0CE0101960E94520B8091E8008E77AB +:101290008093E8000F900F900F90DF91CF91089509 +:1012A0002091F1012430F1F422E02093E9002FEFA6 +:1012B0003091E800215035FD06C035ED3A95F1F743 +:1012C00000002111F5CF2091E80025FF0BC040E080 +:1012D00050E065E070E00E94520B8091E8008E774C +:1012E0008093E8000895CF93DF93EC019091F10192 +:1012F000943009F046C080910C018823D9F0809188 +:101300000D018823B9F09093E9008FEF9091E800E8 +:10131000815095FD06C095E19A95F1F70000811185 +:10132000F5CF8091E80085FF2CC040E050E060E1FF +:1013300070E017C081E08093E9008FEF9091E800A2 +:10134000815095FD06C095ED9A95F1F70000811149 +:10135000F5CF8091E80085FF14C040E050E068E0E0 +:1013600070E0CE010E94520B8091E8008E7780934E +:10137000E80080E1FE01AEE5B1E001900D928A95B2 +:10138000E1F7DF91CF9108958091F001811109C0BB +:101390000E94E70C0E94440D8091E20084608093DB +:1013A000E20008951092F001089508950C942B2204 +:1013B0000E948C1B0E9431220E94EA0F0C94E308C9 +:1013C00042E061EC81E00E94610C42E061EC82E06D +:1013D0000E94610C42E061EC83E00E94610C42E1FA +:1013E00061EC84E00C94610C8091F301833009F48A +:1013F00055C030F4813071F0823009F48EC0089508 +:101400008A3009F47AC08B3009F460C0893009F061 +:101410009CC020C08091F201813A09F096C0809171 +:10142000E800877F8093E8008091F6019091F701B2 +:10143000892B21F460E18EE591E003C060E080E05B +:1014400090E070E00E949D0B8091E8008B77809384 +:10145000E80008958091F201813209F076C0809110 +:10146000F6019091F701009719F0039709F06DC00C +:101470008091E800877F8093E8008091E80082FDFA +:1014800005C08091F1018111F8CF5FC08091F1001A +:1014900080936E018091E8008B7753C08091F201B8 +:1014A000813A09F052C08091F6019091F701892BA1 +:1014B00009F04BC08091E800877F8093E80080911D +:1014C000E80080FFFCCF80910C0136C08091F201D2 +:1014D0008132D9F58091F6019091F701892BA9F518 +:1014E0008091E800877F8093E8000E94960C8091AD +:1014F000F40180930C010C9483148091F2018132E9 +:1015000021F58091E800877F8093E8000E94960C87 +:101510008091F50180936F0108958091F201813AE5 +:10152000A1F48091E800877F8093E8008091E80033 +:1015300080FFFCCF80916F018093F1008091E800E3 +:101540008E778093E8000C94960C089584B7877F7B +:1015500084BF88E10FB6F894809360001092600019 +:101560000FBE90E080E80FB6F894809361009093EE +:1015700061000FBE0E9439100E94E70C0E94440DCA +:101580008091E20084608093E20078940E94CA0F08 +:101590000E943B1082E091E00E94E50F0E94192218 +:1015A0008091F101853069F40E94531B8091EF0115 +:1015B0008823B1F30E947E1B882391F30E943C0B89 +:1015C000EFCF0E944110ECCF292F33272330310574 +:1015D000C9F064F42130310581F02230310509F081 +:1015E00043C08DE690E02AE333E042C0213231056A +:1015F000F1F02232310541F137C082E190E027EA73 +:1016000033E036C099278130910541F08230910551 +:1016100041F0892B49F5E6E3F3E005C0EEE1F3E0A4 +:1016200002C0E6E0F3E0849190E09F0121C06430C5 +:10163000D8F4E62FF0E0EE0FFF1FEE5DFE4F2081A5 +:10164000318189E090E014C0643070F470E0FB01F7 +:10165000EE0FFF1FE65EFE4F20813181FB01EA5E47 +:10166000FE4F808190E004C080E090E020E030E018 +:10167000FA0131832083089580E189BD82E189BD2B +:1016800009B400FEFDCF8091D8008F7D8093D800F3 +:101690008091E00082608093E0008091E00081FD15 +:1016A000FCCF0895CF92DF92EF92FF920F931F939A +:1016B000CF93DF93EC018B016A010E94B50C81117D +:1016C00033C0C114D10439F0F60180819181081B27 +:1016D000190BC80FD91FE12CF12C0115110519F1B7 +:1016E0008091E80085FD16C08091E8008E77809398 +:1016F000E800C114D10449F0F60180819181E80E1F +:10170000F91EF182E08285E00FC00E94B50C8823AB +:1017100021F30AC089918093F10001501109FFEF74 +:10172000EF1AFF0ADACF80E0DF91CF911F910F917E +:10173000FF90EF90DF90CF9008952091F8013091C5 +:10174000F9012617370748F06115710539F4209122 +:10175000E8002E772093E80001C0B90140E0611550 +:101760007105A9F12091F101222309F443C025302C +:1017700009F442C02091E80023FD40C02091E80018 +:1017800022FD32C02091E80020FFE9CF4091F30014 +:101790002091F20030E0342BFC01CF01611571057E +:1017A00059F02830310540F481918093F100615067 +:1017B00071092F5F3F4FF1CF41E02830310509F02B +:1017C00040E02091E8002E772093E800C8CF411137 +:1017D000C9CF0AC08091F101882361F0853061F0A2 +:1017E0008091E80083FD0AC08091E80082FFF2CF7B +:1017F00080E0089582E0089583E0089581E00895EF +:101800002091F8013091F9012617370748F061154A +:10181000710539F42091E8002E772093E80001C08B +:10182000B901FC0120E06115710591F18091F10190 +:10183000882309F440C0853009F43FC08091E80056 +:1018400083FD3DC08091E80082FD2FC08091E800BB +:1018500080FFE9CF2091F3008091F20090E0922B7D +:101860006115710559F08830910540F42491209359 +:10187000F1003196615071090196F2CF21E008978D +:1018800009F020E08091E8008E778093E800CBCFCC +:101890002111CCCF0AC08091F101882361F08530FD +:1018A00061F08091E80083FD0AC08091E80082FF2A +:1018B000F2CF80E0089582E0089583E0089581E00A +:1018C0000895982F973058F59093E900981739F0BC +:1018D0007091EC002091ED005091F00003C0242F96 +:1018E000762F50E021FF19C03091EB003E7F3093FE +:1018F000EB003091ED003D7F3093ED003091EB0037 +:1019000031603093EB007093EC002093ED00509326 +:10191000F0002091EE0027FF07C09F5FD3CF8F70AC +:101920008093E90081E0089580E008958091F201BC +:1019300087FF11C08091E80082FD05C08091F10110 +:101940008111F8CF11C08091E8008B770BC0809196 +:10195000F101882349F08091E80080FFF8CF809161 +:10196000E8008E778093E80008952091E40030919C +:10197000E50095E64091EC00842F817040FF22C085 +:101980008091E80080FD1CC08091F101882391F0D6 +:10199000853091F08091EB0085FD10C04091E4000E +:1019A0005091E5004217530729F39A01915011F71E +:1019B00084E0089582E0089583E0089581E0089529 +:1019C00080E008954091E80042FFDECF08950E9434 +:1019D000550D0E945D0DE0EEF0E080818160808316 +:1019E000E8EDF0E080818F77808319BCA7EDB0E04F +:1019F0008C918E7F8C9380818F7E80831092F001FA +:101A000008950F931F93CF93DF930E94550D0E946B +:101A10005D0DC8EDD0E088818F77888388818068EC +:101A2000888388818F7D888319BC1092F101109280 +:101A3000ED011092EF011092EE0100EE10E0F801BE +:101A400080818B7F808388818160888342E060E031 +:101A500080E00E94610CE1EEF0E080818E7F808367 +:101A6000E2EEF0E080818160808380818860808305 +:101A7000F80180818E7F8083888180618883DF91F7 +:101A8000CF911F910F910895E8EDF0E080818F7E56 +:101A90008083E7EDF0E080818160808384E082BF15 +:101AA00081E08093F0010C94010DE8EDF0E080817D +:101AB0008E7F80831092E20008951092DA001092D7 +:101AC000E10008951F920F920FB60F9211242F93E9 +:101AD0003F934F935F936F937F938F939F93AF93B6 +:101AE000BF93EF93FF938091E10082FF0BC0809141 +:101AF000E20082FF07C08091E1008B7F8093E100CC +:101B00000E94C90F8091DA0080FF1FC08091D80029 +:101B100080FF1BC08091DA008E7F8093DA00809175 +:101B2000D90080FF0DC080E189BD82E189BD09B483 +:101B300000FEFDCF81E08093F1010E94C40905C041 +:101B400019BC1092F1010E94D2098091E10080FF3E +:101B500019C08091E20080FF15C08091E2008E7F65 +:101B60008093E2008091E20080618093E2008091A6 +:101B7000D80080628093D80019BC85E08093F10181 +:101B80000E94D6098091E10084FF30C08091E2007C +:101B900084FF2CC080E189BD82E189BD09B400FECB +:101BA000FDCF8091D8008F7D8093D8008091E10097 +:101BB0008F7E8093E1008091E2008F7E8093E2002F +:101BC0008091E20081608093E2008091ED018823A2 +:101BD00011F084E007C08091E30087FD02C081E03E +:101BE00001C083E08093F1010E94D8098091E10057 +:101BF00083FF29C08091E20083FF25C08091E1002E +:101C0000877F8093E10082E08093F1011092ED01E3 +:101C10008091E1008E7F8093E1008091E2008E7FD1 +:101C20008093E2008091E20080618093E20042E0D4 +:101C300060E080E00E94610C8091F00088608093F9 +:101C4000F0000E94D509FF91EF91BF91AF919F9154 +:101C50008F917F916F915F914F913F912F910F9055 +:101C60000FBE0F901F9018951F920F920FB60F92F4 +:101C700011242F933F934F935F936F937F938F9391 +:101C80009F93AF93BF93CF93DF93EF93FF93C09155 +:101C9000E900CF708091EC00D82FD17080FDD0E8A2 +:101CA0001092E9008091F000877F8093F000789493 +:101CB0000E94780E1092E9008091F0008860809375 +:101CC000F000CD2BCF70C093E900FF91EF91DF9131 +:101CD000CF91BF91AF919F918F917F916F915F91C4 +:101CE0004F913F912F910F900FBE0F901F9018951D +:101CF0001F93CF93DF93CDB7DEB7AA970FB6F894B3 +:101D0000DEBF0FBECDBFE2EFF1E088E08E0F909115 +:101D1000F10091938E13FBCF0E94F4098091E800AB +:101D200083FF1FC18091F2019091F301492F50E090 +:101D30004A30510508F015C1FA01EA5AFF4F0C94D8 +:101D4000B323803881F0823809F00BC18091F6010D +:101D50008F708093E9008091EB0085FB882780F9E4 +:101D60001092E90006C08091EE019091EF0191116F +:101D700082609091E800977F9093E8008093F10053 +:101D80001092F100C8C0282F2D7F09F0EAC08823E7 +:101D900019F0823061F0E5C08091F401813009F0E2 +:101DA000E0C0933009F080E08093EF012BC0809178 +:101DB000F401811127C08091F6018F7009F4D1C020 +:101DC0008093E9002091EB0020FF1CC0933021F4A8 +:101DD0008091EB00806214C09091EB009061909331 +:101DE000EB0021E030E0A90102C0440F551F8A95A5 +:101DF000E2F74093EA001092EA008091EB008860DD +:101E00008093EB001092E9008091E800877F86C004 +:101E10008111A7C01091F4011F778091E3008078B1 +:101E2000812B8093E3008091E800877F8093E80016 +:101E30000E94960C8091E80080FFFCCF8091E30027 +:101E400080688093E300111102C082E001C083E04A +:101E50008093F10186C08058823008F082C0809162 +:101E6000F4019091F5018C3D53E0950779F583E0FD +:101E70008A838AE289834FB7F894DE01139620E0C3 +:101E80003EE051E2E32FF0E050935700E49120FF51 +:101E900003C0E295EF703F5FEF708E2F90E0EA3065 +:101EA00010F0C79601C0C0968D939D932F5F24318B +:101EB00049F74FBF8091E800877F8093E8006AE28E +:101EC00070E0CE0101960E949D0B14C0AE014F5FE1 +:101ED0005F4F6091F6010E94E40ABC01009709F48B +:101EE00040C09091E800977F9093E80089819A81A3 +:101EF0000E94000C8091E8008B778093E80031C04D +:101F0000803879F58091E800877F8093E8008091A0 +:101F1000ED018093F1008091E8008E778093E800D6 +:101F20000E94960C1EC081111CC09091F401923049 +:101F3000C0F48091E800877F8093E8009093ED01E2 +:101F40000E94960C8091ED01811106C08091E30002 +:101F500087FD02C081E001C084E08093F1010E940E +:101F6000E0098091E80083FF0AC08091E800877F44 +:101F70008093E8008091EB0080628093EB00AA964A +:101F80000FB6F894DEBF0FBECDBFDF91CF911F918A +:101F900008950895CF938091F1018823A1F0C09115 +:101FA000E900CF709091EC00892F817090FD80E85E +:101FB000C82B1092E9008091E80083FD0E94780E02 +:101FC000CF70C093E900CF910895909375018093ED +:101FD00074010895E0917401F0917501309721F03A +:101FE0000190F081E02D099480E00895E091740162 +:101FF000F0917501309721F00280F381E02D099472 +:102000000895E0917401F0917501309721F00480FA +:10201000F581E02D099408952091720130917301AA +:102020008217930771F09093730180937201E0918E +:102030007401F0917501309721F00680F781E02D51 +:1020400009940895209170013091710182179307CE +:1020500071F09093710180937001E0917401F0919F +:102060007501309721F00084F185E02D09940895E1 +:1020700008950C9438100E94921B0E9433030C9414 +:10208000541C9F92AF92BF92CF92DF92EF92FF9239 +:102090000F931F93CF93DF9300D000D000D0CDB724 +:1020A000DEB70E944B030DE010E0AA24A394B12CEC +:1020B000902E802F0E943904980129583E4F6901C3 +:1020C000F901F080F826A1F40150110988F78FEF8B +:1020D00089838A831B820E949B1B8160782F9D834A +:1020E0008C8349815A816B818D810E94D8102FC0C9 +:1020F0009091DA0191FF04C08E830E943F048E818B +:1021000025E030E0A501022E01C0440F0A94EAF751 +:10211000E42E4F21C1F029839A828E2191E009F4A7 +:1021200090E09B830E949B1B8160782F9D838C8312 +:1021300049815A816B818D810E94D810F60180817E +:10214000E826E08204C021503109E0F6BDCF0E94AC +:102150003B1F109176010E94EA0F1817B9F00E94F8 +:10216000EA0F8093760126960FB6F894DEBF0FBE75 +:10217000CDBFDF91CF911F910F91FF90EF90DF9036 +:10218000CF90BF90AF909F900C94E30826960FB627 +:10219000F894DEBF0FBECDBFDF91CF911F910F919D +:1021A000FF90EF90DF90CF90BF90AF909F900895F9 +:1021B000CF93DF93CDB7DEB72B970FB6F894DEBF82 +:1021C0000FBECDBF4F83588769877A878B87DE0123 +:1021D000119686E0FD0111928A95E9F785E0FE01EE +:1021E000379601900D928A95E1F749815A816B816A +:1021F0007C818D819E810E9421172B960FB6F894C9 +:10220000DEBF0FBECDBFDF91CF910895CF9388235E +:1022100009F4C2C0C82F823859F40E94EA0F81FD28 +:10222000BBC089E30E94FB190E94C81A89E30CC055 +:10223000833879F40E94EA0F80FDAEC083E50E94E6 +:10224000FB190E94C81A83E50E943D1ACF910C9495 +:10225000C81A843859F40E94EA0F82FD9DC087E4B1 +:102260000E94FB190E94C81A87E4EECF8CEF8C0FF6 +:10227000813A48F48C2F0E947E2181118DC08C2FD1 +:102280000E94FB19E3CF80E28C0F883048F4C770BE +:1022900081E001C0880FCA95EAF70E94811AD6CF63 +:1022A0008BE58C0F833078F4C53A29F0C63A31F0CB +:1022B00083E890E005C081E890E002C082E890E009 +:1022C000CF910C940C1088E58C0F833108F064C01A +:1022D000C83A39F1C93A41F1CA3A49F1CB3A51F118 +:1022E000CC3A59F1CD3A61F1C03B69F1CE3A71F186 +:1022F000CF3A79F1C13B81F1C23B89F1C33B91F106 +:10230000C43B99F1C53BA1F1C63BA9F1C73BB1F173 +:10231000C83BB9F1C93BC1F1CA3BC9F180E090E0CB +:1023200038C082EE90E035C089EE90E032C08AEE8F +:1023300090E02FC085EB90E02CC086EB90E029C0A8 +:1023400087EB90E026C08CEC90E023C08DEC90E011 +:1023500020C083E891E01DC08AE891E01AC082E9BC +:1023600091E017C084E991E014C081E292E011C0CD +:1023700083E292E00EC084E292E00BC085E292E03C +:1023800008C086E292E005C087E292E002C08AE2DD +:1023900092E0CF910C942210CF910895882309F4F4 +:1023A0004BC0823859F40E94EA0F81FF45C089E38F +:1023B0000E94FB190E94C81A89E30CC0833871F48B +:1023C0000E94EA0F80FF38C083E50E94FB190E943B +:1023D000C81A83E50E943D1A0C94C81A843859F42F +:1023E0000E94EA0F82FF28C087E40E94FB190E9426 +:1023F000C81A87E4EFCF9CEF980F913A58F390E218 +:10240000980F983050F4877091E001C0990F8A9529 +:10241000EAF7892F0E94871ADFCF9BE5980F933048 +:1024200020F480E090E00C940C10885A833120F462 +:1024300080E090E00C9422100895882321F00E94FF +:10244000811A0C94C81A0895882321F00E94871AD3 +:102450000C94C81A08957F928F929F92AF92BF9268 +:10246000CF92DF92EF92FF920F931F93CF93DF9360 +:102470001F92CDB7DEB77C01C62E772EFC010581F9 +:1024800002950F70128111110E949E1A0E94F41978 +:10249000882379F0112369F080E28C0D883048F0B0 +:1024A00082E00E94DD190E94F41991E0D82ED9260D +:1024B00001C0D12CE72DE295EF70F0E0E05AFF4F1C +:1024C0000C94B323872D807F072D0F70882311F084 +:1024D0000295007F112389F0002309F490C180E266 +:1024E0008C0D883020F4802F0E94811A03C0802F29 +:1024F0000E94911A0E94C81A82C18C2D0E94CE118E +:10250000002309F495C180E28C0D883020F4802FDF +:102510000E94871A03C0802F0E94971A0E94C81A2F +:1025200087C1972D907F872D8F70903211F0829503 +:10253000807FCC2021F0F1E0CF16B1F01EC0112336 +:1025400049F0002309F414C1013009F011C10E94BF +:10255000B11A6EC1002319F0013009F469C18983F1 +:102560000E94B41A89810AC1112321F0023008F0B7 +:102570005FC1FEC001115CC101C1112321F0002324 +:1025800009F4F6C03CC1002309F4F8C03EC1872D10 +:1025900086958695837090E0009719F0019761F019 +:1025A00047C1112321F08C2D972D937002C080E03C +:1025B00090E00E940C103CC1112321F08C2D972D2E +:1025C000937002C080E090E00E94221031C18C2DF7 +:1025D000112319F00E94431E02C00E94AB1E0E94EC +:1025E000301F26C1872D837009F052C0111120C100 +:1025F0008C2D829586958770880F880F9C2D9F70F3 +:10260000892E912CA12CB12C082E04C0880C991C69 +:10261000AA1CBB1C0A94D2F7C4FE14C00FE010E041 +:1026200020E030E0B901A80104C0440F551F661F27 +:10263000771F8A95D2F7CB01BA0160957095809586 +:10264000909503C060E070E0CB01272D269526957C +:10265000237030E02230310569F02330310589F0F4 +:10266000682979298A299B292130310571F00E9436 +:102670006918DEC0682979298A299B290E94851852 +:10268000D7C00E946918C501B4010E944D18D0C07E +:10269000112319F0872D817001C08695882309F4D4 +:1026A000C7C08C2D829586958770880F880F9C2DCA +:1026B0009F70892E912CA12CB12C082E04C0880C5F +:1026C000991CAA1CBB1C0A94D2F7C4FE14C00FE0CC +:1026D00010E020E030E0B901A80104C0440F551F0C +:1026E000661F771F8A95D2F7CB01BA016095709566 +:1026F0008095909503C060E070E0CB01272D269572 +:1027000026952370422F50E04230510569F0433046 +:10271000510589F0682979298A299B294130510579 +:1027200071F00E94431984C0682979298A299B295C +:102730000E945F197DC00E944319C501B4010E9427 +:10274000271976C08C2D90E0FC01E05EF109E5319F +:10275000F10508F050C0E059FF4F0C94B3230C2D45 +:102760000F70872D8F71112331F00E94C018802FB8 +:102770000E941D125DC00E94E118802F0E94241249 +:1027800057C0112339F0011153C0872D8F710E945A +:1027900006194EC0023008F04BC0F7CF112339F0B4 +:1027A000872D8F710E94C01843C01123C9F3872D54 +:1027B0008F710E94E1183CC0112329F0872D8F7181 +:1027C0000E94AB1835C00E94A11832C0112351F0ED +:1027D000172D1F71812F0E94C01863E0812F0E9466 +:1027E000D41926C081E00E94DD19023008F182E090 +:1027F0000E94DD191DC0112331F0002389F28C2DB8 +:102800000E94061115C0002391F28C2D0E94CE115A +:102810000FC0472D4F706C2DC7010E9415050E94F7 +:10282000C51706C0472D4F706C2DC7010E94F205D9 +:10283000DD20F9F00E94D01980FD1BC0F701128243 +:102840000E94CA190E94C018C7010E9448140E9421 +:10285000CA190F90DF91CF911F910F91FF90EF90C8 +:10286000DF90CF90BF90AF909F908F907F900C940F +:10287000E1180F90DF91CF911F910F91FF90EF9092 +:10288000DF90CF90BF90AF909F908F907F900895F2 +:102890000F931F93CF93DF93EC01888199812B8154 +:1028A0003C81232BB9F09F3F11F48F3F99F0CE016B +:1028B0000E944A05882371F0688179818A810E948B +:1028C000C6198C010E947B190E944218B801CE01E2 +:1028D0000E942B12DF91CF911F910F9108950E94BA +:1028E0009E1A0E94AE1A0E94731A0E94C81A0E9471 +:1028F000E11F0E94301F80E090E00E940C1080E0F9 +:1029000090E00C9422100E948E1A0C946F140E9476 +:10291000BB19292F22952F7030E02C3031054CF453 +:102920002A3031056CF42250310922303105A8F4E7 +:1029300007C02C30310569F02F30310551F00DC042 +:10294000803F69F018F4803E40F409C0843F29F4C8 +:1029500006C093FB882780F9089580E0089581E000 +:102960000895CF93DF9300D000D01F92CDB7DEB78C +:102970000F900F900F900F900F90DF91CF910895CF +:10298000CF93DF9300D000D000D0CDB7DEB726962E +:102990000FB6F894DEBF0FBECDBFDF91CF91089583 +:1029A0001F93CF93DF93C091850116E0809186013C +:1029B000C81799F0D0E01C9FF0011D9FF00D112465 +:1029C000E957FE4F408151816281738184819581F5 +:1029D0000E94C0142196C770E9CFDF91CF911F915B +:1029E00008954091B7015091B8016091B90170917B +:1029F000BA018091BB019091BC010C94C0148091EC +:102A0000BC0182958F7009F054C08091B901882370 +:102A100009F44FC080918501A09186016091B701B2 +:102A20007091B8014091BA015091BB01B6E08A178C +:102A300009F43FC090E041155105C1F17F3F11F409 +:102A40006F3FA1F1B89FF001B99FF00D1124E95734 +:102A5000FE4F218172132AC02081621327C0228178 +:102A6000211124C0238134812417350710F421500B +:102A70003109241B350B283C3105C0F42091BC01E1 +:102A80002F7020612093BC0126E0289FF001299F30 +:102A9000F00D1124E457FE4F80818F708061808398 +:102AA00087EB91E00E9448140C94D0140196877033 +:102AB000BECF0895CF92DF92EF92FF920F931F93B4 +:102AC000CF93DF93CDB7DEB762970FB6F894DEBF32 +:102AD0000FBECDBF8C0185E0F801DE011D9601908F +:102AE0000D928A95E1F7D8014C9111965C9111975E +:102AF00012966C9112971396CD90DC9014973091AA +:102B0000B7017091B8018091BA019091BB01009713 +:102B100009F46BC17F3F19F43F3F09F466C1E090AF +:102B2000B901EE2009F4C0C02091BC01C816D90635 +:102B300028F0F601E81BF90BCF0104C080959095B1 +:102B40008C0D9D1DFF24F394883C910578F0F12CA9 +:102B5000207F09F0C6C07C2DD98AC88A89890E9445 +:102B6000B11487EB91E00E944814B1C0822F807F9E +:102B700009F046C0751314C0341312C0611110C09F +:102B80002F7020612093BC010E94F11487EB91E02B +:102B90000E9448148091BC01D80115968C932EC0D8 +:102BA000CD2819F15F3F11F44F3FF9F0F62E611176 +:102BB0001CC0809185012091860136E0821709F4BE +:102BC0005AC090E0389FF001399FF00D1124E95769 +:102BD000FE4F7181571306C07081471303C0728185 +:102BE000711103C001968770E9CFF62E662309F4B0 +:102BF00018C18091BC0181608093BC01F12C11C18E +:102C0000751308C0341306C0611104C08091BC0163 +:102C1000D801C3C04D875E878D859E856A8B0E94D3 +:102C200087146A898823E1F16623D1F12091BC01E0 +:102C3000822F82958F7090E0029774F08091B70197 +:102C40009091B80198878F831986DB86CA862C8776 +:102C5000CE0107960E94481486E0F801A7EBB1E088 +:102C600001900D928A95E1F70E94FF140E94F114E1 +:102C7000FF24F394D6C04D875E878D859E850E9484 +:102C8000BB19292F22952F7030E0223031050CF02E +:102C9000BCC09F7009F0B6C0805E883008F4C1C027 +:102CA000C8010E944814E4CFC816D90608F453C0DE +:102CB000F601E81BF90BCF01883C910508F450C0E0 +:102CC000F12C7C2DD98AC88A89890E94B114E7EB3E +:102CD000F1E086E0DF011D928A95E9F70E94F11488 +:102CE000A0C0751314C0341312C0611110C08091BC +:102CF000BC01F8018583C8010E94481486E0E7EB17 +:102D0000F1E0DF011D928A95E9F7FE2C8AC04D871C +:102D10005E878D859E856A8B0E9487146A898823C9 +:102D200009F4BECF662309F4BBCF2091BC01822FEA +:102D300082958F7090E002970CF48ECF8091B7014E +:102D40009091B8019A8389831B82DD82CC822E8385 +:102D5000CE0101967FCF809590958C0D9D1DACCFB7 +:102D6000F62E662309F49CCF75132EC034132CC0A5 +:102D70002091BC0120FD1FC0822F82958F70D9F059 +:102D8000D80115962C9315978F3049F08F5F982FA7 +:102D90009295907F822F8F70892B15968C93C80106 +:102DA0000E94481486E0F801A7EBB1E001900D9273 +:102DB0008A95E1F793CF86E0F801A7EBB1E00190A7 +:102DC0000D928A95E1F72DC04D875E878D859E8592 +:102DD0000E948714811140CF8091BC018160809353 +:102DE000BC01C8010E9448141CC0662309F458CFD6 +:102DF0004D875E878D859E850E948714882309F400 +:102E00004FCF2ACF811148CF0CC0243031050CF0B0 +:102E100047CF9F7009F440CFF8019581907F09F06A +:102E20003BCF8F2D62960FB6F894DEBF0FBECDBF9D +:102E3000DF91CF911F910F91FF90EF90DF90CF9096 +:102E400008951F93CF93DF93CDB7DEB72C970FB6BE +:102E5000F894DEBF0FBECDBF4F83588769877A874E +:102E60008B879C87CE0107960E945A15882369F0AC +:102E70008F8198852A853B85232BF1F19F3F09F0AF +:102E800063C08F3F09F060C037C086E0FE0137960F +:102E9000DE01119601900D928A95E1F76F81788598 +:102EA000EA85FB85309741F17F3F11F46F3F21F1B7 +:102EB0002091860130E0C9010196877099274091E1 +:102EC000850150E08417950709F447C069837A8328 +:102ED000FD83EC8396E0929FD001939FB00D112467 +:102EE000A957BE4FFE01319601900D929A95E1F7D8 +:102EF000809386010E94D01416E080918501909104 +:102F000086018917C1F1189FC001112489579E4F6E +:102F10000E945A15882379F1E09185011E9FF001E6 +:102F20001124E957FE4F4081518162817381848170 +:102F300095810E94C0148091850190E00196877070 +:102F4000992780938501D9CF4F81588569857A85E6 +:102F50008B859C850E94C014CFCF0E948314109251 +:102F6000860110928501E7EBF1E086E0DF011D921A +:102F70008A95E9F7C1CF2C960FB6F894DEBF0FBE45 +:102F8000CDBFDF91CF911F910895EF92FF920F93E4 +:102F90001F93CF93DF938C01009709F46CC0F12C41 +:102FA000EE24E394E8012196F8018491843740F4FB +:102FB000843008F051C0813081F0823019F15BC05B +:102FC000853709F444C0A8F19CE7980F903708F0C2 +:102FD00052C08F770E94CE1141C00E5F1F4FFE017D +:102FE000C49180E28C0F883048F4C7708E2D01C0E8 +:102FF000880FCA95EAF70E94A11A14C08C2F0E946C +:1030000006112DC00E5F1F4FFE01C49180E28C0F90 +:10301000883058F4C7708E2D01C0880FCA95EAF722 +:103020000E94A71A0E94C81A1AC08C2F0E94CE11A3 +:1030300016C00E5F1F4FFE01C491CC2381F08FE9B3 +:103040009FE00197F1F700C00000C150F6CF0E5F7E +:103050001F4FFE01F49003C00E9406118E018F2DB8 +:10306000882309F49FCFEFE9FFE03197F1F700C023 +:1030700000008150F5CFDF91CF911F910F91FF900C +:10308000EF90089508956093C1017093C2018093F9 +:10309000C3019093C4010C946F140F931F9300917C +:1030A000C1011091C2012091C3013091C401DC0122 +:1030B000CB01802B912BA22BB32B8093C10190933A +:1030C000C201A093C301B093C4011F910F910C944E +:1030D0006F140F931F930091C1011091C2012091B1 +:1030E000C3013091C401DC01CB0180239123A223D1 +:1030F000B3238093C1019093C201A093C301B09305 +:10310000C4011F910F910C946F140F931F930091A2 +:10311000C1011091C2012091C3013091C401DC01B1 +:10312000CB0180279127A227B3278093C1019093D9 +:10313000C201A093C301B093C4011F910F910C94DD +:103140006F141092BD011092BE011092BF01109237 +:10315000C0010C946F1441E050E060E070E004C0E6 +:10316000440F551F661F771F8A95D2F74093BD0104 +:103170005093BE016093BF017093C0010C946F1413 +:1031800041E050E060E070E004C0440F551F661F4E +:10319000771F8A95D2F78091BD019091BE01A091D1 +:1031A000BF01B091C001482B592B6A2B7B2B409358 +:1031B000BD015093BE016093BF017093C0010C9498 +:1031C0006F1441E050E060E070E004C0440F551F10 +:1031D000661F771F8A95D2F7409550956095709538 +:1031E0008091BD019091BE01A091BF01B091C0013D +:1031F000482359236A237B234093BD015093BE018A +:103200006093BF017093C0010C946F1441E050E0D3 +:1032100060E070E004C0440F551F661F771F8A9559 +:10322000D2F78091BD019091BE01A091BF01B091F4 +:10323000C001482759276A277B274093BD01509337 +:10324000BE016093BF017093C0010C946F140F9383 +:103250001F930091BD011091BE012091BF013091DB +:10326000C001DC01CB01802B912BA22BB32B8093CF +:10327000BD019093BE01A093BF01B093C0011F9107 +:103280000F910C946F140F931F930091BD01109137 +:10329000BE012091BF013091C001DC01CB01802330 +:1032A0009123A223B3238093BD019093BE01A093E9 +:1032B000BF01B093C0011F910F910C946F140F9335 +:1032C0001F930091BD011091BE012091BF0130916B +:1032D000C001DC01CB0180279127A227B32780936F +:1032E000BD019093BE01A093BF01B093C0011F9197 +:1032F0000F910C946F140895CF92DF92EF92FF928A +:103300000F931F93CF93DF938C01C090C101D09096 +:10331000C201E090C301F090C4018091BD01909181 +:10332000BE01A091BF01B091C001C82AD92AEA2AE2 +:10333000FB2ACFE1D0E0D701C6010C2E04C0B69520 +:10334000A795979587950A94D2F780FF06C0B80194 +:103350008C2F0E944808019721F4219760F780E0A4 +:1033600001C08C2FDF91CF911F910F91FF90EF90B3 +:10337000DF90CF900895CF93DF93EC010E947C19EA +:10338000BE010E944808DF91CF910895CB010E94B1 +:10339000BB1908958091C5018595859585950895FA +:1033A0008091C5018770089598E0899F900111244C +:1033B000262B2093C5010C94C0182091C50180953F +:1033C00082238093C501982F977069F430E0482FCD +:1033D000552747FD50952417350729F08595859584 +:1033E00085950C94E11808959091C501977081E03E +:1033F00009F480E0089590910C01992321F09091B7 +:103400000D01911109C020910E0130910F01F901B8 +:1034100032969FEF40E01FC0982F9695969596950F +:103420009F3050F5E0910E01F0910F01E90FF11D71 +:10343000877021E030E0A90102C0440F551F8A9532 +:10344000E2F7CA019181892B818308959F3F39F06A +:103450004F5F4E3041F051915813F8CF0DC05111CC +:10346000F7CF942FF5CF9F3F39F0F901E90FF11D08 +:1034700097FDFA9582830895089590910C01992300 +:1034800021F090910D01911109C020910E01309110 +:103490000F01F9013296205F3F4F1FC0982F96957C +:1034A000969596959F30F0F4E0910E01F0910F0102 +:1034B000E90FF11D877021E030E0A90102C0440F3F +:1034C000551F8A95E2F7CA018095918189238183EE +:1034D00008953196E217F30729F090819813F9CFF8 +:1034E0001082F7CF089581E090E0E0910E01F09115 +:1034F0000F01E80FF91F1082019680319105A9F79D +:1035000008959091D901892B8093D90108958095D0 +:103510009091D90189238093D90108951092D901FE +:1035200008959091D801892B8093D80108958095B2 +:103530009091D80189238093D80108951092D801E1 +:1035400008959091D701892B8093D7010895809594 +:103550009091D70189238093D70108951092D701C4 +:1035600008958093C60108951092C6010895809130 +:103570000E0190910F01FC0131969C01205F3F4F9D +:1035800080E0919191118F5FE217F307D1F70895D1 +:10359000E0910E01F0910F018091D9018083E091BB +:1035A0000E01F0910F0190818091D801892B8083C9 +:1035B000E0910E01F0910F0190818091D701892B4C +:1035C00080838091C601882361F0E0910E01F09123 +:1035D0000F019081892B80830E94B71A811110926C +:1035E000C60180910E0190910F010C94F60F20E01E +:1035F000009739F0AC0141505109842395232F5F86 +:10360000F7CF822F0895CF92DF92EF92FF926C0155 +:10361000EE24FF24C114D104E104F10421F0C70118 +:10362000B60120E101C020E0C72ED82EE92EFF24EC +:10363000C114D104E104F10419F0285FC701B601F7 +:103640006B017C0154E0F694E794D794C7945A95A3 +:10365000D1F7C114D104E104F10419F02C5FC701C2 +:10366000B6016B017C0142E0F694E794D794C794CD +:103670004A95D1F7C114D104E104F10419F02E5F89 +:10368000C701B601DC01CB01B695A7959795879543 +:10369000892B8A2B8B2B09F02F5F822FFF90EF90C5 +:1036A000DF90CF9008958091F101843021F1109244 +:1036B000DB0120E488E190E00FB6F894A8958093B0 +:1036C00060000FBE2093600080E00E94E30883B793 +:1036D000817F846083BF83B7816083BF789488953E +:1036E00083B78E7F83BF88E10FB6F8948093600024 +:1036F000109260000FBE0895089508950E947C1BEB +:103700000E944B030E947D1B0E94400491E08111A6 +:1037100001C090E0892F08950E9483140E94EA0F4F +:103720000C94E30882E084BD93E095BD9AEF97BDC9 +:1037300080936E0008952FB7F8948091DC019091EA +:10374000DD01A091DE01B091DF012FBF0895CF927E +:10375000DF92EF92FF920F931F932FB7F89440914F +:10376000DC015091DD016091DE017091DF012FBF1E +:103770006A017B01EE24FF248C0120E030E0C016BA +:10378000D106E206F30610F4415051099A01281BB4 +:10379000390BC9011F910F91FF90EF90DF90CF90EF +:1037A00008951F920F920FB60F9211248F939F933B +:1037B000AF93BF938091DC019091DD01A091DE0178 +:1037C000B091DF010196A11DB11D8093DC019093A2 +:1037D000DD01A093DE01B093DF01BF91AF919F9116 +:1037E0008F910F900FBE0F901F9018950E94E70CBD +:1037F000F8942FEF87EA91E6215080409040E1F75E +:1038000000C0000087E090EBDC018093FB01909307 +:10381000FC01A093FD01B093FE019CE088E10FB68E +:10382000F894A895809360000FBE90936000FFCF3E +:10383000EF92FF920F931F93CF93DF93D82FCDE09A +:103840008C2F0E94390405E010E0E82EF12CC7010E +:10385000002E02C0959587950A94E2F780FF09C073 +:10386000602F7C2F80E00E94F305D81302C081E016 +:1038700006C00150110958F7C15010F780E0DF91E0 +:10388000CF911F910F91FF90EF900895CF93C82F84 +:103890008CE20E94181C882321F08C2FCF910C946D +:1038A000181C80E0CF910895CF930E949B1D811139 +:1038B00002C00E94811DC5E6C15049F00E944B0321 +:1038C0008FE39CE90197F1F700C00000F5CF89E292 +:1038D0000E94461C811113C18AE20E94461C81117C +:1038E0000E94811D85E00E94461C81110E94F61BEA +:1038F0000E94A61D8093DA0187E00E94461C88235F +:10390000A9F18BE10E94461C882351F08091DA01D5 +:1039100081FB222720F991E0922790FB81F90EC0CC +:103920008EE00E94461C882361F08091DA0182FBC0 +:10393000222720F991E0922790FB82F98093DA0107 +:1039400015C080E10E94461C9091DA01882341F065 +:1039500093FB222720F981E0822780FB93F904C0A2 +:10396000892F809580FB90F99093DA018091DA019C +:103970000E94AA1D0E94B81D8093FA0180EE0E9449 +:10398000461C882341F08091FA01982F909590FB76 +:1039900080F98093FA0189E30E94461C882359F03C +:1039A0008091FA0181FB222720F991E0922790FB78 +:1039B00081F98093FA0182EE0E94461C882359F017 +:1039C0008091FA0182FB222720F991E0922790FB57 +:1039D00082F98093FA0186EE0E94461C882359F0F2 +:1039E0008091FA0183FB222720F991E0922790FB36 +:1039F00083F98093FA0183EE0E94461C882359F0D4 +:103A00008091FA0184FB222720F991E0922790FB14 +:103A100084F98093FA0185E30E94461C882359F0BB +:103A20008091FA0185FB222720F991E0922790FBF3 +:103A300085F98093FA0181E30E94461C882359F09E +:103A40008091FA0186FB222720F991E0922790FBD2 +:103A500086F98093FA0181E10E94461C882359F07F +:103A60008091FA0187FB222720F991E0922790FBB1 +:103A700087F98093FA018091FA010E94BC1D809120 +:103A8000FA0187FB882780F980930D0187E20E9465 +:103A9000461CC82F8EE10E94461C8111C2608FE136 +:103AA0000E94461C8111C46080E20E94461C811164 +:103AB000C86081E20E94461C8111C06182E20E94BE +:103AC000461C8111C06283E20E94461C8111C064C1 +:103AD00084E20E94461C882311F0C06802C0CC23F7 +:103AE00029F08C2F0E94B31D6C2F03C00E94AF1DC4 +:103AF000682F70E080E090E0CF910C944318CF9154 +:103B000008956DEE7EEF80E090E00E94ED2360E08E +:103B100082E090E00E94DB2360E083E090E00E947E +:103B2000DB2360E084E090E00E94DB2360E085E03E +:103B300090E00C94DB2380E090E00E94D52321E00C +:103B40008D3E9E4F09F020E0822F089582E090E0A4 +:103B50000C94CD23682F82E090E00C94DB2383E06B +:103B600090E00C94CD23682F83E090E00C94DB234D +:103B700084E090E00C94CD23682F84E090E00C94D6 +:103B8000DB238091E20180FF0BC06091130185E08F +:103B9000689FB001112475956795759567952BC041 +:103BA00081FF09C06091130185E0689FB001112475 +:103BB0007595679520C082FF07C06091130185E06D +:103BC000689FB001112417C09091E3019923D1F0AF +:103BD00060911201961788F72091130185E0289FC4 +:103BE00090011124929FA001939F500D112470E029 +:103BF000CA010E949F236038710540F46115710568 +:103C000039F002C065E070E0862F08958FE70895CF +:103C100081E008958091E20180FF08C06091110168 +:103C200070E0759567957595679521C081FF06C011 +:103C30006091110170E07595679519C082FF04C00D +:103C40006091110170E010C09091E3019923C1F0DF +:103C5000609110019617A0F780911101899FC00112 +:103C6000112470E00E949F236038710528F46115CB +:103C7000710521F0862F08958FE7089581E008955A +:103C800061E070E0F4CF803F21F40E94C11D819576 +:103C900004C0813F29F40E94C11D8093E60108956C +:103CA000823F21F40E94C11D819504C0833F29F405 +:103CB0000E94C11D8093E5010895893F19F40E9477 +:103CC0000A1E05C08A3F31F40E940A1E8195809326 +:103CD000E70108958B3F21F40E940A1E819504C0DC +:103CE0008C3F29F40E940A1E8093E8010895843FC6 +:103CF00021F48091E401816017C0853F21F4809117 +:103D0000E401826011C0863F21F48091E401846067 +:103D10000BC0873F21F48091E401886005C0883F93 +:103D200031F48091E40180618093E40108958D3F36 +:103D300021F48091E20181600BC08E3F21F48091DB +:103D4000E201826005C08F3F29F48091E201846026 +:103D50008093E2010895803F39F48091E60187FF66 +:103D60006CC01092E60169C0813F29F48091E601A0 +:103D70001816BCF362C09091E501823F29F497FFC9 +:103D80005CC01092E50159C0833F19F41916CCF3B9 +:103D900054C0893F41F48091E70118160CF04DC0E2 +:103DA0001092E7014AC08A3F29F48091E70187FF1A +:103DB00044C0F6CF8B3F39F48091E80187FF3DC0C6 +:103DC0001092E8013AC08C3F29F48091E80118165E +:103DD000BCF333C0843F21F48091E4018E7F17C08F +:103DE000853F21F48091E4018D7F11C0863F21F44D +:103DF0008091E4018B7F0BC0873F21F48091E40127 +:103E0000877F05C0883F31F48091E4018F7E8093E5 +:103E1000E40113C08D3F21F48091E2018E7F0BC03D +:103E20008E3F21F48091E2018D7F05C08F3F29F400 +:103E30008091E2018B7F8093E2018091E501811105 +:103E40000EC08091E60181110AC08091E7018111C5 +:103E500006C08091E801811102C01092E30108952B +:103E600084EE91E00E9401100E949B1B9093E1015F +:103E70008093E00108951F93CF93DF938091E00139 +:103E80009091E1010E94A71BAC019091E30199235D +:103E900021F02091140130E006C0209115018AE044 +:103EA000289F900111244217530708F486C080917F +:103EB000E501C091E601D091E7011091E80181117F +:103EC00007C0C11176C0D11174C0111172C075C084 +:103ED0009F3F19F09F5F9093E301181624F40E940E +:103EE000C11D8093E5018091E50187FF05C00E9417 +:103EF000C11D81958093E5011C1624F40E94C11D0B +:103F00008093E6018091E60187FF05C00E94C11DF4 +:103F100081958093E6016091E501662339F1C091B6 +:103F2000E601CC2319F1772767FD7095872F972F2E +:103F30000E94B02223E333E343E35FE30E941423B0 +:103F40000E947D226093E5016C2F772767FD7095B5 +:103F5000872F972F0E94B02223E333E343E35FE3ED +:103F60000E9414230E947D226093E6011D1624F412 +:103F70000E940A1E8093E7018091E70187FF05C038 +:103F80000E940A1E81958093E701111624F40E9475 +:103F90000A1E8093E8018091E80187FF05C00E9416 +:103FA0000A1E81958093E801DF91CF911F910C94B7 +:103FB000301F9F3F09F08ECF96CFDF91CF911F9199 +:103FC0000895E4EEF1E085E0DF011D928A95E9F7BE +:103FD0001092E3011092E2010895833081F128F4F8 +:103FE000813059F08230D1F00895853009F449C00C +:103FF000B8F1863009F456C0089580911501262F36 +:1040000030E0280F311D2F3F310524F4680F6093F5 +:10401000150108958FEF8093150108958091140183 +:10402000262F30E0280F311D2F3F310524F4680F73 +:104030006093140108958FEF809314010895809187 +:104040001301262F30E0280F311D2F3F310524F4B6 +:10405000680F6093130108958FEF80931301089503 +:1040600080911201262F30E0280F311D2F3F31059E +:1040700024F4680F6093120108958FEF809312016A +:10408000089580911101262F30E0280F311D2F3F18 +:10409000310524F4680F6093110108958FEF809328 +:1040A0001101089580911001262F30E0280F311D55 +:1040B0002F3F310524F4680F6093100108958FEFAE +:1040C000809310010895833011F128F4813049F074 +:1040D000823091F00895853081F120F18630C1F170 +:1040E000089580911501681720F4861B80931501AF +:1040F000089510921501089580911401681720F415 +:10410000861B8093140108951092140108958091E4 +:104110001301681720F4861B8093130108951092F1 +:104120001301089580911201681720F4861B809373 +:1041300012010895109212010895809111016817DB +:1041400020F4861B809311010895109211010895A7 +:1041500080911001681720F4861B80931001089548 +:104160001092100108950F931F938D3109F46BC0C5 +:1041700008F03FC08E3009F47FC0C0F4873009F4E6 +:1041800069C068F4863009F0B1C08091DA01817F9E +:104190008E7F8093DA0181E08093EA01A8C08830A5 +:1041A00009F4A2C08B3009F49FC0A0C0863109F485 +:1041B0009BC078F4803109F472C0813109F096C057 +:1041C0000E94831490910D0181E0892780930D0155 +:1041D0008BC0893109F488C08B3109F087C0809188 +:1041E000DA0181FB222720F991E0922790FB81F9E7 +:1041F0004CC0853309F470C048F4873209F46CC0B0 +:1042000008F459C0893209F467C070C0833438F4A7 +:104210008A3308F04EC0883309F466C067C083341F +:1042200009F45AC0883409F061C00E9483140FEF6A +:1042300013ED20E3015010402040E1F700C00000E2 +:104240000E94F61B51C00E9437220E94EA0F0E9472 +:10425000E3084AC09091DA01892F8095817080FB34 +:1042600090F929F0966098609093DA0140C0997FA8 +:10427000977F9093DA0138C08091DA0182FB222780 +:1042800020F991E0922790FB82F98093DA0199233B +:1042900059F18091DA0181608093DA0125C0809123 +:1042A000DA0183FB222720F991E0922790FB83F922 +:1042B000ECCF895301C08D5141E050E060E070E0E7 +:1042C0008A019B0104C0000F111F221F331F8A9512 +:1042D000D2F7C901B80104C061E070E080E090E06D +:1042E0000E9443180E94831481E001C080E01F9166 +:1042F0000F91089580E0089580E00895CF93C82F2E +:104300008091EA01813079F018F08230E9F187C0BC +:10431000E0910E01F0910F018081813169F08232CC +:1043200009F07FC009C0E0910E01F0910F0180817A +:10433000813111F0823261F48C2F0E947A21811137 +:1043400004C08C2F0E94B3201DC081E090E01AC0F1 +:104350008C2F0E947C21811114C0C43179F048F463 +:10436000CB3079F0C03109F060C082E08093EA017F +:1043700008C0C93219F0C83321F057C01092EA01C1 +:1043800054C081E0817053C0C93289F118F5C4313D +:1043900071F1A8F4C73009F046C08AE08093150196 +:1043A00094E19093140193E0909313018093120190 +:1043B00088E08093110188E28093100134C0CE51CF +:1043C000C63088F5EC2FF0E0E65DFE4F80818093EB +:1043D000E90129C0CE34E9F020F4CB3421F56AE0BC +:1043E00013C0C13579F0C235F1F461E00DC08091A0 +:1043F000E901882319F01092E90115C081E080934A +:10440000EA0115C061E006C08091E9010E94ED1F3C +:104410000AC06AE08091E9010E94632004C0109202 +:10442000EA0180E004C081E002C080E0ABCFCF9120 +:104430000895E1E8F0E08081886080838081816078 +:1044400080838FB7F89493E09093890090ED9093D8 +:1044500088008FBF0895EFE6F0E08081826080835E +:104460000895EFE6F0E080818D7F80830895EFE688 +:10447000F0E0908182E08927808308951F920F9257 +:104480000FB60F9211242F933F934F935F936F9327 +:104490007F938F939F93AF93BF93EF93FF938091FD +:1044A000EB019091EC0101969093EC018093EB016C +:1044B000811103C082E00E94E308E091EC01E695DF +:1044C000E695F0E0EC54FB4FE4918091EB018E1304 +:1044D00003C080E00E94E308FF91EF91BF91AF918C +:1044E0009F918F917F916F915F914F913F912F910C +:1044F0000F900FBE0F901F90189504D06894B111C3 +:104500008DC0089570D088F09F5790F0B92F9927EB +:10451000B751A0F0D1F0660F771F881F991F1AF0CE +:10452000BA95C9F712C0B13081F077D0B1E00895E3 +:1045300074C0672F782F8827B85F39F0B93FCCF364 +:10454000869577956795B395D9F73EF490958095C4 +:10455000709561957F4F8F4F9F4F0895E89409C0E4 +:1045600097FB3EF490958095709561957F4F8F4FA6 +:104570009F4F9923A9F0F92F96E9BB279395F695BC +:10458000879577956795B795F111F8CFFAF4BB0F3A +:1045900011F460FF1BC06F5F7F4F8F4F9F4F16C09E +:1045A000882311F096E911C0772321F09EE8872F28 +:1045B000762F05C0662371F096E8862F70E060E0E4 +:1045C0002AF09A95660F771F881FDAF7880F96955D +:1045D000879597F9089557FD9058440F551F59F046 +:1045E0005F3F71F04795880F97FB991F61F09F3FE0 +:1045F00079F087950895121613061406551FF2CF09 +:104600004695F1DF08C0161617061806991FF1CF58 +:1046100086957105610508940895E894BB2766277F +:104620007727CB0197F908950BD078C069D028F08F +:104630006ED018F0952309F05AC05FC01124EECF58 +:10464000CADFA0F3959FD1F3950F50E0551F629FED +:10465000F001729FBB27F00DB11D639FAA27F00DDB +:10466000B11DAA1F649F6627B00DA11D661F829F02 +:104670002227B00DA11D621F739FB00DA11D621FE7 +:10468000839FA00D611D221F749F3327A00D611D04 +:10469000231F849F600D211D822F762F6A2F1124E6 +:1046A0009F5750408AF0E1F088234AF0EE0FFF1F39 +:1046B000BB1F661F771F881F91505040A9F79E3F70 +:1046C000510570F014C0AACF5F3FECF3983EDCF3C5 +:1046D000869577956795B795F795E7959F5FC1F7AD +:1046E000FE2B880F911D9695879597F9089597F958 +:1046F0009F6780E870E060E008959FEF80EC089588 +:1047000000240A94161617061806090608950024B0 +:104710000A9412161306140605060895092E03942A +:10472000000C11F4882352F0BB0F40F4BF2B11F49E +:1047300060FF04C06F5F7F4F8F4F9F4F089597FBBF +:10474000072E16F4009407D077FD09D00E94B923F4 +:1047500007FC05D03EF4909581959F4F0895709584 +:1047600061957F4F0895EE0FFF1F0590F491E02DA6 +:104770000994AA1BBB1B51E107C0AA1FBB1FA617A8 +:10478000B70710F0A61BB70B881F991F5A95A9F7FA +:1047900080959095BC01CD010895F999FECF92BD09 +:1047A00081BDF89A992780B50895A8E1B0E042E06C +:1047B00050E00C94F523262FF999FECF92BD81BDD0 +:1047C000F89A019700B4021639F01FBA20BD0FB64F +:1047D000F894FA9AF99A0FBE08950196272F0E942D +:1047E000DC230C94DB23DC01CB01FC01F999FECF27 +:1047F00006C0F2BDE1BDF89A319600B40D92415069 +:0A4800005040B8F70895F894FFCF78 +:10480A000220E508730950091C09E8080101C701DB +:10481A0028080A03140A3F4D363975042804F2039E +:10482A00B9034C0365037E039703010203040506DB +:04483A000708090062 +:00000001FF diff --git a/keyboards/ergodox_ez/keymaps/naps62/keymap.c b/keyboards/ergodox_ez/keymaps/naps62/keymap.c new file mode 100644 index 0000000000..d8c28423cf --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/naps62/keymap.c @@ -0,0 +1,187 @@ +#include "ergodox_ez.h" +#include "debug.h" +#include "action_layer.h" + +#define BASE 0 // default layer +#define SYMB 1 // symbols +#define MDIA 2 // media keys + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* Keymap 0: Basic layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | Esc | 1 ! | 2 @ | 3 # | 4 $ | 5 % | Lang | | Esc | 6 ^ | 7 & | 8 * | 9 ( | 0 ) | Bckspc | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Tab | Q | W | E | R | T | L2 | | L2 | Y | U | I | O | P | \ | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | Ctrl | A | S | D | F | G |------| |------| H | J | K | L | ; : | ' " | + * |--------+------+------+------+------+------| L1 | | L1 |------+------+------+------+------+--------| + * | LShift | Z | X | C | V | B | | | | N | M | , < | . > | / ? | - _ | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | L1 | ` ~ | ' " | \ | | L2 | | { | } | [ { | ] } | L1 | + * `----------------------------------' `----------------------------------' + * ,--------------. ,---------------. + * | Home | End | | PgUp |Insert | + * ,------|-------|------| |-------+-------+------. + * | | | LGui | | Del | | | + * | Space| Alt |------| |-------| Enter |Space | + * | | | LGui | | Bcsp | | | + * `---------------------' `----------------------' + */ +// If it accepts an argument (i.e, is a function), it doesn't need KC_. +// Otherwise, it needs KC_* +[BASE] = KEYMAP( // layer 0 : default + // left hand + KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, LGUI(KC_SPC), + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, MO(2), + KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, MO(1), + MO(1), KC_GRV, KC_QUOT, KC_BSLS, MO(2), + + KC_HOME, KC_END, + KC_LGUI, + KC_SPC, KC_LALT, KC_LGUI, + + // right hand + KC_ESC, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, + MO(2), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, + KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + MO(1), KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_MINS, + KC_LCBR, KC_RCBR, KC_LBRC, KC_RBRC, MO(1), + + KC_PGUP, KC_INS, + KC_DEL, + KC_BSPC, KC_ENT, KC_SPC +), +/* 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_EQL,KC_DOT, KC_0, KC_MINS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), +/* Keymap 2: Media and mouse keys + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | |GuiUp | Expl | | Term | | | | | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | |GuiLft|GuiDwn|GuiRgt| | |------| |------| Left | Down | Up |Right | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | |Browsr| | | | |VolDwn|VolUp | Mute | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | Lclk | Rclk | | Play | Prev | Next | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | |Brwser|Brwser| + * | Lclk | Rclk |------| |------|Fwd |Back | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// MEDIA AND MOUSE +KEYMAP( + RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, LGUI(KC_W), LGUI(KC_E), KC_BTN1, LGUI(KC_T), KC_TRNS, + KC_TRNS, LGUI(KC_A), LGUI(KC_S), LGUI(KC_D), 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_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_BTN1, KC_BTN2, 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_LEFT, KC_DOWN, KC_UP, KC_RIGHT, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_VOLD, KC_VOLU, KC_MUTE, KC_TRNS, KC_TRNS, + KC_MPLY, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_WBAK, KC_WFWD +), +}; + +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/keyboards/ergodox_ez/keymaps/ordinary/compiled.hex b/keyboards/ergodox_ez/keymaps/ordinary/compiled.hex new file mode 100644 index 0000000000..501f14f9fb --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/ordinary/compiled.hex @@ -0,0 +1,1182 @@ +:100000000C94ED020C9431030C9431030C943103E5 +:100010000C9431030C9431030C9431030C94310390 +:100020000C9431030C9431030C94C10F0C94931075 +:100030000C9431030C9431030C9431030C94310370 +:100040000C9431030C94FD220C9431030C94310375 +:100050000C9431030C94DF1D0C9431030C94310388 +:100060000C9431030C9431030C9431030C94310340 +:100070000C9431030C9431030C9431030C94310330 +:100080000C9431030C9431030C9431030C94310320 +:100090000C9431030C9431030C9431030C94310310 +:1000A0000C9431030C9431030C943103AB05DF0540 +:1000B00004064206AB05E8052606500605070507B7 +:1000C000D406DC06E406F2060011221110122211F9 +:1000D000101267118A111012DF11F211C114C1142C +:1000E000F014F01426154615771677165115771665 +:1000F0000116011668167716771671160E160E166B +:100100000E160E160E160E160E160E160E160E16CF +:100110000E160E160E160E160E160E1620162D168E +:1001200034163B16451600000000000000000000D9 +:10013000000000000000000000000AC80BC80CC846 +:100140000DC80EC80FC810C811C80D200C200B30E8 +:100150000A30E00000001E00140004001D0000072B +:100160004E001F001A0016001B00000F4C0020005C +:10017000080007000600E2002A002100150009001F +:100180001900E3004B00220017000A0005000000E0 +:100190004A0029002F0000002B0200004D002D0016 +:1001A000300000002B000000500023001C000B005A +:1001B000110000004F00240018000D001000E7009F +:1001C000520025000C000E003600E6002C00260030 +:1001D00012000F003700000F280027001300330023 +:1001E000380000075100112010200F200E30E400CD +:1001F00000000100010001000100E00000003A00E1 +:100200001E0220022202000751003B001F022102B1 +:100210002302000F28003C002F0226022F00E200DC +:100220002C003D00300227023000E30052003E0067 +:10023000240235003502000050002900360200007B +:100240002B0000004F002D00370200002B020000A1 +:100250004A003F0031023800310000004D004000EC +:10026000240021001E0027684B00410025002200C9 +:100270001F0037644C0042002600230020002E6F30 +:100280002A004300380025022D002E674E00010091 +:1002900001000100010028610000010001000100CF +:1002A0000100E000000044006600A6000000000716 +:1002B000B50045001430F2001630F600000068006A +:1002C000F000F100F100F400B60069001530F30011 +:1002D0001730F500B4006A00A900AA00A8000000C9 +:1002E000B8002900F9000000FA000000B900000081 +:1002F000F9000000FA000000AC006B00460053005B +:1003000000000000AB006C004A0050004D0049683E +:10031000A9006D005200510051004C64AE006E0007 +:100320004B004F004E00000FAD006F00B100B30056 +:1003300000000007AA000100010001000100E40024 +:10034000000001000100010001000100000029007F +:100350000100010001000100010001000100010095 +:100360000100010001000100010001000100010085 +:100370000100010001000100010001000100010075 +:100380000100010001000000010001000100000067 +:100390000100000001000100010000000100000058 +:1003A0000100010001000100010000000100010046 +:1003B0000100010001000100010001000100010035 +:1003C0000100010001000100010001000100010025 +:1003D00001002A00010001000100010001000100EC +:1003E00001000100E5000100000016034500720055 +:1003F00067006F0044006F007800200045005A003D +:10040000000016034500720067006F0044006F0093 +:100410007800200045005A00000004030904090286 +:100420006D00040100A0FA090400000103010100AD +:100430000921110100012240000705810308000A7B +:100440000904010001030102000921110100012238 +:100450004D000705820308000A0904020001030099 +:10046000000009211101000122360007058303085D +:10047000000A090403000103000000092111010022 +:100480000122390007058403100001120110010048 +:10049000000008EDFE07130100010200010501093B +:1004A00006A101050719E029E71500250195087542 +:1004B000018102050819012905950575019102952B +:1004C000017503910105071900297715002501958C +:1004D0007875018102C005010980A101850216011C +:1004E0000026B7001A01002AB70075109501810097 +:1004F000C0050C0901A1018503160100269C021A02 +:1005000001002A9C02751095018100C005010902B5 +:10051000A1010901A10005091901290515002501FD +:100520009505750181029501750381010501093069 +:1005300009311581257F95027508810609381581D5 +:10054000257F950175088106050C0A38021581255D +:100550007F950175088106C0C005010906A1010546 +:100560000719E029E7150025019508750181029515 +:100570000175088101050819012905950575019185 +:10058000029501750391010507190029FF15002641 +:10059000FF00950675088100C00000000000000003 +:1005A00000000000010204060A0F17202C3A4A5DE1 +:1005B00071879DB3C7DAE9F5FCFFFCF5E9DAC7B34B +:1005C0009D87715D4A3A2C20170F0A06040201002C +:1005D0000000000000000000000011241FBECFEF4B +:1005E000DAE0DEBFCDBF04B603FE24C08091050271 +:1005F00090910602A0910702B09108028730904BBB +:10060000A740B04BB9F41092050210920602109266 +:1006100007021092080214BE84B7877F84BF88E166 +:100620000FB6F89480936000109260000FBEE0E077 +:10063000FFE3099511E0A0E0B1E0E8E8F9E402C0C9 +:1006400005900D92A433B107D9F712E0A4E3B1E00D +:1006500001C01D92A530B107E1F70E94090D0C946D +:10066000C2240C9400001092B9008AE08093B80074 +:10067000089594EA9093BC009091BC0097FFFCCF42 +:100680009091B900987F983021F0903111F081E07D +:1006900008958093BB0084E88093BC008091BC00E7 +:1006A00087FFFCCF8091B900887F883111F08034BA +:1006B00071F780E0089584E98093BC008091BC00CC +:1006C00084FDFCCF08958093BB0084E88093BC0038 +:1006D0008091BC0087FFFCCF9091B900987F81E0AA +:1006E000983209F480E0089584E88093BC008091FA +:1006F000BC0087FFFCCF8091BB00089580B38C7055 +:1007000080BB81B3836F81BB08958091010181110A +:1007100015C080E40E9439038093010181110CC04F +:1007200082E10E94630380930101811105C08FEF74 +:100730000E946303809301010E945B0384B1807F68 +:1007400084B985B1807F85B98AB1837F8AB98BB13D +:10075000837F8BB93E98469808950E944F058093F9 +:1007600001010E9485030E947E03A5E3B1E0E3E45A +:10077000F1E08EE08E0F11921D928E13FCCF0C943F +:1007800039050E944F05809301010E9485030E9454 +:100790007E03A5E3B1E0E3E4F1E08EE08E0F119279 +:1007A0001D928E13FCCF0895BF92CF92DF92EF92ED +:1007B000FF920F931F93CF93DF93809101018823C2 +:1007C00079F0809134018F5F80933401811108C0EA +:1007D0000E944F0580930101811102C00E94E10433 +:1007E00005E311E0C0E0D0E0DD24D39482E0C82E20 +:1007F000EE24E394F12CC730D10500F5809101017E +:10080000811164C080E40E94390380930101811149 +:1008100012C082E10E9463038093010181110BC029 +:10082000C7010C2E01C0880F0A94EAF780950E9438 +:100830006303809301010E945B0348C0CA30A1F0AA +:1008400028F4C83059F0C93061F005C0CC3089F0C7 +:1008500070F0CD3089F0209A289810C0219A2998FC +:100860000DC0229A2A980AC0239A2B9807C0529A40 +:1008700001C0539A5B9802C03E9A469890EA9A95B6 +:10088000F1F79FB1799902C082E001C080E09170D8 +:100890009D25982B7C9902C084E001C080E0892BC3 +:1008A0007D9902C038E001C030E0832B7E9902C000 +:1008B00020E101C020E0822B9FB19095991F9927DC +:1008C000991F9295990F907E892B0FC080910101FD +:1008D000811149C080E40E9439038093010188237B +:1008E00079F1B12C0E945B038B2DF8019081981750 +:1008F00019F08083C09200010E94850321960F5F4A +:100900001F4FCE30D10509F076CF809100018823AA +:1009100061F1815080930001882339F08FE99FE0D5 +:100920000197F1F700C0000020C0A3E4B1E0E5E3C7 +:10093000F1E0CF01825F91919D938E13FCCF15C0A2 +:1009400083E10E946303809301018111CACF81E496 +:100950000E943903809301018111C3CF0E94740367 +:10096000B82EB094BFCF80E0C0CF0E94DF0481E0FA +:10097000DF91CF911F910F91FF90EF90DF90CF907B +:10098000BF900895E82FF0E0ED5BFE4F8081089561 +:1009900008950F931F93CF93DF93C3E4D1E010E04A +:1009A0000C2F025F899190E00E94561D180F0C13C6 +:1009B000F9CF812FDF91CF911F910F9108950C9462 +:1009C000090756985E9825982D9826982E9827986E +:1009D0002F988FEF90E090938900809388009093F8 +:1009E0008B0080938A0090938D0080938C00259AD1 +:1009F0002D9A2FEF80E792E0215080409040E1F760 +:100A000000C00000269A2E9A2FEF80E792E0215036 +:100A100080409040E1F700C00000279A2F9A2FEF06 +:100A200080E792E0215080409040E1F700C0000054 +:100A300025982D982FEF80E792E02150804090403C +:100A4000E1F700C0000026982E982FEF80E792E093 +:100A5000215080409040E1F700C0000027982F9877 +:100A600056985E9825982D9826982E9827982F9816 +:100A7000089589EA8093800089E08093810024981A +:100A80002C983F988AB18F748AB96E98479A8BB127 +:100A9000806B8BB9769A0E94E1040C94080780E27F +:100AA000809301018091510181110EC00E94330396 +:100AB00081E0809351012FEF83ED90E3215080403E +:100AC0009040E1F700C0000080E40E943903809369 +:100AD000010181112EC00E946303809301018111E5 +:100AE00028C00E94630380930101811122C08FE31B +:100AF0000E9463038093010181111BC00E945B036C +:100B000080E40E94390380930101811112C08CE0BE +:100B10000E9463038093010181110BC00E94630353 +:100B200080930101811105C08FE30E9463038093CC +:100B300001010E945B03809101010895462F50E05E +:100B4000FA013A97EE30F10508F05FC1DC01EA5A8C +:100B5000FF4F0C94722412962C9112978091580199 +:100B6000909159012223F9F015962C91207FD9F408 +:100B700001968330910510F082E090E09093590146 +:100B800080935801809158019091590182309105CC +:100B900029F489E30E94651389E30EC0019709F0E7 +:100BA00034C181EEFAC001979093590180935801A6 +:100BB000892B09F02AC181EE0E942D1426C11296BC +:100BC0002C918091560190915701222379F090C089 +:100BD00012963C91129715962C9180915601909106 +:100BE0005701207F31117AC009F09FC0019790937F +:100BF000570180935601892B09F007C18091530159 +:100C0000811103C181E067C012963C91129715963D +:100C10002C918091540190915501207F332361F0F4 +:100C2000222309F491C0009709F08EC0209152014F +:100C300021118AC08BE2B1C02223B1F00097A1F448 +:100C400020915201211110C08BE2B6CF12963C9137 +:100C5000129715962C918091540190915501207F07 +:100C6000311168C009F08DC00197909355018093B0 +:100C70005401892B09F0C9C0809152018111C5C06E +:100C800082E029C012969C91129715968C91992317 +:100C9000B1F0982F907F79F080FD0DC085E37DC085 +:100CA00012969C91129715968C91992379F0982F12 +:100CB000907F09F06FC083E00E941F1BA6C0982F91 +:100CC000907F41F080FD06C085E376CF982F907F1E +:100CD00009F066C083E00E94401B97C0222341F0C8 +:100CE000009731F420915301211102C084E355C0D3 +:100CF00001968330910510F082E090E090935701C7 +:100D00008093560180915601909157018230910550 +:100D100029F0019709F079C081E0CECF909153017D +:100D200081E089278093530170C0009709F05ECF5E +:100D300084E342CF222341F0009731F42091520105 +:100D4000211102C081E329C001968330910510F082 +:100D500082E090E09093550180935401809154017A +:100D6000909155018230910529F0019709F04DC00D +:100D700082E0A2CF9091520181E0892780935201B5 +:100D800044C0009709F070CF2091520121116CCF1F +:100D900081E312CF80FD8FCF8EE20E94651335C0B4 +:100DA00080FD98CF8EE208CF12968C91882311F0A7 +:100DB00080EF0FC080EF12C012968C91882311F043 +:100DC00080EF15C080EF1AC012968C91882329F00D +:100DD00081EF0E94FC1E82EF0DC081EF0E94641F14 +:100DE00082EF0FC012968C91882339F081EF0E9418 +:100DF000FC1E83EF0E94FC1E06C081EF0E94641F50 +:100E000083EF0E94641F0E94E91F80E090E0089534 +:100E100008958091580190915901892B19F0259AD4 +:100E20002D9A0DC0E0910E01F0910F01808185FD9A +:100E3000F6CF0E94491281FDF2CF25982D9880911E +:100E4000C60181FF03C0269A2E9A02C026982E98CA +:100E50008091C60182FF03C0279A2F9A0895279890 +:100E60002F98089581E0089581E008950C94340747 +:100E70000895282F882339F090E02A3010F44D96F9 +:100E800008950697089587E290E00895AF92BF9283 +:100E9000DF92EF92FF920F931F93CF93DF938C011A +:100EA000FC01C081D181CE010E94DB1BBE010E94EA +:100EB000B60AEC01B8010E943607882309F4C9C1BB +:100EC000F8018281882309F4BEC0809166018111F6 +:100ED0001FC0C431F0E7DF0709F0B5C10E94380731 +:100EE00081E0809366010E94A91D90936501809323 +:100EF000640110925D0110925F0110925E011092E8 +:100F00006101109260011092630110926201A1C10F +:100F100080916401909165010E94B51D883C910506 +:100F200070F480915D01E82FF0E0EE0FFF1FE25AB0 +:100F3000FE4FD183C0838F5F80935D018AC1C13032 +:100F400020E8D20708F451C0F8018281882309F40F +:100F50007EC05E01E894B7F880915C01813079F041 +:100F600050F08230C1F482EE0E94651387E50E9442 +:100F7000651387E50EC082EE0E9465130CC080EEFB +:100F80000E94651381EE0E94651388E10E9465133B +:100F900088E10E942D148CE0E82EF12CC5010E2C66 +:100FA00002C0969587950A94E2F78F700E943907E0 +:100FB000D82E0E9465138D2D0E942D14F4E0EF1A97 +:100FC000F1082CEFE2162FEFF20641F780915C0159 +:100FD000813029F010F0823041F482EE04C080EEBE +:100FE0000E942D1481EE0E942D14C43180E7D80791 +:100FF00068F4C23090E7D90708F046C0C115E0E7B1 +:10100000DE0771F0C130D047A1F10CC1C33320E736 +:10101000D20709F4D8C0C433D04709F4EBC002C1E9 +:10102000F8018281882309F402C10E94E216FFEFD1 +:1010300024E38CE0F15020408040E1F700C0000044 +:101040000E94041E06C1C13080E8D80770F2C43186 +:1010500020E7D20708F0B3C0C23080E7D807A0F479 +:10106000C11590E7D90709F4E2C0C130D04709F0B3 +:10107000D9C0F8018281882309F4D9C08091E301A5 +:1010800081608093E301E5C0F8018281882309F43F +:10109000CEC00E945E1E811102C00E94441E0E94AA +:1010A000711E90E09093F7018093F601C230F0E753 +:1010B000DF0721F48091F60181607AC0C33020E718 +:1010C000D20721F48091F601826072C0C43080E7BB +:1010D000D80721F48091F60184606AC0C53090E79A +:1010E000D90719F48091F60127C0C630E0E7DE0782 +:1010F00021F48091F60180615BC0C730F0E7DF0723 +:1011000021F48091F601806253C0C83020E7D207F5 +:1011100021F48091F60180644BC0C93080E7D80784 +:1011200021F48091F601806843C0CA3090E7D90766 +:1011300029F48091F601846088603AC0CB30E0E702 +:10114000DE0721F48091F6018E7F32C0CC30F0E7CB +:10115000DF0721F48091F6018D7F2AC0CD3020E792 +:10116000D20721F48091F6018B7F22C0CE3080E738 +:10117000D80719F48091F6011AC08091F601CF309A +:1011800090E7D90711F48F7E13C0C031E0E7DE0786 +:1011900011F48F7D0DC0C131F0E7DF0711F48F7BB3 +:1011A00007C0C231D04711F48F7702C08B7F877F91 +:1011B0008093F6018091F6010E94751E4AC0C333E8 +:1011C000F0E7DF07A1F4F8018281882321F0109273 +:1011D0005A0182E016C080915A01811106C086E250 +:1011E0000E94651386E20E942D1482E018C0C43369 +:1011F000D047C1F4F8018281882331F010925B015D +:1012000080E20E947C1425C080915B01811106C0A0 +:1012100087E20E94651387E20E942D1480E20E94FB +:10122000831417C081E080935A0180935B01C80149 +:10123000DF91CF911F910F91FF90EF90DF90BF90C2 +:10124000AF900C943207C130F0E8DF0708F081CE90 +:10125000CCCE80E0DF91CF911F910F91FF90EF9066 +:10126000DF90BF90AF90089526E0729FF0011124A7 +:1012700044E5849FE00DF11D1124E60FF11DEE0FF2 +:10128000FF1FE65BFE4F859194910E94C80A81156D +:1012900060E49607B0F5811570E3970708F0DEC0AB +:1012A000803E9105D8F4803C910508F06CC0883AE6 +:1012B000910578F4853A910508F06BC0813091056D +:1012C00009F452C108F40FC18430910508F04CC1F3 +:1012D0000AC18B3B910508F467C005C18F3F91059A +:1012E00009F048F4803F910508F0ADC0883E9105B3 +:1012F00008F43AC1F8C0811520E2920708F0A5C0B1 +:101300000895811543E5940790F4811562E59607E9 +:1013100008F0C8C0811571E5970708F0BEC08115B7 +:1013200020E5920708F09DC09F70906A089581158E +:1013300045E59407D8F4811564E5960708F0C8C020 +:10134000482F4695469570E2479FA001112483706F +:10135000992721E030E0B90102C0660F771F8A9516 +:10136000E2F7CB01842B952B9A680895811576E5D9 +:10137000970708F4B2C09C0130562115304108F09F +:10138000B2C09F70AEC0FC01EE0FFF1FEA55F040E7 +:1013900062C0853A910509F4A9C0863A910509F021 +:1013A000A8C082E890E40895883A910509F4A4C0A1 +:1013B000893A910509F4A3C08A3A910509F4A2C0BB +:1013C0008B3A910509F4A1C08C3A910509F4A0C0AB +:1013D0008D3A910509F49FC0803B910509F49EC0A8 +:1013E0008E3A910509F49DC08F3A910509F49CC08D +:1013F000813B910509F49BC0823B910509F49AC099 +:10140000833B910509F499C0843B910509F498C088 +:10141000853B910509F497C0863B910509F496C078 +:10142000873B910509F495C0883B910509F494C068 +:10143000893B910509F493C08A3B910509F492C058 +:1014400080E094E4089590650895FC01FF70EE0F2C +:10145000FF1FEA5DFE4F8591949108959927906C46 +:101460000895482F437021E030E002C0220F331F5F +:101470004A95E2F73C68AC0164E0569547956A9559 +:10148000E1F74370342B8F708695869560E2869FD6 +:10149000C0011124822B932B0895982F8827816FE8 +:1014A000906A0895482F4695469570E2479FA0019F +:1014B00011248370992721E030E0B90102C0660F42 +:1014C000771F8A95E2F7CB01842B952B9C680895B2 +:1014D000982F8827846F906A08958F719927982F85 +:1014E00088279062089580E090E0089581E890E474 +:1014F000089583E890E4089582EE94E4089589EED7 +:1015000094E408958AEE94E4089585EB94E40895B4 +:1015100086EB94E4089587EB94E408958CEC94E4CE +:1015200008958DEC94E4089583E895E408958AE89D +:1015300095E4089582E995E4089584E995E4089591 +:1015400081E296E4089583E296E4089584E296E4C5 +:10155000089585E296E4089586E296E4089587E288 +:1015600096E408958AE296E40895089596E0799FB6 +:10157000F001112494E5899FE00DF11D1124E60F7F +:10158000F11DEE0FFF1FE65BFE4F859194910895CC +:101590008238910549F1B0F48133910509F458C0BE +:1015A00048F48932910509F44EC08A32910509F454 +:1015B00054C008958533910509F440C089339105DD +:1015C00099F00895833E910529F138F4803E910504 +:1015D00091F0823E9105A1F00895863E9105F9F0C3 +:1015E000873E910531F108952091F60120FD3AC022 +:1015F00021FD38C008958091F60180FD35C032C0CC +:101600008091F60182FF32C08091F60184FD30C0E6 +:1016100083EE39C08091F60182FD28C0F5CF80911C +:10162000F60183FF27C08091F60184FD21C087EE7B +:101630002AC08091F60183FD1DC0F5CF8091F6018F +:1016400085FD1AC01BC08091F60185FD17C014C02E +:101650008091F60186FD14C015C08091F60186FDCB +:1016600011C00EC080EE0FC089E30DC082EE0BC02A +:1016700080E009C086EE07C089E205C085E303C0AB +:101680008AE201C081E390E0089508950C94450B2F +:10169000809177010895CF93DF9300D01F92CDB74B +:1016A000DEB79C018091FC01843019F593E09983A9 +:1016B0003B832A839093E9008FEF9091E80081505B +:1016C00095FD06C095ED9A95F1F700008111F5CFD3 +:1016D0008091E80085FF0DC040E050E063E070E0DD +:1016E000CE0101960E94B10D8091E8008E77809323 +:1016F000E8000F900F900F90DF91CF910895CF9356 +:10170000DF9300D01F92CDB7DEB72091FC012430CB +:1017100021F522E029839B838A8383E08093E9007B +:101720008FEF9091E800815095FD06C095ED9A9558 +:10173000F1F700008111F5CF8091E80085FF0DC021 +:1017400040E050E063E070E0CE0101960E94B10DF0 +:101750008091E8008E778093E8000F900F900F90B3 +:10176000DF91CF9108952091FC012430F1F422E023 +:101770002093E9002FEF3091E800215035FD06C09D +:1017800035ED3A95F1F700002111F5CF2091E800F1 +:1017900025FF0BC040E050E065E070E00E94B10D15 +:1017A0008091E8008E778093E8000895CF93DF93CF +:1017B000EC019091FC01943009F046C080910C013D +:1017C0008823D9F080910D018823B9F09093E90026 +:1017D0008FEF9091E800815095FD06C095E19A95B4 +:1017E000F1F700008111F5CF8091E80085FF2CC052 +:1017F00040E050E060E170E017C081E08093E900D4 +:101800008FEF9091E800815095FD06C095ED9A9577 +:10181000F1F700008111F5CF8091E80085FF14C039 +:1018200040E050E068E070E0CE010E94B10D809190 +:10183000E8008E778093E80080E1FE01A7E6B1E042 +:1018400001900D928A95E1F7DF91CF9108958091F3 +:10185000FB01811109C00E94460F0E94A30F8091D5 +:10186000E20084608093E20008951092FB010895E5 +:1018700008950C94EA220E949A1D0E94F0220E9470 +:1018800049120C94460B42E061EC81E00E94C00ECC +:1018900042E061EC82E00E94C00E42E061EC83E035 +:1018A0000E94C00E42E161EC84E00C94C00E809175 +:1018B000FE01833009F455C030F4813071F082307C +:1018C00009F48EC008958A3009F47AC08B3009F487 +:1018D00060C0893009F09CC020C08091FD01813A30 +:1018E00009F096C08091E800877F8093E80080919E +:1018F000010290910202892B21F460E187E691E0D8 +:1019000003C060E080E090E070E00E94FC0D8091F8 +:10191000E8008B778093E80008958091FD01813283 +:1019200009F076C08091010290910202009719F0AF +:10193000039709F06DC08091E800877F8093E800ED +:101940008091E80082FD05C08091FC018111F8CFF3 +:101950005FC08091F100809377018091E8008B77E0 +:1019600053C08091FD01813A09F052C0809101027B +:1019700090910202892B09F04BC08091E800877F8B +:101980008093E8008091E80080FFFCCF80910C01FB +:1019900036C08091FD018132D9F58091010290918C +:1019A0000202892BA9F58091E800877F8093E800E7 +:1019B0000E94F50E8091FF0180930C010C94E216B9 +:1019C0008091FD01813221F58091E800877F80932D +:1019D000E8000E94F50E809100028093780108953E +:1019E0008091FD01813AA1F48091E800877F809386 +:1019F000E8008091E80080FFFCCF8091780180931F +:101A0000F1008091E8008E778093E8000C94F50E49 +:101A1000089584B7877F84BF88E10FB6F8948093D8 +:101A20006000109260000FBE80E880936100109209 +:101A300061000E9498120E94460F0E94A30F80919D +:101A4000E20084608093E20078940E9429120E9450 +:101A50009A1282E091E00E9444120E94D822809162 +:101A6000FC01853069F40E94621D8091FA0188238F +:101A7000B1F30E948C1D882391F30E949B0DEFCF40 +:101A80000E94A012ECCF292F332723303105C9F053 +:101A900064F42130310581F02230310509F043C072 +:101AA0008DE690E02EE134E042C021323105F1F0C4 +:101AB0002232310541F137C082E190E02BE834E079 +:101AC00036C099278130910541F08230910541F06F +:101AD000892B49F5EAE1F4E005C0E2E0F4E002C058 +:101AE000EAEEF3E0849190E09F0121C06430D8F4E5 +:101AF000E62FF0E0EE0FFF1FEE5DFE4F20813181FB +:101B000089E090E014C0643070F470E0FB01EE0FE7 +:101B1000FF1FE65EFE4F20813181FB01EA5EFE4F32 +:101B2000808190E004C080E090E020E030E0FA01A5 +:101B300031832083089580E189BD82E189BD09B4A4 +:101B400000FEFDCF8091D8008F7D8093D8008091DA +:101B5000E00082608093E0008091E00081FDFCCF96 +:101B60000895CF92DF92EF92FF920F931F93CF933E +:101B7000DF93EC018B016A010E94140F811133C0C5 +:101B8000C114D10439F0F60180819181081B190B31 +:101B9000C80FD91FE12CF12C0115110519F1809105 +:101BA000E80085FD16C08091E8008E778093E800FC +:101BB000C114D10449F0F60180819181E80EF91E2B +:101BC000F182E08285E00FC00E94140F882321F388 +:101BD0000AC089918093F10001501109FFEFEF1ABB +:101BE000FF0ADACF80E0DF91CF911F910F91FF9034 +:101BF000EF90DF90CF90089520910302309104027E +:101C00002617370748F06115710539F42091E8006F +:101C10002E772093E80001C0B90140E061157105FD +:101C2000A9F12091FC01222309F443C0253009F4D5 +:101C300042C02091E80023FD40C02091E80022FD31 +:101C400032C02091E80020FFE9CF4091F3002091BD +:101C5000F20030E0342BFC01CF016115710559F021 +:101C60002830310540F481918093F1006150710971 +:101C70002F5F3F4FF1CF41E02830310509F040E0C0 +:101C80002091E8002E772093E800C8CF4111C9CFFA +:101C90000AC08091FC01882361F0853061F0809159 +:101CA000E80083FD0AC08091E80082FFF2CF80E067 +:101CB000089582E0089583E0089581E008952091D9 +:101CC0000302309104022617370748F061157105A9 +:101CD00039F42091E8002E772093E80001C0B90183 +:101CE000FC0120E06115710591F18091FC018823D0 +:101CF00009F440C0853009F43FC08091E80083FDBD +:101D00003DC08091E80082FD2FC08091E80080FFF7 +:101D1000E9CF2091F3008091F20090E0922B6115C1 +:101D2000710559F08830910540F424912093F10019 +:101D30003196615071090196F2CF21E0089709F0C0 +:101D400020E08091E8008E778093E800CBCF2111CE +:101D5000CCCF0AC08091FC01882361F0853061F00E +:101D60008091E80083FD0AC08091E80082FFF2CFF5 +:101D700080E0089582E0089583E0089581E0089569 +:101D8000982F973058F59093E900981739F0709193 +:101D9000EC002091ED005091F00003C0242F762F2D +:101DA00050E021FF19C03091EB003E7F3093EB00F3 +:101DB0003091ED003D7F3093ED003091EB003160CC +:101DC0003093EB007093EC002093ED005093F00003 +:101DD0002091EE0027FF07C09F5FD3CF8F708093C5 +:101DE000E90081E0089580E008958091FD0187FF7A +:101DF00011C08091E80082FD05C08091FC01811135 +:101E0000F8CF11C08091E8008B770BC08091FC0166 +:101E1000882349F08091E80080FFF8CF8091E800A6 +:101E20008E778093E80008952091E4003091E500DA +:101E300095E64091EC00842F817040FF22C0809194 +:101E4000E80080FD1CC08091FC01882391F0853062 +:101E500091F08091EB0085FD10C04091E40050911D +:101E6000E5004217530729F39A01915011F784E0D6 +:101E7000089582E0089583E0089581E0089580E068 +:101E800008954091E80042FFDECF08950E94B40F0C +:101E90000E94BC0FE0EEF0E0808181608083E8ED7D +:101EA000F0E080818F77808319BCA7EDB0E08C9142 +:101EB0008E7F8C9380818F7E80831092FB010895AA +:101EC0000F931F93CF93DF930E94B40F0E94BC0F18 +:101ED000C8EDD0E088818F77888388818068888387 +:101EE00088818F7D888319BC1092FC011092F801C3 +:101EF0001092FA011092F90100EE10E0F8018081D1 +:101F00008B7F808388818160888342E060E080E00D +:101F10000E94C00EE1EEF0E080818E7F8083E2EED1 +:101F2000F0E0808181608083808188608083F80117 +:101F300080818E7F8083888180618883DF91CF91CB +:101F40001F910F910895E8EDF0E080818F7E8083EE +:101F5000E7EDF0E080818160808384E082BF81E0F2 +:101F60008093FB010C94600FE8EDF0E080818E7FA0 +:101F700080831092E20008951092DA001092E1003E +:101F800008951F920F920FB60F9211242F933F9333 +:101F90004F935F936F937F938F939F93AF93BF9371 +:101FA000EF93FF938091E10082FF0BC08091E200EC +:101FB00082FF07C08091E1008B7F8093E1000E9447 +:101FC00028128091DA0080FF1FC08091D80080FF26 +:101FD0001BC08091DA008E7F8093DA008091D90057 +:101FE00080FF0DC080E189BD82E189BD09B400FE9A +:101FF000FDCF81E08093FC010E94270C05C019BC35 +:102000001092FC010E94350C8091E10080FF19C004 +:102010008091E20080FF15C08091E2008E7F809366 +:10202000E2008091E20080618093E2008091D8001C +:1020300080628093D80019BC85E08093FC010E94E7 +:10204000390C8091E10084FF30C08091E20084FF70 +:102050002CC080E189BD82E189BD09B400FEFDCFBD +:102060008091D8008F7D8093D8008091E1008F7E91 +:102070008093E1008091E2008F7E8093E200809166 +:10208000E20081608093E2008091F801882311F0E2 +:1020900084E007C08091E30087FD02C081E001C0B9 +:1020A00083E08093FC010E943B0C8091E10083FF60 +:1020B00029C08091E20083FF25C08091E100877FE5 +:1020C0008093E10082E08093FC011092F8018091FE +:1020D000E1008E7F8093E1008091E2008E7F80930B +:1020E000E2008091E20080618093E20042E060E0E3 +:1020F00080E00E94C00E8091F00088608093F00024 +:102100000E94380CFF91EF91BF91AF919F918F91F9 +:102110007F916F915F914F913F912F910F900FBEE3 +:102120000F901F9018951F920F920FB60F921124C7 +:102130002F933F934F935F936F937F938F939F93CF +:10214000AF93BF93CF93DF93EF93FF93C091E900D9 +:10215000CF708091EC00D82FD17080FDD0E8109224 +:10216000E9008091F000877F8093F00078940E94CE +:10217000D7101092E9008091F00088608093F00001 +:10218000CD2BCF70C093E900FF91EF91DF91CF91FC +:10219000BF91AF919F918F917F916F915F914F917F +:1021A0003F912F910F900FBE0F901F9018951F9386 +:1021B000CF93DF93CDB7DEB7AA970FB6F894DEBF03 +:1021C0000FBECDBFEDEFF1E088E08E0F9091F100F2 +:1021D00091938E13FBCF0E94570C8091E80083FFF0 +:1021E0001FC18091FD019091FE01492F50E04A30BE +:1021F000510508F015C1FA01EC59FF4F0C947224F7 +:10220000803881F0823809F00BC1809101028F7013 +:102210008093E9008091EB0085FB882780F910927C +:10222000E90006C08091F9019091FA019111826054 +:102230009091E800977F9093E8008093F1001092CE +:10224000F100C8C0282F2D7F09F0EAC0882319F0BB +:10225000823061F0E5C08091FF01813009F0E0C07B +:10226000933009F080E08093FA012BC08091FF0148 +:10227000811127C0809101028F7009F4D1C0809331 +:10228000E9002091EB0020FF1CC0933021F48091E5 +:10229000EB00806214C09091EB0090619093EB0092 +:1022A00021E030E0A90102C0440F551F8A95E2F7F2 +:1022B0004093EA001092EA008091EB0088608093DE +:1022C000EB001092E9008091E800877F86C08111C1 +:1022D000A7C01091FF011F778091E3008078812BC8 +:1022E0008093E3008091E800877F8093E8000E945C +:1022F000F50E8091E80080FFFCCF8091E3008068BC +:102300008093E300111102C082E001C083E080935A +:10231000FC0186C08058823008F082C08091FF01A5 +:10232000909100028C3D53E0950779F583E08A8314 +:102330008AE289834FB7F894DE01139620E03EE0ED +:1023400051E2E32FF0E050935700E49120FF03C0E7 +:10235000E295EF703F5FEF708E2F90E0EA3010F063 +:10236000C79601C0C0968D939D932F5F243149F786 +:102370004FBF8091E800877F8093E8006AE270E0B9 +:10238000CE0101960E94FC0D14C0AE014F5F5F4F5D +:10239000609101020E94430DBC01009709F440C006 +:1023A0009091E800977F9093E80089819A810E943C +:1023B0005F0E8091E8008B778093E80031C0803811 +:1023C00079F58091E800877F8093E8008091F8019B +:1023D0008093F1008091E8008E778093E8000E945E +:1023E000F50E1EC081111CC09091FF019230C0F407 +:1023F0008091E800877F8093E8009093F8010E9425 +:10240000F50E8091F801811106C08091E30087FDEF +:1024100002C081E001C084E08093FC010E94430C73 +:102420008091E80083FF0AC08091E800877F809355 +:10243000E8008091EB0080628093EB00AA960FB6D3 +:10244000F894DEBF0FBECDBFDF91CF911F910895ED +:102450000895CF938091FC018823A1F0C091E900F9 +:10246000CF709091EC00892F817090FD80E8C82B8F +:102470001092E9008091E80083FD0E94D710CF7090 +:10248000C093E900CF91089590937E0180937D01E0 +:102490000895E0917D01F0917E01309721F0019047 +:1024A000F081E02D099480E00895E0917D01F091A4 +:1024B0007E01309721F00280F381E02D0994089588 +:1024C000E0917D01F0917E01309721F00480F5814B +:1024D000E02D0994089520917B0130917C018217B1 +:1024E000930771F090937C0180937B01E0917D01D3 +:1024F000F0917E01309721F00680F781E02D09945C +:1025000008952091790130917A018217930771F033 +:1025100090937A0180937901E0917D01F0917E01A1 +:10252000309721F00084F185E02D099408950895F5 +:102530000C9497120E94A01D0E94AD030C94261EBD +:102540009F92AF92BF92CF92DF92EF92FF920F9342 +:102550001F93CF93DF9300D000D000D0CDB7DEB76C +:102560000E94D4030DE010E0AA24A394B12C902E75 +:10257000802F0E94C204980120583E4F6901F90142 +:10258000F080F826A1F40150110988F78FEF8983B4 +:102590008A831B820E94A91D8160782F9D838C8372 +:1025A00049815A816B818D810E9437132FC0909190 +:1025B000E30191FF04C08E830E94C8048E8125E050 +:1025C00030E0A501022E01C0440F0A94EAF7E42E80 +:1025D0004F21C1F029839A828E2191E009F490E085 +:1025E0009B830E94A91D8160782F9D838C834981E4 +:1025F0005A816B818D810E943713F6018081E82614 +:10260000E08204C021503109E0F6BDCF0E94F41FE2 +:1026100010917F010E9449121817B9F00E944912C7 +:1026200080937F0126960FB6F894DEBF0FBECDBF14 +:10263000DF91CF911F910F91FF90EF90DF90CF909E +:10264000BF90AF909F900C94460B26960FB6F894CF +:10265000DEBF0FBECDBFDF91CF911F910F91FF90D5 +:10266000EF90DF90CF90BF90AF909F900895CF9361 +:10267000DF93CDB7DEB72B970FB6F894DEBF0FBE52 +:10268000CDBF4F83588769877A878B87DE01119684 +:1026900086E0FD0111928A95E9F785E0FE01379603 +:1026A00001900D928A95E1F749815A816B817C8175 +:1026B0008D819E810E9480192B960FB6F894DEBF03 +:1026C0000FBECDBFDF91CF910895CF93882309F43A +:1026D000C2C0C82F823859F40E94491281FDBBC084 +:1026E00089E30E945A1C0E94271D89E30CC083388D +:1026F00079F40E94491280FDAEC083E50E945A1C05 +:102700000E94271D83E50E949C1CCF910C94271DDD +:10271000843859F40E94491282FD9DC087E40E94CA +:102720005A1C0E94271D87E4EECF8CEF8C0F813A54 +:1027300048F48C2F0E943E2281118DC08C2F0E9464 +:102740005A1CE3CF80E28C0F883048F4C77081E0D8 +:1027500001C0880FCA95EAF70E94E01CD6CF8BE52E +:102760008C0F833078F4C53A29F0C63A31F083E80B +:1027700090E005C081E890E002C082E890E0CF914F +:102780000C946B1288E58C0F833108F064C0C83A52 +:1027900039F1C93A41F1CA3A49F1CB3A51F1CC3A4F +:1027A00059F1CD3A61F1C03B69F1CE3A71F1CF3ABE +:1027B00079F1C13B81F1C23B89F1C33B91F1C43B4B +:1027C00099F1C53BA1F1C63BA9F1C73BB1F1C83BAB +:1027D000B9F1C93BC1F1CA3BC9F180E090E038C012 +:1027E00082EE90E035C089EE90E032C08AEE90E053 +:1027F0002FC085EB90E02CC086EB90E029C087EBE2 +:1028000090E026C08CEC90E023C08DEC90E020C0DE +:1028100083E891E01DC08AE891E01AC082E991E066 +:1028200017C084E991E014C081E292E011C083E214 +:1028300092E00EC084E292E00BC085E292E008C014 +:1028400086E292E005C087E292E002C08AE292E06E +:10285000CF910C948112CF910895882309F44BC035 +:10286000823859F40E94491281FF45C089E30E94D1 +:102870005A1C0E94271D89E30CC0833871F40E9402 +:10288000491280FF38C083E50E945A1C0E94271D10 +:1028900083E50E949C1C0C94271D843859F40E94E7 +:1028A000491282FF28C087E40E945A1C0E94271DFB +:1028B00087E4EFCF9CEF980F913A58F390E2980F8E +:1028C000983050F4877091E001C0990F8A95EAF72B +:1028D000892F0E94E61CDFCF9BE5980F933020F4F0 +:1028E00080E090E00C946B12885A833120F480E0F1 +:1028F00090E00C9481120895882321F00E94E01C3E +:102900000C94271D0895882321F00E94E61C0C9446 +:10291000271D08957F928F929F92AF92BF92CF9280 +:10292000DF92EF92FF920F931F93CF93DF931F924B +:10293000CDB7DEB77C01C62E772EFC01058102954E +:102940000F70128111110E94FD1C0E94531C8823DC +:1029500079F0112369F080E28C0D883048F082E034 +:102960000E943C1C0E94531C91E0D82ED92601C025 +:10297000D12CE72DE295EF70F0E0E259FF4F0C9477 +:102980007224872D807F072D0F70882311F0029508 +:10299000007F112389F0002309F490C180E28C0D9F +:1029A000883020F4802F0E94E01C03C0802F0E94FA +:1029B000F01C0E94271D82C18C2D0E942D14002323 +:1029C00009F495C180E28C0D883020F4802F0E949C +:1029D000E61C03C0802F0E94F61C0E94271D87C1A1 +:1029E000972D907F872D8F70903211F08295807F88 +:1029F000CC2021F0F1E0CF16B1F01EC0112349F038 +:102A0000002309F414C1013009F011C10E94101D06 +:102A10006EC1002319F0013009F469C189830E9455 +:102A2000131D89810AC1112321F0023008F05FC112 +:102A3000FEC001115CC101C1112321F0002309F482 +:102A4000F6C03CC1002309F4F8C03EC1872D86952D +:102A50008695837090E0009719F0019761F047C167 +:102A6000112321F08C2D972D937002C080E090E00F +:102A70000E946B123CC1112321F08C2D972D937075 +:102A800002C080E090E00E94811231C18C2D1123A0 +:102A900019F00E94FC1E02C00E94641F0E94E91FE0 +:102AA00026C1872D837009F052C0111120C18C2DD1 +:102AB000829586958770880F880F9C2D9F70892E30 +:102AC000912CA12CB12C082E04C0880C991CAA1C96 +:102AD000BB1C0A94D2F7C4FE14C00FE010E020E043 +:102AE00030E0B901A80104C0440F551F661F771FCD +:102AF0008A95D2F7CB01BA01609570958095909533 +:102B000003C060E070E0CB01272D26952695237049 +:102B100030E02230310569F02330310589F0682931 +:102B200079298A299B292130310571F00E94C81A20 +:102B3000DEC0682979298A299B290E94E41AD7C016 +:102B40000E94C81AC501B4010E94AC1AD0C011235A +:102B500019F0872D817001C08695882309F4C7C0BC +:102B60008C2D829586958770880F880F9C2D9F707D +:102B7000892E912CA12CB12C082E04C0880C991CF4 +:102B8000AA1CBB1C0A94D2F7C4FE14C00FE010E0CC +:102B900020E030E0B901A80104C0440F551F661FB2 +:102BA000771F8A95D2F7CB01BA0160957095809511 +:102BB000909503C060E070E0CB01272D2695269507 +:102BC0002370422F50E04230510569F043305105E7 +:102BD00089F0682979298A299B294130510571F0AA +:102BE0000E94A21B84C0682979298A299B290E94F6 +:102BF000BE1B7DC00E94A21BC501B4010E94861BA2 +:102C000076C08C2D90E0FC01E05EF109E531F10524 +:102C100008F050C0E258FF4F0C9472240C2D0F7036 +:102C2000872D8F71112331F00E941F1B802F0E946E +:102C30007C145DC00E94401B802F0E94831457C0EB +:102C4000112339F0011153C0872D8F710E94651B2C +:102C50004EC0023008F04BC0F7CF112339F0872D5A +:102C60008F710E941F1B43C01123C9F3872D8F71E1 +:102C70000E94401B3CC0112329F0872D8F710E94B8 +:102C80000A1B35C00E94001B32C0112351F0172DC2 +:102C90001F71812F0E941F1B63E0812F0E94331C34 +:102CA00026C081E00E943C1C023008F182E00E94B4 +:102CB0003C1C1DC0112331F0002389F28C2D0E9491 +:102CC000651315C0002391F28C2D0E942D140FC0A6 +:102CD000472D4F706C2DC7010E949E050E94241A3B +:102CE00006C0472D4F706C2DC7010E94B50ADD202C +:102CF000F9F00E942F1C80FD1BC0F70112820E9478 +:102D0000291C0E941F1BC7010E94A7160E94291C94 +:102D10000F90DF91CF911F910F91FF90EF90DF9077 +:102D2000CF90BF90AF909F908F907F900C94401B5E +:102D30000F90DF91CF911F910F91FF90EF90DF9057 +:102D4000CF90BF90AF909F908F907F9008950F93FA +:102D50001F93CF93DF93EC01888199812B813C8174 +:102D6000232BB9F09F3F11F48F3F99F0CE010E94C1 +:102D70004607882371F0688179818A810E94251C29 +:102D80008C010E94DA1B0E94A11AB801CE010E9498 +:102D90008A14DF91CF911F910F9108950E94FD1C1D +:102DA0000E940D1D0E94D21C0E94271D0E949A2085 +:102DB0000E94E91F80E090E00E946B1280E090E0AA +:102DC0000C9481120E94ED1C0C94CE160E941A1CC9 +:102DD000292F22952F7030E02C3031054CF42A3009 +:102DE00031056CF42250310922303105A8F407C0B6 +:102DF0002C30310569F02F30310551F00DC0803F86 +:102E000069F018F4803E40F409C0843F29F406C0FC +:102E100093FB882780F9089580E0089581E0089564 +:102E2000CF93DF9300D000D01F92CDB7DEB70F90C5 +:102E30000F900F900F900F90DF91CF910895CF9347 +:102E4000DF9300D000D000D0CDB7DEB726960FB606 +:102E5000F894DEBF0FBECDBFDF91CF9108951F93D1 +:102E6000CF93DF93C0918E0116E080918F01C81738 +:102E700099F0D0E01C9FF0011D9FF00D1124E05748 +:102E8000FE4F4081518162817381848195810E94CE +:102E90001F172196C770E9CFDF91CF911F91089539 +:102EA0004091C0015091C1016091C2017091C30174 +:102EB0008091C4019091C5010C941F178091C501A8 +:102EC00082958F7009F054C08091C201882309F463 +:102ED0004FC080918E01A0918F016091C0017091CF +:102EE000C1014091C3015091C401B6E08A1709F4B1 +:102EF0003FC090E041155105C1F17F3F11F46F3F94 +:102F0000A1F1B89FF001B99FF00D1124E057FE4FD9 +:102F1000218172132AC02081621327C022812111CE +:102F200024C0238134812417350710F4215031093E +:102F3000241B350B283C3105C0F42091C5012F70AE +:102F400020612093C50126E0289FF001299FF00D04 +:102F50001124EB56FE4F80818F708061808380EC5E +:102F600091E00E94A7160C942F1701968770BECF90 +:102F70000895CF92DF92EF92FF920F931F93CF931A +:102F8000DF93CDB7DEB762970FB6F894DEBF0FBE02 +:102F9000CDBF8C0185E0F801DE011D9601900D92F8 +:102FA0008A95E1F7D8014C9111965C911197129690 +:102FB0006C9112971396CD90DC9014973091C001CC +:102FC0007091C1018091C3019091C401009709F4EF +:102FD0006BC17F3F19F43F3F09F466C1E090C20125 +:102FE000EE2009F4C0C02091C501C816D90628F00A +:102FF000F601E81BF90BCF0104C0809590958C0D6C +:103000009D1DFF24F394883C910578F0F12C207FDE +:1030100009F0C6C07C2DD98AC88A89890E941017F8 +:1030200080EC91E00E94A716B1C0822F807F09F04A +:1030300046C0751314C0341312C0611110C02F7034 +:1030400020612093C5010E94501780EC91E00E94FE +:10305000A7168091C501D80115968C932EC0CD2856 +:1030600019F15F3F11F44F3FF9F0F62E61111CC0CA +:1030700080918E0120918F0136E0821709F45AC0A9 +:1030800090E0389FF001399FF00D1124E057FE4F7A +:103090007181571306C07081471303C0728171118B +:1030A00003C001968770E9CFF62E662309F418C194 +:1030B0008091C50181608093C501F12C11C1751308 +:1030C00008C0341306C0611104C08091C501D80145 +:1030D000C3C04D875E878D859E856A8B0E94E616EC +:1030E0006A898823E1F16623D1F12091C501822FFD +:1030F00082958F7090E0029774F08091C00190915A +:10310000C10198878F831986DB86CA862C87CE01FA +:1031100007960E94A71686E0F801A0ECB1E00190A6 +:103120000D928A95E1F70E945E170E945017FF24C6 +:10313000F394D6C04D875E878D859E850E941A1CAC +:10314000292F22952F7030E0223031050CF0BCC0C1 +:103150009F7009F0B6C0805E883008F4C1C0C80115 +:103160000E94A716E4CFC816D90608F453C0F6018A +:10317000E81BF90BCF01883C910508F450C0F12CF5 +:103180007C2DD98AC88A89890E941017E0ECF1E069 +:1031900086E0DF011D928A95E9F70E945017A0C0D2 +:1031A000751314C0341312C0611110C08091C50191 +:1031B000F8018583C8010E94A71686E0E0ECF1E0E3 +:1031C000DF011D928A95E9F7FE2C8AC04D875E8744 +:1031D0008D859E856A8B0E94E6166A89882309F48C +:1031E000BECF662309F4BBCF2091C501822F829503 +:1031F0008F7090E002970CF48ECF8091C001909177 +:10320000C1019A8389831B82DD82CC822E83CE0109 +:1032100001967FCF809590958C0D9D1DACCFF62E9D +:10322000662309F49CCF75132EC034132CC0209153 +:10323000C50120FD1FC0822F82958F70D9F0D80163 +:1032400015962C9315978F3049F08F5F982F929594 +:10325000907F822F8F70892B15968C93C8010E94C6 +:10326000A71686E0F801A0ECB1E001900D928A95D6 +:10327000E1F793CF86E0F801A0ECB1E001900D9268 +:103280008A95E1F72DC04D875E878D859E850E94CA +:10329000E616811140CF8091C50181608093C50100 +:1032A000C8010E94A7161CC0662309F458CF4D8799 +:1032B0005E878D859E850E94E616882309F44FCF90 +:1032C0002ACF811148CF0CC0243031050CF047CFF4 +:1032D0009F7009F440CFF8019581907F09F03BCFB2 +:1032E0008F2D62960FB6F894DEBF0FBECDBFDF9173 +:1032F000CF911F910F91FF90EF90DF90CF900895A5 +:103300001F93CF93DF93CDB7DEB72C970FB6F8940A +:10331000DEBF0FBECDBF4F83588769877A878B8703 +:103320009C87CE0107960E94B917882369F08F8188 +:1033300098852A853B85232BF1F19F3F09F063C0D7 +:103340008F3F09F060C037C086E0FE013796DE018E +:10335000119601900D928A95E1F76F817885EA8543 +:10336000FB85309741F17F3F11F46F3F21F12091B0 +:103370008F0130E0C90101968770992740918E0135 +:1033800050E08417950709F447C069837A83FD8369 +:10339000EC8396E0929FD001939FB00D1124A0572B +:1033A000BE4FFE01319601900D929A95E1F7809300 +:1033B0008F010E942F1716E080918E0190918F014E +:1033C0008917C1F1189FC001112480579E4F0E9498 +:1033D000B917882379F1E0918E011E9FF001112425 +:1033E000E057FE4F408151816281738184819581D4 +:1033F0000E941F1780918E0190E001968770992797 +:1034000080938E01D9CF4F81588569857A858B85C8 +:103410009C850E941F17CFCF0E94E21610928F0149 +:1034200010928E01E0ECF1E086E0DF011D928A95BA +:10343000E9F7C1CF2C960FB6F894DEBF0FBECDBF13 +:10344000DF91CF911F910895EF92FF920F931F93F9 +:10345000CF93DF938C01009709F46CC0F12CEE241C +:10346000E394E8012196F8018491843740F4843094 +:1034700008F051C0813081F0823019F15BC085378E +:1034800009F444C0A8F19CE7980F903708F052C0A7 +:103490008F770E942D1441C00E5F1F4FFE01C49113 +:1034A00080E28C0F883048F4C7708E2D01C0880FE1 +:1034B000CA95EAF70E94001D14C08C2F0E94651364 +:1034C0002DC00E5F1F4FFE01C49180E28C0F88302B +:1034D00058F4C7708E2D01C0880FCA95EAF70E9474 +:1034E000061D0E94271D1AC08C2F0E942D1416C085 +:1034F0000E5F1F4FFE01C491CC2381F08FE99FE046 +:103500000197F1F700C00000C150F6CF0E5F1F4FCA +:10351000FE01F49003C00E9465138E018F2D882355 +:1035200009F49FCFEFE9FFE03197F1F700C0000009 +:103530008150F5CFDF91CF911F910F91FF90EF90C8 +:10354000089508956093CA017093CB018093CC01D4 +:103550009093CD010C94CE160F931F930091CA0146 +:103560001091CB012091CC013091CD01DC01CB0138 +:10357000802B912BA22BB32B8093CA019093CB016C +:10358000A093CC01B093CD011F910F910C94CE1656 +:103590000F931F930091CA011091CB012091CC0190 +:1035A0003091CD01DC01CB0180239123A223B323F1 +:1035B0008093CA019093CB01A093CC01B093CD012D +:1035C0001F910F910C94CE160F931F930091CA0177 +:1035D0001091CB012091CC013091CD01DC01CB01C8 +:1035E00080279127A227B3278093CA019093CB010C +:1035F000A093CC01B093CD011F910F910C94CE16E6 +:103600001092C6011092C7011092C8011092C90110 +:103610000C94CE1641E050E060E070E004C0440F2E +:10362000551F661F771F8A95D2F74093C6015093A6 +:10363000C7016093C8017093C9010C94CE1641E094 +:1036400050E060E070E004C0440F551F661F771F14 +:103650008A95D2F78091C6019091C701A091C801C7 +:10366000B091C901482B592B6A2B7B2B4093C60183 +:103670005093C7016093C8017093C9010C94CE1692 +:1036800041E050E060E070E004C0440F551F661F49 +:10369000771F8A95D2F740955095609570958091E7 +:1036A000C6019091C701A091C801B091C9014823FA +:1036B00059236A237B234093C6015093C70160932B +:1036C000C8017093C9010C94CE1641E050E060E04F +:1036D00070E004C0440F551F661F771F8A95D2F70C +:1036E0008091C6019091C701A091C801B091C90114 +:1036F000482759276A277B274093C6015093C70163 +:103700006093C8017093C9010C94CE160F931F9358 +:103710000091C6011091C7012091C8013091C901E3 +:10372000DC01CB01802B912BA22BB32B8093C60104 +:103730009093C701A093C801B093C9011F910F9145 +:103740000C94CE160F931F930091C6011091C701E0 +:103750002091C8013091C901DC01CB018023912364 +:10376000A223B3238093C6019093C701A093C801FD +:10377000B093C9011F910F910C94CE160F931F9314 +:103780000091C6011091C7012091C8013091C90173 +:10379000DC01CB0180279127A227B3278093C601A4 +:1037A0009093C701A093C801B093C9011F910F91D5 +:1037B0000C94CE160895CF92DF92EF92FF920F9362 +:1037C0001F93CF93DF938C01C090CA01D090CB019F +:1037D000E090CC01F090CD018091C6019091C7019D +:1037E000A091C801B091C901C82AD92AEA2AFB2AA6 +:1037F000CFE1D0E0D701C6010C2E04C0B695A79545 +:10380000979587950A94D2F780FF06C0B8018C2F50 +:103810000E943409019721F4219760F780E001C0EC +:103820008C2FDF91CF911F910F91FF90EF90DF9040 +:10383000CF900895CF93DF93EC010E94DB1BBE0174 +:103840000E943409DF91CF910895CB010E941A1C88 +:1038500008958091CE0185958595859508958091EF +:10386000CE018770089598E0899F90011124262B3E +:103870002093CE010C941F1B2091CE0180958223B2 +:103880008093CE01982F977069F430E0482F552728 +:1038900047FD50952417350729F085958595859521 +:1038A0000C94401B08959091CE01977081E009F42B +:1038B00080E0089590910C01992321F090910D01E1 +:1038C000911109C020910E0130910F01F90132963A +:1038D0009FEF40E01FC0982F9695969596959F3044 +:1038E00050F5E0910E01F0910F01E90FF11D877085 +:1038F00021E030E0A90102C0440F551F8A95E2F78C +:10390000CA019181892B818308959F3F39F04F5FD0 +:103910004E3041F051915813F8CF0DC05111F7CFEF +:10392000942FF5CF9F3F39F0F901E90FF11D97FD75 +:10393000FA9582830895089590910C01992321F0BE +:1039400090910D01911109C020910E0130910F014C +:10395000F9013296205F3F4F1FC0982F969596959C +:1039600096959F30F0F4E0910E01F0910F01E90F70 +:10397000F11D877021E030E0A90102C0440F551FFE +:103980008A95E2F7CA018095918189238183089500 +:103990003196E217F30729F090819813F9CF10823E +:1039A000F7CF089581E090E0E0910E01F0910F01D2 +:1039B000E80FF91F1082019680319105A9F708954B +:1039C0009091E201892B8093E20108958095909176 +:1039D000E20189238093E20108951092E2010895A3 +:1039E0009091E101892B8093E10108958095909158 +:1039F000E10189238093E10108951092E101089586 +:103A00009091E001892B8093E00108958095909139 +:103A1000E00189238093E00108951092E001089568 +:103A20008093CF0108951092CF01089580910E01E7 +:103A300090910F01FC0131969C01205F3F4F80E087 +:103A4000919191118F5FE217F307D1F70895E091FB +:103A50000E01F0910F018091E2018083E0910E014F +:103A6000F0910F0190818091E101892B8083E09199 +:103A70000E01F0910F0190818091E001892B8083EC +:103A80008091CF01882361F0E0910E01F0910F0148 +:103A90009081892B80830E94161D81111092CF0185 +:103AA00080910E0190910F010C94551220E0009727 +:103AB00039F0AC0141505109842395232F5FF7CF92 +:103AC000822F08958091FC01843021F11092E4014D +:103AD00020E488E190E00FB6F894A8958093600008 +:103AE0000FBE2093600080E00E94460B83B7817F69 +:103AF000846083BF83B7816083BF7894889583B7E0 +:103B00008E7F83BF88E10FB6F89480936000109297 +:103B100060000FBE089508950E94C1030E94D4035F +:103B20000E948B1D0E94C90491E0811101C090E0A8 +:103B3000892F08950E94E2160E9449120C94460BA8 +:103B400082E084BD93E095BD9AEF97BD80936E00AF +:103B500008952FB7F8948091E5019091E601A09126 +:103B6000E701B091E8012FBF0895CF92DF92EF9265 +:103B7000FF920F931F932FB7F8944091E501509156 +:103B8000E6016091E7017091E8012FBF6A017B01B6 +:103B9000EE24FF248C0120E030E0C016D106E206BE +:103BA000F30610F4415051099A01281B390BC90141 +:103BB0001F910F91FF90EF90DF90CF9008951F928B +:103BC0000F920FB60F9211248F939F93AF93BF93D1 +:103BD0008091E5019091E601A091E701B091E801A3 +:103BE0000196A11DB11D8093E5019093E601A0937C +:103BF000E701B093E801BF91AF919F918F910F9032 +:103C00000FBE0F901F9018950E94460FF8942FEF4B +:103C100087EA91E6215080409040E1F700C0000023 +:103C200087E090EBDC018093050290930602A0935D +:103C30000702B09308029CE088E10FB6F894A895BB +:103C4000809360000FBE90936000FFCF0E945E1EC5 +:103C5000811102C00E94441E0E94691E8093E301EC +:103C60000E94711E90E09093F7018093F60187FB0C +:103C7000882780F980930D010E946D1E682F70E0E7 +:103C800080E090E00C94A21A6DEE7EEF80E090E070 +:103C90000E94AC2460E082E090E00E949A2460E000 +:103CA00083E090E00E949A2460E084E090E00E942B +:103CB0009A2460E085E090E00C949A2480E090E003 +:103CC0000E94942421E08D3E9E4F09F020E0822F37 +:103CD000089582E090E00C948C2483E090E00C94B2 +:103CE0008C2484E090E00C948C24682F84E090E095 +:103CF0000C949A248091EB0180FF0BC0609113011A +:103D000085E0689FB0011124759567957595679555 +:103D10002BC081FF09C06091130185E0689FB0014D +:103D200011247595679520C082FF07C0609113012B +:103D300085E0689FB001112417C09091EC01992390 +:103D4000D1F060911201961788F72091130185E058 +:103D5000289F90011124929FA001939F500D112440 +:103D600070E0CA010E945E246038710540F461155C +:103D7000710539F002C065E070E0862F08958FE785 +:103D8000089581E008958091EB0180FF08C0609163 +:103D9000110170E0759567957595679521C081FF54 +:103DA00006C06091110170E07595679519C082FF9A +:103DB00004C06091110170E010C09091EC01992352 +:103DC000C1F0609110019617A0F780911101899FB1 +:103DD000C001112470E00E945E246038710528F44F +:103DE0006115710521F0862F08958FE7089581E010 +:103DF000089561E070E0F4CF803F21F40E947A1EC4 +:103E0000819504C0813F29F40E947A1E8093EF01BE +:103E10000895823F21F40E947A1E819504C0833F59 +:103E200029F40E947A1E8093EE010895893F19F4C7 +:103E30000E94C31E05C08A3F31F40E94C31E8195B3 +:103E40008093F00108958B3F21F40E94C31E819559 +:103E500004C08C3F29F40E94C31E8093F101089591 +:103E6000843F21F48091ED01816017C0853F21F4EA +:103E70008091ED01826011C0863F21F48091ED01B7 +:103E800084600BC0873F21F48091ED01886005C0FC +:103E9000883F31F48091ED0180618093ED010895B8 +:103EA0008D3F21F48091EB0181600BC08E3F21F4A6 +:103EB0008091EB01826005C08F3F29F48091EB0176 +:103EC00084608093EB010895803F39F48091EF0185 +:103ED00087FF6CC01092EF0169C0813F29F4809187 +:103EE000EF011816BCF362C09091EE01823F29F4F5 +:103EF00097FF5CC01092EE0159C0833F19F4191668 +:103F0000CCF354C0893F41F48091F00118160CF0B5 +:103F10004DC01092F0014AC08A3F29F48091F0010F +:103F200087FF44C0F6CF8B3F39F48091F10187FFC2 +:103F30003DC01092F1013AC08C3F29F48091F1010B +:103F40001816BCF333C0843F21F48091ED018E7FBD +:103F500017C0853F21F48091ED018D7F11C0863F10 +:103F600021F48091ED018B7F0BC0873F21F480917C +:103F7000ED01877F05C0883F31F48091ED018F7E90 +:103F80008093ED0113C08D3F21F48091EB018E7F72 +:103F90000BC08E3F21F48091EB018D7F05C08F3FD8 +:103FA00029F48091EB018B7F8093EB018091EE01EE +:103FB00081110EC08091EF0181110AC08091F00142 +:103FC000811106C08091F101811102C01092EC01B3 +:103FD00008958DEE91E00E9460120E94A91D9093B9 +:103FE000EA018093E90108951F93CF93DF938091B5 +:103FF000E9019091EA010E94B51DAC019091EC019C +:10400000992321F02091140130E006C02091150180 +:104010008AE0289F900111244217530708F486C0B4 +:104020008091EE01C091EF01D091F0011091F1016A +:10403000811107C0C11176C0D11174C0111172C0B5 +:1040400075C09F3F19F09F5F9093EC01181624F400 +:104050000E947A1E8093EE018091EE0187FF05C0D9 +:104060000E947A1E81958093EE011C1624F40E9412 +:104070007A1E8093EF018091EF0187FF05C00E94B7 +:104080007A1E81958093EF016091EE01662339F1EC +:10409000C091EF01CC2319F1772767FD7095872F29 +:1040A000972F0E946F2323E333E343E35FE30E94F0 +:1040B000D3230E943C236093EE016C2F772767FD8A +:1040C0007095872F972F0E946F2323E333E343E3F9 +:1040D0005FE30E94D3230E943C236093EF011D16EF +:1040E00024F40E94C31E8093F0018091F00187FFA9 +:1040F00005C00E94C31E81958093F001111624F41F +:104100000E94C31E8093F1018091F10187FF05C0D9 +:104110000E94C31E81958093F101DF91CF911F9181 +:104120000C94E91F9F3F09F08ECF96CFDF91CF917E +:104130001F910895EDEEF1E085E0DF011D928A9573 +:10414000E9F71092EC011092EB010895833081F1B0 +:1041500028F4813059F08230D1F00895853009F487 +:1041600049C0B8F1863009F456C008958091150110 +:10417000262F30E0280F311D2F3F310524F4680F22 +:104180006093150108958FEF809315010895809134 +:104190001401262F30E0280F311D2F3F310524F464 +:1041A000680F6093140108958FEF809314010895B0 +:1041B00080911301262F30E0280F311D2F3F31054C +:1041C00024F4680F6093130108958FEF8093130117 +:1041D000089580911201262F30E0280F311D2F3FC6 +:1041E000310524F4680F6093120108958FEF8093D6 +:1041F0001201089580911101262F30E0280F311D02 +:104200002F3F310524F4680F6093110108958FEF5B +:1042100080931101089580911001262F30E0280F1E +:10422000311D2F3F310524F4680F6093100108956C +:104230008FEF809310010895833011F128F48130BD +:1042400049F0823091F00895853081F120F1863077 +:10425000C1F1089580911501681720F4861B8093A1 +:1042600015010895109215010895809114016817A1 +:1042700020F4861B80931401089510921401089570 +:1042800080911301681720F4861B80931301089511 +:1042900010921301089580911201681720F4861B73 +:1042A00080931201089510921201089580911101D6 +:1042B000681720F4861B8093110108951092110154 +:1042C000089580911001681720F4861B80931001D7 +:1042D00008951092100108950F931F938D3109F4E2 +:1042E00071C008F045C0803109F485C008F58730F9 +:1042F00009F46FC068F4863009F0ADC08091E30125 +:10430000817F8E7F8093E30181E08093F301A4C0DD +:104310008B3009F49EC08E3009F09DC08091E3017E +:1043200082FB222720F991E0922790FB82F96CC052 +:10433000863109F48EC060F4813109F08CC00E948E +:10434000E21690910D0181E0892780930D0181C0D3 +:10435000893109F47EC08B3109F07DC08091E30181 +:1043600081FB222720F991E0922790FB81F94CC034 +:10437000853309F466C048F4873209F462C008F452 +:104380004FC0893209F45DC066C0833438F48A3383 +:1043900008F044C0883309F45CC05DC0833409F47C +:1043A00050C0883409F057C00E94E2160FEF13ED99 +:1043B00020E3015010402040E1F700C000000E94BF +:1043C000041E47C00E94F6220E9449120E94460B1A +:1043D00040C09091E301892F8095817080FB90F916 +:1043E00029F0966098609093E30136C0997F977F9B +:1043F0009093E3012EC08091E30183FB222720F9F3 +:1044000091E0922790FB83F98093E301992309F1CE +:104410008091E30181608093E3011BC0895301C057 +:104420008D5141E050E060E070E08A019B0104C0E2 +:10443000000F111F221F331F8A95D2F7C901B8013F +:1044400004C061E070E080E090E00E94A21A0E9447 +:10445000E21681E001C080E01F910F91089580E095 +:10446000089580E008958E518A3030F4E82FF0E00E +:10447000E65DFE4F8081089580E00895CF93C82FB8 +:104480008091F301813079F018F08230E9F186C033 +:10449000E0910E01F0910F018081813169F082324B +:1044A00009F07EC009C0E0910E01F0910F018081FA +:1044B000813111F0823261F48C2F0E942F22811100 +:1044C00004C08C2F0E946C211DC081E090E01AC0B6 +:1044D0008C2F0E943122811114C0C43179F048F42C +:1044E000CB3079F0C03109F05FC082E08093F301F6 +:1044F00008C0C93219F0C83321F056C01092F30138 +:1045000053C081E0817052C0C93281F110F5C431CD +:1045100069F1A8F4C73009F045C08AE0809315011D +:1045200094E19093140193E090931301809312010E +:1045300088E08093110188E28093100133C082EEFD +:104540008C0F863078F58C2F0E9433228093F201F5 +:1045500029C0CE34E9F020F4CB3421F56AE013C051 +:10456000C13579F0C235F1F461E00DC08091F201FE +:10457000882319F01092F20115C081E08093F301B5 +:1045800015C061E006C08091F2010E94A6200AC019 +:104590006AE08091F2010E941C2104C01092F30194 +:1045A00080E004C081E002C080E0ACCFCF910895EC +:1045B000E1E8F0E080818860808380818160808391 +:1045C0008FB7F89493E09093890090ED90938800D2 +:1045D0008FBF0895EFE6F0E08081826080830895C8 +:1045E000EFE6F0E080818D7F80830895EFE6F0E0D4 +:1045F000908182E08927808308951F920F920FB6E1 +:104600000F9211242F933F934F935F936F937F9358 +:104610008F939F93AF93BF93EF93FF938091F40198 +:104620009091F50101969093F5018093F401811129 +:1046300003C082E00E94460BE091F501E695E69505 +:10464000F0E0E756FA4FE4918091F4018E1303C035 +:1046500080E00E94460BFF91EF91BF91AF919F9137 +:104660008F917F916F915F914F913F912F910F901B +:104670000FBE0F901F90189504D06894B1118DC093 +:10468000089570D088F09F5790F0B92F9927B751AF +:10469000A0F0D1F0660F771F881F991F1AF0BA9506 +:1046A000C9F712C0B13081F077D0B1E0089574C07D +:1046B000672F782F8827B85F39F0B93FCCF38695FC +:1046C00077956795B395D9F73EF490958095709559 +:1046D00061957F4F8F4F9F4F0895E89409C097FBD6 +:1046E0003EF490958095709561957F4F8F4F9F4FC9 +:1046F0009923A9F0F92F96E9BB279395F69587950D +:1047000077956795B795F111F8CFFAF4BB0F11F4CF +:1047100060FF1BC06F5F7F4F8F4F9F4F16C0882376 +:1047200011F096E911C0772321F09EE8872F762FAC +:1047300005C0662371F096E8862F70E060E02AF0ED +:104740009A95660F771F881FDAF7880F96958795D9 +:1047500097F9089557FD9058440F551F59F05F3F42 +:1047600071F04795880F97FB991F61F09F3F79F093 +:1047700087950895121613061406551FF2CF469515 +:10478000F1DF08C0161617061806991FF1CF869597 +:104790007105610508940895E894BB27662777277B +:1047A000CB0197F908950BD078C069D028F06ED06E +:1047B00018F0952309F05AC05FC01124EECFCADF6C +:1047C000A0F3959FD1F3950F50E0551F629FF00124 +:1047D000729FBB27F00DB11D639FAA27F00DB11D7D +:1047E000AA1F649F6627B00DA11D661F829F222706 +:1047F000B00DA11D621F739FB00DA11D621F839F8D +:10480000A00D611D221F749F3327A00D611D231F62 +:10481000849F600D211D822F762F6A2F11249F57B0 +:1048200050408AF0E1F088234AF0EE0FFF1FBB1FD3 +:10483000661F771F881F91505040A9F79E3F510572 +:1048400070F014C0AACF5F3FECF3983EDCF386957E +:1048500077956795B795F795E7959F5FC1F7FE2B1D +:10486000880F911D9695879597F9089597F99F67F9 +:1048700080E870E060E008959FEF80EC08950024E8 +:104880000A941616170618060906089500240A94B5 +:1048900012161306140605060895092E0394000C3B +:1048A00011F4882352F0BB0F40F4BF2B11F460FFCA +:1048B00004C06F5F7F4F8F4F9F4F089597FB072E68 +:1048C00016F4009407D077FD09D00E94782407FCE5 +:1048D00005D03EF4909581959F4F08957095619510 +:1048E0007F4F0895EE0FFF1F0590F491E02D09947E +:1048F000AA1BBB1B51E107C0AA1FBB1FA617B70706 +:1049000010F0A61BB70B881F991F5A95A9F7809521 +:104910009095BC01CD010895F999FECF92BD81BD5E +:10492000F89A992780B50895A8E1B0E042E050E0F8 +:104930000C94B424262FF999FECF92BD81BDF89A2C +:10494000019700B4021639F01FBA20BD0FB6F894D3 +:10495000FA9AF99A0FBE08950196272F0E949B2478 +:104960000C949A24DC01CB01FC01F999FECF06C01E +:10497000F2BDE1BDF89A319600B40D92415050401D +:08498000B8F70895F894FFCF89 +:104988000220480BD60BB30B7F0B4B0B0101D00158 +:1049980028080A03140A404D363959050C05D6046F +:1049A8009D043004490462047B04010203040506E3 +:0449B80007080900E3 +:00000001FF diff --git a/keyboards/ergodox_ez/keymaps/ordinary/keymap.c b/keyboards/ergodox_ez/keymaps/ordinary/keymap.c new file mode 100644 index 0000000000..778cbc63cf --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/ordinary/keymap.c @@ -0,0 +1,454 @@ +#include "ergodox_ez.h" +#include "led.h" +#include "debug.h" +#include "action_layer.h" +#include "action_util.h" +#include "mousekey.h" + +#define BASE 0 // default layer +#define SYMB 1 // symbols layer +#define MDIA 2 // media layer +#define SPEC 3 // special layer + +#define LCaps 10 // left caps-shift key +#define LSymb 11 // left symbol-shift key +#define LMdia 12 // left media-shift key +#define LSpec 13 // left special-shift key +#define RCaps 14 // right caps-shift key +#define RSymb 15 // right symbol-shift key +#define RMdia 16 // right media-shift key +#define RSpec 17 // right special-shift key + +#define MUL 20 // mouse up left +#define MUR 21 // mouse up right +#define MDL 22 // mouse down left +#define MDR 23 // mouse down right + +/* + * The Ordinary Layout for the Ergodox EZ keyboard, v4 + * + * Modifications from default by Nicholas Keene ergodoxez@nicholaskeene.com + * + * No rights reserved. This software is in the public domain. + * Credit me if you are friendly but if you're a jerk don't bother. + * + * Details: readme.md + * https://github.com/nrrkeene/qmk_firmware/tree/master/keyboard/ergodox_ez/keymaps/ordinary + */ + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +/******* Base Layer ******************************************************************************************************** + * + * ,------------------------------------------------------. ,------------------------------------------------------. + * | Special `~ | 1 | 2 | 3 | 4 | 5 | ESC | | - | 6 | 7 | 8 | 9 | 0 | =+ Special | + * |------------+------+------+------+------+-------------| |------+------+------+------+------+------+------------| + * | Media Tab | Q | W | E | R | T | [ | | ] | Y | U | I | O | P | \| Media | + * |------------+------+------+------+------+------| | | |------+------+------+------+------+------------| + * | Symbol | A | S | D | F | G |------| |------| H | J | K | L | ; | '" Symbol | + * |------------+------+------+------+------+------|Shift | | Tab |------+------+------+------+------+------------| + * | Capitals | Z | X | C | V | B | -Tab | | | N | M | , | . | / | Capitals | + * `------------+------+------+------+------+-------------' `-------------+------+------+------+------+------------' + * | LCtrl | Meh |Hyper | LAlt | LGui | | RGui | RAlt | Hyper| Meh | RCtrl | + * `-----------------------------------' `-----------------------------------' + * ,-------------. ,-------------. + * | Home | End | | Left | Right| + * ,------|------|------| |------+------+------. + * | | | PgUp | | Up | | | + * |Backsp| Del |------| |------| Enter| Space| + * | | | PgDn | | Down | | | + * `--------------------' `--------------------' + */ +[BASE] = KEYMAP( +// left hand + F(LSpec),KC_1,KC_2,KC_3 ,KC_4 ,KC_5 ,KC_ESC +,F(LMdia) ,KC_Q ,KC_W ,KC_E ,KC_R ,KC_T ,KC_LBRC +,M(LSymb) ,KC_A ,KC_S ,KC_D ,KC_F ,KC_G +,M(LCaps) ,KC_Z ,KC_X ,KC_C ,KC_V ,KC_B ,LSFT(KC_TAB) +,KC_LCTL ,KC_MEH ,KC_HYPR,KC_LALT,KC_LGUI + ,KC_HOME,KC_END + ,KC_PGUP + ,KC_BSPC,KC_DEL ,KC_PGDN + // right hand + ,KC_MINS ,KC_6 ,KC_7 ,KC_8 ,KC_9 ,KC_0 ,F(RSpec) + ,KC_RBRC ,KC_Y ,KC_U ,KC_I ,KC_O ,KC_P ,F(RMdia) + ,KC_H ,KC_J ,KC_K ,KC_L ,KC_SCLN ,F(RSymb) + ,KC_TAB ,KC_N ,KC_M ,KC_COMM,KC_DOT ,KC_SLSH ,M(RCaps) + ,KC_RGUI,KC_RALT,KC_HYPR ,KC_MEH ,KC_RCTL + ,KC_LEFT ,KC_RGHT + ,KC_UP + ,KC_DOWN ,KC_ENT ,KC_SPC + ), + +/******* Symbols Layer ***************************************************************************************************** + * + * ,-----------------------------------------------------. ,-----------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | Esc | | - | F6 | F7 | F8 | F9 | F10 | | + * |-----------+------+------+------+------+-------------| |------+------+------+------+------+------+-----------| + * | | ! | @ | { | } | & | < | | > | | | 7 | 8 | 9 | / | | + * |-----------+------+------+------+------+------| | | |------+------+------+------+------+-----------| + * | | # | $ | ( | ) | ` |------| |------| / | 4 | 5 | 6 | * | | + * |-----------+------+------+------+------+------| Tab | | Shift|------+------+------+------+------+-----------| + * | | % | ^ | [ | ] | ~ | | | -Tab| \ | 1 | 2 | 3 | - | | + * `-----------+------+------+------+------+-------------' `-------------+------+------+------+------+-----------' + * | LCtrl | Meh |Hyper | LAlt | LGui | |RGui/0|RAlt/.|Hypr/=|Meh/+ |RCtrl/Ent| + * `-----------------------------------' `-------------------------------------' + * ,-------------. ,-------------. + * | Left | Right| | Home | End | + * ,------|------|------| |------+------+------. + * | | | Up | | PgUp | | | + * |Space |Enter |------| |------|BackSp| Del | + * | | | Down | | PgDn | | | + * `--------------------' `--------------------' + */ +[SYMB] = KEYMAP( +// left hand + KC_TRNS ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 ,KC_ESC +,KC_TRNS ,KC_EXLM ,KC_AT ,KC_LCBR ,KC_RCBR ,KC_AMPR ,LSFT(KC_COMM) +,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_TAB +,KC_LCTL ,KC_MEH ,KC_HYPR,KC_LALT ,KC_LGUI + ,KC_LEFT ,KC_RGHT + ,KC_UP + ,KC_SPC ,KC_ENT ,KC_DOWN + // right hand + ,KC_MINS ,KC_F6 ,KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,KC_TRNS + ,LSFT(KC_DOT),KC_PIPE ,KC_7 ,KC_8 ,KC_9 ,KC_SLSH ,KC_TRNS + ,KC_SLSH ,KC_4 ,KC_5 ,KC_6 ,KC_ASTR ,KC_TRNS + ,LSFT(KC_TAB),KC_BSLS ,KC_1 ,KC_2 ,KC_3 ,KC_MINS ,KC_TRNS + ,GUI_T(KC_0),ALT_T(KC_DOT),ALL_T(KC_EQL),MEH_T(KC_PLUS),CTL_T(KC_ENT) + ,KC_HOME ,KC_END + ,KC_PGUP + ,KC_PGDN ,KC_BSPC ,KC_DEL +), + +/******* Media Layer ******************************************************************************************************* + * + * ,---------------------------------------------------------------. ,---------------------------------------------------------------. + * | | F11 | F12 | F13 | F14 | F15 | Esc | | | F16 | F17 | F18 | F19 | F20 | | + * |------+---------+---------+---------+---------+----------------| |------+---------+---------+---------+---------+---------+------| + * | |Shut Down|MouseUpLf|Mouse Up |MouseUpRg|Volume Up|Scroll| |Scroll|PrintScrn| Home | Up | PgUp | Mail | | + * |------+---------+---------+---------+---------+---------| Up | | Up |---------+---------+---------+---------+---------+------| + * | | Sleep |MouseLeft|MouseDown|MouseRght|Volume Dn|------| |------| Num Lock| Left | Down | Right | MyComp | | + * |------+---------+---------+---------+---------+---------|Scroll| |Scroll|---------+---------+---------+---------+---------+------| + * | | |MouseDnLf|MouseDown|MouseDnRg| Mute | Down | | Down | | End | Down | PgDn | | | + * `------+---------+---------+---------+---------+----------------' `----------------+---------+---------+---------+---------+------' + * |LCtrl| Meh | MClick | LClick | R Click| |Cmd/Insrt|Optn/Del | Hyper | Meh |RCtrl| + * `---------------------------------------------' `---------------------------------------------' + * ,-------------. ,-------------. + * | Stop |Refrsh| | Prev | Next | + * ,------|------|------| |------+------+------. + * |Brwser|Brwser|Search| |VolUp | | | + * |Back | Fwd |------| |------| Stop | Play-| + * | | | Home | |VolDn | | Pause| + * `--------------------' `--------------------' + */ +[MDIA] = KEYMAP( +// left hand + KC_TRNS ,KC_F11 ,KC_F12 ,KC_F13 ,KC_F14 ,KC_F15 ,KC_ESC +,KC_TRNS ,KC_POWER ,M(MUL) ,KC_MS_U ,M(MUR) ,KC_VOLU ,KC_WH_U +,KC_TRNS ,KC_SLEP ,KC_MS_L ,KC_MS_D ,KC_MS_R ,KC_VOLD +,KC_TRNS ,KC_NO ,M(MDL) ,KC_MS_D ,M(MDR) ,KC_MUTE ,KC_WH_D +,KC_LCTL ,KC_MEH ,KC_BTN3 ,KC_BTN1 ,KC_BTN2 + ,KC_WSTP ,KC_WREF + ,KC_WSCH + ,KC_WBAK ,KC_NO ,KC_WHOM + // right hand + ,KC_NO ,KC_F16 ,KC_F17 ,KC_F18 ,KC_F19 ,KC_F20 ,KC_TRNS + ,KC_WH_U ,KC_PSCR ,KC_HOME ,KC_UP ,KC_PGUP ,KC_MAIL ,KC_TRNS + ,KC_NLCK ,KC_LEFT ,KC_DOWN ,KC_RIGHT,KC_MYCM ,KC_TRNS + ,KC_WH_D ,KC_NO ,KC_END ,KC_DOWN ,KC_PGDN ,KC_NO ,KC_TRNS + ,GUI_T(KC_INS),ALT_T(KC_DEL),KC_HYPR ,KC_MEH ,KC_RCTL + ,KC_MPRV ,KC_MNXT + ,KC_VOLU + ,KC_VOLD ,KC_MSTP ,KC_MPLY +), + +/******* Special Layer ***************************************************************************************************** + * + * ,-----------------------------------------------------. ,-----------------------------------------------------. + * | | Esc | | | | | | | | | | | | Bspc | | + * |-----------+------+------+------+------+-------------| |------+------+------+------+------+------+-----------| + * | | | | | | | | | | | | | | | | + * |-----------+------+------+------+------+------| | | |------+------+------+------+------+-----------| + * | | | | | | |------| |------| | | | | | | + * |-----------+------+------+------+------+------| | | |------+------+------+------+------+-----------| + * | | | | | | | | | | | | | | | RShift | + * `-----------+------+------+------+------+-------------' `-------------+------+------+------+------+-----------' + * | | | | | | | | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +[SPEC] = KEYMAP( +// left hand + KC_TRNS ,KC_ESC ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS +,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS +,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS +,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS +,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS + + ,KC_TRNS ,KC_TRNS + ,KC_TRNS + ,KC_TRNS,KC_TRNS ,KC_TRNS + // right hand + ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_BSPC ,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_RSFT + ,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[] = { + // the faux shift keys are implemented as macro taps + [LCaps] = ACTION_MACRO_TAP(LCaps) + ,[LSymb] = ACTION_MACRO_TAP(LSymb) + ,[LMdia] = ACTION_MACRO_TAP(LMdia) + ,[LSpec] = ACTION_MACRO_TAP(LSpec) + ,[RCaps] = ACTION_MACRO_TAP(RCaps) + ,[RSymb] = ACTION_MACRO_TAP(RSymb) + ,[RMdia] = ACTION_MACRO_TAP(RMdia) + ,[RSpec] = ACTION_MACRO_TAP(RSpec) +}; + +uint16_t caps_shift = 0; +uint16_t symb_shift = 0; +uint16_t mdia_shift = 0; + +bool symb_lock = false; +bool mdia_lock = false; + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + switch(id) { + // There are two shift keys for each layer so we increment a layer_shift var when one + // is pressed and decrement when one is released. If both are pressed at the same time + // then the layer is locked (or unlocked). The shift counts are bound between 0 and 2 + // only because sometimes rapid pressing led to irregular events; this way the states + // are self healing during use. + + case LCaps: // both caps-shift keys trigger Left Shift + case RCaps: // so they don't interfere with the magic combo + if (record->event.pressed && !record->tap.count) { + if(++caps_shift > 2) caps_shift = 2; + if(caps_shift == 2) { + register_code(KC_CAPS); + unregister_code(KC_CAPS); + } else if(caps_shift == 1) { + register_code(KC_LSFT); + } + } else { + if(--caps_shift < 0) caps_shift = 0; + if(caps_shift == 0) unregister_code(KC_LSFT); + } + break; + + case LSymb: + if (record->event.pressed) { + if(++symb_shift > 2) symb_shift = 2; + if(symb_shift == 2) { + symb_lock = !symb_lock; + } else if(symb_shift == 1) { + layer_on(SYMB); + } + } else { + if(--symb_shift < 0) symb_shift = 0; + if((symb_shift == 0) && (!symb_lock)) layer_off(SYMB); + } + break; + + case LMdia: + if (record->event.pressed) { + if (record->tap.count && (!mdia_shift) && (!mdia_lock)) { + register_code(KC_TAB); + } else { + if(++mdia_shift > 2) mdia_shift = 2; + if(mdia_shift == 2) { + mdia_lock = !mdia_lock; + } else if(mdia_shift == 1) { + layer_on(MDIA); + } + } + } else { + if(record->tap.count && (!mdia_shift) && (!mdia_lock)) { + unregister_code(KC_TAB); + } else { + if(--mdia_shift < 0) mdia_shift = 0; + if((!mdia_shift) && (!mdia_lock)) layer_off(MDIA); + } + } + break; + + case LSpec: + if (record->event.pressed) { + if (record->tap.count && !record->tap.interrupted) { + register_code(KC_GRV); + } else { + layer_on(SPEC); + } + } else { + if(record->tap.count && !record->tap.interrupted) { + unregister_code(KC_GRV); + } else { + layer_off(SPEC); + } + } + break; + + case RSymb: + if (record->event.pressed) { + if (record->tap.count && (!symb_shift) && (!symb_lock)) { + register_code(KC_QUOT); + } else { + if(++symb_shift > 2) symb_shift = 2; + if(symb_shift == 2) { + symb_lock = !symb_lock; + } else if(symb_shift == 1) { + layer_on(SYMB); + } + } + } else { + if(record->tap.count && symb_shift == 0) { + unregister_code(KC_QUOT); + } else { + if(--symb_shift < 0) symb_shift = 0; + if((!symb_shift) && (!symb_lock)) layer_off(SYMB); + } + } + break; + + case RMdia: + if (record->event.pressed) { + if (record->tap.count && (!mdia_shift) && (!mdia_lock)) { + register_code(KC_BSLS); + } else { + if(++mdia_shift > 2) mdia_shift = 2; + if(mdia_shift == 2) { + mdia_lock = !mdia_lock; + } else if(mdia_shift == 1) { + layer_on(MDIA); + } + } + } else { + if(record->tap.count && (!mdia_shift) && (!mdia_lock)) { + unregister_code(KC_BSLS); + } else { + if(--mdia_shift < 0) mdia_shift = 0; + if((!mdia_shift) && (!mdia_lock)) layer_off(MDIA); + } + } + break; + + case RSpec: + if (record->event.pressed) { + if (record->tap.count && !record->tap.interrupted) { + register_code(KC_EQL); + } else { + layer_on(SPEC); + } + } else { + if(record->tap.count && !record->tap.interrupted) { + unregister_code(KC_EQL); + } else { + layer_off(SPEC); + } + } + break; + + // mouse diagonals + + case MUL: // mouse up left + if (record->event.pressed) { + mousekey_on(KC_MS_UP); + mousekey_on(KC_MS_LEFT); + mousekey_send(); + } else { + mousekey_off(KC_MS_UP); + mousekey_off(KC_MS_LEFT); + mousekey_send(); + } + break; + + case MUR: // mouse up right + if (record->event.pressed) { + mousekey_on(KC_MS_UP); + mousekey_on(KC_MS_RIGHT); + mousekey_send(); + } else { + mousekey_off(KC_MS_UP); + mousekey_off(KC_MS_RIGHT); + mousekey_send(); + } + break; + + case MDL: // mouse down left + if (record->event.pressed) { + mousekey_on(KC_MS_DOWN); + mousekey_on(KC_MS_LEFT); + mousekey_send(); + } else { + mousekey_off(KC_MS_DOWN); + mousekey_off(KC_MS_LEFT); + mousekey_send(); + } + break; + + case MDR: // mouse down right + if (record->event.pressed) { + mousekey_on(KC_MS_DOWN); + mousekey_on(KC_MS_RIGHT); + mousekey_send(); + } else { + mousekey_off(KC_MS_DOWN); + mousekey_off(KC_MS_RIGHT); + mousekey_send(); + } + break; + + default: + // none + 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) { + // shift or caps lock turns on red light + if(caps_shift || (keyboard_report->mods & MOD_BIT(KC_RSFT)) || (host_keyboard_leds() & (1<\n\n\nTab"], +[{y:-0.75,x:3.5,c:"#cccccc"},"C",{x:10.5},"<\n,"], +[{y:-0.875,x:2.5},"X",{x:1},"V",{x:8.5},"M",{x:1},">\n."], +[{y:-0.875,x:5.5},"B",{x:6.5},"N"], +[{y:-0.875,c:"#2277ff",w:1.5},"Capitals\n\n\n\n\n\nShift",{c:"#cccccc"},"Z",{x:14.5},"?\n/",{c:"#2277ff",w:1.5},"\n\nCapitals\n\n\n\n\nShift"], +[{y:-0.375,x:3.5,c:"#77aaff"},"Option\n\n\nLAlt",{x:10.5},"Option\n\n\nRAlt"], +[{y:-0.875,x:2.5},"Hyper",{x:1},"Cmd\n\n\nSuper",{x:8.5},"Cmd\n\n\nSuper",{x:1},"Hyper"], +[{y:-0.75,x:0.5},"Ctrl\n\n\nLCtrl","Meh",{x:14.5},"Meh","Ctrl\n\n\nRCtrl"], +[{r:30,rx:6.5,ry:4.25,y:-1,x:1,c:"#54d6de"},"Home","End"], +[{h:2},"< Del\n\n\nBackspace",{h:2},"Del >\n\n\nDelete","Page\n\n\n\n\n\nUp"], +[{x:2},"Page\n\n\n\n\n\nDown"], +[{r:-30,rx:13,y:-1,x:-3},"Left","Right"], +[{x:-3},"Up",{h:2},"Enter",{h:2},"Space"], +[{x:-3},"Down"] + diff --git a/keyboards/ergodox_ez/keymaps/ordinary/ordinary-media.png b/keyboards/ergodox_ez/keymaps/ordinary/ordinary-media.png new file mode 100644 index 0000000000..99e5ed80b1 Binary files /dev/null and b/keyboards/ergodox_ez/keymaps/ordinary/ordinary-media.png differ diff --git a/keyboards/ergodox_ez/keymaps/ordinary/ordinary-media.txt b/keyboards/ergodox_ez/keymaps/ordinary/ordinary-media.txt new file mode 100644 index 0000000000..4eccc9f350 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/ordinary/ordinary-media.txt @@ -0,0 +1,27 @@ +[{x:3.5,c:"#99de2a"},"F13",{x:10.5},"F18"], +[{y:-0.875,x:2.5},"F12",{x:1},"F14",{x:8.5},"F17",{x:1},"F19"], +[{y:-0.875,x:5.5},"F15",{c:"#ff4444"},"Esc",{x:4.5,c:"#737373",a:7},"",{c:"#99de2a",a:4},"F16"], +[{y:-0.875,c:"#2277ff",w:1.5},"Special\n\n\n\n\n\nShift",{c:"#99de2a"},"F11",{x:14.5},"F20",{c:"#2277ff",w:1.5},"\n\nSpecial\n\n\n\n\nShift"], +[{y:-0.375,x:3.5,c:"#ff8500"},"Mouse\n\n\n\n\n\nUp",{x:10.5},"Cursor\n\n\n\n\n\nUp"], +[{y:-0.875,x:2.5},"Mouse\n\n\n\n\n\nUpLeft",{x:1},"Mouse\n\n\n\n\n\nUpRgt",{x:8.5,c:"#ffb063"},"Home",{x:1},"Page\n\n\n\n\n\nUp"], +[{y:-0.875,x:5.5,c:"#e6e067"},"Vol\n\n\n\n\n\nUp",{c:"#ffb063",h:1.5},"Scroll\n\n\n\n\n\nUp",{x:4.5,h:1.5},"Scroll\n\n\n\n\n\nUp",{c:"#e6e067"},"Print\n\n\n\n\n\nScreen"], +[{y:-0.875,c:"#000000",t:"#ff0000",w:1.5},"Media\n\n\n\n\n\nShift",{c:"#e6e067",t:"#000000"},"Shut\n\n\n\n\n\nDown",{x:14.5},"Mail",{c:"#000000",t:"#ff0000",w:1.5},"\n\nMedia\n\n\n\n\nShift"], +[{y:-0.375,x:3.5,c:"#ff8500",t:"#000000"},"Mouse\n\n\n\n\n\nDown",{x:10.5},"Cursor\n\n\n\n\n\nDown"], +[{y:-0.875,x:2.5},"Mouse\n\n\n\n\n\nLeft",{x:1},"Mouse\n\n\n\n\n\nRight",{x:8.5},"Cursor\n\n\n\n\n\nLeft",{x:1},"Cursor\n\n\n\n\n\nRight"], +[{y:-0.875,x:5.5,c:"#e6e067"},"Vol\n\n\n\n\n\nDown",{x:6.5},"Num\n\n\n\n\n\nLock"], +[{y:-0.875,c:"#2277ff",w:1.5},"Symbols\n\n\n\n\n\nShift",{c:"#e6e067"},"Sleep",{x:14.5},"My\n\n\n\n\n\nComp",{c:"#2277ff",w:1.5},"\n\nSymbols\n\n\n\n\nShift"], +[{y:-0.625,x:6.5,c:"#ffb063",h:1.5},"Scroll\n\n\n\n\n\nDown",{x:4.5,h:1.5},"Scroll\n\n\n\n\n\nDown"], +[{y:-0.75,x:3.5,c:"#ff8500"},"Mouse\n\n\n\n\n\nDown",{x:10.5},"Cursor\n\n\n\n\n\nDown"], +[{y:-0.875,x:2.5},"Mouse\n\n\n\n\n\nDnLeft",{x:1},"Mouse\n\n\n\n\n\nDnRgt",{x:8.5,c:"#ffb063"},"End",{x:1},"Page\n\n\n\n\n\nDown"], +[{y:-0.875,x:5.5,c:"#e6e067"},"Mute",{x:6.5,c:"#737373",a:7},""], +[{y:-0.875,c:"#2277ff",a:4,w:1.5},"Capitals\n\n\n\n\n\nShift",{c:"#737373",a:7},"",{x:14.5},"",{c:"#2277ff",a:4,w:1.5},"\n\nCapitals\n\n\n\n\nShift"], +[{y:-0.375,x:3.5,c:"#ff8500"},"Middle\n\n\n\n\n\nClick",{x:10.5,c:"#ffb063",fa:[0,0,0,1]},"Delete\n\n\nOption"], +[{y:-0.875,x:2.5,c:"#ff8500"},"Left\n\n\n\n\n\nClick",{x:1},"Right\n\n\n\n\n\nClick",{x:8.5,c:"#ffb063"},"Insert\n\n\nCmd",{x:1,c:"#77aaff"},"Hyper"], +[{y:-0.75,x:0.5},"Ctrl\n\n\nLCtrl","Meh",{x:14.5},"Meh","Crtl\n\n\nRCtrl"], +[{r:30,rx:6.5,ry:4.25,y:-1,x:1,c:"#ccbb00"},"Stop\n\n\nBrowser","Reload\n\n\nBrowser"], +[{h:2},"< Web\n\n\nBrowser",{h:2},"Web >\n\n\nBrowser","Search\n\n\nBrowser"], +[{x:2},"Home\n\n\nBrowser"], +[{r:-30,rx:13,y:-1,x:-3},"Prev\n\n\nAudio\n\n\nTrack","Next\n\n\nAudio\n\n\nTrack"], +[{x:-3,c:"#e6e067"},"Vol\n\n\n\n\n\nUp",{c:"#ccbb00",h:2},"Stop\n\n\nAudio",{h:2},"Play\n\n\nAudio\n\n\nPause"], +[{x:-3,c:"#e6e067"},"Vol\n\n\n\n\n\nDown"] + diff --git a/keyboards/ergodox_ez/keymaps/ordinary/ordinary-special.png b/keyboards/ergodox_ez/keymaps/ordinary/ordinary-special.png new file mode 100644 index 0000000000..6eecf447ee Binary files /dev/null and b/keyboards/ergodox_ez/keymaps/ordinary/ordinary-special.png differ diff --git a/keyboards/ergodox_ez/keymaps/ordinary/ordinary-special.txt b/keyboards/ergodox_ez/keymaps/ordinary/ordinary-special.txt new file mode 100644 index 0000000000..a08827c6de --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/ordinary/ordinary-special.txt @@ -0,0 +1,27 @@ +[{x:3.5,a:7},"",{x:10.5},""], +[{y:-0.875,x:2.5},"",{x:1},"",{x:8.5},"",{x:1},""], +[{y:-0.875,x:5.5},"",{c:"#ff4444",a:4},"Esc",{x:4.5,c:"#cccccc",a:7},"",""], +[{y:-0.875,c:"#000000",t:"#ff0000",a:4,w:1.5},"Special\n\n\n\n\n\nShift",{c:"#ff4444",t:"#000000"},"Esc",{x:14.5,c:"#54d6de"},"Back\n\n\n\n\n\nspace",{c:"#000000",t:"#ff0000",w:1.5},"\n\nSpecial\n\n\n\n\nShift"], +[{y:-0.375,x:3.5,c:"#cccccc",t:"#000000",a:7},"",{x:10.5},""], +[{y:-0.875,x:2.5},"",{x:1},"",{x:8.5},"",{x:1},""], +[{y:-0.875,x:5.5},"",{h:1.5},"",{x:4.5,h:1.5},"",""], +[{y:-0.875,w:1.5},"","",{x:14.5},"",{w:1.5},""], +[{y:-0.375,x:3.5},"",{x:10.5},""], +[{y:-0.875,x:2.5},"",{x:1},"",{x:8.5},"",{x:1},""], +[{y:-0.875,x:5.5},"",{x:6.5},""], +[{y:-0.875,w:1.5},"","",{x:14.5},"",{w:1.5},""], +[{y:-0.625,x:6.5,h:1.5},"",{x:4.5,h:1.5},""], +[{y:-0.75,x:3.5},"",{x:10.5},""], +[{y:-0.875,x:2.5},"",{x:1},"",{x:8.5},"",{x:1},""], +[{y:-0.875,x:5.5},"",{x:6.5},""], +[{y:-0.875,w:1.5},"","",{x:14.5},"",{c:"#2277ff",w:1.5},"RShift"], +[{y:-0.375,x:3.5,c:"#cccccc"},"",{x:10.5},""], +[{y:-0.875,x:2.5},"",{x:1},"",{x:8.5},"",{x:1},""], +[{y:-0.75,x:0.5},"","",{x:14.5},"",""], +[{r:30,rx:6.5,ry:4.25,y:-1,x:1},"",""], +[{h:2},"",{h:2},"",""], +[{x:2},""], +[{r:-30,rx:13,y:-1,x:-3},"",""], +[{x:-3},"",{h:2},"",{h:2},""], +[{x:-3},""] + diff --git a/keyboards/ergodox_ez/keymaps/ordinary/ordinary-symbol.png b/keyboards/ergodox_ez/keymaps/ordinary/ordinary-symbol.png new file mode 100644 index 0000000000..e4de64a96f Binary files /dev/null and b/keyboards/ergodox_ez/keymaps/ordinary/ordinary-symbol.png differ diff --git a/keyboards/ergodox_ez/keymaps/ordinary/ordinary-symbol.txt b/keyboards/ergodox_ez/keymaps/ordinary/ordinary-symbol.txt new file mode 100644 index 0000000000..e199f5c59f --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/ordinary/ordinary-symbol.txt @@ -0,0 +1,27 @@ +[{x:3.5,c:"#99de2a"},"F3",{x:10.5},"F8"], +[{y:-0.875,x:2.5},"F2",{x:1},"F4",{x:8.5},"F7",{x:1},"F9"], +[{y:-0.875,x:5.5},"F5",{c:"#ff4444"},"Esc",{x:4.5,c:"#bbddbb"},"_\n\n\n\n\n\n-",{c:"#99de2a"},"F6"], +[{y:-0.875,c:"#2277ff",w:1.5},"Special\n\n\n\n\n\nShift",{c:"#99de2a"},"F1",{x:14.5},"F10",{c:"#2277ff",w:1.5},"\n\nSpecial\n\n\n\n\nShift"], +[{y:-0.375,x:3.5,c:"#bbddbb"},"{",{x:10.5,c:"#89b087"},"8"], +[{y:-0.875,x:2.5,c:"#bbddbb"},"@",{x:1},"}",{x:8.5,c:"#89b087"},"7",{x:1},"9"], +[{y:-0.875,x:5.5,c:"#bbddbb"},"&",{h:1.5},"<",{x:4.5,h:1.5},">","|"], +[{y:-0.875,c:"#2277ff",w:1.5},"Media\n\n\n\n\n\nShift",{c:"#bbddbb"},"!",{x:14.5,c:"#89b087"},"/",{c:"#2277ff",w:1.5},"\n\nMedia\n\n\n\n\nShift"], +[{y:-0.375,x:3.5,c:"#bbddbb"},"(",{x:10.5,c:"#89b087"},"5"], +[{y:-0.875,x:2.5,c:"#bbddbb"},"$",{x:1},")",{x:8.5,c:"#89b087"},"4",{x:1},"6"], +[{y:-0.875,x:5.5,c:"#bbddbb"},"`",{x:6.5},"/"], +[{y:-0.875,c:"#000000",t:"#ff0000",w:1.5},"Symbols\n\n\n\n\n\nShift",{c:"#bbddbb",t:"#000000"},"#",{x:14.5,c:"#89b087"},"*",{c:"#000000",t:"#ff0000",w:1.5},"\n\nSymbols\n\n\n\n\nShift"], +[{y:-0.625,x:6.5,c:"#54d6de",t:"#000000",fa:[0,0,0,1],h:1.5},"Tab >\n\n\nTab",{x:4.5,h:1.5},"< Tab\n\n\nShift Tab"], +[{y:-0.75,x:3.5,c:"#bbddbb"},"[",{x:10.5,c:"#89b087"},"2"], +[{y:-0.875,x:2.5,c:"#bbddbb"},"^",{x:1},"]",{x:8.5,c:"#89b087"},"1",{x:1},"3"], +[{y:-0.875,x:5.5,c:"#bbddbb"},"~",{x:6.5},"\\"], +[{y:-0.875,c:"#2277ff",w:1.5},"Capitals\n\n\n\n\n\nShift",{c:"#bbddbb"},"%",{x:14.5,c:"#89b087"},"-",{c:"#2277ff",w:1.5},"\n\nCapitals\n\n\n\n\nShift"], +[{y:-0.375,x:3.5,c:"#77aaff"},"Option\n\n\nLAlt",{x:10.5,c:"#89b087"},".\n\n\nOption"], +[{y:-0.875,x:2.5,c:"#77aaff"},"Hyper",{x:1},"Cmd\n\n\nSuper",{x:8.5,c:"#89b087"},"0\n\n\nCmd",{x:1},"=\n\n\nHyper"], +[{y:-0.75,x:0.5,c:"#77aaff"},"Ctrl\n\n\nLCtrl","Meh",{x:14.5,c:"#89b087"},"+\n\n\nMeh","Enter\n\n\nCtrl"], +[{r:30,rx:6.5,ry:4.25,y:-1,x:1,c:"#54d6de"},"Left","Right"], +[{h:2},"Space",{h:2},"Enter","Up"], +[{x:2},"Down"], +[{r:-30,rx:13,y:-1,x:-3},"Home","End"], +[{x:-3},"Page\n\n\n\n\n\nUp",{h:2},"< Del\n\n\nBackspace",{h:2},"Del >\n\n\nDelete"], +[{x:-3},"Page\n\n\n\n\n\nDown"] + diff --git a/keyboards/ergodox_ez/keymaps/ordinary/readme.md b/keyboards/ergodox_ez/keymaps/ordinary/readme.md new file mode 100644 index 0000000000..6465cd79e0 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/ordinary/readme.md @@ -0,0 +1,103 @@ +# The Ordinary Layout, a familiar and powerful layout # + +The Ordinary Layout is intended to be unremarkably mundane and remarkably useful. This layout maintains most key positions from common QWERTY keyboards, and it features enhanced Symbol and Media layers compared to the default Ergodox EZ layout. + +The Ordinary Layout is supposed to look mostly like a normal keyboard, except in the ways that the Ergodox key arrangement is unique. The thumbs are responsible for space, enter, plus both forward and backward delete; with only a couple exceptions, all other keys are in the same place they are found on traditional keyboards. + +Nicholas Keene +ordinarylayout@nicholaskeene.com +no rights reserved, use for any purposes, credit me if you are a nice person + +## The Base Layout ## + +* The light blue keys are modifiers: traditional Control, Option, and Command keys, plus Hyper and Meh +* The dark blue keys are Shift keys: Capitals Shift (traditional shift), Symbol Shift, and Media Shift; plus a Shift Lock key +* Several dark blue keys double for entry of characters which would typically be in those locations +* The turquoise keys are text navigation and manipulation +* The red keys is Escape and it is always found in that location no matter what + +![Ordinary base layout](ordinary-base.png) + +This layout puts the modifier keys along the bottom of the keyboard where they are on most keyboards. They are in the regular order, with the addition of Hyper and Meh keys. The modifier keys are all in the same place on all layers, although some layers also assign symbols on those buttons. On the outside edges are the Shift keys. The traditional shift key is called Capitals Shift and it is in the normal location. Above that are Symbols Shift and Media Shift. Each Shift key momentarily switches the layout to that layer, and if you use the Shift Lock button you can lock the layout to that layer. + +Touch typists will also find tilde, tab, equals/plus, slash/pipe, and quote/double-quote sharing space on those Shift keys where they would probably be on a common keyboard. Other than the turquoise keys the only buttons which move to new locations are the Brackets and Dash and Escape. Most touch typists dont touch-type brackets or dash anyway so only Escape really requires retraining of muscle memory, and see below for the Special Escape Sequence. + +The four big turquoise keys are arranged differently than in the default Ergodox EZ layout. The Ordinary Layout here copies the design of the old Fingerworks TouchStream keyboard, but also reflects the natural presumptions of the author -- me! I type the space character with my right hand, and to me it makes sense for the two delete keys to be next to one another. + +The Forward Tab and Backward Tab keys are in their locations mostly because I ended up with two extra buttons and needed something to do with them. My muscle memory from using the Truly Ergonomic Keyboard makes me look for the Tab key with my right index finger, so it is handy to have this redundant Tab, and the idea with the Backward Tab key is that it becomes easy to navigate text fields in forms, or to indent/unindent code. + +## The Symbols Layer ## + +* The light green keys are the eponymous symbols +* The bright green keys are F-Keys +* The dark green keys constitute a number pad +* The turquoise keys are the *reverse* of the turquoise keys on the base layer + +![Ordinary symbol layout](ordinary-symbol.png) + +The Ergodox EZ ships with the "Coder Layer" which I like to call the Symbols layer. There are some significant improvements in The Ordinary Layout over the default layout. + +The symbol keys are mostly the same as on the default layout, which did a good job in this regard, but with a few enhancements: + +* Angle brackets on this layer mean that curly, square, and angle brackets are all available on different layers of the same two buttons. Also, they mean that all kinds of brackets, including parentheses, are available on both the Base and Symbols layers. +* The slash, backslash, and pipe characters are grouped together as a memory aid. +* The & and | symbols are juxtaposed as a memory aid + +The number pad area here, in green, includes all four arithmetic operations in the same order found on most number pads and features an Enter key. The keycodes emitted here are normal numeric keycodes, not the number-pad specific keycodes emitted by most number pads, because this layout does not use a Num Lock key to switch the buttons between numeric keycodes and navigational keycodes. See the explanation in The Media Layout section about navigation using these same buttons. + +Finally, consider the turquoise text-nav keys. Here in the Symbols layer, these are *reversed* from the base layer, with the keys either mirrored or shifted. This is powerful! Often I find myself using the mouse with my right hand, and the left hand needs to press Enter. Instead of reaching the left hand over to the right side of the keyboard, now I simply tap Symbols to reverse the turquoise keys, and Enter is right where it should be. + +## The Media Layer ## + +* The dark orange keys on the left move the mouse cursor +* The dark orange keys on the right move the text cursor +* The light orange keys are for scrolling and paging +* The bright green keys are more F-keys +* The dark yellow keys signal Web and Audio applications +* The light yellow keys signal the operating system +* The dark gray keys do nothing in case you bump them by accident + +![Ordinary media layout](ordinary-media.png) + +This layer was inspired by the Media layer on the Ergodox EZ but takes it farther. The Fingerworks TouchStream keyboard had a very useful feature for controlling the text cursor easily and this layer does something similar. The left hand can move the mouse, the right hand moves the text cursor, in all four directions, in small or large increments. This greatly enhances navigation in text documents. + +Moreover, the orange keys on the right overlay the numberpad from the Symbols Layer, such that in the Media Layer the same keys can be used as if they were a number pad in navigational mode (Num Lock off). For instance, in traditional number pads the '3' key became 'Page Down', and so it is here. This means a user can do text navigation without moving either hand. + +Alas, the yellow keys have at best spotty success with common software. Good luck with those but don't expect too much. + +## Switching Between Layers ## + +In addition to Symbols and Media there is the Capitals layer which is exactly the same as pressing the shift key. Each layer is accessed by a shift key on each edge of the keyboard and corresponds to one of the three LEDs on the keyboard: Capitals (red), Symbols (green), Media (blue). The color of a layer illuminates when the layer is active. + +Shift buttons work in the expected way: press them and all of the keys switch to that layer; release them and the keys switch back to the base layer. If you press both of a pair of shift keys, the layer will lock on until you press both shift keys again. For instance, the widely and rightly loathed Caps Lock is engaged by pressing both Capitals Shift buttons. All the Shift keys work this way. + +Multiple layers can be turned on at once. The Capitals layer will affect characters on other layers to capitalize. Other layers, however, don't 'mix': Symbols blankets the base layout; Media blankets Symbols. + +## Special Sequences ## + +![Ordinary special layout](ordinary-special.png) + +### Escape ### + +The One True Location for the Escape key is segregated way up on the top left of the keyboard. The Ergodox does not have a physical button in such a location and the nearest one is home to the tilde (er, grave) which is commonly found there. In the Ordinary layout the Escape key is found on all layers in the prominent location in the corner next to the 5, whnich is easy to remember, and yet it isn't natural for those of us with muscle memory flicking our wrists up and to the left looking for Escape. + +The Ordinary layout offers as a consolation prize a Special sequence for Escape: Special Shift + 1. This is natural so you can tap the top left button, then the button next to it and get Escape. This gesture works in all layers. + +### Backspace ### + +At the top right corner of the Ergodox EZ you can a gesture similar to the special Escape sequence, using the 0 key, to produce a Backspace. Users of this keyboard and this layout are well advised to learn to use their thumbs for deleting text, but sometimes you are doing other computery things and just want to flick your digits up to the right and press backspace a bunch times. + +### RShift ### + +The Ordinary Layout locks layers by pressing both of a pair of shift keys. This interferes with the QMK firmware magic sequence, which is LShift+RShift. To work around this, both of the Capitals Shift keys produce a *Left Shift* keystroke. If for some reason a person needs *Right Shift* they can find it by pressing a Special Shift key, then the Capitals Shift key on the right side of the keyboard. + +**** + +The Ordinary Layout for the Ergodox EZ keyboard, v4 + +Modifications from default by Nicholas Keene ergodoxez@nicholaskeene.com + +No rights reserved. This software is in the public domain. Credit me if you are friendly but if you're a jerk don't bother. + +Details: readme.md + https://github.com/nrrkeene/qmk_firmware/tree/master/keyboard/ergodox_ez/keymaps/ordinary diff --git a/keyboards/ergodox_ez/keymaps/osx_de/compiled.hex b/keyboards/ergodox_ez/keymaps/osx_de/compiled.hex new file mode 100644 index 0000000000..2233a8cbfe --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/osx_de/compiled.hex @@ -0,0 +1,1216 @@ +:100000000C9412040C9456040C9456040C9456044C +:100010000C9456040C9456040C9456040C945604F8 +:100020000C9456040C9456040C9485100C9457119F +:100030000C9456040C9456040C9456040C945604D8 +:100040000C9456040C9411240C9456040C945604ED +:100050000C9456040C94F31E0C9456040C94560401 +:100060000C9456040C9456040C9456040C945604A8 +:100070000C9456040C9456040C9456040C94560498 +:100080000C9456040C9456040C9456040C94560488 +:100090000C9456040C9456040C9456040C94560478 +:1000A0000C9456040C9456040C9456048007EB06EA +:1000B000970739074A07680703072D0733072707FC +:1000C00062073E0744071B072107D106C411E6114A +:1000D000D412E611D4122B124E12D412A312B6125D +:1000E00085158515B415B415EA150A163B173B1787 +:1000F00015163B17C516C5162C173B173B1735179A +:10010000D216D216D216D216D216D216D216D216AF +:10011000D216D216D216D216D216D216D216D2169F +:10012000E416F116F816FF16091702E002E2012E96 +:10013000022E02E10002E002E102E20001E001E140 +:1001400001E20002E001E30119021902E30002E00A +:100150000001E00002E002E3016402640002E00248 +:10016000E30001E001E30001E10137023702E101B0 +:1001700038023801E10125022502E10002E002E136 +:10018000013102310002E002E10001E001E1000181 +:10019000E10137023702E10138023801E1010702CB +:1001A0000702E10001350235012002200002E302CE +:1001B000E10001E301E10001E10136023602E10163 +:1001C00038023801E10126022602E10001E101378F +:1001D000023702E10138023801E10126022602E17C +:1001E0000001E10136023602E10138023801E10185 +:1001F00025022502E10001E10137023702E1013861 +:10020000023801E20125022502E20001E101370284 +:100210003702E10138023801E10130023002E10029 +:1002200002E002E2013002300002E002E20001E0FE +:1002300001E20002E001E30106020602E30002E03F +:100240000001E00029002B00E200E1003541000040 +:100250001E00140004001D6105304D431F001A00EC +:1002600016001B0006304C002000080007000600A6 +:1002700052002A00210015000900190051004A000F +:10028000220017000A000500000002300430E300DD +:100290000000E200000002530430E7000000E60026 +:1002A0000000045323001C000B00110000002E6FFF +:1002B000240018000D00100050004B0025000C0019 +:1002C0000E0036004F002C00260012000F003700F1 +:1002D000E10828002700130033003861E1044E00D4 +:1002E0002D002F003464E5003041000001000100C2 +:1002F00001000100010000003A003500310001005A +:10030000010001003B0035022102350001004C00D4 +:100310003C001E0224062202010001003D002D02C5 +:1003200024022404010001003E00010037001104F2 +:1003300000000100010001000000010000000100B8 +:100340000F30010000000100000068003F0024069B +:100350002402240400004500400022042502110468 +:1003600031026900410023042602640050000100AC +:1003700042003500250452005100010043003502BF +:10038000260438004F006A0044001E02310021029A +:100390000100000001000100010001000100000057 +:1003A0000100010001000100010001000100F40052 +:1003B000F200FB00010001000100F000F100FA0072 +:1003C000010001000100F500F300FC000100010044 +:1003D0000100F900FA00F600000001000100010030 +:1003E0000000010000000100A80001000000010061 +:1003F0000000010001000100A900AA0000000100A6 +:1004000001000100010001000100010001000100E4 +:100410000100AC000100B600010001000100AB00CA +:1004200050000100010001000100520051000100D4 +:10043000AE000100010001004F00000001000100BA +:1004400001000100010000000100010001000100A5 +:100450000100010001000100010001000100010094 +:100460000100010001000100010001000100010084 +:100470000100010001000100010001000100010074 +:100480000000010001000100000001000000010067 +:1004900007300100000001000000010008300E30AC +:1004A0000B300100000001000C300A300D3001005B +:1004B00001000100010009300100010001000100FC +:1004C0000100010001000100010001000100010024 +:1004D0000100010001000100010001000100010014 +:1004E0000100000001000100010001000100000006 +:1004F00001000100010001000100010001000100F4 +:1005000050000100010001000100520051000100F3 +:1005100001000100010001004F0001000100010085 +:1005200001000100010001000000010001000100C4 +:1005300000000100000001000100010000000100B6 +:10054000000001003F0052005100230200000100A2 +:100550004000240021001E0027000100410025006A +:1005600022001F0037000100420026002300200067 +:10057000360001004300300230002402270201004F +:1005800044004500380001000100000001000100A6 +:10059000E1000100E0000000010001000100010095 +:1005A00001003D0001000100010001000100E00028 +:1005B000010001000100010001002C000100010008 +:1005C0000100010001003C000100010001000100E8 +:1005D00000003A00010001000000010000003B00A3 +:1005E0000F300100000001000000010001000100C7 +:1005F00001000100000001000100010001000100F4 +:1006000001000100010001000100010001000100E2 +:1006100001000100010001000100010001000100D2 +:1006200001000100010001000100010001000100C2 +:100630000100000016034500720067006F004400CF +:100640006F007800200045005A00000016034500A6 +:10065000720067006F0044006F00780020004500C2 +:100660005A0000000403090409026D00040100A0FF +:10067000FA09040000010301010009211101000130 +:100680002240000705810308000A09040100010354 +:10069000010200092111010001224D00070582031A +:1006A00008000A09040200010300000009211101E9 +:1006B00000012236000705830308000A090403002D +:1006C0000103000000092111010001223900070582 +:1006D00084031000011201100100000008EDFE0764 +:1006E0001301000102000105010906A10105071916 +:1006F000E029E71500250195087501810205081913 +:100700000129059505750191029501750391010572 +:10071000071900297715002501957875018102C018 +:1007200005010980A101850216010026B7001A0102 +:10073000002AB700751095018100C0050C0901A1C0 +:10074000018503160100269C021A01002A9C0275ED +:100750001095018100C005010902A1010901A10054 +:100760000509190129051500250195057501810265 +:100770009501750381010501093009311581257F36 +:1007800095027508810609381581257F9501750840 +:100790008106050C0A38021581257F9501750881AF +:1007A00006C0C005010906A101050719E029E715E2 +:1007B00000250195087501810295017508810105E3 +:1007C0000819012905950575019102950175039197 +:1007D000010507190029FF150026FF009506750879 +:1007E0008100C000000000000000000000000102C5 +:1007F00004060A0F17202C3A4A5D71879DB3C7DAA9 +:10080000E9F5FCFFFCF5E9DAC7B39D87715D4A3A6B +:100810002C20170F0A06040201000000000000004F +:100820000000000011241FBECFEFDAE0DEBFCDBF15 +:1008300004B603FE24C08091FF0190910002A091B4 +:100840000102B09102028730904BA740B04BB9F43F +:100850001092FF0110920002109201021092020207 +:1008600014BE84B7877F84BF88E10FB6F894809365 +:100870006000109260000FBEE0E0FFE3099511E018 +:10088000A0E0B1E0E0EBFBE402C005900D92A433E0 +:10089000B107D9F711E0A4E3B1E001C01D92AF3F69 +:1008A000B107E1F70E94CD0D0C94D6250C94000001 +:1008B0001092B9008AE08093B800089594EA90936A +:1008C000BC009091BC0097FFFCCF9091B900987F3D +:1008D000983021F0903111F081E008958093BB00B1 +:1008E00084E88093BC008091BC0087FFFCCF80919E +:1008F000B900887F883111F0803471F780E0089565 +:1009000084E98093BC008091BC0084FDFCCF0895F5 +:100910008093BB0084E88093BC008091BC0087FF7B +:10092000FCCF9091B900987F81E0983209F480E083 +:10093000089584E88093BC008091BC0087FFFCCFC1 +:100940008091BB00089580B38C7080BB81B3836FAE +:1009500081BB089580910101811115C080E40E943E +:100960005E048093010181110CC082E10E94880421 +:1009700080930101811105C08FEF0E94880480934C +:1009800001010E94800484B1807F84B985B1807F99 +:1009900085B98AB1837F8AB98BB1837F8BB93E9841 +:1009A000469808950E947406809301010E94AA044B +:1009B0000E94A304A5E3B1E0E3E4F1E08EE08E0F32 +:1009C00011921D928E13FCCF0C945E060E94740649 +:1009D000809301010E94AA040E94A304A5E3B1E050 +:1009E000E3E4F1E08EE08E0F11921D928E13FCCFA6 +:1009F0000895BF92CF92DF92EF92FF920F931F93D1 +:100A0000CF93DF9380910101882379F080913401A5 +:100A10008F5F80933401811108C00E947406809317 +:100A20000101811102C00E94060605E311E0C0E049 +:100A3000D0E0DD24D39482E0C82EEE24E394F12CA0 +:100A4000C730D10500F580910101811164C080E4B7 +:100A50000E945E0480930101811112C082E10E9414 +:100A600088048093010181110BC0C7010C2E01C0C5 +:100A7000880F0A94EAF780950E9488048093010108 +:100A80000E94800448C0CA30A1F028F4C83059F050 +:100A9000C93061F005C0CC3089F070F0CD3089F0FC +:100AA000209A289810C0219A29980DC0229A2A9835 +:100AB0000AC0239A2B9807C0529A01C0539A5B9898 +:100AC00002C03E9A469890EA9A95F1F79FB17999BB +:100AD00002C082E001C080E091709D25982B7C9936 +:100AE00002C084E001C080E0892B7D9902C038E01B +:100AF00001C030E0832B7E9902C020E101C020E0DC +:100B0000822B9FB19095991F9927991F9295990FC4 +:100B1000907E892B0FC080910101811149C080E432 +:100B20000E945E0480930101882379F1B12C0E9418 +:100B300080048B2DF8019081981719F08083C09262 +:100B400000010E94AA0421960F5F1F4FCE30D105ED +:100B500009F076CF80910001882361F18150809364 +:100B60000001882339F08FE99FE00197F1F700C079 +:100B7000000020C0A3E4B1E0E5E3F1E0CF01825F33 +:100B800091919D938E13FCCF15C083E10E94880440 +:100B9000809301018111CACF81E40E945E04809399 +:100BA00001018111C3CF0E949904B82EB094BFCF28 +:100BB00080E0C0CF0E94040681E0DF91CF911F91B9 +:100BC0000F91FF90EF90DF90CF90BF900895E82FA6 +:100BD000F0E0ED5BFE4F8081089508950F931F9321 +:100BE000CF93DF93C3E4D1E010E00C2F025F899133 +:100BF00090E00E941A1E180F0C13F9CF812FDF917D +:100C0000CF911F910F9108950C94C70756985E9845 +:100C100025982D9826982E9827982F988FEF90E05A +:100C2000909389008093880090938B0080938A0032 +:100C300090938D0080938C00259A2D9A2FEF80E75A +:100C400092E0215080409040E1F700C00000269AD9 +:100C50002E9A2FEF80E792E0215080409040E1F7FC +:100C600000C00000279A2F9A2FEF80E792E02150D2 +:100C700080409040E1F700C0000025982D982FEFAC +:100C800080E792E0215080409040E1F700C00000F2 +:100C900026982E982FEF80E792E0215080409040D8 +:100CA000E1F700C0000027982F9856985E98259885 +:100CB0002D9826982E9827982F98089589EA809342 +:100CC000800089E08093810024982C983F988AB115 +:100CD0008F748AB96E98479A8BB1806B8BB9769A6C +:100CE0000E9406060C94C60780E280930101809161 +:100CF000510181110EC00E94580481E0809351017E +:100D00002FEF83ED90E3215080409040E1F700C049 +:100D1000000080E40E945E048093010181112EC0D6 +:100D20000E94880480930101811128C00E948804D8 +:100D300080930101811122C08FE30E948804809377 +:100D4000010181111BC00E94800480E40E945E04A6 +:100D500080930101811112C08CE00E94880480936D +:100D6000010181110BC00E9488048093010181114F +:100D700005C08FE30E948804809301010E948004D3 +:100D8000809101010895462F50E04031510508F04F +:100D9000F1C0DC01FA01EA5AFF4F12968C910C94D3 +:100DA0008625882309F4E6C08091C0019091C10195 +:100DB000A091C201B091C30120E2822780729927DD +:100DC000AA27BB278093C0019093C101A093C201C1 +:100DD000B093C301CFC0882349F00E94BD1E9093F9 +:100DE00053018093520181E492E008958091520171 +:100DF000909153010E94C91E8739910508F0AEC039 +:100E000083E392E00895882349F00E94BD1E9093E9 +:100E10005301809352018EE292E008958091520135 +:100E2000909153010E94C91E8739910508F099C01D +:100E300080E292E00895882309F49CC08BE092E060 +:100E40000895882309F496C086EF91E008958823D9 +:100E500009F490C081EE91E00895882309F48AC0D6 +:100E60008CEC91E00895882309F484C087EB91E02D +:100E70000895811179C08DEA91E00895882309F4DD +:100E800079C084EA91E00895882309F473C08FE85B +:100E900091E00895882349F00E94BD1E909353016C +:100EA000809352018AE891E00895809152019091D7 +:100EB00053010E94C91E8739910508F058C08CE77C +:100EC00091E00895882309F455C087E691E00895DC +:100ED000882349F00E94BD1E9093530180935201D4 +:100EE00082E691E0089580915201909153010E9411 +:100EF000C91E8739910508F040C084E591E0089546 +:100F0000882349F00E94BD1E9093530180935201A3 +:100F100081E591E0089580915201909153010E94E2 +:100F2000C91E8739910560F583E491E0089588230F +:100F300049F00E94BD1E90935301809352018CE3AF +:100F400091E0089580915201909153010E94C91E31 +:100F500087399105C0F48AE291E008958EE392E02A +:100F6000089589E292E0089582EB91E0089585E882 +:100F700091E0089580E090E008958DE591E0089576 +:100F80008EE491E0089585E391E0089508956091DD +:100F9000C0017091C1018091C2019091C3010E9472 +:100FA000261E56985E9825982D9826982E98279854 +:100FB0002F988330C1F028F4813041F0823049F01D +:100FC0000895843049F0853051F00895259A2D9A7E +:100FD0000895269A2E9A0895259A2D9A04C0259A46 +:100FE0002D9A269A2E9A279A2F9A089581E008958D +:100FF00081E008950C94F8070895282F882339F08C +:1010000090E02A3010F44D9608950697089587E2EF +:1010100090E00895AF92BF92DF92EF92FF920F930C +:101020001F93CF93DF938C01FC01C081D181CE014E +:101030000E949F1CBE010E947A0BEC01B8010E9425 +:10104000FA07882309F4C9C1F8018281882309F4C9 +:10105000BEC08091600181111FC0C431F0E7DF077D +:1010600009F0B5C10E94FC0781E0809360010E94F5 +:10107000BD1E90935F0180935E0110925701109204 +:1010800059011092580110925B0110925A0110926E +:101090005D0110925C01A1C180915E0190915F01A0 +:1010A0000E94C91E883C910570F480915701E82F79 +:1010B000F0E0EE0FFF1FE85AFE4FD183C0838F5F31 +:1010C000809357018AC1C13020E8D20708F451C08B +:1010D000F8018281882309F47EC05E01E894B7F8A4 +:1010E00080915601813079F050F08230C1F482EE67 +:1010F0000E94291487E50E94291487E50EC082EE1C +:101100000E9429140CC080EE0E94291481EE0E94D6 +:10111000291488E10E94291488E10E94F1148CE0CE +:10112000E82EF12CC5010E2C02C0969587950A94E5 +:10113000E2F78F700E94FD07D82E0E9429148D2D92 +:101140000E94F114F4E0EF1AF1082CEFE2162FEFF1 +:10115000F20641F780915601813029F010F082307B +:1011600041F482EE04C080EE0E94F11481EE0E94F0 +:10117000F114C43180E7D80768F4C23090E7D9078A +:1011800008F046C0C115E0E7DE0771F0C130D04776 +:10119000A1F10CC1C33320E7D20709F4D8C0C4338E +:1011A000D04709F4EBC002C1F8018281882309F419 +:1011B00002C10E94A617FFEF24E38CE0F15020400B +:1011C0008040E1F700C000000E94181F06C1C13036 +:1011D00080E8D80770F2C43120E7D20708F0B3C026 +:1011E000C23080E7D807A0F4C11590E7D90709F409 +:1011F000E2C0C130D04709F0D9C0F801828188230C +:1012000009F4D9C08091DD0181608093DD01E5C0E2 +:10121000F8018281882309F4CEC00E94721F8111D7 +:1012200002C00E94581F0E94851F90E09093F10118 +:101230008093F001C230F0E7DF0721F48091F001E4 +:1012400081607AC0C33020E7D20721F48091F00199 +:10125000826072C0C43080E7D80721F48091F00129 +:1012600084606AC0C53090E7D90719F48091F00115 +:1012700027C0C630E0E7DE0721F48091F0018061ED +:101280005BC0C730F0E7DF0721F48091F001806296 +:1012900053C0C83020E7D20721F48091F001806468 +:1012A0004BC0C93080E7D80721F48091F0018068F5 +:1012B00043C0CA3090E7D90729F48091F0018460D7 +:1012C00088603AC0CB30E0E7DE0721F48091F0017E +:1012D0008E7F32C0CC30F0E7DF0721F48091F0013F +:1012E0008D7F2AC0CD3020E7D20721F48091F00114 +:1012F0008B7F22C0CE3080E7D80719F48091F001AF +:101300001AC08091F001CF3090E7D90711F48F7E99 +:1013100013C0C031E0E7DE0711F48F7D0DC0C1318D +:10132000F0E7DF0711F48F7B07C0C231D04711F41B +:101330008F7702C08B7F877F8093F0018091F001CF +:101340000E94891F4AC0C333F0E7DF07A1F4F80108 +:101350008281882321F01092540182E016C080918E +:101360005401811106C086E20E94291486E20E947F +:10137000F11482E018C0C433D047C1F4F80182816F +:10138000882331F01092550180E20E94401525C05B +:1013900080915501811106C087E20E94291487E2DD +:1013A0000E94F11480E20E94471517C081E08093EB +:1013B000540180935501C801DF91CF911F910F9186 +:1013C000FF90EF90DF90BF90AF900C94F607C13084 +:1013D000F0E8DF0708F081CECCCE80E0DF91CF913E +:1013E0001F910F91FF90EF90DF90BF90AF90089505 +:1013F00026E0729FF001112444E5849FE00DF11D69 +:101400001124E60FF11DEE0FFF1FEC5BFD4F8591E0 +:1014100094910E948C0B811560E49607B0F58115BC +:1014200070E3970708F0DEC0803E9105D8F4803C59 +:10143000910508F06CC0883A910578F4853A9105D9 +:1014400008F06BC08130910509F452C108F40FC156 +:101450008430910508F04CC10AC18B3B910508F41A +:1014600067C005C18F3F910509F048F4803F9105A1 +:1014700008F0ADC0883E910508F43AC1F8C0811566 +:1014800020E2920708F0A5C00895811543E594076E +:1014900090F4811562E5960708F0C8C0811571E5E2 +:1014A000970708F0BEC0811520E5920708F09DC09F +:1014B0009F70906A0895811545E59407D8F48115C9 +:1014C00064E5960708F0C8C0482F4695469570E237 +:1014D000479FA00111248370992721E030E0B901D2 +:1014E00002C0660F771F8A95E2F7CB01842B952BFC +:1014F0009A680895811576E5970708F4B2C09C01B3 +:1015000030562115304108F0B2C09F70AEC0FC01CA +:10151000EE0FFF1FEC53FF4F62C0853A910509F4AF +:10152000A9C0863A910509F0A8C082E890E4089520 +:10153000883A910509F4A4C0893A910509F4A3C039 +:101540008A3A910509F4A2C08B3A910509F4A1C029 +:101550008C3A910509F4A0C08D3A910509F49FC019 +:10156000803B910509F49EC08E3A910509F49DC017 +:101570008F3A910509F49CC0813B910509F49BC009 +:10158000823B910509F49AC0833B910509F499C007 +:10159000843B910509F498C0853B910509F497C0F7 +:1015A000863B910509F496C0873B910509F495C0E7 +:1015B000883B910509F494C0893B910509F493C0D7 +:1015C0008A3B910509F492C080E094E40895906507 +:1015D0000895FC01FF70EE0FFF1FEC5BFD4F85913E +:1015E000949108959927906C0895482F437021E0B5 +:1015F00030E002C0220F331F4A95E2F73C68AC018D +:1016000064E0569547956A95E1F74370342B8F70E7 +:101610008695869560E2869FC0011124822B932BCC +:101620000895982F8827816F906A0895482F4695CE +:10163000469570E2479FA00111248370992721E00D +:1016400030E0B90102C0660F771F8A95E2F7CB013F +:10165000842B952B9C680895982F8827846F906A17 +:1016600008958F719927982F88279062089580E0B8 +:1016700090E0089581E890E4089583E890E4089567 +:1016800082EE94E4089589EE94E408958AEE94E459 +:10169000089585EB94E4089586EB94E4089587EB30 +:1016A00094E408958CEC94E408958DEC94E408950A +:1016B00083E895E408958AE895E4089582E995E43D +:1016C000089584E995E4089581E296E4089583E21B +:1016D00096E4089584E296E4089585E296E40895F8 +:1016E00086E296E4089587E296E408958AE296E415 +:1016F0000895089596E0799FF001112494E5899F5B +:10170000E00DF11D1124E60FF11DEE0FFF1FEC5B44 +:10171000FD4F8591949108958238910549F1B0F477 +:101720008133910509F458C048F48932910509F4D0 +:101730004EC08A32910509F454C00895853391054D +:1017400009F440C08933910599F00895833E9105CD +:1017500029F138F4803E910591F0823E9105A1F087 +:101760000895863E9105F9F0873E910531F108957F +:101770002091F00120FD3AC021FD38C008958091EC +:10178000F00180FD35C032C08091F00182FF32C08F +:101790008091F00184FD30C083EE39C08091F0016A +:1017A00082FD28C0F5CF8091F00183FF27C0809192 +:1017B000F00184FD21C087EE2AC08091F00183FDF5 +:1017C0001DC0F5CF8091F00185FD1AC01BC080912E +:1017D000F00185FD17C014C08091F00186FD14C092 +:1017E00015C08091F00186FD11C00EC080EE0FC0C3 +:1017F00089E30DC082EE0BC080E009C086EE07C011 +:1018000089E205C085E303C08AE201C081E390E07C +:10181000089508950C94090C809171010895CF9357 +:10182000DF9300D01F92CDB7DEB79C018091F60107 +:10183000843019F593E099833B832A839093E900E0 +:101840008FEF9091E800815095FD06C095ED9A9537 +:10185000F1F700008111F5CF8091E80085FF0DC000 +:1018600040E050E063E070E0CE0101960E94750E0A +:101870008091E8008E778093E8000F900F900F9092 +:10188000DF91CF910895CF93DF9300D01F92CDB712 +:10189000DEB72091F601243021F522E029839B83D5 +:1018A0008A8383E08093E9008FEF9091E800815074 +:1018B00095FD06C095ED9A95F1F700008111F5CFE1 +:1018C0008091E80085FF0DC040E050E063E070E0EB +:1018D000CE0101960E94750E8091E8008E7780936C +:1018E000E8000F900F900F90DF91CF910895209115 +:1018F000F6012430F1F422E02093E9002FEF30913B +:10190000E800215035FD06C035ED3A95F1F70000AD +:101910002111F5CF2091E80025FF0BC040E050E0F9 +:1019200065E070E00E94750E8091E8008E778093EC +:10193000E8000895CF93DF93EC019091F601943085 +:1019400009F046C080910C018823D9F080910D01E7 +:101950008823B9F09093E9008FEF9091E8008150CF +:1019600095FD06C095E19A95F1F700008111F5CF3C +:101970008091E80085FF2CC040E050E060E170E01D +:1019800017C081E08093E9008FEF9091E8008150CB +:1019900095FD06C095ED9A95F1F700008111F5CF00 +:1019A0008091E80085FF14C040E050E068E070E0FE +:1019B000CE010E94750E8091E8008E778093E8003A +:1019C00080E1FE01A1E6B1E001900D928A95E1F778 +:1019D000DF91CF9108958091F501811109C00E9496 +:1019E0000A100E9467108091E20084608093E200F8 +:1019F00008951092F501089508950C94FE230E9415 +:101A0000AE1E0E9404240E940D130C940A0C42E0A6 +:101A100061EC81E00E94840F42E061EC82E00E9470 +:101A2000840F42E061EC83E00E94840F42E161ECAC +:101A300084E00C94840F8091F801833009F455C040 +:101A400030F4813071F0823009F48EC008958A300C +:101A500009F47AC08B3009F460C0893009F09CC069 +:101A600020C08091F701813A09F096C08091E8008A +:101A7000877F8093E8008091FB019091FC01892B86 +:101A800021F460E181E691E003C060E080E090E055 +:101A900070E00E94C00E8091E8008B778093E80090 +:101AA00008958091F701813209F076C08091FB01A1 +:101AB0009091FC01009719F0039709F06DC0809197 +:101AC000E800877F8093E8008091E80082FD05C0F0 +:101AD0008091F6018111F8CF5FC08091F100809371 +:101AE00071018091E8008B7753C08091F701813AB2 +:101AF00009F052C08091FB019091FC01892B09F003 +:101B00004BC08091E800877F8093E8008091E800D7 +:101B100080FFFCCF80910C0136C08091F7018132AB +:101B2000D9F58091FB019091FC01892BA9F5809159 +:101B3000E800877F8093E8000E94B90F8091F90147 +:101B400080930C010C94A6178091F701813221F546 +:101B50008091E800877F8093E8000E94B90F809110 +:101B6000FA018093720108958091F701813AA1F4FE +:101B70008091E800877F8093E8008091E80080FFF3 +:101B8000FCCF809172018093F1008091E8008E7704 +:101B90008093E8000C94B90F089584B7877F84BFC1 +:101BA00088E10FB6F89480936000109260000FBE39 +:101BB00080E880936100109261000E945C130E9493 +:101BC0000A100E9467108091E20084608093E20016 +:101BD00078940E94ED120E945E1382E091E00E94D0 +:101BE00008130E94EC238091F601853069F40E946D +:101BF000761E8091F4018823B1F30E94A01E8823F1 +:101C000091F30E945F0EEFCF0E946413ECCF292F57 +:101C1000332723303105C9F064F42130310581F0D8 +:101C20002230310509F043C08DE690E028E636E029 +:101C300042C021323105F1F02232310541F137C085 +:101C400082E190E025ED36E036C09927813091059C +:101C500041F08230910541F0892B49F5E4E6F6E048 +:101C600005C0ECE4F6E002C0E4E3F6E0849190E025 +:101C70009F0121C06430D8F4E62FF0E0EE0FFF1F83 +:101C8000EE5DFE4F2081318189E090E014C0643028 +:101C900070F470E0FB01EE0FFF1FE65EFE4F208147 +:101CA0003181FB01EA5EFE4F808190E004C080E05C +:101CB00090E020E030E0FA0131832083089580E154 +:101CC00089BD82E189BD09B400FEFDCF8091D800B5 +:101CD0008F7D8093D8008091E00082608093E00047 +:101CE0008091E00081FDFCCF0895CF92DF92EF92CA +:101CF000FF920F931F93CF93DF93EC018B016A0147 +:101D00000E94D80F811133C0C114D10439F0F601FB +:101D100080819181081B190BC80FD91FE12CF12C70 +:101D20000115110519F18091E80085FD16C080911B +:101D3000E8008E778093E800C114D10449F0F601E1 +:101D400080819181E80EF91EF182E08285E00FC06A +:101D50000E94D80F882321F30AC089918093F10053 +:101D600001501109FFEFEF1AFF0ADACF80E0DF918F +:101D7000CF911F910F91FF90EF90DF90CF9008953A +:101D80002091FD013091FE012617370748F06115BB +:101D9000710539F42091E8002E772093E80001C006 +:101DA000B90140E061157105A9F12091F6012223E6 +:101DB00009F443C0253009F442C02091E80023FD16 +:101DC00040C02091E80022FD32C02091E80020FFB1 +:101DD000E9CF4091F3002091F20030E0342BFC0178 +:101DE000CF016115710559F02830310540F481911A +:101DF0008093F100615071092F5F3F4FF1CF41E0B7 +:101E00002830310509F040E02091E8002E7720933A +:101E1000E800C8CF4111C9CF0AC08091F6018823DC +:101E200061F0853061F08091E80083FD0AC0809107 +:101E3000E80082FFF2CF80E0089582E0089583E019 +:101E4000089581E008952091FD013091FE0126174B +:101E5000370748F06115710539F42091E8002E77B5 +:101E60002093E80001C0B901FC0120E06115710573 +:101E700091F18091F601882309F440C0853009F47E +:101E80003FC08091E80083FD3DC08091E80082FD65 +:101E90002FC08091E80080FFE9CF2091F30080916E +:101EA000F20090E0922B6115710559F08830910590 +:101EB00040F424912093F10031966150710901960C +:101EC000F2CF21E0089709F020E08091E8008E77BA +:101ED0008093E800CBCF2111CCCF0AC08091F601CE +:101EE000882361F0853061F08091E80083FD0AC0AD +:101EF0008091E80082FFF2CF80E0089582E00895AB +:101F000083E0089581E00895982F973058F59093D5 +:101F1000E900981739F07091EC002091ED00509194 +:101F2000F00003C0242F762F50E021FF19C030911C +:101F3000EB003E7F3093EB003091ED003D7F30931E +:101F4000ED003091EB0031603093EB007093EC00CA +:101F50002093ED005093F0002091EE0027FF07C082 +:101F60009F5FD3CF8F708093E90081E0089580E078 +:101F700008958091F70187FF11C08091E80082FDEC +:101F800005C08091F6018111F8CF11C08091E80061 +:101F90008B770BC08091F601882349F08091E8008F +:101FA00080FFF8CF8091E8008E778093E800089555 +:101FB0002091E4003091E50095E64091EC00842FFB +:101FC000817040FF22C08091E80080FD1CC080919C +:101FD000F601882391F0853091F08091EB0085FD2A +:101FE00010C04091E4005091E5004217530729F3D7 +:101FF0009A01915011F784E0089582E0089583E0FA +:10200000089581E0089580E008954091E80042FF3E +:10201000DECF08950E9478100E948010E0EEF0E07C +:10202000808181608083E8EDF0E080818F7780831C +:1020300019BCA7EDB0E08C918E7F8C9380818F7E50 +:1020400080831092F50108950F931F93CF93DF9330 +:102050000E9478100E948010C8EDD0E088818F77B0 +:10206000888388818068888388818F7D888319BC74 +:102070001092F6011092F2011092F4011092F30105 +:1020800000EE10E0F80180818B7F80838881816081 +:10209000888342E060E080E00E94840FE1EEF0E09F +:1020A00080818E7F8083E2EEF0E08081816080839A +:1020B000808188608083F80180818E7F8083888121 +:1020C00080618883DF91CF911F910F910895E8ED92 +:1020D000F0E080818F7E8083E7EDF0E08081816099 +:1020E000808384E082BF81E08093F5010C9424100A +:1020F000E8EDF0E080818E7F80831092E200089509 +:102100001092DA001092E10008951F920F920FB61C +:102110000F9211242F933F934F935F936F937F936D +:102120008F939F93AF93BF93EF93FF938091E100C1 +:1021300082FF0BC08091E20082FF07C08091E10026 +:102140008B7F8093E1000E94EC128091DA0080FF87 +:102150001FC08091D80080FF1BC08091DA008E7F65 +:102160008093DA008091D90080FF0DC080E189BDA5 +:1021700082E189BD09B400FEFDCF81E08093F601C4 +:102180000E94EB0C05C019BC1092F6010E94F90CDC +:102190008091E10080FF19C08091E20080FF15C0AE +:1021A0008091E2008E7F8093E2008091E200806166 +:1021B0008093E2008091D80080628093D80019BC9F +:1021C00085E08093F6010E94FD0C8091E10084FF80 +:1021D00030C08091E20084FF2CC080E189BD82E1A3 +:1021E00089BD09B400FEFDCF8091D8008F7D80931A +:1021F000D8008091E1008F7E8093E1008091E20021 +:102200008F7E8093E2008091E20081608093E20003 +:102210008091F201882311F084E007C08091E300EF +:1022200087FD02C081E001C083E08093F6010E9437 +:10223000FF0C8091E10083FF29C08091E20083FFC1 +:1022400025C08091E100877F8093E10082E0809348 +:10225000F6011092F2018091E1008E7F8093E100FF +:102260008091E2008E7F8093E2008091E2008061A5 +:102270008093E20042E060E080E00E94840F809161 +:10228000F00088608093F0000E94FC0CFF91EF91B9 +:10229000BF91AF919F918F917F916F915F914F917E +:1022A0003F912F910F900FBE0F901F9018951F9286 +:1022B0000F920FB60F9211242F933F934F935F937A +:1022C0006F937F938F939F93AF93BF93CF93DF933E +:1022D000EF93FF93C091E900CF708091EC00D82F6D +:1022E000D17080FDD0E81092E9008091F000877FE6 +:1022F0008093F00078940E949B111092E9008091E5 +:10230000F00088608093F000CD2BCF70C093E9007F +:10231000FF91EF91DF91CF91BF91AF919F918F91FD +:102320007F916F915F914F913F912F910F900FBED1 +:102330000F901F9018951F93CF93DF93CDB7DEB703 +:10234000AA970FB6F894DEBF0FBECDBFE7EFF1E05E +:1023500088E08E0F9091F10091938E13FBCF0E9435 +:102360001B0D8091E80083FF1FC18091F7019091C0 +:10237000F801492F50E04A30510508F015C1FA0123 +:10238000EA59FF4F0C948625803881F0823809F095 +:102390000BC18091FB018F708093E9008091EB006D +:1023A00085FB882780F91092E90006C08091F3012F +:1023B0009091F401911182609091E800977F909341 +:1023C000E8008093F1001092F100C8C0282F2D7F03 +:1023D00009F0EAC0882319F0823061F0E5C08091ED +:1023E000F901813009F0E0C0933009F080E080937A +:1023F000F4012BC08091F901811127C08091FB016C +:102400008F7009F4D1C08093E9002091EB0020FF88 +:102410001CC0933021F48091EB00806214C0909135 +:10242000EB0090619093EB0021E030E0A90102C045 +:10243000440F551F8A95E2F74093EA001092EA0094 +:102440008091EB0088608093EB001092E90080910E +:10245000E800877F86C08111A7C01091F9011F771E +:102460008091E3008078812B8093E3008091E800E5 +:10247000877F8093E8000E94B90F8091E80080FF79 +:10248000FCCF8091E30080688093E300111102C0CB +:1024900082E001C083E08093F60186C080588230DC +:1024A00008F082C08091F9019091FA018C3D53E0CF +:1024B000950779F583E08A838AE289834FB7F89498 +:1024C000DE01139620E03EE051E2E32FF0E050936E +:1024D0005700E49120FF03C0E295EF703F5FEF707B +:1024E0008E2F90E0EA3010F0C79601C0C0968D9311 +:1024F0009D932F5F243149F74FBF8091E800877F7C +:102500008093E8006AE270E0CE0101960E94C00E5E +:1025100014C0AE014F5F5F4F6091FB010E94070E38 +:10252000BC01009709F440C09091E800977F909318 +:10253000E80089819A810E94230F8091E8008B77BF +:102540008093E80031C0803879F58091E800877F7A +:102550008093E8008091F2018093F1008091E8007F +:102560008E778093E8000E94B90F1EC081111CC0B5 +:102570009091F9019230C0F48091E800877F8093B8 +:10258000E8009093F2010E94B90F8091F20181114D +:1025900006C08091E30087FD02C081E001C084E0B5 +:1025A0008093F6010E94070D8091E80083FF0AC026 +:1025B0008091E800877F8093E8008091EB00806243 +:1025C0008093EB00AA960FB6F894DEBF0FBECDBF86 +:1025D000DF91CF911F9108950895CF938091F601D7 +:1025E0008823A1F0C091E900CF709091EC00892F71 +:1025F000817090FD80E8C82B1092E9008091E8007E +:1026000083FD0E949B11CF70C093E900CF91089584 +:1026100090937801809377010895E0917701F0918C +:102620007801309721F00190F081E02D099480E04D +:102630000895E0917701F0917801309721F00280C0 +:10264000F381E02D09940895E0917701F0917801EC +:10265000309721F00480F581E02D099408952091B0 +:102660007501309176018217930771F0909376018E +:1026700080937501E0917701F0917801309721F016 +:102680000680F781E02D099408952091730130911F +:1026900074018217930771F0909374018093730112 +:1026A000E0917701F0917801309721F00084F18575 +:1026B000E02D0994089508950C945B130E94B41EB4 +:1026C0000E94D2040C943A1F9F92AF92BF92CF9275 +:1026D000DF92EF92FF920F931F93CF93DF9300D07F +:1026E00000D000D0CDB7DEB70E94F9040DE010E0B5 +:1026F000AA24A394B12C902E802F0E94E705980164 +:1027000026583E4F6901F901F080F826A1F40150E6 +:10271000110988F78FEF89838A831B820E94BD1E6F +:102720008160782F9D838C8349815A816B818D8153 +:102730000E94FB132FC09091DD0191FF04C08E8396 +:102740000E94ED058E8125E030E0A501022E01C03A +:10275000440F0A94EAF7E42E4F21C1F029839A82AC +:102760008E2191E009F490E09B830E94BD1E816060 +:10277000782F9D838C8349815A816B818D810E9442 +:10278000FB13F6018081E826E08204C02150310964 +:10279000E0F6BDCF0E940821109179010E940D132F +:1027A0001817B9F00E940D138093790126960FB681 +:1027B000F894DEBF0FBECDBFDF91CF911F910F9177 +:1027C000FF90EF90DF90CF90BF90AF909F900C94D0 +:1027D0000A0C26960FB6F894DEBF0FBECDBFDF9170 +:1027E000CF911F910F91FF90EF90DF90CF90BF900E +:1027F000AF909F900895CF93DF93CDB7DEB72B971F +:102800000FB6F894DEBF0FBECDBF4F8358876987E0 +:102810007A878B87DE01119686E0FD0111928A95F9 +:10282000E9F785E0FE01379601900D928A95E1F770 +:1028300049815A816B817C818D819E810E94441ADD +:102840002B960FB6F894DEBF0FBECDBFDF91CF91B0 +:102850000895CF93882309F4C2C0C82F823859F451 +:102860000E940D1381FDBBC089E30E941E1D0E94C2 +:10287000EB1D89E30CC0833879F40E940D1380FDB1 +:10288000AEC083E50E941E1D0E94EB1D83E50E94E1 +:10289000601DCF910C94EB1D843859F40E940D13E8 +:1028A00082FD9DC087E40E941E1D0E94EB1D87E4EF +:1028B000EECF8CEF8C0F813A48F48C2F0E9452237C +:1028C00081118DC08C2F0E941E1DE3CF80E28C0FE2 +:1028D000883048F4C77081E001C0880FCA95EAF7D4 +:1028E0000E94A41DD6CF8BE58C0F833078F4C53AB7 +:1028F00029F0C63A31F083E890E005C081E890E025 +:1029000002C082E890E0CF910C942F1388E58C0FE1 +:10291000833108F064C0C83A39F1C93A41F1CA3A82 +:1029200049F1CB3A51F1CC3A59F1CD3A61F1C03B82 +:1029300069F1CE3A71F1CF3A79F1C13B81F1C23BF5 +:1029400089F1C33B91F1C43B99F1C53BA1F1C63B71 +:10295000A9F1C73BB1F1C83BB9F1C93BC1F1CA3BD1 +:10296000C9F180E090E038C082EE90E035C089EE99 +:1029700090E032C08AEE90E02FC085EB90E02CC052 +:1029800086EB90E029C087EB90E026C08CEC90E0CD +:1029900023C08DEC90E020C083E891E01DC08AE860 +:1029A00091E01AC082E991E017C084E991E014C077 +:1029B00081E292E011C083E292E00EC084E292E0F4 +:1029C0000BC085E292E008C086E292E005C087E293 +:1029D00092E002C08AE292E0CF910C944513CF912D +:1029E0000895882309F44BC0823859F40E940D13CE +:1029F00081FF45C089E30E941E1D0E94EB1D89E3F3 +:102A00000CC0833871F40E940D1380FF38C083E539 +:102A10000E941E1D0E94EB1D83E50E94601D0C9408 +:102A2000EB1D843859F40E940D1382FF28C087E4FF +:102A30000E941E1D0E94EB1D87E4EFCF9CEF980FB4 +:102A4000913A58F390E2980F983050F4877091E0E3 +:102A500001C0990F8A95EAF7892F0E94AA1DDFCF3E +:102A60009BE5980F933020F480E090E00C942F13B6 +:102A7000885A833120F480E090E00C944513089547 +:102A8000882321F00E94A41D0C94EB1D0895882337 +:102A900021F00E94AA1D0C94EB1D08957F928F9245 +:102AA0009F92AF92BF92CF92DF92EF92FF920F93DD +:102AB0001F93CF93DF931F92CDB7DEB77C01C62E55 +:102AC000772EFC01058102950F70128111110E9471 +:102AD000C11D0E94171D882379F0112369F080E23F +:102AE0008C0D883048F082E00E94001D0E94171D66 +:102AF00091E0D82ED92601C0D12CE72DE295EF70B8 +:102B0000F0E0E059FF4F0C948625872D807F072D3C +:102B10000F70882311F00295007F112389F00023A4 +:102B200009F490C180E28C0D883020F4802F0E943F +:102B3000A41D03C0802F0E94B41D0E94EB1D82C102 +:102B40008C2D0E94F114002309F495C180E28C0DB4 +:102B5000883020F4802F0E94AA1D03C0802F0E947D +:102B6000BA1D0E94EB1D87C1972D907F872D8F7016 +:102B7000903211F08295807FCC2021F0F1E0CF16C9 +:102B8000B1F01EC0112349F0002309F414C1013033 +:102B900009F011C10E94D41D6EC1002319F001304B +:102BA00009F469C189830E94D71D89810AC1112353 +:102BB00021F0023008F05FC1FEC001115CC101C10B +:102BC000112321F0002309F4F6C03CC1002309F4CD +:102BD000F8C03EC1872D86958695837090E000975A +:102BE00019F0019761F047C1112321F08C2D972D29 +:102BF000937002C080E090E00E942F133CC111232B +:102C000021F08C2D972D937002C080E090E00E94FF +:102C1000451331C18C2D112319F00E94102002C0E0 +:102C20000E9478200E94FD2026C1872D837009F024 +:102C300052C0111120C18C2D829586958770880F06 +:102C4000880F9C2D9F70892E912CA12CB12C082EC1 +:102C500004C0880C991CAA1CBB1C0A94D2F7C4FEA1 +:102C600014C00FE010E020E030E0B901A80104C07A +:102C7000440F551F661F771F8A95D2F7CB01BA0103 +:102C8000609570958095909503C060E070E0CB01F1 +:102C9000272D26952695237030E02230310569F0E6 +:102CA0002330310589F0682979298A299B29213027 +:102CB000310571F00E948C1BDEC0682979298A29B0 +:102CC0009B290E94A81BD7C00E948C1BC501B40180 +:102CD0000E94701BD0C0112319F0872D817001C094 +:102CE0008695882309F4C7C08C2D829586958770B8 +:102CF000880F880F9C2D9F70892E912CA12CB12CB0 +:102D0000082E04C0880C991CAA1CBB1C0A94D2F77C +:102D1000C4FE14C00FE010E020E030E0B901A801CB +:102D200004C0440F551F661F771F8A95D2F7CB0149 +:102D3000BA01609570958095909503C060E070E051 +:102D4000CB01272D269526952370422F50E0423047 +:102D5000510569F04330510589F0682979298A299C +:102D60009B294130510571F00E94661C84C068297E +:102D700079298A299B290E94821C7DC00E94661C99 +:102D8000C501B4010E944A1C76C08C2D90E0FC0164 +:102D9000E05EF109E531F10508F050C0E058FF4F61 +:102DA0000C9486250C2D0F70872D8F71112331F017 +:102DB0000E94E31B802F0E9440155DC00E94041CEE +:102DC000802F0E94471557C0112339F0011153C0BD +:102DD000872D8F710E94291C4EC0023008F04BC015 +:102DE000F7CF112339F0872D8F710E94E31B43C069 +:102DF0001123C9F3872D8F710E94041C3CC011233D +:102E000029F0872D8F710E94CE1B35C00E94C41BF4 +:102E100032C0112351F0172D1F71812F0E94E31B27 +:102E200063E0812F0E94F71C26C081E00E94001DF4 +:102E3000023008F182E00E94001D1DC0112331F014 +:102E4000002389F28C2D0E94291415C0002391F2D1 +:102E50008C2D0E94F1140FC0472D4F706C2DC701AF +:102E60000E94C3060E94E81A06C0472D4F706C2DC1 +:102E7000C7010E94790BDD20F9F00E94F31C80FD50 +:102E80001BC0F70112820E94ED1C0E94E31BC701C8 +:102E90000E946B170E94ED1C0F90DF91CF911F9144 +:102EA0000F91FF90EF90DF90CF90BF90AF909F90E9 +:102EB0008F907F900C94041C0F90DF91CF911F9105 +:102EC0000F91FF90EF90DF90CF90BF90AF909F90C9 +:102ED0008F907F9008950F931F93CF93DF93EC0112 +:102EE000888199812B813C81232BB9F09F3F11F47C +:102EF0008F3F99F0CE010E940A08882371F0688103 +:102F000079818A810E94E91C8C010E949E1C0E948A +:102F1000651BB801CE010E944E15DF91CF911F9124 +:102F20000F9108950E94C11D0E94D11D0E94961DFF +:102F30000E94EB1D0E94AE210E94FD2080E090E0E7 +:102F40000E942F1380E090E00C9445130E94B11D65 +:102F50000C9492170E94DE1C292F22952F7030E0CE +:102F60002C3031054CF42A3031056CF422503109F3 +:102F700022303105A8F407C02C30310569F02F301C +:102F8000310551F00DC0803F69F018F4803E40F4E7 +:102F900009C0843F29F406C093FB882780F908956F +:102FA00080E0089581E00895CF93DF9300D000D0B2 +:102FB0001F92CDB7DEB70F900F900F900F900F902C +:102FC000DF91CF910895CF93DF9300D000D000D050 +:102FD000CDB7DEB726960FB6F894DEBF0FBECDBFD5 +:102FE000DF91CF9108951F93CF93DF93C091880114 +:102FF00016E080918901C81799F0D0E01C9FF0017C +:103000001D9FF00D1124E657FE4F408151816281D2 +:103010007381848195810E94E3172196C770E9CF5F +:10302000DF91CF911F9108954091BA015091BB015A +:103030006091BC017091BD018091BE019091BF0172 +:103040000C94E3178091BF0182958F7009F054C0F2 +:103050008091BC01882309F44FC080918801A09120 +:1030600089016091BA017091BB014091BD015091FD +:10307000BE01B6E08A1709F43FC090E04115510542 +:10308000C1F17F3F11F46F3FA1F1B89FF001B99FEB +:10309000F00D1124E657FE4F218172132AC02081C2 +:1030A000621327C02281211124C023813481241777 +:1030B000350710F421503109241B350B283C31050C +:1030C000C0F42091BF012F7020612093BF0126E042 +:1030D000289FF001299FF00D1124E157FE4F8081B8 +:1030E0008F70806180838AEB91E00E946B170C9453 +:1030F000F31701968770BECF0895CF92DF92EF92BB +:10310000FF920F931F93CF93DF93CDB7DEB76297F4 +:103110000FB6F894DEBF0FBECDBF8C0185E0F8017D +:10312000DE011D9601900D928A95E1F7D8014C9130 +:1031300011965C91119712966C9112971396CD90FF +:10314000DC9014973091BA017091BB018091BD0160 +:103150009091BE01009709F46BC17F3F19F43F3F86 +:1031600009F466C1E090BC01EE2009F4C0C02091D2 +:10317000BF01C816D90628F0F601E81BF90BCF01EC +:1031800004C0809590958C0D9D1DFF24F394883C80 +:10319000910578F0F12C207F09F0C6C07C2DD98AEA +:1031A000C88A89890E94D4178AEB91E00E946B1724 +:1031B000B1C0822F807F09F046C0751314C034134C +:1031C00012C0611110C02F7020612093BF010E94B6 +:1031D00014188AEB91E00E946B178091BF01D8010F +:1031E00015968C932EC0CD2819F15F3F11F44F3FF7 +:1031F000F9F0F62E61111CC080918801209189019F +:1032000036E0821709F45AC090E0389FF001399FE8 +:10321000F00D1124E657FE4F7181571306C07081DF +:10322000471303C07281711103C001968770E9CF03 +:10323000F62E662309F418C18091BF018160809346 +:10324000BF01F12C11C1751308C0341306C0611100 +:1032500004C08091BF01D801C3C04D875E878D85B2 +:103260009E856A8B0E94AA176A898823E1F16623EA +:10327000D1F12091BF01822F82958F7090E002974B +:1032800074F08091BA019091BB0198878F83198661 +:10329000DB86CA862C87CE0107960E946B1786E0D4 +:1032A000F801AAEBB1E001900D928A95E1F70E9436 +:1032B00022180E941418FF24F394D6C04D875E870D +:1032C0008D859E850E94DE1C292F22952F7030E06F +:1032D000223031050CF0BCC09F7009F0B6C0805E92 +:1032E000883008F4C1C0C8010E946B17E4CFC8162B +:1032F000D90608F453C0F601E81BF90BCF01883C4E +:10330000910508F450C0F12C7C2DD98AC88A89898E +:103310000E94D417EAEBF1E086E0DF011D928A9566 +:10332000E9F70E941418A0C0751314C0341312C01A +:10333000611110C08091BF01F8018583C8010E940E +:103340006B1786E0EAEBF1E0DF011D928A95E9F761 +:10335000FE2C8AC04D875E878D859E856A8B0E9474 +:10336000AA176A89882309F4BECF662309F4BBCF64 +:103370002091BF01822F82958F7090E002970CF40C +:103380008ECF8091BA019091BB019A8389831B8271 +:10339000DD82CC822E83CE0101967FCF80959095E1 +:1033A0008C0D9D1DACCFF62E662309F49CCF7513B2 +:1033B0002EC034132CC02091BF0120FD1FC0822FCE +:1033C00082958F70D9F0D80115962C9315978F3070 +:1033D00049F08F5F982F9295907F822F8F70892B65 +:1033E00015968C93C8010E946B1786E0F801AAEB32 +:1033F000B1E001900D928A95E1F793CF86E0F80154 +:10340000AAEBB1E001900D928A95E1F72DC04D87AE +:103410005E878D859E850E94AA17811140CF80917D +:10342000BF0181608093BF01C8010E946B171CC05F +:10343000662309F458CF4D875E878D859E850E944F +:10344000AA17882309F44FCF2ACF811148CF0CC087 +:10345000243031050CF047CF9F7009F440CFF801BC +:103460009581907F09F03BCF8F2D62960FB6F8942F +:10347000DEBF0FBECDBFDF91CF911F910F91FF90A7 +:10348000EF90DF90CF9008951F93CF93DF93CDB748 +:10349000DEB72C970FB6F894DEBF0FBECDBF4F83BB +:1034A000588769877A878B879C87CE0107960E9409 +:1034B0007D18882369F08F8198852A853B85232B89 +:1034C000F1F19F3F09F063C08F3F09F060C037C042 +:1034D00086E0FE013796DE01119601900D928A95E5 +:1034E000E1F76F817885EA85FB85309741F17F3F71 +:1034F00011F46F3F21F12091890130E0C90101965B +:10350000877099274091880150E08417950709F446 +:1035100047C069837A83FD83EC8396E0929FD00154 +:10352000939FB00D1124A657BE4FFE013196019016 +:103530000D929A95E1F7809389010E94F31716E0A6 +:1035400080918801909189018917C1F1189FC0016C +:10355000112486579E4F0E947D18882379F1E091AF +:1035600088011E9FF0011124E657FE4F40815181D2 +:1035700062817381848195810E94E3178091880123 +:1035800090E001968770992780938801D9CF4F8169 +:10359000588569857A858B859C850E94E317CFCFF6 +:1035A0000E94A6171092890110928801EAEBF1E0BF +:1035B00086E0DF011D928A95E9F7C1CF2C960FB600 +:1035C000F894DEBF0FBECDBFDF91CF911F9108955C +:1035D000EF92FF920F931F93CF93DF938C0100978D +:1035E00009F46CC0F12CEE24E394E8012196F80173 +:1035F0008491843740F4843008F051C0813081F0E8 +:10360000823019F15BC0853709F444C0A8F19CE70A +:10361000980F903708F052C08F770E94F11441C084 +:103620000E5F1F4FFE01C49180E28C0F883048F47A +:10363000C7708E2D01C0880FCA95EAF70E94C41D7D +:1036400014C08C2F0E9429142DC00E5F1F4FFE0145 +:10365000C49180E28C0F883058F4C7708E2D01C061 +:10366000880FCA95EAF70E94CA1D0E94EB1D1AC076 +:103670008C2F0E94F11416C00E5F1F4FFE01C491E3 +:10368000CC2381F08FE99FE00197F1F700C00000A3 +:10369000C150F6CF0E5F1F4FFE01F49003C00E9491 +:1036A00029148E018F2D882309F49FCFEFE9FFE0C5 +:1036B0003197F1F700C000008150F5CFDF91CF9135 +:1036C0001F910F91FF90EF90089508956093C401AA +:1036D0007093C5018093C6019093C7010C94921713 +:1036E0000F931F930091C4011091C5012091C60151 +:1036F0003091C701DC01CB01802B912BA22BB32B86 +:103700008093C4019093C501A093C601B093C701F3 +:103710001F910F910C9492170F931F930091C40166 +:103720001091C5012091C6013091C701DC01CB0188 +:1037300080239123A223B3238093C4019093C501D6 +:10374000A093C601B093C7011F910F910C949217DB +:103750000F931F930091C4011091C5012091C601E0 +:103760003091C701DC01CB0180279127A227B32725 +:103770008093C4019093C501A093C601B093C70183 +:103780001F910F910C9492171092C0011092C101D9 +:103790001092C2011092C3010C94921741E050E0C4 +:1037A00060E070E004C0440F551F661F771F8A95C4 +:1037B000D2F74093C0015093C1016093C20170934E +:1037C000C3010C94921741E050E060E070E004C047 +:1037D000440F551F661F771F8A95D2F78091C0014D +:1037E0009091C101A091C201B091C301482B592B06 +:1037F0006A2B7B2B4093C0015093C1016093C2019F +:103800007093C3010C94921741E050E060E070E0C7 +:1038100004C0440F551F661F771F8A95D2F7409545 +:103820005095609570958091C0019091C101A091D3 +:10383000C201B091C301482359236A237B234093DB +:10384000C0015093C1016093C2017093C3010C94F5 +:10385000921741E050E060E070E004C0440F551F53 +:10386000661F771F8A95D2F78091C0019091C101A0 +:10387000A091C201B091C301482759276A277B272D +:103880004093C0015093C1016093C2017093C30182 +:103890000C9492170F931F930091C0011091C101D6 +:1038A0002091C2013091C301DC01CB01802B912B0F +:1038B000A22BB32B8093C0019093C101A093C201AE +:1038C000B093C3011F910F910C9492170F931F9304 +:1038D0000091C0011091C1012091C2013091C3013A +:1038E000DC01CB0180239123A223B3238093C00169 +:1038F0009093C101A093C201B093C3011F910F9196 +:103900000C9492170F931F930091C0011091C10165 +:103910002091C2013091C301DC01CB0180279127A6 +:10392000A227B3278093C0019093C101A093C20145 +:10393000B093C3011F910F910C9492170895CF92E9 +:10394000DF92EF92FF920F931F93CF93DF938C013F +:10395000C090C401D090C501E090C601F090C701AD +:103960008091C0019091C101A091C201B091C301A9 +:10397000C82AD92AEA2AFB2ACFE1D0E0D701C6011A +:103980000C2E04C0B695A795979587950A94D2F703 +:1039900080FF06C0B8018C2F0E94F809019721F41E +:1039A000219760F780E001C08C2FDF91CF911F91AC +:1039B0000F91FF90EF90DF90CF900895CF93DF931A +:1039C000EC010E949F1CBE010E94F809DF91CF917B +:1039D0000895CB010E94DE1C08958091C801859551 +:1039E0008595859508958091C8018770089598E020 +:1039F000899F90011124262B2093C8010C94E31B6E +:103A00002091C801809582238093C801982F9770D8 +:103A100069F430E0482F552747FD509524173507A6 +:103A200029F08595859585950C94041C08959091B1 +:103A3000C801977081E009F480E0089590910C012D +:103A4000992321F090910D01911109C020910E014F +:103A500030910F01F90132969FEF40E01FC0982F7F +:103A60009695969596959F3050F5E0910E01F091C0 +:103A70000F01E90FF11D877021E030E0A90102C0BC +:103A8000440F551F8A95E2F7CA019181892B8183E2 +:103A900008959F3F39F04F5F4E3041F051915813D8 +:103AA000F8CF0DC05111F7CF942FF5CF9F3F39F0CC +:103AB000F901E90FF11D97FDFA95828308950895A4 +:103AC00090910C01992321F090910D01911109C061 +:103AD00020910E0130910F01F9013296205F3F4F86 +:103AE0001FC0982F9695969596959F30F0F4E0918B +:103AF0000E01F0910F01E90FF11D877021E030E018 +:103B0000A90102C0440F551F8A95E2F7CA018095AA +:103B100091818923818308953196E217F30729F073 +:103B200090819813F9CF1082F7CF089581E090E04B +:103B3000E0910E01F0910F01E80FF91F108201963C +:103B400080319105A9F708959091DC01892B80932C +:103B5000DC01089580959091DC0189238093DC013C +:103B600008951092DC0108959091DB01892B8093D8 +:103B7000DB01089580959091DB0189238093DB011F +:103B800008951092DB0108959091DA01892B8093BA +:103B9000DA01089580959091DA0189238093DA0102 +:103BA00008951092DA0108958093C9010895109242 +:103BB000C901089580910E0190910F01FC01319689 +:103BC0009C01205F3F4F80E0919191118F5FE21740 +:103BD000F307D1F70895E0910E01F0910F01809164 +:103BE000DC018083E0910E01F0910F0190818091C2 +:103BF000DB01892B8083E0910E01F0910F01908110 +:103C00008091DA01892B80838091C901882361F03A +:103C1000E0910E01F0910F019081892B80830E9429 +:103C2000DA1D81111092C90180910E0190910F014E +:103C30000C94191320E0009739F0AC014150510960 +:103C4000842395232F5FF7CF822F0895CF92DF92A1 +:103C5000EF92FF926C01EE24FF24C114D104E10421 +:103C6000F10421F0C701B60120E101C020E0C72E18 +:103C7000D82EE92EFF24C114D104E104F10419F077 +:103C8000285FC701B6016B017C0154E0F694E7940C +:103C9000D794C7945A95D1F7C114D104E104F10423 +:103CA00019F02C5FC701B6016B017C0142E0F6946C +:103CB000E794D794C7944A95D1F7C114D104E1048D +:103CC000F10419F02E5FC701B601DC01CB01B695F6 +:103CD000A79597958795892B8A2B8B2B09F02F5FBA +:103CE000822FFF90EF90DF90CF9008958091F601A2 +:103CF000843021F11092DE0120E488E190E00FB6DB +:103D0000F894A895809360000FBE2093600080E037 +:103D10000E940A0C83B7817F846083BF83B7816070 +:103D200083BF7894889583B78E7F83BF88E10FB671 +:103D3000F89480936000109260000FBE089508957B +:103D40000E94E6040E94F9040E949F1E0E94EE0554 +:103D500091E0811101C090E0892F08950E94A6177B +:103D60000E940D130C940A0C82E084BD93E095BD73 +:103D70009AEF97BD80936E0008952FB7F8948091C5 +:103D8000DF019091E001A091E101B091E2012FBF2C +:103D90000895CF92DF92EF92FF920F931F932FB768 +:103DA000F8944091DF015091E0016091E101709140 +:103DB000E2012FBF6A017B01EE24FF248C0120E089 +:103DC00030E0C016D106E206F30610F44150510966 +:103DD0009A01281B390BC9011F910F91FF90EF9099 +:103DE000DF90CF9008951F920F920FB60F9211247B +:103DF0008F939F93AF93BF938091DF019091E001E8 +:103E0000A091E101B091E2010196A11DB11D809345 +:103E1000DF019093E001A093E101B093E201BF9133 +:103E2000AF919F918F910F900FBE0F901F9018959B +:103E30000E940A10F8942FEF87EA91E62150804003 +:103E40009040E1F700C0000087E090EBDC01809338 +:103E5000FF0190930002A0930102B09302029CE044 +:103E600088E10FB6F894A895809360000FBE9093F8 +:103E70006000FFCF0E94721F811102C00E94581F74 +:103E80000E947D1F8093DD010E94851F90E090932A +:103E9000F1018093F00187FB882780F980930D0161 +:103EA0000E94811F682F70E080E090E00C94661BF8 +:103EB0006DEE7EEF80E090E00E94C02560E082E041 +:103EC00090E00E94AE2560E083E090E00E94AE2585 +:103ED00060E084E090E00E94AE2560E085E090E044 +:103EE0000C94AE2580E090E00E94A82521E08D3E54 +:103EF0009E4F09F020E0822F089582E090E00C941C +:103F0000A02583E090E00C94A02584E090E00C9440 +:103F1000A025682F84E090E00C94AE258091E50107 +:103F200080FF0BC06091130185E0689FB0011124F0 +:103F300075956795759567952BC081FF09C0609150 +:103F4000130185E0689FB00111247595679520C025 +:103F500082FF07C06091130185E0689FB0011124C2 +:103F600017C09091E6019923D1F060911201961744 +:103F700088F72091130185E0289F90011124929FDA +:103F8000A001939F500D112470E0CA010E94722578 +:103F90006038710540F46115710539F002C065E0C3 +:103FA00070E0862F08958FE7089581E0089580914D +:103FB000E50180FF08C06091110170E0759567957B +:103FC0007595679521C081FF06C06091110170E071 +:103FD0007595679519C082FF04C06091110170E06A +:103FE00010C09091E6019923C1F0609110019617DD +:103FF000A0F780911101899FC001112470E00E94F7 +:1040000072256038710528F46115710521F0862F3D +:1040100008958FE7089581E0089561E070E0F4CF9E +:10402000803F21F40E948E1F819504C0813F29F4B6 +:104030000E948E1F8093E9010895823F21F40E941F +:104040008E1F819504C0833F29F40E948E1F8093A8 +:10405000E8010895893F19F40E94D71F05C08A3FDF +:1040600031F40E94D71F81958093EA0108958B3F18 +:1040700021F40E94D71F819504C08C3F29F40E942F +:10408000D71F8093EB010895843F21F48091E701CD +:10409000816017C0853F21F48091E701826011C0E3 +:1040A000863F21F48091E70184600BC0873F21F4B3 +:1040B0008091E701886005C0883F31F48091E70175 +:1040C00080618093E70108958D3F21F48091E5019F +:1040D00081600BC08E3F21F48091E501826005C0B4 +:1040E0008F3F29F48091E50184608093E501089574 +:1040F000803F39F48091E90187FF6CC01092E9019B +:1041000069C0813F29F48091E9011816BCF362C0AF +:104110009091E801823F29F497FF5CC01092E8017A +:1041200059C0833F19F41916CCF354C0893F41F4A8 +:104130008091EA0118160CF04DC01092EA014AC0B5 +:104140008A3F29F48091EA0187FF44C0F6CF8B3F74 +:1041500039F48091EB0187FF3DC01092EB013AC02A +:104160008C3F29F48091EB011816BCF333C0843FD7 +:1041700021F48091E7018E7F17C0853F21F4809163 +:10418000E7018D7F11C0863F21F48091E7018B7F8D +:104190000BC0873F21F48091E701877F05C0883FEE +:1041A00031F48091E7018F7E8093E70113C08D3F4A +:1041B00021F48091E5018E7F0BC08E3F21F4809128 +:1041C000E5018D7F05C08F3F29F48091E5018B7F4C +:1041D0008093E5018091E80181110EC08091E90191 +:1041E00081110AC08091EA01811106C08091EB0122 +:1041F000811102C01092E601089587EE91E00E94BD +:1042000024130E94BD1E9093E4018093E30108955E +:104210001F93CF93DF938091E3019091E4010E947B +:10422000C91EAC019091E601992321F0209114015F +:1042300030E006C0209115018AE0289F90011124EA +:104240004217530708F486C08091E801C091E90144 +:10425000D091EA011091EB01811107C0C11176C024 +:10426000D11174C0111172C075C09F3F19F09F5FCA +:104270009093E601181624F40E948E1F8093E801A3 +:104280008091E80187FF05C00E948E1F8195809371 +:10429000E8011C1624F40E948E1F8093E90180918E +:1042A000E90187FF05C00E948E1F81958093E90177 +:1042B0006091E801662339F1C091E901CC2319F13D +:1042C000772767FD7095872F972F0E94832423E31C +:1042D00033E343E35FE30E94E7240E9450246093AA +:1042E000E8016C2F772767FD7095872F972F0E9425 +:1042F000832423E333E343E35FE30E94E7240E9444 +:1043000050246093E9011D1624F40E94D71F809366 +:10431000EA018091EA0187FF05C00E94D71F8195BD +:104320008093EA01111624F40E94D71F8093EB01B9 +:104330008091EB0187FF05C00E94D71F8195809374 +:10434000EB01DF91CF911F910C94FD209F3F09F06D +:104350008ECF96CFDF91CF911F910895E7EEF1E0D8 +:1043600085E0DF011D928A95E9F71092E60110922F +:10437000E5010895833081F128F4813059F08230CD +:10438000D1F00895853009F449C0B8F1863009F4B8 +:1043900056C0089580911501262F30E0280F311D59 +:1043A0002F3F310524F4680F6093150108958FEFB6 +:1043B00080931501089580911401262F30E0280F75 +:1043C000311D2F3F310524F4680F609314010895C7 +:1043D0008FEF80931401089580911301262F30E010 +:1043E000280F311D2F3F310524F4680F609313010E +:1043F00008958FEF80931301089580911201262F65 +:1044000030E0280F311D2F3F310524F4680F6093F1 +:10441000120108958FEF8093120108958091110188 +:10442000262F30E0280F311D2F3F310524F4680F6F +:104430006093110108958FEF809311010895809189 +:104440001001262F30E0280F311D2F3F310524F4B5 +:10445000680F6093100108958FEF80931001089505 +:10446000833011F128F4813049F0823091F00895C1 +:10447000853081F120F18630C1F1089580911501D8 +:10448000681720F4861B809315010895109215017A +:10449000089580911401681720F4861B80931401FD +:1044A000089510921401089580911301681720F463 +:1044B000861B809313010895109213010895809133 +:1044C0001201681720F4861B809312010895109240 +:1044D0001201089580911101681720F4861B8093C2 +:1044E000110108951092110108958091100168172B +:1044F00020F4861B809310010895109210010895F6 +:104500000F931F938D3109F471C008F045C08031BD +:1045100009F485C008F5873009F46FC068F4863067 +:1045200009F0ADC08091DD01817F8E7F8093DD0138 +:1045300081E08093ED01A4C08B3009F49EC08E30E1 +:1045400009F09DC08091DD0182FB222720F991E0D6 +:10455000922790FB82F96CC0863109F48EC060F41A +:10456000813109F08CC00E94A61790910D0181E065 +:10457000892780930D0181C0893109F47EC08B3178 +:1045800009F07DC08091DD0181FB222720F991E0B7 +:10459000922790FB81F94CC0853309F466C048F43A +:1045A000873209F462C008F44FC0893209F45DC053 +:1045B00066C0833438F48A3308F044C0883309F481 +:1045C0005CC05DC0833409F450C0883409F057C022 +:1045D0000E94A6170FEF13ED20E30150104020407A +:1045E000E1F700C000000E94181F47C00E940A2483 +:1045F0000E940D130E940A0C40C09091DD01892F8A +:104600008095817080FB90F929F096609860909376 +:10461000DD0136C0997F977F9093DD012EC0809198 +:10462000DD0183FB222720F991E0922790FB83F99B +:104630008093DD01992309F18091DD0181608093F0 +:10464000DD011BC0895301C08D5141E050E060E0A5 +:1046500070E08A019B0104C0000F111F221F331F4D +:104660008A95D2F7C901B80104C061E070E080E02A +:1046700090E00E94661B0E94A61781E001C080E0C6 +:104680001F910F91089580E0089580E008958E5164 +:104690008A3030F4E82FF0E0E65DFE4F8081089527 +:1046A00080E00895CF93C82F8091ED01813079F09B +:1046B00018F08230E9F186C0E0910E01F0910F010F +:1046C0008081813169F0823209F07EC009C0E091B9 +:1046D0000E01F0910F018081813111F0823261F47D +:1046E0008C2F0E944323811104C08C2F0E948022B2 +:1046F0001DC081E090E01AC08C2F0E9445238111DB +:1047000014C0C43179F048F4CB3079F0C03109F0ED +:104710005FC082E08093ED0108C0C93219F0C83350 +:1047200021F056C01092ED0153C081E0817052C05B +:10473000C93281F110F5C43169F1A8F4C73009F02C +:1047400045C08AE08093150194E19093140193E0B1 +:10475000909313018093120188E08093110188E205 +:104760008093100133C082EE8C0F863078F58C2F49 +:104770000E9447238093EC0129C0CE34E9F020F455 +:10478000CB3421F56AE013C0C13579F0C235F1F4BC +:1047900061E00DC08091EC01882319F01092EC01CA +:1047A00015C081E08093ED0115C061E006C08091E5 +:1047B000EC010E94BA210AC06AE08091EC010E94DB +:1047C000302204C01092ED0180E004C081E002C0FC +:1047D00080E0ACCFCF910895E1E8F0E0808188607F +:1047E00080838081816080838FB7F89493E0909379 +:1047F000890090ED909388008FBF0895EFE6F0E078 +:104800008081826080830895EFE6F0E080818D7F73 +:1048100080830895EFE6F0E0908182E0892780832D +:1048200008951F920F920FB60F9211242F933F936A +:104830004F935F936F937F938F939F93AF93BF93A8 +:10484000EF93FF938091EE019091EF010196909389 +:10485000EF018093EE01811103C082E00E940A0CF7 +:10486000E091EF01E695E695F0E0ED51F84FE49127 +:104870008091EE018E1303C080E00E940A0CFF912C +:10488000EF91BF91AF919F918F917F916F915F91C8 +:104890004F913F912F910F900FBE0F901F90189541 +:1048A00004D06894B1118DC0089570D088F09F57DE +:1048B00090F0B92F9927B751A0F0D1F0660F771F6C +:1048C000881F991F1AF0BA95C9F712C0B13081F04C +:1048D00077D0B1E0089574C0672F782F8827B85F2C +:1048E00039F0B93FCCF3869577956795B395D9F7AD +:1048F0003EF490958095709561957F4F8F4F9F4FB7 +:104900000895E89409C097FB3EF4909580957095C2 +:1049100061957F4F8F4F9F4F9923A9F0F92F96E90B +:10492000BB279395F695879577956795B795F11180 +:10493000F8CFFAF4BB0F11F460FF1BC06F5F7F4F1D +:104940008F4F9F4F16C0882311F096E911C077232F +:1049500021F09EE8872F762F05C0662371F096E838 +:10496000862F70E060E02AF09A95660F771F881F07 +:10497000DAF7880F9695879597F9089557FD90581F +:10498000440F551F59F05F3F71F04795880F97FB13 +:10499000991F61F09F3F79F08795089512161306CD +:1049A0001406551FF2CF4695F1DF08C016161706FC +:1049B0001806991FF1CF8695710561050894089531 +:1049C000E894BB2766277727CB0197F908950BD08A +:1049D00078C069D028F06ED018F0952309F05AC03D +:1049E0005FC01124EECFCADFA0F3959FD1F3950FDE +:1049F00050E0551F629FF001729FBB27F00DB11D63 +:104A0000639FAA27F00DB11DAA1F649F6627B00DF2 +:104A1000A11D661F829F2227B00DA11D621F739FDB +:104A2000B00DA11D621F839FA00D611D221F749FE9 +:104A30003327A00D611D231F849F600D211D822F30 +:104A4000762F6A2F11249F5750408AF0E1F0882377 +:104A50004AF0EE0FFF1FBB1F661F771F881F915084 +:104A60005040A9F79E3F510570F014C0AACF5F3F98 +:104A7000ECF3983EDCF3869577956795B795F795B7 +:104A8000E7959F5FC1F7FE2B880F911D969587953F +:104A900097F9089597F99F6780E870E060E00895BE +:104AA0009FEF80EC089500240A9416161706180646 +:104AB0000906089500240A94121613061406050622 +:104AC0000895092E0394000C11F4882352F0BB0FB3 +:104AD00040F4BF2B11F460FF04C06F5F7F4F8F4F16 +:104AE0009F4F089597FB072E16F4009407D077FD8B +:104AF00009D00E948C2507FC05D03EF49095819545 +:104B00009F4F0895709561957F4F0895EE0FFF1F99 +:104B10000590F491E02D0994AA1BBB1B51E107C03D +:104B2000AA1FBB1FA617B70710F0A61BB70B881F3D +:104B3000991F5A95A9F780959095BC01CD010895CC +:104B4000F999FECF92BD81BDF89A992780B5089555 +:104B5000A8E1B0E042E050E00C94C825262FF99976 +:104B6000FECF92BD81BDF89A019700B4021639F0CC +:104B70001FBA20BD0FB6F894FA9AF99A0FBE08959D +:104B80000196272F0E94AF250C94AE25DC01CB01A6 +:104B9000FC01F999FECF06C0F2BDE1BDF89A31964D +:104BA00000B40D9241505040B8F70895F894FFCFEB +:104BB00002200C0C9A0C770C430C0F0C0101CA015B +:104BC00028080A03140A404D3639A3075607200760 +:104BD000E7067A069306AC06C5060102030405063D +:044BE00007080900B9 +:00000001FF diff --git a/keyboards/ergodox_ez/keymaps/osx_de/keymap.c b/keyboards/ergodox_ez/keymaps/osx_de/keymap.c new file mode 100644 index 0000000000..554813d7e8 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/osx_de/keymap.c @@ -0,0 +1,364 @@ +#include "ergodox_ez.h" +#include "debug.h" +#include "action_layer.h" +#include "keymap_german_osx.h" + +#define BASE 0 +#define SYMB 1 +#define MDIA 2 +#define SMLY 3 +#define NUMB 4 +#define EGOS 5 + +#define M_CTRL_CMDV 0 +#define M_CTRL_CMDC 1 +#define M_MEH_SH_ACUT 2 +#define M_LGUI_SHFT 3 +#define M_CTL_SFT_HASH 4 +#define M_DE_OSX_CIRC_CTRLCMD 5 +#define M_DE_OSX_PLUS_CTRLALT 6 +#define SM_SMILE 7 +#define SM_SMIRK 8 +#define SM_CRY 9 +#define SM_SAD 10 +#define SM_HEART 11 +#define SM_LAUGH 12 +#define SM_KISS 13 +#define SM_FROWN 14 +#define M_TOGGLE_5 15 + +//Layout keymap.c generated with ErgodoxLayoutGenerator V1.0BETA1 +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +[BASE]=KEYMAP( +//left half + KC_ESC, DE_OSX_1, DE_OSX_2, DE_OSX_3, DE_OSX_4, DE_OSX_5, M(M_CTL_SFT_HASH), + KC_TAB, DE_OSX_Q, DE_OSX_W, DE_OSX_E, DE_OSX_R, DE_OSX_T, KC_LGUI, + KC_LALT, DE_OSX_A, DE_OSX_S, DE_OSX_D, DE_OSX_F, DE_OSX_G, + KC_LSFT, CTL_T(DE_OSX_Y), DE_OSX_X, DE_OSX_C, DE_OSX_V, DE_OSX_B, KC_LALT, + LT(SYMB,DE_OSX_LESS), M(M_DE_OSX_CIRC_CTRLCMD), M(M_DE_OSX_PLUS_CTRLALT), KC_UP, KC_DOWN, + M(M_MEH_SH_ACUT), TG(MDIA), + KC_HOME, + KC_BSPC, KC_DEL, LT(SMLY,KC_END), + //right half + M(M_CTL_SFT_HASH), DE_OSX_6, DE_OSX_7, DE_OSX_8, DE_OSX_9, DE_OSX_0, DE_OSX_SS, + KC_RGUI, DE_OSX_Z, DE_OSX_U, DE_OSX_I, DE_OSX_O, DE_OSX_P, DE_OSX_UE, + DE_OSX_H, DE_OSX_J, DE_OSX_K, DE_OSX_L, DE_OSX_OE, ALT_T(DE_OSX_AE), + KC_RALT, DE_OSX_N, DE_OSX_M, DE_OSX_COMM, DE_OSX_DOT, CTL_T(DE_OSX_MINS), KC_RSFT, + KC_LEFT, KC_RIGHT, LGUI(KC_LSFT), LALT(KC_LSFT), LT(SYMB,DE_OSX_PLUS), + TG(NUMB), ALL_T(DE_OSX_ACUT), + KC_PGUP, + KC_PGDN, KC_ENT, KC_SPC), +[SYMB]=KEYMAP( +//left half + KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, + KC_TRNS, DE_OSX_LESS, DE_OSX_MORE, DE_OSX_EXLM, DE_OSX_QST, KC_TRNS, KC_TRNS, + KC_TRNS, DE_OSX_HASH, DE_OSX_DLR, DE_OSX_BSLS, DE_OSX_SLSH, KC_DOT, + KC_TRNS, KC_TRNS, DE_OSX_LESS, DE_OSX_PERC, DE_OSX_PIPE, DE_OSX_TILD, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_DEL, KC_TRNS, + //right half + M(M_TOGGLE_5), KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + KC_TRNS, LALT(LSFT(KC_7)), LALT(KC_5), LALT(KC_6), DE_OSX_LESS, DE_OSX_MORE, DE_OSX_EXLM, + DE_OSX_SLSH, DE_OSX_LPRN, DE_OSX_RPRN, LALT(KC_8), LALT(KC_9), DE_OSX_HASH, + KC_TRNS, DE_OSX_PIPE, DE_OSX_TILD, DE_OSX_CIRC, KC_UP, DE_OSX_MINS, LSFT(KC_4), + DE_OSX_QUOT, KC_LEFT, KC_DOWN, KC_RIGHT, KC_TRNS, + KC_F13, KC_F12, + KC_F14, + KC_F15, KC_TRNS, KC_TRNS), +[MDIA]=KEYMAP( +//left half + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_BTN1, KC_MS_U, KC_BTN2, KC_WH_U, KC_TRNS, + KC_TRNS, KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_WH_D, + KC_TRNS, KC_TRNS, KC_WH_L, KC_WH_D, KC_WH_R, KC_BTN3, 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 half + KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_VOLD, KC_TRNS, KC_MPRV, KC_MNXT, KC_UP, KC_TRNS, + KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_WBAK), +[SMLY]=KEYMAP( +//left half + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + //right half + M(SM_SMILE), M(SM_SMIRK), M(SM_LAUGH), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, M(SM_FROWN), M(SM_SAD), M(SM_CRY), KC_TRNS, KC_TRNS, KC_TRNS, + M(SM_HEART), M(SM_KISS), 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), +[NUMB]=KEYMAP( +//left half + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, + 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 half + KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + KC_TRNS, KC_UP, KC_7, KC_8, KC_9, LSFT(KC_RBRC), KC_F12, + KC_DOWN, KC_4, KC_5, KC_6, KC_RBRC, DE_OSX_MINS, + KC_TRNS, LSFT(KC_6), KC_1, KC_2, KC_3, LSFT(KC_7), KC_TRNS, + KC_0, KC_DOT, KC_COMM, DE_OSX_EQL, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS), +[EGOS]=KEYMAP( +//left half + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_LSFT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_LCTL, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_F1, KC_F2, + KC_F3, + KC_SPC, KC_LCTL, KC_F4, + //right half + M(M_TOGGLE_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_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS), +}; + +const uint16_t PROGMEM fn_actions[] = { + +}; + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ +static uint16_t start; +switch(id) { +case M_TOGGLE_5: +//Macro: M_TOGGLE_5//----------------------- + if (record->event.pressed){ + layer_state ^= (1<<5); + layer_state &= (1<<5); + } + +break; +case M_CTRL_CMDC: +//Macro: M_CTRL_CMDC//----------------------- +if (record->event.pressed) { + start = timer_read(); + return MACRO(D(LCTRL),END); + } else { + if (timer_elapsed(start) >150) { + return MACRO(U(LCTRL),END); + } else { + return MACRO(U(LCTRL),D(LGUI),T(C),U(LGUI),END); + } + } + +break; +case M_DE_OSX_PLUS_CTRLALT: +//Macro: M_DE_OSX_PLUS_CTRLALT//----------------------- +if (record->event.pressed) { + start = timer_read(); + return MACRO(D(LCTRL),D(LALT),END); + } else { + if (timer_elapsed(start) >150) { + return MACRO(U(LCTRL),U(LALT),END); + } else { + return MACRO(U(LCTRL),U(LALT),T(RBRC),END); + } + } + +break; +case SM_KISS: +//Macro: SM_KISS//----------------------- +if (record->event.pressed) { + return MACRO(D(LSFT),T(DOT),U(LSFT),T(SLSH),D(LSFT),T(RBRC),U(LSFT),END); + } + +break; +case SM_FROWN: +//Macro: SM_FROWN//----------------------- +if (record->event.pressed) { + return MACRO(D(LSFT),T(DOT),U(LSFT),T(SLSH),D(LALT),T(8),U(LALT),END); + } + +break; +case SM_CRY: +//Macro: SM_CRY//----------------------- +if (record->event.pressed) { + return MACRO(D(LSFT),T(COMM),U(LSFT),T(SLSH),D(LSFT),T(8),U(LSFT),END); + } + +break; +case SM_SMILE: +//Macro: SM_SMILE//----------------------- +if (record->event.pressed) { + return MACRO(D(LSFT),T(DOT),U(LSFT),T(SLSH),D(LSFT),T(9),U(LSFT),END); + } + +break; +case SM_SMIRK: +//Macro: SM_SMIRK//----------------------- +if (record->event.pressed) { + return MACRO(D(LSFT),T(COMM),U(LSFT),T(SLSH),D(LSFT),T(9),U(LSFT),END); + } + +break; +case M_LGUI_SHFT: +//Macro: M_LGUI_SHFT//----------------------- +if (record->event.pressed){ + return MACRO(D(LGUI),D(LSFT),END); + }else{ + return MACRO(U(LGUI),U(LSFT),END); + } + +break; +case SM_HEART: +//Macro: SM_HEART//----------------------- +if (record->event.pressed) { + return MACRO(T(GRV),T(3),END); + } + +break; +case SM_LAUGH: +//Macro: SM_LAUGH//----------------------- +if (record->event.pressed) { + return MACRO(D(LSFT),T(DOT),U(LSFT),T(SLSH),D(LSFT),T(D),U(LSFT),END); + } + +break; +case M_CTL_SFT_HASH: +//Macro: M_CTL_SFT_HASH//----------------------- +if (record->event.pressed) { + start = timer_read(); + return MACRO(D(LCTRL),D(LSFT),END); + } else { + if (timer_elapsed(start) >150) { + return MACRO(U(LCTRL),U(LSFT),END); + } else { + return MACRO(U(LCTRL),U(LSFT),T(BSLS),END); + } + } + +break; +case SM_SAD: +//Macro: SM_SAD//----------------------- +if (record->event.pressed) { + return MACRO(D(LSFT),T(DOT),U(LSFT),T(SLSH),D(LSFT),T(8),U(LSFT),END); + } + +break; +case M_DE_OSX_CIRC_CTRLCMD: +//Macro: M_DE_OSX_CIRC_CTRLCMD//----------------------- +if (record->event.pressed) { + start = timer_read(); + return MACRO(D(LCTRL),D(LGUI),END); + } else { + if (timer_elapsed(start) >150) { + return MACRO(U(LCTRL),U(LGUI),END); + } else { + return MACRO(U(LCTRL),U(LGUI),T(NUBS),END); + } + } + +break; +case M_CTRL_CMDV: +//Macro: M_CTRL_CMDV//----------------------- +if (record->event.pressed) { + start = timer_read(); + return MACRO(D(LCTRL),END); + } else { + if (timer_elapsed(start) >150) { + return MACRO(U(LCTRL),END); + } else { + return MACRO(U(LCTRL),D(LGUI),T(V),U(LGUI),END); + } + } + +break; +case M_MEH_SH_ACUT: +//Macro: M_MEH_SH_ACUT//----------------------- +if (record->event.pressed) { + start = timer_read(); + return MACRO(D(LCTRL),D(LSFT),D(LALT),END); + } else { + if (timer_elapsed(start) >150) { + return MACRO(U(LCTRL),U(LSFT),U(LALT),END); + } else { + return MACRO(U(LCTRL),U(LALT),T(EQL),U(LSFT),END); + } + } + +break; +} +return MACRO_NONE; +}; + +// Runs just one time when the keyboard initializes. +void matrix_init_user(void) { + +}; + +// Runs constantly in the background, in a loop. +void matrix_scan_user(void) { + +uint8_t layer = biton32(layer_state); + +ergodox_board_led_off(); +ergodox_right_led_1_off(); +ergodox_right_led_2_off(); +ergodox_right_led_3_off(); +switch (layer) { + + case SYMB: + ergodox_right_led_1_on(); + + + break; + case MDIA: + + ergodox_right_led_2_on(); + + break; + case SMLY: + + + ergodox_right_led_3_on(); + break; + case NUMB: + ergodox_right_led_1_on(); + + ergodox_right_led_3_on(); + break; + case EGOS: + ergodox_right_led_1_on(); + ergodox_right_led_2_on(); + ergodox_right_led_3_on(); + break; +default: +// none +break; +} + +}; + diff --git a/keyboards/ergodox_ez/keymaps/osx_de/osx_de_highres.png b/keyboards/ergodox_ez/keymaps/osx_de/osx_de_highres.png new file mode 100644 index 0000000000..d442a992c8 Binary files /dev/null and b/keyboards/ergodox_ez/keymaps/osx_de/osx_de_highres.png differ diff --git a/keyboards/ergodox_ez/keymaps/osx_de/readme.md b/keyboards/ergodox_ez/keymaps/osx_de/readme.md new file mode 100644 index 0000000000..5011a9dd62 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/osx_de/readme.md @@ -0,0 +1,41 @@ +#Ergodox EZ für OSX + +Dies ist nur ein kleiner Tweak der bestehenden firmware für das ErgoDox-EZ-Keyboard. Leider passte das layout nicht wirklich für OSX, deswegen habe ich einige Anpassungen gemacht. Dabei wurden folgende features umgesetzt: + +- Die Umlaute sollten an einigermassen sinnvollen Plätzen liegen +- der Umstieg sollte dadurch erleichtert werden, dass einige Tasten an ihren "normalen" Platz zurückgewandert sind. Z.B. ESC, Tab,... +- die Leertaste ist jetzt auf der rechten seite, neben Enter. Dafür hat der linke Daumen nun Backspace und Delete. +- die CMD- und Alt-Tasten sind in der Mitte einfach erreichbar. +- es gibt eine neue Layer die für Spiele genutzt werden kann (egosooter wie Counter Strike). Dort liegen die wichtigsten Tasten auf der linken Seite, im Daumenblock z.B. space und ctrl sowie die F-Tasten 1-4. Diese Layer ist über die Symbollayer erreichbar. +- Die Symbollayer wurde dahingehend angepasst, dass die klammern, etc nun auf beiden hälften der Tastatur zu finden sind +- der Zehnerblock wurde in eine eigene Layer umgezogen +- die Meh und Hyper-Tasten wurden in die Daumenblöcke umgezogen + +# Erstellt Mit Dem ErgodoxLayoutGenerator + +Der ErgodoxLayoutGenerator ist ein kleines Werkzeug, welches die Erstellung und Pflege der eigenen Keymaps erleichtern soll. Es ist in java geschrieben und kann [hier](https://github.com/sboesebeck/ErgodoxLayoutGenerator/releases) heruntergeladen werden. Damit das Tool funktioniert sollte das offizielle Oracle JDK in aktueller Version installiert sein. +Die Dokumentation für den ELG kann man [hier](https://boesebeck.name/2016/04/16/ergodoxlayoutgenerator-documentation/) nachlesen (momentan leider nur in Englisch verfügbar). + + + +------------------------------ + +# ErgoDox EZ for OSX + +This is only a little tweak of the existing default layout for the ErgoDox keyboard. Unfortunately the default layout did not work well with german OSX, so I created som adjustments. These were the features added and changed: + +- the umlaut-keys should be at their useful place more or less +- the switching should be made more easy so some other keys (like tab, esc) were moved to their default place +- the space key can now be used with both hands +- the CMD- and ALT-Keys moved to the middle, can be reached more easily. +- there is a new layer for using the cursor-keys, placed like on the default keyboard. This makes them useable for games also +- the symbollayer now has only symbols +- the number block was moved to a special layer +- meh and hyper went down to the thumb block + +# Created Using the ErgodoxLayoutGenerator + +The ErgodoxLayoutGenerator (ELG) is a little tool, which makes the creation and maintenance of keycaps a lot easier. It was written in Java and can be downloaded [here](https://github.com/sboesebeck/ErgodoxLayoutGenerator/releases). To use the tool, you need to have a current version of Oracles JDK installed. + +The documentation of the ELG can be viewed [here](https://boesebeck.name/2016/04/16/ergodoxlayoutgenerator-documentation/). + diff --git a/keyboards/ergodox_ez/keymaps/osx_de_adnw_koy/compiled.hex b/keyboards/ergodox_ez/keymaps/osx_de_adnw_koy/compiled.hex new file mode 100644 index 0000000000..3351a628fe --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/osx_de_adnw_koy/compiled.hex @@ -0,0 +1,1152 @@ +:100000000C9421030C9465030C9465030C94650314 +:100010000C9465030C9465030C9465030C946503C0 +:100020000C9465030C9465030C94850E0C94570F87 +:100030000C9465030C9465030C9465030C946503A0 +:100040000C9465030C9411220C9465030C946503C5 +:100050000C9465030C94F31C0C9465030C946503D9 +:100060000C9465030C9465030C9465030C94650370 +:100070000C9465030C9465030C9465030C94650360 +:100080000C9465030C9465030C9465030C94650350 +:100090000C9465030C9465030C9465030C94650340 +:1000A0000C9465030C9465030C946503C40FE60F70 +:1000B000D410E60FD4102B104E10D410A310B6108D +:1000C00085138513B413B413EA130A143B153B15B7 +:1000D00015143B15C514C5142C153B153B153515CA +:1000E000D214D214D214D214D214D214D214D214E0 +:1000F000D214D214D214D214D214D214D214D214D0 +:10010000E414F114F814FF14091529002B0003530B +:10011000E100354100001E000E000B001B61640071 +:100120004D001F00370004001400E1044C002000C3 +:1001300012000800340050002A00210036000C0094 +:100140002F004F004A0022001D001800330000005D +:100150000253E000E3000000E20000002E67E4002C +:10016000E7000000E60000002E6F230019000700E2 +:1001700005000000045324000A0017001300520079 +:100180004B002500060015001A0051002C00260027 +:100190000F0011001000E108280027002D001600B4 +:1001A0000D6130004E0038001C000942E50031416D +:1001B00000000100010001000100010000003A0000 +:1001C000350031000100010001003B003502210231 +:1001D000640001004C003C001E02240622020100C3 +:1001E00001003D002D0224022404010001003E0014 +:1001F00001003700110400000100010001000000AF +:1002000001000000010001000100000001000000E9 +:1002100001003F00240624022302000001004000E8 +:1002200022042502350001000100410023042602BA +:100230003502370001004200240425041F021E027B +:100240000100430031002604310201000100440096 +:10025000450001002D020100000001000100010025 +:10026000010001000000010001000100FB0001008D +:10027000010001000100F200F9000100010001008D +:10028000F000F100FA00F400010001000100F300A9 +:10029000FC00F5000100010001000100F600000073 +:1002A0000100010001000000010000000100010048 +:1002B0000100000001000000010001000100010038 +:1002C000010000000100010001000100A800A900D8 +:1002D0000100010001000100AC00AA00B60001000D +:1002E00001000100AB00500001000100010001000D +:1002F000520051000100AE000100010001004F005A +:10030000000029002B000100E100354100001E0023 +:10031000140004001D6164004D001F001A00160047 +:100320001B00E1044C0020000800070006005000FC +:100330002A0021001500090019004F004A00220080 +:1003400017000A000500000001001908E300000082 +:10035000E20000002E670608E7000000E60000004B +:100360002E6F23001C000B00110000000100240070 +:1003700018000D00100052004B0025000C000E006C +:10038000360051002C00260012000F003700E10853 +:100390002800270013003300386130004E002D0084 +:1003A0002F003442E500314100000100010001004E +:1003B0000100010000000100010001000100010036 +:1003C00001000100010050000100010001000100D6 +:1003D00052005100010001000100010001004F0026 +:1003E0000100010001000100010001000100000006 +:1003F00001000100010000000100000001000100F7 +:10040000010000000100000001003F005200510007 +:100410002302000001004000240021001E002700EC +:1004200001004100250022001F00370001004200AA +:100430002600230020002700010043003002300086 +:1004400024022E00010044004500010001000100CB +:10045000000016034500720067006F0044006F0043 +:100460007800200045005A00000016034500720085 +:1004700067006F0044006F007800200045005A00BC +:1004800000000403090409026D00040100A0FA0938 +:1004900004000001030101000921110100012240B3 +:1004A000000705810308000A090401000103010295 +:1004B00000092111010001224D00070582030800F7 +:1004C0000A090402000103000000092111010001D2 +:1004D0002236000705830308000A0904030001030C +:1004E00000000009211101000122390007058403E1 +:1004F0001000011201100100000008EDFE071301B9 +:10050000000102000105010906A101050719E02902 +:10051000E7150025019508750181020508190129D3 +:10052000059505750191029501750391010507195E +:1005300000297715002501957875018102C0050114 +:100540000980A101850216010026B7001A01002AC0 +:10055000B700751095018100C0050C0901A1018546 +:1005600003160100269C021A01002A9C02751095B0 +:10057000018100C005010902A1010901A1000509CD +:1005800019012905150025019505750181029501BF +:10059000750381010501093009311581257F950217 +:1005A0007508810609381581257F95017508810632 +:1005B000050C0A38021581257F950175088106C052 +:1005C000C005010906A101050719E029E715002565 +:1005D00001950875018102950175088101050819C9 +:1005E0000129059505750191029501750391010594 +:1005F00007190029FF150026FF00950675088100E0 +:10060000C00000000000000000000000010204061D +:100610000A0F17202C3A4A5D71879DB3C7DAE9F5B6 +:10062000FCFFFCF5E9DAC7B39D87715D4A3A2C20DF +:10063000170F0A060402010000000000000000007D +:10064000000011241FBECFEFDAE0DEBFCDBF04B63D +:1006500003FE24C08091FD019091FE01A091FF0155 +:10066000B09100028730904BA740B04BB9F4109284 +:10067000FD011092FE011092FF011092000214BEC3 +:1006800084B7877F84BF88E10FB6F89480936000B9 +:10069000109260000FBEE0E0FFE3099511E0A0E0DA +:1006A000B1E0E0EBF7E402C005900D92A433B1078E +:1006B000D9F711E0A4E3B1E001C01D92AD3FB1074D +:1006C000E1F70E94CD0B0C94D6230C9400001092FD +:1006D000B9008AE08093B800089594EA9093BC0032 +:1006E0009091BC0097FFFCCF9091B900987F983013 +:1006F00021F0903111F081E008958093BB0084E8EF +:100700008093BC008091BC0087FFFCCF8091B90032 +:10071000887F883111F0803471F780E0089584E992 +:100720008093BC008091BC0084FDFCCF0895809331 +:10073000BB0084E88093BC008091BC0087FFFCCFA5 +:100740009091B900987F81E0983209F480E0089593 +:1007500084E88093BC008091BC0087FFFCCF80912F +:10076000BB00089580B38C7080BB81B3836F81BB65 +:10077000089580910101811115C080E40E946D03EC +:100780008093010181110CC082E10E949703809344 +:100790000101811105C08FEF0E9497038093010131 +:1007A0000E948F0384B1807F84B985B1807F85B931 +:1007B0008AB1837F8AB98BB1837F8BB93E98469883 +:1007C00008950E948305809301010E94B9030E944D +:1007D000B203A5E3B1E0E3E4F1E08EE08E0F119205 +:1007E0001D928E13FCCF0C946D050E94830580939F +:1007F00001010E94B9030E94B203A5E3B1E0E3E462 +:10080000F1E08EE08E0F11921D928E13FCCF0895B1 +:10081000BF92CF92DF92EF92FF920F931F93CF93ED +:10082000DF9380910101882379F0809134018F5FFB +:1008300080933401811108C00E94830580930101D7 +:10084000811102C00E94150505E311E0C0E0D0E06F +:10085000DD24D39482E0C82EEE24E394F12CC7303B +:10086000D10500F580910101811164C080E40E94EE +:100870006D0380930101811112C082E10E949703F0 +:100880008093010181110BC0C7010C2E01C0880F9C +:100890000A94EAF780950E949703809301010E94D1 +:1008A0008F0348C0CA30A1F028F4C83059F0C930CD +:1008B00061F005C0CC3089F070F0CD3089F0209A1D +:1008C000289810C0219A29980DC0229A2A980AC007 +:1008D000239A2B9807C0529A01C0539A5B9802C082 +:1008E0003E9A469890EA9A95F1F79FB1799902C09D +:1008F00082E001C080E091709D25982B7C9902C018 +:1009000084E001C080E0892B7D9902C038E001C0FD +:1009100030E0832B7E9902C020E101C020E0822BD1 +:100920009FB19095991F9927991F9295990F907E45 +:10093000892B0FC080910101811149C080E40E9480 +:100940006D0380930101882379F1B12C0E948F03FC +:100950008B2DF8019081981719F08083C0920001C7 +:100960000E94B90321960F5F1F4FCE30D10509F0C9 +:1009700076CF80910001882361F18150809300013E +:10098000882339F08FE99FE00197F1F700C000005C +:1009900020C0A3E4B1E0E5E3F1E0CF01825F9191F3 +:1009A0009D938E13FCCF15C083E10E949703809323 +:1009B00001018111CACF81E40E946D03809301017E +:1009C0008111C3CF0E94A803B82EB094BFCF80E09E +:1009D000C0CF0E94130581E0DF91CF911F910F914D +:1009E000FF90EF90DF90CF90BF900895E82FF0E058 +:1009F000ED5BFE4F8081089508950F931F93CF9371 +:100A0000DF93C3E4D1E010E00C2F025F899190E006 +:100A10000E941A1C180F0C13F9CF812FDF91CF9170 +:100A20001F910F9108950C94E30556985E982598B0 +:100A30002D9826982E9827982F988FEF90E09093D6 +:100A400089008093880090938B0080938A00909314 +:100A50008D0080938C00259A2D9A2FEF80E792E0ED +:100A6000215080409040E1F700C00000269A2E9A65 +:100A70002FEF80E792E0215080409040E1F700C0E6 +:100A80000000279A2F9A2FEF80E792E021508040B4 +:100A90009040E1F700C0000025982D982FEF80E7E7 +:100AA00092E0215080409040E1F700C0000026987D +:100AB0002E982FEF80E792E0215080409040E1F7A0 +:100AC00000C0000027982F9856985E9825982D987A +:100AD00026982E9827982F98089589EA8093800069 +:100AE00089E08093810024982C983F988AB18F7474 +:100AF0008AB96E98479A8BB1806B8BB9769A0E94AF +:100B000015050C94E20580E280930101809151016A +:100B100081110EC00E94670381E0809351012FEF85 +:100B200083ED90E3215080409040E1F700C0000049 +:100B300080E40E946D038093010181112EC00E9408 +:100B4000970380930101811128C00E94970380932D +:100B50000101811122C08FE30E949703809301015C +:100B600081111BC00E948F0380E40E946D0380935B +:100B70000101811112C08CE00E9497038093010152 +:100B800081110BC00E94970380930101811105C060 +:100B90008FE30E949703809301010E948F0380914D +:100BA0000101089561110BC0FC018281882321F0AD +:100BB00085EE0E94291203C085EE0E94F11280E0AA +:100BC00090E0089508956091BE017091BF018091F9 +:100BD000C0019091C1010E94261C56985E982598EC +:100BE0002D9826982E9827982F98089581E008959B +:100BF00081E008950C94F8050895282F882339F092 +:100C000090E02A3010F44D9608950697089587E2F3 +:100C100090E00895AF92BF92DF92EF92FF920F9310 +:100C20001F93CF93DF938C01FC01C081D181CE0152 +:100C30000E949F1ABE010E947A09EC01B8010E942D +:100C4000FA05882309F4C9C1F8018281882309F4CF +:100C5000BEC080915E0181111FC0C431F0E7DF0783 +:100C600009F0B5C10E94FC0581E080935E010E94FD +:100C7000BD1C90935D0180935C0110925501109210 +:100C8000570110925601109259011092580110927A +:100C90005B0110925A01A1C180915C0190915D01AC +:100CA0000E94C91C883C910570F480915501E82F81 +:100CB000F0E0EE0FFF1FEA5AFE4FD183C0838F5F33 +:100CC000809355018AC1C13020E8D20708F451C091 +:100CD000F8018281882309F47EC05E01E894B7F8A8 +:100CE00080915401813079F050F08230C1F482EE6D +:100CF0000E94291287E50E94291287E50EC082EE24 +:100D00000E9429120CC080EE0E94291281EE0E94DE +:100D1000291288E10E94291288E10E94F1128CE0D8 +:100D2000E82EF12CC5010E2C02C0969587950A94E9 +:100D3000E2F78F700E94FD05D82E0E9429128D2D9A +:100D40000E94F112F4E0EF1AF1082CEFE2162FEFF7 +:100D5000F20641F780915401813029F010F0823081 +:100D600041F482EE04C080EE0E94F11281EE0E94F6 +:100D7000F112C43180E7D80768F4C23090E7D90790 +:100D800008F046C0C115E0E7DE0771F0C130D0477A +:100D9000A1F10CC1C33320E7D20709F4D8C0C43392 +:100DA000D04709F4EBC002C1F8018281882309F41D +:100DB00002C10E94A615FFEF24E38CE0F150204011 +:100DC0008040E1F700C000000E94181D06C1C1303C +:100DD00080E8D80770F2C43120E7D20708F0B3C02A +:100DE000C23080E7D807A0F4C11590E7D90709F40D +:100DF000E2C0C130D04709F0D9C0F8018281882310 +:100E000009F4D9C08091DB0181608093DB01E5C0EA +:100E1000F8018281882309F4CEC00E94721D8111DD +:100E200002C00E94581D0E94851D90E09093EF0122 +:100E30008093EE01C230F0E7DF0721F48091EE01EC +:100E400081607AC0C33020E7D20721F48091EE019F +:100E5000826072C0C43080E7D80721F48091EE012F +:100E600084606AC0C53090E7D90719F48091EE011B +:100E700027C0C630E0E7DE0721F48091EE018061F3 +:100E80005BC0C730F0E7DF0721F48091EE0180629C +:100E900053C0C83020E7D20721F48091EE0180646E +:100EA0004BC0C93080E7D80721F48091EE018068FB +:100EB00043C0CA3090E7D90729F48091EE018460DD +:100EC00088603AC0CB30E0E7DE0721F48091EE0184 +:100ED0008E7F32C0CC30F0E7DF0721F48091EE0145 +:100EE0008D7F2AC0CD3020E7D20721F48091EE011A +:100EF0008B7F22C0CE3080E7D80719F48091EE01B5 +:100F00001AC08091EE01CF3090E7D90711F48F7E9F +:100F100013C0C031E0E7DE0711F48F7D0DC0C13191 +:100F2000F0E7DF0711F48F7B07C0C231D04711F41F +:100F30008F7702C08B7F877F8093EE018091EE01D7 +:100F40000E94891D4AC0C333F0E7DF07A1F4F8010E +:100F50008281882321F01092520182E016C0809194 +:100F60005201811106C086E20E94291286E20E9487 +:100F7000F11282E018C0C433D047C1F4F801828175 +:100F8000882331F01092530180E20E94401325C063 +:100F900080915301811106C087E20E94291287E2E5 +:100FA0000E94F11280E20E94471317C081E08093F3 +:100FB000520180935301C801DF91CF911F910F918E +:100FC000FF90EF90DF90BF90AF900C94F605C1308A +:100FD000F0E8DF0708F081CECCCE80E0DF91CF9142 +:100FE0001F910F91FF90EF90DF90BF90AF90089509 +:100FF00026E0729FF001112444E5849FE00DF11D6D +:101000001124E60FF11DEE0FFF1FE65FFE4F8591E5 +:1010100094910E948C09811560E49607B0F58115C2 +:1010200070E3970708F0DEC0803E9105D8F4803C5D +:10103000910508F06CC0883A910578F4853A9105DD +:1010400008F06BC08130910509F452C108F40FC15A +:101050008430910508F04CC10AC18B3B910508F41E +:1010600067C005C18F3F910509F048F4803F9105A5 +:1010700008F0ADC0883E910508F43AC1F8C081156A +:1010800020E2920708F0A5C00895811543E5940772 +:1010900090F4811562E5960708F0C8C0811571E5E6 +:1010A000970708F0BEC0811520E5920708F09DC0A3 +:1010B0009F70906A0895811545E59407D8F48115CD +:1010C00064E5960708F0C8C0482F4695469570E23B +:1010D000479FA00111248370992721E030E0B901D6 +:1010E00002C0660F771F8A95E2F7CB01842B952B00 +:1010F0009A680895811576E5970708F4B2C09C01B7 +:1011000030562115304108F0B2C09F70AEC0FC01CE +:10111000EE0FFF1FE657F04062C0853A910509F4D3 +:10112000A9C0863A910509F0A8C082E890E4089524 +:10113000883A910509F4A4C0893A910509F4A3C03D +:101140008A3A910509F4A2C08B3A910509F4A1C02D +:101150008C3A910509F4A0C08D3A910509F49FC01D +:10116000803B910509F49EC08E3A910509F49DC01B +:101170008F3A910509F49CC0813B910509F49BC00D +:10118000823B910509F49AC0833B910509F499C00B +:10119000843B910509F498C0853B910509F497C0FB +:1011A000863B910509F496C0873B910509F495C0EB +:1011B000883B910509F494C0893B910509F493C0DB +:1011C0008A3B910509F492C080E094E4089590650B +:1011D0000895FC01FF70EE0FFF1FE65FFE4F859143 +:1011E000949108959927906C0895482F437021E0B9 +:1011F00030E002C0220F331F4A95E2F73C68AC0191 +:1012000064E0569547956A95E1F74370342B8F70EB +:101210008695869560E2869FC0011124822B932BD0 +:101220000895982F8827816F906A0895482F4695D2 +:10123000469570E2479FA00111248370992721E011 +:1012400030E0B90102C0660F771F8A95E2F7CB0143 +:10125000842B952B9C680895982F8827846F906A1B +:1012600008958F719927982F88279062089580E0BC +:1012700090E0089581E890E4089583E890E408956B +:1012800082EE94E4089589EE94E408958AEE94E45D +:10129000089585EB94E4089586EB94E4089587EB34 +:1012A00094E408958CEC94E408958DEC94E408950E +:1012B00083E895E408958AE895E4089582E995E441 +:1012C000089584E995E4089581E296E4089583E21F +:1012D00096E4089584E296E4089585E296E40895FC +:1012E00086E296E4089587E296E408958AE296E419 +:1012F0000895089596E0799FF001112494E5899F5F +:10130000E00DF11D1124E60FF11DEE0FFF1FE65F4A +:10131000FE4F8591949108958238910549F1B0F47A +:101320008133910509F458C048F48932910509F4D4 +:101330004EC08A32910509F454C008958533910551 +:1013400009F440C08933910599F00895833E9105D1 +:1013500029F138F4803E910591F0823E9105A1F08B +:101360000895863E9105F9F0873E910531F1089583 +:101370002091EE0120FD3AC021FD38C008958091F2 +:10138000EE0180FD35C032C08091EE0182FF32C097 +:101390008091EE0184FD30C083EE39C08091EE0172 +:1013A00082FD28C0F5CF8091EE0183FF27C0809198 +:1013B000EE0184FD21C087EE2AC08091EE0183FDFD +:1013C0001DC0F5CF8091EE0185FD1AC01BC0809134 +:1013D000EE0185FD17C014C08091EE0186FD14C09A +:1013E00015C08091EE0186FD11C00EC080EE0FC0C9 +:1013F00089E30DC082EE0BC080E009C086EE07C015 +:1014000089E205C085E303C08AE201C081E390E080 +:10141000089508950C94090A80916F010895CF935F +:10142000DF9300D01F92CDB7DEB79C018091F4010D +:10143000843019F593E099833B832A839093E900E4 +:101440008FEF9091E800815095FD06C095ED9A953B +:10145000F1F700008111F5CF8091E80085FF0DC004 +:1014600040E050E063E070E0CE0101960E94750C10 +:101470008091E8008E778093E8000F900F900F9096 +:10148000DF91CF910895CF93DF9300D01F92CDB716 +:10149000DEB72091F401243021F522E029839B83DB +:1014A0008A8383E08093E9008FEF9091E800815078 +:1014B00095FD06C095ED9A95F1F700008111F5CFE5 +:1014C0008091E80085FF0DC040E050E063E070E0EF +:1014D000CE0101960E94750C8091E8008E77809372 +:1014E000E8000F900F900F90DF91CF910895209119 +:1014F000F4012430F1F422E02093E9002FEF309141 +:10150000E800215035FD06C035ED3A95F1F70000B1 +:101510002111F5CF2091E80025FF0BC040E050E0FD +:1015200065E070E00E94750C8091E8008E778093F2 +:10153000E8000895CF93DF93EC019091F40194308B +:1015400009F046C080910C018823D9F080910D01EB +:101550008823B9F09093E9008FEF9091E8008150D3 +:1015600095FD06C095E19A95F1F700008111F5CF40 +:101570008091E80085FF2CC040E050E060E170E021 +:1015800017C081E08093E9008FEF9091E8008150CF +:1015900095FD06C095ED9A95F1F700008111F5CF04 +:1015A0008091E80085FF14C040E050E068E070E002 +:1015B000CE010E94750C8091E8008E778093E80040 +:1015C00080E1FE01AFE5B1E001900D928A95E1F76F +:1015D000DF91CF9108958091F301811109C00E949C +:1015E0000A0E0E94670E8091E20084608093E20000 +:1015F00008951092F301089508950C94FE210E941D +:10160000AE1C0E9404220E940D110C940A0A42E0B2 +:1016100061EC81E00E94840D42E061EC82E00E9476 +:10162000840D42E061EC83E00E94840D42E161ECB4 +:1016300084E00C94840D8091F601833009F455C048 +:1016400030F4813071F0823009F48EC008958A3010 +:1016500009F47AC08B3009F460C0893009F09CC06D +:1016600020C08091F501813A09F096C08091E80090 +:10167000877F8093E8008091F9019091FA01892B8E +:1016800021F460E18FE591E003C060E080E090E04C +:1016900070E00E94C00C8091E8008B778093E80096 +:1016A00008958091F501813209F076C08091F901A9 +:1016B0009091FA01009719F0039709F06DC080919D +:1016C000E800877F8093E8008091E80082FD05C0F4 +:1016D0008091F4018111F8CF5FC08091F100809377 +:1016E0006F018091E8008B7753C08091F501813ABA +:1016F00009F052C08091F9019091FA01892B09F00B +:101700004BC08091E800877F8093E8008091E800DB +:1017100080FFFCCF80910C0136C08091F5018132B1 +:10172000D9F58091F9019091FA01892BA9F5809161 +:10173000E800877F8093E8000E94B90D8091F7014F +:1017400080930C010C94A6158091F501813221F54E +:101750008091E800877F8093E8000E94B90D809116 +:10176000F8018093700108958091F501813AA1F408 +:101770008091E800877F8093E8008091E80080FFF7 +:10178000FCCF809170018093F1008091E8008E770A +:101790008093E8000C94B90D089584B7877F84BFC7 +:1017A00088E10FB6F89480936000109260000FBE3D +:1017B00080E880936100109261000E945C110E9499 +:1017C0000A0E0E94670E8091E20084608093E2001E +:1017D00078940E94ED100E945E1182E091E00E94D8 +:1017E00008110E94EC218091F401853069F40E9477 +:1017F000761C8091F2018823B1F30E94A01C8823FB +:1018000091F30E945F0CEFCF0E946411ECCF292F5F +:10181000332723303105C9F064F42130310581F0DC +:101820002230310509F043C08DE690E026E834E02F +:1018300042C021323105F1F02232310541F137C089 +:1018400082E190E023EF34E036C0992781309105A2 +:1018500041F08230910541F0892B49F5E2E8F4E04E +:1018600005C0EAE6F4E002C0E2E5F4E0849190E02D +:101870009F0121C06430D8F4E62FF0E0EE0FFF1F87 +:10188000EE5DFE4F2081318189E090E014C064302C +:1018900070F470E0FB01EE0FFF1FE65EFE4F20814B +:1018A0003181FB01EA5EFE4F808190E004C080E060 +:1018B00090E020E030E0FA0131832083089580E158 +:1018C00089BD82E189BD09B400FEFDCF8091D800B9 +:1018D0008F7D8093D8008091E00082608093E0004B +:1018E0008091E00081FDFCCF0895CF92DF92EF92CE +:1018F000FF920F931F93CF93DF93EC018B016A014B +:101900000E94D80D811133C0C114D10439F0F60101 +:1019100080819181081B190BC80FD91FE12CF12C74 +:101920000115110519F18091E80085FD16C080911F +:10193000E8008E778093E800C114D10449F0F601E5 +:1019400080819181E80EF91EF182E08285E00FC06E +:101950000E94D80D882321F30AC089918093F10059 +:1019600001501109FFEFEF1AFF0ADACF80E0DF9193 +:10197000CF911F910F91FF90EF90DF90CF9008953E +:101980002091FB013091FC012617370748F06115C3 +:10199000710539F42091E8002E772093E80001C00A +:1019A000B90140E061157105A9F12091F4012223EC +:1019B00009F443C0253009F442C02091E80023FD1A +:1019C00040C02091E80022FD32C02091E80020FFB5 +:1019D000E9CF4091F3002091F20030E0342BFC017C +:1019E000CF016115710559F02830310540F481911E +:1019F0008093F100615071092F5F3F4FF1CF41E0BB +:101A00002830310509F040E02091E8002E7720933E +:101A1000E800C8CF4111C9CF0AC08091F4018823E2 +:101A200061F0853061F08091E80083FD0AC080910B +:101A3000E80082FFF2CF80E0089582E0089583E01D +:101A4000089581E008952091FB013091FC01261753 +:101A5000370748F06115710539F42091E8002E77B9 +:101A60002093E80001C0B901FC0120E06115710577 +:101A700091F18091F401882309F440C0853009F484 +:101A80003FC08091E80083FD3DC08091E80082FD69 +:101A90002FC08091E80080FFE9CF2091F300809172 +:101AA000F20090E0922B6115710559F08830910594 +:101AB00040F424912093F100319661507109019610 +:101AC000F2CF21E0089709F020E08091E8008E77BE +:101AD0008093E800CBCF2111CCCF0AC08091F401D4 +:101AE000882361F0853061F08091E80083FD0AC0B1 +:101AF0008091E80082FFF2CF80E0089582E00895AF +:101B000083E0089581E00895982F973058F59093D9 +:101B1000E900981739F07091EC002091ED00509198 +:101B2000F00003C0242F762F50E021FF19C0309120 +:101B3000EB003E7F3093EB003091ED003D7F309322 +:101B4000ED003091EB0031603093EB007093EC00CE +:101B50002093ED005093F0002091EE0027FF07C086 +:101B60009F5FD3CF8F708093E90081E0089580E07C +:101B700008958091F50187FF11C08091E80082FDF2 +:101B800005C08091F4018111F8CF11C08091E80067 +:101B90008B770BC08091F401882349F08091E80095 +:101BA00080FFF8CF8091E8008E778093E800089559 +:101BB0002091E4003091E50095E64091EC00842FFF +:101BC000817040FF22C08091E80080FD1CC08091A0 +:101BD000F401882391F0853091F08091EB0085FD30 +:101BE00010C04091E4005091E5004217530729F3DB +:101BF0009A01915011F784E0089582E0089583E0FE +:101C0000089581E0089580E008954091E80042FF42 +:101C1000DECF08950E94780E0E94800EE0EEF0E084 +:101C2000808181608083E8EDF0E080818F77808320 +:101C300019BCA7EDB0E08C918E7F8C9380818F7E54 +:101C400080831092F30108950F931F93CF93DF9336 +:101C50000E94780E0E94800EC8EDD0E088818F77B8 +:101C6000888388818068888388818F7D888319BC78 +:101C70001092F4011092F0011092F2011092F10111 +:101C800000EE10E0F80180818B7F80838881816085 +:101C9000888342E060E080E00E94840DE1EEF0E0A5 +:101CA00080818E7F8083E2EEF0E08081816080839E +:101CB000808188608083F80180818E7F8083888125 +:101CC00080618883DF91CF911F910F910895E8ED96 +:101CD000F0E080818F7E8083E7EDF0E0808181609D +:101CE000808384E082BF81E08093F3010C94240E12 +:101CF000E8EDF0E080818E7F80831092E20008950D +:101D00001092DA001092E10008951F920F920FB620 +:101D10000F9211242F933F934F935F936F937F9371 +:101D20008F939F93AF93BF93EF93FF938091E100C5 +:101D300082FF0BC08091E20082FF07C08091E1002A +:101D40008B7F8093E1000E94EC108091DA0080FF8D +:101D50001FC08091D80080FF1BC08091DA008E7F69 +:101D60008093DA008091D90080FF0DC080E189BDA9 +:101D700082E189BD09B400FEFDCF81E08093F401CA +:101D80000E94EB0A05C019BC1092F4010E94F90AE6 +:101D90008091E10080FF19C08091E20080FF15C0B2 +:101DA0008091E2008E7F8093E2008091E20080616A +:101DB0008093E2008091D80080628093D80019BCA3 +:101DC00085E08093F4010E94FD0A8091E10084FF88 +:101DD00030C08091E20084FF2CC080E189BD82E1A7 +:101DE00089BD09B400FEFDCF8091D8008F7D80931E +:101DF000D8008091E1008F7E8093E1008091E20025 +:101E00008F7E8093E2008091E20081608093E20007 +:101E10008091F001882311F084E007C08091E300F5 +:101E200087FD02C081E001C083E08093F4010E943D +:101E3000FF0A8091E10083FF29C08091E20083FFC7 +:101E400025C08091E100877F8093E10082E080934C +:101E5000F4011092F0018091E1008E7F8093E10007 +:101E60008091E2008E7F8093E2008091E2008061A9 +:101E70008093E20042E060E080E00E94840D809167 +:101E8000F00088608093F0000E94FC0AFF91EF91BF +:101E9000BF91AF919F918F917F916F915F914F9182 +:101EA0003F912F910F900FBE0F901F9018951F928A +:101EB0000F920FB60F9211242F933F934F935F937E +:101EC0006F937F938F939F93AF93BF93CF93DF9342 +:101ED000EF93FF93C091E900CF708091EC00D82F71 +:101EE000D17080FDD0E81092E9008091F000877FEA +:101EF0008093F00078940E949B0F1092E9008091EB +:101F0000F00088608093F000CD2BCF70C093E90083 +:101F1000FF91EF91DF91CF91BF91AF919F918F9101 +:101F20007F916F915F914F913F912F910F900FBED5 +:101F30000F901F9018951F93CF93DF93CDB7DEB707 +:101F4000AA970FB6F894DEBF0FBECDBFE5EFF1E064 +:101F500088E08E0F9091F10091938E13FBCF0E9439 +:101F60001B0B8091E80083FF1FC18091F5019091C8 +:101F7000F601492F50E04A30510508F015C1FA0129 +:101F8000EA5AFF4F0C948623803881F0823809F09A +:101F90000BC18091F9018F708093E9008091EB0073 +:101FA00085FB882780F91092E90006C08091F10135 +:101FB0009091F201911182609091E800977F909347 +:101FC000E8008093F1001092F100C8C0282F2D7F07 +:101FD00009F0EAC0882319F0823061F0E5C08091F1 +:101FE000F701813009F0E0C0933009F080E0809380 +:101FF000F2012BC08091F701811127C08091F90176 +:102000008F7009F4D1C08093E9002091EB0020FF8C +:102010001CC0933021F48091EB00806214C0909139 +:10202000EB0090619093EB0021E030E0A90102C049 +:10203000440F551F8A95E2F74093EA001092EA0098 +:102040008091EB0088608093EB001092E900809112 +:10205000E800877F86C08111A7C01091F7011F7724 +:102060008091E3008078812B8093E3008091E800E9 +:10207000877F8093E8000E94B90D8091E80080FF7F +:10208000FCCF8091E30080688093E300111102C0CF +:1020900082E001C083E08093F40186C080588230E2 +:1020A00008F082C08091F7019091F8018C3D53E0D7 +:1020B000950779F583E08A838AE289834FB7F8949C +:1020C000DE01139620E03EE051E2E32FF0E0509372 +:1020D0005700E49120FF03C0E295EF703F5FEF707F +:1020E0008E2F90E0EA3010F0C79601C0C0968D9315 +:1020F0009D932F5F243149F74FBF8091E800877F80 +:102100008093E8006AE270E0CE0101960E94C00C64 +:1021100014C0AE014F5F5F4F6091F9010E94070C40 +:10212000BC01009709F440C09091E800977F90931C +:10213000E80089819A810E94230D8091E8008B77C5 +:102140008093E80031C0803879F58091E800877F7E +:102150008093E8008091F0018093F1008091E80085 +:102160008E778093E8000E94B90D1EC081111CC0BB +:102170009091F7019230C0F48091E800877F8093BE +:10218000E8009093F0010E94B90D8091F001811157 +:1021900006C08091E30087FD02C081E001C084E0B9 +:1021A0008093F4010E94070B8091E80083FF0AC02E +:1021B0008091E800877F8093E8008091EB00806247 +:1021C0008093EB00AA960FB6F894DEBF0FBECDBF8A +:1021D000DF91CF911F9108950895CF938091F401DD +:1021E0008823A1F0C091E900CF709091EC00892F75 +:1021F000817090FD80E8C82B1092E9008091E80082 +:1022000083FD0E949B0FCF70C093E900CF9108958A +:1022100090937601809375010895E0917501F09196 +:102220007601309721F00190F081E02D099480E053 +:102230000895E0917501F0917601309721F00280C8 +:10224000F381E02D09940895E0917501F0917601F4 +:10225000309721F00480F581E02D099408952091B4 +:102260007301309174018217930771F09093740198 +:1022700080937301E0917501F0917601309721F020 +:102280000680F781E02D0994089520917101309125 +:1022900072018217930771F090937201809371011C +:1022A000E0917501F0917601309721F00084F1857D +:1022B000E02D0994089508950C945B110E94B41CBC +:1022C0000E94E1030C943A1D9F92AF92BF92CF926D +:1022D000DF92EF92FF920F931F93CF93DF9300D083 +:1022E00000D000D0CDB7DEB70E9408040DE010E0AA +:1022F000AA24A394B12C902E802F0E94F60498015A +:1023000028583E4F6901F901F080F826A1F40150E8 +:10231000110988F78FEF89838A831B820E94BD1C75 +:102320008160782F9D838C8349815A816B818D8157 +:102330000E94FB112FC09091DB0191FF04C08E839E +:102340000E94FC048E8125E030E0A501022E01C030 +:10235000440F0A94EAF7E42E4F21C1F029839A82B0 +:102360008E2191E009F490E09B830E94BD1C816066 +:10237000782F9D838C8349815A816B818D810E9446 +:10238000FB11F6018081E826E08204C0215031096A +:10239000E0F6BDCF0E94081F109177010E940D1139 +:1023A0001817B9F00E940D118093770126960FB689 +:1023B000F894DEBF0FBECDBFDF91CF911F910F917B +:1023C000FF90EF90DF90CF90BF90AF909F900C94D4 +:1023D0000A0A26960FB6F894DEBF0FBECDBFDF9176 +:1023E000CF911F910F91FF90EF90DF90CF90BF9012 +:1023F000AF909F900895CF93DF93CDB7DEB72B9723 +:102400000FB6F894DEBF0FBECDBF4F8358876987E4 +:102410007A878B87DE01119686E0FD0111928A95FD +:10242000E9F785E0FE01379601900D928A95E1F774 +:1024300049815A816B817C818D819E810E944418E3 +:102440002B960FB6F894DEBF0FBECDBFDF91CF91B4 +:102450000895CF93882309F4C2C0C82F823859F455 +:102460000E940D1181FDBBC089E30E941E1B0E94CA +:10247000EB1B89E30CC0833879F40E940D1180FDB9 +:10248000AEC083E50E941E1B0E94EB1B83E50E94E9 +:10249000601BCF910C94EB1B843859F40E940D11F2 +:1024A00082FD9DC087E40E941E1B0E94EB1B87E4F7 +:1024B000EECF8CEF8C0F813A48F48C2F0E94522182 +:1024C00081118DC08C2F0E941E1BE3CF80E28C0FE8 +:1024D000883048F4C77081E001C0880FCA95EAF7D8 +:1024E0000E94A41BD6CF8BE58C0F833078F4C53ABD +:1024F00029F0C63A31F083E890E005C081E890E029 +:1025000002C082E890E0CF910C942F1188E58C0FE7 +:10251000833108F064C0C83A39F1C93A41F1CA3A86 +:1025200049F1CB3A51F1CC3A59F1CD3A61F1C03B86 +:1025300069F1CE3A71F1CF3A79F1C13B81F1C23BF9 +:1025400089F1C33B91F1C43B99F1C53BA1F1C63B75 +:10255000A9F1C73BB1F1C83BB9F1C93BC1F1CA3BD5 +:10256000C9F180E090E038C082EE90E035C089EE9D +:1025700090E032C08AEE90E02FC085EB90E02CC056 +:1025800086EB90E029C087EB90E026C08CEC90E0D1 +:1025900023C08DEC90E020C083E891E01DC08AE864 +:1025A00091E01AC082E991E017C084E991E014C07B +:1025B00081E292E011C083E292E00EC084E292E0F8 +:1025C0000BC085E292E008C086E292E005C087E297 +:1025D00092E002C08AE292E0CF910C944511CF9133 +:1025E0000895882309F44BC0823859F40E940D11D4 +:1025F00081FF45C089E30E941E1B0E94EB1B89E3FB +:102600000CC0833871F40E940D1180FF38C083E53F +:102610000E941E1B0E94EB1B83E50E94601B0C9412 +:10262000EB1B843859F40E940D1182FF28C087E407 +:102630000E941E1B0E94EB1B87E4EFCF9CEF980FBC +:10264000913A58F390E2980F983050F4877091E0E7 +:1026500001C0990F8A95EAF7892F0E94AA1BDFCF44 +:102660009BE5980F933020F480E090E00C942F11BC +:10267000885A833120F480E090E00C94451108954D +:10268000882321F00E94A41B0C94EB1B089588233F +:1026900021F00E94AA1B0C94EB1B08957F928F924D +:1026A0009F92AF92BF92CF92DF92EF92FF920F93E1 +:1026B0001F93CF93DF931F92CDB7DEB77C01C62E59 +:1026C000772EFC01058102950F70128111110E9475 +:1026D000C11B0E94171B882379F0112369F080E247 +:1026E0008C0D883048F082E00E94001B0E94171B6E +:1026F00091E0D82ED92601C0D12CE72DE295EF70BC +:10270000F0E0E05AFF4F0C948623872D807F072D41 +:102710000F70882311F00295007F112389F00023A8 +:1027200009F490C180E28C0D883020F4802F0E9443 +:10273000A41B03C0802F0E94B41B0E94EB1B82C10C +:102740008C2D0E94F112002309F495C180E28C0DBA +:10275000883020F4802F0E94AA1B03C0802F0E9483 +:10276000BA1B0E94EB1B87C1972D907F872D8F701E +:10277000903211F08295807FCC2021F0F1E0CF16CD +:10278000B1F01EC0112349F0002309F414C1013037 +:1027900009F011C10E94D41B6EC1002319F0013051 +:1027A00009F469C189830E94D71B89810AC1112359 +:1027B00021F0023008F05FC1FEC001115CC101C10F +:1027C000112321F0002309F4F6C03CC1002309F4D1 +:1027D000F8C03EC1872D86958695837090E000975E +:1027E00019F0019761F047C1112321F08C2D972D2D +:1027F000937002C080E090E00E942F113CC1112331 +:1028000021F08C2D972D937002C080E090E00E9403 +:10281000451131C18C2D112319F00E94101E02C0E8 +:102820000E94781E0E94FD1E26C1872D837009F02C +:1028300052C0111120C18C2D829586958770880F0A +:10284000880F9C2D9F70892E912CA12CB12C082EC5 +:1028500004C0880C991CAA1CBB1C0A94D2F7C4FEA5 +:1028600014C00FE010E020E030E0B901A80104C07E +:10287000440F551F661F771F8A95D2F7CB01BA0107 +:10288000609570958095909503C060E070E0CB01F5 +:10289000272D26952695237030E02230310569F0EA +:1028A0002330310589F0682979298A299B2921302B +:1028B000310571F00E948C19DEC0682979298A29B6 +:1028C0009B290E94A819D7C00E948C19C501B40188 +:1028D0000E947019D0C0112319F0872D817001C09A +:1028E0008695882309F4C7C08C2D829586958770BC +:1028F000880F880F9C2D9F70892E912CA12CB12CB4 +:10290000082E04C0880C991CAA1CBB1C0A94D2F780 +:10291000C4FE14C00FE010E020E030E0B901A801CF +:1029200004C0440F551F661F771F8A95D2F7CB014D +:10293000BA01609570958095909503C060E070E055 +:10294000CB01272D269526952370422F50E042304B +:10295000510569F04330510589F0682979298A29A0 +:102960009B294130510571F00E94661A84C0682984 +:1029700079298A299B290E94821A7DC00E94661AA1 +:10298000C501B4010E944A1A76C08C2D90E0FC016A +:10299000E05EF109E531F10508F050C0E059FF4F64 +:1029A0000C9486230C2D0F70872D8F71112331F01D +:1029B0000E94E319802F0E9440135DC00E94041AF8 +:1029C000802F0E94471357C0112339F0011153C0C3 +:1029D000872D8F710E94291A4EC0023008F04BC01B +:1029E000F7CF112339F0872D8F710E94E31943C06F +:1029F0001123C9F3872D8F710E94041A3CC0112343 +:102A000029F0872D8F710E94CE1935C00E94C419FC +:102A100032C0112351F0172D1F71812F0E94E3192D +:102A200063E0812F0E94F71A26C081E00E94001BFC +:102A3000023008F182E00E94001B1DC0112331F01A +:102A4000002389F28C2D0E94291215C0002391F2D7 +:102A50008C2D0E94F1120FC0472D4F706C2DC701B5 +:102A60000E94D2050E94E81806C0472D4F706C2DB9 +:102A7000C7010E947909DD20F9F00E94F31A80FD58 +:102A80001BC0F70112820E94ED1A0E94E319C701D0 +:102A90000E946B150E94ED1A0F90DF91CF911F914C +:102AA0000F91FF90EF90DF90CF90BF90AF909F90ED +:102AB0008F907F900C94041A0F90DF91CF911F910B +:102AC0000F91FF90EF90DF90CF90BF90AF909F90CD +:102AD0008F907F9008950F931F93CF93DF93EC0116 +:102AE000888199812B813C81232BB9F09F3F11F480 +:102AF0008F3F99F0CE010E940A06882371F0688109 +:102B000079818A810E94E91A8C010E949E1A0E9492 +:102B10006519B801CE010E944E13DF91CF911F912C +:102B20000F9108950E94C11B0E94D11B0E94961B09 +:102B30000E94EB1B0E94AE1F0E94FD1E80E090E0F1 +:102B40000E942F1180E090E00C9445110E94B11B6F +:102B50000C9492150E94DE1A292F22952F7030E0D6 +:102B60002C3031054CF42A3031056CF422503109F7 +:102B700022303105A8F407C02C30310569F02F3020 +:102B8000310551F00DC0803F69F018F4803E40F4EB +:102B900009C0843F29F406C093FB882780F9089573 +:102BA00080E0089581E00895CF93DF9300D000D0B6 +:102BB0001F92CDB7DEB70F900F900F900F900F9030 +:102BC000DF91CF910895CF93DF9300D000D000D054 +:102BD000CDB7DEB726960FB6F894DEBF0FBECDBFD9 +:102BE000DF91CF9108951F93CF93DF93C09186011A +:102BF00016E080918701C81799F0D0E01C9FF00182 +:102C00001D9FF00D1124E857FE4F408151816281D4 +:102C10007381848195810E94E3152196C770E9CF65 +:102C2000DF91CF911F9108954091B8015091B90162 +:102C30006091BA017091BB018091BC019091BD017E +:102C40000C94E3158091BD0182958F7009F054C0FA +:102C50008091BA01882309F44FC080918601A09128 +:102C600087016091B8017091B9014091BB01509109 +:102C7000BC01B6E08A1709F43FC090E04115510548 +:102C8000C1F17F3F11F46F3FA1F1B89FF001B99FEF +:102C9000F00D1124E857FE4F218172132AC02081C4 +:102CA000621327C02281211124C02381348124177B +:102CB000350710F421503109241B350B283C310510 +:102CC000C0F42091BD012F7020612093BD0126E04A +:102CD000289FF001299FF00D1124E357FE4F8081BA +:102CE0008F708061808388EB91E00E946B150C945B +:102CF000F31501968770BECF0895CF92DF92EF92C1 +:102D0000FF920F931F93CF93DF93CDB7DEB76297F8 +:102D10000FB6F894DEBF0FBECDBF8C0185E0F80181 +:102D2000DE011D9601900D928A95E1F7D8014C9134 +:102D300011965C91119712966C9112971396CD9003 +:102D4000DC9014973091B8017091B9018091BB016A +:102D50009091BC01009709F46BC17F3F19F43F3F8C +:102D600009F466C1E090BA01EE2009F4C0C02091D8 +:102D7000BD01C816D90628F0F601E81BF90BCF01F2 +:102D800004C0809590958C0D9D1DFF24F394883C84 +:102D9000910578F0F12C207F09F0C6C07C2DD98AEE +:102DA000C88A89890E94D41588EB91E00E946B152E +:102DB000B1C0822F807F09F046C0751314C0341350 +:102DC00012C0611110C02F7020612093BD010E94BC +:102DD000141688EB91E00E946B158091BD01D8011B +:102DE00015968C932EC0CD2819F15F3F11F44F3FFB +:102DF000F9F0F62E61111CC08091860120918701A7 +:102E000036E0821709F45AC090E0389FF001399FEC +:102E1000F00D1124E857FE4F7181571306C07081E1 +:102E2000471303C07281711103C001968770E9CF07 +:102E3000F62E662309F418C18091BD01816080934C +:102E4000BD01F12C11C1751308C0341306C0611106 +:102E500004C08091BD01D801C3C04D875E878D85B8 +:102E60009E856A8B0E94AA156A898823E1F16623F0 +:102E7000D1F12091BD01822F82958F7090E0029751 +:102E800074F08091B8019091B90198878F83198669 +:102E9000DB86CA862C87CE0107960E946B1586E0DA +:102EA000F801A8EBB1E001900D928A95E1F70E943C +:102EB00022160E941416FF24F394D6C04D875E8715 +:102EC0008D859E850E94DE1A292F22952F7030E075 +:102ED000223031050CF0BCC09F7009F0B6C0805E96 +:102EE000883008F4C1C0C8010E946B15E4CFC81631 +:102EF000D90608F453C0F601E81BF90BCF01883C52 +:102F0000910508F450C0F12C7C2DD98AC88A898992 +:102F10000E94D415E8EBF1E086E0DF011D928A956E +:102F2000E9F70E941416A0C0751314C0341312C020 +:102F3000611110C08091BD01F8018583C8010E9414 +:102F40006B1586E0E8EBF1E0DF011D928A95E9F769 +:102F5000FE2C8AC04D875E878D859E856A8B0E9478 +:102F6000AA156A89882309F4BECF662309F4BBCF6A +:102F70002091BD01822F82958F7090E002970CF412 +:102F80008ECF8091B8019091B9019A8389831B8279 +:102F9000DD82CC822E83CE0101967FCF80959095E5 +:102FA0008C0D9D1DACCFF62E662309F49CCF7513B6 +:102FB0002EC034132CC02091BD0120FD1FC0822FD4 +:102FC00082958F70D9F0D80115962C9315978F3074 +:102FD00049F08F5F982F9295907F822F8F70892B69 +:102FE00015968C93C8010E946B1586E0F801A8EB3A +:102FF000B1E001900D928A95E1F793CF86E0F80158 +:10300000A8EBB1E001900D928A95E1F72DC04D87B4 +:103010005E878D859E850E94AA15811140CF809183 +:10302000BD0181608093BD01C8010E946B151CC069 +:10303000662309F458CF4D875E878D859E850E9453 +:10304000AA15882309F44FCF2ACF811148CF0CC08D +:10305000243031050CF047CF9F7009F440CFF801C0 +:103060009581907F09F03BCF8F2D62960FB6F89433 +:10307000DEBF0FBECDBFDF91CF911F910F91FF90AB +:10308000EF90DF90CF9008951F93CF93DF93CDB74C +:10309000DEB72C970FB6F894DEBF0FBECDBF4F83BF +:1030A000588769877A878B879C87CE0107960E940D +:1030B0007D16882369F08F8198852A853B85232B8F +:1030C000F1F19F3F09F063C08F3F09F060C037C046 +:1030D00086E0FE013796DE01119601900D928A95E9 +:1030E000E1F76F817885EA85FB85309741F17F3F75 +:1030F00011F46F3F21F12091870130E0C901019661 +:10310000877099274091860150E08417950709F44C +:1031100047C069837A83FD83EC8396E0929FD00158 +:10312000939FB00D1124A857BE4FFE013196019018 +:103130000D929A95E1F7809387010E94F31516E0AE +:1031400080918601909187018917C1F1189FC00174 +:10315000112488579E4F0E947D16882379F1E091B3 +:1031600086011E9FF0011124E857FE4F40815181D6 +:1031700062817381848195810E94E315809186012B +:1031800090E001968770992780938601D9CF4F816F +:10319000588569857A858B859C850E94E315CFCFFC +:1031A0000E94A6151092870110928601E8EBF1E0CB +:1031B00086E0DF011D928A95E9F7C1CF2C960FB604 +:1031C000F894DEBF0FBECDBFDF91CF911F91089560 +:1031D000EF92FF920F931F93CF93DF938C01009791 +:1031E00009F46CC0F12CEE24E394E8012196F80177 +:1031F0008491843740F4843008F051C0813081F0EC +:10320000823019F15BC0853709F444C0A8F19CE70E +:10321000980F903708F052C08F770E94F11241C08A +:103220000E5F1F4FFE01C49180E28C0F883048F47E +:10323000C7708E2D01C0880FCA95EAF70E94C41B83 +:1032400014C08C2F0E9429122DC00E5F1F4FFE014B +:10325000C49180E28C0F883058F4C7708E2D01C065 +:10326000880FCA95EAF70E94CA1B0E94EB1B1AC07E +:103270008C2F0E94F11216C00E5F1F4FFE01C491E9 +:10328000CC2381F08FE99FE00197F1F700C00000A7 +:10329000C150F6CF0E5F1F4FFE01F49003C00E9495 +:1032A00029128E018F2D882309F49FCFEFE9FFE0CB +:1032B0003197F1F700C000008150F5CFDF91CF9139 +:1032C0001F910F91FF90EF90089508956093C201B0 +:1032D0007093C3018093C4019093C5010C9492151F +:1032E0000F931F930091C2011091C3012091C4015B +:1032F0003091C501DC01CB01802B912BA22BB32B8C +:103300008093C2019093C301A093C401B093C501FF +:103310001F910F910C9492150F931F930091C2016E +:103320001091C3012091C4013091C501DC01CB0192 +:1033300080239123A223B3238093C2019093C301DE +:10334000A093C401B093C5011F910F910C949215E5 +:103350000F931F930091C2011091C3012091C401EA +:103360003091C501DC01CB0180279127A227B3272B +:103370008093C2019093C301A093C401B093C5018F +:103380001F910F910C9492151092BE011092BF01E3 +:103390001092C0011092C1010C94921541E050E0CE +:1033A00060E070E004C0440F551F661F771F8A95C8 +:1033B000D2F74093BE015093BF016093C001709358 +:1033C000C1010C94921541E050E060E070E004C04F +:1033D000440F551F661F771F8A95D2F78091BE0153 +:1033E0009091BF01A091C001B091C101482B592B10 +:1033F0006A2B7B2B4093BE015093BF016093C001A9 +:103400007093C1010C94921541E050E060E070E0CF +:1034100004C0440F551F661F771F8A95D2F7409549 +:103420005095609570958091BE019091BF01A091DB +:10343000C001B091C101482359236A237B234093E3 +:10344000BE015093BF016093C0017093C1010C9401 +:10345000921541E050E060E070E004C0440F551F59 +:10346000661F771F8A95D2F78091BE019091BF01A8 +:10347000A091C001B091C101482759276A277B2735 +:103480004093BE015093BF016093C0017093C1018E +:103490000C9492150F931F930091BE011091BF01E0 +:1034A0002091C0013091C101DC01CB01802B912B17 +:1034B000A22BB32B8093BE019093BF01A093C001B8 +:1034C000B093C1011F910F910C9492150F931F930C +:1034D0000091BE011091BF012091C0013091C10146 +:1034E000DC01CB0180239123A223B3238093BE016F +:1034F0009093BF01A093C001B093C1011F910F91A0 +:103500000C9492150F931F930091BE011091BF016F +:103510002091C0013091C101DC01CB0180279127AE +:10352000A227B3278093BE019093BF01A093C0014F +:10353000B093C1011F910F910C9492150895CF92F1 +:10354000DF92EF92FF920F931F93CF93DF938C0143 +:10355000C090C201D090C301E090C401F090C501B9 +:103560008091BE019091BF01A091C001B091C101B5 +:10357000C82AD92AEA2AFB2ACFE1D0E0D701C6011E +:103580000C2E04C0B695A795979587950A94D2F707 +:1035900080FF06C0B8018C2F0E94F807019721F424 +:1035A000219760F780E001C08C2FDF91CF911F91B0 +:1035B0000F91FF90EF90DF90CF900895CF93DF931E +:1035C000EC010E949F1ABE010E94F807DF91CF9183 +:1035D0000895CB010E94DE1A08958091C601859559 +:1035E0008595859508958091C6018770089598E026 +:1035F000899F90011124262B2093C6010C94E31976 +:103600002091C601809582238093C601982F9770E0 +:1036100069F430E0482F552747FD509524173507AA +:1036200029F08595859585950C94041A08959091B7 +:10363000C601977081E009F480E0089590910C0133 +:10364000992321F090910D01911109C020910E0153 +:1036500030910F01F90132969FEF40E01FC0982F83 +:103660009695969596959F3050F5E0910E01F091C4 +:103670000F01E90FF11D877021E030E0A90102C0C0 +:10368000440F551F8A95E2F7CA019181892B8183E6 +:1036900008959F3F39F04F5F4E3041F051915813DC +:1036A000F8CF0DC05111F7CF942FF5CF9F3F39F0D0 +:1036B000F901E90FF11D97FDFA95828308950895A8 +:1036C00090910C01992321F090910D01911109C065 +:1036D00020910E0130910F01F9013296205F3F4F8A +:1036E0001FC0982F9695969596959F30F0F4E0918F +:1036F0000E01F0910F01E90FF11D877021E030E01C +:10370000A90102C0440F551F8A95E2F7CA018095AE +:1037100091818923818308953196E217F30729F077 +:1037200090819813F9CF1082F7CF089581E090E04F +:10373000E0910E01F0910F01E80FF91F1082019640 +:1037400080319105A9F708959091DA01892B809332 +:10375000DA01089580959091DA0189238093DA0146 +:1037600008951092DA0108959091D901892B8093E0 +:10377000D901089580959091D90189238093D90129 +:1037800008951092D90108959091D801892B8093C2 +:10379000D801089580959091D80189238093D8010C +:1037A00008951092D80108958093C701089510924A +:1037B000C701089580910E0190910F01FC0131968F +:1037C0009C01205F3F4F80E0919191118F5FE21744 +:1037D000F307D1F70895E0910E01F0910F01809168 +:1037E000DA018083E0910E01F0910F0190818091C8 +:1037F000D901892B8083E0910E01F0910F01908116 +:103800008091D801892B80838091C701882361F042 +:10381000E0910E01F0910F019081892B80830E942D +:10382000DA1B81111092C70180910E0190910F0156 +:103830000C94191120E0009739F0AC014150510966 +:10384000842395232F5FF7CF822F0895CF92DF92A5 +:10385000EF92FF926C01EE24FF24C114D104E10425 +:10386000F10421F0C701B60120E101C020E0C72E1C +:10387000D82EE92EFF24C114D104E104F10419F07B +:10388000285FC701B6016B017C0154E0F694E79410 +:10389000D794C7945A95D1F7C114D104E104F10427 +:1038A00019F02C5FC701B6016B017C0142E0F69470 +:1038B000E794D794C7944A95D1F7C114D104E10491 +:1038C000F10419F02E5FC701B601DC01CB01B695FA +:1038D000A79597958795892B8A2B8B2B09F02F5FBE +:1038E000822FFF90EF90DF90CF9008958091F401A8 +:1038F000843021F11092DC0120E488E190E00FB6E1 +:10390000F894A895809360000FBE2093600080E03B +:103910000E940A0A83B7817F846083BF83B7816076 +:1039200083BF7894889583B78E7F83BF88E10FB675 +:10393000F89480936000109260000FBE089508957F +:103940000E94F5030E9408040E949F1C0E94FD042F +:1039500091E0811101C090E0892F08950E94A61581 +:103960000E940D110C940A0A82E084BD93E095BD7B +:103970009AEF97BD80936E0008952FB7F8948091C9 +:10398000DD019091DE01A091DF01B091E0012FBF38 +:103990000895CF92DF92EF92FF920F931F932FB76C +:1039A000F8944091DD015091DE016091DF0170914A +:1039B000E0012FBF6A017B01EE24FF248C0120E08F +:1039C00030E0C016D106E206F30610F4415051096A +:1039D0009A01281B390BC9011F910F91FF90EF909D +:1039E000DF90CF9008951F920F920FB60F9211247F +:1039F0008F939F93AF93BF938091DD019091DE01F0 +:103A0000A091DF01B091E0010196A11DB11D80934D +:103A1000DD019093DE01A093DF01B093E001BF913F +:103A2000AF919F918F910F900FBE0F901F9018959F +:103A30000E940A0EF8942FEF87EA91E62150804009 +:103A40009040E1F700C0000087E090EBDC0180933C +:103A5000FD019093FE01A093FF01B09300029CE052 +:103A600088E10FB6F894A895809360000FBE9093FC +:103A70006000FFCF0E94721D811102C00E94581D7C +:103A80000E947D1D8093DB010E94851D90E0909334 +:103A9000EF018093EE0187FB882780F980930D0169 +:103AA0000E94811D682F70E080E090E00C94661900 +:103AB0006DEE7EEF80E090E00E94C02360E082E047 +:103AC00090E00E94AE2360E083E090E00E94AE238D +:103AD00060E084E090E00E94AE2360E085E090E04A +:103AE0000C94AE2380E090E00E94A82321E08D3E5C +:103AF0009E4F09F020E0822F089582E090E00C9420 +:103B0000A02383E090E00C94A02384E090E00C9448 +:103B1000A023682F84E090E00C94AE238091E30111 +:103B200080FF0BC06091130185E0689FB0011124F4 +:103B300075956795759567952BC081FF09C0609154 +:103B4000130185E0689FB00111247595679520C029 +:103B500082FF07C06091130185E0689FB0011124C6 +:103B600017C09091E4019923D1F06091120196174A +:103B700088F72091130185E0289F90011124929FDE +:103B8000A001939F500D112470E0CA010E9472237E +:103B90006038710540F46115710539F002C065E0C7 +:103BA00070E0862F08958FE7089581E00895809151 +:103BB000E30180FF08C06091110170E07595679581 +:103BC0007595679521C081FF06C06091110170E075 +:103BD0007595679519C082FF04C06091110170E06E +:103BE00010C09091E4019923C1F0609110019617E3 +:103BF000A0F780911101899FC001112470E00E94FB +:103C000072236038710528F46115710521F0862F43 +:103C100008958FE7089581E0089561E070E0F4CFA2 +:103C2000803F21F40E948E1D819504C0813F29F4BC +:103C30000E948E1D8093E7010895823F21F40E9427 +:103C40008E1D819504C0833F29F40E948E1D8093B0 +:103C5000E6010895893F19F40E94D71D05C08A3FE7 +:103C600031F40E94D71D81958093E80108958B3F20 +:103C700021F40E94D71D819504C08C3F29F40E9435 +:103C8000D71D8093E9010895843F21F48091E501D7 +:103C9000816017C0853F21F48091E501826011C0E9 +:103CA000863F21F48091E50184600BC0873F21F4B9 +:103CB0008091E501886005C0883F31F48091E5017D +:103CC00080618093E50108958D3F21F48091E301A7 +:103CD00081600BC08E3F21F48091E301826005C0BA +:103CE0008F3F29F48091E30184608093E30108957C +:103CF000803F39F48091E70187FF6CC01092E701A3 +:103D000069C0813F29F48091E7011816BCF362C0B5 +:103D10009091E601823F29F497FF5CC01092E60182 +:103D200059C0833F19F41916CCF354C0893F41F4AC +:103D30008091E80118160CF04DC01092E8014AC0BD +:103D40008A3F29F48091E80187FF44C0F6CF8B3F7A +:103D500039F48091E90187FF3DC01092E9013AC032 +:103D60008C3F29F48091E9011816BCF333C0843FDD +:103D700021F48091E5018E7F17C0853F21F4809169 +:103D8000E5018D7F11C0863F21F48091E5018B7F95 +:103D90000BC0873F21F48091E501877F05C0883FF4 +:103DA00031F48091E5018F7E8093E50113C08D3F52 +:103DB00021F48091E3018E7F0BC08E3F21F480912E +:103DC000E3018D7F05C08F3F29F48091E3018B7F54 +:103DD0008093E3018091E60181110EC08091E7019B +:103DE00081110AC08091E801811106C08091E9012A +:103DF000811102C01092E401089585EE91E00E94C5 +:103E000024110E94BD1C9093E2018093E10108956A +:103E10001F93CF93DF938091E1019091E2010E9483 +:103E2000C91CAC019091E401992321F02091140167 +:103E300030E006C0209115018AE0289F90011124EE +:103E40004217530708F486C08091E601C091E7014C +:103E5000D091E8011091E901811107C0C11176C02C +:103E6000D11174C0111172C075C09F3F19F09F5FCE +:103E70009093E401181624F40E948E1D8093E601AD +:103E80008091E60187FF05C00E948E1D8195809379 +:103E9000E6011C1624F40E948E1D8093E701809198 +:103EA000E70187FF05C00E948E1D81958093E70181 +:103EB0006091E601662339F1C091E701CC2319F145 +:103EC000772767FD7095872F972F0E94832223E322 +:103ED00033E343E35FE30E94E7220E9450226093B2 +:103EE000E6016C2F772767FD7095872F972F0E942B +:103EF000832223E333E343E35FE30E94E7220E944C +:103F000050226093E7011D1624F40E94D71D809370 +:103F1000E8018091E80187FF05C00E94D71D8195C7 +:103F20008093E801111624F40E94D71D8093E901C3 +:103F30008091E90187FF05C00E94D71D819580937C +:103F4000E901DF91CF911F910C94FD1E9F3F09F075 +:103F50008ECF96CFDF91CF911F910895E5EEF1E0DE +:103F600085E0DF011D928A95E9F71092E401109235 +:103F7000E3010895833081F128F4813059F08230D3 +:103F8000D1F00895853009F449C0B8F1863009F4BC +:103F900056C0089580911501262F30E0280F311D5D +:103FA0002F3F310524F4680F6093150108958FEFBA +:103FB00080931501089580911401262F30E0280F79 +:103FC000311D2F3F310524F4680F609314010895CB +:103FD0008FEF80931401089580911301262F30E014 +:103FE000280F311D2F3F310524F4680F6093130112 +:103FF00008958FEF80931301089580911201262F69 +:1040000030E0280F311D2F3F310524F4680F6093F5 +:10401000120108958FEF809312010895809111018C +:10402000262F30E0280F311D2F3F310524F4680F73 +:104030006093110108958FEF80931101089580918D +:104040001001262F30E0280F311D2F3F310524F4B9 +:10405000680F6093100108958FEF80931001089509 +:10406000833011F128F4813049F0823091F00895C5 +:10407000853081F120F18630C1F1089580911501DC +:10408000681720F4861B809315010895109215017E +:10409000089580911401681720F4861B8093140101 +:1040A000089510921401089580911301681720F467 +:1040B000861B809313010895109213010895809137 +:1040C0001201681720F4861B809312010895109244 +:1040D0001201089580911101681720F4861B8093C6 +:1040E000110108951092110108958091100168172F +:1040F00020F4861B809310010895109210010895FA +:104100000F931F938D3109F471C008F045C08031C1 +:1041100009F485C008F5873009F46FC068F486306B +:1041200009F0ADC08091DB01817F8E7F8093DB0140 +:1041300081E08093EB01A4C08B3009F49EC08E30E7 +:1041400009F09DC08091DB0182FB222720F991E0DC +:10415000922790FB82F96CC0863109F48EC060F41E +:10416000813109F08CC00E94A61590910D0181E06B +:10417000892780930D0181C0893109F47EC08B317C +:1041800009F07DC08091DB0181FB222720F991E0BD +:10419000922790FB81F94CC0853309F466C048F43E +:1041A000873209F462C008F44FC0893209F45DC057 +:1041B00066C0833438F48A3308F044C0883309F485 +:1041C0005CC05DC0833409F450C0883409F057C026 +:1041D0000E94A6150FEF13ED20E301501040204080 +:1041E000E1F700C000000E94181D47C00E940A228B +:1041F0000E940D110E940A0A40C09091DB01892F94 +:104200008095817080FB90F929F09660986090937A +:10421000DB0136C0997F977F9093DB012EC08091A0 +:10422000DB0183FB222720F991E0922790FB83F9A1 +:104230008093DB01992309F18091DB0181608093F8 +:10424000DB011BC0895301C08D5141E050E060E0AB +:1042500070E08A019B0104C0000F111F221F331F51 +:104260008A95D2F7C901B80104C061E070E080E02E +:1042700090E00E9466190E94A61581E001C080E0CE +:104280001F910F91089580E0089580E008958E5168 +:104290008A3030F4E82FF0E0E65DFE4F808108952B +:1042A00080E00895CF93C82F8091EB01813079F0A1 +:1042B00018F08230E9F186C0E0910E01F0910F0113 +:1042C0008081813169F0823209F07EC009C0E091BD +:1042D0000E01F0910F018081813111F0823261F481 +:1042E0008C2F0E944321811104C08C2F0E948020BA +:1042F0001DC081E090E01AC08C2F0E9445218111E1 +:1043000014C0C43179F048F4CB3079F0C03109F0F1 +:104310005FC082E08093EB0108C0C93219F0C83356 +:1043200021F056C01092EB0153C081E0817052C061 +:10433000C93281F110F5C43169F1A8F4C73009F030 +:1043400045C08AE08093150194E19093140193E0B5 +:10435000909313018093120188E08093110188E209 +:104360008093100133C082EE8C0F863078F58C2F4D +:104370000E9447218093EA0129C0CE34E9F020F45D +:10438000CB3421F56AE013C0C13579F0C235F1F4C0 +:1043900061E00DC08091EA01882319F01092EA01D2 +:1043A00015C081E08093EB0115C061E006C08091EB +:1043B000EA010E94BA1F0AC06AE08091EA010E94E5 +:1043C000302004C01092EB0180E004C081E002C004 +:1043D00080E0ACCFCF910895E1E8F0E08081886083 +:1043E00080838081816080838FB7F89493E090937D +:1043F000890090ED909388008FBF0895EFE6F0E07C +:104400008081826080830895EFE6F0E080818D7F77 +:1044100080830895EFE6F0E0908182E08927808331 +:1044200008951F920F920FB60F9211242F933F936E +:104430004F935F936F937F938F939F93AF93BF93AC +:10444000EF93FF938091EC019091ED010196909391 +:10445000ED018093EC01811103C082E00E940A0A01 +:10446000E091ED01E695E695F0E0EF5FF94FE4911C +:104470008091EC018E1303C080E00E940A0AFF9134 +:10448000EF91BF91AF919F918F917F916F915F91CC +:104490004F913F912F910F900FBE0F901F90189545 +:1044A00004D06894B1118DC0089570D088F09F57E2 +:1044B00090F0B92F9927B751A0F0D1F0660F771F70 +:1044C000881F991F1AF0BA95C9F712C0B13081F050 +:1044D00077D0B1E0089574C0672F782F8827B85F30 +:1044E00039F0B93FCCF3869577956795B395D9F7B1 +:1044F0003EF490958095709561957F4F8F4F9F4FBB +:104500000895E89409C097FB3EF4909580957095C6 +:1045100061957F4F8F4F9F4F9923A9F0F92F96E90F +:10452000BB279395F695879577956795B795F11184 +:10453000F8CFFAF4BB0F11F460FF1BC06F5F7F4F21 +:104540008F4F9F4F16C0882311F096E911C0772333 +:1045500021F09EE8872F762F05C0662371F096E83C +:10456000862F70E060E02AF09A95660F771F881F0B +:10457000DAF7880F9695879597F9089557FD905823 +:10458000440F551F59F05F3F71F04795880F97FB17 +:10459000991F61F09F3F79F08795089512161306D1 +:1045A0001406551FF2CF4695F1DF08C01616170600 +:1045B0001806991FF1CF8695710561050894089535 +:1045C000E894BB2766277727CB0197F908950BD08E +:1045D00078C069D028F06ED018F0952309F05AC041 +:1045E0005FC01124EECFCADFA0F3959FD1F3950FE2 +:1045F00050E0551F629FF001729FBB27F00DB11D67 +:10460000639FAA27F00DB11DAA1F649F6627B00DF6 +:10461000A11D661F829F2227B00DA11D621F739FDF +:10462000B00DA11D621F839FA00D611D221F749FED +:104630003327A00D611D231F849F600D211D822F34 +:10464000762F6A2F11249F5750408AF0E1F088237B +:104650004AF0EE0FFF1FBB1F661F771F881F915088 +:104660005040A9F79E3F510570F014C0AACF5F3F9C +:10467000ECF3983EDCF3869577956795B795F795BB +:10468000E7959F5FC1F7FE2B880F911D9695879543 +:1046900097F9089597F99F6780E870E060E00895C2 +:1046A0009FEF80EC089500240A941616170618064A +:1046B0000906089500240A94121613061406050626 +:1046C0000895092E0394000C11F4882352F0BB0FB7 +:1046D00040F4BF2B11F460FF04C06F5F7F4F8F4F1A +:1046E0009F4F089597FB072E16F4009407D077FD8F +:1046F00009D00E948C2307FC05D03EF4909581954B +:104700009F4F0895709561957F4F0895EE0FFF1F9D +:104710000590F491E02D0994AA1BBB1B51E107C041 +:10472000AA1FBB1FA617B70710F0A61BB70B881F41 +:10473000991F5A95A9F780959095BC01CD010895D0 +:10474000F999FECF92BD81BDF89A992780B5089559 +:10475000A8E1B0E042E050E00C94C823262FF9997C +:10476000FECF92BD81BDF89A019700B4021639F0D0 +:104770001FBA20BD0FB6F894FA9AF99A0FBE0895A1 +:104780000196272F0E94AF230C94AE23DC01CB01AE +:10479000FC01F999FECF06C0F2BDE1BDF89A319651 +:1047A00000B40D9241505040B8F70895F894FFCFEF +:1047B00002200C0A9A0A770A430A0F0A0101C8016B +:1047C00028080A03140A404D3639C10574053E0510 +:1047D00005059804B104CA04E304010203040506B4 +:0447E00007080900BD +:00000001FF diff --git a/keyboards/ergodox_ez/keymaps/osx_de_adnw_koy/keymap.c b/keyboards/ergodox_ez/keymaps/osx_de_adnw_koy/keymap.c new file mode 100644 index 0000000000..687a5cb8b5 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/osx_de_adnw_koy/keymap.c @@ -0,0 +1,174 @@ +#include "ergodox_ez.h" +#include "debug.h" +#include "action_layer.h" + +#include "keymap_neo2.h" +#include "keymap_uk.h" +#include "keymap_colemak.h" +#include "keymap_french_osx.h" +#include "keymap_nordic.h" +#include "keymap_dvorak.h" +#include "keymap_german.h" +#include "keymap_norwegian.h" +#include "keymap_fr_ch.h" +#include "keymap_german_osx.h" +#include "keymap_spanish.h" +#include "keymap_bepo.h" + +#define BASE 0 +#define SYMB 1 +#define MDIA 2 +#define QWERTZ 3 +#define NUMB 4 + +#define UNUSED 0 + +//Layout keymap.c generated with ErgodoxLayoutGenerator V1.0BETA1 +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +[BASE]=KEYMAP( +//left half + KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_LCTL, + KC_TAB, KC_K, KC_DOT, KC_O, KC_COMM, KC_Z, KC_LGUI, + TG(QWERTZ), KC_H, KC_A, KC_E, KC_I, KC_U, + KC_LSFT, CTL_T(KC_X), KC_Q, DE_AE, DE_UE, DE_OE, KC_LALT, + LT(SYMB,KC_GRV), DE_LESS, LALT(KC_LSFT), KC_LEFT, KC_RGHT, + TG(MDIA), MEH_T(LSFT(DE_ACUT)), + KC_HOME, + KC_BSPC, KC_DEL, KC_END, + //right half + KC_RCTL, KC_6, KC_7, KC_8, KC_9, KC_0, DE_OSX_MINS, + KC_RGUI, KC_V, KC_G, KC_C, KC_L, KC_MINS, KC_Y, + KC_D, KC_T, KC_R, KC_N, KC_S, LT(MDIA,KC_F), + KC_RALT, KC_B, KC_P, KC_W, KC_M, CTL_T(KC_J), KC_RSFT, + KC_UP, KC_DOWN, LGUI(KC_LSFT), KC_RBRC, LT(SYMB,KC_BSLS), + ALL_T(DE_ACUT), TG(NUMB), + KC_PGUP, + KC_PGDN, KC_ENT, KC_SPC), +[SYMB]=KEYMAP( +//left half + KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, + KC_TRNS, KC_GRV, LSFT(KC_GRV), DE_EXLM, DE_QST, KC_TRNS, KC_TRNS, + KC_TRNS, DE_HASH, DE_DLR, LALT(LSFT(KC_7)), DE_SLSH, KC_DOT, + KC_TRNS, KC_TRNS, DE_LESS, DE_PERC, LALT(KC_7), LALT(KC_N), KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_DEL, KC_TRNS, + //right half + KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + KC_TRNS, LALT(LSFT(KC_7)), LALT(KC_5), LALT(KC_6), LALT(KC_7), DE_HASH, KC_F12, + DE_SLSH, DE_LPRN, DE_RPRN, LALT(KC_8), LALT(KC_9), KC_TRNS, + KC_TRNS, DE_AMPR, KC_GRV, LSFT(KC_GRV), DE_DQOT, DE_QUOT, DE_QST, + KC_TRNS, KC_DOT, KC_EXLM, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS), +[MDIA]=KEYMAP( +//left half + 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_WH_L, KC_WH_U, KC_WH_D, KC_WH_R, KC_BTN3, 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 half + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, + 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_MUTE, KC_MPRV, KC_MNXT, KC_UP, KC_TRNS, + KC_VOLU, KC_VOLD, KC_LEFT, KC_DOWN, KC_RIGHT, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_WBAK), +[QWERTZ]=KEYMAP( +//left half + KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, LGUI(KC_V), + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_LGUI, + KC_TRNS, 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, + LT(SYMB,KC_GRV), DE_LESS, LALT(KC_LSFT), KC_LEFT, KC_RGHT, + KC_TRNS, MEH_T(LSFT(DE_ACUT)), + KC_HOME, + KC_BSPC, KC_DEL, KC_END, + //right half + LGUI(KC_C), KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, + KC_RGUI, KC_Y, KC_U, KC_I, KC_O, KC_P, DE_UE, + KC_H, KC_J, KC_K, KC_L, KC_SCLN, LT(MDIA,DE_AE), + KC_RALT, KC_N, KC_M, KC_COMM, KC_DOT, CTL_T(KC_SLSH), KC_RSFT, + KC_UP, KC_DOWN, LGUI(KC_LSFT), KC_RBRC, LT(SYMB,KC_BSLS), + ALL_T(DE_ACUT), KC_TRNS, + KC_PGUP, + KC_PGDN, KC_ENT, KC_SPC), +[NUMB]=KEYMAP( +//left half + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, + 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 half + KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + KC_TRNS, KC_UP, KC_7, KC_8, KC_9, LSFT(KC_RBRC), KC_F12, + KC_DOWN, KC_4, KC_5, KC_6, KC_RBRC, KC_TRNS, + KC_TRNS, LSFT(KC_6), KC_1, KC_2, KC_3, LSFT(KC_7), KC_TRNS, + KC_0, KC_DOT, KC_0, KC_EQL, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS), +}; + +const uint16_t PROGMEM fn_actions[] = { + +}; + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ +switch(id) { +case UNUSED: +//Macro: UNUSED//----------------------- + + + + + + 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) { + +default: +// none +break; +} + +}; + diff --git a/keyboards/ergodox_ez/keymaps/osx_de_adnw_koy/osx_de_adnw_koy_highres.png b/keyboards/ergodox_ez/keymaps/osx_de_adnw_koy/osx_de_adnw_koy_highres.png new file mode 100644 index 0000000000..193aa339e6 Binary files /dev/null and b/keyboards/ergodox_ez/keymaps/osx_de_adnw_koy/osx_de_adnw_koy_highres.png differ diff --git a/keyboards/ergodox_ez/keymaps/osx_de_experimental/compiled.hex b/keyboards/ergodox_ez/keymaps/osx_de_experimental/compiled.hex new file mode 100644 index 0000000000..3fe28d5e55 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/osx_de_experimental/compiled.hex @@ -0,0 +1,1228 @@ +:100000000C9446040C948A040C948A040C948A047C +:100010000C948A040C948A040C948A040C948A0428 +:100020000C948A040C948A040C94DF100C94B11183 +:100030000C948A040C948A040C948A040C948A0408 +:100040000C948A040C946B240C948A040C948A04F7 +:100050000C948A040C944D1F0C948A040C948A040A +:100060000C948A040C948A040C948A040C948A04D8 +:100070000C948A040C948A040C948A040C948A04C8 +:100080000C948A040C948A040C948A040C948A04B8 +:100090000C948A040C948A040C948A040C948A04A8 +:1000A0000C948A040C948A040C948A0405073F0774 +:1000B000510773078B07910797079D07A307A907A8 +:1000C000AE07B407DE07E307E807FF071E1240127A +:1000D0002E1340122E138512A8122E13FD12101388 +:1000E000DF15DF150E160E164416641695179517B4 +:1000F0006F1695171F171F178617951795178F17C8 +:100100002C172C172C172C172C172C172C172C17D7 +:100110002C172C172C172C172C172C172C172C17C7 +:100120003E174B1752175917631702E002E2012ED0 +:10013000022E02E10002E002E102E20001E001E140 +:1001400001E20002E002E3016402640002E002E373 +:100150000001E001E30001E10137023702E101386B +:10016000023801E10125022502E10001E101370227 +:100170003702E10138023801E10107020702E1001C +:1001800001350235012002200002E302E102E30210 +:10019000E102E302E102E302E102E302E102E3023F +:1001A000E102E302E102E302E102E302E102E3022F +:1001B000E102E302E102E302E102E302E102E3021F +:1001C000E102E302E102E302E102E302E102E3020F +:1001D000E102E302E102E302E102E302E102E302FF +:1001E000E102E302E102E302E102E302E102E302EF +:1001F000E102E302E102E302E102E302E102E302DF +:10020000E102E302E102E302E102E302E102E302CE +:10021000E102E302E102E302E102E302E102E302BE +:10022000E10001E301E10001E10136023602E101F2 +:1002300038023801E10126022602E10001E101371E +:10024000023702E10138023801E10126022602E10B +:100250000001E10136023602E10138023801E10114 +:1002600025022502E10001E10137023702E10138F0 +:10027000023801E20125022502E20001E101370214 +:100280003702E10138023801E10130023002E100B9 +:1002900002E002E2013002300002E002E20001E08E +:1002A00001E20001E10131023102E10029002B00ED +:1002B000E200E100354100001E00140004001D6151 +:1002C0000E304E001F001A0016001B0003304C00B9 +:1002D0002000080007000600E0022A0021001500A7 +:1002E0000900190000304B00220017000A00050029 +:1002F00000004A000230E3000000E20000004D0070 +:100300000B30E7000000E6000000500023001C0056 +:100310000B00110000004F00240018000D00100019 +:100320003167520025000C000E0036002E6F2C00A5 +:10033000260012000F003700E108280027001300F4 +:1003400033003861E10451002D002F003464E500D2 +:1003500030410000650001000100010001000000C3 +:100360003A00350031000100010001003B00350278 +:100370002102350001004C003C001E02240622022E +:10038000010001003D002D022402240401000100AF +:100390003E00010037001104000001003E00010092 +:1003A00000000100000001003F000100000001000A +:1003B000000068003F0024062402240400004500D9 +:1003C0004000220425021104310269004100230487 +:1003D000260201001F020100420035002504010031 +:1003E00001000100430035022604010001306A00CB +:1003F00044001E0231000100010000000100010064 +:1004000001000100010000000100010001000100E5 +:10041000010001000100F400F200FB0001000100F6 +:100420000100F000F100FA00010001000100F500F8 +:10043000F300FC00010001000100F900FA00F600E1 +:1004400000000100010001000000010000000100A7 +:1004500001000100000001000000AC0001000100EB +:10046000010001000000AB000100010001000100DB +:100470000100A90001000100010001000100AE001F +:1004800001000100010001005000A800010001006E +:10049000010052005100AA0001000100010001000A +:1004A0004F000000010001000100010001000000F8 +:1004B0000100010001000100010001000100010034 +:1004C0000100010001000100010001000100010024 +:1004D0000100010001000100010001000100010014 +:1004E0000100010001000100000001000100010005 +:1004F00000000100000001000730010000000100C1 +:1005000000000100083005300A3001000000010041 +:100510000C300D30043001000100010001000630F4 +:1005200001000100010001000100010001000100C3 +:1005300001000100010001000100010001000100B3 +:1005400001000100010001000100000001000100A4 +:100550000100010001000000010001000100010094 +:100560000100010001000100500001000100010034 +:1005700001005200510001000100010001000100D2 +:100580004F00010001000100010001000100010015 +:100590000000010001000100000001000000010056 +:1005A0000100010000000100000001003F002402E2 +:1005B00024022202000001004000240021001E004D +:1005C000270001004100250022001F003700010024 +:1005D00042002600230020003600010043003002C4 +:1005E00030000100270201004400450038000100EE +:1005F0000100000001000100E1000100E000000036 +:10060000010001000100010001003D0001000100A6 +:10061000010001000100E0000100010001000100F3 +:1006200001002C00010001000100010001003C005C +:10063000010001000100010000003A00010001007A +:100640000000010000003B0001000100000001006B +:100650000000010001000100010001000000010094 +:100660000100010001000100010001000100010082 +:100670000100010001000100010001000100010072 +:100680000100010001000100010001000130010032 +:1006900001000100010001000100000016034500F7 +:1006A000720067006F0044006F0078002000450072 +:1006B0005A00000016034500720067006F004400F6 +:1006C0006F007800200045005A0000000403090470 +:1006D00009026D00040100A0FA09040000010301F1 +:1006E00001000921110100012240000705810308D2 +:1006F000000A09040100010301020009211101009F +:1007000001224D000705820308000A0904020001C6 +:1007100003000000092111010001223600070583B2 +:100720000308000A09040300010300000009211165 +:100730000100012239000705840310000112011095 +:100740000100000008EDFE07130100010200010591 +:10075000010906A101050719E029E7150025019502 +:100760000875018102050819012905950575019192 +:1007700002950175039101050719002977150025D8 +:1007800001957875018102C005010980A1018502EA +:1007900016010026B7001A01002AB700751095014E +:1007A0008100C0050C0901A1018503160100269CEA +:1007B000021A01002A9C02751095018100C00501F2 +:1007C0000902A1010901A100050919012905150066 +:1007D00025019505750181029501750381010501CA +:1007E000093009311581257F950275088106093880 +:1007F0001581257F950175088106050C0A380215BB +:1008000081257F950175088106C0C005010906A1F3 +:1008100001050719E029E7150025019508750181F3 +:1008200002950175088101050819012905950575CD +:100830000191029501750391010507190029FF1522 +:100840000026FF00950675088100C000000000002A +:10085000000000000000010204060A0F17202C3AD5 +:100860004A5D71879DB3C7DAE9F5FCFFFCF5E9DA6B +:10087000C7B39D87715D4A3A2C20170F0A06040200 +:1008800001000000000000000000000011241FBE55 +:10089000CFEFDAE0DEBFCDBF04B603FE24C0809107 +:1008A000FF0190910002A0910102B09102028730F5 +:1008B000904BA740B04BB9F41092FF011092000288 +:1008C000109201021092020214BE84B7877F84BF87 +:1008D00088E10FB6F89480936000109260000FBE1C +:1008E000E0E0FFE3099511E0A0E0B1E0E4E6FCE41C +:1008F00002C005900D92A433B107D9F711E0A4E32B +:10090000B1E001C01D92AF3FB107E1F70E94270E91 +:100910000C9430260C9400001092B9008AE0809369 +:10092000B800089594EA9093BC009091BC0097FFA2 +:10093000FCCF9091B900987F983021F0903111F060 +:1009400081E008958093BB0084E88093BC0080918F +:10095000BC0087FFFCCF8091B900887F883111F0FF +:10096000803471F780E0089584E98093BC00809121 +:10097000BC0084FDFCCF08958093BB0084E8809385 +:10098000BC008091BC0087FFFCCF9091B900987F9C +:1009900081E0983209F480E0089584E88093BC00F7 +:1009A0008091BC0087FFFCCF8091BB00089580B38D +:1009B0008C7080BB81B3836F81BB089580910101EE +:1009C000811115C080E40E9492048093010181117D +:1009D0000CC082E10E94BC0480930101811105C01A +:1009E0008FEF0E94BC04809301010E94B40484B183 +:1009F000807F84B985B1807F85B98AB1837F8AB9C8 +:100A00008BB1837F8BB93E98469808950E94A806C3 +:100A1000809301010E94DE040E94D704A5E3B1E0A7 +:100A2000E3E4F1E08EE08E0F11921D928E13FCCF65 +:100A30000C9492060E94A806809301010E94DE0495 +:100A40000E94D704A5E3B1E0E3E4F1E08EE08E0F6D +:100A500011921D928E13FCCF0895BF92CF92DF9218 +:100A6000EF92FF920F931F93CF93DF938091010139 +:100A7000882379F0809134018F5F80933401811154 +:100A800008C00E94A80680930101811102C00E9443 +:100A90003A0605E311E0C0E0D0E0DD24D39482E023 +:100AA000C82EEE24E394F12CC730D10500F58091D7 +:100AB0000101811164C080E40E94920480930101CD +:100AC000811112C082E10E94BC0480930101811156 +:100AD0000BC0C7010C2E01C0880F0A94EAF780955D +:100AE0000E94BC04809301010E94B40448C0CA3033 +:100AF000A1F028F4C83059F0C93061F005C0CC30FD +:100B000089F070F0CD3089F0209A289810C0219A91 +:100B100029980DC0229A2A980AC0239A2B9807C0B8 +:100B2000529A01C0539A5B9802C03E9A469890EA46 +:100B30009A95F1F79FB1799902C082E001C080E0F7 +:100B400091709D25982B7C9902C084E001C080E0C3 +:100B5000892B7D9902C038E001C030E0832B7E995B +:100B600002C020E101C020E0822B9FB19095991F27 +:100B70009927991F9295990F907E892B0FC080918C +:100B80000101811149C080E40E9492048093010117 +:100B9000882379F1B12C0E94B4048B2DF801908147 +:100BA000981719F08083C09200010E94DE042196FC +:100BB0000F5F1F4FCE30D10509F076CF8091000135 +:100BC000882361F1815080930001882339F08FE9F7 +:100BD0009FE00197F1F700C0000020C0A3E4B1E05E +:100BE000E5E3F1E0CF01825F91919D938E13FCCFFD +:100BF00015C083E10E94BC04809301018111CACF1A +:100C000081E40E949204809301018111C3CF0E946C +:100C1000CD04B82EB094BFCF80E0C0CF0E9438067C +:100C200081E0DF91CF911F910F91FF90EF90DF90C6 +:100C3000CF90BF900895E82FF0E0ED5BFE4F8081EC +:100C4000089508950F931F93CF93DF93C3E4D1E0EA +:100C500010E00C2F025F899190E00E94741E180F23 +:100C60000C13F9CF812FDF91CF911F910F91089530 +:100C70000C94260856985E9825982D9826982E98BC +:100C800027982F988FEF90E09093890080938800A9 +:100C900090938B0080938A0090938D0080938C00BA +:100CA000259A2D9A2FEF80E792E0215080409040C6 +:100CB000E1F700C00000269A2E9A2FEF80E792E01D +:100CC000215080409040E1F700C00000279A2F9A01 +:100CD0002FEF80E792E0215080409040E1F700C084 +:100CE000000025982D982FEF80E792E0215080405A +:100CF0009040E1F700C0000026982E982FEF80E783 +:100D000092E0215080409040E1F700C00000279819 +:100D10002F9856985E9825982D9826982E98279863 +:100D20002F98089589EA8093800089E0809381005C +:100D300024982C983F988AB18F748AB96E98479AF4 +:100D40008BB1806B8BB9769A0E943A060C94250879 +:100D500080E2809301018091510181110EC00E94B7 +:100D60008C0481E0809351012FEF83ED90E32150BB +:100D700080409040E1F700C0000080E40E949204AF +:100D80008093010181112EC00E94BC048093010157 +:100D9000811128C00E94BC0480930101811122C0EE +:100DA0008FE30E94BC048093010181111BC00E944B +:100DB000B40480E40E94920480930101811112C066 +:100DC0008CE00E94BC048093010181110BC00E9441 +:100DD000BC0480930101811105C08FE30E94BC0413 +:100DE000809301010E94B404809101010895462F6F +:100DF00050E04031510508F01FC1DC01FA01EA5A08 +:100E0000FF4F12968C910C94E0258823A9F00E9444 +:100E1000171F90935301809352018091C0019091CC +:100E2000C101A091C201B091C30128E0822788705E +:100E30009927AA27BB27AEC08091C0019091C1011C +:100E4000A091C201B091C30128E082278870992740 +:100E5000AA27BB278093C0019093C101A093C20130 +:100E6000B093C30180915201909153010E94231FBE +:100E70008739910508F0E0C083EA92E0089588235D +:100E800009F4DAC08091C0019091C101A091C20122 +:100E9000B091C30120E2822780729927AA27BB273D +:100EA00079C0882339F00E94171F909353018093D3 +:100EB00052010AC080915201909153010E94231F58 +:100EC0008739910508F4B8C08091C0019091C101A3 +:100ED000A091C201B091C30120E1822780719927BE +:100EE000AA27BB2757C0882349F00E94171F909359 +:100EF0005301809352018EE992E00895809152014E +:100F0000909153010E94231F8739910508F08EC0EC +:100F100080E992E00895882309F48EC08BE792E07F +:100F20000895882309F488C086E692E0089588230E +:100F300009F482C081E592E00895882309F47CC019 +:100F40008CE392E00895882309F476C087E292E06A +:100F5000089581116EC089E891E00895882309F40D +:100F60006BC080E891E008958823E9F00E94171F84 +:100F700090935301809352018091C0019091C101DF +:100F8000A091C201B091C30124E082278470992707 +:100F9000AA27BB278093C0019093C101A093C201EF +:100FA000B093C30149C080915201909153010E94B6 +:100FB000231F8739910508F43FC0DECF8823E1F174 +:100FC0008BE691E008958823B9F186E591E00895D4 +:100FD000882349F00E94171F909353018093520178 +:100FE00081E591E0089580915201909153010E9412 +:100FF000231F8739910518F583E491E0089588232C +:1010000049F00E94171F90935301809352018CE383 +:1010100091E0089580915201909153010E94231F05 +:101020008739910578F48AE291E0089589E992E0A0 +:10103000089582E292E0089580E090E008958CE4C3 +:1010400091E0089585E391E0089508956091C001CD +:101050007091C1018091C2019091C3010E94801ED4 +:1010600056985E9825982D9826982E9827982F9810 +:10107000823061F018F4813031F00895843069F0E5 +:10108000853039F00895259A2D9A0895269A2E9A3A +:101090000895259A2D9A269A2E9A279A2F9A08957E +:1010A00081E0089581E008950C9452080895282F56 +:1010B000882339F090E02A3010F44D960895069771 +:1010C000089587E290E00895AF92BF92DF92EF9289 +:1010D000FF920F931F93CF93DF938C01FC01C0818C +:1010E000D181CE010E94F91CBE010E94D40BEC01FB +:1010F000B8010E945408882309F4C9C1F80182810B +:10110000882309F4BEC08091600181111FC0C431E1 +:10111000F0E7DF0709F0B5C10E94560881E080932F +:1011200060010E94171F90935F0180935E011092EF +:101130005701109259011092580110925B011092C0 +:101140005A0110925D0110925C01A1C180915E0173 +:1011500090915F010E94231F883C910570F480915B +:101160005701E82FF0E0EE0FFF1FE85AFE4FD18342 +:10117000C0838F5F809357018AC1C13020E8D207B6 +:1011800008F451C0F8018281882309F47EC05E0111 +:10119000E894B7F880915601813079F050F08230B0 +:1011A000C1F482EE0E94831487E50E94831487E5D0 +:1011B0000EC082EE0E9483140CC080EE0E94831445 +:1011C00081EE0E94831488E10E94831488E10E94CA +:1011D0004B158CE0E82EF12CC5010E2C02C0969523 +:1011E00087950A94E2F78F700E945708D82E0E94C4 +:1011F00083148D2D0E944B15F4E0EF1AF1082CEFAB +:10120000E2162FEFF20641F780915601813029F066 +:1012100010F0823041F482EE04C080EE0E944B1543 +:1012200081EE0E944B15C43180E7D80768F4C230C4 +:1012300090E7D90708F046C0C115E0E7DE0771F076 +:10124000C130D047A1F10CC1C33320E7D20709F464 +:10125000D8C0C433D04709F4EBC002C1F801828181 +:10126000882309F402C10E940018FFEF24E38CE0F8 +:10127000F15020408040E1F700C000000E94721F42 +:1012800006C1C13080E8D80770F2C43120E7D20728 +:1012900008F0B3C0C23080E7D807A0F4C11590E7CA +:1012A000D90709F4E2C0C130D04709F0D9C0F8012C +:1012B0008281882309F4D9C08091DD018160809307 +:1012C000DD01E5C0F8018281882309F4CEC00E94C7 +:1012D000CC1F811102C00E94B21F0E94DF1F90E04C +:1012E0009093F1018093F001C230F0E7DF0721F421 +:1012F0008091F00181607AC0C33020E7D20721F4E9 +:101300008091F001826072C0C43080E7D80721F478 +:101310008091F00184606AC0C53090E7D90719F464 +:101320008091F00127C0C630E0E7DE0721F480910C +:10133000F00180615BC0C730F0E7DF0721F48091E6 +:10134000F001806253C0C83020E7D20721F48091B9 +:10135000F00180644BC0C93080E7D80721F4809148 +:10136000F001806843C0CA3090E7D90729F4809122 +:10137000F001846088603AC0CB30E0E7DE0721F4FA +:101380008091F0018E7F32C0CC30F0E7DF0721F48E +:101390008091F0018D7F2AC0CD3020E7D20721F463 +:1013A0008091F0018B7F22C0CE3080E7D80719F4FE +:1013B0008091F0011AC08091F001CF3090E7D907F9 +:1013C00011F48F7E13C0C031E0E7DE0711F48F7D8A +:1013D0000DC0C131F0E7DF0711F48F7B07C0C231C8 +:1013E000D04711F48F7702C08B7F877F8093F00105 +:1013F0008091F0010E94E31F4AC0C333F0E7DF078A +:10140000A1F4F8018281882321F01092540182E036 +:1014100016C080915401811106C086E20E94831497 +:1014200086E20E944B1582E018C0C433D047C1F455 +:10143000F8018281882331F01092550180E20E94E8 +:101440009A1525C080915501811106C087E20E943E +:10145000831487E20E944B1580E20E94A11517C0F9 +:1014600081E08093540180935501C801DF91CF91B1 +:101470001F910F91FF90EF90DF90BF90AF900C9471 +:101480005008C130F0E8DF0708F081CECCCE80E014 +:10149000DF91CF911F910F91FF90EF90DF90BF9060 +:1014A000AF90089526E0729FF001112444E5849FD7 +:1014B000E00DF11D1124E60FF11DEE0FFF1FE455A5 +:1014C000FD4F859194910E94E60B811560E496078B +:1014D000B0F5811570E3970708F0DEC0803E9105F6 +:1014E000D8F4803C910508F06CC0883A910578F4F6 +:1014F000853A910508F06BC08130910509F452C11D +:1015000008F40FC18430910508F04CC10AC18B3B2F +:10151000910508F467C005C18F3F910509F048F4B3 +:10152000803F910508F0ADC0883E910508F43AC1AE +:10153000F8C0811520E2920708F0A5C00895811532 +:1015400043E5940790F4811562E5960708F0C8C05A +:10155000811571E5970708F0BEC0811520E5920757 +:1015600008F09DC09F70906A0895811545E5940725 +:10157000D8F4811564E5960708F0C8C0482F469551 +:10158000469570E2479FA00111248370992721E0BE +:1015900030E0B90102C0660F771F8A95E2F7CB01F0 +:1015A000842B952B9A680895811576E5970708F4A2 +:1015B000B2C09C0130562115304108F0B2C09F7076 +:1015C000AEC0FC01EE0FFF1FE45DFE4F62C0853A26 +:1015D000910509F4A9C0863A910509F0A8C082E8EE +:1015E00090E40895883A910509F4A4C0893A9105D8 +:1015F00009F4A3C08A3A910509F4A2C08B3A910577 +:1016000009F4A1C08C3A910509F4A0C08D3A910566 +:1016100009F49FC0803B910509F49EC08E3A910564 +:1016200009F49DC08F3A910509F49CC0813B910556 +:1016300009F49BC0823B910509F49AC0833B910554 +:1016400009F499C0843B910509F498C0853B910544 +:1016500009F497C0863B910509F496C0873B910534 +:1016600009F495C0883B910509F494C0893B910524 +:1016700009F493C08A3B910509F492C080E094E498 +:10168000089590650895FC01FF70EE0FFF1FE4556B +:10169000FD4F8591949108959927906C0895482F56 +:1016A000437021E030E002C0220F331F4A95E2F779 +:1016B0003C68AC0164E0569547956A95E1F7437044 +:1016C000342B8F708695869560E2869FC001112429 +:1016D000822B932B0895982F8827816F906A089505 +:1016E000482F4695469570E2479FA00111248370CC +:1016F000992721E030E0B90102C0660F771F8A9573 +:10170000E2F7CB01842B952B9C680895982F8827AE +:10171000846F906A08958F719927982F8827906217 +:10172000089580E090E0089581E890E4089583E8CA +:1017300090E4089582EE94E4089589EE94E4089587 +:101740008AEE94E4089585EB94E4089586EB94E49E +:10175000089587EB94E408958CEC94E408958DEC5F +:1017600094E4089583E895E408958AE895E408955B +:1017700082E995E4089584E995E4089581E296E488 +:10178000089583E296E4089584E296E4089585E25C +:1017900096E4089586E296E4089587E296E4089533 +:1017A0008AE296E40895089596E0799FF001112465 +:1017B00094E5899FE00DF11D1124E60FF11DEE0F58 +:1017C000FF1FE455FD4F859194910895823891054E +:1017D00049F1B0F48133910509F458C048F48932D5 +:1017E000910509F44EC08A32910509F454C0089558 +:1017F0008533910509F440C08933910599F0089526 +:10180000833E910529F138F4803E910591F0823EA6 +:101810009105A1F00895863E9105F9F0873E910566 +:1018200031F108952091F00120FD3AC021FD38C02A +:1018300008958091F00180FD35C032C08091F001A3 +:1018400082FF32C08091F00184FD30C083EE39C048 +:101850008091F00182FD28C0F5CF8091F00183FFD7 +:1018600027C08091F00184FD21C087EE2AC08091BD +:10187000F00183FD1DC0F5CF8091F00185FD1AC0F8 +:101880001BC08091F00185FD17C014C08091F0014C +:1018900086FD14C015C08091F00186FD11C00EC0F8 +:1018A00080EE0FC089E30DC082EE0BC080E009C05E +:1018B00086EE07C089E205C085E303C08AE201C065 +:1018C00081E390E0089508950C94630C8091710178 +:1018D0000895CF93DF9300D01F92CDB7DEB79C0160 +:1018E0008091F601843019F593E099833B832A8334 +:1018F0009093E9008FEF9091E800815095FD06C02C +:1019000095ED9A95F1F700008111F5CF8091E800EF +:1019100085FF0DC040E050E063E070E0CE0101962D +:101920000E94CF0E8091E8008E778093E8000F90A0 +:101930000F900F90DF91CF910895CF93DF9300D058 +:101940001F92CDB7DEB72091F601243021F522E0B9 +:1019500029839B838A8383E08093E9008FEF9091B2 +:10196000E800815095FD06C095ED9A95F1F70000CD +:101970008111F5CF8091E80085FF0DC040E050E077 +:1019800063E070E0CE0101960E94CF0E8091E800E6 +:101990008E778093E8000F900F900F90DF91CF919A +:1019A00008952091F6012430F1F422E02093E9001B +:1019B0002FEF3091E800215035FD06C035ED3A9506 +:1019C000F1F700002111F5CF2091E80025FF0BC0B1 +:1019D00040E050E065E070E00E94CF0E8091E800AA +:1019E0008E778093E8000895CF93DF93EC01909178 +:1019F000F601943009F046C080910C018823D9F09B +:101A000080910D018823B9F09093E9008FEF9091B8 +:101A1000E800815095FD06C095E19A95F1F7000028 +:101A20008111F5CF8091E80085FF2CC040E050E0A7 +:101A300060E170E017C081E08093E9008FEF909142 +:101A4000E800815095FD06C095ED9A95F1F70000EC +:101A50008111F5CF8091E80085FF14C040E050E08F +:101A600068E070E0CE010E94CF0E8091E8008E7792 +:101A70008093E80080E1FE01A1E6B1E001900D92C3 +:101A80008A95E1F7DF91CF9108958091F501811159 +:101A900009C00E9464100E94C1108091E20084601D +:101AA0008093E20008951092F501089508950C9432 +:101AB00058240E94081F0E945E240E9467130C9401 +:101AC000640C42E061EC81E00E94DE0F42E061ECD8 +:101AD00082E00E94DE0F42E061EC83E00E94DE0FB4 +:101AE00042E161EC84E00C94DE0F8091F8018330D8 +:101AF00009F455C030F4813071F0823009F48EC0A1 +:101B000008958A3009F47AC08B3009F460C08930B6 +:101B100009F09CC020C08091F701813A09F096C07D +:101B20008091E800877F8093E8008091FB0190918D +:101B3000FC01892B21F460E181E691E003C060E0C3 +:101B400080E090E070E00E941A0F8091E8008B77AF +:101B50008093E80008958091F701813209F076C002 +:101B60008091FB019091FC01009719F0039709F017 +:101B70006DC08091E800877F8093E8008091E80045 +:101B800082FD05C08091F6018111F8CF5FC0809180 +:101B9000F100809371018091E8008B7753C08091B0 +:101BA000F701813A09F052C08091FB019091FC014C +:101BB000892B09F04BC08091E800877F8093E80073 +:101BC0008091E80080FFFCCF80910C0136C08091AD +:101BD000F7018132D9F58091FB019091FC01892BAD +:101BE000A9F58091E800877F8093E8000E94131098 +:101BF0008091F90180930C010C9400188091F701F9 +:101C0000813221F58091E800877F8093E8000E946F +:101C100013108091FA018093720108958091F70169 +:101C2000813AA1F48091E800877F8093E800809159 +:101C3000E80080FFFCCF809172018093F1008091D9 +:101C4000E8008E778093E8000C941310089584B711 +:101C5000877F84BF88E10FB6F8948093600010926C +:101C600060000FBE80E880936100109261000E94C6 +:101C7000B6130E9464100E94C1108091E20084603B +:101C80008093E20078940E9447130E94B81382E088 +:101C900091E00E9462130E9446248091F6018530F3 +:101CA00069F40E94D01E8091F4018823B1F30E9450 +:101CB000FA1E882391F30E94B90EEFCF0E94BE1343 +:101CC000ECCF292F332723303105C9F064F42130BC +:101CD000310581F02230310509F043C08DE690E0F6 +:101CE00020ED36E042C021323105F1F022323105DB +:101CF00041F137C082E190E02DE337E036C099270B +:101D00008130910541F08230910541F0892B49F5F0 +:101D1000ECECF6E005C0E4EBF6E002C0ECE9F6E03E +:101D2000849190E09F0121C06430D8F4E62FF0E068 +:101D3000EE0FFF1FEE5DFE4F2081318189E090E0C4 +:101D400014C0643070F470E0FB01EE0FFF1FE65E1C +:101D5000FE4F20813181FB01EA5EFE4F808190E0E1 +:101D600004C080E090E020E030E0FA01318320837D +:101D7000089580E189BD82E189BD09B400FEFDCFEF +:101D80008091D8008F7D8093D8008091E0008260A0 +:101D90008093E0008091E00081FDFCCF0895CF9218 +:101DA000DF92EF92FF920F931F93CF93DF93EC019B +:101DB0008B016A010E943210811133C0C114D10419 +:101DC00039F0F60180819181081B190BC80FD91FCA +:101DD000E12CF12C0115110519F18091E80085FD28 +:101DE00016C08091E8008E778093E800C114D1047A +:101DF00049F0F60180819181E80EF91EF182E082BE +:101E000085E00FC00E943210882321F30AC0899117 +:101E10008093F10001501109FFEFEF1AFF0ADACFAA +:101E200080E0DF91CF911F910F91FF90EF90DF90B5 +:101E3000CF9008952091FD013091FE0126173707BC +:101E400048F06115710539F42091E8002E77209350 +:101E5000E80001C0B90140E061157105A9F12091C8 +:101E6000F601222309F443C0253009F442C0209131 +:101E7000E80023FD40C02091E80022FD32C02091FF +:101E8000E80020FFE9CF4091F3002091F20030E01C +:101E9000342BFC01CF016115710559F02830310553 +:101EA00040F481918093F100615071092F5F3F4FA1 +:101EB000F1CF41E02830310509F040E02091E80001 +:101EC0002E772093E800C8CF4111C9CF0AC0809176 +:101ED000F601882361F0853061F08091E80083FD90 +:101EE0000AC08091E80082FFF2CF80E0089582E08E +:101EF000089583E0089581E008952091FD013091D7 +:101F0000FE012617370748F06115710539F4209155 +:101F1000E8002E772093E80001C0B901FC0120E021 +:101F20006115710591F18091F601882309F440C093 +:101F3000853009F43FC08091E80083FD3DC0809169 +:101F4000E80082FD2FC08091E80080FFE9CF20915A +:101F5000F3008091F20090E0922B6115710559F029 +:101F60008830910540F424912093F100319661501E +:101F700071090196F2CF21E0089709F020E08091E5 +:101F8000E8008E778093E800CBCF2111CCCF0AC038 +:101F90008091F601882361F0853061F08091E8003E +:101FA00083FD0AC08091E80082FFF2CF80E00895AF +:101FB00082E0089583E0089581E00895982F973096 +:101FC00058F59093E900981739F07091EC00209142 +:101FD000ED005091F00003C0242F762F50E021FF38 +:101FE00019C03091EB003E7F3093EB003091ED0053 +:101FF0003D7F3093ED003091EB0031603093EB008A +:102000007093EC002093ED005093F0002091EE00CF +:1020100027FF07C09F5FD3CF8F708093E90081E0D7 +:10202000089580E008958091F70187FF11C08091A5 +:10203000E80082FD05C08091F6018111F8CF11C042 +:102040008091E8008B770BC08091F601882349F0DE +:102050008091E80080FFF8CF8091E8008E77809330 +:10206000E80008952091E4003091E50095E6409164 +:10207000EC00842F817040FF22C08091E80080FD39 +:102080001CC08091F601882391F0853091F08091F9 +:10209000EB0085FD10C04091E4005091E50042172F +:1020A000530729F39A01915011F784E0089582E0D3 +:1020B000089583E0089581E0089580E008954091B7 +:1020C000E80042FFDECF08950E94D2100E94DA108D +:1020D000E0EEF0E0808181608083E8EDF0E08081D7 +:1020E0008F77808319BCA7EDB0E08C918E7F8C93A5 +:1020F00080818F7E80831092F50108950F931F9346 +:10210000CF93DF930E94D2100E94DA10C8EDD0E086 +:1021100088818F77888388818068888388818F7D94 +:10212000888319BC1092F6011092F2011092F4010A +:102130001092F30100EE10E0F80180818B7F808324 +:1021400088818160888342E060E080E00E94DE0F49 +:10215000E1EEF0E080818E7F8083E2EEF0E080812E +:1021600081608083808188608083F80180818E7F98 +:102170008083888180618883DF91CF911F910F9147 +:102180000895E8EDF0E080818F7E8083E7EDF0E058 +:1021900080818160808384E082BF81E08093F5014B +:1021A0000C947E10E8EDF0E080818E7F80831092A9 +:1021B000E20008951092DA001092E10008951F9253 +:1021C0000F920FB60F9211242F933F934F935F936B +:1021D0006F937F938F939F93AF93BF93EF93FF93EF +:1021E0008091E10082FF0BC08091E20082FF07C076 +:1021F0008091E1008B7F8093E1000E9446138091E3 +:10220000DA0080FF1FC08091D80080FF1BC0809142 +:10221000DA008E7F8093DA008091D90080FF0DC0B4 +:1022200080E189BD82E189BD09B400FEFDCF81E076 +:102230008093F6010E94450D05C019BC1092F6016D +:102240000E94530D8091E10080FF19C08091E2004F +:1022500080FF15C08091E2008E7F8093E200809124 +:10226000E20080618093E2008091D80080628093D8 +:10227000D80019BC85E08093F6010E94570D80912B +:10228000E10084FF30C08091E20084FF2CC080E137 +:1022900089BD82E189BD09B400FEFDCF8091D800DF +:1022A0008F7D8093D8008091E1008F7E8093E10044 +:1022B0008091E2008F7E8093E2008091E200816055 +:1022C0008093E2008091F201882311F084E007C03E +:1022D0008091E30087FD02C081E001C083E080932C +:1022E000F6010E94590D8091E10083FF29C0809181 +:1022F000E20083FF25C08091E100877F8093E100A9 +:1023000082E08093F6011092F2018091E1008E7FCD +:102310008093E1008091E2008E7F8093E2008091C3 +:10232000E20080618093E20042E060E080E00E9491 +:10233000DE0F8091F00088608093F0000E94560DBF +:10234000FF91EF91BF91AF919F918F917F916F918D +:102350005F914F913F912F910F900FBE0F901F9063 +:1023600018951F920F920FB60F9211242F933F933F +:102370004F935F936F937F938F939F93AF93BF938D +:10238000CF93DF93EF93FF93C091E900CF708091DB +:10239000EC00D82FD17080FDD0E81092E900809138 +:1023A000F000877F8093F00078940E94F5111092DE +:1023B000E9008091F00088608093F000CD2BCF7011 +:1023C000C093E900FF91EF91DF91CF91BF91AF9161 +:1023D0009F918F917F916F915F914F913F912F913D +:1023E0000F900FBE0F901F9018951F93CF93DF9300 +:1023F000CDB7DEB7AA970FB6F894DEBF0FBECDBF3C +:10240000E7EFF1E088E08E0F9091F10091938E1349 +:10241000FBCF0E94750D8091E80083FF1FC1809162 +:10242000F7019091F801492F50E04A30510508F02A +:1024300015C1FA01EA59FF4F0C94E025803881F06C +:10244000823809F00BC18091FB018F708093E90005 +:102450008091EB0085FB882780F91092E90006C087 +:102460008091F3019091F401911182609091E800C4 +:10247000977F9093E8008093F1001092F100C8C01C +:10248000282F2D7F09F0EAC0882319F0823061F0EF +:10249000E5C08091F901813009F0E0C0933009F086 +:1024A00080E08093F4012BC08091F901811127C055 +:1024B0008091FB018F7009F4D1C08093E9002091D5 +:1024C000EB0020FF1CC0933021F48091EB00806270 +:1024D00014C09091EB0090619093EB0021E030E00C +:1024E000A90102C0440F551F8A95E2F74093EA0004 +:1024F0001092EA008091EB0088608093EB001092CC +:10250000E9008091E800877F86C08111A7C0109103 +:10251000F9011F778091E3008078812B8093E3009D +:102520008091E800877F8093E8000E9413108091DB +:10253000E80080FFFCCF8091E30080688093E30097 +:10254000111102C082E001C083E08093F60186C0D1 +:102550008058823008F082C08091F9019091FA0190 +:102560008C3D53E0950779F583E08A838AE289837D +:102570004FB7F894DE01139620E03EE051E2E32FDE +:10258000F0E050935700E49120FF03C0E295EF7014 +:102590003F5FEF708E2F90E0EA3010F0C79601C0D9 +:1025A000C0968D939D932F5F243149F74FBF809143 +:1025B000E800877F8093E8006AE270E0CE01019630 +:1025C0000E941A0F14C0AE014F5F5F4F6091FB0174 +:1025D0000E94610EBC01009709F440C09091E80090 +:1025E000977F9093E80089819A810E947D0F809166 +:1025F000E8008B778093E80031C0803879F58091CE +:10260000E800877F8093E8008091F2018093F100D9 +:102610008091E8008E778093E8000E9413101EC01E +:1026200081111CC09091F9019230C0F48091E800B2 +:10263000877F8093E8009093F2010E9413108091AD +:10264000F201811106C08091E30087FD02C081E0A4 +:1026500001C084E08093F6010E94610D8091E80042 +:1026600083FF0AC08091E800877F8093E800809113 +:10267000EB0080628093EB00AA960FB6F894DEBF61 +:102680000FBECDBFDF91CF911F9108950895CF93D5 +:102690008091F6018823A1F0C091E900CF7090915C +:1026A000EC00892F817090FD80E8C82B1092E90022 +:1026B0008091E80083FD0E94F511CF70C093E9007E +:1026C000CF91089590937801809377010895E091D8 +:1026D0007701F0917801309721F00190F081E02DA1 +:1026E000099480E00895E0917701F09178013097A6 +:1026F00021F00280F381E02D09940895E0917701A3 +:10270000F0917801309721F00480F581E02D099453 +:10271000089520917501309176018217930771F029 +:102720009093760180937501E0917701F0917801A3 +:10273000309721F00680F781E02D099408952091CB +:102740007301309174018217930771F090937401B3 +:1027500080937301E0917701F0917801309721F037 +:102760000084F185E02D0994089508950C94B51323 +:102770000E940E1F0E9406050C94941F9F92AF9218 +:10278000BF92CF92DF92EF92FF920F931F93CF935E +:10279000DF9300D000D000D0CDB7DEB70E942D056A +:1027A0000DE010E0AA24A394B12C902E802F0E945B +:1027B0001B06980126583E4F6901F901F080F82662 +:1027C000A1F40150110988F78FEF89838A831B8256 +:1027D0000E94171F8160782F9D838C8349815A81C5 +:1027E0006B818D810E9455142FC09091DD0191FF66 +:1027F00004C08E830E9421068E8125E030E0A50171 +:10280000022E01C0440F0A94EAF7E42E4F21C1F0D2 +:1028100029839A828E2191E009F490E09B830E94A3 +:10282000171F8160782F9D838C8349815A816B812A +:102830008D810E945514F6018081E826E08204C053 +:1028400021503109E0F6BDCF0E946221109179013B +:102850000E9467131817B9F00E94671380937901DB +:1028600026960FB6F894DEBF0FBECDBFDF91CF9195 +:102870001F910F91FF90EF90DF90CF90BF90AF909E +:102880009F900C94640C26960FB6F894DEBF0FBE92 +:10289000CDBFDF91CF911F910F91FF90EF90DF900F +:1028A000CF90BF90AF909F900895CF93DF93CDB717 +:1028B000DEB72B970FB6F894DEBF0FBECDBF4F83A8 +:1028C000588769877A878B87DE01119686E0FD013C +:1028D00011928A95E9F785E0FE01379601900D92F5 +:1028E0008A95E1F749815A816B817C818D819E8136 +:1028F0000E949E1A2B960FB6F894DEBF0FBECDBF76 +:10290000DF91CF910895CF93882309F4C2C0C82FD7 +:10291000823859F40E94671381FDBBC089E30E948D +:10292000781D0E94451E89E30CC0833879F40E940B +:10293000671380FDAEC083E50E94781D0E94451E8E +:1029400083E50E94BA1DCF910C94451E843859F43A +:102950000E94671382FD9DC087E40E94781D0E943B +:10296000451E87E4EECF8CEF8C0F813A48F48C2F14 +:102970000E94AC2381118DC08C2F0E94781DE3CF63 +:1029800080E28C0F883048F4C77081E001C0880F66 +:10299000CA95EAF70E94FE1DD6CF8BE58C0F8330D7 +:1029A00078F4C53A29F0C63A31F083E890E005C0E2 +:1029B00081E890E002C082E890E0CF910C94891306 +:1029C00088E58C0F833108F064C0C83A39F1C93A00 +:1029D00041F1CA3A49F1CB3A51F1CC3A59F1CD3AE9 +:1029E00061F1C03B69F1CE3A71F1CF3A79F1C13B67 +:1029F00081F1C23B89F1C33B91F1C43B99F1C53BE5 +:102A0000A1F1C63BA9F1C73BB1F1C83BB9F1C93B44 +:102A1000C1F1CA3BC9F180E090E038C082EE90E09D +:102A200035C089EE90E032C08AEE90E02FC085EB91 +:102A300090E02CC086EB90E029C087EB90E026C0A8 +:102A40008CEC90E023C08DEC90E020C083E891E016 +:102A50001DC08AE891E01AC082E991E017C084E9BC +:102A600091E014C081E292E011C083E292E00EC0D6 +:102A700084E292E00BC085E292E008C086E292E038 +:102A800005C087E292E002C08AE292E0CF910C9406 +:102A90009F13CF910895882309F44BC0823859F4CD +:102AA0000E94671381FF45C089E30E94781D0E9440 +:102AB000451E89E30CC0833871F40E94671380FFC0 +:102AC00038C083E50E94781D0E94451E83E50E9460 +:102AD000BA1D0C94451E843859F40E94671382FF76 +:102AE00028C087E40E94781D0E94451E87E4EFCF2E +:102AF0009CEF980F913A58F390E2980F983050F469 +:102B0000877091E001C0990F8A95EAF7892F0E949A +:102B1000041EDFCF9BE5980F933020F480E090E017 +:102B20000C948913885A833120F480E090E00C944F +:102B30009F130895882321F00E94FE1D0C94451ECA +:102B40000895882321F00E94041E0C94451E0895C8 +:102B50007F928F929F92AF92BF92CF92DF92EF922D +:102B6000FF920F931F93CF93DF931F92CDB7DEB7E2 +:102B70007C01C62E772EFC01058102950F70128113 +:102B800011110E941B1E0E94711D882379F01123D0 +:102B900069F080E28C0D883048F082E00E945A1D76 +:102BA0000E94711D91E0D82ED92601C0D12CE72DAD +:102BB000E295EF70F0E0E059FF4F0C94E025872D8F +:102BC000807F072D0F70882311F00295007F11235D +:102BD00089F0002309F490C180E28C0D883020F444 +:102BE000802F0E94FE1D03C0802F0E940E1E0E9497 +:102BF000451E82C18C2D0E944B15002309F495C1FE +:102C000080E28C0D883020F4802F0E94041E03C0C7 +:102C1000802F0E94141E0E94451E87C1972D907F11 +:102C2000872D8F70903211F08295807FCC2021F01B +:102C3000F1E0CF16B1F01EC0112349F0002309F4D2 +:102C400014C1013009F011C10E942E1E6EC1002373 +:102C500019F0013009F469C189830E94311E89810C +:102C60000AC1112321F0023008F05FC1FEC001113A +:102C70005CC101C1112321F0002309F4F6C03CC15D +:102C8000002309F4F8C03EC1872D86958695837090 +:102C900090E0009719F0019761F047C1112321F0EE +:102CA0008C2D972D937002C080E090E00E948913D4 +:102CB0003CC1112321F08C2D972D937002C080E030 +:102CC00090E00E949F1331C18C2D112319F00E94B6 +:102CD0006A2002C00E94D2200E94572126C1872D5F +:102CE000837009F052C0111120C18C2D82958695F8 +:102CF0008770880F880F9C2D9F70892E912CA12C96 +:102D0000B12C082E04C0880C991CAA1CBB1C0A9468 +:102D1000D2F7C4FE14C00FE010E020E030E0B901AB +:102D2000A80104C0440F551F661F771F8A95D2F76C +:102D3000CB01BA01609570958095909503C060E0D5 +:102D400070E0CB01272D26952695237030E02230A8 +:102D5000310569F02330310589F0682979298A29FC +:102D60009B292130310571F00E94E61BDEC06829E5 +:102D700079298A299B290E94021CD7C00E94E61B40 +:102D8000C501B4010E94CA1BD0C0112319F0872DC0 +:102D9000817001C08695882309F4C7C08C2D829567 +:102DA00086958770880F880F9C2D9F70892E912C97 +:102DB000A12CB12C082E04C0880C991CAA1CBB1C89 +:102DC0000A94D2F7C4FE14C00FE010E020E030E017 +:102DD000B901A80104C0440F551F661F771F8A95CB +:102DE000D2F7CB01BA01609570958095909503C09C +:102DF00060E070E0CB01272D269526952370422FA9 +:102E000050E04230510569F04330510589F068299E +:102E100079298A299B294130510571F00E94C01CF3 +:102E200084C0682979298A299B290E94DC1C7DC0DD +:102E30000E94C01CC501B4010E94A41C76C08C2D48 +:102E400090E0FC01E05EF109E531F10508F050C0C9 +:102E5000E058FF4F0C94E0250C2D0F70872D8F71DB +:102E6000112331F00E943D1C802F0E949A155DC0F5 +:102E70000E945E1C802F0E94A11557C0112339F0BB +:102E8000011153C0872D8F710E94831C4EC00230E8 +:102E900008F04BC0F7CF112339F0872D8F710E94B6 +:102EA0003D1C43C01123C9F3872D8F710E945E1C06 +:102EB0003CC0112329F0872D8F710E94281C35C03A +:102EC0000E941E1C32C0112351F0172D1F71812F3B +:102ED0000E943D1C63E0812F0E94511D26C081E0AD +:102EE0000E945A1D023008F182E00E945A1D1DC046 +:102EF000112331F0002389F28C2D0E94831415C018 +:102F0000002391F28C2D0E944B150FC0472D4F705E +:102F10006C2DC7010E94F7060E94421B06C0472D78 +:102F20004F706C2DC7010E94D30BDD20F9F00E9479 +:102F30004D1D80FD1BC0F70112820E94471D0E949B +:102F40003D1CC7010E94C5170E94471D0F90DF91CD +:102F5000CF911F910F91FF90EF90DF90CF90BF9096 +:102F6000AF909F908F907F900C945E1C0F90DF919C +:102F7000CF911F910F91FF90EF90DF90CF90BF9076 +:102F8000AF909F908F907F9008950F931F93CF9352 +:102F9000DF93EC01888199812B813C81232BB9F04F +:102FA0009F3F11F48F3F99F0CE010E94640888235F +:102FB00071F0688179818A810E94431D8C010E9491 +:102FC000F81C0E94BF1BB801CE010E94A815DF911A +:102FD000CF911F910F9108950E941B1E0E942B1EDE +:102FE0000E94F01D0E94451E0E9408220E94572147 +:102FF00080E090E00E94891380E090E00C949F13A1 +:103000000E940B1E0C94EC170E94381D292F22954C +:103010002F7030E02C3031054CF42A3031056CF43F +:103020002250310922303105A8F407C02C30310577 +:1030300069F02F30310551F00DC0803F69F018F470 +:10304000803E40F409C0843F29F406C093FB8827E2 +:1030500080F9089580E0089581E00895CF93DF938B +:1030600000D000D01F92CDB7DEB70F900F900F9019 +:103070000F900F90DF91CF910895CF93DF9300D001 +:1030800000D000D0CDB7DEB726960FB6F894DEBFDD +:103090000FBECDBFDF91CF9108951F93CF93DF93E4 +:1030A000C091880116E080918901C81799F0D0E09D +:1030B0001C9FF0011D9FF00D1124E657FE4F40812B +:1030C000518162817381848195810E943D1821968E +:1030D000C770E9CFDF91CF911F9108954091BA0158 +:1030E0005091BB016091BC017091BD018091BE0106 +:1030F0009091BF010C943D188091BF0182958F7013 +:1031000009F054C08091BC01882309F44FC080911C +:103110008801A09189016091BA017091BB01409131 +:10312000BD015091BE01B6E08A1709F43FC090E09E +:1031300041155105C1F17F3F11F46F3FA1F1B89FD7 +:10314000F001B99FF00D1124E657FE4F2181721353 +:103150002AC02081621327C02281211124C023812B +:1031600034812417350710F421503109241B350B05 +:10317000283C3105C0F42091BF012F7020612093BD +:10318000BF0126E0289FF001299FF00D1124E1578F +:10319000FE4F80818F70806180838AEB91E00E9476 +:1031A000C5170C944D1801968770BECF0895CF9225 +:1031B000DF92EF92FF920F931F93CF93DF93CDB7E0 +:1031C000DEB762970FB6F894DEBF0FBECDBF8C019D +:1031D00085E0F801DE011D9601900D928A95E1F7D8 +:1031E000D8014C9111965C91119712966C9112979F +:1031F0001396CD90DC9014973091BA017091BB0179 +:103200008091BD019091BE01009709F46BC17F3F91 +:1032100019F43F3F09F466C1E090BC01EE2009F4C7 +:10322000C0C02091BF01C816D90628F0F601E81BDE +:10323000F90BCF0104C0809590958C0D9D1DFF2446 +:10324000F394883C910578F0F12C207F09F0C6C0FA +:103250007C2DD98AC88A89890E942E188AEB91E030 +:103260000E94C517B1C0822F807F09F046C0751338 +:1032700014C0341312C0611110C02F70206120934C +:10328000BF010E946E188AEB91E00E94C5178091E1 +:10329000BF01D80115968C932EC0CD2819F15F3F40 +:1032A00011F44F3FF9F0F62E61111CC08091880196 +:1032B0002091890136E0821709F45AC090E0389FC6 +:1032C000F001399FF00D1124E657FE4F718157131D +:1032D00006C07081471303C07281711103C001964B +:1032E0008770E9CFF62E662309F418C18091BF01DB +:1032F00081608093BF01F12C11C1751308C0341394 +:1033000006C0611104C08091BF01D801C3C04D87C0 +:103310005E878D859E856A8B0E9404186A89882342 +:10332000E1F16623D1F12091BF01822F82958F7048 +:1033300090E0029774F08091BA019091BB01988758 +:103340008F831986DB86CA862C87CE0107960E945A +:10335000C51786E0F801AAEBB1E001900D928A95BD +:10336000E1F70E947C180E946E18FF24F394D6C0E7 +:103370004D875E878D859E850E94381D292F229559 +:103380002F7030E0223031050CF0BCC09F7009F086 +:10339000B6C0805E883008F4C1C0C8010E94C5175D +:1033A000E4CFC816D90608F453C0F601E81BF90BA0 +:1033B000CF01883C910508F450C0F12C7C2DD98AAE +:1033C000C88A89890E942E18EAEBF1E086E0DF01C5 +:1033D0001D928A95E9F70E946E18A0C0751314C05B +:1033E000341312C0611110C08091BF01F8018583B0 +:1033F000C8010E94C51786E0EAEBF1E0DF011D92EB +:103400008A95E9F7FE2C8AC04D875E878D859E855B +:103410006A8B0E9404186A89882309F4BECF662348 +:1034200009F4BBCF2091BF01822F82958F7090E06D +:1034300002970CF48ECF8091BA019091BB019A83D0 +:1034400089831B82DD82CC822E83CE0101967FCFC1 +:10345000809590958C0D9D1DACCFF62E662309F4BA +:103460009CCF75132EC034132CC02091BF0120FDBA +:103470001FC0822F82958F70D9F0D80115962C939A +:1034800015978F3049F08F5F982F9295907F822FFC +:103490008F70892B15968C93C8010E94C51786E002 +:1034A000F801AAEBB1E001900D928A95E1F793CF74 +:1034B00086E0F801AAEBB1E001900D928A95E1F760 +:1034C0002DC04D875E878D859E850E9404188111D1 +:1034D00040CF8091BF0181608093BF01C8010E94ED +:1034E000C5171CC0662309F458CF4D875E878D85AC +:1034F0009E850E940418882309F44FCF2ACF81119A +:1035000048CF0CC0243031050CF047CF9F7009F430 +:1035100040CFF8019581907F09F03BCF8F2D6296C7 +:103520000FB6F894DEBF0FBECDBFDF91CF911F91D4 +:103530000F91FF90EF90DF90CF9008951F93CF935E +:10354000DF93CDB7DEB72C970FB6F894DEBF0FBE72 +:10355000CDBF4F83588769877A878B879C87CE0139 +:1035600007960E94D718882369F08F8198852A854D +:103570003B85232BF1F19F3F09F063C08F3F09F09A +:1035800060C037C086E0FE013796DE0111960190DB +:103590000D928A95E1F76F817885EA85FB853097F2 +:1035A00041F17F3F11F46F3F21F12091890130E01B +:1035B000C9010196877099274091880150E08417CE +:1035C000950709F447C069837A83FD83EC8396E00D +:1035D000929FD001939FB00D1124A657BE4FFE01BC +:1035E000319601900D929A95E1F7809389010E949E +:1035F0004D1816E080918801909189018917C1F1D9 +:10360000189FC001112486579E4F0E94D718882307 +:1036100079F1E09188011E9FF0011124E657FE4FD9 +:103620004081518162817381848195810E943D181E +:103630008091880190E00196877099278093880196 +:10364000D9CF4F81588569857A858B859C850E9465 +:103650003D18CFCF0E940018109289011092880166 +:10366000EAEBF1E086E0DF011D928A95E9F7C1CF30 +:103670002C960FB6F894DEBF0FBECDBFDF91CF9171 +:103680001F910895EF92FF920F931F93CF93DF93B3 +:103690008C01009709F46CC0F12CEE24E394E8014E +:1036A0002196F8018491843740F4843008F051C0A9 +:1036B000813081F0823019F15BC0853709F444C054 +:1036C000A8F19CE7980F903708F052C08F770E94BE +:1036D0004B1541C00E5F1F4FFE01C49180E28C0F5D +:1036E000883048F4C7708E2D01C0880FCA95EAF75C +:1036F0000E941E1E14C08C2F0E9483142DC00E5FCA +:103700001F4FFE01C49180E28C0F883058F4C770BF +:103710008E2D01C0880FCA95EAF70E94241E0E94D0 +:10372000451E1AC08C2F0E944B1516C00E5F1F4FEE +:10373000FE01C491CC2381F08FE99FE00197F1F75E +:1037400000C00000C150F6CF0E5F1F4FFE01F49085 +:1037500003C00E9483148E018F2D882309F49FCF0C +:10376000EFE9FFE03197F1F700C000008150F5CF9D +:10377000DF91CF911F910F91FF90EF9008950895E1 +:103780006093C4017093C5018093C6019093C701F3 +:103790000C94EC170F931F930091C4011091C50175 +:1037A0002091C6013091C701DC01CB01802B912B08 +:1037B000A22BB32B8093C4019093C501A093C601A3 +:1037C000B093C7011F910F910C94EC170F931F93A7 +:1037D0000091C4011091C5012091C6013091C7012B +:1037E000DC01CB0180239123A223B3238093C40166 +:1037F0009093C501A093C601B093C7011F910F918B +:103800000C94EC170F931F930091C4011091C50104 +:103810002091C6013091C701DC01CB01802791279F +:10382000A227B3278093C4019093C501A093C6013A +:10383000B093C7011F910F910C94EC171092C00127 +:103840001092C1011092C2011092C3010C94EC17A6 +:1038500041E050E060E070E004C0440F551F661F77 +:10386000771F8A95D2F74093C0015093C1016093AE +:10387000C2017093C3010C94EC1741E050E060E08A +:1038800070E004C0440F551F661F771F8A95D2F75A +:103890008091C0019091C101A091C201B091C3017A +:1038A000482B592B6A2B7B2B4093C0015093C101AD +:1038B0006093C2017093C3010C94EC1741E050E097 +:1038C00060E070E004C0440F551F661F771F8A95A3 +:1038D000D2F740955095609570958091C001909178 +:1038E000C101A091C201B091C301482359236A23A9 +:1038F0007B234093C0015093C1016093C201709338 +:10390000C3010C94EC1741E050E060E070E004C0AB +:10391000440F551F661F771F8A95D2F78091C0010B +:103920009091C101A091C201B091C30148275927CC +:103930006A277B274093C0015093C1016093C20165 +:103940007093C3010C94EC170F931F930091C00167 +:103950001091C1012091C2013091C301DC01CB0162 +:10396000802B912BA22BB32B8093C0019093C1018C +:10397000A093C201B093C3011F910F910C94EC1757 +:103980000F931F930091C0011091C1012091C201BA +:103990003091C301DC01CB0180239123A223B32307 +:1039A0008093C0019093C101A093C201B093C30161 +:1039B0001F910F910C94EC170F931F930091C0016E +:1039C0001091C1012091C2013091C301DC01CB01F2 +:1039D00080279127A227B3278093C0019093C1012C +:1039E000A093C201B093C3011F910F910C94EC17E7 +:1039F0000895CF92DF92EF92FF920F931F93CF9390 +:103A0000DF938C01C090C401D090C501E090C60145 +:103A1000F090C7018091C0019091C101A091C201B5 +:103A2000B091C301C82AD92AEA2AFB2ACFE1D0E003 +:103A3000D701C6010C2E04C0B695A795979587951A +:103A40000A94D2F780FF06C0B8018C2F0E94520A58 +:103A5000019721F4219760F780E001C08C2FDF915E +:103A6000CF911F910F91FF90EF90DF90CF9008952D +:103A7000CF93DF93EC010E94F91CBE010E94520A11 +:103A8000DF91CF910895CB010E94381D0895809158 +:103A9000C80185958595859508958091C8018770A1 +:103AA000089598E0899F90011124262B2093C80146 +:103AB0000C943D1C2091C801809582238093C801FD +:103AC000982F977069F430E0482F552747FD50959F +:103AD0002417350729F08595859585950C945E1CEE +:103AE00008959091C801977081E009F480E00895ED +:103AF00090910C01992321F090910D01911109C031 +:103B000020910E0130910F01F90132969FEF40E0B4 +:103B10001FC0982F9695969596959F3050F5E091F9 +:103B20000E01F0910F01E90FF11D877021E030E0E7 +:103B3000A90102C0440F551F8A95E2F7CA0191817D +:103B4000892B818308959F3F39F04F5F4E3041F0BC +:103B500051915813F8CF0DC05111F7CF942FF5CFD5 +:103B60009F3F39F0F901E90FF11D97FDFA95828326 +:103B70000895089590910C01992321F090910D01E1 +:103B8000911109C020910E0130910F01F901329677 +:103B9000205F3F4F1FC0982F9695969596959F3022 +:103BA000F0F4E0910E01F0910F01E90FF11D877023 +:103BB00021E030E0A90102C0440F551F8A95E2F7C9 +:103BC000CA01809591818923818308953196E217F6 +:103BD000F30729F090819813F9CF1082F7CF089559 +:103BE00081E090E0E0910E01F0910F01E80FF91FE4 +:103BF0001082019680319105A9F708959091DC011A +:103C0000892B8093DC01089580959091DC018923B4 +:103C10008093DC0108951092DC0108959091DB01FE +:103C2000892B8093DB01089580959091DB01892396 +:103C30008093DB0108951092DB0108959091DA01E1 +:103C4000892B8093DA01089580959091DA01892378 +:103C50008093DA0108951092DA0108958093C901E2 +:103C600008951092C901089580910E0190910F015D +:103C7000FC0131969C01205F3F4F80E091919111B2 +:103C80008F5FE217F307D1F70895E0910E01F091ED +:103C90000F018091DC018083E0910E01F0910F0112 +:103CA00090818091DB01892B8083E0910E01F0915E +:103CB0000F0190818091DA01892B80838091C90165 +:103CC000882361F0E0910E01F0910F019081892B22 +:103CD00080830E94341E81111092C90180910E01CF +:103CE00090910F010C94731320E0009739F0AC0110 +:103CF00041505109842395232F5FF7CF822F0895D8 +:103D0000CF92DF92EF92FF926C01EE24FF24C11458 +:103D1000D104E104F10421F0C701B60120E101C0A2 +:103D200020E0C72ED82EE92EFF24C114D104E104CF +:103D3000F10419F0285FC701B6016B017C0154E062 +:103D4000F694E794D794C7945A95D1F7C114D10447 +:103D5000E104F10419F02C5FC701B6016B017C018D +:103D600042E0F694E794D794C7944A95D1F7C114EA +:103D7000D104E104F10419F02E5FC701B601DC01A2 +:103D8000CB01B695A79597958795892B8A2B8B2B79 +:103D900009F02F5F822FFF90EF90DF90CF90089572 +:103DA0008091F601843021F11092DE0120E488E157 +:103DB00090E00FB6F894A895809360000FBE209312 +:103DC000600080E00E94640C83B7817F846083BFC1 +:103DD00083B7816083BF7894889583B78E7F83BFD4 +:103DE00088E10FB6F89480936000109260000FBED7 +:103DF000089508950E941A050E942D050E94F91E3B +:103E00000E94220691E0811101C090E0892F08955F +:103E10000E9400180E9467130C94640C82E084BD19 +:103E200093E095BD9AEF97BD80936E0008952FB7EC +:103E3000F8948091DF019091E001A091E101B091AF +:103E4000E2012FBF0895CF92DF92EF92FF920F937E +:103E50001F932FB7F8944091DF015091E0016091DA +:103E6000E1017091E2012FBF6A017B01EE24FF2482 +:103E70008C0120E030E0C016D106E206F30610F413 +:103E8000415051099A01281B390BC9011F910F910B +:103E9000FF90EF90DF90CF9008951F920F920FB692 +:103EA0000F9211248F939F93AF93BF938091DF0163 +:103EB0009091E001A091E101B091E2010196A11D74 +:103EC000B11D8093DF019093E001A093E101B093D5 +:103ED000E201BF91AF919F918F910F900FBE0F9014 +:103EE0001F9018950E946410F8942FEF87EA91E6CE +:103EF000215080409040E1F700C0000087E090EB47 +:103F0000DC018093FF0190930002A0930102B09323 +:103F100002029CE088E10FB6F894A89580936000B7 +:103F20000FBE90936000FFCF0E94CC1F811102C092 +:103F30000E94B21F0E94D71F8093DD010E94DF1FE5 +:103F400090E09093F1018093F00187FB882780F93E +:103F500080930D010E94DB1F682F70E080E090E0ED +:103F60000C94C01B6DEE7EEF80E090E00E941A265C +:103F700060E082E090E00E94082660E083E090E04C +:103F80000E94082660E084E090E00E94082660E03D +:103F900085E090E00C94082680E090E00E940226E4 +:103FA00021E08D3E9E4F09F020E0822F089582E0AF +:103FB00090E00C94FA2583E090E00C94FA2584E0DC +:103FC00090E00C94FA25682F84E090E00C94082689 +:103FD0008091E50180FF0BC06091130185E0689F2F +:103FE000B001112475956795759567952BC081FF74 +:103FF00009C06091130185E0689FB0011124759597 +:10400000679520C082FF07C06091130185E0689F1B +:10401000B001112417C09091E6019923D1F060916D +:104020001201961788F72091130185E0289F9001CF +:104030001124929FA001939F500D112470E0CA019A +:104040000E94CC256038710540F46115710539F086 +:1040500002C065E070E0862F08958FE7089581E043 +:1040600008958091E50180FF08C06091110170E022 +:10407000759567957595679521C081FF06C060911C +:10408000110170E07595679519C082FF04C06091B9 +:10409000110170E010C09091E6019923C1F0609188 +:1040A00010019617A0F780911101899FC00111247A +:1040B00070E00E94CC256038710528F46115710507 +:1040C00021F0862F08958FE7089581E0089561E03B +:1040D00070E0F4CF803F21F40E94E81F819504C076 +:1040E000813F29F40E94E81F8093E9010895823FEF +:1040F00021F40E94E81F819504C0833F29F40E94A7 +:10410000E81F8093E8010895893F19F40E94312047 +:1041100005C08A3F31F40E94312081958093EA01E5 +:1041200008958B3F21F40E943120819504C08C3F7B +:1041300029F40E9431208093EB010895843F21F4FB +:104140008091E701816017C0853F21F48091E701EC +:10415000826011C0863F21F48091E70184600BC02A +:10416000873F21F48091E701886005C0883F31F4E2 +:104170008091E70180618093E70108958D3F21F4EC +:104180008091E50181600BC08E3F21F48091E501B3 +:10419000826005C08F3F29F48091E501846080939F +:1041A000E5010895803F39F48091E90187FF6CC0F3 +:1041B0001092E90169C0813F29F48091E901181644 +:1041C000BCF362C09091E801823F29F497FF5CC084 +:1041D0001092E80159C0833F19F41916CCF354C06A +:1041E000893F41F48091EA0118160CF04DC01092FD +:1041F000EA014AC08A3F29F48091EA0187FF44C05E +:10420000F6CF8B3F39F48091EB0187FF3DC01092D0 +:10421000EB013AC08C3F29F48091EB011816BCF3F6 +:1042200033C0843F21F48091E7018E7F17C0853F22 +:1042300021F48091E7018D7F11C0863F21F48091A8 +:10424000E7018B7F0BC0873F21F48091E701877FD7 +:1042500005C0883F31F48091E7018F7E8093E701AC +:1042600013C08D3F21F48091E5018E7F0BC08E3FFE +:1042700021F48091E5018D7F05C08F3F29F4809165 +:10428000E5018B7F8093E5018091E80181110EC0EB +:104290008091E90181110AC08091EA01811106C073 +:1042A0008091EB01811102C01092E601089587EE22 +:1042B00091E00E947E130E94171F9093E401809367 +:1042C000E30108951F93CF93DF938091E3019091D1 +:1042D000E4010E94231FAC019091E601992321F093 +:1042E0002091140130E006C0209115018AE0289F3A +:1042F000900111244217530708F486C08091E80109 +:10430000C091E901D091EA011091EB01811107C040 +:10431000C11176C0D11174C0111172C075C09F3F18 +:1043200019F09F5F9093E601181624F40E94E81F8D +:104330008093E8018091E80187FF05C00E94E81F93 +:1043400081958093E8011C1624F40E94E81F809355 +:10435000E9018091E90187FF05C00E94E81F81956E +:104360008093E9016091E801662339F1C091E90188 +:10437000CC2319F1772767FD7095872F972F0E941F +:10438000DD2423E333E343E35FE30E9441250E94FE +:10439000AA246093E8016C2F772767FD7095872F1B +:1043A000972F0E94DD2423E333E343E35FE30E947E +:1043B00041250E94AA246093E9011D1624F40E945D +:1043C00031208093EA018091EA0187FF05C00E94B5 +:1043D000312081958093EA01111624F40E94312046 +:1043E0008093EB018091EB0187FF05C00E94312093 +:1043F00081958093EB01DF91CF911F910C94572110 +:104400009F3F09F08ECF96CFDF91CF911F910895F6 +:10441000E7EEF1E085E0DF011D928A95E9F7109261 +:10442000E6011092E5010895833081F128F481308E +:1044300059F08230D1F00895853009F449C0B8F1BF +:10444000863009F456C0089580911501262F30E07A +:10445000280F311D2F3F310524F4680F609315019B +:1044600008958FEF80931501089580911401262FF0 +:1044700030E0280F311D2F3F310524F4680F609381 +:10448000140108958FEF8093140108958091130112 +:10449000262F30E0280F311D2F3F310524F4680FFF +:1044A0006093130108958FEF809313010895809115 +:1044B0001201262F30E0280F311D2F3F310524F443 +:1044C000680F6093120108958FEF80931201089591 +:1044D00080911101262F30E0280F311D2F3F31052B +:1044E00024F4680F6093110108958FEF80931101F8 +:1044F000089580911001262F30E0280F311D2F3FA5 +:10450000310524F4680F6093100108958FEF8093B4 +:1045100010010895833011F128F4813049F0823080 +:1045200091F00895853081F120F18630C1F1089530 +:1045300080911501681720F4861B8093150108955A +:1045400010921501089580911401681720F4861BBC +:10455000809314010895109214010895809113011D +:10456000681720F4861B809313010895109213019D +:10457000089580911201681720F4861B8093120120 +:10458000089510921201089580911101681720F486 +:10459000861B809311010895109211010895809156 +:1045A0001001681720F4861B809310010895109263 +:1045B000100108950F931F938D3109F471C008F015 +:1045C00045C0803109F485C008F5873009F46FC013 +:1045D00068F4863009F0ADC08091DD01817F8E7F67 +:1045E0008093DD0181E08093ED01A4C08B3009F45C +:1045F0009EC08E3009F09DC08091DD0182FB222794 +:1046000020F991E0922790FB82F96CC0863109F481 +:104610008EC060F4813109F08CC00E940018909126 +:104620000D0181E0892780930D0181C0893109F452 +:104630007EC08B3109F07DC08091DD0181FB222796 +:1046400020F991E0922790FB81F94CC0853309F461 +:1046500066C048F4873209F462C008F44FC089325A +:1046600009F45DC066C0833438F48A3308F044C06E +:10467000883309F45CC05DC0833409F450C08834C9 +:1046800009F057C00E9400180FEF13ED20E301500E +:1046900010402040E1F700C000000E94721F47C098 +:1046A0000E9464240E9467130E94640C40C0909191 +:1046B000DD01892F8095817080FB90F929F096604B +:1046C00098609093DD0136C0997F977F9093DD01CC +:1046D0002EC08091DD0183FB222720F991E09227F3 +:1046E00090FB83F98093DD01992309F18091DD012D +:1046F00081608093DD011BC0895301C08D5141E071 +:1047000050E060E070E08A019B0104C0000F111FBF +:10471000221F331F8A95D2F7C901B80104C061E096 +:1047200070E080E090E00E94C01B0E94001881E0D1 +:1047300001C080E01F910F91089580E0089580E00E +:1047400008958E518A3030F4E82FF0E0E65DFE4F98 +:104750008081089580E00895CF93C82F8091ED0166 +:10476000813079F018F08230E9F186C0E0910E01D5 +:10477000F0910F018081813169F0823209F07EC0B1 +:1047800009C0E0910E01F0910F018081813111F09B +:10479000823261F48C2F0E949D23811104C08C2FE2 +:1047A0000E94DA221DC081E090E01AC08C2F0E9486 +:1047B0009F23811114C0C43179F048F4CB3079F0D3 +:1047C000C03109F05FC082E08093ED0108C0C932BA +:1047D00019F0C83321F056C01092ED0153C081E0AA +:1047E000817052C0C93281F110F5C43169F1A8F469 +:1047F000C73009F045C08AE08093150194E1909399 +:10480000140193E0909313018093120188E0809348 +:10481000110188E28093100133C082EE8C0F863044 +:1048200078F58C2F0E94A1238093EC0129C0CE340F +:10483000E9F020F4CB3421F56AE013C0C13579F0FA +:10484000C235F1F461E00DC08091EC01882319F0CC +:104850001092EC0115C081E08093ED0115C061E07C +:1048600006C08091EC010E9414220AC06AE0809187 +:10487000EC010E948A2204C01092ED0180E004C085 +:1048800081E002C080E0ACCFCF910895E1E8F0E094 +:104890008081886080838081816080838FB7F89475 +:1048A00093E09093890090ED909388008FBF0895D6 +:1048B000EFE6F0E08081826080830895EFE6F0E02B +:1048C00080818D7F80830895EFE6F0E0908182E023 +:1048D0008927808308951F920F920FB60F9211249B +:1048E0002F933F934F935F936F937F938F939F93F8 +:1048F000AF93BF93EF93FF938091EE019091EF01FF +:1049000001969093EF018093EE01811103C082E044 +:104910000E94640CE091EF01E695E695F0E0E55B1E +:10492000F74FE4918091EE018E1303C080E00E9466 +:10493000640CFF91EF91BF91AF919F918F917F9107 +:104940006F915F914F913F912F910F900FBE0F90FC +:104950001F90189504D06894B1118DC0089570D03F +:1049600088F09F5790F0B92F9927B751A0F0D1F058 +:10497000660F771F881F991F1AF0BA95C9F712C0E2 +:10498000B13081F077D0B1E0089574C0672F782FEF +:104990008827B85F39F0B93FCCF38695779567954E +:1049A000B395D9F73EF490958095709561957F4FBA +:1049B0008F4F9F4F0895E89409C097FB3EF4909560 +:1049C0008095709561957F4F8F4F9F4F9923A9F0E8 +:1049D000F92F96E9BB279395F69587957795679577 +:1049E000B795F111F8CFFAF4BB0F11F460FF1BC0BB +:1049F0006F5F7F4F8F4F9F4F16C0882311F096E94E +:104A000011C0772321F09EE8872F762F05C06623FB +:104A100071F096E8862F70E060E02AF09A95660FB4 +:104A2000771F881FDAF7880F9695879597F908956D +:104A300057FD9058440F551F59F05F3F71F047954F +:104A4000880F97FB991F61F09F3F79F08795089534 +:104A5000121613061406551FF2CF4695F1DF08C053 +:104A6000161617061806991FF1CF86957105610570 +:104A700008940895E894BB2766277727CB0197F918 +:104A800008950BD078C069D028F06ED018F0952327 +:104A900009F05AC05FC01124EECFCADFA0F3959F82 +:104AA000D1F3950F50E0551F629FF001729FBB2715 +:104AB000F00DB11D639FAA27F00DB11DAA1F649FC1 +:104AC0006627B00DA11D661F829F2227B00DA11D74 +:104AD000621F739FB00DA11D621F839FA00D611DFA +:104AE000221F749F3327A00D611D231F849F600D1B +:104AF000211D822F762F6A2F11249F5750408AF054 +:104B0000E1F088234AF0EE0FFF1FBB1F661F771FDF +:104B1000881F91505040A9F79E3F510570F014C076 +:104B2000AACF5F3FECF3983EDCF3869577956795C7 +:104B3000B795F795E7959F5FC1F7FE2B880F911DFD +:104B40009695879597F9089597F99F6780E870E0A3 +:104B500060E008959FEF80EC089500240A941616F3 +:104B6000170618060906089500240A94121613065B +:104B7000140605060895092E0394000C11F48823E9 +:104B800052F0BB0F40F4BF2B11F460FF04C06F5F05 +:104B90007F4F8F4F9F4F089597FB072E16F4009479 +:104BA00007D077FD09D00E94E62507FC05D03EF42A +:104BB000909581959F4F0895709561957F4F0895C9 +:104BC000EE0FFF1F0590F491E02D0994AA1BBB1B6B +:104BD00051E107C0AA1FBB1FA617B70710F0A61BFD +:104BE000B70B881F991F5A95A9F780959095BC011E +:104BF000CD010895F999FECF92BD81BDF89A99270C +:104C000080B50895A8E1B0E042E050E00C9422267F +:104C1000262FF999FECF92BD81BDF89A019700B475 +:104C2000021639F01FBA20BD0FB6F894FA9AF99A15 +:104C30000FBE08950196272F0E9409260C9408267E +:104C4000DC01CB01FC01F999FECF06C0F2BDE1BD4C +:104C5000F89A319600B40D9241505040B8F708953B +:044C6000F894FFCFF6 +:104C64000220660CF40CD10C9D0C690C0101CA01E4 +:104C740028080A03140A404D36390B08BE07880772 +:104C84004F07E206FB0614072D070102030405067D +:044C94000708090004 +:00000001FF diff --git a/keyboards/ergodox_ez/keymaps/osx_de_experimental/keymap.c b/keyboards/ergodox_ez/keymaps/osx_de_experimental/keymap.c new file mode 100644 index 0000000000..21d695894a --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/osx_de_experimental/keymap.c @@ -0,0 +1,597 @@ +#include "ergodox_ez.h" +#include "debug.h" +#include "action_layer.h" +#include "keymap_neo2.h" +#include "keymap_uk.h" +#include "keymap_colemak.h" +#include "keymap_nordic.h" +#include "keymap_dvorak.h" +#include "keymap_german.h" +#include "keymap_norwegian.h" +#include "keymap_fr_ch.h" +#include "keymap_german_osx.h" +#include "keymap_spanish.h" +#include "keymap_bepo.h" + + +/** +* This layout was generated using the ErgodoxLayoutGenerator (ELG). You can download it from https://github.com/sboesebeck/ErgodoxLayoutGenerator/releases +* documentation about it can be found here https://boesebeck.name/2016/04/16/ergodoxlayoutgenerator-documentation/ +* Thanks to the team of Erez Zukerman for building the great Ergodox-EZ! +* +* use at own risk! +**/ + +#define BASE 0 +#define SYMB 1 +#define MDIA 2 +#define SMLY 3 +#define NUMB 4 +#define EGOS 5 + +#define SMLY_TOG_QUOT 0 + +#define M_TOGGLE_5 1 + +#define TGH_NUM 2 + +#define M_DE_OSX_PLUS_CTRLALT 3 + +#define SM_KISS 4 + +#define SM_FROWN 5 + +#define SM_CRY 6 + +#define SM_SMILE 7 + +#define SM_SMIRK 8 + +#define M_LGUI_SHFT 9 + +#define SM_HEART 10 + +#define TOG_HLD_MDIA 11 + +#define SM_LAUGH 12 + +#define SM_SAD 13 + +#define M_DE_OSX_CIRC_CTRLCMD 14 + +#define M_MEH_SH_ACUT 15 + + +//Layout keymap.c generated with ErgodoxLayoutGenerator V1.0BETA1 +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/** +* Layer: BASE +* /-------------------//-------------------//-------------------//-------------------//-------------------//-------------------//-------------------/ /-------------------//-------------------//-------------------//-------------------//-------------------//-------------------//-------------------/ +* | ESC | 1 | 2 | 3 | 4 | 5 | Hold or toggle | | Hold or toggle | 6 | 7 | 8 | 9 | 0 | ß | +* | | | | | | | Layer NUMB | | Layer MDIA | | | | | | | +* /-------------------//-------------------//-------------------//-------------------//-------------------//-------------------//-------------------/ /-------------------//-------------------//-------------------//-------------------//-------------------//-------------------//-------------------/ +* | TAB | Q | W | E | R | T | Cmd | | Cmd | Z | U | I | O | P | Ü | +* | | | | | | | | | | | | | | | | +* /-------------------//-------------------//-------------------//-------------------//-------------------//-------------------/\-------------------\ \-------------------\/-------------------//-------------------//-------------------//-------------------//-------------------//-------------------/ +* | Alt | A | S | D | F | G | | H | J | K | L | Ö | Ä | +* | | | | | | | | | | | | | ALT | +* /-------------------//-------------------//-------------------//-------------------//-------------------//-------------------//-------------------/ /-------------------//-------------------//-------------------//-------------------//-------------------//-------------------//-------------------/ +* | Shift | Y | X | C | V | B | Alt | | Alt | N | M | , | . | - | Shift | +* | | Ctrl | | | | | | | | | | | | Ctrl | | +* \-------------------\\-------------------\\-------------------\\-------------------\\-------------------\\-------------------\\-------------------\ \-------------------\\-------------------\\-------------------\\-------------------\\-------------------\\-------------------\\-------------------\ +* +* +* /-------------------//-------------------//-------------------//-------------------//-------------------/ /-------------------//-------------------//-------------------//-------------------//-------------------/ +* | < | LongPress / Type | LongPress / Type | Shift+Ctrl | Type | | # | ACUT | CMD+Shift | ALT+Shift | + | +* | SYMB | DE_OSX_CIRC_CTRLCMD| DE_OSX_PLUS_CTRAlt | | Toggle SMLY | | Meh | Hyper | | | SYMB | +* \-------------------\\-------------------\\-------------------\\-------------------\/-------------------//-------------------/ /-------------------//-------------------/ \-------------------\\-------------------\\-------------------\\-------------------\\-------------------\ +* | HOME | END | | LEFT | RIGHT | +* | | | | | | +* \-------------------\/-------------------/ /-------------------/\-------------------\ +* | PGUP | | UP | +* | | | | +* /-------------------//-------------------//-------------------/ /-------------------//-------------------//-------------------/ +* | BSPC | DEL | PGDN | | DOWN | ENT | SPC | +* | | | | | | | | +* \-------------------\\-------------------\\-------------------\ \-------------------\\-------------------\\-------------------\ +* +* +**/ +[BASE]=KEYMAP( +//left half + KC_ESC, DE_OSX_1, DE_OSX_2, DE_OSX_3, DE_OSX_4, DE_OSX_5, M(TGH_NUM), + KC_TAB, DE_OSX_Q, DE_OSX_W, DE_OSX_E, DE_OSX_R, DE_OSX_T, KC_LGUI, + KC_LALT, DE_OSX_A, DE_OSX_S, DE_OSX_D, DE_OSX_F, DE_OSX_G, + KC_LSFT, CTL_T(DE_OSX_Y), DE_OSX_X, DE_OSX_C, DE_OSX_V, DE_OSX_B, KC_LALT, + LT(SYMB,DE_OSX_LESS), M(M_DE_OSX_CIRC_CTRLCMD), M(M_DE_OSX_PLUS_CTRLALT), LSFT(KC_LCTRL), M(SMLY_TOG_QUOT), + KC_HOME, KC_END, + KC_PGUP, + KC_BSPC, KC_DEL, KC_PGDN, + //right half + M(TOG_HLD_MDIA), DE_OSX_6, DE_OSX_7, DE_OSX_8, DE_OSX_9, DE_OSX_0, DE_OSX_SS, + KC_RGUI, DE_OSX_Z, DE_OSX_U, DE_OSX_I, DE_OSX_O, DE_OSX_P, DE_OSX_UE, + DE_OSX_H, DE_OSX_J, DE_OSX_K, DE_OSX_L, DE_OSX_OE, ALT_T(DE_OSX_AE), + KC_RALT, DE_OSX_N, DE_OSX_M, DE_OSX_COMM, DE_OSX_DOT, CTL_T(DE_OSX_MINS), KC_RSFT, + MEH_T(DE_OSX_HASH), ALL_T(DE_OSX_ACUT), LGUI(KC_LSFT), LALT(KC_LSFT), LT(SYMB,DE_OSX_PLUS), + KC_LEFT, KC_RIGHT, + KC_UP, + KC_DOWN, KC_ENT, KC_SPC), +/** +* Layer: SYMB +* /-----------//-----------//-----------//-----------//-----------//-----------//-----------/ /-----------//-----------//-----------//-----------//-----------//-----------//-----------/ +* | APPLICATION| F1 | F2 | F3 | F4 | F5 | F5 | | F6 | F6 | F7 | F8 | F9 | F10 | F11 | +* | | | | | | | | | | | | | | | | +* /-----------//-----------//-----------//-----------//-----------//-----------//-----------/ /-----------//-----------//-----------//-----------//-----------//-----------//-----------/ +* | | < | > | ! | ? | | | | | \ | [ | ] | < | > | ! | +* | | | | | | | | | | | | | | | | +* /-----------//-----------//-----------//-----------//-----------//-----------/\-----------\ \-----------\/-----------//-----------//-----------//-----------//-----------//-----------/ +* | | # | $ | \ | / | . | | / | ( | ) | { | } | # | +* | | | | | | | | | | | | | | +* /-----------//-----------//-----------//-----------//-----------//-----------//-----------/ /-----------//-----------//-----------//-----------//-----------//-----------//-----------/ +* | | | < | % | | | ~ | | | | | | ~ | | | | | +* | | | | | | | | | | | | | | | | +* \-----------\\-----------\\-----------\\-----------\\-----------\\-----------\\-----------\ \-----------\\-----------\\-----------\\-----------\\-----------\\-----------\\-----------\ +* +* +* /-----------//-----------//-----------//-----------//-----------/ /-----------//-----------//-----------//-----------//-----------/ +* | | | | | | | ' | DQOT | | Toggle 5 | | +* | | | | | | | | | | | | +* \-----------\\-----------\\-----------\\-----------\/-----------//-----------/ /-----------//-----------/ \-----------\\-----------\\-----------\\-----------\\-----------\ +* | | | | F13 | F12 | +* | | | | | | +* \-----------\/-----------/ /-----------/\-----------\ +* | | | F14 | +* | | | | +* /-----------//-----------//-----------/ /-----------//-----------//-----------/ +* | | DEL | | | F15 | | | +* | | | | | | | | +* \-----------\\-----------\\-----------\ \-----------\\-----------\\-----------\ +* +* +**/ +[SYMB]=KEYMAP( +//left half + KC_APPLICATION, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F5, + KC_TRNS, DE_OSX_LESS, DE_OSX_MORE, DE_OSX_EXLM, DE_OSX_QST, KC_TRNS, KC_TRNS, + KC_TRNS, DE_OSX_HASH, DE_OSX_DLR, DE_OSX_BSLS, DE_OSX_SLSH, KC_DOT, + KC_TRNS, KC_TRNS, DE_OSX_LESS, DE_OSX_PERC, DE_OSX_PIPE, DE_OSX_TILD, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_DEL, KC_TRNS, + //right half + KC_F6, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + KC_TRNS, DE_OSX_BSLS, DE_OSX_LBRC, DE_OSX_RBRC, DE_OSX_LESS, DE_OSX_MORE, DE_OSX_EXLM, + DE_OSX_SLSH, DE_OSX_LPRN, DE_OSX_RPRN, DE_OSX_LCBR, DE_OSX_RCBR, DE_OSX_HASH, + KC_TRNS, DE_OSX_PIPE, DE_OSX_TILD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + DE_OSX_QUOT, DE_OSX_DQOT, KC_TRNS, M(M_TOGGLE_5), KC_TRNS, + KC_F13, KC_F12, + KC_F14, + KC_F15, KC_TRNS, KC_TRNS), +/** +* Layer: MDIA +* /-----//-----//-----//-----//-----//-----//-----/ /-----//-----//-----//-----//-----//-----//-----/ +* | | | | | | | | | | | | | | | | +* | | | | | | | | | | | | | | | | +* /-----//-----//-----//-----//-----//-----//-----/ /-----//-----//-----//-----//-----//-----//-----/ +* | | | BTN1 | U | BTN2 | U | | | | | | | | | | +* | | | | | | | | | | | | | | | | +* /-----//-----//-----//-----//-----//-----/\-----\ \-----\/-----//-----//-----//-----//-----//-----/ +* | | | L | D | R | D | | | | | | | | +* | | | | | | | | | | | | | | +* /-----//-----//-----//-----//-----//-----//-----/ /-----//-----//-----//-----//-----//-----//-----/ +* | | | L | D | R | BTN3 | | | | | | | | UP | | +* | | | | | | | | | | | | | | | | +* \-----\\-----\\-----\\-----\\-----\\-----\\-----\ \-----\\-----\\-----\\-----\\-----\\-----\\-----\ +* +* +* /-----//-----//-----//-----//-----/ /-----//-----//-----//-----//-----/ +* | | | | | | | | | LEFT | DOWN | RIGHT| +* | | | | | | | | | | | | +* \-----\\-----\\-----\\-----\/-----//-----/ /-----//-----/ \-----\\-----\\-----\\-----\\-----\ +* | | | | MPRV | MNXT | +* | | | | | | +* \-----\/-----/ /-----/\-----\ +* | | | VOLU | +* | | | | +* /-----//-----//-----/ /-----//-----//-----/ +* | | | | | VOLD | MUTE | MPLY | +* | | | | | | | | +* \-----\\-----\\-----\ \-----\\-----\\-----\ +* +* +**/ +[MDIA]=KEYMAP( +//left half + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_BTN1, KC_MS_U, KC_BTN2, KC_WH_U, KC_TRNS, + KC_TRNS, KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_WH_D, + KC_TRNS, KC_TRNS, KC_WH_L, KC_WH_D, KC_WH_R, KC_BTN3, 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 half + 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_UP, KC_TRNS, + KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT, + KC_MPRV, KC_MNXT, + KC_VOLU, + KC_VOLD, KC_MUTE, KC_MPLY), +/** +* Layer: SMLY +* /--------//--------//--------//--------//--------//--------//--------/ /--------//--------//--------//--------//--------//--------//--------/ +* | | | | | | | | | Typing | Typing | Typing | | | | | +* | | | | | | | | | SM_SMILE| SM_SMIRK| SM_LAUGH| | | | | +* /--------//--------//--------//--------//--------//--------//--------/ /--------//--------//--------//--------//--------//--------//--------/ +* | | | | | | | | | | Typing | Typing | Typing | | | | +* | | | | | | | | | | SM_FROWN| SM_SAD | SM_CRY | | | | +* /--------//--------//--------//--------//--------//--------/\--------\ \--------\/--------//--------//--------//--------//--------//--------/ +* | | | | | | | | Typing | Typing | | | | | +* | | | | | | | | SM_HEART| SM_KISS | | | | | +* /--------//--------//--------//--------//--------//--------//--------/ /--------//--------//--------//--------//--------//--------//--------/ +* | | | | | | | | | | | | | | | | +* | | | | | | | | | | | | | | | | +* \--------\\--------\\--------\\--------\\--------\\--------\\--------\ \--------\\--------\\--------\\--------\\--------\\--------\\--------\ +* +* +* /--------//--------//--------//--------//--------/ /--------//--------//--------//--------//--------/ +* | | | | | | | | | | | | +* | | | | | | | | | | | | +* \--------\\--------\\--------\\--------\/--------//--------/ /--------//--------/ \--------\\--------\\--------\\--------\\--------\ +* | | | | | | +* | | | | | | +* \--------\/--------/ /--------/\--------\ +* | | | | +* | | | | +* /--------//--------//--------/ /--------//--------//--------/ +* | | | | | | | | +* | | | | | | | | +* \--------\\--------\\--------\ \--------\\--------\\--------\ +* +* +**/ +[SMLY]=KEYMAP( +//left half + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + //right half + M(SM_SMILE), M(SM_SMIRK), M(SM_LAUGH), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, M(SM_FROWN), M(SM_SAD), M(SM_CRY), KC_TRNS, KC_TRNS, KC_TRNS, + M(SM_HEART), M(SM_KISS), 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), +/** +* Layer: NUMB +* /----//----//----//----//----//----//----/ /----//----//----//----//----//----//----/ +* | | | | | | | | | | F6 | F7 | F8 | F9 | F10 | F11 | +* | | | | | | | | | | | | | | | | +* /----//----//----//----//----//----//----/ /----//----//----//----//----//----//----/ +* | | | | UP | | | | | | / | 7 | 8 | 9 | * | F12 | +* | | | | | | | | | | | | | | | | +* /----//----//----//----//----//----/\----\ \----\/----//----//----//----//----//----/ +* | | | LEFT| DOWN| RGHT| | | / | 4 | 5 | 6 | + | - | +* | | | | | | | | | | | | | | +* /----//----//----//----//----//----//----/ /----//----//----//----//----//----//----/ +* | | | | | | | | | | % | 1 | 2 | 3 | | | +* | | | | | | | | | | | | | | | | +* \----\\----\\----\\----\\----\\----\\----\ \----\\----\\----\\----\\----\\----\\----\ +* +* +* /----//----//----//----//----/ /----//----//----//----//----/ +* | | | | | | | 0 | . | , | = | | +* | | | | | | | | | | | | +* \----\\----\\----\\----\/----//----/ /----//----/ \----\\----\\----\\----\\----\ +* | | | | | | +* | | | | | | +* \----\/----/ /----/\----\ +* | | | | +* | | | | +* /----//----//----/ /----//----//----/ +* | | | | | | | | +* | | | | | | | | +* \----\\----\\----\ \----\\----\\----\ +* +* +**/ +[NUMB]=KEYMAP( +//left half + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, + 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 half + KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + KC_TRNS, DE_OSX_SLSH, KC_7, KC_8, KC_9, DE_OSX_ASTR, KC_F12, + DE_OSX_SLSH, KC_4, KC_5, KC_6, DE_OSX_PLUS, DE_OSX_MINS, + KC_TRNS, DE_OSX_PERC, KC_1, KC_2, KC_3, KC_TRNS, KC_TRNS, + KC_0, KC_DOT, KC_COMM, DE_OSX_EQL, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS), +/** +* Layer: EGOS +* /--------//--------//--------//--------//--------//--------//--------/ /--------//--------//--------//--------//--------//--------//--------/ +* | | | | | | | | | | | | | | | | +* | | | | | | | | | | | | | | | | +* /--------//--------//--------//--------//--------//--------//--------/ /--------//--------//--------//--------//--------//--------//--------/ +* | | | | | | | | | | | | | | | | +* | | | | | | | | | | | | | | | | +* /--------//--------//--------//--------//--------//--------/\--------\ \--------\/--------//--------//--------//--------//--------//--------/ +* | Shift | | | | | | | | | | | | | +* | | | | | | | | | | | | | | +* /--------//--------//--------//--------//--------//--------//--------/ /--------//--------//--------//--------//--------//--------//--------/ +* | | | | | | | | | | | | | | | | +* | | | | | | | | | | | | | | | | +* \--------\\--------\\--------\\--------\\--------\\--------\\--------\ \--------\\--------\\--------\\--------\\--------\\--------\\--------\ +* +* +* /--------//--------//--------//--------//--------/ /--------//--------//--------//--------//--------/ +* | Ctrl | | | | | | | | | Toggle 5| | +* | | | | | | | | | | | | +* \--------\\--------\\--------\\--------\/--------//--------/ /--------//--------/ \--------\\--------\\--------\\--------\\--------\ +* | F1 | F2 | | | | +* | | | | | | +* \--------\/--------/ /--------/\--------\ +* | F3 | | | +* | | | | +* /--------//--------//--------/ /--------//--------//--------/ +* | SPC | Ctrl | F4 | | | | | +* | | | | | | | | +* \--------\\--------\\--------\ \--------\\--------\\--------\ +* +* +**/ +[EGOS]=KEYMAP( +//left half + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_LSFT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_LCTL, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_F1, KC_F2, + KC_F3, + KC_SPC, KC_LCTL, KC_F4, + //right half + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, M(M_TOGGLE_5), KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS), +}; + +const uint16_t PROGMEM fn_actions[] = { + +}; + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ +static uint16_t start; +switch(id) { +case SMLY_TOG_QUOT: +//Macro: SMLY_TOG_QUOT//----------------------- +if (record->event.pressed) { + start = timer_read(); + layer_state ^= (1<150) { + return MACRO_NONE; + } else { + return MACRO(DOWN(KC_LSFT),TYPE(DE_OSX_HASH),UP(KC_LSFT),END); + } + } + +break; +case M_TOGGLE_5: +//Macro: M_TOGGLE_5//----------------------- + if (record->event.pressed){ + layer_state ^= (1<<5); + layer_state &= (1<<5); + } + +break; +case TGH_NUM: +//Macro: TGH_NUM//----------------------- +if (record->event.pressed){ + start = timer_read(); + layer_state ^=(1< 150) { + layer_state^=(1<event.pressed) { + start = timer_read(); + return MACRO(DOWN(KC_LCTRL),DOWN(KC_LALT),END); + } else { + if (timer_elapsed(start) >150) { + return MACRO(U(LCTRL),U(LALT),END); + } else { + return MACRO(UP(KC_LCTRL),UP(KC_LALT),TYPE(KC_RBRC),END); + } + } + +break; +case SM_KISS: +//Macro: SM_KISS//----------------------- +if (record->event.pressed) { + return MACRO(DOWN(KC_LSFT),TYPE(KC_DOT),UP(KC_LSFT),TYPE(KC_SLSH),DOWN(KC_LSFT),TYPE(KC_RBRC),UP(KC_LSFT),END); + } + +break; +case SM_FROWN: +//Macro: SM_FROWN//----------------------- +if (record->event.pressed) { + return MACRO(DOWN(KC_LSFT),TYPE(KC_DOT),UP(KC_LSFT),TYPE(KC_SLSH),DOWN(KC_LALT),TYPE(KC_8),UP(KC_LALT),END); + } + +break; +case SM_CRY: +//Macro: SM_CRY//----------------------- +if (record->event.pressed) { + return MACRO(DOWN(KC_LSFT),TYPE(KC_COMM),UP(KC_LSFT),TYPE(KC_SLSH),DOWN(KC_LSFT),TYPE(KC_8),UP(KC_LSFT),END); + } + +break; +case SM_SMILE: +//Macro: SM_SMILE//----------------------- +if (record->event.pressed) { + return MACRO(DOWN(KC_LSFT),TYPE(KC_DOT),UP(KC_LSFT),TYPE(KC_SLSH),DOWN(KC_LSFT),TYPE(KC_9),UP(KC_LSFT),END); + } + +break; +case SM_SMIRK: +//Macro: SM_SMIRK//----------------------- +if (record->event.pressed) { + return MACRO(DOWN(KC_LSFT),TYPE(KC_COMM),UP(KC_LSFT),TYPE(KC_SLSH),DOWN(KC_LSFT),TYPE(KC_9),UP(KC_LSFT),END); + } + +break; +case M_LGUI_SHFT: +//Macro: M_LGUI_SHFT//----------------------- +if (record->event.pressed){ + return MACRO(DOWN(KC_LGUI),DOWN(KC_LSFT),END); + }else{ + return MACRO(UP(KC_LGUI),UP(KC_LSFT),UP(KC_LGUI),UP(KC_LSFT),UP(KC_LGUI),UP(KC_LSFT),UP(KC_LGUI),UP(KC_LSFT),UP(KC_LGUI),UP(KC_LSFT),UP(KC_LGUI),UP(KC_LSFT),UP(KC_LGUI),UP(KC_LSFT),UP(KC_LGUI),UP(KC_LSFT),UP(KC_LGUI),UP(KC_LSFT),UP(KC_LGUI),UP(KC_LSFT),UP(KC_LGUI),UP(KC_LSFT),UP(KC_LGUI),UP(KC_LSFT),UP(KC_LGUI),UP(KC_LSFT),UP(KC_LGUI),UP(KC_LSFT),UP(KC_LGUI),UP(KC_LSFT),UP(KC_LGUI),UP(KC_LSFT),UP(KC_LGUI),UP(KC_LSFT),UP(KC_LGUI),UP(KC_LSFT),UP(KC_LGUI),UP(KC_LSFT),UP(KC_LGUI),UP(KC_LSFT),UP(KC_LGUI),UP(KC_LSFT),UP(KC_LGUI),UP(KC_LSFT),UP(KC_LGUI),UP(KC_LSFT),UP(KC_LGUI),UP(KC_LSFT),UP(KC_LGUI),UP(KC_LSFT),UP(KC_LGUI),UP(KC_LSFT),UP(KC_LGUI),UP(KC_LSFT),UP(KC_LGUI),UP(KC_LSFT),UP(KC_LGUI),UP(KC_LSFT),UP(KC_LGUI),UP(KC_LSFT),UP(KC_LGUI),UP(KC_LSFT),UP(KC_LGUI),UP(KC_LSFT),UP(KC_LGUI),UP(KC_LSFT),UP(KC_LGUI),UP(KC_LSFT),UP(KC_LGUI),UP(KC_LSFT),UP(KC_LGUI),UP(KC_LSFT),UP(KC_LGUI),UP(KC_LSFT),U(LGUI),U(LSFT),END); + } + +break; +case SM_HEART: +//Macro: SM_HEART//----------------------- +if (record->event.pressed) { + return MACRO(TYPE(KC_GRV),TYPE(KC_3),END); + } + +break; +case TOG_HLD_MDIA: +//Macro: TOG_HLD_MDIA//----------------------- +if (record->event.pressed){ + start = timer_read(); + layer_state ^=(1< 150) { + layer_state^=(1<event.pressed) { + return MACRO(DOWN(KC_LSFT),TYPE(KC_DOT),UP(KC_LSFT),TYPE(KC_SLSH),DOWN(KC_LSFT),TYPE(KC_D),UP(KC_LSFT),END); + } + +break; +case SM_SAD: +//Macro: SM_SAD//----------------------- +if (record->event.pressed) { + return MACRO(DOWN(KC_LSFT),TYPE(KC_DOT),UP(KC_LSFT),TYPE(KC_SLSH),DOWN(KC_LSFT),TYPE(KC_8),UP(KC_LSFT),END); + } + +break; +case M_DE_OSX_CIRC_CTRLCMD: +//Macro: M_DE_OSX_CIRC_CTRLCMD//----------------------- +if (record->event.pressed) { + start = timer_read(); + return MACRO(DOWN(KC_LCTRL),DOWN(KC_LGUI),END); + } else { + if (timer_elapsed(start) >150) { + return MACRO(U(LCTRL),U(LGUI),END); + } else { + return MACRO(UP(KC_LCTRL),UP(KC_LGUI),TYPE(KC_NUBS),END); + } + } + +break; +case M_MEH_SH_ACUT: +//Macro: M_MEH_SH_ACUT//----------------------- +if (record->event.pressed) { + start = timer_read(); + return MACRO(DOWN(KC_LCTRL),DOWN(KC_LSFT),DOWN(KC_LALT),END); + } else { + if (timer_elapsed(start) >150) { + return MACRO(U(LCTRL),U(LSFT),U(LALT),END); + } else { + return MACRO(UP(KC_LCTRL),UP(KC_LALT),TYPE(DE_OSX_ACUT),UP(KC_LSFT),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) { + + case SYMB: + ergodox_right_led_1_on(); + + + break; + case MDIA: + + ergodox_right_led_2_on(); + + break; + case NUMB: + + + ergodox_right_led_3_on(); + break; + case EGOS: + ergodox_right_led_1_on(); + ergodox_right_led_2_on(); + ergodox_right_led_3_on(); + break; +default: +// none +break; +} + +}; + diff --git a/keyboards/ergodox_ez/keymaps/osx_de_experimental/osx_de_experimental_highres.png b/keyboards/ergodox_ez/keymaps/osx_de_experimental/osx_de_experimental_highres.png new file mode 100644 index 0000000000..031d874a7b Binary files /dev/null and b/keyboards/ergodox_ez/keymaps/osx_de_experimental/osx_de_experimental_highres.png differ diff --git a/keyboards/ergodox_ez/keymaps/osx_de_experimental/readme.md b/keyboards/ergodox_ez/keymaps/osx_de_experimental/readme.md new file mode 100644 index 0000000000..e6a1018416 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/osx_de_experimental/readme.md @@ -0,0 +1,22 @@ + +# Ergodox und Ergodox-EZ experimentelles Layout + +dieses layout ist experimentell und wird im Lufe der Zeit viele Änderungen und Verbesserungen durchlaufen. Falls diese sich als vorteilhaft erweisen, werden sie evtl. auch in das `osx_de` layout übernommen. + + + +# Erstellt Mit Dem ErgodoxLayoutGenerator + +Der ErgodoxLayoutGenerator (ELG) ist ein kleines Werkzeug, welches die Erstellung und Pflege der eigenen Keymaps erleichtern soll. Es ist in java geschrieben und kann [hier](https://github.com/sboesebeck/ErgodoxLayoutGenerator/releases) heruntergeladen werden. Damit das Tool funktioniert sollte das offizielle Oracle JDK in aktueller Version installiert sein. +Die Dokumentation für den ELG kann man [hier](https://boesebeck.name/2016/04/16/ergodoxlayoutgenerator-documentation/) nachlesen (momentan leider nur in Englisch verfügbar). +--------------------------------------------------------------------------------------------------------------------- + +# Ergodox and Ergodox-EZ experimental layout + +This is an experimental layout which will undergo heavy changes over time. If changes prove to be good, they might also move into the `osx_de` layout. + +Created Using the ErgodoxLayoutGenerator + +The ErgodoxLayoutGenerator (ELG) is a little tool, which makes the creation and maintenance of keycaps a lot easier. It was written in Java and can be downloaded [here](https://github.com/sboesebeck/ErgodoxLayoutGenerator/releases). To use the tool, you need to have a current version of Oracles JDK installed. + +The documentation of the ELG can be viewed [here](https://boesebeck.name/2016/04/16/ergodoxlayoutgenerator-documentation/). \ No newline at end of file diff --git a/keyboards/ergodox_ez/keymaps/osx_fr/compiled.hex b/keyboards/ergodox_ez/keymaps/osx_fr/compiled.hex new file mode 100644 index 0000000000..37112ba429 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/osx_fr/compiled.hex @@ -0,0 +1,1158 @@ +:100000000C947A020C94BE020C94BE020C94BE02B4 +:100010000C94BE020C94BE020C94BE020C94BE0260 +:100020000C94BE020C94BE020C94620D0C94340E1F +:100030000C94BE020C94BE020C94BE020C94BE0240 +:100040000C94BE020C943E220C94BE020C94BE0290 +:100050000C94BE020C94D11B0C94BE020C94BE02F4 +:100060000C94BE020C94BE020C94BE020C94BE0210 +:100070000C94BE020C94BE020C94BE020C94BE0200 +:100080000C94BE020C94BE020C94BE020C94BE02F0 +:100090000C94BE020C94BE020C94BE020C94BE02E0 +:1000A0000C94BE020C94BE020C94BE02A10EC30EB0 +:1000B000B10FC30EB10F080F2B0FB10F800F930FAD +:1000C0006212621291129112C712E71218141814D8 +:1000D000F2121814A213A2130914181418141214EB +:1000E000AF13AF13AF13AF13AF13AF13AF13AF1300 +:1000F000AF13AF13AF13AF13AF13AF13AF13AF13F0 +:10010000C113CE13D513DC13E6130000F0A12E00AB +:100110004C002A00E100344100001E0014000400DD +:100120001D7164004D001F001A0016001B00E10441 +:100130002A00200008000700060050002C002100C3 +:100140001500090019004F004A00220017000A009C +:10015000050000006574500001540000007F00009D +:10016000E3004F000154000000770000E20023008C +:100170001C000B00110000002971240018000D0064 +:10018000100052004B0025000C000E0036425100BA +:100190002800260012000F0037002F002B00270038 +:1001A00013003300387130004E002D003200E300A0 +:1001B000E500C10000000100010001000100010094 +:1001C00000003A00250035023402010001003B0026 +:1001D000350030002F00010001003C002204220005 +:1001E0002206010001003D002D042D002D06010016 +:1001F00001003E000F063200110400000100010062 +:1002000001000000010000000100010001000000E9 +:100210000100000001003F00520051001E000000DC +:1002200001004000240221021E02010001004100E1 +:10023000250222021F0210000100420026022302B2 +:10024000200227020100430030023802370638003E +:100250000100440045000100010001000000010010 +:100260000100010001000100000001000100010087 +:1002700001000100010001000100F2000100010085 +:1002800001000100F000F1000100F4000100010094 +:100290000100F3000100F500010001000100010070 +:1002A0000100000001000100010000000100000049 +:1002B0000100010001000000010000000100010038 +:1002C0000100010001000000010001000100010027 +:1002D0000100A9000100010001000100AC00AA001A +:1002E000B600010001000100AB00A8000100010000 +:1002F0000100010001000100010001000100AE0049 +:1003000001000100000016034500720067006F0045 +:1003100044006F007800200045005A0000001603DA +:100320004500720067006F0044006F0078002000F5 +:1003300045005A0000000403090409026D0004018D +:1003400000A0FA09040000010301010009211101C4 +:100350000001223F000705810308000A090401008B +:100360000103010200092111010001224D000705CE +:10037000820308000A0904020001030000000921A9 +:10038000110100012236000705830308000A090451 +:1003900003000103000000092111010001223900BE +:1003A000070584031000011201100100000008ED90 +:1003B000FE071301000102000105010906A1010564 +:1003C0000719E029E7150025019508750181020547 +:1003D000081901290595057501910295017503918B +:1003E0000105071900297715002501957875018108 +:1003F00002C005010980A101850216010026B7008F +:100400001A01002AB700751095018100C0050C097A +:1004100001A1018503160100269C021A01002A9CF5 +:1004200002751095018100C005010902A1010901B1 +:10043000A10005091901290515002501950575017A +:10044000810295017503810105010930093115818A +:10045000257F95027508810609381581257F95014C +:1004600075088106050C0A38021581257F950175EE +:10047000088106C0C005010906A101050719E02988 +:10048000E715002501950875018102950175088120 +:100490000105081901290595057501910295017558 +:1004A0000391010507190029FF150025FF95067521 +:1004B000088100C0000000000000000000000001F2 +:1004C0000204060A0F17202C3A4A5D71879DB3C7B4 +:1004D000DAE9F5FCFFFCF5E9DAC7B39D87715D4AFF +:1004E0003A2C20170F0A0604020100000000000049 +:1004F0000000000011241FBECFEFDAE0DEBFCDBF49 +:1005000004B603FE24C08091FB019091FC01A091F0 +:10051000FD01B091FE018730904BA740B04BB9F47C +:100520001092FB011092FC011092FD011092FE014D +:1005300014BE84B7877F84BF88E10FB6F894809398 +:100540006000109260000FBEE0E0FFE3099511E04B +:10055000A0E0B1E0EAE0F8E402C005900D92A43317 +:10056000B107D9F711E0A4E3B1E001C01D92AB3FA0 +:10057000B107E1F70E94A60A0C9403240C94000032 +:100580001092B9008AE08093B800089594EA90939D +:10059000BC009091BC0097FFFCCF9091B900987F70 +:1005A000983021F0903111F081E008958093BB00E4 +:1005B00084E88093BC008091BC0087FFFCCF8091D1 +:1005C000B900887F883111F0803471F780E0089598 +:1005D00084E98093BC008091BC0084FDFCCF089529 +:1005E0008093BB0084E88093BC008091BC0087FFAF +:1005F000FCCF9091B900987F81E0983209F480E0B7 +:10060000089584E88093BC008091BC0087FFFCCFF4 +:100610008091BB00089580910101811115C080E493 +:100620000E94C6028093010181110CC082E10E94E8 +:10063000F00280930101811105C08FEF0E94F0024A +:10064000809301010E94E80284B1807F84B985B162 +:10065000807F85B98AB1837F8AB98BB1837F8BB95B +:100660003E98469808950E94C604809301010E9416 +:100670000B0380B38C7080BB81B3836F81BBA5E318 +:10068000B1E0E3E4F1E08EE08E0F11921D928E1343 +:10069000FCCF0C94B004BF92CF92DF92EF92FF9206 +:1006A0000F931F93CF93DF9380910101882379F0FB +:1006B000809134018F5F80933401811108C00E94C2 +:1006C000C60480930101811102C00E94580405E311 +:1006D00011E0C0E0D0E0DD24D39482E0C82EEE2407 +:1006E000E394F12CC730D10500F58091010181110F +:1006F00064C080E40E94C60280930101811112C08F +:1007000082E10E94F0028093010181110BC0C701B8 +:100710000C2E01C0880F0A94EAF780950E94F0021F +:10072000809301010E94E80248C0CA30A1F028F479 +:10073000C83059F0C93061F005C0CC3089F070F094 +:10074000CD3089F0209A289810C0219A29980DC0A0 +:10075000229A2A980AC0239A2B9807C0529A01C05D +:10076000539A5B9802C03E9A469890EA9A95F1F7A0 +:100770009FB1799902C082E001C080E091709D250F +:10078000982B7C9902C084E001C080E0892B7D9980 +:1007900002C038E001C030E0832B7E9902C020E126 +:1007A00001C020E0822B9FB19095991F9927991F36 +:1007B0009295990F907E892B0FC080910101811134 +:1007C00049C080E40E94C60280930101882379F128 +:1007D000B12C0E94E8028B2DF8019081981719F036 +:1007E0008083C09200010E940B0321960F5F1F4F70 +:1007F000CE30D10509F076CF80910001882361F1D8 +:10080000815080930001882339F08FE99FE00197A0 +:10081000F1F700C0000020C0A3E4B1E0E5E3F1E09F +:10082000CF01825F91919D938E13FCCF15C083E120 +:100830000E94F002809301018111CACF81E40E94DD +:10084000C602809301018111C3CF0E940103B82E1B +:10085000B094BFCF80E0C0CF0E94560481E0DF910A +:10086000CF911F910F91FF90EF90DF90CF90BF90AD +:100870000895E82FF0E0ED5BFE4F80810895089524 +:100880000F931F93CF93DF93C3E4D1E010E00C2FBD +:10089000025F899190E00E94F71A180F0C13F9CFAC +:1008A000812FDF91CF911F910F9108950C94260510 +:1008B00056985E9825982D9826982E9827982F98C8 +:1008C0008FEF90E0909389008093880090938B0045 +:1008D00080938A0090938D0080938C00259A2D9AA6 +:1008E0002FEF80E792E0215080409040E1F700C078 +:1008F0000000269A2E9A2FEF80E792E02150804048 +:100900009040E1F700C00000279A2F9A2FEF80E770 +:1009100092E0215080409040E1F700C0000025980F +:100920002D982FEF80E792E0215080409040E1F732 +:1009300000C0000026982E982FEF80E792E021500B +:1009400080409040E1F700C0000027982F9856980B +:100950005E9825982D9826982E9827982F98089578 +:1009600089EA8093800089E08093810024982C9804 +:100970003F988AB18F748AB96E98479A8BB1806B11 +:100980008BB9769A0E9458040C94250580E28093D6 +:1009900001018091510181110EC00E94C00281E0CD +:1009A000809351012FEF83ED90E3215080409040E0 +:1009B000E1F700C0000080E40E94C60280930101BC +:1009C00081112EC00E94F00280930101811128C084 +:1009D0000E94F00280930101811122C08FE30E94E6 +:1009E000F0028093010181111BC00E94E80280E4A3 +:1009F0000E94C60280930101811112C08CE00E9406 +:100A0000F0028093010181110BC00E94F0028093DB +:100A10000101811105C08FE30E94F0028093010162 +:100A20000E94E80280910101089561110BC0FC0150 +:100A30008281882321F085EE0E94061103C085EE95 +:100A40000E94CE1180E090E0089508956091BD016C +:100A50007091BE018091BF019091C0010E94031B63 +:100A600056985E9825982D9826982E9827982F9816 +:100A7000813019F0823021F00895259A2D9A089539 +:100A8000269A2E9A089581E0089581E008950C94A5 +:100A9000450508950F931F93CF93DF938C01FC01BD +:100AA000C081D181CE010E947C19BE010E94F30554 +:100AB000EC01B8010E944705882309F48DC0F801B4 +:100AC0008281882309F44AC080915D0181111FC091 +:100AD000C431F0E5DF0709F051C00E94490581E00B +:100AE00080935D010E949B1B90935C0180935B014E +:100AF0001092540110925601109255011092580113 +:100B00001092570110925A011092590165C08091BC +:100B10005B0190915C010E94A71B883C910570F4D9 +:100B200080915401E82FF0E0EE0FFF1FEB5AFE4FCB +:100B3000D183C0838F5F809354014EC0C43880E559 +:100B4000D80721F0C538D04501F13AC0F8018281BB +:100B5000882341F01092520182E01EC0C438E0E5C3 +:100B6000DE0759F580915201811106C086E20E948C +:100B7000061186E20E94CE1182E01CC0C438F0E566 +:100B8000DF0741F3C538D045D9F4F80182818823C5 +:100B900031F01092530180E20E941D121DC080911D +:100BA0005301811106C087E20E94061187E20E946C +:100BB000CE1180E20E9424120FC0C538D04529F31F +:100BC00081E08093520180935301C801DF91CF915E +:100BD0001F910F910C94430580E0DF91CF911F91FD +:100BE0000F910895089596E0799FF001112494E5FE +:100BF000899FE00DF11D1124E60FF11DEE0FFF1F7F +:100C0000E25FFE4F859194910895880F991FFC0132 +:100C1000E657F040859194910895880F991FFC0143 +:100C2000E65FFE4F8591949108950F931F93CF93A4 +:100C3000DF93EC01811520E3920750F5C11580E2A6 +:100C4000D80708F0C3C0CB3BD10590F4C83AD10512 +:100C500008F06AC0C53AD10508F05BC0C430D105C0 +:100C600008F0D0C1219709F0CAC101E010E00AC222 +:100C7000CF3FD10511F008F0C5C1C03FD10508F044 +:100C8000A2C0CE01805E9109089708F4BBC1B7C12C +:100C9000C13090E5D90709F4A2C020F5C0318FE436 +:100CA000D80770F4C11590E4D90708F094C0C115B5 +:100CB00021E3D20708F0A3C1DD278E01106CE2C149 +:100CC000C115D04509F09BC10E9483148FEF94E3B6 +:100CD0002CE0815090402040E1F700C000000E94CD +:100CE000F61BD0C1C11597E5D90758F4C03121E5ED +:100CF000D20708F01CC1C43180E5D80708F475C0DC +:100D00007EC1CE0190578115904108F078C1DF7007 +:100D100073C1C53AD10509F477C1C63AD10509F0C6 +:100D200076C102E810E4AEC1C83AD10509F472C137 +:100D3000C93AD10509F471C1CA3AD10509F470C1A3 +:100D4000CB3AD10509F46FC1CC3AD10509F46EC193 +:100D5000CD3AD10509F46DC1C03BD10509F46CC190 +:100D6000CE3AD10509F46BC1CF3AD10509F46AC175 +:100D7000C13BD10509F469C1C23BD10509F468C181 +:100D8000C33BD10509F467C1C43BD10509F466C171 +:100D9000C53BD10509F465C1C63BD10509F464C161 +:100DA000C73BD10509F463C1C83BD10509F462C151 +:100DB000C93BD10509F461C1CA3BD10509F460C141 +:100DC00000E014E45FC18E0110655CC1CE019F702C +:100DD0000E940D0658C1DF708E01106A53C18091C8 +:100DE000DA0181608093DA014DC10E949B1D81115F +:100DF00002C00E94811D0E94B81D90E09093FB01EB +:100E00008093FA01C23080E5D80721F48091FA017D +:100E1000816086C0C43090E5D90721F48091FA0141 +:100E200082607EC0C63020E5D20721F48091FA01AD +:100E3000846076C0C83080E5D80719F48091FA0143 +:100E400027C0CA3090E5D90721F48091FA0180616A +:100E500067C0CC3020E5D20721F48091FA0180628E +:100E60005FC0CE3080E5D80721F48091FA0180641C +:100E700057C0C03190E5D90721F48091FA0180680C +:100E80004FC0C23120E5D20729F48091FA01846075 +:100E9000886046C0C33080E5D80721F48091FA010C +:100EA0008E7F3EC0C53090E5D90721F48091FA01CC +:100EB0008D7F36C0C73020E5D20721F48091FA013A +:100EC0008B7F2EC0C93080E5D80719F48091FA01D4 +:100ED00026C0CB3090E5D90721F48091FA018F7EAE +:100EE0001FC0CD3020E5D20721F48091FA018F7D1B +:100EF00017C0CF3080E5D80721F48091FA018F7BAD +:100F00000FC0C13190E5D90721F48091FA018F77A4 +:100F100007C0C331D04531F48091FA018B7F877FC0 +:100F20008093FA018091FA010E94BC1DABC08D2F05 +:100F300099278F70992781309105D9F49E012370EC +:100F4000332702C0880F991F2A95E2F79C688E010B +:100F500044E0000F111F4A95E1F700271370802B22 +:100F6000912B53E0CC0FDD1F5A95E1F7C076DD27BA +:100F70002FC08230910531F4DC2FCC278E01016F18 +:100F8000106A80C08330910569F4CE01837099277F +:100F900001E010E002C0000F111F8A95E2F7C801BE +:100FA0009C680FC084309105B9F4CE0183709927F5 +:100FB00001E010E002C0000F111F8A95E2F7C8019E +:100FC0009A6823E0CC0FDD1F2A95E1F7C07ED77029 +:100FD0008C010C2B1D2B56C08530910531F4DC2F74 +:100FE000CC278E01046F106A4DC0069709F04AC0E5 +:100FF000CF71DD27DC2FCC278E01106243C000E0CB +:1010000010E040C08E013EC001E810E43BC003E8A0 +:1010100010E438C002EE14E435C009EE14E432C026 +:101020000AEE14E42FC005EB14E42CC006EB14E424 +:1010300029C007EB14E426C00CEC14E423C00DEC2B +:1010400014E420C003E815E41DC00AE815E41AC042 +:1010500002E915E417C004E915E414C001E216E43E +:1010600011C003E216E40EC004E216E40BC005E270 +:1010700016E408C006E216E405C007E216E402C062 +:101080000AE216E4C801DF91CF911F910F910895F4 +:1010900096E0799FF001112494E5899FE00DF11D00 +:1010A0001124E60FF11DEE0FFF1FE25FFE4F859149 +:1010B0009491803E9105E0F4803C910558F5813390 +:1010C000910509F46FC048F48932910509F463C0B1 +:1010D0008A32910509F46DC072C089339105E9F037 +:1010E00082389105D1F08533910509F44DC067C070 +:1010F000833E910581F138F4803E9105B9F0823E3E +:101100009105D9F05CC0863E910561F1873E91055D +:10111000A1F155C00E94050608952091FA0120FD15 +:1011200002C021FF4CC080EE90E049C08091FA01DE +:1011300080FFF9CF89E390E042C08091FA0182FFFD +:101140000EC08091FA0184FF03C080E090E037C0B8 +:1011500083EE90E034C08091FA0182FFF2CF82EEFC +:1011600090E02DC08091FA0183FF0BC08091FA01BD +:1011700084FDEBCF87EE90E022C08091FA0183FFDF +:10118000F5CF86EE90E01BC08091FA0185FF07C085 +:1011900089E290E014C08091FA0185FFF9CF85E3E0 +:1011A00090E00DC08091FA0186FF07C08AE290E0CE +:1011B00006C08091FA0186FFF9CF81E390E00E949A +:1011C0001506089508950C94E20880916E01089523 +:1011D000CF93DF9300D01F92CDB7DEB79C018091F3 +:1011E000F101843019F593E099833B832A8390932E +:1011F000E9008FEF9091E800815095FD06C095EDD4 +:101200009A95F1F700008111F5CF8091E80085FFF4 +:101210000DC040E050E063E070E0CE0101960E9416 +:10122000520B8091E8008E778093E8000F900F902A +:101230000F90DF91CF910895CF93DF9300D01F924D +:10124000CDB7DEB72091F101243021F522E02983CA +:101250009B838A8383E08093E9008FEF9091E8007D +:10126000815095FD06C095ED9A95F1F7000081112A +:10127000F5CF8091E80085FF0DC040E050E063E0CD +:1012800070E0CE0101960E94520B8091E8008E77AB +:101290008093E8000F900F900F90DF91CF91089509 +:1012A0002091F1012430F1F422E02093E9002FEFA6 +:1012B0003091E800215035FD06C035ED3A95F1F743 +:1012C00000002111F5CF2091E80025FF0BC040E080 +:1012D00050E065E070E00E94520B8091E8008E774C +:1012E0008093E8000895CF93DF93EC019091F10192 +:1012F000943009F046C080910C018823D9F0809188 +:101300000D018823B9F09093E9008FEF9091E800E8 +:10131000815095FD06C095E19A95F1F70000811185 +:10132000F5CF8091E80085FF2CC040E050E060E1FF +:1013300070E017C081E08093E9008FEF9091E800A2 +:10134000815095FD06C095ED9A95F1F70000811149 +:10135000F5CF8091E80085FF14C040E050E068E0E0 +:1013600070E0CE010E94520B8091E8008E7780934E +:10137000E80080E1FE01AEE5B1E001900D928A95B2 +:10138000E1F7DF91CF9108958091F001811109C0BB +:101390000E94E70C0E94440D8091E20084608093DB +:1013A000E20008951092F001089508950C942B2204 +:1013B0000E948C1B0E9431220E94EA0F0C94E308C9 +:1013C00042E061EC81E00E94610C42E061EC82E06D +:1013D0000E94610C42E061EC83E00E94610C42E1FA +:1013E00061EC84E00C94610C8091F301833009F48A +:1013F00055C030F4813071F0823009F48EC0089508 +:101400008A3009F47AC08B3009F460C0893009F061 +:101410009CC020C08091F201813A09F096C0809171 +:10142000E800877F8093E8008091F6019091F701B2 +:10143000892B21F460E18EE591E003C060E080E05B +:1014400090E070E00E949D0B8091E8008B77809384 +:10145000E80008958091F201813209F076C0809110 +:10146000F6019091F701009719F0039709F06DC00C +:101470008091E800877F8093E8008091E80082FDFA +:1014800005C08091F1018111F8CF5FC08091F1001A +:1014900080936E018091E8008B7753C08091F201B8 +:1014A000813A09F052C08091F6019091F701892BA1 +:1014B00009F04BC08091E800877F8093E80080911D +:1014C000E80080FFFCCF80910C0136C08091F201D2 +:1014D0008132D9F58091F6019091F701892BA9F518 +:1014E0008091E800877F8093E8000E94960C8091AD +:1014F000F40180930C010C9483148091F2018132E9 +:1015000021F58091E800877F8093E8000E94960C87 +:101510008091F50180936F0108958091F201813AE5 +:10152000A1F48091E800877F8093E8008091E80033 +:1015300080FFFCCF80916F018093F1008091E800E3 +:101540008E778093E8000C94960C089584B7877F7B +:1015500084BF88E10FB6F894809360001092600019 +:101560000FBE90E080E80FB6F894809361009093EE +:1015700061000FBE0E9439100E94E70C0E94440DCA +:101580008091E20084608093E20078940E94CA0F08 +:101590000E943B1082E091E00E94E50F0E94192218 +:1015A0008091F101853069F40E94531B8091EF0115 +:1015B0008823B1F30E947E1B882391F30E943C0B89 +:1015C000EFCF0E944110ECCF292F33272330310574 +:1015D000C9F064F42130310581F02230310509F081 +:1015E00043C08DE690E02AE333E042C0213231056A +:1015F000F1F02232310541F137C082E190E027EA73 +:1016000033E036C099278130910541F08230910551 +:1016100041F0892B49F5E6E3F3E005C0EEE1F3E0A4 +:1016200002C0E6E0F3E0849190E09F0121C06430C5 +:10163000D8F4E62FF0E0EE0FFF1FEE5DFE4F2081A5 +:10164000318189E090E014C0643070F470E0FB01F7 +:10165000EE0FFF1FE65EFE4F20813181FB01EA5E47 +:10166000FE4F808190E004C080E090E020E030E018 +:10167000FA0131832083089580E189BD82E189BD2B +:1016800009B400FEFDCF8091D8008F7D8093D800F3 +:101690008091E00082608093E0008091E00081FD15 +:1016A000FCCF0895CF92DF92EF92FF920F931F939A +:1016B000CF93DF93EC018B016A010E94B50C81117D +:1016C00033C0C114D10439F0F60180819181081B27 +:1016D000190BC80FD91FE12CF12C0115110519F1B7 +:1016E0008091E80085FD16C08091E8008E77809398 +:1016F000E800C114D10449F0F60180819181E80E1F +:10170000F91EF182E08285E00FC00E94B50C8823AB +:1017100021F30AC089918093F10001501109FFEF74 +:10172000EF1AFF0ADACF80E0DF91CF911F910F917E +:10173000FF90EF90DF90CF9008952091F8013091C5 +:10174000F9012617370748F06115710539F4209122 +:10175000E8002E772093E80001C0B90140E0611550 +:101760007105A9F12091F101222309F443C025302C +:1017700009F442C02091E80023FD40C02091E80018 +:1017800022FD32C02091E80020FFE9CF4091F30014 +:101790002091F20030E0342BFC01CF01611571057E +:1017A00059F02830310540F481918093F100615067 +:1017B00071092F5F3F4FF1CF41E02830310509F02B +:1017C00040E02091E8002E772093E800C8CF411137 +:1017D000C9CF0AC08091F101882361F0853061F0A2 +:1017E0008091E80083FD0AC08091E80082FFF2CF7B +:1017F00080E0089582E0089583E0089581E00895EF +:101800002091F8013091F9012617370748F061154A +:10181000710539F42091E8002E772093E80001C08B +:10182000B901FC0120E06115710591F18091F10190 +:10183000882309F440C0853009F43FC08091E80056 +:1018400083FD3DC08091E80082FD2FC08091E800BB +:1018500080FFE9CF2091F3008091F20090E0922B7D +:101860006115710559F08830910540F42491209359 +:10187000F1003196615071090196F2CF21E008978D +:1018800009F020E08091E8008E778093E800CBCFCC +:101890002111CCCF0AC08091F101882361F08530FD +:1018A00061F08091E80083FD0AC08091E80082FF2A +:1018B000F2CF80E0089582E0089583E0089581E00A +:1018C0000895982F973058F59093E900981739F0BC +:1018D0007091EC002091ED005091F00003C0242F96 +:1018E000762F50E021FF19C03091EB003E7F3093FE +:1018F000EB003091ED003D7F3093ED003091EB0037 +:1019000031603093EB007093EC002093ED00509326 +:10191000F0002091EE0027FF07C09F5FD3CF8F70AC +:101920008093E90081E0089580E008958091F201BC +:1019300087FF11C08091E80082FD05C08091F10110 +:101940008111F8CF11C08091E8008B770BC0809196 +:10195000F101882349F08091E80080FFF8CF809161 +:10196000E8008E778093E80008952091E40030919C +:10197000E50095E64091EC00842F817040FF22C085 +:101980008091E80080FD1CC08091F101882391F0D6 +:10199000853091F08091EB0085FD10C04091E4000E +:1019A0005091E5004217530729F39A01915011F71E +:1019B00084E0089582E0089583E0089581E0089529 +:1019C00080E008954091E80042FFDECF08950E9434 +:1019D000550D0E945D0DE0EEF0E080818160808316 +:1019E000E8EDF0E080818F77808319BCA7EDB0E04F +:1019F0008C918E7F8C9380818F7E80831092F001FA +:101A000008950F931F93CF93DF930E94550D0E946B +:101A10005D0DC8EDD0E088818F77888388818068EC +:101A2000888388818F7D888319BC1092F101109280 +:101A3000ED011092EF011092EE0100EE10E0F801BE +:101A400080818B7F808388818160888342E060E031 +:101A500080E00E94610CE1EEF0E080818E7F808367 +:101A6000E2EEF0E080818160808380818860808305 +:101A7000F80180818E7F8083888180618883DF91F7 +:101A8000CF911F910F910895E8EDF0E080818F7E56 +:101A90008083E7EDF0E080818160808384E082BF15 +:101AA00081E08093F0010C94010DE8EDF0E080817D +:101AB0008E7F80831092E20008951092DA001092D7 +:101AC000E10008951F920F920FB60F9211242F93E9 +:101AD0003F934F935F936F937F938F939F93AF93B6 +:101AE000BF93EF93FF938091E10082FF0BC0809141 +:101AF000E20082FF07C08091E1008B7F8093E100CC +:101B00000E94C90F8091DA0080FF1FC08091D80029 +:101B100080FF1BC08091DA008E7F8093DA00809175 +:101B2000D90080FF0DC080E189BD82E189BD09B483 +:101B300000FEFDCF81E08093F1010E94C40905C041 +:101B400019BC1092F1010E94D2098091E10080FF3E +:101B500019C08091E20080FF15C08091E2008E7F65 +:101B60008093E2008091E20080618093E2008091A6 +:101B7000D80080628093D80019BC85E08093F10181 +:101B80000E94D6098091E10084FF30C08091E2007C +:101B900084FF2CC080E189BD82E189BD09B400FECB +:101BA000FDCF8091D8008F7D8093D8008091E10097 +:101BB0008F7E8093E1008091E2008F7E8093E2002F +:101BC0008091E20081608093E2008091ED018823A2 +:101BD00011F084E007C08091E30087FD02C081E03E +:101BE00001C083E08093F1010E94D8098091E10057 +:101BF00083FF29C08091E20083FF25C08091E1002E +:101C0000877F8093E10082E08093F1011092ED01E3 +:101C10008091E1008E7F8093E1008091E2008E7FD1 +:101C20008093E2008091E20080618093E20042E0D4 +:101C300060E080E00E94610C8091F00088608093F9 +:101C4000F0000E94D509FF91EF91BF91AF919F9154 +:101C50008F917F916F915F914F913F912F910F9055 +:101C60000FBE0F901F9018951F920F920FB60F92F4 +:101C700011242F933F934F935F936F937F938F9391 +:101C80009F93AF93BF93CF93DF93EF93FF93C09155 +:101C9000E900CF708091EC00D82FD17080FDD0E8A2 +:101CA0001092E9008091F000877F8093F000789493 +:101CB0000E94780E1092E9008091F0008860809375 +:101CC000F000CD2BCF70C093E900FF91EF91DF9131 +:101CD000CF91BF91AF919F918F917F916F915F91C4 +:101CE0004F913F912F910F900FBE0F901F9018951D +:101CF0001F93CF93DF93CDB7DEB7AA970FB6F894B3 +:101D0000DEBF0FBECDBFE2EFF1E088E08E0F909115 +:101D1000F10091938E13FBCF0E94F4098091E800AB +:101D200083FF1FC18091F2019091F301492F50E090 +:101D30004A30510508F015C1FA01EA5AFF4F0C94D8 +:101D4000B323803881F0823809F00BC18091F6010D +:101D50008F708093E9008091EB0085FB882780F9E4 +:101D60001092E90006C08091EE019091EF0191116F +:101D700082609091E800977F9093E8008093F10053 +:101D80001092F100C8C0282F2D7F09F0EAC08823E7 +:101D900019F0823061F0E5C08091F401813009F0E2 +:101DA000E0C0933009F080E08093EF012BC0809178 +:101DB000F401811127C08091F6018F7009F4D1C020 +:101DC0008093E9002091EB0020FF1CC0933021F4A8 +:101DD0008091EB00806214C09091EB009061909331 +:101DE000EB0021E030E0A90102C0440F551F8A95A5 +:101DF000E2F74093EA001092EA008091EB008860DD +:101E00008093EB001092E9008091E800877F86C004 +:101E10008111A7C01091F4011F778091E3008078B1 +:101E2000812B8093E3008091E800877F8093E80016 +:101E30000E94960C8091E80080FFFCCF8091E30027 +:101E400080688093E300111102C082E001C083E04A +:101E50008093F10186C08058823008F082C0809162 +:101E6000F4019091F5018C3D53E0950779F583E0FD +:101E70008A838AE289834FB7F894DE01139620E0C3 +:101E80003EE051E2E32FF0E050935700E49120FF51 +:101E900003C0E295EF703F5FEF708E2F90E0EA3065 +:101EA00010F0C79601C0C0968D939D932F5F24318B +:101EB00049F74FBF8091E800877F8093E8006AE28E +:101EC00070E0CE0101960E949D0B14C0AE014F5FE1 +:101ED0005F4F6091F6010E94E40ABC01009709F48B +:101EE00040C09091E800977F9093E80089819A81A3 +:101EF0000E94000C8091E8008B778093E80031C04D +:101F0000803879F58091E800877F8093E8008091A0 +:101F1000ED018093F1008091E8008E778093E800D6 +:101F20000E94960C1EC081111CC09091F401923049 +:101F3000C0F48091E800877F8093E8009093ED01E2 +:101F40000E94960C8091ED01811106C08091E30002 +:101F500087FD02C081E001C084E08093F1010E940E +:101F6000E0098091E80083FF0AC08091E800877F44 +:101F70008093E8008091EB0080628093EB00AA964A +:101F80000FB6F894DEBF0FBECDBFDF91CF911F918A +:101F900008950895CF938091F1018823A1F0C09115 +:101FA000E900CF709091EC00892F817090FD80E85E +:101FB000C82B1092E9008091E80083FD0E94780E02 +:101FC000CF70C093E900CF910895909375018093ED +:101FD00074010895E0917401F0917501309721F03A +:101FE0000190F081E02D099480E00895E091740162 +:101FF000F0917501309721F00280F381E02D099472 +:102000000895E0917401F0917501309721F00480FA +:10201000F581E02D099408952091720130917301AA +:102020008217930771F09093730180937201E0918E +:102030007401F0917501309721F00680F781E02D51 +:1020400009940895209170013091710182179307CE +:1020500071F09093710180937001E0917401F0919F +:102060007501309721F00084F185E02D09940895E1 +:1020700008950C9438100E94921B0E9433030C9414 +:10208000541C9F92AF92BF92CF92DF92EF92FF9239 +:102090000F931F93CF93DF9300D000D000D0CDB724 +:1020A000DEB70E944B030DE010E0AA24A394B12CEC +:1020B000902E802F0E943904980129583E4F6901C3 +:1020C000F901F080F826A1F40150110988F78FEF8B +:1020D00089838A831B820E949B1B8160782F9D834A +:1020E0008C8349815A816B818D810E94D8102FC0C9 +:1020F0009091DA0191FF04C08E830E943F048E818B +:1021000025E030E0A501022E01C0440F0A94EAF751 +:10211000E42E4F21C1F029839A828E2191E009F4A7 +:1021200090E09B830E949B1B8160782F9D838C8312 +:1021300049815A816B818D810E94D810F60180817E +:10214000E826E08204C021503109E0F6BDCF0E94AC +:102150003B1F109176010E94EA0F1817B9F00E94F8 +:10216000EA0F8093760126960FB6F894DEBF0FBE75 +:10217000CDBFDF91CF911F910F91FF90EF90DF9036 +:10218000CF90BF90AF909F900C94E30826960FB627 +:10219000F894DEBF0FBECDBFDF91CF911F910F919D +:1021A000FF90EF90DF90CF90BF90AF909F900895F9 +:1021B000CF93DF93CDB7DEB72B970FB6F894DEBF82 +:1021C0000FBECDBF4F83588769877A878B87DE0123 +:1021D000119686E0FD0111928A95E9F785E0FE01EE +:1021E000379601900D928A95E1F749815A816B816A +:1021F0007C818D819E810E9421172B960FB6F894C9 +:10220000DEBF0FBECDBFDF91CF910895CF9388235E +:1022100009F4C2C0C82F823859F40E94EA0F81FD28 +:10222000BBC089E30E94FB190E94C81A89E30CC055 +:10223000833879F40E94EA0F80FDAEC083E50E94E6 +:10224000FB190E94C81A83E50E943D1ACF910C9495 +:10225000C81A843859F40E94EA0F82FD9DC087E4B1 +:102260000E94FB190E94C81A87E4EECF8CEF8C0FF6 +:10227000813A48F48C2F0E947E2181118DC08C2FD1 +:102280000E94FB19E3CF80E28C0F883048F4C770BE +:1022900081E001C0880FCA95EAF70E94811AD6CF63 +:1022A0008BE58C0F833078F4C53A29F0C63A31F0CB +:1022B00083E890E005C081E890E002C082E890E009 +:1022C000CF910C940C1088E58C0F833108F064C01A +:1022D000C83A39F1C93A41F1CA3A49F1CB3A51F118 +:1022E000CC3A59F1CD3A61F1C03B69F1CE3A71F186 +:1022F000CF3A79F1C13B81F1C23B89F1C33B91F106 +:10230000C43B99F1C53BA1F1C63BA9F1C73BB1F173 +:10231000C83BB9F1C93BC1F1CA3BC9F180E090E0CB +:1023200038C082EE90E035C089EE90E032C08AEE8F +:1023300090E02FC085EB90E02CC086EB90E029C0A8 +:1023400087EB90E026C08CEC90E023C08DEC90E011 +:1023500020C083E891E01DC08AE891E01AC082E9BC +:1023600091E017C084E991E014C081E292E011C0CD +:1023700083E292E00EC084E292E00BC085E292E03C +:1023800008C086E292E005C087E292E002C08AE2DD +:1023900092E0CF910C942210CF910895882309F4F4 +:1023A0004BC0823859F40E94EA0F81FF45C089E38F +:1023B0000E94FB190E94C81A89E30CC0833871F48B +:1023C0000E94EA0F80FF38C083E50E94FB190E943B +:1023D000C81A83E50E943D1A0C94C81A843859F42F +:1023E0000E94EA0F82FF28C087E40E94FB190E9426 +:1023F000C81A87E4EFCF9CEF980F913A58F390E218 +:10240000980F983050F4877091E001C0990F8A9529 +:10241000EAF7892F0E94871ADFCF9BE5980F933048 +:1024200020F480E090E00C940C10885A833120F462 +:1024300080E090E00C9422100895882321F00E94FF +:10244000811A0C94C81A0895882321F00E94871AD3 +:102450000C94C81A08957F928F929F92AF92BF9268 +:10246000CF92DF92EF92FF920F931F93CF93DF9360 +:102470001F92CDB7DEB77C01C62E772EFC010581F9 +:1024800002950F70128111110E949E1A0E94F41978 +:10249000882379F0112369F080E28C0D883048F0B0 +:1024A00082E00E94DD190E94F41991E0D82ED9260D +:1024B00001C0D12CE72DE295EF70F0E0E05AFF4F1C +:1024C0000C94B323872D807F072D0F70882311F084 +:1024D0000295007F112389F0002309F490C180E266 +:1024E0008C0D883020F4802F0E94811A03C0802F29 +:1024F0000E94911A0E94C81A82C18C2D0E94CE118E +:10250000002309F495C180E28C0D883020F4802FDF +:102510000E94871A03C0802F0E94971A0E94C81A2F +:1025200087C1972D907F872D8F70903211F0829503 +:10253000807FCC2021F0F1E0CF16B1F01EC0112336 +:1025400049F0002309F414C1013009F011C10E94BF +:10255000B11A6EC1002319F0013009F469C18983F1 +:102560000E94B41A89810AC1112321F0023008F0B7 +:102570005FC1FEC001115CC101C1112321F0002324 +:1025800009F4F6C03CC1002309F4F8C03EC1872D10 +:1025900086958695837090E0009719F0019761F019 +:1025A00047C1112321F08C2D972D937002C080E03C +:1025B00090E00E940C103CC1112321F08C2D972D2E +:1025C000937002C080E090E00E94221031C18C2DF7 +:1025D000112319F00E94431E02C00E94AB1E0E94EC +:1025E000301F26C1872D837009F052C0111120C100 +:1025F0008C2D829586958770880F880F9C2D9F70F3 +:10260000892E912CA12CB12C082E04C0880C991C69 +:10261000AA1CBB1C0A94D2F7C4FE14C00FE010E041 +:1026200020E030E0B901A80104C0440F551F661F27 +:10263000771F8A95D2F7CB01BA0160957095809586 +:10264000909503C060E070E0CB01272D269526957C +:10265000237030E02230310569F02330310589F0F4 +:10266000682979298A299B292130310571F00E9436 +:102670006918DEC0682979298A299B290E94851852 +:10268000D7C00E946918C501B4010E944D18D0C07E +:10269000112319F0872D817001C08695882309F4D4 +:1026A000C7C08C2D829586958770880F880F9C2DCA +:1026B0009F70892E912CA12CB12C082E04C0880C5F +:1026C000991CAA1CBB1C0A94D2F7C4FE14C00FE0CC +:1026D00010E020E030E0B901A80104C0440F551F0C +:1026E000661F771F8A95D2F7CB01BA016095709566 +:1026F0008095909503C060E070E0CB01272D269572 +:1027000026952370422F50E04230510569F0433046 +:10271000510589F0682979298A299B294130510579 +:1027200071F00E94431984C0682979298A299B295C +:102730000E945F197DC00E944319C501B4010E9427 +:10274000271976C08C2D90E0FC01E05EF109E5319F +:10275000F10508F050C0E059FF4F0C94B3230C2D45 +:102760000F70872D8F71112331F00E94C018802FB8 +:102770000E941D125DC00E94E118802F0E94241249 +:1027800057C0112339F0011153C0872D8F710E945A +:1027900006194EC0023008F04BC0F7CF112339F0B4 +:1027A000872D8F710E94C01843C01123C9F3872D54 +:1027B0008F710E94E1183CC0112329F0872D8F7181 +:1027C0000E94AB1835C00E94A11832C0112351F0ED +:1027D000172D1F71812F0E94C01863E0812F0E9466 +:1027E000D41926C081E00E94DD19023008F182E090 +:1027F0000E94DD191DC0112331F0002389F28C2DB8 +:102800000E94061115C0002391F28C2D0E94CE115A +:102810000FC0472D4F706C2DC7010E9415050E94F7 +:10282000C51706C0472D4F706C2DC7010E94F205D9 +:10283000DD20F9F00E94D01980FD1BC0F701128243 +:102840000E94CA190E94C018C7010E9448140E9421 +:10285000CA190F90DF91CF911F910F91FF90EF90C8 +:10286000DF90CF90BF90AF909F908F907F900C940F +:10287000E1180F90DF91CF911F910F91FF90EF9092 +:10288000DF90CF90BF90AF909F908F907F900895F2 +:102890000F931F93CF93DF93EC01888199812B8154 +:1028A0003C81232BB9F09F3F11F48F3F99F0CE016B +:1028B0000E944A05882371F0688179818A810E948B +:1028C000C6198C010E947B190E944218B801CE01E2 +:1028D0000E942B12DF91CF911F910F9108950E94BA +:1028E0009E1A0E94AE1A0E94731A0E94C81A0E9471 +:1028F000E11F0E94301F80E090E00E940C1080E0F9 +:1029000090E00C9422100E948E1A0C946F140E9476 +:10291000BB19292F22952F7030E02C3031054CF453 +:102920002A3031056CF42250310922303105A8F4E7 +:1029300007C02C30310569F02F30310551F00DC042 +:10294000803F69F018F4803E40F409C0843F29F4C8 +:1029500006C093FB882780F9089580E0089581E000 +:102960000895CF93DF9300D000D01F92CDB7DEB78C +:102970000F900F900F900F900F90DF91CF910895CF +:10298000CF93DF9300D000D000D0CDB7DEB726962E +:102990000FB6F894DEBF0FBECDBFDF91CF91089583 +:1029A0001F93CF93DF93C091850116E0809186013C +:1029B000C81799F0D0E01C9FF0011D9FF00D112465 +:1029C000E957FE4F408151816281738184819581F5 +:1029D0000E94C0142196C770E9CFDF91CF911F915B +:1029E00008954091B7015091B8016091B90170917B +:1029F000BA018091BB019091BC010C94C0148091EC +:102A0000BC0182958F7009F054C08091B901882370 +:102A100009F44FC080918501A09186016091B701B2 +:102A20007091B8014091BA015091BB01B6E08A178C +:102A300009F43FC090E041155105C1F17F3F11F409 +:102A40006F3FA1F1B89FF001B99FF00D1124E95734 +:102A5000FE4F218172132AC02081621327C0228178 +:102A6000211124C0238134812417350710F421500B +:102A70003109241B350B283C3105C0F42091BC01E1 +:102A80002F7020612093BC0126E0289FF001299F30 +:102A9000F00D1124E457FE4F80818F708061808398 +:102AA00087EB91E00E9448140C94D0140196877033 +:102AB000BECF0895CF92DF92EF92FF920F931F93B4 +:102AC000CF93DF93CDB7DEB762970FB6F894DEBF32 +:102AD0000FBECDBF8C0185E0F801DE011D9601908F +:102AE0000D928A95E1F7D8014C9111965C9111975E +:102AF00012966C9112971396CD90DC9014973091AA +:102B0000B7017091B8018091BA019091BB01009713 +:102B100009F46BC17F3F19F43F3F09F466C1E090AF +:102B2000B901EE2009F4C0C02091BC01C816D90635 +:102B300028F0F601E81BF90BCF0104C080959095B1 +:102B40008C0D9D1DFF24F394883C910578F0F12CA9 +:102B5000207F09F0C6C07C2DD98AC88A89890E9445 +:102B6000B11487EB91E00E944814B1C0822F807F9E +:102B700009F046C0751314C0341312C0611110C09F +:102B80002F7020612093BC010E94F11487EB91E02B +:102B90000E9448148091BC01D80115968C932EC0D8 +:102BA000CD2819F15F3F11F44F3FF9F0F62E611176 +:102BB0001CC0809185012091860136E0821709F4BE +:102BC0005AC090E0389FF001399FF00D1124E95769 +:102BD000FE4F7181571306C07081471303C0728185 +:102BE000711103C001968770E9CFF62E662309F4B0 +:102BF00018C18091BC0181608093BC01F12C11C18E +:102C0000751308C0341306C0611104C08091BC0163 +:102C1000D801C3C04D875E878D859E856A8B0E94D3 +:102C200087146A898823E1F16623D1F12091BC01E0 +:102C3000822F82958F7090E0029774F08091B70197 +:102C40009091B80198878F831986DB86CA862C8776 +:102C5000CE0107960E94481486E0F801A7EBB1E088 +:102C600001900D928A95E1F70E94FF140E94F114E1 +:102C7000FF24F394D6C04D875E878D859E850E9484 +:102C8000BB19292F22952F7030E0223031050CF02E +:102C9000BCC09F7009F0B6C0805E883008F4C1C027 +:102CA000C8010E944814E4CFC816D90608F453C0DE +:102CB000F601E81BF90BCF01883C910508F450C0E0 +:102CC000F12C7C2DD98AC88A89890E94B114E7EB3E +:102CD000F1E086E0DF011D928A95E9F70E94F11488 +:102CE000A0C0751314C0341312C0611110C08091BC +:102CF000BC01F8018583C8010E94481486E0E7EB17 +:102D0000F1E0DF011D928A95E9F7FE2C8AC04D871C +:102D10005E878D859E856A8B0E9487146A898823C9 +:102D200009F4BECF662309F4BBCF2091BC01822FEA +:102D300082958F7090E002970CF48ECF8091B7014E +:102D40009091B8019A8389831B82DD82CC822E8385 +:102D5000CE0101967FCF809590958C0D9D1DACCFB7 +:102D6000F62E662309F49CCF75132EC034132CC0A5 +:102D70002091BC0120FD1FC0822F82958F70D9F059 +:102D8000D80115962C9315978F3049F08F5F982FA7 +:102D90009295907F822F8F70892B15968C93C80106 +:102DA0000E94481486E0F801A7EBB1E001900D9273 +:102DB0008A95E1F793CF86E0F801A7EBB1E00190A7 +:102DC0000D928A95E1F72DC04D875E878D859E8592 +:102DD0000E948714811140CF8091BC018160809353 +:102DE000BC01C8010E9448141CC0662309F458CFD6 +:102DF0004D875E878D859E850E948714882309F400 +:102E00004FCF2ACF811148CF0CC0243031050CF0B0 +:102E100047CF9F7009F440CFF8019581907F09F06A +:102E20003BCF8F2D62960FB6F894DEBF0FBECDBF9D +:102E3000DF91CF911F910F91FF90EF90DF90CF9096 +:102E400008951F93CF93DF93CDB7DEB72C970FB6BE +:102E5000F894DEBF0FBECDBF4F83588769877A874E +:102E60008B879C87CE0107960E945A15882369F0AC +:102E70008F8198852A853B85232BF1F19F3F09F0AF +:102E800063C08F3F09F060C037C086E0FE0137960F +:102E9000DE01119601900D928A95E1F76F81788598 +:102EA000EA85FB85309741F17F3F11F46F3F21F1B7 +:102EB0002091860130E0C9010196877099274091E1 +:102EC000850150E08417950709F447C069837A8328 +:102ED000FD83EC8396E0929FD001939FB00D112467 +:102EE000A957BE4FFE01319601900D929A95E1F7D8 +:102EF000809386010E94D01416E080918501909104 +:102F000086018917C1F1189FC001112489579E4F6E +:102F10000E945A15882379F1E09185011E9FF001E6 +:102F20001124E957FE4F4081518162817381848170 +:102F300095810E94C0148091850190E00196877070 +:102F4000992780938501D9CF4F81588569857A85E6 +:102F50008B859C850E94C014CFCF0E948314109251 +:102F6000860110928501E7EBF1E086E0DF011D921A +:102F70008A95E9F7C1CF2C960FB6F894DEBF0FBE45 +:102F8000CDBFDF91CF911F910895EF92FF920F93E4 +:102F90001F93CF93DF938C01009709F46CC0F12C41 +:102FA000EE24E394E8012196F8018491843740F4FB +:102FB000843008F051C0813081F0823019F15BC05B +:102FC000853709F444C0A8F19CE7980F903708F0C2 +:102FD00052C08F770E94CE1141C00E5F1F4FFE017D +:102FE000C49180E28C0F883048F4C7708E2D01C0E8 +:102FF000880FCA95EAF70E94A11A14C08C2F0E946C +:1030000006112DC00E5F1F4FFE01C49180E28C0F90 +:10301000883058F4C7708E2D01C0880FCA95EAF722 +:103020000E94A71A0E94C81A1AC08C2F0E94CE11A3 +:1030300016C00E5F1F4FFE01C491CC2381F08FE9B3 +:103040009FE00197F1F700C00000C150F6CF0E5F7E +:103050001F4FFE01F49003C00E9406118E018F2DB8 +:10306000882309F49FCFEFE9FFE03197F1F700C023 +:1030700000008150F5CFDF91CF911F910F91FF900C +:10308000EF90089508956093C1017093C2018093F9 +:10309000C3019093C4010C946F140F931F9300917C +:1030A000C1011091C2012091C3013091C401DC0122 +:1030B000CB01802B912BA22BB32B8093C10190933A +:1030C000C201A093C301B093C4011F910F910C944E +:1030D0006F140F931F930091C1011091C2012091B1 +:1030E000C3013091C401DC01CB0180239123A223D1 +:1030F000B3238093C1019093C201A093C301B09305 +:10310000C4011F910F910C946F140F931F930091A2 +:10311000C1011091C2012091C3013091C401DC01B1 +:10312000CB0180279127A227B3278093C1019093D9 +:10313000C201A093C301B093C4011F910F910C94DD +:103140006F141092BD011092BE011092BF01109237 +:10315000C0010C946F1441E050E060E070E004C0E6 +:10316000440F551F661F771F8A95D2F74093BD0104 +:103170005093BE016093BF017093C0010C946F1413 +:1031800041E050E060E070E004C0440F551F661F4E +:10319000771F8A95D2F78091BD019091BE01A091D1 +:1031A000BF01B091C001482B592B6A2B7B2B409358 +:1031B000BD015093BE016093BF017093C0010C9498 +:1031C0006F1441E050E060E070E004C0440F551F10 +:1031D000661F771F8A95D2F7409550956095709538 +:1031E0008091BD019091BE01A091BF01B091C0013D +:1031F000482359236A237B234093BD015093BE018A +:103200006093BF017093C0010C946F1441E050E0D3 +:1032100060E070E004C0440F551F661F771F8A9559 +:10322000D2F78091BD019091BE01A091BF01B091F4 +:10323000C001482759276A277B274093BD01509337 +:10324000BE016093BF017093C0010C946F140F9383 +:103250001F930091BD011091BE012091BF013091DB +:10326000C001DC01CB01802B912BA22BB32B8093CF +:10327000BD019093BE01A093BF01B093C0011F9107 +:103280000F910C946F140F931F930091BD01109137 +:10329000BE012091BF013091C001DC01CB01802330 +:1032A0009123A223B3238093BD019093BE01A093E9 +:1032B000BF01B093C0011F910F910C946F140F9335 +:1032C0001F930091BD011091BE012091BF0130916B +:1032D000C001DC01CB0180279127A227B32780936F +:1032E000BD019093BE01A093BF01B093C0011F9197 +:1032F0000F910C946F140895CF92DF92EF92FF928A +:103300000F931F93CF93DF938C01C090C101D09096 +:10331000C201E090C301F090C4018091BD01909181 +:10332000BE01A091BF01B091C001C82AD92AEA2AE2 +:10333000FB2ACFE1D0E0D701C6010C2E04C0B69520 +:10334000A795979587950A94D2F780FF06C0B80194 +:103350008C2F0E944808019721F4219760F780E0A4 +:1033600001C08C2FDF91CF911F910F91FF90EF90B3 +:10337000DF90CF900895CF93DF93EC010E947C19EA +:10338000BE010E944808DF91CF910895CB010E94B1 +:10339000BB1908958091C5018595859585950895FA +:1033A0008091C5018770089598E0899F900111244C +:1033B000262B2093C5010C94C0182091C50180953F +:1033C00082238093C501982F977069F430E0482FCD +:1033D000552747FD50952417350729F08595859584 +:1033E00085950C94E11808959091C501977081E03E +:1033F00009F480E0089590910C01992321F09091B7 +:103400000D01911109C020910E0130910F01F901B8 +:1034100032969FEF40E01FC0982F9695969596950F +:103420009F3050F5E0910E01F0910F01E90FF11D71 +:10343000877021E030E0A90102C0440F551F8A9532 +:10344000E2F7CA019181892B818308959F3F39F06A +:103450004F5F4E3041F051915813F8CF0DC05111CC +:10346000F7CF942FF5CF9F3F39F0F901E90FF11D08 +:1034700097FDFA9582830895089590910C01992300 +:1034800021F090910D01911109C020910E01309110 +:103490000F01F9013296205F3F4F1FC0982F96957C +:1034A000969596959F30F0F4E0910E01F0910F0102 +:1034B000E90FF11D877021E030E0A90102C0440F3F +:1034C000551F8A95E2F7CA018095918189238183EE +:1034D00008953196E217F30729F090819813F9CFF8 +:1034E0001082F7CF089581E090E0E0910E01F09115 +:1034F0000F01E80FF91F1082019680319105A9F79D +:1035000008959091D901892B8093D90108958095D0 +:103510009091D90189238093D90108951092D901FE +:1035200008959091D801892B8093D80108958095B2 +:103530009091D80189238093D80108951092D801E1 +:1035400008959091D701892B8093D7010895809594 +:103550009091D70189238093D70108951092D701C4 +:1035600008958093C60108951092C6010895809130 +:103570000E0190910F01FC0131969C01205F3F4F9D +:1035800080E0919191118F5FE217F307D1F70895D1 +:10359000E0910E01F0910F018091D9018083E091BB +:1035A0000E01F0910F0190818091D801892B8083C9 +:1035B000E0910E01F0910F0190818091D701892B4C +:1035C00080838091C601882361F0E0910E01F09123 +:1035D0000F019081892B80830E94B71A811110926C +:1035E000C60180910E0190910F010C94F60F20E01E +:1035F000009739F0AC0141505109842395232F5F86 +:10360000F7CF822F0895CF92DF92EF92FF926C0155 +:10361000EE24FF24C114D104E104F10421F0C70118 +:10362000B60120E101C020E0C72ED82EE92EFF24EC +:10363000C114D104E104F10419F0285FC701B601F7 +:103640006B017C0154E0F694E794D794C7945A95A3 +:10365000D1F7C114D104E104F10419F02C5FC701C2 +:10366000B6016B017C0142E0F694E794D794C794CD +:103670004A95D1F7C114D104E104F10419F02E5F89 +:10368000C701B601DC01CB01B695A7959795879543 +:10369000892B8A2B8B2B09F02F5F822FFF90EF90C5 +:1036A000DF90CF9008958091F101843021F1109244 +:1036B000DB0120E488E190E00FB6F894A8958093B0 +:1036C00060000FBE2093600080E00E94E30883B793 +:1036D000817F846083BF83B7816083BF789488953E +:1036E00083B78E7F83BF88E10FB6F8948093600024 +:1036F000109260000FBE0895089508950E947C1BEB +:103700000E944B030E947D1B0E94400491E08111A6 +:1037100001C090E0892F08950E9483140E94EA0F4F +:103720000C94E30882E084BD93E095BD9AEF97BDC9 +:1037300080936E0008952FB7F8948091DC019091EA +:10374000DD01A091DE01B091DF012FBF0895CF927E +:10375000DF92EF92FF920F931F932FB7F89440914F +:10376000DC015091DD016091DE017091DF012FBF1E +:103770006A017B01EE24FF248C0120E030E0C016BA +:10378000D106E206F30610F4415051099A01281BB4 +:10379000390BC9011F910F91FF90EF90DF90CF90EF +:1037A00008951F920F920FB60F9211248F939F933B +:1037B000AF93BF938091DC019091DD01A091DE0178 +:1037C000B091DF010196A11DB11D8093DC019093A2 +:1037D000DD01A093DE01B093DF01BF91AF919F9116 +:1037E0008F910F900FBE0F901F9018950E94E70CBD +:1037F000F8942FEF87EA91E6215080409040E1F75E +:1038000000C0000087E090EBDC018093FB01909307 +:10381000FC01A093FD01B093FE019CE088E10FB68E +:10382000F894A895809360000FBE90936000FFCF3E +:10383000EF92FF920F931F93CF93DF93D82FCDE09A +:103840008C2F0E94390405E010E0E82EF12CC7010E +:10385000002E02C0959587950A94E2F780FF09C073 +:10386000602F7C2F80E00E94F305D81302C081E016 +:1038700006C00150110958F7C15010F780E0DF91E0 +:10388000CF911F910F91FF90EF900895CF93C82F84 +:103890008CE20E94181C882321F08C2FCF910C946D +:1038A000181C80E0CF910895CF930E949B1D811139 +:1038B00002C00E94811DC5E6C15049F00E944B0321 +:1038C0008FE39CE90197F1F700C00000F5CF89E292 +:1038D0000E94461C811113C18AE20E94461C81117C +:1038E0000E94811D85E00E94461C81110E94F61BEA +:1038F0000E94A61D8093DA0187E00E94461C88235F +:10390000A9F18BE10E94461C882351F08091DA01D5 +:1039100081FB222720F991E0922790FB81F90EC0CC +:103920008EE00E94461C882361F08091DA0182FBC0 +:10393000222720F991E0922790FB82F98093DA0107 +:1039400015C080E10E94461C9091DA01882341F065 +:1039500093FB222720F981E0822780FB93F904C0A2 +:10396000892F809580FB90F99093DA018091DA019C +:103970000E94AA1D0E94B81D8093FA0180EE0E9449 +:10398000461C882341F08091FA01982F909590FB76 +:1039900080F98093FA0189E30E94461C882359F03C +:1039A0008091FA0181FB222720F991E0922790FB78 +:1039B00081F98093FA0182EE0E94461C882359F017 +:1039C0008091FA0182FB222720F991E0922790FB57 +:1039D00082F98093FA0186EE0E94461C882359F0F2 +:1039E0008091FA0183FB222720F991E0922790FB36 +:1039F00083F98093FA0183EE0E94461C882359F0D4 +:103A00008091FA0184FB222720F991E0922790FB14 +:103A100084F98093FA0185E30E94461C882359F0BB +:103A20008091FA0185FB222720F991E0922790FBF3 +:103A300085F98093FA0181E30E94461C882359F09E +:103A40008091FA0186FB222720F991E0922790FBD2 +:103A500086F98093FA0181E10E94461C882359F07F +:103A60008091FA0187FB222720F991E0922790FBB1 +:103A700087F98093FA018091FA010E94BC1D809120 +:103A8000FA0187FB882780F980930D0187E20E9465 +:103A9000461CC82F8EE10E94461C8111C2608FE136 +:103AA0000E94461C8111C46080E20E94461C811164 +:103AB000C86081E20E94461C8111C06182E20E94BE +:103AC000461C8111C06283E20E94461C8111C064C1 +:103AD00084E20E94461C882311F0C06802C0CC23F7 +:103AE00029F08C2F0E94B31D6C2F03C00E94AF1DC4 +:103AF000682F70E080E090E0CF910C944318CF9154 +:103B000008956DEE7EEF80E090E00E94ED2360E08E +:103B100082E090E00E94DB2360E083E090E00E947E +:103B2000DB2360E084E090E00E94DB2360E085E03E +:103B300090E00C94DB2380E090E00E94D52321E00C +:103B40008D3E9E4F09F020E0822F089582E090E0A4 +:103B50000C94CD23682F82E090E00C94DB2383E06B +:103B600090E00C94CD23682F83E090E00C94DB234D +:103B700084E090E00C94CD23682F84E090E00C94D6 +:103B8000DB238091E20180FF0BC06091130185E08F +:103B9000689FB001112475956795759567952BC041 +:103BA00081FF09C06091130185E0689FB001112475 +:103BB0007595679520C082FF07C06091130185E06D +:103BC000689FB001112417C09091E3019923D1F0AF +:103BD00060911201961788F72091130185E0289FC4 +:103BE00090011124929FA001939F500D112470E029 +:103BF000CA010E949F236038710540F46115710568 +:103C000039F002C065E070E0862F08958FE70895CF +:103C100081E008958091E20180FF08C06091110168 +:103C200070E0759567957595679521C081FF06C011 +:103C30006091110170E07595679519C082FF04C00D +:103C40006091110170E010C09091E3019923C1F0DF +:103C5000609110019617A0F780911101899FC00112 +:103C6000112470E00E949F236038710528F46115CB +:103C7000710521F0862F08958FE7089581E008955A +:103C800061E070E0F4CF803F21F40E94C11D819576 +:103C900004C0813F29F40E94C11D8093E60108956C +:103CA000823F21F40E94C11D819504C0833F29F405 +:103CB0000E94C11D8093E5010895893F19F40E9477 +:103CC0000A1E05C08A3F31F40E940A1E8195809326 +:103CD000E70108958B3F21F40E940A1E819504C0DC +:103CE0008C3F29F40E940A1E8093E8010895843FC6 +:103CF00021F48091E401816017C0853F21F4809117 +:103D0000E401826011C0863F21F48091E401846067 +:103D10000BC0873F21F48091E401886005C0883F93 +:103D200031F48091E40180618093E40108958D3F36 +:103D300021F48091E20181600BC08E3F21F48091DB +:103D4000E201826005C08F3F29F48091E201846026 +:103D50008093E2010895803F39F48091E60187FF66 +:103D60006CC01092E60169C0813F29F48091E601A0 +:103D70001816BCF362C09091E501823F29F497FFC9 +:103D80005CC01092E50159C0833F19F41916CCF3B9 +:103D900054C0893F41F48091E70118160CF04DC0E2 +:103DA0001092E7014AC08A3F29F48091E70187FF1A +:103DB00044C0F6CF8B3F39F48091E80187FF3DC0C6 +:103DC0001092E8013AC08C3F29F48091E80118165E +:103DD000BCF333C0843F21F48091E4018E7F17C08F +:103DE000853F21F48091E4018D7F11C0863F21F44D +:103DF0008091E4018B7F0BC0873F21F48091E40127 +:103E0000877F05C0883F31F48091E4018F7E8093E5 +:103E1000E40113C08D3F21F48091E2018E7F0BC03D +:103E20008E3F21F48091E2018D7F05C08F3F29F400 +:103E30008091E2018B7F8093E2018091E501811105 +:103E40000EC08091E60181110AC08091E7018111C5 +:103E500006C08091E801811102C01092E30108952B +:103E600084EE91E00E9401100E949B1B9093E1015F +:103E70008093E00108951F93CF93DF938091E00139 +:103E80009091E1010E94A71BAC019091E30199235D +:103E900021F02091140130E006C0209115018AE044 +:103EA000289F900111244217530708F486C080917F +:103EB000E501C091E601D091E7011091E80181117F +:103EC00007C0C11176C0D11174C0111172C075C084 +:103ED0009F3F19F09F5F9093E301181624F40E940E +:103EE000C11D8093E5018091E50187FF05C00E9417 +:103EF000C11D81958093E5011C1624F40E94C11D0B +:103F00008093E6018091E60187FF05C00E94C11DF4 +:103F100081958093E6016091E501662339F1C091B6 +:103F2000E601CC2319F1772767FD7095872F972F2E +:103F30000E94B02223E333E343E35FE30E941423B0 +:103F40000E947D226093E5016C2F772767FD7095B5 +:103F5000872F972F0E94B02223E333E343E35FE3ED +:103F60000E9414230E947D226093E6011D1624F412 +:103F70000E940A1E8093E7018091E70187FF05C038 +:103F80000E940A1E81958093E701111624F40E9475 +:103F90000A1E8093E8018091E80187FF05C00E9416 +:103FA0000A1E81958093E801DF91CF911F910C94B7 +:103FB000301F9F3F09F08ECF96CFDF91CF911F9199 +:103FC0000895E4EEF1E085E0DF011D928A95E9F7BE +:103FD0001092E3011092E2010895833081F128F4F8 +:103FE000813059F08230D1F00895853009F449C00C +:103FF000B8F1863009F456C0089580911501262F36 +:1040000030E0280F311D2F3F310524F4680F6093F5 +:10401000150108958FEF8093150108958091140183 +:10402000262F30E0280F311D2F3F310524F4680F73 +:104030006093140108958FEF809314010895809187 +:104040001301262F30E0280F311D2F3F310524F4B6 +:10405000680F6093130108958FEF80931301089503 +:1040600080911201262F30E0280F311D2F3F31059E +:1040700024F4680F6093120108958FEF809312016A +:10408000089580911101262F30E0280F311D2F3F18 +:10409000310524F4680F6093110108958FEF809328 +:1040A0001101089580911001262F30E0280F311D55 +:1040B0002F3F310524F4680F6093100108958FEFAE +:1040C000809310010895833011F128F4813049F074 +:1040D000823091F00895853081F120F18630C1F170 +:1040E000089580911501681720F4861B80931501AF +:1040F000089510921501089580911401681720F415 +:10410000861B8093140108951092140108958091E4 +:104110001301681720F4861B8093130108951092F1 +:104120001301089580911201681720F4861B809373 +:1041300012010895109212010895809111016817DB +:1041400020F4861B809311010895109211010895A7 +:1041500080911001681720F4861B80931001089548 +:104160001092100108950F931F938D3109F46BC0C5 +:1041700008F03FC08E3009F47FC0C0F4873009F4E6 +:1041800069C068F4863009F0B1C08091DA01817F9E +:104190008E7F8093DA0181E08093EA01A8C08830A5 +:1041A00009F4A2C08B3009F49FC0A0C0863109F485 +:1041B0009BC078F4803109F472C0813109F096C057 +:1041C0000E94831490910D0181E0892780930D0155 +:1041D0008BC0893109F488C08B3109F087C0809188 +:1041E000DA0181FB222720F991E0922790FB81F9E7 +:1041F0004CC0853309F470C048F4873209F46CC0B0 +:1042000008F459C0893209F467C070C0833438F4A7 +:104210008A3308F04EC0883309F466C067C083341F +:1042200009F45AC0883409F061C00E9483140FEF6A +:1042300013ED20E3015010402040E1F700C00000E2 +:104240000E94F61B51C00E9437220E94EA0F0E9472 +:10425000E3084AC09091DA01892F8095817080FB34 +:1042600090F929F0966098609093DA0140C0997FA8 +:10427000977F9093DA0138C08091DA0182FB222780 +:1042800020F991E0922790FB82F98093DA0199233B +:1042900059F18091DA0181608093DA0125C0809123 +:1042A000DA0183FB222720F991E0922790FB83F922 +:1042B000ECCF895301C08D5141E050E060E070E0E7 +:1042C0008A019B0104C0000F111F221F331F8A9512 +:1042D000D2F7C901B80104C061E070E080E090E06D +:1042E0000E9443180E94831481E001C080E01F9166 +:1042F0000F91089580E0089580E00895CF93C82F2E +:104300008091EA01813079F018F08230E9F187C0BC +:10431000E0910E01F0910F018081813169F08232CC +:1043200009F07FC009C0E0910E01F0910F0180817A +:10433000813111F0823261F48C2F0E947A21811137 +:1043400004C08C2F0E94B3201DC081E090E01AC0F1 +:104350008C2F0E947C21811114C0C43179F048F463 +:10436000CB3079F0C03109F060C082E08093EA017F +:1043700008C0C93219F0C83321F057C01092EA01C1 +:1043800054C081E0817053C0C93289F118F5C4313D +:1043900071F1A8F4C73009F046C08AE08093150196 +:1043A00094E19093140193E0909313018093120190 +:1043B00088E08093110188E28093100134C0CE51CF +:1043C000C63088F5EC2FF0E0E65DFE4F80818093EB +:1043D000E90129C0CE34E9F020F4CB3421F56AE0BC +:1043E00013C0C13579F0C235F1F461E00DC08091A0 +:1043F000E901882319F01092E90115C081E080934A +:10440000EA0115C061E006C08091E9010E94ED1F3C +:104410000AC06AE08091E9010E94632004C0109202 +:10442000EA0180E004C081E002C080E0ABCFCF9120 +:104430000895E1E8F0E08081886080838081816078 +:1044400080838FB7F89493E09093890090ED9093D8 +:1044500088008FBF0895EFE6F0E08081826080835E +:104460000895EFE6F0E080818D7F80830895EFE688 +:10447000F0E0908182E08927808308951F920F9257 +:104480000FB60F9211242F933F934F935F936F9327 +:104490007F938F939F93AF93BF93EF93FF938091FD +:1044A000EB019091EC0101969093EC018093EB016C +:1044B000811103C082E00E94E308E091EC01E695DF +:1044C000E695F0E0EC54FB4FE4918091EB018E1304 +:1044D00003C080E00E94E308FF91EF91BF91AF918C +:1044E0009F918F917F916F915F914F913F912F910C +:1044F0000F900FBE0F901F90189504D06894B111C3 +:104500008DC0089570D088F09F5790F0B92F9927EB +:10451000B751A0F0D1F0660F771F881F991F1AF0CE +:10452000BA95C9F712C0B13081F077D0B1E00895E3 +:1045300074C0672F782F8827B85F39F0B93FCCF364 +:10454000869577956795B395D9F73EF490958095C4 +:10455000709561957F4F8F4F9F4F0895E89409C0E4 +:1045600097FB3EF490958095709561957F4F8F4FA6 +:104570009F4F9923A9F0F92F96E9BB279395F695BC +:10458000879577956795B795F111F8CFFAF4BB0F3A +:1045900011F460FF1BC06F5F7F4F8F4F9F4F16C09E +:1045A000882311F096E911C0772321F09EE8872F28 +:1045B000762F05C0662371F096E8862F70E060E0E4 +:1045C0002AF09A95660F771F881FDAF7880F96955D +:1045D000879597F9089557FD9058440F551F59F046 +:1045E0005F3F71F04795880F97FB991F61F09F3FE0 +:1045F00079F087950895121613061406551FF2CF09 +:104600004695F1DF08C0161617061806991FF1CF58 +:1046100086957105610508940895E894BB2766277F +:104620007727CB0197F908950BD078C069D028F08F +:104630006ED018F0952309F05AC05FC01124EECF58 +:10464000CADFA0F3959FD1F3950F50E0551F629FED +:10465000F001729FBB27F00DB11D639FAA27F00DDB +:10466000B11DAA1F649F6627B00DA11D661F829F02 +:104670002227B00DA11D621F739FB00DA11D621FE7 +:10468000839FA00D611D221F749F3327A00D611D04 +:10469000231F849F600D211D822F762F6A2F1124E6 +:1046A0009F5750408AF0E1F088234AF0EE0FFF1F39 +:1046B000BB1F661F771F881F91505040A9F79E3F70 +:1046C000510570F014C0AACF5F3FECF3983EDCF3C5 +:1046D000869577956795B795F795E7959F5FC1F7AD +:1046E000FE2B880F911D9695879597F9089597F958 +:1046F0009F6780E870E060E008959FEF80EC089588 +:1047000000240A94161617061806090608950024B0 +:104710000A9412161306140605060895092E03942A +:10472000000C11F4882352F0BB0F40F4BF2B11F49E +:1047300060FF04C06F5F7F4F8F4F9F4F089597FBBF +:10474000072E16F4009407D077FD09D00E94B923F4 +:1047500007FC05D03EF4909581959F4F0895709584 +:1047600061957F4F0895EE0FFF1F0590F491E02DA6 +:104770000994AA1BBB1B51E107C0AA1FBB1FA617A8 +:10478000B70710F0A61BB70B881F991F5A95A9F7FA +:1047900080959095BC01CD010895F999FECF92BD09 +:1047A00081BDF89A992780B50895A8E1B0E042E06C +:1047B00050E00C94F523262FF999FECF92BD81BDD0 +:1047C000F89A019700B4021639F01FBA20BD0FB64F +:1047D000F894FA9AF99A0FBE08950196272F0E942D +:1047E000DC230C94DB23DC01CB01FC01F999FECF27 +:1047F00006C0F2BDE1BDF89A319600B40D92415069 +:0A4800005040B8F70895F894FFCF78 +:10480A000220E508730950091C09E8080101C701DB +:10481A0028080A03140A3F4D363975042804F2039E +:10482A00B9034C0365037E039703010203040506DB +:04483A000708090062 +:00000001FF diff --git a/keyboards/ergodox_ez/keymaps/osx_fr/keymap.c b/keyboards/ergodox_ez/keymaps/osx_fr/keymap.c new file mode 100644 index 0000000000..de951666dd --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/osx_fr/keymap.c @@ -0,0 +1,187 @@ +// French AZERTY version of the default_osx file +#include "ergodox_ez.h" +#include "debug.h" +#include "action_layer.h" +#include "keymap_french_osx.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 + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | - | & | é | " | ' | ( | LEFT | | RIGHT| § | è | ! | ç | à | ) | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Del | A | Z | E | R | T | L1 | | L1 | Y | U | I | O | P | ` | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | BkSp | Q | S | D | F | G |------| |------| H | J | K | L | M | LGui | + * |--------+------+------+------+------+------| Hyper| | Meh |------+------+------+------+------+--------| + * | LShift |W/Ctrl| X | C | V | B | | | | N | , |; / L2| : |=/Ctrl| RShift | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | ù /L1| < |AltShf| Left | Right| | Up | Down | ^ | $ | ~L1 | + * `----------------------------------' `----------------------------------' + * ,-------------. ,---------------. + * | App | LGui | | Alt |Ctrl/Esc| + * ,------|------|------| |------+--------+------. + * | | | Home | | PgUp | | | + * | Space|Backsp|------| |------| Tab |Enter | + * | |ace | End | | PgDn | | | + * `--------------------' `----------------------' + */ +// If it accepts an argument (i.e, is a function), it doesn't need KC_. +// Otherwise, it needs KC_* +[BASE] = KEYMAP( // layer 0 : default + // left hand + FR_MINS, FR_AMP, FR_EACU, FR_QUOT, FR_APOS, FR_LPRN, KC_LEFT, + KC_DELT, FR_A, FR_Z, KC_E, KC_R, KC_T, TG(1), + KC_BSPC, FR_Q, KC_S, KC_D, KC_F, KC_G, + KC_LSFT, CTL_T(FR_W), KC_X, KC_C, KC_V, KC_B, ALL_T(KC_NO), + LT(SYMB,FR_UGRV), FR_LESS, LALT(KC_LSFT), KC_LEFT, KC_RGHT, + ALT_T(KC_APP), KC_LGUI, + KC_HOME, + KC_SPC, KC_BSPC, KC_END, + + // right hand + KC_RGHT, FR_SECT, FR_EGRV, FR_EXLM, FR_CCED, FR_AGRV, FR_RPRN, + TG(1), KC_Y, KC_U, KC_I, KC_O, KC_P, FR_GRV, + KC_H, KC_J, KC_K, KC_L, FR_M, KC_LGUI, + MEH_T(KC_NO), KC_N, FR_COMM, LT(MDIA, FR_SCLN), FR_COLN, CTL_T(FR_EQL), KC_RSFT, + KC_UP, KC_DOWN, KC_LBRC, KC_RBRC, KC_FN1, + KC_LALT, CTL_T(KC_ESC), + KC_PGUP, + KC_PGDN, KC_TAB, KC_ENT + ), +/* Keymap 1: Symbol Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | ! | @ | { | } | | | | | | Up | 7 | 8 | 9 | * | F12 | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | # | $ | ( | ) | ` |------| |------| Down | 4 | 5 | 6 | + | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | % | ^ | [ | ] | ~ | | | | & | 1 | 2 | 3 | \ | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | , | 0 | = | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// SYMBOLS +[SYMB] = KEYMAP( + // left hand + KC_TRNS,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, + KC_TRNS,FR_EXLM,FR_AT, FR_LCBR,FR_RCBR,FR_PIPE,KC_TRNS, + KC_TRNS,FR_HASH,FR_DLR, FR_LPRN,FR_RPRN,FR_GRV, + KC_TRNS,FR_PERC,FR_CIRC,FR_LBRC,FR_RBRC,FR_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, FR_7, FR_8, FR_9, FR_ASTR, KC_F12, + KC_DOWN, FR_4, FR_5, FR_6, FR_PLUS, KC_TRNS, + KC_TRNS, FR_AMP, FR_1, FR_2, FR_3, FR_BSLS, KC_TRNS, + KC_TRNS,FR_COMM, FR_0, FR_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 +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; + } + +}; \ No newline at end of file diff --git a/keyboards/ergodox_ez/keymaps/osx_kinesis_pnut/compiled.hex b/keyboards/ergodox_ez/keymaps/osx_kinesis_pnut/compiled.hex new file mode 100644 index 0000000000..8a7ad640d0 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/osx_kinesis_pnut/compiled.hex @@ -0,0 +1,1158 @@ +:100000000C947A020C94BE020C94BE020C94BE02B4 +:100010000C94BE020C94BE020C94BE020C94BE0260 +:100020000C94BE020C94BE020C94620D0C94340E1F +:100030000C94BE020C94BE020C94BE020C94BE0240 +:100040000C94BE020C943E220C94BE020C94BE0290 +:100050000C94BE020C94D11B0C94BE020C94BE02F4 +:100060000C94BE020C94BE020C94BE020C94BE0210 +:100070000C94BE020C94BE020C94BE020C94BE0200 +:100080000C94BE020C94BE020C94BE020C94BE02F0 +:100090000C94BE020C94BE020C94BE020C94BE02E0 +:1000A0000C94BE020C94BE020C94BE02A10EC30EB0 +:1000B000B10FC30EB10F080F2B0FB10F800F930FAD +:1000C0006212621291129112C712E71218141814D8 +:1000D000F2121814A213A2130914181418141214EB +:1000E000AF13AF13AF13AF13AF13AF13AF13AF1300 +:1000F000AF13AF13AF13AF13AF13AF13AF13AF13F0 +:10010000C113CE13D513DC13E6130000F0A13900A0 +:100110002B002900E100E10400001E00140004008F +:100120001D7135414D001F001A0016001B003400E0 +:100130004C00200008000700060050002A002100A3 +:100140001500090019004F004A00220017000A009C +:1001500005000000E300500001540000007F000093 +:1001600065744F00015400000077000029712300DE +:100170001C000B0011000000E300240018000D001B +:10018000100052002E0025000C000E003600510019 +:100190002C00260012000F0037002F002800270037 +:1001A00013003342387130002B002D003100340031 +:1001B000E500C10000000100010001000100010094 +:1001C00000003A001E0220022202010001003B0052 +:1001D0001F0221022302010001003C002F0226021F +:1001E0002F00010001003D00300227023000010015 +:1001F00001003E003102350035020000010001001F +:1002000001000000010000000100010001000000E9 +:100210000100000001003F005200510024020000D4 +:1002200001004000240021001E00010001004100E7 +:10023000250022001F003700010042002600230095 +:10024000200027000100430025022E0231002E006D +:100250000100440045000100010001000000010010 +:100260000100010001000100000001000100010087 +:1002700001000100010001000100F2000100010085 +:1002800001000100F000F1000100F4000100010094 +:100290000100F3000100F500010001000100010070 +:1002A0000100000001000100010000000100000049 +:1002B0000100010001000000010000000100010038 +:1002C0000100010001000000010001000100010027 +:1002D0000100A9000100010001000100AC00AA001A +:1002E000B600010001000100AB00A8000100010000 +:1002F0000100010001000100010001000100AE0049 +:1003000001000100000016034500720067006F0045 +:1003100044006F007800200045005A0000001603DA +:100320004500720067006F0044006F0078002000F5 +:1003300045005A0000000403090409026D0004018D +:1003400000A0FA09040000010301010009211101C4 +:100350000001223F000705810308000A090401008B +:100360000103010200092111010001224D000705CE +:10037000820308000A0904020001030000000921A9 +:10038000110100012236000705830308000A090451 +:1003900003000103000000092111010001223900BE +:1003A000070584031000011201100100000008ED90 +:1003B000FE071301000102000105010906A1010564 +:1003C0000719E029E7150025019508750181020547 +:1003D000081901290595057501910295017503918B +:1003E0000105071900297715002501957875018108 +:1003F00002C005010980A101850216010026B7008F +:100400001A01002AB700751095018100C0050C097A +:1004100001A1018503160100269C021A01002A9CF5 +:1004200002751095018100C005010902A1010901B1 +:10043000A10005091901290515002501950575017A +:10044000810295017503810105010930093115818A +:10045000257F95027508810609381581257F95014C +:1004600075088106050C0A38021581257F950175EE +:10047000088106C0C005010906A101050719E02988 +:10048000E715002501950875018102950175088120 +:100490000105081901290595057501910295017558 +:1004A0000391010507190029FF150025FF95067521 +:1004B000088100C0000000000000000000000001F2 +:1004C0000204060A0F17202C3A4A5D71879DB3C7B4 +:1004D000DAE9F5FCFFFCF5E9DAC7B39D87715D4AFF +:1004E0003A2C20170F0A0604020100000000000049 +:1004F0000000000011241FBECFEFDAE0DEBFCDBF49 +:1005000004B603FE24C08091FB019091FC01A091F0 +:10051000FD01B091FE018730904BA740B04BB9F47C +:100520001092FB011092FC011092FD011092FE014D +:1005300014BE84B7877F84BF88E10FB6F894809398 +:100540006000109260000FBEE0E0FFE3099511E04B +:10055000A0E0B1E0EAE0F8E402C005900D92A43317 +:10056000B107D9F711E0A4E3B1E001C01D92AB3FA0 +:10057000B107E1F70E94A60A0C9403240C94000032 +:100580001092B9008AE08093B800089594EA90939D +:10059000BC009091BC0097FFFCCF9091B900987F70 +:1005A000983021F0903111F081E008958093BB00E4 +:1005B00084E88093BC008091BC0087FFFCCF8091D1 +:1005C000B900887F883111F0803471F780E0089598 +:1005D00084E98093BC008091BC0084FDFCCF089529 +:1005E0008093BB0084E88093BC008091BC0087FFAF +:1005F000FCCF9091B900987F81E0983209F480E0B7 +:10060000089584E88093BC008091BC0087FFFCCFF4 +:100610008091BB00089580910101811115C080E493 +:100620000E94C6028093010181110CC082E10E94E8 +:10063000F00280930101811105C08FEF0E94F0024A +:10064000809301010E94E80284B1807F84B985B162 +:10065000807F85B98AB1837F8AB98BB1837F8BB95B +:100660003E98469808950E94C604809301010E9416 +:100670000B0380B38C7080BB81B3836F81BBA5E318 +:10068000B1E0E3E4F1E08EE08E0F11921D928E1343 +:10069000FCCF0C94B004BF92CF92DF92EF92FF9206 +:1006A0000F931F93CF93DF9380910101882379F0FB +:1006B000809134018F5F80933401811108C00E94C2 +:1006C000C60480930101811102C00E94580405E311 +:1006D00011E0C0E0D0E0DD24D39482E0C82EEE2407 +:1006E000E394F12CC730D10500F58091010181110F +:1006F00064C080E40E94C60280930101811112C08F +:1007000082E10E94F0028093010181110BC0C701B8 +:100710000C2E01C0880F0A94EAF780950E94F0021F +:10072000809301010E94E80248C0CA30A1F028F479 +:10073000C83059F0C93061F005C0CC3089F070F094 +:10074000CD3089F0209A289810C0219A29980DC0A0 +:10075000229A2A980AC0239A2B9807C0529A01C05D +:10076000539A5B9802C03E9A469890EA9A95F1F7A0 +:100770009FB1799902C082E001C080E091709D250F +:10078000982B7C9902C084E001C080E0892B7D9980 +:1007900002C038E001C030E0832B7E9902C020E126 +:1007A00001C020E0822B9FB19095991F9927991F36 +:1007B0009295990F907E892B0FC080910101811134 +:1007C00049C080E40E94C60280930101882379F128 +:1007D000B12C0E94E8028B2DF8019081981719F036 +:1007E0008083C09200010E940B0321960F5F1F4F70 +:1007F000CE30D10509F076CF80910001882361F1D8 +:10080000815080930001882339F08FE99FE00197A0 +:10081000F1F700C0000020C0A3E4B1E0E5E3F1E09F +:10082000CF01825F91919D938E13FCCF15C083E120 +:100830000E94F002809301018111CACF81E40E94DD +:10084000C602809301018111C3CF0E940103B82E1B +:10085000B094BFCF80E0C0CF0E94560481E0DF910A +:10086000CF911F910F91FF90EF90DF90CF90BF90AD +:100870000895E82FF0E0ED5BFE4F80810895089524 +:100880000F931F93CF93DF93C3E4D1E010E00C2FBD +:10089000025F899190E00E94F71A180F0C13F9CFAC +:1008A000812FDF91CF911F910F9108950C94260510 +:1008B00056985E9825982D9826982E9827982F98C8 +:1008C0008FEF90E0909389008093880090938B0045 +:1008D00080938A0090938D0080938C00259A2D9AA6 +:1008E0002FEF80E792E0215080409040E1F700C078 +:1008F0000000269A2E9A2FEF80E792E02150804048 +:100900009040E1F700C00000279A2F9A2FEF80E770 +:1009100092E0215080409040E1F700C0000025980F +:100920002D982FEF80E792E0215080409040E1F732 +:1009300000C0000026982E982FEF80E792E021500B +:1009400080409040E1F700C0000027982F9856980B +:100950005E9825982D9826982E9827982F98089578 +:1009600089EA8093800089E08093810024982C9804 +:100970003F988AB18F748AB96E98479A8BB1806B11 +:100980008BB9769A0E9458040C94250580E28093D6 +:1009900001018091510181110EC00E94C00281E0CD +:1009A000809351012FEF83ED90E3215080409040E0 +:1009B000E1F700C0000080E40E94C60280930101BC +:1009C00081112EC00E94F00280930101811128C084 +:1009D0000E94F00280930101811122C08FE30E94E6 +:1009E000F0028093010181111BC00E94E80280E4A3 +:1009F0000E94C60280930101811112C08CE00E9406 +:100A0000F0028093010181110BC00E94F0028093DB +:100A10000101811105C08FE30E94F0028093010162 +:100A20000E94E80280910101089561110BC0FC0150 +:100A30008281882321F085EE0E94061103C085EE95 +:100A40000E94CE1180E090E0089508956091BD016C +:100A50007091BE018091BF019091C0010E94031B63 +:100A600056985E9825982D9826982E9827982F9816 +:100A7000813019F0823021F00895259A2D9A089539 +:100A8000269A2E9A089581E0089581E008950C94A5 +:100A9000450508950F931F93CF93DF938C01FC01BD +:100AA000C081D181CE010E947C19BE010E94F30554 +:100AB000EC01B8010E944705882309F48DC0F801B4 +:100AC0008281882309F44AC080915D0181111FC091 +:100AD000C431F0E5DF0709F051C00E94490581E00B +:100AE00080935D010E949B1B90935C0180935B014E +:100AF0001092540110925601109255011092580113 +:100B00001092570110925A011092590165C08091BC +:100B10005B0190915C010E94A71B883C910570F4D9 +:100B200080915401E82FF0E0EE0FFF1FEB5AFE4FCB +:100B3000D183C0838F5F809354014EC0C43880E559 +:100B4000D80721F0C538D04501F13AC0F8018281BB +:100B5000882341F01092520182E01EC0C438E0E5C3 +:100B6000DE0759F580915201811106C086E20E948C +:100B7000061186E20E94CE1182E01CC0C438F0E566 +:100B8000DF0741F3C538D045D9F4F80182818823C5 +:100B900031F01092530180E20E941D121DC080911D +:100BA0005301811106C087E20E94061187E20E946C +:100BB000CE1180E20E9424120FC0C538D04529F31F +:100BC00081E08093520180935301C801DF91CF915E +:100BD0001F910F910C94430580E0DF91CF911F91FD +:100BE0000F910895089596E0799FF001112494E5FE +:100BF000899FE00DF11D1124E60FF11DEE0FFF1F7F +:100C0000E25FFE4F859194910895880F991FFC0132 +:100C1000E657F040859194910895880F991FFC0143 +:100C2000E65FFE4F8591949108950F931F93CF93A4 +:100C3000DF93EC01811520E3920750F5C11580E2A6 +:100C4000D80708F0C3C0CB3BD10590F4C83AD10512 +:100C500008F06AC0C53AD10508F05BC0C430D105C0 +:100C600008F0D0C1219709F0CAC101E010E00AC222 +:100C7000CF3FD10511F008F0C5C1C03FD10508F044 +:100C8000A2C0CE01805E9109089708F4BBC1B7C12C +:100C9000C13090E5D90709F4A2C020F5C0318FE436 +:100CA000D80770F4C11590E4D90708F094C0C115B5 +:100CB00021E3D20708F0A3C1DD278E01106CE2C149 +:100CC000C115D04509F09BC10E9483148FEF94E3B6 +:100CD0002CE0815090402040E1F700C000000E94CD +:100CE000F61BD0C1C11597E5D90758F4C03121E5ED +:100CF000D20708F01CC1C43180E5D80708F475C0DC +:100D00007EC1CE0190578115904108F078C1DF7007 +:100D100073C1C53AD10509F477C1C63AD10509F0C6 +:100D200076C102E810E4AEC1C83AD10509F472C137 +:100D3000C93AD10509F471C1CA3AD10509F470C1A3 +:100D4000CB3AD10509F46FC1CC3AD10509F46EC193 +:100D5000CD3AD10509F46DC1C03BD10509F46CC190 +:100D6000CE3AD10509F46BC1CF3AD10509F46AC175 +:100D7000C13BD10509F469C1C23BD10509F468C181 +:100D8000C33BD10509F467C1C43BD10509F466C171 +:100D9000C53BD10509F465C1C63BD10509F464C161 +:100DA000C73BD10509F463C1C83BD10509F462C151 +:100DB000C93BD10509F461C1CA3BD10509F460C141 +:100DC00000E014E45FC18E0110655CC1CE019F702C +:100DD0000E940D0658C1DF708E01106A53C18091C8 +:100DE000DA0181608093DA014DC10E949B1D81115F +:100DF00002C00E94811D0E94B81D90E09093FB01EB +:100E00008093FA01C23080E5D80721F48091FA017D +:100E1000816086C0C43090E5D90721F48091FA0141 +:100E200082607EC0C63020E5D20721F48091FA01AD +:100E3000846076C0C83080E5D80719F48091FA0143 +:100E400027C0CA3090E5D90721F48091FA0180616A +:100E500067C0CC3020E5D20721F48091FA0180628E +:100E60005FC0CE3080E5D80721F48091FA0180641C +:100E700057C0C03190E5D90721F48091FA0180680C +:100E80004FC0C23120E5D20729F48091FA01846075 +:100E9000886046C0C33080E5D80721F48091FA010C +:100EA0008E7F3EC0C53090E5D90721F48091FA01CC +:100EB0008D7F36C0C73020E5D20721F48091FA013A +:100EC0008B7F2EC0C93080E5D80719F48091FA01D4 +:100ED00026C0CB3090E5D90721F48091FA018F7EAE +:100EE0001FC0CD3020E5D20721F48091FA018F7D1B +:100EF00017C0CF3080E5D80721F48091FA018F7BAD +:100F00000FC0C13190E5D90721F48091FA018F77A4 +:100F100007C0C331D04531F48091FA018B7F877FC0 +:100F20008093FA018091FA010E94BC1DABC08D2F05 +:100F300099278F70992781309105D9F49E012370EC +:100F4000332702C0880F991F2A95E2F79C688E010B +:100F500044E0000F111F4A95E1F700271370802B22 +:100F6000912B53E0CC0FDD1F5A95E1F7C076DD27BA +:100F70002FC08230910531F4DC2FCC278E01016F18 +:100F8000106A80C08330910569F4CE01837099277F +:100F900001E010E002C0000F111F8A95E2F7C801BE +:100FA0009C680FC084309105B9F4CE0183709927F5 +:100FB00001E010E002C0000F111F8A95E2F7C8019E +:100FC0009A6823E0CC0FDD1F2A95E1F7C07ED77029 +:100FD0008C010C2B1D2B56C08530910531F4DC2F74 +:100FE000CC278E01046F106A4DC0069709F04AC0E5 +:100FF000CF71DD27DC2FCC278E01106243C000E0CB +:1010000010E040C08E013EC001E810E43BC003E8A0 +:1010100010E438C002EE14E435C009EE14E432C026 +:101020000AEE14E42FC005EB14E42CC006EB14E424 +:1010300029C007EB14E426C00CEC14E423C00DEC2B +:1010400014E420C003E815E41DC00AE815E41AC042 +:1010500002E915E417C004E915E414C001E216E43E +:1010600011C003E216E40EC004E216E40BC005E270 +:1010700016E408C006E216E405C007E216E402C062 +:101080000AE216E4C801DF91CF911F910F910895F4 +:1010900096E0799FF001112494E5899FE00DF11D00 +:1010A0001124E60FF11DEE0FFF1FE25FFE4F859149 +:1010B0009491803E9105E0F4803C910558F5813390 +:1010C000910509F46FC048F48932910509F463C0B1 +:1010D0008A32910509F46DC072C089339105E9F037 +:1010E00082389105D1F08533910509F44DC067C070 +:1010F000833E910581F138F4803E9105B9F0823E3E +:101100009105D9F05CC0863E910561F1873E91055D +:10111000A1F155C00E94050608952091FA0120FD15 +:1011200002C021FF4CC080EE90E049C08091FA01DE +:1011300080FFF9CF89E390E042C08091FA0182FFFD +:101140000EC08091FA0184FF03C080E090E037C0B8 +:1011500083EE90E034C08091FA0182FFF2CF82EEFC +:1011600090E02DC08091FA0183FF0BC08091FA01BD +:1011700084FDEBCF87EE90E022C08091FA0183FFDF +:10118000F5CF86EE90E01BC08091FA0185FF07C085 +:1011900089E290E014C08091FA0185FFF9CF85E3E0 +:1011A00090E00DC08091FA0186FF07C08AE290E0CE +:1011B00006C08091FA0186FFF9CF81E390E00E949A +:1011C0001506089508950C94E20880916E01089523 +:1011D000CF93DF9300D01F92CDB7DEB79C018091F3 +:1011E000F101843019F593E099833B832A8390932E +:1011F000E9008FEF9091E800815095FD06C095EDD4 +:101200009A95F1F700008111F5CF8091E80085FFF4 +:101210000DC040E050E063E070E0CE0101960E9416 +:10122000520B8091E8008E778093E8000F900F902A +:101230000F90DF91CF910895CF93DF9300D01F924D +:10124000CDB7DEB72091F101243021F522E02983CA +:101250009B838A8383E08093E9008FEF9091E8007D +:10126000815095FD06C095ED9A95F1F7000081112A +:10127000F5CF8091E80085FF0DC040E050E063E0CD +:1012800070E0CE0101960E94520B8091E8008E77AB +:101290008093E8000F900F900F90DF91CF91089509 +:1012A0002091F1012430F1F422E02093E9002FEFA6 +:1012B0003091E800215035FD06C035ED3A95F1F743 +:1012C00000002111F5CF2091E80025FF0BC040E080 +:1012D00050E065E070E00E94520B8091E8008E774C +:1012E0008093E8000895CF93DF93EC019091F10192 +:1012F000943009F046C080910C018823D9F0809188 +:101300000D018823B9F09093E9008FEF9091E800E8 +:10131000815095FD06C095E19A95F1F70000811185 +:10132000F5CF8091E80085FF2CC040E050E060E1FF +:1013300070E017C081E08093E9008FEF9091E800A2 +:10134000815095FD06C095ED9A95F1F70000811149 +:10135000F5CF8091E80085FF14C040E050E068E0E0 +:1013600070E0CE010E94520B8091E8008E7780934E +:10137000E80080E1FE01AEE5B1E001900D928A95B2 +:10138000E1F7DF91CF9108958091F001811109C0BB +:101390000E94E70C0E94440D8091E20084608093DB +:1013A000E20008951092F001089508950C942B2204 +:1013B0000E948C1B0E9431220E94EA0F0C94E308C9 +:1013C00042E061EC81E00E94610C42E061EC82E06D +:1013D0000E94610C42E061EC83E00E94610C42E1FA +:1013E00061EC84E00C94610C8091F301833009F48A +:1013F00055C030F4813071F0823009F48EC0089508 +:101400008A3009F47AC08B3009F460C0893009F061 +:101410009CC020C08091F201813A09F096C0809171 +:10142000E800877F8093E8008091F6019091F701B2 +:10143000892B21F460E18EE591E003C060E080E05B +:1014400090E070E00E949D0B8091E8008B77809384 +:10145000E80008958091F201813209F076C0809110 +:10146000F6019091F701009719F0039709F06DC00C +:101470008091E800877F8093E8008091E80082FDFA +:1014800005C08091F1018111F8CF5FC08091F1001A +:1014900080936E018091E8008B7753C08091F201B8 +:1014A000813A09F052C08091F6019091F701892BA1 +:1014B00009F04BC08091E800877F8093E80080911D +:1014C000E80080FFFCCF80910C0136C08091F201D2 +:1014D0008132D9F58091F6019091F701892BA9F518 +:1014E0008091E800877F8093E8000E94960C8091AD +:1014F000F40180930C010C9483148091F2018132E9 +:1015000021F58091E800877F8093E8000E94960C87 +:101510008091F50180936F0108958091F201813AE5 +:10152000A1F48091E800877F8093E8008091E80033 +:1015300080FFFCCF80916F018093F1008091E800E3 +:101540008E778093E8000C94960C089584B7877F7B +:1015500084BF88E10FB6F894809360001092600019 +:101560000FBE90E080E80FB6F894809361009093EE +:1015700061000FBE0E9439100E94E70C0E94440DCA +:101580008091E20084608093E20078940E94CA0F08 +:101590000E943B1082E091E00E94E50F0E94192218 +:1015A0008091F101853069F40E94531B8091EF0115 +:1015B0008823B1F30E947E1B882391F30E943C0B89 +:1015C000EFCF0E944110ECCF292F33272330310574 +:1015D000C9F064F42130310581F02230310509F081 +:1015E00043C08DE690E02AE333E042C0213231056A +:1015F000F1F02232310541F137C082E190E027EA73 +:1016000033E036C099278130910541F08230910551 +:1016100041F0892B49F5E6E3F3E005C0EEE1F3E0A4 +:1016200002C0E6E0F3E0849190E09F0121C06430C5 +:10163000D8F4E62FF0E0EE0FFF1FEE5DFE4F2081A5 +:10164000318189E090E014C0643070F470E0FB01F7 +:10165000EE0FFF1FE65EFE4F20813181FB01EA5E47 +:10166000FE4F808190E004C080E090E020E030E018 +:10167000FA0131832083089580E189BD82E189BD2B +:1016800009B400FEFDCF8091D8008F7D8093D800F3 +:101690008091E00082608093E0008091E00081FD15 +:1016A000FCCF0895CF92DF92EF92FF920F931F939A +:1016B000CF93DF93EC018B016A010E94B50C81117D +:1016C00033C0C114D10439F0F60180819181081B27 +:1016D000190BC80FD91FE12CF12C0115110519F1B7 +:1016E0008091E80085FD16C08091E8008E77809398 +:1016F000E800C114D10449F0F60180819181E80E1F +:10170000F91EF182E08285E00FC00E94B50C8823AB +:1017100021F30AC089918093F10001501109FFEF74 +:10172000EF1AFF0ADACF80E0DF91CF911F910F917E +:10173000FF90EF90DF90CF9008952091F8013091C5 +:10174000F9012617370748F06115710539F4209122 +:10175000E8002E772093E80001C0B90140E0611550 +:101760007105A9F12091F101222309F443C025302C +:1017700009F442C02091E80023FD40C02091E80018 +:1017800022FD32C02091E80020FFE9CF4091F30014 +:101790002091F20030E0342BFC01CF01611571057E +:1017A00059F02830310540F481918093F100615067 +:1017B00071092F5F3F4FF1CF41E02830310509F02B +:1017C00040E02091E8002E772093E800C8CF411137 +:1017D000C9CF0AC08091F101882361F0853061F0A2 +:1017E0008091E80083FD0AC08091E80082FFF2CF7B +:1017F00080E0089582E0089583E0089581E00895EF +:101800002091F8013091F9012617370748F061154A +:10181000710539F42091E8002E772093E80001C08B +:10182000B901FC0120E06115710591F18091F10190 +:10183000882309F440C0853009F43FC08091E80056 +:1018400083FD3DC08091E80082FD2FC08091E800BB +:1018500080FFE9CF2091F3008091F20090E0922B7D +:101860006115710559F08830910540F42491209359 +:10187000F1003196615071090196F2CF21E008978D +:1018800009F020E08091E8008E778093E800CBCFCC +:101890002111CCCF0AC08091F101882361F08530FD +:1018A00061F08091E80083FD0AC08091E80082FF2A +:1018B000F2CF80E0089582E0089583E0089581E00A +:1018C0000895982F973058F59093E900981739F0BC +:1018D0007091EC002091ED005091F00003C0242F96 +:1018E000762F50E021FF19C03091EB003E7F3093FE +:1018F000EB003091ED003D7F3093ED003091EB0037 +:1019000031603093EB007093EC002093ED00509326 +:10191000F0002091EE0027FF07C09F5FD3CF8F70AC +:101920008093E90081E0089580E008958091F201BC +:1019300087FF11C08091E80082FD05C08091F10110 +:101940008111F8CF11C08091E8008B770BC0809196 +:10195000F101882349F08091E80080FFF8CF809161 +:10196000E8008E778093E80008952091E40030919C +:10197000E50095E64091EC00842F817040FF22C085 +:101980008091E80080FD1CC08091F101882391F0D6 +:10199000853091F08091EB0085FD10C04091E4000E +:1019A0005091E5004217530729F39A01915011F71E +:1019B00084E0089582E0089583E0089581E0089529 +:1019C00080E008954091E80042FFDECF08950E9434 +:1019D000550D0E945D0DE0EEF0E080818160808316 +:1019E000E8EDF0E080818F77808319BCA7EDB0E04F +:1019F0008C918E7F8C9380818F7E80831092F001FA +:101A000008950F931F93CF93DF930E94550D0E946B +:101A10005D0DC8EDD0E088818F77888388818068EC +:101A2000888388818F7D888319BC1092F101109280 +:101A3000ED011092EF011092EE0100EE10E0F801BE +:101A400080818B7F808388818160888342E060E031 +:101A500080E00E94610CE1EEF0E080818E7F808367 +:101A6000E2EEF0E080818160808380818860808305 +:101A7000F80180818E7F8083888180618883DF91F7 +:101A8000CF911F910F910895E8EDF0E080818F7E56 +:101A90008083E7EDF0E080818160808384E082BF15 +:101AA00081E08093F0010C94010DE8EDF0E080817D +:101AB0008E7F80831092E20008951092DA001092D7 +:101AC000E10008951F920F920FB60F9211242F93E9 +:101AD0003F934F935F936F937F938F939F93AF93B6 +:101AE000BF93EF93FF938091E10082FF0BC0809141 +:101AF000E20082FF07C08091E1008B7F8093E100CC +:101B00000E94C90F8091DA0080FF1FC08091D80029 +:101B100080FF1BC08091DA008E7F8093DA00809175 +:101B2000D90080FF0DC080E189BD82E189BD09B483 +:101B300000FEFDCF81E08093F1010E94C40905C041 +:101B400019BC1092F1010E94D2098091E10080FF3E +:101B500019C08091E20080FF15C08091E2008E7F65 +:101B60008093E2008091E20080618093E2008091A6 +:101B7000D80080628093D80019BC85E08093F10181 +:101B80000E94D6098091E10084FF30C08091E2007C +:101B900084FF2CC080E189BD82E189BD09B400FECB +:101BA000FDCF8091D8008F7D8093D8008091E10097 +:101BB0008F7E8093E1008091E2008F7E8093E2002F +:101BC0008091E20081608093E2008091ED018823A2 +:101BD00011F084E007C08091E30087FD02C081E03E +:101BE00001C083E08093F1010E94D8098091E10057 +:101BF00083FF29C08091E20083FF25C08091E1002E +:101C0000877F8093E10082E08093F1011092ED01E3 +:101C10008091E1008E7F8093E1008091E2008E7FD1 +:101C20008093E2008091E20080618093E20042E0D4 +:101C300060E080E00E94610C8091F00088608093F9 +:101C4000F0000E94D509FF91EF91BF91AF919F9154 +:101C50008F917F916F915F914F913F912F910F9055 +:101C60000FBE0F901F9018951F920F920FB60F92F4 +:101C700011242F933F934F935F936F937F938F9391 +:101C80009F93AF93BF93CF93DF93EF93FF93C09155 +:101C9000E900CF708091EC00D82FD17080FDD0E8A2 +:101CA0001092E9008091F000877F8093F000789493 +:101CB0000E94780E1092E9008091F0008860809375 +:101CC000F000CD2BCF70C093E900FF91EF91DF9131 +:101CD000CF91BF91AF919F918F917F916F915F91C4 +:101CE0004F913F912F910F900FBE0F901F9018951D +:101CF0001F93CF93DF93CDB7DEB7AA970FB6F894B3 +:101D0000DEBF0FBECDBFE2EFF1E088E08E0F909115 +:101D1000F10091938E13FBCF0E94F4098091E800AB +:101D200083FF1FC18091F2019091F301492F50E090 +:101D30004A30510508F015C1FA01EA5AFF4F0C94D8 +:101D4000B323803881F0823809F00BC18091F6010D +:101D50008F708093E9008091EB0085FB882780F9E4 +:101D60001092E90006C08091EE019091EF0191116F +:101D700082609091E800977F9093E8008093F10053 +:101D80001092F100C8C0282F2D7F09F0EAC08823E7 +:101D900019F0823061F0E5C08091F401813009F0E2 +:101DA000E0C0933009F080E08093EF012BC0809178 +:101DB000F401811127C08091F6018F7009F4D1C020 +:101DC0008093E9002091EB0020FF1CC0933021F4A8 +:101DD0008091EB00806214C09091EB009061909331 +:101DE000EB0021E030E0A90102C0440F551F8A95A5 +:101DF000E2F74093EA001092EA008091EB008860DD +:101E00008093EB001092E9008091E800877F86C004 +:101E10008111A7C01091F4011F778091E3008078B1 +:101E2000812B8093E3008091E800877F8093E80016 +:101E30000E94960C8091E80080FFFCCF8091E30027 +:101E400080688093E300111102C082E001C083E04A +:101E50008093F10186C08058823008F082C0809162 +:101E6000F4019091F5018C3D53E0950779F583E0FD +:101E70008A838AE289834FB7F894DE01139620E0C3 +:101E80003EE051E2E32FF0E050935700E49120FF51 +:101E900003C0E295EF703F5FEF708E2F90E0EA3065 +:101EA00010F0C79601C0C0968D939D932F5F24318B +:101EB00049F74FBF8091E800877F8093E8006AE28E +:101EC00070E0CE0101960E949D0B14C0AE014F5FE1 +:101ED0005F4F6091F6010E94E40ABC01009709F48B +:101EE00040C09091E800977F9093E80089819A81A3 +:101EF0000E94000C8091E8008B778093E80031C04D +:101F0000803879F58091E800877F8093E8008091A0 +:101F1000ED018093F1008091E8008E778093E800D6 +:101F20000E94960C1EC081111CC09091F401923049 +:101F3000C0F48091E800877F8093E8009093ED01E2 +:101F40000E94960C8091ED01811106C08091E30002 +:101F500087FD02C081E001C084E08093F1010E940E +:101F6000E0098091E80083FF0AC08091E800877F44 +:101F70008093E8008091EB0080628093EB00AA964A +:101F80000FB6F894DEBF0FBECDBFDF91CF911F918A +:101F900008950895CF938091F1018823A1F0C09115 +:101FA000E900CF709091EC00892F817090FD80E85E +:101FB000C82B1092E9008091E80083FD0E94780E02 +:101FC000CF70C093E900CF910895909375018093ED +:101FD00074010895E0917401F0917501309721F03A +:101FE0000190F081E02D099480E00895E091740162 +:101FF000F0917501309721F00280F381E02D099472 +:102000000895E0917401F0917501309721F00480FA +:10201000F581E02D099408952091720130917301AA +:102020008217930771F09093730180937201E0918E +:102030007401F0917501309721F00680F781E02D51 +:1020400009940895209170013091710182179307CE +:1020500071F09093710180937001E0917401F0919F +:102060007501309721F00084F185E02D09940895E1 +:1020700008950C9438100E94921B0E9433030C9414 +:10208000541C9F92AF92BF92CF92DF92EF92FF9239 +:102090000F931F93CF93DF9300D000D000D0CDB724 +:1020A000DEB70E944B030DE010E0AA24A394B12CEC +:1020B000902E802F0E943904980129583E4F6901C3 +:1020C000F901F080F826A1F40150110988F78FEF8B +:1020D00089838A831B820E949B1B8160782F9D834A +:1020E0008C8349815A816B818D810E94D8102FC0C9 +:1020F0009091DA0191FF04C08E830E943F048E818B +:1021000025E030E0A501022E01C0440F0A94EAF751 +:10211000E42E4F21C1F029839A828E2191E009F4A7 +:1021200090E09B830E949B1B8160782F9D838C8312 +:1021300049815A816B818D810E94D810F60180817E +:10214000E826E08204C021503109E0F6BDCF0E94AC +:102150003B1F109176010E94EA0F1817B9F00E94F8 +:10216000EA0F8093760126960FB6F894DEBF0FBE75 +:10217000CDBFDF91CF911F910F91FF90EF90DF9036 +:10218000CF90BF90AF909F900C94E30826960FB627 +:10219000F894DEBF0FBECDBFDF91CF911F910F919D +:1021A000FF90EF90DF90CF90BF90AF909F900895F9 +:1021B000CF93DF93CDB7DEB72B970FB6F894DEBF82 +:1021C0000FBECDBF4F83588769877A878B87DE0123 +:1021D000119686E0FD0111928A95E9F785E0FE01EE +:1021E000379601900D928A95E1F749815A816B816A +:1021F0007C818D819E810E9421172B960FB6F894C9 +:10220000DEBF0FBECDBFDF91CF910895CF9388235E +:1022100009F4C2C0C82F823859F40E94EA0F81FD28 +:10222000BBC089E30E94FB190E94C81A89E30CC055 +:10223000833879F40E94EA0F80FDAEC083E50E94E6 +:10224000FB190E94C81A83E50E943D1ACF910C9495 +:10225000C81A843859F40E94EA0F82FD9DC087E4B1 +:102260000E94FB190E94C81A87E4EECF8CEF8C0FF6 +:10227000813A48F48C2F0E947E2181118DC08C2FD1 +:102280000E94FB19E3CF80E28C0F883048F4C770BE +:1022900081E001C0880FCA95EAF70E94811AD6CF63 +:1022A0008BE58C0F833078F4C53A29F0C63A31F0CB +:1022B00083E890E005C081E890E002C082E890E009 +:1022C000CF910C940C1088E58C0F833108F064C01A +:1022D000C83A39F1C93A41F1CA3A49F1CB3A51F118 +:1022E000CC3A59F1CD3A61F1C03B69F1CE3A71F186 +:1022F000CF3A79F1C13B81F1C23B89F1C33B91F106 +:10230000C43B99F1C53BA1F1C63BA9F1C73BB1F173 +:10231000C83BB9F1C93BC1F1CA3BC9F180E090E0CB +:1023200038C082EE90E035C089EE90E032C08AEE8F +:1023300090E02FC085EB90E02CC086EB90E029C0A8 +:1023400087EB90E026C08CEC90E023C08DEC90E011 +:1023500020C083E891E01DC08AE891E01AC082E9BC +:1023600091E017C084E991E014C081E292E011C0CD +:1023700083E292E00EC084E292E00BC085E292E03C +:1023800008C086E292E005C087E292E002C08AE2DD +:1023900092E0CF910C942210CF910895882309F4F4 +:1023A0004BC0823859F40E94EA0F81FF45C089E38F +:1023B0000E94FB190E94C81A89E30CC0833871F48B +:1023C0000E94EA0F80FF38C083E50E94FB190E943B +:1023D000C81A83E50E943D1A0C94C81A843859F42F +:1023E0000E94EA0F82FF28C087E40E94FB190E9426 +:1023F000C81A87E4EFCF9CEF980F913A58F390E218 +:10240000980F983050F4877091E001C0990F8A9529 +:10241000EAF7892F0E94871ADFCF9BE5980F933048 +:1024200020F480E090E00C940C10885A833120F462 +:1024300080E090E00C9422100895882321F00E94FF +:10244000811A0C94C81A0895882321F00E94871AD3 +:102450000C94C81A08957F928F929F92AF92BF9268 +:10246000CF92DF92EF92FF920F931F93CF93DF9360 +:102470001F92CDB7DEB77C01C62E772EFC010581F9 +:1024800002950F70128111110E949E1A0E94F41978 +:10249000882379F0112369F080E28C0D883048F0B0 +:1024A00082E00E94DD190E94F41991E0D82ED9260D +:1024B00001C0D12CE72DE295EF70F0E0E05AFF4F1C +:1024C0000C94B323872D807F072D0F70882311F084 +:1024D0000295007F112389F0002309F490C180E266 +:1024E0008C0D883020F4802F0E94811A03C0802F29 +:1024F0000E94911A0E94C81A82C18C2D0E94CE118E +:10250000002309F495C180E28C0D883020F4802FDF +:102510000E94871A03C0802F0E94971A0E94C81A2F +:1025200087C1972D907F872D8F70903211F0829503 +:10253000807FCC2021F0F1E0CF16B1F01EC0112336 +:1025400049F0002309F414C1013009F011C10E94BF +:10255000B11A6EC1002319F0013009F469C18983F1 +:102560000E94B41A89810AC1112321F0023008F0B7 +:102570005FC1FEC001115CC101C1112321F0002324 +:1025800009F4F6C03CC1002309F4F8C03EC1872D10 +:1025900086958695837090E0009719F0019761F019 +:1025A00047C1112321F08C2D972D937002C080E03C +:1025B00090E00E940C103CC1112321F08C2D972D2E +:1025C000937002C080E090E00E94221031C18C2DF7 +:1025D000112319F00E94431E02C00E94AB1E0E94EC +:1025E000301F26C1872D837009F052C0111120C100 +:1025F0008C2D829586958770880F880F9C2D9F70F3 +:10260000892E912CA12CB12C082E04C0880C991C69 +:10261000AA1CBB1C0A94D2F7C4FE14C00FE010E041 +:1026200020E030E0B901A80104C0440F551F661F27 +:10263000771F8A95D2F7CB01BA0160957095809586 +:10264000909503C060E070E0CB01272D269526957C +:10265000237030E02230310569F02330310589F0F4 +:10266000682979298A299B292130310571F00E9436 +:102670006918DEC0682979298A299B290E94851852 +:10268000D7C00E946918C501B4010E944D18D0C07E +:10269000112319F0872D817001C08695882309F4D4 +:1026A000C7C08C2D829586958770880F880F9C2DCA +:1026B0009F70892E912CA12CB12C082E04C0880C5F +:1026C000991CAA1CBB1C0A94D2F7C4FE14C00FE0CC +:1026D00010E020E030E0B901A80104C0440F551F0C +:1026E000661F771F8A95D2F7CB01BA016095709566 +:1026F0008095909503C060E070E0CB01272D269572 +:1027000026952370422F50E04230510569F0433046 +:10271000510589F0682979298A299B294130510579 +:1027200071F00E94431984C0682979298A299B295C +:102730000E945F197DC00E944319C501B4010E9427 +:10274000271976C08C2D90E0FC01E05EF109E5319F +:10275000F10508F050C0E059FF4F0C94B3230C2D45 +:102760000F70872D8F71112331F00E94C018802FB8 +:102770000E941D125DC00E94E118802F0E94241249 +:1027800057C0112339F0011153C0872D8F710E945A +:1027900006194EC0023008F04BC0F7CF112339F0B4 +:1027A000872D8F710E94C01843C01123C9F3872D54 +:1027B0008F710E94E1183CC0112329F0872D8F7181 +:1027C0000E94AB1835C00E94A11832C0112351F0ED +:1027D000172D1F71812F0E94C01863E0812F0E9466 +:1027E000D41926C081E00E94DD19023008F182E090 +:1027F0000E94DD191DC0112331F0002389F28C2DB8 +:102800000E94061115C0002391F28C2D0E94CE115A +:102810000FC0472D4F706C2DC7010E9415050E94F7 +:10282000C51706C0472D4F706C2DC7010E94F205D9 +:10283000DD20F9F00E94D01980FD1BC0F701128243 +:102840000E94CA190E94C018C7010E9448140E9421 +:10285000CA190F90DF91CF911F910F91FF90EF90C8 +:10286000DF90CF90BF90AF909F908F907F900C940F +:10287000E1180F90DF91CF911F910F91FF90EF9092 +:10288000DF90CF90BF90AF909F908F907F900895F2 +:102890000F931F93CF93DF93EC01888199812B8154 +:1028A0003C81232BB9F09F3F11F48F3F99F0CE016B +:1028B0000E944A05882371F0688179818A810E948B +:1028C000C6198C010E947B190E944218B801CE01E2 +:1028D0000E942B12DF91CF911F910F9108950E94BA +:1028E0009E1A0E94AE1A0E94731A0E94C81A0E9471 +:1028F000E11F0E94301F80E090E00E940C1080E0F9 +:1029000090E00C9422100E948E1A0C946F140E9476 +:10291000BB19292F22952F7030E02C3031054CF453 +:102920002A3031056CF42250310922303105A8F4E7 +:1029300007C02C30310569F02F30310551F00DC042 +:10294000803F69F018F4803E40F409C0843F29F4C8 +:1029500006C093FB882780F9089580E0089581E000 +:102960000895CF93DF9300D000D01F92CDB7DEB78C +:102970000F900F900F900F900F90DF91CF910895CF +:10298000CF93DF9300D000D000D0CDB7DEB726962E +:102990000FB6F894DEBF0FBECDBFDF91CF91089583 +:1029A0001F93CF93DF93C091850116E0809186013C +:1029B000C81799F0D0E01C9FF0011D9FF00D112465 +:1029C000E957FE4F408151816281738184819581F5 +:1029D0000E94C0142196C770E9CFDF91CF911F915B +:1029E00008954091B7015091B8016091B90170917B +:1029F000BA018091BB019091BC010C94C0148091EC +:102A0000BC0182958F7009F054C08091B901882370 +:102A100009F44FC080918501A09186016091B701B2 +:102A20007091B8014091BA015091BB01B6E08A178C +:102A300009F43FC090E041155105C1F17F3F11F409 +:102A40006F3FA1F1B89FF001B99FF00D1124E95734 +:102A5000FE4F218172132AC02081621327C0228178 +:102A6000211124C0238134812417350710F421500B +:102A70003109241B350B283C3105C0F42091BC01E1 +:102A80002F7020612093BC0126E0289FF001299F30 +:102A9000F00D1124E457FE4F80818F708061808398 +:102AA00087EB91E00E9448140C94D0140196877033 +:102AB000BECF0895CF92DF92EF92FF920F931F93B4 +:102AC000CF93DF93CDB7DEB762970FB6F894DEBF32 +:102AD0000FBECDBF8C0185E0F801DE011D9601908F +:102AE0000D928A95E1F7D8014C9111965C9111975E +:102AF00012966C9112971396CD90DC9014973091AA +:102B0000B7017091B8018091BA019091BB01009713 +:102B100009F46BC17F3F19F43F3F09F466C1E090AF +:102B2000B901EE2009F4C0C02091BC01C816D90635 +:102B300028F0F601E81BF90BCF0104C080959095B1 +:102B40008C0D9D1DFF24F394883C910578F0F12CA9 +:102B5000207F09F0C6C07C2DD98AC88A89890E9445 +:102B6000B11487EB91E00E944814B1C0822F807F9E +:102B700009F046C0751314C0341312C0611110C09F +:102B80002F7020612093BC010E94F11487EB91E02B +:102B90000E9448148091BC01D80115968C932EC0D8 +:102BA000CD2819F15F3F11F44F3FF9F0F62E611176 +:102BB0001CC0809185012091860136E0821709F4BE +:102BC0005AC090E0389FF001399FF00D1124E95769 +:102BD000FE4F7181571306C07081471303C0728185 +:102BE000711103C001968770E9CFF62E662309F4B0 +:102BF00018C18091BC0181608093BC01F12C11C18E +:102C0000751308C0341306C0611104C08091BC0163 +:102C1000D801C3C04D875E878D859E856A8B0E94D3 +:102C200087146A898823E1F16623D1F12091BC01E0 +:102C3000822F82958F7090E0029774F08091B70197 +:102C40009091B80198878F831986DB86CA862C8776 +:102C5000CE0107960E94481486E0F801A7EBB1E088 +:102C600001900D928A95E1F70E94FF140E94F114E1 +:102C7000FF24F394D6C04D875E878D859E850E9484 +:102C8000BB19292F22952F7030E0223031050CF02E +:102C9000BCC09F7009F0B6C0805E883008F4C1C027 +:102CA000C8010E944814E4CFC816D90608F453C0DE +:102CB000F601E81BF90BCF01883C910508F450C0E0 +:102CC000F12C7C2DD98AC88A89890E94B114E7EB3E +:102CD000F1E086E0DF011D928A95E9F70E94F11488 +:102CE000A0C0751314C0341312C0611110C08091BC +:102CF000BC01F8018583C8010E94481486E0E7EB17 +:102D0000F1E0DF011D928A95E9F7FE2C8AC04D871C +:102D10005E878D859E856A8B0E9487146A898823C9 +:102D200009F4BECF662309F4BBCF2091BC01822FEA +:102D300082958F7090E002970CF48ECF8091B7014E +:102D40009091B8019A8389831B82DD82CC822E8385 +:102D5000CE0101967FCF809590958C0D9D1DACCFB7 +:102D6000F62E662309F49CCF75132EC034132CC0A5 +:102D70002091BC0120FD1FC0822F82958F70D9F059 +:102D8000D80115962C9315978F3049F08F5F982FA7 +:102D90009295907F822F8F70892B15968C93C80106 +:102DA0000E94481486E0F801A7EBB1E001900D9273 +:102DB0008A95E1F793CF86E0F801A7EBB1E00190A7 +:102DC0000D928A95E1F72DC04D875E878D859E8592 +:102DD0000E948714811140CF8091BC018160809353 +:102DE000BC01C8010E9448141CC0662309F458CFD6 +:102DF0004D875E878D859E850E948714882309F400 +:102E00004FCF2ACF811148CF0CC0243031050CF0B0 +:102E100047CF9F7009F440CFF8019581907F09F06A +:102E20003BCF8F2D62960FB6F894DEBF0FBECDBF9D +:102E3000DF91CF911F910F91FF90EF90DF90CF9096 +:102E400008951F93CF93DF93CDB7DEB72C970FB6BE +:102E5000F894DEBF0FBECDBF4F83588769877A874E +:102E60008B879C87CE0107960E945A15882369F0AC +:102E70008F8198852A853B85232BF1F19F3F09F0AF +:102E800063C08F3F09F060C037C086E0FE0137960F +:102E9000DE01119601900D928A95E1F76F81788598 +:102EA000EA85FB85309741F17F3F11F46F3F21F1B7 +:102EB0002091860130E0C9010196877099274091E1 +:102EC000850150E08417950709F447C069837A8328 +:102ED000FD83EC8396E0929FD001939FB00D112467 +:102EE000A957BE4FFE01319601900D929A95E1F7D8 +:102EF000809386010E94D01416E080918501909104 +:102F000086018917C1F1189FC001112489579E4F6E +:102F10000E945A15882379F1E09185011E9FF001E6 +:102F20001124E957FE4F4081518162817381848170 +:102F300095810E94C0148091850190E00196877070 +:102F4000992780938501D9CF4F81588569857A85E6 +:102F50008B859C850E94C014CFCF0E948314109251 +:102F6000860110928501E7EBF1E086E0DF011D921A +:102F70008A95E9F7C1CF2C960FB6F894DEBF0FBE45 +:102F8000CDBFDF91CF911F910895EF92FF920F93E4 +:102F90001F93CF93DF938C01009709F46CC0F12C41 +:102FA000EE24E394E8012196F8018491843740F4FB +:102FB000843008F051C0813081F0823019F15BC05B +:102FC000853709F444C0A8F19CE7980F903708F0C2 +:102FD00052C08F770E94CE1141C00E5F1F4FFE017D +:102FE000C49180E28C0F883048F4C7708E2D01C0E8 +:102FF000880FCA95EAF70E94A11A14C08C2F0E946C +:1030000006112DC00E5F1F4FFE01C49180E28C0F90 +:10301000883058F4C7708E2D01C0880FCA95EAF722 +:103020000E94A71A0E94C81A1AC08C2F0E94CE11A3 +:1030300016C00E5F1F4FFE01C491CC2381F08FE9B3 +:103040009FE00197F1F700C00000C150F6CF0E5F7E +:103050001F4FFE01F49003C00E9406118E018F2DB8 +:10306000882309F49FCFEFE9FFE03197F1F700C023 +:1030700000008150F5CFDF91CF911F910F91FF900C +:10308000EF90089508956093C1017093C2018093F9 +:10309000C3019093C4010C946F140F931F9300917C +:1030A000C1011091C2012091C3013091C401DC0122 +:1030B000CB01802B912BA22BB32B8093C10190933A +:1030C000C201A093C301B093C4011F910F910C944E +:1030D0006F140F931F930091C1011091C2012091B1 +:1030E000C3013091C401DC01CB0180239123A223D1 +:1030F000B3238093C1019093C201A093C301B09305 +:10310000C4011F910F910C946F140F931F930091A2 +:10311000C1011091C2012091C3013091C401DC01B1 +:10312000CB0180279127A227B3278093C1019093D9 +:10313000C201A093C301B093C4011F910F910C94DD +:103140006F141092BD011092BE011092BF01109237 +:10315000C0010C946F1441E050E060E070E004C0E6 +:10316000440F551F661F771F8A95D2F74093BD0104 +:103170005093BE016093BF017093C0010C946F1413 +:1031800041E050E060E070E004C0440F551F661F4E +:10319000771F8A95D2F78091BD019091BE01A091D1 +:1031A000BF01B091C001482B592B6A2B7B2B409358 +:1031B000BD015093BE016093BF017093C0010C9498 +:1031C0006F1441E050E060E070E004C0440F551F10 +:1031D000661F771F8A95D2F7409550956095709538 +:1031E0008091BD019091BE01A091BF01B091C0013D +:1031F000482359236A237B234093BD015093BE018A +:103200006093BF017093C0010C946F1441E050E0D3 +:1032100060E070E004C0440F551F661F771F8A9559 +:10322000D2F78091BD019091BE01A091BF01B091F4 +:10323000C001482759276A277B274093BD01509337 +:10324000BE016093BF017093C0010C946F140F9383 +:103250001F930091BD011091BE012091BF013091DB +:10326000C001DC01CB01802B912BA22BB32B8093CF +:10327000BD019093BE01A093BF01B093C0011F9107 +:103280000F910C946F140F931F930091BD01109137 +:10329000BE012091BF013091C001DC01CB01802330 +:1032A0009123A223B3238093BD019093BE01A093E9 +:1032B000BF01B093C0011F910F910C946F140F9335 +:1032C0001F930091BD011091BE012091BF0130916B +:1032D000C001DC01CB0180279127A227B32780936F +:1032E000BD019093BE01A093BF01B093C0011F9197 +:1032F0000F910C946F140895CF92DF92EF92FF928A +:103300000F931F93CF93DF938C01C090C101D09096 +:10331000C201E090C301F090C4018091BD01909181 +:10332000BE01A091BF01B091C001C82AD92AEA2AE2 +:10333000FB2ACFE1D0E0D701C6010C2E04C0B69520 +:10334000A795979587950A94D2F780FF06C0B80194 +:103350008C2F0E944808019721F4219760F780E0A4 +:1033600001C08C2FDF91CF911F910F91FF90EF90B3 +:10337000DF90CF900895CF93DF93EC010E947C19EA +:10338000BE010E944808DF91CF910895CB010E94B1 +:10339000BB1908958091C5018595859585950895FA +:1033A0008091C5018770089598E0899F900111244C +:1033B000262B2093C5010C94C0182091C50180953F +:1033C00082238093C501982F977069F430E0482FCD +:1033D000552747FD50952417350729F08595859584 +:1033E00085950C94E11808959091C501977081E03E +:1033F00009F480E0089590910C01992321F09091B7 +:103400000D01911109C020910E0130910F01F901B8 +:1034100032969FEF40E01FC0982F9695969596950F +:103420009F3050F5E0910E01F0910F01E90FF11D71 +:10343000877021E030E0A90102C0440F551F8A9532 +:10344000E2F7CA019181892B818308959F3F39F06A +:103450004F5F4E3041F051915813F8CF0DC05111CC +:10346000F7CF942FF5CF9F3F39F0F901E90FF11D08 +:1034700097FDFA9582830895089590910C01992300 +:1034800021F090910D01911109C020910E01309110 +:103490000F01F9013296205F3F4F1FC0982F96957C +:1034A000969596959F30F0F4E0910E01F0910F0102 +:1034B000E90FF11D877021E030E0A90102C0440F3F +:1034C000551F8A95E2F7CA018095918189238183EE +:1034D00008953196E217F30729F090819813F9CFF8 +:1034E0001082F7CF089581E090E0E0910E01F09115 +:1034F0000F01E80FF91F1082019680319105A9F79D +:1035000008959091D901892B8093D90108958095D0 +:103510009091D90189238093D90108951092D901FE +:1035200008959091D801892B8093D80108958095B2 +:103530009091D80189238093D80108951092D801E1 +:1035400008959091D701892B8093D7010895809594 +:103550009091D70189238093D70108951092D701C4 +:1035600008958093C60108951092C6010895809130 +:103570000E0190910F01FC0131969C01205F3F4F9D +:1035800080E0919191118F5FE217F307D1F70895D1 +:10359000E0910E01F0910F018091D9018083E091BB +:1035A0000E01F0910F0190818091D801892B8083C9 +:1035B000E0910E01F0910F0190818091D701892B4C +:1035C00080838091C601882361F0E0910E01F09123 +:1035D0000F019081892B80830E94B71A811110926C +:1035E000C60180910E0190910F010C94F60F20E01E +:1035F000009739F0AC0141505109842395232F5F86 +:10360000F7CF822F0895CF92DF92EF92FF926C0155 +:10361000EE24FF24C114D104E104F10421F0C70118 +:10362000B60120E101C020E0C72ED82EE92EFF24EC +:10363000C114D104E104F10419F0285FC701B601F7 +:103640006B017C0154E0F694E794D794C7945A95A3 +:10365000D1F7C114D104E104F10419F02C5FC701C2 +:10366000B6016B017C0142E0F694E794D794C794CD +:103670004A95D1F7C114D104E104F10419F02E5F89 +:10368000C701B601DC01CB01B695A7959795879543 +:10369000892B8A2B8B2B09F02F5F822FFF90EF90C5 +:1036A000DF90CF9008958091F101843021F1109244 +:1036B000DB0120E488E190E00FB6F894A8958093B0 +:1036C00060000FBE2093600080E00E94E30883B793 +:1036D000817F846083BF83B7816083BF789488953E +:1036E00083B78E7F83BF88E10FB6F8948093600024 +:1036F000109260000FBE0895089508950E947C1BEB +:103700000E944B030E947D1B0E94400491E08111A6 +:1037100001C090E0892F08950E9483140E94EA0F4F +:103720000C94E30882E084BD93E095BD9AEF97BDC9 +:1037300080936E0008952FB7F8948091DC019091EA +:10374000DD01A091DE01B091DF012FBF0895CF927E +:10375000DF92EF92FF920F931F932FB7F89440914F +:10376000DC015091DD016091DE017091DF012FBF1E +:103770006A017B01EE24FF248C0120E030E0C016BA +:10378000D106E206F30610F4415051099A01281BB4 +:10379000390BC9011F910F91FF90EF90DF90CF90EF +:1037A00008951F920F920FB60F9211248F939F933B +:1037B000AF93BF938091DC019091DD01A091DE0178 +:1037C000B091DF010196A11DB11D8093DC019093A2 +:1037D000DD01A093DE01B093DF01BF91AF919F9116 +:1037E0008F910F900FBE0F901F9018950E94E70CBD +:1037F000F8942FEF87EA91E6215080409040E1F75E +:1038000000C0000087E090EBDC018093FB01909307 +:10381000FC01A093FD01B093FE019CE088E10FB68E +:10382000F894A895809360000FBE90936000FFCF3E +:10383000EF92FF920F931F93CF93DF93D82FCDE09A +:103840008C2F0E94390405E010E0E82EF12CC7010E +:10385000002E02C0959587950A94E2F780FF09C073 +:10386000602F7C2F80E00E94F305D81302C081E016 +:1038700006C00150110958F7C15010F780E0DF91E0 +:10388000CF911F910F91FF90EF900895CF93C82F84 +:103890008CE20E94181C882321F08C2FCF910C946D +:1038A000181C80E0CF910895CF930E949B1D811139 +:1038B00002C00E94811DC5E6C15049F00E944B0321 +:1038C0008FE39CE90197F1F700C00000F5CF89E292 +:1038D0000E94461C811113C18AE20E94461C81117C +:1038E0000E94811D85E00E94461C81110E94F61BEA +:1038F0000E94A61D8093DA0187E00E94461C88235F +:10390000A9F18BE10E94461C882351F08091DA01D5 +:1039100081FB222720F991E0922790FB81F90EC0CC +:103920008EE00E94461C882361F08091DA0182FBC0 +:10393000222720F991E0922790FB82F98093DA0107 +:1039400015C080E10E94461C9091DA01882341F065 +:1039500093FB222720F981E0822780FB93F904C0A2 +:10396000892F809580FB90F99093DA018091DA019C +:103970000E94AA1D0E94B81D8093FA0180EE0E9449 +:10398000461C882341F08091FA01982F909590FB76 +:1039900080F98093FA0189E30E94461C882359F03C +:1039A0008091FA0181FB222720F991E0922790FB78 +:1039B00081F98093FA0182EE0E94461C882359F017 +:1039C0008091FA0182FB222720F991E0922790FB57 +:1039D00082F98093FA0186EE0E94461C882359F0F2 +:1039E0008091FA0183FB222720F991E0922790FB36 +:1039F00083F98093FA0183EE0E94461C882359F0D4 +:103A00008091FA0184FB222720F991E0922790FB14 +:103A100084F98093FA0185E30E94461C882359F0BB +:103A20008091FA0185FB222720F991E0922790FBF3 +:103A300085F98093FA0181E30E94461C882359F09E +:103A40008091FA0186FB222720F991E0922790FBD2 +:103A500086F98093FA0181E10E94461C882359F07F +:103A60008091FA0187FB222720F991E0922790FBB1 +:103A700087F98093FA018091FA010E94BC1D809120 +:103A8000FA0187FB882780F980930D0187E20E9465 +:103A9000461CC82F8EE10E94461C8111C2608FE136 +:103AA0000E94461C8111C46080E20E94461C811164 +:103AB000C86081E20E94461C8111C06182E20E94BE +:103AC000461C8111C06283E20E94461C8111C064C1 +:103AD00084E20E94461C882311F0C06802C0CC23F7 +:103AE00029F08C2F0E94B31D6C2F03C00E94AF1DC4 +:103AF000682F70E080E090E0CF910C944318CF9154 +:103B000008956DEE7EEF80E090E00E94ED2360E08E +:103B100082E090E00E94DB2360E083E090E00E947E +:103B2000DB2360E084E090E00E94DB2360E085E03E +:103B300090E00C94DB2380E090E00E94D52321E00C +:103B40008D3E9E4F09F020E0822F089582E090E0A4 +:103B50000C94CD23682F82E090E00C94DB2383E06B +:103B600090E00C94CD23682F83E090E00C94DB234D +:103B700084E090E00C94CD23682F84E090E00C94D6 +:103B8000DB238091E20180FF0BC06091130185E08F +:103B9000689FB001112475956795759567952BC041 +:103BA00081FF09C06091130185E0689FB001112475 +:103BB0007595679520C082FF07C06091130185E06D +:103BC000689FB001112417C09091E3019923D1F0AF +:103BD00060911201961788F72091130185E0289FC4 +:103BE00090011124929FA001939F500D112470E029 +:103BF000CA010E949F236038710540F46115710568 +:103C000039F002C065E070E0862F08958FE70895CF +:103C100081E008958091E20180FF08C06091110168 +:103C200070E0759567957595679521C081FF06C011 +:103C30006091110170E07595679519C082FF04C00D +:103C40006091110170E010C09091E3019923C1F0DF +:103C5000609110019617A0F780911101899FC00112 +:103C6000112470E00E949F236038710528F46115CB +:103C7000710521F0862F08958FE7089581E008955A +:103C800061E070E0F4CF803F21F40E94C11D819576 +:103C900004C0813F29F40E94C11D8093E60108956C +:103CA000823F21F40E94C11D819504C0833F29F405 +:103CB0000E94C11D8093E5010895893F19F40E9477 +:103CC0000A1E05C08A3F31F40E940A1E8195809326 +:103CD000E70108958B3F21F40E940A1E819504C0DC +:103CE0008C3F29F40E940A1E8093E8010895843FC6 +:103CF00021F48091E401816017C0853F21F4809117 +:103D0000E401826011C0863F21F48091E401846067 +:103D10000BC0873F21F48091E401886005C0883F93 +:103D200031F48091E40180618093E40108958D3F36 +:103D300021F48091E20181600BC08E3F21F48091DB +:103D4000E201826005C08F3F29F48091E201846026 +:103D50008093E2010895803F39F48091E60187FF66 +:103D60006CC01092E60169C0813F29F48091E601A0 +:103D70001816BCF362C09091E501823F29F497FFC9 +:103D80005CC01092E50159C0833F19F41916CCF3B9 +:103D900054C0893F41F48091E70118160CF04DC0E2 +:103DA0001092E7014AC08A3F29F48091E70187FF1A +:103DB00044C0F6CF8B3F39F48091E80187FF3DC0C6 +:103DC0001092E8013AC08C3F29F48091E80118165E +:103DD000BCF333C0843F21F48091E4018E7F17C08F +:103DE000853F21F48091E4018D7F11C0863F21F44D +:103DF0008091E4018B7F0BC0873F21F48091E40127 +:103E0000877F05C0883F31F48091E4018F7E8093E5 +:103E1000E40113C08D3F21F48091E2018E7F0BC03D +:103E20008E3F21F48091E2018D7F05C08F3F29F400 +:103E30008091E2018B7F8093E2018091E501811105 +:103E40000EC08091E60181110AC08091E7018111C5 +:103E500006C08091E801811102C01092E30108952B +:103E600084EE91E00E9401100E949B1B9093E1015F +:103E70008093E00108951F93CF93DF938091E00139 +:103E80009091E1010E94A71BAC019091E30199235D +:103E900021F02091140130E006C0209115018AE044 +:103EA000289F900111244217530708F486C080917F +:103EB000E501C091E601D091E7011091E80181117F +:103EC00007C0C11176C0D11174C0111172C075C084 +:103ED0009F3F19F09F5F9093E301181624F40E940E +:103EE000C11D8093E5018091E50187FF05C00E9417 +:103EF000C11D81958093E5011C1624F40E94C11D0B +:103F00008093E6018091E60187FF05C00E94C11DF4 +:103F100081958093E6016091E501662339F1C091B6 +:103F2000E601CC2319F1772767FD7095872F972F2E +:103F30000E94B02223E333E343E35FE30E941423B0 +:103F40000E947D226093E5016C2F772767FD7095B5 +:103F5000872F972F0E94B02223E333E343E35FE3ED +:103F60000E9414230E947D226093E6011D1624F412 +:103F70000E940A1E8093E7018091E70187FF05C038 +:103F80000E940A1E81958093E701111624F40E9475 +:103F90000A1E8093E8018091E80187FF05C00E9416 +:103FA0000A1E81958093E801DF91CF911F910C94B7 +:103FB000301F9F3F09F08ECF96CFDF91CF911F9199 +:103FC0000895E4EEF1E085E0DF011D928A95E9F7BE +:103FD0001092E3011092E2010895833081F128F4F8 +:103FE000813059F08230D1F00895853009F449C00C +:103FF000B8F1863009F456C0089580911501262F36 +:1040000030E0280F311D2F3F310524F4680F6093F5 +:10401000150108958FEF8093150108958091140183 +:10402000262F30E0280F311D2F3F310524F4680F73 +:104030006093140108958FEF809314010895809187 +:104040001301262F30E0280F311D2F3F310524F4B6 +:10405000680F6093130108958FEF80931301089503 +:1040600080911201262F30E0280F311D2F3F31059E +:1040700024F4680F6093120108958FEF809312016A +:10408000089580911101262F30E0280F311D2F3F18 +:10409000310524F4680F6093110108958FEF809328 +:1040A0001101089580911001262F30E0280F311D55 +:1040B0002F3F310524F4680F6093100108958FEFAE +:1040C000809310010895833011F128F4813049F074 +:1040D000823091F00895853081F120F18630C1F170 +:1040E000089580911501681720F4861B80931501AF +:1040F000089510921501089580911401681720F415 +:10410000861B8093140108951092140108958091E4 +:104110001301681720F4861B8093130108951092F1 +:104120001301089580911201681720F4861B809373 +:1041300012010895109212010895809111016817DB +:1041400020F4861B809311010895109211010895A7 +:1041500080911001681720F4861B80931001089548 +:104160001092100108950F931F938D3109F46BC0C5 +:1041700008F03FC08E3009F47FC0C0F4873009F4E6 +:1041800069C068F4863009F0B1C08091DA01817F9E +:104190008E7F8093DA0181E08093EA01A8C08830A5 +:1041A00009F4A2C08B3009F49FC0A0C0863109F485 +:1041B0009BC078F4803109F472C0813109F096C057 +:1041C0000E94831490910D0181E0892780930D0155 +:1041D0008BC0893109F488C08B3109F087C0809188 +:1041E000DA0181FB222720F991E0922790FB81F9E7 +:1041F0004CC0853309F470C048F4873209F46CC0B0 +:1042000008F459C0893209F467C070C0833438F4A7 +:104210008A3308F04EC0883309F466C067C083341F +:1042200009F45AC0883409F061C00E9483140FEF6A +:1042300013ED20E3015010402040E1F700C00000E2 +:104240000E94F61B51C00E9437220E94EA0F0E9472 +:10425000E3084AC09091DA01892F8095817080FB34 +:1042600090F929F0966098609093DA0140C0997FA8 +:10427000977F9093DA0138C08091DA0182FB222780 +:1042800020F991E0922790FB82F98093DA0199233B +:1042900059F18091DA0181608093DA0125C0809123 +:1042A000DA0183FB222720F991E0922790FB83F922 +:1042B000ECCF895301C08D5141E050E060E070E0E7 +:1042C0008A019B0104C0000F111F221F331F8A9512 +:1042D000D2F7C901B80104C061E070E080E090E06D +:1042E0000E9443180E94831481E001C080E01F9166 +:1042F0000F91089580E0089580E00895CF93C82F2E +:104300008091EA01813079F018F08230E9F187C0BC +:10431000E0910E01F0910F018081813169F08232CC +:1043200009F07FC009C0E0910E01F0910F0180817A +:10433000813111F0823261F48C2F0E947A21811137 +:1043400004C08C2F0E94B3201DC081E090E01AC0F1 +:104350008C2F0E947C21811114C0C43179F048F463 +:10436000CB3079F0C03109F060C082E08093EA017F +:1043700008C0C93219F0C83321F057C01092EA01C1 +:1043800054C081E0817053C0C93289F118F5C4313D +:1043900071F1A8F4C73009F046C08AE08093150196 +:1043A00094E19093140193E0909313018093120190 +:1043B00088E08093110188E28093100134C0CE51CF +:1043C000C63088F5EC2FF0E0E65DFE4F80818093EB +:1043D000E90129C0CE34E9F020F4CB3421F56AE0BC +:1043E00013C0C13579F0C235F1F461E00DC08091A0 +:1043F000E901882319F01092E90115C081E080934A +:10440000EA0115C061E006C08091E9010E94ED1F3C +:104410000AC06AE08091E9010E94632004C0109202 +:10442000EA0180E004C081E002C080E0ABCFCF9120 +:104430000895E1E8F0E08081886080838081816078 +:1044400080838FB7F89493E09093890090ED9093D8 +:1044500088008FBF0895EFE6F0E08081826080835E +:104460000895EFE6F0E080818D7F80830895EFE688 +:10447000F0E0908182E08927808308951F920F9257 +:104480000FB60F9211242F933F934F935F936F9327 +:104490007F938F939F93AF93BF93EF93FF938091FD +:1044A000EB019091EC0101969093EC018093EB016C +:1044B000811103C082E00E94E308E091EC01E695DF +:1044C000E695F0E0EC54FB4FE4918091EB018E1304 +:1044D00003C080E00E94E308FF91EF91BF91AF918C +:1044E0009F918F917F916F915F914F913F912F910C +:1044F0000F900FBE0F901F90189504D06894B111C3 +:104500008DC0089570D088F09F5790F0B92F9927EB +:10451000B751A0F0D1F0660F771F881F991F1AF0CE +:10452000BA95C9F712C0B13081F077D0B1E00895E3 +:1045300074C0672F782F8827B85F39F0B93FCCF364 +:10454000869577956795B395D9F73EF490958095C4 +:10455000709561957F4F8F4F9F4F0895E89409C0E4 +:1045600097FB3EF490958095709561957F4F8F4FA6 +:104570009F4F9923A9F0F92F96E9BB279395F695BC +:10458000879577956795B795F111F8CFFAF4BB0F3A +:1045900011F460FF1BC06F5F7F4F8F4F9F4F16C09E +:1045A000882311F096E911C0772321F09EE8872F28 +:1045B000762F05C0662371F096E8862F70E060E0E4 +:1045C0002AF09A95660F771F881FDAF7880F96955D +:1045D000879597F9089557FD9058440F551F59F046 +:1045E0005F3F71F04795880F97FB991F61F09F3FE0 +:1045F00079F087950895121613061406551FF2CF09 +:104600004695F1DF08C0161617061806991FF1CF58 +:1046100086957105610508940895E894BB2766277F +:104620007727CB0197F908950BD078C069D028F08F +:104630006ED018F0952309F05AC05FC01124EECF58 +:10464000CADFA0F3959FD1F3950F50E0551F629FED +:10465000F001729FBB27F00DB11D639FAA27F00DDB +:10466000B11DAA1F649F6627B00DA11D661F829F02 +:104670002227B00DA11D621F739FB00DA11D621FE7 +:10468000839FA00D611D221F749F3327A00D611D04 +:10469000231F849F600D211D822F762F6A2F1124E6 +:1046A0009F5750408AF0E1F088234AF0EE0FFF1F39 +:1046B000BB1F661F771F881F91505040A9F79E3F70 +:1046C000510570F014C0AACF5F3FECF3983EDCF3C5 +:1046D000869577956795B795F795E7959F5FC1F7AD +:1046E000FE2B880F911D9695879597F9089597F958 +:1046F0009F6780E870E060E008959FEF80EC089588 +:1047000000240A94161617061806090608950024B0 +:104710000A9412161306140605060895092E03942A +:10472000000C11F4882352F0BB0F40F4BF2B11F49E +:1047300060FF04C06F5F7F4F8F4F9F4F089597FBBF +:10474000072E16F4009407D077FD09D00E94B923F4 +:1047500007FC05D03EF4909581959F4F0895709584 +:1047600061957F4F0895EE0FFF1F0590F491E02DA6 +:104770000994AA1BBB1B51E107C0AA1FBB1FA617A8 +:10478000B70710F0A61BB70B881F991F5A95A9F7FA +:1047900080959095BC01CD010895F999FECF92BD09 +:1047A00081BDF89A992780B50895A8E1B0E042E06C +:1047B00050E00C94F523262FF999FECF92BD81BDD0 +:1047C000F89A019700B4021639F01FBA20BD0FB64F +:1047D000F894FA9AF99A0FBE08950196272F0E942D +:1047E000DC230C94DB23DC01CB01FC01F999FECF27 +:1047F00006C0F2BDE1BDF89A319600B40D92415069 +:0A4800005040B8F70895F894FFCF78 +:10480A000220E508730950091C09E8080101C701DB +:10481A0028080A03140A3F4D363975042804F2039E +:10482A00B9034C0365037E039703010203040506DB +:04483A000708090062 +:00000001FF diff --git a/keyboards/ergodox_ez/keymaps/osx_kinesis_pnut/keymap.c b/keyboards/ergodox_ez/keymaps/osx_kinesis_pnut/keymap.c new file mode 100644 index 0000000000..1032be5491 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/osx_kinesis_pnut/keymap.c @@ -0,0 +1,191 @@ +// Netable differences vs. the default firmware for the ErgoDox EZ: +// 1. The Cmd key is now on the right side, making Cmd+Space easier. +// 2. The media keys work on OSX (But not on Windows). +// Wanted to map default layer of my EZ to my existing Kinesis Mapping. +// Only default layer was remapped all others layers are standard Ergodox EZ +// Very personal mapping of-course, but who knows a starting point for others. + +#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 + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | CapsL | 1 | 2 | 3 | 4 | 5 | LEFT | | RIGHT| 6 | 7 | 8 | 9 | 0 | - | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | TAB | Q | W | E | R | T | L1 | | L1 | Y | U | I | O | P | \ | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | ESC | A | S | D | F | G |------| |------| H | J | K | L |; / L2| '" | + * |--------+------+------+------+------+------| Hyper| | Meh |------+------+------+------+------+--------| + * | LShift |Z/Ctrl| X | C | V | B | | | | N | M | , | . |//Ctrl| RShift | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * |AltShf|Grv/L1| '" | Left | Right| | Up | Down | [ | ] | ~L1 | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | LGui | App | | Ctrl/Esc | RGui | + * ,------|------|------| |------+--------+------. + * | | | Home | | = | | | + * | Backs|Delete|------| |------| Enter |Space | + * | pace | | End | | TAB | | | + * `--------------------' `----------------------' + */ +// 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_CAPSLOCK, KC_1, KC_2, KC_3, KC_4, KC_5, KC_LEFT, + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, TG(1), + KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, + KC_LSFT, CTL_T(KC_Z), KC_X, KC_C, KC_V, KC_B, ALL_T(KC_NO), + LALT(KC_LSFT), LT(SYMB,KC_GRV),KC_QUOT,KC_LEFT,KC_RGHT, + KC_LGUI, ALT_T(KC_APP), + KC_HOME, + KC_BSPC,KC_DELT,KC_END, + // right hand + KC_RGHT, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, + TG(1), 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_QUOTE, + 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, + CTL_T(KC_ESC), KC_LGUI, + KC_EQL, + KC_TAB, KC_ENT, KC_SPC + ), +/* Keymap 1: Symbol Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | ! | @ | { | } | | | | | | Up | 7 | 8 | 9 | * | F12 | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | # | $ | ( | ) | ` |------| |------| Down | 4 | 5 | 6 | + | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | % | ^ | [ | ] | ~ | | | | & | 1 | 2 | 3 | \ | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | . | 0 | = | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// SYMBOLS +[SYMB] = KEYMAP( + // left hand + KC_TRNS,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, + KC_TRNS,KC_EXLM,KC_AT, KC_LCBR,KC_RCBR,KC_PIPE,KC_TRNS, + KC_TRNS,KC_HASH,KC_DLR, KC_LPRN,KC_RPRN,KC_GRV, + KC_TRNS,KC_PERC,KC_CIRC,KC_LBRC,KC_RBRC,KC_TILD,KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS, + KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS, + // right hand + KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + KC_TRNS, KC_UP, KC_7, KC_8, KC_9, KC_ASTR, KC_F12, + KC_DOWN, KC_4, KC_5, KC_6, KC_PLUS, KC_TRNS, + KC_TRNS, KC_AMPR, KC_1, KC_2, KC_3, KC_BSLS, KC_TRNS, + KC_TRNS,KC_DOT, KC_0, KC_EQL, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), +/* Keymap 2: Media and mouse keys + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | MsUp | | | | | | | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | |MsLeft|MsDown|MsRght| |------| |------| | | | | | Play | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | | Prev | Next | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | Lclk | Rclk | |VolUp |VolDn | Mute | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | |Brwser| + * | | |------| |------| |Back | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// MEDIA AND MOUSE +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/keyboards/ergodox_ez/keymaps/plover/compiled.hex b/keyboards/ergodox_ez/keymaps/plover/compiled.hex new file mode 100644 index 0000000000..5e04e24944 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/plover/compiled.hex @@ -0,0 +1,1169 @@ +:100000000C94CE020C9412030C9412030C94120361 +:100010000C9412030C9412030C9412030C9412030C +:100020000C9412030C9412030C94B60D0C94880ECD +:100030000C9412030C9412030C9412030C941203EC +:100040000C9412030C9492220C9412030C9412033D +:100050000C9412030C94251C0C9412030C941203A0 +:100060000C9412030C9412030C9412030C941203BC +:100070000C9412030C9412030C9412030C941203AC +:100080000C9412030C9412030C9412030C9412039C +:100090000C9412030C9412030C9412030C9412038C +:1000A0000C9412030C9412030C941203F50E170F08 +:1000B0000510170F05105C0F7F0F0510D40FE70F09 +:1000C000B612B612E512E5121B133B136C146C1436 +:1000D00046136C14F613F6135D146C146C1466144A +:1000E0000314031403140314031403140314031458 +:1000F0000314031403140314031403140314031448 +:1001000015142214291430143A140000F0A12E0002 +:100110002B002900E100354100001E0014000400FE +:100120001D713400E2001F001A0016001B00E104DC +:100130004C00200008000700060050002A002100A3 +:100140001500090019004F004D00220017000A0099 +:10015000050000006574E30001540000007F00000A +:100160004A004F000354000000770000E200230023 +:100170001C000B00110000002971240018000D0064 +:10018000100052004B0025000C000E0036005100FC +:100190002C00260012000F0037002F002800270037 +:1001A00013003342387130004E002D00310034000E +:1001B000E500C10000000100010001000100010094 +:1001C00000003A001E0220022202010001003B0052 +:1001D0001F0221022302010001003C002F0226021F +:1001E0002F00010001003D00300227023000010015 +:1001F00001003E003102350035020000010001001F +:1002000001000000010000000100010001000000E9 +:100210000100000001003F005200510024020000D4 +:1002200001004000240021001E00010001004100E7 +:10023000250022001F003700010042002600230095 +:10024000200027000100430025022E0231002E006D +:100250000100440045000100010001000000010010 +:100260000100010001000100000001000100010087 +:1002700001000100010001000100F2000100010085 +:10028000F5000100F000F1000100F400F4000100AD +:100290000100F3000100F500010001000100010070 +:1002A0000100000001000100010000000100000049 +:1002B0000100010001000000010000000100010038 +:1002C0000100F20001000000010001000100F10046 +:1002D0000100A900010001000100F000AC00AA002B +:1002E000B70001000100F300AB00A800B600010058 +:1002F0000100010001000100010001000100AE0049 +:1003000001000100000000000000000000000000EB +:10031000000000001E0014000400000000000000A7 +:100320001F001A001600000019000000200008003D +:100330000700000006000000210015000900000071 +:1003400000000000220017000A000000C4000000A6 +:10035000000000000000000000000100000000009C +:10036000000000000100000023001C000B00000042 +:1003700001000000240018000D0001000100000031 +:1003800025000C000E0001001000000026001200E5 +:100390000F000000110000002700130033000000D0 +:1003A0000000010001002F003400000000001603CF +:1003B0004500720067006F0044006F007800200065 +:1003C00045005A00000016034500720067006F00E8 +:1003D00044006F007800200045005A00000004032C +:1003E000090409026D00040100A0FA0904000001DB +:1003F00003010100092111010001223F00070581CD +:100400000308000A09040100010301020009211187 +:10041000010001224D000705820308000A090402B9 +:10042000000103000000092111010001223600072C +:1004300005830308000A0904030001030000000902 +:100440002111010001223900070584031000011267 +:1004500001100100000008EDFE0713010001020079 +:100460000105010906A101050719E029E715002585 +:100470000195087501810205081901290595057581 +:10048000019102950175039101050719002977155E +:10049000002501957875018102C005010980A1013F +:1004A000850216010026B7001A01002AB700751050 +:1004B00095018100C0050C0901A101850316010009 +:1004C000269C021A01002A9C02751095018100C029 +:1004D00005010902A1010901A10005091901290568 +:1004E00015002501950575018102950175038101AE +:1004F0000501093009311581257F950275088106AE +:1005000009381581257F950175088106050C0A3883 +:10051000021581257F950175088106C0C005010976 +:1005200006A101050719E029E715002501950875C1 +:1005300001810295017508810105081901290595B8 +:1005400005750191029501750391010507190029AF +:10055000FF150025FF950675088100C0000000000A +:1005600000000000000000010204060A0F17202C02 +:100570003A4A5D71879DB3C7DAE9F5FCFFFCF5E9FE +:10058000DAC7B39D87715D4A3A2C20170F0A06041B +:1005900002010000000000000000000011241FBE46 +:1005A000CFEFDAE0DEBFCDBF04B603FE24C08091FA +:1005B000FB019091FC01A091FD01B091FE018730FB +:1005C000904BA740B04BB9F41092FB011092FC0184 +:1005D0001092FD011092FE0114BE84B7877F84BF84 +:1005E00088E10FB6F89480936000109260000FBE0F +:1005F000E0E0FFE3099511E0A0E0B1E0E2EBF8E410 +:1006000002C005900D92A433B107D9F711E0A4E31D +:10061000B1E001C01D92AB3FB107E1F70E94FA0AB9 +:100620000C9457240C9400001092B9008AE0809337 +:10063000B800089594EA9093BC009091BC0097FF95 +:10064000FCCF9091B900987F983021F0903111F053 +:1006500081E008958093BB0084E88093BC00809182 +:10066000BC0087FFFCCF8091B900887F883111F0F2 +:10067000803471F780E0089584E98093BC00809114 +:10068000BC0084FDFCCF08958093BB0084E8809378 +:10069000BC008091BC0087FFFCCF9091B900987F8F +:1006A00081E0983209F480E0089584E88093BC00EA +:1006B0008091BC0087FFFCCF8091BB0008958091A2 +:1006C0000101811115C080E40E941A038093010189 +:1006D00081110CC082E10E944403809301018111C9 +:1006E00005C08FEF0E944403809301010E943C03E8 +:1006F00084B1807F84B985B1807F85B98AB1837FD9 +:100700008AB98BB1837F8BB93E98469808950E9431 +:100710001A05809301010E945F0380B38C7080BB37 +:1007200081B3836F81BBA5E3B1E0E3E4F1E08EE048 +:100730008E0F11921D928E13FCCF0C940405BF9264 +:10074000CF92DF92EF92FF920F931F93CF93DF939D +:1007500080910101882379F0809134018F5F80932B +:100760003401811108C00E941A0580930101811192 +:1007700002C00E94AC0405E311E0C0E0D0E0DD243B +:10078000D39482E0C82EEE24E394F12CC730D10537 +:1007900000F580910101811164C080E40E941A0378 +:1007A00080930101811112C082E10E944403809371 +:1007B000010181110BC0C7010C2E01C0880F0A94E2 +:1007C000EAF780950E944403809301010E943C0354 +:1007D00048C0CA30A1F028F4C83059F0C93061F0DF +:1007E00005C0CC3089F070F0CD3089F0209A28987F +:1007F00010C0219A29980DC0229A2A980AC0239ADB +:100800002B9807C0529A01C0539A5B9802C03E9A37 +:10081000469890EA9A95F1F79FB1799902C082E0E3 +:1008200001C080E091709D25982B7C9902C084E0E6 +:1008300001C080E0892B7D9902C038E001C030E022 +:10084000832B7E9902C020E101C020E0822B9FB162 +:100850009095991F9927991F9295990F907E892BB2 +:100860000FC080910101811149C080E40E941A03E8 +:1008700080930101882379F1B12C0E943C038B2DD8 +:10088000F8019081981719F08083C09200010E94AE +:100890005F0321960F5F1F4FCE30D10509F076CF51 +:1008A00080910001882361F18150809300018823A9 +:1008B00039F08FE99FE00197F1F700C0000020C0F8 +:1008C000A3E4B1E0E5E3F1E0CF01825F91919D9374 +:1008D0008E13FCCF15C083E10E9444038093010175 +:1008E0008111CACF81E40E941A0380930101811112 +:1008F000C3CF0E945503B82EB094BFCF80E0C0CFC5 +:100900000E94AA0481E0DF91CF911F910F91FF9087 +:10091000EF90DF90CF90BF900895E82FF0E0ED5B6F +:10092000FE4F8081089508950F931F93CF93DF9317 +:10093000C3E4D1E010E00C2F025F899190E00E94A7 +:100940004B1B180F0C13F9CF812FDF91CF911F9103 +:100950000F9108950C947A0556985E9825982D98D5 +:1009600026982E9827982F988FEF90E090938900E3 +:100970008093880090938B0080938A0090938D00E1 +:1009800080938C00259A2D9A2FEF80E792E02150DA +:1009900080409040E1F700C00000269A2E9A2FEF89 +:1009A00080E792E0215080409040E1F700C00000D5 +:1009B000279A2F9A2FEF80E792E0215080409040B5 +:1009C000E1F700C0000025982D982FEF80E792E016 +:1009D000215080409040E1F700C0000026982E98FA +:1009E0002FEF80E792E0215080409040E1F700C077 +:1009F000000027982F9856985E9825982D9826984D +:100A00002E9827982F98089589EA8093800089E08E +:100A10008093810024982C983F988AB18F748AB96A +:100A20006E98479A8BB1806B8BB9769A0E94AC0412 +:100A30000C94790580E2809301018091510181112C +:100A40000EC00E94140381E0809351012FEF83EDCB +:100A500090E3215080409040E1F700C0000080E426 +:100A60000E941A038093010181112EC00E94440349 +:100A700080930101811128C00E94440380930101E9 +:100A8000811122C08FE30E944403809301018111F0 +:100A90001BC00E943C0380E40E941A038093010162 +:100AA000811112C08CE00E944403809301018111E6 +:100AB0000BC00E94440380930101811105C08FE3A4 +:100AC0000E944403809301010E943C038091010134 +:100AD000089561110BC0FC018281882321F085EE0D +:100AE0000E945A1103C085EE0E94221280E090E01D +:100AF000089508956091BD017091BE018091BF017C +:100B00009091C0010E94571B56985E9825982D9889 +:100B100026982E9827982F98813019F0823021F04E +:100B20000895259A2D9A0895269A2E9A089581E07F +:100B3000089581E008950C94990508950F931F93EB +:100B4000CF93DF938C01FC01C081D181CE010E9443 +:100B5000D019BE010E944706EC01B8010E949B0516 +:100B6000882309F48DC0F8018281882309F44AC0E2 +:100B700080915D0181111FC0C431F0E5DF0709F0EC +:100B800051C00E949D0581E080935D010E94EF1B92 +:100B900090935C0180935B01109254011092560176 +:100BA00010925501109258011092570110925A015B +:100BB0001092590165C080915B0190915C010E9487 +:100BC000FB1B883C910570F480915401E82FF0E004 +:100BD000EE0FFF1FEB5AFE4FD183C0838F5F8093D0 +:100BE00054014EC0C43880E5D80721F0C538D0453F +:100BF00001F13AC0F8018281882341F0109252013C +:100C000082E01EC0C438E0E5DE0759F5809152014C +:100C1000811106C086E20E945A1186E20E942212C9 +:100C200082E01CC0C438F0E5DF0741F3C538D04589 +:100C3000D9F4F8018281882331F01092530180E2C7 +:100C40000E9471121DC080915301811106C087E27C +:100C50000E945A1187E20E94221280E20E947812BA +:100C60000FC0C538D04529F381E0809352018093AD +:100C70005301C801DF91CF911F910F910C949705FB +:100C800080E0DF91CF911F910F910895089596E034 +:100C9000799FF001112494E5899FE00DF11D112445 +:100CA000E60FF11DEE0FFF1FE25FFE4F859194915D +:100CB0000895880F991FFC01E657F04085919491A3 +:100CC0000895880F991FFC01E65FFE4F859194916E +:100CD00008950F931F93CF93DF93EC01811520E3C9 +:100CE000920750F5C11580E2D80708F0C3C0CB3B8E +:100CF000D10590F4C83AD10508F06AC0C53AD105CB +:100D000008F05BC0C430D10508F0D0C1219709F0CC +:100D1000CAC101E010E00AC2CF3FD10511F008F0CE +:100D2000C5C1C03FD10508F0A2C0CE01805E9109C7 +:100D3000089708F4BBC1B7C1C13090E5D90709F4E1 +:100D4000A2C020F5C0318FE4D80770F4C11590E43B +:100D5000D90708F094C0C11521E3D20708F0A3C158 +:100D6000DD278E01106CE2C1C115D04509F09BC191 +:100D70000E94D7148FEF94E32CE0815090402040E4 +:100D8000E1F700C000000E944A1CD0C1C11597E5E0 +:100D9000D90758F4C03121E5D20708F01CC1C4318D +:100DA00080E5D80708F475C07EC1CE019057811543 +:100DB000904108F078C1DF7073C1C53AD10509F4DC +:100DC00077C1C63AD10509F076C102E810E4AEC198 +:100DD000C83AD10509F472C1C93AD10509F471C103 +:100DE000CA3AD10509F470C1CB3AD10509F46FC1F3 +:100DF000CC3AD10509F46EC1CD3AD10509F46DC1E3 +:100E0000C03BD10509F46CC1CE3AD10509F46BC1E0 +:100E1000CF3AD10509F46AC1C13BD10509F469C1D2 +:100E2000C23BD10509F468C1C33BD10509F467C1D0 +:100E3000C43BD10509F466C1C53BD10509F465C1C0 +:100E4000C63BD10509F464C1C73BD10509F463C1B0 +:100E5000C83BD10509F462C1C93BD10509F461C1A0 +:100E6000CA3BD10509F460C100E014E45FC18E0102 +:100E700010655CC1CE019F700E94610658C1DF7091 +:100E80008E01106A53C18091DA0181608093DA018A +:100E90004DC10E94EF1D811102C00E94D51D0E940C +:100EA0000C1E90E09093FB018093FA01C23080E524 +:100EB000D80721F48091FA01816086C0C43090E5A2 +:100EC000D90721F48091FA0182607EC0C63020E506 +:100ED000D20721F48091FA01846076C0C83080E5A1 +:100EE000D80719F48091FA0127C0CA3090E5D907D4 +:100EF00021F48091FA01806167C0CC3020E5D207EF +:100F000021F48091FA0180625FC0CE3080E5D8077D +:100F100021F48091FA01806457C0C03190E5D9076F +:100F200021F48091FA0180684FC0C23120E5D207D8 +:100F300029F48091FA018460886046C0C33080E55E +:100F4000D80721F48091FA018E7F3EC0C53090E52C +:100F5000D90721F48091FA018D7F36C0C73020E592 +:100F6000D20721F48091FA018B7F2EC0C93080E531 +:100F7000D80719F48091FA0126C0CB3090E5D90743 +:100F800021F48091FA018F7E1FC0CD3020E5D20779 +:100F900021F48091FA018F7D17C0CF3080E5D8070A +:100FA00021F48091FA018F7B0FC0C13190E5D90700 +:100FB00021F48091FA018F7707C0C331D04531F415 +:100FC0008091FA018B7F877F8093FA018091FA01EB +:100FD0000E94101EABC08D2F99278F7099278130EA +:100FE0009105D9F49E012370332702C0880F991F01 +:100FF0002A95E2F79C688E0144E0000F111F4A9584 +:10100000E1F700271370802B912B53E0CC0FDD1FED +:101010005A95E1F7C076DD272FC08230910531F473 +:10102000DC2FCC278E01016F106A80C083309105C0 +:1010300069F4CE018370992701E010E002C0000F2F +:10104000111F8A95E2F7C8019C680FC08430910592 +:10105000B9F4CE018370992701E010E002C0000FBF +:10106000111F8A95E2F7C8019A6823E0CC0FDD1FB3 +:101070002A95E1F7C07ED7708C010C2B1D2B56C032 +:101080008530910531F4DC2FCC278E01046F106A76 +:101090004DC0069709F04AC0CF71DD27DC2FCC2761 +:1010A0008E01106243C000E010E040C08E013EC0DF +:1010B00001E810E43BC003E810E438C002EE14E499 +:1010C00035C009EE14E432C00AEE14E42FC005EB7B +:1010D00014E42CC006EB14E429C007EB14E426C08A +:1010E0000CEC14E423C00DEC14E420C003E815E478 +:1010F0001DC00AE815E41AC002E915E417C004E9A6 +:1011000015E414C001E216E411C003E216E40EC0B7 +:1011100004E216E40BC005E216E408C006E216E499 +:1011200005C007E216E402C00AE216E4C801DF9136 +:10113000CF911F910F91089596E0799FF0011124AE +:1011400094E5899FE00DF11D1124E60FF11DEE0FCE +:10115000FF1FE25FFE4F85919491803E9105E0F480 +:10116000803C910558F58133910509F46FC048F42E +:101170008932910509F463C08A32910509F46DC082 +:1011800072C089339105E9F082389105D1F0853339 +:10119000910509F44DC067C0833E910581F138F493 +:1011A000803E9105B9F0823E9105D9F05CC0863E43 +:1011B000910561F1873E9105A1F155C00E94590644 +:1011C00008952091FA0120FD02C021FF4CC080EE5D +:1011D00090E049C08091FA0180FFF9CF89E390E067 +:1011E00042C08091FA0182FF0EC08091FA0184FF13 +:1011F00003C080E090E037C083EE90E034C080917F +:10120000FA0182FFF2CF82EE90E02DC08091FA01C8 +:1012100083FF0BC08091FA0184FDEBCF87EE90E055 +:1012200022C08091FA0183FFF5CF86EE90E01BC0CB +:101230008091FA0185FF07C089E290E014C0809197 +:10124000FA0185FFF9CF85E390E00DC08091FA01A6 +:1012500086FF07C08AE290E006C08091FA0186FF0F +:10126000F9CF81E390E00E946906089508950C94F7 +:10127000360980916E010895CF93DF9300D01F92BD +:10128000CDB7DEB79C018091F101843019F593E070 +:1012900099833B832A839093E9008FEF9091E80034 +:1012A000815095FD06C095ED9A95F1F700008111EA +:1012B000F5CF8091E80085FF0DC040E050E063E08D +:1012C00070E0CE0101960E94A60B8091E8008E7717 +:1012D0008093E8000F900F900F90DF91CF910895C9 +:1012E000CF93DF9300D01F92CDB7DEB72091F101ED +:1012F000243021F522E029839B838A8383E0809335 +:10130000E9008FEF9091E800815095FD06C095EDC2 +:101310009A95F1F700008111F5CF8091E80085FFE3 +:101320000DC040E050E063E070E0CE0101960E9405 +:10133000A60B8091E8008E778093E8000F900F90C5 +:101340000F90DF91CF9108952091F1012430F1F4B5 +:1013500022E02093E9002FEF3091E800215035FD85 +:1013600006C035ED3A95F1F700002111F5CF209137 +:10137000E80025FF0BC040E050E065E070E00E940F +:10138000A60B8091E8008E778093E8000895CF93B4 +:10139000DF93EC019091F101943009F046C0809107 +:1013A0000C018823D9F080910D018823B9F0909326 +:1013B000E9008FEF9091E800815095FD06C095E11E +:1013C0009A95F1F700008111F5CF8091E80085FF33 +:1013D0002CC040E050E060E170E017C081E08093F5 +:1013E000E9008FEF9091E800815095FD06C095EDE2 +:1013F0009A95F1F700008111F5CF8091E80085FF03 +:1014000014C040E050E068E070E0CE010E94A60BFE +:101410008091E8008E778093E80080E1FE01AEE5E0 +:10142000B1E001900D928A95E1F7DF91CF91089597 +:101430008091F001811109C00E943B0D0E94980D1E +:101440008091E20084608093E20008951092F001A0 +:10145000089508950C947F220E94E01B0E9485222B +:101460000E943E100C94370942E061EC81E00E943A +:10147000B50C42E061EC82E00E94B50C42E061EC08 +:1014800083E00E94B50C42E161EC84E00C94B50C61 +:101490008091F301833009F455C030F4813071F04C +:1014A000823009F48EC008958A3009F47AC08B30F6 +:1014B00009F460C0893009F09CC020C08091F2011D +:1014C000813A09F096C08091E800877F8093E80018 +:1014D0008091F6019091F701892B21F460E18EE56E +:1014E00091E003C060E080E090E070E00E94F10BCA +:1014F0008091E8008B778093E80008958091F20155 +:10150000813209F076C08091F6019091F701009741 +:1015100019F0039709F06DC08091E800877F8093F0 +:10152000E8008091E80082FD05C08091F101811101 +:10153000F8CF5FC08091F10080936E018091E80048 +:101540008B7753C08091F201813A09F052C08091AB +:10155000F6019091F701892B09F04BC08091E800CA +:10156000877F8093E8008091E80080FFFCCF809126 +:101570000C0136C08091F2018132D9F58091F601DB +:101580009091F701892BA9F58091E800877F8093DE +:10159000E8000E94EA0C8091F40180930C010C9405 +:1015A000D7148091F201813221F58091E800877F84 +:1015B0008093E8000E94EA0C8091F50180936F010E +:1015C00008958091F201813AA1F48091E800877F2B +:1015D0008093E8008091E80080FFFCCF80916F014C +:1015E0008093F1008091E8008E778093E8000C945E +:1015F000EA0C089584B7877F84BF88E10FB6F8941A +:1016000080936000109260000FBE90E080E80FB6FB +:10161000F89480936100909361000FBE0E948D103A +:101620000E943B0D0E94980D8091E200846080939F +:10163000E20078940E941E100E948F1082E091E0D8 +:101640000E9439100E946D228091F101853069F469 +:101650000E94A71B8091EF018823B1F30E94D21B47 +:10166000882391F30E94900BEFCF0E949510ECCF4E +:10167000292F332723303105C9F064F42130310597 +:1016800081F02230310509F043C08DE690E022EE72 +:1016900033E042C021323105F1F02232310541F10F +:1016A00037C082E190E02FE434E036C099278130E2 +:1016B000910541F08230910541F0892B49F5EEED1D +:1016C000F3E005C0E6ECF3E002C0EEEAF3E084915B +:1016D00090E09F0121C06430D8F4E62FF0E0EE0FD7 +:1016E000FF1FEE5DFE4F2081318189E090E014C044 +:1016F000643070F470E0FB01EE0FFF1FE65EFE4FFA +:1017000020813181FB01EA5EFE4F808190E004C0C0 +:1017100080E090E020E030E0FA01318320830895FA +:1017200080E189BD82E189BD09B400FEFDCF8091D1 +:10173000D8008F7D8093D8008091E00082608093F4 +:10174000E0008091E00081FDFCCF0895CF92DF9210 +:10175000EF92FF920F931F93CF93DF93EC018B01D6 +:101760006A010E94090D811133C0C114D10439F0FE +:10177000F60180819181081B190BC80FD91FE12C3C +:10178000F12C0115110519F18091E80085FD16C0B5 +:101790008091E8008E778093E800C114D10449F06D +:1017A000F60180819181E80EF91EF182E08285E0E8 +:1017B0000FC00E94090D882321F30AC089918093EC +:1017C000F10001501109FFEFEF1AFF0ADACF80E0B4 +:1017D000DF91CF911F910F91FF90EF90DF90CF900D +:1017E00008952091F8013091F9012617370748F044 +:1017F0006115710539F42091E8002E772093E800F7 +:1018000001C0B90140E061157105A9F12091F10114 +:10181000222309F443C0253009F442C02091E80096 +:1018200023FD40C02091E80022FD32C02091E80055 +:1018300020FFE9CF4091F3002091F20030E0342BFB +:10184000FC01CF016115710559F02830310540F4D4 +:1018500081918093F100615071092F5F3F4FF1CF6B +:1018600041E02830310509F040E02091E8002E7772 +:101870002093E800C8CF4111C9CF0AC08091F1017F +:10188000882361F0853061F08091E80083FD0AC013 +:101890008091E80082FFF2CF80E0089582E0089511 +:1018A00083E0089581E008952091F8013091F901D5 +:1018B0002617370748F06115710539F42091E800C3 +:1018C0002E772093E80001C0B901FC0120E06115EA +:1018D000710591F18091F101882309F440C08530B0 +:1018E00009F43FC08091E80083FD3DC08091E8008D +:1018F00082FD2FC08091E80080FFE9CF2091F300A6 +:101900008091F20090E0922B6115710559F08830BA +:10191000910540F424912093F100319661507109B2 +:101920000196F2CF21E0089709F020E08091E800CD +:101930008E778093E800CBCF2111CCCF0AC0809165 +:10194000F101882361F0853061F08091E80083FD2A +:101950000AC08091E80082FFF2CF80E0089582E023 +:10196000089583E0089581E00895982F973058F501 +:101970009093E900981739F07091EC002091ED00F8 +:101980005091F00003C0242F762F50E021FF19C0A2 +:101990003091EB003E7F3093EB003091ED003D7FC6 +:1019A0003093ED003091EB0031603093EB00709399 +:1019B000EC002093ED005093F0002091EE0027FF03 +:1019C00007C09F5FD3CF8F708093E90081E00895B7 +:1019D00080E008958091F20187FF11C08091E800B6 +:1019E00082FD05C08091F1018111F8CF11C0809175 +:1019F000E8008B770BC08091F101882349F080913A +:101A0000E80080FFF8CF8091E8008E778093E800AF +:101A100008952091E4003091E50095E64091EC00B6 +:101A2000842F817040FF22C08091E80080FD1CC09F +:101A30008091F101882391F0853091F08091EB0045 +:101A400085FD10C04091E4005091E5004217530716 +:101A500029F39A01915011F784E0089582E00895E6 +:101A600083E0089581E0089580E008954091E800C2 +:101A700042FFDECF08950E94A90D0E94B10DE0EE55 +:101A8000F0E0808181608083E8EDF0E080818F77F5 +:101A9000808319BCA7EDB0E08C918E7F8C93808100 +:101AA0008F7E80831092F00108950F931F93CF9340 +:101AB000DF930E94A90D0E94B10DC8EDD0E088818E +:101AC0008F77888388818068888388818F7D8883E9 +:101AD00019BC1092F1011092ED011092EF011092D9 +:101AE000EE0100EE10E0F80180818B7F8083888119 +:101AF0008160888342E060E080E00E94B50CE1EE06 +:101B0000F0E080818E7F8083E2EEF0E08081816072 +:101B10008083808188608083F80180818E7F8083CC +:101B2000888180618883DF91CF911F910F91089503 +:101B3000E8EDF0E080818F7E8083E7EDF0E080814A +:101B40008160808384E082BF81E08093F0010C9407 +:101B5000550DE8EDF0E080818E7F80831092E200E9 +:101B600008951092DA001092E10008951F920F92EA +:101B70000FB60F9211242F933F934F935F936F9360 +:101B80007F938F939F93AF93BF93EF93FF93809136 +:101B9000E10082FF0BC08091E20082FF07C08091CC +:101BA000E1008B7F8093E1000E941D108091DA009C +:101BB00080FF1FC08091D80080FF1BC08091DA0099 +:101BC0008E7F8093DA008091D90080FF0DC080E184 +:101BD00089BD82E189BD09B400FEFDCF81E080931B +:101BE000F1010E94180A05C019BC1092F1010E946F +:101BF000260A8091E10080FF19C08091E20080FFF9 +:101C000015C08091E2008E7F8093E2008091E20017 +:101C100080618093E2008091D80080628093D80038 +:101C200019BC85E08093F1010E942A0A8091E100AD +:101C300084FF30C08091E20084FF2CC080E189BD28 +:101C400082E189BD09B400FEFDCF8091D8008F7D6F +:101C50008093D8008091E1008F7E8093E100809195 +:101C6000E2008F7E8093E2008091E20081608093A9 +:101C7000E2008091ED01882311F084E007C080919B +:101C8000E30087FD02C081E001C083E08093F101A1 +:101C90000E942C0A8091E10083FF29C08091E2001C +:101CA00083FF25C08091E100877F8093E10082E07F +:101CB0008093F1011092ED018091E1008E7F80937D +:101CC000E1008091E2008E7F8093E2008091E2004B +:101CD00080618093E20042E060E080E00E94B50C09 +:101CE0008091F00088608093F0000E94290AFF91A3 +:101CF000EF91BF91AF919F918F917F916F915F9184 +:101D00004F913F912F910F900FBE0F901F901895FC +:101D10001F920F920FB60F9211242F933F934F9360 +:101D20005F936F937F938F939F93AF93BF93CF9363 +:101D3000DF93EF93FF93C091E900CF708091EC00A7 +:101D4000D82FD17080FDD0E81092E9008091F0008A +:101D5000877F8093F00078940E94CC0E1092E90067 +:101D60008091F00088608093F000CD2BCF70C093FD +:101D7000E900FF91EF91DF91CF91BF91AF919F91DA +:101D80008F917F916F915F914F913F912F910F9024 +:101D90000FBE0F901F9018951F93CF93DF93CDB771 +:101DA000DEB7AA970FB6F894DEBF0FBECDBFE2EF45 +:101DB000F1E088E08E0F9091F10091938E13FBCFAC +:101DC0000E94480A8091E80083FF1FC18091F201C0 +:101DD0009091F301492F50E04A30510508F015C1A8 +:101DE000FA01EA5AFF4F0C940724803881F08238B8 +:101DF00009F00BC18091F6018F708093E90080910A +:101E0000EB0085FB882780F91092E90006C08091DD +:101E1000EE019091EF01911182609091E800977F1F +:101E20009093E8008093F1001092F100C8C0282F31 +:101E30002D7F09F0EAC0882319F0823061F0E5C0F7 +:101E40008091F401813009F0E0C0933009F080E026 +:101E50008093EF012BC08091F401811127C0809104 +:101E6000F6018F7009F4D1C08093E9002091EB0056 +:101E700020FF1CC0933021F48091EB00806214C0DD +:101E80009091EB0090619093EB0021E030E0A9018C +:101E900002C0440F551F8A95E2F74093EA00109262 +:101EA000EA008091EB0088608093EB001092E900DB +:101EB0008091E800877F86C08111A7C01091F4014E +:101EC0001F778091E3008078812B8093E3008091DD +:101ED000E800877F8093E8000E94EA0C8091E80088 +:101EE00080FFFCCF8091E30080688093E3001111B4 +:101EF00002C082E001C083E08093F10186C0805877 +:101F0000823008F082C08091F4019091F5018C3DFF +:101F100053E0950779F583E08A838AE289834FB796 +:101F2000F894DE01139620E03EE051E2E32FF0E06A +:101F300050935700E49120FF03C0E295EF703F5F9C +:101F4000EF708E2F90E0EA3010F0C79601C0C09677 +:101F50008D939D932F5F243149F74FBF8091E80007 +:101F6000877F8093E8006AE270E0CE0101960E94CC +:101F7000F10B14C0AE014F5F5F4F6091F6010E94FC +:101F8000380BBC01009709F440C09091E800977F9E +:101F90009093E80089819A810E94540C8091E80016 +:101FA0008B778093E80031C0803879F58091E80024 +:101FB000877F8093E8008091ED018093F10080910C +:101FC000E8008E778093E8000E94EA0C1EC0811121 +:101FD0001CC09091F4019230C0F48091E800877F9A +:101FE0008093E8009093ED010E94EA0C8091ED014E +:101FF000811106C08091E30087FD02C081E001C02D +:1020000084E08093F1010E94340A8091E80083FF0C +:102010000AC08091E800877F8093E8008091EB0000 +:1020200080628093EB00AA960FB6F894DEBF0FBED5 +:10203000CDBFDF91CF911F9108950895CF938091E7 +:10204000F1018823A1F0C091E900CF709091EC00DC +:10205000892F817090FD80E8C82B1092E900809153 +:10206000E80083FD0E94CC0ECF70C093E900CF91B1 +:10207000089590937501809374010895E09174011F +:10208000F0917501309721F00190F081E02D0994D5 +:1020900080E00895E0917401F0917501309721F08E +:1020A0000280F381E02D09940895E0917401F0918C +:1020B0007501309721F00480F581E02D0994089591 +:1020C00020917201309173018217930771F0909300 +:1020D000730180937201E0917401F0917501309762 +:1020E00021F00680F781E02D099408952091700178 +:1020F000309171018217930771F090937101809371 +:102100007001E0917401F0917501309721F0008425 +:10211000F185E02D0994089508950C948C100E9487 +:10212000E61B0E9487030C94A81C9F92AF92BF925B +:10213000CF92DF92EF92FF920F931F93CF93DF9393 +:1021400000D000D000D0CDB7DEB70E949F030DE0D5 +:1021500010E0AA24A394B12C902E802F0E948D040D +:10216000980129583E4F6901F901F080F826A1F441 +:102170000150110988F78FEF89838A831B820E949F +:10218000EF1B8160782F9D838C8349815A816B81FD +:102190008D810E942C112FC09091DA0191FF04C013 +:1021A0008E830E9493048E8125E030E0A501022EEB +:1021B00001C0440F0A94EAF7E42E4F21C1F02983AD +:1021C0009A828E2191E009F490E09B830E94EF1B9C +:1021D0008160782F9D838C8349815A816B818D81A9 +:1021E0000E942C11F6018081E826E08204C0215073 +:1021F0003109E0F6BDCF0E948F1F109176010E9439 +:102200003E101817B9F00E943E1080937601269672 +:102210000FB6F894DEBF0FBECDBFDF91CF911F91F7 +:102220000F91FF90EF90DF90CF90BF90AF909F9075 +:102230000C94370926960FB6F894DEBF0FBECDBFBB +:10224000DF91CF911F910F91FF90EF90DF90CF9092 +:10225000BF90AF909F900895CF93DF93CDB7DEB737 +:102260002B970FB6F894DEBF0FBECDBF4F835887B4 +:1022700069877A878B87DE01119686E0FD011192CE +:102280008A95E9F785E0FE01379601900D928A95CF +:10229000E1F749815A816B817C818D819E810E9409 +:1022A00075172B960FB6F894DEBF0FBECDBFDF912A +:1022B000CF910895CF93882309F4C2C0C82F8238E4 +:1022C00059F40E943E1081FDBBC089E30E944F1A61 +:1022D0000E941C1B89E30CC0833879F40E943E10D5 +:1022E00080FDAEC083E50E944F1A0E941C1B83E54F +:1022F0000E94911ACF910C941C1B843859F40E94AF +:102300003E1082FD9DC087E40E944F1A0E941C1B54 +:1023100087E4EECF8CEF8C0F813A48F48C2F0E942B +:10232000D22181118DC08C2F0E944F1AE3CF80E201 +:102330008C0F883048F4C77081E001C0880FCA95BF +:10234000EAF70E94D51AD6CF8BE58C0F833078F44C +:10235000C53A29F0C63A31F083E890E005C081E83B +:1023600090E002C082E890E0CF910C94601088E584 +:102370008C0F833108F064C0C83A39F1C93A41F191 +:10238000CA3A49F1CB3A51F1CC3A59F1CD3A61F11F +:10239000C03B69F1CE3A71F1CF3A79F1C13B81F19D +:1023A000C23B89F1C33B91F1C43B99F1C53BA1F11B +:1023B000C63BA9F1C73BB1F1C83BB9F1C93BC1F17B +:1023C000CA3BC9F180E090E038C082EE90E035C0B1 +:1023D00089EE90E032C08AEE90E02FC085EB90E06D +:1023E0002CC086EB90E029C087EB90E026C08CECF7 +:1023F00090E023C08DEC90E020C083E891E01DC008 +:102400008AE891E01AC082E991E017C084E991E07E +:1024100014C081E292E011C083E292E00EC084E237 +:1024200092E00BC085E292E008C086E292E005C02F +:1024300087E292E002C08AE292E0CF910C9476109B +:10244000CF910895882309F44BC0823859F40E9433 +:102450003E1081FF45C089E30E944F1A0E941C1B59 +:1024600089E30CC0833871F40E943E1080FF38C0AD +:1024700083E50E944F1A0E941C1B83E50E94911A5B +:102480000C941C1B843859F40E943E1082FF28C013 +:1024900087E40E944F1A0E941C1B87E4EFCF9CEF39 +:1024A000980F913A58F390E2980F983050F4877053 +:1024B00091E001C0990F8A95EAF7892F0E94DB1AF3 +:1024C000DFCF9BE5980F933020F480E090E00C94F0 +:1024D0006010885A833120F480E090E00C947610EC +:1024E0000895882321F00E94D51A0C941C1B08958E +:1024F000882321F00E94DB1A0C941C1B08957F9204 +:102500008F929F92AF92BF92CF92DF92EF92FF9203 +:102510000F931F93CF93DF931F92CDB7DEB77C014C +:10252000C62E772EFC01058102950F7012811111C4 +:102530000E94F21A0E94481A882379F0112369F048 +:1025400080E28C0D883048F082E00E94311A0E94AF +:10255000481A91E0D82ED92601C0D12CE72DE2955A +:10256000EF70F0E0E05AFF4F0C940724872D807F36 +:10257000072D0F70882311F00295007F112389F039 +:10258000002309F490C180E28C0D883020F4802F64 +:102590000E94D51A03C0802F0E94E51A0E941C1BBE +:1025A00082C18C2D0E942212002309F495C180E281 +:1025B0008C0D883020F4802F0E94DB1A03C0802FFE +:1025C0000E94EB1A0E941C1B87C1972D907F872DBC +:1025D0008F70903211F08295807FCC2021F0F1E055 +:1025E000CF16B1F01EC0112349F0002309F414C125 +:1025F000013009F011C10E94051B6EC1002319F0C2 +:10260000013009F469C189830E94081B89810AC1CC +:10261000112321F0023008F05FC1FEC001115CC13E +:1026200001C1112321F0002309F4F6C03CC10023AD +:1026300009F4F8C03EC1872D86958695837090E099 +:10264000009719F0019761F047C1112321F08C2DFB +:10265000972D937002C080E090E00E9460103CC112 +:10266000112321F08C2D972D937002C080E090E013 +:102670000E94761031C18C2D112319F00E94971EF3 +:1026800002C00E94FF1E0E94841F26C1872D8370F6 +:1026900009F052C0111120C18C2D8295869587704A +:1026A000880F880F9C2D9F70892E912CA12CB12C06 +:1026B000082E04C0880C991CAA1CBB1C0A94D2F7D3 +:1026C000C4FE14C00FE010E020E030E0B901A80122 +:1026D00004C0440F551F661F771F8A95D2F7CB01A0 +:1026E000BA01609570958095909503C060E070E0A8 +:1026F000CB01272D26952695237030E02230310519 +:1027000069F02330310589F0682979298A299B29C4 +:102710002130310571F00E94BD18DEC06829792989 +:102720008A299B290E94D918D7C00E94BD18C501CB +:10273000B4010E94A118D0C0112319F0872D817017 +:1027400001C08695882309F4C7C08C2D8295869593 +:102750008770880F880F9C2D9F70892E912CA12C3B +:10276000B12C082E04C0880C991CAA1CBB1C0A940E +:10277000D2F7C4FE14C00FE010E020E030E0B90151 +:10278000A80104C0440F551F661F771F8A95D2F712 +:10279000CB01BA01609570958095909503C060E07B +:1027A00070E0CB01272D269526952370422F50E00F +:1027B0004230510569F04330510589F06829792983 +:1027C0008A299B294130510571F00E94971984C0D4 +:1027D000682979298A299B290E94B3197DC00E9402 +:1027E0009719C501B4010E947B1976C08C2D90E029 +:1027F000FC01E05EF109E531F10508F050C0E05957 +:10280000FF4F0C9407240C2D0F70872D8F7111230F +:1028100031F00E941419802F0E9471125DC00E9435 +:102820003519802F0E94781257C0112339F00111F9 +:1028300053C0872D8F710E945A194EC0023008F084 +:102840004BC0F7CF112339F0872D8F710E941419D7 +:1028500043C01123C9F3872D8F710E9435193CC0E5 +:10286000112329F0872D8F710E94FF1835C00E9417 +:10287000F51832C0112351F0172D1F71812F0E94BE +:10288000141963E0812F0E94281A26C081E00E945B +:10289000311A023008F182E00E94311A1DC0112362 +:1028A00031F0002389F28C2D0E945A1115C00023AB +:1028B00091F28C2D0E9422120FC0472D4F706C2D6B +:1028C000C7010E9469050E94191806C0472D4F7064 +:1028D0006C2DC7010E944606DD20F9F00E94241AE3 +:1028E00080FD1BC0F70112820E941E1A0E9414195B +:1028F000C7010E949C140E941E1A0F90DF91CF9175 +:102900001F910F91FF90EF90DF90CF90BF90AF900D +:102910009F908F907F900C9435190F90DF91CF91FD +:102920001F910F91FF90EF90DF90CF90BF90AF90ED +:102930009F908F907F9008950F931F93CF93DF9375 +:10294000EC01888199812B813C81232BB9F09F3F39 +:1029500011F48F3F99F0CE010E949E05882371F0FB +:10296000688179818A810E941A1A8C010E94CF198C +:102970000E949618B801CE010E947F12DF91CF917C +:102980001F910F9108950E94F21A0E94021B0E944B +:10299000C71A0E941C1B0E9435200E94841F80E0E1 +:1029A00090E00E94601080E090E00C9476100E940D +:1029B000E21A0C94C3140E940F1A292F22952F702B +:1029C00030E02C3031054CF42A3031056CF42250C3 +:1029D000310922303105A8F407C02C30310569F0E7 +:1029E0002F30310551F00DC0803F69F018F4803E62 +:1029F00040F409C0843F29F406C093FB882780F97E +:102A0000089580E0089581E00895CF93DF9300D08A +:102A100000D01F92CDB7DEB70F900F900F900F90A0 +:102A20000F90DF91CF910895CF93DF9300D000D026 +:102A300000D0CDB7DEB726960FB6F894DEBF0FBE36 +:102A4000CDBFDF91CF9108951F93CF93DF93C091B6 +:102A5000850116E080918601C81799F0D0E01C9F8F +:102A6000F0011D9FF00D1124E957FE4F4081518167 +:102A700062817381848195810E9414152196C770AB +:102A8000E9CFDF91CF911F9108954091B701509107 +:102A9000B8016091B9017091BA018091BB01909128 +:102AA000BC010C9414158091BC0182958F7009F0C3 +:102AB00054C08091B901882309F44FC080918501E9 +:102AC000A09186016091B7017091B8014091BA015F +:102AD0005091BB01B6E08A1709F43FC090E0411560 +:102AE0005105C1F17F3F11F46F3FA1F1B89FF00193 +:102AF000B99FF00D1124E957FE4F218172132AC0AE +:102B00002081621327C02281211124C023813481B6 +:102B10002417350710F421503109241B350B283CAC +:102B20003105C0F42091BC012F7020612093BC01BD +:102B300026E0289FF001299FF00D1124E457FE4F55 +:102B400080818F708061808387EB91E00E949C146C +:102B50000C94241501968770BECF0895CF92DF9212 +:102B6000EF92FF920F931F93CF93DF93CDB7DEB712 +:102B700062970FB6F894DEBF0FBECDBF8C0185E023 +:102B8000F801DE011D9601900D928A95E1F7D801BA +:102B90004C9111965C91119712966C911297139625 +:102BA000CD90DC9014973091B7017091B80180916D +:102BB000BA019091BB01009709F46BC17F3F19F4F2 +:102BC0003F3F09F466C1E090B901EE2009F4C0C0AE +:102BD0002091BC01C816D90628F0F601E81BF90BB4 +:102BE000CF0104C0809590958C0D9D1DFF24F3941A +:102BF000883C910578F0F12C207F09F0C6C07C2D2F +:102C0000D98AC88A89890E94051587EB91E00E94BC +:102C10009C14B1C0822F807F09F046C0751314C088 +:102C2000341312C0611110C02F7020612093BC01B9 +:102C30000E94451587EB91E00E949C148091BC0195 +:102C4000D80115968C932EC0CD2819F15F3F11F451 +:102C50004F3FF9F0F62E61111CC080918501209143 +:102C6000860136E0821709F45AC090E0389FF001DF +:102C7000399FF00D1124E957FE4F7181571306C09B +:102C80007081471303C07281711103C00196877070 +:102C9000E9CFF62E662309F418C18091BC0181604A +:102CA0008093BC01F12C11C1751308C0341306C008 +:102CB000611104C08091BC01D801C3C04D875E87FB +:102CC0008D859E856A8B0E94DB146A898823E1F1D9 +:102CD0006623D1F12091BC01822F82958F7090E004 +:102CE000029774F08091B7019091B80198878F8313 +:102CF0001986DB86CA862C87CE0107960E949C1413 +:102D000086E0F801A7EBB1E001900D928A95E1F71A +:102D10000E9453150E944515FF24F394D6C04D8799 +:102D20005E878D859E850E940F1A292F22952F7010 +:102D300030E0223031050CF0BCC09F7009F0B6C005 +:102D4000805E883008F4C1C0C8010E949C14E4CFA2 +:102D5000C816D90608F453C0F601E81BF90BCF01D9 +:102D6000883C910508F450C0F12C7C2DD98AC88A82 +:102D700089890E940515E7EBF1E086E0DF011D92ED +:102D80008A95E9F70E944515A0C0751314C0341345 +:102D900012C0611110C08091BC01F8018583C80187 +:102DA0000E949C1486E0E7EBF1E0DF011D928A951A +:102DB000E9F7FE2C8AC04D875E878D859E856A8BDC +:102DC0000E94DB146A89882309F4BECF662309F4C4 +:102DD000BBCF2091BC01822F82958F7090E002972B +:102DE0000CF48ECF8091B7019091B8019A838983BA +:102DF0001B82DD82CC822E83CE0101967FCF80950F +:102E000090958C0D9D1DACCFF62E662309F49CCFBA +:102E100075132EC034132CC02091BC0120FD1FC09F +:102E2000822F82958F70D9F0D80115962C93159723 +:102E30008F3049F08F5F982F9295907F822F8F70FF +:102E4000892B15968C93C8010E949C1486E0F8018A +:102E5000A7EBB1E001900D928A95E1F793CF86E060 +:102E6000F801A7EBB1E001900D928A95E1F72DC032 +:102E70004D875E878D859E850E94DB14811140CF32 +:102E80008091BC0181608093BC01C8010E949C14A8 +:102E90001CC0662309F458CF4D875E878D859E85BB +:102EA0000E94DB14882309F44FCF2ACF811148CF29 +:102EB0000CC0243031050CF047CF9F7009F440CF8F +:102EC000F8019581907F09F03BCF8F2D62960FB668 +:102ED000F894DEBF0FBECDBFDF91CF911F910F9150 +:102EE000FF90EF90DF90CF9008951F93CF93DF93E3 +:102EF000CDB7DEB72C970FB6F894DEBF0FBECDBFAF +:102F00004F83588769877A878B879C87CE0107967E +:102F10000E94AE15882369F08F8198852A853B85AC +:102F2000232BF1F19F3F09F063C08F3F09F060C090 +:102F300037C086E0FE013796DE01119601900D92B2 +:102F40008A95E1F76F817885EA85FB85309741F1B5 +:102F50007F3F11F46F3F21F12091860130E0C901DC +:102F60000196877099274091850150E08417950755 +:102F700009F447C069837A83FD83EC8396E0929FCE +:102F8000D001939FB00D1124A957BE4FFE01319679 +:102F900001900D929A95E1F7809386010E94241585 +:102FA00016E080918501909186018917C1F1189FE3 +:102FB000C001112489579E4F0E94AE15882379F1D4 +:102FC000E09185011E9FF0011124E957FE4F4081D9 +:102FD000518162817381848195810E941415809151 +:102FE000850190E001968770992780938501D9CF5C +:102FF0004F81588569857A858B859C850E9414153B +:10300000CFCF0E94D7141092860110928501E7EB72 +:10301000F1E086E0DF011D928A95E9F7C1CF2C9699 +:103020000FB6F894DEBF0FBECDBFDF91CF911F91D9 +:103030000895EF92FF920F931F93CF93DF938C012C +:10304000009709F46CC0F12CEE24E394E80121967A +:10305000F8018491843740F4843008F051C0813005 +:1030600081F0823019F15BC0853709F444C0A8F1C2 +:103070009CE7980F903708F052C08F770E94221279 +:1030800041C00E5F1F4FFE01C49180E28C0F88305B +:1030900048F4C7708E2D01C0880FCA95EAF70E94C8 +:1030A000F51A14C08C2F0E945A112DC00E5F1F4FAD +:1030B000FE01C49180E28C0F883058F4C7708E2DC9 +:1030C00001C0880FCA95EAF70E94FB1A0E941C1BD8 +:1030D0001AC08C2F0E94221216C00E5F1F4FFE01D5 +:1030E000C491CC2381F08FE99FE00197F1F700C0F4 +:1030F0000000C150F6CF0E5F1F4FFE01F49003C0D9 +:103100000E945A118E018F2D882309F49FCFEFE979 +:10311000FFE03197F1F700C000008150F5CFDF915B +:10312000CF911F910F91FF90EF90089508956093B4 +:10313000C1017093C2018093C3019093C4010C94A8 +:10314000C3140F931F930091C1011091C2012091EC +:10315000C3013091C401DC01CB01802B912BA22B48 +:10316000B32B8093C1019093C201A093C301B0938C +:10317000C4011F910F910C94C3140F931F930091DE +:10318000C1011091C2012091C3013091C401DC0141 +:10319000CB0180239123A223B3238093C101909379 +:1031A000C201A093C301B093C4011F910F910C946D +:1031B000C3140F931F930091C1011091C20120917C +:1031C000C3013091C401DC01CB0180279127A227E4 +:1031D000B3278093C1019093C201A093C301B09320 +:1031E000C4011F910F910C94C3141092BD01109251 +:1031F000BE011092BF011092C0010C94C31441E0B3 +:1032000050E060E070E004C0440F551F661F771F58 +:103210008A95D2F74093BD015093BE016093BF01E0 +:103220007093C0010C94C31441E050E060E070E082 +:1032300004C0440F551F661F771F8A95D2F78091EF +:10324000BD019091BE01A091BF01B091C001482B7A +:10325000592B6A2B7B2B4093BD015093BE01609389 +:10326000BF017093C0010C94C31441E050E060E0D2 +:1032700070E004C0440F551F661F771F8A95D2F770 +:1032800040955095609570958091BD019091BE01DB +:10329000A091BF01B091C001482359236A237B2329 +:1032A0004093BD015093BE016093BF017093C00174 +:1032B0000C94C31441E050E060E070E004C0440F9F +:1032C000551F661F771F8A95D2F78091BD01909197 +:1032D000BE01A091BF01B091C001482759276A27BC +:1032E0007B274093BD015093BE016093BF01709353 +:1032F000C0010C94C3140F931F930091BD01109152 +:10330000BE012091BF013091C001DC01CB01802BB7 +:10331000912BA22BB32B8093BD019093BE01A09360 +:10332000BF01B093C0011F910F910C94C3140F9370 +:103330001F930091BD011091BE012091BF013091FA +:10334000C001DC01CB0180239123A223B32380930E +:10335000BD019093BE01A093BF01B093C0011F9126 +:103360000F910C94C3140F931F930091BD01109102 +:10337000BE012091BF013091C001DC01CB0180274B +:103380009127A227B3278093BD019093BE01A093FC +:10339000BF01B093C0011F910F910C94C314089505 +:1033A000CF92DF92EF92FF920F931F93CF93DF9311 +:1033B0008C01C090C101D090C201E090C301F09097 +:1033C000C4018091BD019091BE01A091BF01B09157 +:1033D000C001C82AD92AEA2AFB2ACFE1D0E0D701C6 +:1033E000C6010C2E04C0B695A795979587950A94AB +:1033F000D2F780FF06C0B8018C2F0E949C0801976D +:1034000021F4219760F780E001C08C2FDF91CF91EC +:103410001F910F91FF90EF90DF90CF900895CF9381 +:10342000DF93EC010E94D019BE010E949C08DF913D +:10343000CF910895CB010E940F1A08958091C50184 +:1034400085958595859508958091C5018770089526 +:1034500098E0899F90011124262B2093C5010C949C +:1034600014192091C501809582238093C501982F5E +:10347000977069F430E0482F552747FD5095241781 +:10348000350729F08595859585950C94351908950E +:103490009091C501977081E009F480E008959091C2 +:1034A0000C01992321F090910D01911109C02091F7 +:1034B0000E0130910F01F90132969FEF40E01FC0DD +:1034C000982F9695969596959F3050F5E0910E0120 +:1034D000F0910F01E90FF11D877021E030E0A901A3 +:1034E00002C0440F551F8A95E2F7CA019181892BCA +:1034F000818308959F3F39F04F5F4E3041F05191E5 +:103500005813F8CF0DC05111F7CF942FF5CF9F3F2F +:1035100039F0F901E90FF11D97FDFA9582830895BD +:10352000089590910C01992321F090910D01911132 +:1035300009C020910E0130910F01F9013296205FF0 +:103540003F4F1FC0982F9695969596959F30F0F413 +:10355000E0910E01F0910F01E90FF11D877021E05C +:1035600030E0A90102C0440F551F8A95E2F7CA0155 +:10357000809591818923818308953196E217F3071D +:1035800029F090819813F9CF1082F7CF089581E048 +:1035900090E0E0910E01F0910F01E80FF91F108209 +:1035A000019680319105A9F708959091D901892B51 +:1035B0008093D901089580959091D90189238093B2 +:1035C000D90108951092D90108959091D801892BBD +:1035D0008093D801089580959091D8018923809394 +:1035E000D80108951092D80108959091D701892BA0 +:1035F0008093D701089580959091D7018923809376 +:10360000D70108951092D70108958093C6010895B7 +:103610001092C601089580910E0190910F01FC0156 +:1036200031969C01205F3F4F80E0919191118F5F17 +:10363000E217F307D1F70895E0910E01F0910F0121 +:103640008091D9018083E0910E01F0910F0190816A +:103650008091D801892B8083E0910E01F0910F01B8 +:1036600090818091D701892B80838091C601882326 +:1036700061F0E0910E01F0910F019081892B808320 +:103680000E940B1B81111092C60180910E01909136 +:103690000F010C944A1020E0009739F0AC01415022 +:1036A0005109842395232F5FF7CF822F0895CF925E +:1036B000DF92EF92FF926C01EE24FF24C114D1043B +:1036C000E104F10421F0C701B60120E101C020E0CE +:1036D000C72ED82EE92EFF24C114D104E104F10431 +:1036E00019F0285FC701B6016B017C0154E0F69424 +:1036F000E794D794C7945A95D1F7C114D104E10443 +:10370000F10419F02C5FC701B6016B017C0142E0A6 +:10371000F694E794D794C7944A95D1F7C114D1048D +:10372000E104F10419F02E5FC701B601DC01CB0101 +:10373000B695A79597958795892B8A2B8B2B09F0A2 +:103740002F5F822FFF90EF90DF90CF9008958091B0 +:10375000F101843021F11092DB0120E488E190E056 +:103760000FB6F894A895809360000FBE2093600078 +:1037700080E00E94370983B7817F846083BF83B76D +:10378000816083BF7894889583B78E7F83BF88E1FB +:103790000FB6F89480936000109260000FBE0895F9 +:1037A000089508950E94D01B0E949F030E94D11B80 +:1037B0000E94940491E0811101C090E0892F089546 +:1037C0000E94D7140E943E100C94370982E084BDF9 +:1037D00093E095BD9AEF97BD80936E0008952FB743 +:1037E000F8948091DC019091DD01A091DE01B0910F +:1037F000DF012FBF0895CF92DF92EF92FF920F93D8 +:103800001F932FB7F8944091DC015091DD01609136 +:10381000DE017091DF012FBF6A017B01EE24FF24DE +:103820008C0120E030E0C016D106E206F30610F469 +:10383000415051099A01281B390BC9011F910F9161 +:10384000FF90EF90DF90CF9008951F920F920FB6E8 +:103850000F9211248F939F93AF93BF938091DC01BC +:103860009091DD01A091DE01B091DF010196A11DD3 +:10387000B11D8093DC019093DD01A093DE01B09334 +:10388000DF01BF91AF919F918F910F900FBE0F906D +:103890001F9018950E943B0DF8942FEF87EA91E650 +:1038A000215080409040E1F700C0000087E090EB9D +:1038B000DC018093FB019093FC01A093FD01B09388 +:1038C000FE019CE088E10FB6F894A8958093600013 +:1038D0000FBE90936000FFCFEF92FF920F931F9364 +:1038E000CF93DF93D82FCDE08C2F0E948D0405E07D +:1038F00010E0E82EF12CC701002E02C095958795A7 +:103900000A94E2F780FF09C0602F7C2F80E00E94BC +:103910004706D81302C081E006C00150110958F7CC +:10392000C15010F780E0DF91CF911F910F91FF9070 +:10393000EF900895CF93C82F8CE20E946C1C8823CF +:1039400021F08C2FCF910C946C1C80E0CF910895C6 +:10395000CF930E94EF1D811102C00E94D51DC5E6C4 +:10396000C15049F00E949F038FE39CE90197F1F752 +:1039700000C00000F5CF89E20E949A1C811113C19A +:103980008AE20E949A1C81110E94D51D85E00E9446 +:103990009A1C81110E944A1C0E94FA1D8093DA0130 +:1039A00087E00E949A1C8823A9F18BE10E949A1C4F +:1039B000882351F08091DA0181FB222720F991E0E0 +:1039C000922790FB81F90EC08EE00E949A1C8823FA +:1039D00061F08091DA0182FB222720F991E09227A1 +:1039E00090FB82F98093DA0115C080E10E949A1C55 +:1039F0009091DA01882341F093FB222720F981E09E +:103A0000822780FB93F904C0892F809580FB90F971 +:103A10009093DA018091DA010E94FE1D0E940C1E33 +:103A20008093FA0180EE0E949A1C882341F08091D5 +:103A3000FA01982F909590FB80F98093FA0189E321 +:103A40000E949A1C882359F08091FA0181FB222759 +:103A500020F991E0922790FB81F98093FA0182EEA0 +:103A60000E949A1C882359F08091FA0182FB222738 +:103A700020F991E0922790FB82F98093FA0186EE7B +:103A80000E949A1C882359F08091FA0183FB222717 +:103A900020F991E0922790FB83F98093FA0183EE5D +:103AA0000E949A1C882359F08091FA0184FB2227F6 +:103AB00020F991E0922790FB84F98093FA0185E345 +:103AC0000E949A1C882359F08091FA0185FB2227D5 +:103AD00020F991E0922790FB85F98093FA0181E328 +:103AE0000E949A1C882359F08091FA0186FB2227B4 +:103AF00020F991E0922790FB86F98093FA0181E109 +:103B00000E949A1C882359F08091FA0187FB222792 +:103B100020F991E0922790FB87F98093FA01809138 +:103B2000FA010E94101E8091FA0187FB882780F914 +:103B300080930D0187E20E949A1CC82F8EE10E949B +:103B40009A1C8111C2608FE10E949A1C8111C4608D +:103B500080E20E949A1C8111C86081E20E949A1C36 +:103B60008111C06182E20E949A1C8111C06283E2CD +:103B70000E949A1C8111C06484E20E949A1C8823CE +:103B800011F0C06802C0CC2329F08C2F0E94071EC0 +:103B90006C2F03C00E94031E682F70E080E090E04D +:103BA000CF910C949718CF9108956DEE7EEF80E041 +:103BB00090E00E94412460E082E090E00E942F2487 +:103BC00060E083E090E00E942F2460E084E090E0D9 +:103BD0000E942F2460E085E090E00C942F2480E088 +:103BE00090E00E94292421E08D3E9E4F09F020E0C4 +:103BF000822F089582E090E00C942124682F82E0C7 +:103C000090E00C942F2483E090E00C942124682F02 +:103C100083E090E00C942F2484E090E00C94212425 +:103C2000682F84E090E00C942F248091E20180FFC3 +:103C30000BC06091130185E0689FB0011124759558 +:103C40006795759567952BC081FF09C06091130139 +:103C500085E0689FB00111247595679520C082FFAB +:103C600007C06091130185E0689FB001112417C05F +:103C70009091E3019923D1F060911201961788F792 +:103C80002091130185E0289F90011124929FA001AB +:103C9000939F500D112470E0CA010E94F3236038F5 +:103CA000710540F46115710539F002C065E070E0FE +:103CB000862F08958FE7089581E008958091E201AD +:103CC00080FF08C06091110170E07595679575954A +:103CD000679521C081FF06C06091110170E0759564 +:103CE000679519C082FF04C06091110170E010C097 +:103CF0009091E3019923C1F0609110019617A0F70C +:103D000080911101899FC001112470E00E94F3236A +:103D10006038710528F46115710521F0862F08952A +:103D20008FE7089581E0089561E070E0F4CF803F6F +:103D300021F40E94151E819504C0813F29F40E9440 +:103D4000151E8093E6010895823F21F40E94151EFE +:103D5000819504C0833F29F40E94151E8093E501DC +:103D60000895893F19F40E945E1E05C08A3F31F410 +:103D70000E945E1E81958093E70108958B3F21F498 +:103D80000E945E1E819504C08C3F29F40E945E1E35 +:103D90008093E8010895843F21F48091E4018160DB +:103DA00017C0853F21F48091E401826011C0863FF5 +:103DB00021F48091E40184600BC0873F21F480915D +:103DC000E401886005C0883F31F48091E40180619E +:103DD0008093E40108958D3F21F48091E201816098 +:103DE0000BC08E3F21F48091E201826005C08F3FBD +:103DF00029F48091E20184608093E2010895803F7C +:103E000039F48091E60187FF6CC01092E60169C029 +:103E1000813F29F48091E6011816BCF362C09091AD +:103E2000E501823F29F497FF5CC01092E50159C07B +:103E3000833F19F41916CCF354C0893F41F48091A3 +:103E4000E70118160CF04DC01092E7014AC08A3FF6 +:103E500029F48091E70187FF44C0F6CF8B3F39F406 +:103E60008091E80187FF3DC01092E8013AC08C3F85 +:103E700029F48091E8011816BCF333C0843F21F483 +:103E80008091E4018E7F17C0853F21F48091E40189 +:103E90008D7F11C0863F21F48091E4018B7F0BC0A0 +:103EA000873F21F48091E401877F05C0883F31F48A +:103EB0008091E4018F7E8093E40113C08D3F21F453 +:103EC0008091E2018E7F0BC08E3F21F48091E20150 +:103ED0008D7F05C08F3F29F48091E2018B7F809315 +:103EE000E2018091E50181110EC08091E60181110E +:103EF0000AC08091E701811106C08091E80181111B +:103F000002C01092E301089584EE91E00E945510E2 +:103F10000E94EF1B9093E1018093E00108951F93AD +:103F2000CF93DF938091E0019091E1010E94FB1B10 +:103F3000AC019091E301992321F02091140130E02C +:103F400006C0209115018AE0289F90011124421794 +:103F5000530708F486C08091E501C091E601D09135 +:103F6000E7011091E801811107C0C11176C0D1119C +:103F700074C0111172C075C09F3F19F09F5F90937C +:103F8000E301181624F40E94151E8093E501809128 +:103F9000E50187FF05C00E94151E81958093E5010C +:103FA0001C1624F40E94151E8093E6018091E60100 +:103FB00087FF05C00E94151E81958093E6016091E0 +:103FC000E501662339F1C091E601CC2319F1772789 +:103FD00067FD7095872F972F0E94042323E333E317 +:103FE00043E35FE30E9468230E94D1226093E501CE +:103FF0006C2F772767FD7095872F972F0E940423DA +:1040000023E333E343E35FE30E9468230E94D1226A +:104010006093E6011D1624F40E945E1E8093E70162 +:104020008091E70187FF05C00E945E1E8195809305 +:10403000E701111624F40E945E1E8093E80180912E +:10404000E80187FF05C00E945E1E81958093E8010C +:10405000DF91CF911F910C94841F9F3F09F08ECF69 +:1040600096CFDF91CF911F910895E4EEF1E085E0C6 +:10407000DF011D928A95E9F71092E3011092E201A7 +:104080000895833081F128F4813059F08230D1F0E5 +:104090000895853009F449C0B8F1863009F456C056 +:1040A000089580911501262F30E0280F311D2F3FF4 +:1040B000310524F4680F6093150108958FEF809304 +:1040C0001501089580911401262F30E0280F311D2D +:1040D0002F3F310524F4680F6093140108958FEF8A +:1040E00080931401089580911301262F30E0280F4A +:1040F000311D2F3F310524F4680F6093130108959B +:104100008FEF80931301089580911201262F30E0E4 +:10411000280F311D2F3F310524F4680F60931201E1 +:1041200008958FEF80931201089580911101262F39 +:1041300030E0280F311D2F3F310524F4680F6093C4 +:10414000110108958FEF809311010895809110015E +:10415000262F30E0280F311D2F3F310524F4680F42 +:104160006093100108958FEF8093100108958330BC +:1041700011F128F4813049F0823091F008958530B2 +:1041800081F120F18630C1F1089580911501681701 +:1041900020F4861B8093150108951092150108954F +:1041A00080911401681720F4861B809314010895F0 +:1041B00010921401089580911301681720F4861B52 +:1041C00080931301089510921301089580911201B4 +:1041D000681720F4861B8093120108951092120133 +:1041E000089580911101681720F4861B80931101B6 +:1041F000089510921101089580911001681720F41C +:10420000861B8093100108951092100108950F935A +:104210001F938D3109F46BC008F03FC08E3009F454 +:104220007FC0C0F4873009F469C068F4863009F0B3 +:10423000B1C08091DA01817F8E7F8093DA0181E0C5 +:104240008093EA01A8C0883009F4A2C08B3009F439 +:104250009FC0A0C0863109F49BC078F4803109F476 +:1042600072C0813109F096C00E94D71490910D015F +:1042700081E0892780930D018BC0893109F488C0C2 +:104280008B3109F087C08091DA0181FB222720F968 +:1042900091E0922790FB81F94CC0853309F470C0FE +:1042A00048F4873209F46CC008F459C0893209F423 +:1042B00067C070C0833438F48A3308F04EC0883346 +:1042C00009F466C067C0833409F45AC0883409F021 +:1042D00061C00E94D7140FEF13ED20E3015010408E +:1042E0002040E1F700C000000E944A1C51C00E941B +:1042F0008B220E943E100E9437094AC09091DA0139 +:10430000892F8095817080FB90F929F096609860E4 +:104310009093DA0140C0997F977F9093DA0138C07B +:104320008091DA0182FB222720F991E0922790FB0D +:1043300082F98093DA01992359F18091DA01816041 +:104340008093DA0125C08091DA0183FB222720F9CE +:1043500091E0922790FB83F9ECCF895301C08D51F6 +:1043600041E050E060E070E08A019B0104C0000F72 +:10437000111F221F331F8A95D2F7C901B80104C04B +:1043800061E070E080E090E00E9497180E94D714EE +:1043900081E001C080E01F910F91089580E00895B1 +:1043A00080E00895CF93C82F8091EA01813079F0A1 +:1043B00018F08230E9F187C0E0910E01F0910F0111 +:1043C0008081813169F0823209F07FC009C0E091BB +:1043D0000E01F0910F018081813111F0823261F480 +:1043E0008C2F0E94CE21811104C08C2F0E940721A6 +:1043F0001DC081E090E01AC08C2F0E94D021811155 +:1044000014C0C43179F048F4CB3079F0C03109F0F0 +:1044100060C082E08093EA0108C0C93219F0C83355 +:1044200021F057C01092EA0154C081E0817053C05E +:10443000C93289F118F5C43171F1A8F4C73009F017 +:1044400046C08AE08093150194E19093140193E0B3 +:10445000909313018093120188E08093110188E208 +:104460008093100134C0CE51C63088F5EC2FF0E0B7 +:10447000E65DFE4F80818093E90129C0CE34E9F0EA +:1044800020F4CB3421F56AE013C0C13579F0C23590 +:10449000F1F461E00DC08091E901882319F01092D8 +:1044A000E90115C081E08093EA0115C061E006C012 +:1044B0008091E9010E9441200AC06AE08091E901EF +:1044C0000E94B72004C01092EA0180E004C081E09D +:1044D00002C080E0ABCFCF910895E1E8F0E08081A9 +:1044E000886080838081816080838FB7F89493E0B7 +:1044F0009093890090ED909388008FBF0895EFE628 +:10450000F0E08081826080830895EFE6F0E08081B2 +:104510008D7F80830895EFE6F0E0908182E0892727 +:10452000808308951F920F920FB60F9211242F933C +:104530003F934F935F936F937F938F939F93AF932B +:10454000BF93EF93FF938091EB019091EC01019663 +:104550009093EC018093EB01811103C082E00E94F3 +:104560003709E091EC01E695E695F0E0E45AFA4F60 +:10457000E4918091EB018E1303C080E00E94370923 +:10458000FF91EF91BF91AF919F918F917F916F912B +:104590005F914F913F912F910F900FBE0F901F9001 +:1045A000189504D06894B1118DC0089570D088F02A +:1045B0009F5790F0B92F9927B751A0F0D1F0660F0F +:1045C000771F881F991F1AF0BA95C9F712C0B1302A +:1045D00081F077D0B1E0089574C0672F782F8827D5 +:1045E000B85F39F0B93FCCF3869577956795B39569 +:1045F000D9F73EF490958095709561957F4F8F4FD8 +:104600009F4F0895E89409C097FB3EF490958095DC +:10461000709561957F4F8F4F9F4F9923A9F0F92F88 +:1046200096E9BB279395F695879577956795B79506 +:10463000F111F8CFFAF4BB0F11F460FF1BC06F5FEC +:104640007F4F8F4F9F4F16C0882311F096E911C0FE +:10465000772321F09EE8872F762F05C0662371F01F +:1046600096E8862F70E060E02AF09A95660F771F33 +:10467000881FDAF7880F9695879597F9089557FD63 +:104680009058440F551F59F05F3F71F04795880FC0 +:1046900097FB991F61F09F3F79F087950895121657 +:1046A00013061406551FF2CF4695F1DF08C0161603 +:1046B00017061806991FF1CF8695710561050894B4 +:1046C0000895E894BB2766277727CB0197F90895CB +:1046D0000BD078C069D028F06ED018F0952309F07F +:1046E0005AC05FC01124EECFCADFA0F3959FD1F36B +:1046F000950F50E0551F629FF001729FBB27F00D90 +:10470000B11D639FAA27F00DB11DAA1F649F6627E4 +:10471000B00DA11D661F829F2227B00DA11D621F33 +:10472000739FB00DA11D621F839FA00D611D221FED +:10473000749F3327A00D611D231F849F600D211DD1 +:10474000822F762F6A2F11249F5750408AF0E1F074 +:1047500088234AF0EE0FFF1FBB1F661F771F881FBD +:1047600091505040A9F79E3F510570F014C0AACF58 +:104770005F3FECF3983EDCF3869577956795B795A8 +:10478000F795E7959F5FC1F7FE2B880F911D9695D2 +:10479000879597F9089597F99F6780E870E060E042 +:1047A00008959FEF80EC089500240A9416161706CA +:1047B00018060906089500240A9412161306140612 +:1047C00005060895092E0394000C11F4882352F075 +:1047D000BB0F40F4BF2B11F460FF04C06F5F7F4F2D +:1047E0008F4F9F4F089597FB072E16F4009407D024 +:1047F00077FD09D00E940D2407FC05D03EF490956A +:1048000081959F4F0895709561957F4F0895EE0FA4 +:10481000FF1F0590F491E02D0994AA1BBB1B51E1E9 +:1048200007C0AA1FBB1FA617B70710F0A61BB70B20 +:10483000881F991F5A95A9F780959095BC01CD01C5 +:104840000895F999FECF92BD81BDF89A992780B558 +:104850000895A8E1B0E042E050E00C944924262FEE +:10486000F999FECF92BD81BDF89A019700B4021666 +:1048700039F01FBA20BD0FB6F894FA9AF99A0FBE14 +:1048800008950196272F0E9430240C942F24DC01D8 +:10489000CB01FC01F999FECF06C0F2BDE1BDF89A4B +:1048A000319600B40D9241505040B8F70895F894F5 +:0248B000FFCF38 +:1048B20002203909C709A40970093C090101C7018D +:1048C20028080A03140A3F4D36391D05D0049A04FC +:1048D2006104F4030D0426043F04010203040506E7 +:0448E20007080900BA +:00000001FF diff --git a/keyboards/ergodox_ez/keymaps/plover/keymap.c b/keyboards/ergodox_ez/keymaps/plover/keymap.c new file mode 100644 index 0000000000..a991e6082d --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/plover/keymap.c @@ -0,0 +1,228 @@ +#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 +#define PLVR 3 // Plover layer + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* Keymap 0: Basic layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | = | 1 | 2 | 3 | 4 | 5 | LGui | | RIGHT| 6 | 7 | 8 | 9 | 0 | - | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Tab | Q | W | E | R | T | L1 | |Plover| Y | U | I | O | P | \ | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | Esc | A | S | D | F | G |------| |------| H | J | K | L |; / L2| ' | + * |--------+------+------+------+------+------| Hyper| | Meh |------+------+------+------+------+--------| + * | LShift |Z/Ctrl| X | C | V | B | | | | N | M | , | . |//Ctrl| RShift | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * |Grv/L1| '" |AltShf| Left | Right| | Up | Down | [ | ] | ~L1 | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | App | Home | | Alt |Ctrl/Esc| + * ,------|------|------| |------+--------+------. + * | | | End | | PgUp | | | + * |Backsp|Delete|------| |------| Enter |Space | + * | ace | | LAlt | | PgDn | | | + * `--------------------' `----------------------' + */ +// If it accepts an argument (i.e, is a function), it doesn't need KC_. +// Otherwise, it needs KC_* +[BASE] = KEYMAP( // layer 0 : default + // left hand + KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, KC_LGUI, + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, TG(1), + KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, + KC_LSFT, CTL_T(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, + ALT_T(KC_APP), KC_HOME, + KC_END, + KC_BSPC,KC_DELT,KC_LALT, + // right hand + KC_RGHT, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, + TG(3), 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, + 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), + KC_PGUP, + KC_PGDN,KC_ENT, KC_SPC + ), +/* Keymap 1: Symbol Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | ! | @ | { | } | | | | | | Up | 7 | 8 | 9 | * | F12 | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | # | $ | ( | ) | ` |------| |------| Down | 4 | 5 | 6 | + | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | % | ^ | [ | ] | ~ | | | | & | 1 | 2 | 3 | \ | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | . | 0 | = | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// SYMBOLS +[SYMB] = KEYMAP( + // left hand + KC_TRNS,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, + KC_TRNS,KC_EXLM,KC_AT, KC_LCBR,KC_RCBR,KC_PIPE,KC_TRNS, + KC_TRNS,KC_HASH,KC_DLR, KC_LPRN,KC_RPRN,KC_GRV, + KC_TRNS,KC_PERC,KC_CIRC,KC_LBRC,KC_RBRC,KC_TILD,KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS, + KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS, + // right hand + KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + KC_TRNS, KC_UP, KC_7, KC_8, KC_9, KC_ASTR, KC_F12, + KC_DOWN, KC_4, KC_5, KC_6, KC_PLUS, KC_TRNS, + KC_TRNS, KC_AMPR, KC_1, KC_2, KC_3, KC_BSLS, KC_TRNS, + KC_TRNS,KC_DOT, KC_0, KC_EQL, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), +/* Keymap 2: Media and mouse keys + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | |------| |------|MsLeft|MsDown| MsUp |MsRght| | Play | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | | Prev | Next | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | Lclk | Rclk | |VolUp |VolDn | Mute | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | |Brwser|Brwser| + * | Lclk | Rclk |------| |------|Fwd |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_BTN1, KC_BTN2, 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_MS_L, KC_MS_D, KC_MS_U, KC_MS_R, 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_WBAK, KC_WFWD +), + +/* Keymap 4: Steno for Plover from https://github.com/shayneholmes/tmk_keyboard/commit/11290f8489013018f778627db725160c745e75bd + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | 1 | 2 | 3 | 4 | 5 | | | | 6 | 7 | 8 | 9 | 0 | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | q | w | e | r | t |------| |------| y | u | i | o | p | [ | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | a | s | d | f | g | | | | h | j | k | l | ; | ' | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | c | v |------| |------| n | m | + * | | | | | | | | + * `--------------------' `--------------------' + */ + +[PLVR] = KEYMAP( // layout: layer 4: Steno for Plover + // left hand + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_1, KC_2, KC_3, KC_4, KC_5, KC_NO, + KC_NO, KC_Q, KC_W, KC_E, KC_R, KC_T, + KC_NO, KC_A, KC_S, KC_D, KC_F, KC_G, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_FN4, KC_NO, + KC_NO, + KC_C, KC_V, KC_NO, + // right hand + KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, + KC_NO, KC_6, KC_7, KC_8, KC_9, KC_0, KC_TRNS, + KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, + KC_NO, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + KC_TRNS, KC_TRNS, KC_NO, KC_NO, KC_NO, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_NO, KC_N, KC_M +), +}; + +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/keyboards/ergodox_ez/keymaps/plums/compiled.hex b/keyboards/ergodox_ez/keymaps/plums/compiled.hex new file mode 100644 index 0000000000..5d928815a2 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/plums/compiled.hex @@ -0,0 +1,1165 @@ +:100000000C9483020C94C7020C94C7020C94C70290 +:100010000C94C7020C94C7020C94C7020C94C7023C +:100020000C94C7020C94C7020C94960D0C94680EA5 +:100030000C94C7020C94C7020C94C7020C94C7021C +:100040000C94C7020C9472220C94C7020C94C70241 +:100050000C94C7020C94051C0C94C7020C94C702A4 +:100060000C94C7020C94C7020C94C7020C94C702EC +:100070000C94C7020C94C7020C94C7020C94C702DC +:100080000C94C7020C94C7020C94C7020C94C702CC +:100090000C94C7020C94C7020C94C7020C94C702BC +:1000A0000C94C7020C94C7020C94C702D50EF70E2D +:1000B000E50FF70EE50F3C0F5F0FE50FB40FC70F0D +:1000C00096129612C512C512FB121B134C144C1437 +:1000D00026134C14D613D6133D144C144C1446144A +:1000E000E313E313E313E313E313E313E313E31360 +:1000F000E313E313E313E313E313E313E313E31350 +:10010000F5130214091410141A1401E40135023510 +:1001100002E40001E00104020402E00000C801C89A +:1001200035002B00E300E100002000001E00140059 +:1001300004001D002F024D001F001A0016001B00B6 +:1001400026022900200008000700060031022A00CC +:10015000210015000900190033024A00220017008F +:100160000A0005000000E2083E002F0000000154D4 +:100170000000E200100F3000000002540000E60012 +:1001800023001C000B0011000000AE00240018002A +:100190000D0010002D004B0025000C000E00360055 +:1001A0002E002C00260012000F0037002702280026 +:1001B000270013003300380030024E00A800310041 +:1001C0003400E500012000000100010001000100F1 +:1001D000010000003A001E0220022202010001007C +:1001E0003B001F0221022302010001003C002F02FC +:1001F00026022F00010001003D00300227023000DE +:10020000010001003E00310235003502000001000E +:1002100001000100000001000000010001000100D8 +:1002200000000100000001003F000100500001003B +:100230000000010040000100510001000100010028 +:1002400041000100520001000100010042000100D4 +:100250004F00010001000100430001000100010006 +:100260000100010044004500010001000100000000 +:100270000100010001000100A900000001000100CF +:1002800001000100AA0001000100010001000100BD +:10029000AC0001000100010001000100AB00010001 +:1002A0000100010001000100010001000100010046 +:1002B0000100010000000100010001000000010038 +:1002C0000000010001000100000001000000010029 +:1002D00001000100F2000100000001000100010026 +:1002E000F1000100F400010001000100F000010034 +:1002F000F500B60001000100F3000100010001005B +:1003000001000100010001000100010001000100E5 +:1003100001000100010000001603450072006700A3 +:100320006F0044006F007800200045005A00000074 +:1003300016034500720067006F0044006F007800EC +:10034000200045005A0000000403090409026D0062 +:10035000040100A0FA0904000001030101000921C1 +:1003600011010001223F000705810308000A09046A +:1003700001000103010200092111010001224D00C9 +:100380000705820308000A090402000103000000B7 +:100390000921110100012236000705830308000A24 +:1003A00009040300010300000009211101000122DA +:1003B000390007058403100001120110010000003C +:1003C00008EDFE071301000102000105010906A165 +:1003D00001050719E029E715002501950875018138 +:1003E0000205081901290595057501910295017508 +:1003F00003910105071900297715002501957875E6 +:10040000018102C005010980A101850216010026B3 +:10041000B7001A01002AB700751095018100C005C8 +:100420000C0901A1018503160100269C021A010096 +:100430002A9C02751095018100C005010902A101E5 +:100440000901A100050919012905150025019505D6 +:10045000750181029501750381010501093009319A +:100460001581257F95027508810609381581257F3C +:10047000950175088106050C0A38021581257F95BE +:100480000175088106C0C005010906A1010507190B +:10049000E029E71500250195087501810295017590 +:1004A0000881010508190129059505750191029535 +:1004B00001750391010507190029FF150025FF9516 +:1004C0000675088100C00000000000000000000068 +:1004D00000010204060A0F17202C3A4A5D71879D1D +:1004E000B3C7DAE9F5FCFFFCF5E9DAC7B39D87711C +:1004F0005D4A3A2C20170F0A060402010000000092 +:1005000000000000000011241FBECFEFDAE0DEBFC4 +:10051000CDBF04B603FE24C08091FB019091FC0185 +:10052000A091FD01B091FE018730904BA740B04BE8 +:10053000B9F41092FB011092FC011092FD0110928F +:10054000FE0114BE84B7877F84BF88E10FB6F8949C +:1005500080936000109260000FBEE0E0FFE3099519 +:1005600011E0A0E0B1E0E2E7F8E402C005900D92EE +:10057000A433B107D9F711E0A4E3B1E001C01D92A3 +:10058000AB3FB107E1F70E94DA0A0C9437240C94D0 +:1005900000001092B9008AE08093B800089594EAB0 +:1005A0009093BC009091BC0097FFFCCF9091B90054 +:1005B000987F983021F0903111F081E00895809378 +:1005C000BB0084E88093BC008091BC0087FFFCCF17 +:1005D0008091B900887F883111F0803471F780E014 +:1005E000089584E98093BC008091BC0084FDFCCF19 +:1005F00008958093BB0084E88093BC008091BC0088 +:1006000087FFFCCF9091B900987F81E0983209F480 +:1006100080E0089584E88093BC008091BC0087FF4F +:10062000FCCF8091BB00089580910101811115C01C +:1006300080E40E94CF028093010181110CC082E10D +:100640000E94F90280930101811105C08FEF0E9481 +:10065000F902809301010E94F10284B1807F84B984 +:1006600085B1807F85B98AB1837F8AB98BB1837F59 +:100670008BB93E98469808950E94CF04809301015B +:100680000E94140380B38C7080BB81B3836F81BBE5 +:10069000A5E3B1E0E3E4F1E08EE08E0F11921D924C +:1006A0008E13FCCF0C94B904BF92CF92DF92EF92DD +:1006B000FF920F931F93CF93DF93809101018823C3 +:1006C00079F0809134018F5F80933401811108C0EB +:1006D0000E94CF0480930101811102C00E94610435 +:1006E00005E311E0C0E0D0E0DD24D39482E0C82E21 +:1006F000EE24E394F12CC730D10500F5809101017F +:10070000811164C080E40E94CF02809301018111B5 +:1007100012C082E10E94F9028093010181110BC095 +:10072000C7010C2E01C0880F0A94EAF780950E9439 +:10073000F902809301010E94F10248C0CA30A1F081 +:1007400028F4C83059F0C93061F005C0CC3089F0C8 +:1007500070F0CD3089F0209A289810C0219A2998FD +:100760000DC0229A2A980AC0239A2B9807C0529A41 +:1007700001C0539A5B9802C03E9A469890EA9A95B7 +:10078000F1F79FB1799902C082E001C080E09170D9 +:100790009D25982B7C9902C084E001C080E0892BC4 +:1007A0007D9902C038E001C030E0832B7E9902C001 +:1007B00020E101C020E0822B9FB19095991F9927DD +:1007C000991F9295990F907E892B0FC080910101FE +:1007D000811149C080E40E94CF02809301018823E7 +:1007E00079F1B12C0E94F1028B2DF80190819817BC +:1007F00019F08083C09200010E94140321960F5FBC +:100800001F4FCE30D10509F076CF809100018823AB +:1008100061F1815080930001882339F08FE99FE0D6 +:100820000197F1F700C0000020C0A3E4B1E0E5E3C8 +:10083000F1E0CF01825F91919D938E13FCCF15C0A3 +:1008400083E10E94F902809301018111CACF81E402 +:100850000E94CF02809301018111C3CF0E940A033D +:10086000B82EB094BFCF80E0C0CF0E945F0481E07B +:10087000DF91CF911F910F91FF90EF90DF90CF907C +:10088000BF900895E82FF0E0ED5BFE4F8081089562 +:1008900008950F931F93CF93DF93C3E4D1E010E04B +:1008A0000C2F025F899190E00E942B1B180F0C13F4 +:1008B000F9CF812FDF91CF911F910F9108950C9463 +:1008C0005A0556985E9825982D9826982E98279820 +:1008D0002F988FEF90E090938900809388009093F9 +:1008E0008B0080938A0090938D0080938C00259AD2 +:1008F0002D9A2FEF80E792E0215080409040E1F761 +:1009000000C00000269A2E9A2FEF80E792E0215037 +:1009100080409040E1F700C00000279A2F9A2FEF07 +:1009200080E792E0215080409040E1F700C0000055 +:1009300025982D982FEF80E792E02150804090403D +:10094000E1F700C0000026982E982FEF80E792E094 +:10095000215080409040E1F700C0000027982F9878 +:1009600056985E9825982D9826982E9827982F9817 +:10097000089589EA8093800089E08093810024981B +:100980002C983F988AB18F748AB96E98479A8BB128 +:10099000806B8BB9769A0E9461040C94590580E2B1 +:1009A000809301018091510181110EC00E94C90202 +:1009B00081E0809351012FEF83ED90E3215080403F +:1009C0009040E1F700C0000080E40E94CF028093D5 +:1009D000010181112EC00E94F90280930101811151 +:1009E00028C00E94F90280930101811122C08FE387 +:1009F0000E94F9028093010181111BC00E94F10243 +:100A000080E40E94CF0280930101811112C08CE02A +:100A10000E94F9028093010181110BC00E94F9022A +:100A200080930101811105C08FE30E94F902809338 +:100A300001010E94F102809101010895CF93DF939B +:100A4000EC01662319F06130C9F015C09A818D81DF +:100A5000992349F0982F907F21F080FF22C08F705A +:100A60008D8380EE17C0807F19F480EE0E94021201 +:100A70008D818F708D8380E090E018C09A818D8188 +:100A8000992359F0982F907F21F080FF0DC08F702F +:100A90008D8384EE0E943A11EECF807F49F784EE79 +:100AA000E5CF83E191E002C08AE091E0DF91CF9150 +:100AB000089508956091BD017091BE018091BF01BC +:100AC0009091C0010E94371B56985E9825982D98EA +:100AD00026982E9827982F98813019F0823021F08F +:100AE0000895259A2D9A0895269A2E9A089581E0C0 +:100AF000089581E008950C94790508950F931F934C +:100B0000CF93DF938C01FC01C081D181CE010E9483 +:100B1000B019BE010E942706EC01B8010E947B05B6 +:100B2000882309F48DC0F8018281882309F44AC022 +:100B300080915D0181111FC0C431F0E5DF0709F02C +:100B400051C00E947D0581E080935D010E94CF1B12 +:100B500090935C0180935B011092540110925601B6 +:100B600010925501109258011092570110925A019B +:100B70001092590165C080915B0190915C010E94C7 +:100B8000DB1B883C910570F480915401E82FF0E064 +:100B9000EE0FFF1FEB5AFE4FD183C0838F5F809310 +:100BA00054014EC0C43880E5D80721F0C538D0457F +:100BB00001F13AC0F8018281882341F0109252017C +:100BC00082E01EC0C438E0E5DE0759F5809152018D +:100BD000811106C086E20E943A1186E20E9402124A +:100BE00082E01CC0C438F0E5DF0741F3C538D045CA +:100BF000D9F4F8018281882331F01092530180E208 +:100C00000E9451121DC080915301811106C087E2DC +:100C10000E943A1187E20E94021280E20E9458125A +:100C20000FC0C538D04529F381E0809352018093ED +:100C30005301C801DF91CF911F910F910C9477055B +:100C400080E0DF91CF911F910F910895089596E074 +:100C5000799FF001112494E5899FE00DF11D112485 +:100C6000E60FF11DEE0FFF1FE05EFE4F85919491A0 +:100C70000895880F991FFC01E456F04085919491E6 +:100C80000895880F991FFC01E45EFE4F85919491B1 +:100C900008950F931F93CF93DF93EC01811520E309 +:100CA000920750F5C11580E2D80708F0C3C0CB3BCE +:100CB000D10590F4C83AD10508F06AC0C53AD1050B +:100CC00008F05BC0C430D10508F0D0C1219709F00D +:100CD000CAC101E010E00AC2CF3FD10511F008F00F +:100CE000C5C1C03FD10508F0A2C0CE01805E910908 +:100CF000089708F4BBC1B7C1C13090E5D90709F422 +:100D0000A2C020F5C0318FE4D80770F4C11590E47B +:100D1000D90708F094C0C11521E3D20708F0A3C198 +:100D2000DD278E01106CE2C1C115D04509F09BC1D1 +:100D30000E94B7148FEF94E32CE081509040204044 +:100D4000E1F700C000000E942A1CD0C1C11597E540 +:100D5000D90758F4C03121E5D20708F01CC1C431CD +:100D600080E5D80708F475C07EC1CE019057811583 +:100D7000904108F078C1DF7073C1C53AD10509F41C +:100D800077C1C63AD10509F076C102E810E4AEC1D8 +:100D9000C83AD10509F472C1C93AD10509F471C143 +:100DA000CA3AD10509F470C1CB3AD10509F46FC133 +:100DB000CC3AD10509F46EC1CD3AD10509F46DC123 +:100DC000C03BD10509F46CC1CE3AD10509F46BC121 +:100DD000CF3AD10509F46AC1C13BD10509F469C113 +:100DE000C23BD10509F468C1C33BD10509F467C111 +:100DF000C43BD10509F466C1C53BD10509F465C101 +:100E0000C63BD10509F464C1C73BD10509F463C1F0 +:100E1000C83BD10509F462C1C93BD10509F461C1E0 +:100E2000CA3BD10509F460C100E014E45FC18E0142 +:100E300010655CC1CE019F700E94410658C1DF70F1 +:100E40008E01106A53C18091DA0181608093DA01CA +:100E50004DC10E94CF1D811102C00E94B51D0E948C +:100E6000EC1D90E09093FB018093FA01C23080E585 +:100E7000D80721F48091FA01816086C0C43090E5E2 +:100E8000D90721F48091FA0182607EC0C63020E546 +:100E9000D20721F48091FA01846076C0C83080E5E1 +:100EA000D80719F48091FA0127C0CA3090E5D90714 +:100EB00021F48091FA01806167C0CC3020E5D2072F +:100EC00021F48091FA0180625FC0CE3080E5D807BE +:100ED00021F48091FA01806457C0C03190E5D907B0 +:100EE00021F48091FA0180684FC0C23120E5D20719 +:100EF00029F48091FA018460886046C0C33080E59F +:100F0000D80721F48091FA018E7F3EC0C53090E56C +:100F1000D90721F48091FA018D7F36C0C73020E5D2 +:100F2000D20721F48091FA018B7F2EC0C93080E571 +:100F3000D80719F48091FA0126C0CB3090E5D90783 +:100F400021F48091FA018F7E1FC0CD3020E5D207B9 +:100F500021F48091FA018F7D17C0CF3080E5D8074A +:100F600021F48091FA018F7B0FC0C13190E5D90740 +:100F700021F48091FA018F7707C0C331D04531F455 +:100F80008091FA018B7F877F8093FA018091FA012B +:100F90000E94F01DABC08D2F99278F70992781304B +:100FA0009105D9F49E012370332702C0880F991F41 +:100FB0002A95E2F79C688E0144E0000F111F4A95C4 +:100FC000E1F700271370802B912B53E0CC0FDD1F2E +:100FD0005A95E1F7C076DD272FC08230910531F4B4 +:100FE000DC2FCC278E01016F106A80C08330910501 +:100FF00069F4CE018370992701E010E002C0000F70 +:10100000111F8A95E2F7C8019C680FC084309105D2 +:10101000B9F4CE018370992701E010E002C0000FFF +:10102000111F8A95E2F7C8019A6823E0CC0FDD1FF3 +:101030002A95E1F7C07ED7708C010C2B1D2B56C072 +:101040008530910531F4DC2FCC278E01046F106AB6 +:101050004DC0069709F04AC0CF71DD27DC2FCC27A1 +:101060008E01106243C000E010E040C08E013EC01F +:1010700001E810E43BC003E810E438C002EE14E4D9 +:1010800035C009EE14E432C00AEE14E42FC005EBBB +:1010900014E42CC006EB14E429C007EB14E426C0CA +:1010A0000CEC14E423C00DEC14E420C003E815E4B8 +:1010B0001DC00AE815E41AC002E915E417C004E9E6 +:1010C00015E414C001E216E411C003E216E40EC0F8 +:1010D00004E216E40BC005E216E408C006E216E4DA +:1010E00005C007E216E402C00AE216E4C801DF9177 +:1010F000CF911F910F91089596E0799FF0011124EF +:1011000094E5899FE00DF11D1124E60FF11DEE0F0E +:10111000FF1FE05EFE4F85919491803E9105E0F4C3 +:10112000803C910558F58133910509F46FC048F46E +:101130008932910509F463C08A32910509F46DC0C2 +:1011400072C089339105E9F082389105D1F0853379 +:10115000910509F44DC067C0833E910581F138F4D3 +:10116000803E9105B9F0823E9105D9F05CC0863E83 +:10117000910561F1873E9105A1F155C00E943906A4 +:1011800008952091FA0120FD02C021FF4CC080EE9D +:1011900090E049C08091FA0180FFF9CF89E390E0A7 +:1011A00042C08091FA0182FF0EC08091FA0184FF53 +:1011B00003C080E090E037C083EE90E034C08091BF +:1011C000FA0182FFF2CF82EE90E02DC08091FA0109 +:1011D00083FF0BC08091FA0184FDEBCF87EE90E096 +:1011E00022C08091FA0183FFF5CF86EE90E01BC00C +:1011F0008091FA0185FF07C089E290E014C08091D8 +:10120000FA0185FFF9CF85E390E00DC08091FA01E6 +:1012100086FF07C08AE290E006C08091FA0186FF4F +:10122000F9CF81E390E00E944906089508950C9457 +:10123000160980916E010895CF93DF9300D01F921D +:10124000CDB7DEB79C018091F101843019F593E0B0 +:1012500099833B832A839093E9008FEF9091E80074 +:10126000815095FD06C095ED9A95F1F7000081112A +:10127000F5CF8091E80085FF0DC040E050E063E0CD +:1012800070E0CE0101960E94860B8091E8008E7777 +:101290008093E8000F900F900F90DF91CF91089509 +:1012A000CF93DF9300D01F92CDB7DEB72091F1012D +:1012B000243021F522E029839B838A8383E0809375 +:1012C000E9008FEF9091E800815095FD06C095ED03 +:1012D0009A95F1F700008111F5CF8091E80085FF24 +:1012E0000DC040E050E063E070E0CE0101960E9446 +:1012F000860B8091E8008E778093E8000F900F9026 +:101300000F90DF91CF9108952091F1012430F1F4F5 +:1013100022E02093E9002FEF3091E800215035FDC5 +:1013200006C035ED3A95F1F700002111F5CF209177 +:10133000E80025FF0BC040E050E065E070E00E944F +:10134000860B8091E8008E778093E8000895CF9314 +:10135000DF93EC019091F101943009F046C0809147 +:101360000C018823D9F080910D018823B9F0909366 +:10137000E9008FEF9091E800815095FD06C095E15E +:101380009A95F1F700008111F5CF8091E80085FF73 +:101390002CC040E050E060E170E017C081E0809335 +:1013A000E9008FEF9091E800815095FD06C095ED22 +:1013B0009A95F1F700008111F5CF8091E80085FF43 +:1013C00014C040E050E068E070E0CE010E94860B5F +:1013D0008091E8008E778093E80080E1FE01AEE521 +:1013E000B1E001900D928A95E1F7DF91CF910895D8 +:1013F0008091F001811109C00E941B0D0E94780D9F +:101400008091E20084608093E20008951092F001E0 +:10141000089508950C945F220E94C01B0E946522CB +:101420000E941E100C94170942E061EC81E00E94BA +:10143000950C42E061EC82E00E94950C42E061EC88 +:1014400083E00E94950C42E161EC84E00C94950CE1 +:101450008091F301833009F455C030F4813071F08C +:10146000823009F48EC008958A3009F47AC08B3036 +:1014700009F460C0893009F09CC020C08091F2015D +:10148000813A09F096C08091E800877F8093E80058 +:101490008091F6019091F701892B21F460E18EE5AE +:1014A00091E003C060E080E090E070E00E94D10B2A +:1014B0008091E8008B778093E80008958091F20195 +:1014C000813209F076C08091F6019091F701009782 +:1014D00019F0039709F06DC08091E800877F809331 +:1014E000E8008091E80082FD05C08091F101811142 +:1014F000F8CF5FC08091F10080936E018091E80089 +:101500008B7753C08091F201813A09F052C08091EB +:10151000F6019091F701892B09F04BC08091E8000A +:10152000877F8093E8008091E80080FFFCCF809166 +:101530000C0136C08091F2018132D9F58091F6011B +:101540009091F701892BA9F58091E800877F80931E +:10155000E8000E94CA0C8091F40180930C010C9465 +:10156000B7148091F201813221F58091E800877FE4 +:101570008093E8000E94CA0C8091F50180936F016E +:1015800008958091F201813AA1F48091E800877F6B +:101590008093E8008091E80080FFFCCF80916F018C +:1015A0008093F1008091E8008E778093E8000C949E +:1015B000CA0C089584B7877F84BF88E10FB6F8947A +:1015C00080936000109260000FBE90E080E80FB63C +:1015D000F89480936100909361000FBE0E946D109B +:1015E0000E941B0D0E94780D8091E2008460809320 +:1015F000E20078940E94FE0F0E946F1082E091E05A +:101600000E9419100E944D228091F101853069F4E9 +:101610000E94871B8091EF018823B1F30E94B21BC7 +:10162000882391F30E94700BEFCF0E947510ECCFCE +:10163000292F332723303105C9F064F421303105D7 +:1016400081F02230310509F043C08DE690E02CE4B2 +:1016500033E042C021323105F1F02232310541F14F +:1016600037C082E190E029EB33E036C09927813022 +:10167000910541F08230910541F0892B49F5E8E46C +:10168000F3E005C0E0E3F3E002C0E8E1F3E08491B9 +:1016900090E09F0121C06430D8F4E62FF0E0EE0F17 +:1016A000FF1FEE5DFE4F2081318189E090E014C084 +:1016B000643070F470E0FB01EE0FFF1FE65EFE4F3A +:1016C00020813181FB01EA5EFE4F808190E004C001 +:1016D00080E090E020E030E0FA013183208308953B +:1016E00080E189BD82E189BD09B400FEFDCF809112 +:1016F000D8008F7D8093D8008091E0008260809335 +:10170000E0008091E00081FDFCCF0895CF92DF9250 +:10171000EF92FF920F931F93CF93DF93EC018B0116 +:101720006A010E94E90C811133C0C114D10439F05F +:10173000F60180819181081B190BC80FD91FE12C7C +:10174000F12C0115110519F18091E80085FD16C0F5 +:101750008091E8008E778093E800C114D10449F0AD +:10176000F60180819181E80EF91EF182E08285E028 +:101770000FC00E94E90C882321F30AC0899180934D +:10178000F10001501109FFEFEF1AFF0ADACF80E0F4 +:10179000DF91CF911F910F91FF90EF90DF90CF904D +:1017A00008952091F8013091F9012617370748F084 +:1017B0006115710539F42091E8002E772093E80037 +:1017C00001C0B90140E061157105A9F12091F10155 +:1017D000222309F443C0253009F442C02091E800D7 +:1017E00023FD40C02091E80022FD32C02091E80096 +:1017F00020FFE9CF4091F3002091F20030E0342B3C +:10180000FC01CF016115710559F02830310540F414 +:1018100081918093F100615071092F5F3F4FF1CFAB +:1018200041E02830310509F040E02091E8002E77B2 +:101830002093E800C8CF4111C9CF0AC08091F101BF +:10184000882361F0853061F08091E80083FD0AC053 +:101850008091E80082FFF2CF80E0089582E0089551 +:1018600083E0089581E008952091F8013091F90115 +:101870002617370748F06115710539F42091E80003 +:101880002E772093E80001C0B901FC0120E061152A +:10189000710591F18091F101882309F440C08530F0 +:1018A00009F43FC08091E80083FD3DC08091E800CD +:1018B00082FD2FC08091E80080FFE9CF2091F300E6 +:1018C0008091F20090E0922B6115710559F08830FB +:1018D000910540F424912093F100319661507109F3 +:1018E0000196F2CF21E0089709F020E08091E8000E +:1018F0008E778093E800CBCF2111CCCF0AC08091A6 +:10190000F101882361F0853061F08091E80083FD6A +:101910000AC08091E80082FFF2CF80E0089582E063 +:10192000089583E0089581E00895982F973058F541 +:101930009093E900981739F07091EC002091ED0038 +:101940005091F00003C0242F762F50E021FF19C0E2 +:101950003091EB003E7F3093EB003091ED003D7F06 +:101960003093ED003091EB0031603093EB007093D9 +:10197000EC002093ED005093F0002091EE0027FF43 +:1019800007C09F5FD3CF8F708093E90081E00895F7 +:1019900080E008958091F20187FF11C08091E800F6 +:1019A00082FD05C08091F1018111F8CF11C08091B5 +:1019B000E8008B770BC08091F101882349F080917A +:1019C000E80080FFF8CF8091E8008E778093E800F0 +:1019D00008952091E4003091E50095E64091EC00F7 +:1019E000842F817040FF22C08091E80080FD1CC0E0 +:1019F0008091F101882391F0853091F08091EB0086 +:101A000085FD10C04091E4005091E5004217530756 +:101A100029F39A01915011F784E0089582E0089526 +:101A200083E0089581E0089580E008954091E80002 +:101A300042FFDECF08950E94890D0E94910DE0EED5 +:101A4000F0E0808181608083E8EDF0E080818F7735 +:101A5000808319BCA7EDB0E08C918E7F8C93808140 +:101A60008F7E80831092F00108950F931F93CF9380 +:101A7000DF930E94890D0E94910DC8EDD0E088810E +:101A80008F77888388818068888388818F7D888329 +:101A900019BC1092F1011092ED011092EF01109219 +:101AA000EE0100EE10E0F80180818B7F8083888159 +:101AB0008160888342E060E080E00E94950CE1EE66 +:101AC000F0E080818E7F8083E2EEF0E080818160B3 +:101AD0008083808188608083F80180818E7F80830D +:101AE000888180618883DF91CF911F910F91089544 +:101AF000E8EDF0E080818F7E8083E7EDF0E080818B +:101B00008160808384E082BF81E08093F0010C9447 +:101B1000350DE8EDF0E080818E7F80831092E20049 +:101B200008951092DA001092E10008951F920F922A +:101B30000FB60F9211242F933F934F935F936F93A0 +:101B40007F938F939F93AF93BF93EF93FF93809176 +:101B5000E10082FF0BC08091E20082FF07C080910C +:101B6000E1008B7F8093E1000E94FD0F8091DA00FD +:101B700080FF1FC08091D80080FF1BC08091DA00D9 +:101B80008E7F8093DA008091D90080FF0DC080E1C4 +:101B900089BD82E189BD09B400FEFDCF81E080935B +:101BA000F1010E94F80905C019BC1092F1010E94D0 +:101BB000060A8091E10080FF19C08091E20080FF59 +:101BC00015C08091E2008E7F8093E2008091E20058 +:101BD00080618093E2008091D80080628093D80079 +:101BE00019BC85E08093F1010E940A0A8091E1000E +:101BF00084FF30C08091E20084FF2CC080E189BD69 +:101C000082E189BD09B400FEFDCF8091D8008F7DAF +:101C10008093D8008091E1008F7E8093E1008091D5 +:101C2000E2008F7E8093E2008091E20081608093E9 +:101C3000E2008091ED01882311F084E007C08091DB +:101C4000E30087FD02C081E001C083E08093F101E1 +:101C50000E940C0A8091E10083FF29C08091E2007C +:101C600083FF25C08091E100877F8093E10082E0BF +:101C70008093F1011092ED018091E1008E7F8093BD +:101C8000E1008091E2008E7F8093E2008091E2008B +:101C900080618093E20042E060E080E00E94950C69 +:101CA0008091F00088608093F0000E94090AFF9103 +:101CB000EF91BF91AF919F918F917F916F915F91C4 +:101CC0004F913F912F910F900FBE0F901F9018953D +:101CD0001F920F920FB60F9211242F933F934F93A1 +:101CE0005F936F937F938F939F93AF93BF93CF93A4 +:101CF000DF93EF93FF93C091E900CF708091EC00E8 +:101D0000D82FD17080FDD0E81092E9008091F000CA +:101D1000877F8093F00078940E94AC0E1092E900C7 +:101D20008091F00088608093F000CD2BCF70C0933D +:101D3000E900FF91EF91DF91CF91BF91AF919F911A +:101D40008F917F916F915F914F913F912F910F9064 +:101D50000FBE0F901F9018951F93CF93DF93CDB7B1 +:101D6000DEB7AA970FB6F894DEBF0FBECDBFE2EF85 +:101D7000F1E088E08E0F9091F10091938E13FBCFEC +:101D80000E94280A8091E80083FF1FC18091F20120 +:101D90009091F301492F50E04A30510508F015C1E8 +:101DA000FA01EA5AFF4F0C94E723803881F0823819 +:101DB00009F00BC18091F6018F708093E90080914A +:101DC000EB0085FB882780F91092E90006C080911E +:101DD000EE019091EF01911182609091E800977F60 +:101DE0009093E8008093F1001092F100C8C0282F72 +:101DF0002D7F09F0EAC0882319F0823061F0E5C038 +:101E00008091F401813009F0E0C0933009F080E066 +:101E10008093EF012BC08091F401811127C0809144 +:101E2000F6018F7009F4D1C08093E9002091EB0096 +:101E300020FF1CC0933021F48091EB00806214C01D +:101E40009091EB0090619093EB0021E030E0A901CC +:101E500002C0440F551F8A95E2F74093EA001092A2 +:101E6000EA008091EB0088608093EB001092E9001B +:101E70008091E800877F86C08111A7C01091F4018E +:101E80001F778091E3008078812B8093E30080911D +:101E9000E800877F8093E8000E94CA0C8091E800E8 +:101EA00080FFFCCF8091E30080688093E3001111F4 +:101EB00002C082E001C083E08093F10186C08058B7 +:101EC000823008F082C08091F4019091F5018C3D40 +:101ED00053E0950779F583E08A838AE289834FB7D7 +:101EE000F894DE01139620E03EE051E2E32FF0E0AB +:101EF00050935700E49120FF03C0E295EF703F5FDD +:101F0000EF708E2F90E0EA3010F0C79601C0C096B7 +:101F10008D939D932F5F243149F74FBF8091E80047 +:101F2000877F8093E8006AE270E0CE0101960E940C +:101F3000D10B14C0AE014F5F5F4F6091F6010E945C +:101F4000180BBC01009709F440C09091E800977FFE +:101F50009093E80089819A810E94340C8091E80076 +:101F60008B778093E80031C0803879F58091E80064 +:101F7000877F8093E8008091ED018093F10080914C +:101F8000E8008E778093E8000E94CA0C1EC0811181 +:101F90001CC09091F4019230C0F48091E800877FDA +:101FA0008093E8009093ED010E94CA0C8091ED01AE +:101FB000811106C08091E30087FD02C081E001C06D +:101FC00084E08093F1010E94140A8091E80083FF6D +:101FD0000AC08091E800877F8093E8008091EB0041 +:101FE00080628093EB00AA960FB6F894DEBF0FBE16 +:101FF000CDBFDF91CF911F9108950895CF93809128 +:10200000F1018823A1F0C091E900CF709091EC001C +:10201000892F817090FD80E8C82B1092E900809193 +:10202000E80083FD0E94AC0ECF70C093E900CF9111 +:10203000089590937501809374010895E09174015F +:10204000F0917501309721F00190F081E02D099415 +:1020500080E00895E0917401F0917501309721F0CE +:102060000280F381E02D09940895E0917401F091CC +:102070007501309721F00480F581E02D09940895D1 +:1020800020917201309173018217930771F0909340 +:10209000730180937201E0917401F09175013097A2 +:1020A00021F00680F781E02D0994089520917001B8 +:1020B000309171018217930771F0909371018093B1 +:1020C0007001E0917401F0917501309721F0008466 +:1020D000F185E02D0994089508950C946C100E94E8 +:1020E000C61B0E943C030C94881C9F92AF92BF9227 +:1020F000CF92DF92EF92FF920F931F93CF93DF93D4 +:1021000000D000D000D0CDB7DEB70E9454030DE060 +:1021100010E0AA24A394B12C902E802F0E94420498 +:10212000980129583E4F6901F901F080F826A1F481 +:102130000150110988F78FEF89838A831B820E94DF +:10214000CF1B8160782F9D838C8349815A816B815D +:102150008D810E940C112FC09091DA0191FF04C073 +:102160008E830E9448048E8125E030E0A501022E76 +:1021700001C0440F0A94EAF7E42E4F21C1F02983ED +:102180009A828E2191E009F490E09B830E94CF1BFC +:102190008160782F9D838C8349815A816B818D81E9 +:1021A0000E940C11F6018081E826E08204C02150D3 +:1021B0003109E0F6BDCF0E946F1F109176010E9499 +:1021C0001E101817B9F00E941E10809376012696F3 +:1021D0000FB6F894DEBF0FBECDBFDF91CF911F9138 +:1021E0000F91FF90EF90DF90CF90BF90AF909F90B6 +:1021F0000C94170926960FB6F894DEBF0FBECDBF1C +:10220000DF91CF911F910F91FF90EF90DF90CF90D2 +:10221000BF90AF909F900895CF93DF93CDB7DEB777 +:102220002B970FB6F894DEBF0FBECDBF4F835887F4 +:1022300069877A878B87DE01119686E0FD0111920E +:102240008A95E9F785E0FE01379601900D928A950F +:10225000E1F749815A816B817C818D819E810E9449 +:1022600055172B960FB6F894DEBF0FBECDBFDF918A +:10227000CF910895CF93882309F4C2C0C82F823824 +:1022800059F40E941E1081FDBBC089E30E942F1AE1 +:102290000E94FC1A89E30CC0833879F40E941E1056 +:1022A00080FDAEC083E50E942F1A0E94FC1A83E5D0 +:1022B0000E94711ACF910C94FC1A843859F40E9430 +:1022C0001E1082FD9DC087E40E942F1A0E94FC1AF6 +:1022D00087E4EECF8CEF8C0F813A48F48C2F0E946C +:1022E000B22181118DC08C2F0E942F1AE3CF80E282 +:1022F0008C0F883048F4C77081E001C0880FCA9500 +:10230000EAF70E94B51AD6CF8BE58C0F833078F4AC +:10231000C53A29F0C63A31F083E890E005C081E87B +:1023200090E002C082E890E0CF910C94401088E5E4 +:102330008C0F833108F064C0C83A39F1C93A41F1D1 +:10234000CA3A49F1CB3A51F1CC3A59F1CD3A61F15F +:10235000C03B69F1CE3A71F1CF3A79F1C13B81F1DD +:10236000C23B89F1C33B91F1C43B99F1C53BA1F15B +:10237000C63BA9F1C73BB1F1C83BB9F1C93BC1F1BB +:10238000CA3BC9F180E090E038C082EE90E035C0F1 +:1023900089EE90E032C08AEE90E02FC085EB90E0AD +:1023A0002CC086EB90E029C087EB90E026C08CEC37 +:1023B00090E023C08DEC90E020C083E891E01DC048 +:1023C0008AE891E01AC082E991E017C084E991E0BF +:1023D00014C081E292E011C083E292E00EC084E278 +:1023E00092E00BC085E292E008C086E292E005C070 +:1023F00087E292E002C08AE292E0CF910C945610FC +:10240000CF910895882309F44BC0823859F40E9473 +:102410001E1081FF45C089E30E942F1A0E94FC1AFA +:1024200089E30CC0833871F40E941E1080FF38C00D +:1024300083E50E942F1A0E94FC1A83E50E94711AFC +:102440000C94FC1A843859F40E941E1082FF28C094 +:1024500087E40E942F1A0E94FC1A87E4EFCF9CEFBA +:10246000980F913A58F390E2980F983050F4877093 +:1024700091E001C0990F8A95EAF7892F0E94BB1A53 +:10248000DFCF9BE5980F933020F480E090E00C9430 +:102490004010885A833120F480E090E00C9456106C +:1024A0000895882321F00E94B51A0C94FC1A08950F +:1024B000882321F00E94BB1A0C94FC1A08957F9285 +:1024C0008F929F92AF92BF92CF92DF92EF92FF9244 +:1024D0000F931F93CF93DF931F92CDB7DEB77C018D +:1024E000C62E772EFC01058102950F701281111105 +:1024F0000E94D21A0E94281A882379F0112369F0C9 +:1025000080E28C0D883048F082E00E94111A0E940F +:10251000281A91E0D82ED92601C0D12CE72DE295BA +:10252000EF70F0E0E05AFF4F0C94E723872D807F97 +:10253000072D0F70882311F00295007F112389F079 +:10254000002309F490C180E28C0D883020F4802FA4 +:102550000E94B51A03C0802F0E94C51A0E94FC1A5F +:1025600082C18C2D0E940212002309F495C180E2E1 +:102570008C0D883020F4802F0E94BB1A03C0802F5E +:102580000E94CB1A0E94FC1A87C1972D907F872D3D +:102590008F70903211F08295807FCC2021F0F1E095 +:1025A000CF16B1F01EC0112349F0002309F414C165 +:1025B000013009F011C10E94E51A6EC1002319F023 +:1025C000013009F469C189830E94E81A89810AC12E +:1025D000112321F0023008F05FC1FEC001115CC17F +:1025E00001C1112321F0002309F4F6C03CC10023EE +:1025F00009F4F8C03EC1872D86958695837090E0DA +:10260000009719F0019761F047C1112321F08C2D3B +:10261000972D937002C080E090E00E9440103CC172 +:10262000112321F08C2D972D937002C080E090E053 +:102630000E94561031C18C2D112319F00E94771E73 +:1026400002C00E94DF1E0E94641F26C1872D837076 +:1026500009F052C0111120C18C2D8295869587708A +:10266000880F880F9C2D9F70892E912CA12CB12C46 +:10267000082E04C0880C991CAA1CBB1C0A94D2F713 +:10268000C4FE14C00FE010E020E030E0B901A80162 +:1026900004C0440F551F661F771F8A95D2F7CB01E0 +:1026A000BA01609570958095909503C060E070E0E8 +:1026B000CB01272D26952695237030E02230310559 +:1026C00069F02330310589F0682979298A299B2905 +:1026D0002130310571F00E949D18DEC068297929EA +:1026E0008A299B290E94B918D7C00E949D18C5014C +:1026F000B4010E948118D0C0112319F0872D817078 +:1027000001C08695882309F4C7C08C2D82958695D3 +:102710008770880F880F9C2D9F70892E912CA12C7B +:10272000B12C082E04C0880C991CAA1CBB1C0A944E +:10273000D2F7C4FE14C00FE010E020E030E0B90191 +:10274000A80104C0440F551F661F771F8A95D2F752 +:10275000CB01BA01609570958095909503C060E0BB +:1027600070E0CB01272D269526952370422F50E04F +:102770004230510569F04330510589F068297929C3 +:102780008A299B294130510571F00E94771984C034 +:10279000682979298A299B290E9493197DC00E9462 +:1027A0007719C501B4010E945B1976C08C2D90E0A9 +:1027B000FC01E05EF109E531F10508F050C0E05997 +:1027C000FF4F0C94E7230C2D0F70872D8F71112371 +:1027D00031F00E94F418802F0E9451125DC00E94B7 +:1027E0001519802F0E94581257C0112339F001117A +:1027F00053C0872D8F710E943A194EC0023008F0E5 +:102800004BC0F7CF112339F0872D8F710E94F41838 +:1028100043C01123C9F3872D8F710E9415193CC045 +:10282000112329F0872D8F710E94DF1835C00E9477 +:10283000D51832C0112351F0172D1F71812F0E941E +:10284000F41863E0812F0E94081A26C081E00E94DC +:10285000111A023008F182E00E94111A1DC01123E2 +:1028600031F0002389F28C2D0E943A1115C000230B +:1028700091F28C2D0E9402120FC0472D4F706C2DCB +:10288000C7010E941E050E94F91706C0472D4F7010 +:102890006C2DC7010E942606DD20F9F00E94041A63 +:1028A00080FD1BC0F70112820E94FE190E94F418DD +:1028B000C7010E947C140E94FE190F90DF91CF91F6 +:1028C0001F910F91FF90EF90DF90CF90BF90AF904E +:1028D0009F908F907F900C9415190F90DF91CF915E +:1028E0001F910F91FF90EF90DF90CF90BF90AF902E +:1028F0009F908F907F9008950F931F93CF93DF93B6 +:10290000EC01888199812B813C81232BB9F09F3F79 +:1029100011F48F3F99F0CE010E947E05882371F05B +:10292000688179818A810E94FA198C010E94AF190D +:102930000E947618B801CE010E945F12DF91CF91FC +:102940001F910F9108950E94D21A0E94E21A0E94CC +:10295000A71A0E94FC1A0E9415200E94641F80E0A2 +:1029600090E00E94401080E090E00C9456100E948D +:10297000C21A0C94A3140E94EF19292F22952F70CC +:1029800030E02C3031054CF42A3031056CF4225003 +:10299000310922303105A8F407C02C30310569F027 +:1029A0002F30310551F00DC0803F69F018F4803EA2 +:1029B00040F409C0843F29F406C093FB882780F9BE +:1029C000089580E0089581E00895CF93DF9300D0CB +:1029D00000D01F92CDB7DEB70F900F900F900F90E1 +:1029E0000F90DF91CF910895CF93DF9300D000D067 +:1029F00000D0CDB7DEB726960FB6F894DEBF0FBE77 +:102A0000CDBFDF91CF9108951F93CF93DF93C091F6 +:102A1000850116E080918601C81799F0D0E01C9FCF +:102A2000F0011D9FF00D1124E957FE4F40815181A7 +:102A300062817381848195810E94F4142196C7700C +:102A4000E9CFDF91CF911F9108954091B701509147 +:102A5000B8016091B9017091BA018091BB01909168 +:102A6000BC010C94F4148091BC0182958F7009F024 +:102A700054C08091B901882309F44FC08091850129 +:102A8000A09186016091B7017091B8014091BA019F +:102A90005091BB01B6E08A1709F43FC090E04115A0 +:102AA0005105C1F17F3F11F46F3FA1F1B89FF001D3 +:102AB000B99FF00D1124E957FE4F218172132AC0EE +:102AC0002081621327C02281211124C023813481F7 +:102AD0002417350710F421503109241B350B283CED +:102AE0003105C0F42091BC012F7020612093BC01FE +:102AF00026E0289FF001299FF00D1124E457FE4F96 +:102B000080818F708061808387EB91E00E947C14CC +:102B10000C94041501968770BECF0895CF92DF9272 +:102B2000EF92FF920F931F93CF93DF93CDB7DEB752 +:102B300062970FB6F894DEBF0FBECDBF8C0185E063 +:102B4000F801DE011D9601900D928A95E1F7D801FA +:102B50004C9111965C91119712966C911297139665 +:102B6000CD90DC9014973091B7017091B8018091AD +:102B7000BA019091BB01009709F46BC17F3F19F432 +:102B80003F3F09F466C1E090B901EE2009F4C0C0EE +:102B90002091BC01C816D90628F0F601E81BF90BF4 +:102BA000CF0104C0809590958C0D9D1DFF24F3945A +:102BB000883C910578F0F12C207F09F0C6C07C2D6F +:102BC000D98AC88A89890E94E51487EB91E00E941E +:102BD0007C14B1C0822F807F09F046C0751314C0E9 +:102BE000341312C0611110C02F7020612093BC01FA +:102BF0000E94251587EB91E00E947C148091BC0116 +:102C0000D80115968C932EC0CD2819F15F3F11F491 +:102C10004F3FF9F0F62E61111CC080918501209183 +:102C2000860136E0821709F45AC090E0389FF0011F +:102C3000399FF00D1124E957FE4F7181571306C0DB +:102C40007081471303C07281711103C001968770B0 +:102C5000E9CFF62E662309F418C18091BC0181608A +:102C60008093BC01F12C11C1751308C0341306C048 +:102C7000611104C08091BC01D801C3C04D875E873B +:102C80008D859E856A8B0E94BB146A898823E1F139 +:102C90006623D1F12091BC01822F82958F7090E044 +:102CA000029774F08091B7019091B80198878F8353 +:102CB0001986DB86CA862C87CE0107960E947C1473 +:102CC00086E0F801A7EBB1E001900D928A95E1F75B +:102CD0000E9433150E942515FF24F394D6C04D871A +:102CE0005E878D859E850E94EF19292F22952F7072 +:102CF00030E0223031050CF0BCC09F7009F0B6C046 +:102D0000805E883008F4C1C0C8010E947C14E4CF02 +:102D1000C816D90608F453C0F601E81BF90BCF0119 +:102D2000883C910508F450C0F12C7C2DD98AC88AC2 +:102D300089890E94E514E7EBF1E086E0DF011D924E +:102D40008A95E9F70E942515A0C0751314C03413A5 +:102D500012C0611110C08091BC01F8018583C801C7 +:102D60000E947C1486E0E7EBF1E0DF011D928A957A +:102D7000E9F7FE2C8AC04D875E878D859E856A8B1C +:102D80000E94BB146A89882309F4BECF662309F424 +:102D9000BBCF2091BC01822F82958F7090E002976B +:102DA0000CF48ECF8091B7019091B8019A838983FA +:102DB0001B82DD82CC822E83CE0101967FCF80954F +:102DC00090958C0D9D1DACCFF62E662309F49CCFFB +:102DD00075132EC034132CC02091BC0120FD1FC0E0 +:102DE000822F82958F70D9F0D80115962C93159764 +:102DF0008F3049F08F5F982F9295907F822F8F7040 +:102E0000892B15968C93C8010E947C1486E0F801EA +:102E1000A7EBB1E001900D928A95E1F793CF86E0A0 +:102E2000F801A7EBB1E001900D928A95E1F72DC072 +:102E30004D875E878D859E850E94BB14811140CF92 +:102E40008091BC0181608093BC01C8010E947C1408 +:102E50001CC0662309F458CF4D875E878D859E85FB +:102E60000E94BB14882309F44FCF2ACF811148CF89 +:102E70000CC0243031050CF047CF9F7009F440CFCF +:102E8000F8019581907F09F03BCF8F2D62960FB6A8 +:102E9000F894DEBF0FBECDBFDF91CF911F910F9190 +:102EA000FF90EF90DF90CF9008951F93CF93DF9323 +:102EB000CDB7DEB72C970FB6F894DEBF0FBECDBFEF +:102EC0004F83588769877A878B879C87CE010796BF +:102ED0000E948E15882369F08F8198852A853B850D +:102EE000232BF1F19F3F09F063C08F3F09F060C0D1 +:102EF00037C086E0FE013796DE01119601900D92F3 +:102F00008A95E1F76F817885EA85FB85309741F1F5 +:102F10007F3F11F46F3F21F12091860130E0C9011C +:102F20000196877099274091850150E08417950795 +:102F300009F447C069837A83FD83EC8396E0929F0E +:102F4000D001939FB00D1124A957BE4FFE013196B9 +:102F500001900D929A95E1F7809386010E940415E5 +:102F600016E080918501909186018917C1F1189F23 +:102F7000C001112489579E4F0E948E15882379F134 +:102F8000E09185011E9FF0011124E957FE4F408119 +:102F9000518162817381848195810E94F4148091B2 +:102FA000850190E001968770992780938501D9CF9C +:102FB0004F81588569857A858B859C850E94F4149C +:102FC000CFCF0E94B7141092860110928501E7EBD3 +:102FD000F1E086E0DF011D928A95E9F7C1CF2C96DA +:102FE0000FB6F894DEBF0FBECDBFDF91CF911F911A +:102FF0000895EF92FF920F931F93CF93DF938C016D +:10300000009709F46CC0F12CEE24E394E8012196BA +:10301000F8018491843740F4843008F051C0813045 +:1030200081F0823019F15BC0853709F444C0A8F102 +:103030009CE7980F903708F052C08F770E940212D9 +:1030400041C00E5F1F4FFE01C49180E28C0F88309B +:1030500048F4C7708E2D01C0880FCA95EAF70E9408 +:10306000D51A14C08C2F0E943A112DC00E5F1F4F2D +:10307000FE01C49180E28C0F883058F4C7708E2D09 +:1030800001C0880FCA95EAF70E94DB1A0E94FC1A59 +:103090001AC08C2F0E94021216C00E5F1F4FFE0135 +:1030A000C491CC2381F08FE99FE00197F1F700C034 +:1030B0000000C150F6CF0E5F1F4FFE01F49003C019 +:1030C0000E943A118E018F2D882309F49FCFEFE9DA +:1030D000FFE03197F1F700C000008150F5CFDF919C +:1030E000CF911F910F91FF90EF90089508956093F5 +:1030F000C1017093C2018093C3019093C4010C94E9 +:10310000A3140F931F930091C1011091C20120914C +:10311000C3013091C401DC01CB01802B912BA22B88 +:10312000B32B8093C1019093C201A093C301B093CC +:10313000C4011F910F910C94A3140F931F9300913E +:10314000C1011091C2012091C3013091C401DC0181 +:10315000CB0180239123A223B3238093C1019093B9 +:10316000C201A093C301B093C4011F910F910C94AD +:10317000A3140F931F930091C1011091C2012091DC +:10318000C3013091C401DC01CB0180279127A22724 +:10319000B3278093C1019093C201A093C301B09360 +:1031A000C4011F910F910C94A3141092BD011092B1 +:1031B000BE011092BF011092C0010C94A31441E013 +:1031C00050E060E070E004C0440F551F661F771F99 +:1031D0008A95D2F74093BD015093BE016093BF0121 +:1031E0007093C0010C94A31441E050E060E070E0E3 +:1031F00004C0440F551F661F771F8A95D2F7809130 +:10320000BD019091BE01A091BF01B091C001482BBA +:10321000592B6A2B7B2B4093BD015093BE016093C9 +:10322000BF017093C0010C94A31441E050E060E032 +:1032300070E004C0440F551F661F771F8A95D2F7B0 +:1032400040955095609570958091BD019091BE011B +:10325000A091BF01B091C001482359236A237B2369 +:103260004093BD015093BE016093BF017093C001B4 +:103270000C94A31441E050E060E070E004C0440FFF +:10328000551F661F771F8A95D2F78091BD019091D7 +:10329000BE01A091BF01B091C001482759276A27FC +:1032A0007B274093BD015093BE016093BF01709393 +:1032B000C0010C94A3140F931F930091BD011091B2 +:1032C000BE012091BF013091C001DC01CB01802BF8 +:1032D000912BA22BB32B8093BD019093BE01A093A1 +:1032E000BF01B093C0011F910F910C94A3140F93D1 +:1032F0001F930091BD011091BE012091BF0130913B +:10330000C001DC01CB0180239123A223B32380934E +:10331000BD019093BE01A093BF01B093C0011F9166 +:103320000F910C94A3140F931F930091BD01109162 +:10333000BE012091BF013091C001DC01CB0180278B +:103340009127A227B3278093BD019093BE01A0933C +:10335000BF01B093C0011F910F910C94A314089565 +:10336000CF92DF92EF92FF920F931F93CF93DF9351 +:103370008C01C090C101D090C201E090C301F090D7 +:10338000C4018091BD019091BE01A091BF01B09197 +:10339000C001C82AD92AEA2AFB2ACFE1D0E0D70106 +:1033A000C6010C2E04C0B695A795979587950A94EB +:1033B000D2F780FF06C0B8018C2F0E947C080197CD +:1033C00021F4219760F780E001C08C2FDF91CF912D +:1033D0001F910F91FF90EF90DF90CF900895CF93C2 +:1033E000DF93EC010E94B019BE010E947C08DF91BE +:1033F000CF910895CB010E94EF1908958091C501E6 +:1034000085958595859508958091C5018770089566 +:1034100098E0899F90011124262B2093C5010C94DC +:10342000F4182091C501809582238093C501982FBF +:10343000977069F430E0482F552747FD50952417C1 +:10344000350729F08595859585950C94151908956E +:103450009091C501977081E009F480E00895909102 +:103460000C01992321F090910D01911109C0209137 +:103470000E0130910F01F90132969FEF40E01FC01D +:10348000982F9695969596959F3050F5E0910E0160 +:10349000F0910F01E90FF11D877021E030E0A901E3 +:1034A00002C0440F551F8A95E2F7CA019181892B0A +:1034B000818308959F3F39F04F5F4E3041F0519125 +:1034C0005813F8CF0DC05111F7CF942FF5CF9F3F70 +:1034D00039F0F901E90FF11D97FDFA9582830895FE +:1034E000089590910C01992321F090910D01911173 +:1034F00009C020910E0130910F01F9013296205F31 +:103500003F4F1FC0982F9695969596959F30F0F453 +:10351000E0910E01F0910F01E90FF11D877021E09C +:1035200030E0A90102C0440F551F8A95E2F7CA0195 +:10353000809591818923818308953196E217F3075D +:1035400029F090819813F9CF1082F7CF089581E088 +:1035500090E0E0910E01F0910F01E80FF91F108249 +:10356000019680319105A9F708959091D901892B91 +:103570008093D901089580959091D90189238093F2 +:10358000D90108951092D90108959091D801892BFD +:103590008093D801089580959091D80189238093D4 +:1035A000D80108951092D80108959091D701892BE0 +:1035B0008093D701089580959091D70189238093B6 +:1035C000D70108951092D70108958093C6010895F8 +:1035D0001092C601089580910E0190910F01FC0197 +:1035E00031969C01205F3F4F80E0919191118F5F58 +:1035F000E217F307D1F70895E0910E01F0910F0162 +:103600008091D9018083E0910E01F0910F019081AA +:103610008091D801892B8083E0910E01F0910F01F8 +:1036200090818091D701892B80838091C601882366 +:1036300061F0E0910E01F0910F019081892B808360 +:103640000E94EB1A81111092C60180910E01909197 +:103650000F010C942A1020E0009739F0AC01415082 +:103660005109842395232F5FF7CF822F0895CF929E +:10367000DF92EF92FF926C01EE24FF24C114D1047B +:10368000E104F10421F0C701B60120E101C020E00E +:10369000C72ED82EE92EFF24C114D104E104F10471 +:1036A00019F0285FC701B6016B017C0154E0F69464 +:1036B000E794D794C7945A95D1F7C114D104E10483 +:1036C000F10419F02C5FC701B6016B017C0142E0E7 +:1036D000F694E794D794C7944A95D1F7C114D104CE +:1036E000E104F10419F02E5FC701B601DC01CB0142 +:1036F000B695A79597958795892B8A2B8B2B09F0E3 +:103700002F5F822FFF90EF90DF90CF9008958091F0 +:10371000F101843021F11092DB0120E488E190E096 +:103720000FB6F894A895809360000FBE20936000B8 +:1037300080E00E94170983B7817F846083BF83B7CD +:10374000816083BF7894889583B78E7F83BF88E13B +:103750000FB6F89480936000109260000FBE089539 +:10376000089508950E94B01B0E9454030E94B11B4B +:103770000E94490491E0811101C090E0892F0895D1 +:103780000E94B7140E941E100C94170982E084BD99 +:1037900093E095BD9AEF97BD80936E0008952FB783 +:1037A000F8948091DC019091DD01A091DE01B0914F +:1037B000DF012FBF0895CF92DF92EF92FF920F9318 +:1037C0001F932FB7F8944091DC015091DD01609177 +:1037D000DE017091DF012FBF6A017B01EE24FF241F +:1037E0008C0120E030E0C016D106E206F30610F4AA +:1037F000415051099A01281B390BC9011F910F91A2 +:10380000FF90EF90DF90CF9008951F920F920FB628 +:103810000F9211248F939F93AF93BF938091DC01FC +:103820009091DD01A091DE01B091DF010196A11D13 +:10383000B11D8093DC019093DD01A093DE01B09374 +:10384000DF01BF91AF919F918F910F900FBE0F90AD +:103850001F9018950E941B0DF8942FEF87EA91E6B0 +:10386000215080409040E1F700C0000087E090EBDD +:10387000DC018093FB019093FC01A093FD01B093C8 +:10388000FE019CE088E10FB6F894A8958093600053 +:103890000FBE90936000FFCFEF92FF920F931F93A4 +:1038A000CF93DF93D82FCDE08C2F0E94420405E008 +:1038B00010E0E82EF12CC701002E02C095958795E7 +:1038C0000A94E2F780FF09C0602F7C2F80E00E94FD +:1038D0002706D81302C081E006C00150110958F72D +:1038E000C15010F780E0DF91CF911F910F91FF90B1 +:1038F000EF900895CF93C82F8CE20E944C1C882330 +:1039000021F08C2FCF910C944C1C80E0CF91089526 +:10391000CF930E94CF1D811102C00E94B51DC5E644 +:10392000C15049F00E9454038FE39CE90197F1F7DD +:1039300000C00000F5CF89E20E947A1C811113C1FA +:103940008AE20E947A1C81110E94B51D85E00E94C6 +:103950007A1C81110E942A1C0E94DA1D8093DA01D0 +:1039600087E00E947A1C8823A9F18BE10E947A1CCF +:10397000882351F08091DA0181FB222720F991E020 +:10398000922790FB81F90EC08EE00E947A1C88235A +:1039900061F08091DA0182FB222720F991E09227E1 +:1039A00090FB82F98093DA0115C080E10E947A1CB5 +:1039B0009091DA01882341F093FB222720F981E0DE +:1039C000822780FB93F904C0892F809580FB90F9B2 +:1039D0009093DA018091DA010E94DE1D0E94EC1DB5 +:1039E0008093FA0180EE0E947A1C882341F0809136 +:1039F000FA01982F909590FB80F98093FA0189E362 +:103A00000E947A1C882359F08091FA0181FB2227B9 +:103A100020F991E0922790FB81F98093FA0182EEE0 +:103A20000E947A1C882359F08091FA0182FB222798 +:103A300020F991E0922790FB82F98093FA0186EEBB +:103A40000E947A1C882359F08091FA0183FB222777 +:103A500020F991E0922790FB83F98093FA0183EE9D +:103A60000E947A1C882359F08091FA0184FB222756 +:103A700020F991E0922790FB84F98093FA0185E385 +:103A80000E947A1C882359F08091FA0185FB222735 +:103A900020F991E0922790FB85F98093FA0181E368 +:103AA0000E947A1C882359F08091FA0186FB222714 +:103AB00020F991E0922790FB86F98093FA0181E149 +:103AC0000E947A1C882359F08091FA0187FB2227F3 +:103AD00020F991E0922790FB87F98093FA01809179 +:103AE000FA010E94F01D8091FA0187FB882780F976 +:103AF00080930D0187E20E947A1CC82F8EE10E94FC +:103B00007A1C8111C2608FE10E947A1C8111C4600D +:103B100080E20E947A1C8111C86081E20E947A1CB6 +:103B20008111C06182E20E947A1C8111C06283E22D +:103B30000E947A1C8111C06484E20E947A1C88234E +:103B400011F0C06802C0CC2329F08C2F0E94E71D21 +:103B50006C2F03C00E94E31D682F70E080E090E0AE +:103B6000CF910C947718CF9108956DEE7EEF80E0A1 +:103B700090E00E94212460E082E090E00E940F2407 +:103B800060E083E090E00E940F2460E084E090E039 +:103B90000E940F2460E085E090E00C940F2480E008 +:103BA00090E00E94092421E08D3E9E4F09F020E024 +:103BB000822F089582E090E00C940124682F82E027 +:103BC00090E00C940F2483E090E00C940124682F83 +:103BD00083E090E00C940F2484E090E00C940124A6 +:103BE000682F84E090E00C940F248091E20180FF24 +:103BF0000BC06091130185E0689FB0011124759599 +:103C00006795759567952BC081FF09C06091130179 +:103C100085E0689FB00111247595679520C082FFEB +:103C200007C06091130185E0689FB001112417C09F +:103C30009091E3019923D1F060911201961788F7D2 +:103C40002091130185E0289F90011124929FA001EB +:103C5000939F500D112470E0CA010E94D323603855 +:103C6000710540F46115710539F002C065E070E03E +:103C7000862F08958FE7089581E008958091E201ED +:103C800080FF08C06091110170E07595679575958A +:103C9000679521C081FF06C06091110170E07595A4 +:103CA000679519C082FF04C06091110170E010C0D7 +:103CB0009091E3019923C1F0609110019617A0F74C +:103CC00080911101899FC001112470E00E94D323CB +:103CD0006038710528F46115710521F0862F08956B +:103CE0008FE7089581E0089561E070E0F4CF803FB0 +:103CF00021F40E94F51D819504C0813F29F40E94A2 +:103D0000F51D8093E6010895823F21F40E94F51D80 +:103D1000819504C0833F29F40E94F51D8093E5013D +:103D20000895893F19F40E943E1E05C08A3F31F470 +:103D30000E943E1E81958093E70108958B3F21F4F8 +:103D40000E943E1E819504C08C3F29F40E943E1EB5 +:103D50008093E8010895843F21F48091E40181601B +:103D600017C0853F21F48091E401826011C0863F35 +:103D700021F48091E40184600BC0873F21F480919D +:103D8000E401886005C0883F31F48091E4018061DE +:103D90008093E40108958D3F21F48091E2018160D8 +:103DA0000BC08E3F21F48091E201826005C08F3FFD +:103DB00029F48091E20184608093E2010895803FBC +:103DC00039F48091E60187FF6CC01092E60169C06A +:103DD000813F29F48091E6011816BCF362C09091EE +:103DE000E501823F29F497FF5CC01092E50159C0BC +:103DF000833F19F41916CCF354C0893F41F48091E4 +:103E0000E70118160CF04DC01092E7014AC08A3F36 +:103E100029F48091E70187FF44C0F6CF8B3F39F446 +:103E20008091E80187FF3DC01092E8013AC08C3FC5 +:103E300029F48091E8011816BCF333C0843F21F4C3 +:103E40008091E4018E7F17C0853F21F48091E401C9 +:103E50008D7F11C0863F21F48091E4018B7F0BC0E0 +:103E6000873F21F48091E401877F05C0883F31F4CA +:103E70008091E4018F7E8093E40113C08D3F21F493 +:103E80008091E2018E7F0BC08E3F21F48091E20190 +:103E90008D7F05C08F3F29F48091E2018B7F809355 +:103EA000E2018091E50181110EC08091E60181114E +:103EB0000AC08091E701811106C08091E80181115B +:103EC00002C01092E301089584EE91E00E94351043 +:103ED0000E94CF1B9093E1018093E00108951F930E +:103EE000CF93DF938091E0019091E1010E94DB1B71 +:103EF000AC019091E301992321F02091140130E06D +:103F000006C0209115018AE0289F900111244217D4 +:103F1000530708F486C08091E501C091E601D09175 +:103F2000E7011091E801811107C0C11176C0D111DC +:103F300074C0111172C075C09F3F19F09F5F9093BC +:103F4000E301181624F40E94F51D8093E501809189 +:103F5000E50187FF05C00E94F51D81958093E5016D +:103F60001C1624F40E94F51D8093E6018091E60161 +:103F700087FF05C00E94F51D81958093E601609141 +:103F8000E501662339F1C091E601CC2319F17727C9 +:103F900067FD7095872F972F0E94E42223E333E378 +:103FA00043E35FE30E9448230E94B1226093E5014E +:103FB0006C2F772767FD7095872F972F0E94E4223B +:103FC00023E333E343E35FE30E9448230E94B122EB +:103FD0006093E6011D1624F40E943E1E8093E701C3 +:103FE0008091E70187FF05C00E943E1E8195809366 +:103FF000E701111624F40E943E1E8093E80180918F +:10400000E80187FF05C00E943E1E81958093E8016C +:10401000DF91CF911F910C94641F9F3F09F08ECFC9 +:1040200096CFDF91CF911F910895E4EEF1E085E006 +:10403000DF011D928A95E9F71092E3011092E201E7 +:104040000895833081F128F4813059F08230D1F025 +:104050000895853009F449C0B8F1863009F456C096 +:10406000089580911501262F30E0280F311D2F3F34 +:10407000310524F4680F6093150108958FEF809344 +:104080001501089580911401262F30E0280F311D6D +:104090002F3F310524F4680F6093140108958FEFCA +:1040A00080931401089580911301262F30E0280F8A +:1040B000311D2F3F310524F4680F609313010895DB +:1040C0008FEF80931301089580911201262F30E025 +:1040D000280F311D2F3F310524F4680F6093120122 +:1040E00008958FEF80931201089580911101262F7A +:1040F00030E0280F311D2F3F310524F4680F609305 +:10410000110108958FEF809311010895809110019E +:10411000262F30E0280F311D2F3F310524F4680F82 +:104120006093100108958FEF8093100108958330FC +:1041300011F128F4813049F0823091F008958530F2 +:1041400081F120F18630C1F1089580911501681741 +:1041500020F4861B8093150108951092150108958F +:1041600080911401681720F4861B80931401089530 +:1041700010921401089580911301681720F4861B92 +:1041800080931301089510921301089580911201F4 +:10419000681720F4861B8093120108951092120173 +:1041A000089580911101681720F4861B80931101F6 +:1041B000089510921101089580911001681720F45C +:1041C000861B8093100108951092100108950F939B +:1041D0001F938D3109F46BC008F03FC08E3009F495 +:1041E0007FC0C0F4873009F469C068F4863009F0F4 +:1041F000B1C08091DA01817F8E7F8093DA0181E006 +:104200008093EA01A8C0883009F4A2C08B3009F479 +:104210009FC0A0C0863109F49BC078F4803109F4B6 +:1042200072C0813109F096C00E94B71490910D01BF +:1042300081E0892780930D018BC0893109F488C002 +:104240008B3109F087C08091DA0181FB222720F9A8 +:1042500091E0922790FB81F94CC0853309F470C03E +:1042600048F4873209F46CC008F459C0893209F463 +:1042700067C070C0833438F48A3308F04EC0883386 +:1042800009F466C067C0833409F45AC0883409F061 +:1042900061C00E94B7140FEF13ED20E301501040EE +:1042A0002040E1F700C000000E942A1C51C00E947B +:1042B0006B220E941E100E9417094AC09091DA01D9 +:1042C000892F8095817080FB90F929F09660986025 +:1042D0009093DA0140C0997F977F9093DA0138C0BC +:1042E0008091DA0182FB222720F991E0922790FB4E +:1042F00082F98093DA01992359F18091DA01816082 +:104300008093DA0125C08091DA0183FB222720F90E +:1043100091E0922790FB83F9ECCF895301C08D5136 +:1043200041E050E060E070E08A019B0104C0000FB2 +:10433000111F221F331F8A95D2F7C901B80104C08B +:1043400061E070E080E090E00E9477180E94B7146E +:1043500081E001C080E01F910F91089580E00895F1 +:1043600080E00895CF93C82F8091EA01813079F0E1 +:1043700018F08230E9F187C0E0910E01F0910F0151 +:104380008081813169F0823209F07FC009C0E091FB +:104390000E01F0910F018081813111F0823261F4C0 +:1043A0008C2F0E94AE21811104C08C2F0E94E72027 +:1043B0001DC081E090E01AC08C2F0E94B0218111B5 +:1043C00014C0C43179F048F4CB3079F0C03109F031 +:1043D00060C082E08093EA0108C0C93219F0C83396 +:1043E00021F057C01092EA0154C081E0817053C09F +:1043F000C93289F118F5C43171F1A8F4C73009F058 +:1044000046C08AE08093150194E19093140193E0F3 +:10441000909313018093120188E08093110188E248 +:104420008093100134C0CE51C63088F5EC2FF0E0F7 +:10443000E65DFE4F80818093E90129C0CE34E9F02A +:1044400020F4CB3421F56AE013C0C13579F0C235D0 +:10445000F1F461E00DC08091E901882319F0109218 +:10446000E90115C081E08093EA0115C061E006C052 +:104470008091E9010E9421200AC06AE08091E9014F +:104480000E94972004C01092EA0180E004C081E0FD +:1044900002C080E0ABCFCF910895E1E8F0E08081E9 +:1044A000886080838081816080838FB7F89493E0F7 +:1044B0009093890090ED909388008FBF0895EFE668 +:1044C000F0E08081826080830895EFE6F0E08081F3 +:1044D0008D7F80830895EFE6F0E0908182E0892768 +:1044E000808308951F920F920FB60F9211242F937D +:1044F0003F934F935F936F937F938F939F93AF936C +:10450000BF93EF93FF938091EB019091EC010196A3 +:104510009093EC018093EB01811103C082E00E9433 +:104520001709E091EC01E695E695F0E0EA53FB4FC0 +:10453000E4918091EB018E1303C080E00E94170983 +:10454000FF91EF91BF91AF919F918F917F916F916B +:104550005F914F913F912F910F900FBE0F901F9041 +:10456000189504D06894B1118DC0089570D088F06A +:104570009F5790F0B92F9927B751A0F0D1F0660F4F +:10458000771F881F991F1AF0BA95C9F712C0B1306A +:1045900081F077D0B1E0089574C0672F782F882715 +:1045A000B85F39F0B93FCCF3869577956795B395A9 +:1045B000D9F73EF490958095709561957F4F8F4F18 +:1045C0009F4F0895E89409C097FB3EF4909580951D +:1045D000709561957F4F8F4F9F4F9923A9F0F92FC9 +:1045E00096E9BB279395F695879577956795B79547 +:1045F000F111F8CFFAF4BB0F11F460FF1BC06F5F2D +:104600007F4F8F4F9F4F16C0882311F096E911C03E +:10461000772321F09EE8872F762F05C0662371F05F +:1046200096E8862F70E060E02AF09A95660F771F73 +:10463000881FDAF7880F9695879597F9089557FDA3 +:104640009058440F551F59F05F3F71F04795880F00 +:1046500097FB991F61F09F3F79F087950895121697 +:1046600013061406551FF2CF4695F1DF08C0161643 +:1046700017061806991FF1CF8695710561050894F4 +:104680000895E894BB2766277727CB0197F908950B +:104690000BD078C069D028F06ED018F0952309F0BF +:1046A0005AC05FC01124EECFCADFA0F3959FD1F3AB +:1046B000950F50E0551F629FF001729FBB27F00DD0 +:1046C000B11D639FAA27F00DB11DAA1F649F662725 +:1046D000B00DA11D661F829F2227B00DA11D621F74 +:1046E000739FB00DA11D621F839FA00D611D221F2E +:1046F000749F3327A00D611D231F849F600D211D12 +:10470000822F762F6A2F11249F5750408AF0E1F0B4 +:1047100088234AF0EE0FFF1FBB1F661F771F881FFD +:1047200091505040A9F79E3F510570F014C0AACF98 +:104730005F3FECF3983EDCF3869577956795B795E8 +:10474000F795E7959F5FC1F7FE2B880F911D969512 +:10475000879597F9089597F99F6780E870E060E082 +:1047600008959FEF80EC089500240A94161617060A +:1047700018060906089500240A9412161306140652 +:1047800005060895092E0394000C11F4882352F0B5 +:10479000BB0F40F4BF2B11F460FF04C06F5F7F4F6D +:1047A0008F4F9F4F089597FB072E16F4009407D064 +:1047B00077FD09D00E94ED2307FC05D03EF49095CB +:1047C00081959F4F0895709561957F4F0895EE0FE5 +:1047D000FF1F0590F491E02D0994AA1BBB1B51E12A +:1047E00007C0AA1FBB1FA617B70710F0A61BB70B61 +:1047F000881F991F5A95A9F780959095BC01CD0106 +:104800000895F999FECF92BD81BDF89A992780B598 +:104810000895A8E1B0E042E050E00C942924262F4E +:10482000F999FECF92BD81BDF89A019700B40216A6 +:1048300039F01FBA20BD0FB6F894FA9AF99A0FBE54 +:1048400008950196272F0E9410240C940F24DC0158 +:10485000CB01FC01F999FECF06C0F2BDE1BDF89A8B +:10486000319600B40D9241505040B8F70895F89435 +:02487000FFCF78 +:1048720002201909A709840950091C090101C7016D +:1048820028080A03140A3F4D363987043A040404FF +:10489200CB035E0377039003A90301020304050619 +:0448A20007080900FA +:00000001FF diff --git a/keyboards/ergodox_ez/keymaps/plums/keymap.c b/keyboards/ergodox_ez/keymaps/plums/keymap.c new file mode 100644 index 0000000000..46eb2e42b1 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/plums/keymap.c @@ -0,0 +1,229 @@ +#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 + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | ` | 1 | 2 | 3 | 4 | 5 | F5 | |Hypr+M| 6 | 7 | 8 | 9 | 0 | Mute | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Tab | Q | W | E | R | T | [ | | ] | Y | U | I | O | P | \ | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | LGui | A | S | D | F | G |------| |------| H | J | K | L | ; | ' | + * |--------+------+------+------+------+------| SYMB | | MDIA |------+------+------+------+------+--------| + * | LShift | Z | X | C | V | B | | | | N | M | , | . | / | RShift | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * |Ca/Ctl| { | ( | | | : | | - | = | ) | } |C`/Ctl| + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | LGA | LAlt | | RAlt | Play | + * ,------|------|------| |------+------+------. + * | | | Home | | PgUp | | | + * |Backsp| Esc |------| |------|Enter |Space | + * |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, KC_F5, + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_LBRC, + KC_LGUI, KC_A, KC_S, KC_D, KC_F, KC_G, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, TG(SYMB), + F(0), KC_LCBR, KC_LPRN,KC_PIPE,KC_COLN, + LGUI(KC_LALT), KC_LALT, + KC_HOME, + KC_BSPC, KC_ESC, KC_END, + // right hand + HYPR(KC_M), KC_6, KC_7, KC_8, KC_9, KC_0, KC_MUTE, + KC_RBRC, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, + KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + TG(MDIA), KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, + KC_MINS, KC_EQL, KC_RPRN, KC_RCBR, F(1), + KC_RALT, KC_MPLY, + KC_PGUP, + KC_PGDN, KC_ENT, KC_SPC + ), +/* Keymap 1: Symbol Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | ! | @ | { | } | | | | | | | | | | | F12 | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | # | $ | ( | ) | ` |------| |------| Left | Down | Up | Right| | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | % | ^ | [ | ] | ~ | | | | | | | | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// 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_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_F12, + KC_LEFT, KC_DOWN, KC_UP, 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, KC_TRNS +), +/* Keymap 2: Media and mouse keys + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | |------| |------|MsLeft|MsDown| MsUp |MsRght| | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | | | | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * |VolUp |VolDn | Prev | Next | | | LClk | RClk | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// 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_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_VOLU, KC_VOLD, KC_MPRV, KC_MNXT, 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_MS_L, KC_MS_D, KC_MS_U, KC_MS_R, 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, + KC_TRNS, KC_TRNS, KC_WBAK +), +}; + +const uint16_t PROGMEM fn_actions[] = { + [0] = ACTION_MACRO_TAP(0), // FN0 - Ctrl + a (For screen/tmux) + [1] = ACTION_MACRO_TAP(1) // FN1 - Ctrl + ` (For quake style console) +}; + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) // this is the function signature -- just copy/paste it into your keymap file as it is. +{ + switch(id) { + case 0: + if (record->event.pressed) { + if (record->tap.count) { + if (record->tap.interrupted) { + record->tap.count = 0; + // hold press action + register_code(KC_LCTL); + } else { + // tap press action + return MACRO( D(LCTL), T(A), U(LCTL), END ); + } + } else { + // hold press action + register_code(KC_LCTL); + } + } else { + if (record->tap.count) { + // tap release action + } else { + // hold release action + unregister_code(KC_LCTL); + } + record->tap.count = 0; + } + break; + case 1: + if (record->event.pressed) { + if (record->tap.count) { + if (record->tap.interrupted) { + record->tap.count = 0; + // hold press action + register_code(KC_RCTL); + } else { + // tap press action + return MACRO( DOWN(KC_RCTL), TYPE(KC_GRV), UP(KC_RCTL), END ); + } + } else { + // hold press action + register_code(KC_RCTL); + } + } else { + if (record->tap.count) { + // tap release action + } else { + // hold release action + unregister_code(KC_RCTL); + } + record->tap.count = 0; + } + 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/keyboards/ergodox_ez/keymaps/plums/plums.png b/keyboards/ergodox_ez/keymaps/plums/plums.png new file mode 100644 index 0000000000..2f127c4cab Binary files /dev/null and b/keyboards/ergodox_ez/keymaps/plums/plums.png differ diff --git a/keyboards/ergodox_ez/keymaps/plums/readme.md b/keyboards/ergodox_ez/keymaps/plums/readme.md new file mode 100644 index 0000000000..b72329eef7 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/plums/readme.md @@ -0,0 +1,11 @@ +# ErgoDox EZ Plums Configuration + +## Changelog + +* Apr 23, 2016 (v0.1.0): + * Shortcut for iTerm2 quake style dropdown (Ctrl+`) + * Shortcut for screen/tmux (Ctrl+a) + * Shortcut for shush (Hyper+m) + * Combo modifier for LGUI + LALT + +![Plums](plums.png) diff --git a/keyboards/ergodox_ez/keymaps/romanzolotarev-norman-osx/compiled.hex b/keyboards/ergodox_ez/keymaps/romanzolotarev-norman-osx/compiled.hex new file mode 100644 index 0000000000..74449a9557 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/romanzolotarev-norman-osx/compiled.hex @@ -0,0 +1,1098 @@ +:100000000C94D1010C9415020C9415020C94150259 +:100010000C9415020C9415020C9415020C94150204 +:100020000C9415020C9415020C941E0D0C94F00DFA +:100030000C9415020C9415020C9415020C941502E4 +:100040000C9415020C945A200C9415020C94150271 +:100050000C9415020C943C1B0C9415020C94150284 +:100060000C9415020C9415020C9415020C941502B4 +:100070000C9415020C9415020C9415020C941502A4 +:100080000C9415020C9415020C9415020C94150294 +:100090000C9415020C9415020C9415020C94150284 +:1000A0000C9415020C9415020C9415025D0E7F0E33 +:1000B0006D0F7F0E6D0FC40EE70E6D0F3C0F4F0FCF +:1000C0001E121E124D124D128312A312D413D413FA +:1000D000AE12D4135E135E13C513D413D413CE1310 +:1000E0006B136B136B136B136B136B136B136B1320 +:1000F0006B136B136B136B136B136B136B136B1310 +:100100007D138A1391139813A21335002B002961D4 +:10011000E1003A0000001E00140004001D003B0036 +:10012000E2001F001A0016001B003C00296120009D +:100130000700080006003D002A0021000900170002 +:100140001900E300A90022000E000A0005000000CB +:10015000AA003E00310000002F000000A8003F0070 +:100160000000000030000000AE0023000D001C0065 +:1001700013000000AB002400180011001000E7007D +:10018000AC00250015000C00360050002C002600A5 +:100190000F001200370051003400270033000B001D +:1001A00038005200E6002E002D002800E5004F0028 +:1001B000000016034500720067006F0044006F00E6 +:1001C0007800200045005A00000016034500720028 +:1001D00067006F0044006F007800200045005A005F +:1001E00000000403090409026D00040100A0FA09DB +:1001F0000400000103010100092111010001224056 +:10020000000705810308000A090401000103010237 +:1002100000092111010001224D0007058203080099 +:100220000A09040200010300000009211101000174 +:100230002236000705830308000A090403000103AE +:100240000000000921110100012239000705840383 +:100250001000011201100100000008EDFE0713015B +:10026000000102000105010906A101050719E029A5 +:10027000E715002501950875018102050819012976 +:100280000595057501910295017503910105071901 +:1002900000297715002501957875018102C00501B7 +:1002A0000980A101850216010026B7001A01002A63 +:1002B000B700751095018100C0050C0901A10185E9 +:1002C00003160100269C021A01002A9C0275109553 +:1002D000018100C005010902A1010901A100050970 +:1002E0001901290515002501950575018102950162 +:1002F000750381010501093009311581257F9502BA +:100300007508810609381581257F950175088106D4 +:10031000050C0A38021581257F950175088106C0F4 +:10032000C005010906A101050719E029E715002507 +:10033000019508750181029501750881010508196B +:100340000129059505750191029501750391010536 +:1003500007190029FF150026FF0095067508810082 +:10036000C0000000000000000000000001020406C0 +:100370000A0F17202C3A4A5D71879DB3C7DAE9F559 +:10038000FCFFFCF5E9DAC7B39D87715D4A3A2C2082 +:10039000170F0A0604020100000000000000000020 +:1003A000000011241FBECFEFDAE0DEBFCDBF04B6E0 +:1003B00003FE24C08091FD019091FE01A091FF01F8 +:1003C000B09100028730904BA740B04BB9F4109227 +:1003D000FD011092FE011092FF011092000214BE66 +:1003E00084B7877F84BF88E10FB6F894809360005C +:1003F000109260000FBEE0E0FFE3099511E0A0E07D +:10040000B1E0E2E4F4E402C005900D92A433B10738 +:10041000D9F711E0A4E3B1E001C01D92AD3FB107EF +:10042000E1F70E94660A0C941F220C9400001092BF +:10043000B9008AE08093B800089594EA9093BC00D4 +:100440009091BC0097FFFCCF9091B900987F9830B5 +:1004500021F0903111F081E008958093BB0084E891 +:100460008093BC008091BC0087FFFCCF8091B900D5 +:10047000887F883111F0803471F780E0089584E935 +:100480008093BC008091BC0084FDFCCF08958093D4 +:10049000BB0084E88093BC008091BC0087FFFCCF48 +:1004A0009091B900987F81E0983209F480E0089536 +:1004B00084E88093BC008091BC0087FFFCCF8091D2 +:1004C000BB00089580B38C7080BB81B3836F81BB08 +:1004D000089580910101811115C080E40E941D02E0 +:1004E0008093010181110CC082E10E944702809338 +:1004F0000101811105C08FEF0E9447028093010125 +:100500000E943F0284B1807F84B985B1807F85B924 +:100510008AB1837F8AB98BB1837F8BB93E98469825 +:1005200008950E943304809301010E9469020E9491 +:100530006202A5E3B1E0E3E4F1E08EE08E0F1192F8 +:100540001D928E13FCCF0C941D040E9433048093E3 +:1005500001010E9469020E946202A5E3B1E0E3E4A6 +:10056000F1E08EE08E0F11921D928E13FCCF089554 +:10057000BF92CF92DF92EF92FF920F931F93CF9390 +:10058000DF9380910101882379F0809134018F5F9E +:1005900080933401811108C00E94330480930101CB +:1005A000811102C00E94C50305E311E0C0E0D0E064 +:1005B000DD24D39482E0C82EEE24E394F12CC730DE +:1005C000D10500F580910101811164C080E40E9491 +:1005D0001D0280930101811112C082E10E94470235 +:1005E0008093010181110BC0C7010C2E01C0880F3F +:1005F0000A94EAF780950E944702809301010E94C5 +:100600003F0248C0CA30A1F028F4C83059F0C930C0 +:1006100061F005C0CC3089F070F0CD3089F0209ABF +:10062000289810C0219A29980DC0229A2A980AC0A9 +:10063000239A2B9807C0529A01C0539A5B9802C024 +:100640003E9A469890EA9A95F1F79FB1799902C03F +:1006500082E001C080E091709D25982B7C9902C0BA +:1006600084E001C080E0892B7D9902C038E001C0A0 +:1006700030E0832B7E9902C020E101C020E0822B74 +:100680009FB19095991F9927991F9295990F907EE8 +:10069000892B0FC080910101811149C080E40E9423 +:1006A0001D0280930101882379F1B12C0E943F0241 +:1006B0008B2DF8019081981719F08083C09200016A +:1006C0000E94690221960F5F1F4FCE30D10509F0BD +:1006D00076CF80910001882361F1815080930001E1 +:1006E000882339F08FE99FE00197F1F700C00000FF +:1006F00020C0A3E4B1E0E5E3F1E0CF01825F919196 +:100700009D938E13FCCF15C083E10E944702809316 +:1007100001018111CACF81E40E941D028093010171 +:100720008111C3CF0E945802B82EB094BFCF80E091 +:10073000C0CF0E94C30381E0DF91CF911F910F9141 +:10074000FF90EF90DF90CF90BF900895E82FF0E0FA +:10075000ED5BFE4F8081089508950F931F93CF9313 +:10076000DF93C3E4D1E010E00C2F025F899190E0A9 +:100770000E94B31A180F0C13F9CF812FDF91CF917C +:100780001F910F9108950C948E0456985E982598A9 +:100790002D9826982E9827982F988FEF90E0909379 +:1007A00089008093880090938B0080938A009093B7 +:1007B0008D0080938C00259A2D9A2FEF80E792E090 +:1007C000215080409040E1F700C00000269A2E9A08 +:1007D0002FEF80E792E0215080409040E1F700C089 +:1007E0000000279A2F9A2FEF80E792E02150804057 +:1007F0009040E1F700C0000025982D982FEF80E78A +:1008000092E0215080409040E1F700C0000026981F +:100810002E982FEF80E792E0215080409040E1F742 +:1008200000C0000027982F9856985E9825982D981C +:1008300026982E9827982F98089589EA809380000B +:1008400089E08093810024982C983F988AB18F7416 +:100850008AB96E98479A8BB1806B8BB9769A0E9451 +:10086000C5030C94850480E28093010180915101BD +:1008700081110EC00E94170281E0809351012FEF79 +:1008800083ED90E3215080409040E1F700C00000EC +:1008900080E40E941D028093010181112EC00E94FC +:1008A000470280930101811128C00E944702809372 +:1008B0000101811122C08FE30E9447028093010150 +:1008C00081111BC00E943F0280E40E941D028093A0 +:1008D0000101811112C08CE00E9447028093010146 +:1008E00081110BC00E94470280930101811105C054 +:1008F0008FE30E944702809301010E943F02809192 +:100900000101089580E090E0089556985E9825983A +:100910002D9826982E9827982F980895089581E06D +:10092000089581E008950C9491040895282F882358 +:1009300039F090E02A3010F44D9608950697089506 +:1009400087E290E00895AF92BF92DF92EF92FF921C +:100950000F931F93CF93DF938C01FC01C081D18152 +:10096000CE010E943819BE010E941308EC01B801A3 +:100970000E949304882309F4C9C1F8018281882365 +:1009800009F4BEC080915E0181111FC0C431F0E73F +:10099000DF0709F0B5C10E94950481E080935E01F4 +:1009A0000E94061B90935D0180935C01109255019B +:1009B000109257011092560110925901109258014D +:1009C00010925B0110925A01A1C180915C0190913B +:1009D0005D010E94121B883C910570F480915501C5 +:1009E000E82FF0E0EE0FFF1FEA5AFE4FD183C083DD +:1009F0008F5F809355018AC1C13020E8D20708F487 +:100A000051C0F8018281882309F47EC05E01E89418 +:100A1000B7F880915401813079F050F08230C1F400 +:100A200082EE0E94C21087E50E94C21087E50EC0C8 +:100A300082EE0E94C2100CC080EE0E94C21081EEB5 +:100A40000E94C21088E10E94C21088E10E948A11AF +:100A50008CE0E82EF12CC5010E2C02C096958795EE +:100A60000A94E2F78F700E949604D82E0E94C2105A +:100A70008D2D0E948A11F4E0EF1AF1082CEFE21696 +:100A80002FEFF20641F780915401813029F010F0E8 +:100A9000823041F482EE04C080EE0E948A1181EE21 +:100AA0000E948A11C43180E7D80768F4C23090E709 +:100AB000D90708F046C0C115E0E7DE0771F0C13084 +:100AC000D047A1F10CC1C33320E7D20709F4D8C045 +:100AD000C433D04709F4EBC002C1F80182818823F6 +:100AE00009F402C10E943F14FFEF24E38CE0F150AF +:100AF00020408040E1F700C000000E94611B06C159 +:100B0000C13080E8D80770F2C43120E7D20708F07E +:100B1000B3C0C23080E7D807A0F4C11590E7D90769 +:100B200009F4E2C0C130D04709F0D9C0F801828190 +:100B3000882309F4D9C08091DB0181608093DB01B7 +:100B4000E5C0F8018281882309F4CEC00E94BB1B56 +:100B5000811102C00E94A11B0E94CE1B90E09093C5 +:100B6000EF018093EE01C230F0E7DF0721F48091BE +:100B7000EE0181607AC0C33020E7D20721F4809172 +:100B8000EE01826072C0C43080E7D80721F4809102 +:100B9000EE0184606AC0C53090E7D90719F48091EE +:100BA000EE0127C0C630E0E7DE0721F48091EE01B8 +:100BB00080615BC0C730F0E7DF0721F48091EE0170 +:100BC000806253C0C83020E7D20721F48091EE0143 +:100BD00080644BC0C93080E7D80721F48091EE01D2 +:100BE000806843C0CA3090E7D90729F48091EE01AC +:100BF000846088603AC0CB30E0E7DE0721F4809162 +:100C0000EE018E7F32C0CC30F0E7DF0721F4809117 +:100C1000EE018D7F2AC0CD3020E7D20721F48091EC +:100C2000EE018B7F22C0CE3080E7D80719F4809187 +:100C3000EE011AC08091EE01CF3090E7D90711F490 +:100C40008F7E13C0C031E0E7DE0711F48F7D0DC049 +:100C5000C131F0E7DF0711F48F7B07C0C231D04705 +:100C600011F48F7702C08B7F877F8093EE01809194 +:100C7000EE010E94D21B4AC0C333F0E7DF07A1F4A4 +:100C8000F8018281882321F01092520182E016C07F +:100C900080915201811106C086E20E94C21086E254 +:100CA0000E948A1182E018C0C433D047C1F4F80111 +:100CB0008281882331F01092530180E20E94D91181 +:100CC00025C080915301811106C087E20E94C210A5 +:100CD00087E20E948A1180E20E94E01117C081E041 +:100CE0008093520180935301C801DF91CF911F91EE +:100CF0000F91FF90EF90DF90BF90AF900C948F0416 +:100D0000C130F0E8DF0708F081CECCCE80E0DF9183 +:100D1000CF911F910F91FF90EF90DF90BF90AF9018 +:100D2000089526E0729FF001112444E5849FE00DB0 +:100D3000F11D1124E60FF11DEE0FFF1FE65FFE4FC0 +:100D4000859194910E942508811560E49607B0F57D +:100D5000811570E3970708F0DEC0803E9105D8F456 +:100D6000803C910508F06CC0883A910578F4853A8A +:100D7000910508F06BC08130910509F452C108F467 +:100D80000FC18430910508F04CC10AC18B3B91051D +:100D900008F467C005C18F3F910509F048F4803F12 +:100DA000910508F0ADC0883E910508F43AC1F8C03D +:100DB000811520E2920708F0A5C00895811543E54A +:100DC000940790F4811562E5960708F0C8C0811574 +:100DD00071E5970708F0BEC0811520E5920708F07D +:100DE0009DC09F70906A0895811545E59407D8F4D9 +:100DF000811564E5960708F0C8C0482F46954695CA +:100E000070E2479FA00111248370992721E030E010 +:100E1000B90102C0660F771F8A95E2F7CB01842BD8 +:100E2000952B9A680895811576E5970708F4B2C066 +:100E30009C0130562115304108F0B2C09F70AEC001 +:100E4000FC01EE0FFF1FE657F04062C0853A9105A6 +:100E500009F4A9C0863A910509F0A8C082E890E497 +:100E60000895883A910509F4A4C0893A910509F4D6 +:100E7000A3C08A3A910509F4A2C08B3A910509F4FE +:100E8000A1C08C3A910509F4A0C08D3A910509F4EE +:100E90009FC0803B910509F49EC08E3A910509F4EC +:100EA0009DC08F3A910509F49CC0813B910509F4DE +:100EB0009BC0823B910509F49AC0833B910509F4DC +:100EC00099C0843B910509F498C0853B910509F4CC +:100ED00097C0863B910509F496C0873B910509F4BC +:100EE00095C0883B910509F494C0893B910509F4AC +:100EF00093C08A3B910509F492C080E094E4089580 +:100F000090650895FC01FF70EE0FFF1FE65FFE4F36 +:100F10008591949108959927906C0895482F437076 +:100F200021E030E002C0220F331F4A95E2F73C680F +:100F3000AC0164E0569547956A95E1F74370342B10 +:100F40008F708695869560E2869FC0011124822B62 +:100F5000932B0895982F8827816F906A0895482FC2 +:100F60004695469570E2479FA0011124837099270A +:100F700021E030E0B90102C0660F771F8A95E2F7E1 +:100F8000CB01842B952B9C680895982F8827846F1C +:100F9000906A08958F719927982F882790620895F5 +:100FA00080E090E0089581E890E4089583E890E47B +:100FB000089582EE94E4089589EE94E408958AEE0B +:100FC00094E4089585EB94E4089586EB94E4089501 +:100FD00087EB94E408958CEC94E408958DEC94E40C +:100FE000089583E895E408958AE895E4089582E9F0 +:100FF00095E4089584E995E4089581E296E40895DE +:1010000083E296E4089584E296E4089585E296E406 +:10101000089586E296E4089587E296E408958AE2C8 +:1010200096E40895089596E0799FF001112494E5DF +:10103000899FE00DF11D1124E60FF11DEE0FFF1F3A +:10104000E65FFE4F8591949108958238910549F1AC +:10105000B0F48133910509F458C048F48932910500 +:1010600009F44EC08A32910509F454C008958533BD +:10107000910509F440C08933910599F00895833EA4 +:10108000910529F138F4803E910591F0823E910559 +:10109000A1F00895863E9105F9F0873E910531F162 +:1010A00008952091EE0120FD3AC021FD38C0089539 +:1010B0008091EE0180FD35C032C08091EE0182FF4B +:1010C00032C08091EE0184FD30C083EE39C0809142 +:1010D000EE0182FD28C0F5CF8091EE0183FF27C08D +:1010E0008091EE0184FD21C087EE2AC08091EE013F +:1010F00083FD1DC0F5CF8091EE0185FD1AC01BC098 +:101100008091EE0185FD17C014C08091EE0186FD2F +:1011100014C015C08091EE0186FD11C00EC080EE96 +:101120000FC089E30DC082EE0BC080E009C086EEDF +:1011300007C089E205C085E303C08AE201C081E3FC +:1011400090E0089508950C94A20880916F0108958D +:10115000CF93DF9300D01F92CDB7DEB79C01809173 +:10116000F401843019F593E099833B832A839093AB +:10117000E9008FEF9091E800815095FD06C095ED54 +:101180009A95F1F700008111F5CF8091E80085FF75 +:101190000DC040E050E063E070E0CE0101960E9497 +:1011A0000E0B8091E8008E778093E8000F900F90EF +:1011B0000F90DF91CF910895CF93DF9300D01F92CE +:1011C000CDB7DEB72091F401243021F522E0298348 +:1011D0009B838A8383E08093E9008FEF9091E800FE +:1011E000815095FD06C095ED9A95F1F700008111AB +:1011F000F5CF8091E80085FF0DC040E050E063E04E +:1012000070E0CE0101960E940E0B8091E8008E776F +:101210008093E8000F900F900F90DF91CF91089589 +:101220002091F4012430F1F422E02093E9002FEF23 +:101230003091E800215035FD06C035ED3A95F1F7C3 +:1012400000002111F5CF2091E80025FF0BC040E000 +:1012500050E065E070E00E940E0B8091E8008E7710 +:101260008093E8000895CF93DF93EC019091F4010F +:10127000943009F046C080910C018823D9F0809108 +:101280000D018823B9F09093E9008FEF9091E80069 +:10129000815095FD06C095E19A95F1F70000811106 +:1012A000F5CF8091E80085FF2CC040E050E060E180 +:1012B00070E017C081E08093E9008FEF9091E80023 +:1012C000815095FD06C095ED9A95F1F700008111CA +:1012D000F5CF8091E80085FF14C040E050E068E061 +:1012E00070E0CE010E940E0B8091E8008E77809313 +:1012F000E80080E1FE01AFE5B1E001900D928A9532 +:10130000E1F7DF91CF9108958091F301811109C038 +:101310000E94A30C0E94000D8091E20084608093E3 +:10132000E20008951092F301089508950C94472067 +:101330000E94F71A0E944D200E94A60F0C94A30849 +:1013400042E061EC81E00E941D0C42E061EC82E031 +:101350000E941D0C42E061EC83E00E941D0C42E102 +:1013600061EC84E00C941D0C8091F601833009F44B +:1013700055C030F4813071F0823009F48EC0089588 +:101380008A3009F47AC08B3009F460C0893009F0E2 +:101390009CC020C08091F501813A09F096C08091EF +:1013A000E800877F8093E8008091F9019091FA012D +:1013B000892B21F460E18FE591E003C060E080E0DB +:1013C00090E070E00E94590B8091E8008B77809349 +:1013D000E80008958091F501813209F076C080918E +:1013E000F9019091FA01009719F0039709F06DC087 +:1013F0008091E800877F8093E8008091E80082FD7B +:1014000005C08091F4018111F8CF5FC08091F10097 +:1014100080936F018091E8008B7753C08091F50134 +:10142000813A09F052C08091F9019091FA01892B1B +:1014300009F04BC08091E800877F8093E80080919D +:10144000E80080FFFCCF80910C0136C08091F5014F +:101450008132D9F58091F9019091FA01892BA9F592 +:101460008091E800877F8093E8000E94520C809171 +:10147000F70180930C010C943F148091F5018132A7 +:1014800021F58091E800877F8093E8000E94520C4C +:101490008091F8018093700108958091F501813A5F +:1014A000A1F48091E800877F8093E8008091E800B4 +:1014B00080FFFCCF809170018093F1008091E80063 +:1014C0008E778093E8000C94520C089584B7877F40 +:1014D00084BF88E10FB6F89480936000109260009A +:1014E0000FBE80E880936100109261000E94F50FAA +:1014F0000E94A30C0E94000D8091E2008460809302 +:10150000E20078940E94860F0E94F70F82E091E03B +:101510000E94A10F0E9435208091F401853069F46A +:101520000E94BF1A8091F2018823B1F30E94E91A48 +:10153000882391F30E94F80AEFCF0E94FD0FECCFB1 +:10154000292F332723303105C9F064F421303105C8 +:1015500081F02230310509F043C08DE690E026EE9F +:1015600031E042C021323105F1F02232310541F142 +:1015700037C082E190E023E532E036C09927813020 +:10158000910541F08230910541F0892B49F5E2EE59 +:10159000F1E005C0EAECF1E002C0E2EBF1E0849199 +:1015A00090E09F0121C06430D8F4E62FF0E0EE0F08 +:1015B000FF1FEE5DFE4F2081318189E090E014C075 +:1015C000643070F470E0FB01EE0FFF1FE65EFE4F2B +:1015D00020813181FB01EA5EFE4F808190E004C0F2 +:1015E00080E090E020E030E0FA013183208308952C +:1015F00080E189BD82E189BD09B400FEFDCF809103 +:10160000D8008F7D8093D8008091E0008260809325 +:10161000E0008091E00081FDFCCF0895CF92DF9241 +:10162000EF92FF920F931F93CF93DF93EC018B0107 +:101630006A010E94710C811133C0C114D10439F0C8 +:10164000F60180819181081B190BC80FD91FE12C6D +:10165000F12C0115110519F18091E80085FD16C0E6 +:101660008091E8008E778093E800C114D10449F09E +:10167000F60180819181E80EF91EF182E08285E019 +:101680000FC00E94710C882321F30AC089918093B6 +:10169000F10001501109FFEFEF1AFF0ADACF80E0E5 +:1016A000DF91CF911F910F91FF90EF90DF90CF903E +:1016B00008952091FB013091FC012617370748F06F +:1016C0006115710539F42091E8002E772093E80028 +:1016D00001C0B90140E061157105A9F12091F40143 +:1016E000222309F443C0253009F442C02091E800C8 +:1016F00023FD40C02091E80022FD32C02091E80087 +:1017000020FFE9CF4091F3002091F20030E0342B2C +:10171000FC01CF016115710559F02830310540F405 +:1017200081918093F100615071092F5F3F4FF1CF9C +:1017300041E02830310509F040E02091E8002E77A3 +:101740002093E800C8CF4111C9CF0AC08091F401AD +:10175000882361F0853061F08091E80083FD0AC044 +:101760008091E80082FFF2CF80E0089582E0089542 +:1017700083E0089581E008952091FB013091FC0100 +:101780002617370748F06115710539F42091E800F4 +:101790002E772093E80001C0B901FC0120E061151B +:1017A000710591F18091F401882309F440C08530DE +:1017B00009F43FC08091E80083FD3DC08091E800BE +:1017C00082FD2FC08091E80080FFE9CF2091F300D7 +:1017D0008091F20090E0922B6115710559F08830EC +:1017E000910540F424912093F100319661507109E4 +:1017F0000196F2CF21E0089709F020E08091E800FF +:101800008E778093E800CBCF2111CCCF0AC0809196 +:10181000F401882361F0853061F08091E80083FD58 +:101820000AC08091E80082FFF2CF80E0089582E054 +:10183000089583E0089581E00895982F973058F532 +:101840009093E900981739F07091EC002091ED0029 +:101850005091F00003C0242F762F50E021FF19C0D3 +:101860003091EB003E7F3093EB003091ED003D7FF7 +:101870003093ED003091EB0031603093EB007093CA +:10188000EC002093ED005093F0002091EE0027FF34 +:1018900007C09F5FD3CF8F708093E90081E00895E8 +:1018A00080E008958091F50187FF11C08091E800E4 +:1018B00082FD05C08091F4018111F8CF11C08091A3 +:1018C000E8008B770BC08091F401882349F0809168 +:1018D000E80080FFF8CF8091E8008E778093E800E1 +:1018E00008952091E4003091E50095E64091EC00E8 +:1018F000842F817040FF22C08091E80080FD1CC0D1 +:101900008091F401882391F0853091F08091EB0073 +:1019100085FD10C04091E4005091E5004217530747 +:1019200029F39A01915011F784E0089582E0089517 +:1019300083E0089581E0089580E008954091E800F3 +:1019400042FFDECF08950E94110D0E94190DE0EEB6 +:10195000F0E0808181608083E8EDF0E080818F7726 +:10196000808319BCA7EDB0E08C918E7F8C93808131 +:101970008F7E80831092F30108950F931F93CF936E +:10198000DF930E94110D0E94190DC8EDD0E08881EF +:101990008F77888388818068888388818F7D88831A +:1019A00019BC1092F4011092F0011092F201109201 +:1019B000F10100EE10E0F80180818B7F8083888147 +:1019C0008160888342E060E080E00E941D0CE1EECF +:1019D000F0E080818E7F8083E2EEF0E080818160A4 +:1019E0008083808188608083F80180818E7F8083FE +:1019F000888180618883DF91CF911F910F91089535 +:101A0000E8EDF0E080818F7E8083E7EDF0E080817B +:101A10008160808384E082BF81E08093F3010C9435 +:101A2000BD0CE8EDF0E080818E7F80831092E200B3 +:101A300008951092DA001092E10008951F920F921B +:101A40000FB60F9211242F933F934F935F936F9391 +:101A50007F938F939F93AF93BF93EF93FF93809167 +:101A6000E10082FF0BC08091E20082FF07C08091FD +:101A7000E1008B7F8093E1000E94850F8091DA0066 +:101A800080FF1FC08091D80080FF1BC08091DA00CA +:101A90008E7F8093DA008091D90080FF0DC080E1B5 +:101AA00089BD82E189BD09B400FEFDCF81E080934C +:101AB000F4010E94840905C019BC1092F4010E942F +:101AC00092098091E10080FF19C08091E20080FFBF +:101AD00015C08091E2008E7F8093E2008091E20049 +:101AE00080618093E2008091D80080628093D8006A +:101AF00019BC85E08093F4010E9496098091E10071 +:101B000084FF30C08091E20084FF2CC080E189BD59 +:101B100082E189BD09B400FEFDCF8091D8008F7DA0 +:101B20008093D8008091E1008F7E8093E1008091C6 +:101B3000E2008F7E8093E2008091E20081608093DA +:101B4000E2008091F001882311F084E007C08091C9 +:101B5000E30087FD02C081E001C083E08093F401CF +:101B60000E9498098091E10083FF29C08091E200E2 +:101B700083FF25C08091E100877F8093E10082E0B0 +:101B80008093F4011092F0018091E1008E7F8093A8 +:101B9000E1008091E2008E7F8093E2008091E2007C +:101BA00080618093E20042E060E080E00E941D0CD2 +:101BB0008091F00088608093F0000E949509FF9169 +:101BC000EF91BF91AF919F918F917F916F915F91B5 +:101BD0004F913F912F910F900FBE0F901F9018952E +:101BE0001F920F920FB60F9211242F933F934F9392 +:101BF0005F936F937F938F939F93AF93BF93CF9395 +:101C0000DF93EF93FF93C091E900CF708091EC00D8 +:101C1000D82FD17080FDD0E81092E9008091F000BB +:101C2000877F8093F00078940E94340E1092E90030 +:101C30008091F00088608093F000CD2BCF70C0932E +:101C4000E900FF91EF91DF91CF91BF91AF919F910B +:101C50008F917F916F915F914F913F912F910F9055 +:101C60000FBE0F901F9018951F93CF93DF93CDB7A2 +:101C7000DEB7AA970FB6F894DEBF0FBECDBFE5EF73 +:101C8000F1E088E08E0F9091F10091938E13FBCFDD +:101C90000E94B4098091E80083FF1FC18091F50183 +:101CA0009091F601492F50E04A30510508F015C1D6 +:101CB000FA01EA5AFF4F0C94CF21803881F0823824 +:101CC00009F00BC18091F9018F708093E900809138 +:101CD000EB0085FB882780F91092E90006C080910F +:101CE000F1019091F201911182609091E800977F4B +:101CF0009093E8008093F1001092F100C8C0282F63 +:101D00002D7F09F0EAC0882319F0823061F0E5C028 +:101D10008091F701813009F0E0C0933009F080E054 +:101D20008093F2012BC08091F701811127C080912F +:101D3000F9018F7009F4D1C08093E9002091EB0084 +:101D400020FF1CC0933021F48091EB00806214C00E +:101D50009091EB0090619093EB0021E030E0A901BD +:101D600002C0440F551F8A95E2F74093EA00109293 +:101D7000EA008091EB0088608093EB001092E9000C +:101D80008091E800877F86C08111A7C01091F7017C +:101D90001F778091E3008078812B8093E30080910E +:101DA000E800877F8093E8000E94520C8091E80051 +:101DB00080FFFCCF8091E30080688093E3001111E5 +:101DC00002C082E001C083E08093F40186C08058A5 +:101DD000823008F082C08091F7019091F8018C3D2B +:101DE00053E0950779F583E08A838AE289834FB7C8 +:101DF000F894DE01139620E03EE051E2E32FF0E09C +:101E000050935700E49120FF03C0E295EF703F5FCD +:101E1000EF708E2F90E0EA3010F0C79601C0C096A8 +:101E20008D939D932F5F243149F74FBF8091E80038 +:101E3000877F8093E8006AE270E0CE0101960E94FD +:101E4000590B14C0AE014F5F5F4F6091F9010E94C2 +:101E5000A00ABC01009709F440C09091E800977F68 +:101E60009093E80089819A810E94BC0B8091E800E0 +:101E70008B778093E80031C0803879F58091E80055 +:101E8000877F8093E8008091F0018093F10080913A +:101E9000E8008E778093E8000E94520C1EC08111EA +:101EA0001CC09091F7019230C0F48091E800877FC8 +:101EB0008093E8009093F0010E94520C8091F00111 +:101EC000811106C08091E30087FD02C081E001C05E +:101ED00084E08093F4010E94A0098091E80083FFD0 +:101EE0000AC08091E800877F8093E8008091EB0032 +:101EF00080628093EB00AA960FB6F894DEBF0FBE07 +:101F0000CDBFDF91CF911F9108950895CF93809118 +:101F1000F4018823A1F0C091E900CF709091EC000A +:101F2000892F817090FD80E8C82B1092E900809184 +:101F3000E80083FD0E94340ECF70C093E900CF917A +:101F4000089590937601809375010895E09175014D +:101F5000F0917601309721F00190F081E02D099405 +:101F600080E00895E0917501F0917601309721F0BD +:101F70000280F381E02D09940895E0917501F091BC +:101F80007601309721F00480F581E02D09940895C1 +:101F900020917301309174018217930771F090932F +:101FA000740180937301E0917501F091760130978F +:101FB00021F00680F781E02D0994089520917101A8 +:101FC000309172018217930771F0909372018093A0 +:101FD0007101E0917501F0917601309721F0008454 +:101FE000F185E02D0994089508950C94F40F0E9452 +:101FF000FD1A0E9491020C94831B9F92AF92BF9294 +:10200000CF92DF92EF92FF920F931F93CF93DF93C4 +:1020100000D000D000D0CDB7DEB70E94B8020DE0EE +:1020200010E0AA24A394B12C902E802F0E94A60326 +:10203000980128583E4F6901F901F080F826A1F473 +:102040000150110988F78FEF89838A831B820E94D0 +:10205000061B8160782F9D838C8349815A816B8117 +:102060008D810E9494102FC09091DB0191FF04C0DC +:102070008E830E94AC038E8125E030E0A501022E04 +:1020800001C0440F0A94EAF7E42E4F21C1F02983DE +:102090009A828E2191E009F490E09B830E94061BB6 +:1020A0008160782F9D838C8349815A816B818D81DA +:1020B0000E949410F6018081E826E08204C021503D +:1020C0003109E0F6BDCF0E94511D109177010E94A9 +:1020D000A60F1817B9F00E94A60F809377012696D5 +:1020E0000FB6F894DEBF0FBECDBFDF91CF911F9129 +:1020F0000F91FF90EF90DF90CF90BF90AF909F90A7 +:102100000C94A30826960FB6F894DEBF0FBECDBF81 +:10211000DF91CF911F910F91FF90EF90DF90CF90C3 +:10212000BF90AF909F900895CF93DF93CDB7DEB768 +:102130002B970FB6F894DEBF0FBECDBF4F835887E5 +:1021400069877A878B87DE01119686E0FD011192FF +:102150008A95E9F785E0FE01379601900D928A9500 +:10216000E1F749815A816B817C818D819E810E943A +:10217000DD162B960FB6F894DEBF0FBECDBFDF91F4 +:10218000CF910895CF93882309F4C2C0C82F823815 +:1021900059F40E94A60F81FDBBC089E30E94B719C4 +:1021A0000E94841A89E30CC0833879F40E94A60F38 +:1021B00080FDAEC083E50E94B7190E94841A83E5B2 +:1021C0000E94F919CF910C94841A843859F40E9412 +:1021D000A60F82FD9DC087E40E94B7190E94841A51 +:1021E00087E4EECF8CEF8C0F813A48F48C2F0E945D +:1021F0009B1F81118DC08C2F0E94B719E3CF80E205 +:102200008C0F883048F4C77081E001C0880FCA95F0 +:10221000EAF70E943D1AD6CF8BE58C0F833078F415 +:10222000C53A29F0C63A31F083E890E005C081E86C +:1022300090E002C082E890E0CF910C94C80F88E54E +:102240008C0F833108F064C0C83A39F1C93A41F1C2 +:10225000CA3A49F1CB3A51F1CC3A59F1CD3A61F150 +:10226000C03B69F1CE3A71F1CF3A79F1C13B81F1CE +:10227000C23B89F1C33B91F1C43B99F1C53BA1F14C +:10228000C63BA9F1C73BB1F1C83BB9F1C93BC1F1AC +:10229000CA3BC9F180E090E038C082EE90E035C0E2 +:1022A00089EE90E032C08AEE90E02FC085EB90E09E +:1022B0002CC086EB90E029C087EB90E026C08CEC28 +:1022C00090E023C08DEC90E020C083E891E01DC039 +:1022D0008AE891E01AC082E991E017C084E991E0B0 +:1022E00014C081E292E011C083E292E00EC084E269 +:1022F00092E00BC085E292E008C086E292E005C061 +:1023000087E292E002C08AE292E0CF910C94DE0F65 +:10231000CF910895882309F44BC0823859F40E9464 +:10232000A60F81FF45C089E30E94B7190E94841A55 +:1023300089E30CC0833871F40E94A60F80FF38C077 +:1023400083E50E94B7190E94841A83E50E94F91957 +:102350000C94841A843859F40E94A60F82FF28C076 +:1023600087E40E94B7190E94841A87E4EFCF9CEF9C +:10237000980F913A58F390E2980F983050F4877084 +:1023800091E001C0990F8A95EAF7892F0E94431ABC +:10239000DFCF9BE5980F933020F480E090E00C9421 +:1023A000C80F885A833120F480E090E00C94DE0F4F +:1023B0000895882321F00E943D1A0C94841A0895F0 +:1023C000882321F00E94431A0C94841A08957F9266 +:1023D0008F929F92AF92BF92CF92DF92EF92FF9235 +:1023E0000F931F93CF93DF931F92CDB7DEB77C017E +:1023F000C62E772EFC01058102950F7012811111F6 +:102400000E945A1A0E94B019882379F0112369F0AA +:1024100080E28C0D883048F082E00E9499190E9479 +:10242000B01991E0D82ED92601C0D12CE72DE29524 +:10243000EF70F0E0E05AFF4F0C94CF21872D807FA2 +:10244000072D0F70882311F00295007F112389F06A +:10245000002309F490C180E28C0D883020F4802F95 +:102460000E943D1A03C0802F0E944D1A0E94841AB8 +:1024700082C18C2D0E948A11002309F495C180E24B +:102480008C0D883020F4802F0E94431A03C0802FC7 +:102490000E94531A0E94841A87C1972D907F872D1E +:1024A0008F70903211F08295807FCC2021F0F1E086 +:1024B000CF16B1F01EC0112349F0002309F414C156 +:1024C000013009F011C10E946D1A6EC1002319F08C +:1024D000013009F469C189830E94701A89810AC197 +:1024E000112321F0023008F05FC1FEC001115CC170 +:1024F00001C1112321F0002309F4F6C03CC10023DF +:1025000009F4F8C03EC1872D86958695837090E0CA +:10251000009719F0019761F047C1112321F08C2D2C +:10252000972D937002C080E090E00E94C80F3CC1DC +:10253000112321F08C2D972D937002C080E090E044 +:102540000E94DE0F31C18C2D112319F00E94591CFD +:1025500002C00E94C11C0E94461D26C1872D8370A7 +:1025600009F052C0111120C18C2D8295869587707B +:10257000880F880F9C2D9F70892E912CA12CB12C37 +:10258000082E04C0880C991CAA1CBB1C0A94D2F704 +:10259000C4FE14C00FE010E020E030E0B901A80153 +:1025A00004C0440F551F661F771F8A95D2F7CB01D1 +:1025B000BA01609570958095909503C060E070E0D9 +:1025C000CB01272D26952695237030E0223031054A +:1025D00069F02330310589F0682979298A299B29F6 +:1025E0002130310571F00E942518DEC06829792953 +:1025F0008A299B290E944118D7C00E942518C5012D +:10260000B4010E940918D0C0112319F0872D8170E0 +:1026100001C08695882309F4C7C08C2D82958695C4 +:102620008770880F880F9C2D9F70892E912CA12C6C +:10263000B12C082E04C0880C991CAA1CBB1C0A943F +:10264000D2F7C4FE14C00FE010E020E030E0B90182 +:10265000A80104C0440F551F661F771F8A95D2F743 +:10266000CB01BA01609570958095909503C060E0AC +:1026700070E0CB01272D269526952370422F50E040 +:102680004230510569F04330510589F068297929B4 +:102690008A299B294130510571F00E94FF1884C09E +:1026A000682979298A299B290E941B197DC00E94CB +:1026B000FF18C501B4010E94E31876C08C2D90E08C +:1026C000FC01E05EF109E531F10508F050C0E05988 +:1026D000FF4F0C94CF210C2D0F70872D8F7111237C +:1026E00031F00E947C18802F0E94D9115DC00E9499 +:1026F0009D18802F0E94E01157C0112339F001115D +:1027000053C0872D8F710E94C2184EC0023008F04E +:102710004BC0F7CF112339F0872D8F710E947C18A1 +:1027200043C01123C9F3872D8F710E949D183CC0AF +:10273000112329F0872D8F710E94671835C00E94E0 +:102740005D1832C0112351F0172D1F71812F0E9487 +:102750007C1863E0812F0E94901926C081E00E94BE +:102760009919023008F182E00E9499191DC01123C5 +:1027700031F0002389F28C2D0E94C21015C0002375 +:1027800091F28C2D0E948A110FC0472D4F706C2D35 +:10279000C7010E9482040E94811706C0472D4F7016 +:1027A0006C2DC7010E941208DD20F9F00E948C19DF +:1027B00080FD1BC0F70112820E9486190E947C18BE +:1027C000C7010E9404140E9486190F90DF91CF91D7 +:1027D0001F910F91FF90EF90DF90CF90BF90AF903F +:1027E0009F908F907F900C949D180F90DF91CF91C8 +:1027F0001F910F91FF90EF90DF90CF90BF90AF901F +:102800009F908F907F9008950F931F93CF93DF93A6 +:10281000EC01888199812B813C81232BB9F09F3F6A +:1028200011F48F3F99F0CE010E94A304882371F028 +:10283000688179818A810E9482198C010E943719EE +:102840000E94FE17B801CE010E94E711DF91CF91DF +:102850001F910F9108950E945A1A0E946A1A0E94AD +:102860002F1A0E94841A0E94F71D0E94461D80E0C4 +:1028700090E00E94C80F80E090E00C94DE0F0E9470 +:102880004A1A0C942B140E947719292F22952F7025 +:1028900030E02C3031054CF42A3031056CF42250F4 +:1028A000310922303105A8F407C02C30310569F018 +:1028B0002F30310551F00DC0803F69F018F4803E93 +:1028C00040F409C0843F29F406C093FB882780F9AF +:1028D000089580E0089581E00895CF93DF9300D0BC +:1028E00000D01F92CDB7DEB70F900F900F900F90D2 +:1028F0000F90DF91CF910895CF93DF9300D000D058 +:1029000000D0CDB7DEB726960FB6F894DEBF0FBE67 +:10291000CDBFDF91CF9108951F93CF93DF93C091E7 +:10292000860116E080918701C81799F0D0E01C9FBE +:10293000F0011D9FF00D1124E857FE4F4081518199 +:1029400062817381848195810E947C142196C77075 +:10295000E9CFDF91CF911F9108954091B801509137 +:10296000B9016091BA017091BB018091BC01909155 +:10297000BD010C947C148091BD0182958F7009F08B +:1029800054C08091BA01882309F44FC08091860118 +:10299000A09187016091B8017091B9014091BB018C +:1029A0005091BC01B6E08A1709F43FC090E0411590 +:1029B0005105C1F17F3F11F46F3FA1F1B89FF001C4 +:1029C000B99FF00D1124E857FE4F218172132AC0E0 +:1029D0002081621327C02281211124C023813481E8 +:1029E0002417350710F421503109241B350B283CDE +:1029F0003105C0F42091BD012F7020612093BD01ED +:102A000026E0289FF001299FF00D1124E357FE4F87 +:102A100080818F708061808388EB91E00E94041434 +:102A20000C948C1401968770BECF0895CF92DF92DC +:102A3000EF92FF920F931F93CF93DF93CDB7DEB743 +:102A400062970FB6F894DEBF0FBECDBF8C0185E054 +:102A5000F801DE011D9601900D928A95E1F7D801EB +:102A60004C9111965C91119712966C911297139656 +:102A7000CD90DC9014973091B8017091B90180919C +:102A8000BB019091BC01009709F46BC17F3F19F421 +:102A90003F3F09F466C1E090BA01EE2009F4C0C0DE +:102AA0002091BD01C816D90628F0F601E81BF90BE4 +:102AB000CF0104C0809590958C0D9D1DFF24F3944B +:102AC000883C910578F0F12C207F09F0C6C07C2D60 +:102AD000D98AC88A89890E946D1488EB91E00E9486 +:102AE0000414B1C0822F807F09F046C0751314C052 +:102AF000341312C0611110C02F7020612093BD01EA +:102B00000E94AD1488EB91E00E9404148091BD01F5 +:102B1000D80115968C932EC0CD2819F15F3F11F482 +:102B20004F3FF9F0F62E61111CC080918601209173 +:102B3000870136E0821709F45AC090E0389FF0010F +:102B4000399FF00D1124E857FE4F7181571306C0CD +:102B50007081471303C07281711103C001968770A1 +:102B6000E9CFF62E662309F418C18091BD0181607A +:102B70008093BD01F12C11C1751308C0341306C038 +:102B8000611104C08091BD01D801C3C04D875E872B +:102B90008D859E856A8B0E9443146A898823E1F1A2 +:102BA0006623D1F12091BD01822F82958F7090E034 +:102BB000029774F08091B8019091B90198878F8342 +:102BC0001986DB86CA862C87CE0107960E940414DC +:102BD00086E0F801A8EBB1E001900D928A95E1F74B +:102BE0000E94BB140E94AD14FF24F394D6C04D87FD +:102BF0005E878D859E850E947719292F22952F70DB +:102C000030E0223031050CF0BCC09F7009F0B6C036 +:102C1000805E883008F4C1C0C8010E940414E4CF6B +:102C2000C816D90608F453C0F601E81BF90BCF010A +:102C3000883C910508F450C0F12C7C2DD98AC88AB3 +:102C400089890E946D14E8EBF1E086E0DF011D92B6 +:102C50008A95E9F70E94AD14A0C0751314C034130F +:102C600012C0611110C08091BD01F8018583C801B7 +:102C70000E94041486E0E8EBF1E0DF011D928A95E2 +:102C8000E9F7FE2C8AC04D875E878D859E856A8B0D +:102C90000E9443146A89882309F4BECF662309F48D +:102CA000BBCF2091BD01822F82958F7090E002975B +:102CB0000CF48ECF8091B8019091B9019A838983E9 +:102CC0001B82DD82CC822E83CE0101967FCF809540 +:102CD00090958C0D9D1DACCFF62E662309F49CCFEC +:102CE00075132EC034132CC02091BD0120FD1FC0D0 +:102CF000822F82958F70D9F0D80115962C93159755 +:102D00008F3049F08F5F982F9295907F822F8F7030 +:102D1000892B15968C93C8010E94041486E0F80153 +:102D2000A8EBB1E001900D928A95E1F793CF86E090 +:102D3000F801A8EBB1E001900D928A95E1F72DC062 +:102D40004D875E878D859E850E944314811140CFFB +:102D50008091BD0181608093BD01C8010E9404146F +:102D60001CC0662309F458CF4D875E878D859E85EC +:102D70000E944314882309F44FCF2ACF811148CFF2 +:102D80000CC0243031050CF047CF9F7009F440CFC0 +:102D9000F8019581907F09F03BCF8F2D62960FB699 +:102DA000F894DEBF0FBECDBFDF91CF911F910F9181 +:102DB000FF90EF90DF90CF9008951F93CF93DF9314 +:102DC000CDB7DEB72C970FB6F894DEBF0FBECDBFE0 +:102DD0004F83588769877A878B879C87CE010796B0 +:102DE0000E941615882369F08F8198852A853B8576 +:102DF000232BF1F19F3F09F063C08F3F09F060C0C2 +:102E000037C086E0FE013796DE01119601900D92E3 +:102E10008A95E1F76F817885EA85FB85309741F1E6 +:102E20007F3F11F46F3F21F12091870130E0C9010C +:102E30000196877099274091860150E08417950785 +:102E400009F447C069837A83FD83EC8396E0929FFF +:102E5000D001939FB00D1124A857BE4FFE013196AB +:102E600001900D929A95E1F7809387010E948C144E +:102E700016E080918601909187018917C1F1189F12 +:102E8000C001112488579E4F0E941615882379F19E +:102E9000E09186011E9FF0011124E857FE4F40810A +:102EA000518162817381848195810E947C1480911B +:102EB000860190E001968770992780938601D9CF8B +:102EC0004F81588569857A858B859C850E947C1405 +:102ED000CFCF0E943F141092870110928601E8EB39 +:102EE000F1E086E0DF011D928A95E9F7C1CF2C96CB +:102EF0000FB6F894DEBF0FBECDBFDF91CF911F910B +:102F00000895EF92FF920F931F93CF93DF938C015D +:102F1000009709F46CC0F12CEE24E394E8012196AB +:102F2000F8018491843740F4843008F051C0813036 +:102F300081F0823019F15BC0853709F444C0A8F1F3 +:102F40009CE7980F903708F052C08F770E948A1143 +:102F500041C00E5F1F4FFE01C49180E28C0F88308C +:102F600048F4C7708E2D01C0880FCA95EAF70E94F9 +:102F70005D1A14C08C2F0E94C2102DC00E5F1F4F0F +:102F8000FE01C49180E28C0F883058F4C7708E2DFA +:102F900001C0880FCA95EAF70E94631A0E94841A3A +:102FA0001AC08C2F0E948A1116C00E5F1F4FFE019F +:102FB000C491CC2381F08FE99FE00197F1F700C025 +:102FC0000000C150F6CF0E5F1F4FFE01F49003C00A +:102FD0000E94C2108E018F2D882309F49FCFEFE944 +:102FE000FFE03197F1F700C000008150F5CFDF918D +:102FF000CF911F910F91FF90EF90089508956093E6 +:10300000C2017093C3018093C4019093C5010C94D5 +:103010002B140F931F930091C2011091C3012091B3 +:10302000C4013091C501DC01CB01802B912BA22B77 +:10303000B32B8093C2019093C301A093C401B093BA +:10304000C5011F910F910C942B140F931F930091A6 +:10305000C2011091C3012091C4013091C501DC016E +:10306000CB0180239123A223B3238093C2019093A9 +:10307000C301A093C401B093C5011F910F910C949B +:103080002B140F931F930091C2011091C301209143 +:10309000C4013091C501DC01CB0180279127A22713 +:1030A000B3278093C2019093C301A093C401B0934E +:1030B000C5011F910F910C942B141092BE01109218 +:1030C000BF011092C0011092C1010C942B1441E079 +:1030D00050E060E070E004C0440F551F661F771F8A +:1030E0008A95D2F74093BE015093BF016093C0010F +:1030F0007093C1010C942B1441E050E060E070E04B +:1031000004C0440F551F661F771F8A95D2F7809120 +:10311000BE019091BF01A091C001B091C101482BA7 +:10312000592B6A2B7B2B4093BE015093BF016093B8 +:10313000C0017093C1010C942B1441E050E060E099 +:1031400070E004C0440F551F661F771F8A95D2F7A1 +:1031500040955095609570958091BE019091BF010A +:10316000A091C001B091C101482359236A237B2358 +:103170004093BE015093BF016093C0017093C101A1 +:103180000C942B1441E050E060E070E004C0440F68 +:10319000551F661F771F8A95D2F78091BE019091C7 +:1031A000BF01A091C001B091C101482759276A27EA +:1031B0007B274093BE015093BF016093C001709381 +:1031C000C1010C942B140F931F930091BE01109119 +:1031D000BF012091C0013091C101DC01CB01802BE6 +:1031E000912BA22BB32B8093BE019093BF01A09390 +:1031F000C001B093C1011F910F910C942B140F9338 +:103200001F930091BE011091BF012091C001309128 +:10321000C101DC01CB0180239123A223B32380933E +:10322000BE019093BF01A093C001B093C1011F9153 +:103230000F910C942B140F931F930091BE011091CA +:10324000BF012091C0013091C101DC01CB01802779 +:103250009127A227B3278093BE019093BF01A0932B +:10326000C001B093C1011F910F910C942B140895CC +:10327000CF92DF92EF92FF920F931F93CF93DF9342 +:103280008C01C090C201D090C301E090C401F090C5 +:10329000C5018091BE019091BF01A091C001B09184 +:1032A000C101C82AD92AEA2AFB2ACFE1D0E0D701F6 +:1032B000C6010C2E04C0B695A795979587950A94DC +:1032C000D2F780FF06C0B8018C2F0E9491060197AB +:1032D00021F4219760F780E001C08C2FDF91CF911E +:1032E0001F910F91FF90EF90DF90CF900895CF93B3 +:1032F000DF93EC010E943819BE010E949106DF9114 +:10330000CF910895CB010E94771908958091C6014D +:1033100085958595859508958091C6018770089556 +:1033200098E0899F90011124262B2093C6010C94CC +:103330007C182091C601809582238093C601982F26 +:10334000977069F430E0482F552747FD50952417B2 +:10335000350729F08595859585950C949D180895D8 +:103360009091C601977081E009F480E008959091F2 +:103370000C01992321F090910D01911109C0209128 +:103380000E0130910F01F90132969FEF40E01FC00E +:10339000982F9695969596959F3050F5E0910E0151 +:1033A000F0910F01E90FF11D877021E030E0A901D4 +:1033B00002C0440F551F8A95E2F7CA019181892BFB +:1033C000818308959F3F39F04F5F4E3041F0519116 +:1033D0005813F8CF0DC05111F7CF942FF5CF9F3F61 +:1033E00039F0F901E90FF11D97FDFA9582830895EF +:1033F000089590910C01992321F090910D01911164 +:1034000009C020910E0130910F01F9013296205F21 +:103410003F4F1FC0982F9695969596959F30F0F444 +:10342000E0910E01F0910F01E90FF11D877021E08D +:1034300030E0A90102C0440F551F8A95E2F7CA0186 +:10344000809591818923818308953196E217F3074E +:1034500029F090819813F9CF1082F7CF089581E079 +:1034600090E0E0910E01F0910F01E80FF91F10823A +:10347000019680319105A9F708959091DA01892B81 +:103480008093DA01089580959091DA0189238093E1 +:10349000DA0108951092DA0108959091D901892BEB +:1034A0008093D901089580959091D90189238093C3 +:1034B000D90108951092D90108959091D801892BCE +:1034C0008093D801089580959091D80189238093A5 +:1034D000D80108951092D80108958093C7010895E6 +:1034E0001092C701089580910E0190910F01FC0187 +:1034F00031969C01205F3F4F80E0919191118F5F49 +:10350000E217F307D1F70895E0910E01F0910F0152 +:103510008091DA018083E0910E01F0910F0190819A +:103520008091D901892B8083E0910E01F0910F01E8 +:1035300090818091D801892B80838091C701882355 +:1035400061F0E0910E01F0910F019081892B808351 +:103550000E94731A81111092C70180910E019091FF +:103560000F010C94B20F20E0009739F0AC014150EC +:103570005109842395232F5FF7CF822F08958091DF +:10358000F401843021F11092DC0120E488E190E024 +:103590000FB6F894A895809360000FBE209360004A +:1035A00080E00E94A30883B7817F846083BF83B7D4 +:1035B000816083BF7894889583B78E7F83BF88E1CD +:1035C0000FB6F89480936000109260000FBE0895CB +:1035D00008950E94A5020E94B8020E94E81A0E9463 +:1035E000AD0391E0811101C090E0892F08950E9400 +:1035F0003F140E94A60F0C94A30882E084BD93E0C0 +:1036000095BD9AEF97BD80936E0008952FB7F894FB +:103610008091DD019091DE01A091DF01B091E00188 +:103620002FBF0895CF92DF92EF92FF920F931F93D7 +:103630002FB7F8944091DD015091DE016091DF01D8 +:103640007091E0012FBF6A017B01EE24FF248C0101 +:1036500020E030E0C016D106E206F30610F4415037 +:1036600051099A01281B390BC9011F910F91FF9035 +:10367000EF90DF90CF9008951F920F920FB60F92A8 +:1036800011248F939F93AF93BF938091DD0190910D +:10369000DE01A091DF01B091E0010196A11DB11DF5 +:1036A0008093DD019093DE01A093DF01B093E001F0 +:1036B000BF91AF919F918F910F900FBE0F901F9070 +:1036C00018950E94A30CF8942FEF87EA91E62150F9 +:1036D00080409040E1F700C0000087E090EBDC0103 +:1036E0008093FD019093FE01A093FF01B09300022F +:1036F0009CE088E10FB6F894A895809360000FBE17 +:1037000090936000FFCF0E94BB1B811102C00E94FA +:10371000A11B0E94C61B8093DB010E94CE1B90E080 +:103720009093EF018093EE0187FB882780F98093C7 +:103730000D010E94CA1B682F70E080E090E00C949D +:10374000FF176DEE7EEF80E090E00E94092260E0BE +:1037500082E090E00E94F72160E083E090E00E9428 +:10376000F72160E084E090E00E94F72160E085E0CE +:1037700090E00C94F72180E090E00E94F12121E09C +:103780008D3E9E4F09F020E0822F089582E090E068 +:103790000C94E92183E090E00C94E92184E090E02E +:1037A0000C94E921682F84E090E00C94F72180913B +:1037B000E30180FF0BC06091130185E0689FB001B9 +:1037C000112475956795759567952BC081FF09C084 +:1037D0006091130185E0689FB0011124759567958C +:1037E00020C082FF07C06091130185E0689FB0018F +:1037F000112417C09091E4019923D1F06091120136 +:10380000961788F72091130185E0289F90011124D5 +:10381000929FA001939F500D112470E0CA010E9455 +:10382000BB216038710540F46115710539F002C0A3 +:1038300065E070E0862F08958FE7089581E0089590 +:103840008091E30180FF08C06091110170E07595DF +:1038500067957595679521C081FF06C0609111013C +:1038600070E07595679519C082FF04C060911101E1 +:1038700070E010C09091E4019923C1F060911001B3 +:103880009617A0F780911101899FC001112470E063 +:103890000E94BB216038710528F46115710521F083 +:1038A000862F08958FE7089581E0089561E070E024 +:1038B000F4CF803F21F40E94D71B819504C0813F43 +:1038C00029F40E94D71B8093E7010895823F21F4D9 +:1038D0000E94D71B819504C0833F29F40E94D71B07 +:1038E0008093E6010895893F19F40E94201C05C0C9 +:1038F0008A3F31F40E94201C81958093E80108954D +:103900008B3F21F40E94201C819504C08C3F29F438 +:103910000E94201C8093E9010895843F21F4809146 +:10392000E501816017C0853F21F48091E501826047 +:1039300011C0863F21F48091E50184600BC0873F70 +:1039400021F48091E501886005C0883F31F48091C1 +:10395000E50180618093E50108958D3F21F4809118 +:10396000E30181600BC08E3F21F48091E30182600E +:1039700005C08F3F29F48091E30184608093E301C7 +:103980000895803F39F48091E70187FF6CC0109261 +:10399000E70169C0813F29F48091E7011816BCF363 +:1039A00062C09091E601823F29F497FF5CC01092BB +:1039B000E60159C0833F19F41916CCF354C0893F6E +:1039C00041F48091E80118160CF04DC01092E80106 +:1039D0004AC08A3F29F48091E80187FF44C0F6CFAE +:1039E0008B3F39F48091E90187FF3DC01092E901D6 +:1039F0003AC08C3F29F48091E9011816BCF333C01A +:103A0000843F21F48091E5018E7F17C0853F21F42A +:103A10008091E5018D7F11C0863F21F48091E50101 +:103A20008B7F0BC0873F21F48091E501877F05C024 +:103A3000883F31F48091E5018F7E8093E50113C0CA +:103A40008D3F21F48091E3018E7F0BC08E3F21F4E6 +:103A50008091E3018D7F05C08F3F29F48091E301C0 +:103A60008B7F8093E3018091E60181110EC08091EC +:103A7000E70181110AC08091E801811106C080919F +:103A8000E901811102C01092E401089585EE91E0F0 +:103A90000E94BD0F0E94061B9093E2018093E101FA +:103AA00008951F93CF93DF938091E1019091E201FC +:103AB0000E94121BAC019091E401992321F0209106 +:103AC000140130E006C0209115018AE0289F900182 +:103AD00011244217530708F486C08091E601C09173 +:103AE000E701D091E8011091E901811107C0C111EE +:103AF00076C0D11174C0111172C075C09F3F19F00A +:103B00009F5F9093E401181624F40E94D71B8093C2 +:103B1000E6018091E60187FF05C00E94D71B8195D1 +:103B20008093E6011C1624F40E94D71B8093E701C2 +:103B30008091E70187FF05C00E94D71B8195809384 +:103B4000E7016091E601662339F1C091E701CC23DA +:103B500019F1772767FD7095872F972F0E94CC204A +:103B600023E333E343E35FE30E9430210E94992083 +:103B70006093E6016C2F772767FD7095872F972F4D +:103B80000E94CC2023E333E343E35FE30E94302130 +:103B90000E9499206093E7011D1624F40E94201CC6 +:103BA0008093E8018091E80187FF05C00E94201CF6 +:103BB00081958093E801111624F40E94201C8093C3 +:103BC000E9018091E90187FF05C00E94201C8195D1 +:103BD0008093E901DF91CF911F910C94461D9F3F87 +:103BE00009F08ECF96CFDF91CF911F910895E5EE2A +:103BF000F1E085E0DF011D928A95E9F71092E4017A +:103C00001092E3010895833081F128F4813059F056 +:103C10008230D1F00895853009F449C0B8F186307A +:103C200009F456C0089580911501262F30E0280F21 +:103C3000311D2F3F310524F4680F6093150108955D +:103C40008FEF80931501089580911401262F30E0A5 +:103C5000280F311D2F3F310524F4680F60931401A4 +:103C600008958FEF80931401089580911301262FFA +:103C700030E0280F311D2F3F310524F4680F609389 +:103C8000130108958FEF809313010895809112011D +:103C9000262F30E0280F311D2F3F310524F4680F07 +:103CA0006093120108958FEF80931201089580911F +:103CB0001101262F30E0280F311D2F3F310524F44C +:103CC000680F6093110108958FEF8093110108959B +:103CD00080911001262F30E0280F311D2F3F310534 +:103CE00024F4680F6093100108958FEF8093100102 +:103CF0000895833011F128F4813049F0823091F039 +:103D00000895853081F120F18630C1F108958091C8 +:103D10001501681720F4861B8093150108951092F1 +:103D20001501089580911401681720F4861B809373 +:103D300014010895109214010895809113016817D9 +:103D400020F4861B809313010895109213010895A7 +:103D500080911201681720F4861B80931201089548 +:103D600010921201089580911101681720F4861BAA +:103D7000809311010895109211010895809110010E +:103D8000681720F4861B809310010895109210018B +:103D900008950F931F938D3109F471C008F045C049 +:103DA000803109F485C008F5873009F46FC068F4E4 +:103DB000863009F0ADC08091DB01817F8E7F8093DA +:103DC000DB0181E08093EB01A4C08B3009F49EC03D +:103DD0008E3009F09DC08091DB0182FB222720F903 +:103DE00091E0922790FB82F96CC0863109F48EC075 +:103DF00060F4813109F08CC00E943F1490910D0154 +:103E000081E0892780930D0181C0893109F47EC04A +:103E10008B3109F07DC08091DB0181FB222720F9E5 +:103E200091E0922790FB81F94CC0853309F466C07C +:103E300048F4873209F462C008F44FC0893209F4AB +:103E40005DC066C0833438F48A3308F044C08833D8 +:103E500009F45CC05DC0833409F450C0883409F0B3 +:103E600057C00E943F140FEF13ED20E301501040A4 +:103E70002040E1F700C000000E94611B47C00E9483 +:103E800053200E94A60F0E94A30840C09091DB011E +:103E9000892F8095817080FB90F929F09660986059 +:103EA0009093DB0136C0997F977F9093DB012EC002 +:103EB0008091DB0183FB222720F991E0922790FB80 +:103EC00083F98093DB01992309F18091DB01816003 +:103ED0008093DB011BC0895301C08D5141E050E04C +:103EE00060E070E08A019B0104C0000F111F221FD7 +:103EF000331F8A95D2F7C901B80104C061E070E0B0 +:103F000080E090E00E94FF170E943F1481E001C012 +:103F100080E01F910F91089580E0089580E008955A +:103F20008E518A3030F4E82FF0E0E65DFE4F80815C +:103F3000089580E00895CF93C82F8091EB018130E0 +:103F400079F018F08230E9F186C0E0910E01F0912D +:103F50000F018081813169F0823209F07EC009C091 +:103F6000E0910E01F0910F018081813111F08232D8 +:103F700061F48C2F0E948C1F811104C08C2F0E9431 +:103F8000C91E1DC081E090E01AC08C2F0E948E1FB8 +:103F9000811114C0C43179F048F4CB3079F0C031CC +:103FA00009F05FC082E08093EB0108C0C93219F0CC +:103FB000C83321F056C01092EB0153C081E08170EC +:103FC00052C0C93281F110F5C43169F1A8F4C7308B +:103FD00009F045C08AE08093150194E190931401A3 +:103FE00093E0909313018093120188E08093110174 +:103FF00088E28093100133C082EE8C0F863078F512 +:104000008C2F0E94901F8093EA0129C0CE34E9F0E2 +:1040100020F4CB3421F56AE013C0C13579F0C23504 +:10402000F1F461E00DC08091EA01882319F010924B +:10403000EA0115C081E08093EB0115C061E006C084 +:104040008091EA010E94031E0AC06AE08091EA01A1 +:104050000E94791E04C01092EB0180E004C081E050 +:1040600002C080E0ACCFCF910895E1E8F0E080811C +:10407000886080838081816080838FB7F89493E02B +:104080009093890090ED909388008FBF0895EFE69C +:10409000F0E08081826080830895EFE6F0E0808127 +:1040A0008D7F80830895EFE6F0E0908182E089279C +:1040B000808308951F920F920FB60F9211242F93B1 +:1040C0003F934F935F936F937F938F939F93AF93A0 +:1040D000BF93EF93FF938091EC019091ED010196D6 +:1040E0009093ED018093EC01811103C082E00E9466 +:1040F000A308E091ED01E695E695F0E0EF59FC4F5D +:10410000E4918091EC018E1303C080E00E94A3082B +:10411000FF91EF91BF91AF919F918F917F916F919F +:104120005F914F913F912F910F900FBE0F901F9075 +:10413000189504D06894B1118DC0089570D088F09E +:104140009F5790F0B92F9927B751A0F0D1F0660F83 +:10415000771F881F991F1AF0BA95C9F712C0B1309E +:1041600081F077D0B1E0089574C0672F782F882749 +:10417000B85F39F0B93FCCF3869577956795B395DD +:10418000D9F73EF490958095709561957F4F8F4F4C +:104190009F4F0895E89409C097FB3EF49095809551 +:1041A000709561957F4F8F4F9F4F9923A9F0F92FFD +:1041B00096E9BB279395F695879577956795B7957B +:1041C000F111F8CFFAF4BB0F11F460FF1BC06F5F61 +:1041D0007F4F8F4F9F4F16C0882311F096E911C073 +:1041E000772321F09EE8872F762F05C0662371F094 +:1041F00096E8862F70E060E02AF09A95660F771FA8 +:10420000881FDAF7880F9695879597F9089557FDD7 +:104210009058440F551F59F05F3F71F04795880F34 +:1042200097FB991F61F09F3F79F0879508951216CB +:1042300013061406551FF2CF4695F1DF08C0161677 +:1042400017061806991FF1CF869571056105089428 +:104250000895E894BB2766277727CB0197F908953F +:104260000BD078C069D028F06ED018F0952309F0F3 +:104270005AC05FC01124EECFCADFA0F3959FD1F3DF +:10428000950F50E0551F629FF001729FBB27F00D04 +:10429000B11D639FAA27F00DB11DAA1F649F662759 +:1042A000B00DA11D661F829F2227B00DA11D621FA8 +:1042B000739FB00DA11D621F839FA00D611D221F62 +:1042C000749F3327A00D611D231F849F600D211D46 +:1042D000822F762F6A2F11249F5750408AF0E1F0E9 +:1042E00088234AF0EE0FFF1FBB1F661F771F881F32 +:1042F00091505040A9F79E3F510570F014C0AACFCD +:104300005F3FECF3983EDCF3869577956795B7951C +:10431000F795E7959F5FC1F7FE2B880F911D969546 +:10432000879597F9089597F99F6780E870E060E0B6 +:1043300008959FEF80EC089500240A94161617063E +:1043400018060906089500240A9412161306140686 +:1043500005060895092E0394000C11F4882352F0E9 +:10436000BB0F40F4BF2B11F460FF04C06F5F7F4FA1 +:104370008F4F9F4F089597FB072E16F4009407D098 +:1043800077FD09D00E94D52107FC05D03EF4909519 +:1043900081959F4F0895709561957F4F0895EE0F19 +:1043A000FF1F0590F491E02D0994AA1BBB1B51E15E +:1043B00007C0AA1FBB1FA617B70710F0A61BB70B95 +:1043C000881F991F5A95A9F780959095BC01CD013A +:1043D0000895F999FECF92BD81BDF89A992780B5CD +:1043E0000895A8E1B0E042E050E00C941122262F9D +:1043F000F999FECF92BD81BDF89A019700B40216DB +:1044000039F01FBA20BD0FB6F894FA9AF99A0FBE88 +:1044100008950196272F0E94F8210C94F721DC01C2 +:10442000CB01FC01F999FECF06C0F2BDE1BDF89ABF +:10443000319600B40D9241505040B8F70895F89469 +:02444000FFCFAC +:104442000220A50833091009DC08A8080101C801E7 +:1044520028080A03140A404D36392103D4029E0269 +:104462006502F80111022A02430201020304050651 +:04447200070809002E +:00000001FF diff --git a/keyboards/ergodox_ez/keymaps/romanzolotarev-norman-osx/keymap.c b/keyboards/ergodox_ez/keymaps/romanzolotarev-norman-osx/keymap.c new file mode 100644 index 0000000000..a66971befd --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/romanzolotarev-norman-osx/keymap.c @@ -0,0 +1,46 @@ +#include "ergodox_ez.h" +#include "debug.h" +#include "action_layer.h" + +#define BASE 0 + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [BASE] = KEYMAP( + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_F5, + KC_TAB, KC_Q, KC_W, KC_D, KC_F, KC_K, KC_BSLS, + CTL_T(KC_ESC), KC_A, KC_S, KC_E, KC_T, KC_G, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_LBRC, + KC_F1, KC_F2, KC_F3, KC_F4, KC_LGUI, + /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ KC_VOLD, KC_MUTE, + /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ KC_VOLU, + /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ KC_BSPC, CTL_T(KC_ESC), KC_LALT, + // + /*-*/ KC_F6, KC_6, KC_7, KC_8, KC_9, KC_0, KC_EQL, + /*-*/ KC_NO, KC_J, KC_U, KC_R, KC_L, KC_SCLN, KC_MINS, + /*-*/ /*-*/ KC_Y, KC_N, KC_I, KC_O, KC_H, KC_ENT, + /*-*/ KC_RBRC, KC_P, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, + /*-*/ /*-*/ /*-*/ KC_RGUI, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, + KC_MPLY, KC_MNXT, + KC_MPRV, + KC_RALT, KC_QUOT, KC_SPC + ) +}; + +const uint16_t PROGMEM fn_actions[] = { +}; + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) { + return MACRO_NONE; +}; + +// Runs just one time when the keyboard initializes. +void matrix_init_user(void) { + ergodox_board_led_off(); + ergodox_right_led_1_off(); + ergodox_right_led_2_off(); + ergodox_right_led_3_off(); +}; + +// Runs constantly in the background, in a loop. +void matrix_scan_user(void) { +}; diff --git a/keyboards/ergodox_ez/keymaps/romanzolotarev-norman-osx/readme.md b/keyboards/ergodox_ez/keymaps/romanzolotarev-norman-osx/readme.md new file mode 100644 index 0000000000..80475ab21e --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/romanzolotarev-norman-osx/readme.md @@ -0,0 +1,28 @@ +# Roman's Layout + +There is only one layer based on [Norman layout](https://normanlayout.info/). + +Looking for multiple-layer layouts? + +- [Symbols, arrows, plover, HJKL arrows](../romanzolotarev-norman-plover-osx-hjkl/) +- [Same with IJKL arrows](../romanzolotarev-norman-plover-osx/) + +[![keyboard-layout](romanzolotarev-norman-osx.png)](http://www.keyboard-layout-editor.com/#/gists/9e89d54f1ea6eeeb7dab1b2d19d28195) + +## Functional Keys + +- Tap `F1` to mute microphone via [Shush](http://mizage.com/shush/). +- Tap `F2` to copy screenshot to the clipboard. +- Hold `SHIFT` and tap `F2` to save screenshot as a file. +- Tap `F3`, `F4`, `F5`, `F6` to resize a window via [Divvy](http://mizage.com/divvy/). + +## CTRL/ESC + +CTRL and ESC are frequently used in Vim. + +- Tap `CTRL/ESC` to send `ESC`. +- Hold `CTRL/ESC` to use as `CTRL`. + +## Activate N-rollover + +- Hold left `SHIFT` and right `SHIRT` and then tap `N`. diff --git a/keyboards/ergodox_ez/keymaps/romanzolotarev-norman-osx/romanzolotarev-norman-osx.png b/keyboards/ergodox_ez/keymaps/romanzolotarev-norman-osx/romanzolotarev-norman-osx.png new file mode 100644 index 0000000000..4b9433be28 Binary files /dev/null and b/keyboards/ergodox_ez/keymaps/romanzolotarev-norman-osx/romanzolotarev-norman-osx.png differ diff --git a/keyboards/ergodox_ez/keymaps/romanzolotarev-norman-plover-osx-hjkl/compiled.hex b/keyboards/ergodox_ez/keymaps/romanzolotarev-norman-plover-osx-hjkl/compiled.hex new file mode 100644 index 0000000000..59b9fa1d14 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/romanzolotarev-norman-plover-osx-hjkl/compiled.hex @@ -0,0 +1,1169 @@ +:100000000C94D0020C9414030C9414030C94140359 +:100010000C9414030C9414030C9414030C94140304 +:100020000C9414030C9414030C94BC0D0C948E0EBD +:100030000C9414030C9414030C9414030C941403E4 +:100040000C9414030C9498220C9414030C94140331 +:100050000C9414030C942B1C0C9414030C94140394 +:100060000C9414030C9414030C9414030C941403B4 +:100070000C9414030C9414030C9414030C941403A4 +:100080000C9414030C9414030C9414030C94140394 +:100090000C9414030C9414030C9414030C94140384 +:1000A0000C9414030C9414030C941403FB0E1D0FF6 +:1000B0000B101D0F0B10620F850F0B10DA0FED0FD9 +:1000C000BC12BC12EB12EB12211341137214721406 +:1000D0004C137214FC13FC136314721472146C141A +:1000E0000914091409140914091409140914091428 +:1000F0000914091409140914091409140914091418 +:100100001B1428142F14361440140000F0A1F0A280 +:10011000F0A335002B002971E1003A0000001E0019 +:10012000140004001D003B00C1001F001A0016004F +:100130001B003C0029712000070008000600E200B7 +:100140002A002100090017001900E300A90022007D +:100150000E000A0005000000AA0069000254000019 +:100160002F000000A8006A003100000030000000ED +:10017000AE0023000D001C0013000000AB002400A3 +:10018000180011001000E700AC00250015000C005D +:100190003600E6002C0026000F00120037003D005C +:1001A0003400270033000B0038003E00C3002E004F +:1001B0002D002800E5003F000000010001000100C3 +:1001C00001000100000001001E001E0201000100EC +:1001D000010001001F001F020100010001000100D9 +:1001E0002000200201000100010001002100210285 +:1001F00001000100010001002200220201000000B4 +:1002000001000100010000000100000001000100E8 +:100210000100000001000000010001002300230292 +:10022000010000000100010024002402010001007F +:10023000010001002500250201000100010001006C +:10024000260026020100010001000100270027020C +:100250000100010001000100010001000100010096 +:10026000000000000000000000000100000000008D +:100270001E00140004000100000000001F001A000E +:10028000160001001900000020000800070000000F +:100290000600000021001500090000000100000018 +:1002A000220017000A000000010001000100000008 +:1002B000000000000100010000000000000000003C +:1002C0000100000023001C000B00000001000000E2 +:1002D000240018000D0000000100000025000C00A3 +:1002E0000E00000010000000260012000F000000A9 +:1002F0001100000027001300330000000000000080 +:1003000000002F0034000000000001000100010087 +:1003100001000100000001000100010001000100D6 +:10032000010001000100F2000100010001000100D4 +:100330000100F00001000100010001000100F100D6 +:10034000F4000100010001000100F300F5000000CD +:100350000100010001000000010000000100010097 +:100360000100000001000000010001000100500038 +:100370000100000001000100010051000100010026 +:100380000100010001005200010001000100010014 +:1003900001004F0001000100010001000100010007 +:1003A0000100010001000100010001000100010045 +:1003B000000016034500720067006F0044006F00E4 +:1003C0007800200045005A00000016034500720026 +:1003D00067006F0044006F007800200045005A005D +:1003E00000000403090409026D00040100A0FA09D9 +:1003F0000400000103010100092111010001223F55 +:10040000000705810308000A090401000103010235 +:1004100000092111010001224D0007058203080097 +:100420000A09040200010300000009211101000172 +:100430002236000705830308000A090403000103AC +:100440000000000921110100012239000705840381 +:100450001000011201100100000008EDFE07130159 +:10046000000102000105010906A101050719E029A3 +:10047000E715002501950875018102050819012974 +:1004800005950575019102950175039101050719FF +:1004900000297715002501957875018102C00501B5 +:1004A0000980A101850216010026B7001A01002A61 +:1004B000B700751095018100C0050C0901A10185E7 +:1004C00003160100269C021A01002A9C0275109551 +:1004D000018100C005010902A1010901A10005096E +:1004E0001901290515002501950575018102950160 +:1004F000750381010501093009311581257F9502B8 +:100500007508810609381581257F950175088106D2 +:10051000050C0A38021581257F950175088106C0F2 +:10052000C005010906A101050719E029E715002505 +:100530000195087501810295017508810105081969 +:100540000129059505750191029501750391010534 +:1005500007190029FF150025FF950675088100C0C1 +:100560000000000000000000000000010204060A74 +:100570000F17202C3A4A5D71879DB3C7DAE9F5FC65 +:10058000FFFCF5E9DAC7B39D87715D4A3A2C201765 +:100590000F0A060402010000000000000000000035 +:1005A00011241FBECFEFDAE0DEBFCDBF04B603FEDD +:1005B00024C08091FB019091FC01A091FD01B091BC +:1005C000FE018730904BA740B04BB9F41092FB016D +:1005D0001092FC011092FD011092FE0114BE84B72E +:1005E000877F84BF88E10FB6F894809360001092F3 +:1005F00060000FBEE0E0FFE3099511E0A0E0B1E08C +:10060000EEEBF8E402C005900D92A433B107D9F7E0 +:1006100011E0A4E3B1E001C01D92AB3FB107E1F7E7 +:100620000E94000B0C945D240C9400001092B90001 +:100630008AE08093B800089594EA9093BC0090916A +:10064000BC0097FFFCCF9091B900987F983021F0C3 +:10065000903111F081E008958093BB0084E880938D +:10066000BC008091BC0087FFFCCF8091B900887FDF +:10067000883111F0803471F780E0089584E9809327 +:10068000BC008091BC0084FDFCCF08958093BB002A +:1006900084E88093BC008091BC0087FFFCCF9091E0 +:1006A000B900987F81E0983209F480E0089584E8E9 +:1006B0008093BC008091BC0087FFFCCF8091BB0081 +:1006C000089580910101811115C080E40E941C03EE +:1006D0008093010181110CC082E10E944603809346 +:1006E0000101811105C08FEF0E9446038093010133 +:1006F0000E943E0384B1807F84B985B1807F85B933 +:100700008AB1837F8AB98BB1837F8BB93E98469833 +:1007100008950E941C05809301010E94610380B32B +:100720008C7080BB81B3836F81BBA5E3B1E0E3E450 +:10073000F1E08EE08E0F11921D928E13FCCF0C947F +:100740000605BF92CF92DF92EF92FF920F931F9315 +:10075000CF93DF9380910101882379F08091340158 +:100760008F5F80933401811108C00E941C05809323 +:100770000101811102C00E94AE0405E311E0C0E056 +:10078000D0E0DD24D39482E0C82EEE24E394F12C53 +:10079000C730D10500F580910101811164C080E46A +:1007A0000E941C0380930101811112C082E10E940A +:1007B00046038093010181110BC0C7010C2E01C0BB +:1007C000880F0A94EAF780950E94460380930101FE +:1007D0000E943E0348C0CA30A1F028F4C83059F046 +:1007E000C93061F005C0CC3089F070F0CD3089F0AF +:1007F000209A289810C0219A29980DC0229A2A98E8 +:100800000AC0239A2B9807C0529A01C0539A5B984A +:1008100002C03E9A469890EA9A95F1F79FB179996D +:1008200002C082E001C080E091709D25982B7C99E8 +:1008300002C084E001C080E0892B7D9902C038E0CD +:1008400001C030E0832B7E9902C020E101C020E08E +:10085000822B9FB19095991F9927991F9295990F77 +:10086000907E892B0FC080910101811149C080E4E5 +:100870000E941C0380930101882379F1B12C0E940E +:100880003E038B2DF8019081981719F08083C09258 +:1008900000010E94610321960F5F1F4FCE30D105EA +:1008A00009F076CF80910001882361F18150809317 +:1008B0000001882339F08FE99FE00197F1F700C02C +:1008C000000020C0A3E4B1E0E5E3F1E0CF01825FE6 +:1008D00091919D938E13FCCF15C083E10E94460336 +:1008E000809301018111CACF81E40E941C0380938F +:1008F00001018111C3CF0E945703B82EB094BFCF1E +:1009000080E0C0CF0E94AC0481E0DF91CF911F91C5 +:100910000F91FF90EF90DF90CF90BF900895E82F58 +:10092000F0E0ED5BFE4F8081089508950F931F93D3 +:10093000CF93DF93C3E4D1E010E00C2F025F8991E5 +:1009400090E00E94511B180F0C13F9CF812FDF91FB +:10095000CF911F910F9108950C947C0556985E9845 +:1009600025982D9826982E9827982F988FEF90E00D +:10097000909389008093880090938B0080938A00E5 +:1009800090938D0080938C00259A2D9A2FEF80E70D +:1009900092E0215080409040E1F700C00000269A8C +:1009A0002E9A2FEF80E792E0215080409040E1F7AF +:1009B00000C00000279A2F9A2FEF80E792E0215085 +:1009C00080409040E1F700C0000025982D982FEF5F +:1009D00080E792E0215080409040E1F700C00000A5 +:1009E00026982E982FEF80E792E02150804090408B +:1009F000E1F700C0000027982F9856985E98259838 +:100A00002D9826982E9827982F98089589EA8093F4 +:100A1000800089E08093810024982C983F988AB1C7 +:100A20008F748AB96E98479A8BB1806B8BB9769A1E +:100A30000E94AE040C947B0580E2809301018091BA +:100A4000510181110EC00E94160381E08093510173 +:100A50002FEF83ED90E3215080409040E1F700C0FC +:100A6000000080E40E941C038093010181112EC0CC +:100A70000E94460380930101811128C00E94460311 +:100A800080930101811122C08FE30E94460380936D +:100A9000010181111BC00E943E0380E40E941C03DF +:100AA00080930101811112C08CE00E944603809363 +:100AB000010181110BC00E94460380930101811145 +:100AC00005C08FE30E944603809301010E943E030C +:100AD00080910101089561110BC0FC01828188237E +:100AE00021F085EE0E94601103C085EE0E9428125D +:100AF00080E090E0089508956091BD017091BE017D +:100B00008091BF019091C0010E945D1B56985E9834 +:100B100025982D9826982E9827982F98823039F06E +:100B2000833041F0813041F4259A2D9A0895269A18 +:100B30002E9A0895279A2F9A089581E0089581E0CA +:100B400008950C949F0508950F931F93CF93DF93FF +:100B50008C01FC01C081D181CE010E94D619BE0159 +:100B60000E944D06EC01B8010E94A105882309F4FA +:100B70008DC0F8018281882309F44AC080915D010B +:100B800081111FC0C431F0E5DF0709F051C00E9498 +:100B9000A30581E080935D010E94F51B90935C01A9 +:100BA00080935B01109254011092560110925501EE +:100BB000109258011092570110925A011092590147 +:100BC00065C080915B0190915C010E94011C883C92 +:100BD000910570F480915401E82FF0E0EE0FFF1FB3 +:100BE000EB5AFE4FD183C0838F5F809354014EC078 +:100BF000C43880E5D80721F0C538D04501F13AC0A6 +:100C0000F8018281882341F01092520182E01EC0D7 +:100C1000C438E0E5DE0759F580915201811106C024 +:100C200086E20E94601186E20E94281282E01CC0C7 +:100C3000C438F0E5DF0741F3C538D045D9F4F801F1 +:100C40008281882331F01092530180E20E94771252 +:100C50001DC080915301811106C087E20E9460117E +:100C600087E20E94281280E20E947E120FC0C538DF +:100C7000D04529F381E08093520180935301C8014C +:100C8000DF91CF911F910F910C949D0580E0DF9132 +:100C9000CF911F910F910895089596E0799FF001EB +:100CA000112494E5899FE00DF11D1124E60FF11D3B +:100CB000EE0FFF1FEE5EFE4F859194910895880F11 +:100CC000991FFC01E657F040859194910895880F93 +:100CD000991FFC01E65FFE4F8591949108950F9353 +:100CE0001F93CF93DF93EC01811520E3920750F51A +:100CF000C11580E2D80708F0C3C0CB3BD10590F402 +:100D0000C83AD10508F06AC0C53AD10508F05BC001 +:100D1000C430D10508F0D0C1219709F0CAC101E063 +:100D200010E00AC2CF3FD10511F008F0C5C1C03FA5 +:100D3000D10508F0A2C0CE01805E9109089708F4A1 +:100D4000BBC1B7C1C13090E5D90709F4A2C020F5F5 +:100D5000C0318FE4D80770F4C11590E4D90708F0CA +:100D600094C0C11521E3D20708F0A3C1DD278E018D +:100D7000106CE2C1C115D04509F09BC10E94DD1481 +:100D80008FEF94E32CE0815090402040E1F700C0C9 +:100D900000000E94501CD0C1C11597E5D90758F436 +:100DA000C03121E5D20708F01CC1C43180E5D80765 +:100DB00008F475C07EC1CE0190578115904108F0AE +:100DC00078C1DF7073C1C53AD10509F477C1C63A5D +:100DD000D10509F076C102E810E4AEC1C83AD105E8 +:100DE00009F472C1C93AD10509F471C1CA3AD105F1 +:100DF00009F470C1CB3AD10509F46FC1CC3AD105E1 +:100E000009F46EC1CD3AD10509F46DC1C03BD105DD +:100E100009F46CC1CE3AD10509F46BC1CF3AD105C2 +:100E200009F46AC1C13BD10509F469C1C23BD105CE +:100E300009F468C1C33BD10509F467C1C43BD105BE +:100E400009F466C1C53BD10509F465C1C63BD105AE +:100E500009F464C1C73BD10509F463C1C83BD1059E +:100E600009F462C1C93BD10509F461C1CA3BD1058E +:100E700009F460C100E014E45FC18E0110655CC13B +:100E8000CE019F700E94670658C1DF708E01106A04 +:100E900053C18091DA0181608093DA014DC10E94D3 +:100EA000F51D811102C00E94DB1D0E94121E90E000 +:100EB0009093FB018093FA01C23080E5D80721F4BA +:100EC0008091FA01816086C0C43090E5D90721F491 +:100ED0008091FA0182607EC0C63020E5D20721F4FD +:100EE0008091FA01846076C0C83080E5D80719F493 +:100EF0008091FA0127C0CA3090E5D90721F480918A +:100F0000FA01806167C0CC3020E5D20721F48091DE +:100F1000FA0180625FC0CE3080E5D80721F480916D +:100F2000FA01806457C0C03190E5D90721F480915F +:100F3000FA0180684FC0C23120E5D20729F48091C0 +:100F4000FA018460886046C0C33080E5D80721F488 +:100F50008091FA018E7F3EC0C53090E5D90721F41B +:100F60008091FA018D7F36C0C73020E5D20721F489 +:100F70008091FA018B7F2EC0C93080E5D80719F423 +:100F80008091FA0126C0CB3090E5D90721F48091F9 +:100F9000FA018F7E1FC0CD3020E5D20721F4809169 +:100FA000FA018F7D17C0CF3080E5D80721F48091FA +:100FB000FA018F7B0FC0C13190E5D90721F48091F0 +:100FC000FA018F7707C0C331D04531F48091FA011F +:100FD0008B7F877F8093FA018091FA010E94161E11 +:100FE000ABC08D2F99278F70992781309105D9F447 +:100FF0009E012370332702C0880F991F2A95E2F7BC +:101000009C688E0144E0000F111F4A95E1F700270C +:101010001370802B912B53E0CC0FDD1F5A95E1F715 +:10102000C076DD272FC08230910531F4DC2FCC272C +:101030008E01016F106A80C08330910569F4CE0182 +:101040008370992701E010E002C0000F111F8A95FC +:10105000E2F7C8019C680FC084309105B9F4CE0155 +:101060008370992701E010E002C0000F111F8A95DC +:10107000E2F7C8019A6823E0CC0FDD1F2A95E1F75B +:10108000C07ED7708C010C2B1D2B56C0853091056E +:1010900031F4DC2FCC278E01046F106A4DC0069707 +:1010A00009F04AC0CF71DD27DC2FCC278E011062FA +:1010B00043C000E010E040C08E013EC001E810E4F3 +:1010C0003BC003E810E438C002EE14E435C009EE7A +:1010D00014E432C00AEE14E42FC005EB14E42CC073 +:1010E00006EB14E429C007EB14E426C00CEC14E46E +:1010F00023C00DEC14E420C003E815E41DC00AE889 +:1011000015E41AC002E915E417C004E915E414C097 +:1011100001E216E411C003E216E40EC004E216E494 +:101120000BC005E216E408C006E216E405C007E2BB +:1011300016E402C00AE216E4C801DF91CF911F91C4 +:101140000F91089596E0799FF001112494E5899F0D +:10115000E00DF11D1124E60FF11DEE0FFF1FEE5EF5 +:10116000FE4F85919491803E9105E0F4803C91057D +:1011700058F58133910509F46FC048F4893291051F +:1011800009F463C08A32910509F46DC072C08933D5 +:101190009105E9F082389105D1F08533910509F484 +:1011A0004DC067C0833E910581F138F4803E9105C2 +:1011B000B9F0823E9105D9F05CC0863E910561F19F +:1011C000873E9105A1F155C00E945F0608952091C8 +:1011D000FA0120FD02C021FF4CC080EE90E049C022 +:1011E0008091FA0180FFF9CF89E390E042C08091BD +:1011F000FA0182FF0EC08091FA0184FF03C080E0F3 +:1012000090E037C083EE90E034C08091FA0182FF15 +:10121000F2CF82EE90E02DC08091FA0183FF0BC0E7 +:101220008091FA0184FDEBCF87EE90E022C080919F +:10123000FA0183FFF5CF86EE90E01BC08091FA01A2 +:1012400085FF07C089E290E014C08091FA0185FF14 +:10125000F9CF85E390E00DC08091FA0186FF07C0C9 +:101260008AE290E006C08091FA0186FFF9CF81E31F +:1012700090E00E946F06089508950C943C098091B7 +:101280006E010895CF93DF9300D01F92CDB7DEB7E4 +:101290009C018091F101843019F593E099833B839F +:1012A0002A839093E9008FEF9091E800815095FD9B +:1012B00006C095ED9A95F1F700008111F5CF809168 +:1012C000E80085FF0DC040E050E063E070E0CE0133 +:1012D00001960E94AC0B8091E8008E778093E80025 +:1012E0000F900F900F90DF91CF910895CF93DF93E0 +:1012F00000D01F92CDB7DEB72091F101243021F547 +:1013000022E029839B838A8383E08093E9008FEF27 +:101310009091E800815095FD06C095ED9A95F1F702 +:1013200000008111F5CF8091E80085FF0DC040E0FD +:1013300050E063E070E0CE0101960E94AC0B80911A +:10134000E8008E778093E8000F900F900F90DF9168 +:10135000CF9108952091F1012430F1F422E02093FF +:10136000E9002FEF3091E800215035FD06C035ED42 +:101370003A95F1F700002111F5CF2091E80025FF03 +:101380000BC040E050E065E070E00E94AC0B809143 +:10139000E8008E778093E8000895CF93DF93EC0107 +:1013A0009091F101943009F046C080910C0188239E +:1013B000D9F080910D018823B9F09093E9008FEF67 +:1013C0009091E800815095FD06C095E19A95F1F75E +:1013D00000008111F5CF8091E80085FF2CC040E02E +:1013E00050E060E170E017C081E08093E9008FEF8A +:1013F0009091E800815095FD06C095ED9A95F1F722 +:1014000000008111F5CF8091E80085FF14C040E015 +:1014100050E068E070E0CE010E94AC0B8091E800E3 +:101420008E778093E80080E1FE01AEE5B1E00190A7 +:101430000D928A95E1F7DF91CF9108958091F001A7 +:10144000811109C00E94410D0E949E0D8091E20011 +:1014500084608093E20008951092F0010895089549 +:101460000C9485220E94E61B0E948B220E9444104D +:101470000C943D0942E061EC81E00E94BB0C42E02B +:1014800061EC82E00E94BB0C42E061EC83E00E94D0 +:10149000BB0C42E161EC84E00C94BB0C8091F30145 +:1014A000833009F455C030F4813071F0823009F492 +:1014B0008EC008958A3009F47AC08B3009F460C078 +:1014C000893009F09CC020C08091F201813A09F076 +:1014D00096C08091E800877F8093E8008091F601B4 +:1014E0009091F701892B21F460E18EE591E003C032 +:1014F00060E080E090E070E00E94F70B8091E800EF +:101500008B778093E80008958091F201813209F091 +:1015100076C08091F6019091F701009719F003973A +:1015200009F06DC08091E800877F8093E80080918A +:10153000E80082FD05C08091F1018111F8CF5FC004 +:101540008091F10080936E018091E8008B7753C009 +:101550008091F201813A09F052C08091F601909198 +:10156000F701892B09F04BC08091E800877F8093B9 +:10157000E8008091E80080FFFCCF80910C0136C02C +:101580008091F2018132D9F58091F6019091F701B5 +:10159000892BA9F58091E800877F8093E8000E945D +:1015A000F00C8091F40180930C010C94DD14809177 +:1015B000F201813221F58091E800877F8093E80075 +:1015C0000E94F00C8091F50180936F010895809145 +:1015D000F201813AA1F48091E800877F8093E800CE +:1015E0008091E80080FFFCCF80916F018093F10033 +:1015F0008091E8008E778093E8000C94F00C0895B9 +:1016000084B7877F84BF88E10FB6F8948093600029 +:10161000109260000FBE90E080E80FB6F8948093BF +:101620006100909361000FBE0E9493100E94410DD3 +:101630000E949E0D8091E20084608093E200789485 +:101640000E9424100E94951082E091E00E943F10B9 +:101650000E9473228091F101853069F40E94AD1BD4 +:101660008091EF018823B1F30E94D81B882391F366 +:101670000E94960BEFCF0E949B10ECCF292F3327AF +:1016800023303105C9F064F42130310581F0223076 +:10169000310509F043C08DE690E026EE33E042C00C +:1016A00021323105F1F02232310541F137C082E1BA +:1016B00090E023E534E036C099278130910541F070 +:1016C0008230910541F0892B49F5E2EEF3E005C047 +:1016D000EAECF3E002C0E2EBF3E0849190E09F01DA +:1016E00021C06430D8F4E62FF0E0EE0FFF1FEE5D6E +:1016F000FE4F2081318189E090E014C0643070F4A5 +:1017000070E0FB01EE0FFF1FE65EFE4F208131818E +:10171000FB01EA5EFE4F808190E004C080E090E033 +:1017200020E030E0FA0131832083089580E189BD13 +:1017300082E189BD09B400FEFDCF8091D8008F7D84 +:101740008093D8008091E00082608093E0008091D7 +:10175000E00081FDFCCF0895CF92DF92EF92FF92DF +:101760000F931F93CF93DF93EC018B016A010E94CB +:101770000F0D811133C0C114D10439F0F6018081FD +:101780009181081B190BC80FD91FE12CF12C0115F1 +:10179000110519F18091E80085FD16C08091E800DF +:1017A0008E778093E800C114D10449F0F60180815E +:1017B0009181E80EF91EF182E08285E00FC00E945F +:1017C0000F0D882321F30AC089918093F100015005 +:1017D0001109FFEFEF1AFF0ADACF80E0DF91CF9116 +:1017E0001F910F91FF90EF90DF90CF90089520917F +:1017F000F8013091F9012617370748F06115710596 +:1018000039F42091E8002E772093E80001C0B90157 +:1018100040E061157105A9F12091F101222309F43D +:1018200043C0253009F442C02091E80023FD40C0A8 +:101830002091E80022FD32C02091E80020FFE9CF8E +:101840004091F3002091F20030E0342BFC01CF01F5 +:101850006115710559F02830310540F4819180936C +:10186000F100615071092F5F3F4FF1CF41E0283007 +:10187000310509F040E02091E8002E772093E80040 +:10188000C8CF4111C9CF0AC08091F101882361F00E +:10189000853061F08091E80083FD0AC08091E80006 +:1018A00082FFF2CF80E0089582E0089583E00895FA +:1018B00081E008952091F8013091F901261737074A +:1018C00048F06115710539F42091E8002E772093D6 +:1018D000E80001C0B901FC0120E06115710591F13A +:1018E0008091F101882309F440C0853009F43FC09C +:1018F0008091E80083FD3DC08091E80082FD2FC00B +:101900008091E80080FFE9CF2091F3008091F20000 +:1019100090E0922B6115710559F08830910540F4E3 +:1019200024912093F1003196615071090196F2CF14 +:1019300021E0089709F020E08091E8008E778093FD +:10194000E800CBCF2111CCCF0AC08091F1018823D0 +:1019500061F0853061F08091E80083FD0AC08091DC +:10196000E80082FFF2CF80E0089582E0089583E0EE +:10197000089581E00895982F973058F59093E900E5 +:10198000981739F07091EC002091ED005091F00023 +:1019900003C0242F762F50E021FF19C03091EB00B7 +:1019A0003E7F3093EB003091ED003D7F3093ED00B2 +:1019B0003091EB0031603093EB007093EC0020939A +:1019C000ED005093F0002091EE0027FF07C09F5FCD +:1019D000D3CF8F708093E90081E0089580E008956F +:1019E0008091F20187FF11C08091E80082FD05C05F +:1019F0008091F1018111F8CF11C08091E8008B77BF +:101A00000BC08091F101882349F08091E80080FFAC +:101A1000F8CF8091E8008E778093E80008952091B8 +:101A2000E4003091E50095E64091EC00842F817050 +:101A300040FF22C08091E80080FD1CC08091F10130 +:101A4000882391F0853091F08091EB0085FD10C0E6 +:101A50004091E4005091E5004217530729F39A01A1 +:101A6000915011F784E0089582E0089583E008958D +:101A700081E0089580E008954091E80042FFDECFC4 +:101A800008950E94AF0D0E94B70DE0EEF0E0808156 +:101A900081608083E8EDF0E080818F77808319BCDE +:101AA000A7EDB0E08C918E7F8C9380818F7E8083B8 +:101AB0001092F00108950F931F93CF93DF930E942C +:101AC000AF0D0E94B70DC8EDD0E088818F77888375 +:101AD00088818068888388818F7D888319BC109273 +:101AE000F1011092ED011092EF011092EE0100EE63 +:101AF00010E0F80180818B7F8083888181608883FA +:101B000042E060E080E00E94BB0CE1EEF0E080810A +:101B10008E7F8083E2EEF0E080818160808380812F +:101B200088608083F80180818E7F808388818061D6 +:101B30008883DF91CF911F910F910895E8EDF0E038 +:101B400080818F7E8083E7EDF0E0808181608083FB +:101B500084E082BF81E08093F0010C945B0DE8ED9E +:101B6000F0E080818E7F80831092E20008951092D1 +:101B7000DA001092E10008951F920F920FB60F92B3 +:101B800011242F933F934F935F936F937F938F9382 +:101B90009F93AF93BF93EF93FF938091E10082FFF8 +:101BA0000BC08091E20082FF07C08091E1008B7F33 +:101BB0008093E1000E9423108091DA0080FF1FC013 +:101BC0008091D80080FF1BC08091DA008E7F8093C7 +:101BD000DA008091D90080FF0DC080E189BD82E1EB +:101BE00089BD09B400FEFDCF81E08093F1010E9420 +:101BF0001E0A05C019BC1092F1010E942C0A8091A6 +:101C0000E10080FF19C08091E20080FF15C0809143 +:101C1000E2008E7F8093E2008091E20080618093F9 +:101C2000E2008091D80080628093D80019BC85E0E2 +:101C30008093F1010E94300A8091E10084FF30C05E +:101C40008091E20084FF2CC080E189BD82E189BDE2 +:101C500009B400FEFDCF8091D8008F7D8093D8001D +:101C60008091E1008F7E8093E1008091E2008F7E81 +:101C70008093E2008091E20081608093E200809195 +:101C8000ED01882311F084E007C08091E30087FD17 +:101C900002C081E001C083E08093F1010E94320A1A +:101CA0008091E10083FF29C08091E20083FF25C07D +:101CB0008091E100877F8093E10082E08093F101D1 +:101CC0001092ED018091E1008E7F8093E100809180 +:101CD000E2008E7F8093E2008091E2008061809339 +:101CE000E20042E060E080E00E94BB0C8091F000E6 +:101CF00088608093F0000E942F0AFF91EF91BF91BE +:101D0000AF919F918F917F916F915F914F913F9193 +:101D10002F910F900FBE0F901F9018951F920F924A +:101D20000FB60F9211242F933F934F935F936F93AE +:101D30007F938F939F93AF93BF93CF93DF93EF9353 +:101D4000FF93C091E900CF708091EC00D82FD17043 +:101D500080FDD0E81092E9008091F000877F8093A9 +:101D6000F00078940E94D20E1092E9008091F00069 +:101D700088608093F000CD2BCF70C093E900FF9175 +:101D8000EF91DF91CF91BF91AF919F918F917F9113 +:101D90006F915F914F913F912F910F900FBE0F90D8 +:101DA0001F9018951F93CF93DF93CDB7DEB7AA97F7 +:101DB0000FB6F894DEBF0FBECDBFE2EFF1E088E0D2 +:101DC0008E0F9091F10091938E13FBCF0E944E0ADB +:101DD0008091E80083FF1FC18091F2019091F3018F +:101DE000492F50E04A30510508F015C1FA01EA5A6E +:101DF000FF4F0C940D24803881F0823809F00BC11C +:101E00008091F6018F708093E9008091EB0085FB53 +:101E1000882780F91092E90006C08091EE01909128 +:101E2000EF01911182609091E800977F9093E80014 +:101E30008093F1001092F100C8C0282F2D7F09F087 +:101E4000EAC0882319F0823061F0E5C08091F40186 +:101E5000813009F0E0C0933009F080E08093EF0119 +:101E60002BC08091F401811127C08091F6018F7001 +:101E700009F4D1C08093E9002091EB0020FF1CC041 +:101E8000933021F48091EB00806214C09091EB00BC +:101E900090619093EB0021E030E0A90102C0440F73 +:101EA000551F8A95E2F74093EA001092EA0080916C +:101EB000EB0088608093EB001092E9008091E800CD +:101EC000877F86C08111A7C01091F4011F77809190 +:101ED000E3008078812B8093E3008091E800877F86 +:101EE0008093E8000E94F00C8091E80080FFFCCF16 +:101EF0008091E30080688093E300111102C082E0CA +:101F000001C083E08093F10186C08058823008F0E0 +:101F100082C08091F4019091F5018C3D53E09507CA +:101F200079F583E08A838AE289834FB7F894DE01EA +:101F3000139620E03EE051E2E32FF0E0509357008B +:101F4000E49120FF03C0E295EF703F5FEF708E2FAA +:101F500090E0EA3010F0C79601C0C0968D939D9333 +:101F60002F5F243149F74FBF8091E800877F80932E +:101F7000E8006AE270E0CE0101960E94F70B14C0FF +:101F8000AE014F5F5F4F6091F6010E943E0BBC01B6 +:101F9000009709F440C09091E800977F9093E80083 +:101FA00089819A810E945A0C8091E8008B778093F6 +:101FB000E80031C0803879F58091E800877F809310 +:101FC000E8008091ED018093F1008091E8008E7728 +:101FD0008093E8000E94F00C1EC081111CC09091FB +:101FE000F4019230C0F48091E800877F8093E8008C +:101FF0009093ED010E94F00C8091ED01811106C0DB +:102000008091E30087FD02C081E001C084E08093FD +:10201000F1010E943A0A8091E80083FF0AC0809192 +:10202000E800877F8093E8008091EB0080628093D6 +:10203000EB00AA960FB6F894DEBF0FBECDBFDF91BE +:10204000CF911F9108950895CF938091F101882336 +:10205000A1F0C091E900CF709091EC00892F8170C0 +:1020600090FD80E8C82B1092E9008091E80083FD84 +:102070000E94D20ECF70C093E900CF910895909343 +:102080007501809374010895E0917401F0917501D8 +:10209000309721F00190F081E02D099480E00895BF +:1020A000E0917401F0917501309721F00280F38185 +:1020B000E02D09940895E0917401F0917501309735 +:1020C00021F00480F581E02D09940895209172019A +:1020D000309173018217930771F09093730180938D +:1020E0007201E0917401F0917501309721F0068042 +:1020F000F781E02D099408952091700130917101CC +:102100008217930771F09093710180937001E091B1 +:102110007401F0917501309721F00084F185E02D74 +:102120000994089508950C9492100E94EC1B0E944B +:1021300089030C94AE1C9F92AF92BF92CF92DF9214 +:10214000EF92FF920F931F93CF93DF9300D000D0B5 +:1021500000D0CDB7DEB70E94A1030DE010E0AA24A5 +:10216000A394B12C902E802F0E948F04980129589F +:102170003E4F6901F901F080F826A1F401501109E0 +:1021800088F78FEF89838A831B820E94F51B816009 +:10219000782F9D838C8349815A816B818D810E9428 +:1021A00032112FC09091DA0191FF04C08E830E94FA +:1021B00095048E8125E030E0A501022E01C0440F78 +:1021C0000A94EAF7E42E4F21C1F029839A828E21E6 +:1021D00091E009F490E09B830E94F51B8160782FC9 +:1021E0009D838C8349815A816B818D810E9432113C +:1021F000F6018081E826E08204C021503109E0F632 +:10220000BDCF0E94951F109176010E9444101817AF +:10221000B9F00E9444108093760126960FB6F89488 +:10222000DEBF0FBECDBFDF91CF911F910F91FF9009 +:10223000EF90DF90CF90BF90AF909F900C943D09AE +:1022400026960FB6F894DEBF0FBECDBFDF91CF91BB +:102250001F910F91FF90EF90DF90CF90BF90AF90C4 +:102260009F900895CF93DF93CDB7DEB72B970FB62E +:10227000F894DEBF0FBECDBF4F83588769877A873A +:102280008B87DE01119686E0FD0111928A95E9F7B0 +:1022900085E0FE01379601900D928A95E1F749811C +:1022A0005A816B817C818D819E810E947B172B9648 +:1022B0000FB6F894DEBF0FBECDBFDF91CF9108956A +:1022C000CF93882309F4C2C0C82F823859F40E94E2 +:1022D000441081FDBBC089E30E94551A0E94221B55 +:1022E00089E30CC0833879F40E94441080FDAEC0AD +:1022F00083E50E94551A0E94221B83E50E94971ACB +:10230000CF910C94221B843859F40E94441082FD12 +:102310009DC087E40E94551A0E94221B87E4EECFDD +:102320008CEF8C0F813A48F48C2F0E94D8218111B8 +:102330008DC08C2F0E94551AE3CF80E28C0F88301D +:1023400048F4C77081E001C0880FCA95EAF70E947F +:10235000DB1AD6CF8BE58C0F833078F4C53A29F0A1 +:10236000C63A31F083E890E005C081E890E002C011 +:1023700082E890E0CF910C94661088E58C0F833151 +:1023800008F064C0C83A39F1C93A41F1CA3A49F192 +:10239000CB3A51F1CC3A59F1CD3A61F1C03B69F1F8 +:1023A000CE3A71F1CF3A79F1C13B81F1C23B89F16B +:1023B000C33B91F1C43B99F1C53BA1F1C63BA9F1E7 +:1023C000C73BB1F1C83BB9F1C93BC1F1CA3BC9F147 +:1023D00080E090E038C082EE90E035C089EE90E079 +:1023E00032C08AEE90E02FC085EB90E02CC086EBE7 +:1023F00090E029C087EB90E026C08CEC90E023C0F1 +:102400008DEC90E020C083E891E01DC08AE891E067 +:102410001AC082E991E017C084E991E014C081E21A +:1024200092E011C083E292E00EC084E292E00BC021 +:1024300085E292E008C086E292E005C087E292E081 +:1024400002C08AE292E0CF910C947C10CF91089563 +:10245000882309F44BC0823859F40E94441081FF4C +:1024600045C089E30E94551A0E94221B89E30CC0D3 +:10247000833871F40E94441080FF38C083E50E94C5 +:10248000551A0E94221B83E50E94971A0C94221B66 +:10249000843859F40E94441082FF28C087E40E94C7 +:1024A000551A0E94221B87E4EFCF9CEF980F913AB8 +:1024B00058F390E2980F983050F4877091E001C083 +:1024C000990F8A95EAF7892F0E94E11ADFCF9BE5E1 +:1024D000980F933020F480E090E00C946610885AB6 +:1024E000833120F480E090E00C947C1008958823E0 +:1024F00021F00E94DB1A0C94221B0895882321F0FE +:102500000E94E11A0C94221B08957F928F929F9251 +:10251000AF92BF92CF92DF92EF92FF920F931F93F1 +:10252000CF93DF931F92CDB7DEB77C01C62E772EF7 +:10253000FC01058102950F70128111110E94F81A99 +:102540000E944E1A882379F0112369F080E28C0DE5 +:10255000883048F082E00E94371A0E944E1A91E0BB +:10256000D82ED92601C0D12CE72DE295EF70F0E0EE +:10257000E05AFF4F0C940D24872D807F072D0F709C +:10258000882311F00295007F112389F0002309F4BC +:1025900090C180E28C0D883020F4802F0E94DB1ADD +:1025A00003C0802F0E94EB1A0E94221B82C18C2D37 +:1025B0000E942812002309F495C180E28C0D883016 +:1025C00020F4802F0E94E11A03C0802F0E94F11A8C +:1025D0000E94221B87C1972D907F872D8F7090328C +:1025E00011F08295807FCC2021F0F1E0CF16B1F080 +:1025F0001EC0112349F0002309F414C1013009F071 +:1026000011C10E940B1B6EC1002319F0013009F4A7 +:1026100069C189830E940E1B89810AC1112321F09F +:10262000023008F05FC1FEC001115CC101C111237D +:1026300021F0002309F4F6C03CC1002309F4F8C0DE +:102640003EC1872D86958695837090E0009719F09E +:10265000019761F047C1112321F08C2D972D9370C4 +:1026600002C080E090E00E9466103CC1112321F07E +:102670008C2D972D937002C080E090E00E947C101A +:1026800031C18C2D112319F00E949D1E02C00E94A1 +:10269000051F0E948A1F26C1872D837009F052C032 +:1026A000111120C18C2D829586958770880F880F17 +:1026B0009C2D9F70892E912CA12CB12C082E04C02A +:1026C000880C991CAA1CBB1C0A94D2F7C4FE14C027 +:1026D0000FE010E020E030E0B901A80104C0440F91 +:1026E000551F661F771F8A95D2F7CB01BA016095F7 +:1026F00070958095909503C060E070E0CB01272D28 +:1027000026952695237030E02230310569F023307C +:10271000310589F0682979298A299B2921303105D9 +:1027200071F00E94C318DEC0682979298A299B2983 +:102730000E94DF18D7C00E94C318C501B4010E94CF +:10274000A718D0C0112319F0872D817001C086957C +:10275000882309F4C7C08C2D829586958770880FD1 +:10276000880F9C2D9F70892E912CA12CB12C082EA6 +:1027700004C0880C991CAA1CBB1C0A94D2F7C4FE86 +:1027800014C00FE010E020E030E0B901A80104C05F +:10279000440F551F661F771F8A95D2F7CB01BA01E8 +:1027A000609570958095909503C060E070E0CB01D6 +:1027B000272D269526952370422F50E04230510553 +:1027C00069F04330510589F0682979298A299B29C4 +:1027D0004130510571F00E949D1984C06829792902 +:1027E0008A299B290E94B9197DC00E949D19C501A3 +:1027F000B4010E94811976C08C2D90E0FC01E05E4E +:10280000F109E531F10508F050C0E059FF4F0C9493 +:102810000D240C2D0F70872D8F71112331F00E9424 +:102820001A19802F0E9477125DC00E943B19802FD9 +:102830000E947E1257C0112339F0011153C0872D19 +:102840008F710E9460194EC0023008F04BC0F7CF64 +:10285000112339F0872D8F710E941A1943C011235B +:10286000C9F3872D8F710E943B193CC0112329F0B9 +:10287000872D8F710E94051935C00E94FB1832C048 +:10288000112351F0172D1F71812F0E941A1963E037 +:10289000812F0E942E1A26C081E00E94371A023032 +:1028A00008F182E00E94371A1DC0112331F0002385 +:1028B00089F28C2D0E94601115C0002391F28C2D9D +:1028C0000E9428120FC0472D4F706C2DC7010E9427 +:1028D0006B050E941F1806C0472D4F706C2DC70155 +:1028E0000E944C06DD20F9F00E942A1A80FD1BC0D0 +:1028F000F70112820E94241A0E941A19C7010E942D +:10290000A2140E94241A0F90DF91CF911F910F9172 +:10291000FF90EF90DF90CF90BF90AF909F908F90FF +:102920007F900C943B190F90DF91CF911F910F91E5 +:10293000FF90EF90DF90CF90BF90AF909F908F90DF +:102940007F9008950F931F93CF93DF93EC018881BD +:1029500099812B813C81232BB9F09F3F11F48F3F4C +:1029600099F0CE010E94A405882371F068817981D5 +:102970008A810E94201A8C010E94D5190E949C18FD +:10298000B801CE010E948512DF91CF911F910F9166 +:1029900008950E94F81A0E94081B0E94CD1A0E94F6 +:1029A000221B0E943B200E948A1F80E090E00E9430 +:1029B000661080E090E00C947C100E94E81A0C9461 +:1029C000C9140E94151A292F22952F7030E02C303F +:1029D00031054CF42A3031056CF422503109223093 +:1029E0003105A8F407C02C30310569F02F303105CE +:1029F00051F00DC0803F69F018F4803E40F409C0EA +:102A0000843F29F406C093FB882780F9089580E06D +:102A1000089581E00895CF93DF9300D000D01F92F6 +:102A2000CDB7DEB70F900F900F900F900F90DF9102 +:102A3000CF910895CF93DF9300D000D000D0CDB7D1 +:102A4000DEB726960FB6F894DEBF0FBECDBFDF917E +:102A5000CF9108951F93CF93DF93C091850116E026 +:102A600080918601C81799F0D0E01C9FF0011D9F4E +:102A7000F00D1124E957FE4F40815181628173812D +:102A8000848195810E941A152196C770E9CFDF9144 +:102A9000CF911F9108954091B7015091B801609175 +:102AA000B9017091BA018091BB019091BC010C9465 +:102AB0001A158091BC0182958F7009F054C08091E5 +:102AC000B901882309F44FC080918501A091860146 +:102AD0006091B7017091B8014091BA015091BB016A +:102AE000B6E08A1709F43FC090E041155105C1F1E5 +:102AF0007F3F11F46F3FA1F1B89FF001B99FF00D36 +:102B00001124E957FE4F218172132AC020816213DC +:102B100027C02281211124C0238134812417350745 +:102B200010F421503109241B350B283C3105C0F429 +:102B30002091BC012F7020612093BC0126E0289FCA +:102B4000F001299FF00D1124E457FE4F80818F7012 +:102B50008061808387EB91E00E94A2140C942A1577 +:102B600001968770BECF0895CF92DF92EF92FF92C9 +:102B70000F931F93CF93DF93CDB7DEB762970FB656 +:102B8000F894DEBF0FBECDBF8C0185E0F801DE01F9 +:102B90001D9601900D928A95E1F7D8014C911196FE +:102BA0005C91119712966C9112971396CD90DC90D0 +:102BB00014973091B7017091B8018091BA0190914A +:102BC000BB01009709F46BC17F3F19F43F3F09F443 +:102BD00066C1E090B901EE2009F4C0C02091BC01AB +:102BE000C816D90628F0F601E81BF90BCF0104C07E +:102BF000809590958C0D9D1DFF24F394883C910544 +:102C000078F0F12C207F09F0C6C07C2DD98AC88AC3 +:102C100089890E940B1587EB91E00E94A214B1C034 +:102C2000822F807F09F046C0751314C0341312C080 +:102C3000611110C02F7020612093BC010E944B15C0 +:102C400087EB91E00E94A2148091BC01D8011596F7 +:102C50008C932EC0CD2819F15F3F11F44F3FF9F04E +:102C6000F62E61111CC0809185012091860136E00D +:102C7000821709F45AC090E0389FF001399FF00D97 +:102C80001124E957FE4F7181571306C07081471315 +:102C900003C07281711103C001968770E9CFF62ECF +:102CA000662309F418C18091BC0181608093BC0146 +:102CB000F12C11C1751308C0341306C0611104C092 +:102CC0008091BC01D801C3C04D875E878D859E85EC +:102CD0006A8B0E94E1146A898823E1F16623D1F1AD +:102CE0002091BC01822F82958F7090E0029774F042 +:102CF0008091B7019091B80198878F831986DB8600 +:102D0000CA862C87CE0107960E94A21486E0F8019D +:102D1000A7EBB1E001900D928A95E1F70E94591559 +:102D20000E944B15FF24F394D6C04D875E878D8596 +:102D30009E850E94151A292F22952F7030E022308F +:102D400031050CF0BCC09F7009F0B6C0805E8830C1 +:102D500008F4C1C0C8010E94A214E4CFC816D90665 +:102D600008F453C0F601E81BF90BCF01883C91052C +:102D700008F450C0F12C7C2DD98AC88A89890E9418 +:102D80000B15E7EBF1E086E0DF011D928A95E9F78C +:102D90000E944B15A0C0751314C0341312C06111EA +:102DA00010C08091BC01F8018583C8010E94A21463 +:102DB00086E0E7EBF1E0DF011D928A95E9F7FE2C52 +:102DC0008AC04D875E878D859E856A8B0E94E1143F +:102DD0006A89882309F4BECF662309F4BBCF20910A +:102DE000BC01822F82958F7090E002970CF48ECFF9 +:102DF0008091B7019091B8019A8389831B82DD820B +:102E0000CC822E83CE0101967FCF809590958C0D3C +:102E10009D1DACCFF62E662309F49CCF75132EC0F2 +:102E200034132CC02091BC0120FD1FC0822F82953D +:102E30008F70D9F0D80115962C9315978F3049F0E3 +:102E40008F5F982F9295907F822F8F70892B159688 +:102E50008C93C8010E94A21486E0F801A7EBB1E0B0 +:102E600001900D928A95E1F793CF86E0F801A7EBE8 +:102E7000B1E001900D928A95E1F72DC04D875E87F4 +:102E80008D859E850E94E114811140CF8091BC0107 +:102E900081608093BC01C8010E94A2141CC06623FB +:102EA00009F458CF4D875E878D859E850E94E11479 +:102EB000882309F44FCF2ACF811148CF0CC024308A +:102EC00031050CF047CF9F7009F440CFF801958190 +:102ED000907F09F03BCF8F2D62960FB6F894DEBF3E +:102EE0000FBECDBFDF91CF911F910F91FF90EF905B +:102EF000DF90CF9008951F93CF93DF93CDB7DEB7C8 +:102F00002C970FB6F894DEBF0FBECDBF4F83588706 +:102F100069877A878B879C87CE0107960E94B415B4 +:102F2000882369F08F8198852A853B85232BF1F1D1 +:102F30009F3F09F063C08F3F09F060C037C086E053 +:102F4000FE013796DE01119601900D928A95E1F708 +:102F50006F817885EA85FB85309741F17F3F11F4D9 +:102F60006F3F21F12091860130E0C9010196877001 +:102F700099274091850150E08417950709F447C0CF +:102F800069837A83FD83EC8396E0929FD001939FBF +:102F9000B00D1124A957BE4FFE01319601900D923C +:102FA0009A95E1F7809386010E942A1516E0809198 +:102FB0008501909186018917C1F1189FC0011124E4 +:102FC00089579E4F0E94B415882379F1E0918501BD +:102FD0001E9FF0011124E957FE4F4081518162810B +:102FE0007381848195810E941A158091850190E0FA +:102FF00001968770992780938501D9CF4F81588595 +:1030000069857A858B859C850E941A15CFCF0E9491 +:10301000DD141092860110928501E7EBF1E086E065 +:10302000DF011D928A95E9F7C1CF2C960FB6F8946F +:10303000DEBF0FBECDBFDF91CF911F910895EF92FC +:10304000FF920F931F93CF93DF938C01009709F4A6 +:103050006CC0F12CEE24E394E8012196F8018491F0 +:10306000843740F4843008F051C0813081F08230E0 +:1030700019F15BC0853709F444C0A8F19CE7980FAB +:10308000903708F052C08F770E94281241C00E5F1F +:103090001F4FFE01C49180E28C0F883048F4C77046 +:1030A0008E2D01C0880FCA95EAF70E94FB1A14C042 +:1030B0008C2F0E9460112DC00E5F1F4FFE01C49126 +:1030C00080E28C0F883058F4C7708E2D01C0880FB5 +:1030D000CA95EAF70E94011B0E94221B1AC08C2F7E +:1030E0000E94281216C00E5F1F4FFE01C491CC2310 +:1030F00081F08FE99FE00197F1F700C00000C15017 +:10310000F6CF0E5F1F4FFE01F49003C00E946011C6 +:103110008E018F2D882309F49FCFEFE9FFE03197CF +:10312000F1F700C000008150F5CFDF91CF911F91E2 +:103130000F91FF90EF90089508956093C1017093EF +:10314000C2018093C3019093C4010C94C9140F93DE +:103150001F930091C1011091C2012091C3013091D0 +:10316000C401DC01CB01802B912BA22BB32B8093CC +:10317000C1019093C201A093C301B093C4011F91F8 +:103180000F910C94C9140F931F930091C1011091DA +:10319000C2012091C3013091C401DC01CB01802325 +:1031A0009123A223B3238093C1019093C201A093E2 +:1031B000C301B093C4011F910F910C94C9140F93D4 +:1031C0001F930091C1011091C2012091C301309160 +:1031D000C401DC01CB0180279127A227B32780936C +:1031E000C1019093C201A093C301B093C4011F9188 +:1031F0000F910C94C9141092BD011092BE0110924F +:10320000BF011092C0010C94C91441E050E060E08D +:1032100070E004C0440F551F661F771F8A95D2F7D0 +:103220004093BD015093BE016093BF017093C001F4 +:103230000C94C91441E050E060E070E004C0440F19 +:10324000551F661F771F8A95D2F78091BD01909117 +:10325000BE01A091BF01B091C001482B592B6A2B30 +:103260007B2B4093BD015093BE016093BF017093CF +:10327000C0010C94C91441E050E060E070E004C06B +:10328000440F551F661F771F8A95D2F740955095BA +:10329000609570958091BD019091BE01A091BF0194 +:1032A000B091C001482359236A237B234093BD0179 +:1032B0005093BE016093BF017093C0010C94C91478 +:1032C00041E050E060E070E004C0440F551F661F0D +:1032D000771F8A95D2F78091BD019091BE01A09190 +:1032E000BF01B091C001482759276A277B27409327 +:1032F000BD015093BE016093BF017093C0010C9457 +:10330000C9140F931F930091BD011091BE0120912C +:10331000BF013091C001DC01CB01802B912BA22B8E +:10332000B32B8093BD019093BE01A093BF01B093D6 +:10333000C0011F910F910C94C9140F931F9300911A +:10334000BD011091BE012091BF013091C001DC018F +:10335000CB0180239123A223B3238093BD019093BB +:10336000BE01A093BF01B093C0011F910F910C94B7 +:10337000C9140F931F930091BD011091BE012091BC +:10338000BF013091C001DC01CB0180279127A2272A +:10339000B3278093BD019093BE01A093BF01B0936A +:1033A000C0011F910F910C94C9140895CF92DF9220 +:1033B000EF92FF920F931F93CF93DF938C01C090F6 +:1033C000C101D090C201E090C301F090C40180918E +:1033D000BD019091BE01A091BF01B091C001C82A6A +:1033E000D92AEA2AFB2ACFE1D0E0D701C6010C2E68 +:1033F00004C0B695A795979587950A94D2F780FF54 +:1034000006C0B8018C2F0E94A208019721F42197D1 +:1034100060F780E001C08C2FDF91CF911F910F9159 +:10342000FF90EF90DF90CF900895CF93DF93EC0162 +:103430000E94D619BE010E94A208DF91CF91089583 +:10344000CB010E94151A08958091C5018595859537 +:10345000859508958091C5018770089598E0899FAA +:1034600090011124262B2093C5010C941A19209148 +:10347000C501809582238093C501982F977069F4C8 +:1034800030E0482F552747FD50952417350729F080 +:103490008595859585950C943B1908959091C50166 +:1034A000977081E009F480E0089590910C019923D0 +:1034B00021F090910D01911109C020910E013091E0 +:1034C0000F01F90132969FEF40E01FC0982F9695AB +:1034D000969596959F3050F5E0910E01F0910F0171 +:1034E000E90FF11D877021E030E0A90102C0440F0F +:1034F000551F8A95E2F7CA019181892B818308952E +:103500009F3F39F04F5F4E3041F051915813F8CF43 +:103510000DC05111F7CF942FF5CF9F3F39F0F9012E +:10352000E90FF11D97FDFA95828308950895909112 +:103530000C01992321F090910D01911109C0209166 +:103540000E0130910F01F9013296205F3F4F1FC0ED +:10355000982F9695969596959F30F0F4E0910E01F0 +:10356000F0910F01E90FF11D877021E030E0A90112 +:1035700002C0440F551F8A95E2F7CA0180959181D8 +:103580008923818308953196E217F30729F090810A +:103590009813F9CF1082F7CF089581E090E0E09181 +:1035A0000E01F0910F01E80FF91F10820196803192 +:1035B0009105A9F708959091D901892B8093D9019C +:1035C000089580959091D90189238093D901089518 +:1035D0001092D90108959091D801892B8093D80138 +:1035E000089580959091D80189238093D8010895FA +:1035F0001092D80108959091D701892B8093D7011B +:10360000089580959091D70189238093D7010895DB +:103610001092D70108958093C60108951092C601B3 +:10362000089580910E0190910F01FC0131969C014B +:10363000205F3F4F80E0919191118F5FE217F30778 +:10364000D1F70895E0910E01F0910F018091D90119 +:103650008083E0910E01F0910F0190818091D8015B +:10366000892B8083E0910E01F0910F019081809170 +:10367000D701892B80838091C601882361F0E09176 +:103680000E01F0910F019081892B80830E94111B04 +:1036900081111092C60180910E0190910F010C943E +:1036A000501020E0009739F0AC01415051098423BB +:1036B00095232F5FF7CF822F0895CF92DF92EF925D +:1036C000FF926C01EE24FF24C114D104E104F10443 +:1036D00021F0C701B60120E101C020E0C72ED82E9D +:1036E000E92EFF24C114D104E104F10419F0285F8C +:1036F000C701B6016B017C0154E0F694E794D794BE +:10370000C7945A95D1F7C114D104E104F10419F01A +:103710002C5FC701B6016B017C0142E0F694E7948F +:10372000D794C7944A95D1F7C114D104E104F104A8 +:1037300019F02E5FC701B601DC01CB01B695A79544 +:1037400097958795892B8A2B8B2B09F02F5F822FDA +:10375000FF90EF90DF90CF9008958091F101843039 +:1037600021F11092DB0120E488E190E00FB6F8949B +:10377000A895809360000FBE2093600080E00E94B7 +:103780003D0983B7817F846083BF83B7816083BF36 +:103790007894889583B78E7F83BF88E10FB6F894BD +:1037A00080936000109260000FBE08950895089500 +:1037B0000E94D61B0E94A1030E94D71B0E94960460 +:1037C00091E0811101C090E0892F08950E94DD14DD +:1037D0000E9444100C943D0982E084BD93E095BDA5 +:1037E0009AEF97BD80936E0008952FB7F89480915B +:1037F000DC019091DD01A091DE01B091DF012FBFCE +:103800000895CF92DF92EF92FF920F931F932FB7FD +:10381000F8944091DC015091DD016091DE017091DE +:10382000DF012FBF6A017B01EE24FF248C0120E021 +:1038300030E0C016D106E206F30610F441505109FB +:103840009A01281B390BC9011F910F91FF90EF902E +:10385000DF90CF9008951F920F920FB60F92112410 +:103860008F939F93AF93BF938091DC019091DD0183 +:10387000A091DE01B091DF010196A11DB11D8093E1 +:10388000DC019093DD01A093DE01B093DF01BF91D5 +:10389000AF919F918F910F900FBE0F901F90189531 +:1038A0000E94410DF8942FEF87EA91E62150804065 +:1038B0009040E1F700C0000087E090EBDC018093CE +:1038C000FB019093FC01A093FD01B093FE019CE0ED +:1038D00088E10FB6F894A895809360000FBE90938E +:1038E0006000FFCFEF92FF920F931F93CF93DF9370 +:1038F000D82FCDE08C2F0E948F0405E010E0E82E39 +:10390000F12CC701002E02C0959587950A94E2F725 +:1039100080FF09C0602F7C2F80E00E944D06D813E5 +:1039200002C081E006C00150110958F7C15010F7DC +:1039300080E0DF91CF911F910F91FF90EF9008955C +:10394000CF93C82F8CE20E94721C882321F08C2F09 +:10395000CF910C94721C80E0CF910895CF930E9478 +:10396000F51D811102C00E94DB1DC5E6C15049F062 +:103970000E94A1038FE39CE90197F1F700C00000CA +:10398000F5CF89E20E94A01C811113C18AE20E9436 +:10399000A01C81110E94DB1D85E00E94A01C8111EA +:1039A0000E94501C0E94001E8093DA0187E00E9452 +:1039B000A01C8823A9F18BE10E94A01C882351F050 +:1039C0008091DA0181FB222720F991E0922790FB78 +:1039D00081F90EC08EE00E94A01C882361F08091C6 +:1039E000DA0182FB222720F991E0922790FB82F9ED +:1039F0008093DA0115C080E10E94A01C9091DA0149 +:103A0000882341F093FB222720F981E0822780FB65 +:103A100093F904C0892F809580FB90F99093DA0187 +:103A20008091DA010E94041E0E94121E8093FA0106 +:103A300080EE0E94A01C882341F08091FA01982F0B +:103A4000909590FB80F98093FA0189E30E94A01C75 +:103A5000882359F08091FA0181FB222720F991E017 +:103A6000922790FB81F98093FA0182EE0E94A01CBC +:103A7000882359F08091FA0182FB222720F991E0F6 +:103A8000922790FB82F98093FA0186EE0E94A01C97 +:103A9000882359F08091FA0183FB222720F991E0D5 +:103AA000922790FB83F98093FA0183EE0E94A01C79 +:103AB000882359F08091FA0184FB222720F991E0B4 +:103AC000922790FB84F98093FA0185E30E94A01C61 +:103AD000882359F08091FA0185FB222720F991E093 +:103AE000922790FB85F98093FA0181E30E94A01C44 +:103AF000882359F08091FA0186FB222720F991E072 +:103B0000922790FB86F98093FA0181E10E94A01C24 +:103B1000882359F08091FA0187FB222720F991E050 +:103B2000922790FB87F98093FA018091FA010E9415 +:103B3000161E8091FA0187FB882780F980930D017A +:103B400087E20E94A01CC82F8EE10E94A01C811158 +:103B5000C2608FE10E94A01C8111C46080E20E94BB +:103B6000A01C8111C86081E20E94A01C8111C0616B +:103B700082E20E94A01C8111C06283E20E94A01C0C +:103B80008111C06484E20E94A01C882311F0C068E7 +:103B900002C0CC2329F08C2F0E940D1E6C2F03C075 +:103BA0000E94091E682F70E080E090E0CF910C9495 +:103BB0009D18CF9108956DEE7EEF80E090E00E9419 +:103BC000472460E082E090E00E94352460E083E0DA +:103BD00090E00E94352460E084E090E00E9435246B +:103BE00060E085E090E00C94352480E090E00E9455 +:103BF0002F2421E08D3E9E4F09F020E0822F089572 +:103C000082E090E00C942724682F82E090E00C94EE +:103C1000352483E090E00C942724682F83E090E023 +:103C20000C94352484E090E00C942724682F84E0E1 +:103C300090E00C9435248091E20180FF0BC06091EC +:103C4000130185E0689FB0011124759567957595FE +:103C500067952BC081FF09C06091130185E0689FC3 +:103C6000B00111247595679520C082FF07C060914F +:103C7000130185E0689FB001112417C09091E30102 +:103C80009923D1F060911201961788F720911301C2 +:103C900085E0289F90011124929FA001939F500DD1 +:103CA000112470E0CA010E94F9236038710540F4C4 +:103CB0006115710539F002C065E070E0862F089546 +:103CC0008FE7089581E008958091E20180FF08C0A8 +:103CD0006091110170E0759567957595679521C0A4 +:103CE00081FF06C06091110170E07595679519C05C +:103CF00082FF04C06091110170E010C09091E30157 +:103D00009923C1F0609110019617A0F780911101DD +:103D1000899FC001112470E00E94F9236038710569 +:103D200028F46115710521F0862F08958FE7089515 +:103D300081E0089561E070E0F4CF803F21F40E94BB +:103D40001B1E819504C0813F29F40E941B1E809395 +:103D5000E6010895823F21F40E941B1E819504C054 +:103D6000833F29F40E941B1E8093E5010895893F3B +:103D700019F40E94641E05C08A3F31F40E94641E3B +:103D800081958093E70108958B3F21F40E94641E82 +:103D9000819504C08C3F29F40E94641E8093E80141 +:103DA0000895843F21F48091E401816017C0853F2C +:103DB00021F48091E401826011C0863F21F480915A +:103DC000E40184600BC0873F21F48091E4018860A6 +:103DD00005C0883F31F48091E40180618093E40163 +:103DE00008958D3F21F48091E20181600BC08E3FE8 +:103DF00021F48091E201826005C08F3F29F4809117 +:103E0000E20184608093E2010895803F39F480915B +:103E1000E60187FF6CC01092E60169C0813F29F47A +:103E20008091E6011816BCF362C09091E501823FD3 +:103E300029F497FF5CC01092E50159C0833F19F443 +:103E40001916CCF354C0893F41F48091E70118164C +:103E50000CF04DC01092E7014AC08A3F29F48091CE +:103E6000E70187FF44C0F6CF8B3F39F48091E8012A +:103E700087FF3DC01092E8013AC08C3F29F4809141 +:103E8000E8011816BCF333C0843F21F48091E401AB +:103E90008E7F17C0853F21F48091E4018D7F11C092 +:103EA000863F21F48091E4018B7F0BC0873F21F492 +:103EB0008091E401877F05C0883F31F48091E4015F +:103EC0008F7E8093E40113C08D3F21F48091E20145 +:103ED0008E7F0BC08E3F21F48091E2018D7F05C063 +:103EE0008F3F29F48091E2018B7F8093E2018091E2 +:103EF000E50181110EC08091E60181110AC0809117 +:103F0000E701811106C08091E801811102C0109281 +:103F1000E301089584EE91E00E945B100E94F51B7E +:103F20009093E1018093E00108951F93CF93DF9375 +:103F30008091E0019091E1010E94011CAC019091FF +:103F4000E301992321F02091140130E006C0209173 +:103F500015018AE0289F900111244217530708F4A5 +:103F600086C08091E501C091E601D091E7011091F2 +:103F7000E801811107C0C11176C0D11174C01111BF +:103F800072C075C09F3F19F09F5F9093E3011816B0 +:103F900024F40E941B1E8093E5018091E50187FFB8 +:103FA00005C00E941B1E81958093E5011C1624F418 +:103FB0000E941B1E8093E6018091E60187FF05C0E9 +:103FC0000E941B1E81958093E6016091E5016623A6 +:103FD00039F1C091E601CC2319F1772767FD70957F +:103FE000872F972F0E940A2323E333E343E35FE302 +:103FF0000E946E230E94D7226093E5016C2F7727E1 +:1040000067FD7095872F972F0E940A2323E333E3E0 +:1040100043E35FE30E946E230E94D7226093E60190 +:104020001D1624F40E94641E8093E7018091E7012D +:1040300087FF05C00E94641E81958093E7011116D9 +:1040400024F40E94641E8093E8018091E80187FFB8 +:1040500005C00E94641E81958093E801DF91CF9195 +:104060001F910C948A1F9F3F09F08ECF96CFDF914E +:10407000CF911F910895E4EEF1E085E0DF011D92FC +:104080008A95E9F71092E3011092E20108958330D6 +:1040900081F128F4813059F08230D1F008958530D3 +:1040A00009F449C0B8F1863009F456C008958091EA +:1040B0001501262F30E0280F311D2F3F310524F444 +:1040C000680F6093150108958FEF8093150108958F +:1040D00080911401262F30E0280F311D2F3F31052C +:1040E00024F4680F6093140108958FEF80931401F6 +:1040F000089580911301262F30E0280F311D2F3FA6 +:10410000310524F4680F6093130108958FEF8093B5 +:104110001301089580911201262F30E0280F311DE0 +:104120002F3F310524F4680F6093120108958FEF3B +:1041300080931201089580911101262F30E0280FFD +:10414000311D2F3F310524F4680F6093110108954C +:104150008FEF80931101089580911001262F30E098 +:10416000280F311D2F3F310524F4680F6093100193 +:1041700008958FEF809310010895833011F128F492 +:10418000813049F0823091F00895853081F120F13D +:104190008630C1F1089580911501681720F4861BBF +:1041A00080931501089510921501089580911401CE +:1041B000681720F4861B809314010895109214014F +:1041C000089580911301681720F4861B80931301D2 +:1041D000089510921301089580911201681720F438 +:1041E000861B809312010895109212010895809108 +:1041F0001101681720F4861B809311010895109215 +:104200001101089580911001681720F4861B809396 +:10421000100108951092100108950F931F938D318E +:1042200009F46BC008F03FC08E3009F47FC0C0F4C1 +:10423000873009F469C068F4863009F0B1C0809114 +:10424000DA01817F8E7F8093DA0181E08093EA0139 +:10425000A8C0883009F4A2C08B3009F49FC0A0C068 +:10426000863109F49BC078F4803109F472C0813141 +:1042700009F096C00E94DD1490910D0181E089271C +:1042800080930D018BC0893109F488C08B3109F00E +:1042900087C08091DA0181FB222720F991E09227E3 +:1042A00090FB81F94CC0853309F470C048F4873223 +:1042B00009F46CC008F459C0893209F467C070C0B1 +:1042C000833438F48A3308F04EC0883309F466C06A +:1042D00067C0833409F45AC0883409F061C00E9471 +:1042E000DD140FEF13ED20E3015010402040E1F703 +:1042F00000C000000E94501C51C00E9491220E94E8 +:1043000044100E943D094AC09091DA01892F80959E +:10431000817080FB90F929F0966098609093DA01A3 +:1043200040C0997F977F9093DA0138C08091DA017D +:1043300082FB222720F991E0922790FB82F980935B +:10434000DA01992359F18091DA0181608093DA01D1 +:1043500025C08091DA0183FB222720F991E0922782 +:1043600090FB83F9ECCF895301C08D5141E050E0BF +:1043700060E070E08A019B0104C0000F111F221F42 +:10438000331F8A95D2F7C901B80104C061E070E01B +:1043900080E090E00E949D180E94DD1481E001C041 +:1043A00080E01F910F91089580E0089580E00895C6 +:1043B000CF93C82F8091EA01813079F018F08230D4 +:1043C000E9F187C0E0910E01F0910F018081813108 +:1043D00069F0823209F07FC009C0E0910E01F091CE +:1043E0000F018081813111F0823261F48C2F0E94A3 +:1043F000D421811104C08C2F0E940D211DC081E0A9 +:1044000090E01AC08C2F0E94D621811114C0C431B3 +:1044100079F048F4CB3079F0C03109F060C082E027 +:104420008093EA0108C0C93219F0C83321F057C09F +:104430001092EA0154C081E0817053C0C93289F101 +:1044400018F5C43171F1A8F4C73009F046C08AE00C +:104450008093150194E19093140193E090931301DC +:104460008093120188E08093110188E2809310010B +:1044700034C0CE51C63088F5EC2FF0E0E65DFE4F3B +:1044800080818093E90129C0CE34E9F020F4CB3457 +:1044900021F56AE013C0C13579F0C235F1F461E06D +:1044A0000DC08091E901882319F01092E90115C02F +:1044B00081E08093EA0115C061E006C08091E901C6 +:1044C0000E9447200AC06AE08091E9010E94BD2055 +:1044D00004C01092EA0180E004C081E002C080E0E4 +:1044E000ABCFCF910895E1E8F0E0808188608083D0 +:1044F0008081816080838FB7F89493E090938900E6 +:1045000090ED909388008FBF0895EFE6F0E08081F2 +:10451000826080830895EFE6F0E080818D7F808364 +:104520000895EFE6F0E0908182E089278083089586 +:104530001F920F920FB60F9211242F933F934F9318 +:104540005F936F937F938F939F93AF93BF93EF93FB +:10455000FF938091EB019091EC0101969093EC0117 +:104560008093EB01811103C082E00E943D09E0913C +:10457000EC01E695E695F0E0E05AFA4FE49180917F +:10458000EB018E1303C080E00E943D09FF91EF9183 +:10459000BF91AF919F918F917F916F915F914F915B +:1045A0003F912F910F900FBE0F901F90189504D040 +:1045B0006894B1118DC0089570D088F09F5790F025 +:1045C000B92F9927B751A0F0D1F0660F771F881F38 +:1045D000991F1AF0BA95C9F712C0B13081F077D09F +:1045E000B1E0089574C0672F782F8827B85F39F03D +:1045F000B93FCCF3869577956795B395D9F73EF497 +:1046000090958095709561957F4F8F4F9F4F08953E +:10461000E89409C097FB3EF490958095709561955C +:104620007F4F8F4F9F4F9923A9F0F92F96E9BB2712 +:104630009395F695879577956795B795F111F8CF8E +:10464000FAF4BB0F11F460FF1BC06F5F7F4F8F4FF9 +:104650009F4F16C0882311F096E911C0772321F0EF +:104660009EE8872F762F05C0662371F096E8862F87 +:1046700070E060E02AF09A95660F771F881FDAF7DE +:10468000880F9695879597F9089557FD9058440F90 +:10469000551F59F05F3F71F04795880F97FB991FA1 +:1046A00061F09F3F79F0879508951216130614065E +:1046B000551FF2CF4695F1DF08C0161617061806EB +:1046C000991FF1CF86957105610508940895E894C6 +:1046D000BB2766277727CB0197F908950BD078C0C1 +:1046E00069D028F06ED018F0952309F05AC05FC049 +:1046F0001124EECFCADFA0F3959FD1F3950F50E0C0 +:10470000551F629FF001729FBB27F00DB11D639F83 +:10471000AA27F00DB11DAA1F649F6627B00DA11D29 +:10472000661F829F2227B00DA11D621F739FB00DCF +:10473000A11D621F839FA00D611D221F749F33273F +:10474000A00D611D231F849F600D211D822F762FD8 +:104750006A2F11249F5750408AF0E1F088234AF0D5 +:10476000EE0FFF1FBB1F661F771F881F9150504021 +:10477000A9F79E3F510570F014C0AACF5F3FECF33C +:10478000983EDCF3869577956795B795F795E7950D +:104790009F5FC1F7FE2B880F911D9695879597F91E +:1047A000089597F99F6780E870E060E008959FEFB3 +:1047B00080EC089500240A941616170618060906B8 +:1047C000089500240A941216130614060506089587 +:1047D000092E0394000C11F4882352F0BB0F40F40F +:1047E000BF2B11F460FF04C06F5F7F4F8F4F9F4F4F +:1047F000089597FB072E16F4009407D077FD09D093 +:104800000E94132407FC05D03EF4909581959F4F9C +:104810000895709561957F4F0895EE0FFF1F0590E5 +:10482000F491E02D0994AA1BBB1B51E107C0AA1FFC +:10483000BB1FA617B70710F0A61BB70B881F991F41 +:104840005A95A9F780959095BC01CD010895F999E5 +:10485000FECF92BD81BDF89A992780B50895A8E151 +:10486000B0E042E050E00C944F24262FF999FECF9F +:1048700092BD81BDF89A019700B4021639F01FBAB3 +:1048800020BD0FB6F894FA9AF99A0FBE08950196D2 +:10489000272F0E9436240C943524DC01CB01FC0127 +:1048A000F999FECF06C0F2BDE1BDF89A319600B489 +:0E48B0000D9241505040B8F70895F894FFCF94 +:1048BE0002203F09CD09AA09760942090101C70163 +:1048CE0028080A03140A3F4D36392105D4049E04E4 +:1048DE006504F80311042A044304010203040506C7 +:0448EE0007080900AE +:00000001FF diff --git a/keyboards/ergodox_ez/keymaps/romanzolotarev-norman-plover-osx-hjkl/keymap.c b/keyboards/ergodox_ez/keymaps/romanzolotarev-norman-plover-osx-hjkl/keymap.c new file mode 100644 index 0000000000..7c9f673816 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/romanzolotarev-norman-plover-osx-hjkl/keymap.c @@ -0,0 +1,134 @@ +#include "ergodox_ez.h" +#include "debug.h" +#include "action_layer.h" + +#define BASE 0 +#define SYMB 1 +#define PLVR 2 +#define ARRW 3 + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [BASE] = KEYMAP( + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_F14, + KC_TAB, KC_Q, KC_W, KC_D, KC_F, KC_K, TG(PLVR), + CTL_T(KC_ESC), KC_A, KC_S, KC_E, KC_T, KC_G, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_LBRC, + KC_F1, KC_F2, KC_F3, KC_LALT, KC_LGUI, + /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ KC_VOLD, KC_MUTE, + /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ KC_VOLU, + /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ KC_BSPC, CTL_T(KC_ESC), KC_FN1, + // + /*-*/ KC_F15, KC_6, KC_7, KC_8, KC_9, KC_0, KC_EQL, + /*-*/ KC_BSLS, KC_J, KC_U, KC_R, KC_L, KC_SCLN, KC_MINS, + /*-*/ /*-*/ KC_Y, KC_N, KC_I, KC_O, KC_H, KC_ENT, + /*-*/ KC_RBRC, KC_P, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, + /*-*/ /*-*/ /*-*/ KC_RGUI, KC_RALT, KC_F4, KC_F5, KC_F6, + KC_MPLY, KC_MNXT, + KC_MPRV, + KC_FN3, KC_QUOT, KC_SPC + ), + [SYMB] = KEYMAP( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_1, KC_2, KC_3, KC_4, KC_5, KC_TRNS, + KC_TRNS, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ KC_TRNS, KC_TRNS, + /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ KC_TRNS, + /*-*/ /*-*/ /*-*/ /*-*/ KC_TRNS, KC_TRNS, KC_TRNS, + // + /*-*/ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + /*-*/ KC_TRNS, KC_6, KC_7, KC_8, KC_9, KC_0, KC_TRNS, + /*-*/ /*-*/ KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, 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 + ), + [PLVR] = KEYMAP( + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, + KC_NO, KC_1, KC_2, KC_3, KC_4, KC_5, KC_TRNS, + KC_NO, KC_Q, KC_W, KC_E, KC_R, KC_T, + KC_NO, KC_A, KC_S, KC_D, KC_F, KC_G, KC_NO, + KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, KC_NO, + /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ KC_TRNS, KC_TRNS, + /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ KC_TRNS, + /*-*/ /*-*/ /*-*/ /*-*/ KC_C, KC_V, KC_NO, + // + /*-*/ KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + /*-*/ KC_NO, KC_6, KC_7, KC_8, KC_9, KC_0, KC_NO, + /*-*/ /*-*/ KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, + /*-*/ KC_NO, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + /*-*/ /*-*/ /*-*/ KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_NO, KC_N, KC_M + ), + [ARRW] = KEYMAP( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_MS_L, KC_MS_U, KC_MS_D, KC_MS_R, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_BTN1, KC_BTN2, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ KC_TRNS, KC_TRNS, + /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ KC_TRNS, + /*-*/ /*-*/ /*-*/ /*-*/ KC_TRNS, KC_TRNS, KC_TRNS, + // + /*-*/ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + /*-*/ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + /*-*/ /*-*/ KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_TRNS, KC_TRNS, + /*-*/ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + /*-*/ /*-*/ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS + ), +}; + +const uint16_t PROGMEM fn_actions[] = { + [SYMB] = ACTION_LAYER_TAP_TOGGLE(SYMB), // FN1 - Momentary Symbols Layer + [PLVR] = ACTION_LAYER_TAP_TOGGLE(PLVR), // FN2 - Momentary Plover Layer + [ARRW] = ACTION_LAYER_TAP_TOGGLE(ARRW), // FN3 - Momentary Arrows Layer +}; + +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) { + case SYMB: + ergodox_right_led_1_on(); + break; + case PLVR: + ergodox_right_led_2_on(); + break; + case ARRW: + ergodox_right_led_3_on(); + break; + default: + break; + } +}; diff --git a/keyboards/ergodox_ez/keymaps/romanzolotarev-norman-plover-osx-hjkl/readme.md b/keyboards/ergodox_ez/keymaps/romanzolotarev-norman-plover-osx-hjkl/readme.md new file mode 100644 index 0000000000..4188d2b50c --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/romanzolotarev-norman-plover-osx-hjkl/readme.md @@ -0,0 +1,50 @@ +# Roman's Layout + +There are four layers: + +- **BASE** is [Norman layout](https://normanlayout.info/). +- **SYMB** for numbers and symbols. +- **PLVR** is optimized for [Plover](http://www.openstenoproject.org). +- **ARRW** for navigation (same fingers for arrows as HJKL on QWERTY). + +Looking for IJKL arrows? [Here we +go](../romanzolotarev-norman-plover-osx/). + +[![keyboard-layout](romanzolotarev-norman-plover-osx-hjkl.png)](rttp://www.keyboard-layout-editor.com/#/gists/56ffedceb0668dda47c993e7271563e0) + +## Switching + +- Tap `SYMB` to toggle **SYMB**. +- Tap `ARRW` to toggle **ARRW**. +- Hold `SYMB` (or `ARRW`) to activate **SYMB** (or **ARRW**) while holding. +- Tap `PLVR` to toggle **PLVR**. + +## LEDs + +- Red: SYMB is on. +- Green: PLVR is on. +- Blue: ARRW is on. + +## Functional Keys + +- Tap `F1` to mute microphone via [Shush](http://mizage.com/shush/). +- Tap `F2` to copy screenshot to the clipboard. +- Hold `SHIFT` and tap `F2` to save screenshot as a file. +- Tap `F3`, `F4`, `F5`, `F6` to resize a window via [Divvy](http://mizage.com/divvy/). +- Tap `F14`, `F15` to adjust display brightness. + +**IMPORTANT**: If you have another keyboard connected via Bluetooth, then +`F14` and `F15` will not work. Turn off that Bluetooth keyboard. Re-plug +you ErgoDox. Enjoy! + +## CTRL/ESC + +Both of those keys are frequently used in Vim. + +- Tap `CTRL/ESC` to send `ESC`. +- Hold `CTRL/ESC` to use as `CTRL`. + +## Activate N-rollover + +- While in **BASE** hold left `SHIFT` and right `SHIRT` and then tap `N`. +- Then you can activate **PLVR** and use ErgoDox EZ for steno. diff --git a/keyboards/ergodox_ez/keymaps/romanzolotarev-norman-plover-osx-hjkl/romanzolotarev-norman-plover-osx-hjkl.png b/keyboards/ergodox_ez/keymaps/romanzolotarev-norman-plover-osx-hjkl/romanzolotarev-norman-plover-osx-hjkl.png new file mode 100644 index 0000000000..cdc535f79e Binary files /dev/null and b/keyboards/ergodox_ez/keymaps/romanzolotarev-norman-plover-osx-hjkl/romanzolotarev-norman-plover-osx-hjkl.png differ diff --git a/keyboards/ergodox_ez/keymaps/romanzolotarev-norman-plover-osx/compiled.hex b/keyboards/ergodox_ez/keymaps/romanzolotarev-norman-plover-osx/compiled.hex new file mode 100644 index 0000000000..66d01f1c69 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/romanzolotarev-norman-plover-osx/compiled.hex @@ -0,0 +1,1169 @@ +:100000000C94D0020C9414030C9414030C94140359 +:100010000C9414030C9414030C9414030C94140304 +:100020000C9414030C9414030C94BC0D0C948E0EBD +:100030000C9414030C9414030C9414030C941403E4 +:100040000C9414030C9498220C9414030C94140331 +:100050000C9414030C942B1C0C9414030C94140394 +:100060000C9414030C9414030C9414030C941403B4 +:100070000C9414030C9414030C9414030C941403A4 +:100080000C9414030C9414030C9414030C94140394 +:100090000C9414030C9414030C9414030C94140384 +:1000A0000C9414030C9414030C941403FB0E1D0FF6 +:1000B0000B101D0F0B10620F850F0B10DA0FED0FD9 +:1000C000BC12BC12EB12EB12211341137214721406 +:1000D0004C137214FC13FC136314721472146C141A +:1000E0000914091409140914091409140914091428 +:1000F0000914091409140914091409140914091418 +:100100001B1428142F14361440140000F0A1F0A280 +:10011000F0A335002B002971E1003A0000001E0019 +:10012000140004001D003B00C1001F001A0016004F +:100130001B003C0029712000070008000600E200B7 +:100140002A002100090017001900E300A90022007D +:100150000E000A0005000000AA0069000254000019 +:100160002F000000A8006A003100000030000000ED +:10017000AE0023000D001C0013000000AB002400A3 +:10018000180011001000E700AC00250015000C005D +:100190003600E6002C0026000F00120037003D005C +:1001A0003400270033000B0038003E00C3002E004F +:1001B0002D002800E5003F000000010001000100C3 +:1001C00001000100000001001E001E0201000100EC +:1001D000010001001F001F020100010001000100D9 +:1001E0002000200201000100010001002100210285 +:1001F00001000100010001002200220201000000B4 +:1002000001000100010000000100000001000100E8 +:100210000100000001000000010001002300230292 +:10022000010000000100010024002402010001007F +:10023000010001002500250201000100010001006C +:10024000260026020100010001000100270027020C +:100250000100010001000100010001000100010096 +:10026000000000000000000000000100000000008D +:100270001E00140004000100000000001F001A000E +:10028000160001001900000020000800070000000F +:100290000600000021001500090000000100000018 +:1002A000220017000A000000010001000100000008 +:1002B000000000000100010000000000000000003C +:1002C0000100000023001C000B00000001000000E2 +:1002D000240018000D0000000100000025000C00A3 +:1002E0000E00000010000000260012000F000000A9 +:1002F0001100000027001300330000000000000080 +:1003000000002F0034000000000001000100010087 +:1003100001000100000001000100010001000100D6 +:1003200001000100F400F2000100010001000100E1 +:10033000F000F1000100010001000100F500F300F0 +:1003400001000100010001000100010001000000A6 +:100350000100010001000000010000000100010097 +:100360000100000001000000010001000100010087 +:100370000100000001000100010050000100010027 +:1003800001000100520051000100010001000100C4 +:1003900001004F0001000100010001000100010007 +:1003A0000100010001000100010001000100010045 +:1003B000000016034500720067006F0044006F00E4 +:1003C0007800200045005A00000016034500720026 +:1003D00067006F0044006F007800200045005A005D +:1003E00000000403090409026D00040100A0FA09D9 +:1003F0000400000103010100092111010001223F55 +:10040000000705810308000A090401000103010235 +:1004100000092111010001224D0007058203080097 +:100420000A09040200010300000009211101000172 +:100430002236000705830308000A090403000103AC +:100440000000000921110100012239000705840381 +:100450001000011201100100000008EDFE07130159 +:10046000000102000105010906A101050719E029A3 +:10047000E715002501950875018102050819012974 +:1004800005950575019102950175039101050719FF +:1004900000297715002501957875018102C00501B5 +:1004A0000980A101850216010026B7001A01002A61 +:1004B000B700751095018100C0050C0901A10185E7 +:1004C00003160100269C021A01002A9C0275109551 +:1004D000018100C005010902A1010901A10005096E +:1004E0001901290515002501950575018102950160 +:1004F000750381010501093009311581257F9502B8 +:100500007508810609381581257F950175088106D2 +:10051000050C0A38021581257F950175088106C0F2 +:10052000C005010906A101050719E029E715002505 +:100530000195087501810295017508810105081969 +:100540000129059505750191029501750391010534 +:1005500007190029FF150025FF950675088100C0C1 +:100560000000000000000000000000010204060A74 +:100570000F17202C3A4A5D71879DB3C7DAE9F5FC65 +:10058000FFFCF5E9DAC7B39D87715D4A3A2C201765 +:100590000F0A060402010000000000000000000035 +:1005A00011241FBECFEFDAE0DEBFCDBF04B603FEDD +:1005B00024C08091FB019091FC01A091FD01B091BC +:1005C000FE018730904BA740B04BB9F41092FB016D +:1005D0001092FC011092FD011092FE0114BE84B72E +:1005E000877F84BF88E10FB6F894809360001092F3 +:1005F00060000FBEE0E0FFE3099511E0A0E0B1E08C +:10060000EEEBF8E402C005900D92A433B107D9F7E0 +:1006100011E0A4E3B1E001C01D92AB3FB107E1F7E7 +:100620000E94000B0C945D240C9400001092B90001 +:100630008AE08093B800089594EA9093BC0090916A +:10064000BC0097FFFCCF9091B900987F983021F0C3 +:10065000903111F081E008958093BB0084E880938D +:10066000BC008091BC0087FFFCCF8091B900887FDF +:10067000883111F0803471F780E0089584E9809327 +:10068000BC008091BC0084FDFCCF08958093BB002A +:1006900084E88093BC008091BC0087FFFCCF9091E0 +:1006A000B900987F81E0983209F480E0089584E8E9 +:1006B0008093BC008091BC0087FFFCCF8091BB0081 +:1006C000089580910101811115C080E40E941C03EE +:1006D0008093010181110CC082E10E944603809346 +:1006E0000101811105C08FEF0E9446038093010133 +:1006F0000E943E0384B1807F84B985B1807F85B933 +:100700008AB1837F8AB98BB1837F8BB93E98469833 +:1007100008950E941C05809301010E94610380B32B +:100720008C7080BB81B3836F81BBA5E3B1E0E3E450 +:10073000F1E08EE08E0F11921D928E13FCCF0C947F +:100740000605BF92CF92DF92EF92FF920F931F9315 +:10075000CF93DF9380910101882379F08091340158 +:100760008F5F80933401811108C00E941C05809323 +:100770000101811102C00E94AE0405E311E0C0E056 +:10078000D0E0DD24D39482E0C82EEE24E394F12C53 +:10079000C730D10500F580910101811164C080E46A +:1007A0000E941C0380930101811112C082E10E940A +:1007B00046038093010181110BC0C7010C2E01C0BB +:1007C000880F0A94EAF780950E94460380930101FE +:1007D0000E943E0348C0CA30A1F028F4C83059F046 +:1007E000C93061F005C0CC3089F070F0CD3089F0AF +:1007F000209A289810C0219A29980DC0229A2A98E8 +:100800000AC0239A2B9807C0529A01C0539A5B984A +:1008100002C03E9A469890EA9A95F1F79FB179996D +:1008200002C082E001C080E091709D25982B7C99E8 +:1008300002C084E001C080E0892B7D9902C038E0CD +:1008400001C030E0832B7E9902C020E101C020E08E +:10085000822B9FB19095991F9927991F9295990F77 +:10086000907E892B0FC080910101811149C080E4E5 +:100870000E941C0380930101882379F1B12C0E940E +:100880003E038B2DF8019081981719F08083C09258 +:1008900000010E94610321960F5F1F4FCE30D105EA +:1008A00009F076CF80910001882361F18150809317 +:1008B0000001882339F08FE99FE00197F1F700C02C +:1008C000000020C0A3E4B1E0E5E3F1E0CF01825FE6 +:1008D00091919D938E13FCCF15C083E10E94460336 +:1008E000809301018111CACF81E40E941C0380938F +:1008F00001018111C3CF0E945703B82EB094BFCF1E +:1009000080E0C0CF0E94AC0481E0DF91CF911F91C5 +:100910000F91FF90EF90DF90CF90BF900895E82F58 +:10092000F0E0ED5BFE4F8081089508950F931F93D3 +:10093000CF93DF93C3E4D1E010E00C2F025F8991E5 +:1009400090E00E94511B180F0C13F9CF812FDF91FB +:10095000CF911F910F9108950C947C0556985E9845 +:1009600025982D9826982E9827982F988FEF90E00D +:10097000909389008093880090938B0080938A00E5 +:1009800090938D0080938C00259A2D9A2FEF80E70D +:1009900092E0215080409040E1F700C00000269A8C +:1009A0002E9A2FEF80E792E0215080409040E1F7AF +:1009B00000C00000279A2F9A2FEF80E792E0215085 +:1009C00080409040E1F700C0000025982D982FEF5F +:1009D00080E792E0215080409040E1F700C00000A5 +:1009E00026982E982FEF80E792E02150804090408B +:1009F000E1F700C0000027982F9856985E98259838 +:100A00002D9826982E9827982F98089589EA8093F4 +:100A1000800089E08093810024982C983F988AB1C7 +:100A20008F748AB96E98479A8BB1806B8BB9769A1E +:100A30000E94AE040C947B0580E2809301018091BA +:100A4000510181110EC00E94160381E08093510173 +:100A50002FEF83ED90E3215080409040E1F700C0FC +:100A6000000080E40E941C038093010181112EC0CC +:100A70000E94460380930101811128C00E94460311 +:100A800080930101811122C08FE30E94460380936D +:100A9000010181111BC00E943E0380E40E941C03DF +:100AA00080930101811112C08CE00E944603809363 +:100AB000010181110BC00E94460380930101811145 +:100AC00005C08FE30E944603809301010E943E030C +:100AD00080910101089561110BC0FC01828188237E +:100AE00021F085EE0E94601103C085EE0E9428125D +:100AF00080E090E0089508956091BD017091BE017D +:100B00008091BF019091C0010E945D1B56985E9834 +:100B100025982D9826982E9827982F98823039F06E +:100B2000833041F0813041F4259A2D9A0895269A18 +:100B30002E9A0895279A2F9A089581E0089581E0CA +:100B400008950C949F0508950F931F93CF93DF93FF +:100B50008C01FC01C081D181CE010E94D619BE0159 +:100B60000E944D06EC01B8010E94A105882309F4FA +:100B70008DC0F8018281882309F44AC080915D010B +:100B800081111FC0C431F0E5DF0709F051C00E9498 +:100B9000A30581E080935D010E94F51B90935C01A9 +:100BA00080935B01109254011092560110925501EE +:100BB000109258011092570110925A011092590147 +:100BC00065C080915B0190915C010E94011C883C92 +:100BD000910570F480915401E82FF0E0EE0FFF1FB3 +:100BE000EB5AFE4FD183C0838F5F809354014EC078 +:100BF000C43880E5D80721F0C538D04501F13AC0A6 +:100C0000F8018281882341F01092520182E01EC0D7 +:100C1000C438E0E5DE0759F580915201811106C024 +:100C200086E20E94601186E20E94281282E01CC0C7 +:100C3000C438F0E5DF0741F3C538D045D9F4F801F1 +:100C40008281882331F01092530180E20E94771252 +:100C50001DC080915301811106C087E20E9460117E +:100C600087E20E94281280E20E947E120FC0C538DF +:100C7000D04529F381E08093520180935301C8014C +:100C8000DF91CF911F910F910C949D0580E0DF9132 +:100C9000CF911F910F910895089596E0799FF001EB +:100CA000112494E5899FE00DF11D1124E60FF11D3B +:100CB000EE0FFF1FEE5EFE4F859194910895880F11 +:100CC000991FFC01E657F040859194910895880F93 +:100CD000991FFC01E65FFE4F8591949108950F9353 +:100CE0001F93CF93DF93EC01811520E3920750F51A +:100CF000C11580E2D80708F0C3C0CB3BD10590F402 +:100D0000C83AD10508F06AC0C53AD10508F05BC001 +:100D1000C430D10508F0D0C1219709F0CAC101E063 +:100D200010E00AC2CF3FD10511F008F0C5C1C03FA5 +:100D3000D10508F0A2C0CE01805E9109089708F4A1 +:100D4000BBC1B7C1C13090E5D90709F4A2C020F5F5 +:100D5000C0318FE4D80770F4C11590E4D90708F0CA +:100D600094C0C11521E3D20708F0A3C1DD278E018D +:100D7000106CE2C1C115D04509F09BC10E94DD1481 +:100D80008FEF94E32CE0815090402040E1F700C0C9 +:100D900000000E94501CD0C1C11597E5D90758F436 +:100DA000C03121E5D20708F01CC1C43180E5D80765 +:100DB00008F475C07EC1CE0190578115904108F0AE +:100DC00078C1DF7073C1C53AD10509F477C1C63A5D +:100DD000D10509F076C102E810E4AEC1C83AD105E8 +:100DE00009F472C1C93AD10509F471C1CA3AD105F1 +:100DF00009F470C1CB3AD10509F46FC1CC3AD105E1 +:100E000009F46EC1CD3AD10509F46DC1C03BD105DD +:100E100009F46CC1CE3AD10509F46BC1CF3AD105C2 +:100E200009F46AC1C13BD10509F469C1C23BD105CE +:100E300009F468C1C33BD10509F467C1C43BD105BE +:100E400009F466C1C53BD10509F465C1C63BD105AE +:100E500009F464C1C73BD10509F463C1C83BD1059E +:100E600009F462C1C93BD10509F461C1CA3BD1058E +:100E700009F460C100E014E45FC18E0110655CC13B +:100E8000CE019F700E94670658C1DF708E01106A04 +:100E900053C18091DA0181608093DA014DC10E94D3 +:100EA000F51D811102C00E94DB1D0E94121E90E000 +:100EB0009093FB018093FA01C23080E5D80721F4BA +:100EC0008091FA01816086C0C43090E5D90721F491 +:100ED0008091FA0182607EC0C63020E5D20721F4FD +:100EE0008091FA01846076C0C83080E5D80719F493 +:100EF0008091FA0127C0CA3090E5D90721F480918A +:100F0000FA01806167C0CC3020E5D20721F48091DE +:100F1000FA0180625FC0CE3080E5D80721F480916D +:100F2000FA01806457C0C03190E5D90721F480915F +:100F3000FA0180684FC0C23120E5D20729F48091C0 +:100F4000FA018460886046C0C33080E5D80721F488 +:100F50008091FA018E7F3EC0C53090E5D90721F41B +:100F60008091FA018D7F36C0C73020E5D20721F489 +:100F70008091FA018B7F2EC0C93080E5D80719F423 +:100F80008091FA0126C0CB3090E5D90721F48091F9 +:100F9000FA018F7E1FC0CD3020E5D20721F4809169 +:100FA000FA018F7D17C0CF3080E5D80721F48091FA +:100FB000FA018F7B0FC0C13190E5D90721F48091F0 +:100FC000FA018F7707C0C331D04531F48091FA011F +:100FD0008B7F877F8093FA018091FA010E94161E11 +:100FE000ABC08D2F99278F70992781309105D9F447 +:100FF0009E012370332702C0880F991F2A95E2F7BC +:101000009C688E0144E0000F111F4A95E1F700270C +:101010001370802B912B53E0CC0FDD1F5A95E1F715 +:10102000C076DD272FC08230910531F4DC2FCC272C +:101030008E01016F106A80C08330910569F4CE0182 +:101040008370992701E010E002C0000F111F8A95FC +:10105000E2F7C8019C680FC084309105B9F4CE0155 +:101060008370992701E010E002C0000F111F8A95DC +:10107000E2F7C8019A6823E0CC0FDD1F2A95E1F75B +:10108000C07ED7708C010C2B1D2B56C0853091056E +:1010900031F4DC2FCC278E01046F106A4DC0069707 +:1010A00009F04AC0CF71DD27DC2FCC278E011062FA +:1010B00043C000E010E040C08E013EC001E810E4F3 +:1010C0003BC003E810E438C002EE14E435C009EE7A +:1010D00014E432C00AEE14E42FC005EB14E42CC073 +:1010E00006EB14E429C007EB14E426C00CEC14E46E +:1010F00023C00DEC14E420C003E815E41DC00AE889 +:1011000015E41AC002E915E417C004E915E414C097 +:1011100001E216E411C003E216E40EC004E216E494 +:101120000BC005E216E408C006E216E405C007E2BB +:1011300016E402C00AE216E4C801DF91CF911F91C4 +:101140000F91089596E0799FF001112494E5899F0D +:10115000E00DF11D1124E60FF11DEE0FFF1FEE5EF5 +:10116000FE4F85919491803E9105E0F4803C91057D +:1011700058F58133910509F46FC048F4893291051F +:1011800009F463C08A32910509F46DC072C08933D5 +:101190009105E9F082389105D1F08533910509F484 +:1011A0004DC067C0833E910581F138F4803E9105C2 +:1011B000B9F0823E9105D9F05CC0863E910561F19F +:1011C000873E9105A1F155C00E945F0608952091C8 +:1011D000FA0120FD02C021FF4CC080EE90E049C022 +:1011E0008091FA0180FFF9CF89E390E042C08091BD +:1011F000FA0182FF0EC08091FA0184FF03C080E0F3 +:1012000090E037C083EE90E034C08091FA0182FF15 +:10121000F2CF82EE90E02DC08091FA0183FF0BC0E7 +:101220008091FA0184FDEBCF87EE90E022C080919F +:10123000FA0183FFF5CF86EE90E01BC08091FA01A2 +:1012400085FF07C089E290E014C08091FA0185FF14 +:10125000F9CF85E390E00DC08091FA0186FF07C0C9 +:101260008AE290E006C08091FA0186FFF9CF81E31F +:1012700090E00E946F06089508950C943C098091B7 +:101280006E010895CF93DF9300D01F92CDB7DEB7E4 +:101290009C018091F101843019F593E099833B839F +:1012A0002A839093E9008FEF9091E800815095FD9B +:1012B00006C095ED9A95F1F700008111F5CF809168 +:1012C000E80085FF0DC040E050E063E070E0CE0133 +:1012D00001960E94AC0B8091E8008E778093E80025 +:1012E0000F900F900F90DF91CF910895CF93DF93E0 +:1012F00000D01F92CDB7DEB72091F101243021F547 +:1013000022E029839B838A8383E08093E9008FEF27 +:101310009091E800815095FD06C095ED9A95F1F702 +:1013200000008111F5CF8091E80085FF0DC040E0FD +:1013300050E063E070E0CE0101960E94AC0B80911A +:10134000E8008E778093E8000F900F900F90DF9168 +:10135000CF9108952091F1012430F1F422E02093FF +:10136000E9002FEF3091E800215035FD06C035ED42 +:101370003A95F1F700002111F5CF2091E80025FF03 +:101380000BC040E050E065E070E00E94AC0B809143 +:10139000E8008E778093E8000895CF93DF93EC0107 +:1013A0009091F101943009F046C080910C0188239E +:1013B000D9F080910D018823B9F09093E9008FEF67 +:1013C0009091E800815095FD06C095E19A95F1F75E +:1013D00000008111F5CF8091E80085FF2CC040E02E +:1013E00050E060E170E017C081E08093E9008FEF8A +:1013F0009091E800815095FD06C095ED9A95F1F722 +:1014000000008111F5CF8091E80085FF14C040E015 +:1014100050E068E070E0CE010E94AC0B8091E800E3 +:101420008E778093E80080E1FE01AEE5B1E00190A7 +:101430000D928A95E1F7DF91CF9108958091F001A7 +:10144000811109C00E94410D0E949E0D8091E20011 +:1014500084608093E20008951092F0010895089549 +:101460000C9485220E94E61B0E948B220E9444104D +:101470000C943D0942E061EC81E00E94BB0C42E02B +:1014800061EC82E00E94BB0C42E061EC83E00E94D0 +:10149000BB0C42E161EC84E00C94BB0C8091F30145 +:1014A000833009F455C030F4813071F0823009F492 +:1014B0008EC008958A3009F47AC08B3009F460C078 +:1014C000893009F09CC020C08091F201813A09F076 +:1014D00096C08091E800877F8093E8008091F601B4 +:1014E0009091F701892B21F460E18EE591E003C032 +:1014F00060E080E090E070E00E94F70B8091E800EF +:101500008B778093E80008958091F201813209F091 +:1015100076C08091F6019091F701009719F003973A +:1015200009F06DC08091E800877F8093E80080918A +:10153000E80082FD05C08091F1018111F8CF5FC004 +:101540008091F10080936E018091E8008B7753C009 +:101550008091F201813A09F052C08091F601909198 +:10156000F701892B09F04BC08091E800877F8093B9 +:10157000E8008091E80080FFFCCF80910C0136C02C +:101580008091F2018132D9F58091F6019091F701B5 +:10159000892BA9F58091E800877F8093E8000E945D +:1015A000F00C8091F40180930C010C94DD14809177 +:1015B000F201813221F58091E800877F8093E80075 +:1015C0000E94F00C8091F50180936F010895809145 +:1015D000F201813AA1F48091E800877F8093E800CE +:1015E0008091E80080FFFCCF80916F018093F10033 +:1015F0008091E8008E778093E8000C94F00C0895B9 +:1016000084B7877F84BF88E10FB6F8948093600029 +:10161000109260000FBE90E080E80FB6F8948093BF +:101620006100909361000FBE0E9493100E94410DD3 +:101630000E949E0D8091E20084608093E200789485 +:101640000E9424100E94951082E091E00E943F10B9 +:101650000E9473228091F101853069F40E94AD1BD4 +:101660008091EF018823B1F30E94D81B882391F366 +:101670000E94960BEFCF0E949B10ECCF292F3327AF +:1016800023303105C9F064F42130310581F0223076 +:10169000310509F043C08DE690E026EE33E042C00C +:1016A00021323105F1F02232310541F137C082E1BA +:1016B00090E023E534E036C099278130910541F070 +:1016C0008230910541F0892B49F5E2EEF3E005C047 +:1016D000EAECF3E002C0E2EBF3E0849190E09F01DA +:1016E00021C06430D8F4E62FF0E0EE0FFF1FEE5D6E +:1016F000FE4F2081318189E090E014C0643070F4A5 +:1017000070E0FB01EE0FFF1FE65EFE4F208131818E +:10171000FB01EA5EFE4F808190E004C080E090E033 +:1017200020E030E0FA0131832083089580E189BD13 +:1017300082E189BD09B400FEFDCF8091D8008F7D84 +:101740008093D8008091E00082608093E0008091D7 +:10175000E00081FDFCCF0895CF92DF92EF92FF92DF +:101760000F931F93CF93DF93EC018B016A010E94CB +:101770000F0D811133C0C114D10439F0F6018081FD +:101780009181081B190BC80FD91FE12CF12C0115F1 +:10179000110519F18091E80085FD16C08091E800DF +:1017A0008E778093E800C114D10449F0F60180815E +:1017B0009181E80EF91EF182E08285E00FC00E945F +:1017C0000F0D882321F30AC089918093F100015005 +:1017D0001109FFEFEF1AFF0ADACF80E0DF91CF9116 +:1017E0001F910F91FF90EF90DF90CF90089520917F +:1017F000F8013091F9012617370748F06115710596 +:1018000039F42091E8002E772093E80001C0B90157 +:1018100040E061157105A9F12091F101222309F43D +:1018200043C0253009F442C02091E80023FD40C0A8 +:101830002091E80022FD32C02091E80020FFE9CF8E +:101840004091F3002091F20030E0342BFC01CF01F5 +:101850006115710559F02830310540F4819180936C +:10186000F100615071092F5F3F4FF1CF41E0283007 +:10187000310509F040E02091E8002E772093E80040 +:10188000C8CF4111C9CF0AC08091F101882361F00E +:10189000853061F08091E80083FD0AC08091E80006 +:1018A00082FFF2CF80E0089582E0089583E00895FA +:1018B00081E008952091F8013091F901261737074A +:1018C00048F06115710539F42091E8002E772093D6 +:1018D000E80001C0B901FC0120E06115710591F13A +:1018E0008091F101882309F440C0853009F43FC09C +:1018F0008091E80083FD3DC08091E80082FD2FC00B +:101900008091E80080FFE9CF2091F3008091F20000 +:1019100090E0922B6115710559F08830910540F4E3 +:1019200024912093F1003196615071090196F2CF14 +:1019300021E0089709F020E08091E8008E778093FD +:10194000E800CBCF2111CCCF0AC08091F1018823D0 +:1019500061F0853061F08091E80083FD0AC08091DC +:10196000E80082FFF2CF80E0089582E0089583E0EE +:10197000089581E00895982F973058F59093E900E5 +:10198000981739F07091EC002091ED005091F00023 +:1019900003C0242F762F50E021FF19C03091EB00B7 +:1019A0003E7F3093EB003091ED003D7F3093ED00B2 +:1019B0003091EB0031603093EB007093EC0020939A +:1019C000ED005093F0002091EE0027FF07C09F5FCD +:1019D000D3CF8F708093E90081E0089580E008956F +:1019E0008091F20187FF11C08091E80082FD05C05F +:1019F0008091F1018111F8CF11C08091E8008B77BF +:101A00000BC08091F101882349F08091E80080FFAC +:101A1000F8CF8091E8008E778093E80008952091B8 +:101A2000E4003091E50095E64091EC00842F817050 +:101A300040FF22C08091E80080FD1CC08091F10130 +:101A4000882391F0853091F08091EB0085FD10C0E6 +:101A50004091E4005091E5004217530729F39A01A1 +:101A6000915011F784E0089582E0089583E008958D +:101A700081E0089580E008954091E80042FFDECFC4 +:101A800008950E94AF0D0E94B70DE0EEF0E0808156 +:101A900081608083E8EDF0E080818F77808319BCDE +:101AA000A7EDB0E08C918E7F8C9380818F7E8083B8 +:101AB0001092F00108950F931F93CF93DF930E942C +:101AC000AF0D0E94B70DC8EDD0E088818F77888375 +:101AD00088818068888388818F7D888319BC109273 +:101AE000F1011092ED011092EF011092EE0100EE63 +:101AF00010E0F80180818B7F8083888181608883FA +:101B000042E060E080E00E94BB0CE1EEF0E080810A +:101B10008E7F8083E2EEF0E080818160808380812F +:101B200088608083F80180818E7F808388818061D6 +:101B30008883DF91CF911F910F910895E8EDF0E038 +:101B400080818F7E8083E7EDF0E0808181608083FB +:101B500084E082BF81E08093F0010C945B0DE8ED9E +:101B6000F0E080818E7F80831092E20008951092D1 +:101B7000DA001092E10008951F920F920FB60F92B3 +:101B800011242F933F934F935F936F937F938F9382 +:101B90009F93AF93BF93EF93FF938091E10082FFF8 +:101BA0000BC08091E20082FF07C08091E1008B7F33 +:101BB0008093E1000E9423108091DA0080FF1FC013 +:101BC0008091D80080FF1BC08091DA008E7F8093C7 +:101BD000DA008091D90080FF0DC080E189BD82E1EB +:101BE00089BD09B400FEFDCF81E08093F1010E9420 +:101BF0001E0A05C019BC1092F1010E942C0A8091A6 +:101C0000E10080FF19C08091E20080FF15C0809143 +:101C1000E2008E7F8093E2008091E20080618093F9 +:101C2000E2008091D80080628093D80019BC85E0E2 +:101C30008093F1010E94300A8091E10084FF30C05E +:101C40008091E20084FF2CC080E189BD82E189BDE2 +:101C500009B400FEFDCF8091D8008F7D8093D8001D +:101C60008091E1008F7E8093E1008091E2008F7E81 +:101C70008093E2008091E20081608093E200809195 +:101C8000ED01882311F084E007C08091E30087FD17 +:101C900002C081E001C083E08093F1010E94320A1A +:101CA0008091E10083FF29C08091E20083FF25C07D +:101CB0008091E100877F8093E10082E08093F101D1 +:101CC0001092ED018091E1008E7F8093E100809180 +:101CD000E2008E7F8093E2008091E2008061809339 +:101CE000E20042E060E080E00E94BB0C8091F000E6 +:101CF00088608093F0000E942F0AFF91EF91BF91BE +:101D0000AF919F918F917F916F915F914F913F9193 +:101D10002F910F900FBE0F901F9018951F920F924A +:101D20000FB60F9211242F933F934F935F936F93AE +:101D30007F938F939F93AF93BF93CF93DF93EF9353 +:101D4000FF93C091E900CF708091EC00D82FD17043 +:101D500080FDD0E81092E9008091F000877F8093A9 +:101D6000F00078940E94D20E1092E9008091F00069 +:101D700088608093F000CD2BCF70C093E900FF9175 +:101D8000EF91DF91CF91BF91AF919F918F917F9113 +:101D90006F915F914F913F912F910F900FBE0F90D8 +:101DA0001F9018951F93CF93DF93CDB7DEB7AA97F7 +:101DB0000FB6F894DEBF0FBECDBFE2EFF1E088E0D2 +:101DC0008E0F9091F10091938E13FBCF0E944E0ADB +:101DD0008091E80083FF1FC18091F2019091F3018F +:101DE000492F50E04A30510508F015C1FA01EA5A6E +:101DF000FF4F0C940D24803881F0823809F00BC11C +:101E00008091F6018F708093E9008091EB0085FB53 +:101E1000882780F91092E90006C08091EE01909128 +:101E2000EF01911182609091E800977F9093E80014 +:101E30008093F1001092F100C8C0282F2D7F09F087 +:101E4000EAC0882319F0823061F0E5C08091F40186 +:101E5000813009F0E0C0933009F080E08093EF0119 +:101E60002BC08091F401811127C08091F6018F7001 +:101E700009F4D1C08093E9002091EB0020FF1CC041 +:101E8000933021F48091EB00806214C09091EB00BC +:101E900090619093EB0021E030E0A90102C0440F73 +:101EA000551F8A95E2F74093EA001092EA0080916C +:101EB000EB0088608093EB001092E9008091E800CD +:101EC000877F86C08111A7C01091F4011F77809190 +:101ED000E3008078812B8093E3008091E800877F86 +:101EE0008093E8000E94F00C8091E80080FFFCCF16 +:101EF0008091E30080688093E300111102C082E0CA +:101F000001C083E08093F10186C08058823008F0E0 +:101F100082C08091F4019091F5018C3D53E09507CA +:101F200079F583E08A838AE289834FB7F894DE01EA +:101F3000139620E03EE051E2E32FF0E0509357008B +:101F4000E49120FF03C0E295EF703F5FEF708E2FAA +:101F500090E0EA3010F0C79601C0C0968D939D9333 +:101F60002F5F243149F74FBF8091E800877F80932E +:101F7000E8006AE270E0CE0101960E94F70B14C0FF +:101F8000AE014F5F5F4F6091F6010E943E0BBC01B6 +:101F9000009709F440C09091E800977F9093E80083 +:101FA00089819A810E945A0C8091E8008B778093F6 +:101FB000E80031C0803879F58091E800877F809310 +:101FC000E8008091ED018093F1008091E8008E7728 +:101FD0008093E8000E94F00C1EC081111CC09091FB +:101FE000F4019230C0F48091E800877F8093E8008C +:101FF0009093ED010E94F00C8091ED01811106C0DB +:102000008091E30087FD02C081E001C084E08093FD +:10201000F1010E943A0A8091E80083FF0AC0809192 +:10202000E800877F8093E8008091EB0080628093D6 +:10203000EB00AA960FB6F894DEBF0FBECDBFDF91BE +:10204000CF911F9108950895CF938091F101882336 +:10205000A1F0C091E900CF709091EC00892F8170C0 +:1020600090FD80E8C82B1092E9008091E80083FD84 +:102070000E94D20ECF70C093E900CF910895909343 +:102080007501809374010895E0917401F0917501D8 +:10209000309721F00190F081E02D099480E00895BF +:1020A000E0917401F0917501309721F00280F38185 +:1020B000E02D09940895E0917401F0917501309735 +:1020C00021F00480F581E02D09940895209172019A +:1020D000309173018217930771F09093730180938D +:1020E0007201E0917401F0917501309721F0068042 +:1020F000F781E02D099408952091700130917101CC +:102100008217930771F09093710180937001E091B1 +:102110007401F0917501309721F00084F185E02D74 +:102120000994089508950C9492100E94EC1B0E944B +:1021300089030C94AE1C9F92AF92BF92CF92DF9214 +:10214000EF92FF920F931F93CF93DF9300D000D0B5 +:1021500000D0CDB7DEB70E94A1030DE010E0AA24A5 +:10216000A394B12C902E802F0E948F04980129589F +:102170003E4F6901F901F080F826A1F401501109E0 +:1021800088F78FEF89838A831B820E94F51B816009 +:10219000782F9D838C8349815A816B818D810E9428 +:1021A00032112FC09091DA0191FF04C08E830E94FA +:1021B00095048E8125E030E0A501022E01C0440F78 +:1021C0000A94EAF7E42E4F21C1F029839A828E21E6 +:1021D00091E009F490E09B830E94F51B8160782FC9 +:1021E0009D838C8349815A816B818D810E9432113C +:1021F000F6018081E826E08204C021503109E0F632 +:10220000BDCF0E94951F109176010E9444101817AF +:10221000B9F00E9444108093760126960FB6F89488 +:10222000DEBF0FBECDBFDF91CF911F910F91FF9009 +:10223000EF90DF90CF90BF90AF909F900C943D09AE +:1022400026960FB6F894DEBF0FBECDBFDF91CF91BB +:102250001F910F91FF90EF90DF90CF90BF90AF90C4 +:102260009F900895CF93DF93CDB7DEB72B970FB62E +:10227000F894DEBF0FBECDBF4F83588769877A873A +:102280008B87DE01119686E0FD0111928A95E9F7B0 +:1022900085E0FE01379601900D928A95E1F749811C +:1022A0005A816B817C818D819E810E947B172B9648 +:1022B0000FB6F894DEBF0FBECDBFDF91CF9108956A +:1022C000CF93882309F4C2C0C82F823859F40E94E2 +:1022D000441081FDBBC089E30E94551A0E94221B55 +:1022E00089E30CC0833879F40E94441080FDAEC0AD +:1022F00083E50E94551A0E94221B83E50E94971ACB +:10230000CF910C94221B843859F40E94441082FD12 +:102310009DC087E40E94551A0E94221B87E4EECFDD +:102320008CEF8C0F813A48F48C2F0E94D8218111B8 +:102330008DC08C2F0E94551AE3CF80E28C0F88301D +:1023400048F4C77081E001C0880FCA95EAF70E947F +:10235000DB1AD6CF8BE58C0F833078F4C53A29F0A1 +:10236000C63A31F083E890E005C081E890E002C011 +:1023700082E890E0CF910C94661088E58C0F833151 +:1023800008F064C0C83A39F1C93A41F1CA3A49F192 +:10239000CB3A51F1CC3A59F1CD3A61F1C03B69F1F8 +:1023A000CE3A71F1CF3A79F1C13B81F1C23B89F16B +:1023B000C33B91F1C43B99F1C53BA1F1C63BA9F1E7 +:1023C000C73BB1F1C83BB9F1C93BC1F1CA3BC9F147 +:1023D00080E090E038C082EE90E035C089EE90E079 +:1023E00032C08AEE90E02FC085EB90E02CC086EBE7 +:1023F00090E029C087EB90E026C08CEC90E023C0F1 +:102400008DEC90E020C083E891E01DC08AE891E067 +:102410001AC082E991E017C084E991E014C081E21A +:1024200092E011C083E292E00EC084E292E00BC021 +:1024300085E292E008C086E292E005C087E292E081 +:1024400002C08AE292E0CF910C947C10CF91089563 +:10245000882309F44BC0823859F40E94441081FF4C +:1024600045C089E30E94551A0E94221B89E30CC0D3 +:10247000833871F40E94441080FF38C083E50E94C5 +:10248000551A0E94221B83E50E94971A0C94221B66 +:10249000843859F40E94441082FF28C087E40E94C7 +:1024A000551A0E94221B87E4EFCF9CEF980F913AB8 +:1024B00058F390E2980F983050F4877091E001C083 +:1024C000990F8A95EAF7892F0E94E11ADFCF9BE5E1 +:1024D000980F933020F480E090E00C946610885AB6 +:1024E000833120F480E090E00C947C1008958823E0 +:1024F00021F00E94DB1A0C94221B0895882321F0FE +:102500000E94E11A0C94221B08957F928F929F9251 +:10251000AF92BF92CF92DF92EF92FF920F931F93F1 +:10252000CF93DF931F92CDB7DEB77C01C62E772EF7 +:10253000FC01058102950F70128111110E94F81A99 +:102540000E944E1A882379F0112369F080E28C0DE5 +:10255000883048F082E00E94371A0E944E1A91E0BB +:10256000D82ED92601C0D12CE72DE295EF70F0E0EE +:10257000E05AFF4F0C940D24872D807F072D0F709C +:10258000882311F00295007F112389F0002309F4BC +:1025900090C180E28C0D883020F4802F0E94DB1ADD +:1025A00003C0802F0E94EB1A0E94221B82C18C2D37 +:1025B0000E942812002309F495C180E28C0D883016 +:1025C00020F4802F0E94E11A03C0802F0E94F11A8C +:1025D0000E94221B87C1972D907F872D8F7090328C +:1025E00011F08295807FCC2021F0F1E0CF16B1F080 +:1025F0001EC0112349F0002309F414C1013009F071 +:1026000011C10E940B1B6EC1002319F0013009F4A7 +:1026100069C189830E940E1B89810AC1112321F09F +:10262000023008F05FC1FEC001115CC101C111237D +:1026300021F0002309F4F6C03CC1002309F4F8C0DE +:102640003EC1872D86958695837090E0009719F09E +:10265000019761F047C1112321F08C2D972D9370C4 +:1026600002C080E090E00E9466103CC1112321F07E +:102670008C2D972D937002C080E090E00E947C101A +:1026800031C18C2D112319F00E949D1E02C00E94A1 +:10269000051F0E948A1F26C1872D837009F052C032 +:1026A000111120C18C2D829586958770880F880F17 +:1026B0009C2D9F70892E912CA12CB12C082E04C02A +:1026C000880C991CAA1CBB1C0A94D2F7C4FE14C027 +:1026D0000FE010E020E030E0B901A80104C0440F91 +:1026E000551F661F771F8A95D2F7CB01BA016095F7 +:1026F00070958095909503C060E070E0CB01272D28 +:1027000026952695237030E02230310569F023307C +:10271000310589F0682979298A299B2921303105D9 +:1027200071F00E94C318DEC0682979298A299B2983 +:102730000E94DF18D7C00E94C318C501B4010E94CF +:10274000A718D0C0112319F0872D817001C086957C +:10275000882309F4C7C08C2D829586958770880FD1 +:10276000880F9C2D9F70892E912CA12CB12C082EA6 +:1027700004C0880C991CAA1CBB1C0A94D2F7C4FE86 +:1027800014C00FE010E020E030E0B901A80104C05F +:10279000440F551F661F771F8A95D2F7CB01BA01E8 +:1027A000609570958095909503C060E070E0CB01D6 +:1027B000272D269526952370422F50E04230510553 +:1027C00069F04330510589F0682979298A299B29C4 +:1027D0004130510571F00E949D1984C06829792902 +:1027E0008A299B290E94B9197DC00E949D19C501A3 +:1027F000B4010E94811976C08C2D90E0FC01E05E4E +:10280000F109E531F10508F050C0E059FF4F0C9493 +:102810000D240C2D0F70872D8F71112331F00E9424 +:102820001A19802F0E9477125DC00E943B19802FD9 +:102830000E947E1257C0112339F0011153C0872D19 +:102840008F710E9460194EC0023008F04BC0F7CF64 +:10285000112339F0872D8F710E941A1943C011235B +:10286000C9F3872D8F710E943B193CC0112329F0B9 +:10287000872D8F710E94051935C00E94FB1832C048 +:10288000112351F0172D1F71812F0E941A1963E037 +:10289000812F0E942E1A26C081E00E94371A023032 +:1028A00008F182E00E94371A1DC0112331F0002385 +:1028B00089F28C2D0E94601115C0002391F28C2D9D +:1028C0000E9428120FC0472D4F706C2DC7010E9427 +:1028D0006B050E941F1806C0472D4F706C2DC70155 +:1028E0000E944C06DD20F9F00E942A1A80FD1BC0D0 +:1028F000F70112820E94241A0E941A19C7010E942D +:10290000A2140E94241A0F90DF91CF911F910F9172 +:10291000FF90EF90DF90CF90BF90AF909F908F90FF +:102920007F900C943B190F90DF91CF911F910F91E5 +:10293000FF90EF90DF90CF90BF90AF909F908F90DF +:102940007F9008950F931F93CF93DF93EC018881BD +:1029500099812B813C81232BB9F09F3F11F48F3F4C +:1029600099F0CE010E94A405882371F068817981D5 +:102970008A810E94201A8C010E94D5190E949C18FD +:10298000B801CE010E948512DF91CF911F910F9166 +:1029900008950E94F81A0E94081B0E94CD1A0E94F6 +:1029A000221B0E943B200E948A1F80E090E00E9430 +:1029B000661080E090E00C947C100E94E81A0C9461 +:1029C000C9140E94151A292F22952F7030E02C303F +:1029D00031054CF42A3031056CF422503109223093 +:1029E0003105A8F407C02C30310569F02F303105CE +:1029F00051F00DC0803F69F018F4803E40F409C0EA +:102A0000843F29F406C093FB882780F9089580E06D +:102A1000089581E00895CF93DF9300D000D01F92F6 +:102A2000CDB7DEB70F900F900F900F900F90DF9102 +:102A3000CF910895CF93DF9300D000D000D0CDB7D1 +:102A4000DEB726960FB6F894DEBF0FBECDBFDF917E +:102A5000CF9108951F93CF93DF93C091850116E026 +:102A600080918601C81799F0D0E01C9FF0011D9F4E +:102A7000F00D1124E957FE4F40815181628173812D +:102A8000848195810E941A152196C770E9CFDF9144 +:102A9000CF911F9108954091B7015091B801609175 +:102AA000B9017091BA018091BB019091BC010C9465 +:102AB0001A158091BC0182958F7009F054C08091E5 +:102AC000B901882309F44FC080918501A091860146 +:102AD0006091B7017091B8014091BA015091BB016A +:102AE000B6E08A1709F43FC090E041155105C1F1E5 +:102AF0007F3F11F46F3FA1F1B89FF001B99FF00D36 +:102B00001124E957FE4F218172132AC020816213DC +:102B100027C02281211124C0238134812417350745 +:102B200010F421503109241B350B283C3105C0F429 +:102B30002091BC012F7020612093BC0126E0289FCA +:102B4000F001299FF00D1124E457FE4F80818F7012 +:102B50008061808387EB91E00E94A2140C942A1577 +:102B600001968770BECF0895CF92DF92EF92FF92C9 +:102B70000F931F93CF93DF93CDB7DEB762970FB656 +:102B8000F894DEBF0FBECDBF8C0185E0F801DE01F9 +:102B90001D9601900D928A95E1F7D8014C911196FE +:102BA0005C91119712966C9112971396CD90DC90D0 +:102BB00014973091B7017091B8018091BA0190914A +:102BC000BB01009709F46BC17F3F19F43F3F09F443 +:102BD00066C1E090B901EE2009F4C0C02091BC01AB +:102BE000C816D90628F0F601E81BF90BCF0104C07E +:102BF000809590958C0D9D1DFF24F394883C910544 +:102C000078F0F12C207F09F0C6C07C2DD98AC88AC3 +:102C100089890E940B1587EB91E00E94A214B1C034 +:102C2000822F807F09F046C0751314C0341312C080 +:102C3000611110C02F7020612093BC010E944B15C0 +:102C400087EB91E00E94A2148091BC01D8011596F7 +:102C50008C932EC0CD2819F15F3F11F44F3FF9F04E +:102C6000F62E61111CC0809185012091860136E00D +:102C7000821709F45AC090E0389FF001399FF00D97 +:102C80001124E957FE4F7181571306C07081471315 +:102C900003C07281711103C001968770E9CFF62ECF +:102CA000662309F418C18091BC0181608093BC0146 +:102CB000F12C11C1751308C0341306C0611104C092 +:102CC0008091BC01D801C3C04D875E878D859E85EC +:102CD0006A8B0E94E1146A898823E1F16623D1F1AD +:102CE0002091BC01822F82958F7090E0029774F042 +:102CF0008091B7019091B80198878F831986DB8600 +:102D0000CA862C87CE0107960E94A21486E0F8019D +:102D1000A7EBB1E001900D928A95E1F70E94591559 +:102D20000E944B15FF24F394D6C04D875E878D8596 +:102D30009E850E94151A292F22952F7030E022308F +:102D400031050CF0BCC09F7009F0B6C0805E8830C1 +:102D500008F4C1C0C8010E94A214E4CFC816D90665 +:102D600008F453C0F601E81BF90BCF01883C91052C +:102D700008F450C0F12C7C2DD98AC88A89890E9418 +:102D80000B15E7EBF1E086E0DF011D928A95E9F78C +:102D90000E944B15A0C0751314C0341312C06111EA +:102DA00010C08091BC01F8018583C8010E94A21463 +:102DB00086E0E7EBF1E0DF011D928A95E9F7FE2C52 +:102DC0008AC04D875E878D859E856A8B0E94E1143F +:102DD0006A89882309F4BECF662309F4BBCF20910A +:102DE000BC01822F82958F7090E002970CF48ECFF9 +:102DF0008091B7019091B8019A8389831B82DD820B +:102E0000CC822E83CE0101967FCF809590958C0D3C +:102E10009D1DACCFF62E662309F49CCF75132EC0F2 +:102E200034132CC02091BC0120FD1FC0822F82953D +:102E30008F70D9F0D80115962C9315978F3049F0E3 +:102E40008F5F982F9295907F822F8F70892B159688 +:102E50008C93C8010E94A21486E0F801A7EBB1E0B0 +:102E600001900D928A95E1F793CF86E0F801A7EBE8 +:102E7000B1E001900D928A95E1F72DC04D875E87F4 +:102E80008D859E850E94E114811140CF8091BC0107 +:102E900081608093BC01C8010E94A2141CC06623FB +:102EA00009F458CF4D875E878D859E850E94E11479 +:102EB000882309F44FCF2ACF811148CF0CC024308A +:102EC00031050CF047CF9F7009F440CFF801958190 +:102ED000907F09F03BCF8F2D62960FB6F894DEBF3E +:102EE0000FBECDBFDF91CF911F910F91FF90EF905B +:102EF000DF90CF9008951F93CF93DF93CDB7DEB7C8 +:102F00002C970FB6F894DEBF0FBECDBF4F83588706 +:102F100069877A878B879C87CE0107960E94B415B4 +:102F2000882369F08F8198852A853B85232BF1F1D1 +:102F30009F3F09F063C08F3F09F060C037C086E053 +:102F4000FE013796DE01119601900D928A95E1F708 +:102F50006F817885EA85FB85309741F17F3F11F4D9 +:102F60006F3F21F12091860130E0C9010196877001 +:102F700099274091850150E08417950709F447C0CF +:102F800069837A83FD83EC8396E0929FD001939FBF +:102F9000B00D1124A957BE4FFE01319601900D923C +:102FA0009A95E1F7809386010E942A1516E0809198 +:102FB0008501909186018917C1F1189FC0011124E4 +:102FC00089579E4F0E94B415882379F1E0918501BD +:102FD0001E9FF0011124E957FE4F4081518162810B +:102FE0007381848195810E941A158091850190E0FA +:102FF00001968770992780938501D9CF4F81588595 +:1030000069857A858B859C850E941A15CFCF0E9491 +:10301000DD141092860110928501E7EBF1E086E065 +:10302000DF011D928A95E9F7C1CF2C960FB6F8946F +:10303000DEBF0FBECDBFDF91CF911F910895EF92FC +:10304000FF920F931F93CF93DF938C01009709F4A6 +:103050006CC0F12CEE24E394E8012196F8018491F0 +:10306000843740F4843008F051C0813081F08230E0 +:1030700019F15BC0853709F444C0A8F19CE7980FAB +:10308000903708F052C08F770E94281241C00E5F1F +:103090001F4FFE01C49180E28C0F883048F4C77046 +:1030A0008E2D01C0880FCA95EAF70E94FB1A14C042 +:1030B0008C2F0E9460112DC00E5F1F4FFE01C49126 +:1030C00080E28C0F883058F4C7708E2D01C0880FB5 +:1030D000CA95EAF70E94011B0E94221B1AC08C2F7E +:1030E0000E94281216C00E5F1F4FFE01C491CC2310 +:1030F00081F08FE99FE00197F1F700C00000C15017 +:10310000F6CF0E5F1F4FFE01F49003C00E946011C6 +:103110008E018F2D882309F49FCFEFE9FFE03197CF +:10312000F1F700C000008150F5CFDF91CF911F91E2 +:103130000F91FF90EF90089508956093C1017093EF +:10314000C2018093C3019093C4010C94C9140F93DE +:103150001F930091C1011091C2012091C3013091D0 +:10316000C401DC01CB01802B912BA22BB32B8093CC +:10317000C1019093C201A093C301B093C4011F91F8 +:103180000F910C94C9140F931F930091C1011091DA +:10319000C2012091C3013091C401DC01CB01802325 +:1031A0009123A223B3238093C1019093C201A093E2 +:1031B000C301B093C4011F910F910C94C9140F93D4 +:1031C0001F930091C1011091C2012091C301309160 +:1031D000C401DC01CB0180279127A227B32780936C +:1031E000C1019093C201A093C301B093C4011F9188 +:1031F0000F910C94C9141092BD011092BE0110924F +:10320000BF011092C0010C94C91441E050E060E08D +:1032100070E004C0440F551F661F771F8A95D2F7D0 +:103220004093BD015093BE016093BF017093C001F4 +:103230000C94C91441E050E060E070E004C0440F19 +:10324000551F661F771F8A95D2F78091BD01909117 +:10325000BE01A091BF01B091C001482B592B6A2B30 +:103260007B2B4093BD015093BE016093BF017093CF +:10327000C0010C94C91441E050E060E070E004C06B +:10328000440F551F661F771F8A95D2F740955095BA +:10329000609570958091BD019091BE01A091BF0194 +:1032A000B091C001482359236A237B234093BD0179 +:1032B0005093BE016093BF017093C0010C94C91478 +:1032C00041E050E060E070E004C0440F551F661F0D +:1032D000771F8A95D2F78091BD019091BE01A09190 +:1032E000BF01B091C001482759276A277B27409327 +:1032F000BD015093BE016093BF017093C0010C9457 +:10330000C9140F931F930091BD011091BE0120912C +:10331000BF013091C001DC01CB01802B912BA22B8E +:10332000B32B8093BD019093BE01A093BF01B093D6 +:10333000C0011F910F910C94C9140F931F9300911A +:10334000BD011091BE012091BF013091C001DC018F +:10335000CB0180239123A223B3238093BD019093BB +:10336000BE01A093BF01B093C0011F910F910C94B7 +:10337000C9140F931F930091BD011091BE012091BC +:10338000BF013091C001DC01CB0180279127A2272A +:10339000B3278093BD019093BE01A093BF01B0936A +:1033A000C0011F910F910C94C9140895CF92DF9220 +:1033B000EF92FF920F931F93CF93DF938C01C090F6 +:1033C000C101D090C201E090C301F090C40180918E +:1033D000BD019091BE01A091BF01B091C001C82A6A +:1033E000D92AEA2AFB2ACFE1D0E0D701C6010C2E68 +:1033F00004C0B695A795979587950A94D2F780FF54 +:1034000006C0B8018C2F0E94A208019721F42197D1 +:1034100060F780E001C08C2FDF91CF911F910F9159 +:10342000FF90EF90DF90CF900895CF93DF93EC0162 +:103430000E94D619BE010E94A208DF91CF91089583 +:10344000CB010E94151A08958091C5018595859537 +:10345000859508958091C5018770089598E0899FAA +:1034600090011124262B2093C5010C941A19209148 +:10347000C501809582238093C501982F977069F4C8 +:1034800030E0482F552747FD50952417350729F080 +:103490008595859585950C943B1908959091C50166 +:1034A000977081E009F480E0089590910C019923D0 +:1034B00021F090910D01911109C020910E013091E0 +:1034C0000F01F90132969FEF40E01FC0982F9695AB +:1034D000969596959F3050F5E0910E01F0910F0171 +:1034E000E90FF11D877021E030E0A90102C0440F0F +:1034F000551F8A95E2F7CA019181892B818308952E +:103500009F3F39F04F5F4E3041F051915813F8CF43 +:103510000DC05111F7CF942FF5CF9F3F39F0F9012E +:10352000E90FF11D97FDFA95828308950895909112 +:103530000C01992321F090910D01911109C0209166 +:103540000E0130910F01F9013296205F3F4F1FC0ED +:10355000982F9695969596959F30F0F4E0910E01F0 +:10356000F0910F01E90FF11D877021E030E0A90112 +:1035700002C0440F551F8A95E2F7CA0180959181D8 +:103580008923818308953196E217F30729F090810A +:103590009813F9CF1082F7CF089581E090E0E09181 +:1035A0000E01F0910F01E80FF91F10820196803192 +:1035B0009105A9F708959091D901892B8093D9019C +:1035C000089580959091D90189238093D901089518 +:1035D0001092D90108959091D801892B8093D80138 +:1035E000089580959091D80189238093D8010895FA +:1035F0001092D80108959091D701892B8093D7011B +:10360000089580959091D70189238093D7010895DB +:103610001092D70108958093C60108951092C601B3 +:10362000089580910E0190910F01FC0131969C014B +:10363000205F3F4F80E0919191118F5FE217F30778 +:10364000D1F70895E0910E01F0910F018091D90119 +:103650008083E0910E01F0910F0190818091D8015B +:10366000892B8083E0910E01F0910F019081809170 +:10367000D701892B80838091C601882361F0E09176 +:103680000E01F0910F019081892B80830E94111B04 +:1036900081111092C60180910E0190910F010C943E +:1036A000501020E0009739F0AC01415051098423BB +:1036B00095232F5FF7CF822F0895CF92DF92EF925D +:1036C000FF926C01EE24FF24C114D104E104F10443 +:1036D00021F0C701B60120E101C020E0C72ED82E9D +:1036E000E92EFF24C114D104E104F10419F0285F8C +:1036F000C701B6016B017C0154E0F694E794D794BE +:10370000C7945A95D1F7C114D104E104F10419F01A +:103710002C5FC701B6016B017C0142E0F694E7948F +:10372000D794C7944A95D1F7C114D104E104F104A8 +:1037300019F02E5FC701B601DC01CB01B695A79544 +:1037400097958795892B8A2B8B2B09F02F5F822FDA +:10375000FF90EF90DF90CF9008958091F101843039 +:1037600021F11092DB0120E488E190E00FB6F8949B +:10377000A895809360000FBE2093600080E00E94B7 +:103780003D0983B7817F846083BF83B7816083BF36 +:103790007894889583B78E7F83BF88E10FB6F894BD +:1037A00080936000109260000FBE08950895089500 +:1037B0000E94D61B0E94A1030E94D71B0E94960460 +:1037C00091E0811101C090E0892F08950E94DD14DD +:1037D0000E9444100C943D0982E084BD93E095BDA5 +:1037E0009AEF97BD80936E0008952FB7F89480915B +:1037F000DC019091DD01A091DE01B091DF012FBFCE +:103800000895CF92DF92EF92FF920F931F932FB7FD +:10381000F8944091DC015091DD016091DE017091DE +:10382000DF012FBF6A017B01EE24FF248C0120E021 +:1038300030E0C016D106E206F30610F441505109FB +:103840009A01281B390BC9011F910F91FF90EF902E +:10385000DF90CF9008951F920F920FB60F92112410 +:103860008F939F93AF93BF938091DC019091DD0183 +:10387000A091DE01B091DF010196A11DB11D8093E1 +:10388000DC019093DD01A093DE01B093DF01BF91D5 +:10389000AF919F918F910F900FBE0F901F90189531 +:1038A0000E94410DF8942FEF87EA91E62150804065 +:1038B0009040E1F700C0000087E090EBDC018093CE +:1038C000FB019093FC01A093FD01B093FE019CE0ED +:1038D00088E10FB6F894A895809360000FBE90938E +:1038E0006000FFCFEF92FF920F931F93CF93DF9370 +:1038F000D82FCDE08C2F0E948F0405E010E0E82E39 +:10390000F12CC701002E02C0959587950A94E2F725 +:1039100080FF09C0602F7C2F80E00E944D06D813E5 +:1039200002C081E006C00150110958F7C15010F7DC +:1039300080E0DF91CF911F910F91FF90EF9008955C +:10394000CF93C82F8CE20E94721C882321F08C2F09 +:10395000CF910C94721C80E0CF910895CF930E9478 +:10396000F51D811102C00E94DB1DC5E6C15049F062 +:103970000E94A1038FE39CE90197F1F700C00000CA +:10398000F5CF89E20E94A01C811113C18AE20E9436 +:10399000A01C81110E94DB1D85E00E94A01C8111EA +:1039A0000E94501C0E94001E8093DA0187E00E9452 +:1039B000A01C8823A9F18BE10E94A01C882351F050 +:1039C0008091DA0181FB222720F991E0922790FB78 +:1039D00081F90EC08EE00E94A01C882361F08091C6 +:1039E000DA0182FB222720F991E0922790FB82F9ED +:1039F0008093DA0115C080E10E94A01C9091DA0149 +:103A0000882341F093FB222720F981E0822780FB65 +:103A100093F904C0892F809580FB90F99093DA0187 +:103A20008091DA010E94041E0E94121E8093FA0106 +:103A300080EE0E94A01C882341F08091FA01982F0B +:103A4000909590FB80F98093FA0189E30E94A01C75 +:103A5000882359F08091FA0181FB222720F991E017 +:103A6000922790FB81F98093FA0182EE0E94A01CBC +:103A7000882359F08091FA0182FB222720F991E0F6 +:103A8000922790FB82F98093FA0186EE0E94A01C97 +:103A9000882359F08091FA0183FB222720F991E0D5 +:103AA000922790FB83F98093FA0183EE0E94A01C79 +:103AB000882359F08091FA0184FB222720F991E0B4 +:103AC000922790FB84F98093FA0185E30E94A01C61 +:103AD000882359F08091FA0185FB222720F991E093 +:103AE000922790FB85F98093FA0181E30E94A01C44 +:103AF000882359F08091FA0186FB222720F991E072 +:103B0000922790FB86F98093FA0181E10E94A01C24 +:103B1000882359F08091FA0187FB222720F991E050 +:103B2000922790FB87F98093FA018091FA010E9415 +:103B3000161E8091FA0187FB882780F980930D017A +:103B400087E20E94A01CC82F8EE10E94A01C811158 +:103B5000C2608FE10E94A01C8111C46080E20E94BB +:103B6000A01C8111C86081E20E94A01C8111C0616B +:103B700082E20E94A01C8111C06283E20E94A01C0C +:103B80008111C06484E20E94A01C882311F0C068E7 +:103B900002C0CC2329F08C2F0E940D1E6C2F03C075 +:103BA0000E94091E682F70E080E090E0CF910C9495 +:103BB0009D18CF9108956DEE7EEF80E090E00E9419 +:103BC000472460E082E090E00E94352460E083E0DA +:103BD00090E00E94352460E084E090E00E9435246B +:103BE00060E085E090E00C94352480E090E00E9455 +:103BF0002F2421E08D3E9E4F09F020E0822F089572 +:103C000082E090E00C942724682F82E090E00C94EE +:103C1000352483E090E00C942724682F83E090E023 +:103C20000C94352484E090E00C942724682F84E0E1 +:103C300090E00C9435248091E20180FF0BC06091EC +:103C4000130185E0689FB0011124759567957595FE +:103C500067952BC081FF09C06091130185E0689FC3 +:103C6000B00111247595679520C082FF07C060914F +:103C7000130185E0689FB001112417C09091E30102 +:103C80009923D1F060911201961788F720911301C2 +:103C900085E0289F90011124929FA001939F500DD1 +:103CA000112470E0CA010E94F9236038710540F4C4 +:103CB0006115710539F002C065E070E0862F089546 +:103CC0008FE7089581E008958091E20180FF08C0A8 +:103CD0006091110170E0759567957595679521C0A4 +:103CE00081FF06C06091110170E07595679519C05C +:103CF00082FF04C06091110170E010C09091E30157 +:103D00009923C1F0609110019617A0F780911101DD +:103D1000899FC001112470E00E94F9236038710569 +:103D200028F46115710521F0862F08958FE7089515 +:103D300081E0089561E070E0F4CF803F21F40E94BB +:103D40001B1E819504C0813F29F40E941B1E809395 +:103D5000E6010895823F21F40E941B1E819504C054 +:103D6000833F29F40E941B1E8093E5010895893F3B +:103D700019F40E94641E05C08A3F31F40E94641E3B +:103D800081958093E70108958B3F21F40E94641E82 +:103D9000819504C08C3F29F40E94641E8093E80141 +:103DA0000895843F21F48091E401816017C0853F2C +:103DB00021F48091E401826011C0863F21F480915A +:103DC000E40184600BC0873F21F48091E4018860A6 +:103DD00005C0883F31F48091E40180618093E40163 +:103DE00008958D3F21F48091E20181600BC08E3FE8 +:103DF00021F48091E201826005C08F3F29F4809117 +:103E0000E20184608093E2010895803F39F480915B +:103E1000E60187FF6CC01092E60169C0813F29F47A +:103E20008091E6011816BCF362C09091E501823FD3 +:103E300029F497FF5CC01092E50159C0833F19F443 +:103E40001916CCF354C0893F41F48091E70118164C +:103E50000CF04DC01092E7014AC08A3F29F48091CE +:103E6000E70187FF44C0F6CF8B3F39F48091E8012A +:103E700087FF3DC01092E8013AC08C3F29F4809141 +:103E8000E8011816BCF333C0843F21F48091E401AB +:103E90008E7F17C0853F21F48091E4018D7F11C092 +:103EA000863F21F48091E4018B7F0BC0873F21F492 +:103EB0008091E401877F05C0883F31F48091E4015F +:103EC0008F7E8093E40113C08D3F21F48091E20145 +:103ED0008E7F0BC08E3F21F48091E2018D7F05C063 +:103EE0008F3F29F48091E2018B7F8093E2018091E2 +:103EF000E50181110EC08091E60181110AC0809117 +:103F0000E701811106C08091E801811102C0109281 +:103F1000E301089584EE91E00E945B100E94F51B7E +:103F20009093E1018093E00108951F93CF93DF9375 +:103F30008091E0019091E1010E94011CAC019091FF +:103F4000E301992321F02091140130E006C0209173 +:103F500015018AE0289F900111244217530708F4A5 +:103F600086C08091E501C091E601D091E7011091F2 +:103F7000E801811107C0C11176C0D11174C01111BF +:103F800072C075C09F3F19F09F5F9093E3011816B0 +:103F900024F40E941B1E8093E5018091E50187FFB8 +:103FA00005C00E941B1E81958093E5011C1624F418 +:103FB0000E941B1E8093E6018091E60187FF05C0E9 +:103FC0000E941B1E81958093E6016091E5016623A6 +:103FD00039F1C091E601CC2319F1772767FD70957F +:103FE000872F972F0E940A2323E333E343E35FE302 +:103FF0000E946E230E94D7226093E5016C2F7727E1 +:1040000067FD7095872F972F0E940A2323E333E3E0 +:1040100043E35FE30E946E230E94D7226093E60190 +:104020001D1624F40E94641E8093E7018091E7012D +:1040300087FF05C00E94641E81958093E7011116D9 +:1040400024F40E94641E8093E8018091E80187FFB8 +:1040500005C00E94641E81958093E801DF91CF9195 +:104060001F910C948A1F9F3F09F08ECF96CFDF914E +:10407000CF911F910895E4EEF1E085E0DF011D92FC +:104080008A95E9F71092E3011092E20108958330D6 +:1040900081F128F4813059F08230D1F008958530D3 +:1040A00009F449C0B8F1863009F456C008958091EA +:1040B0001501262F30E0280F311D2F3F310524F444 +:1040C000680F6093150108958FEF8093150108958F +:1040D00080911401262F30E0280F311D2F3F31052C +:1040E00024F4680F6093140108958FEF80931401F6 +:1040F000089580911301262F30E0280F311D2F3FA6 +:10410000310524F4680F6093130108958FEF8093B5 +:104110001301089580911201262F30E0280F311DE0 +:104120002F3F310524F4680F6093120108958FEF3B +:1041300080931201089580911101262F30E0280FFD +:10414000311D2F3F310524F4680F6093110108954C +:104150008FEF80931101089580911001262F30E098 +:10416000280F311D2F3F310524F4680F6093100193 +:1041700008958FEF809310010895833011F128F492 +:10418000813049F0823091F00895853081F120F13D +:104190008630C1F1089580911501681720F4861BBF +:1041A00080931501089510921501089580911401CE +:1041B000681720F4861B809314010895109214014F +:1041C000089580911301681720F4861B80931301D2 +:1041D000089510921301089580911201681720F438 +:1041E000861B809312010895109212010895809108 +:1041F0001101681720F4861B809311010895109215 +:104200001101089580911001681720F4861B809396 +:10421000100108951092100108950F931F938D318E +:1042200009F46BC008F03FC08E3009F47FC0C0F4C1 +:10423000873009F469C068F4863009F0B1C0809114 +:10424000DA01817F8E7F8093DA0181E08093EA0139 +:10425000A8C0883009F4A2C08B3009F49FC0A0C068 +:10426000863109F49BC078F4803109F472C0813141 +:1042700009F096C00E94DD1490910D0181E089271C +:1042800080930D018BC0893109F488C08B3109F00E +:1042900087C08091DA0181FB222720F991E09227E3 +:1042A00090FB81F94CC0853309F470C048F4873223 +:1042B00009F46CC008F459C0893209F467C070C0B1 +:1042C000833438F48A3308F04EC0883309F466C06A +:1042D00067C0833409F45AC0883409F061C00E9471 +:1042E000DD140FEF13ED20E3015010402040E1F703 +:1042F00000C000000E94501C51C00E9491220E94E8 +:1043000044100E943D094AC09091DA01892F80959E +:10431000817080FB90F929F0966098609093DA01A3 +:1043200040C0997F977F9093DA0138C08091DA017D +:1043300082FB222720F991E0922790FB82F980935B +:10434000DA01992359F18091DA0181608093DA01D1 +:1043500025C08091DA0183FB222720F991E0922782 +:1043600090FB83F9ECCF895301C08D5141E050E0BF +:1043700060E070E08A019B0104C0000F111F221F42 +:10438000331F8A95D2F7C901B80104C061E070E01B +:1043900080E090E00E949D180E94DD1481E001C041 +:1043A00080E01F910F91089580E0089580E00895C6 +:1043B000CF93C82F8091EA01813079F018F08230D4 +:1043C000E9F187C0E0910E01F0910F018081813108 +:1043D00069F0823209F07FC009C0E0910E01F091CE +:1043E0000F018081813111F0823261F48C2F0E94A3 +:1043F000D421811104C08C2F0E940D211DC081E0A9 +:1044000090E01AC08C2F0E94D621811114C0C431B3 +:1044100079F048F4CB3079F0C03109F060C082E027 +:104420008093EA0108C0C93219F0C83321F057C09F +:104430001092EA0154C081E0817053C0C93289F101 +:1044400018F5C43171F1A8F4C73009F046C08AE00C +:104450008093150194E19093140193E090931301DC +:104460008093120188E08093110188E2809310010B +:1044700034C0CE51C63088F5EC2FF0E0E65DFE4F3B +:1044800080818093E90129C0CE34E9F020F4CB3457 +:1044900021F56AE013C0C13579F0C235F1F461E06D +:1044A0000DC08091E901882319F01092E90115C02F +:1044B00081E08093EA0115C061E006C08091E901C6 +:1044C0000E9447200AC06AE08091E9010E94BD2055 +:1044D00004C01092EA0180E004C081E002C080E0E4 +:1044E000ABCFCF910895E1E8F0E0808188608083D0 +:1044F0008081816080838FB7F89493E090938900E6 +:1045000090ED909388008FBF0895EFE6F0E08081F2 +:10451000826080830895EFE6F0E080818D7F808364 +:104520000895EFE6F0E0908182E089278083089586 +:104530001F920F920FB60F9211242F933F934F9318 +:104540005F936F937F938F939F93AF93BF93EF93FB +:10455000FF938091EB019091EC0101969093EC0117 +:104560008093EB01811103C082E00E943D09E0913C +:10457000EC01E695E695F0E0E05AFA4FE49180917F +:10458000EB018E1303C080E00E943D09FF91EF9183 +:10459000BF91AF919F918F917F916F915F914F915B +:1045A0003F912F910F900FBE0F901F90189504D040 +:1045B0006894B1118DC0089570D088F09F5790F025 +:1045C000B92F9927B751A0F0D1F0660F771F881F38 +:1045D000991F1AF0BA95C9F712C0B13081F077D09F +:1045E000B1E0089574C0672F782F8827B85F39F03D +:1045F000B93FCCF3869577956795B395D9F73EF497 +:1046000090958095709561957F4F8F4F9F4F08953E +:10461000E89409C097FB3EF490958095709561955C +:104620007F4F8F4F9F4F9923A9F0F92F96E9BB2712 +:104630009395F695879577956795B795F111F8CF8E +:10464000FAF4BB0F11F460FF1BC06F5F7F4F8F4FF9 +:104650009F4F16C0882311F096E911C0772321F0EF +:104660009EE8872F762F05C0662371F096E8862F87 +:1046700070E060E02AF09A95660F771F881FDAF7DE +:10468000880F9695879597F9089557FD9058440F90 +:10469000551F59F05F3F71F04795880F97FB991FA1 +:1046A00061F09F3F79F0879508951216130614065E +:1046B000551FF2CF4695F1DF08C0161617061806EB +:1046C000991FF1CF86957105610508940895E894C6 +:1046D000BB2766277727CB0197F908950BD078C0C1 +:1046E00069D028F06ED018F0952309F05AC05FC049 +:1046F0001124EECFCADFA0F3959FD1F3950F50E0C0 +:10470000551F629FF001729FBB27F00DB11D639F83 +:10471000AA27F00DB11DAA1F649F6627B00DA11D29 +:10472000661F829F2227B00DA11D621F739FB00DCF +:10473000A11D621F839FA00D611D221F749F33273F +:10474000A00D611D231F849F600D211D822F762FD8 +:104750006A2F11249F5750408AF0E1F088234AF0D5 +:10476000EE0FFF1FBB1F661F771F881F9150504021 +:10477000A9F79E3F510570F014C0AACF5F3FECF33C +:10478000983EDCF3869577956795B795F795E7950D +:104790009F5FC1F7FE2B880F911D9695879597F91E +:1047A000089597F99F6780E870E060E008959FEFB3 +:1047B00080EC089500240A941616170618060906B8 +:1047C000089500240A941216130614060506089587 +:1047D000092E0394000C11F4882352F0BB0F40F40F +:1047E000BF2B11F460FF04C06F5F7F4F8F4F9F4F4F +:1047F000089597FB072E16F4009407D077FD09D093 +:104800000E94132407FC05D03EF4909581959F4F9C +:104810000895709561957F4F0895EE0FFF1F0590E5 +:10482000F491E02D0994AA1BBB1B51E107C0AA1FFC +:10483000BB1FA617B70710F0A61BB70B881F991F41 +:104840005A95A9F780959095BC01CD010895F999E5 +:10485000FECF92BD81BDF89A992780B50895A8E151 +:10486000B0E042E050E00C944F24262FF999FECF9F +:1048700092BD81BDF89A019700B4021639F01FBAB3 +:1048800020BD0FB6F894FA9AF99A0FBE08950196D2 +:10489000272F0E9436240C943524DC01CB01FC0127 +:1048A000F999FECF06C0F2BDE1BDF89A319600B489 +:0E48B0000D9241505040B8F70895F894FFCF94 +:1048BE0002203F09CD09AA09760942090101C70163 +:1048CE0028080A03140A3F4D36392105D4049E04E4 +:1048DE006504F80311042A044304010203040506C7 +:0448EE0007080900AE +:00000001FF diff --git a/keyboards/ergodox_ez/keymaps/romanzolotarev-norman-plover-osx/keymap.c b/keyboards/ergodox_ez/keymaps/romanzolotarev-norman-plover-osx/keymap.c new file mode 100644 index 0000000000..9971b834cf --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/romanzolotarev-norman-plover-osx/keymap.c @@ -0,0 +1,134 @@ +#include "ergodox_ez.h" +#include "debug.h" +#include "action_layer.h" + +#define BASE 0 +#define SYMB 1 +#define PLVR 2 +#define ARRW 3 + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [BASE] = KEYMAP( + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_F14, + KC_TAB, KC_Q, KC_W, KC_D, KC_F, KC_K, TG(PLVR), + CTL_T(KC_ESC), KC_A, KC_S, KC_E, KC_T, KC_G, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_LBRC, + KC_F1, KC_F2, KC_F3, KC_LALT, KC_LGUI, + /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ KC_VOLD, KC_MUTE, + /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ KC_VOLU, + /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ KC_BSPC, CTL_T(KC_ESC), KC_FN1, + // + /*-*/ KC_F15, KC_6, KC_7, KC_8, KC_9, KC_0, KC_EQL, + /*-*/ KC_BSLS, KC_J, KC_U, KC_R, KC_L, KC_SCLN, KC_MINS, + /*-*/ /*-*/ KC_Y, KC_N, KC_I, KC_O, KC_H, KC_ENT, + /*-*/ KC_RBRC, KC_P, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, + /*-*/ /*-*/ /*-*/ KC_RGUI, KC_RALT, KC_F4, KC_F5, KC_F6, + KC_MPLY, KC_MNXT, + KC_MPRV, + KC_FN3, KC_QUOT, KC_SPC + ), + [SYMB] = KEYMAP( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_1, KC_2, KC_3, KC_4, KC_5, KC_TRNS, + KC_TRNS, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ KC_TRNS, KC_TRNS, + /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ KC_TRNS, + /*-*/ /*-*/ /*-*/ /*-*/ KC_TRNS, KC_TRNS, KC_TRNS, + // + /*-*/ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + /*-*/ KC_TRNS, KC_6, KC_7, KC_8, KC_9, KC_0, KC_TRNS, + /*-*/ /*-*/ KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, 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 + ), + [PLVR] = KEYMAP( + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, + KC_NO, KC_1, KC_2, KC_3, KC_4, KC_5, KC_TRNS, + KC_NO, KC_Q, KC_W, KC_E, KC_R, KC_T, + KC_NO, KC_A, KC_S, KC_D, KC_F, KC_G, KC_NO, + KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, KC_NO, + /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ KC_TRNS, KC_TRNS, + /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ KC_TRNS, + /*-*/ /*-*/ /*-*/ /*-*/ KC_C, KC_V, KC_NO, + // + /*-*/ KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + /*-*/ KC_NO, KC_6, KC_7, KC_8, KC_9, KC_0, KC_NO, + /*-*/ /*-*/ KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, + /*-*/ KC_NO, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + /*-*/ /*-*/ /*-*/ KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_NO, KC_N, KC_M + ), + [ARRW] = KEYMAP( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_BTN1, KC_MS_U, KC_BTN2, KC_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_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_UP, KC_TRNS, KC_TRNS, KC_TRNS, + /*-*/ /*-*/ KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, + /*-*/ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + /*-*/ /*-*/ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS + ), +}; + +const uint16_t PROGMEM fn_actions[] = { + [SYMB] = ACTION_LAYER_TAP_TOGGLE(SYMB), // FN1 - Momentary Symbols Layer + [PLVR] = ACTION_LAYER_TAP_TOGGLE(PLVR), // FN2 - Momentary Plover Layer + [ARRW] = ACTION_LAYER_TAP_TOGGLE(ARRW), // FN3 - Momentary Arrows Layer +}; + +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) { + case SYMB: + ergodox_right_led_1_on(); + break; + case PLVR: + ergodox_right_led_2_on(); + break; + case ARRW: + ergodox_right_led_3_on(); + break; + default: + break; + } +}; diff --git a/keyboards/ergodox_ez/keymaps/romanzolotarev-norman-plover-osx/readme.md b/keyboards/ergodox_ez/keymaps/romanzolotarev-norman-plover-osx/readme.md new file mode 100644 index 0000000000..804c52a767 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/romanzolotarev-norman-plover-osx/readme.md @@ -0,0 +1,50 @@ +# Roman's Layout + +There are four layers: + +- **BASE** is [Norman layout](https://normanlayout.info/). +- **SYMB** for numbers and symbols. +- **PLVR** is optimized for [Plover](http://www.openstenoproject.org). +- **ARRW** for navigation (same fingers for arrows as IJKL on QWERTY). + +Looking for HJKL arrows? [Here we +go](../romanzolotarev-norman-plover-osx-hjkl/). + +[![keyboard-layout](romanzolotarev-norman-plover-osx.png)](http://www.keyboard-layout-editor.com/#/gists/8ebcb701ecb763944417) + +## Switching + +- Tap `SYMB` to toggle **SYMB**. +- Tap `ARRW` to toggle **ARRW**. +- Hold `SYMB` (or `ARRW`) to activate **SYMB** (or **ARRW**) while holding. +- Tap `PLVR` to toggle **PLVR**. + +## LEDs + +- Red: SYMB is on. +- Green: PLVR is on. +- Blue: ARRW is on. + +## Functional Keys + +- Tap `F1` to mute microphone via [Shush](http://mizage.com/shush/). +- Tap `F2` to copy screenshot to the clipboard. +- Hold `SHIFT` and tap `F2` to save screenshot as a file. +- Tap `F3`, `F4`, `F5`, `F6` to resize a window via [Divvy](http://mizage.com/divvy/). +- Tap `F14`, `F15` to adjust display brightness. + +**IMPORTANT**: If you have another keyboard connected via Bluetooth, then +`F14` and `F15` will not work. Turn off that Bluetooth keyboard. Re-plug +you ErgoDox. Enjoy! + +## CTRL/ESC + +Both of those keys are frequently used in Vim. + +- Tap `CTRL/ESC` to send `ESC`. +- Hold `CTRL/ESC` to use as `CTRL`. + +## Activate N-rollover + +- While in **BASE** hold left `SHIFT` and right `SHIRT` and then tap `N`. +- Then you can activate **PLVR** and use ErgoDox EZ for steno. diff --git a/keyboards/ergodox_ez/keymaps/romanzolotarev-norman-plover-osx/romanzolotarev-norman-plover-osx.png b/keyboards/ergodox_ez/keymaps/romanzolotarev-norman-plover-osx/romanzolotarev-norman-plover-osx.png new file mode 100644 index 0000000000..10b0752be5 Binary files /dev/null and b/keyboards/ergodox_ez/keymaps/romanzolotarev-norman-plover-osx/romanzolotarev-norman-plover-osx.png differ diff --git a/keyboards/ergodox_ez/keymaps/romanzolotarev-norman-qwerty-osx/compiled.hex b/keyboards/ergodox_ez/keymaps/romanzolotarev-norman-qwerty-osx/compiled.hex new file mode 100644 index 0000000000..1debb026a1 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/romanzolotarev-norman-qwerty-osx/compiled.hex @@ -0,0 +1,1120 @@ +:100000000C9425020C9469020C9469020C94690208 +:100010000C9469020C9469020C9469020C946902B4 +:100020000C9469020C9469020C94800D0C94520E8D +:100030000C9469020C9469020C9469020C94690294 +:100040000C9469020C940C210C9469020C946902C2 +:100050000C9469020C94EE1B0C9469020C946902D6 +:100060000C9469020C9469020C9469020C94690264 +:100070000C9469020C9469020C9469020C94690254 +:100080000C9469020C9469020C9469020C94690244 +:100090000C9469020C9469020C9469020C94690234 +:1000A0000C9469020C9469020C946902BF0EE10E73 +:1000B000CF0FE10ECF0F260F490FCF0F9E0FB10FBD +:1000C00080128012AF12AF12E512051336143614E7 +:1000D00010133614C013C0132714361436143014FA +:1000E000CD13CD13CD13CD13CD13CD13CD13CD1310 +:1000F000CD13CD13CD13CD13CD13CD13CD13CD1300 +:10010000DF13EC13F313FA13041435002B00E00093 +:10011000E1003A0000001E00140004001D003B0036 +:10012000E2001F001A0016001B003C00296120009D +:100130000700080006003D002A0021000900170002 +:100140001900E300A90022000E000A0005000000CB +:10015000AA003E00310000002F000000A8003F0070 +:100160000153000030000000AE0023000D001C0011 +:1001700013000000AB002400180011001000E7007D +:10018000AC00250015000C00360050002C002600A5 +:100190000F001200370051003400270033000B001D +:1001A00038005200E6002E002D002800E5004F0028 +:1001B0000000010001000100010001000000010039 +:1001C0000100010001000100010001000100010027 +:1001D000010001000100010008000700010001000A +:1001E00001000100150009000100010001000100EB +:1001F00017000100010000000100010001000000E3 +:1002000001000000010001000100000001000000E9 +:10021000010001001C000B001100000001000100A2 +:1002200018000D0001000100010001000C000E008B +:10023000010001000100010012000F000100010097 +:100240000100010013003300010001000100010062 +:1002500001000100010001000000160345007200CA +:1002600067006F0044006F007800200045005A00CE +:10027000000016034500720067006F0044006F0025 +:100280007800200045005A00000004030904090218 +:100290006D00040100A0FA0904000001030101003F +:1002A0000921110100012240000705810308000A0D +:1002B00009040100010301020009211101000122CA +:1002C0004D000705820308000A090402000103002B +:1002D00000000921110100012236000705830308EF +:1002E000000A0904030001030000000921110100B4 +:1002F00001223900070584031000011201100100DA +:10030000000008EDFE0713010001020001050109CC +:1003100006A101050719E029E715002501950875D3 +:1003200001810205081901290595057501910295BC +:10033000017503910105071900297715002501951D +:100340007875018102C005010980A10185021601AD +:100350000026B7001A01002AB70075109501810028 +:10036000C0050C0901A1018503160100269C021A93 +:1003700001002A9C02751095018100C00501090247 +:10038000A1010901A100050919012905150025018F +:1003900095057501810295017503810105010930FB +:1003A00009311581257F9502750881060938158167 +:1003B000257F950175088106050C0A3802158125EF +:1003C0007F950175088106C0C005010906A10105D8 +:1003D0000719E029E71500250195087501810295A7 +:1003E0000175088101050819012905950575019117 +:1003F000029501750391010507190029FF150026D3 +:10040000FF00950675088100C00000000000000094 +:1004100000000000010204060A0F17202C3A4A5D72 +:1004200071879DB3C7DAE9F5FCFFFCF5E9DAC7B3DC +:100430009D87715D4A3A2C20170F0A0604020100BD +:100440000000000000000000000011241FBECFEFDC +:10045000DAE0DEBFCDBF04B603FE24C08091FD010B +:100460009091FE01A091FF01B09100028730904B66 +:10047000A740B04BB9F41092FD011092FE0110920A +:10048000FF011092000214BE84B7877F84BF88E109 +:100490000FB6F89480936000109260000FBEE0E009 +:1004A000FFE3099511E0A0E0B1E0E6EAF5E402C05F +:1004B00005900D92A433B107D9F711E0A4E3B1E0A0 +:1004C00001C01D92AD3FB107E1F70E94C80A0C942C +:1004D000D1220C9400001092B9008AE08093B800F9 +:1004E000089594EA9093BC009091BC0097FFFCCFD4 +:1004F0009091B900987F983021F0903111F081E00F +:1005000008958093BB0084E88093BC008091BC0078 +:1005100087FFFCCF8091B900887F883111F080344B +:1005200071F780E0089584E98093BC008091BC005D +:1005300084FDFCCF08958093BB0084E88093BC00C9 +:100540008091BC0087FFFCCF9091B900987F81E03B +:10055000983209F480E0089584E88093BC0080918B +:10056000BC0087FFFCCF8091BB00089580B38C70E6 +:1005700080BB81B3836F81BB08958091010181119C +:1005800015C080E40E9471028093010181110CC0AA +:1005900082E10E949B0280930101811105C08FEFCF +:1005A0000E949B02809301010E94930284B1807F8C +:1005B00084B985B1807F85B98AB1837F8AB98BB1CF +:1005C000837F8BB93E98469808950E948704809354 +:1005D00001010E94BD020E94B602A5E3B1E0E3E47E +:1005E000F1E08EE08E0F11921D928E13FCCF0C94D1 +:1005F00071040E948704809301010E94BD020E9441 +:10060000B602A5E3B1E0E3E4F1E08EE08E0F1192D3 +:100610001D928E13FCCF0895BF92CF92DF92EF927E +:10062000FF920F931F93CF93DF9380910101882353 +:1006300079F0809134018F5F80933401811108C07B +:100640000E94870480930101811102C00E94190455 +:1006500005E311E0C0E0D0E0DD24D39482E0C82EB1 +:10066000EE24E394F12CC730D10500F5809101010F +:10067000811164C080E40E947102809301018111A4 +:1006800012C082E10E949B028093010181110BC084 +:10069000C7010C2E01C0880F0A94EAF780950E94CA +:1006A0009B02809301010E94930248C0CA30A1F0CE +:1006B00028F4C83059F0C93061F005C0CC3089F059 +:1006C00070F0CD3089F0209A289810C0219A29988E +:1006D0000DC0229A2A980AC0239A2B9807C0529AD2 +:1006E00001C0539A5B9802C03E9A469890EA9A9548 +:1006F000F1F79FB1799902C082E001C080E091706A +:100700009D25982B7C9902C084E001C080E0892B54 +:100710007D9902C038E001C030E0832B7E9902C091 +:1007200020E101C020E0822B9FB19095991F99276D +:10073000991F9295990F907E892B0FC0809101018E +:10074000811149C080E40E947102809301018823D5 +:1007500079F1B12C0E9493028B2DF80190819817AA +:1007600019F08083C09200010E94BD0221960F5FA4 +:100770001F4FCE30D10509F076CF8091000188233C +:1007800061F1815080930001882339F08FE99FE067 +:100790000197F1F700C0000020C0A3E4B1E0E5E359 +:1007A000F1E0CF01825F91919D938E13FCCF15C034 +:1007B00083E10E949B02809301018111CACF81E4F1 +:1007C0000E947102809301018111C3CF0E94AC028B +:1007D000B82EB094BFCF80E0C0CF0E94170481E054 +:1007E000DF91CF911F910F91FF90EF90DF90CF900D +:1007F000BF900895E82FF0E0ED5BFE4F80810895F3 +:1008000008950F931F93CF93DF93C3E4D1E010E0DB +:100810000C2F025F899190E00E94151B180F0C139A +:10082000F9CF812FDF91CF911F910F9108950C94F3 +:10083000DA0456985E9825982D9826982E98279831 +:100840002F988FEF90E09093890080938800909389 +:100850008B0080938A0090938D0080938C00259A62 +:100860002D9A2FEF80E792E0215080409040E1F7F1 +:1008700000C00000269A2E9A2FEF80E792E02150C8 +:1008800080409040E1F700C00000279A2F9A2FEF98 +:1008900080E792E0215080409040E1F700C00000E6 +:1008A00025982D982FEF80E792E0215080409040CE +:1008B000E1F700C0000026982E982FEF80E792E025 +:1008C000215080409040E1F700C0000027982F9809 +:1008D00056985E9825982D9826982E9827982F98A8 +:1008E000089589EA8093800089E0809381002498AC +:1008F0002C983F988AB18F748AB96E98479A8BB1B9 +:10090000806B8BB9769A0E9419040C94D90480E20A +:10091000809301018091510181110EC00E946B02F0 +:1009200081E0809351012FEF83ED90E321508040CF +:100930009040E1F700C0000080E40E9471028093C3 +:10094000010181112EC00E949B028093010181113F +:1009500028C00E949B0280930101811122C08FE375 +:100960000E949B028093010181111BC00E9493028F +:1009700080E40E94710280930101811112C08CE019 +:100980000E949B028093010181110BC00E949B0277 +:1009900080930101811105C08FE30E949B02809327 +:1009A00001010E94930280910101089580E090E08E +:1009B000089508956091BE017091BF018091C001BA +:1009C0009091C1010E94211B56985E9825982D9800 +:1009D00026982E9827982F98813011F4259A2D9AD1 +:1009E000089581E0089581E008950C94F30408953A +:1009F000282F882339F090E02A3010F44D9608957E +:100A00000697089587E290E00895AF92BF92DF9233 +:100A1000EF92FF920F931F93CF93DF938C01FC0112 +:100A2000C081D181CE010E949A19BE010E94750831 +:100A3000EC01B8010E94F504882309F4C9C1F8014A +:100A40008281882309F4BEC080915E0181111FC09C +:100A5000C431F0E7DF0709F0B5C10E94F70481E077 +:100A600080935E010E94B81B90935D0180935C01AE +:100A7000109255011092570110925601109259018F +:100A80001092580110925B0110925A01A1C18091FD +:100A90005C0190915D010E94C41B883C910570F43B +:100AA00080915501E82FF0E0EE0FFF1FEA5AFE4F4C +:100AB000D183C0838F5F809355018AC1C13020E804 +:100AC000D20708F451C0F8018281882309F47EC05E +:100AD0005E01E894B7F880915401813079F050F0CC +:100AE0008230C1F482EE0E94241187E50E94241115 +:100AF00087E50EC082EE0E9424110CC080EE0E9499 +:100B0000241181EE0E94241188E10E94241188E1C1 +:100B10000E94EC118CE0E82EF12CC5010E2C02C0D5 +:100B2000969587950A94E2F78F700E94F804D82E64 +:100B30000E9424118D2D0E94EC11F4E0EF1AF108AF +:100B40002CEFE2162FEFF20641F78091540181302D +:100B500029F010F0823041F482EE04C080EE0E9451 +:100B6000EC1181EE0E94EC11C43180E7D80768F4E3 +:100B7000C23090E7D90708F046C0C115E0E7DE07AC +:100B800071F0C130D047A1F10CC1C33320E7D207C7 +:100B900009F4D8C0C433D04709F4EBC002C1F8014E +:100BA0008281882309F402C10E94A114FFEF24E38B +:100BB0008CE0F15020408040E1F700C000000E942E +:100BC000131C06C1C13080E8D80770F2C43120E799 +:100BD000D20708F0B3C0C23080E7D807A0F4C1152F +:100BE00090E7D90709F4E2C0C130D04709F0D9C075 +:100BF000F8018281882309F4D9C08091DB018160EA +:100C00008093DB01E5C0F8018281882309F4CEC01E +:100C10000E946D1C811102C00E94531C0E94801C06 +:100C200090E09093EF018093EE01C230F0E7DF0790 +:100C300021F48091EE0181607AC0C33020E7D207B1 +:100C400021F48091EE01826072C0C43080E7D80741 +:100C500021F48091EE0184606AC0C53090E7D90725 +:100C600019F48091EE0127C0C630E0E7DE0721F4D9 +:100C70008091EE0180615BC0C730F0E7DF0721F4AF +:100C80008091EE01806253C0C83020E7D20721F482 +:100C90008091EE0180644BC0C93080E7D80721F411 +:100CA0008091EE01806843C0CA3090E7D90729F4EB +:100CB0008091EE01846088603AC0CB30E0E7DE07C7 +:100CC00021F48091EE018E7F32C0CC30F0E7DF0757 +:100CD00021F48091EE018D7F2AC0CD3020E7D2072C +:100CE00021F48091EE018B7F22C0CE3080E7D807BF +:100CF00019F48091EE011AC08091EE01CF3090E797 +:100D0000D90711F48F7E13C0C031E0E7DE0711F47C +:100D10008F7D0DC0C131F0E7DF0711F48F7B07C075 +:100D2000C231D04711F48F7702C08B7F877F8093C9 +:100D3000EE018091EE010E94841C4AC0C333F0E7AB +:100D4000DF07A1F4F8018281882321F0109252017B +:100D500082E016C080915201811106C086E20E9495 +:100D6000241186E20E94EC1182E018C0C433D047FF +:100D7000C1F4F8018281882331F01092530180E29E +:100D80000E943B1225C080915301811106C087E269 +:100D90000E94241187E20E94EC1180E20E9442121C +:100DA00017C081E08093520180935301C801DF9105 +:100DB000CF911F910F91FF90EF90DF90BF90AF9078 +:100DC0000C94F104C130F0E8DF0708F081CECCCEFE +:100DD00080E0DF91CF911F910F91FF90EF90DF9016 +:100DE000BF90AF90089526E0729FF001112444E572 +:100DF000849FE00DF11D1124E60FF11DEE0FFF1F82 +:100E0000E65FFE4F859194910E948708811560E40A +:100E10009607B0F5811570E3970708F0DEC0803EB5 +:100E20009105D8F4803C910508F06CC0883A910592 +:100E300078F4853A910508F06BC08130910509F48A +:100E400052C108F40FC18430910508F04CC10AC1A9 +:100E50008B3B910508F467C005C18F3F910509F0F0 +:100E600048F4803F910508F0ADC0883E910508F434 +:100E70003AC1F8C0811520E2920708F0A5C0089594 +:100E8000811543E5940790F4811562E5960708F013 +:100E9000C8C0811571E5970708F0BEC0811520E52F +:100EA000920708F09DC09F70906A0895811545E5EE +:100EB0009407D8F4811564E5960708F0C8C0482F58 +:100EC0004695469570E2479FA001112483709927AB +:100ED00021E030E0B90102C0660F771F8A95E2F782 +:100EE000CB01842B952B9A680895811576E5970799 +:100EF00008F4B2C09C0130562115304108F0B2C050 +:100F00009F70AEC0FC01EE0FFF1FE657F04062C0BD +:100F1000853A910509F4A9C0863A910509F0A8C05F +:100F200082E890E40895883A910509F4A4C0893ACA +:100F3000910509F4A3C08A3A910509F4A2C08B3A3D +:100F4000910509F4A1C08C3A910509F4A0C08D3A2D +:100F5000910509F49FC0803B910509F49EC08E3A2B +:100F6000910509F49DC08F3A910509F49CC0813B1D +:100F7000910509F49BC0823B910509F49AC0833B1B +:100F8000910509F499C0843B910509F498C0853B0B +:100F9000910509F497C0863B910509F496C0873BFB +:100FA000910509F495C0883B910509F494C0893BEB +:100FB000910509F493C08A3B910509F492C080E041 +:100FC00094E4089590650895FC01FF70EE0FFF1FF3 +:100FD000E65FFE4F8591949108959927906C08954E +:100FE000482F437021E030E002C0220F331F4A95A2 +:100FF000E2F73C68AC0164E0569547956A95E1F7E5 +:101000004370342B8F708695869560E2869FC00171 +:101010001124822B932B0895982F8827816F906A33 +:101020000895482F4695469570E2479FA0011124E8 +:101030008370992721E030E0B90102C0660F771F65 +:101040008A95E2F7CB01842B952B9C680895982F05 +:101050008827846F906A08958F719927982F882721 +:101060009062089580E090E0089581E890E408950A +:1010700083E890E4089582EE94E4089589EE94E480 +:1010800008958AEE94E4089585EB94E4089586EB40 +:1010900094E4089587EB94E408958CEC94E4089527 +:1010A0008DEC94E4089583E895E408958AE895E446 +:1010B000089582E995E4089584E995E4089581E22C +:1010C00096E4089583E296E4089584E296E4089510 +:1010D00085E296E4089586E296E4089587E296E430 +:1010E00008958AE296E40895089596E0799FF001C4 +:1010F000112494E5899FE00DF11D1124E60FF11DE7 +:10110000EE0FFF1FE65FFE4F8591949108958238A0 +:10111000910549F1B0F48133910509F458C048F4C0 +:101120008932910509F44EC08A32910509F454C000 +:1011300008958533910509F440C08933910599F0EC +:101140000895833E910529F138F4803E910591F090 +:10115000823E9105A1F00895863E9105F9F0873E03 +:10116000910531F108952091EE0120FD3AC021FD55 +:1011700038C008958091EE0180FD35C032C0809165 +:10118000EE0182FF32C08091EE0184FD30C083EE1B +:1011900039C08091EE0182FD28C0F5CF8091EE012B +:1011A00083FF27C08091EE0184FD21C087EE2AC015 +:1011B0008091EE0183FD1DC0F5CF8091EE0185FD8C +:1011C0001AC01BC08091EE0185FD17C014C080912C +:1011D000EE0186FD14C015C08091EE0186FD11C0A0 +:1011E0000EC080EE0FC089E30DC082EE0BC080E020 +:1011F00009C086EE07C089E205C085E303C08AE224 +:1012000001C081E390E0089508950C940409809151 +:101210006F010895CF93DF9300D01F92CDB7DEB753 +:101220009C018091F401843019F593E099833B830C +:101230002A839093E9008FEF9091E800815095FD0B +:1012400006C095ED9A95F1F700008111F5CF8091D8 +:10125000E80085FF0DC040E050E063E070E0CE01A3 +:1012600001960E94700B8091E8008E778093E800D1 +:101270000F900F900F90DF91CF910895CF93DF9350 +:1012800000D01F92CDB7DEB72091F401243021F5B4 +:1012900022E029839B838A8383E08093E9008FEF98 +:1012A0009091E800815095FD06C095ED9A95F1F773 +:1012B00000008111F5CF8091E80085FF0DC040E06E +:1012C00050E063E070E0CE0101960E94700B8091C7 +:1012D000E8008E778093E8000F900F900F90DF91D9 +:1012E000CF9108952091F4012430F1F422E020936D +:1012F000E9002FEF3091E800215035FD06C035EDB3 +:101300003A95F1F700002111F5CF2091E80025FF73 +:101310000BC040E050E065E070E00E94700B8091EF +:10132000E8008E778093E8000895CF93DF93EC0177 +:101330009091F401943009F046C080910C0188230B +:10134000D9F080910D018823B9F09093E9008FEFD7 +:101350009091E800815095FD06C095E19A95F1F7CE +:1013600000008111F5CF8091E80085FF2CC040E09E +:1013700050E060E170E017C081E08093E9008FEFFA +:101380009091E800815095FD06C095ED9A95F1F792 +:1013900000008111F5CF8091E80085FF14C040E086 +:1013A00050E068E070E0CE010E94700B8091E80090 +:1013B0008E778093E80080E1FE01AFE5B1E0019017 +:1013C0000D928A95E1F7DF91CF9108958091F30115 +:1013D000811109C00E94050D0E94620D8091E200FA +:1013E00084608093E20008951092F30108950895B7 +:1013F0000C94F9200E94A91B0E94FF200E94081053 +:101400000C94050942E061EC81E00E947F0C42E00F +:1014100061EC82E00E947F0C42E061EC83E00E947C +:101420007F0C42E161EC84E00C947F0C8091F6012A +:10143000833009F455C030F4813071F0823009F402 +:101440008EC008958A3009F47AC08B3009F460C0E8 +:10145000893009F09CC020C08091F501813A09F0E3 +:1014600096C08091E800877F8093E8008091F90121 +:101470009091FA01892B21F460E18FE591E003C09E +:1014800060E080E090E070E00E94BB0B8091E8009B +:101490008B778093E80008958091F501813209F0FF +:1014A00076C08091F9019091FA01009719F00397A5 +:1014B00009F06DC08091E800877F8093E8008091FB +:1014C000E80082FD05C08091F4018111F8CF5FC072 +:1014D0008091F10080936F018091E8008B7753C079 +:1014E0008091F501813A09F052C08091F901909103 +:1014F000FA01892B09F04BC08091E800877F809327 +:10150000E8008091E80080FFFCCF80910C0136C09C +:101510008091F5018132D9F58091F9019091FA011C +:10152000892BA9F58091E800877F8093E8000E94CD +:10153000B40C8091F70180930C010C94A11480915C +:10154000F501813221F58091E800877F8093E800E2 +:101550000E94B40C8091F8018093700108958091ED +:10156000F501813AA1F48091E800877F8093E8003B +:101570008091E80080FFFCCF809170018093F100A2 +:101580008091E8008E778093E8000C94B40C089565 +:1015900084B7877F84BF88E10FB6F894809360009A +:1015A000109260000FBE80E880936100109261008D +:1015B0000E9457100E94050D0E94620D8091E2006A +:1015C00084608093E20078940E94E80F0E94591092 +:1015D00082E091E00E9403100E94E7208091F401D4 +:1015E000853069F40E94711B8091F2018823B1F368 +:1015F0000E949B1B882391F30E945A0BEFCF0E94FD +:101600005F10ECCF292F332723303105C9F064F464 +:101610002130310581F02230310509F043C08DE6DB +:1016200090E02EE832E042C021323105F1F0223262 +:10163000310541F137C082E190E02BEF32E036C056 +:1016400099278130910541F08230910541F0892B35 +:1016500049F5EAE8F2E005C0E2E7F2E002C0EAE5B7 +:10166000F2E0849190E09F0121C06430D8F4E62F2D +:10167000F0E0EE0FFF1FEE5DFE4F2081318189E02B +:1016800090E014C0643070F470E0FB01EE0FFF1FB7 +:10169000E65EFE4F20813181FB01EA5EFE4F8081D4 +:1016A00090E004C080E090E020E030E0FA01318377 +:1016B0002083089580E189BD82E189BD09B400FEDF +:1016C000FDCF8091D8008F7D8093D8008091E0007D +:1016D00082608093E0008091E00081FDFCCF08955E +:1016E000CF92DF92EF92FF920F931F93CF93DF93EE +:1016F000EC018B016A010E94D30C811133C0C1142B +:10170000D10439F0F60180819181081B190BC80FB3 +:10171000D91FE12CF12C0115110519F18091E80078 +:1017200085FD16C08091E8008E778093E800C11493 +:10173000D10449F0F60180819181E80EF91EF18211 +:10174000E08285E00FC00E94D30C882321F30AC0F9 +:1017500089918093F10001501109FFEFEF1AFF0A00 +:10176000DACF80E0DF91CF911F910F91FF90EF9042 +:10177000DF90CF9008952091FB013091FC01261756 +:10178000370748F06115710539F42091E8002E778C +:101790002093E80001C0B90140E061157105A9F18D +:1017A0002091F401222309F443C0253009F442C0FA +:1017B0002091E80023FD40C02091E80022FD32C0C6 +:1017C0002091E80020FFE9CF4091F3002091F20042 +:1017D00030E0342BFC01CF016115710559F0283040 +:1017E000310540F481918093F100615071092F5FC0 +:1017F0003F4FF1CF41E02830310509F040E0209122 +:10180000E8002E772093E800C8CF4111C9CF0AC065 +:101810008091F401882361F0853061F08091E800C7 +:1018200083FD0AC08091E80082FFF2CF80E0089536 +:1018300082E0089583E0089581E008952091FB01FE +:101840003091FC012617370748F06115710539F40E +:101850002091E8002E772093E80001C0B901FC0137 +:1018600020E06115710591F18091F401882309F45C +:1018700040C0853009F43FC08091E80083FD3DC041 +:101880008091E80082FD2FC08091E80080FFE9CFC1 +:101890002091F3008091F20090E0922B6115710588 +:1018A00059F08830910540F424912093F10031964D +:1018B000615071090196F2CF21E0089709F020E00C +:1018C0008091E8008E778093E800CBCF2111CCCFB8 +:1018D0000AC08091F401882361F0853061F0809125 +:1018E000E80083FD0AC08091E80082FFF2CF80E02B +:1018F000089582E0089583E0089581E00895982F87 +:10190000973058F59093E900981739F07091EC00F2 +:101910002091ED005091F00003C0242F762F50E06D +:1019200021FF19C03091EB003E7F3093EB003091E6 +:10193000ED003D7F3093ED003091EB00316030934E +:10194000EB007093EC002093ED005093F000209199 +:10195000EE0027FF07C09F5FD3CF8F708093E90011 +:1019600081E0089580E008958091F50187FF11C01E +:101970008091E80082FD05C08091F4018111F8CFCB +:1019800011C08091E8008B770BC08091F40188230F +:1019900049F08091E80080FFF8CF8091E8008E77D1 +:1019A0008093E80008952091E4003091E50095E6E9 +:1019B0004091EC00842F817040FF22C08091E800AC +:1019C00080FD1CC08091F401882391F0853091F056 +:1019D0008091EB0085FD10C04091E4005091E5003E +:1019E0004217530729F39A01915011F784E00895A3 +:1019F00082E0089583E0089581E0089580E00895ED +:101A00004091E80042FFDECF08950E94730D0E94CE +:101A10007B0DE0EEF0E0808181608083E8EDF0E016 +:101A200080818F77808319BCA7EDB0E08C918E7F89 +:101A30008C9380818F7E80831092F30108950F93A1 +:101A40001F93CF93DF930E94730D0E947B0DC8ED0F +:101A5000D0E088818F7788838881806888838881B7 +:101A60008F7D888319BC1092F4011092F0011092BE +:101A7000F2011092F10100EE10E0F80180818B7FFD +:101A8000808388818160888342E060E080E00E94FA +:101A90007F0CE1EEF0E080818E7F8083E2EEF0E06B +:101AA000808181608083808188608083F80180816B +:101AB0008E7F8083888180618883DF91CF911F91A1 +:101AC0000F910895E8EDF0E080818F7E8083E7ED4F +:101AD000F0E080818160808384E082BF81E0809338 +:101AE000F3010C941F0DE8EDF0E080818E7F808380 +:101AF0001092E20008951092DA001092E100089529 +:101B00001F920F920FB60F9211242F933F934F9372 +:101B10005F936F937F938F939F93AF93BF93EF9355 +:101B2000FF938091E10082FF0BC08091E20082FF71 +:101B300007C08091E1008B7F8093E1000E94E70F56 +:101B40008091DA0080FF1FC08091D80080FF1BC009 +:101B50008091DA008E7F8093DA008091D90080FF37 +:101B60000DC080E189BD82E189BD09B400FEFDCFD1 +:101B700081E08093F4010E94E60905C019BC10922F +:101B8000F4010E94F4098091E10080FF19C0809166 +:101B9000E20080FF15C08091E2008E7F8093E2001A +:101BA0008091E20080618093E2008091D8008062A1 +:101BB0008093D80019BC85E08093F4010E94F80955 +:101BC0008091E10084FF30C08091E20084FF2CC04E +:101BD00080E189BD82E189BD09B400FEFDCF80911D +:101BE000D8008F7D8093D8008091E1008F7E809314 +:101BF000E1008091E2008F7E8093E2008091E2001C +:101C000081608093E2008091F001882311F084E0EC +:101C100007C08091E30087FD02C081E001C083E03E +:101C20008093F4010E94FA098091E10083FF29C0AA +:101C30008091E20083FF25C08091E100877F80933F +:101C4000E10082E08093F4011092F0018091E100C4 +:101C50008E7F8093E1008091E2008E7F8093E2008E +:101C60008091E20080618093E20042E060E080E0E9 +:101C70000E947F0C8091F00088608093F0000E94A9 +:101C8000F709FF91EF91BF91AF919F918F917F9154 +:101C90006F915F914F913F912F910F900FBE0F90D9 +:101CA0001F9018951F920F920FB60F9211242F9329 +:101CB0003F934F935F936F937F938F939F93AF93D4 +:101CC000BF93CF93DF93EF93FF93C091E900CF7061 +:101CD0008091EC00D82FD17080FDD0E81092E900FF +:101CE0008091F000877F8093F00078940E94960E98 +:101CF0001092E9008091F00088608093F000CD2B75 +:101D0000CF70C093E900FF91EF91DF91CF91BF9128 +:101D1000AF919F918F917F916F915F914F913F9183 +:101D20002F910F900FBE0F901F9018951F93CF9378 +:101D3000DF93CDB7DEB7AA970FB6F894DEBF0FBE1C +:101D4000CDBFE5EFF1E088E08E0F9091F100919327 +:101D50008E13FBCF0E94160A8091E80083FF1FC1FB +:101D60008091F5019091F601492F50E04A305105DC +:101D700008F015C1FA01EA5AFF4F0C94812280380D +:101D800081F0823809F00BC18091F9018F70809346 +:101D9000E9008091EB0085FB882780F91092E9002B +:101DA00006C08091F1019091F201911182609091B1 +:101DB000E800977F9093E8008093F1001092F10083 +:101DC000C8C0282F2D7F09F0EAC0882319F082307F +:101DD00061F0E5C08091F701813009F0E0C09330F7 +:101DE00009F080E08093F2012BC08091F70181110E +:101DF00027C08091F9018F7009F4D1C08093E90068 +:101E00002091EB0020FF1CC0933021F48091EB0067 +:101E1000806214C09091EB0090619093EB0021E000 +:101E200030E0A90102C0440F551F8A95E2F74093A4 +:101E3000EA001092EA008091EB0088608093EB004A +:101E40001092E9008091E800877F86C08111A7C0C9 +:101E50001091F7011F778091E3008078812B8093A8 +:101E6000E3008091E800877F8093E8000E94B40C33 +:101E70008091E80080FFFCCF8091E3008068809330 +:101E8000E300111102C082E001C083E08093F401FD +:101E900086C08058823008F082C08091F70190910E +:101EA000F8018C3D53E0950779F583E08A838AE257 +:101EB00089834FB7F894DE01139620E03EE051E2AB +:101EC000E32FF0E050935700E49120FF03C0E29528 +:101ED000EF703F5FEF708E2F90E0EA3010F0C79602 +:101EE00001C0C0968D939D932F5F243149F74FBF5A +:101EF0008091E800877F8093E8006AE270E0CE017D +:101F000001960E94BB0B14C0AE014F5F5F4F609102 +:101F1000F9010E94020BBC01009709F440C09091A6 +:101F2000E800977F9093E80089819A810E941E0CB7 +:101F30008091E8008B778093E80031C0803879F594 +:101F40008091E800877F8093E8008091F001809382 +:101F5000F1008091E8008E778093E8000E94B40C35 +:101F60001EC081111CC09091F7019230C0F4809185 +:101F7000E800877F8093E8009093F0010E94B40C02 +:101F80008091F001811106C08091E30087FD02C0BD +:101F900081E001C084E08093F4010E94020A8091F4 +:101FA000E80083FF0AC08091E800877F8093E80003 +:101FB0008091EB0080628093EB00AA960FB6F894B4 +:101FC000DEBF0FBECDBFDF91CF911F910895089561 +:101FD000CF938091F4018823A1F0C091E900CF70E4 +:101FE0009091EC00892F817090FD80E8C82B1092B1 +:101FF000E9008091E80083FD0E94960ECF70C093A7 +:10200000E900CF910895909376018093750108952A +:10201000E0917501F0917601309721F00190F08107 +:10202000E02D099480E00895E0917501F09176012A +:10203000309721F00280F381E02D09940895E0911A +:102040007501F0917601309721F00480F581E02D43 +:1020500009940895209173013091740182179307B8 +:1020600071F09093740180937301E0917501F09188 +:102070007601309721F00680F781E02D09940895CC +:1020800020917101309172018217930771F0909342 +:10209000720180937101E0917501F09176013097A2 +:1020A00021F00084F185E02D0994089508950C94A1 +:1020B00056100E94AF1B0E94E5020C94351C9F92A3 +:1020C000AF92BF92CF92DF92EF92FF920F931F9346 +:1020D000CF93DF9300D000D000D0CDB7DEB70E9401 +:1020E0000C030DE010E0AA24A394B12C902E802FB5 +:1020F0000E94FA03980128583E4F6901F901F080C7 +:10210000F826A1F40150110988F78FEF89838A839B +:102110001B820E94B81B8160782F9D838C8349812C +:102120005A816B818D810E94F6102FC09091DB0146 +:1021300091FF04C08E830E9400048E8125E030E070 +:10214000A501022E01C0440F0A94EAF7E42E4F21A4 +:10215000C1F029839A828E2191E009F490E09B835B +:102160000E94B81B8160782F9D838C8349815A819E +:102170006B818D810E94F610F6018081E826E08255 +:1021800004C021503109E0F6BDCF0E94031E10911A +:1021900077010E9408101817B9F00E940810809368 +:1021A000770126960FB6F894DEBF0FBECDBFDF9144 +:1021B000CF911F910F91FF90EF90DF90CF90BF9044 +:1021C000AF909F900C94050926960FB6F894DEBF49 +:1021D0000FBECDBFDF91CF911F910F91FF90EF9078 +:1021E000DF90CF90BF90AF909F900895CF93DF93F3 +:1021F000CDB7DEB72B970FB6F894DEBF0FBECDBFBD +:102200004F83588769877A878B87DE01119686E02E +:10221000FD0111928A95E9F785E0FE01379601905C +:102220000D928A95E1F749815A816B817C818D817C +:102230009E810E943F172B960FB6F894DEBF0FBE0B +:10224000CDBFDF91CF910895CF93882309F4C2C009 +:10225000C82F823859F40E94081081FDBBC089E361 +:102260000E94191A0E94E61A89E30CC0833879F497 +:102270000E94081080FDAEC083E50E94191A0E94DA +:10228000E61A83E50E945B1ACF910C94E61A843813 +:1022900059F40E94081082FD9DC087E40E94191A1B +:1022A0000E94E61A87E4EECF8CEF8C0F813A48F457 +:1022B0008C2F0E944D2081118DC08C2F0E94191AE5 +:1022C000E3CF80E28C0F883048F4C77081E001C012 +:1022D000880FCA95EAF70E949F1AD6CF8BE58C0F1C +:1022E000833078F4C53A29F0C63A31F083E890E0BB +:1022F00005C081E890E002C082E890E0CF910C94A4 +:102300002A1088E58C0F833108F064C0C83A39F18F +:10231000C93A41F1CA3A49F1CB3A51F1CC3A59F1B3 +:10232000CD3A61F1C03B69F1CE3A71F1CF3A79F122 +:10233000C13B81F1C23B89F1C33B91F1C43B99F1AF +:10234000C53BA1F1C63BA9F1C73BB1F1C83BB9F10F +:10235000C93BC1F1CA3BC9F180E090E038C082EED0 +:1023600090E035C089EE90E032C08AEE90E02FC058 +:1023700085EB90E02CC086EB90E029C087EB90E0E5 +:1023800026C08CEC90E023C08DEC90E020C083E868 +:1023900091E01DC08AE891E01AC082E991E017C07F +:1023A00084E991E014C081E292E011C083E292E0FE +:1023B0000EC084E292E00BC085E292E008C086E2A3 +:1023C00092E005C087E292E002C08AE292E0CF91FB +:1023D0000C944010CF910895882309F44BC08238A3 +:1023E00059F40E94081081FF45C089E30E94191A20 +:1023F0000E94E61A89E30CC0833871F40E94081029 +:1024000080FF38C083E50E94191A0E94E61A83E50E +:102410000E945B1A0C94E61A843859F40E94081042 +:1024200082FF28C087E40E94191A0E94E61A87E4F6 +:10243000EFCF9CEF980F913A58F390E2980F9830B5 +:1024400050F4877091E001C0990F8A95EAF7892FBF +:102450000E94A51ADFCF9BE5980F933020F480E00F +:1024600090E00C942A10885A833120F480E090E0A8 +:102470000C9440100895882321F00E949F1A0C9418 +:10248000E61A0895882321F00E94A51A0C94E61AF2 +:1024900008957F928F929F92AF92BF92CF92DF92D8 +:1024A000EF92FF920F931F93CF93DF931F92CDB7BD +:1024B000DEB77C01C62E772EFC01058102950F70D8 +:1024C000128111110E94BC1A0E94121A882379F0FD +:1024D000112369F080E28C0D883048F082E00E9480 +:1024E000FB190E94121A91E0D82ED92601C0D12CD6 +:1024F000E72DE295EF70F0E0E05AFF4F0C94812257 +:10250000872D807F072D0F70882311F00295007FA3 +:10251000112389F0002309F490C180E28C0D8830EA +:1025200020F4802F0E949F1A03C0802F0E94AF1AB0 +:102530000E94E61A82C18C2D0E94EC11002309F43E +:1025400095C180E28C0D883020F4802F0E94A51A5E +:1025500003C0802F0E94B51A0E94E61A87C1972DEA +:10256000907F872D8F70903211F08295807FCC20E4 +:1025700021F0F1E0CF16B1F01EC0112349F0002385 +:1025800009F414C1013009F011C10E94CF1A6EC1C3 +:10259000002319F0013009F469C189830E94D21A1D +:1025A00089810AC1112321F0023008F05FC1FEC009 +:1025B00001115CC101C1112321F0002309F4F6C00F +:1025C0003CC1002309F4F8C03EC1872D869586954D +:1025D000837090E0009719F0019761F047C11123D3 +:1025E00021F08C2D972D937002C080E090E00E9426 +:1025F0002A103CC1112321F08C2D972D937002C01D +:1026000080E090E00E94401031C18C2D112319F020 +:102610000E940B1D02C00E94731D0E94F81D26C15E +:10262000872D837009F052C0111120C18C2D829525 +:1026300086958770880F880F9C2D9F70892E912C0E +:10264000A12CB12C082E04C0880C991CAA1CBB1C00 +:102650000A94D2F7C4FE14C00FE010E020E030E08E +:10266000B901A80104C0440F551F661F771F8A9542 +:10267000D2F7CB01BA01609570958095909503C013 +:1026800060E070E0CB01272D26952695237030E081 +:102690002230310569F02330310589F06829792924 +:1026A0008A299B292130310571F00E948718DEC0EC +:1026B000682979298A299B290E94A318D7C00E94DA +:1026C0008718C501B4010E946B18D0C0112319F0FE +:1026D000872D817001C08695882309F4C7C08C2D91 +:1026E000829586958770880F880F9C2D9F70892E04 +:1026F000912CA12CB12C082E04C0880C991CAA1C6A +:10270000BB1C0A94D2F7C4FE14C00FE010E020E016 +:1027100030E0B901A80104C0440F551F661F771FA0 +:102720008A95D2F7CB01BA01609570958095909506 +:1027300003C060E070E0CB01272D2695269523701D +:10274000422F50E04230510569F04330510589F085 +:10275000682979298A299B294130510571F00E9405 +:10276000611984C0682979298A299B290E947D19C9 +:102770007DC00E946119C501B4010E94451976C04F +:102780008C2D90E0FC01E05EF109E531F10508F0E7 +:1027900050C0E059FF4F0C9481220C2D0F70872DF3 +:1027A0008F71112331F00E94DE18802F0E943B129E +:1027B0005DC00E94FF18802F0E94421257C0112353 +:1027C00039F0011153C0872D8F710E9424194EC01A +:1027D000023008F04BC0F7CF112339F0872D8F71ED +:1027E0000E94DE1843C01123C9F3872D8F710E9408 +:1027F000FF183CC0112329F0872D8F710E94C91842 +:1028000035C00E94BF1832C0112351F0172D1F711F +:10281000812F0E94DE1863E0812F0E94F21926C0EA +:1028200081E00E94FB19023008F182E00E94FB194E +:102830001DC0112331F0002389F28C2D0E94241138 +:1028400015C0002391F28C2D0E94EC110FC0472D72 +:102850004F706C2DC7010E94D6040E94E31706C07A +:10286000472D4F706C2DC7010E947408DD20F9F0D0 +:102870000E94EE1980FD1BC0F70112820E94E81928 +:102880000E94DE18C7010E9466140E94E8190F908A +:10289000DF91CF911F910F91FF90EF90DF90CF903C +:1028A000BF90AF909F908F907F900C94FF180F90E7 +:1028B000DF91CF911F910F91FF90EF90DF90CF901C +:1028C000BF90AF909F908F907F9008950F931F932C +:1028D000CF93DF93EC01888199812B813C81232B5D +:1028E000B9F09F3F11F48F3F99F0CE010E9405058A +:1028F000882371F0688179818A810E94E4198C01B2 +:102900000E9499190E946018B801CE010E944912D4 +:10291000DF91CF911F910F9108950E94BC1A0E94E0 +:10292000CC1A0E94911A0E94E61A0E94A91E0E94C7 +:10293000F81D80E090E00E942A1080E090E00C9466 +:1029400040100E94AC1A0C948D140E94D919292FA2 +:1029500022952F7030E02C3031054CF42A303105AF +:102960006CF42250310922303105A8F407C02C3014 +:10297000310569F02F30310551F00DC0803F69F00D +:1029800018F4803E40F409C0843F29F406C093FB4C +:10299000882780F9089580E0089581E00895CF9315 +:1029A000DF9300D000D01F92CDB7DEB70F900F900D +:1029B0000F900F900F90DF91CF910895CF93DF93F9 +:1029C00000D000D000D0CDB7DEB726960FB6F89471 +:1029D000DEBF0FBECDBFDF91CF9108951F93CF9380 +:1029E000DF93C091860116E080918701C81799F0A6 +:1029F000D0E01C9FF0011D9FF00D1124E857FE4F01 +:102A00004081518162817381848195810E94DE14AD +:102A10002196C770E9CFDF91CF911F910895409122 +:102A2000B8015091B9016091BA017091BB018091D8 +:102A3000BC019091BD010C94DE148091BD01829582 +:102A40008F7009F054C08091BA01882309F44FC0F7 +:102A500080918601A09187016091B8017091B901C0 +:102A60004091BB015091BC01B6E08A1709F43FC008 +:102A700090E041155105C1F17F3F11F46F3FA1F185 +:102A8000B89FF001B99FF00D1124E857FE4F218146 +:102A900072132AC02081621327C02281211124C011 +:102AA000238134812417350710F421503109241B68 +:102AB000350B283C3105C0F42091BD012F702061F9 +:102AC0002093BD0126E0289FF001299FF00D1124DD +:102AD000E357FE4F80818F708061808388EB91E0A7 +:102AE0000E9466140C94EE1401968770BECF089570 +:102AF000CF92DF92EF92FF920F931F93CF93DF93CA +:102B0000CDB7DEB762970FB6F894DEBF0FBECDBF6C +:102B10008C0185E0F801DE011D9601900D928A95E9 +:102B2000E1F7D8014C9111965C91119712966C9136 +:102B300012971396CD90DC9014973091B801709154 +:102B4000B9018091BB019091BC01009709F46BC160 +:102B50007F3F19F43F3F09F466C1E090BA01EE20CF +:102B600009F4C0C02091BD01C816D90628F0F601AD +:102B7000E81BF90BCF0104C0809590958C0D9D1D2D +:102B8000FF24F394883C910578F0F12C207F09F024 +:102B9000C6C07C2DD98AC88A89890E94CF1488EB47 +:102BA00091E00E946614B1C0822F807F09F046C078 +:102BB000751314C0341312C0611110C02F7020613E +:102BC0002093BD010E940F1588EB91E00E946614CE +:102BD0008091BD01D80115968C932EC0CD2819F196 +:102BE0005F3F11F44F3FF9F0F62E61111CC0809148 +:102BF00086012091870136E0821709F45AC090E0DF +:102C0000389FF001399FF00D1124E857FE4F718174 +:102C1000571306C07081471303C07281711103C03E +:102C200001968770E9CFF62E662309F418C18091CA +:102C3000BD0181608093BD01F12C11C1751308C0E5 +:102C4000341306C0611104C08091BD01D801C3C016 +:102C50004D875E878D859E856A8B0E94A5146A8943 +:102C60008823E1F16623D1F12091BD01822F829565 +:102C70008F7090E0029774F08091B8019091B90143 +:102C800098878F831986DB86CA862C87CE010796A4 +:102C90000E94661486E0F801A8EBB1E001900D9265 +:102CA0008A95E1F70E941D150E940F15FF24F394E9 +:102CB000D6C04D875E878D859E850E94D919292FA4 +:102CC00022952F7030E0223031050CF0BCC09F708F +:102CD00009F0B6C0805E883008F4C1C0C8010E9407 +:102CE0006614E4CFC816D90608F453C0F601E81BF1 +:102CF000F90BCF01883C910508F450C0F12C7C2DD4 +:102D0000D98AC88A89890E94CF14E8EBF1E086E06D +:102D1000DF011D928A95E9F70E940F15A0C0751377 +:102D200014C0341312C0611110C08091BD01F801AC +:102D30008583C8010E94661486E0E8EBF1E0DF01BC +:102D40001D928A95E9F7FE2C8AC04D875E878D8596 +:102D50009E856A8B0E94A5146A89882309F4BECFD8 +:102D6000662309F4BBCF2091BD01822F82958F701D +:102D700090E002970CF48ECF8091B8019091B90148 +:102D80009A8389831B82DD82CC822E83CE010196B9 +:102D90007FCF809590958C0D9D1DACCFF62E662330 +:102DA00009F49CCF75132EC034132CC02091BD01A3 +:102DB00020FD1FC0822F82958F70D9F0D801159603 +:102DC0002C9315978F3049F08F5F982F9295907FB5 +:102DD000822F8F70892B15968C93C8010E946614E0 +:102DE00086E0F801A8EBB1E001900D928A95E1F739 +:102DF00093CF86E0F801A8EBB1E001900D928A959F +:102E0000E1F72DC04D875E878D859E850E94A514B4 +:102E1000811140CF8091BD0181608093BD01C801C7 +:102E20000E9466141CC0662309F458CF4D875E8744 +:102E30008D859E850E94A514882309F44FCF2ACF43 +:102E4000811148CF0CC0243031050CF047CF9F7062 +:102E500009F440CFF8019581907F09F03BCF8F2D89 +:102E600062960FB6F894DEBF0FBECDBFDF91CF9153 +:102E70001F910F91FF90EF90DF90CF9008951F93D7 +:102E8000CF93DF93CDB7DEB72C970FB6F894DEBFA4 +:102E90000FBECDBF4F83588769877A878B879C8702 +:102EA000CE0107960E947815882369F08F81988556 +:102EB0002A853B85232BF1F19F3F09F063C08F3FAB +:102EC00009F060C037C086E0FE013796DE0111963A +:102ED00001900D928A95E1F76F817885EA85FB85EF +:102EE000309741F17F3F11F46F3F21F1209187012D +:102EF00030E0C9010196877099274091860150E022 +:102F00008417950709F447C069837A83FD83EC83AE +:102F100096E0929FD001939FB00D1124A857BE4F09 +:102F2000FE01319601900D929A95E1F78093870109 +:102F30000E94EE1416E08091860190918701891716 +:102F4000C1F1189FC001112488579E4F0E94781527 +:102F5000882379F1E09186011E9FF0011124E85742 +:102F6000FE4F4081518162817381848195810E94ED +:102F7000DE148091860190E00196877099278093F6 +:102F80008601D9CF4F81588569857A858B859C8547 +:102F90000E94DE14CFCF0E94A114109287011092DC +:102FA0008601E8EBF1E086E0DF011D928A95E9F702 +:102FB000C1CF2C960FB6F894DEBF0FBECDBFDF9108 +:102FC000CF911F910895EF92FF920F931F93CF938C +:102FD000DF938C01009709F46CC0F12CEE24E3948C +:102FE000E8012196F8018491843740F4843008F098 +:102FF00051C0813081F0823019F15BC0853709F40E +:1030000044C0A8F19CE7980F903708F052C08F7722 +:103010000E94EC1141C00E5F1F4FFE01C49180E27F +:103020008C0F883048F4C7708E2D01C0880FCA9568 +:10303000EAF70E94BF1A14C08C2F0E9424112DC0E1 +:103040000E5F1F4FFE01C49180E28C0F883058F450 +:10305000C7708E2D01C0880FCA95EAF70E94C51A65 +:103060000E94E61A1AC08C2F0E94EC1116C00E5F47 +:103070001F4FFE01C491CC2381F08FE99FE001979F +:10308000F1F700C00000C150F6CF0E5F1F4FFE01E8 +:10309000F49003C00E9424118E018F2D882309F41F +:1030A0009FCFEFE9FFE03197F1F700C000008150BA +:1030B000F5CFDF91CF911F910F91FF90EF90089581 +:1030C00008956093C2017093C3018093C4019093EB +:1030D000C5010C948D140F931F930091C2011091A0 +:1030E000C3012091C4013091C501DC01CB01802BCB +:1030F000912BA22BB32B8093C2019093C301A09379 +:10310000C401B093C5011F910F910C948D140F93BE +:103110001F930091C2011091C3012091C40130910D +:10312000C501DC01CB0180239123A223B32380932B +:10313000C2019093C301A093C401B093C5011F9134 +:103140000F910C948D140F931F930091C201109155 +:10315000C3012091C4013091C501DC01CB0180275E +:103160009127A227B3278093C2019093C301A09314 +:10317000C401B093C5011F910F910C948D1410924E +:10318000BE011092BF011092C0011092C1010C94B7 +:103190008D1441E050E060E070E004C0440F551F22 +:1031A000661F771F8A95D2F74093BE015093BF01E7 +:1031B0006093C0017093C1010C948D1441E050E004 +:1031C00060E070E004C0440F551F661F771F8A95AA +:1031D000D2F78091BE019091BF01A091C001B09142 +:1031E000C101482B592B6A2B7B2B4093BE01509376 +:1031F000BF016093C0017093C1010C948D1441E034 +:1032000050E060E070E004C0440F551F661F771F58 +:103210008A95D2F740955095609570958091BE0142 +:103220009091BF01A091C001B091C10148235923E1 +:103230006A237B234093BE015093BF016093C0017A +:103240007093C1010C948D1441E050E060E070E097 +:1032500004C0440F551F661F771F8A95D2F78091CF +:10326000BE019091BF01A091C001B091C10148275A +:1032700059276A277B274093BE015093BF01609373 +:10328000C0017093C1010C948D140F931F93009192 +:10329000BE011091BF012091C0013091C101DC013C +:1032A000CB01802B912BA22BB32B8093BE0190934B +:1032B000BF01A093C001B093C1011F910F910C9465 +:1032C0008D140F931F930091BE011091BF012091A7 +:1032D000C0013091C101DC01CB0180239123A223E5 +:1032E000B3238093BE019093BF01A093C001B0931C +:1032F000C1011F910F910C948D140F931F93009196 +:10330000BE011091BF012091C0013091C101DC01CB +:10331000CB0180279127A227B3278093BE019093EA +:10332000BF01A093C001B093C1011F910F910C94F4 +:103330008D140895CF92DF92EF92FF920F931F9317 +:10334000CF93DF938C01C090C201D090C301E09075 +:10335000C401F090C5018091BE019091BF01A09180 +:10336000C001B091C101C82AD92AEA2AFB2ACFE1BB +:10337000D0E0D701C6010C2E04C0B695A79597954D +:1033800087950A94D2F780FF06C0B8018C2F0E945F +:10339000F306019721F4219760F780E001C08C2F9C +:1033A000DF91CF911F910F91FF90EF90DF90CF9021 +:1033B0000895CF93DF93EC010E949A19BE010E94F9 +:1033C000F306DF91CF910895CB010E94D91908959A +:1033D0008091C60185958595859508958091C60152 +:1033E0008770089598E0899F90011124262B2093DF +:1033F000C6010C94DE182091C6018095822380932B +:10340000C601982F977069F430E0482F552747FD83 +:1034100050952417350729F08595859585950C9449 +:10342000FF1808959091C601977081E009F480E03B +:10343000089590910C01992321F090910D01911123 +:1034400009C020910E0130910F01F90132969FEFD2 +:1034500040E01FC0982F9695969596959F3050F511 +:10346000E0910E01F0910F01E90FF11D877021E04D +:1034700030E0A90102C0440F551F8A95E2F7CA0146 +:103480009181892B818308959F3F39F04F5F4E30A2 +:1034900041F051915813F8CF0DC05111F7CF942F2F +:1034A000F5CF9F3F39F0F901E90FF11D97FDFA952E +:1034B00082830895089590910C01992321F09091B1 +:1034C0000D01911109C020910E0130910F01F901F8 +:1034D0003296205F3F4F1FC0982F969596959695F0 +:1034E0009F30F0F4E0910E01F0910F01E90FF11D12 +:1034F000877021E030E0A90102C0440F551F8A9572 +:10350000E2F7CA01809591818923818308953196DC +:10351000E217F30729F090819813F9CF1082F7CFC3 +:10352000089581E090E0E0910E01F0910F01E80F25 +:10353000F91F1082019680319105A9F708959091A5 +:10354000DA01892B8093DA01089580959091DA0150 +:1035500089238093DA0108951092DA0108959091F9 +:10356000D901892B8093D901089580959091D90133 +:1035700089238093D90108951092D90108959091DB +:10358000D801892B8093D801089580959091D80116 +:1035900089238093D80108951092D80108958093CB +:1035A000C70108951092C701089580910E0190916E +:1035B0000F01FC0131969C01205F3F4F80E091910B +:1035C00091118F5FE217F307D1F70895E0910E0193 +:1035D000F0910F018091DA018083E0910E01F0916A +:1035E0000F0190818091D901892B8083E0910E0198 +:1035F000F0910F0190818091D801892B8083809177 +:10360000C701882361F0E0910E01F0910F019081D4 +:10361000892B80830E94D51A81111092C701809155 +:103620000E0190910F010C94141020E0009739F0D6 +:10363000AC0141505109842395232F5FF7CF822F8E +:103640000895CF92DF92EF92FF926C01EE24FF2457 +:10365000C114D104E104F10421F0C701B60120E155 +:1036600001C020E0C72ED82EE92EFF24C114D104BA +:10367000E104F10419F0285FC701B6016B017C0178 +:1036800054E0F694E794D794C7945A95D1F7C114AF +:10369000D104E104F10419F02C5FC701B6016B01FC +:1036A0007C0142E0F694E794D794C7944A95D1F709 +:1036B000C114D104E104F10419F02E5FC701B60171 +:1036C000DC01CB01B695A79597958795892B8A2B19 +:1036D0008B2B09F02F5F822FFF90EF90DF90CF9020 +:1036E00008958091F401843021F11092DC0120E4EE +:1036F00088E190E00FB6F894A895809360000FBE23 +:103700002093600080E00E94050983B7817F846078 +:1037100083BF83B7816083BF7894889583B78E7F9A +:1037200083BF88E10FB6F894809360001092600028 +:103730000FBE089508950E94F9020E940C030E9492 +:103740009A1B0E94010491E0811101C090E0892F31 +:1037500008950E94A1140E9408100C94050982E0AB +:1037600084BD93E095BD9AEF97BD80936E00089558 +:103770002FB7F8948091DD019091DE01A091DF01D7 +:10378000B091E0012FBF0895CF92DF92EF92FF92A8 +:103790000F931F932FB7F8944091DD015091DE01F4 +:1037A0006091DF017091E0012FBF6A017B01EE247F +:1037B000FF248C0120E030E0C016D106E206F306BB +:1037C00010F4415051099A01281B390BC9011F916E +:1037D0000F91FF90EF90DF90CF9008951F920F927E +:1037E0000FB60F9211248F939F93AF93BF93809145 +:1037F000DD019091DE01A091DF01B091E001019621 +:10380000A11DB11D8093DD019093DE01A093DF0126 +:10381000B093E001BF91AF919F918F910F900FBE38 +:103820000F901F9018950E94050DF8942FEF87EACE +:1038300091E6215080409040E1F700C0000087E011 +:1038400090EBDC018093FD019093FE01A093FF01BA +:10385000B09300029CE088E10FB6F894A89580939D +:1038600060000FBE90936000FFCF0E946D1C81111D +:1038700002C00E94531C0E94781C8093DB010E94AE +:10388000801C90E09093EF018093EE0187FB8827E6 +:1038900080F980930D010E947C1C682F70E080E00D +:1038A00090E00C9461186DEE7EEF80E090E00E9455 +:1038B000BB2260E082E090E00E94A92260E083E009 +:1038C00090E00E94A92260E084E090E00E94A9229A +:1038D00060E085E090E00C94A92280E090E00E94F6 +:1038E000A32221E08D3E9E4F09F020E0822F089513 +:1038F00082E090E00C949B2283E090E00C949B2269 +:1039000084E090E00C949B22682F84E090E00C947B +:10391000A9228091E30180FF0BC06091130185E033 +:10392000689FB001112475956795759567952BC0B3 +:1039300081FF09C06091130185E0689FB0011124E7 +:103940007595679520C082FF07C06091130185E0DF +:10395000689FB001112417C09091E4019923D1F020 +:1039600060911201961788F72091130185E0289F36 +:1039700090011124929FA001939F500D112470E09B +:10398000CA010E946D226038710540F4611571050D +:1039900039F002C065E070E0862F08958FE7089542 +:1039A00081E008958091E30180FF08C060911101DA +:1039B00070E0759567957595679521C081FF06C084 +:1039C0006091110170E07595679519C082FF04C080 +:1039D0006091110170E010C09091E4019923C1F051 +:1039E000609110019617A0F780911101899FC00185 +:1039F000112470E00E946D226038710528F4611571 +:103A0000710521F0862F08958FE7089581E00895CC +:103A100061E070E0F4CF803F21F40E94891C819521 +:103A200004C0813F29F40E94891C8093E701089516 +:103A3000823F21F40E94891C819504C0833F29F4B0 +:103A40000E94891C8093E6010895893F19F40E9421 +:103A5000D21C05C08A3F31F40E94D21C819580930C +:103A6000E80108958B3F21F40E94D21C819504C087 +:103A70008C3F29F40E94D21C8093E9010895843F71 +:103A800021F48091E501816017C0853F21F4809188 +:103A9000E501826011C0863F21F48091E5018460D8 +:103AA0000BC0873F21F48091E501886005C0883F05 +:103AB00031F48091E50180618093E50108958D3FA7 +:103AC00021F48091E30181600BC08E3F21F480914D +:103AD000E301826005C08F3F29F48091E301846097 +:103AE0008093E3010895803F39F48091E70187FFD7 +:103AF0006CC01092E70169C0813F29F48091E70111 +:103B00001816BCF362C09091E601823F29F497FF3A +:103B10005CC01092E60159C0833F19F41916CCF32A +:103B200054C0893F41F48091E80118160CF04DC053 +:103B30001092E8014AC08A3F29F48091E80187FF8A +:103B400044C0F6CF8B3F39F48091E90187FF3DC037 +:103B50001092E9013AC08C3F29F48091E9011816CE +:103B6000BCF333C0843F21F48091E5018E7F17C000 +:103B7000853F21F48091E5018D7F11C0863F21F4BE +:103B80008091E5018B7F0BC0873F21F48091E50197 +:103B9000877F05C0883F31F48091E5018F7E809357 +:103BA000E50113C08D3F21F48091E3018E7F0BC0AE +:103BB0008E3F21F48091E3018D7F05C08F3F29F472 +:103BC0008091E3018B7F8093E3018091E601811175 +:103BD0000EC08091E70181110AC08091E801811136 +:103BE00006C08091E901811102C01092E40108959C +:103BF00085EE91E00E941F100E94B81B9093E20195 +:103C00008093E10108951F93CF93DF938091E101A9 +:103C10009091E2010E94C41BAC019091E4019923B0 +:103C200021F02091140130E006C0209115018AE0B6 +:103C3000289F900111244217530708F486C08091F1 +:103C4000E601C091E701D091E8011091E9018111ED +:103C500007C0C11176C0D11174C0111172C075C0F6 +:103C60009F3F19F09F5F9093E401181624F40E947F +:103C7000891C8093E6018091E60187FF05C00E94C0 +:103C8000891C81958093E6011C1624F40E94891CEE +:103C90008093E7018091E70187FF05C00E94891C9E +:103CA00081958093E7016091E601662339F1C09127 +:103CB000E701CC2319F1772767FD7095872F972FA0 +:103CC0000E947E2123E333E343E35FE30E94E2218A +:103CD0000E944B216093E6016C2F772767FD70955A +:103CE000872F972F0E947E2123E333E343E35FE393 +:103CF0000E94E2210E944B216093E7011D1624F4EB +:103D00000E94D21C8093E8018091E80187FF05C0E2 +:103D10000E94D21C81958093E801111624F40E9420 +:103D2000D21C8093E9018091E90187FF05C00E94C0 +:103D3000D21C81958093E901DF91CF911F910C9462 +:103D4000F81D9F3F09F08ECF96CFDF91CF911F9145 +:103D50000895E5EEF1E085E0DF011D928A95E9F72F +:103D60001092E4011092E3010895833081F128F468 +:103D7000813059F08230D1F00895853009F449C07E +:103D8000B8F1863009F456C0089580911501262FA8 +:103D900030E0280F311D2F3F310524F4680F609368 +:103DA000150108958FEF80931501089580911401F6 +:103DB000262F30E0280F311D2F3F310524F4680FE6 +:103DC0006093140108958FEF8093140108958091FA +:103DD0001301262F30E0280F311D2F3F310524F429 +:103DE000680F6093130108958FEF80931301089576 +:103DF00080911201262F30E0280F311D2F3F310511 +:103E000024F4680F6093120108958FEF80931201DC +:103E1000089580911101262F30E0280F311D2F3F8A +:103E2000310524F4680F6093110108958FEF80939A +:103E30001101089580911001262F30E0280F311DC7 +:103E40002F3F310524F4680F6093100108958FEF20 +:103E5000809310010895833011F128F4813049F0E6 +:103E6000823091F00895853081F120F18630C1F1E2 +:103E7000089580911501681720F4861B8093150121 +:103E8000089510921501089580911401681720F487 +:103E9000861B809314010895109214010895809157 +:103EA0001301681720F4861B809313010895109264 +:103EB0001301089580911201681720F4861B8093E6 +:103EC000120108951092120108958091110168174E +:103ED00020F4861B8093110108951092110108951A +:103EE00080911001681720F4861B809310010895BB +:103EF0001092100108950F931F938D3109F471C032 +:103F000008F045C0803109F485C008F5873009F410 +:103F10006FC068F4863009F0ADC08091DB01817F0D +:103F20008E7F8093DB0181E08093EB01A4C08B3016 +:103F300009F49EC08E3009F09DC08091DB0182FBA8 +:103F4000222720F991E0922790FB82F96CC08631FC +:103F500009F48EC060F4813109F08CC00E94A11474 +:103F600090910D0181E0892780930D0181C08931F5 +:103F700009F47EC08B3109F07DC08091DB0181FBAB +:103F8000222720F991E0922790FB81F94CC08533DC +:103F900009F466C048F4873209F462C008F44FC0DF +:103FA000893209F45DC066C0833438F48A3308F07E +:103FB00044C0883309F45CC05DC0833409F450C048 +:103FC000883409F057C00E94A1140FEF13ED20E3CD +:103FD000015010402040E1F700C000000E94131C77 +:103FE00047C00E9405210E9408100E94050940C098 +:103FF0009091DB01892F8095817080FB90F929F0E9 +:10400000966098609093DB0136C0997F977F90937C +:10401000DB012EC08091DB0183FB222720F991E098 +:10402000922790FB83F98093DB01992309F180911A +:10403000DB0181608093DB011BC0895301C08D517E +:1040400041E050E060E070E08A019B0104C0000F95 +:10405000111F221F331F8A95D2F7C901B80104C06E +:1040600061E070E080E090E00E9461180E94A1147D +:1040700081E001C080E01F910F91089580E00895D4 +:1040800080E008958E518A3030F4E82FF0E0E65D4C +:10409000FE4F8081089580E00895CF93C82F8091CE +:1040A000EB01813079F018F08230E9F186C0E091BF +:1040B0000E01F0910F018081813169F0823209F0A7 +:1040C0007EC009C0E0910E01F0910F018081813125 +:1040D00011F0823261F48C2F0E943E20811104C0C5 +:1040E0008C2F0E947B1F1DC081E090E01AC08C2F96 +:1040F0000E944020811114C0C43179F048F4CB30C3 +:1041000079F0C03109F05FC082E08093EB0108C014 +:10411000C93219F0C83321F056C01092EB0153C0D8 +:1041200081E0817052C0C93281F110F5C43169F16A +:10413000A8F4C73009F045C08AE08093150194E1E6 +:104140009093140193E0909313018093120188E0FF +:104150008093110188E28093100133C082EE8C0FAE +:10416000863078F58C2F0E9442208093EA0129C086 +:10417000CE34E9F020F4CB3421F56AE013C0C13528 +:1041800079F0C235F1F461E00DC08091EA01882335 +:1041900019F01092EA0115C081E08093EB0115C07F +:1041A00061E006C08091EA010E94B51E0AC06AE083 +:1041B0008091EA010E942B1F04C01092EB0180E065 +:1041C00004C081E002C080E0ACCFCF910895E1E867 +:1041D000F0E08081886080838081816080838FB7F8 +:1041E000F89493E09093890090ED909388008FBFAE +:1041F0000895EFE6F0E08081826080830895EFE625 +:10420000F0E080818D7F80830895EFE6F0E090817B +:1042100082E08927808308951F920F920FB60F9234 +:1042200011242F933F934F935F936F937F938F93BB +:104230009F93AF93BF93EF93FF938091EC01909185 +:10424000ED0101969093ED018093EC01811103C083 +:1042500082E00E940509E091ED01E695E695F0E027 +:10426000E75FFB4FE4918091EC018E1303C080E087 +:104270000E940509FF91EF91BF91AF919F918F919E +:104280007F916F915F914F913F912F910F900FBE52 +:104290000F901F90189504D06894B1118DC00895A7 +:1042A00070D088F09F5790F0B92F9927B751A0F0A0 +:1042B000D1F0660F771F881F991F1AF0BA95C9F7BA +:1042C00012C0B13081F077D0B1E0089574C0672F8B +:1042D000782F8827B85F39F0B93FCCF3869577956A +:1042E0006795B395D9F73EF4909580957095619553 +:1042F0007F4F8F4F9F4F0895E89409C097FB3EF47E +:1043000090958095709561957F4F8F4F9F4F992322 +:10431000A9F0F92F96E9BB279395F69587957795A0 +:104320006795B795F111F8CFFAF4BB0F11F460FF60 +:104330001BC06F5F7F4F8F4F9F4F16C0882311F0B8 +:1043400096E911C0772321F09EE8872F762F05C0CC +:10435000662371F096E8862F70E060E02AF09A9567 +:10436000660F771F881FDAF7880F9695879597F95C +:10437000089557FD9058440F551F59F05F3F71F055 +:104380004795880F97FB991F61F09F3F79F08795BC +:104390000895121613061406551FF2CF4695F1DF45 +:1043A00008C0161617061806991FF1CF86957105D5 +:1043B000610508940895E894BB2766277727CB0109 +:1043C00097F908950BD078C069D028F06ED018F016 +:1043D000952309F05AC05FC01124EECFCADFA0F3C5 +:1043E000959FD1F3950F50E0551F629FF001729F8A +:1043F000BB27F00DB11D639FAA27F00DB11DAA1FA9 +:10440000649F6627B00DA11D661F829F2227B00DF5 +:10441000A11D621F739FB00DA11D621F839FA00D80 +:10442000611D221F749F3327A00D611D231F849FD0 +:10443000600D211D822F762F6A2F11249F57504027 +:104440008AF0E1F088234AF0EE0FFF1FBB1F661FC2 +:10445000771F881F91505040A9F79E3F510570F07B +:1044600014C0AACF5F3FECF3983EDCF386957795B6 +:104470006795B795F795E7959F5FC1F7FE2B880F76 +:10448000911D9695879597F9089597F99F6780E80C +:1044900070E060E008959FEF80EC089500240A9496 +:1044A0001616170618060906089500240A9412160F +:1044B0001306140605060895092E0394000C11F442 +:1044C000882352F0BB0F40F4BF2B11F460FF04C0EF +:1044D0006F5F7F4F8F4F9F4F089597FB072E16F406 +:1044E000009407D077FD09D00E94872207FC05D0F1 +:1044F0003EF4909581959F4F0895709561957F4FFB +:104500000895EE0FFF1F0590F491E02D0994AA1B6A +:10451000BB1B51E107C0AA1FBB1FA617B70710F0AE +:10452000A61BB70B881F991F5A95A9F780959095E0 +:10453000BC01CD010895F999FECF92BD81BDF89AD5 +:10454000992780B50895A8E1B0E042E050E00C94CE +:10455000C322262FF999FECF92BD81BDF89A01970B +:1045600000B4021639F01FBA20BD0FB6F894FA9ABB +:10457000F99A0FBE08950196272F0E94AA220C9443 +:10458000A922DC01CB01FC01F999FECF06C0F2BDE6 +:10459000E1BDF89A319600B40D9241505040B8F701 +:0645A0000895F894FFCF1E +:1045A60002200709950972093E090A090101C80195 +:1045B60028080A03140A404D3639C9037C0346030A +:1045C6000D03A002B902D202EB02010203040506A2 +:0445D60007080900C9 +:00000001FF diff --git a/keyboards/ergodox_ez/keymaps/romanzolotarev-norman-qwerty-osx/keymap.c b/keyboards/ergodox_ez/keymaps/romanzolotarev-norman-qwerty-osx/keymap.c new file mode 100644 index 0000000000..dedac694e4 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/romanzolotarev-norman-qwerty-osx/keymap.c @@ -0,0 +1,74 @@ +#include "ergodox_ez.h" +#include "debug.h" +#include "action_layer.h" + +#define BASE 0 +#define QWRT 1 + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [BASE] = KEYMAP( + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_F5, + KC_TAB, KC_Q, KC_W, KC_D, KC_F, KC_K, KC_BSLS, + KC_LCTL, KC_A, KC_S, KC_E, KC_T, KC_G, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_LBRC, + KC_F1, KC_F2, KC_F3, KC_F4, KC_LGUI, + /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ KC_VOLD, KC_MUTE, + /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ KC_VOLU, + /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ KC_BSPC, CTL_T(KC_ESC), KC_LALT, + // + /*-*/ KC_F6, KC_6, KC_7, KC_8, KC_9, KC_0, KC_EQL, + /*-*/ TG(QWRT), KC_J, KC_U, KC_R, KC_L, KC_SCLN, KC_MINS, + /*-*/ /*-*/ KC_Y, KC_N, KC_I, KC_O, KC_H, KC_ENT, + /*-*/ KC_RBRC, KC_P, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, + /*-*/ /*-*/ /*-*/ KC_RGUI, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, + KC_MPLY, KC_MNXT, + KC_MPRV, + KC_RALT, KC_QUOT, KC_SPC + ), + [QWRT] = KEYMAP( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_E, KC_R, KC_T, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_D, KC_F, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ KC_TRNS, KC_TRNS, + /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ KC_TRNS, + /*-*/ /*-*/ /*-*/ /*-*/ KC_TRNS, KC_TRNS, KC_TRNS, + // + /*-*/ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + /*-*/ KC_TRNS, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_TRNS, + /*-*/ /*-*/ KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_TRNS, + /*-*/ KC_TRNS, KC_N, 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[] = { +}; + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) { + return MACRO_NONE; +}; + +// Runs just one time when the keyboard initializes. +void matrix_init_user(void) { +}; + +// Runs constantly in the background, in a loop. +void matrix_scan_user(void) { + uint8_t layer = biton32(layer_state); + ergodox_board_led_off(); + ergodox_right_led_1_off(); + ergodox_right_led_2_off(); + ergodox_right_led_3_off(); + switch (layer) { + case QWRT: + ergodox_right_led_1_on(); + break; + default: + break; + } +}; diff --git a/keyboards/ergodox_ez/keymaps/romanzolotarev-norman-qwerty-osx/readme.md b/keyboards/ergodox_ez/keymaps/romanzolotarev-norman-qwerty-osx/readme.md new file mode 100644 index 0000000000..0e78c130b3 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/romanzolotarev-norman-qwerty-osx/readme.md @@ -0,0 +1,34 @@ +# Roman's Layout + +There are two layers: + +- **BASE** is [Norman layout](https://normanlayout.info/). +- **QWRT** is QWERTY. + +[![keyboard-layout](romanzolotarev-norman-qwerty-osx.png)](http://www.keyboard-layout-editor.com/#/gists/3b236f450da474dc506a5a80390c3cc7) + +## Switching + +- Tap `QWRT` to toggle **QWRT**. + +## LEDs + +- Red: QWRT is on. + +## Functional Keys + +- Tap `F1` to mute microphone via [Shush](http://mizage.com/shush/). +- Tap `F2` to copy screenshot to the clipboard. +- Hold `SHIFT` and tap `F2` to save screenshot as a file. +- Tap `F3`, `F4`, `F5`, `F6` to resize a window via [Divvy](http://mizage.com/divvy/). + +## CTRL/ESC + +Both CTRL and ESC are frequently used in Vim. + +- Tap `CTRL/ESC` to send `ESC`. +- Hold `CTRL/ESC` to use as `CTRL`. + +## Activate N-rollover + +- Hold left `SHIFT` and right `SHIRT` and then tap `N`. diff --git a/keyboards/ergodox_ez/keymaps/romanzolotarev-norman-qwerty-osx/romanzolotarev-norman-qwerty-osx.png b/keyboards/ergodox_ez/keymaps/romanzolotarev-norman-qwerty-osx/romanzolotarev-norman-qwerty-osx.png new file mode 100644 index 0000000000..34762ecb75 Binary files /dev/null and b/keyboards/ergodox_ez/keymaps/romanzolotarev-norman-qwerty-osx/romanzolotarev-norman-qwerty-osx.png differ diff --git a/keyboards/ergodox_ez/keymaps/sneako/README.md b/keyboards/ergodox_ez/keymaps/sneako/README.md new file mode 100644 index 0000000000..8dd110ee68 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/sneako/README.md @@ -0,0 +1,6 @@ +# ergodox_keymap + +Based on the default Ergodox EZ firmware + +Replaced the left side Bksp with a Crtl/Esc, this really helps in vim. +Removed the Ctrls from the Z and / keys. diff --git a/keyboards/ergodox_ez/keymaps/sneako/compiled.hex b/keyboards/ergodox_ez/keymaps/sneako/compiled.hex new file mode 100644 index 0000000000..d325890920 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/sneako/compiled.hex @@ -0,0 +1,1158 @@ +:100000000C947A020C94BE020C94BE020C94BE02B4 +:100010000C94BE020C94BE020C94BE020C94BE0260 +:100020000C94BE020C94BE020C94620D0C94340E1F +:100030000C94BE020C94BE020C94BE020C94BE0240 +:100040000C94BE020C943E220C94BE020C94BE0290 +:100050000C94BE020C94D11B0C94BE020C94BE02F4 +:100060000C94BE020C94BE020C94BE020C94BE0210 +:100070000C94BE020C94BE020C94BE020C94BE0200 +:100080000C94BE020C94BE020C94BE020C94BE02F0 +:100090000C94BE020C94BE020C94BE020C94BE02E0 +:1000A0000C94BE020C94BE020C94BE02A10EC30EB0 +:1000B000B10FC30EB10F080F2B0FB10F800F930FAD +:1000C0006212621291129112C712E71218141814D8 +:1000D000F2121814A213A2130914181418141214EB +:1000E000AF13AF13AF13AF13AF13AF13AF13AF1300 +:1000F000AF13AF13AF13AF13AF13AF13AF13AF13F0 +:10010000C113CE13D513DC13E6130000F0A12E00AB +:100110004C002971E100354100001E00140004006C +:100120001D0034004D001F001A0016001B00E104E2 +:100130002A00200008000700060050002C002100C3 +:100140001500090019004F004A00220017000A009C +:10015000050000006574500001540000007F00009D +:10016000E3004F000154000000770000E20023008C +:100170001C000B00110000002971240018000D0064 +:10018000100052004B0025000C000E0036005100FC +:100190002800260012000F0037002F002B00270038 +:1001A00013003342380030004E002D003100347807 +:1001B000E500C10000000100010001000100010094 +:1001C00000003A001E0220022202010001003B0052 +:1001D0001F0221022302010001003C002F0226021F +:1001E0002F00010001003D00300227023000010015 +:1001F00001003E003102350035020000010001001F +:1002000001000000010000000100010001000000E9 +:100210000100000001003F005200510024020000D4 +:1002200001004000240021001E00010001004100E7 +:10023000250022001F003700010042002600230095 +:10024000200027000100430025022E0231002E006D +:100250000100440045000100010001000000010010 +:100260000100010001000100000001000100010087 +:1002700001000100010001000100F2000100010085 +:1002800001000100F000F1000100F4000100010094 +:100290000100F3000100F500010001000100010070 +:1002A0000100000001000100010000000100000049 +:1002B0000100010001000000010000000100010038 +:1002C0000100010001000000010001000100010027 +:1002D0000100A9000100010001000100AC00AA001A +:1002E000B600010001000100AB00A8000100010000 +:1002F0000100010001000100010001000100AE0049 +:1003000001000100000016034500720067006F0045 +:1003100044006F007800200045005A0000001603DA +:100320004500720067006F0044006F0078002000F5 +:1003300045005A0000000403090409026D0004018D +:1003400000A0FA09040000010301010009211101C4 +:100350000001223F000705810308000A090401008B +:100360000103010200092111010001224D000705CE +:10037000820308000A0904020001030000000921A9 +:10038000110100012236000705830308000A090451 +:1003900003000103000000092111010001223900BE +:1003A000070584031000011201100100000008ED90 +:1003B000FE071301000102000105010906A1010564 +:1003C0000719E029E7150025019508750181020547 +:1003D000081901290595057501910295017503918B +:1003E0000105071900297715002501957875018108 +:1003F00002C005010980A101850216010026B7008F +:100400001A01002AB700751095018100C0050C097A +:1004100001A1018503160100269C021A01002A9CF5 +:1004200002751095018100C005010902A1010901B1 +:10043000A10005091901290515002501950575017A +:10044000810295017503810105010930093115818A +:10045000257F95027508810609381581257F95014C +:1004600075088106050C0A38021581257F950175EE +:10047000088106C0C005010906A101050719E02988 +:10048000E715002501950875018102950175088120 +:100490000105081901290595057501910295017558 +:1004A0000391010507190029FF150025FF95067521 +:1004B000088100C0000000000000000000000001F2 +:1004C0000204060A0F17202C3A4A5D71879DB3C7B4 +:1004D000DAE9F5FCFFFCF5E9DAC7B39D87715D4AFF +:1004E0003A2C20170F0A0604020100000000000049 +:1004F0000000000011241FBECFEFDAE0DEBFCDBF49 +:1005000004B603FE24C08091FB019091FC01A091F0 +:10051000FD01B091FE018730904BA740B04BB9F47C +:100520001092FB011092FC011092FD011092FE014D +:1005300014BE84B7877F84BF88E10FB6F894809398 +:100540006000109260000FBEE0E0FFE3099511E04B +:10055000A0E0B1E0EAE0F8E402C005900D92A43317 +:10056000B107D9F711E0A4E3B1E001C01D92AB3FA0 +:10057000B107E1F70E94A60A0C9403240C94000032 +:100580001092B9008AE08093B800089594EA90939D +:10059000BC009091BC0097FFFCCF9091B900987F70 +:1005A000983021F0903111F081E008958093BB00E4 +:1005B00084E88093BC008091BC0087FFFCCF8091D1 +:1005C000B900887F883111F0803471F780E0089598 +:1005D00084E98093BC008091BC0084FDFCCF089529 +:1005E0008093BB0084E88093BC008091BC0087FFAF +:1005F000FCCF9091B900987F81E0983209F480E0B7 +:10060000089584E88093BC008091BC0087FFFCCFF4 +:100610008091BB00089580910101811115C080E493 +:100620000E94C6028093010181110CC082E10E94E8 +:10063000F00280930101811105C08FEF0E94F0024A +:10064000809301010E94E80284B1807F84B985B162 +:10065000807F85B98AB1837F8AB98BB1837F8BB95B +:100660003E98469808950E94C604809301010E9416 +:100670000B0380B38C7080BB81B3836F81BBA5E318 +:10068000B1E0E3E4F1E08EE08E0F11921D928E1343 +:10069000FCCF0C94B004BF92CF92DF92EF92FF9206 +:1006A0000F931F93CF93DF9380910101882379F0FB +:1006B000809134018F5F80933401811108C00E94C2 +:1006C000C60480930101811102C00E94580405E311 +:1006D00011E0C0E0D0E0DD24D39482E0C82EEE2407 +:1006E000E394F12CC730D10500F58091010181110F +:1006F00064C080E40E94C60280930101811112C08F +:1007000082E10E94F0028093010181110BC0C701B8 +:100710000C2E01C0880F0A94EAF780950E94F0021F +:10072000809301010E94E80248C0CA30A1F028F479 +:10073000C83059F0C93061F005C0CC3089F070F094 +:10074000CD3089F0209A289810C0219A29980DC0A0 +:10075000229A2A980AC0239A2B9807C0529A01C05D +:10076000539A5B9802C03E9A469890EA9A95F1F7A0 +:100770009FB1799902C082E001C080E091709D250F +:10078000982B7C9902C084E001C080E0892B7D9980 +:1007900002C038E001C030E0832B7E9902C020E126 +:1007A00001C020E0822B9FB19095991F9927991F36 +:1007B0009295990F907E892B0FC080910101811134 +:1007C00049C080E40E94C60280930101882379F128 +:1007D000B12C0E94E8028B2DF8019081981719F036 +:1007E0008083C09200010E940B0321960F5F1F4F70 +:1007F000CE30D10509F076CF80910001882361F1D8 +:10080000815080930001882339F08FE99FE00197A0 +:10081000F1F700C0000020C0A3E4B1E0E5E3F1E09F +:10082000CF01825F91919D938E13FCCF15C083E120 +:100830000E94F002809301018111CACF81E40E94DD +:10084000C602809301018111C3CF0E940103B82E1B +:10085000B094BFCF80E0C0CF0E94560481E0DF910A +:10086000CF911F910F91FF90EF90DF90CF90BF90AD +:100870000895E82FF0E0ED5BFE4F80810895089524 +:100880000F931F93CF93DF93C3E4D1E010E00C2FBD +:10089000025F899190E00E94F71A180F0C13F9CFAC +:1008A000812FDF91CF911F910F9108950C94260510 +:1008B00056985E9825982D9826982E9827982F98C8 +:1008C0008FEF90E0909389008093880090938B0045 +:1008D00080938A0090938D0080938C00259A2D9AA6 +:1008E0002FEF80E792E0215080409040E1F700C078 +:1008F0000000269A2E9A2FEF80E792E02150804048 +:100900009040E1F700C00000279A2F9A2FEF80E770 +:1009100092E0215080409040E1F700C0000025980F +:100920002D982FEF80E792E0215080409040E1F732 +:1009300000C0000026982E982FEF80E792E021500B +:1009400080409040E1F700C0000027982F9856980B +:100950005E9825982D9826982E9827982F98089578 +:1009600089EA8093800089E08093810024982C9804 +:100970003F988AB18F748AB96E98479A8BB1806B11 +:100980008BB9769A0E9458040C94250580E28093D6 +:1009900001018091510181110EC00E94C00281E0CD +:1009A000809351012FEF83ED90E3215080409040E0 +:1009B000E1F700C0000080E40E94C60280930101BC +:1009C00081112EC00E94F00280930101811128C084 +:1009D0000E94F00280930101811122C08FE30E94E6 +:1009E000F0028093010181111BC00E94E80280E4A3 +:1009F0000E94C60280930101811112C08CE00E9406 +:100A0000F0028093010181110BC00E94F0028093DB +:100A10000101811105C08FE30E94F0028093010162 +:100A20000E94E80280910101089561110BC0FC0150 +:100A30008281882321F085EE0E94061103C085EE95 +:100A40000E94CE1180E090E0089508956091BD016C +:100A50007091BE018091BF019091C0010E94031B63 +:100A600056985E9825982D9826982E9827982F9816 +:100A7000813019F0823021F00895259A2D9A089539 +:100A8000269A2E9A089581E0089581E008950C94A5 +:100A9000450508950F931F93CF93DF938C01FC01BD +:100AA000C081D181CE010E947C19BE010E94F30554 +:100AB000EC01B8010E944705882309F48DC0F801B4 +:100AC0008281882309F44AC080915D0181111FC091 +:100AD000C431F0E5DF0709F051C00E94490581E00B +:100AE00080935D010E949B1B90935C0180935B014E +:100AF0001092540110925601109255011092580113 +:100B00001092570110925A011092590165C08091BC +:100B10005B0190915C010E94A71B883C910570F4D9 +:100B200080915401E82FF0E0EE0FFF1FEB5AFE4FCB +:100B3000D183C0838F5F809354014EC0C43880E559 +:100B4000D80721F0C538D04501F13AC0F8018281BB +:100B5000882341F01092520182E01EC0C438E0E5C3 +:100B6000DE0759F580915201811106C086E20E948C +:100B7000061186E20E94CE1182E01CC0C438F0E566 +:100B8000DF0741F3C538D045D9F4F80182818823C5 +:100B900031F01092530180E20E941D121DC080911D +:100BA0005301811106C087E20E94061187E20E946C +:100BB000CE1180E20E9424120FC0C538D04529F31F +:100BC00081E08093520180935301C801DF91CF915E +:100BD0001F910F910C94430580E0DF91CF911F91FD +:100BE0000F910895089596E0799FF001112494E5FE +:100BF000899FE00DF11D1124E60FF11DEE0FFF1F7F +:100C0000E25FFE4F859194910895880F991FFC0132 +:100C1000E657F040859194910895880F991FFC0143 +:100C2000E65FFE4F8591949108950F931F93CF93A4 +:100C3000DF93EC01811520E3920750F5C11580E2A6 +:100C4000D80708F0C3C0CB3BD10590F4C83AD10512 +:100C500008F06AC0C53AD10508F05BC0C430D105C0 +:100C600008F0D0C1219709F0CAC101E010E00AC222 +:100C7000CF3FD10511F008F0C5C1C03FD10508F044 +:100C8000A2C0CE01805E9109089708F4BBC1B7C12C +:100C9000C13090E5D90709F4A2C020F5C0318FE436 +:100CA000D80770F4C11590E4D90708F094C0C115B5 +:100CB00021E3D20708F0A3C1DD278E01106CE2C149 +:100CC000C115D04509F09BC10E9483148FEF94E3B6 +:100CD0002CE0815090402040E1F700C000000E94CD +:100CE000F61BD0C1C11597E5D90758F4C03121E5ED +:100CF000D20708F01CC1C43180E5D80708F475C0DC +:100D00007EC1CE0190578115904108F078C1DF7007 +:100D100073C1C53AD10509F477C1C63AD10509F0C6 +:100D200076C102E810E4AEC1C83AD10509F472C137 +:100D3000C93AD10509F471C1CA3AD10509F470C1A3 +:100D4000CB3AD10509F46FC1CC3AD10509F46EC193 +:100D5000CD3AD10509F46DC1C03BD10509F46CC190 +:100D6000CE3AD10509F46BC1CF3AD10509F46AC175 +:100D7000C13BD10509F469C1C23BD10509F468C181 +:100D8000C33BD10509F467C1C43BD10509F466C171 +:100D9000C53BD10509F465C1C63BD10509F464C161 +:100DA000C73BD10509F463C1C83BD10509F462C151 +:100DB000C93BD10509F461C1CA3BD10509F460C141 +:100DC00000E014E45FC18E0110655CC1CE019F702C +:100DD0000E940D0658C1DF708E01106A53C18091C8 +:100DE000DA0181608093DA014DC10E949B1D81115F +:100DF00002C00E94811D0E94B81D90E09093FB01EB +:100E00008093FA01C23080E5D80721F48091FA017D +:100E1000816086C0C43090E5D90721F48091FA0141 +:100E200082607EC0C63020E5D20721F48091FA01AD +:100E3000846076C0C83080E5D80719F48091FA0143 +:100E400027C0CA3090E5D90721F48091FA0180616A +:100E500067C0CC3020E5D20721F48091FA0180628E +:100E60005FC0CE3080E5D80721F48091FA0180641C +:100E700057C0C03190E5D90721F48091FA0180680C +:100E80004FC0C23120E5D20729F48091FA01846075 +:100E9000886046C0C33080E5D80721F48091FA010C +:100EA0008E7F3EC0C53090E5D90721F48091FA01CC +:100EB0008D7F36C0C73020E5D20721F48091FA013A +:100EC0008B7F2EC0C93080E5D80719F48091FA01D4 +:100ED00026C0CB3090E5D90721F48091FA018F7EAE +:100EE0001FC0CD3020E5D20721F48091FA018F7D1B +:100EF00017C0CF3080E5D80721F48091FA018F7BAD +:100F00000FC0C13190E5D90721F48091FA018F77A4 +:100F100007C0C331D04531F48091FA018B7F877FC0 +:100F20008093FA018091FA010E94BC1DABC08D2F05 +:100F300099278F70992781309105D9F49E012370EC +:100F4000332702C0880F991F2A95E2F79C688E010B +:100F500044E0000F111F4A95E1F700271370802B22 +:100F6000912B53E0CC0FDD1F5A95E1F7C076DD27BA +:100F70002FC08230910531F4DC2FCC278E01016F18 +:100F8000106A80C08330910569F4CE01837099277F +:100F900001E010E002C0000F111F8A95E2F7C801BE +:100FA0009C680FC084309105B9F4CE0183709927F5 +:100FB00001E010E002C0000F111F8A95E2F7C8019E +:100FC0009A6823E0CC0FDD1F2A95E1F7C07ED77029 +:100FD0008C010C2B1D2B56C08530910531F4DC2F74 +:100FE000CC278E01046F106A4DC0069709F04AC0E5 +:100FF000CF71DD27DC2FCC278E01106243C000E0CB +:1010000010E040C08E013EC001E810E43BC003E8A0 +:1010100010E438C002EE14E435C009EE14E432C026 +:101020000AEE14E42FC005EB14E42CC006EB14E424 +:1010300029C007EB14E426C00CEC14E423C00DEC2B +:1010400014E420C003E815E41DC00AE815E41AC042 +:1010500002E915E417C004E915E414C001E216E43E +:1010600011C003E216E40EC004E216E40BC005E270 +:1010700016E408C006E216E405C007E216E402C062 +:101080000AE216E4C801DF91CF911F910F910895F4 +:1010900096E0799FF001112494E5899FE00DF11D00 +:1010A0001124E60FF11DEE0FFF1FE25FFE4F859149 +:1010B0009491803E9105E0F4803C910558F5813390 +:1010C000910509F46FC048F48932910509F463C0B1 +:1010D0008A32910509F46DC072C089339105E9F037 +:1010E00082389105D1F08533910509F44DC067C070 +:1010F000833E910581F138F4803E9105B9F0823E3E +:101100009105D9F05CC0863E910561F1873E91055D +:10111000A1F155C00E94050608952091FA0120FD15 +:1011200002C021FF4CC080EE90E049C08091FA01DE +:1011300080FFF9CF89E390E042C08091FA0182FFFD +:101140000EC08091FA0184FF03C080E090E037C0B8 +:1011500083EE90E034C08091FA0182FFF2CF82EEFC +:1011600090E02DC08091FA0183FF0BC08091FA01BD +:1011700084FDEBCF87EE90E022C08091FA0183FFDF +:10118000F5CF86EE90E01BC08091FA0185FF07C085 +:1011900089E290E014C08091FA0185FFF9CF85E3E0 +:1011A00090E00DC08091FA0186FF07C08AE290E0CE +:1011B00006C08091FA0186FFF9CF81E390E00E949A +:1011C0001506089508950C94E20880916E01089523 +:1011D000CF93DF9300D01F92CDB7DEB79C018091F3 +:1011E000F101843019F593E099833B832A8390932E +:1011F000E9008FEF9091E800815095FD06C095EDD4 +:101200009A95F1F700008111F5CF8091E80085FFF4 +:101210000DC040E050E063E070E0CE0101960E9416 +:10122000520B8091E8008E778093E8000F900F902A +:101230000F90DF91CF910895CF93DF9300D01F924D +:10124000CDB7DEB72091F101243021F522E02983CA +:101250009B838A8383E08093E9008FEF9091E8007D +:10126000815095FD06C095ED9A95F1F7000081112A +:10127000F5CF8091E80085FF0DC040E050E063E0CD +:1012800070E0CE0101960E94520B8091E8008E77AB +:101290008093E8000F900F900F90DF91CF91089509 +:1012A0002091F1012430F1F422E02093E9002FEFA6 +:1012B0003091E800215035FD06C035ED3A95F1F743 +:1012C00000002111F5CF2091E80025FF0BC040E080 +:1012D00050E065E070E00E94520B8091E8008E774C +:1012E0008093E8000895CF93DF93EC019091F10192 +:1012F000943009F046C080910C018823D9F0809188 +:101300000D018823B9F09093E9008FEF9091E800E8 +:10131000815095FD06C095E19A95F1F70000811185 +:10132000F5CF8091E80085FF2CC040E050E060E1FF +:1013300070E017C081E08093E9008FEF9091E800A2 +:10134000815095FD06C095ED9A95F1F70000811149 +:10135000F5CF8091E80085FF14C040E050E068E0E0 +:1013600070E0CE010E94520B8091E8008E7780934E +:10137000E80080E1FE01AEE5B1E001900D928A95B2 +:10138000E1F7DF91CF9108958091F001811109C0BB +:101390000E94E70C0E94440D8091E20084608093DB +:1013A000E20008951092F001089508950C942B2204 +:1013B0000E948C1B0E9431220E94EA0F0C94E308C9 +:1013C00042E061EC81E00E94610C42E061EC82E06D +:1013D0000E94610C42E061EC83E00E94610C42E1FA +:1013E00061EC84E00C94610C8091F301833009F48A +:1013F00055C030F4813071F0823009F48EC0089508 +:101400008A3009F47AC08B3009F460C0893009F061 +:101410009CC020C08091F201813A09F096C0809171 +:10142000E800877F8093E8008091F6019091F701B2 +:10143000892B21F460E18EE591E003C060E080E05B +:1014400090E070E00E949D0B8091E8008B77809384 +:10145000E80008958091F201813209F076C0809110 +:10146000F6019091F701009719F0039709F06DC00C +:101470008091E800877F8093E8008091E80082FDFA +:1014800005C08091F1018111F8CF5FC08091F1001A +:1014900080936E018091E8008B7753C08091F201B8 +:1014A000813A09F052C08091F6019091F701892BA1 +:1014B00009F04BC08091E800877F8093E80080911D +:1014C000E80080FFFCCF80910C0136C08091F201D2 +:1014D0008132D9F58091F6019091F701892BA9F518 +:1014E0008091E800877F8093E8000E94960C8091AD +:1014F000F40180930C010C9483148091F2018132E9 +:1015000021F58091E800877F8093E8000E94960C87 +:101510008091F50180936F0108958091F201813AE5 +:10152000A1F48091E800877F8093E8008091E80033 +:1015300080FFFCCF80916F018093F1008091E800E3 +:101540008E778093E8000C94960C089584B7877F7B +:1015500084BF88E10FB6F894809360001092600019 +:101560000FBE90E080E80FB6F894809361009093EE +:1015700061000FBE0E9439100E94E70C0E94440DCA +:101580008091E20084608093E20078940E94CA0F08 +:101590000E943B1082E091E00E94E50F0E94192218 +:1015A0008091F101853069F40E94531B8091EF0115 +:1015B0008823B1F30E947E1B882391F30E943C0B89 +:1015C000EFCF0E944110ECCF292F33272330310574 +:1015D000C9F064F42130310581F02230310509F081 +:1015E00043C08DE690E02AE333E042C0213231056A +:1015F000F1F02232310541F137C082E190E027EA73 +:1016000033E036C099278130910541F08230910551 +:1016100041F0892B49F5E6E3F3E005C0EEE1F3E0A4 +:1016200002C0E6E0F3E0849190E09F0121C06430C5 +:10163000D8F4E62FF0E0EE0FFF1FEE5DFE4F2081A5 +:10164000318189E090E014C0643070F470E0FB01F7 +:10165000EE0FFF1FE65EFE4F20813181FB01EA5E47 +:10166000FE4F808190E004C080E090E020E030E018 +:10167000FA0131832083089580E189BD82E189BD2B +:1016800009B400FEFDCF8091D8008F7D8093D800F3 +:101690008091E00082608093E0008091E00081FD15 +:1016A000FCCF0895CF92DF92EF92FF920F931F939A +:1016B000CF93DF93EC018B016A010E94B50C81117D +:1016C00033C0C114D10439F0F60180819181081B27 +:1016D000190BC80FD91FE12CF12C0115110519F1B7 +:1016E0008091E80085FD16C08091E8008E77809398 +:1016F000E800C114D10449F0F60180819181E80E1F +:10170000F91EF182E08285E00FC00E94B50C8823AB +:1017100021F30AC089918093F10001501109FFEF74 +:10172000EF1AFF0ADACF80E0DF91CF911F910F917E +:10173000FF90EF90DF90CF9008952091F8013091C5 +:10174000F9012617370748F06115710539F4209122 +:10175000E8002E772093E80001C0B90140E0611550 +:101760007105A9F12091F101222309F443C025302C +:1017700009F442C02091E80023FD40C02091E80018 +:1017800022FD32C02091E80020FFE9CF4091F30014 +:101790002091F20030E0342BFC01CF01611571057E +:1017A00059F02830310540F481918093F100615067 +:1017B00071092F5F3F4FF1CF41E02830310509F02B +:1017C00040E02091E8002E772093E800C8CF411137 +:1017D000C9CF0AC08091F101882361F0853061F0A2 +:1017E0008091E80083FD0AC08091E80082FFF2CF7B +:1017F00080E0089582E0089583E0089581E00895EF +:101800002091F8013091F9012617370748F061154A +:10181000710539F42091E8002E772093E80001C08B +:10182000B901FC0120E06115710591F18091F10190 +:10183000882309F440C0853009F43FC08091E80056 +:1018400083FD3DC08091E80082FD2FC08091E800BB +:1018500080FFE9CF2091F3008091F20090E0922B7D +:101860006115710559F08830910540F42491209359 +:10187000F1003196615071090196F2CF21E008978D +:1018800009F020E08091E8008E778093E800CBCFCC +:101890002111CCCF0AC08091F101882361F08530FD +:1018A00061F08091E80083FD0AC08091E80082FF2A +:1018B000F2CF80E0089582E0089583E0089581E00A +:1018C0000895982F973058F59093E900981739F0BC +:1018D0007091EC002091ED005091F00003C0242F96 +:1018E000762F50E021FF19C03091EB003E7F3093FE +:1018F000EB003091ED003D7F3093ED003091EB0037 +:1019000031603093EB007093EC002093ED00509326 +:10191000F0002091EE0027FF07C09F5FD3CF8F70AC +:101920008093E90081E0089580E008958091F201BC +:1019300087FF11C08091E80082FD05C08091F10110 +:101940008111F8CF11C08091E8008B770BC0809196 +:10195000F101882349F08091E80080FFF8CF809161 +:10196000E8008E778093E80008952091E40030919C +:10197000E50095E64091EC00842F817040FF22C085 +:101980008091E80080FD1CC08091F101882391F0D6 +:10199000853091F08091EB0085FD10C04091E4000E +:1019A0005091E5004217530729F39A01915011F71E +:1019B00084E0089582E0089583E0089581E0089529 +:1019C00080E008954091E80042FFDECF08950E9434 +:1019D000550D0E945D0DE0EEF0E080818160808316 +:1019E000E8EDF0E080818F77808319BCA7EDB0E04F +:1019F0008C918E7F8C9380818F7E80831092F001FA +:101A000008950F931F93CF93DF930E94550D0E946B +:101A10005D0DC8EDD0E088818F77888388818068EC +:101A2000888388818F7D888319BC1092F101109280 +:101A3000ED011092EF011092EE0100EE10E0F801BE +:101A400080818B7F808388818160888342E060E031 +:101A500080E00E94610CE1EEF0E080818E7F808367 +:101A6000E2EEF0E080818160808380818860808305 +:101A7000F80180818E7F8083888180618883DF91F7 +:101A8000CF911F910F910895E8EDF0E080818F7E56 +:101A90008083E7EDF0E080818160808384E082BF15 +:101AA00081E08093F0010C94010DE8EDF0E080817D +:101AB0008E7F80831092E20008951092DA001092D7 +:101AC000E10008951F920F920FB60F9211242F93E9 +:101AD0003F934F935F936F937F938F939F93AF93B6 +:101AE000BF93EF93FF938091E10082FF0BC0809141 +:101AF000E20082FF07C08091E1008B7F8093E100CC +:101B00000E94C90F8091DA0080FF1FC08091D80029 +:101B100080FF1BC08091DA008E7F8093DA00809175 +:101B2000D90080FF0DC080E189BD82E189BD09B483 +:101B300000FEFDCF81E08093F1010E94C40905C041 +:101B400019BC1092F1010E94D2098091E10080FF3E +:101B500019C08091E20080FF15C08091E2008E7F65 +:101B60008093E2008091E20080618093E2008091A6 +:101B7000D80080628093D80019BC85E08093F10181 +:101B80000E94D6098091E10084FF30C08091E2007C +:101B900084FF2CC080E189BD82E189BD09B400FECB +:101BA000FDCF8091D8008F7D8093D8008091E10097 +:101BB0008F7E8093E1008091E2008F7E8093E2002F +:101BC0008091E20081608093E2008091ED018823A2 +:101BD00011F084E007C08091E30087FD02C081E03E +:101BE00001C083E08093F1010E94D8098091E10057 +:101BF00083FF29C08091E20083FF25C08091E1002E +:101C0000877F8093E10082E08093F1011092ED01E3 +:101C10008091E1008E7F8093E1008091E2008E7FD1 +:101C20008093E2008091E20080618093E20042E0D4 +:101C300060E080E00E94610C8091F00088608093F9 +:101C4000F0000E94D509FF91EF91BF91AF919F9154 +:101C50008F917F916F915F914F913F912F910F9055 +:101C60000FBE0F901F9018951F920F920FB60F92F4 +:101C700011242F933F934F935F936F937F938F9391 +:101C80009F93AF93BF93CF93DF93EF93FF93C09155 +:101C9000E900CF708091EC00D82FD17080FDD0E8A2 +:101CA0001092E9008091F000877F8093F000789493 +:101CB0000E94780E1092E9008091F0008860809375 +:101CC000F000CD2BCF70C093E900FF91EF91DF9131 +:101CD000CF91BF91AF919F918F917F916F915F91C4 +:101CE0004F913F912F910F900FBE0F901F9018951D +:101CF0001F93CF93DF93CDB7DEB7AA970FB6F894B3 +:101D0000DEBF0FBECDBFE2EFF1E088E08E0F909115 +:101D1000F10091938E13FBCF0E94F4098091E800AB +:101D200083FF1FC18091F2019091F301492F50E090 +:101D30004A30510508F015C1FA01EA5AFF4F0C94D8 +:101D4000B323803881F0823809F00BC18091F6010D +:101D50008F708093E9008091EB0085FB882780F9E4 +:101D60001092E90006C08091EE019091EF0191116F +:101D700082609091E800977F9093E8008093F10053 +:101D80001092F100C8C0282F2D7F09F0EAC08823E7 +:101D900019F0823061F0E5C08091F401813009F0E2 +:101DA000E0C0933009F080E08093EF012BC0809178 +:101DB000F401811127C08091F6018F7009F4D1C020 +:101DC0008093E9002091EB0020FF1CC0933021F4A8 +:101DD0008091EB00806214C09091EB009061909331 +:101DE000EB0021E030E0A90102C0440F551F8A95A5 +:101DF000E2F74093EA001092EA008091EB008860DD +:101E00008093EB001092E9008091E800877F86C004 +:101E10008111A7C01091F4011F778091E3008078B1 +:101E2000812B8093E3008091E800877F8093E80016 +:101E30000E94960C8091E80080FFFCCF8091E30027 +:101E400080688093E300111102C082E001C083E04A +:101E50008093F10186C08058823008F082C0809162 +:101E6000F4019091F5018C3D53E0950779F583E0FD +:101E70008A838AE289834FB7F894DE01139620E0C3 +:101E80003EE051E2E32FF0E050935700E49120FF51 +:101E900003C0E295EF703F5FEF708E2F90E0EA3065 +:101EA00010F0C79601C0C0968D939D932F5F24318B +:101EB00049F74FBF8091E800877F8093E8006AE28E +:101EC00070E0CE0101960E949D0B14C0AE014F5FE1 +:101ED0005F4F6091F6010E94E40ABC01009709F48B +:101EE00040C09091E800977F9093E80089819A81A3 +:101EF0000E94000C8091E8008B778093E80031C04D +:101F0000803879F58091E800877F8093E8008091A0 +:101F1000ED018093F1008091E8008E778093E800D6 +:101F20000E94960C1EC081111CC09091F401923049 +:101F3000C0F48091E800877F8093E8009093ED01E2 +:101F40000E94960C8091ED01811106C08091E30002 +:101F500087FD02C081E001C084E08093F1010E940E +:101F6000E0098091E80083FF0AC08091E800877F44 +:101F70008093E8008091EB0080628093EB00AA964A +:101F80000FB6F894DEBF0FBECDBFDF91CF911F918A +:101F900008950895CF938091F1018823A1F0C09115 +:101FA000E900CF709091EC00892F817090FD80E85E +:101FB000C82B1092E9008091E80083FD0E94780E02 +:101FC000CF70C093E900CF910895909375018093ED +:101FD00074010895E0917401F0917501309721F03A +:101FE0000190F081E02D099480E00895E091740162 +:101FF000F0917501309721F00280F381E02D099472 +:102000000895E0917401F0917501309721F00480FA +:10201000F581E02D099408952091720130917301AA +:102020008217930771F09093730180937201E0918E +:102030007401F0917501309721F00680F781E02D51 +:1020400009940895209170013091710182179307CE +:1020500071F09093710180937001E0917401F0919F +:102060007501309721F00084F185E02D09940895E1 +:1020700008950C9438100E94921B0E9433030C9414 +:10208000541C9F92AF92BF92CF92DF92EF92FF9239 +:102090000F931F93CF93DF9300D000D000D0CDB724 +:1020A000DEB70E944B030DE010E0AA24A394B12CEC +:1020B000902E802F0E943904980129583E4F6901C3 +:1020C000F901F080F826A1F40150110988F78FEF8B +:1020D00089838A831B820E949B1B8160782F9D834A +:1020E0008C8349815A816B818D810E94D8102FC0C9 +:1020F0009091DA0191FF04C08E830E943F048E818B +:1021000025E030E0A501022E01C0440F0A94EAF751 +:10211000E42E4F21C1F029839A828E2191E009F4A7 +:1021200090E09B830E949B1B8160782F9D838C8312 +:1021300049815A816B818D810E94D810F60180817E +:10214000E826E08204C021503109E0F6BDCF0E94AC +:102150003B1F109176010E94EA0F1817B9F00E94F8 +:10216000EA0F8093760126960FB6F894DEBF0FBE75 +:10217000CDBFDF91CF911F910F91FF90EF90DF9036 +:10218000CF90BF90AF909F900C94E30826960FB627 +:10219000F894DEBF0FBECDBFDF91CF911F910F919D +:1021A000FF90EF90DF90CF90BF90AF909F900895F9 +:1021B000CF93DF93CDB7DEB72B970FB6F894DEBF82 +:1021C0000FBECDBF4F83588769877A878B87DE0123 +:1021D000119686E0FD0111928A95E9F785E0FE01EE +:1021E000379601900D928A95E1F749815A816B816A +:1021F0007C818D819E810E9421172B960FB6F894C9 +:10220000DEBF0FBECDBFDF91CF910895CF9388235E +:1022100009F4C2C0C82F823859F40E94EA0F81FD28 +:10222000BBC089E30E94FB190E94C81A89E30CC055 +:10223000833879F40E94EA0F80FDAEC083E50E94E6 +:10224000FB190E94C81A83E50E943D1ACF910C9495 +:10225000C81A843859F40E94EA0F82FD9DC087E4B1 +:102260000E94FB190E94C81A87E4EECF8CEF8C0FF6 +:10227000813A48F48C2F0E947E2181118DC08C2FD1 +:102280000E94FB19E3CF80E28C0F883048F4C770BE +:1022900081E001C0880FCA95EAF70E94811AD6CF63 +:1022A0008BE58C0F833078F4C53A29F0C63A31F0CB +:1022B00083E890E005C081E890E002C082E890E009 +:1022C000CF910C940C1088E58C0F833108F064C01A +:1022D000C83A39F1C93A41F1CA3A49F1CB3A51F118 +:1022E000CC3A59F1CD3A61F1C03B69F1CE3A71F186 +:1022F000CF3A79F1C13B81F1C23B89F1C33B91F106 +:10230000C43B99F1C53BA1F1C63BA9F1C73BB1F173 +:10231000C83BB9F1C93BC1F1CA3BC9F180E090E0CB +:1023200038C082EE90E035C089EE90E032C08AEE8F +:1023300090E02FC085EB90E02CC086EB90E029C0A8 +:1023400087EB90E026C08CEC90E023C08DEC90E011 +:1023500020C083E891E01DC08AE891E01AC082E9BC +:1023600091E017C084E991E014C081E292E011C0CD +:1023700083E292E00EC084E292E00BC085E292E03C +:1023800008C086E292E005C087E292E002C08AE2DD +:1023900092E0CF910C942210CF910895882309F4F4 +:1023A0004BC0823859F40E94EA0F81FF45C089E38F +:1023B0000E94FB190E94C81A89E30CC0833871F48B +:1023C0000E94EA0F80FF38C083E50E94FB190E943B +:1023D000C81A83E50E943D1A0C94C81A843859F42F +:1023E0000E94EA0F82FF28C087E40E94FB190E9426 +:1023F000C81A87E4EFCF9CEF980F913A58F390E218 +:10240000980F983050F4877091E001C0990F8A9529 +:10241000EAF7892F0E94871ADFCF9BE5980F933048 +:1024200020F480E090E00C940C10885A833120F462 +:1024300080E090E00C9422100895882321F00E94FF +:10244000811A0C94C81A0895882321F00E94871AD3 +:102450000C94C81A08957F928F929F92AF92BF9268 +:10246000CF92DF92EF92FF920F931F93CF93DF9360 +:102470001F92CDB7DEB77C01C62E772EFC010581F9 +:1024800002950F70128111110E949E1A0E94F41978 +:10249000882379F0112369F080E28C0D883048F0B0 +:1024A00082E00E94DD190E94F41991E0D82ED9260D +:1024B00001C0D12CE72DE295EF70F0E0E05AFF4F1C +:1024C0000C94B323872D807F072D0F70882311F084 +:1024D0000295007F112389F0002309F490C180E266 +:1024E0008C0D883020F4802F0E94811A03C0802F29 +:1024F0000E94911A0E94C81A82C18C2D0E94CE118E +:10250000002309F495C180E28C0D883020F4802FDF +:102510000E94871A03C0802F0E94971A0E94C81A2F +:1025200087C1972D907F872D8F70903211F0829503 +:10253000807FCC2021F0F1E0CF16B1F01EC0112336 +:1025400049F0002309F414C1013009F011C10E94BF +:10255000B11A6EC1002319F0013009F469C18983F1 +:102560000E94B41A89810AC1112321F0023008F0B7 +:102570005FC1FEC001115CC101C1112321F0002324 +:1025800009F4F6C03CC1002309F4F8C03EC1872D10 +:1025900086958695837090E0009719F0019761F019 +:1025A00047C1112321F08C2D972D937002C080E03C +:1025B00090E00E940C103CC1112321F08C2D972D2E +:1025C000937002C080E090E00E94221031C18C2DF7 +:1025D000112319F00E94431E02C00E94AB1E0E94EC +:1025E000301F26C1872D837009F052C0111120C100 +:1025F0008C2D829586958770880F880F9C2D9F70F3 +:10260000892E912CA12CB12C082E04C0880C991C69 +:10261000AA1CBB1C0A94D2F7C4FE14C00FE010E041 +:1026200020E030E0B901A80104C0440F551F661F27 +:10263000771F8A95D2F7CB01BA0160957095809586 +:10264000909503C060E070E0CB01272D269526957C +:10265000237030E02230310569F02330310589F0F4 +:10266000682979298A299B292130310571F00E9436 +:102670006918DEC0682979298A299B290E94851852 +:10268000D7C00E946918C501B4010E944D18D0C07E +:10269000112319F0872D817001C08695882309F4D4 +:1026A000C7C08C2D829586958770880F880F9C2DCA +:1026B0009F70892E912CA12CB12C082E04C0880C5F +:1026C000991CAA1CBB1C0A94D2F7C4FE14C00FE0CC +:1026D00010E020E030E0B901A80104C0440F551F0C +:1026E000661F771F8A95D2F7CB01BA016095709566 +:1026F0008095909503C060E070E0CB01272D269572 +:1027000026952370422F50E04230510569F0433046 +:10271000510589F0682979298A299B294130510579 +:1027200071F00E94431984C0682979298A299B295C +:102730000E945F197DC00E944319C501B4010E9427 +:10274000271976C08C2D90E0FC01E05EF109E5319F +:10275000F10508F050C0E059FF4F0C94B3230C2D45 +:102760000F70872D8F71112331F00E94C018802FB8 +:102770000E941D125DC00E94E118802F0E94241249 +:1027800057C0112339F0011153C0872D8F710E945A +:1027900006194EC0023008F04BC0F7CF112339F0B4 +:1027A000872D8F710E94C01843C01123C9F3872D54 +:1027B0008F710E94E1183CC0112329F0872D8F7181 +:1027C0000E94AB1835C00E94A11832C0112351F0ED +:1027D000172D1F71812F0E94C01863E0812F0E9466 +:1027E000D41926C081E00E94DD19023008F182E090 +:1027F0000E94DD191DC0112331F0002389F28C2DB8 +:102800000E94061115C0002391F28C2D0E94CE115A +:102810000FC0472D4F706C2DC7010E9415050E94F7 +:10282000C51706C0472D4F706C2DC7010E94F205D9 +:10283000DD20F9F00E94D01980FD1BC0F701128243 +:102840000E94CA190E94C018C7010E9448140E9421 +:10285000CA190F90DF91CF911F910F91FF90EF90C8 +:10286000DF90CF90BF90AF909F908F907F900C940F +:10287000E1180F90DF91CF911F910F91FF90EF9092 +:10288000DF90CF90BF90AF909F908F907F900895F2 +:102890000F931F93CF93DF93EC01888199812B8154 +:1028A0003C81232BB9F09F3F11F48F3F99F0CE016B +:1028B0000E944A05882371F0688179818A810E948B +:1028C000C6198C010E947B190E944218B801CE01E2 +:1028D0000E942B12DF91CF911F910F9108950E94BA +:1028E0009E1A0E94AE1A0E94731A0E94C81A0E9471 +:1028F000E11F0E94301F80E090E00E940C1080E0F9 +:1029000090E00C9422100E948E1A0C946F140E9476 +:10291000BB19292F22952F7030E02C3031054CF453 +:102920002A3031056CF42250310922303105A8F4E7 +:1029300007C02C30310569F02F30310551F00DC042 +:10294000803F69F018F4803E40F409C0843F29F4C8 +:1029500006C093FB882780F9089580E0089581E000 +:102960000895CF93DF9300D000D01F92CDB7DEB78C +:102970000F900F900F900F900F90DF91CF910895CF +:10298000CF93DF9300D000D000D0CDB7DEB726962E +:102990000FB6F894DEBF0FBECDBFDF91CF91089583 +:1029A0001F93CF93DF93C091850116E0809186013C +:1029B000C81799F0D0E01C9FF0011D9FF00D112465 +:1029C000E957FE4F408151816281738184819581F5 +:1029D0000E94C0142196C770E9CFDF91CF911F915B +:1029E00008954091B7015091B8016091B90170917B +:1029F000BA018091BB019091BC010C94C0148091EC +:102A0000BC0182958F7009F054C08091B901882370 +:102A100009F44FC080918501A09186016091B701B2 +:102A20007091B8014091BA015091BB01B6E08A178C +:102A300009F43FC090E041155105C1F17F3F11F409 +:102A40006F3FA1F1B89FF001B99FF00D1124E95734 +:102A5000FE4F218172132AC02081621327C0228178 +:102A6000211124C0238134812417350710F421500B +:102A70003109241B350B283C3105C0F42091BC01E1 +:102A80002F7020612093BC0126E0289FF001299F30 +:102A9000F00D1124E457FE4F80818F708061808398 +:102AA00087EB91E00E9448140C94D0140196877033 +:102AB000BECF0895CF92DF92EF92FF920F931F93B4 +:102AC000CF93DF93CDB7DEB762970FB6F894DEBF32 +:102AD0000FBECDBF8C0185E0F801DE011D9601908F +:102AE0000D928A95E1F7D8014C9111965C9111975E +:102AF00012966C9112971396CD90DC9014973091AA +:102B0000B7017091B8018091BA019091BB01009713 +:102B100009F46BC17F3F19F43F3F09F466C1E090AF +:102B2000B901EE2009F4C0C02091BC01C816D90635 +:102B300028F0F601E81BF90BCF0104C080959095B1 +:102B40008C0D9D1DFF24F394883C910578F0F12CA9 +:102B5000207F09F0C6C07C2DD98AC88A89890E9445 +:102B6000B11487EB91E00E944814B1C0822F807F9E +:102B700009F046C0751314C0341312C0611110C09F +:102B80002F7020612093BC010E94F11487EB91E02B +:102B90000E9448148091BC01D80115968C932EC0D8 +:102BA000CD2819F15F3F11F44F3FF9F0F62E611176 +:102BB0001CC0809185012091860136E0821709F4BE +:102BC0005AC090E0389FF001399FF00D1124E95769 +:102BD000FE4F7181571306C07081471303C0728185 +:102BE000711103C001968770E9CFF62E662309F4B0 +:102BF00018C18091BC0181608093BC01F12C11C18E +:102C0000751308C0341306C0611104C08091BC0163 +:102C1000D801C3C04D875E878D859E856A8B0E94D3 +:102C200087146A898823E1F16623D1F12091BC01E0 +:102C3000822F82958F7090E0029774F08091B70197 +:102C40009091B80198878F831986DB86CA862C8776 +:102C5000CE0107960E94481486E0F801A7EBB1E088 +:102C600001900D928A95E1F70E94FF140E94F114E1 +:102C7000FF24F394D6C04D875E878D859E850E9484 +:102C8000BB19292F22952F7030E0223031050CF02E +:102C9000BCC09F7009F0B6C0805E883008F4C1C027 +:102CA000C8010E944814E4CFC816D90608F453C0DE +:102CB000F601E81BF90BCF01883C910508F450C0E0 +:102CC000F12C7C2DD98AC88A89890E94B114E7EB3E +:102CD000F1E086E0DF011D928A95E9F70E94F11488 +:102CE000A0C0751314C0341312C0611110C08091BC +:102CF000BC01F8018583C8010E94481486E0E7EB17 +:102D0000F1E0DF011D928A95E9F7FE2C8AC04D871C +:102D10005E878D859E856A8B0E9487146A898823C9 +:102D200009F4BECF662309F4BBCF2091BC01822FEA +:102D300082958F7090E002970CF48ECF8091B7014E +:102D40009091B8019A8389831B82DD82CC822E8385 +:102D5000CE0101967FCF809590958C0D9D1DACCFB7 +:102D6000F62E662309F49CCF75132EC034132CC0A5 +:102D70002091BC0120FD1FC0822F82958F70D9F059 +:102D8000D80115962C9315978F3049F08F5F982FA7 +:102D90009295907F822F8F70892B15968C93C80106 +:102DA0000E94481486E0F801A7EBB1E001900D9273 +:102DB0008A95E1F793CF86E0F801A7EBB1E00190A7 +:102DC0000D928A95E1F72DC04D875E878D859E8592 +:102DD0000E948714811140CF8091BC018160809353 +:102DE000BC01C8010E9448141CC0662309F458CFD6 +:102DF0004D875E878D859E850E948714882309F400 +:102E00004FCF2ACF811148CF0CC0243031050CF0B0 +:102E100047CF9F7009F440CFF8019581907F09F06A +:102E20003BCF8F2D62960FB6F894DEBF0FBECDBF9D +:102E3000DF91CF911F910F91FF90EF90DF90CF9096 +:102E400008951F93CF93DF93CDB7DEB72C970FB6BE +:102E5000F894DEBF0FBECDBF4F83588769877A874E +:102E60008B879C87CE0107960E945A15882369F0AC +:102E70008F8198852A853B85232BF1F19F3F09F0AF +:102E800063C08F3F09F060C037C086E0FE0137960F +:102E9000DE01119601900D928A95E1F76F81788598 +:102EA000EA85FB85309741F17F3F11F46F3F21F1B7 +:102EB0002091860130E0C9010196877099274091E1 +:102EC000850150E08417950709F447C069837A8328 +:102ED000FD83EC8396E0929FD001939FB00D112467 +:102EE000A957BE4FFE01319601900D929A95E1F7D8 +:102EF000809386010E94D01416E080918501909104 +:102F000086018917C1F1189FC001112489579E4F6E +:102F10000E945A15882379F1E09185011E9FF001E6 +:102F20001124E957FE4F4081518162817381848170 +:102F300095810E94C0148091850190E00196877070 +:102F4000992780938501D9CF4F81588569857A85E6 +:102F50008B859C850E94C014CFCF0E948314109251 +:102F6000860110928501E7EBF1E086E0DF011D921A +:102F70008A95E9F7C1CF2C960FB6F894DEBF0FBE45 +:102F8000CDBFDF91CF911F910895EF92FF920F93E4 +:102F90001F93CF93DF938C01009709F46CC0F12C41 +:102FA000EE24E394E8012196F8018491843740F4FB +:102FB000843008F051C0813081F0823019F15BC05B +:102FC000853709F444C0A8F19CE7980F903708F0C2 +:102FD00052C08F770E94CE1141C00E5F1F4FFE017D +:102FE000C49180E28C0F883048F4C7708E2D01C0E8 +:102FF000880FCA95EAF70E94A11A14C08C2F0E946C +:1030000006112DC00E5F1F4FFE01C49180E28C0F90 +:10301000883058F4C7708E2D01C0880FCA95EAF722 +:103020000E94A71A0E94C81A1AC08C2F0E94CE11A3 +:1030300016C00E5F1F4FFE01C491CC2381F08FE9B3 +:103040009FE00197F1F700C00000C150F6CF0E5F7E +:103050001F4FFE01F49003C00E9406118E018F2DB8 +:10306000882309F49FCFEFE9FFE03197F1F700C023 +:1030700000008150F5CFDF91CF911F910F91FF900C +:10308000EF90089508956093C1017093C2018093F9 +:10309000C3019093C4010C946F140F931F9300917C +:1030A000C1011091C2012091C3013091C401DC0122 +:1030B000CB01802B912BA22BB32B8093C10190933A +:1030C000C201A093C301B093C4011F910F910C944E +:1030D0006F140F931F930091C1011091C2012091B1 +:1030E000C3013091C401DC01CB0180239123A223D1 +:1030F000B3238093C1019093C201A093C301B09305 +:10310000C4011F910F910C946F140F931F930091A2 +:10311000C1011091C2012091C3013091C401DC01B1 +:10312000CB0180279127A227B3278093C1019093D9 +:10313000C201A093C301B093C4011F910F910C94DD +:103140006F141092BD011092BE011092BF01109237 +:10315000C0010C946F1441E050E060E070E004C0E6 +:10316000440F551F661F771F8A95D2F74093BD0104 +:103170005093BE016093BF017093C0010C946F1413 +:1031800041E050E060E070E004C0440F551F661F4E +:10319000771F8A95D2F78091BD019091BE01A091D1 +:1031A000BF01B091C001482B592B6A2B7B2B409358 +:1031B000BD015093BE016093BF017093C0010C9498 +:1031C0006F1441E050E060E070E004C0440F551F10 +:1031D000661F771F8A95D2F7409550956095709538 +:1031E0008091BD019091BE01A091BF01B091C0013D +:1031F000482359236A237B234093BD015093BE018A +:103200006093BF017093C0010C946F1441E050E0D3 +:1032100060E070E004C0440F551F661F771F8A9559 +:10322000D2F78091BD019091BE01A091BF01B091F4 +:10323000C001482759276A277B274093BD01509337 +:10324000BE016093BF017093C0010C946F140F9383 +:103250001F930091BD011091BE012091BF013091DB +:10326000C001DC01CB01802B912BA22BB32B8093CF +:10327000BD019093BE01A093BF01B093C0011F9107 +:103280000F910C946F140F931F930091BD01109137 +:10329000BE012091BF013091C001DC01CB01802330 +:1032A0009123A223B3238093BD019093BE01A093E9 +:1032B000BF01B093C0011F910F910C946F140F9335 +:1032C0001F930091BD011091BE012091BF0130916B +:1032D000C001DC01CB0180279127A227B32780936F +:1032E000BD019093BE01A093BF01B093C0011F9197 +:1032F0000F910C946F140895CF92DF92EF92FF928A +:103300000F931F93CF93DF938C01C090C101D09096 +:10331000C201E090C301F090C4018091BD01909181 +:10332000BE01A091BF01B091C001C82AD92AEA2AE2 +:10333000FB2ACFE1D0E0D701C6010C2E04C0B69520 +:10334000A795979587950A94D2F780FF06C0B80194 +:103350008C2F0E944808019721F4219760F780E0A4 +:1033600001C08C2FDF91CF911F910F91FF90EF90B3 +:10337000DF90CF900895CF93DF93EC010E947C19EA +:10338000BE010E944808DF91CF910895CB010E94B1 +:10339000BB1908958091C5018595859585950895FA +:1033A0008091C5018770089598E0899F900111244C +:1033B000262B2093C5010C94C0182091C50180953F +:1033C00082238093C501982F977069F430E0482FCD +:1033D000552747FD50952417350729F08595859584 +:1033E00085950C94E11808959091C501977081E03E +:1033F00009F480E0089590910C01992321F09091B7 +:103400000D01911109C020910E0130910F01F901B8 +:1034100032969FEF40E01FC0982F9695969596950F +:103420009F3050F5E0910E01F0910F01E90FF11D71 +:10343000877021E030E0A90102C0440F551F8A9532 +:10344000E2F7CA019181892B818308959F3F39F06A +:103450004F5F4E3041F051915813F8CF0DC05111CC +:10346000F7CF942FF5CF9F3F39F0F901E90FF11D08 +:1034700097FDFA9582830895089590910C01992300 +:1034800021F090910D01911109C020910E01309110 +:103490000F01F9013296205F3F4F1FC0982F96957C +:1034A000969596959F30F0F4E0910E01F0910F0102 +:1034B000E90FF11D877021E030E0A90102C0440F3F +:1034C000551F8A95E2F7CA018095918189238183EE +:1034D00008953196E217F30729F090819813F9CFF8 +:1034E0001082F7CF089581E090E0E0910E01F09115 +:1034F0000F01E80FF91F1082019680319105A9F79D +:1035000008959091D901892B8093D90108958095D0 +:103510009091D90189238093D90108951092D901FE +:1035200008959091D801892B8093D80108958095B2 +:103530009091D80189238093D80108951092D801E1 +:1035400008959091D701892B8093D7010895809594 +:103550009091D70189238093D70108951092D701C4 +:1035600008958093C60108951092C6010895809130 +:103570000E0190910F01FC0131969C01205F3F4F9D +:1035800080E0919191118F5FE217F307D1F70895D1 +:10359000E0910E01F0910F018091D9018083E091BB +:1035A0000E01F0910F0190818091D801892B8083C9 +:1035B000E0910E01F0910F0190818091D701892B4C +:1035C00080838091C601882361F0E0910E01F09123 +:1035D0000F019081892B80830E94B71A811110926C +:1035E000C60180910E0190910F010C94F60F20E01E +:1035F000009739F0AC0141505109842395232F5F86 +:10360000F7CF822F0895CF92DF92EF92FF926C0155 +:10361000EE24FF24C114D104E104F10421F0C70118 +:10362000B60120E101C020E0C72ED82EE92EFF24EC +:10363000C114D104E104F10419F0285FC701B601F7 +:103640006B017C0154E0F694E794D794C7945A95A3 +:10365000D1F7C114D104E104F10419F02C5FC701C2 +:10366000B6016B017C0142E0F694E794D794C794CD +:103670004A95D1F7C114D104E104F10419F02E5F89 +:10368000C701B601DC01CB01B695A7959795879543 +:10369000892B8A2B8B2B09F02F5F822FFF90EF90C5 +:1036A000DF90CF9008958091F101843021F1109244 +:1036B000DB0120E488E190E00FB6F894A8958093B0 +:1036C00060000FBE2093600080E00E94E30883B793 +:1036D000817F846083BF83B7816083BF789488953E +:1036E00083B78E7F83BF88E10FB6F8948093600024 +:1036F000109260000FBE0895089508950E947C1BEB +:103700000E944B030E947D1B0E94400491E08111A6 +:1037100001C090E0892F08950E9483140E94EA0F4F +:103720000C94E30882E084BD93E095BD9AEF97BDC9 +:1037300080936E0008952FB7F8948091DC019091EA +:10374000DD01A091DE01B091DF012FBF0895CF927E +:10375000DF92EF92FF920F931F932FB7F89440914F +:10376000DC015091DD016091DE017091DF012FBF1E +:103770006A017B01EE24FF248C0120E030E0C016BA +:10378000D106E206F30610F4415051099A01281BB4 +:10379000390BC9011F910F91FF90EF90DF90CF90EF +:1037A00008951F920F920FB60F9211248F939F933B +:1037B000AF93BF938091DC019091DD01A091DE0178 +:1037C000B091DF010196A11DB11D8093DC019093A2 +:1037D000DD01A093DE01B093DF01BF91AF919F9116 +:1037E0008F910F900FBE0F901F9018950E94E70CBD +:1037F000F8942FEF87EA91E6215080409040E1F75E +:1038000000C0000087E090EBDC018093FB01909307 +:10381000FC01A093FD01B093FE019CE088E10FB68E +:10382000F894A895809360000FBE90936000FFCF3E +:10383000EF92FF920F931F93CF93DF93D82FCDE09A +:103840008C2F0E94390405E010E0E82EF12CC7010E +:10385000002E02C0959587950A94E2F780FF09C073 +:10386000602F7C2F80E00E94F305D81302C081E016 +:1038700006C00150110958F7C15010F780E0DF91E0 +:10388000CF911F910F91FF90EF900895CF93C82F84 +:103890008CE20E94181C882321F08C2FCF910C946D +:1038A000181C80E0CF910895CF930E949B1D811139 +:1038B00002C00E94811DC5E6C15049F00E944B0321 +:1038C0008FE39CE90197F1F700C00000F5CF89E292 +:1038D0000E94461C811113C18AE20E94461C81117C +:1038E0000E94811D85E00E94461C81110E94F61BEA +:1038F0000E94A61D8093DA0187E00E94461C88235F +:10390000A9F18BE10E94461C882351F08091DA01D5 +:1039100081FB222720F991E0922790FB81F90EC0CC +:103920008EE00E94461C882361F08091DA0182FBC0 +:10393000222720F991E0922790FB82F98093DA0107 +:1039400015C080E10E94461C9091DA01882341F065 +:1039500093FB222720F981E0822780FB93F904C0A2 +:10396000892F809580FB90F99093DA018091DA019C +:103970000E94AA1D0E94B81D8093FA0180EE0E9449 +:10398000461C882341F08091FA01982F909590FB76 +:1039900080F98093FA0189E30E94461C882359F03C +:1039A0008091FA0181FB222720F991E0922790FB78 +:1039B00081F98093FA0182EE0E94461C882359F017 +:1039C0008091FA0182FB222720F991E0922790FB57 +:1039D00082F98093FA0186EE0E94461C882359F0F2 +:1039E0008091FA0183FB222720F991E0922790FB36 +:1039F00083F98093FA0183EE0E94461C882359F0D4 +:103A00008091FA0184FB222720F991E0922790FB14 +:103A100084F98093FA0185E30E94461C882359F0BB +:103A20008091FA0185FB222720F991E0922790FBF3 +:103A300085F98093FA0181E30E94461C882359F09E +:103A40008091FA0186FB222720F991E0922790FBD2 +:103A500086F98093FA0181E10E94461C882359F07F +:103A60008091FA0187FB222720F991E0922790FBB1 +:103A700087F98093FA018091FA010E94BC1D809120 +:103A8000FA0187FB882780F980930D0187E20E9465 +:103A9000461CC82F8EE10E94461C8111C2608FE136 +:103AA0000E94461C8111C46080E20E94461C811164 +:103AB000C86081E20E94461C8111C06182E20E94BE +:103AC000461C8111C06283E20E94461C8111C064C1 +:103AD00084E20E94461C882311F0C06802C0CC23F7 +:103AE00029F08C2F0E94B31D6C2F03C00E94AF1DC4 +:103AF000682F70E080E090E0CF910C944318CF9154 +:103B000008956DEE7EEF80E090E00E94ED2360E08E +:103B100082E090E00E94DB2360E083E090E00E947E +:103B2000DB2360E084E090E00E94DB2360E085E03E +:103B300090E00C94DB2380E090E00E94D52321E00C +:103B40008D3E9E4F09F020E0822F089582E090E0A4 +:103B50000C94CD23682F82E090E00C94DB2383E06B +:103B600090E00C94CD23682F83E090E00C94DB234D +:103B700084E090E00C94CD23682F84E090E00C94D6 +:103B8000DB238091E20180FF0BC06091130185E08F +:103B9000689FB001112475956795759567952BC041 +:103BA00081FF09C06091130185E0689FB001112475 +:103BB0007595679520C082FF07C06091130185E06D +:103BC000689FB001112417C09091E3019923D1F0AF +:103BD00060911201961788F72091130185E0289FC4 +:103BE00090011124929FA001939F500D112470E029 +:103BF000CA010E949F236038710540F46115710568 +:103C000039F002C065E070E0862F08958FE70895CF +:103C100081E008958091E20180FF08C06091110168 +:103C200070E0759567957595679521C081FF06C011 +:103C30006091110170E07595679519C082FF04C00D +:103C40006091110170E010C09091E3019923C1F0DF +:103C5000609110019617A0F780911101899FC00112 +:103C6000112470E00E949F236038710528F46115CB +:103C7000710521F0862F08958FE7089581E008955A +:103C800061E070E0F4CF803F21F40E94C11D819576 +:103C900004C0813F29F40E94C11D8093E60108956C +:103CA000823F21F40E94C11D819504C0833F29F405 +:103CB0000E94C11D8093E5010895893F19F40E9477 +:103CC0000A1E05C08A3F31F40E940A1E8195809326 +:103CD000E70108958B3F21F40E940A1E819504C0DC +:103CE0008C3F29F40E940A1E8093E8010895843FC6 +:103CF00021F48091E401816017C0853F21F4809117 +:103D0000E401826011C0863F21F48091E401846067 +:103D10000BC0873F21F48091E401886005C0883F93 +:103D200031F48091E40180618093E40108958D3F36 +:103D300021F48091E20181600BC08E3F21F48091DB +:103D4000E201826005C08F3F29F48091E201846026 +:103D50008093E2010895803F39F48091E60187FF66 +:103D60006CC01092E60169C0813F29F48091E601A0 +:103D70001816BCF362C09091E501823F29F497FFC9 +:103D80005CC01092E50159C0833F19F41916CCF3B9 +:103D900054C0893F41F48091E70118160CF04DC0E2 +:103DA0001092E7014AC08A3F29F48091E70187FF1A +:103DB00044C0F6CF8B3F39F48091E80187FF3DC0C6 +:103DC0001092E8013AC08C3F29F48091E80118165E +:103DD000BCF333C0843F21F48091E4018E7F17C08F +:103DE000853F21F48091E4018D7F11C0863F21F44D +:103DF0008091E4018B7F0BC0873F21F48091E40127 +:103E0000877F05C0883F31F48091E4018F7E8093E5 +:103E1000E40113C08D3F21F48091E2018E7F0BC03D +:103E20008E3F21F48091E2018D7F05C08F3F29F400 +:103E30008091E2018B7F8093E2018091E501811105 +:103E40000EC08091E60181110AC08091E7018111C5 +:103E500006C08091E801811102C01092E30108952B +:103E600084EE91E00E9401100E949B1B9093E1015F +:103E70008093E00108951F93CF93DF938091E00139 +:103E80009091E1010E94A71BAC019091E30199235D +:103E900021F02091140130E006C0209115018AE044 +:103EA000289F900111244217530708F486C080917F +:103EB000E501C091E601D091E7011091E80181117F +:103EC00007C0C11176C0D11174C0111172C075C084 +:103ED0009F3F19F09F5F9093E301181624F40E940E +:103EE000C11D8093E5018091E50187FF05C00E9417 +:103EF000C11D81958093E5011C1624F40E94C11D0B +:103F00008093E6018091E60187FF05C00E94C11DF4 +:103F100081958093E6016091E501662339F1C091B6 +:103F2000E601CC2319F1772767FD7095872F972F2E +:103F30000E94B02223E333E343E35FE30E941423B0 +:103F40000E947D226093E5016C2F772767FD7095B5 +:103F5000872F972F0E94B02223E333E343E35FE3ED +:103F60000E9414230E947D226093E6011D1624F412 +:103F70000E940A1E8093E7018091E70187FF05C038 +:103F80000E940A1E81958093E701111624F40E9475 +:103F90000A1E8093E8018091E80187FF05C00E9416 +:103FA0000A1E81958093E801DF91CF911F910C94B7 +:103FB000301F9F3F09F08ECF96CFDF91CF911F9199 +:103FC0000895E4EEF1E085E0DF011D928A95E9F7BE +:103FD0001092E3011092E2010895833081F128F4F8 +:103FE000813059F08230D1F00895853009F449C00C +:103FF000B8F1863009F456C0089580911501262F36 +:1040000030E0280F311D2F3F310524F4680F6093F5 +:10401000150108958FEF8093150108958091140183 +:10402000262F30E0280F311D2F3F310524F4680F73 +:104030006093140108958FEF809314010895809187 +:104040001301262F30E0280F311D2F3F310524F4B6 +:10405000680F6093130108958FEF80931301089503 +:1040600080911201262F30E0280F311D2F3F31059E +:1040700024F4680F6093120108958FEF809312016A +:10408000089580911101262F30E0280F311D2F3F18 +:10409000310524F4680F6093110108958FEF809328 +:1040A0001101089580911001262F30E0280F311D55 +:1040B0002F3F310524F4680F6093100108958FEFAE +:1040C000809310010895833011F128F4813049F074 +:1040D000823091F00895853081F120F18630C1F170 +:1040E000089580911501681720F4861B80931501AF +:1040F000089510921501089580911401681720F415 +:10410000861B8093140108951092140108958091E4 +:104110001301681720F4861B8093130108951092F1 +:104120001301089580911201681720F4861B809373 +:1041300012010895109212010895809111016817DB +:1041400020F4861B809311010895109211010895A7 +:1041500080911001681720F4861B80931001089548 +:104160001092100108950F931F938D3109F46BC0C5 +:1041700008F03FC08E3009F47FC0C0F4873009F4E6 +:1041800069C068F4863009F0B1C08091DA01817F9E +:104190008E7F8093DA0181E08093EA01A8C08830A5 +:1041A00009F4A2C08B3009F49FC0A0C0863109F485 +:1041B0009BC078F4803109F472C0813109F096C057 +:1041C0000E94831490910D0181E0892780930D0155 +:1041D0008BC0893109F488C08B3109F087C0809188 +:1041E000DA0181FB222720F991E0922790FB81F9E7 +:1041F0004CC0853309F470C048F4873209F46CC0B0 +:1042000008F459C0893209F467C070C0833438F4A7 +:104210008A3308F04EC0883309F466C067C083341F +:1042200009F45AC0883409F061C00E9483140FEF6A +:1042300013ED20E3015010402040E1F700C00000E2 +:104240000E94F61B51C00E9437220E94EA0F0E9472 +:10425000E3084AC09091DA01892F8095817080FB34 +:1042600090F929F0966098609093DA0140C0997FA8 +:10427000977F9093DA0138C08091DA0182FB222780 +:1042800020F991E0922790FB82F98093DA0199233B +:1042900059F18091DA0181608093DA0125C0809123 +:1042A000DA0183FB222720F991E0922790FB83F922 +:1042B000ECCF895301C08D5141E050E060E070E0E7 +:1042C0008A019B0104C0000F111F221F331F8A9512 +:1042D000D2F7C901B80104C061E070E080E090E06D +:1042E0000E9443180E94831481E001C080E01F9166 +:1042F0000F91089580E0089580E00895CF93C82F2E +:104300008091EA01813079F018F08230E9F187C0BC +:10431000E0910E01F0910F018081813169F08232CC +:1043200009F07FC009C0E0910E01F0910F0180817A +:10433000813111F0823261F48C2F0E947A21811137 +:1043400004C08C2F0E94B3201DC081E090E01AC0F1 +:104350008C2F0E947C21811114C0C43179F048F463 +:10436000CB3079F0C03109F060C082E08093EA017F +:1043700008C0C93219F0C83321F057C01092EA01C1 +:1043800054C081E0817053C0C93289F118F5C4313D +:1043900071F1A8F4C73009F046C08AE08093150196 +:1043A00094E19093140193E0909313018093120190 +:1043B00088E08093110188E28093100134C0CE51CF +:1043C000C63088F5EC2FF0E0E65DFE4F80818093EB +:1043D000E90129C0CE34E9F020F4CB3421F56AE0BC +:1043E00013C0C13579F0C235F1F461E00DC08091A0 +:1043F000E901882319F01092E90115C081E080934A +:10440000EA0115C061E006C08091E9010E94ED1F3C +:104410000AC06AE08091E9010E94632004C0109202 +:10442000EA0180E004C081E002C080E0ABCFCF9120 +:104430000895E1E8F0E08081886080838081816078 +:1044400080838FB7F89493E09093890090ED9093D8 +:1044500088008FBF0895EFE6F0E08081826080835E +:104460000895EFE6F0E080818D7F80830895EFE688 +:10447000F0E0908182E08927808308951F920F9257 +:104480000FB60F9211242F933F934F935F936F9327 +:104490007F938F939F93AF93BF93EF93FF938091FD +:1044A000EB019091EC0101969093EC018093EB016C +:1044B000811103C082E00E94E308E091EC01E695DF +:1044C000E695F0E0EC54FB4FE4918091EB018E1304 +:1044D00003C080E00E94E308FF91EF91BF91AF918C +:1044E0009F918F917F916F915F914F913F912F910C +:1044F0000F900FBE0F901F90189504D06894B111C3 +:104500008DC0089570D088F09F5790F0B92F9927EB +:10451000B751A0F0D1F0660F771F881F991F1AF0CE +:10452000BA95C9F712C0B13081F077D0B1E00895E3 +:1045300074C0672F782F8827B85F39F0B93FCCF364 +:10454000869577956795B395D9F73EF490958095C4 +:10455000709561957F4F8F4F9F4F0895E89409C0E4 +:1045600097FB3EF490958095709561957F4F8F4FA6 +:104570009F4F9923A9F0F92F96E9BB279395F695BC +:10458000879577956795B795F111F8CFFAF4BB0F3A +:1045900011F460FF1BC06F5F7F4F8F4F9F4F16C09E +:1045A000882311F096E911C0772321F09EE8872F28 +:1045B000762F05C0662371F096E8862F70E060E0E4 +:1045C0002AF09A95660F771F881FDAF7880F96955D +:1045D000879597F9089557FD9058440F551F59F046 +:1045E0005F3F71F04795880F97FB991F61F09F3FE0 +:1045F00079F087950895121613061406551FF2CF09 +:104600004695F1DF08C0161617061806991FF1CF58 +:1046100086957105610508940895E894BB2766277F +:104620007727CB0197F908950BD078C069D028F08F +:104630006ED018F0952309F05AC05FC01124EECF58 +:10464000CADFA0F3959FD1F3950F50E0551F629FED +:10465000F001729FBB27F00DB11D639FAA27F00DDB +:10466000B11DAA1F649F6627B00DA11D661F829F02 +:104670002227B00DA11D621F739FB00DA11D621FE7 +:10468000839FA00D611D221F749F3327A00D611D04 +:10469000231F849F600D211D822F762F6A2F1124E6 +:1046A0009F5750408AF0E1F088234AF0EE0FFF1F39 +:1046B000BB1F661F771F881F91505040A9F79E3F70 +:1046C000510570F014C0AACF5F3FECF3983EDCF3C5 +:1046D000869577956795B795F795E7959F5FC1F7AD +:1046E000FE2B880F911D9695879597F9089597F958 +:1046F0009F6780E870E060E008959FEF80EC089588 +:1047000000240A94161617061806090608950024B0 +:104710000A9412161306140605060895092E03942A +:10472000000C11F4882352F0BB0F40F4BF2B11F49E +:1047300060FF04C06F5F7F4F8F4F9F4F089597FBBF +:10474000072E16F4009407D077FD09D00E94B923F4 +:1047500007FC05D03EF4909581959F4F0895709584 +:1047600061957F4F0895EE0FFF1F0590F491E02DA6 +:104770000994AA1BBB1B51E107C0AA1FBB1FA617A8 +:10478000B70710F0A61BB70B881F991F5A95A9F7FA +:1047900080959095BC01CD010895F999FECF92BD09 +:1047A00081BDF89A992780B50895A8E1B0E042E06C +:1047B00050E00C94F523262FF999FECF92BD81BDD0 +:1047C000F89A019700B4021639F01FBA20BD0FB64F +:1047D000F894FA9AF99A0FBE08950196272F0E942D +:1047E000DC230C94DB23DC01CB01FC01F999FECF27 +:1047F00006C0F2BDE1BDF89A319600B40D92415069 +:0A4800005040B8F70895F894FFCF78 +:10480A000220E508730950091C09E8080101C701DB +:10481A0028080A03140A3F4D363975042804F2039E +:10482A00B9034C0365037E039703010203040506DB +:04483A000708090062 +:00000001FF diff --git a/keyboards/ergodox_ez/keymaps/sneako/keymap.c b/keyboards/ergodox_ez/keymaps/sneako/keymap.c new file mode 100644 index 0000000000..0c68631029 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/sneako/keymap.c @@ -0,0 +1,187 @@ +// Based on `default_osx` +// Replace left Bksp with Ctrl/Esc +// Remove the Ctrl from Z and / +#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 + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | = | 1 | 2 | 3 | 4 | 5 | LEFT | | RIGHT| 6 | 7 | 8 | 9 | 0 | - | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Del | Q | W | E | R | T | L1 | | L1 | Y | U | I | O | P | \ | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * |Ctrl/Esc| A | S | D | F | G |------| |------| H | J | K | L |; / L2| LGui | + * |--------+------+------+------+------+------| Hyper| | Meh |------+------+------+------+------+--------| + * | LShift | Z | X | C | V | B | | | | N | M | , | . | / | RShift | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * |Grv/L1| '" |AltShf| Left | Right| | Up | Down | [ | ] | ~L1 | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | App | LGui | | Alt |Ctrl/Esc| + * ,------|------|------| |------+--------+------. + * | | | Home | | PgUp | | | + * | Space|Backsp|------| |------| Tab |Enter | + * | |ace | End | | PgDn | | | + * `--------------------' `----------------------' + */ +// If it accepts an argument (i.e, is a function), it doesn't need KC_. +// Otherwise, it needs KC_* +[BASE] = KEYMAP( // layer 0 : default + // left hand + KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, KC_LEFT, + KC_DELT, KC_Q, KC_W, KC_E, KC_R, KC_T, TG(1), + CTL_T(KC_ESC), KC_A, KC_S, KC_D, KC_F, KC_G, + 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, + ALT_T(KC_APP), KC_LGUI, + KC_HOME, + KC_SPC,KC_BSPC,KC_END, + // right hand + KC_RGHT, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, + TG(1), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, + 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, KC_SLSH, KC_RSFT, + KC_UP, KC_DOWN,KC_LBRC,KC_RBRC, KC_FN1, + KC_LALT, CTL_T(KC_ESC), + KC_PGUP, + KC_PGDN,KC_TAB, KC_ENT + ), +/* Keymap 1: Symbol Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | ! | @ | { | } | | | | | | Up | 7 | 8 | 9 | * | F12 | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | # | $ | ( | ) | ` |------| |------| Down | 4 | 5 | 6 | + | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | % | ^ | [ | ] | ~ | | | | & | 1 | 2 | 3 | \ | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | . | 0 | = | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// SYMBOLS +[SYMB] = KEYMAP( + // left hand + KC_TRNS,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, + KC_TRNS,KC_EXLM,KC_AT, KC_LCBR,KC_RCBR,KC_PIPE,KC_TRNS, + KC_TRNS,KC_HASH,KC_DLR, KC_LPRN,KC_RPRN,KC_GRV, + KC_TRNS,KC_PERC,KC_CIRC,KC_LBRC,KC_RBRC,KC_TILD,KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS, + KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS, + // right hand + KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + KC_TRNS, KC_UP, KC_7, KC_8, KC_9, KC_ASTR, KC_F12, + KC_DOWN, KC_4, KC_5, KC_6, KC_PLUS, KC_TRNS, + KC_TRNS, KC_AMPR, KC_1, KC_2, KC_3, KC_BSLS, KC_TRNS, + KC_TRNS,KC_DOT, KC_0, KC_EQL, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), +/* Keymap 2: Media and mouse keys + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | MsUp | | | | | | | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | |MsLeft|MsDown|MsRght| |------| |------| | | | | | Play | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | | Prev | Next | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | Lclk | Rclk | |VolUp |VolDn | Mute | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | |Brwser| + * | | |------| |------| |Back | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// MEDIA AND MOUSE +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/keyboards/ergodox_ez/keymaps/software_neo2/compiled.hex b/keyboards/ergodox_ez/keymaps/software_neo2/compiled.hex new file mode 100644 index 0000000000..a4aafc1384 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/software_neo2/compiled.hex @@ -0,0 +1,1147 @@ +:100000000C9424020C9468020C9468020C9468020C +:100010000C9468020C9468020C9468020C946802B8 +:100020000C9468020C9468020C94090D0C94DB0D7E +:100030000C9468020C9468020C9468020C94680298 +:100040000C9468020C94E5210C9468020C946802EC +:100050000C9468020C94781B0C9468020C9468024F +:100060000C9468020C9468020C9468020C94680268 +:100070000C9468020C9468020C9468020C94680258 +:100080000C9468020C9468020C9468020C94680248 +:100090000C9468020C9468020C9468020C94680238 +:1000A0000C9468020C9468020C946802480E6A0E64 +:1000B000580F6A0E580FAF0ED20E580F270F3A0F77 +:1000C00009120912381238126E128E12BF13BF13A2 +:1000D0009912BF1349134913B013BF13BF13B913B8 +:1000E00056135613561356135613561356135613C8 +:1000F00056135613561356135613561356135613B8 +:10010000681375137C1383138D1323024C0039007D +:10011000E100640000001E00140004001D714A008C +:1001200039001F001A0016001B734E002A00200021 +:100130000800070006744B002B0021001500090081 +:1001400019004D006400220017000A00050000009D +:100150006574AE0001540000007F0000E300AB00B6 +:100160000154000000770000E20023001C000B0097 +:10017000110000002971240018000D00100050002B +:10018000E60025000C000E00360051002800260075 +:1001900012000F00370052002C002700130033001C +:1001A00038004F0031002D002F003400E5002900F9 +:1001B00000000100010001000100010000003A0000 +:1001C0000100F700FB00010001003B00F400F20019 +:1001D000FA00FD00F5003C00F000F100F900FE001F +:1001E000F4003D00F500F300FC00FF0001003E00BC +:1001F0000100F800F600000001000100010000000D +:1002000001000000010001000100000001000000E9 +:1002100001003F0001000100B400000001004000A7 +:10022000AA00AC00B600010001004100A800AD002A +:10023000B5000100B7004200A900AE00B9000100FE +:10024000B60043000100AB00B7000100010044000C +:100250004500010001000100000016034500720086 +:1002600067006F0044006F007800200045005A00CE +:10027000000016034500720067006F0044006F0025 +:100280007800200045005A00000004030904090218 +:100290006D00040100A0FA0904000001030101003F +:1002A000092111010001223F000705810308000A0E +:1002B00009040100010301020009211101000122CA +:1002C0004D000705820308000A090402000103002B +:1002D00000000921110100012236000705830308EF +:1002E000000A0904030001030000000921110100B4 +:1002F00001223900070584031000011201100100DA +:10030000000008EDFE0713010001020001050109CC +:1003100006A101050719E029E715002501950875D3 +:1003200001810205081901290595057501910295BC +:10033000017503910105071900297715002501951D +:100340007875018102C005010980A10185021601AD +:100350000026B7001A01002AB70075109501810028 +:10036000C0050C0901A1018503160100269C021A93 +:1003700001002A9C02751095018100C00501090247 +:10038000A1010901A100050919012905150025018F +:1003900095057501810295017503810105010930FB +:1003A00009311581257F9502750881060938158167 +:1003B000257F950175088106050C0A3802158125EF +:1003C0007F950175088106C0C005010906A10105D8 +:1003D0000719E029E71500250195087501810295A7 +:1003E0000175088101050819012905950575019117 +:1003F000029501750391010507190029FF150025D4 +:10040000FF950675088100C0000000000000000094 +:10041000000000010204060A0F17202C3A4A5D7101 +:10042000879DB3C7DAE9F5FCFFFCF5E9DAC7B39DB0 +:1004300087715D4A3A2C20170F0A0604020100005A +:10044000000000000000000011241FBECFEFDAE022 +:10045000DEBFCDBF04B603FE24C08091FB019091A6 +:10046000FC01A091FD01B091FE018730904BA740A7 +:10047000B04BB9F41092FB011092FC011092FD01F7 +:100480001092FE0114BE84B7877F84BF88E10FB647 +:10049000F89480936000109260000FBEE0E0FFE3EC +:1004A000099511E0A0E0B1E0E8E5F7E402C00590AD +:1004B0000D92A433B107D9F711E0A4E3B1E001C074 +:1004C0001D92AB3FB107E1F70E944D0A0C94AA239D +:1004D0000C9400001092B9008AE08093B80008954F +:1004E00094EA9093BC009091BC0097FFFCCF909150 +:1004F000B900987F983021F0903111F081E0089593 +:100500008093BB0084E88093BC008091BC0087FF8F +:10051000FCCF8091B900887F883111F0803471F769 +:1005200080E0089584E98093BC008091BC0084FD44 +:10053000FCCF08958093BB0084E88093BC00809139 +:10054000BC0087FFFCCF9091B900987F81E0983282 +:1005500009F480E0089584E88093BC008091BC0099 +:1005600087FFFCCF8091BB0008958091010181112C +:1005700015C080E40E9470028093010181110CC0BB +:1005800082E10E949A0280930101811105C08FEFE0 +:100590000E949A02809301010E94920284B1807F9E +:1005A00084B985B1807F85B98AB1837F8AB98BB1DF +:1005B000837F8BB93E98469808950E94700480937B +:1005C00001010E94B50280B38C7080BB81B3836F40 +:1005D00081BBA5E3B1E0E3E4F1E08EE08E0F119280 +:1005E0001D928E13FCCF0C945A04BF92CF92DF92CF +:1005F000EF92FF920F931F93CF93DF9380910101AE +:10060000882379F0809134018F5F809334018111C8 +:1006100008C00E94700480930101811102C00E94F1 +:10062000020405E311E0C0E0D0E0DD24D39482E0D1 +:10063000C82EEE24E394F12CC730D10500F580914B +:100640000101811164C080E40E9470028093010165 +:10065000811112C082E10E949A02809301018111EE +:100660000BC0C7010C2E01C0880F0A94EAF78095D1 +:100670000E949A02809301010E94920248C0CA30EF +:10068000A1F028F4C83059F0C93061F005C0CC3071 +:1006900089F070F0CD3089F0209A289810C0219A06 +:1006A00029980DC0229A2A980AC0239A2B9807C02D +:1006B000529A01C0539A5B9802C03E9A469890EABB +:1006C0009A95F1F79FB1799902C082E001C080E06C +:1006D00091709D25982B7C9902C084E001C080E038 +:1006E000892B7D9902C038E001C030E0832B7E99D0 +:1006F00002C020E101C020E0822B9FB19095991F9C +:100700009927991F9295990F907E892B0FC0809100 +:100710000101811149C080E40E94700280930101AF +:10072000882379F1B12C0E9492028B2DF8019081DF +:10073000981719F08083C09200010E94B50221969B +:100740000F5F1F4FCE30D10509F076CF80910001A9 +:10075000882361F1815080930001882339F08FE96B +:100760009FE00197F1F700C0000020C0A3E4B1E0D2 +:10077000E5E3F1E0CF01825F91919D938E13FCCF71 +:1007800015C083E10E949A02809301018111CACFB2 +:1007900081E40E947002809301018111C3CF0E9405 +:1007A000AB02B82EB094BFCF80E0C0CF0E9400044F +:1007B00081E0DF91CF911F910F91FF90EF90DF903B +:1007C000CF90BF900895E82FF0E0ED5BFE4F808161 +:1007D000089508950F931F93CF93DF93C3E4D1E05F +:1007E00010E00C2F025F899190E00E949E1A180F72 +:1007F0000C13F9CF812FDF91CF911F910F910895A5 +:100800000C94D00456985E9825982D9826982E988A +:1008100027982F988FEF90E090938900809388001D +:1008200090938B0080938A0090938D0080938C002E +:10083000259A2D9A2FEF80E792E02150804090403A +:10084000E1F700C00000269A2E9A2FEF80E792E091 +:10085000215080409040E1F700C00000279A2F9A75 +:100860002FEF80E792E0215080409040E1F700C0F8 +:10087000000025982D982FEF80E792E021508040CE +:100880009040E1F700C0000026982E982FEF80E7F7 +:1008900092E0215080409040E1F700C0000027988E +:1008A0002F9856985E9825982D9826982E982798D8 +:1008B0002F98089589EA8093800089E080938100D1 +:1008C00024982C983F988AB18F748AB96E98479A69 +:1008D0008BB1806B8BB9769A0E9402040C94CF0482 +:1008E00080E2809301018091510181110EC00E942C +:1008F0006A0281E0809351012FEF83ED90E3215054 +:1009000080409040E1F700C0000080E40E94700247 +:100910008093010181112EC00E949A0280930101EF +:10092000811128C00E949A0280930101811122C086 +:100930008FE30E949A028093010181111BC00E94E3 +:10094000920280E40E94700280930101811112C022 +:100950008CE00E949A028093010181110BC00E94D9 +:100960009A0280930101811105C08FE30E949A02CF +:10097000809301010E94920280910101089561110A +:100980000BC0FC018281882321F085EE0E94AD100E +:1009900003C085EE0E94751180E090E008950895EF +:1009A0006091BD017091BE018091BF019091C00125 +:1009B0000E94AA1A56985E9825982D9826982E98E7 +:1009C00027982F98813019F4269A2E9A08955698D0 +:1009D0005E98089581E0089581E008950C94EC04F8 +:1009E00008950F931F93CF93DF938C01FC01C08177 +:1009F000D181CE010E942319BE010E949A05EC010B +:100A0000B8010E94EE04882309F48DC0F8018281A8 +:100A1000882309F44AC080915D0181111FC0C4314F +:100A2000F0E5DF0709F051C00E94F00481E08093F7 +:100A30005D010E94421B90935C0180935B011092C8 +:100A400054011092560110925501109258011092C3 +:100A5000570110925A011092590165C080915B01B3 +:100A600090915C010E944E1B883C910570F480912E +:100A70005401E82FF0E0EE0FFF1FEB5AFE4FD18339 +:100A8000C0838F5F809354014EC0C43880E5D8077F +:100A900021F0C538D04501F13AC0F80182818823A0 +:100AA00041F01092520182E01EC0C438E0E5DE073A +:100AB00059F580915201811106C086E20E94AD1065 +:100AC00086E20E94751182E01CC0C438F0E5DF07A1 +:100AD00041F3C538D045D9F4F8018281882331F03B +:100AE0001092530180E20E94C4111DC080915301F5 +:100AF000811106C087E20E94AD1087E20E94751145 +:100B000080E20E94CB110FC0C538D04529F381E0A7 +:100B10008093520180935301C801DF91CF911F91BF +:100B20000F910C94EA0480E0DF91CF911F910F9117 +:100B30000895089596E0799FF001112494E5899F26 +:100B4000E00DF11D1124E60FF11DEE0FFF1FE65F12 +:100B5000FE4F859194910895880F991FFC01E657E7 +:100B6000F040859194910895880F991FFC01E65FEC +:100B7000FE4F8591949108950F931F93CF93DF9328 +:100B8000EC01811520E3920750F5C11580E2D807EA +:100B900008F0C3C0CB3BD10590F4C83AD10508F0AA +:100BA0006AC0C53AD10508F05BC0C430D10508F071 +:100BB000D0C1219709F0CAC101E010E00AC2CF3FBD +:100BC000D10511F008F0C5C1C03FD10508F0A2C0A1 +:100BD000CE01805E9109089708F4BBC1B7C1C1304E +:100BE00090E5D90709F4A2C020F5C0318FE4D807F9 +:100BF00070F4C11590E4D90708F094C0C11521E341 +:100C0000D20708F0A3C1DD278E01106CE2C1C11527 +:100C1000D04509F09BC10E942A148FEF94E32CE089 +:100C2000815090402040E1F700C000000E949D1BD1 +:100C3000D0C1C11597E5D90758F4C03121E5D207D5 +:100C400008F01CC1C43180E5D80708F475C07EC126 +:100C5000CE0190578115904108F078C1DF7073C1C3 +:100C6000C53AD10509F477C1C63AD10509F076C174 +:100C700002E810E4AEC1C83AD10509F472C1C93A1C +:100C8000D10509F471C1CA3AD10509F470C1CB3A52 +:100C9000D10509F46FC1CC3AD10509F46EC1CD3A42 +:100CA000D10509F46DC1C03BD10509F46CC1CE3A40 +:100CB000D10509F46BC1CF3AD10509F46AC1C13B32 +:100CC000D10509F469C1C23BD10509F468C1C33B30 +:100CD000D10509F467C1C43BD10509F466C1C53B20 +:100CE000D10509F465C1C63BD10509F464C1C73B10 +:100CF000D10509F463C1C83BD10509F462C1C93B00 +:100D0000D10509F461C1CA3BD10509F460C100E015 +:100D100014E45FC18E0110655CC1CE019F700E941A +:100D2000B40558C1DF708E01106A53C18091DA0199 +:100D300081608093DA014DC10E94421D811102C081 +:100D40000E94281D0E945F1D90E09093FB018093FC +:100D5000FA01C23080E5D80721F48091FA01816060 +:100D600086C0C43090E5D90721F48091FA018260F1 +:100D70007EC0C63020E5D20721F48091FA0184605C +:100D800076C0C83080E5D80719F48091FA0127C0F1 +:100D9000CA3090E5D90721F48091FA01806167C0DB +:100DA000CC3020E5D20721F48091FA0180625FC047 +:100DB000CE3080E5D80721F48091FA01806457C0D5 +:100DC000C03190E5D90721F48091FA0180684FC0C5 +:100DD000C23120E5D20729F48091FA01846088604D +:100DE00046C0C33080E5D80721F48091FA018E7F98 +:100DF0003EC0C53090E5D90721F48091FA018D7F7E +:100E000036C0C73020E5D20721F48091FA018B7FEC +:100E10002EC0C93080E5D80719F48091FA0126C0A8 +:100E2000CB3090E5D90721F48091FA018F7E1FC065 +:100E3000CD3020E5D20721F48091FA018F7D17C0D3 +:100E4000CF3080E5D80721F48091FA018F7B0FC065 +:100E5000C13190E5D90721F48091FA018F7707C05D +:100E6000C331D04531F48091FA018B7F877F809325 +:100E7000FA018091FA010E94631DABC08D2F992762 +:100E80008F70992781309105D9F49E012370332703 +:100E900002C0880F991F2A95E2F79C688E0144E0F2 +:100EA000000F111F4A95E1F700271370802B912B3B +:100EB00053E0CC0FDD1F5A95E1F7C076DD272FC038 +:100EC0008230910531F4DC2FCC278E01016F106A3E +:100ED00080C08330910569F4CE018370992701E0C9 +:100EE00010E002C0000F111F8A95E2F7C8019C684C +:100EF0000FC084309105B9F4CE018370992701E0C9 +:100F000010E002C0000F111F8A95E2F7C8019A682D +:100F100023E0CC0FDD1F2A95E1F7C07ED7708C014E +:100F20000C2B1D2B56C08530910531F4DC2FCC27BE +:100F30008E01046F106A4DC0069709F04AC0CF7148 +:100F4000DD27DC2FCC278E01106243C000E010E0CB +:100F500040C08E013EC001E810E43BC003E810E44D +:100F600038C002EE14E435C009EE14E432C00AEED3 +:100F700014E42FC005EB14E42CC006EB14E429C0E4 +:100F800007EB14E426C00CEC14E423C00DEC14E4CD +:100F900020C003E815E41DC00AE815E41AC002E900 +:100FA00015E417C004E915E414C001E216E411C009 +:100FB00003E216E40EC004E216E40BC005E216E4F8 +:100FC00008C006E216E405C007E216E402C00AE221 +:100FD00016E4C801DF91CF911F910F91089596E01B +:100FE000799FF001112494E5899FE00DF11D1124F2 +:100FF000E60FF11DEE0FFF1FE65FFE4F8591949106 +:10100000803E9105E0F4803C910558F581339105CF +:1010100009F46FC048F48932910509F463C08A323B +:10102000910509F46DC072C089339105E9F08238E9 +:101030009105D1F08533910509F44DC067C0833E19 +:10104000910581F138F4803E9105B9F0823E910519 +:10105000D9F05CC0863E910561F1873E9105A1F112 +:1010600055C00E94AC0508952091FA0120FD02C0F0 +:1010700021FF4CC080EE90E049C08091FA0180FFD2 +:10108000F9CF89E390E042C08091FA0182FF0EC05F +:101090008091FA0184FF03C080E090E037C083EEC6 +:1010A00090E034C08091FA0182FFF2CF82EE90E0AE +:1010B0002DC08091FA0183FF0BC08091FA0184FD5D +:1010C000EBCF87EE90E022C08091FA0183FFF5CF4D +:1010D00086EE90E01BC08091FA0185FF07C089E28F +:1010E00090E014C08091FA0185FFF9CF85E390E08C +:1010F0000DC08091FA0186FF07C08AE290E006C029 +:101100008091FA0186FFF9CF81E390E00E94BC054F +:10111000089508950C94890880916E010895CF93E5 +:10112000DF9300D01F92CDB7DEB79C018091F10113 +:10113000843019F593E099833B832A839093E900E7 +:101140008FEF9091E800815095FD06C095ED9A953E +:10115000F1F700008111F5CF8091E80085FF0DC007 +:1011600040E050E063E070E0CE0101960E94F90A91 +:101170008091E8008E778093E8000F900F900F9099 +:10118000DF91CF910895CF93DF9300D01F92CDB719 +:10119000DEB72091F101243021F522E029839B83E1 +:1011A0008A8383E08093E9008FEF9091E80081507B +:1011B00095FD06C095ED9A95F1F700008111F5CFE8 +:1011C0008091E80085FF0DC040E050E063E070E0F2 +:1011D000CE0101960E94F90A8091E8008E778093F3 +:1011E000E8000F900F900F90DF91CF91089520911C +:1011F000F1012430F1F422E02093E9002FEF309147 +:10120000E800215035FD06C035ED3A95F1F70000B4 +:101210002111F5CF2091E80025FF0BC040E050E000 +:1012200065E070E00E94F90A8091E8008E77809373 +:10123000E8000895CF93DF93EC019091F101943091 +:1012400009F046C080910C018823D9F080910D01EE +:101250008823B9F09093E9008FEF9091E8008150D6 +:1012600095FD06C095E19A95F1F700008111F5CF43 +:101270008091E80085FF2CC040E050E060E170E024 +:1012800017C081E08093E9008FEF9091E8008150D2 +:1012900095FD06C095ED9A95F1F700008111F5CF07 +:1012A0008091E80085FF14C040E050E068E070E005 +:1012B000CE010E94F90A8091E8008E778093E800C1 +:1012C00080E1FE01AEE5B1E001900D928A95E1F773 +:1012D000DF91CF9108958091F001811109C00E94A2 +:1012E0008E0C0E94EB0C8091E20084608093E200FF +:1012F00008951092F001089508950C94D2210E944F +:10130000331B0E94D8210E94910F0C948A0842E05E +:1013100061EC81E00E94080C42E061EC82E00E94F6 +:10132000080C42E061EC83E00E94080C42E161ECB1 +:1013300084E00C94080C8091F301833009F455C0CB +:1013400030F4813071F0823009F48EC008958A3013 +:1013500009F47AC08B3009F460C0893009F09CC070 +:1013600020C08091F201813A09F096C08091E80096 +:10137000877F8093E8008091F6019091F701892B97 +:1013800021F460E18EE591E003C060E080E090E050 +:1013900070E00E94440B8091E8008B778093E80016 +:1013A00008958091F201813209F076C08091F601B2 +:1013B0009091F701009719F0039709F06DC08091A3 +:1013C000E800877F8093E8008091E80082FD05C0F7 +:1013D0008091F1018111F8CF5FC08091F10080937D +:1013E0006E018091E8008B7753C08091F201813AC1 +:1013F00009F052C08091F6019091F701892B09F014 +:101400004BC08091E800877F8093E8008091E800DE +:1014100080FFFCCF80910C0136C08091F2018132B7 +:10142000D9F58091F6019091F701892BA9F580916A +:10143000E800877F8093E8000E943D0C8091F401D2 +:1014400080930C010C942A148091F201813221F5D1 +:101450008091E800877F8093E8000E943D0C809196 +:10146000F50180936F0108958091F201813AA1F412 +:101470008091E800877F8093E8008091E80080FFFA +:10148000FCCF80916F018093F1008091E8008E770E +:101490008093E8000C943D0C089584B7877F84BF47 +:1014A00088E10FB6F89480936000109260000FBE40 +:1014B00090E080E80FB6F89480936100909361000B +:1014C0000FBE0E94E00F0E948E0C0E94EB0C8091D8 +:1014D000E20084608093E20078940E94710F0E9481 +:1014E000E20F82E091E00E948C0F0E94C021809167 +:1014F000F101853069F40E94FA1A8091EF01882386 +:10150000B1F30E94251B882391F30E94E30AEFCFD9 +:101510000E94E80FECCF292F332723303105C9F083 +:1015200064F42130310581F02230310509F043C0E7 +:101530008DE690E02EE832E042C021323105F1F034 +:101540002232310541F137C082E190E02BEF32E0E9 +:1015500036C099278130910541F08230910541F0E4 +:10156000892B49F5EAE8F2E005C0E2E7F2E002C0C3 +:10157000EAE5F2E0849190E09F0121C06430D8F464 +:10158000E62FF0E0EE0FFF1FEE5DFE4F2081318170 +:1015900089E090E014C0643070F470E0FB01EE0F5D +:1015A000FF1FE65EFE4F20813181FB01EA5EFE4FA8 +:1015B000808190E004C080E090E020E030E0FA011B +:1015C00031832083089580E189BD82E189BD09B41A +:1015D00000FEFDCF8091D8008F7D8093D800809150 +:1015E000E00082608093E0008091E00081FDFCCF0C +:1015F0000895CF92DF92EF92FF920F931F93CF93B4 +:10160000DF93EC018B016A010E945C0C811133C0F5 +:10161000C114D10439F0F60180819181081B190BA6 +:10162000C80FD91FE12CF12C0115110519F180917A +:10163000E80085FD16C08091E8008E778093E80071 +:10164000C114D10449F0F60180819181E80EF91EA0 +:10165000F182E08285E00FC00E945C0C882321F3B8 +:101660000AC089918093F10001501109FFEFEF1A30 +:10167000FF0ADACF80E0DF91CF911F910F91FF90A9 +:10168000EF90DF90CF9008952091F8013091F9010B +:101690002617370748F06115710539F42091E800E5 +:1016A0002E772093E80001C0B90140E06115710573 +:1016B000A9F12091F101222309F443C0253009F456 +:1016C00042C02091E80023FD40C02091E80022FDA7 +:1016D00032C02091E80020FFE9CF4091F300209133 +:1016E000F20030E0342BFC01CF016115710559F097 +:1016F0002830310540F481918093F10061507109E7 +:101700002F5F3F4FF1CF41E02830310509F040E035 +:101710002091E8002E772093E800C8CF4111C9CF6F +:101720000AC08091F101882361F0853061F08091D9 +:10173000E80083FD0AC08091E80082FFF2CF80E0DC +:10174000089582E0089583E0089581E0089520914E +:10175000F8013091F9012617370748F06115710536 +:1017600039F42091E8002E772093E80001C0B901F8 +:10177000FC0120E06115710591F18091F101882350 +:1017800009F440C0853009F43FC08091E80083FD32 +:101790003DC08091E80082FD2FC08091E80080FF6D +:1017A000E9CF2091F3008091F20090E0922B611537 +:1017B000710559F08830910540F424912093F1008F +:1017C0003196615071090196F2CF21E0089709F036 +:1017D00020E08091E8008E778093E800CBCF211144 +:1017E000CCCF0AC08091F101882361F0853061F08F +:1017F0008091E80083FD0AC08091E80082FFF2CF6B +:1018000080E0089582E0089583E0089581E00895DE +:10181000982F973058F59093E900981739F0709108 +:10182000EC002091ED005091F00003C0242F762FA2 +:1018300050E021FF19C03091EB003E7F3093EB0068 +:101840003091ED003D7F3093ED003091EB00316041 +:101850003093EB007093EC002093ED005093F00078 +:101860002091EE0027FF07C09F5FD3CF8F7080933A +:10187000E90081E0089580E008958091F20187FFFA +:1018800011C08091E80082FD05C08091F1018111B5 +:10189000F8CF11C08091E8008B770BC08091F101E7 +:1018A000882349F08091E80080FFF8CF8091E8001C +:1018B0008E778093E80008952091E4003091E50050 +:1018C00095E64091EC00842F817040FF22C080910A +:1018D000E80080FD1CC08091F101882391F08530E3 +:1018E00091F08091EB0085FD10C04091E400509193 +:1018F000E5004217530729F39A01915011F784E04C +:10190000089582E0089583E0089581E0089580E0DD +:1019100008954091E80042FFDECF08950E94FC0C3C +:101920000E94040DE0EEF0E0808181608083E8EDAC +:10193000F0E080818F77808319BCA7EDB0E08C91B7 +:101940008E7F8C9380818F7E80831092F00108952A +:101950000F931F93CF93DF930E94FC0C0E94040D02 +:10196000C8EDD0E088818F778883888180688883FC +:1019700088818F7D888319BC1092F1011092ED014E +:101980001092EF011092EE0100EE10E0F80180815C +:101990008B7F808388818160888342E060E080E083 +:1019A0000E94080CE1EEF0E080818E7F8083E2EE01 +:1019B000F0E0808181608083808188608083F8018D +:1019C00080818E7F8083888180618883DF91CF9141 +:1019D0001F910F910895E8EDF0E080818F7E808364 +:1019E000E7EDF0E080818160808384E082BF81E068 +:1019F0008093F0010C94A80CE8EDF0E080818E7FDC +:101A000080831092E20008951092DA001092E100B3 +:101A100008951F920F920FB60F9211242F933F93A8 +:101A20004F935F936F937F938F939F93AF93BF93E6 +:101A3000EF93FF938091E10082FF0BC08091E20061 +:101A400082FF07C08091E1008B7F8093E1000E94BC +:101A5000700F8091DA0080FF1FC08091D80080FF56 +:101A60001BC08091DA008E7F8093DA008091D900CC +:101A700080FF0DC080E189BD82E189BD09B400FE0F +:101A8000FDCF81E08093F1010E946B0905C019BC74 +:101A90001092F1010E9479098091E10080FF19C044 +:101AA0008091E20080FF15C08091E2008E7F8093DC +:101AB000E2008091E20080618093E2008091D80092 +:101AC00080628093D80019BC85E08093F1010E9468 +:101AD0007D098091E10084FF30C08091E20084FFA5 +:101AE0002CC080E189BD82E189BD09B400FEFDCF33 +:101AF0008091D8008F7D8093D8008091E1008F7E07 +:101B00008093E1008091E2008F7E8093E2008091DB +:101B1000E20081608093E2008091ED01882311F062 +:101B200084E007C08091E30087FD02C081E001C02E +:101B300083E08093F1010E947F098091E10083FF9F +:101B400029C08091E20083FF25C08091E100877F5A +:101B50008093E10082E08093F1011092ED01809189 +:101B6000E1008E7F8093E1008091E2008E7F809380 +:101B7000E2008091E20080618093E20042E060E058 +:101B800080E00E94080C8091F00088608093F00053 +:101B90000E947C09FF91EF91BF91AF919F918F912E +:101BA0007F916F915F914F913F912F910F900FBE59 +:101BB0000F901F9018951F920F920FB60F9211243D +:101BC0002F933F934F935F936F937F938F939F9345 +:101BD000AF93BF93CF93DF93EF93FF93C091E9004F +:101BE000CF708091EC00D82FD17080FDD0E810929A +:101BF000E9008091F000877F8093F00078940E9444 +:101C00001F0E1092E9008091F00088608093F00030 +:101C1000CD2BCF70C093E900FF91EF91DF91CF9171 +:101C2000BF91AF919F918F917F916F915F914F91F4 +:101C30003F912F910F900FBE0F901F9018951F93FB +:101C4000CF93DF93CDB7DEB7AA970FB6F894DEBF78 +:101C50000FBECDBFE2EFF1E088E08E0F9091F10072 +:101C600091938E13FBCF0E949B098091E80083FF24 +:101C70001FC18091F2019091F301492F50E04A3049 +:101C8000510508F015C1FA01EA5AFF4F0C945A2386 +:101C9000803881F0823809F00BC18091F6018F7095 +:101CA0008093E9008091EB0085FB882780F91092F2 +:101CB000E90006C08091EE019091EF0191118260E0 +:101CC0009091E800977F9093E8008093F100109244 +:101CD000F100C8C0282F2D7F09F0EAC0882319F031 +:101CE000823061F0E5C08091F401813009F0E0C0FC +:101CF000933009F080E08093EF012BC08091F401D4 +:101D0000811127C08091F6018F7009F4D1C08093B2 +:101D1000E9002091EB0020FF1CC0933021F480915A +:101D2000EB00806214C09091EB0090619093EB0007 +:101D300021E030E0A90102C0440F551F8A95E2F767 +:101D40004093EA001092EA008091EB008860809353 +:101D5000EB001092E9008091E800877F86C0811136 +:101D6000A7C01091F4011F778091E3008078812B48 +:101D70008093E3008091E800877F8093E8000E94D1 +:101D80003D0C8091E80080FFFCCF8091E3008068EB +:101D90008093E300111102C082E001C083E08093D0 +:101DA000F10186C08058823008F082C08091F40131 +:101DB0009091F5018C3D53E0950779F583E08A8396 +:101DC0008AE289834FB7F894DE01139620E03EE063 +:101DD00051E2E32FF0E050935700E49120FF03C05D +:101DE000E295EF703F5FEF708E2F90E0EA3010F0D9 +:101DF000C79601C0C0968D939D932F5F243149F7FC +:101E00004FBF8091E800877F8093E8006AE270E02E +:101E1000CE0101960E94440B14C0AE014F5F5F4F8C +:101E20006091F6010E948B0ABC01009709F440C042 +:101E30009091E800977F9093E80089819A810E94B1 +:101E4000A70B8091E8008B778093E80031C0803841 +:101E500079F58091E800877F8093E8008091ED011B +:101E60008093F1008091E8008E778093E8000E94D3 +:101E70003D0C1EC081111CC09091F4019230C0F441 +:101E80008091E800877F8093E8009093ED010E94A5 +:101E90003D0C8091ED01811106C08091E30087FD2A +:101EA00002C081E001C084E08093F1010E948709B3 +:101EB0008091E80083FF0AC08091E800877F8093CB +:101EC000E8008091EB0080628093EB00AA960FB649 +:101ED000F894DEBF0FBECDBFDF91CF911F91089563 +:101EE0000895CF938091F1018823A1F0C091E9007A +:101EF000CF709091EC00892F817090FD80E8C82B05 +:101F00001092E9008091E80083FD0E941F0ECF70BF +:101F1000C093E900CF910895909375018093740167 +:101F20000895E0917401F0917501309721F00190CE +:101F3000F081E02D099480E00895E0917401F09122 +:101F40007501309721F00280F381E02D0994089506 +:101F5000E0917401F0917501309721F00480F581D2 +:101F6000E02D099408952091720130917301821738 +:101F7000930771F09093730180937201E091740163 +:101F8000F0917501309721F00680F781E02D0994DA +:101F9000089520917001309171018217930771F0BB +:101FA0009093710180937001E0917401F09175013B +:101FB000309721F00084F185E02D0994089508956B +:101FC0000C94DF0F0E94391B0E94DD020C94FB1B56 +:101FD0009F92AF92BF92CF92DF92EF92FF920F93B8 +:101FE0001F93CF93DF9300D000D000D0CDB7DEB7E2 +:101FF0000E94F5020DE010E0AA24A394B12C902ECB +:10200000802F0E94E303980129583E4F6901F9018E +:10201000F080F826A1F40150110988F78FEF898329 +:102020008A831B820E94421B8160782F9D838C8350 +:1020300049815A816B818D810E947F102FC09091C0 +:10204000DA0191FF04C08E830E94E9038E8125E0AE +:1020500030E0A501022E01C0440F0A94EAF7E42EF5 +:102060004F21C1F029839A828E2191E009F490E0FA +:102070009B830E94421B8160782F9D838C834981C2 +:102080005A816B818D810E947F10F6018081E82644 +:10209000E08204C021503109E0F6BDCF0E94E21E6B +:1020A000109176010E94910F1817B9F00E94910FBC +:1020B0008093760126960FB6F894DEBF0FBECDBF93 +:1020C000DF91CF911F910F91FF90EF90DF90CF9014 +:1020D000BF90AF909F900C948A0826960FB6F89404 +:1020E000DEBF0FBECDBFDF91CF911F910F91FF904B +:1020F000EF90DF90CF90BF90AF909F900895CF93D7 +:10210000DF93CDB7DEB72B970FB6F894DEBF0FBEC7 +:10211000CDBF4F83588769877A878B87DE011196F9 +:1021200086E0FD0111928A95E9F785E0FE01379678 +:1021300001900D928A95E1F749815A816B817C81EA +:102140008D819E810E94C8162B960FB6F894DEBF33 +:102150000FBECDBFDF91CF910895CF93882309F4AF +:10216000C2C0C82F823859F40E94910F81FDBBC0B4 +:1021700089E30E94A2190E946F1A89E30CC0833878 +:1021800079F40E94910F80FDAEC083E50E94A219F0 +:102190000E946F1A83E50E94E419CF910C946F1A84 +:1021A000843859F40E94910F82FD9DC087E40E94FB +:1021B000A2190E946F1A87E4EECF8CEF8C0F813A40 +:1021C00048F48C2F0E94252181118DC08C2F0E94F4 +:1021D000A219E3CF80E28C0F883048F4C77081E009 +:1021E00001C0880FCA95EAF70E94281AD6CF8BE55E +:1021F0008C0F833078F4C53A29F0C63A31F083E881 +:1022000090E005C081E890E002C082E890E0CF91C4 +:102210000C94B30F88E58C0F833108F064C0C83A82 +:1022200039F1C93A41F1CA3A49F1CB3A51F1CC3AC4 +:1022300059F1CD3A61F1C03B69F1CE3A71F1CF3A33 +:1022400079F1C13B81F1C23B89F1C33B91F1C43BC0 +:1022500099F1C53BA1F1C63BA9F1C73BB1F1C83B20 +:10226000B9F1C93BC1F1CA3BC9F180E090E038C087 +:1022700082EE90E035C089EE90E032C08AEE90E0C8 +:102280002FC085EB90E02CC086EB90E029C087EB57 +:1022900090E026C08CEC90E023C08DEC90E020C054 +:1022A00083E891E01DC08AE891E01AC082E991E0DC +:1022B00017C084E991E014C081E292E011C083E28A +:1022C00092E00EC084E292E00BC085E292E008C08A +:1022D00086E292E005C087E292E002C08AE292E0E4 +:1022E000CF910C94C90FCF910895882309F44BC066 +:1022F000823859F40E94910F81FF45C089E30E9402 +:10230000A2190E946F1A89E30CC0833871F40E94ED +:10231000910F80FF38C083E50E94A2190E946F1AB6 +:1023200083E50E94E4190C946F1A843859F40E94D2 +:10233000910F82FF28C087E40E94A2190E946F1AA1 +:1023400087E4EFCF9CEF980F913A58F390E2980F03 +:10235000983050F4877091E001C0990F8A95EAF7A0 +:10236000892F0E942E1ADFCF9BE5980F933020F41F +:1023700080E090E00C94B30F885A833120F480E021 +:1023800090E00C94C90F0895882321F00E94281A28 +:102390000C946F1A0895882321F00E942E1A0C9431 +:1023A0006F1A08957F928F929F92AF92BF92CF92B1 +:1023B000DF92EF92FF920F931F93CF93DF931F92C1 +:1023C000CDB7DEB77C01C62E772EFC0105810295C4 +:1023D0000F70128111110E94451A0E949B198823C7 +:1023E00079F0112369F080E28C0D883048F082E0AA +:1023F0000E9484190E949B1991E0D82ED92601C011 +:10240000D12CE72DE295EF70F0E0E05AFF4F0C94ED +:102410005A23872D807F072D0F70882311F0029596 +:10242000007F112389F0002309F490C180E28C0D14 +:10243000883020F4802F0E94281A03C0802F0E9429 +:10244000381A0E946F1A82C18C2D0E9475110023C8 +:1024500009F495C180E28C0D883020F4802F0E9411 +:102460002E1A03C0802F0E943E1A0E946F1A87C145 +:10247000972D907F872D8F70903211F08295807FFD +:10248000CC2021F0F1E0CF16B1F01EC0112349F0AD +:10249000002309F414C1013009F011C10E94581A37 +:1024A0006EC1002319F0013009F469C189830E94CB +:1024B0005B1A89810AC1112321F0023008F05FC143 +:1024C000FEC001115CC101C1112321F0002309F4F8 +:1024D000F6C03CC1002309F4F8C03EC1872D8695A3 +:1024E0008695837090E0009719F0019761F047C1DD +:1024F000112321F08C2D972D937002C080E090E085 +:102500000E94B30F3CC1112321F08C2D972D9370A5 +:1025100002C080E090E00E94C90F31C18C2D1123D0 +:1025200019F00E94EA1D02C00E94521E0E94D71E8E +:1025300026C1872D837009F052C0111120C18C2D46 +:10254000829586958770880F880F9C2D9F70892EA5 +:10255000912CA12CB12C082E04C0880C991CAA1C0B +:10256000BB1C0A94D2F7C4FE14C00FE010E020E0B8 +:1025700030E0B901A80104C0440F551F661F771F42 +:102580008A95D2F7CB01BA016095709580959095A8 +:1025900003C060E070E0CB01272D269526952370BF +:1025A00030E02230310569F02330310589F06829A7 +:1025B00079298A299B292130310571F00E94101850 +:1025C000DEC0682979298A299B290E942C18D7C046 +:1025D0000E941018C501B4010E94F417D0C0112345 +:1025E00019F0872D817001C08695882309F4C7C032 +:1025F0008C2D829586958770880F880F9C2D9F70F3 +:10260000892E912CA12CB12C082E04C0880C991C69 +:10261000AA1CBB1C0A94D2F7C4FE14C00FE010E041 +:1026200020E030E0B901A80104C0440F551F661F27 +:10263000771F8A95D2F7CB01BA0160957095809586 +:10264000909503C060E070E0CB01272D269526957C +:102650002370422F50E04230510569F0433051055C +:1026600089F0682979298A299B294130510571F01F +:102670000E94EA1884C0682979298A299B290E9426 +:1026800006197DC00E94EA18C501B4010E94CE1847 +:1026900076C08C2D90E0FC01E05EF109E531F1059A +:1026A00008F050C0E059FF4F0C945A230C2D0F70C6 +:1026B000872D8F71112331F00E946718802F0E949F +:1026C000C4115DC00E948818802F0E94CB1157C092 +:1026D000112339F0011153C0872D8F710E94AD185D +:1026E0004EC0023008F04BC0F7CF112339F0872DD0 +:1026F0008F710E94671843C01123C9F3872D8F7112 +:102700000E9488183CC0112329F0872D8F710E94E8 +:10271000521835C00E94481832C0112351F0172DAD +:102720001F71812F0E94671863E0812F0E947B191F +:1027300026C081E00E948419023008F182E00E94E4 +:1027400084191DC0112331F0002389F28C2D0E94C1 +:10275000AD1015C0002391F28C2D0E9475110FC091 +:10276000472D4F706C2DC7010E94BF040E946C174B +:1027700006C0472D4F706C2DC7010E949905DD20C2 +:10278000F9F00E94771980FD1BC0F70112820E94A8 +:1027900071190E946718C7010E94EF130E947119F6 +:1027A0000F90DF91CF911F910F91FF90EF90DF90ED +:1027B000CF90BF90AF909F908F907F900C9488188F +:1027C0000F90DF91CF911F910F91FF90EF90DF90CD +:1027D000CF90BF90AF909F908F907F9008950F9370 +:1027E0001F93CF93DF93EC01888199812B813C81EA +:1027F000232BB9F09F3F11F48F3F99F0CE010E9437 +:10280000F104882371F0688179818A810E946D19B1 +:102810008C010E9422190E94E917B801CE010E9482 +:10282000D211DF91CF911F910F9108950E94451A07 +:102830000E94551A0E941A1A0E946F1A0E94881F3D +:102840000E94D71E80E090E00E94B30F80E090E0ED +:102850000C94C90F0E94351A0C9416140E94621928 +:10286000292F22952F7030E02C3031054CF42A307E +:1028700031056CF42250310922303105A8F407C02B +:102880002C30310569F02F30310551F00DC0803FFB +:1028900069F018F4803E40F409C0843F29F406C072 +:1028A00093FB882780F9089580E0089581E00895DA +:1028B000CF93DF9300D000D01F92CDB7DEB70F903B +:1028C0000F900F900F900F90DF91CF910895CF93BD +:1028D000DF9300D000D000D0CDB7DEB726960FB67C +:1028E000F894DEBF0FBECDBFDF91CF9108951F9347 +:1028F000CF93DF93C091850116E080918601C817C0 +:1029000099F0D0E01C9FF0011D9FF00D1124E957B4 +:10291000FE4F4081518162817381848195810E9443 +:1029200067142196C770E9CFDF91CF911F91089569 +:102930004091B7015091B8016091B9017091BA010D +:102940008091BB019091BC010C9467148091BC01F3 +:1029500082958F7009F054C08091B901882309F4E1 +:102960004FC080918501A09186016091B70170915F +:10297000B8014091BA015091BB01B6E08A1709F441 +:102980003FC090E041155105C1F17F3F11F46F3F09 +:10299000A1F1B89FF001B99FF00D1124E957FE4F46 +:1029A000218172132AC02081621327C02281211144 +:1029B00024C0238134812417350710F421503109B4 +:1029C000241B350B283C3105C0F42091BC012F702D +:1029D00020612093BC0126E0289FF001299FF00D83 +:1029E0001124E457FE4F80818F708061808387EBD4 +:1029F00091E00E94EF130C94771401968770BECF7C +:102A00000895CF92DF92EF92FF920F931F93CF938F +:102A1000DF93CDB7DEB762970FB6F894DEBF0FBE77 +:102A2000CDBF8C0185E0F801DE011D9601900D926D +:102A30008A95E1F7D8014C9111965C911197129605 +:102A40006C9112971396CD90DC9014973091B7014A +:102A50007091B8018091BA019091BB01009709F47F +:102A60006BC17F3F19F43F3F09F466C1E090B901A3 +:102A7000EE2009F4C0C02091BC01C816D90628F088 +:102A8000F601E81BF90BCF0104C0809590958C0DE1 +:102A90009D1DFF24F394883C910578F0F12C207F54 +:102AA00009F0C6C07C2DD98AC88A89890E94581429 +:102AB00087EB91E00E94EF13B1C0822F807F09F075 +:102AC00046C0751314C0341312C0611110C02F70AA +:102AD00020612093BC010E94981487EB91E00E9432 +:102AE000EF138091BC01D80115968C932EC0CD2890 +:102AF00019F15F3F11F44F3FF9F0F62E61111CC040 +:102B0000809185012091860136E0821709F45AC030 +:102B100090E0389FF001399FF00D1124E957FE4FE6 +:102B20007181571306C07081471303C07281711100 +:102B300003C001968770E9CFF62E662309F418C109 +:102B40008091BC0181608093BC01F12C11C175138F +:102B500008C0341306C0611104C08091BC01D801C3 +:102B6000C3C04D875E878D859E856A8B0E942E141B +:102B70006A898823E1F16623D1F12091BC01822F7B +:102B800082958F7090E0029774F08091B7019091D8 +:102B9000B80198878F831986DB86CA862C87CE0179 +:102BA00007960E94EF1386E0F801A7EBB1E00190D1 +:102BB0000D928A95E1F70E94A6140E949814FF24B2 +:102BC000F394D6C04D875E878D859E850E946219DD +:102BD000292F22952F7030E0223031050CF0BCC037 +:102BE0009F7009F0B6C0805E883008F4C1C0C8018B +:102BF0000E94EF13E4CFC816D90608F453C0F601BB +:102C0000E81BF90BCF01883C910508F450C0F12C6A +:102C10007C2DD98AC88A89890E945814E7EBF1E093 +:102C200086E0DF011D928A95E9F70E949814A0C002 +:102C3000751314C0341312C0611110C08091BC010F +:102C4000F8018583C8010E94EF1386E0E7EBF1E00D +:102C5000DF011D928A95E9F7FE2C8AC04D875E87B9 +:102C60008D859E856A8B0E942E146A89882309F4BB +:102C7000BECF662309F4BBCF2091BC01822F829581 +:102C80008F7090E002970CF48ECF8091B7019091F5 +:102C9000B8019A8389831B82DD82CC822E83CE0188 +:102CA00001967FCF809590958C0D9D1DACCFF62E13 +:102CB000662309F49CCF75132EC034132CC02091C9 +:102CC000BC0120FD1FC0822F82958F70D9F0D801E2 +:102CD00015962C9315978F3049F08F5F982F92950A +:102CE000907F822F8F70892B15968C93C8010E943C +:102CF000EF1386E0F801A7EBB1E001900D928A9501 +:102D0000E1F793CF86E0F801A7EBB1E001900D92D7 +:102D10008A95E1F72DC04D875E878D859E850E943F +:102D20002E14811140CF8091BC0181608093BC0141 +:102D3000C8010E94EF131CC0662309F458CF4D87C9 +:102D40005E878D859E850E942E14882309F44FCFBF +:102D50002ACF811148CF0CC0243031050CF047CF69 +:102D60009F7009F440CFF8019581907F09F03BCF27 +:102D70008F2D62960FB6F894DEBF0FBECDBFDF91E8 +:102D8000CF911F910F91FF90EF90DF90CF9008951A +:102D90001F93CF93DF93CDB7DEB72C970FB6F89480 +:102DA000DEBF0FBECDBF4F83588769877A878B8779 +:102DB0009C87CE0107960E940115882369F08F81B8 +:102DC00098852A853B85232BF1F19F3F09F063C04D +:102DD0008F3F09F060C037C086E0FE013796DE0104 +:102DE000119601900D928A95E1F76F817885EA85B9 +:102DF000FB85309741F17F3F11F46F3F21F1209126 +:102E0000860130E0C90101968770992740918501BC +:102E100050E08417950709F447C069837A83FD83DE +:102E2000EC8396E0929FD001939FB00D1124A95797 +:102E3000BE4FFE01319601900D929A95E1F7809375 +:102E400086010E94771416E0809185019091860199 +:102E50008917C1F1189FC001112489579E4F0E9404 +:102E60000115882379F1E09185011E9FF00111245D +:102E7000E957FE4F40815181628173818481958140 +:102E80000E9467148091850190E0019687709927D0 +:102E900080938501D9CF4F81588569857A858B8547 +:102EA0009C850E946714CFCF0E942A14109286013D +:102EB00010928501E7EBF1E086E0DF011D928A9533 +:102EC000E9F7C1CF2C960FB6F894DEBF0FBECDBF89 +:102ED000DF91CF911F910895EF92FF920F931F936F +:102EE000CF93DF938C01009709F46CC0F12CEE2492 +:102EF000E394E8012196F8018491843740F484300A +:102F000008F051C0813081F0823019F15BC0853703 +:102F100009F444C0A8F19CE7980F903708F052C01C +:102F20008F770E94751141C00E5F1F4FFE01C49143 +:102F300080E28C0F883048F4C7708E2D01C0880F56 +:102F4000CA95EAF70E94481A14C08C2F0E94AD104F +:102F50002DC00E5F1F4FFE01C49180E28C0F8830A0 +:102F600058F4C7708E2D01C0880FCA95EAF70E94E9 +:102F70004E1A0E946F1A1AC08C2F0E94751116C02B +:102F80000E5F1F4FFE01C491CC2381F08FE99FE0BB +:102F90000197F1F700C00000C150F6CF0E5F1F4F40 +:102FA000FE01F49003C00E94AD108E018F2D882386 +:102FB00009F49FCFEFE9FFE03197F1F700C000007F +:102FC0008150F5CFDF91CF911F910F91FF90EF903E +:102FD000089508956093C1017093C2018093C30165 +:102FE0009093C4010C9416140F931F930091C10188 +:102FF0001091C2012091C3013091C401DC01CB01C9 +:10300000802B912BA22BB32B8093C1019093C201F3 +:10301000A093C301B093C4011F910F910C94161497 +:103020000F931F930091C1011091C2012091C30120 +:103030003091C401DC01CB0180239123A223B3236F +:103040008093C1019093C201A093C301B093C401C6 +:103050001F910F910C9416140F931F930091C101AF +:103060001091C2012091C3013091C401DC01CB0158 +:1030700080279127A227B3278093C1019093C20193 +:10308000A093C301B093C4011F910F910C94161427 +:103090001092BD011092BE011092BF011092C001AA +:1030A0000C94161441E050E060E070E004C0440F5E +:1030B000551F661F771F8A95D2F74093BD01509325 +:1030C000BE016093BF017093C0010C94161441E0DF +:1030D00050E060E070E004C0440F551F661F771F8A +:1030E0008A95D2F78091BD019091BE01A091BF0158 +:1030F000B091C001482B592B6A2B7B2B4093BD010B +:103100005093BE016093BF017093C0010C941614DC +:1031100041E050E060E070E004C0440F551F661FBE +:10312000771F8A95D2F7409550956095709580915C +:10313000BD019091BE01A091BF01B091C001482393 +:1031400059236A237B234093BD015093BE016093B2 +:10315000BF017093C0010C94161441E050E060E090 +:1031600070E004C0440F551F661F771F8A95D2F781 +:103170008091BD019091BE01A091BF01B091C001AD +:10318000482759276A277B274093BD015093BE01EA +:103190006093BF017093C0010C9416140F931F939A +:1031A0000091BD011091BE012091BF013091C0017D +:1031B000DC01CB01802B912BA22BB32B8093BD0183 +:1031C0009093BE01A093BF01B093C0011F910F91D6 +:1031D0000C9416140F931F930091BD011091BE0122 +:1031E0002091BF013091C001DC01CB0180239123EC +:1031F000A223B3238093BD019093BE01A093BF018E +:10320000B093C0011F910F910C9416140F931F934C +:103210000091BD011091BE012091BF013091C0010C +:10322000DC01CB0180279127A227B3278093BD0122 +:103230009093BE01A093BF01B093C0011F910F9165 +:103240000C9416140895CF92DF92EF92FF920F9391 +:103250001F93CF93DF938C01C090C101D090C20126 +:10326000E090C301F090C4018091BD019091BE0136 +:10327000A091BF01B091C001C82AD92AEA2AFB2A2D +:10328000CFE1D0E0D701C6010C2E04C0B695A795BA +:10329000979587950A94D2F780FF06C0B8018C2FC6 +:1032A0000E94EF07019721F4219760F780E001C0A9 +:1032B0008C2FDF91CF911F910F91FF90EF90DF90B6 +:1032C000CF900895CF93DF93EC010E942319BE01A4 +:1032D0000E94EF07DF91CF910895CB010E94621900 +:1032E00008958091C501859585958595089580916E +:1032F000C5018770089598E0899F90011124262BBD +:103300002093C5010C9467182091C50180958223F4 +:103310008093C501982F977069F430E0482F5527A6 +:1033200047FD50952417350729F085958595859596 +:103330000C94881808959091C501977081E009F464 +:1033400080E0089590910C01992321F090910D0156 +:10335000911109C020910E0130910F01F9013296AF +:103360009FEF40E01FC0982F9695969596959F30B9 +:1033700050F5E0910E01F0910F01E90FF11D8770FA +:1033800021E030E0A90102C0440F551F8A95E2F701 +:10339000CA019181892B818308959F3F39F04F5F46 +:1033A0004E3041F051915813F8CF0DC05111F7CF65 +:1033B000942FF5CF9F3F39F0F901E90FF11D97FDEB +:1033C000FA9582830895089590910C01992321F034 +:1033D00090910D01911109C020910E0130910F01C2 +:1033E000F9013296205F3F4F1FC0982F9695969512 +:1033F00096959F30F0F4E0910E01F0910F01E90FE6 +:10340000F11D877021E030E0A90102C0440F551F73 +:103410008A95E2F7CA018095918189238183089575 +:103420003196E217F30729F090819813F9CF1082B3 +:10343000F7CF089581E090E0E0910E01F0910F0147 +:10344000E80FF91F1082019680319105A9F70895C0 +:103450009091D901892B8093D901089580959091FD +:10346000D90189238093D90108951092D901089533 +:103470009091D801892B8093D801089580959091DF +:10348000D80189238093D80108951092D801089516 +:103490009091D701892B8093D701089580959091C1 +:1034A000D70189238093D70108951092D7010895F9 +:1034B0008093C60108951092C601089580910E016F +:1034C00090910F01FC0131969C01205F3F4F80E0FD +:1034D000919191118F5FE217F307D1F70895E09171 +:1034E0000E01F0910F018091D9018083E0910E01CE +:1034F000F0910F0190818091D801892B8083E09118 +:103500000E01F0910F0190818091D701892B80836A +:103510008091C601882361F0E0910E01F0910F01C6 +:103520009081892B80830E945E1A81111092C601BE +:1035300080910E0190910F010C949D0F20E0009757 +:1035400039F0AC0141505109842395232F5FF7CF07 +:10355000822F0895CF92DF92EF92FF926C01EE24BA +:10356000FF24C114D104E104F10421F0C701B60124 +:1035700020E101C020E0C72ED82EE92EFF24C1147F +:10358000D104E104F10419F0285FC701B6016B0111 +:103590007C0154E0F694E794D794C7945A95D1F7F8 +:1035A000C114D104E104F10419F02C5FC701B60184 +:1035B0006B017C0142E0F694E794D794C7944A9556 +:1035C000D1F7C114D104E104F10419F02E5FC70151 +:1035D000B601DC01CB01B695A79597958795892B08 +:1035E0008A2B8B2B09F02F5F822FFF90EF90DF90BB +:1035F000CF9008958091F101843021F11092DB0188 +:1036000020E488E190E00FB6F894A89580936000DC +:103610000FBE2093600080E00E948A0883B7817FFC +:10362000846083BF83B7816083BF7894889583B7B4 +:103630008E7F83BF88E10FB6F8948093600010926C +:1036400060000FBE0895089508950E94231B0E94F4 +:10365000F5020E94241B0E94EA0391E0811101C03F +:1036600090E0892F08950E942A140E94910F0C94D3 +:103670008A0882E084BD93E095BD9AEF97BD809360 +:103680006E0008952FB7F8948091DC019091DD01D0 +:10369000A091DE01B091DF012FBF0895CF92DF929C +:1036A000EF92FF920F931F932FB7F8944091DC0194 +:1036B0005091DD016091DE017091DF012FBF6A0141 +:1036C0007B01EE24FF248C0120E030E0C016D106FF +:1036D000E206F30610F4415051099A01281B390BF8 +:1036E000C9011F910F91FF90EF90DF90CF90089547 +:1036F0001F920F920FB60F9211248F939F93AF9347 +:10370000BF938091DC019091DD01A091DE01B09129 +:10371000DF010196A11DB11D8093DC019093DD01B5 +:10372000A093DE01B093DF01BF91AF919F918F9184 +:103730000F900FBE0F901F9018950E948E0CF8945A +:103740002FEF87EA91E6215080409040E1F700C0DA +:10375000000087E090EBDC018093FB019093FC017B +:10376000A093FD01B093FE019CE088E10FB6F894B0 +:10377000A895809360000FBE90936000FFCFEF92FA +:10378000FF920F931F93CF93DF93D82FCDE08C2F11 +:103790000E94E30305E010E0E82EF12CC701002EA3 +:1037A00002C0959587950A94E2F780FF09C0602FC3 +:1037B0007C2F80E00E949A05D81302C081E006C0E9 +:1037C0000150110958F7C15010F780E0DF91CF91F7 +:1037D0001F910F91FF90EF900895CF93C82F8CE227 +:1037E0000E94BF1B882321F08C2FCF910C94BF1B0C +:1037F00080E0CF910895CF930E94421D811102C0B5 +:103800000E94281DC5E6C15049F00E94F5028FE3D1 +:103810009CE90197F1F700C00000F5CF89E20E9412 +:10382000ED1B811113C18AE20E94ED1B81110E94E0 +:10383000281D85E00E94ED1B81110E949D1B0E94A6 +:103840004D1D8093DA0187E00E94ED1B8823A9F1CA +:103850008BE10E94ED1B882351F08091DA0181FBFE +:10386000222720F991E0922790FB81F90EC08EE08B +:103870000E94ED1B882361F08091DA0182FB2227F0 +:1038800020F991E0922790FB82F98093DA0115C02C +:1038900080E10E94ED1B9091DA01882341F093FBB7 +:1038A000222720F981E0822780FB93F904C0892F29 +:1038B000809580FB90F99093DA018091DA010E9463 +:1038C000511D0E945F1D8093FA0180EE0E94ED1B46 +:1038D000882341F08091FA01982F909590FB80F910 +:1038E0008093FA0189E30E94ED1B882359F08091AF +:1038F000FA0181FB222720F991E0922790FB81F9C0 +:103900008093FA0182EE0E94ED1B882359F080918A +:10391000FA0182FB222720F991E0922790FB82F99D +:103920008093FA0186EE0E94ED1B882359F0809166 +:10393000FA0183FB222720F991E0922790FB83F97B +:103940008093FA0183EE0E94ED1B882359F0809149 +:10395000FA0184FB222720F991E0922790FB84F959 +:103960008093FA0185E30E94ED1B882359F0809132 +:10397000FA0185FB222720F991E0922790FB85F937 +:103980008093FA0181E30E94ED1B882359F0809116 +:10399000FA0186FB222720F991E0922790FB86F915 +:1039A0008093FA0181E10E94ED1B882359F08091F8 +:1039B000FA0187FB222720F991E0922790FB87F9F3 +:1039C0008093FA018091FA010E94631D8091FA01AF +:1039D00087FB882780F980930D0187E20E94ED1B09 +:1039E000C82F8EE10E94ED1B8111C2608FE10E9401 +:1039F000ED1B8111C46080E20E94ED1B8111C86043 +:103A000081E20E94ED1B8111C06182E20E94ED1BE8 +:103A10008111C06283E20E94ED1B8111C06484E2C7 +:103A20000E94ED1B882311F0C06802C0CC2329F04E +:103A30008C2F0E945A1D6C2F03C00E94561D682FA8 +:103A400070E080E090E0CF910C94EA17CF91089558 +:103A50006DEE7EEF80E090E00E94942360E082E0D3 +:103A600090E00E94822360E083E090E00E94822345 +:103A700060E084E090E00E94822360E085E090E0D6 +:103A80000C94822380E090E00E947C2321E08D3E14 +:103A90009E4F09F020E0822F089582E090E00C9480 +:103AA0007423682F82E090E00C94822383E090E0FE +:103AB0000C947423682F83E090E00C94822384E0BC +:103AC00090E00C947423682F84E090E00C9482239F +:103AD0008091E20180FF0BC06091130185E0689F37 +:103AE000B001112475956795759567952BC081FF79 +:103AF00009C06091130185E0689FB001112475959C +:103B0000679520C082FF07C06091130185E0689F20 +:103B1000B001112417C09091E3019923D1F0609175 +:103B20001201961788F72091130185E0289F9001D4 +:103B30001124929FA001939F500D112470E0CA019F +:103B40000E9446236038710540F46115710539F013 +:103B500002C065E070E0862F08958FE7089581E048 +:103B600008958091E20180FF08C06091110170E02A +:103B7000759567957595679521C081FF06C0609121 +:103B8000110170E07595679519C082FF04C06091BE +:103B9000110170E010C09091E3019923C1F0609190 +:103BA00010019617A0F780911101899FC00111247F +:103BB00070E00E9446236038710528F46115710594 +:103BC00021F0862F08958FE7089581E0089561E040 +:103BD00070E0F4CF803F21F40E94681D819504C0FD +:103BE000813F29F40E94681D8093E6010895823F79 +:103BF00021F40E94681D819504C0833F29F40E942E +:103C0000681D8093E5010895893F19F40E94B11D54 +:103C100005C08A3F31F40E94B11D81958093E70170 +:103C200008958B3F21F40E94B11D819504C08C3F03 +:103C300029F40E94B11D8093E8010895843F21F486 +:103C40008091E401816017C0853F21F48091E401F7 +:103C5000826011C0863F21F48091E40184600BC032 +:103C6000873F21F48091E401886005C0883F31F4EA +:103C70008091E40180618093E40108958D3F21F4F7 +:103C80008091E20181600BC08E3F21F48091E201BE +:103C9000826005C08F3F29F48091E20184608093A7 +:103CA000E2010895803F39F48091E60187FF6CC0FE +:103CB0001092E60169C0813F29F48091E60118164F +:103CC000BCF362C09091E501823F29F497FF5CC08C +:103CD0001092E50159C0833F19F41916CCF354C072 +:103CE000893F41F48091E70118160CF04DC0109205 +:103CF000E7014AC08A3F29F48091E70187FF44C069 +:103D0000F6CF8B3F39F48091E80187FF3DC01092D8 +:103D1000E8013AC08C3F29F48091E8011816BCF301 +:103D200033C0843F21F48091E4018E7F17C0853F2A +:103D300021F48091E4018D7F11C0863F21F48091B0 +:103D4000E4018B7F0BC0873F21F48091E401877FE2 +:103D500005C0883F31F48091E4018F7E8093E401B7 +:103D600013C08D3F21F48091E2018E7F0BC08E3F06 +:103D700021F48091E2018D7F05C08F3F29F480916D +:103D8000E2018B7F8093E2018091E50181110EC0F9 +:103D90008091E60181110AC08091E701811106C07E +:103DA0008091E801811102C01092E301089584EE30 +:103DB00091E00E94A80F0E94421B9093E101809322 +:103DC000E00108951F93CF93DF938091E0019091DC +:103DD000E1010E944E1BAC019091E301992321F077 +:103DE0002091140130E006C0209115018AE0289F3F +:103DF000900111244217530708F486C08091E50111 +:103E0000C091E601D091E7011091E801811107C04E +:103E1000C11176C0D11174C0111172C075C09F3F1D +:103E200019F09F5F9093E301181624F40E94681D17 +:103E30008093E5018091E50187FF05C00E94681D20 +:103E400081958093E5011C1624F40E94681D8093DF +:103E5000E6018091E60187FF05C00E94681D8195FB +:103E60008093E6016091E501662339F1C091E60196 +:103E7000CC2319F1772767FD7095872F972F0E9424 +:103E8000572223E333E343E35FE30E94BB220E9414 +:103E900024226093E5016C2F772767FD7095872FAB +:103EA000972F0E94572223E333E343E35FE30E940B +:103EB000BB220E9424226093E6011D1624F40E9476 +:103EC000B11D8093E7018091E70187FF05C00E9443 +:103ED000B11D81958093E701111624F40E94B11D54 +:103EE0008093E8018091E80187FF05C00E94B11D21 +:103EF00081958093E801DF91CF911F910C94D71E9B +:103F00009F3F09F08ECF96CFDF91CF911F910895FB +:103F1000E4EEF1E085E0DF011D928A95E9F7109269 +:103F2000E3011092E2010895833081F128F4813099 +:103F300059F08230D1F00895853009F449C0B8F1C4 +:103F4000863009F456C0089580911501262F30E07F +:103F5000280F311D2F3F310524F4680F60931501A0 +:103F600008958FEF80931501089580911401262FF5 +:103F700030E0280F311D2F3F310524F4680F609386 +:103F8000140108958FEF8093140108958091130117 +:103F9000262F30E0280F311D2F3F310524F4680F04 +:103FA0006093130108958FEF80931301089580911A +:103FB0001201262F30E0280F311D2F3F310524F448 +:103FC000680F6093120108958FEF80931201089596 +:103FD00080911101262F30E0280F311D2F3F310530 +:103FE00024F4680F6093110108958FEF80931101FD +:103FF000089580911001262F30E0280F311D2F3FAA +:10400000310524F4680F6093100108958FEF8093B9 +:1040100010010895833011F128F4813049F0823085 +:1040200091F00895853081F120F18630C1F1089535 +:1040300080911501681720F4861B8093150108955F +:1040400010921501089580911401681720F4861BC1 +:104050008093140108951092140108958091130122 +:10406000681720F4861B80931301089510921301A2 +:10407000089580911201681720F4861B8093120125 +:10408000089510921201089580911101681720F48B +:10409000861B80931101089510921101089580915B +:1040A0001001681720F4861B809310010895109268 +:1040B000100108950F931F938D3109F46BC008F020 +:1040C0003FC08E3009F47FC0C0F4873009F469C066 +:1040D00068F4863009F0B1C08091DA01817F8E7F6B +:1040E0008093DA0181E08093EA01A8C0883009F466 +:1040F000A2C08B3009F49FC0A0C0863109F49BC0D8 +:1041000078F4803109F472C0813109F096C00E94C0 +:104110002A1490910D0181E0892780930D018BC0B5 +:10412000893109F488C08B3109F087C08091DA01A8 +:1041300081FB222720F991E0922790FB81F94CC066 +:10414000853309F470C048F4873209F46CC008F470 +:1041500059C0893209F467C070C0833438F48A3397 +:1041600008F04EC0883309F466C067C0833409F490 +:104170005AC0883409F061C00E942A140FEF13ED71 +:1041800020E3015010402040E1F700C000000E94F1 +:104190009D1B51C00E94DE210E94910F0E948A083F +:1041A0004AC09091DA01892F8095817080FB90F947 +:1041B00029F0966098609093DA0140C0997F977FCC +:1041C0009093DA0138C08091DA0182FB222720F92E +:1041D00091E0922790FB82F98093DA01992359F1BB +:1041E0008091DA0181608093DA0125C08091DA0143 +:1041F00083FB222720F991E0922790FB83F9ECCFF3 +:10420000895301C08D5141E050E060E070E08A01C7 +:104210009B0104C0000F111F221F331F8A95D2F784 +:10422000C901B80104C061E070E080E090E00E9444 +:10423000EA170E942A1481E001C080E01F910F91CB +:10424000089580E0089580E00895CF93C82F80916D +:10425000EA01813079F018F08230E9F187C0E0910D +:104260000E01F0910F018081813169F0823209F0F5 +:104270007FC009C0E0910E01F0910F018081813172 +:1042800011F0823261F48C2F0E942121811104C02F +:104290008C2F0E945A201DC081E090E01AC08C2F04 +:1042A0000E942321811114C0C43179F048F4CB302D +:1042B00079F0C03109F060C082E08093EA0108C063 +:1042C000C93219F0C83321F057C01092EA0154C026 +:1042D00081E0817053C0C93289F118F5C43171F1A0 +:1042E000A8F4C73009F046C08AE08093150194E134 +:1042F0009093140193E0909313018093120188E04E +:104300008093110188E28093100134C0CE51C630F1 +:1043100088F5EC2FF0E0E65DFE4F80818093E901A7 +:1043200029C0CE34E9F020F4CB3421F56AE013C083 +:10433000C13579F0C235F1F461E00DC08091E90139 +:10434000882319F01092E90115C081E08093EA01F9 +:1043500015C061E006C08091E9010E94941F0AC067 +:104360006AE08091E9010E940A2004C01092EA01EB +:1043700080E004C081E002C080E0ABCFCF9108951F +:10438000E1E8F0E0808188608083808181608083C3 +:104390008FB7F89493E09093890090ED9093880004 +:1043A0008FBF0895EFE6F0E08081826080830895FA +:1043B000EFE6F0E080818D7F80830895EFE6F0E006 +:1043C000908182E08927808308951F920F920FB613 +:1043D0000F9211242F933F934F935F936F937F938B +:1043E0008F939F93AF93BF93EF93FF938091EB01D4 +:1043F0009091EC0101969093EC018093EB01811177 +:1044000003C082E00E948A08E091EC01E695E695FF +:10441000F0E0E85FFB4FE4918091EB018E1303C065 +:1044200080E00E948A08FF91EF91BF91AF919F9128 +:104430008F917F916F915F914F913F912F910F904D +:104440000FBE0F901F90189504D06894B1118DC0C5 +:10445000089570D088F09F5790F0B92F9927B751E1 +:10446000A0F0D1F0660F771F881F991F1AF0BA9538 +:10447000C9F712C0B13081F077D0B1E0089574C0AF +:10448000672F782F8827B85F39F0B93FCCF386952E +:1044900077956795B395D9F73EF49095809570958B +:1044A00061957F4F8F4F9F4F0895E89409C097FB08 +:1044B0003EF490958095709561957F4F8F4F9F4FFB +:1044C0009923A9F0F92F96E9BB279395F69587953F +:1044D00077956795B795F111F8CFFAF4BB0F11F402 +:1044E00060FF1BC06F5F7F4F8F4F9F4F16C08823A9 +:1044F00011F096E911C0772321F09EE8872F762FDF +:1045000005C0662371F096E8862F70E060E02AF01F +:104510009A95660F771F881FDAF7880F969587950B +:1045200097F9089557FD9058440F551F59F05F3F74 +:1045300071F04795880F97FB991F61F09F3F79F0C5 +:1045400087950895121613061406551FF2CF469547 +:10455000F1DF08C0161617061806991FF1CF8695C9 +:104560007105610508940895E894BB2766277727AD +:10457000CB0197F908950BD078C069D028F06ED0A0 +:1045800018F0952309F05AC05FC01124EECFCADF9E +:10459000A0F3959FD1F3950F50E0551F629FF00156 +:1045A000729FBB27F00DB11D639FAA27F00DB11DAF +:1045B000AA1F649F6627B00DA11D661F829F222738 +:1045C000B00DA11D621F739FB00DA11D621F839FBF +:1045D000A00D611D221F749F3327A00D611D231F95 +:1045E000849F600D211D822F762F6A2F11249F57E3 +:1045F00050408AF0E1F088234AF0EE0FFF1FBB1F06 +:10460000661F771F881F91505040A9F79E3F5105A4 +:1046100070F014C0AACF5F3FECF3983EDCF38695B0 +:1046200077956795B795F795E7959F5FC1F7FE2B4F +:10463000880F911D9695879597F9089597F99F672B +:1046400080E870E060E008959FEF80EC089500241A +:104650000A941616170618060906089500240A94E7 +:1046600012161306140605060895092E0394000C6D +:1046700011F4882352F0BB0F40F4BF2B11F460FFFC +:1046800004C06F5F7F4F8F4F9F4F089597FB072E9A +:1046900016F4009407D077FD09D00E94602307FC30 +:1046A00005D03EF4909581959F4F08957095619542 +:1046B0007F4F0895EE0FFF1F0590F491E02D0994B0 +:1046C000AA1BBB1B51E107C0AA1FBB1FA617B70738 +:1046D00010F0A61BB70B881F991F5A95A9F7809554 +:1046E0009095BC01CD010895F999FECF92BD81BD91 +:1046F000F89A992780B50895A8E1B0E042E050E02B +:104700000C949C23262FF999FECF92BD81BDF89A77 +:10471000019700B4021639F01FBA20BD0FB6F89405 +:10472000FA9AF99A0FBE08950196272F0E948323C3 +:104730000C948223DC01CB01FC01F999FECF06C069 +:10474000F2BDE1BDF89A319600B40D92415050404F +:08475000B8F70895F894FFCFBB +:1047580002208C081A09F708C3088F080101C7014D +:1047680028080A03140A3F4D3639C9037C03460357 +:104778000D03A002B902D202EB02010203040506EE +:044788000708090015 +:00000001FF diff --git a/keyboards/ergodox_ez/keymaps/software_neo2/keymap.c b/keyboards/ergodox_ez/keymaps/software_neo2/keymap.c new file mode 100644 index 0000000000..2eaba0d7da --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/software_neo2/keymap.c @@ -0,0 +1,139 @@ +#include "ergodox_ez.h" +#include "debug.h" +#include "action_layer.h" +#include "keymap_neo2.h" + +// Layer names +#define BASE 0 // default layer +#define MDIA 1 // media keys + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* Keymap 0: Basic layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | ^ | 1 | 2 | 3 | 4 | 5 | Play | | Next | 6 | 7 | 8 | 9 | 0 |BackSpce| + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Del | X | V | L | C | W | L1 | | L1 | K | H | G | F | Q | ß | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | Caps | U | I | A | E | O |------| |------| S | N | R | T | D | Y | + * |--------+------+------+------+------+------| Hyper| | Meh |------+------+------+------+------+--------| + * | LShift |Ü/Ctrl| Ö/C-S| Ä/Alt| P | Z | | | | B | M | , | . | J | RShift | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | L1 | Home | PgDn | PgUp | End | | Right| Down | Up | Left | Esc | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | App | LGui | | Alt |Ctrl/Esc| + * ,------+------+------| |------+--------+------. + * | | |NeoL2 | |NeoL2 | | | + * | Tab |Backsp|------| |------| Space |Enter | + * | |ace |NeoL1 | |NeoL1 | | | + * `--------------------' `----------------------' + */ +// 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_CIRC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_MPLY, + KC_DELT, NEO_X, NEO_V, NEO_L, NEO_C, NEO_W, TG(1), + KC_CAPS, NEO_U, NEO_I, NEO_A, NEO_E, NEO_O, + KC_LSFT, CTL_T(NEO_UE), C_S_T(NEO_OE), ALT_T(NEO_AE), NEO_P, NEO_Z, ALL_T(KC_NO), + DE_LESS, KC_HOME, KC_PGDN, KC_PGUP, KC_END, + ALT_T(KC_APP),KC_LGUI, + NEO_L2_L, + KC_TAB,KC_BSPC,NEO_L1_L, + // right hand + KC_MNXT, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, + TG(1), NEO_K, NEO_H, NEO_G, NEO_F, NEO_Q, NEO_SS, + NEO_S, NEO_N, NEO_R, NEO_T, NEO_D, NEO_Y, + MEH_T(KC_NO),NEO_B, NEO_M, KC_COMM, KC_DOT, NEO_J, KC_RSFT, + KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_ESC, + KC_LALT,CTL_T(KC_ESC), + NEO_L2_R, + NEO_L1_R,KC_SPC, KC_ENT + ), +/* Keymap 1: Media and mouse keys + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | Lclk | MsUp | Rclk | | | | | |VolDwn| Mute |VolUp | | F12 | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | Btn4 |MsLeft|MsDown|MsRght| Btn5 |------| |------| | Prev | Stop | Play | Next | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | |WhRght|WhDown| WhUp |WhLeft|WhClk | | | |BwSrch|BwBack|BwHome|BwRefr|BwFwd | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | |MsAcl0|MsAcl1|MsAcl2| | | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | |Brwser|Brwser| + * | Lclk | Rclk |------| |------|Back |Forwd | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// MEDIA AND MOUSE +[MDIA] = KEYMAP( + KC_TRNS, KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_TRNS, + KC_TRNS, KC_TRNS, KC_BTN1, KC_MS_U, KC_BTN2, KC_TRNS, KC_TRNS, + KC_TRNS, KC_BTN4, KC_MS_L, KC_MS_D, KC_MS_R, KC_BTN5, + KC_TRNS, KC_WH_L, KC_WH_D, KC_WH_U, KC_WH_R, KC_BTN3, KC_TRNS, + KC_TRNS, KC_TRNS, KC_ACL0, KC_ACL1, KC_ACL2, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_BTN1, KC_BTN2, KC_TRNS, + // right hand + KC_TRNS, KC_F6 , KC_F7 , KC_F8 , KC_F9 , KC_F10 , KC_F11, + KC_TRNS, KC_TRNS, KC_VOLD, KC_MUTE, KC_VOLU, KC_TRNS, KC_F12, + KC_TRNS, KC_MPRV, KC_MSTP, KC_MPLY, KC_MNXT, KC_TRNS, + KC_TRNS, KC_WSCH, KC_WBAK, KC_WHOM, KC_WREF, KC_WFWD, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_WBAK, KC_WFWD +), +}; + +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) { + case MDIA: + ergodox_right_led_2_on(); + break; + default: + ergodox_board_led_off(); + break; + } + +}; diff --git a/keyboards/ergodox_ez/keymaps/supercoder/README.md b/keyboards/ergodox_ez/keymaps/supercoder/README.md new file mode 100644 index 0000000000..97bf7f5835 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/supercoder/README.md @@ -0,0 +1,29 @@ +SuperCoder 2000 layout for the ErgoDox +================================================== + +![SuperCoder 2000](images/supercoder_2000.jpg) + +Ever found yourself in need of entering binary codes rapidly? Ever wanted to use +all ten fingers to do so? Ever felt your SuperCoder 2000 too limiting, by only +having three buttons? We heard you! With this layout for the ErgoDox EZ, you +will be able to tap in binary at an unparalleled speed and accuracy! Efficiency +never seen before! + +Behold the Ultimate SuperCoder 2000 layout! + +![SuperCoder layout](images/layout.png) + +### To use it... + +To use this piece of top quality engineering, you can either +[download the hex file][hex] we have prepared for you, or you can compile it on +your own: + + [hex]: https://raw.githubusercontent.com/algernon/ergodox-supercoder/master/supercoder.hex + +``` +$ git clone https://github.com/jackhumbert/qmk_firmware.git +$ cd qmk_firmware/keyboards/ergodox_ez +$ git clone https://github.com/algernon/ergodox-supercoder.git keymaps/supercoder +$ make KEYMAP=supercoder +``` diff --git a/keyboards/ergodox_ez/keymaps/supercoder/compiled.hex b/keyboards/ergodox_ez/keymaps/supercoder/compiled.hex new file mode 100644 index 0000000000..e4113a7579 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/supercoder/compiled.hex @@ -0,0 +1,1122 @@ +:100000000C94D0010C9414020C9414020C9414025D +:100010000C9414020C9414020C9414020C94140208 +:100020000C9414020C9414020C948F0C0C94610D1B +:100030000C9414020C9414020C9414020C941402E8 +:100040000C9414020C941B210C9414020C941402B2 +:100050000C9414020C94AE1A0C9414020C94140216 +:100060000C9414020C9414020C9414020C941402B8 +:100070000C9414020C9414020C9414020C941402A8 +:100080000C9414020C9414020C9414020C94140298 +:100090000C9414020C9414020C9414020C94140288 +:1000A0000C9414020C9414020C941402CE0DF00D56 +:1000B000DE0EF00DDE0E350E580EDE0EAD0EC00E4D +:1000C0008F118F11BE11BE11F41114124513451377 +:1000D0001F124513CF12CF123613451345133F138A +:1000E000DC12DC12DC12DC12DC12DC12DC12DC12A0 +:1000F000DC12DC12DC12DC12DC12DC12DC12DC1290 +:10010000EE12FB1202130913131327002700270016 +:1001100027002700000027002700270027002700CE +:100120002800270027002700270027002800270095 +:100130002700270027002700280027002700270086 +:10014000270027002800270027002700270000009D +:1001500028002700270000002700000028001E00BC +:100160001E0000001E00000028001E001E001E00D1 +:100170001E00000028001E001E001E001E001E00A3 +:1001800028001E001E001E001E001E0028001E006B +:100190001E001E001E001E0028001E001E001E0065 +:1001A0001E001E0028001E001E001E001E001E0055 +:1001B000000016034500720067006F0044006F00E6 +:1001C0007800200045005A00000016034500720028 +:1001D00067006F0044006F007800200045005A005F +:1001E00000000403090409026D00040100A0FA09DB +:1001F0000400000103010100092111010001223F57 +:10020000000705810308000A090401000103010237 +:1002100000092111010001224D0007058203080099 +:100220000A09040200010300000009211101000174 +:100230002236000705830308000A090403000103AE +:100240000000000921110100012239000705840383 +:100250001000011201100100000008EDFE0713015B +:10026000000102000105010906A101050719E029A5 +:10027000E715002501950875018102050819012976 +:100280000595057501910295017503910105071901 +:1002900000297715002501957875018102C00501B7 +:1002A0000980A101850216010026B7001A01002A63 +:1002B000B700751095018100C0050C0901A10185E9 +:1002C00003160100269C021A01002A9C0275109553 +:1002D000018100C005010902A1010901A100050970 +:1002E0001901290515002501950575018102950162 +:1002F000750381010501093009311581257F9502BA +:100300007508810609381581257F950175088106D4 +:10031000050C0A38021581257F950175088106C0F4 +:10032000C005010906A101050719E029E715002507 +:10033000019508750181029501750881010508196B +:100340000129059505750191029501750391010536 +:1003500007190029FF150025FF950675088100C0C3 +:100360000000000000000000000000010204060A76 +:100370000F17202C3A4A5D71879DB3C7DAE9F5FC67 +:10038000FFFCF5E9DAC7B39D87715D4A3A2C201767 +:100390000F0A060402010000000000000000000037 +:1003A00011241FBECFEFDAE0DEBFCDBF04B603FEDF +:1003B00024C08091FB019091FC01A091FD01B091BE +:1003C000FE018730904BA740B04BB9F41092FB016F +:1003D0001092FC011092FD011092FE0114BE84B730 +:1003E000877F84BF88E10FB6F894809360001092F5 +:1003F00060000FBEE0E0FFE3099511E0A0E0B1E08E +:10040000E4ECF5E402C005900D92A433B107D9F7EE +:1004100011E0A4E3B1E001C01D92AB3FB107E1F7E9 +:100420000E94D3090C94E0220C9400001092B900B1 +:100430008AE08093B800089594EA9093BC0090916C +:10044000BC0097FFFCCF9091B900987F983021F0C5 +:10045000903111F081E008958093BB0084E880938F +:10046000BC008091BC0087FFFCCF8091B900887FE1 +:10047000883111F0803471F780E0089584E9809329 +:10048000BC008091BC0084FDFCCF08958093BB002C +:1004900084E88093BC008091BC0087FFFCCF9091E2 +:1004A000B900987F81E0983209F480E0089584E8EB +:1004B0008093BC008091BC0087FFFCCF8091BB0083 +:1004C000089580910101811115C080E40E941C02F1 +:1004D0008093010181110CC082E10E944602809349 +:1004E0000101811105C08FEF0E9446028093010136 +:1004F0000E943E0284B1807F84B985B1807F85B936 +:100500008AB1837F8AB98BB1837F8BB93E98469835 +:1005100008950E941C04809301010E94610280B32F +:100520008C7080BB81B3836F81BBA5E3B1E0E3E452 +:10053000F1E08EE08E0F11921D928E13FCCF0C9481 +:100540000604BF92CF92DF92EF92FF920F931F9318 +:10055000CF93DF9380910101882379F0809134015A +:100560008F5F80933401811108C00E941C04809326 +:100570000101811102C00E94AE0305E311E0C0E059 +:10058000D0E0DD24D39482E0C82EEE24E394F12C55 +:10059000C730D10500F580910101811164C080E46C +:1005A0000E941C0280930101811112C082E10E940D +:1005B00046028093010181110BC0C7010C2E01C0BE +:1005C000880F0A94EAF780950E9446028093010101 +:1005D0000E943E0248C0CA30A1F028F4C83059F049 +:1005E000C93061F005C0CC3089F070F0CD3089F0B1 +:1005F000209A289810C0219A29980DC0229A2A98EA +:100600000AC0239A2B9807C0529A01C0539A5B984C +:1006100002C03E9A469890EA9A95F1F79FB179996F +:1006200002C082E001C080E091709D25982B7C99EA +:1006300002C084E001C080E0892B7D9902C038E0CF +:1006400001C030E0832B7E9902C020E101C020E090 +:10065000822B9FB19095991F9927991F9295990F79 +:10066000907E892B0FC080910101811149C080E4E7 +:100670000E941C0280930101882379F1B12C0E9411 +:100680003E028B2DF8019081981719F08083C0925B +:1006900000010E94610221960F5F1F4FCE30D105ED +:1006A00009F076CF80910001882361F18150809319 +:1006B0000001882339F08FE99FE00197F1F700C02E +:1006C000000020C0A3E4B1E0E5E3F1E0CF01825FE8 +:1006D00091919D938E13FCCF15C083E10E94460239 +:1006E000809301018111CACF81E40E941C02809392 +:1006F00001018111C3CF0E945702B82EB094BFCF21 +:1007000080E0C0CF0E94AC0381E0DF91CF911F91C8 +:100710000F91FF90EF90DF90CF90BF900895E82F5A +:10072000F0E0ED5BFE4F8081089508950F931F93D5 +:10073000CF93DF93C3E4D1E010E00C2F025F8991E7 +:1007400090E00E94241A180F0C13F9CF812FDF912B +:10075000CF911F910F9108950C946F0456985E9855 +:1007600025982D9826982E9827982F988FEF90E00F +:10077000909389008093880090938B0080938A00E7 +:1007800090938D0080938C00259A2D9A2FEF80E70F +:1007900092E0215080409040E1F700C00000269A8E +:1007A0002E9A2FEF80E792E0215080409040E1F7B1 +:1007B00000C00000279A2F9A2FEF80E792E0215087 +:1007C00080409040E1F700C0000025982D982FEF61 +:1007D00080E792E0215080409040E1F700C00000A7 +:1007E00026982E982FEF80E792E02150804090408D +:1007F000E1F700C0000027982F9856985E9825983A +:100800002D9826982E9827982F98089589EA8093F6 +:10081000800089E08093810024982C983F988AB1C9 +:100820008F748AB96E98479A8BB1806B8BB9769A20 +:100830000E94AE030C946E0480E2809301018091CB +:10084000510181110EC00E94160281E08093510176 +:100850002FEF83ED90E3215080409040E1F700C0FE +:10086000000080E40E941C028093010181112EC0CF +:100870000E94460280930101811128C00E94460215 +:1008800080930101811122C08FE30E944602809370 +:10089000010181111BC00E943E0280E40E941C02E3 +:1008A00080930101811112C08CE00E944602809366 +:1008B000010181110BC00E94460280930101811148 +:1008C00005C08FE30E944602809301010E943E0210 +:1008D00080910101089580E090E0089508950895C1 +:1008E00081E0089581E008950C94720408950F93B7 +:1008F0001F93CF93DF938C01FC01C081D181CE0186 +:100900000E94A918BE010E942005EC01B8010E94B6 +:100910007404882309F48DC0F8018281882309F4C6 +:100920004AC080915D0181111FC0C431F0E5DF072D +:1009300009F051C00E94760481E080935D010E941D +:10094000781A90935C0180935B011092540110928D +:1009500056011092550110925801109257011092B1 +:100960005A011092590165C080915B0190915C0120 +:100970000E94841A883C910570F480915401E82FFC +:10098000F0E0EE0FFF1FEB5AFE4FD183C0838F5F65 +:10099000809354014EC0C43880E5D80721F0C53893 +:1009A000D04501F13AC0F8018281882341F01092CC +:1009B000520182E01EC0C438E0E5DE0759F580919F +:1009C0005201811106C086E20E94331086E20E9425 +:1009D000FB1082E01CC0C438F0E5DF0741F3C538E6 +:1009E000D045D9F4F8018281882331F01092530167 +:1009F00080E20E944A111DC080915301811106C0FE +:100A000087E20E94331087E20E94FB1080E20E947E +:100A100051110FC0C538D04529F381E080935201B0 +:100A200080935301C801DF91CF911F910F910C94D6 +:100A3000700480E0DF91CF911F910F910895089588 +:100A400096E0799FF001112494E5899FE00DF11D56 +:100A50001124E60FF11DEE0FFF1FE65FFE4F85919B +:100A600094910895880F991FFC01E657F0408591F5 +:100A700094910895880F991FFC01E65FFE4F8591C0 +:100A8000949108950F931F93CF93DF93EC018115F9 +:100A900020E3920750F5C11580E2D80708F0C3C0E3 +:100AA000CB3BD10590F4C83AD10508F06AC0C53AED +:100AB000D10508F05BC0C430D10508F0D0C1219742 +:100AC00009F0CAC101E010E00AC2CF3FD10511F020 +:100AD00008F0C5C1C03FD10508F0A2C0CE01805EBC +:100AE0009109089708F4BBC1B7C1C13090E5D90797 +:100AF00009F4A2C020F5C0318FE4D80770F4C11505 +:100B000090E4D90708F094C0C11521E3D20708F09A +:100B1000A3C1DD278E01106CE2C1C115D04509F0DB +:100B20009BC10E94B0138FEF94E32CE08150904062 +:100B30002040E1F700C000000E94D31AD0C1C115C7 +:100B400097E5D90758F4C03121E5D20708F01CC158 +:100B5000C43180E5D80708F475C07EC1CE01905736 +:100B60008115904108F078C1DF7073C1C53AD10595 +:100B700009F477C1C63AD10509F076C102E810E45C +:100B8000AEC1C83AD10509F472C1C93AD10509F418 +:100B900071C1CA3AD10509F470C1CB3AD10509F443 +:100BA0006FC1CC3AD10509F46EC1CD3AD10509F433 +:100BB0006DC1C03BD10509F46CC1CE3AD10509F431 +:100BC0006BC1CF3AD10509F46AC1C13BD10509F423 +:100BD00069C1C23BD10509F468C1C33BD10509F421 +:100BE00067C1C43BD10509F466C1C53BD10509F411 +:100BF00065C1C63BD10509F464C1C73BD10509F401 +:100C000063C1C83BD10509F462C1C93BD10509F4F0 +:100C100061C1CA3BD10509F460C100E014E45FC1C1 +:100C20008E0110655CC1CE019F700E943A0558C1CB +:100C3000DF708E01106A53C18091DA018160809368 +:100C4000DA014DC10E94781C811102C00E945E1C15 +:100C50000E94951C90E09093FB018093FA01C230B2 +:100C600080E5D80721F48091FA01816086C0C43004 +:100C700090E5D90721F48091FA0182607EC0C630E8 +:100C800020E5D20721F48091FA01846076C0C83053 +:100C900080E5D80719F48091FA0127C0CA3090E5A1 +:100CA000D90721F48091FA01806167C0CC3020E53A +:100CB000D20721F48091FA0180625FC0CE3080E5D6 +:100CC000D80721F48091FA01806457C0C03190E5C3 +:100CD000D90721F48091FA0180684FC0C23120E524 +:100CE000D20729F48091FA018460886046C0C3303D +:100CF00080E5D80721F48091FA018E7F3EC0C5308F +:100D000090E5D90721F48091FA018D7F36C0C73074 +:100D100020E5D20721F48091FA018B7F2EC0C930E3 +:100D200080E5D80719F48091FA0126C0CB3090E510 +:100D3000D90721F48091FA018F7E1FC0CD3020E5C4 +:100D4000D20721F48091FA018F7D17C0CF3080E562 +:100D5000D80721F48091FA018F7B0FC0C13190E553 +:100D6000D90721F48091FA018F7707C0C331D045AC +:100D700031F48091FA018B7F877F8093FA01809113 +:100D8000FA010E94991CABC08D2F99278F7099276B +:100D900081309105D9F49E012370332702C0880F5A +:100DA000991F2A95E2F79C688E0144E0000F111FFD +:100DB0004A95E1F700271370802B912B53E0CC0F5D +:100DC000DD1F5A95E1F7C076DD272FC082309105EF +:100DD00031F4DC2FCC278E01016F106A80C0833084 +:100DE000910569F4CE018370992701E010E002C0FB +:100DF000000F111F8A95E2F7C8019C680FC084306C +:100E00009105B9F4CE018370992701E010E002C08A +:100E1000000F111F8A95E2F7C8019A6823E0CC0FF2 +:100E2000DD1F2A95E1F7C07ED7708C010C2B1D2B9E +:100E300056C08530910531F4DC2FCC278E01046F2C +:100E4000106A4DC0069709F04AC0CF71DD27DC2F2C +:100E5000CC278E01106243C000E010E040C08E013C +:100E60003EC001E810E43BC003E810E438C002EEE5 +:100E700014E435C009EE14E432C00AEE14E42FC0C5 +:100E800005EB14E42CC006EB14E429C007EB14E4D2 +:100E900026C00CEC14E423C00DEC14E420C003E8DD +:100EA00015E41DC00AE815E41AC002E915E417C0EC +:100EB00004E915E414C001E216E411C003E216E4EB +:100EC0000EC004E216E40BC005E216E408C006E218 +:100ED00016E405C007E216E402C00AE216E4C801FF +:100EE000DF91CF911F910F91089596E0799FF001C6 +:100EF000112494E5899FE00DF11D1124E60FF11DE9 +:100F0000EE0FFF1FE65FFE4F85919491803E9105A5 +:100F1000E0F4803C910558F58133910509F46FC0E8 +:100F200048F48932910509F463C08A32910509F4C5 +:100F30006DC072C089339105E9F082389105D1F016 +:100F40008533910509F44DC067C0833E910581F159 +:100F500038F4803E9105B9F0823E9105D9F05CC02D +:100F6000863E910561F1873E9105A1F155C00E9431 +:100F7000320508952091FA0120FD02C021FF4CC0E6 +:100F800080EE90E049C08091FA0180FFF9CF89E3BB +:100F900090E042C08091FA0182FF0EC08091FA0178 +:100FA00084FF03C080E090E037C083EE90E034C05F +:100FB0008091FA0182FFF2CF82EE90E02DC0809105 +:100FC000FA0183FF0BC08091FA0184FDEBCF87EE1D +:100FD00090E022C08091FA0183FFF5CF86EE90E089 +:100FE0001BC08091FA0185FF07C089E290E014C020 +:100FF0008091FA0185FFF9CF85E390E00DC08091E3 +:10100000FA0186FF07C08AE290E006C08091FA01EB +:1010100086FFF9CF81E390E00E944205089508958C +:101020000C940F0880916E010895CF93DF9300D048 +:101030001F92CDB7DEB79C018091F101843019F584 +:1010400093E099833B832A839093E9008FEF9091FB +:10105000E800815095FD06C095ED9A95F1F70000E6 +:101060008111F5CF8091E80085FF0DC040E050E090 +:1010700063E070E0CE0101960E947F0A8091E80053 +:101080008E778093E8000F900F900F90DF91CF91B3 +:101090000895CF93DF9300D01F92CDB7DEB7209194 +:1010A000F101243021F522E029839B838A8383E0A8 +:1010B0008093E9008FEF9091E800815095FD06C084 +:1010C00095ED9A95F1F700008111F5CF8091E80038 +:1010D00085FF0DC040E050E063E070E0CE01019676 +:1010E0000E947F0A8091E8008E778093E8000F903D +:1010F0000F900F90DF91CF9108952091F10124304E +:10110000F1F422E02093E9002FEF3091E800215024 +:1011100035FD06C035ED3A95F1F700002111F5CF08 +:101120002091E80025FF0BC040E050E065E070E052 +:101130000E947F0A8091E8008E778093E8000895EE +:10114000CF93DF93EC019091F101943009F046C008 +:1011500080910C018823D9F080910D018823B9F08A +:101160009093E9008FEF9091E800815095FD06C0C3 +:1011700095E19A95F1F700008111F5CF8091E80093 +:1011800085FF2CC040E050E060E170E017C081E0D6 +:101190008093E9008FEF9091E800815095FD06C0A3 +:1011A00095ED9A95F1F700008111F5CF8091E80057 +:1011B00085FF14C040E050E068E070E0CE010E947E +:1011C0007F0A8091E8008E778093E80080E1FE013D +:1011D000AEE5B1E001900D928A95E1F7DF91CF91F4 +:1011E00008958091F001811109C00E94140C0E94A1 +:1011F000710C8091E20084608093E2000895109267 +:10120000F001089508950C9408210E94691A0E9423 +:101210000E210E94170F0C94100842E061EC81E04F +:101220000E948E0B42E061EC82E00E948E0B42E055 +:1012300061EC83E00E948E0B42E161EC84E00C944F +:101240008E0B8091F301833009F455C030F4813066 +:1012500071F0823009F48EC008958A3009F47AC0A2 +:101260008B3009F460C0893009F09CC020C08091A7 +:10127000F201813A09F096C08091E800877F80935F +:10128000E8008091F6019091F701892B21F460E14B +:101290008EE591E003C060E080E090E070E00E94A5 +:1012A000CA0A8091E8008B778093E80008958091C6 +:1012B000F201813209F076C08091F6019091F70138 +:1012C000009719F0039709F06DC08091E800877FBF +:1012D0008093E8008091E80082FD05C08091F101D3 +:1012E0008111F8CF5FC08091F10080936E018091F1 +:1012F000E8008B7753C08091F201813A09F052C027 +:101300008091F6019091F701892B09F04BC08091F3 +:10131000E800877F8093E8008091E80080FFFCCFA1 +:1013200080910C0136C08091F2018132D9F5809113 +:10133000F6019091F701892BA9F58091E800877F4C +:101340008093E8000E94C30B8091F40180930C010C +:101350000C94B0138091F201813221F58091E80064 +:10136000877F8093E8000E94C30B8091F5018093F2 +:101370006F0108958091F201813AA1F48091E80013 +:10138000877F8093E8008091E80080FFFCCF809108 +:101390006F018093F1008091E8008E778093E800E0 +:1013A0000C94C30B089584B7877F84BF88E10FB680 +:1013B000F89480936000109260000FBE90E080E887 +:1013C0000FB6F89480936100909361000FBE0E9465 +:1013D000660F0E94140C0E94710C8091E2008460E0 +:1013E0008093E20078940E94F70E0E94680F82E0DA +:1013F00091E00E94120F0E94F6208091F101853049 +:1014000069F40E94301A8091EF018823B1F30E94A1 +:101410005B1A882391F30E94690AEFCF0E946E0F36 +:10142000ECCF292F332723303105C9F064F4213064 +:10143000310581F02230310509F043C08DE690E09E +:1014400026EE31E042C021323105F1F02232310581 +:1014500041F137C082E190E023E532E036C09927C0 +:101460008130910541F08230910541F0892B49F599 +:10147000E2EEF1E005C0EAECF1E002C0E2EBF1E0FF +:10148000849190E09F0121C06430D8F4E62FF0E011 +:10149000EE0FFF1FEE5DFE4F2081318189E090E06D +:1014A00014C0643070F470E0FB01EE0FFF1FE65EC5 +:1014B000FE4F20813181FB01EA5EFE4F808190E08A +:1014C00004C080E090E020E030E0FA013183208326 +:1014D000089580E189BD82E189BD09B400FEFDCF98 +:1014E0008091D8008F7D8093D8008091E000826049 +:1014F0008093E0008091E00081FDFCCF0895CF92C1 +:10150000DF92EF92FF920F931F93CF93DF93EC0143 +:101510008B016A010E94E20B811133C0C114D10416 +:1015200039F0F60180819181081B190BC80FD91F72 +:10153000E12CF12C0115110519F18091E80085FDD0 +:1015400016C08091E8008E778093E800C114D10422 +:1015500049F0F60180819181E80EF91EF182E08266 +:1015600085E00FC00E94E20B882321F30AC0899115 +:101570008093F10001501109FFEFEF1AFF0ADACF53 +:1015800080E0DF91CF911F910F91FF90EF90DF905E +:10159000CF9008952091F8013091F901261737076F +:1015A00048F06115710539F42091E8002E772093F9 +:1015B000E80001C0B90140E061157105A9F1209171 +:1015C000F101222309F443C0253009F442C02091DF +:1015D000E80023FD40C02091E80022FD32C02091A8 +:1015E000E80020FFE9CF4091F3002091F20030E0C5 +:1015F000342BFC01CF016115710559F028303105FC +:1016000040F481918093F100615071092F5F3F4F49 +:10161000F1CF41E02830310509F040E02091E800A9 +:101620002E772093E800C8CF4111C9CF0AC080911E +:10163000F101882361F0853061F08091E80083FD3D +:101640000AC08091E80082FFF2CF80E0089582E036 +:10165000089583E0089581E008952091F801309184 +:10166000F9012617370748F06115710539F4209103 +:10167000E8002E772093E80001C0B901FC0120E0CA +:101680006115710591F18091F101882309F440C041 +:10169000853009F43FC08091E80083FD3DC0809112 +:1016A000E80082FD2FC08091E80080FFE9CF209103 +:1016B000F3008091F20090E0922B6115710559F0D2 +:1016C0008830910540F424912093F10031966150C7 +:1016D00071090196F2CF21E0089709F020E080918E +:1016E000E8008E778093E800CBCF2111CCCF0AC0E1 +:1016F0008091F101882361F0853061F08091E800EC +:1017000083FD0AC08091E80082FFF2CF80E0089557 +:1017100082E0089583E0089581E00895982F97303E +:1017200058F59093E900981739F07091EC002091EA +:10173000ED005091F00003C0242F762F50E021FFE0 +:1017400019C03091EB003E7F3093EB003091ED00FB +:101750003D7F3093ED003091EB0031603093EB0032 +:101760007093EC002093ED005093F0002091EE0078 +:1017700027FF07C09F5FD3CF8F708093E90081E080 +:10178000089580E008958091F20187FF11C0809153 +:10179000E80082FD05C08091F1018111F8CF11C0F0 +:1017A0008091E8008B770BC08091F101882349F08C +:1017B0008091E80080FFF8CF8091E8008E778093D9 +:1017C000E80008952091E4003091E50095E640910D +:1017D000EC00842F817040FF22C08091E80080FDE2 +:1017E0001CC08091F101882391F0853091F08091A7 +:1017F000EB0085FD10C04091E4005091E5004217D8 +:10180000530729F39A01915011F784E0089582E07B +:10181000089583E0089581E0089580E0089540915F +:10182000E80042FFDECF08950E94820C0E948A0CDD +:10183000E0EEF0E0808181608083E8EDF0E080817F +:101840008F77808319BCA7EDB0E08C918E7F8C934D +:1018500080818F7E80831092F00108950F931F93F3 +:10186000CF93DF930E94820C0E948A0CC8EDD0E0D7 +:1018700088818F77888388818068888388818F7D3D +:10188000888319BC1092F1011092ED011092EF01C2 +:101890001092EE0100EE10E0F80180818B7F8083D2 +:1018A00088818160888342E060E080E00E948E0B46 +:1018B000E1EEF0E080818E7F8083E2EEF0E08081D7 +:1018C00081608083808188608083F80180818E7F41 +:1018D0008083888180618883DF91CF911F910F91F0 +:1018E0000895E8EDF0E080818F7E8083E7EDF0E001 +:1018F00080818160808384E082BF81E08093F001F9 +:101900000C942E0CE8EDF0E080818E7F80831092A5 +:10191000E20008951092DA001092E10008951F92FB +:101920000F920FB60F9211242F933F934F935F9313 +:101930006F937F938F939F93AF93BF93EF93FF9397 +:101940008091E10082FF0BC08091E20082FF07C01E +:101950008091E1008B7F8093E1000E94F60E8091E0 +:10196000DA0080FF1FC08091D80080FF1BC08091EB +:10197000DA008E7F8093DA008091D90080FF0DC05D +:1019800080E189BD82E189BD09B400FEFDCF81E01F +:101990008093F1010E94F10805C019BC1092F10179 +:1019A0000E94FF088091E10080FF19C08091E20051 +:1019B00080FF15C08091E2008E7F8093E2008091CD +:1019C000E20080618093E2008091D8008062809381 +:1019D000D80019BC85E08093F1010E940309809131 +:1019E000E10084FF30C08091E20084FF2CC080E1E0 +:1019F00089BD82E189BD09B400FEFDCF8091D80088 +:101A00008F7D8093D8008091E1008F7E8093E100EC +:101A10008091E2008F7E8093E2008091E2008160FD +:101A20008093E2008091ED01882311F084E007C0EB +:101A30008091E30087FD02C081E001C083E08093D4 +:101A4000F1010E9405098091E10083FF29C0809186 +:101A5000E20083FF25C08091E100877F8093E10051 +:101A600082E08093F1011092ED018091E1008E7F80 +:101A70008093E1008091E2008E7F8093E20080916C +:101A8000E20080618093E20042E060E080E00E943A +:101A90008E0B8091F00088608093F0000E94020914 +:101AA000FF91EF91BF91AF919F918F917F916F9136 +:101AB0005F914F913F912F910F900FBE0F901F900C +:101AC00018951F920F920FB60F9211242F933F93E8 +:101AD0004F935F936F937F938F939F93AF93BF9336 +:101AE000CF93DF93EF93FF93C091E900CF70809184 +:101AF000EC00D82FD17080FDD0E81092E9008091E1 +:101B0000F000877F8093F00078940E94A50D1092DA +:101B1000E9008091F00088608093F000CD2BCF70B9 +:101B2000C093E900FF91EF91DF91CF91BF91AF9109 +:101B30009F918F917F916F915F914F913F912F91E5 +:101B40000F900FBE0F901F9018951F93CF93DF93A8 +:101B5000CDB7DEB7AA970FB6F894DEBF0FBECDBFE4 +:101B6000E2EFF1E088E08E0F9091F10091938E13F7 +:101B7000FBCF0E9421098091E80083FF1FC1809163 +:101B8000F2019091F301492F50E04A30510508F0DD +:101B900015C1FA01EA5AFF4F0C949022803881F067 +:101BA000823809F00BC18091F6018F708093E900B3 +:101BB0008091EB0085FB882780F91092E90006C030 +:101BC0008091EE019091EF01911182609091E80077 +:101BD000977F9093E8008093F1001092F100C8C0C5 +:101BE000282F2D7F09F0EAC0882319F0823061F098 +:101BF000E5C08091F401813009F0E0C0933009F034 +:101C000080E08093EF012BC08091F401811127C007 +:101C10008091F6018F7009F4D1C08093E900209182 +:101C2000EB0020FF1CC0933021F48091EB00806218 +:101C300014C09091EB0090619093EB0021E030E0B4 +:101C4000A90102C0440F551F8A95E2F74093EA00AC +:101C50001092EA008091EB0088608093EB00109274 +:101C6000E9008091E800877F86C08111A7C01091AC +:101C7000F4011F778091E3008078812B8093E3004B +:101C80008091E800877F8093E8000E94C30B8091D9 +:101C9000E80080FFFCCF8091E30080688093E30040 +:101CA000111102C082E001C083E08093F10186C07F +:101CB0008058823008F082C08091F4019091F50143 +:101CC0008C3D53E0950779F583E08A838AE2898326 +:101CD0004FB7F894DE01139620E03EE051E2E32F87 +:101CE000F0E050935700E49120FF03C0E295EF70BD +:101CF0003F5FEF708E2F90E0EA3010F0C79601C082 +:101D0000C0968D939D932F5F243149F74FBF8091EB +:101D1000E800877F8093E8006AE270E0CE010196D8 +:101D20000E94CA0A14C0AE014F5F5F4F6091F60176 +:101D30000E94110ABC01009709F440C09091E8008C +:101D4000977F9093E80089819A810E942D0B809162 +:101D5000E8008B778093E80031C0803879F5809176 +:101D6000E800877F8093E8008091ED018093F10087 +:101D70008091E8008E778093E8000E94C30B1EC01C +:101D800081111CC09091F4019230C0F48091E80060 +:101D9000877F8093E8009093ED010E94C30B8091B0 +:101DA000ED01811106C08091E30087FD02C081E052 +:101DB00001C084E08093F1010E940D098091E80048 +:101DC00083FF0AC08091E800877F8093E8008091BC +:101DD000EB0080628093EB00AA960FB6F894DEBF0A +:101DE0000FBECDBFDF91CF911F9108950895CF937E +:101DF0008091F1018823A1F0C091E900CF7090910A +:101E0000EC00892F817090FD80E8C82B1092E900CA +:101E10008091E80083FD0E94A50DCF70C093E9007A +:101E2000CF91089590937501809374010895E09186 +:101E30007401F0917501309721F00190F081E02D4F +:101E4000099480E00895E0917401F0917501309754 +:101E500021F00280F381E02D09940895E09174014E +:101E6000F0917501309721F00480F581E02D0994FF +:101E7000089520917201309173018217930771F0D8 +:101E80009093730180937201E0917401F091750158 +:101E9000309721F00680F781E02D09940895209174 +:101EA0007001309171018217930771F09093710165 +:101EB00080937001E0917401F0917501309721F0E9 +:101EC0000084F185E02D0994089508950C94650F20 +:101ED0000E946F1A0E9489020C94311B9F92AF924C +:101EE000BF92CF92DF92EF92FF920F931F93CF9307 +:101EF000DF9300D000D000D0CDB7DEB70E94A102A2 +:101F00000DE010E0AA24A394B12C902E802F0E9403 +:101F10008F03980129583E4F6901F901F080F82696 +:101F2000A1F40150110988F78FEF89838A831B82FE +:101F30000E94781A8160782F9D838C8349815A8111 +:101F40006B818D810E9405102FC09091DA0191FF65 +:101F500004C08E830E9495038E8125E030E0A501A8 +:101F6000022E01C0440F0A94EAF7E42E4F21C1F07B +:101F700029839A828E2191E009F490E09B830E944C +:101F8000781A8160782F9D838C8349815A816B8177 +:101F90008D810E940510F6018081E826E08204C050 +:101FA00021503109E0F6BDCF0E94181E1091760134 +:101FB0000E94170F1817B9F00E94170F809376012F +:101FC00026960FB6F894DEBF0FBECDBFDF91CF913E +:101FD0001F910F91FF90EF90DF90CF90BF90AF9047 +:101FE0009F900C94100826960FB6F894DEBF0FBE93 +:101FF000CDBFDF91CF911F910F91FF90EF90DF90B8 +:10200000CF90BF90AF909F900895CF93DF93CDB7BF +:10201000DEB72B970FB6F894DEBF0FBECDBF4F8350 +:10202000588769877A878B87DE01119686E0FD01E4 +:1020300011928A95E9F785E0FE01379601900D929D +:102040008A95E1F749815A816B817C818D819E81DE +:102050000E944E162B960FB6F894DEBF0FBECDBF72 +:10206000DF91CF910895CF93882309F4C2C0C82F80 +:10207000823859F40E94170F81FDBBC089E30E948A +:1020800028190E94F51989E30CC0833879F40E945D +:10209000170F80FDAEC083E50E9428190E94F51934 +:1020A00083E50E946A19CF910C94F519843859F48C +:1020B0000E94170F82FD9DC087E40E9428190E948C +:1020C000F51987E4EECF8CEF8C0F813A48F48C2F12 +:1020D0000E945B2081118DC08C2F0E942819E3CFB4 +:1020E00080E28C0F883048F4C77081E001C0880F0F +:1020F000CA95EAF70E94AE19D6CF8BE58C0F8330D4 +:1021000078F4C53A29F0C63A31F083E890E005C08A +:1021100081E890E002C082E890E0CF910C94390F02 +:1021200088E58C0F833108F064C0C83A39F1C93AA8 +:1021300041F1CA3A49F1CB3A51F1CC3A59F1CD3A91 +:1021400061F1C03B69F1CE3A71F1CF3A79F1C13B0F +:1021500081F1C23B89F1C33B91F1C43B99F1C53B8D +:10216000A1F1C63BA9F1C73BB1F1C83BB9F1C93BED +:10217000C1F1CA3BC9F180E090E038C082EE90E046 +:1021800035C089EE90E032C08AEE90E02FC085EB3A +:1021900090E02CC086EB90E029C087EB90E026C051 +:1021A0008CEC90E023C08DEC90E020C083E891E0BF +:1021B0001DC08AE891E01AC082E991E017C084E965 +:1021C00091E014C081E292E011C083E292E00EC07F +:1021D00084E292E00BC085E292E008C086E292E0E1 +:1021E00005C087E292E002C08AE292E0CF910C94AF +:1021F0004F0FCF910895882309F44BC0823859F4CA +:102200000E94170F81FF45C089E30E9428190E9490 +:10221000F51989E30CC0833871F40E94170F80FF11 +:1022200038C083E50E9428190E94F51983E50E94B1 +:102230006A190C94F519843859F40E94170F82FF1B +:1022400028C087E40E9428190E94F51987E4EFCF7F +:102250009CEF980F913A58F390E2980F983050F411 +:10226000877091E001C0990F8A95EAF7892F0E9443 +:10227000B419DFCF9BE5980F933020F480E090E015 +:102280000C94390F885A833120F480E090E00C944C +:102290004F0F0895882321F00E94AE190C94F51970 +:1022A0000895882321F00E94B4190C94F51908951B +:1022B0007F928F929F92AF92BF92CF92DF92EF92D6 +:1022C000FF920F931F93CF93DF931F92CDB7DEB78B +:1022D0007C01C62E772EFC01058102950F701281BC +:1022E00011110E94CB190E942119882379F0112322 +:1022F00069F080E28C0D883048F082E00E940A1973 +:102300000E94211991E0D82ED92601C0D12CE72DA9 +:10231000E295EF70F0E0E05AFF4F0C949022872D89 +:10232000807F072D0F70882311F00295007F112305 +:1023300089F0002309F490C180E28C0D883020F4EC +:10234000802F0E94AE1903C0802F0E94BE190E94E8 +:10235000F51982C18C2D0E94FB10002309F495C150 +:1023600080E28C0D883020F4802F0E94B41903C0C5 +:10237000802F0E94C4190E94F51987C1972D907F64 +:10238000872D8F70903211F08295807FCC2021F0C4 +:10239000F1E0CF16B1F01EC0112349F0002309F47B +:1023A00014C1013009F011C10E94DE196EC1002371 +:1023B00019F0013009F469C189830E94E11989810A +:1023C0000AC1112321F0023008F05FC1FEC00111E3 +:1023D0005CC101C1112321F0002309F4F6C03CC106 +:1023E000002309F4F8C03EC1872D86958695837039 +:1023F00090E0009719F0019761F047C1112321F097 +:102400008C2D972D937002C080E090E00E94390FD0 +:102410003CC1112321F08C2D972D937002C080E0D8 +:1024200090E00E944F0F31C18C2D112319F00E94B2 +:10243000201D02C00E94881D0E940D1E26C1872DEE +:10244000837009F052C0111120C18C2D82958695A0 +:102450008770880F880F9C2D9F70892E912CA12C3E +:10246000B12C082E04C0880C991CAA1CBB1C0A9411 +:10247000D2F7C4FE14C00FE010E020E030E0B90154 +:10248000A80104C0440F551F661F771F8A95D2F715 +:10249000CB01BA01609570958095909503C060E07E +:1024A00070E0CB01272D26952695237030E0223051 +:1024B000310569F02330310589F0682979298A29A5 +:1024C0009B292130310571F00E949617DEC06829E2 +:1024D00079298A299B290E94B217D7C00E94961792 +:1024E000C501B4010E947A17D0C0112319F0872DBD +:1024F000817001C08695882309F4C7C08C2D829510 +:1025000086958770880F880F9C2D9F70892E912C3F +:10251000A12CB12C082E04C0880C991CAA1CBB1C31 +:102520000A94D2F7C4FE14C00FE010E020E030E0BF +:10253000B901A80104C0440F551F661F771F8A9573 +:10254000D2F7CB01BA01609570958095909503C044 +:1025500060E070E0CB01272D269526952370422F51 +:1025600050E04230510569F04330510589F0682947 +:1025700079298A299B294130510571F00E947018F0 +:1025800084C0682979298A299B290E948C187DC0DA +:102590000E947018C501B4010E94541876C08C2D99 +:1025A00090E0FC01E05EF109E531F10508F050C072 +:1025B000E059FF4F0C9490220C2D0F70872D8F71D6 +:1025C000112331F00E94ED17802F0E944A115DC047 +:1025D0000E940E18802F0E94511157C0112339F00C +:1025E000011153C0872D8F710E9433184EC00230E5 +:1025F00008F04BC0F7CF112339F0872D8F710E945F +:10260000ED1743C01123C9F3872D8F710E940E1857 +:102610003CC0112329F0872D8F710E94D81735C037 +:102620000E94CE1732C0112351F0172D1F71812F38 +:102630000E94ED1763E0812F0E94011926C081E0FE +:102640000E940A19023008F182E00E940A191DC096 +:10265000112331F0002389F28C2D0E94331015C014 +:10266000002391F28C2D0E94FB100FC0472D4F705C +:102670006C2DC7010E946B040E94F21606C0472D04 +:102680004F706C2DC7010E941F05DD20F9F00E94DC +:10269000FD1880FD1BC0F70112820E94F7180E94EE +:1026A000ED17C7010E9475130E94F7180F90DF9174 +:1026B000CF911F910F91FF90EF90DF90CF90BF903F +:1026C000AF909F908F907F900C940E180F90DF9199 +:1026D000CF911F910F91FF90EF90DF90CF90BF901F +:1026E000AF909F908F907F9008950F931F93CF93FB +:1026F000DF93EC01888199812B813C81232BB9F0F8 +:102700009F3F11F48F3F99F0CE010E9477048823F8 +:1027100071F0688179818A810E94F3188C010E948E +:10272000A8180E946F17B801CE010E945811DF91BE +:10273000CF911F910F9108950E94CB190E94DB1930 +:102740000E94A0190E94F5190E94BE1E0E940D1E33 +:1027500080E090E00E94390F80E090E00C944F0FF1 +:102760000E94BB190C949C130E94E818292F2295F3 +:102770002F7030E02C3031054CF42A3031056CF4E8 +:102780002250310922303105A8F407C02C30310520 +:1027900069F02F30310551F00DC0803F69F018F419 +:1027A000803E40F409C0843F29F406C093FB88278B +:1027B00080F9089580E0089581E00895CF93DF9334 +:1027C00000D000D01F92CDB7DEB70F900F900F90C2 +:1027D0000F900F90DF91CF910895CF93DF9300D0AA +:1027E00000D000D0CDB7DEB726960FB6F894DEBF86 +:1027F0000FBECDBFDF91CF9108951F93CF93DF938D +:10280000C091850116E080918601C81799F0D0E04B +:102810001C9FF0011D9FF00D1124E957FE4F4081D0 +:10282000518162817381848195810E94ED1321968B +:10283000C770E9CFDF91CF911F9108954091B70103 +:102840005091B8016091B9017091BA018091BB01BA +:102850009091BC010C94ED138091BC0182958F7016 +:1028600009F054C08091B901882309F44FC08091C8 +:102870008501A09186016091B7017091B8014091E6 +:10288000BA015091BB01B6E08A1709F43FC090E04D +:1028900041155105C1F17F3F11F46F3FA1F1B89F80 +:1028A000F001B99FF00D1124E957FE4F21817213F9 +:1028B0002AC02081621327C02281211124C02381D4 +:1028C00034812417350710F421503109241B350BAE +:1028D000283C3105C0F42091BC012F702061209369 +:1028E000BC0126E0289FF001299FF00D1124E45738 +:1028F000FE4F80818F708061808387EB91E00E9422 +:1029000075130C94FD1301968770BECF0895CF9276 +:10291000DF92EF92FF920F931F93CF93DF93CDB788 +:10292000DEB762970FB6F894DEBF0FBECDBF8C0145 +:1029300085E0F801DE011D9601900D928A95E1F780 +:10294000D8014C9111965C91119712966C91129747 +:102950001396CD90DC9014973091B7017091B80127 +:102960008091BA019091BB01009709F46BC17F3F40 +:1029700019F43F3F09F466C1E090B901EE2009F473 +:10298000C0C02091BC01C816D90628F0F601E81B8A +:10299000F90BCF0104C0809590958C0D9D1DFF24EF +:1029A000F394883C910578F0F12C207F09F0C6C0A3 +:1029B0007C2DD98AC88A89890E94DE1387EB91E031 +:1029C0000E947513B1C0822F807F09F046C0751335 +:1029D00014C0341312C0611110C02F7020612093F5 +:1029E000BC010E941E1487EB91E00E947513809138 +:1029F000BC01D80115968C932EC0CD2819F15F3FEC +:102A000011F44F3FF9F0F62E61111CC08091850141 +:102A10002091860136E0821709F45AC090E0389F71 +:102A2000F001399FF00D1124E957FE4F71815713C2 +:102A300006C07081471303C07281711103C00196F3 +:102A40008770E9CFF62E662309F418C18091BC0186 +:102A500081608093BC01F12C11C1751308C034133F +:102A600006C0611104C08091BC01D801C3C04D876C +:102A70005E878D859E856A8B0E94B4136A89882340 +:102A8000E1F16623D1F12091BC01822F82958F70F4 +:102A900090E0029774F08091B7019091B801988707 +:102AA0008F831986DB86CA862C87CE0107960E9403 +:102AB000751386E0F801A7EBB1E001900D928A95BD +:102AC000E1F70E942C140E941E14FF24F394D6C038 +:102AD0004D875E878D859E850E94E818292F229557 +:102AE0002F7030E0223031050CF0BCC09F7009F02F +:102AF000B6C0805E883008F4C1C0C8010E9475135A +:102B0000E4CFC816D90608F453C0F601E81BF90B48 +:102B1000CF01883C910508F450C0F12C7C2DD98A56 +:102B2000C88A89890E94DE13E7EBF1E086E0DF01C5 +:102B30001D928A95E9F70E941E14A0C0751314C057 +:102B4000341312C0611110C08091BC01F80185835B +:102B5000C8010E94751386E0E7EBF1E0DF011D92EA +:102B60008A95E9F7FE2C8AC04D875E878D859E8504 +:102B70006A8B0E94B4136A89882309F4BECF662346 +:102B800009F4BBCF2091BC01822F82958F7090E019 +:102B900002970CF48ECF8091B7019091B8019A837F +:102BA00089831B82DD82CC822E83CE0101967FCF6A +:102BB000809590958C0D9D1DACCFF62E662309F463 +:102BC0009CCF75132EC034132CC02091BC0120FD66 +:102BD0001FC0822F82958F70D9F0D80115962C9343 +:102BE00015978F3049F08F5F982F9295907F822FA5 +:102BF0008F70892B15968C93C8010E94751386E0FF +:102C0000F801A7EBB1E001900D928A95E1F793CF1F +:102C100086E0F801A7EBB1E001900D928A95E1F70B +:102C20002DC04D875E878D859E850E94B4138111CE +:102C300040CF8091BC0181608093BC01C8010E949B +:102C400075131CC0662309F458CF4D875E878D85A8 +:102C50009E850E94B413882309F44FCF2ACF811197 +:102C600048CF0CC0243031050CF047CF9F7009F4D9 +:102C700040CFF8019581907F09F03BCF8F2D629670 +:102C80000FB6F894DEBF0FBECDBFDF91CF911F917D +:102C90000F91FF90EF90DF90CF9008951F93CF9307 +:102CA000DF93CDB7DEB72C970FB6F894DEBF0FBE1B +:102CB000CDBF4F83588769877A878B879C87CE01E2 +:102CC00007960E948714882369F08F8198852A854A +:102CD0003B85232BF1F19F3F09F063C08F3F09F043 +:102CE00060C037C086E0FE013796DE011196019084 +:102CF0000D928A95E1F76F817885EA85FB8530979B +:102D000041F17F3F11F46F3F21F12091860130E0C6 +:102D1000C9010196877099274091850150E0841779 +:102D2000950709F447C069837A83FD83EC8396E0B5 +:102D3000929FD001939FB00D1124A957BE4FFE0161 +:102D4000319601900D929A95E1F7809386010E9449 +:102D5000FD1316E080918501909186018917C1F1DC +:102D6000189FC001112489579E4F0E948714882301 +:102D700079F1E09185011E9FF0011124E957FE4F82 +:102D80004081518162817381848195810E94ED131C +:102D90008091850190E00196877099278093850145 +:102DA000D9CF4F81588569857A858B859C850E940E +:102DB000ED13CFCF0E94B0131092860110928501BF +:102DC000E7EBF1E086E0DF011D928A95E9F7C1CFDC +:102DD0002C960FB6F894DEBF0FBECDBFDF91CF911A +:102DE0001F910895EF92FF920F931F93CF93DF935C +:102DF0008C01009709F46CC0F12CEE24E394E801F7 +:102E00002196F8018491843740F4843008F051C051 +:102E1000813081F0823019F15BC0853709F444C0FC +:102E2000A8F19CE7980F903708F052C08F770E9466 +:102E3000FB1041C00E5F1F4FFE01C49180E28C0F5A +:102E4000883048F4C7708E2D01C0880FCA95EAF704 +:102E50000E94CE1914C08C2F0E9433102DC00E5F1B +:102E60001F4FFE01C49180E28C0F883058F4C77068 +:102E70008E2D01C0880FCA95EAF70E94D4190E94CE +:102E8000F5191AC08C2F0E94FB1016C00E5F1F4F41 +:102E9000FE01C491CC2381F08FE99FE00197F1F707 +:102EA00000C00000C150F6CF0E5F1F4FFE01F4902E +:102EB00003C00E9433108E018F2D882309F49FCF09 +:102EC000EFE9FFE03197F1F700C000008150F5CF46 +:102ED000DF91CF911F910F91FF90EF90089508958A +:102EE0006093C1017093C2018093C3019093C401A8 +:102EF0000C949C130F931F930091C1011091C20178 +:102F00002091C3013091C401DC01CB01802B912BB6 +:102F1000A22BB32B8093C1019093C201A093C30154 +:102F2000B093C4011F910F910C949C130F931F93A6 +:102F30000091C1011091C2012091C3013091C401DF +:102F4000DC01CB0180239123A223B3238093C10111 +:102F50009093C201A093C301B093C4011F910F913C +:102F60000C949C130F931F930091C1011091C20107 +:102F70002091C3013091C401DC01CB01802791274E +:102F8000A227B3278093C1019093C201A093C301EC +:102F9000B093C4011F910F910C949C131092BD012A +:102FA0001092BE011092BF011092C0010C949C13AC +:102FB00041E050E060E070E004C0440F551F661F20 +:102FC000771F8A95D2F74093BD015093BE0160935D +:102FD000BF017093C0010C949C1341E050E060E08D +:102FE00070E004C0440F551F661F771F8A95D2F703 +:102FF0008091BD019091BE01A091BF01B091C0012F +:10300000482B592B6A2B7B2B4093BD015093BE015B +:103010006093BF017093C0010C949C1341E050E099 +:1030200060E070E004C0440F551F661F771F8A954B +:10303000D2F740955095609570958091BD01909123 +:10304000BE01A091BF01B091C001482359236A235A +:103050007B234093BD015093BE016093BF017093E9 +:10306000C0010C949C1341E050E060E070E004C0AB +:10307000440F551F661F771F8A95D2F78091BD01B7 +:103080009091BE01A091BF01B091C001482759277E +:103090006A277B274093BD015093BE016093BF0117 +:1030A0007093C0010C949C130F931F930091BD016A +:1030B0001091BE012091BF013091C001DC01CB0114 +:1030C000802B912BA22BB32B8093BD019093BE013B +:1030D000A093BF01B093C0011F910F910C949C135A +:1030E0000F931F930091BD011091BE012091BF016C +:1030F0003091C001DC01CB0180239123A223B323B3 +:103100008093BD019093BE01A093BF01B093C00115 +:103110001F910F910C949C130F931F930091BD016D +:103120001091BE012091BF013091C001DC01CB01A3 +:1031300080279127A227B3278093BD019093BE01DA +:10314000A093BF01B093C0011F910F910C949C13E9 +:103150000895CF92DF92EF92FF920F931F93CF9338 +:10316000DF938C01C090C101D090C201E090C301F7 +:10317000F090C4018091BD019091BE01A091BF016A +:10318000B091C001C82AD92AEA2AFB2ACFE1D0E0AF +:10319000D701C6010C2E04C0B695A79597958795C3 +:1031A0000A94D2F780FF06C0B8018C2F0E947507E1 +:1031B000019721F4219760F780E001C08C2FDF9107 +:1031C000CF911F910F91FF90EF90DF90CF900895D6 +:1031D000CF93DF93EC010E94A918BE010E947507EE +:1031E000DF91CF910895CB010E94E8180895809156 +:1031F000C50185958595859508958091C501877050 +:10320000089598E0899F90011124262B2093C501F1 +:103210000C94ED172091C501809582238093C50100 +:10322000982F977069F430E0482F552747FD509547 +:103230002417350729F08595859585950C940E18EA +:1032400008959091C501977081E009F480E0089598 +:1032500090910C01992321F090910D01911109C0D9 +:1032600020910E0130910F01F90132969FEF40E05D +:103270001FC0982F9695969596959F3050F5E091A2 +:103280000E01F0910F01E90FF11D877021E030E090 +:10329000A90102C0440F551F8A95E2F7CA01918126 +:1032A000892B818308959F3F39F04F5F4E3041F065 +:1032B00051915813F8CF0DC05111F7CF942FF5CF7E +:1032C0009F3F39F0F901E90FF11D97FDFA958283CF +:1032D0000895089590910C01992321F090910D018A +:1032E000911109C020910E0130910F01F901329620 +:1032F000205F3F4F1FC0982F9695969596959F30CB +:10330000F0F4E0910E01F0910F01E90FF11D8770CB +:1033100021E030E0A90102C0440F551F8A95E2F771 +:10332000CA01809591818923818308953196E2179E +:10333000F30729F090819813F9CF1082F7CF089501 +:1033400081E090E0E0910E01F0910F01E80FF91F8C +:103350001082019680319105A9F708959091D901C5 +:10336000892B8093D901089580959091D901892363 +:103370008093D90108951092D90108959091D801B0 +:10338000892B8093D801089580959091D801892345 +:103390008093D80108951092D80108959091D70193 +:1033A000892B8093D701089580959091D701892327 +:1033B0008093D70108951092D70108958093C60194 +:1033C00008951092C601089580910E0190910F0109 +:1033D000FC0131969C01205F3F4F80E0919191115B +:1033E0008F5FE217F307D1F70895E0910E01F09196 +:1033F0000F018091D9018083E0910E01F0910F01BE +:1034000090818091D801892B8083E0910E01F09109 +:103410000F0190818091D701892B80838091C60113 +:10342000882361F0E0910E01F0910F019081892BCA +:1034300080830E94E41981111092C60180910E01CF +:1034400090910F010C94230F20E0009739F0AC010C +:1034500041505109842395232F5FF7CF822F089580 +:103460008091F101843021F11092DB0120E488E1A8 +:1034700090E00FB6F894A895809360000FBE20935B +:10348000600080E00E94100883B7817F846083BF62 +:1034900083B7816083BF7894889583B78E7F83BF1D +:1034A00088E10FB6F89480936000109260000FBE20 +:1034B0000895089508950E94591A0E94A1020E9439 +:1034C0005A1A0E94960391E0811101C090E0892F61 +:1034D00008950E94B0130E94170F0C94100882E008 +:1034E00084BD93E095BD9AEF97BD80936E000895DB +:1034F0002FB7F8948091DC019091DD01A091DE015D +:10350000B091DF012FBF0895CF92DF92EF92FF922B +:103510000F931F932FB7F8944091DC015091DD0178 +:103520006091DE017091DF012FBF6A017B01EE2403 +:10353000FF248C0120E030E0C016D106E206F3063D +:1035400010F4415051099A01281B390BC9011F91F0 +:103550000F91FF90EF90DF90CF9008951F920F9200 +:103560000FB60F9211248F939F93AF93BF938091C7 +:10357000DC019091DD01A091DE01B091DF010196A7 +:10358000A11DB11D8093DC019093DD01A093DE01AC +:10359000B093DF01BF91AF919F918F910F900FBEBC +:1035A0000F901F9018950E94140CF8942FEF87EA43 +:1035B00091E6215080409040E1F700C0000087E094 +:1035C00090EBDC018093FB019093FC01A093FD0143 +:1035D000B093FE019CE088E10FB6F894A895809323 +:1035E00060000FBE90936000FFCFEF92FF920F93A9 +:1035F0001F93CF93DF93D82FCDE08C2F0E948F03A2 +:1036000005E010E0E82EF12CC701002E02C09595D0 +:1036100087950A94E2F780FF09C0602F7C2F80E035 +:103620000E942005D81302C081E006C00150110994 +:1036300058F7C15010F780E0DF91CF911F910F91A3 +:10364000FF90EF900895CF93C82F8CE20E94F51A57 +:10365000882321F08C2FCF910C94F51A80E0CF9124 +:103660000895CF930E94781C811102C00E945E1CB5 +:10367000C5E6C15049F00E94A1028FE39CE9019781 +:10368000F1F700C00000F5CF89E20E94231B8111F1 +:1036900013C18AE20E94231B81110E945E1C85E0F7 +:1036A0000E94231B81110E94D31A0E94831C8093C5 +:1036B000DA0187E00E94231B8823A9F18BE10E9495 +:1036C000231B882351F08091DA0181FB222720F906 +:1036D00091E0922790FB81F90EC08EE00E94231B9F +:1036E000882361F08091DA0182FB222720F991E0A2 +:1036F000922790FB82F98093DA0115C080E10E9445 +:10370000231B9091DA01882341F093FB222720F9B3 +:1037100081E0822780FB93F904C0892F809580FB8C +:1037200090F99093DA018091DA010E94871C0E943F +:10373000951C8093FA0180EE0E94231B882341F0A0 +:103740008091FA01982F909590FB80F98093FA016F +:1037500089E30E94231B882359F08091FA0181FBA1 +:10376000222720F991E0922790FB81F98093FA01BA +:1037700082EE0E94231B882359F08091FA0182FB7C +:10378000222720F991E0922790FB82F98093FA0199 +:1037900086EE0E94231B882359F08091FA0183FB57 +:1037A000222720F991E0922790FB83F98093FA0178 +:1037B00083EE0E94231B882359F08091FA0184FB39 +:1037C000222720F991E0922790FB84F98093FA0157 +:1037D00085E30E94231B882359F08091FA0185FB21 +:1037E000222720F991E0922790FB85F98093FA0136 +:1037F00081E30E94231B882359F08091FA0186FB04 +:10380000222720F991E0922790FB86F98093FA0114 +:1038100081E10E94231B882359F08091FA0187FBE4 +:10382000222720F991E0922790FB87F98093FA01F3 +:103830008091FA010E94991C8091FA0187FB8827E8 +:1038400080F980930D0187E20E94231BC82F8EE12F +:103850000E94231B8111C2608FE10E94231B8111F2 +:10386000C46080E20E94231B8111C86081E20E9433 +:10387000231B8111C06182E20E94231B8111C0625F +:1038800083E20E94231B8111C06484E20E94231BF7 +:10389000882311F0C06802C0CC2329F08C2F0E942D +:1038A000901C6C2F03C00E948C1C682F70E080E07D +:1038B00090E0CF910C947017CF9108956DEE7EEF4C +:1038C00080E090E00E94CA2260E082E090E00E94E6 +:1038D000B82260E083E090E00E94B82260E084E0DB +:1038E00090E00E94B82260E085E090E00C94B8225D +:1038F00080E090E00E94B22221E08D3E9E4F09F0D0 +:1039000020E0822F089582E090E00C94AA22682F94 +:1039100082E090E00C94B82283E090E00C94AA221C +:10392000682F83E090E00C94B82284E090E00C943F +:10393000AA22682F84E090E00C94B8228091E201E2 +:1039400080FF0BC06091130185E0689FB0011124D6 +:1039500075956795759567952BC081FF09C0609136 +:10396000130185E0689FB00111247595679520C00B +:1039700082FF07C06091130185E0689FB0011124A8 +:1039800017C09091E3019923D1F06091120196172D +:1039900088F72091130185E0289F90011124929FC0 +:1039A000A001939F500D112470E0CA010E947C2257 +:1039B0006038710540F46115710539F002C065E0A9 +:1039C00070E0862F08958FE7089581E00895809133 +:1039D000E20180FF08C06091110170E07595679564 +:1039E0007595679521C081FF06C06091110170E057 +:1039F0007595679519C082FF04C06091110170E050 +:103A000010C09091E3019923C1F0609110019617C5 +:103A1000A0F780911101899FC001112470E00E94DC +:103A20007C226038710528F46115710521F0862F1C +:103A300008958FE7089581E0089561E070E0F4CF84 +:103A4000803F21F40E949E1C819504C0813F29F48F +:103A50000E949E1C8093E6010895823F21F40E94FB +:103A60009E1C819504C0833F29F40E949E1C809374 +:103A7000E5010895893F19F40E94E71C05C08A3FBB +:103A800031F40E94E71C81958093E70108958B3FF4 +:103A900021F40E94E71C819504C08C3F29F40E9408 +:103AA000E71C8093E8010895843F21F48091E401AC +:103AB000816017C0853F21F48091E401826011C0CC +:103AC000863F21F48091E40184600BC0873F21F49C +:103AD0008091E401886005C0883F31F48091E40161 +:103AE00080618093E40108958D3F21F48091E2018B +:103AF00081600BC08E3F21F48091E201826005C09D +:103B00008F3F29F48091E20184608093E20108955F +:103B1000803F39F48091E60187FF6CC01092E60186 +:103B200069C0813F29F48091E6011816BCF362C098 +:103B30009091E501823F29F497FF5CC01092E50166 +:103B400059C0833F19F41916CCF354C0893F41F48E +:103B50008091E70118160CF04DC01092E7014AC0A1 +:103B60008A3F29F48091E70187FF44C0F6CF8B3F5D +:103B700039F48091E80187FF3DC01092E8013AC016 +:103B80008C3F29F48091E8011816BCF333C0843FC0 +:103B900021F48091E4018E7F17C0853F21F480914C +:103BA000E4018D7F11C0863F21F48091E4018B7F79 +:103BB0000BC0873F21F48091E401877F05C0883FD7 +:103BC00031F48091E4018F7E8093E40113C08D3F36 +:103BD00021F48091E2018E7F0BC08E3F21F4809111 +:103BE000E2018D7F05C08F3F29F48091E2018B7F38 +:103BF0008093E2018091E50181110EC08091E60180 +:103C000081110AC08091E701811106C08091E8010D +:103C1000811102C01092E301089584EE91E00E94A8 +:103C20002E0F0E94781A9093E1018093E00108958D +:103C30001F93CF93DF938091E0019091E1010E9467 +:103C4000841AAC019091E301992321F02091140191 +:103C500030E006C0209115018AE0289F90011124D0 +:103C60004217530708F486C08091E501C091E60130 +:103C7000D091E7011091E801811107C0C11176C010 +:103C8000D11174C0111172C075C09F3F19F09F5FB0 +:103C90009093E301181624F40E949E1C8093E50182 +:103CA0008091E50187FF05C00E949E1C819580934D +:103CB000E5011C1624F40E949E1C8093E60180916D +:103CC000E60187FF05C00E949E1C81958093E60156 +:103CD0006091E501662339F1C091E601CC2319F129 +:103CE000772767FD7095872F972F0E948D2123E3FB +:103CF00033E343E35FE30E94F1210E945A21609382 +:103D0000E5016C2F772767FD7095872F972F0E940D +:103D10008D2123E333E343E35FE30E94F1210E941B +:103D20005A216093E6011D1624F40E94E71C80933B +:103D3000E7018091E70187FF05C00E94E71C81959C +:103D40008093E701111624F40E94E71C8093E80198 +:103D50008091E80187FF05C00E94E71C8195809350 +:103D6000E801DF91CF911F910C940D1E9F3F09F048 +:103D70008ECF96CFDF91CF911F910895E4EEF1E0C1 +:103D800085E0DF011D928A95E9F71092E301109218 +:103D9000E2010895833081F128F4813059F08230B6 +:103DA000D1F00895853009F449C0B8F1863009F49E +:103DB00056C0089580911501262F30E0280F311D3F +:103DC0002F3F310524F4680F6093150108958FEF9C +:103DD00080931501089580911401262F30E0280F5B +:103DE000311D2F3F310524F4680F609314010895AD +:103DF0008FEF80931401089580911301262F30E0F6 +:103E0000280F311D2F3F310524F4680F60931301F3 +:103E100008958FEF80931301089580911201262F4A +:103E200030E0280F311D2F3F310524F4680F6093D7 +:103E3000120108958FEF809312010895809111016E +:103E4000262F30E0280F311D2F3F310524F4680F55 +:103E50006093110108958FEF80931101089580916F +:103E60001001262F30E0280F311D2F3F310524F49B +:103E7000680F6093100108958FEF809310010895EB +:103E8000833011F128F4813049F0823091F00895A7 +:103E9000853081F120F18630C1F1089580911501BE +:103EA000681720F4861B8093150108951092150160 +:103EB000089580911401681720F4861B80931401E3 +:103EC000089510921401089580911301681720F449 +:103ED000861B809313010895109213010895809119 +:103EE0001201681720F4861B809312010895109226 +:103EF0001201089580911101681720F4861B8093A8 +:103F00001101089510921101089580911001681710 +:103F100020F4861B809310010895109210010895DB +:103F20000F931F938D3109F46BC008F03FC08E30A2 +:103F300009F47FC0C0F4873009F469C068F48630A2 +:103F400009F0B1C08091DA01817F8E7F8093DA0120 +:103F500081E08093EA01A8C0883009F4A2C08B30C8 +:103F600009F49FC0A0C0863109F49BC078F4803169 +:103F700009F472C0813109F096C00E94B01390918B +:103F80000D0181E0892780930D018BC0893109F4EF +:103F900088C08B3109F087C08091DA0181FB22272C +:103FA00020F991E0922790FB81F94CC0853309F408 +:103FB00070C048F4873209F46CC008F459C08932E3 +:103FC00009F467C070C0833438F48A3308F04EC0F7 +:103FD000883309F466C067C0833409F45AC0883452 +:103FE00009F061C00E94B0130FEF13ED20E3015000 +:103FF00010402040E1F700C000000E94D31A51C0D9 +:104000000E9414210E94170F0E9410084AC090912C +:10401000DA01892F8095817080FB90F929F09660F4 +:1040200098609093DA0140C0997F977F9093DA016E +:1040300038C08091DA0182FB222720F991E0922793 +:1040400090FB82F98093DA01992359F18091DA018A +:1040500081608093DA0125C08091DA0183FB2227F9 +:1040600020F991E0922790FB83F9ECCF895301C0AE +:104070008D5141E050E060E070E08A019B0104C096 +:10408000000F111F221F331F8A95D2F7C901B801F3 +:1040900004C061E070E080E090E00E9470170E9430 +:1040A000B01381E001C080E01F910F91089580E07E +:1040B000089580E00895CF93C82F8091EA01813060 +:1040C00079F018F08230E9F187C0E0910E01F091AB +:1040D0000F018081813169F0823209F07FC009C00F +:1040E000E0910E01F0910F018081813111F0823257 +:1040F00061F48C2F0E945720811104C08C2F0E94E4 +:10410000901F1DC081E090E01AC08C2F0E945920A2 +:10411000811114C0C43179F048F4CB3079F0C0314A +:1041200009F060C082E08093EA0108C0C93219F04A +:10413000C83321F057C01092EA0154C081E0817069 +:1041400053C0C93289F118F5C43171F1A8F4C730F0 +:1041500009F046C08AE08093150194E19093140120 +:1041600093E0909313018093120188E080931101F2 +:1041700088E28093100134C0CE51C63088F5EC2F10 +:10418000F0E0E65DFE4F80818093E90129C0CE34E6 +:10419000E9F020F4CB3421F56AE013C0C13579F0A1 +:1041A000C235F1F461E00DC08091E901882319F076 +:1041B0001092E90115C081E08093EA0115C061E029 +:1041C00006C08091E9010E94CA1E0AC06AE080917F +:1041D000E9010E94401F04C01092EA0180E004C07F +:1041E00081E002C080E0ABCFCF910895E1E8F0E03C +:1041F0008081886080838081816080838FB7F8941C +:1042000093E09093890090ED909388008FBF08957C +:10421000EFE6F0E08081826080830895EFE6F0E0D1 +:1042200080818D7F80830895EFE6F0E0908182E0C9 +:104230008927808308951F920F920FB60F92112441 +:104240002F933F934F935F936F937F938F939F939E +:10425000AF93BF93EF93FF938091EB019091EC01AB +:1042600001969093EC018093EB01811103C082E0F1 +:104270000E941008E091EC01E695E695F0E0E05A26 +:10428000FC4FE4918091EB018E1303C080E00E940B +:104290001008FF91EF91BF91AF919F918F917F9106 +:1042A0006F915F914F913F912F910F900FBE0F90A3 +:1042B0001F90189504D06894B1118DC0089570D0E6 +:1042C00088F09F5790F0B92F9927B751A0F0D1F0FF +:1042D000660F771F881F991F1AF0BA95C9F712C089 +:1042E000B13081F077D0B1E0089574C0672F782F96 +:1042F0008827B85F39F0B93FCCF3869577956795F5 +:10430000B395D9F73EF490958095709561957F4F60 +:104310008F4F9F4F0895E89409C097FB3EF4909506 +:104320008095709561957F4F8F4F9F4F9923A9F08E +:10433000F92F96E9BB279395F6958795779567951D +:10434000B795F111F8CFFAF4BB0F11F460FF1BC061 +:104350006F5F7F4F8F4F9F4F16C0882311F096E9F4 +:1043600011C0772321F09EE8872F762F05C06623A2 +:1043700071F096E8862F70E060E02AF09A95660F5B +:10438000771F881FDAF7880F9695879597F9089514 +:1043900057FD9058440F551F59F05F3F71F04795F6 +:1043A000880F97FB991F61F09F3F79F087950895DB +:1043B000121613061406551FF2CF4695F1DF08C0FA +:1043C000161617061806991FF1CF86957105610517 +:1043D00008940895E894BB2766277727CB0197F9BF +:1043E00008950BD078C069D028F06ED018F09523CE +:1043F00009F05AC05FC01124EECFCADFA0F3959F29 +:10440000D1F3950F50E0551F629FF001729FBB27BB +:10441000F00DB11D639FAA27F00DB11DAA1F649F67 +:104420006627B00DA11D661F829F2227B00DA11D1A +:10443000621F739FB00DA11D621F839FA00D611DA0 +:10444000221F749F3327A00D611D231F849F600DC1 +:10445000211D822F762F6A2F11249F5750408AF0FA +:10446000E1F088234AF0EE0FFF1FBB1F661F771F86 +:10447000881F91505040A9F79E3F510570F014C01D +:10448000AACF5F3FECF3983EDCF38695779567956E +:10449000B795F795E7959F5FC1F7FE2B880F911DA4 +:1044A0009695879597F9089597F99F6780E870E04A +:1044B00060E008959FEF80EC089500240A9416169A +:1044C000170618060906089500240A941216130602 +:1044D000140605060895092E0394000C11F4882390 +:1044E00052F0BB0F40F4BF2B11F460FF04C06F5FAC +:1044F0007F4F8F4F9F4F089597FB072E16F4009420 +:1045000007D077FD09D00E94962207FC05D03EF423 +:10451000909581959F4F0895709561957F4F08956F +:10452000EE0FFF1F0590F491E02D0994AA1BBB1B11 +:1045300051E107C0AA1FBB1FA617B70710F0A61BA3 +:10454000B70B881F991F5A95A9F780959095BC01C4 +:10455000CD010895F999FECF92BD81BDF89A9927B2 +:1045600080B50895A8E1B0E042E050E00C94D2227A +:10457000262FF999FECF92BD81BDF89A019700B41C +:10458000021639F01FBA20BD0FB6F894FA9AF99ABC +:104590000FBE08950196272F0E94B9220C94B822CD +:1045A000DC01CB01FC01F999FECF06C0F2BDE1BDF3 +:1045B000F89A319600B40D9241505040B8F70895E2 +:0445C000F894FFCF9D +:1045C40002201208A0087D08490815080101C70146 +:1045D40028080A03140A3F4D36392103D4029E02E7 +:1045E4006502F80111022A024302010203040506CE +:0445F40007080900AB +:00000001FF diff --git a/keyboards/ergodox_ez/keymaps/supercoder/config_user.h b/keyboards/ergodox_ez/keymaps/supercoder/config_user.h new file mode 100644 index 0000000000..8da1383726 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/supercoder/config_user.h @@ -0,0 +1,9 @@ +#ifndef CONFIG_USER_H +#define CONFIG_USER_H 1 + +#include "config.h" + +#undef LOCKING_SUPPORT_ENABLE +#undef LOCKING_RESYNC_ENABLE + +#endif diff --git a/keyboards/ergodox_ez/keymaps/supercoder/images/layout.png b/keyboards/ergodox_ez/keymaps/supercoder/images/layout.png new file mode 100644 index 0000000000..c72958c6e7 Binary files /dev/null and b/keyboards/ergodox_ez/keymaps/supercoder/images/layout.png differ diff --git a/keyboards/ergodox_ez/keymaps/supercoder/images/supercoder_2000.jpg b/keyboards/ergodox_ez/keymaps/supercoder/images/supercoder_2000.jpg new file mode 100644 index 0000000000..d690eaf020 Binary files /dev/null and b/keyboards/ergodox_ez/keymaps/supercoder/images/supercoder_2000.jpg differ diff --git a/keyboards/ergodox_ez/keymaps/supercoder/keymap.c b/keyboards/ergodox_ez/keymaps/supercoder/keymap.c new file mode 100644 index 0000000000..ca21d30fd2 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/supercoder/keymap.c @@ -0,0 +1,75 @@ +/* + * SuperCoder 2000 layout + */ + +#include "ergodox_ez.h" + +/* Layers */ + +#define SC2K 0 // default layer + +/* The Keymap */ + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + /* Keymap 0: Base Layer + * + * ,-----------------------------------------------------. ,-----------------------------------------------------. + * | 0 | 0 | 0 | 0 | 0 | 0 | 0 | | 1 | 1 | 1 | 1 | 1 | 1 | 1 | + * |-----------+------+------+------+------+-------------| |------+------+------+------+------+------+-----------| + * | 0 | 0 | 0 | 0 | 0 | 0 | 0 | | 1 | 1 | 1 | 1 | 1 | 1 | 1 | + * |-----------+------+------+------+------+------| | | |------+------+------+------+------+-----------| + * | 0 | 0 | 0 | 0 | 0 | 0 |------| |------| 1 | 1 | 1 | 1 | 1 | 1 | + * |-----------+------+------+------+------+------| 0 | | 1 |------+------+------+------+------+-----------| + * | 0 | 0 | 0 | 0 | 0 | 0 | | | | 1 | 1 | 1 | 1 | 1 | 1 | + * `-----------+------+------+------+------+-------------' `-------------+------+------+------+------+-----------' + * | 0 | 0 | 0 | 0 | 0 | | 1 | 1 | 1 | 1 | 1 | + * `-----------------------------------' `-----------------------------------' + * ,-------------. ,-------------. + * | DONE | DONE | | DONE | DONE | + * ,------|------|------| |------+------+------. + * | | | DONE | | DONE | | | + * | DONE | DONE |------| |------| DONE | DONE | + * | | | DONE | | DONE | | | + * `--------------------' `--------------------' + */ +[SC2K] = KEYMAP( + // left hand + KC_0 ,KC_0 ,KC_0 ,KC_0 ,KC_0 ,KC_0 ,KC_0 +,KC_0 ,KC_0 ,KC_0 ,KC_0 ,KC_0 ,KC_0 ,KC_0 +,KC_0 ,KC_0 ,KC_0 ,KC_0 ,KC_0 ,KC_0 +,KC_0 ,KC_0 ,KC_0 ,KC_0 ,KC_0 ,KC_0 ,KC_0 +,KC_0 ,KC_0 ,KC_0 ,KC_0 ,KC_0 + + ,KC_ENT ,KC_ENT + ,KC_ENT + ,KC_ENT ,KC_ENT ,KC_ENT + + // right hand + ,KC_1 ,KC_1 ,KC_1 ,KC_1 ,KC_1 ,KC_1 ,KC_1 + ,KC_1 ,KC_1 ,KC_1 ,KC_1 ,KC_1 ,KC_1 ,KC_1 + ,KC_1 ,KC_1 ,KC_1 ,KC_1 ,KC_1 ,KC_1 + ,KC_1 ,KC_1 ,KC_1 ,KC_1 ,KC_1 ,KC_1 ,KC_1 + ,KC_1 ,KC_1 ,KC_1 ,KC_1 ,KC_1 + + ,KC_ENT ,KC_ENT + ,KC_ENT + ,KC_ENT ,KC_ENT ,KC_ENT + ), +}; + +const uint16_t PROGMEM fn_actions[] = { +}; + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + 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) { +} diff --git a/keyboards/ergodox_ez/keymaps/supercoder/makefile.mk b/keyboards/ergodox_ez/keymaps/supercoder/makefile.mk new file mode 100644 index 0000000000..41a195d9c0 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/supercoder/makefile.mk @@ -0,0 +1,6 @@ +BOOTMAGIC_ENABLE=no +COMMAND_ENABLE=no +SLEEP_LED_ENABLE=no +UNICODE_ENABLE=no +MOUSEKEY_ENABLE=no +EXTRAKEY_ENABLE=no diff --git a/keyboards/ergodox_ez/keymaps/techtomas/compiled.hex b/keyboards/ergodox_ez/keymaps/techtomas/compiled.hex new file mode 100644 index 0000000000..6bab275241 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/techtomas/compiled.hex @@ -0,0 +1,1169 @@ +:100000000C94D1020C9415030C9415030C94150355 +:100010000C9415030C9415030C9415030C94150300 +:100020000C9415030C9415030C94BD0D0C948F0EB9 +:100030000C9415030C9415030C9415030C941503E0 +:100040000C9415030C9499220C9415030C9415032D +:100050000C9415030C942C1C0C9415030C94150390 +:100060000C9415030C9415030C9415030C941503B0 +:100070000C9415030C9415030C9415030C941503A0 +:100080000C9415030C9415030C9415030C94150390 +:100090000C9415030C9415030C9415030C94150380 +:1000A0000C9415030C9415030C941503FC0E1E0FF1 +:1000B0000C101E0F0C10630F860F0C10DB0FEE0FD1 +:1000C000BD12BD12EC12EC122213421373147314FE +:1000D0004D137314FD13FD136414731473146D1412 +:1000E0000A140A140A140A140A140A140A140A1420 +:1000F0000A140A140A140A140A140A140A140A1410 +:100100001C1429143014371441140000F0A1F0A27B +:10011000F0A335422B77297FE100504100001E00FB +:10012000140004001D004F434D431F001A00160029 +:100130001B00E0004C002000080007000600E20061 +:100140002A002100150009001900E3004A4122009D +:1001500017000A0005000000E0002C082F00000036 +:100160002B000000E3002D00300000002B020000F7 +:10017000E30423001C000B0011000000E302240034 +:1001800018000D001000E7004B4225000C000E0087 +:10019000360052002C00260012000F0037005100DC +:1001A00028002700130033423842C3004E412E007E +:1001B0003177347FE500C10000000100010001003B +:1001C0000100010000003A001E022002220201008C +:1001D00001003B001F0221022302010001003C003C +:1001E0002F0226022F00010001003D0030022702ED +:1001F0003000010001003E003102350035020000F0 +:1002000001000100360200006900000001002B001F +:10021000370200006A00000001003F003302330093 +:100220002402000001004000240021001E002700DD +:1002300001004100250022001F003700010042009C +:100240002600230020002E0001004300310025027B +:100250002D002E020100440045000100280001008D +:100260000000010001000100010001000000010088 +:10027000140801001D080100010001001A08010016 +:100280001B08010001000100010001000608010037 +:100290000100010001000100190801000100010036 +:1002A0000100010006010000010001002B02000016 +:1002B0000100000001000100AE000000A8000000E5 +:1002C00001000100AC00AA000100000001000100D3 +:1002D000AB00A900010001000100010001000100C4 +:1002E0000100010001000100010001000100010006 +:1002F00001000100460001000100010001000100B1 +:1003000001000100010001000000A5000100010042 +:1003100001000100000001000100010001000100D6 +:10032000010001000100F2000100010001000100D4 +:10033000F000F10001000100010001000100F300E4 +:1003400001000100E20001000100F400F5000000DE +:10035000E1000100010000000100000001000100B7 +:1003600001000000010000004A00010001005000EF +:10037000010000004D0001000100510001000100DA +:100380000100010001005200010001000100010014 +:1003900001004F0001000100010001000100010007 +:1003A0000100010001000100010001000100010045 +:1003B000000016034500720067006F0044006F00E4 +:1003C0007800200045005A00000016034500720026 +:1003D00067006F0044006F007800200045005A005D +:1003E00000000403090409026D00040100A0FA09D9 +:1003F0000400000103010100092111010001224054 +:10040000000705810308000A090401000103010235 +:1004100000092111010001224D0007058203080097 +:100420000A09040200010300000009211101000172 +:100430002236000705830308000A090403000103AC +:100440000000000921110100012239000705840381 +:100450001000011201100100000008EDFE07130159 +:10046000000102000105010906A101050719E029A3 +:10047000E715002501950875018102050819012974 +:1004800005950575019102950175039101050719FF +:1004900000297715002501957875018102C00501B5 +:1004A0000980A101850216010026B7001A01002A61 +:1004B000B700751095018100C0050C0901A10185E7 +:1004C00003160100269C021A01002A9C0275109551 +:1004D000018100C005010902A1010901A10005096E +:1004E0001901290515002501950575018102950160 +:1004F000750381010501093009311581257F9502B8 +:100500007508810609381581257F950175088106D2 +:10051000050C0A38021581257F950175088106C0F2 +:10052000C005010906A101050719E029E715002505 +:100530000195087501810295017508810105081969 +:100540000129059505750191029501750391010534 +:1005500007190029FF150026FF0095067508810080 +:10056000C0000000000000000000000001020406BE +:100570000A0F17202C3A4A5D71879DB3C7DAE9F557 +:10058000FCFFFCF5E9DAC7B39D87715D4A3A2C2080 +:10059000170F0A060402010000000000000000001E +:1005A000000011241FBECFEFDAE0DEBFCDBF04B6DE +:1005B00003FE24C08091FB019091FC01A091FD01FC +:1005C000B091FE018730904BA740B04BB9F4109228 +:1005D000FB011092FC011092FD011092FE0114BE6D +:1005E00084B7877F84BF88E10FB6F894809360005A +:1005F000109260000FBEE0E0FFE3099511E0A0E07B +:10060000B1E0E0ECF8E402C005900D92A433B1072C +:10061000D9F711E0A4E3B1E001C01D92AB3FB107EF +:10062000E1F70E94010B0C945E240C9400001092E0 +:10063000B9008AE08093B800089594EA9093BC00D2 +:100640009091BC0097FFFCCF9091B900987F9830B3 +:1006500021F0903111F081E008958093BB0084E88F +:100660008093BC008091BC0087FFFCCF8091B900D3 +:10067000887F883111F0803471F780E0089584E933 +:100680008093BC008091BC0084FDFCCF08958093D2 +:10069000BB0084E88093BC008091BC0087FFFCCF46 +:1006A0009091B900987F81E0983209F480E0089534 +:1006B00084E88093BC008091BC0087FFFCCF8091D0 +:1006C000BB00089580910101811115C080E40E9452 +:1006D0001D038093010181110CC082E10E94470338 +:1006E00080930101811105C08FEF0E944703809321 +:1006F00001010E943F0384B1807F84B985B1807F6E +:1007000085B98AB1837F8AB98BB1837F8BB93E98D3 +:10071000469808950E941D05809301010E9462037E +:1007200080B38C7080BB81B3836F81BBA5E3B1E0E4 +:10073000E3E4F1E08EE08E0F11921D928E13FCCF58 +:100740000C940705BF92CF92DF92EF92FF920F9326 +:100750001F93CF93DF9380910101882379F08091DB +:1007600034018F5F80933401811108C00E941D0500 +:1007700080930101811102C00E94AF0405E311E0E2 +:10078000C0E0D0E0DD24D39482E0C82EEE24E394D0 +:10079000F12CC730D10500F580910101811164C0B1 +:1007A00080E40E941D0380930101811112C082E147 +:1007B0000E9447038093010181110BC0C7010C2ED9 +:1007C00001C0880F0A94EAF780950E94470380933E +:1007D00001010E943F0348C0CA30A1F028F4C8308C +:1007E00059F0C93061F005C0CC3089F070F0CD30DF +:1007F00089F0209A289810C0219A29980DC0229A31 +:100800002A980AC0239A2B9807C0529A01C0539A7B +:100810005B9802C03E9A469890EA9A95F1F79FB18C +:10082000799902C082E001C080E091709D25982BEB +:100830007C9902C084E001C080E0892B7D9902C0D0 +:1008400038E001C030E0832B7E9902C020E101C076 +:1008500020E0822B9FB19095991F9927991F92951F +:10086000990F907E892B0FC080910101811149C0A1 +:1008700080E40E941D0380930101882379F1B12C4B +:100880000E943F038B2DF8019081981719F0808307 +:10089000C09200010E94620321960F5F1F4FCE306D +:1008A000D10509F076CF80910001882361F1815054 +:1008B00080930001882339F08FE99FE00197F1F7D9 +:1008C00000C0000020C0A3E4B1E0E5E3F1E0CF0107 +:1008D000825F91919D938E13FCCF15C083E10E949E +:1008E0004703809301018111CACF81E40E941D0357 +:1008F000809301018111C3CF0E945803B82EB09498 +:10090000BFCF80E0C0CF0E94AD0481E0DF91CF91E6 +:100910001F910F91FF90EF90DF90CF90BF900895BF +:10092000E82FF0E0ED5BFE4F8081089508950F936E +:100930001F93CF93DF93C3E4D1E010E00C2F025F4D +:10094000899190E00E94521B180F0C13F9CF812F50 +:10095000DF91CF911F910F9108950C947D055698CA +:100960005E9825982D9826982E9827982F988FEF87 +:1009700090E0909389008093880090938B008093FF +:100980008A0090938D0080938C00259A2D9A2FEFEA +:1009900080E792E0215080409040E1F700C00000E5 +:1009A000269A2E9A2FEF80E792E0215080409040C7 +:1009B000E1F700C00000279A2F9A2FEF80E792E01E +:1009C000215080409040E1F700C0000025982D980C +:1009D0002FEF80E792E0215080409040E1F700C087 +:1009E000000026982E982FEF80E792E0215080405B +:1009F0009040E1F700C0000027982F9856985E9825 +:100A000025982D9826982E9827982F98089589EA4A +:100A10008093800089E08093810024982C983F98EF +:100A20008AB18F748AB96E98479A8BB1806B8BB9F3 +:100A3000769A0E94AF040C947C0580E280930101B9 +:100A40008091510181110EC00E94170381E08093B3 +:100A500051012FEF83ED90E3215080409040E1F76A +:100A600000C0000080E40E941D03809301018111F9 +:100A70002EC00E94470380930101811128C00E946B +:100A8000470380930101811122C08FE30E94470335 +:100A90008093010181111BC00E943F0380E40E94EA +:100AA0001D0380930101811112C08CE00E94470355 +:100AB0008093010181110BC00E94470380930101C3 +:100AC000811105C08FE30E944703809301010E94BA +:100AD0003F0380910101089561110BC0FC018281E7 +:100AE000882321F085EE0E94611103C085EE0E94EB +:100AF000291280E090E0089508956091BD01709101 +:100B0000BE018091BF019091C0010E945E1B56986A +:100B10005E9825982D9826982E9827982F988230A1 +:100B200039F0833041F0813041F4259A2D9A0895AF +:100B3000269A2E9A0895279A2F9A089581E008956B +:100B400081E008950C94A00508950F931F93CF930F +:100B5000DF938C01FC01C081D181CE010E94D719A5 +:100B6000BE010E944E06EC01B8010E94A205882336 +:100B700009F48DC0F8018281882309F44AC080916C +:100B80005D0181111FC0C431F0E5DF0709F051C0DC +:100B90000E94A40581E080935D010E94F61B909362 +:100BA0005C0180935B0110925401109256011092E7 +:100BB0005501109258011092570110925A0110924B +:100BC000590165C080915B0190915C010E94021CFB +:100BD000883C910570F480915401E82FF0E0EE0F0D +:100BE000FF1FEB5AFE4FD183C0838F5F8093540168 +:100BF0004EC0C43880E5D80721F0C538D04501F192 +:100C00003AC0F8018281882341F01092520182E0BB +:100C10001EC0C438E0E5DE0759F58091520181110C +:100C200006C086E20E94611186E20E94291282E0DB +:100C30001CC0C438F0E5DF0741F3C538D045D9F40E +:100C4000F8018281882331F01092530180E20E94E2 +:100C500078121DC080915301811106C087E20E9465 +:100C6000611187E20E94291280E20E947F120FC068 +:100C7000C538D04529F381E0809352018093530118 +:100C8000C801DF91CF911F910F910C949E0580E0D8 +:100C9000DF91CF911F910F910895089596E0799F6C +:100CA000F001112494E5899FE00DF11D1124E60F58 +:100CB000F11DEE0FFF1FEE5EFE4F8591949108959A +:100CC000880F991FFC01E657F04085919491089593 +:100CD000880F991FFC01E65FFE4F8591949108955E +:100CE0000F931F93CF93DF93EC01811520E39207BD +:100CF00050F5C11580E2D80708F0C3C0CB3BD10541 +:100D000090F4C83AD10508F06AC0C53AD10508F098 +:100D10005BC0C430D10508F0D0C1219709F0CAC129 +:100D200001E010E00AC2CF3FD10511F008F0C5C1C3 +:100D3000C03FD10508F0A2C0CE01805E910908979E +:100D400008F4BBC1B7C1C13090E5D90709F4A2C00E +:100D500020F5C0318FE4D80770F4C11590E4D907AD +:100D600008F094C0C11521E3D20708F0A3C1DD2724 +:100D70008E01106CE2C1C115D04509F09BC10E94E3 +:100D8000DE148FEF94E32CE0815090402040E1F797 +:100D900000C000000E94511CD0C1C11597E5D907C1 +:100DA00058F4C03121E5D20708F01CC1C43180E5F8 +:100DB000D80708F475C07EC1CE01905781159041C7 +:100DC00008F078C1DF7073C1C53AD10509F477C165 +:100DD000C63AD10509F076C102E810E4AEC1C83ABE +:100DE000D10509F472C1C93AD10509F471C1CA3AF1 +:100DF000D10509F470C1CB3AD10509F46FC1CC3AE1 +:100E0000D10509F46EC1CD3AD10509F46DC1C03BDD +:100E1000D10509F46CC1CE3AD10509F46BC1CF3AC2 +:100E2000D10509F46AC1C13BD10509F469C1C23BCE +:100E3000D10509F468C1C33BD10509F467C1C43BBE +:100E4000D10509F466C1C53BD10509F465C1C63BAE +:100E5000D10509F464C1C73BD10509F463C1C83B9E +:100E6000D10509F462C1C93BD10509F461C1CA3B8E +:100E7000D10509F460C100E014E45FC18E01106582 +:100E80005CC1CE019F700E94680658C1DF708E0160 +:100E9000106A53C18091DA0181608093DA014DC1FB +:100EA0000E94F61D811102C00E94DC1D0E94131ECB +:100EB00090E09093FB018093FA01C23080E5D8075F +:100EC00021F48091FA01816086C0C43090E5D90791 +:100ED00021F48091FA0182607EC0C63020E5D207FD +:100EE00021F48091FA01846076C0C83080E5D8078B +:100EF00019F48091FA0127C0CA3090E5D90721F48E +:100F00008091FA01806167C0CC3020E5D20721F4DE +:100F10008091FA0180625FC0CE3080E5D80721F46D +:100F20008091FA01806457C0C03190E5D90721F45F +:100F30008091FA0180684FC0C23120E5D20729F4C0 +:100F40008091FA018460886046C0C33080E5D8078C +:100F500021F48091FA018E7F3EC0C53090E5D9071B +:100F600021F48091FA018D7F36C0C73020E5D20789 +:100F700021F48091FA018B7F2EC0C93080E5D8071B +:100F800019F48091FA0126C0CB3090E5D90721F4FD +:100F90008091FA018F7E1FC0CD3020E5D20721F469 +:100FA0008091FA018F7D17C0CF3080E5D80721F4FA +:100FB0008091FA018F7B0FC0C13190E5D90721F4F0 +:100FC0008091FA018F7707C0C331D04531F4809109 +:100FD000FA018B7F877F8093FA018091FA010E944A +:100FE000171EABC08D2F99278F70992781309105DF +:100FF000D9F49E012370332702C0880F991F2A95C8 +:10100000E2F79C688E0144E0000F111F4A95E1F75A +:1010100000271370802B912B53E0CC0FDD1F5A95C6 +:10102000E1F7C076DD272FC08230910531F4DC2F47 +:10103000CC278E01016F106A80C08330910569F45E +:10104000CE018370992701E010E002C0000F111F4C +:101050008A95E2F7C8019C680FC084309105B9F405 +:10106000CE018370992701E010E002C0000F111F2C +:101070008A95E2F7C8019A6823E0CC0FDD1F2A9514 +:10108000E1F7C07ED7708C010C2B1D2B56C085302C +:10109000910531F4DC2FCC278E01046F106A4DC00E +:1010A000069709F04AC0CF71DD27DC2FCC278E01CF +:1010B000106243C000E010E040C08E013EC001E875 +:1010C00010E43BC003E810E438C002EE14E435C07D +:1010D00009EE14E432C00AEE14E42FC005EB14E468 +:1010E0002CC006EB14E429C007EB14E426C00CEC7A +:1010F00014E423C00DEC14E420C003E815E41DC083 +:101100000AE815E41AC002E915E417C004E915E479 +:1011100014C001E216E411C003E216E40EC004E2BA +:1011200016E40BC005E216E408C006E216E405C0AA +:1011300007E216E402C00AE216E4C801DF91CF918B +:101140001F910F91089596E0799FF001112494E585 +:10115000899FE00DF11D1124E60FF11DEE0FFF1F19 +:10116000EE5EFE4F85919491803E9105E0F4803CC7 +:10117000910558F58133910509F46FC048F489321F +:10118000910509F463C08A32910509F46DC072C0FB +:1011900089339105E9F082389105D1F085339105C5 +:1011A00009F44DC067C0833E910581F138F4803E5B +:1011B0009105B9F0823E9105D9F05CC0863E91055B +:1011C00061F1873E9105A1F155C00E946006089526 +:1011D0002091FA0120FD02C021FF4CC080EE90E07A +:1011E00049C08091FA0180FFF9CF89E390E042C0C5 +:1011F0008091FA0182FF0EC08091FA0184FF03C042 +:1012000080E090E037C083EE90E034C08091FA0136 +:1012100082FFF2CF82EE90E02DC08091FA0183FF31 +:101220000BC08091FA0184FDEBCF87EE90E022C0E5 +:101230008091FA0183FFF5CF86EE90E01BC080918C +:10124000FA0185FF07C089E290E014C08091FA019D +:1012500085FFF9CF85E390E00DC08091FA0186FF0C +:1012600007C08AE290E006C08091FA0186FFF9CFBC +:1012700081E390E00E947006089508950C943D0962 +:1012800080916E010895CF93DF9300D01F92CDB768 +:10129000DEB79C018091F101843019F593E09983C8 +:1012A0003B832A839093E9008FEF9091E80081506F +:1012B00095FD06C095ED9A95F1F700008111F5CFE7 +:1012C0008091E80085FF0DC040E050E063E070E0F1 +:1012D000CE0101960E94AD0B8091E8008E7780933D +:1012E000E8000F900F900F90DF91CF910895CF936A +:1012F000DF9300D01F92CDB7DEB72091F1012430EB +:1013000021F522E029839B838A8383E08093E9008F +:101310008FEF9091E800815095FD06C095ED9A956C +:10132000F1F700008111F5CF8091E80085FF0DC035 +:1013300040E050E063E070E0CE0101960E94AD0B0A +:101340008091E8008E778093E8000F900F900F90C7 +:10135000DF91CF9108952091F1012430F1F422E042 +:101360002093E9002FEF3091E800215035FD06C0B1 +:1013700035ED3A95F1F700002111F5CF2091E80005 +:1013800025FF0BC040E050E065E070E00E94AD0B2F +:101390008091E8008E778093E8000895CF93DF93E3 +:1013A000EC019091F101943009F046C080910C015C +:1013B0008823D9F080910D018823B9F09093E9003A +:1013C0008FEF9091E800815095FD06C095E19A95C8 +:1013D000F1F700008111F5CF8091E80085FF2CC066 +:1013E00040E050E060E170E017C081E08093E900E8 +:1013F0008FEF9091E800815095FD06C095ED9A958C +:10140000F1F700008111F5CF8091E80085FF14C04D +:1014100040E050E068E070E0CE010E94AD0B8091AA +:10142000E8008E778093E80080E1FE01AEE5B1E050 +:1014300001900D928A95E1F7DF91CF910895809107 +:10144000F001811109C00E94420D0E949F0D809100 +:10145000E20084608093E20008951092F001089504 +:1014600008950C9486220E94E71B0E948C220E9401 +:1014700045100C943E0942E061EC81E00E94BC0CF6 +:1014800042E061EC82E00E94BC0C42E061EC83E04F +:101490000E94BC0C42E161EC84E00C94BC0C809195 +:1014A000F301833009F455C030F4813071F082309B +:1014B00009F48EC008958A3009F47AC08B3009F49B +:1014C00060C0893009F09CC020C08091F201813A4F +:1014D00009F096C08091E800877F8093E8008091B2 +:1014E000F6019091F701892B21F460E18EE591E0FE +:1014F00003C060E080E090E070E00E94F80B809113 +:10150000E8008B778093E80008958091F2018132A2 +:1015100009F076C08091F6019091F701009719F0DB +:10152000039709F06DC08091E800877F8093E80001 +:101530008091E80082FD05C08091F1018111F8CF12 +:101540005FC08091F10080936E018091E8008B77FD +:1015500053C08091F201813A09F052C08091F601A6 +:101560009091F701892B09F04BC08091E800877FAB +:101570008093E8008091E80080FFFCCF80910C010F +:1015800036C08091F2018132D9F58091F6019091B7 +:10159000F701892BA9F58091E800877F8093E80007 +:1015A0000E94F10C8091F40180930C010C94DE14E4 +:1015B0008091F201813221F58091E800877F80934C +:1015C000E8000E94F10C8091F50180936F0108956D +:1015D0008091F201813AA1F48091E800877F8093A5 +:1015E000E8008091E80080FFFCCF80916F0180933C +:1015F000F1008091E8008E778093E8000C94F10C64 +:10160000089584B7877F84BF88E10FB6F8948093EC +:101610006000109260000FBE90E080E80FB6F89472 +:1016200080936100909361000FBE0E9494100E940D +:10163000420D0E949F0D8091E20084608093E20041 +:1016400078940E9425100E94961082E091E00E94FA +:1016500040100E9474228091F101853069F40E944B +:10166000AE1B8091EF018823B1F30E94D91B882320 +:1016700091F30E94970BEFCF0E949C10ECCF292F83 +:10168000332723303105C9F064F42130310581F06E +:101690002230310509F043C08DE690E026EE33E0BC +:1016A00042C021323105F1F02232310541F137C01B +:1016B00082E190E023E534E036C09927813091053E +:1016C00041F08230910541F0892B49F5E2EEF3E0DB +:1016D00005C0EAECF3E002C0E2EBF3E0849190E0B5 +:1016E0009F0121C06430D8F4E62FF0E0EE0FFF1F19 +:1016F000EE5DFE4F2081318189E090E014C06430BE +:1017000070F470E0FB01EE0FFF1FE65EFE4F2081DC +:101710003181FB01EA5EFE4F808190E004C080E0F1 +:1017200090E020E030E0FA0131832083089580E1E9 +:1017300089BD82E189BD09B400FEFDCF8091D8004A +:101740008F7D8093D8008091E00082608093E000DC +:101750008091E00081FDFCCF0895CF92DF92EF925F +:10176000FF920F931F93CF93DF93EC018B016A01DC +:101770000E94100D811133C0C114D10439F0F6015B +:1017800080819181081B190BC80FD91FE12CF12C06 +:101790000115110519F18091E80085FD16C08091B1 +:1017A000E8008E778093E800C114D10449F0F60177 +:1017B00080819181E80EF91EF182E08285E00FC000 +:1017C0000E94100D882321F30AC089918093F100B3 +:1017D00001501109FFEFEF1AFF0ADACF80E0DF9125 +:1017E000CF911F910F91FF90EF90DF90CF900895D0 +:1017F0002091F8013091F9012617370748F061155B +:10180000710539F42091E8002E772093E80001C09B +:10181000B90140E061157105A9F12091F101222380 +:1018200009F443C0253009F442C02091E80023FDAB +:1018300040C02091E80022FD32C02091E80020FF46 +:10184000E9CF4091F3002091F20030E0342BFC010D +:10185000CF016115710559F02830310540F48191AF +:101860008093F100615071092F5F3F4FF1CF41E04C +:101870002830310509F040E02091E8002E772093D0 +:10188000E800C8CF4111C9CF0AC08091F101882377 +:1018900061F0853061F08091E80083FD0AC080919D +:1018A000E80082FFF2CF80E0089582E0089583E0AF +:1018B000089581E008952091F8013091F9012617EB +:1018C000370748F06115710539F42091E8002E774B +:1018D0002093E80001C0B901FC0120E06115710509 +:1018E00091F18091F101882309F440C0853009F419 +:1018F0003FC08091E80083FD3DC08091E80082FDFB +:101900002FC08091E80080FFE9CF2091F300809103 +:10191000F20090E0922B6115710559F08830910525 +:1019200040F424912093F1003196615071090196A1 +:10193000F2CF21E0089709F020E08091E8008E774F +:101940008093E800CBCF2111CCCF0AC08091F10168 +:10195000882361F0853061F08091E80083FD0AC042 +:101960008091E80082FFF2CF80E0089582E0089540 +:1019700083E0089581E00895982F973058F590936B +:10198000E900981739F07091EC002091ED0050912A +:10199000F00003C0242F762F50E021FF19C03091B2 +:1019A000EB003E7F3093EB003091ED003D7F3093B4 +:1019B000ED003091EB0031603093EB007093EC0060 +:1019C0002093ED005093F0002091EE0027FF07C018 +:1019D0009F5FD3CF8F708093E90081E0089580E00E +:1019E00008958091F20187FF11C08091E80082FD87 +:1019F00005C08091F1018111F8CF11C08091E800FC +:101A00008B770BC08091F101882349F08091E80029 +:101A100080FFF8CF8091E8008E778093E8000895EA +:101A20002091E4003091E50095E64091EC00842F90 +:101A3000817040FF22C08091E80080FD1CC0809131 +:101A4000F101882391F0853091F08091EB0085FDC4 +:101A500010C04091E4005091E5004217530729F36C +:101A60009A01915011F784E0089582E0089583E08F +:101A7000089581E0089580E008954091E80042FFD4 +:101A8000DECF08950E94B00D0E94B80DE0EEF0E0A8 +:101A9000808181608083E8EDF0E080818F778083B2 +:101AA00019BCA7EDB0E08C918E7F8C9380818F7EE6 +:101AB00080831092F00108950F931F93CF93DF93CB +:101AC0000E94B00D0E94B80DC8EDD0E088818F77DC +:101AD000888388818068888388818F7D888319BC0A +:101AE0001092F1011092ED011092EF011092EE01AF +:101AF00000EE10E0F80180818B7F80838881816017 +:101B0000888342E060E080E00E94BC0CE1EEF0E0FF +:101B100080818E7F8083E2EEF0E08081816080832F +:101B2000808188608083F80180818E7F80838881B6 +:101B300080618883DF91CF911F910F910895E8ED27 +:101B4000F0E080818F7E8083E7EDF0E0808181602E +:101B5000808384E082BF81E08093F0010C945C0D6F +:101B6000E8EDF0E080818E7F80831092E20008959E +:101B70001092DA001092E10008951F920F920FB6B2 +:101B80000F9211242F933F934F935F936F937F9303 +:101B90008F939F93AF93BF93EF93FF938091E10057 +:101BA00082FF0BC08091E20082FF07C08091E100BC +:101BB0008B7F8093E1000E9424108091DA0080FFE7 +:101BC0001FC08091D80080FF1BC08091DA008E7FFB +:101BD0008093DA008091D90080FF0DC080E189BD3B +:101BE00082E189BD09B400FEFDCF81E08093F1015F +:101BF0000E941F0A05C019BC1092F1010E942D0A13 +:101C00008091E10080FF19C08091E20080FF15C043 +:101C10008091E2008E7F8093E2008091E2008061FB +:101C20008093E2008091D80080628093D80019BC34 +:101C300085E08093F1010E94310A8091E10084FFE8 +:101C400030C08091E20084FF2CC080E189BD82E138 +:101C500089BD09B400FEFDCF8091D8008F7D8093AF +:101C6000D8008091E1008F7E8093E1008091E200B6 +:101C70008F7E8093E2008091E20081608093E20099 +:101C80008091ED01882311F084E007C08091E3008A +:101C900087FD02C081E001C083E08093F1010E94D2 +:101CA000330A8091E10083FF29C08091E20083FF25 +:101CB00025C08091E100877F8093E10082E08093DE +:101CC000F1011092ED018091E1008E7F8093E1009F +:101CD0008091E2008E7F8093E2008091E20080613B +:101CE0008093E20042E060E080E00E94BC0C8091C2 +:101CF000F00088608093F0000E94300AFF91EF911D +:101D0000BF91AF919F918F917F916F915F914F9113 +:101D10003F912F910F900FBE0F901F9018951F921B +:101D20000F920FB60F9211242F933F934F935F930F +:101D30006F937F938F939F93AF93BF93CF93DF93D3 +:101D4000EF93FF93C091E900CF708091EC00D82F02 +:101D5000D17080FDD0E81092E9008091F000877F7B +:101D60008093F00078940E94D30E1092E900809145 +:101D7000F00088608093F000CD2BCF70C093E90015 +:101D8000FF91EF91DF91CF91BF91AF919F918F9193 +:101D90007F916F915F914F913F912F910F900FBE67 +:101DA0000F901F9018951F93CF93DF93CDB7DEB799 +:101DB000AA970FB6F894DEBF0FBECDBFE2EFF1E0F9 +:101DC00088E08E0F9091F10091938E13FBCF0E94CB +:101DD0004F0A8091E80083FF1FC18091F20190912A +:101DE000F301492F50E04A30510508F015C1FA01BE +:101DF000EA5AFF4F0C940E24803881F0823809F0A3 +:101E00000BC18091F6018F708093E9008091EB0007 +:101E100085FB882780F91092E90006C08091EE01C9 +:101E20009091EF01911182609091E800977F9093DB +:101E3000E8008093F1001092F100C8C0282F2D7F98 +:101E400009F0EAC0882319F0823061F0E5C0809182 +:101E5000F401813009F0E0C0933009F080E0809314 +:101E6000EF012BC08091F401811127C08091F60110 +:101E70008F7009F4D1C08093E9002091EB0020FF1E +:101E80001CC0933021F48091EB00806214C09091CB +:101E9000EB0090619093EB0021E030E0A90102C0DB +:101EA000440F551F8A95E2F74093EA001092EA002A +:101EB0008091EB0088608093EB001092E9008091A4 +:101EC000E800877F86C08111A7C01091F4011F77B9 +:101ED0008091E3008078812B8093E3008091E8007B +:101EE000877F8093E8000E94F10C8091E80080FFDA +:101EF000FCCF8091E30080688093E300111102C061 +:101F000082E001C083E08093F10186C08058823076 +:101F100008F082C08091F4019091F5018C3D53E06E +:101F2000950779F583E08A838AE289834FB7F8942D +:101F3000DE01139620E03EE051E2E32FF0E0509303 +:101F40005700E49120FF03C0E295EF703F5FEF7010 +:101F50008E2F90E0EA3010F0C79601C0C0968D93A6 +:101F60009D932F5F243149F74FBF8091E800877F11 +:101F70008093E8006AE270E0CE0101960E94F80BBF +:101F800014C0AE014F5F5F4F6091F6010E943F0B9E +:101F9000BC01009709F440C09091E800977F9093AE +:101FA000E80089819A810E945B0C8091E8008B7720 +:101FB0008093E80031C0803879F58091E800877F10 +:101FC0008093E8008091ED018093F1008091E8001A +:101FD0008E778093E8000E94F10C1EC081111CC016 +:101FE0009091F4019230C0F48091E800877F809353 +:101FF000E8009093ED010E94F10C8091ED018111B8 +:1020000006C08091E30087FD02C081E001C084E04A +:102010008093F1010E943B0A8091E80083FF0AC08F +:102020008091E800877F8093E8008091EB008062D8 +:102030008093EB00AA960FB6F894DEBF0FBECDBF1B +:10204000DF91CF911F9108950895CF938091F10171 +:102050008823A1F0C091E900CF709091EC00892F06 +:10206000817090FD80E8C82B1092E9008091E80013 +:1020700083FD0E94D30ECF70C093E900CF910895E5 +:1020800090937501809374010895E0917401F0912B +:102090007501309721F00190F081E02D099480E0E6 +:1020A0000895E0917401F0917501309721F002805C +:1020B000F381E02D09940895E0917401F091750188 +:1020C000309721F00480F581E02D09940895209146 +:1020D0007201309173018217930771F0909373012D +:1020E00080937201E0917401F0917501309721F0B5 +:1020F0000680F781E02D09940895209170013091B8 +:1021000071018217930771F09093710180937001B0 +:10211000E0917401F0917501309721F00084F18510 +:10212000E02D0994089508950C9493100E94ED1BDE +:102130000E948A030C94AF1C9F92AF92BF92CF92E1 +:10214000DF92EF92FF920F931F93CF93DF9300D014 +:1021500000D000D0CDB7DEB70E94A2030DE010E0A2 +:10216000AA24A394B12C902E802F0E949004980151 +:1021700029583E4F6901F901F080F826A1F4015079 +:10218000110988F78FEF89838A831B820E94F61BCF +:102190008160782F9D838C8349815A816B818D81E9 +:1021A0000E9433112FC09091DA0191FF04C08E83F9 +:1021B0000E9496048E8125E030E0A501022E01C028 +:1021C000440F0A94EAF7E42E4F21C1F029839A8242 +:1021D0008E2191E009F490E09B830E94F61B8160C0 +:1021E000782F9D838C8349815A816B818D810E94D8 +:1021F0003311F6018081E826E08204C021503109C4 +:10220000E0F6BDCF0E94961F109176010E94451006 +:102210001817B9F00E9445108093760126960FB6E4 +:10222000F894DEBF0FBECDBFDF91CF911F910F910C +:10223000FF90EF90DF90CF90BF90AF909F900C9465 +:102240003E0926960FB6F894DEBF0FBECDBFDF91D4 +:10225000CF911F910F91FF90EF90DF90CF90BF90A3 +:10226000AF909F900895CF93DF93CDB7DEB72B97B4 +:102270000FB6F894DEBF0FBECDBF4F835887698776 +:102280007A878B87DE01119686E0FD0111928A958F +:10229000E9F785E0FE01379601900D928A95E1F706 +:1022A00049815A816B817C818D819E810E947C173E +:1022B0002B960FB6F894DEBF0FBECDBFDF91CF9146 +:1022C0000895CF93882309F4C2C0C82F823859F4E7 +:1022D0000E94451081FDBBC089E30E94561A0E94EE +:1022E000231B89E30CC0833879F40E94451080FDDC +:1022F000AEC083E50E94561A0E94231B83E50E940C +:10230000981ACF910C94231B843859F40E944510DD +:1023100082FD9DC087E40E94561A0E94231B87E419 +:10232000EECF8CEF8C0F813A48F48C2F0E94D9218C +:1023300081118DC08C2F0E94561AE3CF80E28C0F42 +:10234000883048F4C77081E001C0880FCA95EAF769 +:102350000E94DC1AD6CF8BE58C0F833078F4C53A17 +:1023600029F0C63A31F083E890E005C081E890E0BA +:1023700002C082E890E0CF910C94671088E58C0F42 +:10238000833108F064C0C83A39F1C93A41F1CA3A18 +:1023900049F1CB3A51F1CC3A59F1CD3A61F1C03B18 +:1023A00069F1CE3A71F1CF3A79F1C13B81F1C23B8B +:1023B00089F1C33B91F1C43B99F1C53BA1F1C63B07 +:1023C000A9F1C73BB1F1C83BB9F1C93BC1F1CA3B67 +:1023D000C9F180E090E038C082EE90E035C089EE2F +:1023E00090E032C08AEE90E02FC085EB90E02CC0E8 +:1023F00086EB90E029C087EB90E026C08CEC90E063 +:1024000023C08DEC90E020C083E891E01DC08AE8F5 +:1024100091E01AC082E991E017C084E991E014C00C +:1024200081E292E011C083E292E00EC084E292E089 +:102430000BC085E292E008C086E292E005C087E228 +:1024400092E002C08AE292E0CF910C947D10CF918D +:102450000895882309F44BC0823859F40E9445102E +:1024600081FF45C089E30E94561A0E94231B89E31D +:102470000CC0833871F40E94451080FF38C083E59A +:102480000E94561A0E94231B83E50E94981A0C94FE +:10249000231B843859F40E94451082FF28C087E42A +:1024A0000E94561A0E94231B87E4EFCF9CEF980FDF +:1024B000913A58F390E2980F983050F4877091E079 +:1024C00001C0990F8A95EAF7892F0E94E21ADFCF9F +:1024D0009BE5980F933020F480E090E00C94671017 +:1024E000885A833120F480E090E00C947D100895A8 +:1024F000882321F00E94DC1A0C94231B0895882362 +:1025000021F00E94E21A0C94231B08957F928F926F +:102510009F92AF92BF92CF92DF92EF92FF920F9372 +:102520001F93CF93DF931F92CDB7DEB77C01C62EEA +:10253000772EFC01058102950F70128111110E9406 +:10254000F91A0E944F1A882379F0112369F080E26A +:102550008C0D883048F082E00E94381A0E944F1A91 +:1025600091E0D82ED92601C0D12CE72DE295EF704D +:10257000F0E0E05AFF4F0C940E24872D807F072D4A +:102580000F70882311F00295007F112389F000233A +:1025900009F490C180E28C0D883020F4802F0E94D5 +:1025A000DC1A03C0802F0E94EC1A0E94231B82C1F8 +:1025B0008C2D0E942912002309F495C180E28C0D14 +:1025C000883020F4802F0E94E21A03C0802F0E94DE +:1025D000F21A0E94231B87C1972D907F872D8F7041 +:1025E000903211F08295807FCC2021F0F1E0CF165F +:1025F000B1F01EC0112349F0002309F414C10130C9 +:1026000009F011C10E940C1B6EC1002319F00130AA +:1026100009F469C189830E940F1B89810AC11123B2 +:1026200021F0023008F05FC1FEC001115CC101C1A0 +:10263000112321F0002309F4F6C03CC1002309F462 +:10264000F8C03EC1872D86958695837090E00097EF +:1026500019F0019761F047C1112321F08C2D972DBE +:10266000937002C080E090E00E9467103CC111238B +:1026700021F08C2D972D937002C080E090E00E9495 +:102680007D1031C18C2D112319F00E949E1E02C0B5 +:102690000E94061F0E948B1F26C1872D837009F0A0 +:1026A00052C0111120C18C2D829586958770880F9C +:1026B000880F9C2D9F70892E912CA12CB12C082E57 +:1026C00004C0880C991CAA1CBB1C0A94D2F7C4FE37 +:1026D00014C00FE010E020E030E0B901A80104C010 +:1026E000440F551F661F771F8A95D2F7CB01BA0199 +:1026F000609570958095909503C060E070E0CB0187 +:10270000272D26952695237030E02230310569F07B +:102710002330310589F0682979298A299B292130BC +:10272000310571F00E94C418DEC0682979298A2910 +:102730009B290E94E018D7C00E94C418C501B401AB +:102740000E94A818D0C0112319F0872D817001C0F4 +:102750008695882309F4C7C08C2D8295869587704D +:10276000880F880F9C2D9F70892E912CA12CB12C45 +:10277000082E04C0880C991CAA1CBB1C0A94D2F712 +:10278000C4FE14C00FE010E020E030E0B901A80161 +:1027900004C0440F551F661F771F8A95D2F7CB01DF +:1027A000BA01609570958095909503C060E070E0E7 +:1027B000CB01272D269526952370422F50E04230DD +:1027C000510569F04330510589F0682979298A2932 +:1027D0009B294130510571F00E949E1984C06829DF +:1027E00079298A299B290E94BA197DC00E949E19C5 +:1027F000C501B4010E94821976C08C2D90E0FC01C5 +:10280000E05EF109E531F10508F050C0E059FF4FF5 +:102810000C940E240C2D0F70872D8F71112331F025 +:102820000E941B19802F0E9478125DC00E943C19E3 +:10283000802F0E947F1257C0112339F0011153C01D +:10284000872D8F710E9461194EC0023008F04BC075 +:10285000F7CF112339F0872D8F710E941B1943C0C8 +:102860001123C9F3872D8F710E943C193CC011239D +:1028700029F0872D8F710E94061935C00E94FC181F +:1028800032C0112351F0172D1F71812F0E941B1987 +:1028900063E0812F0E942F1A26C081E00E94381A1F +:1028A000023008F182E00E94381A1DC0112331F075 +:1028B000002389F28C2D0E94611115C0002391F232 +:1028C0008C2D0E9429120FC0472D4F706C2DC7010F +:1028D0000E946C050E94201806C0472D4F706C2D79 +:1028E000C7010E944D06DD20F9F00E942B1A80FDE1 +:1028F0001BC0F70112820E94251A0E941B19C701F2 +:102900000E94A3140E94251A0F90DF91CF911F916E +:102910000F91FF90EF90DF90CF90BF90AF909F907E +:102920008F907F900C943C190F90DF91CF911F9165 +:102930000F91FF90EF90DF90CF90BF90AF909F905E +:102940008F907F9008950F931F93CF93DF93EC01A7 +:10295000888199812B813C81232BB9F09F3F11F411 +:102960008F3F99F0CE010E94A505882371F0688100 +:1029700079818A810E94211A8C010E94D6190E94B5 +:102980009D18B801CE010E948612DF91CF911F9150 +:102990000F9108950E94F91A0E94091B0E94CE1AF5 +:1029A0000E94231B0E943C200E948B1F80E090E02D +:1029B0000E94671080E090E00C947D100E94E91A5C +:1029C0000C94CA140E94161A292F22952F7030E0F9 +:1029D0002C3031054CF42A3031056CF42250310989 +:1029E00022303105A8F407C02C30310569F02F30B2 +:1029F000310551F00DC0803F69F018F4803E40F47D +:102A000009C0843F29F406C093FB882780F9089504 +:102A100080E0089581E00895CF93DF9300D000D047 +:102A20001F92CDB7DEB70F900F900F900F900F90C1 +:102A3000DF91CF910895CF93DF9300D000D000D0E5 +:102A4000CDB7DEB726960FB6F894DEBF0FBECDBF6A +:102A5000DF91CF9108951F93CF93DF93C0918501AC +:102A600016E080918601C81799F0D0E01C9FF00114 +:102A70001D9FF00D1124E957FE4F40815181628165 +:102A80007381848195810E941B152196C770E9CFBF +:102A9000DF91CF911F9108954091B7015091B801F6 +:102AA0006091B9017091BA018091BB019091BC0114 +:102AB0000C941B158091BC0182958F7009F054C055 +:102AC0008091B901882309F44FC080918501A091BC +:102AD00086016091B7017091B8014091BA0150919F +:102AE000BB01B6E08A1709F43FC090E041155105DB +:102AF000C1F17F3F11F46F3FA1F1B89FF001B99F81 +:102B0000F00D1124E957FE4F218172132AC0208154 +:102B1000621327C02281211124C02381348124170C +:102B2000350710F421503109241B350B283C3105A1 +:102B3000C0F42091BC012F7020612093BC0126E0DD +:102B4000289FF001299FF00D1124E457FE4F80814A +:102B50008F708061808387EB91E00E94A3140C94B6 +:102B60002B1501968770BECF0895CF92DF92EF921A +:102B7000FF920F931F93CF93DF93CDB7DEB762978A +:102B80000FB6F894DEBF0FBECDBF8C0185E0F80113 +:102B9000DE011D9601900D928A95E1F7D8014C91C6 +:102BA00011965C91119712966C9112971396CD9095 +:102BB000DC9014973091B7017091B8018091BA01FF +:102BC0009091BB01009709F46BC17F3F19F43F3F1F +:102BD00009F466C1E090B901EE2009F4C0C020916B +:102BE000BC01C816D90628F0F601E81BF90BCF0185 +:102BF00004C0809590958C0D9D1DFF24F394883C16 +:102C0000910578F0F12C207F09F0C6C07C2DD98A7F +:102C1000C88A89890E940C1587EB91E00E94A31451 +:102C2000B1C0822F807F09F046C0751314C03413E1 +:102C300012C0611110C02F7020612093BC010E944E +:102C40004C1587EB91E00E94A3148091BC01D80140 +:102C500015968C932EC0CD2819F15F3F11F44F3F8C +:102C6000F9F0F62E61111CC080918501209186013A +:102C700036E0821709F45AC090E0389FF001399F7E +:102C8000F00D1124E957FE4F7181571306C0708172 +:102C9000471303C07281711103C001968770E9CF99 +:102CA000F62E662309F418C18091BC0181608093DF +:102CB000BC01F12C11C1751308C0341306C0611199 +:102CC00004C08091BC01D801C3C04D875E878D854B +:102CD0009E856A8B0E94E2146A898823E1F166234B +:102CE000D1F12091BC01822F82958F7090E00297E4 +:102CF00074F08091B7019091B80198878F831986FD +:102D0000DB86CA862C87CE0107960E94A31486E034 +:102D1000F801A7EBB1E001900D928A95E1F70E94CE +:102D20005A150E944C15FF24F394D6C04D875E8738 +:102D30008D859E850E94161A292F22952F7030E0CE +:102D4000223031050CF0BCC09F7009F0B6C0805E27 +:102D5000883008F4C1C0C8010E94A314E4CFC8168B +:102D6000D90608F453C0F601E81BF90BCF01883CE3 +:102D7000910508F450C0F12C7C2DD98AC88A898924 +:102D80000E940C15E7EBF1E086E0DF011D928A95C9 +:102D9000E9F70E944C15A0C0751314C0341312C07B +:102DA000611110C08091BC01F8018583C8010E94A7 +:102DB000A31486E0E7EBF1E0DF011D928A95E9F7C5 +:102DC000FE2C8AC04D875E878D859E856A8B0E940A +:102DD000E2146A89882309F4BECF662309F4BBCFC5 +:102DE0002091BC01822F82958F7090E002970CF4A5 +:102DF0008ECF8091B7019091B8019A8389831B820D +:102E0000DD82CC822E83CE0101967FCF8095909576 +:102E10008C0D9D1DACCFF62E662309F49CCF751347 +:102E20002EC034132CC02091BC0120FD1FC0822F66 +:102E300082958F70D9F0D80115962C9315978F3005 +:102E400049F08F5F982F9295907F822F8F70892BFA +:102E500015968C93C8010E94A31486E0F801A7EB95 +:102E6000B1E001900D928A95E1F793CF86E0F801E9 +:102E7000A7EBB1E001900D928A95E1F72DC04D8747 +:102E80005E878D859E850E94E214811140CF8091DE +:102E9000BC0181608093BC01C8010E94A3141CC0C6 +:102EA000662309F458CF4D875E878D859E850E94E5 +:102EB000E214882309F44FCF2ACF811148CF0CC0E8 +:102EC000243031050CF047CF9F7009F440CFF80152 +:102ED0009581907F09F03BCF8F2D62960FB6F894C5 +:102EE000DEBF0FBECDBFDF91CF911F910F91FF903D +:102EF000EF90DF90CF9008951F93CF93DF93CDB7DE +:102F0000DEB72C970FB6F894DEBF0FBECDBF4F8350 +:102F1000588769877A878B879C87CE0107960E949E +:102F2000B515882369F08F8198852A853B85232BE9 +:102F3000F1F19F3F09F063C08F3F09F060C037C0D7 +:102F400086E0FE013796DE01119601900D928A957A +:102F5000E1F76F817885EA85FB85309741F17F3F06 +:102F600011F46F3F21F12091860130E0C9010196F3 +:102F7000877099274091850150E08417950709F4DF +:102F800047C069837A83FD83EC8396E0929FD001EA +:102F9000939FB00D1124A957BE4FFE0131960190A9 +:102FA0000D929A95E1F7809386010E942B1516E009 +:102FB00080918501909186018917C1F1189FC00108 +:102FC000112489579E4F0E94B515882379F1E0910D +:102FD00085011E9FF0011124E957FE4F4081518168 +:102FE00062817381848195810E941B158091850186 +:102FF00090E001968770992780938501D9CF4F8102 +:10300000588569857A858B859C850E941B15CFCF55 +:103010000E94DE141092860110928501E7EBF1E028 +:1030200086E0DF011D928A95E9F7C1CF2C960FB695 +:10303000F894DEBF0FBECDBFDF91CF911F910895F1 +:10304000EF92FF920F931F93CF93DF938C01009722 +:1030500009F46CC0F12CEE24E394E8012196F80108 +:103060008491843740F4843008F051C0813081F07D +:10307000823019F15BC0853709F444C0A8F19CE7A0 +:10308000980F903708F052C08F770E94291241C0E4 +:103090000E5F1F4FFE01C49180E28C0F883048F410 +:1030A000C7708E2D01C0880FCA95EAF70E94FC1ADE +:1030B00014C08C2F0E9461112DC00E5F1F4FFE01A6 +:1030C000C49180E28C0F883058F4C7708E2D01C0F7 +:1030D000880FCA95EAF70E94021B0E94231B1AC0A0 +:1030E0008C2F0E94291216C00E5F1F4FFE01C49143 +:1030F000CC2381F08FE99FE00197F1F700C0000039 +:10310000C150F6CF0E5F1F4FFE01F49003C00E9426 +:1031100061118E018F2D882309F49FCFEFE9FFE025 +:103120003197F1F700C000008150F5CFDF91CF91CA +:103130001F910F91FF90EF90089508956093C10142 +:103140007093C2018093C3019093C4010C94CA147C +:103150000F931F930091C1011091C2012091C301EF +:103160003091C401DC01CB01802B912BA22BB32B1E +:103170008093C1019093C201A093C301B093C40195 +:103180001F910F910C94CA140F931F930091C101CA +:103190001091C2012091C3013091C401DC01CB0127 +:1031A00080239123A223B3238093C1019093C20172 +:1031B000A093C301B093C4011F910F910C94CA1442 +:1031C0000F931F930091C1011091C2012091C3017F +:1031D0003091C401DC01CB0180279127A227B327BE +:1031E0008093C1019093C201A093C301B093C40125 +:1031F0001F910F910C94CA141092BD011092BE0140 +:103200001092BF011092C0010C94CA1441E050E02A +:1032100060E070E004C0440F551F661F771F8A9559 +:10322000D2F74093BD015093BE016093BF017093EC +:10323000C0010C94CA1441E050E060E070E004C0AA +:10324000440F551F661F771F8A95D2F78091BD01E5 +:103250009091BE01A091BF01B091C001482B592BA4 +:103260006A2B7B2B4093BD015093BE016093BF013D +:103270007093C0010C94CA1441E050E060E070E02B +:1032800004C0440F551F661F771F8A95D2F74095DB +:103290005095609570958091BD019091BE01A0916F +:1032A000BF01B091C001482359236A237B23409377 +:1032B000BD015093BE016093BF017093C0010C9497 +:1032C000CA1441E050E060E070E004C0440F551FB4 +:1032D000661F771F8A95D2F78091BD019091BE013C +:1032E000A091BF01B091C001482759276A277B27C9 +:1032F0004093BD015093BE016093BF017093C00124 +:103300000C94CA140F931F930091BD011091BE013C +:103310002091BF013091C001DC01CB01802B912BAA +:10332000A22BB32B8093BD019093BE01A093BF014C +:10333000B093C0011F910F910C94CA140F931F9367 +:103340000091BD011091BE012091BF013091C001DB +:10335000DC01CB0180239123A223B3238093BD0101 +:103360009093BE01A093BF01B093C0011F910F9134 +:103370000C94CA140F931F930091BD011091BE01CC +:103380002091BF013091C001DC01CB018027912742 +:10339000A227B3278093BD019093BE01A093BF01E4 +:1033A000B093C0011F910F910C94CA140895CF924D +:1033B000DF92EF92FF920F931F93CF93DF938C01D5 +:1033C000C090C101D090C201E090C301F090C4014F +:1033D0008091BD019091BE01A091BF01B091C0014B +:1033E000C82AD92AEA2AFB2ACFE1D0E0D701C601B0 +:1033F0000C2E04C0B695A795979587950A94D2F799 +:1034000080FF06C0B8018C2F0E94A308019721F409 +:10341000219760F780E001C08C2FDF91CF911F9141 +:103420000F91FF90EF90DF90CF900895CF93DF93AF +:10343000EC010E94D719BE010E94A308DF91CF9131 +:103440000895CB010E94161A08958091C5018595B3 +:103450008595859508958091C5018770089598E0B8 +:10346000899F90011124262B2093C5010C941B19D0 +:103470002091C501809582238093C501982F977074 +:1034800069F430E0482F552747FD5095241735073C +:1034900029F08595859585950C943C190895909112 +:1034A000C501977081E009F480E0089590910C01C6 +:1034B000992321F090910D01911109C020910E01E5 +:1034C00030910F01F90132969FEF40E01FC0982F15 +:1034D0009695969596959F3050F5E0910E01F09156 +:1034E0000F01E90FF11D877021E030E0A90102C052 +:1034F000440F551F8A95E2F7CA019181892B818378 +:1035000008959F3F39F04F5F4E3041F0519158136D +:10351000F8CF0DC05111F7CF942FF5CF9F3F39F061 +:10352000F901E90FF11D97FDFA9582830895089539 +:1035300090910C01992321F090910D01911109C0F6 +:1035400020910E0130910F01F9013296205F3F4F1B +:103550001FC0982F9695969596959F30F0F4E09120 +:103560000E01F0910F01E90FF11D877021E030E0AD +:10357000A90102C0440F551F8A95E2F7CA01809540 +:1035800091818923818308953196E217F30729F009 +:1035900090819813F9CF1082F7CF089581E090E0E1 +:1035A000E0910E01F0910F01E80FF91F10820196D2 +:1035B00080319105A9F708959091D901892B8093C5 +:1035C000D901089580959091D90189238093D901DB +:1035D00008951092D90108959091D801892B809374 +:1035E000D801089580959091D80189238093D801BE +:1035F00008951092D80108959091D701892B809356 +:10360000D701089580959091D70189238093D701A0 +:1036100008951092D70108958093C60108951092DD +:10362000C601089580910E0190910F01FC01319621 +:103630009C01205F3F4F80E0919191118F5FE217D5 +:10364000F307D1F70895E0910E01F0910F018091F9 +:10365000D9018083E0910E01F0910F01908180915A +:10366000D801892B8083E0910E01F0910F019081A8 +:103670008091D701892B80838091C601882361F0D6 +:10368000E0910E01F0910F019081892B80830E94BF +:10369000121B81111092C60180910E0190910F01B1 +:1036A0000C94511020E0009739F0AC0141505109C1 +:1036B000842395232F5FF7CF822F0895CF92DF9237 +:1036C000EF92FF926C01EE24FF24C114D104E104B7 +:1036D000F10421F0C701B60120E101C020E0C72EAE +:1036E000D82EE92EFF24C114D104E104F10419F00D +:1036F000285FC701B6016B017C0154E0F694E794A2 +:10370000D794C7945A95D1F7C114D104E104F104B8 +:1037100019F02C5FC701B6016B017C0142E0F69401 +:10372000E794D794C7944A95D1F7C114D104E10422 +:10373000F10419F02E5FC701B601DC01CB01B6958B +:10374000A79597958795892B8A2B8B2B09F02F5F4F +:10375000822FFF90EF90DF90CF9008958091F1013C +:10376000843021F11092DB0120E488E190E00FB673 +:10377000F894A895809360000FBE2093600080E0CD +:103780000E943E0983B7817F846083BF83B78160D5 +:1037900083BF7894889583B78E7F83BF88E10FB607 +:1037A000F89480936000109260000FBE0895089511 +:1037B00008950E94D71B0E94A2030E94D81B0E945A +:1037C000970491E0811101C090E0892F08950E9433 +:1037D000DE140E9445100C943E0982E084BD93E003 +:1037E00095BD9AEF97BD80936E0008952FB7F8941A +:1037F0008091DC019091DD01A091DE01B091DF01AB +:103800002FBF0895CF92DF92EF92FF920F931F93F5 +:103810002FB7F8944091DC015091DD016091DE01F9 +:103820007091DF012FBF6A017B01EE24FF248C0120 +:1038300020E030E0C016D106E206F30610F4415055 +:1038400051099A01281B390BC9011F910F91FF9053 +:10385000EF90DF90CF9008951F920F920FB60F92C6 +:1038600011248F939F93AF93BF938091DC0190912C +:10387000DD01A091DE01B091DF010196A11DB11D16 +:103880008093DC019093DD01A093DE01B093DF0112 +:10389000BF91AF919F918F910F900FBE0F901F908E +:1038A00018950E94420DF8942FEF87EA91E6215077 +:1038B00080409040E1F700C0000087E090EBDC0121 +:1038C0008093FB019093FC01A093FD01B093FE0156 +:1038D0009CE088E10FB6F894A895809360000FBE35 +:1038E00090936000FFCFEF92FF920F931F93CF93BF +:1038F000DF93D82FCDE08C2F0E94900405E010E0DC +:10390000E82EF12CC701002E02C0959587950A94E8 +:10391000E2F780FF09C0602F7C2F80E00E944E06F6 +:10392000D81302C081E006C00150110958F7C150F8 +:1039300010F780E0DF91CF911F910F91FF90EF90F2 +:103940000895CF93C82F8CE20E94731C882321F026 +:103950008C2FCF910C94731C80E0CF910895CF935E +:103960000E94F61D811102C00E94DC1DC5E6C150F7 +:1039700049F00E94A2038FE39CE90197F1F700C090 +:103980000000F5CF89E20E94A11C811113C18AE2D7 +:103990000E94A11C81110E94DC1D85E00E94A11CD7 +:1039A00081110E94511C0E94011E8093DA0187E060 +:1039B0000E94A11C8823A9F18BE10E94A11C8823ED +:1039C00051F08091DA0181FB222720F991E09227C2 +:1039D00090FB81F90EC08EE00E94A11C882361F04B +:1039E0008091DA0182FB222720F991E0922790FB57 +:1039F00082F98093DA0115C080E10E94A11C9091A8 +:103A0000DA01882341F093FB222720F981E0822705 +:103A100080FB93F904C0892F809580FB90F99093E7 +:103A2000DA018091DA010E94051E0E94131E809324 +:103A3000FA0180EE0E94A11C882341F08091FA01D6 +:103A4000982F909590FB80F98093FA0189E30E946A +:103A5000A11C882359F08091FA0181FB222720F9CB +:103A600091E0922790FB81F98093FA0182EE0E9407 +:103A7000A11C882359F08091FA0182FB222720F9AA +:103A800091E0922790FB82F98093FA0186EE0E94E2 +:103A9000A11C882359F08091FA0183FB222720F989 +:103AA00091E0922790FB83F98093FA0183EE0E94C4 +:103AB000A11C882359F08091FA0184FB222720F968 +:103AC00091E0922790FB84F98093FA0185E30E94AC +:103AD000A11C882359F08091FA0185FB222720F947 +:103AE00091E0922790FB85F98093FA0181E30E948F +:103AF000A11C882359F08091FA0186FB222720F926 +:103B000091E0922790FB86F98093FA0181E10E946F +:103B1000A11C882359F08091FA0187FB222720F904 +:103B200091E0922790FB87F98093FA018091FA0146 +:103B30000E94171E8091FA0187FB882780F98093E5 +:103B40000D0187E20E94A11CC82F8EE10E94A11CDA +:103B50008111C2608FE10E94A11C8111C46080E2CA +:103B60000E94A11C8111C86081E20E94A11C8111E8 +:103B7000C06182E20E94A11C8111C06283E20E94A6 +:103B8000A11C8111C06484E20E94A11C882311F051 +:103B9000C06802C0CC2329F08C2F0E940E1E6C2F0F +:103BA00003C00E940A1E682F70E080E090E0CF9171 +:103BB0000C949E18CF9108956DEE7EEF80E090E01A +:103BC0000E94482460E082E090E00E94362460E099 +:103BD00083E090E00E94362460E084E090E00E9460 +:103BE000362460E085E090E00C94362480E090E09C +:103BF0000E94302421E08D3E9E4F09F020E0822F6C +:103C0000089582E090E00C942824682F82E090E0F0 +:103C10000C94362483E090E00C942824682F83E0F1 +:103C200090E00C94362484E090E00C942824682FD3 +:103C300084E090E00C9436248091E20180FF0BC078 +:103C40006091130185E0689FB00111247595679517 +:103C5000759567952BC081FF09C06091130185E0C0 +:103C6000689FB00111247595679520C082FF07C039 +:103C70006091130185E0689FB001112417C09091F5 +:103C8000E3019923D1F060911201961788F72091F2 +:103C9000130185E0289F90011124929FA001939F1A +:103CA000500D112470E0CA010E94FA23603871059A +:103CB00040F46115710539F002C065E070E0862FAF +:103CC00008958FE7089581E008958091E20180FFD3 +:103CD00008C06091110170E07595679575956795BD +:103CE00021C081FF06C06091110170E07595679554 +:103CF00019C082FF04C06091110170E010C0909162 +:103D0000E3019923C1F0609110019617A0F780910B +:103D10001101899FC001112470E00E94FA236038CC +:103D2000710528F46115710521F0862F08958FE73C +:103D3000089581E0089561E070E0F4CF803F21F4C0 +:103D40000E941C1E819504C0813F29F40E941C1E04 +:103D50008093E6010895823F21F40E941C1E819504 +:103D600004C0833F29F40E941C1E8093E50108953E +:103D7000893F19F40E94651E05C08A3F31F40E94F4 +:103D8000651E81958093E70108958B3F21F40E9481 +:103D9000651E819504C08C3F29F40E94651E8093A6 +:103DA000E8010895843F21F48091E401816017C007 +:103DB000853F21F48091E401826011C0863F21F4A7 +:103DC0008091E40184600BC0873F21F48091E4017D +:103DD000886005C0883F31F48091E4018061809360 +:103DE000E40108958D3F21F48091E20181600BC0D0 +:103DF0008E3F21F48091E201826005C08F3F29F45B +:103E00008091E20184608093E2010895803F39F45B +:103E10008091E60187FF6CC01092E60169C0813F86 +:103E200029F48091E6011816BCF362C09091E50177 +:103E3000823F29F497FF5CC01092E50159C0833F8F +:103E400019F41916CCF354C0893F41F48091E7016D +:103E500018160CF04DC01092E7014AC08A3F29F4B1 +:103E60008091E70187FF44C0F6CF8B3F39F4809102 +:103E7000E80187FF3DC01092E8013AC08C3F29F469 +:103E80008091E8011816BCF333C0843F21F480917F +:103E9000E4018E7F17C0853F21F48091E4018D7F7E +:103EA00011C0863F21F48091E4018B7F0BC0873FD6 +:103EB00021F48091E401877F05C0883F31F480912F +:103EC000E4018F7E8093E40113C08D3F21F4809143 +:103ED000E2018E7F0BC08E3F21F48091E2018D7F45 +:103EE00005C08F3F29F48091E2018B7F8093E2012E +:103EF0008091E50181110EC08091E60181110AC017 +:103F00008091E701811106C08091E801811102C012 +:103F10001092E301089584EE91E00E945C100E94EB +:103F2000F61B9093E1018093E00108951F93CF93D6 +:103F3000DF938091E0019091E1010E94021CAC01AD +:103F40009091E301992321F02091140130E006C003 +:103F5000209115018AE0289F9001112442175307F0 +:103F600008F486C08091E501C091E601D091E70197 +:103F70001091E801811107C0C11176C0D11174C040 +:103F8000111172C075C09F3F19F09F5F9093E301BC +:103F9000181624F40E941C1E8093E5018091E5010F +:103FA00087FF05C00E941C1E81958093E5011C16A9 +:103FB00024F40E941C1E8093E6018091E60187FF95 +:103FC00005C00E941C1E81958093E6016091E50169 +:103FD000662339F1C091E601CC2319F1772767FDFB +:103FE0007095872F972F0E940B2323E333E343E33E +:103FF0005FE30E946F230E94D8226093E5016C2F3B +:10400000772767FD7095872F972F0E940B2323E357 +:1040100033E343E35FE30E946F230E94D82260935F +:10402000E6011D1624F40E94651E8093E70180912D +:10403000E70187FF05C00E94651E81958093E70117 +:10404000111624F40E94651E8093E8018091E80116 +:1040500087FF05C00E94651E81958093E801DF916E +:10406000CF911F910C948B1F9F3F09F08ECF96CF5D +:10407000DF91CF911F910895E4EEF1E085E0DF013B +:104080001D928A95E9F71092E3011092E2010895DA +:10409000833081F128F4813059F08230D1F00895D5 +:1040A000853009F449C0B8F1863009F456C0089546 +:1040B00080911501262F30E0280F311D2F3F31054B +:1040C00024F4680F6093150108958FEF8093150114 +:1040D000089580911401262F30E0280F311D2F3FC5 +:1040E000310524F4680F6093140108958FEF8093D5 +:1040F0001401089580911301262F30E0280F311DFF +:104100002F3F310524F4680F6093130108958FEF5A +:1041100080931301089580911201262F30E0280F1B +:10412000311D2F3F310524F4680F6093120108956B +:104130008FEF80931201089580911101262F30E0B6 +:10414000280F311D2F3F310524F4680F60931101B2 +:1041500008958FEF80931101089580911001262F0B +:1041600030E0280F311D2F3F310524F4680F609394 +:10417000100108958FEF809310010895833011F19D +:1041800028F4813049F0823091F00895853081F132 +:1041900020F18630C1F1089580911501681720F44F +:1041A000861B809315010895109215010895809142 +:1041B0001401681720F4861B80931401089510924F +:1041C0001401089580911301681720F4861B8093D1 +:1041D0001301089510921301089580911201681738 +:1041E00020F4861B80931201089510921201089505 +:1041F00080911101681720F4861B809311010895A6 +:1042000010921101089580911001681720F4861B07 +:104210008093100108951092100108950F931F9339 +:104220008D3109F46BC008F03FC08E3009F47FC0B7 +:10423000C0F4873009F469C068F4863009F0B1C071 +:104240008091DA01817F8E7F8093DA0181E0809313 +:10425000EA01A8C0883009F4A2C08B3009F49FC0DD +:10426000A0C0863109F49BC078F4803109F472C093 +:10427000813109F096C00E94DE1490910D0181E019 +:10428000892780930D018BC0893109F488C08B3157 +:1042900009F087C08091DA0181FB222720F991E0A3 +:1042A000922790FB81F94CC0853309F470C048F423 +:1042B000873209F46CC008F459C0893209F467C028 +:1042C00070C0833438F48A3308F04EC0883309F460 +:1042D00066C067C0833409F45AC0883409F061C0ED +:1042E0000E94DE140FEF13ED20E301501040204038 +:1042F000E1F700C000000E94511C51C00E949222B0 +:104300000E9445100E943E094AC09091DA01892F0F +:104310008095817080FB90F929F096609860909369 +:10432000DA0140C0997F977F9093DA0138C080917D +:10433000DA0182FB222720F991E0922790FB82F993 +:104340008093DA01992359F18091DA018160809399 +:10435000DA0125C08091DA0183FB222720F991E060 +:10436000922790FB83F9ECCF895301C08D5141E036 +:1043700050E060E070E08A019B0104C0000F111F53 +:10438000221F331F8A95D2F7C901B80104C061E02A +:1043900070E080E090E00E949E180E94DE1481E0B0 +:1043A00001C080E01F910F91089580E0089580E0A2 +:1043B0000895CF93C82F8091EA01813079F018F0E9 +:1043C0008230E9F187C0E0910E01F0910F01808108 +:1043D000813169F0823209F07FC009C0E0910E019D +:1043E000F0910F018081813111F0823261F48C2FC4 +:1043F0000E94D521811104C08C2F0E940E211DC066 +:1044000081E090E01AC08C2F0E94D721811114C046 +:10441000C43179F048F4CB3079F0C03109F060C094 +:1044200082E08093EA0108C0C93219F0C83321F054 +:1044300057C01092EA0154C081E0817053C0C93264 +:1044400089F118F5C43171F1A8F4C73009F046C0FC +:104450008AE08093150194E19093140193E0909386 +:1044600013018093120188E08093110188E2809308 +:10447000100134C0CE51C63088F5EC2FF0E0E65D77 +:10448000FE4F80818093E90129C0CE34E9F020F409 +:10449000CB3421F56AE013C0C13579F0C235F1F4AF +:1044A00061E00DC08091E901882319F01092E901C3 +:1044B00015C081E08093EA0115C061E006C08091DB +:1044C000E9010E9448200AC06AE08091E9010E9447 +:1044D000BE2004C01092EA0180E004C081E002C066 +:1044E00080E0ABCFCF910895E1E8F0E08081886073 +:1044F00080838081816080838FB7F89493E090936C +:10450000890090ED909388008FBF0895EFE6F0E06A +:104510008081826080830895EFE6F0E080818D7F66 +:1045200080830895EFE6F0E0908182E08927808320 +:1045300008951F920F920FB60F9211242F933F935D +:104540004F935F936F937F938F939F93AF93BF939B +:10455000EF93FF938091EB019091EC010196909382 +:10456000EC018093EB01811103C082E00E943E09BF +:10457000E091EC01E695E695F0E0EF59FA4FE49111 +:104580008091EB018E1303C080E00E943E09FF91F1 +:10459000EF91BF91AF919F918F917F916F915F91BB +:1045A0004F913F912F910F900FBE0F901F90189534 +:1045B00004D06894B1118DC0089570D088F09F57D1 +:1045C00090F0B92F9927B751A0F0D1F0660F771F5F +:1045D000881F991F1AF0BA95C9F712C0B13081F03F +:1045E00077D0B1E0089574C0672F782F8827B85F1F +:1045F00039F0B93FCCF3869577956795B395D9F7A0 +:104600003EF490958095709561957F4F8F4F9F4FA9 +:104610000895E89409C097FB3EF4909580957095B5 +:1046200061957F4F8F4F9F4F9923A9F0F92F96E9FE +:10463000BB279395F695879577956795B795F11173 +:10464000F8CFFAF4BB0F11F460FF1BC06F5F7F4F10 +:104650008F4F9F4F16C0882311F096E911C0772322 +:1046600021F09EE8872F762F05C0662371F096E82B +:10467000862F70E060E02AF09A95660F771F881FFA +:10468000DAF7880F9695879597F9089557FD905812 +:10469000440F551F59F05F3F71F04795880F97FB06 +:1046A000991F61F09F3F79F08795089512161306C0 +:1046B0001406551FF2CF4695F1DF08C016161706EF +:1046C0001806991FF1CF8695710561050894089524 +:1046D000E894BB2766277727CB0197F908950BD07D +:1046E00078C069D028F06ED018F0952309F05AC030 +:1046F0005FC01124EECFCADFA0F3959FD1F3950FD1 +:1047000050E0551F629FF001729FBB27F00DB11D55 +:10471000639FAA27F00DB11DAA1F649F6627B00DE5 +:10472000A11D661F829F2227B00DA11D621F739FCE +:10473000B00DA11D621F839FA00D611D221F749FDC +:104740003327A00D611D231F849F600D211D822F23 +:10475000762F6A2F11249F5750408AF0E1F088236A +:104760004AF0EE0FFF1FBB1F661F771F881F915077 +:104770005040A9F79E3F510570F014C0AACF5F3F8B +:10478000ECF3983EDCF3869577956795B795F795AA +:10479000E7959F5FC1F7FE2B880F911D9695879532 +:1047A00097F9089597F99F6780E870E060E00895B1 +:1047B0009FEF80EC089500240A9416161706180639 +:1047C0000906089500240A94121613061406050615 +:1047D0000895092E0394000C11F4882352F0BB0FA6 +:1047E00040F4BF2B11F460FF04C06F5F7F4F8F4F09 +:1047F0009F4F089597FB072E16F4009407D077FD7E +:1048000009D00E94142407FC05D03EF490958195B0 +:104810009F4F0895709561957F4F0895EE0FFF1F8C +:104820000590F491E02D0994AA1BBB1B51E107C030 +:10483000AA1FBB1FA617B70710F0A61BB70B881F30 +:10484000991F5A95A9F780959095BC01CD010895BF +:10485000F999FECF92BD81BDF89A992780B5089548 +:10486000A8E1B0E042E050E00C945024262FF999E2 +:10487000FECF92BD81BDF89A019700B4021639F0BF +:104880001FBA20BD0FB6F894FA9AF99A0FBE089590 +:104890000196272F0E9437240C943624DC01CB018B +:1048A000FC01F999FECF06C0F2BDE1BDF89A319640 +:1048B00000B40D9241505040B8F70895F894FFCFDE +:1048C00002204009CE09AB09770943090101C7015C +:1048D00028080A03140A404D36392105D4049E04E1 +:1048E0006504F80311042A044304010203040506C5 +:0448F00007080900AC +:00000001FF diff --git a/keyboards/ergodox_ez/keymaps/techtomas/keymap.c b/keyboards/ergodox_ez/keymaps/techtomas/keymap.c new file mode 100644 index 0000000000..1ff6618b98 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/techtomas/keymap.c @@ -0,0 +1,231 @@ +#include "ergodox_ez.h" +#include "debug.h" +#include "action_layer.h" + +#define BASE 0 // default layer +#define SYMB 1 // symbols +#define APP 2 // app layer +#define CNTL 3 // control layer + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* Keymap 0: Basic layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | L2/` | 1 | 2 | 3 | 4 | 5 |CmdSpc| | - | 6 | 7 | 8 | 9 | 0 | = | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | MEH/Tab| Q | W | E | R | T | [ | | ] | Y | U | I | O | P | MEH/\ | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * |Hyp/Esc | A | S | D | F | G |------| |------| H | J | K | L | L2/; | Hyp/' | + * |--------+------+------+------+------+------| Tab | | STab |------+------+------+------+------+--------| + * | LShift | Z | X | C | V | B | | | | N | M | , | . | L2// | RShift | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * |L1/Lft|L3/Rht| LCtl | LAlt | LGui | | Rgui | Up | Dn | L3 | L1 | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | LCtl | LGui | |AltGui|ShfGui| + * ,-------|------|------| |------+--------+------. + * | | |L1/Hom| |L2/PUp| | | + * | Backsp|Delete|------| |------| Enter | Space | + * | | |L3/End| |L1/PDn| | | + * `--------------------' `-----------------------' + */ +// 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 + LT(APP,KC_GRV), KC_1, KC_2, KC_3, KC_4, KC_5, LGUI(KC_SPC), + MEH_T(KC_TAB), KC_Q, KC_W, KC_E, KC_R, KC_T, KC_LBRC, + ALL_T(KC_ESC), KC_A, KC_S, KC_D, KC_F, KC_G, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_TAB, + LT(SYMB,KC_LEFT), LT(CNTL,KC_RIGHT), KC_LCTL, KC_LALT, KC_LGUI, + KC_LCTL, KC_LGUI, + LT(SYMB,KC_HOME), + KC_BSPC, KC_DELETE, LT(CNTL,KC_END), + // right hand + KC_MINS, KC_6, KC_7, KC_8, KC_9, KC_0, KC_EQL, + KC_RBRC, KC_Y, KC_U, KC_I, KC_O, KC_P, MEH_T(KC_BSLS), + KC_H, KC_J, KC_K, KC_L, LT(APP,KC_SCLN), ALL_T(KC_QUOT), + S(KC_TAB), KC_N, KC_M, KC_COMM, KC_DOT, LT(APP,KC_SLSH), KC_RSFT, + KC_RGUI, KC_UP, KC_DOWN, KC_FN3, KC_FN1, + LALT(KC_LGUI), S(KC_LGUI), + LT(APP,KC_PGUP), + LT(SYMB,KC_PGDN), KC_ENT, KC_SPC + ), +/* Keymap 1: Symbol Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | | | Tab | F6 | F7 | F8 | F9 | F10 | F11 | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | ! | @ | { | } | | | < | | > | : | 7 | 8 | 9 | / | F12 | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | # | $ | ( | ) | ` |------| |------| ; | 4 | 5 | 6 | * | | + * |--------+------+------+------+------+------| F14 | | F15 |------+------+------+------+------+--------| + * | | % | ^ | [ | ] | ~ | | | | & | 1 | 2 | 3 | - | Entr | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | 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,S(KC_COMM), + 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_F14, + 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_TAB, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + S(KC_DOT), KC_COLN, KC_7, KC_8, KC_9, KC_BSLS, KC_F12, + KC_SCLN, KC_4, KC_5, KC_6, KC_ASTR, KC_TRNS, + KC_F15, KC_AMPR, KC_1, KC_2, KC_3, KC_MINS, KC_ENT, + KC_0, KC_DOT, KC_EQL, KC_PLUS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), +/* Keymap 2: App Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | CmdQ | CmdW | | | | Stab | | Play | Prev | Next | | |PrtSc | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | |------| |------| VolDn|VolUp | | | | | + * |--------+------+------+------+------+------| | | Mute |------+------+------+------+------+--------| + * | | CmdZ | CmdX | CmdC | CmdY | CtrlC| | | | | | | | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// Control +[APP] = KEYMAP( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, LGUI(KC_Q), LGUI(KC_W), KC_TRNS, KC_TRNS, KC_TRNS, S(KC_TAB), + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, LGUI(KC_Z), LGUI(KC_X), LGUI(KC_C), LGUI(KC_V), LCTL(KC_C), 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_MPLY, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, KC_PSCR, KC_TRNS, + KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_MUTE, 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 +), +/* Keymap 3: Control Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | Pwr | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | MsUp | | | | | | | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | |MsLeft|MsDown|MsRght| Lclk |------| |------| Lft | Down | Up | Right| | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | Rclk | | | | | | | | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | Shift| | | Home | End | + * ,------|------|------| |------+------+------. + * | | | LAtl | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// Control +[CNTL] = KEYMAP( + KC_PWR, 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_BTN1, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_BTN2, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_LSFT, KC_TRNS, + KC_LALT, + 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_LEFT, KC_DOWN, KC_UP, 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_HOME, KC_END, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), +}; + +const uint16_t PROGMEM fn_actions[] = { + [1] = ACTION_LAYER_TAP_TOGGLE(SYMB), + [2] = ACTION_LAYER_TAP_TOGGLE(APP), + [3] = ACTION_LAYER_TAP_TOGGLE(CNTL) // 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; + case 3: + ergodox_right_led_3_on(); + break; + default: + // none + break; + } + +}; diff --git a/keyboards/ergodox_ez/keymaps/techtomas/readme.md b/keyboards/ergodox_ez/keymaps/techtomas/readme.md new file mode 100644 index 0000000000..36e0591a8e --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/techtomas/readme.md @@ -0,0 +1,57 @@ +# Techtomas Configuration + +## Base Layer + +The base layer is a merge of what I liked with the default layout and the ordinary layout. The thumb cluster is more like the Kinesis advantage and the top row of the cluster is convient for use on the mac. + +* The Caps Lock postion handles [Hyper/Esc](http://brettterpstra.com/2012/12/08/a-useful-caps-lock-key/) +* The Tab key toggles MEH. +* The top vertical mods on the left and right are [ and ]. +* The bottom vertical mods on the left and right are tab and shift+tab +* The HYPER and MEH key are made in the same location on the right side of the board as well. Using Keyboard Maestro for OS X makes one-handed shortcuts very easy. +* Layer switching is focused around the thumb clusters plus some additional locations for convience. + +## Symbol Layer +The symbol layer can be tap/toggled with the bottom right key and also toggled on the thumb clusters. + +The bottom two vertical mods are set to F14 and F15 which is the default for changing screen brightness on the mac + +## App Layer +The app layer is used to control media playback and also some application shortcuts (OS X Focused). +It can be toggled on the left board in the top left corner (tilde/grave) or using your pinky on the right side of the board using either ; or /. +There is one additional toggle on the right thumb cluster for quick access to play and mute key combos. + +### Current App shortcuts defined +* Q = CMD+Q +* W = CMD+W +* Z = CMD+Z +* X = CMD+X +* C = CMD+C +* V = CMD+V +* B = CTRL+C +* P = Print Screen + +## Control Layer +The control layer is meant to help easily navigate and select text. It can also be stacked ontop of the Symbol layer when needed. + +The right arrow key and End key toggle the control layer on the left board. There is also a tap toggle for the layer in the same position on the right side of the board. + +On the left board you have mouse control with left & right click in the location of the G and B keys. +On the right board you have vim-style arrow keys using hjkl + +The left thumb cluster moves shift and alt within easy reach while holding the toggle (end). So far I've found this convient to navigate and skip around text when using the hjkl arrow keys. I found that it was easy to get the alt key stuck on depending on what key you released first so I added the PREVENT_STUCK_MODIFIERS to the config.h to help with that. + +## Changelog + +* May 4th, 2016 (v1.2): + * Moved layer toggles around to match my habbits of typing + * Enabled Prevent Stuck Modifers in my config.h (L3 + Alt on cluster would get stuck) + * Changed media layer to be more like an app layer with some quick shortcuts (mac centric) + * Moved around the base layer arrow keys so mod keys were more accesible + +* Apr 29, 2016 (V1.1): + * Added F14 and F15 to symbol layer + * Added control layer toggle to A key. + +* Apr 28, 2016 (V1.0): + * Modified config based on the default layout plus inspiration from the ordinary layout diff --git a/keyboards/ergodox_ez/keymaps/tm2030/README.md b/keyboards/ergodox_ez/keymaps/tm2030/README.md new file mode 100644 index 0000000000..ae69adf78a --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/tm2030/README.md @@ -0,0 +1,136 @@ +# TypeMatrix™ 2030 inspired layout + +This is a [TypeMatrix™ 2030](http://typematrix.com/2030/features.php) inspired layout for the ErgoDox EZ. The _TypeMatrix_ is a nice small ergonomic keyboard with a matrix layout, and it provides several nice features like `enter`, `backspace` and `delete` at the center, bigger `shift` keys and international `cut`, `copy` and `paste` keys. + +The idea in this ErgoDox layout is to make it is as close as possible to the TM2030, such that it would be easy to switch between the TM and the ErgoDox. No _fancy_ features have been implemented, as this is intended to be a base for further customization if desired. Some keys have been duplicated in order to accomodate for most people. + +Most of the TM2030 features are supported except +* automatic window switching (alt-tab key, at the left of the space key) +* show desktop key (at the right of the space key) +* 102/106 modes + +Dvorak mode is even supported by pressing [`Magic`](/TMK_README.md#magic-commands)+`1` (`Magic` is by default `LShift`+`RShift`) + +Some keys had to be moved around to fit into the ErgoDox, especially the `F1`-`F12` keys and the arrow keys. + +## Base Layer +This is the default layer, close to the TM with the following differences: + + - Top row (with the `F`-keys) and rightmost column (with application shortcuts) are removed, the corresponding keys are displaced elsewhere. + - Bottom-left keys are reorganized on a single row as: `Ctrl`, `fn`, `Gui`, `Play`, `App`/`Alt`. + - `shuffle` and `desktop` are not supported. + - `right-shift` is moved on `'`, `\` and on the right thumb (the latter is actually the only _true_ `right-shift`, and must be used in the `Magic` key combination). + - `right-ctrl` is moved on `End`. + - `]` is moved in place of the dash (`-`). + - Dash (`-`) and `=` are moved on bottom right row. + - Arrows and `PgUp`/`PgDn` are moved on the thumbs. + +``` +,--------------------------------------------------. ,--------------------------------------------------. +| ` | 1 | 2 | 3 | 4 | 5 | Del | | Del | 6 | 7 | 8 | 9 | 0 | ] | +|--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| +| Tab | Q | W | E | R | T |Backsp| |Backsp| Y | U | I | O | P | [ | +|--------+------+------+------+------+------|ace | |ace |------+------+------+------+------+--------| +| LShift | A | S | D | F | G |------| |------| H | J | K | L | ; | '/Shift| +|--------+------+------+------+------+------|Enter | |Enter |------+------+------+------+------+--------| +| LShift | Z | X | C | V | B | | | | N | M | , | . | / | \/Shift| +`--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + |LCtrl | fn | LGui | Play |App/Alt| | RAlt | - | Home | = |End/Ctl| + `-----------------------------------' `-----------------------------------' + ,--------------. ,-------------. + |Esc/Alt| num | | Left |Right | + ,------+-------+------| |------+------+------. + | | | PgUp | | Up | | | + |Space |LShift |------| |------|RShift|Space | + | | | PgDn | | Down | | | + `---------------------' `--------------------' +``` + +### Layer Switching +- Use `num` to toggle the Numeric Layer. +- Hold `fn` to temporarily activate the Numeric & Fn Layers. + +As on the original TM 2030, when `num` layer is activated, holding `fn` disables it but enables the other `fn` keys. + +## Dvorak Layer +Same as Layer 0 but with _Dvorak_ layout, to use with QWERTY OS layout. + +Enable Dvorak layout with [`Magic`](/TMK_README.md#magic-commands)+`1` (`LShift`+`RShift`+`1`), disable with `Magic`-`0`. + +The middle (green) led indicates when the Dvorak layer is activated. + + ,--------------------------------------------------. ,--------------------------------------------------. + | ` | 1 | 2 | 3 | 4 | 5 | Del | | Del | 6 | 7 | 8 | 9 | 0 | = | + |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + | Tab | ' | , | . | P | Y |Backsp| |Backsp| F | G | C | R | L | / | + |--------+------+------+------+------+------|ace | |ace |------+------+------+------+------+--------| + | LShift | A | O | E | U | I |------| |------| D | H | T | N | S | -/Shift| + |--------+------+------+------+------+------|Enter | |Enter |------+------+------+------+------+--------| + | LShift | ; | Q | J | K | X | | | | B | M | W | V | Z | \/Shift| + `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + |LCtrl | fn | LGui | Play |App/Alt| | RAlt | [ | Home | ] |End/Ctl| + `-----------------------------------' `-----------------------------------' + ,--------------. ,-------------. + |Esc/Alt| num | | Left |Right | + ,------+-------+------| |------+------+------. + | | | PgUp | | Up | | | + |Space |LShift |------| |------|RShift|Space | + | | | PgDn | | Down | | | + `---------------------' `--------------------' + +## Numeric Layer +Numeric layer close to the TM when toggling `num`, with the following differences: + +- Numpad is displaced by 1 to the top left. +- Arrows are displaced by 1 to the left. +- Provides access to `F1`-`F12`, `caps-lock` and `num-lock`. + +The numeric layer is indicated with the left (red) led. Caps-lock is indicated with the right (blue) led. + + ,--------------------------------------------------. ,--------------------------------------------------. + | | F1 | F2 | F3 | F4 | F5 | | | | | | Tab | / | * | - | + |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + | | F6 | F7 | F8 | F9 | F10 | | | | | Home | 7 | 8 | 9 | + | + |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + | | F11 | F12 | | | |------| |------| Up | End | 4 | 5 | 6 | + | + |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + | | | | | | | | | Left | Down | Right| 1 | 2 | 3 |KpEnter | + `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + | | | | | | | | 0 | 00 | . |Etr/Ctl| + `----------------------------------' `-----------------------------------' + ,-------------. ,-------------. + | | | |n.lock|c.lock| + ,------|------|------| |------+------+------. + | | | | | | | | + | | |------| |------| | | + | | | | | | | | + `--------------------' `--------------------' + +## Fn Layer +Activated simultaneously with the Numeric layer when holding the `fn` key. As on the TM, it provides access to the following features: +- `cut`, `copy` and `paste` +- `volume up`, `volume down` and `mute` — as opposed to the TM, these are only on left hand +- `previous track` and `next track` +- `calculator`, `mail` and `browser home` +- `insert`, `power`, `sleep`, `wake`, `print screen`, `scroll-lock` and `pause` + +Note: the `eject` key does not work due to jackhumbert/qmk_firmware#82 + + ,--------------------------------------------------. ,--------------------------------------------------. + | | | | | | |Insert| |Insert|Eject |Power |Sleep | Wake |PrtScr|ScrollLk| + |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + | | | | | | |VolUp | | | | | | | | Pause | + |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + | | | | Calc | Mail |Browsr|------| |------| | | | | | | + |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + | | | cut | copy |paste | Mute |VolDn | | | | | | | | | + `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + | | | | | | | | | | | | + `----------------------------------' `----------------------------------' + ,-------------. ,-------------. + | | | | | | + ,------|------|------| |------+------+------. + | | | | | Next | | | + | Mute | |------| |------| | | + | | | | | Prev | | | + `--------------------' `--------------------' diff --git a/keyboards/ergodox_ez/keymaps/tm2030/compiled.hex b/keyboards/ergodox_ez/keymaps/tm2030/compiled.hex new file mode 100644 index 0000000000..35837dc301 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/tm2030/compiled.hex @@ -0,0 +1,1224 @@ +:100000000C94CA040C940E050C940E050C940E0569 +:100010000C940E050C940E050C940E050C940E0514 +:100020000C940E050C940E050C94C30F0C949510B3 +:100030000C940E050C940E050C940E050C940E05F4 +:100040000C940E050C944F240C940E050C940E0584 +:100050000C940E050C94E21D0C940E050C940E05E8 +:100060000C940E050C940E050C940E050C940E05C4 +:100070000C940E050C940E050C940E050C940E05B4 +:100080000C940E050C940E050C940E050C940E05A4 +:100090000C940E050C940E050C940E050C940E0594 +:1000A0000C940E050C940E050C940E0502112411EF +:1000B00012122411121269118C111212E111F41191 +:1000C000C314C314F214F2142815481579167916BE +:1000D00053157916031603166A16791679167316D0 +:1000E00010161016101610161016101610161016E0 +:1000F00010161016101610161016101610161016D0 +:1001000022162F1636163D16471675190162026221 +:10011000016202620035002B00E100E100E0000016 +:10012000001E00140004001D0002304E001F001AC3 +:100130000016001B00E300E1002000080007000695 +:1001400000AE002C00210015000900190065744B59 +:1001500000220017000A000500000029744C002A44 +:100160000000002800000008544C002A000000286D +:10017000000000500023001C000B00110000004F85 +:1001800000240018000D001000E600520025000CAD +:10019000000E0036002D002C00260012000F003744 +:1001A000004A00E50027001300330038002E0051FC +:1001B0000030002F00347231724D71000035002B79 +:1001C00000E100E100E00000001E00340004003304 +:1001D0000002304E001F00360012001400E300E160 +:1001E000002000370008000D00AE002C0021001395 +:1001F0000018000E0065744B0022001C000C001B50 +:1002000000000029744C002A0000002800000008AB +:10021000544C002A00000028000000500023000970 +:10022000000700050000004F0024000A000B00102A +:1002300000E60052002500060017001A002F002CCF +:100240000026001500110019004A00E50027000FE4 +:100250000016001D00300051002E0038002D7231B4 +:10026000724D71000000000000000000000000005E +:10027000000000000000000000000000000000007E +:10028000000000000000000000000000000000006E +:10029000000000000000000000000000000000005E +:1002A000000000000000000000000000000000004E +:1002B000000000000000000000000000000000003E +:1002C000000000000000000000000000000000002E +:1002D000000000000000000000000000000000001E +:1002E000000000000000000000000000000000000E +:1002F00000000000000000000000000000000000FE +:1003000000000000000000000000000000000000ED +:1003100000000000000000000000000000000000DD +:1003200000000000000000000000000000000000CD +:1003300000000000000000000000000000000000BD +:1003400000000000000000000000000000000000AD +:10035000000000000000000000000000000000009D +:10036000000000000000000000000000000000008D +:10037000000000000000000000000000000000007D +:10038000000000000000000000000000000000006D +:10039000000000000000000000000000000000005D +:1003A000000000000000000000000000000000004D +:1003B000000000000000000000000000000000003D +:1003C000000000000000000000000000000000002D +:1003D000000000000000000000000000000000001D +:1003E000000000000000000000000000000000000D +:1003F00000000000000000000000000000000000FD +:1004000000000000000000000000000000000000EC +:1004100000000000000000000000000000000000DC +:1004200000000000000000000000000000000000CC +:1004300000000000000000000000000000000000BC +:1004400000000000000000000000000000000000AC +:10045000000000000000000000000000000000009C +:10046000000000000000000000000000000000008C +:10047000000000000000000000000000000000007C +:10048000000000000000000000000000000000006C +:10049000000000000000000000000000000000005C +:1004A000000000000000000000000000000000004C +:1004B000000000000000000000000000000000003C +:1004C000000000000000000000000000000000002C +:1004D000000000000000000000000000000000001C +:1004E000000000000000000000000000000000000C +:1004F00000000000000000000000000000000000FC +:1005000000000000000000000000000000000000EB +:1005100000000000000000000000000000000000DB +:1005200000000000000000000000000000000000CB +:1005300000000000000000000000000000000000BB +:1005400000000000000000000000000000000000AB +:10055000000000000000000000000000000000009B +:10056000000000000000000000000000000000008B +:10057000000000000000000000000000000000007B +:10058000000000000000000000000000000000006B +:10059000000000000000000000000000000000005B +:1005A000000000000000000000000000000000004B +:1005B000000000000000000000000000000000003B +:1005C000000000000000000000000000000000002B +:1005D000000000000000000000000000000000001B +:1005E000000000000000000000000000000000000B +:1005F00000000000000000000000000000000000FB +:1006000000000000000000000000000000000000EA +:1006100000000000000000000000000000000000DA +:1006200000000000000000000000000000000000CA +:1006300000000000000000000000000000000000BA +:1006400000000000000000000000000000000000AA +:100650000000000000010001000100010001000095 +:10066000003A003F0044000100010001003B00404F +:100670000045000100010001003C004100010001B3 +:1006800000010001003D00420001000100010001E5 +:10069000003E0043000100010000000100010001D4 +:1006A00000000001000000010001000100000050F6 +:1006B00000000053003F00010052005100000039CB +:1006C0000040004A004D004F00010001002B005F78 +:1006D000005C00590062000100540060005D005A97 +:1006E0000001300100550061005E005B0063000105 +:1006F00000560057005700580058710000010001D3 +:1007000000010001000100000001000100010001E2 +:1007100000010001000100010001004C0201000184 +:100720000001000100B20049010100A80001000120 +:1007300000B10049020100010001000100B500A85C +:1007400000000001004900A9000000AA000000010B +:1007500000490001000000010000000100B000019C +:10076000000100010000000100A5000100010001DE +:10077000000100AC00A60001000100010001000121 +:1007800000A7000100010001000100010046000176 +:1007900000010001000100AB00470048000100011A +:1007A000000100000016034500720067006F00445E +:1007B000006F007800200045005A00000016034535 +:1007C00000720067006F0044006F00780020004551 +:1007D000005A0000000403090409026D000401002E +:1007E000A0FA090400000103010100092111010020 +:1007F00001223F000705810308000A0904010001E6 +:1008000003010200092111010001224D00070582A8 +:100810000308000A09040200010300000009211175 +:100820000100012236000705830308000A090403BA +:100830000001030000000921110100012239000715 +:100840000584031000011201100100000008EDFEF4 +:10085000071301000102000105010906A1010507B6 +:1008600019E029E7150025019508750181020508A1 +:1008700019012905950575019102950175039101ED +:100880000507190029771500250195787501810262 +:10089000C005010980A101850216010026B7001AD2 +:1008A00001002AB700751095018100C0050C0901EF +:1008B000A1018503160100269C021A01002A9C0250 +:1008C000751095018100C005010902A1010901A16E +:1008D00000050919012905150025019505750181F6 +:1008E0000295017503810105010930093115812542 +:1008F0007F95027508810609381581257F95017558 +:10090000088106050C0A38021581257F95017508B6 +:100910008106C0C005010906A101050719E029E704 +:100920001500250195087501810295017508810161 +:1009300005081901290595057501910295017503B1 +:1009400091010507190029FF150025FF9506750877 +:100950008100C00000000000000000000000010253 +:1009600004060A0F17202C3A4A5D71879DB3C7DA37 +:10097000E9F5FCFFFCF5E9DAC7B39D87715D4A3AFA +:100980002C20170F0A0604020100000000000000DE +:100990000000000011241FBECFEFDAE0DEBFCDBFA4 +:1009A00004B603FE24C08091FB019091FC01A0914C +:1009B000FD01B091FE018730904BA740B04BB9F4D8 +:1009C0001092FB011092FC011092FD011092FE01A9 +:1009D00014BE84B7877F84BF88E10FB6F8948093F4 +:1009E0006000109260000FBEE0E0FFE3099511E0A7 +:1009F000A0E0B1E0ECE2FCE402C005900D92A4336B +:100A0000B107D9F711E0A4E3B1E001C01D92AB3FFB +:100A1000B107E1F70E94070D0C9414260C94000016 +:100A20001092B9008AE08093B800089594EA9093F8 +:100A3000BC009091BC0097FFFCCF9091B900987FCB +:100A4000983021F0903111F081E008958093BB003F +:100A500084E88093BC008091BC0087FFFCCF80912C +:100A6000B900887F883111F0803471F780E00895F3 +:100A700084E98093BC008091BC0084FDFCCF089584 +:100A80008093BB0084E88093BC008091BC0087FF0A +:100A9000FCCF9091B900987F81E0983209F480E012 +:100AA000089584E88093BC008091BC0087FFFCCF50 +:100AB0008091BB00089580910101811115C080E4EF +:100AC0000E9416058093010181110CC082E10E94F1 +:100AD000400580930101811105C08FEF0E94400500 +:100AE000809301010E94380584B1807F84B985B16B +:100AF000807F85B98AB1837F8AB98BB1837F8BB9B7 +:100B00003E98469808950E941607809301010E941E +:100B10005B0580B38C7080BB81B3836F81BBA5E321 +:100B2000B1E0E3E4F1E08EE08E0F11921D928E139E +:100B3000FCCF0C940007BF92CF92DF92EF92FF920E +:100B40000F931F93CF93DF9380910101882379F056 +:100B5000809134018F5F80933401811108C00E941D +:100B6000160780930101811102C00E94A80605E3C7 +:100B700011E0C0E0D0E0DD24D39482E0C82EEE2462 +:100B8000E394F12CC730D10500F58091010181116A +:100B900064C080E40E94160580930101811112C097 +:100BA00082E10E9440058093010181110BC0C701C1 +:100BB0000C2E01C0880F0A94EAF780950E94400528 +:100BC000809301010E94380548C0CA30A1F028F482 +:100BD000C83059F0C93061F005C0CC3089F070F0F0 +:100BE000CD3089F0209A289810C0219A29980DC0FC +:100BF000229A2A980AC0239A2B9807C0529A01C0B9 +:100C0000539A5B9802C03E9A469890EA9A95F1F7FB +:100C10009FB1799902C082E001C080E091709D256A +:100C2000982B7C9902C084E001C080E0892B7D99DB +:100C300002C038E001C030E0832B7E9902C020E181 +:100C400001C020E0822B9FB19095991F9927991F91 +:100C50009295990F907E892B0FC08091010181118F +:100C600049C080E40E94160580930101882379F130 +:100C7000B12C0E9438058B2DF8019081981719F03E +:100C80008083C09200010E945B0521960F5F1F4F79 +:100C9000CE30D10509F076CF80910001882361F133 +:100CA000815080930001882339F08FE99FE00197FC +:100CB000F1F700C0000020C0A3E4B1E0E5E3F1E0FB +:100CC000CF01825F91919D938E13FCCF15C083E17C +:100CD0000E944005809301018111CACF81E40E94E6 +:100CE0001605809301018111C3CF0E945105B82ED2 +:100CF000B094BFCF80E0C0CF0E94A60681E0DF9114 +:100D0000CF911F910F91FF90EF90DF90CF90BF9008 +:100D10000895E82FF0E0ED5BFE4F8081089508957F +:100D20000F931F93CF93DF93C3E4D1E010E00C2F18 +:100D3000025F899190E00E94581D180F0C13F9CFA3 +:100D4000812FDF91CF911F910F9108950C947B0714 +:100D500056985E9825982D9826982E9827982F9823 +:100D60008FEF90E0909389008093880090938B00A0 +:100D700080938A0090938D0080938C00259A2D9A01 +:100D80002FEF80E792E0215080409040E1F700C0D3 +:100D90000000269A2E9A2FEF80E792E021508040A3 +:100DA0009040E1F700C00000279A2F9A2FEF80E7CC +:100DB00092E0215080409040E1F700C0000025986B +:100DC0002D982FEF80E792E0215080409040E1F78E +:100DD00000C0000026982E982FEF80E792E0215067 +:100DE00080409040E1F700C0000027982F98569867 +:100DF0005E9825982D9826982E9827982F980895D4 +:100E000089EA8093800089E08093810024982C985F +:100E10003F988AB18F748AB96E98479A8BB1806B6C +:100E20008BB9769A0E94A8060C947A0780E2809388 +:100E300001018091510181110EC00E94100581E0D5 +:100E4000809351012FEF83ED90E32150804090403B +:100E5000E1F700C0000080E40E94160580930101C4 +:100E600081112EC00E94400580930101811128C08C +:100E70000E94400580930101811122C08FE30E94EE +:100E800040058093010181111BC00E94380580E458 +:100E90000E94160580930101811112C08CE00E940E +:100EA00040058093010181110BC00E944005809391 +:100EB0000101811105C08FE30E944005809301016B +:100EC0000E943805809101010895613049F0623037 +:100ED00059F488E00E94671B89E00E94671B04C0E8 +:100EE000FC018281811103C080E090E008958AE0D6 +:100EF00091E00895089556985E9825982D98269823 +:100F00002E9827982F988091BD019091BE01A091B5 +:100F1000BF01B091C00190FF02C0259A2D9A809127 +:100F2000C1019091C201A091C301B091C401029787 +:100F3000A105B10511F4269A2E9A0E944B1281FF49 +:100F400002C0279A2F9A089581E0089581E00895BC +:100F50000C94A60708950F931F93CF93DF938C01F2 +:100F6000FC01C081D181CE010E94DD1BBE010E9427 +:100F70005408EC01B8010E94A807882309F48DC029 +:100F8000F8018281882309F44AC080915D018111B2 +:100F90001FC0C431F0E5DF0709F051C00E94AA0765 +:100FA00081E080935D010E94AC1D90935C01809371 +:100FB0005B0110925401109256011092550110924B +:100FC00058011092570110925A011092590165C0B0 +:100FD00080915B0190915C010E94B81D883C910555 +:100FE00070F480915401E82FF0E0EE0FFF1FEB5AF0 +:100FF000FE4FD183C0838F5F809354014EC0C438AD +:1010000080E5D80721F0C538D04501F13AC0F80194 +:101010008281882341F01092520182E01EC0C438C0 +:10102000E0E5DE0759F580915201811106C086E2A4 +:101030000E94671386E20E942F1482E01CC0C4380D +:10104000F0E5DF0741F3C538D045D9F4F8018281D6 +:10105000882331F01092530180E20E947E141DC05B +:1010600080915301811106C087E20E94671387E2D5 +:101070000E942F1480E20E9485140FC0C538D0450D +:1010800029F381E08093520180935301C801DF91DD +:10109000CF911F910F910C94A40780E0DF91CF9125 +:1010A0001F910F910895089596E0799FF001112402 +:1010B00094E5899FE00DF11D1124E60FF11DEE0F5F +:1010C000FF1FEB5EFE4F859194910895880F991F45 +:1010D000FC01EB56F040859194910895880F991F7B +:1010E000FC01EB5EFE4F8591949108950F931F9341 +:1010F000CF93DF93EC01811520E3920750F5C115E2 +:1011000080E2D80708F0C3C0CB3BD10590F4C83AC1 +:10111000D10508F06AC0C53AD10508F05BC0C430FB +:10112000D10508F0D0C1219709F0CAC101E010E053 +:101130000AC2CF3FD10511F008F0C5C1C03FD105AB +:1011400008F0A2C0CE01805E9109089708F4BBC1E7 +:10115000B7C1C13090E5D90709F4A2C020F5C0316C +:101160008FE4D80770F4C11590E4D90708F094C053 +:10117000C11521E3D20708F0A3C1DD278E01106C51 +:10118000E2C1C115D04509F09BC10E94E4168FEF62 +:1011900094E32CE0815090402040E1F700C0000033 +:1011A0000E94071ED0C1C11597E5D90758F4C03178 +:1011B00021E5D20708F01CC1C43180E5D80708F446 +:1011C00075C07EC1CE0190578115904108F078C15D +:1011D000DF7073C1C53AD10509F477C1C63AD105AC +:1011E00009F076C102E810E4AEC1C83AD10509F4AD +:1011F00072C1C93AD10509F471C1CA3AD10509F4DD +:1012000070C1CB3AD10509F46FC1CC3AD10509F4CC +:101210006EC1CD3AD10509F46DC1C03BD10509F4C9 +:101220006CC1CE3AD10509F46BC1CF3AD10509F4AE +:101230006AC1C13BD10509F469C1C23BD10509F4BA +:1012400068C1C33BD10509F467C1C43BD10509F4AA +:1012500066C1C53BD10509F465C1C63BD10509F49A +:1012600064C1C73BD10509F463C1C83BD10509F48A +:1012700062C1C93BD10509F461C1CA3BD10509F47A +:1012800060C100E014E45FC18E0110655CC1CE0155 +:101290009F700E946E0858C1DF708E01106A53C1A2 +:1012A0008091DA0181608093DA014DC10E94AC1F08 +:1012B000811102C00E94921F0E94C91F90E090936A +:1012C000FB018093FA01C23080E5D80721F48091B8 +:1012D000FA01816086C0C43090E5D90721F480917D +:1012E000FA0182607EC0C63020E5D20721F48091E9 +:1012F000FA01846076C0C83080E5D80719F480917F +:10130000FA0127C0CA3090E5D90721F48091FA018B +:10131000806167C0CC3020E5D20721F48091FA01CA +:1013200080625FC0CE3080E5D80721F48091FA0159 +:10133000806457C0C03190E5D90721F48091FA014B +:1013400080684FC0C23120E5D20729F48091FA01AC +:101350008460886046C0C33080E5D80721F480915E +:10136000FA018E7F3EC0C53090E5D90721F4809107 +:10137000FA018D7F36C0C73020E5D20721F4809175 +:10138000FA018B7F2EC0C93080E5D80719F480910F +:10139000FA0126C0CB3090E5D90721F48091FA01FB +:1013A0008F7E1FC0CD3020E5D20721F48091FA0155 +:1013B0008F7D17C0CF3080E5D80721F48091FA01E6 +:1013C0008F7B0FC0C13190E5D90721F48091FA01DC +:1013D0008F7707C0C331D04531F48091FA018B7FFC +:1013E000877F8093FA018091FA010E94CD1FABC0E4 +:1013F0008D2F99278F70992781309105D9F49E01FF +:101400002370332702C0880F991F2A95E2F79C6842 +:101410008E0144E0000F111F4A95E1F70027137079 +:10142000802B912B53E0CC0FDD1F5A95E1F7C0764E +:10143000DD272FC08230910531F4DC2FCC278E01BF +:10144000016F106A80C08330910569F4CE0183700A +:10145000992701E010E002C0000F111F8A95E2F702 +:10146000C8019C680FC084309105B9F4CE01837027 +:10147000992701E010E002C0000F111F8A95E2F7E2 +:10148000C8019A6823E0CC0FDD1F2A95E1F7C07EE2 +:10149000D7708C010C2B1D2B56C08530910531F473 +:1014A000DC2FCC278E01046F106A4DC0069709F01F +:1014B0004AC0CF71DD27DC2FCC278E01106243C0DC +:1014C00000E010E040C08E013EC001E810E43BC0E7 +:1014D00003E810E438C002EE14E435C009EE14E469 +:1014E00032C00AEE14E42FC005EB14E42CC006EB66 +:1014F00014E429C007EB14E426C00CEC14E423C068 +:101500000DEC14E420C003E815E41DC00AE815E45E +:101510001AC002E915E417C004E915E414C001E299 +:1015200016E411C003E216E40EC004E216E40BC098 +:1015300005E216E408C006E216E405C007E216E478 +:1015400002C00AE216E4C801DF91CF911F910F910A +:10155000089596E0799FF001112494E5899FE00DAC +:10156000F11D1124E60FF11DEE0FFF1FEB5EFE4F84 +:1015700085919491803E9105E0F4803C910558F569 +:101580008133910509F46FC048F48932910509F45B +:1015900063C08A32910509F46DC072C08933910528 +:1015A000E9F082389105D1F08533910509F44DC0F9 +:1015B00067C0833E910581F138F4803E9105B9F012 +:1015C000823E9105D9F05CC0863E910561F1873E6F +:1015D0009105A1F155C00E94660808952091FA0175 +:1015E00020FD02C021FF4CC080EE90E049C08091F8 +:1015F000FA0180FFF9CF89E390E042C08091FA01BF +:1016000082FF0EC08091FA0184FF03C080E090E069 +:1016100037C083EE90E034C08091FA0182FFF2CFB0 +:1016200082EE90E02DC08091FA0183FF0BC0809183 +:10163000FA0184FDEBCF87EE90E022C08091FA01A1 +:1016400083FFF5CF86EE90E01BC08091FA0185FF05 +:1016500007C089E290E014C08091FA0185FFF9CFBC +:1016600085E390E00DC08091FA0186FF07C08AE211 +:1016700090E006C08091FA0186FFF9CF81E390E007 +:101680000E947608089508950C94430B80916E0192 +:101690000895CF93DF9300D01F92CDB7DEB79C01A2 +:1016A0008091F101843019F593E099833B832A837B +:1016B0009093E9008FEF9091E800815095FD06C06E +:1016C00095ED9A95F1F700008111F5CF8091E80032 +:1016D00085FF0DC040E050E063E070E0CE01019670 +:1016E0000E94B30D8091E8008E778093E8000F9000 +:1016F0000F900F90DF91CF910895CF93DF9300D09B +:101700001F92CDB7DEB72091F101243021F522E000 +:1017100029839B838A8383E08093E9008FEF9091F4 +:10172000E800815095FD06C095ED9A95F1F700000F +:101730008111F5CF8091E80085FF0DC040E050E0B9 +:1017400063E070E0CE0101960E94B30D8091E80045 +:101750008E778093E8000F900F900F90DF91CF91DC +:1017600008952091F1012430F1F422E02093E90062 +:101770002FEF3091E800215035FD06C035ED3A9548 +:10178000F1F700002111F5CF2091E80025FF0BC0F3 +:1017900040E050E065E070E00E94B30D8091E80009 +:1017A0008E778093E8000895CF93DF93EC019091BA +:1017B000F101943009F046C080910C018823D9F0E2 +:1017C00080910D018823B9F09093E9008FEF9091FB +:1017D000E800815095FD06C095E19A95F1F700006B +:1017E0008111F5CF8091E80085FF2CC040E050E0EA +:1017F00060E170E017C081E08093E9008FEF909185 +:10180000E800815095FD06C095ED9A95F1F700002E +:101810008111F5CF8091E80085FF14C040E050E0D1 +:1018200068E070E0CE010E94B30D8091E8008E77F1 +:101830008093E80080E1FE01AEE5B1E001900D92F9 +:101840008A95E1F7DF91CF9108958091F0018111A0 +:1018500009C00E94480F0E94A50F8091E200846099 +:101860008093E20008951092F001089508950C9479 +:101870003C240E949D1D0E9442240E944B120C9405 +:10188000440B42E061EC81E00E94C20E42E061EC58 +:1018900082E00E94C20E42E061EC83E00E94C20E30 +:1018A00042E161EC84E00C94C20E8091F30183303C +:1018B00009F455C030F4813071F0823009F48EC0E3 +:1018C00008958A3009F47AC08B3009F460C08930F9 +:1018D00009F09CC020C08091F201813A09F096C0C5 +:1018E0008091E800877F8093E8008091F6019091D5 +:1018F000F701892B21F460E18EE591E003C060E0FF +:1019000080E090E070E00E94FE0D8091E8008B770F +:101910008093E80008958091F201813209F076C049 +:101920008091F6019091F701009719F0039709F063 +:101930006DC08091E800877F8093E8008091E80087 +:1019400082FD05C08091F1018111F8CF5FC08091C7 +:10195000F10080936E018091E8008B7753C08091F5 +:10196000F201813A09F052C08091F6019091F7019D +:10197000892B09F04BC08091E800877F8093E800B5 +:101980008091E80080FFFCCF80910C0136C08091EF +:10199000F2018132D9F58091F6019091F701892BFE +:1019A000A9F58091E800877F8093E8000E94F70EF8 +:1019B0008091F40180930C010C94E4168091F20163 +:1019C000813221F58091E800877F8093E8000E94B2 +:1019D000F70E8091F50180936F0108958091F201D7 +:1019E000813AA1F48091E800877F8093E80080919C +:1019F000E80080FFFCCF80916F018093F10080911F +:101A0000E8008E778093E8000C94F70E089584B771 +:101A1000877F84BF88E10FB6F894809360001092AE +:101A200060000FBE90E080E80FB6F89480936100EC +:101A3000909361000FBE0E949A120E94480F0E946C +:101A4000A50F8091E20084608093E20078940E9468 +:101A50002B120E949C1282E091E00E9446120E948A +:101A60002A248091F101853069F40E94641D8091DF +:101A7000EF018823B1F30E948F1D882391F30E9408 +:101A80009D0DEFCF0E94A212ECCF292F33272330D8 +:101A90003105C9F064F42130310581F0223031057F +:101AA00009F043C08DE690E029ED37E042C02132D5 +:101AB0003105F1F02232310541F137C082E190E089 +:101AC00026E438E036C099278130910541F0823014 +:101AD000910541F0892B49F5E5EDF7E005C0EDEB07 +:101AE000F7E002C0E5EAF7E0849190E09F0121C0B1 +:101AF0006430D8F4E62FF0E0EE0FFF1FEE5DFE4FEE +:101B00002081318189E090E014C0643070F470E08D +:101B1000FB01EE0FFF1FE65EFE4F20813181FB01CE +:101B2000EA5EFE4F808190E004C080E090E020E01B +:101B300030E0FA0131832083089580E189BD82E19C +:101B400089BD09B400FEFDCF8091D8008F7D8093C0 +:101B5000D8008091E00082608093E0008091E000F6 +:101B600081FDFCCF0895CF92DF92EF92FF920F9309 +:101B70001F93CF93DF93EC018B016A010E94160F34 +:101B8000811133C0C114D10439F0F60180819181F3 +:101B9000081B190BC80FD91FE12CF12C01151105D9 +:101BA00019F18091E80085FD16C08091E8008E77DC +:101BB0008093E800C114D10449F0F601808191813D +:101BC000E80EF91EF182E08285E00FC00E94160F38 +:101BD000882321F30AC089918093F10001501109F3 +:101BE000FFEFEF1AFF0ADACF80E0DF91CF911F916C +:101BF0000F91FF90EF90DF90CF9008952091F80122 +:101C00003091F9012617370748F06115710539F44D +:101C10002091E8002E772093E80001C0B90140E050 +:101C200061157105A9F12091F101222309F443C046 +:101C3000253009F442C02091E80023FD40C02091E6 +:101C4000E80022FD32C02091E80020FFE9CF40915A +:101C5000F3002091F20030E0342BFC01CF0161153C +:101C6000710559F02830310540F481918093F100DD +:101C7000615071092F5F3F4FF1CF41E028303105AE +:101C800009F040E02091E8002E772093E800C8CFCB +:101C90004111C9CF0AC08091F101882361F08530DC +:101CA00061F08091E80083FD0AC08091E80082FF26 +:101CB000F2CF80E0089582E0089583E0089581E006 +:101CC00008952091F8013091F9012617370748F05F +:101CD0006115710539F42091E8002E772093E80012 +:101CE00001C0B901FC0120E06115710591F18091FD +:101CF000F101882309F440C0853009F43FC0809188 +:101D0000E80083FD3DC08091E80082FD2FC08091F6 +:101D1000E80080FFE9CF2091F3008091F20090E08D +:101D2000922B6115710559F08830910540F424918A +:101D30002093F1003196615071090196F2CF21E0B4 +:101D4000089709F020E08091E8008E778093E80002 +:101D5000CBCF2111CCCF0AC08091F101882361F053 +:101D6000853061F08091E80083FD0AC08091E80031 +:101D700082FFF2CF80E0089582E0089583E0089525 +:101D800081E00895982F973058F59093E9009817BF +:101D900039F07091EC002091ED005091F00003C0FB +:101DA000242F762F50E021FF19C03091EB003E7FA9 +:101DB0003093EB003091ED003D7F3093ED0030919A +:101DC000EB0031603093EB007093EC002093ED005A +:101DD0005093F0002091EE0027FF07C09F5FD3CF04 +:101DE0008F708093E90081E0089580E008958091EC +:101DF000F20187FF11C08091E80082FD05C080914B +:101E0000F1018111F8CF11C08091E8008B770BC0F0 +:101E10008091F101882349F08091E80080FFF8CF9C +:101E20008091E8008E778093E80008952091E40087 +:101E30003091E50095E64091EC00842F817040FFE1 +:101E400022C08091E80080FD1CC08091F1018823B0 +:101E500091F0853091F08091EB0085FD10C04091AC +:101E6000E4005091E5004217530729F39A0191507D +:101E700011F784E0089582E0089583E0089581E0F9 +:101E8000089580E008954091E80042FFDECF089574 +:101E90000E94B60F0E94BE0FE0EEF0E080818160EC +:101EA0008083E8EDF0E080818F77808319BCA7ED17 +:101EB000B0E08C918E7F8C9380818F7E8083109296 +:101EC000F00108950F931F93CF93DF930E94B60FF5 +:101ED0000E94BE0FC8EDD0E088818F77888388810B +:101EE0008068888388818F7D888319BC1092F10176 +:101EF0001092ED011092EF011092EE0100EE10E051 +:101F0000F80180818B7F808388818160888342E0B3 +:101F100060E080E00E94C20EE1EEF0E080818E7F02 +:101F20008083E2EEF0E08081816080838081886040 +:101F30008083F80180818E7F80838881806188839F +:101F4000DF91CF911F910F910895E8EDF0E080812E +:101F50008F7E8083E7EDF0E080818160808384E084 +:101F600082BF81E08093F0010C94620FE8EDF0E015 +:101F700080818E7F80831092E20008951092DA00B3 +:101F80001092E10008951F920F920FB60F92112444 +:101F90002F933F934F935F936F937F938F939F9371 +:101FA000AF93BF93EF93FF938091E10082FF0BC04B +:101FB0008091E20082FF07C08091E1008B7F8093D7 +:101FC000E1000E942A128091DA0080FF1FC08091F8 +:101FD000D80080FF1BC08091DA008E7F8093DA00EA +:101FE0008091D90080FF0DC080E189BD82E189BD6B +:101FF00009B400FEFDCF81E08093F1010E94250C21 +:1020000005C019BC1092F1010E94330C8091E100CF +:1020100080FF19C08091E20080FF15C08091E2002E +:102020008E7F8093E2008091E20080618093E200E5 +:102030008091D80080628093D80019BC85E080939D +:10204000F1010E94370C8091E10084FF30C0809143 +:10205000E20084FF2CC080E189BD82E189BD09B422 +:1020600000FEFDCF8091D8008F7D8093D8008091B5 +:10207000E1008F7E8093E1008091E2008F7E80936B +:10208000E2008091E20081608093E2008091ED01A6 +:10209000882311F084E007C08091E30087FD02C02F +:1020A00081E001C083E08093F1010E94390C8091AE +:1020B000E10083FF29C08091E20083FF25C0809169 +:1020C000E100877F8093E10082E08093F10110922C +:1020D000ED018091E1008E7F8093E1008091E2002C +:1020E0008E7F8093E2008091E20080618093E20025 +:1020F00042E060E080E00E94C20E8091F0008860C3 +:102100008093F0000E94360CFF91EF91BF91AF9148 +:102110009F918F917F916F915F914F913F912F91FF +:102120000F900FBE0F901F9018951F920F920FB631 +:102130000F9211242F933F934F935F936F937F934D +:102140008F939F93AF93BF93CF93DF93EF93FF93BF +:10215000C091E900CF708091EC00D82FD17080FD44 +:10216000D0E81092E9008091F000877F8093F00022 +:1021700078940E94D9101092E9008091F000886054 +:102180008093F000CD2BCF70C093E900FF91EF91C9 +:10219000DF91CF91BF91AF919F918F917F916F917F +:1021A0005F914F913F912F910F900FBE0F901F9015 +:1021B00018951F93CF93DF93CDB7DEB7AA970FB6CD +:1021C000F894DEBF0FBECDBFE2EFF1E088E08E0FE6 +:1021D0009091F10091938E13FBCF0E94550C80914A +:1021E000E80083FF1FC18091F2019091F301492F14 +:1021F00050E04A30510508F015C1FA01EA5AFF4F84 +:102200000C94C425803881F0823809F00BC180918C +:10221000F6018F708093E9008091EB0085FB8827A1 +:1022200080F91092E90006C08091EE019091EF01D3 +:10223000911182609091E800977F9093E8008093DD +:10224000F1001092F100C8C0282F2D7F09F0EAC0DC +:10225000882319F0823061F0E5C08091F40181306B +:1022600009F0E0C0933009F080E08093EF012BC0CB +:102270008091F401811127C08091F6018F7009F4DB +:10228000D1C08093E9002091EB0020FF1CC0933067 +:1022900021F48091EB00806214C09091EB0090617A +:1022A0009093EB0021E030E0A90102C0440F551FDC +:1022B0008A95E2F74093EA001092EA008091EB00E1 +:1022C00088608093EB001092E9008091E800877F9E +:1022D00086C08111A7C01091F4011F778091E3009F +:1022E0008078812B8093E3008091E800877F809342 +:1022F000E8000E94F70E8091E80080FFFCCF8091FB +:10230000E30080688093E300111102C082E001C005 +:1023100083E08093F10186C08058823008F082C04B +:102320008091F4019091F5018C3D53E0950779F58A +:1023300083E08A838AE289834FB7F894DE0113969B +:1023400020E03EE051E2E32FF0E050935700E491AB +:1023500020FF03C0E295EF703F5FEF708E2F90E09B +:10236000EA3010F0C79601C0C0968D939D932F5F01 +:10237000243149F74FBF8091E800877F8093E800C0 +:102380006AE270E0CE0101960E94FE0D14C0AE011B +:102390004F5F5F4F6091F6010E94450DBC010097B1 +:1023A00009F440C09091E800977F9093E8008981FC +:1023B0009A810E94610E8091E8008B778093E800FB +:1023C00031C0803879F58091E800877F8093E800FC +:1023D0008091ED018093F1008091E8008E778093E9 +:1023E000E8000E94F70E1EC081111CC09091F401FC +:1023F0009230C0F48091E800877F8093E80090934A +:10240000ED010E94F70E8091ED01811106C08091CF +:10241000E30087FD02C081E001C084E08093F10108 +:102420000E94410C8091E80083FF0AC08091E8007F +:10243000877F8093E8008091EB0080628093EB00BF +:10244000AA960FB6F894DEBF0FBECDBFDF91CF9135 +:102450001F9108950895CF938091F1018823A1F0F1 +:10246000C091E900CF709091EC00892F817090FDB0 +:1024700080E8C82B1092E9008091E80083FD0E945B +:10248000D910CF70C093E900CF9108959093750152 +:10249000809374010895E0917401F0917501309773 +:1024A00021F00190F081E02D099480E00895E09101 +:1024B0007401F0917501309721F00280F381E02DD5 +:1024C00009940895E0917401F0917501309721F01D +:1024D0000480F581E02D09940895209172013091D6 +:1024E00073018217930771F09093730180937201C7 +:1024F000E0917401F0917501309721F00680F78129 +:10250000E02D099408952091700130917101821796 +:10251000930771F09093710180937001E0917401C1 +:10252000F0917501309721F00084F185E02D099438 +:10253000089508950C9499120E94A31D0E9483058A +:102540000C94651E9F92AF92BF92CF92DF92EF9252 +:10255000FF920F931F93CF93DF9300D000D000D052 +:10256000CDB7DEB70E949B050DE010E0AA24A3942E +:10257000B12C902E802F0E948906980129583E4F39 +:102580006901F901F080F826A1F40150110988F7DA +:102590008FEF89838A831B820E94AC1D8160782F14 +:1025A0009D838C8349815A816B818D810E9439136F +:1025B0002FC09091DA0191FF04C08E830E948F0694 +:1025C0008E8125E030E0A501022E01C0440F0A945F +:1025D000EAF7E42E4F21C1F029839A828E2191E0FF +:1025E00009F490E09B830E94AC1D8160782F9D834D +:1025F0008C8349815A816B818D810E943913F60148 +:102600008081E826E08204C021503109E0F6BDCF88 +:102610000E944C21109176010E944B121817B9F0BC +:102620000E944B128093760126960FB6F894DEBF77 +:102630000FBECDBFDF91CF911F910F91FF90EF9013 +:10264000DF90CF90BF90AF909F900C94440B269654 +:102650000FB6F894DEBF0FBECDBFDF91CF911F91B3 +:102660000F91FF90EF90DF90CF90BF90AF909F9031 +:102670000895CF93DF93CDB7DEB72B970FB6F894BD +:10268000DEBF0FBECDBF4F83588769877A878B87A0 +:10269000DE01119686E0FD0111928A95E9F785E049 +:1026A000FE01379601900D928A95E1F749815A8192 +:1026B0006B817C818D819E810E9482192B960FB641 +:1026C000F894DEBF0FBECDBFDF91CF910895CF93B9 +:1026D000882309F4C2C0C82F823859F40E944B12D3 +:1026E00081FDBBC089E30E945C1C0E94291D89E317 +:1026F0000CC0833879F40E944B1280FDAEC083E594 +:102700000E945C1C0E94291D83E50E949E1CCF91A3 +:102710000C94291D843859F40E944B1282FD9DC0EF +:1027200087E40E945C1C0E94291D87E4EECF8CEF99 +:102730008C0F813A48F48C2F0E948F2381118DC019 +:102740008C2F0E945C1CE3CF80E28C0F883048F411 +:10275000C77081E001C0880FCA95EAF70E94E21CA9 +:10276000D6CF8BE58C0F833078F4C53A29F0C63A82 +:1027700031F083E890E005C081E890E002C082E893 +:1027800090E0CF910C946D1288E58C0F833108F0A6 +:1027900064C0C83A39F1C93A41F1CA3A49F1CB3A71 +:1027A00051F1CC3A59F1CD3A61F1C03B69F1CE3AE1 +:1027B00071F1CF3A79F1C13B81F1C23B89F1C33B61 +:1027C00091F1C43B99F1C53BA1F1C63BA9F1C73BCF +:1027D000B1F1C83BB9F1C93BC1F1CA3BC9F180E0D5 +:1027E00090E038C082EE90E035C089EE90E032C0D3 +:1027F0008AEE90E02FC085EB90E02CC086EB90E055 +:1028000029C087EB90E026C08CEC90E023C08DECD3 +:1028100090E020C083E891E01DC08AE891E01AC0F2 +:1028200082E991E017C084E991E014C081E292E06E +:1028300011C083E292E00EC084E292E00BC085E218 +:1028400092E008C086E292E005C087E292E002C012 +:102850008AE292E0CF910C948312CF91089588235D +:1028600009F44BC0823859F40E944B1281FF45C0D5 +:1028700089E30E945C1C0E94291D89E30CC08338F7 +:1028800071F40E944B1280FF38C083E50E945C1CEB +:102890000E94291D83E50E949E1C0C94291D8438EA +:1028A00059F40E944B1282FF28C087E40E945C1CEE +:1028B0000E94291D87E4EFCF9CEF980F913A58F3BF +:1028C00090E2980F983050F4877091E001C0990F12 +:1028D0008A95EAF7892F0E94E81CDFCF9BE5980FC5 +:1028E000933020F480E090E00C946D12885A83318C +:1028F00020F480E090E00C9483120895882321F066 +:102900000E94E21C0C94291D0895882321F00E9446 +:10291000E81C0C94291D08957F928F929F92AF928C +:10292000BF92CF92DF92EF92FF920F931F93CF93BC +:10293000DF931F92CDB7DEB77C01C62E772EFC0148 +:10294000058102950F70128111110E94FF1C0E94D7 +:10295000551C882379F0112369F080E28C0D8830B2 +:1029600048F082E00E943E1C0E94551C91E0D82E47 +:10297000D92601C0D12CE72DE295EF70F0E0E05AA6 +:10298000FF4F0C94C425872D807F072D0F7088235F +:1029900011F00295007F112389F0002309F490C102 +:1029A00080E28C0D883020F4802F0E94E21C03C04E +:1029B000802F0E94F21C0E94291D82C18C2D0E9432 +:1029C0002F14002309F495C180E28C0D883020F487 +:1029D000802F0E94E81C03C0802F0E94F81C0E94D8 +:1029E000291D87C1972D907F872D8F70903211F010 +:1029F0008295807FCC2021F0F1E0CF16B1F01EC08F +:102A0000112349F0002309F414C1013009F011C168 +:102A10000E94121D6EC1002319F0013009F469C132 +:102A200089830E94151D89810AC1112321F002307A +:102A300008F05FC1FEC001115CC101C1112321F08A +:102A4000002309F4F6C03CC1002309F4F8C03EC1DC +:102A5000872D86958695837090E0009719F00197F1 +:102A600061F047C1112321F08C2D972D937002C086 +:102A700080E090E00E946D123CC1112321F08C2D6A +:102A8000972D937002C080E090E00E94831231C1C4 +:102A90008C2D112319F00E94542002C00E94BC20EA +:102AA0000E94412126C1872D837009F052C0111167 +:102AB00020C18C2D829586958770880F880F9C2D5C +:102AC0009F70892E912CA12CB12C082E04C0880C4B +:102AD000991CAA1CBB1C0A94D2F7C4FE14C00FE0B8 +:102AE00010E020E030E0B901A80104C0440F551FF8 +:102AF000661F771F8A95D2F7CB01BA016095709552 +:102B00008095909503C060E070E0CB01272D26955D +:102B10002695237030E02230310569F023303105ED +:102B200089F0682979298A299B292130310571F09A +:102B30000E94CA1ADEC0682979298A299B290E9425 +:102B4000E61AD7C00E94CA1AC501B4010E94AE1A83 +:102B5000D0C0112319F0872D817001C0869588237C +:102B600009F4C7C08C2D829586958770880F880FD1 +:102B70009C2D9F70892E912CA12CB12C082E04C065 +:102B8000880C991CAA1CBB1C0A94D2F7C4FE14C062 +:102B90000FE010E020E030E0B901A80104C0440FCC +:102BA000551F661F771F8A95D2F7CB01BA01609532 +:102BB00070958095909503C060E070E0CB01272D63 +:102BC000269526952370422F50E04230510569F03A +:102BD0004330510589F0682979298A299B29413098 +:102BE000510571F00E94A41B84C0682979298A29A3 +:102BF0009B290E94C01B7DC00E94A41BC501B4017B +:102C00000E94881B76C08C2D90E0FC01E05EF109EB +:102C1000E531F10508F050C0E059FF4F0C94C42590 +:102C20000C2D0F70872D8F71112331F00E94211B05 +:102C3000802F0E947E145DC00E94421B802F0E9444 +:102C4000851457C0112339F0011153C0872D8F719E +:102C50000E94671B4EC0023008F04BC0F7CF112313 +:102C600039F0872D8F710E94211B43C01123C9F3B6 +:102C7000872D8F710E94421B3CC0112329F0872DA4 +:102C80008F710E940C1B35C00E94021B32C01123A1 +:102C900051F0172D1F71812F0E94211B63E0812F9E +:102CA0000E94351C26C081E00E943E1C023008F1C3 +:102CB00082E00E943E1C1DC0112331F0002389F2E6 +:102CC0008C2D0E94671315C0002391F28C2D0E9459 +:102CD0002F140FC0472D4F706C2DC7010E94650740 +:102CE0000E94261A06C0472D4F706C2DC7010E9406 +:102CF0005308DD20F9F00E94311C80FD1BC0F70154 +:102D000012820E942B1C0E94211BC7010E94A9163F +:102D10000E942B1C0F90DF91CF911F910F91FF907C +:102D2000EF90DF90CF90BF90AF909F908F907F906B +:102D30000C94421B0F90DF91CF911F910F91FF9048 +:102D4000EF90DF90CF90BF90AF909F908F907F904B +:102D500008950F931F93CF93DF93EC01888199819E +:102D60002B813C81232BB9F09F3F11F48F3F99F0C9 +:102D7000CE010E94AB07882371F0688179818A8136 +:102D80000E94271C8C010E94DC1B0E94A31AB80120 +:102D9000CE010E948C14DF91CF911F910F91089565 +:102DA0000E94FF1C0E940F1D0E94D41C0E94291D1E +:102DB0000E94F2210E94412180E090E00E946D1269 +:102DC00080E090E00C9483120E94EF1C0C94D016CB +:102DD0000E941C1C292F22952F7030E02C303105C9 +:102DE0004CF42A3031056CF422503109223031057F +:102DF000A8F407C02C30310569F02F30310551F0AF +:102E00000DC0803F69F018F4803E40F409C0843F53 +:102E100029F406C093FB882780F9089580E008957F +:102E200081E00895CF93DF9300D000D01F92CDB7FB +:102E3000DEB70F900F900F900F900F90DF91CF9112 +:102E40000895CF93DF9300D000D000D0CDB7DEB788 +:102E500026960FB6F894DEBF0FBECDBFDF91CF919F +:102E600008951F93CF93DF93C091850116E0809161 +:102E70008601C81799F0D0E01C9FF0011D9FF00D4E +:102E80001124E957FE4F4081518162817381848111 +:102E900095810E9421172196C770E9CFDF91CF91CC +:102EA0001F9108954091B7015091B8016091B90107 +:102EB0007091BA018091BB019091BC010C942117D3 +:102EC0008091BC0182958F7009F054C08091B90146 +:102ED000882309F44FC080918501A09186016091FB +:102EE000B7017091B8014091BA015091BB01B6E0B1 +:102EF0008A1709F43FC090E041155105C1F17F3FA9 +:102F000011F46F3FA1F1B89FF001B99FF00D1124AA +:102F1000E957FE4F218172132AC02081621327C016 +:102F20002281211124C0238134812417350710F414 +:102F300021503109241B350B283C3105C0F4209168 +:102F4000BC012F7020612093BC0126E0289FF00176 +:102F5000299FF00D1124E457FE4F80818F7080610E +:102F6000808387EB91E00E94A9160C94311701969B +:102F70008770BECF0895CF92DF92EF92FF920F93AA +:102F80001F93CF93DF93CDB7DEB762970FB6F89458 +:102F9000DEBF0FBECDBF8C0185E0F801DE011D96BE +:102FA00001900D928A95E1F7D8014C9111965C91B0 +:102FB000119712966C9112971396CD90DC901497FE +:102FC0003091B7017091B8018091BA019091BB0125 +:102FD000009709F46BC17F3F19F43F3F09F466C1C4 +:102FE000E090B901EE2009F4C0C02091BC01C816E0 +:102FF000D90628F0F601E81BF90BCF0104C0809533 +:1030000090958C0D9D1DFF24F394883C910578F0DC +:10301000F12C207F09F0C6C07C2DD98AC88A898905 +:103020000E94121787EB91E00E94A916B1C0822F6F +:10303000807F09F046C0751314C0341312C06111AB +:1030400010C02F7020612093BC010E94521787EBA3 +:1030500091E00E94A9168091BC01D80115968C932D +:103060002EC0CD2819F15F3F11F44F3FF9F0F62E35 +:1030700061111CC0809185012091860136E0821784 +:1030800009F45AC090E0389FF001399FF00D1124E7 +:10309000E957FE4F7181571306C07081471303C073 +:1030A0007281711103C001968770E9CFF62E6623F5 +:1030B00009F418C18091BC0181608093BC01F12C9E +:1030C00011C1751308C0341306C0611104C080918A +:1030D000BC01D801C3C04D875E878D859E856A8BF4 +:1030E0000E94E8166A898823E1F16623D1F12091D4 +:1030F000BC01822F82958F7090E0029774F08091CE +:10310000B7019091B80198878F831986DB86CA86AC +:103110002C87CE0107960E94A91686E0F801A7EB3E +:10312000B1E001900D928A95E1F70E9460170E942C +:103130005217FF24F394D6C04D875E878D859E85F8 +:103140000E941C1C292F22952F7030E0223031055F +:103150000CF0BCC09F7009F0B6C0805E883008F4E7 +:10316000C1C0C8010E94A916E4CFC816D90608F448 +:1031700053C0F601E81BF90BCF01883C910508F418 +:1031800050C0F12C7C2DD98AC88A89890E941217D7 +:10319000E7EBF1E086E0DF011D928A95E9F70E94F6 +:1031A0005217A0C0751314C0341312C0611110C09F +:1031B0008091BC01F8018583C8010E94A91686E0B0 +:1031C000E7EBF1E0DF011D928A95E9F7FE2C8AC05A +:1031D0004D875E878D859E856A8B0E94E8166A8979 +:1031E000882309F4BECF662309F4BBCF2091BC012C +:1031F000822F82958F7090E002970CF48ECF809191 +:10320000B7019091B8019A8389831B82DD82CC82B9 +:103210002E83CE0101967FCF809590958C0D9D1DBC +:10322000ACCFF62E662309F49CCF75132EC0341351 +:103230002CC02091BC0120FD1FC0822F82958F7071 +:10324000D9F0D80115962C9315978F3049F08F5FE0 +:10325000982F9295907F822F8F70892B15968C9343 +:10326000C8010E94A91686E0F801A7EBB1E0019021 +:103270000D928A95E1F793CF86E0F801A7EBB1E0D4 +:1032800001900D928A95E1F72DC04D875E878D855F +:103290009E850E94E816811140CF8091BC0181601B +:1032A0008093BC01C8010E94A9161CC0662309F4C2 +:1032B00058CF4D875E878D859E850E94E8168823AE +:1032C00009F44FCF2ACF811148CF0CC024303105EB +:1032D0000CF047CF9F7009F440CFF8019581907FA3 +:1032E00009F03BCF8F2D62960FB6F894DEBF0FBE6C +:1032F000CDBFDF91CF911F910F91FF90EF90DF90A5 +:10330000CF9008951F93CF93DF93CDB7DEB72C975F +:103310000FB6F894DEBF0FBECDBF4F8358876987C5 +:103320007A878B879C87CE0107960E94BB178823DC +:1033300069F08F8198852A853B85232BF1F19F3F8A +:1033400009F063C08F3F09F060C037C086E0FE011E +:103350003796DE01119601900D928A95E1F76F8103 +:103360007885EA85FB85309741F17F3F11F46F3F07 +:1033700021F12091860130E0C901019687709927DB +:103380004091850150E08417950709F447C069838F +:103390007A83FD83EC8396E0929FD001939FB00DDA +:1033A0001124A957BE4FFE01319601900D929A95B6 +:1033B000E1F7809386010E94311716E08091850124 +:1033C000909186018917C1F1189FC0011124895776 +:1033D0009E4F0E94BB17882379F1E09185011E9FC3 +:1033E000F0011124E957FE4F4081518162817381C0 +:1033F000848195810E9421178091850190E001963A +:103400008770992780938501D9CF4F815885698529 +:103410007A858B859C850E942117CFCF0E94E41668 +:103420001092860110928501E7EBF1E086E0DF0162 +:103430001D928A95E9F7C1CF2C960FB6F894DEBF9E +:103440000FBECDBFDF91CF911F910895EF92FF92F4 +:103450000F931F93CF93DF938C01009709F46CC0F7 +:10346000F12CEE24E394E8012196F801849184374D +:1034700040F4843008F051C0813081F0823019F17D +:103480005BC0853709F444C0A8F19CE7980F9037DA +:1034900008F052C08F770E942F1441C00E5F1F4F5B +:1034A000FE01C49180E28C0F883048F4C7708E2DE5 +:1034B00001C0880FCA95EAF70E94021D14C08C2F24 +:1034C0000E9467132DC00E5F1F4FFE01C49180E262 +:1034D0008C0F883058F4C7708E2D01C0880FCA95A4 +:1034E000EAF70E94081D0E94291D1AC08C2F0E9415 +:1034F0002F1416C00E5F1F4FFE01C491CC2381F024 +:103500008FE99FE00197F1F700C00000C150F6CFAE +:103510000E5F1F4FFE01F49003C00E9467138E01DF +:103520008F2D882309F49FCFEFE9FFE03197F1F762 +:1035300000C000008150F5CFDF91CF911F910F9116 +:10354000FF90EF90089508956093C1017093C201B8 +:103550008093C3019093C4010C94D0160F931F93D2 +:103560000091C1011091C2012091C3013091C401A9 +:10357000DC01CB01802B912BA22BB32B8093C101BB +:103580009093C201A093C301B093C4011F910F9106 +:103590000C94D0160F931F930091C1011091C2019A +:1035A0002091C3013091C401DC01CB018023912320 +:1035B000A223B3238093C1019093C201A093C301BE +:1035C000B093C4011F910F910C94D0160F931F93C9 +:1035D0000091C1011091C2012091C3013091C40139 +:1035E000DC01CB0180279127A227B3278093C1015B +:1035F0009093C201A093C301B093C4011F910F9196 +:103600000C94D0161092BD011092BE011092BF0111 +:103610001092C0010C94D01641E050E060E070E0E0 +:1036200004C0440F551F661F771F8A95D2F7409339 +:10363000BD015093BE016093BF017093C0010C9413 +:10364000D01641E050E060E070E004C0440F551F28 +:10365000661F771F8A95D2F78091BD019091BE01B8 +:10366000A091BF01B091C001482B592B6A2B7B2B35 +:103670004093BD015093BE016093BF017093C001A0 +:103680000C94D01641E050E060E070E004C0440FBC +:10369000551F661F771F8A95D2F740955095609504 +:1036A00070958091BD019091BE01A091BF01B09134 +:1036B000C001482359236A237B234093BD015093C3 +:1036C000BE016093BF017093C0010C94D01641E01D +:1036D00050E060E070E004C0440F551F661F771F84 +:1036E0008A95D2F78091BD019091BE01A091BF0152 +:1036F000B091C001482759276A277B274093BD0115 +:103700005093BE016093BF017093C0010C94D0161A +:103710000F931F930091BD011091BE012091BF0135 +:103720003091C001DC01CB01802B912BA22BB32B5C +:103730008093BD019093BE01A093BF01B093C001DF +:103740001F910F910C94D0160F931F930091BD0100 +:103750001091BE012091BF013091C001DC01CB016D +:1037600080239123A223B3238093BD019093BE01B4 +:10377000A093BF01B093C0011F910F910C94D0167C +:103780000F931F930091BD011091BE012091BF01C5 +:103790003091C001DC01CB0180279127A227B327FC +:1037A0008093BD019093BE01A093BF01B093C0016F +:1037B0001F910F910C94D0160895CF92DF92EF9243 +:1037C000FF920F931F93CF93DF938C01C090C101A1 +:1037D000D090C201E090C301F090C4018091BD017E +:1037E0009091BE01A091BF01B091C001C82AD92A11 +:1037F000EA2AFB2ACFE1D0E0D701C6010C2E04C093 +:10380000B695A795979587950A94D2F780FF06C03D +:10381000B8018C2F0E94A90A019721F4219760F723 +:1038200080E001C08C2FDF91CF911F910F91FF900D +:10383000EF90DF90CF900895CF93DF93EC010E943B +:10384000DD1BBE010E94A90ADF91CF910895CB0133 +:103850000E941C1C08958091C501859585958595CC +:1038600008958091C5018770089598E0899F90011F +:103870001124262B2093C5010C94211B2091C501F6 +:10388000809582238093C501982F977069F430E06A +:10389000482F552747FD50952417350729F0859562 +:1038A000859585950C94421B08959091C50197705C +:1038B00081E009F480E0089590910C01992321F0B2 +:1038C00090910D01911109C020910E0130910F01CD +:1038D000F90132969FEF40E01FC0982F969596957C +:1038E00096959F3050F5E0910E01F0910F01E90F90 +:1038F000F11D877021E030E0A90102C0440F551F7F +:103900008A95E2F7CA019181892B818308959F3FAF +:1039100039F04F5F4E3041F051915813F8CF0DC040 +:103920005111F7CF942FF5CF9F3F39F0F901E90FEF +:10393000F11D97FDFA9582830895089590910C01E9 +:10394000992321F090910D01911109C020910E0150 +:1039500030910F01F9013296205F3F4F1FC0982F21 +:103960009695969596959F30F0F4E0910E01F09122 +:103970000F01E90FF11D877021E030E0A90102C0BD +:10398000440F551F8A95E2F7CA01809591818923DA +:10399000818308953196E217F30729F090819813F7 +:1039A000F9CF1082F7CF089581E090E0E0910E0109 +:1039B000F0910F01E80FF91F1082019680319105F7 +:1039C000A9F708959091D901892B8093D901089581 +:1039D00080959091D90189238093D90108951092FF +:1039E000D90108959091D801892B8093D801089529 +:1039F00080959091D80189238093D80108951092E1 +:103A0000D80108959091D701892B8093D70108950B +:103A100080959091D70189238093D70108951092C2 +:103A2000D70108958093C60108951092C6010895A4 +:103A300080910E0190910F01FC0131969C01205F55 +:103A40003F4F80E0919191118F5FE217F307D1F71B +:103A50000895E0910E01F0910F018091D9018083CA +:103A6000E0910E01F0910F0190818091D801892B96 +:103A70008083E0910E01F0910F0190818091D70138 +:103A8000892B80838091C601882361F0E0910E012B +:103A9000F0910F019081892B80830E94181D811164 +:103AA0001092C60180910E0190910F010C94571253 +:103AB00020E0009739F0AC0141505109842395234F +:103AC0002F5FF7CF822F08958091F101843021F18B +:103AD0001092DB0120E488E190E00FB6F894A895FD +:103AE000809360000FBE2093600080E00E94440B32 +:103AF00083B7817F846083BF83B7816083BF7894FD +:103B0000889583B78E7F83BF88E10FB6F894809342 +:103B10006000109260000FBE0895089508950E94FD +:103B20008D1D0E949B050E948E1D0E94900691E0B3 +:103B3000811101C090E0892F08950E94E4160E942F +:103B40004B120C94440B82E084BD93E095BD9AEF38 +:103B500097BD80936E0008952FB7F8948091DC0193 +:103B60009091DD01A091DE01B091DF012FBF08959A +:103B7000CF92DF92EF92FF920F931F932FB7F8949B +:103B80004091DC015091DD016091DE017091DF0117 +:103B90002FBF6A017B01EE24FF248C0120E030E07E +:103BA000C016D106E206F30610F4415051099A01FD +:103BB000281B390BC9011F910F91FF90EF90DF90E7 +:103BC000CF9008951F920F920FB60F9211248F93EA +:103BD0009F93AF93BF938091DC019091DD01A09101 +:103BE000DE01B091DF010196A11DB11D8093DC01C2 +:103BF0009093DD01A093DE01B093DF01BF91AF91FF +:103C00009F918F910F900FBE0F901F9018950E945B +:103C1000480FF8942FEF87EA91E6215080409040BA +:103C2000E1F700C0000087E090EBDC018093FB012E +:103C30009093FC01A093FD01B093FE019CE088E10C +:103C40000FB6F894A895809360000FBE9093600023 +:103C5000FFCFEF92FF920F931F93CF93DF93D82F55 +:103C6000CDE08C2F0E94890605E010E0E82EF12CB3 +:103C7000C701002E02C0959587950A94E2F780FF50 +:103C800009C0602F7C2F80E00E945408D81302C026 +:103C900081E006C00150110958F7C15010F780E0CB +:103CA000DF91CF911F910F91FF90EF900895CF93E7 +:103CB000C82F8CE20E94291E882321F08C2FCF91DF +:103CC0000C94291E80E0CF910895CF930E94AC1FE1 +:103CD000811102C00E94921FC5E6C15049F00E94A6 +:103CE0009B058FE39CE90197F1F700C00000F5CF39 +:103CF00089E20E94571E811113C18AE20E94571E59 +:103D000081110E94921F85E00E94571E81110E941E +:103D1000071E0E94B71F8093DA0187E00E94571E9A +:103D20008823A9F18BE10E94571E882351F08091CE +:103D3000DA0181FB222720F991E0922790FB81F99B +:103D40000EC08EE00E94571E882361F08091DA0138 +:103D500082FB222720F991E0922790FB82F9809341 +:103D6000DA0115C080E10E94571E9091DA01882384 +:103D700041F093FB222720F981E0822780FB93F911 +:103D800004C0892F809580FB90F99093DA0180918F +:103D9000DA010E94BB1F0E94C91F8093FA0180EEC6 +:103DA0000E94571E882341F08091FA01982F909528 +:103DB00090FB80F98093FA0189E30E94571E8823C3 +:103DC00059F08091FA0181FB222720F991E0922796 +:103DD00090FB81F98093FA0182EE0E94571E88239E +:103DE00059F08091FA0182FB222720F991E0922775 +:103DF00090FB82F98093FA0186EE0E94571E882379 +:103E000059F08091FA0183FB222720F991E0922753 +:103E100090FB83F98093FA0183EE0E94571E88235A +:103E200059F08091FA0184FB222720F991E0922732 +:103E300090FB84F98093FA0185E30E94571E882342 +:103E400059F08091FA0185FB222720F991E0922711 +:103E500090FB85F98093FA0181E30E94571E882325 +:103E600059F08091FA0186FB222720F991E09227F0 +:103E700090FB86F98093FA0181E10E94571E882306 +:103E800059F08091FA0187FB222720F991E09227CF +:103E900090FB87F98093FA018091FA010E94CD1F6F +:103EA0008091FA0187FB882780F980930D0187E2D2 +:103EB0000E94571EC82F8EE10E94571E8111C260BA +:103EC0008FE10E94571E8111C46080E20E94571E3C +:103ED0008111C86081E20E94571E8111C06182E297 +:103EE0000E94571E8111C06283E20E94571E8111F9 +:103EF000C06484E20E94571E882311F0C06802C08B +:103F0000CC2329F08C2F0E94C41F6C2F03C00E9469 +:103F1000C01F682F70E080E090E0CF910C94A41A4D +:103F2000CF9108956DEE7EEF80E090E00E94FE2537 +:103F300060E082E090E00E94EC2560E083E090E0A9 +:103F40000E94EC2560E084E090E00E94EC2560E0B7 +:103F500085E090E00C94EC2580E090E00E94E6255E +:103F600021E08D3E9E4F09F020E0822F089582E0EF +:103F700090E00C94DE25682F82E090E00C94EC2514 +:103F800083E090E00C94DE25682F83E090E00C94B1 +:103F9000EC2584E090E00C94DE25682F84E090E02E +:103FA0000C94EC258091E20180FF0BC0609113011D +:103FB00085E0689FB00111247595679575956795A3 +:103FC0002BC081FF09C06091130185E0689FB0019B +:103FD00011247595679520C082FF07C06091130179 +:103FE00085E0689FB001112417C09091E3019923E7 +:103FF000D1F060911201961788F72091130185E0A6 +:10400000289F90011124929FA001939F500D11248D +:1040100070E0CA010E94B0256038710540F4611556 +:10402000710539F002C065E070E0862F08958FE7D2 +:10403000089581E008958091E20180FF08C06091B9 +:10404000110170E0759567957595679521C081FFA1 +:1040500006C06091110170E07595679519C082FFE7 +:1040600004C06091110170E010C09091E3019923A8 +:10407000C1F0609110019617A0F780911101899FFE +:10408000C001112470E00E94B0256038710528F449 +:104090006115710521F0862F08958FE7089581E05D +:1040A000089561E070E0F4CF803F21F40E94D21FB8 +:1040B000819504C0813F29F40E94D21F8093E601BC +:1040C0000895823F21F40E94D21F819504C0833F4E +:1040D00029F40E94D21F8093E5010895893F19F4C5 +:1040E0000E941B2005C08A3F31F40E941B2081954D +:1040F0008093E70108958B3F21F40E941B20819556 +:1041000004C08C3F29F40E941B208093E80108958D +:10411000843F21F48091E401816017C0853F21F440 +:104120008091E401826011C0863F21F48091E40116 +:1041300084600BC0873F21F48091E401886005C052 +:10414000883F31F48091E40180618093E401089517 +:104150008D3F21F48091E20181600BC08E3F21F4FC +:104160008091E201826005C08F3F29F48091E201D5 +:1041700084608093E2010895803F39F48091E601E4 +:1041800087FF6CC01092E60169C0813F29F48091DD +:10419000E6011816BCF362C09091E501823F29F454 +:1041A00097FF5CC01092E50159C0833F19F41916BE +:1041B000CCF354C0893F41F48091E70118160CF00C +:1041C0004DC01092E7014AC08A3F29F48091E7016F +:1041D00087FF44C0F6CF8B3F39F48091E80187FF19 +:1041E0003DC01092E8013AC08C3F29F48091E8016B +:1041F0001816BCF333C0843F21F48091E4018E7F14 +:1042000017C0853F21F48091E4018D7F11C0863F66 +:1042100021F48091E4018B7F0BC0873F21F48091D2 +:10422000E401877F05C0883F31F48091E4018F7EEF +:104230008093E40113C08D3F21F48091E2018E7FD1 +:104240000BC08E3F21F48091E2018D7F05C08F3F2E +:1042500029F48091E2018B7F8093E2018091E50156 +:1042600081110EC08091E60181110AC08091E701A1 +:10427000811106C08091E801811102C01092E30112 +:10428000089584EE91E00E9462120E94AC1D90930A +:10429000E1018093E00108951F93CF93DF93809114 +:1042A000E0019091E1010E94B81DAC019091E30101 +:1042B000992321F02091140130E006C020911501CE +:1042C0008AE0289F900111244217530708F486C002 +:1042D0008091E501C091E601D091E7011091E801DC +:1042E000811107C0C11176C0D11174C0111172C003 +:1042F00075C09F3F19F09F5F9093E301181624F457 +:104300000E94D21F8093E5018091E50187FF05C0DF +:104310000E94D21F81958093E5011C1624F40E940F +:10432000D21F8093E6018091E60187FF05C00E94BD +:10433000D21F81958093E6016091E501662339F1F2 +:10434000C091E601CC2319F1772767FD7095872F7F +:10435000972F0E94C12423E333E343E35FE30E94EA +:1043600025250E948E246093E5016C2F772767FD39 +:104370007095872F972F0E94C12423E333E343E3F3 +:104380005FE30E9425250E948E246093E6011D169E +:1043900024F40E941B208093E7018091E70187FFAE +:1043A00005C00E941B2081958093E701111624F41B +:1043B0000E941B208093E8018091E80187FF05C0DF +:1043C0000E941B2081958093E801DF91CF911F917E +:1043D0000C9441219F3F09F08ECF96CFDF91CF9172 +:1043E0001F910895E4EEF1E085E0DF011D928A95CA +:1043F000E9F71092E3011092E2010895833081F110 +:1044000028F4813059F08230D1F00895853009F4D4 +:1044100049C0B8F1863009F456C00895809115015D +:10442000262F30E0280F311D2F3F310524F4680F6F +:104430006093150108958FEF809315010895809181 +:104440001401262F30E0280F311D2F3F310524F4B1 +:10445000680F6093140108958FEF809314010895FD +:1044600080911301262F30E0280F311D2F3F310599 +:1044700024F4680F6093130108958FEF8093130164 +:10448000089580911201262F30E0280F311D2F3F13 +:10449000310524F4680F6093120108958FEF809323 +:1044A0001201089580911101262F30E0280F311D4F +:1044B0002F3F310524F4680F6093110108958FEFA9 +:1044C00080931101089580911001262F30E0280F6C +:1044D000311D2F3F310524F4680F609310010895BA +:1044E0008FEF809310010895833011F128F481300B +:1044F00049F0823091F00895853081F120F18630C5 +:10450000C1F1089580911501681720F4861B8093EE +:1045100015010895109215010895809114016817EE +:1045200020F4861B809314010895109214010895BD +:1045300080911301681720F4861B8093130108955E +:1045400010921301089580911201681720F4861BC0 +:104550008093120108951092120108958091110123 +:10456000681720F4861B80931101089510921101A1 +:10457000089580911001681720F4861B8093100124 +:1045800008951092100108950F931F938D3109F42F +:104590006BC008F03FC08E3009F47FC0C0F4873094 +:1045A00009F469C068F4863009F0B1C08091DA017D +:1045B000817F8E7F8093DA0181E08093EA01A8C039 +:1045C000883009F4A2C08B3009F49FC0A0C08631A6 +:1045D00009F49BC078F4803109F472C0813109F08C +:1045E00096C00E94E41690910D0181E08927809386 +:1045F0000D018BC0893109F488C08B3109F087C067 +:104600008091DA0181FB222720F991E0922790FB2B +:1046100081F94CC0853309F470C048F4873209F43D +:104620006CC008F459C0893209F467C070C0833483 +:1046300038F48A3308F04EC0883309F466C067C086 +:10464000833409F45AC0883409F061C00E94E4162A +:104650000FEF13ED20E3015010402040E1F700C0C0 +:1046600000000E94071E51C00E9448240E944B1265 +:104670000E94440B4AC09091DA01892F8095817085 +:1046800080FB90F929F0966098609093DA0140C021 +:10469000997F977F9093DA0138C08091DA0182FB8D +:1046A000222720F991E0922790FB82F98093DA018A +:1046B000992359F18091DA0181608093DA0125C054 +:1046C0008091DA0183FB222720F991E0922790FB69 +:1046D00083F9ECCF895301C08D5141E050E060E097 +:1046E00070E08A019B0104C0000F111F221F331FBD +:1046F0008A95D2F7C901B80104C061E070E080E09A +:1047000090E00E94A41A0E94E41681E001C080E0BB +:104710001F910F91089580E0089580E00895CF9350 +:10472000C82F8091EA01813079F018F08230E9F1E8 +:1047300087C0E0910E01F0910F018081813169F015 +:10474000823209F07FC009C0E0910E01F0910F01A3 +:104750008081813111F0823261F48C2F0E948B2391 +:10476000811104C08C2F0E94C4221DC081E090E002 +:104770001AC08C2F0E948D23811114C0C43179F08E +:1047800048F4CB3079F0C03109F060C082E080930A +:10479000EA0108C0C93219F0C83321F057C010929D +:1047A000EA0154C081E0817053C0C93289F118F523 +:1047B000C43171F1A8F4C73009F046C08AE0809393 +:1047C000150194E19093140193E090931301809369 +:1047D000120188E08093110188E28093100134C0B7 +:1047E000CE51C63088F5EC2FF0E0E65DFE4F8081BB +:1047F0008093E90129C0CE34E9F020F4CB3421F5CF +:104800006AE013C0C13579F0C235F1F461E00DC042 +:104810008091E901882319F01092E90115C081E027 +:104820008093EA0115C061E006C08091E9010E9411 +:10483000FE210AC06AE08091E9010E94742204C04E +:104840001092EA0180E004C081E002C080E0ABCFBA +:10485000CF910895E1E8F0E08081886080838081D5 +:10486000816080838FB7F89493E09093890090EDF6 +:10487000909388008FBF0895EFE6F0E0808182601A +:1048800080830895EFE6F0E080818D7F8083089536 +:10489000EFE6F0E0908182E08927808308951F92FF +:1048A0000F920FB60F9211242F933F934F935F9364 +:1048B0006F937F938F939F93AF93BF93EF93FF93E8 +:1048C0008091EB019091EC0101969093EC01809323 +:1048D000EB01811103C082E00E94440BE091EC01E6 +:1048E000E695E695F0E0ED5AF64FE4918091EB0104 +:1048F0008E1303C080E00E94440BFF91EF91BF91A3 +:10490000AF919F918F917F916F915F914F913F9167 +:104910002F910F900FBE0F901F90189504D06894A0 +:10492000B1118DC0089570D088F09F5790F0B92FC5 +:104930009927B751A0F0D1F0660F771F881F991FF4 +:104940001AF0BA95C9F712C0B13081F077D0B1E052 +:10495000089574C0672F782F8827B85F39F0B93F62 +:10496000CCF3869577956795B395D9F73EF49095F6 +:104970008095709561957F4F8F4F9F4F0895E89474 +:1049800009C097FB3EF490958095709561957F4F97 +:104990008F4F9F4F9923A9F0F92F96E9BB27939545 +:1049A000F695879577956795B795F111F8CFFAF455 +:1049B000BB0F11F460FF1BC06F5F7F4F8F4F9F4F86 +:1049C00016C0882311F096E911C0772321F09EE8E4 +:1049D000872F762F05C0662371F096E8862F70E04A +:1049E00060E02AF09A95660F771F881FDAF7880F24 +:1049F0009695879597F9089557FD9058440F551F40 +:104A000059F05F3F71F04795880F97FB991F61F050 +:104A10009F3F79F087950895121613061406551FC7 +:104A2000F2CF4695F1DF08C0161617061806991F33 +:104A3000F1CF86957105610508940895E894BB2728 +:104A400066277727CB0197F908950BD078C069D0F6 +:104A500028F06ED018F0952309F05AC05FC01124D9 +:104A6000EECFCADFA0F3959FD1F3950F50E0551F0D +:104A7000629FF001729FBB27F00DB11D639FAA27B3 +:104A8000F00DB11DAA1F649F6627B00DA11D661F02 +:104A9000829F2227B00DA11D621F739FB00DA11D23 +:104AA000621F839FA00D611D221F749F3327A00DDD +:104AB000611D231F849F600D211D822F762F6A2F79 +:104AC00011249F5750408AF0E1F088234AF0EE0FFE +:104AD000FF1FBB1F661F771F881F91505040A9F70B +:104AE0009E3F510570F014C0AACF5F3FECF3983E93 +:104AF000DCF3869577956795B795F795E7959F5F72 +:104B0000C1F7FE2B880F911D9695879597F908950B +:104B100097F99F6780E870E060E008959FEF80EC70 +:104B2000089500240A941616170618060906089513 +:104B300000240A9412161306140605060895092E79 +:104B40000394000C11F4882352F0BB0F40F4BF2BE8 +:104B500011F460FF04C06F5F7F4F8F4F9F4F089528 +:104B600097FB072E16F4009407D077FD09D00E941A +:104B7000CA2507FC05D03EF4909581959F4F089576 +:104B8000709561957F4F0895EE0FFF1F0590F4918A +:104B9000E02D0994AA1BBB1B51E107C0AA1FBB1F34 +:104BA000A617B70710F0A61BB70B881F991F5A95B9 +:104BB000A9F780959095BC01CD010895F999FECF94 +:104BC00092BD81BDF89A992780B50895A8E1B0E01B +:104BD00042E050E00C940626262FF999FECF92BDB4 +:104BE00081BDF89A019700B4021639F01FBA20BDB2 +:104BF0000FB6F894FA9AF99A0FBE08950196272FE6 +:104C00000E94ED250C94EC25DC01CB01FC01F99907 +:104C1000FECF06C0F2BDE1BDF89A319600B40D9208 +:0C4C200041505040B8F70895F894FFCFC1 +:104C2C000220460BD40BB10B7D0B490B0101C701C4 +:104C3C0028080A03140A3F4D36391409C70891088D +:104C4C005808EB0704081D08360801020304050682 +:044C5C00070809003C +:00000001FF diff --git a/keyboards/ergodox_ez/keymaps/tm2030/keymap.c b/keyboards/ergodox_ez/keymaps/tm2030/keymap.c new file mode 100644 index 0000000000..ca80752263 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/tm2030/keymap.c @@ -0,0 +1,242 @@ +/* TypeMatrix-2030-like keymap */ +#include "ergodox_ez.h" +#include "debug.h" +#include "action_layer.h" +#include "led.h" + +#define BASE 0 // default layer +#define DVRK 1 // Dvorak layer +#define NUMR 8 // numeric layer +#define FNLR 9 // fn layer + +#define MDBL0 1 +#define MFNLR 2 + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* Basic layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | ` | 1 | 2 | 3 | 4 | 5 | Del | | Del | 6 | 7 | 8 | 9 | 0 | ] | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Tab | Q | W | E | R | T |Backsp| |Backsp| Y | U | I | O | P | [ | + * |--------+------+------+------+------+------|ace | |ace |------+------+------+------+------+--------| + * | LShift | A | S | D | F | G |------| |------| H | J | K | L | ; | '/Shift| + * |--------+------+------+------+------+------|Enter | |Enter |------+------+------+------+------+--------| + * | LShift | Z | X | C | V | B | | | | N | M | , | . | / | \/Shift| + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * |LCtrl | fn | LGui | Play |App/Alt| | RAlt | - | Home | = |End/Ctl| + * `-----------------------------------' `-----------------------------------' + * ,--------------. ,-------------. + * |Esc/Alt| num | | Left |Right | + * ,------+-------+------| |------+------+------. + * | | | PgUp | | Up | | | + * |Space |LShift |------| |------|RShift|Space | + * | | | PgDn | | Down | | | + * `---------------------' `--------------------' + */ +// 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, KC_DELT, + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_BSPC, + KC_LSFT, KC_A, KC_S, KC_D, KC_F, KC_G, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_ENT, + KC_LCTL, M(MFNLR), KC_LGUI,KC_MPLY,ALT_T(KC_APP), + + ALT_T(KC_ESC), TG(NUMR), + KC_PGUP, + KC_SPC, KC_LSFT, KC_PGDN, + + // right hand + KC_DELT, KC_6, KC_7, KC_8, KC_9, KC_0, KC_RBRC, + KC_BSPC, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, + KC_H, KC_J, KC_K, KC_L, KC_SCLN, SFT_T(KC_QUOT), + KC_ENT, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, SFT_T(KC_BSLS), + KC_RALT, KC_MINS, KC_HOME, KC_EQL, CTL_T(KC_END), + + KC_LEFT, KC_RGHT, + KC_UP, + KC_DOWN, KC_RSFT, KC_SPC + ), +/* Dvorak layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | ` | 1 | 2 | 3 | 4 | 5 | Del | | Del | 6 | 7 | 8 | 9 | 0 | = | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Tab | ' | , | . | P | Y |Backsp| |Backsp| F | G | C | R | L | / | + * |--------+------+------+------+------+------|ace | |ace |------+------+------+------+------+--------| + * | LShift | A | O | E | U | I |------| |------| D | H | T | N | S | -/Shift| + * |--------+------+------+------+------+------|Enter | |Enter |------+------+------+------+------+--------| + * | LShift | ; | Q | J | K | X | | | | B | M | W | V | Z | \/Shift| + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * |LCtrl | fn | LGui | Play |App/Alt| | RAlt | [ | Home | ] |End/Ctl| + * `-----------------------------------' `-----------------------------------' + * ,--------------. ,-------------. + * |Esc/Alt| num | | Left |Right | + * ,------+-------+------| |------+------+------. + * | | | PgUp | | Up | | | + * |Space |LShift |------| |------|RShift|Space | + * | | | PgDn | | Down | | | + * `---------------------' `--------------------' + */ +// If it accepts an argument (i.e, is a function), it doesn't need KC_. +// Otherwise, it needs KC_* +[DVRK] = KEYMAP( // layer 0 : default + // left hand + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_DELT, + KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_BSPC, + KC_LSFT, KC_A, KC_O, KC_E, KC_U, KC_I, + KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_ENT, + KC_LCTL, M(MFNLR), KC_LGUI, KC_MPLY, ALT_T(KC_APP), + + ALT_T(KC_ESC), TG(NUMR), + KC_PGUP, + KC_SPC, KC_LSFT, KC_PGDN, + + // right hand + KC_DELT, KC_6, KC_7, KC_8, KC_9, KC_0, KC_EQL, + KC_BSPC, KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLSH, + KC_D, KC_H, KC_T, KC_N, KC_S, SFT_T(KC_MINS), + KC_ENT, KC_B, KC_M, KC_W, KC_V, KC_Z, SFT_T(KC_BSLS), + KC_RALT, KC_LBRC, KC_HOME, KC_RBRC, CTL_T(KC_END), + + KC_LEFT, KC_RGHT, + KC_UP, + KC_DOWN, KC_RSFT, KC_SPC + ), +/* Numeric Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | | | | | | Tab | / | * | - | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | F6 | F7 | F8 | F9 | F10 | | | | | Home | 7 | 8 | 9 | + | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | F11 | F12 | | | |------| |------| Up | End | 4 | 5 | 6 | + | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | Left | Down | Right| 1 | 2 | 3 |KpEnter | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | 0 | 00 | . |Etr/Ctl| + * `----------------------------------' `-----------------------------------' + * ,-------------. ,-------------. + * | | | |n.lock|c.lock| + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// SYMBOLS +[NUMR] = KEYMAP( + // left hand + KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, + KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_TRNS, + KC_TRNS, 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, 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_TAB, KC_PSLS, KC_PAST, KC_PMNS, + KC_TRNS, KC_TRNS, KC_HOME, KC_P7, KC_P8, KC_P9, KC_PPLS, + KC_UP, KC_END, KC_P4, KC_P5, KC_P6, KC_PPLS, + KC_LEFT, KC_DOWN, KC_RGHT, KC_P1, KC_P2, KC_P3, KC_PENT, + KC_TRNS, KC_P0, M(MDBL0),KC_PDOT, CTL_T(KC_PENT), + + KC_NLCK, KC_CAPS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), +/* fn layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | |Insert| |Insert|Eject |Power |Sleep | Wake |PrtScr|ScrollLk| + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | | | |VolUp | | | | | | | | Pause | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | Calc | Mail |Browsr|------| |------| | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | cut | copy |paste | Mute |VolDn | | | | | | | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | Next | | | + * | Mute | |------| |------| | | + * | | | | | Prev | | | + * `--------------------' `--------------------' + */ +// MEDIA AND MOUSE +[FNLR] = KEYMAP( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_INS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLU, + KC_TRNS, KC_TRNS, KC_TRNS, KC_CALC, KC_MAIL, KC_WHOM, + KC_TRNS, KC_TRNS, LSFT(KC_DELT),LCTL(KC_INS),LSFT(KC_INS), KC_MUTE, KC_VOLD, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_MUTE, KC_TRNS, KC_TRNS, + // right hand + KC_INS, KC_EJCT, KC_PWR, KC_SLEP, KC_WAKE, KC_PSCR, KC_SLCK, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PAUS, + 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_MPRV, + KC_MNXT, KC_TRNS, KC_TRNS +), +}; + +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 MDBL0: + if (record->event.pressed) { + return MACRO( I(25), T(P0), T(P0), END ); + } + break; + case MFNLR: + layer_invert(NUMR); + layer_invert(FNLR); + 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) { + + ergodox_board_led_off(); + ergodox_right_led_1_off(); + ergodox_right_led_2_off(); + ergodox_right_led_3_off(); + // led 1: numeric layer + if (layer_state & (1 << NUMR)) { + ergodox_right_led_1_on(); + } + // led 2: Dvorak layer + if (default_layer_state == 1 << DVRK) { + ergodox_right_led_2_on(); + } + // led 3: caps lock + if (host_keyboard_leds() & (1<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/keyboards/ergodox_ez/keymaps/tonyabra_osx/readme.md b/keyboards/ergodox_ez/keymaps/tonyabra_osx/readme.md new file mode 100644 index 0000000000..f9d76efc23 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/tonyabra_osx/readme.md @@ -0,0 +1,5 @@ +# ErgoDox EZ OS X Simplified Configuration + +This keyboard configuration replaces the hyper and meh keys with the command key. It also removes all of the meta keys that require a "hold" because I found that I hesitate when I type, which can accidentally fire those combinations. On the upper left of the left hand, I mimicked the Mac placement of tab and escape, and on the upper right of the right hand, I placed an additional enter key for convenience when breezing through prompts. + +This is my standard working configuration for now, but I can see myself tweaking it as I use it more. I highly recommend you do the same. \ No newline at end of file diff --git a/keyboards/ergodox_ez/keymaps/townk_osx/compiled.hex b/keyboards/ergodox_ez/keymaps/townk_osx/compiled.hex new file mode 100644 index 0000000000..c8db30edfd --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/townk_osx/compiled.hex @@ -0,0 +1,1171 @@ +:100000000C9495020C94D9020C94D9020C94D90248 +:100010000C94D9020C94D9020C94D9020C94D902F4 +:100020000C94D9020C94D9020C94670E0C94390FDD +:100030000C94D9020C94D9020C94D9020C94D902D4 +:100040000C94D9020C94A3220C94D9020C94D902DA +:100050000C94D9020C94851D0C94D9020C94D902ED +:100060000C94D9020C94D9020C94D9020C94D902A4 +:100070000C94D9020C94D9020C94D9020C94D90294 +:100080000C94D9020C94D9020C94D9020C94D90284 +:100090000C94D9020C94D9020C94D9020C94D90274 +:1000A0000C94D9020C94D9020C94D902A60FC80F53 +:1000B000B610C80FB6100D103010B610851098107D +:1000C0006913691395139513D813F8135315531522 +:1000D00003145315B014B0144415531553154D158E +:1000E000BD14BD14BD14BD14BD14BD14BD14BD1488 +:1000F000BD14BD14BD14BD14BD14BD14BD14BD1478 +:10010000CE14DB14E214E914F314021902E3000123 +:10011000E3011900020602E30001E30106000213F5 +:100120000001E00104020402E001130002290001C1 +:10013000E00104020402E00129000000F4A2002210 +:1001400030A135002B003161C200C10000001E004B +:10015000140004001D0001534D001F001A0016007A +:100160001B00E0004C002000080007000600E20031 +:100170002A002100150009001900E3004A002200AE +:1001800017000A00050000000A3029006B67000014 +:100190006D6F00000B3066006C6700006E6F000032 +:1001A0000C3023001C000B00110000000D30240057 +:1001B00018000D001000E7004B0025000C000E0099 +:1001C0003600E6002C00260012000F0037002F61D9 +:1001D00028002700130033003800C3004E002D0014 +:1001E0002E003461C200C10000000000FF00FE00CC +:1001F000FD00000000000000000000000000010001 +:100200000000F400F900F200FB0000000000F5001F +:10021000F000F100000000000000F600FA00F3001A +:10022000FC000000000000000000000000000000D2 +:1002300000000000000000000000000000002B0291 +:100240002B0000005800000000009C005F005C00D4 +:10025000590000000000540060005D005A00620078 +:100260000000550061005E005B0063000000230297 +:100270005700560067008500010026022702000093 +:10028000000001000000000000000000000000006D +:100290000000000000003900E100010000003A0009 +:1002A000AD00B0000000000000003B00BC00AC004E +:1002B0000000010000003C00AF00AE0000000100A3 +:1002C00000003D00BB00AB000000010000003E004C +:1002D000000000000000000000003F0001000000DE +:1002E00001000000000040000100000001000000CB +:1002F000000041000000500000000000000042002B +:100300000000510000000100000043000000520006 +:10031000000001000000440000004F000000010048 +:100320000000450000000000000000000000A900DF +:10033000AA00A800E50001000000160345007200B5 +:1003400067006F0044006F007800200045005A00ED +:10035000000016034500720067006F0044006F0044 +:100360007800200045005A00000004030904090237 +:100370006D00040100A0FA0904000001030101005E +:100380000921110100012240000705810308000A2C +:1003900009040100010301020009211101000122E9 +:1003A0004D000705820308000A090402000103004A +:1003B000000009211101000122360007058303080E +:1003C000000A0904030001030000000921110100D3 +:1003D00001223900070584031000011201100100F9 +:1003E000000008EDFE0713010001020001050109EC +:1003F00006A101050719E029E715002501950875F3 +:1004000001810205081901290595057501910295DB +:10041000017503910105071900297715002501953C +:100420007875018102C005010980A10185021601CC +:100430000026B7001A01002AB70075109501810047 +:10044000C0050C0901A1018503160100269C021AB2 +:1004500001002A9C02751095018100C00501090266 +:10046000A1010901A10005091901290515002501AE +:10047000950575018102950175038101050109301A +:1004800009311581257F9502750881060938158186 +:10049000257F950175088106050C0A38021581250E +:1004A0007F950175088106C0C005010906A10105F7 +:1004B0000719E029E71500250195087501810295C6 +:1004C0000175088101050819012905950575019136 +:1004D000029501750391010507190029FF150026F2 +:1004E000FF00950675088100C000000000000000B4 +:1004F00000000000010204060A0F17202C3A4A5D92 +:1005000071879DB3C7DAE9F5FCFFFCF5E9DAC7B3FB +:100510009D87715D4A3A2C20170F0A0604020100DC +:100520000000000000000000000011241FBECFEFFB +:10053000DAE0DEBFCDBF04B603FE24C08091030223 +:1005400090910402A0910502B09106028730904B71 +:10055000A740B04BB9F4109203021092040210921B +:1005600005021092060214BE84B7877F84BF88E11B +:100570000FB6F89480936000109260000FBEE0E028 +:10058000FFE3099511E0A0E0B1E0E4EDF8E402C07A +:1005900005900D92A433B107D9F712E0A4E3B1E0BE +:1005A00001C01D92A330B107E1F70E94AF0B0C947C +:1005B00068240C9400001092B9008AE08093B8007F +:1005C000089594EA9093BC009091BC0097FFFCCFF3 +:1005D0009091B900987F983021F0903111F081E02E +:1005E00008958093BB0084E88093BC008091BC0098 +:1005F00087FFFCCF8091B900887F883111F080346B +:1006000071F780E0089584E98093BC008091BC007C +:1006100084FDFCCF08958093BB0084E88093BC00E8 +:100620008091BC0087FFFCCF9091B900987F81E05A +:10063000983209F480E0089584E88093BC008091AA +:10064000BC0087FFFCCF8091BB00089580B38C7005 +:1006500080BB81B3836F81BB0895809101018111BB +:1006600015C080E40E94E1028093010181110CC059 +:1006700082E10E940B0380930101811105C08FEF7D +:100680000E940B03809301010E94030384B1807FC9 +:1006900084B985B1807F85B98AB1837F8AB98BB1EE +:1006A000837F8BB93E98469808950E94F704809303 +:1006B00001010E942D030E942603A5E3B1E0E3E4BB +:1006C000F1E08EE08E0F11921D928E13FCCF0C94F0 +:1006D000E1040E94F704809301010E942D030E940F +:1006E0002603A5E3B1E0E3E4F1E08EE08E0F119282 +:1006F0001D928E13FCCF0895BF92CF92DF92EF929E +:10070000FF920F931F93CF93DF9380910101882372 +:1007100079F0809134018F5F80933401811108C09A +:100720000E94F70480930101811102C00E94890494 +:1007300005E311E0C0E0D0E0DD24D39482E0C82ED0 +:10074000EE24E394F12CC730D10500F5809101012E +:10075000811164C080E40E94E10280930101811153 +:1007600012C082E10E940B038093010181110BC032 +:10077000C7010C2E01C0880F0A94EAF780950E94E9 +:100780000B03809301010E94030348C0CA30A1F00B +:1007900028F4C83059F0C93061F005C0CC3089F078 +:1007A00070F0CD3089F0209A289810C0219A2998AD +:1007B0000DC0229A2A980AC0239A2B9807C0529AF1 +:1007C00001C0539A5B9802C03E9A469890EA9A9567 +:1007D000F1F79FB1799902C082E001C080E0917089 +:1007E0009D25982B7C9902C084E001C080E0892B74 +:1007F0007D9902C038E001C030E0832B7E9902C0B1 +:1008000020E101C020E0822B9FB19095991F99278C +:10081000991F9295990F907E892B0FC080910101AD +:10082000811149C080E40E94E10280930101882384 +:1008300079F1B12C0E9403038B2DF8019081981758 +:1008400019F08083C09200010E942D0321960F5F52 +:100850001F4FCE30D10509F076CF8091000188235B +:1008600061F1815080930001882339F08FE99FE086 +:100870000197F1F700C0000020C0A3E4B1E0E5E378 +:10088000F1E0CF01825F91919D938E13FCCF15C053 +:1008900083E10E940B03809301018111CACF81E49F +:1008A0000E94E102809301018111C3CF0E941C03C9 +:1008B000B82EB094BFCF80E0C0CF0E94870481E003 +:1008C000DF91CF911F910F91FF90EF90DF90CF902C +:1008D000BF900895E82FF0E0ED5BFE4F8081089512 +:1008E00008950F931F93CF93DF93C3E4D1E010E0FB +:1008F0000C2F025F899190E00E94AC1C180F0C1322 +:10090000F9CF812FDF91CF911F910F9108950C9412 +:100910007A0556985E9825982D9826982E982798AF +:100920002F988FEF90E090938900809388009093A8 +:100930008B0080938A0090938D0080938C00259A81 +:100940002D9A2FEF80E792E0215080409040E1F710 +:1009500000C00000269A2E9A2FEF80E792E02150E7 +:1009600080409040E1F700C00000279A2F9A2FEFB7 +:1009700080E792E0215080409040E1F700C0000005 +:1009800025982D982FEF80E792E0215080409040ED +:10099000E1F700C0000026982E982FEF80E792E044 +:1009A000215080409040E1F700C0000027982F9828 +:1009B00056985E9825982D9826982E9827982F98C7 +:1009C000089589EA8093800089E0809381002498CB +:1009D0002C983F988AB18F748AB96E98479A8BB1D8 +:1009E000806B8BB9769A0E9489040C94790580E219 +:1009F000809301018091510181110EC00E94DB02A0 +:100A000081E0809351012FEF83ED90E321508040EE +:100A10009040E1F700C0000080E40E94E102809372 +:100A2000010181112EC00E940B03809301018111ED +:100A300028C00E940B0380930101811122C08FE323 +:100A40000E940B038093010181111BC00E940303CC +:100A500080E40E94E10280930101811112C08CE0C8 +:100A60000E940B038093010181110BC00E940B03B4 +:100A700080930101811105C08FE30E940B038093D5 +:100A800001010E940303809101010895FC016B3074 +:100A900079F018F46A3031F01DC06C3079F06D30A7 +:100AA00099F018C08281811118C08CE291E00895FC +:100AB0008281811115C08EE191E0089582818111BA +:100AC00012C084E191E00895828181110FC08AE013 +:100AD00091E0089580E090E008958FE291E008951C +:100AE00081E291E0089589E191E008958FE091E03D +:100AF00008950895CF936091BF017091C0018091D6 +:100B0000C1019091C2010E94B81CC82F56985E98EE +:100B100025982D9826982E9827982F988FE090E06A +:100B2000909389008093880090938B0080938A0033 +:100B300090938D0080938C00CC2329F0C13029F450 +:100B4000C093520102C01092520180915201813033 +:100B500011F4279A2F9A0E94EF10867011F0259AAF +:100B60002D9AC23041F40E94351B811104C0279890 +:100B70002F98269A2E9AE0910E01F0910F01808114 +:100B8000982F927259F08D7D49F48FEF90E09093F9 +:100B9000890080938800259A2D9A08C00E94621CC3 +:100BA000827221F00E94081B882379F3CF91089567 +:100BB00081E0089581E008950C94DA050895282FC6 +:100BC000882339F090E02A3010F44D960895069766 +:100BD000089587E290E00895AF92BF92DF92EF927E +:100BE000FF920F931F93CF93DF938C01FC01C08181 +:100BF000D181CE010E94B11ABE010E945C09EC01B4 +:100C0000B8010E94DC05882309F4C9C1F80182817A +:100C1000882309F4BEC080915F0181111FC0C431D7 +:100C2000F0E7DF0709F0B5C10E94DE0581E080939F +:100C30005F010E944F1D90935E0180935D011092B1 +:100C40005601109258011092570110925A011092B9 +:100C5000590110925C0110925B01A1C180915D016C +:100C600090915E010E945B1D883C910570F480911B +:100C70005601E82FF0E0EE0FFF1FE95AFE4FD18337 +:100C8000C0838F5F809356018AC1C13020E8D207AC +:100C900008F451C0F8018281882309F47EC05E0106 +:100CA000E894B7F880915501813079F050F08230A6 +:100CB000C1F482EE0E940B1287E50E940B1287E5B9 +:100CC0000EC082EE0E940B120CC080EE0E940B122E +:100CD00081EE0E940B1288E10E940B1288E10E94B3 +:100CE000D3128CE0E82EF12CC5010E2C02C0969593 +:100CF00087950A94E2F78F700E94DF05D82E0E9434 +:100D00000B128D2D0E94D312F4E0EF1AF1082CEF94 +:100D1000E2162FEFF20641F780915501813029F05C +:100D200010F0823041F482EE04C080EE0E94D312B3 +:100D300081EE0E94D312C43180E7D80768F4C23034 +:100D400090E7D90708F046C0C115E0E7DE0771F06B +:100D5000C130D047A1F10CC1C33320E7D20709F459 +:100D6000D8C0C433D04709F4EBC002C1F801828176 +:100D7000882309F402C10E94B815FFEF24E38CE038 +:100D8000F15020408040E1F700C000000E94AA1D01 +:100D900006C1C13080E8D80770F2C43120E7D2071D +:100DA00008F0B3C0C23080E7D807A0F4C11590E7BF +:100DB000D90709F4E2C0C130D04709F0D9C0F80121 +:100DC0008281882309F4D9C08091E10181608093F8 +:100DD000E101E5C0F8018281882309F4CEC00E94B8 +:100DE000041E811102C00E94EA1D0E94171E90E09D +:100DF0009093F5018093F401C230F0E7DF0721F40E +:100E00008091F40181607AC0C33020E7D20721F4D9 +:100E10008091F401826072C0C43080E7D80721F469 +:100E20008091F40184606AC0C53090E7D90719F455 +:100E30008091F40127C0C630E0E7DE0721F48091FD +:100E4000F40180615BC0C730F0E7DF0721F48091D7 +:100E5000F401806253C0C83020E7D20721F48091AA +:100E6000F40180644BC0C93080E7D80721F4809139 +:100E7000F401806843C0CA3090E7D90729F4809113 +:100E8000F401846088603AC0CB30E0E7DE0721F4EB +:100E90008091F4018E7F32C0CC30F0E7DF0721F47F +:100EA0008091F4018D7F2AC0CD3020E7D20721F454 +:100EB0008091F4018B7F22C0CE3080E7D80719F4EF +:100EC0008091F4011AC08091F401CF3090E7D907E6 +:100ED00011F48F7E13C0C031E0E7DE0711F48F7D7F +:100EE0000DC0C131F0E7DF0711F48F7B07C0C231BD +:100EF000D04711F48F7702C08B7F877F8093F401F6 +:100F00008091F4010E941B1E4AC0C333F0E7DF0743 +:100F1000A1F4F8018281882321F01092530182E02C +:100F200016C080915301811106C086E20E940B1207 +:100F300086E20E94D31282E018C0C433D047C1F4C5 +:100F4000F8018281882331F01092540180E20E94DE +:100F5000221325C080915401811106C087E20E94AE +:100F60000B1287E20E94D31280E20E94291317C05D +:100F700081E08093530180935401C801DF91CF91A8 +:100F80001F910F91FF90EF90DF90BF90AF900C9466 +:100F9000D805C130F0E8DF0708F081CECCCE80E084 +:100FA000DF91CF911F910F91FF90EF90DF90BF9055 +:100FB000AF90089526E0729FF001112444E5849FCC +:100FC000E00DF11D1124E60FF11DEE0FFF1FEE5B8A +:100FD000FE4F859194910E946E09811560E49607F9 +:100FE000B0F5811570E3970708F0DEC0803E9105EB +:100FF000D8F4803C910508F06CC0883A910578F4EB +:10100000853A910508F06BC08130910509F452C111 +:1010100008F40FC18430910508F04CC10AC18B3B24 +:10102000910508F467C005C18F3F910509F048F4A8 +:10103000803F910508F0ADC0883E910508F43AC1A3 +:10104000F8C0811520E2920708F0A5C00895811527 +:1010500043E5940790F4811562E5960708F0C8C04F +:10106000811571E5970708F0BEC0811520E592074C +:1010700008F09DC09F70906A0895811545E594071A +:10108000D8F4811564E5960708F0C8C0482F469546 +:10109000469570E2479FA00111248370992721E0B3 +:1010A00030E0B90102C0660F771F8A95E2F7CB01E5 +:1010B000842B952B9A680895811576E5970708F497 +:1010C000B2C09C0130562115304108F0B2C09F706B +:1010D000AEC0FC01EE0FFF1FE654F04062C0853A3F +:1010E000910509F4A9C0863A910509F0A8C082E8E3 +:1010F00090E40895883A910509F4A4C0893A9105CD +:1011000009F4A3C08A3A910509F4A2C08B3A91056B +:1011100009F4A1C08C3A910509F4A0C08D3A91055B +:1011200009F49FC0803B910509F49EC08E3A910559 +:1011300009F49DC08F3A910509F49CC0813B91054B +:1011400009F49BC0823B910509F49AC0833B910549 +:1011500009F499C0843B910509F498C0853B910539 +:1011600009F497C0863B910509F496C0873B910529 +:1011700009F495C0883B910509F494C0893B910519 +:1011800009F493C08A3B910509F492C080E094E48D +:10119000089590650895FC01FF70EE0FFF1FE65C57 +:1011A000FE4F8591949108959927906C0895482F4A +:1011B000437021E030E002C0220F331F4A95E2F76E +:1011C0003C68AC0164E0569547956A95E1F7437039 +:1011D000342B8F708695869560E2869FC00111241E +:1011E000822B932B0895982F8827816F906A0895FA +:1011F000482F4695469570E2479FA00111248370C1 +:10120000992721E030E0B90102C0660F771F8A9567 +:10121000E2F7CB01842B952B9C680895982F8827A3 +:10122000846F906A08958F719927982F882790620C +:10123000089580E090E0089581E890E4089583E8BF +:1012400090E4089582EE94E4089589EE94E408957C +:101250008AEE94E4089585EB94E4089586EB94E493 +:10126000089587EB94E408958CEC94E408958DEC54 +:1012700094E4089583E895E408958AE895E4089550 +:1012800082E995E4089584E995E4089581E296E47D +:10129000089583E296E4089584E296E4089585E251 +:1012A00096E4089586E296E4089587E296E4089528 +:1012B0008AE296E40895089596E0799FF00111245A +:1012C00094E5899FE00DF11D1124E60FF11DEE0F4D +:1012D000FF1FEE5BFE4F8591949108958238910532 +:1012E00049F1B0F48133910509F458C048F48932CA +:1012F000910509F44EC08A32910509F454C008954D +:101300008533910509F440C08933910599F008951A +:10131000833E910529F138F4803E910591F0823E9B +:101320009105A1F00895863E9105F9F0873E91055B +:1013300031F108952091F40120FD3AC021FD38C01B +:1013400008958091F40180FD35C032C08091F40190 +:1013500082FF32C08091F40184FD30C083EE39C039 +:101360008091F40182FD28C0F5CF8091F40183FFC4 +:1013700027C08091F40184FD21C087EE2AC08091AE +:10138000F40183FD1DC0F5CF8091F40185FD1AC0E5 +:101390001BC08091F40185FD17C014C08091F40139 +:1013A00086FD14C015C08091F40186FD11C00EC0E9 +:1013B00080EE0FC089E30DC082EE0BC080E009C053 +:1013C00086EE07C089E205C085E303C08AE201C05A +:1013D00081E390E0089508950C94EB0980917001E9 +:1013E0000895CF93DF9300D01F92CDB7DEB79C0155 +:1013F0008091FA01843019F593E099833B832A8325 +:101400009093E9008FEF9091E800815095FD06C020 +:1014100095ED9A95F1F700008111F5CF8091E800E4 +:1014200085FF0DC040E050E063E070E0CE01019622 +:101430000E94570C8091E8008E778093E8000F900F +:101440000F900F90DF91CF910895CF93DF9300D04D +:101450001F92CDB7DEB72091FA01243021F522E0AA +:1014600029839B838A8383E08093E9008FEF9091A7 +:10147000E800815095FD06C095ED9A95F1F70000C2 +:101480008111F5CF8091E80085FF0DC040E050E06C +:1014900063E070E0CE0101960E94570C8091E80055 +:1014A0008E778093E8000F900F900F90DF91CF918F +:1014B00008952091FA012430F1F422E02093E9000C +:1014C0002FEF3091E800215035FD06C035ED3A95FB +:1014D000F1F700002111F5CF2091E80025FF0BC0A6 +:1014E00040E050E065E070E00E94570C8091E80019 +:1014F0008E778093E8000895CF93DF93EC0190916D +:10150000FA01943009F046C080910C018823D9F08B +:1015100080910D018823B9F09093E9008FEF9091AD +:10152000E800815095FD06C095E19A95F1F700001D +:101530008111F5CF8091E80085FF2CC040E050E09C +:1015400060E170E017C081E08093E9008FEF909137 +:10155000E800815095FD06C095ED9A95F1F70000E1 +:101560008111F5CF8091E80085FF14C040E050E084 +:1015700068E070E0CE010E94570C8091E8008E7701 +:101580008093E80080E1FE01A0E6B1E001900D92B9 +:101590008A95E1F7DF91CF9108958091F90181114A +:1015A00009C00E94EC0D0E94490E8091E200846007 +:1015B0008093E20008951092F901089508950C9423 +:1015C00090220E94401D0E9496220E94EF100C94CF +:1015D000EC0942E061EC81E00E94660D42E061ECC2 +:1015E00082E00E94660D42E061EC83E00E94660D9D +:1015F00042E161EC84E00C94660D8091FC01833043 +:1016000009F455C030F4813071F0823009F48EC095 +:1016100008958A3009F47AC08B3009F460C08930AB +:1016200009F09CC020C08091FB01813A09F096C06E +:101630008091E800877F8093E8008091FF0190917E +:101640000002892B21F460E180E691E003C060E0B4 +:1016500080E090E070E00E94A20C8091E8008B771F +:101660008093E80008958091FB01813209F076C0F3 +:101670008091FF0190910002009719F0039709F003 +:101680006DC08091E800877F8093E8008091E8003A +:1016900082FD05C08091FA018111F8CF5FC0809171 +:1016A000F100809370018091E8008B7753C08091A6 +:1016B000FB01813A09F052C08091FF019091000234 +:1016C000892B09F04BC08091E800877F8093E80068 +:1016D0008091E80080FFFCCF80910C0136C08091A2 +:1016E000FB018132D9F58091FF0190910002892B95 +:1016F000A9F58091E800877F8093E8000E949B0D08 +:101700008091FD0180930C010C94B8158091FB0130 +:10171000813221F58091E800877F8093E8000E9464 +:101720009B0D8091FE018093710108958091FB01D2 +:10173000813AA1F48091E800877F8093E80080914E +:10174000E80080FFFCCF809171018093F1008091CF +:10175000E8008E778093E8000C949B0D089584B781 +:10176000877F84BF88E10FB6F89480936000109261 +:1017700060000FBE80E880936100109261000E94BB +:101780003E110E94EC0D0E94490E8091E20084609F +:101790008093E20078940E94CF100E94401182E072 +:1017A00091E00E94EA100E947E228091FA01853029 +:1017B00069F40E94081D8091F8018823B1F30E940A +:1017C000321D882391F30E94410CEFCF0E944611F5 +:1017D000ECCF292F332723303105C9F064F42130B1 +:1017E000310581F02230310509F043C08DE690E0EB +:1017F0002EE633E042C021323105F1F022323105CC +:1018000041F137C082E190E02BED33E036C09927FB +:101810008130910541F08230910541F0892B49F5E5 +:10182000EAE6F3E005C0E2E5F3E002C0EAE3F3E054 +:10183000849190E09F0121C06430D8F4E62FF0E05D +:10184000EE0FFF1FEE5DFE4F2081318189E090E0B9 +:1018500014C0643070F470E0FB01EE0FFF1FE65E11 +:10186000FE4F20813181FB01EA5EFE4F808190E0D6 +:1018700004C080E090E020E030E0FA013183208372 +:10188000089580E189BD82E189BD09B400FEFDCFE4 +:101890008091D8008F7D8093D8008091E000826095 +:1018A0008093E0008091E00081FDFCCF0895CF920D +:1018B000DF92EF92FF920F931F93CF93DF93EC0190 +:1018C0008B016A010E94BA0D811133C0C114D10489 +:1018D00039F0F60180819181081B190BC80FD91FBF +:1018E000E12CF12C0115110519F18091E80085FD1D +:1018F00016C08091E8008E778093E800C114D1046F +:1019000049F0F60180819181E80EF91EF182E082B2 +:1019100085E00FC00E94BA0D882321F30AC0899187 +:101920008093F10001501109FFEFEF1AFF0ADACF9F +:1019300080E0DF91CF911F910F91FF90EF90DF90AA +:10194000CF900895209101023091020226173707A7 +:1019500048F06115710539F42091E8002E77209345 +:10196000E80001C0B90140E061157105A9F12091BD +:10197000FA01222309F443C0253009F442C0209122 +:10198000E80023FD40C02091E80022FD32C02091F4 +:10199000E80020FFE9CF4091F3002091F20030E011 +:1019A000342BFC01CF016115710559F02830310548 +:1019B00040F481918093F100615071092F5F3F4F96 +:1019C000F1CF41E02830310509F040E02091E800F6 +:1019D0002E772093E800C8CF4111C9CF0AC080916B +:1019E000FA01882361F0853061F08091E80083FD81 +:1019F0000AC08091E80082FFF2CF80E0089582E083 +:101A0000089583E0089581E00895209101023091C6 +:101A100002022617370748F06115710539F4209145 +:101A2000E8002E772093E80001C0B901FC0120E016 +:101A30006115710591F18091FA01882309F440C084 +:101A4000853009F43FC08091E80083FD3DC080915E +:101A5000E80082FD2FC08091E80080FFE9CF20914F +:101A6000F3008091F20090E0922B6115710559F01E +:101A70008830910540F424912093F1003196615013 +:101A800071090196F2CF21E0089709F020E08091DA +:101A9000E8008E778093E800CBCF2111CCCF0AC02D +:101AA0008091FA01882361F0853061F08091E8002F +:101AB00083FD0AC08091E80082FFF2CF80E00895A4 +:101AC00082E0089583E0089581E00895982F97308B +:101AD00058F59093E900981739F07091EC00209137 +:101AE000ED005091F00003C0242F762F50E021FF2D +:101AF00019C03091EB003E7F3093EB003091ED0048 +:101B00003D7F3093ED003091EB0031603093EB007E +:101B10007093EC002093ED005093F0002091EE00C4 +:101B200027FF07C09F5FD3CF8F708093E90081E0CC +:101B3000089580E008958091FB0187FF11C0809196 +:101B4000E80082FD05C08091FA018111F8CF11C033 +:101B50008091E8008B770BC08091FA01882349F0CF +:101B60008091E80080FFF8CF8091E8008E77809325 +:101B7000E80008952091E4003091E50095E6409159 +:101B8000EC00842F817040FF22C08091E80080FD2E +:101B90001CC08091FA01882391F0853091F08091EA +:101BA000EB0085FD10C04091E4005091E500421724 +:101BB000530729F39A01915011F784E0089582E0C8 +:101BC000089583E0089581E0089580E008954091AC +:101BD000E80042FFDECF08950E945A0E0E94620E76 +:101BE000E0EEF0E0808181608083E8EDF0E08081CC +:101BF0008F77808319BCA7EDB0E08C918E7F8C939A +:101C000080818F7E80831092F90108950F931F9336 +:101C1000CF93DF930E945A0E0E94620EC8EDD0E06F +:101C200088818F77888388818068888388818F7D89 +:101C3000888319BC1092FA011092F6011092F801F3 +:101C40001092F70100EE10E0F80180818B7F808315 +:101C500088818160888342E060E080E00E94660DB8 +:101C6000E1EEF0E080818E7F8083E2EEF0E0808123 +:101C700081608083808188608083F80180818E7F8D +:101C80008083888180618883DF91CF911F910F913C +:101C90000895E8EDF0E080818F7E8083E7EDF0E04D +:101CA00080818160808384E082BF81E08093F9013C +:101CB0000C94060EE8EDF0E080818E7F8083109218 +:101CC000E20008951092DA001092E10008951F9248 +:101CD0000F920FB60F9211242F933F934F935F9360 +:101CE0006F937F938F939F93AF93BF93EF93FF93E4 +:101CF0008091E10082FF0BC08091E20082FF07C06B +:101D00008091E1008B7F8093E1000E94CE10809152 +:101D1000DA0080FF1FC08091D80080FF1BC0809137 +:101D2000DA008E7F8093DA008091D90080FF0DC0A9 +:101D300080E189BD82E189BD09B400FEFDCF81E06B +:101D40008093FA010E94CD0A05C019BC1092FA01D5 +:101D50000E94DB0A8091E10080FF19C08091E200BF +:101D600080FF15C08091E2008E7F8093E200809119 +:101D7000E20080618093E2008091D80080628093CD +:101D8000D80019BC85E08093FA010E94DF0A809197 +:101D9000E10084FF30C08091E20084FF2CC080E12C +:101DA00089BD82E189BD09B400FEFDCF8091D800D4 +:101DB0008F7D8093D8008091E1008F7E8093E10039 +:101DC0008091E2008F7E8093E2008091E20081604A +:101DD0008093E2008091F601882311F084E007C02F +:101DE0008091E30087FD02C081E001C083E0809321 +:101DF000FA010E94E10A8091E10083FF29C08091ED +:101E0000E20083FF25C08091E100877F8093E1009D +:101E100082E08093FA011092F6018091E1008E7FBA +:101E20008093E1008091E2008E7F8093E2008091B8 +:101E3000E20080618093E20042E060E080E00E9486 +:101E4000660D8091F00088608093F0000E94DE0AA9 +:101E5000FF91EF91BF91AF919F918F917F916F9182 +:101E60005F914F913F912F910F900FBE0F901F9058 +:101E700018951F920F920FB60F9211242F933F9334 +:101E80004F935F936F937F938F939F93AF93BF9382 +:101E9000CF93DF93EF93FF93C091E900CF708091D0 +:101EA000EC00D82FD17080FDD0E81092E90080912D +:101EB000F000877F8093F00078940E947D0F10924D +:101EC000E9008091F00088608093F000CD2BCF7006 +:101ED000C093E900FF91EF91DF91CF91BF91AF9156 +:101EE0009F918F917F916F915F914F913F912F9132 +:101EF0000F900FBE0F901F9018951F93CF93DF93F5 +:101F0000CDB7DEB7AA970FB6F894DEBF0FBECDBF30 +:101F1000EBEFF1E088E08E0F9091F10091938E133A +:101F2000FBCF0E94FD0A8091E80083FF1FC18091D2 +:101F3000FB019091FC01492F50E04A30510508F017 +:101F400015C1FA01EA5AFF4F0C941824803881F029 +:101F5000823809F00BC18091FF018F708093E900F6 +:101F60008091EB0085FB882780F91092E90006C07C +:101F70008091F7019091F801911182609091E800B1 +:101F8000977F9093E8008093F1001092F100C8C011 +:101F9000282F2D7F09F0EAC0882319F0823061F0E4 +:101FA000E5C08091FD01813009F0E0C0933009F077 +:101FB00080E08093F8012BC08091FD01811127C042 +:101FC0008091FF018F7009F4D1C08093E9002091C6 +:101FD000EB0020FF1CC0933021F48091EB00806265 +:101FE00014C09091EB0090619093EB0021E030E001 +:101FF000A90102C0440F551F8A95E2F74093EA00F9 +:102000001092EA008091EB0088608093EB001092C0 +:10201000E9008091E800877F86C08111A7C01091F8 +:10202000FD011F778091E3008078812B8093E3008E +:102030008091E800877F8093E8000E949B0D80914B +:10204000E80080FFFCCF8091E30080688093E3008C +:10205000111102C082E001C083E08093FA0186C0C2 +:102060008058823008F082C08091FD019091FE017D +:102070008C3D53E0950779F583E08A838AE2898372 +:102080004FB7F894DE01139620E03EE051E2E32FD3 +:10209000F0E050935700E49120FF03C0E295EF7009 +:1020A0003F5FEF708E2F90E0EA3010F0C79601C0CE +:1020B000C0968D939D932F5F243149F74FBF809138 +:1020C000E800877F8093E8006AE270E0CE01019625 +:1020D0000E94A20C14C0AE014F5F5F4F6091FF01E0 +:1020E0000E94E90BBC01009709F440C09091E80000 +:1020F000977F9093E80089819A810E94050D8091D5 +:10210000E8008B778093E80031C0803879F58091C2 +:10211000E800877F8093E8008091F6018093F100CA +:102120008091E8008E778093E8000E949B0D1EC08E +:1021300081111CC09091FD019230C0F48091E800A3 +:10214000877F8093E8009093F6010E949B0D809119 +:10215000F601811106C08091E30087FD02C081E095 +:1021600001C084E08093FA010E94E90A8091E800AE +:1021700083FF0AC08091E800877F8093E800809108 +:10218000EB0080628093EB00AA960FB6F894DEBF56 +:102190000FBECDBFDF91CF911F9108950895CF93CA +:1021A0008091FA018823A1F0C091E900CF7090914D +:1021B000EC00892F817090FD80E8C82B1092E90017 +:1021C0008091E80083FD0E947D0FCF70C093E900ED +:1021D000CF91089590937701809376010895E091CF +:1021E0007601F0917701309721F00190F081E02D98 +:1021F000099480E00895E0917601F091770130979D +:1022000021F00280F381E02D09940895E091760198 +:10221000F0917701309721F00480F581E02D099449 +:10222000089520917401309175018217930771F020 +:102230009093750180937401E0917601F09177019C +:10224000309721F00680F781E02D099408952091C0 +:102250007201309173018217930771F090937301AB +:1022600080937201E0917601F0917701309721F02F +:102270000084F185E02D0994089508950C943D1192 +:102280000E94461D0E9455030C94CC1D9F92AF9254 +:10229000BF92CF92DF92EF92FF920F931F93CF9353 +:1022A000DF9300D000D000D0CDB7DEB70E947C0312 +:1022B0000DE010E0AA24A394B12C902E802F0E9450 +:1022C0006A04980127583E4F6901F901F080F82609 +:1022D000A1F40150110988F78FEF89838A831B824B +:1022E0000E944F1D8160782F9D838C8349815A8184 +:1022F0006B818D810E94DD112FC09091E10191FFD2 +:1023000004C08E830E9470048E8125E030E0A50118 +:10231000022E01C0440F0A94EAF7E42E4F21C1F0C7 +:1023200029839A828E2191E009F490E09B830E9498 +:102330004F1D8160782F9D838C8349815A816B81E9 +:102340008D810E94DD11F6018081E826E08204C0C3 +:1023500021503109E0F6BDCF0E949A1F10917801FB +:102360000E94EF101817B9F00E94EF1080937801C7 +:1023700026960FB6F894DEBF0FBECDBFDF91CF918A +:102380001F910F91FF90EF90DF90CF90BF90AF9093 +:102390009F900C94EC0926960FB6F894DEBF0FBE02 +:1023A000CDBFDF91CF911F910F91FF90EF90DF9004 +:1023B000CF90BF90AF909F900895CF93DF93CDB70C +:1023C000DEB72B970FB6F894DEBF0FBECDBF4F839D +:1023D000588769877A878B87DE01119686E0FD0131 +:1023E00011928A95E9F785E0FE01379601900D92EA +:1023F0008A95E1F749815A816B817C818D819E812B +:102400000E9456182B960FB6F894DEBF0FBECDBFB4 +:10241000DF91CF910895CF93882309F4C2C0C82FCC +:10242000823859F40E94EF1081FDBBC089E30E94FD +:10243000991B0E94761C89E30CC0833879F40E94B2 +:10244000EF1080FDAEC083E50E94991B0E94761CB0 +:1024500083E50E94DB1BCF910C94761C843859F4E1 +:102460000E94EF1082FD9DC087E40E94991B0E948C +:10247000761C87E4EECF8CEF8C0F813A48F48C2FDA +:102480000E94E42181118DC08C2F0E94991BE3CF03 +:1024900080E28C0F883048F4C77081E001C0880F5B +:1024A000CA95EAF70E94221CD6CF8BE58C0F8330A9 +:1024B00078F4C53A29F0C63A31F083E890E005C0D7 +:1024C00081E890E002C082E890E0CF910C94111175 +:1024D00088E58C0F833108F064C0C83A39F1C93AF5 +:1024E00041F1CA3A49F1CB3A51F1CC3A59F1CD3ADE +:1024F00061F1C03B69F1CE3A71F1CF3A79F1C13B5C +:1025000081F1C23B89F1C33B91F1C43B99F1C53BD9 +:10251000A1F1C63BA9F1C73BB1F1C83BB9F1C93B39 +:10252000C1F1CA3BC9F180E090E038C082EE90E092 +:1025300035C089EE90E032C08AEE90E02FC085EB86 +:1025400090E02CC086EB90E029C087EB90E026C09D +:102550008CEC90E023C08DEC90E020C083E891E00B +:102560001DC08AE891E01AC082E991E017C084E9B1 +:1025700091E014C081E292E011C083E292E00EC0CB +:1025800084E292E00BC085E292E008C086E292E02D +:1025900005C087E292E002C08AE292E0CF910C94FB +:1025A0002711CF910895882309F44BC0823859F43C +:1025B0000E94EF1081FF45C089E30E94991B0E9491 +:1025C000761C89E30CC0833871F40E94EF1080FF01 +:1025D00038C083E50E94991B0E94761C83E50E9407 +:1025E000DB1B0C94761C843859F40E94EF1082FF98 +:1025F00028C087E40E94991B0E94761C87E4EFCFD5 +:102600009CEF980F913A58F390E2980F983050F45D +:10261000877091E001C0990F8A95EAF7892F0E948F +:10262000281CDFCF9BE5980F933020F480E090E0EA +:102630000C941111885A833120F480E090E00C94BE +:1026400027110895882321F00E94221C0C94761CE7 +:102650000895882321F00E94281C0C94761C08956C +:102660008F929F92AF92BF92DF92EF92FF920F9361 +:102670001F93CF93DF937C01D62FC72FFC010281DC +:10268000158112951F700E94351B882319F082E076 +:102690000E94771B01110E943F1C0E94921B8823FD +:1026A00079F0002369F080E28D0F883048F082E0F5 +:1026B0000E94771B0E94921B91E0D82ED92601C060 +:1026C000D12CEC2FE295EF70F0E0E05AFF4F0C9424 +:1026D00018248C2F807FCF70882311F0C295C07F83 +:1026E000002389F0CC2309F4C4C180E28D0F883027 +:1026F00020F48C2F0E94221C03C08C2F0E94321CBD +:102700000E94761CB6C18D2F0E94D312CC2309F4EF +:10271000CAC1D05E8C2FD83018F40E94281C02C089 +:102720000E94381C0E94761CBEC18C2F807FCF7007 +:10273000803211F0C295C07FDD2319F0D13029F12C +:102740002DC0002381F0112369F1113021F48C2F69 +:102750000E94521CA8C1123029F50E945B1C8C2FCC +:102760000E94021B1FC0112369F0113041F40E9426 +:102770001F1C8C2309F497C10E94051B03C0123053 +:1027800009F491C10E945B1C11C0002321F012309A +:1027900008F089C107C0111186C108C0002321F0CB +:1027A000111167C18C2FF1C011116AC18C2FF3C0B8 +:1027B0008C2F86958695837090E0009719F001978D +:1027C00061F071C1002321F08D2F9C2F937002C006 +:1027D00080E090E00E94111166C1002321F08D2F4E +:1027E0009C2F937002C080E090E00E9427115BC193 +:1027F0008D2F002319F00E94A21E02C00E940A1F02 +:102800000E948F1F50C18C2F837009F050C001119E +:102810004AC18D2F829586958770880F880F9D2FCE +:102820009F70892E912CA12CB12C082E04C0880CED +:10283000991CAA1CBB1C0A94D2F7D4FF14C00FE049 +:1028400010E020E030E0B901A80104C0440F551F9A +:10285000661F771F8A95D2F7CB01BA0160957095F4 +:102860008095909503C060E070E0CB01C695C69559 +:10287000C370D0E0C230D10561F0C330D10581F022 +:10288000682979298A299B29219771F00E949E192C +:102890000AC1682979298A299B290E94BA1903C18A +:1028A0000E949E19C501B4010E948219FCC0002338 +:1028B00019F08C2F817001C08695882309F4F3C02C +:1028C0008D2F829586958770880F880F9D2F9F701A +:1028D000892E912CA12CB12C082E04C0880C991C97 +:1028E000AA1CBB1C0A94D2F7D4FF14C00FE010E05E +:1028F00020E030E0B901A80104C0440F551F661F55 +:10290000771F8A95D2F7CB01BA01609570958095B3 +:10291000909503C060E070E0CB01C695C695C3708A +:102920004C2F50E04230510569F04330510589F099 +:10293000682979298A299B294130510571F00E9423 +:10294000781AB1C0682979298A299B290E94941A8A +:10295000AAC00E94781AC501B4010E945C1AA3C0E3 +:102960008D2F90E0FC01E05EF109E531F10508F002 +:102970007BC0E059FF4F0C941824DF708C2F8F71AF +:10298000002331F00E94F5198D2F0E9422138BC075 +:102990000E94161A8D2F0E94291385C0002339F03A +:1029A000111181C08C2F8F710E943B1A7CC0123094 +:1029B00008F079C0F7CF002339F08C2F8F710E9477 +:1029C000F51971C00023C9F38C2F8F710E94161A5C +:1029D0006AC0002329F08C2F8F710E94E01963C018 +:1029E0000E94D61960C00023B9F00E94FF1A0E940D +:1029F000281C0E94311B843029F40E94701B8C2FEC +:102A00008F7162C0123008F06CC0CF718C2F0E94A1 +:102A1000F51963E08C2F0DC00E94FF1A0E94221C42 +:102A20001230A0F00E94701B0E94051B64E08C2FE6 +:102A30008F71DF91CF911F910F91FF90EF90DF90F9 +:102A4000BF90AF909F908F900C94601B81E0DF91BE +:102A5000CF911F910F91FF90EF90DF90BF90AF90BB +:102A60009F908F900C94771B002339F0112309F469 +:102A7000A4CF8D2F0E940B1216C0112309F4A4CFEE +:102A80008D2F0E94D3120FC04C2F4F706D2FC70196 +:102A90000E9446050E94FA1806C04C2F4F706D2FF9 +:102AA000C7010E945B09DD20E1F00E94311B80FD1F +:102AB00018C0F70112820E942B1B0E94F519C70152 +:102AC0000E947D150E942B1BDF91CF911F910F91CA +:102AD000FF90EF90DF90BF90AF909F908F900C94FD +:102AE000161ADF91CF911F910F91FF90EF90DF9019 +:102AF000BF90AF909F908F9008950F931F93CF93A7 +:102B0000DF93EC01888199812B813C81232BB9F0E3 +:102B10009F3F11F48F3F99F0CE010E94EC0588236E +:102B200071F0688179818A810E94FB1A8C010E9470 +:102B3000B01A0E947719B801CE010E943013DF91BC +:102B4000CF911F910F9108950E943F1C0E944F1C2E +:102B50000E94111C0E94761C0E9440200E948F1F20 +:102B600080E090E00E94111180E090E00C94271129 +:102B70000E942F1C0C94A4150E94F01A292F229554 +:102B80002F7030E02C3031054CF42A3031056CF4D4 +:102B90002250310922303105A8F407C02C3031050C +:102BA00069F02F30310551F00DC0803F69F018F405 +:102BB000803E40F409C0843F29F406C093FB882777 +:102BC00080F9089580E0089581E00895CF93DF9320 +:102BD00000D000D01F92CDB7DEB70F900F900F90AE +:102BE0000F900F90DF91CF910895CF93DF9300D096 +:102BF00000D000D0CDB7DEB726960FB6F894DEBF72 +:102C00000FBECDBFDF91CF9108951F93CF93DF9378 +:102C1000C091870116E080918801C81799F0D0E033 +:102C20001C9FF0011D9FF00D1124E757FE4F4081BE +:102C3000518162817381848195810E94F51521966D +:102C4000C770E9CFDF91CF911F9108954091B901ED +:102C50005091BA016091BB017091BC018091BD019E +:102C60009091BE010C94F5158091BE0182958F70F4 +:102C700009F054C08091BB01882309F44FC08091B2 +:102C80008701A09188016091B9017091BA014091CA +:102C9000BC015091BD01B6E08A1709F43FC090E035 +:102CA00041155105C1F17F3F11F46F3FA1F1B89F6C +:102CB000F001B99FF00D1124E757FE4F21817213E7 +:102CC0002AC02081621327C02281211124C02381C0 +:102CD00034812417350710F421503109241B350B9A +:102CE000283C3105C0F42091BE012F702061209353 +:102CF000BE0126E0289FF001299FF00D1124E25724 +:102D0000FE4F80818F708061808389EB91E00E940B +:102D10007D150C94051601968770BECF0895CF924D +:102D2000DF92EF92FF920F931F93CF93DF93CDB774 +:102D3000DEB762970FB6F894DEBF0FBECDBF8C0131 +:102D400085E0F801DE011D9601900D928A95E1F76C +:102D5000D8014C9111965C91119712966C91129733 +:102D60001396CD90DC9014973091B9017091BA010F +:102D70008091BC019091BD01009709F46BC17F3F28 +:102D800019F43F3F09F466C1E090BB01EE2009F45D +:102D9000C0C02091BE01C816D90628F0F601E81B74 +:102DA000F90BCF0104C0809590958C0D9D1DFF24DB +:102DB000F394883C910578F0F12C207F09F0C6C08F +:102DC0007C2DD98AC88A89890E94E61589EB91E011 +:102DD0000E947D15B1C0822F807F09F046C0751317 +:102DE00014C0341312C0611110C02F7020612093E1 +:102DF000BE010E94261689EB91E00E947D1580910C +:102E0000BE01D80115968C932EC0CD2819F15F3FD5 +:102E100011F44F3FF9F0F62E61111CC0809187012B +:102E20002091880136E0821709F45AC090E0389F5B +:102E3000F001399FF00D1124E757FE4F71815713B0 +:102E400006C07081471303C07281711103C00196DF +:102E50008770E9CFF62E662309F418C18091BE0170 +:102E600081608093BE01F12C11C1751308C0341329 +:102E700006C0611104C08091BE01D801C3C04D8756 +:102E80005E878D859E856A8B0E94BC156A89882322 +:102E9000E1F16623D1F12091BE01822F82958F70DE +:102EA00090E0029774F08091B9019091BA019887EF +:102EB0008F831986DB86CA862C87CE0107960E94EF +:102EC0007D1586E0F801A9EBB1E001900D928A959D +:102ED000E1F70E9434160E942616FF24F394D6C010 +:102EE0004D875E878D859E850E94F01A292F229539 +:102EF0002F7030E0223031050CF0BCC09F7009F01B +:102F0000B6C0805E883008F4C1C0C8010E947D153B +:102F1000E4CFC816D90608F453C0F601E81BF90B34 +:102F2000CF01883C910508F450C0F12C7C2DD98A42 +:102F3000C88A89890E94E615E9EBF1E086E0DF01A5 +:102F40001D928A95E9F70E942616A0C0751314C039 +:102F5000341312C0611110C08091BE01F801858345 +:102F6000C8010E947D1586E0E9EBF1E0DF011D92CA +:102F70008A95E9F7FE2C8AC04D875E878D859E85F0 +:102F80006A8B0E94BC156A89882309F4BECF662328 +:102F900009F4BBCF2091BE01822F82958F7090E003 +:102FA00002970CF48ECF8091B9019091BA019A8367 +:102FB00089831B82DD82CC822E83CE0101967FCF56 +:102FC000809590958C0D9D1DACCFF62E662309F44F +:102FD0009CCF75132EC034132CC02091BE0120FD50 +:102FE0001FC0822F82958F70D9F0D80115962C932F +:102FF00015978F3049F08F5F982F9295907F822F91 +:103000008F70892B15968C93C8010E947D1586E0E0 +:10301000F801A9EBB1E001900D928A95E1F793CF09 +:1030200086E0F801A9EBB1E001900D928A95E1F7F5 +:103030002DC04D875E878D859E850E94BC158111B0 +:1030400040CF8091BE0181608093BE01C8010E9483 +:103050007D151CC0662309F458CF4D875E878D858A +:103060009E850E94BC15882309F44FCF2ACF811179 +:1030700048CF0CC0243031050CF047CF9F7009F4C5 +:1030800040CFF8019581907F09F03BCF8F2D62965C +:103090000FB6F894DEBF0FBECDBFDF91CF911F9169 +:1030A0000F91FF90EF90DF90CF9008951F93CF93F3 +:1030B000DF93CDB7DEB72C970FB6F894DEBF0FBE07 +:1030C000CDBF4F83588769877A878B879C87CE01CE +:1030D00007960E948F16882369F08F8198852A852C +:1030E0003B85232BF1F19F3F09F063C08F3F09F02F +:1030F00060C037C086E0FE013796DE011196019070 +:103100000D928A95E1F76F817885EA85FB85309786 +:1031100041F17F3F11F46F3F21F12091880130E0B0 +:10312000C9010196877099274091870150E0841763 +:10313000950709F447C069837A83FD83EC8396E0A1 +:10314000929FD001939FB00D1124A757BE4FFE014F +:10315000319601900D929A95E1F7809388010E9433 +:10316000051616E080918701909188018917C1F1B9 +:10317000189FC001112487579E4F0E948F168823E5 +:1031800079F1E09187011E9FF0011124E757FE4F6E +:103190004081518162817381848195810E94F515FE +:1031A0008091870190E0019687709927809387012D +:1031B000D9CF4F81588569857A858B859C850E94FA +:1031C000F515CFCF0E94B815109288011092870193 +:1031D000E9EBF1E086E0DF011D928A95E9F7C1CFC6 +:1031E0002C960FB6F894DEBF0FBECDBFDF91CF9106 +:1031F0001F910895EF92FF920F931F93CF93DF9348 +:103200008C01009709F46CC0F12CEE24E394E801E2 +:103210002196F8018491843740F4843008F051C03D +:10322000813081F0823019F15BC0853709F444C0E8 +:10323000A8F19CE7980F903708F052C08F770E9452 +:10324000D31241C00E5F1F4FFE01C49180E28C0F6C +:10325000883048F4C7708E2D01C0880FCA95EAF7F0 +:103260000E94421C14C08C2F0E940B122DC00E5FB6 +:103270001F4FFE01C49180E28C0F883058F4C77054 +:103280008E2D01C0880FCA95EAF70E94481C0E9443 +:10329000761C1AC08C2F0E94D31216C00E5F1F4FCF +:1032A000FE01C491CC2381F08FE99FE00197F1F7F3 +:1032B00000C00000C150F6CF0E5F1F4FFE01F4901A +:1032C00003C00E940B128E018F2D882309F49FCF1B +:1032D000EFE9FFE03197F1F700C000008150F5CF32 +:1032E000DF91CF911F910F91FF90EF900895089576 +:1032F0006093C3017093C4018093C5019093C6018C +:103300000C94A4150F931F930091C3011091C40155 +:103310002091C5013091C601DC01CB01802B912B9E +:10332000A22BB32B8093C3019093C401A093C5013A +:10333000B093C6011F910F910C94A4150F931F9386 +:103340000091C3011091C4012091C5013091C601C3 +:10335000DC01CB0180239123A223B3238093C301FB +:103360009093C401A093C501B093C6011F910F9122 +:103370000C94A4150F931F930091C3011091C401E5 +:103380002091C5013091C601DC01CB018027912736 +:10339000A227B3278093C3019093C401A093C501D2 +:1033A000B093C6011F910F910C94A4151092BF0108 +:1033B0001092C0011092C1011092C2010C94A41588 +:1033C00041E050E060E070E004C0440F551F661F0C +:1033D000771F8A95D2F74093BF015093C001609345 +:1033E000C1017093C2010C94A41541E050E060E06B +:1033F00070E004C0440F551F661F771F8A95D2F7EF +:103400008091BF019091C001A091C101B091C20112 +:10341000482B592B6A2B7B2B4093BF015093C00143 +:103420006093C1017093C2010C94A41541E050E077 +:1034300060E070E004C0440F551F661F771F8A9537 +:10344000D2F740955095609570958091BF0190910D +:10345000C001A091C101B091C201482359236A2340 +:103460007B234093BF015093C0016093C1017093CF +:10347000C2010C94A41541E050E060E070E004C08B +:10348000440F551F661F771F8A95D2F78091BF01A1 +:103490009091C001A091C101B091C2014827592764 +:1034A0006A277B274093BF015093C0016093C101FD +:1034B0007093C2010C94A4150F931F930091BF0148 +:1034C0001091C0012091C1013091C201DC01CB01FA +:1034D000802B912BA22BB32B8093BF019093C00123 +:1034E000A093C101B093C2011F910F910C94A41538 +:1034F0000F931F930091BF011091C0012091C10152 +:103500003091C201DC01CB0180239123A223B3239C +:103510008093BF019093C001A093C101B093C201F9 +:103520001F910F910C94A4150F931F930091BF014D +:103530001091C0012091C1013091C201DC01CB0189 +:1035400080279127A227B3278093BF019093C001C2 +:10355000A093C101B093C2011F910F910C94A415C7 +:103560000895CF92DF92EF92FF920F931F93CF9324 +:10357000DF938C01C090C301D090C401E090C501DD +:10358000F090C6018091BF019091C001A091C1014E +:10359000B091C201C82AD92AEA2AFB2ACFE1D0E099 +:1035A000D701C6010C2E04C0B695A79597958795AF +:1035B0000A94D2F780FF06C0B8018C2F0E94DA0768 +:1035C000019721F4219760F780E001C08C2FDF91F3 +:1035D000CF911F910F91FF90EF90DF90CF900895C2 +:1035E000CF93DF93EC010E94B11ABE010E94DA076B +:1035F000DF91CF910895CB010E94F01A0895809138 +:10360000CC0108958093CC0108951092CC010895C7 +:103610000E944F1D2091CA013091CB018217930760 +:1036200050F00E944F1D2091CA013091CB01821BA6 +:10363000930B9C010AC00E944F1D2091CA0130913A +:10364000CB0120953095280F391F81E0283B3B4066 +:1036500008F480E008958091C90185958595859548 +:1036600008958091C901877008950E944F1D20918F +:10367000C7013091C80182179307A8F00E944F1D1F +:103680002091C7013091C801821B930B883B9B405E +:1036900010F480E013C08091C90182FB882780F973 +:1036A00091E089270BC00E944F1D2091C7013091E6 +:1036B000C80120953095820F931FE8CF817008953F +:1036C00098E0899F90011124262B2093C9010E9424 +:1036D000F5190E944F1D9093C8018093C70108956A +:1036E0001092C9011092C8011092C701089520914B +:1036F000C901809582238093C901982F977089F41E +:1037000030E0482F552747FD50952417350749F0DD +:103710008595859585950E94161A1092C80110927C +:10372000C70108959091C901977081E009F480E084 +:10373000089590910C01992321F090910D01911120 +:1037400009C020910E0130910F01F90132969FEFCF +:1037500040E01FC0982F9695969596959F3050F50E +:10376000E0910E01F0910F01E90FF11D877021E04A +:1037700030E0A90102C0440F551F8A95E2F7CA0143 +:103780009181892B818308959F3F39F04F5F4E309F +:1037900041F051915813F8CF0DC05111F7CF942F2C +:1037A000F5CF9F3F39F0F901E90FF11D97FDFA952B +:1037B00082830895089590910C01992321F09091AE +:1037C0000D01911109C020910E0130910F01F901F5 +:1037D0003296205F3F4F1FC0982F969596959695ED +:1037E0009F30F0F4E0910E01F0910F01E90FF11D0F +:1037F000877021E030E0A90102C0440F551F8A956F +:10380000E2F7CA01809591818923818308953196D9 +:10381000E217F30729F090819813F9CF1082F7CFC0 +:10382000089581E090E0E0910E01F0910F01E80F22 +:10383000F91F1082019680319105A9F708958091B2 +:10384000E00108959091E001892B8093E0010895B3 +:1038500080959091E00189238093E0010895109272 +:10386000E00108959091DF01892B8093DF01089595 +:1038700080959091DF0189238093DF010895109254 +:10388000DF0108959091DE01892B8093DE01089578 +:1038900080959091DE0189238093DE010895109236 +:1038A000DE0108958093CD010E944F1D9093CB01BE +:1038B0008093CA0108951092CD011092CB0110920D +:1038C000CA0108958091CD01089580910E019091D3 +:1038D0000F01FC0131969C01205F3F4F80E09191E8 +:1038E00091118F5FE217F307D1F70895E0910E0170 +:1038F000F0910F018091E0018083E0910E01F09141 +:103900000F0190818091DF01892B8083E0910E016E +:10391000F0910F0190818091DE01892B808380914D +:10392000CD01882399F00E94081B81110E945B1C25 +:10393000E0910E01F0910F0190818091CD01892BD2 +:1039400080830E94651C81110E945B1C80910E0186 +:1039500090910F010C94FB1020E0009739F0AC011E +:1039600041505109842395232F5FF7CF822F08956B +:10397000CF92DF92EF92FF926C01EE24FF24C114EC +:10398000D104E104F10421F0C701B60120E101C036 +:1039900020E0C72ED82EE92EFF24C114D104E10463 +:1039A000F10419F0285FC701B6016B017C0154E0F6 +:1039B000F694E794D794C7945A95D1F7C114D104DB +:1039C000E104F10419F02C5FC701B6016B017C0121 +:1039D00042E0F694E794D794C7944A95D1F7C1147E +:1039E000D104E104F10419F02E5FC701B601DC0136 +:1039F000CB01B695A79597958795892B8A2B8B2B0D +:103A000009F02F5F822FFF90EF90DF90CF90089505 +:103A10008091FA01843021F11092E20120E488E1E2 +:103A200090E00FB6F894A895809360000FBE2093A5 +:103A3000600080E00E94EC0983B7817F846083BFCF +:103A400083B7816083BF7894889583B78E7F83BF67 +:103A500088E10FB6F89480936000109260000FBE6A +:103A6000089508950E9469030E947C030E94311DFD +:103A70000E94710491E0811101C090E0892F0895A6 +:103A80000E94B8150E94EF100C94EC0982E084BDEE +:103A900093E095BD9AEF97BD80936E0008952FB780 +:103AA000F8948091E3019091E401A091E501B09137 +:103AB000E6012FBF0895CF92DF92EF92FF920F930E +:103AC0001F932FB7F8944091E3015091E401609166 +:103AD000E5017091E6012FBF6A017B01EE24FF240E +:103AE0008C0120E030E0C016D106E206F30610F4A7 +:103AF000415051099A01281B390BC9011F910F919F +:103B0000FF90EF90DF90CF9008951F920F920FB625 +:103B10000F9211248F939F93AF93BF938091E301F2 +:103B20009091E401A091E501B091E6010196A11DFB +:103B3000B11D8093E3019093E401A093E501B0935C +:103B4000E601BF91AF919F918F910F900FBE0F90A3 +:103B50001F9018950E94EC0DF8942FEF87EA91E6DC +:103B6000215080409040E1F700C0000087E090EBDA +:103B7000DC018093030290930402A0930502B093AA +:103B800006029CE088E10FB6F894A8958093600047 +:103B90000FBE90936000FFCF0E94041E811102C0EF +:103BA0000E94EA1D0E940F1E8093E1010E94171ED1 +:103BB00090E09093F5018093F40187FB882780F9CA +:103BC00080930D010E94131E682F70E080E090E04A +:103BD0000C9478196DEE7EEF80E090E00E94522404 +:103BE00060E082E090E00E94402460E083E090E0AA +:103BF0000E94402460E084E090E00E94402460E065 +:103C000085E090E00C94402480E090E00E943A240B +:103C100021E08D3E9E4F09F020E0822F089582E042 +:103C200090E00C94322483E090E00C94322484E001 +:103C300090E00C943224682F84E090E00C944024AF +:103C40008091E90180FF0BC06091130185E0689FBE +:103C5000B001112475956795759567952BC081FF07 +:103C600009C06091130185E0689FB001112475952A +:103C7000679520C082FF07C06091130185E0689FAF +:103C8000B001112417C09091EA019923D1F06091FD +:103C90001201961788F72091130185E0289F900163 +:103CA0001124929FA001939F500D112470E0CA012E +:103CB0000E9404246038710540F46115710539F0E3 +:103CC00002C065E070E0862F08958FE7089581E0D7 +:103CD00008958091E90180FF08C06091110170E0B2 +:103CE000759567957595679521C081FF06C06091B0 +:103CF000110170E07595679519C082FF04C060914D +:103D0000110170E010C09091EA019923C1F0609117 +:103D100010019617A0F780911101899FC00111240D +:103D200070E00E9404246038710528F46115710563 +:103D300021F0862F08958FE7089581E0089561E0CE +:103D400070E0F4CF803F21F40E94201E819504C0D2 +:103D5000813F29F40E94201E8093ED010895823F47 +:103D600021F40E94201E819504C0833F29F40E9403 +:103D7000201E8093EC010895893F19F40E94691E6A +:103D800005C08A3F31F40E94691E81958093EE013F +:103D900008958B3F21F40E94691E819504C08C3FD9 +:103DA00029F40E94691E8093EF010895843F21F455 +:103DB0008091EB01816017C0853F21F48091EB0178 +:103DC000826011C0863F21F48091EB0184600BC0BA +:103DD000873F21F48091EB01886005C0883F31F472 +:103DE0008091EB0180618093EB0108958D3F21F478 +:103DF0008091E90181600BC08E3F21F48091E9013F +:103E0000826005C08F3F29F48091E901846080932E +:103E1000E9010895803F39F48091ED0187FF6CC07E +:103E20001092ED0169C0813F29F48091ED011816CF +:103E3000BCF362C09091EC01823F29F497FF5CC013 +:103E40001092EC0159C0833F19F41916CCF354C0F9 +:103E5000893F41F48091EE0118160CF04DC010928C +:103E6000EE014AC08A3F29F48091EE0187FF44C0E9 +:103E7000F6CF8B3F39F48091EF0187FF3DC0109260 +:103E8000EF013AC08C3F29F48091EF011816BCF382 +:103E900033C0843F21F48091EB018E7F17C0853FB2 +:103EA00021F48091EB018D7F11C0863F21F4809138 +:103EB000EB018B7F0BC0873F21F48091EB01877F63 +:103EC00005C0883F31F48091EB018F7E8093EB0138 +:103ED00013C08D3F21F48091E9018E7F0BC08E3F8E +:103EE00021F48091E9018D7F05C08F3F29F48091F5 +:103EF000E9018B7F8093E9018091EC0181110EC073 +:103F00008091ED0181110AC08091EE01811106C0FE +:103F10008091EF01811102C01092EA0108958BEEA9 +:103F200091E00E9406110E944F1D9093E80180933A +:103F3000E70108951F93CF93DF938091E70190915C +:103F4000E8010E945B1DAC019091EA01992321F0E8 +:103F50002091140130E006C0209115018AE0289FCD +:103F6000900111244217530708F486C08091EC0198 +:103F7000C091ED01D091EE011091EF01811107C0C8 +:103F8000C11176C0D11174C0111172C075C09F3FAC +:103F900019F09F5F9093EA01181624F40E94201EE6 +:103FA0008093EC018091EC0187FF05C00E94201EE8 +:103FB00081958093EC011C1624F40E94201E8093AE +:103FC000ED018091ED0187FF05C00E94201E8195C3 +:103FD0008093ED016091EC01662339F1C091ED0110 +:103FE000CC2319F1772767FD7095872F972F0E94B3 +:103FF000152323E333E343E35FE30E9479230E9425 +:10400000E2226093EC016C2F772767FD7095872F74 +:10401000972F0E94152323E333E343E35FE30E94DA +:1040200079230E94E2226093ED011D1624F40E9480 +:10403000691E8093EE018091EE0187FF05C00E940A +:10404000691E81958093EE01111624F40E94691E69 +:104050008093EF018091EF0187FF05C00E94691EE8 +:1040600081958093EF01DF91CF911F910C948F1F69 +:104070009F3F09F08ECF96CFDF91CF911F9108958A +:10408000EBEEF1E085E0DF011D928A95E9F71092F1 +:10409000EA011092E9010895833081F128F481301A +:1040A00059F08230D1F00895853009F449C0B8F153 +:1040B000863009F456C0089580911501262F30E00E +:1040C000280F311D2F3F310524F4680F609315012F +:1040D00008958FEF80931501089580911401262F84 +:1040E00030E0280F311D2F3F310524F4680F609315 +:1040F000140108958FEF80931401089580911301A6 +:10410000262F30E0280F311D2F3F310524F4680F92 +:104110006093130108958FEF8093130108958091A8 +:104120001201262F30E0280F311D2F3F310524F4D6 +:10413000680F6093120108958FEF80931201089524 +:1041400080911101262F30E0280F311D2F3F3105BE +:1041500024F4680F6093110108958FEF809311018B +:10416000089580911001262F30E0280F311D2F3F38 +:10417000310524F4680F6093100108958FEF809348 +:1041800010010895833011F128F4813049F0823014 +:1041900091F00895853081F120F18630C1F10895C4 +:1041A00080911501681720F4861B809315010895EE +:1041B00010921501089580911401681720F4861B50 +:1041C00080931401089510921401089580911301B1 +:1041D000681720F4861B8093130108951092130131 +:1041E000089580911201681720F4861B80931201B4 +:1041F000089510921201089580911101681720F41A +:10420000861B8093110108951092110108958091E9 +:104210001001681720F4861B8093100108951092F6 +:10422000100108950F931F938D3109F471C008F0A8 +:1042300045C0803109F485C008F5873009F46FC0A6 +:1042400068F4863009F0ADC08091E101817F8E7FF6 +:104250008093E10181E08093F101A4C08B3009F4E7 +:104260009EC08E3009F09DC08091E10182FB222723 +:1042700020F991E0922790FB82F96CC0863109F415 +:104280008EC060F4813109F08CC00E94B815909105 +:104290000D0181E0892780930D0181C0893109F4E6 +:1042A0007EC08B3109F07DC08091E10181FB222726 +:1042B00020F991E0922790FB81F94CC0853309F4F5 +:1042C00066C048F4873209F462C008F44FC08932EE +:1042D00009F45DC066C0833438F48A3308F044C002 +:1042E000883309F45CC05DC0833409F450C088345D +:1042F00009F057C00E94B8150FEF13ED20E30150ED +:1043000010402040E1F700C000000E94AA1D47C0F5 +:104310000E949C220E94EF100E94EC0940C09091E4 +:10432000E101892F8095817080FB90F929F09660DA +:1043300098609093E10136C0997F977F9093E10157 +:104340002EC08091E10183FB222720F991E0922782 +:1043500090FB83F98093E101992309F18091E101B8 +:1043600081608093E1011BC0895301C08D5141E000 +:1043700050E060E070E08A019B0104C0000F111F53 +:10438000221F331F8A95D2F7C901B80104C061E02A +:1043900070E080E090E00E9478190E94B81581E0FA +:1043A00001C080E01F910F91089580E0089580E0A2 +:1043B00008958E518A3030F4E82FF0E0E65DFE4F2C +:1043C0008081089580E00895CF93C82F8091F101F6 +:1043D000813079F018F08230E9F186C0E0910E0169 +:1043E000F0910F018081813169F0823209F07EC045 +:1043F00009C0E0910E01F0910F018081813111F02F +:10440000823261F48C2F0E94D521811104C08C2F3F +:104410000E9412211DC081E090E01AC08C2F0E94E2 +:10442000D721811114C0C43179F048F4CB3079F030 +:10443000C03109F05FC082E08093F10108C0C93249 +:1044400019F0C83321F056C01092F10153C081E039 +:10445000817052C0C93281F110F5C43169F1A8F4FC +:10446000C73009F045C08AE08093150194E190932C +:10447000140193E0909313018093120188E08093DC +:10448000110188E28093100133C082EE8C0F8630D8 +:1044900078F58C2F0E94D9218093F00129C0CE3469 +:1044A000E9F020F4CB3421F56AE013C0C13579F08E +:1044B000C235F1F461E00DC08091F001882319F05C +:1044C0001092F00115C081E08093F10115C061E008 +:1044D00006C08091F0010E944C200AC06AE08091E1 +:1044E000F0010E94C22004C01092F10180E004C0DB +:1044F00081E002C080E0ACCFCF910895E1E8F0E028 +:104500008081886080838081816080838FB7F89408 +:1045100093E09093890090ED909388008FBF089569 +:10452000EFE6F0E08081826080830895EFE6F0E0BE +:1045300080818D7F80830895EFE6F0E0908182E0B6 +:104540008927808308951F920F920FB60F9211242E +:104550002F933F934F935F936F937F938F939F938B +:10456000AF93BF93EF93FF938091F2019091F3018A +:1045700001969093F3018093F201811103C082E0D0 +:104580000E94EC09E091F301E695E695F0E0E75131 +:10459000FB4FE4918091F2018E1303C080E00E94F2 +:1045A000EC09FF91EF91BF91AF919F918F917F9116 +:1045B0006F915F914F913F912F910F900FBE0F9090 +:1045C0001F90189504D06894B1118DC0089570D0D3 +:1045D00088F09F5790F0B92F9927B751A0F0D1F0EC +:1045E000660F771F881F991F1AF0BA95C9F712C076 +:1045F000B13081F077D0B1E0089574C0672F782F83 +:104600008827B85F39F0B93FCCF3869577956795E1 +:10461000B395D9F73EF490958095709561957F4F4D +:104620008F4F9F4F0895E89409C097FB3EF49095F3 +:104630008095709561957F4F8F4F9F4F9923A9F07B +:10464000F92F96E9BB279395F6958795779567950A +:10465000B795F111F8CFFAF4BB0F11F460FF1BC04E +:104660006F5F7F4F8F4F9F4F16C0882311F096E9E1 +:1046700011C0772321F09EE8872F762F05C066238F +:1046800071F096E8862F70E060E02AF09A95660F48 +:10469000771F881FDAF7880F9695879597F9089501 +:1046A00057FD9058440F551F59F05F3F71F04795E3 +:1046B000880F97FB991F61F09F3F79F087950895C8 +:1046C000121613061406551FF2CF4695F1DF08C0E7 +:1046D000161617061806991FF1CF86957105610504 +:1046E00008940895E894BB2766277727CB0197F9AC +:1046F00008950BD078C069D028F06ED018F09523BB +:1047000009F05AC05FC01124EECFCADFA0F3959F15 +:10471000D1F3950F50E0551F629FF001729FBB27A8 +:10472000F00DB11D639FAA27F00DB11DAA1F649F54 +:104730006627B00DA11D661F829F2227B00DA11D07 +:10474000621F739FB00DA11D621F839FA00D611D8D +:10475000221F749F3327A00D611D231F849F600DAE +:10476000211D822F762F6A2F11249F5750408AF0E7 +:10477000E1F088234AF0EE0FFF1FBB1F661F771F73 +:10478000881F91505040A9F79E3F510570F014C00A +:10479000AACF5F3FECF3983EDCF38695779567955B +:1047A000B795F795E7959F5FC1F7FE2B880F911D91 +:1047B0009695879597F9089597F99F6780E870E037 +:1047C00060E008959FEF80EC089500240A94161687 +:1047D000170618060906089500240A9412161306EF +:1047E000140605060895092E0394000C11F488237D +:1047F00052F0BB0F40F4BF2B11F460FF04C06F5F99 +:104800007F4F8F4F9F4F089597FB072E16F400940C +:1048100007D077FD09D00E941E2407FC05D03EF486 +:10482000909581959F4F0895709561957F4F08955C +:10483000EE0FFF1F0590F491E02D0994AA1BBB1BFE +:1048400051E107C0AA1FBB1FA617B70710F0A61B90 +:10485000B70B881F991F5A95A9F780959095BC01B1 +:10486000CD010895F999FECF92BD81BDF89A99279F +:1048700080B50895A8E1B0E042E050E00C945A24DD +:10488000262FF999FECF92BD81BDF89A019700B409 +:10489000021639F01FBA20BD0FB6F894FA9AF99AA9 +:1048A0000FBE08950196272F0E9441240C944024A6 +:1048B000DC01CB01FC01F999FECF06C0F2BDE1BDE0 +:1048C000F89A319600B40D9241505040B8F70895CF +:0448D000F894FFCF8A +:1048D4000220EE097C0A590A250AF1090101CE01D8 +:1048E40028080A03140A404D3639A9045C04260436 +:1048F400ED0380039903B203CB030102030405060D +:044904000708090097 +:00000001FF diff --git a/keyboards/ergodox_ez/keymaps/townk_osx/config.h b/keyboards/ergodox_ez/keymaps/townk_osx/config.h new file mode 100644 index 0000000000..58ba690afd --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/townk_osx/config.h @@ -0,0 +1,92 @@ +/* +Copyright 2012 Jun Wako +Copyright 2013 Oleg Kostyuk + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . +*/ + +#ifndef CONFIG_H +#define CONFIG_H + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0xFEED +#define PRODUCT_ID 0x1307 +#define DEVICE_VER 0x0001 +#define MANUFACTURER ErgoDox EZ +#define PRODUCT ErgoDox EZ +#define DESCRIPTION t.m.k. keyboard firmware for Ergodox + +/* key matrix size */ +#define MATRIX_ROWS 14 +#define MATRIX_COLS 6 + +#define MOUSEKEY_DELAY 100 +#define MOUSEKEY_INTERVAL 20 +#define MOUSEKEY_MAX_SPEED 3 +#define MOUSEKEY_TIME_TO_MAX 10 + +#define TAPPING_TOGGLE 1 + +#define COLS (int []){ F1, F0, B0, C7, F4, F5, F6, F7, D4, D6, B4, D7 } +#define ROWS (int []){ D0, D5, B5, B6 } + +/* COL2ROW or ROW2COL */ +#define DIODE_DIRECTION COL2ROW + +/* define if matrix has ghost */ +//#define MATRIX_HAS_GHOST + +/* number of backlight levels */ +#define BACKLIGHT_LEVELS 3 + +/* Set 0 if debouncing isn't needed */ +#define DEBOUNCE 2 +#define TAPPING_TERM 200 +#define IGNORE_MOD_TAP_INTERRUPT // this makes it possible to do rolling combos (zx) with keys that convert to other keys on hold (z becomes ctrl when you hold it, and when this option isn't enabled, z rapidly followed by x actually sends Ctrl-x. That's bad.) + +/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ +#define LOCKING_SUPPORT_ENABLE +/* Locking resynchronize hack */ +#define LOCKING_RESYNC_ENABLE + +/* key combination for command */ +#define IS_COMMAND() ( \ + keyboard_report->mods == (MOD_BIT(KC_LCTL) | MOD_BIT(KC_RCTL)) || \ + keyboard_report->mods == (MOD_BIT(KC_LSFT) | MOD_BIT(KC_RSFT)) \ +) + +/* + * Feature disable options + * These options are also useful to firmware size reduction. + */ + +/* disable debug print */ +// #define NO_DEBUG + +/* disable print */ +// #define NO_PRINT + +/* disable action features */ +//#define NO_ACTION_LAYER +//#define NO_ACTION_TAPPING +//#define NO_ACTION_ONESHOT +//#define NO_ACTION_MACRO +//#define NO_ACTION_FUNCTION +//#define DEBUG_MATRIX_SCAN_RATE +#define ONESHOT_TAP_TOGGLE 2 +#define ONESHOT_TIMEOUT 3000 + +#endif diff --git a/keyboards/ergodox_ez/keymaps/townk_osx/keymap.c b/keyboards/ergodox_ez/keymaps/townk_osx/keymap.c new file mode 100644 index 0000000000..07e58a491b --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/townk_osx/keymap.c @@ -0,0 +1,285 @@ +#include "ergodox_ez.h" +#include "debug.h" +#include "action_layer.h" +#include "action_util.h" +#include "led.h" +#include "keymap.h" +#include "timer.h" + +/* + +# Why this Layout + +This layout was based on Kinesis layout and other ErgoDox user layouts +available. It's target to be used on a MacOS but I'm pretty sure it can be +addapted to Windows and/or Linux easily. + +## Function Key + +The `fn` key work almost like it would in any other keyboard with the exception +it has a semi-sticky behavior. What does that mean? + +Well, if you press the `fn` and release it, the keyboard will be put on the +_function layout_ and the next key stroke will be processed as if the `fn` key +was pressed. Aftwards, the leyout get back to _normal_. If you hold `fn` and +press any other key, when you release them, the keyboard leyout is back to +_normal_. + +While pressing the `fn` with the left hand and strikeing the other keys on the +right hand is farly easy, the same cannot being said for the other keys on the +left side. So, instead of trying to do contorcionism with my left hand, I +decided to do a semi-sticky version of `fn`. This way, I can press the `fn` +key with my pinky, release it and press the `1` key to issue an `F1` to the +operating system. + +## Key-Pad Key + +The `key pad` key is a layout switch key. If pressed, it will put the keyboard +on the _key pad layout_ and stay there until key is pressed again. + +This is used to make the keyboard behave mostly like a **num pad keyboard**. + +## Notes +- Regardless in which layout you are, keys from other layouts are not + accessible. This means that if you are on the _key pad layout_, the left hand + will be pretty much unusable. + Of course that like anything else, there are exceptions to this rule. + Modifiers should remain accessible throughout the layers. +- The _shift key_ is, like the _function key_, also configured to have a sticky + behavior. +- All sticky keys have a timeout of 3 seconds. + +*/ +#define BASE 0 +#define KEYPAD 1 +#define FN 2 + +#define MACRO_TMUX_ESC 10 +#define MACRO_TMUX_PASTE 11 +#define MACRO_OSX_COPY 12 +#define MACRO_OSX_PASTE 13 + +#define M_TESC M(MACRO_TMUX_ESC) +#define M_TPASTE M(MACRO_TMUX_PASTE) +#define M_OSXCPY M(MACRO_OSX_COPY) +#define M_OSXPST M(MACRO_OSX_PASTE) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* Keymap 0: Base Layer + * + * ,-----------------------------------------------------. ,-----------------------------------------------------. + * | `~ | 1 | 2 | 3 | 4 | 5 | ESC | | Pwr | 6 | 7 | 8 | 9 | 0 | - _ | + * |-----------+------+------+------+------+-------------| |------+------+------+------+------+------+-----------| + * | Tab | Q | W | E | R | T | F16 | | F17 | Y | U | I | O | P | = + | + * |-----------+------+------+------+------+------| Meh | | Meh |------+------+------+------+------+-----------| + * | \ (Ctrl) | A | S | D | F | G |------| |------| H | J | K | L | ; | ' " (Ctrl)| + * |-----------+------+------+------+------+------| F18 | | F19 |------+------+------+------+------+-----------| + * | LShift | Z | X | C | V | B | Hyper| | Hyper| N | M | , | . | / | RShift | + * `-----------+------+------+------+------+-------------' `-------------+------+------+------+------+-----------' + * | FN | KPAD |LCtrl | LAlt | LGui | | RGui | RAlt | RCtrl| KPAD | FN | + * `-----------------------------------' `-----------------------------------' + * ,-------------. ,-------------. + * | M(0) | M(1) | | M(2) | M(3) | + * ,------|------|------| |------+------+------. + * | | | Home | | PgUp | | | + * |Backsp| Del |------| |------| Enter| Space| + * | | | End | | PgDn | | | + * `--------------------' `--------------------' + * + * M(0) = Ctrk+A Esc + * (this is used to issue the Esc key to the Tmux application) + * M(1) = Ctrk+A P + * (this is used to issue the Paste key to the Tmux application) + * M(2) = Cmd+C + * M(3) = Cmd+V + */ +[BASE]=KEYMAP(//left half + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_ESC, + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, MEH_T(KC_F16), + CTL_T(KC_BSLS), KC_A, KC_S, KC_D, KC_F, KC_G, + KC_FN2, KC_Z, KC_X, KC_C, KC_V, KC_B, ALL_T(KC_F18), + KC_FN1, TG(KEYPAD), KC_LCTRL, KC_LALT, KC_LGUI, + M_TESC, M_TPASTE, + KC_HOME, + KC_BSPC, KC_DELT, KC_END, + //right half + KC_POWER, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, + MEH_T(KC_F17), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_EQL, + KC_H, KC_J, KC_K, KC_L, KC_SCLN, CTL_T(KC_QUOT), + ALL_T(KC_F19), KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_FN2, + KC_RGUI, KC_RALT, CTL_T(KC_LBRC), KC_FN3, KC_FN1, + M_OSXCPY, M_OSXPST, + KC_PGUP, + KC_PGDN, KC_ENT, KC_SPC), + +/* Keymap 1: KeyPad Layer + * + * ,-----------------------------------------------------. ,-----------------------------------------------------. + * | | | LClk | RClk | MClk | | | | BTab | Clear| / | * | ^ | ( | | + * |-----------+------+------+------+------+-------------| |------+------+------+------+------+------+-----------| + * | M.Accel 2 | |ScrlUp| U |ScrlDn| | | | Tab | 7 | 8 | 9 | + | ) | | + * |-----------+------+------+------+------+------| | | |------+------+------+------+------+-----------| + * | M.Accel 1 | | L | D | R | |------| |------| 4 | 5 | 6 | - | | | + * |-----------+------+------+------+------+------| | |Return|------+------+------+------+------+-----------| + * | M.Accel 0 | |ScrlL | |ScrlR | | | | | 1 | 2 | 3 | = | | | + * `-----------+------+------+------+------+-------------' `-------------+------+------+------+------+-----------' + * | | XXXX | | | | | 0 | . | , | XXXX | | + * `-----------------------------------' `-----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | XXXX | | + * | | |------| |------| XXXX | | + * | | | | | | XXXX | | + * `--------------------' `--------------------' + */ +[KEYPAD]=KEYMAP(//left half + KC_NO, KC_NO, KC_MS_BTN1, KC_MS_BTN2, KC_MS_BTN3, KC_NO, KC_NO, + KC_MS_ACCEL2, KC_NO, KC_MS_WH_UP, KC_MS_U, KC_MS_WH_DOWN, KC_NO, KC_NO, + KC_MS_ACCEL1, KC_NO, KC_MS_L, KC_MS_D, KC_MS_R, KC_NO, + KC_MS_ACCEL0, KC_NO, KC_MS_WH_LEFT, KC_NO, KC_MS_WH_RIGHT, KC_NO, KC_NO, + KC_NO, KC_TRNS, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, + KC_NO, + KC_NO, KC_NO, KC_NO, + //right half + LSFT(KC_TAB), KC_CLEAR, KC_KP_SLASH, KC_KP_ASTERISK, KC_CIRCUMFLEX, KC_LPRN, KC_NO, + KC_TAB, KC_KP_7, KC_KP_8, KC_KP_9, KC_KP_PLUS, KC_RPRN, KC_NO, + KC_KP_4, KC_KP_5, KC_KP_6, KC_KP_MINUS, KC_NO, KC_NO, + KC_KP_ENTER, KC_KP_1, KC_KP_2, KC_KP_3, KC_KP_EQUAL, KC_NO, KC_NO, + KC_KP_0, KC_KP_DOT, KC_KP_COMMA, KC_TRNS, KC_NO, + KC_NO, KC_NO, + KC_NO, + KC_NO, KC_TRNS, KC_NO), + +/* Keymap 2: Functions Layer + * + * ,-----------------------------------------------------. ,-----------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | F6 | | F7 | F8 | F9 | F10 | F11 | F12 | Vol. Up | + * |-----------+------+------+------+------+-------------| |------+------+------+------+------+------+-----------| + * | | Stop | Rw | Rec | FF | | XXXX | | XXXX | | | | | | Vol. Down | + * |-----------+------+------+------+------+------| XXXX | | XXXX |------+------+------+------+------+-----------| + * | CapsLock | Eject| Prev | Play | Next | |------| |------| Left | Down | Up | Right| | Mute | + * |-----------+------+------+------+------+------| XXXX | | XXXX |------+------+------+------+------+-----------| + * | L Shift | | | | | | XXXX | | XXXX | | | | | | R Shift | + * `-----------+------+------+------+------+-------------' `-------------+------+------+------+------+-----------' + * | XXXXX | | XXXX | XXXX | XXXX | | XXXX | XXXX | XXXX | | XXXXX | + * `-----------------------------------' `-----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + * + * XXX = These keys are transparent keys that, when pressed, they issue the key from the previous layer. + */ +[FN]=KEYMAP(//left half + KC_NO, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, + KC_NO, KC_MEDIA_STOP, KC_MEDIA_REWIND, KC_MEDIA_SELECT, KC_MEDIA_FAST_FORWARD, KC_NO, KC_TRNS, + KC_CAPS, KC_MEDIA_EJECT, KC_MEDIA_PREV_TRACK, KC_MEDIA_PLAY_PAUSE, KC_MEDIA_NEXT_TRACK, KC_NO, + KC_LSFT, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, + KC_TRNS, KC_NO, KC_TRNS, KC_TRNS, KC_TRNS, + KC_NO, KC_NO, + KC_NO, + KC_NO, KC_NO, KC_NO, + //right half + KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_VOLU, + KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_VOLD, + KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, KC_NO, KC_MUTE, + KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_RSFT, + KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, KC_TRNS, + KC_NO, KC_NO, + KC_NO, + KC_NO, KC_NO, KC_NO)}; + +const uint16_t PROGMEM fn_actions[] = { + [1] = ACTION_LAYER_ONESHOT(FN), + [2] = ACTION_MODS_ONESHOT(MOD_LSFT), // Sticky shift light. Tap for the next keypress to be shifted. Hold for regular shift. + [3] = ACTION_LAYER_TAP_KEY(KEYPAD, KC_RBRC), +}; + +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_TMUX_ESC: + if (record->event.pressed) { + return MACRO(D(LCTRL), T(A), U(LCTRL), D(ESC), END); + } + return MACRO(U(ESC), END); + case MACRO_TMUX_PASTE: + if (record->event.pressed) { + return MACRO(D(LCTRL), T(A), U(LCTRL), D(P), END); + } + return MACRO(U(P), END); + case MACRO_OSX_COPY: + if (record->event.pressed) { + return MACRO(D(LGUI), D(C), END); + } + return MACRO(U(C), U(LGUI), END); + case MACRO_OSX_PASTE: + if (record->event.pressed) { + return MACRO(D(LGUI), D(V), END); + } + return MACRO(U(V), U(LGUI), END); + } + return MACRO_NONE; +}; + +// Runs just one time when the keyboard initializes. +void matrix_init_user(void) { +}; + +uint8_t current_layer = BASE; + +// Runs constantly in the background, in a loop. +void matrix_scan_user(void) { + uint8_t layer = biton32(layer_state); + + ergodox_led_all_off(); + ergodox_led_all_set(LED_BRIGHTNESS_LO); + + switch (layer) { + case BASE: + current_layer = BASE; + break; + case KEYPAD: + current_layer = KEYPAD; + break; + default: + // none + break; + } + + // layer leds + if (current_layer == KEYPAD) { + ergodox_right_led_3_on(); + } + + // capslock + if (host_keyboard_leds() & (3<mods & (MOD_BIT(KC_LSFT) | MOD_BIT(KC_RSFT)) && // is shift pressed and there is no other + !(keyboard_report->mods & (~MOD_BIT(KC_LSFT) & ~MOD_BIT(KC_RSFT)))) || // modifier being pressed as well + (get_oneshot_mods() & (MOD_BIT(KC_LSFT) | MOD_BIT(KC_RSFT)) && !has_oneshot_mods_timed_out())) { // or the one shot shift didn't timed out + ergodox_right_led_1_set(LED_BRIGHTNESS_HI); + ergodox_right_led_1_on(); + } +}; diff --git a/keyboards/ergodox_ez/keymaps/townk_osx/makefile.mk b/keyboards/ergodox_ez/keymaps/townk_osx/makefile.mk new file mode 100644 index 0000000000..e757557bda --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/townk_osx/makefile.mk @@ -0,0 +1,4 @@ +# I don't want my keyboard blinking lights when is suppose to be asleep. +SLEEP_LED_ENABLE = no + +CONFIG_H = keymaps/$(KEYMAP)/config.h diff --git a/keyboards/ergodox_ez/keymaps/townk_osx/readme.md b/keyboards/ergodox_ez/keymaps/townk_osx/readme.md new file mode 100644 index 0000000000..c2853ca173 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/townk_osx/readme.md @@ -0,0 +1,77 @@ +# Townk's Keymap + +Trying to take care of an enjury on my arm I borrow an ergonomic keyboard from +a frient ([Kinesis Advantage](http://www.kinesis-ergo.com/shop/advantage-pro-for-pc-mac/)). + +I really enjoyed my time with it but there were some anoyancies: + +* The curvature on the keys bothered me since I'm a Vim user and using the + motion keys on my editor was awkard. +* I had to spend too much time remapping the keyboard to make some symbol keys + more accessible to me. +* The fact that my hands had to stay close to each other was a bit stressfull + to my sholders. + +After a long research I find out that Ergodox EZ would be perfect for my needs +and purchase one. Before the keyboard even got in my hands I started to think +on the layout I would use on it and soon enough I planed couple adjustments +from the Kinesis I was using so far. + +## The layout + +Here are the layout mapping in images so you can have a glimpse on it: + +![Base Layout](townk_osx_base.png) +![fn Layout](townk_osx_fn.png) +![Keypad & Mouse Layout](townk_osx_keypad.png) + +Notice that, differently from the default behavior, my layer keys are not transparent +by default, which means that if you press any non-labeled white key, nothing will be +handled to the OS. + +### One shot keys + +It all started with the access to the function keys (F1, F2, F3...), since +those keys are located on a different layer I needed a way to press them with +minimal effort without disrupting my flow. + +For me, togglihg a layer to press a button and than toggle it back is a waste +of time (although I admit it's a single tap from what I have), so I decided to +do it as a one shot key. I could press it and the next pressed key would be +handled by the target layer which just after it delivers the key to the OS it +would get back to the previous layer. + +After setting up my layout to do just that I realized that occasionally I +would stop myseld on the middle of the process and the one shot layer would be +still triggered until I press any other key. So to prevent me from tapping +keys I don't want I added a timeout of 3 seconds for the one shot actions. + +Ultimately I tested the shift key as a one shot one and really like it, so +here you have it, all the one shot keys on my layout. + +## Glossary + +If you're not familiar with the Mac symbols used on some keys, here is a +reference to them: + +| Symbol | Description | +| :----: | ------------------- | +| ⌘ | Command | +| ⇪ | Caps Lock | +| ⇧ | Shift | +| ⌥ | Option (alt) | +| ⎋ | Esc | +| ⇥ | Tab forward | +| ⇤ | Tab backward | +| ⌃ | Control | +| ␣ | Space | +| ⌫ | Backspace | +| ⌦ | Delete | +| ⏎ | Enter | +| ⌤ | Return | +| ⌽ | Power on/off button | +| ↖ | Home | +| ↘ | End | +| ⇞ | Page up | +| ⇟ | Page down | +| ⌧ | Clear | diff --git a/keyboards/ergodox_ez/keymaps/townk_osx/townk_osx_base.png b/keyboards/ergodox_ez/keymaps/townk_osx/townk_osx_base.png new file mode 100644 index 0000000000..f9bc8b443a Binary files /dev/null and b/keyboards/ergodox_ez/keymaps/townk_osx/townk_osx_base.png differ diff --git a/keyboards/ergodox_ez/keymaps/townk_osx/townk_osx_fn.png b/keyboards/ergodox_ez/keymaps/townk_osx/townk_osx_fn.png new file mode 100644 index 0000000000..983b723480 Binary files /dev/null and b/keyboards/ergodox_ez/keymaps/townk_osx/townk_osx_fn.png differ diff --git a/keyboards/ergodox_ez/keymaps/townk_osx/townk_osx_keypad.png b/keyboards/ergodox_ez/keymaps/townk_osx/townk_osx_keypad.png new file mode 100644 index 0000000000..8f04b4327d Binary files /dev/null and b/keyboards/ergodox_ez/keymaps/townk_osx/townk_osx_keypad.png differ diff --git a/keyboards/ergodox_ez/keymaps/twey/compiled.hex b/keyboards/ergodox_ez/keymaps/twey/compiled.hex new file mode 100644 index 0000000000..dafb367053 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/twey/compiled.hex @@ -0,0 +1,1178 @@ +:100000000C94CE020C9412030C9412030C94120361 +:100010000C9412030C9412030C9412030C9412030C +:100020000C9412030C9412030C94040E0C94D60E30 +:100030000C9412030C9412030C9412030C941203EC +:100040000C9412030C94E0220C9412030C941203EF +:100050000C9412030C94731C0C9412030C94120352 +:100060000C9412030C9412030C9412030C941203BC +:100070000C9412030C9412030C9412030C941203AC +:100080000C9412030C9412030C9412030C9412039C +:100090000C9412030C9412030C9412030C9412038C +:1000A0000C9412030C9412030C941203430F650F6B +:1000B0005310650F5310AA0FCD0F53102210351097 +:1000C000041304133313331369138913BA14BA14C2 +:1000D0009413BA1444144414AB14BA14BA14B414D8 +:1000E00051145114511451145114511451145114E8 +:1000F00051145114511451145114511451145114D8 +:100100006314701477147E1488140000F0A32E007A +:100110004C002A00E100015200001E0034000400DF +:1001200033000000E3001F00360012001400350009 +:1001300028002000370008000D005000E2002100D8 +:10014000130018000E004F00000022001C000C00DD +:100150001B0000004B000030290000002B000000B5 +:100160004E00000039000000280000004A00230073 +:1001700009000700050000004D0024000A000B00E4 +:1001800010005200E6002500060017001A0051007A +:10019000E40026001500110019002F002C00270094 +:1001A0000F0016001D0030000352310038002D00F2 +:1001B000E500015200000100010001000100010002 +:1001C00000003A001E0220022202010001003B0052 +:1001D0001F0221022302010001003C002F0226021F +:1001E0002F00010001003D00300227023000010015 +:1001F00001003E003102350035020000010001001F +:1002000001000000010000000100010001000000E9 +:100210000100000001003F005200510024020000D4 +:1002200001004000240021001E00010001004100E7 +:10023000250022001F003700010042002600230095 +:10024000200027000100430025022E0231002E006D +:100250000100440045000100010001000000000011 +:100260000000000000000100000000001E0014005B +:1002700014000000000000001E001A00160000001C +:10028000190000001E000800070001000600000021 +:100290001E00150009000100000000001E001C00E7 +:1002A0001C000000000001001C0000001C000000F9 +:1002B000000000001C0000001C0000000000000006 +:1002C0001E001C001C000000000000001E001800A2 +:1002D0000D000100000000001E000C000E000100D7 +:1002E000100000001E0012000F00000011000000AE +:1002F0001E00130033000000010000001E002F004C +:1003000034000100000001000100010001000100B3 +:1003100000000100010001000100010001000100D6 +:100320000100F2000100010001000100F000F100F5 +:100330000100F400010001000100F3000100F500DC +:1003400001000100010001000100000001000100A6 +:100350000100000001000000010001000100000098 +:100360000100000001000100010001000100000087 +:1003700001000100B600AC000100A900010001006D +:100380000100AE000100AA00B6000100B700AB00FA +:100390000100A800010001000100010001000100AE +:1003A000010001000100010001000100000016032E +:1003B0004500720067006F0044006F007800200065 +:1003C00045005A00000016034500720067006F00E8 +:1003D00044006F007800200045005A00000004032C +:1003E000090409026D00040100A0FA0904000001DB +:1003F00003010100092111010001223F00070581CD +:100400000308000A09040100010301020009211187 +:10041000010001224D000705820308000A090402B9 +:10042000000103000000092111010001223600072C +:1004300005830308000A0904030001030000000902 +:100440002111010001223900070584031000011267 +:1004500001100100000008EDFE0713010001020079 +:100460000105010906A101050719E029E715002585 +:100470000195087501810205081901290595057581 +:10048000019102950175039101050719002977155E +:10049000002501957875018102C005010980A1013F +:1004A000850216010026B7001A01002AB700751050 +:1004B00095018100C0050C0901A101850316010009 +:1004C000269C021A01002A9C02751095018100C029 +:1004D00005010902A1010901A10005091901290568 +:1004E00015002501950575018102950175038101AE +:1004F0000501093009311581257F950275088106AE +:1005000009381581257F950175088106050C0A3883 +:10051000021581257F950175088106C0C005010976 +:1005200006A101050719E029E715002501950875C1 +:1005300001810295017508810105081901290595B8 +:1005400005750191029501750391010507190029AF +:10055000FF150025FF950675088100C0000000000A +:1005600000000000000000010204060A0F17202C02 +:100570003A4A5D71879DB3C7DAE9F5FCFFFCF5E9FE +:10058000DAC7B39D87715D4A3A2C20170F0A06041B +:1005900002010000000000000000000011241FBE46 +:1005A000CFEFDAE0DEBFCDBF04B603FE24C08091FA +:1005B000FB019091FC01A091FD01B091FE018730FB +:1005C000904BA740B04BB9F41092FB011092FC0184 +:1005D0001092FD011092FE0114BE84B7877F84BF84 +:1005E00088E10FB6F89480936000109260000FBE0F +:1005F000E0E0FFE3099511E0A0E0B1E0EEE4F9E40A +:1006000002C005900D92A433B107D9F711E0A4E31D +:10061000B1E001C01D92AB3FB107E1F70E94480B6A +:100620000C94A5240C9400001092B9008AE08093E9 +:10063000B800089594EA9093BC009091BC0097FF95 +:10064000FCCF9091B900987F983021F0903111F053 +:1006500081E008958093BB0084E88093BC00809182 +:10066000BC0087FFFCCF8091B900887F883111F0F2 +:10067000803471F780E0089584E98093BC00809114 +:10068000BC0084FDFCCF08958093BB0084E8809378 +:10069000BC008091BC0087FFFCCF9091B900987F8F +:1006A00081E0983209F480E0089584E88093BC00EA +:1006B0008091BC0087FFFCCF8091BB0008958091A2 +:1006C0000101811115C080E40E941A038093010189 +:1006D00081110CC082E10E944403809301018111C9 +:1006E00005C08FEF0E944403809301010E943C03E8 +:1006F00084B1807F84B985B1807F85B98AB1837FD9 +:100700008AB98BB1837F8BB93E98469808950E9431 +:100710001A05809301010E945F0380B38C7080BB37 +:1007200081B3836F81BBA5E3B1E0E3E4F1E08EE048 +:100730008E0F11921D928E13FCCF0C940405BF9264 +:10074000CF92DF92EF92FF920F931F93CF93DF939D +:1007500080910101882379F0809134018F5F80932B +:100760003401811108C00E941A0580930101811192 +:1007700002C00E94AC0405E311E0C0E0D0E0DD243B +:10078000D39482E0C82EEE24E394F12CC730D10537 +:1007900000F580910101811164C080E40E941A0378 +:1007A00080930101811112C082E10E944403809371 +:1007B000010181110BC0C7010C2E01C0880F0A94E2 +:1007C000EAF780950E944403809301010E943C0354 +:1007D00048C0CA30A1F028F4C83059F0C93061F0DF +:1007E00005C0CC3089F070F0CD3089F0209A28987F +:1007F00010C0219A29980DC0229A2A980AC0239ADB +:100800002B9807C0529A01C0539A5B9802C03E9A37 +:10081000469890EA9A95F1F79FB1799902C082E0E3 +:1008200001C080E091709D25982B7C9902C084E0E6 +:1008300001C080E0892B7D9902C038E001C030E022 +:10084000832B7E9902C020E101C020E0822B9FB162 +:100850009095991F9927991F9295990F907E892BB2 +:100860000FC080910101811149C080E40E941A03E8 +:1008700080930101882379F1B12C0E943C038B2DD8 +:10088000F8019081981719F08083C09200010E94AE +:100890005F0321960F5F1F4FCE30D10509F076CF51 +:1008A00080910001882361F18150809300018823A9 +:1008B00039F08FE99FE00197F1F700C0000020C0F8 +:1008C000A3E4B1E0E5E3F1E0CF01825F91919D9374 +:1008D0008E13FCCF15C083E10E9444038093010175 +:1008E0008111CACF81E40E941A0380930101811112 +:1008F000C3CF0E945503B82EB094BFCF80E0C0CFC5 +:100900000E94AA0481E0DF91CF911F910F91FF9087 +:10091000EF90DF90CF90BF900895E82FF0E0ED5B6F +:10092000FE4F8081089508950F931F93CF93DF9317 +:10093000C3E4D1E010E00C2F025F899190E00E94A7 +:10094000991B180F0C13F9CF812FDF91CF911F91B5 +:100950000F9108950C94B40556985E9825982D989B +:1009600026982E9827982F988FEF90E090938900E3 +:100970008093880090938B0080938A0090938D00E1 +:1009800080938C00259A2D9A2FEF80E792E02150DA +:1009900080409040E1F700C00000269A2E9A2FEF89 +:1009A00080E792E0215080409040E1F700C00000D5 +:1009B000279A2F9A2FEF80E792E0215080409040B5 +:1009C000E1F700C0000025982D982FEF80E792E016 +:1009D000215080409040E1F700C0000026982E98FA +:1009E0002FEF80E792E0215080409040E1F700C077 +:1009F000000027982F9856985E9825982D9826984D +:100A00002E9827982F98089589EA8093800089E08E +:100A10008093810024982C983F988AB18F748AB96A +:100A20006E98479A8BB1806B8BB9769A0E94AC0412 +:100A30000C94B30580E280930101809151018111F2 +:100A40000EC00E94140381E0809351012FEF83EDCB +:100A500090E3215080409040E1F700C0000080E426 +:100A60000E941A038093010181112EC00E94440349 +:100A700080930101811128C00E94440380930101E9 +:100A8000811122C08FE30E944403809301018111F0 +:100A90001BC00E943C0380E40E941A038093010162 +:100AA000811112C08CE00E944403809301018111E6 +:100AB0000BC00E94440380930101811105C08FE3A4 +:100AC0000E944403809301010E943C038091010134 +:100AD0000895CF93DF93EC016091BD017091BE0149 +:100AE0008091BF019091C0010E94A51BCD2BE9F020 +:100AF000823021F082E00E94621903C082E00E94ED +:100B0000831988E00E94A81185E10E94A81189E05C +:100B10000E94A81189E10E94A81182E10E94A811F7 +:100B20008FE0DF91CF910C94A81188E00E947012A1 +:100B300085E10E94701289E00E94701289E10E9492 +:100B4000701282E10E9470128FE0DF91CF910C94BD +:100B50007012611105C0FC01828190E00E9469055C +:100B600080E090E0089508950F931F938091BD0158 +:100B70009091BE01A091BF01B091C0018C019D0177 +:100B80000470112722273327AC01BD014870552777 +:100B90006627772756985E9825982D9826982E9840 +:100BA00027982F9881FF02C0259A2D9A012B022B9E +:100BB000032B11F0269A2E9A452B462B472B11F02A +:100BC000279A2F9A1F910F91089581E0089581E04F +:100BD00008950C94E70508950F931F93CF93DF9327 +:100BE0008C01FC01C081D181CE010E941E1ABE0180 +:100BF0000E949506EC01B8010E94E905882309F4DA +:100C00008DC0F8018281882309F44AC080915D017A +:100C100081111FC0C431F0E5DF0709F051C00E9407 +:100C2000EB0581E080935D010E943D1C90935C0187 +:100C300080935B011092540110925601109255015D +:100C4000109258011092570110925A0110925901B6 +:100C500065C080915B0190915C010E94491C883CB9 +:100C6000910570F480915401E82FF0E0EE0FFF1F22 +:100C7000EB5AFE4FD183C0838F5F809354014EC0E7 +:100C8000C43880E5D80721F0C538D04501F13AC015 +:100C9000F8018281882341F01092520182E01EC047 +:100CA000C438E0E5DE0759F580915201811106C094 +:100CB00086E20E94A81186E20E94701282E01CC0A7 +:100CC000C438F0E5DF0741F3C538D045D9F4F80161 +:100CD0008281882331F01092530180E20E94BF127A +:100CE0001DC080915301811106C087E20E94A811A6 +:100CF00087E20E94701280E20E94C6120FC0C538BF +:100D0000D04529F381E08093520180935301C801BB +:100D1000DF91CF911F910F910C94E50580E0DF9159 +:100D2000CF911F910F910895089596E0799FF0015A +:100D3000112494E5899FE00DF11D1124E60FF11DAA +:100D4000EE0FFF1FE25FFE4F859194910895880F8B +:100D5000991FFC01E657F040859194910895880F02 +:100D6000991FFC01E65FFE4F8591949108950F93C2 +:100D70001F93CF93DF93EC01811520E3920750F589 +:100D8000C11580E2D80708F0C3C0CB3BD10590F471 +:100D9000C83AD10508F06AC0C53AD10508F05BC071 +:100DA000C430D10508F0D0C1219709F0CAC101E0D3 +:100DB00010E00AC2CF3FD10511F008F0C5C1C03F15 +:100DC000D10508F0A2C0CE01805E9109089708F411 +:100DD000BBC1B7C1C13090E5D90709F4A2C020F565 +:100DE000C0318FE4D80770F4C11590E4D90708F03A +:100DF00094C0C11521E3D20708F0A3C1DD278E01FD +:100E0000106CE2C1C115D04509F09BC10E942515A7 +:100E10008FEF94E32CE0815090402040E1F700C038 +:100E200000000E94981CD0C1C11597E5D90758F45D +:100E3000C03121E5D20708F01CC1C43180E5D807D4 +:100E400008F475C07EC1CE0190578115904108F01D +:100E500078C1DF7073C1C53AD10509F477C1C63ACC +:100E6000D10509F076C102E810E4AEC1C83AD10557 +:100E700009F472C1C93AD10509F471C1CA3AD10560 +:100E800009F470C1CB3AD10509F46FC1CC3AD10550 +:100E900009F46EC1CD3AD10509F46DC1C03BD1054D +:100EA00009F46CC1CE3AD10509F46BC1CF3AD10532 +:100EB00009F46AC1C13BD10509F469C1C23BD1053E +:100EC00009F468C1C33BD10509F467C1C43BD1052E +:100ED00009F466C1C53BD10509F465C1C63BD1051E +:100EE00009F464C1C73BD10509F463C1C83BD1050E +:100EF00009F462C1C93BD10509F461C1CA3BD105FE +:100F000009F460C100E014E45FC18E0110655CC1AA +:100F1000CE019F700E94AF0658C1DF708E01106A2B +:100F200053C18091DA0181608093DA014DC10E9442 +:100F30003D1E811102C00E94231E0E945A1E90E095 +:100F40009093FB018093FA01C23080E5D80721F429 +:100F50008091FA01816086C0C43090E5D90721F400 +:100F60008091FA0182607EC0C63020E5D20721F46C +:100F70008091FA01846076C0C83080E5D80719F402 +:100F80008091FA0127C0CA3090E5D90721F48091F9 +:100F9000FA01806167C0CC3020E5D20721F480914E +:100FA000FA0180625FC0CE3080E5D80721F48091DD +:100FB000FA01806457C0C03190E5D90721F48091CF +:100FC000FA0180684FC0C23120E5D20729F4809130 +:100FD000FA018460886046C0C33080E5D80721F4F8 +:100FE0008091FA018E7F3EC0C53090E5D90721F48B +:100FF0008091FA018D7F36C0C73020E5D20721F4F9 +:101000008091FA018B7F2EC0C93080E5D80719F492 +:101010008091FA0126C0CB3090E5D90721F4809168 +:10102000FA018F7E1FC0CD3020E5D20721F48091D8 +:10103000FA018F7D17C0CF3080E5D80721F4809169 +:10104000FA018F7B0FC0C13190E5D90721F480915F +:10105000FA018F7707C0C331D04531F48091FA018E +:101060008B7F877F8093FA018091FA010E945E1E38 +:10107000ABC08D2F99278F70992781309105D9F4B6 +:101080009E012370332702C0880F991F2A95E2F72B +:101090009C688E0144E0000F111F4A95E1F700277C +:1010A0001370802B912B53E0CC0FDD1F5A95E1F785 +:1010B000C076DD272FC08230910531F4DC2FCC279C +:1010C0008E01016F106A80C08330910569F4CE01F2 +:1010D0008370992701E010E002C0000F111F8A956C +:1010E000E2F7C8019C680FC084309105B9F4CE01C5 +:1010F0008370992701E010E002C0000F111F8A954C +:10110000E2F7C8019A6823E0CC0FDD1F2A95E1F7CA +:10111000C07ED7708C010C2B1D2B56C085309105DD +:1011200031F4DC2FCC278E01046F106A4DC0069776 +:1011300009F04AC0CF71DD27DC2FCC278E01106269 +:1011400043C000E010E040C08E013EC001E810E462 +:101150003BC003E810E438C002EE14E435C009EEE9 +:1011600014E432C00AEE14E42FC005EB14E42CC0E2 +:1011700006EB14E429C007EB14E426C00CEC14E4DD +:1011800023C00DEC14E420C003E815E41DC00AE8F8 +:1011900015E41AC002E915E417C004E915E414C007 +:1011A00001E216E411C003E216E40EC004E216E404 +:1011B0000BC005E216E408C006E216E405C007E22B +:1011C00016E402C00AE216E4C801DF91CF911F9134 +:1011D0000F91089596E0799FF001112494E5899F7D +:1011E000E00DF11D1124E60FF11DEE0FFF1FE25F70 +:1011F000FE4F85919491803E9105E0F4803C9105ED +:1012000058F58133910509F46FC048F4893291058E +:1012100009F463C08A32910509F46DC072C0893344 +:101220009105E9F082389105D1F08533910509F4F3 +:101230004DC067C0833E910581F138F4803E910531 +:10124000B9F0823E9105D9F05CC0863E910561F10E +:10125000873E9105A1F155C00E94A70608952091EF +:10126000FA0120FD02C021FF4CC080EE90E049C091 +:101270008091FA0180FFF9CF89E390E042C080912C +:10128000FA0182FF0EC08091FA0184FF03C080E062 +:1012900090E037C083EE90E034C08091FA0182FF85 +:1012A000F2CF82EE90E02DC08091FA0183FF0BC057 +:1012B0008091FA0184FDEBCF87EE90E022C080910F +:1012C000FA0183FFF5CF86EE90E01BC08091FA0112 +:1012D00085FF07C089E290E014C08091FA0185FF84 +:1012E000F9CF85E390E00DC08091FA0186FF07C039 +:1012F0008AE290E006C08091FA0186FFF9CF81E38F +:1013000090E00E94B706089508950C948409809196 +:101310006E010895CF93DF9300D01F92CDB7DEB753 +:101320009C018091F101843019F593E099833B830E +:101330002A839093E9008FEF9091E800815095FD0A +:1013400006C095ED9A95F1F700008111F5CF8091D7 +:10135000E80085FF0DC040E050E063E070E0CE01A2 +:1013600001960E94F40B8091E8008E778093E8004C +:101370000F900F900F90DF91CF910895CF93DF934F +:1013800000D01F92CDB7DEB72091F101243021F5B6 +:1013900022E029839B838A8383E08093E9008FEF97 +:1013A0009091E800815095FD06C095ED9A95F1F772 +:1013B00000008111F5CF8091E80085FF0DC040E06D +:1013C00050E063E070E0CE0101960E94F40B809142 +:1013D000E8008E778093E8000F900F900F90DF91D8 +:1013E000CF9108952091F1012430F1F422E020936F +:1013F000E9002FEF3091E800215035FD06C035EDB2 +:101400003A95F1F700002111F5CF2091E80025FF72 +:101410000BC040E050E065E070E00E94F40B80916A +:10142000E8008E778093E8000895CF93DF93EC0176 +:101430009091F101943009F046C080910C0188230D +:10144000D9F080910D018823B9F09093E9008FEFD6 +:101450009091E800815095FD06C095E19A95F1F7CD +:1014600000008111F5CF8091E80085FF2CC040E09D +:1014700050E060E170E017C081E08093E9008FEFF9 +:101480009091E800815095FD06C095ED9A95F1F791 +:1014900000008111F5CF8091E80085FF14C040E085 +:1014A00050E068E070E0CE010E94F40B8091E8000B +:1014B0008E778093E80080E1FE01AEE5B1E0019017 +:1014C0000D928A95E1F7DF91CF9108958091F00117 +:1014D000811109C00E94890D0E94E60D8091E200F1 +:1014E00084608093E20008951092F00108950895B9 +:1014F0000C94CD220E942E1C0E94D3220E948C109C +:101500000C94850942E061EC81E00E94030D42E009 +:1015100061EC82E00E94030D42E061EC83E00E94F6 +:10152000030D42E161EC84E00C94030D8091F30122 +:10153000833009F455C030F4813071F0823009F401 +:101540008EC008958A3009F47AC08B3009F460C0E7 +:10155000893009F09CC020C08091F201813A09F0E5 +:1015600096C08091E800877F8093E8008091F60123 +:101570009091F701892B21F460E18EE591E003C0A1 +:1015800060E080E090E070E00E943F0C8091E80015 +:101590008B778093E80008958091F201813209F001 +:1015A00076C08091F6019091F701009719F00397AA +:1015B00009F06DC08091E800877F8093E8008091FA +:1015C000E80082FD05C08091F1018111F8CF5FC074 +:1015D0008091F10080936E018091E8008B7753C079 +:1015E0008091F201813A09F052C08091F601909108 +:1015F000F701892B09F04BC08091E800877F809329 +:10160000E8008091E80080FFFCCF80910C0136C09B +:101610008091F2018132D9F58091F6019091F70124 +:10162000892BA9F58091E800877F8093E8000E94CC +:10163000380D8091F40180930C010C942515809154 +:10164000F201813221F58091E800877F8093E800E4 +:101650000E94380D8091F50180936F01089580916B +:10166000F201813AA1F48091E800877F8093E8003D +:101670008091E80080FFFCCF80916F018093F100A2 +:101680008091E8008E778093E8000C94380D0895DF +:1016900084B7877F84BF88E10FB6F8948093600099 +:1016A000109260000FBE90E080E80FB6F89480932F +:1016B0006100909361000FBE0E94DB100E94890DB3 +:1016C0000E94E60D8091E20084608093E2007894AD +:1016D0000E946C100E94DD1082E091E00E94871051 +:1016E0000E94BB228091F101853069F40E94F51BB4 +:1016F0008091EF018823B1F30E94201C882391F38D +:101700000E94DE0BEFCF0E94E310ECCF292F33278E +:1017100023303105C9F064F42130310581F02230E5 +:10172000310509F043C08DE690E022EE33E042C07F +:1017300021323105F1F02232310541F137C082E129 +:1017400090E02FE434E036C099278130910541F0D4 +:101750008230910541F0892B49F5EEEDF3E005C0AB +:10176000E6ECF3E002C0EEEAF3E0849190E09F0142 +:1017700021C06430D8F4E62FF0E0EE0FFF1FEE5DDD +:10178000FE4F2081318189E090E014C0643070F414 +:1017900070E0FB01EE0FFF1FE65EFE4F20813181FE +:1017A000FB01EA5EFE4F808190E004C080E090E0A3 +:1017B00020E030E0FA0131832083089580E189BD83 +:1017C00082E189BD09B400FEFDCF8091D8008F7DF4 +:1017D0008093D8008091E00082608093E000809147 +:1017E000E00081FDFCCF0895CF92DF92EF92FF924F +:1017F0000F931F93CF93DF93EC018B016A010E943B +:10180000570D811133C0C114D10439F0F601808124 +:101810009181081B190BC80FD91FE12CF12C011560 +:10182000110519F18091E80085FD16C08091E8004E +:101830008E778093E800C114D10449F0F6018081CD +:101840009181E80EF91EF182E08285E00FC00E94CE +:10185000570D882321F30AC089918093F10001502C +:101860001109FFEFEF1AFF0ADACF80E0DF91CF9185 +:101870001F910F91FF90EF90DF90CF9008952091EE +:10188000F8013091F9012617370748F06115710505 +:1018900039F42091E8002E772093E80001C0B901C7 +:1018A00040E061157105A9F12091F101222309F4AD +:1018B00043C0253009F442C02091E80023FD40C018 +:1018C0002091E80022FD32C02091E80020FFE9CFFE +:1018D0004091F3002091F20030E0342BFC01CF0165 +:1018E0006115710559F02830310540F481918093DC +:1018F000F100615071092F5F3F4FF1CF41E0283077 +:10190000310509F040E02091E8002E772093E800AF +:10191000C8CF4111C9CF0AC08091F101882361F07D +:10192000853061F08091E80083FD0AC08091E80075 +:1019300082FFF2CF80E0089582E0089583E0089569 +:1019400081E008952091F8013091F90126173707B9 +:1019500048F06115710539F42091E8002E77209345 +:10196000E80001C0B901FC0120E06115710591F1A9 +:101970008091F101882309F440C0853009F43FC00B +:101980008091E80083FD3DC08091E80082FD2FC07A +:101990008091E80080FFE9CF2091F3008091F20070 +:1019A00090E0922B6115710559F08830910540F453 +:1019B00024912093F1003196615071090196F2CF84 +:1019C00021E0089709F020E08091E8008E7780936D +:1019D000E800CBCF2111CCCF0AC08091F101882340 +:1019E00061F0853061F08091E80083FD0AC080914C +:1019F000E80082FFF2CF80E0089582E0089583E05E +:101A0000089581E00895982F973058F59093E90054 +:101A1000981739F07091EC002091ED005091F00092 +:101A200003C0242F762F50E021FF19C03091EB0026 +:101A30003E7F3093EB003091ED003D7F3093ED0021 +:101A40003091EB0031603093EB007093EC00209309 +:101A5000ED005093F0002091EE0027FF07C09F5F3C +:101A6000D3CF8F708093E90081E0089580E00895DE +:101A70008091F20187FF11C08091E80082FD05C0CE +:101A80008091F1018111F8CF11C08091E8008B772E +:101A90000BC08091F101882349F08091E80080FF1C +:101AA000F8CF8091E8008E778093E8000895209128 +:101AB000E4003091E50095E64091EC00842F8170C0 +:101AC00040FF22C08091E80080FD1CC08091F101A0 +:101AD000882391F0853091F08091EB0085FD10C056 +:101AE0004091E4005091E5004217530729F39A0111 +:101AF000915011F784E0089582E0089583E00895FD +:101B000081E0089580E008954091E80042FFDECF33 +:101B100008950E94F70D0E94FF0DE0EEF0E0808135 +:101B200081608083E8EDF0E080818F77808319BC4D +:101B3000A7EDB0E08C918E7F8C9380818F7E808327 +:101B40001092F00108950F931F93CF93DF930E949B +:101B5000F70D0E94FF0DC8EDD0E088818F77888354 +:101B600088818068888388818F7D888319BC1092E2 +:101B7000F1011092ED011092EF011092EE0100EED2 +:101B800010E0F80180818B7F808388818160888369 +:101B900042E060E080E00E94030DE1EEF0E0808131 +:101BA0008E7F8083E2EEF0E080818160808380819F +:101BB00088608083F80180818E7F80838881806146 +:101BC0008883DF91CF911F910F910895E8EDF0E0A8 +:101BD00080818F7E8083E7EDF0E08081816080836B +:101BE00084E082BF81E08093F0010C94A30DE8EDC6 +:101BF000F0E080818E7F80831092E2000895109241 +:101C0000DA001092E10008951F920F920FB60F9222 +:101C100011242F933F934F935F936F937F938F93F1 +:101C20009F93AF93BF93EF93FF938091E10082FF67 +:101C30000BC08091E20082FF07C08091E1008B7FA2 +:101C40008093E1000E946B108091DA0080FF1FC03A +:101C50008091D80080FF1BC08091DA008E7F809336 +:101C6000DA008091D90080FF0DC080E189BD82E15A +:101C700089BD09B400FEFDCF81E08093F1010E948F +:101C8000660A05C019BC1092F1010E94740A809185 +:101C9000E10080FF19C08091E20080FF15C08091B3 +:101CA000E2008E7F8093E2008091E2008061809369 +:101CB000E2008091D80080628093D80019BC85E052 +:101CC0008093F1010E94780A8091E10084FF30C086 +:101CD0008091E20084FF2CC080E189BD82E189BD52 +:101CE00009B400FEFDCF8091D8008F7D8093D8008D +:101CF0008091E1008F7E8093E1008091E2008F7EF1 +:101D00008093E2008091E20081608093E200809104 +:101D1000ED01882311F084E007C08091E30087FD86 +:101D200002C081E001C083E08093F1010E947A0A41 +:101D30008091E10083FF29C08091E20083FF25C0EC +:101D40008091E100877F8093E10082E08093F10140 +:101D50001092ED018091E1008E7F8093E1008091EF +:101D6000E2008E7F8093E2008091E20080618093A8 +:101D7000E20042E060E080E00E94030D8091F0000C +:101D800088608093F0000E94770AFF91EF91BF91E5 +:101D9000AF919F918F917F916F915F914F913F9103 +:101DA0002F910F900FBE0F901F9018951F920F92BA +:101DB0000FB60F9211242F933F934F935F936F931E +:101DC0007F938F939F93AF93BF93CF93DF93EF93C3 +:101DD000FF93C091E900CF708091EC00D82FD170B3 +:101DE00080FDD0E81092E9008091F000877F809319 +:101DF000F00078940E941A0F1092E9008091F00090 +:101E000088608093F000CD2BCF70C093E900FF91E4 +:101E1000EF91DF91CF91BF91AF919F918F917F9182 +:101E20006F915F914F913F912F910F900FBE0F9047 +:101E30001F9018951F93CF93DF93CDB7DEB7AA9766 +:101E40000FB6F894DEBF0FBECDBFE2EFF1E088E041 +:101E50008E0F9091F10091938E13FBCF0E94960A02 +:101E60008091E80083FF1FC18091F2019091F301FE +:101E7000492F50E04A30510508F015C1FA01EA5ADD +:101E8000FF4F0C945524803881F0823809F00BC143 +:101E90008091F6018F708093E9008091EB0085FBC3 +:101EA000882780F91092E90006C08091EE01909198 +:101EB000EF01911182609091E800977F9093E80084 +:101EC0008093F1001092F100C8C0282F2D7F09F0F7 +:101ED000EAC0882319F0823061F0E5C08091F401F6 +:101EE000813009F0E0C0933009F080E08093EF0189 +:101EF0002BC08091F401811127C08091F6018F7071 +:101F000009F4D1C08093E9002091EB0020FF1CC0B0 +:101F1000933021F48091EB00806214C09091EB002B +:101F200090619093EB0021E030E0A90102C0440FE2 +:101F3000551F8A95E2F74093EA001092EA008091DB +:101F4000EB0088608093EB001092E9008091E8003C +:101F5000877F86C08111A7C01091F4011F778091FF +:101F6000E3008078812B8093E3008091E800877FF5 +:101F70008093E8000E94380D8091E80080FFFCCF3C +:101F80008091E30080688093E300111102C082E039 +:101F900001C083E08093F10186C08058823008F050 +:101FA00082C08091F4019091F5018C3D53E095073A +:101FB00079F583E08A838AE289834FB7F894DE015A +:101FC000139620E03EE051E2E32FF0E050935700FB +:101FD000E49120FF03C0E295EF703F5FEF708E2F1A +:101FE00090E0EA3010F0C79601C0C0968D939D93A3 +:101FF0002F5F243149F74FBF8091E800877F80939E +:10200000E8006AE270E0CE0101960E943F0C14C025 +:10201000AE014F5F5F4F6091F6010E94860BBC01DD +:10202000009709F440C09091E800977F9093E800F2 +:1020300089819A810E94A20C8091E8008B7780931D +:10204000E80031C0803879F58091E800877F80937F +:10205000E8008091ED018093F1008091E8008E7797 +:102060008093E8000E94380D1EC081111CC0909121 +:10207000F4019230C0F48091E800877F8093E800FB +:102080009093ED010E94380D8091ED01811106C001 +:102090008091E30087FD02C081E001C084E080936D +:1020A000F1010E94820A8091E80083FF0AC08091BA +:1020B000E800877F8093E8008091EB008062809346 +:1020C000EB00AA960FB6F894DEBF0FBECDBFDF912E +:1020D000CF911F9108950895CF938091F1018823A6 +:1020E000A1F0C091E900CF709091EC00892F817030 +:1020F00090FD80E8C82B1092E9008091E80083FDF4 +:102100000E941A0FCF70C093E900CF910895909369 +:102110007501809374010895E0917401F091750147 +:10212000309721F00190F081E02D099480E008952E +:10213000E0917401F0917501309721F00280F381F4 +:10214000E02D09940895E0917401F09175013097A4 +:1021500021F00480F581E02D099408952091720109 +:10216000309173018217930771F0909373018093FC +:102170007201E0917401F0917501309721F00680B1 +:10218000F781E02D0994089520917001309171013B +:102190008217930771F09093710180937001E09121 +:1021A0007401F0917501309721F00084F185E02DE4 +:1021B0000994089508950C94DA100E94341C0E942A +:1021C00087030C94F61C9F92AF92BF92CF92DF923E +:1021D000EF92FF920F931F93CF93DF9300D000D025 +:1021E00000D0CDB7DEB70E949F030DE010E0AA2417 +:1021F000A394B12C902E802F0E948D049801295811 +:102200003E4F6901F901F080F826A1F4015011094F +:1022100088F78FEF89838A831B820E943D1C81602F +:10222000782F9D838C8349815A816B818D810E9497 +:102230007A112FC09091DA0191FF04C08E830E9421 +:1022400093048E8125E030E0A501022E01C0440FE9 +:102250000A94EAF7E42E4F21C1F029839A828E2155 +:1022600091E009F490E09B830E943D1C8160782FEF +:102270009D838C8349815A816B818D810E947A1163 +:10228000F6018081E826E08204C021503109E0F6A1 +:10229000BDCF0E94DD1F109176010E948C1018178F +:1022A000B9F00E948C108093760126960FB6F894B0 +:1022B000DEBF0FBECDBFDF91CF911F910F91FF9079 +:1022C000EF90DF90CF90BF90AF909F900C948509D6 +:1022D00026960FB6F894DEBF0FBECDBFDF91CF912B +:1022E0001F910F91FF90EF90DF90CF90BF90AF9034 +:1022F0009F900895CF93DF93CDB7DEB72B970FB69E +:10230000F894DEBF0FBECDBF4F83588769877A87A9 +:102310008B87DE01119686E0FD0111928A95E9F71F +:1023200085E0FE01379601900D928A95E1F749818B +:102330005A816B817C818D819E810E94C3172B966F +:102340000FB6F894DEBF0FBECDBFDF91CF910895D9 +:10235000CF93882309F4C2C0C82F823859F40E9451 +:102360008C1081FDBBC089E30E949D1A0E946A1BEC +:1023700089E30CC0833879F40E948C1080FDAEC0D4 +:1023800083E50E949D1A0E946A1B83E50E94DF1A62 +:10239000CF910C946A1B843859F40E948C1082FDF2 +:1023A0009DC087E40E949D1A0E946A1B87E4EECFBD +:1023B0008CEF8C0F813A48F48C2F0E9420228111DF +:1023C0008DC08C2F0E949D1AE3CF80E28C0F883045 +:1023D00048F4C77081E001C0880FCA95EAF70E94EF +:1023E000231BD6CF8BE58C0F833078F4C53A29F0C8 +:1023F000C63A31F083E890E005C081E890E002C081 +:1024000082E890E0CF910C94AE1088E58C0F833178 +:1024100008F064C0C83A39F1C93A41F1CA3A49F101 +:10242000CB3A51F1CC3A59F1CD3A61F1C03B69F167 +:10243000CE3A71F1CF3A79F1C13B81F1C23B89F1DA +:10244000C33B91F1C43B99F1C53BA1F1C63BA9F156 +:10245000C73BB1F1C83BB9F1C93BC1F1CA3BC9F1B6 +:1024600080E090E038C082EE90E035C089EE90E0E8 +:1024700032C08AEE90E02FC085EB90E02CC086EB56 +:1024800090E029C087EB90E026C08CEC90E023C060 +:102490008DEC90E020C083E891E01DC08AE891E0D7 +:1024A0001AC082E991E017C084E991E014C081E28A +:1024B00092E011C083E292E00EC084E292E00BC091 +:1024C00085E292E008C086E292E005C087E292E0F1 +:1024D00002C08AE292E0CF910C94C410CF9108958B +:1024E000882309F44BC0823859F40E948C1081FF74 +:1024F00045C089E30E949D1A0E946A1B89E30CC0B3 +:10250000833871F40E948C1080FF38C083E50E94EC +:102510009D1A0E946A1B83E50E94DF1A0C946A1BB5 +:10252000843859F40E948C1082FF28C087E40E94EE +:102530009D1A0E946A1B87E4EFCF9CEF980F913A97 +:1025400058F390E2980F983050F4877091E001C0F2 +:10255000990F8A95EAF7892F0E94291BDFCF9BE507 +:10256000980F933020F480E090E00C94AE10885ADD +:10257000833120F480E090E00C94C4100895882307 +:1025800021F00E94231B0C946A1B0895882321F0DC +:102590000E94291B0C946A1B08957F928F929F9230 +:1025A000AF92BF92CF92DF92EF92FF920F931F9361 +:1025B000CF93DF931F92CDB7DEB77C01C62E772E67 +:1025C000FC01058102950F70128111110E94401BC0 +:1025D0000E94961A882379F0112369F080E28C0D0D +:1025E000883048F082E00E947F1A0E94961A91E09B +:1025F000D82ED92601C0D12CE72DE295EF70F0E05E +:10260000E05AFF4F0C945524872D807F072D0F70C3 +:10261000882311F00295007F112389F0002309F42B +:1026200090C180E28C0D883020F4802F0E94231B03 +:1026300003C0802F0E94331B0E946A1B82C18C2D15 +:102640000E947012002309F495C180E28C0D88303D +:1026500020F4802F0E94291B03C0802F0E94391B69 +:102660000E946A1B87C1972D907F872D8F709032B3 +:1026700011F08295807FCC2021F0F1E0CF16B1F0EF +:102680001EC0112349F0002309F414C1013009F0E0 +:1026900011C10E94531B6EC1002319F0013009F4CF +:1026A00069C189830E94561B89810AC1112321F0C7 +:1026B000023008F05FC1FEC001115CC101C11123ED +:1026C00021F0002309F4F6C03CC1002309F4F8C04E +:1026D0003EC1872D86958695837090E0009719F00E +:1026E000019761F047C1112321F08C2D972D937034 +:1026F00002C080E090E00E94AE103CC1112321F0A6 +:102700008C2D972D937002C080E090E00E94C41041 +:1027100031C18C2D112319F00E94E51E02C00E94C8 +:102720004D1F0E94D21F26C1872D837009F052C011 +:10273000111120C18C2D829586958770880F880F86 +:102740009C2D9F70892E912CA12CB12C082E04C099 +:10275000880C991CAA1CBB1C0A94D2F7C4FE14C096 +:102760000FE010E020E030E0B901A80104C0440F00 +:10277000551F661F771F8A95D2F7CB01BA01609566 +:1027800070958095909503C060E070E0CB01272D97 +:1027900026952695237030E02230310569F02330EC +:1027A000310589F0682979298A299B292130310549 +:1027B00071F00E940B19DEC0682979298A299B29AA +:1027C0000E942719D7C00E940B19C501B4010E94AD +:1027D000EF18D0C0112319F0872D817001C08695A4 +:1027E000882309F4C7C08C2D829586958770880F41 +:1027F000880F9C2D9F70892E912CA12CB12C082E16 +:1028000004C0880C991CAA1CBB1C0A94D2F7C4FEF5 +:1028100014C00FE010E020E030E0B901A80104C0CE +:10282000440F551F661F771F8A95D2F7CB01BA0157 +:10283000609570958095909503C060E070E0CB0145 +:10284000272D269526952370422F50E042305105C2 +:1028500069F04330510589F0682979298A299B2933 +:102860004130510571F00E94E51984C06829792929 +:102870008A299B290E94011A7DC00E94E519C50181 +:10288000B4010E94C91976C08C2D90E0FC01E05E75 +:10289000F109E531F10508F050C0E059FF4F0C9403 +:1028A00055240C2D0F70872D8F71112331F00E944C +:1028B0006219802F0E94BF125DC00E948319802F71 +:1028C0000E94C61257C0112339F0011153C0872D41 +:1028D0008F710E94A8194EC0023008F04BC0F7CF8C +:1028E000112339F0872D8F710E94621943C0112383 +:1028F000C9F3872D8F710E9483193CC0112329F0E1 +:10290000872D8F710E944D1935C00E94431932C026 +:10291000112351F0172D1F71812F0E94621963E05E +:10292000812F0E94761A26C081E00E947F1A023011 +:1029300008F182E00E947F1A1DC0112331F00023AC +:1029400089F28C2D0E94A81115C0002391F28C2DC4 +:102950000E9470120FC0472D4F706C2DC7010E944E +:10296000A9050E94671806C0472D4F706C2DC7013E +:102970000E949406DD20F9F00E94721A80FD1BC0AF +:10298000F70112820E946C1A0E946219C7010E940C +:10299000EA140E946C1A0F90DF91CF911F910F9152 +:1029A000FF90EF90DF90CF90BF90AF909F908F906F +:1029B0007F900C9483190F90DF91CF911F910F910D +:1029C000FF90EF90DF90CF90BF90AF909F908F904F +:1029D0007F9008950F931F93CF93DF93EC0188812D +:1029E00099812B813C81232BB9F09F3F11F48F3FBC +:1029F00099F0CE010E94EC05882371F068817981FD +:102A00008A810E94681A8C010E941D1A0E94E41893 +:102A1000B801CE010E94CD12DF91CF911F910F918D +:102A200008950E94401B0E94501B0E94151B0E948B +:102A30006A1B0E9483200E94D21F80E090E00E94C7 +:102A4000AE1080E090E00C94C4100E94301B0C94F7 +:102A500011150E945D1A292F22952F7030E02C301D +:102A600031054CF42A3031056CF422503109223002 +:102A70003105A8F407C02C30310569F02F3031053D +:102A800051F00DC0803F69F018F4803E40F409C059 +:102A9000843F29F406C093FB882780F9089580E0DD +:102AA000089581E00895CF93DF9300D000D01F9266 +:102AB000CDB7DEB70F900F900F900F900F90DF9172 +:102AC000CF910895CF93DF9300D000D000D0CDB741 +:102AD000DEB726960FB6F894DEBF0FBECDBFDF91EE +:102AE000CF9108951F93CF93DF93C091850116E096 +:102AF00080918601C81799F0D0E01C9FF0011D9FBE +:102B0000F00D1124E957FE4F40815181628173819C +:102B1000848195810E9462152196C770E9CFDF916B +:102B2000CF911F9108954091B7015091B8016091E4 +:102B3000B9017091BA018091BB019091BC010C94D4 +:102B400062158091BC0182958F7009F054C080910C +:102B5000B901882309F44FC080918501A0918601B5 +:102B60006091B7017091B8014091BA015091BB01D9 +:102B7000B6E08A1709F43FC090E041155105C1F154 +:102B80007F3F11F46F3FA1F1B89FF001B99FF00DA5 +:102B90001124E957FE4F218172132AC0208162134C +:102BA00027C02281211124C02381348124173507B5 +:102BB00010F421503109241B350B283C3105C0F499 +:102BC0002091BC012F7020612093BC0126E0289F3A +:102BD000F001299FF00D1124E457FE4F80818F7082 +:102BE0008061808387EB91E00E94EA140C94721557 +:102BF00001968770BECF0895CF92DF92EF92FF9239 +:102C00000F931F93CF93DF93CDB7DEB762970FB6C5 +:102C1000F894DEBF0FBECDBF8C0185E0F801DE0168 +:102C20001D9601900D928A95E1F7D8014C9111966D +:102C30005C91119712966C9112971396CD90DC903F +:102C400014973091B7017091B8018091BA019091B9 +:102C5000BB01009709F46BC17F3F19F43F3F09F4B2 +:102C600066C1E090B901EE2009F4C0C02091BC011A +:102C7000C816D90628F0F601E81BF90BCF0104C0ED +:102C8000809590958C0D9D1DFF24F394883C9105B3 +:102C900078F0F12C207F09F0C6C07C2DD98AC88A33 +:102CA00089890E94531587EB91E00E94EA14B1C014 +:102CB000822F807F09F046C0751314C0341312C0F0 +:102CC000611110C02F7020612093BC010E949315E8 +:102CD00087EB91E00E94EA148091BC01D80115961F +:102CE0008C932EC0CD2819F15F3F11F44F3FF9F0BE +:102CF000F62E61111CC0809185012091860136E07D +:102D0000821709F45AC090E0389FF001399FF00D06 +:102D10001124E957FE4F7181571306C07081471384 +:102D200003C07281711103C001968770E9CFF62E3E +:102D3000662309F418C18091BC0181608093BC01B5 +:102D4000F12C11C1751308C0341306C0611104C001 +:102D50008091BC01D801C3C04D875E878D859E855B +:102D60006A8B0E9429156A898823E1F16623D1F1D3 +:102D70002091BC01822F82958F7090E0029774F0B1 +:102D80008091B7019091B80198878F831986DB866F +:102D9000CA862C87CE0107960E94EA1486E0F801C5 +:102DA000A7EBB1E001900D928A95E1F70E94A11581 +:102DB0000E949315FF24F394D6C04D875E878D85BE +:102DC0009E850E945D1A292F22952F7030E02230B7 +:102DD00031050CF0BCC09F7009F0B6C0805E883031 +:102DE00008F4C1C0C8010E94EA14E4CFC816D9068D +:102DF00008F453C0F601E81BF90BCF01883C91059C +:102E000008F450C0F12C7C2DD98AC88A89890E9487 +:102E10005315E7EBF1E086E0DF011D928A95E9F7B3 +:102E20000E949315A0C0751314C0341312C0611111 +:102E300010C08091BC01F8018583C8010E94EA148A +:102E400086E0E7EBF1E0DF011D928A95E9F7FE2CC1 +:102E50008AC04D875E878D859E856A8B0E94291565 +:102E60006A89882309F4BECF662309F4BBCF209179 +:102E7000BC01822F82958F7090E002970CF48ECF68 +:102E80008091B7019091B8019A8389831B82DD827A +:102E9000CC822E83CE0101967FCF809590958C0DAC +:102EA0009D1DACCFF62E662309F49CCF75132EC062 +:102EB00034132CC02091BC0120FD1FC0822F8295AD +:102EC0008F70D9F0D80115962C9315978F3049F053 +:102ED0008F5F982F9295907F822F8F70892B1596F8 +:102EE0008C93C8010E94EA1486E0F801A7EBB1E0D8 +:102EF00001900D928A95E1F793CF86E0F801A7EB58 +:102F0000B1E001900D928A95E1F72DC04D875E8763 +:102F10008D859E850E942915811140CF8091BC012D +:102F200081608093BC01C8010E94EA141CC0662322 +:102F300009F458CF4D875E878D859E850E9429159F +:102F4000882309F44FCF2ACF811148CF0CC02430F9 +:102F500031050CF047CF9F7009F440CFF8019581FF +:102F6000907F09F03BCF8F2D62960FB6F894DEBFAD +:102F70000FBECDBFDF91CF911F910F91FF90EF90CA +:102F8000DF90CF9008951F93CF93DF93CDB7DEB737 +:102F90002C970FB6F894DEBF0FBECDBF4F83588776 +:102FA00069877A878B879C87CE0107960E94FC15DC +:102FB000882369F08F8198852A853B85232BF1F141 +:102FC0009F3F09F063C08F3F09F060C037C086E0C3 +:102FD000FE013796DE01119601900D928A95E1F778 +:102FE0006F817885EA85FB85309741F17F3F11F449 +:102FF0006F3F21F12091860130E0C9010196877071 +:1030000099274091850150E08417950709F447C03E +:1030100069837A83FD83EC8396E0929FD001939F2E +:10302000B00D1124A957BE4FFE01319601900D92AB +:103030009A95E1F7809386010E94721516E08091BF +:103040008501909186018917C1F1189FC001112453 +:1030500089579E4F0E94FC15882379F1E0918501E4 +:103060001E9FF0011124E957FE4F4081518162817A +:103070007381848195810E9462158091850190E021 +:1030800001968770992780938501D9CF4F81588504 +:1030900069857A858B859C850E946215CFCF0E94B9 +:1030A00025151092860110928501E7EBF1E086E08C +:1030B000DF011D928A95E9F7C1CF2C960FB6F894DF +:1030C000DEBF0FBECDBFDF91CF911F910895EF926C +:1030D000FF920F931F93CF93DF938C01009709F416 +:1030E0006CC0F12CEE24E394E8012196F801849160 +:1030F000843740F4843008F051C0813081F0823050 +:1031000019F15BC0853709F444C0A8F19CE7980F1A +:10311000903708F052C08F770E94701241C00E5F46 +:103120001F4FFE01C49180E28C0F883048F4C770B5 +:103130008E2D01C0880FCA95EAF70E94431B14C068 +:103140008C2F0E94A8112DC00E5F1F4FFE01C4914D +:1031500080E28C0F883058F4C7708E2D01C0880F24 +:10316000CA95EAF70E94491B0E946A1B1AC08C2F5D +:103170000E94701216C00E5F1F4FFE01C491CC2337 +:1031800081F08FE99FE00197F1F700C00000C15086 +:10319000F6CF0E5F1F4FFE01F49003C00E94A811EE +:1031A0008E018F2D882309F49FCFEFE9FFE031973F +:1031B000F1F700C000008150F5CFDF91CF911F9152 +:1031C0000F91FF90EF90089508956093C10170935F +:1031D000C2018093C3019093C4010C9411150F9305 +:1031E0001F930091C1011091C2012091C301309140 +:1031F000C401DC01CB01802B912BA22BB32B80933C +:10320000C1019093C201A093C301B093C4011F9167 +:103210000F910C9411150F931F930091C101109100 +:10322000C2012091C3013091C401DC01CB01802394 +:103230009123A223B3238093C1019093C201A09351 +:10324000C301B093C4011F910F910C9411150F93FA +:103250001F930091C1011091C2012091C3013091CF +:10326000C401DC01CB0180279127A227B3278093DB +:10327000C1019093C201A093C301B093C4011F91F7 +:103280000F910C9411151092BD011092BE01109275 +:10329000BF011092C0010C94111541E050E060E0B4 +:1032A00070E004C0440F551F661F771F8A95D2F740 +:1032B0004093BD015093BE016093BF017093C00164 +:1032C0000C94111541E050E060E070E004C0440F40 +:1032D000551F661F771F8A95D2F78091BD01909187 +:1032E000BE01A091BF01B091C001482B592B6A2BA0 +:1032F0007B2B4093BD015093BE016093BF0170933F +:10330000C0010C94111541E050E060E070E004C091 +:10331000440F551F661F771F8A95D2F74095509529 +:10332000609570958091BD019091BE01A091BF0103 +:10333000B091C001482359236A237B234093BD01E8 +:103340005093BE016093BF017093C0010C9411159E +:1033500041E050E060E070E004C0440F551F661F7C +:10336000771F8A95D2F78091BD019091BE01A091FF +:10337000BF01B091C001482759276A277B27409396 +:10338000BD015093BE016093BF017093C0010C94C6 +:1033900011150F931F930091BD011091BE01209153 +:1033A000BF013091C001DC01CB01802B912BA22BFE +:1033B000B32B8093BD019093BE01A093BF01B09346 +:1033C000C0011F910F910C9411150F931F93009141 +:1033D000BD011091BE012091BF013091C001DC01FF +:1033E000CB0180239123A223B3238093BD0190932B +:1033F000BE01A093BF01B093C0011F910F910C9427 +:1034000011150F931F930091BD011091BE012091E2 +:10341000BF013091C001DC01CB0180279127A22799 +:10342000B3278093BD019093BE01A093BF01B093D9 +:10343000C0011F910F910C9411150895CF92DF9246 +:10344000EF92FF920F931F93CF93DF938C01C09065 +:10345000C101D090C201E090C301F090C4018091FD +:10346000BD019091BE01A091BF01B091C001C82AD9 +:10347000D92AEA2AFB2ACFE1D0E0D701C6010C2ED7 +:1034800004C0B695A795979587950A94D2F780FFC3 +:1034900006C0B8018C2F0E94EA08019721F42197F9 +:1034A00060F780E001C08C2FDF91CF911F910F91C9 +:1034B000FF90EF90DF90CF900895CF93DF93EC01D2 +:1034C0000E941E1ABE010E94EA08DF91CF91089562 +:1034D000CB010E945D1A08958091C501859585955F +:1034E000859508958091C5018770089598E0899F1A +:1034F00090011124262B2093C5010C946219209170 +:10350000C501809582238093C501982F977069F437 +:1035100030E0482F552747FD50952417350729F0EF +:103520008595859585950C94831908959091C5018D +:10353000977081E009F480E0089590910C0199233F +:1035400021F090910D01911109C020910E0130914F +:103550000F01F90132969FEF40E01FC0982F96951A +:10356000969596959F3050F5E0910E01F0910F01E0 +:10357000E90FF11D877021E030E0A90102C0440F7E +:10358000551F8A95E2F7CA019181892B818308959D +:103590009F3F39F04F5F4E3041F051915813F8CFB3 +:1035A0000DC05111F7CF942FF5CF9F3F39F0F9019E +:1035B000E90FF11D97FDFA95828308950895909182 +:1035C0000C01992321F090910D01911109C02091D6 +:1035D0000E0130910F01F9013296205F3F4F1FC05D +:1035E000982F9695969596959F30F0F4E0910E0160 +:1035F000F0910F01E90FF11D877021E030E0A90182 +:1036000002C0440F551F8A95E2F7CA018095918147 +:103610008923818308953196E217F30729F0908179 +:103620009813F9CF1082F7CF089581E090E0E091F0 +:103630000E01F0910F01E80FF91F10820196803101 +:103640009105A9F708959091D901892B8093D9010B +:10365000089580959091D90189238093D901089587 +:103660001092D90108959091D801892B8093D801A7 +:10367000089580959091D80189238093D801089569 +:103680001092D80108959091D701892B8093D7018A +:10369000089580959091D70189238093D70108954B +:1036A0001092D70108958093C60108951092C60123 +:1036B000089580910E0190910F01FC0131969C01BB +:1036C000205F3F4F80E0919191118F5FE217F307E8 +:1036D000D1F70895E0910E01F0910F018091D90189 +:1036E0008083E0910E01F0910F0190818091D801CB +:1036F000892B8083E0910E01F0910F0190818091E0 +:10370000D701892B80838091C601882361F0E091E5 +:103710000E01F0910F019081892B80830E94591B2B +:1037200081111092C60180910E0190910F010C94AD +:10373000981020E0009739F0AC01415051098423E2 +:1037400095232F5FF7CF822F0895CF92DF92EF92CC +:10375000FF926C01EE24FF24C114D104E104F104B2 +:1037600021F0C701B60120E101C020E0C72ED82E0C +:10377000E92EFF24C114D104E104F10419F0285FFB +:10378000C701B6016B017C0154E0F694E794D7942D +:10379000C7945A95D1F7C114D104E104F10419F08A +:1037A0002C5FC701B6016B017C0142E0F694E794FF +:1037B000D794C7944A95D1F7C114D104E104F10418 +:1037C00019F02E5FC701B601DC01CB01B695A795B4 +:1037D00097958795892B8A2B8B2B09F02F5F822F4A +:1037E000FF90EF90DF90CF9008958091F1018430A9 +:1037F00021F11092DB0120E488E190E00FB6F8940B +:10380000A895809360000FBE2093600080E00E9426 +:10381000850983B7817F846083BF83B7816083BF5D +:103820007894889583B78E7F83BF88E10FB6F8942C +:1038300080936000109260000FBE0895089508956F +:103840000E941E1C0E949F030E941F1C0E94940441 +:1038500091E0811101C090E0892F08950E94251503 +:103860000E948C100C94850982E084BD93E095BD84 +:103870009AEF97BD80936E0008952FB7F8948091CA +:10388000DC019091DD01A091DE01B091DF012FBF3D +:103890000895CF92DF92EF92FF920F931F932FB76D +:1038A000F8944091DC015091DD016091DE0170914E +:1038B000DF012FBF6A017B01EE24FF248C0120E091 +:1038C00030E0C016D106E206F30610F4415051096B +:1038D0009A01281B390BC9011F910F91FF90EF909E +:1038E000DF90CF9008951F920F920FB60F92112480 +:1038F0008F939F93AF93BF938091DC019091DD01F3 +:10390000A091DE01B091DF010196A11DB11D809350 +:10391000DC019093DD01A093DE01B093DF01BF9144 +:10392000AF919F918F910F900FBE0F901F901895A0 +:103930000E94890DF8942FEF87EA91E6215080408C +:103940009040E1F700C0000087E090EBDC0180933D +:10395000FB019093FC01A093FD01B093FE019CE05C +:1039600088E10FB6F894A895809360000FBE9093FD +:103970006000FFCFEF92FF920F931F93CF93DF93DF +:10398000D82FCDE08C2F0E948D0405E010E0E82EAA +:10399000F12CC701002E02C0959587950A94E2F795 +:1039A00080FF09C0602F7C2F80E00E949506D8130D +:1039B00002C081E006C00150110958F7C15010F74C +:1039C00080E0DF91CF911F910F91FF90EF900895CC +:1039D000CF93C82F8CE20E94BA1C882321F08C2F31 +:1039E000CF910C94BA1C80E0CF910895CF930E94A0 +:1039F0003D1E811102C00E94231EC5E6C15049F040 +:103A00000E949F038FE39CE90197F1F700C000003B +:103A1000F5CF89E20E94E81C811113C18AE20E945D +:103A2000E81C81110E94231E85E00E94E81C811180 +:103A30000E94981C0E94481E8093DA0187E00E9431 +:103A4000E81C8823A9F18BE10E94E81C882351F02F +:103A50008091DA0181FB222720F991E0922790FBE7 +:103A600081F90EC08EE00E94E81C882361F08091ED +:103A7000DA0182FB222720F991E0922790FB82F95C +:103A80008093DA0115C080E10E94E81C9091DA0170 +:103A9000882341F093FB222720F981E0822780FBD5 +:103AA00093F904C0892F809580FB90F99093DA01F7 +:103AB0008091DA010E944C1E0E945A1E8093FA01E6 +:103AC00080EE0E94E81C882341F08091FA01982F33 +:103AD000909590FB80F98093FA0189E30E94E81C9D +:103AE000882359F08091FA0181FB222720F991E087 +:103AF000922790FB81F98093FA0182EE0E94E81CE4 +:103B0000882359F08091FA0182FB222720F991E065 +:103B1000922790FB82F98093FA0186EE0E94E81CBE +:103B2000882359F08091FA0183FB222720F991E044 +:103B3000922790FB83F98093FA0183EE0E94E81CA0 +:103B4000882359F08091FA0184FB222720F991E023 +:103B5000922790FB84F98093FA0185E30E94E81C88 +:103B6000882359F08091FA0185FB222720F991E002 +:103B7000922790FB85F98093FA0181E30E94E81C6B +:103B8000882359F08091FA0186FB222720F991E0E1 +:103B9000922790FB86F98093FA0181E10E94E81C4C +:103BA000882359F08091FA0187FB222720F991E0C0 +:103BB000922790FB87F98093FA018091FA010E9485 +:103BC0005E1E8091FA0187FB882780F980930D01A2 +:103BD00087E20E94E81CC82F8EE10E94E81C811138 +:103BE000C2608FE10E94E81C8111C46080E20E94E3 +:103BF000E81C8111C86081E20E94E81C8111C0614B +:103C000082E20E94E81C8111C06283E20E94E81CEB +:103C10008111C06484E20E94E81C882311F0C0680E +:103C200002C0CC2329F08C2F0E94551E6C2F03C09C +:103C30000E94511E682F70E080E090E0CF910C94BC +:103C4000E518CF9108956DEE7EEF80E090E00E9440 +:103C50008F2460E082E090E00E947D2460E083E0B9 +:103C600090E00E947D2460E084E090E00E947D244A +:103C700060E085E090E00C947D2480E090E00E947C +:103C8000772421E08D3E9E4F09F020E0822F089599 +:103C900082E090E00C946F24682F82E090E00C9416 +:103CA0007D2483E090E00C946F24682F83E090E003 +:103CB0000C947D2484E090E00C946F24682F84E0C1 +:103CC00090E00C947D248091E20180FF0BC0609114 +:103CD000130185E0689FB00111247595679575956E +:103CE00067952BC081FF09C06091130185E0689F33 +:103CF000B00111247595679520C082FF07C06091BF +:103D0000130185E0689FB001112417C09091E30171 +:103D10009923D1F060911201961788F72091130131 +:103D200085E0289F90011124929FA001939F500D40 +:103D3000112470E0CA010E9441246038710540F4EA +:103D40006115710539F002C065E070E0862F0895B5 +:103D50008FE7089581E008958091E20180FF08C017 +:103D60006091110170E0759567957595679521C013 +:103D700081FF06C06091110170E07595679519C0CB +:103D800082FF04C06091110170E010C09091E301C6 +:103D90009923C1F0609110019617A0F7809111014D +:103DA000899FC001112470E00E9441246038710590 +:103DB00028F46115710521F0862F08958FE7089585 +:103DC00081E0089561E070E0F4CF803F21F40E942B +:103DD000631E819504C0813F29F40E94631E809375 +:103DE000E6010895823F21F40E94631E819504C07C +:103DF000833F29F40E94631E8093E5010895893F63 +:103E000019F40E94AC1E05C08A3F31F40E94AC1E1A +:103E100081958093E70108958B3F21F40E94AC1EA9 +:103E2000819504C08C3F29F40E94AC1E8093E80168 +:103E30000895843F21F48091E401816017C0853F9B +:103E400021F48091E401826011C0863F21F48091C9 +:103E5000E40184600BC0873F21F48091E401886015 +:103E600005C0883F31F48091E40180618093E401D2 +:103E700008958D3F21F48091E20181600BC08E3F57 +:103E800021F48091E201826005C08F3F29F4809186 +:103E9000E20184608093E2010895803F39F48091CB +:103EA000E60187FF6CC01092E60169C0813F29F4EA +:103EB0008091E6011816BCF362C09091E501823F43 +:103EC00029F497FF5CC01092E50159C0833F19F4B3 +:103ED0001916CCF354C0893F41F48091E7011816BC +:103EE0000CF04DC01092E7014AC08A3F29F480913E +:103EF000E70187FF44C0F6CF8B3F39F48091E8019A +:103F000087FF3DC01092E8013AC08C3F29F48091B0 +:103F1000E8011816BCF333C0843F21F48091E4011A +:103F20008E7F17C0853F21F48091E4018D7F11C001 +:103F3000863F21F48091E4018B7F0BC0873F21F401 +:103F40008091E401877F05C0883F31F48091E401CE +:103F50008F7E8093E40113C08D3F21F48091E201B4 +:103F60008E7F0BC08E3F21F48091E2018D7F05C0D2 +:103F70008F3F29F48091E2018B7F8093E201809151 +:103F8000E50181110EC08091E60181110AC0809186 +:103F9000E701811106C08091E801811102C01092F1 +:103FA000E301089584EE91E00E94A3100E943D1C5D +:103FB0009093E1018093E00108951F93CF93DF93E5 +:103FC0008091E0019091E1010E94491CAC01909127 +:103FD000E301992321F02091140130E006C02091E3 +:103FE00015018AE0289F900111244217530708F415 +:103FF00086C08091E501C091E601D091E701109162 +:10400000E801811107C0C11176C0D11174C011112E +:1040100072C075C09F3F19F09F5F9093E30118161F +:1040200024F40E94631E8093E5018091E50187FFDF +:1040300005C00E94631E81958093E5011C1624F43F +:104040000E94631E8093E6018091E60187FF05C010 +:104050000E94631E81958093E6016091E5016623CD +:1040600039F1C091E601CC2319F1772767FD7095EE +:10407000872F972F0E94522323E333E343E35FE329 +:104080000E94B6230E941F236093E5016C2F7727BF +:1040900067FD7095872F972F0E94522323E333E308 +:1040A00043E35FE30E94B6230E941F236093E6016F +:1040B0001D1624F40E94AC1E8093E7018091E70155 +:1040C00087FF05C00E94AC1E81958093E701111601 +:1040D00024F40E94AC1E8093E8018091E80187FFE0 +:1040E00005C00E94AC1E81958093E801DF91CF91BD +:1040F0001F910C94D21F9F3F09F08ECF96CFDF9176 +:10410000CF911F910895E4EEF1E085E0DF011D926B +:104110008A95E9F71092E3011092E2010895833045 +:1041200081F128F4813059F08230D1F00895853042 +:1041300009F449C0B8F1863009F456C00895809159 +:104140001501262F30E0280F311D2F3F310524F4B3 +:10415000680F6093150108958FEF809315010895FE +:1041600080911401262F30E0280F311D2F3F31059B +:1041700024F4680F6093140108958FEF8093140165 +:10418000089580911301262F30E0280F311D2F3F15 +:10419000310524F4680F6093130108958FEF809325 +:1041A0001301089580911201262F30E0280F311D50 +:1041B0002F3F310524F4680F6093120108958FEFAB +:1041C00080931201089580911101262F30E0280F6D +:1041D000311D2F3F310524F4680F609311010895BC +:1041E0008FEF80931101089580911001262F30E008 +:1041F000280F311D2F3F310524F4680F6093100103 +:1042000008958FEF809310010895833011F128F401 +:10421000813049F0823091F00895853081F120F1AC +:104220008630C1F1089580911501681720F4861B2E +:10423000809315010895109215010895809114013D +:10424000681720F4861B80931401089510921401BE +:10425000089580911301681720F4861B8093130141 +:10426000089510921301089580911201681720F4A7 +:10427000861B809312010895109212010895809177 +:104280001101681720F4861B809311010895109284 +:104290001101089580911001681720F4861B809306 +:1042A000100108951092100108950F931F938D31FE +:1042B00009F46BC008F03FC08E3009F47FC0C0F431 +:1042C000873009F469C068F4863009F0B1C0809184 +:1042D000DA01817F8E7F8093DA0181E08093EA01A9 +:1042E000A8C0883009F4A2C08B3009F49FC0A0C0D8 +:1042F000863109F49BC078F4803109F472C08131B1 +:1043000009F096C00E94251590910D0181E0892742 +:1043100080930D018BC0893109F488C08B3109F07D +:1043200087C08091DA0181FB222720F991E0922752 +:1043300090FB81F94CC0853309F470C048F4873292 +:1043400009F46CC008F459C0893209F467C070C020 +:10435000833438F48A3308F04EC0883309F466C0D9 +:1043600067C0833409F45AC0883409F061C00E94E0 +:1043700025150FEF13ED20E3015010402040E1F729 +:1043800000C000000E94981C51C00E94D9220E94C7 +:104390008C100E9485094AC09091DA01892F80957E +:1043A000817080FB90F929F0966098609093DA0113 +:1043B00040C0997F977F9093DA0138C08091DA01ED +:1043C00082FB222720F991E0922790FB82F98093CB +:1043D000DA01992359F18091DA0181608093DA0141 +:1043E00025C08091DA0183FB222720F991E09227F2 +:1043F00090FB83F9ECCF895301C08D5141E050E02F +:1044000060E070E08A019B0104C0000F111F221FB1 +:10441000331F8A95D2F7C901B80104C061E070E08A +:1044200080E090E00E94E5180E94251581E001C01F +:1044300080E01F910F91089580E0089580E0089535 +:10444000CF93C82F8091EA01813079F018F0823043 +:10445000E9F187C0E0910E01F0910F018081813177 +:1044600069F0823209F07FC009C0E0910E01F0913D +:104470000F018081813111F0823261F48C2F0E9412 +:104480001C22811104C08C2F0E9455211DC081E087 +:1044900090E01AC08C2F0E941E22811114C0C431DA +:1044A00079F048F4CB3079F0C03109F060C082E097 +:1044B0008093EA0108C0C93219F0C83321F057C00F +:1044C0001092EA0154C081E0817053C0C93289F171 +:1044D00018F5C43171F1A8F4C73009F046C08AE07C +:1044E0008093150194E19093140193E0909313014C +:1044F0008093120188E08093110188E2809310017B +:1045000034C0CE51C63088F5EC2FF0E0E65DFE4FAA +:1045100080818093E90129C0CE34E9F020F4CB34C6 +:1045200021F56AE013C0C13579F0C235F1F461E0DC +:104530000DC08091E901882319F01092E90115C09E +:1045400081E08093EA0115C061E006C08091E90135 +:104550000E948F200AC06AE08091E9010E94052133 +:1045600004C01092EA0180E004C081E002C080E053 +:10457000ABCFCF910895E1E8F0E08081886080833F +:104580008081816080838FB7F89493E09093890055 +:1045900090ED909388008FBF0895EFE6F0E0808162 +:1045A000826080830895EFE6F0E080818D7F8083D4 +:1045B0000895EFE6F0E0908182E0892780830895F6 +:1045C0001F920F920FB60F9211242F933F934F9388 +:1045D0005F936F937F938F939F93AF93BF93EF936B +:1045E000FF938091EB019091EC0101969093EC0187 +:1045F0008093EB01811103C082E00E948509E09164 +:10460000EC01E695E695F0E0E45AFA4FE4918091EA +:10461000EB018E1303C080E00E948509FF91EF91AA +:10462000BF91AF919F918F917F916F915F914F91CA +:104630003F912F910F900FBE0F901F90189504D0AF +:104640006894B1118DC0089570D088F09F5790F094 +:10465000B92F9927B751A0F0D1F0660F771F881FA7 +:10466000991F1AF0BA95C9F712C0B13081F077D00E +:10467000B1E0089574C0672F782F8827B85F39F0AC +:10468000B93FCCF3869577956795B395D9F73EF406 +:1046900090958095709561957F4F8F4F9F4F0895AE +:1046A000E89409C097FB3EF49095809570956195CC +:1046B0007F4F8F4F9F4F9923A9F0F92F96E9BB2782 +:1046C0009395F695879577956795B795F111F8CFFE +:1046D000FAF4BB0F11F460FF1BC06F5F7F4F8F4F69 +:1046E0009F4F16C0882311F096E911C0772321F05F +:1046F0009EE8872F762F05C0662371F096E8862FF7 +:1047000070E060E02AF09A95660F771F881FDAF74D +:10471000880F9695879597F9089557FD9058440FFF +:10472000551F59F05F3F71F04795880F97FB991F10 +:1047300061F09F3F79F087950895121613061406CD +:10474000551FF2CF4695F1DF08C01616170618065A +:10475000991FF1CF86957105610508940895E89435 +:10476000BB2766277727CB0197F908950BD078C030 +:1047700069D028F06ED018F0952309F05AC05FC0B8 +:104780001124EECFCADFA0F3959FD1F3950F50E02F +:10479000551F629FF001729FBB27F00DB11D639FF3 +:1047A000AA27F00DB11DAA1F649F6627B00DA11D99 +:1047B000661F829F2227B00DA11D621F739FB00D3F +:1047C000A11D621F839FA00D611D221F749F3327AF +:1047D000A00D611D231F849F600D211D822F762F48 +:1047E0006A2F11249F5750408AF0E1F088234AF045 +:1047F000EE0FFF1FBB1F661F771F881F9150504091 +:10480000A9F79E3F510570F014C0AACF5F3FECF3AB +:10481000983EDCF3869577956795B795F795E7957C +:104820009F5FC1F7FE2B880F911D9695879597F98D +:10483000089597F99F6780E870E060E008959FEF22 +:1048400080EC089500240A94161617061806090627 +:10485000089500240A9412161306140605060895F6 +:10486000092E0394000C11F4882352F0BB0F40F47E +:10487000BF2B11F460FF04C06F5F7F4F8F4F9F4FBE +:10488000089597FB072E16F4009407D077FD09D002 +:104890000E945B2407FC05D03EF4909581959F4FC4 +:1048A0000895709561957F4F0895EE0FFF1F059055 +:1048B000F491E02D0994AA1BBB1B51E107C0AA1F6C +:1048C000BB1FA617B70710F0A61BB70B881F991FB1 +:1048D0005A95A9F780959095BC01CD010895F99955 +:1048E000FECF92BD81BDF89A992780B50895A8E1C1 +:1048F000B0E042E050E00C949724262FF999FECFC7 +:1049000092BD81BDF89A019700B4021639F01FBA22 +:1049100020BD0FB6F894FA9AF99A0FBE0895019641 +:10492000272F0E947E240C947D24DC01CB01FC0106 +:10493000F999FECF06C0F2BDE1BDF89A319600B4F8 +:0E4940000D9241505040B8F70895F894FFCF03 +:10494E0002208709150AF209BE098A090101C70169 +:10495E0028080A03140A3F4D36391D05D0049A045F +:10496E006104F4030D0426043F040102030405064A +:04497E00070809001D +:00000001FF diff --git a/keyboards/ergodox_ez/keymaps/twey/keymap.c b/keyboards/ergodox_ez/keymaps/twey/keymap.c new file mode 100644 index 0000000000..019930f2a2 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/twey/keymap.c @@ -0,0 +1,221 @@ +#include "ergodox_ez.h" +#include "debug.h" +#include "action_layer.h" +#include "keymap_plover.h" + +#define BASE 0 // default layer +#define SYMB 1 // symbols +#define STEN 2 // steno +#define MDIA 3 // media keys + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* Keymap 0: Basic layer + * + * ,---------------------------------------------------. ,---------------------------------------------------. + * | = | 1 | 2 | 3 | 4 | 5 | STEN | | NONE | 6 | 7 | 8 | 9 | 0 | \ | + * |--------+------+------+------+-------+-------------| |-------+------+------+------+------+------+--------| + * | Del | ' | , | . | P | Y | Esc | | Caps | F | G | C | R | L | / | + * |--------+------+------+------+-------+------| | | |------+------+------+------+------+--------| + * | BkSp | A | O | E | U | I |------| |-------| D | H | T | N | S | - | + * |--------+------+------+------+-------+------| Tab | | Enter |------+------+------+------+------+--------| + * | LShift | ; | Q | J | K | X | | | | B | M | W | V | Z | RShift | + * `--------+------+------+------+-------+-------------' `--------------+------+------+------+------+--------' + * | L1 | NONE | Grv | Left | Right | | Up | Down | [ | ] | L1 | + * `-----------------------------------' `----------------------------------' + * ,--------------. ,---------------. + * | PgUp | PgDn | | Home | End | + * ,------|-------|------| |-------+-------+------. + * | | | NONE | | AltGr | | | + * | Alt | Enter |------| |-------| Space | Ctrl | + * | | | Supr | | ~MDIA | | | + * `---------------------' `----------------------' + */ +// If it accepts an argument (i.e, is a function), it doesn't need KC_. +// Otherwise, it needs KC_* +[BASE] = KEYMAP( // layer 0 : default + // left hand + KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, M(0), + KC_DELT, KC_QUOT, KC_COMM,KC_DOT, KC_P, KC_Y, KC_ESC, + KC_BSPC, KC_A, KC_O, KC_E, KC_U, KC_I, + KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_TAB, + MO(SYMB), KC_NO, KC_GRV, KC_LEFT,KC_RGHT, + KC_PGUP,KC_PGDN, + KC_NO, + KC_LALT,KC_ENT ,KC_LGUI, + // right hand + KC_NO, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSLS, + KC_CAPS, KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLSH, + KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS, + KC_ENT, KC_B, KC_M, KC_W, KC_V, KC_Z , KC_RSFT, + KC_UP, KC_DOWN,KC_LBRC,KC_RBRC, MO(SYMB), + KC_HOME, KC_END, + KC_RALT, + MO(MDIA),KC_SPC,KC_RCTL + ), +/* 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 +), + +[STEN] = KEYMAP( // layout: layer 2: Steno for Plover + // left hand + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, + KC_NO, PV_NUM, PV_NUM, PV_NUM, PV_NUM, PV_NUM, PV_STAR, + KC_NO, PV_LS, PV_LT, PV_LP, PV_LH, PV_STAR, + KC_NO, PV_LS, PV_LK, PV_LW, PV_LR, PV_STAR, PV_STAR, + KC_TRNS,KC_NO, KC_NO, KC_TRNS, KC_TRNS, + KC_NO, KC_NO, + KC_NO, + PV_A, PV_O, KC_NO, + // right hand + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + PV_STAR, PV_NUM, PV_NUM, PV_NUM, PV_NUM, PV_NUM, PV_NUM, + PV_STAR, PV_RF, PV_RP, PV_RL, PV_RT, PV_RD, + PV_STAR, PV_STAR, PV_RR, PV_RB, PV_RG, PV_RS, PV_RZ, + KC_TRNS, KC_TRNS, KC_NO, KC_NO, KC_TRNS, + KC_NO, KC_NO, + KC_NO, + KC_TRNS,PV_E, PV_U +), + +/* Keymap 3: Media and mouse keys + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | MsUp | | | | | | | Back | | Frwd | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | |MsLeft|MsDown|MsRght| |------| |------| | Prev | Play | Next | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | | | | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | Lclk | Rclk | |VolUp |VolDn | Mute | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// 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_WBAK, KC_TRNS, KC_WFWD, KC_TRNS, KC_TRNS, + KC_TRNS, KC_MPRV, KC_MPLY, KC_MNXT, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 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(MDIA) // FN1 - Momentary Layer 3 (Media) +}; + +void toggle_steno(int pressed) +{ + uint8_t layer = biton32(layer_state); + + if (pressed) { + if (layer != STEN) layer_on(STEN); else layer_off(STEN); + + register_code(PV_LP); + register_code(PV_LH); + register_code(PV_LR); + register_code(PV_O); + register_code(PV_RL); + register_code(PV_RG); + } else { + unregister_code(PV_LP); + unregister_code(PV_LH); + unregister_code(PV_LR); + unregister_code(PV_O); + unregister_code(PV_RL); + unregister_code(PV_RG); + } +} + +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: + toggle_steno(record->event.pressed); + 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) { + uint32_t layer0 = layer_state & (1UL << 0), + layer1 = layer_state & (1UL << 1), + layer2 = layer_state & (1UL << 2), + layer3 = layer_state & (1UL << 3); + + ergodox_board_led_off(); + ergodox_right_led_1_off(); + ergodox_right_led_2_off(); + ergodox_right_led_3_off(); + + if (layer1) ergodox_right_led_1_on(); + if (layer2) ergodox_right_led_2_on(); + if (layer3) ergodox_right_led_3_on(); +}; diff --git a/keyboards/ergodox_ez/keymaps/twey/readme.md b/keyboards/ergodox_ez/keymaps/twey/readme.md new file mode 100644 index 0000000000..979e4261e5 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/twey/readme.md @@ -0,0 +1,17 @@ +# Twey's Home Configuration +## Layers +- Layer 0: Non-ANSI Dvorak layout, with modified modifiers — all + modifiers on thumb keys, as well as return and space. +- Layer 1: Default symbol layout. +- Layer 2: Plover-oriented stenography layer. +- Layer 3: Extended media/mouse layout. + +## Unusual features +The Plover key (top right key on the left half) also sends my Plover +‘toggle’ chord (SH-FT) when pressed, as well as toggling the steno +layer, so you can toggle between steno and typing modes with a single +keypress. + +If you want to use this feature, you'll need to add the +`commands.json` dictionary to your Plover dictionaries, or define the +toggle stroke (`PHROLG`) yourself. diff --git a/keyboards/ergodox_ez/keymaps/workman_osx_mdw/compiled.hex b/keyboards/ergodox_ez/keymaps/workman_osx_mdw/compiled.hex new file mode 100644 index 0000000000..8bde2f29da --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/workman_osx_mdw/compiled.hex @@ -0,0 +1,1213 @@ +:100000000C947B030C94BF030C94BF030C94BF03AC +:100010000C94BF030C94BF030C94BF030C94BF0358 +:100020000C94BF030C94BF030C946C100C943E1101 +:100030000C94BF030C94BF030C94BF030C94BF0338 +:100040000C94BF030C94F8230C94BF030C94BF03CF +:100050000C94BF030C94DA1E0C94BF030C94BF03E2 +:100060000C94BF030C94BF030C94BF030C94BF0308 +:100070000C94BF030C94BF030C94BF030C94BF03F8 +:100080000C94BF030C94BF030C94BF030C94BF03E8 +:100090000C94BF030C94BF030C94BF030C94BF03D8 +:1000A0000C94BF030C94BF030C94BF03AB11CD1190 +:1000B000BB12CD11BB1212123512BB128A129D1245 +:1000C0006C156C159B159B15D115F1152217221770 +:1000D000FC152217AC16AC161317221722171C1783 +:1000E000B916B916B916B916B916B916B916B91698 +:1000F000B916B916B916B916B916B916B916B91688 +:10010000CB16D816DF16E616F0160122022201C41D +:1001100002C4000121022101C402C4000120022006 +:1001200001C402C400011F021F01C402C400013146 +:10013000023101C402C40001E10131023102E101D6 +:10014000C402C4000126022601C402C40001250223 +:100150002501C402C4000124022401C402C4000118 +:1001600023022301C402C40001E10134023402E18C +:1001700001C402C400012D022D01C402C40001E12A +:100180000127022702E101C402C40001E1012502A6 +:100190002502E101C402C400011E021E01C402C402 +:1001A0000001E10130023002E101C402C40001E1BA +:1001B000012F022F02E101C402C40001270227011E +:1001C000C402C400012E022E01C402C40001E101D8 +:1001D00026022602E101C402C4000138023801C42B +:1001E00002C40001E1011E021E02E101C402C400BA +:1001F0000130023001C402C400012F022F01C402E9 +:10020000C40001E1012D022D02E101C402C400017C +:10021000E10121022102E101C402C40001E1011F48 +:10022000021F02E101C402C40001E1012E022E02FC +:10023000E101C402C40001E10138023802E101C455 +:1002400002C40001E10124022402E101C402C4004D +:1002500001E10122022202E101C402C4000000F017 +:10026000A101840884088A35002B00296FE1000071 +:100270000000001E00140004001D0000004D001FBF +:1002800000070016001B00E0002C00200015000BEA +:10029000001000E2002A0021001A0017000600E307 +:1002A000004A00220005000A00190000000000506A +:1002B00000015300000000000000004F0001530047 +:1002C0000000670000000023000D001C000E00006D +:1002D0000000002400090011000F0050004B002511 +:1002E00000180008003600510028002600130012F4 +:1002F00000370052002C00270033000C0038614FFB +:10030000004E002D0031003400E500C40000000163 +:1003100000010001000100010000003A0022023843 +:10032000002300010001003B0024022602240001FA +:100330000001003C0038022E002500010001003DB4 +:10034000002E0227002600010001003E001F022FA0 +:100350000231020000010001000100000001000064 +:100360000001000100010000000100000001003F49 +:10037000002102300238000000010040002D021E62 +:10038000001F000100010041002F00250220000194 +:10039000000100420030002702210001000100435B +:1003A000001E022D0022000100010044004500341F +:1003B0000001000100000001000100010001000136 +:1003C0000000000100010001000100010001000126 +:1003D000000100F2000100010001000100F000F145 +:1003E000000100F400010001000100F3000100F52C +:1003F00000010001000100010001000000010001F6 +:1004000000010000000100000001000100010000E7 +:1004100000010000000100010001000100010000D6 +:100420000001000100010001000100A9000100011C +:100430000001000100AC00AA00B6000100010001AB +:1004400000AB00A800010001000100010001000153 +:1004500000010001000100AE0001000100000001E8 +:1004600000010001000100010000003A0064306D4D +:10047000307830010001003B0065306E307930018A +:100480000001003C0066306F307A30010001003D11 +:1004900000673070307B30010001003E0068307131 +:1004A000307C30000001000100010000000100006C +:1004B0000001000100010000000100000001003FF8 +:1004C00000693072307D300000010040006A3073F6 +:1004D000307E300100010041006B3074307F30010C +:1004E00000010042006C3075308030010001004393 +:1004F00000823076308130010001004400450077F1 +:100500003001000100000016034500720067006F13 +:100510000044006F007800200045005A00000016DB +:10052000034500720067006F0044006F00780020F0 +:100530000045005A0000000403090409026D00048C +:100540000100A0FA090400000103010100092111C2 +:100550000100012240000705810308000A09040187 +:10056000000103010200092111010001224D0007D1 +:1005700005820308000A09040200010300000009C3 +:1005800021110100012236000705830308000A0932 +:1005900004030001030000000921110100012239B8 +:1005A000000705840310000112011001000000087B +:1005B000EDFE071301000102000105010906A1017A +:1005C000050719E029E71500250195087501810245 +:1005D0000508190129059505750191029501750315 +:1005E00091010507190029771500250195787501F6 +:1005F0008102C005010980A101850216010026B70C +:10060000001A01002AB700751095018100C0050C81 +:100610000901A1018503160100269C021A01002A86 +:100620009C02751095018100C005010902A1010914 +:1006300001A1000509190129051500250195057578 +:100640000181029501750381010501093009311508 +:1006500081257F95027508810609381581257F95CA +:100660000175088106050C0A38021581257F950160 +:1006700075088106C0C005010906A101050719E03A +:1006800029E7150025019508750181029501750876 +:10069000810105081901290595057501910295014A +:1006A000750391010507190029FF150026FF009524 +:1006B0000675088100C00000000000000000000076 +:1006C00000010204060A0F17202C3A4A5D71879D2B +:1006D000B3C7DAE9F5FCFFFCF5E9DAC7B39D87712A +:1006E0005D4A3A2C20170F0A0604020100000000A0 +:1006F00000000000000011241FBECFEFDAE0DEBFD3 +:10070000CDBF04B603FE24C08091FD019091FE018F +:10071000A091FF01B09100028730904BA740B04BF1 +:10072000B9F41092FD011092FE011092FF01109297 +:10073000000214BE84B7877F84BF88E10FB6F894A7 +:1007400080936000109260000FBEE0E0FFE3099527 +:1007500011E0A0E0B1E0EEE7FBE402C005900D92ED +:10076000A433B107D9F711E0A4E3B1E001C01D92B1 +:10077000AD3FB107E1F70E94B40D0C94BD250C9478 +:1007800000001092B9008AE08093B800089594EABE +:100790009093BC009091BC0097FFFCCF9091B90062 +:1007A000987F983021F0903111F081E00895809386 +:1007B000BB0084E88093BC008091BC0087FFFCCF25 +:1007C0008091B900887F883111F0803471F780E022 +:1007D000089584E98093BC008091BC0084FDFCCF27 +:1007E00008958093BB0084E88093BC008091BC0096 +:1007F00087FFFCCF9091B900987F81E0983209F48F +:1008000080E0089584E88093BC008091BC0087FF5D +:10081000FCCF8091BB00089580B38C7080BB81B306 +:10082000836F81BB089580910101811115C080E41F +:100830000E94C7038093010181110CC082E10E94D4 +:10084000F10380930101811105C08FEF0E94F10334 +:10085000809301010E94E90384B1807F84B985B14E +:10086000807F85B98AB1837F8AB98BB1837F8BB949 +:100870003E98469808950E94DD05809301010E94EC +:1008800013040E940C04A5E3B1E0E3E4F1E08EE080 +:100890008E0F11921D928E13FCCF0C94C7050E94EF +:1008A000DD05809301010E9413040E940C04A5E35E +:1008B000B1E0E3E4F1E08EE08E0F11921D928E1311 +:1008C000FCCF0895BF92CF92DF92EF92FF920F93E9 +:1008D0001F93CF93DF9380910101882379F080915A +:1008E00034018F5F80933401811108C00E94DD05BF +:1008F00080930101811102C00E946F0505E311E0A0 +:10090000C0E0D0E0DD24D39482E0C82EEE24E3944E +:10091000F12CC730D10500F580910101811164C02F +:1009200080E40E94C70380930101811112C082E11B +:100930000E94F1038093010181110BC0C7010C2EAD +:1009400001C0880F0A94EAF780950E94F103809312 +:1009500001010E94E90348C0CA30A1F028F4C83060 +:1009600059F0C93061F005C0CC3089F070F0CD305D +:1009700089F0209A289810C0219A29980DC0229AAF +:100980002A980AC0239A2B9807C0529A01C0539AFA +:100990005B9802C03E9A469890EA9A95F1F79FB10B +:1009A000799902C082E001C080E091709D25982B6A +:1009B0007C9902C084E001C080E0892B7D9902C04F +:1009C00038E001C030E0832B7E9902C020E101C0F5 +:1009D00020E0822B9FB19095991F9927991F92959E +:1009E000990F907E892B0FC080910101811149C020 +:1009F00080E40E94C70380930101882379F1B12C20 +:100A00000E94E9038B2DF8019081981719F08083DB +:100A1000C09200010E94130421960F5F1F4FCE3039 +:100A2000D10509F076CF80910001882361F18150D2 +:100A300080930001882339F08FE99FE00197F1F757 +:100A400000C0000020C0A3E4B1E0E5E3F1E0CF0185 +:100A5000825F91919D938E13FCCF15C083E10E941C +:100A6000F103809301018111CACF81E40E94C70381 +:100A7000809301018111C3CF0E940204B82EB0946B +:100A8000BFCF80E0C0CF0E946D0581E0DF91CF91A4 +:100A90001F910F91FF90EF90DF90CF90BF9008953E +:100AA000E82FF0E0ED5BFE4F8081089508950F93ED +:100AB0001F93CF93DF93C3E4D1E010E00C2F025FCC +:100AC000899190E00E94011E180F0C13F9CF812F1D +:100AD000DF91CF911F910F9108950C94C007569804 +:100AE0005E9825982D9826982E9827982F988FEF06 +:100AF00090E0909389008093880090938B0080937E +:100B00008A0090938D0080938C00259A2D9A2FEF68 +:100B100080E792E0215080409040E1F700C0000063 +:100B2000269A2E9A2FEF80E792E021508040904045 +:100B3000E1F700C00000279A2F9A2FEF80E792E09C +:100B4000215080409040E1F700C0000025982D988A +:100B50002FEF80E792E0215080409040E1F700C005 +:100B6000000026982E982FEF80E792E021508040D9 +:100B70009040E1F700C0000027982F9856985E98A3 +:100B800025982D9826982E9827982F98089589EAC9 +:100B90008093800089E08093810024982C983F986E +:100BA0008AB18F748AB96E98479A8BB1806B8BB972 +:100BB000769A0E946F050C94BF0780E28093010132 +:100BC0008091510181110EC00E94C10381E0809388 +:100BD00051012FEF83ED90E3215080409040E1F7E9 +:100BE00000C0000080E40E94C703809301018111CE +:100BF0002EC00E94F10380930101811128C00E9440 +:100C0000F10380930101811122C08FE30E94F1035F +:100C10008093010181111BC00E94E90380E40E94BE +:100C2000C70380930101811112C08CE00E94F1037F +:100C30008093010181110BC00E94F1038093010197 +:100C4000811105C08FE30E94F103809301010E948E +:100C5000E903809101010895CF93DF93EC0162379E +:100C600009F4C6C038F56A3609F483C098F46636CC +:100C700009F463C048F4643609F451C008F056C062 +:100C8000662309F441C01CC1683609F464C008F445 +:100C90005BC068C06E3609F48FC030F46C3609F45E +:100CA00076C008F46DC081C0603709F493C008F4C1 +:100CB0008AC097C06A3709F4D1C080F4663709F456 +:100CC000B3C030F4643709F4A1C008F498C0A5C0DB +:100CD000683709F4B7C008F4AEC0BAC06E3709F47B +:100CE000D5C030F46C3709F4C5C008F4BDC0C8C025 +:100CF000603809F4D7C008F4CFC0613809F4D8C00F +:100D0000623809F44BC0DCC08A81882321F085EE6B +:100D10000E941014D5C085EE0E94D814D1C00E9444 +:100D2000AB1B8A81882309F4CBC0CDC00E94AB1BCA +:100D30008A81882309F4C4C0C9C00E94AB1B8A8180 +:100D4000882309F4BDC0C5C00E94AB1B8A818823DB +:100D500009F4B6C0C1C00E94AB1B8A81882309F484 +:100D6000AFC0BDC00E94AB1B8A81882309F4A8C014 +:100D7000B9C00E94AB1B8A81882309F4A1C0B5C009 +:100D80000E94AB1B8A81882309F49AC0B1C00E94DB +:100D9000AB1B8A81882309F493C0ADC00E94AB1BB2 +:100DA0008A81882309F48CC0A9C00E94AB1B8A8168 +:100DB000882309F485C0A5C00E94AB1B8A818823C3 +:100DC00009F47EC0A1C00E94AB1B8A81882309F46C +:100DD00077C09DC00E94AB1B8A81882309F470C034 +:100DE00099C00E94AB1B8A81882309F469C095C011 +:100DF0000E94AB1B8A81882309F462C091C00E94C3 +:100E0000AB1B8A81882309F45BC08DC00E94AB1B99 +:100E10008A81882309F454C089C00E94AB1B8A814F +:100E2000882309F44DC085C00E94AB1B8A818823AA +:100E300009F446C081C00E94AB1B8A81882309F453 +:100E40003FC07DC00E94AB1B8A818823C9F17AC054 +:100E50000E94AB1B8A81882399F177C00E94AB1B4B +:100E60008A81882369F174C00E94AB1B8A81882320 +:100E700039F171C00E94AB1B8A81882309F16EC0D1 +:100E80000E94AB1B8A818823D9F06BC00E94AB1BE8 +:100E90008A818823A9F068C00E94AB1B8A818823BD +:100EA00079F065C00E94AB1B8A81882349F062C03B +:100EB0000E94AB1B8A81882319F08AE091E05CC014 +:100EC00080E090E059C080E592E056C083E492E073 +:100ED00053C086E392E050C089E292E04DC08CE1BD +:100EE00092E04AC08FE092E047C082E092E044C0C6 +:100EF00089EF91E041C080EF91E03EC083EE91E048 +:100F00003BC08AED91E038C08DEC91E035C084ECB7 +:100F100091E032C08BEB91E02FC08EEA91E02CC0C3 +:100F200081EA91E029C088E991E026C08BE891E050 +:100F300023C08EE791E020C085E791E01DC088E6E0 +:100F400091E01AC08FE591E017C086E591E014C0EA +:100F50008DE491E011C084E491E00EC087E391E05C +:100F60000BC08EE291E008C085E291E005C08CE103 +:100F700091E002C083E191E0DF91CF91089508955F +:100F80006091BE017091BF018091C0019091C1013B +:100F90000E940D1E56985E9825982D9826982E989A +:100FA00027982F98813019F0823021F00895259AE2 +:100FB0002D9A0895269A2E9A089581E0089581E049 +:100FC00008950C94DF070895282F882339F090E0C6 +:100FD0002A3010F44D9608950697089587E290E020 +:100FE0000895AF92BF92DF92EF92FF920F931F93FB +:100FF000CF93DF938C01FC01C081D181CE010E948F +:10100000861CBE010E94610BEC01B8010E94E10741 +:10101000882309F4C9C1F8018281882309F4BEC07C +:1010200080915E0181111FC0C431F0E7DF0709F034 +:10103000B5C10E94E30781E080935E010E94A41E77 +:1010400090935D0180935C011092550110925701BD +:1010500010925601109259011092580110925B01A2 +:1010600010925A01A1C180915C0190915D010E9492 +:10107000B01E883C910570F480915501E82FF0E096 +:10108000EE0FFF1FEA5AFE4FD183C0838F5F80931C +:1010900055018AC1C13020E8D20708F451C0F801D7 +:1010A0008281882309F47EC05E01E894B7F88091BC +:1010B0005401813079F050F08230C1F482EE0E9408 +:1010C000101487E50E94101487E50EC082EE0E947E +:1010D00010140CC080EE0E94101481EE0E941014B7 +:1010E00088E10E94101488E10E94D8148CE0E82E58 +:1010F000F12CC5010E2C02C0969587950A94E2F753 +:101100008F700E94E407D82E0E9410148D2D0E942B +:10111000D814F4E0EF1AF1082CEFE2162FEFF206E4 +:1011200041F780915401813029F010F0823041F470 +:1011300082EE04C080EE0E94D81481EE0E94D81482 +:10114000C43180E7D80768F4C23090E7D90708F0C7 +:1011500046C0C115E0E7DE0771F0C130D047A1F10C +:101160000CC1C33320E7D20709F4D8C0C433D04739 +:1011700009F4EBC002C1F8018281882309F402C19D +:101180000E948D17FFEF24E38CE0F1502040804057 +:10119000E1F700C000000E94FF1E06C1C13080E8D8 +:1011A000D80770F2C43120E7D20708F0B3C0C230CC +:1011B00080E7D807A0F4C11590E7D90709F4E2C089 +:1011C000C130D04709F0D9C0F8018281882309F4E1 +:1011D000D9C08091DB0181608093DB01E5C0F8011B +:1011E0008281882309F4CEC00E94591F811102C058 +:1011F0000E943F1F0E946C1F90E09093EF0180932C +:10120000EE01C230F0E7DF0721F48091EE0181604A +:101210007AC0C33020E7D20721F48091EE018260CA +:1012200072C0C43080E7D80721F48091EE01846059 +:101230006AC0C53090E7D90719F48091EE0127C044 +:10124000C630E0E7DE0721F48091EE0180615BC0EB +:10125000C730F0E7DF0721F48091EE01806253C0D0 +:10126000C83020E7D20721F48091EE0180644BC0A2 +:10127000C93080E7D80721F48091EE01806843C02F +:10128000CA3090E7D90729F48091EE018460886024 +:101290003AC0CB30E0E7DE0721F48091EE018E7F8B +:1012A00032C0CC30F0E7DF0721F48091EE018D7F72 +:1012B0002AC0CD3020E7D20721F48091EE018B7F48 +:1012C00022C0CE3080E7D80719F48091EE011AC011 +:1012D0008091EE01CF3090E7D90711F48F7E13C0D3 +:1012E000C031E0E7DE0711F48F7D0DC0C131F0E7BA +:1012F000DF0711F48F7B07C0C231D04711F48F771D +:1013000002C08B7F877F8093EE018091EE010E9467 +:10131000701F4AC0C333F0E7DF07A1F4F8018281F0 +:10132000882321F01092520182E016C08091520170 +:10133000811106C086E20E94101486E20E94D81431 +:1013400082E018C0C433D047C1F4F80182818823F9 +:1013500031F01092530180E20E94271525C0809140 +:101360005301811106C087E20E94101487E20E9497 +:10137000D81480E20E942E1517C081E0809352019C +:1013800080935301C801DF91CF911F910F91FF907E +:10139000EF90DF90BF90AF900C94DD07C130F0E884 +:1013A000DF0708F081CECCCE80E0DF91CF911F9196 +:1013B0000F91FF90EF90DF90BF90AF90089526E0DF +:1013C000729FF001112444E5849FE00DF11D11246A +:1013D000E60FF11DEE0FFF1FE959FD4F8591949126 +:1013E0000E94730B811560E49607B0F5811570E3D8 +:1013F000970708F0DEC0803E9105D8F4803C910547 +:1014000008F06CC0883A910578F4853A910508F0A7 +:101410006BC08130910509F452C108F40FC18430CA +:10142000910508F04CC10AC18B3B910508F467C0D7 +:1014300005C18F3F910509F048F4803F910508F000 +:10144000ADC0883E910508F43AC1F8C0811520E28C +:10145000920708F0A5C00895811543E5940790F41C +:10146000811562E5960708F0C8C0811571E59707F8 +:1014700008F0BEC0811520E5920708F09DC09F705E +:10148000906A0895811545E59407D8F4811564E5BF +:10149000960708F0C8C0482F4695469570E2479FCA +:1014A000A00111248370992721E030E0B90102C026 +:1014B000660F771F8A95E2F7CB01842B952B9A68EC +:1014C0000895811576E5970708F4B2C09C0130565F +:1014D0002115304108F0B2C09F70AEC0FC01EE0F84 +:1014E000FF1FE352FF4F62C0853A910509F4A9C07E +:1014F000863A910509F0A8C082E890E40895883AF8 +:10150000910509F4A4C0893A910509F4A3C08A3A67 +:10151000910509F4A2C08B3A910509F4A1C08C3A57 +:10152000910509F4A0C08D3A910509F49FC0803B54 +:10153000910509F49EC08E3A910509F49DC08F3A39 +:10154000910509F49CC0813B910509F49BC0823B45 +:10155000910509F49AC0833B910509F499C0843B35 +:10156000910509F498C0853B910509F497C0863B25 +:10157000910509F496C0873B910509F495C0883B15 +:10158000910509F494C0893B910509F493C08A3B05 +:10159000910509F492C080E094E40895906508955F +:1015A000FC01FF70EE0FFF1FE35AFD4F85919491F0 +:1015B00008959927906C0895482F437021E030E0FA +:1015C00002C0220F331F4A95E2F73C68AC0164E089 +:1015D000569547956A95E1F74370342B8F70869541 +:1015E000869560E2869FC0011124822B932B08957B +:1015F000982F8827816F906A0895482F46954695C1 +:1016000070E2479FA00111248370992721E030E008 +:10161000B90102C0660F771F8A95E2F7CB01842BD0 +:10162000952B9C680895982F8827846F906A089559 +:101630008F719927982F88279062089580E090E015 +:10164000089581E890E4089583E890E4089582EE97 +:1016500094E4089589EE94E408958AEE94E408955C +:1016600085EB94E4089586EB94E4089587EB94E485 +:1016700008958CEC94E408958DEC94E4089583E847 +:1016800095E408958AE895E4089582E995E408953B +:1016900084E995E4089581E296E4089583E296E46E +:1016A000089584E296E4089585E296E4089586E23A +:1016B00096E4089587E296E408958AE296E4089510 +:1016C000089596E0799FF001112494E5899FE00D3B +:1016D000F11D1124E60FF11DEE0FFF1FE959FD4F1B +:1016E0008591949108958238910549F1B0F4813340 +:1016F000910509F458C048F48932910509F44EC0A7 +:101700008A32910509F454C008958533910509F48E +:1017100040C08933910599F00895833E910529F1E0 +:1017200038F4803E910591F0823E9105A1F0089534 +:10173000863E9105F9F0873E910531F1089520919B +:10174000EE0120FD3AC021FD38C008958091EE01E0 +:1017500080FD35C032C08091EE0182FF32C08091A1 +:10176000EE0184FD30C083EE39C08091EE0182FD30 +:1017700028C0F5CF8091EE0183FF27C08091EE0154 +:1017800084FD21C087EE2AC08091EE0183FD1DC03B +:10179000F5CF8091EE0185FD1AC01BC08091EE014E +:1017A00085FD17C014C08091EE0186FD14C015C0E0 +:1017B0008091EE0186FD11C00EC080EE0FC089E35E +:1017C0000DC082EE0BC080E009C086EE07C089E242 +:1017D00005C085E303C08AE201C081E390E008957B +:1017E00008950C94F00B80916F010895CF93DF93CF +:1017F00000D01F92CDB7DEB79C018091F4018430F8 +:1018000019F593E099833B832A839093E9008FEF46 +:101810009091E800815095FD06C095ED9A95F1F7FD +:1018200000008111F5CF8091E80085FF0DC040E0F8 +:1018300050E063E070E0CE0101960E945C0E809162 +:10184000E8008E778093E8000F900F900F90DF9163 +:10185000CF910895CF93DF9300D01F92CDB7DEB71D +:101860002091F401243021F522E029839B838A838F +:1018700083E08093E9008FEF9091E800815095FD1F +:1018800006C095ED9A95F1F700008111F5CF809192 +:10189000E80085FF0DC040E050E063E070E0CE015D +:1018A00001960E945C0E8091E8008E778093E8009C +:1018B0000F900F900F90DF91CF9108952091F40138 +:1018C0002430F1F422E02093E9002FEF3091E8007A +:1018D000215035FD06C035ED3A95F1F70000211194 +:1018E000F5CF2091E80025FF0BC040E050E065E017 +:1018F00070E00E945C0E8091E8008E778093E80093 +:101900000895CF93DF93EC019091F401943009F0A6 +:1019100046C080910C018823D9F080910D01882365 +:10192000B9F09093E9008FEF9091E800815095FD18 +:1019300006C095E19A95F1F700008111F5CF8091ED +:10194000E80085FF2CC040E050E060E170E017C087 +:1019500081E08093E9008FEF9091E800815095FD40 +:1019600006C095ED9A95F1F700008111F5CF8091B1 +:10197000E80085FF14C040E050E068E070E0CE0170 +:101980000E945C0E8091E8008E778093E80080E1F1 +:10199000FE01AFE5B1E001900D928A95E1F7DF918C +:1019A000CF9108958091F301811109C00E94F10F38 +:1019B0000E944E108091E20084608093E2000895BE +:1019C0001092F301089508950C94E5230E94951E4A +:1019D0000E94EB230E94F4120C94F10B42E061ECA4 +:1019E00081E00E946B0F42E061EC82E00E946B0F8D +:1019F00042E061EC83E00E946B0F42E161EC84E025 +:101A00000C946B0F8091F601833009F455C030F4CB +:101A1000813071F0823009F48EC008958A3009F463 +:101A20007AC08B3009F460C0893009F09CC020C0B6 +:101A30008091F501813A09F096C08091E800877F96 +:101A40008093E8008091F9019091FA01892B21F4AB +:101A500060E18FE591E003C060E080E090E070E03D +:101A60000E94A70E8091E8008B778093E80008958C +:101A70008091F501813209F076C08091F901909151 +:101A8000FA01009719F0039709F06DC08091E80002 +:101A9000877F8093E8008091E80082FD05C08091F7 +:101AA000F4018111F8CF5FC08091F10080936F0144 +:101AB0008091E8008B7753C08091F501813A09F05D +:101AC00052C08091F9019091FA01892B09F04BC025 +:101AD0008091E800877F8093E8008091E80080FF94 +:101AE000FCCF80910C0136C08091F5018132D9F58F +:101AF0008091F9019091FA01892BA9F58091E80074 +:101B0000877F8093E8000E94A00F8091F701809367 +:101B10000C010C948D178091F501813221F5809193 +:101B2000E800877F8093E8000E94A00F8091F80171 +:101B30008093700108958091F501813AA1F480911C +:101B4000E800877F8093E8008091E80080FFFCCF69 +:101B5000809170018093F1008091E8008E778093EE +:101B6000E8000C94A00F089584B7877F84BF88E1B4 +:101B70000FB6F89480936000109260000FBE80E86A +:101B800080936100109261000E9443130E94F10F44 +:101B90000E944E108091E20084608093E20078946D +:101BA0000E94D4120E94451382E091E00E94EF123D +:101BB0000E94D3238091F401853069F40E945D1E58 +:101BC0008091F2018823B1F30E94871E882391F34C +:101BD0000E94460EEFCF0E944B13ECCF292F3327E4 +:101BE00023303105C9F064F42130310581F0223011 +:101BF000310509F043C08DE690E02BE335E042C0AB +:101C000021323105F1F02232310541F137C082E154 +:101C100090E028EA35E036C099278130910541F0FF +:101C20008230910541F0892B49F5E7E3F5E005C0E5 +:101C3000EFE1F5E002C0E7E0F5E0849190E09F017C +:101C400021C06430D8F4E62FF0E0EE0FFF1FEE5D08 +:101C5000FE4F2081318189E090E014C0643070F43F +:101C600070E0FB01EE0FFF1FE65EFE4F2081318129 +:101C7000FB01EA5EFE4F808190E004C080E090E0CE +:101C800020E030E0FA0131832083089580E189BDAE +:101C900082E189BD09B400FEFDCF8091D8008F7D1F +:101CA0008093D8008091E00082608093E000809172 +:101CB000E00081FDFCCF0895CF92DF92EF92FF927A +:101CC0000F931F93CF93DF93EC018B016A010E9466 +:101CD000BF0F811133C0C114D10439F0F6018081E6 +:101CE0009181081B190BC80FD91FE12CF12C01158C +:101CF000110519F18091E80085FD16C08091E8007A +:101D00008E778093E800C114D10449F0F6018081F8 +:101D10009181E80EF91EF182E08285E00FC00E94F9 +:101D2000BF0F882321F30AC089918093F1000150ED +:101D30001109FFEFEF1AFF0ADACF80E0DF91CF91B0 +:101D40001F910F91FF90EF90DF90CF900895209119 +:101D5000FB013091FC012617370748F0611571052A +:101D600039F42091E8002E772093E80001C0B901F2 +:101D700040E061157105A9F12091F401222309F4D5 +:101D800043C0253009F442C02091E80023FD40C043 +:101D90002091E80022FD32C02091E80020FFE9CF29 +:101DA0004091F3002091F20030E0342BFC01CF0190 +:101DB0006115710559F02830310540F48191809307 +:101DC000F100615071092F5F3F4FF1CF41E02830A2 +:101DD000310509F040E02091E8002E772093E800DB +:101DE000C8CF4111C9CF0AC08091F401882361F0A6 +:101DF000853061F08091E80083FD0AC08091E800A1 +:101E000082FFF2CF80E0089582E0089583E0089594 +:101E100081E008952091FB013091FC0126173707DE +:101E200048F06115710539F42091E8002E77209370 +:101E3000E80001C0B901FC0120E06115710591F1D4 +:101E40008091F401882309F440C0853009F43FC033 +:101E50008091E80083FD3DC08091E80082FD2FC0A5 +:101E60008091E80080FFE9CF2091F3008091F2009B +:101E700090E0922B6115710559F08830910540F47E +:101E800024912093F1003196615071090196F2CFAF +:101E900021E0089709F020E08091E8008E77809398 +:101EA000E800CBCF2111CCCF0AC08091F401882368 +:101EB00061F0853061F08091E80083FD0AC0809177 +:101EC000E80082FFF2CF80E0089582E0089583E089 +:101ED000089581E00895982F973058F59093E90080 +:101EE000981739F07091EC002091ED005091F000BE +:101EF00003C0242F762F50E021FF19C03091EB0052 +:101F00003E7F3093EB003091ED003D7F3093ED004C +:101F10003091EB0031603093EB007093EC00209334 +:101F2000ED005093F0002091EE0027FF07C09F5F67 +:101F3000D3CF8F708093E90081E0089580E0089509 +:101F40008091F50187FF11C08091E80082FD05C0F6 +:101F50008091F4018111F8CF11C08091E8008B7756 +:101F60000BC08091F401882349F08091E80080FF44 +:101F7000F8CF8091E8008E778093E8000895209153 +:101F8000E4003091E50095E64091EC00842F8170EB +:101F900040FF22C08091E80080FD1CC08091F401C8 +:101FA000882391F0853091F08091EB0085FD10C081 +:101FB0004091E4005091E5004217530729F39A013C +:101FC000915011F784E0089582E0089583E0089528 +:101FD00081E0089580E008954091E80042FFDECF5F +:101FE00008950E945F100E946710E0EEF0E080818B +:101FF00081608083E8EDF0E080818F77808319BC79 +:10200000A7EDB0E08C918E7F8C9380818F7E808352 +:102010001092F30108950F931F93CF93DF930E94C3 +:102020005F100E946710C8EDD0E088818F778883A9 +:1020300088818068888388818F7D888319BC10920D +:10204000F4011092F0011092F2011092F10100EEF1 +:1020500010E0F80180818B7F808388818160888394 +:1020600042E060E080E00E946B0FE1EEF0E08081F2 +:102070008E7F8083E2EEF0E08081816080838081CA +:1020800088608083F80180818E7F80838881806171 +:102090008883DF91CF911F910F910895E8EDF0E0D3 +:1020A00080818F7E8083E7EDF0E080818160808396 +:1020B00084E082BF81E08093F3010C940B10E8ED83 +:1020C000F0E080818E7F80831092E200089510926C +:1020D000DA001092E10008951F920F920FB60F924E +:1020E00011242F933F934F935F936F937F938F931D +:1020F0009F93AF93BF93EF93FF938091E10082FF93 +:102100000BC08091E20082FF07C08091E1008B7FCD +:102110008093E1000E94D3128091DA0080FF1FC0FB +:102120008091D80080FF1BC08091DA008E7F809361 +:10213000DA008091D90080FF0DC080E189BD82E185 +:1021400089BD09B400FEFDCF81E08093F4010E94B7 +:10215000D20C05C019BC1092F4010E94E00C8091D1 +:10216000E10080FF19C08091E20080FF15C08091DE +:10217000E2008E7F8093E2008091E2008061809394 +:10218000E2008091D80080628093D80019BC85E07D +:102190008093F4010E94E40C8091E10084FF30C040 +:1021A0008091E20084FF2CC080E189BD82E189BD7D +:1021B00009B400FEFDCF8091D8008F7D8093D800B8 +:1021C0008091E1008F7E8093E1008091E2008F7E1C +:1021D0008093E2008091E20081608093E200809130 +:1021E000F001882311F084E007C08091E30087FDAF +:1021F00002C081E001C083E08093F4010E94E60CFC +:102200008091E10083FF29C08091E20083FF25C017 +:102210008091E100877F8093E10082E08093F40168 +:102220001092F0018091E1008E7F8093E100809117 +:10223000E2008E7F8093E2008091E20080618093D3 +:10224000E20042E060E080E00E946B0F8091F000CD +:1022500088608093F0000E94E30CFF91EF91BF91A2 +:10226000AF919F918F917F916F915F914F913F912E +:102270002F910F900FBE0F901F9018951F920F92E5 +:102280000FB60F9211242F933F934F935F936F9349 +:102290007F938F939F93AF93BF93CF93DF93EF93EE +:1022A000FF93C091E900CF708091EC00D82FD170DE +:1022B00080FDD0E81092E9008091F000877F809344 +:1022C000F00078940E9482111092E9008091F00051 +:1022D00088608093F000CD2BCF70C093E900FF9110 +:1022E000EF91DF91CF91BF91AF919F918F917F91AE +:1022F0006F915F914F913F912F910F900FBE0F9073 +:102300001F9018951F93CF93DF93CDB7DEB7AA9791 +:102310000FB6F894DEBF0FBECDBFE5EFF1E088E069 +:102320008E0F9091F10091938E13FBCF0E94020DBE +:102330008091E80083FF1FC18091F5019091F60123 +:10234000492F50E04A30510508F015C1FA01EA5A08 +:10235000FF4F0C946D25803881F0823809F00BC155 +:102360008091F9018F708093E9008091EB0085FBEB +:10237000882780F91092E90006C08091F1019091C0 +:10238000F201911182609091E800977F9093E800AC +:102390008093F1001092F100C8C0282F2D7F09F022 +:1023A000EAC0882319F0823061F0E5C08091F7011E +:1023B000813009F0E0C0933009F080E08093F201B1 +:1023C0002BC08091F701811127C08091F9018F7096 +:1023D00009F4D1C08093E9002091EB0020FF1CC0DC +:1023E000933021F48091EB00806214C09091EB0057 +:1023F00090619093EB0021E030E0A90102C0440F0E +:10240000551F8A95E2F74093EA001092EA00809106 +:10241000EB0088608093EB001092E9008091E80067 +:10242000877F86C08111A7C01091F7011F77809127 +:10243000E3008078812B8093E3008091E800877F20 +:102440008093E8000E94A00F8091E80080FFFCCFFD +:102450008091E30080688093E300111102C082E064 +:1024600001C083E08093F40186C08058823008F078 +:1024700082C08091F7019091F8018C3D53E095075F +:1024800079F583E08A838AE289834FB7F894DE0185 +:10249000139620E03EE051E2E32FF0E05093570026 +:1024A000E49120FF03C0E295EF703F5FEF708E2F45 +:1024B00090E0EA3010F0C79601C0C0968D939D93CE +:1024C0002F5F243149F74FBF8091E800877F8093C9 +:1024D000E8006AE270E0CE0101960E94A70E14C0E7 +:1024E000AE014F5F5F4F6091F9010E94EE0DBC019C +:1024F000009709F440C09091E800977F9093E8001E +:1025000089819A810E940A0F8091E8008B778093DD +:10251000E80031C0803879F58091E800877F8093AA +:10252000E8008091F0018093F1008091E8008E77BF +:102530008093E8000E94A00F1EC081111CC09091E2 +:10254000F7019230C0F48091E800877F8093E80023 +:102550009093F0010E94A00F8091F001811106C0BC +:102560008091E30087FD02C081E001C084E0809398 +:10257000F4010E94EE0C8091E80083FF0AC0809174 +:10258000E800877F8093E8008091EB008062809371 +:10259000EB00AA960FB6F894DEBF0FBECDBFDF9159 +:1025A000CF911F9108950895CF938091F4018823CE +:1025B000A1F0C091E900CF709091EC00892F81705B +:1025C00090FD80E8C82B1092E9008091E80083FD1F +:1025D0000E948211CF70C093E900CF91089590932B +:1025E0007601809375010895E0917501F09176016F +:1025F000309721F00190F081E02D099480E008955A +:10260000E0917501F0917601309721F00280F3811D +:10261000E02D09940895E0917501F09176013097CD +:1026200021F00480F581E02D099408952091730133 +:10263000309174018217930771F090937401809325 +:102640007301E0917501F0917601309721F00680D9 +:10265000F781E02D09940895209171013091720164 +:102660008217930771F09093720180937101E0914A +:102670007501F0917601309721F00084F185E02D0D +:102680000994089508950C9442130E949B1E0E9481 +:102690003B040C94211F9F92AF92BF92CF92DF9286 +:1026A000EF92FF920F931F93CF93DF9300D000D050 +:1026B00000D0CDB7DEB70E9462040DE010E0AA247E +:1026C000A394B12C902E802F0E9450059801285879 +:1026D0003E4F6901F901F080F826A1F4015011097B +:1026E00088F78FEF89838A831B820E94A41E8160F2 +:1026F000782F9D838C8349815A816B818D810E94C3 +:10270000E2132FC09091DB0191FF04C08E830E94E1 +:1027100056058E8125E030E0A501022E01C0440F50 +:102720000A94EAF7E42E4F21C1F029839A828E2180 +:1027300091E009F490E09B830E94A41E8160782FB1 +:102740009D838C8349815A816B818D810E94E21324 +:10275000F6018081E826E08204C021503109E0F6CC +:10276000BDCF0E94EF20109177010E94F41218173C +:10277000B9F00E94F4128093770126960FB6F89470 +:10278000DEBF0FBECDBFDF91CF911F910F91FF90A4 +:10279000EF90DF90CF90BF90AF909F900C94F10B93 +:1027A00026960FB6F894DEBF0FBECDBFDF91CF9156 +:1027B0001F910F91FF90EF90DF90CF90BF90AF905F +:1027C0009F900895CF93DF93CDB7DEB72B970FB6C9 +:1027D000F894DEBF0FBECDBF4F83588769877A87D5 +:1027E0008B87DE01119686E0FD0111928A95E9F74B +:1027F00085E0FE01379601900D928A95E1F74981B7 +:102800005A816B817C818D819E810E942B1A2B962F +:102810000FB6F894DEBF0FBECDBFDF91CF91089504 +:10282000CF93882309F4C2C0C82F823859F40E947C +:10283000F41281FDBBC089E30E94051D0E94D21DD8 +:1028400089E30CC0833879F40E94F41280FDAEC095 +:1028500083E50E94051D0E94D21D83E50E94471D4D +:10286000CF910C94D21D843859F40E94F41282FD49 +:102870009DC087E40E94051D0E94D21D87E4EECF13 +:102880008CEF8C0F813A48F48C2F0E9439238111F0 +:102890008DC08C2F0E94051DE3CF80E28C0F883005 +:1028A00048F4C77081E001C0880FCA95EAF70E941A +:1028B0008B1DD6CF8BE58C0F833078F4C53A29F089 +:1028C000C63A31F083E890E005C081E890E002C0AC +:1028D00082E890E0CF910C94161388E58C0F833139 +:1028E00008F064C0C83A39F1C93A41F1CA3A49F12D +:1028F000CB3A51F1CC3A59F1CD3A61F1C03B69F193 +:10290000CE3A71F1CF3A79F1C13B81F1C23B89F105 +:10291000C33B91F1C43B99F1C53BA1F1C63BA9F181 +:10292000C73BB1F1C83BB9F1C93BC1F1CA3BC9F1E1 +:1029300080E090E038C082EE90E035C089EE90E013 +:1029400032C08AEE90E02FC085EB90E02CC086EB81 +:1029500090E029C087EB90E026C08CEC90E023C08B +:102960008DEC90E020C083E891E01DC08AE891E002 +:102970001AC082E991E017C084E991E014C081E2B5 +:1029800092E011C083E292E00EC084E292E00BC0BC +:1029900085E292E008C086E292E005C087E292E01C +:1029A00002C08AE292E0CF910C942C13CF9108954B +:1029B000882309F44BC0823859F40E94F41281FF35 +:1029C00045C089E30E94051D0E94D21D89E30CC009 +:1029D000833871F40E94F41280FF38C083E50E94AE +:1029E000051D0E94D21D83E50E94471D0C94D21D37 +:1029F000843859F40E94F41282FF28C087E40E94B0 +:102A0000051D0E94D21D87E4EFCF9CEF980F913AED +:102A100058F390E2980F983050F4877091E001C01D +:102A2000990F8A95EAF7892F0E94911DDFCF9BE5C8 +:102A3000980F933020F480E090E00C941613885A9D +:102A4000833120F480E090E00C942C1308958823C7 +:102A500021F00E948B1D0C94D21D0895882321F033 +:102A60000E94911D0C94D21D08957F928F929F9287 +:102A7000AF92BF92CF92DF92EF92FF920F931F938C +:102A8000CF93DF931F92CDB7DEB77C01C62E772E92 +:102A9000FC01058102950F70128111110E94A81D81 +:102AA0000E94FE1C882379F0112369F080E28C0DCE +:102AB000883048F082E00E94E71C0E94FE1C91E0F2 +:102AC000D82ED92601C0D12CE72DE295EF70F0E089 +:102AD000E05AFF4F0C946D25872D807F072D0F70D6 +:102AE000882311F00295007F112389F0002309F457 +:102AF00090C180E28C0D883020F4802F0E948B1DC5 +:102B000003C0802F0E949B1D0E94D21D82C18C2D6C +:102B10000E94D814002309F495C180E28C0D8830FE +:102B200020F4802F0E94911D03C0802F0E94A11DC0 +:102B30000E94D21D87C1972D907F872D8F70903274 +:102B400011F08295807FCC2021F0F1E0CF16B1F01A +:102B50001EC0112349F0002309F414C1013009F00B +:102B600011C10E94BB1D6EC1002319F0013009F490 +:102B700069C189830E94BE1D89810AC1112321F088 +:102B8000023008F05FC1FEC001115CC101C1112318 +:102B900021F0002309F4F6C03CC1002309F4F8C079 +:102BA0003EC1872D86958695837090E0009719F039 +:102BB000019761F047C1112321F08C2D972D93705F +:102BC00002C080E090E00E9416133CC1112321F066 +:102BD0008C2D972D937002C080E090E00E942C1302 +:102BE00031C18C2D112319F00E94F71F02C00E94E1 +:102BF0005F200E94E42026C1872D837009F052C017 +:102C0000111120C18C2D829586958770880F880FB1 +:102C10009C2D9F70892E912CA12CB12C082E04C0C4 +:102C2000880C991CAA1CBB1C0A94D2F7C4FE14C0C1 +:102C30000FE010E020E030E0B901A80104C0440F2B +:102C4000551F661F771F8A95D2F7CB01BA01609591 +:102C500070958095909503C060E070E0CB01272DC2 +:102C600026952695237030E02230310569F0233017 +:102C7000310589F0682979298A299B292130310574 +:102C800071F00E94731BDEC0682979298A299B296B +:102C90000E948F1BD7C00E94731BC501B4010E9404 +:102CA000571BD0C0112319F0872D817001C0869564 +:102CB000882309F4C7C08C2D829586958770880F6C +:102CC000880F9C2D9F70892E912CA12CB12C082E41 +:102CD00004C0880C991CAA1CBB1C0A94D2F7C4FE21 +:102CE00014C00FE010E020E030E0B901A80104C0FA +:102CF000440F551F661F771F8A95D2F7CB01BA0183 +:102D0000609570958095909503C060E070E0CB0170 +:102D1000272D269526952370422F50E042305105ED +:102D200069F04330510589F0682979298A299B295E +:102D30004130510571F00E944D1C84C068297929E9 +:102D40008A299B290E94691C7DC00E944D1CC501D7 +:102D5000B4010E94311C76C08C2D90E0FC01E05E35 +:102D6000F109E531F10508F050C0E059FF4F0C942E +:102D70006D250C2D0F70872D8F71112331F00E945E +:102D8000CA1B802F0E9427155DC00E94EB1B802F5D +:102D90000E942E1557C0112339F0011153C0872D01 +:102DA0008F710E94101C4EC0023008F04BC0F7CF4C +:102DB000112339F0872D8F710E94CA1B43C0112344 +:102DC000C9F3872D8F710E94EB1B3CC0112329F0A2 +:102DD000872D8F710E94B51B35C00E94AB1B32C07E +:102DE000112351F0172D1F71812F0E94CA1B63E020 +:102DF000812F0E94DE1C26C081E00E94E71C023069 +:102E000008F182E00E94E71C1DC0112331F000236D +:102E100089F28C2D0E94101415C0002391F28C2D84 +:102E20000E94D8140FC0472D4F706C2DC7010E940F +:102E30002C060E94CF1A06C0472D4F706C2DC7017B +:102E40000E94600BDD20F9F00E94DA1C80FD1BC09F +:102E5000F70112820E94D41C0E94CA1BC7010E9463 +:102E600052170E94D41C0F90DF91CF911F910F91A8 +:102E7000FF90EF90DF90CF90BF90AF909F908F909A +:102E80007F900C94EB1B0F90DF91CF911F910F91CE +:102E9000FF90EF90DF90CF90BF90AF909F908F907A +:102EA0007F9008950F931F93CF93DF93EC01888158 +:102EB00099812B813C81232BB9F09F3F11F48F3FE7 +:102EC00099F0CE010E94F107882371F06881798121 +:102ED0008A810E94D01C8C010E94851C0E944C1B80 +:102EE000B801CE010E943515DF91CF911F910F914E +:102EF00008950E94A81D0E94B81D0E947D1D0E9479 +:102F0000D21D0E9495210E94E42080E090E00E9462 +:102F1000161380E090E00C942C130E94981D0C94E2 +:102F200079170E94C51C292F22952F7030E02C3074 +:102F300031054CF42A3031056CF42250310922302D +:102F40003105A8F407C02C30310569F02F30310568 +:102F500051F00DC0803F69F018F4803E40F409C084 +:102F6000843F29F406C093FB882780F9089580E008 +:102F7000089581E00895CF93DF9300D000D01F9291 +:102F8000CDB7DEB70F900F900F900F900F90DF919D +:102F9000CF910895CF93DF9300D000D000D0CDB76C +:102FA000DEB726960FB6F894DEBF0FBECDBFDF9119 +:102FB000CF9108951F93CF93DF93C091860116E0C0 +:102FC00080918701C81799F0D0E01C9FF0011D9FE8 +:102FD000F00D1124E857FE4F4081518162817381C9 +:102FE000848195810E94CA172196C770E9CFDF912D +:102FF000CF911F9108954091B8015091B90160910E +:10300000BA017091BB018091BC019091BD010C94FB +:10301000CA178091BD0182958F7009F054C08091CC +:10302000BA01882309F44FC080918601A0918701DD +:103030006091B8017091B9014091BB015091BC0100 +:10304000B6E08A1709F43FC090E041155105C1F17F +:103050007F3F11F46F3FA1F1B89FF001B99FF00DD0 +:103060001124E857FE4F218172132AC02081621378 +:1030700027C02281211124C02381348124173507E0 +:1030800010F421503109241B350B283C3105C0F4C4 +:103090002091BD012F7020612093BD0126E0289F63 +:1030A000F001299FF00D1124E357FE4F80818F70AE +:1030B0008061808388EB91E00E9452170C94DA17AC +:1030C00001968770BECF0895CF92DF92EF92FF9264 +:1030D0000F931F93CF93DF93CDB7DEB762970FB6F1 +:1030E000F894DEBF0FBECDBF8C0185E0F801DE0194 +:1030F0001D9601900D928A95E1F7D8014C91119699 +:103100005C91119712966C9112971396CD90DC906A +:1031100014973091B8017091B9018091BB019091E1 +:10312000BC01009709F46BC17F3F19F43F3F09F4DC +:1031300066C1E090BA01EE2009F4C0C02091BD0143 +:10314000C816D90628F0F601E81BF90BCF0104C018 +:10315000809590958C0D9D1DFF24F394883C9105DE +:1031600078F0F12C207F09F0C6C07C2DD98AC88A5E +:1031700089890E94BB1788EB91E00E945217B1C069 +:10318000822F807F09F046C0751314C0341312C01B +:10319000611110C02F7020612093BD010E94FB17A8 +:1031A00088EB91E00E9452178091BD01D8011596DD +:1031B0008C932EC0CD2819F15F3F11F44F3FF9F0E9 +:1031C000F62E61111CC0809186012091870136E0A6 +:1031D000821709F45AC090E0389FF001399FF00D32 +:1031E0001124E857FE4F7181571306C070814713B1 +:1031F00003C07281711103C001968770E9CFF62E6A +:10320000662309F418C18091BD0181608093BD01DE +:10321000F12C11C1751308C0341306C0611104C02C +:103220008091BD01D801C3C04D875E878D859E8585 +:103230006A8B0E9491176A898823E1F16623D1F194 +:103240002091BD01822F82958F7090E0029774F0DB +:103250008091B8019091B90198878F831986DB8698 +:10326000CA862C87CE0107960E94521786E0F80185 +:10327000A8EBB1E001900D928A95E1F70E94091840 +:103280000E94FB17FF24F394D6C04D875E878D857F +:103290009E850E94C51C292F22952F7030E0223078 +:1032A00031050CF0BCC09F7009F0B6C0805E88305C +:1032B00008F4C1C0C8010E945217E4CFC816D9064D +:1032C00008F453C0F601E81BF90BCF01883C9105C7 +:1032D00008F450C0F12C7C2DD98AC88A89890E94B3 +:1032E000BB17E8EBF1E086E0DF011D928A95E9F774 +:1032F0000E94FB17A0C0751314C0341312C06111D3 +:1033000010C08091BD01F8018583C8010E94521749 +:1033100086E0E8EBF1E0DF011D928A95E9F7FE2CEB +:103320008AC04D875E878D859E856A8B0E94911726 +:103330006A89882309F4BECF662309F4BBCF2091A4 +:10334000BD01822F82958F7090E002970CF48ECF92 +:103350008091B8019091B9019A8389831B82DD82A3 +:10336000CC822E83CE0101967FCF809590958C0DD7 +:103370009D1DACCFF62E662309F49CCF75132EC08D +:1033800034132CC02091BD0120FD1FC0822F8295D7 +:103390008F70D9F0D80115962C9315978F3049F07E +:1033A0008F5F982F9295907F822F8F70892B159623 +:1033B0008C93C8010E94521786E0F801A8EBB1E097 +:1033C00001900D928A95E1F793CF86E0F801A8EB82 +:1033D000B1E001900D928A95E1F72DC04D875E878F +:1033E0008D859E850E949117811140CF8091BD01EE +:1033F00081608093BD01C8010E9452171CC06623E2 +:1034000009F458CF4D875E878D859E850E94911760 +:10341000882309F44FCF2ACF811148CF0CC0243024 +:1034200031050CF047CF9F7009F440CFF80195812A +:10343000907F09F03BCF8F2D62960FB6F894DEBFD8 +:103440000FBECDBFDF91CF911F910F91FF90EF90F5 +:10345000DF90CF9008951F93CF93DF93CDB7DEB762 +:103460002C970FB6F894DEBF0FBECDBF4F835887A1 +:1034700069877A878B879C87CE0107960E9464189C +:10348000882369F08F8198852A853B85232BF1F16C +:103490009F3F09F063C08F3F09F060C037C086E0EE +:1034A000FE013796DE01119601900D928A95E1F7A3 +:1034B0006F817885EA85FB85309741F17F3F11F474 +:1034C0006F3F21F12091870130E0C901019687709B +:1034D00099274091860150E08417950709F447C069 +:1034E00069837A83FD83EC8396E0929FD001939F5A +:1034F000B00D1124A857BE4FFE01319601900D92D8 +:103500009A95E1F7809387010E94DA1716E080917F +:103510008601909187018917C1F1189FC00111247C +:1035200088579E4F0E946418882379F1E0918601A4 +:103530001E9FF0011124E857FE4F408151816281A6 +:103540007381848195810E94CA178091860190E0E1 +:1035500001968770992780938601D9CF4F8158852E +:1035600069857A858B859C850E94CA17CFCF0E947A +:103570008D171092870110928601E8EBF1E086E04A +:10358000DF011D928A95E9F7C1CF2C960FB6F8940A +:10359000DEBF0FBECDBFDF91CF911F910895EF9297 +:1035A000FF920F931F93CF93DF938C01009709F441 +:1035B0006CC0F12CEE24E394E8012196F80184918B +:1035C000843740F4843008F051C0813081F082307B +:1035D00019F15BC0853709F444C0A8F19CE7980F46 +:1035E000903708F052C08F770E94D81441C00E5F08 +:1035F0001F4FFE01C49180E28C0F883048F4C770E1 +:103600008E2D01C0880FCA95EAF70E94AB1D14C029 +:103610008C2F0E9410142DC00E5F1F4FFE01C4910D +:1036200080E28C0F883058F4C7708E2D01C0880F4F +:10363000CA95EAF70E94B11D0E94D21D1AC08C2FB4 +:103640000E94D81416C00E5F1F4FFE01C491CC23F8 +:1036500081F08FE99FE00197F1F700C00000C150B1 +:10366000F6CF0E5F1F4FFE01F49003C00E941014AE +:103670008E018F2D882309F49FCFEFE9FFE031976A +:10368000F1F700C000008150F5CFDF91CF911F917D +:103690000F91FF90EF90089508956093C201709389 +:1036A000C3018093C4019093C5010C9479170F93C3 +:1036B0001F930091C2011091C3012091C401309168 +:1036C000C501DC01CB01802B912BA22BB32B809366 +:1036D000C2019093C301A093C401B093C5011F918F +:1036E0000F910C9479170F931F930091C2011091C1 +:1036F000C3012091C4013091C501DC01CB018023BD +:103700009123A223B3238093C2019093C301A0937A +:10371000C401B093C5011F910F910C9479170F93B9 +:103720001F930091C2011091C3012091C4013091F7 +:10373000C501DC01CB0180279127A227B327809305 +:10374000C2019093C301A093C401B093C5011F911E +:103750000F910C9479171092BE011092BF01109234 +:10376000C0011092C1010C94791741E050E060E073 +:1037700070E004C0440F551F661F771F8A95D2F76B +:103780004093BE015093BF016093C0017093C1018B +:103790000C94791741E050E060E070E004C0440F01 +:1037A000551F661F771F8A95D2F78091BE019091B1 +:1037B000BF01A091C001B091C101482B592B6A2BC8 +:1037C0007B2B4093BE015093BF016093C001709367 +:1037D000C1010C94791741E050E060E070E004C052 +:1037E000440F551F661F771F8A95D2F74095509555 +:1037F000609570958091BE019091BF01A091C0012C +:10380000B091C101482359236A237B234093BE0111 +:103810005093BF016093C0017093C1010C9479175C +:1038200041E050E060E070E004C0440F551F661FA7 +:10383000771F8A95D2F78091BE019091BF01A09128 +:10384000C001B091C101482759276A277B274093BF +:10385000BE015093BF016093C0017093C1010C94ED +:1038600079170F931F930091BE011091BF01209112 +:10387000C0013091C101DC01CB01802B912BA22B27 +:10388000B32B8093BE019093BF01A093C001B0936E +:10389000C1011F910F910C9479170F931F93009101 +:1038A000BE011091BF012091C0013091C101DC0126 +:1038B000CB0180239123A223B3238093BE01909355 +:1038C000BF01A093C001B093C1011F910F910C944F +:1038D00079170F931F930091BE011091BF012091A2 +:1038E000C0013091C101DC01CB0180279127A227C3 +:1038F000B3278093BE019093BF01A093C001B09302 +:10390000C1011F910F910C9479170895CF92DF9206 +:10391000EF92FF920F931F93CF93DF938C01C09090 +:10392000C201D090C301E090C401F090C501809124 +:10393000BE019091BF01A091C001B091C101C82A00 +:10394000D92AEA2AFB2ACFE1D0E0D701C6010C2E02 +:1039500004C0B695A795979587950A94D2F780FFEE +:1039600006C0B8018C2F0E94DF09019721F421972E +:1039700060F780E001C08C2FDF91CF911F910F91F4 +:10398000FF90EF90DF90CF900895CF93DF93EC01FD +:103990000E94861CBE010E94DF09DF91CF9108952D +:1039A000CB010E94C51C08958091C601859585951F +:1039B000859508958091C6018770089598E0899F44 +:1039C00090011124262B2093C6010C94CA1B209130 +:1039D000C601809582238093C601982F977069F461 +:1039E00030E0482F552747FD50952417350729F01B +:1039F0008595859585950C94EB1B08959091C6014E +:103A0000977081E009F480E0089590910C0199236A +:103A100021F090910D01911109C020910E0130917A +:103A20000F01F90132969FEF40E01FC0982F969545 +:103A3000969596959F3050F5E0910E01F0910F010B +:103A4000E90FF11D877021E030E0A90102C0440FA9 +:103A5000551F8A95E2F7CA019181892B81830895C8 +:103A60009F3F39F04F5F4E3041F051915813F8CFDE +:103A70000DC05111F7CF942FF5CF9F3F39F0F901C9 +:103A8000E90FF11D97FDFA958283089508959091AD +:103A90000C01992321F090910D01911109C0209101 +:103AA0000E0130910F01F9013296205F3F4F1FC088 +:103AB000982F9695969596959F30F0F4E0910E018B +:103AC000F0910F01E90FF11D877021E030E0A901AD +:103AD00002C0440F551F8A95E2F7CA018095918173 +:103AE0008923818308953196E217F30729F09081A5 +:103AF0009813F9CF1082F7CF089581E090E0E0911C +:103B00000E01F0910F01E80FF91F1082019680312C +:103B10009105A9F708959091DA01892B8093DA0134 +:103B2000089580959091DA0189238093DA010895B0 +:103B30001092DA0108959091D901892B8093D901CF +:103B4000089580959091D90189238093D901089592 +:103B50001092D90108959091D801892B8093D801B2 +:103B6000089580959091D80189238093D801089574 +:103B70001092D80108958093C70108951092C7014B +:103B8000089580910E0190910F01FC0131969C01E6 +:103B9000205F3F4F80E0919191118F5FE217F30713 +:103BA000D1F70895E0910E01F0910F018091DA01B3 +:103BB0008083E0910E01F0910F0190818091D901F5 +:103BC000892B8083E0910E01F0910F01908180910B +:103BD000D801892B80838091C701882361F0E0910F +:103BE0000E01F0910F019081892B80830E94C11DED +:103BF00081111092C70180910E0190910F010C94D8 +:103C0000001320E0009739F0AC01415051098423A2 +:103C100095232F5FF7CF822F0895CF92DF92EF92F7 +:103C2000FF926C01EE24FF24C114D104E104F104DD +:103C300021F0C701B60120E101C020E0C72ED82E37 +:103C4000E92EFF24C114D104E104F10419F0285F26 +:103C5000C701B6016B017C0154E0F694E794D79458 +:103C6000C7945A95D1F7C114D104E104F10419F0B5 +:103C70002C5FC701B6016B017C0142E0F694E7942A +:103C8000D794C7944A95D1F7C114D104E104F10443 +:103C900019F02E5FC701B601DC01CB01B695A795DF +:103CA00097958795892B8A2B8B2B09F02F5F822F75 +:103CB000FF90EF90DF90CF9008958091F4018430D1 +:103CC00021F11092DC0120E488E190E00FB6F89435 +:103CD000A895809360000FBE2093600080E00E9452 +:103CE000F10B83B7817F846083BF83B7816083BF1B +:103CF0007894889583B78E7F83BF88E10FB6F89458 +:103D000080936000109260000FBE089508950E9495 +:103D10004F040E9462040E94861E0E94570591E093 +:103D2000811101C090E0892F08950E948D170E9493 +:103D3000F4120C94F10B82E084BD93E095BD9AEFF0 +:103D400097BD80936E0008952FB7F8948091DD01A0 +:103D50009091DE01A091DF01B091E0012FBF0895A5 +:103D6000CF92DF92EF92FF920F931F932FB7F894A9 +:103D70004091DD015091DE016091DF017091E00121 +:103D80002FBF6A017B01EE24FF248C0120E030E08C +:103D9000C016D106E206F30610F4415051099A010B +:103DA000281B390BC9011F910F91FF90EF90DF90F5 +:103DB000CF9008951F920F920FB60F9211248F93F8 +:103DC0009F93AF93BF938091DD019091DE01A0910D +:103DD000DF01B091E0010196A11DB11D8093DD01CD +:103DE0009093DE01A093DF01B093E001BF91AF910A +:103DF0009F918F910F900FBE0F901F9018950E946A +:103E0000F10FF8942FEF87EA91E62150804090401F +:103E1000E1F700C0000087E090EBDC018093FD013A +:103E20009093FE01A093FF01B09300029CE088E113 +:103E30000FB6F894A895809360000FBE9093600031 +:103E4000FFCF0E94591F811102C00E943F1F0E9494 +:103E5000641F8093DB010E946C1F90E09093EF0140 +:103E60008093EE0187FB882780F980930D010E94E3 +:103E7000681F682F70E080E090E00C944D1B6DEEA1 +:103E80007EEF80E090E00E94A72560E082E090E075 +:103E90000E94952560E083E090E00E94952560E017 +:103EA00084E090E00E94952560E085E090E00C942D +:103EB000952580E090E00E948F2521E08D3E9E4F69 +:103EC00009F020E0822F089582E090E00C9487258D +:103ED00083E090E00C94872584E090E00C948725A3 +:103EE000682F84E090E00C9495258091E30180FF99 +:103EF0000BC06091130185E0689FB0011124759596 +:103F00006795759567952BC081FF09C06091130176 +:103F100085E0689FB00111247595679520C082FFE8 +:103F200007C06091130185E0689FB001112417C09C +:103F30009091E4019923D1F060911201961788F7CE +:103F40002091130185E0289F90011124929FA001E8 +:103F5000939F500D112470E0CA010E9459256038CA +:103F6000710540F46115710539F002C065E070E03B +:103F7000862F08958FE7089581E008958091E301E9 +:103F800080FF08C06091110170E075956795759587 +:103F9000679521C081FF06C06091110170E07595A1 +:103FA000679519C082FF04C06091110170E010C0D4 +:103FB0009091E4019923C1F0609110019617A0F748 +:103FC00080911101899FC001112470E00E94592540 +:103FD0006038710528F46115710521F0862F089568 +:103FE0008FE7089581E0089561E070E0F4CF803FAD +:103FF00021F40E94751F819504C0813F29F40E941D +:10400000751F8093E7010895823F21F40E94751F78 +:10401000819504C0833F29F40E94751F8093E601B7 +:104020000895893F19F40E94BE1F05C08A3F31F4EC +:104030000E94BE1F81958093E80108958B3F21F473 +:104040000E94BE1F819504C08C3F29F40E94BE1FB0 +:104050008093E9010895843F21F48091E501816016 +:1040600017C0853F21F48091E501826011C0863F31 +:1040700021F48091E50184600BC0873F21F4809199 +:10408000E501886005C0883F31F48091E5018061D9 +:104090008093E50108958D3F21F48091E3018160D3 +:1040A0000BC08E3F21F48091E301826005C08F3FF9 +:1040B00029F48091E30184608093E3010895803FB7 +:1040C00039F48091E70187FF6CC01092E70169C065 +:1040D000813F29F48091E7011816BCF362C09091EA +:1040E000E601823F29F497FF5CC01092E60159C0B7 +:1040F000833F19F41916CCF354C0893F41F48091E1 +:10410000E80118160CF04DC01092E8014AC08A3F31 +:1041100029F48091E80187FF44C0F6CF8B3F39F442 +:104120008091E90187FF3DC01092E9013AC08C3FC0 +:1041300029F48091E9011816BCF333C0843F21F4BF +:104140008091E5018E7F17C0853F21F48091E501C4 +:104150008D7F11C0863F21F48091E5018B7F0BC0DC +:10416000873F21F48091E501877F05C0883F31F4C6 +:104170008091E5018F7E8093E50113C08D3F21F48E +:104180008091E3018E7F0BC08E3F21F48091E3018B +:104190008D7F05C08F3F29F48091E3018B7F809351 +:1041A000E3018091E60181110EC08091E701811148 +:1041B0000AC08091E801811106C08091E901811156 +:1041C00002C01092E401089585EE91E00E940B1365 +:1041D0000E94A41E9093E2018093E10108951F9331 +:1041E000CF93DF938091E1019091E2010E94B01E94 +:1041F000AC019091E401992321F02091140130E069 +:1042000006C0209115018AE0289F900111244217D1 +:10421000530708F486C08091E601C091E701D09170 +:10422000E8011091E901811107C0C11176C0D111D7 +:1042300074C0111172C075C09F3F19F09F5F9093B9 +:10424000E401181624F40E94751F8093E601809102 +:10425000E60187FF05C00E94751F81958093E601E6 +:104260001C1624F40E94751F8093E7018091E701DA +:1042700087FF05C00E94751F81958093E7016091BB +:10428000E601662339F1C091E701CC2319F17727C4 +:1042900067FD7095872F972F0E946A2423E333E3ED +:1042A00043E35FE30E94CE240E9437246093E6013B +:1042B0006C2F772767FD7095872F972F0E946A24B0 +:1042C00023E333E343E35FE30E94CE240E943724D9 +:1042D0006093E7011D1624F40E94BE1F8093E8013D +:1042E0008091E80187FF05C00E94BE1F81958093E1 +:1042F000E801111624F40E94BE1F8093E901809109 +:10430000E90187FF05C00E94BE1F81958093E901E6 +:10431000DF91CF911F910C94E4209F3F09F08ECF45 +:1043200096CFDF91CF911F910895E5EEF1E085E002 +:10433000DF011D928A95E9F71092E4011092E301E2 +:104340000895833081F128F4813059F08230D1F022 +:104350000895853009F449C0B8F1863009F456C093 +:10436000089580911501262F30E0280F311D2F3F31 +:10437000310524F4680F6093150108958FEF809341 +:104380001501089580911401262F30E0280F311D6A +:104390002F3F310524F4680F6093140108958FEFC7 +:1043A00080931401089580911301262F30E0280F87 +:1043B000311D2F3F310524F4680F609313010895D8 +:1043C0008FEF80931301089580911201262F30E022 +:1043D000280F311D2F3F310524F4680F609312011F +:1043E00008958FEF80931201089580911101262F77 +:1043F00030E0280F311D2F3F310524F4680F609302 +:10440000110108958FEF809311010895809110019B +:10441000262F30E0280F311D2F3F310524F4680F7F +:104420006093100108958FEF8093100108958330F9 +:1044300011F128F4813049F0823091F008958530EF +:1044400081F120F18630C1F108958091150168173E +:1044500020F4861B8093150108951092150108958C +:1044600080911401681720F4861B8093140108952D +:1044700010921401089580911301681720F4861B8F +:1044800080931301089510921301089580911201F1 +:10449000681720F4861B8093120108951092120170 +:1044A000089580911101681720F4861B80931101F3 +:1044B000089510921101089580911001681720F459 +:1044C000861B8093100108951092100108950F9398 +:1044D0001F938D3109F471C008F045C0803109F493 +:1044E00085C008F5873009F46FC068F4863009F09C +:1044F000ADC08091DB01817F8E7F8093DB0181E005 +:104500008093EB01A4C08B3009F49EC08E3009F07B +:104510009DC08091DB0182FB222720F991E0922748 +:1045200090FB82F96CC0863109F48EC060F4813151 +:1045300009F08CC00E948D1790910D0181E08927B0 +:1045400080930D0181C0893109F47EC08B3109F05F +:104550007DC08091DB0181FB222720F991E0922729 +:1045600090FB81F94CC0853309F466C048F487326A +:1045700009F462C008F44FC0893209F45DC066C016 +:10458000833438F48A3308F044C0883309F45CC0BB +:104590005DC0833409F450C0883409F057C00E94CC +:1045A0008D170FEF13ED20E3015010402040E1F78D +:1045B00000C000000E94FF1E47C00E94F1230E941D +:1045C000F4120E94F10B40C09091DB01892F80957D +:1045D000817080FB90F929F0966098609093DB01E0 +:1045E00036C0997F977F9093DB012EC08091DB01CD +:1045F00083FB222720F991E0922790FB83F9809397 +:10460000DB01992309F18091DB0181608093DB015B +:104610001BC0895301C08D5141E050E060E070E063 +:104620008A019B0104C0000F111F221F331F8A95AE +:10463000D2F7C901B80104C061E070E080E090E009 +:104640000E944D1B0E948D1781E001C080E01F91E8 +:104650000F91089580E0089580E008958E518A308A +:1046600030F4E82FF0E0E65DFE4F8081089580E0B1 +:104670000895CF93C82F8091EB01813079F018F025 +:104680008230E9F186C0E0910E01F0910F01808146 +:10469000813169F0823209F07EC009C0E0910E01DB +:1046A000F0910F018081813111F0823261F48C2F01 +:1046B0000E942A23811104C08C2F0E9467221DC0F2 +:1046C00081E090E01AC08C2F0E942C23811114C02D +:1046D000C43179F048F4CB3079F0C03109F05FC0D3 +:1046E00082E08093EB0108C0C93219F0C83321F091 +:1046F00056C01092EB0153C081E0817052C0C932A4 +:1047000081F110F5C43169F1A8F4C73009F045C052 +:104710008AE08093150194E19093140193E09093C3 +:1047200013018093120188E08093110188E2809345 +:10473000100133C082EE8C0F863078F58C2F0E94EA +:104740002E238093EA0129C0CE34E9F020F4CB3443 +:1047500021F56AE013C0C13579F0C235F1F461E0AA +:104760000DC08091EA01882319F01092EA0115C06A +:1047700081E08093EB0115C061E006C08091EA0101 +:104780000E94A1210AC06AE08091EA010E941722DA +:1047900004C01092EB0180E004C081E002C080E020 +:1047A000ACCFCF910895E1E8F0E08081886080830C +:1047B0008081816080838FB7F89493E09093890023 +:1047C00090ED909388008FBF0895EFE6F0E0808130 +:1047D000826080830895EFE6F0E080818D7F8083A2 +:1047E0000895EFE6F0E0908182E0892780830895C4 +:1047F0001F920F920FB60F9211242F933F934F9356 +:104800005F936F937F938F939F93AF93BF93EF9338 +:10481000FF938091EC019091ED0101969093ED0151 +:104820008093EC01811103C082E00E94F10BE091C2 +:10483000ED01E695E695F0E0EA54F94FE4918091B8 +:10484000EC018E1303C080E00E94F10BFF91EF9109 +:10485000BF91AF919F918F917F916F915F914F9198 +:104860003F912F910F900FBE0F901F90189504D07D +:104870006894B1118DC0089570D088F09F5790F062 +:10488000B92F9927B751A0F0D1F0660F771F881F75 +:10489000991F1AF0BA95C9F712C0B13081F077D0DC +:1048A000B1E0089574C0672F782F8827B85F39F07A +:1048B000B93FCCF3869577956795B395D9F73EF4D4 +:1048C00090958095709561957F4F8F4F9F4F08957C +:1048D000E89409C097FB3EF490958095709561959A +:1048E0007F4F8F4F9F4F9923A9F0F92F96E9BB2750 +:1048F0009395F695879577956795B795F111F8CFCC +:10490000FAF4BB0F11F460FF1BC06F5F7F4F8F4F36 +:104910009F4F16C0882311F096E911C0772321F02C +:104920009EE8872F762F05C0662371F096E8862FC4 +:1049300070E060E02AF09A95660F771F881FDAF71B +:10494000880F9695879597F9089557FD9058440FCD +:10495000551F59F05F3F71F04795880F97FB991FDE +:1049600061F09F3F79F0879508951216130614069B +:10497000551FF2CF4695F1DF08C016161706180628 +:10498000991FF1CF86957105610508940895E89403 +:10499000BB2766277727CB0197F908950BD078C0FE +:1049A00069D028F06ED018F0952309F05AC05FC086 +:1049B0001124EECFCADFA0F3959FD1F3950F50E0FD +:1049C000551F629FF001729FBB27F00DB11D639FC1 +:1049D000AA27F00DB11DAA1F649F6627B00DA11D67 +:1049E000661F829F2227B00DA11D621F739FB00D0D +:1049F000A11D621F839FA00D611D221F749F33277D +:104A0000A00D611D231F849F600D211D822F762F15 +:104A10006A2F11249F5750408AF0E1F088234AF012 +:104A2000EE0FFF1FBB1F661F771F881F915050405E +:104A3000A9F79E3F510570F014C0AACF5F3FECF379 +:104A4000983EDCF3869577956795B795F795E7954A +:104A50009F5FC1F7FE2B880F911D9695879597F95B +:104A6000089597F99F6780E870E060E008959FEFF0 +:104A700080EC089500240A941616170618060906F5 +:104A8000089500240A9412161306140605060895C4 +:104A9000092E0394000C11F4882352F0BB0F40F44C +:104AA000BF2B11F460FF04C06F5F7F4F8F4F9F4F8C +:104AB000089597FB072E16F4009407D077FD09D0D0 +:104AC0000E94732507FC05D03EF4909581959F4F79 +:104AD0000895709561957F4F0895EE0FFF1F059023 +:104AE000F491E02D0994AA1BBB1B51E107C0AA1F3A +:104AF000BB1FA617B70710F0A61BB70B881F991F7F +:104B00005A95A9F780959095BC01CD010895F99922 +:104B1000FECF92BD81BDF89A992780B50895A8E18E +:104B2000B0E042E050E00C94AF25262FF999FECF7B +:104B300092BD81BDF89A019700B4021639F01FBAF0 +:104B400020BD0FB6F894FA9AF99A0FBE089501960F +:104B5000272F0E9496250C949525DC01CB01FC01A2 +:104B6000F999FECF06C0F2BDE1BDF89A319600B4C6 +:0E4B70000D9241505040B8F70895F894FFCFD1 +:104B7E000220F30B810C5E0C2A0CF60B0101C8010E +:104B8E0028080A03140A404D363976062906F3051D +:104B9E00BA054D0566057F05980501020304050655 +:044BAE0007080900EB +:00000001FF diff --git a/keyboards/ergodox_ez/keymaps/workman_osx_mdw/keymap.c b/keyboards/ergodox_ez/keymaps/workman_osx_mdw/keymap.c new file mode 100644 index 0000000000..c9c0f4c279 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/workman_osx_mdw/keymap.c @@ -0,0 +1,366 @@ +#include "ergodox_ez.h" +#include "debug.h" +#include "action_layer.h" +// README +// This keyboard layout is based on the [Workman Dead layout](https://github.com/ojbucao/Workman/tree/master/mac#workman-dead-for-programmers), which uses the comma as a dead key to trigger a second layer. +// Since I have more keys at my disposal on the ErgoDox, I moved the dead key to the bottom right. There are still a lot of +// blanks so still discovering what I like. +// If you aren't familiar with a dead key, the idea is that you tap the dead key which switches the layout. the next key you hit +// triggers the key you pressed AND switches the layout back to the original. For now I do this with a super kludgey macro and I +// look forward to learning about a more elegant way to do the same thing. Until then, this will have to do. + + +// TODO: Define layer names that make sense for the ErgoDox EZ. +#define BASE 0 // default layer +#define SYMB 1 // symbols +#define MDIA 2 // media keys +#define DEAD 3 // dead version of the symbols layer + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* Keymap 0: Basic layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | ` | 1 | 2 | 3 | 4 | 5 | LEFT | | RIGHT| 6 | 7 | 8 | 9 | 0 | - | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Tab | Q | D | R | W | B | L1 | | L1 | J | F | U | P | ; | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | Hyper | A | S | H | T | G |------| |------| Y | N | E | O | I | ' | + * |--------+------+------+------+------+------| | | Meh |------+------+------+------+------+--------| + * | LShift | Z | X | M | C | V | | | | K | L | , | . |//Ctrl| RShift | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | CTRL | OPT | CMD | | Left | Down | Up | Right| L3 | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+--------+------. + * | | | Home | | PgUp | | | + * |Bckspc| Space|------| |------| Space |Enter | + * | | | 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, KC_LEFT, + KC_TAB, KC_Q, KC_D, KC_R, KC_W, KC_B, TG(1), + ALL_T(KC_ESC), KC_A, KC_S, KC_H, KC_T, KC_G, + KC_LSFT, KC_Z, KC_X, KC_M, KC_C, KC_V, KC_NO, + KC_NO, KC_NO, KC_LCTL,KC_LALT,KC_LGUI, + KC_NO, KC_NO, + KC_HOME, + KC_BSPC,KC_SPC,KC_END, + // right hand + KC_RGHT, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, + TG(1), KC_J, KC_F, KC_U, KC_P, KC_SCLN, KC_BSLS, + KC_Y, KC_N, KC_E, KC_O, KC_I, KC_QUOT, + MEH_T(KC_NO),KC_K, KC_L, KC_COMM,KC_DOT, CTL_T(KC_SLSH), KC_RSFT, + KC_LEFT,KC_DOWN,KC_UP, KC_RGHT, KC_FN4, + KC_NO, KC_NO, + KC_PGUP, + KC_PGDN,KC_SPC,KC_ENT + ), +/* Keymap 1: Symbol Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | % | & | ? | + | @ | | | | $ | _ | [ | ] | ! | F12 | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | / | ( | = | 0 | { |------| |------| } | 1 | * | ) | - | " | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | 6 | 7 | 8 | 9 | | | | | | \ | 2 | 3 | 4 | 5 | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// SYMBOLS +[SYMB] = KEYMAP( + // left hand + KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, + KC_TRNS, KC_PERC, KC_AMPR, LSFT(KC_SLSH), LSFT(KC_EQL), KC_AT, KC_TRNS, + KC_TRNS, KC_SLSH, KC_LPRN, KC_EQL, KC_0, LSFT(KC_LBRC), + KC_TRNS, KC_6, KC_7, KC_8, KC_9, KC_PIPE, 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_DLR, KC_UNDERSCORE, KC_LBRC, KC_RBRC, KC_EXLM, KC_F12, + KC_RCBR, KC_1, KC_ASTR, KC_RPRN, KC_MINS, KC_QUOT, + KC_TRNS, KC_SLSH, KC_2, KC_3, KC_4, 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 +), +/* 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 +), +/* Keymap 4: Dead Symbol Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | % | & | ? | + | @ | | | | $ | _ | [ | ] | ! | F12 | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | / | ( | = | 0 | { |------| |------| } | 1 | * | ) | - | " | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | 6 | 7 | 8 | 9 | | | | | | \ | 2 | 3 | 4 | 5 | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// SYMBOLS +[DEAD] = KEYMAP( + // left hand + KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, + KC_TRNS, M(100), M(101), M(102), M(103), M(104), KC_TRNS, + KC_TRNS, M(109), M(110), M(111), M(112), M(113), + KC_TRNS, M(120), M(121), M(122), M(123), M(124), 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, M(105), M(106), M(107), M(108), M(130), KC_F12, + M(114), M(115), M(116), M(117), M(118), M(119), + KC_TRNS, M(125), M(126), M(127), M(128), M(129), 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(SYMB), // FN1 - Momentary Layer 1 (Symbols) + [2] = ACTION_LAYER_ON(BASE,0), // FN2 - Go back to the base layer + [3] = ACTION_LAYER_ON(DEAD,0), + [4] = ACTION_LAYER_TOGGLE(DEAD), +}; + +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; + case 100: + layer_clear(); + return MACRODOWN(D(LSFT), T(5), U(LSFT), T(FN4), END); + break; + case 101: + layer_clear(); + return MACRODOWN(D(LSFT), T(7), U(LSFT), T(FN4), END); + break; + case 102: + layer_clear(); + return MACRODOWN(D(LSFT), T(SLSH), U(LSFT), T(FN4), END); + break; + case 103: + layer_clear(); + return MACRODOWN(D(LSFT), T(EQL), U(LSFT), T(FN4), END); + break; + case 104: + layer_clear(); + return MACRODOWN(D(LSFT), T(2), U(LSFT), T(FN4), END); + break; + case 105: + layer_clear(); + return MACRODOWN(D(LSFT), T(4), U(LSFT), T(FN4), END); + break; + case 106: + layer_clear(); + return MACRODOWN(D(LSFT), T(MINS), U(LSFT), T(FN4), END); + break; + case 107: + layer_clear(); + return MACRODOWN(T(LBRC), T(FN4), END); + break; + case 108: + layer_clear(); + return MACRODOWN(T(RBRC), T(FN4), END); + break; + case 130: + layer_clear(); + return MACRODOWN(D(LSFT), T(1), U(LSFT), T(FN4), END); + break; + case 109: + layer_clear(); + return MACRODOWN(T(SLSH), T(FN4), END); + break; + case 110: + layer_clear(); + return MACRODOWN(D(LSFT), T(9), U(LSFT), T(FN4), END); + break; + case 111: + layer_clear(); + return MACRODOWN(T(EQL), T(FN4), END); + break; + case 112: + layer_clear(); + return MACRODOWN(T(0), T(FN4), END); + break; + case 113: + layer_clear(); + return MACRODOWN(D(LSFT), T(LBRC), U(LSFT), T(FN4), END); + break; + case 114: + layer_clear(); + return MACRODOWN(D(LSFT), T(RBRC), U(LSFT), T(FN4), END); + break; + case 115: + layer_clear(); + return MACRODOWN(T(1), T(FN4), END); + break; + case 116: + layer_clear(); + return MACRODOWN(D(LSFT), T(8), U(LSFT), T(FN4), END); + break; + case 117: + layer_clear(); + return MACRODOWN(D(LSFT), T(0), U(LSFT), T(FN4), END); + break; + case 118: + layer_clear(); + return MACRODOWN(T(MINS), T(FN4), END); + break; + case 119: + layer_clear(); + return MACRODOWN(D(LSFT), T(QUOT), U(LSFT), T(FN4), END); + break; + case 120: + layer_clear(); + return MACRODOWN(T(6), T(FN4), END); + break; + case 121: + layer_clear(); + return MACRODOWN(T(7), T(FN4), END); + break; + case 122: + layer_clear(); + return MACRODOWN(T(8), T(FN4), END); + break; + case 123: + layer_clear(); + return MACRODOWN(T(9), T(FN4), END); + break; + case 124: + layer_clear(); + return MACRODOWN(D(LSFT), T(BSLS), U(LSFT), T(FN4), END); + break; + case 125: + layer_clear(); + return MACRODOWN(T(BSLS), T(FN4), END); + break; + case 126: + layer_clear(); + return MACRODOWN(T(2), T(FN4), END); + break; + case 127: + layer_clear(); + return MACRODOWN(T(3), T(FN4), END); + break; + case 128: + layer_clear(); + return MACRODOWN(T(4), T(FN4), END); + break; + case 129: + layer_clear(); + return MACRODOWN(T(5), T(FN4), END); + break; + + default: + return MACRO_NONE; + } + 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/keyboards/ergodox_ez/keymaps/zweihander-osx/compiled.hex b/keyboards/ergodox_ez/keymaps/zweihander-osx/compiled.hex new file mode 100644 index 0000000000..56a19987fb --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/zweihander-osx/compiled.hex @@ -0,0 +1,1173 @@ +:100000000C94D3020C9417030C9417030C9417034D +:100010000C9417030C9417030C9417030C941703F8 +:100020000C9417030C9417030C94DA0D0C94AC0E7B +:100030000C9417030C9417030C9417030C941703D8 +:100040000C9417030C94B6220C9417030C9417030A +:100050000C9417030C94491C0C9417030C9417036D +:100060000C9417030C9417030C9417030C941703A8 +:100070000C9417030C9417030C9417030C94170398 +:100080000C9417030C9417030C9417030C94170388 +:100090000C9417030C9417030C9417030C94170378 +:1000A0000C9417030C9417030C941703190F3B0FB0 +:1000B00029103B0F2910800FA30F2910F80F0B10E8 +:1000C000DA12DA12091309133F135F139014901414 +:1000D0006A1390141A141A148114901490148A1428 +:1000E0002714271427142714271427142714271438 +:1000F0002714271427142714271427142714271428 +:10010000391446144D1454145E14750A01E2012C7E +:10011000022C02E2746401160216010402040109B1 +:1001200002090104020401150215010C020C012848 +:10013000022800750A01E2012C022C02E27464011B +:10014000170217010802080115021501100210011B +:100150000C020C0111021101040204010F020F0133 +:1001600028022800750A01E2012C022C02E27464C4 +:100170000105020501050205010802080107020741 +:10018000010C020C011702170128022800750A0150 +:10019000E30116021602E301E3012B022B02E30145 +:1001A000E30115021502E300750A01E301160216C8 +:1001B00002E301E3012B022B02E3000000F0A12E79 +:1001C000004C002A00E100E00000001E00140004C2 +:1001D000001D00E200E2001F001A0016001B00E3F1 +:1001E000002A00200008000700060050002C002113 +:1001F000001500090019004F004B00220017000AEB +:1002000000050000003500015401520000E3000029 +:10021000003400015401520000E3000000290023D3 +:10022000001C000B00110000002A00240018000D23 +:1002300000100052004E0025000C000E0036005148 +:10024000002800260012000F0037002F002B002787 +:10025000001300334238713000E0002D00310034CB +:1002600078E5002C00000001000100010001000100 +:100270000000003A002F0036020100010001003B9F +:1002800000300037020100010001003C002F02266F +:10029000020100010001003D0030022702010001BF +:1002A0000001003E003402340001000000010001A2 +:1002B0000001000000010000000100010001000039 +:1002C000000100000001003F0038002D0024020062 +:1002D0000001004000240021001E0027004A0041C8 +:1002E00000250022001F00370001004200260023E5 +:1002F00000200050000100430025022E022E004F76 +:10030000004D004400450001000100010000000113 +:10031000000100010001000100000069000100016E +:10032000000100010001006A000100043001000129 +:1003300000010001004B004E00010001000100011E +:100340000001300100010001004A000100033001FA +:100350000002300000010001000100000001000067 +:100360000001001408010000000100000001001A53 +:100370000830082F082C0200000100350A520C50EA +:10038000002C00A9000100350852005100AC00AA61 +:100390000019080100510C4F00AB00A8000608012D +:1003A0000001000100010001001B08A5000100AED2 +:1003B0000001000100000016034500720067006F95 +:1003C0000044006F007800200045005A000000162D +:1003D000034500720067006F0044006F0078002042 +:1003E0000045005A0000000403090409026D0004DE +:1003F0000100A0FA09040000010301010009211114 +:10040000010001223F000705810308000A090401D9 +:10041000000103010200092111010001224D000722 +:1004200005820308000A0904020001030000000914 +:1004300021110100012236000705830308000A0983 +:100440000403000103000000092111010001223909 +:1004500000070584031000011201100100000008CC +:10046000EDFE071301000102000105010906A101CB +:10047000050719E029E71500250195087501810296 +:100480000508190129059505750191029501750366 +:100490009101050719002977150025019578750147 +:1004A0008102C005010980A101850216010026B75D +:1004B000001A01002AB700751095018100C0050CD3 +:1004C0000901A1018503160100269C021A01002AD8 +:1004D0009C02751095018100C005010902A1010966 +:1004E00001A10005091901290515002501950575CA +:1004F000018102950175038101050109300931155A +:1005000081257F95027508810609381581257F951B +:100510000175088106050C0A38021581257F9501B1 +:1005200075088106C0C005010906A101050719E08B +:1005300029E71500250195087501810295017508C7 +:10054000810105081901290595057501910295019B +:10055000750391010507190029FF150025FF950670 +:1005600075088100C00000000000000000000000CD +:10057000010204060A0F17202C3A4A5D71879DB3C9 +:10058000C7DAE9F5FCFFFCF5E9DAC7B39D87715DD1 +:100590004A3A2C20170F0A0604020100000000004E +:1005A00000000000000011241FBECFEFDAE0DEBF24 +:1005B000CDBF04B603FE24C08091FB019091FC01E5 +:1005C000A091FD01B091FE018730904BA740B04B48 +:1005D000B9F41092FB011092FC011092FD011092EF +:1005E000FE0114BE84B7877F84BF88E10FB6F894FC +:1005F00080936000109260000FBEE0E0FFE3099579 +:1006000011E0A0E0B1E0EAEFF8E402C005900D923D +:10061000A433B107D9F711E0A4E3B1E001C01D9202 +:10062000AB3FB107E1F70E941E0B0C947B240C94A6 +:1006300000001092B9008AE08093B800089594EA0F +:100640009093BC009091BC0097FFFCCF9091B900B3 +:10065000987F983021F0903111F081E008958093D7 +:10066000BB0084E88093BC008091BC0087FFFCCF76 +:100670008091B900887F883111F0803471F780E073 +:10068000089584E98093BC008091BC0084FDFCCF78 +:1006900008958093BB0084E88093BC008091BC00E7 +:1006A00087FFFCCF9091B900987F81E0983209F4E0 +:1006B00080E0089584E88093BC008091BC0087FFAF +:1006C000FCCF8091BB00089580910101811115C07C +:1006D00080E40E941F038093010181110CC082E11C +:1006E0000E94490380930101811105C08FEF0E9490 +:1006F0004903809301010E94410384B1807F84B942 +:1007000085B1807F85B98AB1837F8AB98BB1837FB8 +:100710008BB93E98469808950E941F058093010169 +:100720000E94640380B38C7080BB81B3836F81BBF4 +:10073000A5E3B1E0E3E4F1E08EE08E0F11921D92AB +:100740008E13FCCF0C940905BF92CF92DF92EF92EB +:10075000FF920F931F93CF93DF9380910101882322 +:1007600079F0809134018F5F80933401811108C04A +:100770000E941F0580930101811102C00E94B104F3 +:1007800005E311E0C0E0D0E0DD24D39482E0C82E80 +:10079000EE24E394F12CC730D10500F580910101DE +:1007A000811164C080E40E941F03809301018111C4 +:1007B00012C082E10E9449038093010181110BC0A4 +:1007C000C7010C2E01C0880F0A94EAF780950E9499 +:1007D0004903809301010E94410348C0CA30A1F03F +:1007E00028F4C83059F0C93061F005C0CC3089F028 +:1007F00070F0CD3089F0209A289810C0219A29985D +:100800000DC0229A2A980AC0239A2B9807C0529AA0 +:1008100001C0539A5B9802C03E9A469890EA9A9516 +:10082000F1F79FB1799902C082E001C080E0917038 +:100830009D25982B7C9902C084E001C080E0892B23 +:100840007D9902C038E001C030E0832B7E9902C060 +:1008500020E101C020E0822B9FB19095991F99273C +:10086000991F9295990F907E892B0FC0809101015D +:10087000811149C080E40E941F03809301018823F5 +:1008800079F1B12C0E9441038B2DF80190819817CA +:1008900019F08083C09200010E94640321960F5FCB +:1008A0001F4FCE30D10509F076CF8091000188230B +:1008B00061F1815080930001882339F08FE99FE036 +:1008C0000197F1F700C0000020C0A3E4B1E0E5E328 +:1008D000F1E0CF01825F91919D938E13FCCF15C003 +:1008E00083E10E944903809301018111CACF81E411 +:1008F0000E941F03809301018111C3CF0E945A03FC +:10090000B82EB094BFCF80E0C0CF0E94AF0481E08A +:10091000DF91CF911F910F91FF90EF90DF90CF90DB +:10092000BF900895E82FF0E0ED5BFE4F80810895C1 +:1009300008950F931F93CF93DF93C3E4D1E010E0AA +:100940000C2F025F899190E00E946F1B180F0C130F +:10095000F9CF812FDF91CF911F910F9108950C94C2 +:100960009E0556985E9825982D9826982E9827983B +:100970002F988FEF90E09093890080938800909358 +:100980008B0080938A0090938D0080938C00259A31 +:100990002D9A2FEF80E792E0215080409040E1F7C0 +:1009A00000C00000269A2E9A2FEF80E792E0215097 +:1009B00080409040E1F700C00000279A2F9A2FEF67 +:1009C00080E792E0215080409040E1F700C00000B5 +:1009D00025982D982FEF80E792E02150804090409D +:1009E000E1F700C0000026982E982FEF80E792E0F4 +:1009F000215080409040E1F700C0000027982F98D8 +:100A000056985E9825982D9826982E9827982F9876 +:100A1000089589EA8093800089E08093810024987A +:100A20002C983F988AB18F748AB96E98479A8BB187 +:100A3000806B8BB9769A0E94B1040C949D0580E27C +:100A4000809301018091510181110EC00E94190310 +:100A500081E0809351012FEF83ED90E3215080409E +:100A60009040E1F700C0000080E40E941F038093E3 +:100A7000010181112EC00E9449038093010181115F +:100A800028C00E94490380930101811122C08FE395 +:100A90000E9449038093010181111BC00E94410300 +:100AA00080E40E941F0380930101811112C08CE039 +:100AB0000E9449038093010181110BC00E944903E8 +:100AC00080930101811105C08FE30E944903809347 +:100AD00001010E944103809101010895FC016230EF +:100AE000B9F028F4662341F0613061F023C063302F +:100AF000A9F06430C9F01EC082818823D9F088EA49 +:100B000091E0089582818823A9F08DE891E008950D +:100B10008281882379F084E691E008958281882398 +:100B200049F083E391E008958281882319F08AE0F7 +:100B300091E0089580E090E0089508956091BD01EE +:100B40007091BE018091BF019091C0010E947B1BFA +:100B500056985E9825982D9826982E9827982F9825 +:100B6000813019F0823021F00895259A2D9A089548 +:100B7000269A2E9A089581E0089581E008950C94B4 +:100B8000BD0508950F931F93CF93DF938C01FC0154 +:100B9000C081D181CE010E94F419BE010E946B0672 +:100BA000EC01B8010E94BF05882309F48DC0F8014B +:100BB0008281882309F44AC080915D0181111FC0A0 +:100BC000C431F0E5DF0709F051C00E94C10581E0A2 +:100BD00080935D010E94131C90935C0180935B01E4 +:100BE0001092540110925601109255011092580122 +:100BF0001092570110925A011092590165C08091CC +:100C00005B0190915C010E941F1C883C910570F46F +:100C100080915401E82FF0E0EE0FFF1FEB5AFE4FDA +:100C2000D183C0838F5F809354014EC0C43880E568 +:100C3000D80721F0C538D04501F13AC0F8018281CA +:100C4000882341F01092520182E01EC0C438E0E5D2 +:100C5000DE0759F580915201811106C086E20E949B +:100C60007E1186E20E94461282E01CC0C438F0E584 +:100C7000DF0741F3C538D045D9F4F80182818823D4 +:100C800031F01092530180E20E9495121DC08091B4 +:100C90005301811106C087E20E947E1187E20E9403 +:100CA000461280E20E949C120FC0C538D04529F33D +:100CB00081E08093520180935301C801DF91CF916D +:100CC0001F910F910C94BB0580E0DF91CF911F9194 +:100CD0000F910895089596E0799FF001112494E50D +:100CE000899FE00DF11D1124E60FF11DEE0FFF1F8E +:100CF000E154FE4F859194910895880F991FFC014E +:100D0000E55CFF4F859194910895880F991FFC0130 +:100D1000E554FE4F8591949108950F931F93CF93BF +:100D2000DF93EC01811520E3920750F5C11580E2B5 +:100D3000D80708F0C3C0CB3BD10590F4C83AD10521 +:100D400008F06AC0C53AD10508F05BC0C430D105CF +:100D500008F0D0C1219709F0CAC101E010E00AC231 +:100D6000CF3FD10511F008F0C5C1C03FD10508F053 +:100D7000A2C0CE01805E9109089708F4BBC1B7C13B +:100D8000C13090E5D90709F4A2C020F5C0318FE445 +:100D9000D80770F4C11590E4D90708F094C0C115C4 +:100DA00021E3D20708F0A3C1DD278E01106CE2C158 +:100DB000C115D04509F09BC10E94FB148FEF94E34D +:100DC0002CE0815090402040E1F700C000000E94DC +:100DD0006E1CD0C1C11597E5D90758F4C03121E583 +:100DE000D20708F01CC1C43180E5D80708F475C0EB +:100DF0007EC1CE0190578115904108F078C1DF7017 +:100E000073C1C53AD10509F477C1C63AD10509F0D5 +:100E100076C102E810E4AEC1C83AD10509F472C146 +:100E2000C93AD10509F471C1CA3AD10509F470C1B2 +:100E3000CB3AD10509F46FC1CC3AD10509F46EC1A2 +:100E4000CD3AD10509F46DC1C03BD10509F46CC19F +:100E5000CE3AD10509F46BC1CF3AD10509F46AC184 +:100E6000C13BD10509F469C1C23BD10509F468C190 +:100E7000C33BD10509F467C1C43BD10509F466C180 +:100E8000C53BD10509F465C1C63BD10509F464C170 +:100E9000C73BD10509F463C1C83BD10509F462C160 +:100EA000C93BD10509F461C1CA3BD10509F460C150 +:100EB00000E014E45FC18E0110655CC1CE019F703B +:100EC0000E94850658C1DF708E01106A53C180915F +:100ED000DA0181608093DA014DC10E94131E8111F5 +:100EE00002C00E94F91D0E94301E90E09093FB0109 +:100EF0008093FA01C23080E5D80721F48091FA018D +:100F0000816086C0C43090E5D90721F48091FA0150 +:100F100082607EC0C63020E5D20721F48091FA01BC +:100F2000846076C0C83080E5D80719F48091FA0152 +:100F300027C0CA3090E5D90721F48091FA01806179 +:100F400067C0CC3020E5D20721F48091FA0180629D +:100F50005FC0CE3080E5D80721F48091FA0180642B +:100F600057C0C03190E5D90721F48091FA0180681B +:100F70004FC0C23120E5D20729F48091FA01846084 +:100F8000886046C0C33080E5D80721F48091FA011B +:100F90008E7F3EC0C53090E5D90721F48091FA01DB +:100FA0008D7F36C0C73020E5D20721F48091FA0149 +:100FB0008B7F2EC0C93080E5D80719F48091FA01E3 +:100FC00026C0CB3090E5D90721F48091FA018F7EBD +:100FD0001FC0CD3020E5D20721F48091FA018F7D2A +:100FE00017C0CF3080E5D80721F48091FA018F7BBC +:100FF0000FC0C13190E5D90721F48091FA018F77B4 +:1010000007C0C331D04531F48091FA018B7F877FCF +:101010008093FA018091FA010E94341EABC08D2F9B +:1010200099278F70992781309105D9F49E012370FB +:10103000332702C0880F991F2A95E2F79C688E011A +:1010400044E0000F111F4A95E1F700271370802B31 +:10105000912B53E0CC0FDD1F5A95E1F7C076DD27C9 +:101060002FC08230910531F4DC2FCC278E01016F27 +:10107000106A80C08330910569F4CE01837099278E +:1010800001E010E002C0000F111F8A95E2F7C801CD +:101090009C680FC084309105B9F4CE018370992704 +:1010A00001E010E002C0000F111F8A95E2F7C801AD +:1010B0009A6823E0CC0FDD1F2A95E1F7C07ED77038 +:1010C0008C010C2B1D2B56C08530910531F4DC2F83 +:1010D000CC278E01046F106A4DC0069709F04AC0F4 +:1010E000CF71DD27DC2FCC278E01106243C000E0DA +:1010F00010E040C08E013EC001E810E43BC003E8B0 +:1011000010E438C002EE14E435C009EE14E432C035 +:101110000AEE14E42FC005EB14E42CC006EB14E433 +:1011200029C007EB14E426C00CEC14E423C00DEC3A +:1011300014E420C003E815E41DC00AE815E41AC051 +:1011400002E915E417C004E915E414C001E216E44D +:1011500011C003E216E40EC004E216E40BC005E27F +:1011600016E408C006E216E405C007E216E402C071 +:101170000AE216E4C801DF91CF911F910F91089503 +:1011800096E0799FF001112494E5899FE00DF11D0F +:101190001124E60FF11DEE0FFF1FE154FE4F859164 +:1011A0009491803E9105E0F4803C910558F581339F +:1011B000910509F46FC048F48932910509F463C0C0 +:1011C0008A32910509F46DC072C089339105E9F046 +:1011D00082389105D1F08533910509F44DC067C07F +:1011E000833E910581F138F4803E9105B9F0823E4D +:1011F0009105D9F05CC0863E910561F1873E91056D +:10120000A1F155C00E947D0608952091FA0120FDAC +:1012100002C021FF4CC080EE90E049C08091FA01ED +:1012200080FFF9CF89E390E042C08091FA0182FF0C +:101230000EC08091FA0184FF03C080E090E037C0C7 +:1012400083EE90E034C08091FA0182FFF2CF82EE0B +:1012500090E02DC08091FA0183FF0BC08091FA01CC +:1012600084FDEBCF87EE90E022C08091FA0183FFEE +:10127000F5CF86EE90E01BC08091FA0185FF07C094 +:1012800089E290E014C08091FA0185FFF9CF85E3EF +:1012900090E00DC08091FA0186FF07C08AE290E0DD +:1012A00006C08091FA0186FFF9CF81E390E00E94A9 +:1012B0008D06089508950C945A0980916E01089541 +:1012C000CF93DF9300D01F92CDB7DEB79C01809102 +:1012D000F101843019F593E099833B832A8390933D +:1012E000E9008FEF9091E800815095FD06C095EDE3 +:1012F0009A95F1F700008111F5CF8091E80085FF04 +:101300000DC040E050E063E070E0CE0101960E9425 +:10131000CA0B8091E8008E778093E8000F900F90C1 +:101320000F90DF91CF910895CF93DF9300D01F925C +:10133000CDB7DEB72091F101243021F522E02983D9 +:101340009B838A8383E08093E9008FEF9091E8008C +:10135000815095FD06C095ED9A95F1F70000811139 +:10136000F5CF8091E80085FF0DC040E050E063E0DC +:1013700070E0CE0101960E94CA0B8091E8008E7742 +:101380008093E8000F900F900F90DF91CF91089518 +:101390002091F1012430F1F422E02093E9002FEFB5 +:1013A0003091E800215035FD06C035ED3A95F1F752 +:1013B00000002111F5CF2091E80025FF0BC040E08F +:1013C00050E065E070E00E94CA0B8091E8008E77E3 +:1013D0008093E8000895CF93DF93EC019091F101A1 +:1013E000943009F046C080910C018823D9F0809197 +:1013F0000D018823B9F09093E9008FEF9091E800F8 +:10140000815095FD06C095E19A95F1F70000811194 +:10141000F5CF8091E80085FF2CC040E050E060E10E +:1014200070E017C081E08093E9008FEF9091E800B1 +:10143000815095FD06C095ED9A95F1F70000811158 +:10144000F5CF8091E80085FF14C040E050E068E0EF +:1014500070E0CE010E94CA0B8091E8008E778093E5 +:10146000E80080E1FE01AEE5B1E001900D928A95C1 +:10147000E1F7DF91CF9108958091F001811109C0CA +:101480000E945F0D0E94BC0D8091E20084608093F9 +:10149000E20008951092F001089508950C94A3229B +:1014A0000E94041C0E94A9220E9462100C945B09F5 +:1014B00042E061EC81E00E94D90C42E061EC82E004 +:1014C0000E94D90C42E061EC83E00E94D90C42E119 +:1014D00061EC84E00C94D90C8091F301833009F421 +:1014E00055C030F4813071F0823009F48EC0089517 +:1014F0008A3009F47AC08B3009F460C0893009F071 +:101500009CC020C08091F201813A09F096C0809180 +:10151000E800877F8093E8008091F6019091F701C1 +:10152000892B21F460E18EE591E003C060E080E06A +:1015300090E070E00E94150C8091E8008B7780931A +:10154000E80008958091F201813209F076C080911F +:10155000F6019091F701009719F0039709F06DC01B +:101560008091E800877F8093E8008091E80082FD09 +:1015700005C08091F1018111F8CF5FC08091F10029 +:1015800080936E018091E8008B7753C08091F201C7 +:10159000813A09F052C08091F6019091F701892BB0 +:1015A00009F04BC08091E800877F8093E80080912C +:1015B000E80080FFFCCF80910C0136C08091F201E1 +:1015C0008132D9F58091F6019091F701892BA9F527 +:1015D0008091E800877F8093E8000E940E0D809143 +:1015E000F40180930C010C94FB148091F201813280 +:1015F00021F58091E800877F8093E8000E940E0D1E +:101600008091F50180936F0108958091F201813AF4 +:10161000A1F48091E800877F8093E8008091E80042 +:1016200080FFFCCF80916F018093F1008091E800F2 +:101630008E778093E8000C940E0D089584B7877F11 +:1016400084BF88E10FB6F894809360001092600028 +:101650000FBE90E080E80FB6F894809361009093FD +:1016600061000FBE0E94B1100E945F0D0E94BC0D70 +:101670008091E20084608093E20078940E9442109E +:101680000E94B31082E091E00E945D100E949122BE +:101690008091F101853069F40E94CB1B8091EF01AC +:1016A0008823B1F30E94F61B882391F30E94B40BA8 +:1016B000EFCF0E94B910ECCF292F3327233031050B +:1016C000C9F064F42130310581F02230310509F090 +:1016D00043C08DE690E02BEE33E042C0213231056D +:1016E000F1F02232310541F137C082E190E028E586 +:1016F00034E036C099278130910541F08230910560 +:1017000041F0892B49F5E7EEF3E005C0EFECF3E09B +:1017100002C0E7EBF3E0849190E09F0121C06430C8 +:10172000D8F4E62FF0E0EE0FFF1FEE5DFE4F2081B4 +:10173000318189E090E014C0643070F470E0FB0106 +:10174000EE0FFF1FE65EFE4F20813181FB01EA5E56 +:10175000FE4F808190E004C080E090E020E030E027 +:10176000FA0131832083089580E189BD82E189BD3A +:1017700009B400FEFDCF8091D8008F7D8093D80002 +:101780008091E00082608093E0008091E00081FD24 +:10179000FCCF0895CF92DF92EF92FF920F931F93A9 +:1017A000CF93DF93EC018B016A010E942D0D811113 +:1017B00033C0C114D10439F0F60180819181081B36 +:1017C000190BC80FD91FE12CF12C0115110519F1C6 +:1017D0008091E80085FD16C08091E8008E778093A7 +:1017E000E800C114D10449F0F60180819181E80E2E +:1017F000F91EF182E08285E00FC00E942D0D882342 +:1018000021F30AC089918093F10001501109FFEF83 +:10181000EF1AFF0ADACF80E0DF91CF911F910F918D +:10182000FF90EF90DF90CF9008952091F8013091D4 +:10183000F9012617370748F06115710539F4209131 +:10184000E8002E772093E80001C0B90140E061155F +:101850007105A9F12091F101222309F443C025303B +:1018600009F442C02091E80023FD40C02091E80027 +:1018700022FD32C02091E80020FFE9CF4091F30023 +:101880002091F20030E0342BFC01CF01611571058D +:1018900059F02830310540F481918093F100615076 +:1018A00071092F5F3F4FF1CF41E02830310509F03A +:1018B00040E02091E8002E772093E800C8CF411146 +:1018C000C9CF0AC08091F101882361F0853061F0B1 +:1018D0008091E80083FD0AC08091E80082FFF2CF8A +:1018E00080E0089582E0089583E0089581E00895FE +:1018F0002091F8013091F9012617370748F061155A +:10190000710539F42091E8002E772093E80001C09A +:10191000B901FC0120E06115710591F18091F1019F +:10192000882309F440C0853009F43FC08091E80065 +:1019300083FD3DC08091E80082FD2FC08091E800CA +:1019400080FFE9CF2091F3008091F20090E0922B8C +:101950006115710559F08830910540F42491209368 +:10196000F1003196615071090196F2CF21E008979C +:1019700009F020E08091E8008E778093E800CBCFDB +:101980002111CCCF0AC08091F101882361F085300C +:1019900061F08091E80083FD0AC08091E80082FF39 +:1019A000F2CF80E0089582E0089583E0089581E019 +:1019B0000895982F973058F59093E900981739F0CB +:1019C0007091EC002091ED005091F00003C0242FA5 +:1019D000762F50E021FF19C03091EB003E7F30930D +:1019E000EB003091ED003D7F3093ED003091EB0046 +:1019F00031603093EB007093EC002093ED00509336 +:101A0000F0002091EE0027FF07C09F5FD3CF8F70BB +:101A10008093E90081E0089580E008958091F201CB +:101A200087FF11C08091E80082FD05C08091F1011F +:101A30008111F8CF11C08091E8008B770BC08091A5 +:101A4000F101882349F08091E80080FFF8CF809170 +:101A5000E8008E778093E80008952091E4003091AB +:101A6000E50095E64091EC00842F817040FF22C094 +:101A70008091E80080FD1CC08091F101882391F0E5 +:101A8000853091F08091EB0085FD10C04091E4001D +:101A90005091E5004217530729F39A01915011F72D +:101AA00084E0089582E0089583E0089581E0089538 +:101AB00080E008954091E80042FFDECF08950E9443 +:101AC000CD0D0E94D50DE0EEF0E080818160808335 +:101AD000E8EDF0E080818F77808319BCA7EDB0E05E +:101AE0008C918E7F8C9380818F7E80831092F00109 +:101AF00008950F931F93CF93DF930E94CD0D0E9403 +:101B0000D50DC8EDD0E088818F7788838881806883 +:101B1000888388818F7D888319BC1092F10110928F +:101B2000ED011092EF011092EE0100EE10E0F801CD +:101B300080818B7F808388818160888342E060E040 +:101B400080E00E94D90CE1EEF0E080818E7F8083FE +:101B5000E2EEF0E080818160808380818860808314 +:101B6000F80180818E7F8083888180618883DF9106 +:101B7000CF911F910F910895E8EDF0E080818F7E65 +:101B80008083E7EDF0E080818160808384E082BF24 +:101B900081E08093F0010C94790DE8EDF0E0808114 +:101BA0008E7F80831092E20008951092DA001092E6 +:101BB000E10008951F920F920FB60F9211242F93F8 +:101BC0003F934F935F936F937F938F939F93AF93C5 +:101BD000BF93EF93FF938091E10082FF0BC0809150 +:101BE000E20082FF07C08091E1008B7F8093E100DB +:101BF0000E9441108091DA0080FF1FC08091D800C0 +:101C000080FF1BC08091DA008E7F8093DA00809184 +:101C1000D90080FF0DC080E189BD82E189BD09B492 +:101C200000FEFDCF81E08093F1010E943C0A05C0D7 +:101C300019BC1092F1010E944A0A8091E10080FFD4 +:101C400019C08091E20080FF15C08091E2008E7F74 +:101C50008093E2008091E20080618093E2008091B5 +:101C6000D80080628093D80019BC85E08093F10190 +:101C70000E944E0A8091E10084FF30C08091E20012 +:101C800084FF2CC080E189BD82E189BD09B400FEDA +:101C9000FDCF8091D8008F7D8093D8008091E100A6 +:101CA0008F7E8093E1008091E2008F7E8093E2003E +:101CB0008091E20081608093E2008091ED018823B1 +:101CC00011F084E007C08091E30087FD02C081E04D +:101CD00001C083E08093F1010E94500A8091E100ED +:101CE00083FF29C08091E20083FF25C08091E1003D +:101CF000877F8093E10082E08093F1011092ED01F3 +:101D00008091E1008E7F8093E1008091E2008E7FE0 +:101D10008093E2008091E20080618093E20042E0E3 +:101D200060E080E00E94D90C8091F0008860809390 +:101D3000F0000E944D0AFF91EF91BF91AF919F91EA +:101D40008F917F916F915F914F913F912F910F9064 +:101D50000FBE0F901F9018951F920F920FB60F9203 +:101D600011242F933F934F935F936F937F938F93A0 +:101D70009F93AF93BF93CF93DF93EF93FF93C09164 +:101D8000E900CF708091EC00D82FD17080FDD0E8B1 +:101D90001092E9008091F000877F8093F0007894A2 +:101DA0000E94F00E1092E9008091F000886080930C +:101DB000F000CD2BCF70C093E900FF91EF91DF9140 +:101DC000CF91BF91AF919F918F917F916F915F91D3 +:101DD0004F913F912F910F900FBE0F901F9018952C +:101DE0001F93CF93DF93CDB7DEB7AA970FB6F894C2 +:101DF000DEBF0FBECDBFE2EFF1E088E08E0F909125 +:101E0000F10091938E13FBCF0E946C0A8091E80041 +:101E100083FF1FC18091F2019091F301492F50E09F +:101E20004A30510508F015C1FA01EA5AFF4F0C94E7 +:101E30002B24803881F0823809F00BC18091F601A3 +:101E40008F708093E9008091EB0085FB882780F9F3 +:101E50001092E90006C08091EE019091EF0191117E +:101E600082609091E800977F9093E8008093F10062 +:101E70001092F100C8C0282F2D7F09F0EAC08823F6 +:101E800019F0823061F0E5C08091F401813009F0F1 +:101E9000E0C0933009F080E08093EF012BC0809187 +:101EA000F401811127C08091F6018F7009F4D1C02F +:101EB0008093E9002091EB0020FF1CC0933021F4B7 +:101EC0008091EB00806214C09091EB009061909340 +:101ED000EB0021E030E0A90102C0440F551F8A95B4 +:101EE000E2F74093EA001092EA008091EB008860EC +:101EF0008093EB001092E9008091E800877F86C014 +:101F00008111A7C01091F4011F778091E3008078C0 +:101F1000812B8093E3008091E800877F8093E80025 +:101F20000E940E0D8091E80080FFFCCF8091E300BD +:101F300080688093E300111102C082E001C083E059 +:101F40008093F10186C08058823008F082C0809171 +:101F5000F4019091F5018C3D53E0950779F583E00C +:101F60008A838AE289834FB7F894DE01139620E0D2 +:101F70003EE051E2E32FF0E050935700E49120FF60 +:101F800003C0E295EF703F5FEF708E2F90E0EA3074 +:101F900010F0C79601C0C0968D939D932F5F24319A +:101FA00049F74FBF8091E800877F8093E8006AE29D +:101FB00070E0CE0101960E94150C14C0AE014F5F77 +:101FC0005F4F6091F6010E945C0BBC01009709F421 +:101FD00040C09091E800977F9093E80089819A81B2 +:101FE0000E94780C8091E8008B778093E80031C0E4 +:101FF000803879F58091E800877F8093E8008091B0 +:10200000ED018093F1008091E8008E778093E800E5 +:102010000E940E0D1EC081111CC09091F4019230DF +:10202000C0F48091E800877F8093E8009093ED01F1 +:102030000E940E0D8091ED01811106C08091E30098 +:1020400087FD02C081E001C084E08093F1010E941D +:10205000580A8091E80083FF0AC08091E800877FDA +:102060008093E8008091EB0080628093EB00AA9659 +:102070000FB6F894DEBF0FBECDBFDF91CF911F9199 +:1020800008950895CF938091F1018823A1F0C09124 +:10209000E900CF709091EC00892F817090FD80E86D +:1020A000C82B1092E9008091E80083FD0E94F00E99 +:1020B000CF70C093E900CF910895909375018093FC +:1020C00074010895E0917401F0917501309721F049 +:1020D0000190F081E02D099480E00895E091740171 +:1020E000F0917501309721F00280F381E02D099481 +:1020F0000895E0917401F0917501309721F004800A +:10210000F581E02D099408952091720130917301B9 +:102110008217930771F09093730180937201E0919D +:102120007401F0917501309721F00680F781E02D60 +:1021300009940895209170013091710182179307DD +:1021400071F09093710180937001E0917401F091AE +:102150007501309721F00084F185E02D09940895F0 +:1021600008950C94B0100E940A1C0E948C030C94D9 +:10217000CC1C9F92AF92BF92CF92DF92EF92FF92D0 +:102180000F931F93CF93DF9300D000D000D0CDB733 +:10219000DEB70E94A4030DE010E0AA24A394B12CA2 +:1021A000902E802F0E949204980129583E4F690179 +:1021B000F901F080F826A1F40150110988F78FEF9A +:1021C00089838A831B820E94131C8160782F9D83E0 +:1021D0008C8349815A816B818D810E9450112FC05F +:1021E0009091DA0191FF04C08E830E9498048E8141 +:1021F00025E030E0A501022E01C0440F0A94EAF761 +:10220000E42E4F21C1F029839A828E2191E009F4B6 +:1022100090E09B830E94131C8160782F9D838C83A8 +:1022200049815A816B818D810E945011F601808114 +:10223000E826E08204C021503109E0F6BDCF0E94BB +:10224000B31F109176010E9462101817B9F00E9416 +:1022500062108093760126960FB6F894DEBF0FBE0B +:10226000CDBFDF91CF911F910F91FF90EF90DF9045 +:10227000CF90BF90AF909F900C945B0926960FB6BD +:10228000F894DEBF0FBECDBFDF91CF911F910F91AC +:10229000FF90EF90DF90CF90BF90AF909F90089508 +:1022A000CF93DF93CDB7DEB72B970FB6F894DEBF91 +:1022B0000FBECDBF4F83588769877A878B87DE0132 +:1022C000119686E0FD0111928A95E9F785E0FE01FD +:1022D000379601900D928A95E1F749815A816B8179 +:1022E0007C818D819E810E9499172B960FB6F89460 +:1022F000DEBF0FBECDBFDF91CF910895CF9388236E +:1023000009F4C2C0C82F823859F40E94621081FDBE +:10231000BBC089E30E94731A0E94401B89E30CC072 +:10232000833879F40E94621080FDAEC083E50E947C +:10233000731A0E94401B83E50E94B51ACF910C943A +:10234000401B843859F40E94621082FD9DC087E4CE +:102350000E94731A0E94401B87E4EECF8CEF8C0F13 +:10236000813A48F48C2F0E94F62181118DC08C2F68 +:102370000E94731AE3CF80E28C0F883048F4C77054 +:1023800081E001C0880FCA95EAF70E94F91AD6CFFA +:102390008BE58C0F833078F4C53A29F0C63A31F0DA +:1023A00083E890E005C081E890E002C082E890E018 +:1023B000CF910C94841088E58C0F833108F064C0B1 +:1023C000C83A39F1C93A41F1CA3A49F1CB3A51F127 +:1023D000CC3A59F1CD3A61F1C03B69F1CE3A71F195 +:1023E000CF3A79F1C13B81F1C23B89F1C33B91F115 +:1023F000C43B99F1C53BA1F1C63BA9F1C73BB1F183 +:10240000C83BB9F1C93BC1F1CA3BC9F180E090E0DA +:1024100038C082EE90E035C089EE90E032C08AEE9E +:1024200090E02FC085EB90E02CC086EB90E029C0B7 +:1024300087EB90E026C08CEC90E023C08DEC90E020 +:1024400020C083E891E01DC08AE891E01AC082E9CB +:1024500091E017C084E991E014C081E292E011C0DC +:1024600083E292E00EC084E292E00BC085E292E04B +:1024700008C086E292E005C087E292E002C08AE2EC +:1024800092E0CF910C949A10CF910895882309F48B +:102490004BC0823859F40E94621081FF45C089E325 +:1024A0000E94731A0E94401B89E30CC0833871F4A8 +:1024B0000E94621080FF38C083E50E94731A0E9458 +:1024C000401B83E50E94B51A0C94401B843859F4D4 +:1024D0000E94621082FF28C087E40E94731A0E9443 +:1024E000401B87E4EFCF9CEF980F913A58F390E2AE +:1024F000980F983050F4877091E001C0990F8A9539 +:10250000EAF7892F0E94FF1ADFCF9BE5980F9330DF +:1025100020F480E090E00C948410885A833120F4F9 +:1025200080E090E00C949A100895882321F00E9496 +:10253000F91A0C94401B0895882321F00E94FF1A79 +:102540000C94401B08957F928F929F92AF92BF92FE +:10255000CF92DF92EF92FF920F931F93CF93DF936F +:102560001F92CDB7DEB77C01C62E772EFC01058108 +:1025700002950F70128111110E94161B0E946C1A95 +:10258000882379F0112369F080E28C0D883048F0BF +:1025900082E00E94551A0E946C1A91E0D82ED9262A +:1025A00001C0D12CE72DE295EF70F0E0E05AFF4F2B +:1025B0000C942B24872D807F072D0F70882311F01A +:1025C0000295007F112389F0002309F490C180E275 +:1025D0008C0D883020F4802F0E94F91A03C0802FC0 +:1025E0000E94091B0E94401B82C18C2D0E94461232 +:1025F000002309F495C180E28C0D883020F4802FEF +:102600000E94FF1A03C0802F0E940F1B0E94401BD4 +:1026100087C1972D907F872D8F70903211F0829512 +:10262000807FCC2021F0F1E0CF16B1F01EC0112345 +:1026300049F0002309F414C1013009F011C10E94CE +:10264000291B6EC1002319F0013009F469C1898387 +:102650000E942C1B89810AC1112321F0023008F04D +:102660005FC1FEC001115CC101C1112321F0002333 +:1026700009F4F6C03CC1002309F4F8C03EC1872D1F +:1026800086958695837090E0009719F0019761F028 +:1026900047C1112321F08C2D972D937002C080E04B +:1026A00090E00E9484103CC1112321F08C2D972DC5 +:1026B000937002C080E090E00E949A1031C18C2D8E +:1026C000112319F00E94BB1E02C00E94231F0E940A +:1026D000A81F26C1872D837009F052C0111120C197 +:1026E0008C2D829586958770880F880F9C2D9F7002 +:1026F000892E912CA12CB12C082E04C0880C991C79 +:10270000AA1CBB1C0A94D2F7C4FE14C00FE010E050 +:1027100020E030E0B901A80104C0440F551F661F36 +:10272000771F8A95D2F7CB01BA0160957095809595 +:10273000909503C060E070E0CB01272D269526958B +:10274000237030E02230310569F02330310589F003 +:10275000682979298A299B292130310571F00E9445 +:10276000E118DEC0682979298A299B290E94FD1871 +:10277000D7C00E94E118C501B4010E94C518D0C09D +:10278000112319F0872D817001C08695882309F4E3 +:10279000C7C08C2D829586958770880F880F9C2DD9 +:1027A0009F70892E912CA12CB12C082E04C0880C6E +:1027B000991CAA1CBB1C0A94D2F7C4FE14C00FE0DB +:1027C00010E020E030E0B901A80104C0440F551F1B +:1027D000661F771F8A95D2F7CB01BA016095709575 +:1027E0008095909503C060E070E0CB01272D269581 +:1027F00026952370422F50E04230510569F0433056 +:10280000510589F0682979298A299B294130510588 +:1028100071F00E94BB1984C0682979298A299B29F3 +:102820000E94D7197DC00E94BB19C501B4010E9446 +:102830009F1976C08C2D90E0FC01E05EF109E53136 +:10284000F10508F050C0E059FF4F0C942B240C2DDB +:102850000F70872D8F71112331F00E943819802F4E +:102860000E9495125DC00E945919802F0E949C12EF +:1028700057C0112339F0011153C0872D8F710E9469 +:102880007E194EC0023008F04BC0F7CF112339F04B +:10289000872D8F710E94381943C01123C9F3872DEA +:1028A0008F710E9459193CC0112329F0872D8F7117 +:1028B0000E94231935C00E94191932C0112351F00A +:1028C000172D1F71812F0E94381963E0812F0E94FC +:1028D0004C1A26C081E00E94551A023008F182E0AD +:1028E0000E94551A1DC0112331F0002389F28C2D4E +:1028F0000E947E1115C0002391F28C2D0E94461279 +:102900000FC0472D4F706C2DC7010E946E050E94AD +:102910003D1806C0472D4F706C2DC7010E946A06F6 +:10292000DD20F9F00E94481A80FD1BC0F7011282D9 +:102930000E94421A0E943819C7010E94C0140E94C6 +:10294000421A0F90DF91CF911F910F91FF90EF905E +:10295000DF90CF90BF90AF909F908F907F900C941E +:1029600059190F90DF91CF911F910F91FF90EF9028 +:10297000DF90CF90BF90AF909F908F907F90089501 +:102980000F931F93CF93DF93EC01888199812B8163 +:102990003C81232BB9F09F3F11F48F3F99F0CE017A +:1029A0000E94C205882371F0688179818A810E9422 +:1029B0003E1A8C010E94F3190E94BA18B801CE0188 +:1029C0000E94A312DF91CF911F910F9108950E9451 +:1029D000161B0E94261B0E94EB1A0E94401B0E949D +:1029E00059200E94A81F80E090E00E94841080E09F +:1029F00090E00C949A100E94061B0C94E7140E941D +:102A0000331A292F22952F7030E02C3031054CF4E9 +:102A10002A3031056CF42250310922303105A8F4F6 +:102A200007C02C30310569F02F30310551F00DC051 +:102A3000803F69F018F4803E40F409C0843F29F4D7 +:102A400006C093FB882780F9089580E0089581E00F +:102A50000895CF93DF9300D000D01F92CDB7DEB79B +:102A60000F900F900F900F900F90DF91CF910895DE +:102A7000CF93DF9300D000D000D0CDB7DEB726963D +:102A80000FB6F894DEBF0FBECDBFDF91CF91089592 +:102A90001F93CF93DF93C091850116E0809186014B +:102AA000C81799F0D0E01C9FF0011D9FF00D112474 +:102AB000E957FE4F40815181628173818481958104 +:102AC0000E9438152196C770E9CFDF91CF911F91F1 +:102AD00008954091B7015091B8016091B90170918A +:102AE000BA018091BB019091BC010C943815809182 +:102AF000BC0182958F7009F054C08091B901882380 +:102B000009F44FC080918501A09186016091B701C1 +:102B10007091B8014091BA015091BB01B6E08A179B +:102B200009F43FC090E041155105C1F17F3F11F418 +:102B30006F3FA1F1B89FF001B99FF00D1124E95743 +:102B4000FE4F218172132AC02081621327C0228187 +:102B5000211124C0238134812417350710F421501A +:102B60003109241B350B283C3105C0F42091BC01F0 +:102B70002F7020612093BC0126E0289FF001299F3F +:102B8000F00D1124E457FE4F80818F7080618083A7 +:102B900087EB91E00E94C0140C9448150196877051 +:102BA000BECF0895CF92DF92EF92FF920F931F93C3 +:102BB000CF93DF93CDB7DEB762970FB6F894DEBF41 +:102BC0000FBECDBF8C0185E0F801DE011D9601909E +:102BD0000D928A95E1F7D8014C9111965C9111976D +:102BE00012966C9112971396CD90DC9014973091B9 +:102BF000B7017091B8018091BA019091BB01009723 +:102C000009F46BC17F3F19F43F3F09F466C1E090BE +:102C1000B901EE2009F4C0C02091BC01C816D90644 +:102C200028F0F601E81BF90BCF0104C080959095C0 +:102C30008C0D9D1DFF24F394883C910578F0F12CB8 +:102C4000207F09F0C6C07C2DD98AC88A89890E9454 +:102C5000291587EB91E00E94C014B1C0822F807FBC +:102C600009F046C0751314C0341312C0611110C0AE +:102C70002F7020612093BC010E94691587EB91E0C1 +:102C80000E94C0148091BC01D80115968C932EC06F +:102C9000CD2819F15F3F11F44F3FF9F0F62E611185 +:102CA0001CC0809185012091860136E0821709F4CD +:102CB0005AC090E0389FF001399FF00D1124E95778 +:102CC000FE4F7181571306C07081471303C0728194 +:102CD000711103C001968770E9CFF62E662309F4BF +:102CE00018C18091BC0181608093BC01F12C11C19D +:102CF000751308C0341306C0611104C08091BC0173 +:102D0000D801C3C04D875E878D859E856A8B0E94E2 +:102D1000FF146A898823E1F16623D1F12091BC0177 +:102D2000822F82958F7090E0029774F08091B701A6 +:102D30009091B80198878F831986DB86CA862C8785 +:102D4000CE0107960E94C01486E0F801A7EBB1E01F +:102D500001900D928A95E1F70E9477150E946915FE +:102D6000FF24F394D6C04D875E878D859E850E9493 +:102D7000331A292F22952F7030E0223031050CF0C4 +:102D8000BCC09F7009F0B6C0805E883008F4C1C036 +:102D9000C8010E94C014E4CFC816D90608F453C075 +:102DA000F601E81BF90BCF01883C910508F450C0EF +:102DB000F12C7C2DD98AC88A89890E942915E7EBD4 +:102DC000F1E086E0DF011D928A95E9F70E9469151E +:102DD000A0C0751314C0341312C0611110C08091CB +:102DE000BC01F8018583C8010E94C01486E0E7EBAE +:102DF000F1E0DF011D928A95E9F7FE2C8AC04D872C +:102E00005E878D859E856A8B0E94FF146A89882360 +:102E100009F4BECF662309F4BBCF2091BC01822FF9 +:102E200082958F7090E002970CF48ECF8091B7015D +:102E30009091B8019A8389831B82DD82CC822E8394 +:102E4000CE0101967FCF809590958C0D9D1DACCFC6 +:102E5000F62E662309F49CCF75132EC034132CC0B4 +:102E60002091BC0120FD1FC0822F82958F70D9F068 +:102E7000D80115962C9315978F3049F08F5F982FB6 +:102E80009295907F822F8F70892B15968C93C80115 +:102E90000E94C01486E0F801A7EBB1E001900D920A +:102EA0008A95E1F793CF86E0F801A7EBB1E00190B6 +:102EB0000D928A95E1F72DC04D875E878D859E85A1 +:102EC0000E94FF14811140CF8091BC0181608093EA +:102ED000BC01C8010E94C0141CC0662309F458CF6D +:102EE0004D875E878D859E850E94FF14882309F497 +:102EF0004FCF2ACF811148CF0CC0243031050CF0C0 +:102F000047CF9F7009F440CFF8019581907F09F079 +:102F10003BCF8F2D62960FB6F894DEBF0FBECDBFAC +:102F2000DF91CF911F910F91FF90EF90DF90CF90A5 +:102F300008951F93CF93DF93CDB7DEB72C970FB6CD +:102F4000F894DEBF0FBECDBF4F83588769877A875D +:102F50008B879C87CE0107960E94D215882369F043 +:102F60008F8198852A853B85232BF1F19F3F09F0BE +:102F700063C08F3F09F060C037C086E0FE0137961E +:102F8000DE01119601900D928A95E1F76F817885A7 +:102F9000EA85FB85309741F17F3F11F46F3F21F1C6 +:102FA0002091860130E0C9010196877099274091F0 +:102FB000850150E08417950709F447C069837A8337 +:102FC000FD83EC8396E0929FD001939FB00D112476 +:102FD000A957BE4FFE01319601900D929A95E1F7E7 +:102FE000809386010E94481516E08091850190919A +:102FF00086018917C1F1189FC001112489579E4F7E +:103000000E94D215882379F1E09185011E9FF0017D +:103010001124E957FE4F408151816281738184817F +:1030200095810E9438158091850190E00196877006 +:10303000992780938501D9CF4F81588569857A85F5 +:103040008B859C850E943815CFCF0E94FB1410926F +:10305000860110928501E7EBF1E086E0DF011D9229 +:103060008A95E9F7C1CF2C960FB6F894DEBF0FBE54 +:10307000CDBFDF91CF911F910895EF92FF920F93F3 +:103080001F93CF93DF938C01009709F46CC0F12C50 +:10309000EE24E394E8012196F8018491843740F40A +:1030A000843008F051C0813081F0823019F15BC06A +:1030B000853709F444C0A8F19CE7980F903708F0D1 +:1030C00052C08F770E94461241C00E5F1F4FFE0113 +:1030D000C49180E28C0F883048F4C7708E2D01C0F7 +:1030E000880FCA95EAF70E94191B14C08C2F0E9402 +:1030F0007E112DC00E5F1F4FFE01C49180E28C0F28 +:10310000883058F4C7708E2D01C0880FCA95EAF731 +:103110000E941F1B0E94401B1AC08C2F0E94461247 +:1031200016C00E5F1F4FFE01C491CC2381F08FE9C2 +:103130009FE00197F1F700C00000C150F6CF0E5F8D +:103140001F4FFE01F49003C00E947E118E018F2D4F +:10315000882309F49FCFEFE9FFE03197F1F700C032 +:1031600000008150F5CFDF91CF911F910F91FF901B +:10317000EF90089508956093C1017093C201809308 +:10318000C3019093C4010C94E7140F931F93009113 +:10319000C1011091C2012091C3013091C401DC0131 +:1031A000CB01802B912BA22BB32B8093C101909349 +:1031B000C201A093C301B093C4011F910F910C945D +:1031C000E7140F931F930091C1011091C201209148 +:1031D000C3013091C401DC01CB0180239123A223E0 +:1031E000B3238093C1019093C201A093C301B09314 +:1031F000C4011F910F910C94E7140F931F9300913A +:10320000C1011091C2012091C3013091C401DC01C0 +:10321000CB0180279127A227B3278093C1019093E8 +:10322000C201A093C301B093C4011F910F910C94EC +:10323000E7141092BD011092BE011092BF011092CE +:10324000C0010C94E71441E050E060E070E004C07D +:10325000440F551F661F771F8A95D2F74093BD0113 +:103260005093BE016093BF017093C0010C94E714AA +:1032700041E050E060E070E004C0440F551F661F5D +:10328000771F8A95D2F78091BD019091BE01A091E0 +:10329000BF01B091C001482B592B6A2B7B2B409367 +:1032A000BD015093BE016093BF017093C0010C94A7 +:1032B000E71441E050E060E070E004C0440F551FA7 +:1032C000661F771F8A95D2F7409550956095709547 +:1032D0008091BD019091BE01A091BF01B091C0014C +:1032E000482359236A237B234093BD015093BE0199 +:1032F0006093BF017093C0010C94E71441E050E06B +:1033000060E070E004C0440F551F661F771F8A9568 +:10331000D2F78091BD019091BE01A091BF01B09103 +:10332000C001482759276A277B274093BD01509346 +:10333000BE016093BF017093C0010C94E7140F931A +:103340001F930091BD011091BE012091BF013091EA +:10335000C001DC01CB01802B912BA22BB32B8093DE +:10336000BD019093BE01A093BF01B093C0011F9116 +:103370000F910C94E7140F931F930091BD011091CE +:10338000BE012091BF013091C001DC01CB0180233F +:103390009123A223B3238093BD019093BE01A093F8 +:1033A000BF01B093C0011F910F910C94E7140F93CC +:1033B0001F930091BD011091BE012091BF0130917A +:1033C000C001DC01CB0180279127A227B32780937E +:1033D000BD019093BE01A093BF01B093C0011F91A6 +:1033E0000F910C94E7140895CF92DF92EF92FF9221 +:1033F0000F931F93CF93DF938C01C090C101D090A6 +:10340000C201E090C301F090C4018091BD01909190 +:10341000BE01A091BF01B091C001C82AD92AEA2AF1 +:10342000FB2ACFE1D0E0D701C6010C2E04C0B6952F +:10343000A795979587950A94D2F780FF06C0B801A3 +:103440008C2F0E94C008019721F4219760F780E03B +:1034500001C08C2FDF91CF911F910F91FF90EF90C2 +:10346000DF90CF900895CF93DF93EC010E94F41981 +:10347000BE010E94C008DF91CF910895CB010E9448 +:10348000331A08958091C501859585958595089590 +:103490008091C5018770089598E0899F900111245B +:1034A000262B2093C5010C9438192091C5018095D5 +:1034B00082238093C501982F977069F430E0482FDC +:1034C000552747FD50952417350729F08595859593 +:1034D00085950C94591908959091C501977081E0D4 +:1034E00009F480E0089590910C01992321F09091C6 +:1034F0000D01911109C020910E0130910F01F901C8 +:1035000032969FEF40E01FC0982F9695969596951E +:103510009F3050F5E0910E01F0910F01E90FF11D80 +:10352000877021E030E0A90102C0440F551F8A9541 +:10353000E2F7CA019181892B818308959F3F39F079 +:103540004F5F4E3041F051915813F8CF0DC05111DB +:10355000F7CF942FF5CF9F3F39F0F901E90FF11D17 +:1035600097FDFA9582830895089590910C0199230F +:1035700021F090910D01911109C020910E0130911F +:103580000F01F9013296205F3F4F1FC0982F96958B +:10359000969596959F30F0F4E0910E01F0910F0111 +:1035A000E90FF11D877021E030E0A90102C0440F4E +:1035B000551F8A95E2F7CA018095918189238183FD +:1035C00008953196E217F30729F090819813F9CF07 +:1035D0001082F7CF089581E090E0E0910E01F09124 +:1035E0000F01E80FF91F1082019680319105A9F7AC +:1035F00008959091D901892B8093D90108958095E0 +:103600009091D90189238093D90108951092D9010D +:1036100008959091D801892B8093D80108958095C1 +:103620009091D80189238093D80108951092D801F0 +:1036300008959091D701892B8093D70108958095A3 +:103640009091D70189238093D70108951092D701D3 +:1036500008958093C60108951092C601089580913F +:103660000E0190910F01FC0131969C01205F3F4FAC +:1036700080E0919191118F5FE217F307D1F70895E0 +:10368000E0910E01F0910F018091D9018083E091CA +:103690000E01F0910F0190818091D801892B8083D8 +:1036A000E0910E01F0910F0190818091D701892B5B +:1036B00080838091C601882361F0E0910E01F09132 +:1036C0000F019081892B80830E942F1B8111109202 +:1036D000C60180910E0190910F010C946E1020E0B4 +:1036E000009739F0AC0141505109842395232F5F95 +:1036F000F7CF822F0895CF92DF92EF92FF926C0165 +:10370000EE24FF24C114D104E104F10421F0C70127 +:10371000B60120E101C020E0C72ED82EE92EFF24FB +:10372000C114D104E104F10419F0285FC701B60106 +:103730006B017C0154E0F694E794D794C7945A95B2 +:10374000D1F7C114D104E104F10419F02C5FC701D1 +:10375000B6016B017C0142E0F694E794D794C794DC +:103760004A95D1F7C114D104E104F10419F02E5F98 +:10377000C701B601DC01CB01B695A7959795879552 +:10378000892B8A2B8B2B09F02F5F822FFF90EF90D4 +:10379000DF90CF9008958091F101843021F1109253 +:1037A000DB0120E488E190E00FB6F894A8958093BF +:1037B00060000FBE2093600080E00E945B0983B729 +:1037C000817F846083BF83B7816083BF789488954D +:1037D00083B78E7F83BF88E10FB6F8948093600033 +:1037E000109260000FBE0895089508950E94F41B82 +:1037F0000E94A4030E94F51B0E94990491E081118C +:1038000001C090E0892F08950E94FB140E9462106D +:103810000C945B0982E084BD93E095BD9AEF97BD5F +:1038200080936E0008952FB7F8948091DC019091F9 +:10383000DD01A091DE01B091DF012FBF0895CF928D +:10384000DF92EF92FF920F931F932FB7F89440915E +:10385000DC015091DD016091DE017091DF012FBF2D +:103860006A017B01EE24FF248C0120E030E0C016C9 +:10387000D106E206F30610F4415051099A01281BC3 +:10388000390BC9011F910F91FF90EF90DF90CF90FE +:1038900008951F920F920FB60F9211248F939F934A +:1038A000AF93BF938091DC019091DD01A091DE0187 +:1038B000B091DF010196A11DB11D8093DC019093B1 +:1038C000DD01A093DE01B093DF01BF91AF919F9125 +:1038D0008F910F900FBE0F901F9018950E945F0D53 +:1038E000F8942FEF87EA91E6215080409040E1F76D +:1038F00000C0000087E090EBDC018093FB01909317 +:10390000FC01A093FD01B093FE019CE088E10FB69D +:10391000F894A895809360000FBE90936000FFCF4D +:10392000EF92FF920F931F93CF93DF93D82FCDE0A9 +:103930008C2F0E94920405E010E0E82EF12CC701C4 +:10394000002E02C0959587950A94E2F780FF09C082 +:10395000602F7C2F80E00E946B06D81302C081E0AC +:1039600006C00150110958F7C15010F780E0DF91EF +:10397000CF911F910F91FF90EF900895CF93C82F93 +:103980008CE20E94901C882321F08C2FCF910C9404 +:10399000901C80E0CF910895CF930E94131E811157 +:1039A00002C00E94F91DC5E6C15049F00E94A4035F +:1039B0008FE39CE90197F1F700C00000F5CF89E2A1 +:1039C0000E94BE1C811113C18AE20E94BE1C81119B +:1039D0000E94F91D85E00E94BE1C81110E946E1C90 +:1039E0000E941E1E8093DA0187E00E94BE1C88237D +:1039F000A9F18BE10E94BE1C882351F08091DA016D +:103A000081FB222720F991E0922790FB81F90EC0DB +:103A10008EE00E94BE1C882361F08091DA0182FB57 +:103A2000222720F991E0922790FB82F98093DA0116 +:103A300015C080E10E94BE1C9091DA01882341F0FC +:103A400093FB222720F981E0822780FB93F904C0B1 +:103A5000892F809580FB90F99093DA018091DA01AB +:103A60000E94221E0E94301E8093FA0180EE0E9466 +:103A7000BE1C882341F08091FA01982F909590FB0D +:103A800080F98093FA0189E30E94BE1C882359F0D3 +:103A90008091FA0181FB222720F991E0922790FB87 +:103AA00081F98093FA0182EE0E94BE1C882359F0AE +:103AB0008091FA0182FB222720F991E0922790FB66 +:103AC00082F98093FA0186EE0E94BE1C882359F089 +:103AD0008091FA0183FB222720F991E0922790FB45 +:103AE00083F98093FA0183EE0E94BE1C882359F06B +:103AF0008091FA0184FB222720F991E0922790FB24 +:103B000084F98093FA0185E30E94BE1C882359F052 +:103B10008091FA0185FB222720F991E0922790FB02 +:103B200085F98093FA0181E30E94BE1C882359F035 +:103B30008091FA0186FB222720F991E0922790FBE1 +:103B400086F98093FA0181E10E94BE1C882359F016 +:103B50008091FA0187FB222720F991E0922790FBC0 +:103B600087F98093FA018091FA010E94341E8091B6 +:103B7000FA0187FB882780F980930D0187E20E9474 +:103B8000BE1CC82F8EE10E94BE1C8111C2608FE155 +:103B90000E94BE1C8111C46080E20E94BE1C811183 +:103BA000C86081E20E94BE1C8111C06182E20E9455 +:103BB000BE1C8111C06283E20E94BE1C8111C064E0 +:103BC00084E20E94BE1C882311F0C06802C0CC238E +:103BD00029F08C2F0E942B1E6C2F03C00E94271EE1 +:103BE000682F70E080E090E0CF910C94BB18CF91EB +:103BF00008956DEE7EEF80E090E00E94652460E025 +:103C000082E090E00E94532460E083E090E00E9414 +:103C1000532460E084E090E00E94532460E085E05B +:103C200090E00C94532480E090E00E944D2421E029 +:103C30008D3E9E4F09F020E0822F089582E090E0B3 +:103C40000C944524682F82E090E00C94532483E088 +:103C500090E00C944524682F83E090E00C9453246A +:103C600084E090E00C944524682F84E090E00C946C +:103C700053248091E20180FF0BC06091130185E025 +:103C8000689FB001112475956795759567952BC050 +:103C900081FF09C06091130185E0689FB001112484 +:103CA0007595679520C082FF07C06091130185E07C +:103CB000689FB001112417C09091E3019923D1F0BE +:103CC00060911201961788F72091130185E0289FD3 +:103CD00090011124929FA001939F500D112470E038 +:103CE000CA010E9417246038710540F461157105FE +:103CF00039F002C065E070E0862F08958FE70895DF +:103D000081E008958091E20180FF08C06091110177 +:103D100070E0759567957595679521C081FF06C020 +:103D20006091110170E07595679519C082FF04C01C +:103D30006091110170E010C09091E3019923C1F0EE +:103D4000609110019617A0F780911101899FC00121 +:103D5000112470E00E9417246038710528F4611561 +:103D6000710521F0862F08958FE7089581E0089569 +:103D700061E070E0F4CF803F21F40E94391E81950C +:103D800004C0813F29F40E94391E8093E601089502 +:103D9000823F21F40E94391E819504C0833F29F49B +:103DA0000E94391E8093E5010895893F19F40E940D +:103DB000821E05C08A3F31F40E94821E8195809345 +:103DC000E70108958B3F21F40E94821E819504C073 +:103DD0008C3F29F40E94821E8093E8010895843F5D +:103DE00021F48091E401816017C0853F21F4809126 +:103DF000E401826011C0863F21F48091E401846077 +:103E00000BC0873F21F48091E401886005C0883FA2 +:103E100031F48091E40180618093E40108958D3F45 +:103E200021F48091E20181600BC08E3F21F48091EA +:103E3000E201826005C08F3F29F48091E201846035 +:103E40008093E2010895803F39F48091E60187FF75 +:103E50006CC01092E60169C0813F29F48091E601AF +:103E60001816BCF362C09091E501823F29F497FFD8 +:103E70005CC01092E50159C0833F19F41916CCF3C8 +:103E800054C0893F41F48091E70118160CF04DC0F1 +:103E90001092E7014AC08A3F29F48091E70187FF29 +:103EA00044C0F6CF8B3F39F48091E80187FF3DC0D5 +:103EB0001092E8013AC08C3F29F48091E80118166D +:103EC000BCF333C0843F21F48091E4018E7F17C09E +:103ED000853F21F48091E4018D7F11C0863F21F45C +:103EE0008091E4018B7F0BC0873F21F48091E40136 +:103EF000877F05C0883F31F48091E4018F7E8093F5 +:103F0000E40113C08D3F21F48091E2018E7F0BC04C +:103F10008E3F21F48091E2018D7F05C08F3F29F40F +:103F20008091E2018B7F8093E2018091E501811114 +:103F30000EC08091E60181110AC08091E7018111D4 +:103F400006C08091E801811102C01092E30108953A +:103F500084EE91E00E9479100E94131C9093E1017D +:103F60008093E00108951F93CF93DF938091E00148 +:103F70009091E1010E941F1CAC019091E3019923F3 +:103F800021F02091140130E006C0209115018AE053 +:103F9000289F900111244217530708F486C080918E +:103FA000E501C091E601D091E7011091E80181118E +:103FB00007C0C11176C0D11174C0111172C075C093 +:103FC0009F3F19F09F5F9093E301181624F40E941D +:103FD000391E8093E5018091E50187FF05C00E94AD +:103FE000391E81958093E5011C1624F40E94391E28 +:103FF0008093E6018091E60187FF05C00E94391E8B +:1040000081958093E6016091E501662339F1C091C5 +:10401000E601CC2319F1772767FD7095872F972F3D +:104020000E94282323E333E343E35FE30E948C23CE +:104030000E94F5226093E5016C2F772767FD70954C +:10404000872F972F0E94282323E333E343E35FE383 +:104050000E948C230E94F5226093E6011D1624F431 +:104060000E94821E8093E7018091E70187FF05C0CF +:104070000E94821E81958093E701111624F40E940C +:10408000821E8093E8018091E80187FF05C00E94AD +:10409000821E81958093E801DF91CF911F910C944E +:1040A000A81F9F3F09F08ECF96CFDF91CF911F9130 +:1040B0000895E4EEF1E085E0DF011D928A95E9F7CD +:1040C0001092E3011092E2010895833081F128F407 +:1040D000813059F08230D1F00895853009F449C01B +:1040E000B8F1863009F456C0089580911501262F45 +:1040F00030E0280F311D2F3F310524F4680F609305 +:10410000150108958FEF8093150108958091140192 +:10411000262F30E0280F311D2F3F310524F4680F82 +:104120006093140108958FEF809314010895809196 +:104130001301262F30E0280F311D2F3F310524F4C5 +:10414000680F6093130108958FEF80931301089512 +:1041500080911201262F30E0280F311D2F3F3105AD +:1041600024F4680F6093120108958FEF8093120179 +:10417000089580911101262F30E0280F311D2F3F27 +:10418000310524F4680F6093110108958FEF809337 +:104190001101089580911001262F30E0280F311D64 +:1041A0002F3F310524F4680F6093100108958FEFBD +:1041B000809310010895833011F128F4813049F083 +:1041C000823091F00895853081F120F18630C1F17F +:1041D000089580911501681720F4861B80931501BE +:1041E000089510921501089580911401681720F424 +:1041F000861B8093140108951092140108958091F4 +:104200001301681720F4861B809313010895109200 +:104210001301089580911201681720F4861B809382 +:1042200012010895109212010895809111016817EA +:1042300020F4861B809311010895109211010895B6 +:1042400080911001681720F4861B80931001089557 +:104250001092100108950F931F938D3109F46BC0D4 +:1042600008F03FC08E3009F47FC0C0F4873009F4F5 +:1042700069C068F4863009F0B1C08091DA01817FAD +:104280008E7F8093DA0181E08093EA01A8C08830B4 +:1042900009F4A2C08B3009F49FC0A0C0863109F494 +:1042A0009BC078F4803109F472C0813109F096C066 +:1042B0000E94FB1490910D0181E0892780930D01EC +:1042C0008BC0893109F488C08B3109F087C0809197 +:1042D000DA0181FB222720F991E0922790FB81F9F6 +:1042E0004CC0853309F470C048F4873209F46CC0BF +:1042F00008F459C0893209F467C070C0833438F4B7 +:104300008A3308F04EC0883309F466C067C083342E +:1043100009F45AC0883409F061C00E94FB140FEF01 +:1043200013ED20E3015010402040E1F700C00000F1 +:104330000E946E1C51C00E94AF220E9462100E9417 +:104340005B094AC09091DA01892F8095817080FBCA +:1043500090F929F0966098609093DA0140C0997FB7 +:10436000977F9093DA0138C08091DA0182FB22278F +:1043700020F991E0922790FB82F98093DA0199234A +:1043800059F18091DA0181608093DA0125C0809132 +:10439000DA0183FB222720F991E0922790FB83F931 +:1043A000ECCF895301C08D5141E050E060E070E0F6 +:1043B0008A019B0104C0000F111F221F331F8A9521 +:1043C000D2F7C901B80104C061E070E080E090E07C +:1043D0000E94BB180E94FB1481E001C080E01F9185 +:1043E0000F91089580E0089580E00895CF93C82F3D +:1043F0008091EA01813079F018F08230E9F187C0CC +:10440000E0910E01F0910F018081813169F08232DB +:1044100009F07FC009C0E0910E01F0910F01808189 +:10442000813111F0823261F48C2F0E94F2218111CE +:1044300004C08C2F0E942B211DC081E090E01AC087 +:104440008C2F0E94F421811114C0C43179F048F4FA +:10445000CB3079F0C03109F060C082E08093EA018E +:1044600008C0C93219F0C83321F057C01092EA01D0 +:1044700054C081E0817053C0C93289F118F5C4314C +:1044800071F1A8F4C73009F046C08AE080931501A5 +:1044900094E19093140193E090931301809312019F +:1044A00088E08093110188E28093100134C0CE51DE +:1044B000C63088F5EC2FF0E0E65DFE4F80818093FA +:1044C000E90129C0CE34E9F020F4CB3421F56AE0CB +:1044D00013C0C13579F0C235F1F461E00DC08091AF +:1044E000E901882319F01092E90115C081E0809359 +:1044F000EA0115C061E006C08091E9010E946520D3 +:104500000AC06AE08091E9010E94DB2004C0109299 +:10451000EA0180E004C081E002C080E0ABCFCF912F +:104520000895E1E8F0E08081886080838081816087 +:1045300080838FB7F89493E09093890090ED9093E7 +:1045400088008FBF0895EFE6F0E08081826080836D +:104550000895EFE6F0E080818D7F80830895EFE697 +:10456000F0E0908182E08927808308951F920F9266 +:104570000FB60F9211242F933F934F935F936F9336 +:104580007F938F939F93AF93BF93EF93FF9380910C +:10459000EB019091EC0101969093EC018093EB017B +:1045A000811103C082E00E945B09E091EC01E69575 +:1045B000E695F0E0EB59FA4FE4918091EB018E1310 +:1045C00003C080E00E945B09FF91EF91BF91AF9122 +:1045D0009F918F917F916F915F914F913F912F911B +:1045E0000F900FBE0F901F90189504D06894B111D2 +:1045F0008DC0089570D088F09F5790F0B92F9927FB +:10460000B751A0F0D1F0660F771F881F991F1AF0DD +:10461000BA95C9F712C0B13081F077D0B1E00895F2 +:1046200074C0672F782F8827B85F39F0B93FCCF373 +:10463000869577956795B395D9F73EF490958095D3 +:10464000709561957F4F8F4F9F4F0895E89409C0F3 +:1046500097FB3EF490958095709561957F4F8F4FB5 +:104660009F4F9923A9F0F92F96E9BB279395F695CB +:10467000879577956795B795F111F8CFFAF4BB0F49 +:1046800011F460FF1BC06F5F7F4F8F4F9F4F16C0AD +:10469000882311F096E911C0772321F09EE8872F37 +:1046A000762F05C0662371F096E8862F70E060E0F3 +:1046B0002AF09A95660F771F881FDAF7880F96956C +:1046C000879597F9089557FD9058440F551F59F055 +:1046D0005F3F71F04795880F97FB991F61F09F3FEF +:1046E00079F087950895121613061406551FF2CF18 +:1046F0004695F1DF08C0161617061806991FF1CF68 +:1047000086957105610508940895E894BB2766278E +:104710007727CB0197F908950BD078C069D028F09E +:104720006ED018F0952309F05AC05FC01124EECF67 +:10473000CADFA0F3959FD1F3950F50E0551F629FFC +:10474000F001729FBB27F00DB11D639FAA27F00DEA +:10475000B11DAA1F649F6627B00DA11D661F829F11 +:104760002227B00DA11D621F739FB00DA11D621FF6 +:10477000839FA00D611D221F749F3327A00D611D13 +:10478000231F849F600D211D822F762F6A2F1124F5 +:104790009F5750408AF0E1F088234AF0EE0FFF1F48 +:1047A000BB1F661F771F881F91505040A9F79E3F7F +:1047B000510570F014C0AACF5F3FECF3983EDCF3D4 +:1047C000869577956795B795F795E7959F5FC1F7BC +:1047D000FE2B880F911D9695879597F9089597F967 +:1047E0009F6780E870E060E008959FEF80EC089597 +:1047F00000240A94161617061806090608950024C0 +:104800000A9412161306140605060895092E039439 +:10481000000C11F4882352F0BB0F40F4BF2B11F4AD +:1048200060FF04C06F5F7F4F8F4F9F4F089597FBCE +:10483000072E16F4009407D077FD09D00E9431248A +:1048400007FC05D03EF4909581959F4F0895709593 +:1048500061957F4F0895EE0FFF1F0590F491E02DB5 +:104860000994AA1BBB1B51E107C0AA1FBB1FA617B7 +:10487000B70710F0A61BB70B881F991F5A95A9F709 +:1048800080959095BC01CD010895F999FECF92BD18 +:1048900081BDF89A992780B50895A8E1B0E042E07B +:1048A00050E00C946D24262FF999FECF92BD81BD66 +:1048B000F89A019700B4021639F01FBA20BD0FB65E +:1048C000F894FA9AF99A0FBE08950196272F0E943C +:1048D00054240C945324DC01CB01FC01F999FECF44 +:1048E00006C0F2BDE1BDF89A319600B40D92415078 +:0A48F0005040B8F70895F894FFCF88 +:1048FA0002205D09EB09C809940960090101C70191 +:10490A0028080A03140A3F4D36392605D904A30498 +:10491A006A04FD0316042F04480401020304050671 +:04492A000708090071 +:00000001FF diff --git a/keyboards/ergodox_ez/keymaps/zweihander-osx/keymap.c b/keyboards/ergodox_ez/keymaps/zweihander-osx/keymap.c new file mode 100644 index 0000000000..3444152bc3 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/zweihander-osx/keymap.c @@ -0,0 +1,233 @@ +#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 + +#define SGWK 0 // "sagewick", ⌘S ⌘⇥ +#define SGWF 1 // "sagewick freshly", ⌘S ⌘⇥ ⌘R +#define BBED 2 // BBEdit +#define TMNL 3 // Terminal +#define SAFA 4 // Safari +#define ALFRED_LEAD_TIME 100 // time, in milliseconds, to let Alfred come to the fore and accept keyboard input + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* Keymap 0: Basic layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | = | 1 | 2 | 3 | 4 | 5 | L1 | | L1 | 6 | 7 | 8 | 9 | 0 | - | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | ⌦ | Q | W | E | R | T | ~L1 | | ~L1 | Y | U | I | O | P | \ | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | ⌫ | A | S | D | F | G |------| |------| H | J | K | L |; / L2| ' / L⌘ | + * |--------+------+------+------+------+------| L⌘ | | L⌘ |------+------+------+------+------+--------| + * | L⇧ | Z | X | C | V | B | | | | N | M | , | . | / / ⌃| R⇧ | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | L⌃ | L⌥ | L⌘ | ← | → | | ↑ | ↓ | [ | ] | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,---------------. + * | `~ | '" | | ⎋ | ⌫ | + * ,------|------|------| |------+--------+------. + * | | | PgUp | | PgDn | | | + * | | ⌫ |------| |------| ⇥ |Enter | + * | | | L⌥ | | L⌃ | | | + * `--------------------' `----------------------' + */ +// If it accepts an argument (i.e, is a function), it doesn't need KC_. +// Otherwise, it needs KC_* +[BASE] = KEYMAP( // layer 0 : default + // left hand + KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, TG(SYMB), + KC_DELT, KC_Q, KC_W, KC_E, KC_R, KC_T, MO(SYMB), + KC_BSPC, KC_A, KC_S, KC_D, KC_F, KC_G, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_LGUI, + KC_LCTL, KC_LALT, KC_LGUI,KC_LEFT,KC_RGHT, + KC_GRV, KC_QUOT, + KC_PGUP, + KC_SPC,KC_BSPC,KC_LALT, + // right hand + TG(SYMB), KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, + MO(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),GUI_T(KC_QUOT), + KC_LGUI, KC_N, KC_M, KC_COMM,KC_DOT, CTL_T(KC_SLSH), KC_RSFT, + KC_UP, KC_DOWN,KC_LBRC,KC_RBRC, KC_SPC , + KC_ESC, KC_BSPC, + KC_PGDN, + KC_LCTL, KC_TAB, KC_ENT + ), +/* Keymap 1: Symbol Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | [ | ] | { | } | " | | | | / | 7 | 8 | 9 | * | F12 | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | < | > | ( | ) | ' |------| |------| - | 4 | 5 | 6 | + | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | & | 1 | 2 | 3 | = | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | 0 | . | ← | → | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | Home | | | + * | | |------| |------| | | + * | | | | | End | | | + * `--------------------' `--------------------' + */ +// SYMBOLS +[SYMB] = KEYMAP( + // left hand + KC_TRNS,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, + KC_TRNS,KC_LBRC,KC_RBRC,KC_LCBR,KC_RCBR,KC_DQUO,KC_TRNS, + KC_TRNS,KC_LABK,KC_RABK,KC_LPRN,KC_RPRN,KC_QUOT, + 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_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + KC_TRNS, KC_SLSH, KC_7, KC_8, KC_9, KC_ASTR, KC_F12, + KC_MINS, KC_4, KC_5, KC_6, KC_PLUS, KC_TRNS, + KC_TRNS, KC_AMPR, KC_1, KC_2, KC_3, KC_EQL, KC_TRNS, + KC_0, KC_DOT, KC_LEFT, KC_RGHT, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_HOME, + KC_END , KC_TRNS, KC_TRNS +), +/* Keymap 2: Media keys + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F14 | F15 | | | | | | ⌘Q | ⌘W | ⌘⇧` | ⌘` | | | Power | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | PgUp |⌘S⌘⇥⌘R| Term | | | | ⌘] | ⌥⌘↑ | ↑ | ⌥⌘↓ | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | |Safari| PgDn | | |------| |------| ⌘[ | ← | ↓ | → | | ⏯ | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | |BBEdit| | | |L⇧+Spc| Spc | ⏮ | ⏭ | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | |VolUp |VolDn | Mute | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | Home | | End | | | + * | | |------| |------| ⌘C | ⌘V | + * | | | | | ⌘X | | | + * `--------------------' `--------------------' + */ +// MEDIA AND MOUSE +[MDIA] = KEYMAP( + KC_TRNS, KC_F14 , KC_F15 , KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, /* F14 dims screen, F15 brightens */ + KC_TRNS, KC_TRNS, KC_TRNS, KC_PGUP, M(SGWF), M(TMNL), KC_TRNS, + KC_TRNS, KC_TRNS, M(SAFA), KC_PGDN, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, M(BBED), KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_HOME, + KC_TRNS, KC_TRNS, KC_TRNS, + // right hand + LGUI(KC_Q), LGUI(KC_W), LGUI(LSFT(KC_GRV)), LGUI(KC_GRV), KC_TRNS, KC_TRNS, KC_PWR, + KC_TRNS, LGUI(KC_RBRC), LGUI(LALT(KC_UP)), KC_UP , LGUI(LALT(KC_DOWN)), KC_TRNS, KC_TRNS, + LGUI(KC_LBRC), KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_MPLY, + KC_TRNS, LSFT(KC_SPC), KC_SPC , KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, + KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + LGUI(KC_X), LGUI(KC_C), LGUI(KC_V) +), +}; + +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 SGWK: + if (record->event.pressed) { + return MACRO( + I(10), + D(LGUI), T(S), U(LGUI), + D(LGUI), T(TAB), U(LGUI), + END); + } + break; + case SGWF: + if (record->event.pressed) { + return MACRO( + I(10), + D(LGUI), T(S), U(LGUI), + D(LGUI), T(TAB), U(LGUI), + D(LGUI), T(R), U(LGUI), + END); + } + break; + case BBED: + if (record->event.pressed) { + return MACRO( + I(10), + D(LALT), T(SPC), U(LALT), W(ALFRED_LEAD_TIME), + T(B), T(B), T(E), T(D), T(I), T(T), + T(ENT), + END); + } + break; + case TMNL: + if (record->event.pressed) { + return MACRO( + I(10), + D(LALT), T(SPC), U(LALT), W(ALFRED_LEAD_TIME), + T(T), T(E), T(R), T(M), T(I), T(N), T(A), T(L), + T(ENT), + END); + } + break; + case SAFA: + if (record->event.pressed) { + return MACRO( + I(10), + D(LALT), T(SPC), U(LALT), W(ALFRED_LEAD_TIME), + T(S), T(A), T(F), T(A), T(R), T(I), + T(ENT), + 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/keyboards/ergodox_ez/keymaps/zweihander-osx/readme.markdown b/keyboards/ergodox_ez/keymaps/zweihander-osx/readme.markdown new file mode 100644 index 0000000000..7bce7c6909 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/zweihander-osx/readme.markdown @@ -0,0 +1,45 @@ +# The Zweihander Layout + +NB: the backtick (\`) is special in Markdown. If I write ⌘\` in this readme, I mean “command-backtick”, not “command-backslash-backtick”. + +This layout is tuned for people who… + + +## use OS X + +This layout doesn’t make any concessions for Windows use. While it should work fine in Windows, I’m not about to devote precious keyboard space to Windows-specific shortcuts. + + +## mouse left-handed while doing other things with the right hand + +I tend to have my mouse in my left hand, but I like to use my other hand to make things go faster. I’ve added a bunch of buttons to the media layer to speed up browsing in Safari and Finder: + +- Close Window (⌘W) +- Back (⌘[) +- Forward (⌘]) +- Open and Close Parent Folder (⌥⌘↓) +- Go Up and Close Just-Left Folder (⌥⌘↑) +- Cycle through open windows in current application (⌘\` and ⌘⇧\`) +- Cycle through tabs in current window (⌥⇥ and ⌥⇧⇥) +- Space (page down in browsers; Quick Look in the Finder) +- Shift-Space (page up in web browsers) + +Because moving letter-by-letter is way slower than moving word-by-word, I added Option (⌥) to the bottommost button on the left side. This key can be held easily while holding ; (activate media layer) and pressing J and L to move left and right by word. + + +## use lots of modifier keys in OS X menu-item shortcuts + +I wanted to preserve the feel of a number of shortcuts that involve pressing lots of modifier keys at once; this is why the bottom left of the keyboard has shift, control, option, and command in the usual spaces. Further, some common shortcuts I press have a key on the right side of the keyboard. These shortcuts include: + +- Empty Trash Without Asking for Confirmation (⇧⌥⌘⌫) +- Shut Down Without Asking for Confirmation (⇧⌥⌘ power) + + +## use Emacs-style shortcuts + +I press C-a, C-e, and C-k all the time. It’s difficult to press these key combinations with the control key on the bottom left and I’m too quick on the draw for the control function on the / key to work reliably, so the bottommost thumb button on the right side is another control key. + + +## use spreadsheets + +All the common spreadsheet operations (+-*/=) are now on the right side of the symbol layer. -- cgit v1.2.1