diff options
author | Jack Humbert <jack.humb@gmail.com> | 2016-06-11 19:31:31 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-06-11 19:31:31 +0200 |
commit | d9e4dad0a828a8a904f44dda090a4d6d08fe2948 (patch) | |
tree | d6f002712c22e8cf4523e04a9da889c7ec379d6b /keyboard/clueboard2/keymaps/default | |
parent | a5d638ad3091e2d553eaa04d933df28eeced5a8b (diff) | |
download | qmk_firmware-d9e4dad0a828a8a904f44dda090a4d6d08fe2948.tar.gz qmk_firmware-d9e4dad0a828a8a904f44dda090a4d6d08fe2948.tar.xz |
Makefile redo & other features (#395)
* .build containment implemented
* no destructive variable setting - builds in either folder
* make from 3 places
* cleans before each build
* make from root with keyboard=keyboard, keymap=keymap
* make from keyboard/keyboard with keymap=keymap
* make from keymaps/keymap
* only implemented on planck
* adds color diag to avr-gcc
* makefiles for all plancks, clean-up
* quick build-all makefile for plancks
* reformatting of make output (colors)
* color toggle, tmk path corrections
* correct if statement for color
* move config.h to main makefile, updates preonic, atomic
* format update, all keyboards targets
* makefile optional for build all target, alps and arrow_pad updated
* alps updated
* make planck default, trying out travis recipe for all-keyboards
* all-keymaps target, different travis recipe
* updates alps64
* updates keyboards to new format
* updates clue* projects
* all projects updated, specialise EZ .hex, let .hex through
* updates travis
* automatically find root, keyboard, keymap
* silent echo, cleaned-up mass make output
* updates all keyboards' .hex files except EZ
* Rename Bantam44.c to bantam44.c
* Rename Bantam44.h to bantam44.h
* nananana
* adds six key keyboard
* does same to ez as rest
* updates send_string example
* brings ergodox_ez up to date
* updates template/new project script
* adds sixkeyboard
* adds readme for sixkeyboard
* adds sixkeyboard to travis
* filenames, gitignore mess
* define clock prescaler stuff manually
* make quick, size test example
* documentation and dfu-no-build
Diffstat (limited to 'keyboard/clueboard2/keymaps/default')
-rw-r--r-- | keyboard/clueboard2/keymaps/default/compiled.hex | 1246 | ||||
-rw-r--r-- | keyboard/clueboard2/keymaps/default/keymap.c | 183 |
2 files changed, 1429 insertions, 0 deletions
diff --git a/keyboard/clueboard2/keymaps/default/compiled.hex b/keyboard/clueboard2/keymaps/default/compiled.hex new file mode 100644 index 000000000..c737eb3c6 --- /dev/null +++ b/keyboard/clueboard2/keymaps/default/compiled.hex @@ -0,0 +1,1246 @@ +:100000000C94E5050C9429060C9429060C942906F9
+:100010000C9429060C9429060C9429060C942906A4
+:100020000C9429060C9429060C9449110C941B126B
+:100030000C94FD1F0C9429060C9429060C94290697
+:100040000C9429060C9429060C9429060C94290674
+:100050000C9429060C9465200C9429060C9429060E
+:100060000C9429060C9429060C9429060C94290654
+:100070000C9429060C9429060C9429060C94290644
+:100080000C9429060C9429060C9429060C94290634
+:100090000C9429060C9429060C9429060C94290624
+:1000A0000C9429060C9429060C9429068812AA128D
+:1000B0009813AA129813EF121213981367137A1356
+:1000C00099169916C816C81607177218721872185A
+:1000D00027177218D717D7173E18471872186C18B9
+:1000E000E417E417E417E417E417E417E417E41738
+:1000F000E417E417E417E417E417E417E417E41728
+:10010000F4170218091810181A18696E69745F62DA
+:1001100061636B6C696768745F70696E28290A0097
+:1001200000F000201E001F002000210022002300FC
+:1001300024002B0014001A000800150017001C00F2
+:100140001800390004001600070009000A000B001F
+:100150000D00E10064001D001B00060019000500F1
+:100160001100E000E300E2008B0000002C002C00F6
+:1001700000002500260027002D002E0035002A0053
+:100180004B000C00120013002F0030003100000063
+:100190004E000E000F003300340032002800000033
+:1001A000000010003600370038008700E5005200DC
+:1001B00000008A000000E600E400015250005100F7
+:1001C0004F0035003A003B003C003D003E003F0040
+:1001D00040000100010001000100010001000100D8
+:1001E00001000100010002520100010001000100B4
+:1001F00001000100010001000100010001000100F7
+:1002000001000100010001000100000001000100E7
+:1002100000004100420043004400450001004C0042
+:100220008350460047004800010001000100000023
+:1002300001000100010001000100010001000000B7
+:1002400000000100010001000100010001004B005D
+:100250000000010000000100010001524A004E00B0
+:100260004D0001000100010001000100010001003A
+:100270000100010001000100010000500100010027
+:100280000100010001000252010001000100010013
+:100290000100010001000100010001000100010056
+:1002A0000100010001000100010000000100010047
+:1002B0000000010001000100010001000100010037
+:1002C0000100010001000100010001000100000027
+:1002D0000100010001000100010001000100000017
+:1002E0000000010001000100010001000100010007
+:1002F00000000100000001000100015201000100A6
+:1003000001000A44454255473A20656E61626C65BA
+:10031000642E0A005374617465206F6620726F77D3
+:100320002025583A2025303136620A0048756D6123
+:100330006E2D7265616461626C65206D61747269B5
+:10034000782073746174653A0D0A004465626F75B4
+:100350006E63696E672064656C61792072656D619A
+:10036000696E696E673A2025580A005B735D004B21
+:100370006579626F6172642073746172742E0A0011
+:100380005B575D005B535D005B525D005B445D004D
+:100390005B435D00420343006C0075006500620032
+:1003A0006F00610072006400200077006900740033
+:1003B00068002000520047004200200055006E00F7
+:1003C0006400650072006C006900670068007400DA
+:1003D00069006E0067000000140343006C007500A4
+:1003E000650062006F006100720064000000040399
+:1003F000090409027400040100A0FA0904000001C4
+:1004000003010100092111010001223F00070581BC
+:100410000308000A0904010001030000000921117A
+:100420000100012236000705820308000A090402C0
+:100430000002030000000921110100012220000731
+:1004400005830320000107050303200001090403BD
+:1004500000010300000009211101000122390007F9
+:100460000584031000011201100100000008EDC115
+:10047000202301000102000105010906A101050771
+:1004800019E029E715002501950875018102050885
+:1004900019012905950575019102950175039101D1
+:1004A0000507190029771500250195787501810246
+:1004B000C00631FF0974A1010975150025FF9520BB
+:1004C000750881020976150025FF952075089102AF
+:1004D000C005010980A101850216010026B7001A96
+:1004E00001002AB700751095018100C0050C0901B3
+:1004F000A1018503160100269C021A01002A9C0214
+:10050000751095018100C005010906A101050719B3
+:10051000E029E7150025019508750181029501750F
+:1005200008810105081901290595057501910295B4
+:1005300001750391010507190029FF150025FF9595
+:100540000675088100C00A002530325820006B650E
+:1005500079626F6172645F7265706F72743A2000C5
+:100560004B6579626F617264204C454473207374EB
+:100570006174653A2025780A0064656C5F6B657963
+:100580005F6269743A2063616E27742064656C3A17
+:1005900020253032580A006164645F6B65795F62C0
+:1005A00069743A2063616E2774206164643A20257F
+:1005B0003032580A00646F6E652E0A00626F6F67F2
+:1005C0006D61676963207363616E3A202E2E2E2061
+:1005D000003F00433E20004C25640A0074696D65AD
+:1005E000725F636F756E743A202530346C580A0060
+:1005F0006B6579626F6172645F6E6B726F3A202512
+:10060000580A006B6579626F6172645F69646C653A
+:100610003A2025580A006B6579626F6172645F70D9
+:10062000726F746F636F6C3A2025580A00686F739D
+:10063000745F6B6579626F6172645F6C6564732867
+:10064000293A2025580A000A092D2053746174752F
+:1006500073202D0A004743433A20342E392E32208E
+:100660004156522D4C4942433A20312E382E3120EA
+:100670004156525F415243483A20617672350A0032
+:100680004F5054494F4E533A204C55464120424F0B
+:100690004F544D414749432045585452414B4559C9
+:1006A00020434F4E534F4C4520434F4D4D414E44F8
+:1006B000204E4B524F20343039360A004255494CB7
+:1006C000443A20313637313865662D646972747961
+:1006D000202832333A31303A3036204A756E2020A5
+:1006E000392032303136290A005649443A203078D0
+:1006F0004331454428436C7565626F6172642920FB
+:100700005049443A2030783233323028436C756592
+:10071000626F617264207769746820524742205585
+:100720006E6465726C69676874696E6729205645E6
+:10073000523A203078303030310A00444553433A41
+:1007400020514D4B206B6579626F61726420666940
+:10075000726D7761726520666F7220436C75656299
+:100760006F6172640A000A092D2056657273696F01
+:100770006E202D0A000A092D20436F6E736F6C6581
+:10078000202D0A4553432F713A09717569740A0087
+:100790000A092D204D61676963202D0A443A0944F6
+:1007A00065627567204D65737361676520546F6777
+:1007B000676C650A583A094D61747269782044651E
+:1007C000627567204D6F646520546F67676C6520A4
+:1007D0002D2053686F77206B657970726573736530
+:1007E0007320696E206D6174726978206772696424
+:1007F0000A4B3A094B6579626F6172642044656205
+:10080000756720546F67676C65202D2053686F777C
+:10081000206B65797072657373207265706F727486
+:100820000A4D3A094465627567204D6F75736520FE
+:10083000546F67676C650A563A0956657273696F3B
+:100840006E0A533A095374617475730A433A094145
+:100850006374697661746520436F6E736F6C652095
+:100860004D6F64650A46312D4631303A0953776938
+:1008700074636820746F204C6179657220302D3963
+:100880002028463130203D204C30290A302D393A7D
+:100890000953776974636820746F204C61796572BD
+:1008A00020302D390A4553433A09537769746368F8
+:1008B00020746F204C6179657220302028616C743F
+:1008C00065726E617465206B65792031290A475223
+:1008D0004156453A0953776974636820746F204C18
+:1008E0006179657220302028616C7465726E617464
+:1008F00065206B65792032290A50415553453A09E4
+:100900004A756D7020746F20426F6F746C6F6164F4
+:10091000657220285265736574290A453A09507238
+:10092000696E7420454550524F4D2053657474696B
+:100930006E67730A4E3A094E4B524F20546F6767E9
+:100940006C650A000A002575002E6C6576656C3AA8
+:1009500020000A002575002E656E61626C653A20E4
+:10096000000A0025303258006261636B6C69676869
+:10097000745F636F6E6669672E7261773A20000A52
+:10098000002575002E6E6B726F3A20000A002575E7
+:10099000002E737761705F6261636B736C61736863
+:1009A0005F6261636B73706163653A20000A0025C2
+:1009B00075002E737761705F67726176655F65732E
+:1009C000633A20000A002575002E6E6F5F67756917
+:1009D0003A20000A002575002E737761705F7261FE
+:1009E0006C745F726775693A20000A002575002EE5
+:1009F000737761705F6C616C745F6C6775693A20C6
+:100A0000000A002575002E636170736C6F636B5F65
+:100A1000746F5F636F6E74726F6C3A20000A00250A
+:100A200075002E737761705F636F6E74726F6C5FA9
+:100A3000636170736C6F636B3A20000A002530327B
+:100A400058006B65796D61705F636F6E6669672EC4
+:100A50007261773A20000A002575002E6D6F75735C
+:100A6000653A20000A002575002E6B6579626F617A
+:100A700072643A20000A002575002E6D6174726957
+:100A8000783A20000A002575002E656E61626C655B
+:100A90003A20000A00253032580064656275675FAD
+:100AA000636F6E6669672E7261773A20000A0025CF
+:100AB000750064656661756C745F6C617965723A26
+:100AC00020003F004E4B524F3A206F66660A004EA0
+:100AD0004B524F3A206F6E0A000A6D6F7573653A7C
+:100AE000206F66660A000A6D6F7573653A206F6E37
+:100AF0000A000A6B6579626F6172643A206F6666FC
+:100B00000A000A6B6579626F6172643A206F6E0A3F
+:100B1000000A6D61747269783A206F66660A000A8D
+:100B20006D61747269783A206F6E0A000A646562BA
+:100B300075673A206F66660A000A64656275673AEF
+:100B4000206F6E0A000A0A4A756D70696E6720741C
+:100B50006F20626F6F746C6F616465722E2E2E2031
+:100B600000433E20006565636F6E6669673A0A0060
+:100B70006261636B6C6967687420737465703A2096
+:100B800025750A006261636B6C6967687420746F15
+:100B900067676C653A2025750A006261636B6C6952
+:100BA0006768742064656372656173653A202575B2
+:100BB0000A006261636B6C6967687420696E6372B6
+:100BC000656173653A2025750A0011241FBECFEFB9
+:100BD000DAE0DEBFCDBF04B603FE24C08091EA0197
+:100BE0009091EB01A091EC01B091ED018730904B19
+:100BF000A740B04BB9F41092EA011092EB011092A9
+:100C0000EC011092ED0114BE84B7877F84BF88E1A8
+:100C10000FB6F89480936000109260000FBEE0E081
+:100C2000F8E3099511E0A0E0B1E0E4E8FDE402C0DA
+:100C300005900D92A633B107D9F711E0A6E3B1E014
+:100C400001C01D92AA3EB107E1F70E94830E0C94E9
+:100C5000C0260C940000FF93EF93E0913601F091D1
+:100C60003701309709F00995EF91FF910895FC0144
+:100C70008591803011F0EFDFFBCF0895FF27E0E290
+:100C800030E247FF0CC0419597FF09C0EDE2609547
+:100C9000709580959095611D711D811D911D27FF97
+:100CA00002C0219530E350E2AA27660F771F881F04
+:100CB000991FAA1FA41710F0A41B63955A95A9F7B2
+:100CC000AA3008F0A95FA05DAF93F3956115710597
+:100CD0008105910541F7ED3211F4EF93F395F21789
+:100CE00018F43F93F395FBCF8F91B5DFFA95E1F7B9
+:100CF0000895E991F9918591803021F0853219F0BC
+:100D0000AADFF9CF089520E0E89455915532C1F358
+:100D1000503311F4689455915A3348F4505390F37A
+:100D2000220F022E220F220F200D250FF4CF0EF4DA
+:100D3000219589919991533619F3533729F15335F8
+:100D400059F1BC0188279927E8945C3621F48991F0
+:100D5000999168945591543639F446EF7EF077FFB7
+:100D60000DC08FEF9FEF0AC055374AE039F0583574
+:100D700040E121F0523642E009F00895FF93EF93ED
+:100D80007DDFEF91FF91B7CFFF93EF93FC0181914E
+:100D90008030B9F360DFFBCFFF93EF9368DFF1CFD3
+:100DA000DF93CF93CDB7DEB72596A3DFCF91DF9149
+:100DB00008958AE091E00E943706569A279A549A3D
+:100DC0005E982F985C980895811104C05E9A2F9ABE
+:100DD0005C9A08955E982F985C980895249A0895D7
+:100DE00081FF02C02C9A08952C98089508950895C3
+:100DF00086EF96E0892B11F00E94F6060E94EE061F
+:100E00000E94D90685B7806885BF85B7806885BF91
+:100E1000089587EF96E0892B11F00C94F70608955A
+:100E2000CF93DF93611120C0EC010E94F91E827202
+:100E3000809338019A81992351F0882319F085E332
+:100E400090E002C089E290E00E94511E09C0882310
+:100E500019F085E390E002C089E290E00E94A41EB0
+:100E6000DF91CF910C94431FDF91CF91089581E0E2
+:100E7000089581E008950C94390708950F931F9306
+:100E8000CF93DF938C01FC01C081D181CE010E9400
+:100E9000D21DBE010E94ED07EC01B8010E943B0784
+:100EA000882309F48DC0F8018281882309F44AC09F
+:100EB0008091440181111FC0C431F0E5DF0709F0C2
+:100EC00051C00E943D0781E0809344010E942F2081
+:100ED000909343018093420110923B0110923D0197
+:100EE00010923C0110923F0110923E01109241017C
+:100EF0001092400165C080914201909143010E948F
+:100F00003B20883C910570F480913B01E82FF0E094
+:100F1000EE0FFF1FE45CFE4FD183C0838F5F809391
+:100F20003B014EC0C43880E5D80721F0C538D04514
+:100F300001F13AC0F8018281882341F01092390111
+:100F400082E01EC0C438E0E5DE0759F58091390122
+:100F5000811106C086E20E943D1586E20E940516B8
+:100F600082E01CC0C438F0E5DF0741F3C538D04546
+:100F7000D9F4F8018281882331F010923A0180E29D
+:100F80000E9454161DC080913A01811106C087E26B
+:100F90000E943D1587E20E94051680E20E945B16C2
+:100FA0000FC0C538D04529F381E080933901809383
+:100FB0003A01C801DF91CF911F910F910C9437072F
+:100FC00080E0DF91CF911F910F9108950C94F80666
+:100FD0000C94090780E090E00895E72FF0E09AE094
+:100FE000899FE00DF11D112483E0EE0FFF1F8A950C
+:100FF000E1F7E60FF11DEE0FFF1FEE5DFE4F85914D
+:1010000094910895880F991FFC01E056F040859156
+:1010100094910895880F991FFC01E05EFE4F859121
+:10102000949108950F931F93CF93DF93EC01811553
+:1010300021E39207A0F5C11580E3D80708F0D7C0D7
+:10104000C83ED105D8F4C03ED10508F007C2C83A61
+:10105000D10578F4C53AD10508F06AC0C130D10590
+:1010600009F463C008F4F7C1C430D10508F0F6C133
+:10107000F2C1CB3BD10508F466C0EDC1C11590E2C9
+:10108000D90708F0AFC0C11521E0D20708F0E6C1CA
+:10109000C03FD10508F4DFC18E0110651FC2C03802
+:1010A00080E5D80700F5C03790E5D90708F0A3C060
+:1010B000C11520E5D20709F4ACC050F4CE0190541C
+:1010C00080319F4008F0C7C1DF708E01106A06C2F0
+:1010D000C13080E5D80709F4AAC0C43190E5D9072A
+:1010E00008F4AFC0B8C1C33820E5D20709F48EC0F8
+:1010F00050F4C13890E5D90709F482C008F083C0E4
+:1011000000E011EDEBC1C03181E5D80708F4A3C1BF
+:10111000C11597E5D90708F436C1CE01905781155E
+:10112000904108F098C1DF7093C101E010E0D6C192
+:10113000C53AD10509F494C1C63AD10509F093C165
+:1011400002E810E4CBC1C83AD10509F48FC1C93A0D
+:10115000D10509F48EC1CA3AD10509F48DC1CB3A43
+:10116000D10509F48CC1CC3AD10509F48BC1CD3A33
+:10117000D10509F48AC1C03BD10509F489C1CE3A31
+:10118000D10509F488C1CF3AD10509F487C1C13B23
+:10119000D10509F486C1C23BD10509F485C1C33B21
+:1011A000D10509F484C1C43BD10509F483C1C53B11
+:1011B000D10509F482C1C63BD10509F481C1C73B01
+:1011C000D10509F480C1C83BD10509F47FC1C93BF1
+:1011D000D10509F47EC1CA3BD10509F47DC100E007
+:1011E00014E47CC1CE019F700E940A0878C1DD27FB
+:1011F0008E01106C73C1CF70DD278E01146D6EC12E
+:1012000000E010ED6BC100E012ED68C100E013EDED
+:1012100065C10E94D9188FEF94E32CE08150904073
+:101220002040E1F700C000000E948A2057C182E000
+:1012300093E00E9437068091D40181608093D401AD
+:101240004DC10E943C22811102C00E941D220E94B9
+:10125000592290E09093E9018093E801C23080E543
+:10126000D80721F48091E801816086C0C43090E500
+:10127000D90721F48091E80182607EC0C63020E564
+:10128000D20721F48091E801846076C0C83080E5FF
+:10129000D80719F48091E80127C0CA3090E5D90732
+:1012A00021F48091E801806167C0CC3020E5D2074D
+:1012B00021F48091E80180625FC0CE3080E5D807DC
+:1012C00021F48091E801806457C0C03190E5D907CE
+:1012D00021F48091E80180684FC0C23120E5D20737
+:1012E00029F48091E8018460886046C0C33080E5BD
+:1012F000D80721F48091E8018E7F3EC0C53090E58B
+:10130000D90721F48091E8018D7F36C0C73020E5F0
+:10131000D20721F48091E8018B7F2EC0C93080E58F
+:10132000D80719F48091E80126C0CB3090E5D907A1
+:1013300021F48091E8018F7E1FC0CD3020E5D207D7
+:1013400021F48091E8018F7D17C0CF3080E5D80768
+:1013500021F48091E8018F7B0FC0C13190E5D9075E
+:1013600021F48091E8018F7707C0C331D04531F473
+:101370008091E8018B7F877F8093E8018091E8016D
+:101380000E945D22ABC08D2F99278F7099278130E5
+:101390009105D9F49E012370332702C0880F991F4D
+:1013A0002A95E2F79C688E0144E0000F111F4A95D0
+:1013B000E1F700271370802B912B53E0CC0FDD1F3A
+:1013C0005A95E1F7C076DD272FC08230910531F4C0
+:1013D000DC2FCC278E01016F106A80C0833091050D
+:1013E00069F4CE018370992701E010E002C0000F7C
+:1013F000111F8A95E2F7C8019C680FC084309105DF
+:10140000B9F4CE018370992701E010E002C0000F0B
+:10141000111F8A95E2F7C8019A6823E0CC0FDD1FFF
+:101420002A95E1F7C07ED7708C010C2B1D2B56C07E
+:101430008530910531F4DC2FCC278E01046F106AC2
+:101440004DC0069709F04AC0CF71DD27DC2FCC27AD
+:101450008E01106243C000E010E040C08E013EC02B
+:1014600001E810E43BC003E810E438C002EE14E4E5
+:1014700035C009EE14E432C00AEE14E42FC005EBC7
+:1014800014E42CC006EB14E429C007EB14E426C0D6
+:101490000CEC14E423C00DEC14E420C003E815E4C4
+:1014A0001DC00AE815E41AC002E915E417C004E9F2
+:1014B00015E414C001E216E411C003E216E40EC004
+:1014C00004E216E40BC005E216E408C006E216E4E6
+:1014D00005C007E216E402C00AE216E4C801DF9183
+:1014E000CF911F910F910895E72FF0E09AE0899F27
+:1014F000E00DF11D112483E0EE0FFF1F8A95E1F747
+:10150000E60FF11DEE0FFF1FEE5DFE4F85919491EA
+:10151000803E9105E0F4803C910558F581339105BA
+:1015200009F46FC048F48932910509F463C08A3226
+:10153000910509F46DC072C089339105E9F08238D4
+:101540009105D1F08533910509F44DC067C0833E04
+:10155000910581F138F4803E9105B9F0823E910504
+:10156000D9F05CC0863E910561F1873E9105A1F1FD
+:1015700055C00E94020808952091E80120FD02C094
+:1015800021FF4CC080EE90E049C08091E80180FFCF
+:10159000F9CF89E390E042C08091E80182FF0EC05C
+:1015A0008091E80184FF03C080E090E037C083EEC3
+:1015B00090E034C08091E80182FFF2CF82EE90E0AB
+:1015C0002DC08091E80183FF0BC08091E80184FD6C
+:1015D000EBCF87EE90E022C08091E80183FFF5CF4A
+:1015E00086EE90E01BC08091E80185FF07C089E28C
+:1015F00090E014C08091E80185FFF9CF85E390E089
+:101600000DC08091E80186FF07C08AE290E006C025
+:101610008091E80186FFF9CF81E390E00E941208F3
+:1016200008950C94F006E82FF0E0E95EFE4F80810B
+:10163000E82FEF70F0E082958F7021E030E0A90193
+:1016400002C0440F551F8A95E2F740A308950F93F7
+:101650001F93CF93DF9385B7806885BF85B7806878
+:1016600085BFC9E0D0E001E010E0FE01E95EFE4F79
+:101670008081E82FEF70F0E021A182958F70A801A2
+:1016800002C0440F551F8A95E2F7CA01822B81A33D
+:101690008C2F0E94130B219740F787E090E061E0C8
+:1016A00070E0FC01E15FFE4F2081E22FEF70F0E07F
+:1016B00042A122952F70DB0102C0AA0FBB1F2A9501
+:1016C000E2F79D01242B22A3019758F7DF91CF91D8
+:1016D0001F910F910C94E607EF92FF920F931F93C7
+:1016E000CF93DF930FE411E0C9E0EE24E394F12CF3
+:1016F000D5E08C2F0E94130B87E090E040E0FC01C6
+:10170000E15FFE4F5081E52FEF70F0E020A130E067
+:1017100052955F7002C0359527955A95E2F720FDE6
+:1017200007C09701082E01C0220F0A94EAF7422B46
+:10173000019728F7F80182918F01841719F04083EF
+:10174000D09300018C2F0E94130BC15090F6809112
+:10175000000187FD32C09091D40190FF10C0282F66
+:10176000332727FD30953F938F938BE493E09F932E
+:101770008F930E94D0060F900F900F900F90809142
+:10178000000181508093000187FD07C08FE99FE031
+:101790000197F1F700C0000010C080E090E0FC016C
+:1017A000E15BFE4FDC01AB5BBE4F19962C912187AC
+:1017B0000197863FEFEF9E0791F70E94E80781E0CF
+:1017C000DF91CF911F910F91FF90EF900895E82F37
+:1017D000F0E0E15BFE4F808108950F931F93CF935C
+:1017E000DF938091D40180FF04C08CE293E00E94DB
+:1017F0003706C0E0D0E004E113E08091D40180FF1F
+:1018000015C0FE01E15BFE4F808190E00E94991FB0
+:101810009F938F93DF93CF931F930F930E94D006D4
+:101820000F900F900F900F900F900F902196CA304D
+:10183000D10519F7DF91CF911F910F9108950F9363
+:101840001F93CF9309E511E0C0E0F80182918F0169
+:1018500090E00E94771FC80FF1E00F341F07A9F72F
+:101860008C2FCF911F910F91089580916C01089555
+:1018700008959FB7F89410925B019FBF9091DF018C
+:10188000943009F057C09091E9009F703091EC00BE
+:10189000232F217030FD20E8922B23E02093E900D4
+:1018A0002091EB0020FF43C02091EE0027FF3FC0B6
+:1018B00020915901222321F02091E80025FF37C013
+:1018C0001092590126E03091E80035FD15C03091A5
+:1018D000DF01343061F53091EB0035FD28C0215037
+:1018E00021F481E08093590122C0EFE9FFE03197B4
+:1018F000F1F700C00000E7CF8093F1008091E8008D
+:1019000085FD0AC08091E80080FFFCCF8091E8004F
+:101910008E778093E80006C08FB7F89421E020937B
+:101920005B018FBF9F709093E90080E008959F70E6
+:101930009093E9008FEF0895CF93DF9300D01F922B
+:10194000CDB7DEB72091DF01243021F523E02983D4
+:101950009B838A8382E08093E9008FEF9091E80077
+:10196000815095FD06C095ED9A95F1F70000811123
+:10197000F5CF8091E80085FF0DC040E050E063E0C6
+:1019800070E0CE0101960E94390F8091E8008E77B9
+:101990008093E8000F900F900F90DF91CF91089502
+:1019A000CF93DF9300D01F92CDB7DEB79C0180911B
+:1019B000DF01843019F592E099833B832A83909369
+:1019C000E9008FEF9091E800815095FD06C095EDFC
+:1019D0009A95F1F700008111F5CF8091E80085FF1D
+:1019E0000DC040E050E063E070E0CE0101960E943F
+:1019F000390F8091E8008E778093E8000F900F9068
+:101A00000F90DF91CF910895CF93DF93EC019091E8
+:101A1000DF01943009F046C080910B018823D9F092
+:101A200080910C018823B9F09093E9008FEF909199
+:101A3000E800815095FD06C095E19A95F1F7000008
+:101A40008111F5CF8091E80085FF2CC040E050E087
+:101A500060E170E017C081E08093E9008FEF909122
+:101A6000E800815095FD06C095ED9A95F1F70000CC
+:101A70008111F5CF8091E80085FF14C040E050E06F
+:101A800068E070E0CE010E94390F8091E8008E7707
+:101A90008093E80080E1FE01ACE5B1E001900D9299
+:101AA0008A95E1F7DF91CF91089580E993E00E9454
+:101AB00037068091DE01811109C00E94CE100E947C
+:101AC0002B118091E20084608093E20008958CE8FD
+:101AD00093E00E9437061092DE01089588E893E0B3
+:101AE0000C94370684E893E00C94370680E893E082
+:101AF0000E9437060C94F21F20915A012F5F822F0B
+:101B000062E30E947826992319F020935A010895E0
+:101B100010925A0180915B01882371F18091DF015D
+:101B2000843041F58091E9008F702091EC00922F74
+:101B3000917020FD90E8892B93E09093E9009091BB
+:101B4000EB0090FF14C09091EE0097FF10C09091B1
+:101B5000E80095FF03C01092F100F9CF9091E800E2
+:101B600090FF05C09091E8009E779093E8008F70F9
+:101B70008093E90010925B01089542E061EC81E0FE
+:101B80000E94481042E061EC82E00E94481042E26C
+:101B900061EC83E00E94481042E161EC84E00C9427
+:101BA00048108091E101833009F455C030F4813050
+:101BB00071F0823009F48EC008958A3009F47AC039
+:101BC0008B3009F460C0893009F09CC020C080913E
+:101BD000E001813A09F096C08091E800877F809308
+:101BE000E8008091E4019091E501892B21F460E106
+:101BF0008CE591E003C060E080E090E070E00E943E
+:101C0000840F8091E8008B778093E800089580919D
+:101C1000E001813209F076C08091E4019091E50104
+:101C2000009719F0039709F06DC08091E800877F55
+:101C30008093E8008091E80082FD05C08091DF017B
+:101C40008111F8CF5FC08091F10080936C01809189
+:101C5000E8008B7753C08091E001813A09F052C0CF
+:101C60008091E4019091E501892B09F04BC08091AE
+:101C7000E800877F8093E8008091E80080FFFCCF38
+:101C800080910B0136C08091E0018132D9F58091BD
+:101C9000E4019091E501892BA9F58091E800877F07
+:101CA0008093E8000E947D108091E20180930B01F7
+:101CB0000C94D9188091E001813221F58091E800DF
+:101CC000877F8093E8000E947D108091E3018093DC
+:101CD0006D0108958091E001813AA1F48091E800BE
+:101CE000877F8093E8008091E80080FFFCCF80919F
+:101CF0006D018093F1008091E8008E778093E80079
+:101D00000C947D10089584B7877F84BF88E10FB657
+:101D1000F89480936000109260000FBE90E080E81D
+:101D20000FB6F89480936100909361000FBE0E94FB
+:101D300052140E94CE100E942B118091E200846008
+:101D40008093E20089E39CE00E94721F78940E94D5
+:101D5000B0130E94541481E091E00E94CB138FE6EF
+:101D600093E00E9437068091DF01853089F48BE68D
+:101D700093E00E9437060E94B31F8091DD01882303
+:101D800091F30E94E11F882371F30E94230FEBCF90
+:101D90000E947A14E8CF292F332723303105C9F068
+:101DA00064F42130310581F02230310509F043C05F
+:101DB00084E790E022EF33E042C021323105F1F0B8
+:101DC0002232310541F137C082E190E026E634E06D
+:101DD00036C099278130910541F08230910541F05C
+:101DE000892B49F5EEEEF3E005C0E8EDF3E002C023
+:101DF000E4E9F3E0849190E09F0121C06430D8F4DD
+:101E0000E62FF0E0EE0FFF1FE35DFE4F20813181F2
+:101E100089E090E014C0643070F470E0FB01EE0FD4
+:101E2000FF1FEB5DFE4F20813181FB01EF5DFE4F17
+:101E3000808190E004C080E090E020E030E0FA0192
+:101E400031832083089580E189BD82E189BD09B491
+:101E500000FEFDCF8091D8008F7D8093D8008091C7
+:101E6000E00082608093E0008091E00081FDFCCF83
+:101E70000895CF92DF92EF92FF920F931F93CF932B
+:101E8000DF93EC018B016A010E949C10811133C029
+:101E9000C114D10439F0F60180819181081B190B1E
+:101EA000C80FD91FE12CF12C0115110519F18091F2
+:101EB000E80085FD16C08091E8008E778093E800E9
+:101EC000C114D10449F0F60180819181E80EF91E18
+:101ED000F182E08285E00FC00E949C10882321F3EC
+:101EE0000AC089918093F10001501109FFEFEF1AA8
+:101EF000FF0ADACF80E0DF91CF911F910F91FF9021
+:101F0000EF90DF90CF9008952091E6013091E701A6
+:101F10002617370748F06115710539F42091E8005C
+:101F20002E772093E80001C0B90140E061157105EA
+:101F3000A9F12091DF01222309F443C0253009F4DF
+:101F400042C02091E80023FD40C02091E80022FD1E
+:101F500032C02091E80020FFE9CF4091F3002091AA
+:101F6000F20030E0342BFC01CF016115710559F00E
+:101F70002830310540F481918093F100615071095E
+:101F80002F5F3F4FF1CF41E02830310509F040E0AD
+:101F90002091E8002E772093E800C8CF4111C9CFE7
+:101FA0000AC08091DF01882361F0853061F0809163
+:101FB000E80083FD0AC08091E80082FFF2CF80E054
+:101FC000089582E0089583E0089581E008952091C6
+:101FD000E6013091E7012617370748F061157105D2
+:101FE00039F42091E8002E772093E80001C0B90170
+:101FF000FC0120E06115710591F18091DF018823DA
+:1020000009F440C0853009F43FC08091E80083FDA9
+:102010003DC08091E80082FD2FC08091E80080FFE4
+:10202000E9CF2091F3008091F20090E0922B6115AE
+:10203000710559F08830910540F424912093F10006
+:102040003196615071090196F2CF21E0089709F0AD
+:1020500020E08091E8008E778093E800CBCF2111BB
+:10206000CCCF0AC08091DF01882361F0853061F018
+:102070008091E80083FD0AC08091E80082FFF2CFE2
+:1020800080E0089582E0089583E0089581E0089556
+:10209000982F973058F59093E900981739F0709180
+:1020A000EC002091ED005091F00003C0242F762F1A
+:1020B00050E021FF19C03091EB003E7F3093EB00E0
+:1020C0003091ED003D7F3093ED003091EB003160B9
+:1020D0003093EB007093EC002093ED005093F000F0
+:1020E0002091EE0027FF07C09F5FD3CF8F708093B2
+:1020F000E90081E0089580E008958091E00187FF84
+:1021000011C08091E80082FD05C08091DF0181113E
+:10211000F8CF11C08091E8008B770BC08091DF0170
+:10212000882349F08091E80080FFF8CF8091E80093
+:102130008E778093E80008952091E4003091E500C7
+:1021400095E64091EC00842F817040FF22C0809181
+:10215000E80080FD1CC08091DF01882391F085306C
+:1021600091F08091EB0085FD10C04091E40050910A
+:10217000E5004217530729F39A01915011F784E0C3
+:10218000089582E0089583E0089581E0089580E055
+:1021900008954091E80042FFDECF08950E943C116F
+:1021A0000E944411E0EEF0E0808181608083E8EDE0
+:1021B000F0E080818F77808319BCA7EDB0E08C912F
+:1021C0008E7F8C9380818F7E80831092DE010895B4
+:1021D0000F931F93CF93DF930E943C110E944411F1
+:1021E000C8EDD0E088818F77888388818068888374
+:1021F00088818F7D888319BC1092DF011092DB01EA
+:102200001092DD011092DC0100EE10E0F8018081F7
+:102210008B7F808388818160888342E060E080E0FA
+:102220000E944810E1EEF0E080818E7F8083E2EE34
+:10223000F0E0808181608083808188608083F80104
+:1022400080818E7F8083888180618883DF91CF91B8
+:102250001F910F910895E8EDF0E080818F7E8083DB
+:10226000E7EDF0E080818160808384E082BF81E0DF
+:102270008093DE010C94E810E8EDF0E080818E7F21
+:1022800080831092E20008951092DA001092E1002B
+:1022900008951F920F920FB60F9211242F933F9320
+:1022A0004F935F936F937F938F939F93AF93BF935E
+:1022B000EF93FF938091E10082FF0BC08091E200D9
+:1022C00082FF07C08091E1008B7F8093E1000E9434
+:1022D0007C0D8091DA0080FF1FC08091D80080FFC4
+:1022E0001BC08091DA008E7F8093DA008091D90044
+:1022F00080FF0DC080E189BD82E189BD09B400FE87
+:10230000FDCF81E08093DF010E94550D05C019BC0F
+:102310001092DF010E94670D8091E10080FF19C0DB
+:102320008091E20080FF15C08091E2008E7F809353
+:10233000E2008091E20080618093E2008091D80009
+:1023400080628093D80019BC85E08093DF010E94F1
+:10235000720D8091E10084FF30C08091E20084FF23
+:102360002CC080E189BD82E189BD09B400FEFDCFAA
+:102370008091D8008F7D8093D8008091E1008F7E7E
+:102380008093E1008091E2008F7E8093E200809153
+:10239000E20081608093E2008091DB01882311F0EC
+:1023A00084E007C08091E30087FD02C081E001C0A6
+:1023B00083E08093DF010E94760D8091E10083FF2E
+:1023C00029C08091E20083FF25C08091E100877FD2
+:1023D0008093E10082E08093DF011092DB01809125
+:1023E000E1008E7F8093E1008091E2008E7F8093F8
+:1023F000E2008091E20080618093E20042E060E0D0
+:1024000080E00E9448108091F00088608093F00086
+:102410000E946E0DFF91EF91BF91AF919F918F91AF
+:102420007F916F915F914F913F912F910F900FBED0
+:102430000F901F9018951F920F920FB60F921124B4
+:102440002F933F934F935F936F937F938F939F93BC
+:10245000AF93BF93CF93DF93EF93FF93C091E900C6
+:10246000CF708091EC00D82FD17080FDD0E8109211
+:10247000E9008091F000877F8093F00078940E94BB
+:102480005F121092E9008091F00088608093F00064
+:10249000CD2BCF70C093E900FF91EF91DF91CF91E9
+:1024A000BF91AF919F918F917F916F915F914F916C
+:1024B0003F912F910F900FBE0F901F9018951F9373
+:1024C000CF93DF93CDB7DEB7AA970FB6F894DEBFF0
+:1024D0000FBECDBFE0EEF1E088E08E0F9091F100ED
+:1024E00091938E13FBCF0E94D10D8091E80083FF62
+:1024F0001FC18091E0019091E101492F50E04A30E5
+:10250000510508F015C1FA01EA5AFF4F0C948426D0
+:10251000803881F0823809F00BC18091E4018F701E
+:102520008093E9008091EB0085FB882780F9109269
+:10253000E90006C08091DC019091DD01911182607B
+:102540009091E800977F9093E8008093F1001092BB
+:10255000F100C8C0282F2D7F09F0EAC0882319F0A8
+:10256000823061F0E5C08091E201813009F0E0C085
+:10257000933009F080E08093DD012BC08091E2016F
+:10258000811127C08091E4018F7009F4D1C080933C
+:10259000E9002091EB0020FF1CC0933021F48091D2
+:1025A000EB00806214C09091EB0090619093EB007F
+:1025B00021E030E0A90102C0440F551F8A95E2F7DF
+:1025C0004093EA001092EA008091EB0088608093CB
+:1025D000EB001092E9008091E800877F86C08111AE
+:1025E000A7C01091E2011F778091E3008078812BD2
+:1025F0008093E3008091E800877F8093E8000E9449
+:102600007D108091E80080FFFCCF8091E30080681E
+:102610008093E300111102C082E001C083E0809347
+:10262000DF0186C08058823008F082C08091E201CC
+:102630009091E3018C3D53E0950779F583E08A831F
+:102640008AE289834FB7F894DE01139620E03EE0DA
+:1026500051E2E32FF0E050935700E49120FF03C0D4
+:10266000E295EF703F5FEF708E2F90E0EA3010F050
+:10267000C79601C0C0968D939D932F5F243149F773
+:102680004FBF8091E800877F8093E8006AE270E0A6
+:10269000CE0101960E94840F14C0AE014F5F5F4FC0
+:1026A0006091E4010E94CB0EBC01009709F440C088
+:1026B0009091E800977F9093E80089819A810E9429
+:1026C000E70F8091E8008B778093E80031C0803875
+:1026D00079F58091E800877F8093E8008091DB01A5
+:1026E0008093F1008091E8008E778093E8000E944B
+:1026F0007D101EC081111CC09091E2019230C0F487
+:102700008091E800877F8093E8009093DB010E942E
+:102710007D108091DB01811106C08091E30087FD6F
+:1027200002C081E001C084E08093DF010E94BD0D02
+:102730008091E80083FF0AC08091E800877F809342
+:10274000E8008091EB0080628093EB00AA960FB6C0
+:10275000F894DEBF0FBECDBFDF91CF911F910895DA
+:10276000CF938091DF018823A1F0C091E900CF7061
+:102770009091EC00892F817090FD80E8C82B109219
+:10278000E9008091E80083FD0E945F12CF70C09342
+:10279000E900CF9108959093730180937201089599
+:1027A000E0917201F0917301309721F00190F08176
+:1027B000E02D099480E00895EF92FF920F931F930C
+:1027C000CF93DF93E0917201F09173013097B1F1F3
+:1027D0008C010280F381E02D09958091D40182FF64
+:1027E0002DC080FF04C08EE495E00E943706E8010A
+:1027F00010E188E4E82E85E0F82E8091D40180FF76
+:102800000BC088811F928F93FF92EF920E94D00697
+:102810000F900F900F900F90115021961111EDCF46
+:102820008091D40180FF0AC086E495E0DF91CF91CA
+:102830001F910F91FF90EF900C943706DF91CF918D
+:102840001F910F91FF90EF900895209170013091AA
+:1028500071018217930771F0909371018093700159
+:10286000E0917201F0917301309721F00680F781B9
+:10287000E02D0994089520916E0130916F01821727
+:10288000930771F090936F0180936E01E091720154
+:10289000F0917301309721F00084F185E02D0994C7
+:1028A000089508950C9451140E9426200E94270B2D
+:1028B0000E94E8200C949B25CF93DF931F92CDB705
+:1028C000DEB79091D40192FF10C090FF0EC01F920E
+:1028D0008F9320E635E03F932F9389830E94D006A3
+:1028E0000F900F900F900F9089810F90DF91CF91F3
+:1028F0000C94110B9F92AF92BF92CF92DF92EF9206
+:10290000FF920F931F93CF93DF9300D000D000D09E
+:10291000CDB7DEB70E946C0B09E010E0AA24A394A7
+:10292000B12C902E802F0E94E70B98012B583E4F20
+:102930006901F901F080F826A1F40150110988F726
+:102940008FEF89838A831B820E942F208160782FDA
+:102950009D838C8349815A816B818D810E940F15E3
+:102960002FC09091D40191FF04C08E830E94ED0B83
+:102970008E8127E030E0A501022E01C0440F0A94A9
+:10298000EAF7E42E4F21C1F029839A828E2191E04B
+:1029900009F490E09B830E942F208160782F9D8313
+:1029A0008C8349815A816B818D810E940F15F601BC
+:1029B0008081E826E08204C021503109E0F6BDCFD5
+:1029C000109174010E94D0131817B9F00E94D0130F
+:1029D0008093740126960FB6F894DEBF0FBECDBF6C
+:1029E000DF91CF911F910F91FF90EF90DF90CF90EB
+:1029F000BF90AF909F900C945C1426960FB6F894FD
+:102A0000DEBF0FBECDBFDF91CF911F910F91FF9021
+:102A1000EF90DF90CF90BF90AF909F900895CF93AD
+:102A2000DF93CDB7DEB72B970FB6F894DEBF0FBE9E
+:102A3000CDBF4F83588769877A878B87DE011196D0
+:102A400086E0FD0111928A95E9F785E0FE0137964F
+:102A500001900D928A95E1F749815A816B817C81C1
+:102A60008D819E810E94771B2B960FB6F894DEBF56
+:102A70000FBECDBFDF91CF910895CF93882309F486
+:102A8000C2C0C82F823859F40E94D01381FDBBC048
+:102A900089E30E94511E0E94431F89E30CC08338C2
+:102AA00079F40E94D01380FDAEC083E50E94511ED0
+:102AB0000E94431F83E50E94A41ECF910C94431FE4
+:102AC000843859F40E94D01382FD9DC087E40E948F
+:102AD000511E0E94431F87E4EECF8CEF8C0F813A8A
+:102AE00048F48C2F0E944C2581118DC08C2F0E94A0
+:102AF000511EE3CF80E28C0F883048F4C77081E02C
+:102B000001C0880FCA95EAF70E94FC1ED6CF8BE55C
+:102B10008C0F833078F4C53A29F0C63A31F083E857
+:102B200090E005C081E890E002C082E890E0CF919B
+:102B30000C94251488E58C0F833108F064C0C83AE2
+:102B400039F1C93A41F1CA3A49F1CB3A51F1CC3A9B
+:102B500059F1CD3A61F1C03B69F1CE3A71F1CF3A0A
+:102B600079F1C13B81F1C23B89F1C33B91F1C43B97
+:102B700099F1C53BA1F1C63BA9F1C73BB1F1C83BF7
+:102B8000B9F1C93BC1F1CA3BC9F180E090E038C05E
+:102B900082EE90E035C089EE90E032C08AEE90E09F
+:102BA0002FC085EB90E02CC086EB90E029C087EB2E
+:102BB00090E026C08CEC90E023C08DEC90E020C02B
+:102BC00083E891E01DC08AE891E01AC082E991E0B3
+:102BD00017C084E991E014C081E292E011C083E261
+:102BE00092E00EC084E292E00BC085E292E008C061
+:102BF00086E292E005C087E292E002C08AE292E0BB
+:102C0000CF910C943B14CF910895882309F44BC0C5
+:102C1000823859F40E94D01381FF45C089E30E9495
+:102C2000511E0E94431F89E30CC0833871F40E9437
+:102C3000D01380FF38C083E50E94511E0E94431FBD
+:102C400083E50E94A41E0C94431F843859F40E940B
+:102C5000D01382FF28C087E40E94511E0E94431FA8
+:102C600087E4EFCF9CEF980F913A58F390E2980FDA
+:102C7000983050F4877091E001C0990F8A95EAF777
+:102C8000892F0E94021FDFCF9BE5980F933020F41D
+:102C900080E090E00C942514885A833120F480E081
+:102CA00090E00C943B140895882321F00E94FC1EB0
+:102CB0000C94431F0895882321F00E94021F0C9456
+:102CC000431F08957F928F929F92AF92BF92CF92AF
+:102CD000DF92EF92FF920F931F93CF93DF931F9298
+:102CE000CDB7DEB77C01C62E772EFC01058102959B
+:102CF0000F70128111110E94191F0E944A1E882311
+:102D000079F0112369F080E28C0D883048F082E080
+:102D10000E94331E0E944A1E91E0D82ED92601C07F
+:102D2000D12CE72DE295EF70F0E0E05AFF4F0C94C4
+:102D30008426872D807F072D0F70882311F0029540
+:102D4000007F112389F0002309F48EC180E28C0DED
+:102D5000883020F4802F0E94FC1E03C0802F0E9428
+:102D60000C1F0E94431F80C18C2D0E94051600235A
+:102D700009F4B8C180E28C0D883020F4802F0E94C5
+:102D8000021F03C0802F0E94121F0E94431FAAC16E
+:102D9000872D807F972D9F70803211F4892F03C07B
+:102DA000892F8295807FCC2021F0F1E0CF16A1F011
+:102DB0001DC0112339F0002319F1013009F50E94DB
+:102DC0002C1F90C1002319F0013009F48BC18983B5
+:102DD0000E942F1F898105C1112321F0063008F0C0
+:102DE00081C10EC0053008F07DC1FBC0112359F030
+:102DF000002331F0F701958190FF36C19F709583D4
+:102E00000E9454166FC1002309F4EBC033C1872D13
+:102E100086958695837090E0009719F0019761F090
+:102E200061C1112321F08C2D972D937002C080E099
+:102E300090E00E94251456C1112321F08C2D972D6E
+:102E4000937002C080E090E00E943B144BC1872D3C
+:102E5000837009F052C0111145C18C2D8295869561
+:102E60008770880F880F9C2D9F70892E912CA12C24
+:102E7000B12C082E04C0880C991CAA1CBB1C0A94F7
+:102E8000D2F7C4FE14C00FE010E020E030E0B9013A
+:102E9000A80104C0440F551F661F771F8A95D2F7FB
+:102EA000CB01BA01609570958095909503C060E064
+:102EB00070E0CB01272D26952695237030E0223037
+:102EC000310569F02330310589F0682979298A298B
+:102ED0009B292130310571F00E94BF1C03C1682974
+:102EE00079298A299B290E94DB1CFCC00E94BF1CF7
+:102EF000C501B4010E94A31CF5C0112319F0872D50
+:102F0000817001C08695882309F4ECC08C2D8295D0
+:102F100086958770880F880F9C2D9F70892E912C25
+:102F2000A12CB12C082E04C0880C991CAA1CBB1C17
+:102F30000A94D2F7C4FE14C00FE010E020E030E0A5
+:102F4000B901A80104C0440F551F661F771F8A9559
+:102F5000D2F7CB01BA01609570958095909503C02A
+:102F600060E070E0CB01272D269526952370422F37
+:102F700050E04230510569F04330510589F068292D
+:102F800079298A299B294130510571F00E94991DA8
+:102F9000A9C0682979298A299B290E94B51DA2C048
+:102FA0000E94991DC501B4010E947D1D9BC08C2DFE
+:102FB00090E0FC01E05EF109E531F10508F050C058
+:102FC000E059FF4F0C9484260C2D0F70872D8F71C4
+:102FD000112321F00E94161D802F12CF0E94371D51
+:102FE000802F0E945B167EC0112341F0053008F04F
+:102FF00079C0872D8F710E945C1D74C0063008F067
+:1030000071C0F7CF112339F0872D8F710E94161DE3
+:1030100069C01123C9F3872D8F710E94371D62C0CB
+:10302000112329F0872D8F710E94011D5BC00E9422
+:10303000F71C58C0112351F0172D1F71812F0E94CA
+:10304000161D63E0812F0E942A1E4CC081E00E9461
+:10305000331E023008F446C082E00E94331E42C094
+:10306000112331F0002381F28C2D0E943D153AC0CE
+:10307000002389F28C2D0E94051634C0472D4F7015
+:103080006C2DC7010E94EA070E941B1C2BC0111166
+:1030900029C0472D4F7050E042305105B9F04CF433
+:1030A0004115510581F041305105E1F40E94D025D0
+:1030B00019C04330510569F04430510599F48C2D05
+:1030C0000E945B260FC00E94AC250CC00E94FF2509
+:1030D00009C00E94252606C0472D4F706C2DC701E0
+:1030E0000E941007DD20F9F00E94261E80FD1BC003
+:1030F000F70112820E94201E0E94161DC7010E9425
+:10310000A2180E94201E0F90DF91CF911F910F9166
+:10311000FF90EF90DF90CF90BF90AF909F908F90F7
+:103120007F900C94371D0F90DF91CF911F910F91DD
+:10313000FF90EF90DF90CF90BF90AF909F908F90D7
+:103140007F9008950F931F93CF93DF93EC018881B5
+:1031500099812B813C81232BB9F09F3F11F48F3F44
+:1031600099F0CE010E943E07882371F06881798131
+:103170008A810E941C1E8C010E94D11D0E94981CF5
+:10318000B801CE010E946216DF91CF911F910F917D
+:1031900008950E94191F0E94291F0E94EB1E0E9481
+:1031A000431F80E090E00E94251480E090E00C94A2
+:1031B0003B140E94091F0C94C9180E94111E292F4C
+:1031C00022952F7030E02C3031054CF42A30310537
+:1031D0006CF42250310922303105A8F407C02C309C
+:1031E000310569F02F30310551F00DC0803F69F095
+:1031F00018F4803E40F409C0843F29F406C093FBD4
+:10320000882780F9089580E0089581E00895CF939C
+:10321000DF9300D000D01F92CDB7DEB70F900F9094
+:103220000F900F900F90DF91CF910895CF93DF9380
+:1032300000D000D000D0CDB7DEB726960FB6F894F8
+:10324000DEBF0FBECDBFDF91CF9108951F93CF9307
+:10325000DF93C0917F0116E080918001C81799F03B
+:10326000D0E01C9FF0011D9FF00D1124EF57FE4F81
+:103270004081518162817381848195810E941619F8
+:103280002196C770E9CFDF91CF911F9108954091AA
+:10329000B1015091B2016091B3017091B40180917C
+:1032A000B5019091B6010C9416198091B6018295E2
+:1032B0008F7009F054C08091B301882309F44FC086
+:1032C00080917F01A09180016091B1017091B20164
+:1032D0004091B4015091B501B6E08A1709F43FC09E
+:1032E00090E041155105C1F17F3F11F46F3FA1F10D
+:1032F000B89FF001B99FF00D1124EF57FE4F2181C7
+:1033000072132AC02081621327C02281211124C098
+:10331000238134812417350710F421503109241BEF
+:10332000350B283C3105C0F42091B6012F70206187
+:103330002093B60126E0289FF001299FF00D11246B
+:10334000EA57FE4F80818F708061808381EB91E02E
+:103350000E94A2180C94261901968770BECF08957A
+:10336000CF92DF92EF92FF920F931F93CF93DF9351
+:10337000CDB7DEB762970FB6F894DEBF0FBECDBFF4
+:103380008C0185E0F801DE011D9601900D928A9571
+:10339000E1F7D8014C9111965C91119712966C91BE
+:1033A00012971396CD90DC9014973091B1017091E3
+:1033B000B2018091B4019091B501009709F46BC1FD
+:1033C0007F3F19F43F3F09F466C1E090B301EE205E
+:1033D00009F4C0C02091B601C816D90628F0F6013C
+:1033E000E81BF90BCF0104C0809590958C0D9D1DB5
+:1033F000FF24F394883C910578F0F12C207F09F0AC
+:10340000C6C07C2DD98AC88A89890E94071981EB98
+:1034100091E00E94A218B1C0822F807F09F046C0BF
+:10342000751314C0341312C0611110C02F702061C5
+:103430002093B6010E94471981EB91E00E94A218E7
+:103440008091B601D80115968C932EC0CD2819F124
+:103450005F3F11F44F3FF9F0F62E61111CC08091CF
+:103460007F012091800136E0821709F45AC090E074
+:10347000389FF001399FF00D1124EF57FE4F7181F5
+:10348000571306C07081471303C07281711103C0C6
+:1034900001968770E9CFF62E662309F418C1809152
+:1034A000B60181608093B601F12C11C1751308C07B
+:1034B000341306C0611104C08091B601D801C3C0A5
+:1034C0004D875E878D859E856A8B0E94DD186A898F
+:1034D0008823E1F16623D1F12091B601822F8295F4
+:1034E0008F7090E0029774F08091B1019091B201D9
+:1034F00098878F831986DB86CA862C87CE0107962C
+:103500000E94A21886E0F801A1EBB1E001900D92B3
+:103510008A95E1F70E9455190E944719FF24F394F8
+:10352000D6C04D875E878D859E850E94111E292FEE
+:1035300022952F7030E0223031050CF0BCC09F7016
+:1035400009F0B6C0805E883008F4C1C0C8010E948E
+:10355000A218E4CFC816D90608F453C0F601E81B38
+:10356000F90BCF01883C910508F450C0F12C7C2D5B
+:10357000D98AC88A89890E940719E1EBF1E086E0BF
+:10358000DF011D928A95E9F70E944719A0C07513C3
+:1035900014C0341312C0611110C08091B601F8013B
+:1035A0008583C8010E94A21886E0E1EBF1E0DF010B
+:1035B0001D928A95E9F7FE2C8AC04D875E878D851E
+:1035C0009E856A8B0E94DD186A89882309F4BECF24
+:1035D000662309F4BBCF2091B601822F82958F70AC
+:1035E00090E002970CF48ECF8091B1019091B201DE
+:1035F0009A8389831B82DD82CC822E83CE01019641
+:103600007FCF809590958C0D9D1DACCFF62E6623B7
+:1036100009F49CCF75132EC034132CC02091B60131
+:1036200020FD1FC0822F82958F70D9F0D80115968A
+:103630002C9315978F3049F08F5F982F9295907F3C
+:10364000822F8F70892B15968C93C8010E94A21827
+:1036500086E0F801A1EBB1E001900D928A95E1F7C7
+:1036600093CF86E0F801A1EBB1E001900D928A952D
+:10367000E1F72DC04D875E878D859E850E94DD1800
+:10368000811140CF8091B60181608093B601C8015D
+:103690000E94A2181CC0662309F458CF4D875E878C
+:1036A0008D859E850E94DD18882309F44FCF2ACF8F
+:1036B000811148CF0CC0243031050CF047CF9F70EA
+:1036C00009F440CFF8019581907F09F03BCF8F2D11
+:1036D00062960FB6F894DEBF0FBECDBFDF91CF91DB
+:1036E0001F910F91FF90EF90DF90CF9008951F935F
+:1036F000CF93DF93CDB7DEB72C970FB6F894DEBF2C
+:103700000FBECDBF4F83588769877A878B879C8789
+:10371000CE0107960E94B019882369F08F819885A1
+:103720002A853B85232BF1F19F3F09F063C08F3F32
+:1037300009F060C037C086E0FE013796DE011196C1
+:1037400001900D928A95E1F76F817885EA85FB8576
+:10375000309741F17F3F11F46F3F21F120918001BB
+:1037600030E0C90101968770992740917F0150E0B0
+:103770008417950709F447C069837A83FD83EC8336
+:1037800096E0929FD001939FB00D1124AF57BE4F8A
+:10379000FE01319601900D929A95E1F78093800198
+:1037A0000E94261916E080917F019091800189176F
+:1037B000C1F1189FC00111248F579E4F0E94B0196C
+:1037C000882379F1E0917F011E9FF0011124EF57CA
+:1037D000FE4F4081518162817381848195810E9475
+:1037E000161980917F0190E0019687709927809348
+:1037F0007F01D9CF4F81588569857A858B859C85D6
+:103800000E941619CFCF0E94D918109280011092F1
+:103810007F01E1EBF1E086E0DF011D928A95E9F797
+:10382000C1CF2C960FB6F894DEBF0FBECDBFDF918F
+:10383000CF911F910895EF92FF920F931F93CF9313
+:10384000DF938C01009709F46CC0F12CEE24E39413
+:10385000E8012196F8018491843740F4843008F01F
+:1038600051C0813081F0823019F15BC0853709F495
+:1038700044C0A8F19CE7980F903708F052C08F77AA
+:103880000E94051641C00E5F1F4FFE01C49180E2E9
+:103890008C0F883048F4C7708E2D01C0880FCA95F0
+:1038A000EAF70E941C1F14C08C2F0E943D152DC0EA
+:1038B0000E5F1F4FFE01C49180E28C0F883058F4D8
+:1038C000C7708E2D01C0880FCA95EAF70E94221F8B
+:1038D0000E94431F1AC08C2F0E94051616C00E5F4F
+:1038E0001F4FFE01C491CC2381F08FE99FE0019727
+:1038F000F1F700C00000C150F6CF0E5F1F4FFE0170
+:10390000F49003C00E943D158E018F2D882309F489
+:103910009FCFEFE9FFE03197F1F700C00000815041
+:10392000F5CFDF91CF911F910F91FF90EF90089508
+:1039300008956093BB017093BC018093BD01909387
+:10394000BE010C94C9180F931F930091BB011091F5
+:10395000BC012091BD013091BE01DC01CB01802B67
+:10396000912BA22BB32B8093BB019093BC01A0930E
+:10397000BD01B093BE011F910F910C94C9180F9314
+:103980001F930091BB011091BC012091BD013091AA
+:10399000BE01DC01CB0180239123A223B3238093BA
+:1039A000BB019093BC01A093BD01B093BE011F91D8
+:1039B0000F910C94C9180F931F930091BB011091A4
+:1039C000BC012091BD013091BE01DC01CB018027FB
+:1039D0009127A227B3278093BB019093BC01A093AA
+:1039E000BD01B093BE011F910F910C94C9181092A4
+:1039F000B7011092B8011092B9011092BA010C945B
+:103A0000C91841E050E060E070E004C0440F551F69
+:103A1000661F771F8A95D2F74093B7015093B8017C
+:103A20006093B9017093BA010C94C91841E050E059
+:103A300060E070E004C0440F551F661F771F8A9531
+:103A4000D2F78091B7019091B801A091B901B091DE
+:103A5000BA01482B592B6A2B7B2B4093B70150930B
+:103A6000B8016093B9017093BA010C94C91841E090
+:103A700050E060E070E004C0440F551F661F771FE0
+:103A80008A95D2F740955095609570958091B701D1
+:103A90009091B801A091B901B091BA01482359237E
+:103AA0006A237B234093B7015093B8016093B90117
+:103AB0007093BA010C94C91841E050E060E070E0E6
+:103AC00004C0440F551F661F771F8A95D2F7809157
+:103AD000B7019091B801A091B901B091BA014827FE
+:103AE00059276A277B274093B7015093B801609309
+:103AF000B9017093BA010C94C9180F931F930091E8
+:103B0000B7011091B8012091B9013091BA01DC01DF
+:103B1000CB01802B912BA22BB32B8093B7019093D9
+:103B2000B801A093B901B093BA011F910F910C9401
+:103B3000C9180F931F930091B7011091B8012091FC
+:103B4000B9013091BA01DC01CB0180239123A2237A
+:103B5000B3238093B7019093B801A093B901B093B8
+:103B6000BA011F910F910C94C9180F931F930091E4
+:103B7000B7011091B8012091B9013091BA01DC016F
+:103B8000CB0180279127A227B3278093B701909379
+:103B9000B801A093B901B093BA011F910F910C9491
+:103BA000C9180895CF92DF92EF92FF920F931F935F
+:103BB000CF93DF938C01C090BB01D090BC01E0900B
+:103BC000BD01F090BE018091B7019091B801A09124
+:103BD000B901B091BA01C82AD92AEA2AFB2ACFE151
+:103BE000D0E0D701C6010C2E04C0B695A7959795D5
+:103BF00087950A94D2F780FF06C0B8018C2F0E94E7
+:103C0000740A019721F4219760F780E001C08C2F9E
+:103C1000DF91CF911F910F91FF90EF90DF90CF90A8
+:103C20000895CF93DF93EC010E94D21DBE010E9444
+:103C3000740ADF91CF910895CB010E94111E08955F
+:103C40008091BF0185958595859508958091BF01E7
+:103C50008770089598E0899F90011124262B209366
+:103C6000BF010C94161D2091BF0180958223809383
+:103C7000BF01982F977069F430E0482F552747FD12
+:103C800050952417350729F08595859585950C94D1
+:103C9000371D08959091BF01977081E009F480E08D
+:103CA000089590910B01992321F090910C019111AD
+:103CB00009C020910D0130910E01F90132969FEF5C
+:103CC00040E030C0982F9695969596959F30A0F439
+:103CD000E0910D01F0910E01E90FF11D877021E0D7
+:103CE00030E0A90102C0440F551F8A95E2F7CA01CE
+:103CF0009181892B818308959091D40190FF23C0F5
+:103D00001F928F9387E995E09F938F930E94D0062F
+:103D10000F900F900F900F9008959F3F39F04F5FD5
+:103D20004E3041F051915813F8CF0DC05111F7CFDB
+:103D3000942FF5CF9F3F39F0F901E90FF11D97FD61
+:103D4000FA9582830895089590910B01992321F0AB
+:103D500090910C01911109C020910D0130910E013B
+:103D6000F9013296205F3F4F30C0982F9695969577
+:103D700096959F30A8F4E0910D01F0910E01E90FA6
+:103D8000F11D877021E030E0A90102C0440F551FEA
+:103D90008A95E2F7CA0180959181892381830895EC
+:103DA0009091D40190FF16C01F928F9389E795E000
+:103DB0009F938F930E94D0060F900F900F900F90BB
+:103DC00008953196E217F30729F090819813F9CFFF
+:103DD0001082F7CF089581E090E0E0910D01F0911D
+:103DE0000E01E80FF91F1082019680319105A9F7A5
+:103DF00008958091D30108959091D301892B8093E8
+:103E0000D301089580959091D30189238093D301A4
+:103E100008951092D30108959091D201892B809337
+:103E2000D201089580959091D20189238093D20187
+:103E300008951092D20108959091D101892B809319
+:103E4000D101089580959091D10189238093D1016A
+:103E500008951092D10108958093C00108951092A1
+:103E6000C001089580910D0190910E01FC013196E1
+:103E70009C01205F3F4F80E0919191118F5FE2178D
+:103E8000F307D1F70895E0910D01F0910E018091B3
+:103E9000D3018083E0910D01F0910E01908180911A
+:103EA000D201892B8083E0910D01F0910E01908168
+:103EB0008091D101892B80838091C001882361F09A
+:103EC000E0910D01F0910E019081892B80830E9479
+:103ED000321F81111092C00180910D0190910E014D
+:103EE0000C94DC139093370180933601089520E001
+:103EF000009739F0AC0141505109842395232F5F7D
+:103F0000F7CF822F08958295982F9C7C392F369574
+:103F10003695282F237344E0249FC0011124932F4A
+:103F2000982B292F2A7A2695892F8575880F822B21
+:103F300008951F93CF93DF931F92CDB7DEB7998378
+:103F40000E94831F182F9981892F0E94831F212F80
+:103F500030E0322F2227A901482BCA010F90DF91B0
+:103F6000CF911F9108958091DF01843039F1109233
+:103F7000D50120E488E190E00FB6F894A8958093ED
+:103F800060000FBE2093600080E00E94E40680E0A5
+:103F90000E94110B83B7817F846083BF83B78160E8
+:103FA00083BF7894889583B78E7F83BF88E10FB6EF
+:103FB000F89480936000109260000FBE08950895F9
+:103FC000089580E00E94E4060E94DF1F0E946C0BAF
+:103FD0000E94E01F0E941F0C91E0811101C090E03F
+:103FE000892F08950E94D91880E00E94E4060E945B
+:103FF0009B250E94D0130C94110B1F920F920FB6A9
+:104000000F9211248F939F93AF93BF938091D5010B
+:10401000811113C08091D6019091D701A091D80150
+:10402000B091D9014196A11DB11D8093D601909305
+:10403000D701A093D801B093D901BF91AF919F91BF
+:104040008F910F900FBE0F901F90189582E084BD46
+:1040500093E095BD9AEF97BD80936E0008952FB7BA
+:10406000F8948091D6019091D701A091D801B09198
+:10407000D9012FBF0895CF92DF92EF92FF920F9355
+:104080001F932FB7F8944091D6015091D7016091BA
+:10409000D8017091D9012FBF6A017B01EE24FF2462
+:1040A0008C0120E030E0C016D106E206F30610F4E1
+:1040B000415051099A01281B390BC9011F910F91D9
+:1040C000FF90EF90DF90CF9008951F920F920FB660
+:1040D0000F9211248F939F93AF93BF938091D6013A
+:1040E0009091D701A091D801B091D9010196A11D5D
+:1040F000B11D8093D6019093D701A093D801B093BE
+:10410000D901BF91AF919F918F910F900FBE0F90EA
+:104110001F9018950E94CE10F8942FEF87EA91E631
+:10412000215080409040E1F700C0000087E090EB14
+:10413000DC018093EA019093EB01A093EC01B09332
+:10414000ED019CE088E10FB6F894A895809360009B
+:104150000FBE90936000FFCFEF92FF920F931F93DB
+:10416000CF93DF93D82FC9E08C2F0E94E70B07E095
+:1041700010E0E82EF12CC701002E02C0959587951E
+:104180000A94E2F780FF09C0602F7C2F80E00E9434
+:10419000ED07D81302C081E006C00150110958F79D
+:1041A000C15010F780E0DF91CF911F910F91FF90E8
+:1041B000EF900895CF93C82F8CE20E94AC20882303
+:1041C00021F08C2FCF910C94AC2080E0CF910895FA
+:1041D000CF930E943C22811102C00E941D228CEBD1
+:1041E00095E00E943706C5E6C15049F00E946C0B6D
+:1041F0008FE39CE90197F1F700C00000F5CF85EB54
+:1042000095E00E94370689E20E94DA20811113C1ED
+:104210008AE20E94DA2081110E941D2285E00E941C
+:10422000DA2081110E948A200E9447228093D401C3
+:1042300087E00E94DA208823A9F18BE10E94DA202E
+:10424000882351F08091D40181FB222720F991E04D
+:10425000922790FB81F90EC08EE00E94DA2088231D
+:1042600061F08091D40182FB222720F991E092270E
+:1042700090FB82F98093D40115C080E10E94DA207E
+:104280009091D401882341F093FB222720F981E00B
+:10429000822780FB93F904C0892F809580FB90F9D9
+:1042A0009093D4018091D4010E944B220E94592204
+:1042B0008093E80180EE0E94DA20882341F080910B
+:1042C000E801982F909590FB80F98093E80189E3AD
+:1042D0000E94DA20882359F08091E80181FB22278F
+:1042E00020F991E0922790FB81F98093E80182EE1A
+:1042F0000E94DA20882359F08091E80182FB22276E
+:1043000020F991E0922790FB82F98093E80186EEF4
+:104310000E94DA20882359F08091E80183FB22274C
+:1043200020F991E0922790FB83F98093E80183EED6
+:104330000E94DA20882359F08091E80184FB22272B
+:1043400020F991E0922790FB84F98093E80185E3BE
+:104350000E94DA20882359F08091E80185FB22270A
+:1043600020F991E0922790FB85F98093E80181E3A1
+:104370000E94DA20882359F08091E80186FB2227E9
+:1043800020F991E0922790FB86F98093E80181E182
+:104390000E94DA20882359F08091E80187FB2227C8
+:1043A00020F991E0922790FB87F98093E8018091B2
+:1043B000E8010E945D228091E80187FB882780F94F
+:1043C00080930C0187E20E94DA20C82F8EE10E94C0
+:1043D000DA208111C2608FE10E94DA208111C4606D
+:1043E00080E20E94DA208111C86081E20E94DA2016
+:1043F0008111C06182E20E94DA208111C06283E2F1
+:104400000E94DA208111C06484E20E94DA208823AD
+:1044100011F0C06802C0CC2329F08C2F0E945422D6
+:104420006C2F03C00E945022682F70E080E090E063
+:10443000CF910C94991CCF9108956DEE7EEF80E0A2
+:1044400090E00E94AA2660E082E090E00E94982618
+:1044500060E083E090E00E94982660E084E090E0D5
+:104460000E94982660E085E090E00E94982660E037
+:1044700086E090E00C94982680E090E00E949226DE
+:1044800021E08D3E9E4F09F020E0822F089582E0CA
+:1044900090E00C948A26682F82E090E00C94982695
+:1044A00083E090E00C948A26682F83E090E00C94DF
+:1044B000982684E090E00C948A26682F84E090E0AF
+:1044C0000C94982686E090E00C948A26682F86E06B
+:1044D00090E00C949826CF93C82F1F928F9387ED6E
+:1044E00095E09F938F930E94D00681E090E0A0E03A
+:1044F000B0E0BC01CD0104C0660F771F881F991F73
+:10450000CA95D2F70E94991C0F900F900F900F90B0
+:10451000CF910C94D918CF938B3109F40FC208F0C6
+:1045200049C08E3009F41EC200F5873009F4E7C196
+:10453000A8F4863009F0A4C28091D401817F8E7FD7
+:104540008093D40185E797E00E94370681E69BE0DF
+:104550000E94370681E08093DA01CFC1883009F4E8
+:104560005BC08B3009F4C5C18BC2813109F470C2C4
+:1045700020F4803109F40AC283C2863109F421C2D1
+:10458000893109F07DC286E697E00E9437068BE309
+:1045900097E00E94370689EE96E00E9437068CEB82
+:1045A00096E00E94370680E896E00E94370685E58F
+:1045B00096E0A1C1853309F45FC268F4873209F43B
+:1045C0005BC228F48E3108F45BC28D5156C2893229
+:1045D00009F452C255C2833438F48A3308F04AC20F
+:1045E000883309F486C14CC2833409F445C2883447
+:1045F00009F046C20E94D91885E49BE00E94370664
+:104600009FEF23ED80E3915020408040E1F700C010
+:1046100000000E948A2071C185E69BE00E94370657
+:1046200082EB9AE00E9437060E9450221F928F93DD
+:104630008FEA9AE09F938F930E94D0068DEA9AE0CA
+:104640000E9437060E944722C82F8AE99AE00E94FA
+:1046500037061F92CF9385E99AE09F938F930E942C
+:10466000D00683E99AE00E94370689E89AE00E9422
+:1046700037068C2F81701F928F9386E89AE09F9364
+:104680008F930E94D00684E89AE00E9437068AE75A
+:104690009AE00E943706C1FB882780F91F928F930A
+:1046A00087E79AE09F938F930E94D00685E79AE070
+:1046B0000E94370689E69AE00E943706C2FB8827E7
+:1046C00080F91F928F9386E69AE09F938F930E94C2
+:1046D000D00684E69AE00E9437068BE59AE00E94B5
+:1046E0003706C3FBCC27C0F91F92CF9388E59AE029
+:1046F0009F938F930E94D00686E59AE00E9437062A
+:104700000E945922C82F82E49AE00E9437061F9225
+:10471000CF938DE39AE09F938F930E94D0068BE313
+:104720009AE00E94370682E29AE00E9437068C2FB8
+:1047300081701F928F938FE19AE09F938F930E94D5
+:10474000D0068DB79EB780960FB6F8949EBF0FBE69
+:104750008DBF8DE19AE00E94370686E09AE00E94C4
+:104760003706C1FB882780F91F928F9383E09AE078
+:104770009F938F930E94D00681E09AE00E943706B3
+:104780008FEE99E00E943706C2FB882780F91F92BE
+:104790008F938CEE99E09F938F930E94D0068AEEC0
+:1047A00099E00E94370688ED99E00E943706C3FB26
+:1047B000882780F91F928F9385ED99E09F938F93BF
+:1047C0000E94D00683ED99E00E94370689EC99E0BB
+:1047D0000E943706C4FB882780F91F928F9386ECCE
+:1047E00099E09F938F930E94D00684EC99E00E94F9
+:1047F000370682EB99E00E943706C5FB882780F9CF
+:104800001F928F938FEA99E09F938F930E94D00617
+:104810008DEA99E00E94370681E999E00E94370607
+:10482000C6FB882780F91F928F938EE899E09F93AB
+:104830008F930E94D0068CE899E00E94370684E8A6
+:1048400099E00E943706C7FBCC27C0F91F92CF938F
+:1048500081E899E09F938F930E94D0068FE799E0BB
+:104860000E9437060E946222C82F88E699E00E94C3
+:1048700037061F92CF9383E699E09F938F930E9410
+:10488000D0068DB79EB780960FB6F8949EBF0FBE28
+:104890008DBF81E699E00E94370687E599E00E9486
+:1048A00037068C2F81701F928F9384E599E09F9338
+:1048B0008F930E94D00682E599E00E94370689E432
+:1048C00099E00E943706C6951F92CF9386E499E03F
+:1048D0009F938F930E94D00684E499E00E9437064C
+:1048E0008DB79EB708960FB6F8949EBF0FBE8DBFCA
+:1048F00004C080E997E00E943706C1E0C6C08091FD
+:10490000D401C82FC095C170C0FB80F98093D40139
+:10491000CC2349F089E39BE00E9437068091D401C3
+:104920008660886048C08CE29BE00E9437068091D8
+:10493000D401897F877F8093D401DFCF9091D40108
+:1049400091FBCC27C0F981E0C827892FC0FB81F9F2
+:104950008093D401CC2319F08FE19BE027C081E143
+:104960009BE0C9CF9091D40192FBCC27C0F981E0A4
+:10497000C827892FC0FB82F98093D401CC2319F07A
+:1049800082E09BE013C082EF9AE0B5CF9091D40112
+:1049900093FBCC27C0F981E0C827892FC0FB83F99E
+:1049A0008093D401CC2351F086EE9AE00E94370622
+:1049B0008091D40181608093D40167C089ED9AE031
+:1049C0009ACF87E496E00E9437060E94D0131F9288
+:1049D0008F938DE296E09F938F930E94D0068091F3
+:1049E0000B011F928F9386E196E09F938F930E9415
+:1049F000D00680916D011F928F9383E096E09F9384
+:104A00008F930E94D00680910C011F928F9380EFAC
+:104A100095E09F938F930E94D0068091D60190914C
+:104A2000D701A091D801B091D901BF93AF939F93C3
+:104A30008F938CED95E09F938F930E94D0068DB756
+:104A40009EB746960FB6F8949EBF0FBE8DBF55CF4A
+:104A50000E94D918C0910C0181E0C827C0930C01B5
+:104A6000CC2329F08FEC9AE00E9437060EC084EC2C
+:104A70009AE041CF895301C080E00E946B223DCF74
+:104A800082EC9AE00E943706C0E08C2FCF91089507
+:104A900080E0089580E00895CF93C82F8091DA01D7
+:104AA000882319F0813049F03EC0E0910D01F0916A
+:104AB0000E0180818232C9F507C0E0910D01F091AD
+:104AC0000E018081823261F48C2F0E944825811171
+:104AD00004C08C2F0E948B2224C081E090E021C072
+:104AE0008C2F0E944A2581111BC0C43189F018F413
+:104AF000CB3029F010C0C93259F0C83361F485E7D2
+:104B000097E00E94370683ED95E00E94370608C0C3
+:104B10001092DA010CC081ED95E00E94370607C0C3
+:104B200081E0817006C01092DA0180E002C080E06E
+:104B3000F8CFCF9108950E943C22811102C00E94BB
+:104B40001D220E9462228093E90180FF02C08695A7
+:104B500001C080E00C94E4068091E901982F9695BD
+:104B600039F48170826081608093E9010E9466223D
+:104B70008091D40180FF0FC08091E90186951F923A
+:104B80008F9382EB9BE09F938F930E94D0060F90B0
+:104B90000F900F900F908091E90186950C94E40698
+:104BA0008091E901982F969591F09158990F817015
+:104BB000892B8093E9018E7F91E009F490E0809148
+:104BC000E90190FB80F98093E9010E9466228091BF
+:104BD000D40180FF0FC08091E90186951F928F93C9
+:104BE0008AE99BE09F938F930E94D0060F900F90CD
+:104BF0000F900F908091E90186950C94E4068091C6
+:104C0000E901982F909590FB80F98093E9010E942B
+:104C100066228091D40180FF0FC08091E9018170EC
+:104C20001F928F9384E89BE09F938F930E94D006FE
+:104C30000F900F900F900F908091E90180FF02C0BC
+:104C4000869501C080E00C94E4069091E901892FDB
+:104C500086958F5F8F779170823028F4880F892B2B
+:104C60008093E90102C09093E9018091E9018E7F70
+:104C700091E009F490E08091E90190FB80F9809344
+:104C8000E9010E9466228091D40180FF0FC08091CB
+:104C9000E90186951F928F9380E79BE09F938F9306
+:104CA0000E94D0060F900F900F900F908091E90115
+:104CB00086950C94E4062091E901922F9695892718
+:104CC000982F990F822F8170892B8093E9018E7F15
+:104CD00091E009F490E08091E90190FB80F98093E4
+:104CE000E9010E9466228091E90186950C94E40610
+:104CF000991B79E004C0991F961708F0961B881F2E
+:104D00007A95C9F780950895EE0FFF1F0590F491ED
+:104D1000E02D0994F999FECF92BD81BDF89A9927AB
+:104D200080B50895A8E1B0E042E050E00C94B226CE
+:104D3000262FF999FECF92BD81BDF89A019700B454
+:104D4000021639F01FBA20BD0FB6F894FA9AF99AF4
+:104D50000FBE08950196272F0E9499260C9498263D
+:104D6000DC01CB01FC01F999FECF06C0F2BDE1BD2B
+:104D7000F89A319600B40D9241505040B8F708951A
+:044D8000F894FFCFD5
+:104D8400FF350C040D380CD00C9C0C0101C1010F33
+:104D94001F4F5F6F7F6C1323766663530333593958
+:104DA400293F3620390705D104B104780404041DD1
+:064DB40004360456040061
+:00000001FF
diff --git a/keyboard/clueboard2/keymaps/default/keymap.c b/keyboard/clueboard2/keymaps/default/keymap.c new file mode 100644 index 000000000..73179f94c --- /dev/null +++ b/keyboard/clueboard2/keymaps/default/keymap.c @@ -0,0 +1,183 @@ +#include "clueboard2.h" + +#ifdef RGBLIGHT_ENABLE +#include "rgblight.h" +#endif + +// Used for SHIFT_ESC +#define MODS_CTRL_MASK (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT)) + +// Each layer gets a name for readability, which is then used in the keymap matrix below. +// The underscores don't mean anything - you can have a layer called STUFF or any other name. +// Layer names don't all need to be of the same length, obviously, and you can also skip them +// entirely and just use numbers. +#define _BL 0 +#define _FL 1 +#define _RS 2 + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* Keymap _BL: (Base Layer) Default Layer + * ,--------------------------------------------------------------------------. ,----. + * |Esc~| 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =| \| BS| |PGUP| + * |--------------------------------------------------------------------------| |----| + * | Tab| Q| W| E| R| T| Y| U| I| O| P| [| ]| \| |PGDN| + * |--------------------------------------------------------------------------| `----' + * |Capslck| A| S| D| F| G| H| J| K| L| ;| '| # | Ent| + * |-----------------------------------------------------------------------------. + * |Shift| BS| Z| X| C| V| B| N| M| ,| .| /| BS|Shift| UP| + * |------------------------------------------------------------------------|----|----. + * | Ctrl| Gui| Alt| MHen| Space| Space| Hen| Alt| Ctrl| _FL|LEFT|DOWN|RGHT| + * `----------------------------------------------------------------------------------' + */ +[_BL] = KEYMAP( + F(0), KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_GRV, KC_BSPC, KC_PGUP, \ + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_PGDN, \ + KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT, \ + KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RO, KC_RSFT, KC_UP, \ + KC_LCTL, KC_LGUI, KC_LALT, KC_MHEN, KC_SPC,KC_SPC, KC_HENK, KC_RALT, KC_RCTL, MO(_FL), KC_LEFT, KC_DOWN, KC_RGHT), + + /* Keymap _FL: Function Layer + * ,--------------------------------------------------------------------------. ,----. + * | `| F1| F2| F3| F4| F5| F6| F7| F8| F9| F10| F11| F12| | Del| |BLIN| + * |--------------------------------------------------------------------------| |----| + * | | | | | | | | |PScr|SLck|Paus| | | | |BLDE| + * |--------------------------------------------------------------------------| `----' + * | | | _RS| | | | | | | | | | | | + * |-----------------------------------------------------------------------------. + * | | | | | | | | | | | | | | |PGUP| + * |------------------------------------------------------------------------|----|----. + * | | | | | | | | | | _FL|HOME|PGDN| END| + * `----------------------------------------------------------------------------------' + */ +[_FL] = KEYMAP( + KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS, KC_DEL, BL_STEP, \ + KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_PSCR,KC_SLCK, KC_PAUS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, \ + KC_TRNS, KC_TRNS, MO(_RS),KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, \ + KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGUP, \ + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MO(_FL), KC_HOME, KC_PGDN, KC_END), + + /* Keymap _RS: Reset layer + * ,--------------------------------------------------------------------------. ,----. + * | | | | | | | | | | | | | | | | | | + * |--------------------------------------------------------------------------| |----| + * | | | | |RESET| | | | | | | | | | | | + * |--------------------------------------------------------------------------| `----' + * | | | _RS| | | | | | | | | | | | + * |-----------------------------------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |------------------------------------------------------------------------|----|----. + * | | | | | | | | | | _FL| | | | + * `----------------------------------------------------------------------------------' + */ +[_RS] = KEYMAP( + #ifdef RGBLIGHT_ENABLE + KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, F(1), F(7), \ + KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,RESET, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, F(8), \ + KC_TRNS, KC_TRNS, MO(_RS),KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, \ + MO(_FL), KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MO(_FL), F(5), \ + KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, F(2), F(2), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, F(4), F(6), F(3)), + #else + KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, \ + KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,RESET, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, \ + KC_TRNS, KC_TRNS, MO(_RS),KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, \ + KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, \ + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MO(_FL), KC_TRNS, KC_TRNS, KC_TRNS), + #endif +}; + +enum function_id { + SHIFT_ESC, + #ifdef RGBLIGHT_ENABLE + RGBLED_TOGGLE, + RGBLED_STEP_MODE, + RGBLED_INCREASE_HUE, + RGBLED_DECREASE_HUE, + RGBLED_INCREASE_SAT, + RGBLED_DECREASE_SAT, + RGBLED_INCREASE_VAL, + RGBLED_DECREASE_VAL + #endif +}; + +const uint16_t PROGMEM fn_actions[] = { + [0] = ACTION_FUNCTION(SHIFT_ESC), + #ifdef RGBLIGHT_ENABLE + [1] = ACTION_FUNCTION(RGBLED_TOGGLE), + [2] = ACTION_FUNCTION(RGBLED_STEP_MODE), + [3] = ACTION_FUNCTION(RGBLED_INCREASE_HUE), + [4] = ACTION_FUNCTION(RGBLED_DECREASE_HUE), + [5] = ACTION_FUNCTION(RGBLED_INCREASE_SAT), + [6] = ACTION_FUNCTION(RGBLED_DECREASE_SAT), + [7] = ACTION_FUNCTION(RGBLED_INCREASE_VAL), + [8] = ACTION_FUNCTION(RGBLED_DECREASE_VAL), + #endif +}; + +void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) { + static uint8_t shift_esc_shift_mask; + switch (id) { + case SHIFT_ESC: + shift_esc_shift_mask = get_mods()&MODS_CTRL_MASK; + if (record->event.pressed) { + if (shift_esc_shift_mask) { + add_key(KC_GRV); + send_keyboard_report(); + } else { + add_key(KC_ESC); + send_keyboard_report(); + } + } else { + if (shift_esc_shift_mask) { + del_key(KC_GRV); + send_keyboard_report(); + } else { + del_key(KC_ESC); + send_keyboard_report(); + } + } + break; + //led operations + #ifdef RGBLIGHT_ENABLE + case RGBLED_TOGGLE: + if (record->event.pressed) { + rgblight_toggle(); + } + break; + case RGBLED_INCREASE_HUE: + if (record->event.pressed) { + rgblight_increase_hue(); + } + break; + case RGBLED_DECREASE_HUE: + if (record->event.pressed) { + rgblight_decrease_hue(); + } + break; + case RGBLED_INCREASE_SAT: + if (record->event.pressed) { + rgblight_increase_sat(); + } + break; + case RGBLED_DECREASE_SAT: + if (record->event.pressed) { + rgblight_decrease_sat(); + } + break; + case RGBLED_INCREASE_VAL: + if (record->event.pressed) { + rgblight_increase_val(); + } + break; + case RGBLED_DECREASE_VAL: + if (record->event.pressed) { + rgblight_decrease_val(); + } + break; + case RGBLED_STEP_MODE: + if (record->event.pressed) { + rgblight_step(); + } + break; + #endif + } +} |