diff options
author | Jack Humbert <jack.humb@gmail.com> | 2016-06-21 22:39:54 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-06-21 22:39:54 -0400 |
commit | 649b33d7783cf3021928534b7ae127e0a89e8807 (patch) | |
tree | c2b5e0cf8ff4aa2918e3b88ab75dbdb071cc0a1d /keyboards/ergodox_ez/keymaps/jacobono | |
parent | 464c8e274f993d3571fe5ea5e836fe55a3912ffe (diff) |
Renames keyboard folder to keyboards, adds couple of tmk's fixes (#432)
* fixes from tmk's repo
* rename keyboard to keyboards
Diffstat (limited to 'keyboards/ergodox_ez/keymaps/jacobono')
-rw-r--r-- | keyboards/ergodox_ez/keymaps/jacobono/README.md | 34 | ||||
-rw-r--r-- | keyboards/ergodox_ez/keymaps/jacobono/compiled.hex | 1179 | ||||
-rw-r--r-- | keyboards/ergodox_ez/keymaps/jacobono/img/colemak-default-layer.png | bin | 0 -> 70434 bytes | |||
-rw-r--r-- | keyboards/ergodox_ez/keymaps/jacobono/img/number-dpad-layer.png | bin | 0 -> 46225 bytes | |||
-rw-r--r-- | keyboards/ergodox_ez/keymaps/jacobono/img/symbol-layer.png | bin | 0 -> 49615 bytes | |||
-rw-r--r-- | keyboards/ergodox_ez/keymaps/jacobono/keymap.c | 273 |
6 files changed, 1486 insertions, 0 deletions
diff --git a/keyboards/ergodox_ez/keymaps/jacobono/README.md b/keyboards/ergodox_ez/keymaps/jacobono/README.md new file mode 100644 index 0000000000..48de0509fc --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/jacobono/README.md @@ -0,0 +1,34 @@ +# Default Layer # + +I'm using the colemak layer -- customized a bit to work a bit better when using spacemacs as my editor. + +![default-layer](img/colemak-default-layer.png) + +## Special Keys ## + +`SC1` => `LGUI + TAB` + +`SC2` => `LGUI + SPACE + TAB` + +`L1` => Switch to QWERTY Layout + +`T(L2)` => Toggle Symbol Layer + +`T(L3)` => Toggle Number and D-Pad Layer + +# QWERTY # + +Nothing special here -- just need this layer tucked away for the `WASD`. Which is literally the only reason I use it. +Just have the same button to toggle back to colemak. + +# Symbol Layer # + +![symbol-layer](img/symbol-layer.png) + +This is just putting matching closing symbols next to each other -- useful when editing lisp. + +# Number and D-Pad Layer # + +Just a basic number layer with a D-PAD on the other side. + +![number-dpad-layer](img/number-dpad-layer.png) diff --git a/keyboards/ergodox_ez/keymaps/jacobono/compiled.hex b/keyboards/ergodox_ez/keymaps/jacobono/compiled.hex new file mode 100644 index 0000000000..bfa00ed2e1 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/jacobono/compiled.hex @@ -0,0 +1,1179 @@ +:100000000C9422030C9466030C9466030C94660310
+:100010000C9466030C9466030C9466030C946603BC
+:100020000C9466030C9466030C940A0E0C94DC0E7C
+:100030000C9466030C9466030C9466030C9466039C
+:100040000C9466030C94E6220C9466030C946603ED
+:100050000C9466030C94791C0C9466030C94660350
+:100060000C9466030C9466030C9466030C9466036C
+:100070000C9466030C9466030C9466030C9466035C
+:100080000C9466030C9466030C9466030C9466034C
+:100090000C9466030C9466030C9466030C9466033C
+:1000A0000C9466030C9466030C946603490F6B0F63
+:1000B00059106B0F5910B00FD30F591028103B1067
+:1000C0000A130A13391339136F138F13C014C01492
+:1000D0009A13C0144A144A14B114C014C014BA14A8
+:1000E00057145714571457145714571457145714B8
+:1000F00057145714571457145714571457145714A8
+:10010000691476147D1484148E140000F0A201008A
+:100110002B002A00E100015400001E00140004001E
+:100120001D71010003521F001A0015001B00010081
+:100130002800200009001600060052002C002100B3
+:1001400013001700190002522C0A22000A000700AF
+:1001500005000000E3005000010000000100000065
+:1001600065004F00010000002B08000029712300EA
+:100170000D000B000E000000E20024000F00110033
+:10018000100002522C0A2500180008003600510009
+:100190002C0026001C000C0037000100280027005E
+:1001A000330012003871E60003524C002B004C0063
+:1001B000E500E70000002A002B00E000E10001005C
+:1001C00000001E00140004001D7134004D001F00CB
+:1001D0001A0016001B00E104E300200008000700DD
+:1001E000060050002C0021001500090019000252E1
+:1001F0004A00220017000A00050000002B005000F2
+:1002000001000000E20000004C004F00010000006F
+:10021000E6000000E20023001C000B0011000000BB
+:100220002971240018000D00100002524B00250017
+:100230000C000E00360051002800260012000F00AE
+:1002400037002F00E70027001300334438713000D7
+:100250004E004C003100E400E500C1000000010048
+:10026000010001000100010000003A00010031021C
+:100270000100010001003B001F021E0222020100DA
+:1002800001003C0025022E022302010001003D0076
+:100290002E002D002102010001003E002D0234023B
+:1002A0002402000001000100010000000100000024
+:1002B00001000100010000000100000001003F00FA
+:1002C0003502340233000000010040002F022602F4
+:1002D0002F00010001004100300227023000010020
+:1002E00001004200200234003100010001004300FF
+:1002F00033023500380001000100440045000100D0
+:1003000001000100000001000100010001000100E6
+:1003100000000100010001000100010001000100D6
+:1003200001005000010001000100010052005100D5
+:10033000010001000100010001004F000100010067
+:1003400001000100010001000100000001000100A6
+:100350000100000001000000010001000100000098
+:10036000010000000100010021022E002402000013
+:1003700001000100240021001E00360001000100E0
+:10038000250022001F002700010001002600230095
+:1003900020003700010001002E022D002502380048
+:1003A0000100010001000100010001000000010046
+:1003B0000100010001000100000001000100010036
+:1003C00001000100010001000100F2000100010034
+:1003D00001000100F000F1000100F4000100010043
+:1003E0000100F3000100F50001000100010001001F
+:1003F00001000000010001000100000001000000F8
+:1004000001000100010000000100000001000100E6
+:1004100001000100010000000100010001000100D5
+:100420000100A9000100010001000100AC00AA00C8
+:10043000B600010001000100AB00A80001000100AE
+:100440000100010001000100010001000100AE00F7
+:1004500001000100000016034500720067006F00F4
+:1004600044006F007800200045005A000000160389
+:100470004500720067006F0044006F0078002000A4
+:1004800045005A0000000403090409026D0004013C
+:1004900000A0FA0904000001030101000921110173
+:1004A0000001223F000705810308000A090401003A
+:1004B0000103010200092111010001224D0007057D
+:1004C000820308000A090402000103000000092158
+:1004D000110100012236000705830308000A090400
+:1004E000030001030000000921110100012239006D
+:1004F000070584031000011201100100000008ED3F
+:10050000FE071301000102000105010906A1010512
+:100510000719E029E71500250195087501810205F5
+:100520000819012905950575019102950175039139
+:1005300001050719002977150025019578750181B6
+:1005400002C005010980A101850216010026B7003D
+:100550001A01002AB700751095018100C0050C0929
+:1005600001A1018503160100269C021A01002A9CA4
+:1005700002751095018100C005010902A101090160
+:10058000A100050919012905150025019505750129
+:100590008102950175038101050109300931158139
+:1005A000257F95027508810609381581257F9501FB
+:1005B00075088106050C0A38021581257F9501759D
+:1005C000088106C0C005010906A101050719E02937
+:1005D000E7150025019508750181029501750881CF
+:1005E0000105081901290595057501910295017507
+:1005F0000391010507190029FF150025FF950675D0
+:10060000088100C0000000000000000000000001A0
+:100610000204060A0F17202C3A4A5D71879DB3C762
+:10062000DAE9F5FCFFFCF5E9DAC7B39D87715D4AAD
+:100630003A2C20170F0A06040201000000000000F7
+:100640000000000011241FBECFEFDAE0DEBFCDBFF7
+:1006500004B603FE24C08091FB019091FC01A0919F
+:10066000FD01B091FE018730904BA740B04BB9F42B
+:100670001092FB011092FC011092FD011092FE01FC
+:1006800014BE84B7877F84BF88E10FB6F894809347
+:100690006000109260000FBEE0E0FFE3099511E0FA
+:1006A000A0E0B1E0EAE5F9E402C005900D92A433C0
+:1006B000B107D9F711E0A4E3B1E001C01D92AB3F4F
+:1006C000B107E1F70E944E0B0C94AB240C94000090
+:1006D0001092B9008AE08093B800089594EA90934C
+:1006E000BC009091BC0097FFFCCF9091B900987F1F
+:1006F000983021F0903111F081E008958093BB0093
+:1007000084E88093BC008091BC0087FFFCCF80917F
+:10071000B900887F883111F0803471F780E0089546
+:1007200084E98093BC008091BC0084FDFCCF0895D7
+:100730008093BB0084E88093BC008091BC0087FF5D
+:10074000FCCF9091B900987F81E0983209F480E065
+:10075000089584E88093BC008091BC0087FFFCCFA3
+:100760008091BB00089580910101811115C080E442
+:100770000E946E038093010181110CC082E10E94EE
+:10078000980380930101811105C08FEF0E949803A7
+:10079000809301010E94900384B1807F84B985B168
+:1007A000807F85B98AB1837F8AB98BB1837F8BB90A
+:1007B0003E98469808950E946E05809301010E941C
+:1007C000B30380B38C7080BB81B3836F81BBA5E31F
+:1007D000B1E0E3E4F1E08EE08E0F11921D928E13F2
+:1007E000FCCF0C945805BF92CF92DF92EF92FF920C
+:1007F0000F931F93CF93DF9380910101882379F0AA
+:10080000809134018F5F80933401811108C00E9470
+:100810006E0580930101811102C00E94000505E36D
+:1008200011E0C0E0D0E0DD24D39482E0C82EEE24B5
+:10083000E394F12CC730D10500F5809101018111BD
+:1008400064C080E40E946E0380930101811112C094
+:1008500082E10E9498038093010181110BC0C701BE
+:100860000C2E01C0880F0A94EAF780950E94980325
+:10087000809301010E94900348C0CA30A1F028F47F
+:10088000C83059F0C93061F005C0CC3089F070F043
+:10089000CD3089F0209A289810C0219A29980DC04F
+:1008A000229A2A980AC0239A2B9807C0529A01C00C
+:1008B000539A5B9802C03E9A469890EA9A95F1F74F
+:1008C0009FB1799902C082E001C080E091709D25BE
+:1008D000982B7C9902C084E001C080E0892B7D992F
+:1008E00002C038E001C030E0832B7E9902C020E1D5
+:1008F00001C020E0822B9FB19095991F9927991FE5
+:100900009295990F907E892B0FC0809101018111E2
+:1009100049C080E40E946E0380930101882379F12D
+:10092000B12C0E9490038B2DF8019081981719F03B
+:100930008083C09200010E94B30321960F5F1F4F76
+:10094000CE30D10509F076CF80910001882361F186
+:10095000815080930001882339F08FE99FE001974F
+:10096000F1F700C0000020C0A3E4B1E0E5E3F1E04E
+:10097000CF01825F91919D938E13FCCF15C083E1CF
+:100980000E949803809301018111CACF81E40E94E3
+:100990006E03809301018111C3CF0E94A903B82E79
+:1009A000B094BFCF80E0C0CF0E94FE0481E0DF9111
+:1009B000CF911F910F91FF90EF90DF90CF90BF905C
+:1009C0000895E82FF0E0ED5BFE4F808108950895D3
+:1009D0000F931F93CF93DF93C3E4D1E010E00C2F6C
+:1009E000025F899190E00E949F1B180F0C13F9CFB2
+:1009F000812FDF91CF911F910F9108950C94CE0517
+:100A000056985E9825982D9826982E9827982F9876
+:100A10008FEF90E0909389008093880090938B00F3
+:100A200080938A0090938D0080938C00259A2D9A54
+:100A30002FEF80E792E0215080409040E1F700C026
+:100A40000000269A2E9A2FEF80E792E021508040F6
+:100A50009040E1F700C00000279A2F9A2FEF80E71F
+:100A600092E0215080409040E1F700C000002598BE
+:100A70002D982FEF80E792E0215080409040E1F7E1
+:100A800000C0000026982E982FEF80E792E02150BA
+:100A900080409040E1F700C0000027982F985698BA
+:100AA0005E9825982D9826982E9827982F98089527
+:100AB00089EA8093800089E08093810024982C98B3
+:100AC0003F988AB18F748AB96E98479A8BB1806BC0
+:100AD0008BB9769A0E9400050C94CD0580E2809334
+:100AE00001018091510181110EC00E94680381E0D3
+:100AF000809351012FEF83ED90E32150804090408F
+:100B0000E1F700C0000080E40E946E0380930101C1
+:100B100081112EC00E94980380930101811128C089
+:100B20000E94980380930101811122C08FE30E94EB
+:100B300098038093010181111BC00E94900380E4FF
+:100B40000E946E0380930101811112C08CE00E940B
+:100B500098038093010181110BC00E949803809338
+:100B60000101811105C08FE30E9498038093010168
+:100B70000E94900380910101089561110BC0FC0156
+:100B80008281882321F085EE0E94AE1103C085EE9C
+:100B90000E94761280E090E0089508956091BD0172
+:100BA0007091BE018091BF019091C0010E94AB1B6A
+:100BB00056985E9825982D9826982E9827982F98C5
+:100BC000813019F0823021F00895259A2D9A0895E8
+:100BD000269A2E9A089581E0089581E008950C9454
+:100BE000ED0508950F931F93CF93DF938C01FC01C4
+:100BF000C081D181CE010E94241ABE010E949B06B1
+:100C0000EC01B8010E94EF05882309F48DC0F801BA
+:100C10008281882309F44AC080915D0181111FC03F
+:100C2000C431F0E5DF0709F051C00E94F10581E011
+:100C300080935D010E94431C90935C0180935B0153
+:100C400010925401109256011092550110925801C1
+:100C50001092570110925A011092590165C080916B
+:100C60005B0190915C010E944F1C883C910570F4DF
+:100C700080915401E82FF0E0EE0FFF1FEB5AFE4F7A
+:100C8000D183C0838F5F809354014EC0C43880E508
+:100C9000D80721F0C538D04501F13AC0F80182816A
+:100CA000882341F01092520182E01EC0C438E0E572
+:100CB000DE0759F580915201811106C086E20E943B
+:100CC000AE1186E20E94761282E01CC0C438F0E5C4
+:100CD000DF0741F3C538D045D9F4F8018281882374
+:100CE00031F01092530180E20E94C5121DC0809124
+:100CF0005301811106C087E20E94AE1187E20E9473
+:100D0000761280E20E94CC120FC0C538D04529F37C
+:100D100081E08093520180935301C801DF91CF910C
+:100D20001F910F910C94EB0580E0DF91CF911F9103
+:100D30000F910895089596E0799FF001112494E5AC
+:100D4000899FE00DF11D1124E60FF11DEE0FFF1F2D
+:100D5000E25FFE4F859194910895880F991FFC01E1
+:100D6000E657F040859194910895880F991FFC01F2
+:100D7000E65FFE4F8591949108950F931F93CF9353
+:100D8000DF93EC01811520E3920750F5C11580E255
+:100D9000D80708F0C3C0CB3BD10590F4C83AD105C1
+:100DA00008F06AC0C53AD10508F05BC0C430D1056F
+:100DB00008F0D0C1219709F0CAC101E010E00AC2D1
+:100DC000CF3FD10511F008F0C5C1C03FD10508F0F3
+:100DD000A2C0CE01805E9109089708F4BBC1B7C1DB
+:100DE000C13090E5D90709F4A2C020F5C0318FE4E5
+:100DF000D80770F4C11590E4D90708F094C0C11564
+:100E000021E3D20708F0A3C1DD278E01106CE2C1F7
+:100E1000C115D04509F09BC10E942B158FEF94E3BB
+:100E20002CE0815090402040E1F700C000000E947B
+:100E30009E1CD0C1C11597E5D90758F4C03121E5F2
+:100E4000D20708F01CC1C43180E5D80708F475C08A
+:100E50007EC1CE0190578115904108F078C1DF70B6
+:100E600073C1C53AD10509F477C1C63AD10509F075
+:100E700076C102E810E4AEC1C83AD10509F472C1E6
+:100E8000C93AD10509F471C1CA3AD10509F470C152
+:100E9000CB3AD10509F46FC1CC3AD10509F46EC142
+:100EA000CD3AD10509F46DC1C03BD10509F46CC13F
+:100EB000CE3AD10509F46BC1CF3AD10509F46AC124
+:100EC000C13BD10509F469C1C23BD10509F468C130
+:100ED000C33BD10509F467C1C43BD10509F466C120
+:100EE000C53BD10509F465C1C63BD10509F464C110
+:100EF000C73BD10509F463C1C83BD10509F462C100
+:100F0000C93BD10509F461C1CA3BD10509F460C1EF
+:100F100000E014E45FC18E0110655CC1CE019F70DA
+:100F20000E94B50658C1DF708E01106A53C18091CE
+:100F3000DA0181608093DA014DC10E94431E811164
+:100F400002C00E94291E0E94601E90E09093FB0147
+:100F50008093FA01C23080E5D80721F48091FA012C
+:100F6000816086C0C43090E5D90721F48091FA01F0
+:100F700082607EC0C63020E5D20721F48091FA015C
+:100F8000846076C0C83080E5D80719F48091FA01F2
+:100F900027C0CA3090E5D90721F48091FA01806119
+:100FA00067C0CC3020E5D20721F48091FA0180623D
+:100FB0005FC0CE3080E5D80721F48091FA018064CB
+:100FC00057C0C03190E5D90721F48091FA018068BB
+:100FD0004FC0C23120E5D20729F48091FA01846024
+:100FE000886046C0C33080E5D80721F48091FA01BB
+:100FF0008E7F3EC0C53090E5D90721F48091FA017B
+:101000008D7F36C0C73020E5D20721F48091FA01E8
+:101010008B7F2EC0C93080E5D80719F48091FA0182
+:1010200026C0CB3090E5D90721F48091FA018F7E5C
+:101030001FC0CD3020E5D20721F48091FA018F7DC9
+:1010400017C0CF3080E5D80721F48091FA018F7B5B
+:101050000FC0C13190E5D90721F48091FA018F7753
+:1010600007C0C331D04531F48091FA018B7F877F6F
+:101070008093FA018091FA010E94641EABC08D2F0B
+:1010800099278F70992781309105D9F49E0123709B
+:10109000332702C0880F991F2A95E2F79C688E01BA
+:1010A00044E0000F111F4A95E1F700271370802BD1
+:1010B000912B53E0CC0FDD1F5A95E1F7C076DD2769
+:1010C0002FC08230910531F4DC2FCC278E01016FC7
+:1010D000106A80C08330910569F4CE01837099272E
+:1010E00001E010E002C0000F111F8A95E2F7C8016D
+:1010F0009C680FC084309105B9F4CE0183709927A4
+:1011000001E010E002C0000F111F8A95E2F7C8014C
+:101110009A6823E0CC0FDD1F2A95E1F7C07ED770D7
+:101120008C010C2B1D2B56C08530910531F4DC2F22
+:10113000CC278E01046F106A4DC0069709F04AC093
+:10114000CF71DD27DC2FCC278E01106243C000E079
+:1011500010E040C08E013EC001E810E43BC003E84F
+:1011600010E438C002EE14E435C009EE14E432C0D5
+:101170000AEE14E42FC005EB14E42CC006EB14E4D3
+:1011800029C007EB14E426C00CEC14E423C00DECDA
+:1011900014E420C003E815E41DC00AE815E41AC0F1
+:1011A00002E915E417C004E915E414C001E216E4ED
+:1011B00011C003E216E40EC004E216E40BC005E21F
+:1011C00016E408C006E216E405C007E216E402C011
+:1011D0000AE216E4C801DF91CF911F910F910895A3
+:1011E00096E0799FF001112494E5899FE00DF11DAF
+:1011F0001124E60FF11DEE0FFF1FE25FFE4F8591F8
+:101200009491803E9105E0F4803C910558F581333E
+:10121000910509F46FC048F48932910509F463C05F
+:101220008A32910509F46DC072C089339105E9F0E5
+:1012300082389105D1F08533910509F44DC067C01E
+:10124000833E910581F138F4803E9105B9F0823EEC
+:101250009105D9F05CC0863E910561F1873E91050C
+:10126000A1F155C00E94AD0608952091FA0120FD1C
+:1012700002C021FF4CC080EE90E049C08091FA018D
+:1012800080FFF9CF89E390E042C08091FA0182FFAC
+:101290000EC08091FA0184FF03C080E090E037C067
+:1012A00083EE90E034C08091FA0182FFF2CF82EEAB
+:1012B00090E02DC08091FA0183FF0BC08091FA016C
+:1012C00084FDEBCF87EE90E022C08091FA0183FF8E
+:1012D000F5CF86EE90E01BC08091FA0185FF07C034
+:1012E00089E290E014C08091FA0185FFF9CF85E38F
+:1012F00090E00DC08091FA0186FF07C08AE290E07D
+:1013000006C08091FA0186FFF9CF81E390E00E9448
+:10131000BD06089508950C948A0980916E01089580
+:10132000CF93DF9300D01F92CDB7DEB79C018091A1
+:10133000F101843019F593E099833B832A839093DC
+:10134000E9008FEF9091E800815095FD06C095ED82
+:101350009A95F1F700008111F5CF8091E80085FFA3
+:101360000DC040E050E063E070E0CE0101960E94C5
+:10137000FA0B8091E8008E778093E8000F900F9031
+:101380000F90DF91CF910895CF93DF9300D01F92FC
+:10139000CDB7DEB72091F101243021F522E0298379
+:1013A0009B838A8383E08093E9008FEF9091E8002C
+:1013B000815095FD06C095ED9A95F1F700008111D9
+:1013C000F5CF8091E80085FF0DC040E050E063E07C
+:1013D00070E0CE0101960E94FA0B8091E8008E77B2
+:1013E0008093E8000F900F900F90DF91CF910895B8
+:1013F0002091F1012430F1F422E02093E9002FEF55
+:101400003091E800215035FD06C035ED3A95F1F7F1
+:1014100000002111F5CF2091E80025FF0BC040E02E
+:1014200050E065E070E00E94FA0B8091E8008E7752
+:101430008093E8000895CF93DF93EC019091F10140
+:10144000943009F046C080910C018823D9F0809136
+:101450000D018823B9F09093E9008FEF9091E80097
+:10146000815095FD06C095E19A95F1F70000811134
+:10147000F5CF8091E80085FF2CC040E050E060E1AE
+:1014800070E017C081E08093E9008FEF9091E80051
+:10149000815095FD06C095ED9A95F1F700008111F8
+:1014A000F5CF8091E80085FF14C040E050E068E08F
+:1014B00070E0CE010E94FA0B8091E8008E77809355
+:1014C000E80080E1FE01AEE5B1E001900D928A9561
+:1014D000E1F7DF91CF9108958091F001811109C06A
+:1014E0000E948F0D0E94EC0D8091E2008460809339
+:1014F000E20008951092F001089508950C94D3220B
+:101500000E94341C0E94D9220E9492100C948B09D4
+:1015100042E061EC81E00E94090D42E061EC82E072
+:101520000E94090D42E061EC83E00E94090D42E156
+:1015300061EC84E00C94090D8091F301833009F48F
+:1015400055C030F4813071F0823009F48EC00895B6
+:101550008A3009F47AC08B3009F460C0893009F010
+:101560009CC020C08091F201813A09F096C0809120
+:10157000E800877F8093E8008091F6019091F70161
+:10158000892B21F460E18EE591E003C060E080E00A
+:1015900090E070E00E94450C8091E8008B7780938A
+:1015A000E80008958091F201813209F076C08091BF
+:1015B000F6019091F701009719F0039709F06DC0BB
+:1015C0008091E800877F8093E8008091E80082FDA9
+:1015D00005C08091F1018111F8CF5FC08091F100C9
+:1015E00080936E018091E8008B7753C08091F20167
+:1015F000813A09F052C08091F6019091F701892B50
+:1016000009F04BC08091E800877F8093E8008091CB
+:10161000E80080FFFCCF80910C0136C08091F20180
+:101620008132D9F58091F6019091F701892BA9F5C6
+:101630008091E800877F8093E8000E943E0D8091B2
+:10164000F40180930C010C942B158091F2018132EE
+:1016500021F58091E800877F8093E8000E943E0D8D
+:101660008091F50180936F0108958091F201813A94
+:10167000A1F48091E800877F8093E8008091E800E2
+:1016800080FFFCCF80916F018093F1008091E80092
+:101690008E778093E8000C943E0D089584B7877F81
+:1016A00084BF88E10FB6F8948093600010926000C8
+:1016B0000FBE90E080E80FB6F8948093610090939D
+:1016C00061000FBE0E94E1100E948F0D0E94EC0D80
+:1016D0008091E20084608093E20078940E9472100E
+:1016E0000E94E31082E091E00E948D100E94C122CE
+:1016F0008091F101853069F40E94FB1B8091EF011C
+:101700008823B1F30E94261C882391F30E94E40BE6
+:10171000EFCF0E94E910ECCF292F3327233031057A
+:10172000C9F064F42130310581F02230310509F02F
+:1017300043C08DE690E02AE834E042C02132310512
+:10174000F1F02232310541F137C082E190E027EF1C
+:1017500034E036C099278130910541F082309105FF
+:1017600041F0892B49F5E6E8F4E005C0EEE6F4E047
+:1017700002C0E6E5F4E0849190E09F0121C064306E
+:10178000D8F4E62FF0E0EE0FFF1FEE5DFE4F208154
+:10179000318189E090E014C0643070F470E0FB01A6
+:1017A000EE0FFF1FE65EFE4F20813181FB01EA5EF6
+:1017B000FE4F808190E004C080E090E020E030E0C7
+:1017C000FA0131832083089580E189BD82E189BDDA
+:1017D00009B400FEFDCF8091D8008F7D8093D800A2
+:1017E0008091E00082608093E0008091E00081FDC4
+:1017F000FCCF0895CF92DF92EF92FF920F931F9349
+:10180000CF93DF93EC018B016A010E945D0D811182
+:1018100033C0C114D10439F0F60180819181081BD5
+:10182000190BC80FD91FE12CF12C0115110519F165
+:101830008091E80085FD16C08091E8008E77809346
+:10184000E800C114D10449F0F60180819181E80ECD
+:10185000F91EF182E08285E00FC00E945D0D8823B1
+:1018600021F30AC089918093F10001501109FFEF23
+:10187000EF1AFF0ADACF80E0DF91CF911F910F912D
+:10188000FF90EF90DF90CF9008952091F801309174
+:10189000F9012617370748F06115710539F42091D1
+:1018A000E8002E772093E80001C0B90140E06115FF
+:1018B0007105A9F12091F101222309F443C02530DB
+:1018C00009F442C02091E80023FD40C02091E800C7
+:1018D00022FD32C02091E80020FFE9CF4091F300C3
+:1018E0002091F20030E0342BFC01CF01611571052D
+:1018F00059F02830310540F481918093F100615016
+:1019000071092F5F3F4FF1CF41E02830310509F0D9
+:1019100040E02091E8002E772093E800C8CF4111E5
+:10192000C9CF0AC08091F101882361F0853061F050
+:101930008091E80083FD0AC08091E80082FFF2CF29
+:1019400080E0089582E0089583E0089581E008959D
+:101950002091F8013091F9012617370748F06115F9
+:10196000710539F42091E8002E772093E80001C03A
+:10197000B901FC0120E06115710591F18091F1013F
+:10198000882309F440C0853009F43FC08091E80005
+:1019900083FD3DC08091E80082FD2FC08091E8006A
+:1019A00080FFE9CF2091F3008091F20090E0922B2C
+:1019B0006115710559F08830910540F42491209308
+:1019C000F1003196615071090196F2CF21E008973C
+:1019D00009F020E08091E8008E778093E800CBCF7B
+:1019E0002111CCCF0AC08091F101882361F08530AC
+:1019F00061F08091E80083FD0AC08091E80082FFD9
+:101A0000F2CF80E0089582E0089583E0089581E0B8
+:101A10000895982F973058F59093E900981739F06A
+:101A20007091EC002091ED005091F00003C0242F44
+:101A3000762F50E021FF19C03091EB003E7F3093AC
+:101A4000EB003091ED003D7F3093ED003091EB00E5
+:101A500031603093EB007093EC002093ED005093D5
+:101A6000F0002091EE0027FF07C09F5FD3CF8F705B
+:101A70008093E90081E0089580E008958091F2016B
+:101A800087FF11C08091E80082FD05C08091F101BF
+:101A90008111F8CF11C08091E8008B770BC0809145
+:101AA000F101882349F08091E80080FFF8CF809110
+:101AB000E8008E778093E80008952091E40030914B
+:101AC000E50095E64091EC00842F817040FF22C034
+:101AD0008091E80080FD1CC08091F101882391F085
+:101AE000853091F08091EB0085FD10C04091E400BD
+:101AF0005091E5004217530729F39A01915011F7CD
+:101B000084E0089582E0089583E0089581E00895D7
+:101B100080E008954091E80042FFDECF08950E94E2
+:101B2000FD0D0E94050EE0EEF0E080818160808373
+:101B3000E8EDF0E080818F77808319BCA7EDB0E0FD
+:101B40008C918E7F8C9380818F7E80831092F001A8
+:101B500008950F931F93CF93DF930E94FD0D0E9472
+:101B6000050EC8EDD0E088818F77888388818068F2
+:101B7000888388818F7D888319BC1092F10110922F
+:101B8000ED011092EF011092EE0100EE10E0F8016D
+:101B900080818B7F808388818160888342E060E0E0
+:101BA00080E00E94090DE1EEF0E080818E7F80836D
+:101BB000E2EEF0E0808181608083808188608083B4
+:101BC000F80180818E7F8083888180618883DF91A6
+:101BD000CF911F910F910895E8EDF0E080818F7E05
+:101BE0008083E7EDF0E080818160808384E082BFC4
+:101BF00081E08093F0010C94A90DE8EDF0E0808184
+:101C00008E7F80831092E20008951092DA00109285
+:101C1000E10008951F920F920FB60F9211242F9397
+:101C20003F934F935F936F937F938F939F93AF9364
+:101C3000BF93EF93FF938091E10082FF0BC08091EF
+:101C4000E20082FF07C08091E1008B7F8093E1007A
+:101C50000E9471108091DA0080FF1FC08091D8002F
+:101C600080FF1BC08091DA008E7F8093DA00809124
+:101C7000D90080FF0DC080E189BD82E189BD09B432
+:101C800000FEFDCF81E08093F1010E946C0A05C047
+:101C900019BC1092F1010E947A0A8091E10080FF44
+:101CA00019C08091E20080FF15C08091E2008E7F14
+:101CB0008093E2008091E20080618093E200809155
+:101CC000D80080628093D80019BC85E08093F10130
+:101CD0000E947E0A8091E10084FF30C08091E20082
+:101CE00084FF2CC080E189BD82E189BD09B400FE7A
+:101CF000FDCF8091D8008F7D8093D8008091E10046
+:101D00008F7E8093E1008091E2008F7E8093E200DD
+:101D10008091E20081608093E2008091ED01882350
+:101D200011F084E007C08091E30087FD02C081E0EC
+:101D300001C083E08093F1010E94800A8091E1005C
+:101D400083FF29C08091E20083FF25C08091E100DC
+:101D5000877F8093E10082E08093F1011092ED0192
+:101D60008091E1008E7F8093E1008091E2008E7F80
+:101D70008093E2008091E20080618093E20042E083
+:101D800060E080E00E94090D8091F00088608093FF
+:101D9000F0000E947D0AFF91EF91BF91AF919F915A
+:101DA0008F917F916F915F914F913F912F910F9004
+:101DB0000FBE0F901F9018951F920F920FB60F92A3
+:101DC00011242F933F934F935F936F937F938F9340
+:101DD0009F93AF93BF93CF93DF93EF93FF93C09104
+:101DE000E900CF708091EC00D82FD17080FDD0E851
+:101DF0001092E9008091F000877F8093F000789442
+:101E00000E94200F1092E9008091F000886080937A
+:101E1000F000CD2BCF70C093E900FF91EF91DF91DF
+:101E2000CF91BF91AF919F918F917F916F915F9172
+:101E30004F913F912F910F900FBE0F901F901895CB
+:101E40001F93CF93DF93CDB7DEB7AA970FB6F89461
+:101E5000DEBF0FBECDBFE2EFF1E088E08E0F9091C4
+:101E6000F10091938E13FBCF0E949C0A8091E800B1
+:101E700083FF1FC18091F2019091F301492F50E03F
+:101E80004A30510508F015C1FA01EA5AFF4F0C9487
+:101E90005B24803881F0823809F00BC18091F60113
+:101EA0008F708093E9008091EB0085FB882780F993
+:101EB0001092E90006C08091EE019091EF0191111E
+:101EC00082609091E800977F9093E8008093F10002
+:101ED0001092F100C8C0282F2D7F09F0EAC0882396
+:101EE00019F0823061F0E5C08091F401813009F091
+:101EF000E0C0933009F080E08093EF012BC0809127
+:101F0000F401811127C08091F6018F7009F4D1C0CE
+:101F10008093E9002091EB0020FF1CC0933021F456
+:101F20008091EB00806214C09091EB0090619093DF
+:101F3000EB0021E030E0A90102C0440F551F8A9553
+:101F4000E2F74093EA001092EA008091EB0088608B
+:101F50008093EB001092E9008091E800877F86C0B3
+:101F60008111A7C01091F4011F778091E300807860
+:101F7000812B8093E3008091E800877F8093E800C5
+:101F80000E943E0D8091E80080FFFCCF8091E3002D
+:101F900080688093E300111102C082E001C083E0F9
+:101FA0008093F10186C08058823008F082C0809111
+:101FB000F4019091F5018C3D53E0950779F583E0AC
+:101FC0008A838AE289834FB7F894DE01139620E072
+:101FD0003EE051E2E32FF0E050935700E49120FF00
+:101FE00003C0E295EF703F5FEF708E2F90E0EA3014
+:101FF00010F0C79601C0C0968D939D932F5F24313A
+:1020000049F74FBF8091E800877F8093E8006AE23C
+:1020100070E0CE0101960E94450C14C0AE014F5FE6
+:102020005F4F6091F6010E948C0BBC01009709F490
+:1020300040C09091E800977F9093E80089819A8151
+:102040000E94A80C8091E8008B778093E80031C053
+:10205000803879F58091E800877F8093E80080914F
+:10206000ED018093F1008091E8008E778093E80085
+:102070000E943E0D1EC081111CC09091F40192304F
+:10208000C0F48091E800877F8093E8009093ED0191
+:102090000E943E0D8091ED01811106C08091E30008
+:1020A00087FD02C081E001C084E08093F1010E94BD
+:1020B000880A8091E80083FF0AC08091E800877F4A
+:1020C0008093E8008091EB0080628093EB00AA96F9
+:1020D0000FB6F894DEBF0FBECDBFDF91CF911F9139
+:1020E00008950895CF938091F1018823A1F0C091C4
+:1020F000E900CF709091EC00892F817090FD80E80D
+:10210000C82B1092E9008091E80083FD0E94200F07
+:10211000CF70C093E900CF9108959093750180939B
+:1021200074010895E0917401F0917501309721F0E8
+:102130000190F081E02D099480E00895E091740110
+:10214000F0917501309721F00280F381E02D099420
+:102150000895E0917401F0917501309721F00480A9
+:10216000F581E02D09940895209172013091730159
+:102170008217930771F09093730180937201E0913D
+:102180007401F0917501309721F00680F781E02D00
+:10219000099408952091700130917101821793077D
+:1021A00071F09093710180937001E0917401F0914E
+:1021B0007501309721F00084F185E02D0994089590
+:1021C00008950C94E0100E943A1C0E94DB030C94CA
+:1021D000FC1C9F92AF92BF92CF92DF92EF92FF9240
+:1021E0000F931F93CF93DF9300D000D000D0CDB7D3
+:1021F000DEB70E94F3030DE010E0AA24A394B12CF3
+:10220000902E802F0E94E104980129583E4F6901C9
+:10221000F901F080F826A1F40150110988F78FEF39
+:1022200089838A831B820E94431C8160782F9D834F
+:102230008C8349815A816B818D810E9480112FC0CE
+:102240009091DA0191FF04C08E830E94E7048E8191
+:1022500025E030E0A501022E01C0440F0A94EAF700
+:10226000E42E4F21C1F029839A828E2191E009F456
+:1022700090E09B830E94431C8160782F9D838C8318
+:1022800049815A816B818D810E948011F601808184
+:10229000E826E08204C021503109E0F6BDCF0E945B
+:1022A000E31F109176010E9492101817B9F00E9456
+:1022B00092108093760126960FB6F894DEBF0FBE7B
+:1022C000CDBFDF91CF911F910F91FF90EF90DF90E5
+:1022D000CF90BF90AF909F900C948B0926960FB62D
+:1022E000F894DEBF0FBECDBFDF91CF911F910F914C
+:1022F000FF90EF90DF90CF90BF90AF909F900895A8
+:10230000CF93DF93CDB7DEB72B970FB6F894DEBF30
+:102310000FBECDBF4F83588769877A878B87DE01D1
+:10232000119686E0FD0111928A95E9F785E0FE019C
+:10233000379601900D928A95E1F749815A816B8118
+:102340007C818D819E810E94C9172B960FB6F894CF
+:10235000DEBF0FBECDBFDF91CF910895CF9388230D
+:1023600009F4C2C0C82F823859F40E94921081FD2E
+:10237000BBC089E30E94A31A0E94701B89E30CC0B2
+:10238000833879F40E94921080FDAEC083E50E94EC
+:10239000A31A0E94701B83E50E94E51ACF910C944A
+:1023A000701B843859F40E94921082FD9DC087E40E
+:1023B0000E94A31A0E94701B87E4EECF8CEF8C0F53
+:1023C000813A48F48C2F0E94262281118DC08C2FD7
+:1023D0000E94A31AE3CF80E28C0F883048F4C770C4
+:1023E00081E001C0880FCA95EAF70E94291BD6CF69
+:1023F0008BE58C0F833078F4C53A29F0C63A31F07A
+:1024000083E890E005C081E890E002C082E890E0B7
+:10241000CF910C94B41088E58C0F833108F064C020
+:10242000C83A39F1C93A41F1CA3A49F1CB3A51F1C6
+:10243000CC3A59F1CD3A61F1C03B69F1CE3A71F134
+:10244000CF3A79F1C13B81F1C23B89F1C33B91F1B4
+:10245000C43B99F1C53BA1F1C63BA9F1C73BB1F122
+:10246000C83BB9F1C93BC1F1CA3BC9F180E090E07A
+:1024700038C082EE90E035C089EE90E032C08AEE3E
+:1024800090E02FC085EB90E02CC086EB90E029C057
+:1024900087EB90E026C08CEC90E023C08DEC90E0C0
+:1024A00020C083E891E01DC08AE891E01AC082E96B
+:1024B00091E017C084E991E014C081E292E011C07C
+:1024C00083E292E00EC084E292E00BC085E292E0EB
+:1024D00008C086E292E005C087E292E002C08AE28C
+:1024E00092E0CF910C94CA10CF910895882309F4FB
+:1024F0004BC0823859F40E94921081FF45C089E395
+:102500000E94A31A0E94701B89E30CC0833871F4E7
+:102510000E94921080FF38C083E50E94A31A0E9497
+:10252000701B83E50E94E51A0C94701B843859F4E3
+:102530000E94921082FF28C087E40E94A31A0E9482
+:10254000701B87E4EFCF9CEF980F913A58F390E21D
+:10255000980F983050F4877091E001C0990F8A95D8
+:10256000EAF7892F0E942F1BDFCF9BE5980F93304E
+:1025700020F480E090E00C94B410885A833120F469
+:1025800080E090E00C94CA100895882321F00E9406
+:10259000291B0C94701B0895882321F00E942F1B87
+:1025A0000C94701B08957F928F929F92AF92BF926E
+:1025B000CF92DF92EF92FF920F931F93CF93DF930F
+:1025C0001F92CDB7DEB77C01C62E772EFC010581A8
+:1025D00002950F70128111110E94461B0E949C1AD5
+:1025E000882379F0112369F080E28C0D883048F05F
+:1025F00082E00E94851A0E949C1A91E0D82ED9266A
+:1026000001C0D12CE72DE295EF70F0E0E05AFF4FCA
+:102610000C945B24872D807F072D0F70882311F089
+:102620000295007F112389F0002309F490C180E214
+:102630008C0D883020F4802F0E94291B03C0802F2E
+:102640000E94391B0E94701B82C18C2D0E94761241
+:10265000002309F495C180E28C0D883020F4802F8E
+:102660000E942F1B03C0802F0E943F1B0E94701BE3
+:1026700087C1972D907F872D8F70903211F08295B2
+:10268000807FCC2021F0F1E0CF16B1F01EC01123E5
+:1026900049F0002309F414C1013009F011C10E946E
+:1026A000591B6EC1002319F0013009F469C18983F7
+:1026B0000E945C1B89810AC1112321F0023008F0BD
+:1026C0005FC1FEC001115CC101C1112321F00023D3
+:1026D00009F4F6C03CC1002309F4F8C03EC1872DBF
+:1026E00086958695837090E0009719F0019761F0C8
+:1026F00047C1112321F08C2D972D937002C080E0EB
+:1027000090E00E94B4103CC1112321F08C2D972D34
+:10271000937002C080E090E00E94CA1031C18C2DFD
+:10272000112319F00E94EB1E02C00E94531F0E9449
+:10273000D81F26C1872D837009F052C0111120C106
+:102740008C2D829586958770880F880F9C2D9F70A1
+:10275000892E912CA12CB12C082E04C0880C991C18
+:10276000AA1CBB1C0A94D2F7C4FE14C00FE010E0F0
+:1027700020E030E0B901A80104C0440F551F661FD6
+:10278000771F8A95D2F7CB01BA0160957095809535
+:10279000909503C060E070E0CB01272D269526952B
+:1027A000237030E02230310569F02330310589F0A3
+:1027B000682979298A299B292130310571F00E94E5
+:1027C0001119DEC0682979298A299B290E942D19AF
+:1027D000D7C00E941119C501B4010E94F518D0C0DC
+:1027E000112319F0872D817001C08695882309F483
+:1027F000C7C08C2D829586958770880F880F9C2D79
+:102800009F70892E912CA12CB12C082E04C0880C0D
+:10281000991CAA1CBB1C0A94D2F7C4FE14C00FE07A
+:1028200010E020E030E0B901A80104C0440F551FBA
+:10283000661F771F8A95D2F7CB01BA016095709514
+:102840008095909503C060E070E0CB01272D269520
+:1028500026952370422F50E04230510569F04330F5
+:10286000510589F0682979298A299B294130510528
+:1028700071F00E94EB1984C0682979298A299B2963
+:102880000E94071A7DC00E94EB19C501B4010E9485
+:10289000CF1976C08C2D90E0FC01E05EF109E531A6
+:1028A000F10508F050C0E059FF4F0C945B240C2D4B
+:1028B0000F70872D8F71112331F00E946819802FBE
+:1028C0000E94C5125DC00E948919802F0E94CC12FF
+:1028D00057C0112339F0011153C0872D8F710E9409
+:1028E000AE194EC0023008F04BC0F7CF112339F0BB
+:1028F000872D8F710E94681943C01123C9F3872D5A
+:102900008F710E9489193CC0112329F0872D8F7186
+:102910000E94531935C00E94491932C0112351F049
+:10292000172D1F71812F0E94681963E0812F0E946B
+:102930007C1A26C081E00E94851A023008F182E0EC
+:102940000E94851A1DC0112331F0002389F28C2DBD
+:102950000E94AE1115C0002391F28C2D0E947612B8
+:102960000FC0472D4F706C2DC7010E94BD050E94FE
+:102970006D1806C0472D4F706C2DC7010E949A0636
+:10298000DD20F9F00E94781A80FD1BC0F701128249
+:102990000E94721A0E946819C7010E94F0140E94D6
+:1029A000721A0F90DF91CF911F910F91FF90EF90CE
+:1029B000DF90CF90BF90AF909F908F907F900C94BE
+:1029C00089190F90DF91CF911F910F91FF90EF9098
+:1029D000DF90CF90BF90AF909F908F907F900895A1
+:1029E0000F931F93CF93DF93EC01888199812B8103
+:1029F0003C81232BB9F09F3F11F48F3F99F0CE011A
+:102A00000E94F205882371F0688179818A810E9491
+:102A10006E1A8C010E94231A0E94EA18B801CE0196
+:102A20000E94D312DF91CF911F910F9108950E94C0
+:102A3000461B0E94561B0E941B1B0E94701B0E947B
+:102A400089200E94D81F80E090E00E94B41080E0AE
+:102A500090E00C94CA100E94361B0C9417150E942B
+:102A6000631A292F22952F7030E02C3031054CF459
+:102A70002A3031056CF42250310922303105A8F496
+:102A800007C02C30310569F02F30310551F00DC0F1
+:102A9000803F69F018F4803E40F409C0843F29F477
+:102AA00006C093FB882780F9089580E0089581E0AF
+:102AB0000895CF93DF9300D000D01F92CDB7DEB73B
+:102AC0000F900F900F900F900F90DF91CF9108957E
+:102AD000CF93DF9300D000D000D0CDB7DEB72696DD
+:102AE0000FB6F894DEBF0FBECDBFDF91CF91089532
+:102AF0001F93CF93DF93C091850116E080918601EB
+:102B0000C81799F0D0E01C9FF0011D9FF00D112413
+:102B1000E957FE4F408151816281738184819581A3
+:102B20000E9468152196C770E9CFDF91CF911F9160
+:102B300008954091B7015091B8016091B901709129
+:102B4000BA018091BB019091BC010C9468158091F1
+:102B5000BC0182958F7009F054C08091B90188231F
+:102B600009F44FC080918501A09186016091B70161
+:102B70007091B8014091BA015091BB01B6E08A173B
+:102B800009F43FC090E041155105C1F17F3F11F4B8
+:102B90006F3FA1F1B89FF001B99FF00D1124E957E3
+:102BA000FE4F218172132AC02081621327C0228127
+:102BB000211124C0238134812417350710F42150BA
+:102BC0003109241B350B283C3105C0F42091BC0190
+:102BD0002F7020612093BC0126E0289FF001299FDF
+:102BE000F00D1124E457FE4F80818F708061808347
+:102BF00087EB91E00E94F0140C9478150196877091
+:102C0000BECF0895CF92DF92EF92FF920F931F9362
+:102C1000CF93DF93CDB7DEB762970FB6F894DEBFE0
+:102C20000FBECDBF8C0185E0F801DE011D9601903D
+:102C30000D928A95E1F7D8014C9111965C9111970C
+:102C400012966C9112971396CD90DC901497309158
+:102C5000B7017091B8018091BA019091BB010097C2
+:102C600009F46BC17F3F19F43F3F09F466C1E0905E
+:102C7000B901EE2009F4C0C02091BC01C816D906E4
+:102C800028F0F601E81BF90BCF0104C08095909560
+:102C90008C0D9D1DFF24F394883C910578F0F12C58
+:102CA000207F09F0C6C07C2DD98AC88A89890E94F4
+:102CB000591587EB91E00E94F014B1C0822F807FFC
+:102CC00009F046C0751314C0341312C0611110C04E
+:102CD0002F7020612093BC010E94991587EB91E031
+:102CE0000E94F0148091BC01D80115968C932EC0DF
+:102CF000CD2819F15F3F11F44F3FF9F0F62E611125
+:102D00001CC0809185012091860136E0821709F46C
+:102D10005AC090E0389FF001399FF00D1124E95717
+:102D2000FE4F7181571306C07081471303C0728133
+:102D3000711103C001968770E9CFF62E662309F45E
+:102D400018C18091BC0181608093BC01F12C11C13C
+:102D5000751308C0341306C0611104C08091BC0112
+:102D6000D801C3C04D875E878D859E856A8B0E9482
+:102D70002F156A898823E1F16623D1F12091BC01E6
+:102D8000822F82958F7090E0029774F08091B70146
+:102D90009091B80198878F831986DB86CA862C8725
+:102DA000CE0107960E94F01486E0F801A7EBB1E08F
+:102DB00001900D928A95E1F70E94A7150E9499153E
+:102DC000FF24F394D6C04D875E878D859E850E9433
+:102DD000631A292F22952F7030E0223031050CF034
+:102DE000BCC09F7009F0B6C0805E883008F4C1C0D6
+:102DF000C8010E94F014E4CFC816D90608F453C0E5
+:102E0000F601E81BF90BCF01883C910508F450C08E
+:102E1000F12C7C2DD98AC88A89890E945915E7EB43
+:102E2000F1E086E0DF011D928A95E9F70E9499158D
+:102E3000A0C0751314C0341312C0611110C080916A
+:102E4000BC01F8018583C8010E94F01486E0E7EB1D
+:102E5000F1E0DF011D928A95E9F7FE2C8AC04D87CB
+:102E60005E878D859E856A8B0E942F156A898823CF
+:102E700009F4BECF662309F4BBCF2091BC01822F99
+:102E800082958F7090E002970CF48ECF8091B701FD
+:102E90009091B8019A8389831B82DD82CC822E8334
+:102EA000CE0101967FCF809590958C0D9D1DACCF66
+:102EB000F62E662309F49CCF75132EC034132CC054
+:102EC0002091BC0120FD1FC0822F82958F70D9F008
+:102ED000D80115962C9315978F3049F08F5F982F56
+:102EE0009295907F822F8F70892B15968C93C801B5
+:102EF0000E94F01486E0F801A7EBB1E001900D927A
+:102F00008A95E1F793CF86E0F801A7EBB1E0019055
+:102F10000D928A95E1F72DC04D875E878D859E8540
+:102F20000E942F15811140CF8091BC018160809358
+:102F3000BC01C8010E94F0141CC0662309F458CFDC
+:102F40004D875E878D859E850E942F15882309F405
+:102F50004FCF2ACF811148CF0CC0243031050CF05F
+:102F600047CF9F7009F440CFF8019581907F09F019
+:102F70003BCF8F2D62960FB6F894DEBF0FBECDBF4C
+:102F8000DF91CF911F910F91FF90EF90DF90CF9045
+:102F900008951F93CF93DF93CDB7DEB72C970FB66D
+:102FA000F894DEBF0FBECDBF4F83588769877A87FD
+:102FB0008B879C87CE0107960E940216882369F0B2
+:102FC0008F8198852A853B85232BF1F19F3F09F05E
+:102FD00063C08F3F09F060C037C086E0FE013796BE
+:102FE000DE01119601900D928A95E1F76F81788547
+:102FF000EA85FB85309741F17F3F11F46F3F21F166
+:103000002091860130E0C90101968770992740918F
+:10301000850150E08417950709F447C069837A83D6
+:10302000FD83EC8396E0929FD001939FB00D112415
+:10303000A957BE4FFE01319601900D929A95E1F786
+:10304000809386010E94781516E080918501909109
+:1030500086018917C1F1189FC001112489579E4F1D
+:103060000E940216882379F1E09185011E9FF001EC
+:103070001124E957FE4F408151816281738184811F
+:1030800095810E9468158091850190E00196877076
+:10309000992780938501D9CF4F81588569857A8595
+:1030A0008B859C850E946815CFCF0E942B151092AE
+:1030B000860110928501E7EBF1E086E0DF011D92C9
+:1030C0008A95E9F7C1CF2C960FB6F894DEBF0FBEF4
+:1030D000CDBFDF91CF911F910895EF92FF920F9393
+:1030E0001F93CF93DF938C01009709F46CC0F12CF0
+:1030F000EE24E394E8012196F8018491843740F4AA
+:10310000843008F051C0813081F0823019F15BC009
+:10311000853709F444C0A8F19CE7980F903708F070
+:1031200052C08F770E94761241C00E5F1F4FFE0182
+:10313000C49180E28C0F883048F4C7708E2D01C096
+:10314000880FCA95EAF70E94491B14C08C2F0E9471
+:10315000AE112DC00E5F1F4FFE01C49180E28C0F97
+:10316000883058F4C7708E2D01C0880FCA95EAF7D1
+:103170000E944F1B0E94701B1AC08C2F0E94761257
+:1031800016C00E5F1F4FFE01C491CC2381F08FE962
+:103190009FE00197F1F700C00000C150F6CF0E5F2D
+:1031A0001F4FFE01F49003C00E94AE118E018F2DBF
+:1031B000882309F49FCFEFE9FFE03197F1F700C0D2
+:1031C00000008150F5CFDF91CF911F910F91FF90BB
+:1031D000EF90089508956093C1017093C2018093A8
+:1031E000C3019093C4010C9417150F931F93009182
+:1031F000C1011091C2012091C3013091C401DC01D1
+:10320000CB01802B912BA22BB32B8093C1019093E8
+:10321000C201A093C301B093C4011F910F910C94FC
+:1032200017150F931F930091C1011091C2012091B6
+:10323000C3013091C401DC01CB0180239123A2237F
+:10324000B3238093C1019093C201A093C301B093B3
+:10325000C4011F910F910C9417150F931F930091A8
+:10326000C1011091C2012091C3013091C401DC0160
+:10327000CB0180279127A227B3278093C101909388
+:10328000C201A093C301B093C4011F910F910C948C
+:1032900017151092BD011092BE011092BF0110923D
+:1032A000C0010C94171541E050E060E070E004C0EC
+:1032B000440F551F661F771F8A95D2F74093BD01B3
+:1032C0005093BE016093BF017093C0010C94171519
+:1032D00041E050E060E070E004C0440F551F661FFD
+:1032E000771F8A95D2F78091BD019091BE01A09180
+:1032F000BF01B091C001482B592B6A2B7B2B409307
+:10330000BD015093BE016093BF017093C0010C9446
+:10331000171541E050E060E070E004C0440F551F15
+:10332000661F771F8A95D2F74095509560957095E6
+:103330008091BD019091BE01A091BF01B091C001EB
+:10334000482359236A237B234093BD015093BE0138
+:103350006093BF017093C0010C94171541E050E0D9
+:1033600060E070E004C0440F551F661F771F8A9508
+:10337000D2F78091BD019091BE01A091BF01B091A3
+:10338000C001482759276A277B274093BD015093E6
+:10339000BE016093BF017093C0010C9417150F9389
+:1033A0001F930091BD011091BE012091BF0130918A
+:1033B000C001DC01CB01802B912BA22BB32B80937E
+:1033C000BD019093BE01A093BF01B093C0011F91B6
+:1033D0000F910C9417150F931F930091BD0110913D
+:1033E000BE012091BF013091C001DC01CB018023DF
+:1033F0009123A223B3238093BD019093BE01A09398
+:10340000BF01B093C0011F910F910C9417150F933A
+:103410001F930091BD011091BE012091BF01309119
+:10342000C001DC01CB0180279127A227B32780931D
+:10343000BD019093BE01A093BF01B093C0011F9145
+:103440000F910C9417150895CF92DF92EF92FF928F
+:103450000F931F93CF93DF938C01C090C101D09045
+:10346000C201E090C301F090C4018091BD01909130
+:10347000BE01A091BF01B091C001C82AD92AEA2A91
+:10348000FB2ACFE1D0E0D701C6010C2E04C0B695CF
+:10349000A795979587950A94D2F780FF06C0B80143
+:1034A0008C2F0E94F008019721F4219760F780E0AB
+:1034B00001C08C2FDF91CF911F910F91FF90EF9062
+:1034C000DF90CF900895CF93DF93EC010E94241AF0
+:1034D000BE010E94F008DF91CF910895CB010E94B8
+:1034E000631A08958091C501859585958595089500
+:1034F0008091C5018770089598E0899F90011124FB
+:10350000262B2093C5010C9468192091C501809544
+:1035100082238093C501982F977069F430E0482F7B
+:10352000552747FD50952417350729F08595859532
+:1035300085950C94891908959091C501977081E043
+:1035400009F480E0089590910C01992321F0909165
+:103550000D01911109C020910E0130910F01F90167
+:1035600032969FEF40E01FC0982F969596959695BE
+:103570009F3050F5E0910E01F0910F01E90FF11D20
+:10358000877021E030E0A90102C0440F551F8A95E1
+:10359000E2F7CA019181892B818308959F3F39F019
+:1035A0004F5F4E3041F051915813F8CF0DC051117B
+:1035B000F7CF942FF5CF9F3F39F0F901E90FF11DB7
+:1035C00097FDFA9582830895089590910C019923AF
+:1035D00021F090910D01911109C020910E013091BF
+:1035E0000F01F9013296205F3F4F1FC0982F96952B
+:1035F000969596959F30F0F4E0910E01F0910F01B1
+:10360000E90FF11D877021E030E0A90102C0440FED
+:10361000551F8A95E2F7CA0180959181892381839C
+:1036200008953196E217F30729F090819813F9CFA6
+:103630001082F7CF089581E090E0E0910E01F091C3
+:103640000F01E80FF91F1082019680319105A9F74B
+:1036500008959091D901892B8093D901089580957F
+:103660009091D90189238093D90108951092D901AD
+:1036700008959091D801892B8093D8010895809561
+:103680009091D80189238093D80108951092D80190
+:1036900008959091D701892B8093D7010895809543
+:1036A0009091D70189238093D70108951092D70173
+:1036B00008958093C60108951092C60108958091DF
+:1036C0000E0190910F01FC0131969C01205F3F4F4C
+:1036D00080E0919191118F5FE217F307D1F7089580
+:1036E000E0910E01F0910F018091D9018083E0916A
+:1036F0000E01F0910F0190818091D801892B808378
+:10370000E0910E01F0910F0190818091D701892BFA
+:1037100080838091C601882361F0E0910E01F091D1
+:103720000F019081892B80830E945F1B8111109271
+:10373000C60180910E0190910F010C949E1020E023
+:10374000009739F0AC0141505109842395232F5F34
+:10375000F7CF822F0895CF92DF92EF92FF926C0104
+:10376000EE24FF24C114D104E104F10421F0C701C7
+:10377000B60120E101C020E0C72ED82EE92EFF249B
+:10378000C114D104E104F10419F0285FC701B601A6
+:103790006B017C0154E0F694E794D794C7945A9552
+:1037A000D1F7C114D104E104F10419F02C5FC70171
+:1037B000B6016B017C0142E0F694E794D794C7947C
+:1037C0004A95D1F7C114D104E104F10419F02E5F38
+:1037D000C701B601DC01CB01B695A79597958795F2
+:1037E000892B8A2B8B2B09F02F5F822FFF90EF9074
+:1037F000DF90CF9008958091F101843021F11092F3
+:10380000DB0120E488E190E00FB6F894A89580935E
+:1038100060000FBE2093600080E00E948B0983B798
+:10382000817F846083BF83B7816083BF78948895EC
+:1038300083B78E7F83BF88E10FB6F89480936000D2
+:10384000109260000FBE0895089508950E94241CF0
+:103850000E94F3030E94251C0E94E80491E081115C
+:1038600001C090E0892F08950E942B150E949210AC
+:103870000C948B0982E084BD93E095BD9AEF97BDCF
+:1038800080936E0008952FB7F8948091DC01909199
+:10389000DD01A091DE01B091DF012FBF0895CF922D
+:1038A000DF92EF92FF920F931F932FB7F8944091FE
+:1038B000DC015091DD016091DE017091DF012FBFCD
+:1038C0006A017B01EE24FF248C0120E030E0C01669
+:1038D000D106E206F30610F4415051099A01281B63
+:1038E000390BC9011F910F91FF90EF90DF90CF909E
+:1038F00008951F920F920FB60F9211248F939F93EA
+:10390000AF93BF938091DC019091DD01A091DE0126
+:10391000B091DF010196A11DB11D8093DC01909350
+:10392000DD01A093DE01B093DF01BF91AF919F91C4
+:103930008F910F900FBE0F901F9018950E948F0DC2
+:10394000F8942FEF87EA91E6215080409040E1F70C
+:1039500000C0000087E090EBDC018093FB019093B6
+:10396000FC01A093FD01B093FE019CE088E10FB63D
+:10397000F894A895809360000FBE90936000FFCFED
+:10398000EF92FF920F931F93CF93DF93D82FCDE049
+:103990008C2F0E94E10405E010E0E82EF12CC70115
+:1039A000002E02C0959587950A94E2F780FF09C022
+:1039B000602F7C2F80E00E949B06D81302C081E01C
+:1039C00006C00150110958F7C15010F780E0DF918F
+:1039D000CF911F910F91FF90EF900895CF93C82F33
+:1039E0008CE20E94C01C882321F08C2FCF910C9474
+:1039F000C01C80E0CF910895CF930E94431E811197
+:103A000002C00E94291EC5E6C15049F00E94F3037E
+:103A10008FE39CE90197F1F700C00000F5CF89E240
+:103A20000E94EE1C811113C18AE20E94EE1C8111DA
+:103A30000E94291E85E00E94EE1C81110E949E1C9E
+:103A40000E944E1E8093DA0187E00E94EE1C8823BC
+:103A5000A9F18BE10E94EE1C882351F08091DA01DC
+:103A600081FB222720F991E0922790FB81F90EC07B
+:103A70008EE00E94EE1C882361F08091DA0182FBC7
+:103A8000222720F991E0922790FB82F98093DA01B6
+:103A900015C080E10E94EE1C9091DA01882341F06C
+:103AA00093FB222720F981E0822780FB93F904C051
+:103AB000892F809580FB90F99093DA018091DA014B
+:103AC0000E94521E0E94601E8093FA0180EE0E94A6
+:103AD000EE1C882341F08091FA01982F909590FB7D
+:103AE00080F98093FA0189E30E94EE1C882359F043
+:103AF0008091FA0181FB222720F991E0922790FB27
+:103B000081F98093FA0182EE0E94EE1C882359F01D
+:103B10008091FA0182FB222720F991E0922790FB05
+:103B200082F98093FA0186EE0E94EE1C882359F0F8
+:103B30008091FA0183FB222720F991E0922790FBE4
+:103B400083F98093FA0183EE0E94EE1C882359F0DA
+:103B50008091FA0184FB222720F991E0922790FBC3
+:103B600084F98093FA0185E30E94EE1C882359F0C2
+:103B70008091FA0185FB222720F991E0922790FBA2
+:103B800085F98093FA0181E30E94EE1C882359F0A5
+:103B90008091FA0186FB222720F991E0922790FB81
+:103BA00086F98093FA0181E10E94EE1C882359F086
+:103BB0008091FA0187FB222720F991E0922790FB60
+:103BC00087F98093FA018091FA010E94641E809126
+:103BD000FA0187FB882780F980930D0187E20E9414
+:103BE000EE1CC82F8EE10E94EE1C8111C2608FE195
+:103BF0000E94EE1C8111C46080E20E94EE1C8111C3
+:103C0000C86081E20E94EE1C8111C06182E20E94C4
+:103C1000EE1C8111C06283E20E94EE1C8111C0641F
+:103C200084E20E94EE1C882311F0C06802C0CC23FD
+:103C300029F08C2F0E945B1E6C2F03C00E94571E20
+:103C4000682F70E080E090E0CF910C94EB18CF915A
+:103C500008956DEE7EEF80E090E00E94952460E094
+:103C600082E090E00E94832460E083E090E00E9484
+:103C7000832460E084E090E00E94832460E085E09B
+:103C800090E00C94832480E090E00E947D2421E069
+:103C90008D3E9E4F09F020E0822F089582E090E053
+:103CA0000C947524682F82E090E00C94832483E0C8
+:103CB00090E00C947524682F83E090E00C948324AA
+:103CC00084E090E00C947524682F84E090E00C94DC
+:103CD00083248091E20180FF0BC06091130185E095
+:103CE000689FB001112475956795759567952BC0F0
+:103CF00081FF09C06091130185E0689FB001112424
+:103D00007595679520C082FF07C06091130185E01B
+:103D1000689FB001112417C09091E3019923D1F05D
+:103D200060911201961788F72091130185E0289F72
+:103D300090011124929FA001939F500D112470E0D7
+:103D4000CA010E9447246038710540F4611571056D
+:103D500039F002C065E070E0862F08958FE708957E
+:103D600081E008958091E20180FF08C06091110117
+:103D700070E0759567957595679521C081FF06C0C0
+:103D80006091110170E07595679519C082FF04C0BC
+:103D90006091110170E010C09091E3019923C1F08E
+:103DA000609110019617A0F780911101899FC001C1
+:103DB000112470E00E9447246038710528F46115D1
+:103DC000710521F0862F08958FE7089581E0089509
+:103DD00061E070E0F4CF803F21F40E94691E81957C
+:103DE00004C0813F29F40E94691E8093E601089572
+:103DF000823F21F40E94691E819504C0833F29F40B
+:103E00000E94691E8093E5010895893F19F40E947C
+:103E1000B21E05C08A3F31F40E94B21E8195809384
+:103E2000E70108958B3F21F40E94B21E819504C0E2
+:103E30008C3F29F40E94B21E8093E8010895843FCC
+:103E400021F48091E401816017C0853F21F48091C5
+:103E5000E401826011C0863F21F48091E401846016
+:103E60000BC0873F21F48091E401886005C0883F42
+:103E700031F48091E40180618093E40108958D3FE5
+:103E800021F48091E20181600BC08E3F21F480918A
+:103E9000E201826005C08F3F29F48091E2018460D5
+:103EA0008093E2010895803F39F48091E60187FF15
+:103EB0006CC01092E60169C0813F29F48091E6014F
+:103EC0001816BCF362C09091E501823F29F497FF78
+:103ED0005CC01092E50159C0833F19F41916CCF368
+:103EE00054C0893F41F48091E70118160CF04DC091
+:103EF0001092E7014AC08A3F29F48091E70187FFC9
+:103F000044C0F6CF8B3F39F48091E80187FF3DC074
+:103F10001092E8013AC08C3F29F48091E80118160C
+:103F2000BCF333C0843F21F48091E4018E7F17C03D
+:103F3000853F21F48091E4018D7F11C0863F21F4FB
+:103F40008091E4018B7F0BC0873F21F48091E401D5
+:103F5000877F05C0883F31F48091E4018F7E809394
+:103F6000E40113C08D3F21F48091E2018E7F0BC0EC
+:103F70008E3F21F48091E2018D7F05C08F3F29F4AF
+:103F80008091E2018B7F8093E2018091E5018111B4
+:103F90000EC08091E60181110AC08091E701811174
+:103FA00006C08091E801811102C01092E3010895DA
+:103FB00084EE91E00E94A9100E94431C9093E101BD
+:103FC0008093E00108951F93CF93DF938091E001E8
+:103FD0009091E1010E944F1CAC019091E301992363
+:103FE00021F02091140130E006C0209115018AE0F3
+:103FF000289F900111244217530708F486C080912E
+:10400000E501C091E601D091E7011091E80181112D
+:1040100007C0C11176C0D11174C0111172C075C032
+:104020009F3F19F09F5F9093E301181624F40E94BC
+:10403000691E8093E5018091E50187FF05C00E941C
+:10404000691E81958093E5011C1624F40E94691E67
+:104050008093E6018091E60187FF05C00E94691EFA
+:1040600081958093E6016091E501662339F1C09165
+:10407000E601CC2319F1772767FD7095872F972FDD
+:104080000E94582323E333E343E35FE30E94BC230E
+:104090000E9425236093E5016C2F772767FD7095BB
+:1040A000872F972F0E94582323E333E343E35FE3F3
+:1040B0000E94BC230E9425236093E6011D1624F470
+:1040C0000E94B21E8093E7018091E70187FF05C03F
+:1040D0000E94B21E81958093E701111624F40E947C
+:1040E000B21E8093E8018091E80187FF05C00E941D
+:1040F000B21E81958093E801DF91CF911F910C94BE
+:10410000D81F9F3F09F08ECF96CFDF91CF911F919F
+:104110000895E4EEF1E085E0DF011D928A95E9F76C
+:104120001092E3011092E2010895833081F128F4A6
+:10413000813059F08230D1F00895853009F449C0BA
+:10414000B8F1863009F456C0089580911501262FE4
+:1041500030E0280F311D2F3F310524F4680F6093A4
+:10416000150108958FEF8093150108958091140132
+:10417000262F30E0280F311D2F3F310524F4680F22
+:104180006093140108958FEF809314010895809136
+:104190001301262F30E0280F311D2F3F310524F465
+:1041A000680F6093130108958FEF809313010895B2
+:1041B00080911201262F30E0280F311D2F3F31054D
+:1041C00024F4680F6093120108958FEF8093120119
+:1041D000089580911101262F30E0280F311D2F3FC7
+:1041E000310524F4680F6093110108958FEF8093D7
+:1041F0001101089580911001262F30E0280F311D04
+:104200002F3F310524F4680F6093100108958FEF5C
+:10421000809310010895833011F128F4813049F022
+:10422000823091F00895853081F120F18630C1F11E
+:10423000089580911501681720F4861B809315015D
+:10424000089510921501089580911401681720F4C3
+:10425000861B809314010895109214010895809193
+:104260001301681720F4861B8093130108951092A0
+:104270001301089580911201681720F4861B809322
+:10428000120108951092120108958091110168178A
+:1042900020F4861B80931101089510921101089556
+:1042A00080911001681720F4861B809310010895F7
+:1042B0001092100108950F931F938D3109F46BC074
+:1042C00008F03FC08E3009F47FC0C0F4873009F495
+:1042D00069C068F4863009F0B1C08091DA01817F4D
+:1042E0008E7F8093DA0181E08093EA01A8C0883054
+:1042F00009F4A2C08B3009F49FC0A0C0863109F434
+:104300009BC078F4803109F472C0813109F096C005
+:104310000E942B1590910D0181E0892780930D015A
+:104320008BC0893109F488C08B3109F087C0809136
+:10433000DA0181FB222720F991E0922790FB81F995
+:104340004CC0853309F470C048F4873209F46CC05E
+:1043500008F459C0893209F467C070C0833438F456
+:104360008A3308F04EC0883309F466C067C08334CE
+:1043700009F45AC0883409F061C00E942B150FEF70
+:1043800013ED20E3015010402040E1F700C0000091
+:104390000E949E1C51C00E94DF220E9492100E9427
+:1043A0008B094AC09091DA01892F8095817080FB3A
+:1043B00090F929F0966098609093DA0140C0997F57
+:1043C000977F9093DA0138C08091DA0182FB22272F
+:1043D00020F991E0922790FB82F98093DA019923EA
+:1043E00059F18091DA0181608093DA0125C08091D2
+:1043F000DA0183FB222720F991E0922790FB83F9D1
+:10440000ECCF895301C08D5141E050E060E070E095
+:104410008A019B0104C0000F111F221F331F8A95C0
+:10442000D2F7C901B80104C061E070E080E090E01B
+:104430000E94EB180E942B1581E001C080E01F91C3
+:104440000F91089580E0089580E00895CF93C82FDC
+:104450008091EA01813079F018F08230E9F187C06B
+:10446000E0910E01F0910F018081813169F082327B
+:1044700009F07FC009C0E0910E01F0910F01808129
+:10448000813111F0823261F48C2F0E94222281113D
+:1044900004C08C2F0E945B211DC081E090E01AC0F7
+:1044A0008C2F0E942422811114C0C43179F048F469
+:1044B000CB3079F0C03109F060C082E08093EA012E
+:1044C00008C0C93219F0C83321F057C01092EA0170
+:1044D00054C081E0817053C0C93289F118F5C431EC
+:1044E00071F1A8F4C73009F046C08AE08093150145
+:1044F00094E19093140193E090931301809312013F
+:1045000088E08093110188E28093100134C0CE517D
+:10451000C63088F5EC2FF0E0E65DFE4F8081809399
+:10452000E90129C0CE34E9F020F4CB3421F56AE06A
+:1045300013C0C13579F0C235F1F461E00DC080914E
+:10454000E901882319F01092E90115C081E08093F8
+:10455000EA0115C061E006C08091E9010E94952042
+:104560000AC06AE08091E9010E940B2104C0109208
+:10457000EA0180E004C081E002C080E0ABCFCF91CF
+:104580000895E1E8F0E08081886080838081816027
+:1045900080838FB7F89493E09093890090ED909387
+:1045A00088008FBF0895EFE6F0E08081826080830D
+:1045B0000895EFE6F0E080818D7F80830895EFE637
+:1045C000F0E0908182E08927808308951F920F9206
+:1045D0000FB60F9211242F933F934F935F936F93D6
+:1045E0007F938F939F93AF93BF93EF93FF938091AC
+:1045F000EB019091EC0101969093EC018093EB011B
+:10460000811103C082E00E948B09E091EC01E695E4
+:10461000E695F0E0EC5FF94FE4918091EB018E13A9
+:1046200003C080E00E948B09FF91EF91BF91AF9191
+:104630009F918F917F916F915F914F913F912F91BA
+:104640000F900FBE0F901F90189504D06894B11171
+:104650008DC0089570D088F09F5790F0B92F99279A
+:10466000B751A0F0D1F0660F771F881F991F1AF07D
+:10467000BA95C9F712C0B13081F077D0B1E0089592
+:1046800074C0672F782F8827B85F39F0B93FCCF313
+:10469000869577956795B395D9F73EF49095809573
+:1046A000709561957F4F8F4F9F4F0895E89409C093
+:1046B00097FB3EF490958095709561957F4F8F4F55
+:1046C0009F4F9923A9F0F92F96E9BB279395F6956B
+:1046D000879577956795B795F111F8CFFAF4BB0FE9
+:1046E00011F460FF1BC06F5F7F4F8F4F9F4F16C04D
+:1046F000882311F096E911C0772321F09EE8872FD7
+:10470000762F05C0662371F096E8862F70E060E092
+:104710002AF09A95660F771F881FDAF7880F96950B
+:10472000879597F9089557FD9058440F551F59F0F4
+:104730005F3F71F04795880F97FB991F61F09F3F8E
+:1047400079F087950895121613061406551FF2CFB7
+:104750004695F1DF08C0161617061806991FF1CF07
+:1047600086957105610508940895E894BB2766272E
+:104770007727CB0197F908950BD078C069D028F03E
+:104780006ED018F0952309F05AC05FC01124EECF07
+:10479000CADFA0F3959FD1F3950F50E0551F629F9C
+:1047A000F001729FBB27F00DB11D639FAA27F00D8A
+:1047B000B11DAA1F649F6627B00DA11D661F829FB1
+:1047C0002227B00DA11D621F739FB00DA11D621F96
+:1047D000839FA00D611D221F749F3327A00D611DB3
+:1047E000231F849F600D211D822F762F6A2F112495
+:1047F0009F5750408AF0E1F088234AF0EE0FFF1FE8
+:10480000BB1F661F771F881F91505040A9F79E3F1E
+:10481000510570F014C0AACF5F3FECF3983EDCF373
+:10482000869577956795B795F795E7959F5FC1F75B
+:10483000FE2B880F911D9695879597F9089597F906
+:104840009F6780E870E060E008959FEF80EC089536
+:1048500000240A941616170618060906089500245F
+:104860000A9412161306140605060895092E0394D9
+:10487000000C11F4882352F0BB0F40F4BF2B11F44D
+:1048800060FF04C06F5F7F4F8F4F9F4F089597FB6E
+:10489000072E16F4009407D077FD09D00E946124FA
+:1048A00007FC05D03EF4909581959F4F0895709533
+:1048B00061957F4F0895EE0FFF1F0590F491E02D55
+:1048C0000994AA1BBB1B51E107C0AA1FBB1FA61757
+:1048D000B70710F0A61BB70B881F991F5A95A9F7A9
+:1048E00080959095BC01CD010895F999FECF92BDB8
+:1048F00081BDF89A992780B50895A8E1B0E042E01B
+:1049000050E00C949D24262FF999FECF92BD81BDD5
+:10491000F89A019700B4021639F01FBA20BD0FB6FD
+:10492000F894FA9AF99A0FBE08950196272F0E94DB
+:1049300084240C948324DC01CB01FC01F999FECF83
+:1049400006C0F2BDE1BDF89A319600B40D92415017
+:0A4950005040B8F70895F894FFCF27
+:10495A0002208D091B0AF809C40990090101C7013F
+:10496A0028080A03140A3F4D3639C5057805420559
+:10497A0009059C04B504CE04E704010203040506F4
+:04498A000708090011
+:00000001FF
diff --git a/keyboards/ergodox_ez/keymaps/jacobono/img/colemak-default-layer.png b/keyboards/ergodox_ez/keymaps/jacobono/img/colemak-default-layer.png Binary files differnew file mode 100644 index 0000000000..06f63c4968 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/jacobono/img/colemak-default-layer.png diff --git a/keyboards/ergodox_ez/keymaps/jacobono/img/number-dpad-layer.png b/keyboards/ergodox_ez/keymaps/jacobono/img/number-dpad-layer.png Binary files differnew file mode 100644 index 0000000000..4dd7182785 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/jacobono/img/number-dpad-layer.png diff --git a/keyboards/ergodox_ez/keymaps/jacobono/img/symbol-layer.png b/keyboards/ergodox_ez/keymaps/jacobono/img/symbol-layer.png Binary files differnew file mode 100644 index 0000000000..ee224cf0c1 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/jacobono/img/symbol-layer.png diff --git a/keyboards/ergodox_ez/keymaps/jacobono/keymap.c b/keyboards/ergodox_ez/keymaps/jacobono/keymap.c new file mode 100644 index 0000000000..6b19800af0 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/jacobono/keymap.c @@ -0,0 +1,273 @@ +#include "ergodox_ez.h" +#include "debug.h" +#include "action_layer.h" + +#define COLEMAK 0 // new colemak layout +#define QWERTY 1 // default layer +#define SYMB 2 // symbols +#define NUMPAD 3 // number pad +#define MDIA 4 // media keys + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* Keymap 0: Basic COLEMAK layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | 1 | 2 | 3 | 4 | 5 | LEFT | | RIGHT| 6 | 7 | 8 | 9 | 0 | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Tab | Q | W | F | P | G | | | | J | L | U | Y | ; | TAB | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | BkSp | A | R | S | T | D |------| |------| H | N | E | I | O | DEL | + * |--------+------+------+------+------+------| | LGUI(TAB)------+------+------+------+------+--------| + * | LShift |Z/Ctrl| X | C | V | B | | | | K | M | , | . |//Ctrl| RShift | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | L1 | | | UP |MO(L2)| |MO(L2)| Down | | ALT | RGUI | + * `----------------------------------' `------------------------------------' + * ,-------------. ,---------------. + * | LGUI | App | |Ctrl/Esc| Alt | + * ,------|------|------| |--------+--------+------. + * | | |QUKSL | | QUKSL | | | + * |Space |ENTER |------| |--------| ENTER |Space | + * | | |MO(L3)| | MO(L3) | | | + * `--------------------' `------------------------' + */ + + // If it accepts an argument (i.e, is a function), it doesn't need KC_. + // Otherwise, it needs KC_* + [COLEMAK] = KEYMAP( // layer 0 : Colemak layout default layer + // left hand + KC_TRNS, KC_1, KC_2, KC_3, KC_4, KC_5, KC_LEFT, + KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_TRNS, + KC_BSPC, KC_A, KC_R, KC_S, KC_T, KC_D, + KC_LSFT, CTL_T(KC_Z), KC_X, KC_C, KC_V, KC_B, KC_TRNS, + TG(QWERTY), KC_TRNS, KC_TRNS,KC_UP, MO(SYMB), + KC_LGUI, KC_APP, + LGUI(S(KC_SPC)), + KC_SPC,KC_ENT,MO(NUMPAD), + // right hand + KC_RGHT, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DELT, + KC_TRNS, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_TAB, + KC_H, KC_N, KC_E, KC_I, KC_O, KC_DEL, + LGUI(KC_TAB), KC_K, KC_M, KC_COMM, KC_DOT, CTL_T(KC_SLSH), KC_RSFT, + MO(SYMB), KC_DOWN, KC_TRNS, KC_RALT, KC_RGUI, + CTL_T(KC_ESC), KC_LALT, + LGUI(S(KC_SPC)), + MO(NUMPAD), KC_ENT, KC_SPC), + + /* Keymap 1: Basic QWERTY layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | BkSp | 1 | 2 | 3 | 4 | 5 | LEFT | | RIGHT| 6 | 7 | 8 | 9 | 0 | DEL | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Tab | Q | W | E | R | T | L0 | | L0 | Y | U | I | O | P | \ | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | Ctrl | A | S | D | F | G |------| |------| H | J | K | L |; / L4| CTRL | + * |--------+------+------+------+------+------| Alt | | Alt |------+------+------+------+------+--------| + * | LShift |Z/Ctrl| X | C | V | B | | | | N | M | , | . |//Ctrl| RShift | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * |Grv/L3| '" |AltShf| Left |MO(L2)| |MO(L2)| Down | [ | ] | ~L3 | + * `----------------------------------' `----------------------------------' + * ,-------------. ,---------------. + * | Tab | BkSp | | Alt |Ctrl/Esc| + * ,------|------|------| |------+--------+------. + * | | | Home | | PgUp | | | + * | Space| LGUI |------| |------| RGUI |Enter | + * | | | End | | PgDn | | | + * `--------------------' `----------------------' + */ + // If it accepts an argument (i.e, is a function), it doesn't need KC_. + // Otherwise, it needs KC_* + [QWERTY] = KEYMAP( // layer 1 + // left hand + KC_BSPC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_LEFT, + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_TRNS, + KC_LCTRL, KC_A, KC_S, KC_D, KC_F, KC_G, + KC_LSFT, CTL_T(KC_Z), KC_X, KC_C, KC_V, KC_B, KC_LALT, + KC_TRNS, KC_QUOT, LALT(KC_LSFT), KC_LEFT, MO(SYMB), + KC_TAB, KC_DELT, + KC_HOME, + KC_SPC, KC_LGUI, KC_END, + // right hand + KC_RGHT, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DELT, + KC_TRNS, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, + KC_H, KC_J, KC_K, KC_L, LT(MDIA, KC_SCLN), KC_RCTRL, + KC_RALT, KC_N, KC_M, KC_COMM, KC_DOT, CTL_T(KC_SLSH), KC_RSFT, + MO(SYMB), KC_DOWN, KC_LBRC, KC_RBRC, KC_FN1, + KC_LALT, CTL_T(KC_ESC), + KC_PGUP, + KC_PGDN, KC_RGUI, KC_ENT), + + + /* Keymap 2: Symbol Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | @ | * | = | _ | | | | ~ | { | } | # | : | F12 | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | ! | + | - | " |------| |------| " | ( | ) | ' | ` | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | % | ^ | $ | & | | | | ; | [ | ] | \ | / | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ + // SYMBOL + [SYMB] = KEYMAP( + // left hand + KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, + KC_TRNS, KC_TRNS, KC_AT, KC_ASTR, KC_EQL, KC_UNDS, KC_TRNS, + KC_TRNS, KC_PIPE, KC_EXLM, KC_PLUS, KC_MINS, S(KC_QUOTE), + KC_TRNS, KC_TRNS, KC_PERC, KC_CIRC, KC_DLR, KC_AMPR, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + + // right hand + KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + KC_TRNS, KC_TILD, KC_LCBR, KC_RCBR, KC_HASH, S(KC_SCLN), KC_F12, + S(KC_QUOTE),KC_LPRN, KC_RPRN, KC_QUOTE, KC_GRV, KC_TRNS, + KC_TRNS, KC_SCLN, KC_LBRC, KC_RBRC, KC_BSLS, KC_SLSH, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS), + + /* Keymap 3: Numpad Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | UP | | | | | | $ | 7 | 8 | 9 | + | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | LEFT | DOWN | RIGHT| |------| |------| = | 4 | 5 | 6 | - | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | 1 | 2 | 3 | * | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | , | 0 | . | / | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ + // Numpad + [NUMPAD] = KEYMAP( + // left hand + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS,KC_UP,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS,KC_LEFT,KC_DOWN,KC_RIGHT,KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS, + KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS, + // right hand + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_DLR, KC_7, KC_8, KC_9, KC_PLUS, KC_TRNS, + KC_EQL, KC_4, KC_5, KC_6, KC_MINS, KC_TRNS, + KC_TRNS, KC_AMPR, KC_1, KC_2, KC_3, KC_ASTR, KC_TRNS, + KC_COMMA,KC_0, KC_DOT, KC_SLSH, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS), + + /* Keymap 4: Media and mouse keys + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | MsUp | | | | | | | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | |MsLeft|MsDown|MsRght| |------| |------| | | | | | Play | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | | Prev | Next | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | Lclk | Rclk | |VolUp |VolDn | Mute | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | |Brwser| + * | | |------| |------| |Back | + * | | | | | | | | + * `--------------------' `--------------------' + */ + // MEDIA AND MOUSE + KEYMAP( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_BTN1, KC_BTN2, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + // right hand + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, + KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, + KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_WBAK), +}; + +const uint16_t PROGMEM fn_actions[] = { + [1] = ACTION_LAYER_TAP_TOGGLE(SYMB) // FN1 - Momentary Layer 1 (Symbols) +}; + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + // MACRODOWN only works in this function + switch(id) { + case 0: + if (record->event.pressed) { + register_code(KC_RSFT); + } else { + unregister_code(KC_RSFT); + } + break; + } + return MACRO_NONE; +}; + +// Runs just one time when the keyboard initializes. +void matrix_init_user(void) { + +}; + +// Runs constantly in the background, in a loop. +void matrix_scan_user(void) { + + uint8_t layer = biton32(layer_state); + + ergodox_board_led_off(); + ergodox_right_led_1_off(); + ergodox_right_led_2_off(); + ergodox_right_led_3_off(); + switch (layer) { + // TODO: Make this relevant to the ErgoDox EZ. + case 1: + ergodox_right_led_1_on(); + break; + case 2: + ergodox_right_led_2_on(); + break; + default: + // none + break; + } + +}; |