summaryrefslogtreecommitdiffstats
path: root/keyboard/arrow_pad
diff options
context:
space:
mode:
Diffstat (limited to 'keyboard/arrow_pad')
-rw-r--r--keyboard/arrow_pad/Makefile74
-rw-r--r--keyboard/arrow_pad/README.md24
-rw-r--r--keyboard/arrow_pad/arrow_pad.c114
-rw-r--r--keyboard/arrow_pad/arrow_pad.h18
-rw-r--r--keyboard/arrow_pad/config.h158
-rw-r--r--keyboard/arrow_pad/keymaps/default/compiled.hex1490
-rw-r--r--keyboard/arrow_pad/keymaps/default/keymap.c163
-rw-r--r--keyboard/arrow_pad/keymaps/pad_21/Makefile17
-rw-r--r--keyboard/arrow_pad/keymaps/pad_21/compiled.hex893
-rw-r--r--keyboard/arrow_pad/keymaps/pad_21/config.h158
-rw-r--r--keyboard/arrow_pad/keymaps/pad_21/keymap.c160
-rw-r--r--keyboard/arrow_pad/keymaps/pad_24/Makefile17
-rw-r--r--keyboard/arrow_pad/keymaps/pad_24/compiled.hex935
-rw-r--r--keyboard/arrow_pad/keymaps/pad_24/config.h158
-rw-r--r--keyboard/arrow_pad/keymaps/pad_24/keymap.c163
15 files changed, 0 insertions, 4542 deletions
diff --git a/keyboard/arrow_pad/Makefile b/keyboard/arrow_pad/Makefile
deleted file mode 100644
index 09fcf3e7a0..0000000000
--- a/keyboard/arrow_pad/Makefile
+++ /dev/null
@@ -1,74 +0,0 @@
-
-
-# MCU name
-#MCU = at90usb1287
-MCU = atmega32u4
-
-# Processor frequency.
-# This will define a symbol, F_CPU, in all source code files equal to the
-# processor frequency in Hz. You can then use this symbol in your source code to
-# calculate timings. Do NOT tack on a 'UL' at the end, this will be done
-# automatically to create a 32-bit value in your source code.
-#
-# This will be an integer division of F_USB below, as it is sourced by
-# F_USB after it has run through any CPU prescalers. Note that this value
-# does not *change* the processor frequency - it should merely be updated to
-# reflect the processor speed set externally so that the code can use accurate
-# software delays.
-F_CPU = 16000000
-
-
-#
-# LUFA specific
-#
-# Target architecture (see library "Board Types" documentation).
-ARCH = AVR8
-
-# Input clock frequency.
-# This will define a symbol, F_USB, in all source code files equal to the
-# input clock frequency (before any prescaling is performed) in Hz. This value may
-# differ from F_CPU if prescaling is used on the latter, and is required as the
-# raw input clock is fed directly to the PLL sections of the AVR for high speed
-# clock generation for the USB and other AVR subsections. Do NOT tack on a 'UL'
-# at the end, this will be done automatically to create a 32-bit value in your
-# source code.
-#
-# If no clock division is performed on the input clock inside the AVR (via the
-# CPU clock adjust registers or the clock division fuses), this will be equal to F_CPU.
-F_USB = $(F_CPU)
-
-# Interrupt driven control endpoint task(+60)
-OPT_DEFS += -DINTERRUPT_CONTROL_ENDPOINT
-
-
-# Boot Section Size in *bytes*
-# Teensy halfKay 512
-# Teensy++ halfKay 1024
-# Atmel DFU loader 4096
-# LUFA bootloader 4096
-# USBaspLoader 2048
-OPT_DEFS += -DBOOTLOADER_SIZE=512
-
-
-# Build Options
-# change yes to no to disable
-#
-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 ?= yes # Console for debug(+400)
-COMMAND_ENABLE ?= yes # Commands for debug and configuration
-KEYBOARD_LOCK_ENABLE ?= yes # Allow locking of keyboard via magic key
-# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
-SLEEP_LED_ENABLE ?= no # Breathing sleep LED during USB suspend
-# if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
-NKRO_ENABLE ?= yes # USB Nkey Rollover
-BACKLIGHT_ENABLE ?= yes # Enable keyboard backlight functionality
-MIDI_ENABLE ?= no # MIDI controls
-UNICODE_ENABLE ?= no # Unicode
-BLUETOOTH_ENABLE ?= no # Enable Bluetooth with the Adafruit EZ-Key HID
-AUDIO_ENABLE ?= no # Audio output on port C6
-
-ifndef QUANTUM_DIR
- include ../../Makefile
-endif \ No newline at end of file
diff --git a/keyboard/arrow_pad/README.md b/keyboard/arrow_pad/README.md
deleted file mode 100644
index f669ad6a12..0000000000
--- a/keyboard/arrow_pad/README.md
+++ /dev/null
@@ -1,24 +0,0 @@
-arrow_pad keyboard firmware
-======================
-
-## Quantum MK Firmware
-
-For the full Quantum feature list, see [the parent README.md](/README.md).
-
-## Building
-
-Download or clone the whole firmware and navigate to the keyboard/arrow_pad folder. Once your dev env is setup, you'll be able to type `make` to generate your .hex - you can then use the Teensy Loader to program your .hex file.
-
-Depending on which keymap you would like to use, you will have to compile slightly differently.
-
-### Default
-To build with the default keymap, simply run `make`.
-
-### Other Keymaps
-Several version of keymap are available in advance but you are recommended to define your favorite layout yourself. To define your own keymap create file named `<name>.c` in the keymaps folder, and see keymap document (you can find in top README.md) and existent keymap files.
-
-To build the firmware binary hex file with a keymap just do `make` with `KEYMAP` option like:
-```
-$ make KEYMAP=[default|jack|<name>]
-```
-Keymaps follow the format **__\<name\>.c__** and are stored in the `keymaps` folder. \ No newline at end of file
diff --git a/keyboard/arrow_pad/arrow_pad.c b/keyboard/arrow_pad/arrow_pad.c
deleted file mode 100644
index f29c2c53fe..0000000000
--- a/keyboard/arrow_pad/arrow_pad.c
+++ /dev/null
@@ -1,114 +0,0 @@
-#include "arrow_pad.h"
-
-__attribute__ ((weak))
-void matrix_init_user(void) {
- // leave this function blank - it can be defined in a keymap file
-};
-
-__attribute__ ((weak))
-void matrix_scan_user(void) {
- // leave this function blank - it can be defined in a keymap file
-}
-
-__attribute__ ((weak))
-bool process_action_user(keyrecord_t *record) {
- // leave this function blank - it can be defined in a keymap file
- return true;
-}
-
-__attribute__ ((weak))
-void led_set_user(uint8_t usb_led) {
- // leave this function blank - it can be defined in a keymap file
-}
-
-void matrix_init_kb(void) {
- // put your keyboard start-up code here
- // runs once when the firmware starts up
-
-#ifdef BACKLIGHT_ENABLE
- backlight_init_ports();
-#endif
-
- matrix_init_user();
-}
-
-void matrix_scan_kb(void) {
- // put your looping keyboard code here
- // runs every cycle (a lot)
-
- matrix_scan_user();
-}
-
-bool process_action_kb(keyrecord_t *record) {
- // put your per-action keyboard code here
- // runs for every action, just before processing by the firmware
-
- return process_action_user(record);
-}
-
-void led_set_kb(uint8_t usb_led) {
- // put your keyboard LED indicator (ex: Caps Lock LED) toggling code here
-
- led_set_user(usb_led);
-}
-
-#ifdef BACKLIGHT_ENABLE
-#define CHANNEL OCR1C
-
-void backlight_init_ports()
-{
-
- // Setup PB7 as output and output low.
- DDRB |= (1<<7);
- PORTB &= ~(1<<7);
-
- // Use full 16-bit resolution.
- ICR1 = 0xFFFF;
-
- // I could write a wall of text here to explain... but TL;DW
- // Go read the ATmega32u4 datasheet.
- // And this: http://blog.saikoled.com/post/43165849837/secret-konami-cheat-code-to-high-resolution-pwm-on
-
- // Pin PB7 = OCR1C (Timer 1, Channel C)
- // Compare Output Mode = Clear on compare match, Channel C = COM1C1=1 COM1C0=0
- // (i.e. start high, go low when counter matches.)
- // WGM Mode 14 (Fast PWM) = WGM13=1 WGM12=1 WGM11=1 WGM10=0
- // Clock Select = clk/1 (no prescaling) = CS12=0 CS11=0 CS10=1
-
- TCCR1A = _BV(COM1C1) | _BV(WGM11); // = 0b00001010;
- TCCR1B = _BV(WGM13) | _BV(WGM12) | _BV(CS10); // = 0b00011001;
-
- backlight_init();
-}
-
-void backlight_set(uint8_t level)
-{
- if ( level == 0 )
- {
- // Turn off PWM control on PB7, revert to output low.
- TCCR1A &= ~(_BV(COM1C1));
- CHANNEL = 0x0;
- // Prevent backlight blink on lowest level
- PORTB &= ~(_BV(PORTB7));
- }
- else if ( level == BACKLIGHT_LEVELS )
- {
- // Prevent backlight blink on lowest level
- PORTB &= ~(_BV(PORTB7));
- // Turn on PWM control of PB7
- TCCR1A |= _BV(COM1C1);
- // Set the brightness
- CHANNEL = 0xFFFF;
- }
- else
- {
- // Prevent backlight blink on lowest level
- PORTB &= ~(_BV(PORTB7));
- // Turn on PWM control of PB7
- TCCR1A |= _BV(COM1C1);
- // Set the brightness
- CHANNEL = 0xFFFF >> ((BACKLIGHT_LEVELS - level) * ((BACKLIGHT_LEVELS + 1) / 2));
- }
-}
-
-#endif \ No newline at end of file
diff --git a/keyboard/arrow_pad/arrow_pad.h b/keyboard/arrow_pad/arrow_pad.h
deleted file mode 100644
index b3fb578e8f..0000000000
--- a/keyboard/arrow_pad/arrow_pad.h
+++ /dev/null
@@ -1,18 +0,0 @@
-#ifndef ARROW_PAD_H
-#define ARROW_PAD_H
-
-#include "matrix.h"
-#include "keymap.h"
-#ifdef BACKLIGHT_ENABLE
- #include "backlight.h"
-#endif
-#include <avr/io.h>
-#include <stddef.h>
-
-void matrix_init_user(void);
-void matrix_scan_user(void);
-bool process_action_user(keyrecord_t *record);
-void led_set_user(uint8_t usb_led);
-void backlight_init_ports(void);
-
-#endif
diff --git a/keyboard/arrow_pad/config.h b/keyboard/arrow_pad/config.h
deleted file mode 100644
index 9e85f3ccf6..0000000000
--- a/keyboard/arrow_pad/config.h
+++ /dev/null
@@ -1,158 +0,0 @@
-/*
-Copyright 2012 Jun Wako <wakojun@gmail.com>
-
-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 <http://www.gnu.org/licenses/>.
-*/
-
-#ifndef CONFIG_H
-#define CONFIG_H
-
-#include "config_common.h"
-
-/* USB Device descriptor parameter */
-#define VENDOR_ID 0xFEED
-#define PRODUCT_ID 0x4096
-#define DEVICE_VER 0x0001
-#define MANUFACTURER Nobody
-#define PRODUCT GoldPad
-#define DESCRIPTION A custom keyboard
-
-/* key matrix size */
-#define MATRIX_ROWS 6
-#define MATRIX_COLS 4
-
-/*
- * Keyboard Matrix Assignments
- *
- * Change this to how you wired your keyboard
- * COLS: AVR pins used for columns, left to right
- * ROWS: AVR pins used for rows, top to bottom
- * DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode)
- * ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode)
- *
-*/
-#define MATRIX_ROW_PINS { F0, F1, F4, F5, F6, F7 }
-#define MATRIX_COL_PINS { B0, B1, B2, B3 }
-#define UNUSED_PINS
-
-/* COL2ROW or ROW2COL */
-#define DIODE_DIRECTION ROW2COL
-
-/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
-#define DEBOUNCING_DELAY 5
-
-/* define if matrix has ghost (lacks anti-ghosting diodes) */
-//#define MATRIX_HAS_GHOST
-
-/* number of backlight levels */
-#define BACKLIGHT_LEVELS 3
-
-/* 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
-
-/*
- * Force NKRO
- *
- * Force NKRO (nKey Rollover) to be enabled by default, regardless of the saved
- * state in the bootmagic EEPROM settings. (Note that NKRO must be enabled in the
- * makefile for this to work.)
- *
- * If forced on, NKRO can be disabled via magic key (default = LShift+RShift+N)
- * until the next keyboard reset.
- *
- * NKRO may prevent your keystrokes from being detected in the BIOS, but it is
- * fully operational during normal computer usage.
- *
- * For a less heavy-handed approach, enable NKRO via magic key (LShift+RShift+N)
- * or via bootmagic (hold SPACE+N while plugging in the keyboard). Once set by
- * bootmagic, NKRO mode will always be enabled until it is toggled again during a
- * power-up.
- *
- */
-#define FORCE_NKRO
-
-/*
- * Magic Key Options
- *
- * Magic keys are hotkey commands that allow control over firmware functions of
- * the keyboard. They are best used in combination with the HID Listen program,
- * found here: https://www.pjrc.com/teensy/hid_listen.html
- *
- * The options below allow the magic key functionality to be changed. This is
- * useful if your keyboard/keypad is missing keys and you want magic key support.
- *
- */
-
-/* key combination for magic key command */
-#define IS_COMMAND() ( \
- keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \
-)
-
-/* control how magic key switches layers */
-//#define MAGIC_KEY_SWITCH_LAYER_WITH_FKEYS true
-//#define MAGIC_KEY_SWITCH_LAYER_WITH_NKEYS true
-//#define MAGIC_KEY_SWITCH_LAYER_WITH_CUSTOM false
-
-/* override magic key keymap */
-//#define MAGIC_KEY_SWITCH_LAYER_WITH_FKEYS
-//#define MAGIC_KEY_SWITCH_LAYER_WITH_NKEYS
-//#define MAGIC_KEY_SWITCH_LAYER_WITH_CUSTOM
-//#define MAGIC_KEY_HELP1 H
-//#define MAGIC_KEY_HELP2 SLASH
-//#define MAGIC_KEY_DEBUG D
-//#define MAGIC_KEY_DEBUG_MATRIX X
-//#define MAGIC_KEY_DEBUG_KBD K
-//#define MAGIC_KEY_DEBUG_MOUSE M
-//#define MAGIC_KEY_VERSION V
-//#define MAGIC_KEY_STATUS S
-//#define MAGIC_KEY_CONSOLE C
-//#define MAGIC_KEY_LAYER0_ALT1 ESC
-//#define MAGIC_KEY_LAYER0_ALT2 GRAVE
-//#define MAGIC_KEY_LAYER0 0
-//#define MAGIC_KEY_LAYER1 1
-//#define MAGIC_KEY_LAYER2 2
-//#define MAGIC_KEY_LAYER3 3
-//#define MAGIC_KEY_LAYER4 4
-//#define MAGIC_KEY_LAYER5 5
-//#define MAGIC_KEY_LAYER6 6
-//#define MAGIC_KEY_LAYER7 7
-//#define MAGIC_KEY_LAYER8 8
-//#define MAGIC_KEY_LAYER9 9
-//#define MAGIC_KEY_BOOTLOADER PAUSE
-//#define MAGIC_KEY_LOCK CAPS
-//#define MAGIC_KEY_EEPROM E
-//#define MAGIC_KEY_NKRO N
-//#define MAGIC_KEY_SLEEP_LED Z
-
-/*
- * 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
-
-#endif
diff --git a/keyboard/arrow_pad/keymaps/default/compiled.hex b/keyboard/arrow_pad/keymaps/default/compiled.hex
deleted file mode 100644
index 789eb4c3fc..0000000000
--- a/keyboard/arrow_pad/keymaps/default/compiled.hex
+++ /dev/null
@@ -1,1490 +0,0 @@
-:100000000C94E8060C942C070C942C070C942C07E9
-:100010000C942C070C942C070C942C070C942C0794
-:100020000C942C070C942C070C94DE120C94B01337
-:100030000C9458210C942C070C942C070C942C072E
-:100040000C942C070C942C070C942C070C942C0764
-:100050000C942C070C94C0210C942C070C942C07A6
-:100060000C942C070C942C070C942C070C942C0744
-:100070000C942C070C942C070C942C070C942C0734
-:100080000C942C070C942C070C942C070C942C0724
-:100090000C942C070C942C070C942C070C942C0714
-:1000A0000C942C070C942C070C942C071D143F1453
-:1000B0002D153F142D158414A7142D15FC140F15A0
-:1000C000E817E8171718171856187618CC19CC190E
-:1000D0008118CC19311931199819A119CC19C619DF
-:1000E0003E193E193E193E193E193E193E193E1958
-:1000F0003E193E193E193E193E193E193E193E1948
-:100100004E195C1963196A197419F1A2028A00D296
-:1001100000D000D100C801C802C829002B0031005E
-:10012000C00053005400550056005F00600061009D
-:1001300067005C005D005E00570059005A005B00DC
-:100140000000620000006300580029002B002C0012
-:100150000100C10019011C011D014A0052004B00A1
-:10016000E2005000C5004F00E0004D0051004E007D
-:1001700000002A0000004C00C600C200C300C400FA
-:100180000100C100010001000100010001000100A7
-:100190000100010001000100010001000100010057
-:1001A000000000500000010001000A44454255478C
-:1001B0003A20656E61626C65642E0A005374617446
-:1001C00065206F6620726F772025583A20253031E0
-:1001D00036620A0048756D616E2D726561646162F8
-:1001E0006C65206D61747269782073746174653A0E
-:1001F0000D0A004465626F756E63696E6720646501
-:100200006C61792072656D61696E696E673A20254F
-:10021000580A005B735D004B6579626F6172642000
-:1002200073746172742E0A005B575D005B535D004E
-:100230005B525D005B445D005B435D001003470063
-:100240006F006C00640050006100640000000E0349
-:100250004E006F0062006F0064007900000004032C
-:10026000090409028D00050100A0FA09040000013B
-:1002700003010100092111010001223F000705814E
-:100280000308000A09040100010301020009211109
-:10029000010001224D000705820308000A0904023B
-:1002A00000010300000009211101000122360007AE
-:1002B00005830308000A0904030002030000000983
-:1002C00021110100012220000705840320000107FD
-:1002D00005040320000109040400010300000009D3
-:1002E00021110100012239000705850310000112C8
-:1002F00001100100000008EDFE964001000102001F
-:100300000105010906A101050719E029E7150025E6
-:1003100001950875018102050819012905950575E2
-:1003200001910295017503910105071900297715BF
-:10033000002501957875018102C00631FF0974A17D
-:10034000010975150025FF952075088102097615AC
-:100350000025FF952075089102C005010980A101C3
-:10036000850216010026B7001A01002AB700751091
-:1003700095018100C0050C0901A10185031601004A
-:10038000269C021A01002A9C02751095018100C06A
-:1003900005010902A1010901A100050919012905A9
-:1003A00015002501950575018102950175038101EF
-:1003B0000501093009311581257F950275088106EF
-:1003C00009381581257F950175088106050C0A38C5
-:1003D000021581257F950175088106C0C0050109B8
-:1003E00006A101050719E029E71500250195087503
-:1003F00001810295017508810105081901290595FA
-:1004000005750191029501750391010507190029F0
-:10041000FF150025FF950675088100C00A002530EC
-:10042000325820006B6579626F6172645F7265702B
-:100430006F72743A20004B6579626F617264204C70
-:100440004544732073746174653A2025780A00640A
-:10045000656C5F6B65795F6269743A2063616E27D2
-:10046000742064656C3A20253032580A0061646457
-:100470005F6B65795F6269743A2063616E277420EF
-:100480006164643A20253032580A00646F6E652E2C
-:100490000A00626F6F676D61676963207363616EE5
-:1004A0003A202E2E2E2000290A002575002F002527
-:1004B00075005D28002564002000256400200025CB
-:1004C000640020002564007C0025303258006D6FE8
-:1004D0007573656B6579205B62746E7C782079201A
-:1004E0007620685D287265702F61636C293A205B05
-:1004F000006D6B5F776865656C5F74696D655F74CF
-:100500006F5F6D6178203D2025640A006D6B5F7719
-:100510006865656C5F6D61785F7370656564203DCB
-:100520002025640A006D6B5F74696D655F746F5F91
-:100530006D6178203D2025640A006D6B5F6D6178E8
-:100540005F7370656564203D2025640A006D6B5FF4
-:10055000696E74657276616C203D2025640A006DB9
-:100560006B5F64656C6179203D2025640A006D6BCA
-:100570005F776865656C5F74696D655F746F5F6DEB
-:100580006178203D2025640A006D6B5F77686565A2
-:100590006C5F6D61785F7370656564203D202564D4
-:1005A0000A006D6B5F74696D655F746F5F6D617874
-:1005B000203D2025640A006D6B5F6D61785F73706C
-:1005C000656564203D2025640A006D6B5F696E746B
-:1005D000657276616C203D2025640A006D6B5F6456
-:1005E000656C6179203D2025640A000A00257500AC
-:1005F000363A20776865656C5F74696D655F746F06
-:100600005F6D61783A20000A00257500353A207741
-:100610006865656C5F6D61785F73706565643A20CD
-:10062000000A00257500343A2074696D655F746FA7
-:100630005F6D61783A20000A00257500333A206D1D
-:1006400061785F73706565643A20000A0025750063
-:10065000323A20696E74657276616C286D73293A3E
-:1006600020000A00257500313A2064656C61792804
-:100670002A31306D73293A20000A092D2056616C09
-:10068000756573202D0A004D3E004D25643E200007
-:100690003F007365742064656661756C740A00437D
-:1006A0003E200077686572652064656C74613A204D
-:1006B000637572736F723D25642C20776865656C75
-:1006C0003D25640A53656520687474703A2F2F6560
-:1006D0006E2E77696B6970656469612E6F72672F22
-:1006E00077696B692F4D6F7573655F6B6579730AF9
-:1006F000000A092D204D6F7573656B6579202D0AF1
-:100700004553432F713A09717569740A313A096486
-:10071000656C6179282A31306D73290A323A09698A
-:100720006E74657276616C286D73290A333A096DAF
-:1007300061785F73706565640A343A0974696D6540
-:100740005F746F5F6D61780A353A09776865656C2B
-:100750005F6D61785F73706565640A363A09776822
-:1007600065656C5F74696D655F746F5F6D61780A54
-:100770000A703A097072696E742076616C756573DF
-:100780000A643A097365742064656661756C7473F4
-:100790000A75703A092B310A646F776E3A092D3168
-:1007A0000A706775703A092B31300A7067646F7789
-:1007B0006E3A092D31300A0A7370656564203D2058
-:1007C00064656C7461202A206D61785F7370656563
-:1007D00064202A2028726570656174202F20746956
-:1007E0006D655F746F5F6D6178290A003F004D3E53
-:1007F0002000433E20004C25640A0074696D657238
-:100800005F636F756E743A202530346C580A006B44
-:100810006579626F6172645F6E6B726F3A20255802
-:100820000A006B6579626F6172645F69646C653A36
-:100830002025580A006B6579626F6172645F70727F
-:100840006F746F636F6C3A2025580A00686F737479
-:100850005F6B6579626F6172645F6C656473282990
-:100860003A2025580A000A092D20537461747573C3
-:10087000202D0A004743433A20342E392E3220419E
-:1008800056522D4C4942433A20312E382E312041C8
-:1008900056525F415243483A20617672350A004F02
-:1008A0005054494F4E533A204C55464120424F4FE9
-:1008B000544D41474943204D4F5553454B455920D1
-:1008C00045585452414B455920434F4E534F4C4588
-:1008D00020434F4D4D414E44204E4B524F20353119
-:1008E000320A004255494C443A2031363731386596
-:1008F000662D6469727479202832333A30373A327F
-:1009000039204A756E2020392032303136290A00CC
-:100910005649443A20307846454544284E6F626F28
-:10092000647929205049443A2030783430393628C7
-:10093000476F6C6450616429205645523A203078E4
-:10094000303030310A00444553433A20412063752A
-:1009500073746F6D206B6579626F6172640A000A4F
-:10096000092D2056657273696F6E202D0A000A09E1
-:100970002D20436F6E736F6C65202D0A4553432FF6
-:10098000713A09717569740A6D3A096D6F7573650D
-:100990006B65790A000A092D204D61676963202D76
-:1009A0000A443A094465627567204D65737361674F
-:1009B0006520546F67676C650A583A094D61747217
-:1009C0006978204465627567204D6F646520546FB7
-:1009D00067676C65202D2053686F77206B65797091
-:1009E00072657373657320696E206D6174726978C6
-:1009F00020677269640A4B3A094B6579626F6172CC
-:100A00006420446562756720546F67676C65202DAC
-:100A10002053686F77206B657970726573732072ED
-:100A200065706F72740A4D3A094465627567204DAE
-:100A30006F75736520546F67676C650A563A09567F
-:100A4000657273696F6E0A533A09537461747573F2
-:100A50000A433A09416374697661746520436F6E95
-:100A6000736F6C65204D6F64650A46312D463130D9
-:100A70003A0953776974636820746F204C61796513
-:100A80007220302D392028463130203D204C30292D
-:100A90000A302D393A0953776974636820746F20DE
-:100AA0004C6179657220302D390A4553433A095318
-:100AB000776974636820746F204C617965722030A7
-:100AC0002028616C7465726E617465206B65792095
-:100AD00031290A47524156453A0953776974636888
-:100AE00020746F204C6179657220302028616C740D
-:100AF00065726E617465206B65792032290A5041F8
-:100B00005553453A094A756D7020746F20426F6FD6
-:100B1000746C6F6164657220285265736574290A6C
-:100B2000453A095072696E7420454550524F4D2028
-:100B300053657474696E67730A4E3A094E4B524F8F
-:100B400020546F67676C650A000A002575002E6CDB
-:100B50006576656C3A20000A002575002E656E6189
-:100B6000626C653A20000A002530325800626163E9
-:100B70006B6C696768745F636F6E6669672E72611C
-:100B8000773A20000A002575002E6E6B726F3A20AE
-:100B9000000A002575002E737761705F6261636BD8
-:100BA000736C6173685F6261636B73706163653AF4
-:100BB00020000A002575002E737761705F677261EF
-:100BC00076655F6573633A20000A002575002E6E16
-:100BD0006F5F6775693A20000A002575002E7377EC
-:100BE00061705F72616C745F726775693A20000AA8
-:100BF000002575002E737761705F6C616C745F6C9B
-:100C00006775693A20000A002575002E63617073CC
-:100C10006C6F636B5F746F5F636F6E74726F6C3A4F
-:100C200020000A002575002E737761705F636F6E78
-:100C300074726F6C5F636170736C6F636B3A2000EA
-:100C40000A0025303258006B65796D61705F636F03
-:100C50006E6669672E7261773A20000A002575007A
-:100C60002E6D6F7573653A20000A002575002E6B96
-:100C70006579626F6172643A20000A002575002E62
-:100C80006D61747269783A20000A002575002E653E
-:100C90006E61626C653A20000A00253032580064AB
-:100CA000656275675F636F6E6669672E7261773A1A
-:100CB00020000A0025750064656661756C745F6CC0
-:100CC000617965723A20003F004E4B524F3A206FD7
-:100CD00066660A004E4B524F3A206F6E0A000A6D4C
-:100CE0006F7573653A206F66660A000A6D6F7573DB
-:100CF000653A206F6E0A000A6B6579626F617264F3
-:100D00003A206F66660A000A6B6579626F617264E9
-:100D10003A206F6E0A000A6D61747269783A206F2A
-:100D200066660A000A6D61747269783A206F6E0A0D
-:100D3000000A64656275673A206F66660A000A6495
-:100D4000656275673A206F6E0A000A0A4A756D700F
-:100D5000696E6720746F20626F6F746C6F61646579
-:100D6000722E2E2E2000433E20006565636F6E6656
-:100D700069673A0A006261636B6C69676874207323
-:100D80007465703A2025750A006261636B6C69674F
-:100D9000687420746F67676C653A2025750A006275
-:100DA00061636B6C69676874206465637265617305
-:100DB000653A2025750A006261636B6C6967687427
-:100DC00020696E6372656173653A2025750A0000BB
-:100DD00011241FBECFEFDAE0DEBFCDBF04B603FEA5
-:100DE00024C08091EF019091F001A091F101B091A8
-:100DF000F2018730904BA740B04BB9F41092EF014D
-:100E00001092F0011092F1011092F20114BE84B719
-:100E1000877F84BF88E10FB6F894809360001092BA
-:100E200060000FBEE0E0FFE3099511E0A0E0B1E053
-:100E3000E2EBFCE502C005900D92A234B107D9F7B0
-:100E400011E0A2E4B1E001C01D92AF3EB107E1F7AD
-:100E50000E9418100C94572E0C940000FF93EF93EF
-:100E6000E0914201F0914301309709F00995EF912B
-:100E7000FF910895FC018591803011F0EFDFFBCFE9
-:100E80000895FF27E0E230E247FF0CC0419597FF4D
-:100E900009C0EDE26095709580959095611D711D7A
-:100EA000811D911D27FF02C0219530E350E2AA2742
-:100EB000660F771F881F991FAA1FA41710F0A41B85
-:100EC00063955A95A9F7AA3008F0A95FA05DAF9382
-:100ED000F395611571058105910541F7ED3211F426
-:100EE000EF93F395F21718F43F93F395FBCF8F919F
-:100EF000B5DFFA95E1F70895E991F9918591803090
-:100F000021F0853219F0AADFF9CF089520E0E894A6
-:100F100055915532C1F3503311F4689455915A33B9
-:100F200048F4505390F3220F022E220F220F200D6F
-:100F3000250FF4CF0EF4219589919991533619F329
-:100F4000533729F1533559F1BC0188279927E89483
-:100F50005C3621F48991999168945591543639F40D
-:100F600046EF7EF077FF0DC08FEF9FEF0AC0553739
-:100F70004AE039F0583540E121F0523642E009F0BC
-:100F80000895FF93EF937DDFEF91FF91B7CFFF932C
-:100F9000EF93FC0181918030B9F360DFFBCFFF93C9
-:100FA000EF9368DFF1CFDF93CF93CDB7DEB7259610
-:100FB000A3DFCF91DF9108950895089581E008950A
-:100FC0000C94DD070C94DE070C948B08279A2F985D
-:100FD0008FEF9FEF90938700809386008AE0809345
-:100FE000800089E1809381000C94E22B0E94E60747
-:100FF0000C94DC07282F81110BC080918000877F23
-:101000008093800010928D0010928C002F9808958C
-:101010002F9880918000886080938000233019F49D
-:101020008FEF9FEF0FC083E090E0821B9109880F44
-:10103000991F2FEF3FEFA90102C0569547958A955A
-:10104000E2F7CA0190938D0080938C000895089573
-:10105000CF93DF93EC016130F1F018F06230E9F1E9
-:1010600055C08A81882309F451C080EE0E94DC16A5
-:101070008D81807F803129F486E00E94DC1686E035
-:1010800006C0803231F48BE10E94DC168BE10E94B5
-:101090007B1780EE1FC08A818823C1F08D818295E5
-:1010A0008F7090E003971CF482E00E94A3178D815B
-:1010B000807F803219F481E00E94A3178D81807FA8
-:1010C000803321F588E50E94DC1620C083E00E9471
-:1010D000AA1788E50E947B1719C08A81882399F096
-:1010E0008D8182958F7090E002971CF481E00E94C0
-:1010F000A3178D8182958F7090E002973CF084E079
-:101100000E94A31703C085E00E94AA1780E090E028
-:10111000DF91CF91089581FF03C0569A5E9A02C075
-:1011200056985E9880FF05C03F9A88B18F6788B94E
-:1011300008953F984798089581E008950C949C087D
-:1011400008950F931F93CF93DF938C01FC01C0810F
-:10115000D181CE010E94301FBE010E944D09EC01D9
-:10116000B8010E949E08882309F48DC0F80182818D
-:10117000882309F44AC080914F0181111FC0C431F6
-:10118000F0E5DF0709F051C00E94A00881E08093DC
-:101190004F010E948A2190934E0180934D0110923D
-:1011A0004601109248011092470110924A01109294
-:1011B000490110924C0110924B0165C080914D0184
-:1011C00090914E010E949621883C910570F4809187
-:1011D0004601E82FF0E0EE0FFF1FE95BFE4FD183E1
-:1011E000C0838F5F809346014EC0C43880E5D80726
-:1011F00021F0C538D04501F13AC0F8018281882339
-:1012000041F01092440182E01EC0C438E0E5DE07E0
-:1012100059F580914401811106C086E20E94DC16D6
-:1012200086E20E947B1782E01CC0C438F0E5DF072D
-:1012300041F3C538D045D9F4F8018281882331F0D3
-:101240001092450180E20E94A3171DC080914501C4
-:10125000811106C087E20E94DC1687E20E947B179C
-:1012600080E20E94AA170FC0C538D04529F381E05B
-:101270008093440180934501C801DF91CF911F9174
-:101280000F910C94E20780E0DF91CF911F910F91B5
-:1012900008950C94F6070C94E007E72FF0E096E031
-:1012A000899FE00DF11D1124EE0FFF1FEE0FFF1FB0
-:1012B000E60FF11DEE0FFF1FE65EFE4F8591949144
-:1012C0000895880F991FFC01E657F040859194918D
-:1012D0000895880F991FFC01E65FFE4F8591949158
-:1012E00008950F931F93CF93DF93EC01811521E3B2
-:1012F0009207A0F5C11580E3D80708F0D7C0C83E13
-:10130000D105D8F4C03ED10508F007C2C83AD105CE
-:1013100078F4C53AD10508F06AC0C130D10509F4A6
-:1013200063C008F4F7C1C430D10508F0F6C1F2C1BA
-:10133000CB3BD10508F466C0EDC1C11590E2D907D9
-:1013400008F0AFC0C11521E0D20708F0E6C1C03FE8
-:10135000D10508F4DFC18E0110651FC2C03880E5D9
-:10136000D80700F5C03790E5D90708F0A3C0C1152C
-:1013700020E5D20709F4ACC050F4CE01905480317E
-:101380009F4008F0C7C1DF708E01106A06C2C130ED
-:1013900080E5D80709F4AAC0C43190E5D90708F45C
-:1013A000AFC0B8C1C33820E5D20709F48EC050F4ED
-:1013B000C13890E5D90709F482C008F083C000E085
-:1013C00011EDEBC1C03181E5D80708F4A3C1C11507
-:1013D00097E5D90708F436C1CE01905781159041A1
-:1013E00008F098C1DF7093C101E010E0D6C1C53AA2
-:1013F000D10509F494C1C63AD10509F093C102E8B8
-:1014000010E4CBC1C83AD10509F48FC1C93AD1055E
-:1014100009F48EC1CA3AD10509F48DC1CB3AD10580
-:1014200009F48CC1CC3AD10509F48BC1CD3AD10570
-:1014300009F48AC1C03BD10509F489C1CE3AD1056E
-:1014400009F488C1CF3AD10509F487C1C13BD10560
-:1014500009F486C1C23BD10509F485C1C33BD1055E
-:1014600009F484C1C43BD10509F483C1C53BD1054E
-:1014700009F482C1C63BD10509F481C1C73BD1053E
-:1014800009F480C1C83BD10509F47FC1C93BD1052E
-:1014900009F47EC1CA3BD10509F47DC100E014E422
-:1014A0007CC1CE019F700E94690978C1DD278E0141
-:1014B000106C73C1CF70DD278E01146D6EC100E01A
-:1014C00010ED6BC100E012ED68C100E013ED65C1E5
-:1014D0000E94371A8FEF94E32CE081509040204017
-:1014E000E1F700C000000E94E52157C18AEA91E0BF
-:1014F0000E943A078091CF0181608093CF014DC156
-:101500000E949723811102C00E9478230E94B42375
-:1015100090E09093EE018093ED01C23080E5D80712
-:1015200021F48091ED01816086C0C43090E5D90737
-:1015300021F48091ED0182607EC0C63020E5D207A3
-:1015400021F48091ED01846076C0C83080E5D80731
-:1015500019F48091ED0127C0CA3090E5D90721F434
-:101560008091ED01806167C0CC3020E5D20721F485
-:101570008091ED0180625FC0CE3080E5D80721F414
-:101580008091ED01806457C0C03190E5D90721F406
-:101590008091ED0180684FC0C23120E5D20729F467
-:1015A0008091ED018460886046C0C33080E5D80733
-:1015B00021F48091ED018E7F3EC0C53090E5D907C2
-:1015C00021F48091ED018D7F36C0C73020E5D20730
-:1015D00021F48091ED018B7F2EC0C93080E5D807C2
-:1015E00019F48091ED0126C0CB3090E5D90721F4A4
-:1015F0008091ED018F7E1FC0CD3020E5D20721F410
-:101600008091ED018F7D17C0CF3080E5D80721F4A0
-:101610008091ED018F7B0FC0C13190E5D90721F496
-:101620008091ED018F7707C0C331D04531F48091AF
-:10163000ED018B7F877F8093ED018091ED010E940A
-:10164000B823ABC08D2F99278F70992781309105D2
-:10165000D9F49E012370332702C0880F991F2A9561
-:10166000E2F79C688E0144E0000F111F4A95E1F7F4
-:1016700000271370802B912B53E0CC0FDD1F5A9560
-:10168000E1F7C076DD272FC08230910531F4DC2FE1
-:10169000CC278E01016F106A80C08330910569F4F8
-:1016A000CE018370992701E010E002C0000F111FE6
-:1016B0008A95E2F7C8019C680FC084309105B9F49F
-:1016C000CE018370992701E010E002C0000F111FC6
-:1016D0008A95E2F7C8019A6823E0CC0FDD1F2A95AE
-:1016E000E1F7C07ED7708C010C2B1D2B56C08530C6
-:1016F000910531F4DC2FCC278E01046F106A4DC0A8
-:10170000069709F04AC0CF71DD27DC2FCC278E0168
-:10171000106243C000E010E040C08E013EC001E80E
-:1017200010E43BC003E810E438C002EE14E435C016
-:1017300009EE14E432C00AEE14E42FC005EB14E401
-:101740002CC006EB14E429C007EB14E426C00CEC13
-:1017500014E423C00DEC14E420C003E815E41DC01C
-:101760000AE815E41AC002E915E417C004E915E413
-:1017700014C001E216E411C003E216E40EC004E254
-:1017800016E40BC005E216E408C006E216E405C044
-:1017900007E216E402C00AE216E4C801DF91CF9125
-:1017A0001F910F910895E72FF0E096E0899FE00DDB
-:1017B000F11D1124EE0FFF1FEE0FFF1FE60FF11DAD
-:1017C000EE0FFF1FE65EFE4F85919491803E9105DE
-:1017D000E0F4803C910558F58133910509F46FC020
-:1017E00048F48932910509F463C08A32910509F4FD
-:1017F0006DC072C089339105E9F082389105D1F04E
-:101800008533910509F44DC067C0833E910581F190
-:1018100038F4803E9105B9F0823E9105D9F05CC064
-:10182000863E910561F1873E9105A1F155C00E9468
-:10183000610908952091ED0120FD02C021FF4CC0F7
-:1018400080EE90E049C08091ED0180FFF9CF89E3FF
-:1018500090E042C08091ED0182FF0EC08091ED01C9
-:1018600084FF03C080E090E037C083EE90E034C096
-:101870008091ED0182FFF2CF82EE90E02DC0809149
-:10188000ED0183FF0BC08091ED0184FDEBCF87EE6E
-:1018900090E022C08091ED0183FFF5CF86EE90E0CD
-:1018A0001BC08091ED0185FF07C089E290E014C064
-:1018B0008091ED0185FFF9CF85E390E00DC0809127
-:1018C000ED0186FF07C08AE290E006C08091ED013D
-:1018D00086FFF9CF81E390E00E94710908950C948E
-:1018E000E407E82FF0E0EB5EFE4F8081E82FEF7019
-:1018F000F0E082958F7021E030E0A90102C0440F32
-:10190000551F8A95E2F740A308950F931F93CF9335
-:10191000DF9385B7806885BF85B7806885BFC3E0E2
-:10192000D0E001E010E0FE01EB5EFE4F8081E82F89
-:10193000EF70F0E021A182958F70A80102C0440FE2
-:10194000551F8A95E2F7CA01822B81A38C2F0E9432
-:10195000710C219740F785E090E061E070E0FC01B8
-:10196000E75EFE4F2081E22FEF70F0E042A122956A
-:101970002F70DB0102C0AA0FBB1F2A95E2F79D0161
-:10198000242B22A3019758F7DF91CF911F910F913C
-:101990000C944909EF92FF920F931F93CF93DF931B
-:1019A00004E511E0C3E0EE24E394F12CD5E08C2FA4
-:1019B0000E94710C85E090E040E0FC01E75EFE4F84
-:1019C0005081E52FEF70F0E020A130E052955F707C
-:1019D00002C0359527955A95E2F720FD07C097017B
-:1019E000082E01C0220F0A94EAF7422B019728F72C
-:1019F000F80182918F01841719F04083D093000180
-:101A00008C2F0E94710CC15090F68091000187FDCF
-:101A100032C09091CF0190FF10C0282F332727FDAF
-:101A200030953F938F9383EF91E09F938F930E9424
-:101A3000D3070F900F900F900F908091000181506D
-:101A40008093000187FD07C08FE99FE00197F1F7C0
-:101A500000C0000010C08091530180935701809115
-:101A600052018093560180915101809355018091DC
-:101A70005001809354010E944B0981E0DF91CF9186
-:101A80001F910F91FF90EF90089591E001C0990F81
-:101A90008A95EAF723E030E080E061E070E0F90148
-:101AA000EC5AFE4F4081492339F0AB01022E01C0B0
-:101AB000440F0A94EAF7842B2150310980F70895E6
-:101AC0000F931F93CF93DF938091CF0180FF04C0CA
-:101AD00084ED91E00E943A07C0E0D0E00CEB11E009
-:101AE0008091CF0180FF14C08C2F0E94450D90E0A3
-:101AF0000E94F4209F938F93DF93CF931F930F93B4
-:101B00000E94D3070F900F900F900F900F900F909F
-:101B10002196C630D10521F7DF91CF911F910F910A
-:101B20000895CF93DF93C5E0D0E08C2F0E94450D40
-:101B300090E00E94D220D80FC150B8F78D2FDF91CE
-:101B4000CF91089580916B0108959FB7F8941092FA
-:101B50005A019FBF9091E401943009F057C09091D1
-:101B6000E9009F703091EC00232F217030FD20E8B8
-:101B7000922B24E02093E9002091EB0020FF43C04A
-:101B80002091EE0027FF3FC020915801222321F031
-:101B90002091E80025FF37C01092580126E03091CF
-:101BA000E80035FD15C03091E401343061F5309125
-:101BB000EB0035FD28C0215021F481E080935801CD
-:101BC00022C0EFE9FFE03197F1F700C00000E7CF56
-:101BD0008093F1008091E80085FD0AC08091E800C3
-:101BE00080FFFCCF8091E8008E778093E80006C0EC
-:101BF0008FB7F89421E020935A018FBF9F70909384
-:101C0000E90080E008959F709093E9008FEF0895B8
-:101C1000CF93DF9300D01F92CDB7DEB79C018091A8
-:101C2000E401843019F593E099833B832A839093F0
-:101C3000E9008FEF9091E800815095FD06C095ED89
-:101C40009A95F1F700008111F5CF