summaryrefslogtreecommitdiffstats
path: root/keyboard
diff options
context:
space:
mode:
authorChristopher Browne <cbbrowne@ca.afilias.info>2016-02-08 10:53:50 -0500
committerChristopher Browne <cbbrowne@ca.afilias.info>2016-02-08 10:53:50 -0500
commitbbcc1046a6c7417367c602b7ff46df1cef93804f (patch)
treeae51eef4043546360b17cc5893dc6e3b840d434c /keyboard
parentfe1519de0750acb8377abbbcb4b47b766c11df9e (diff)
parent67f14d938b1cc9fd6713d91a0995d51ee6818a80 (diff)
Merge branch 'master' of https://github.com/jackhumbert/qmk_firmware
Diffstat (limited to 'keyboard')
-rw-r--r--keyboard/atomic/README.md158
-rw-r--r--keyboard/ergodox_ez/Makefile2
-rw-r--r--keyboard/ergodox_ez/keymaps/default/default.hex2532
-rw-r--r--keyboard/ergodox_ez/keymaps/default/default.pngbin184852 -> 193672 bytes
-rw-r--r--keyboard/ergodox_ez/keymaps/default/default_highres.pngbin770673 -> 1459389 bytes
-rw-r--r--keyboard/ergodox_ez/keymaps/default/keymap.c4
-rw-r--r--keyboard/ergodox_ez/keymaps/default/readme.md5
-rw-r--r--keyboard/ergodox_ez/keymaps/erez_experimental/erez_experimental.hex2552
-rw-r--r--keyboard/ergodox_ez/keymaps/erez_experimental/keymap.c53
-rw-r--r--keyboard/ergodox_ez/keymaps/erez_experimental/readme.md10
-rw-r--r--keyboard/ergodox_ez/keymaps/jacobono/README.md34
-rw-r--r--keyboard/ergodox_ez/keymaps/jacobono/img/colemak-default-layer.pngbin0 -> 70434 bytes
-rw-r--r--keyboard/ergodox_ez/keymaps/jacobono/img/number-dpad-layer.pngbin0 -> 46225 bytes
-rw-r--r--keyboard/ergodox_ez/keymaps/jacobono/img/symbol-layer.pngbin0 -> 49615 bytes
-rw-r--r--keyboard/ergodox_ez/keymaps/jacobono/jacobono.hex1142
-rw-r--r--keyboard/ergodox_ez/keymaps/jacobono/keymap.c273
-rw-r--r--keyboard/planck/PCB_GUIDE.md1
-rw-r--r--keyboard/planck/README.md179
18 files changed, 3689 insertions, 3256 deletions
diff --git a/keyboard/atomic/README.md b/keyboard/atomic/README.md
index 7c30958438..c8e83cf55a 100644
--- a/keyboard/atomic/README.md
+++ b/keyboard/atomic/README.md
@@ -4,163 +4,7 @@ DIY/Assembled ortholinear 60% keyboard by [Ortholinear Keyboards](http://ortholi
## Quantum MK Firmware
-You have access to a bunch of goodies! Check out the Makefile to enable/disable some of the features. Uncomment the `#` to enable them. Setting them to `no` does nothing and will only confuse future you.
-
- BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality
- MIDI_ENABLE = yes # MIDI controls
- # UNICODE_ENABLE = yes # Unicode support - this is commented out, just as an example. You have to use #, not //
- BLUETOOTH_ENABLE = yes # Enable Bluetooth with the Adafruit EZ-Key HID
-
-## Quick aliases to common actions
-
-Your keymap can include shortcuts to common operations (called "function actions" in tmk).
-
-### Switching and toggling layers
-
-`MO(layer)` - momentary switch to *layer*. As soon as you let go of the key, the layer is deactivated and you pop back out to the previous layer. When you apply this to a key, that same key must be set as `KC_TRNS` on the destination layer. Otherwise, you won't make it back to the original layer when you release the key (and you'll get a keycode sent). You can only switch to layers *above* your current layer. If you're on layer 0 and you use `MO(1)`, that will switch to layer 1 just fine. But if you include `MO(3)` on layer 5, that won't do anything for you -- because layer 3 is lower than layer 5 on the stack.
-
-`LT(layer, kc)` - momentary switch to *layer* when held, and *kc* when tapped. Like `MO()`, this only works upwards in the layer stack (`layer` must be higher than the current layer).
-
-`TG(layer)` - toggles a layer on or off. As with `MO()`, you should set this key as `KC_TRNS` in the destination layer so that tapping it again actually toggles back to the original layer. Only works upwards in the layer stack.
-
-### Fun with modifier keys
-
-* `LSFT(kc)` - applies left Shift to *kc* (keycode) - `S(kc)` is an alias
-* `RSFT(kc)` - applies right Shift to *kc*
-* `LCTL(kc)` - applies left Control to *kc*
-* `RCTL(kc)` - applies right Control to *kc*
-* `LALT(kc)` - applies left Alt to *kc*
-* `RALT(kc)` - applies right Alt to *kc*
-* `LGUI(kc)` - applies left GUI (command/win) to *kc*
-* `RGUI(kc)` - applies right GUI (command/win) to *kc*
-
-You can also chain these, like this:
-
- LALT(LCTL(KC_DEL)) -- this makes a key that sends Alt, Control, and Delete in a single keypress.
-
-The following shortcuts automatically add `LSFT()` to keycodes to get commonly used symbols. Their long names are also available and documented in `/quantum/keymap_common.h`.
-
- KC_TILD ~
- KC_EXLM !
- KC_AT @
- KC_HASH #
- KC_DLR $
- KC_PERC %
- KC_CIRC ^
- KC_AMPR &
- KC_ASTR *
- KC_LPRN (
- KC_RPRN )
- KC_UNDS _
- KC_PLUS +
- KC_LCBR {
- KC_RCBR }
- KC_PIPE |
- KC_COLN :
-
-`MT(mod, kc)` - is *mod* (modifier key - MOD_LCTL, MOD_LSFT) when held, and *kc* when tapped. In other words, you can have a key that sends Esc (or the letter O or whatever) when you tap it, but works as a Control key or a Shift key when you hold it down.
-
-These are the values you can use for the `mod` in `MT()` (right-hand modifiers are not available):
-
- * MOD_LCTL
- * MOD_LSFT
- * MOD_LALT
- * MOD_LGUI
-
-These can also be combined like `MOD_LCTL | MOD_LSFT` e.g. `MT(MOD_LCTL | MOD_LSFT, KC_ESC)` which would activate Control and Shift when held, and send Escape when tapped.
-
-We've added shortcuts to make common modifier/tap (mod-tap) mappings more compact:
-
- * `CTL_T(kc)` - is LCTL when held and *kc* when tapped
- * `SFT_T(kc)` - is LSFT when held and *kc* when tapped
- * `ALT_T(kc)` - is LALT when held and *kc* when tapped
- * `GUI_T(kc)` - is LGUI when held and *kc* when tapped
- * `ALL_T(kc)` - is Hyper (all mods) when held and *kc* when tapped. To read more about what you can do with a Hyper key, see [this blog post by Brett Terpstra](http://brettterpstra.com/2012/12/08/a-useful-caps-lock-key/)
-
-### Temporarily setting the default layer
-
-`DF(layer)` - sets default layer to *layer*. The default layer is the one at the "bottom" of the layer stack - the ultimate fallback layer. This currently does not persist over power loss. When you plug the keyboard back in, layer 0 will always be the default. It is theoretically possible to work around that, but that's not what `DF` does.
-
-### Remember: These are just aliases
-
-These functions work the same way that their `ACTION_*` functions do - they're just quick aliases. To dig into all of the tmk ACTION_* functions, please see the [TMK documentation](https://github.com/jackhumbert/qmk_firmware/blob/master/tmk_core/doc/keymap.md#2-action).
-
-Instead of using `FNx` when defining `ACTION_*` functions, you can use `F(x)` - the benefit here is being able to use more than 32 function actions (up to 4096), if you happen to need them.
-
-## Macro shortcuts: Send a whole string when pressing just one key
-
-Instead of using the `ACTION_MACRO` function, you can simply use `M(n)` to access macro *n* - *n* will get passed into the `action_get_macro` as the `id`, and you can use a switch statement to trigger it. This gets called on the keydown and keyup, so you'll need to use an if statement testing `record->event.pressed` (see keymap_default.c).
-
-```c
-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: // this would trigger when you hit a key mapped as M(0)
- if (record->event.pressed) {
- return MACRO( I(255), T(H), T(E), T(L), T(L), W(255), T(O), END ); // this sends the string 'hello' when the macro executes
- }
- break;
- }
- return MACRO_NONE;
-};
-```
-A macro can include the following commands:
-
-* I() change interval of stroke in milliseconds.
-* D() press key.
-* U() release key.
-* T() type key(press and release).
-* W() wait (milliseconds).
-* END end mark.
-
-So above you can see the stroke interval changed to 255ms between each keystroke, then a bunch of keys being typed, waits a while, then the macro ends.
-
-Note: Using macros to have your keyboard send passwords for you is a bad idea.
-
-### Additional keycode aliases for software-implemented layouts (Colemak, Dvorak, etc)
-
-Everything is assuming you're in Qwerty (in software) by default, but there is built-in support for using a Colemak or Dvorak layout by including this at the top of your keymap:
-
- #include "keymap_<layout>.h"
-
-Where <layout> is "colemak" or "dvorak". After including this line, you will get access to:
-
- * `CM_*` for all of the Colemak-equivalent characters
- * `DV_*` for all of the Dvorak-equivalent characters
-
-These implementations assume you're using Colemak or Dvorak on your OS, not on your keyboard - this is referred to as a software-implemented layout. If your computer is in Qwerty and your keymap is in Colemak or Dvorak, this is referred to as a firmware-implemented layout, and you won't need these features.
-
-To give an example, if you're using software-implemented Colemak, and want to get an `F`, you would use `CM_F` - `KC_F` under these same circumstances would result in `T`.
-
-## Additional language support
-
-In `quantum/keymap_extras/`, you'll see various language files - these work the same way as the alternative layout ones do. Most are defined by their two letter country/language code followed by an underscore and a 4-letter abbreviation of its name. `FR_UGRV` which will result in a `รน` when using a software-implemented AZERTY layout. It's currently difficult to send such characters in just the firmware (but it's being worked on - see Unicode support).
-
-## Unicode support
-
-You can currently send 4 hex digits with your OS-specific modifier key (RALT for OSX with the "Unicode Hex Input" layout) - this is currently limited to supporting one OS at a time, and requires a recompile for switching. 8 digit hex codes are being worked on. The keycode function is `UC(n)`, where *n* is a 4 digit hexidecimal. Enable from the Makefile.
-
-## Other firmware shortcut keycodes
-
-* `RESET` - puts the MCU in DFU mode for flashing new firmware (with `make dfu`)
-* `DEBUG` - the firmware into debug mode - you'll need hid_listen to see things
-* `BL_ON` - turns the backlight on
-* `BL_OFF` - turns the backlight off
-* `BL_<n>` - sets the backlight to level *n*
-* `BL_INC` - increments the backlight level by one
-* `BL_DEC` - decrements the backlight level by one
-* `BL_TOGG` - toggles the backlight
-* `BL_STEP` - steps through the backlight levels
-
-Enable the backlight from the Makefile.
-
-## MIDI functionalty
-
-This is still a WIP, but check out `quantum/keymap_midi.c` to see what's happening. Enable from the Makefile.
-
-## Bluetooth functionality
-
-This requires [some hardware changes](https://www.reddit.com/r/MechanicalKeyboards/comments/3psx0q/the_planck_keyboard_with_bluetooth_guide_and/?ref=search_posts), but can be enabled via the Makefile. The firmware will still output characters via USB, so be aware of this when charging via a computer. It would make sense to have a switch on the Bluefruit to turn it off at will.
+For the full Quantum feature list, see [the parent README.md](/README.md).
## Building
diff --git a/keyboard/ergodox_ez/Makefile b/keyboard/ergodox_ez/Makefile
index 8066c7bb4b..5dfcca2c80 100644
--- a/keyboard/ergodox_ez/Makefile
+++ b/keyboard/ergodox_ez/Makefile
@@ -93,7 +93,7 @@ OPT_DEFS += -DBOOTLOADER_SIZE=512
BOOTMAGIC_ENABLE = yes # Virtual DIP switch configuration(+1000)
MOUSEKEY_ENABLE = yes # Mouse keys(+4700)
EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
-CONSOLE_ENABLE = no # Console for debug(+400)
+# CONSOLE_ENABLE = yes # Console for debug(+400)
COMMAND_ENABLE = yes # Commands for debug and configuration
CUSTOM_MATRIX = yes # Custom matrix file for the ErgoDox EZ
SLEEP_LED_ENABLE = yes # Breathing sleep LED during USB suspend
diff --git a/keyboard/ergodox_ez/keymaps/default/default.hex b/keyboard/ergodox_ez/keymaps/default/default.hex
index 81fc2ee703..14f5b7c798 100644
--- a/keyboard/ergodox_ez/keymaps/default/default.hex
+++ b/keyboard/ergodox_ez/keymaps/default/default.hex
@@ -1,17 +1,17 @@
-:100000000C9400070C9444070C9444070C94440788
-:100010000C9444070C9444070C9444070C94440734
-:100020000C9444070C9444070C945B120C942D130D
-:100030000C9444070C9444070C9444070C94440714
-:100040000C9444070C94072C0C9444070C9444071C
-:100050000C9444070C940E220C9444070C9444070F
-:100060000C9444070C9444070C9444070C944407E4
-:100070000C9444070C9444070C9444070C944407D4
-:100080000C9444070C9444070C9444070C944407C4
-:100090000C9444070C9444070C9444070C944407B4
-:1000A0000C9444070C9444070C9444079213B41323
-:1000B0009F14B4139F14F61319149F146E14811413
-:1000C000CF17CF17FD17FD173F187B187B1A7B1A28
-:1000D00093187B1A8A198A19551A7B1A7B1A691A7E
+:100000000C9465020C94A9020C94A9020C94A90208
+:100010000C94A9020C94A9020C94A9020C94A902B4
+:100020000C94A9020C94A9020C94C50B0C94970C87
+:100030000C94A9020C94A9020C94A9020C94A90294
+:100040000C94A9020C9422210C94A9020C94A902EC
+:100050000C94A9020C94C41A0C94A9020C94A90241
+:100060000C94A9020C94A9020C94A9020C94A90264
+:100070000C94A9020C94A9020C94A9020C94A90254
+:100080000C94A9020C94A9020C94A9020C94A90244
+:100090000C94A9020C94A9020C94A9020C94A90234
+:1000A0000C94A9020C94A9020C94A902FC0C1E0D3C
+:1000B000090E1E0D090E600D830D090ED80DEB0DF6
+:1000C000D810D81006110611481184118413841316
+:1000D0009C118413931293125E138413841372136E
:1000E0000000F0A12E004C002A00E1003581000044
:1000F0001E00140004001D7134004D001F001A0082
:1001000016001B00E1042A0020000800070006007A
@@ -22,7 +22,7 @@
:10015000240018000D00100052004B0025000C0078
:100160000E00360051002800260012000F00370054
:100170002F002B00270013003382387130004E000F
-:100180002D0031003400E500C10000000100010035
+:100180002D0031003478E500C100000001000100BD
:1001900001000100010000003A001E0220022202BC
:1001A000010001003B001F022102230201000100A7
:1001B0003C002F0226022F00010001003D0030020A
@@ -43,1430 +43,1080 @@
:1002A0000100010001000100A9000100010001009E
:1002B0000100AC00AA00B600010001000100AB0083
:1002C000A80001000100010001000100010001007F
-:1002D00001000100AE000100010000000A0025300D
-:1002E000313662003A200025303258000A722F63FE
-:1002F0002030313233343536373839414243444582
-:10030000460A000A002530325800626F756E636538
-:10031000213A20006C6566742073696465206174FD
-:100320007461636865640A006C656674207369644F
-:1003300065206E6F7420726573706F6E64696E678E
-:100340000A00747279696E6720746F207265736534
-:1003500074206D637032333031380A000A444542EC
-:1003600055473A20656E61626C65642E0A005B73C6
-:100370005D004B6579626F617264207374617274A1
-:100380002E0A005B575D005B535D005B525D005BB6
-:10039000445D005B435D0016034500720067006F1B
-:1003A0000044006F007800200045005A000000164D
-:1003B000034500720067006F0044006F0078002062
-:1003C0000045005A0000000403090409028D0005DD
-:1003D0000100A0FA09040000010301010009211134
-:1003E000010001223F000705810308000A090401FA
-:1003F000000103010200092111010001224D000743
-:1004000005820308000A0904020001030000000934
-:1004100021110100012236000705830308000A09A3
-:100420000403000203000000092111010001222041
-:1004300000070584032000010705040320000109CB
-:100440000404000103000000092111010001223908
-:1004500000070585031000011201100100000008CB
-:10046000EDFE071301000102000105010906A101CB
-:10047000050719E029E71500250195087501810296
-:100480000508190129059505750191029501750366
-:100490009101050719002977150025019578750147
-:1004A0008102C00631FF0974A1010975150025FFFD
-:1004B0009520750881020976150025FF952075089D
-:1004C0009102C005010980A101850216010026B72D
-:1004D000001A01002AB700751095018100C0050CB3
-:1004E0000901A1018503160100269C021A01002AB8
-:1004F0009C02751095018100C005010902A1010946
-:1005000001A10005091901290515002501950575A9
-:100510000181029501750381010501093009311539
-:1005200081257F95027508810609381581257F95FB
-:100530000175088106050C0A38021581257F950191
-:1005400075088106C0C005010906A101050719E06B
-:1005500029E71500250195087501810295017508A7
-:10056000810105081901290595057501910295017B
-:10057000750391010507190029FF150025FF950650
-:1005800075088100C00A002530325820006B65795B
-:10059000626F6172645F7265706F72743A20000AF4
-:1005A0000025303258006B6579626F6172645F7349
-:1005B00065745F6C65643A200064656C5F6B657997
-:1005C0005F6269743A2063616E27742064656C3AD7
-:1005D00020253032580A006164645F6B65795F6280
-:1005E00069743A2063616E2774206164643A20253F
-:1005F0003032580A00646F6E652E0A00626F6F67B2
-:100600006D61676963207363616E3A202E2E2E2020
-:1006100000290A002575002F002575005D2800259A
-:10062000640020002564002000256400200025646B
-:10063000007C0025303258006D6F7573656B6579ED
-:10064000205B62746E7C782079207620685D287249
-:1006500065702F61636C293A205B006D6B5F776872
-:1006600065656C5F74696D655F746F5F6D6178203F
-:100670003D2025640A006D6B5F776865656C5F6D72
-:1006800061785F7370656564203D2025640A006DA4
-:100690006B5F74696D655F746F5F6D6178203D207D
-:1006A00025640A006D6B5F6D61785F7370656564CA
-:1006B000203D2025640A006D6B5F696E746572765B
-:1006C000616C203D2025640A006D6B5F64656C6180
-:1006D00079203D2025640A006D6B5F776865656C45
-:1006E0005F74696D655F746F5F6D6178203D202573
-:1006F000640A006D6B5F776865656C5F6D61785F3C
-:100700007370656564203D2025640A006D6B5F741D
-:10071000696D655F746F5F6D6178203D2025640AA7
-:10072000006D6B5F6D61785F7370656564203D205F
-:1007300025640A006D6B5F696E74657276616C206A
-:100740003D2025640A006D6B5F64656C6179203D16
-:100750002025640A000A00257500363A207768656E
-:10076000656C5F74696D655F746F5F6D61783A2069
-:10077000000A00257500353A20776865656C5F6D65
-:1007800061785F73706565643A20000A0025750022
-:10079000343A2074696D655F746F5F6D61783A20DB
-:1007A000000A00257500333A206D61785F7370652B
-:1007B00065643A20000A00257500323A20696E749B
-:1007C000657276616C286D73293A20000A002575E0
-:1007D00000313A2064656C6179282A31306D7329C3
-:1007E0003A20000A092D2056616C756573202D0A88
-:1007F000004D3E004D25643E20003F00736574208F
-:1008000064656661756C740A00433E200077686514
-:1008100072652064656C74613A20637572736F72DF
-:100820003D25642C20776865656C3D25640A536519
-:100830006520687474703A2F2F656E2E77696B6926
-:1008400070656469612E6F72672F77696B692F4DD0
-:100850006F7573655F6B6579730A000A092D204D0A
-:100860006F7573656B6579202D0A4553432F713A77
-:1008700009717569740A313A0964656C6179282ACD
-:1008800031306D73290A323A09696E746572766186
-:100890006C286D73290A333A096D61785F7370654E
-:1008A00065640A343A0974696D655F746F5F6D61E0
-:1008B000780A353A09776865656C5F6D61785F73B2
-:1008C000706565640A363A09776865656C5F7469B6
-:1008D0006D655F746F5F6D61780A0A703A097072B6
-:1008E000696E742076616C7565730A643A09736584
-:1008F000742064656661756C74730A75703A092BAF
-:10090000310A646F776E3A092D310A706775703A53
-:10091000092B31300A7067646F776E3A092D3130D8
-:100920000A0A7370656564203D2064656C746120FB
-:100930002A206D61785F7370656564202A202872B3
-:100940006570656174202F2074696D655F746F5FD9
-:100950006D6178290A003F004D3E2000433E200093
-:100960004C25640A000A092D20436F6E736F6C6575
-:10097000202D0A4553432F713A09717569740A6D28
-:100980003A096D6F7573656B65790A000A092D2048
-:100990004D61676963202D0A643A09646562756771
-:1009A0000A783A096465627567206D6174726978C6
-:1009B0000A6B3A096465627567206B6579626F61DD
-:1009C00072640A6D3A096465627567206D6F7573AC
-:1009D000650A763A0976657273696F6E0A733A0929
-:1009E0007374617475730A633A09636F6E736F6C25
-:1009F00065206D6F64650A302D343A096C61796544
-:100A000072302D34284631302D4634290A50617514
-:100A1000733A09626F6F746C6F616465720A653A4C
-:100A200009656570726F6D0A6E3A094E4B524F0A36
-:100A30007A3A09736C656570204C4544207465737F
-:100A4000740A000A002575002E6E6B726F3A200042
-:100A50000A002575002E737761705F6261636B73A6
-:100A60006C6173685F6261636B73706163653A2088
-:100A7000000A002575002E737761705F67726176DA
-:100A8000655F6573633A20000A002575002E6E6F5E
-:100A90005F6775693A20000A002575002E7377613B
-:100AA000705F72616C745F726775693A20000A004A
-:100AB0002575002E737761705F6C616C745F6C6775
-:100AC00075693A20000A002575002E636170736C09
-:100AD0006F636B5F746F5F636F6E74726F6C3A20DD
-:100AE000000A002575002E737761705F636F6E7466
-:100AF000726F6C5F636170736C6F636B3A20000A96
-:100B00000025303258006B65796D61705F636F6EE0
-:100B10006669672E7261773A20000A002575002EFB
-:100B20006D6F7573653A20000A002575002E6B65A0
-:100B300079626F6172643A20000A002575002E6D9B
-:100B400061747269783A20000A002575002E656E7E
-:100B500061626C653A20000A0025303258006465F5
-:100B60006275675F636F6E6669672E7261773A20A0
-:100B7000000A0025750064656661756C745F6C61C0
-:100B80007965723A20003F004E4B524F3A206F6613
-:100B9000660A004E4B524F3A206F6E0A0074696D20
-:100BA00065725F636F756E743A202530346C580A35
-:100BB000006B6579626F6172645F6E6B726F3A2071
-:100BC00025580A006B6579626F6172645F69646CB5
-:100BD000653A2025580A006B6579626F6172645F1F
-:100BE00070726F746F636F6C3A2025580A00686FDB
-:100BF00073745F6B6579626F6172645F6C65647357
-:100C000028293A2025580A000A092D2053746174B6
-:100C10007573202D0A004743433A20342E382E3274
-:100C2000204156522D4C4942433A20312E382E3025
-:100C3000204156525F415243483A20617672350A4C
-:100C4000004F5054494F4E533A204C554641204294
-:100C50004F4F544D41474943204D4F5553454B4508
-:100C6000592045585452414B455920434F4E534FFC
-:100C70004C4520434F4D4D414E44204E4B524F204A
-:100C80003531320A004255494C443A2031656530CD
-:100C9000383037202831353A33363A3539204665F1
-:100CA000622020312032303136290A005649443A38
-:100CB00020307846454544284572676F446F782058
-:100CC000455A29205049443A20307831333037286A
-:100CD0004572676F446F7820455A29205645523A2D
-:100CE000203078303030310A00444553433A207484
-:100CF0002E6D2E6B2E206B6579626F61726420669B
-:100D000069726D7761726520666F72204572676FD8
-:100D1000646F780A000A092D2056657273696F6E38
-:100D2000202D0A000A6D6F7573653A206F66660A9A
-:100D3000000A6D6F7573653A206F6E0A000A6B6565
-:100D400079626F6172643A206F66660A000A6B65A9
-:100D500079626F6172643A206F6E0A000A6D617485
-:100D60007269783A206F66660A000A6D617472696A
-:100D7000783A206F6E0A000A64656275673A206FE0
-:100D80006E0A000A64656275673A206F66660A003B
-:100D90000A0A626F6F746C6F616465722E2E2E206A
-:100DA00000433E20006565636F6E6669673A0A001E
-:100DB000536C656570204C454420746573740A005B
-:100DC0000000000000000000000000010204060A0C
-:100DD0000F17202C3A4A5D71879DB3C7DAE9F5FCFD
-:100DE000FFFCF5E9DAC7B39D87715D4A3A2C2017FD
-:100DF0000F0A0604020100000000000000000000CD
-:100E000011241FBECFEFDAE0DEBFCDBF04B603FE74
-:100E100024C08091F9019091FA01A091FB01B09159
-:100E2000FC018730904BA740B04BB9F41092F90108
-:100E30001092FA011092FB011092FC0114BE84B7CB
-:100E4000877F84BF88E10FB6F8948093600010928A
-:100E500060000FBEE0E0FFE3099511E0A0E0B1E023
-:100E6000EAEAFBE502C005900D92AA33B107D9F773
-:100E700011E0AAE3B1E001C01D92A93FB107E1F77B
-:100E80000E94950F0C94D32D0C940000FF93EF93C8
-:100E9000E0913A01F0913B01309709F00995EF910B
-:100EA000FF910895FC018591803011F0EFDFFBCFB9
-:100EB0000895FF27E0E230E247FF0CC0419597FF1D
-:100EC00009C0EDE26095709580959095611D711D4A
-:100ED000811D911D27FF02C0219530E350E2AA2712
-:100EE000660F771F881F991FAA1FA41710F0A41B55
-:100EF00063955A95A9F7AA3008F0A95FA05DAF9352
-:100F0000F395611571058105910541F7ED3211F4F5
-:100F1000EF93F395F21718F43F93F395FBCF8F916E
-:100F2000B5DFFA95E1F70895E991F991859180305F
-:100F300021F0853219F0AADFF9CF089520E0E89476
-:100F400055915532C1F3503311F4689455915A3389
-:100F500048F4505390F3220F022E220F220F200D3F
-:100F6000250FF4CF0EF4219589919991533619F3F9
-:100F7000533729F1533559F1BC0188279927E89453
-:100F80005C3621F48991999168945591543639F4DD
-:100F900046EF7EF077FF0DC08FEF9FEF0AC0553709
-:100FA0004AE039F0583540E121F0523642E009F08C
-:100FB0000895FF93EF937DDFEF91FF91B7CFFF93FC
-:100FC000EF93FC0181918030B9F360DFFBCFFF9399
-:100FD000EF9368DFF1CFDF93CF93CDB7DEB72596E0
-:100FE000A3DFCF91DF91089561110BC0FC018281D5
-:100FF000882321F085EE0E94631603C085EE0E94CF
-:101000002B1780E090E0089508956091BC017091E5
-:10101000BD018091BE019091BF010E940E215698A2
-:101020005E9825982D9826982E9827982F9881308D
-:1010300019F0823021F00895259A2D9A0895269A64
-:101040002E9A089585E098E0892B11F00E940508FA
-:1010500080E090E0089556985E9825982D982698FF
-:101060002E9827982F988FEF90E090938900809387
-:10107000880090938B0080938A0090938D008093DA
-:101080008C00259A2D9A2FEF80E792E02150804026
-:101090009040E1F700C00000269A2E9A2FEF80E7DB
-:1010A00092E0215080409040E1F700C00000279A74
-:1010B0002F9A2FEF80E792E0215080409040E1F797
-:1010C00000C0000025982D982FEF80E792E0215076
-:1010D00080409040E1F700C0000026982E982FEF46
-:1010E00080E792E0215080409040E1F700C000008E
-:1010F00027982F9856985E9825982D9826982E9880
-:1011000027982F98089589EA8093800089E080933A
-:10111000810024982C983F988AB18F748AB96E9870
-:10112000479A8BB1806B8BB9769A0E942B0884E02A
-:1011300098E0892B11F00E94040880E090E0089567
-:1011400080E28093000180913C0181110EC00E94D9
-:10115000EF0881E080933C012FEF83ED90E3215075
-:1011600080409040E1F700C0000080E40E94F50854
-:101170008093000181112EC00E941F0980930001FD
-:10118000811128C00E941F0980930001811122C093
-:101190008FE30E941F098093000181111BC00E94F0
-:1011A000170980E40E94F50880930001811112C0A4
-:1011B0008CE00E941F098093000181110BC00E94E6
-:1011C0001F0980930001811105C08FE30E941F0950
-:1011D000809300010E9417098091000108951092E8
-:1011E000B9008AE08093B800089594EA9093BC0017
-:1011F0009091BC0097FFFCCF9091B900987F9830F8
-:1012000021F0903111F081E008958093BB0084E8D3
-:101210008093BC008091BC0087FFFCCF8091B90017
-:10122000887F883111F0803471F780E0089584E977
-:101230008093BC008091BC0084FDFCCF0895809316
-:10124000BB0084E88093BC008091BC0087FFFCCF8A
-:101250009091B900987F81E0983209F480E0089578
-:1012600084E88093BC008091BC0087FFFCCF809114
-:10127000BB00089580910001811115C080E40E9497
-:10128000F5088093000181110CC082E10E941F09C2
-:1012900080930001811105C08FEF0E941F09809388
-:1012A00000010E94170984B1807F84B985B1807FD5
-:1012B00085B98AB1837F8AB98BB1837F8BB93E9818
-:1012C000469808950E94A008809300010E943A0960
-:1012D00080B38C7080BB81B3836F81BBECE4F1E0A1
-:1012E000AEE3B1E011921D9281E0EA35F807D1F743
-:1012F00083E898E0892B11F00C94830808959F925D
-:10130000AF92BF92CF92DF92EF92FF920F931F9313
-:10131000CF93DF93809100018823E1F080913D011C
-:101320008F5F80933D01811115C082E493E00E949C
-:1013300052070E94A00880930001882329F088E2C8
-:1013400093E00E94520706C084E193E00E94520796
-:101350000E942B080EE311E0C0E0D0E0BB24B39460
-:1013600082E0A82ECC24C394D12C25E0E22E23E0E9
-:10137000F22EC73000F580910001811162C080E437
-:101380000E94F50880930001811112C082E10E9441
-:101390001F098093000181110BC0C6010C2E01C0F2
-:1013A000880F0A94EAF780950E941F098093000134
-:1013B0000E94170946C0CA30A1F028F4C83059F07D
-:1013C000C93061F005C0CC3089F070F0CD3089F0C3
-:1013D000209A289810C0219A29980DC0229A2A98FC
-:1013E0000AC0239A2B9807C0529A01C0539A5B985F
-:1013F00002C03E9A4698E0EAEA95F1F78FB17999F2
-:1014000085C092E081708B25892B7C9B02C090E087
-:1014100001C094E0892B7D9B02C090E001C098E060
-:10142000892B7E9B02C090E001C090E1892B9FB187
-:101430009095991F9927991F9295990F907E892BC6
-:1014400010C080910001811176C080E40E94F508EF
-:1014500080930001882309F45BC0912C0E94170936
-:10146000892DF8019081981739F1808380910101CD
-:10147000882301F18091D70180FF04C08AE093E0C6
-:101480000E9452078091D70180FF0CC0809101011A
-:101490001F928F93FF92EF920E94EB070F900F9095
-:1014A0000F900F908091D70180FF04C083E093E0FC
-:1014B0000E945207A09201010E943A0921960F5FF3
-:1014C0001F4FCE30D10509F054CF80910101882300
-:1014D000B1F0815080930101882339F08FE99FE0BA
-:1014E0000197F1F700C000000AC0ACE4B1E0EEE300
-:1014F000F1E081918D9391E0EC34F907D1F782E22C
-:1015000098E0892BD1F00E94220817C090E07ACF92
-:1015100083E10E941F098093000181119ECF81E425
-:101520000E94F50880930001811197CF0E94300935
-:10153000982E909493CF80E094CF81E0DF91CF916B
-:101540001F910F91FF90EF90DF90CF90BF90AF90E1
-:101550009F900895E82FF0E0E45BFE4F80810895AE
-:10156000CF92DF92EF92FF920F931F93CF93DF936F
-:101570008CEE92E00E9452073CE4E32E31E0F32E21
-:10158000C0E0D0E047EEC42E42E0D42E0EED12E0D3
-:10159000DF93CF93DF92CF920E94EB0784EE92E02D
-:1015A0000E945207F70181917F0190E00E94732110
-:1015B0009F938F931F930F930E94EB078CED92E004
-:1015C0000E94520721968DB79EB708960FB6F894E1
-:1015D0009EBF0FBE8DBFCE30D105D1F6DF91CF912A
-:1015E0001F910F91FF90EF90DF90CF9008958B3B6C
-:1015F000910578F4883A910540F5853A9105D0F443
-:101600008430910508F0B1C08130910509F4ADC076
-:101610006BC0803E910508F467C0883E910508F4D0
-:10162000A4C09C01205F31092031310508F05CC065
-:1016300090650895853A910509F459C0863A910557
-:1016400009F458C083E890E40895883A910509F4B4
-:1016500054C0893A910509F453C08A3A910509F4B6
-:1016600052C08B3A910509F451C08C3A910509F4A6
-:1016700050C08D3A910509F44FC0803B910509F4A3
-:101680004EC08E3A910509F44DC08F3A910509F488
-:101690004CC0813B910509F44BC0823B910509F494
-:1016A0004AC0833B910509F449C0843B910509F484
-:1016B00048C0853B910509F447C0863B910509F474
-:1016C00046C0873B910509F445C0883B910509F464
-:1016D00044C0893B910509F443C08A3B910509F058
-:1016E00042C08AE296E4089580E090E0089581E89F
-:1016F00090E4089582E890E4089582EE94E40895D9
-:1017000089EE94E408958AEE94E4089585EB94E4D8
-:10171000089586EB94E4089587EB94E408958CECA7
-:1017200094E408958DEC94E4089583E895E4089595
-:101730008AE895E4089582E995E4089584E995E4BA
-:10174000089581E296E4089583E296E4089584E2A0
-:1017500096E4089585E296E4089586E296E4089575
-:1017600087E296E4089580E094E40895089596E071
-:10177000799FF001112494E5899FE00DF11D11245A
-:10178000E60FF11DEE0FFF1FEC51FF4F8591949175
-:101790000895880F991F805A9040FC01859194917B
-:1017A0000895880F991F80529F4FFC018591949155
-:1017B000089526E0729FF001112444E5849FE00D16
-:1017C000F11D1124E60FF11DEE0FFF1FEC51FF4F2D
-:1017D00025913491C9019A9581159F4110F4C90151
-:1017E0000895C90190528115904128F4C9019F7054
-:1017F0000E94D10B0895C90190538115904120F4A6
-:10180000C9019927906C0895211580E5380769F47E
-:101810000E949C1A9FEF24E34CE0915020404040EE
-:10182000E1F700C000000C943322213080E5380736
-:1018300051F48CE593E00E9452078091D7018160BA
-:101840008093D7010895C90190558115904108F002
-:1018500050C0832F99278F70992781309105D9F433
-:10186000A9014370552702C0880F991F4A95E2F7D6
-:101870009C68A90164E0440F551F6A95E1F744276D
-:101880005370842B952B73E0220F331F7A95E1F769
-:10189000207633271DC08230910529F4922F8827A6
-:1018A000816F906A089583309105A9F4A90143706E
-:1018B000552781E090E002C0880F991F4A95E2F712
-:1018C0009C6843E0220F331F4A95E1F7207E377072
-:1018D000822B932B08950497F1F4A90143705527A7
-:1018E00081E090E002C0880F991F4A95E2F79A685C
-:1018F000E8CFC90190578115904120F4C9019F702C
-:1019000090620895C90190588115904120F4C90151
-:101910009F70906A0895203E3105E0F4203C310527
-:1019200058F52133310509F470C048F429323105E6
-:1019300009F464C02A32310509F46EC074C0293339
-:101940003105F1F022383105D9F02533310509F49C
-:101950004EC069C0233E310589F138F4203E31057F
-:10196000C1F0223E3105E1F05EC0263E310569F14D
-:10197000273E3105A9F157C0C9010E94C90B08953E
-:101980008091EA0180FD02C081FF4DC080EE90E0B1
-:101990004BC08091EA0180FFF9CF89E390E044C019
-:1019A0008091EA0182FF0EC08091EA0184FF03C0AA
-:1019B00080E090E039C083EE90E036C08091EA018B
-:1019C00082FFF2CF82EE90E02FC08091EA0183FF88
-:1019D0000BC08091EA0184FDEBCF87EE90E024C03C
-:1019E0008091EA0183FFF5CF86EE90E01DC08091E3
-:1019F000EA0185FF07C089E290E016C08091EA0104
-:101A000085FFF9CF85E390E00FC08091EA0186FF62
-:101A100007C08AE290E008C08091EA0186FFF9CF12
-:101A200081E390E001C0C9010E94F70A089508957A
-:101A300080916D0108959FB7F89410925C019FBF4B
-:101A40009091F001943009F058C09091E9009F7096
-:101A50002091EC0020FF02C020E801C020E0292BEB
-:101A600094E09093E9009091EB0090FF43C0909137
-:101A7000EE0097FF3FC090915A01992321F0909179
-:101A8000E80095FF37C010925A0196E03091E800C7
-:101A900035FD15C03091F001343061F53091EB0027
-:101AA00035FD28C0915021F481E080935A0122C075
-:101AB000EFE9FFE03197F1F700C00000E7CF809336
-:101AC000F1008091E80085FD0AC08091E80080FF68
-:101AD000FCCF8091E8008E778093E80006C08FB736
-:101AE000F89491E090935C018FBF2F702093E900F0
-:101AF00080E008952F702093E9008FEF0895CF9331
-:101B0000DF9300D01F92CDB7DEB72091F0012430D3
-:101B100019F523E029839B838A832093E9008FEFC3
-:101B20009091E800815095FD06C095ED9A95F1F7EA
-:101B300000008111F5CF8091E80085FF0DC040E0E5
-:101B400050E063E070E0CE0101960E944E1080915B
-:101B5000E8008E778093E8000F900F900F90DF9150
-:101B6000CF910895CF93DF9300D01F92CDB7DEB70A
-:101B70002091F001243021F522E029839B838A8380
-:101B800083E08093E9008FEF9091E800815095FD0C
-:101B900006C095ED9A95F1F700008111F5CF80917F
-:101BA000E80085FF0DC040E050E063E070E0CE014A
-:101BB00001960E944E108091E8008E778093E80095
-:101BC0000F900F900F90DF91CF9108952091F00129
-:101BD0002430F1F422E02093E9002FEF3091E80067
-:101BE000215035FD06C035ED3A95F1F70000211181
-:101BF000F5CF2091E80025FF0BC040E050E065E004
-:101C000070E00E944E108091E8008E778093E8008B
-:101C10000895CF93DF93EC018091F001843009F0B7
-:101C200047C080910C018823E1F080910D01882349
-:101C3000C1F085E08093E9008FEF9091E80081503A
-:101C400095FD06C095E19A95F1F700008111F5CF59
-:101C50008091E80085FF2CC040E050E060E170E03A
-:101C600017C081E08093E9008FEF9091E8008150E8
-:101C700095FD06C095ED9A95F1F700008111F5CF1D
-:101C80008091E80085FF14C040E050E068E070E01B
-:101C9000CE010E944E108091E8008E778093E8007C
-:101CA00080E1FE01ADE5B1E001900D928A95E1F78A
-:101CB000DF91CF91089583E993E00E9452078091CC
-:101CC000EF01811109C00E94E0110E943D12809134
-:101CD000E20084608093E20008958FE893E00E9420
-:101CE00052071092EF0108958BE893E00C9452078D
-:101CF00087E893E00E9452070C94F42B83E893E06A
-:101D00000E9452070E94CA210E94FA2B0E94D914F5
-:101D10000C94170D80915B018F5F80935B0162E3F0
-:101D20000E94682D911135C010925B0180915C0179
-:101D3000882379F18091F001843049F58091E900A0
-:101D40008F709091EC0090FF02C090E801C090E08D
-:101D5000982B84E08093E9008091EB0080FF14C011
-:101D60008091EE0087FF10C08091E80085FF03C0DE
-:101D70001092F100F9CF8091E80080FF05C08091BA
-:101D8000E8008E778093E8009F709093E9001092AE
-:101D90005C01089542E061EC81E00E945A1142E04A
-:101DA00061EC82E00E945A1142E061EC83E00E9403
-:101DB0005A1142E261EC84E00E945A1142E161EC66
-:101DC00085E00C945A118091F201833009F455C0DA
-:101DD00030F4813071F0823009F48EC008958A3079
-:101DE00009F47AC08B3009F460C0893009F09CC0D6
-:101DF00020C08091F101813A09F096C08091E800FD
-:101E0000877F8093E8008091F5019091F601892BFE
-:101E100021F060E080E090E003C060E18DE591E0BA
-:101E200070E00E9497108091E8008B778093E80023
-:101E300008958091F101813209F076C08091F50119
-:101E40009091F601009719F0049709F06DC0809108
-:101E5000E800877F8093E8008091E80082FD05C05C
-:101E60008091F0018111F8CF5FC08091F1008093E3
-:101E70006D018091E8008B7753C08091F101813A28
-:101E800009F052C08091F5019091F601892B09F07B
-:101E90004BC08091E800877F8093E8008091E80044
-:101EA00080FFFCCF80910C0136C08091F10181321E
-:101EB000D9F58091F5019091F601892BA9F58091D2
-:101EC000E800877F8093E8000E948F118091F301E2
-:101ED00080930C010C949C1A8091F101813221F5C0
-:101EE0008091E800877F8093E8000E948F118091A5
-:101EF000F40180936E0108958091F101813AA1F47B
-:101F00008091E800877F8093E8008091E80080FF5F
-:101F1000FCCF80916E018093F1008091E8008E7774
-:101F20008093E8000C948F11089584B7877F84BF55
-:101F300088E10FB6F89480936000109260000FBEA5
-:101F400090E080E80FB6F894809361009093610070
-:101F50000FBE0E9462150E94E0110E943D12809106
-:101F6000E20084608093E2008BE19DE00E94092101
-:101F700078940E94B7140E94641582E091E00E9458
-:101F8000D4140E94E22B82E793E00E9452078091D2
-:101F9000F001853089F48EE693E00E9452070E949A
-:101FA0008D218091EE01882391F30E94B521882331
-:101FB00071F30E943810EBCF0E949215E8CF292FC1
-:101FC000332723303105A9F06CF42130310509F4B1
-:101FD00042C02230310509F043C08DE890E02BEC7F
-:101FE00033E042C021323105C9F02232310519F106
-:101FF00037C099278130910541F08230910541F039
-:10200000892B71F5E7ECF3E005C0EFEAF3E002C0DD
-:10201000E7E9F3E0849190E09F0126C0653000F588
-:10202000E62FF0E0EE0FFF1FEB5DFE4F20813181C8
-:1020300089E090E019C0653098F4E62FF0E0DF0108
-:10204000AA0FBB1FA55EBE4F2D913C91EA5EFE4FCD
-:10205000808190E009C082E190E028E534E004C08E
-:1020600080E090E020E030E0FA01318320830895A1
-:1020700080E189BD82E189BD09B400FEFDCF809178
-:10208000D8008F7D8093D8008091E000826080939B
-:10209000E0008091E00081FDFCCF0895CF92DF92B7
-:1020A000EF92FF920F931F93CF93DF937C018B01ED
-:1020B000EA010E94B011811131C0209731F088816E
-:1020C0009981081B190BE80EF91EC12CD12C0115A2
-:1020D000110519F18091E80085FD14C08091E80098
-:1020E0008E778093E800209741F0888199818C0D4C
-:1020F0009D1D9983888385E011C00E94B0118823BB
-:1021000031F30CC0F70181917F018093F100015000
-:102110001109FFEFCF1ADF0ADACF80E0DF91CF910C
-:102120001F910F91FF90EF90DF90CF900895209135
-:10213000F7013091F8012617370748F0611571054E
-:1021400039F42091E8002E772093E80001C0B9010E
-:10215000FC0120E061157105B9F18091F00188233F
-:1021600009F440C0853009F43FC08091E80083FD48
-:102170003DC08091E80082FF06C08091E80082FFA8
-:1021800026C080E008958091E80080FFE3CF209191
-:10219000F3008091F20090E0922B6115710551F0EF
-:1021A0008830910538F421912093F1006150