From 4654c283db9667d3800c71c579c512cc40938c44 Mon Sep 17 00:00:00 2001
From: Jun Wako
Date: Tue, 12 Jan 2016 01:16:49 +0900
Subject: [PATCH] Support both USB and BT on editor/hhkb
---
editor/alps64/firmware.js | 2 +-
editor/hhkb/firmware.js | 1700 ++++++++++++++++++++++++++++-
editor/hhkb/index.html | 347 ++----
editor/hhkb/keymap_editor.js | 527 ---------
editor/hhkb_bt/firmware.js | 1773 -------------------------------
editor/hhkb_bt/index.html | 717 -------------
editor/hhkb_bt/keyboard.css | 101 --
editor/hhkb_bt/keymap_editor.js | 527 ---------
editor/index.html | 3 +-
9 files changed, 1779 insertions(+), 3918 deletions(-)
delete mode 100644 editor/hhkb/keymap_editor.js
delete mode 100644 editor/hhkb_bt/firmware.js
delete mode 100644 editor/hhkb_bt/index.html
delete mode 100644 editor/hhkb_bt/keyboard.css
delete mode 100644 editor/hhkb_bt/keymap_editor.js
diff --git a/editor/alps64/firmware.js b/editor/alps64/firmware.js
index ea55649b..13344afa 100644
--- a/editor/alps64/firmware.js
+++ b/editor/alps64/firmware.js
@@ -75,7 +75,6 @@ fn_actions = [
0x2A,0x22,0x00,0x22,0x35,0x32,0x31,0x32,
];
-
/* Fn actions source */
fn_actions_source = "\
[0] = ACTION_LAYER_MOMENTARY(1),\n\
@@ -112,6 +111,7 @@ fn_actions_source = "\
[31] = ACTION_MODS_TAP_KEY(MOD_RSFT, KC_BSLASH),\n\
";
+
/* hex file whthout keymap region and eof */
function firmware_hex()
{
diff --git a/editor/hhkb/firmware.js b/editor/hhkb/firmware.js
index 5944bcb2..3c84a04c 100644
--- a/editor/hhkb/firmware.js
+++ b/editor/hhkb/firmware.js
@@ -2,7 +2,7 @@
* HHKB pro keymap
*/
KEYBOARD_ID = "hhkb";
-KEYBOARD_DESC = "HHKB Alt Controller(USB)"
+KEYBOARD_DESC = "HHKB Alt Controller"
/* for ATMega32U4 with 32KB flash */
KEYMAP_START_ADDRESS = 0x6800;
@@ -95,12 +95,52 @@ keymaps = [
];
fn_actions = [
- 0xF1,0xA1,0xF1,0xA2,0xF1,0xA3,0xF1,0xA4,0xF1,0xA5,0xF1,0xA6,0xF1,0xA7,0x02,0x8A,
- 0x04,0x8A,0x08,0x8A,0xF0,0xA1,0xF0,0xA2,0xF0,0xA3,0x04,0xA1,0x09,0xA2,0x0D,0xA3,
- 0x2C,0xA4,0x33,0xA5,0x34,0xA6,0x38,0xA7,0x2C,0x22,0x2C,0x21,0x34,0x31,0x28,0x31,
- 0x29,0x21,0x2A,0x21,0x00,0x21,0x29,0x22,0x2A,0x22,0x00,0x22,0x35,0x32,0x31,0x32,
+ 0xF1,0xA1,0xF1,0xA2,0xF1,0xA3,0xF1,0xA4,
+ 0xF1,0xA5,0xF1,0xA6,0xF1,0xA7,0x02,0x8A,
+ 0x04,0x8A,0x08,0x8A,0xF0,0xA1,0xF0,0xA2,
+ 0xF0,0xA3,0x31,0xA1,0x2B,0xA2,0x28,0xA3,
+ 0x2C,0xA4,0x33,0xA5,0x34,0xA6,0x38,0xA7,
+ 0x2C,0x22,0x2C,0x21,0x34,0x31,0x28,0x31,
+ 0x29,0x21,0x2A,0x21,0x00,0x21,0x29,0x22,
+ 0x2A,0x22,0x00,0x22,0x35,0x32,0x31,0x32,
];
+/* Fn actions source */
+fn_actions_source = "\
+ [0] = ACTION_LAYER_MOMENTARY(1),\n\
+ [1] = ACTION_LAYER_MOMENTARY(2),\n\
+ [2] = ACTION_LAYER_MOMENTARY(3),\n\
+ [3] = ACTION_LAYER_MOMENTARY(4),\n\
+ [4] = ACTION_LAYER_MOMENTARY(5),\n\
+ [5] = ACTION_LAYER_MOMENTARY(6),\n\
+ [6] = ACTION_LAYER_MOMENTARY(7),\n\
+ [7] = ACTION_LAYER_TOGGLE(1),\n\
+ [8] = ACTION_LAYER_TOGGLE(2),\n\
+ [9] = ACTION_LAYER_TOGGLE(3),\n\
+ [10] = ACTION_LAYER_TAP_TOGGLE(1),\n\
+ [11] = ACTION_LAYER_TAP_TOGGLE(2),\n\
+ [12] = ACTION_LAYER_TAP_TOGGLE(3),\n\
+ [13] = ACTION_LAYER_TAP_KEY(1, KC_BSLASH),\n\
+ [14] = ACTION_LAYER_TAP_KEY(2, KC_TAB),\n\
+ [15] = ACTION_LAYER_TAP_KEY(3, KC_ENTER),\n\
+ [16] = ACTION_LAYER_TAP_KEY(4, KC_SPACE),\n\
+ [17] = ACTION_LAYER_TAP_KEY(5, KC_SCOLON),\n\
+ [18] = ACTION_LAYER_TAP_KEY(6, KC_QUOTE),\n\
+ [19] = ACTION_LAYER_TAP_KEY(7, KC_SLASH),\n\
+ [20] = ACTION_MODS_TAP_KEY(MOD_LSFT, KC_SPACE),\n\
+ [21] = ACTION_MODS_TAP_KEY(MOD_LCTL, KC_SPACE),\n\
+ [22] = ACTION_MODS_TAP_KEY(MOD_RCTL, KC_QUOTE),\n\
+ [23] = ACTION_MODS_TAP_KEY(MOD_RCTL, KC_ENTER),\n\
+ [24] = ACTION_MODS_TAP_KEY(MOD_LCTL, KC_ESC),\n\
+ [25] = ACTION_MODS_TAP_KEY(MOD_LCTL, KC_BSPACE),\n\
+ [26] = ACTION_MODS_ONESHOT(MOD_LCTL),\n\
+ [27] = ACTION_MODS_TAP_KEY(MOD_LSFT, KC_ESC),\n\
+ [28] = ACTION_MODS_TAP_KEY(MOD_LSFT, KC_BSPACE),\n\
+ [29] = ACTION_MODS_ONESHOT(MOD_LSFT),\n\
+ [30] = ACTION_MODS_TAP_KEY(MOD_RSFT, KC_GRAVE),\n\
+ [31] = ACTION_MODS_TAP_KEY(MOD_RSFT, KC_BSLASH),\n\
+";
+
/* hex file whthout keymap region and eof */
function firmware_hex()
@@ -127,7 +167,9 @@ function firmware_hex()
*/
// TODO: read hex file directly from remote URL
// Place HEX format string of firmware(0x0000-0x67ff) excluding keymap region.
- return "\
+ if ($("#variant").val() == "usb") {
+ /* USB */
+ return "\
:100000000C94A8050C94EC050C94EC050C94EC05F0\r\n\
:100010000C94EC050C94EC050C94EC050C94EC059C\r\n\
:100020000C94EC050C94EC050C942B0D0C94EC0545\r\n\
@@ -1447,4 +1489,1650 @@ function firmware_hex()
:1052340002FC016F018801A101BA01DA0101020334\r\n\
:0852440004050607080900003B\r\n\
";
+ } else {
+ /* Bluetooth */
+ return "\
+:100000000C9451070C9495070C9495070C94950744\r\n\
+:100010000C9495070C9495070C9495070C949507F0\r\n\
+:100020000C9495070C9495070C94F1160C94950775\r\n\
+:100030000C94E2260C9495070C9495070C94950764\r\n\
+:100040000C9495070C9495070C9495070C949507C0\r\n\
+:100050000C9495070C9481270C9495070C949507A4\r\n\
+:100060000C9495070C94260A0C9495070C9495070C\r\n\
+:100070000C9495070C9495070C9495070C94950790\r\n\
+:100080000C9495070C9495070C9495070C94950780\r\n\
+:100090000C9495070C9495070C9495070C94950770\r\n\
+:1000A0000C9495070C9495070C9495074B0F500FE3\r\n\
+:1000B000550F5A0F5F0F640F690F6E0F730F780F94\r\n\
+:1000C0007D0F820F870F8C0F910F960F9B0FA00F44\r\n\
+:1000D000A50FAA0FAF0FB40FB90FBE0FC30FC80FF4\r\n\
+:1000E000CD0FD20FD70FDC0FE10FE60FEB0FF00FA4\r\n\
+:1000F000F50FFA0F490F4410FF0F01100310051000\r\n\
+:100100000A100F10141019101E10221027102C1096\r\n\
+:10011000311036103B104210421042104210421073\r\n\
+:10012000421042104210421042104210421042103F\r\n\
+:100130004210421042104210421042104010E71785\r\n\
+:100140000918F4180918F4184B186E18F418C31885\r\n\
+:10015000D618D61BD61B041C041C591C951C861EC5\r\n\
+:10016000861EAD1C861EA41DA41D601E861E861E36\r\n\
+:10017000741E253032583A20253038620A000A723F\r\n\
+:100180002F632030313233343536370A00522C3168\r\n\
+:100190000D0A0053592C464646340D0A0053482C8C\r\n\
+:1001A000303033430D0A00537E2C360D0A0053576E\r\n\
+:1001B0002C383030300D0A00534D2C340D0A0053CA\r\n\
+:1001C000532C4B6579626F6172642F4D6F75736547\r\n\
+:1001D0000D0A00532D2C546D6B42540D0A005346EA\r\n\
+:1001E0002C310D0A002D2D2D0D0A004578697469FA\r\n\
+:1001F0006E6720636F6E666967206D6F6465202E81\r\n\
+:100200002E2E0A002B0D0A00760D0A00242424004D\r\n\
+:10021000456E746572696E6720636F6E66696720EC\r\n\
+:100220006D6F6465202E2E2E0A0025630025730D48\r\n\
+:100230000A00522C310D0A0053522C5A0D0A005557\r\n\
+:100240005342206D6F64650A004175746F206D6FB5\r\n\
+:1002500064650A00253032750A00253032753A008F\r\n\
+:10026000253032753A004241543A2025756D5609C1\r\n\
+:1002700000757074696D653A20253032752025301F\r\n\
+:1002800032753A253032753A253032750A005642B9\r\n\
+:1002900055533A2025580A0052656D6F74655761B1\r\n\
+:1002A0006B657570456E61626C65643A2025580A0D\r\n\
+:1002B000000A003F004C4F57004449534348470051\r\n\
+:1002C00043484152470046554C4C00626174746586\r\n\
+:1002D00072793A20005553422053746174653A2074\r\n\
+:1002E00025730A00636F6E6669675F6D6F64653AB8\r\n\
+:1002F0002025580A00726E34325F6175746F636F27\r\n\
+:100300006E6E656374696E6728293A2025580A0065\r\n\
+:10031000726E34323A2025730A00666F7263655F2D\r\n\
+:100320007573623A2025580A0070726F746F636F9C\r\n\
+:100330006C3A2025730A000A2D2D2D2D2D20524EAA\r\n\
+:100340002D343220696E666F202D2D2D2D2D0A0043\r\n\
+:10035000753A20202020202020746F67676C65206C\r\n\
+:10036000466F72636520555342206D6F64650A00C5\r\n\
+:10037000703A2020202020202070616972696E6709\r\n\
+:100380000A00536C636B3A20202020524E2D3432E9\r\n\
+:1003900020696E697469616C697A650A0044656CEC\r\n\
+:1003A0003A2020202020656E7465722F657869746C\r\n\
+:1003B00020524E2D343220636F6E666967206D6F58\r\n\
+:1003C00064650A00623A20202020202020626174A7\r\n\
+:1003D0007465727920766F6C746167650A00693A9A\r\n\
+:1003E00020202020202020524E2D343220696E669D\r\n\
+:1003F0006F0A000A0A2D2D2D2D2D20426C75657473\r\n\
+:100400006F6F746820524E2D34322048656C702016\r\n\
+:100410002D2D2D2D2D0A00253032753A25303275BF\r\n\
+:100420003A253032750925756D560A004C45442031\r\n\
+:100430007374617475733A20253032580A00202590\r\n\
+:10044000303258002563005B735D004B6579626F45\r\n\
+:100450006172642073746172740A00524E2D3432DA\r\n\
+:1004600020696E69740A000A55534220696E6974E6\r\n\
+:100470000A005B575D005B535D005B525D005B44AF\r\n\
+:100480005D005B435D001203480048004B004200E2\r\n\
+:1004900020006D006F00640000000E0374002E0049\r\n\
+:1004A0006D002E006B002E000000040309040902F9\r\n\
+:1004B0008D00050100A032090400000103010100C4\r\n\
+:1004C000092111010001223F000705810308000AEC\r\n\
+:1004D00009040100010301020009211101000122A8\r\n\
+:1004E0004D000705820308000A0904020001030009\r\n\
+:1004F00000000921110100012236000705830308CD\r\n\
+:10050000000A090403000203000000092111010090\r\n\
+:1005100001222000070584032000010705040320B1\r\n\
+:100520000001090404000103000000092111010079\r\n\
+:100530000122390007058503100001120110010096\r\n\
+:10054000000008EDFE42420401010200010501091C\r\n\
+:1005500006A101050719E029E71500250195087591\r\n\
+:10056000018102050819012905950575019102957A\r\n\
+:1005700001750391010507190029771500250195DB\r\n\
+:100580007875018102C00631FF0974A10109751552\r\n\
+:100590000025FF9520750881020976150025FF9535\r\n\
+:1005A0002075089102C005010980A101850216018C\r\n\
+:1005B0000026B7001A01002AB700751095018100C6\r\n\
+:1005C000C0050C0901A1018503160100269C021A31\r\n\
+:1005D00001002A9C02751095018100C005010902E5\r\n\
+:1005E000A1010901A100050919012905150025012D\r\n\
+:1005F0009505750181029501750381010501093099\r\n\
+:1006000009311581257F9502750881060938158104\r\n\
+:10061000257F950175088106050C0A38021581258C\r\n\
+:100620007F950175088106C0C005010906A1010575\r\n\
+:100630000719E029E7150025019508750181029544\r\n\
+:1006400001750881010508190129059505750191B4\r\n\
+:10065000029501750391010507190029FF15002571\r\n\
+:10066000FF950675088100C00A0025303258200029\r\n\
+:100670006B6579626F6172645F7265706F72743AF4\r\n\
+:1006800020000A0025303258006B6579626F617274\r\n\
+:10069000645F7365745F6C65643A200064656C5FC9\r\n\
+:1006A0006B65795F6269743A2063616E27742064B8\r\n\
+:1006B000656C3A20253032580A006164645F6B65CE\r\n\
+:1006C000795F6269743A2063616E277420616464A3\r\n\
+:1006D0003A20253032580A004F6E6573686F743ABD\r\n\
+:1006E0002074696D656F75740A00646F6E652E0AFB\r\n\
+:1006F00000626F6F676D61676963207363616E3A53\r\n\
+:10070000202E2E2E2000290A002575002F00257589\r\n\
+:10071000005D280025640020002564002000256479\r\n\
+:100720000020002564007C0025303258006D6F7574\r\n\
+:1007300073656B6579205B62746E7C7820792076B6\r\n\
+:1007400020685D287265702F61636C293A205B0018\r\n\
+:100750006D6B5F776865656C5F74696D655F746FFD\r\n\
+:100760005F6D6178203D2025640A006D6B5F7768BE\r\n\
+:1007700065656C5F6D61785F7370656564203D20B1\r\n\
+:1007800025640A006D6B5F74696D655F746F5F6DE2\r\n\
+:100790006178203D2025640A006D6B5F6D61785F94\r\n\
+:1007A0007370656564203D2025640A006D6B5F6988\r\n\
+:1007B0006E74657276616C203D2025640A006D6B55\r\n\
+:1007C0005F64656C6179203D2025640A006D6B5F74\r\n\
+:1007D000776865656C5F74696D655F746F5F6D6187\r\n\
+:1007E00078203D2025640A006D6B5F776865656C35\r\n\
+:1007F0005F6D61785F7370656564203D2025640AD4\r\n\
+:10080000006D6B5F74696D655F746F5F6D617820FB\r\n\
+:100810003D2025640A006D6B5F6D61785F737065C4\r\n\
+:100820006564203D2025640A006D6B5F696E746508\r\n\
+:100830007276616C203D2025640A006D6B5F6465F3\r\n\
+:100840006C6179203D2025640A000A002575003678\r\n\
+:100850003A20776865656C5F74696D655F746F5F7A\r\n\
+:100860006D61783A20000A00257500353A207768D6\r\n\
+:1008700065656C5F6D61785F73706565643A2000D3\r\n\
+:100880000A00257500343A2074696D655F746F5FE6\r\n\
+:100890006D61783A20000A00257500333A206D61B9\r\n\
+:1008A000785F73706565643A20000A002575003230\r\n\
+:1008B0003A20696E74657276616C286D73293A20EE\r\n\
+:1008C000000A00257500313A2064656C6179282A98\r\n\
+:1008D00031306D73293A20000A092D2056616C755C\r\n\
+:1008E0006573202D0A004D3E004D25643E20003FDB\r\n\
+:1008F000007365742064656661756C740A00433E1C\r\n\
+:10090000200077686572652064656C74613A2063C5\r\n\
+:100910007572736F723D25642C20776865656C3D38\r\n\
+:1009200025640A53656520687474703A2F2F656ECC\r\n\
+:100930002E77696B6970656469612E6F72672F77B6\r\n\
+:10094000696B692F4D6F7573655F6B6579730A000D\r\n\
+:100950000A092D204D6F7573656B6579202D0A4549\r\n\
+:1009600053432F713A09717569740A313A09646504\r\n\
+:100970006C6179282A31306D73290A323A09696E1F\r\n\
+:1009800074657276616C286D73290A333A096D615A\r\n\
+:10099000785F73706565640A343A0974696D655FE0\r\n\
+:1009A000746F5F6D61780A353A09776865656C5FC9\r\n\
+:1009B0006D61785F73706565640A363A09776865BA\r\n\
+:1009C000656C5F74696D655F746F5F6D61780A0A4D\r\n\
+:1009D000703A097072696E742076616C7565730A7D\r\n\
+:1009E000643A097365742064656661756C74730A92\r\n\
+:1009F00075703A092B310A646F776E3A092D310A06\r\n\
+:100A0000706775703A092B31300A7067646F776EC2\r\n\
+:100A10003A092D31300A0A7370656564203D2064FF\r\n\
+:100A2000656C7461202A206D61785F737065656400\r\n\
+:100A3000202A2028726570656174202F2074696DEA\r\n\
+:100A4000655F746F5F6D6178290A003F004D3E203D\r\n\
+:100A500000433E20004C25640A000A092D20436F04\r\n\
+:100A60006E736F6C65202D0A4553432F713A0971DF\r\n\
+:100A70007569740A6D3A096D6F7573656B65790AEE\r\n\
+:100A8000000A092D204D61676963202D0A643A0927\r\n\
+:100A900064656275670A783A096465627567206DF6\r\n\
+:100AA00061747269780A6B3A096465627567206BD4\r\n\
+:100AB0006579626F6172640A6D3A0964656275678F\r\n\
+:100AC000206D6F7573650A763A0976657273696F82\r\n\
+:100AD0006E0A733A097374617475730A633A096331\r\n\
+:100AE0006F6E736F6C65206D6F64650A302D343ADC\r\n\
+:100AF000096C61796572302D34284631302D4634C9\r\n\
+:100B0000290A506175733A09626F6F746C6F616482\r\n\
+:100B100065720A653A09656570726F6D0A6E3A0909\r\n\
+:100B20004E4B524F0A000A002575002E6E6B726FF5\r\n\
+:100B30003A20000A002575002E737761705F6261AC\r\n\
+:100B4000636B736C6173685F6261636B7370616325\r\n\
+:100B5000653A20000A002575002E737761705F6783\r\n\
+:100B6000726176655F6573633A20000A002575003F\r\n\
+:100B70002E6E6F5F6775693A20000A002575002E9A\r\n\
+:100B8000737761705F72616C745F726775693A2028\r\n\
+:100B9000000A002575002E737761705F6C616C74BC\r\n\
+:100BA0005F6C6775693A20000A002575002E636145\r\n\
+:100BB00070736C6F636B5F746F5F636F6E74726F73\r\n\
+:100BC0006C3A20000A002575002E737761705F6310\r\n\
+:100BD0006F6E74726F6C5F636170736C6F636B3A8E\r\n\
+:100BE00020000A0025303258006B65796D61705F16\r\n\
+:100BF000636F6E6669672E7261773A20000A00257E\r\n\
+:100C000075002E6D6F7573653A20000A002575001A\r\n\
+:100C10002E6B6579626F6172643A20000A00257557\r\n\
+:100C2000002E6D61747269783A20000A0025750003\r\n\
+:100C30002E656E61626C653A20000A0025303258DC\r\n\
+:100C40000064656275675F636F6E6669672E7261C7\r\n\
+:100C5000773A20000A0025750064656661756C743A\r\n\
+:100C60005F6C617965723A20003F004E4B524F3AFB\r\n\
+:100C7000206F66660A004E4B524F3A206F6E0A0094\r\n\
+:100C800074696D65725F636F756E743A20253034D8\r\n\
+:100C90006C580A006B6579626F6172645F6E6B728B\r\n\
+:100CA0006F3A2025580A006B6579626F6172645F44\r\n\
+:100CB00069646C653A2025580A006B6579626F613A\r\n\
+:100CC00072645F70726F746F636F6C3A2025580A9C\r\n\
+:100CD00000686F73745F6B6579626F6172645F6CDB\r\n\
+:100CE00065647328293A2025580A000A092D2053E3\r\n\
+:100CF0007461747573202D0A004743433A20342EE3\r\n\
+:100D0000382E31204156522D4C4942433A20312E43\r\n\
+:100D1000382E3073766E204156525F415243483A26\r\n\
+:100D200020617672350A004F5054494F4E533A2095\r\n\
+:100D30004C55464120424F4F544D41474943204D69\r\n\
+:100D40004F5553454B45592045585452414B4559F1\r\n\
+:100D500020434F4E534F4C4520434F4D4D414E4441\r\n\
+:100D6000204E4B524F204B45594D41505F53454308\r\n\
+:100D700054494F4E20343039360A004255494C44CC\r\n\
+:100D80003A2064623230313561202831313A3431D1\r\n\
+:100D90003A3139204E6F76202039203230313529D2\r\n\
+:100DA0000A005649443A2030784645454428742E76\r\n\
+:100DB0006D2E6B2E29205049443A2030783432343D\r\n\
+:100DC000322848484B42206D6F6429205645523ADC\r\n\
+:100DD000203078303130340A00444553433A20748F\r\n\
+:100DE0002E6D2E6B2E206B6579626F6172642066AA\r\n\
+:100DF00069726D7761726520666F722048484B4258\r\n\
+:100E0000206D6F640A000A092D2056657273696FA0\r\n\
+:100E10006E202D0A000A6D6F7573653A206F666645\r\n\
+:100E20000A000A6D6F7573653A206F6E0A000A6BCF\r\n\
+:100E30006579626F6172643A206F66660A000A6BB8\r\n\
+:100E40006579626F6172643A206F6E0A000A6D61A3\r\n\
+:100E5000747269783A206F66660A000A6D6174726E\r\n\
+:100E600069783A206F6E0A000A64656275673A20F5\r\n\
+:100E70006F6E0A000A64656275673A206F66660ADB\r\n\
+:100E8000000A0A626F6F746C6F616465722E2E2E99\r\n\
+:100E90002000433E20006565636F6E6669673A0A0D\r\n\
+:100EA000000011241FBECFEFDAE0DEBFCDBF04B6D5\r\n\
+:100EB00003FE24C08091750390917603A09177037F\r\n\
+:100EC000B09178038730904BA740B04BB9F41092A3\r\n\
+:100ED000750310927603109277031092780314BE74\r\n\
+:100EE00084B7877F84BF88E10FB6F8948093600051\r\n\
+:100EF000109260000FBEE0E0F8E3099511E0A0E079\r\n\
+:100F0000B1E0E6EEF5E602C005900D92A03AB10719\r\n\
+:100F1000D9F723E0A0EAB1E001C01D92A537B207DE\r\n\
+:100F2000E1F70E947C110C94F1320C9400000FB692\r\n\
+:100F300080959AE0F8947BE27A95F1F708F0589A58\r\n\
+:100F400008F4589886959A95B1F70FBE08950FB694\r\n\
+:100F500080E8F894499BFECF4999FECF96E19A9597\r\n\
+:100F6000F1F79CE29A95F1F7869549998068C8F760\r\n\
+:100F70000FBE08950FB680E8F89496E19A95F1F7C0\r\n\
+:100F80009CE29A95F1F7869549998068C8F796E1B1\r\n\
+:100F90009A95F1F7499BFECF0FBE0895FF93EF930B\r\n\
+:100FA000E091A001F091A101309709F00995EF912E\r\n\
+:100FB000FF910895FC018591803011F0EFDFFBCFA8\r\n\
+:100FC0000895FF27E0E230E247FF0CC0419597FF0C\r\n\
+:100FD00009C0EDE26095709580959095611D711D39\r\n\
+:100FE000811D911D27FF02C0219530E350E2AA2701\r\n\
+:100FF000660F771F881F991FAA1FA41710F0A41B44\r\n\
+:1010000063955A95A9F7AA3008F0A95FA05DAF9340\r\n\
+:10101000F395611571058105910541F7ED3211F4E4\r\n\
+:10102000EF93F395F21718F43F93F395FBCF8F915D\r\n\
+:10103000B5DFFA95E1F70895E991F991859180304E\r\n\
+:1010400021F0853219F0AADFF9CF089520E0E89465\r\n\
+:1010500055915532C1F3503311F4689455915A3378\r\n\
+:1010600048F4505390F3220F022E220F220F200D2E\r\n\
+:10107000250FF4CF0EF4219589919991533619F3E8\r\n\
+:10108000533729F1533559F1BC0188279927E89442\r\n\
+:101090005C3621F48991999168945591543639F4CC\r\n\
+:1010A00046EF7EF077FF0DC08FEF9FEF0AC05537F8\r\n\
+:1010B0004AE039F0583540E121F0523642E009F07B\r\n\
+:1010C0000895FF93EF937DDFEF91FF91B7CFFF93EB\r\n\
+:1010D000EF93FC0181918030B9F360DFFBCFFF9388\r\n\
+:1010E000EF9368DFF1CFDF93CF93CDB7DEB72596CF\r\n\
+:1010F000A3DFCF91DF910895E72FF0E098E0899F7B\r\n\
+:10110000E00DF11D112483E0EE0FFF1F8A95E1F73A\r\n\
+:10111000E60FF11DE05CF74984910895E82FF0E0B7\r\n\
+:10112000EE0FFF1FE058F94985919491089514B886\r\n\
+:101130008FEF85B9549A5C9808958FEF84B980E455\r\n\
+:1011400085B9549A5C9A8FE19EE40197F1F700C04B\r\n\
+:10115000000008958FEF84B980E485B957985F9AAD\r\n\
+:101160002E9A2F980E949708EAEAF1E0119281E006\r\n\
+:10117000E23BF807D9F7E2EAF1E0119281E0EA3ABE\r\n\
+:10118000F807D9F78AEA91E09093B5018093B4010A\r\n\
+:1011900082EA91E09093B3018093B20108950F9396\r\n\
+:1011A0001F93CF93DF938091B2019091B30120916F\r\n\
+:1011B000B4013091B5013093B3012093B201909303\r\n\
+:1011C000B5018093B4015C9B0E949D08C0E0D0E013\r\n\
+:1011D00001E010E080E090E045B1407C4C2B9C01A8\r\n\
+:1011E00053E0220F331F5A95E1F7422B45B9EAE14C\r\n\
+:1011F000EA95F1F700C0E091B201F091B301EC0F74\r\n\
+:10120000FD1F208130E0082E02C0359527950A94F5\r\n\
+:10121000E2F720FD2F9AF5E3FA95F1F70000A6B565\r\n\
+:101220002E982AE12A95F1F700C02091B40130915F\r\n\
+:10123000B5014F9B0EC0A801082E01C0440F0A94AF\r\n\
+:10124000EAF74095F901EC0FFD1F508154235083BC\r\n\
+:101250000CC0F901EC0FFD1F6081A801082E01C030\r\n\
+:10126000440F0A94EAF7642B608346B56A2F70E056\r\n\
+:101270004A1718F046B550E004C046B550E041505A\r\n\
+:101280005F4F461B570B4630510558F0E091B201B5\r\n\
+:10129000F091B301EC0FFD1F4081F901EC0FFD1F30\r\n\
+:1012A0004083EAE1EA95F1F700C02F982E9AEBE22D\r\n\
+:1012B000F1E03197F1F700C0000001968830910508\r\n\
+:1012C00009F08ACFA091B401B091B501AC0FBD1F58\r\n\
+:1012D000E091B201F091B301EC0FFD1F9C91808170\r\n\
+:1012E000981751F00E9420276093B6017093B701C0\r\n\
+:1012F0008093B8019093B9012196C830D10509F0C7\r\n\
+:1013000069CF5C9B1BC080916C03853021F080917C\r\n\
+:101310006C03811113C06091B6017091B701809187\r\n\
+:10132000B8019091B9010E9455276131774281053A\r\n\
+:10133000910520F00E9497080E94A52681E0DF9188\r\n\
+:10134000CF911F910F910895E091B401F091B501F3\r\n\
+:10135000E80FF11D808108950F931F93CF93DF93C2\r\n\
+:101360008EE791E00E94DA07C0E0D0E002E711E0EA\r\n\
+:10137000E091B401F091B501EC0FFD1F80810E9456\r\n\
+:1013800093261F928F93DF93CF931F930F930E9407\r\n\
+:10139000730821960F900F900F900F900F900F9061\r\n\
+:1013A000C830D10529F7DF91CF911F910F91089592\r\n\
+:1013B0000C949D080C949708569A81FF02C05E9A7F\r\n\
+:1013C00008955E98089588E08093CC001092CD0037\r\n\
+:1013D000E9ECF0E08081806980838081886080838F\r\n\
+:1013E000EAECF0E080818083EBECF0E080818083A8\r\n\
+:1013F000559A5D98789408959091BB012091BA0117\r\n\
+:101400009217D1F030E0F901E454FE4F80812F5F54\r\n\
+:101410003F4F33272093BA01492F50E0921718F419\r\n\
+:10142000241B350B03C0241B350B339523303105AA\r\n\
+:101430000CF05D9890E008958FEF9FEF08959091E4\r\n\
+:10144000C80095FFFCCF8093CE0008951F920F92A5\r\n\
+:101450000FB60F9211242F933F934F935F938F9367\r\n\
+:101460009F93EF93FF932091BB0130E0C901019658\r\n\
+:1014700099274091BA01481741F09091CE00F901A7\r\n\
+:10148000E454FE4F90838093BB015091BB01842FA5\r\n\
+:1014900090E0252F30E0821B930B541708F09395B2\r\n\
+:1014A00003970CF45D9AFF91EF919F918F915F915B\r\n\
+:1014B0004F913F912F910F900FBE0F901F90189555\r\n\
+:1014C0008091D402089508958091D40208950895DA\r\n\
+:1014D000089508950895CF93DF93823E910581F199\r\n\
+:1014E000A8F4873B910589F148F4853B910551F1BA\r\n\
+:1014F000863B910581F5D0E0C2E031C08C3C91057E\r\n\
+:1015000039F18D3C910539F5D0E828C08A3821E0C1\r\n\
+:10151000920719F140F4893E910581F08A3E9105C8\r\n\
+:10152000D1F4D0E21BC0813222E0920729F083324D\r\n\
+:10153000924089F4D1E012C0D4E010C0D0E10EC0D6\r\n\
+:10154000D0E40CC0D0E0C1E00AC0D0E0C4E007C0E5\r\n\
+:10155000D0E0C8E004C0D0E001C0D2E0C0E08DEF30\r\n\
+:101560000E941F0A83E00E941F0A83E00E941F0A54\r\n\
+:101570008D2F0E941F0A8C2FDF91CF910C941F0A90\r\n\
+:10158000CF93DF93EC018DEF0E941F0A85E00E944C\r\n\
+:101590001F0A82E00E941F0A88810E941F0A898117\r\n\
+:1015A0000E941F0A8A810E941F0A8B81DF91CF91BE\r\n\
+:1015B0000C941F0ACF93DF93EC018DEF0E941F0A5A\r\n\
+:1015C00089E00E941F0A81E00E941F0A88810E9410\r\n\
+:1015D0001F0A80E00E941F0A8A810E941F0A8B81D5\r\n\
+:1015E0000E941F0A8C810E941F0A8D810E941F0A7F\r\n\
+:1015F0008E810E941F0A8F81DF91CF910C941F0A68\r\n\
+:101600000C94FC09FF920F931F93CF93DF93EC018F\r\n\
+:101610000E9414278C01F12CC8010E942C278C17E2\r\n\
+:101620009D07A0F40E94FC099C012F3F8FEF380713\r\n\
+:1016300051F02D3041F02A3049F0AF2DB0E0A454E4\r\n\
+:10164000BD4F2C93F39486E18F1530F7EF2DF0E02A\r\n\
+:10165000E454FD4F10828CEB92E0DF91CF911F910B\r\n\
+:101660000F91FF9008950C941F0A81B3881F88275B\r\n\
+:10167000881F0895879A8F9A089585B7806885BFD7\r\n\
+:1016800085B7806885BF0E943A0B86988E9A8198AC\r\n\
+:101690008998559A5D980C94E309879A8F980895D4\r\n\
+:1016A0008FB18695817008958FB186FB882780F968\r\n\
+:1016B00008958093D4020895CF93DF93CAE2D2E0D5\r\n\
+:1016C0000E94000B8F3F2FEF920759F09F938F934B\r\n\
+:1016D000DF93CF930E9473080F900F900F900F909D\r\n\
+:1016E000EFCFDF91CF910895CF93DF93FC018491E9\r\n\
+:1016F000EF012196882321F00E94330BFE01F7CFE2\r\n\
+:101700002FEF89E698E1215080409040E1F700C03A\r\n\
+:10171000000084E690E00E94020B8093D502909333\r\n\
+:10172000D6029F938F938DE292E09F938F930E94B6\r\n\
+:1017300073080E945C0B0F900F900F900F90809198\r\n\
+:10174000D5029091D602DF91CF9108950E942E1973\r\n\
+:1017500090931501809314010E94A71E80E091E0F0\r\n\
+:101760000E9429190E944D0B0E94540B8111FCCF3D\r\n\
+:1017700080E192E00E94DA072FEF85EB95E321509C\r\n\
+:1017800080409040E1F700C000008CE092E00E94B1\r\n\
+:10179000740BEFEFFBE42DE1E150F0402040E1F766\r\n\
+:1017A00000C000000E945C0B88E092E00E94740B75\r\n\
+:1017B000FC018081863721F084E092E00C94740B68\r\n\
+:1017C00008958BEE91E00E94DA0785EE91E00E9489\r\n\
+:1017D000740B0E943A0B0E94A71E809114019091F5\r\n\
+:1017E00015010C9429190C94B9108F929F92AF9205\r\n\
+:1017F000BF92CF92DF92EF92FF920F931F93CF93FE\r\n\
+:10180000DF9392E0B92ECEE3D4E004E414E0AA24FE\r\n\
+:10181000A39423E0922E3CE2C32E34E0D32E0E9408\r\n\
+:10182000000B7C018F3F2FEF920709F446C0809197\r\n\
+:10183000D902813009F128F0823029F1833049F151\r\n\
+:1018400039C08EEFE816F10419F4A092D902E7CF5F\r\n\
+:1018500090E8E916F10428F4FF92EF921F930F939A\r\n\
+:1018600004C0FF92EF92DF93CF930E9473080F9012\r\n\
+:101870000F900F900F90D3CF92E0E916F104D1F4BE\r\n\
+:10188000B092D902CCCFEA94EF28A1F49092D90279\r\n\
+:10189000C6CF8091560380FF0AC0FF92EF92DF927D\r\n\
+:1018A000CF920E9473080F900F900F900F908E2D83\r\n\
+:1018B0000E94590B1092D902B2CF8091DB028111A4\r\n\
+:1018C00021C08091DA0281111DC00E94500B81114C\r\n\
+:1018D0000AC00E942E198A50914029F00E94A71E2A\r\n\
+:1018E0008AE091E00DC00E94500B882359F00E94BD\r\n\
+:1018F0002E198651914031F00E94A71E86E191E099\r\n\
+:101900000E9429198091D7029091D8020E942C2719\r\n\
+:10191000893E23E0920708F461C028EE33E0B90164\r\n\
+:101920000E947032629FA001639F500D729F500D04\r\n\
+:1019300011248091D7029091D802840F951F909323\r\n\
+:10194000D8028093D7020E945611833011F481E0AF\r\n\
+:1019500001C080E00E94A8100E94202728EE33E0FA\r\n\
+:1019600040E050E00E94983249015A018CE3C82EB1\r\n\
+:10197000D12CE12CF12CCA01B901A70196010E94DA\r\n\
+:101980009832672B682B692B49F50E941F11209113\r\n\
+:10199000560320FF23C09F938F931F921F92C50170\r\n\
+:1019A000B40120E13EE040E050E00E949832C22FB6\r\n\
+:1019B000A70196010E9498323F932F931F92CF93D5\r\n\
+:1019C00087E194E09F938F930E9473088DB79EB731\r\n\
+:1019D0000A960FB6F8949EBF0FBE8DBF0E94500BA3\r\n\
+:1019E000811107C00E94540B882319F06E9A7698D3\r\n\
+:1019F00002C06E9A769ADF91CF911F910F91FF905E\r\n\
+:101A0000EF90DF90CF90BF90AF909F908F90089510\r\n\
+:101A10008F929F92AF92BF92CF92DF92EF92FF92FE\r\n\
+:101A20001F93CF93DF9300D000D0CDB7DEB78331C3\r\n\
+:101A300009F48CC008F05BC08B3009F466C08C30B0\r\n\
+:101A400009F48FC0853009F0FCC10E94202728EEE0\r\n\
+:101A500033E040E050E00E94983249015A010E9470\r\n\
+:101A60001F119F938F9386E692E09F938F930E941E\r\n\
+:101A70007308C501B40120E13EE040E050E00E945F\r\n\
+:101A800098325F934F933F932F9320E632E03F933A\r\n\
+:101A90002F9369837A838C839B830E9473084CE322\r\n\
+:101AA000C42ED12CE12CF12C69817A818C819B810F\r\n\
+:101AB000A70196010E9498325F934F933F932F9313\r\n\
+:101AC0008AE592E09F938F930E947308C501B40149\r\n\
+:101AD000A70196010E9498329F938F937F936F93F3\r\n\
+:101AE00084E592E09F938F930E94730840C18833EE\r\n\
+:101AF00061F020F4883109F440C1A3C1873409F4AE\r\n\
+:101B00006EC18C3409F456C19CC183EF93E00E94EE\r\n\
+:101B1000DA078EED93E00E94DA0784EC93E00E94EE\r\n\
+:101B2000DA078DE993E00E94DA0782E893E00E94E9\r\n\
+:101B3000DA0780E793E00E94DA078091DB028111E7\r\n\
+:101B40007EC180E593E00E94DA077EC10E94A60B69\r\n\
+:101B500088E392E00E94740B82E392E00E94740B8F\r\n\
+:101B60006CC187E393E00E94DA070E942E198A5025\r\n\
+:101B7000914019F48AE291E002C080E391E09F93E2\r\n\
+:101B80008F9389E293E09F938F930E9473088091D3\r\n\
+:101B9000DA021F928F938AE193E09F938F930E94C2\r\n\
+:101BA00073080E94500B0FB6F894DEBF0FBECDBF76\r\n\
+:101BB000811107C00E94540B882331F08CE391E01F\r\n\
+:101BC00005C085E391E002C089E391E09F938F9384\r\n\
+:101BD00080E193E09F938F930E9473080E94350BDE\r\n\
+:101BE0001F928F9385EF92E09F938F930E947308CB\r\n\
+:101BF0008091DB021F928F9384EE92E09F938F93EC\r\n\
+:101C00000E94730880916C030FB6F894DEBF0FBE7C\r\n\
+:101C1000CDBF8823B9F080916C038130B1F0809101\r\n\
+:101C20006C038230A9F080916C038330A1F0809125\r\n\
+:101C30006C03843099F080916C03853091F483E7D4\r\n\
+:101C400091E011C089E491E00EC081E491E00BC005\r\n\
+:101C500084E591E008C08CE591E005C086E691E05E\r\n\
+:101C600002C081E791E09F938F9385ED92E09F936F\r\n\
+:101C70008F930E9473088BEC92E09F938F930E9446\r\n\
+:101C800073080E9456110F900F900F900F900F90B5\r\n\
+:101C90000F90813059F038F0823059F0833061F480\r\n\
+:101CA00085EB92E00BC086EC92E008C080EC92E0FD\r\n\
+:101CB00005C089EB92E002C083EB92E09F938F9383\r\n\
+:101CC0000E9473080F900F9081EB92E09F938F9387\r\n\
+:101CD0000E94730880916A031F928F9388E992E0B3\r\n\
+:101CE0009F938F930E9473088091D90081701F92F7\r\n\
+:101CF0008F938EE892E09F938F930E9473080E94C7\r\n\
+:101D0000202728EE33E040E050E00E94983269013D\r\n\
+:101D10007A015CE3852E912CA12CB12CC701B60170\r\n\
+:101D2000A50194010E9498327F936F93C701B60179\r\n\
+:101D300020E13EE040E050E00E949832122FA501E1\r\n\
+:101D400094010E9498323F932F931F921F93C701D3\r\n\
+:101D5000B60120E831E541E050E00E9498323F931F\r\n\
+:101D60002F9381E792E09F938F930E9473080FB6A1\r\n\
+:101D7000F894DEBF0FBECDBF62C08091DB0281113F\r\n\
+:101D800063C08091DA02882339F089E492E00E94EE\r\n\
+:101D9000DA071092DA0253C08FE392E00E94DA076A\r\n\
+:101DA00081E08093DA020E94A71E86E191E00E9402\r\n\
+:101DB000291945C00E94350B882351F08C830E945D\r\n\
+:101DC000A60B91E0909366039093DB028C813DC05B\r\n\
+:101DD0000E94E10B109266031092DB0230C08091EA\r\n\
+:101DE000DB02811102C00E94A60B8EED91E00E94E1\r\n\
+:101DF000740B83ED91E00E94740B8FEB91E00E94D5\r\n\
+:101E0000740B88EB91E00E94740B8EEA91E00E94C3\r\n\
+:101E1000740B87EA91E00E94740B8DE991E00E94B7\r\n\
+:101E2000740B83E991E00E94740B8DE891E00E94AD\r\n\
+:101E3000740B8091DB02811102C00E94E10B81E0F2\r\n\
+:101E400004C08091DB0201C080E00F900F900F90E2\r\n\
+:101E50000F90DF91CF911F91FF90EF90DF90CF9087\r\n\
+:101E6000BF90AF909F908F900895CF93C82F0E94FE\r\n\
+:101E7000B324827221E009F420E08C2F90E0FC0171\r\n\
+:101E80003497E934F10508F0FDC0EA5AFF4F0C948D\r\n\
+:101E9000BA328AE058C1222309F4F8C081E453C160\r\n\
+:101EA000222309F4F5C082E44EC1222309F4F2C0D2\r\n\
+:101EB00083E449C1222309F4EFC084E444C122230E\r\n\
+:101EC00009F4ECC085E43FC1222309F4E9C086E4AB\r\n\
+:101ED0003AC1222309F4E6C087E435C1222309F47C\r\n\
+:101EE000E3C088E430C1222309F4E0C089E42BC1B7\r\n\
+:101EF000222309F4DDC08AE426C1222309F4DAC0D2\r\n\
+:101F00008BE421C1222309F4D7C08CE41CC1222315\r\n\
+:101F100009F4D4C08DE417C1222309F4D1C08EE4A2\r\n\
+:101F200012C1222309F4CEC08FE40DC1222309F48B\r\n\
+:101F3000CBC080E508C1222309F4C8C081E503C1F4\r\n\
+:101F4000222309F4C5C082E5FEC0222309F4C2C0E1\r\n\
+:101F500083E5F9C0222309F4BFC084E5F4C022233D\r\n\
+:101F600009F4BCC085E5EFC0222309F4B9C086E5B9\r\n\
+:101F7000EAC0222309F4B6C087E5E5C0222309F4AC\r\n\
+:101F8000B3C088E5E0C0222309F4B0C089E5DBC016\r\n\
+:101F9000222309F4ADC08AE5D6C0222309F4AAC0E1\r\n\
+:101FA00081E2D1C0222309F4A7C080E4CCC022235F\r\n\
+:101FB00009F4A4C083E2C7C0222309F4A1C084E2CB\r\n\
+:101FC000C2C0222309F49EC085E2BDC0222309F4C9\r\n\
+:101FD0009BC08EE5B8C0222309F498C086E2B3C046\r\n\
+:101FE000222309F495C08AE2AEC0222309F492C0EC\r\n\
+:101FF00088E2A9C0222309F48FC089E2A4C088E046\r\n\
+:10200000A2C089E0A0C080E29EC0222309F486C05D\r\n\
+:102010008FE599C0222309F483C08BE294C0222368\r\n\
+:1020200009F480C08BE78FC0222309F47DC08DE7BF\r\n\
+:102030008AC0222309F47AC08CE785C02111FCCF25\r\n\
+:102040008CE581C0222309F473C08AE37CC022237B\r\n\
+:1020500009F470C082E277C0222309F46DC08EE7D4\r\n\
+:1020600072C0222309F46AC08CE36DC0222309F4F4\r\n\
+:1020700067C08EE368C0222309F464C08FE363C0A5\r\n\
+:1020800080E061C080E25FC08BE15DC081E65BC043\r\n\
+:1020900082E659C083E657C084E655C085E653C042\r\n\
+:1020A00086E651C087E64FC088E64DC089E64BC042\r\n\
+:1020B0008AE649C08BE647C08CE645C08DE643C042\r\n\
+:1020C0008EE641C08FE63FC080E73DC081E73BC060\r\n\
+:1020D00082E739C083E737C084E735C085E733C07E\r\n\
+:1020E00086E731C087E72FC088E72DC089E72BC07E\r\n\
+:1020F0008AE729C081E327C082E325C083E323C0A8\r\n\
+:1021000084E321C085E31FC086E31DC087E31BC0B5\r\n\
+:1021100088E319C089E317C080E315C08DE213C0BE\r\n\
+:102120008DE311C08BE50FC08DE50DC08CE50BC0B4\r\n\
+:102130008BE309C087E207C080E605C08CE203C0DC\r\n\
+:102140008EE201C08FE20E94330B81E0CF910895AF\r\n\
+:10215000833019F4859A7D9A0895813011F4859A17\r\n\
+:1021600006C0823019F4859A8D9A089585988D98C5\r\n\
+:10217000089581E00E94A8102FEF89E698E1215090\r\n\
+:1021800080409040E1F700C0000082E00E94A8106B\r\n\
+:102190002FEF89E698E1215080409040E1F700C0A0\r\n\
+:1021A000000081E00E94A8102FEF89E698E12150FD\r\n\
+:1021B00080409040E1F700C0000082E00E94A8103B\r\n\
+:1021C0002FEF89E698E1215080409040E1F700C070\r\n\
+:1021D000000080E00E94A81080EC80937C0087E0E3\r\n\
+:1021E00080937A0081E980937E0081E080937F0074\r\n\
+:1021F0008BE380937D00849A8C9808958091D90018\r\n\
+:1022000080FF1BC020B391B385988D9AEFE9FFE062\r\n\
+:102210003197F1F700C000008FB185FB882780F966\r\n\
+:1022200030B320723F7D232B20BB21B390722F7DD2\r\n\
+:10223000922B91BB91E08927089580E00895CF9378\r\n\
+:10224000DF9300D0CDB7DEB7849A8C9A80917A0064\r\n\
+:10225000806880937A008FE99FE00197F1F700C0D2\r\n\
+:10226000000080917A00806480937A0080917A00E7\r\n\
+:1022700086FDFCCF80917800909179009A838983C4\r\n\
+:1022800080917A008F7780937A00849A8C98298144\r\n\
+:102290003A8145E0429FC001439F900D1124805533\r\n\
+:1022A00091090F900F90DF91CF9108958091D900FF\r\n\
+:1022B00080FD0C94FE100E941F118C3A2DE09207B5\r\n\
+:1022C00020F481E08093DC0205C085379E4010F049\r\n\
+:1022D0001092DC028091DC02882311F083E00895E3\r\n\
+:1022E00082E00895CF93C82F0E9497078C2F0E94F9\r\n\
+:1022F000011280E0CF910895CF9384B7877F84BF88\r\n\
+:1023000088E10FB6F89480936000109260000FBED1\r\n\
+:1023100090E080E80FB6F89480936100909361009C\r\n\
+:102320000FBE0E9476160E94D3168091E200846050\r\n\
+:102330008093E20082E791E10E948E26509A589A9B\r\n\
+:102340005198599A7894CFEF80916C03C1508430A2\r\n\
+:1023500051F08FE79EE30197F1F700C000000E9463\r\n\
+:102360000C19C111F1CF87E694E00E94DA070E94B0\r\n\
+:102370003D0B0E94F30B8BE594E00E94DA070E946C\r\n\
+:10238000BB190E94500B811103C08AE091E002C08A\r\n\
+:1023900086E191E00E9429198BE494E00E94DA071B\r\n\
+:1023A0000E94500B882319F180916C038530F9F459\r\n\
+:1023B00087E494E00E94DA070E94DA090E94A526C9\r\n\
+:1023C0000E94A5260E94A5260E94A5260E94A52659\r\n\
+:1023D0000E94A5260E94A52680916A03882301F306\r\n\
+:1023E0000E94CB268823E1F20E94CC14D9CF0E9410\r\n\
+:1023F000E9190E940C190E94F50BD2CF8091F002CE\r\n\
+:1024000008959FB7F8941092DF029FBF90916C03DC\r\n\
+:10241000943009F058C09091E9009F702091EC0031\r\n\
+:1024200020FF02C020E801C020E0292B94E0909317\r\n\
+:10243000E9009091EB0090FF43C09091EE0097FF70\r\n\
+:102440003FC09091DD02992321F09091E80095FF23\r\n\
+:1024500037C01092DD0296E03091E80035FD15C0DE\r\n\
+:1024600030916C03343061F53091EB0035FD28C0BC\r\n\
+:10247000915021F481E08093DD0222C0EFE9FFE07A\r\n\
+:102480003197F1F700C00000E7CF8093F100809111\r\n\
+:10249000E80085FD0AC08091E80080FFFCCF8091B4\r\n\
+:1024A000E8008E778093E80006C08FB7F89491E03B\r\n\
+:1024B0009093DF028FBF2F702093E90080E0089592\r\n\
+:1024C0002F702093E9008FEF0895CF93DF9300D012\r\n\
+:1024D0001F92CDB7DEB720916C03243019F523E0AD\r\n\
+:1024E00029839B838A832093E9008FEF9091E800F2\r\n\
+:1024F000815095FD06C095ED9A95F1F70000811188\r\n\
+:10250000F5CF8091E80085FF0DC040E050E063E02A\r\n\
+:1025100070E0CE0101960E94E2148091E8008E776F\r\n\
+:102520008093E8000F900F900F90DF91CF91089566\r\n\
+:10253000CF93DF9300D01F92CDB7DEB720916C030D\r\n\
+:10254000243021F522E029839B838A8383E08093D2\r\n\
+:10255000E9008FEF9091E800815095FD06C095ED60\r\n\
+:102560009A95F1F700008111F5CF8091E80085FF81\r\n\
+:102570000DC040E050E063E070E0CE0101960E94A3\r\n\
+:10258000E2148091E8008E778093E8000F900F901E\r\n\
+:102590000F90DF91CF91089520916C032430F1F4D6\r\n\
+:1025A00022E02093E9002FEF3091E800215035FD23\r\n\
+:1025B00006C035ED3A95F1F700002111F5CF2091D5\r\n\
+:1025C000E80025FF0BC040E050E065E070E00E94AD\r\n\
+:1025D000E2148091E8008E778093E8000895CF930D\r\n\
+:1025E000DF93EC0180916C03843009F047C0809147\r\n\
+:1025F00020018823E1F0809121018823C1F085E04A\r\n\
+:102600008093E9008FEF9091E800815095FD06C01E\r\n\
+:1026100095E19A95F1F700008111F5CF8091E800DE\r\n\
+:1026200085FF2CC040E050E060E170E017C081E021\r\n\
+:102630008093E9008FEF9091E800815095FD06C0EE\r\n\
+:1026400095ED9A95F1F700008111F5CF8091E800A2\r\n\
+:1026500085FF14C040E050E068E070E0CE010E94C9\r\n\
+:10266000E2148091E8008E778093E80080E1FE011B\r\n\
+:10267000A0EEB2E001900D928A95E1F7DF91CF9143\r\n\
+:10268000089582E894E00E94DA0780916B0381113B\r\n\
+:1026900009C00E9476160E94D3168091E2008460E1\r\n\
+:1026A0008093E20008958EE794E00E94DA0710928A\r\n\
+:1026B0006B0308958AE794E00C94DA0786E794E0C8\r\n\
+:1026C0000C94DA0782E794E00E94DA070C94E02683\r\n\
+:1026D0008091DE028F5F8093DE0262E30E946432AB\r\n\
+:1026E000911135C01092DE028091DF02882379F1CA\r\n\
+:1026F00080916C03843049F58091E9008F7090914E\r\n\
+:10270000EC0090FF02C090E801C090E0982B84E0BC\r\n\
+:102710008093E9008091EB0080FF14C08091EE006F\r\n\
+:1027200087FF10C08091E80085FF03C01092F10080\r\n\
+:10273000F9CF8091E80080FF05C08091E8008E7796\r\n\
+:102740008093E8009F709093E9001092DF02089553\r\n\
+:1027500042E061EC81E00E94F01542E061EC82E031\r\n\
+:102760000E94F01542E061EC83E00E94F01542E225\r\n\
+:1027700061EC84E00E94F01542E161EC85E00C948C\r\n\
+:10278000F01580916E03833009F455C030F4813028\r\n\
+:1027900071F0823009F48EC008958A3009F47AC04D\r\n\
+:1027A0008B3009F460C0893009F09CC020C0809152\r\n\
+:1027B0006D03813A09F096C08091E800877F80938D\r\n\
+:1027C000E8008091710390917203892B21F060E001\r\n\
+:1027D00080E090E003C060E180EE92E070E00E9453\r\n\
+:1027E0002D158091E8008B778093E8000895809103\r\n\
+:1027F0006D03813209F076C080917103909172036C\r\n\
+:10280000009719F0049709F06DC08091E800877F68\r\n\
+:102810008093E8008091E80082FD05C080916C0300\r\n\
+:102820008111F8CF5FC08091F1008093F002809118\r\n\
+:10283000E8008B7753C080916D03813A09F052C054\r\n\
+:102840008091710390917203892B09F04BC08091A4\r\n\
+:10285000E800877F8093E8008091E80080FFFCCF4C\r\n\
+:102860008091200136C080916D038132D9F580912D\r\n\
+:10287000710390917203892BA9F58091E800877FFD\r\n\
+:102880008093E8000E94251680916F0380932001B9\r\n\
+:102890000C94A71E80916D03813221F58091E80090\r\n\
+:1028A000877F8093E8000E942516809170038093B3\r\n\
+:1028B000F102089580916D03813AA1F48091E800BE\r\n\
+:1028C000877F8093E8008091E80080FFFCCF8091B3\r\n\
+:1028D000F1028093F1008091E8008E778093E80008\r\n\
+:1028E0000C9425160895292F332723303105A9F09C\r\n\
+:1028F0006CF42130310509F442C02230310509F071\r\n\
+:1029000043C08DE890E02EEA34E042C02132310528\r\n\
+:10291000C9F02232310519F137C09927813091056C\r\n\
+:1029200041F08230910541F0892B71F5EAEAF4E03B\r\n\
+:1029300005C0EAE9F4E002C0E6E8F4E0849190E042\r\n\
+:102940009F0126C0653000F5E62FF0E0EE0FFF1F77\r\n\
+:10295000E457FE4F2081318189E090E019C0653055\r\n\
+:1029600098F4E62FF0E0DF01AA0FBB1FAE57BE4F71\r\n\
+:102970002D913C91E358FE4F808190E009C082E1A7\r\n\
+:1029800090E02BE335E004C080E090E020E030E010\r\n\
+:10299000FA0131832083089580E189BD82E189BDF8\r\n\
+:1029A00009B400FEFDCF8091D8008F7D8093D800C0\r\n\
+:1029B0008091E00082608093E0008091E00081FDE2\r\n\
+:1029C000FCCF0895CF92DF92EF92FF920F931F9367\r\n\
+:1029D000CF93DF937C018B01EA010E94461681119F\r\n\
+:1029E00033C0209731F088819981081B190BE80EBC\r\n\
+:1029F000F91EC12CD12C0115110529F18091E80097\r\n\
+:102A000085FD16C08091E8008E778093E8000E94D3\r\n\
+:102A10000C19209741F0888199818C0D9D1D998317\r\n\
+:102A2000888385E011C00E944616882321F30CC0DC\r\n\
+:102A3000F70181917F018093F10001501109FFEFAF\r\n\
+:102A4000CF1ADF0AD8CF80E0DF91CF911F910F918D\r\n\
+:102A5000FF90EF90DF90CF90089520917303309115\r\n\
+:102A600074032617370748F06115710539F4209172\r\n\
+:102A7000E8002E772093E80001C0B901FC0120E0B6\r\n\
+:102A800061157105B9F180916C03882309F440C088\r\n\
+:102A9000853009F43FC08091E80083FD3DC08091FE\r\n\
+:102AA000E80082FF06C08091E80082FF26C080E037\r\n\
+:102AB00008958091E80080FFE3CF2091F30080919A\r\n\
+:102AC000F20090E0922B6115710551F0883091056C\r\n\
+:102AD00038F421912093F100615071090196F3CFF0\r\n\
+:102AE00021E0089709F020E08091E8008E7780933C\r\n\
+:102AF000E800C6CF2111C7CFD6CF80916C038823C1\r\n\
+:102B000039F0853039F08091E80083FFCCCF04C0E4\r\n\
+:102B100082E0089583E0089581E008952091730391\r\n\
+:102B2000309174032617370748F06115710539F4A1\r\n\
+:102B30002091E8002E772093E80001C0B901FC0144\r\n\
+:102B400020E061157105C1F180916C03882309F4BF\r\n\
+:102B500041C0853009F440C08091E80083FD3EC04B\r\n\
+:102B60008091E80082FF06C08091E80082FF27C0C4\r\n\
+:102B700080E008958091E80080FFE3CF2091F3008A\r\n\
+:102B80008091F20090E0922B6115710559F0883028\r\n\
+:102B9000910540F424912093F10031966150710920\r\n\
+:102BA0000196F2CF21E0089709F020E08091E8003B\r\n\
+:102BB0008E778093E800C5CF2111C6CFD5CF809105\r\n\
+:102BC0006C03882339F0853039F08091E80083FF69\r\n\
+:102BD000CBCF04C082E0089583E0089581E008959A\r\n\
+:102BE000982F973058F59093E900981739F0709125\r\n\
+:102BF000EC002091ED005091F00003C0242F762FBF\r\n\
+:102C000050E021FF19C03091EB003E7F3093EB0084\r\n\
+:102C10003091ED003D7F3093ED003091EB0031605D\r\n\
+:102C20003093EB007093EC002093ED005093F00094\r\n\
+:102C30002091EE0027FF07C09F5FD3CF8F70809356\r\n\
+:102C4000E90081E0089580E0089580916D0387FD9B\r\n\
+:102C500005C08091E80080FF0EC012C08091E8009E\r\n\
+:102C600082FD05C080916C038111F8CF0895809199\r\n\
+:102C7000E8008B7708C080916C038111EACF08953A\r\n\
+:102C80008091E8008E778093E80008958091E400B9\r\n\
+:102C90009091E50045E62091EC0020FF21C02091B5\r\n\
+:102CA000E80020FD21C020916C03222389F025300B\r\n\
+:102CB00089F02091EB0025FD0FC02091E4003091B8\r\n\
+:102CC000E5002817390739F3415041F0C901E3CF36\r\n\
+:102CD00082E0089583E0089581E0089584E00895F6\r\n\
+:102CE0002091E80022FFDFCF80E008950E94E416E3\r\n\
+:102CF0000E94EC16E0EEF0E0808181608083E8EDD8\r\n\
+:102D0000F0E080818F77808319BCA7EDB0E08C91D3\r\n\
+:102D10008E7F8C9380818F7E808310926B030895C9\r\n\
+:102D20000F931F93CF93DF930E94E4160E94EC163B\r\n\
+:102D3000C8EDD0E088818F77888388818068888318\r\n\
+:102D400088818F7D888319BC10926C031092680370\r\n\
+:102D500010926A031092690300EE10E0F80180817E\r\n\
+:102D60008B7F808388818160888342E060E080E09F\r\n\
+:102D70000E94F015E1EEF0E080818E7F8083E2EE2C\r\n\
+:102D8000F0E0808181608083808188608083F801A9\r\n\
+:102D900080818E7F8083888180618883DF91CF915D\r\n\
+:102DA0001F910F910895E8EDF0E080818F7E808380\r\n\
+:102DB000E7EDF0E080818160808384E082BF81E084\r\n\
+:102DC00080936B030C949016E8EDF0E080818E7F89\r\n\
+:102DD00080831092E20008951092DA001092E100D0\r\n\
+:102DE00008951F920F920FB60F9211242F933F93C5\r\n\
+:102DF0004F935F936F937F938F939F93AF93BF9303\r\n\
+:102E0000EF93FF938091E10082FF0BC08091E2007D\r\n\
+:102E100082FF07C08091E1008B7F8093E1000E94D8\r\n\
+:102E200068138091DA0080FF1FC08091D80080FF76\r\n\
+:102E30001BC08091DA008E7F8093DA008091D900E8\r\n\
+:102E400080FF0DC080E189BD82E189BD09B400FE2B\r\n\
+:102E5000FDCF81E080936C030E94411305C019BC33\r\n\
+:102E600010926C030E9453138091E10080FF19C0FF\r\n\
+:102E70008091E20080FF15C08091E2008E7F8093F8\r\n\
+:102E8000E2008091E20080618093E2008091D800AE\r\n\
+:102E900080628093D80019BC85E080936C030E9407\r\n\
+:102EA0005E138091E10084FF30C08091E20084FFD6\r\n\
+:102EB0002CC080E189BD82E189BD09B400FEFDCF4F\r\n\
+:102EC0008091D8008F7D8093D8008091E1008F7E23\r\n\
+:102ED0008093E1008091E2008F7E8093E2008091F8\r\n\
+:102EE000E20081608093E20080916803882311F002\r\n\
+:102EF00084E007C08091E30087FF02C083E001C047\r\n\
+:102F000081E080936C030E9462138091E10083FF53\r\n\
+:102F100024C08091E20083FF20C08091E100877F80\r\n\
+:102F20008093E10082E080936C03109268038091AB\r\n\
+:102F3000E1008E7F8093E1008091E2008E7F80939C\r\n\
+:102F4000E2008091E20080618093E20042E060E074\r\n\
+:102F500080E00E94F0150E945A13FF91EF91BF91FB\r\n\
+:102F6000AF919F918F917F916F915F914F913F9121\r\n\
+:102F70002F910F900FBE0F901F9018951F93CF9316\r\n\
+:102F8000DF93CDB7DEB7AA970FB6F894DEBF0FBEBA\r\n\
+:102F9000CDBFEDE6F3E08091F100819323E0E537CA\r\n\
+:102FA000F207C9F70E94C1138091E80083FF1CC19A\r\n\
+:102FB00020916D0330916E03832F90E08A3091054C\r\n\
+:102FC00008F012C1FC01E156FF4F0C94BA322038D0\r\n\
+:102FD00081F0223809F008C1809171038F708093CD\r\n\
+:102FE000E9008091EB0085FB882780F91092E900C9\r\n\
+:102FF00006C08091690390916A039111826090915B\r\n\
+:10300000E800977F9093E8008093F1001092F10020\r\n\
+:10301000C5C0822F8D7F09F0E7C0222319F022302E\r\n\
+:1030200061F0E2C080916F03813009F0DDC0333080\r\n\
+:1030300009F080E080936A0328C080916F038111BA\r\n\
+:1030400024C0209171032F7009F4CEC02093E900B1\r\n\
+:103050008091EB0080FF19C08091EB00333011F4B8\r\n\
+:10306000806211C080618093EB0081E090E0022ECD\r\n\
+:1030700001C0880F0A94EAF78093EA001092EA00F0\r\n\
+:103080008091EB0088608093EB001092E9008091C2\r\n\
+:10309000E800877F86C02111A7C010916F031F77BA\r\n\
+:1030A0008091E3008078812B8093E3008091E80099\r\n\
+:1030B000877F8093E8000E9425168091E80080FFBA\r\n\
+:1030C000FCCF8091E30080688093E300112311F02E\r\n\
+:1030D00083E001C082E080936C0386C020582230D8\r\n\
+:1030E00008F082C080916F03909170038C3D23E0C3\r\n\
+:1030F000920779F583E08A838AE289834FB7F8944F\r\n\
+:10310000DE01139620E03EE051E2E32FF0E0509321\r\n\
+:103110005700E49120FF03C0E295EF703F5FEF702E\r\n\
+:103120008E2F90E0EA3010F0C79601C0C0968D93C4\r\n\
+:103130009D932F5F243149F74FBF8091E800877F2F\r\n\
+:103140008093E8006AE270E0CE0101960E942D159E\r\n\
+:1031500014C0AE014F5F5F4F609171030E94731402\r\n\
+:10316000009709F441C02091E800277F2093E800F0\r\n\
+:10317000BC0189819A810E948E158091E8008B772D\r\n\
+:103180008093E80031C0203879F58091E800877F8E\r\n\
+:103190008093E800809168038093F1008091E800BB\r\n\
+:1031A0008E778093E8000E9425161EC021111CC056\r\n\
+:1031B00090916F039230C0F48091E800877F8093F4\r\n\
+:1031C000E800909368030E9425168091680381119E\r\n\
+:1031D00004C08091E30087FF02C084E001C081E069\r\n\
+:1031E00080936C030E94A8138091E80083FF0AC0BB\r\n\
+:1031F0008091E800877F8093E8008091EB008062F7\r\n\
+:103200008093EB00AA960FB6F894DEBF0FBECDBF39\r\n\
+:10321000DF91CF911F910895CF9380916C03882304\r\n\
+:10322000B1F08091E9008F709091EC0090FF02C0A6\r\n\
+:1032300090E801C090E0C92FC82B1092E90080915E\r\n\
+:10324000E80083FD0E94BE17CF70C093E900CF91C4\r\n\
+:1032500008959093F7028093F60208958091F60204\r\n\
+:103260009091F7020895E091F602F091F7023097FD\r\n\
+:1032700021F00190F081E02D099480E00895FF9203\r\n\
+:103280000F931F93CF93DF938C01E091F602F0919F\r\n\
+:10329000F702309799F10280F381E02D0995809132\r\n\
+:1032A000560382FF2BC080FF04C080E796E00E9497\r\n\
+:1032B000DA07E80180E1F82E0AE616E0809156036D\r\n\
+:1032C00080FF0BC088811F928F931F930F930E94E2\r\n\
+:1032D00073080F900F900F900F90FA942196F110B1\r\n\
+:1032E000EDCF8091560380FF09C088E696E0DF911C\r\n\
+:1032F000CF911F910F91FF900C94DA07DF91CF913E\r\n\
+:103300001F910F91FF900895E091F602F091F7025E\r\n\
+:10331000309721F00480F581E02D099408952091E3\r\n\
+:10332000F4023091F5028217930771F09093F50241\r\n\
+:103330008093F402E091F602F091F702309721F0C9\r\n\
+:103340000680F781E02D099408952091F2023091D2\r\n\
+:10335000F3028217930771F09093F3028093F202C5\r\n\
+:10336000E091F602F091F702309721F00084F185A8\r\n\
+:10337000E02D099408950E940B270E94AA080C943E\r\n\
+:103380000928CF93C82F8091560382FF1EC080FF6B\r\n\
+:1033900004C089E896E00E94DA078091560380FF16\r\n\
+:1033A0000CC01F92CF9324E836E03F932F930E94E6\r\n\
+:1033B00073080F900F900F900F908091560380FF2D\r\n\
+:1033C00004C082E896E00E94DA078C2FCF910C941B\r\n\
+:1033D000DC09CF92DF92EF92FF920F931F93CF936E\r\n\
+:1033E000DF93CDB7DEB72B970FB6F894DEBF0FBED5\r\n\
+:1033F000CDBF0E94CF0839EFE32E32E0F32E00E07C\r\n\
+:1034000010E0C02E802F0E94A409F701D1907F0107\r\n\
+:10341000D826B1F40F5F1F4F0830110591F78FEFD9\r\n\
+:1034200089838A831B820E9414278160782F9D8361\r\n\
+:103430008C8349815A816B818D810E948C1A41C095\r\n\
+:103440009091560391FF04C08B870E94AC098B8535\r\n\
+:1034500020E030E04D2D50E0922FBA01022E02C044\r\n\
+:10346000759567950A94E2F760FF25C02E83CF8299\r\n\
+:10347000EE24E394F12C02C0EE0CFF1C9A95E2F7C7\r\n\
+:1034800090E08E219F2121E0892B09F420E02887FC\r\n\
+:103490000E9414278160782F9A8789874E815F81E7\r\n\
+:1034A00068858A850E948C1AF801E750FD4F80815B\r\n\
+:1034B0008E25808306C02F5F3F4F2830310561F68F\r\n\
+:1034C000A9CF0E94772B1091F8020E943319181788\r\n\
+:1034D000A1F00E9433198093F8022B960FB6F8944E\r\n\
+:1034E000DEBF0FBECDBFDF91CF911F910F91FF9037\r\n\
+:1034F000EF90DF90CF900C94C1192B960FB6F894F3\r\n\
+:10350000DEBF0FBECDBFDF91CF911F910F91FF9016\r\n\
+:10351000EF90DF90CF900895CF93DF93CDB7DEB7D4\r\n\
+:103520002B970FB6F894DEBF0FBECDBF4F835887E1\r\n\
+:1035300069877A878B87DE01119686E0FD011192FB\r\n\
+:103540008A95E9F785E0FE01379601900D928A95FC\r\n\
+:10355000E1F749815A816B817C818D819E810E9436\r\n\
+:1035600073212B960FB6F894DEBF0FBECDBFDF914F\r\n\
+:10357000CF910895CF93C82F882309F498C08CEF7A\r\n\
+:103580008C0F813A48F48C2F0E94F02F81118FC04C\r\n\
+:103590008C2F0E9410240CC080E28C0F883058F4CD\r\n\
+:1035A000C77081E001C0880FCA95EAF70E94B6246F\r\n\
+:1035B000CF910C94F9248BE58C0F833078F4C53AC5\r\n\
+:1035C00029F0C63A31F482E890E005C081E890E045\r\n\
+:1035D00002C083E890E0CF910C948F1988E58C0F9E\r\n\
+:1035E000833108F064C0C83A39F1C93A41F1CA3AA6\r\n\
+:1035F00049F1CB3A51F1CC3A59F1CD3A61F1C03BA6\r\n\
+:1036000069F1CE3A71F1CF3A79F1C13B81F1C23B18\r\n\
+:1036100089F1C33B91F1C43B99F1C53BA1F1C63B94\r\n\
+:10362000A9F1C73BB1F1C83BB9F1C93BC1F1CA3BF4\r\n\
+:10363000C9F58AE292E038C082EE90E035C089EEAA\r\n\
+:1036400090E032C08AEE90E02FC085EB90E02CC075\r\n\
+:1036500086EB90E029C087EB90E026C08CEC90E0F0\r\n\
+:1036600023C08DEC90E020C083E891E01DC08AE883\r\n\
+:1036700091E01AC082E991E017C084E991E014C09A\r\n\
+:1036800081E292E011C083E292E00EC084E292E017\r\n\
+:103690000BC085E292E008C086E292E005C087E2B6\r\n\
+:1036A00092E002C080E090E0CF910C94A519CF91F8\r\n\
+:1036B0000895882329F19CEF980F913A18F40E94FD\r\n\
+:1036C00061240DC090E2980F983058F4877091E013\r\n\
+:1036D00001C0990F8A95EAF7892F0E94BC240C94A7\r\n\
+:1036E000F9249BE5980F933020F480E090E00C944F\r\n\
+:1036F0008F19885A833120F480E090E00C94A5194A\r\n\
+:103700000895882321F00E94B6240C94F92408958A\r\n\
+:10371000882321F00E94BC240C94F9240895CF92B0\r\n\
+:10372000DF92EF92FF920F931F93CF93DF93CDB76A\r\n\
+:10373000DEB728970FB6F894DEBF0FBECDBF8C0161\r\n\
+:1037400085E0F801DE01119601900D928A95E1F76E\r\n\
+:10375000F80140813181F280258122952F7083818B\r\n\
+:103760009481892B31F03F3F31F481E04F3F19F4D0\r\n\
+:1037700003C081E001C080E080FDC8C249833A8374\r\n\
+:1037800089819A812F830E94CE239E8388870E94FD\r\n\
+:10379000CD230E94A0224E81E42FE295EF70F0E04D\r\n\
+:1037A000E755FF4F2F8168850C94BA32842F807FB4\r\n\
+:1037B000142F1F70882311F01295107FFF2059F0ED\r\n\
+:1037C000112309F458C2812F68870E94C6240E94E1\r\n\
+:1037D000F924688550C2862F0E94591B112309F4D1\r\n\
+:1037E00095C2812F0E94CC2428960FB6F894DEBF94\r\n\
+:1037F0000FBECDBFDF91CF911F910F91FF90EF9042\r\n\
+:10380000DF90CF900C94F924342F307F842F8F7069\r\n\
+:10381000303211F08295807F662319F0613009F112\r\n\
+:103820002AC0FF20A1F0222381F1213071F52896D2\r\n\
+:103830000FB6F894DEBF0FBECDBFDF91CF911F91C1\r\n\
+:103840000F91FF90EF90DF90CF900C94D62422231D\r\n\
+:1038500019F0213009F45AC28E830E94DF248E8130\r\n\
+:103860008EC1FF2021F0263008F050C20EC0253056\r\n\
+:1038700008F04CC284C1FF20C1F0222331F0F801CE\r\n\
+:10388000958190FFF8C19F70958328960FB6F894A4\r\n\
+:10389000DEBF0FBECDBFDF91CF911F910F91FF9083\r\n\
+:1038A000EF90DF90CF900C94811B222309F467C125\r\n\
+:1038B000F6C1242F26952695237030E02115310579\r\n\
+:1038C00021F021303105C9F021C2FF2021F0862FDF\r\n\
+:1038D000942F937002C080E090E028960FB6F89481\r\n\
+:1038E000DEBF0FBECDBFDF91CF911F910F91FF9033\r\n\
+:1038F000EF90DF90CF900C948F19FF2021F0862F4E\r\n\
+:10390000942F937002C080E090E028960FB6F89450\r\n\
+:10391000DEBF0FBECDBFDF91CF911F910F91FF9002\r\n\
+:10392000EF90DF90CF900C94A519862FFF2019F00F\r\n\
+:103930000E94FD2902C00E94652A28960FB6F894BD\r\n\
+:10394000DEBF0FBECDBFDF91CF911F910F91FF90D2\r\n\
+:10395000EF90DF90CF900C94EA2A842F837009F0C7\r\n\
+:1039600076C0F110D3C1262F229526952770220FFD\r\n\
+:10397000220F862F8F70C82ED12CE12CF12C022E15\r\n\
+:1039800004C0CC0CDD1CEE1CFF1C0A94D2F764FFB3\r\n\
+:1039900010C06FE070E080E090E004C0660F771F19\r\n\
+:1039A000881F991F2A95D2F76095709580959095FC\r\n\
+:1039B00003C060E070E0CB01242F2695269523708C\r\n\
+:1039C000422F50E042305105D1F04330510559F1BA\r\n\
+:1039D0006C297D298E299F294130510541F1289676\r\n\
+:1039E0000FB6F894DEBF0FBECDBFDF91CF911F9110\r\n\
+:1039F0000F91FF90EF90DF90CF900C94C5226C292F\r\n\
+:103A00007D298E299F2928960FB6F894DEBF0FBE18\r\n\
+:103A1000CDBFDF91CF911F910F91FF90EF90DF907D\r\n\
+:103A2000CF900C94DF220E94C522C701B6012896D0\r\n\
+:103A30000FB6F894DEBF0FBECDBFDF91CF911F91BF\r\n\
+:103A40000F91FF90EF90DF90CF900C94AB22FF206E\r\n\
+:103A500019F0842F817001C08695882309F456C11E\r\n\
+:103A6000262F229526952770220F220F862F8F70E2\r\n\
+:103A7000C82ED12CE12CF12C022E04C0CC0CDD1C64\r\n\
+:103A8000EE1CFF1C0A94D2F764FF10C06FE070E0D8\r\n\
+:103A900080E090E004C0660F771F881F991F2A9569\r\n\
+:103AA000D2F7609570958095909503C060E070E0C6\r\n\
+:103AB000CB01242F269526952370422F50E04230CB\r\n\
+:103AC0005105D1F04330510559F16C297D298E29DA\r\n\
+:103AD0009F294130510541F128960FB6F894DEBF79\r\n\
+:103AE0000FBECDBFDF91CF911F910F91FF90EF904F\r\n\
+:103AF000DF90CF900C9499236C297D298E299F29E2\r\n\
+:103B000028960FB6F894DEBF0FBECDBFDF91CF91E0\r\n\
+:103B10001F910F91FF90EF90DF90CF900C94B32303\r\n\
+:103B20000E949923C701B60128960FB6F894DEBF0C\r\n\
+:103B30000FBECDBFDF91CF911F910F91FF90EF90FE\r\n\
+:103B4000DF90CF900C947F23603F49F118F4603EE2\r\n\
+:103B500048F48CC0623F09F451C0E0F1633F09F4BE\r\n\
+:103B600061C084C0162F1F70842F8F71FF2021F039\r\n\
+:103B70000E941823812F89CE0E943923812F2896F5\r\n\
+:103B80000FB6F894DEBF0FBECDBFDF91CF911F916E\r\n\
+:103B90000F91FF90EF90DF90CF900C94881BFF2047\r\n\
+:103BA000A9F0253008F0B2C0842F8F7128960FB687\r\n\
+:103BB000F894DEBF0FBECDBFDF91CF911F910F9163\r\n\
+:103BC000FF90EF90DF90CF900C945E23263008F0AA\r\n\
+:103BD0009DC0EACFFF20A1F0842F8F7128960FB6E9\r\n\
+:103BE000F894DEBF0FBECDBFDF91CF911F910F9133\r\n\
+:103BF000FF90EF90DF90CF900C941823FF2061F39B\r\n\
+:103C0000842F8F7128960FB6F894DEBF0FBECDBFFC\r\n\
+:103C1000DF91CF911F910F91FF90EF90DF90CF90A8\r\n\
+:103C20000C943923FF2091F0842F8F7128960FB6C2\r\n\
+:103C3000F894DEBF0FBECDBFDF91CF911F910F91E2\r\n\
+:103C4000FF90EF90DF90CF900C94032328960FB64F\r\n\
+:103C5000F894DEBF0FBECDBFDF91CF911F910F91C2\r\n\
+:103C6000FF90EF90DF90CF900C94F922FF20A1F00D\r\n\
+:103C7000222309F4B1CF862F28960FB6F894DEBF21\r\n\
+:103C80000FBECDBFDF91CF911F910F91FF90EF90AD\r\n\
+:103C9000DF90CF900C94BA1A222309F4B1CF862F6B\r\n\
+:103CA00028960FB6F894DEBF0FBECDBFDF91CF913F\r\n\
+:103CB0001F910F91FF90EF90DF90CF900C94591BC4\r\n\
+:103CC0004F70C8010E948A2628960FB6F894DEBF6E\r\n\
+:103CD0000FBECDBFDF91CF911F910F91FF90EF905D\r\n\
+:103CE000DF90CF900C9420224F70C80128960FB619\r\n\
+:103CF000F894DEBF0FBECDBFDF91CF911F910F9122\r\n\
+:103D0000FF90EF90DF90CF900C948D2628960FB601\r\n\
+:103D1000F894DEBF0FBECDBFDF91CF911F910F9101\r\n\
+:103D2000FF90EF90DF90CF9008950E94D3240E94DF\r\n\
+:103D3000A5240E94F9240E94182C0E94EA2A80E0FF\r\n\
+:103D400090E00E948F1980E090E00C94A5190E94E9\r\n\
+:103D5000C3240C94951E0E94CE23292F22952F70E8\r\n\
+:103D600030E02C3031054CF42A3031056CF422500F\r\n\
+:103D700031092230310590F407C02C30310551F063\r\n\
+:103D80002F30310539F00AC0803E10F0803F31F409\r\n\
+:103D900081E0089593FB882780F9089580E00895D5\r\n\
+:103DA000CF93DF9300D000D01F92CDB7DEB70F9036\r\n\
+:103DB0000F900F900F900F90DF91CF910895CF93B8\r\n\
+:103DC000DF9300D000D000D0CDB7DEB726960FB677\r\n\
+:103DD000F894DEBF0FBECDBFDF91CF9108951F9342\r\n\
+:103DE000CF93DF93C091010316E080910203C817BF\r\n\
+:103DF00099F0D0E01C9FF0011D9FF00D1124ED5FA4\r\n\
+:103E0000FC4F4081518162817381848195810E9440\r\n\
+:103E1000DF1E2196C770E9CFDF91CF911F910895E2\r\n\
+:103E20004091330350913403609135037091360310\r\n\
+:103E300080913703909138030C94DF1ECF938091CB\r\n\
+:103E4000380382958F7009F05FC080913503882315\r\n\
+:103E500009F45AC020910103A09102036091330339\r\n\
+:103E600070913403809136039091370331E06F3FB6\r\n\
+:103E700009F030E0B32FC6E02A1709F445C00097D7\r\n\
+:103E800021F07F3F21F44B2F03C041E001C040E00F\r\n\
+:103E900030E040FD35C0C29FF001C39FF00D1124FA\r\n\
+:103EA000ED5FFC4F418174132BC04081641328C027\r\n\
+:103EB0004281411125C0438154814817590710F4AC\r\n\
+:103EC00041505109481B590B4C325140C8F4809164\r\n\
+:103ED00038038F7080618093380386E0829FF00101\r\n\
+:103EE000839FF00D1124E85FFC4F80818F7080610B\r\n\
+:103EF000808383E393E00E948F1BCF910C94EF1E8D\r\n\
+:103F00002F5F3F4F2770B8CFCF910895CF92DF92A8\r\n\
+:103F1000EF92FF920F931F93CF93DF93CDB7DEB74E\r\n\
+:103F200062970FB6F894DEBF0FBECDBF8C0185E05F\r\n\
+:103F3000F801DE011D9601900D928A95E1F7D801F6\r\n\
+:103F40004C9111965C91119712966C911297139661\r\n\
+:103F5000ED90FC90149770913303E091340320911D\r\n\
+:103F60003603309137032115310531F0EF3F31F43D\r\n\
+:103F700081E07F3F19F403C081E001C080E0B82FE9\r\n\
+:103F8000B170CB2E80FD6DC1D0903503DD2009F4DA\r\n\
+:103F9000F6C0F0913803E216F30638F0C701821B31\r\n\
+:103FA000930B8C32914048F09CC0209530952E0D9B\r\n\
+:103FB0003F1D2C32314008F094C08F2F807F09F0D4\r\n\
+:103FC00053C0E51315C0741313C0D62E611110C071\r\n\
+:103FD000FF70F061F09338030E94101F83E393E0B9\r\n\
+:103FE0000E948F1B80913803D80115968C936BC16A\r\n\
+:103FF000EF2831F05F3F31F481E04F3F19F403C007\r\n\
+:1040000081E001C080E080FD03C081E0862701C01F\r\n\
+:1040100080E0B82FB170FB2E80FF1CC0809101039F\r\n\
+:104020002091020336E0821709F428C190E0389FFE\r\n\
+:10403000F001399FF00D1124ED5FFC4F7181571392\r\n\
+:1040400006C07081471303C07281671303C00196D5\r\n\
+:104050008770E9CFD62E662309F435C180913803E5\r\n\
+:1040600081608093380353C0E51308C0741306C001\r\n\
+:10407000611104C0D8011596FC93AEC04D875E87D0\r\n\
+:104080008D859E856A8B0E94AB1E6A89882329F1E3\r\n\
+:10409000D62E662311F120913803822F82958F70DE\r\n\
+:1040A00090E002970CF460C0809133039091340348\r\n\
+:1040B00098878F831986FB86EA862C87CE01079620\r\n\
+:1040C00051C0E51731F14D875E878D859E856A8BDE\r\n\
+:1040D0000E94AB1E6A8981112EC0C8010E948F1BED\r\n\
+:1040E000A4C08F2F807F69F77E2DF98AE88A89899D\r\n\
+:1040F0000E94D01E83E393E00E948F1BE3E3F3E072\r\n\
+:1041000086E0DF011D928A95E9F70E94101FD12CED\r\n\
+:10411000DAC07413D8CF6111D6CFD8011596FC93AD\r\n\
+:10412000C8010E948F1BE3E3F3E086E0DF011D92EC\r\n\
+:104130008A95E9F7C8C0D62E662379F22091380314\r\n\
+:10414000822F82958F7090E0029774F080913303F4\r\n\
+:10415000909134039A8389831B82FD82EC822E83A3\r\n\
+:10416000CE0101960E948F1B86E0F801A3E3B3E025\r\n\
+:1041700001900D928A95E1F70E941E1F6FC0E21612\r\n\
+:10418000F30640F0C701821B930B9C012C32314097\r\n\
+:1041900048F057C0209530952E0D3F1D2C323140F0\r\n\
+:1041A00008F04FC0D62E662309F497CFE51329C037\r\n\
+:1041B000741327C08091380380FD1AC0982F929500\r\n\
+:1041C0009F70B1F0F80185839F3031F09F5F929529\r\n\
+:1041D000907F8F70892B8583C8010E948F1B86E09A\r\n\
+:1041E000F801A3E3B3E001900D928A95E1F736C0A0\r\n\
+:1041F00086E0F801A3E3B3E001900D928A95E1F720\r\n\
+:1042000062C04D875E878D859E850E94AB1E882388\r\n\
+:1042100079F086E0F801A3E3B3E001900D928A956E\r\n\
+:10422000E1F70E941E1F0E94101FDD24D3944BC093\r\n\
+:1042300080913803816080933803C8010E948F1BEE\r\n\
+:1042400042C07E2DF98AE88A89890E94D01EE3E364\r\n\
+:10425000F3E086E0DF011D928A95E9F70E94101FC6\r\n\
+:1042600032C0662309F439CF4D875E878D859E85E0\r\n\
+:104270000E94AB1E882309F430CFCBCF4D875E87D9\r\n\
+:104280008D859E850E94CE23292F22952F7030E0A8\r\n\
+:10429000223031052CF49F7041F0811106C00CC012\r\n\
+:1042A000243031052CF49F7049F4805E883020F072\r\n\
+:1042B000C8010E948F1BCF2CDC2C05C0F801958112\r\n\
+:1042C000907F99F7F9CF8D2D62960FB6F894DEBFE7\r\n\
+:1042D0000FBECDBFDF91CF911F910F91FF90EF9057\r\n\
+:1042E000DF90CF9008951F93CF93DF93CDB7DEB7C4\r\n\
+:1042F0002C970FB6F894DEBF0FBECDBF4F83588703\r\n\
+:1043000069877A878B879C87CE0107960E94861FD4\r\n\
+:104310008823C1F02F8138858A859B85892B31F0D0\r\n\
+:104320003F3F11F080E003C02F3FE1F781E08111B2\r\n\
+:1043300047C04F81588569857A858B859C850E9409\r\n\
+:10434000DF1E3EC086E0FE013796DE011196019029\r\n\
+:104350000D928A95E1F7FF81E8854A855B854115D5\r\n\
+:10436000510531F0EF3F31F481E0FF3F19F403C014\r\n\
+:1043700081E001C080E080FD23C02091020330E095\r\n\
+:10438000C9010196877099276091010370E0861733\r\n\
+:104390009707F1F1F983EA835D834C8396E0929F5E\r\n\
+:1043A000D001939FB00D1124AD5FBC4FFE0131963B\r\n\
+:1043B00001900D929A95E1F7809302030E94EF1EFF\r\n\
+:1043C00016E08091010390910203891779F1189FFB\r\n\
+:1043D000C00111248D5F9C4F0E94861F882331F1FC\r\n\
+:1043E000E09101031E9FF0011124ED5FFC4F40811D\r\n\
+:1043F000518162817381848195810E94DF1E809149\r\n\
+:10440000010390E001968770992780930103D9CF2B\r\n\
+:104410000E94A71E1092020310920103E3E3F3E04F\r\n\
+:1044200086E0DF011D928A95E9F7CACF2C960FB678\r\n\
+:10443000F894DEBF0FBECDBFDF91CF911F910895DD\r\n\
+:10444000EF92FF920F931F93CF93DF93FC0100979E\r\n\
+:1044500009F46FC0F12CEE24E394EF0121968491CE\r\n\
+:10446000843740F4843008F055C0813081F08230C8\r\n\
+:1044700021F15FC0853709F447C0C0F19CE7980F70\r\n\
+:10448000903708F056C08F770E94591B45C08F01A6\r\n\
+:104490000E5F1F4FFE01849190E2980F983050F408\r\n\
+:1044A0008770FE2D01C0FF0F8A95EAF78F2F0E94BB\r\n\
+:1044B000C62415C00E94BA1A14C08F010E5F1F4F88\r\n\
+:1044C000FE01849190E2980F983068F48770FE2D79\r\n\
+:1044D00001C0FF0F8A95EAF78F2F0E94CC240E941B\r\n\
+:1044E000F924E80119C00E94591BFBCFCF010296A5\r\n\
+:1044F000FE01C491CC2361F0EFE9FFE03197F1F7C1\r\n\
+:1045000000C00000C150F6CFCF010296FE01F4902A\r\n\
+:10451000EC0102C00E94BA1A8F2D882341F0EFE906\r\n\
+:10452000FFE03197F1F700C000008150F6CFFE01A7\r\n\
+:1045300094CFDF91CF911F910F91FF90EF9008954D\r\n\
+:10454000089560933D0370933E0380933F039093DF\r\n\
+:1045500040030C94951E0F931F9300913D031091FF\r\n\
+:104560003E0320913F0330914003062B172B282B4D\r\n\
+:10457000392B00933D0310933E0320933F03309368\r\n\
+:1045800040031F910F910C94951E0F931F93009160\r\n\
+:104590003D0310913E0320913F03309140030623D9\r\n\
+:1045A00017232823392300933D0310933E032093C0\r\n\
+:1045B0003F03309340031F910F910C94951E0F936E\r\n\
+:1045C0001F9300913D0310913E0320913F033091D2\r\n\
+:1045D0004003062717272827392700933D03109308\r\n\
+:1045E0003E0320933F03309340031F910F910C949F\r\n\
+:1045F000951E1092390310923A0310923B031092C9\r\n\
+:104600003C030C94951E41E050E060E070E004C073\r\n\
+:10461000440F551F661F771F8A95D2F740933903C1\r\n\
+:1046200050933A0360933B0370933C030C94951EA4\r\n\
+:1046300041E050E060E070E004C0440F551F661F89\r\n\
+:10464000771F8A95D2F78091390390913A03A09110\r\n\
+:104650003B03B0913C03842B952BA62BB72B809367\r\n\
+:10466000390390933A03A0933B03B0933C030C941B\r\n\
+:10467000951E41E050E060E070E004C0440F551F1B\r\n\
+:10468000661F771F8A95D2F7409550956095709573\r\n\
+:104690008091390390913A03A0913B03B0913C0380\r\n\
+:1046A00084239523A623B7238093390390933A0359\r\n\
+:1046B000A0933B03B0933C030C94951E41E050E063\r\n\
+:1046C00060E070E004C0440F551F661F771F8A9595\r\n\
+:1046D000D2F78091390390913A03A0913B03B091B6\r\n\
+:1046E0003C0384279527A627B72780933903909307\r\n\
+:1046F0003A03A0933B03B0933C030C94951E0F9395\r\n\
+:104700001F930091390310913A0320913B0330919C\r\n\
+:104710003C03062B172B282B392B009339031093BE\r\n\
+:104720003A0320933B0330933C031F910F910C9469\r\n\
+:10473000951E0F931F930091390310913A03209116\r\n\
+:104740003B0330913C03062317232823392300938E\r\n\
+:10475000390310933A0320933B0330933C031F919A\r\n\
+:104760000F910C94951E0F931F9300913903109194\r\n\
+:104770003A0320913B0330913C0306271727282753\r\n\
+:1047800039270093390310933A0320933B03309366\r\n\
+:104790003C031F910F910C94951E0895CF92DF92C8\r\n\
+:1047A000EF92FF920F931F93CF93DF93EC01C09092\r\n\
+:1047B0003D03D0903E03E0903F03F0904003809192\r\n\
+:1047C000390390913A03A0913B03B0913C03C82A6E\r\n\
+:1047D000D92AEA2AFB2A0FE110E0B701A601002E30\r\n\
+:1047E00004C076956795579547950A94D2F740FF90\r\n\
+:1047F00007C0BE01802F0E9417268130910539F431\r\n\
+:104800000150110950F7BE0180E00E941726DF9188\r\n\
+:10481000CF911F910F91FF90EF90DF90CF9008956F\r\n\
+:1048200090912001992361F190912101992341F107\r\n\
+:10483000982F9695969596959F3088F4E091220151\r\n\
+:10484000F0912301E90FF11D877021E030E001C0F4\r\n\
+:10485000220F8A95EAF78181822B818308959091B6\r\n\
+:10486000560390FF2DC01F928F938AEB96E09F9383\r\n\
+:104870008F930E9473080F900F900F900F900895E0\r\n\
+:10488000409122015091230120E030E09FEFFA0196\r\n\
+:10489000E20FF31F6281681799F09F3F19F46111CD\r\n\
+:1048A00001C0922F2F5F3F4F2E30310581F79F3F80\r\n\
+:1048B00039F0FA01E90FF11D97FDFA958283089509\r\n\
+:1048C000089590912001992369F1909121019923F4\r\n\
+:1048D00049F1982F9695969596959F3090F4E09192\r\n\
+:1048E0002201F0912301E90FF11D877021E030E0F2\r\n\
+:1048F00001C0220F8A95EAF7209581812823218320\r\n\
+:1049000008959091560390FF1FC01F928F938CE9DA\r\n\
+:1049100096E09F938F930E9473080F900F900F90D3\r\n\
+:104920000F900895409122015091230120E030E042\r\n\
+:10493000FA01E20FF31F9281981301C012822F5FD8\r\n\
+:104940003F4F2E303105A1F7089581E090E0E091CE\r\n\
+:104950002201F0912301E80FF91F108201968031A6\r\n\
+:104960009105A9F7089580915503089590915503F5\r\n\
+:10497000982B909355030895809590915503982313\r\n\
+:104980009093550308951092550308959091540300\r\n\
+:10499000982B9093540308958095909154039823F5\r\n\
+:1049A0009093540308951092540308958093430301\r\n\
+:1049B0000E9414279093420380934103089510921C\r\n\
+:1049C0004303109242031092410308954091220143\r\n\
+:1049D0005091230120E030E080E0FA01E20FF31F64\r\n\
+:1049E000918191118F5F2F5F3F4F2F303105A9F7D4\r\n\
+:1049F0000895E0912201F091230180915503808375\r\n\
+:104A0000E0912201F0912301808190915403892B40\r\n\
+:104A1000808380914303882309F43EC00E941427B9\r\n\
+:104A200020914103309142038217930760F00E9466\r\n\
+:104A300014272091410330914203821B930B8C3247\r\n\
+:104A4000914070F41BC00E941427209141033091C3\r\n\
+:104A5000420320953095280F391F2C32314070F0D9\r\n\
+:104A60008091560380FF08C088ED96E09F938F9356\r\n\
+:104A70000E9473080F900F900E94DF24E0912201A2\r\n\
+:104A8000F0912301808190914303892B80830E94C0\r\n\
+:104A9000E62481110E94DF2480912201909123015C\r\n\
+:104AA0000C943F19CF93DF938D3B60F4883A90F5D7\r\n\
+:104AB000853A38F5843010F5813009F06DC0C1E0D9\r\n\
+:104AC000D0E0B1C0883E98F4803EC0F48F3B09F03E\r\n\
+:104AD00063C00E94A71E2FEF80E792E02150804024\r\n\
+:104AE0009040E1F700C000000E94A6279CC0803FD4\r\n\
+:104AF00008F452C0C82FD0E0D06595C0C82FD0E0D0\r\n\
+:104B000092C0853A09F44BC0863A09F04BC0C2E81E\r\n\
+:104B1000D0E489C0883A09F448C0893A09F448C009\r\n\
+:104B20008A3A09F448C08B3A09F448C08C3A09F42F\r\n\
+:104B300048C08B3B09F448C08C3B09F448C08D3A0F\r\n\
+:104B400009F448C0803B09F448C08E3A09F448C0D3\r\n\
+:104B50008F3A09F448C0813B09F448C0823B09F40C\r\n\
+:104B600048C0833B09F448C0843B09F448C0853BF6\r\n\
+:104B700009F448C0863B09F448C0873B09F448C0A3\r\n\
+:104B8000883B09F448C0893B09F448C08A3B09F0D6\r\n\
+:104B900048C0CAE2D6E447C0C0E0D0E044C0C1E8A3\r\n\
+:104BA000D0E441C0C3E8D0E43EC0C2EED4E43BC090\r\n\
+:104BB000C9EED4E438C0CAEED4E435C0C5EBD4E4C1\r\n\
+:104BC00032C0C6EBD4E42FC0C3EBD4E42CC0C4EB9A\r\n\
+:104BD000D4E429C0C7EBD4E426C0CCECD4E423C091\r\n\
+:104BE000CDECD4E420C0C3E8D5E41DC0CAE8D5E4C8\r\n\
+:104BF0001AC0C2E9D5E417C0C4E9D5E414C0C1E2C3\r\n\
+:104C0000D6E411C0C3E2D6E40EC0C4E2D6E40BC0C1\r\n\
+:104C1000C5E2D6E408C0C6E2D6E405C0C7E2D6E4E1\r\n\
+:104C200002C0C0E0D4E4CE01DF91CF9108950E948C\r\n\
+:104C30007C08803EA8F4803C00F5813309F45CC018\r\n\
+:104C400038F4893209F452C08A3209F45BC05FC07B\r\n\
+:104C50008933B1F08238A1F0853309F441C057C0DF\r\n\
+:104C6000833E41F128F4803E99F0823EB9F04FC076\r\n\
+:104C7000863E31F1873E71F14AC00E948E08089548\r\n\
+:104C80009091670390FD02C091FF41C080EE3FC04C\r\n\
+:104C90008091670380FFFACF89E339C08091670371\r\n\
+:104CA00082FF0CC08091670384FF02C080E02FC0A8\r\n\
+:104CB00083EE2DC08091670382FFF4CF82EE27C080\r\n\
+:104CC0008091670383FF0AC08091670384FDEECF64\r\n\
+:104CD00087EE1DC08091670383FFF6CF86EE17C075\r\n\
+:104CE0008091670385FF06C089E211C08091670348\r\n\
+:104CF00085FFFACF85E30BC08091670386FF06C06E\r\n\
+:104D00008AE205C08091670386FFFACF81E30E94A3\r\n\
+:104D10005225089580E090E0089508959093A101B0\r\n\
+:104D20008093A00108958295982F9C7C96959695E6\r\n\
+:104D3000837344E0849F90011124922B892F8A7AF7\r\n\
+:104D400086959575990F892B089580916C03843011\r\n\
+:104D500009F11092570320E488E190E00FB6F8942F\r\n\
+:104D6000A895809360000FBE2093600083B7817F79\r\n\
+:104D7000846083BF83B7816083BF7894889583B74D\r\n\
+:104D80008E7F83BF88E10FB6F89480936000109205\r\n\
+:104D900060000FBE0895CF930E94D8090E94CF08EB\r\n\
+:104DA0000E94DA09C0E08C2F0E94A409811105C07D\r\n\
+:104DB000CF5FC830C1F780E001C081E0CF91089596\r\n\
+:104DC0000C94A71E1F920F920FB60F9211248F936F\r\n\
+:104DD0009F93AF93BF9380915703811113C080912C\r\n\
+:104DE000580390915903A0915A03B0915B034196E7\r\n\
+:104DF000A11DB11D8093580390935903A0935A03AA\r\n\
+:104E0000B0935B03BF91AF919F918F910F900FBEB5\r\n\
+:104E10000F901F90189582E084BD93E095BD9AEFA6\r\n\
+:104E200097BD80936E0008952FB7F8948091580332\r\n\
+:104E300090915903A0915A03B0915B032FBF08953D\r\n\
+:104E40002FB7F894609158037091590380915A03D9\r\n\
+:104E500090915B032FBF0895CF92DF92EF92FF9264\r\n\
+:104E60000F931F932FB7F894409158035091590313\r\n\
+:104E700060915A0370915B032FBF6A017B01EE249E\r\n\
+:104E8000FF248C0120E030E0C016D106E206F306D4\r\n\
+:104E900010F441505109481B590BCA011F910F9141\r\n\
+:104EA000FF90EF90DF90CF900895CF92DF92EF9236\r\n\
+:104EB000FF920F931F934FB7F894009158031091EE\r\n\
+:104EC000590320915A0330915B034FBF6801790168\r\n\
+:104ED000C61AD70AE80AF90A061717072807390772\r\n\
+:104EE00018F0C701B60106C0C701B60161507109CB\r\n\
+:104EF000810991091F910F91FF90EF90DF90CF9062\r\n\
+:104F000008951F920F920FB60F9211248F939F93C3\r\n\
+:104F1000AF93BF938091580390915903A0915A0386\r\n\
+:104F2000B0915B030196A11DB11D8093580390932E\r\n\
+:104F30005903A0935A03B0935B03BF91AF919F9124\r\n\
+:104F40008F910F900FBE0F901F9018950E947616AC\r\n\
+:104F5000F8942FEF87EA91E6215080409040E1F7E6\r\n\
+:104F600000C0000087E090EBDC0180937503909314\r\n\
+:104F70007603A0937703B09378032CE088E190E068\r\n\
+:104F80000FB6F894A895809360000FBE2093600040\r\n\
+:104F9000FFCFEF92FF920F931F93CF93DF93E82EF3\r\n\
+:104FA000F12C8F2D0E94A409C0E0D0E0082F10E062\r\n\
+:104FB00098010C2E02C0359527950A94E2F720FD42\r\n\
+:104FC00005C02196C830D10599F709C06C2F7F2DF7\r\n\
+:104FD00080E00E947C08E812F4CF81E005C0F394E1\r\n\
+:104FE00088E0F812DECF80E0DF91CF911F910F9122\r\n\
+:104FF000FF90EF900895CF93C82F8CE20E94C927AD\r\n\
+:10500000882321F08C2FCF910C94C92780E0CF9179\r\n\
+:105010000895CF930E945629811102C00E943C2915\r\n\
+:1050200081EF96E00E94DA07C5E6C15049F00E9480\r\n\
+:10503000CF088FE39CE90197F1F700C00000F5CF9E\r\n\
+:105040008AEE96E00E94DA0789E20E94FB2781112E\r\n\
+:1050500011C18AE20E94FB2781110E943C2985E050\r\n\
+:105060000E94FB2781110E94A6270E94612980933C\r\n\
+:10507000560387E00E94FB27882399F18BE10E9469\r\n\
+:10508000FB27882351F09091560391FB882780F9E4\r\n\
+:1050900021E0822780FB91F922C08EE00E94FB274D\r\n\
+:1050A000882351F09091560392FB882780F921E0E4\r\n\
+:1050B000822780FB92F913C080E10E94FB27909128\r\n\
+:1050C0005603882341F093FB882780F921E082274B\r\n\
+:1050D00080FB93F904C0892F809580FB90F9909311\r\n\
+:1050E0005603809156030E9465290E94732980937C\r\n\
+:1050F000670380EE0E94FB27882341F080916703BD\r\n\
+:10510000982F909590FB80F98093670389E30E9424\r\n\
+:10511000FB27882359F09091670391FB882780F93A\r\n\
+:1051200021E0822780FB91F99093670382EE0E9431\r\n\
+:10513000FB27882359F09091670392FB882780F919\r\n\
+:1051400021E0822780FB92F99093670386EE0E940C\r\n\
+:10515000FB27882359F09091670393FB882780F9F8\r\n\
+:1051600021E0822780FB93F99093670383EE0E94EE\r\n\
+:10517000FB27882359F09091670394FB882780F9D7\r\n\
+:1051800021E0822780FB94F99093670385E30E94D6\r\n\
+:10519000FB27882359F09091670395FB882780F9B6\r\n\
+:1051A00021E0822780FB95F99093670381E30E94B9\r\n\
+:1051B000FB27882359F09091670396FB882780F995\r\n\
+:1051C00021E0822780FB96F99093670381E10E949A\r\n\
+:1051D000FB27882359F09091670397FB882780F974\r\n\
+:1051E00021E0822780FB97F9909367038091670302\r\n\
+:1051F0000E9477298091670387FB882780F9809335\r\n\
+:10520000210187E20E94FB27C82F8EE10E94FB2725\r\n\
+:105210008111C2608FE10E94FB278111C46080E28E\r\n\
+:105220000E94FB278111C86081E20E94FB27811147\r\n\
+:10523000C06182E20E94FB278111C06283E20E946A\r\n\
+:10524000FB278111C06484E20E94FB27882311F0B0\r\n\
+:10525000C06802C0CC2329F08C2F0E946E296C2FCD\r\n\
+:1052600003C00E946A29682F70E080E090E0CF912F\r\n\
+:105270000C94A122CF9108956DEE7EEF80E090E036\r\n\
+:105280000E94DC3260E082E090E00E94CE3260E07A\r\n\
+:1052900083E090E00E94CE3260E084E090E00E94E3\r\n\
+:1052A000CE3260E085E090E00C94CE3280E090E079\r\n\
+:1052B0000E94C83221E08D3E9E4F09F020E0822FEF\r\n\
+:1052C000089582E090E00C94C032682F82E090E074\r\n\
+:1052D0000C94CE3283E090E00C94C032682F83E0CF\r\n\
+:1052E00090E00C94CE3284E090E00C94C032682FB1\r\n\
+:1052F00084E090E00C94CE3280915E0380FF0BC07E\r\n\
+:105300006091270185E0689FB0011124759567952C\r\n\
+:10531000759567952AC081FF09C06091270185E0D6\r\n\
+:10532000689FB0011124759567951FC082FF07C063\r\n\
+:105330006091270185E0689FB001112416C040915B\r\n\
+:105340005F034423C9F060912601461788F7209136\r\n\
+:10535000270185E0289F90011124429FC001439FAF\r\n\
+:10536000900D112470E00E9484326038710540F481\r\n\
+:105370006115710539F002C065E070E0862F08956F\r\n\
+:105380008FE7089581E0089580915E0380FF08C053\r\n\
+:105390006091250170E0759567957595679521C0B9\r\n\
+:1053A00081FF06C06091250170E07595679519C071\r\n\
+:1053B00082FF04C06091250170E010C080915F03FE\r\n\
+:1053C0008823C1F0609124018617A0F790912501F0\r\n\
+:1053D000989FC001112470E00E94843260387105EA\r\n\
+:1053E00028F46115710521F0862F08958FE708953F\r\n\
+:1053F00081E0089561E070E0F4CF803F21F40E94E5\r\n\
+:105400007C29819504C0813F29F40E947C298093E6\r\n\
+:1054100062030895823F21F40E947C29819504C093\r\n\
+:10542000833F29F40E947C29809361030895893F7A\r\n\
+:1054300019F40E94C42905C08A3F31F40E94C4298E\r\n\
+:1054400081958093630308958B3F21F40E94C429C2\r\n\
+:10545000819504C08C3F29F40E94C4298093640381\r\n\
+:105460000895843F21F480916003816017C0853FD7\r\n\
+:1054700021F480916003826011C0863F21F4809105\r\n\
+:10548000600384600BC0873F21F4809160038860D3\r\n\
+:1054900005C0883F31F48091600380618093600390\r\n\
+:1054A00008958D3F21F480915E0381600BC08E3F93\r\n\
+:1054B00021F480915E03826005C08F3F29F48091C2\r\n\
+:1054C0005E03846080935E030895803F39F4809189\r\n\
+:1054D000620387FF6CC01092620369C0813F29F4A8\r\n\
+:1054E000809162031816BCF362C090916103823F01\r\n\
+:1054F00029F497FF5CC01092610359C0833F19F4EF\r\n\
+:105500001916CCF354C0893F41F4809163031816F7\r\n\
+:105510000CF04DC0109263034AC08A3F29F4809179\r\n\
+:10552000630387FF44C0F6CF8B3F39F48091640357\r\n\
+:1055300087FF3DC0109264033AC08C3F29F48091EC\r\n\
+:1055400064031816BCF333C0843F21F480916003D8\r\n\
+:105550008E7F17C0853F21F4809160038D7F11C03D\r\n\
+:10556000863F21F4809160038B7F0BC0873F21F43D\r\n\
+:1055700080916003877F05C0883F31F4809160038C\r\n\
+:105580008F7E8093600313C08D3F21F480915E0372\r\n\
+:105590008E7F0BC08E3F21F480915E038D7F05C00E\r\n\
+:1055A0008F3F29F480915E038B7F80935E0380910F\r\n\
+:1055B000610381110EC08091620381110AC0809144\r\n\
+:1055C0006303811106C080916403811102C01092AF\r\n\
+:1055D0005F0308958091560383FF7EC08DE297E0BC\r\n\
+:1055E0000E94DA07809160031F928F9388E297E010\r\n\
+:1055F0009F938F930E94730886E297E00E94DA07D8\r\n\
+:1056000020916103822F992787FD90959F932F9377\r\n\
+:1056100083E297E09F938F930E94730881E297E063\r\n\
+:105620000E94DA0720916203822F992787FD9095C7\r\n\
+:105630009F932F938EE197E09F938F930E9473081F\r\n\
+:105640008CE197E00E94DA0720916303822F99276B\r\n\
+:1056500087FD90959F932F9389E197E09F938F9378\r\n\
+:105660000E94730887E197E00E94DA0720916403A3\r\n\
+:10567000822F992787FD90959F932F9384E197E040\r\n\
+:105680009F938F930E94730881E197E00E94DA074D\r\n\
+:1056900080915F031F928F938EE097E09F938F938B\r\n\
+:1056A0000E9473088CE097E00E94DA0780915E0305\r\n\
+:1056B0001F928F9389E097E09F938F930E947308C6\r\n\
+:1056C00086E097E00E94DA078DB79EB74C960FB63A\r\n\
+:1056D000F8949EBF0FBE8DBF80E693E00E948419B0\r\n\
+:1056E0000E94142790935D0380935C0308951F9399\r\n\
+:1056F000CF93DF9380915C0390915D030E942C27F0\r\n\
+:1057000040915F03442321F02091280130E006C03E\r\n\
+:10571000209129015AE0259F9001112482179307B7\r\n\
+:1057200008F482C08091610310916203D0916303F9\r\n\
+:10573000C0916403811107C0111105C0D11103C0CC\r\n\
+:10574000CC2309F471C04F3F19F04F5F40935F03C2\r\n\
+:10575000181624F40E947C298093610380916103D0\r\n\
+:1057600087FF05C00E947C298195809361031116F3\r\n\
+:1057700024F40E947C29809362038091620387FF56\r\n\
+:1057800005C00E947C29819580936203609161032A\r\n\
+:10579000662339F110916203112319F1772767FD10\r\n\
+:1057A0007095872F972F0E94753123E333E343E3EE\r\n\
+:1057B0005FE30E94D9310E94423160936103612FFF\r\n\
+:1057C000772767FD7095872F972F0E94753123E308\r\n\
+:1057D00033E343E35FE30E94D9310E944231609397\r\n\
+:1057E00062031D1624F40E94C429809363038091F0\r\n\
+:1057F000630387FF05C00E94C429819580936303DA\r\n\
+:105800001C1624F40E94C4298093640380916403CD\r\n\
+:1058100087FF05C00E94C429819580936403DF91AE\r\n\
+:10582000CF911F910C94EA2ADF91CF911F91089597\r\n\
+:10583000E0E6F3E085E0DF011D928A95E9F710923A\r\n\
+:105840005F0310925E03089580E599E00E94DA07F5\r\n\
+:105850001F9281E08F931F9285E08F9382E099E001\r\n\
+:105860009F938F930E9473080F900F900F900F904B\r\n\
+:105870000F900F9008958330E9F128F4813061F0A2\r\n\
+:10588000823009F10895853009F462C008F449C0F6\r\n\
+:10589000863009F474C0089520912901862F90E084\r\n\
+:1058A000820F911D8F3F910520F4620F60932901B3\r\n\
+:1058B00003C08FEF80932901809129011F928F935C\r\n\
+:1058C0008BE398E072C020912801862F90E0820F30\r\n\
+:1058D000911D8F3F910520F4620F6093280103C052\r\n\
+:1058E0008FEF80932801809128011F928F9389E286\r\n\
+:1058F00098E05BC020912701862F90E0820F911DD8\r\n\
+:105900008F3F910520F4620F6093270103C08FEF52\r\n\
+:1059100080932701809127011F928F9386E198E061\r\n\
+:1059200044C020912601862F90E0820F911D8F3F69\r\n\
+:10593000910520F4620F6093260103C08FEF8093DE\r\n\
+:105940002601809126011F928F9381E098E02DC05F\r\n\
+:1059500020912501862F90E0820F911D8F3F9105A8\r\n\
+:1059600020F4620F6093250103C08FEF809325011F\r\n\
+:10597000809125011F928F9388EE97E016C02091A9\r\n\
+:105980002401862F90E0820F911D8F3F910520F416\r\n\
+:10599000620F6093240103C08FEF809324018091F4\r\n\
+:1059A00024011F928F938DEC97E09F938F930E9419\r\n\
+:1059B00073080F900F900F900F900895833081F12E\r\n\
+:1059C00028F4813059F08230D1F00895853009F4FF\r\n\
+:1059D00049C0B8F1863009F456C008958091290174\r\n\
+:1059E000681720F4861B8093290102C010922901B8\r\n\
+:1059F000809129011F928F938EEB97E054C0809184\r\n\
+:105A00002801681720F4861B8093280102C0109299\r\n\
+:105A10002801809128011F928F938CEA97E043C060\r\n\
+:105A200080912701681720F4861B8093270102C00C\r\n\
+:105A300010922701809127011F928F9389E997E0A7\r\n\
+:105A400032C080912601681720F4861B80932601BE\r\n\
+:105A500002C010922601809126011F928F9384E844\r\n\
+:105A600097E021C080912501681720F4861B809360\r\n\
+:105A7000250102C010922501809125011F928F936C\r\n\
+:105A80008BE697E010C080912401681720F4861BF4\r\n\
+:105A90008093240102C010922401809124011F925E\r\n\
+:105AA0008F9380E597E09F938F930E9473080F90E8\r\n\
+:105AB0000F900F900F900895CF93C82F1F928F9340\r\n\
+:105AC00025E53AE03F932F930E94730861E070E070\r\n\
+:105AD00080E090E004C0660F771F881F991FCA9569\r\n\
+:105AE000D2F70E94A1220F900F900F900F90CF91AC\r\n\
+:105AF0000C94A71ECF938B3109F4CBC108F049C099\r\n\
+:105B00008E3009F4D9C100F5873009F4A9C1A8F491\r\n\
+:105B1000863009F05DC280915603817F8E7F80932D\r\n\
+:105B200056038AE59AE00E94DA0782E99EE00E9425\r\n\
+:105B3000DA0781E08093660391C1883009F45BC085\r\n\
+:105B40008B3009F487C144C2813109F429C220F4A1\r\n\
+:105B5000803109F4C4C13CC2863109F4DAC189310B\r\n\
+:105B600009F036C286E09EE00E94DA0789ED9DE0EA\r\n\
+:105B70000E94DA0782EA9DE00E94DA078BE79DE047\r\n\
+:105B80000E94DA0787E29DE00E94DA0789EF9CE035\r\n\
+:105B900063C1853309F416C268F4873209F412C26E\r\n\
+:105BA00028F48E3108F414C28D510FC2893209F4E1\r\n\
+:105BB00009C20EC2833438F48A3308F005C2883330\r\n\
+:105BC00009F448C105C2833409F4FCC1883409F0E2\r\n\
+:105BD000FFC10E94A71E81E89EE00E94DA079FEFA6\r\n\
+:105BE00023ED80E3915020408040E1F700C00000A9\r\n\
+:105BF0000E94A62733C186E99EE00E94DA0789E564\r\n\
+:105C00009CE00E94DA070E946A291F928F9386E522\r\n\
+:105C10009CE09F938F930E94730884E59CE00E9410\r\n\
+:105C2000DA070E946129C82F81E49CE00E94DA070C\r\n\
+:105C30001F92CF932CE33CE03F932F930E94730875\r\n\
+:105C40008AE39CE00E94DA0780E39CE00E94DA0786\r\n\
+:105C50008C2F81701F928F932DE23CE03F932F9306\r\n\
+:105C60000E9473088BE29CE00E94DA0781E29CE0CC\r\n\
+:105C70000E94DA07C1FB882780F91F928F932EE1DB\r\n\
+:105C80003CE03F932F930E9473088CE19CE00E94BC\r\n\
+:105C9000DA0780E19CE00E94DA07C2FB882780F9DE\r\n\
+:105CA0001F928F932DE03CE03F932F930E94730847\r\n\
+:105CB0008BE09CE00E94DA0782E09CE00E94DA0719\r\n\
+:105CC000C3FBCC27C0F91F92CF938FEF9BE09F932C\r\n\
+:105CD0008F930E9473088DEF9BE00E94DA070E9469\r\n\
+:105CE0007329C82F89EE9BE00E94DA071F92CF9399\r\n\
+:105CF00024EE3BE03F932F930E94730882EE9BE0DB\r\n\
+:105D00000E94DA0789EC9BE00E94DA078C2F8170F1\r\n\
+:105D10001F928F9326EC3BE03F932F930E947308D2\r\n\
+:105D20008DB79EB780960FB6F8949EBF0FBE8DBFFD\r\n\
+:105D300084EC9BE00E94DA078DEA9BE00E94DA0780\r\n\
+:105D4000C1FB882780F91F928F932AEA3BE03F939B\r\n\
+:105D50002F930E94730888EA9BE00E94DA0786E985\r\n\
+:105D60009BE00E94DA07C2FB882780F91F928F937D\r\n\
+:105D700023E93BE03F932F930E94730881E99BE066\r\n\
+:105D80000E94DA078FE79BE00E94DA07C3FB8827AF\r\n\
+:105D900080F91F928F932CE73BE03F932F930E9453\r\n\
+:105DA00073088AE79BE00E94DA0780E79BE00E9485\r\n\
+:105DB000DA07C4FB882780F91F928F932DE63BE01A\r\n\
+:105DC0003F932F930E9473088BE69BE00E94DA07B3\r\n\
+:105DD00089E59BE00E94DA07C5FB882780F91F92BE\r\n\
+:105DE0008F9326E53BE03F932F930E94730884E551\r\n\
+:105DF0009BE00E94DA0788E39BE00E94DA07C6FB7B\r\n\
+:105E0000882780F91F928F9325E33BE03F932F93E0\r\n\
+:105E10000E94730883E39BE00E94DA078BE29BE019\r\n\
+:105E20000E94DA07C7FBCC27C0F91F92CF9388E204\r\n\
+:105E30009BE09F938F930E94730886E29BE00E94F1\r\n\
+:105E4000DA078DB79EB74C960FB6F8949EBF0FBE7B\r\n\
+:105E50008DBF04C081E89AE00E94DA07C1E0BDC0AE\r\n\
+:105E600080915603C82FC17080FF09C084E79EE06F\r\n\
+:105E70000E94DA0780915603817F8E7F44C088E6B6\r\n\
+:105E80009EE00E94DA07809156038160809356035A\r\n\
+:105E9000E5CF8091560381FBCC27C0F991E0C9275B\r\n\
+:105EA000C0FB81F980935603CC2319F08BE59EE06B\r\n\
+:105EB00025C08DE49EE0D0CF8091560382FBCC2795\r\n\
+:105EC000C0F991E0C927C0FB82F980935603CC2327\r\n\
+:105ED00019F08EE39EE012C08EE29EE0BDCF80916D\r\n\
+:105EE000560383FBCC27C0F991E0C927C0FB83F997\r\n\
+:105EF00080935603CC2351F082E29EE00E94DA07A1\r\n\
+:105F00008091560381608093560367C085E19EE0CF\r\n\
+:105F1000A3CF8BEE9CE00E94DA070E9433191F92F8\r\n\
+:105F20008F9381ED9CE09F938F930E9473088091E3\r\n\
+:105F300020011F928F938AEB9CE09F938F930E9486\r\n\
+:105F400073088091F1021F928F9387EA9CE09F93E0\r\n\
+:105F50008F930E947308809121011F928F9384E98F\r\n\
+:105F60009CE09F938F930E947308809158039091B7\r\n\
+:105F70005903A0915A03B0915B03BF93AF939F93D2\r\n\
+:105F80008F9380E89CE09F938F930E9473088DB756\r\n\
+:105F90009EB746960FB6F8949EBF0FBE8DBF5ECFDC\r\n\
+:105FA0000E94A71EC091210181E0C827C093210152\r\n\
+:105FB000CC2329F086E79CE00E94DA070EC08BE62E\r\n\
+:105FC0009CE04ACF80E001C089530E945C2D46CFFF\r\n\
+:105FD00089E69CE00E94DA07C0E08C2FCF910895FB\r\n\
+:105FE000CF93C82F80916603813071F020F082300A\r\n\
+:105FF00009F448C03FC1A0912201B09123018C91C6\r\n\
+:10600000823209F039C107C0A0912201B091230169\r\n\
+:106010008C91823249F48C2F0E94080D81112FC07F\r\n\
+:106020008C2F0E947A2D2CC08C2F0E94350F81114D\r\n\
+:1060300026C0C431E1F070F4CB3081F0C031D1F42E\r\n\
+:106040000E94242C8DE49AE00E94DA0782E080937B\r\n\
+:10605000660315C0C93259F0C83361F48AE59AE085\r\n\
+:106060000E94DA0781E59AE00E94DA0708C01092E0\r\n\
+:10607000660304C18BE49AE00E94DA07FFC081E066\r\n\
+:106080008170FEC0C43228F5CE3108F0C1C0CB30DB\r\n\
+:10609000A1F1D0F4C73009F0D3C08EE1809329017B\r\n\
+:1060A00082E3809328018AE08093270184E1809332\r\n\
+:1060B000260188E08093250188E28093240181EF06\r\n\
+:1060C00098E00E94DA07BFC0C33149F1C431C1F082\r\n\
+:1060D000B7C0CB3409F4A9C028F4C93289F0C83359\r\n\
+:1060E00061F0AEC0C13509F49EC0C23509F499C053\r\n\
+:1060F000CE3409F0A5C06AE09EC00E94242CA3C043\r\n\
+:1061000080916503882319F0109265039CC08EEF7F\r\n\
+:1061100098E00E94DA0781E080936603B1C088EDC1\r\n\
+:1061200098E00E94DA0786EC98E00E94DA078091F6\r\n\
+:1061300029011F928F9383EC98E09F938F930E9485\r\n\
+:10614000730881EC98E00E94DA078FEA98E00E94D9\r\n\
+:10615000DA07809128011F928F938CEA98E09F9331\r\n\
+:106160008F930E9473088AEA98E00E94DA078BE90D\r\n\
+:1061700098E00E94DA07809127011F928F9388E9A7\r\n\
+:1061800098E09F938F930E94730886E998E00E949D\r\n\
+:10619000DA0785E898E00E94DA07809126011F92CD\r\n\
+:1061A0008F9382E898E09F938F930E94730880E812\r\n\
+:1061B00098E00E94DA078BE698E00E94DA07809167\r\n\
+:1061C00025011F928F9388E698E09F938F930E94FA\r\n\
+:1061D000730886E698E00E94DA078FE498E00E9450\r\n\
+:1061E000DA07809124011F928F938CE498E09F93AB\r\n\
+:1061F0008F930E9473088AE498E00E94DA078DB7B3\r\n\
+:106200009EB748960FB6F8949EBF0FBE8DBF1BC0B9\r\n\
+:10621000CE51EC2FF0E0EA56FE4F8081809365036B\r\n\
+:1062200012C061E003C061E006C06AE080916503CE\r\n\
+:106230000E943B2C08C0809165030E94DE2C03C0A5\r\n\
+:106240008FEE98E013C080916503882369F01F9258\r\n\
+:106250008F9389EE98E09F938F930E9473080F901D\r\n\
+:106260000F900F900F9004C086EE98E00E94DA071E\r\n\
+:1062700081E006C01092660380E002C080E000CF9B\r\n\
+:10628000CF91089504D06894B1118DC0089570D055\r\n\
+:1062900088F09F5790F0B92F9927B751A0F0D1F00F\r\n\
+:1062A000660F771F881F991F1AF0BA95C9F712C099\r\n\
+:1062B000B13081F077D0B1E0089574C0672F782FA6\r\n\
+:1062C0008827B85F39F0B93FCCF386957795679505\r\n\
+:1062D000B395D9F73EF490958095709561957F4F71\r\n\
+:1062E0008F4F9F4F0895E89409C097FB3EF4909517\r\n\
+:1062F0008095709561957F4F8F4F9F4F9923A9F09F\r\n\
+:10630000F92F96E9BB279395F6958795779567952D\r\n\
+:10631000B795F111F8CFFAF4BB0F11F460FF1BC071\r\n\
+:106320006F5F7F4F8F4F9F4F16C0882311F096E904\r\n\
+:1063300011C0772321F09EE8872F762F05C06623B2\r\n\
+:1063400071F096E8862F70E060E02AF09A95660F6B\r\n\
+:10635000771F881FDAF7880F9695879597F9089524\r\n\
+:1063600057FD9058440F551F59F05F3F71F0479506\r\n\
+:10637000880F97FB991F61F09F3F79F087950895EB\r\n\
+:10638000121613061406551FF2CF4695F1DF08C00A\r\n\
+:10639000161617061806991FF1CF86957105610527\r\n\
+:1063A00008940895E894BB2766277727CB0197F9CF\r\n\
+:1063B00008950BD078C069D028F06ED018F09523DE\r\n\
+:1063C00009F05AC05FC01124EECFCADFA0F3959F39\r\n\
+:1063D000D1F3950F50E0551F629FF001729FBB27CC\r\n\
+:1063E000F00DB11D639FAA27F00DB11DAA1F649F78\r\n\
+:1063F0006627B00DA11D661F829F2227B00DA11D2B\r\n\
+:10640000621F739FB00DA11D621F839FA00D611DB0\r\n\
+:10641000221F749F3327A00D611D231F849F600DD1\r\n\
+:10642000211D822F762F6A2F11249F5750408AF00A\r\n\
+:10643000E1F088234AF0EE0FFF1FBB1F661F771F96\r\n\
+:10644000881F91505040A9F79E3F510570F014C02D\r\n\
+:10645000AACF5F3FECF3983EDCF38695779567957E\r\n\
+:10646000B795F795E7959F5FC1F7FE2B880F911DB4\r\n\
+:106470009695879597F9089597F99F6780E870E05A\r\n\
+:1064800060E008959FEF80EC089500240A941616AA\r\n\
+:10649000170618060906089500240A941216130612\r\n\
+:1064A000140605060895092E0394000C11F48823A0\r\n\
+:1064B00052F0BB0F40F4BF2B11F460FF04C06F5FBC\r\n\
+:1064C0007F4F8F4F9F4F0895991B79E004C0991F0C\r\n\
+:1064D000961708F0961B881F7A95C9F7809508953E\r\n\
+:1064E000AA1BBB1B51E107C0AA1FBB1FA617B707FA\r\n\
+:1064F00010F0A61BB70B881F991F5A95A9F7809516\r\n\
+:106500009095BC01CD01089597FB072E16F40094D9\r\n\
+:1065100007D077FD09D00E94703207FC05D03EF409\r\n\
+:10652000909581959F4F0895709561957F4F08953F\r\n\
+:10653000A1E21A2EAA1BBB1BFD010DC0AA1FBB1F87\r\n\
+:10654000EE1FFF1FA217B307E407F50720F0A21BF9\r\n\
+:10655000B30BE40BF50B661F771F881F991F1A9466\r\n\
+:1065600069F760957095809590959B01AC01BD0190\r\n\
+:10657000CF010895EE0FFF1F0590F491E02D0994CF\r\n\
+:10658000F999FECF92BD81BDF89A992780B50895FB\r\n\
+:10659000A8E1B0E042E050E00C94E332262FF999F4\r\n\
+:1065A000FECF1FBA92BD81BD20BD0FB6F894FA9AF6\r\n\
+:1065B000F99A0FBE019608950E94CE32272F0C94AF\r\n\
+:1065C000CF32DC01CB01FC01F999FECF06C0F2BD50\r\n\
+:1065D000E1BDF89A319600B40D9241505040B8F7A1\r\n\
+:0665E0000895F894FFCFBE\r\n\
+:1065E600640A670A680A690A6A0A600ADA0AC00A55\r\n\
+:1065F600630A6B0A0A01FE11EF12CC129812651299\r\n\
+:10660600010144032808140A321E524E2D3432006A\r\n\
+:106616004C554641004F4646004F4E00434F4E4EA6\r\n\
+:1066260000506F776572656400556E6174746163BE\r\n\
+:106636006865640044656661756C740041646472E3\r\n\
+:10664600657373656400436F6E666967757265642A\r\n\
+:10665600003F0053757370656E646564003F4D3688\r\n\
+:1066660020392906DC05A60586054D05C004D90492\r\n\
+:10667600F2040B052B0501020304050607080900B1\r\n\
+";
+ }
}
diff --git a/editor/hhkb/index.html b/editor/hhkb/index.html
index 91b2f682..99e56caa 100644
--- a/editor/hhkb/index.html
+++ b/editor/hhkb/index.html
@@ -2,203 +2,14 @@
TMK Keymap Editor
+
-
+
+
+
+
-
-
-
@@ -212,7 +23,6 @@ How to edit keymap
Select keycode to assign to the key
Download firmware
-See this for detailed description of keymap.
Keyboard
-
+
-
-
Esc
-
1
-
2
-
3
-
4
-
5
-
6
-
7
-
8
-
9
-
0
-
-
-
=
-
\
-
`
+
Esc
+
1
+
2
+
3
+
4
+
5
+
6
+
7
+
8
+
9
+
0
+
-
+
=
+
\
+
`
-
Tab
-
Q
-
W
-
E
-
R
-
T
-
Y
-
U
-
I
-
O
-
P
-
[
-
]
-
BSpc
+
Tab
+
Q
+
W
+
E
+
R
+
T
+
Y
+
U
+
I
+
O
+
P
+
[
+
]
+
BSpc
-
Ctrl
-
A
-
S
-
D
-
F
-
G
-
H
-
J
-
K
-
L
-
;
-
'
-
Enter
+
Ctrl
+
A
+
S
+
D
+
F
+
G
+
H
+
J
+
K
+
L
+
;
+
'
+
Enter
-
Shift
-
Z
-
X
-
C
-
V
-
B
-
N
-
M
-
,
-
.
-
/
-
Shift
-
Fn
+
Shift
+
Z
+
X
+
C
+
V
+
B
+
N
+
M
+
,
+
.
+
/
+
Shift
+
Fn
-
LGui
-
RAlt
-
Space
-
RAlt
-
RGui
+
LGui
+
RAlt
+
Space
+
RAlt
+
RGui
-
@@ -407,6 +216,10 @@ See RALT
+
+ See this for detailed description of keymap.
+ See this for TRNS.
+
@@ -579,6 +392,8 @@ See
+
+
Application:
@@ -598,8 +413,6 @@ See
-
@@ -689,23 +502,29 @@ See this for detail of Layer Switching.
See this for Tap key(Dual-role Modifier).
- See this for OneShot Modifier.
-
+ See this for OneShot Modifier.
+
Firmware Hex File Download:
+Select(USB or BT):
+
+
Share URL:
-
+
Keymap Output(for debug):
-
+
diff --git a/editor/hhkb/keymap_editor.js b/editor/hhkb/keymap_editor.js
deleted file mode 100644
index 66c3992f..00000000
--- a/editor/hhkb/keymap_editor.js
+++ /dev/null
@@ -1,527 +0,0 @@
-/*
- * TMK keymap editor
- */
-
-/*
- * Share URL
- */
-function encode_keymap(keymap)
-{
- return window.btoa(JSON.stringify(keymap));
-}
-
-function decode_keymap(hash)
-{
- try {
- return JSON.parse(window.atob(hash));
- } catch (err) {
- return null;
- }
-}
-
-/*
- * Hex file
- */
-function hexstr2(b)
-{
- return ('0'+ b.toString(16)).substr(-2).toUpperCase();
-}
-
-function hex_line(address, record_type, data)
-{
- var sum = 0;
- sum += data.length;
- sum += (address >> 8);
- sum += (address & 0xff);
- sum += record_type;
-
- var line = '';
- line += ':';
- line += hexstr2(data.length);
- line += hexstr2(address >> 8);
- line += hexstr2(address & 0xff);
- line += hexstr2(record_type);
- for (var i = 0; i < data.length; i++) {
- sum = (sum + data[i]);
- line += hexstr2(data[i]);
- }
- line += hexstr2((~sum + 1)&0xff); // Checksum
- line +="\r\n";
- return line;
-}
-
-function hex_eof()
-{
- return ":00000001FF\r\n";
-}
-
-/*
-function flatten(array)
-{
-};
-*/
-
-function hex_output(address, data) {
- var output = '';
- var line = [];
-
- // TODO: refine: flatten data into one dimension array
- [].concat.apply([], [].concat.apply([], data)).forEach(function(e) {
- line.push(e);
- if (line.length == 16) {
- output += hex_line(address, 0x00, line);
- address += 16;
- line.length = 0; // clear array
- }
- });
- if (line.length > 0) {
- output += hex_line(address, 0x00, line);
- }
- return output;
-}
-
-
-
-/*
- * Source file
- */
-function source_output(keymaps) {
- var output = '';
- // fn actions
- output += "/*\n";
- output += " * Keymap for " + KEYBOARD_ID + "\n";;
- output += " * generated by tmk keymap editor\n";
- output += " */\n";
- output += "#include \n";
- output += "#include \n";
- output += "#include \n";
- output += "#include \"keycode.h\"\n";
- output += "#include \"action.h\"\n";
- output += "#include \"action_macro.h\"\n";
- output += "#include \"keymap.h\"\n\n";
-
- output += "#ifdef KEYMAP_SECTION\n";
- output += "const uint16_t fn_actions[] __attribute__ ((section (\".keymap.fn_actions\"))) = {\n";
- output += "#else\n";
- output += "static const uint16_t fn_actions[] PROGMEM = {\n";
- output += "#endif\n";
- output += " [0] = ACTION_LAYER_MOMENTARY(1),\n";
- output += " [1] = ACTION_LAYER_MOMENTARY(2),\n";
- output += " [2] = ACTION_LAYER_MOMENTARY(3),\n";
- output += " [3] = ACTION_LAYER_MOMENTARY(4),\n";
- output += " [4] = ACTION_LAYER_MOMENTARY(5),\n";
- output += " [5] = ACTION_LAYER_MOMENTARY(6),\n";
- output += " [6] = ACTION_LAYER_MOMENTARY(7),\n";
- output += " [7] = ACTION_LAYER_TOGGLE(1),\n";
- output += " [8] = ACTION_LAYER_TOGGLE(2),\n";
- output += " [9] = ACTION_LAYER_TOGGLE(3),\n";
- output += " [10] = ACTION_LAYER_TAP_TOGGLE(1),\n";
- output += " [11] = ACTION_LAYER_TAP_TOGGLE(2),\n";
- output += " [12] = ACTION_LAYER_TAP_TOGGLE(3),\n";
- output += " [13] = ACTION_LAYER_TAP_KEY(1, KC_A),\n";
- output += " [14] = ACTION_LAYER_TAP_KEY(2, KC_F),\n";
- output += " [15] = ACTION_LAYER_TAP_KEY(3, KC_J),\n";
- output += " [16] = ACTION_LAYER_TAP_KEY(4, KC_SPACE),\n";
- output += " [17] = ACTION_LAYER_TAP_KEY(5, KC_SCOLON),\n";
- output += " [18] = ACTION_LAYER_TAP_KEY(6, KC_QUOTE),\n";
- output += " [19] = ACTION_LAYER_TAP_KEY(7, KC_SLASH),\n";
- output += " [20] = ACTION_MODS_TAP_KEY(MOD_LSFT, KC_SPACE),\n";
- output += " [21] = ACTION_MODS_TAP_KEY(MOD_LCTL, KC_SPACE),\n";
- output += " [22] = ACTION_MODS_TAP_KEY(MOD_RCTL, KC_QUOTE),\n";
- output += " [23] = ACTION_MODS_TAP_KEY(MOD_RCTL, KC_ENTER),\n";
- output += " [24] = ACTION_MODS_TAP_KEY(MOD_LCTL, KC_ESC),\n";
- output += " [25] = ACTION_MODS_TAP_KEY(MOD_LCTL, KC_BSPACE),\n";
- output += " [26] = ACTION_MODS_ONESHOT(MOD_LCTL),\n";
- output += " [27] = ACTION_MODS_TAP_KEY(MOD_LSFT, KC_ESC),\n";
- output += " [28] = ACTION_MODS_TAP_KEY(MOD_LSFT, KC_BSPACE),\n";
- output += " [29] = ACTION_MODS_ONESHOT(MOD_LSFT),\n";
- output += " [30] = ACTION_MODS_TAP_KEY(MOD_RSFT, KC_GRAVE),\n";
- output += " [31] = ACTION_MODS_TAP_KEY(MOD_RSFT, KC_BSLASH),\n";
- output += "};\n\n";
-
- // keymaps
- output += "#ifdef KEYMAP_SECTION\n";
- output += "const uint8_t keymaps[][";
- output += keymaps[0].length; // row
- output += "][";
- output += keymaps[0][0].length; // col
- output += "] __attribute__ ((section (\".keymap.keymaps\"))) = {\n";
- output += "#else\n";
- output += "static const uint8_t keymaps[][";
- output += keymaps[0].length; // row
- output += "][";
- output += keymaps[0][0].length; // col
- output += "] PROGMEM = {\n";
- output += "#endif\n";
- for (var i in keymaps) {
- output += " {\n";
- for (var j in keymaps[i]) {
- output += " { ";
- for (var k in keymaps[i][j]) {
- output += '0x' + ('0' + keymaps[i][j][k].toString(16)).substr(-2);
- output += ',';
- }
- output += " },\n";
- }
- output += " },\n";
- }
- output += "};\n\n";
- output += "/* translates key to keycode */\n";
- output += "uint8_t keymap_key_to_keycode(uint8_t layer, key_t key)\n";
- output += "{\n";
- output += " return pgm_read_byte(&keymaps[(layer)][(key.row)][(key.col)]);\n";
- output += "}\n";
- output += "\n";
- output += "/* translates Fn index to action */\n";
- output += "action_t keymap_fn_to_action(uint8_t keycode)\n";
- output += "{\n";
- output += " action_t action;\n";
- output += " if (FN_INDEX(keycode) < sizeof(fn_actions) / sizeof(fn_actions[0])) {\n";
- output += " action.code = pgm_read_word(&fn_actions[FN_INDEX(keycode)]);\n";
- output += " } else {\n";
- output += " action.code = ACTION_NO;\n";
- output += " }\n";
- output += " return action;\n";
- output += "}\n";
- return output;
-};
-
-
-
-/*
- * keycodes
- */
-var code_display = [
- // {id, name(text), description(tooltip)}
- {id: 'NO ', name: 'NO', desc: 'No action'},
- {id: 'TRNS', name: 'TRNS', desc: 'Transparent'},
- {id: 'POST_FAIL', name: 'POST_FAIL', desc: 'POST_FAIL'},
- {id: 'UNDEFINED', name: 'UNDEFINED', desc: 'UNDEFINED'},
- {id: 'A', name: 'A', desc: 'A'},
- {id: 'B', name: 'B', desc: 'B'},
- {id: 'C', name: 'C', desc: 'C'},
- {id: 'D', name: 'D', desc: 'D'},
- {id: 'E', name: 'E', desc: 'E'},
- {id: 'F', name: 'F', desc: 'F'},
- {id: 'G', name: 'G', desc: 'G'},
- {id: 'H', name: 'H', desc: 'H'},
- {id: 'I', name: 'I', desc: 'I'},
- {id: 'J', name: 'J', desc: 'J'},
- {id: 'K', name: 'K', desc: 'K'},
- {id: 'L', name: 'L', desc: 'L'},
- {id: 'M', name: 'M', desc: 'M'},
- {id: 'N', name: 'N', desc: 'N'},
- {id: 'O', name: 'O', desc: 'O'},
- {id: 'P', name: 'P', desc: 'P'},
- {id: 'Q', name: 'Q', desc: 'Q'},
- {id: 'R', name: 'R', desc: 'R'},
- {id: 'S', name: 'S', desc: 'S'},
- {id: 'T', name: 'T', desc: 'T'},
- {id: 'U', name: 'U', desc: 'U'},
- {id: 'V', name: 'V', desc: 'V'},
- {id: 'W', name: 'W', desc: 'W'},
- {id: 'X', name: 'X', desc: 'X'},
- {id: 'Y', name: 'Y', desc: 'Y'},
- {id: 'Z', name: 'Z', desc: 'Z'},
- {id: '1', name: '1', desc: '1'},
- {id: '2', name: '2', desc: '2'},
- {id: '3', name: '3', desc: '3'},
- {id: '4', name: '4', desc: '4'},
- {id: '5', name: '5', desc: '5'},
- {id: '6', name: '6', desc: '6'},
- {id: '7', name: '7', desc: '7'},
- {id: '8', name: '8', desc: '8'},
- {id: '9', name: '9', desc: '9'},
- {id: '0', name: '0', desc: '0'},
- {id: 'ENT', name: 'Enter', desc: 'ENTER'},
- {id: 'ESC', name: 'Esc', desc: 'Escape'},
- {id: 'BSPC', name: 'Back space', desc: 'Backspace'},
- {id: 'TAB', name: 'Tab', desc: 'Tab'},
- {id: 'SPC', name: 'Space', desc: 'Space'},
- {id: 'MINS', name: '-', desc: 'MINUS'},
- {id: 'EQL', name: '=', desc: 'EQUAL'},
- {id: 'LBRC', name: '[', desc: 'Left Bracket'},
- {id: 'RBRC', name: ']', desc: 'Right Bracket'},
- {id: 'BSLS', name: "\\", desc: 'Backslash'},
- {id: 'NUHS', name: 'ISO #', desc: 'Non-US Hash'},
- {id: 'SCLN', name: ';', desc: 'Semicolon'},
- {id: 'QUOT', name: "'", desc: 'Quote'},
- {id: 'GRV ', name: '`', desc: 'Grave'},
- {id: 'COMM', name: ',', desc: 'Comma'},
- {id: 'DOT ', name: '.', desc: 'Dot'},
- {id: 'SLSH', name: '/', desc: 'Slash'},
- {id: 'CAPS', name: 'Caps Lock', desc: 'Need this? Sure? :)'},
- {id: 'F1 ', name: 'F1', desc: 'F1'},
- {id: 'F2 ', name: 'F2', desc: 'F2'},
- {id: 'F3 ', name: 'F3', desc: 'F3'},
- {id: 'F4 ', name: 'F4', desc: 'F4'},
- {id: 'F5 ', name: 'F5', desc: 'F5'},
- {id: 'F6 ', name: 'F6', desc: 'F6'},
- {id: 'F7 ', name: 'F7', desc: 'F7'},
- {id: 'F8 ', name: 'F8', desc: 'F8'},
- {id: 'F9 ', name: 'F9', desc: 'F9'},
- {id: 'F10 ', name: 'F10', desc: 'F10'},
- {id: 'F11 ', name: 'F11', desc: 'F11'},
- {id: 'F12 ', name: 'F12', desc: 'F12'},
- {id: 'PSCR', name: 'Print Screen', desc: 'Print Screen'},
- {id: 'SLCK', name: 'Scroll Lock', desc: 'Scroll Lock'},
- {id: 'PAUS', name: 'Pause', desc: 'Pause'},
- {id: 'INS ', name: 'Insert', desc: 'Insert'},
- {id: 'HOME', name: 'Home', desc: 'Home'},
- {id: 'PGUP', name: 'Page Up', desc: 'Page Up'},
- {id: 'DEL ', name: 'Delete', desc: 'Delete'},
- {id: 'END ', name: 'End', desc: 'End'},
- {id: 'PGDN', name: 'Page Down', desc: 'Page Down'},
- {id: 'RGHT', name: '\u2192', desc: 'Right'},
- {id: 'LEFT', name: '\u2190', desc: 'Left'},
- {id: 'DOWN', name: '\u2193', desc: 'Down'},
- {id: 'UP ', name: '\u2191', desc: 'Up'},
- {id: 'NLCK', name: 'Num Lock', desc: 'Num Lock'},
- {id: 'PSLS', name: 'P/', desc: 'Keypad Slash'},
- {id: 'PAST', name: 'P*', desc: 'Keypad Asterisk'},
- {id: 'PMNS', name: 'P-', desc: 'Keypad Minus'},
- {id: 'PPLS', name: 'P+', desc: 'Keypad Plus'},
- {id: 'PENT', name: 'P\u21A9', desc: 'Keypad Enter'},
- {id: 'P1 ', name: 'P1', desc: 'Keypad 1'},
- {id: 'P2 ', name: 'P2', desc: 'Keypad 2'},
- {id: 'P3 ', name: 'P3', desc: 'Keypad 3'},
- {id: 'P4 ', name: 'P4', desc: 'Keypad 4'},
- {id: 'P5 ', name: 'P5', desc: 'Keypad 5'},
- {id: 'P6 ', name: 'P6', desc: 'Keypad 6'},
- {id: 'P7 ', name: 'P7', desc: 'Keypad 7'},
- {id: 'P8 ', name: 'P8', desc: 'Keypad 8'},
- {id: 'P9 ', name: 'P9', desc: 'Keypad 9'},
- {id: 'P0 ', name: 'P0', desc: 'Keypad 0'},
- {id: 'PDOT', name: 'P.', desc: 'Keypad Dot'},
- {id: 'NUBS', name: 'ISO \\', desc: 'Non-US Backslash'},
- {id: 'APP ', name: 'Application', desc: 'Application'},
- {id: 'POWER', name: '_Power', desc: 'Power(Not work on Windows)'},
- {id: 'PEQL', name: 'P=', desc: 'Keymapd Equal'},
- {id: 'F13 ', name: 'F13', desc: 'F13'},
- {id: 'F14 ', name: 'F14', desc: 'F14'},
- {id: 'F15 ', name: 'F15', desc: 'F15'},
- {id: 'F16 ', name: 'F16', desc: 'F16'},
- {id: 'F17 ', name: 'F17', desc: 'F17'},
- {id: 'F18 ', name: 'F18', desc: 'F18'},
- {id: 'F19 ', name: 'F19', desc: 'F19'},
- {id: 'F20 ', name: 'F20', desc: 'F20'},
- {id: 'F21 ', name: 'F21', desc: 'F21'},
- {id: 'F22 ', name: 'F22', desc: 'F22'},
- {id: 'F23 ', name: 'F23', desc: 'F23'},
- {id: 'F24 ', name: 'F24', desc: 'F24'},
- {id: 'EXECUTE', name: 'EXECUTE', desc: 'EXECUTE'},
- {id: 'HELP', name: 'HELP', desc: 'HELP'},
- {id: 'MENU', name: 'MENU', desc: 'MENU'},
- {id: 'SELECT', name: 'SELECT', desc: 'SELECT'},
- {id: 'STOP', name: 'STOP', desc: 'STOP'},
- {id: 'AGAIN', name: 'AGAIN', desc: 'AGAIN'},
- {id: 'UNDO', name: 'UNDO', desc: 'UNDO'},
- {id: 'CUT', name: 'CUT', desc: 'CUT'},
- {id: 'COPY', name: 'COPY', desc: 'COPY'},
- {id: 'PASTE', name: 'PASTE', desc: 'PASTE'},
- {id: 'FIND', name: 'FIND', desc: 'FIND'},
- {id: '_MUTE', name: '_MUTE', desc: '_MUTE(Not work on Windows)'},
- {id: '_VOLUP', name: '_VOLUP', desc: '_VOLUP(Not work on Windows)'},
- {id: '_VOLDOWN', name: '_VOLDOWN', desc: '_VOLDOWN(Not work on Windows)'},
- {id: 'LCAP', name: 'Locking Caps Lock', desc: 'Locking Caps Lock'},
- {id: 'LNUM', name: 'Locking Num Lock', desc: 'Locking Num Lock'},
- {id: 'LSCR', name: 'Locking Scroll Lock', desc: 'Locking Scroll Lock'},
- {id: 'PCMM', name: 'P,', desc: 'Keypad Comma'},
- {id: 'KP_EQUAL_AS400', name: 'P= (AS400)', desc: 'Keypad Equal (AS400)'},
- {id: 'INT1', name: '\u308D', desc: 'Japanese RO'},
- {id: 'INT2', name: '\u3072\u3089\u304c\u306a', desc: 'Japanese Hiragana'},
- {id: 'INT3', name: '\uffe5', desc: 'Japanese Yen'},
- {id: 'INT4', name: '\u5909\u63db', desc: 'Japanese Henkan'},
- {id: 'INT5', name: '\u7121\u5909\u63db', desc: 'Japanese Muhenkan'},
- {id: 'INT6', name: 'INT6', desc: 'INT6'},
- {id: 'INT7', name: 'INT7', desc: 'INT7'},
- {id: 'INT8', name: 'INT8', desc: 'INT8'},
- {id: 'INT9', name: 'INT9', desc: 'INT9'},
- {id: 'LANG1', name: '\ud55c/\uc601', desc: 'Korean Hangul/English'},
- {id: 'LANG2', name: '\ud55c\uc790', desc: 'Korean Hanja'},
- {id: 'LANG3', name: 'LANG3', desc: 'LANG3'},
- {id: 'LANG4', name: 'LANG4', desc: 'LANG4'},
- {id: 'LANG5', name: 'LANG5', desc: 'LANG5'},
- {id: 'LANG6', name: 'LANG6', desc: 'LANG6'},
- {id: 'LANG7', name: 'LANG7', desc: 'LANG7'},
- {id: 'LANG8', name: 'LANG8', desc: 'LANG8'},
- {id: 'LANG9', name: 'LANG9', desc: 'LANG9'},
- {id: 'ALT_ERASE', name: 'ALT_ERASE', desc: 'ALT_ERASE'},
- {id: 'SYSREQ', name: 'SYSREQ', desc: 'SYSREQ'},
- {id: 'CANCEL', name: 'CANCEL', desc: 'CANCEL'},
- {id: 'CLEAR', name: 'CLEAR', desc: 'CLEAR'},
- {id: 'PRIOR', name: 'PRIOR', desc: 'PRIOR'},
- {id: 'RETURN', name: 'RETURN', desc: 'RETURN'},
- {id: 'SEPARATOR', name: 'SEPARATOR', desc: 'SEPARATOR'},
- {id: 'OUT', name: 'OUT', desc: 'OUT'},
- {id: 'OPER', name: 'OPER', desc: 'OPER'},
- {id: 'CLEAR_AGAIN', name: 'CLEAR_AGAIN', desc: 'CLEAR_AGAIN'},
- {id: 'CRSEL', name: 'CRSEL', desc: 'CRSEL'},
- {id: 'EXSEL', name: 'EXSEL', desc: 'EXSEL'},
-
- /* System & Media key 165-191(0xa5-bf) */
- {id: 'PWR ', name: 'Sys Power', desc: 'System Power'},
- {id: 'SLEP', name: 'Sys Sleep', desc: 'System Sleep'},
- {id: 'WAKE', name: 'Sys Wake', desc: 'System Wake'},
- {id: 'MUTE', name: 'Mute', desc: 'Audio Mute'},
- {id: 'VOLU', name: 'Vol Up', desc: 'Audio Vol Up'},
- {id: 'VOLD', name: 'Vol Down', desc: 'Audio Vol Down'},
- {id: 'MNXT', name: 'Next Track', desc: 'Next Track'},
- {id: 'MPRV', name: 'Prev Track', desc: 'Previous Track'},
- {id: 'MSTP', name: 'Stop', desc: 'Media Stop'},
- {id: 'MPLY', name: 'Play Pause', desc: 'Play Pause'},
- {id: 'MSEL', name: 'Select', desc: 'Media Select'},
- {id: 'EJCT', name: 'Eject', desc: 'Media Eject'},
- {id: 'MAIL', name: 'Mail', desc: 'Mail'},
- {id: 'CALC', name: 'Calc', desc: 'Calculator'},
- {id: 'MYCM', name: 'My Computer', desc: 'My Computer'},
- {id: 'WSCH', name: 'Web Search', desc: 'WWW Search'},
- {id: 'WHOM', name: 'Web Home', desc: 'WWW Home'},
- {id: 'WBAK', name: 'Web Back', desc: 'WWW Back'},
- {id: 'WFWD', name: 'Web Forward', desc: 'WWW Forward'},
- {id: 'WSTP', name: 'Web Stop', desc: 'WWW Stop'},
- {id: 'WREF', name: 'Web Refresh', desc: 'WWW Refresh'},
- {id: 'WFAV', name: 'Web Favorites', desc: 'WWW Favorites'},
- {id: 'RESERVED-187', name: 'RESERVED-187', desc: 'RESERVED-187'},
- {id: 'RESERVED-188', name: 'RESERVED-188', desc: 'RESERVED-188'},
- {id: 'RESERVED-189', name: 'RESERVED-189', desc: 'RESERVED-189'},
- {id: 'RESERVED-190', name: 'RESERVED-190', desc: 'RESERVED-190'},
- {id: 'RESERVED-191', name: 'RESERVED-191', desc: 'RESERVED-191'},
-
- /* Fn key 192-223(0xc0-df) */
- {id: 'FN0 ', name: 'L1', desc: 'Change to Layer 1(Momentary) '},
- {id: 'FN1 ', name: 'L2', desc: 'Change to Layer 2(Momentary) '},
- {id: 'FN2 ', name: 'L3', desc: 'Change to Layer 3(Momentary) '},
- {id: 'FN3 ', name: 'L4', desc: 'Change to Layer 4(Momentary) '},
- {id: 'FN4 ', name: 'L5', desc: 'Change to Layer 5(Momentary) '},
- {id: 'FN5 ', name: 'L6', desc: 'Change to Layer 6(Momentary) '},
- {id: 'FN6 ', name: 'L7', desc: 'Change to Layer 7(Momentary) '},
- {id: 'FN7 ', name: 'T1', desc: 'Change to Layer 1(Toggle) '},
- {id: 'FN8 ', name: 'T2', desc: 'Change to Layer 2(Toggle) '},
- {id: 'FN9 ', name: 'T3', desc: 'Change to Layer 3(Toggle) '},
- {id: 'FN10', name: 'L1t', desc: 'Change to Layer 1(Momentary with Tap Toggle) '},
- {id: 'FN11', name: 'L2t', desc: 'Change to Layer 2(Momentary with Tap Toggle) '},
- {id: 'FN12', name: 'L3t', desc: 'Change to Layer 3(Momentary with Tap Toggle) '},
- /* Layer swith with Tap key */
- {id: 'FN13', name: 'A (L1)', desc: 'A with with L1(Tap key)'},
- {id: 'FN14', name: 'F (L2)', desc: 'F with with L2(Tap key)'},
- {id: 'FN15', name: 'J (L3)', desc: 'J with with L3(Tap key)'},
- {id: 'FN16', name: 'Space (L4)', desc: 'Space with L4(Tap key)'},
- {id: 'FN17', name: '; (L5)', desc: 'Semicolon with L5(Tap key)'},
- {id: 'FN18', name: '\'( L6)', desc: 'Quote with L6(Tap key)'},
- {id: 'FN19', name: '/ (L7)', desc: 'Slash with with L7(Tap key)'},
- /* Modifier on alpha key(Tap key, Dual-role key) */
- {id: 'FN20', name: 'Space (LShift)', desc: 'Space with Left Sfhit(Tap key)'},
- {id: 'FN21', name: 'Space (LCtrl)', desc: 'Space with Left Control(Tap key)'},
- {id: 'FN22', name: '\' (RCtrl)', desc: 'Quote with Right Control(Tap key)'},
- {id: 'FN23', name: 'Enter (RCtrl)', desc: 'Enter with Right Control(Tap key)'},
- /* Modifier with a key(Tap key, Dual-role key) */
- {id: 'FN24', name: 'LCtrl (Esc)', desc: 'Left Control with Escape'},
- {id: 'FN25', name: 'LCtrl (Backspace)', desc: 'Left Control with Backspace'},
- {id: 'FN26', name: 'LCtrl (OneShot)', desc: 'Left Control(OneShot Modifier)'},
- {id: 'FN27', name: 'LShift (Esc)', desc: 'Left Shift with Escape'},
- {id: 'FN28', name: 'LShift (Backspace)', desc: 'Left Shift with Backspace'},
- {id: 'FN29', name: 'LShift (OneShot)', desc: 'Left Shift(OneShot Modifier)'},
- {id: 'FN30', name: 'RShift (`)', desc: 'Right Shift with Grave(Tap key)'},
- {id: 'FN31', name: 'RShift (\\)', desc: 'Right Shift with Backslash(Tap key)'},
-
-/* Standeard codes for 16bit Action 165-223(0xa5-df)
- {id: 'RESERVED-165', name: 'RESERVED-165', desc: 'RESERVED-165'},
- {id: 'RESERVED-166', name: 'RESERVED-166', desc: 'RESERVED-166'},
- {id: 'RESERVED-167', name: 'RESERVED-167', desc: 'RESERVED-167'},
- {id: 'RESERVED-168', name: 'RESERVED-168', desc: 'RESERVED-168'},
- {id: 'RESERVED-169', name: 'RESERVED-169', desc: 'RESERVED-169'},
- {id: 'RESERVED-170', name: 'RESERVED-170', desc: 'RESERVED-170'},
- {id: 'RESERVED-171', name: 'RESERVED-171', desc: 'RESERVED-171'},
- {id: 'RESERVED-172', name: 'RESERVED-172', desc: 'RESERVED-172'},
- {id: 'RESERVED-173', name: 'RESERVED-173', desc: 'RESERVED-173'},
- {id: 'RESERVED-174', name: 'RESERVED-174', desc: 'RESERVED-174'},
- {id: 'RESERVED-175', name: 'RESERVED-175', desc: 'RESERVED-175'},
- {id: 'KP_00', name: 'KP_00', desc: 'KP_00'},
- {id: 'KP_000', name: 'KP_000', desc: 'KP_000'},
- {id: 'THOUSANDS_SEPARATOR', name: 'THOUSANDS_SEPARATOR', desc: 'THOUSANDS_SEPARATOR'},
- {id: 'DECIMAL_SEPARATOR', name: 'DECIMAL_SEPARATOR', desc: 'DECIMAL_SEPARATOR'},
- {id: 'CURRENCY_UNIT', name: 'CURRENCY_UNIT', desc: 'CURRENCY_UNIT'},
- {id: 'CURRENCY_SUB_UNIT', name: 'CURRENCY_SUB_UNIT', desc: 'CURRENCY_SUB_UNIT'},
- {id: 'KP_LPAREN', name: 'KP_LPAREN', desc: 'KP_LPAREN'},
- {id: 'KP_RPAREN', name: 'KP_RPAREN', desc: 'KP_RPAREN'},
- {id: 'KP_LCBRACKET', name: 'KP_LCBRACKET', desc: 'KP_LCBRACKET'},
- {id: 'KP_RCBRACKET', name: 'KP_RCBRACKET', desc: 'KP_RCBRACKET'},
- {id: 'KP_TAB', name: 'KP_TAB', desc: 'KP_TAB'},
- {id: 'KP_BSPACE', name: 'KP_BSPACE', desc: 'KP_BSPACE'},
- {id: 'KP_A', name: 'KP_A', desc: 'KP_A'},
- {id: 'KP_B', name: 'KP_B', desc: 'KP_B'},
- {id: 'KP_C', name: 'KP_C', desc: 'KP_C'},
- {id: 'KP_D', name: 'KP_D', desc: 'KP_D'},
- {id: 'KP_E', name: 'KP_E', desc: 'KP_E'},
- {id: 'KP_F', name: 'KP_F', desc: 'KP_F'},
- {id: 'KP_XOR', name: 'KP_XOR', desc: 'KP_XOR'},
- {id: 'KP_HAT', name: 'KP_HAT', desc: 'KP_HAT'},
- {id: 'KP_PERC', name: 'KP_PERC', desc: 'KP_PERC'},
- {id: 'KP_LT', name: 'KP_LT', desc: 'KP_LT'},
- {id: 'KP_GT', name: 'KP_GT', desc: 'KP_GT'},
- {id: 'KP_AND', name: 'KP_AND', desc: 'KP_AND'},
- {id: 'KP_LAZYAND', name: 'KP_LAZYAND', desc: 'KP_LAZYAND'},
- {id: 'KP_OR', name: 'KP_OR', desc: 'KP_OR'},
- {id: 'KP_LAZYOR', name: 'KP_LAZYOR', desc: 'KP_LAZYOR'},
- {id: 'KP_COLON', name: 'KP_COLON', desc: 'KP_COLON'},
- {id: 'KP_HASH', name: 'KP_HASH', desc: 'KP_HASH'},
- {id: 'KP_SPACE', name: 'KP_SPACE', desc: 'KP_SPACE'},
- {id: 'KP_ATMARK', name: 'KP_ATMARK', desc: 'KP_ATMARK'},
- {id: 'KP_EXCLAMATION', name: 'KP_EXCLAMATION', desc: 'KP_EXCLAMATION'},
- {id: 'KP_MEM_STORE', name: 'KP_MEM_STORE', desc: 'KP_MEM_STORE'},
- {id: 'KP_MEM_RECALL', name: 'KP_MEM_RECALL', desc: 'KP_MEM_RECALL'},
- {id: 'KP_MEM_CLEAR', name: 'KP_MEM_CLEAR', desc: 'KP_MEM_CLEAR'},
- {id: 'KP_MEM_ADD', name: 'KP_MEM_ADD', desc: 'KP_MEM_ADD'},
- {id: 'KP_MEM_SUB', name: 'KP_MEM_SUB', desc: 'KP_MEM_SUB'},
- {id: 'KP_MEM_MUL', name: 'KP_MEM_MUL', desc: 'KP_MEM_MUL'},
- {id: 'KP_MEM_DIV', name: 'KP_MEM_DIV', desc: 'KP_MEM_DIV'},
- {id: 'KP_PLUS_MINUS', name: 'KP_PLUS_MINUS', desc: 'KP_PLUS_MINUS'},
- {id: 'KP_CLEAR', name: 'KP_CLEAR', desc: 'KP_CLEAR'},
- {id: 'KP_CLEAR_ENTRY', name: 'KP_CLEAR_ENTRY', desc: 'KP_CLEAR_ENTRY'},
- {id: 'KP_BINARY', name: 'KP_BINARY', desc: 'KP_BINARY'},
- {id: 'KP_OCTAL', name: 'KP_OCTAL', desc: 'KP_OCTAL'},
- {id: 'KP_DECIMAL', name: 'KP_DECIMAL', desc: 'KP_DECIMAL'},
- {id: 'KP_HEXADECIMAL', name: 'KP_HEXADECIMAL', desc: 'KP_HEXADECIMAL'},
- {id: 'RESERVED-222', name: 'RESERVED-222', desc: 'RESERVED-222'},
- {id: 'RESERVED-223', name: 'RESERVED-223', desc: 'RESERVED-223'},
-*/
-
- /* Modifier 224-231(0xe0-e7) */
- {id: 'LCTL', name: 'LCtrl', desc: 'Left Control'},
- {id: 'LSFT', name: 'LShift', desc: 'Left Shift'},
- {id: 'LALT', name: 'LAlt', desc: 'Left Alt(\u2325)'},
- {id: 'LGUI', name: 'LGui', desc: 'Left Windows(\u2318)'},
- {id: 'RCTL', name: 'RCtrl', desc: 'Right Control'},
- {id: 'RSFT', name: 'RShift', desc: 'Right Shift'},
- {id: 'RALT', name: 'RAlt', desc: 'Right Alt(\u2325)'},
- {id: 'RGUI', name: 'RGui', desc: 'Right Windows(\u2318)'},
-
- /* Not used 232-239(0xe8-ef) */
- {id: 'RESERVED-232', name: 'RESERVED-232', desc: 'RESERVED-232'},
- {id: 'RESERVED-233', name: 'RESERVED-233', desc: 'RESERVED-233'},
- {id: 'RESERVED-234', name: 'RESERVED-234', desc: 'RESERVED-234'},
- {id: 'RESERVED-235', name: 'RESERVED-235', desc: 'RESERVED-235'},
- {id: 'RESERVED-236', name: 'RESERVED-236', desc: 'RESERVED-236'},
- {id: 'RESERVED-237', name: 'RESERVED-237', desc: 'RESERVED-237'},
- {id: 'RESERVED-238', name: 'RESERVED-238', desc: 'RESERVED-238'},
- {id: 'RESERVED-239', name: 'RESERVED-239', desc: 'RESERVED-239'},
-
- /* Mousekey 240-255(0xf0-ff) */
- {id: 'MS_U', name: 'Mouse Up', desc: 'Mouse UP'},
- {id: 'MS_D', name: 'Mouse down', desc: 'Mouse Down'},
- {id: 'MS_L', name: 'Mouse left', desc: 'Mouse Left'},
- {id: 'MS_R', name: 'Mouse right', desc: 'Mouse Right'},
- {id: 'BTN1', name: 'Mouse Btn1', desc: 'Mouse Button1'},
- {id: 'BTN2', name: 'Mouse Btn2', desc: 'Mouse Button2'},
- {id: 'BTN3', name: 'Mouse Btn3', desc: 'Mouse Button3'},
- {id: 'BTN4', name: 'Mouse Btn4', desc: 'Mouse Button4'},
- {id: 'BTN5', name: 'Mouse Btn5', desc: 'Mouse Button5'},
- {id: 'WH_U', name: 'Wheel Up', desc: 'Wheel Up'},
- {id: 'WH_D', name: 'Wheel Down', desc: 'Wheel Down'},
- {id: 'WH_L', name: 'Wheel Left', desc: 'Wheel Left'},
- {id: 'WH_R', name: 'Wheel Right', desc: 'Wheel Right'},
- {id: 'ACL0', name: 'Mouse Slow', desc: 'Mouse Slow'},
- {id: 'ACL1', name: 'Mouse Medium', desc: 'Mouse Medium'},
- {id: 'ACL2', name: 'Mouse Fast', desc: 'Mouse Fast'},
-];
diff --git a/editor/hhkb_bt/firmware.js b/editor/hhkb_bt/firmware.js
deleted file mode 100644
index 6c08f5c3..00000000
--- a/editor/hhkb_bt/firmware.js
+++ /dev/null
@@ -1,1773 +0,0 @@
-/*
- * HHKB pro keymap
- */
-KEYBOARD_ID = "hhkb_bt";
-KEYBOARD_DESC = "HHKB Alt Controller(Bluetooth)"
-
-/* for ATMega32U4 with 32KB flash */
-KEYMAP_START_ADDRESS = 0x6800;
-
-/* Key matrix:
- * COL 0 1 2 3 4 5 6 7
- * ROW,---------------------------------------------------------------
- * 0| 2 q w s a z x c
- * 1| 3 4 r e d f v b
- * 2| 5 6 y t g h n _NONE_
- * 3| 1 Esc Tab Control LShift LAlt LMeta Space
- * 4| 7 8 u i k j m _NONE_
- * 5| \ ` Delete Return Fn RShift RAlt RMeta
- * 6| 9 0 o p ; l , _NONE_
- * 7| - + ] [ ' / . _NONE_
- *
- * Default keymap
- * ,-----------------------------------------------------------.
- * |Esc| 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =| \| `|
- * |-----------------------------------------------------------|
- * |Tab | Q| W| E| R| T| Y| U| I| O| P| [| ]|Backs|
- * |-----------------------------------------------------------|
- * |Contro| A| S| D| F| G| H| J| K| L| ;| '|Enter |
- * |-----------------------------------------------------------|
- * |Shift | Z| X| C| V| B| N| M| ,| .| /|Shift |Fn |
- * `-----------------------------------------------------------'
- * |Gui|Alt | Space |Alt |Gui|
- * `-------------------------------------------'
- * ,-----------------------------------------------------------.
- * |Esc| F1| F2| F3| F4| F5| F6| F7| F8| F9|F10|F11|F12|Ins|Del|
- * |-----------------------------------------------------------|
- * |Caps | | | | | | | |Psc|Slk|Pus|Up | |Backs|
- * |-----------------------------------------------------------|
- * |Contro|VoD|VoU|Mut| | | *| /|Hom|PgU|Lef|Rig|Enter |
- * |-----------------------------------------------------------|
- * |Shift | | | | | | +| -|End|PgD|Dow|Shift |Fn |
- * `-----------------------------------------------------------'
- * |Gui|Alt | Space |Alt |Gui|
- * `-------------------------------------------'
- */
-no_map = function() { return [
- [0,0,0,0,0,0,0,0],
- [0,0,0,0,0,0,0,0],
- [0,0,0,0,0,0,0,0],
- [0,0,0,0,0,0,0,0],
- [0,0,0,0,0,0,0,0],
- [0,0,0,0,0,0,0,0],
- [0,0,0,0,0,0,0,0],
- [0,0,0,0,0,0,0,0],
-]; };
-transparent_map = function() { return [
- [1,1,1,1,1,1,1,1],
- [1,1,1,1,1,1,1,1],
- [1,1,1,1,1,1,1,1],
- [1,1,1,1,1,1,1,1],
- [1,1,1,1,1,1,1,1],
- [1,1,1,1,1,1,1,1],
- [1,1,1,1,1,1,1,1],
- [1,1,1,1,1,1,1,1],
-]; };
-
-// default keymap
-keymaps = [
- [
- [ 0x1F,0x14,0x1A,0x16,0x04,0x1D,0x1B,0x06, ],
- [ 0x20,0x21,0x15,0x08,0x07,0x09,0x19,0x05, ],
- [ 0x22,0x23,0x1C,0x17,0x0A,0x0B,0x11,0x00, ],
- [ 0x1E,0x29,0x2B,0xE0,0xE1,0xE2,0xE3,0x2C, ],
- [ 0x24,0x25,0x18,0x0C,0x0E,0x0D,0x10,0x00, ],
- [ 0x31,0x35,0x2A,0x28,0xC0,0xE5,0xE6,0xE7, ],
- [ 0x26,0x27,0x12,0x13,0x33,0x0F,0x36,0x00, ],
- [ 0x2D,0x2E,0x30,0x2F,0x34,0x38,0x37,0x00, ],
- ],
- [
- [ 0x3B,0x01,0x01,0xA9,0xAA,0x01,0x01,0x01, ],
- [ 0x3C,0x3D,0x01,0x01,0xA8,0x01,0x01,0x01, ],
- [ 0x3E,0x3F,0x01,0x01,0x01,0x55,0x57,0x00, ],
- [ 0x3A,0xA5,0x39,0x01,0x01,0x01,0x01,0x01, ],
- [ 0x40,0x41,0x01,0x46,0x4A,0x54,0x56,0x00, ],
- [ 0x49,0x4C,0x2A,0x58,0x01,0x01,0x01,0x01, ],
- [ 0x42,0x43,0x47,0x48,0x50,0x4B,0x4D,0x00, ],
- [ 0x44,0x45,0x01,0x52,0x4F,0x51,0x4E,0x00, ],
- ],
- transparent_map(),
- transparent_map(),
- transparent_map(),
- transparent_map(),
- transparent_map(),
- transparent_map(),
-];
-
-fn_actions = [
- 0xF1,0xA1,0xF1,0xA2,0xF1,0xA3,0xF1,0xA4,0xF1,0xA5,0xF1,0xA6,0xF1,0xA7,0x02,0x8A,
- 0x04,0x8A,0x08,0x8A,0xF0,0xA1,0xF0,0xA2,0xF0,0xA3,0x04,0xA1,0x09,0xA2,0x0D,0xA3,
- 0x2C,0xA4,0x33,0xA5,0x34,0xA6,0x38,0xA7,0x2C,0x22,0x2C,0x21,0x34,0x31,0x28,0x31,
- 0x29,0x21,0x2A,0x21,0x00,0x21,0x29,0x22,0x2A,0x22,0x00,0x22,0x35,0x32,0x31,0x32,
-];
-
-
-/* hex file whthout keymap region and eof */
-function firmware_hex()
-{
- /* HHKB firmware: v4.0-162-g52a7398 */
- /* Flash Map of ATMega32U4(32KB)
- * +------------+ 0x0000
- * | .vectors | 0xac (43vectors * 4bytes)
- * | .progmem | PROGMEM variables and PSTR
- * | .init0-9 |
- * | .text | code
- * | .fini9-0 |
- * | | > text region
- * |------------| _etext
- * | .data |
- * | .bss |
- * | .noinit |
- * | | > data region
- * |------------| 0x6800
- * | .keymap | > keymap region(2KB)
- * |------------| 0x7000
- * | bootloader | 4KB
- * +------------+ 0x7FFF
- */
- // TODO: read hex file directly from remote URL
- // Place HEX format string of firmware(0x0000-0x67ff) excluding keymap region.
- return "\
-:100000000C9451070C9495070C9495070C94950744\r\n\
-:100010000C9495070C9495070C9495070C949507F0\r\n\
-:100020000C9495070C9495070C94F1160C94950775\r\n\
-:100030000C94E2260C9495070C9495070C94950764\r\n\
-:100040000C9495070C9495070C9495070C949507C0\r\n\
-:100050000C9495070C9481270C9495070C949507A4\r\n\
-:100060000C9495070C94260A0C9495070C9495070C\r\n\
-:100070000C9495070C9495070C9495070C94950790\r\n\
-:100080000C9495070C9495070C9495070C94950780\r\n\
-:100090000C9495070C9495070C9495070C94950770\r\n\
-:1000A0000C9495070C9495070C9495074B0F500FE3\r\n\
-:1000B000550F5A0F5F0F640F690F6E0F730F780F94\r\n\
-:1000C0007D0F820F870F8C0F910F960F9B0FA00F44\r\n\
-:1000D000A50FAA0FAF0FB40FB90FBE0FC30FC80FF4\r\n\
-:1000E000CD0FD20FD70FDC0FE10FE60FEB0FF00FA4\r\n\
-:1000F000F50FFA0F490F4410FF0F01100310051000\r\n\
-:100100000A100F10141019101E10221027102C1096\r\n\
-:10011000311036103B104210421042104210421073\r\n\
-:10012000421042104210421042104210421042103F\r\n\
-:100130004210421042104210421042104010E71785\r\n\
-:100140000918F4180918F4184B186E18F418C31885\r\n\
-:10015000D618D61BD61B041C041C591C951C861EC5\r\n\
-:10016000861EAD1C861EA41DA41D601E861E861E36\r\n\
-:10017000741E253032583A20253038620A000A723F\r\n\
-:100180002F632030313233343536370A00522C3168\r\n\
-:100190000D0A0053592C464646340D0A0053482C8C\r\n\
-:1001A000303033430D0A00537E2C360D0A0053576E\r\n\
-:1001B0002C383030300D0A00534D2C340D0A0053CA\r\n\
-:1001C000532C4B6579626F6172642F4D6F75736547\r\n\
-:1001D0000D0A00532D2C546D6B42540D0A005346EA\r\n\
-:1001E0002C310D0A002D2D2D0D0A004578697469FA\r\n\
-:1001F0006E6720636F6E666967206D6F6465202E81\r\n\
-:100200002E2E0A002B0D0A00760D0A00242424004D\r\n\
-:10021000456E746572696E6720636F6E66696720EC\r\n\
-:100220006D6F6465202E2E2E0A0025630025730D48\r\n\
-:100230000A00522C310D0A0053522C5A0D0A005557\r\n\
-:100240005342206D6F64650A004175746F206D6FB5\r\n\
-:1002500064650A00253032750A00253032753A008F\r\n\
-:10026000253032753A004241543A2025756D5609C1\r\n\
-:1002700000757074696D653A20253032752025301F\r\n\
-:1002800032753A253032753A253032750A005642B9\r\n\
-:1002900055533A2025580A0052656D6F74655761B1\r\n\
-:1002A0006B657570456E61626C65643A2025580A0D\r\n\
-:1002B000000A003F004C4F57004449534348470051\r\n\
-:1002C00043484152470046554C4C00626174746586\r\n\
-:1002D00072793A20005553422053746174653A2074\r\n\
-:1002E00025730A00636F6E6669675F6D6F64653AB8\r\n\
-:1002F0002025580A00726E34325F6175746F636F27\r\n\
-:100300006E6E656374696E6728293A2025580A0065\r\n\
-:10031000726E34323A2025730A00666F7263655F2D\r\n\
-:100320007573623A2025580A0070726F746F636F9C\r\n\
-:100330006C3A2025730A000A2D2D2D2D2D20524EAA\r\n\
-:100340002D343220696E666F202D2D2D2D2D0A0043\r\n\
-:10035000753A20202020202020746F67676C65206C\r\n\
-:10036000466F72636520555342206D6F64650A00C5\r\n\
-:10037000703A2020202020202070616972696E6709\r\n\
-:100380000A00536C636B3A20202020524E2D3432E9\r\n\
-:1003900020696E697469616C697A650A0044656CEC\r\n\
-:1003A0003A2020202020656E7465722F657869746C\r\n\
-:1003B00020524E2D343220636F6E666967206D6F58\r\n\
-:1003C00064650A00623A20202020202020626174A7\r\n\
-:1003D0007465727920766F6C746167650A00693A9A\r\n\
-:1003E00020202020202020524E2D343220696E669D\r\n\
-:1003F0006F0A000A0A2D2D2D2D2D20426C75657473\r\n\
-:100400006F6F746820524E2D34322048656C702016\r\n\
-:100410002D2D2D2D2D0A00253032753A25303275BF\r\n\
-:100420003A253032750925756D560A004C45442031\r\n\
-:100430007374617475733A20253032580A00202590\r\n\
-:10044000303258002563005B735D004B6579626F45\r\n\
-:100450006172642073746172740A00524E2D3432DA\r\n\
-:1004600020696E69740A000A55534220696E6974E6\r\n\
-:100470000A005B575D005B535D005B525D005B44AF\r\n\
-:100480005D005B435D001203480048004B004200E2\r\n\
-:1004900020006D006F00640000000E0374002E0049\r\n\
-:1004A0006D002E006B002E000000040309040902F9\r\n\
-:1004B0008D00050100A032090400000103010100C4\r\n\
-:1004C000092111010001223F000705810308000AEC\r\n\
-:1004D00009040100010301020009211101000122A8\r\n\
-:1004E0004D000705820308000A0904020001030009\r\n\
-:1004F00000000921110100012236000705830308CD\r\n\
-:10050000000A090403000203000000092111010090\r\n\
-:1005100001222000070584032000010705040320B1\r\n\
-:100520000001090404000103000000092111010079\r\n\
-:100530000122390007058503100001120110010096\r\n\
-:10054000000008EDFE42420401010200010501091C\r\n\
-:1005500006A101050719E029E71500250195087591\r\n\
-:10056000018102050819012905950575019102957A\r\n\
-:1005700001750391010507190029771500250195DB\r\n\
-:100580007875018102C00631FF0974A10109751552\r\n\
-:100590000025FF9520750881020976150025FF9535\r\n\
-:1005A0002075089102C005010980A101850216018C\r\n\
-:1005B0000026B7001A01002AB700751095018100C6\r\n\
-:1005C000C0050C0901A1018503160100269C021A31\r\n\
-:1005D00001002A9C02751095018100C005010902E5\r\n\
-:1005E000A1010901A100050919012905150025012D\r\n\
-:1005F0009505750181029501750381010501093099\r\n\
-:1006000009311581257F9502750881060938158104\r\n\
-:10061000257F950175088106050C0A38021581258C\r\n\
-:100620007F950175088106C0C005010906A1010575\r\n\
-:100630000719E029E7150025019508750181029544\r\n\
-:1006400001750881010508190129059505750191B4\r\n\
-:10065000029501750391010507190029FF15002571\r\n\
-:10066000FF950675088100C00A0025303258200029\r\n\
-:100670006B6579626F6172645F7265706F72743AF4\r\n\
-:1006800020000A0025303258006B6579626F617274\r\n\
-:10069000645F7365745F6C65643A200064656C5FC9\r\n\
-:1006A0006B65795F6269743A2063616E27742064B8\r\n\
-:1006B000656C3A20253032580A006164645F6B65CE\r\n\
-:1006C000795F6269743A2063616E277420616464A3\r\n\
-:1006D0003A20253032580A004F6E6573686F743ABD\r\n\
-:1006E0002074696D656F75740A00646F6E652E0AFB\r\n\
-:1006F00000626F6F676D61676963207363616E3A53\r\n\
-:10070000202E2E2E2000290A002575002F00257589\r\n\
-:10071000005D280025640020002564002000256479\r\n\
-:100720000020002564007C0025303258006D6F7574\r\n\
-:1007300073656B6579205B62746E7C7820792076B6\r\n\
-:1007400020685D287265702F61636C293A205B0018\r\n\
-:100750006D6B5F776865656C5F74696D655F746FFD\r\n\
-:100760005F6D6178203D2025640A006D6B5F7768BE\r\n\
-:1007700065656C5F6D61785F7370656564203D20B1\r\n\
-:1007800025640A006D6B5F74696D655F746F5F6DE2\r\n\
-:100790006178203D2025640A006D6B5F6D61785F94\r\n\
-:1007A0007370656564203D2025640A006D6B5F6988\r\n\
-:1007B0006E74657276616C203D2025640A006D6B55\r\n\
-:1007C0005F64656C6179203D2025640A006D6B5F74\r\n\
-:1007D000776865656C5F74696D655F746F5F6D6187\r\n\
-:1007E00078203D2025640A006D6B5F776865656C35\r\n\
-:1007F0005F6D61785F7370656564203D2025640AD4\r\n\
-:10080000006D6B5F74696D655F746F5F6D617820FB\r\n\
-:100810003D2025640A006D6B5F6D61785F737065C4\r\n\
-:100820006564203D2025640A006D6B5F696E746508\r\n\
-:100830007276616C203D2025640A006D6B5F6465F3\r\n\
-:100840006C6179203D2025640A000A002575003678\r\n\
-:100850003A20776865656C5F74696D655F746F5F7A\r\n\
-:100860006D61783A20000A00257500353A207768D6\r\n\
-:1008700065656C5F6D61785F73706565643A2000D3\r\n\
-:100880000A00257500343A2074696D655F746F5FE6\r\n\
-:100890006D61783A20000A00257500333A206D61B9\r\n\
-:1008A000785F73706565643A20000A002575003230\r\n\
-:1008B0003A20696E74657276616C286D73293A20EE\r\n\
-:1008C000000A00257500313A2064656C6179282A98\r\n\
-:1008D00031306D73293A20000A092D2056616C755C\r\n\
-:1008E0006573202D0A004D3E004D25643E20003FDB\r\n\
-:1008F000007365742064656661756C740A00433E1C\r\n\
-:10090000200077686572652064656C74613A2063C5\r\n\
-:100910007572736F723D25642C20776865656C3D38\r\n\
-:1009200025640A53656520687474703A2F2F656ECC\r\n\
-:100930002E77696B6970656469612E6F72672F77B6\r\n\
-:10094000696B692F4D6F7573655F6B6579730A000D\r\n\
-:100950000A092D204D6F7573656B6579202D0A4549\r\n\
-:1009600053432F713A09717569740A313A09646504\r\n\
-:100970006C6179282A31306D73290A323A09696E1F\r\n\
-:1009800074657276616C286D73290A333A096D615A\r\n\
-:10099000785F73706565640A343A0974696D655FE0\r\n\
-:1009A000746F5F6D61780A353A09776865656C5FC9\r\n\
-:1009B0006D61785F73706565640A363A09776865BA\r\n\
-:1009C000656C5F74696D655F746F5F6D61780A0A4D\r\n\
-:1009D000703A097072696E742076616C7565730A7D\r\n\
-:1009E000643A097365742064656661756C74730A92\r\n\
-:1009F00075703A092B310A646F776E3A092D310A06\r\n\
-:100A0000706775703A092B31300A7067646F776EC2\r\n\
-:100A10003A092D31300A0A7370656564203D2064FF\r\n\
-:100A2000656C7461202A206D61785F737065656400\r\n\
-:100A3000202A2028726570656174202F2074696DEA\r\n\
-:100A4000655F746F5F6D6178290A003F004D3E203D\r\n\
-:100A500000433E20004C25640A000A092D20436F04\r\n\
-:100A60006E736F6C65202D0A4553432F713A0971DF\r\n\
-:100A70007569740A6D3A096D6F7573656B65790AEE\r\n\
-:100A8000000A092D204D61676963202D0A643A0927\r\n\
-:100A900064656275670A783A096465627567206DF6\r\n\
-:100AA00061747269780A6B3A096465627567206BD4\r\n\
-:100AB0006579626F6172640A6D3A0964656275678F\r\n\
-:100AC000206D6F7573650A763A0976657273696F82\r\n\
-:100AD0006E0A733A097374617475730A633A096331\r\n\
-:100AE0006F6E736F6C65206D6F64650A302D343ADC\r\n\
-:100AF000096C61796572302D34284631302D4634C9\r\n\
-:100B0000290A506175733A09626F6F746C6F616482\r\n\
-:100B100065720A653A09656570726F6D0A6E3A0909\r\n\
-:100B20004E4B524F0A000A002575002E6E6B726FF5\r\n\
-:100B30003A20000A002575002E737761705F6261AC\r\n\
-:100B4000636B736C6173685F6261636B7370616325\r\n\
-:100B5000653A20000A002575002E737761705F6783\r\n\
-:100B6000726176655F6573633A20000A002575003F\r\n\
-:100B70002E6E6F5F6775693A20000A002575002E9A\r\n\
-:100B8000737761705F72616C745F726775693A2028\r\n\
-:100B9000000A002575002E737761705F6C616C74BC\r\n\
-:100BA0005F6C6775693A20000A002575002E636145\r\n\
-:100BB00070736C6F636B5F746F5F636F6E74726F73\r\n\
-:100BC0006C3A20000A002575002E737761705F6310\r\n\
-:100BD0006F6E74726F6C5F636170736C6F636B3A8E\r\n\
-:100BE00020000A0025303258006B65796D61705F16\r\n\
-:100BF000636F6E6669672E7261773A20000A00257E\r\n\
-:100C000075002E6D6F7573653A20000A002575001A\r\n\
-:100C10002E6B6579626F6172643A20000A00257557\r\n\
-:100C2000002E6D61747269783A20000A0025750003\r\n\
-:100C30002E656E61626C653A20000A0025303258DC\r\n\
-:100C40000064656275675F636F6E6669672E7261C7\r\n\
-:100C5000773A20000A0025750064656661756C743A\r\n\
-:100C60005F6C617965723A20003F004E4B524F3AFB\r\n\
-:100C7000206F66660A004E4B524F3A206F6E0A0094\r\n\
-:100C800074696D65725F636F756E743A20253034D8\r\n\
-:100C90006C580A006B6579626F6172645F6E6B728B\r\n\
-:100CA0006F3A2025580A006B6579626F6172645F44\r\n\
-:100CB00069646C653A2025580A006B6579626F613A\r\n\
-:100CC00072645F70726F746F636F6C3A2025580A9C\r\n\
-:100CD00000686F73745F6B6579626F6172645F6CDB\r\n\
-:100CE00065647328293A2025580A000A092D2053E3\r\n\
-:100CF0007461747573202D0A004743433A20342EE3\r\n\
-:100D0000382E31204156522D4C4942433A20312E43\r\n\
-:100D1000382E3073766E204156525F415243483A26\r\n\
-:100D200020617672350A004F5054494F4E533A2095\r\n\
-:100D30004C55464120424F4F544D41474943204D69\r\n\
-:100D40004F5553454B45592045585452414B4559F1\r\n\
-:100D500020434F4E534F4C4520434F4D4D414E4441\r\n\
-:100D6000204E4B524F204B45594D41505F53454308\r\n\
-:100D700054494F4E20343039360A004255494C44CC\r\n\
-:100D80003A2064623230313561202831313A3431D1\r\n\
-:100D90003A3139204E6F76202039203230313529D2\r\n\
-:100DA0000A005649443A2030784645454428742E76\r\n\
-:100DB0006D2E6B2E29205049443A2030783432343D\r\n\
-:100DC000322848484B42206D6F6429205645523ADC\r\n\
-:100DD000203078303130340A00444553433A20748F\r\n\
-:100DE0002E6D2E6B2E206B6579626F6172642066AA\r\n\
-:100DF00069726D7761726520666F722048484B4258\r\n\
-:100E0000206D6F640A000A092D2056657273696FA0\r\n\
-:100E10006E202D0A000A6D6F7573653A206F666645\r\n\
-:100E20000A000A6D6F7573653A206F6E0A000A6BCF\r\n\
-:100E30006579626F6172643A206F66660A000A6BB8\r\n\
-:100E40006579626F6172643A206F6E0A000A6D61A3\r\n\
-:100E5000747269783A206F66660A000A6D6174726E\r\n\
-:100E600069783A206F6E0A000A64656275673A20F5\r\n\
-:100E70006F6E0A000A64656275673A206F66660ADB\r\n\
-:100E8000000A0A626F6F746C6F616465722E2E2E99\r\n\
-:100E90002000433E20006565636F6E6669673A0A0D\r\n\
-:100EA000000011241FBECFEFDAE0DEBFCDBF04B6D5\r\n\
-:100EB00003FE24C08091750390917603A09177037F\r\n\
-:100EC000B09178038730904BA740B04BB9F41092A3\r\n\
-:100ED000750310927603109277031092780314BE74\r\n\
-:100EE00084B7877F84BF88E10FB6F8948093600051\r\n\
-:100EF000109260000FBEE0E0F8E3099511E0A0E079\r\n\
-:100F0000B1E0E6EEF5E602C005900D92A03AB10719\r\n\
-:100F1000D9F723E0A0EAB1E001C01D92A537B207DE\r\n\
-:100F2000E1F70E947C110C94F1320C9400000FB692\r\n\
-:100F300080959AE0F8947BE27A95F1F708F0589A58\r\n\
-:100F400008F4589886959A95B1F70FBE08950FB694\r\n\
-:100F500080E8F894499BFECF4999FECF96E19A9597\r\n\
-:100F6000F1F79CE29A95F1F7869549998068C8F760\r\n\
-:100F70000FBE08950FB680E8F89496E19A95F1F7C0\r\n\
-:100F80009CE29A95F1F7869549998068C8F796E1B1\r\n\
-:100F90009A95F1F7499BFECF0FBE0895FF93EF930B\r\n\
-:100FA000E091A001F091A101309709F00995EF912E\r\n\
-:100FB000FF910895FC018591803011F0EFDFFBCFA8\r\n\
-:100FC0000895FF27E0E230E247FF0CC0419597FF0C\r\n\
-:100FD00009C0EDE26095709580959095611D711D39\r\n\
-:100FE000811D911D27FF02C0219530E350E2AA2701\r\n\
-:100FF000660F771F881F991FAA1FA41710F0A41B44\r\n\
-:1010000063955A95A9F7AA3008F0A95FA05DAF9340\r\n\
-:10101000F395611571058105910541F7ED3211F4E4\r\n\
-:10102000EF93F395F21718F43F93F395FBCF8F915D\r\n\
-:10103000B5DFFA95E1F70895E991F991859180304E\r\n\
-:1010400021F0853219F0AADFF9CF089520E0E89465\r\n\
-:1010500055915532C1F3503311F4689455915A3378\r\n\
-:1010600048F4505390F3220F022E220F220F200D2E\r\n\
-:10107000250FF4CF0EF4219589919991533619F3E8\r\n\
-:10108000533729F1533559F1BC0188279927E89442\r\n\
-:101090005C3621F48991999168945591543639F4CC\r\n\
-:1010A00046EF7EF077FF0DC08FEF9FEF0AC05537F8\r\n\
-:1010B0004AE039F0583540E121F0523642E009F07B\r\n\
-:1010C0000895FF93EF937DDFEF91FF91B7CFFF93EB\r\n\
-:1010D000EF93FC0181918030B9F360DFFBCFFF9388\r\n\
-:1010E000EF9368DFF1CFDF93CF93CDB7DEB72596CF\r\n\
-:1010F000A3DFCF91DF910895E72FF0E098E0899F7B\r\n\
-:10110000E00DF11D112483E0EE0FFF1F8A95E1F73A\r\n\
-:10111000E60FF11DE05CF74984910895E82FF0E0B7\r\n\
-:10112000EE0FFF1FE058F94985919491089514B886\r\n\
-:101130008FEF85B9549A5C9808958FEF84B980E455\r\n\
-:1011400085B9549A5C9A8FE19EE40197F1F700C04B\r\n\
-:10115000000008958FEF84B980E485B957985F9AAD\r\n\
-:101160002E9A2F980E949708EAEAF1E0119281E006\r\n\
-:10117000E23BF807D9F7E2EAF1E0119281E0EA3ABE\r\n\
-:10118000F807D9F78AEA91E09093B5018093B4010A\r\n\
-:1011900082EA91E09093B3018093B20108950F9396\r\n\
-:1011A0001F93CF93DF938091B2019091B30120916F\r\n\
-:1011B000B4013091B5013093B3012093B201909303\r\n\
-:1011C000B5018093B4015C9B0E949D08C0E0D0E013\r\n\
-:1011D00001E010E080E090E045B1407C4C2B9C01A8\r\n\
-:1011E00053E0220F331F5A95E1F7422B45B9EAE14C\r\n\
-:1011F000EA95F1F700C0E091B201F091B301EC0F74\r\n\
-:10120000FD1F208130E0082E02C0359527950A94F5\r\n\
-:10121000E2F720FD2F9AF5E3FA95F1F70000A6B565\r\n\
-:101220002E982AE12A95F1F700C02091B40130915F\r\n\
-:10123000B5014F9B0EC0A801082E01C0440F0A94AF\r\n\
-:10124000EAF74095F901EC0FFD1F508154235083BC\r\n\
-:101250000CC0F901EC0FFD1F6081A801082E01C030\r\n\
-:10126000440F0A94EAF7642B608346B56A2F70E056\r\n\
-:101270004A1718F046B550E004C046B550E041505A\r\n\
-:101280005F4F461B570B4630510558F0E091B201B5\r\n\
-:10129000F091B301EC0FFD1F4081F901EC0FFD1F30\r\n\
-:1012A0004083EAE1EA95F1F700C02F982E9AEBE22D\r\n\
-:1012B000F1E03197F1F700C0000001968830910508\r\n\
-:1012C00009F08ACFA091B401B091B501AC0FBD1F58\r\n\
-:1012D000E091B201F091B301EC0FFD1F9C91808170\r\n\
-:1012E000981751F00E9420276093B6017093B701C0\r\n\
-:1012F0008093B8019093B9012196C830D10509F0C7\r\n\
-:1013000069CF5C9B1BC080916C03853021F080917C\r\n\
-:101310006C03811113C06091B6017091B701809187\r\n\
-:10132000B8019091B9010E9455276131774281053A\r\n\
-:10133000910520F00E9497080E94A52681E0DF9188\r\n\
-:10134000CF911F910F910895E091B401F091B501F3\r\n\
-:10135000E80FF11D808108950F931F93CF93DF93C2\r\n\
-:101360008EE791E00E94DA07C0E0D0E002E711E0EA\r\n\
-:10137000E091B401F091B501EC0FFD1F80810E9456\r\n\
-:1013800093261F928F93DF93CF931F930F930E9407\r\n\
-:10139000730821960F900F900F900F900F900F9061\r\n\
-:1013A000C830D10529F7DF91CF911F910F91089592\r\n\
-:1013B0000C949D080C949708569A81FF02C05E9A7F\r\n\
-:1013C00008955E98089588E08093CC001092CD0037\r\n\
-:1013D000E9ECF0E08081806980838081886080838F\r\n\
-:1013E000EAECF0E080818083EBECF0E080818083A8\r\n\
-:1013F000559A5D98789408959091BB012091BA0117\r\n\
-:101400009217D1F030E0F901E454FE4F80812F5F54\r\n\
-:101410003F4F33272093BA01492F50E0921718F419\r\n\
-:10142000241B350B03C0241B350B339523303105AA\r\n\
-:101430000CF05D9890E008958FEF9FEF08959091E4\r\n\
-:10144000C80095FFFCCF8093CE0008951F920F92A5\r\n\
-:101450000FB60F9211242F933F934F935F938F9367\r\n\
-:101460009F93EF93FF932091BB0130E0C901019658\r\n\
-:1014700099274091BA01481741F09091CE00F901A7\r\n\
-:10148000E454FE4F90838093BB015091BB01842FA5\r\n\
-:1014900090E0252F30E0821B930B541708F09395B2\r\n\
-:1014A00003970CF45D9AFF91EF919F918F915F915B\r\n\
-:1014B0004F913F912F910F900FBE0F901F90189555\r\n\
-:1014C0008091D402089508958091D40208950895DA\r\n\
-:1014D000089508950895CF93DF93823E910581F199\r\n\
-:1014E000A8F4873B910589F148F4853B910551F1BA\r\n\
-:1014F000863B910581F5D0E0C2E031C08C3C91057E\r\n\
-:1015000039F18D3C910539F5D0E828C08A3821E0C1\r\n\
-:10151000920719F140F4893E910581F08A3E9105C8\r\n\
-:10152000D1F4D0E21BC0813222E0920729F083324D\r\n\
-:10153000924089F4D1E012C0D4E010C0D0E10EC0D6\r\n\
-:10154000D0E40CC0D0E0C1E00AC0D0E0C4E007C0E5\r\n\
-:10155000D0E0C8E004C0D0E001C0D2E0C0E08DEF30\r\n\
-:101560000E941F0A83E00E941F0A83E00E941F0A54\r\n\
-:101570008D2F0E941F0A8C2FDF91CF910C941F0A90\r\n\
-:10158000CF93DF93EC018DEF0E941F0A85E00E944C\r\n\
-:101590001F0A82E00E941F0A88810E941F0A898117\r\n\
-:1015A0000E941F0A8A810E941F0A8B81DF91CF91BE\r\n\
-:1015B0000C941F0ACF93DF93EC018DEF0E941F0A5A\r\n\
-:1015C00089E00E941F0A81E00E941F0A88810E9410\r\n\
-:1015D0001F0A80E00E941F0A8A810E941F0A8B81D5\r\n\
-:1015E0000E941F0A8C810E941F0A8D810E941F0A7F\r\n\
-:1015F0008E810E941F0A8F81DF91CF910C941F0A68\r\n\
-:101600000C94FC09FF920F931F93CF93DF93EC018F\r\n\
-:101610000E9414278C01F12CC8010E942C278C17E2\r\n\
-:101620009D07A0F40E94FC099C012F3F8FEF380713\r\n\
-:1016300051F02D3041F02A3049F0AF2DB0E0A454E4\r\n\
-:10164000BD4F2C93F39486E18F1530F7EF2DF0E02A\r\n\
-:10165000E454FD4F10828CEB92E0DF91CF911F910B\r\n\
-:101660000F91FF9008950C941F0A81B3881F88275B\r\n\
-:10167000881F0895879A8F9A089585B7806885BFD7\r\n\
-:1016800085B7806885BF0E943A0B86988E9A8198AC\r\n\
-:101690008998559A5D980C94E309879A8F980895D4\r\n\
-:1016A0008FB18695817008958FB186FB882780F968\r\n\
-:1016B00008958093D4020895CF93DF93CAE2D2E0D5\r\n\
-:1016C0000E94000B8F3F2FEF920759F09F938F934B\r\n\
-:1016D000DF93CF930E9473080F900F900F900F909D\r\n\
-:1016E000EFCFDF91CF910895CF93DF93FC018491E9\r\n\
-:1016F000EF012196882321F00E94330BFE01F7CFE2\r\n\
-:101700002FEF89E698E1215080409040E1F700C03A\r\n\
-:10171000000084E690E00E94020B8093D502909333\r\n\
-:10172000D6029F938F938DE292E09F938F930E94B6\r\n\
-:1017300073080E945C0B0F900F900F900F90809198\r\n\
-:10174000D5029091D602DF91CF9108950E942E1973\r\n\
-:1017500090931501809314010E94A71E80E091E0F0\r\n\
-:101760000E9429190E944D0B0E94540B8111FCCF3D\r\n\
-:1017700080E192E00E94DA072FEF85EB95E321509C\r\n\
-:1017800080409040E1F700C000008CE092E00E94B1\r\n\
-:10179000740BEFEFFBE42DE1E150F0402040E1F766\r\n\
-:1017A00000C000000E945C0B88E092E00E94740B75\r\n\
-:1017B000FC018081863721F084E092E00C94740B68\r\n\
-:1017C00008958BEE91E00E94DA0785EE91E00E9489\r\n\
-:1017D000740B0E943A0B0E94A71E809114019091F5\r\n\
-:1017E00015010C9429190C94B9108F929F92AF9205\r\n\
-:1017F000BF92CF92DF92EF92FF920F931F93CF93FE\r\n\
-:10180000DF9392E0B92ECEE3D4E004E414E0AA24FE\r\n\
-:10181000A39423E0922E3CE2C32E34E0D32E0E9408\r\n\
-:10182000000B7C018F3F2FEF920709F446C0809197\r\n\
-:10183000D902813009F128F0823029F1833049F151\r\n\
-:1018400039C08EEFE816F10419F4A092D902E7CF5F\r\n\
-:1018500090E8E916F10428F4FF92EF921F930F939A\r\n\
-:1018600004C0FF92EF92DF93CF930E9473080F9012\r\n\
-:101870000F900F900F90D3CF92E0E916F104D1F4BE\r\n\
-:10188000B092D902CCCFEA94EF28A1F49092D90279\r\n\
-:10189000C6CF8091560380FF0AC0FF92EF92DF927D\r\n\
-:1018A000CF920E9473080F900F900F900F908E2D83\r\n\
-:1018B0000E94590B1092D902B2CF8091DB028111A4\r\n\
-:1018C00021C08091DA0281111DC00E94500B81114C\r\n\
-:1018D0000AC00E942E198A50914029F00E94A71E2A\r\n\
-:1018E0008AE091E00DC00E94500B882359F00E94BD\r\n\
-:1018F0002E198651914031F00E94A71E86E191E099\r\n\
-:101900000E9429198091D7029091D8020E942C2719\r\n\
-:10191000893E23E0920708F461C028EE33E0B90164\r\n\
-:101920000E947032629FA001639F500D729F500D04\r\n\
-:1019300011248091D7029091D802840F951F909323\r\n\
-:10194000D8028093D7020E945611833011F481E0AF\r\n\
-:1019500001C080E00E94A8100E94202728EE33E0FA\r\n\
-:1019600040E050E00E94983249015A018CE3C82EB1\r\n\
-:10197000D12CE12CF12CCA01B901A70196010E94DA\r\n\
-:101980009832672B682B692B49F50E941F11209113\r\n\
-:10199000560320FF23C09F938F931F921F92C50170\r\n\
-:1019A000B40120E13EE040E050E00E949832C22FB6\r\n\
-:1019B000A70196010E9498323F932F931F92CF93D5\r\n\
-:1019C00087E194E09F938F930E9473088DB79EB731\r\n\
-:1019D0000A960FB6F8949EBF0FBE8DBF0E94500BA3\r\n\
-:1019E000811107C00E94540B882319F06E9A7698D3\r\n\
-:1019F00002C06E9A769ADF91CF911F910F91FF905E\r\n\
-:101A0000EF90DF90CF90BF90AF909F908F90089510\r\n\
-:101A10008F929F92AF92BF92CF92DF92EF92FF92FE\r\n\
-:101A20001F93CF93DF9300D000D0CDB7DEB78331C3\r\n\
-:101A300009F48CC008F05BC08B3009F466C08C30B0\r\n\
-:101A400009F48FC0853009F0FCC10E94202728EEE0\r\n\
-:101A500033E040E050E00E94983249015A010E9470\r\n\
-:101A60001F119F938F9386E692E09F938F930E941E\r\n\
-:101A70007308C501B40120E13EE040E050E00E945F\r\n\
-:101A800098325F934F933F932F9320E632E03F933A\r\n\
-:101A90002F9369837A838C839B830E9473084CE322\r\n\
-:101AA000C42ED12CE12CF12C69817A818C819B810F\r\n\
-:101AB000A70196010E9498325F934F933F932F9313\r\n\
-:101AC0008AE592E09F938F930E947308C501B40149\r\n\
-:101AD000A70196010E9498329F938F937F936F93F3\r\n\
-:101AE00084E592E09F938F930E94730840C18833EE\r\n\
-:101AF00061F020F4883109F440C1A3C1873409F4AE\r\n\
-:101B00006EC18C3409F456C19CC183EF93E00E94EE\r\n\
-:101B1000DA078EED93E00E94DA0784EC93E00E94EE\r\n\
-:101B2000DA078DE993E00E94DA0782E893E00E94E9\r\n\
-:101B3000DA0780E793E00E94DA078091DB028111E7\r\n\
-:101B40007EC180E593E00E94DA077EC10E94A60B69\r\n\
-:101B500088E392E00E94740B82E392E00E94740B8F\r\n\
-:101B60006CC187E393E00E94DA070E942E198A5025\r\n\
-:101B7000914019F48AE291E002C080E391E09F93E2\r\n\
-:101B80008F9389E293E09F938F930E9473088091D3\r\n\
-:101B9000DA021F928F938AE193E09F938F930E94C2\r\n\
-:101BA00073080E94500B0FB6F894DEBF0FBECDBF76\r\n\
-:101BB000811107C00E94540B882331F08CE391E01F\r\n\
-:101BC00005C085E391E002C089E391E09F938F9384\r\n\
-:101BD00080E193E09F938F930E9473080E94350BDE\r\n\
-:101BE0001F928F9385EF92E09F938F930E947308CB\r\n\
-:101BF0008091DB021F928F9384EE92E09F938F93EC\r\n\
-:101C00000E94730880916C030FB6F894DEBF0FBE7C\r\n\
-:101C1000CDBF8823B9F080916C038130B1F0809101\r\n\
-:101C20006C038230A9F080916C038330A1F0809125\r\n\
-:101C30006C03843099F080916C03853091F483E7D4\r\n\
-:101C400091E011C089E491E00EC081E491E00BC005\r\n\
-:101C500084E591E008C08CE591E005C086E691E05E\r\n\
-:101C600002C081E791E09F938F9385ED92E09F936F\r\n\
-:101C70008F930E9473088BEC92E09F938F930E9446\r\n\
-:101C800073080E9456110F900F900F900F900F90B5\r\n\
-:101C90000F90813059F038F0823059F0833061F480\r\n\
-:101CA00085EB92E00BC086EC92E008C080EC92E0FD\r\n\
-:101CB00005C089EB92E002C083EB92E09F938F9383\r\n\
-:101CC0000E9473080F900F9081EB92E09F938F9387\r\n\
-:101CD0000E94730880916A031F928F9388E992E0B3\r\n\
-:101CE0009F938F930E9473088091D90081701F92F7\r\n\
-:101CF0008F938EE892E09F938F930E9473080E94C7\r\n\
-:101D0000202728EE33E040E050E00E94983269013D\r\n\
-:101D10007A015CE3852E912CA12CB12CC701B60170\r\n\
-:101D2000A50194010E9498327F936F93C701B60179\r\n\
-:101D300020E13EE040E050E00E949832122FA501E1\r\n\
-:101D400094010E9498323F932F931F921F93C701D3\r\n\
-:101D5000B60120E831E541E050E00E9498323F931F\r\n\
-:101D60002F9381E792E09F938F930E9473080FB6A1\r\n\
-:101D7000F894DEBF0FBECDBF62C08091DB0281113F\r\n\
-:101D800063C08091DA02882339F089E492E00E94EE\r\n\
-:101D9000DA071092DA0253C08FE392E00E94DA076A\r\n\
-:101DA00081E08093DA020E94A71E86E191E00E9402\r\n\
-:101DB000291945C00E94350B882351F08C830E945D\r\n\
-:101DC000A60B91E0909366039093DB028C813DC05B\r\n\
-:101DD0000E94E10B109266031092DB0230C08091EA\r\n\
-:101DE000DB02811102C00E94A60B8EED91E00E94E1\r\n\
-:101DF000740B83ED91E00E94740B8FEB91E00E94D5\r\n\
-:101E0000740B88EB91E00E94740B8EEA91E00E94C3\r\n\
-:101E1000740B87EA91E00E94740B8DE991E00E94B7\r\n\
-:101E2000740B83E991E00E94740B8DE891E00E94AD\r\n\
-:101E3000740B8091DB02811102C00E94E10B81E0F2\r\n\
-:101E400004C08091DB0201C080E00F900F900F90E2\r\n\
-:101E50000F90DF91CF911F91FF90EF90DF90CF9087\r\n\
-:101E6000BF90AF909F908F900895CF93C82F0E94FE\r\n\
-:101E7000B324827221E009F420E08C2F90E0FC0171\r\n\
-:101E80003497E934F10508F0FDC0EA5AFF4F0C948D\r\n\
-:101E9000BA328AE058C1222309F4F8C081E453C160\r\n\
-:101EA000222309F4F5C082E44EC1222309F4F2C0D2\r\n\
-:101EB00083E449C1222309F4EFC084E444C122230E\r\n\
-:101EC00009F4ECC085E43FC1222309F4E9C086E4AB\r\n\
-:101ED0003AC1222309F4E6C087E435C1222309F47C\r\n\
-:101EE000E3C088E430C1222309F4E0C089E42BC1B7\r\n\
-:101EF000222309F4DDC08AE426C1222309F4DAC0D2\r\n\
-:101F00008BE421C1222309F4D7C08CE41CC1222315\r\n\
-:101F100009F4D4C08DE417C1222309F4D1C08EE4A2\r\n\
-:101F200012C1222309F4CEC08FE40DC1222309F48B\r\n\
-:101F3000CBC080E508C1222309F4C8C081E503C1F4\r\n\
-:101F4000222309F4C5C082E5FEC0222309F4C2C0E1\r\n\
-:101F500083E5F9C0222309F4BFC084E5F4C022233D\r\n\
-:101F600009F4BCC085E5EFC0222309F4B9C086E5B9\r\n\
-:101F7000EAC0222309F4B6C087E5E5C0222309F4AC\r\n\
-:101F8000B3C088E5E0C0222309F4B0C089E5DBC016\r\n\
-:101F9000222309F4ADC08AE5D6C0222309F4AAC0E1\r\n\
-:101FA00081E2D1C0222309F4A7C080E4CCC022235F\r\n\
-:101FB00009F4A4C083E2C7C0222309F4A1C084E2CB\r\n\
-:101FC000C2C0222309F49EC085E2BDC0222309F4C9\r\n\
-:101FD0009BC08EE5B8C0222309F498C086E2B3C046\r\n\
-:101FE000222309F495C08AE2AEC0222309F492C0EC\r\n\
-:101FF00088E2A9C0222309F48FC089E2A4C088E046\r\n\
-:10200000A2C089E0A0C080E29EC0222309F486C05D\r\n\
-:102010008FE599C0222309F483C08BE294C0222368\r\n\
-:1020200009F480C08BE78FC0222309F47DC08DE7BF\r\n\
-:102030008AC0222309F47AC08CE785C02111FCCF25\r\n\
-:102040008CE581C0222309F473C08AE37CC022237B\r\n\
-:1020500009F470C082E277C0222309F46DC08EE7D4\r\n\
-:1020600072C0222309F46AC08CE36DC0222309F4F4\r\n\
-:1020700067C08EE368C0222309F464C08FE363C0A5\r\n\
-:1020800080E061C080E25FC08BE15DC081E65BC043\r\n\
-:1020900082E659C083E657C084E655C085E653C042\r\n\
-:1020A00086E651C087E64FC088E64DC089E64BC042\r\n\
-:1020B0008AE649C08BE647C08CE645C08DE643C042\r\n\
-:1020C0008EE641C08FE63FC080E73DC081E73BC060\r\n\
-:1020D00082E739C083E737C084E735C085E733C07E\r\n\
-:1020E00086E731C087E72FC088E72DC089E72BC07E\r\n\
-:1020F0008AE729C081E327C082E325C083E323C0A8\r\n\
-:1021000084E321C085E31FC086E31DC087E31BC0B5\r\n\
-:1021100088E319C089E317C080E315C08DE213C0BE\r\n\
-:102120008DE311C08BE50FC08DE50DC08CE50BC0B4\r\n\
-:102130008BE309C087E207C080E605C08CE203C0DC\r\n\
-:102140008EE201C08FE20E94330B81E0CF910895AF\r\n\
-:10215000833019F4859A7D9A0895813011F4859A17\r\n\
-:1021600006C0823019F4859A8D9A089585988D98C5\r\n\
-:10217000089581E00E94A8102FEF89E698E1215090\r\n\
-:1021800080409040E1F700C0000082E00E94A8106B\r\n\
-:102190002FEF89E698E1215080409040E1F700C0A0\r\n\
-:1021A000000081E00E94A8102FEF89E698E12150FD\r\n\
-:1021B00080409040E1F700C0000082E00E94A8103B\r\n\
-:1021C0002FEF89E698E1215080409040E1F700C070\r\n\
-:1021D000000080E00E94A81080EC80937C0087E0E3\r\n\
-:1021E00080937A0081E980937E0081E080937F0074\r\n\
-:1021F0008BE380937D00849A8C9808958091D90018\r\n\
-:1022000080FF1BC020B391B385988D9AEFE9FFE062\r\n\
-:102210003197F1F700C000008FB185FB882780F966\r\n\
-:1022200030B320723F7D232B20BB21B390722F7DD2\r\n\
-:10223000922B91BB91E08927089580E00895CF9378\r\n\
-:10224000DF9300D0CDB7DEB7849A8C9A80917A0064\r\n\
-:10225000806880937A008FE99FE00197F1F700C0D2\r\n\
-:10226000000080917A00806480937A0080917A00E7\r\n\
-:1022700086FDFCCF80917800909179009A838983C4\r\n\
-:1022800080917A008F7780937A00849A8C98298144\r\n\
-:102290003A8145E0429FC001439F900D1124805533\r\n\
-:1022A00091090F900F90DF91CF9108958091D900FF\r\n\
-:1022B00080FD0C94FE100E941F118C3A2DE09207B5\r\n\
-:1022C00020F481E08093DC0205C085379E4010F049\r\n\
-:1022D0001092DC028091DC02882311F083E00895E3\r\n\
-:1022E00082E00895CF93C82F0E9497078C2F0E94F9\r\n\
-:1022F000011280E0CF910895CF9384B7877F84BF88\r\n\
-:1023000088E10FB6F89480936000109260000FBED1\r\n\
-:1023100090E080E80FB6F89480936100909361009C\r\n\
-:102320000FBE0E9476160E94D3168091E200846050\r\n\
-:102330008093E20082E791E10E948E26509A589A9B\r\n\
-:102340005198599A7894CFEF80916C03C1508430A2\r\n\
-:1023500051F08FE79EE30197F1F700C000000E9463\r\n\
-:102360000C19C111F1CF87E694E00E94DA070E94B0\r\n\
-:102370003D0B0E94F30B8BE594E00E94DA070E946C\r\n\
-:10238000BB190E94500B811103C08AE091E002C08A\r\n\
-:1023900086E191E00E9429198BE494E00E94DA071B\r\n\
-:1023A0000E94500B882319F180916C038530F9F459\r\n\
-:1023B00087E494E00E94DA070E94DA090E94A526C9\r\n\
-:1023C0000E94A5260E94A5260E94A5260E94A52659\r\n\
-:1023D0000E94A5260E94A52680916A03882301F306\r\n\
-:1023E0000E94CB268823E1F20E94CC14D9CF0E9410\r\n\
-:1023F000E9190E940C190E94F50BD2CF8091F002CE\r\n\
-:1024000008959FB7F8941092DF029FBF90916C03DC\r\n\
-:10241000943009F058C09091E9009F702091EC0031\r\n\
-:1024200020FF02C020E801C020E0292B94E0909317\r\n\
-:10243000E9009091EB0090FF43C09091EE0097FF70\r\n\
-:102440003FC09091DD02992321F09091E80095FF23\r\n\
-:1024500037C01092DD0296E03091E80035FD15C0DE\r\n\
-:1024600030916C03343061F53091EB0035FD28C0BC\r\n\
-:10247000915021F481E08093DD0222C0EFE9FFE07A\r\n\
-:102480003197F1F700C00000E7CF8093F100809111\r\n\
-:10249000E80085FD0AC08091E80080FFFCCF8091B4\r\n\
-:1024A000E8008E778093E80006C08FB7F89491E03B\r\n\
-:1024B0009093DF028FBF2F702093E90080E0089592\r\n\
-:1024C0002F702093E9008FEF0895CF93DF9300D012\r\n\
-:1024D0001F92CDB7DEB720916C03243019F523E0AD\r\n\
-:1024E00029839B838A832093E9008FEF9091E800F2\r\n\
-:1024F000815095FD06C095ED9A95F1F70000811188\r\n\
-:10250000F5CF8091E80085FF0DC040E050E063E02A\r\n\
-:1025100070E0CE0101960E94E2148091E8008E776F\r\n\
-:102520008093E8000F900F900F90DF91CF91089566\r\n\
-:10253000CF93DF9300D01F92CDB7DEB720916C030D\r\n\
-:10254000243021F522E029839B838A8383E08093D2\r\n\
-:10255000E9008FEF9091E800815095FD06C095ED60\r\n\
-:102560009A95F1F700008111F5CF8091E80085FF81\r\n\
-:102570000DC040E050E063E070E0CE0101960E94A3\r\n\
-:10258000E2148091E8008E778093E8000F900F901E\r\n\
-:102590000F90DF91CF91089520916C032430F1F4D6\r\n\
-:1025A00022E02093E9002FEF3091E800215035FD23\r\n\
-:1025B00006C035ED3A95F1F700002111F5CF2091D5\r\n\
-:1025C000E80025FF0BC040E050E065E070E00E94AD\r\n\
-:1025D000E2148091E8008E778093E8000895CF930D\r\n\
-:1025E000DF93EC0180916C03843009F047C0809147\r\n\
-:1025F00020018823E1F0809121018823C1F085E04A\r\n\
-:102600008093E9008FEF9091E800815095FD06C01E\r\n\
-:1026100095E19A95F1F700008111F5CF8091E800DE\r\n\
-:1026200085FF2CC040E050E060E170E017C081E021\r\n\
-:102630008093E9008FEF9091E800815095FD06C0EE\r\n\
-:1026400095ED9A95F1F700008111F5CF8091E800A2\r\n\
-:1026500085FF14C040E050E068E070E0CE010E94C9\r\n\
-:10266000E2148091E8008E778093E80080E1FE011B\r\n\
-:10267000A0EEB2E001900D928A95E1F7DF91CF9143\r\n\
-:10268000089582E894E00E94DA0780916B0381113B\r\n\
-:1026900009C00E9476160E94D3168091E2008460E1\r\n\
-:1026A0008093E20008958EE794E00E94DA0710928A\r\n\
-:1026B0006B0308958AE794E00C94DA0786E794E0C8\r\n\
-:1026C0000C94DA0782E794E00E94DA070C94E02683\r\n\
-:1026D0008091DE028F5F8093DE0262E30E946432AB\r\n\
-:1026E000911135C01092DE028091DF02882379F1CA\r\n\
-:1026F00080916C03843049F58091E9008F7090914E\r\n\
-:10270000EC0090FF02C090E801C090E0982B84E0BC\r\n\
-:102710008093E9008091EB0080FF14C08091EE006F\r\n\
-:1027200087FF10C08091E80085FF03C01092F10080\r\n\
-:10273000F9CF8091E80080FF05C08091E8008E7796\r\n\
-:102740008093E8009F709093E9001092DF02089553\r\n\
-:1027500042E061EC81E00E94F01542E061EC82E031\r\n\
-:102760000E94F01542E061EC83E00E94F01542E225\r\n\
-:1027700061EC84E00E94F01542E161EC85E00C948C\r\n\
-:10278000F01580916E03833009F455C030F4813028\r\n\
-:1027900071F0823009F48EC008958A3009F47AC04D\r\n\
-:1027A0008B3009F460C0893009F09CC020C0809152\r\n\
-:1027B0006D03813A09F096C08091E800877F80938D\r\n\
-:1027C000E8008091710390917203892B21F060E001\r\n\
-:1027D00080E090E003C060E180EE92E070E00E9453\r\n\
-:1027E0002D158091E8008B778093E8000895809103\r\n\
-:1027F0006D03813209F076C080917103909172036C\r\n\
-:10280000009719F0049709F06DC08091E800877F68\r\n\
-:102810008093E8008091E80082FD05C080916C0300\r\n\
-:102820008111F8CF5FC08091F1008093F002809118\r\n\
-:10283000E8008B7753C080916D03813A09F052C054\r\n\
-:102840008091710390917203892B09F04BC08091A4\r\n\
-:10285000E800877F8093E8008091E80080FFFCCF4C\r\n\
-:102860008091200136C080916D038132D9F580912D\r\n\
-:10287000710390917203892BA9F58091E800877FFD\r\n\
-:102880008093E8000E94251680916F0380932001B9\r\n\
-:102890000C94A71E80916D03813221F58091E80090\r\n\
-:1028A000877F8093E8000E942516809170038093B3\r\n\
-:1028B000F102089580916D03813AA1F48091E800BE\r\n\
-:1028C000877F8093E8008091E80080FFFCCF8091B3\r\n\
-:1028D000F1028093F1008091E8008E778093E80008\r\n\
-:1028E0000C9425160895292F332723303105A9F09C\r\n\
-:1028F0006CF42130310509F442C02230310509F071\r\n\
-:1029000043C08DE890E02EEA34E042C02132310528\r\n\
-:10291000C9F02232310519F137C09927813091056C\r\n\
-:1029200041F08230910541F0892B71F5EAEAF4E03B\r\n\
-:1029300005C0EAE9F4E002C0E6E8F4E0849190E042\r\n\
-:102940009F0126C0653000F5E62FF0E0EE0FFF1F77\r\n\
-:10295000E457FE4F2081318189E090E019C0653055\r\n\
-:1029600098F4E62FF0E0DF01AA0FBB1FAE57BE4F71\r\n\
-:102970002D913C91E358FE4F808190E009C082E1A7\r\n\
-:1029800090E02BE335E004C080E090E020E030E010\r\n\
-:10299000FA0131832083089580E189BD82E189BDF8\r\n\
-:1029A00009B400FEFDCF8091D8008F7D8093D800C0\r\n\
-:1029B0008091E00082608093E0008091E00081FDE2\r\n\
-:1029C000FCCF0895CF92DF92EF92FF920F931F9367\r\n\
-:1029D000CF93DF937C018B01EA010E94461681119F\r\n\
-:1029E00033C0209731F088819981081B190BE80EBC\r\n\
-:1029F000F91EC12CD12C0115110529F18091E80097\r\n\
-:102A000085FD16C08091E8008E778093E8000E94D3\r\n\
-:102A10000C19209741F0888199818C0D9D1D998317\r\n\
-:102A2000888385E011C00E944616882321F30CC0DC\r\n\
-:102A3000F70181917F018093F10001501109FFEFAF\r\n\
-:102A4000CF1ADF0AD8CF80E0DF91CF911F910F918D\r\n\
-:102A5000FF90EF90DF90CF90089520917303309115\r\n\
-:102A600074032617370748F06115710539F4209172\r\n\
-:102A7000E8002E772093E80001C0B901FC0120E0B6\r\n\
-:102A800061157105B9F180916C03882309F440C088\r\n\
-:102A9000853009F43FC08091E80083FD3DC08091FE\r\n\
-:102AA000E80082FF06C08091E80082FF26C080E037\r\n\
-:102AB00008958091E80080FFE3CF2091F30080919A\r\n\
-:102AC000F20090E0922B6115710551F0883091056C\r\n\
-:102AD00038F421912093F100615071090196F3CFF0\r\n\
-:102AE00021E0089709F020E08091E8008E7780933C\r\n\
-:102AF000E800C6CF2111C7CFD6CF80916C038823C1\r\n\
-:102B000039F0853039F08091E80083FFCCCF04C0E4\r\n\
-:102B100082E0089583E0089581E008952091730391\r\n\
-:102B2000309174032617370748F06115710539F4A1\r\n\
-:102B30002091E8002E772093E80001C0B901FC0144\r\n\
-:102B400020E061157105C1F180916C03882309F4BF\r\n\
-:102B500041C0853009F440C08091E80083FD3EC04B\r\n\
-:102B60008091E80082FF06C08091E80082FF27C0C4\r\n\
-:102B700080E008958091E80080FFE3CF2091F3008A\r\n\
-:102B80008091F20090E0922B6115710559F0883028\r\n\
-:102B9000910540F424912093F10031966150710920\r\n\
-:102BA0000196F2CF21E0089709F020E08091E8003B\r\n\
-:102BB0008E778093E800C5CF2111C6CFD5CF809105\r\n\
-:102BC0006C03882339F0853039F08091E80083FF69\r\n\
-:102BD000CBCF04C082E0089583E0089581E008959A\r\n\
-:102BE000982F973058F59093E900981739F0709125\r\n\
-:102BF000EC002091ED005091F00003C0242F762FBF\r\n\
-:102C000050E021FF19C03091EB003E7F3093EB0084\r\n\
-:102C10003091ED003D7F3093ED003091EB0031605D\r\n\
-:102C20003093EB007093EC002093ED005093F00094\r\n\
-:102C30002091EE0027FF07C09F5FD3CF8F70809356\r\n\
-:102C4000E90081E0089580E0089580916D0387FD9B\r\n\
-:102C500005C08091E80080FF0EC012C08091E8009E\r\n\
-:102C600082FD05C080916C038111F8CF0895809199\r\n\
-:102C7000E8008B7708C080916C038111EACF08953A\r\n\
-:102C80008091E8008E778093E80008958091E400B9\r\n\
-:102C90009091E50045E62091EC0020FF21C02091B5\r\n\
-:102CA000E80020FD21C020916C03222389F025300B\r\n\
-:102CB00089F02091EB0025FD0FC02091E4003091B8\r\n\
-:102CC000E5002817390739F3415041F0C901E3CF36\r\n\
-:102CD00082E0089583E0089581E0089584E00895F6\r\n\
-:102CE0002091E80022FFDFCF80E008950E94E416E3\r\n\
-:102CF0000E94EC16E0EEF0E0808181608083E8EDD8\r\n\
-:102D0000F0E080818F77808319BCA7EDB0E08C91D3\r\n\
-:102D10008E7F8C9380818F7E808310926B030895C9\r\n\
-:102D20000F931F93CF93DF930E94E4160E94EC163B\r\n\
-:102D3000C8EDD0E088818F77888388818068888318\r\n\
-:102D400088818F7D888319BC10926C031092680370\r\n\
-:102D500010926A031092690300EE10E0F80180817E\r\n\
-:102D60008B7F808388818160888342E060E080E09F\r\n\
-:102D70000E94F015E1EEF0E080818E7F8083E2EE2C\r\n\
-:102D8000F0E0808181608083808188608083F801A9\r\n\
-:102D900080818E7F8083888180618883DF91CF915D\r\n\
-:102DA0001F910F910895E8EDF0E080818F7E808380\r\n\
-:102DB000E7EDF0E080818160808384E082BF81E084\r\n\
-:102DC00080936B030C949016E8EDF0E080818E7F89\r\n\
-:102DD00080831092E20008951092DA001092E100D0\r\n\
-:102DE00008951F920F920FB60F9211242F933F93C5\r\n\
-:102DF0004F935F936F937F938F939F93AF93BF9303\r\n\
-:102E0000EF93FF938091E10082FF0BC08091E2007D\r\n\
-:102E100082FF07C08091E1008B7F8093E1000E94D8\r\n\
-:102E200068138091DA0080FF1FC08091D80080FF76\r\n\
-:102E30001BC08091DA008E7F8093DA008091D900E8\r\n\
-:102E400080FF0DC080E189BD82E189BD09B400FE2B\r\n\
-:102E5000FDCF81E080936C030E94411305C019BC33\r\n\
-:102E600010926C030E9453138091E10080FF19C0FF\r\n\
-:102E70008091E20080FF15C08091E2008E7F8093F8\r\n\
-:102E8000E2008091E20080618093E2008091D800AE\r\n\
-:102E900080628093D80019BC85E080936C030E9407\r\n\
-:102EA0005E138091E10084FF30C08091E20084FFD6\r\n\
-:102EB0002CC080E189BD82E189BD09B400FEFDCF4F\r\n\
-:102EC0008091D8008F7D8093D8008091E1008F7E23\r\n\
-:102ED0008093E1008091E2008F7E8093E2008091F8\r\n\
-:102EE000E20081608093E20080916803882311F002\r\n\
-:102EF00084E007C08091E30087FF02C083E001C047\r\n\
-:102F000081E080936C030E9462138091E10083FF53\r\n\
-:102F100024C08091E20083FF20C08091E100877F80\r\n\
-:102F20008093E10082E080936C03109268038091AB\r\n\
-:102F3000E1008E7F8093E1008091E2008E7F80939C\r\n\
-:102F4000E2008091E20080618093E20042E060E074\r\n\
-:102F500080E00E94F0150E945A13FF91EF91BF91FB\r\n\
-:102F6000AF919F918F917F916F915F914F913F9121\r\n\
-:102F70002F910F900FBE0F901F9018951F93CF9316\r\n\
-:102F8000DF93CDB7DEB7AA970FB6F894DEBF0FBEBA\r\n\
-:102F9000CDBFEDE6F3E08091F100819323E0E537CA\r\n\
-:102FA000F207C9F70E94C1138091E80083FF1CC19A\r\n\
-:102FB00020916D0330916E03832F90E08A3091054C\r\n\
-:102FC00008F012C1FC01E156FF4F0C94BA322038D0\r\n\
-:102FD00081F0223809F008C1809171038F708093CD\r\n\
-:102FE000E9008091EB0085FB882780F91092E900C9\r\n\
-:102FF00006C08091690390916A039111826090915B\r\n\
-:10300000E800977F9093E8008093F1001092F10020\r\n\
-:10301000C5C0822F8D7F09F0E7C0222319F022302E\r\n\
-:1030200061F0E2C080916F03813009F0DDC0333080\r\n\
-:1030300009F080E080936A0328C080916F038111BA\r\n\
-:1030400024C0209171032F7009F4CEC02093E900B1\r\n\
-:103050008091EB0080FF19C08091EB00333011F4B8\r\n\
-:10306000806211C080618093EB0081E090E0022ECD\r\n\
-:1030700001C0880F0A94EAF78093EA001092EA00F0\r\n\
-:103080008091EB0088608093EB001092E9008091C2\r\n\
-:10309000E800877F86C02111A7C010916F031F77BA\r\n\
-:1030A0008091E3008078812B8093E3008091E80099\r\n\
-:1030B000877F8093E8000E9425168091E80080FFBA\r\n\
-:1030C000FCCF8091E30080688093E300112311F02E\r\n\
-:1030D00083E001C082E080936C0386C020582230D8\r\n\
-:1030E00008F082C080916F03909170038C3D23E0C3\r\n\
-:1030F000920779F583E08A838AE289834FB7F8944F\r\n\
-:10310000DE01139620E03EE051E2E32FF0E0509321\r\n\
-:103110005700E49120FF03C0E295EF703F5FEF702E\r\n\
-:103120008E2F90E0EA3010F0C79601C0C0968D93C4\r\n\
-:103130009D932F5F243149F74FBF8091E800877F2F\r\n\
-:103140008093E8006AE270E0CE0101960E942D159E\r\n\
-:1031500014C0AE014F5F5F4F609171030E94731402\r\n\
-:10316000009709F441C02091E800277F2093E800F0\r\n\
-:10317000BC0189819A810E948E158091E8008B772D\r\n\
-:103180008093E80031C0203879F58091E800877F8E\r\n\
-:103190008093E800809168038093F1008091E800BB\r\n\
-:1031A0008E778093E8000E9425161EC021111CC056\r\n\
-:1031B00090916F039230C0F48091E800877F8093F4\r\n\
-:1031C000E800909368030E9425168091680381119E\r\n\
-:1031D00004C08091E30087FF02C084E001C081E069\r\n\
-:1031E00080936C030E94A8138091E80083FF0AC0BB\r\n\
-:1031F0008091E800877F8093E8008091EB008062F7\r\n\
-:103200008093EB00AA960FB6F894DEBF0FBECDBF39\r\n\
-:10321000DF91CF911F910895CF9380916C03882304\r\n\
-:10322000B1F08091E9008F709091EC0090FF02C0A6\r\n\
-:1032300090E801C090E0C92FC82B1092E90080915E\r\n\
-:10324000E80083FD0E94BE17CF70C093E900CF91C4\r\n\
-:1032500008959093F7028093F60208958091F60204\r\n\
-:103260009091F7020895E091F602F091F7023097FD\r\n\
-:1032700021F00190F081E02D099480E00895FF9203\r\n\
-:103280000F931F93CF93DF938C01E091F602F0919F\r\n\
-:10329000F702309799F10280F381E02D0995809132\r\n\
-:1032A000560382FF2BC080FF04C080E796E00E9497\r\n\
-:1032B000DA07E80180E1F82E0AE616E0809156036D\r\n\
-:1032C00080FF0BC088811F928F931F930F930E94E2\r\n\
-:1032D00073080F900F900F900F90FA942196F110B1\r\n\
-:1032E000EDCF8091560380FF09C088E696E0DF911C\r\n\
-:1032F000CF911F910F91FF900C94DA07DF91CF913E\r\n\
-:103300001F910F91FF900895E091F602F091F7025E\r\n\
-:10331000309721F00480F581E02D099408952091E3\r\n\
-:10332000F4023091F5028217930771F09093F50241\r\n\
-:103330008093F402E091F602F091F702309721F0C9\r\n\
-:103340000680F781E02D099408952091F2023091D2\r\n\
-:10335000F3028217930771F09093F3028093F202C5\r\n\
-:10336000E091F602F091F702309721F00084F185A8\r\n\
-:10337000E02D099408950E940B270E94AA080C943E\r\n\
-:103380000928CF93C82F8091560382FF1EC080FF6B\r\n\
-:1033900004C089E896E00E94DA078091560380FF16\r\n\
-:1033A0000CC01F92CF9324E836E03F932F930E94E6\r\n\
-:1033B00073080F900F900F900F908091560380FF2D\r\n\
-:1033C00004C082E896E00E94DA078C2FCF910C941B\r\n\
-:1033D000DC09CF92DF92EF92FF920F931F93CF936E\r\n\
-:1033E000DF93CDB7DEB72B970FB6F894DEBF0FBED5\r\n\
-:1033F000CDBF0E94CF0839EFE32E32E0F32E00E07C\r\n\
-:1034000010E0C02E802F0E94A409F701D1907F0107\r\n\
-:10341000D826B1F40F5F1F4F0830110591F78FEFD9\r\n\
-:1034200089838A831B820E9414278160782F9D8361\r\n\
-:103430008C8349815A816B818D810E948C1A41C095\r\n\
-:103440009091560391FF04C08B870E94AC098B8535\r\n\
-:1034500020E030E04D2D50E0922FBA01022E02C044\r\n\
-:10346000759567950A94E2F760FF25C02E83CF8299\r\n\
-:10347000EE24E394F12C02C0EE0CFF1C9A95E2F7C7\r\n\
-:1034800090E08E219F2121E0892B09F420E02887FC\r\n\
-:103490000E9414278160782F9A8789874E815F81E7\r\n\
-:1034A00068858A850E948C1AF801E750FD4F80815B\r\n\
-:1034B0008E25808306C02F5F3F4F2830310561F68F\r\n\
-:1034C000A9CF0E94772B1091F8020E943319181788\r\n\
-:1034D000A1F00E9433198093F8022B960FB6F8944E\r\n\
-:1034E000DEBF0FBECDBFDF91CF911F910F91FF9037\r\n\
-:1034F000EF90DF90CF900C94C1192B960FB6F894F3\r\n\
-:10350000DEBF0FBECDBFDF91CF911F910F91FF9016\r\n\
-:10351000EF90DF90CF900895CF93DF93CDB7DEB7D4\r\n\
-:103520002B970FB6F894DEBF0FBECDBF4F835887E1\r\n\
-:1035300069877A878B87DE01119686E0FD011192FB\r\n\
-:103540008A95E9F785E0FE01379601900D928A95FC\r\n\
-:10355000E1F749815A816B817C818D819E810E9436\r\n\
-:1035600073212B960FB6F894DEBF0FBECDBFDF914F\r\n\
-:10357000CF910895CF93C82F882309F498C08CEF7A\r\n\
-:103580008C0F813A48F48C2F0E94F02F81118FC04C\r\n\
-:103590008C2F0E9410240CC080E28C0F883058F4CD\r\n\
-:1035A000C77081E001C0880FCA95EAF70E94B6246F\r\n\
-:1035B000CF910C94F9248BE58C0F833078F4C53AC5\r\n\
-:1035C00029F0C63A31F482E890E005C081E890E045\r\n\
-:1035D00002C083E890E0CF910C948F1988E58C0F9E\r\n\
-:1035E000833108F064C0C83A39F1C93A41F1CA3AA6\r\n\
-:1035F00049F1CB3A51F1CC3A59F1CD3A61F1C03BA6\r\n\
-:1036000069F1CE3A71F1CF3A79F1C13B81F1C23B18\r\n\
-:1036100089F1C33B91F1C43B99F1C53BA1F1C63B94\r\n\
-:10362000A9F1C73BB1F1C83BB9F1C93BC1F1CA3BF4\r\n\
-:10363000C9F58AE292E038C082EE90E035C089EEAA\r\n\
-:1036400090E032C08AEE90E02FC085EB90E02CC075\r\n\
-:1036500086EB90E029C087EB90E026C08CEC90E0F0\r\n\
-:1036600023C08DEC90E020C083E891E01DC08AE883\r\n\
-:1036700091E01AC082E991E017C084E991E014C09A\r\n\
-:1036800081E292E011C083E292E00EC084E292E017\r\n\
-:103690000BC085E292E008C086E292E005C087E2B6\r\n\
-:1036A00092E002C080E090E0CF910C94A519CF91F8\r\n\
-:1036B0000895882329F19CEF980F913A18F40E94FD\r\n\
-:1036C00061240DC090E2980F983058F4877091E013\r\n\
-:1036D00001C0990F8A95EAF7892F0E94BC240C94A7\r\n\
-:1036E000F9249BE5980F933020F480E090E00C944F\r\n\
-:1036F0008F19885A833120F480E090E00C94A5194A\r\n\
-:103700000895882321F00E94B6240C94F92408958A\r\n\
-:10371000882321F00E94BC240C94F9240895CF92B0\r\n\
-:10372000DF92EF92FF920F931F93CF93DF93CDB76A\r\n\
-:10373000DEB728970FB6F894DEBF0FBECDBF8C0161\r\n\
-:1037400085E0F801DE01119601900D928A95E1F76E\r\n\
-:10375000F80140813181F280258122952F7083818B\r\n\
-:103760009481892B31F03F3F31F481E04F3F19F4D0\r\n\
-:1037700003C081E001C080E080FDC8C249833A8374\r\n\
-:1037800089819A812F830E94CE239E8388870E94FD\r\n\
-:10379000CD230E94A0224E81E42FE295EF70F0E04D\r\n\
-:1037A000E755FF4F2F8168850C94BA32842F807FB4\r\n\
-:1037B000142F1F70882311F01295107FFF2059F0ED\r\n\
-:1037C000112309F458C2812F68870E94C6240E94E1\r\n\
-:1037D000F924688550C2862F0E94591B112309F4D1\r\n\
-:1037E00095C2812F0E94CC2428960FB6F894DEBF94\r\n\
-:1037F0000FBECDBFDF91CF911F910F91FF90EF9042\r\n\
-:10380000DF90CF900C94F924342F307F842F8F7069\r\n\
-:10381000303211F08295807F662319F0613009F112\r\n\
-:103820002AC0FF20A1F0222381F1213071F52896D2\r\n\
-:103830000FB6F894DEBF0FBECDBFDF91CF911F91C1\r\n\
-:103840000F91FF90EF90DF90CF900C94D62422231D\r\n\
-:1038500019F0213009F45AC28E830E94DF248E8130\r\n\
-:103860008EC1FF2021F0263008F050C20EC0253056\r\n\
-:1038700008F04CC284C1FF20C1F0222331F0F801CE\r\n\
-:10388000958190FFF8C19F70958328960FB6F894A4\r\n\
-:10389000DEBF0FBECDBFDF91CF911F910F91FF9083\r\n\
-:1038A000EF90DF90CF900C94811B222309F467C125\r\n\
-:1038B000F6C1242F26952695237030E02115310579\r\n\
-:1038C00021F021303105C9F021C2FF2021F0862FDF\r\n\
-:1038D000942F937002C080E090E028960FB6F89481\r\n\
-:1038E000DEBF0FBECDBFDF91CF911F910F91FF9033\r\n\
-:1038F000EF90DF90CF900C948F19FF2021F0862F4E\r\n\
-:10390000942F937002C080E090E028960FB6F89450\r\n\
-:10391000DEBF0FBECDBFDF91CF911F910F91FF9002\r\n\
-:10392000EF90DF90CF900C94A519862FFF2019F00F\r\n\
-:103930000E94FD2902C00E94652A28960FB6F894BD\r\n\
-:10394000DEBF0FBECDBFDF91CF911F910F91FF90D2\r\n\
-:10395000EF90DF90CF900C94EA2A842F837009F0C7\r\n\
-:1039600076C0F110D3C1262F229526952770220FFD\r\n\
-:10397000220F862F8F70C82ED12CE12CF12C022E15\r\n\
-:1039800004C0CC0CDD1CEE1CFF1C0A94D2F764FFB3\r\n\
-:1039900010C06FE070E080E090E004C0660F771F19\r\n\
-:1039A000881F991F2A95D2F76095709580959095FC\r\n\
-:1039B00003C060E070E0CB01242F2695269523708C\r\n\
-:1039C000422F50E042305105D1F04330510559F1BA\r\n\
-:1039D0006C297D298E299F294130510541F1289676\r\n\
-:1039E0000FB6F894DEBF0FBECDBFDF91CF911F9110\r\n\
-:1039F0000F91FF90EF90DF90CF900C94C5226C292F\r\n\
-:103A00007D298E299F2928960FB6F894DEBF0FBE18\r\n\
-:103A1000CDBFDF91CF911F910F91FF90EF90DF907D\r\n\
-:103A2000CF900C94DF220E94C522C701B6012896D0\r\n\
-:103A30000FB6F894DEBF0FBECDBFDF91CF911F91BF\r\n\
-:103A40000F91FF90EF90DF90CF900C94AB22FF206E\r\n\
-:103A500019F0842F817001C08695882309F456C11E\r\n\
-:103A6000262F229526952770220F220F862F8F70E2\r\n\
-:103A7000C82ED12CE12CF12C022E04C0CC0CDD1C64\r\n\
-:103A8000EE1CFF1C0A94D2F764FF10C06FE070E0D8\r\n\
-:103A900080E090E004C0660F771F881F991F2A9569\r\n\
-:103AA000D2F7609570958095909503C060E070E0C6\r\n\
-:103AB000CB01242F269526952370422F50E04230CB\r\n\
-:103AC0005105D1F04330510559F16C297D298E29DA\r\n\
-:103AD0009F294130510541F128960FB6F894DEBF79\r\n\
-:103AE0000FBECDBFDF91CF911F910F91FF90EF904F\r\n\
-:103AF000DF90CF900C9499236C297D298E299F29E2\r\n\
-:103B000028960FB6F894DEBF0FBECDBFDF91CF91E0\r\n\
-:103B10001F910F91FF90EF90DF90CF900C94B32303\r\n\
-:103B20000E949923C701B60128960FB6F894DEBF0C\r\n\
-:103B30000FBECDBFDF91CF911F910F91FF90EF90FE\r\n\
-:103B4000DF90CF900C947F23603F49F118F4603EE2\r\n\
-:103B500048F48CC0623F09F451C0E0F1633F09F4BE\r\n\
-:103B600061C084C0162F1F70842F8F71FF2021F039\r\n\
-:103B70000E941823812F89CE0E943923812F2896F5\r\n\
-:103B80000FB6F894DEBF0FBECDBFDF91CF911F916E\r\n\
-:103B90000F91FF90EF90DF90CF900C94881BFF2047\r\n\
-:103BA000A9F0253008F0B2C0842F8F7128960FB687\r\n\
-:103BB000F894DEBF0FBECDBFDF91CF911F910F9163\r\n\
-:103BC000FF90EF90DF90CF900C945E23263008F0AA\r\n\
-:103BD0009DC0EACFFF20A1F0842F8F7128960FB6E9\r\n\
-:103BE000F894DEBF0FBECDBFDF91CF911F910F9133\r\n\
-:103BF000FF90EF90DF90CF900C941823FF2061F39B\r\n\
-:103C0000842F8F7128960FB6F894DEBF0FBECDBFFC\r\n\
-:103C1000DF91CF911F910F91FF90EF90DF90CF90A8\r\n\
-:103C20000C943923FF2091F0842F8F7128960FB6C2\r\n\
-:103C3000F894DEBF0FBECDBFDF91CF911F910F91E2\r\n\
-:103C4000FF90EF90DF90CF900C94032328960FB64F\r\n\
-:103C5000F894DEBF0FBECDBFDF91CF911F910F91C2\r\n\
-:103C6000FF90EF90DF90CF900C94F922FF20A1F00D\r\n\
-:103C7000222309F4B1CF862F28960FB6F894DEBF21\r\n\
-:103C80000FBECDBFDF91CF911F910F91FF90EF90AD\r\n\
-:103C9000DF90CF900C94BA1A222309F4B1CF862F6B\r\n\
-:103CA00028960FB6F894DEBF0FBECDBFDF91CF913F\r\n\
-:103CB0001F910F91FF90EF90DF90CF900C94591BC4\r\n\
-:103CC0004F70C8010E948A2628960FB6F894DEBF6E\r\n\
-:103CD0000FBECDBFDF91CF911F910F91FF90EF905D\r\n\
-:103CE000DF90CF900C9420224F70C80128960FB619\r\n\
-:103CF000F894DEBF0FBECDBFDF91CF911F910F9122\r\n\
-:103D0000FF90EF90DF90CF900C948D2628960FB601\r\n\
-:103D1000F894DEBF0FBECDBFDF91CF911F910F9101\r\n\
-:103D2000FF90EF90DF90CF9008950E94D3240E94DF\r\n\
-:103D3000A5240E94F9240E94182C0E94EA2A80E0FF\r\n\
-:103D400090E00E948F1980E090E00C94A5190E94E9\r\n\
-:103D5000C3240C94951E0E94CE23292F22952F70E8\r\n\
-:103D600030E02C3031054CF42A3031056CF422500F\r\n\
-:103D700031092230310590F407C02C30310551F063\r\n\
-:103D80002F30310539F00AC0803E10F0803F31F409\r\n\
-:103D900081E0089593FB882780F9089580E00895D5\r\n\
-:103DA000CF93DF9300D000D01F92CDB7DEB70F9036\r\n\
-:103DB0000F900F900F900F90DF91CF910895CF93B8\r\n\
-:103DC000DF9300D000D000D0CDB7DEB726960FB677\r\n\
-:103DD000F894DEBF0FBECDBFDF91CF9108951F9342\r\n\
-:103DE000CF93DF93C091010316E080910203C817BF\r\n\
-:103DF00099F0D0E01C9FF0011D9FF00D1124ED5FA4\r\n\
-:103E0000FC4F4081518162817381848195810E9440\r\n\
-:103E1000DF1E2196C770E9CFDF91CF911F910895E2\r\n\
-:103E20004091330350913403609135037091360310\r\n\
-:103E300080913703909138030C94DF1ECF938091CB\r\n\
-:103E4000380382958F7009F05FC080913503882315\r\n\
-:103E500009F45AC020910103A09102036091330339\r\n\
-:103E600070913403809136039091370331E06F3FB6\r\n\
-:103E700009F030E0B32FC6E02A1709F445C00097D7\r\n\
-:103E800021F07F3F21F44B2F03C041E001C040E00F\r\n\
-:103E900030E040FD35C0C29FF001C39FF00D1124FA\r\n\
-:103EA000ED5FFC4F418174132BC04081641328C027\r\n\
-:103EB0004281411125C0438154814817590710F4AC\r\n\
-:103EC00041505109481B590B4C325140C8F4809164\r\n\
-:103ED00038038F7080618093380386E0829FF00101\r\n\
-:103EE000839FF00D1124E85FFC4F80818F7080610B\r\n\
-:103EF000808383E393E00E948F1BCF910C94EF1E8D\r\n\
-:103F00002F5F3F4F2770B8CFCF910895CF92DF92A8\r\n\
-:103F1000EF92FF920F931F93CF93DF93CDB7DEB74E\r\n\
-:103F200062970FB6F894DEBF0FBECDBF8C0185E05F\r\n\
-:103F3000F801DE011D9601900D928A95E1F7D801F6\r\n\
-:103F40004C9111965C91119712966C911297139661\r\n\
-:103F5000ED90FC90149770913303E091340320911D\r\n\
-:103F60003603309137032115310531F0EF3F31F43D\r\n\
-:103F700081E07F3F19F403C081E001C080E0B82FE9\r\n\
-:103F8000B170CB2E80FD6DC1D0903503DD2009F4DA\r\n\
-:103F9000F6C0F0913803E216F30638F0C701821B31\r\n\
-:103FA000930B8C32914048F09CC0209530952E0D9B\r\n\
-:103FB0003F1D2C32314008F094C08F2F807F09F0D4\r\n\
-:103FC00053C0E51315C0741313C0D62E611110C071\r\n\
-:103FD000FF70F061F09338030E94101F83E393E0B9\r\n\
-:103FE0000E948F1B80913803D80115968C936BC16A\r\n\
-:103FF000EF2831F05F3F31F481E04F3F19F403C007\r\n\
-:1040000081E001C080E080FD03C081E0862701C01F\r\n\
-:1040100080E0B82FB170FB2E80FF1CC0809101039F\r\n\
-:104020002091020336E0821709F428C190E0389FFE\r\n\
-:10403000F001399FF00D1124ED5FFC4F7181571392\r\n\
-:1040400006C07081471303C07281671303C00196D5\r\n\
-:104050008770E9CFD62E662309F435C180913803E5\r\n\
-:1040600081608093380353C0E51308C0741306C001\r\n\
-:10407000611104C0D8011596FC93AEC04D875E87D0\r\n\
-:104080008D859E856A8B0E94AB1E6A89882329F1E3\r\n\
-:10409000D62E662311F120913803822F82958F70DE\r\n\
-:1040A00090E002970CF460C0809133039091340348\r\n\
-:1040B00098878F831986FB86EA862C87CE01079620\r\n\
-:1040C00051C0E51731F14D875E878D859E856A8BDE\r\n\
-:1040D0000E94AB1E6A8981112EC0C8010E948F1BED\r\n\
-:1040E000A4C08F2F807F69F77E2DF98AE88A89899D\r\n\
-:1040F0000E94D01E83E393E00E948F1BE3E3F3E072\r\n\
-:1041000086E0DF011D928A95E9F70E94101FD12CED\r\n\
-:10411000DAC07413D8CF6111D6CFD8011596FC93AD\r\n\
-:10412000C8010E948F1BE3E3F3E086E0DF011D92EC\r\n\
-:104130008A95E9F7C8C0D62E662379F22091380314\r\n\
-:10414000822F82958F7090E0029774F080913303F4\r\n\
-:10415000909134039A8389831B82FD82EC822E83A3\r\n\
-:10416000CE0101960E948F1B86E0F801A3E3B3E025\r\n\
-:1041700001900D928A95E1F70E941E1F6FC0E21612\r\n\
-:10418000F30640F0C701821B930B9C012C32314097\r\n\
-:1041900048F057C0209530952E0D3F1D2C323140F0\r\n\
-:1041A00008F04FC0D62E662309F497CFE51329C037\r\n\
-:1041B000741327C08091380380FD1AC0982F929500\r\n\
-:1041C0009F70B1F0F80185839F3031F09F5F929529\r\n\
-:1041D000907F8F70892B8583C8010E948F1B86E09A\r\n\
-:1041E000F801A3E3B3E001900D928A95E1F736C0A0\r\n\
-:1041F00086E0F801A3E3B3E001900D928A95E1F720\r\n\
-:1042000062C04D875E878D859E850E94AB1E882388\r\n\
-:1042100079F086E0F801A3E3B3E001900D928A956E\r\n\
-:10422000E1F70E941E1F0E94101FDD24D3944BC093\r\n\
-:1042300080913803816080933803C8010E948F1BEE\r\n\
-:1042400042C07E2DF98AE88A89890E94D01EE3E364\r\n\
-:10425000F3E086E0DF011D928A95E9F70E94101FC6\r\n\
-:1042600032C0662309F439CF4D875E878D859E85E0\r\n\
-:104270000E94AB1E882309F430CFCBCF4D875E87D9\r\n\
-:104280008D859E850E94CE23292F22952F7030E0A8\r\n\
-:10429000223031052CF49F7041F0811106C00CC012\r\n\
-:1042A000243031052CF49F7049F4805E883020F072\r\n\
-:1042B000C8010E948F1BCF2CDC2C05C0F801958112\r\n\
-:1042C000907F99F7F9CF8D2D62960FB6F894DEBFE7\r\n\
-:1042D0000FBECDBFDF91CF911F910F91FF90EF9057\r\n\
-:1042E000DF90CF9008951F93CF93DF93CDB7DEB7C4\r\n\
-:1042F0002C970FB6F894DEBF0FBECDBF4F83588703\r\n\
-:1043000069877A878B879C87CE0107960E94861FD4\r\n\
-:104310008823C1F02F8138858A859B85892B31F0D0\r\n\
-:104320003F3F11F080E003C02F3FE1F781E08111B2\r\n\
-:1043300047C04F81588569857A858B859C850E9409\r\n\
-:10434000DF1E3EC086E0FE013796DE011196019029\r\n\
-:104350000D928A95E1F7FF81E8854A855B854115D5\r\n\
-:10436000510531F0EF3F31F481E0FF3F19F403C014\r\n\
-:1043700081E001C080E080FD23C02091020330E095\r\n\
-:10438000C9010196877099276091010370E0861733\r\n\
-:104390009707F1F1F983EA835D834C8396E0929F5E\r\n\
-:1043A000D001939FB00D1124AD5FBC4FFE0131963B\r\n\
-:1043B00001900D929A95E1F7809302030E94EF1EFF\r\n\
-:1043C00016E08091010390910203891779F1189FFB\r\n\
-:1043D000C00111248D5F9C4F0E94861F882331F1FC\r\n\
-:1043E000E09101031E9FF0011124ED5FFC4F40811D\r\n\
-:1043F000518162817381848195810E94DF1E809149\r\n\
-:10440000010390E001968770992780930103D9CF2B\r\n\
-:104410000E94A71E1092020310920103E3E3F3E04F\r\n\
-:1044200086E0DF011D928A95E9F7CACF2C960FB678\r\n\
-:10443000F894DEBF0FBECDBFDF91CF911F910895DD\r\n\
-:10444000EF92FF920F931F93CF93DF93FC0100979E\r\n\
-:1044500009F46FC0F12CEE24E394EF0121968491CE\r\n\
-:10446000843740F4843008F055C0813081F08230C8\r\n\
-:1044700021F15FC0853709F447C0C0F19CE7980F70\r\n\
-:10448000903708F056C08F770E94591B45C08F01A6\r\n\
-:104490000E5F1F4FFE01849190E2980F983050F408\r\n\
-:1044A0008770FE2D01C0FF0F8A95EAF78F2F0E94BB\r\n\
-:1044B000C62415C00E94BA1A14C08F010E5F1F4F88\r\n\
-:1044C000FE01849190E2980F983068F48770FE2D79\r\n\
-:1044D00001C0FF0F8A95EAF78F2F0E94CC240E941B\r\n\
-:1044E000F924E80119C00E94591BFBCFCF010296A5\r\n\
-:1044F000FE01C491CC2361F0EFE9FFE03197F1F7C1\r\n\
-:1045000000C00000C150F6CFCF010296FE01F4902A\r\n\
-:10451000EC0102C00E94BA1A8F2D882341F0EFE906\r\n\
-:10452000FFE03197F1F700C000008150F6CFFE01A7\r\n\
-:1045300094CFDF91CF911F910F91FF90EF9008954D\r\n\
-:10454000089560933D0370933E0380933F039093DF\r\n\
-:1045500040030C94951E0F931F9300913D031091FF\r\n\
-:104560003E0320913F0330914003062B172B282B4D\r\n\
-:10457000392B00933D0310933E0320933F03309368\r\n\
-:1045800040031F910F910C94951E0F931F93009160\r\n\
-:104590003D0310913E0320913F03309140030623D9\r\n\
-:1045A00017232823392300933D0310933E032093C0\r\n\
-:1045B0003F03309340031F910F910C94951E0F936E\r\n\
-:1045C0001F9300913D0310913E0320913F033091D2\r\n\
-:1045D0004003062717272827392700933D03109308\r\n\
-:1045E0003E0320933F03309340031F910F910C949F\r\n\
-:1045F000951E1092390310923A0310923B031092C9\r\n\
-:104600003C030C94951E41E050E060E070E004C073\r\n\
-:10461000440F551F661F771F8A95D2F740933903C1\r\n\
-:1046200050933A0360933B0370933C030C94951EA4\r\n\
-:1046300041E050E060E070E004C0440F551F661F89\r\n\
-:10464000771F8A95D2F78091390390913A03A09110\r\n\
-:104650003B03B0913C03842B952BA62BB72B809367\r\n\
-:10466000390390933A03A0933B03B0933C030C941B\r\n\
-:10467000951E41E050E060E070E004C0440F551F1B\r\n\
-:10468000661F771F8A95D2F7409550956095709573\r\n\
-:104690008091390390913A03A0913B03B0913C0380\r\n\
-:1046A00084239523A623B7238093390390933A0359\r\n\
-:1046B000A0933B03B0933C030C94951E41E050E063\r\n\
-:1046C00060E070E004C0440F551F661F771F8A9595\r\n\
-:1046D000D2F78091390390913A03A0913B03B091B6\r\n\
-:1046E0003C0384279527A627B72780933903909307\r\n\
-:1046F0003A03A0933B03B0933C030C94951E0F9395\r\n\
-:104700001F930091390310913A0320913B0330919C\r\n\
-:104710003C03062B172B282B392B009339031093BE\r\n\
-:104720003A0320933B0330933C031F910F910C9469\r\n\
-:10473000951E0F931F930091390310913A03209116\r\n\
-:104740003B0330913C03062317232823392300938E\r\n\
-:10475000390310933A0320933B0330933C031F919A\r\n\
-:104760000F910C94951E0F931F9300913903109194\r\n\
-:104770003A0320913B0330913C0306271727282753\r\n\
-:1047800039270093390310933A0320933B03309366\r\n\
-:104790003C031F910F910C94951E0895CF92DF92C8\r\n\
-:1047A000EF92FF920F931F93CF93DF93EC01C09092\r\n\
-:1047B0003D03D0903E03E0903F03F0904003809192\r\n\
-:1047C000390390913A03A0913B03B0913C03C82A6E\r\n\
-:1047D000D92AEA2AFB2A0FE110E0B701A601002E30\r\n\
-:1047E00004C076956795579547950A94D2F740FF90\r\n\
-:1047F00007C0BE01802F0E9417268130910539F431\r\n\
-:104800000150110950F7BE0180E00E941726DF9188\r\n\
-:10481000CF911F910F91FF90EF90DF90CF9008956F\r\n\
-:1048200090912001992361F190912101992341F107\r\n\
-:10483000982F9695969596959F3088F4E091220151\r\n\
-:10484000F0912301E90FF11D877021E030E001C0F4\r\n\
-:10485000220F8A95EAF78181822B818308959091B6\r\n\
-:10486000560390FF2DC01F928F938AEB96E09F9383\r\n\
-:104870008F930E9473080F900F900F900F900895E0\r\n\
-:10488000409122015091230120E030E09FEFFA0196\r\n\
-:10489000E20FF31F6281681799F09F3F19F46111CD\r\n\
-:1048A00001C0922F2F5F3F4F2E30310581F79F3F80\r\n\
-:1048B00039F0FA01E90FF11D97FDFA958283089509\r\n\
-:1048C000089590912001992369F1909121019923F4\r\n\
-:1048D00049F1982F9695969596959F3090F4E09192\r\n\
-:1048E0002201F0912301E90FF11D877021E030E0F2\r\n\
-:1048F00001C0220F8A95EAF7209581812823218320\r\n\
-:1049000008959091560390FF1FC01F928F938CE9DA\r\n\
-:1049100096E09F938F930E9473080F900F900F90D3\r\n\
-:104920000F900895409122015091230120E030E042\r\n\
-:10493000FA01E20FF31F9281981301C012822F5FD8\r\n\
-:104940003F4F2E303105A1F7089581E090E0E091CE\r\n\
-:104950002201F0912301E80FF91F108201968031A6\r\n\
-:104960009105A9F7089580915503089590915503F5\r\n\
-:10497000982B909355030895809590915503982313\r\n\
-:104980009093550308951092550308959091540300\r\n\
-:10499000982B9093540308958095909154039823F5\r\n\
-:1049A0009093540308951092540308958093430301\r\n\
-:1049B0000E9414279093420380934103089510921C\r\n\
-:1049C0004303109242031092410308954091220143\r\n\
-:1049D0005091230120E030E080E0FA01E20FF31F64\r\n\
-:1049E000918191118F5F2F5F3F4F2F303105A9F7D4\r\n\
-:1049F0000895E0912201F091230180915503808375\r\n\
-:104A0000E0912201F0912301808190915403892B40\r\n\
-:104A1000808380914303882309F43EC00E941427B9\r\n\
-:104A200020914103309142038217930760F00E9466\r\n\
-:104A300014272091410330914203821B930B8C3247\r\n\
-:104A4000914070F41BC00E941427209141033091C3\r\n\
-:104A5000420320953095280F391F2C32314070F0D9\r\n\
-:104A60008091560380FF08C088ED96E09F938F9356\r\n\
-:104A70000E9473080F900F900E94DF24E0912201A2\r\n\
-:104A8000F0912301808190914303892B80830E94C0\r\n\
-:104A9000E62481110E94DF2480912201909123015C\r\n\
-:104AA0000C943F19CF93DF938D3B60F4883A90F5D7\r\n\
-:104AB000853A38F5843010F5813009F06DC0C1E0D9\r\n\
-:104AC000D0E0B1C0883E98F4803EC0F48F3B09F03E\r\n\
-:104AD00063C00E94A71E2FEF80E792E02150804024\r\n\
-:104AE0009040E1F700C000000E94A6279CC0803FD4\r\n\
-:104AF00008F452C0C82FD0E0D06595C0C82FD0E0D0\r\n\
-:104B000092C0853A09F44BC0863A09F04BC0C2E81E\r\n\
-:104B1000D0E489C0883A09F448C0893A09F448C009\r\n\
-:104B20008A3A09F448C08B3A09F448C08C3A09F42F\r\n\
-:104B300048C08B3B09F448C08C3B09F448C08D3A0F\r\n\
-:104B400009F448C0803B09F448C08E3A09F448C0D3\r\n\
-:104B50008F3A09F448C0813B09F448C0823B09F40C\r\n\
-:104B600048C0833B09F448C0843B09F448C0853BF6\r\n\
-:104B700009F448C0863B09F448C0873B09F448C0A3\r\n\
-:104B8000883B09F448C0893B09F448C08A3B09F0D6\r\n\
-:104B900048C0CAE2D6E447C0C0E0D0E044C0C1E8A3\r\n\
-:104BA000D0E441C0C3E8D0E43EC0C2EED4E43BC090\r\n\
-:104BB000C9EED4E438C0CAEED4E435C0C5EBD4E4C1\r\n\
-:104BC00032C0C6EBD4E42FC0C3EBD4E42CC0C4EB9A\r\n\
-:104BD000D4E429C0C7EBD4E426C0CCECD4E423C091\r\n\
-:104BE000CDECD4E420C0C3E8D5E41DC0CAE8D5E4C8\r\n\
-:104BF0001AC0C2E9D5E417C0C4E9D5E414C0C1E2C3\r\n\
-:104C0000D6E411C0C3E2D6E40EC0C4E2D6E40BC0C1\r\n\
-:104C1000C5E2D6E408C0C6E2D6E405C0C7E2D6E4E1\r\n\
-:104C200002C0C0E0D4E4CE01DF91CF9108950E948C\r\n\
-:104C30007C08803EA8F4803C00F5813309F45CC018\r\n\
-:104C400038F4893209F452C08A3209F45BC05FC07B\r\n\
-:104C50008933B1F08238A1F0853309F441C057C0DF\r\n\
-:104C6000833E41F128F4803E99F0823EB9F04FC076\r\n\
-:104C7000863E31F1873E71F14AC00E948E08089548\r\n\
-:104C80009091670390FD02C091FF41C080EE3FC04C\r\n\
-:104C90008091670380FFFACF89E339C08091670371\r\n\
-:104CA00082FF0CC08091670384FF02C080E02FC0A8\r\n\
-:104CB00083EE2DC08091670382FFF4CF82EE27C080\r\n\
-:104CC0008091670383FF0AC08091670384FDEECF64\r\n\
-:104CD00087EE1DC08091670383FFF6CF86EE17C075\r\n\
-:104CE0008091670385FF06C089E211C08091670348\r\n\
-:104CF00085FFFACF85E30BC08091670386FF06C06E\r\n\
-:104D00008AE205C08091670386FFFACF81E30E94A3\r\n\
-:104D10005225089580E090E0089508959093A101B0\r\n\
-:104D20008093A00108958295982F9C7C96959695E6\r\n\
-:104D3000837344E0849F90011124922B892F8A7AF7\r\n\
-:104D400086959575990F892B089580916C03843011\r\n\
-:104D500009F11092570320E488E190E00FB6F8942F\r\n\
-:104D6000A895809360000FBE2093600083B7817F79\r\n\
-:104D7000846083BF83B7816083BF7894889583B74D\r\n\
-:104D80008E7F83BF88E10FB6F89480936000109205\r\n\
-:104D900060000FBE0895CF930E94D8090E94CF08EB\r\n\
-:104DA0000E94DA09C0E08C2F0E94A409811105C07D\r\n\
-:104DB000CF5FC830C1F780E001C081E0CF91089596\r\n\
-:104DC0000C94A71E1F920F920FB60F9211248F936F\r\n\
-:104DD0009F93AF93BF9380915703811113C080912C\r\n\
-:104DE000580390915903A0915A03B0915B034196E7\r\n\
-:104DF000A11DB11D8093580390935903A0935A03AA\r\n\
-:104E0000B0935B03BF91AF919F918F910F900FBEB5\r\n\
-:104E10000F901F90189582E084BD93E095BD9AEFA6\r\n\
-:104E200097BD80936E0008952FB7F8948091580332\r\n\
-:104E300090915903A0915A03B0915B032FBF08953D\r\n\
-:104E40002FB7F894609158037091590380915A03D9\r\n\
-:104E500090915B032FBF0895CF92DF92EF92FF9264\r\n\
-:104E60000F931F932FB7F894409158035091590313\r\n\
-:104E700060915A0370915B032FBF6A017B01EE249E\r\n\
-:104E8000FF248C0120E030E0C016D106E206F306D4\r\n\
-:104E900010F441505109481B590BCA011F910F9141\r\n\
-:104EA000FF90EF90DF90CF900895CF92DF92EF9236\r\n\
-:104EB000FF920F931F934FB7F894009158031091EE\r\n\
-:104EC000590320915A0330915B034FBF6801790168\r\n\
-:104ED000C61AD70AE80AF90A061717072807390772\r\n\
-:104EE00018F0C701B60106C0C701B60161507109CB\r\n\
-:104EF000810991091F910F91FF90EF90DF90CF9062\r\n\
-:104F000008951F920F920FB60F9211248F939F93C3\r\n\
-:104F1000AF93BF938091580390915903A0915A0386\r\n\
-:104F2000B0915B030196A11DB11D8093580390932E\r\n\
-:104F30005903A0935A03B0935B03BF91AF919F9124\r\n\
-:104F40008F910F900FBE0F901F9018950E947616AC\r\n\
-:104F5000F8942FEF87EA91E6215080409040E1F7E6\r\n\
-:104F600000C0000087E090EBDC0180937503909314\r\n\
-:104F70007603A0937703B09378032CE088E190E068\r\n\
-:104F80000FB6F894A895809360000FBE2093600040\r\n\
-:104F9000FFCFEF92FF920F931F93CF93DF93E82EF3\r\n\
-:104FA000F12C8F2D0E94A409C0E0D0E0082F10E062\r\n\
-:104FB00098010C2E02C0359527950A94E2F720FD42\r\n\
-:104FC00005C02196C830D10599F709C06C2F7F2DF7\r\n\
-:104FD00080E00E947C08E812F4CF81E005C0F394E1\r\n\
-:104FE00088E0F812DECF80E0DF91CF911F910F9122\r\n\
-:104FF000FF90EF900895CF93C82F8CE20E94C927AD\r\n\
-:10500000882321F08C2FCF910C94C92780E0CF9179\r\n\
-:105010000895CF930E945629811102C00E943C2915\r\n\
-:1050200081EF96E00E94DA07C5E6C15049F00E9480\r\n\
-:10503000CF088FE39CE90197F1F700C00000F5CF9E\r\n\
-:105040008AEE96E00E94DA0789E20E94FB2781112E\r\n\
-:1050500011C18AE20E94FB2781110E943C2985E050\r\n\
-:105060000E94FB2781110E94A6270E94612980933C\r\n\
-:10507000560387E00E94FB27882399F18BE10E9469\r\n\
-:10508000FB27882351F09091560391FB882780F9E4\r\n\
-:1050900021E0822780FB91F922C08EE00E94FB274D\r\n\
-:1050A000882351F09091560392FB882780F921E0E4\r\n\
-:1050B000822780FB92F913C080E10E94FB27909128\r\n\
-:1050C0005603882341F093FB882780F921E082274B\r\n\
-:1050D00080FB93F904C0892F809580FB90F9909311\r\n\
-:1050E0005603809156030E9465290E94732980937C\r\n\
-:1050F000670380EE0E94FB27882341F080916703BD\r\n\
-:10510000982F909590FB80F98093670389E30E9424\r\n\
-:10511000FB27882359F09091670391FB882780F93A\r\n\
-:1051200021E0822780FB91F99093670382EE0E9431\r\n\
-:10513000FB27882359F09091670392FB882780F919\r\n\
-:1051400021E0822780FB92F99093670386EE0E940C\r\n\
-:10515000FB27882359F09091670393FB882780F9F8\r\n\
-:1051600021E0822780FB93F99093670383EE0E94EE\r\n\
-:10517000FB27882359F09091670394FB882780F9D7\r\n\
-:1051800021E0822780FB94F99093670385E30E94D6\r\n\
-:10519000FB27882359F09091670395FB882780F9B6\r\n\
-:1051A00021E0822780FB95F99093670381E30E94B9\r\n\
-:1051B000FB27882359F09091670396FB882780F995\r\n\
-:1051C00021E0822780FB96F99093670381E10E949A\r\n\
-:1051D000FB27882359F09091670397FB882780F974\r\n\
-:1051E00021E0822780FB97F9909367038091670302\r\n\
-:1051F0000E9477298091670387FB882780F9809335\r\n\
-:10520000210187E20E94FB27C82F8EE10E94FB2725\r\n\
-:105210008111C2608FE10E94FB278111C46080E28E\r\n\
-:105220000E94FB278111C86081E20E94FB27811147\r\n\
-:10523000C06182E20E94FB278111C06283E20E946A\r\n\
-:10524000FB278111C06484E20E94FB27882311F0B0\r\n\
-:10525000C06802C0CC2329F08C2F0E946E296C2FCD\r\n\
-:1052600003C00E946A29682F70E080E090E0CF912F\r\n\
-:105270000C94A122CF9108956DEE7EEF80E090E036\r\n\
-:105280000E94DC3260E082E090E00E94CE3260E07A\r\n\
-:1052900083E090E00E94CE3260E084E090E00E94E3\r\n\
-:1052A000CE3260E085E090E00C94CE3280E090E079\r\n\
-:1052B0000E94C83221E08D3E9E4F09F020E0822FEF\r\n\
-:1052C000089582E090E00C94C032682F82E090E074\r\n\
-:1052D0000C94CE3283E090E00C94C032682F83E0CF\r\n\
-:1052E00090E00C94CE3284E090E00C94C032682FB1\r\n\
-:1052F00084E090E00C94CE3280915E0380FF0BC07E\r\n\
-:105300006091270185E0689FB0011124759567952C\r\n\
-:10531000759567952AC081FF09C06091270185E0D6\r\n\
-:10532000689FB0011124759567951FC082FF07C063\r\n\
-:105330006091270185E0689FB001112416C040915B\r\n\
-:105340005F034423C9F060912601461788F7209136\r\n\
-:10535000270185E0289F90011124429FC001439FAF\r\n\
-:10536000900D112470E00E9484326038710540F481\r\n\
-:105370006115710539F002C065E070E0862F08956F\r\n\
-:105380008FE7089581E0089580915E0380FF08C053\r\n\
-:105390006091250170E0759567957595679521C0B9\r\n\
-:1053A00081FF06C06091250170E07595679519C071\r\n\
-:1053B00082FF04C06091250170E010C080915F03FE\r\n\
-:1053C0008823C1F0609124018617A0F790912501F0\r\n\
-:1053D000989FC001112470E00E94843260387105EA\r\n\
-:1053E00028F46115710521F0862F08958FE708953F\r\n\
-:1053F00081E0089561E070E0F4CF803F21F40E94E5\r\n\
-:105400007C29819504C0813F29F40E947C298093E6\r\n\
-:1054100062030895823F21F40E947C29819504C093\r\n\
-:10542000833F29F40E947C29809361030895893F7A\r\n\
-:1054300019F40E94C42905C08A3F31F40E94C4298E\r\n\
-:1054400081958093630308958B3F21F40E94C429C2\r\n\
-:10545000819504C08C3F29F40E94C4298093640381\r\n\
-:105460000895843F21F480916003816017C0853FD7\r\n\
-:1054700021F480916003826011C0863F21F4809105\r\n\
-:10548000600384600BC0873F21F4809160038860D3\r\n\
-:1054900005C0883F31F48091600380618093600390\r\n\
-:1054A00008958D3F21F480915E0381600BC08E3F93\r\n\
-:1054B00021F480915E03826005C08F3F29F48091C2\r\n\
-:1054C0005E03846080935E030895803F39F4809189\r\n\
-:1054D000620387FF6CC01092620369C0813F29F4A8\r\n\
-:1054E000809162031816BCF362C090916103823F01\r\n\
-:1054F00029F497FF5CC01092610359C0833F19F4EF\r\n\
-:105500001916CCF354C0893F41F4809163031816F7\r\n\
-:105510000CF04DC0109263034AC08A3F29F4809179\r\n\
-:10552000630387FF44C0F6CF8B3F39F48091640357\r\n\
-:1055300087FF3DC0109264033AC08C3F29F48091EC\r\n\
-:1055400064031816BCF333C0843F21F480916003D8\r\n\
-:105550008E7F17C0853F21F4809160038D7F11C03D\r\n\
-:10556000863F21F4809160038B7F0BC0873F21F43D\r\n\
-:1055700080916003877F05C0883F31F4809160038C\r\n\
-:105580008F7E8093600313C08D3F21F480915E0372\r\n\
-:105590008E7F0BC08E3F21F480915E038D7F05C00E\r\n\
-:1055A0008F3F29F480915E038B7F80935E0380910F\r\n\
-:1055B000610381110EC08091620381110AC0809144\r\n\
-:1055C0006303811106C080916403811102C01092AF\r\n\
-:1055D0005F0308958091560383FF7EC08DE297E0BC\r\n\
-:1055E0000E94DA07809160031F928F9388E297E010\r\n\
-:1055F0009F938F930E94730886E297E00E94DA07D8\r\n\
-:1056000020916103822F992787FD90959F932F9377\r\n\
-:1056100083E297E09F938F930E94730881E297E063\r\n\
-:105620000E94DA0720916203822F992787FD9095C7\r\n\
-:105630009F932F938EE197E09F938F930E9473081F\r\n\
-:105640008CE197E00E94DA0720916303822F99276B\r\n\
-:1056500087FD90959F932F9389E197E09F938F9378\r\n\
-:105660000E94730887E197E00E94DA0720916403A3\r\n\
-:10567000822F992787FD90959F932F9384E197E040\r\n\
-:105680009F938F930E94730881E197E00E94DA074D\r\n\
-:1056900080915F031F928F938EE097E09F938F938B\r\n\
-:1056A0000E9473088CE097E00E94DA0780915E0305\r\n\
-:1056B0001F928F9389E097E09F938F930E947308C6\r\n\
-:1056C00086E097E00E94DA078DB79EB74C960FB63A\r\n\
-:1056D000F8949EBF0FBE8DBF80E693E00E948419B0\r\n\
-:1056E0000E94142790935D0380935C0308951F9399\r\n\
-:1056F000CF93DF9380915C0390915D030E942C27F0\r\n\
-:1057000040915F03442321F02091280130E006C03E\r\n\
-:10571000209129015AE0259F9001112482179307B7\r\n\
-:1057200008F482C08091610310916203D0916303F9\r\n\
-:10573000C0916403811107C0111105C0D11103C0CC\r\n\
-:10574000CC2309F471C04F3F19F04F5F40935F03C2\r\n\
-:10575000181624F40E947C298093610380916103D0\r\n\
-:1057600087FF05C00E947C298195809361031116F3\r\n\
-:1057700024F40E947C29809362038091620387FF56\r\n\
-:1057800005C00E947C29819580936203609161032A\r\n\
-:10579000662339F110916203112319F1772767FD10\r\n\
-:1057A0007095872F972F0E94753123E333E343E3EE\r\n\
-:1057B0005FE30E94D9310E94423160936103612FFF\r\n\
-:1057C000772767FD7095872F972F0E94753123E308\r\n\
-:1057D00033E343E35FE30E94D9310E944231609397\r\n\
-:1057E00062031D1624F40E94C429809363038091F0\r\n\
-:1057F000630387FF05C00E94C429819580936303DA\r\n\
-:105800001C1624F40E94C4298093640380916403CD\r\n\
-:1058100087FF05C00E94C429819580936403DF91AE\r\n\
-:10582000CF911F910C94EA2ADF91CF911F91089597\r\n\
-:10583000E0E6F3E085E0DF011D928A95E9F710923A\r\n\
-:105840005F0310925E03089580E599E00E94DA07F5\r\n\
-:105850001F9281E08F931F9285E08F9382E099E001\r\n\
-:105860009F938F930E9473080F900F900F900F904B\r\n\
-:105870000F900F9008958330E9F128F4813061F0A2\r\n\
-:10588000823009F10895853009F462C008F449C0F6\r\n\
-:10589000863009F474C0089520912901862F90E084\r\n\
-:1058A000820F911D8F3F910520F4620F60932901B3\r\n\
-:1058B00003C08FEF80932901809129011F928F935C\r\n\
-:1058C0008BE398E072C020912801862F90E0820F30\r\n\
-:1058D000911D8F3F910520F4620F6093280103C052\r\n\
-:1058E0008FEF80932801809128011F928F9389E286\r\n\
-:1058F00098E05BC020912701862F90E0820F911DD8\r\n\
-:105900008F3F910520F4620F6093270103C08FEF52\r\n\
-:1059100080932701809127011F928F9386E198E061\r\n\
-:1059200044C020912601862F90E0820F911D8F3F69\r\n\
-:10593000910520F4620F6093260103C08FEF8093DE\r\n\
-:105940002601809126011F928F9381E098E02DC05F\r\n\
-:1059500020912501862F90E0820F911D8F3F9105A8\r\n\
-:1059600020F4620F6093250103C08FEF809325011F\r\n\
-:10597000809125011F928F9388EE97E016C02091A9\r\n\
-:105980002401862F90E0820F911D8F3F910520F416\r\n\
-:10599000620F6093240103C08FEF809324018091F4\r\n\
-:1059A00024011F928F938DEC97E09F938F930E9419\r\n\
-:1059B00073080F900F900F900F900895833081F12E\r\n\
-:1059C00028F4813059F08230D1F00895853009F4FF\r\n\
-:1059D00049C0B8F1863009F456C008958091290174\r\n\
-:1059E000681720F4861B8093290102C010922901B8\r\n\
-:1059F000809129011F928F938EEB97E054C0809184\r\n\
-:105A00002801681720F4861B8093280102C0109299\r\n\
-:105A10002801809128011F928F938CEA97E043C060\r\n\
-:105A200080912701681720F4861B8093270102C00C\r\n\
-:105A300010922701809127011F928F9389E997E0A7\r\n\
-:105A400032C080912601681720F4861B80932601BE\r\n\
-:105A500002C010922601809126011F928F9384E844\r\n\
-:105A600097E021C080912501681720F4861B809360\r\n\
-:105A7000250102C010922501809125011F928F936C\r\n\
-:105A80008BE697E010C080912401681720F4861BF4\r\n\
-:105A90008093240102C010922401809124011F925E\r\n\
-:105AA0008F9380E597E09F938F930E9473080F90E8\r\n\
-:105AB0000F900F900F900895CF93C82F1F928F9340\r\n\
-:105AC00025E53AE03F932F930E94730861E070E070\r\n\
-:105AD00080E090E004C0660F771F881F991FCA9569\r\n\
-:105AE000D2F70E94A1220F900F900F900F90CF91AC\r\n\
-:105AF0000C94A71ECF938B3109F4CBC108F049C099\r\n\
-:105B00008E3009F4D9C100F5873009F4A9C1A8F491\r\n\
-:105B1000863009F05DC280915603817F8E7F80932D\r\n\
-:105B200056038AE59AE00E94DA0782E99EE00E9425\r\n\
-:105B3000DA0781E08093660391C1883009F45BC085\r\n\
-:105B40008B3009F487C144C2813109F429C220F4A1\r\n\
-:105B5000803109F4C4C13CC2863109F4DAC189310B\r\n\
-:105B600009F036C286E09EE00E94DA0789ED9DE0EA\r\n\
-:105B70000E94DA0782EA9DE00E94DA078BE79DE047\r\n\
-:105B80000E94DA0787E29DE00E94DA0789EF9CE035\r\n\
-:105B900063C1853309F416C268F4873209F412C26E\r\n\
-:105BA00028F48E3108F414C28D510FC2893209F4E1\r\n\
-:105BB00009C20EC2833438F48A3308F005C2883330\r\n\
-:105BC00009F448C105C2833409F4FCC1883409F0E2\r\n\
-:105BD000FFC10E94A71E81E89EE00E94DA079FEFA6\r\n\
-:105BE00023ED80E3915020408040E1F700C00000A9\r\n\
-:105BF0000E94A62733C186E99EE00E94DA0789E564\r\n\
-:105C00009CE00E94DA070E946A291F928F9386E522\r\n\
-:105C10009CE09F938F930E94730884E59CE00E9410\r\n\
-:105C2000DA070E946129C82F81E49CE00E94DA070C\r\n\
-:105C30001F92CF932CE33CE03F932F930E94730875\r\n\
-:105C40008AE39CE00E94DA0780E39CE00E94DA0786\r\n\
-:105C50008C2F81701F928F932DE23CE03F932F9306\r\n\
-:105C60000E9473088BE29CE00E94DA0781E29CE0CC\r\n\
-:105C70000E94DA07C1FB882780F91F928F932EE1DB\r\n\
-:105C80003CE03F932F930E9473088CE19CE00E94BC\r\n\
-:105C9000DA0780E19CE00E94DA07C2FB882780F9DE\r\n\
-:105CA0001F928F932DE03CE03F932F930E94730847\r\n\
-:105CB0008BE09CE00E94DA0782E09CE00E94DA0719\r\n\
-:105CC000C3FBCC27C0F91F92CF938FEF9BE09F932C\r\n\
-:105CD0008F930E9473088DEF9BE00E94DA070E9469\r\n\
-:105CE0007329C82F89EE9BE00E94DA071F92CF9399\r\n\
-:105CF00024EE3BE03F932F930E94730882EE9BE0DB\r\n\
-:105D00000E94DA0789EC9BE00E94DA078C2F8170F1\r\n\
-:105D10001F928F9326EC3BE03F932F930E947308D2\r\n\
-:105D20008DB79EB780960FB6F8949EBF0FBE8DBFFD\r\n\
-:105D300084EC9BE00E94DA078DEA9BE00E94DA0780\r\n\
-:105D4000C1FB882780F91F928F932AEA3BE03F939B\r\n\
-:105D50002F930E94730888EA9BE00E94DA0786E985\r\n\
-:105D60009BE00E94DA07C2FB882780F91F928F937D\r\n\
-:105D700023E93BE03F932F930E94730881E99BE066\r\n\
-:105D80000E94DA078FE79BE00E94DA07C3FB8827AF\r\n\
-:105D900080F91F928F932CE73BE03F932F930E9453\r\n\
-:105DA00073088AE79BE00E94DA0780E79BE00E9485\r\n\
-:105DB000DA07C4FB882780F91F928F932DE63BE01A\r\n\
-:105DC0003F932F930E9473088BE69BE00E94DA07B3\r\n\
-:105DD00089E59BE00E94DA07C5FB882780F91F92BE\r\n\
-:105DE0008F9326E53BE03F932F930E94730884E551\r\n\
-:105DF0009BE00E94DA0788E39BE00E94DA07C6FB7B\r\n\
-:105E0000882780F91F928F9325E33BE03F932F93E0\r\n\
-:105E10000E94730883E39BE00E94DA078BE29BE019\r\n\
-:105E20000E94DA07C7FBCC27C0F91F92CF9388E204\r\n\
-:105E30009BE09F938F930E94730886E29BE00E94F1\r\n\
-:105E4000DA078DB79EB74C960FB6F8949EBF0FBE7B\r\n\
-:105E50008DBF04C081E89AE00E94DA07C1E0BDC0AE\r\n\
-:105E600080915603C82FC17080FF09C084E79EE06F\r\n\
-:105E70000E94DA0780915603817F8E7F44C088E6B6\r\n\
-:105E80009EE00E94DA07809156038160809356035A\r\n\
-:105E9000E5CF8091560381FBCC27C0F991E0C9275B\r\n\
-:105EA000C0FB81F980935603CC2319F08BE59EE06B\r\n\
-:105EB00025C08DE49EE0D0CF8091560382FBCC2795\r\n\
-:105EC000C0F991E0C927C0FB82F980935603CC2327\r\n\
-:105ED00019F08EE39EE012C08EE29EE0BDCF80916D\r\n\
-:105EE000560383FBCC27C0F991E0C927C0FB83F997\r\n\
-:105EF00080935603CC2351F082E29EE00E94DA07A1\r\n\
-:105F00008091560381608093560367C085E19EE0CF\r\n\
-:105F1000A3CF8BEE9CE00E94DA070E9433191F92F8\r\n\
-:105F20008F9381ED9CE09F938F930E9473088091E3\r\n\
-:105F300020011F928F938AEB9CE09F938F930E9486\r\n\
-:105F400073088091F1021F928F9387EA9CE09F93E0\r\n\
-:105F50008F930E947308809121011F928F9384E98F\r\n\
-:105F60009CE09F938F930E947308809158039091B7\r\n\
-:105F70005903A0915A03B0915B03BF93AF939F93D2\r\n\
-:105F80008F9380E89CE09F938F930E9473088DB756\r\n\
-:105F90009EB746960FB6F8949EBF0FBE8DBF5ECFDC\r\n\
-:105FA0000E94A71EC091210181E0C827C093210152\r\n\
-:105FB000CC2329F086E79CE00E94DA070EC08BE62E\r\n\
-:105FC0009CE04ACF80E001C089530E945C2D46CFFF\r\n\
-:105FD00089E69CE00E94DA07C0E08C2FCF910895FB\r\n\
-:105FE000CF93C82F80916603813071F020F082300A\r\n\
-:105FF00009F448C03FC1A0912201B09123018C91C6\r\n\
-:10600000823209F039C107C0A0912201B091230169\r\n\
-:106010008C91823249F48C2F0E94080D81112FC07F\r\n\
-:106020008C2F0E947A2D2CC08C2F0E94350F81114D\r\n\
-:1060300026C0C431E1F070F4CB3081F0C031D1F42E\r\n\
-:106040000E94242C8DE49AE00E94DA0782E080937B\r\n\
-:10605000660315C0C93259F0C83361F48AE59AE085\r\n\
-:106060000E94DA0781E59AE00E94DA0708C01092E0\r\n\
-:10607000660304C18BE49AE00E94DA07FFC081E066\r\n\
-:106080008170FEC0C43228F5CE3108F0C1C0CB30DB\r\n\
-:10609000A1F1D0F4C73009F0D3C08EE1809329017B\r\n\
-:1060A00082E3809328018AE08093270184E1809332\r\n\
-:1060B000260188E08093250188E28093240181EF06\r\n\
-:1060C00098E00E94DA07BFC0C33149F1C431C1F082\r\n\
-:1060D000B7C0CB3409F4A9C028F4C93289F0C83359\r\n\
-:1060E00061F0AEC0C13509F49EC0C23509F499C053\r\n\
-:1060F000CE3409F0A5C06AE09EC00E94242CA3C043\r\n\
-:1061000080916503882319F0109265039CC08EEF7F\r\n\
-:1061100098E00E94DA0781E080936603B1C088EDC1\r\n\
-:1061200098E00E94DA0786EC98E00E94DA078091F6\r\n\
-:1061300029011F928F9383EC98E09F938F930E9485\r\n\
-:10614000730881EC98E00E94DA078FEA98E00E94D9\r\n\
-:10615000DA07809128011F928F938CEA98E09F9331\r\n\
-:106160008F930E9473088AEA98E00E94DA078BE90D\r\n\
-:1061700098E00E94DA07809127011F928F9388E9A7\r\n\
-:1061800098E09F938F930E94730886E998E00E949D\r\n\
-:10619000DA0785E898E00E94DA07809126011F92CD\r\n\
-:1061A0008F9382E898E09F938F930E94730880E812\r\n\
-:1061B00098E00E94DA078BE698E00E94DA07809167\r\n\
-:1061C00025011F928F9388E698E09F938F930E94FA\r\n\
-:1061D000730886E698E00E94DA078FE498E00E9450\r\n\
-:1061E000DA07809124011F928F938CE498E09F93AB\r\n\
-:1061F0008F930E9473088AE498E00E94DA078DB7B3\r\n\
-:106200009EB748960FB6F8949EBF0FBE8DBF1BC0B9\r\n\
-:10621000CE51EC2FF0E0EA56FE4F8081809365036B\r\n\
-:1062200012C061E003C061E006C06AE080916503CE\r\n\
-:106230000E943B2C08C0809165030E94DE2C03C0A5\r\n\
-:106240008FEE98E013C080916503882369F01F9258\r\n\
-:106250008F9389EE98E09F938F930E9473080F901D\r\n\
-:106260000F900F900F9004C086EE98E00E94DA071E\r\n\
-:1062700081E006C01092660380E002C080E000CF9B\r\n\
-:10628000CF91089504D06894B1118DC0089570D055\r\n\
-:1062900088F09F5790F0B92F9927B751A0F0D1F00F\r\n\
-:1062A000660F771F881F991F1AF0BA95C9F712C099\r\n\
-:1062B000B13081F077D0B1E0089574C0672F782FA6\r\n\
-:1062C0008827B85F39F0B93FCCF386957795679505\r\n\
-:1062D000B395D9F73EF490958095709561957F4F71\r\n\
-:1062E0008F4F9F4F0895E89409C097FB3EF4909517\r\n\
-:1062F0008095709561957F4F8F4F9F4F9923A9F09F\r\n\
-:10630000F92F96E9BB279395F6958795779567952D\r\n\
-:10631000B795F111F8CFFAF4BB0F11F460FF1BC071\r\n\
-:106320006F5F7F4F8F4F9F4F16C0882311F096E904\r\n\
-:1063300011C0772321F09EE8872F762F05C06623B2\r\n\
-:1063400071F096E8862F70E060E02AF09A95660F6B\r\n\
-:10635000771F881FDAF7880F9695879597F9089524\r\n\
-:1063600057FD9058440F551F59F05F3F71F0479506\r\n\
-:10637000880F97FB991F61F09F3F79F087950895EB\r\n\
-:10638000121613061406551FF2CF4695F1DF08C00A\r\n\
-:10639000161617061806991FF1CF86957105610527\r\n\
-:1063A00008940895E894BB2766277727CB0197F9CF\r\n\
-:1063B00008950BD078C069D028F06ED018F09523DE\r\n\
-:1063C00009F05AC05FC01124EECFCADFA0F3959F39\r\n\
-:1063D000D1F3950F50E0551F629FF001729FBB27CC\r\n\
-:1063E000F00DB11D639FAA27F00DB11DAA1F649F78\r\n\
-:1063F0006627B00DA11D661F829F2227B00DA11D2B\r\n\
-:10640000621F739FB00DA11D621F839FA00D611DB0\r\n\
-:10641000221F749F3327A00D611D231F849F600DD1\r\n\
-:10642000211D822F762F6A2F11249F5750408AF00A\r\n\
-:10643000E1F088234AF0EE0FFF1FBB1F661F771F96\r\n\
-:10644000881F91505040A9F79E3F510570F014C02D\r\n\
-:10645000AACF5F3FECF3983EDCF38695779567957E\r\n\
-:10646000B795F795E7959F5FC1F7FE2B880F911DB4\r\n\
-:106470009695879597F9089597F99F6780E870E05A\r\n\
-:1064800060E008959FEF80EC089500240A941616AA\r\n\
-:10649000170618060906089500240A941216130612\r\n\
-:1064A000140605060895092E0394000C11F48823A0\r\n\
-:1064B00052F0BB0F40F4BF2B11F460FF04C06F5FBC\r\n\
-:1064C0007F4F8F4F9F4F0895991B79E004C0991F0C\r\n\
-:1064D000961708F0961B881F7A95C9F7809508953E\r\n\
-:1064E000AA1BBB1B51E107C0AA1FBB1FA617B707FA\r\n\
-:1064F00010F0A61BB70B881F991F5A95A9F7809516\r\n\
-:106500009095BC01CD01089597FB072E16F40094D9\r\n\
-:1065100007D077FD09D00E94703207FC05D03EF409\r\n\
-:10652000909581959F4F0895709561957F4F08953F\r\n\
-:10653000A1E21A2EAA1BBB1BFD010DC0AA1FBB1F87\r\n\
-:10654000EE1FFF1FA217B307E407F50720F0A21BF9\r\n\
-:10655000B30BE40BF50B661F771F881F991F1A9466\r\n\
-:1065600069F760957095809590959B01AC01BD0190\r\n\
-:10657000CF010895EE0FFF1F0590F491E02D0994CF\r\n\
-:10658000F999FECF92BD81BDF89A992780B50895FB\r\n\
-:10659000A8E1B0E042E050E00C94E332262FF999F4\r\n\
-:1065A000FECF1FBA92BD81BD20BD0FB6F894FA9AF6\r\n\
-:1065B000F99A0FBE019608950E94CE32272F0C94AF\r\n\
-:1065C000CF32DC01CB01FC01F999FECF06C0F2BD50\r\n\
-:1065D000E1BDF89A319600B40D9241505040B8F7A1\r\n\
-:0665E0000895F894FFCFBE\r\n\
-:1065E600640A670A680A690A6A0A600ADA0AC00A55\r\n\
-:1065F600630A6B0A0A01FE11EF12CC129812651299\r\n\
-:10660600010144032808140A321E524E2D3432006A\r\n\
-:106616004C554641004F4646004F4E00434F4E4EA6\r\n\
-:1066260000506F776572656400556E6174746163BE\r\n\
-:106636006865640044656661756C740041646472E3\r\n\
-:10664600657373656400436F6E666967757265642A\r\n\
-:10665600003F0053757370656E646564003F4D3688\r\n\
-:1066660020392906DC05A60586054D05C004D90492\r\n\
-:10667600F2040B052B0501020304050607080900B1\r\n\
-";
-}
diff --git a/editor/hhkb_bt/index.html b/editor/hhkb_bt/index.html
deleted file mode 100644
index 91b2f682..00000000
--- a/editor/hhkb_bt/index.html
+++ /dev/null
@@ -1,717 +0,0 @@
-
-
- TMK Keymap Editor
-
-
-
-
-
-
-
-
-
-
-
-TMK Keymap Editor
-
-Instruction
-How to edit keymap
-
- - Select layer
- - Select key to edit
- - Select keycode to assign to the key
- - Download firmware
-
-See this for detailed description of keymap.
-
-Keyboard
-
-
-
-
-
-
-
-
Esc
-
1
-
2
-
3
-
4
-
5
-
6
-
7
-
8
-
9
-
0
-
-
-
=
-
\
-
`
-
-
-
-
Tab
-
Q
-
W
-
E
-
R
-
T
-
Y
-
U
-
I
-
O
-
P
-
[
-
]
-
BSpc
-
-
-
-
Ctrl
-
A
-
S
-
D
-
F
-
G
-
H
-
J
-
K
-
L
-
;
-
'
-
Enter
-
-
-
-
Shift
-
Z
-
X
-
C
-
V
-
B
-
N
-
M
-
,
-
.
-
/
-
Shift
-
Fn
-
-
-
-
-
LGui
-
RAlt
-
Space
-
RAlt
-
RGui
-
-
-
-
-
-
-
-
-
-Keycodes
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Keypad:
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Japanese:
-
-
-
-
-
-
-
- Korean:
-
-
-
-
-
- Mechanical Locking key support:
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- System:
-
-
-
-
-
- Volume:
-
-
-
-
-
- Media:
-
-
-
-
-
-
-
-
- Application:
-
-
-
-
- Web:
-
-
-
-
-
-
-
-
-
-
-
-
- Mouse key:
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Layer Switch Momentary:
-
-
-
-
-
-
-
-
- Layer Switch Toggle:
-
-
-
-
- Layer Switch with Tap Toggle:
-
-
-
-
- Layer switch with Tap key:
-
-
-
-
-
-
-
-
-
- Modifier with special function:
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- See this for detail of Layer Switching.
- See this for Tap key(Dual-role Modifier).
- See this for OneShot Modifier.
-
-
-
-
-Firmware Hex File Download:
-
-
-
-Share URL:
-
-
-
-
-
-Keymap Output(for debug):
-
-
-
-
-
-
-
-
-
-
diff --git a/editor/hhkb_bt/keyboard.css b/editor/hhkb_bt/keyboard.css
deleted file mode 100644
index 886218f8..00000000
--- a/editor/hhkb_bt/keyboard.css
+++ /dev/null
@@ -1,101 +0,0 @@
-html * {
- font-family:helvetica, arial, sans-serif;
-}
-
-.key {
- box-shadow:inset -3px -3px 5px 5px #ebebeb;
- background-color:#ffffff;
- -moz-border-radius:6px;
- -webkit-border-radius:6px;
- border-radius:6px;
- border:2px solid #dcdcdc;
- display:block;
- float: left;
- color:#777777;
- font-family:helvetica, arial, sans-serif;
- font-size:16px;
- font-weight:bold;
- text-decoration:none;
- padding:4px 16px 16px 4px;
- width: 24px;
- height: 24px;
- overflow: hidden;
- margin: 0px 1px 1px 0px;
-}
-.key:hover {
- background-color:#ebebeb;
-}
-.key:active {
-}
-.key:focus {
-}
-.key-editing {
- //background-color:#bfbfbf;
- border:2px solid #7f7f7f;
- position:relative;
- //top:2px;
-}
-/* This imageless css button was generated by CSSButtonGenerator.com */
-
-/* Key size and pixel
- * key: 1.00 1.25 1.50 1.75 2.00
- * size: 50 62.5 75 87.5 100
- * width: 24 36.5 49 61.5 74
- *
- * margin:1 + border:2 + padding:4 + width:24 + padding:16 + border:2 + margin:1 = 50px
- * width:24 + 26px = 50px
- */
-.btn100 { width:24px; }
-.btn125 { width:36.5px; }
-.btn150 { width:47.5px; }
-.btn175 { width:60px; }
-.btn200 { width:74px; }
-.btn225 { width:83px; }
-.btn250 { width:99px; }
-.btn275 { width:111.5px; }
-.btn600 { width:259px; }
-.btn625 { width:270px; }
-.btn700 { width:324px; }
-
-.spc100 { width:24px; visibility:hidden; }
-.spc125 { width:36.5px; visibility:hidden; }
-.spc150 { width:47.5px; visibility:hidden; }
-.spc175 { width:60px; visibility:hidden; }
-.spc200 { width 74px; visibility:hidden; }
-
-.keyboard-row {
- width: auto;
- display: inline-block;
-}
-
-.keyboard-outline {
-}
-
-.keyboard-pane {
- width: 750px;
- font-size: 14px;
- font-weight:bold;
-}
-
-
-
-.action {
- font-size:16px;
- font-weight:bold;
- min-width: 30px;
-}
-
-.keycode_tabs {
- max-width: 750px;
- overflow: auto;
- font-size:14px;
- font-weight:bold;
-}
-
-
-
-/* http://www.w3schools.com/cssref/css3_pr_resize.asp */
-.resizable {
- resize: both;
- overflow: auto;
-}
diff --git a/editor/hhkb_bt/keymap_editor.js b/editor/hhkb_bt/keymap_editor.js
deleted file mode 100644
index 66c3992f..00000000
--- a/editor/hhkb_bt/keymap_editor.js
+++ /dev/null
@@ -1,527 +0,0 @@
-/*
- * TMK keymap editor
- */
-
-/*
- * Share URL
- */
-function encode_keymap(keymap)
-{
- return window.btoa(JSON.stringify(keymap));
-}
-
-function decode_keymap(hash)
-{
- try {
- return JSON.parse(window.atob(hash));
- } catch (err) {
- return null;
- }
-}
-
-/*
- * Hex file
- */
-function hexstr2(b)
-{
- return ('0'+ b.toString(16)).substr(-2).toUpperCase();
-}
-
-function hex_line(address, record_type, data)
-{
- var sum = 0;
- sum += data.length;
- sum += (address >> 8);
- sum += (address & 0xff);
- sum += record_type;
-
- var line = '';
- line += ':';
- line += hexstr2(data.length);
- line += hexstr2(address >> 8);
- line += hexstr2(address & 0xff);
- line += hexstr2(record_type);
- for (var i = 0; i < data.length; i++) {
- sum = (sum + data[i]);
- line += hexstr2(data[i]);
- }
- line += hexstr2((~sum + 1)&0xff); // Checksum
- line +="\r\n";
- return line;
-}
-
-function hex_eof()
-{
- return ":00000001FF\r\n";
-}
-
-/*
-function flatten(array)
-{
-};
-*/
-
-function hex_output(address, data) {
- var output = '';
- var line = [];
-
- // TODO: refine: flatten data into one dimension array
- [].concat.apply([], [].concat.apply([], data)).forEach(function(e) {
- line.push(e);
- if (line.length == 16) {
- output += hex_line(address, 0x00, line);
- address += 16;
- line.length = 0; // clear array
- }
- });
- if (line.length > 0) {
- output += hex_line(address, 0x00, line);
- }
- return output;
-}
-
-
-
-/*
- * Source file
- */
-function source_output(keymaps) {
- var output = '';
- // fn actions
- output += "/*\n";
- output += " * Keymap for " + KEYBOARD_ID + "\n";;
- output += " * generated by tmk keymap editor\n";
- output += " */\n";
- output += "#include \n";
- output += "#include \n";
- output += "#include \n";
- output += "#include \"keycode.h\"\n";
- output += "#include \"action.h\"\n";
- output += "#include \"action_macro.h\"\n";
- output += "#include \"keymap.h\"\n\n";
-
- output += "#ifdef KEYMAP_SECTION\n";
- output += "const uint16_t fn_actions[] __attribute__ ((section (\".keymap.fn_actions\"))) = {\n";
- output += "#else\n";
- output += "static const uint16_t fn_actions[] PROGMEM = {\n";
- output += "#endif\n";
- output += " [0] = ACTION_LAYER_MOMENTARY(1),\n";
- output += " [1] = ACTION_LAYER_MOMENTARY(2),\n";
- output += " [2] = ACTION_LAYER_MOMENTARY(3),\n";
- output += " [3] = ACTION_LAYER_MOMENTARY(4),\n";
- output += " [4] = ACTION_LAYER_MOMENTARY(5),\n";
- output += " [5] = ACTION_LAYER_MOMENTARY(6),\n";
- output += " [6] = ACTION_LAYER_MOMENTARY(7),\n";
- output += " [7] = ACTION_LAYER_TOGGLE(1),\n";
- output += " [8] = ACTION_LAYER_TOGGLE(2),\n";
- output += " [9] = ACTION_LAYER_TOGGLE(3),\n";
- output += " [10] = ACTION_LAYER_TAP_TOGGLE(1),\n";
- output += " [11] = ACTION_LAYER_TAP_TOGGLE(2),\n";
- output += " [12] = ACTION_LAYER_TAP_TOGGLE(3),\n";
- output += " [13] = ACTION_LAYER_TAP_KEY(1, KC_A),\n";
- output += " [14] = ACTION_LAYER_TAP_KEY(2, KC_F),\n";
- output += " [15] = ACTION_LAYER_TAP_KEY(3, KC_J),\n";
- output += " [16] = ACTION_LAYER_TAP_KEY(4, KC_SPACE),\n";
- output += " [17] = ACTION_LAYER_TAP_KEY(5, KC_SCOLON),\n";
- output += " [18] = ACTION_LAYER_TAP_KEY(6, KC_QUOTE),\n";
- output += " [19] = ACTION_LAYER_TAP_KEY(7, KC_SLASH),\n";
- output += " [20] = ACTION_MODS_TAP_KEY(MOD_LSFT, KC_SPACE),\n";
- output += " [21] = ACTION_MODS_TAP_KEY(MOD_LCTL, KC_SPACE),\n";
- output += " [22] = ACTION_MODS_TAP_KEY(MOD_RCTL, KC_QUOTE),\n";
- output += " [23] = ACTION_MODS_TAP_KEY(MOD_RCTL, KC_ENTER),\n";
- output += " [24] = ACTION_MODS_TAP_KEY(MOD_LCTL, KC_ESC),\n";
- output += " [25] = ACTION_MODS_TAP_KEY(MOD_LCTL, KC_BSPACE),\n";
- output += " [26] = ACTION_MODS_ONESHOT(MOD_LCTL),\n";
- output += " [27] = ACTION_MODS_TAP_KEY(MOD_LSFT, KC_ESC),\n";
- output += " [28] = ACTION_MODS_TAP_KEY(MOD_LSFT, KC_BSPACE),\n";
- output += " [29] = ACTION_MODS_ONESHOT(MOD_LSFT),\n";
- output += " [30] = ACTION_MODS_TAP_KEY(MOD_RSFT, KC_GRAVE),\n";
- output += " [31] = ACTION_MODS_TAP_KEY(MOD_RSFT, KC_BSLASH),\n";
- output += "};\n\n";
-
- // keymaps
- output += "#ifdef KEYMAP_SECTION\n";
- output += "const uint8_t keymaps[][";
- output += keymaps[0].length; // row
- output += "][";
- output += keymaps[0][0].length; // col
- output += "] __attribute__ ((section (\".keymap.keymaps\"))) = {\n";
- output += "#else\n";
- output += "static const uint8_t keymaps[][";
- output += keymaps[0].length; // row
- output += "][";
- output += keymaps[0][0].length; // col
- output += "] PROGMEM = {\n";
- output += "#endif\n";
- for (var i in keymaps) {
- output += " {\n";
- for (var j in keymaps[i]) {
- output += " { ";
- for (var k in keymaps[i][j]) {
- output += '0x' + ('0' + keymaps[i][j][k].toString(16)).substr(-2);
- output += ',';
- }
- output += " },\n";
- }
- output += " },\n";
- }
- output += "};\n\n";
- output += "/* translates key to keycode */\n";
- output += "uint8_t keymap_key_to_keycode(uint8_t layer, key_t key)\n";
- output += "{\n";
- output += " return pgm_read_byte(&keymaps[(layer)][(key.row)][(key.col)]);\n";
- output += "}\n";
- output += "\n";
- output += "/* translates Fn index to action */\n";
- output += "action_t keymap_fn_to_action(uint8_t keycode)\n";
- output += "{\n";
- output += " action_t action;\n";
- output += " if (FN_INDEX(keycode) < sizeof(fn_actions) / sizeof(fn_actions[0])) {\n";
- output += " action.code = pgm_read_word(&fn_actions[FN_INDEX(keycode)]);\n";
- output += " } else {\n";
- output += " action.code = ACTION_NO;\n";
- output += " }\n";
- output += " return action;\n";
- output += "}\n";
- return output;
-};
-
-
-
-/*
- * keycodes
- */
-var code_display = [
- // {id, name(text), description(tooltip)}
- {id: 'NO ', name: 'NO', desc: 'No action'},
- {id: 'TRNS', name: 'TRNS', desc: 'Transparent'},
- {id: 'POST_FAIL', name: 'POST_FAIL', desc: 'POST_FAIL'},
- {id: 'UNDEFINED', name: 'UNDEFINED', desc: 'UNDEFINED'},
- {id: 'A', name: 'A', desc: 'A'},
- {id: 'B', name: 'B', desc: 'B'},
- {id: 'C', name: 'C', desc: 'C'},
- {id: 'D', name: 'D', desc: 'D'},
- {id: 'E', name: 'E', desc: 'E'},
- {id: 'F', name: 'F', desc: 'F'},
- {id: 'G', name: 'G', desc: 'G'},
- {id: 'H', name: 'H', desc: 'H'},
- {id: 'I', name: 'I', desc: 'I'},
- {id: 'J', name: 'J', desc: 'J'},
- {id: 'K', name: 'K', desc: 'K'},
- {id: 'L', name: 'L', desc: 'L'},
- {id: 'M', name: 'M', desc: 'M'},
- {id: 'N', name: 'N', desc: 'N'},
- {id: 'O', name: 'O', desc: 'O'},
- {id: 'P', name: 'P', desc: 'P'},
- {id: 'Q', name: 'Q', desc: 'Q'},
- {id: 'R', name: 'R', desc: 'R'},
- {id: 'S', name: 'S', desc: 'S'},
- {id: 'T', name: 'T', desc: 'T'},
- {id: 'U', name: 'U', desc: 'U'},
- {id: 'V', name: 'V', desc: 'V'},
- {id: 'W', name: 'W', desc: 'W'},
- {id: 'X', name: 'X', desc: 'X'},
- {id: 'Y', name: 'Y', desc: 'Y'},
- {id: 'Z', name: 'Z', desc: 'Z'},
- {id: '1', name: '1', desc: '1'},
- {id: '2', name: '2', desc: '2'},
- {id: '3', name: '3', desc: '3'},
- {id: '4', name: '4', desc: '4'},
- {id: '5', name: '5', desc: '5'},
- {id: '6', name: '6', desc: '6'},
- {id: '7', name: '7', desc: '7'},
- {id: '8', name: '8', desc: '8'},
- {id: '9', name: '9', desc: '9'},
- {id: '0', name: '0', desc: '0'},
- {id: 'ENT', name: 'Enter', desc: 'ENTER'},
- {id: 'ESC', name: 'Esc', desc: 'Escape'},
- {id: 'BSPC', name: 'Back space', desc: 'Backspace'},
- {id: 'TAB', name: 'Tab', desc: 'Tab'},
- {id: 'SPC', name: 'Space', desc: 'Space'},
- {id: 'MINS', name: '-', desc: 'MINUS'},
- {id: 'EQL', name: '=', desc: 'EQUAL'},
- {id: 'LBRC', name: '[', desc: 'Left Bracket'},
- {id: 'RBRC', name: ']', desc: 'Right Bracket'},
- {id: 'BSLS', name: "\\", desc: 'Backslash'},
- {id: 'NUHS', name: 'ISO #', desc: 'Non-US Hash'},
- {id: 'SCLN', name: ';', desc: 'Semicolon'},
- {id: 'QUOT', name: "'", desc: 'Quote'},
- {id: 'GRV ', name: '`', desc: 'Grave'},
- {id: 'COMM', name: ',', desc: 'Comma'},
- {id: 'DOT ', name: '.', desc: 'Dot'},
- {id: 'SLSH', name: '/', desc: 'Slash'},
- {id: 'CAPS', name: 'Caps Lock', desc: 'Need this? Sure? :)'},
- {id: 'F1 ', name: 'F1', desc: 'F1'},
- {id: 'F2 ', name: 'F2', desc: 'F2'},
- {id: 'F3 ', name: 'F3', desc: 'F3'},
- {id: 'F4 ', name: 'F4', desc: 'F4'},
- {id: 'F5 ', name: 'F5', desc: 'F5'},
- {id: 'F6 ', name: 'F6', desc: 'F6'},
- {id: 'F7 ', name: 'F7', desc: 'F7'},
- {id: 'F8 ', name: 'F8', desc: 'F8'},
- {id: 'F9 ', name: 'F9', desc: 'F9'},
- {id: 'F10 ', name: 'F10', desc: 'F10'},
- {id: 'F11 ', name: 'F11', desc: 'F11'},
- {id: 'F12 ', name: 'F12', desc: 'F12'},
- {id: 'PSCR', name: 'Print Screen', desc: 'Print Screen'},
- {id: 'SLCK', name: 'Scroll Lock', desc: 'Scroll Lock'},
- {id: 'PAUS', name: 'Pause', desc: 'Pause'},
- {id: 'INS ', name: 'Insert', desc: 'Insert'},
- {id: 'HOME', name: 'Home', desc: 'Home'},
- {id: 'PGUP', name: 'Page Up', desc: 'Page Up'},
- {id: 'DEL ', name: 'Delete', desc: 'Delete'},
- {id: 'END ', name: 'End', desc: 'End'},
- {id: 'PGDN', name: 'Page Down', desc: 'Page Down'},
- {id: 'RGHT', name: '\u2192', desc: 'Right'},
- {id: 'LEFT', name: '\u2190', desc: 'Left'},
- {id: 'DOWN', name: '\u2193', desc: 'Down'},
- {id: 'UP ', name: '\u2191', desc: 'Up'},
- {id: 'NLCK', name: 'Num Lock', desc: 'Num Lock'},
- {id: 'PSLS', name: 'P/', desc: 'Keypad Slash'},
- {id: 'PAST', name: 'P*', desc: 'Keypad Asterisk'},
- {id: 'PMNS', name: 'P-', desc: 'Keypad Minus'},
- {id: 'PPLS', name: 'P+', desc: 'Keypad Plus'},
- {id: 'PENT', name: 'P\u21A9', desc: 'Keypad Enter'},
- {id: 'P1 ', name: 'P1', desc: 'Keypad 1'},
- {id: 'P2 ', name: 'P2', desc: 'Keypad 2'},
- {id: 'P3 ', name: 'P3', desc: 'Keypad 3'},
- {id: 'P4 ', name: 'P4', desc: 'Keypad 4'},
- {id: 'P5 ', name: 'P5', desc: 'Keypad 5'},
- {id: 'P6 ', name: 'P6', desc: 'Keypad 6'},
- {id: 'P7 ', name: 'P7', desc: 'Keypad 7'},
- {id: 'P8 ', name: 'P8', desc: 'Keypad 8'},
- {id: 'P9 ', name: 'P9', desc: 'Keypad 9'},
- {id: 'P0 ', name: 'P0', desc: 'Keypad 0'},
- {id: 'PDOT', name: 'P.', desc: 'Keypad Dot'},
- {id: 'NUBS', name: 'ISO \\', desc: 'Non-US Backslash'},
- {id: 'APP ', name: 'Application', desc: 'Application'},
- {id: 'POWER', name: '_Power', desc: 'Power(Not work on Windows)'},
- {id: 'PEQL', name: 'P=', desc: 'Keymapd Equal'},
- {id: 'F13 ', name: 'F13', desc: 'F13'},
- {id: 'F14 ', name: 'F14', desc: 'F14'},
- {id: 'F15 ', name: 'F15', desc: 'F15'},
- {id: 'F16 ', name: 'F16', desc: 'F16'},
- {id: 'F17 ', name: 'F17', desc: 'F17'},
- {id: 'F18 ', name: 'F18', desc: 'F18'},
- {id: 'F19 ', name: 'F19', desc: 'F19'},
- {id: 'F20 ', name: 'F20', desc: 'F20'},
- {id: 'F21 ', name: 'F21', desc: 'F21'},
- {id: 'F22 ', name: 'F22', desc: 'F22'},
- {id: 'F23 ', name: 'F23', desc: 'F23'},
- {id: 'F24 ', name: 'F24', desc: 'F24'},
- {id: 'EXECUTE', name: 'EXECUTE', desc: 'EXECUTE'},
- {id: 'HELP', name: 'HELP', desc: 'HELP'},
- {id: 'MENU', name: 'MENU', desc: 'MENU'},
- {id: 'SELECT', name: 'SELECT', desc: 'SELECT'},
- {id: 'STOP', name: 'STOP', desc: 'STOP'},
- {id: 'AGAIN', name: 'AGAIN', desc: 'AGAIN'},
- {id: 'UNDO', name: 'UNDO', desc: 'UNDO'},
- {id: 'CUT', name: 'CUT', desc: 'CUT'},
- {id: 'COPY', name: 'COPY', desc: 'COPY'},
- {id: 'PASTE', name: 'PASTE', desc: 'PASTE'},
- {id: 'FIND', name: 'FIND', desc: 'FIND'},
- {id: '_MUTE', name: '_MUTE', desc: '_MUTE(Not work on Windows)'},
- {id: '_VOLUP', name: '_VOLUP', desc: '_VOLUP(Not work on Windows)'},
- {id: '_VOLDOWN', name: '_VOLDOWN', desc: '_VOLDOWN(Not work on Windows)'},
- {id: 'LCAP', name: 'Locking Caps Lock', desc: 'Locking Caps Lock'},
- {id: 'LNUM', name: 'Locking Num Lock', desc: 'Locking Num Lock'},
- {id: 'LSCR', name: 'Locking Scroll Lock', desc: 'Locking Scroll Lock'},
- {id: 'PCMM', name: 'P,', desc: 'Keypad Comma'},
- {id: 'KP_EQUAL_AS400', name: 'P= (AS400)', desc: 'Keypad Equal (AS400)'},
- {id: 'INT1', name: '\u308D', desc: 'Japanese RO'},
- {id: 'INT2', name: '\u3072\u3089\u304c\u306a', desc: 'Japanese Hiragana'},
- {id: 'INT3', name: '\uffe5', desc: 'Japanese Yen'},
- {id: 'INT4', name: '\u5909\u63db', desc: 'Japanese Henkan'},
- {id: 'INT5', name: '\u7121\u5909\u63db', desc: 'Japanese Muhenkan'},
- {id: 'INT6', name: 'INT6', desc: 'INT6'},
- {id: 'INT7', name: 'INT7', desc: 'INT7'},
- {id: 'INT8', name: 'INT8', desc: 'INT8'},
- {id: 'INT9', name: 'INT9', desc: 'INT9'},
- {id: 'LANG1', name: '\ud55c/\uc601', desc: 'Korean Hangul/English'},
- {id: 'LANG2', name: '\ud55c\uc790', desc: 'Korean Hanja'},
- {id: 'LANG3', name: 'LANG3', desc: 'LANG3'},
- {id: 'LANG4', name: 'LANG4', desc: 'LANG4'},
- {id: 'LANG5', name: 'LANG5', desc: 'LANG5'},
- {id: 'LANG6', name: 'LANG6', desc: 'LANG6'},
- {id: 'LANG7', name: 'LANG7', desc: 'LANG7'},
- {id: 'LANG8', name: 'LANG8', desc: 'LANG8'},
- {id: 'LANG9', name: 'LANG9', desc: 'LANG9'},
- {id: 'ALT_ERASE', name: 'ALT_ERASE', desc: 'ALT_ERASE'},
- {id: 'SYSREQ', name: 'SYSREQ', desc: 'SYSREQ'},
- {id: 'CANCEL', name: 'CANCEL', desc: 'CANCEL'},
- {id: 'CLEAR', name: 'CLEAR', desc: 'CLEAR'},
- {id: 'PRIOR', name: 'PRIOR', desc: 'PRIOR'},
- {id: 'RETURN', name: 'RETURN', desc: 'RETURN'},
- {id: 'SEPARATOR', name: 'SEPARATOR', desc: 'SEPARATOR'},
- {id: 'OUT', name: 'OUT', desc: 'OUT'},
- {id: 'OPER', name: 'OPER', desc: 'OPER'},
- {id: 'CLEAR_AGAIN', name: 'CLEAR_AGAIN', desc: 'CLEAR_AGAIN'},
- {id: 'CRSEL', name: 'CRSEL', desc: 'CRSEL'},
- {id: 'EXSEL', name: 'EXSEL', desc: 'EXSEL'},
-
- /* System & Media key 165-191(0xa5-bf) */
- {id: 'PWR ', name: 'Sys Power', desc: 'System Power'},
- {id: 'SLEP', name: 'Sys Sleep', desc: 'System Sleep'},
- {id: 'WAKE', name: 'Sys Wake', desc: 'System Wake'},
- {id: 'MUTE', name: 'Mute', desc: 'Audio Mute'},
- {id: 'VOLU', name: 'Vol Up', desc: 'Audio Vol Up'},
- {id: 'VOLD', name: 'Vol Down', desc: 'Audio Vol Down'},
- {id: 'MNXT', name: 'Next Track', desc: 'Next Track'},
- {id: 'MPRV', name: 'Prev Track', desc: 'Previous Track'},
- {id: 'MSTP', name: 'Stop', desc: 'Media Stop'},
- {id: 'MPLY', name: 'Play Pause', desc: 'Play Pause'},
- {id: 'MSEL', name: 'Select', desc: 'Media Select'},
- {id: 'EJCT', name: 'Eject', desc: 'Media Eject'},
- {id: 'MAIL', name: 'Mail', desc: 'Mail'},
- {id: 'CALC', name: 'Calc', desc: 'Calculator'},
- {id: 'MYCM', name: 'My Computer', desc: 'My Computer'},
- {id: 'WSCH', name: 'Web Search', desc: 'WWW Search'},
- {id: 'WHOM', name: 'Web Home', desc: 'WWW Home'},
- {id: 'WBAK', name: 'Web Back', desc: 'WWW Back'},
- {id: 'WFWD', name: 'Web Forward', desc: 'WWW Forward'},
- {id: 'WSTP', name: 'Web Stop', desc: 'WWW Stop'},
- {id: 'WREF', name: 'Web Refresh', desc: 'WWW Refresh'},
- {id: 'WFAV', name: 'Web Favorites', desc: 'WWW Favorites'},
- {id: 'RESERVED-187', name: 'RESERVED-187', desc: 'RESERVED-187'},
- {id: 'RESERVED-188', name: 'RESERVED-188', desc: 'RESERVED-188'},
- {id: 'RESERVED-189', name: 'RESERVED-189', desc: 'RESERVED-189'},
- {id: 'RESERVED-190', name: 'RESERVED-190', desc: 'RESERVED-190'},
- {id: 'RESERVED-191', name: 'RESERVED-191', desc: 'RESERVED-191'},
-
- /* Fn key 192-223(0xc0-df) */
- {id: 'FN0 ', name: 'L1', desc: 'Change to Layer 1(Momentary) '},
- {id: 'FN1 ', name: 'L2', desc: 'Change to Layer 2(Momentary) '},
- {id: 'FN2 ', name: 'L3', desc: 'Change to Layer 3(Momentary) '},
- {id: 'FN3 ', name: 'L4', desc: 'Change to Layer 4(Momentary) '},
- {id: 'FN4 ', name: 'L5', desc: 'Change to Layer 5(Momentary) '},
- {id: 'FN5 ', name: 'L6', desc: 'Change to Layer 6(Momentary) '},
- {id: 'FN6 ', name: 'L7', desc: 'Change to Layer 7(Momentary) '},
- {id: 'FN7 ', name: 'T1', desc: 'Change to Layer 1(Toggle) '},
- {id: 'FN8 ', name: 'T2', desc: 'Change to Layer 2(Toggle) '},
- {id: 'FN9 ', name: 'T3', desc: 'Change to Layer 3(Toggle) '},
- {id: 'FN10', name: 'L1t', desc: 'Change to Layer 1(Momentary with Tap Toggle) '},
- {id: 'FN11', name: 'L2t', desc: 'Change to Layer 2(Momentary with Tap Toggle) '},
- {id: 'FN12', name: 'L3t', desc: 'Change to Layer 3(Momentary with Tap Toggle) '},
- /* Layer swith with Tap key */
- {id: 'FN13', name: 'A (L1)', desc: 'A with with L1(Tap key)'},
- {id: 'FN14', name: 'F (L2)', desc: 'F with with L2(Tap key)'},
- {id: 'FN15', name: 'J (L3)', desc: 'J with with L3(Tap key)'},
- {id: 'FN16', name: 'Space (L4)', desc: 'Space with L4(Tap key)'},
- {id: 'FN17', name: '; (L5)', desc: 'Semicolon with L5(Tap key)'},
- {id: 'FN18', name: '\'( L6)', desc: 'Quote with L6(Tap key)'},
- {id: 'FN19', name: '/ (L7)', desc: 'Slash with with L7(Tap key)'},
- /* Modifier on alpha key(Tap key, Dual-role key) */
- {id: 'FN20', name: 'Space (LShift)', desc: 'Space with Left Sfhit(Tap key)'},
- {id: 'FN21', name: 'Space (LCtrl)', desc: 'Space with Left Control(Tap key)'},
- {id: 'FN22', name: '\' (RCtrl)', desc: 'Quote with Right Control(Tap key)'},
- {id: 'FN23', name: 'Enter (RCtrl)', desc: 'Enter with Right Control(Tap key)'},
- /* Modifier with a key(Tap key, Dual-role key) */
- {id: 'FN24', name: 'LCtrl (Esc)', desc: 'Left Control with Escape'},
- {id: 'FN25', name: 'LCtrl (Backspace)', desc: 'Left Control with Backspace'},
- {id: 'FN26', name: 'LCtrl (OneShot)', desc: 'Left Control(OneShot Modifier)'},
- {id: 'FN27', name: 'LShift (Esc)', desc: 'Left Shift with Escape'},
- {id: 'FN28', name: 'LShift (Backspace)', desc: 'Left Shift with Backspace'},
- {id: 'FN29', name: 'LShift (OneShot)', desc: 'Left Shift(OneShot Modifier)'},
- {id: 'FN30', name: 'RShift (`)', desc: 'Right Shift with Grave(Tap key)'},
- {id: 'FN31', name: 'RShift (\\)', desc: 'Right Shift with Backslash(Tap key)'},
-
-/* Standeard codes for 16bit Action 165-223(0xa5-df)
- {id: 'RESERVED-165', name: 'RESERVED-165', desc: 'RESERVED-165'},
- {id: 'RESERVED-166', name: 'RESERVED-166', desc: 'RESERVED-166'},
- {id: 'RESERVED-167', name: 'RESERVED-167', desc: 'RESERVED-167'},
- {id: 'RESERVED-168', name: 'RESERVED-168', desc: 'RESERVED-168'},
- {id: 'RESERVED-169', name: 'RESERVED-169', desc: 'RESERVED-169'},
- {id: 'RESERVED-170', name: 'RESERVED-170', desc: 'RESERVED-170'},
- {id: 'RESERVED-171', name: 'RESERVED-171', desc: 'RESERVED-171'},
- {id: 'RESERVED-172', name: 'RESERVED-172', desc: 'RESERVED-172'},
- {id: 'RESERVED-173', name: 'RESERVED-173', desc: 'RESERVED-173'},
- {id: 'RESERVED-174', name: 'RESERVED-174', desc: 'RESERVED-174'},
- {id: 'RESERVED-175', name: 'RESERVED-175', desc: 'RESERVED-175'},
- {id: 'KP_00', name: 'KP_00', desc: 'KP_00'},
- {id: 'KP_000', name: 'KP_000', desc: 'KP_000'},
- {id: 'THOUSANDS_SEPARATOR', name: 'THOUSANDS_SEPARATOR', desc: 'THOUSANDS_SEPARATOR'},
- {id: 'DECIMAL_SEPARATOR', name: 'DECIMAL_SEPARATOR', desc: 'DECIMAL_SEPARATOR'},
- {id: 'CURRENCY_UNIT', name: 'CURRENCY_UNIT', desc: 'CURRENCY_UNIT'},
- {id: 'CURRENCY_SUB_UNIT', name: 'CURRENCY_SUB_UNIT', desc: 'CURRENCY_SUB_UNIT'},
- {id: 'KP_LPAREN', name: 'KP_LPAREN', desc: 'KP_LPAREN'},
- {id: 'KP_RPAREN', name: 'KP_RPAREN', desc: 'KP_RPAREN'},
- {id: 'KP_LCBRACKET', name: 'KP_LCBRACKET', desc: 'KP_LCBRACKET'},
- {id: 'KP_RCBRACKET', name: 'KP_RCBRACKET', desc: 'KP_RCBRACKET'},
- {id: 'KP_TAB', name: 'KP_TAB', desc: 'KP_TAB'},
- {id: 'KP_BSPACE', name: 'KP_BSPACE', desc: 'KP_BSPACE'},
- {id: 'KP_A', name: 'KP_A', desc: 'KP_A'},
- {id: 'KP_B', name: 'KP_B', desc: 'KP_B'},
- {id: 'KP_C', name: 'KP_C', desc: 'KP_C'},
- {id: 'KP_D', name: 'KP_D', desc: 'KP_D'},
- {id: 'KP_E', name: 'KP_E', desc: 'KP_E'},
- {id: 'KP_F', name: 'KP_F', desc: 'KP_F'},
- {id: 'KP_XOR', name: 'KP_XOR', desc: 'KP_XOR'},
- {id: 'KP_HAT', name: 'KP_HAT', desc: 'KP_HAT'},
- {id: 'KP_PERC', name: 'KP_PERC', desc: 'KP_PERC'},
- {id: 'KP_LT', name: 'KP_LT', desc: 'KP_LT'},
- {id: 'KP_GT', name: 'KP_GT', desc: 'KP_GT'},
- {id: 'KP_AND', name: 'KP_AND', desc: 'KP_AND'},
- {id: 'KP_LAZYAND', name: 'KP_LAZYAND', desc: 'KP_LAZYAND'},
- {id: 'KP_OR', name: 'KP_OR', desc: 'KP_OR'},
- {id: 'KP_LAZYOR', name: 'KP_LAZYOR', desc: 'KP_LAZYOR'},
- {id: 'KP_COLON', name: 'KP_COLON', desc: 'KP_COLON'},
- {id: 'KP_HASH', name: 'KP_HASH', desc: 'KP_HASH'},
- {id: 'KP_SPACE', name: 'KP_SPACE', desc: 'KP_SPACE'},
- {id: 'KP_ATMARK', name: 'KP_ATMARK', desc: 'KP_ATMARK'},
- {id: 'KP_EXCLAMATION', name: 'KP_EXCLAMATION', desc: 'KP_EXCLAMATION'},
- {id: 'KP_MEM_STORE', name: 'KP_MEM_STORE', desc: 'KP_MEM_STORE'},
- {id: 'KP_MEM_RECALL', name: 'KP_MEM_RECALL', desc: 'KP_MEM_RECALL'},
- {id: 'KP_MEM_CLEAR', name: 'KP_MEM_CLEAR', desc: 'KP_MEM_CLEAR'},
- {id: 'KP_MEM_ADD', name: 'KP_MEM_ADD', desc: 'KP_MEM_ADD'},
- {id: 'KP_MEM_SUB', name: 'KP_MEM_SUB', desc: 'KP_MEM_SUB'},
- {id: 'KP_MEM_MUL', name: 'KP_MEM_MUL', desc: 'KP_MEM_MUL'},
- {id: 'KP_MEM_DIV', name: 'KP_MEM_DIV', desc: 'KP_MEM_DIV'},
- {id: 'KP_PLUS_MINUS', name: 'KP_PLUS_MINUS', desc: 'KP_PLUS_MINUS'},
- {id: 'KP_CLEAR', name: 'KP_CLEAR', desc: 'KP_CLEAR'},
- {id: 'KP_CLEAR_ENTRY', name: 'KP_CLEAR_ENTRY', desc: 'KP_CLEAR_ENTRY'},
- {id: 'KP_BINARY', name: 'KP_BINARY', desc: 'KP_BINARY'},
- {id: 'KP_OCTAL', name: 'KP_OCTAL', desc: 'KP_OCTAL'},
- {id: 'KP_DECIMAL', name: 'KP_DECIMAL', desc: 'KP_DECIMAL'},
- {id: 'KP_HEXADECIMAL', name: 'KP_HEXADECIMAL', desc: 'KP_HEXADECIMAL'},
- {id: 'RESERVED-222', name: 'RESERVED-222', desc: 'RESERVED-222'},
- {id: 'RESERVED-223', name: 'RESERVED-223', desc: 'RESERVED-223'},
-*/
-
- /* Modifier 224-231(0xe0-e7) */
- {id: 'LCTL', name: 'LCtrl', desc: 'Left Control'},
- {id: 'LSFT', name: 'LShift', desc: 'Left Shift'},
- {id: 'LALT', name: 'LAlt', desc: 'Left Alt(\u2325)'},
- {id: 'LGUI', name: 'LGui', desc: 'Left Windows(\u2318)'},
- {id: 'RCTL', name: 'RCtrl', desc: 'Right Control'},
- {id: 'RSFT', name: 'RShift', desc: 'Right Shift'},
- {id: 'RALT', name: 'RAlt', desc: 'Right Alt(\u2325)'},
- {id: 'RGUI', name: 'RGui', desc: 'Right Windows(\u2318)'},
-
- /* Not used 232-239(0xe8-ef) */
- {id: 'RESERVED-232', name: 'RESERVED-232', desc: 'RESERVED-232'},
- {id: 'RESERVED-233', name: 'RESERVED-233', desc: 'RESERVED-233'},
- {id: 'RESERVED-234', name: 'RESERVED-234', desc: 'RESERVED-234'},
- {id: 'RESERVED-235', name: 'RESERVED-235', desc: 'RESERVED-235'},
- {id: 'RESERVED-236', name: 'RESERVED-236', desc: 'RESERVED-236'},
- {id: 'RESERVED-237', name: 'RESERVED-237', desc: 'RESERVED-237'},
- {id: 'RESERVED-238', name: 'RESERVED-238', desc: 'RESERVED-238'},
- {id: 'RESERVED-239', name: 'RESERVED-239', desc: 'RESERVED-239'},
-
- /* Mousekey 240-255(0xf0-ff) */
- {id: 'MS_U', name: 'Mouse Up', desc: 'Mouse UP'},
- {id: 'MS_D', name: 'Mouse down', desc: 'Mouse Down'},
- {id: 'MS_L', name: 'Mouse left', desc: 'Mouse Left'},
- {id: 'MS_R', name: 'Mouse right', desc: 'Mouse Right'},
- {id: 'BTN1', name: 'Mouse Btn1', desc: 'Mouse Button1'},
- {id: 'BTN2', name: 'Mouse Btn2', desc: 'Mouse Button2'},
- {id: 'BTN3', name: 'Mouse Btn3', desc: 'Mouse Button3'},
- {id: 'BTN4', name: 'Mouse Btn4', desc: 'Mouse Button4'},
- {id: 'BTN5', name: 'Mouse Btn5', desc: 'Mouse Button5'},
- {id: 'WH_U', name: 'Wheel Up', desc: 'Wheel Up'},
- {id: 'WH_D', name: 'Wheel Down', desc: 'Wheel Down'},
- {id: 'WH_L', name: 'Wheel Left', desc: 'Wheel Left'},
- {id: 'WH_R', name: 'Wheel Right', desc: 'Wheel Right'},
- {id: 'ACL0', name: 'Mouse Slow', desc: 'Mouse Slow'},
- {id: 'ACL1', name: 'Mouse Medium', desc: 'Mouse Medium'},
- {id: 'ACL2', name: 'Mouse Fast', desc: 'Mouse Fast'},
-];
diff --git a/editor/index.html b/editor/index.html
index 2bc3b003..25bfc10c 100644
--- a/editor/index.html
+++ b/editor/index.html
@@ -7,8 +7,7 @@
TMK Keymap Editor
Online Keymap Editor Demo