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/arrow_pad/keymaps/pad_24/Makefile | 17 + keyboards/arrow_pad/keymaps/pad_24/compiled.hex | 935 ++++++++++++++++++++++++ keyboards/arrow_pad/keymaps/pad_24/config.h | 158 ++++ keyboards/arrow_pad/keymaps/pad_24/keymap.c | 163 +++++ 4 files changed, 1273 insertions(+) create mode 100644 keyboards/arrow_pad/keymaps/pad_24/Makefile create mode 100644 keyboards/arrow_pad/keymaps/pad_24/compiled.hex create mode 100644 keyboards/arrow_pad/keymaps/pad_24/config.h create mode 100644 keyboards/arrow_pad/keymaps/pad_24/keymap.c (limited to 'keyboards/arrow_pad/keymaps/pad_24') diff --git a/keyboards/arrow_pad/keymaps/pad_24/Makefile b/keyboards/arrow_pad/keymaps/pad_24/Makefile new file mode 100644 index 0000000000..e31bfe1af2 --- /dev/null +++ b/keyboards/arrow_pad/keymaps/pad_24/Makefile @@ -0,0 +1,17 @@ +BOOTMAGIC_ENABLE = yes # Virtual DIP switch configuration(+1000) +MOUSEKEY_ENABLE = no # Mouse keys(+4700) +EXTRAKEY_ENABLE = no # Audio control and System control(+450) +CONSOLE_ENABLE = no # Console for debug(+400) +COMMAND_ENABLE = yes # Commands for debug and configuration +NKRO_ENABLE = yes # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work +BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality +MIDI_ENABLE = no # MIDI controls +AUDIO_ENABLE = no # Audio output on port C6 +UNICODE_ENABLE = no # Unicode +BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. + +# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE +SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend + +CONFIG_H = keymaps/$(KEYMAP)/config.h \ No newline at end of file diff --git a/keyboards/arrow_pad/keymaps/pad_24/compiled.hex b/keyboards/arrow_pad/keymaps/pad_24/compiled.hex new file mode 100644 index 0000000000..77c385adca --- /dev/null +++ b/keyboards/arrow_pad/keymaps/pad_24/compiled.hex @@ -0,0 +1,935 @@ +:100000000C9450010C9494010C9494010C94940160 +:100010000C9494010C9494010C9494010C9494010C +:100020000C9494010C9494010C94580B0C942A0C8D +:100030000C94DC180C9494010C9494010C9494018D +:100040000C9494010C9494010C9494010C949401DC +:100050000C9494010C9444190C9494010C94940104 +:100060000C9494010C9494010C9494010C949401BC +:100070000C9494010C9494010C9494010C949401AC +:100080000C9494010C9494010C9494010C9494019C +:100090000C9494010C9494010C9494010C9494018C +:1000A0000C9494010C9494010C949401970CB90C49 +:1000B000A70DB90CA70DFE0C210DA70D760D890D0E +:1000C000FA0FFA0F29102910B311B311B311B3119C +:1000D0006810B311181118117F118811B311AD11E7 +:1000E0002511251125112511251125112511251160 +:1000F0002511251125112511251125112511251150 +:10010000351143114A1151115B11F1A2028A00D23B +:1001100000D000D100C801C802C829002B0031005E +:10012000C00053005400550056005F00600061009D +:1001300067005C005D005E00570059005A005B00DC +:100140000000620000006300580029002B002C0012 +:100150000100C10019011C011D014A0052004B00A1 +:10016000E2005000C5004F00E0004D0051004E007D +:1001700000002A0000004C00C600C200C300C400FA +:100180000100C100010001000100010001000100A7 +:100190000100010001000100010001000100010057 +:1001A000000000500000010001001A03410072002D +:1001B00072006F0077002000500061006400200092 +:1001C0003200340000000E034E006F0062006F002A +:1001D0006400790000000403090409023B000201E5 +:1001E00000A0FA0904000001030101000921110126 +:1001F0000001223F000705810308000A09040100ED +:100200000103000000092111010001223900070546 +:1002100082031000011201100100000008EDFE969B +:100220004001000102000105010906A101050719AD +:10023000E029E715002501950875018102050819D7 +:100240000129059505750191029501750391010537 +:10025000071900297715002501957875018102C0DD +:1002600005010906A101050719E029E71500250187 +:10027000950875018102950175088101050819012C +:1002800029059505750191029501750391010507F1 +:10029000190029FF150025FF950675088100C0008B +:1002A00011241FBECFEFDAE0DEBFCDBF04B603FEE0 +:1002B00024C08091B8019091B901A091BA01B09188 +:1002C000BB018730904BA740B04BB9F41092B801F6 +:1002D0001092B9011092BA011092BB0114BE84B7FA +:1002E000877F84BF88E10FB6F894809360001092F6 +:1002F00060000FBEE0E0FFE3099511E0A0E0B1E08F +:10030000E8E3FAE302C005900D92AA31B107D9F7EC +:1003100011E0AAE1B1E001C01D92A83BB107E1F7ED +:100320000E949F080C941A1D0C94000008950895D3 +:1003300081E008950C9497010C9498010C94450267 +:10034000279A2F988FEF9FEF9093870080938600D6 +:100350008AE08093800089E1809381000C94471C9F +:100360000E94A0010C949601282F81110BC080914E +:100370008000877F8093800010928D0010928C0007 +:100380002F9808952F988091800088608093800036 +:10039000233019F48FEF9FEF0FC083E090E0821BB2 +:1003A0009109880F991F2FEF3FEFA90102C05695C1 +:1003B00047958A95E2F7CA0190938D0080938C004F +:1003C00008950895CF93DF93EC016130F1F018F0B8 +:1003D0006230E9F155C08A81882309F451C080EE6A +:1003E0000E94EE0E8D81807F803129F486E00E948C +:1003F000EE0E86E006C0803231F48BE10E94EE0EF4 +:100400008BE10E948D0F80EE1FC08A818823C1F08E +:100410008D8182958F7090E003971CF482E00E949A +:10042000B50F8D81807F803219F481E00E94B50F75 +:100430008D81807F803321F588E50E94EE0E20C0FB +:1004400083E00E94BC0F88E50E948D0F19C08A814D +:10045000882399F08D8182958F7090E002971CF42B +:1004600081E00E94B50F8D8182958F7090E0029798 +:100470003CF084E00E94B50F03C085E00E94BC0FF1 +:1004800080E090E0DF91CF91089581FF03C0569AFC +:100490005E9A02C056985E9880FF05C03F9A88B168 +:1004A0008F6788B908953F984798089581E0089527 +:1004B0000C94560208950F931F93CF93DF938C01F2 +:1004C000FC01C081D181CE010E940B17BE010E94A8 +:1004D0000703EC01B8010E945802882309F48DC07B +:1004E000F8018281882309F44AC080912501811195 +:1004F0001FC0C431F0E5DF0709F051C00E945A0265 +:1005000081E0809325010E940E199093240180932D +:10051000230110921C0110921E0110921D011092D5 +:10052000200110921F01109222011092210165C03A +:1005300080912301909124010E941A19883C910511 +:1005400070F480911C01E82FF0E0EE0FFF1FE35ED6 +:10055000FE4FD183C0838F5F80931C014EC0C4388F +:1005600080E5D80721F0C538D04501F13AC0F8013F +:100570008281882341F010921A0182E01EC0C438A3 +:10058000E0E5DE0759F580911A01811106C086E287 +:100590000E94EE0E86E20E948D0F82E01CC0C438DD +:1005A000F0E5DF0741F3C538D045D9F4F801828181 +:1005B000882331F010921B0180E20E94B50F1DC00C +:1005C00080911B01811106C087E20E94EE0E87E236 +:1005D0000E948D0F80E20E94BC0F0FC0C538D0452D +:1005E00029F381E080931A0180931B01C801DF91F8 +:1005F000CF911F910F910C949C0180E0DF91CF91DE +:100600001F910F9108950C94B0010C949A01E72F5B +:10061000F0E096E0899FE00DF11D1124EE0FFF1F21 +:10062000EE0FFF1FE60FF11DEE0FFF1FE65EFE4F00 +:10063000859194910895880F991FFC01E657F04029 +:10064000859194910895880F991FFC01E65FFE4FF4 +:100650008591949108950F931F93CF93DF93EC01AD +:10066000811521E39207A0F5C11580E3D80708F0B2 +:10067000D7C0C83ED105D8F4C03ED10508F003C2AA +:10068000C83AD10578F4C53AD10508F06AC0C1303E +:10069000D10509F463C008F4F3C1C430D10508F0F2 +:1006A000F2C1EEC1CB3BD10508F466C0E9C1C1156A +:1006B00090E2D90708F0AFC0C11521E0D20708F0D9 +:1006C000E2C1C03FD10508F4DBC18E0110651BC239 +:1006D000C03880E5D80700F5C03790E5D90708F0A5 +:1006E000A3C0C11520E5D20709F4ACC050F4CE0177 +:1006F000905480319F4008F0C3C1DF708E01106AB2 +:1007000002C2C13080E5D80709F4AAC0C43190E51F +:10071000D90708F4ABC0B4C1C33820E5D20709F447 +:100720008EC050F4C13890E5D90709F482C008F0B2 +:1007300083C000E011EDE7C1C03181E5D80708F4BE +:100740009FC1C11597E5D90708F432C1CE01905772 +:100750008115904108F094C1DF708FC101E010E075 +:10076000D2C1C53AD10509F490C1C63AD10509F004 +:100770008FC102E810E4C7C1C83AD10509F48BC1A2 +:10078000C93AD10509F48AC1CA3AD10509F489C127 +:10079000CB3AD10509F488C1CC3AD10509F487C117 +:1007A000CD3AD10509F486C1C03BD10509F485C114 +:1007B000CE3AD10509F484C1CF3AD10509F483C1F9 +:1007C000C13BD10509F482C1C23BD10509F481C105 +:1007D000C33BD10509F480C1C43BD10509F47FC1F5 +:1007E000C53BD10509F47EC1C63BD10509F47DC1E5 +:1007F000C73BD10509F47CC1C83BD10509F47BC1D5 +:10080000C93BD10509F47AC1CA3BD10509F479C1C4 +:1008100000E014E478C1CE019F700E94230374C1EC +:10082000DD278E01106C6FC1CF70DD278E01146D36 +:100830006AC100E010ED67C100E012ED64C100E0A4 +:1008400013ED61C10E9412128FEF94E32CE08150EE +:1008500090402040E1F700C000000E94691953C198 +:100860008091A20181608093A2014DC10E94131B5F +:10087000811102C00E94F41A0E94301B90E09093F4 +:10088000B7018093B601C23080E5D80721F480918A +:10089000B601816086C0C43090E5D90721F480910B +:1008A000B60182607EC0C63020E5D20721F4809177 +:1008B000B601846076C0C83080E5D80719F480910D +:1008C000B60127C0CA3090E5D90721F48091B6015E +:1008D000806167C0CC3020E5D20721F48091B60159 +:1008E00080625FC0CE3080E5D80721F48091B601E8 +:1008F000806457C0C03190E5D90721F48091B601DA +:1009000080684FC0C23120E5D20729F48091B6013A +:100910008460886046C0C33080E5D80721F48091A8 +:10092000B6018E7F3EC0C53090E5D90721F4809195 +:10093000B6018D7F36C0C73020E5D20721F4809103 +:10094000B6018B7F2EC0C93080E5D80719F480919D +:10095000B60126C0CB3090E5D90721F48091B601CD +:100960008F7E1FC0CD3020E5D20721F48091B601E3 +:100970008F7D17C0CF3080E5D80721F48091B60174 +:100980008F7B0FC0C13190E5D90721F48091B6016A +:100990008F7707C0C331D04531F48091B6018B7F8A +:1009A000877F8093B6018091B6010E94341BABC053 +:1009B0008D2F99278F70992781309105D9F49E0149 +:1009C0002370332702C0880F991F2A95E2F79C688D +:1009D0008E0144E0000F111F4A95E1F700271370C4 +:1009E000802B912B53E0CC0FDD1F5A95E1F7C07699 +:1009F000DD272FC08230910531F4DC2FCC278E010A +:100A0000016F106A80C08330910569F4CE01837054 +:100A1000992701E010E002C0000F111F8A95E2F74C +:100A2000C8019C680FC084309105B9F4CE01837071 +:100A3000992701E010E002C0000F111F8A95E2F72C +:100A4000C8019A6823E0CC0FDD1F2A95E1F7C07E2C +:100A5000D7708C010C2B1D2B56C08530910531F4BD +:100A6000DC2FCC278E01046F106A4DC0069709F069 +:100A70004AC0CF71DD27DC2FCC278E01106243C026 +:100A800000E010E040C08E013EC001E810E43BC031 +:100A900003E810E438C002EE14E435C009EE14E4B3 +:100AA00032C00AEE14E42FC005EB14E42CC006EBB0 +:100AB00014E429C007EB14E426C00CEC14E423C0B2 +:100AC0000DEC14E420C003E815E41DC00AE815E4A9 +:100AD0001AC002E915E417C004E915E414C001E2E4 +:100AE00016E411C003E216E40EC004E216E40BC0E3 +:100AF00005E216E408C006E216E405C007E216E4C3 +:100B000002C00AE216E4C801DF91CF911F910F9154 +:100B10000895E72FF0E096E0899FE00DF11D112484 +:100B2000EE0FFF1FEE0FFF1FE60FF11DEE0FFF1F71 +:100B3000E65EFE4F85919491803E9105E0F4803C05 +:100B4000910558F58133910509F46FC048F4893255 +:100B5000910509F463C08A32910509F46DC072C031 +:100B600089339105E9F082389105D1F085339105FB +:100B700009F44DC067C0833E910581F138F4803E91 +:100B80009105B9F0823E9105D9F05CC0863E910591 +:100B900061F1873E9105A1F155C00E941B030895A4 +:100BA0002091B60120FD02C021FF4CC080EE90E0F4 +:100BB00049C08091B60180FFF9CF89E390E042C03F +:100BC0008091B60182FF0EC08091B60184FF03C000 +:100BD00080E090E037C083EE90E034C08091B601B1 +:100BE00082FFF2CF82EE90E02DC08091B60183FFAC +:100BF0000BC08091B60184FDEBCF87EE90E022C060 +:100C00008091B60183FFF5CF86EE90E01BC0809106 +:100C1000B60185FF07C089E290E014C08091B6015B +:100C200085FFF9CF85E390E00DC08091B60186FF86 +:100C300007C08AE290E006C08091B60186FFF9CF36 +:100C400081E390E00E942B0308950C949E01E82F0D +:100C5000F0E0E15FFE4F8081E82FEF70F0E08295D9 +:100C60008F7021E030E0A90102C0440F551F8A9522 +:100C7000E2F740A308950F931F93CF93DF9385B7B7 +:100C8000806885BF85B7806885BFC3E0D0E001E09C +:100C900010E0FE01E15FFE4F8081E82FEF70F0E091 +:100CA00021A182958F70A80102C0440F551F8A951B +:100CB000E2F7CA01822B81A38C2F0E94270621977D +:100CC00040F785E090E061E070E0FC01ED5EFE4FF2 +:100CD0002081E22FEF70F0E042A122952F70DB011E +:100CE00002C0AA0FBB1F2A95E2F79D01242B22A365 +:100CF000019758F7DF91CF911F910F910C94030347 +:100D0000EF92FF920F931F93CF93DF930AE211E0CC +:100D1000C3E0EE24E394F12CD5E08C2F0E9427064B +:100D200085E090E040E0FC01ED5EFE4F5081E52F54 +:100D3000EF70F0E020A130E052955F7002C0359571 +:100D400027955A95E2F720FD07C09701082E01C0AC +:100D5000220F0A94EAF7422B019728F7F8018291B3 +:100D60008F01841719F04083D09300018C2F0E94CB +:100D70002706C15090F68091000187FD1CC081506C +:100D8000809300018F3F39F08FE99FE00197F1F7E1 +:100D900000C0000010C08091290180932D01809136 +:100DA000280180932C018091270180932B01809151 +:100DB000260180932A010E94050381E0DF91CF91F3 +:100DC0001F910F91FF90EF90089591E001C0990F4E +:100DD0008A95EAF723E030E080E061E070E0F90115 +:100DE000E65DFE4F4081492339F0AB01022E01C080 +:100DF000440F0A94EAF7842B2150310980F70895B3 +:100E00000895CF93DF93C5E0D0E08C2F0E94E506D4 +:100E100090E00E948618D80FC150B8F78D2FDF914F +:100E2000CF91089580913E0108950895CF93DF9367 +:100E300000D01F92CDB7DEB72091AD01243021F54F +:100E400023E029839B838A8381E08093E9008FEFED +:100E50009091E800815095FD06C095ED9A95F1F7C7 +:100E600000008111F5CF8091E80085FF0DC040E0C2 +:100E700050E063E070E0CE0101960E944809809145 +:100E8000E8008E778093E8000F900F900F90DF912D +:100E9000CF910895CF93DF9300D01F92CDB7DEB7E7 +:100EA0002091AD01243021F522E029839B838A83A0 +:100EB00081E08093E9008FEF9091E800815095FDEB +:100EC00006C095ED9A95F1F700008111F5CF80915C +:100ED000E80085FF0DC040E050E063E070E0CE0127 +:100EE00001960E9448098091E8008E778093E8007F +:100EF0000F900F900F90DF91CF910895CF93DF93D4 +:100F00002091AD01243009F048C0EC0180910B0123 +:100F10008823E1F080910C018823C1F082E0809366 +:100F2000E9008FEF9091E800815095FD06C095E1B2 +:100F30009A95F1F700008111F5CF8091E80085FFC7 +:100F40002CC040E050E060E170E017C081E0809389 +:100F5000E9008FEF9091E800815095FD06C095ED76 +:100F60009A95F1F700008111F5CF8091E80085FF97 +:100F700014C040E050E068E070E0CE010E944809F3 +:100F80008091E8008E778093E80080E1FE01AEE278 +:100F9000B1E001900D928A95E1F7DF91CF9108952C +:100FA0008091AC01811109C00E94DD0A0E943A0BB8 +:100FB0008091E20084608093E20008951092AC0179 +:100FC0000895089508950C94D11842E061EC81E0F1 +:100FD0000E94570A42E161EC82E00C94570A80912A +:100FE000AF01833009F453C030F4813071F08230A6 +:100FF00009F48CC008958A3009F478C08B3009F464 +:101000005EC0893009F09AC020C08091AE01813A5B +:1010100009F094C08091E800877F8093E800809178 +:10102000B2019091B301892B21F460E18EE291E04D +:1010300003C060E080E090E070E00E94930980913E +:10104000E8008B778093E80008958091AE018132AB +:1010500009F074C08091B2019091B301029708F039 +:101060006DC08091E800877F8093E8008091E80060 +:1010700082FD05C08091AD018111F8CF5FC08091E4 +:10108000F10080933E018091E8008B7753C08091FE +:10109000AE01813A09F052C08091B2019091B30142 +:1010A000892B09F04BC08091E800877F8093E8008E +:1010B0008091E80080FFFCCF80910B0136C08091C9 +:1010C000AE018132D9F58091B2019091B301892BA3 +:1010D000A9F58091E800877F8093E8000E948C0A40 +:1010E0008091B00180930B010C9412128091AE019B +:1010F000813221F58091E800877F8093E8000E948B +:101100008C0A8091B10180933F0108958091AE01D6 +:10111000813AA1F48091E800877F8093E800809174 +:10112000E80080FFFCCF80913F018093F100809127 +:10113000E8008E778093E8000C948C0A089584B7B9 +:10114000877F84BF88E10FB6F89480936000109287 +:1011500060000FBE90E080E80FB6F89480936100C5 +:10116000909361000FBE0E94240E0E94DD0A0E942F +:101170003A0B8091E20084608093E20078940E94B0 +:10118000C00D0E94260E81E091E00E94DB0D80914F +:10119000AD01853069F40E9492188091AB018823DB +:1011A000B1F30E94C018882391F30E943209EFCF57 +:1011B0000E94320EECCF292F332723303105C9F09E +:1011C00064F42130310581F02230310509F042C04C +:1011D0008BE390E02AED31E041C021323105F1F09E +:1011E0002232310549F136C082E190E025E132E05A +:1011F00035C099278130910541F08230910541F049 +:10120000892B41F5E6EDF1E005C0E6ECF1E002C026 +:10121000EAEAF1E0849190E09F0120C0662339F072 +:101220006130C1F489E090E025E032E017C089E048 +:1012300090E02CEE31E012C0662339F0613051F4B9 +:1012400089E390E027E232E009C08FE390E020E6F6 +:1012500032E004C080E090E020E030E0FA01318329 +:101260002083089580E189BD82E189BD09B400FE33 +:10127000FDCF8091D8008F7D8093D8008091E000D1 +:1012800082608093E0008091E00081FDFCCF0895B2 +:10129000CF92DF92EF92FF920F931F93CF93DF9342 +:1012A000EC018B016A010E94AB0A811133C0C114A9 +:1012B000D10439F0F60180819181081B190BC80F08 +:1012C000D91FE12CF12C0115110519F18091E800CD +:1012D00085FD16C08091E8008E778093E800C114E8 +:1012E000D10449F0F60180819181E80EF91EF18266 +:1012F000E08285E00FC00E94AB0A882321F30AC078 +:1013000089918093F10001501109FFEFEF1AFF0A54 +:10131000DACF80E0DF91CF911F910F91FF90EF9096 +:10132000DF90CF9008952091B4013091B501261738 +:10133000370748F06115710539F42091E8002E77E0 +:101340002093E80001C0B90140E061157105A9F1E1 +:101350002091AD01222309F443C0253009F442C095 +:101360002091E80023FD40C02091E80022FD32C01A +:101370002091E80020FFE9CF4091F3002091F20096 +:1013800030E0342BFC01CF016115710559F0283094 +:10139000310540F481918093F100615071092F5F14 +:1013A0003F4FF1CF41E02830310509F040E0209176 +:1013B000E8002E772093E800C8CF4111C9CF0AC0BA +:1013C0008091AD01882361F0853061F08091E80063 +:1013D00083FD0AC08091E80082FFF2CF80E008958B +:1013E00082E0089583E0089581E008952091B4019A +:1013F0003091B5012617370748F06115710539F4AA +:101400002091E8002E772093E80001C0B901FC018B +:1014100020E06115710591F18091AD01882309F4F7 +:1014200040C0853009F43FC08091E80083FD3DC095 +:101430008091E80082FD2FC08091E80080FFE9CF15 +:101440002091F3008091F20090E0922B61157105DC +:1014500059F08830910540F424912093F1003196A1 +:10146000615071090196F2CF21E0089709F020E060 +:101470008091E8008E778093E800CBCF2111CCCF0C +:101480000AC08091AD01882361F0853061F08091C0 +:10149000E80083FD0AC08091E80082FFF2CF80E07F +:1014A000089582E0089583E0089581E00895982FDB +:1014B000973058F59093E900981739F07091EC0047 +:1014C0002091ED005091F00003C0242F762F50E0C2 +:1014D00021FF19C03091EB003E7F3093EB0030913B +:1014E000ED003D7F3093ED003091EB0031603093A3 +:1014F000EB007093EC002093ED005093F0002091EE +:10150000EE0027FF07C09F5FD3CF8F708093E90065 +:1015100081E0089580E008958091AE0187FF11C0B9 +:101520008091E80082FD05C08091AD018111F8CF66 +:1015300011C08091E8008B770BC08091AD018823AA +:1015400049F08091E80080FFF8CF8091E8008E7725 +:101550008093E80008952091E4003091E50095E63D +:101560004091EC00842F817040FF22C08091E80000 +:1015700080FD1CC08091AD01882391F0853091F0F1 +:101580008091EB0085FD10C04091E4005091E50092 +:101590004217530729F39A01915011F784E00895F7 +:1015A00082E0089583E0089581E0089580E0089541 +:1015B0004091E80042FFDECF08950E944B0B0E944D +:1015C000530BE0EEF0E0808181608083E8EDF0E095 +:1015D00080818F77808319BCA7EDB0E08C918E7FDE +:1015E0008C9380818F7E80831092AC0108950F933D +:1015F0001F93CF93DF930E944B0B0E94530BC8EDB8 +:10160000D0E088818F77888388818068888388810B +:101610008F7D888319BC1092AD011092A9011092A0 +:10162000AB011092AA0100EE10E0F80180818B7FDF +:10163000808388818160888342E060E080E00E944E +:10164000570AE1EEF0E080818E7F8083E2EEF0E0E9 +:10165000808181608083808188608083F8018081BF +:101660008E7F8083888180618883DF91CF911F91F5 +:101670000F910895E8EDF0E080818F7E8083E7EDA3 +:10168000F0E080818160808384E082BF81E080938C +:10169000AC010C94F70AE8EDF0E080818E7F808346 +:1016A0001092E20008951092DA001092E10008957D +:1016B0001F920F920FB60F9211242F933F934F93C7 +:1016C0005F936F937F938F939F93AF93BF93EF93AA +:1016D000FF938091E10082FF0BC08091E20082FFC6 +:1016E00007C08091E1008B7F8093E1000E94BF0DD5 +:1016F0008091DA0080FF1FC08091D80080FF1BC05E +:101700008091DA008E7F8093DA008091D90080FF8B +:101710000DC080E189BD82E189BD09B400FEFDCF25 +:1017200081E08093AD010E94D00705C019BC1092E2 +:10173000AD010E94DE078091E10080FF19C0809119 +:10174000E20080FF15C08091E2008E7F8093E2006E +:101750008091E20080618093E2008091D8008062F5 +:101760008093D80019BC85E08093AD010E94E20708 +:101770008091E10084FF30C08091E20084FF2CC0A2 +:1017800080E189BD82E189BD09B400FEFDCF809171 +:10179000D8008F7D8093D8008091E1008F7E809368 +:1017A000E1008091E2008F7E8093E2008091E20070 +:1017B00081608093E2008091A901882311F084E088 +:1017C00007C08091E30087FD02C081E001C083E093 +:1017D0008093AD010E94E3078091E10083FF29C05F +:1017E0008091E20083FF25C08091E100877F809394 +:1017F000E10082E08093AD011092A9018091E100A7 +:101800008E7F8093E1008091E2008E7F8093E200E2 +:101810008091E20080618093E20042E060E080E03D +:101820000E94570A8091F00088608093F0000E9427 +:10183000E107FF91EF91BF91AF919F918F917F91C0 +:101840006F915F914F913F912F910F900FBE0F902D +:101850001F9018951F920F920FB60F9211242F937D +:101860003F934F935F936F937F938F939F93AF9328 +:10187000BF93CF93DF93EF93FF93C091E900CF70B5 +:101880008091EC00D82FD17080FDD0E81092E90053 +:101890008091F000877F8093F00078940E946E0C16 +:1018A0001092E9008091F00088608093F000CD2BC9 +:1018B000CF70C093E900FF91EF91DF91CF91BF917D +:1018C000AF919F918F917F916F915F914F913F91D8 +:1018D0002F910F900FBE0F901F9018951F93CF93CD +:1018E000DF93CDB7DEB7AA970FB6F894DEBF0FBE71 +:1018F000CDBFEEEAF1E088E08E0F9091F100919378 +:101900008E13FBCF0E94EF078091E80083FF1FC179 +:101910008091AE019091AF01492F50E04A305105BE +:1019200008F015C1FA01EA5AFF4F0C94DE1C80380A +:1019300081F0823809F00BC18091B2018F708093E1 +:10194000E9008091EB0085FB882780F91092E9007F +:1019500006C08091AA019091AB0191118260909193 +:10196000E800977F9093E8008093F1001092F100D7 +:10197000C8C0282F2D7F09F0EAC0882319F08230D3 +:1019800061F0E5C08091B001813009F0E0C0933092 +:1019900009F080E08093AB012BC08091B0018111F0 +:1019A00027C08091B2018F7009F4D1C08093E90003 +:1019B0002091EB0020FF1CC0933021F48091EB00BC +:1019C000806214C09091EB0090619093EB0021E055 +:1019D00030E0A90102C0440F551F8A95E2F74093F9 +:1019E000EA001092EA008091EB0088608093EB009F +:1019F0001092E9008091E800877F86C08111A7C01E +:101A00001091B0011F778091E3008078812B809343 +:101A1000E3008091E800877F8093E8000E948C0AB1 +:101A20008091E80080FFFCCF8091E3008068809384 +:101A3000E300111102C082E001C083E08093AD0198 +:101A400086C08058823008F082C08091B0019091A9 +:101A5000B1018C3D53E0950779F583E08A838AE2F2 +:101A600089834FB7F894DE01139620E03EE051E2FF +:101A7000E32FF0E050935700E49120FF03C0E2957C +:101A8000EF703F5FEF708E2F90E0EA3010F0C79656 +:101A900001C0C0968D939D932F5F243149F74FBFAE +:101AA0008091E800877F8093E8006AE270E0CE01D1 +:101AB00001960E94930914C0AE014F5F5F4F609181 +:101AC000B2010E94DB08BC01009709F440C090916C +:101AD000E800977F9093E80089819A810E94F60937 +:101AE0008091E8008B778093E80031C0803879F5E9 +:101AF0008091E800877F8093E8008091A90180931E +:101B0000F1008091E8008E778093E8000E948C0AB3 +:101B10001EC081111CC09091B0019230C0F4809120 +:101B2000E800877F8093E8009093A9010E948C0AC7 +:101B30008091A901811106C08091E30087FD02C058 +:101B400081E001C084E08093AD010E94E5078091AF +:101B5000E80083FF0AC08091E800877F8093E80057 +:101B60008091EB0080628093EB00AA960FB6F89408 +:101B7000DEBF0FBECDBFDF91CF911F9108950895B5 +:101B8000CF938091AD018823A1F0C091E900CF707F +:101B90009091EC00892F817090FD80E8C82B109205 +:101BA000E9008091E80083FD0E946E0CCF70C09325 +:101BB000E900CF91089590934501809344010895E1 +:101BC000E0914401F0914501309721F00190F081BE +:101BD000E02D099480E00895E0914401F0914501E1 +:101BE000309721F00280F381E02D0994089520912F +:101BF0004201309143018217930771F090934301A2 +:101C000080934201E0914401F0914501309721F029 +:101C10000680F781E02D09940895209140013091CC +:101C200041018217930771F0909341018093400125 +:101C3000E0914401F0914501309721F00084F18555 +:101C4000E02D0994089508950C94230E0E9405191F +:101C50000E943B060E94C7190E94471C81E08093A6 +:101C60000C010895CF92DF92EF92FF920F931F9392 +:101C7000CF93DF9300D000D000D0CDB7DEB70E9465 +:101C8000800685E0E82EF12C0E2D8E2D0E94E506B3 +:101C90009701295B3E4F6901F90110811827A9F4CA +:101CA000F1E0EF1AF10880F78FEF89838A831B82B6 +:101CB0000E940E198160782F9D838C8349815A81FF +:101CC0006B818D810E94C00E32C09091A20191FF64 +:101CD00004C08E830E9400078E8113FD09C012FD8F +:101CE0000AC011FD0BC010FFDBCF90E011E008C06F +:101CF00093E018E005C092E014E002C091E012E029 +:101D000099830A83812391E009F490E09B830E94E8 +:101D10000E198160782F9D838C8349815A816B8154 +:101D20008D810E94C00EF6018081182710831091CA +:101D300046010E94E00D1817A1F00E94E00D80936B +:101D4000460126960FB6F894DEBF0FBECDBFDF91D9 +:101D5000CF911F910F91FF90EF90DF90CF900C9457 +:101D6000250626960FB6F894DEBF0FBECDBFDF91D5 +:101D7000CF911F910F91FF90EF90DF90CF9008953A +:101D8000CF93DF93CDB7DEB72B970FB6F894DEBFB6 +:101D90000FBECDBF4F83588769877A878B87DE0157 +:101DA000119686E0FD0111928A95E9F785E0FE0122 +:101DB000379601900D928A95E1F749815A816B819E +:101DC0007C818D819E810E94B0142B960FB6F89471 +:101DD000DEBF0FBECDBFDF91CF910895CF93882393 +:101DE00009F499C0C82F8CEF8C0F813A48F48C2FDE +:101DF0000E94051C81118FC08C2F0E948A170CC075 +:101E000080E28C0F883058F4C77081E001C0880FE1 +:101E1000CA95EAF70E941018CF910C9457188BE5D9 +:101E20008C0F833078F4C53A29F0C63A31F083E854 +:101E300090E005C081E890E002C082E890E0CF9198 +:101E40000C94F70D88E58C0F833108F064C0C83A14 +:101E500039F1C93A41F1CA3A49F1CB3A51F1CC3A98 +:101E600059F1CD3A61F1C03B69F1CE3A71F1CF3A07 +:101E700079F1C13B81F1C23B89F1C33B91F1C43B94 +:101E800099F1C53BA1F1C63BA9F1C73BB1F1C83BF4 +:101E9000B9F1C93BC1F1CA3BC9F180E090E038C05B +:101EA00082EE90E035C089EE90E032C08AEE90E09C +:101EB0002FC085EB90E02CC086EB90E029C087EB2B +:101EC00090E026C08CEC90E023C08DEC90E020C028 +:101ED00083E891E01DC08AE891E01AC082E991E0B0 +:101EE00017C084E991E014C081E292E011C083E25E +:101EF00092E00EC084E292E00BC085E292E008C05E +:101F000086E292E005C087E292E002C08AE292E0B7 +:101F1000CF910C940D0ECF910895882329F19CEF59 +:101F2000980F913A18F40E94CC170DC090E2980FC8 +:101F3000983058F4877091E001C0990F8A95EAF7BC +:101F4000892F0E9416180C9457189BE5980F933010 +:101F500020F480E090E00C94F70D885A833120F44F +:101F600080E090E00C940D0E0895882321F00E94EB +:101F700010180C9457180895882321F00E94161801 +:101F80000C94571808957F928F929F92AF92BF92B0 +:101F9000CF92DF92EF92FF920F931F93CF93DF9335 +:101FA0001F92CDB7DEB77C01C62E772EFC010581CE +:101FB00002950F70128111110E942D180E94831733 +:101FC000882379F0112369F080E28C0D883048F085 +:101FD00082E00E946C170E94831791E0D82ED926C8 +:101FE00001C0D12CE72DE295EF70F0E0E05AFF4FF1 +:101FF0000C94DE1C872D807F072D0F70882311F035 +:102000000295007F112389F0002309F46EC180E25C +:102010008C0D883020F4802F0E94101803C0802F70 +:102020000E9420180E94571860C18C2D0E948D0FAD +:10203000002309F498C180E28C0D883020F4802FB1 +:102040000E94161803C0802F0E9426180E9457185D +:102050008AC1872D807F972D9F70803211F4892F40 +:1020600003C0892F8295807FCC2021F0F1E0CF162C +:10207000A1F01DC0112339F0002319F1013009F539 +:102080000E94401870C1002319F0013009F46BC19F +:1020900089830E9443188981E5C0112321F006300D +:1020A00008F061C10EC0053008F05DC1DBC011232E +:1020B00059F0002331F0F701958190FF16C19F7010 +:1020C00095830E94B50F4FC1002309F4CBC013C103 +:1020D000872D837009F052C0111145C18C2D829556 +:1020E00086958770880F880F9C2D9F70892E912C64 +:1020F000A12CB12C082E04C0880C991CAA1CBB1C56 +:102100000A94D2F7C4FE14C00FE010E020E030E0E3 +:10211000B901A80104C0440F551F661F771F8A9597 +:10212000D2F7CB01BA01609570958095909503C068 +:1021300060E070E0CB01272D26952695237030E0D6 +:102140002230310569F02330310589F06829792979 +:102150008A299B292130310571F00E94F81503C1AD +:10216000682979298A299B290E941416FCC00E949B +:10217000F815C501B4010E94DC15F5C0112319F052 +:10218000872D817001C08695882309F4ECC08C2DC1 +:10219000829586958770880F880F9C2D9F70892E59 +:1021A000912CA12CB12C082E04C0880C991CAA1CBF +:1021B000BB1C0A94D2F7C4FE14C00FE010E020E06C +:1021C00030E0B901A80104C0440F551F661F771FF6 +:1021D0008A95D2F7CB01BA0160957095809590955C +:1021E00003C060E070E0CB01272D26952695237073 +:1021F000422F50E04230510569F04330510589F0DB +:10220000682979298A299B294130510571F00E945A +:10221000D216A9C0682979298A299B290E94EE161D +:10222000A2C00E94D216C501B4010E94B6169BC07E +:102230008C2D90E0FC01E05EF109E531F10508F03C +:1022400050C0E059FF4F0C94DE1C0C2D0F70872DF1 +:102250008F71112321F00E944F16802F32CF0E94E0 +:102260007016802F0E94BC0F7EC0112341F00530F4 +:1022700008F079C0872D8F710E94951674C00630C2 +:1022800008F071C0F7CF112339F0872D8F710E94AC +:102290004F1669C01123C9F3872D8F710E947016E4 +:1022A00062C0112329F0872D8F710E943A165BC0FE +:1022B0000E94301658C0112351F0172D1F71812F25 +:1022C0000E944F1663E0812F0E9463174CC081E08B +:1022D0000E946C17023008F446C082E00E946C171E +:1022E00042C0112331F0002381F28C2D0E94EE0EAA +:1022F0003AC0002389F28C2D0E948D0F34C0472DE7 +:102300004F706C2DC7010E94E2010E9454152BC032 +:10231000111129C0472D4F7050E042305105B9F0DE +:102320004CF44115510581F041305105E1F40E9412 +:102330006F1C19C04330510569F04430510599F4C0 +:102340008C2D0E94C11C0FC00E94581C0CC00E9402 +:102350008B1C09C00E949E1C06C0472D4F706C2D1F +:10236000C7010E94E101DD20F9F00E945F1780FDA6 +:102370001BC0F70112820E9459170E944F16C70115 +:102380000E94E3110E9459170F90DF91CF911F9186 +:102390000F91FF90EF90DF90CF90BF90AF909F9004 +:1023A0008F907F900C9470160F90DF91CF911F91BA +:1023B0000F91FF90EF90DF90CF90BF90AF909F90E4 +:1023C0008F907F9008950F931F93CF93DF93EC012D +:1023D000888199812B813C81232BB9F09F3F11F497 +:1023E0008F3F99F0CE010E945B02882371F06881D3 +:1023F00079818A810E9455178C010E940A170E94D8 +:10240000D115B801CE010E94C30FDF91CF911F916A +:102410000F9108950E942D180E943D180E940218E5 +:102420000C9457180E941D180C940A120E944A1707 +:10243000292F22952F7030E02C3031054CF42A30B2 +:1024400031056CF42250310922303105A8F407C05F +:102450002C30310569F02F30310551F00DC0803F2F +:1024600069F018F4803E40F409C0843F29F406C0A6 +:1024700093FB882780F9089580E0089581E008950E +:10248000CF93DF9300D000D01F92CDB7DEB70F906F +:102490000F900F900F900F90DF91CF910895CF93F1 +:1024A000DF9300D000D000D0CDB7DEB726960FB6B0 +:1024B000F894DEBF0FBECDBFDF91CF9108951F937B +:1024C000CF93DF93C0914D0116E080914E01C81764 +:1024D00099F0D0E01C9FF0011D9FF00D1124E15BED +:1024E000FE4F4081518162817381848195810E9478 +:1024F0004F122196C770E9CFDF91CF911F910895B8 +:1025000040917F0150918001609181017091820121 +:1025100080918301909184010C944F1280918401E9 +:1025200082958F7009F054C080918101882309F44D +:102530004FC080914D01A0914E0160917F0170913B +:1025400080014091820150918301B6E08A1709F41D +:102550003FC090E041155105C1F17F3F11F46F3F3D +:10256000A1F1B89FF001B99FF00D1124E15BFE4F7E +:10257000218172132AC02081621327C02281211178 +:1025800024C0238134812417350710F421503109E8 +:10259000241B350B283C3105C0F4209184012F7099 +:1025A00020612093840126E0289FF001299FF00DEF +:1025B0001124EC5AFE4F80818F70806180838FE7F9 +:1025C00091E00E94E3110C945F1201968770BECFD8 +:1025D0000895CF92DF92EF92FF920F931F93CF93C4 +:1025E000DF93CDB7DEB762970FB6F894DEBF0FBEAC +:1025F000CDBF8C0185E0F801DE011D9601900D92A2 +:102600008A95E1F7D8014C9111965C911197129639 +:102610006C9112971396CD90DC90149730917F01B6 +:10262000709180018091820190918301009709F45B +:102630006BC17F3F19F43F3F09F466C1E09081010F +:10264000EE2009F4C0C020918401C816D90628F0F4 +:10265000F601E81BF90BCF0104C0809590958C0D15 +:102660009D1DFF24F394883C910578F0F12C207F88 +:1026700009F0C6C07C2DD98AC88A89890E94401277 +:102680008FE791E00E94E311B1C0822F807F09F0B3 +:1026900046C0751314C0341312C0611110C02F70DE +:1026A0002061209384010E9480128FE791E00E94B4 +:1026B000E31180918401D80115968C932EC0CD280A +:1026C00019F15F3F11F44F3FF9F0F62E61111CC074 +:1026D00080914D0120914E0136E0821709F45AC0D5 +:1026E00090E0389FF001399FF00D1124E15BFE4F1F +:1026F0007181571306C07081471303C07281711135 +:1027000003C001968770E9CFF62E662309F418C13D +:1027100080918401816080938401F12C11C1751333 +:1027200008C0341306C0611104C080918401D8012F +:10273000C3C04D875E878D859E856A8B0E94161269 +:102740006A898823E1F16623D1F120918401822FE7 +:1027500082958F7090E0029774F080917F01909144 +:10276000800198878F831986DB86CA862C87CE01E5 +:1027700007960E94E31186E0F801AFE7B1E001900F +:102780000D928A95E1F70E948E120E948012FF241A +:10279000F394D6C04D875E878D859E850E944A172B +:1027A000292F22952F7030E0223031050CF0BCC06B +:1027B0009F7009F0B6C0805E883008F4C1C0C801BF +:1027C0000E94E311E4CFC816D90608F453C0F601FD +:1027D000E81BF90BCF01883C910508F450C0F12C9F +:1027E0007C2DD98AC88A89890E944012EFE7F1E0DE +:1027F00086E0DF011D928A95E9F70E948012A0C051 +:10280000751314C0341312C0611110C0809184017B +:10281000F8018583C8010E94E31186E0EFE7F1E04B +:10282000DF011D928A95E9F7FE2C8AC04D875E87ED +:102830008D859E856A8B0E9416126A89882309F409 +:10284000BECF662309F4BBCF20918401822F8295ED +:102850008F7090E002970CF48ECF80917F01909161 +:1028600080019A8389831B82DD82CC822E83CE01F4 +:1028700001967FCF809590958C0D9D1DACCFF62E47 +:10288000662309F49CCF75132EC034132CC02091FD +:10289000840120FD1FC0822F82958F70D9F0D8014E +:1028A00015962C9315978F3049F08F5F982F92953E +:1028B000907F822F8F70892B15968C93C8010E9470 +:1028C000E31186E0F801AFE7B1E001900D928A953F +:1028D000E1F793CF86E0F801AFE7B1E001900D9208 +:1028E0008A95E1F72DC04D875E878D859E850E9474 +:1028F0001612811140CF8091840181608093840100 +:10290000C8010E94E3111CC0662309F458CF4D870B +:102910005E878D859E850E941612882309F44FCF0D +:102920002ACF811148CF0CC0243031050CF047CF9D +:102930009F7009F440CFF8019581907F09F03BCF5B +:102940008F2D62960FB6F894DEBF0FBECDBFDF911C +:10295000CF911F910F91FF90EF90DF90CF9008954E +:102960001F93CF93DF93CDB7DEB72C970FB6F894B4 +:10297000DEBF0FBECDBF4F83588769877A878B87AD +:102980009C87CE0107960E94E912882369F08F8107 +:1029900098852A853B85232BF1F19F3F09F063C081 +:1029A0008F3F09F060C037C086E0FE013796DE0138 +:1029B000119601900D928A95E1F76F817885EA85ED +:1029C000FB85309741F17F3F11F46F3F21F120915A +:1029D0004E0130E0C90101968770992740914D0161 +:1029E00050E08417950709F447C069837A83FD8313 +:1029F000EC8396E0929FD001939FB00D1124A15BD0 +:102A0000BE4FFE01319601900D929A95E1F78093A9 +:102A10004E010E945F1216E080914D0190914E018F +:102A20008917C1F1189FC0011124815B9E4F0E943C +:102A3000E912882379F1E0914D011E9FF0011124E4 +:102A4000E15BFE4F40815181628173818481958178 +:102A50000E944F1280914D0190E001968770992756 +:102A600080934D01D9CF4F81588569857A858B85B3 +:102A70009C850E944F12CFCF0E94121210924E01DD +:102A800010924D01EFE7F1E086E0DF011D928A959B +:102A9000E9F7C1CF2C960FB6F894DEBF0FBECDBFBD +:102AA000DF91CF911F910895EF92FF920F931F93A3 +:102AB000CF93DF938C01009709F46CC0F12CEE24C6 +:102AC000E394E8012196F8018491843740F484303E +:102AD00008F051C0813081F0823019F15BC0853738 +:102AE00009F444C0A8F19CE7980F903708F052C051 +:102AF0008F770E948D0F41C00E5F1F4FFE01C49162 +:102B000080E28C0F883048F4C7708E2D01C0880F8A +:102B1000CA95EAF70E94301814C08C2F0E94EE0E5E +:102B20002DC00E5F1F4FFE01C49180E28C0F8830D4 +:102B300058F4C7708E2D01C0880FCA95EAF70E941D +:102B400036180E9457181AC08C2F0E948D0F16C07D +:102B50000E5F1F4FFE01C491CC2381F08FE99FE0EF +:102B60000197F1F700C00000C150F6CF0E5F1F4F74 +:102B7000FE01F49003C00E94EE0E8E018F2D88237B +:102B800009F49FCFEFE9FFE03197F1F700C00000B3 +:102B90008150F5CFDF91CF911F910F91FF90EF9072 +:102BA000089508956093890170938A0180938B0141 +:102BB00090938C010C940A120F931F93009189013A +:102BC00010918A0120918B0130918C01DC01CB01A5 +:102BD000802B912BA22BB32B8093890190938A0198 +:102BE000A0938B01B0938C011F910F910C940A124A +:102BF0000F931F930091890110918A0120918B01FD +:102C000030918C01DC01CB0180239123A223B323DB +:102C10008093890190938A01A0938B01B0938C01DA +:102C20001F910F910C940A120F931F930091890129 +:102C300010918A0120918B0130918C01DC01CB0134 +:102C400080279127A227B3278093890190938A0137 +:102C5000A0938B01B0938C011F910F910C940A12D9 +:102C600010928501109286011092870110928801BE +:102C70000C940A1241E050E060E070E004C0440FA0 +:102C8000551F661F771F8A95D2F740938501509391 +:102C9000860160938701709388010C940A1241E0C9 +:102CA00050E060E070E004C0440F551F661F771FBE +:102CB0008A95D2F78091850190918601A091870134 +:102CC000B0918801482B592B6A2B7B2B40938501AF +:102CD0005093860160938701709388010C940A12C7 +:102CE00041E050E060E070E004C0440F551F661FF3 +:102CF000771F8A95D2F74095509560957095809191 +:102D0000850190918601A0918701B09188014823A7 +:102D100059236A237B234093850150938601609356 +:102D20008701709388010C940A1241E050E060E042 +:102D300070E004C0440F551F661F771F8A95D2F7B5 +:102D40008091850190918601A0918701B0918801C1 +:102D5000482759276A277B2740938501509386018E +:102D600060938701709388010C940A120F931F934C +:102D70000091850110918601209187013091880191 +:102D8000DC01CB01802B912BA22BB32B80938501EF +:102D900090938601A0938701B09388011F910F91B2 +:102DA0000C940A120F931F930091850110918601D4 +:102DB0002091870130918801DC01CB018023912390 +:102DC000A223B3238093850190938601A09387016A +:102DD000B09388011F910F910C940A120F931F93C7 +:102DE0000091850110918601209187013091880121 +:102DF000DC01CB0180279127A227B327809385018F +:102E000090938601A0938701B09388011F910F9141 +:102E10000C940A120895CF92DF92EF92FF920F93D3 +:102E20001F93CF93DF938C01C0908901D0908A01CA +:102E3000E0908B01F0908C0180918501909186014A +:102E4000A0918701B0918801C82AD92AEA2AFB2AD1 +:102E5000CFE1D0E0D701C6010C2E04C0B695A795EE +:102E6000979587950A94D2F780FF06C0B8018C2FFA +:102E70000E948905019721F4219760F780E001C045 +:102E80008C2FDF91CF911F910F91FF90EF90DF90EA +:102E9000CF900895CF93DF93EC010E940B17BE01F2 +:102EA0000E948905DF91CF910895CB010E944A17B6 +:102EB000089580918D0185958595859508958091DA +:102EC0008D018770089598E0899F90011124262B29 +:102ED00020938D010C944F1620918D0180958223B3 +:102EE00080938D01982F977069F430E0482F552713 +:102EF00047FD50952417350729F0859585958595CB +:102F00000C947016089590918D01977081E009F4EA +:102F100080E0089590910B01992321F090910C018C +:102F2000911109C020910D0130910E01F9013296E5 +:102F30009FEF40E01FC0982F9695969596959F30ED +:102F400050F5E0910D01F0910E01E90FF11D877030 +:102F500021E030E0A90102C0440F551F8A95E2F735 +:102F6000CA019181892B818308959F3F39F04F5F7A +:102F70004E3041F051915813F8CF0DC05111F7CF99 +:102F8000942FF5CF9F3F39F0F901E90FF11D97FD1F +:102F9000FA9582830895089590910B01992321F069 +:102FA00090910C01911109C020910D0130910E01F9 +:102FB000F9013296205F3F4F1FC0982F9695969546 +:102FC00096959F30F0F4E0910D01F0910E01E90F1C +:102FD000F11D877021E030E0A90102C0440F551FA8 +:102FE0008A95E2F7CA0180959181892381830895AA +:102FF0003196E217F30729F090819813F9CF1082E8 +:10300000F7CF089581E090E0E0910D01F0910E017D +:10301000E80FF91F1082019680319105A9F70895F4 +:103020009091A101892B8093A101089580959091A1 +:10303000A10189238093A10108951092A10108950F +:103040009091A001892B8093A00108958095909183 +:10305000A00189238093A00108951092A0010895F2 +:1030600090919F01892B80939F0108958095909165 +:103070009F01892380939F01089510929F010895D5 +:1030800080938E01089510928E01089580910D0114 +:1030900090910E01FC0131969C01205F3F4F80E032 +:1030A000919191118F5FE217F307D1F70895E091A5 +:1030B0000D01F0910E018091A1018083E0910D013D +:1030C000F0910E0190818091A001892B8083E09185 +:1030D0000D01F0910E01908180919F01892B8083D9 +:1030E00080918E01882361F0E0910D01F0910E0135 +:1030F0009081892B80830E944618811110928E0145 +:1031000080910D0190910E010C94EC0D20E0009740 +:1031100039F0AC0141505109842395232F5FF7CF3B +:10312000822F08958091AD01843039F11092A3016E +:1031300020E488E190E00FB6F894A89580936000B1 +:103140000FBE2093600080E00E94B40180E00E94E6 +:10315000250683B7817F846083BF83B7816083BF87 +:103160007894889583B78E7F83BF88E10FB6F894F3 +:1031700080936000109260000FBE08950895089536 +:1031800080E00E94B4010E94BE180E9480060E9446 +:10319000BF180E94010791E0811101C090E0892FC2 +:1031A00008950E94121280E00E94B4010E94471C00 +:1031B0000E94E00D0C9425061F920F920FB60F92FD +:1031C00011248F939F93AF93BF938091A30181119B +:1031D00013C08091A4019091A501A091A601B09186 +:1031E000A7014196A11DB11D8093A4019093A50153 +:1031F000A093A601B093A701BF91AF919F918F912A +:103200000F900FBE0F901F90189582E084BD93E041 +:1032100095BD9AEF97BD80936E0008952FB7F894EF +:103220008091A4019091A501A091A601B091A70160 +:103230002FBF0895CF92DF92EF92FF920F931F93CB +:103240002FB7F8944091A4015091A5016091A60177 +:103250007091A7012FBF6A017B01EE24FF248C012E +:1032600020E030E0C016D106E206F30610F441502B +:1032700051099A01281B390BC9011F910F91FF9029 +:10328000EF90DF90CF9008951F920F920FB60F929C +:1032900011248F939F93AF93BF938091A40190913A +:1032A000A501A091A601B091A7010196A11DB11D94 +:1032B0008093A4019093A501A093A601B093A701C8 +:1032C000BF91AF919F918F910F900FBE0F901F9064 +:1032D00018950E94DD0AF8942FEF87EA91E62150B5 +:1032E00080409040E1F700C0000087E090EBDC01F7 +:1032F0008093B8019093B901A093BA01B093BB0138 +:103300009CE088E10FB6F894A895809360000FBE0A +:1033100090936000FFCFEF92FF920F931F93CF9394 +:10332000DF93D82FC5E08C2F0E94E50603E010E064 +:10333000E82EF12CC701002E02C0959587950A94BE +:10334000E2F780FF09C0602F7C2F80E00E94070316 +:10335000D81302C081E006C00150110958F7C150CE +:1033600010F780E0DF91CF911F910F91FF90EF90C8 +:103370000895CF93C82F8CE20E948B19882321F0E7 +:103380008C2FCF910C948B1980E0CF910895CF931F +:103390000E94131B811102C00E94F41AC5E6C1509D +:1033A00049F00E9480068FE39CE90197F1F700C085 +:1033B0000000F5CF89E20E94B919811113C18AE298 +:1033C0000E94B91981110E94F41A85E00E94B9196E +:1033D00081110E9469190E941E1B8093A20187E03F +:1033E0000E94B9198823A9F18BE10E94B919882399 +:1033F00051F08091A20181FB222720F991E09227D0 +:1034000090FB81F90EC08EE00E94B919882361F00B +:103410008091A20182FB222720F991E0922790FB64 +:1034200082F98093A20115C080E10E94B9199091A0 +:10343000A201882341F093FB222720F981E0822713 +:1034400080FB93F904C0892F809580FB90F99093BD +:10345000A2018091A2010E94221B0E94301B809336 +:10346000B60180EE0E94B919882341F08091B6011F +:10347000982F909590FB80F98093B60189E30E9484 +:10348000B919882359F08091B60181FB222720F9D0 +:1034900091E0922790FB81F98093B60182EE0E9421 +:1034A000B919882359F08091B60182FB222720F9AF +:1034B00091E0922790FB82F98093B60186EE0E94FC +:1034C000B919882359F08091B60183FB222720F98E +:1034D00091E0922790FB83F98093B60183EE0E94DE +:1034E000B919882359F08091B60184FB222720F96D +:1034F00091E0922790FB84F98093B60185E30E94C6 +:10350000B919882359F08091B60185FB222720F94B +:1035100091E0922790FB85F98093B60181E30E94A8 +:10352000B919882359F08091B60186FB222720F92A +:1035300091E0922790FB86F98093B60181E10E9489 +:10354000B919882359F08091B60187FB222720F909 +:1035500091E0922790FB87F98093B6018091B601A4 +:103560000E94341B8091B60187FB882780F98093E5 +:103570000C0187E20E94B919C82F8EE10E94B91987 +:103580008111C2608FE10E94B9198111C46080E28B +:103590000E94B9198111C86081E20E94B919811194 +:1035A000C06182E20E94B9198111C06283E20E9467 +:1035B000B9198111C06484E20E94B919882311F0FD +:1035C000C06802C0CC2329F08C2F0E942B1B6C2FCB +:1035D00003C00E94271B682F70E080E090E0CF912D +:1035E0000C94D215CF9108956DEE7EEF80E090E0BF +:1035F0000E94041D60E082E090E00E94F21C60E006 +:1036000083E090E00E94F21C60E084E090E00E9481 +:10361000F21C60E085E090E00E94F21C60E086E031 +:1036200090E00C94F21C80E090E00E94EC1C21E001 +:103630008D3E9E4F09F020E0822F089582E090E0B9 +:103640000C94E41C682F82E090E00C94F21C83E060 +:1036500090E00C94E41C682F83E090E00C94F21C42 +:1036600084E090E00C94E41C682F84E090E00C94DB +:10367000F21C86E090E00C94E41C682F86E090E059 +:103680000C94F21C0F931F938B3109F475C0A0F5B5 +:103690008E3009F484C0C0F4873009F45BC068F44C +:1036A000863009F0AAC08091A201817F8E7F80932D +:1036B000A20181E08093A801A1C0883009F496C0DE +:1036C0008B3009F493C099C0813109F472C068F459 +:1036D000803109F092C08091A20183FB222720F95A +:1036E00091E0922790FB83F950C0863109F47EC0A7 +:1036F000893109F47BC081C0853309F479C068F44D +:10370000873209F475C028F48E3108F476C08D51E3 +:103710005AC0893209F46CC070C0833438F48A33DB +:1037200008F050C0883309F461C067C0833409F4DD +:103730005FC0883409F061C00E9412120FEF13EDD0 +:1037400020E3015010402040E1F700C000000E943B +:1037500069194CC09091A201892F8095817080FBDE +:1037600090F929F0966098609093A20147C0997FE4 +:10377000977F9093A2013AC08091A20181FB2227FA +:1037800020F991E0922790FB81F98093A20199237F +:1037900069F18091A20181608093A20127C080918C +:1037A000A20182FB222720F991E0922790FB82F967 +:1037B000ECCF0E94121290910C0181E08927809336 +:1037C0000C0114C0895341E050E060E070E08A01D0 +:1037D0009B0104C0000F111F221F331F8A95D2F7CF +:1037E000C901B8010E94D2150E94121281E006C0E0 +:1037F00061E070E080E090E0F5CF80E01F910F91F4 +:10380000089580E0089580E00895CF93C82F8091B7 +:10381000A801882319F0813049F031C0E0910D01F1 +:10382000F0910E018081823261F507C0E0910D01B7 +:10383000F0910E018081823261F48C2F0E94011C74 +:10384000811104C08C2F0E94421B17C081E090E0C0 +:1038500014C08C2F0E94031C81110EC0C43149F08A +:1038600018F4CB3049F00FC0C93219F0C83321F039 +:103870000AC01092A80107C081E0817006C01092B2 +:10388000A80180E002C080E0F8CFCF9108950E94A7 +:10389000131B811102C00E94F41A0E94391B8093ED +:1038A000B70180FF02C0869501C080E00C94B4018E +:1038B0008091B701982F9695292F30E0233031055C +:1038C0004CF49F5F990F8170892B81608093B701C1 +:1038D0000E943D1B8091B70186950C94B4018091A4 +:1038E000B701982F969591F09158990F8170892B77 +:1038F0008093B7018E7F91E009F490E08091B70149 +:1039000090FB80F98093B7010E943D1B8091B70125 +:1039100086950C94B4018091B701982F909590FBF7 +:1039200080F98093B7010E943D1B8091B70180FF11 +:1039300002C0869501C080E00C94B4019091B7015B +:10394000892F86958F5F8F779170843028F4880F48 +:10395000892B8093B70102C09093B7018091B70182 +:103960008E7F91E009F490E08091B70190FB80F99F +:103970008093B7010E943D1B8091B70186950C94FE +:10398000B4012091B701922F96958927982F990F0E +:10399000822F8170892B8093B7018E7F91E009F48B +:1039A00090E08091B70190FB80F98093B7010E946D +:1039B0003D1B8091B70186950C94B401EE0FFF1F5B +:1039C0000590F491E02D0994F999FECF92BD81BD47 +:1039D000F89A992780B50895A8E1B0E042E050E058 +:1039E0000C940C1D262FF999FECF92BD81BDF89A3B +:1039F000019700B4021639F01FBA20BD0FB6F89433 +:103A0000FA9AF99A0FBE08950196272F0E94F31C87 +:103A10000C94F21CDC01CB01FC01F999FECF06C02D +:103A2000F2BDE1BDF89A319600B40D92415050407C +:083A3000B8F70895F894FFCFE8 +:103A3800FF12077E0715074A07160701018F0103C2 +:0A3A48001323330F1F4F5F6F7F0041 +:00000001FF diff --git a/keyboards/arrow_pad/keymaps/pad_24/config.h b/keyboards/arrow_pad/keymaps/pad_24/config.h new file mode 100644 index 0000000000..75369c047f --- /dev/null +++ b/keyboards/arrow_pad/keymaps/pad_24/config.h @@ -0,0 +1,158 @@ +/* +Copyright 2012 Jun Wako + +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 0x4096 +#define DEVICE_VER 0x0001 +#define MANUFACTURER Nobody +#define PRODUCT Arrow Pad 24 +#define DESCRIPTION 24-Key QMK Assistant + +/* 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/keyboards/arrow_pad/keymaps/pad_24/keymap.c b/keyboards/arrow_pad/keymaps/pad_24/keymap.c new file mode 100644 index 0000000000..5647f75afe --- /dev/null +++ b/keyboards/arrow_pad/keymaps/pad_24/keymap.c @@ -0,0 +1,163 @@ +// This is the canonical layout file for the Quantum project. If you want to add another keyboard, +// this is the style you want to emulate. + +#include "arrow_pad.h" +#include "led.h" + +// This is the 21-key keypad to 2x11 element matrix mapping +#define KEYMAP( \ + KM_ESC, KM_TAB, KM_BSL, KM_ARR, \ + KM_NUM, KM_FSL, KM_AST, KM_MIN, \ + KM___7, KM___8, KM___9, KM_EQU, \ + KM___4, KM___5, KM___6, KM_PLS, \ + KM___1, KM___2, KM___3, ___ENT, \ + KM___0, _____0, KM_DOT, KM_ENT \ +) { \ + { KM_ESC, KM_TAB, KM_BSL, KM_ARR }, \ + { KM_NUM, KM_FSL, KM_AST, KM_MIN }, \ + { KM___7, KM___8, KM___9, KM_EQU }, \ + { KM___4, KM___5, KM___6, KM_PLS }, \ + { KM___1, KM___2, KM___3, KC_NO }, \ + { KM___0, KC_NO, KM_DOT, KM_ENT } \ +} + +#define LAYER_BASE 0 +#define LAYER_EDIT 1 +#define LAYER_FUNCTION 2 + +#define MACRO_COPY_CUT 0 +#define MACRO_SHIFT_CONTROL 1 +#define MACRO_CONTROL_ALT 2 + +#define M_COPY KC_FN5 +#define M_SHFCT KC_FN6 +#define M_CTALT KC_FN7 + +#define SC_UNDO LCTL(KC_Z) +#define SC_REDO LCTL(KC_Y) +#define SC_CUT LCTL(KC_X) +#define SC_COPY LCTL(KC_C) +#define SC_PSTE LCTL(KC_V) +#define SC_SELA LCTL(KC_A) +#define SC_SAVE LCTL(KC_S) +#define SC_OPEN LCTL(KC_O) +#define SC_ACLS LALT(KC_F4) +#define SC_CCLS LCTL(KC_F4) + +#define _______ KC_TRNS +#define XXXXXXX KC_NO + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +[LAYER_BASE] = KEYMAP( \ + KC_ESC, KC_TAB, KC_BSLS, KC_FN0, \ + KC_NLCK, KC_PSLS, KC_PAST, KC_PMNS, \ + KC_P7, KC_P8, KC_P9, KC_PEQL, \ + KC_P4, KC_P5, KC_P6, KC_PPLS, \ + KC_P1, KC_P2, KC_P3, XXXXXXX, \ + KC_P0, KC_PCMM, KC_PDOT, KC_PENT ), + +[LAYER_EDIT] = KEYMAP( \ + KC_ESC, KC_TAB, KC_SPC, _______, \ + KC_FN1, SC_PSTE, SC_REDO, SC_UNDO, \ + KC_HOME, KC_UP, KC_PGUP, KC_LALT, \ + KC_LEFT, M_COPY, KC_RGHT, KC_LCTL, \ + KC_END, KC_DOWN, KC_PGDN, XXXXXXX, \ + KC_BSPC, KC_PENT, KC_DEL, M_SHFCT), + +[LAYER_FUNCTION] = KEYMAP( \ + KC_FN2, KC_FN3, KC_FN4, _______, \ + KC_FN1, _______, _______, _______, \ + _______, _______, _______, _______, \ + _______, _______, _______, _______, \ + _______, _______, _______, XXXXXXX, \ + RESET, _______, _______, _______ ), + +}; + + +const uint16_t PROGMEM fn_actions[] = { + [0] = ACTION_LAYER_MOMENTARY(LAYER_FUNCTION), + [1] = ACTION_LAYER_TOGGLE(LAYER_EDIT), + [2] = ACTION_BACKLIGHT_TOGGLE(), + [3] = ACTION_BACKLIGHT_INCREASE(), + [4] = ACTION_BACKLIGHT_DECREASE(), + [5] = ACTION_MACRO_TAP(MACRO_COPY_CUT), + [6] = ACTION_MACRO_TAP(MACRO_SHIFT_CONTROL), + [7] = ACTION_MACRO_TAP(MACRO_CONTROL_ALT), + +}; + + +void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) +{ +} + + +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_COPY_CUT: + if (record->event.pressed) { + register_code(KC_LCTL); + if (record->tap.count == 1) { + register_code(KC_C); + unregister_code(KC_C); + } + else if (record->tap.count == 2) { + register_code(KC_X); + unregister_code(KC_X); + } + unregister_code(KC_LCTL); + } + break; + + case MACRO_SHIFT_CONTROL: + if (record->event.pressed) { + if (record->tap.count <= 2) register_mods(MOD_BIT(KC_LSFT)); + if (record->tap.count == 2) register_mods(MOD_BIT(KC_LCTL)); + if (record->tap.count == 3) register_code(KC_PENT);; + } + else { + unregister_mods(MOD_BIT(KC_LSFT) | MOD_BIT(KC_LCTL)); + unregister_code(KC_PENT); + } + break; + + case MACRO_CONTROL_ALT: + if (record->event.pressed) { + if (record->tap.count < 2) register_mods(MOD_BIT(KC_LCTL)); + if (record->tap.count >= 2) register_mods(MOD_BIT(KC_LALT)); + } + else { + unregister_mods(MOD_BIT(KC_LCTL) | MOD_BIT(KC_LALT)); + } + break; + } + + return MACRO_NONE; +} + +void led_set_user(uint8_t usb_led) +{ + if (usb_led & (1<