From 22f6cb273e347214bee1c31182764155a584a942 Mon Sep 17 00:00:00 2001 From: tmk Date: Sat, 15 Apr 2017 16:16:43 +0900 Subject: [PATCH] fc660c: Change default keymap and binary --- keyboard/fc660c/Makefile | 1 - keyboard/fc660c/binary/fc660c.hex | 1207 +++++++++++++++++ .../{fc660c_unimap.hex => fc660c_emu.hex} | 6 +- keyboard/fc660c/unimap.c | 50 +- keyboard/fc660c/unimap_emu.c | 65 + keyboard/fc660c/unimap_plain.c | 19 - keyboard/fc660c/update_bin.sh | 8 + 7 files changed, 1285 insertions(+), 71 deletions(-) create mode 100644 keyboard/fc660c/binary/fc660c.hex rename keyboard/fc660c/binary/{fc660c_unimap.hex => fc660c_emu.hex} (97%) create mode 100644 keyboard/fc660c/unimap_emu.c delete mode 100644 keyboard/fc660c/unimap_plain.c create mode 100644 keyboard/fc660c/update_bin.sh diff --git a/keyboard/fc660c/Makefile b/keyboard/fc660c/Makefile index 567a5df9..5fb62fbd 100644 --- a/keyboard/fc660c/Makefile +++ b/keyboard/fc660c/Makefile @@ -87,7 +87,6 @@ KEYMAP_SECTION_ENABLE ?= yes # fixed address keymap for keymap editor # ifeq (yes,$(strip $(UNIMAP_ENABLE))) KEYMAP_FILE = unimap - TARGET := $(TARGET)_unimap else ifeq (yes,$(strip $(ACTIONMAP_ENABLE))) KEYMAP_FILE = actionmap diff --git a/keyboard/fc660c/binary/fc660c.hex b/keyboard/fc660c/binary/fc660c.hex new file mode 100644 index 00000000..496c6929 --- /dev/null +++ b/keyboard/fc660c/binary/fc660c.hex @@ -0,0 +1,1207 @@ +:100000000C9443050C948A050C948A050C948A057B +:100010000C948A050C948A050C948A050C948A0524 +:100020000C948A050C948A050C94A30C0C94750D01 +:100030000C940B1C0C948A050C948A050C948A056C +:100040000C948A050C948A050C948A050C948A05F4 +:100050000C948A050C947F1C0C948A050C948A05D8 +:100060000C948A050C948A050C948A050C948A05D4 +:100070000C948A050C948A050C948A050C948A05C4 +:100080000C948A050C948A050C948A050C948A05B4 +:100090000C948A050C948A050C948A050C948A05A4 +:1000A0000C948A050C948A050C948A05E20D040EC2 +:1000B000F20E040EF20E490E6C0EF20EC10ED40EAC +:1000C000F911F911271227128412C212DB14DB1462 +:1000D000DB12DB14DC13DC13AF14DB14DB14C614EB +:1000E000141A082B1518171C12132F0C3080314CC2 +:1000F0001E1F20352124222326272D252E802A4924 +:10010000807B7A788080802C7E807C807F51504FED +:10011000801D1B7906111905363738107D528080F5 +:1001200004160739090D0A0B0F33340E808028801E +:1001300080808080808080808080808080808080BF +:1001400080808080808080808080808080808080AF +:10015000808080808080808080808080808080809F +:100160004B6579626F6172642073746172742E0AD8 +:100170000055534220636F6E666967757265642E21 +:100180000A000D0A696E69740A005B445D005B43F6 +:100190005D002C034600430036003600300043006B +:1001A000200041006C007400200043006F006E00CE +:1001B000740072006F006C006C006500720000003B +:1001C0000A0354004D004B002E00000004030904F4 +:1001D00009028D00050100A032090400000103019D +:1001E00001000921110100012240000705810308D7 +:1001F000000A0904010001030102000921110100A4 +:1002000001224D000705820308000A0904020001CB +:1002100003000000092111010001223600070583B7 +:100220000308000A09040300020300000009211169 +:1002300001000122220007058403200001070504B4 +:10024000032000010904040001030000000921113A +:100250000100012239000705850320000112011069 +:100260000100000008EDFE0C66000101020001051E +:10027000010906A101050719E029E71500250195E7 +:100280000875018102050819012905950575019177 +:10029000029501750391010507190029F71500253D +:1002A0000195F875018102C00631FF0974A10109A9 +:1002B00075150026FF009520750881020976150046 +:1002C00026FF00952075089102C005010980A10153 +:1002D000850216810026B7001A81002AB700751022 +:1002E00095018100C0050C0901A1018503160100DB +:1002F000269C021A01002A9C02751095018100C0FB +:1003000005010902A1010901A10005091901290539 +:10031000150025019505750181029501750381017F +:100320000501093009311581257F9502750881067F +:1003300009381581257F950175088106050C0A3855 +:10034000021581257F950175088106C0C005010948 +:1003500006A101050719E029E71500250195087593 +:10036000018102950175088101050819012905958A +:100370000575019102950175039101050719002981 +:10038000FF150026FF00950675088100C0636F6E9B +:1003900073756D65723A20253034580A007379738D +:1003A00074656D3A20253034580A000A0025303231 +:1003B0005820006B6579626F6172643A20004C4589 +:1003C000443A20253032580A00253032583A202548 +:1003D0003031366225730A00722F63203031323398 +:1003E0003435363738394142434445460A0064655E +:1003F0006C5F6B65795F6269743A2063616E277424 +:100400002064656C3A20253032580A006164645FCC +:100410006B65795F6269743A2063616E277420614D +:1004200064643A20253032580A004F6E6573686F55 +:10043000743A2074696D656F75740A00290A002585 +:1004400075002F002575005D28002564002000251B +:100450006400200025640020002564007C00253015 +:100460003258006D6F7573656B6579205B62746ED1 +:100470007C782079207620685D287265702F616312 +:100480006C293A205B006D6B5F776865656C5F7403 +:10049000696D655F746F5F6D6178203D2025640A2A +:1004A000006D6B5F776865656C5F6D61785F737019 +:1004B000656564203D2025640A006D6B5F74696D7D +:1004C000655F746F5F6D6178203D2025640A006D63 +:1004D0006B5F6D61785F7370656564203D20256496 +:1004E0000A006D6B5F696E74657276616C203D20E9 +:1004F00025640A006D6B5F64656C6179203D202581 +:10050000640A006D6B5F776865656C5F74696D6523 +:100510005F746F5F6D6178203D2025640A006D6B0C +:100520005F776865656C5F6D61785F737065656442 +:10053000203D2025640A006D6B5F74696D655F74F2 +:100540006F5F6D6178203D2025640A006D6B5F6DE3 +:1005500061785F7370656564203D2025640A006DD5 +:100560006B5F696E74657276616C203D2025640A4C +:10057000006D6B5F64656C6179203D2025640A0025 +:100580000A00257500363A20776865656C5F7469E6 +:100590006D655F746F5F6D61783A20000A002575A4 +:1005A00000353A20776865656C5F6D61785F7370C0 +:1005B0006565643A20000A00257500343A207469A4 +:1005C0006D655F746F5F6D61783A20000A00257574 +:1005D00000333A206D61785F73706565643A20007E +:1005E0000A00257500323A20696E74657276616C76 +:1005F000286D73293A20000A00257500313A2064DD +:10060000656C6179282A31306D73293A20000A0916 +:100610002D2056616C756573202D0A004D3E004DEE +:1006200025643E20003F0073657420646566617533 +:100630006C740A00433E200077686572652064652B +:100640006C74613A20637572736F723D25642C205F +:10065000776865656C3D25640A5365652068747428 +:10066000703A2F2F656E2E77696B697065646961CA +:100670002E6F72672F77696B692F4D6F7573655F8A +:100680006B6579730A000A092D204D6F7573656BD0 +:100690006579202D0A4553432F713A0971756974A4 +:1006A0000A313A0964656C6179282A31306D732901 +:1006B0000A323A09696E74657276616C286D732925 +:1006C0000A333A096D61785F73706565640A343A7C +:1006D0000974696D655F746F5F6D61780A353A09F9 +:1006E000776865656C5F6D61785F73706565640AD6 +:1006F000363A09776865656C5F74696D655F746F1C +:100700005F6D61780A0A703A097072696E742076BA +:10071000616C7565730A643A097365742064656673 +:1007200061756C74730A75703A092B310A646F77BE +:100730006E3A092D310A706775703A092B31300A0B +:100740007067646F776E3A092D31300A0A737065ED +:100750006564203D2064656C7461202A206D617899 +:100760005F7370656564202A202872657065617406 +:10077000202F2074696D655F746F5F6D6178290A41 +:10078000003F004D3E2000433E20004C25640A00FF +:100790000A092D20436F6E736F6C65202D0A455337 +:1007A000432F713A09717569740A6D3A096D6F7555 +:1007B00073656B65790A000A092D204D61676963CD +:1007C000202D0A643A0964656275670A783A0964FB +:1007D00065627567206D61747269780A6B3A0964A5 +:1007E00065627567206B6579626F6172640A6D3A44 +:1007F000096465627567206D6F7573650A763A09DD +:1008000076657273696F6E0A733A097374617475F1 +:10081000730A633A09636F6E736F6C65206D6F6462 +:10082000650A302D343A096C61796572302D3428AF +:100830004631302D4634290A506175733A09626F8A +:100840006F746C6F616465720A6E3A094E4B524F59 +:100850000A003F004E4B524F3A206F66660A004E28 +:100860004B524F3A206F6E0A0074696D65725F7269 +:10087000656164333228293A202530346C580A00E7 +:100880006B6579626F6172645F6E6B726F3A20257F +:10089000580A006B6579626F6172645F69646C65A8 +:1008A0003A2025580A006B6579626F6172645F7047 +:1008B000726F746F636F6C3A2025580A00686F730B +:1008C000745F6B6579626F6172645F6C65647328D5 +:1008D000293A2025580A000A092D2053746174759D +:1008E00073202D0A004743433A20342E392E3220FC +:1008F0004156522D4C4942433A20312E382E307306 +:10090000766E204156525F415243483A20617672DA +:10091000350A004F5054494F4E533A204C554641EA +:10092000204D4F5553454B45592045585452414B46 +:10093000455920434F4E534F4C4520434F4D4D4159 +:100940004E44204E4B524F204B45594D41505F5322 +:10095000454354494F4E20343039360A00425549F8 +:100960004C443A20653338323935372D6469727416 +:1009700079202831363A31333A32312041707220B1 +:1009800031352032303137290A005649443A203077 +:10099000784645454428544D4B2E29205049443A29 +:1009A00020307836363043284643363630432041AF +:1009B0006C7420436F6E74726F6C6C657229205674 +:1009C00045523A203078303130300A0044455343A4 +:1009D0003A20544D4B2E206B6579626F6172642012 +:1009E0006669726D7761726520666F722046433664 +:1009F0003630430A000A092D2056657273696F6EFE +:100A0000202D0A000A6D6F7573653A206F66660ABD +:100A1000000A6D6F7573653A206F6E0A000A6B6588 +:100A200079626F6172643A206F66660A000A6B65CC +:100A300079626F6172643A206F6E0A000A6D6174A8 +:100A40007269783A206F66660A000A6D617472698D +:100A5000783A206F6E0A000A64656275673A206F03 +:100A60006E0A000A64656275673A206F66660A005E +:100A70000A0A626F6F746C6F616465722E2E2E208D +:100A800000433E20000011241FBECFEFDAE0DEBF9E +:100A9000CDBF04B603FE27C08091220290912302AD +:100AA000A0912402B09125028730904BA740B04B13 +:100AB000D1F410922202109223021092240210927A +:100AC000250214BE84B7877F84BF0FB6F894A8951B +:100AD00080916000886180936000109260000FBE7A +:100AE000E0E0F8E3099511E0A0E0B1E0E4E1FAE428 +:100AF00002C005900D92A833B107D9F722E0A8E310 +:100B0000B1E001C01D92A232B207E1F70E94D10903 +:100B10000C9408250C940000FF93EF93E0913801AA +:100B2000F0913901309709F00995EF91FF910895FF +:100B3000FC018591803011F0EFDFFBCF0895FF2796 +:100B4000E0E230E247FF0CC0419597FF09C0EDE2BB +:100B50006095709580959095611D711D811D911D09 +:100B600027FF02C0219530E350E2AA27660F771FC6 +:100B7000881F991FAA1FA41710F0A41B63955A95EC +:100B8000A9F7AA3008F0A95FA05DAF93F3956115AE +:100B900071058105910541F7ED3211F4EF93F3955D +:100BA000F21718F43F93F395FBCF8F91B5DFFA95C9 +:100BB000E1F70895E991F9918591803021F085322E +:100BC00019F0AADFF9CF089520E0E8945591553245 +:100BD000C1F3503311F4689455915A3348F450538B +:100BE00090F3220F022E220F220F200D250FF4CF9B +:100BF0000EF4219589919991533619F3533729F1C0 +:100C0000533559F1BC0188279927E8945C3621F4C3 +:100C10008991999168945591543639F446EF7EF054 +:100C200077FF0DC08FEF9FEF0AC055374AE039F0CC +:100C3000583540E121F0523642E009F00895FF9323 +:100C4000EF937DDFEF91FF91B7CFFF93EF93FC011F +:100C500081918030B9F360DFFBCFFF93EF9368DFC2 +:100C6000F1CFDF93CF93CDB7DEB72596A3DFCF913A +:100C7000DF91089584B18F6184B93E98469A3F9A76 +:100C80008AB1806F8AB95F9A479884B1806684B9C7 +:100C900085B1806685B9EAE4F1E01192119281E0B4 +:100CA000EA35F807D1F7EAE3F1E01192119281E019 +:100CB000EA34F807D1F78AE491E090935D018093DC +:100CC0005C018AE391E090935B0180935A0108955F +:100CD000AF92BF92DF92EF92FF920F931F93CF9349 +:100CE000DF9380915A0190915B0120915C013091DA +:100CF0005D0130935B0120935A0190935D018093D5 +:100D00005C0100E010E0C1E0D0E085B1982F907E5A +:100D100003FF02C020E101C028E0802F8770892BEB +:100D2000822B85B9BE01002E02C0660F771F0A9480 +:100D3000E2F75B01A094B09440E050E08BB18F707B +:100D400080689A0194E0220F331F9A95E1F7822B75 +:100D50008BB92AE02A95F1F700C0CA01880F991FC4 +:100D6000A0915A01B0915B01A80FB91F2D913C9140 +:100D700026233723232B09F0479AE5E3EA95F1F779 +:100D80000000D6B45F98FAE0FA95F1F700C0A091A0 +:100D90005C01B0915D017D01E80EF91EF701369B03 +:100DA00005C0208131812A213B2104C0208131816D +:100DB000262B372B3183208326B5ED2CF12C2D15D6 +:100DC00018F026B530E004C026B530E021503F4F82 +:100DD0002E193F092630310568F020915A013091D3 +:100DE0005B01280F391FF90120813181A80FB91F3C +:100DF0002D933C93FAE1FA95F1F700C047985F9A7A +:100E00008BE291E00197F1F700C000004F5F5F4F68 +:100E10004830510509F092CFA0915C01B0915D017D +:100E2000E0915A01F0915B0150962D913C915197C0 +:100E3000808991892817390751F00E94491C6093D5 +:100E40005E0170935F0180936001909361010F5F79 +:100E50001F4F0031110509F058CF81E0DF91CF918C +:100E60001F910F91FF90EF90DF90BF90AF9008958A +:100E700020915C0190915D01E22FF92FE80FF11DA7 +:100E8000E80FF11D80819181089581FF02C02E98A5 +:100E900008952E9A08958091860108959FB7F89439 +:100EA000109265019FBF90911902943009F057C0CC +:100EB0009091E9009F703091EC00232F217030FD5C +:100EC00020E8922B24E02093E9002091EB0020FF02 +:100ED00043C02091EE0027FF3FC0209162012223F2 +:100EE00021F02091E80025FF37C01092620126E032 +:100EF0003091E80035FD15C030911902343061F5AC +:100F00003091EB0035FD28C0215021F481E0809321 +:100F1000620122C0EFE9FFE03197F1F700C0000065 +:100F2000E7CF8093F1008091E80085FD0AC08091B1 +:100F3000E80080FFFCCF8091E8008E778093E80086 +:100F400006C08FB7F89421E0209365018FBF9F7092 +:100F50009093E90080E008959F709093E9008FEFEF +:100F60000895CF93DF9300D01F92CDB7DEB79C01D9 +:100F700080911902843019F593E099833B832A8389 +:100F80009093E9008FEF9091E800815095FD06C0A5 +:100F900095ED9A95F1F700008111F5CF8091E80069 +:100FA00085FF0DC040E050E063E070E0CE010196A7 +:100FB0000E94930A8091E8008E778093E8000F905A +:100FC0000F900F90DF91CF910895CF93DF9300D0D2 +:100FD0001F92CDB7DEB720911902243021F522E00F +:100FE00029839B838A8383E08093E9008FEF90912C +:100FF000E800815095FD06C095ED9A95F1F7000047 +:101000008111F5CF8091E80085FF0DC040E050E0F0 +:1010100063E070E0CE0101960E94930A8091E8009F +:101020008E778093E8000F900F900F90DF91CF9113 +:101030000895209119022430F1F422E02093E90070 +:101040002FEF3091E800215035FD06C035ED3A957F +:10105000F1F700002111F5CF2091E80025FF0BC02A +:1010600040E050E065E070E00E94930A8091E80063 +:101070008E778093E8000895CF93DF932091190233 +:10108000243009F048C0EC0180910A018823E1F086 +:1010900080910B018823C1F085E08093E9008FEFF8 +:1010A0009091E800815095FD06C095E19A95F1F781 +:1010B00000008111F5CF8091E80085FF2CC040E051 +:1010C00050E060E270E017C081E08093E9008FEFAC +:1010D0009091E800815095FD06C095ED9A95F1F745 +:1010E00000008111F5CF8091E80085FF14C040E039 +:1010F00050E068E070E0CE010E94930A8091E80021 +:101100008E778093E80080E2FE01A6E6B1E00190D0 +:101110000D928A95E1F7DF91CF9108958EE891E0E5 +:101120000E94980580911802811109C00E94280C24 +:101130000E94850C8091E20084608093E200089513 +:101140008AE891E00E949805109218020895089587 +:10115000209163012F5F822F62E30E94CE249923A6 +:1011600019F0209363010895109263018091650145 +:10117000882371F180911902843041F58091E90052 +:101180008F702091EC00922F917020FD90E8892BB8 +:1011900094E09093E9009091EB0090FF14C090913F +:1011A000EE0097FF10C09091E80095FF03C01092E9 +:1011B000F100F9CF9091E80090FF05C09091E80010 +:1011C0009E779093E8008F708093E90010926501FC +:1011D000089542E061EC81E00E94A20B42E061ECE4 +:1011E00082E00E94A20B42E061EC83E00E94A20B2D +:1011F00042E261EC84E00E94A20B42E261EC85E0F5 +:101200000C94A20B80911B02833009F455C030F47A +:10121000813071F0823009F48EC008958A3009F46B +:101220007AC08B3009F460C0893009F09CC020C0BE +:1012300080911A02813A09F096C08091E800877F78 +:101240008093E80080911E0290911F02892B21F467 +:1012500060E286E691E003C060E080E090E070E04C +:101260000E94DE0A8091E8008B778093E800089561 +:1012700080911A02813209F076C080911E0290910D +:101280001F02009719F0049709F06DC08091E800E3 +:10129000877F8093E8008091E80082FD05C08091FF +:1012A00019028111F8CF5FC08091F100809386010F +:1012B0008091E8008B7753C080911A02813A09F03F +:1012C00052C080911E0290911F02892B09F04BC0E1 +:1012D0008091E800877F8093E8008091E80080FF9C +:1012E000FCCF80910A0136C080911A028132D9F573 +:1012F00080911E0290911F02892BA9F58091E80030 +:10130000877F8093E8000E94D70B80911C02809316 +:101310000A010C94FD1480911A02813221F580910A +:10132000E800877F8093E8000E94D70B80911D0220 +:1013300080938701089580911A02813AA1F48091E7 +:10134000E800877F8093E8008091E80080FFFCCF71 +:10135000809187018093F1008091E8008E778093DF +:10136000E8000C94D70B08950895089580918601A4 +:10137000809364011092860180E00E9445070E94DC +:101380009E100C94FD140C94B6090E94C91B809108 +:101390001702882329F00E94F21B81110C947D0A08 +:1013A000089584B7877F84BF0FB6F894A89580917D +:1013B0006000886180936000109260000FBE90E032 +:1013C00080E80FB6F89480936100909361000FBE9F +:1013D0008EE497E00E94801B82E891E00E949805CD +:1013E0000E94B4090E94CB0F0E94280C0E94850C19 +:1013F0008091E20084608093E200789480911902E9 +:101400008430E1F781E791E00E9498050E94CD0FBA +:1014100080E091E00E940A0F80E691E00E9498052A +:101420000E94B50980911902853019F40E94C509FE +:10143000F9CF0E94D10FF6CF0E94071C8091640162 +:101440008093860108950C941C0A292F332723309A +:101450003105C9F064F42130310581F022303105C5 +:1014600009F043C08DE890E020ED31E042C0213228 +:101470003105F1F02232310541F137C082E190E0CF +:101480002DE532E036C099278130910541F0823058 +:10149000910541F0892B49F5ECECF1E005C0E0EC59 +:1014A000F1E002C0E2E9F1E0849190E09F0121C007 +:1014B0006530D8F4E62FF0E0EE0FFF1FED5DFE4F34 +:1014C0002081318189E090E014C0653070F470E0D3 +:1014D000FB01EE0FFF1FE75EFE4F20813181FB0114 +:1014E000EC5EFE4F808190E004C080E090E020E060 +:1014F00030E0FA0131832083089580E189BD82E1E3 +:1015000089BD09B400FEFDCF8091D8008F7D809306 +:10151000D8008091E00082608093E0008091E0003C +:1015200081FDFCCF0895CF92DF92EF92FF920F934F +:101530001F93CF93DF93EC018B016A010E94F60B9E +:10154000811133C0C114D10439F0F6018081918139 +:10155000081B190BC80FD91FE12CF12C011511051F +:1015600019F18091E80085FD16C08091E8008E7722 +:101570008093E800C114D10449F0F6018081918183 +:10158000E80EF91EF182E08285E00FC00E94F60BA2 +:10159000882321F30AC089918093F1000150110939 +:1015A000FFEFEF1AFF0ADACF80E0DF91CF911F91B2 +:1015B0000F91FF90EF90DF90CF900895209120023F +:1015C000309121022617370748F06115710539F46B +:1015D0002091E8002E772093E80001C0B90140E097 +:1015E00061157105A9F120911902222309F443C064 +:1015F000253009F442C02091E80023FD40C020912D +:10160000E80022FD32C02091E80020FFE9CF4091A0 +:10161000F3002091F20030E0342BFC01CF01611582 +:10162000710559F02830310540F481918093F10023 +:10163000615071092F5F3F4FF1CF41E028303105F4 +:1016400009F040E02091E8002E772093E800C8CF11 +:101650004111C9CF0AC080911902882361F08530F9 +:1016600061F08091E80083FD0AC08091E80082FF6C +:10167000F2CF80E0089582E0089583E0089581E04C +:10168000089520912002309121022617370748F053 +:101690006115710539F42091E8002E772093E80058 +:1016A00001C0B901FC0120E06115710591F1809143 +:1016B0001902882309F440C0853009F43FC08091A5 +:1016C000E80083FD3DC08091E80082FD2FC080913D +:1016D000E80080FFE9CF2091F3008091F20090E0D4 +:1016E000922B6115710559F08830910540F42491D1 +:1016F0002093F1003196615071090196F2CF21E0FB +:10170000089709F020E08091E8008E778093E80048 +:10171000CBCF2111CCCF0AC080911902882361F070 +:10172000853061F08091E80083FD0AC08091E80077 +:1017300082FFF2CF80E0089582E0089583E008956B +:1017400081E00895982F973058F59093E900981705 +:1017500039F07091EC002091ED005091F00003C041 +:10176000242F762F50E021FF19C03091EB003E7FEF +:101770003093EB003091ED003D7F3093ED003091E0 +:10178000EB0031603093EB007093EC002093ED00A0 +:101790005093F0002091EE0027FF07C09F5FD3CF4A +:1017A0008F708093E90081E0089580E00895809132 +:1017B0001A0287FF11C08091E80082FD05C0809168 +:1017C00019028111F8CF11C08091E8008B770BC00E +:1017D00080911902882349F08091E80080FFF8CFBA +:1017E0008091E8008E778093E80008952091E400CE +:1017F0003091E50095E64091EC00842F817040FF28 +:1018000022C08091E80080FD1CC0809119028823CD +:1018100091F0853091F08091EB0085FD10C04091F2 +:10182000E4005091E5004217530729F39A019150C3 +:1018300011F784E0089582E0089583E0089581E03F +:10184000089580E008954091E80042FFDECF0895BA +:101850000E94960C0E949E0CE0EEF0E08081816078 +:101860008083E8EDF0E080818F77808319BCA7ED5D +:10187000B0E08C918E7F8C9380818F7E80831092DC +:10188000180208950F931F93CF93DF930E94960C35 +:101890000E949E0CC8EDD0E088818F778883888174 +:1018A0008068888388818F7D888319BC1092190293 +:1018B00010921502109217021092160200EE10E01C +:1018C000F80180818B7F808388818160888342E0FA +:1018D00060E080E00E94A20BE1EEF0E080818E7F6C +:1018E0008083E2EEF0E08081816080838081886087 +:1018F0008083F80180818E7F8083888180618883E6 +:10190000DF91CF911F910F910895E8EDF0E0808174 +:101910008F7E8083E7EDF0E080818160808384E0CA +:1019200082BF81E0809318020C94420CE8EDF0E055 +:1019300080818E7F80831092E20008951092DA00F9 +:101940001092E10008951F920F920FB60F9211248A +:101950002F933F934F935F936F937F938F939F93B7 +:10196000AF93BF93EF93FF938091E10082FF0BC091 +:101970008091E20082FF07C08091E1008B7F80931D +:10198000E1000E94A8088091DA0080FF1FC08091CA +:10199000D80080FF1BC08091DA008E7F8093DA0030 +:1019A0008091D90080FF0DC080E189BD82E189BDB1 +:1019B00009B400FEFDCF81E0809319020E948E08D9 +:1019C00005C019BC109219020E94A0088091E10084 +:1019D00080FF19C08091E20080FF15C08091E20075 +:1019E0008E7F8093E2008091E20080618093E2002C +:1019F0008091D80080628093D80019BC85E08093E4 +:101A000019020E94C3098091E10084FF30C08091D7 +:101A1000E20084FF2CC080E189BD82E189BD09B468 +:101A200000FEFDCF8091D8008F7D8093D8008091FB +:101A3000E1008F7E8093E1008091E2008F7E8093B1 +:101A4000E2008091E20081608093E20080911502C3 +:101A5000882311F084E007C08091E30087FD02C075 +:101A600081E001C083E0809319020E94230A8091E3 +:101A7000E10083FF29C08091E20083FF25C08091AF +:101A8000E100877F8093E10082E080931902109249 +:101A900015028091E1008E7F8093E1008091E20049 +:101AA0008E7F8093E2008091E20080618093E2006B +:101AB00042E060E080E00E94A20B8091F00088602C +:101AC0008093F0000E94A708FF91EF91BF91AF9122 +:101AD0009F918F917F916F915F914F913F912F9146 +:101AE0000F900FBE0F901F9018951F920F920FB678 +:101AF0000F9211242F933F934F935F936F937F9394 +:101B00008F939F93AF93BF93CF93DF93EF93FF9305 +:101B1000C091E900CF708091EC00D82FD17080FD8A +:101B2000D0E81092E9008091F000877F8093F00068 +:101B300078940E94B90D1092E9008091F0008860BD +:101B40008093F000CD2BCF70C093E900FF91EF910F +:101B5000DF91CF91BF91AF919F918F917F916F91C5 +:101B60005F914F913F912F910F900FBE0F901F905B +:101B700018951F93CF93DF93CDB7DEB7AA970FB613 +:101B8000F894DEBF0FBECDBFEAE1F2E088E08E0F31 +:101B90009091F10091938E13FBCF0E9402098091E6 +:101BA000E80083FF1FC180911A0290911B02492F08 +:101BB00050E04A30510508F015C1FA01EA5AFF4FCA +:101BC0000C94EE24803881F0823809F00BC18091AA +:101BD0001E028F708093E9008091EB0085FB8827BF +:101BE00080F91092E90006C08091160290911702C8 +:101BF000911182609091E800977F9093E800809324 +:101C0000F1001092F100C8C0282F2D7F09F0EAC022 +:101C1000882319F0823061F0E5C080911C02813088 +:101C200009F0E0C0933009F080E0809317022BC0E8 +:101C300080911C02811127C080911E028F7009F4CF +:101C4000D1C08093E9002091EB0020FF1CC09330AD +:101C500021F48091EB00806214C09091EB009061C0 +:101C60009093EB0021E030E0A90102C0440F551F22 +:101C70008A95E2F74093EA001092EA008091EB0027 +:101C800088608093EB001092E9008091E800877FE4 +:101C900086C08111A7C010911C021F778091E300BC +:101CA0008078812B8093E3008091E800877F809388 +:101CB000E8000E94D70B8091E80080FFFCCF809164 +:101CC000E30080688093E300111102C082E001C04C +:101CD00083E08093190286C08058823008F082C069 +:101CE00080911C0290911D028C3D53E0950779F57F +:101CF00083E08A838AE289834FB7F894DE011396E2 +:101D000020E03EE051E2E32FF0E050935700E491F1 +:101D100020FF03C0E295EF703F5FEF708E2F90E0E1 +:101D2000EA3010F0C79601C0C0968D939D932F5F47 +:101D3000243149F74FBF8091E800877F8093E80006 +:101D40006AE270E0CE0101960E94DE0A14C0AE0184 +:101D50004F5F5F4F60911E020E94250ABC01892BD4 +:101D600009F440C09091E800977F9093E800898142 +:101D70009A810E94410B8091E8008B778093E80064 +:101D800031C0803879F58091E800877F8093E80042 +:101D9000809115028093F1008091E8008E77809306 +:101DA000E8000E94D70B1EC081111CC090911C023C +:101DB0009230C0F48091E800877F8093E800909390 +:101DC00015020E94D70B80911502811106C08091E7 +:101DD000E30087FD02C081E001C084E08093190226 +:101DE0000E94E9088091E80083FF0AC08091E80022 +:101DF000877F8093E8008091EB0080628093EB0006 +:101E0000AA960FB6F894DEBF0FBECDBFDF91CF917B +:101E10001F91089590938D0180938C010895E09116 +:101E20008C01F0918D01309721F00190F081E02D2F +:101E3000099480E00895EF92FF920F931F93CF9340 +:101E4000DF93E0918C01F0918D013097B1F18C011D +:101E50000280F381E02D09958091040282FF2DC05C +:101E600080FF04C083EB93E00E949805E80110E234 +:101E70008DEAE82E83E0F82E8091040280FF0BC0EB +:101E800088811F928F93FF92EF920E9431060F90EC +:101E90000F900F900F90115021961111EDCF80915E +:101EA000040280FF0AC08BEA93E0DF91CF911F917B +:101EB0000F91FF90EF900C949805DF91CF911F91B7 +:101EC0000F91FF90EF900895E0918C01F0918D01BA +:101ED000309721F00480F581E02D09940895CF9387 +:101EE000DF93EC0180918A0190918B01C817D9078B +:101EF00009F1D0938B01C0938A01E0918C01F0919C +:101F00008D013097B9F00680F781E02DCE0109955B +:101F10008091040282FF0EC080FF0CC0DF93CF933C +:101F20008DE993E09F938F930E9431060F900F905D +:101F30000F900F90DF91CF910895CF93DF93EC0135 +:101F40008091880190918901C817D90709F1D09330 +:101F50008901C0938801E0918C01F0918D01309747 +:101F6000B9F00084F185E02DCE010995809104023D +:101F700082FF0EC080FF0CC0DF93CF938DE893E00B +:101F80009F938F930E9431060F900F900F900F90A8 +:101F9000DF91CF9108950C949F100E94341C0C94F3 +:101FA0003A065F926F927F928F929F92AF92BF920A +:101FB000CF92DF92EF92FF920F931F93CF93DF9315 +:101FC00000D000D01F92CDB7DEB70E9468060FE8A0 +:101FD00011E0512C88248394912C852D0E94380780 +:101FE0005C01F801C080D180C826D926C114D10473 +:101FF00039F453940E5F1F4FF8E05F12EECF3FC0ED +:102000008091040281FD0E94A010E12CF12C34018A +:102010000E2C02C0660C771C0A94E2F7C3018C21D7 +:102020009D21892B21F1E9825A8221E0C3018A2175 +:102030009B21892B09F420E02B830E943D1C8160A9 +:10204000782F9D838C8349815A816B818D810E9479 +:10205000D61049815A816B817C818D810E94B61B8B +:10206000F801808191816826792671826082FFEF74 +:10207000EF1AFF0A80E1E816F10449F6BACF8FEFB4 +:1020800089838A831B820E943D1C8160782F9D83F7 +:102090008C8349815A816B818D810E94D6100E9468 +:1020A000B51B0E94FE1E10918E010E940F0F181783 +:1020B00071F10E940F0F80938E019091040292FFA4 +:1020C0000EC090FF0CC01F928F938EEB93E09F93F6 +:1020D0008F930E9431060F900F900F900F90809178 +:1020E0008E010F900F900F900F900F90DF91CF9176 +:1020F0001F910F91FF90EF90DF90CF90BF90AF9026 +:102100009F908F907F906F905F900C94C71B0F9063 +:102110000F900F900F900F90DF91CF911F910F9123 +:10212000FF90EF90DF90CF90BF90AF909F908F90F7 +:102130007F906F905F9008950C94450708950895DF +:10214000EF92FF920F931F93CF93DF9388ED93E06D +:102150000E949805C0E0D0E08DE2E82E81E0F82EE4 +:1021600009EC13E08C2F0E9438070E949B1BFF9202 +:10217000EF929F938F93DF93CF931F930F930E94C0 +:10218000310621968DB79EB708960FB6F8949EBF7C +:102190000FBE8DBFC830D10529F7DF91CF911F91B8 +:1021A0000F91FF90EF90089508950895CF93DF93D6 +:1021B000CDB7DEB72B970FB6F894DEBF0FBECDBFFD +:1021C000942F4F83252F588769877A878B874A8575 +:1021D0005B85452B21F02F3F09F59F3FF9F4DE0188 +:1021E000119686E0FD0111928A95E9F785E0FE01DE +:1021F000379601900D928A95E1F749815A816B815A +:102200007C818D819E810E94B1172B960FB6F89428 +:10221000DEBF0FBECDBFDF91CF9108954F815885AE +:1022200069857A858B850E94B61BD9CFCF93882389 +:1022300009F465C0C82F8CEF8C0F813A20F080E53F +:102240008C0F8E3248F48C2F0E944822811157C087 +:102250008C2F0E943C1A0CC080E28C0F883058F4FE +:10226000C77081E001C0880FCA95EAF70E94E71A9B +:10227000CF910C942B1B8BE58C0F833078F4C53AEF +:1022800029F0C63A31F083E890E005C081E890E09B +:1022900002C082E890E0CF910C946F0F88E58C0F1C +:1022A000853168F5C83A89F0C93A91F0CA3A99F08F +:1022B000CB3AA1F0CC3AA9F0CD3AB1F0CE3AB9F090 +:1022C000CF3AC1F080E090E017C082EE90E014C0F9 +:1022D00089EE90E011C08AEE90E00EC085EB90E0B0 +:1022E0000BC086EB90E008C083EB90E005C084EB68 +:1022F00090E002C087EB90E0CF910C949D0FCF91BE +:102300000895882349F19CEF980F913A20F090E5C9 +:10231000980F9E3218F40E948F1A0DC090E2980F09 +:10232000983058F4877091E001C0990F8A95EAF7C8 +:10233000892F0E94ED1A0C942B1B9BE5980F93306C +:1023400020F480E090E00C946F0F885A853120F4DF +:1023500080E090E00C949D0F0895882321F00E9466 +:10236000E71A0C942B1B0895882321F00E94ED1A84 +:102370000C942B1B0895BF92CF92DF92EF92FF92A5 +:102380000F931F93CF93DF9300D000D000D0CDB731 +:10239000DEB725E0FC01DE01119601900D922A9531 +:1023A000E1F7FC0140813181F280258122952F7077 +:1023B00063817481672B09F4FEC23F3F19F44F3FDC +:1023C00009F4F9C26C0149833A8389819A812E8389 +:1023D0000E94FB19182FB92E0E94FA190E940A199F +:1023E000EB2DE295EF70F0E0E05AFF4F2E810C9458 +:1023F000EE248B2D807F9B2D9F70092F882311F059 +:102400000295007FFF2049F0002309F481C2802F4C +:102410000E94FA1A0E942B1B7BC2812F0E948111FD +:10242000002309F4C8C2802F0E94001B26960FB615 +:10243000F894DEBF0FBECDBFDF91CF911F910F91FA +:10244000FF90EF90DF90CF90BF900C942B1B8B2DC3 +:10245000807F9B2D9F70092F803211F00295007FA5 +:10246000112319F0113009F12AC0FF20B1F0802F9B +:10247000222351F1213041F526960FB6F894DEBFA4 +:102480000FBECDBFDF91CF911F910F91FF90EF90C5 +:10249000DF90CF90BF900C940A1B222319F02130BB +:1024A00009F489C20E94131B2DC0FF20F1F02630D1 +:1024B00008F081C20E94E41A802329F023C0FF2083 +:1024C000F9F0211116C0802F26960FB6F894DEBFC2 +:1024D0000FBECDBFDF91CF911F910F91FF90EF9075 +:1024E000DF90CF90BF900C94AD11253008F063C2FF +:1024F00009C0F601858180FF0BC28F708583E3CF11 +:1025000021111BC2802F82C12B2D26952695237069 +:1025100030E02115310521F021303105D1F04BC2D9 +:10252000FF2021F0812F9B2D937002C080E090E06E +:1025300026960FB6F894DEBF0FBECDBFDF91CF91C8 +:102540001F910F91FF90EF90DF90CF90BF900C9470 +:102550006F0FFF2021F0812F9B2D937002C080E030 +:1025600090E026960FB6F894DEBF0FBECDBFDF9188 +:10257000CF911F910F91FF90EF90DF90CF90BF9080 +:102580000C949D0F812FFF2019F00E94841D02C022 +:102590000E94EC1D26960FB6F894DEBF0FBECDBF8D +:1025A000DF91CF911F910F91FF90EF90DF90CF902F +:1025B000BF900C94711E8B2D837009F07BC0F110BD +:1025C000FAC1812F829586958770880F880F912F89 +:1025D0009F70C92ED12CE12CF12C082E04C0CC0CFC +:1025E000DD1CEE1CFF1C0A94D2F714FF12C04FE052 +:1025F00050E060E070E004C0440F551F661F771F75 +:102600008A95D2F7CB01BA01609570958095909527 +:1026100003C060E070E0CB012B2D2695269523703A +:10262000422F50E042305105D9F04330510569F155 +:102630006C297D298E299F294130510551F126961B +:102640000FB6F894DEBF0FBECDBFDF91CF911F91C3 +:102650000F91FF90EF90DF90CF90BF900C941F19D7 +:102660006C297D298E299F2926960FB6F894DEBF06 +:102670000FBECDBFDF91CF911F910F91FF90EF90D3 +:10268000DF90CF90BF900C9431190E941F19C701A1 +:10269000B60126960FB6F894DEBF0FBECDBFDF9110 +:1026A000CF911F910F91FF90EF90DF90CF90BF904F +:1026B0000C940D19FF2019F08B2D817001C08695A7 +:1026C000882309F478C1812F829586958770880FB9 +:1026D000880F912F9F70C92ED12CE12CF12C082E40 +:1026E00004C0CC0CDD1CEE1CFF1C0A94D2F714FFB6 +:1026F00012C04FE050E060E070E004C0440F551F8E +:10270000661F771F8A95D2F7CB01BA016095709545 +:102710008095909503C060E070E0CB012B2D26954D +:1027200026952370422F50E042305105D9F04330B6 +:10273000510569F16C297D298E299F294130510568 +:1027400051F126960FB6F894DEBF0FBECDBFDF91D4 +:10275000CF911F910F91FF90EF90DF90CF90BF909E +:102760000C94D6196C297D298E299F2926960FB69F +:10277000F894DEBF0FBECDBFDF91CF911F910F91B7 +:10278000FF90EF90DF90CF90BF900C94E8190E94DB +:10279000D619C701B60126960FB6F894DEBF0FBE54 +:1027A000CDBFDF91CF911F910F91FF90EF90DF9000 +:1027B000CF90BF900C94C419103FC9F128F480E465 +:1027C000810F803250F09FC0123F09F461C008F4BD +:1027D0004AC0133F09F471C096C0012F00718B2DC0 +:1027E0008F71FF2051F00E945D19812F002319F095 +:1027F0008295807F69CE8F7067CE0E947E19812F6F +:10280000002319F08295807F01C08F7026960FB645 +:10281000F894DEBF0FBECDBFDF91CF911F910F9116 +:10282000FF90EF90DF90CF90BF900C94B411FF20F9 +:10283000B1F0253008F0BFC08B2D8F7126960FB6F2 +:10284000F894DEBF0FBECDBFDF91CF911F910F91E6 +:10285000FF90EF90DF90CF90BF900C94A31926309B +:1028600008F0A9C0E9CFFF20A9F08B2D8F71269623 +:102870000FB6F894DEBF0FBECDBFDF91CF911F9191 +:102880000F91FF90EF90DF90CF90BF900C945D1967 +:10289000FF2059F38B2D8F7126960FB6F894DEBF6B +:1028A0000FBECDBFDF91CF911F910F91FF90EF90A1 +:1028B000DF90CF90BF900C947E19FF2099F08B2D64 +:1028C0008F7126960FB6F894DEBF0FBECDBFDF9195 +:1028D000CF911F910F91FF90EF90DF90CF90BF901D +:1028E0000C94481926960FB6F894DEBF0FBECDBFE4 +:1028F000DF91CF911F910F91FF90EF90DF90CF90DC +:10290000BF900C944319FF20A9F0222309F4ADCF06 +:10291000812F26960FB6F894DEBF0FBECDBFDF9194 +:10292000CF911F910F91FF90EF90DF90CF90BF90CC +:102930000C941611222309F4ADCF812F26960FB6E1 +:10294000F894DEBF0FBECDBFDF91CF911F910F91E5 +:10295000FF90EF90DF90CF90BF900C9481114B2DA2 +:102960004F70612FC6010E94FE1C26960FB6F89488 +:10297000DEBF0FBECDBFDF91CF911F910F91FF90B2 +:10298000EF90DF90CF90BF900C9455184B2D4F7067 +:10299000612FC60126960FB6F894DEBF0FBECDBFDD +:1029A000DF91CF911F910F91FF90EF90DF90CF902B +:1029B000BF900C94011D26960FB6F894DEBF0FBE93 +:1029C000CDBFDF91CF911F910F91FF90EF90DF90DE +:1029D000CF90BF9008950E94071B0E94D61A0E94B4 +:1029E0002B1B0E94A31F0E94711E80E090E00E949A +:1029F0006F0F80E090E00C949D0F0E94F71A0C94EA +:102A0000EB140E94FB19292F22952F7030E02C30F7 +:102A100031054CF42A303105C4F4225031092230FA +:102A2000310540F023C02C303105D1F02F30310575 +:102A3000B9F01CC0853A28F48430B0F4823028F410 +:102A400013C090E2980F983078F0883E30F4803EC2 +:102A500058F48450813A50F407C0803F39F404C0E0 +:102A600093FB882780F9089581E0089580E0089518 +:102A7000CF93DF9300D000D01F92CDB7DEB70F9079 +:102A80000F900F900F900F90DF91CF910895CF93FB +:102A9000DF9300D000D000D0CDB7DEB726960FB6BA +:102AA000F894DEBF0FBECDBFDF91CF9108951F9385 +:102AB000CF93DF93C0919F0116E08091A001C817CA +:102AC00099F0D0E01C9FF0011D9FF00D1124EF55EF +:102AD000FE4F4081518162817381848195810E9482 +:102AE00047152196C770E9CFDF91CF911F910895C7 +:102AF0004091D1015091D2016091D3017091D401E4 +:102B00008091D5019091D6010C9447158091D60102 +:102B100082958F7009F054C08091D301882309F405 +:102B20004FC080919F01A091A0016091D10170914F +:102B3000D2014091D4015091D501B6E08A1709F431 +:102B40003FC090E041155105C1F17F3F11F46F3F47 +:102B5000A1F1B89FF001B99FF00D1124EF55FE4F80 +:102B6000218172132AC02081621327C02281211182 +:102B700024C0238134812417350710F421503109F2 +:102B8000241B350B2C323140C0F42091D6012F701C +:102B900020612093D60126E0289FF001299FF00DA7 +:102BA0001124EA55FE4F80818F708061808381ED12 +:102BB00091E00E94BB110C94571501968770BECF0F +:102BC0000895CF92DF92EF92FF920F931F93CF93CE +:102BD000DF93CDB7DEB762970FB6F894DEBF0FBEB6 +:102BE000CDBF8C0185E0F801DE011D9601900D92AC +:102BF0008A95E1F7D8014C9111965C911197129644 +:102C00006C9112971396CD90DC9014973091D1016E +:102C10007091D2018091D4019091D501009709F46F +:102C200073C17F3F19F43F3F09F46EC1E090D301B7 +:102C3000EE2009F4C5C02091D601C816D90650F07F +:102C4000F601E81BF90BCF01FF24F3948C3291407D +:102C5000C8F009C0809590958C0D9D1DFF24F394BC +:102C60008C32914078F0F12C207F09F0C6C07C2D89 +:102C7000D98AC88A89890E94381581ED91E00E941D +:102C8000BB11B1C0822F807F09F045C0751313C0FE +:102C9000341311C061110FC02F7020612093D60131 +:102CA0000E94781581ED91E00E94BB118091D601C0 +:102CB000F80185832EC0CD2819F15F3F11F44F3FF5 +:102CC000F9F0F62E61111CC080919F012091A001A6 +:102CD00036E0821709F45BC090E0389FF001399F1D +:102CE000F00D1124EF55FE4F7181571306C070810E +:102CF000471303C07281711103C001968770E9CF39 +:102D0000F62E662309F41DC18091D601816080935F +:102D1000D601F12C16C1751309C0341307C0611117 +:102D200005C08091D601F8018583C8C04D875E87B4 +:102D30008D859E856A8B0E9401156A898823E1F141 +:102D40006623D1F12091D601822F82958F7090E079 +:102D5000029774F08091D1019091D20198878F836E +:102D60001986DB86CA862C87CE0107960E94BB1186 +:102D700086E0F801A1EDB1E001900D928A95E1F7AE +:102D80000E9486150E947815FF24F394DAC04D87BF +:102D90005E878D859E850E94FB19292F22952F70B5 +:102DA00030E0223031050CF0BFC09F7009F0B9C08F +:102DB000805E883008F4C5C0C8010E94BB11E4CF12 +:102DC000C816D90608F453C0F601E81BF90BCF0169 +:102DD0008C32914008F453C0F12C7C2DD98AC88ADA +:102DE00089890E943815E1EDF1E086E0DF011D924E +:102DF0008A95E9F70E947815A4C0751314C034139E +:102E000012C0611110C08091D601F8018583C801FC +:102E10000E94BB1186E0E1EDF1E0DF011D928A9591 +:102E2000E9F7FE2C8EC04D875E878D859E856A8B67 +:102E30000E9401156A89882309F4BECF662309F42C +:102E4000BBCF2091D601822F82958F7090E00297A0 +:102E50000CF48ECF8091D1019091D2019A83898315 +:102E60001B82DD82CC822E83CE0101967FCF80959E +:102E700090958C0D9D1D8C32914008F0ADCFF62EB3 +:102E8000662309F499CF75132EC034132CC02091FA +:102E9000D60120FD1FC0822F82958F70D9F0D801F6 +:102EA00015962C9315978F3049F08F5F982F929538 +:102EB000907F822F8F70892B15968C93C8010E946A +:102EC000BB1186E0F801A1EDB1E001900D928A9569 +:102ED000E1F790CF86E0F801A1EDB1E001900D920D +:102EE0008A95E1F72EC04D875E878D859E850E946D +:102EF000011581113DCF8091D60181608093D6016B +:102F0000C8010E94BB111DC0662309F455CF4D872F +:102F10005E878D859E850E940115882309F44CCF1C +:102F200027CF811145CF0DC0243031050CF044CF9F +:102F30009F7009F43DCFD80115969C91907F09F0C0 +:102F400037CF8F2D62960FB6F894DEBF0FBECDBF80 +:102F5000DF91CF911F910F91FF90EF90DF90CF9075 +:102F600008951F93CF93DF93CDB7DEB72C970FB69D +:102F7000F894DEBF0FBECDBF4F83588769877A872D +:102F80008B879C87CE0107960E94E115882369F004 +:102F90008F8198852A853B85232BF1F19F3F09F08E +:102FA00063C08F3F09F060C037C086E0FE013796EE +:102FB000DE01119601900D928A95E1F76F81788577 +:102FC000EA85FB85309741F17F3F11F46F3F21F196 +:102FD0002091A00130E0C9010196877099274091A6 +:102FE0009F0150E08417950709F447C069837A83ED +:102FF000FD83EC8396E0929FD001939FB00D112446 +:10300000AF55BE4FFE01319601900D929A95E1F7B2 +:103010008093A0010E94571516E080919F01909126 +:10302000A0018917C1F1189FC00111248F559E4F2F +:103030000E94E115882379F1E0919F011E9FF00124 +:103040001124EF55FE4F408151816281738184814B +:1030500095810E94471580919F0190E001968770AD +:10306000992780939F01D9CF4F81588569857A85AB +:103070008B859C850E944715CFCF0E94FD1410922E +:10308000A00110929F01E1EDF1E086E0DF011D92C9 +:103090008A95E9F7C1CF2C960FB6F894DEBF0FBE24 +:1030A000CDBFDF91CF911F910895DF92EF92FF92F4 +:1030B0000F931F93CF93DF93FC01892B09F48AC0F0 +:1030C000E12CF12CDD24D394EF01219684918537F6 +:1030D00009F461C058F4843708F04EC0843008F019 +:1030E0006AC08130D1F0823071F174C0883709F440 +:1030F0005DC050F4863709F455C0873709F06AC0BF +:103100008E2D0E94F41A54C09CE7980F903708F057 +:1031100061C08F770E94811150C08F010E5F1F4FD9 +:10312000FE01849190E2980F983050F48770FD2D45 +:1031300001C0FF0F8A95EAF78F2F0E94FA1A14C078 +:103140000E94161113C08F010E5F1F4FFE01C49124 +:1031500080E28C0F883060F4C7708D2D01C0880F1D +:10316000CA95EAF70E94001B0E942B1BE80125C0AC +:103170008C2F0E948111FACF9F012E5F3F4FFE01DD +:10318000C491CC2369F08FE99FE00197F1F700C06B +:103190000000C150F6CF9F012E5F3F4FFE01F4901B +:1031A000E9010BC00E94E41AE82E07C00E94F71A3A +:1031B0000E942B1B02C00E9416118F2D882341F004 +:1031C000EFE9FFE03197F1F700C000008150F6CF42 +:1031D000FE017ACFDF91CF911F910F91FF90EF9079 +:1031E000DF9008956093DB017093DC018093DD0133 +:1031F0009093DE010E94C51B0C94EB146093D701E1 +:103200007093D8018093D9019093DA010E94C61B74 +:103210000C94EB1408950C94F2180F931F930091E3 +:10322000DB011091DC012091DD013091DE01602B8A +:10323000712B822B932B1F910F910C94F2180F93EB +:103240001F930091DB011091DC012091DD01309191 +:10325000DE0160237123822393231F910F910C942D +:10326000F2180F931F930091DB011091DC01209164 +:10327000DD013091DE0160277127822793271F919E +:103280000F910C94F21860E070E0CB010C94FE18E2 +:103290000F931F9341E050E060E070E08A019B01D2 +:1032A00004C0000F111F221F331F8A95D2F7C901D6 +:1032B000B8011F910F910C94FE180F931F9341E0DA +:1032C00050E060E070E004C0440F551F661F771F98 +:1032D0008A95D2F78091D7019091D801A091D90118 +:1032E000B091DA018A019B01082B192B2A2B3B2B69 +:1032F000C901B8011F910F910C94FE180F931F93F1 +:1033000041E050E060E070E004C0440F551F661FCC +:10331000771F8A95D2F7409550956095709580916A +:10332000D7019091D801A091D901B091DA018A0119 +:103330009B01082319232A233B23C901B8011F91AC +:103340000F910C94FE180F931F9341E050E060E042 +:1033500070E004C0440F551F661F771F8A95D2F78F +:103360008091D7019091D801A091D901B091DA0153 +:103370008A019B01082719272A273B27C901B80181 +:103380001F910F910C94FE180F931F930091D7017A +:103390001091D8012091D9013091DA01602B712B65 +:1033A000822B932B1F910F910C94FE180F931F9358 +:1033B0000091D7011091D8012091D9013091DA0103 +:1033C00060237123822393231F910F910C94FE1885 +:1033D0000F931F930091D7011091D8012091D9012B +:1033E0003091DA0160277127822793271F910F916F +:1033F0000C94FE180895CF92DF92EF92FF920F93F4 +:103400001F93CF93DF938C01C090DB01D090DC0140 +:10341000E090DD01F090DE014091D7015091D8019C +:103420006091D9017091DA01C42AD52AE62AF72AD7 +:10343000CFE1D0E0D701C6010C2E04C0B695A79508 +:10344000979587950A94D2F780FF07C0B8018C2F13 +:103450000E94D41C8130910531F4219758F7B801AE +:1034600080E00E94D41CDF91CF911F910F91FF90BB +:10347000EF90DF90CF90089590910A01992321F069 +:1034800090910B01911109C020910C0130910D0117 +:10349000F90132969FEF40E030C0982F96959695AF +:1034A00096959F31A0F4E0910C01F0910D01E90F88 +:1034B000F11D877021E030E0A90102C0440F551FC3 +:1034C0008A95E2F7CA019181892B818308959091B1 +:1034D000040290FF23C01F928F938CE094E09F938F +:1034E0008F930E9431060F900F900F900F900895C8 +:1034F0009F3F39F04F5F4E3141F051915813F8CF53 +:103500000DC05111F7CF942FF5CF9F3F39F0F9013E +:10351000E90FF11D97FDFA95828308950895909122 +:103520000A01992321F090910B01911109C020917A +:103530000C0130910D01F9013296205E3F4F30C0F1 +:10354000982F9695969596959F31A8F4E0910C0149 +:10355000F0910D01E90FF11D877021E030E0A90124 +:1035600002C0440F551F8A95E2F7CA0180959181E8 +:103570008923818308959091040290FF16C01F92C1 +:103580008F938EEE93E09F938F930E9431060F905E +:103590000F900F900F9008953196E217F30729F0DE +:1035A00090819813F9CF1082F7CF089581E090E0D1 +:1035B000E0910C01F0910D01E80FF91F10820196C6 +:1035C00080329105A9F708958091030208959091A2 +:1035D0000302892B80930302089580959091030242 +:1035E0008923809303020895809303020895109223 +:1035F0000302089590910202892B8093020208959C +:10360000809590910202892380930202089510927E +:10361000020208958093E1010E943D1C9093E00115 +:103620008093DF0108951092E1011092E001109261 +:10363000DF01089580910C0190910D01FC013196FC +:103640009C01205E3F4F80E0919191118F5FE217C6 +:10365000F307D1F70895E0910C01F0910D018091ED +:1036600003028083E0910C01F0910D019081809123 +:103670000202892B80838091E1018823D9F10E9485 +:103680003D1C2091DF013091E0018217930748F043 +:103690000E943D1C2091DF013091E001821B930BC1 +:1036A0000AC00E943D1C2091DF013091E00120956D +:1036B0003095820F931F8C32914070F080910402FC +:1036C00080FF08C08AE294E09F938F930E943106A6 +:1036D0000F900F900E94131BE0910C01F0910D01CF +:1036E00090818091E101892B80830E941A1B8111B6 +:1036F0000E94131B80910C0190910D010C941B0FE3 +:10370000909339018093380108958295982F9C7C7D +:10371000392F36953695282F237344E0249FC00116 +:103720001124932F982B292F2A7A2695892F857576 +:10373000880F822B08951F93CF93DF931F92CDB7ED +:10374000DEB799830E94851B182F9981892F0E94CB +:10375000851B212F30E0322F2227A901482BCA01D7 +:103760000F90DF91CF911F9108950895CF93DF932C +:1037700000D000D01F92CDB7DEB70F900F900F9002 +:103780000F900F90DF91CF910895089508950C94B4 +:103790009C1080911902843021F11092050220E4DE +:1037A00088E190E00FB6F894A895809360000FBE72 +:1037B0002093600083B7817F846083BF83B781607B +:1037C00083BF7894889583B78E7F83BF0FB6F894B4 +:1037D000A8958091600088618093600010926000DD +:1037E0000FBE0895CF930E94D4100E9468060E94D5 +:1037F000D510C0E08C2F0E943807892B29F4CF5FA9 +:10380000C830C1F780E001C081E0CF9108950E94E7 +:103810009E100C94FD141F920F920FB60F9211245C +:103820008F939F93AF93BF9380910502811113C033 +:103830008091060290910702A0910802B0910902BE +:103840004196A11DB11D8093060290930702A0939B +:103850000802B0930902BF91AF919F918F910F9091 +:103860000FBE0F901F90189582E084BD93E095BD28 +:103870009AEF97BD80936E0008952FB7F8948091CA +:10388000060290910702A0910802B09109022FBF91 +:1038900008952FB7F8946091060270910702809105 +:1038A0000802909109022FBF0895CF92DF92EF9204 +:1038B000FF920F931F932FB7F894409106025091F7 +:1038C000070260910802709109022FBF6A017B0113 +:1038D000EE24FF248C0120E030E0C016D106E20681 +:1038E000F30610F4415051099A01281B390BC90104 +:1038F0001F910F91FF90EF90DF90CF9008951F924E +:103900000F920FB60F9211248F939F93AF93BF9393 +:103910008091060290910702A0910802B0910902DD +:103920000196A11DB11D8093060290930702A093FA +:103930000802B0930902BF91AF919F918F910F90B0 +:103940000FBE0F901F9018950E94280CF8942FEF2F +:1039500087EA91E6215080409040E1F700C00000E6 +:1039600087E090EBDC018093220290932302A093E6 +:103970002402B09325029CE088E10FB6F894A89544 +:10398000809360000FBE90936000FFCF20E1929F74 +:10399000F0011124E80FF11DE052FF4F9491892F9F +:1039A0008F7092959F700895CF93C82FCB010E947E +:1039B000C61C282F30E080E1989FA0011124422BE3 +:1039C000532B4038510519F480E090E015C09770F2 +:1039D000E92FF0E088E0C89FE00DF11D112484E09C +:1039E000EE0FFF1F8A95E1F7E20FF31FEE0FFF1FA7 +:1039F000E050F84985919491CF91089580E090E04E +:103A00000895089580910C0280FF0BC06091110110 +:103A100085E0689FB0011124759567957595679548 +:103A20002BC081FF09C06091110185E0689FB00142 +:103A300011247595679520C082FF07C06091110120 +:103A400085E0689FB001112417C090910D02992361 +:103A5000D1F060911001961788F72091110185E04F +:103A6000289F90011124929FA001939F500D112433 +:103A700070E0CA010E94DA246038710540F46115D3 +:103A8000710539F002C065E070E0862F08958FE778 +:103A9000089581E0089580910C0280FF08C0609134 +:103AA0000F0170E0759567957595679521C081FF49 +:103AB00006C060910F0170E07595679519C082FF8F +:103AC00004C060910F0170E010C090910D02992325 +:103AD000C1F060910E019617A0F780910F01899FA8 +:103AE000C001112470E00E94DA246038710528F4C6 +:103AF0006115710521F0862F08958FE7089581E003 +:103B0000089561E070E0F4CF803F21F40E94021D2F +:103B1000819504C0813F29F40E94021D8093100208 +:103B20000895823F21F40E94021D819504C0833FC5 +:103B300029F40E94021D80930F020895893F19F411 +:103B40000E944B1D05C08A3F31F40E944B1D819598 +:103B50008093110208958B3F21F40E944B1D8195A3 +:103B600004C08C3F29F40E944B1D809312020895DB +:103B7000843F21F480910E02816017C0853F21F4BB +:103B800080910E02826011C0863F21F480910E0266 +:103B900084600BC0873F21F480910E02886005C0CD +:103BA000883F31F480910E02806180930E02089567 +:103BB0008D3F21F480910C0281600BC08E3F21F477 +:103BC00080910C02826005C08F3F29F480910C0225 +:103BD000846080930C020895803F39F48091100234 +:103BE00087FF6CC01092100269C0813F29F4809158 +:103BF00010021816BCF362C090910F02823F29F4A4 +:103C000097FF5CC010920F0259C0833F19F4191638 +:103C1000CCF354C0893F41F48091110218160CF086 +:103C20004DC0109211024AC08A3F29F480911102BE +:103C300087FF44C0F6CF8B3F39F48091120287FF93 +:103C40003DC0109212023AC08C3F29F480911202BA +:103C50001816BCF333C0843F21F480910E028E7F8E +:103C600017C0853F21F480910E028D7F11C0863FE1 +:103C700021F480910E028B7F0BC0873F21F480914D +:103C80000E02877F05C0883F31F480910E028F7E3F +:103C900080930E0213C08D3F21F480910C028E7F21 +:103CA0000BC08E3F21F480910C028D7F05C08F3FA9 +:103CB00029F480910C028B7F80930C0280910F027B +:103CC00081110EC08091100281110AC080911102F1 +:103CD000811106C080911202811102C010920D0262 +:103CE00008958091040283FF7EC083E694E00E94E1 +:103CF000980580910E021F928F938EE594E09F931A +:103D00008F930E9431068CE594E00E949805809183 +:103D10000F02282F082E000C330B3F938F9389E559 +:103D200094E09F938F930E94310687E594E00E9470 +:103D3000980580911002282F082E000C330B3F931A +:103D40008F9384E594E09F938F930E94310682E5E0 +:103D500094E00E94980580911102282F082E000CF3 +:103D6000330B3F938F938FE494E09F938F930E9444 +:103D700031068DE494E00E94980580911202282F6C +:103D8000082E000C330B3F938F938AE494E09F93AB +:103D90008F930E94310687E494E00E9498058091F9 +:103DA0000D021F928F9384E494E09F938F930E945F +:103DB000310682E494E00E94980580910C021F92E3 +:103DC0008F938FE394E09F938F930E9431068CE34F +:103DD00094E00E9498058DB79EB74C960FB6F89464 +:103DE0009EBF0FBE8DBF8EE092E00E94640F0E94C6 +:103DF0003D1C90930B0280930A0208951F93CF936A +:103E0000DF9380910A0290910B020E94551CAC0135 +:103E100090910D02992321F02091120130E006C00B +:103E2000209113018AE0289F900111244217530723 +:103E300008F485C080910F02C0911002D091110248 +:103E400010911202811107C0C11175C0D11173C048 +:103E5000111171C074C09F3F19F09F5F90930D02C4 +:103E6000181624F40E94021D80930F0280910F0205 +:103E700087FF05C00E94021D819580930F021C16CA +:103E800024F40E94021D809310028091100287FF8B +:103E900005C00E94021D81958093100260910F025F +:103EA000662331F1C0911002CC2311F1062E000CD3 +:103EB000770B880B990B0E94D52323E333E343E36D +:103EC0005FE30E9439240E949D2360930F026C2FB0 +:103ED000CC0F770B880B990B0E94D52323E333E398 +:103EE00043E35FE30E9439240E949D236093100204 +:103EF0001D1624F40E944B1D809311028091110223 +:103F000087FF05C00E944B1D8195809311021116F9 +:103F100024F40E944B1D809312028091120287FFAD +:103F200005C00E944B1D819580931202DF91CF91B5 +:103F30001F910C94711E9F3F09F08FCF97CFDF9197 +:103F4000CF911F910895EEE0F2E085E0DF011D9230 +:103F50008A95E9F710920D0210920C02089586E8F6 +:103F600096E00E9498051F9281E08F931F9285E052 +:103F70008F9388E396E09F938F930E9431060F9072 +:103F80000F900F900F900F900F9008958330E9F1EC +:103F900028F4813061F0823009F10895853009F408 +:103FA00062C008F449C0863009F474C00895809155 +:103FB0001301262F30E0280F311D2F3F310524F447 +:103FC000680F6093130103C08FEF809313018091FA +:103FD00013011F928F9381E795E072C080911201C7 +:103FE000262F30E0280F311D2F3F310524F4680FB4 +:103FF0006093120103C08FEF809312018091120130 +:104000001F928F938FE595E05BC080911101262F61 +:1040100030E0280F311D2F3F310524F4680F6093E5 +:10402000110103C08FEF80931101809111011F9244 +:104030008F938CE495E044C080911001262F30E0EE +:10404000280F311D2F3F310524F4680F60931001B4 +:1040500003C08FEF80931001809110011F928F9306 +:1040600087E395E02DC080910F01262F30E0280FC7 +:10407000311D2F3F310524F4680F60930F0103C0F9 +:104080008FEF80930F0180910F011F928F938EE12C +:1040900095E016C080910E01262F30E0280F311DCB +:1040A0002F3F310524F4680F60930E0103C08FEF9A +:1040B00080930E0180910E011F928F9383E095E013 +:1040C0009F938F930E9431060F900F900F900F9047 +:1040D0000895833081F128F4813059F08230D1F095 +:1040E0000895853009F449C0B8F1863009F456C006 +:1040F000089580911301681720F4861B80931301A3 +:1041000002C010921301809113011F928F9384EFCC +:1041100094E054C080911201681720F4861B8093AC +:10412000120102C010921201809112011F928F930E +:1041300082EE94E043C080911101681720F4861B41 +:104140008093110102C010921101809111011F9200 +:104150008F938FEC94E032C080911001681720F4A7 +:10416000861B8093100102C01092100180911001F3 +:104170001F928F938AEB94E021C080910F01681702 +:1041800020F4861B80930F0102C010920F018091D2 +:104190000F011F928F9381EA94E010C080910E016D +:1041A000681720F4861B80930E0102C010920E0146 +:1041B00080910E011F928F9386E894E09F938F93D6 +:1041C0000E9431060F900F900F900F900895CF939B +:1041D000C82F1F928F938BE897E09F938F930E9435 +:1041E000310681E090E0A0E0B0E0BC01CD0104C068 +:1041F000660F771F881F991FCA95D2F70E940B1967 +:104200000F900F900F900F90CF910C94FD14CF93BF +:104210008732A8F58E3108F02BC1803109F49FC098 +:10422000F8F4873009F464C0A8F4863009F024C19A +:1042300080910402817F8E7F8093040280E997E061 +:104240000E94980581E89AE00E94980581E0809399 +:1042500014024CC08B30F1F18E3009F46CC00CC1EB +:10426000863109F4B0C020F4813109F4EDC004C1F5 +:10427000893109F491C08B3109F449C0FDC08833FC +:1042800049F150F4893209F4F1C0853309F4EEC0E4 +:10429000873209F0F1C0EAC0833409F4E7C028F49A +:1042A0008A3308F4E9C08953E4C0883409F0E4C0D3 +:1042B0000E94FD1480E79AE00E9498052FEF83ED9D +:1042C00090E3215080409040E1F700C000000E9440 +:1042D000A41C0CC087EB97E05CC087E59AE00E94C5 +:1042E000980580910402816080930402C1E0C9C0F6 +:1042F00080910402C82FC17080FFEFCF83E69AE05F +:104300000E94980580910402817F8E7F3DC090912C +:10431000040291FBCC27C0F981E0C827892FC0FB9C +:1043200081F980930402CC2319F08AE49AE027C033 +:104330008CE39AE02EC09091040292FBCC27C0F946 +:1043400081E0C827892FC0FB82F980930402CC2327 +:1043500019F08DE29AE013C08DE19AE01AC09091B5 +:10436000040293FBCC27C0F981E0C827892FC0FB4A +:1043700083F980930402CC2351F081E19AE00E94FA +:104380009805809104028160809304027AC084E0E1 +:104390009AE00E949805AACF85EF99E00E949805BF +:1043A0008CEC99E00E9498058AE899E00E949805B3 +:1043B0008DE599E00E94980583E199E00E949805B7 +:1043C00085EE98E0E6CF87ED98E00E9498050E9480 +:1043D0000F0F1F928F938DEB98E09F938F930E9406 +:1043E000310680910A011F928F9386EA98E09F938D +:1043F0008F930E943106809187011F928F9383E9EA +:1044000098E09F938F930E94310680910B011F9239 +:104410008F9380E898E09F938F930E9431060E94CB +:10442000491C9F938F937F936F9389E698E09F93A6 +:104430008F930E9431068DB79EB746960FB6F894BB +:104440009EBF0FBE8DBF52CF0E94FD14C0910B01C5 +:1044500081E0C827C0930B01CC2329F08FE598E0B9 +:104460000E9498050EC084E598E093CF80E001C0DB +:104470008D510E94E7203ACF82E598E00E9498058E +:10448000C0E08C2FCF91089580E0089580E00895DA +:10449000CF93C82F80911402813071F020F08230C8 +:1044A00009F44BC042C1E0910C01F0910D018081F3 +:1044B000823209F03CC107C0E0910C01F0910D017E +:1044C0008081823261F48C2F0E944422811104C0C9 +:1044D0008C2F0E9407212FC081E090E02CC08C2FF0 +:1044E0000E944622811126C0C431E1F070F4CB3025 +:1044F00081F0C031D1F40E94AF1F83E897E00E94A1 +:10450000980582E08093140215C0C93259F0C8336F +:1045100061F480E997E00E94980587E897E00E949F +:10452000980508C01092140204C181E897E00E9427 +:104530009805FFC081E08170FEC0C43228F5CE31FD +:1045400008F0C1C0CB30A1F1D0F4C73009F0D3C01E +:104550008EE18093130182E3809312018AE08093BD +:10456000110184E18093100188E080930F0188E2BB +:1045700080930E0187E296E00E949805BFC0C33188 +:1045800049F1C431C1F0B7C0CB3409F4A9C028F453 +:10459000C93289F0C83361F0AEC0C13509F49EC09C +:1045A000C23509F499C0CE3409F0A5C06AE09EC0B6 +:1045B0000E94AF1FA3C080911302882319F01092AC +:1045C00013029CC084E396E00E94980581E08093EA +:1045D0001402B1C08EE096E00E9498058CEF95E041 +:1045E0000E949805809113011F928F9389EF95E0A7 +:1045F0009F938F930E94310687EF95E00E94980564 +:1046000085EE95E00E949805809112011F928F938C +:1046100082EE95E09F938F930E94310680EE95E0A5 +:104620000E94980581ED95E00E9498058091110106 +:104630001F928F938EEC95E09F938F930E9431068B +:104640008CEC95E00E9498058BEB95E00E94980514 +:10465000809110011F928F9388EB95E09F938F9329 +:104660000E94310686EB95E00E94980581EA95E06C +:104670000E94980580910F011F928F938EE995E01B +:104680009F938F930E9431068CE995E00E949805D4 +:1046900085E895E00E94980580910E011F928F9306 +:1046A00082E895E09F938F930E94310680E895E021 +:1046B0000E9498058DB79EB748960FB6F8949EBF96 +:1046C0000FBE8DBF1BC0CE51EC2FF0E0E25DFE4F60 +:1046D00080818093130212C061E003C061E006C0D4 +:1046E0006AE0809113020E94C61F08C080911302E5 +:1046F0000E94692003C085E296E013C080911302F6 +:10470000882369F01F928F938FE196E09F938F9398 +:104710000E9431060F900F900F900F9004C08CE113 +:1047200096E00E94980581E006C01092140280E095 +:1047300002C080E000CFCF9108950E94A423689426 +:10474000B1110C94332408950E94182488F09F57C7 +:1047500098F0B92F9927B751B0F0E1F0660F771FA5 +:10476000881F991F1AF0BA95C9F714C0B13091F09B +:104770000E943224B1E008950C943224672F782FE0 +:104780008827B85F39F0B93FCCF386957795679560 +:10479000B395D9F73EF490958095709561957F4FCC +:1047A0008F4F9F4F0895E89409C097FB3EF4909572 +:1047B0008095709561957F4F8F4F9F4F9923A9F0FA +:1047C000F92F96E9BB279395F69587957795679589 +:1047D000B795F111F8CFFAF4BB0F11F460FF1BC0CD +:1047E0006F5F7F4F8F4F9F4F16C0882311F096E960 +:1047F00011C0772321F09EE8872F762F05C066230E +:1048000071F096E8862F70E060E02AF09A95660FC6 +:10481000771F881FDAF7880F9695879597F908957F +:1048200057FD9058440F551F59F05F3F71F0479561 +:10483000880F97FB991F61F09F3F79F08795089546 +:10484000121613061406551FF2CF4695F1DF08C065 +:10485000161617061806991FF1CF86957105610582 +:1048600008940895E894BB2766277727CB0197F92A +:1048700008950E944C240C94BD240E94AF2438F06B +:104880000E94B62420F0952311F00C94A6240C94D9 +:10489000AC2411240C9433240E94102470F3959FAF +:1048A000C1F3950F50E0551F629FF001729FBB2727 +:1048B000F00DB11D639FAA27F00DB11DAA1F649FC3 +:1048C0006627B00DA11D661F829F2227B00DA11D76 +:1048D000621F739FB00DA11D621F839FA00D611DFC +:1048E000221F749F3327A00D611D231F849F600D1D +:1048F000211D822F762F6A2F11249F5750409AF046 +:10490000F1F088234AF0EE0FFF1FBB1F661F771FD1 +:10491000881F91505040A9F79E3F510580F00C949C +:10492000A6240C9433245F3FE4F3983ED4F3869599 +:1049300077956795B795F795E7959F5FC1F7FE2B3C +:10494000880F911D9695879597F9089597F99F6718 +:1049500080E870E060E008959FEF80EC0895002407 +:104960000A941616170618060906089500240A94D4 +:1049700012161306140605060895092E0394000C5A +:1049800011F4882352F0BB0F40F4BF2B11F460FFE9 +:1049900004C06F5F7F4F8F4F9F4F0895991B79E041 +:1049A00004C0991F961708F0961B881F7A95C9F7BF +:1049B0008095089597FB072E16F4009407D077FD95 +:1049C00009D00E94F42407FC05D03EF4909581950F +:1049D0009F4F0895709561957F4F0895EE0FFF1FCB +:1049E0000590F491E02D0994AA1BBB1B51E107C06F +:1049F000AA1FBB1FA617B70710F0A61BB70B881F6F +:104A0000991F5A95A9F780959095BC01CD010895FD +:044A1000F894FFCF48 +:104A14004B073C081908E507B1070101E201280822 +:104A2400140A321E404D3622394D030003CA02A82F +:104A3400026F02E201FB0114022D024D0200010289 +:084A4400030405060708090040 +:106800000000000000000000040005000600070072 +:10681000080009000A000B000C000D000E000F001C +:1068200010001100120013001400150016001700CC +:10683000180019001A001B001C001D001E001F007C +:10684000200021002200230024002500260027002C +:10685000280000002A002B002C002D002E002F0005 +:1068600030003100000033003400290036003700CA +:1068700038003900000000000000000000000000A7 +:106880000000000000000000000000000000000008 +:1068900000004900000000004C00000000004F0014 +:1068A00050005100520000000000000000000000F5 +:1068B00000000000000000000000000000000000D8 +:1068C00000000000000000000000000000000000C8 +:1068D00000000000000000000000000000000000B8 +:1068E00000000000000000000000000000000000A8 +:1068F000E000E100E200E300E400E500E60035002E +:00000001FF diff --git a/keyboard/fc660c/binary/fc660c_unimap.hex b/keyboard/fc660c/binary/fc660c_emu.hex similarity index 97% rename from keyboard/fc660c/binary/fc660c_unimap.hex rename to keyboard/fc660c/binary/fc660c_emu.hex index a2e5ea56..ba56fcee 100644 --- a/keyboard/fc660c/binary/fc660c_unimap.hex +++ b/keyboard/fc660c/binary/fc660c_emu.hex @@ -148,9 +148,9 @@ :10093000455920434F4E534F4C4520434F4D4D4159 :100940004E44204E4B524F204B45594D41505F5322 :10095000454354494F4E20343039360A00425549F8 -:100960004C443A20343466633536612D64697274C0 -:1009700079202830343A34303A35382041707220AA -:1009800031312032303137290A005649443A20307B +:100960004C443A20653338323935372D6469727416 +:1009700079202831363A31333A32362041707220AC +:1009800031352032303137290A005649443A203077 :10099000784645454428544D4B2E29205049443A29 :1009A00020307836363043284643363630432041AF :1009B0006C7420436F6E74726F6C6C657229205674 diff --git a/keyboard/fc660c/unimap.c b/keyboard/fc660c/unimap.c index 50e44599..77c33506 100644 --- a/keyboard/fc660c/unimap.c +++ b/keyboard/fc660c/unimap.c @@ -4,13 +4,6 @@ #include "fc660c.h" -#define AC_L3 ACTION_LAYER_MOMENTARY(3) -#define AC_L4 ACTION_LAYER_MOMENTARY(4) -#define AC_LS_2 ACTION_LAYER_MODS(2, MOD_LSFT) -#define AC_RS_2 ACTION_LAYER_MODS(2, MOD_RSFT) -#define AC_TGL1 ACTION_LAYER_TOGGLE(1) - -// emulates FC660C default keymap #ifdef KEYMAP_SECTION_ENABLE const action_t actionmaps[][UNIMAP_ROWS][UNIMAP_COLS] __attribute__ ((section (".keymap.keymaps"))) = { #else @@ -19,47 +12,8 @@ const action_t actionmaps[][UNIMAP_ROWS][UNIMAP_COLS] PROGMEM = { [0] = KMAP( ESC, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, MINS,EQL, BSPC, INS, TAB, Q, W, E, R, T, Y, U, I, O, P, LBRC,RBRC,BSLS, DEL, - LCTL,A, S, D, F, G, H, J, K, L, SCLN,QUOT, ENT, - LS_2,Z, X, C, V, B, N, M, COMM,DOT, SLSH, RS_2,UP, - LCTL,LGUI,LALT, SPC, RALT,RCTL,L3, LEFT,DOWN,RGHT - ), - [1] = KMAP( - GRV, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, MINS,EQL, BSPC, INS, - TAB, Q, W, E, R, T, Y, U, I, O, P, LBRC,RBRC,BSLS, DEL, - LCTL,A, S, D, F, G, H, J, K, L, SCLN,QUOT, ENT, + CAPS,A, S, D, F, G, H, J, K, L, SCLN,QUOT, ENT, LSFT,Z, X, C, V, B, N, M, COMM,DOT, SLSH, RSFT,UP, - LCTL,LGUI,LALT, SPC, RALT,RCTL,L4, LEFT,DOWN,RGHT - ), - [2] = KMAP( - GRV, TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, TRNS, - TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, TRNS, - TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, TRNS, - TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, TRNS,TRNS, - TRNS,TRNS,TRNS, TRNS, TRNS,TRNS,TRNS,TRNS,TRNS,TRNS - ), - [3] = KMAP( - GRV, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, TRNS, TRNS, - CAPS,TGL1,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,PSCR,SLCK,PAUS,TRNS,TRNS,TRNS, TRNS, - TRNS,VOLD,VOLU,MUTE,TRNS,TRNS,TRNS,TRNS,HOME,PGUP,TRNS,TRNS, TRNS, - TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,END, PGDN,TRNS, TRNS,PGUP, - TRNS,TRNS,TRNS, TRNS, TRNS,APP, L3, HOME,PGDN,END - ), - [4] = KMAP( - ESC, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, TRNS, TRNS, - CAPS,TGL1,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,PSCR,SLCK,PAUS,TRNS,TRNS,TRNS, TRNS, - TRNS,VOLD,VOLU,MUTE,TRNS,TRNS,TRNS,TRNS,HOME,PGUP,TRNS,TRNS, TRNS, - TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,END, PGDN,TRNS, TRNS,PGUP, - TRNS,TRNS,TRNS, TRNS, TRNS,APP, L4, HOME,PGDN,END + LCTL,LGUI,LALT, SPC, RALT,RCTL,GRV, LEFT,DOWN,RGHT ), }; - - -void hook_layer_change(uint32_t layer_state) -{ - // lights LED on Insert when layer 1 is enabled - if (layer_state & (1L<<1)) { - PORTB &= ~(1<<5); - } else { - PORTB |= (1<<5); - } -} diff --git a/keyboard/fc660c/unimap_emu.c b/keyboard/fc660c/unimap_emu.c new file mode 100644 index 00000000..50e44599 --- /dev/null +++ b/keyboard/fc660c/unimap_emu.c @@ -0,0 +1,65 @@ +#include "action.h" +#include "actionmap.h" +#include "hook.h" +#include "fc660c.h" + + +#define AC_L3 ACTION_LAYER_MOMENTARY(3) +#define AC_L4 ACTION_LAYER_MOMENTARY(4) +#define AC_LS_2 ACTION_LAYER_MODS(2, MOD_LSFT) +#define AC_RS_2 ACTION_LAYER_MODS(2, MOD_RSFT) +#define AC_TGL1 ACTION_LAYER_TOGGLE(1) + +// emulates FC660C default keymap +#ifdef KEYMAP_SECTION_ENABLE +const action_t actionmaps[][UNIMAP_ROWS][UNIMAP_COLS] __attribute__ ((section (".keymap.keymaps"))) = { +#else +const action_t actionmaps[][UNIMAP_ROWS][UNIMAP_COLS] PROGMEM = { +#endif + [0] = KMAP( + ESC, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, MINS,EQL, BSPC, INS, + TAB, Q, W, E, R, T, Y, U, I, O, P, LBRC,RBRC,BSLS, DEL, + LCTL,A, S, D, F, G, H, J, K, L, SCLN,QUOT, ENT, + LS_2,Z, X, C, V, B, N, M, COMM,DOT, SLSH, RS_2,UP, + LCTL,LGUI,LALT, SPC, RALT,RCTL,L3, LEFT,DOWN,RGHT + ), + [1] = KMAP( + GRV, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, MINS,EQL, BSPC, INS, + TAB, Q, W, E, R, T, Y, U, I, O, P, LBRC,RBRC,BSLS, DEL, + LCTL,A, S, D, F, G, H, J, K, L, SCLN,QUOT, ENT, + LSFT,Z, X, C, V, B, N, M, COMM,DOT, SLSH, RSFT,UP, + LCTL,LGUI,LALT, SPC, RALT,RCTL,L4, LEFT,DOWN,RGHT + ), + [2] = KMAP( + GRV, TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, TRNS, + TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, TRNS, + TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, TRNS, + TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS, TRNS,TRNS, + TRNS,TRNS,TRNS, TRNS, TRNS,TRNS,TRNS,TRNS,TRNS,TRNS + ), + [3] = KMAP( + GRV, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, TRNS, TRNS, + CAPS,TGL1,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,PSCR,SLCK,PAUS,TRNS,TRNS,TRNS, TRNS, + TRNS,VOLD,VOLU,MUTE,TRNS,TRNS,TRNS,TRNS,HOME,PGUP,TRNS,TRNS, TRNS, + TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,END, PGDN,TRNS, TRNS,PGUP, + TRNS,TRNS,TRNS, TRNS, TRNS,APP, L3, HOME,PGDN,END + ), + [4] = KMAP( + ESC, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, TRNS, TRNS, + CAPS,TGL1,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,PSCR,SLCK,PAUS,TRNS,TRNS,TRNS, TRNS, + TRNS,VOLD,VOLU,MUTE,TRNS,TRNS,TRNS,TRNS,HOME,PGUP,TRNS,TRNS, TRNS, + TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,END, PGDN,TRNS, TRNS,PGUP, + TRNS,TRNS,TRNS, TRNS, TRNS,APP, L4, HOME,PGDN,END + ), +}; + + +void hook_layer_change(uint32_t layer_state) +{ + // lights LED on Insert when layer 1 is enabled + if (layer_state & (1L<<1)) { + PORTB &= ~(1<<5); + } else { + PORTB |= (1<<5); + } +} diff --git a/keyboard/fc660c/unimap_plain.c b/keyboard/fc660c/unimap_plain.c deleted file mode 100644 index 2f650fdc..00000000 --- a/keyboard/fc660c/unimap_plain.c +++ /dev/null @@ -1,19 +0,0 @@ -#include "action.h" -#include "actionmap.h" -#include "hook.h" -#include "fc660c.h" - - -#ifdef KEYMAP_SECTION_ENABLE -const action_t actionmaps[][UNIMAP_ROWS][UNIMAP_COLS] __attribute__ ((section (".keymap.keymaps"))) = { -#else -const action_t actionmaps[][UNIMAP_ROWS][UNIMAP_COLS] PROGMEM = { -#endif - [0] = KMAP( - ESC, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, MINS,EQL, BSPC, INS, - TAB, Q, W, E, R, T, Y, U, I, O, P, LBRC,RBRC,BSLS, DEL, - CAPS,A, S, D, F, G, H, J, K, L, SCLN,QUOT, ENT, - LSFT,Z, X, C, V, B, N, M, COMM,DOT, SLSH, RSFT,UP, - LCTL,LGUI,LALT, SPC, RALT,RCTL,RGUI,LEFT,DOWN,RGHT - ), -}; diff --git a/keyboard/fc660c/update_bin.sh b/keyboard/fc660c/update_bin.sh new file mode 100644 index 00000000..032ddd7c --- /dev/null +++ b/keyboard/fc660c/update_bin.sh @@ -0,0 +1,8 @@ +#!/bin/sh +make clean +make +cp fc660c.hex binary/fc660c.hex +make clean +make KEYMAP=emu +cp fc660c.hex binary/fc660c_emu.hex +make clean -- 2.46.2