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/workman_osx_mdw | |
parent | 464c8e274f993d3571fe5ea5e836fe55a3912ffe (diff) | |
download | qmk_firmware-649b33d7783cf3021928534b7ae127e0a89e8807.tar.gz |
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/workman_osx_mdw')
-rw-r--r-- | keyboards/ergodox_ez/keymaps/workman_osx_mdw/compiled.hex | 1213 | ||||
-rw-r--r-- | keyboards/ergodox_ez/keymaps/workman_osx_mdw/keymap.c | 366 |
2 files changed, 1579 insertions, 0 deletions
diff --git a/keyboards/ergodox_ez/keymaps/workman_osx_mdw/compiled.hex b/keyboards/ergodox_ez/keymaps/workman_osx_mdw/compiled.hex new file mode 100644 index 000000000..8bde2f29d --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/workman_osx_mdw/compiled.hex @@ -0,0 +1,1213 @@ +:100000000C947B030C94BF030C94BF030C94BF03AC
+:100010000C94BF030C94BF030C94BF030C94BF0358
+:100020000C94BF030C94BF030C946C100C943E1101
+:100030000C94BF030C94BF030C94BF030C94BF0338
+:100040000C94BF030C94F8230C94BF030C94BF03CF
+:100050000C94BF030C94DA1E0C94BF030C94BF03E2
+:100060000C94BF030C94BF030C94BF030C94BF0308
+:100070000C94BF030C94BF030C94BF030C94BF03F8
+:100080000C94BF030C94BF030C94BF030C94BF03E8
+:100090000C94BF030C94BF030C94BF030C94BF03D8
+:1000A0000C94BF030C94BF030C94BF03AB11CD1190
+:1000B000BB12CD11BB1212123512BB128A129D1245
+:1000C0006C156C159B159B15D115F1152217221770
+:1000D000FC152217AC16AC161317221722171C1783
+:1000E000B916B916B916B916B916B916B916B91698
+:1000F000B916B916B916B916B916B916B916B91688
+:10010000CB16D816DF16E616F0160122022201C41D
+:1001100002C4000121022101C402C4000120022006
+:1001200001C402C400011F021F01C402C400013146
+:10013000023101C402C40001E10131023102E101D6
+:10014000C402C4000126022601C402C40001250223
+:100150002501C402C4000124022401C402C4000118
+:1001600023022301C402C40001E10134023402E18C
+:1001700001C402C400012D022D01C402C40001E12A
+:100180000127022702E101C402C40001E1012502A6
+:100190002502E101C402C400011E021E01C402C402
+:1001A0000001E10130023002E101C402C40001E1BA
+:1001B000012F022F02E101C402C40001270227011E
+:1001C000C402C400012E022E01C402C40001E101D8
+:1001D00026022602E101C402C4000138023801C42B
+:1001E00002C40001E1011E021E02E101C402C400BA
+:1001F0000130023001C402C400012F022F01C402E9
+:10020000C40001E1012D022D02E101C402C400017C
+:10021000E10121022102E101C402C40001E1011F48
+:10022000021F02E101C402C40001E1012E022E02FC
+:10023000E101C402C40001E10138023802E101C455
+:1002400002C40001E10124022402E101C402C4004D
+:1002500001E10122022202E101C402C4000000F017
+:10026000A101840884088A35002B00296FE1000071
+:100270000000001E00140004001D0000004D001FBF
+:1002800000070016001B00E0002C00200015000BEA
+:10029000001000E2002A0021001A0017000600E307
+:1002A000004A00220005000A00190000000000506A
+:1002B00000015300000000000000004F0001530047
+:1002C0000000670000000023000D001C000E00006D
+:1002D0000000002400090011000F0050004B002511
+:1002E00000180008003600510028002600130012F4
+:1002F00000370052002C00270033000C0038614FFB
+:10030000004E002D0031003400E500C40000000163
+:1003100000010001000100010000003A0022023843
+:10032000002300010001003B0024022602240001FA
+:100330000001003C0038022E002500010001003DB4
+:10034000002E0227002600010001003E001F022FA0
+:100350000231020000010001000100000001000064
+:100360000001000100010000000100000001003F49
+:10037000002102300238000000010040002D021E62
+:10038000001F000100010041002F00250220000194
+:10039000000100420030002702210001000100435B
+:1003A000001E022D0022000100010044004500341F
+:1003B0000001000100000001000100010001000136
+:1003C0000000000100010001000100010001000126
+:1003D000000100F2000100010001000100F000F145
+:1003E000000100F400010001000100F3000100F52C
+:1003F00000010001000100010001000000010001F6
+:1004000000010000000100000001000100010000E7
+:1004100000010000000100010001000100010000D6
+:100420000001000100010001000100A9000100011C
+:100430000001000100AC00AA00B6000100010001AB
+:1004400000AB00A800010001000100010001000153
+:1004500000010001000100AE0001000100000001E8
+:1004600000010001000100010000003A0064306D4D
+:10047000307830010001003B0065306E307930018A
+:100480000001003C0066306F307A30010001003D11
+:1004900000673070307B30010001003E0068307131
+:1004A000307C30000001000100010000000100006C
+:1004B0000001000100010000000100000001003FF8
+:1004C00000693072307D300000010040006A3073F6
+:1004D000307E300100010041006B3074307F30010C
+:1004E00000010042006C3075308030010001004393
+:1004F00000823076308130010001004400450077F1
+:100500003001000100000016034500720067006F13
+:100510000044006F007800200045005A00000016DB
+:10052000034500720067006F0044006F00780020F0
+:100530000045005A0000000403090409026D00048C
+:100540000100A0FA090400000103010100092111C2
+:100550000100012240000705810308000A09040187
+:10056000000103010200092111010001224D0007D1
+:1005700005820308000A09040200010300000009C3
+:1005800021110100012236000705830308000A0932
+:1005900004030001030000000921110100012239B8
+:1005A000000705840310000112011001000000087B
+:1005B000EDFE071301000102000105010906A1017A
+:1005C000050719E029E71500250195087501810245
+:1005D0000508190129059505750191029501750315
+:1005E00091010507190029771500250195787501F6
+:1005F0008102C005010980A101850216010026B70C
+:10060000001A01002AB700751095018100C0050C81
+:100610000901A1018503160100269C021A01002A86
+:100620009C02751095018100C005010902A1010914
+:1006300001A1000509190129051500250195057578
+:100640000181029501750381010501093009311508
+:1006500081257F95027508810609381581257F95CA
+:100660000175088106050C0A38021581257F950160
+:1006700075088106C0C005010906A101050719E03A
+:1006800029E7150025019508750181029501750876
+:10069000810105081901290595057501910295014A
+:1006A000750391010507190029FF150026FF009524
+:1006B0000675088100C00000000000000000000076
+:1006C00000010204060A0F17202C3A4A5D71879D2B
+:1006D000B3C7DAE9F5FCFFFCF5E9DAC7B39D87712A
+:1006E0005D4A3A2C20170F0A0604020100000000A0
+:1006F00000000000000011241FBECFEFDAE0DEBFD3
+:10070000CDBF04B603FE24C08091FD019091FE018F
+:10071000A091FF01B09100028730904BA740B04BF1
+:10072000B9F41092FD011092FE011092FF01109297
+:10073000000214BE84B7877F84BF88E10FB6F894A7
+:1007400080936000109260000FBEE0E0FFE3099527
+:1007500011E0A0E0B1E0EEE7FBE402C005900D92ED
+:10076000A433B107D9F711E0A4E3B1E001C01D92B1
+:10077000AD3FB107E1F70E94B40D0C94BD250C9478
+:1007800000001092B9008AE08093B800089594EABE
+:100790009093BC009091BC0097FFFCCF9091B90062
+:1007A000987F983021F0903111F081E00895809386
+:1007B000BB0084E88093BC008091BC0087FFFCCF25
+:1007C0008091B900887F883111F0803471F780E022
+:1007D000089584E98093BC008091BC0084FDFCCF27
+:1007E00008958093BB0084E88093BC008091BC0096
+:1007F00087FFFCCF9091B900987F81E0983209F48F
+:1008000080E0089584E88093BC008091BC0087FF5D
+:10081000FCCF8091BB00089580B38C7080BB81B306
+:10082000836F81BB089580910101811115C080E41F
+:100830000E94C7038093010181110CC082E10E94D4
+:10084000F10380930101811105C08FEF0E94F10334
+:10085000809301010E94E90384B1807F84B985B14E
+:10086000807F85B98AB1837F8AB98BB1837F8BB949
+:100870003E98469808950E94DD05809301010E94EC
+:1008800013040E940C04A5E3B1E0E3E4F1E08EE080
+:100890008E0F11921D928E13FCCF0C94C7050E94EF
+:1008A000DD05809301010E9413040E940C04A5E35E
+:1008B000B1E0E3E4F1E08EE08E0F11921D928E1311
+:1008C000FCCF0895BF92CF92DF92EF92FF920F93E9
+:1008D0001F93CF93DF9380910101882379F080915A
+:1008E00034018F5F80933401811108C00E94DD05BF
+:1008F00080930101811102C00E946F0505E311E0A0
+:10090000C0E0D0E0DD24D39482E0C82EEE24E3944E
+:10091000F12CC730D10500F580910101811164C02F
+:1009200080E40E94C70380930101811112C082E11B
+:100930000E94F1038093010181110BC0C7010C2EAD
+:1009400001C0880F0A94EAF780950E94F103809312
+:1009500001010E94E90348C0CA30A1F028F4C83060
+:1009600059F0C93061F005C0CC3089F070F0CD305D
+:1009700089F0209A289810C0219A29980DC0229AAF
+:100980002A980AC0239A2B9807C0529A01C0539AFA
+:100990005B9802C03E9A469890EA9A95F1F79FB10B
+:1009A000799902C082E001C080E091709D25982B6A
+:1009B0007C9902C084E001C080E0892B7D9902C04F
+:1009C00038E001C030E0832B7E9902C020E101C0F5
+:1009D00020E0822B9FB19095991F9927991F92959E
+:1009E000990F907E892B0FC080910101811149C020
+:1009F00080E40E94C70380930101882379F1B12C20
+:100A00000E94E9038B2DF8019081981719F08083DB
+:100A1000C09200010E94130421960F5F1F4FCE3039
+:100A2000D10509F076CF80910001882361F18150D2
+:100A300080930001882339F08FE99FE00197F1F757
+:100A400000C0000020C0A3E4B1E0E5E3F1E0CF0185
+:100A5000825F91919D938E13FCCF15C083E10E941C
+:100A6000F103809301018111CACF81E40E94C70381
+:100A7000809301018111C3CF0E940204B82EB0946B
+:100A8000BFCF80E0C0CF0E946D0581E0DF91CF91A4
+:100A90001F910F91FF90EF90DF90CF90BF9008953E
+:100AA000E82FF0E0ED5BFE4F8081089508950F93ED
+:100AB0001F93CF93DF93C3E4D1E010E00C2F025FCC
+:100AC000899190E00E94011E180F0C13F9CF812F1D
+:100AD000DF91CF911F910F9108950C94C007569804
+:100AE0005E9825982D9826982E9827982F988FEF06
+:100AF00090E0909389008093880090938B0080937E
+:100B00008A0090938D0080938C00259A2D9A2FEF68
+:100B100080E792E0215080409040E1F700C0000063
+:100B2000269A2E9A2FEF80E792E021508040904045
+:100B3000E1F700C00000279A2F9A2FEF80E792E09C
+:100B4000215080409040E1F700C0000025982D988A
+:100B50002FEF80E792E0215080409040E1F700C005
+:100B6000000026982E982FEF80E792E021508040D9
+:100B70009040E1F700C0000027982F9856985E98A3
+:100B800025982D9826982E9827982F98089589EAC9
+:100B90008093800089E08093810024982C983F986E
+:100BA0008AB18F748AB96E98479A8BB1806B8BB972
+:100BB000769A0E946F050C94BF0780E28093010132
+:100BC0008091510181110EC00E94C10381E0809388
+:100BD00051012FEF83ED90E3215080409040E1F7E9
+:100BE00000C0000080E40E94C703809301018111CE
+:100BF0002EC00E94F10380930101811128C00E9440
+:100C0000F10380930101811122C08FE30E94F1035F
+:100C10008093010181111BC00E94E90380E40E94BE
+:100C2000C70380930101811112C08CE00E94F1037F
+:100C30008093010181110BC00E94F1038093010197
+:100C4000811105C08FE30E94F103809301010E948E
+:100C5000E903809101010895CF93DF93EC0162379E
+:100C600009F4C6C038F56A3609F483C098F46636CC
+:100C700009F463C048F4643609F451C008F056C062
+:100C8000662309F441C01CC1683609F464C008F445
+:100C90005BC068C06E3609F48FC030F46C3609F45E
+:100CA00076C008F46DC081C0603709F493C008F4C1
+:100CB0008AC097C06A3709F4D1C080F4663709F456
+:100CC000B3C030F4643709F4A1C008F498C0A5C0DB
+:100CD000683709F4B7C008F4AEC0BAC06E3709F47B
+:100CE000D5C030F46C3709F4C5C008F4BDC0C8C025
+:100CF000603809F4D7C008F4CFC0613809F4D8C00F
+:100D0000623809F44BC0DCC08A81882321F085EE6B
+:100D10000E941014D5C085EE0E94D814D1C00E9444
+:100D2000AB1B8A81882309F4CBC0CDC00E94AB1BCA
+:100D30008A81882309F4C4C0C9C00E94AB1B8A8180
+:100D4000882309F4BDC0C5C00E94AB1B8A818823DB
+:100D500009F4B6C0C1C00E94AB1B8A81882309F484
+:100D6000AFC0BDC00E94AB1B8A81882309F4A8C014
+:100D7000B9C00E94AB1B8A81882309F4A1C0B5C009
+:100D80000E94AB1B8A81882309F49AC0B1C00E94DB
+:100D9000AB1B8A81882309F493C0ADC00E94AB1BB2
+:100DA0008A81882309F48CC0A9C00E94AB1B8A8168
+:100DB000882309F485C0A5C00E94AB1B8A818823C3
+:100DC00009F47EC0A1C00E94AB1B8A81882309F46C
+:100DD00077C09DC00E94AB1B8A81882309F470C034
+:100DE00099C00E94AB1B8A81882309F469C095C011
+:100DF0000E94AB1B8A81882309F462C091C00E94C3
+:100E0000AB1B8A81882309F45BC08DC00E94AB1B99
+:100E10008A81882309F454C089C00E94AB1B8A814F
+:100E2000882309F44DC085C00E94AB1B8A818823AA
+:100E300009F446C081C00E94AB1B8A81882309F453
+:100E40003FC07DC00E94AB1B8A818823C9F17AC054
+:100E50000E94AB1B8A81882399F177C00E94AB1B4B
+:100E60008A81882369F174C00E94AB1B8A81882320
+:100E700039F171C00E94AB1B8A81882309F16EC0D1
+:100E80000E94AB1B8A818823D9F06BC00E94AB1BE8
+:100E90008A818823A9F068C00E94AB1B8A818823BD
+:100EA00079F065C00E94AB1B8A81882349F062C03B
+:100EB0000E94AB1B8A81882319F08AE091E05CC014
+:100EC00080E090E059C080E592E056C083E492E073
+:100ED00053C086E392E050C089E292E04DC08CE1BD
+:100EE00092E04AC08FE092E047C082E092E044C0C6
+:100EF00089EF91E041C080EF91E03EC083EE91E048
+:100F00003BC08AED91E038C08DEC91E035C084ECB7
+:100F100091E032C08BEB91E02FC08EEA91E02CC0C3
+:100F200081EA91E029C088E991E026C08BE891E050
+:100F300023C08EE791E020C085E791E01DC088E6E0
+:100F400091E01AC08FE591E017C086E591E014C0EA
+:100F50008DE491E011C084E491E00EC087E391E05C
+:100F60000BC08EE291E008C085E291E005C08CE103
+:100F700091E002C083E191E0DF91CF91089508955F
+:100F80006091BE017091BF018091C0019091C1013B
+:100F90000E940D1E56985E9825982D9826982E989A
+:100FA00027982F98813019F0823021F00895259AE2
+:100FB0002D9A0895269A2E9A089581E0089581E049
+:100FC00008950C94DF070895282F882339F090E0C6
+:100FD0002A3010F44D9608950697089587E290E020
+:100FE0000895AF92BF92DF92EF92FF920F931F93FB
+:100FF000CF93DF938C01FC01C081D181CE010E948F
+:10100000861CBE010E94610BEC01B8010E94E10741
+:10101000882309F4C9C1F8018281882309F4BEC07C
+:1010200080915E0181111FC0C431F0E7DF0709F034
+:10103000B5C10E94E30781E080935E010E94A41E77
+:1010400090935D0180935C011092550110925701BD
+:1010500010925601109259011092580110925B01A2
+:1010600010925A01A1C180915C0190915D010E9492
+:10107000B01E883C910570F480915501E82FF0E096
+:10108000EE0FFF1FEA5AFE4FD183C0838F5F80931C
+:1010900055018AC1C13020E8D20708F451C0F801D7
+:1010A0008281882309F47EC05E01E894B7F88091BC
+:1010B0005401813079F050F08230C1F482EE0E9408
+:1010C000101487E50E94101487E50EC082EE0E947E
+:1010D00010140CC080EE0E94101481EE0E941014B7
+:1010E00088E10E94101488E10E94D8148CE0E82E58
+:1010F000F12CC5010E2C02C0969587950A94E2F753
+:101100008F700E94E407D82E0E9410148D2D0E942B
+:10111000D814F4E0EF1AF1082CEFE2162FEFF206E4
+:1011200041F780915401813029F010F0823041F470
+:1011300082EE04C080EE0E94D81481EE0E94D81482
+:10114000C43180E7D80768F4C23090E7D90708F0C7
+:1011500046C0C115E0E7DE0771F0C130D047A1F10C
+:101160000CC1C33320E7D20709F4D8C0C433D04739
+:1011700009F4EBC002C1F8018281882309F402C19D
+:101180000E948D17FFEF24E38CE0F1502040804057
+:10119000E1F700C000000E94FF1E06C1C13080E8D8
+:1011A000D80770F2C43120E7D20708F0B3C0C230CC
+:1011B00080E7D807A0F4C11590E7D90709F4E2C089
+:1011C000C130D04709F0D9C0F8018281882309F4E1
+:1011D000D9C08091DB0181608093DB01E5C0F8011B
+:1011E0008281882309F4CEC00E94591F811102C058
+:1011F0000E943F1F0E946C1F90E09093EF0180932C
+:10120000EE01C230F0E7DF0721F48091EE0181604A
+:101210007AC0C33020E7D20721F48091EE018260CA
+:1012200072C0C43080E7D80721F48091EE01846059
+:101230006AC0C53090E7D90719F48091EE0127C044
+:10124000C630E0E7DE0721F48091EE0180615BC0EB
+:10125000C730F0E7DF0721F48091EE01806253C0D0
+:10126000C83020E7D20721F48091EE0180644BC0A2
+:10127000C93080E7D80721F48091EE01806843C02F
+:10128000CA3090E7D90729F48091EE018460886024
+:101290003AC0CB30E0E7DE0721F48091EE018E7F8B
+:1012A00032C0CC30F0E7DF0721F48091EE018D7F72
+:1012B0002AC0CD3020E7D20721F48091EE018B7F48
+:1012C00022C0CE3080E7D80719F48091EE011AC011
+:1012D0008091EE01CF3090E7D90711F48F7E13C0D3
+:1012E000C031E0E7DE0711F48F7D0DC0C131F0E7BA
+:1012F000DF0711F48F7B07C0C231D04711F48F771D
+:1013000002C08B7F877F8093EE018091EE010E9467
+:10131000701F4AC0C333F0E7DF07A1F4F8018281F0
+:10132000882321F01092520182E016C08091520170
+:10133000811106C086E20E94101486E20E94D81431
+:1013400082E018C0C433D047C1F4F80182818823F9
+:1013500031F01092530180E20E94271525C0809140
+:101360005301811106C087E20E94101487E20E9497
+:10137000D81480E20E942E1517C081E0809352019C
+:1013800080935301C801DF91CF911F910F91FF907E
+:10139000EF90DF90BF90AF900C94DD07C130F0E884
+:1013A000DF0708F081CECCCE80E0DF91CF911F9196
+:1013B0000F91FF90EF90DF90BF90AF90089526E0DF
+:1013C000729FF001112444E5849FE00DF11D11246A
+:1013D000E60FF11DEE0FFF1FE959FD4F8591949126
+:1013E0000E94730B811560E49607B0F5811570E3D8
+:1013F000970708F0DEC0803E9105D8F4803C910547
+:1014000008F06CC0883A910578F4853A910508F0A7
+:101410006BC08130910509F452C108F40FC18430CA
+:10142000910508F04CC10AC18B3B910508F467C0D7
+:1014300005C18F3F910509F048F4803F910508F000
+:10144000ADC0883E910508F43AC1F8C0811520E28C
+:10145000920708F0A5C00895811543E5940790F41C
+:10146000811562E5960708F0C8C0811571E59707F8
+:1014700008F0BEC0811520E5920708F09DC09F705E
+:10148000906A0895811545E59407D8F4811564E5BF
+:10149000960708F0C8C0482F4695469570E2479FCA
+:1014A000A00111248370992721E030E0B90102C026
+:1014B000660F771F8A95E2F7CB01842B952B9A68EC
+:1014C0000895811576E5970708F4B2C09C0130565F
+:1014D0002115304108F0B2C09F70AEC0FC01EE0F84
+:1014E000FF1FE352FF4F62C0853A910509F4A9C07E
+:1014F000863A910509F0A8C082E890E40895883AF8
+:10150000910509F4A4C0893A910509F4A3C08A3A67
+:10151000910509F4A2C08B3A910509F4A1C08C3A57
+:10152000910509F4A0C08D3A910509F49FC0803B54
+:10153000910509F49EC08E3A910509F49DC08F3A39
+:10154000910509F49CC0813B910509F49BC0823B45
+:10155000910509F49AC0833B910509F499C0843B35
+:10156000910509F498C0853B910509F497C0863B25
+:10157000910509F496C0873B910509F495C0883B15
+:10158000910509F494C0893B910509F493C08A3B05
+:10159000910509F492C080E094E40895906508955F
+:1015A000FC01FF70EE0FFF1FE35AFD4F85919491F0
+:1015B00008959927906C0895482F437021E030E0FA
+:1015C00002C0220F331F4A95E2F73C68AC0164E089
+:1015D000569547956A95E1F74370342B8F70869541
+:1015E000869560E2869FC0011124822B932B08957B
+:1015F000982F8827816F906A0895482F46954695C1
+:1016000070E2479FA00111248370992721E030E008
+:10161000B90102C0660F771F8A95E2F7CB01842BD0
+:10162000952B9C680895982F8827846F906A089559
+:101630008F719927982F88279062089580E090E015
+:10164000089581E890E4089583E890E4089582EE97
+:1016500094E4089589EE94E408958AEE94E408955C
+:1016600085EB94E4089586EB94E4089587EB94E485
+:1016700008958CEC94E408958DEC94E4089583E847
+:1016800095E408958AE895E4089582E995E408953B
+:1016900084E995E4089581E296E4089583E296E46E
+:1016A000089584E296E4089585E296E4089586E23A
+:1016B00096E4089587E296E408958AE296E4089510
+:1016C000089596E0799FF001112494E5899FE00D3B
+:1016D000F11D1124E60FF11DEE0FFF1FE959FD4F1B
+:1016E0008591949108958238910549F1B0F4813340
+:1016F000910509F458C048F48932910509F44EC0A7
+:101700008A32910509F454C008958533910509F48E
+:1017100040C08933910599F00895833E910529F1E0
+:1017200038F4803E910591F0823E9105A1F0089534
+:10173000863E9105F9F0873E910531F1089520919B
+:10174000EE0120FD3AC021FD38C008958091EE01E0
+:1017500080FD35C032C08091EE0182FF32C08091A1
+:10176000EE0184FD30C083EE39C08091EE0182FD30
+:1017700028C0F5CF8091EE0183FF27C08091EE0154
+:1017800084FD21C087EE2AC08091EE0183FD1DC03B
+:10179000F5CF8091EE0185FD1AC01BC08091EE014E
+:1017A00085FD17C014C08091EE0186FD14C015C0E0
+:1017B0008091EE0186FD11C00EC080EE0FC089E35E
+:1017C0000DC082EE0BC080E009C086EE07C089E242
+:1017D00005C085E303C08AE201C081E390E008957B
+:1017E00008950C94F00B80916F010895CF93DF93CF
+:1017F00000D01F92CDB7DEB79C018091F4018430F8
+:1018000019F593E099833B832A839093E9008FEF46
+:101810009091E800815095FD06C095ED9A95F1F7FD
+:1018200000008111F5CF8091E80085FF0DC040E0F8
+:1018300050E063E070E0CE0101960E945C0E809162
+:10184000E8008E778093E8000F900F900F90DF9163
+:10185000CF910895CF93DF9300D01F92CDB7DEB71D
+:101860002091F401243021F522E029839B838A838F
+:1018700083E08093E9008FEF9091E800815095FD1F
+:1018800006C095ED9A95F1F700008111F5CF809192
+:10189000E80085FF0DC040E050E063E070E0CE015D
+:1018A00001960E945C0E8091E8008E778093E8009C
+:1018B0000F900F900F90DF91CF9108952091F40138
+:1018C0002430F1F422E02093E9002FEF3091E8007A
+:1018D000215035FD06C035ED3A95F1F70000211194
+:1018E000F5CF2091E80025FF0BC040E050E065E017
+:1018F00070E00E945C0E8091E8008E778093E80093
+:101900000895CF93DF93EC019091F401943009F0A6
+:1019100046C080910C018823D9F080910D01882365
+:10192000B9F09093E9008FEF9091E800815095FD18
+:1019300006C095E19A95F1F700008111F5CF8091ED
+:10194000E80085FF2CC040E050E060E170E017C087
+:1019500081E08093E9008FEF9091E800815095FD40
+:1019600006C095ED9A95F1F700008111F5CF8091B1
+:10197000E80085FF14C040E050E068E070E0CE0170
+:101980000E945C0E8091E8008E778093E80080E1F1
+:10199000FE01AFE5B1E001900D928A95E1F7DF918C
+:1019A000CF9108958091F301811109C00E94F10F38
+:1019B0000E944E108091E20084608093E2000895BE
+:1019C0001092F301089508950C94E5230E94951E4A
+:1019D0000E94EB230E94F4120C94F10B42E061ECA4
+:1019E00081E00E946B0F42E061EC82E00E946B0F8D
+:1019F00042E061EC83E00E946B0F42E161EC84E025
+:101A00000C946B0F8091F601833009F455C030F4CB
+:101A1000813071F0823009F48EC008958A3009F463
+:101A20007AC08B3009F460C0893009F09CC020C0B6
+:101A30008091F501813A09F096C08091E800877F96
+:101A40008093E8008091F9019091FA01892B21F4AB
+:101A500060E18FE591E003C060E080E090E070E03D
+:101A60000E94A70E8091E8008B778093E80008958C
+:101A70008091F501813209F076C08091F901909151
+:101A8000FA01009719F0039709F06DC08091E80002
+:101A9000877F8093E8008091E80082FD05C08091F7
+:101AA000F4018111F8CF5FC08091F10080936F0144
+:101AB0008091E8008B7753C08091F501813A09F05D
+:101AC00052C08091F9019091FA01892B09F04BC025
+:101AD0008091E800877F8093E8008091E80080FF94
+:101AE000FCCF80910C0136C08091F5018132D9F58F
+:101AF0008091F9019091FA01892BA9F58091E80074
+:101B0000877F8093E8000E94A00F8091F701809367
+:101B10000C010C948D178091F501813221F5809193
+:101B2000E800877F8093E8000E94A00F8091F80171
+:101B30008093700108958091F501813AA1F480911C
+:101B4000E800877F8093E8008091E80080FFFCCF69
+:101B5000809170018093F1008091E8008E778093EE
+:101B6000E8000C94A00F089584B7877F84BF88E1B4
+:101B70000FB6F89480936000109260000FBE80E86A
+:101B800080936100109261000E9443130E94F10F44
+:101B90000E944E108091E20084608093E20078946D
+:101BA0000E94D4120E94451382E091E00E94EF123D
+:101BB0000E94D3238091F401853069F40E945D1E58
+:101BC0008091F2018823B1F30E94871E882391F34C
+:101BD0000E94460EEFCF0E944B13ECCF292F3327E4
+:101BE00023303105C9F064F42130310581F0223011
+:101BF000310509F043C08DE690E02BE335E042C0AB
+:101C000021323105F1F02232310541F137C082E154
+:101C100090E028EA35E036C099278130910541F0FF
+:101C20008230910541F0892B49F5E7E3F5E005C0E5
+:101C3000EFE1F5E002C0E7E0F5E0849190E09F017C
+:101C400021C06430D8F4E62FF0E0EE0FFF1FEE5D08
+:101C5000FE4F2081318189E090E014C0643070F43F
+:101C600070E0FB01EE0FFF1FE65EFE4F2081318129
+:101C7000FB01EA5EFE4F808190E004C080E090E0CE
+:101C800020E030E0FA0131832083089580E189BDAE
+:101C900082E189BD09B400FEFDCF8091D8008F7D1F
+:101CA0008093D8008091E00082608093E000809172
+:101CB000E00081FDFCCF0895CF92DF92EF92FF927A
+:101CC0000F931F93CF93DF93EC018B016A010E9466
+:101CD000BF0F811133C0C114D10439F0F6018081E6
+:101CE0009181081B190BC80FD91FE12CF12C01158C
+:101CF000110519F18091E80085FD16C08091E8007A
+:101D00008E778093E800C114D10449F0F6018081F8
+:101D10009181E80EF91EF182E08285E00FC00E94F9
+:101D2000BF0F882321F30AC089918093F1000150ED
+:101D30001109FFEFEF1AFF0ADACF80E0DF91CF91B0
+:101D40001F910F91FF90EF90DF90CF900895209119
+:101D5000FB013091FC012617370748F0611571052A
+:101D600039F42091E8002E772093E80001C0B901F2
+:101D700040E061157105A9F12091F401222309F4D5
+:101D800043C0253009F442C02091E80023FD40C043
+:101D90002091E80022FD32C02091E80020FFE9CF29
+:101DA0004091F3002091F20030E0342BFC01CF0190
+:101DB0006115710559F02830310540F48191809307
+:101DC000F100615071092F5F3F4FF1CF41E02830A2
+:101DD000310509F040E02091E8002E772093E800DB
+:101DE000C8CF4111C9CF0AC08091F401882361F0A6
+:101DF000853061F08091E80083FD0AC08091E800A1
+:101E000082FFF2CF80E0089582E0089583E0089594
+:101E100081E008952091FB013091FC0126173707DE
+:101E200048F06115710539F42091E8002E77209370
+:101E3000E80001C0B901FC0120E06115710591F1D4
+:101E40008091F401882309F440C0853009F43FC033
+:101E50008091E80083FD3DC08091E80082FD2FC0A5
+:101E60008091E80080FFE9CF2091F3008091F2009B
+:101E700090E0922B6115710559F08830910540F47E
+:101E800024912093F1003196615071090196F2CFAF
+:101E900021E0089709F020E08091E8008E77809398
+:101EA000E800CBCF2111CCCF0AC08091F401882368
+:101EB00061F0853061F08091E80083FD0AC0809177
+:101EC000E80082FFF2CF80E0089582E0089583E089
+:101ED000089581E00895982F973058F59093E90080
+:101EE000981739F07091EC002091ED005091F000BE
+:101EF00003C0242F762F50E021FF19C03091EB0052
+:101F00003E7F3093EB003091ED003D7F3093ED004C
+:101F10003091EB0031603093EB007093EC00209334
+:101F2000ED005093F0002091EE0027FF07C09F5F67
+:101F3000D3CF8F708093E90081E0089580E0089509
+:101F40008091F50187FF11C08091E80082FD05C0F6
+:101F50008091F4018111F8CF11C08091E8008B7756
+:101F60000BC08091F401882349F08091E80080FF44
+:101F7000F8CF8091E8008E778093E8000895209153
+:101F8000E4003091E50095E64091EC00842F8170EB
+:101F900040FF22C08091E80080FD1CC08091F401C8
+:101FA000882391F0853091F08091EB0085FD10C081
+:101FB0004091E4005091E5004217530729F39A013C
+:101FC000915011F784E0089582E0089583E0089528
+:101FD00081E0089580E008954091E80042FFDECF5F
+:101FE00008950E945F100E946710E0EEF0E080818B
+:101FF00081608083E8EDF0E080818F77808319BC79
+:10200000A7EDB0E08C918E7F8C9380818F7E808352
+:102010001092F30108950F931F93CF93DF930E94C3
+:102020005F100E946710C8EDD0E088818F778883A9
+:1020300088818068888388818F7D888319BC10920D
+:10204000F4011092F0011092F2011092F10100EEF1
+:1020500010E0F80180818B7F808388818160888394
+:1020600042E060E080E00E946B0FE1EEF0E08081F2
+:102070008E7F8083E2EEF0E08081816080838081CA
+:1020800088608083F80180818E7F80838881806171
+:102090008883DF91CF911F910F910895E8EDF0E0D3
+:1020A00080818F7E8083E7EDF0E080818160808396
+:1020B00084E082BF81E08093F3010C940B10E8ED83
+:1020C000F0E080818E7F80831092E200089510926C
+:1020D000DA001092E10008951F920F920FB60F924E
+:1020E00011242F933F934F935F936F937F938F931D
+:1020F0009F93AF93BF93EF93FF938091E10082FF93
+:102100000BC08091E20082FF07C08091E1008B7FCD
+:102110008093E1000E94D3128091DA0080FF1FC0FB
+:102120008091D80080FF1BC08091DA008E7F809361
+:10213000DA008091D90080FF0DC080E189BD82E185
+:1021400089BD09B400FEFDCF81E08093F4010E94B7
+:10215000D20C05C019BC1092F4010E94E00C8091D1
+:10216000E10080FF19C08091E20080FF15C08091DE
+:10217000E2008E7F8093E2008091E2008061809394
+:10218000E2008091D80080628093D80019BC85E07D
+:102190008093F4010E94E40C8091E10084FF30C040
+:1021A0008091E20084FF2CC080E189BD82E189BD7D
+:1021B00009B400FEFDCF8091D8008F7D8093D800B8
+:1021C0008091E1008F7E8093E1008091E2008F7E1C
+:1021D0008093E2008091E20081608093E200809130
+:1021E000F001882311F084E007C08091E30087FDAF
+:1021F00002C081E001C083E08093F4010E94E60CFC
+:102200008091E10083FF29C08091E20083FF25C017
+:102210008091E100877F8093E10082E08093F40168
+:102220001092F0018091E1008E7F8093E100809117
+:10223000E2008E7F8093E2008091E20080618093D3
+:10224000E20042E060E080E00E946B0F8091F000CD
+:1022500088608093F0000E94E30CFF91EF91BF91A2
+:10226000AF919F918F917F916F915F914F913F912E
+:102270002F910F900FBE0F901F9018951F920F92E5
+:102280000FB60F9211242F933F934F935F936F9349
+:102290007F938F939F93AF93BF93CF93DF93EF93EE
+:1022A000FF93C091E900CF708091EC00D82FD170DE
+:1022B00080FDD0E81092E9008091F000877F809344
+:1022C000F00078940E9482111092E9008091F00051
+:1022D00088608093F000CD2BCF70C093E900FF9110
+:1022E000EF91DF91CF91BF91AF919F918F917F91AE
+:1022F0006F915F914F913F912F910F900FBE0F9073
+:102300001F9018951F93CF93DF93CDB7DEB7AA9791
+:102310000FB6F894DEBF0FBECDBFE5EFF1E088E069
+:102320008E0F9091F10091938E13FBCF0E94020DBE
+:102330008091E80083FF1FC18091F5019091F60123
+:10234000492F50E04A30510508F015C1FA01EA5A08
+:10235000FF4F0C946D25803881F0823809F00BC155
+:102360008091F9018F708093E9008091EB0085FBEB
+:10237000882780F91092E90006C08091F1019091C0
+:10238000F201911182609091E800977F9093E800AC
+:102390008093F1001092F100C8C0282F2D7F09F022
+:1023A000EAC0882319F0823061F0E5C08091F7011E
+:1023B000813009F0E0C0933009F080E08093F201B1
+:1023C0002BC08091F701811127C08091F9018F7096
+:1023D00009F4D1C08093E9002091EB0020FF1CC0DC
+:1023E000933021F48091EB00806214C09091EB0057
+:1023F00090619093EB0021E030E0A90102C0440F0E
+:10240000551F8A95E2F74093EA001092EA00809106
+:10241000EB0088608093EB001092E9008091E80067
+:10242000877F86C08111A7C01091F7011F77809127
+:10243000E3008078812B8093E3008091E800877F20
+:102440008093E8000E94A00F8091E80080FFFCCFFD
+:102450008091E30080688093E300111102C082E064
+:1024600001C083E08093F40186C08058823008F078
+:1024700082C08091F7019091F8018C3D53E095075F
+:1024800079F583E08A838AE289834FB7F894DE0185
+:10249000139620E03EE051E2E32FF0E05093570026
+:1024A000E49120FF03C0E295EF703F5FEF708E2F45
+:1024B00090E0EA3010F0C79601C0C0968D939D93CE
+:1024C0002F5F243149F74FBF8091E800877F8093C9
+:1024D000E8006AE270E0CE0101960E94A70E14C0E7
+:1024E000AE014F5F5F4F6091F9010E94EE0DBC019C
+:1024F000009709F440C09091E800977F9093E8001E
+:1025000089819A810E940A0F8091E8008B778093DD
+:10251000E80031C0803879F58091E800877F8093AA
+:10252000E8008091F0018093F1008091E8008E77BF
+:102530008093E8000E94A00F1EC081111CC09091E2
+:10254000F7019230C0F48091E800877F8093E80023
+:102550009093F0010E94A00F8091F001811106C0BC
+:102560008091E30087FD02C081E001C084E0809398
+:10257000F4010E94EE0C8091E80083FF0AC0809174
+:10258000E800877F8093E8008091EB008062809371
+:10259000EB00AA960FB6F894DEBF0FBECDBFDF9159
+:1025A000CF911F9108950895CF938091F4018823CE
+:1025B000A1F0C091E900CF709091EC00892F81705B
+:1025C00090FD80E8C82B1092E9008091E80083FD1F
+:1025D0000E948211CF70C093E900CF91089590932B
+:1025E0007601809375010895E0917501F09176016F
+:1025F000309721F00190F081E02D099480E008955A
+:10260000E0917501F0917601309721F00280F3811D
+:10261000E02D09940895E0917501F09176013097CD
+:1026200021F00480F581E02D099408952091730133
+:10263000309174018217930771F090937401809325
+:102640007301E0917501F0917601309721F00680D9
+:10265000F781E02D09940895209171013091720164
+:102660008217930771F09093720180937101E0914A
+:102670007501F0917601309721F00084F185E02D0D
+:102680000994089508950C9442130E949B1E0E9481
+:102690003B040C94211F9F92AF92BF92CF92DF9286
+:1026A000EF92FF920F931F93CF93DF9300D000D050
+:1026B00000D0CDB7DEB70E9462040DE010E0AA247E
+:1026C000A394B12C902E802F0E9450059801285879
+:1026D0003E4F6901F901F080F826A1F4015011097B
+:1026E00088F78FEF89838A831B820E94A41E8160F2
+:1026F000782F9D838C8349815A816B818D810E94C3
+:10270000E2132FC09091DB0191FF04C08E830E94E1
+:1027100056058E8125E030E0A501022E01C0440F50
+:102720000A94EAF7E42E4F21C1F029839A828E2180
+:1027300091E009F490E09B830E94A41E8160782FB1
+:102740009D838C8349815A816B818D810E94E21324
+:10275000F6018081E826E08204C021503109E0F6CC
+:10276000BDCF0E94EF20109177010E94F41218173C
+:10277000B9F00E94F4128093770126960FB6F89470
+:10278000DEBF0FBECDBFDF91CF911F910F91FF90A4
+:10279000EF90DF90CF90BF90AF909F900C94F10B93
+:1027A00026960FB6F894DEBF0FBECDBFDF91CF9156
+:1027B0001F910F91FF90EF90DF90CF90BF90AF905F
+:1027C0009F900895CF93DF93CDB7DEB72B970FB6C9
+:1027D000F894DEBF0FBECDBF4F83588769877A87D5
+:1027E0008B87DE01119686E0FD0111928A95E9F74B
+:1027F00085E0FE01379601900D928A95E1F74981B7
+:102800005A816B817C818D819E810E942B1A2B962F
+:102810000FB6F894DEBF0FBECDBFDF91CF91089504
+:10282000CF93882309F4C2C0C82F823859F40E947C
+:10283000F41281FDBBC089E30E94051D0E94D21DD8
+:1028400089E30CC0833879F40E94F41280FDAEC095
+:1028500083E50E94051D0E94D21D83E50E94471D4D
+:10286000CF910C94D21D843859F40E94F41282FD49
+:102870009DC087E40E94051D0E94D21D87E4EECF13
+:102880008CEF8C0F813A48F48C2F0E9439238111F0
+:102890008DC08C2F0E94051DE3CF80E28C0F883005
+:1028A00048F4C77081E001C0880FCA95EAF70E941A
+:1028B0008B1DD6CF8BE58C0F833078F4C53A29F089
+:1028C000C63A31F083E890E005C081E890E002C0AC
+:1028D00082E890E0CF910C94161388E58C0F833139
+:1028E00008F064C0C83A39F1C93A41F1CA3A49F12D
+:1028F000CB3A51F1CC3A59F1CD3A61F1C03B69F193
+:10290000CE3A71F1CF3A79F1C13B81F1C23B89F105
+:10291000C33B91F1C43B99F1C53BA1F1C63BA9F181
+:10292000C73BB1F1C83BB9F1C93BC1F1CA3BC9F1E1
+:1029300080E090E038C082EE90E035C089EE90E013
+:1029400032C08AEE90E02FC085EB90E02CC086EB81
+:1029500090E029C087EB90E026C08CEC90E023C08B
+:102960008DEC90E020C083E891E01DC08AE891E002
+:102970001AC082E991E017C084E991E014C081E2B5
+:1029800092E011C083E292E00EC084E292E00BC0BC
+:1029900085E292E008C086E292E005C087E292E01C
+:1029A00002C08AE292E0CF910C942C13CF9108954B
+:1029B000882309F44BC0823859F40E94F41281FF35
+:1029C00045C089E30E94051D0E94D21D89E30CC009
+:1029D000833871F40E94F41280FF38C083E50E94AE
+:1029E000051D0E94D21D83E50E94471D0C94D21D37
+:1029F000843859F40E94F41282FF28C087E40E94B0
+:102A0000051D0E94D21D87E4EFCF9CEF980F913AED
+:102A100058F390E2980F983050F4877091E001C01D
+:102A2000990F8A95EAF7892F0E94911DDFCF9BE5C8
+:102A3000980F933020F480E090E00C941613885A9D
+:102A4000833120F480E090E00C942C1308958823C7
+:102A500021F00E948B1D0C94D21D0895882321F033
+:102A60000E94911D0C94D21D08957F928F929F9287
+:102A7000AF92BF92CF92DF92EF92FF920F931F938C
+:102A8000CF93DF931F92CDB7DEB77C01C62E772E92
+:102A9000FC01058102950F70128111110E94A81D81
+:102AA0000E94FE1C882379F0112369F080E28C0DCE
+:102AB000883048F082E00E94E71C0E94FE1C91E0F2
+:102AC000D82ED92601C0D12CE72DE295EF70F0E089
+:102AD000E05AFF4F0C946D25872D807F072D0F70D6
+:102AE000882311F00295007F112389F0002309F457
+:102AF00090C180E28C0D883020F4802F0E948B1DC5
+:102B000003C0802F0E949B1D0E94D21D82C18C2D6C
+:102B10000E94D814002309F495C180E28C0D8830FE
+:102B200020F4802F0E94911D03C0802F0E94A11DC0
+:102B30000E94D21D87C1972D907F872D8F70903274
+:102B400011F08295807FCC2021F0F1E0CF16B1F01A
+:102B50001EC0112349F0002309F414C1013009F00B
+:102B600011C10E94BB1D6EC1002319F0013009F490
+:102B700069C189830E94BE1D89810AC1112321F088
+:102B8000023008F05FC1FEC001115CC101C1112318
+:102B900021F0002309F4F6C03CC1002309F4F8C079
+:102BA0003EC1872D86958695837090E0009719F039
+:102BB000019761F047C1112321F08C2D972D93705F
+:102BC00002C080E090E00E9416133CC1112321F066
+:102BD0008C2D972D937002C080E090E00E942C1302
+:102BE00031C18C2D112319F00E94F71F02C00E94E1
+:102BF0005F200E94E42026C1872D837009F052C017
+:102C0000111120C18C2D829586958770880F880FB1
+:102C10009C2D9F70892E912CA12CB12C082E04C0C4
+:102C2000880C991CAA1CBB1C0A94D2F7C4FE14C0C1
+:102C30000FE010E020E030E0B901A80104C0440F2B
+:102C4000551F661F771F8A95D2F7CB01BA01609591
+:102C500070958095909503C060E070E0CB01272DC2
+:102C600026952695237030E02230310569F0233017
+:102C7000310589F0682979298A299B292130310574
+:102C800071F00E94731BDEC0682979298A299B296B
+:102C90000E948F1BD7C00E94731BC501B4010E9404
+:102CA000571BD0C0112319F0872D817001C0869564
+:102CB000882309F4C7C08C2D829586958770880F6C
+:102CC000880F9C2D9F70892E912CA12CB12C082E41
+:102CD00004C0880C991CAA1CBB1C0A94D2F7C4FE21
+:102CE00014C00FE010E020E030E0B901A80104C0FA
+:102CF000440F551F661F771F8A95D2F7CB01BA0183
+:102D0000609570958095909503C060E070E0CB0170
+:102D1000272D269526952370422F50E042305105ED
+:102D200069F04330510589F0682979298A299B295E
+:102D30004130510571F00E944D1C84C068297929E9
+:102D40008A299B290E94691C7DC00E944D1CC501D7
+:102D5000B4010E94311C76C08C2D90E0FC01E05E35
+:102D6000F109E531F10508F050C0E059FF4F0C942E
+:102D70006D250C2D0F70872D8F71112331F00E945E
+:102D8000CA1B802F0E9427155DC00E94EB1B802F5D
+:102D90000E942E1557C0112339F0011153C0872D01
+:102DA0008F710E94101C4EC0023008F04BC0F7CF4C
+:102DB000112339F0872D8F710E94CA1B43C0112344
+:102DC000C9F3872D8F710E94EB1B3CC0112329F0A2
+:102DD000872D8F710E94B51B35C00E94AB1B32C07E
+:102DE000112351F0172D1F71812F0E94CA1B63E020
+:102DF000812F0E94DE1C26C081E00E94E71C023069
+:102E000008F182E00E94E71C1DC0112331F000236D
+:102E100089F28C2D0E94101415C0002391F28C2D84
+:102E20000E94D8140FC0472D4F706C2DC7010E940F
+:102E30002C060E94CF1A06C0472D4F706C2DC7017B
+:102E40000E94600BDD20F9F00E94DA1C80FD1BC09F
+:102E5000F70112820E94D41C0E94CA1BC7010E9463
+:102E600052170E94D41C0F90DF91CF911F910F91A8
+:102E7000FF90EF90DF90CF90BF90AF909F908F909A
+:102E80007F900C94EB1B0F90DF91CF911F910F91CE
+:102E9000FF90EF90DF90CF90BF90AF909F908F907A
+:102EA0007F9008950F931F93CF93DF93EC01888158
+:102EB00099812B813C81232BB9F09F3F11F48F3FE7
+:102EC00099F0CE010E94F107882371F06881798121
+:102ED0008A810E94D01C8C010E94851C0E944C1B80
+:102EE000B801CE010E943515DF91CF911F910F914E
+:102EF00008950E94A81D0E94B81D0E947D1D0E9479
+:102F0000D21D0E9495210E94E42080E090E00E9462
+:102F1000161380E090E00C942C130E94981D0C94E2
+:102F200079170E94C51C292F22952F7030E02C3074
+:102F300031054CF42A3031056CF42250310922302D
+:102F40003105A8F407C02C30310569F02F30310568
+:102F500051F00DC0803F69F018F4803E40F409C084
+:102F6000843F29F406C093FB882780F9089580E008
+:102F7000089581E00895CF93DF9300D000D01F9291
+:102F8000CDB7DEB70F900F900F900F900F90DF919D
+:102F9000CF910895CF93DF9300D000D000D0CDB76C
+:102FA000DEB726960FB6F894DEBF0FBECDBFDF9119
+:102FB000CF9108951F93CF93DF93C091860116E0C0
+:102FC00080918701C81799F0D0E01C9FF0011D9FE8
+:102FD000F00D1124E857FE4F4081518162817381C9
+:102FE000848195810E94CA172196C770E9CFDF912D
+:102FF000CF911F9108954091B8015091B90160910E
+:10300000BA017091BB018091BC019091BD010C94FB
+:10301000CA178091BD0182958F7009F054C08091CC
+:10302000BA01882309F44FC080918601A0918701DD
+:103030006091B8017091B9014091BB015091BC0100
+:10304000B6E08A1709F43FC090E041155105C1F17F
+:103050007F3F11F46F3FA1F1B89FF001B99FF00DD0
+:103060001124E857FE4F218172132AC02081621378
+:1030700027C02281211124C02381348124173507E0
+:1030800010F421503109241B350B283C3105C0F4C4
+:103090002091BD012F7020612093BD0126E0289F63
+:1030A000F001299FF00D1124E357FE4F80818F70AE
+:1030B0008061808388EB91E00E9452170C94DA17AC
+:1030C00001968770BECF0895CF92DF92EF92FF9264
+:1030D0000F931F93CF93DF93CDB7DEB762970FB6F1
+:1030E000F894DEBF0FBECDBF8C0185E0F801DE0194
+:1030F0001D9601900D928A95E1F7D8014C91119699
+:103100005C91119712966C9112971396CD90DC906A
+:1031100014973091B8017091B9018091BB019091E1
+:10312000BC01009709F46BC17F3F19F43F3F09F4DC
+:1031300066C1E090BA01EE2009F4C0C02091BD0143
+:10314000C816D90628F0F601E81BF90BCF0104C018
+:10315000809590958C0D9D1DFF24F394883C9105DE
+:1031600078F0F12C207F09F0C6C07C2DD98AC88A5E
+:1031700089890E94BB1788EB91E00E945217B1C069
+:10318000822F807F09F046C0751314C0341312C01B
+:10319000611110C02F7020612093BD010E94FB17A8
+:1031A00088EB91E00E9452178091BD01D8011596DD
+:1031B0008C932EC0CD2819F15F3F11F44F3FF9F0E9
+:1031C000F62E61111CC0809186012091870136E0A6
+:1031D000821709F45AC090E0389FF001399FF00D32
+:1031E0001124E857FE4F7181571306C070814713B1
+:1031F00003C07281711103C001968770E9CFF62E6A
+:10320000662309F418C18091BD0181608093BD01DE
+:10321000F12C11C1751308C0341306C0611104C02C
+:103220008091BD01D801C3C04D875E878D859E8585
+:103230006A8B0E9491176A898823E1F16623D1F194
+:103240002091BD01822F82958F7090E0029774F0DB
+:103250008091B8019091B90198878F831986DB8698
+:10326000CA862C87CE0107960E94521786E0F80185
+:10327000A8EBB1E001900D928A95E1F70E94091840
+:103280000E94FB17FF24F394D6C04D875E878D857F
+:103290009E850E94C51C292F22952F7030E0223078
+:1032A00031050CF0BCC09F7009F0B6C0805E88305C
+:1032B00008F4C1C0C8010E945217E4CFC816D9064D
+:1032C00008F453C0F601E81BF90BCF01883C9105C7
+:1032D00008F450C0F12C7C2DD98AC88A89890E94B3
+:1032E000BB17E8EBF1E086E0DF011D928A95E9F774
+:1032F0000E94FB17A0C0751314C0341312C06111D3
+:1033000010C08091BD01F8018583C8010E94521749
+:1033100086E0E8EBF1E0DF011D928A95E9F7FE2CEB
+:103320008AC04D875E878D859E856A8B0E94911726
+:103330006A89882309F4BECF662309F4BBCF2091A4
+:10334000BD01822F82958F7090E002970CF48ECF92
+:103350008091B8019091B9019A8389831B82DD82A3
+:10336000CC822E83CE0101967FCF809590958C0DD7
+:103370009D1DACCFF62E662309F49CCF75132EC08D
+:1033800034132CC02091BD0120FD1FC0822F8295D7
+:103390008F70D9F0D80115962C9315978F3049F07E
+:1033A0008F5F982F9295907F822F8F70892B159623
+:1033B0008C93C8010E94521786E0F801A8EBB1E097
+:1033C00001900D928A95E1F793CF86E0F801A8EB82
+:1033D000B1E001900D928A95E1F72DC04D875E878F
+:1033E0008D859E850E949117811140CF8091BD01EE
+:1033F00081608093BD01C8010E9452171CC06623E2
+:1034000009F458CF4D875E878D859E850E94911760
+:10341000882309F44FCF2ACF811148CF0CC0243024
+:1034200031050CF047CF9F7009F440CFF80195812A
+:10343000907F09F03BCF8F2D62960FB6F894DEBFD8
+:103440000FBECDBFDF91CF911F910F91FF90EF90F5
+:10345000DF90CF9008951F93CF93DF93CDB7DEB762
+:103460002C970FB6F894DEBF0FBECDBF4F835887A1
+:1034700069877A878B879C87CE0107960E9464189C
+:10348000882369F08F8198852A853B85232BF1F16C
+:103490009F3F09F063C08F3F09F060C037C086E0EE
+:1034A000FE013796DE01119601900D928A95E1F7A3
+:1034B0006F817885EA85FB85309741F17F3F11F474
+:1034C0006F3F21F12091870130E0C901019687709B
+:1034D00099274091860150E08417950709F447C069
+:1034E00069837A83FD83EC8396E0929FD001939F5A
+:1034F000B00D1124A857BE4FFE01319601900D92D8
+:103500009A95E1F7809387010E94DA1716E080917F
+:103510008601909187018917C1F1189FC00111247C
+:1035200088579E4F0E946418882379F1E0918601A4
+:103530001E9FF0011124E857FE4F408151816281A6
+:103540007381848195810E94CA178091860190E0E1
+:1035500001968770992780938601D9CF4F8158852E
+:1035600069857A858B859C850E94CA17CFCF0E947A
+:103570008D171092870110928601E8EBF1E086E04A
+:10358000DF011D928A95E9F7C1CF2C960FB6F8940A
+:10359000DEBF0FBECDBFDF91CF911F910895EF9297
+:1035A000FF920F931F93CF93DF938C01009709F441
+:1035B0006CC0F12CEE24E394E8012196F80184918B
+:1035C000843740F4843008F051C0813081F082307B
+:1035D00019F15BC0853709F444C0A8F19CE7980F46
+:1035E000903708F052C08F770E94D81441C00E5F08
+:1035F0001F4FFE01C49180E28C0F883048F4C770E1
+:103600008E2D01C0880FCA95EAF70E94AB1D14C029
+:103610008C2F0E9410142DC00E5F1F4FFE01C4910D
+:1036200080E28C0F883058F4C7708E2D01C0880F4F
+:10363000CA95EAF70E94B11D0E94D21D1AC08C2FB4
+:103640000E94D81416C00E5F1F4FFE01C491CC23F8
+:1036500081F08FE99FE00197F1F700C00000C150B1
+:10366000F6CF0E5F1F4FFE01F49003C00E941014AE
+:103670008E018F2D882309F49FCFEFE9FFE031976A
+:10368000F1F700C000008150F5CFDF91CF911F917D
+:103690000F91FF90EF90089508956093C201709389
+:1036A000C3018093C4019093C5010C9479170F93C3
+:1036B0001F930091C2011091C3012091C401309168
+:1036C000C501DC01CB01802B912BA22BB32B809366
+:1036D000C2019093C301A093C401B093C5011F918F
+:1036E0000F910C9479170F931F930091C2011091C1
+:1036F000C3012091C4013091C501DC01CB018023BD
+:103700009123A223B3238093C2019093C301A0937A
+:10371000C401B093C5011F910F910C9479170F93B9
+:103720001F930091C2011091C3012091C4013091F7
+:10373000C501DC01CB0180279127A227B327809305
+:10374000C2019093C301A093C401B093C5011F911E
+:103750000F910C9479171092BE011092BF01109234
+:10376000C0011092C1010C94791741E050E060E073
+:1037700070E004C0440F551F661F771F8A95D2F76B
+:103780004093BE015093BF016093C0017093C1018B
+:103790000C94791741E050E060E070E004C0440F01
+:1037A000551F661F771F8A95D2F78091BE019091B1
+:1037B000BF01A091C001B091C101482B592B6A2BC8
+:1037C0007B2B4093BE015093BF016093C001709367
+:1037D000C1010C94791741E050E060E070E004C052
+:1037E000440F551F661F771F8A95D2F74095509555
+:1037F000609570958091BE019091BF01A091C0012C
+:10380000B091C101482359236A237B234093BE0111
+:103810005093BF016093C0017093C1010C9479175C
+:1038200041E050E060E070E004C0440F551F661FA7
+:10383000771F8A95D2F78091BE019091BF01A09128
+:10384000C001B091C101482759276A277B274093BF
+:10385000BE015093BF016093C0017093C1010C94ED
+:1038600079170F931F930091BE011091BF01209112
+:10387000C0013091C101DC01CB01802B912BA22B27
+:10388000B32B8093BE019093BF01A093C001B0936E
+:10389000C1011F910F910C9479170F931F93009101
+:1038A000BE011091BF012091C0013091C101DC0126
+:1038B000CB0180239123A223B3238093BE01909355
+:1038C000BF01A093C001B093C1011F910F910C944F
+:1038D00079170F931F930091BE011091BF012091A2
+:1038E000C0013091C101DC01CB0180279127A227C3
+:1038F000B3278093BE019093BF01A093C001B09302
+:10390000C1011F910F910C9479170895CF92DF9206
+:10391000EF92FF920F931F93CF93DF938C01C09090
+:10392000C201D090C301E090C401F090C501809124
+:10393000BE019091BF01A091C001B091C101C82A00
+:10394000D92AEA2AFB2ACFE1D0E0D701C6010C2E02
+:1039500004C0B695A795979587950A94D2F780FFEE
+:1039600006C0B8018C2F0E94DF09019721F421972E
+:1039700060F780E001C08C2FDF91CF911F910F91F4
+:10398000FF90EF90DF90CF900895CF93DF93EC01FD
+:103990000E94861CBE010E94DF09DF91CF9108952D
+:1039A000CB010E94C51C08958091C601859585951F
+:1039B000859508958091C6018770089598E0899F44
+:1039C00090011124262B2093C6010C94CA1B209130
+:1039D000C601809582238093C601982F977069F461
+:1039E00030E0482F552747FD50952417350729F01B
+:1039F0008595859585950C94EB1B08959091C6014E
+:103A0000977081E009F480E0089590910C0199236A
+:103A100021F090910D01911109C020910E0130917A
+:103A20000F01F90132969FEF40E01FC0982F969545
+:103A3000969596959F3050F5E0910E01F0910F010B
+:103A4000E90FF11D877021E030E0A90102C0440FA9
+:103A5000551F8A95E2F7CA019181892B81830895C8
+:103A60009F3F39F04F5F4E3041F051915813F8CFDE
+:103A70000DC05111F7CF942FF5CF9F3F39F0F901C9
+:103A8000E90FF11D97FDFA958283089508959091AD
+:103A90000C01992321F090910D01911109C0209101
+:103AA0000E0130910F01F9013296205F3F4F1FC088
+:103AB000982F9695969596959F30F0F4E0910E018B
+:103AC000F0910F01E90FF11D877021E030E0A901AD
+:103AD00002C0440F551F8A95E2F7CA018095918173
+:103AE0008923818308953196E217F30729F09081A5
+:103AF0009813F9CF1082F7CF089581E090E0E0911C
+:103B00000E01F0910F01E80FF91F1082019680312C
+:103B10009105A9F708959091DA01892B8093DA0134
+:103B2000089580959091DA0189238093DA010895B0
+:103B30001092DA0108959091D901892B8093D901CF
+:103B4000089580959091D90189238093D901089592
+:103B50001092D90108959091D801892B8093D801B2
+:103B6000089580959091D80189238093D801089574
+:103B70001092D80108958093C70108951092C7014B
+:103B8000089580910E0190910F01FC0131969C01E6
+:103B9000205F3F4F80E0919191118F5FE217F30713
+:103BA000D1F70895E0910E01F0910F018091DA01B3
+:103BB0008083E0910E01F0910F0190818091D901F5
+:103BC000892B8083E0910E01F0910F01908180910B
+:103BD000D801892B80838091C701882361F0E0910F
+:103BE0000E01F0910F019081892B80830E94C11DED
+:103BF00081111092C70180910E0190910F010C94D8
+:103C0000001320E0009739F0AC01415051098423A2
+:103C100095232F5FF7CF822F0895CF92DF92EF92F7
+:103C2000FF926C01EE24FF24C114D104E104F104DD
+:103C300021F0C701B60120E101C020E0C72ED82E37
+:103C4000E92EFF24C114D104E104F10419F0285F26
+:103C5000C701B6016B017C0154E0F694E794D79458
+:103C6000C7945A95D1F7C114D104E104F10419F0B5
+:103C70002C5FC701B6016B017C0142E0F694E7942A
+:103C8000D794C7944A95D1F7C114D104E104F10443
+:103C900019F02E5FC701B601DC01CB01B695A795DF
+:103CA00097958795892B8A2B8B2B09F02F5F822F75
+:103CB000FF90EF90DF90CF9008958091F4018430D1
+:103CC00021F11092DC0120E488E190E00FB6F89435
+:103CD000A895809360000FBE2093600080E00E9452
+:103CE000F10B83B7817F846083BF83B7816083BF1B
+:103CF0007894889583B78E7F83BF88E10FB6F89458
+:103D000080936000109260000FBE089508950E9495
+:103D10004F040E9462040E94861E0E94570591E093
+:103D2000811101C090E0892F08950E948D170E9493
+:103D3000F4120C94F10B82E084BD93E095BD9AEFF0
+:103D400097BD80936E0008952FB7F8948091DD01A0
+:103D50009091DE01A091DF01B091E0012FBF0895A5
+:103D6000CF92DF92EF92FF920F931F932FB7F894A9
+:103D70004091DD015091DE016091DF017091E00121
+:103D80002FBF6A017B01EE24FF248C0120E030E08C
+:103D9000C016D106E206F30610F4415051099A010B
+:103DA000281B390BC9011F910F91FF90EF90DF90F5
+:103DB000CF9008951F920F920FB60F9211248F93F8
+:103DC0009F93AF93BF938091DD019091DE01A0910D
+:103DD000DF01B091E0010196A11DB11D8093DD01CD
+:103DE0009093DE01A093DF01B093E001BF91AF910A
+:103DF0009F918F910F900FBE0F901F9018950E946A
+:103E0000F10FF8942FEF87EA91E62150804090401F
+:103E1000E1F700C0000087E090EBDC018093FD013A
+:103E20009093FE01A093FF01B09300029CE088E113
+:103E30000FB6F894A895809360000FBE9093600031
+:103E4000FFCF0E94591F811102C00E943F1F0E9494
+:103E5000641F8093DB010E946C1F90E09093EF0140
+:103E60008093EE0187FB882780F980930D010E94E3
+:103E7000681F682F70E080E090E00C944D1B6DEEA1
+:103E80007EEF80E090E00E94A72560E082E090E075
+:103E90000E94952560E083E090E00E94952560E017
+:103EA00084E090E00E94952560E085E090E00C942D
+:103EB000952580E090E00E948F2521E08D3E9E4F69
+:103EC00009F020E0822F089582E090E00C9487258D
+:103ED00083E090E00C94872584E090E00C948725A3
+:103EE000682F84E090E00C9495258091E30180FF99
+:103EF0000BC06091130185E0689FB0011124759596
+:103F00006795759567952BC081FF09C06091130176
+:103F100085E0689FB00111247595679520C082FFE8
+:103F200007C06091130185E0689FB001112417C09C
+:103F30009091E4019923D1F060911201961788F7CE
+:103F40002091130185E0289F90011124929FA001E8
+:103F5000939F500D112470E0CA010E9459256038CA
+:103F6000710540F46115710539F002C065E070E03B
+:103F7000862F08958FE7089581E008958091E301E9
+:103F800080FF08C06091110170E075956795759587
+:103F9000679521C081FF06C06091110170E07595A1
+:103FA000679519C082FF04C06091110170E010C0D4
+:103FB0009091E4019923C1F0609110019617A0F748
+:103FC00080911101899FC001112470E00E94592540
+:103FD0006038710528F46115710521F0862F089568
+:103FE0008FE7089581E0089561E070E0F4CF803FAD
+:103FF00021F40E94751F819504C0813F29F40E941D
+:10400000751F8093E7010895823F21F40E94751F78
+:10401000819504C0833F29F40E94751F8093E601B7
+:104020000895893F19F40E94BE1F05C08A3F31F4EC
+:104030000E94BE1F81958093E80108958B3F21F473
+:104040000E94BE1F819504C08C3F29F40E94BE1FB0
+:104050008093E9010895843F21F48091E501816016
+:1040600017C0853F21F48091E501826011C0863F31
+:1040700021F48091E50184600BC0873F21F4809199
+:10408000E501886005C0883F31F48091E5018061D9
+:104090008093E50108958D3F21F48091E3018160D3
+:1040A0000BC08E3F21F48091E301826005C08F3FF9
+:1040B00029F48091E30184608093E3010895803FB7
+:1040C00039F48091E70187FF6CC01092E70169C065
+:1040D000813F29F48091E7011816BCF362C09091EA
+:1040E000E601823F29F497FF5CC01092E60159C0B7
+:1040F000833F19F41916CCF354C0893F41F48091E1
+:10410000E80118160CF04DC01092E8014AC08A3F31
+:1041100029F48091E80187FF44C0F6CF8B3F39F442
+:104120008091E90187FF3DC01092E9013AC08C3FC0
+:1041300029F48091E9011816BCF333C0843F21F4BF
+:104140008091E5018E7F17C0853F21F48091E501C4
+:104150008D7F11C0863F21F48091E5018B7F0BC0DC
+:10416000873F21F48091E501877F05C0883F31F4C6
+:104170008091E5018F7E8093E50113C08D3F21F48E
+:104180008091E3018E7F0BC08E3F21F48091E3018B
+:104190008D7F05C08F3F29F48091E3018B7F809351
+:1041A000E3018091E60181110EC08091E701811148
+:1041B0000AC08091E801811106C08091E901811156
+:1041C00002C01092E401089585EE91E00E940B1365
+:1041D0000E94A41E9093E2018093E10108951F9331
+:1041E000CF93DF938091E1019091E2010E94B01E94
+:1041F000AC019091E401992321F02091140130E069
+:1042000006C0209115018AE0289F900111244217D1
+:10421000530708F486C08091E601C091E701D09170
+:10422000E8011091E901811107C0C11176C0D111D7
+:1042300074C0111172C075C09F3F19F09F5F9093B9
+:10424000E401181624F40E94751F8093E601809102
+:10425000E60187FF05C00E94751F81958093E601E6
+:104260001C1624F40E94751F8093E7018091E701DA
+:1042700087FF05C00E94751F81958093E7016091BB
+:10428000E601662339F1C091E701CC2319F17727C4
+:1042900067FD7095872F972F0E946A2423E333E3ED
+:1042A00043E35FE30E94CE240E9437246093E6013B
+:1042B0006C2F772767FD7095872F972F0E946A24B0
+:1042C00023E333E343E35FE30E94CE240E943724D9
+:1042D0006093E7011D1624F40E94BE1F8093E8013D
+:1042E0008091E80187FF05C00E94BE1F81958093E1
+:1042F000E801111624F40E94BE1F8093E901809109
+:10430000E90187FF05C00E94BE1F81958093E901E6
+:10431000DF91CF911F910C94E4209F3F09F08ECF45
+:1043200096CFDF91CF911F910895E5EEF1E085E002
+:10433000DF011D928A95E9F71092E4011092E301E2
+:104340000895833081F128F4813059F08230D1F022
+:104350000895853009F449C0B8F1863009F456C093
+:10436000089580911501262F30E0280F311D2F3F31
+:10437000310524F4680F6093150108958FEF809341
+:104380001501089580911401262F30E0280F311D6A
+:104390002F3F310524F4680F6093140108958FEFC7
+:1043A00080931401089580911301262F30E0280F87
+:1043B000311D2F3F310524F4680F609313010895D8
+:1043C0008FEF80931301089580911201262F30E022
+:1043D000280F311D2F3F310524F4680F609312011F
+:1043E00008958FEF80931201089580911101262F77
+:1043F00030E0280F311D2F3F310524F4680F609302
+:10440000110108958FEF809311010895809110019B
+:10441000262F30E0280F311D2F3F310524F4680F7F
+:104420006093100108958FEF8093100108958330F9
+:1044300011F128F4813049F0823091F008958530EF
+:1044400081F120F18630C1F108958091150168173E
+:1044500020F4861B8093150108951092150108958C
+:1044600080911401681720F4861B8093140108952D
+:1044700010921401089580911301681720F4861B8F
+:1044800080931301089510921301089580911201F1
+:10449000681720F4861B8093120108951092120170
+:1044A000089580911101681720F4861B80931101F3
+:1044B000089510921101089580911001681720F459
+:1044C000861B8093100108951092100108950F9398
+:1044D0001F938D3109F471C008F045C0803109F493
+:1044E00085C008F5873009F46FC068F4863009F09C
+:1044F000ADC08091DB01817F8E7F8093DB0181E005
+:104500008093EB01A4C08B3009F49EC08E3009F07B
+:104510009DC08091DB0182FB222720F991E0922748
+:1045200090FB82F96CC0863109F48EC060F4813151
+:1045300009F08CC00E948D1790910D0181E08927B0
+:1045400080930D0181C0893109F47EC08B3109F05F
+:104550007DC08091DB0181FB222720F991E0922729
+:1045600090FB81F94CC0853309F466C048F487326A
+:1045700009F462C008F44FC0893209F45DC066C016
+:10458000833438F48A3308F044C0883309F45CC0BB
+:104590005DC0833409F450C0883409F057C00E94CC
+:1045A0008D170FEF13ED20E3015010402040E1F78D
+:1045B00000C000000E94FF1E47C00E94F1230E941D
+:1045C000F4120E94F10B40C09091DB01892F80957D
+:1045D000817080FB90F929F0966098609093DB01E0
+:1045E00036C0997F977F9093DB012EC08091DB01CD
+:1045F00083FB222720F991E0922790FB83F9809397
+:10460000DB01992309F18091DB0181608093DB015B
+:104610001BC0895301C08D5141E050E060E070E063
+:104620008A019B0104C0000F111F221F331F8A95AE
+:10463000D2F7C901B80104C061E070E080E090E009
+:104640000E944D1B0E948D1781E001C080E01F91E8
+:104650000F91089580E0089580E008958E518A308A
+:1046600030F4E82FF0E0E65DFE4F8081089580E0B1
+:104670000895CF93C82F8091EB01813079F018F025
+:104680008230E9F186C0E0910E01F0910F01808146
+:10469000813169F0823209F07EC009C0E0910E01DB
+:1046A000F0910F018081813111F0823261F48C2F01
+:1046B0000E942A23811104C08C2F0E9467221DC0F2
+:1046C00081E090E01AC08C2F0E942C23811114C02D
+:1046D000C43179F048F4CB3079F0C03109F05FC0D3
+:1046E00082E08093EB0108C0C93219F0C83321F091
+:1046F00056C01092EB0153C081E0817052C0C932A4
+:1047000081F110F5C43169F1A8F4C73009F045C052
+:104710008AE08093150194E19093140193E09093C3
+:1047200013018093120188E08093110188E2809345
+:10473000100133C082EE8C0F863078F58C2F0E94EA
+:104740002E238093EA0129C0CE34E9F020F4CB3443
+:1047500021F56AE013C0C13579F0C235F1F461E0AA
+:104760000DC08091EA01882319F01092EA0115C06A
+:1047700081E08093EB0115C061E006C08091EA0101
+:104780000E94A1210AC06AE08091EA010E941722DA
+:1047900004C01092EB0180E004C081E002C080E020
+:1047A000ACCFCF910895E1E8F0E08081886080830C
+:1047B0008081816080838FB7F89493E09093890023
+:1047C00090ED909388008FBF0895EFE6F0E0808130
+:1047D000826080830895EFE6F0E080818D7F8083A2
+:1047E0000895EFE6F0E0908182E0892780830895C4
+:1047F0001F920F920FB60F9211242F933F934F9356
+:104800005F936F937F938F939F93AF93BF93EF9338
+:10481000FF938091EC019091ED0101969093ED0151
+:104820008093EC01811103C082E00E94F10BE091C2
+:10483000ED01E695E695F0E0EA54F94FE4918091B8
+:10484000EC018E1303C080E00E94F10BFF91EF9109
+:10485000BF91AF919F918F917F916F915F914F9198
+:104860003F912F910F900FBE0F901F90189504D07D
+:104870006894B1118DC0089570D088F09F5790F062
+:10488000B92F9927B751A0F0D1F0660F771F881F75
+:10489000991F1AF0BA95C9F712C0B13081F077D0DC
+:1048A000B1E0089574C0672F782F8827B85F39F07A
+:1048B000B93FCCF3869577956795B395D9F73EF4D4
+:1048C00090958095709561957F4F8F4F9F4F08957C
+:1048D000E89409C097FB3EF490958095709561959A
+:1048E0007F4F8F4F9F4F9923A9F0F92F96E9BB2750
+:1048F0009395F695879577956795B795F111F8CFCC
+:10490000FAF4BB0F11F460FF1BC06F5F7F4F8F4F36
+:104910009F4F16C0882311F096E911C0772321F02C
+:104920009EE8872F762F05C0662371F096E8862FC4
+:1049300070E060E02AF09A95660F771F881FDAF71B
+:10494000880F9695879597F9089557FD9058440FCD
+:10495000551F59F05F3F71F04795880F97FB991FDE
+:1049600061F09F3F79F0879508951216130614069B
+:10497000551FF2CF4695F1DF08C016161706180628
+:10498000991FF1CF86957105610508940895E89403
+:10499000BB2766277727CB0197F908950BD078C0FE
+:1049A00069D028F06ED018F0952309F05AC05FC086
+:1049B0001124EECFCADFA0F3959FD1F3950F50E0FD
+:1049C000551F629FF001729FBB27F00DB11D639FC1
+:1049D000AA27F00DB11DAA1F649F6627B00DA11D67
+:1049E000661F829F2227B00DA11D621F739FB00D0D
+:1049F000A11D621F839FA00D611D221F749F33277D
+:104A0000A00D611D231F849F600D211D822F762F15
+:104A10006A2F11249F5750408AF0E1F088234AF012
+:104A2000EE0FFF1FBB1F661F771F881F915050405E
+:104A3000A9F79E3F510570F014C0AACF5F3FECF379
+:104A4000983EDCF3869577956795B795F795E7954A
+:104A50009F5FC1F7FE2B880F911D9695879597F95B
+:104A6000089597F99F6780E870E060E008959FEFF0
+:104A700080EC089500240A941616170618060906F5
+:104A8000089500240A9412161306140605060895C4
+:104A9000092E0394000C11F4882352F0BB0F40F44C
+:104AA000BF2B11F460FF04C06F5F7F4F8F4F9F4F8C
+:104AB000089597FB072E16F4009407D077FD09D0D0
+:104AC0000E94732507FC05D03EF4909581959F4F79
+:104AD0000895709561957F4F0895EE0FFF1F059023
+:104AE000F491E02D0994AA1BBB1B51E107C0AA1F3A
+:104AF000BB1FA617B70710F0A61BB70B881F991F7F
+:104B00005A95A9F780959095BC01CD010895F99922
+:104B1000FECF92BD81BDF89A992780B50895A8E18E
+:104B2000B0E042E050E00C94AF25262FF999FECF7B
+:104B300092BD81BDF89A019700B4021639F01FBAF0
+:104B400020BD0FB6F894FA9AF99A0FBE089501960F
+:104B5000272F0E9496250C949525DC01CB01FC01A2
+:104B6000F999FECF06C0F2BDE1BDF89A319600B4C6
+:0E4B70000D9241505040B8F70895F894FFCFD1
+:104B7E000220F30B810C5E0C2A0CF60B0101C8010E
+:104B8E0028080A03140A404D363976062906F3051D
+:104B9E00BA054D0566057F05980501020304050655
+:044BAE0007080900EB
+:00000001FF
diff --git a/keyboards/ergodox_ez/keymaps/workman_osx_mdw/keymap.c b/keyboards/ergodox_ez/keymaps/workman_osx_mdw/keymap.c new file mode 100644 index 000000000..c9c0f4c27 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/workman_osx_mdw/keymap.c @@ -0,0 +1,366 @@ +#include "ergodox_ez.h" +#include "debug.h" +#include "action_layer.h" +// README +// This keyboard layout is based on the [Workman Dead layout](https://github.com/ojbucao/Workman/tree/master/mac#workman-dead-for-programmers), which uses the comma as a dead key to trigger a second layer. +// Since I have more keys at my disposal on the ErgoDox, I moved the dead key to the bottom right. There are still a lot of +// blanks so still discovering what I like. +// If you aren't familiar with a dead key, the idea is that you tap the dead key which switches the layout. the next key you hit +// triggers the key you pressed AND switches the layout back to the original. For now I do this with a super kludgey macro and I +// look forward to learning about a more elegant way to do the same thing. Until then, this will have to do. + + +// TODO: Define layer names that make sense for the ErgoDox EZ. +#define BASE 0 // default layer +#define SYMB 1 // symbols +#define MDIA 2 // media keys +#define DEAD 3 // dead version of the symbols layer + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* Keymap 0: Basic layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | ` | 1 | 2 | 3 | 4 | 5 | LEFT | | RIGHT| 6 | 7 | 8 | 9 | 0 | - | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Tab | Q | D | R | W | B | L1 | | L1 | J | F | U | P | ; | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | Hyper | A | S | H | T | G |------| |------| Y | N | E | O | I | ' | + * |--------+------+------+------+------+------| | | Meh |------+------+------+------+------+--------| + * | LShift | Z | X | M | C | V | | | | K | L | , | . |//Ctrl| RShift | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | CTRL | OPT | CMD | | Left | Down | Up | Right| L3 | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+--------+------. + * | | | Home | | PgUp | | | + * |Bckspc| Space|------| |------| Space |Enter | + * | | | End | | PgDn | | | + * `--------------------' `----------------------' + */ +// If it accepts an argument (i.e, is a function), it doesn't need KC_. +// Otherwise, it needs KC_* +[BASE] = KEYMAP( // layer 0 : default + // left hand + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_LEFT, + KC_TAB, KC_Q, KC_D, KC_R, KC_W, KC_B, TG(1), + ALL_T(KC_ESC), KC_A, KC_S, KC_H, KC_T, KC_G, + KC_LSFT, KC_Z, KC_X, KC_M, KC_C, KC_V, KC_NO, + KC_NO, KC_NO, KC_LCTL,KC_LALT,KC_LGUI, + KC_NO, KC_NO, + KC_HOME, + KC_BSPC,KC_SPC,KC_END, + // right hand + KC_RGHT, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, + TG(1), KC_J, KC_F, KC_U, KC_P, KC_SCLN, KC_BSLS, + KC_Y, KC_N, KC_E, KC_O, KC_I, KC_QUOT, + MEH_T(KC_NO),KC_K, KC_L, KC_COMM,KC_DOT, CTL_T(KC_SLSH), KC_RSFT, + KC_LEFT,KC_DOWN,KC_UP, KC_RGHT, KC_FN4, + KC_NO, KC_NO, + KC_PGUP, + KC_PGDN,KC_SPC,KC_ENT + ), +/* Keymap 1: Symbol Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | % | & | ? | + | @ | | | | $ | _ | [ | ] | ! | F12 | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | / | ( | = | 0 | { |------| |------| } | 1 | * | ) | - | " | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | 6 | 7 | 8 | 9 | | | | | | \ | 2 | 3 | 4 | 5 | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// SYMBOLS +[SYMB] = KEYMAP( + // left hand + KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, + KC_TRNS, KC_PERC, KC_AMPR, LSFT(KC_SLSH), LSFT(KC_EQL), KC_AT, KC_TRNS, + KC_TRNS, KC_SLSH, KC_LPRN, KC_EQL, KC_0, LSFT(KC_LBRC), + KC_TRNS, KC_6, KC_7, KC_8, KC_9, KC_PIPE, 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_DLR, KC_UNDERSCORE, KC_LBRC, KC_RBRC, KC_EXLM, KC_F12, + KC_RCBR, KC_1, KC_ASTR, KC_RPRN, KC_MINS, KC_QUOT, + KC_TRNS, KC_SLSH, KC_2, KC_3, KC_4, KC_5, 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 2: Media and mouse keys + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | MsUp | | | | | | | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | |MsLeft|MsDown|MsRght| |------| |------| | | | | | Play | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | | Prev | Next | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | Lclk | Rclk | |VolUp |VolDn | Mute | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | |Brwser| + * | | |------| |------| |Back | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// MEDIA AND MOUSE +[MDIA] = 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 +), +/* Keymap 4: Dead Symbol Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | % | & | ? | + | @ | | | | $ | _ | [ | ] | ! | F12 | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | / | ( | = | 0 | { |------| |------| } | 1 | * | ) | - | " | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | 6 | 7 | 8 | 9 | | | | | | \ | 2 | 3 | 4 | 5 | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// SYMBOLS +[DEAD] = KEYMAP( + // left hand + KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, + KC_TRNS, M(100), M(101), M(102), M(103), M(104), KC_TRNS, + KC_TRNS, M(109), M(110), M(111), M(112), M(113), + KC_TRNS, M(120), M(121), M(122), M(123), M(124), 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, M(105), M(106), M(107), M(108), M(130), KC_F12, + M(114), M(115), M(116), M(117), M(118), M(119), + KC_TRNS, M(125), M(126), M(127), M(128), M(129), KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), +}; + +const uint16_t PROGMEM fn_actions[] = { + [1] = ACTION_LAYER_TAP_TOGGLE(SYMB), // FN1 - Momentary Layer 1 (Symbols) + [2] = ACTION_LAYER_ON(BASE,0), // FN2 - Go back to the base layer + [3] = ACTION_LAYER_ON(DEAD,0), + [4] = ACTION_LAYER_TOGGLE(DEAD), +}; + +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; + case 100: + layer_clear(); + return MACRODOWN(D(LSFT), T(5), U(LSFT), T(FN4), END); + break; + case 101: + layer_clear(); + return MACRODOWN(D(LSFT), T(7), U(LSFT), T(FN4), END); + break; + case 102: + layer_clear(); + return MACRODOWN(D(LSFT), T(SLSH), U(LSFT), T(FN4), END); + break; + case 103: + layer_clear(); + return MACRODOWN(D(LSFT), T(EQL), U(LSFT), T(FN4), END); + break; + case 104: + layer_clear(); + return MACRODOWN(D(LSFT), T(2), U(LSFT), T(FN4), END); + break; + case 105: + layer_clear(); + return MACRODOWN(D(LSFT), T(4), U(LSFT), T(FN4), END); + break; + case 106: + layer_clear(); + return MACRODOWN(D(LSFT), T(MINS), U(LSFT), T(FN4), END); + break; + case 107: + layer_clear(); + return MACRODOWN(T(LBRC), T(FN4), END); + break; + case 108: + layer_clear(); + return MACRODOWN(T(RBRC), T(FN4), END); + break; + case 130: + layer_clear(); + return MACRODOWN(D(LSFT), T(1), U(LSFT), T(FN4), END); + break; + case 109: + layer_clear(); + return MACRODOWN(T(SLSH), T(FN4), END); + break; + case 110: + layer_clear(); + return MACRODOWN(D(LSFT), T(9), U(LSFT), T(FN4), END); + break; + case 111: + layer_clear(); + return MACRODOWN(T(EQL), T(FN4), END); + break; + case 112: + layer_clear(); + return MACRODOWN(T(0), T(FN4), END); + break; + case 113: + layer_clear(); + return MACRODOWN(D(LSFT), T(LBRC), U(LSFT), T(FN4), END); + break; + case 114: + layer_clear(); + return MACRODOWN(D(LSFT), T(RBRC), U(LSFT), T(FN4), END); + break; + case 115: + layer_clear(); + return MACRODOWN(T(1), T(FN4), END); + break; + case 116: + layer_clear(); + return MACRODOWN(D(LSFT), T(8), U(LSFT), T(FN4), END); + break; + case 117: + layer_clear(); + return MACRODOWN(D(LSFT), T(0), U(LSFT), T(FN4), END); + break; + case 118: + layer_clear(); + return MACRODOWN(T(MINS), T(FN4), END); + break; + case 119: + layer_clear(); + return MACRODOWN(D(LSFT), T(QUOT), U(LSFT), T(FN4), END); + break; + case 120: + layer_clear(); + return MACRODOWN(T(6), T(FN4), END); + break; + case 121: + layer_clear(); + return MACRODOWN(T(7), T(FN4), END); + break; + case 122: + layer_clear(); + return MACRODOWN(T(8), T(FN4), END); + break; + case 123: + layer_clear(); + return MACRODOWN(T(9), T(FN4), END); + break; + case 124: + layer_clear(); + return MACRODOWN(D(LSFT), T(BSLS), U(LSFT), T(FN4), END); + break; + case 125: + layer_clear(); + return MACRODOWN(T(BSLS), T(FN4), END); + break; + case 126: + layer_clear(); + return MACRODOWN(T(2), T(FN4), END); + break; + case 127: + layer_clear(); + return MACRODOWN(T(3), T(FN4), END); + break; + case 128: + layer_clear(); + return MACRODOWN(T(4), T(FN4), END); + break; + case 129: + layer_clear(); + return MACRODOWN(T(5), T(FN4), END); + break; + + default: + return MACRO_NONE; + } + 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; + } + +}; |