From f0dfe8ab97e6919957e371dcb09989fcedaada77 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stephan=20Bo=CC=88sebeck?= Date: Mon, 15 Feb 2016 14:13:29 +0100 Subject: [PATCH 01/45] testing moving the 6 to the left, having one key more on the right used for hash now feels a bit more natural to me. Need to investigate further. --- keyboard/ergodox_ez/keymaps/osx_de/keymap.c | 22 +- keyboard/ergodox_ez/keymaps/osx_de/osx_de.hex | 3058 +++++++++-------- 2 files changed, 1561 insertions(+), 1519 deletions(-) diff --git a/keyboard/ergodox_ez/keymaps/osx_de/keymap.c b/keyboard/ergodox_ez/keymaps/osx_de/keymap.c index 0298cb7028..e75187202f 100644 --- a/keyboard/ergodox_ez/keymaps/osx_de/keymap.c +++ b/keyboard/ergodox_ez/keymaps/osx_de/keymap.c @@ -31,18 +31,18 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Keymap 0: Basic layer * * ,--------------------------------------------------. ,--------------------------------------------------. - * | ESC | 1 | 2 | 3 | 4 | 5 |CMD-V | |CMD-C | 6 | 7 | 8 | 9 | 0 | ß | + * | ESC | 1 | 2 | 3 | 4 | 5 | 6 | |CMD-C | 7 | 8 | 9 | 0 | ß | # | * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| * | TAB | Q | W | E | R | T | CMD | | CMD | Z | U | I | O | P | ü | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | LALT | A | S | D | F | G |------| |------| H | J | K | L | ö | ä/RALT| + * | LALT | A | S | D | F | G |------| |------| H | J | K | L | ö | ä/RALT| * |--------+------+------+------+------+------| LALT | | RALT |------+------+------+------+------+--------| * | LShift |Y/Ctrl| X | C | V | B | | | | N | M | , | . |-/Ctrl| RShift | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | | ! | ? | | | | | \ | [ | ] | | | # | F12 | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | # | $ | \ | / | . |------| |------| / | ( | ) | { | } | | + * | | # | $ | \ | / | . |------| |------| / | ( | ) | { | } | * | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| * | | | ^ | % | | | ~ | | | | & | < | > | " | ' | ? | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | | | | | | | | | . | ! | | + * | | | | | | | + | - | . | ! | | * `----------------------------------' `----------------------------------' * ,-------------. ,-------------. * | | | | | | @@ -106,9 +106,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // right hand M(M_TOGGLE_5), KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_TRNS, LALT(LSFT(KC_7)), LALT(KC_5), LALT(KC_6), LALT(KC_7), DE_HASH, KC_F12, - DE_SLSH, DE_LPRN, DE_RPRN, LALT(KC_8), LALT(KC_9), KC_TRNS, + DE_SLSH, DE_LPRN, DE_RPRN, LALT(KC_8), LALT(KC_9), LSFT(DE_PLUS), KC_TRNS, DE_AMPR, KC_GRV, LSFT(KC_GRV), DE_DQOT, DE_QUOT, DE_QST, - KC_TRNS,KC_DOT, KC_EXLM, KC_TRNS, KC_TRNS, + DE_PLUS, DE_MINS, KC_DOT, KC_EXLM, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboard/ergodox_ez/keymaps/osx_de/osx_de.hex b/keyboard/ergodox_ez/keymaps/osx_de/osx_de.hex index 2c83055b0d..8d74fd599b 100644 --- a/keyboard/ergodox_ez/keymaps/osx_de/osx_de.hex +++ b/keyboard/ergodox_ez/keymaps/osx_de/osx_de.hex @@ -1,1509 +1,1551 @@ -:100000000C94CA070C940E080C940E080C940E085D -:100010000C940E080C940E080C940E080C940E0808 -:100020000C940E080C940E080C9488130C945A141B -:100030000C940E080C940E080C940E080C940E08E8 -:100040000C940E080C94322D0C940E080C940E088F -:100050000C940E080C942A230C940E080C940E0891 -:100060000C940E080C940E080C940E080C940E08B8 -:100070000C940E080C940E080C940E080C940E08A8 -:100080000C940E080C940E080C940E080C940E0898 -:100090000C940E080C940E080C940E080C940E0888 -:1000A0000C940E080C940E080C940E08C714E91456 -:1000B000D715E914D7152E155115D715A615B9154D -:1000C000001900192F192F197319B119CB1BCB1B4C -:1000D000CA19CB1BCB1ACB1A9F1BCB1BCB1BB61B36 -:1000E00002E002E2012E022E02E10002E002E10241 -:1000F000E20001E001E101E20002E001E3010602A9 -:100100000602E30002E00001E00002E001E3011961 -:10011000021902E30002E00001E0000000F0A1F09B -:10012000A329002B00E200E100358100001E00142D -:100130000004001D7135004D001F001A0016001B41 -:1001400000E1044C00200008000700060050002ACF -:100150000021001500090019004F004A0022001775 -:10016000000A000500000003300130E3000000E257 -:1001700000000002540230E7000000E60000000426 -:100180005423001C000B00110000002E7F240018D7 -:10019000000D00100052004B0025000C000E003630 -:1001A0000051002C00260012000F003700E1082843 -:1001B00000270013003300387130004E002D002F4F -:1001C000003474E5003181000001000100010001EC -:1001D00000010000003A003500310001000100017B -:1001E000003B0035022102350001004C003C001E9E -:1001F0000224062202010001003D002D02240224F7 -:1002000004010001003E000100370011040000015C -:1002100000010001000000010000000100010001D8 -:100220000000000100000001003F0024062402231A -:1002300002000001004000220425023500010001F7 -:100240000041002304260235023700010042002449 -:100250000425041F021E0201004300310026043160 -:1002600002010001004400450001002D02010000D0 -:100270000001000100010001000100000001000177 -:100280000001000100010001000100F400F200FB88 -:1002900000010001000100F000F100FA000100017E -:1002A000000100F500F300FC00010001000100F96D -:1002B00000FA00F60000000100010001000000014A -:1002C0000000000100A80001000000010000000182 -:1002D0000001000100A900AA0000000100010001C6 -:1002E000000100010001000100010001000100AC5B -:1002F000000100B600010001000100AB0050000148 -:1003000000010001000100520051000100AE000197 -:1003100000010001004F0000000100010001000188 -:10032000000100000001000E000B001B7101000124 -:100330000001003700040014000100010001001258 -:10034000000800340001000100010036000C002FFD -:10035000000100010001001D001800330000000131 -:100360000001000100000001000000010001000187 -:100370000000000100000001000100190007000555 -:10038000000000010001000A001700130001000135 -:10039000000100060015001A000100010001000F15 -:1003A00000110010000100010001002D0016000DD9 -:1003B000710100010038001C0009820100010000E9 -:1003C0000001000100010001000100000001000126 -:1003D00000010001000100010001000100500001C6 -:1003E0000001000100010052005100010001000164 -:1003F00000010001004F00010001000100010001A7 -:1004000000010001000000010001000100000001E6 -:1004100000000001000100010000000100000001D7 -:10042000003F005200510023020000010040002460 -:100430000021001E00270001004100250022001FAE -:1004400000370001004200260023002000270001A1 -:100450000043003002300024022E00010044004519 -:100460000001000100010000000A00253031366261 -:10047000003A200025303258000A722F63203031B4 -:1004800032333435363738394142434445460A0021 -:100490000A002530325800626F756E6365213A207C -:1004A000006C6566742073696465206174746163AF -:1004B0006865640A006C6566742073696465206E03 -:1004C0006F7420726573706F6E64696E670A007472 -:1004D0007279696E6720746F207265736574206D20 -:1004E000637032333031380A000A44454255473A86 -:1004F00020656E61626C65642E0A005B735D004B63 -:100500006579626F6172642073746172742E0A007F -:100510005B575D005B535D005B525D005B445D00BB -:100520005B435D0016034500720067006F004400E6 -:100530006F007800200045005A00000016034500B7 -:10054000720067006F0044006F00780020004500D3 -:100550005A0000000403090409028D00050100A0EF -:10056000FA09040000010301010009211101000141 -:10057000223F000705810308000A09040100010366 -:10058000010200092111010001224D00070582032B -:1005900008000A09040200010300000009211101FA -:1005A00000012236000705830308000A090403003E -:1005B00002030000000921110100012220000705AB -:1005C000840320000107050403200001090404003E -:1005D0000103000000092111010001223900070573 -:1005E00085031000011201100100000008EDFE0754 -:1005F0001301000102000105010906A10105071907 -:10060000E029E71500250195087501810205081903 -:100610000129059505750191029501750391010563 -:10062000071900297715002501957875018102C009 -:100630000631FF0974A1010975150025FF95207584 -:100640000881020976150025FF952075089102C0E2 -:1006500005010980A101850216010026B7001A01D3 -:10066000002AB700751095018100C0050C0901A191 -:10067000018503160100269C021A01002A9C0275BE -:100680001095018100C005010902A1010901A10025 -:100690000509190129051500250195057501810236 -:1006A0009501750381010501093009311581257F07 -:1006B00095027508810609381581257F9501750811 -:1006C0008106050C0A38021581257F950175088180 -:1006D00006C0C005010906A101050719E029E715B3 -:1006E00000250195087501810295017508810105B4 -:1006F0000819012905950575019102950175039168 -:10070000010507190029FF150025FF9506750881C9 -:1007100000C00A002530325820006B6579626F6195 -:1007200072645F7265706F72743A20000A0025303F -:100730003258006B6579626F6172645F7365745FD4 -:100740006C65643A200064656C5F6B65795F626913 -:10075000743A2063616E27742064656C3A202530FA -:1007600032580A006164645F6B65795F6269743A4C -:100770002063616E2774206164643A20253032580A -:100780000A00646F6E652E0A00626F6F676D6167A5 -:100790006963207363616E3A202E2E2E2000290A91 -:1007A000002575002F002575005D280025640020B8 -:1007B00000256400200025640020002564007C00E2 -:1007C00025303258006D6F7573656B6579205B62FB -:1007D000746E7C782079207620685D287265702F91 -:1007E00061636C293A205B006D6B5F776865656CAF -:1007F0005F74696D655F746F5F6D6178203D202562 -:10080000640A006D6B5F776865656C5F6D61785F2A -:100810007370656564203D2025640A006D6B5F740C -:10082000696D655F746F5F6D6178203D2025640A96 -:10083000006D6B5F6D61785F7370656564203D204E -:1008400025640A006D6B5F696E74657276616C2059 -:100850003D2025640A006D6B5F64656C6179203D05 -:100860002025640A006D6B5F776865656C5F74694D -:100870006D655F746F5F6D6178203D2025640A00AF -:100880006D6B5F776865656C5F6D61785F737065D0 -:100890006564203D2025640A006D6B5F74696D6599 -:1008A0005F746F5F6D6178203D2025640A006D6B79 -:1008B0005F6D61785F7370656564203D2025640A13 -:1008C000006D6B5F696E74657276616C203D2025EA -:1008D000640A006D6B5F64656C6179203D2025645E -:1008E0000A000A00257500363A20776865656C5F56 -:1008F00074696D655F746F5F6D61783A20000A00FE -:10090000257500353A20776865656C5F6D61785FA5 -:1009100073706565643A20000A00257500343A203A -:1009200074696D655F746F5F6D61783A20000A00CD -:10093000257500333A206D61785F73706565643AA0 -:1009400020000A00257500323A20696E74657276BF -:10095000616C286D73293A20000A00257500313A30 -:100960002064656C6179282A31306D73293A200042 -:100970000A092D2056616C756573202D0A004D3EC5 -:10098000004D25643E20003F007365742064656659 -:1009900061756C740A00433E2000776865726520BB -:1009A00064656C74613A20637572736F723D25647F -:1009B0002C20776865656C3D25640A536565206861 -:1009C0007474703A2F2F656E2E77696B6970656449 -:1009D00069612E6F72672F77696B692F4D6F757321 -:1009E000655F6B6579730A000A092D204D6F757379 -:1009F000656B6579202D0A4553432F713A0971754E -:100A000069740A313A0964656C6179282A31306D5C -:100A100073290A323A09696E74657276616C286DC1 -:100A200073290A333A096D61785F73706565640AEA -:100A3000343A0974696D655F746F5F6D61780A356A -:100A40003A09776865656C5F6D61785F737065659D -:100A5000640A363A09776865656C5F74696D655F2D -:100A6000746F5F6D61780A0A703A097072696E740A -:100A70002076616C7565730A643A09736574206445 -:100A8000656661756C74730A75703A092B310A6476 -:100A90006F776E3A092D310A706775703A092B31FC -:100AA000300A7067646F776E3A092D31300A0A7325 -:100AB00070656564203D2064656C7461202A206D3A -:100AC00061785F7370656564202A2028726570659F -:100AD0006174202F2074696D655F746F5F6D61783C -:100AE000290A003F004D3E2000433E20004C256473 -:100AF0000A000A092D20436F6E736F6C65202D0A62 -:100B00004553432F713A09717569740A6D3A096D3D -:100B10006F7573656B65790A000A092D204D616751 -:100B20006963202D0A643A0964656275670A783A38 -:100B3000096465627567206D61747269780A6B3A41 -:100B4000096465627567206B6579626F6172640A1A -:100B50006D3A096465627567206D6F7573650A7615 -:100B60003A0976657273696F6E0A733A0973746134 -:100B70007475730A633A09636F6E736F6C65206DE9 -:100B80006F64650A302D343A096C61796572302DD5 -:100B900034284631302D4634290A506175733A099C -:100BA000626F6F746C6F616465720A653A0965659E -:100BB00070726F6D0A6E3A094E4B524F0A7A3A09BB -:100BC000736C656570204C454420746573740A002D -:100BD0000A002575002E6E6B726F3A20000A002500 -:100BE00075002E737761705F6261636B736C617304 -:100BF000685F6261636B73706163653A20000A002D -:100C00002575002E737761705F67726176655F6529 -:100C100073633A20000A002575002E6E6F5F6775BA -:100C2000693A20000A002575002E737761705F72A3 -:100C3000616C745F726775693A20000A002575005F -:100C40002E737761705F6C616C745F6C6775693A65 -:100C500020000A002575002E636170736C6F636B52 -:100C60005F746F5F636F6E74726F6C3A20000A007E -:100C70002575002E737761705F636F6E74726F6C91 -:100C80005F636170736C6F636B3A20000A002530FC -:100C90003258006B65796D61705F636F6E6669676E -:100CA0002E7261773A20000A002575002E6D6F754F -:100CB00073653A20000A002575002E6B6579626F16 -:100CC0006172643A20000A002575002E6D6174720D -:100CD00069783A20000A002575002E656E61626C05 -:100CE000653A20000A002530325800646562756755 -:100CF0005F636F6E6669672E7261773A20000A0043 -:100D000025750064656661756C745F6C61796572E8 -:100D10003A20003F004E4B524F3A206F66660A0061 -:100D20004E4B524F3A206F6E0A0074696D65725FC8 -:100D3000636F756E743A202530346C580A006B6509 -:100D400079626F6172645F6E6B726F3A2025580A28 -:100D5000006B6579626F6172645F69646C653A20EB -:100D600025580A006B6579626F6172645F70726FFB -:100D7000746F636F6C3A2025580A00686F73745F54 -:100D80006B6579626F6172645F6C65647328293A80 -:100D90002025580A000A092D2053746174757320A8 -:100DA0002D0A004743433A20342E392E3320415632 -:100DB000522D4C4942433A20312E382E3120415693 -:100DC000525F415243483A20617672350A004F50D3 -:100DD00054494F4E533A204C55464120424F4F54B0 -:100DE0004D41474943204D4F5553454B45592045AB -:100DF000585452414B455920434F4E534F4C452078 -:100E0000434F4D4D414E44204E4B524F20353132D1 -:100E10000A004255494C443A206130383532363563 -:100E20002D6469727479202830393A34343A313774 -:100E3000204A616E2031332032303136290A005683 -:100E400049443A20307846454544284572676F4406 -:100E50006F7820455A29205049443A203078313360 -:100E60003037284572676F446F7820455A292056DD -:100E700045523A203078303030310A0044455343EF -:100E80003A20742E6D2E6B2E206B6579626F617225 -:100E900064206669726D7761726520666F722045A5 -:100EA00072676F646F780A000A092D2056657273A5 -:100EB000696F6E202D0A000A6D6F7573653A206F99 -:100EC00066660A000A6D6F7573653A206F6E0A00D8 -:100ED0000A6B6579626F6172643A206F66660A0018 -:100EE0000A6B6579626F6172643A206F6E0A000A5C -:100EF0006D61747269783A206F66660A000A6D61E6 -:100F0000747269783A206F6E0A000A6465627567C8 -:100F10003A206F6E0A000A64656275673A206F6650 -:100F2000660A000A0A626F6F746C6F616465722EE4 -:100F30002E2E2000433E20006565636F6E66696754 -:100F40003A0A00536C656570204C45442074657303 -:100F5000740A000000000000000000000000010210 -:100F600004060A0F17202C3A4A5D71879DB3C7DA31 -:100F7000E9F5FCFFFCF5E9DAC7B39D87715D4A3AF4 -:100F80002C20170F0A0604020100000000000000D8 -:100F90000000000011241FBECFEFDAE0DEBFCDBF9E -:100FA00004B603FE24C08091FB019091FC01A09146 -:100FB000FD01B091FE018730904BA740B04BB9F4D2 -:100FC0001092FB011092FC011092FD011092FE01A3 -:100FD00014BE84B7877F84BF88E10FB6F8948093EE -:100FE0006000109260000FBEE0E0FFE3099511E0A1 -:100FF000A0E0B1E0E0E0FEE502C005900D92AA336A -:10100000B107D9F711E0AAE3B1E001C01D92AB3FEF -:10101000B107E1F70E94C0100C94FE2E0C94000062 -:10102000FF93EF93E0913A01F0913B01309709F083 -:101030000995EF91FF910895FC018591803011F0A1 -:10104000EFDFFBCF0895FF27E0E230E247FF0CC05F -:10105000419597FF09C0EDE2609570958095909558 -:10106000611D711D811D911D27FF02C0219530E377 -:1010700050E2AA27660F771F881F991FAA1FA4177F -:1010800010F0A41B63955A95A9F7AA3008F0A95F40 -:10109000A05DAF93F395611571058105910541F749 -:1010A000ED3211F4EF93F395F21718F43F93F395A3 -:1010B000FBCF8F91B5DFFA95E1F70895E991F991AA -:1010C0008591803021F0853219F0AADFF9CF08959B -:1010D00020E0E89455915532C1F3503311F46894EF -:1010E00055915A3348F4505390F3220F022E220F99 -:1010F000220F200D250FF4CF0EF42195899199919F -:10110000533619F3533729F1533559F1BC01882768 -:101110009927E8945C3621F48991999168945591C6 -:10112000543639F446EF7EF077FF0DC08FEF9FEF16 -:101130000AC055374AE039F0583540E121F05236BF -:1011400042E009F00895FF93EF937DDFEF91FF9167 -:10115000B7CFFF93EF93FC0181918030B9F360DF4B -:10116000FBCFFF93EF9368DFF1CFDF93CF93CDB742 -:10117000DEB72596A3DFCF91DF910895FC016130A2 -:1011800089F028F0623031F16330E1F153C082819F -:10119000882321F085EE0E949D174CC085EE0E94A9 -:1011A000651848C08281882349F00E94F4229093F8 -:1011B0003D0180933C0188E191E0089580913C01DC -:1011C00090913D010E94002387399105B4F58AE092 -:1011D00091E008958281882349F00E94F42290933F -:1011E0003D0180933C0187E091E0089580913C01AE -:1011F00090913D010E940023873991050CF589EFFC -:1012000090E008958281882349F00E94F42290930F -:101210003D0180933C0182EF90E0089580913C0174 -:1012200090913D010E9400238739910564F480EE7E -:1012300090E0089580E090E0089585E191E00895C0 -:1012400084E091E008958BEE90E008950895609118 -:10125000BE017091BF018091C0019091C1010E94B7 -:101260002D2256985E9825982D9826982E98279886 -:101270002F98823061F018F4813031F00895833076 -:1012800049F0843051F00895259A2D9A0895269AB0 -:101290002E9A0895279A2F9A0895259A2D9A279A7B -:1012A0002F9A089587E299E0892B11F00E9427096F -:1012B00080E090E0089556985E9825982D9826989D -:1012C0002E9827982F988FEF90E090938900809325 -:1012D000880090938B0080938A0090938D00809378 -:1012E0008C00259A2D9A2FEF80E792E021508040C4 -:1012F0009040E1F700C00000269A2E9A2FEF80E779 -:1013000092E0215080409040E1F700C00000279A11 -:101310002F9A2FEF80E792E0215080409040E1F734 -:1013200000C0000025982D982FEF80E792E0215013 -:1013300080409040E1F700C0000026982E982FEFE3 -:1013400080E792E0215080409040E1F700C000002B -:1013500027982F9856985E9825982D9826982E981D -:1013600027982F98089589EA8093800089E08093D8 -:10137000810024982C983F988AB18F748AB96E980E -:10138000479A8BB1806B8BB9769A0E945B0986E293 -:1013900099E0892B11F00E94260980E090E00895E1 -:1013A00080E28093000180913E0181110EC00E9475 -:1013B0001F0A81E080933E012FEF83ED90E32150DF -:1013C00080409040E1F700C0000080E40E94250AC0 -:1013D0008093000181112EC00E944F0A809300016A -:1013E000811128C00E944F0A80930001811122C000 -:1013F0008FE30E944F0A8093000181111BC00E945D -:10140000470A80E40E94250A80930001811112C0DE -:101410008CE00E944F0A8093000181110BC00E9452 -:101420004F0A80930001811105C08FE30E944F0A8B -:10143000809300010E94470A809100010895109254 -:10144000B9008AE08093B800089594EA9093BC00B4 -:101450009091BC0097FFFCCF9091B900987F983095 -:1014600021F0903111F081E008958093BB0084E871 -:101470008093BC008091BC0087FFFCCF8091B900B5 -:10148000887F883111F0803471F780E0089584E915 -:101490008093BC008091BC0084FDFCCF08958093B4 -:1014A000BB0084E88093BC008091BC0087FFFCCF28 -:1014B0009091B900987F81E0983209F480E0089516 -:1014C00084E88093BC008091BC0087FFFCCF8091B2 -:1014D000BB00089580910001811115C080E40E9435 -:1014E000250A8093000181110CC082E10E944F0AFD -:1014F00080930001811105C08FEF0E944F0A8093F5 -:1015000000010E94470A84B1807F84B985B1807F41 -:1015100085B98AB1837F8AB98BB1837F8BB93E98B5 -:10152000469808950E94D009809300010E946A0A9B -:1015300080B38C7080BB81B3836F81BBA0E4B1E0CA -:10154000EEE4F1E08EE08E0F11921D928E13FCCF2F -:1015500083EB99E0892B11F00C94B30908959F92C5 -:10156000AF92BF92CF92DF92EF92FF920F931F93B1 -:10157000CF93DF93809100018823E1F080913F01B8 -:101580008F5F80933F01811115C08FEC94E00E9422 -:101590001C080E94D00980930001882329F085EB64 -:1015A00094E00E941C0806C081EA94E00E941C0896 -:1015B0000E945B0900E411E0C0E0D0E0BB24B394DA -:1015C00082E0A82ECC24C394D12C22E9E22E24E080 -:1015D000F22EC730D10500F580910001811164C061 -:1015E00080E40E94250A80930001811112C082E1EB -:1015F0000E944F0A8093000181110BC0C6010C2E7E -:1016000001C0880F0A94EAF780950E944F0A8093E0 -:1016100000010E94470A48C0CA30A1F028F4C8302F -:1016200059F0C93061F005C0CC3089F070F0CD3090 -:1016300089F0209A289810C0219A29980DC0229AE2 -:101640002A980AC0239A2B9807C0529A01C0539A2D -:101650005B9802C03E9A469890EA9A95F1F79FB13E -:10166000799902C082E001C080E091709B25982B9F -:101670007C9902C084E001C080E0892B7D9902C082 -:1016800038E001C030E0832B7E9902C020E101C028 -:1016900020E0822B9FB19095991F9927991F9295D1 -:1016A000990F907E892B10C080910001811174C028 -:1016B00080E40E94250A80930001882309F459C020 -:1016C000912C0E94470A892DF8019081981739F1D1 -:1016D000808380910101882301F18091D90180FFED -:1016E00004C087E994E00E941C088091D90180FF22 -:1016F0000CC0809101011F928F93FF92EF920E9484 -:10170000B5080F900F900F900F908091D90180FF36 -:1017100004C080E994E00E941C08A09201010E948C -:101720006A0A21960F5F1F4FCE30D10509F051CFC5 -:10173000809101018823B1F08150809301018823B9 -:1017400039F08FE99FE00197F1F700C000000AC06F -:10175000AEE4B1E0E0E4F1E0CF01825F91919D93CE -:101760008E13FCCF82E599E0892BC1F00E945209CB -:1017700015C083E10E944F0A809300018111A0CF20 -:1017800081E40E94250A80930001811199CF0E9473 -:10179000600A982E909495CF80E096CF81E0DF91FB -:1017A000CF911F910F91FF90EF90DF90CF90BF905E -:1017B000AF909F900895E82FF0E0E25BFE4F8081AC -:1017C0000895CF92DF92EF92FF920F931F93CF93E2 -:1017D000DF9389E794E00E941C088EE4E82E81E004 -:1017E000F82EC0E0D0E094E7C92E94E0D92E0BE6A5 -:1017F00014E0DF93CF93DF92CF920E94B50881E788 -:1018000094E00E941C08F70181917F0190E00E9402 -:1018100093229F938F931F930F930E94B50889E69D -:1018200094E00E941C0821968DB79EB708960FB6CB -:10183000F8949EBF0FBE8DBFCE30D105D1F6DF919B -:10184000CF911F910F91FF90EF90DF90CF9008956F -:101850008B3B910578F4883A910540F5853A9105DE -:10186000D0F48430910508F0B1C08130910509F4BD -:10187000ADC06BC0803E910508F467C0883E9105FD -:1018800008F4A4C09C01205F31092031310508F023 -:101890005CC090650895853A910509F459C0863A6F -:1018A000910509F058C082E890E40895883A9105BE -:1018B00009F454C0893A910509F453C08A3A910554 -:1018C00009F452C08B3A910509F451C08C3A910544 -:1018D00009F450C08D3A910509F44FC0803B910541 -:1018E00009F44EC08E3A910509F44DC08F3A910526 -:1018F00009F44CC0813B910509F44BC0823B910532 -:1019000009F44AC0833B910509F449C0843B910521 -:1019100009F448C0853B910509F447C0863B910511 -:1019200009F446C0873B910509F445C0883B910501 -:1019300009F444C0893B910509F443C08A3B9105F1 -:1019400009F442C080E094E4089580E090E00895B6 -:1019500081E890E4089583E890E4089582EE94E4A9 -:10196000089589EE94E408958AEE94E4089585EB51 -:1019700094E4089586EB94E4089587EB94E4089545 -:101980008CEC94E408958DEC94E4089583E895E458 -:1019900008958AE895E4089582E995E4089584E934 -:1019A00095E4089581E296E4089583E296E408952B -:1019B00084E296E4089585E296E4089586E296E44A -:1019C000089587E296E408958AE296E408950895DA -:1019D00096E0799FF001112494E5899FE00DF11DB7 -:1019E0001124E60FF11DEE0FFF1FEF5DFE4F8591F5 -:1019F00094910895880F991FFC01E556F040859158 -:101A000094910895880F991FFC01E55EFE4F859122 -:101A10009491089526E0729FF001112444E5849F7B -:101A2000E00DF11D1124E60FF11DEE0FFF1FEF5D1C -:101A3000FE4F859194919C013A9521154FE1340711 -:101A400008F41EC13F512115304120F49F700E94BF -:101A5000020D08959C0130532115304118F4992747 -:101A6000906C0895811520E5920769F40E94ED1BA2 -:101A70004FEF84E39CE0415080409040E1F700C08C -:101A800000000C944F23813020E5920751F489EE39 -:101A900094E00E941C088091D90181608093D90153 -:101AA00008959C0130552115304108F051C0292F6F -:101AB00033272F70332721303105D9F4AC0143701F -:101AC000552702C0220F331F4A95E2F73C68AC014C -:101AD00064E0440F551F6A95E1F744275370242BA7 -:101AE000352B73E0880F991F7A95E1F78076992757 -:101AF0001DC02230310529F4982F8827816F906A04 -:101B0000089523303105A9F4AC014370552721E035 -:101B100030E002C0220F331F4A95E2F73C6843E0F1 -:101B2000880F991F4A95E1F7807E9770822B932B3F -:101B3000089524303105E1F4AC014370552721E0CC -:101B400030E002C0220F331F4A95E2F73A68E7CF30 -:101B50009C0130572115304118F49F709062089510 -:101B60009C0130582115304118F49F70906A0895F7 -:101B7000803E9105E0F4803C910558F58133910554 -:101B800009F46FC048F48932910509F463C08A32C0 -:101B9000910509F46DC072C089339105E9F082386E -:101BA0009105D1F08533910509F44DC067C0833E9E -:101BB000910581F138F4803E9105B9F0823E91059E -:101BC000D9F05CC0863E910561F1873E9105A1F197 -:101BD00055C00E94FA0C08952091EC0120FD02C02E -:101BE00021FF4CC080EE90E049C08091EC0180FF65 -:101BF000F9CF89E390E042C08091EC0182FF0EC0F2 -:101C00008091EC0184FF03C080E090E037C083EE58 -:101C100090E034C08091EC0182FFF2CF82EE90E040 -:101C20002DC08091EC0183FF0BC08091EC0184FDFD -:101C3000EBCF87EE90E022C08091EC0183FFF5CFDF -:101C400086EE90E01BC08091EC0185FF07C089E221 -:101C500090E014C08091EC0185FFF9CF85E390E01E -:101C60000DC08091EC0186FF07C08AE290E006C0BB -:101C70008091EC0186FFF9CF81E390E00E94280C6F -:101C80000895089580916F0108959FB7F894109278 -:101C90005E019FBF9091F201943009F057C090917E -:101CA000E9009F703091EC00232F217030FD20E877 -:101CB000922B24E02093E9002091EB0020FF43C009 -:101CC0002091EE0027FF3FC020915C01222321F0EC -:101CD0002091E80025FF37C010925C0126E030918A -:101CE000E80035FD15C03091F201343061F53091D6 -:101CF000EB0035FD28C0215021F481E080935C0188 -:101D000022C0EFE9FFE03197F1F700C00000E7CF14 -:101D10008093F1008091E80085FD0AC08091E80081 -:101D200080FFFCCF8091E8008E778093E80006C0AA -:101D30008FB7F89421E020935E018FBF9F7090933E -:101D4000E90080E008959F709093E9008FEF089577 -:101D5000CF93DF9300D01F92CDB7DEB79C01809167 -:101D6000F201843019F593E099833B832A839093A1 -:101D7000E9008FEF9091E800815095FD06C095ED48 -:101D80009A95F1F700008111F5CF8091E80085FF69 -:101D90000DC040E050E063E070E0CE0101960E948B -:101DA00078118091E8008E778093E8000F900F9073 -:101DB0000F90DF91CF910895CF93DF9300D01F92C2 -:101DC000CDB7DEB72091F201243021F522E029833E -:101DD0009B838A8383E08093E9008FEF9091E800F2 -:101DE000815095FD06C095ED9A95F1F7000081119F -:101DF000F5CF8091E80085FF0DC040E050E063E042 -:101E000070E0CE0101960E9478118091E8008E77F3 -:101E10008093E8000F900F900F90DF91CF9108957D -:101E20002091F2012430F1F422E02093E9002FEF19 -:101E30003091E800215035FD06C035ED3A95F1F7B7 -:101E400000002111F5CF2091E80025FF0BC040E0F4 -:101E500050E065E070E00E9478118091E8008E7794 -:101E60008093E8000895CF93DF932091F20124300E -:101E700009F048C0EC0180910C018823E1F08091C9 -:101E80000D018823C1F085E08093E9008FEF9091E8 -:101E9000E800815095FD06C095E19A95F1F70000A4 -:101EA0008111F5CF8091E80085FF2CC040E050E023 -:101EB00060E170E017C081E08093E9008FEF9091BE -:101EC000E800815095FD06C095ED9A95F1F7000068 -:101ED0008111F5CF8091E80085FF14C040E050E00B -:101EE00068E070E0CE010E9478118091E8008E7762 -:101EF0008093E80080E1FE01AFE5B1E001900D9232 -:101F00008A95E1F7DF91CF91089580E295E00E94F4 -:101F10001C088091F101811109C00E940D130E94DB -:101F20006A138091E20084608093E20008958CE15E -:101F300095E00E941C081092F101089588E195E057 -:101F40000C941C0884E195E00E941C080C941F2D41 -:101F500080E195E00E941C080E94E9220E94252D44 -:101F60000E940F160C94410E20915D012F5F822F6D -:101F700062E30E94932E992319F020935D01089546 -:101F800010925D0180915E01882371F18091F201D0 -:101F9000843041F58091E9008F702091EC00922F00 -:101FA000917020FD90E8892B94E09093E900909146 -:101FB000EB0090FF14C09091EE0097FF10C090913D -:101FC000E80095FF03C01092F100F9CF9091E8006E -:101FD00090FF05C09091E8009E779093E8008F7085 -:101FE0008093E90010925E01089542E061EC81E087 -:101FF0000E94871242E061EC82E00E94871242E078 -:1020000061EC83E00E94871242E261EC84E00E946E -:10201000871242E161EC85E00C9487128091F40113 -:10202000833009F455C030F4813071F0823009F406 -:102030008EC008958A3009F47AC08B3009F460C0EC -:10204000893009F09CC020C08091F301813A09F0E9 -:1020500096C08091E800877F8093E8008091F70127 -:102060009091F801892B21F460E18FE591E003C0A4 -:1020700060E080E090E070E00E94C3118091E80091 -:102080008B778093E80008958091F301813209F005 -:1020900076C08091F7019091F801009719F00497AC -:1020A00009F06DC08091E800877F8093E8008091FF -:1020B000E80082FD05C08091F2018111F8CF5FC078 -:1020C0008091F10080936F018091E8008B7753C07D -:1020D0008091F301813A09F052C08091F70190910B -:1020E000F801892B09F04BC08091E800877F80932D -:1020F000E8008091E80080FFFCCF80910C0136C0A1 -:102100008091F3018132D9F58091F7019091F80126 -:10211000892BA9F58091E800877F8093E8000E94D1 -:10212000BC128091F50180930C010C94ED1B809101 -:10213000F301813221F58091E800877F8093E800E8 -:102140000E94BC128091F6018093700108958091E5 -:10215000F301813AA1F48091E800877F8093E80041 -:102160008091E80080FFFCCF809170018093F100A6 -:102170008091E8008E778093E8000C94BC1208955B -:1021800084B7877F84BF88E10FB6F894809360009E -:10219000109260000FBE90E080E80FB6F894809334 -:1021A0006100909361000FBE0E949C160E940D1367 -:1021B0000E946A138091E20084608093E20085E4CB -:1021C0009EE00E94282278940E94EF150E949E169D -:1021D00082E091E00E940A160E940D2D8FEF94E09C -:1021E0000E941C088091F201853089F48BEF94E005 -:1021F0000E941C080E94AD228091F001882391F377 -:102200000E94D522882371F30E946211EBCF0E94B5 -:10221000CC16E8CF292F332723303105C9F064F4D9 -:102220002130310581F02230310509F043C08DE8BD -:1022300090E028E535E042C021323105F1F022324C -:10224000310541F137C082E190E025EE35E036C03E -:1022500099278130910541F08230910541F0892B19 -:1022600049F5E4E5F5E005C0ECE3F5E002C0E4E2A1 -:10227000F5E0849190E09F0121C06530D8F4E62F0D -:10228000F0E0EE0FFF1FEB5DFE4F2081318189E012 -:1022900090E014C0653070F470E0FB01EE0FFF1F9A -:1022A000E55EFE4F20813181FB01EA5EFE4F8081B9 -:1022B00090E004C080E090E020E030E0FA0131835B -:1022C0002083089580E189BD82E189BD09B400FEC3 -:1022D000FDCF8091D8008F7D8093D8008091E00061 -:1022E00082608093E0008091E00081FDFCCF089542 -:1022F000CF92DF92EF92FF920F931F93CF93DF93D2 -:10230000EC018B016A010E94DB12811133C0C11400 -:10231000D10439F0F60180819181081B190BC80F97 -:10232000D91FE12CF12C0115110519F18091E8005C -:1023300085FD16C08091E8008E778093E800C11477 -:10234000D10449F0F60180819181E80EF91EF182F5 -:10235000E08285E00FC00E94DB12882321F30AC0CF -:1023600089918093F10001501109FFEFEF1AFF0AE4 -:10237000DACF80E0DF91CF911F910F91FF90EF9026 -:10238000DF90CF9008952091F9013091FA0126173E -:10239000370748F06115710539F42091E8002E7770 -:1023A0002093E80001C0B90140E061157105A9F171 -:1023B0002091F201222309F443C0253009F442C0E0 -:1023C0002091E80023FD40C02091E80022FD32C0AA -:1023D0002091E80020FFE9CF4091F3002091F20026 -:1023E00030E0342BFC01CF016115710559F0283024 -:1023F000310540F481918093F100615071092F5FA4 -:102400003F4FF1CF41E02830310509F040E0209105 -:10241000E8002E772093E800C8CF4111C9CF0AC049 -:102420008091F201882361F0853061F08091E800AD -:1024300083FD0AC08091E80082FFF2CF80E008951A -:1024400082E0089583E0089581E008952091F901E4 -:102450003091FA012617370748F06115710539F4F4 -:102460002091E8002E772093E80001C0B901FC011B -:1024700020E06115710591F18091F201882309F442 -:1024800040C0853009F43FC08091E80083FD3DC025 -:102490008091E80082FD2FC08091E80080FFE9CFA5 -:1024A0002091F3008091F20090E0922B611571056C -:1024B00059F08830910540F424912093F100319631 -:1024C000615071090196F2CF21E0089709F020E0F0 -:1024D0008091E8008E778093E800CBCF2111CCCF9C -:1024E0000AC08091F201882361F0853061F080910B -:1024F000E80083FD0AC08091E80082FFF2CF80E00F -:10250000089582E0089583E0089581E00895982F6A -:10251000973058F59093E900981739F07091EC00D6 -:102520002091ED005091F00003C0242F762F50E051 -:1025300021FF19C03091EB003E7F3093EB003091CA -:10254000ED003D7F3093ED003091EB003160309332 -:10255000EB007093EC002093ED005093F00020917D -:10256000EE0027FF07C09F5FD3CF8F708093E900F5 -:1025700081E0089580E008958091F30187FF11C004 -:102580008091E80082FD05C08091F2018111F8CFB1 -:1025900011C08091E8008B770BC08091F2018823F5 -:1025A00049F08091E80080FFF8CF8091E8008E77B5 -:1025B0008093E80008952091E4003091E50095E6CD -:1025C0004091EC00842F817040FF22C08091E80090 -:1025D00080FD1CC08091F201882391F0853091F03C -:1025E0008091EB0085FD10C04091E4005091E50022 -:1025F0004217530729F39A01915011F784E0089587 -:1026000082E0089583E0089581E0089580E00895D0 -:102610004091E80042FFDECF08950E947B130E94A4 -:102620008313E0EEF0E0808181608083E8EDF0E0EC -:1026300080818F77808319BCA7EDB0E08C918E7F6D -:102640008C9380818F7E80831092F10108950F9387 -:102650001F93CF93DF930E947B130E948313C8EDD7 -:10266000D0E088818F77888388818068888388819B -:102670008F7D888319BC1092F2011092EE011092A6 -:10268000F0011092EF0100EE10E0F80180818B7FE5 -:10269000808388818160888342E060E080E00E94DE -:1026A0008712E1EEF0E080818E7F8083E2EEF0E041 -:1026B000808181608083808188608083F80180814F -:1026C0008E7F8083888180618883DF91CF911F9185 -:1026D0000F910895E8EDF0E080818F7E8083E7ED33 -:1026E000F0E080818160808384E082BF81E080931C -:1026F000F1010C942713E8EDF0E080818E7F808358 -:102700001092E20008951092DA001092E10008950C -:102710001F920F920FB60F9211242F933F934F9356 -:102720005F936F937F938F939F93AF93BF93EF9339 -:10273000FF938091E10082FF0BC08091E20082FF55 -:1027400007C08091E1008B7F8093E1000E94B40F6D -:102750008091DA0080FF1FC08091D80080FF1BC0ED -:102760008091DA008E7F8093DA008091D90080FF1B -:102770000DC080E189BD82E189BD09B400FEFDCFB5 -:1027800081E08093F2010E94850F05C019BC109270 -:10279000F2010E94970F8091E10080FF19C08091A3 -:1027A000E20080FF15C08091E2008E7F8093E200FE -:1027B0008091E20080618093E2008091D800806285 -:1027C0008093D80019BC85E08093F2010E94A20F8B -:1027D0008091E10084FF30C08091E20084FF2CC032 -:1027E00080E189BD82E189BD09B400FEFDCF809101 -:1027F000D8008F7D8093D8008091E1008F7E8093F8 -:10280000E1008091E2008F7E8093E2008091E200FF -:1028100081608093E2008091EE01882311F084E0D2 -:1028200007C08091E30087FD02C081E001C083E022 -:102830008093F2010E94A80F8091E10083FF29C0DC -:102840008091E20083FF25C08091E100877F809323 -:10285000E10082E08093F2011092EE018091E100AC -:102860008E7F8093E1008091E2008E7F8093E20072 -:102870008091E20080618093E20042E060E080E0CD -:102880000E9487128091F00088608093F0000E947F -:102890009E0FFF91EF91BF91AF919F918F917F918B -:1028A0006F915F914F913F912F910F900FBE0F90BD -:1028B0001F9018951F920F920FB60F9211242F930D -:1028C0003F934F935F936F937F938F939F93AF93B8 -:1028D000BF93CF93DF93EF93FF93C091E900CF7045 -:1028E0008091EC00D82FD17080FDD0E81092E900E3 -:1028F0008091F000877F8093F00078940E949E146E -:102900001092E9008091F00088608093F000CD2B58 -:10291000CF70C093E900FF91EF91DF91CF91BF910C -:10292000AF919F918F917F916F915F914F913F9167 -:102930002F910F900FBE0F901F9018951F93CF935C -:10294000DF93CDB7DEB7AA970FB6F894DEBF0FBE00 -:10295000CDBFE3EFF1E088E08E0F9091F10091930D -:102960008E13FBCF0E940E108091E80083FF1FC1E1 -:102970008091F3019091F401492F50E04A305105C4 -:1029800008F015C1FA01EA5AFF4F0C94B32E8038B3 -:1029900081F0823809F00BC18091F7018F7080932C -:1029A000E9008091EB0085FB882780F91092E9000F -:1029B00006C08091EF019091F00191118260909199 -:1029C000E800977F9093E8008093F1001092F10067 -:1029D000C8C0282F2D7F09F0EAC0882319F0823063 -:1029E00061F0E5C08091F501813009F0E0C09330DD -:1029F00009F080E08093F0012BC08091F5018111F6 -:102A000027C08091F7018F7009F4D1C08093E9004D -:102A10002091EB0020FF1CC0933021F48091EB004B -:102A2000806214C09091EB0090619093EB0021E0E4 -:102A300030E0A90102C0440F551F8A95E2F7409388 -:102A4000EA001092EA008091EB0088608093EB002E -:102A50001092E9008091E800877F86C08111A7C0AD -:102A60001091F5011F778091E3008078812B80938E -:102A7000E3008091E800877F8093E8000E94BC1209 -:102A80008091E80080FFFCCF8091E3008068809314 -:102A9000E300111102C082E001C083E08093F201E3 -:102AA00086C08058823008F082C08091F5019091F4 -:102AB000F6018C3D53E0950779F583E08A838AE23D -:102AC00089834FB7F894DE01139620E03EE051E28F -:102AD000E32FF0E050935700E49120FF03C0E2950C -:102AE000EF703F5FEF708E2F90E0EA3010F0C796E6 -:102AF00001C0C0968D939D932F5F243149F74FBF3E -:102B00008091E800877F8093E8006AE270E0CE0160 -:102B100001960E94C31114C0AE014F5F5F4F6091D8 -:102B2000F7010E940A11BC01892B09F440C0909161 -:102B3000E800977F9093E80089819A810E9426128D -:102B40008091E8008B778093E80031C0803879F578 -:102B50008091E800877F8093E8008091EE01809368 -:102B6000F1008091E8008E778093E8000E94BC120B -:102B70001EC081111CC09091F5019230C0F480916B -:102B8000E800877F8093E8009093EE010E94BC12DA -:102B90008091EE01811106C08091E30087FD02C0A3 -:102BA00081E001C084E08093F2010E94F50F8091E2 -:102BB000E80083FF0AC08091E800877F8093E800E7 -:102BC0008091EB0080628093EB00AA960FB6F89498 -:102BD000DEBF0FBECDBFDF91CF911F910895CF9380 -:102BE0008091F2018823A1F0C091E900CF7090910B -:102BF000EC00892F817090FD80E8C82B1092E900CD -:102C00008091E80083FD0E949E14CF70C093E9007C -:102C1000CF91089590937601809375010895E09186 -:102C20007501F0917601309721F00190F081E02D4F -:102C3000099480E00895EF92FF920F931F93CF9332 -:102C4000DF93E0917501F09176013097B1F18C013D -:102C50000280F381E02D09958091D90182FF2DC07A -:102C600080FF04C08AE197E00E941C08E80110E19F -:102C700084E1E82E87E0F82E8091D90180FF0BC017 -:102C800088811F928F93FF92EF920E94B5080F9058 -:102C90000F900F900F90115021961111EDCF809150 -:102CA000D90180FF0AC082E197E0DF91CF911F91A7 -:102CB0000F91FF90EF900C941C08DF91CF911F9122 -:102CC0000F91FF90EF900895E0917501F0917601DA -:102CD000309721F00480F581E02D0994089520912A -:102CE0007301309174018217930771F0909374010E -:102CF00080937301E0917501F0917601309721F096 -:102D00000680F781E02D099408952091710130919A -:102D100072018217930771F0909372018093710191 -:102D2000E0917501F0917601309721F00084F185F2 -:102D3000E02D0994089508950C949B160E94EB22AF -:102D40000E94920A0C94B123CF93C82F8091D9018D -:102D500082FF1EC080FF04C083E397E00E941C082E -:102D60008091D90180FF0CC01F92CF938EE297E033 -:102D70009F938F930E94B5080F900F900F900F9024 -:102D80008091D90180FF04C08CE297E00E941C086A -:102D90008C2FCF910C94410ECF92DF92EF92FF9245 -:102DA0000F931F93CF93DF93CDB7DEB72B970FB65B -:102DB000F894DEBF0FBECDBF0E94AF0A88E7C82ED1 -:102DC00081E0D82E00E010E0E02E802F0E94DB0B87 -:102DD000F60141916F01F42EF826B1F40F5F1F4FF9 -:102DE0000E30110589F78FEF89838A831B820E9439 -:102DF000F4228160782F9D838C8349815A816B8175 -:102E00008D810E946F1740C09091D90191FF04C03D -:102E10008B870E94E10B8B8520E030E04F2D50E046 -:102E2000922FBA01022E02C0759567950A94E2F7B7 -:102E300060FF24C02E83EF8221E030E0690102C0F0 -:102E4000CC0CDD1C9A95E2F790E08C219D21892B1A -:102E500009F420E028870E94F4228160782F9A8765 -:102E600089874E815F8168858A850E946F17F80186 -:102E7000E858FE4F8081C826C08206C02F5F3F4FB2 -:102E80002630310569F6AACF0E94222710917701DA -:102E90000E940F161817A1F00E940F168093770159 -:102EA0002B960FB6F894DEBF0FBECDBFDF91CF914A -:102EB0001F910F91FF90EF90DF90CF900C94A4168C -:102EC0002B960FB6F894DEBF0FBECDBFDF91CF912A -:102ED0001F910F91FF90EF90DF90CF900895CF93C7 -:102EE000DF93CDB7DEB72B970FB6F894DEBF0FBEDA -:102EF000CDBF4F83588769877A878B87DE0111960C -:102F000086E0FD0111928A95E9F785E0FE0137968A -:102F100001900D928A95E1F749815A816B817C81FC -:102F20008D819E810E94871E2B960FB6F894DEBF7E -:102F30000FBECDBFDF91CF910895CF93882309F4C1 -:102F4000C2C0C82F823859F40E940F1681FDBBC041 -:102F500089E30E9423210E94022289E30CC0833866 -:102F600079F40E940F1680FDAEC083E50E942321F4 -:102F70000E94022283E50E947621CF910C940222C6 -:102F8000843859F40E940F1682FD9DC087E40E9488 -:102F900023210E94022287E4EECF8CEF8C0F813A2E -:102FA00048F48C2F0E94B52B81118DC08C2F0E946C -:102FB0002321E3CF80E28C0F883048F4C77081E092 -:102FC00001C0880FCA95EAF70E94CB21D6CF8BE5C6 -:102FD0008C0F833078F4C53A29F0C63A31F083E893 -:102FE00090E005C081E890E002C082E890E0CF91D7 -:102FF0000C946F1688E58C0F833108F064C0C83AD2 -:1030000039F1C93A41F1CA3A49F1CB3A51F1CC3AD6 -:1030100059F1CD3A61F1C03B69F1CE3A71F1CF3A45 -:1030200079F1C13B81F1C23B89F1C33B91F1C43BD2 -:1030300099F1C53BA1F1C63BA9F1C73BB1F1C83B32 -:10304000B9F1C93BC1F1CA3BC9F180E090E038C099 -:1030500082EE90E035C089EE90E032C08AEE90E0DA -:103060002FC085EB90E02CC086EB90E029C087EB69 -:1030700090E026C08CEC90E023C08DEC90E020C066 -:1030800083E891E01DC08AE891E01AC082E991E0EE -:1030900017C084E991E014C081E292E011C083E29C -:1030A00092E00EC084E292E00BC085E292E008C09C -:1030B00086E292E005C087E292E002C08AE292E0F6 -:1030C000CF910C948516CF910895882309F44BC0B5 -:1030D000823859F40E940F1681FF45C089E30E948F -:1030E00023210E94022289E30CC0833871F40E94DC -:1030F0000F1680FF38C083E50E9423210E94022220 -:1031000083E50E9476210C940222843859F40E94AF -:103110000F1682FF28C087E40E9423210E9402220A -:1031200087E4EFCF9CEF980F913A58F390E2980F15 -:10313000983050F4877091E001C0990F8A95EAF7B2 -:10314000892F0E94D121DFCF9BE5980F933020F487 -:1031500080E090E00C946F16885A833120F480E070 -:1031600090E00C9485160895882321F00E94CB21CD -:103170000C9402220895882321F00E94D1210C94FE -:1031800002220895BF92CF92DF92EF92FF920F93A7 -:103190001F93CF93DF9300D000D000D0CDB7DEB720 -:1031A00025E0FC01DE01119601900D922A95E1F7D0 -:1031B000FC01408131810281258122952F7063813C -:1031C0007481672B09F4E7C23F3F19F44F3F09F4BC -:1031D000E2C27C0149833A8389819A812E830E94CD -:1031E000E220182FB92E0E94E1200E94A81FEB2D8B -:1031F000E295EF70F0E0E05AFF4F2E810C94B32E71 -:103200008B2D807F9B2D9F70F92E882319F0F294CF -:1032100080EFF822002349F0FF2009F469C28F2DC6 -:103220000E94DB210E94022263C2812F0E94651846 -:10323000FF2009F4B0C28F2D0E94E12126960FB61F -:10324000F894DEBF0FBECDBFDF91CF911F910F91DC -:10325000FF90EF90DF90CF90BF900C9402223B2D17 -:10326000307F8B2D8F70303211F08295807F11234B -:1032700019F0113021F12DC00023B9F0222309F4F7 -:10328000A1C1213009F09EC126960FB6F894DEBF89 -:103290000FBECDBFDF91CF911F910F91FF90EF90A7 -:1032A000DF90CF90BF900C94EB21222319F02130B6 -:1032B00009F471C28E830E94EE218E8197C1002392 -:1032C00021F0263008F067C27DC1253008F063C2C6 -:1032D0008DC1002321F0222309F474C109C22223E5 -:1032E00009F484C11AC22B2D26952695237030E04F -:1032F0002115310521F021303105D1F04CC20023D8 -:1033000021F0812F9B2D937002C080E090E02696E3 -:103310000FB6F894DEBF0FBECDBFDF91CF911F91E6 -:103320000F91FF90EF90DF90CF90BF900C946F16AD -:10333000002321F0812F9B2D937002C080E090E04C -:1033400026960FB6F894DEBF0FBECDBFDF91CF91AA -:103350001F910F91FF90EF90DF90CF90BF900C9452 -:103360008516812F002319F00E94A82502C00E9413 -:10337000102626960FB6F894DEBF0FBECDBFDF91A4 -:10338000CF911F910F91FF90EF90DF90CF90BF9062 -:103390000C9495268B2D837009F07BC00111FBC125 -:1033A000812F829586958770880F880F912F9F7047 -:1033B000C92ED12CE12CF12C082E04C0CC0CDD1C24 -:1033C000EE1CFF1C0A94D2F714FF12C04FE050E02D -:1033D00060E070E004C0440F551F661F771F8A9598 -:1033E000D2F7CB01BA01609570958095909503C096 -:1033F00060E070E0CB012B2D269526952370422F9F -:1034000050E042305105D9F04330510569F16C2943 -:103410007D298E299F294130510551F126960FB6FD -:10342000F894DEBF0FBECDBFDF91CF911F910F91FA -:10343000FF90EF90DF90CF90BF900C94CF1F6C293E -:103440007D298E299F2926960FB6F894DEBF0FBEE0 -:10345000CDBFDF91CF911F910F91FF90EF90DF9043 -:10346000CF90BF900C94EB1F0E94CF1FC701B601F5 -:1034700026960FB6F894DEBF0FBECDBFDF91CF9179 -:103480001F910F91FF90EF90DF90CF90BF900C9421 -:10349000B31F002319F08B2D817001C086958823FE -:1034A00009F479C1812F829586958770880F880FDE -:1034B000912F9F70C92ED12CE12CF12C082E04C025 -:1034C000CC0CDD1CEE1CFF1C0A94D2F714FF12C0BA -:1034D0004FE050E060E070E004C0440F551F661FED -:1034E000771F8A95D2F7CB01BA01609570958095C8 -:1034F000909503C060E070E0CB012B2D26952695BA -:103500002370422F50E042305105D9F0433051052D -:1035100069F16C297D298E299F294130510551F18E -:1035200026960FB6F894DEBF0FBECDBFDF91CF91C8 -:103530001F910F91FF90EF90DF90CF90BF900C9470 -:10354000A9206C297D298E299F2926960FB6F894EB -:10355000DEBF0FBECDBFDF91CF911F910F91FF90C6 -:10356000EF90DF90CF90BF900C94C5200E94A920CF -:10357000C701B60126960FB6F894DEBF0FBECDBFC9 -:10358000DF91CF911F910F91FF90EF90DF90CF903F -:10359000BF900C948D20103FD1F118F4103E50F4E0 -:1035A000A2C0123F09F464C008F44DC0133F09F4EF -:1035B00074C099C01F708B2D8F710023A1F00E94E1 -:1035C0002620812F26960FB6F894DEBF0FBECDBF02 -:1035D000DF91CF911F910F91FF90EF90DF90CF90EF -:1035E000BF900C94B4180E944720812F26960FB6E6 -:1035F000F894DEBF0FBECDBFDF91CF911F910F9129 -:10360000FF90EF90DF90CF90BF900C94BB180023F9 -:10361000B1F0253008F0BFC08B2D8F7126960FB604 -:10362000F894DEBF0FBECDBFDF91CF911F910F91F8 -:10363000FF90EF90DF90CF90BF900C946C202630DD -:1036400008F0A9C0E9CF0023A9F08B2D8F71269631 -:103650000FB6F894DEBF0FBECDBFDF91CF911F91A3 -:103660000F91FF90EF90DF90CF90BF900C942620A9 -:10367000002359F38B2D8F7126960FB6F894DEBF79 -:103680000FBECDBFDF91CF911F910F91FF90EF90B3 -:10369000DF90CF90BF900C944720002399F08B2DA2 -:1036A0008F7126960FB6F894DEBF0FBECDBFDF91A7 -:1036B000CF911F910F91FF90EF90DF90CF90BF902F -:1036C0000C94112026960FB6F894DEBF0FBECDBF26 -:1036D000DF91CF911F910F91FF90EF90DF90CF90EE -:1036E000BF900C9407200023A9F0222309F4ADCF4A -:1036F000812F26960FB6F894DEBF0FBECDBFDF91A7 -:10370000CF911F910F91FF90EF90DF90CF90BF90DE -:103710000C949D17222309F4ADCF812F26960FB666 -:10372000F894DEBF0FBECDBFDF91CF911F910F91F7 -:10373000FF90EF90DF90CF90BF900C9465184B2DC9 -:103740004F70612FC7010E94BE0826960FB6F894ED -:10375000DEBF0FBECDBFDF91CF911F910F91FF90C4 -:10376000EF90DF90CF90BF900C942B1F4B2D4F709C -:10377000612FC70126960FB6F894DEBF0FBECDBFEE -:10378000DF91CF911F910F91FF90EF90DF90CF903D -:10379000BF900C94E70C26960FB6F894DEBF0FBED0 -:1037A000CDBFDF91CF911F910F91FF90EF90DF90F0 -:1037B000CF90BF9008950E94E8210E94BD210E94F1 -:1037C00002220E94C8270E94952680E090E00E9475 -:1037D0006F1680E090E00C9485160E94D8210C941E -:1037E000DB1B0E94E220292F22952F7030E02C3025 -:1037F00031054CF42A3031056CF422503109223065 -:10380000310588F407C02C30310549F02F303105DF -:1038100031F009C0803E48F0803F29F406C093FB98 -:10382000882780F9089580E0089581E00895CF9376 -:10383000DF9300D000D01F92CDB7DEB70F900F906E -:103840000F900F900F90DF91CF910895CF93DF935A -:1038500000D000D000D0CDB7DEB726960FB6F894D2 -:10386000DEBF0FBECDBFDF91CF9108951F93CF93E1 -:10387000DF93C091860116E080918701C81799F007 -:10388000D0E01C9FF0011D9FF00D1124E857FE4F62 -:103890004081518162817381848195810E94261CBF -:1038A0002196C770E9CFDF91CF911F910895409184 -:1038B000B8015091B9016091BA017091BB0180913A -:1038C000BC019091BD010C94261C8091BD01829594 -:1038D0008F7009F054C08091BA01882309F44FC059 -:1038E00080918601A09187016091B8017091B90122 -:1038F0004091BB015091BC01B6E08A1709F43FC06A -:1039000090E041155105C1F17F3F11F46F3FA1F1E6 -:10391000B89FF001B99FF00D1124E857FE4F2181A7 -:1039200072132AC02081621327C02281211124C072 -:10393000238134812417350710F421503109241BC9 -:10394000350B283C3105C0F42091BD012F7020615A -:103950002093BD0126E0289FF001299FF00D11243E -:10396000E357FE4F80818F708061808388EB91E008 -:103970000E94C2180C94361C01968770BECF089521 -:10398000CF92DF92EF92FF920F931F93CF93DF932B -:10399000CDB7DEB762970FB6F894DEBF0FBECDBFCE -:1039A0008C0185E0F801DE011D9601900D928A954B -:1039B000E1F7D8014C9111965C91119712966C9198 -:1039C00012971396CD90DC9014973091B8017091B6 -:1039D000B9018091BB019091BC01009709F46BC1C2 -:1039E0007F3F19F43F3F09F466C1E090BA01EE2031 -:1039F00009F4C0C02091BD01C816D90628F0F6010F -:103A0000E81BF90BCF0104C0809590958C0D9D1D8E -:103A1000FF24F394883C910578F0F12C207F09F085 -:103A2000C6C07C2DD98AC88A89890E94171C88EB58 -:103A300091E00E94C218B1C0822F807F09F046C079 -:103A4000751314C0341312C0611110C02F7020619F -:103A50002093BD010E94571C88EB91E00E94C21880 -:103A60008091BD01D80115968C932EC0CD2819F1F7 -:103A70005F3F11F44F3FF9F0F62E61111CC08091A9 -:103A800086012091870136E0821709F45AC090E040 -:103A9000389FF001399FF00D1124E857FE4F7181D6 -:103AA000571306C07081471303C07281711103C0A0 -:103AB00001968770E9CFF62E662309F418C180912C -:103AC000BD0181608093BD01F12C11C1751308C047 -:103AD000341306C0611104C08091BD01D801C3C078 -:103AE0004D875E878D859E856A8B0E94F11B6A8952 -:103AF0008823E1F16623D1F12091BD01822F8295C7 -:103B00008F7090E0029774F08091B8019091B901A4 -:103B100098878F831986DB86CA862C87CE01079605 -:103B20000E94C21886E0F801A8EBB1E001900D9266 -:103B30008A95E1F70E94651C0E94571CFF24F394AC -:103B4000D6C04D875E878D859E850E94E220292FF5 -:103B500022952F7030E0223031050CF0BCC09F70F0 -:103B600009F0B6C0805E883008F4C1C0C8010E9468 -:103B7000C218E4CFC816D90608F453C0F601E81BF2 -:103B8000F90BCF01883C910508F450C0F12C7C2D35 -:103B9000D98AC88A89890E94171CE8EBF1E086E07F -:103BA000DF011D928A95E9F70E94571CA0C075138A -:103BB00014C0341312C0611110C08091BD01F8010E -:103BC0008583C8010E94C21886E0E8EBF1E0DF01BE -:103BD0001D928A95E9F7FE2C8AC04D875E878D85F8 -:103BE0009E856A8B0E94F11B6A89882309F4BECFE7 -:103BF000662309F4BBCF2091BD01822F82958F707F -:103C000090E002970CF48ECF8091B8019091B901A9 -:103C10009A8389831B82DD82CC822E83CE0101961A -:103C20007FCF809590958C0D9D1DACCFF62E662391 -:103C300009F49CCF75132EC034132CC02091BD0104 -:103C400020FD1FC0822F82958F70D9F0D801159664 -:103C50002C9315978F3049F08F5F982F9295907F16 -:103C6000822F8F70892B15968C93C8010E94C218E1 -:103C700086E0F801A8EBB1E001900D928A95E1F79A -:103C800093CF86E0F801A8EBB1E001900D928A9500 -:103C9000E1F72DC04D875E878D859E850E94F11BC3 -:103CA000811140CF8091BD0181608093BD01C80129 -:103CB0000E94C2181CC0662309F458CF4D875E8746 -:103CC0008D859E850E94F11B882309F44FCF2ACF52 -:103CD000811148CF0CC0243031050CF047CF9F70C4 -:103CE00009F440CFF8019581907F09F03BCF8F2DEB -:103CF00062960FB6F894DEBF0FBECDBFDF91CF91B5 -:103D00001F910F91FF90EF90DF90CF9008951F9338 -:103D1000CF93DF93CDB7DEB72C970FB6F894DEBF05 -:103D20000FBECDBF4F83588769877A878B879C8763 -:103D3000CE0107960E94C01C882369F08F81988568 -:103D40002A853B85232BF1F19F3F09F063C08F3F0C -:103D500009F060C037C086E0FE013796DE0111969B -:103D600001900D928A95E1F76F817885EA85FB8550 -:103D7000309741F17F3F11F46F3F21F1209187018E -:103D800030E0C9010196877099274091860150E083 -:103D90008417950709F447C069837A83FD83EC8310 -:103DA00096E0929FD001939FB00D1124A857BE4F6B -:103DB000FE01319601900D929A95E1F7809387016B -:103DC0000E94361C16E08091860190918701891728 -:103DD000C1F1189FC001112488579E4F0E94C01C3A -:103DE000882379F1E09186011E9FF0011124E857A4 -:103DF000FE4F4081518162817381848195810E944F -:103E0000261C8091860190E0019687709927809307 -:103E10008601D9CF4F81588569857A858B859C85A8 -:103E20000E94261CCFCF0E94ED1B1092870110929A -:103E30008601E8EBF1E086E0DF011D928A95E9F763 -:103E4000C1CF2C960FB6F894DEBF0FBECDBFDF9169 -:103E5000CF911F910895EF92FF920F931F93CF93ED -:103E6000DF938C01892B09F46CC0F12CEE24E394D0 -:103E7000E8012196F8018491843740F4843008F0F9 -:103E800051C0813081F0823019F15BC0853709F46F -:103E900044C0A8F19CE7980F903708F052C08F7784 -:103EA0000E94651841C00E5F1F4FFE01C49180E261 -:103EB0008C0F883048F4C7708E2D01C0880FCA95CA -:103EC000EAF70E94DB2114C08C2F0E949D172DC0A1 -:103ED0000E5F1F4FFE01C49180E28C0F883058F4B2 -:103EE000C7708E2D01C0880FCA95EAF70E94E121A4 -:103EF0000E9402221AC08C2F0E94651816C00E5F05 -:103F00001F4FFE01C491CC2381F08FE99FE0019700 -:103F1000F1F700C00000C150F6CF0E5F1F4FFE0149 -:103F2000F49003C00E949D178E018F2D882309F401 -:103F30009FCFEFE9FFE03197F1F700C0000081501B -:103F4000F5CFDF91CF911F910F91FF90EF900895E2 -:103F500008956093C2017093C3018093C40190934C -:103F6000C5010C94DB1B0F931F930091C2011091AC -:103F7000C3012091C4013091C501DC01CB01802B2C -:103F8000912BA22BB32B8093C2019093C301A093DA -:103F9000C401B093C5011F910F910C94DB1B0F93CB -:103FA0001F930091C2011091C3012091C40130916F -:103FB000C501DC01CB0180239123A223B32380938D -:103FC000C2019093C301A093C401B093C5011F9196 -:103FD0000F910C94DB1B0F931F930091C201109162 -:103FE000C3012091C4013091C501DC01CB018027C0 -:103FF0009127A227B3278093C2019093C301A09376 -:10400000C401B093C5011F910F910C94DB1B10925A -:10401000BE011092BF011092C0011092C1010C9418 -:10402000DB1B41E050E060E070E004C0440F551F2E -:10403000661F771F8A95D2F74093BE015093BF0148 -:104040006093C0017093C1010C94DB1B41E050E010 -:1040500060E070E004C0440F551F661F771F8A950B -:10406000D2F78091BE019091BF01A091C001B091A3 -:10407000C101482B592B6A2B7B2B4093BE015093D7 -:10408000BF016093C0017093C1010C94DB1B41E040 -:1040900050E060E070E004C0440F551F661F771FBA -:1040A0008A95D2F740955095609570958091BE01A4 -:1040B0009091BF01A091C001B091C1014823592343 -:1040C0006A237B234093BE015093BF016093C001DC -:1040D0007093C1010C94DB1B41E050E060E070E0A4 -:1040E00004C0440F551F661F771F8A95D2F7809131 -:1040F000BE019091BF01A091C001B091C1014827BC -:1041000059276A277B274093BE015093BF016093D4 -:10411000C0017093C1010C94DB1B0F931F9300919E -:10412000BE011091BF012091C0013091C101DC019D -:10413000CB01802B912BA22BB32B8093BE019093AC -:10414000BF01A093C001B093C1011F910F910C94C6 -:10415000DB1B0F931F930091BE011091BF012091B3 -:10416000C0013091C101DC01CB0180239123A22346 -:10417000B3238093BE019093BF01A093C001B0937D -:10418000C1011F910F910C94DB1B0F931F930091A2 -:10419000BE011091BF012091C0013091C101DC012D -:1041A000CB0180279127A227B3278093BE0190934C -:1041B000BF01A093C001B093C1011F910F910C9456 -:1041C000DB1B0895CF92DF92EF92FF920F931F9324 -:1041D000CF93DF938C01C090C201D090C301E090D7 -:1041E000C401F090C5014091BE015091BF016091A2 -:1041F000C0017091C101C42AD52AE62AF72ACFE16D -:10420000D0E0D701C6010C2E04C0B695A7959795AE -:1042100087950A94D2F780FF07C0B8018C2F0E94BF -:104220000A0D8130910531F4219758F7B80180E0EB -:104230000E940A0DDF91CF911F910F91FF90EF9097 -:10424000DF90CF90089590910C01992321F09091E7 -:104250000D01911109C020910E0130910F01F9015A -:1042600032969FEF40E030C0982F969596959695A0 -:104270009F30A0F4E0910E01F0910F01E90FF11DC4 -:10428000877021E030E0A90102C0440F551F8A95D4 -:10429000E2F7CA019181892B818308959091D90118 -:1042A00090FF23C01F928F9384E697E09F938F9394 -:1042B0000E94B5080F900F900F900F9008959F3FA8 -:1042C00039F04F5F4E3041F051915813F8CF0DC087 -:1042D0005111F7CF942FF5CF9F3F39F0F901E90F36 -:1042E000F11D97FDFA9582830895089590910C0130 -:1042F000992321F090910D01911109C020910E0197 -:1043000030910F01F9013296205F3F4F30C0982F56 -:104310009695969596959F30A8F4E0910E01F091B0 -:104320000F01E90FF11D877021E030E0A90102C003 -:10433000440F551F8A95E2F7CA0180959181892320 -:10434000818308959091D90190FF16C01F928F9399 -:1043500086E497E09F938F930E94B5080F900F908B -:104360000F900F9008953196E217F30729F090818E -:104370009813F9CF1082F7CF089581E090E0E09193 -:104380000E01F0910F01E80FF91F108201968031A4 -:104390009105A9F708959091D801892B8093D801B0 -:1043A000089580959091D80189238093D80108952C -:1043B0001092D80108959091D701892B8093D7014D -:1043C000089580959091D70189238093D70108950E -:1043D0001092D70108958093C60108951092C601E6 -:1043E000089580910E0190910F01FC0131969C017E -:1043F000205F3F4F80E0919191118F5FE217F307AB -:10440000D1F70895E0910E01F0910F018091D8014C -:104410008083E0910E01F0910F0190818091D7018E -:10442000892B80838091C601882361F0E0910E0181 -:10443000F0910F019081892B80830E94F1218111DD -:104440001092C60180910E0190910F010C941B16E1 -:1044500090933B0180933A010895CF92DF92EF92BF -:10446000FF926C01EE24FF24C114D104E104F10495 -:1044700021F0C701B60120E101C020E0C72ED82EEF -:10448000E92EFF24C114D104E104F10419F0285FDE -:10449000C701B6016B017C0154E0F694E794D79410 -:1044A000C7945A95D1F7C114D104E104F10419F06D -:1044B0002C5FC701B6016B017C0142E0F694E794E2 -:1044C000D794C7944A95D1F7C114D104E104F104FB -:1044D00019F02E5FC701B601DC01CB01B695A79597 -:1044E00097958795892B8A2B8B2B09F02F5F822F2D -:1044F000FF90EF90DF90CF9008958295982F9C7C4D -:10450000392F36953695282F237344E0249FC00118 -:104510001124932F982B292F2A7A2695892F857578 -:10452000880F822B08951F93CF93DF931F92CDB7EF -:10453000DEB799830E947D22182F9981892F0E94CE -:104540007D22212F30E0322F2227A901482BCA01DA -:104550000F90DF91CF911F9108958091F2018430E7 -:1045600009F11092DA0120E488E190E00FB6F894A6 -:10457000A895809360000FBE2093600083B7817F71 -:10458000846083BF83B7816083BF7894889583B745 -:104590008E7F83BF88E10FB6F894809360001092FD -:1045A00060000FBE089508950895CF930E94D3220E -:1045B0000E94AF0A0E94D422C0E08C2F0E94DB0B25 -:1045C000811104C0CF5FCE30C1F701C081E0CF912F -:1045D00008950C94ED1B82E084BD93E095BD9AEFA5 -:1045E00097BD80936E0008952FB7F8948091DB01FA -:1045F0009091DC01A091DD01B091DE012FBF089503 -:10460000CF92DF92EF92FF920F931F932FB7F89400 -:104610004091DB015091DC016091DD017091DE0180 -:104620002FBF6A017B01EE24FF248C0120E030E0E3 -:10463000C016D106E206F30610F4415051099A0162 -:10464000281B390BC9011F910F91FF90EF90DF904C -:10465000CF9008951F920F920FB60F9211248F934F -:104660009F93AF93BF938091DB019091DC01A09168 -:10467000DD01B091DE010196A11DB11D8093DB012A -:104680009093DC01A093DD01B093DE01BF91AF9167 -:104690009F918F910F900FBE0F901F9018950E94C1 -:1046A0000D13F8942FEF87EA91E621508040904057 -:1046B000E1F700C0000087E090EBDC018093FB0194 -:1046C0009093FC01A093FD01B093FE019CE088E172 -:1046D0000FB6F894A895809360000FBE9093600089 -:1046E000FFCFEF92FF920F931F93CF93DF93D82FBB -:1046F000C0E08C2F0E94DB0B00E010E0E82EF12CD4 -:10470000C701002E02C0959587950A94E2F780FDB7 -:1047100006C00F5F1F4F0630110591F709C0602FCB -:104720007C2F80E00E94E80CD813F3CF81E004C016 -:10473000CF5FCE30F1F680E0DF91CF911F910F91E6 -:10474000FF90EF900895CF93C82F8CE20E947123C1 -:10475000882321F08C2FCF910C94712380E0CF918E -:104760000895CF930E940025811102C00E94E62483 -:1047700089E897E00E941C08C5E6C15049F00E94F4 -:10478000AF0A8FE39CE90197F1F700C00000F5CF75 -:1047900082E897E00E941C0889E20E94A32381110D -:1047A00013C18AE20E94A32381110E94E62485E0BE -:1047B0000E94A32381110E944F230E940B25809306 -:1047C000D90187E00E94A3238823A9F18BE10E94ED -:1047D000A323882351F08091D90181FB222720F95E -:1047E00091E0922790FB81F90EC08EE00E94A323F6 -:1047F000882361F08091D90182FB222720F991E082 -:10480000922790FB82F98093D90115C080E10E9424 -:10481000A3239091D901882341F093FB222720F90B -:1048200081E0822780FB93F904C0892F809580FB6B -:1048300090F99093D9018091D9010E940F250E948F -:104840001D258093EC0180EE0E94A323882341F074 -:104850008091EC01982F909590FB80F98093EC016A -:1048600089E30E94A323882359F08091EC0181FB06 -:10487000222720F991E0922790FB81F98093EC01A7 -:1048800082EE0E94A323882359F08091EC0182FBE1 -:10489000222720F991E0922790FB82F98093EC0186 -:1048A00086EE0E94A323882359F08091EC0183FBBC -:1048B000222720F991E0922790FB83F98093EC0165 -:1048C00083EE0E94A323882359F08091EC0184FB9E -:1048D000222720F991E0922790FB84F98093EC0144 -:1048E00085E30E94A323882359F08091EC0185FB86 -:1048F000222720F991E0922790FB85F98093EC0123 -:1049000081E30E94A323882359F08091EC0186FB68 -:10491000222720F991E0922790FB86F98093EC0101 -:1049200081E10E94A323882359F08091EC0187FB49 -:10493000222720F991E0922790FB87F98093EC01E0 -:104940008091EC010E9421258091EC0187FB882752 -:1049500080F980930D0187E20E94A323C82F8EE186 -:104960000E94A3238111C2608FE10E94A3238111C1 -:10497000C46080E20E94A3238111C86081E20E948A -:10498000A3238111C06182E20E94A3238111C0622E -:1049900083E20E94A3238111C06484E20E94A323C6 -:1049A000882311F0C06802C0CC2329F08C2F0E940C -:1049B00018256C2F03C00E941425682F70E080E03A -:1049C00090E0CF910C94A91FCF9108956DEE7EEFEA -:1049D00080E090E00E94E92E60E082E090E00E949A -:1049E000DB2E60E083E090E00E94DB2E60E084E05C -:1049F00090E00E94DB2E60E085E090E00C94DB2EDE -:104A000080E090E00E94D52E21E08D3E9E4F09F07F -:104A100020E0822F089582E090E00C94CD2E682F44 -:104A200082E090E00C94DB2E83E090E00C94CD2E9D -:104A3000682F83E090E00C94DB2E84E090E00C94EF -:104A4000CD2E682F84E090E00C94DB2E8091E10164 -:104A500080FF0BC06091130185E0689FB0011124B5 -:104A600075956795759567952BC081FF09C0609115 -:104A7000130185E0689FB00111247595679520C0EA -:104A800082FF07C06091130185E0689FB001112487 -:104A900017C09091E2019923D1F06091120196170D -:104AA00088F72091130185E0289F90011124929F9F -:104AB000A001939F500D112470E0CA010E949F2E07 -:104AC0006038710540F46115710539F002C065E088 -:104AD00070E0862F08958FE7089581E00895809112 -:104AE000E10180FF08C06091110170E07595679544 -:104AF0007595679521C081FF06C06091110170E036 -:104B00007595679519C082FF04C06091110170E02E -:104B100010C09091E2019923C1F0609110019617A5 -:104B2000A0F780911101899FC001112470E00E94BB -:104B30009F2E6038710528F46115710521F0862FCC -:104B400008958FE7089581E0089561E070E0F4CF63 -:104B5000803F21F40E942625819504C0813F29F4DD -:104B60000E9426258093E5010895823F21F40E944A -:104B70002625819504C0833F29F40E942625809331 -:104B8000E4010895893F19F40E946F2505C08A3F0A -:104B900031F40E946F2581958093E60108958B3F43 -:104BA00021F40E946F25819504C08C3F29F40E9456 -:104BB0006F258093E7010895843F21F48091E301FC -:104BC000816017C0853F21F48091E301826011C0AC -:104BD000863F21F48091E30184600BC0873F21F47C -:104BE0008091E301886005C0883F31F48091E30142 -:104BF00080618093E30108958D3F21F48091E1016C -:104C000081600BC08E3F21F48091E101826005C07C -:104C10008F3F29F48091E10184608093E101089540 -:104C2000803F39F48091E50187FF6CC01092E50167 -:104C300069C0813F29F48091E5011816BCF362C078 -:104C40009091E401823F29F497FF5CC01092E40147 -:104C500059C0833F19F41916CCF354C0893F41F46D -:104C60008091E60118160CF04DC01092E6014AC082 -:104C70008A3F29F48091E60187FF44C0F6CF8B3F3D -:104C800039F48091E70187FF3DC01092E7013AC0F7 -:104C90008C3F29F48091E7011816BCF333C0843FA0 -:104CA00021F48091E3018E7F17C0853F21F480912C -:104CB000E3018D7F11C0863F21F48091E3018B7F5A -:104CC0000BC0873F21F48091E301877F05C0883FB7 -:104CD00031F48091E3018F7E8093E30113C08D3F17 -:104CE00021F48091E1018E7F0BC08E3F21F48091F1 -:104CF000E1018D7F05C08F3F29F48091E1018B7F19 -:104D00008093E1018091E40181110EC08091E50161 -:104D100081110AC08091E601811106C08091E701EE -:104D2000811102C01092E20108958091D90183FFA0 -:104D30007EC085EC97E00E941C088091E3011F92E1 -:104D40008F9380EC97E09F938F930E94B5088EEB32 -:104D500097E00E941C088091E401282F332727FD4B -:104D600030953F938F938BEB97E09F938F930E94A7 -:104D7000B50889EB97E00E941C088091E501282F77 -:104D8000332727FD30953F938F9386EB97E09F93D2 -:104D90008F930E94B50884EB97E00E941C088091D5 -:104DA000E601282F332727FD30953F938F9381EB22 -:104DB00097E09F938F930E94B5088FEA97E00E9437 -:104DC0001C088091E701282F332727FD30953F935A -:104DD0008F938CEA97E09F938F930E94B50889EA9E -:104DE00097E00E941C088091E2011F928F9386EA4F -:104DF00097E09F938F930E94B50884EA97E00E9402 -:104E00001C088091E1011F928F9381EA97E09F93A4 -:104E10008F930E94B5088EE997E00E941C088DB719 -:104E20009EB74C960FB6F8949EBF0FBE8DBF83EE13 -:104E300091E00E9464160E94F4229093E001809316 -:104E4000DF0108951F93CF93DF938091DF0190914D -:104E5000E0010E940023AC019091E201992321F02E -:104E60002091140130E006C0209115018AE0289FAE -:104E7000900111244217530708F486C08091E40181 -:104E8000C091E501D091E6011091E701811107C0C1 -:104E9000C11176C0D11174C0111172C075C09F3F8D -:104EA00019F09F5F9093E201181624F40E942625C2 -:104EB0008093E4018091E40187FF05C00E942625CC -:104EC00081958093E4011C1624F40E94262580938A -:104ED000E5018091E50187FF05C00E9426258195A7 -:104EE0008093E5016091E401662339F1C091E50109 -:104EF000CC2319F1772767FD7095872F972F0E9494 -:104F0000A42D23E333E343E35FE30E94082E0E94D2 -:104F1000712D6093E4016C2F772767FD7095872FC3 -:104F2000972F0E94A42D23E333E343E35FE30E9422 -:104F3000082E0E94712D6093E5011D1624F40E9435 -:104F40006F258093E6018091E60187FF05C00E94EE -:104F50006F2581958093E601111624F40E946F2538 -:104F60008093E7018091E70187FF05C00E946F25CC -:104F700081958093E701DF91CF911F910C94952645 -:104F80009F3F09F08ECF96CFDF91CF911F9108956B -:104F9000E3EEF1E085E0DF011D928A95E9F71092DA -:104FA000E2011092E101089588EE99E00E941C0848 -:104FB0001F9281E08F931F9285E08F938AE999E099 -:104FC0009F938F930E94B5080F900F900F900F90B2 -:104FD0000F900F9008958330E9F128F4813061F04B -:104FE000823009F10895853009F462C008F449C09F -:104FF000863009F474C0089580911501262F30E0A1 -:10500000280F311D2F3F310524F4680F60931501DF -:1050100003C08FEF80931501809115011F928F932C -:1050200083ED98E072C080911401262F30E0280FA4 -:10503000311D2F3F310524F4680F6093140103C024 -:105040008FEF80931401809114011F928F9381EC54 -:1050500098E05BC080911301262F30E0280F311DAE -:105060002F3F310524F4680F6093130103C08FEFC5 -:1050700080931301809113011F928F938EEA98E021 -:1050800044C080911201262F30E0280F311D2F3FA0 -:10509000310524F4680F6093120103C08FEF8093F1 -:1050A0001201809112011F928F9389E998E02DC01F -:1050B00080911101262F30E0280F311D2F3F31053F -:1050C00024F4680F6093110103C08FEF80931101E6 -:1050D000809111011F928F9380E898E016C0809113 -:1050E0001001262F30E0280F311D2F3F310524F409 -:1050F000680F6093100103C08FEF809310018091BF -:1051000010011F928F9385E698E09F938F930E94E2 -:10511000B5080F900F900F900F900895833081F194 -:1051200028F4813059F08230D1F00895853009F4A7 -:1051300049C0B8F1863009F456C008958091150130 -:10514000681720F4861B8093150102C01092150188 -:10515000809115011F928F9386E598E054C080914D -:105160001401681720F4861B8093140102C010926A -:105170001401809114011F928F9384E498E043C03E -:1051800080911301681720F4861B8093130102C0DD -:1051900010921301809113011F928F9381E398E085 -:1051A00032C080911201681720F4861B809312018F -:1051B00002C010921201809112011F928F938CE114 -:1051C00098E021C080911101681720F4861B80931C -:1051D000110102C010921101809111011F928F9351 -:1051E00083E098E010C080911001681720F4861BBE -:1051F0008093100102C010921001809110011F9243 -:105200008F9388EE97E09F938F930E94B5080F903D -:105210000F900F900F900895CF93C82F1F928F93E8 -:105220008DEE9AE09F938F930E94B50881E090E005 -:10523000A0E0B0E0BC01CD0104C0660F771F881F5D -:10524000991FCA95D2F70E94A91F0F900F900F9037 -:105250000F90CF910C94ED1BCF938D3109F465C065 -:10526000B0F58E3009F4CCC100F5873009F49BC14C -:10527000A8F4863009F06DC28091D901817F8E7FBC -:105280008093D90182EF9AE00E941C0884E39FE09A -:105290000E941C0881E08093E90180C1883009F4F4 -:1052A0004FC08B3009F47CC154C2863109F4F0C17F -:1052B00038F4803109F4B8C1813109F430C249C2EF -:1052C000893109F4CEC18B3109F486C142C28533DC -:1052D00009F437C248F4873209F433C208F433C200 -:1052E000893209F42EC235C2833438F48A3308F087 -:1052F0002CC2883309F454C12CC2833409F421C26E -:10530000883409F026C20E94ED1B83E29FE00E94D0 -:105310001C089FEF23ED80E3915020408040E1F78F -:1053200000C000000E944F2339C183E49FE00E9427 -:105330001C080E942B2D0E940F160E94410E2EC1A8 -:1053400088E39FE00E941C0883E09DE00E941C0807 -:105350000E9414251F928F9380E09DE09F938F936E -:105360000E94B5088EEF9CE00E941C080E940B254D -:10537000C82F8BEE9CE00E941C081F92CF9386EEF4 -:105380009CE09F938F930E94B50884EE9CE00E945E -:105390001C088AED9CE00E941C088C2F81701F92D3 -:1053A0008F9387ED9CE09F938F930E94B50885EDC6 -:1053B0009CE00E941C088BEC9CE00E941C08C1FB36 -:1053C000882780F91F928F9388EC9CE09F938F939E -:1053D0000E94B50886EC9CE00E941C088AEB9CE0C9 -:1053E0000E941C08C2FB882780F91F928F9387EBCD -:1053F0009CE09F938F930E94B50885EB9CE00E94F0 -:105400001C088CEA9CE00E941C08C3FBCC27C0F956 -:105410001F92CF9389EA9CE09F938F930E94B508D7 -:1054200087EA9CE00E941C080E941D25C82F83E982 -:105430009CE00E941C081F92CF938EE89CE09F93F3 -:105440008F930E94B5088CE89CE00E941C0883E7BB -:105450009CE00E941C088C2F81701F928F9380E724 -:105460009CE09F938F930E94B5088DB79EB780965E -:105470000FB6F8949EBF0FBE8DBF8EE69CE00E94D3 -:105480001C0887E59CE00E941C08C1FB882780F966 -:105490001F928F9384E59CE09F938F930E94B508A1 -:1054A00082E59CE00E941C0880E49CE00E941C08AD -:1054B000C2FB882780F91F928F938DE39CE09F9316 -:1054C0008F930E94B5088BE39CE00E941C0889E240 -:1054D0009CE00E941C08C3FB882780F91F928F93D1 -:1054E00086E29CE09F938F930E94B50884E29CE043 -:1054F0000E941C088AE19CE00E941C08C4FB8827CB -:1055000080F91F928F9387E19CE09F938F930E9475 -:10551000B50885E19CE00E941C0883E09CE00E94A5 -:105520001C08C5FB882780F91F928F9380E09CE0C0 -:105530009F938F930E94B5088EEF9BE00E941C08FA -:1055400082EE9BE00E941C08C6FB882780F91F9210 -:105550008F938FED9BE09F938F930E94B5088DED05 -:105560009BE00E941C0885ED9BE00E941C08C7FB85 -:10557000CC27C0F91F92CF9382ED9BE09F938F932E -:105580000E94B50880ED9BE00E941C088DB79EB775 -:105590004C960FB6F8949EBF0FBE8DBFC1E0DEC023 -:1055A00089E19BE05BC08091D901C82FC17080FF69 -:1055B00009C086E19FE00E941C088091D901817F8B -:1055C0008E7F47C08AE09FE00E941C088091D9012D -:1055D00081608093D901E2CF9091D90191FBCC27D2 -:1055E000C0F981E0C827892FC0FB81F98093D901D8 -:1055F000CC2319F08DEF9EE027C08FEE9EE02EC0E9 -:105600009091D90192FBCC27C0F981E0C827892F5E -:10561000C0FB82F98093D901CC2319F080EE9EE083 -:1056200013C080ED9EE01AC09091D90193FBCC2766 -:10563000C0F981E0C827892FC0FB83F98093D90185 -:10564000CC2351F084EC9EE00E941C088091D9018B -:1056500081608093D90182C087EB9EE00E941C0884 -:105660009DCF88EA9EE00E941C088CE79EE00E9485 -:105670001C088FE39EE00E941C0882E19EE00E94CD -:105680001C088EEC9DE00E941C0883EA9DE0E6CF9A -:1056900085E99DE00E941C080E940F161F928F93BF -:1056A0008BE79DE09F938F930E94B50880910C013A -:1056B0001F928F9384E69DE09F938F930E94B5087D -:1056C000809170011F928F9381E59DE09F938F934E -:1056D0000E94B50880910D011F928F938EE39DE08B -:1056E0009F938F930E94B5088091DB019091DC011C -:1056F000A091DD01B091DE01BF93AF939F938F9393 -:105700008AE29DE09F938F930E94B5088DB79EB764 -:1057100046960FB6F8949EBF0FBE8DBF3FCF0E9436 -:10572000ED1BC0910D0181E0C827C0930D01CC2372 -:1057300029F080E29DE00E941C0810C085E19DE0F8 -:105740008DCF80E003C08D5101C089530E940C2988 -:1057500025CF83E19DE00E941C08C0E08C2FCF91F3 -:10576000089580E0089580E00895CF93C82F809138 -:10577000E901813081F020F0823009F44FC045C149 -:10578000E0910E01F0910F018081813169F0823248 -:1057900009F03DC109C0E0910E01F0910F01808137 -:1057A000813111F0823261F48C2F0E94B12B811172 -:1057B00004C08C2F0E942C292FC081E090E02CC0C7 -:1057C0008C2F0E94B32B811126C0C431E1F070F4FC -:1057D000CB3081F0C031D1F40E94D42785EE9AE01D -:1057E0000E941C0882E08093E90115C0C93259F07B -:1057F000C83361F482EF9AE00E941C0889EE9AE0B7 -:105800000E941C0808C01092E90103C183EE9AE0CF -:105810000E941C08FEC081E08170FDC0C43220F5EA -:10582000CE3108F0C0C0CB3099F1C8F4C73009F0D0 -:10583000D2C08AE08093150194E19093140193E023 -:10584000909313018093120188E08093110188E204 -:105850008093100189E899E00E941C08BFC0C33101 -:1058600049F1C431C1F0B7C0CB3409F4A9C028F460 -:10587000C93289F0C83361F0AEC0C13509F49EC0A9 -:10588000C23509F499C0CE3409F0A5C06AE09EC0C3 -:105890000E94D427A3C08091E801882319F01092B8 -:1058A000E8019CC086E999E00E941C0881E0809391 -:1058B000E901B1C080E799E00E941C088EE599E0FB -:1058C0000E941C08809115011F928F938BE599E02F -:1058D0009F938F930E94B50889E599E00E941C0868 -:1058E00087E499E00E941C08809114011F928F9315 -:1058F00084E499E09F938F930E94B50882E499E035 -:105900000E941C0883E399E00E941C088091130107 -:105910001F928F9380E399E09F938F930E94B50825 -:105920008EE299E00E941C088DE199E00E941C081B -:10593000809112011F928F938AE199E09F938F9338 -:105940000E94B50888E199E00E941C0883E099E074 -:105950000E941C08809111011F928F9380E099E0B2 -:105960009F938F930E94B5088EEF98E00E941C08C9 -:1059700087EE98E00E941C08809110011F928F937F -:1059800084EE98E09F938F930E94B50882EE98E092 -:105990000E941C088DB79EB748960FB6F8949EBF1C -:1059A0000FBE8DBF1BC0CE51EC2FF0E0E15DFE4F6E -:1059B00080818093E80112C061E003C061E006C00D -:1059C0006AE08091E8010E94EB2708C08091E8011D -:1059D0000E948E2803C087E899E013C08091E801F7 -:1059E000882369F01F928F9381E899E09F938F93AA -:1059F0000E94B5080F900F900F900F9004C08EE793 -:105A000099E00E941C0881E006C01092E90180E044 -:105A100002C080E001CFCF910895E1E8F0E08081FD -:105A2000886080838081816080838FB7F89493E061 -:105A30009093890090ED909388008FBF0895EFE6D2 -:105A4000F0E08081826080830895EFE6F0E080815D -:105A50008D7F80830895EFE6F0E0908182E08927D2 -:105A6000808308951F920F920FB60F9211242F93E7 -:105A70003F934F935F936F937F938F939F93AF93D6 -:105A8000BF93EF93FF938091EA019091EB01019610 -:105A90009093EB018093EA01811103C082E00E94A0 -:105AA000410EE091EB01E695E695F0E0ED5AF04FFE -:105AB000E4918091EA018E1303C080E00E94410EC0 -:105AC000FF91EF91BF91AF919F918F917F916F91D6 -:105AD0005F914F913F912F910F900FBE0F901F90AC -:105AE000189504D06894B1118DC0089570D088F0D5 -:105AF0009F5790F0B92F9927B751A0F0D1F0660FBA -:105B0000771F881F991F1AF0BA95C9F712C0B130D4 -:105B100081F077D0B1E0089574C0672F782F88277F -:105B2000B85F39F0B93FCCF3869577956795B39513 -:105B3000D9F73EF490958095709561957F4F8F4F82 -:105B40009F4F0895E89409C097FB3EF49095809587 -:105B5000709561957F4F8F4F9F4F9923A9F0F92F33 -:105B600096E9BB279395F695879577956795B795B1 -:105B7000F111F8CFFAF4BB0F11F460FF1BC06F5F97 -:105B80007F4F8F4F9F4F16C0882311F096E911C0A9 -:105B9000772321F09EE8872F762F05C0662371F0CA -:105BA00096E8862F70E060E02AF09A95660F771FDE -:105BB000881FDAF7880F9695879597F9089557FD0E -:105BC0009058440F551F59F05F3F71F04795880F6B -:105BD00097FB991F61F09F3F79F087950895121602 -:105BE00013061406551FF2CF4695F1DF08C01616AE -:105BF00017061806991FF1CF86957105610508945F -:105C00000895E894BB2766277727CB0197F9089575 -:105C10000BD078C069D028F06ED018F0952309F029 -:105C20005AC05FC01124EECFCADFA0F3959FD1F315 -:105C3000950F50E0551F629FF001729FBB27F00D3A -:105C4000B11D639FAA27F00DB11DAA1F649F66278F -:105C5000B00DA11D661F829F2227B00DA11D621FDE -:105C6000739FB00DA11D621F839FA00D611D221F98 -:105C7000749F3327A00D611D231F849F600D211D7C -:105C8000822F762F6A2F11249F5750408AF0E1F01F -:105C900088234AF0EE0FFF1FBB1F661F771F881F68 -:105CA00091505040A9F79E3F510570F014C0AACF03 -:105CB0005F3FECF3983EDCF3869577956795B79553 -:105CC000F795E7959F5FC1F7FE2B880F911D96957D -:105CD000879597F9089597F99F6780E870E060E0ED -:105CE00008959FEF80EC089500240A941616170675 -:105CF00018060906089500240A94121613061406BD -:105D000005060895092E0394000C11F4882352F01F -:105D1000BB0F40F4BF2B11F460FF04C06F5F7F4FD7 -:105D20008F4F9F4F0895991B79E004C0991F9617D4 -:105D300008F0961B881F7A95C9F78095089597FB00 -:105D4000072E16F4009407D077FD09D00E94B92ED3 -:105D500007FC05D03EF4909581959F4F089570956E -:105D600061957F4F0895EE0FFF1F0590F491E02D90 -:105D70000994AA1BBB1B51E107C0AA1FBB1FA61792 -:105D8000B70710F0A61BB70B881F991F5A95A9F7E4 -:105D900080959095BC01CD010895F999FECF92BDF3 -:105DA00081BDF89A992780B50895A8E1B0E042E056 -:105DB00050E00C94F02E262FF999FECF1FBA92BD19 -:105DC00081BD20BD0FB6F894FA9AF99A0FBE0196DC -:105DD00008950E94DB2E272F0C94DC2EDC01CB01D2 -:105DE000FC01F999FECF06C0F2BDE1BDF89A3196EB -:105DF00000B40D9241505040B8F70895F894FFCF89 -:105E00002002420E330F100FDC0EA80E0101C70155 -:105E100028080A03140A3F4D362039D30686065057 -:105E2000063006F7056A0583059C05B505D505010D -:0A5E3000020304050607080900003C +:100000000C948E080C94D2080C94D2080C94D2084C +:100010000C94D2080C94D2080C94D2080C94D208F8 +:100020000C94D2080C94D2080C94D1140C94A315FF +:100030000C94D2080C94D2080C94D2080C94D208D8 +:100040000C94D2080C947D2E0C94D2080C94D208F7 +:100050000C94D2080C9475240C94D2080C94D208F9 +:100060000C94D2080C94D2080C94D2080C94D208A8 +:100070000C94D2080C94D2080C94D2080C94D20898 +:100080000C94D2080C94D2080C94D2080C94D20888 +:100090000C94D2080C94D2080C94D2080C94D20878 +:1000A0000C94D2080C94D2080C94D20890099A09A6 +:1000B000B209CA09120A180A390A1E0A340A2A0A97 +:1000C0002F0A240AFA09E2093E0A101632162017EE +:1000D0003216201777169A162017EF160217491AAC +:1000E000491A781A781ABB1AF91A121D121D121B16 +:1000F000121D131C131CE61C121D121DFD1C01E118 +:100100000137023702E10138023801E201250225F8 +:1001100002E20001E10137023702E1013802380151 +:10012000E10130023002E10001E10137023702E172 +:100130000138023801E10107020702E1000135023E +:1001400035012002200001E10137023702E10138C8 +:10015000023801E10125022502E10001E101360238 +:100160003602E10138023801E10125022502E100F1 +:1001700001E10136023602E10138023801E10126CF +:10018000022602E10001E10137023702E1013802F3 +:100190003801E10126022602E10002E002E201301C +:1001A00002300002E002E20001E001E20002E002AF +:1001B000E3016402640002E002E30001E001E30005 +:1001C00002E002E2012E022E02E10002E002E10260 +:1001D000E20001E001E101E20002E001E3010602C8 +:1001E0000602E30002E00001E00002E001E3011981 +:1001F000021902E30002E00001E0000000F0A1F0BB +:10020000A329002B00E200E100358100001E00144C +:100210000004001D710D304D831F001A0016001BD5 +:10022000000C304C002000080007000600E1042A02 +:10023000002100150009001900E1084A00220017FA +:10024000000A000500000003300130E3000000E276 +:1002500000000002540230E7000000E60000000445 +:100260005423001C000B00110000002E7F240018F6 +:10027000000D00100050004B0025000C000E003651 +:100280000052002C00260012000F003700510028F9 +:100290000027001300330038714F004E002D002F4F +:1002A000003474E50031810000010001000100010B +:1002B00000010000003A003500310001000100019A +:1002C000003B0035022102350001004C003C001EBD +:1002D0000224062202010001003D002D0224022416 +:1002E00004010001003E000100370011040000017C +:1002F000000100010000000100000001000E3001BB +:100300000000000100000001003F00240624022339 +:100310000200000100400022042502350001000116 +:100320000041002304260235023700010042002468 +:100330000425041F021E020100430031002604317F +:1003400002010001004400450001002D02010000EF +:100350000001000100010001000100000001000196 +:100360000001000100010001000100F400F200FBA7 +:1003700000010001000100F000F100FA000100019D +:10038000000100F500F300FC00010001000100F98C +:1003900000FA00F600000001000100010000000169 +:1003A0000000000100A800010000000100000001A1 +:1003B0000001000100A900AA0000000100010001E5 +:1003C000000100010001000100010001000100AC7A +:1003D000000100B600010001000100AB0050000167 +:1003E00000010001000100520051000100AE0001B7 +:1003F00000010001004F00000001000100010001A8 +:1004000000010000000100010001000100010001E5 +:1004100000010001000100010001000100010001D4 +:1004200000010001000100010001000100010001C4 +:1004300000010001000100010001000100000001B5 +:100440000001000100000001000000010004300173 +:1004500000000001000000010005300630093001F5 +:1004600000000001000A300B3008300100010001DB +:10047000000100073001000100010001000100013E +:100480000001000100010001000100010001000164 +:100490000001000100010001000100010001000055 +:1004A0000001000100010001000100000001000145 +:1004B00000010001000100010001000100500001E5 +:1004C0000001000100010052005100010001000183 +:1004D00000010001004F00010001000100010001C6 +:1004E0000001000100000001000100010000000106 +:1004F00000000001000100010000000100000001F7 +:10050000003F00520051002302000001004000247F +:100510000021001E00270001004100250022001FCD +:1005200000370001004200260023002000270001C0 +:10053000004300300230002402270201004400453D +:1005400000380001000100000001000100E100018D +:1005500000E0000000010001000100010001003D79 +:100560000001000100010001000100E000010001A4 +:10057000000100010001002C000100010001000148 +:100580000001003C00010001000100010000003AF0 +:1005900000010001000000010000003B000E3001DE +:1005A0000000000100000001000100010001000145 +:1005B0000000000100010001000100010001000134 +:1005C0000001000100010001000100010001000123 +:1005D0000001000100010001000100010001000113 +:1005E0000001000100010001000100010001000004 +:1005F000000A002530313662003A2000253032589A +:10060000000A722F632030313233343536373839AF +:100610004142434445460A000A00253032580062F0 +:100620006F756E6365213A20006C6566742073698E +:1006300064652061747461636865640A006C656652 +:10064000742073696465206E6F7420726573706FB7 +:100650006E64696E670A00747279696E6720746FE0 +:10066000207265736574206D637032333031380ADF +:10067000000A44454255473A20656E61626C6564E4 +:100680002E0A005B735D004B6579626F61726420B6 +:1006900073746172742E0A005B575D005B535D00DA +:1006A0005B525D005B445D005B435D0016034500EB +:1006B000720067006F0044006F0078002000450062 +:1006C0005A00000016034500720067006F004400E6 +:1006D0006F007800200045005A0000000403090460 +:1006E00009028D00050100A0FA09040000010301C0 +:1006F0000100092111010001223F000705810308C3 +:10070000000A09040100010301020009211101008E +:1007100001224D000705820308000A0904020001B6 +:1007200003000000092111010001223600070583A2 +:100730000308000A09040300020300000009211154 +:1007400001000122200007058403200001070504A1 +:100750000320000109040400010300000009211125 +:100760000100012239000705850310000112011064 +:100770000100000008EDFE07130100010200010561 +:10078000010906A101050719E029E71500250195D2 +:100790000875018102050819012905950575019162 +:1007A00002950175039101050719002977150025A8 +:1007B00001957875018102C00631FF0974A1010914 +:1007C00075150025FF95207508810209761500250D +:1007D000FF952075089102C005010980A1018502DD +:1007E00016010026B7001A01002AB70075109501FE +:1007F0008100C0050C0901A1018503160100269C9A +:10080000021A01002A9C02751095018100C00501A1 +:100810000902A1010901A100050919012905150015 +:100820002501950575018102950175038101050179 +:10083000093009311581257F95027508810609382F +:100840001581257F950175088106050C0A3802156A +:1008500081257F950175088106C0C005010906A1A3 +:1008600001050719E029E7150025019508750181A3 +:10087000029501750881010508190129059505757D +:100880000191029501750391010507190029FF15D2 +:100890000025FF950675088100C00A0025303258F2 +:1008A00020006B6579626F6172645F7265706F7250 +:1008B000743A20000A0025303258006B6579626F67 +:1008C0006172645F7365745F6C65643A200064658F +:1008D0006C5F6B65795F6269743A2063616E27743F +:1008E0002064656C3A20253032580A006164645FE8 +:1008F0006B65795F6269743A2063616E2774206169 +:1009000064643A20253032580A00646F6E652E0AFE +:1009100000626F6F676D61676963207363616E3A30 +:10092000202E2E2E2000290A002575002F00257567 +:10093000005D280025640020002564002000256457 +:100940000020002564007C0025303258006D6F7552 +:1009500073656B6579205B62746E7C782079207694 +:1009600020685D287265702F61636C293A205B00F6 +:100970006D6B5F776865656C5F74696D655F746FDB +:100980005F6D6178203D2025640A006D6B5F77689C +:1009900065656C5F6D61785F7370656564203D208F +:1009A00025640A006D6B5F74696D655F746F5F6DC0 +:1009B0006178203D2025640A006D6B5F6D61785F72 +:1009C0007370656564203D2025640A006D6B5F6966 +:1009D0006E74657276616C203D2025640A006D6B33 +:1009E0005F64656C6179203D2025640A006D6B5F52 +:1009F000776865656C5F74696D655F746F5F6D6165 +:100A000078203D2025640A006D6B5F776865656C12 +:100A10005F6D61785F7370656564203D2025640AB1 +:100A2000006D6B5F74696D655F746F5F6D617820D9 +:100A30003D2025640A006D6B5F6D61785F737065A2 +:100A40006564203D2025640A006D6B5F696E7465E6 +:100A50007276616C203D2025640A006D6B5F6465D1 +:100A60006C6179203D2025640A000A002575003656 +:100A70003A20776865656C5F74696D655F746F5F58 +:100A80006D61783A20000A00257500353A207768B4 +:100A900065656C5F6D61785F73706565643A2000B1 +:100AA0000A00257500343A2074696D655F746F5FC4 +:100AB0006D61783A20000A00257500333A206D6197 +:100AC000785F73706565643A20000A00257500320E +:100AD0003A20696E74657276616C286D73293A20CC +:100AE000000A00257500313A2064656C6179282A76 +:100AF00031306D73293A20000A092D2056616C753A +:100B00006573202D0A004D3E004D25643E20003FB8 +:100B1000007365742064656661756C740A00433EF9 +:100B2000200077686572652064656C74613A2063A3 +:100B30007572736F723D25642C20776865656C3D16 +:100B400025640A53656520687474703A2F2F656EAA +:100B50002E77696B6970656469612E6F72672F7794 +:100B6000696B692F4D6F7573655F6B6579730A00EB +:100B70000A092D204D6F7573656B6579202D0A4527 +:100B800053432F713A09717569740A313A096465E2 +:100B90006C6179282A31306D73290A323A09696EFD +:100BA00074657276616C286D73290A333A096D6138 +:100BB000785F73706565640A343A0974696D655FBE +:100BC000746F5F6D61780A353A09776865656C5FA7 +:100BD0006D61785F73706565640A363A0977686598 +:100BE000656C5F74696D655F746F5F6D61780A0A2B +:100BF000703A097072696E742076616C7565730A5B +:100C0000643A097365742064656661756C74730A6F +:100C100075703A092B310A646F776E3A092D310AE3 +:100C2000706775703A092B31300A7067646F776EA0 +:100C30003A092D31300A0A7370656564203D2064DD +:100C4000656C7461202A206D61785F7370656564DE +:100C5000202A2028726570656174202F2074696DC8 +:100C6000655F746F5F6D6178290A003F004D3E201B +:100C700000433E20004C25640A000A092D20436FE2 +:100C80006E736F6C65202D0A4553432F713A0971BD +:100C90007569740A6D3A096D6F7573656B65790ACC +:100CA000000A092D204D61676963202D0A643A0905 +:100CB00064656275670A783A096465627567206DD4 +:100CC00061747269780A6B3A096465627567206BB2 +:100CD0006579626F6172640A6D3A0964656275676D +:100CE000206D6F7573650A763A0976657273696F60 +:100CF0006E0A733A097374617475730A633A09630F +:100D00006F6E736F6C65206D6F64650A302D343AB9 +:100D1000096C61796572302D34284631302D4634A6 +:100D2000290A506175733A09626F6F746C6F616460 +:100D300065720A653A09656570726F6D0A6E3A09E7 +:100D40004E4B524F0A7A3A09736C656570204C45D8 +:100D50004420746573740A000A002575002E6E6BBA +:100D6000726F3A20000A002575002E737761705F5C +:100D70006261636B736C6173685F6261636B7370F4 +:100D80006163653A20000A002575002E7377617053 +:100D90005F67726176655F6573633A20000A0025BC +:100DA00075002E6E6F5F6775693A20000A00257521 +:100DB000002E737761705F72616C745F7267756922 +:100DC0003A20000A002575002E737761705F6C6110 +:100DD0006C745F6C6775693A20000A002575002EF7 +:100DE000636170736C6F636B5F746F5F636F6E745E +:100DF000726F6C3A20000A002575002E73776170BF +:100E00005F636F6E74726F6C5F636170736C6F633E +:100E10006B3A20000A0025303258006B65796D610D +:100E2000705F636F6E6669672E7261773A20000AA1 +:100E3000002575002E6D6F7573653A20000A002538 +:100E400075002E6B6579626F6172643A20000A004A +:100E50002575002E6D61747269783A20000A0025AC +:100E600075002E656E61626C653A20000A002530BF +:100E700032580064656275675F636F6E6669672EDE +:100E80007261773A20000A00257500646566617515 +:100E90006C745F6C617965723A20003F004E4B5272 +:100EA0004F3A206F66660A004E4B524F3A206F6EE3 +:100EB0000A0074696D65725F636F756E743A202500 +:100EC00030346C580A006B6579626F6172645F6ED2 +:100ED0006B726F3A2025580A006B6579626F6172F8 +:100EE000645F69646C653A2025580A006B65796215 +:100EF0006F6172645F70726F746F636F6C3A2025FC +:100F0000580A00686F73745F6B6579626F61726411 +:100F10005F6C65647328293A2025580A000A092D58 +:100F200020537461747573202D0A004743433A209F +:100F3000342E392E33204156522D4C4942433A200B +:100F4000312E382E31204156525F415243483A20CB +:100F5000617672350A004F5054494F4E533A204C37 +:100F600055464120424F4F544D41474943204D4F34 +:100F70005553454B45592045585452414B455920EE +:100F8000434F4E534F4C4520434F4D4D414E44200F +:100F90004E4B524F203531320A004255494C443AAB +:100FA00020666437326134362D6469727479202882 +:100FB00032313A35313A3231204A616E20323420B2 +:100FC00032303136290A005649443A2030784645B5 +:100FD0004544284572676F446F7820455A29205050 +:100FE00049443A20307831333037284572676F44AE +:100FF0006F7820455A29205645523A2030783030B3 +:1010000030310A00444553433A20742E6D2E6B2E26 +:10101000206B6579626F617264206669726D7761B9 +:10102000726520666F72204572676F646F780A0080 +:101030000A092D2056657273696F6E202D0A000A09 +:101040006D6F7573653A206F66660A000A6D6F757D +:1010500073653A206F6E0A000A6B6579626F617280 +:10106000643A206F66660A000A6B6579626F617286 +:10107000643A206F6E0A000A6D61747269783A20D2 +:101080006F66660A000A6D61747269783A206F6E45 +:101090000A000A64656275673A206F6E0A000A6486 +:1010A000656275673A206F66660A000A0A626F6FAA +:1010B000746C6F616465722E2E2E2000433E2000FA +:1010C0006565636F6E6669673A0A00536C656570A3 +:1010D000204C454420746573740A00000000000031 +:1010E000000000000000010204060A0F17202C3A3D +:1010F0004A5D71879DB3C7DAE9F5FCFFFCF5E9DAD3 +:10110000C7B39D87715D4A3A2C20170F0A06040267 +:1011100001000000000000000000000011241FBEBC +:10112000CFEFDAE0DEBFCDBF04B603FE24C080916E +:10113000FB019091FC01A091FD01B091FE0187306F +:10114000904BA740B04BB9F41092FB011092FC01F8 +:101150001092FD011092FE0114BE84B7877F84BFF8 +:1011600088E10FB6F89480936000109260000FBE83 +:10117000E0E0FFE3099511E0A0E0B1E0E6E9F0E688 +:1011800002C005900D92AA33B107D9F711E0AAE386 +:10119000B1E001C01D92AB3FB107E1F70E94091217 +:1011A0000C9449300C940000FF93EF93E0913A01C6 +:1011B000F0913B01309709F00995EF91FF91089567 +:1011C000FC018591803011F0EFDFFBCF0895FF2700 +:1011D000E0E230E247FF0CC0419597FF09C0EDE225 +:1011E0006095709580959095611D711D811D911D73 +:1011F00027FF02C0219530E350E2AA27660F771F30 +:10120000881F991FAA1FA41710F0A41B63955A9555 +:10121000A9F7AA3008F0A95FA05DAF93F395611517 +:1012200071058105910541F7ED3211F4EF93F395C6 +:10123000F21718F43F93F395FBCF8F91B5DFFA9532 +:10124000E1F70895E991F9918591803021F0853297 +:1012500019F0AADFF9CF089520E0E89455915532AE +:10126000C1F3503311F4689455915A3348F45053F4 +:1012700090F3220F022E220F220F200D250FF4CF04 +:101280000EF4219589919991533619F3533729F129 +:10129000533559F1BC0188279927E8945C3621F42D +:1012A0008991999168945591543639F446EF7EF0BE +:1012B00077FF0DC08FEF9FEF0AC055374AE039F036 +:1012C000583540E121F0523642E009F00895FF938D +:1012D000EF937DDFEF91FF91B7CFFF93EF93FC0189 +:1012E00081918030B9F360DFFBCFFF93EF9368DF2C +:1012F000F1CFDF93CF93CDB7DEB72596A3DFCF91A4 +:10130000DF910895462F50E04F30510508F0DEC0C0 +:10131000DC01FA01EA5AFF4F12968C910C94FE2FD1 +:10132000882321F085EE0E94E618D0C085EE0E9449 +:10133000AE19CCC0882349F00E943F2490933D0110 +:1013400080933C0188EF91E0089580913C01909159 +:101350003D010E944B24873991050CF0A8C08AEE0C +:1013600091E00895882349F00E943F2490933D0125 +:1013700080933C0187EE91E0089580913C0190912B +:101380003D010E944B24873991050CF093C089EDF3 +:1013900091E00895882349F00E943F2490933D01F5 +:1013A00080933C0182ED91E0089580913C01909101 +:1013B0003D010E944B24873991050CF07EC080ECE2 +:1013C00091E00895882349F00E943F2490933D01C5 +:1013D00080933C018BEB91E0089580913C019091CA +:1013E0003D010E944B24873991050CF069C08DEABC +:1013F00091E00895882349F00E943F2490933D0195 +:1014000080933C0188EA91E0089580913C0190919D +:101410003D010E944B24873991050CF054C08AE9A4 +:1014200091E00895882309F451C085E891E008957A +:10143000882309F44BC080E791E00895882309F4DC +:1014400045C08BE591E00895882309F43FC086E408 +:1014500091E008958823D1F18DE391E008958823E8 +:10146000A9F188E291E00895882381F183E191E078 +:101470000895882359F18EEF90E00895882331F183 +:101480008091BE019091BF01A091C001B091C101B6 +:1014900020E2822780729927AA27BB278093BE016A +:1014A0009093BF01A093C001B093C1010FC085EF1D +:1014B00091E0089584EE91E008958BEC91E0089519 +:1014C00086EB91E0089583EA91E0089580E090E052 +:1014D000089508956091BE017091BF018091C0018F +:1014E0009091C1010E94742356985E9825982D987A +:1014F00026982E9827982F98833099F028F48130D9 +:1015000041F0823049F00895843049F0853061F02F +:101510000895259A2D9A0895269A2E9A0895259A27 +:101520002D9A279A2F9A0895259A2D9A269A2E9ABF +:10153000279A2F9A08958AE69AE0892B11F00E9443 +:101540006A0A80E090E0089556985E9825982D9854 +:1015500026982E9827982F988FEF90E090938900E7 +:101560008093880090938B0080938A0090938D00E5 +:1015700080938C00259A2D9A2FEF80E792E02150DE +:1015800080409040E1F700C00000269A2E9A2FEF8D +:1015900080E792E0215080409040E1F700C00000D9 +:1015A000279A2F9A2FEF80E792E0215080409040B9 +:1015B000E1F700C0000025982D982FEF80E792E01A +:1015C000215080409040E1F700C0000026982E98FE +:1015D0002FEF80E792E0215080409040E1F700C07B +:1015E000000027982F9856985E9825982D98269851 +:1015F0002E9827982F98089589EA8093800089E093 +:101600008093810024982C983F988AB18F748AB96E +:101610006E98479A8BB1806B8BB9769A0E94A40A18 +:1016200089E69AE0892B11F00E94690A80E090E037 +:10163000089580E28093000180913E0181110EC0E7 +:101640000E94680B81E080933E012FEF83ED90E3D1 +:10165000215080409040E1F700C0000080E40E94EB +:101660006E0B8093000181112EC00E94980B809315 +:101670000001811128C00E94980B80930001811104 +:1016800022C08FE30E94980B8093000181111BC040 +:101690000E94900B80E40E946E0B809300018111E8 +:1016A00012C08CE00E94980B8093000181110BC046 +:1016B0000E94980B80930001811105C08FE30E9466 +:1016C000980B809300010E94900B80910001089577 +:1016D0001092B9008AE08093B800089594EA90933C +:1016E000BC009091BC0097FFFCCF9091B900987F0F +:1016F000983021F0903111F081E008958093BB0083 +:1017000084E88093BC008091BC0087FFFCCF80916F +:10171000B900887F883111F0803471F780E0089536 +:1017200084E98093BC008091BC0084FDFCCF0895C7 +:101730008093BB0084E88093BC008091BC0087FF4D +:10174000FCCF9091B900987F81E0983209F480E055 +:10175000089584E88093BC008091BC0087FFFCCF93 +:101760008091BB00089580910001811115C080E433 +:101770000E946E0B8093000181110CC082E10E94D7 +:10178000980B80930001811105C08FEF0E94980B88 +:10179000809300010E94900B84B1807F84B985B151 +:1017A000807F85B98AB1837F8AB98BB1837F8BB9FA +:1017B0003E98469808950E94190B809300010E945C +:1017C000B30B80B38C7080BB81B3836F81BBA0E40B +:1017D000B1E0EEE4F1E08EE08E0F11921D928E13D7 +:1017E000FCCF8CEF9AE0892B11F00C94FC0A089541 +:1017F0009F92AF92BF92CF92DF92EF92FF920F93A0 +:101800001F93CF93DF93809100018823E1F08091B3 +:101810003F018F5F80933F01811115C087E596E0FE +:101820000E94E0080E94190B80930001882329F090 +:101830008DE396E00E94E00806C089E296E00E94EF +:10184000E0080E94A40A00E411E0C0E0D0E0BB245C +:10185000B39482E0A82ECC24C394D12C2AE1E22EAA +:1018600026E0F22EC730D10500F5809100018111EC +:1018700064C080E40E946E0B80930001811112C04D +:1018800082E10E94980B8093000181110BC0C60178 +:101890000C2E01C0880F0A94EAF780950E94980BDD +:1018A000809300010E94900B48C0CA30A1F028F438 +:1018B000C83059F0C93061F005C0CC3089F070F003 +:1018C000CD3089F0209A289810C0219A29980DC00F +:1018D000229A2A980AC0239A2B9807C0529A01C0CC +:1018E000539A5B9802C03E9A469890EA9A95F1F70F +:1018F0009FB1799902C082E001C080E091709B2580 +:10190000982B7C9902C084E001C080E0892B7D99EE +:1019100002C038E001C030E0832B7E9902C020E194 +:1019200001C020E0822B9FB19095991F9927991FA4 +:101930009295990F907E892B10C0809100018111A2 +:1019400074C080E40E946E0B80930001882309F428 +:1019500059C0912C0E94900B892DF8019081981705 +:1019600039F1808380910101882301F18091D901AF +:1019700080FF04C08FE196E00E94E0088091D901C9 +:1019800080FF0CC0809101011F928F93FF92EF9214 +:101990000E9479090F900F900F900F908091D901BC +:1019A00080FF04C088E196E00E94E008A092010157 +:1019B0000E94B30B21960F5F1F4FCE30D10509F067 +:1019C00051CF809101018823B1F0815080930101B2 +:1019D000882339F08FE99FE00197F1F700C00000FC +:1019E0000AC0AEE4B1E0E0E4F1E0CF01825F9191A2 +:1019F0009D938E13FCCF8BE99AE0892BC1F00E9456 +:101A00009B0A15C083E10E94980B8093000181110D +:101A1000A0CF81E40E946E0B80930001811199CFC9 +:101A20000E94A90B982E909495CF80E096CF81E0EC +:101A3000DF91CF911F910F91FF90EF90DF90CF90AA +:101A4000BF90AF909F900895E82FF0E0E25BFE4FCB +:101A500080810895CF92DF92EF92FF920F931F93B0 +:101A6000CF93DF9381E096E00E94E0088EE4E82EB9 +:101A700081E0F82EC0E0D0E09CEFC92E95E0D92E91 +:101A800003EF15E0DF93CF93DF92CF920E947909A5 +:101A900089EF95E00E94E008F70181917F0190E0D5 +:101AA0000E94DA239F938F931F930F930E947909CB +:101AB00081EF95E00E94E00821968DB79EB70896C9 +:101AC0000FB6F8949EBF0FBE8DBFCE30D105D1F6B4 +:101AD000DF91CF911F910F91FF90EF90DF90CF900A +:101AE00008958B3B910578F4883A910540F5853A45 +:101AF0009105D0F48430910508F0B1C08130910592 +:101B000009F4ADC06BC0803E910508F467C0883E03 +:101B1000910508F4A4C09C01205F310920313105F2 +:101B200008F05CC090650895853A910509F459C0A4 +:101B3000863A910509F058C082E890E40895883A01 +:101B4000910509F454C0893A910509F453C08A3AC1 +:101B5000910509F452C08B3A910509F451C08C3AB1 +:101B6000910509F450C08D3A910509F44FC0803BAE +:101B7000910509F44EC08E3A910509F44DC08F3A93 +:101B8000910509F44CC0813B910509F44BC0823B9F +:101B9000910509F44AC0833B910509F449C0843B8F +:101BA000910509F448C0853B910509F447C0863B7F +:101BB000910509F446C0873B910509F445C0883B6F +:101BC000910509F444C0893B910509F443C08A3B5F +:101BD000910509F442C080E094E4089580E090E02B +:101BE000089581E890E4089583E890E4089582EEF2 +:101BF00094E4089589EE94E408958AEE94E40895B7 +:101C000085EB94E4089586EB94E4089587EB94E4DF +:101C100008958CEC94E408958DEC94E4089583E8A1 +:101C200095E408958AE895E4089582E995E4089595 +:101C300084E995E4089581E296E4089583E296E4C8 +:101C4000089584E296E4089585E296E4089586E294 +:101C500096E4089587E296E408958AE296E408956A +:101C6000089596E0799FF001112494E5899FE00D95 +:101C7000F11D1124E60FF11DEE0FFF1FEF5FFD4F69 +:101C8000859194910895880F991FFC01E558FF4FA5 +:101C9000859194910895880F991FFC01E550FE4F9E +:101CA00085919491089526E0729FF001112444E5F6 +:101CB000849FE00DF11D1124E60FF11DEE0FFF1FB3 +:101CC000EF5FFD4F859194919C013A9521154FE16D +:101CD000340708F41EC13F512115304120F49F7094 +:101CE0000E944B0E08959C0130532115304118F489 +:101CF0009927906C0895811520E5920769F40E9458 +:101D0000341D4FEF84E39CE0415080409040E1F768 +:101D100000C000000C949A24813020E5920751F411 +:101D200081E796E00E94E0088091D901816080936C +:101D3000D90108959C0130552115304108F051C05A +:101D4000292F33272F70332721303105D9F4AC01E7 +:101D50004370552702C0220F331F4A95E2F73C68B3 +:101D6000AC0164E0440F551F6A95E1F744275370B6 +:101D7000242B352B73E0880F991F7A95E1F7807635 +:101D800099271DC02230310529F4982F8827816FAB +:101D9000906A089523303105A9F4AC0143705527AA +:101DA00021E030E002C0220F331F4A95E2F73C6881 +:101DB00043E0880F991F4A95E1F7807E9770822B48 +:101DC000932B089524303105E1F4AC01437055277D +:101DD00021E030E002C0220F331F4A95E2F73A6853 +:101DE000E7CF9C0130572115304118F49F70906265 +:101DF00008959C0130582115304118F49F70906A65 +:101E00000895803E9105E0F4803C910558F58133BA +:101E1000910509F46FC048F48932910509F463C053 +:101E20008A32910509F46DC072C089339105E9F0D9 +:101E300082389105D1F08533910509F44DC067C012 +:101E4000833E910581F138F4803E9105B9F0823EE0 +:101E50009105D9F05CC0863E910561F1873E910500 +:101E6000A1F155C00E94430E08952091EC0120FD80 +:101E700002C021FF4CC080EE90E049C08091EC018F +:101E800080FFF9CF89E390E042C08091EC0182FFAE +:101E90000EC08091EC0184FF03C080E090E037C069 +:101EA00083EE90E034C08091EC0182FFF2CF82EEAD +:101EB00090E02DC08091EC0183FF0BC08091EC017C +:101EC00084FDEBCF87EE90E022C08091EC0183FF90 +:101ED000F5CF86EE90E01BC08091EC0185FF07C036 +:101EE00089E290E014C08091EC0185FFF9CF85E391 +:101EF00090E00DC08091EC0186FF07C08AE290E07F +:101F000006C08091EC0186FFF9CF81E390E00E944A +:101F1000710D0895089580916F0108959FB7F89409 +:101F200010925E019FBF9091F201943009F057C06A +:101F30009091E9009F703091EC00232F217030FDCB +:101F400020E8922B24E02093E9002091EB0020FF71 +:101F500043C02091EE0027FF3FC020915C01222367 +:101F600021F02091E80025FF37C010925C0126E0A7 +:101F70003091E80035FD15C03091F201343061F543 +:101F80003091EB0035FD28C0215021F481E0809391 +:101F90005C0122C0EFE9FFE03197F1F700C00000DB +:101FA000E7CF8093F1008091E80085FD0AC0809121 +:101FB000E80080FFFCCF8091E8008E778093E800F6 +:101FC00006C08FB7F89421E020935E018FBF9F7009 +:101FD0009093E90080E008959F709093E9008FEF5F +:101FE0000895CF93DF9300D01F92CDB7DEB79C0149 +:101FF0008091F201843019F593E099833B832A8321 +:102000009093E9008FEF9091E800815095FD06C014 +:1020100095ED9A95F1F700008111F5CF8091E800D8 +:1020200085FF0DC040E050E063E070E0CE01019616 +:102030000E94C1128091E8008E778093E8000F9093 +:102040000F900F90DF91CF910895CF93DF9300D041 +:102050001F92CDB7DEB72091F201243021F522E0A6 +:1020600029839B838A8383E08093E9008FEF90919B +:10207000E800815095FD06C095ED9A95F1F70000B6 +:102080008111F5CF8091E80085FF0DC040E050E060 +:1020900063E070E0CE0101960E94C1128091E800D9 +:1020A0008E778093E8000F900F900F90DF91CF9183 +:1020B00008952091F2012430F1F422E02093E90008 +:1020C0002FEF3091E800215035FD06C035ED3A95EF +:1020D000F1F700002111F5CF2091E80025FF0BC09A +:1020E00040E050E065E070E00E94C1128091E8009D +:1020F0008E778093E8000895CF93DF932091F201CB +:10210000243009F048C0EC0180910C018823E1F0F3 +:1021100080910D018823C1F085E08093E9008FEF65 +:102120009091E800815095FD06C095E19A95F1F7F0 +:1021300000008111F5CF8091E80085FF2CC040E0C0 +:1021400050E060E170E017C081E08093E9008FEF1C +:102150009091E800815095FD06C095ED9A95F1F7B4 +:1021600000008111F5CF8091E80085FF14C040E0A8 +:1021700050E068E070E0CE010E94C1128091E8005A +:102180008E778093E80080E1FE01AFE5B1E0019039 +:102190000D928A95E1F7DF91CF91089588EA96E054 +:1021A0000E94E0088091F101811109C00E9456143B +:1021B0000E94B3148091E20084608093E20008954D +:1021C00084EA96E00E94E0081092F101089580EA06 +:1021D00096E00C94E0088CE996E00E94E0080C94EC +:1021E0006A2E88E996E00E94E0080E9430240E944E +:1021F000702E0E9458170C948A0F20915D012F5F5A +:10220000822F62E30E94DE2F992319F020935D0153 +:10221000089510925D0180915E01882371F1809193 +:10222000F201843041F58091E9008F702091EC003B +:10223000922F917020FD90E8892B94E09093E90013 +:102240009091EB0090FF14C09091EE0097FF10C0AA +:102250009091E80095FF03C01092F100F9CF9091A2 +:10226000E80090FF05C09091E8009E779093E80009 +:102270008F708093E90010925E01089542E061EC56 +:1022800081E00E94D01342E061EC82E00E94D01312 +:1022900042E061EC83E00E94D01342E261EC84E012 +:1022A0000E94D01342E161EC85E00C94D013809140 +:1022B000F401833009F455C030F4813071F082307C +:1022C00009F48EC008958A3009F47AC08B3009F47D +:1022D00060C0893009F09CC020C08091F301813A30 +:1022E00009F096C08091E800877F8093E800809194 +:1022F000F7019091F801892B21F460E18FE591E0DD +:1023000003C060E080E090E070E00E940C138091D8 +:10231000E8008B778093E80008958091F301813283 +:1023200009F076C08091F7019091F801009719F0BB +:10233000049709F06DC08091E800877F8093E800E2 +:102340008091E80082FD05C08091F2018111F8CFF3 +:102350005FC08091F10080936F018091E8008B77DE +:1023600053C08091F301813A09F052C08091F70186 +:102370009091F801892B09F04BC08091E800877F8C +:102380008093E8008091E80080FFFCCF80910C01F1 +:1023900036C08091F3018132D9F58091F701909197 +:1023A000F801892BA9F58091E800877F8093E800E8 +:1023B0000E9405148091F50180930C010C94341D4A +:1023C0008091F301813221F58091E800877F80932D +:1023D000E8000E9405148091F60180937001089531 +:1023E0008091F301813AA1F48091E800877F809386 +:1023F000E8008091E80080FFFCCF8091700180931D +:10240000F1008091E8008E778093E8000C94051429 +:10241000089584B7877F84BF88E10FB6F8948093CE +:102420006000109260000FBE90E080E80FB6F89454 +:1024300080936100909361000FBE0E94E5170E9497 +:1024400056140E94B3148091E20084608093E200ED +:102450008EE89FE00E946F2378940E9438170E94B4 +:10246000E71782E091E00E9453170E94582E87E8F8 +:1024700096E00E94E0088091F201853089F483E8BB +:1024800096E00E94E0080E94F4238091F0018823E6 +:1024900091F30E941C24882371F30E94AB12EBCFAE +:1024A0000E941518E8CF292F332723303105C9F0B2 +:1024B00064F42130310581F02230310509F043C048 +:1024C0008DE890E020EE36E042C021323105F1F097 +:1024D0002232310541F137C082E190E02DE637E04C +:1024E00036C099278130910541F08230910541F045 +:1024F000892B49F5ECEDF6E005C0E4ECF6E002C00E +:10250000ECEAF6E0849190E09F0121C06530D8F4B8 +:10251000E62FF0E0EE0FFF1FEB5DFE4F20813181D3 +:1025200089E090E014C0653070F470E0FB01EE0FBC +:10253000FF1FE55EFE4F20813181FB01EA5EFE4F09 +:10254000808190E004C080E090E020E030E0FA017B +:1025500031832083089580E189BD82E189BD09B47A +:1025600000FEFDCF8091D8008F7D8093D8008091B0 +:10257000E00082608093E0008091E00081FDFCCF6C +:102580000895CF92DF92EF92FF920F931F93CF9314 +:10259000DF93EC018B016A010E942414811133C086 +:1025A000C114D10439F0F60180819181081B190B07 +:1025B000C80FD91FE12CF12C0115110519F18091DB +:1025C000E80085FD16C08091E8008E778093E800D2 +:1025D000C114D10449F0F60180819181E80EF91E01 +:1025E000F182E08285E00FC00E942414882321F349 +:1025F0000AC089918093F10001501109FFEFEF1A91 +:10260000FF0ADACF80E0DF91CF911F910F91FF9009 +:10261000EF90DF90CF9008952091F9013091FA0169 +:102620002617370748F06115710539F42091E80045 +:102630002E772093E80001C0B90140E061157105D3 +:10264000A9F12091F201222309F443C0253009F4B5 +:1026500042C02091E80023FD40C02091E80022FD07 +:1026600032C02091E80020FFE9CF4091F300209193 +:10267000F20030E0342BFC01CF016115710559F0F7 +:102680002830310540F481918093F1006150710947 +:102690002F5F3F4FF1CF41E02830310509F040E096 +:1026A0002091E8002E772093E800C8CF4111C9CFD0 +:1026B0000AC08091F201882361F0853061F0809139 +:1026C000E80083FD0AC08091E80082FFF2CF80E03D +:1026D000089582E0089583E0089581E008952091AF +:1026E000F9013091FA012617370748F06115710595 +:1026F00039F42091E8002E772093E80001C0B90159 +:10270000FC0120E06115710591F18091F2018823AF +:1027100009F440C0853009F43FC08091E80083FD92 +:102720003DC08091E80082FD2FC08091E80080FFCD +:10273000E9CF2091F3008091F20090E0922B611597 +:10274000710559F08830910540F424912093F100EF +:102750003196615071090196F2CF21E0089709F096 +:1027600020E08091E8008E778093E800CBCF2111A4 +:10277000CCCF0AC08091F201882361F0853061F0EE +:102780008091E80083FD0AC08091E80082FFF2CFCB +:1027900080E0089582E0089583E0089581E008953F +:1027A000982F973058F59093E900981739F0709169 +:1027B000EC002091ED005091F00003C0242F762F03 +:1027C00050E021FF19C03091EB003E7F3093EB00C9 +:1027D0003091ED003D7F3093ED003091EB003160A2 +:1027E0003093EB007093EC002093ED005093F000D9 +:1027F0002091EE0027FF07C09F5FD3CF8F7080939B +:10280000E90081E0089580E008958091F30187FF59 +:1028100011C08091E80082FD05C08091F201811114 +:10282000F8CF11C08091E8008B770BC08091F20146 +:10283000882349F08091E80080FFF8CF8091E8007C +:102840008E778093E80008952091E4003091E500B0 +:1028500095E64091EC00842F817040FF22C080916A +:10286000E80080FD1CC08091F201882391F0853042 +:1028700091F08091EB0085FD10C04091E4005091F3 +:10288000E5004217530729F39A01915011F784E0AC +:10289000089582E0089583E0089581E0089580E03E +:1028A00008954091E80042FFDECF08950E94C414CD +:1028B0000E94CC14E0EEF0E0808181608083E8ED3E +:1028C000F0E080818F77808319BCA7EDB0E08C9118 +:1028D0008E7F8C9380818F7E80831092F10108958A +:1028E0000F931F93CF93DF930E94C4140E94CC14C4 +:1028F000C8EDD0E088818F7788838881806888835D +:1029000088818F7D888319BC1092F2011092EE01AC +:102910001092F0011092EF0100EE10E0F8018081BA +:102920008B7F808388818160888342E060E080E0E3 +:102930000E94D013E1EEF0E080818E7F8083E2EE92 +:10294000F0E0808181608083808188608083F801ED +:1029500080818E7F8083888180618883DF91CF91A1 +:102960001F910F910895E8EDF0E080818F7E8083C4 +:10297000E7EDF0E080818160808384E082BF81E0C8 +:102980008093F1010C947014E8EDF0E080818E7F6B +:1029900080831092E20008951092DA001092E10014 +:1029A00008951F920F920FB60F9211242F933F9309 +:1029B0004F935F936F937F938F939F93AF93BF9347 +:1029C000EF93FF938091E10082FF0BC08091E200C2 +:1029D00082FF07C08091E1008B7F8093E1000E941D +:1029E000FD108091DA0080FF1FC08091D80080FF29 +:1029F0001BC08091DA008E7F8093DA008091D9002D +:102A000080FF0DC080E189BD82E189BD09B400FE6F +:102A1000FDCF81E08093F2010E94CE1005C019BC69 +:102A20001092F2010E94E0108091E10080FF19C035 +:102A30008091E20080FF15C08091E2008E7F80933C +:102A4000E2008091E20080618093E2008091D800F2 +:102A500080628093D80019BC85E08093F2010E94C7 +:102A6000EB108091E10084FF30C08091E20084FF90 +:102A70002CC080E189BD82E189BD09B400FEFDCF93 +:102A80008091D8008F7D8093D8008091E1008F7E67 +:102A90008093E1008091E2008F7E8093E20080913C +:102AA000E20081608093E2008091EE01882311F0C2 +:102AB00084E007C08091E30087FD02C081E001C08F +:102AC00083E08093F2010E94F1108091E10083FF86 +:102AD00029C08091E20083FF25C08091E100877FBB +:102AE0008093E10082E08093F2011092EE018091E8 +:102AF000E1008E7F8093E1008091E2008E7F8093E1 +:102B0000E2008091E20080618093E20042E060E0B8 +:102B100080E00E94D0138091F00088608093F000E4 +:102B20000E94E710FF91EF91BF91AF919F918F911C +:102B30007F916F915F914F913F912F910F900FBEB9 +:102B40000F901F9018951F920F920FB60F9211249D +:102B50002F933F934F935F936F937F938F939F93A5 +:102B6000AF93BF93CF93DF93EF93FF93C091E900AF +:102B7000CF708091EC00D82FD17080FDD0E81092FA +:102B8000E9008091F000877F8093F00078940E94A4 +:102B9000E7151092E9008091F00088608093F000C2 +:102BA000CD2BCF70C093E900FF91EF91DF91CF91D2 +:102BB000BF91AF919F918F917F916F915F914F9155 +:102BC0003F912F910F900FBE0F901F9018951F935C +:102BD000CF93DF93CDB7DEB7AA970FB6F894DEBFD9 +:102BE0000FBECDBFE3EFF1E088E08E0F9091F100D2 +:102BF00091938E13FBCF0E9457118091E80083FFC1 +:102C00001FC18091F3019091F401492F50E04A30A7 +:102C1000510508F015C1FA01EB59FF4F0C94FE2F36 +:102C2000803881F0823809F00BC18091F7018F70F4 +:102C30008093E9008091EB0085FB882780F9109252 +:102C4000E90006C08091EF019091F001911182603E +:102C50009091E800977F9093E8008093F1001092A4 +:102C6000F100C8C0282F2D7F09F0EAC0882319F091 +:102C7000823061F0E5C08091F501813009F0E0C05B +:102C8000933009F080E08093F0012BC08091F50132 +:102C9000811127C08091F7018F7009F4D1C0809312 +:102CA000E9002091EB0020FF1CC0933021F48091BB +:102CB000EB00806214C09091EB0090619093EB0068 +:102CC00021E030E0A90102C0440F551F8A95E2F7C8 +:102CD0004093EA001092EA008091EB0088608093B4 +:102CE000EB001092E9008091E800877F86C0811197 +:102CF000A7C01091F5011F778091E3008078812BA8 +:102D00008093E3008091E800877F8093E8000E9431 +:102D100005148091E80080FFFCCF8091E30080687B +:102D20008093E300111102C082E001C083E0809330 +:102D3000F20186C08058823008F082C08091F5018F +:102D40009091F6018C3D53E0950779F583E08A83F5 +:102D50008AE289834FB7F894DE01139620E03EE0C3 +:102D600051E2E32FF0E050935700E49120FF03C0BD +:102D7000E295EF703F5FEF708E2F90E0EA3010F039 +:102D8000C79601C0C0968D939D932F5F243149F75C +:102D90004FBF8091E800877F8093E8006AE270E08F +:102DA000CE0101960E940C1314C0AE014F5F5F4F1D +:102DB0006091F7010E945312BC01892B09F440C0B5 +:102DC0009091E800977F9093E80089819A810E9412 +:102DD0006F138091E8008B778093E80031C08038D2 +:102DE00079F58091E800877F8093E8008091EE017B +:102DF0008093F1008091E8008E778093E8000E9434 +:102E000005141EC081111CC09091F5019230C0F4D0 +:102E10008091E800877F8093E8009093EE010E9404 +:102E200005148091EE01811106C08091E30087FDB9 +:102E300002C081E001C084E08093F2010E943E1153 +:102E40008091E80083FF0AC08091E800877F80932B +:102E5000E8008091EB0080628093EB00AA960FB6A9 +:102E6000F894DEBF0FBECDBFDF91CF911F910895C3 +:102E7000CF938091F2018823A1F0C091E900CF7037 +:102E80009091EC00892F817090FD80E8C82B109202 +:102E9000E9008091E80083FD0E94E715CF70C093A0 +:102EA000E900CF910895909376018093750108957C +:102EB000E0917501F0917601309721F00190F08159 +:102EC000E02D099480E00895EF92FF920F931F93F5 +:102ED000CF93DF93E0917501F09176013097B1F1D6 +:102EE0008C010280F381E02D09958091D90182FF48 +:102EF0002DC080FF04C082EA98E00E94E008E8014B +:102F000010E18CE9E82E88E0F82E8091D90180FF4D +:102F10000BC088811F928F93FF92EF920E947909D4 +:102F20000F900F900F900F90115021961111EDCF2F +:102F30008091D90180FF0AC08AE998E0DF91CF91A2 +:102F40001F910F91FF90EF900C94E008DF91CF91CB +:102F50001F910F91FF90EF900895E0917501F0910E +:102F60007601309721F00480F581E02D09940895D1 +:102F700020917301309174018217930771F090933F +:102F8000740180937301E0917501F091760130979F +:102F900021F00680F781E02D0994089520917101B8 +:102FA000309172018217930771F0909372018093B0 +:102FB0007101E0917501F0917601309721F0008464 +:102FC000F185E02D0994089508950C94E4170E946A +:102FD00036240E94DB0B0C94FC24CF93C82F8091E5 +:102FE000D90182FF1EC080FF04C08BEB98E00E94D5 +:102FF000E0088091D90180FF0CC01F92CF9386EB2F +:1030000098E09F938F930E9479090F900F900F90F3 +:103010000F908091D90180FF04C084EB98E00E945A +:10302000E0088C2FCF910C948A0FCF92DF92EF9211 +:10303000FF920F931F93CF93DF93CDB7DEB72B97FC +:103040000FB6F894DEBF0FBECDBF0E94F80B88E725 +:10305000C82E81E0D82E00E010E0E02E802F0E94E4 +:10306000240DF60141916F01F42EF826B1F40F5FA3 +:103070001F4F0E30110589F78FEF89838A831B82DA +:103080000E943F248160782F9D838C8349815A81DF +:103090006B818D810E94B81840C09091D90191FF39 +:1030A00004C08B870E942A0D8B8520E030E04F2DD5 +:1030B00050E0922FBA01022E02C0759567950A94CE +:1030C000E2F760FF24C02E83EF8221E030E0690147 +:1030D00002C0CC0CDD1C9A95E2F790E08C219D217A +:1030E000892B09F420E028870E943F248160782FF3 +:1030F0009A8789874E815F8168858A850E94B81882 +:10310000F801E858FE4F8081C826C08206C02F5FB4 +:103110003F4F2630310569F6AACF0E946D281091E5 +:1031200077010E9458171817A1F00E945817809332 +:1031300077012B960FB6F894DEBF0FBECDBFDF919F +:10314000CF911F910F91FF90EF90DF90CF900C9453 +:10315000ED172B960FB6F894DEBF0FBECDBFDF91F3 +:10316000CF911F910F91FF90EF90DF90CF90089536 +:10317000CF93DF93CDB7DEB72B970FB6F894DEBFB2 +:103180000FBECDBF4F83588769877A878B87DE0153 +:10319000119686E0FD0111928A95E9F785E0FE011E +:1031A000379601900D928A95E1F749815A816B819A +:1031B0007C818D819E810E94CE1F2B960FB6F89444 +:1031C000DEBF0FBECDBFDF91CF910895CF9388238F +:1031D00009F4C2C0C82F823859F40E94581781FDE3 +:1031E000BBC089E30E946A220E94492389E30CC084 +:1031F000833879F40E94581780FDAEC083E50E94A1 +:103200006A220E94492383E50E94BD22CF910C943B +:103210004923843859F40E94581782FD9DC087E4E1 +:103220000E946A220E94492387E4EECF8CEF8C0F24 +:10323000813A48F48C2F0E94002D81118DC08C2F73 +:103240000E946A22E3CF80E28C0F883048F4C77076 +:1032500081E001C0880FCA95EAF70E941223D6CFF9 +:103260008BE58C0F833078F4C53A29F0C63A31F0FB +:1032700083E890E005C081E890E002C082E890E039 +:10328000CF910C94B81788E58C0F833108F064C097 +:10329000C83A39F1C93A41F1CA3A49F1CB3A51F148 +:1032A000CC3A59F1CD3A61F1C03B69F1CE3A71F1B6 +:1032B000CF3A79F1C13B81F1C23B89F1C33B91F136 +:1032C000C43B99F1C53BA1F1C63BA9F1C73BB1F1A4 +:1032D000C83BB9F1C93BC1F1CA3BC9F180E090E0FC +:1032E00038C082EE90E035C089EE90E032C08AEEC0 +:1032F00090E02FC085EB90E02CC086EB90E029C0D9 +:1033000087EB90E026C08CEC90E023C08DEC90E041 +:1033100020C083E891E01DC08AE891E01AC082E9EC +:1033200091E017C084E991E014C081E292E011C0FD +:1033300083E292E00EC084E292E00BC085E292E06C +:1033400008C086E292E005C087E292E002C08AE20D +:1033500092E0CF910C94CE17CF910895882309F471 +:103360004BC0823859F40E94581781FF45C089E349 +:103370000E946A220E94492389E30CC0833871F4B9 +:103380000E94581780FF38C083E50E946A220E947D +:10339000492383E50E94BD220C944923843859F4C3 +:1033A0000E94581782FF28C087E40E946A220E9468 +:1033B000492387E4EFCF9CEF980F913A58F390E2BE +:1033C000980F983050F4877091E001C0990F8A955A +:1033D000EAF7892F0E941823DFCF9BE5980F9330DF +:1033E00020F480E090E00C94B817885A833120F4E0 +:1033F00080E090E00C94CE170895882321F00E947D +:1034000012230C9449230895882321F00E94182345 +:103410000C9449230895BF92CF92DF92EF92FF92CE +:103420000F931F93CF93DF9300D000D000D0CDB780 +:10343000DEB725E0FC01DE01119601900D922A9580 +:10344000E1F7FC01408131810281258122952F70B5 +:1034500063817481672B09F4E5C23F3F19F44F3F44 +:1034600009F4E0C27C0149833A8389819A812E83E1 +:103470000E942922182FB92E0E9428220E94EF2094 +:10348000EB2DE295EF70F0E0E159FF4F2E810C94A7 +:10349000FE2F8B2D807F9B2D9F70F92E882319F096 +:1034A000F29480EFF822002349F0FF2009F467C26C +:1034B0008F2D0E9422230E94492361C2812F0E94E6 +:1034C000AE19FF2009F4AEC28F2D0E942823269644 +:1034D0000FB6F894DEBF0FBECDBFDF91CF911F9125 +:1034E0000F91FF90EF90DF90CF90BF900C94492305 +:1034F0003B2D307F8B2D8F70303211F08295807F85 +:10350000112319F0113021F12CC00023B9F022232E +:1035100009F4A0C1213009F09DC126960FB6F89498 +:10352000DEBF0FBECDBFDF91CF911F910F91FF90F6 +:10353000EF90DF90CF90BF900C943223222319F0AC +:10354000213009F46FC28E830E9435238E8196C18B +:10355000002321F0223008F065C27CC1211162C233 +:103560008DC1002321F0222309F474C108C2222353 +:1035700009F484C119C22B2D26952695237030E0BD +:103580002115310521F021303105D1F04BC2002346 +:1035900021F0812F9B2D937002C080E090E0269651 +:1035A0000FB6F894DEBF0FBECDBFDF91CF911F9154 +:1035B0000F91FF90EF90DF90CF90BF900C94B817D1 +:1035C000002321F0812F9B2D937002C080E090E0BA +:1035D00026960FB6F894DEBF0FBECDBFDF91CF9118 +:1035E0001F910F91FF90EF90DF90CF90BF900C94C0 +:1035F000CE17812F002319F00E94F32602C00E94EB +:103600005B2726960FB6F894DEBF0FBECDBFDF91C5 +:10361000CF911F910F91FF90EF90DF90CF90BF90CF +:103620000C94E0278B2D837009F07BC00111FAC147 +:10363000812F829586958770880F880F912F9F70B4 +:10364000C92ED12CE12CF12C082E04C0CC0CDD1C91 +:10365000EE1CFF1C0A94D2F714FF12C04FE050E09A +:1036600060E070E004C0440F551F661F771F8A9505 +:10367000D2F7CB01BA01609570958095909503C003 +:1036800060E070E0CB012B2D269526952370422F0C +:1036900050E042305105D9F04330510569F16C29B1 +:1036A0007D298E299F294130510551F126960FB66B +:1036B000F894DEBF0FBECDBFDF91CF911F910F9168 +:1036C000FF90EF90DF90CF90BF900C9416216C2963 +:1036D0007D298E299F2926960FB6F894DEBF0FBE4E +:1036E000CDBFDF91CF911F910F91FF90EF90DF90B1 +:1036F000CF90BF900C9432210E941621C701B601D1 +:1037000026960FB6F894DEBF0FBECDBFDF91CF91E6 +:103710001F910F91FF90EF90DF90CF90BF900C948E +:10372000FA20002319F08B2D817001C08695882323 +:1037300009F478C1812F829586958770880F880F4C +:10374000912F9F70C92ED12CE12CF12C082E04C092 +:10375000CC0CDD1CEE1CFF1C0A94D2F714FF12C027 +:103760004FE050E060E070E004C0440F551F661F5A +:10377000771F8A95D2F7CB01BA0160957095809535 +:10378000909503C060E070E0CB012B2D2695269527 +:103790002370422F50E042305105D9F0433051059B +:1037A00069F16C297D298E299F294130510551F1FC +:1037B00026960FB6F894DEBF0FBECDBFDF91CF9136 +:1037C0001F910F91FF90EF90DF90CF90BF900C94DE +:1037D000F0216C297D298E299F2926960FB6F89411 +:1037E000DEBF0FBECDBFDF91CF911F910F91FF9034 +:1037F000EF90DF90CF90BF900C940C220E94F021AC +:10380000C701B60126960FB6F894DEBF0FBECDBF36 +:10381000DF91CF911F910F91FF90EF90DF90CF90AC +:10382000BF900C94D421103FD1F118F4103E50F405 +:10383000A1C0123F09F463C008F44CC0133F09F45F +:1038400073C098C01F708B2D8F710023A1F00E9450 +:103850006D21812F26960FB6F894DEBF0FBECDBF27 +:10386000DF91CF911F910F91FF90EF90DF90CF905C +:10387000BF900C94FD190E948E21812F26960FB6C1 +:10388000F894DEBF0FBECDBFDF91CF911F910F9196 +:10389000FF90EF90DF90CF90BF900C94041A00231C +:1038A000A9F02111BFC08B2D8F7126960FB6F89409 +:1038B000DEBF0FBECDBFDF91CF911F910F91FF9063 +:1038C000EF90DF90CF90BF900C94B321223008F09E +:1038D000A9C0E9CF0023A9F08B2D8F7126960FB6D2 +:1038E000F894DEBF0FBECDBFDF91CF911F910F9136 +:1038F000FF90EF90DF90CF90BF900C946D2100234C +:1039000059F38B2D8F7126960FB6F894DEBF0FBE3C +:10391000CDBFDF91CF911F910F91FF90EF90DF907E +:10392000CF90BF900C948E21002399F08B2D8F7136 +:1039300026960FB6F894DEBF0FBECDBFDF91CF91B4 +:103940001F910F91FF90EF90DF90CF90BF900C945C +:10395000582126960FB6F894DEBF0FBECDBFDF917B +:10396000CF911F910F91FF90EF90DF90CF90BF907C +:103970000C944E210023A9F0222309F4ADCF812F0E +:1039800026960FB6F894DEBF0FBECDBFDF91CF9164 +:103990001F910F91FF90EF90DF90CF90BF900C940C +:1039A000E618222309F4ADCF812F26960FB6F8949E +:1039B000DEBF0FBECDBFDF91CF911F910F91FF9062 +:1039C000EF90DF90CF90BF900C94AE194B2D4F70BD +:1039D000612FC7010E94820926960FB6F894DEBFB8 +:1039E0000FBECDBFDF91CF911F910F91FF90EF9050 +:1039F000DF90CF90BF900C9472204B2D4F70612FB1 +:103A0000C70126960FB6F894DEBF0FBECDBFDF917B +:103A1000CF911F910F91FF90EF90DF90CF90BF90CB +:103A20000C94300E26960FB6F894DEBF0FBECDBFB5 +:103A3000DF91CF911F910F91FF90EF90DF90CF908A +:103A4000BF9008950E942F230E9404230E944923BF +:103A50000E9413290E94E02780E090E00E94B8179E +:103A600080E090E00C94CE170E941F230C94221D3E +:103A70000E942922292F22952F7030E02C30310509 +:103A80004CF42A3031056CF42250310922303105D2 +:103A900088F407C02C30310549F02F30310531F062 +:103AA00009C0803E48F0803F29F406C093FB882778 +:103AB00080F9089580E0089581E00895CF93DF9321 +:103AC00000D000D01F92CDB7DEB70F900F900F90AF +:103AD0000F900F90DF91CF910895CF93DF9300D097 +:103AE00000D000D0CDB7DEB726960FB6F894DEBF73 +:103AF0000FBECDBFDF91CF9108951F93CF93DF937A +:103B0000C091860116E080918701C81799F0D0E036 +:103B10001C9FF0011D9FF00D1124E857FE4F4081BE +:103B2000518162817381848195810E946D1D2196EE +:103B3000C770E9CFDF91CF911F9108954091B801EF +:103B40005091B9016091BA017091BB018091BC01A3 +:103B50009091BD010C946D1D8091BD0182958F7077 +:103B600009F054C08091BA01882309F44FC08091B4 +:103B70008601A09187016091B8017091B9014091CF +:103B8000BB015091BC01B6E08A1709F43FC090E038 +:103B900041155105C1F17F3F11F46F3FA1F1B89F6D +:103BA000F001B99FF00D1124E857FE4F21817213E7 +:103BB0002AC02081621327C02281211124C02381C1 +:103BC00034812417350710F421503109241B350B9B +:103BD000283C3105C0F42091BD012F702061209355 +:103BE000BD0126E0289FF001299FF00D1124E35725 +:103BF000FE4F80818F708061808388EB91E00E940E +:103C00000B1A0C947D1D01968770BECF0895CF923C +:103C1000DF92EF92FF920F931F93CF93DF93CDB775 +:103C2000DEB762970FB6F894DEBF0FBECDBF8C0132 +:103C300085E0F801DE011D9601900D928A95E1F76D +:103C4000D8014C9111965C91119712966C91129734 +:103C50001396CD90DC9014973091B8017091B90112 +:103C60008091BB019091BC01009709F46BC17F3F2B +:103C700019F43F3F09F466C1E090BA01EE2009F45F +:103C8000C0C02091BD01C816D90628F0F601E81B76 +:103C9000F90BCF0104C0809590958C0D9D1DFF24DC +:103CA000F394883C910578F0F12C207F09F0C6C090 +:103CB0007C2DD98AC88A89890E945E1D88EB91E093 +:103CC0000E940B1AB1C0822F807F09F046C0751385 +:103CD00014C0341312C0611110C02F7020612093E2 +:103CE000BD010E949E1D88EB91E00E940B1A8091FD +:103CF000BD01D80115968C932EC0CD2819F15F3FD8 +:103D000011F44F3FF9F0F62E61111CC0809186012D +:103D10002091870136E0821709F45AC090E0389F5D +:103D2000F001399FF00D1124E857FE4F71815713B0 +:103D300006C07081471303C07281711103C00196E0 +:103D40008770E9CFF62E662309F418C18091BD0172 +:103D500081608093BD01F12C11C1751308C034132B +:103D600006C0611104C08091BD01D801C3C04D8758 +:103D70005E878D859E856A8B0E94381D6A8988239F +:103D8000E1F16623D1F12091BD01822F82958F70E0 +:103D900090E0029774F08091B8019091B9019887F2 +:103DA0008F831986DB86CA862C87CE0107960E94F0 +:103DB0000B1A86E0F801A8EBB1E001900D928A950C +:103DC000E1F70E94AC1D0E949E1DFF24F394D6C013 +:103DD0004D875E878D859E850E942922292F2295F9 +:103DE0002F7030E0223031050CF0BCC09F7009F01C +:103DF000B6C0805E883008F4C1C0C8010E940B1AAA +:103E0000E4CFC816D90608F453C0F601E81BF90B35 +:103E1000CF01883C910508F450C0F12C7C2DD98A43 +:103E2000C88A89890E945E1DE8EBF1E086E0DF0127 +:103E30001D928A95E9F70E949E1DA0C0751314C0BB +:103E4000341312C0611110C08091BD01F801858347 +:103E5000C8010E940B1A86E0E8EBF1E0DF011D9239 +:103E60008A95E9F7FE2C8AC04D875E878D859E85F1 +:103E70006A8B0E94381D6A89882309F4BECF6623A5 +:103E800009F4BBCF2091BD01822F82958F7090E005 +:103E900002970CF48ECF8091B8019091B9019A836A +:103EA00089831B82DD82CC822E83CE0101967FCF57 +:103EB000809590958C0D9D1DACCFF62E662309F450 +:103EC0009CCF75132EC034132CC02091BD0120FD52 +:103ED0001FC0822F82958F70D9F0D80115962C9330 +:103EE00015978F3049F08F5F982F9295907F822F92 +:103EF0008F70892B15968C93C8010E940B1A86E04F +:103F0000F801A8EBB1E001900D928A95E1F793CF0B +:103F100086E0F801A8EBB1E001900D928A95E1F7F7 +:103F20002DC04D875E878D859E850E94381D81112D +:103F300040CF8091BD0181608093BD01C8010E9486 +:103F40000B1A1CC0662309F458CF4D875E878D85F8 +:103F50009E850E94381D882309F44FCF2ACF8111F6 +:103F600048CF0CC0243031050CF047CF9F7009F4C6 +:103F700040CFF8019581907F09F03BCF8F2D62965D +:103F80000FB6F894DEBF0FBECDBFDF91CF911F916A +:103F90000F91FF90EF90DF90CF9008951F93CF93F4 +:103FA000DF93CDB7DEB72C970FB6F894DEBF0FBE08 +:103FB000CDBF4F83588769877A878B879C87CE01CF +:103FC00007960E94071E882369F08F8198852A85AD +:103FD0003B85232BF1F19F3F09F063C08F3F09F030 +:103FE00060C037C086E0FE013796DE011196019071 +:103FF0000D928A95E1F76F817885EA85FB85309788 +:1040000041F17F3F11F46F3F21F12091870130E0B2 +:10401000C9010196877099274091860150E0841765 +:10402000950709F447C069837A83FD83EC8396E0A2 +:10403000929FD001939FB00D1124A857BE4FFE014F +:10404000319601900D929A95E1F7809387010E9435 +:104050007D1D16E080918601909187018917C1F13D +:10406000189FC001112488579E4F0E94071E882365 +:1040700079F1E09186011E9FF0011124E857FE4F6F +:104080004081518162817381848195810E946D1D7F +:104090008091860190E00196877099278093860130 +:1040A000D9CF4F81588569857A858B859C850E94FB +:1040B0006D1DCFCF0E94341D109287011092860192 +:1040C000E8EBF1E086E0DF011D928A95E9F7C1CFC8 +:1040D0002C960FB6F894DEBF0FBECDBFDF91CF9107 +:1040E0001F910895EF92FF920F931F93CF93DF9349 +:1040F0008C01892B09F46CC0F12CEE24E394E801C7 +:104100002196F8018491843740F4843008F051C03E +:10411000813081F0823019F15BC0853709F444C0E9 +:10412000A8F19CE7980F903708F052C08F770E9453 +:10413000AE1941C00E5F1F4FFE01C49180E28C0F8B +:10414000883048F4C7708E2D01C0880FCA95EAF7F1 +:104150000E94222314C08C2F0E94E6182DC00E5FEF +:104160001F4FFE01C49180E28C0F883058F4C77055 +:104170008E2D01C0880FCA95EAF70E9428230E945D +:1041800049231AC08C2F0E94AE1916C00E5F1F4F14 +:10419000FE01C491CC2381F08FE99FE00197F1F7F4 +:1041A00000C00000C150F6CF0E5F1F4FFE01F4901B +:1041B00003C00E94E6188E018F2D882309F49FCF3B +:1041C000EFE9FFE03197F1F700C000008150F5CF33 +:1041D000DF91CF911F910F91FF90EF900895089577 +:1041E0006093C2017093C3018093C4019093C50191 +:1041F0000C94221D0F931F930091C2011091C301D3 +:104200002091C4013091C501DC01CB01802B912BA1 +:10421000A22BB32B8093C2019093C301A093C4013E +:10422000B093C5011F910F910C94221D0F931F9302 +:104230000091C2011091C3012091C4013091C501C8 +:10424000DC01CB0180239123A223B3238093C201FD +:104250009093C301A093C401B093C5011F910F9126 +:104260000C94221D0F931F930091C2011091C30162 +:104270002091C4013091C501DC01CB018027912739 +:10428000A227B3278093C2019093C301A093C401D6 +:10429000B093C5011F910F910C94221D1092BE0185 +:1042A0001092BF011092C0011092C1010C94221D06 +:1042B00041E050E060E070E004C0440F551F661F0D +:1042C000771F8A95D2F74093BE015093BF01609348 +:1042D000C0017093C1010C94221D41E050E060E0E8 +:1042E00070E004C0440F551F661F771F8A95D2F7F0 +:1042F0008091BE019091BF01A091C001B091C10118 +:10430000482B592B6A2B7B2B4093BE015093BF0146 +:104310006093C0017093C1010C94221D41E050E0F4 +:1043200060E070E004C0440F551F661F771F8A9538 +:10433000D2F740955095609570958091BE0190910F +:10434000BF01A091C001B091C101482359236A2344 +:104350007B234093BE015093BF016093C0017093D3 +:10436000C1010C94221D41E050E060E070E004C007 +:10437000440F551F661F771F8A95D2F78091BE01A3 +:104380009091BF01A091C001B091C1014827592768 +:104390006A277B274093BE015093BF016093C00101 +:1043A0007093C1010C94221D0F931F930091BE01C5 +:1043B0001091BF012091C0013091C101DC01CB01FE +:1043C000802B912BA22BB32B8093BE019093BF0126 +:1043D000A093C001B093C1011F910F910C94221DB5 +:1043E0000F931F930091BE011091BF012091C00156 +:1043F0003091C101DC01CB0180239123A223B3239F +:104400008093BE019093BF01A093C001B093C101FE +:104410001F910F910C94221D0F931F930091BE01C9 +:104420001091BF012091C0013091C101DC01CB018D +:1044300080279127A227B3278093BE019093BF01C5 +:10444000A093C001B093C1011F910F910C94221D44 +:104450000895CF92DF92EF92FF920F931F93CF9325 +:10446000DF938C01C090C201D090C301E090C401E1 +:10447000F090C5014091BE015091BF016091C00113 +:104480007091C101C42AD52AE62AF72ACFE1D0E0EB +:10449000D701C6010C2E04C0B695A79597958795B0 +:1044A0000A94D2F780FF07C0B8018C2F0E94530EE8 +:1044B0008130910531F4219758F7B80180E00E94CE +:1044C000530EDF91CF911F910F91FF90EF90DF90EE +:1044D000CF90089590910C01992321F090910D01B6 +:1044E000911109C020910E0130910F01F90132960E +:1044F0009FEF40E030C0982F9695969596959F3007 +:10450000A0F4E0910E01F0910F01E90FF11D877009 +:1045100021E030E0A90102C0440F551F8A95E2F75F +:10452000CA019181892B818308959091D90190FFCF +:1045300023C01F928F938CEE98E09F938F930E94DD +:1045400079090F900F900F900F9008959F3F39F0C9 +:104550004F5F4E3041F051915813F8CF0DC05111BB +:10456000F7CF942FF5CF9F3F39F0F901E90FF11DF7 +:1045700097FDFA9582830895089590910C019923EF +:1045800021F090910D01911109C020910E013091FF +:104590000F01F9013296205F3F4F30C0982F96955A +:1045A000969596959F30A8F4E0910E01F0910F0139 +:1045B000E90FF11D877021E030E0A90102C0440F2E +:1045C000551F8A95E2F7CA018095918189238183DD +:1045D00008959091D90190FF16C01F928F938EEC91 +:1045E00098E09F938F930E9479090F900F900F90FE +:1045F0000F9008953196E217F30729F090819813F0 +:10460000F9CF1082F7CF089581E090E0E0910E019C +:10461000F0910F01E80FF91F10820196803191058A +:10462000A9F708959091D801892B8093D801089516 +:1046300080959091D80189238093D8010895109294 +:10464000D80108959091D701892B8093D7010895BF +:1046500080959091D70189238093D7010895109276 +:10466000D70108958093C60108951092C601089558 +:1046700080910E0190910F01FC0131969C01205F09 +:104680003F4F80E0919191118F5FE217F307D1F7CF +:104690000895E0910E01F0910F018091D80180837F +:1046A000E0910E01F0910F0190818091D701892B4B +:1046B00080838091C601882361F0E0910E01F09122 +:1046C0000F019081892B80830E94382381111092E1 +:1046D000C60180910E0190910F010C946417909384 +:1046E0003B0180933A010895CF92DF92EF92FF92BF +:1046F0006C01EE24FF24C114D104E104F10421F083 +:10470000C701B60120E101C020E0C72ED82EE92E56 +:10471000FF24C114D104E104F10419F0285FC7019A +:10472000B6016B017C0154E0F694E794D794C794EA +:104730005A95D1F7C114D104E104F10419F02C5FAA +:10474000C701B6016B017C0142E0F694E794D7946F +:10475000C7944A95D1F7C114D104E104F10419F0CA +:104760002E5FC701B601DC01CB01B695A7959795E1 +:104770008795892B8A2B8B2B09F02F5F822FFF9037 +:10478000EF90DF90CF9008958295982F9C7C392FE1 +:1047900036953695282F237344E0249FC0011124B9 +:1047A000932F982B292F2A7A2695892F8575880F84 +:1047B000822B08951F93CF93DF931F92CDB7DEB75F +:1047C00099830E94C423182F9981892F0E94C423A2 +:1047D000212F30E0322F2227A901482BCA010F9048 +:1047E000DF91CF911F9108958091F201843009F1FA +:1047F0001092DA0120E488E190E00FB6F894A895D1 +:10480000809360000FBE2093600083B7817F846037 +:1048100083BF83B7816083BF7894889583B78E7F89 +:1048200083BF88E10FB6F894809360001092600017 +:104830000FBE089508950895CF930E941A240E94F0 +:10484000F80B0E941B24C0E08C2F0E94240D8111C4 +:1048500004C0CF5FCE30C1F701C081E0CF91089591 +:104860000E94341D0E9458170C948A0F82E084BD68 +:1048700093E095BD9AEF97BD80936E0008952FB792 +:10488000F8948091DB019091DC01A091DD01B09161 +:10489000DE012FBF0895CF92DF92EF92FF920F9328 +:1048A0001F932FB7F8944091DB015091DC01609188 +:1048B000DD017091DE012FBF6A017B01EE24FF2430 +:1048C0008C0120E030E0C016D106E206F30610F4B9 +:1048D000415051099A01281B390BC9011F910F91B1 +:1048E000FF90EF90DF90CF9008951F920F920FB638 +:1048F0000F9211248F939F93AF93BF938091DB010D +:104900009091DC01A091DD01B091DE010196A11D25 +:10491000B11D8093DB019093DC01A093DD01B09386 +:10492000DE01BF91AF919F918F910F900FBE0F90BD +:104930001F9018950E945614F8942FEF87EA91E67D +:10494000215080409040E1F700C0000087E090EBEC +:10495000DC018093FB019093FC01A093FD01B093D7 +:10496000FE019CE088E10FB6F894A8958093600062 +:104970000FBE90936000FFCFEF92FF920F931F93B3 +:10498000CF93DF93D82FC0E08C2F0E94240D00E03E +:1049900010E0E82EF12CC701002E02C095958795F6 +:1049A0000A94E2F780FD06C00F5F1F4F0630110525 +:1049B00091F709C0602F7C2F80E00E94310ED81340 +:1049C000F3CF81E004C0CF5FCE30F1F680E0DF911D +:1049D000CF911F910F91FF90EF900895CF93C82F23 +:1049E0008CE20E94BC24882321F08C2FCF910C9460 +:1049F000BC2480E0CF910895CF930E944B26811173 +:104A000002C00E94312681E199E00E94E008C5E6DB +:104A1000C15049F00E94F80B8FE39CE90197F1F730 +:104A200000C00000F5CF8AE099E00E94E00889E22A +:104A30000E94EE24811113C18AE20E94EE248111AA +:104A40000E94312685E00E94EE2481110E949A2462 +:104A50000E9456268093D90187E00E94EE24882385 +:104A6000A9F18BE10E94EE24882351F08091D901B5 +:104A700081FB222720F991E0922790FB81F90EC05B +:104A80008EE00E94EE24882361F08091D90182FBA0 +:104A9000222720F991E0922790FB82F98093D90197 +:104AA00015C080E10E94EE249091D901882341F045 +:104AB00093FB222720F981E0822780FB93F904C031 +:104AC000892F809580FB90F99093D9018091D9012D +:104AD0000E945A260E9468268093EC0180EE0E9474 +:104AE000EE24882341F08091EC01982F909590FB63 +:104AF00080F98093EC0189E30E94EE24882359F029 +:104B00008091EC0181FB222720F991E0922790FB14 +:104B100081F98093EC0182EE0E94EE24882359F003 +:104B20008091EC0182FB222720F991E0922790FBF3 +:104B300082F98093EC0186EE0E94EE24882359F0DE +:104B40008091EC0183FB222720F991E0922790FBD2 +:104B500083F98093EC0183EE0E94EE24882359F0C0 +:104B60008091EC0184FB222720F991E0922790FBB1 +:104B700084F98093EC0185E30E94EE24882359F0A8 +:104B80008091EC0185FB222720F991E0922790FB90 +:104B900085F98093EC0181E30E94EE24882359F08B +:104BA0008091EC0186FB222720F991E0922790FB6F +:104BB00086F98093EC0181E10E94EE24882359F06C +:104BC0008091EC0187FB222720F991E0922790FB4E +:104BD00087F98093EC018091EC010E946C26809112 +:104BE000EC0187FB882780F980930D0187E20E9402 +:104BF000EE24C82F8EE10E94EE248111C2608FE165 +:104C00000E94EE248111C46080E20E94EE24811192 +:104C1000C86081E20E94EE248111C06182E20E949C +:104C2000EE248111C06283E20E94EE248111C064EF +:104C300084E20E94EE24882311F0C06802C0CC23D5 +:104C400029F08C2F0E9463266C2F03C00E945F26E0 +:104C5000682F70E080E090E0CF910C94F020CF912D +:104C600008956DEE7EEF80E090E00E94343060E0C9 +:104C700082E090E00E94263060E083E090E00E94B5 +:104C8000263060E084E090E00E94263060E085E01D +:104C900090E00C94263080E090E00E94203021E0EB +:104CA0008D3E9E4F09F020E0822F089582E090E033 +:104CB0000C941830682F82E090E00C94263083E04A +:104CC00090E00C941830682F83E090E00C9426302C +:104CD00084E090E00C941830682F84E090E00C940D +:104CE00026308091E10180FF0BC06091130185E0C7 +:104CF000689FB001112475956795759567952BC0D0 +:104D000081FF09C06091130185E0689FB001112403 +:104D10007595679520C082FF07C06091130185E0FB +:104D2000689FB001112417C09091E2019923D1F03E +:104D300060911201961788F72091130185E0289F52 +:104D400090011124929FA001939F500D112470E0B7 +:104D5000CA010E94EA2F6038710540F4611571059F +:104D600039F002C065E070E0862F08958FE708955E +:104D700081E008958091E10180FF08C060911101F8 +:104D800070E0759567957595679521C081FF06C0A0 +:104D90006091110170E07595679519C082FF04C09C +:104DA0006091110170E010C09091E2019923C1F06F +:104DB000609110019617A0F780911101899FC001A1 +:104DC000112470E00E94EA2F6038710528F4611503 +:104DD000710521F0862F08958FE7089581E00895E9 +:104DE00061E070E0F4CF803F21F40E94712681954C +:104DF00004C0813F29F40E9471268093E501089543 +:104E0000823F21F40E947126819504C0833F29F4DA +:104E10000E9471268093E4010895893F19F40E944D +:104E2000BA2605C08A3F31F40E94BA268195809344 +:104E3000E60108958B3F21F40E94BA26819504C0B3 +:104E40008C3F29F40E94BA268093E7010895843F9D +:104E500021F48091E301816017C0853F21F48091A6 +:104E6000E301826011C0863F21F48091E3018460F8 +:104E70000BC0873F21F48091E301886005C0883F23 +:104E800031F48091E30180618093E30108958D3FC7 +:104E900021F48091E10181600BC08E3F21F480916B +:104EA000E101826005C08F3F29F48091E1018460B7 +:104EB0008093E1010895803F39F48091E50187FFF7 +:104EC0006CC01092E50169C0813F29F48091E50131 +:104ED0001816BCF362C09091E401823F29F497FF59 +:104EE0005CC01092E40159C0833F19F41916CCF349 +:104EF00054C0893F41F48091E60118160CF04DC072 +:104F00001092E6014AC08A3F29F48091E60187FFAA +:104F100044C0F6CF8B3F39F48091E70187FF3DC055 +:104F20001092E7013AC08C3F29F48091E7011816EE +:104F3000BCF333C0843F21F48091E3018E7F17C01E +:104F4000853F21F48091E3018D7F11C0863F21F4DC +:104F50008091E3018B7F0BC0873F21F48091E301B7 +:104F6000877F05C0883F31F48091E3018F7E809375 +:104F7000E30113C08D3F21F48091E1018E7F0BC0CE +:104F80008E3F21F48091E1018D7F05C08F3F29F490 +:104F90008091E1018B7F8093E1018091E401811197 +:104FA0000EC08091E50181110AC08091E601811156 +:104FB00006C08091E701811102C01092E2010895BC +:104FC0008091D90183FF7EC08DE499E00E94E008C2 +:104FD0008091E3011F928F9388E499E09F938F93D0 +:104FE0000E94790986E499E00E94E0088091E4013A +:104FF000282F332727FD30953F938F9383E499E043 +:105000009F938F930E94790981E499E00E94E008C0 +:105010008091E501282F332727FD30953F938F930B +:105020008EE399E09F938F930E9479098CE399E036 +:105030000E94E0088091E601282F332727FD309554 +:105040003F938F9389E399E09F938F930E9479090F +:1050500087E399E00E94E0088091E701282F332739 +:1050600027FD30953F938F9384E399E09F938F932F +:105070000E94790981E399E00E94E0088091E201B1 +:105080001F928F938EE299E09F938F930E947909EC +:105090008CE299E00E94E0088091E1011F928F93D9 +:1050A00089E299E09F938F930E94790986E299E0C3 +:1050B0000E94E0088DB79EB74C960FB6F8949EBF3D +:1050C0000FBE8DBF83EE91E00E94AD170E943F247A +:1050D0009093E0018093DF0108951F93CF93DF93B6 +:1050E0008091DF019091E0010E944B24AC019091EE +:1050F000E201992321F02091140130E006C02091B3 +:1051000015018AE0289F900111244217530708F4E3 +:1051100086C08091E401C091E501D091E601109133 +:10512000E701811107C0C11176C0D11174C01111FE +:1051300072C075C09F3F19F09F5F9093E2011816EF +:1051400024F40E9471268093E4018091E40187FF9A +:1051500005C00E94712681958093E4011C1624F4F9 +:105160000E9471268093E5018091E50187FF05C0CB +:105170000E94712681958093E5016091E401662388 +:1051800039F1C091E501CC2319F1772767FD7095BE +:10519000872F972F0E94EF2E23E333E343E35FE350 +:1051A0000E94532F0E94BC2E6093E4016C2F77273E +:1051B00067FD7095872F972F0E94EF2E23E333E32F +:1051C00043E35FE30E94532F0E94BC2E6093E501EE +:1051D0001D1624F40E94BA268093E6018091E60110 +:1051E00087FF05C00E94BA2681958093E6011116BB +:1051F00024F40E94BA268093E7018091E70187FF9B +:1052000005C00E94BA2681958093E701DF91CF9176 +:105210001F910C94E0279F3F09F08ECF96CFDF912E +:10522000CF911F910895E3EEF1E085E0DF011D923B +:105230008A95E9F71092E2011092E101089580E762 +:105240009BE00E94E0081F9281E08F931F9285E00F +:105250008F9382E29BE09F938F930E9479090F9036 +:105260000F900F900F900F900F9008958330E9F1F9 +:1052700028F4813061F0823009F10895853009F415 +:1052800062C008F449C0863009F474C00895809162 +:105290001501262F30E0280F311D2F3F310524F452 +:1052A000680F6093150103C08FEF80931501809103 +:1052B00015011F928F938BE59AE072C080911401C3 +:1052C000262F30E0280F311D2F3F310524F4680FC1 +:1052D0006093140103C08FEF809314018091140137 +:1052E0001F928F9389E49AE05BC080911301262F6F +:1052F00030E0280F311D2F3F310524F4680F6093F3 +:10530000130103C08FEF80931301809113011F924B +:105310008F9386E39AE044C080911201262F30E0FB +:10532000280F311D2F3F310524F4680F60931201BF +:1053300003C08FEF80931201809112011F928F930F +:1053400081E29AE02DC080911101262F30E0280FD4 +:10535000311D2F3F310524F4680F6093110103C004 +:105360008FEF80931101809111011F928F9388E03C +:105370009AE016C080911001262F30E0280F311DD1 +:105380002F3F310524F4680F6093100103C08FEFA5 +:1053900080931001809110011F928F938DEE99E000 +:1053A0009F938F930E9479090F900F900F900F9009 +:1053B0000895833081F128F4813059F08230D1F0A2 +:1053C0000895853009F449C0B8F1863009F456C013 +:1053D000089580911501681720F4861B80931501AC +:1053E00002C010921501809115011F928F938EEDCE +:1053F00099E054C080911401681720F4861B8093B3 +:10540000140102C010921401809114011F928F9315 +:105410008CEC99E043C080911301681720F4861B3F +:105420008093130102C010921301809113011F9207 +:105430008F9389EB99E032C080911201681720F4B4 +:10544000861B8093120102C01092120180911201FA +:105450001F928F9384EA99E021C08091110168170F +:1054600020F4861B8093110102C0109211018091DB +:1054700011011F928F938BE899E010C08091100169 +:10548000681720F4861B8093100102C0109210014F +:10549000809110011F928F9380E799E09F938F93E3 +:1054A0000E9479090F900F900F900F900895CF935D +:1054B000C82F1F928F9385E79CE09F938F930E9444 +:1054C000790981E090E0A0E0B0E0BC01CD0104C02A +:1054D000660F771F881F991FCA95D2F70E94F02088 +:1054E0000F900F900F900F90CF910C94341DCF938D +:1054F0008D3109F465C0B0F58E3009F4CCC100F5EA +:10550000873009F49BC1A8F4863009F06DC2809100 +:10551000D901817F8E7F8093D9018AE79CE00E9428 +:10552000E0088CEB90E10E94E00881E08093E901C3 +:1055300080C1883009F44FC08B3009F47CC154C25B +:10554000863109F4F0C138F4803109F4B8C18131F1 +:1055500009F430C249C2893109F4CEC18B3109F452 +:1055600086C142C2853309F437C248F4873209F450 +:1055700033C208F433C2893209F42EC235C28334EF +:1055800038F48A3308F02CC2883309F454C12CC291 +:10559000833409F421C2883409F026C20E94341DE4 +:1055A0008BEA90E10E94E0089FEF23ED80E39150A9 +:1055B00020408040E1F700C000000E949A2439C1D9 +:1055C0008BEC90E10E94E0080E94762E0E94581712 +:1055D0000E948A0F2EC180EC90E10E94E0088BE8C7 +:1055E0009EE00E94E0080E945F261F928F9388E849 +:1055F0009EE09F938F930E94790986E89EE00E9427 +:10560000E0080E945626C82F83E79EE00E94E0082B +:105610001F92CF938EE69EE09F938F930E9479090D +:105620008CE69EE00E94E00882E69EE00E94E00890 +:105630008C2F81701F928F938FE59EE09F938F93A5 +:105640000E9479098DE59EE00E94E00883E59EE0D6 +:105650000E94E008C1FB882780F91F928F9380E5A4 +:105660009EE09F938F930E9479098EE49EE00E94B2 +:10567000E00882E49EE00E94E008C2FB882780F9EF +:105680001F928F938FE39EE09F938F930E947909DF +:105690008DE39EE00E94E00884E39EE00E94E00823 +:1056A000C3FBCC27C0F91F92CF9381E39EE09F9369 +:1056B0008F930E9479098FE29EE00E94E0080E9489 +:1056C0006826C82F8BE19EE00E94E0081F92CF93CE +:1056D00086E19EE09F938F930E94790984E19EE08A +:1056E0000E94E0088BEF9DE00E94E0088C2F817003 +:1056F0001F928F9388EF9DE09F938F930E9479096B +:105700008DB79EB780960FB6F8949EBF0FBE8DBF23 +:1057100086EF9DE00E94E0088FED9DE00E94E0088A +:10572000C1FB882780F91F928F938CED9DE09F939A +:105730008F930E9479098AED9DE00E94E00888EC31 +:105740009DE00E94E008C2FB882780F91F928F939A +:1057500085EC9DE09F938F930E94790983EC9DE0F7 +:105760000E94E00881EB9DE00E94E008C3FB8827CF +:1057700080F91F928F938EEA9DE09F938F930E94F2 +:1057800079098CEA9DE00E94E00882EA9DE00E948F +:10579000E008C4FB882780F91F928F938FE99DE072 +:1057A0009F938F930E9479098DE99DE00E94E00804 +:1057B0008BE89DE00E94E008C5FB882780F91F92D6 +:1057C0008F9388E89DE09F938F930E94790986E8E4 +:1057D0009DE00E94E0088AE69DE00E94E008C6FB8A +:1057E000882780F91F928F9387E69DE09F938F9380 +:1057F0000E94790985E69DE00E94E0088DE59DE024 +:105800000E94E008C7FBCC27C0F91F92CF938AE51E +:105810009DE09F938F930E94790988E59DE00E9407 +:10582000E0088DB79EB74C960FB6F8949EBF0FBE9A +:105830008DBFC1E0DEC081EA9CE05BC08091D901F0 +:10584000C82FC17080FF09C08EE990E10E94E00876 +:105850008091D901817F8E7F47C082E990E10E94CB +:10586000E0088091D90181608093D901E2CF9091C5 +:10587000D90191FBCC27C0F981E0C827892FC0FB53 +:1058800081F98093D901CC2319F085E890E127C0F4 +:1058900087E790E12EC09091D90192FBCC27C0F907 +:1058A00081E0C827892FC0FB82F98093D901CC23DE +:1058B00019F088E690E113C088E590E11AC0909154 +:1058C000D90193FBCC27C0F981E0C827892FC0FB01 +:1058D00083F98093D901CC2351F08CE490E10E94AC +:1058E000E0088091D90181608093D90182C08FE363 +:1058F00090E10E94E0089DCF80E390E10E94E008E3 +:1059000084E090E10E94E00887EC9FE00E94E008BC +:105910008AE99FE00E94E00886E59FE00E94E00897 +:105920008BE29FE0E6CF8DE19FE00E94E0080E94BD +:1059300058171F928F9383E09FE09F938F930E944D +:10594000790980910C011F928F938CEE9EE09F93BA +:105950008F930E947909809170011F928F9389ED36 +:105960009EE09F938F930E94790980910D011F9271 +:105970008F9386EC9EE09F938F930E94790980918C +:10598000DB019091DC01A091DD01B091DE01BF93BC +:10599000AF939F938F9382EB9EE09F938F930E9490 +:1059A00079098DB79EB746960FB6F8949EBF0FBE85 +:1059B0008DBF3FCF0E94341DC0910D0181E0C827EB +:1059C000C0930D01CC2329F088EA9EE00E94E008F4 +:1059D00010C08DE99EE08DCF80E003C08D5101C0E5 +:1059E00089530E94572A25CF8BE99EE00E94E00848 +:1059F000C0E08C2FCF91089580E0089580E0089555 +:105A0000CF93C82F8091E901813081F020F082305E +:105A100009F44FC045C1E0910E01F0910F01808162 +:105A2000813169F0823209F03DC109C0E0910E0177 +:105A3000F0910F018081813111F0823261F48C2F5D +:105A40000E94FC2C811104C08C2F0E94772A2FC049 +:105A500081E090E02CC08C2F0E94FE2C811126C08A +:105A6000C431E1F070F4CB3081F0C031D1F40E9448 +:105A70001F298DE69CE00E94E00882E08093E90106 +:105A800015C0C93259F0C83361F48AE79CE00E941E +:105A9000E00881E79CE00E94E00808C01092E9015C +:105AA00003C18BE69CE00E94E008FEC081E08170AB +:105AB000FDC0C43220F5CE3108F0C0C0CB3099F122 +:105AC000C8F4C73009F0D2C08AE08093150194E190 +:105AD0009093140193E0909313018093120188E056 +:105AE0008093110188E28093100181E19BE00E9484 +:105AF000E008BFC0C33149F1C431C1F0B7C0CB34F5 +:105B000009F4A9C028F4C93289F0C83361F0AEC0E5 +:105B1000C13509F49EC0C23509F499C0CE3409F0EC +:105B2000A5C06AE09EC00E941F29A3C08091E80121 +:105B3000882319F01092E8019CC08EE19BE00E943E +:105B4000E00881E08093E901B1C088EF9AE00E940B +:105B5000E00886EE9AE00E94E008809115011F920D +:105B60008F9383EE9AE09F938F930E94790981EE41 +:105B70009AE00E94E0088FEC9AE00E94E008809191 +:105B800014011F928F938CEC9AE09F938F930E9445 +:105B900079098AEC9AE00E94E0088BEB9AE00E9477 +:105BA000E008809113011F928F9388EB9AE09F93F6 +:105BB0008F930E94790986EB9AE00E94E00885EABB +:105BC0009AE00E94E008809112011F928F9382EA6E +:105BD0009AE09F938F930E94790980EA9AE00E944D +:105BE000E0088BE89AE00E94E008809111011F9282 +:105BF0008F9388E89AE09F938F930E94790986E8B3 +:105C00009AE00E94E0088FE69AE00E94E008809106 +:105C100010011F928F938CE69AE09F938F930E94BE +:105C200079098AE69AE00E94E0088DB79EB7489607 +:105C30000FB6F8949EBF0FBE8DBF1BC0CE51EC2F88 +:105C4000F0E0E15DFE4F80818093E80112C061E0E9 +:105C500003C061E006C06AE08091E8010E94362935 +:105C600008C08091E8010E94D92903C08FE09BE021 +:105C700013C08091E801882369F01F928F9389E017 +:105C80009BE09F938F930E9479090F900F900F9044 +:105C90000F9004C086E09BE00E94E00881E006C00F +:105CA0001092E90180E002C080E001CFCF91089519 +:105CB000E1E8F0E08081886080838081816080837A +:105CC0008FB7F89493E09093890090ED90938800BB +:105CD0008FBF0895EFE6F0E08081826080830895B1 +:105CE000EFE6F0E080818D7F80830895EFE6F0E0BD +:105CF000908182E08927808308951F920F920FB6CA +:105D00000F9211242F933F934F935F936F937F9341 +:105D10008F939F93AF93BF93EF93FF938091EA018B +:105D20009091EB0101969093EB018093EA01811130 +:105D300003C082E00E948A0FE091EB01E695E695B0 +:105D4000F0E0E552FF4EE4918091EA018E1303C02A +:105D500080E00E948A0FFF91EF91BF91AF919F91D8 +:105D60008F917F916F915F914F913F912F910F9004 +:105D70000FBE0F901F90189504D06894B1118DC07C +:105D8000089570D088F09F5790F0B92F9927B75198 +:105D9000A0F0D1F0660F771F881F991F1AF0BA95EF +:105DA000C9F712C0B13081F077D0B1E0089574C066 +:105DB000672F782F8827B85F39F0B93FCCF38695E5 +:105DC00077956795B395D9F73EF490958095709542 +:105DD00061957F4F8F4F9F4F0895E89409C097FBBF +:105DE0003EF490958095709561957F4F8F4F9F4FB2 +:105DF0009923A9F0F92F96E9BB279395F6958795F6 +:105E000077956795B795F111F8CFFAF4BB0F11F4B8 +:105E100060FF1BC06F5F7F4F8F4F9F4F16C088235F +:105E200011F096E911C0772321F09EE8872F762F95 +:105E300005C0662371F096E8862F70E060E02AF0D6 +:105E40009A95660F771F881FDAF7880F96958795C2 +:105E500097F9089557FD9058440F551F59F05F3F2B +:105E600071F04795880F97FB991F61F09F3F79F07C +:105E700087950895121613061406551FF2CF4695FE +:105E8000F1DF08C0161617061806991FF1CF869580 +:105E90007105610508940895E894BB276627772764 +:105EA000CB0197F908950BD078C069D028F06ED057 +:105EB00018F0952309F05AC05FC01124EECFCADF55 +:105EC000A0F3959FD1F3950F50E0551F629FF0010D +:105ED000729FBB27F00DB11D639FAA27F00DB11D66 +:105EE000AA1F649F6627B00DA11D661F829F2227EF +:105EF000B00DA11D621F739FB00DA11D621F839F76 +:105F0000A00D611D221F749F3327A00D611D231F4B +:105F1000849F600D211D822F762F6A2F11249F5799 +:105F200050408AF0E1F088234AF0EE0FFF1FBB1FBC +:105F3000661F771F881F91505040A9F79E3F51055B +:105F400070F014C0AACF5F3FECF3983EDCF3869567 +:105F500077956795B795F795E7959F5FC1F7FE2B06 +:105F6000880F911D9695879597F9089597F99F67E2 +:105F700080E870E060E008959FEF80EC08950024D1 +:105F80000A941616170618060906089500240A949E +:105F900012161306140605060895092E0394000C24 +:105FA00011F4882352F0BB0F40F4BF2B11F460FFB3 +:105FB00004C06F5F7F4F8F4F9F4F0895991B79E00B +:105FC00004C0991F961708F0961B881F7A95C9F789 +:105FD0008095089597FB072E16F4009407D077FD5F +:105FE00009D00E94043007FC05D03EF490958195BD +:105FF0009F4F0895709561957F4F0895EE0FFF1F95 +:106000000590F491E02D0994AA1BBB1B51E107C038 +:10601000AA1FBB1FA617B70710F0A61BB70B881F38 +:10602000991F5A95A9F780959095BC01CD010895C7 +:10603000F999FECF92BD81BDF89A992780B5089550 +:10604000A8E1B0E042E050E00C943B30262FF999F3 +:10605000FECF1FBA92BD81BD20BD0FB6F894FA9A4B +:10606000F99A0FBE019608950E942630272F0C94AE +:106070002730DC01CB01FC01F999FECF06C0F2BD4F +:10608000E1BDF89A319600B40D9241505040B8F7F6 +:066090000895F894FFCF13 +:1060960020028B0F7C1059102510F10F0101C7014A +:1060A60028080A03140A3F4D3620395B080E08D823 +:1060B60007B8077F07F2060B0724073D075D0701B0 +:0A60C60002030405060708090000A4 :00000001FF From fbfb034337a7b612bfcce00c62c0bdf4cec0d8c2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stephan=20Bo=CC=88sebeck?= Date: Wed, 2 Mar 2016 08:40:38 +0100 Subject: [PATCH 02/45] updated version, changed F-Key-Layout, minor change in code layer --- keyboard/ergodox_ez/keymaps/osx_de/keymap.c | 14 +- keyboard/ergodox_ez/keymaps/osx_de/osx_de.hex | 2946 ++++++++--------- 2 files changed, 1479 insertions(+), 1481 deletions(-) diff --git a/keyboard/ergodox_ez/keymaps/osx_de/keymap.c b/keyboard/ergodox_ez/keymaps/osx_de/keymap.c index e75187202f..4e88376e49 100644 --- a/keyboard/ergodox_ez/keymaps/osx_de/keymap.c +++ b/keyboard/ergodox_ez/keymaps/osx_de/keymap.c @@ -74,15 +74,15 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Keymap 1: Symbol Layer * * ,--------------------------------------------------. ,--------------------------------------------------. - * | | F1 | F2 | F3 | F4 | F5 | | | L5 | F6 | F7 | F8 | F9 | F10 | F11 | + * | | F1 | F2 | F3 | F4 | F5 | F6 | | L5 | F7 | F8 | F9 | F10 | F11 | F12 | * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | | < | > | ! | ? | | | | | \ | [ | ] | | | # | F12 | + * | | < | > | ! | ? | | | | | \ | [ | ] | | | # | ! | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| * | | # | $ | \ | / | . |------| |------| / | ( | ) | { | } | * | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | | ^ | % | | | ~ | | | | & | < | > | " | ' | ? | + * | | | ^ | % | | | ~ | | | | & | < | > | " | ' | ? | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | | | | | | | + | - | . | ! | | + * | | | | | | | + | - | . | ; | | * `----------------------------------' `----------------------------------' * ,-------------. ,-------------. * | | | | | | @@ -104,11 +104,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS,KC_DEL,KC_TRNS, // right hand - M(M_TOGGLE_5), KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, - KC_TRNS, LALT(LSFT(KC_7)), LALT(KC_5), LALT(KC_6), LALT(KC_7), DE_HASH, KC_F12, + M(M_TOGGLE_5), KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, + KC_TRNS, LALT(LSFT(KC_7)), LALT(KC_5), LALT(KC_6), LALT(KC_7), DE_HASH, DE_EXLM, DE_SLSH, DE_LPRN, DE_RPRN, LALT(KC_8), LALT(KC_9), LSFT(DE_PLUS), KC_TRNS, DE_AMPR, KC_GRV, LSFT(KC_GRV), DE_DQOT, DE_QUOT, DE_QST, - DE_PLUS, DE_MINS, KC_DOT, KC_EXLM, KC_TRNS, + DE_PLUS, DE_MINS, KC_DOT, LSFT(DE_COMM), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboard/ergodox_ez/keymaps/osx_de/osx_de.hex b/keyboard/ergodox_ez/keymaps/osx_de/osx_de.hex index 8d74fd599b..5346f1bdf8 100644 --- a/keyboard/ergodox_ez/keymaps/osx_de/osx_de.hex +++ b/keyboard/ergodox_ez/keymaps/osx_de/osx_de.hex @@ -1,19 +1,19 @@ -:100000000C948E080C94D2080C94D2080C94D2084C -:100010000C94D2080C94D2080C94D2080C94D208F8 -:100020000C94D2080C94D2080C94D1140C94A315FF -:100030000C94D2080C94D2080C94D2080C94D208D8 -:100040000C94D2080C947D2E0C94D2080C94D208F7 -:100050000C94D2080C9475240C94D2080C94D208F9 -:100060000C94D2080C94D2080C94D2080C94D208A8 -:100070000C94D2080C94D2080C94D2080C94D20898 -:100080000C94D2080C94D2080C94D2080C94D20888 -:100090000C94D2080C94D2080C94D2080C94D20878 -:1000A0000C94D2080C94D2080C94D20890099A09A6 -:1000B000B209CA09120A180A390A1E0A340A2A0A97 -:1000C0002F0A240AFA09E2093E0A101632162017EE -:1000D0003216201777169A162017EF160217491AAC -:1000E000491A781A781ABB1AF91A121D121D121B16 -:1000F000121D131C131CE61C121D121DFD1C01E118 +:100000000C9485080C94C9080C94C9080C94C90870 +:100010000C94C9080C94C9080C94C9080C94C9081C +:100020000C94C9080C94C9080C94C4140C9496152B +:100030000C94C9080C94C9080C94C9080C94C908FC +:100040000C94C9080C94702E0C94C9080C94C9081F +:100050000C94C9080C9468240C94C9080C94C90821 +:100060000C94C9080C94C9080C94C9080C94C908CC +:100070000C94C9080C94C9080C94C9080C94C908BC +:100080000C94C9080C94C9080C94C9080C94C908AC +:100090000C94C9080C94C9080C94C9080C94C9089C +:1000A0000C94C9080C94C9080C94C90887099109D3 +:1000B000A909C109090A0F0A300A150A2B0A210ADF +:1000C000260A1B0AF109D909350A03162516131742 +:1000D000251613176A168D161317E216F5163C1A15 +:1000E0003C1A6B1A6B1AAE1AEC1A051D051D051B7E +:1000F000051D061C061CD91C051D051DF01C01E173 :100100000137023702E10138023801E201250225F8 :1001100002E20001E10137023702E1013802380151 :10012000E10130023002E10001E10137023702E172 @@ -34,23 +34,23 @@ :100210000004001D710D304D831F001A0016001BD5 :10022000000C304C002000080007000600E1042A02 :10023000002100150009001900E1084A00220017FA -:10024000000A000500000003300130E3000000E276 +:10024000000A000500000003302300E3000000E284 :1002500000000002540230E7000000E60000000445 -:100260005423001C000B00110000002E7F240018F6 -:10027000000D00100050004B0025000C000E003651 -:100280000052002C00260012000F003700510028F9 -:100290000027001300330038714F004E002D002F4F -:1002A000003474E50031810000010001000100010B +:100260005424001C000B00110000002E7F250018F4 +:10027000000D00100050004B0026000C000E003650 +:100280000052002C00270012000F003700510028F8 +:10029000002D001300330038714F004E0031002F45 +:1002A000003474E50030810000010001000100010C :1002B00000010000003A003500310001000100019A :1002C000003B0035022102350001004C003C001EBD :1002D0000224062202010001003D002D0224022416 :1002E00004010001003E000100370011040000017C :1002F000000100010000000100000001000E3001BB -:100300000000000100000001003F00240624022339 -:100310000200000100400022042502350001000116 -:100320000041002304260235023700010042002468 -:100330000425041F021E020100430031002604317F -:1003400002010001004400450001002D02010000EF +:100300000000000100000001004000240624022338 +:1003100002000001004100220425023500300001E6 +:100320000042002304260235023800010043002465 +:100330000425041F02370001004400310026043167 +:10034000023602010045001E0230022D02010000AB :100350000001000100010001000100000001000196 :100360000001000100010001000100F400F200FBA7 :1003700000010001000100F000F100FA000100019D @@ -101,1451 +101,1449 @@ :10064000742073696465206E6F7420726573706FB7 :100650006E64696E670A00747279696E6720746FE0 :10066000207265736574206D637032333031380ADF -:10067000000A44454255473A20656E61626C6564E4 -:100680002E0A005B735D004B6579626F61726420B6 -:1006900073746172742E0A005B575D005B535D00DA -:1006A0005B525D005B445D005B435D0016034500EB -:1006B000720067006F0044006F0078002000450062 -:1006C0005A00000016034500720067006F004400E6 -:1006D0006F007800200045005A0000000403090460 -:1006E00009028D00050100A0FA09040000010301C0 -:1006F0000100092111010001223F000705810308C3 -:10070000000A09040100010301020009211101008E -:1007100001224D000705820308000A0904020001B6 -:1007200003000000092111010001223600070583A2 -:100730000308000A09040300020300000009211154 -:1007400001000122200007058403200001070504A1 -:100750000320000109040400010300000009211125 -:100760000100012239000705850310000112011064 -:100770000100000008EDFE07130100010200010561 -:10078000010906A101050719E029E71500250195D2 -:100790000875018102050819012905950575019162 -:1007A00002950175039101050719002977150025A8 -:1007B00001957875018102C00631FF0974A1010914 -:1007C00075150025FF95207508810209761500250D -:1007D000FF952075089102C005010980A1018502DD -:1007E00016010026B7001A01002AB70075109501FE -:1007F0008100C0050C0901A1018503160100269C9A -:10080000021A01002A9C02751095018100C00501A1 -:100810000902A1010901A100050919012905150015 -:100820002501950575018102950175038101050179 -:10083000093009311581257F95027508810609382F -:100840001581257F950175088106050C0A3802156A -:1008500081257F950175088106C0C005010906A1A3 -:1008600001050719E029E7150025019508750181A3 -:10087000029501750881010508190129059505757D -:100880000191029501750391010507190029FF15D2 -:100890000025FF950675088100C00A0025303258F2 -:1008A00020006B6579626F6172645F7265706F7250 -:1008B000743A20000A0025303258006B6579626F67 -:1008C0006172645F7365745F6C65643A200064658F -:1008D0006C5F6B65795F6269743A2063616E27743F -:1008E0002064656C3A20253032580A006164645FE8 -:1008F0006B65795F6269743A2063616E2774206169 -:1009000064643A20253032580A00646F6E652E0AFE -:1009100000626F6F676D61676963207363616E3A30 -:10092000202E2E2E2000290A002575002F00257567 -:10093000005D280025640020002564002000256457 -:100940000020002564007C0025303258006D6F7552 -:1009500073656B6579205B62746E7C782079207694 -:1009600020685D287265702F61636C293A205B00F6 -:100970006D6B5F776865656C5F74696D655F746FDB -:100980005F6D6178203D2025640A006D6B5F77689C -:1009900065656C5F6D61785F7370656564203D208F -:1009A00025640A006D6B5F74696D655F746F5F6DC0 -:1009B0006178203D2025640A006D6B5F6D61785F72 -:1009C0007370656564203D2025640A006D6B5F6966 -:1009D0006E74657276616C203D2025640A006D6B33 -:1009E0005F64656C6179203D2025640A006D6B5F52 -:1009F000776865656C5F74696D655F746F5F6D6165 -:100A000078203D2025640A006D6B5F776865656C12 -:100A10005F6D61785F7370656564203D2025640AB1 -:100A2000006D6B5F74696D655F746F5F6D617820D9 -:100A30003D2025640A006D6B5F6D61785F737065A2 -:100A40006564203D2025640A006D6B5F696E7465E6 -:100A50007276616C203D2025640A006D6B5F6465D1 -:100A60006C6179203D2025640A000A002575003656 -:100A70003A20776865656C5F74696D655F746F5F58 -:100A80006D61783A20000A00257500353A207768B4 -:100A900065656C5F6D61785F73706565643A2000B1 -:100AA0000A00257500343A2074696D655F746F5FC4 -:100AB0006D61783A20000A00257500333A206D6197 -:100AC000785F73706565643A20000A00257500320E -:100AD0003A20696E74657276616C286D73293A20CC -:100AE000000A00257500313A2064656C6179282A76 -:100AF00031306D73293A20000A092D2056616C753A -:100B00006573202D0A004D3E004D25643E20003FB8 -:100B1000007365742064656661756C740A00433EF9 -:100B2000200077686572652064656C74613A2063A3 -:100B30007572736F723D25642C20776865656C3D16 -:100B400025640A53656520687474703A2F2F656EAA -:100B50002E77696B6970656469612E6F72672F7794 -:100B6000696B692F4D6F7573655F6B6579730A00EB -:100B70000A092D204D6F7573656B6579202D0A4527 -:100B800053432F713A09717569740A313A096465E2 -:100B90006C6179282A31306D73290A323A09696EFD -:100BA00074657276616C286D73290A333A096D6138 -:100BB000785F73706565640A343A0974696D655FBE -:100BC000746F5F6D61780A353A09776865656C5FA7 -:100BD0006D61785F73706565640A363A0977686598 -:100BE000656C5F74696D655F746F5F6D61780A0A2B -:100BF000703A097072696E742076616C7565730A5B -:100C0000643A097365742064656661756C74730A6F -:100C100075703A092B310A646F776E3A092D310AE3 -:100C2000706775703A092B31300A7067646F776EA0 -:100C30003A092D31300A0A7370656564203D2064DD -:100C4000656C7461202A206D61785F7370656564DE -:100C5000202A2028726570656174202F2074696DC8 -:100C6000655F746F5F6D6178290A003F004D3E201B -:100C700000433E20004C25640A000A092D20436FE2 -:100C80006E736F6C65202D0A4553432F713A0971BD -:100C90007569740A6D3A096D6F7573656B65790ACC -:100CA000000A092D204D61676963202D0A643A0905 -:100CB00064656275670A783A096465627567206DD4 -:100CC00061747269780A6B3A096465627567206BB2 -:100CD0006579626F6172640A6D3A0964656275676D -:100CE000206D6F7573650A763A0976657273696F60 -:100CF0006E0A733A097374617475730A633A09630F -:100D00006F6E736F6C65206D6F64650A302D343AB9 -:100D1000096C61796572302D34284631302D4634A6 -:100D2000290A506175733A09626F6F746C6F616460 -:100D300065720A653A09656570726F6D0A6E3A09E7 -:100D40004E4B524F0A7A3A09736C656570204C45D8 -:100D50004420746573740A000A002575002E6E6BBA -:100D6000726F3A20000A002575002E737761705F5C -:100D70006261636B736C6173685F6261636B7370F4 -:100D80006163653A20000A002575002E7377617053 -:100D90005F67726176655F6573633A20000A0025BC -:100DA00075002E6E6F5F6775693A20000A00257521 -:100DB000002E737761705F72616C745F7267756922 -:100DC0003A20000A002575002E737761705F6C6110 -:100DD0006C745F6C6775693A20000A002575002EF7 -:100DE000636170736C6F636B5F746F5F636F6E745E -:100DF000726F6C3A20000A002575002E73776170BF -:100E00005F636F6E74726F6C5F636170736C6F633E -:100E10006B3A20000A0025303258006B65796D610D -:100E2000705F636F6E6669672E7261773A20000AA1 -:100E3000002575002E6D6F7573653A20000A002538 -:100E400075002E6B6579626F6172643A20000A004A -:100E50002575002E6D61747269783A20000A0025AC -:100E600075002E656E61626C653A20000A002530BF -:100E700032580064656275675F636F6E6669672EDE -:100E80007261773A20000A00257500646566617515 -:100E90006C745F6C617965723A20003F004E4B5272 -:100EA0004F3A206F66660A004E4B524F3A206F6EE3 -:100EB0000A0074696D65725F636F756E743A202500 -:100EC00030346C580A006B6579626F6172645F6ED2 -:100ED0006B726F3A2025580A006B6579626F6172F8 -:100EE000645F69646C653A2025580A006B65796215 -:100EF0006F6172645F70726F746F636F6C3A2025FC -:100F0000580A00686F73745F6B6579626F61726411 -:100F10005F6C65647328293A2025580A000A092D58 -:100F200020537461747573202D0A004743433A209F -:100F3000342E392E33204156522D4C4942433A200B -:100F4000312E382E31204156525F415243483A20CB -:100F5000617672350A004F5054494F4E533A204C37 -:100F600055464120424F4F544D41474943204D4F34 -:100F70005553454B45592045585452414B455920EE -:100F8000434F4E534F4C4520434F4D4D414E44200F -:100F90004E4B524F203531320A004255494C443AAB -:100FA00020666437326134362D6469727479202882 -:100FB00032313A35313A3231204A616E20323420B2 -:100FC00032303136290A005649443A2030784645B5 -:100FD0004544284572676F446F7820455A29205050 -:100FE00049443A20307831333037284572676F44AE -:100FF0006F7820455A29205645523A2030783030B3 -:1010000030310A00444553433A20742E6D2E6B2E26 -:10101000206B6579626F617264206669726D7761B9 -:10102000726520666F72204572676F646F780A0080 -:101030000A092D2056657273696F6E202D0A000A09 -:101040006D6F7573653A206F66660A000A6D6F757D -:1010500073653A206F6E0A000A6B6579626F617280 -:10106000643A206F66660A000A6B6579626F617286 -:10107000643A206F6E0A000A6D61747269783A20D2 -:101080006F66660A000A6D61747269783A206F6E45 -:101090000A000A64656275673A206F6E0A000A6486 -:1010A000656275673A206F66660A000A0A626F6FAA -:1010B000746C6F616465722E2E2E2000433E2000FA -:1010C0006565636F6E6669673A0A00536C656570A3 -:1010D000204C454420746573740A00000000000031 -:1010E000000000000000010204060A0F17202C3A3D -:1010F0004A5D71879DB3C7DAE9F5FCFFFCF5E9DAD3 -:10110000C7B39D87715D4A3A2C20170F0A06040267 -:1011100001000000000000000000000011241FBEBC -:10112000CFEFDAE0DEBFCDBF04B603FE24C080916E -:10113000FB019091FC01A091FD01B091FE0187306F -:10114000904BA740B04BB9F41092FB011092FC01F8 -:101150001092FD011092FE0114BE84B7877F84BFF8 -:1011600088E10FB6F89480936000109260000FBE83 -:10117000E0E0FFE3099511E0A0E0B1E0E6E9F0E688 -:1011800002C005900D92AA33B107D9F711E0AAE386 -:10119000B1E001C01D92AB3FB107E1F70E94091217 -:1011A0000C9449300C940000FF93EF93E0913A01C6 -:1011B000F0913B01309709F00995EF91FF91089567 -:1011C000FC018591803011F0EFDFFBCF0895FF2700 -:1011D000E0E230E247FF0CC0419597FF09C0EDE225 -:1011E0006095709580959095611D711D811D911D73 -:1011F00027FF02C0219530E350E2AA27660F771F30 -:10120000881F991FAA1FA41710F0A41B63955A9555 -:10121000A9F7AA3008F0A95FA05DAF93F395611517 -:1012200071058105910541F7ED3211F4EF93F395C6 -:10123000F21718F43F93F395FBCF8F91B5DFFA9532 -:10124000E1F70895E991F9918591803021F0853297 -:1012500019F0AADFF9CF089520E0E89455915532AE -:10126000C1F3503311F4689455915A3348F45053F4 -:1012700090F3220F022E220F220F200D250FF4CF04 -:101280000EF4219589919991533619F3533729F129 -:10129000533559F1BC0188279927E8945C3621F42D -:1012A0008991999168945591543639F446EF7EF0BE -:1012B00077FF0DC08FEF9FEF0AC055374AE039F036 -:1012C000583540E121F0523642E009F00895FF938D -:1012D000EF937DDFEF91FF91B7CFFF93EF93FC0189 -:1012E00081918030B9F360DFFBCFFF93EF9368DF2C -:1012F000F1CFDF93CF93CDB7DEB72596A3DFCF91A4 -:10130000DF910895462F50E04F30510508F0DEC0C0 -:10131000DC01FA01EA5AFF4F12968C910C94FE2FD1 -:10132000882321F085EE0E94E618D0C085EE0E9449 -:10133000AE19CCC0882349F00E943F2490933D0110 -:1013400080933C0188EF91E0089580913C01909159 -:101350003D010E944B24873991050CF0A8C08AEE0C -:1013600091E00895882349F00E943F2490933D0125 -:1013700080933C0187EE91E0089580913C0190912B -:101380003D010E944B24873991050CF093C089EDF3 -:1013900091E00895882349F00E943F2490933D01F5 -:1013A00080933C0182ED91E0089580913C01909101 -:1013B0003D010E944B24873991050CF07EC080ECE2 -:1013C00091E00895882349F00E943F2490933D01C5 -:1013D00080933C018BEB91E0089580913C019091CA -:1013E0003D010E944B24873991050CF069C08DEABC -:1013F00091E00895882349F00E943F2490933D0195 -:1014000080933C0188EA91E0089580913C0190919D -:101410003D010E944B24873991050CF054C08AE9A4 -:1014200091E00895882309F451C085E891E008957A -:10143000882309F44BC080E791E00895882309F4DC -:1014400045C08BE591E00895882309F43FC086E408 -:1014500091E008958823D1F18DE391E008958823E8 -:10146000A9F188E291E00895882381F183E191E078 -:101470000895882359F18EEF90E00895882331F183 -:101480008091BE019091BF01A091C001B091C101B6 -:1014900020E2822780729927AA27BB278093BE016A -:1014A0009093BF01A093C001B093C1010FC085EF1D -:1014B00091E0089584EE91E008958BEC91E0089519 -:1014C00086EB91E0089583EA91E0089580E090E052 -:1014D000089508956091BE017091BF018091C0018F -:1014E0009091C1010E94742356985E9825982D987A -:1014F00026982E9827982F98833099F028F48130D9 -:1015000041F0823049F00895843049F0853061F02F -:101510000895259A2D9A0895269A2E9A0895259A27 -:101520002D9A279A2F9A0895259A2D9A269A2E9ABF -:10153000279A2F9A08958AE69AE0892B11F00E9443 -:101540006A0A80E090E0089556985E9825982D9854 -:1015500026982E9827982F988FEF90E090938900E7 -:101560008093880090938B0080938A0090938D00E5 -:1015700080938C00259A2D9A2FEF80E792E02150DE -:1015800080409040E1F700C00000269A2E9A2FEF8D -:1015900080E792E0215080409040E1F700C00000D9 -:1015A000279A2F9A2FEF80E792E0215080409040B9 -:1015B000E1F700C0000025982D982FEF80E792E01A -:1015C000215080409040E1F700C0000026982E98FE -:1015D0002FEF80E792E0215080409040E1F700C07B -:1015E000000027982F9856985E9825982D98269851 -:1015F0002E9827982F98089589EA8093800089E093 -:101600008093810024982C983F988AB18F748AB96E -:101610006E98479A8BB1806B8BB9769A0E94A40A18 -:1016200089E69AE0892B11F00E94690A80E090E037 -:10163000089580E28093000180913E0181110EC0E7 -:101640000E94680B81E080933E012FEF83ED90E3D1 -:10165000215080409040E1F700C0000080E40E94EB -:101660006E0B8093000181112EC00E94980B809315 -:101670000001811128C00E94980B80930001811104 -:1016800022C08FE30E94980B8093000181111BC040 -:101690000E94900B80E40E946E0B809300018111E8 -:1016A00012C08CE00E94980B8093000181110BC046 -:1016B0000E94980B80930001811105C08FE30E9466 -:1016C000980B809300010E94900B80910001089577 -:1016D0001092B9008AE08093B800089594EA90933C -:1016E000BC009091BC0097FFFCCF9091B900987F0F -:1016F000983021F0903111F081E008958093BB0083 -:1017000084E88093BC008091BC0087FFFCCF80916F -:10171000B900887F883111F0803471F780E0089536 -:1017200084E98093BC008091BC0084FDFCCF0895C7 -:101730008093BB0084E88093BC008091BC0087FF4D -:10174000FCCF9091B900987F81E0983209F480E055 -:10175000089584E88093BC008091BC0087FFFCCF93 -:101760008091BB00089580910001811115C080E433 -:101770000E946E0B8093000181110CC082E10E94D7 -:10178000980B80930001811105C08FEF0E94980B88 -:10179000809300010E94900B84B1807F84B985B151 -:1017A000807F85B98AB1837F8AB98BB1837F8BB9FA -:1017B0003E98469808950E94190B809300010E945C -:1017C000B30B80B38C7080BB81B3836F81BBA0E40B -:1017D000B1E0EEE4F1E08EE08E0F11921D928E13D7 -:1017E000FCCF8CEF9AE0892B11F00C94FC0A089541 -:1017F0009F92AF92BF92CF92DF92EF92FF920F93A0 -:101800001F93CF93DF93809100018823E1F08091B3 -:101810003F018F5F80933F01811115C087E596E0FE -:101820000E94E0080E94190B80930001882329F090 -:101830008DE396E00E94E00806C089E296E00E94EF -:10184000E0080E94A40A00E411E0C0E0D0E0BB245C -:10185000B39482E0A82ECC24C394D12C2AE1E22EAA -:1018600026E0F22EC730D10500F5809100018111EC -:1018700064C080E40E946E0B80930001811112C04D -:1018800082E10E94980B8093000181110BC0C60178 -:101890000C2E01C0880F0A94EAF780950E94980BDD -:1018A000809300010E94900B48C0CA30A1F028F438 -:1018B000C83059F0C93061F005C0CC3089F070F003 -:1018C000CD3089F0209A289810C0219A29980DC00F -:1018D000229A2A980AC0239A2B9807C0529A01C0CC -:1018E000539A5B9802C03E9A469890EA9A95F1F70F -:1018F0009FB1799902C082E001C080E091709B2580 -:10190000982B7C9902C084E001C080E0892B7D99EE -:1019100002C038E001C030E0832B7E9902C020E194 -:1019200001C020E0822B9FB19095991F9927991FA4 -:101930009295990F907E892B10C0809100018111A2 -:1019400074C080E40E946E0B80930001882309F428 -:1019500059C0912C0E94900B892DF8019081981705 -:1019600039F1808380910101882301F18091D901AF -:1019700080FF04C08FE196E00E94E0088091D901C9 -:1019800080FF0CC0809101011F928F93FF92EF9214 -:101990000E9479090F900F900F900F908091D901BC -:1019A00080FF04C088E196E00E94E008A092010157 -:1019B0000E94B30B21960F5F1F4FCE30D10509F067 -:1019C00051CF809101018823B1F0815080930101B2 -:1019D000882339F08FE99FE00197F1F700C00000FC -:1019E0000AC0AEE4B1E0E0E4F1E0CF01825F9191A2 -:1019F0009D938E13FCCF8BE99AE0892BC1F00E9456 -:101A00009B0A15C083E10E94980B8093000181110D -:101A1000A0CF81E40E946E0B80930001811199CFC9 -:101A20000E94A90B982E909495CF80E096CF81E0EC -:101A3000DF91CF911F910F91FF90EF90DF90CF90AA -:101A4000BF90AF909F900895E82FF0E0E25BFE4FCB -:101A500080810895CF92DF92EF92FF920F931F93B0 -:101A6000CF93DF9381E096E00E94E0088EE4E82EB9 -:101A700081E0F82EC0E0D0E09CEFC92E95E0D92E91 -:101A800003EF15E0DF93CF93DF92CF920E947909A5 -:101A900089EF95E00E94E008F70181917F0190E0D5 -:101AA0000E94DA239F938F931F930F930E947909CB -:101AB00081EF95E00E94E00821968DB79EB70896C9 -:101AC0000FB6F8949EBF0FBE8DBFCE30D105D1F6B4 -:101AD000DF91CF911F910F91FF90EF90DF90CF900A -:101AE00008958B3B910578F4883A910540F5853A45 -:101AF0009105D0F48430910508F0B1C08130910592 -:101B000009F4ADC06BC0803E910508F467C0883E03 -:101B1000910508F4A4C09C01205F310920313105F2 -:101B200008F05CC090650895853A910509F459C0A4 -:101B3000863A910509F058C082E890E40895883A01 -:101B4000910509F454C0893A910509F453C08A3AC1 -:101B5000910509F452C08B3A910509F451C08C3AB1 -:101B6000910509F450C08D3A910509F44FC0803BAE -:101B7000910509F44EC08E3A910509F44DC08F3A93 -:101B8000910509F44CC0813B910509F44BC0823B9F -:101B9000910509F44AC0833B910509F449C0843B8F -:101BA000910509F448C0853B910509F447C0863B7F -:101BB000910509F446C0873B910509F445C0883B6F -:101BC000910509F444C0893B910509F443C08A3B5F -:101BD000910509F442C080E094E4089580E090E02B -:101BE000089581E890E4089583E890E4089582EEF2 -:101BF00094E4089589EE94E408958AEE94E40895B7 -:101C000085EB94E4089586EB94E4089587EB94E4DF -:101C100008958CEC94E408958DEC94E4089583E8A1 -:101C200095E408958AE895E4089582E995E4089595 -:101C300084E995E4089581E296E4089583E296E4C8 -:101C4000089584E296E4089585E296E4089586E294 -:101C500096E4089587E296E408958AE296E408956A -:101C6000089596E0799FF001112494E5899FE00D95 -:101C7000F11D1124E60FF11DEE0FFF1FEF5FFD4F69 -:101C8000859194910895880F991FFC01E558FF4FA5 -:101C9000859194910895880F991FFC01E550FE4F9E -:101CA00085919491089526E0729FF001112444E5F6 -:101CB000849FE00DF11D1124E60FF11DEE0FFF1FB3 -:101CC000EF5FFD4F859194919C013A9521154FE16D -:101CD000340708F41EC13F512115304120F49F7094 -:101CE0000E944B0E08959C0130532115304118F489 -:101CF0009927906C0895811520E5920769F40E9458 -:101D0000341D4FEF84E39CE0415080409040E1F768 -:101D100000C000000C949A24813020E5920751F411 -:101D200081E796E00E94E0088091D901816080936C -:101D3000D90108959C0130552115304108F051C05A -:101D4000292F33272F70332721303105D9F4AC01E7 -:101D50004370552702C0220F331F4A95E2F73C68B3 -:101D6000AC0164E0440F551F6A95E1F744275370B6 -:101D7000242B352B73E0880F991F7A95E1F7807635 -:101D800099271DC02230310529F4982F8827816FAB -:101D9000906A089523303105A9F4AC0143705527AA -:101DA00021E030E002C0220F331F4A95E2F73C6881 -:101DB00043E0880F991F4A95E1F7807E9770822B48 -:101DC000932B089524303105E1F4AC01437055277D -:101DD00021E030E002C0220F331F4A95E2F73A6853 -:101DE000E7CF9C0130572115304118F49F70906265 -:101DF00008959C0130582115304118F49F70906A65 -:101E00000895803E9105E0F4803C910558F58133BA -:101E1000910509F46FC048F48932910509F463C053 -:101E20008A32910509F46DC072C089339105E9F0D9 -:101E300082389105D1F08533910509F44DC067C012 -:101E4000833E910581F138F4803E9105B9F0823EE0 -:101E50009105D9F05CC0863E910561F1873E910500 -:101E6000A1F155C00E94430E08952091EC0120FD80 -:101E700002C021FF4CC080EE90E049C08091EC018F -:101E800080FFF9CF89E390E042C08091EC0182FFAE -:101E90000EC08091EC0184FF03C080E090E037C069 -:101EA00083EE90E034C08091EC0182FFF2CF82EEAD -:101EB00090E02DC08091EC0183FF0BC08091EC017C -:101EC00084FDEBCF87EE90E022C08091EC0183FF90 -:101ED000F5CF86EE90E01BC08091EC0185FF07C036 -:101EE00089E290E014C08091EC0185FFF9CF85E391 -:101EF00090E00DC08091EC0186FF07C08AE290E07F -:101F000006C08091EC0186FFF9CF81E390E00E944A -:101F1000710D0895089580916F0108959FB7F89409 -:101F200010925E019FBF9091F201943009F057C06A -:101F30009091E9009F703091EC00232F217030FDCB -:101F400020E8922B24E02093E9002091EB0020FF71 -:101F500043C02091EE0027FF3FC020915C01222367 -:101F600021F02091E80025FF37C010925C0126E0A7 -:101F70003091E80035FD15C03091F201343061F543 -:101F80003091EB0035FD28C0215021F481E0809391 -:101F90005C0122C0EFE9FFE03197F1F700C00000DB -:101FA000E7CF8093F1008091E80085FD0AC0809121 -:101FB000E80080FFFCCF8091E8008E778093E800F6 -:101FC00006C08FB7F89421E020935E018FBF9F7009 -:101FD0009093E90080E008959F709093E9008FEF5F -:101FE0000895CF93DF9300D01F92CDB7DEB79C0149 -:101FF0008091F201843019F593E099833B832A8321 -:102000009093E9008FEF9091E800815095FD06C014 -:1020100095ED9A95F1F700008111F5CF8091E800D8 -:1020200085FF0DC040E050E063E070E0CE01019616 -:102030000E94C1128091E8008E778093E8000F9093 -:102040000F900F90DF91CF910895CF93DF9300D041 -:102050001F92CDB7DEB72091F201243021F522E0A6 -:1020600029839B838A8383E08093E9008FEF90919B -:10207000E800815095FD06C095ED9A95F1F70000B6 -:102080008111F5CF8091E80085FF0DC040E050E060 -:1020900063E070E0CE0101960E94C1128091E800D9 -:1020A0008E778093E8000F900F900F90DF91CF9183 -:1020B00008952091F2012430F1F422E02093E90008 -:1020C0002FEF3091E800215035FD06C035ED3A95EF -:1020D000F1F700002111F5CF2091E80025FF0BC09A -:1020E00040E050E065E070E00E94C1128091E8009D -:1020F0008E778093E8000895CF93DF932091F201CB -:10210000243009F048C0EC0180910C018823E1F0F3 -:1021100080910D018823C1F085E08093E9008FEF65 -:102120009091E800815095FD06C095E19A95F1F7F0 -:1021300000008111F5CF8091E80085FF2CC040E0C0 -:1021400050E060E170E017C081E08093E9008FEF1C -:102150009091E800815095FD06C095ED9A95F1F7B4 -:1021600000008111F5CF8091E80085FF14C040E0A8 -:1021700050E068E070E0CE010E94C1128091E8005A -:102180008E778093E80080E1FE01AFE5B1E0019039 -:102190000D928A95E1F7DF91CF91089588EA96E054 -:1021A0000E94E0088091F101811109C00E9456143B -:1021B0000E94B3148091E20084608093E20008954D -:1021C00084EA96E00E94E0081092F101089580EA06 -:1021D00096E00C94E0088CE996E00E94E0080C94EC -:1021E0006A2E88E996E00E94E0080E9430240E944E -:1021F000702E0E9458170C948A0F20915D012F5F5A -:10220000822F62E30E94DE2F992319F020935D0153 -:10221000089510925D0180915E01882371F1809193 -:10222000F201843041F58091E9008F702091EC003B -:10223000922F917020FD90E8892B94E09093E90013 -:102240009091EB0090FF14C09091EE0097FF10C0AA -:102250009091E80095FF03C01092F100F9CF9091A2 -:10226000E80090FF05C09091E8009E779093E80009 -:102270008F708093E90010925E01089542E061EC56 -:1022800081E00E94D01342E061EC82E00E94D01312 -:1022900042E061EC83E00E94D01342E261EC84E012 -:1022A0000E94D01342E161EC85E00C94D013809140 -:1022B000F401833009F455C030F4813071F082307C -:1022C00009F48EC008958A3009F47AC08B3009F47D -:1022D00060C0893009F09CC020C08091F301813A30 -:1022E00009F096C08091E800877F8093E800809194 -:1022F000F7019091F801892B21F460E18FE591E0DD -:1023000003C060E080E090E070E00E940C138091D8 -:10231000E8008B778093E80008958091F301813283 -:1023200009F076C08091F7019091F801009719F0BB -:10233000049709F06DC08091E800877F8093E800E2 -:102340008091E80082FD05C08091F2018111F8CFF3 -:102350005FC08091F10080936F018091E8008B77DE -:1023600053C08091F301813A09F052C08091F70186 -:102370009091F801892B09F04BC08091E800877F8C -:102380008093E8008091E80080FFFCCF80910C01F1 -:1023900036C08091F3018132D9F58091F701909197 -:1023A000F801892BA9F58091E800877F8093E800E8 -:1023B0000E9405148091F50180930C010C94341D4A -:1023C0008091F301813221F58091E800877F80932D -:1023D000E8000E9405148091F60180937001089531 -:1023E0008091F301813AA1F48091E800877F809386 -:1023F000E8008091E80080FFFCCF8091700180931D -:10240000F1008091E8008E778093E8000C94051429 -:10241000089584B7877F84BF88E10FB6F8948093CE -:102420006000109260000FBE90E080E80FB6F89454 -:1024300080936100909361000FBE0E94E5170E9497 -:1024400056140E94B3148091E20084608093E200ED -:102450008EE89FE00E946F2378940E9438170E94B4 -:10246000E71782E091E00E9453170E94582E87E8F8 -:1024700096E00E94E0088091F201853089F483E8BB -:1024800096E00E94E0080E94F4238091F0018823E6 -:1024900091F30E941C24882371F30E94AB12EBCFAE -:1024A0000E941518E8CF292F332723303105C9F0B2 -:1024B00064F42130310581F02230310509F043C048 -:1024C0008DE890E020EE36E042C021323105F1F097 -:1024D0002232310541F137C082E190E02DE637E04C -:1024E00036C099278130910541F08230910541F045 -:1024F000892B49F5ECEDF6E005C0E4ECF6E002C00E -:10250000ECEAF6E0849190E09F0121C06530D8F4B8 -:10251000E62FF0E0EE0FFF1FEB5DFE4F20813181D3 -:1025200089E090E014C0653070F470E0FB01EE0FBC -:10253000FF1FE55EFE4F20813181FB01EA5EFE4F09 -:10254000808190E004C080E090E020E030E0FA017B -:1025500031832083089580E189BD82E189BD09B47A -:1025600000FEFDCF8091D8008F7D8093D8008091B0 -:10257000E00082608093E0008091E00081FDFCCF6C -:102580000895CF92DF92EF92FF920F931F93CF9314 -:10259000DF93EC018B016A010E942414811133C086 -:1025A000C114D10439F0F60180819181081B190B07 -:1025B000C80FD91FE12CF12C0115110519F18091DB -:1025C000E80085FD16C08091E8008E778093E800D2 -:1025D000C114D10449F0F60180819181E80EF91E01 -:1025E000F182E08285E00FC00E942414882321F349 -:1025F0000AC089918093F10001501109FFEFEF1A91 -:10260000FF0ADACF80E0DF91CF911F910F91FF9009 -:10261000EF90DF90CF9008952091F9013091FA0169 -:102620002617370748F06115710539F42091E80045 -:102630002E772093E80001C0B90140E061157105D3 -:10264000A9F12091F201222309F443C0253009F4B5 -:1026500042C02091E80023FD40C02091E80022FD07 -:1026600032C02091E80020FFE9CF4091F300209193 -:10267000F20030E0342BFC01CF016115710559F0F7 -:102680002830310540F481918093F1006150710947 -:102690002F5F3F4FF1CF41E02830310509F040E096 -:1026A0002091E8002E772093E800C8CF4111C9CFD0 -:1026B0000AC08091F201882361F0853061F0809139 -:1026C000E80083FD0AC08091E80082FFF2CF80E03D -:1026D000089582E0089583E0089581E008952091AF -:1026E000F9013091FA012617370748F06115710595 -:1026F00039F42091E8002E772093E80001C0B90159 -:10270000FC0120E06115710591F18091F2018823AF -:1027100009F440C0853009F43FC08091E80083FD92 -:102720003DC08091E80082FD2FC08091E80080FFCD -:10273000E9CF2091F3008091F20090E0922B611597 -:10274000710559F08830910540F424912093F100EF -:102750003196615071090196F2CF21E0089709F096 -:1027600020E08091E8008E778093E800CBCF2111A4 -:10277000CCCF0AC08091F201882361F0853061F0EE -:102780008091E80083FD0AC08091E80082FFF2CFCB -:1027900080E0089582E0089583E0089581E008953F -:1027A000982F973058F59093E900981739F0709169 -:1027B000EC002091ED005091F00003C0242F762F03 -:1027C00050E021FF19C03091EB003E7F3093EB00C9 -:1027D0003091ED003D7F3093ED003091EB003160A2 -:1027E0003093EB007093EC002093ED005093F000D9 -:1027F0002091EE0027FF07C09F5FD3CF8F7080939B -:10280000E90081E0089580E008958091F30187FF59 -:1028100011C08091E80082FD05C08091F201811114 -:10282000F8CF11C08091E8008B770BC08091F20146 -:10283000882349F08091E80080FFF8CF8091E8007C -:102840008E778093E80008952091E4003091E500B0 -:1028500095E64091EC00842F817040FF22C080916A -:10286000E80080FD1CC08091F201882391F0853042 -:1028700091F08091EB0085FD10C04091E4005091F3 -:10288000E5004217530729F39A01915011F784E0AC -:10289000089582E0089583E0089581E0089580E03E -:1028A00008954091E80042FFDECF08950E94C414CD -:1028B0000E94CC14E0EEF0E0808181608083E8ED3E -:1028C000F0E080818F77808319BCA7EDB0E08C9118 -:1028D0008E7F8C9380818F7E80831092F10108958A -:1028E0000F931F93CF93DF930E94C4140E94CC14C4 -:1028F000C8EDD0E088818F7788838881806888835D -:1029000088818F7D888319BC1092F2011092EE01AC -:102910001092F0011092EF0100EE10E0F8018081BA -:102920008B7F808388818160888342E060E080E0E3 -:102930000E94D013E1EEF0E080818E7F8083E2EE92 -:10294000F0E0808181608083808188608083F801ED -:1029500080818E7F8083888180618883DF91CF91A1 -:102960001F910F910895E8EDF0E080818F7E8083C4 -:10297000E7EDF0E080818160808384E082BF81E0C8 -:102980008093F1010C947014E8EDF0E080818E7F6B -:1029900080831092E20008951092DA001092E10014 -:1029A00008951F920F920FB60F9211242F933F9309 -:1029B0004F935F936F937F938F939F93AF93BF9347 -:1029C000EF93FF938091E10082FF0BC08091E200C2 -:1029D00082FF07C08091E1008B7F8093E1000E941D -:1029E000FD108091DA0080FF1FC08091D80080FF29 -:1029F0001BC08091DA008E7F8093DA008091D9002D -:102A000080FF0DC080E189BD82E189BD09B400FE6F -:102A1000FDCF81E08093F2010E94CE1005C019BC69 -:102A20001092F2010E94E0108091E10080FF19C035 -:102A30008091E20080FF15C08091E2008E7F80933C -:102A4000E2008091E20080618093E2008091D800F2 -:102A500080628093D80019BC85E08093F2010E94C7 -:102A6000EB108091E10084FF30C08091E20084FF90 -:102A70002CC080E189BD82E189BD09B400FEFDCF93 -:102A80008091D8008F7D8093D8008091E1008F7E67 -:102A90008093E1008091E2008F7E8093E20080913C -:102AA000E20081608093E2008091EE01882311F0C2 -:102AB00084E007C08091E30087FD02C081E001C08F -:102AC00083E08093F2010E94F1108091E10083FF86 -:102AD00029C08091E20083FF25C08091E100877FBB -:102AE0008093E10082E08093F2011092EE018091E8 -:102AF000E1008E7F8093E1008091E2008E7F8093E1 -:102B0000E2008091E20080618093E20042E060E0B8 -:102B100080E00E94D0138091F00088608093F000E4 -:102B20000E94E710FF91EF91BF91AF919F918F911C -:102B30007F916F915F914F913F912F910F900FBEB9 -:102B40000F901F9018951F920F920FB60F9211249D -:102B50002F933F934F935F936F937F938F939F93A5 -:102B6000AF93BF93CF93DF93EF93FF93C091E900AF -:102B7000CF708091EC00D82FD17080FDD0E81092FA -:102B8000E9008091F000877F8093F00078940E94A4 -:102B9000E7151092E9008091F00088608093F000C2 -:102BA000CD2BCF70C093E900FF91EF91DF91CF91D2 -:102BB000BF91AF919F918F917F916F915F914F9155 -:102BC0003F912F910F900FBE0F901F9018951F935C -:102BD000CF93DF93CDB7DEB7AA970FB6F894DEBFD9 -:102BE0000FBECDBFE3EFF1E088E08E0F9091F100D2 -:102BF00091938E13FBCF0E9457118091E80083FFC1 -:102C00001FC18091F3019091F401492F50E04A30A7 -:102C1000510508F015C1FA01EB59FF4F0C94FE2F36 -:102C2000803881F0823809F00BC18091F7018F70F4 -:102C30008093E9008091EB0085FB882780F9109252 -:102C4000E90006C08091EF019091F001911182603E -:102C50009091E800977F9093E8008093F1001092A4 -:102C6000F100C8C0282F2D7F09F0EAC0882319F091 -:102C7000823061F0E5C08091F501813009F0E0C05B -:102C8000933009F080E08093F0012BC08091F50132 -:102C9000811127C08091F7018F7009F4D1C0809312 -:102CA000E9002091EB0020FF1CC0933021F48091BB -:102CB000EB00806214C09091EB0090619093EB0068 -:102CC00021E030E0A90102C0440F551F8A95E2F7C8 -:102CD0004093EA001092EA008091EB0088608093B4 -:102CE000EB001092E9008091E800877F86C0811197 -:102CF000A7C01091F5011F778091E3008078812BA8 -:102D00008093E3008091E800877F8093E8000E9431 -:102D100005148091E80080FFFCCF8091E30080687B -:102D20008093E300111102C082E001C083E0809330 -:102D3000F20186C08058823008F082C08091F5018F -:102D40009091F6018C3D53E0950779F583E08A83F5 -:102D50008AE289834FB7F894DE01139620E03EE0C3 -:102D600051E2E32FF0E050935700E49120FF03C0BD -:102D7000E295EF703F5FEF708E2F90E0EA3010F039 -:102D8000C79601C0C0968D939D932F5F243149F75C -:102D90004FBF8091E800877F8093E8006AE270E08F -:102DA000CE0101960E940C1314C0AE014F5F5F4F1D -:102DB0006091F7010E945312BC01892B09F440C0B5 -:102DC0009091E800977F9093E80089819A810E9412 -:102DD0006F138091E8008B778093E80031C08038D2 -:102DE00079F58091E800877F8093E8008091EE017B -:102DF0008093F1008091E8008E778093E8000E9434 -:102E000005141EC081111CC09091F5019230C0F4D0 -:102E10008091E800877F8093E8009093EE010E9404 -:102E200005148091EE01811106C08091E30087FDB9 -:102E300002C081E001C084E08093F2010E943E1153 -:102E40008091E80083FF0AC08091E800877F80932B -:102E5000E8008091EB0080628093EB00AA960FB6A9 -:102E6000F894DEBF0FBECDBFDF91CF911F910895C3 -:102E7000CF938091F2018823A1F0C091E900CF7037 -:102E80009091EC00892F817090FD80E8C82B109202 -:102E9000E9008091E80083FD0E94E715CF70C093A0 -:102EA000E900CF910895909376018093750108957C -:102EB000E0917501F0917601309721F00190F08159 -:102EC000E02D099480E00895EF92FF920F931F93F5 -:102ED000CF93DF93E0917501F09176013097B1F1D6 -:102EE0008C010280F381E02D09958091D90182FF48 -:102EF0002DC080FF04C082EA98E00E94E008E8014B -:102F000010E18CE9E82E88E0F82E8091D90180FF4D -:102F10000BC088811F928F93FF92EF920E947909D4 -:102F20000F900F900F900F90115021961111EDCF2F -:102F30008091D90180FF0AC08AE998E0DF91CF91A2 -:102F40001F910F91FF90EF900C94E008DF91CF91CB -:102F50001F910F91FF90EF900895E0917501F0910E -:102F60007601309721F00480F581E02D09940895D1 -:102F700020917301309174018217930771F090933F -:102F8000740180937301E0917501F091760130979F -:102F900021F00680F781E02D0994089520917101B8 -:102FA000309172018217930771F0909372018093B0 -:102FB0007101E0917501F0917601309721F0008464 -:102FC000F185E02D0994089508950C94E4170E946A -:102FD00036240E94DB0B0C94FC24CF93C82F8091E5 -:102FE000D90182FF1EC080FF04C08BEB98E00E94D5 -:102FF000E0088091D90180FF0CC01F92CF9386EB2F -:1030000098E09F938F930E9479090F900F900F90F3 -:103010000F908091D90180FF04C084EB98E00E945A -:10302000E0088C2FCF910C948A0FCF92DF92EF9211 -:10303000FF920F931F93CF93DF93CDB7DEB72B97FC -:103040000FB6F894DEBF0FBECDBF0E94F80B88E725 -:10305000C82E81E0D82E00E010E0E02E802F0E94E4 -:10306000240DF60141916F01F42EF826B1F40F5FA3 -:103070001F4F0E30110589F78FEF89838A831B82DA -:103080000E943F248160782F9D838C8349815A81DF -:103090006B818D810E94B81840C09091D90191FF39 -:1030A00004C08B870E942A0D8B8520E030E04F2DD5 -:1030B00050E0922FBA01022E02C0759567950A94CE -:1030C000E2F760FF24C02E83EF8221E030E0690147 -:1030D00002C0CC0CDD1C9A95E2F790E08C219D217A -:1030E000892B09F420E028870E943F248160782FF3 -:1030F0009A8789874E815F8168858A850E94B81882 -:10310000F801E858FE4F8081C826C08206C02F5FB4 -:103110003F4F2630310569F6AACF0E946D281091E5 -:1031200077010E9458171817A1F00E945817809332 -:1031300077012B960FB6F894DEBF0FBECDBFDF919F -:10314000CF911F910F91FF90EF90DF90CF900C9453 -:10315000ED172B960FB6F894DEBF0FBECDBFDF91F3 -:10316000CF911F910F91FF90EF90DF90CF90089536 -:10317000CF93DF93CDB7DEB72B970FB6F894DEBFB2 -:103180000FBECDBF4F83588769877A878B87DE0153 -:10319000119686E0FD0111928A95E9F785E0FE011E -:1031A000379601900D928A95E1F749815A816B819A -:1031B0007C818D819E810E94CE1F2B960FB6F89444 -:1031C000DEBF0FBECDBFDF91CF910895CF9388238F -:1031D00009F4C2C0C82F823859F40E94581781FDE3 -:1031E000BBC089E30E946A220E94492389E30CC084 -:1031F000833879F40E94581780FDAEC083E50E94A1 -:103200006A220E94492383E50E94BD22CF910C943B -:103210004923843859F40E94581782FD9DC087E4E1 -:103220000E946A220E94492387E4EECF8CEF8C0F24 -:10323000813A48F48C2F0E94002D81118DC08C2F73 -:103240000E946A22E3CF80E28C0F883048F4C77076 -:1032500081E001C0880FCA95EAF70E941223D6CFF9 -:103260008BE58C0F833078F4C53A29F0C63A31F0FB -:1032700083E890E005C081E890E002C082E890E039 -:10328000CF910C94B81788E58C0F833108F064C097 -:10329000C83A39F1C93A41F1CA3A49F1CB3A51F148 -:1032A000CC3A59F1CD3A61F1C03B69F1CE3A71F1B6 -:1032B000CF3A79F1C13B81F1C23B89F1C33B91F136 -:1032C000C43B99F1C53BA1F1C63BA9F1C73BB1F1A4 -:1032D000C83BB9F1C93BC1F1CA3BC9F180E090E0FC -:1032E00038C082EE90E035C089EE90E032C08AEEC0 -:1032F00090E02FC085EB90E02CC086EB90E029C0D9 -:1033000087EB90E026C08CEC90E023C08DEC90E041 -:1033100020C083E891E01DC08AE891E01AC082E9EC -:1033200091E017C084E991E014C081E292E011C0FD -:1033300083E292E00EC084E292E00BC085E292E06C -:1033400008C086E292E005C087E292E002C08AE20D -:1033500092E0CF910C94CE17CF910895882309F471 -:103360004BC0823859F40E94581781FF45C089E349 -:103370000E946A220E94492389E30CC0833871F4B9 -:103380000E94581780FF38C083E50E946A220E947D -:10339000492383E50E94BD220C944923843859F4C3 -:1033A0000E94581782FF28C087E40E946A220E9468 -:1033B000492387E4EFCF9CEF980F913A58F390E2BE -:1033C000980F983050F4877091E001C0990F8A955A -:1033D000EAF7892F0E941823DFCF9BE5980F9330DF -:1033E00020F480E090E00C94B817885A833120F4E0 -:1033F00080E090E00C94CE170895882321F00E947D -:1034000012230C9449230895882321F00E94182345 -:103410000C9449230895BF92CF92DF92EF92FF92CE -:103420000F931F93CF93DF9300D000D000D0CDB780 -:10343000DEB725E0FC01DE01119601900D922A9580 -:10344000E1F7FC01408131810281258122952F70B5 -:1034500063817481672B09F4E5C23F3F19F44F3F44 -:1034600009F4E0C27C0149833A8389819A812E83E1 -:103470000E942922182FB92E0E9428220E94EF2094 -:10348000EB2DE295EF70F0E0E159FF4F2E810C94A7 -:10349000FE2F8B2D807F9B2D9F70F92E882319F096 -:1034A000F29480EFF822002349F0FF2009F467C26C -:1034B0008F2D0E9422230E94492361C2812F0E94E6 -:1034C000AE19FF2009F4AEC28F2D0E942823269644 -:1034D0000FB6F894DEBF0FBECDBFDF91CF911F9125 -:1034E0000F91FF90EF90DF90CF90BF900C94492305 -:1034F0003B2D307F8B2D8F70303211F08295807F85 -:10350000112319F0113021F12CC00023B9F022232E -:1035100009F4A0C1213009F09DC126960FB6F89498 -:10352000DEBF0FBECDBFDF91CF911F910F91FF90F6 -:10353000EF90DF90CF90BF900C943223222319F0AC -:10354000213009F46FC28E830E9435238E8196C18B -:10355000002321F0223008F065C27CC1211162C233 -:103560008DC1002321F0222309F474C108C2222353 -:1035700009F484C119C22B2D26952695237030E0BD -:103580002115310521F021303105D1F04BC2002346 -:1035900021F0812F9B2D937002C080E090E0269651 -:1035A0000FB6F894DEBF0FBECDBFDF91CF911F9154 -:1035B0000F91FF90EF90DF90CF90BF900C94B817D1 -:1035C000002321F0812F9B2D937002C080E090E0BA -:1035D00026960FB6F894DEBF0FBECDBFDF91CF9118 -:1035E0001F910F91FF90EF90DF90CF90BF900C94C0 -:1035F000CE17812F002319F00E94F32602C00E94EB -:103600005B2726960FB6F894DEBF0FBECDBFDF91C5 -:10361000CF911F910F91FF90EF90DF90CF90BF90CF -:103620000C94E0278B2D837009F07BC00111FAC147 -:10363000812F829586958770880F880F912F9F70B4 -:10364000C92ED12CE12CF12C082E04C0CC0CDD1C91 -:10365000EE1CFF1C0A94D2F714FF12C04FE050E09A -:1036600060E070E004C0440F551F661F771F8A9505 -:10367000D2F7CB01BA01609570958095909503C003 -:1036800060E070E0CB012B2D269526952370422F0C -:1036900050E042305105D9F04330510569F16C29B1 -:1036A0007D298E299F294130510551F126960FB66B -:1036B000F894DEBF0FBECDBFDF91CF911F910F9168 -:1036C000FF90EF90DF90CF90BF900C9416216C2963 -:1036D0007D298E299F2926960FB6F894DEBF0FBE4E -:1036E000CDBFDF91CF911F910F91FF90EF90DF90B1 -:1036F000CF90BF900C9432210E941621C701B601D1 -:1037000026960FB6F894DEBF0FBECDBFDF91CF91E6 -:103710001F910F91FF90EF90DF90CF90BF900C948E -:10372000FA20002319F08B2D817001C08695882323 -:1037300009F478C1812F829586958770880F880F4C -:10374000912F9F70C92ED12CE12CF12C082E04C092 -:10375000CC0CDD1CEE1CFF1C0A94D2F714FF12C027 -:103760004FE050E060E070E004C0440F551F661F5A -:10377000771F8A95D2F7CB01BA0160957095809535 -:10378000909503C060E070E0CB012B2D2695269527 -:103790002370422F50E042305105D9F0433051059B -:1037A00069F16C297D298E299F294130510551F1FC -:1037B00026960FB6F894DEBF0FBECDBFDF91CF9136 -:1037C0001F910F91FF90EF90DF90CF90BF900C94DE -:1037D000F0216C297D298E299F2926960FB6F89411 -:1037E000DEBF0FBECDBFDF91CF911F910F91FF9034 -:1037F000EF90DF90CF90BF900C940C220E94F021AC -:10380000C701B60126960FB6F894DEBF0FBECDBF36 -:10381000DF91CF911F910F91FF90EF90DF90CF90AC -:10382000BF900C94D421103FD1F118F4103E50F405 -:10383000A1C0123F09F463C008F44CC0133F09F45F -:1038400073C098C01F708B2D8F710023A1F00E9450 -:103850006D21812F26960FB6F894DEBF0FBECDBF27 -:10386000DF91CF911F910F91FF90EF90DF90CF905C -:10387000BF900C94FD190E948E21812F26960FB6C1 -:10388000F894DEBF0FBECDBFDF91CF911F910F9196 -:10389000FF90EF90DF90CF90BF900C94041A00231C -:1038A000A9F02111BFC08B2D8F7126960FB6F89409 -:1038B000DEBF0FBECDBFDF91CF911F910F91FF9063 -:1038C000EF90DF90CF90BF900C94B321223008F09E -:1038D000A9C0E9CF0023A9F08B2D8F7126960FB6D2 -:1038E000F894DEBF0FBECDBFDF91CF911F910F9136 -:1038F000FF90EF90DF90CF90BF900C946D2100234C -:1039000059F38B2D8F7126960FB6F894DEBF0FBE3C -:10391000CDBFDF91CF911F910F91FF90EF90DF907E -:10392000CF90BF900C948E21002399F08B2D8F7136 -:1039300026960FB6F894DEBF0FBECDBFDF91CF91B4 -:103940001F910F91FF90EF90DF90CF90BF900C945C -:10395000582126960FB6F894DEBF0FBECDBFDF917B -:10396000CF911F910F91FF90EF90DF90CF90BF907C -:103970000C944E210023A9F0222309F4ADCF812F0E -:1039800026960FB6F894DEBF0FBECDBFDF91CF9164 -:103990001F910F91FF90EF90DF90CF90BF900C940C -:1039A000E618222309F4ADCF812F26960FB6F8949E -:1039B000DEBF0FBECDBFDF91CF911F910F91FF9062 -:1039C000EF90DF90CF90BF900C94AE194B2D4F70BD -:1039D000612FC7010E94820926960FB6F894DEBFB8 -:1039E0000FBECDBFDF91CF911F910F91FF90EF9050 -:1039F000DF90CF90BF900C9472204B2D4F70612FB1 -:103A0000C70126960FB6F894DEBF0FBECDBFDF917B -:103A1000CF911F910F91FF90EF90DF90CF90BF90CB -:103A20000C94300E26960FB6F894DEBF0FBECDBFB5 -:103A3000DF91CF911F910F91FF90EF90DF90CF908A -:103A4000BF9008950E942F230E9404230E944923BF -:103A50000E9413290E94E02780E090E00E94B8179E -:103A600080E090E00C94CE170E941F230C94221D3E -:103A70000E942922292F22952F7030E02C30310509 -:103A80004CF42A3031056CF42250310922303105D2 -:103A900088F407C02C30310549F02F30310531F062 -:103AA00009C0803E48F0803F29F406C093FB882778 -:103AB00080F9089580E0089581E00895CF93DF9321 -:103AC00000D000D01F92CDB7DEB70F900F900F90AF -:103AD0000F900F90DF91CF910895CF93DF9300D097 -:103AE00000D000D0CDB7DEB726960FB6F894DEBF73 -:103AF0000FBECDBFDF91CF9108951F93CF93DF937A -:103B0000C091860116E080918701C81799F0D0E036 -:103B10001C9FF0011D9FF00D1124E857FE4F4081BE -:103B2000518162817381848195810E946D1D2196EE -:103B3000C770E9CFDF91CF911F9108954091B801EF -:103B40005091B9016091BA017091BB018091BC01A3 -:103B50009091BD010C946D1D8091BD0182958F7077 -:103B600009F054C08091BA01882309F44FC08091B4 -:103B70008601A09187016091B8017091B9014091CF -:103B8000BB015091BC01B6E08A1709F43FC090E038 -:103B900041155105C1F17F3F11F46F3FA1F1B89F6D -:103BA000F001B99FF00D1124E857FE4F21817213E7 -:103BB0002AC02081621327C02281211124C02381C1 -:103BC00034812417350710F421503109241B350B9B -:103BD000283C3105C0F42091BD012F702061209355 -:103BE000BD0126E0289FF001299FF00D1124E35725 -:103BF000FE4F80818F708061808388EB91E00E940E -:103C00000B1A0C947D1D01968770BECF0895CF923C -:103C1000DF92EF92FF920F931F93CF93DF93CDB775 -:103C2000DEB762970FB6F894DEBF0FBECDBF8C0132 -:103C300085E0F801DE011D9601900D928A95E1F76D -:103C4000D8014C9111965C91119712966C91129734 -:103C50001396CD90DC9014973091B8017091B90112 -:103C60008091BB019091BC01009709F46BC17F3F2B -:103C700019F43F3F09F466C1E090BA01EE2009F45F -:103C8000C0C02091BD01C816D90628F0F601E81B76 -:103C9000F90BCF0104C0809590958C0D9D1DFF24DC -:103CA000F394883C910578F0F12C207F09F0C6C090 -:103CB0007C2DD98AC88A89890E945E1D88EB91E093 -:103CC0000E940B1AB1C0822F807F09F046C0751385 -:103CD00014C0341312C0611110C02F7020612093E2 -:103CE000BD010E949E1D88EB91E00E940B1A8091FD -:103CF000BD01D80115968C932EC0CD2819F15F3FD8 -:103D000011F44F3FF9F0F62E61111CC0809186012D -:103D10002091870136E0821709F45AC090E0389F5D -:103D2000F001399FF00D1124E857FE4F71815713B0 -:103D300006C07081471303C07281711103C00196E0 -:103D40008770E9CFF62E662309F418C18091BD0172 -:103D500081608093BD01F12C11C1751308C034132B -:103D600006C0611104C08091BD01D801C3C04D8758 -:103D70005E878D859E856A8B0E94381D6A8988239F -:103D8000E1F16623D1F12091BD01822F82958F70E0 -:103D900090E0029774F08091B8019091B9019887F2 -:103DA0008F831986DB86CA862C87CE0107960E94F0 -:103DB0000B1A86E0F801A8EBB1E001900D928A950C -:103DC000E1F70E94AC1D0E949E1DFF24F394D6C013 -:103DD0004D875E878D859E850E942922292F2295F9 -:103DE0002F7030E0223031050CF0BCC09F7009F01C -:103DF000B6C0805E883008F4C1C0C8010E940B1AAA -:103E0000E4CFC816D90608F453C0F601E81BF90B35 -:103E1000CF01883C910508F450C0F12C7C2DD98A43 -:103E2000C88A89890E945E1DE8EBF1E086E0DF0127 -:103E30001D928A95E9F70E949E1DA0C0751314C0BB -:103E4000341312C0611110C08091BD01F801858347 -:103E5000C8010E940B1A86E0E8EBF1E0DF011D9239 -:103E60008A95E9F7FE2C8AC04D875E878D859E85F1 -:103E70006A8B0E94381D6A89882309F4BECF6623A5 -:103E800009F4BBCF2091BD01822F82958F7090E005 -:103E900002970CF48ECF8091B8019091B9019A836A -:103EA00089831B82DD82CC822E83CE0101967FCF57 -:103EB000809590958C0D9D1DACCFF62E662309F450 -:103EC0009CCF75132EC034132CC02091BD0120FD52 -:103ED0001FC0822F82958F70D9F0D80115962C9330 -:103EE00015978F3049F08F5F982F9295907F822F92 -:103EF0008F70892B15968C93C8010E940B1A86E04F -:103F0000F801A8EBB1E001900D928A95E1F793CF0B -:103F100086E0F801A8EBB1E001900D928A95E1F7F7 -:103F20002DC04D875E878D859E850E94381D81112D -:103F300040CF8091BD0181608093BD01C8010E9486 -:103F40000B1A1CC0662309F458CF4D875E878D85F8 -:103F50009E850E94381D882309F44FCF2ACF8111F6 -:103F600048CF0CC0243031050CF047CF9F7009F4C6 -:103F700040CFF8019581907F09F03BCF8F2D62965D -:103F80000FB6F894DEBF0FBECDBFDF91CF911F916A -:103F90000F91FF90EF90DF90CF9008951F93CF93F4 -:103FA000DF93CDB7DEB72C970FB6F894DEBF0FBE08 -:103FB000CDBF4F83588769877A878B879C87CE01CF -:103FC00007960E94071E882369F08F8198852A85AD -:103FD0003B85232BF1F19F3F09F063C08F3F09F030 -:103FE00060C037C086E0FE013796DE011196019071 -:103FF0000D928A95E1F76F817885EA85FB85309788 -:1040000041F17F3F11F46F3F21F12091870130E0B2 -:10401000C9010196877099274091860150E0841765 -:10402000950709F447C069837A83FD83EC8396E0A2 -:10403000929FD001939FB00D1124A857BE4FFE014F -:10404000319601900D929A95E1F7809387010E9435 -:104050007D1D16E080918601909187018917C1F13D -:10406000189FC001112488579E4F0E94071E882365 -:1040700079F1E09186011E9FF0011124E857FE4F6F -:104080004081518162817381848195810E946D1D7F -:104090008091860190E00196877099278093860130 -:1040A000D9CF4F81588569857A858B859C850E94FB -:1040B0006D1DCFCF0E94341D109287011092860192 -:1040C000E8EBF1E086E0DF011D928A95E9F7C1CFC8 -:1040D0002C960FB6F894DEBF0FBECDBFDF91CF9107 -:1040E0001F910895EF92FF920F931F93CF93DF9349 -:1040F0008C01892B09F46CC0F12CEE24E394E801C7 -:104100002196F8018491843740F4843008F051C03E -:10411000813081F0823019F15BC0853709F444C0E9 -:10412000A8F19CE7980F903708F052C08F770E9453 -:10413000AE1941C00E5F1F4FFE01C49180E28C0F8B -:10414000883048F4C7708E2D01C0880FCA95EAF7F1 -:104150000E94222314C08C2F0E94E6182DC00E5FEF -:104160001F4FFE01C49180E28C0F883058F4C77055 -:104170008E2D01C0880FCA95EAF70E9428230E945D -:1041800049231AC08C2F0E94AE1916C00E5F1F4F14 -:10419000FE01C491CC2381F08FE99FE00197F1F7F4 -:1041A00000C00000C150F6CF0E5F1F4FFE01F4901B -:1041B00003C00E94E6188E018F2D882309F49FCF3B -:1041C000EFE9FFE03197F1F700C000008150F5CF33 -:1041D000DF91CF911F910F91FF90EF900895089577 -:1041E0006093C2017093C3018093C4019093C50191 -:1041F0000C94221D0F931F930091C2011091C301D3 -:104200002091C4013091C501DC01CB01802B912BA1 -:10421000A22BB32B8093C2019093C301A093C4013E -:10422000B093C5011F910F910C94221D0F931F9302 -:104230000091C2011091C3012091C4013091C501C8 -:10424000DC01CB0180239123A223B3238093C201FD -:104250009093C301A093C401B093C5011F910F9126 -:104260000C94221D0F931F930091C2011091C30162 -:104270002091C4013091C501DC01CB018027912739 -:10428000A227B3278093C2019093C301A093C401D6 -:10429000B093C5011F910F910C94221D1092BE0185 -:1042A0001092BF011092C0011092C1010C94221D06 -:1042B00041E050E060E070E004C0440F551F661F0D -:1042C000771F8A95D2F74093BE015093BF01609348 -:1042D000C0017093C1010C94221D41E050E060E0E8 -:1042E00070E004C0440F551F661F771F8A95D2F7F0 -:1042F0008091BE019091BF01A091C001B091C10118 -:10430000482B592B6A2B7B2B4093BE015093BF0146 -:104310006093C0017093C1010C94221D41E050E0F4 -:1043200060E070E004C0440F551F661F771F8A9538 -:10433000D2F740955095609570958091BE0190910F -:10434000BF01A091C001B091C101482359236A2344 -:104350007B234093BE015093BF016093C0017093D3 -:10436000C1010C94221D41E050E060E070E004C007 -:10437000440F551F661F771F8A95D2F78091BE01A3 -:104380009091BF01A091C001B091C1014827592768 -:104390006A277B274093BE015093BF016093C00101 -:1043A0007093C1010C94221D0F931F930091BE01C5 -:1043B0001091BF012091C0013091C101DC01CB01FE -:1043C000802B912BA22BB32B8093BE019093BF0126 -:1043D000A093C001B093C1011F910F910C94221DB5 -:1043E0000F931F930091BE011091BF012091C00156 -:1043F0003091C101DC01CB0180239123A223B3239F -:104400008093BE019093BF01A093C001B093C101FE -:104410001F910F910C94221D0F931F930091BE01C9 -:104420001091BF012091C0013091C101DC01CB018D -:1044300080279127A227B3278093BE019093BF01C5 -:10444000A093C001B093C1011F910F910C94221D44 -:104450000895CF92DF92EF92FF920F931F93CF9325 -:10446000DF938C01C090C201D090C301E090C401E1 -:10447000F090C5014091BE015091BF016091C00113 -:104480007091C101C42AD52AE62AF72ACFE1D0E0EB -:10449000D701C6010C2E04C0B695A79597958795B0 -:1044A0000A94D2F780FF07C0B8018C2F0E94530EE8 -:1044B0008130910531F4219758F7B80180E00E94CE -:1044C000530EDF91CF911F910F91FF90EF90DF90EE -:1044D000CF90089590910C01992321F090910D01B6 -:1044E000911109C020910E0130910F01F90132960E -:1044F0009FEF40E030C0982F9695969596959F3007 -:10450000A0F4E0910E01F0910F01E90FF11D877009 -:1045100021E030E0A90102C0440F551F8A95E2F75F -:10452000CA019181892B818308959091D90190FFCF -:1045300023C01F928F938CEE98E09F938F930E94DD -:1045400079090F900F900F900F9008959F3F39F0C9 -:104550004F5F4E3041F051915813F8CF0DC05111BB -:10456000F7CF942FF5CF9F3F39F0F901E90FF11DF7 -:1045700097FDFA9582830895089590910C019923EF -:1045800021F090910D01911109C020910E013091FF -:104590000F01F9013296205F3F4F30C0982F96955A -:1045A000969596959F30A8F4E0910E01F0910F0139 -:1045B000E90FF11D877021E030E0A90102C0440F2E -:1045C000551F8A95E2F7CA018095918189238183DD -:1045D00008959091D90190FF16C01F928F938EEC91 -:1045E00098E09F938F930E9479090F900F900F90FE -:1045F0000F9008953196E217F30729F090819813F0 -:10460000F9CF1082F7CF089581E090E0E0910E019C -:10461000F0910F01E80FF91F10820196803191058A -:10462000A9F708959091D801892B8093D801089516 -:1046300080959091D80189238093D8010895109294 -:10464000D80108959091D701892B8093D7010895BF -:1046500080959091D70189238093D7010895109276 -:10466000D70108958093C60108951092C601089558 -:1046700080910E0190910F01FC0131969C01205F09 -:104680003F4F80E0919191118F5FE217F307D1F7CF -:104690000895E0910E01F0910F018091D80180837F -:1046A000E0910E01F0910F0190818091D701892B4B -:1046B00080838091C601882361F0E0910E01F09122 -:1046C0000F019081892B80830E94382381111092E1 -:1046D000C60180910E0190910F010C946417909384 -:1046E0003B0180933A010895CF92DF92EF92FF92BF -:1046F0006C01EE24FF24C114D104E104F10421F083 -:10470000C701B60120E101C020E0C72ED82EE92E56 -:10471000FF24C114D104E104F10419F0285FC7019A -:10472000B6016B017C0154E0F694E794D794C794EA -:104730005A95D1F7C114D104E104F10419F02C5FAA -:10474000C701B6016B017C0142E0F694E794D7946F -:10475000C7944A95D1F7C114D104E104F10419F0CA -:104760002E5FC701B601DC01CB01B695A7959795E1 -:104770008795892B8A2B8B2B09F02F5F822FFF9037 -:10478000EF90DF90CF9008958295982F9C7C392FE1 -:1047900036953695282F237344E0249FC0011124B9 -:1047A000932F982B292F2A7A2695892F8575880F84 -:1047B000822B08951F93CF93DF931F92CDB7DEB75F -:1047C00099830E94C423182F9981892F0E94C423A2 -:1047D000212F30E0322F2227A901482BCA010F9048 -:1047E000DF91CF911F9108958091F201843009F1FA -:1047F0001092DA0120E488E190E00FB6F894A895D1 -:10480000809360000FBE2093600083B7817F846037 -:1048100083BF83B7816083BF7894889583B78E7F89 -:1048200083BF88E10FB6F894809360001092600017 -:104830000FBE089508950895CF930E941A240E94F0 -:10484000F80B0E941B24C0E08C2F0E94240D8111C4 -:1048500004C0CF5FCE30C1F701C081E0CF91089591 -:104860000E94341D0E9458170C948A0F82E084BD68 -:1048700093E095BD9AEF97BD80936E0008952FB792 -:10488000F8948091DB019091DC01A091DD01B09161 -:10489000DE012FBF0895CF92DF92EF92FF920F9328 -:1048A0001F932FB7F8944091DB015091DC01609188 -:1048B000DD017091DE012FBF6A017B01EE24FF2430 -:1048C0008C0120E030E0C016D106E206F30610F4B9 -:1048D000415051099A01281B390BC9011F910F91B1 -:1048E000FF90EF90DF90CF9008951F920F920FB638 -:1048F0000F9211248F939F93AF93BF938091DB010D -:104900009091DC01A091DD01B091DE010196A11D25 -:10491000B11D8093DB019093DC01A093DD01B09386 -:10492000DE01BF91AF919F918F910F900FBE0F90BD -:104930001F9018950E945614F8942FEF87EA91E67D -:10494000215080409040E1F700C0000087E090EBEC -:10495000DC018093FB019093FC01A093FD01B093D7 -:10496000FE019CE088E10FB6F894A8958093600062 -:104970000FBE90936000FFCFEF92FF920F931F93B3 -:10498000CF93DF93D82FC0E08C2F0E94240D00E03E -:1049900010E0E82EF12CC701002E02C095958795F6 -:1049A0000A94E2F780FD06C00F5F1F4F0630110525 -:1049B00091F709C0602F7C2F80E00E94310ED81340 -:1049C000F3CF81E004C0CF5FCE30F1F680E0DF911D -:1049D000CF911F910F91FF90EF900895CF93C82F23 -:1049E0008CE20E94BC24882321F08C2FCF910C9460 -:1049F000BC2480E0CF910895CF930E944B26811173 -:104A000002C00E94312681E199E00E94E008C5E6DB -:104A1000C15049F00E94F80B8FE39CE90197F1F730 -:104A200000C00000F5CF8AE099E00E94E00889E22A -:104A30000E94EE24811113C18AE20E94EE248111AA -:104A40000E94312685E00E94EE2481110E949A2462 -:104A50000E9456268093D90187E00E94EE24882385 -:104A6000A9F18BE10E94EE24882351F08091D901B5 -:104A700081FB222720F991E0922790FB81F90EC05B -:104A80008EE00E94EE24882361F08091D90182FBA0 -:104A9000222720F991E0922790FB82F98093D90197 -:104AA00015C080E10E94EE249091D901882341F045 -:104AB00093FB222720F981E0822780FB93F904C031 -:104AC000892F809580FB90F99093D9018091D9012D -:104AD0000E945A260E9468268093EC0180EE0E9474 -:104AE000EE24882341F08091EC01982F909590FB63 -:104AF00080F98093EC0189E30E94EE24882359F029 -:104B00008091EC0181FB222720F991E0922790FB14 -:104B100081F98093EC0182EE0E94EE24882359F003 -:104B20008091EC0182FB222720F991E0922790FBF3 -:104B300082F98093EC0186EE0E94EE24882359F0DE -:104B40008091EC0183FB222720F991E0922790FBD2 -:104B500083F98093EC0183EE0E94EE24882359F0C0 -:104B60008091EC0184FB222720F991E0922790FBB1 -:104B700084F98093EC0185E30E94EE24882359F0A8 -:104B80008091EC0185FB222720F991E0922790FB90 -:104B900085F98093EC0181E30E94EE24882359F08B -:104BA0008091EC0186FB222720F991E0922790FB6F -:104BB00086F98093EC0181E10E94EE24882359F06C -:104BC0008091EC0187FB222720F991E0922790FB4E -:104BD00087F98093EC018091EC010E946C26809112 -:104BE000EC0187FB882780F980930D0187E20E9402 -:104BF000EE24C82F8EE10E94EE248111C2608FE165 -:104C00000E94EE248111C46080E20E94EE24811192 -:104C1000C86081E20E94EE248111C06182E20E949C -:104C2000EE248111C06283E20E94EE248111C064EF -:104C300084E20E94EE24882311F0C06802C0CC23D5 -:104C400029F08C2F0E9463266C2F03C00E945F26E0 -:104C5000682F70E080E090E0CF910C94F020CF912D -:104C600008956DEE7EEF80E090E00E94343060E0C9 -:104C700082E090E00E94263060E083E090E00E94B5 -:104C8000263060E084E090E00E94263060E085E01D -:104C900090E00C94263080E090E00E94203021E0EB -:104CA0008D3E9E4F09F020E0822F089582E090E033 -:104CB0000C941830682F82E090E00C94263083E04A -:104CC00090E00C941830682F83E090E00C9426302C -:104CD00084E090E00C941830682F84E090E00C940D -:104CE00026308091E10180FF0BC06091130185E0C7 -:104CF000689FB001112475956795759567952BC0D0 -:104D000081FF09C06091130185E0689FB001112403 -:104D10007595679520C082FF07C06091130185E0FB -:104D2000689FB001112417C09091E2019923D1F03E -:104D300060911201961788F72091130185E0289F52 -:104D400090011124929FA001939F500D112470E0B7 -:104D5000CA010E94EA2F6038710540F4611571059F -:104D600039F002C065E070E0862F08958FE708955E -:104D700081E008958091E10180FF08C060911101F8 -:104D800070E0759567957595679521C081FF06C0A0 -:104D90006091110170E07595679519C082FF04C09C -:104DA0006091110170E010C09091E2019923C1F06F -:104DB000609110019617A0F780911101899FC001A1 -:104DC000112470E00E94EA2F6038710528F4611503 -:104DD000710521F0862F08958FE7089581E00895E9 -:104DE00061E070E0F4CF803F21F40E94712681954C -:104DF00004C0813F29F40E9471268093E501089543 -:104E0000823F21F40E947126819504C0833F29F4DA -:104E10000E9471268093E4010895893F19F40E944D -:104E2000BA2605C08A3F31F40E94BA268195809344 -:104E3000E60108958B3F21F40E94BA26819504C0B3 -:104E40008C3F29F40E94BA268093E7010895843F9D -:104E500021F48091E301816017C0853F21F48091A6 -:104E6000E301826011C0863F21F48091E3018460F8 -:104E70000BC0873F21F48091E301886005C0883F23 -:104E800031F48091E30180618093E30108958D3FC7 -:104E900021F48091E10181600BC08E3F21F480916B -:104EA000E101826005C08F3F29F48091E1018460B7 -:104EB0008093E1010895803F39F48091E50187FFF7 -:104EC0006CC01092E50169C0813F29F48091E50131 -:104ED0001816BCF362C09091E401823F29F497FF59 -:104EE0005CC01092E40159C0833F19F41916CCF349 -:104EF00054C0893F41F48091E60118160CF04DC072 -:104F00001092E6014AC08A3F29F48091E60187FFAA -:104F100044C0F6CF8B3F39F48091E70187FF3DC055 -:104F20001092E7013AC08C3F29F48091E7011816EE -:104F3000BCF333C0843F21F48091E3018E7F17C01E -:104F4000853F21F48091E3018D7F11C0863F21F4DC -:104F50008091E3018B7F0BC0873F21F48091E301B7 -:104F6000877F05C0883F31F48091E3018F7E809375 -:104F7000E30113C08D3F21F48091E1018E7F0BC0CE -:104F80008E3F21F48091E1018D7F05C08F3F29F490 -:104F90008091E1018B7F8093E1018091E401811197 -:104FA0000EC08091E50181110AC08091E601811156 -:104FB00006C08091E701811102C01092E2010895BC -:104FC0008091D90183FF7EC08DE499E00E94E008C2 -:104FD0008091E3011F928F9388E499E09F938F93D0 -:104FE0000E94790986E499E00E94E0088091E4013A -:104FF000282F332727FD30953F938F9383E499E043 -:105000009F938F930E94790981E499E00E94E008C0 -:105010008091E501282F332727FD30953F938F930B -:105020008EE399E09F938F930E9479098CE399E036 -:105030000E94E0088091E601282F332727FD309554 -:105040003F938F9389E399E09F938F930E9479090F -:1050500087E399E00E94E0088091E701282F332739 -:1050600027FD30953F938F9384E399E09F938F932F -:105070000E94790981E399E00E94E0088091E201B1 -:105080001F928F938EE299E09F938F930E947909EC -:105090008CE299E00E94E0088091E1011F928F93D9 -:1050A00089E299E09F938F930E94790986E299E0C3 -:1050B0000E94E0088DB79EB74C960FB6F8949EBF3D -:1050C0000FBE8DBF83EE91E00E94AD170E943F247A -:1050D0009093E0018093DF0108951F93CF93DF93B6 -:1050E0008091DF019091E0010E944B24AC019091EE -:1050F000E201992321F02091140130E006C02091B3 -:1051000015018AE0289F900111244217530708F4E3 -:1051100086C08091E401C091E501D091E601109133 -:10512000E701811107C0C11176C0D11174C01111FE -:1051300072C075C09F3F19F09F5F9093E2011816EF -:1051400024F40E9471268093E4018091E40187FF9A -:1051500005C00E94712681958093E4011C1624F4F9 -:105160000E9471268093E5018091E50187FF05C0CB -:105170000E94712681958093E5016091E401662388 -:1051800039F1C091E501CC2319F1772767FD7095BE -:10519000872F972F0E94EF2E23E333E343E35FE350 -:1051A0000E94532F0E94BC2E6093E4016C2F77273E -:1051B00067FD7095872F972F0E94EF2E23E333E32F -:1051C00043E35FE30E94532F0E94BC2E6093E501EE -:1051D0001D1624F40E94BA268093E6018091E60110 -:1051E00087FF05C00E94BA2681958093E6011116BB -:1051F00024F40E94BA268093E7018091E70187FF9B -:1052000005C00E94BA2681958093E701DF91CF9176 -:105210001F910C94E0279F3F09F08ECF96CFDF912E -:10522000CF911F910895E3EEF1E085E0DF011D923B -:105230008A95E9F71092E2011092E101089580E762 -:105240009BE00E94E0081F9281E08F931F9285E00F -:105250008F9382E29BE09F938F930E9479090F9036 -:105260000F900F900F900F900F9008958330E9F1F9 -:1052700028F4813061F0823009F10895853009F415 -:1052800062C008F449C0863009F474C00895809162 -:105290001501262F30E0280F311D2F3F310524F452 -:1052A000680F6093150103C08FEF80931501809103 -:1052B00015011F928F938BE59AE072C080911401C3 -:1052C000262F30E0280F311D2F3F310524F4680FC1 -:1052D0006093140103C08FEF809314018091140137 -:1052E0001F928F9389E49AE05BC080911301262F6F -:1052F00030E0280F311D2F3F310524F4680F6093F3 -:10530000130103C08FEF80931301809113011F924B -:105310008F9386E39AE044C080911201262F30E0FB -:10532000280F311D2F3F310524F4680F60931201BF -:1053300003C08FEF80931201809112011F928F930F -:1053400081E29AE02DC080911101262F30E0280FD4 -:10535000311D2F3F310524F4680F6093110103C004 -:105360008FEF80931101809111011F928F9388E03C -:105370009AE016C080911001262F30E0280F311DD1 -:105380002F3F310524F4680F6093100103C08FEFA5 -:1053900080931001809110011F928F938DEE99E000 -:1053A0009F938F930E9479090F900F900F900F9009 -:1053B0000895833081F128F4813059F08230D1F0A2 -:1053C0000895853009F449C0B8F1863009F456C013 -:1053D000089580911501681720F4861B80931501AC -:1053E00002C010921501809115011F928F938EEDCE -:1053F00099E054C080911401681720F4861B8093B3 -:10540000140102C010921401809114011F928F9315 -:105410008CEC99E043C080911301681720F4861B3F -:105420008093130102C010921301809113011F9207 -:105430008F9389EB99E032C080911201681720F4B4 -:10544000861B8093120102C01092120180911201FA -:105450001F928F9384EA99E021C08091110168170F -:1054600020F4861B8093110102C0109211018091DB -:1054700011011F928F938BE899E010C08091100169 -:10548000681720F4861B8093100102C0109210014F -:10549000809110011F928F9380E799E09F938F93E3 -:1054A0000E9479090F900F900F900F900895CF935D -:1054B000C82F1F928F9385E79CE09F938F930E9444 -:1054C000790981E090E0A0E0B0E0BC01CD0104C02A -:1054D000660F771F881F991FCA95D2F70E94F02088 -:1054E0000F900F900F900F90CF910C94341DCF938D -:1054F0008D3109F465C0B0F58E3009F4CCC100F5EA -:10550000873009F49BC1A8F4863009F06DC2809100 -:10551000D901817F8E7F8093D9018AE79CE00E9428 -:10552000E0088CEB90E10E94E00881E08093E901C3 -:1055300080C1883009F44FC08B3009F47CC154C25B -:10554000863109F4F0C138F4803109F4B8C18131F1 -:1055500009F430C249C2893109F4CEC18B3109F452 -:1055600086C142C2853309F437C248F4873209F450 -:1055700033C208F433C2893209F42EC235C28334EF -:1055800038F48A3308F02CC2883309F454C12CC291 -:10559000833409F421C2883409F026C20E94341DE4 -:1055A0008BEA90E10E94E0089FEF23ED80E39150A9 -:1055B00020408040E1F700C000000E949A2439C1D9 -:1055C0008BEC90E10E94E0080E94762E0E94581712 -:1055D0000E948A0F2EC180EC90E10E94E0088BE8C7 -:1055E0009EE00E94E0080E945F261F928F9388E849 -:1055F0009EE09F938F930E94790986E89EE00E9427 -:10560000E0080E945626C82F83E79EE00E94E0082B -:105610001F92CF938EE69EE09F938F930E9479090D -:105620008CE69EE00E94E00882E69EE00E94E00890 -:105630008C2F81701F928F938FE59EE09F938F93A5 -:105640000E9479098DE59EE00E94E00883E59EE0D6 -:105650000E94E008C1FB882780F91F928F9380E5A4 -:105660009EE09F938F930E9479098EE49EE00E94B2 -:10567000E00882E49EE00E94E008C2FB882780F9EF -:105680001F928F938FE39EE09F938F930E947909DF -:105690008DE39EE00E94E00884E39EE00E94E00823 -:1056A000C3FBCC27C0F91F92CF9381E39EE09F9369 -:1056B0008F930E9479098FE29EE00E94E0080E9489 -:1056C0006826C82F8BE19EE00E94E0081F92CF93CE -:1056D00086E19EE09F938F930E94790984E19EE08A -:1056E0000E94E0088BEF9DE00E94E0088C2F817003 -:1056F0001F928F9388EF9DE09F938F930E9479096B -:105700008DB79EB780960FB6F8949EBF0FBE8DBF23 -:1057100086EF9DE00E94E0088FED9DE00E94E0088A -:10572000C1FB882780F91F928F938CED9DE09F939A -:105730008F930E9479098AED9DE00E94E00888EC31 -:105740009DE00E94E008C2FB882780F91F928F939A -:1057500085EC9DE09F938F930E94790983EC9DE0F7 -:105760000E94E00881EB9DE00E94E008C3FB8827CF -:1057700080F91F928F938EEA9DE09F938F930E94F2 -:1057800079098CEA9DE00E94E00882EA9DE00E948F -:10579000E008C4FB882780F91F928F938FE99DE072 -:1057A0009F938F930E9479098DE99DE00E94E00804 -:1057B0008BE89DE00E94E008C5FB882780F91F92D6 -:1057C0008F9388E89DE09F938F930E94790986E8E4 -:1057D0009DE00E94E0088AE69DE00E94E008C6FB8A -:1057E000882780F91F928F9387E69DE09F938F9380 -:1057F0000E94790985E69DE00E94E0088DE59DE024 -:105800000E94E008C7FBCC27C0F91F92CF938AE51E -:105810009DE09F938F930E94790988E59DE00E9407 -:10582000E0088DB79EB74C960FB6F8949EBF0FBE9A -:105830008DBFC1E0DEC081EA9CE05BC08091D901F0 -:10584000C82FC17080FF09C08EE990E10E94E00876 -:105850008091D901817F8E7F47C082E990E10E94CB -:10586000E0088091D90181608093D901E2CF9091C5 -:10587000D90191FBCC27C0F981E0C827892FC0FB53 -:1058800081F98093D901CC2319F085E890E127C0F4 -:1058900087E790E12EC09091D90192FBCC27C0F907 -:1058A00081E0C827892FC0FB82F98093D901CC23DE -:1058B00019F088E690E113C088E590E11AC0909154 -:1058C000D90193FBCC27C0F981E0C827892FC0FB01 -:1058D00083F98093D901CC2351F08CE490E10E94AC -:1058E000E0088091D90181608093D90182C08FE363 -:1058F00090E10E94E0089DCF80E390E10E94E008E3 -:1059000084E090E10E94E00887EC9FE00E94E008BC -:105910008AE99FE00E94E00886E59FE00E94E00897 -:105920008BE29FE0E6CF8DE19FE00E94E0080E94BD -:1059300058171F928F9383E09FE09F938F930E944D -:10594000790980910C011F928F938CEE9EE09F93BA -:105950008F930E947909809170011F928F9389ED36 -:105960009EE09F938F930E94790980910D011F9271 -:105970008F9386EC9EE09F938F930E94790980918C -:10598000DB019091DC01A091DD01B091DE01BF93BC -:10599000AF939F938F9382EB9EE09F938F930E9490 -:1059A00079098DB79EB746960FB6F8949EBF0FBE85 -:1059B0008DBF3FCF0E94341DC0910D0181E0C827EB -:1059C000C0930D01CC2329F088EA9EE00E94E008F4 -:1059D00010C08DE99EE08DCF80E003C08D5101C0E5 -:1059E00089530E94572A25CF8BE99EE00E94E00848 -:1059F000C0E08C2FCF91089580E0089580E0089555 -:105A0000CF93C82F8091E901813081F020F082305E -:105A100009F44FC045C1E0910E01F0910F01808162 -:105A2000813169F0823209F03DC109C0E0910E0177 -:105A3000F0910F018081813111F0823261F48C2F5D -:105A40000E94FC2C811104C08C2F0E94772A2FC049 -:105A500081E090E02CC08C2F0E94FE2C811126C08A -:105A6000C431E1F070F4CB3081F0C031D1F40E9448 -:105A70001F298DE69CE00E94E00882E08093E90106 -:105A800015C0C93259F0C83361F48AE79CE00E941E -:105A9000E00881E79CE00E94E00808C01092E9015C -:105AA00003C18BE69CE00E94E008FEC081E08170AB -:105AB000FDC0C43220F5CE3108F0C0C0CB3099F122 -:105AC000C8F4C73009F0D2C08AE08093150194E190 -:105AD0009093140193E0909313018093120188E056 -:105AE0008093110188E28093100181E19BE00E9484 -:105AF000E008BFC0C33149F1C431C1F0B7C0CB34F5 -:105B000009F4A9C028F4C93289F0C83361F0AEC0E5 -:105B1000C13509F49EC0C23509F499C0CE3409F0EC -:105B2000A5C06AE09EC00E941F29A3C08091E80121 -:105B3000882319F01092E8019CC08EE19BE00E943E -:105B4000E00881E08093E901B1C088EF9AE00E940B -:105B5000E00886EE9AE00E94E008809115011F920D -:105B60008F9383EE9AE09F938F930E94790981EE41 -:105B70009AE00E94E0088FEC9AE00E94E008809191 -:105B800014011F928F938CEC9AE09F938F930E9445 -:105B900079098AEC9AE00E94E0088BEB9AE00E9477 -:105BA000E008809113011F928F9388EB9AE09F93F6 -:105BB0008F930E94790986EB9AE00E94E00885EABB -:105BC0009AE00E94E008809112011F928F9382EA6E -:105BD0009AE09F938F930E94790980EA9AE00E944D -:105BE000E0088BE89AE00E94E008809111011F9282 -:105BF0008F9388E89AE09F938F930E94790986E8B3 -:105C00009AE00E94E0088FE69AE00E94E008809106 -:105C100010011F928F938CE69AE09F938F930E94BE -:105C200079098AE69AE00E94E0088DB79EB7489607 -:105C30000FB6F8949EBF0FBE8DBF1BC0CE51EC2F88 -:105C4000F0E0E15DFE4F80818093E80112C061E0E9 -:105C500003C061E006C06AE08091E8010E94362935 -:105C600008C08091E8010E94D92903C08FE09BE021 -:105C700013C08091E801882369F01F928F9389E017 -:105C80009BE09F938F930E9479090F900F900F9044 -:105C90000F9004C086E09BE00E94E00881E006C00F -:105CA0001092E90180E002C080E001CFCF91089519 -:105CB000E1E8F0E08081886080838081816080837A -:105CC0008FB7F89493E09093890090ED90938800BB -:105CD0008FBF0895EFE6F0E08081826080830895B1 -:105CE000EFE6F0E080818D7F80830895EFE6F0E0BD -:105CF000908182E08927808308951F920F920FB6CA -:105D00000F9211242F933F934F935F936F937F9341 -:105D10008F939F93AF93BF93EF93FF938091EA018B -:105D20009091EB0101969093EB018093EA01811130 -:105D300003C082E00E948A0FE091EB01E695E695B0 -:105D4000F0E0E552FF4EE4918091EA018E1303C02A -:105D500080E00E948A0FFF91EF91BF91AF919F91D8 -:105D60008F917F916F915F914F913F912F910F9004 -:105D70000FBE0F901F90189504D06894B1118DC07C -:105D8000089570D088F09F5790F0B92F9927B75198 -:105D9000A0F0D1F0660F771F881F991F1AF0BA95EF -:105DA000C9F712C0B13081F077D0B1E0089574C066 -:105DB000672F782F8827B85F39F0B93FCCF38695E5 -:105DC00077956795B395D9F73EF490958095709542 -:105DD00061957F4F8F4F9F4F0895E89409C097FBBF -:105DE0003EF490958095709561957F4F8F4F9F4FB2 -:105DF0009923A9F0F92F96E9BB279395F6958795F6 -:105E000077956795B795F111F8CFFAF4BB0F11F4B8 -:105E100060FF1BC06F5F7F4F8F4F9F4F16C088235F -:105E200011F096E911C0772321F09EE8872F762F95 -:105E300005C0662371F096E8862F70E060E02AF0D6 -:105E40009A95660F771F881FDAF7880F96958795C2 -:105E500097F9089557FD9058440F551F59F05F3F2B -:105E600071F04795880F97FB991F61F09F3F79F07C -:105E700087950895121613061406551FF2CF4695FE -:105E8000F1DF08C0161617061806991FF1CF869580 -:105E90007105610508940895E894BB276627772764 -:105EA000CB0197F908950BD078C069D028F06ED057 -:105EB00018F0952309F05AC05FC01124EECFCADF55 -:105EC000A0F3959FD1F3950F50E0551F629FF0010D -:105ED000729FBB27F00DB11D639FAA27F00DB11D66 -:105EE000AA1F649F6627B00DA11D661F829F2227EF -:105EF000B00DA11D621F739FB00DA11D621F839F76 -:105F0000A00D611D221F749F3327A00D611D231F4B -:105F1000849F600D211D822F762F6A2F11249F5799 -:105F200050408AF0E1F088234AF0EE0FFF1FBB1FBC -:105F3000661F771F881F91505040A9F79E3F51055B -:105F400070F014C0AACF5F3FECF3983EDCF3869567 -:105F500077956795B795F795E7959F5FC1F7FE2B06 -:105F6000880F911D9695879597F9089597F99F67E2 -:105F700080E870E060E008959FEF80EC08950024D1 -:105F80000A941616170618060906089500240A949E -:105F900012161306140605060895092E0394000C24 -:105FA00011F4882352F0BB0F40F4BF2B11F460FFB3 -:105FB00004C06F5F7F4F8F4F9F4F0895991B79E00B -:105FC00004C0991F961708F0961B881F7A95C9F789 -:105FD0008095089597FB072E16F4009407D077FD5F -:105FE00009D00E94043007FC05D03EF490958195BD -:105FF0009F4F0895709561957F4F0895EE0FFF1F95 -:106000000590F491E02D0994AA1BBB1B51E107C038 -:10601000AA1FBB1FA617B70710F0A61BB70B881F38 -:10602000991F5A95A9F780959095BC01CD010895C7 -:10603000F999FECF92BD81BDF89A992780B5089550 -:10604000A8E1B0E042E050E00C943B30262FF999F3 -:10605000FECF1FBA92BD81BD20BD0FB6F894FA9A4B -:10606000F99A0FBE019608950E942630272F0C94AE -:106070002730DC01CB01FC01F999FECF06C0F2BD4F -:10608000E1BDF89A319600B40D9241505040B8F7F6 -:066090000895F894FFCF13 -:1060960020028B0F7C1059102510F10F0101C7014A -:1060A60028080A03140A3F4D3620395B080E08D823 -:1060B60007B8077F07F2060B0724073D075D0701B0 -:0A60C60002030405060708090000A4 +:10067000005B735D004B6579626F61726420737417 +:100680006172742E0A005B575D005B535D005B5224 +:100690005D005B445D005B435D0016034500720036 +:1006A00067006F0044006F007800200045005A008A +:1006B000000016034500720067006F0044006F00E1 +:1006C0007800200045005A000000040309040902D4 +:1006D0008D00050100A0FA090400000103010100DA +:1006E000092111010001223F000705810308000ACA +:1006F0000904010001030102000921110100012286 +:100700004D000705820308000A09040200010300E6 +:1007100000000921110100012236000705830308AA +:10072000000A09040300020300000009211101006E +:10073000012220000705840320000107050403208F +:100740000001090404000103000000092111010057 +:100750000122390007058503100001120110010074 +:10076000000008EDFE071301000102000105010968 +:1007700006A101050719E029E7150025019508756F +:100780000181020508190129059505750191029558 +:1007900001750391010507190029771500250195B9 +:1007A0007875018102C00631FF0974A10109751530 +:1007B0000025FF9520750881020976150025FF9513 +:1007C0002075089102C005010980A101850216016A +:1007D0000026B7001A01002AB700751095018100A4 +:1007E000C0050C0901A1018503160100269C021A0F +:1007F00001002A9C02751095018100C005010902C3 +:10080000A1010901A100050919012905150025010A +:100810009505750181029501750381010501093076 +:1008200009311581257F95027508810609381581E2 +:10083000257F950175088106050C0A38021581256A +:100840007F950175088106C0C005010906A1010553 +:100850000719E029E7150025019508750181029522 +:100860000175088101050819012905950575019192 +:10087000029501750391010507190029FF1500254F +:10088000FF950675088100C00A0025303258200007 +:100890006B6579626F6172645F7265706F72743AD2 +:1008A00020000A0025303258006B6579626F617252 +:1008B000645F7365745F6C65643A200064656C5FA7 +:1008C0006B65795F6269743A2063616E2774206496 +:1008D000656C3A20253032580A006164645F6B65AC +:1008E000795F6269743A2063616E27742061646481 +:1008F0003A20253032580A00646F6E652E0A006275 +:100900006F6F676D61676963207363616E3A202E54 +:100910002E2E2000290A002575002F002575005D68 +:1009200028002564002000256400200025640020A4 +:10093000002564007C0025303258006D6F757365AA +:100940006B6579205B62746E7C78207920762068F4 +:100950005D287265702F61636C293A205B006D6BB6 +:100960005F776865656C5F74696D655F746F5F6DF7 +:100970006178203D2025640A006D6B5F77686565AE +:100980006C5F6D61785F7370656564203D202564E0 +:100990000A006D6B5F74696D655F746F5F6D617880 +:1009A000203D2025640A006D6B5F6D61785F737078 +:1009B000656564203D2025640A006D6B5F696E7477 +:1009C000657276616C203D2025640A006D6B5F6462 +:1009D000656C6179203D2025640A006D6B5F776846 +:1009E00065656C5F74696D655F746F5F6D617820BC +:1009F0003D2025640A006D6B5F776865656C5F6DEF +:100A000061785F7370656564203D2025640A006D20 +:100A10006B5F74696D655F746F5F6D6178203D20F9 +:100A200025640A006D6B5F6D61785F737065656446 +:100A3000203D2025640A006D6B5F696E74657276D7 +:100A4000616C203D2025640A006D6B5F64656C61FC +:100A500079203D2025640A000A00257500363A20D9 +:100A6000776865656C5F74696D655F746F5F6D61F4 +:100A7000783A20000A00257500353A2077686565C8 +:100A80006C5F6D61785F73706565643A20000A0081 +:100A9000257500343A2074696D655F746F5F6D6110 +:100AA000783A20000A00257500333A206D61785F9E +:100AB00073706565643A20000A00257500323A209B +:100AC000696E74657276616C286D73293A20000A2C +:100AD00000257500313A2064656C6179282A31302F +:100AE0006D73293A20000A092D2056616C756573D3 +:100AF000202D0A004D3E004D25643E20003F00732E +:100B000065742064656661756C740A00433E20005C +:100B100077686572652064656C74613A20637572EC +:100B2000736F723D25642C20776865656C3D256484 +:100B30000A53656520687474703A2F2F656E2E779E +:100B4000696B6970656469612E6F72672F77696B75 +:100B5000692F4D6F7573655F6B6579730A000A09BC +:100B60002D204D6F7573656B6579202D0A455343B4 +:100B70002F713A09717569740A313A0964656C61BB +:100B800079282A31306D73290A323A09696E746501 +:100B90007276616C286D73290A333A096D61785F4A +:100BA00073706565640A343A0974696D655F746FC2 +:100BB0005F6D61780A353A09776865656C5F6D61CC +:100BC000785F73706565640A363A09776865656CA5 +:100BD0005F74696D655F746F5F6D61780A0A703A62 +:100BE000097072696E742076616C7565730A643A77 +:100BF000097365742064656661756C74730A757039 +:100C00003A092B310A646F776E3A092D310A706701 +:100C100075703A092B31300A7067646F776E3A0944 +:100C20002D31300A0A7370656564203D2064656C5F +:100C30007461202A206D61785F7370656564202A75 +:100C40002028726570656174202F2074696D655F5E +:100C5000746F5F6D6178290A003F004D3E200043AC +:100C60003E20004C25640A000A092D20436F6E7354 +:100C70006F6C65202D0A4553432F713A09717569D0 +:100C8000740A6D3A096D6F7573656B65790A000AB0 +:100C9000092D204D61676963202D0A643A09646556 +:100CA0006275670A783A096465627567206D6174D8 +:100CB0007269780A6B3A096465627567206B6579B9 +:100CC000626F6172640A6D3A096465627567206DCE +:100CD0006F7573650A763A0976657273696F6E0A85 +:100CE000733A097374617475730A633A09636F6EBA +:100CF000736F6C65206D6F64650A302D343A096C32 +:100D000061796572302D34284631302D4634290AF8 +:100D1000506175733A09626F6F746C6F61646572CC +:100D20000A653A09656570726F6D0A6E3A094E4B35 +:100D3000524F0A7A3A09736C656570204C4544201D +:100D4000746573740A000A002575002E6E6B726F4D +:100D50003A20000A002575002E737761705F62618A +:100D6000636B736C6173685F6261636B7370616303 +:100D7000653A20000A002575002E737761705F6761 +:100D8000726176655F6573633A20000A002575001D +:100D90002E6E6F5F6775693A20000A002575002E78 +:100DA000737761705F72616C745F726775693A2006 +:100DB000000A002575002E737761705F6C616C749A +:100DC0005F6C6775693A20000A002575002E636123 +:100DD00070736C6F636B5F746F5F636F6E74726F51 +:100DE0006C3A20000A002575002E737761705F63EE +:100DF0006F6E74726F6C5F636170736C6F636B3A6C +:100E000020000A0025303258006B65796D61705FF3 +:100E1000636F6E6669672E7261773A20000A00255B +:100E200075002E6D6F7573653A20000A00257500F8 +:100E30002E6B6579626F6172643A20000A00257535 +:100E4000002E6D61747269783A20000A00257500E1 +:100E50002E656E61626C653A20000A0025303258BA +:100E60000064656275675F636F6E6669672E7261A5 +:100E7000773A20000A0025750064656661756C7418 +:100E80005F6C617965723A20003F004E4B524F3AD9 +:100E9000206F66660A004E4B524F3A206F6E0A0072 +:100EA00074696D65725F636F756E743A20253034B6 +:100EB0006C580A006B6579626F6172645F6E6B7269 +:100EC0006F3A2025580A006B6579626F6172645F22 +:100ED00069646C653A2025580A006B6579626F6118 +:100EE00072645F70726F746F636F6C3A2025580A7A +:100EF00000686F73745F6B6579626F6172645F6CB9 +:100F000065647328293A2025580A000A092D2053C0 +:100F10007461747573202D0A004743433A20342EC0 +:100F2000392E33204156522D4C4942433A20312E1E +:100F3000382E31204156525F415243483A20617663 +:100F400072350A004F5054494F4E533A204C554683 +:100F50004120424F4F544D41474943204D4F555337 +:100F6000454B45592045585452414B455920434F14 +:100F70004E534F4C4520434F4D4D414E44204E4B18 +:100F8000524F203531320A004255494C443A203202 +:100F90003430646230632D6469727479202830398A +:100FA0003A35383A3539204A616E203238203230AD +:100FB0003136290A005649443A203078464545449E +:100FC000284572676F446F7820455A29205049445C +:100FD0003A20307831333037284572676F446F7864 +:100FE00020455A29205645523A2030783030303149 +:100FF0000A00444553433A20742E6D2E6B2E206B0D +:101000006579626F617264206669726D776172657D +:1010100020666F72204572676F646F780A000A0954 +:101020002D2056657273696F6E202D0A000A6D6F50 +:101030007573653A206F66660A000A6D6F75736591 +:101040003A206F6E0A000A6B6579626F6172643ACA +:10105000206F66660A000A6B6579626F6172643A96 +:10106000206F6E0A000A6D61747269783A206F66AB +:10107000660A000A6D61747269783A206F6E0A0020 +:101080000A64656275673A206F6E0A000A646562D9 +:1010900075673A206F66660A000A0A626F6F746CA1 +:1010A0006F616465722E2E2E2000433E2000656520 +:1010B000636F6E6669673A0A00536C656570204C11 +:1010C000454420746573740A0000000000000000AD +:1010D00000000000010204060A0F17202C3A4A5DA6 +:1010E00071879DB3C7DAE9F5FCFFFCF5E9DAC7B310 +:1010F0009D87715D4A3A2C20170F0A0604020100F1 +:101100000000000000000000000011241FBECFEF0F +:10111000DAE0DEBFCDBF04B603FE24C08091FB0140 +:101120009091FC01A091FD01B091FE018730904BA0 +:10113000A740B04BB9F41092FB011092FC01109241 +:10114000FD011092FE0114BE84B7877F84BF88E141 +:101150000FB6F89480936000109260000FBEE0E03C +:10116000FFE3099511E0A0E0B1E0ECE7F0E602C092 +:1011700005900D92AA33B107D9F711E0AAE3B1E0C7 +:1011800001C01D92AB3FB107E1F70E94FC110C9426 +:101190003C300C940000FF93EF93E0913A01F09102 +:1011A0003B01309709F00995EF91FF910895FC01FB +:1011B0008591803011F0EFDFFBCF0895FF27E0E24B +:1011C00030E247FF0CC0419597FF09C0EDE2609502 +:1011D000709580959095611D711D811D911D27FF52 +:1011E00002C0219530E350E2AA27660F771F881FBF +:1011F000991FAA1FA41710F0A41B63955A95A9F76D +:10120000AA3008F0A95FA05DAF93F3956115710551 +:101210008105910541F7ED3211F4EF93F395F21743 +:1012200018F43F93F395FBCF8F91B5DFFA95E1F773 +:101230000895E991F9918591803021F0853219F076 +:10124000AADFF9CF089520E0E89455915532C1F313 +:10125000503311F4689455915A3348F4505390F335 +:10126000220F022E220F220F200D250FF4CF0EF495 +:10127000219589919991533619F3533729F15335B3 +:1012800059F1BC0188279927E8945C3621F48991AB +:10129000999168945591543639F446EF7EF077FF72 +:1012A0000DC08FEF9FEF0AC055374AE039F058352F +:1012B00040E121F0523642E009F00895FF93EF93A8 +:1012C0007DDFEF91FF91B7CFFF93EF93FC01819109 +:1012D0008030B9F360DFFBCFFF93EF9368DFF1CF8E +:1012E000DF93CF93CDB7DEB72596A3DFCF91DF9104 +:1012F0000895462F50E04F30510508F0DEC0DC0164 +:10130000FA01EA5AFF4F12968C910C94F12F882320 +:1013100021F085EE0E94D918D0C085EE0E94A11957 +:10132000CCC0882349F00E94322490933D018093E1 +:101330003C0188EF91E0089580913C0190913D013E +:101340000E943E24873991050CF0A8C08AEE91E0F6 +:101350000895882349F00E94322490933D018093A0 +:101360003C0187EE91E0089580913C0190913D0110 +:101370000E943E24873991050CF093C089ED91E0DD +:101380000895882349F00E94322490933D01809370 +:101390003C0182ED91E0089580913C0190913D01E6 +:1013A0000E943E24873991050CF07EC080EC91E0CC +:1013B0000895882349F00E94322490933D01809340 +:1013C0003C018BEB91E0089580913C0190913D01AF +:1013D0000E943E24873991050CF069C08DEA91E0A6 +:1013E0000895882349F00E94322490933D01809310 +:1013F0003C0188EA91E0089580913C0190913D0183 +:101400000E943E24873991050CF054C08AE991E08E +:101410000895882309F451C085E891E00895882350 +:1014200009F44BC080E791E00895882309F445C092 +:101430008BE591E00895882309F43FC086E491E0AC +:1014400008958823D1F18DE391E008958823A9F1CF +:1014500088E291E00895882381F183E191E0089585 +:10146000882359F18EEF90E00895882331F180911F +:10147000BE019091BF01A091C001B091C10120E2D5 +:10148000822780729927AA27BB278093BE01909359 +:10149000BF01A093C001B093C1010FC085EF91E0DF +:1014A000089584EE91E008958BEC91E0089586EB29 +:1014B00091E0089583EA91E0089580E090E0089536 +:1014C00008956091BE017091BF018091C00190911B +:1014D000C1010E94672356985E9825982D982698FA +:1014E0002E9827982F98833099F028F4813041F076 +:1014F000823049F00895843049F0853061F00895D4 +:10150000259A2D9A0895269A2E9A0895259A2D9A0D +:10151000279A2F9A0895259A2D9A269A2E9A279AD5 +:101520002F9A089581E69AE0892B11F00E94610AB2 +:1015300080E090E0089556985E9825982D9826981A +:101540002E9827982F988FEF90E0909389008093A2 +:10155000880090938B0080938A0090938D008093F5 +:101560008C00259A2D9A2FEF80E792E02150804041 +:101570009040E1F700C00000269A2E9A2FEF80E7F6 +:1015800092E0215080409040E1F700C00000279A8F +:101590002F9A2FEF80E792E0215080409040E1F7B2 +:1015A00000C0000025982D982FEF80E792E0215091 +:1015B00080409040E1F700C0000026982E982FEF61 +:1015C00080E792E0215080409040E1F700C00000A9 +:1015D00027982F9856985E9825982D9826982E989B +:1015E00027982F98089589EA8093800089E0809356 +:1015F000810024982C983F988AB18F748AB96E988C +:10160000479A8BB1806B8BB9769A0E949B0A80E6D1 +:101610009AE0892B11F00E94600A80E090E0089522 +:1016200080E28093000180913E0181110EC00E94F2 +:101630005F0B81E080933E012FEF83ED90E321501B +:1016400080409040E1F700C0000080E40E94650BFC +:101650008093000181112EC00E948F0B80930001A6 +:10166000811128C00E948F0B80930001811122C03C +:101670008FE30E948F0B8093000181111BC00E9499 +:10168000870B80E40E94650B80930001811112C0DA +:101690008CE00E948F0B8093000181110BC00E948F +:1016A0008F0B80930001811105C08FE30E948F0B87 +:1016B000809300010E94870B809100010895109291 +:1016C000B9008AE08093B800089594EA9093BC0032 +:1016D0009091BC0097FFFCCF9091B900987F983013 +:1016E00021F0903111F081E008958093BB0084E8EF +:1016F0008093BC008091BC0087FFFCCF8091B90033 +:10170000887F883111F0803471F780E0089584E992 +:101710008093BC008091BC0084FDFCCF0895809331 +:10172000BB0084E88093BC008091BC0087FFFCCFA5 +:101730009091B900987F81E0983209F480E0089593 +:1017400084E88093BC008091BC0087FFFCCF80912F +:10175000BB00089580910001811115C080E40E94B2 +:10176000650B8093000181110CC082E10E948F0BF8 +:1017700080930001811105C08FEF0E948F0B809331 +:1017800000010E94870B84B1807F84B985B1807F7E +:1017900085B98AB1837F8AB98BB1837F8BB93E9833 +:1017A000469808950E94100B809300010E94AA0B96 +:1017B00080B38C7080BB81B3836F81BBA0E4B1E048 +:1017C000EEE4F1E08EE08E0F11921D928E13FCCFAD +:1017D00083EF9AE0892B11F00C94F30A08959F92FD +:1017E000AF92BF92CF92DF92EF92FF920F931F932F +:1017F000CF93DF93809100018823E1F080913F0136 +:101800008F5F80933F01811115C087E596E00E94AC +:10181000D7080E94100B80930001882329F08DE3E4 +:1018200096E00E94D70806C089E296E00E94D70899 +:101830000E949B0A00E411E0C0E0D0E0BB24B39416 +:1018400082E0A82ECC24C394D12C2AE1E22E26E0FB +:10185000F22EC730D10500F580910001811164C0DE +:1018600080E40E94650B80930001811112C082E127 +:101870000E948F0B8093000181110BC0C6010C2EBA +:1018800001C0880F0A94EAF780950E948F0B80931D +:1018900000010E94870B48C0CA30A1F028F4C8306C +:1018A00059F0C93061F005C0CC3089F070F0CD300E +:1018B00089F0209A289810C0219A29980DC0229A60 +:1018C0002A980AC0239A2B9807C0529A01C0539AAB +:1018D0005B9802C03E9A469890EA9A95F1F79FB1BC +:1018E000799902C082E001C080E091709B25982B1D +:1018F0007C9902C084E001C080E0892B7D9902C000 +:1019000038E001C030E0832B7E9902C020E101C0A5 +:1019100020E0822B9FB19095991F9927991F92954E +:10192000990F907E892B10C080910001811174C0A5 +:1019300080E40E94650B80930001882309F459C05C +:10194000912C0E94870B892DF8019081981739F10D +:10195000808380910101882301F18091D90180FF6A +:1019600004C08FE196E00E94D7088091D90180FFE2 +:101970000CC0809101011F928F93FF92EF920E9401 +:1019800070090F900F900F900F908091D90180FFF8 +:1019900004C088E196E00E94D708A09201010E944D +:1019A000AA0B21960F5F1F4FCE30D10509F051CF02 +:1019B000809101018823B1F0815080930101882337 +:1019C00039F08FE99FE00197F1F700C000000AC0ED +:1019D000AEE4B1E0E0E4F1E0CF01825F91919D934C +:1019E0008E13FCCF82E99AE0892BC1F00E94920A03 +:1019F00015C083E10E948F0B809300018111A0CF5D +:101A000081E40E94650B80930001811199CF0E94AF +:101A1000A00B982E909495CF80E096CF81E0DF9137 +:101A2000CF911F910F91FF90EF90DF90CF90BF90DB +:101A3000AF909F900895E82FF0E0E25BFE4F808129 +:101A40000895CF92DF92EF92FF920F931F93CF935F +:101A5000DF9381E096E00E94D7088EE4E82E81E0D3 +:101A6000F82EC0E0D0E09CEFC92E95E0D92E03EF10 +:101A700015E0DF93CF93DF92CF920E94700989EF38 +:101A800095E00E94D708F70181917F0190E00E94C4 +:101A9000CD239F938F931F930F930E94700981EF23 +:101AA00095E00E94D70821968DB79EB708960FB68D +:101AB000F8949EBF0FBE8DBFCE30D105D1F6DF9119 +:101AC000CF911F910F91FF90EF90DF90CF900895ED +:101AD0008B3B910578F4883A910540F5853A91055C +:101AE000D0F48430910508F0B1C08130910509F43B +:101AF000ADC06BC0803E910508F467C0883E91057B +:101B000008F4A4C09C01205F31092031310508F0A0 +:101B10005CC090650895853A910509F459C0863AEC +:101B2000910509F058C082E890E40895883A91053B +:101B300009F454C0893A910509F453C08A3A9105D1 +:101B400009F452C08B3A910509F451C08C3A9105C1 +:101B500009F450C08D3A910509F44FC0803B9105BE +:101B600009F44EC08E3A910509F44DC08F3A9105A3 +:101B700009F44CC0813B910509F44BC0823B9105AF +:101B800009F44AC0833B910509F449C0843B91059F +:101B900009F448C0853B910509F447C0863B91058F +:101BA00009F446C0873B910509F445C0883B91057F +:101BB00009F444C0893B910509F443C08A3B91056F +:101BC00009F442C080E094E4089580E090E0089534 +:101BD00081E890E4089583E890E4089582EE94E427 +:101BE000089589EE94E408958AEE94E4089585EBCF +:101BF00094E4089586EB94E4089587EB94E40895C3 +:101C00008CEC94E408958DEC94E4089583E895E4D5 +:101C100008958AE895E4089582E995E4089584E9B1 +:101C200095E4089581E296E4089583E296E40895A8 +:101C300084E296E4089585E296E4089586E296E4C7 +:101C4000089587E296E408958AE296E40895089557 +:101C500096E0799FF001112494E5899FE00DF11D34 +:101C60001124E60FF11DEE0FFF1FEF5FFD4F859171 +:101C700094910895880F991FFC01E558FF4F8591B5 +:101C800094910895880F991FFC01E550FE4F8591AE +:101C90009491089526E0729FF001112444E5849FF9 +:101CA000E00DF11D1124E60FF11DEE0FFF1FEF5F98 +:101CB000FD4F859194919C013A9521154FE1340790 +:101CC00008F41AC13F512115304120F49F700E9441 +:101CD000420E08959C0130532115304118F4992784 +:101CE000906C0895811520E5920769F40E94271DE4 +:101CF0004FEF84E39CE0415080409040E1F700C00A +:101D000000000C948D24813020E5920731F48091FD +:101D1000D90181608093D90108959C013055211526 +:101D2000304108F051C0292F33272F70332721303D +:101D30003105D9F4AC014370552702C0220F331F7F +:101D40004A95E2F73C68AC0164E0440F551F6A9580 +:101D5000E1F744275370242B352B73E0880F991F2C +:101D60007A95E1F7807699271DC02230310529F454 +:101D7000982F8827816F906A089523303105A9F440 +:101D8000AC014370552721E030E002C0220F331F21 +:101D90004A95E2F73C6843E0880F991F4A95E1F7BE +:101DA000807E9770822B932B089524303105E1F4C7 +:101DB000AC014370552721E030E002C0220F331FF1 +:101DC0004A95E2F73A68E7CF9C0130572115304138 +:101DD00018F49F70906208959C013058211530418D +:101DE00018F49F70906A0895803E9105E0F4803C5D +:101DF000910558F58133910509F46FC048F4893293 +:101E0000910509F463C08A32910509F46DC072C06E +:101E100089339105E9F082389105D1F08533910538 +:101E200009F44DC067C0833E910581F138F4803ECE +:101E30009105B9F0823E9105D9F05CC0863E9105CE +:101E400061F1873E9105A1F155C00E943A0E0895B7 +:101E50002091EC0120FD02C021FF4CC080EE90E0FB +:101E600049C08091EC0180FFF9CF89E390E042C046 +:101E70008091EC0182FF0EC08091EC0184FF03C0D1 +:101E800080E090E037C083EE90E034C08091EC01B8 +:101E900082FFF2CF82EE90E02DC08091EC0183FFB3 +:101EA0000BC08091EC0184FDEBCF87EE90E022C067 +:101EB0008091EC0183FFF5CF86EE90E01BC080910E +:101EC000EC0185FF07C089E290E014C08091EC012D +:101ED00085FFF9CF85E390E00DC08091EC0186FF8E +:101EE00007C08AE290E006C08091EC0186FFF9CF3E +:101EF00081E390E00E94680D0895089580916F013C +:101F000008959FB7F89410925E019FBF9091F201DF +:101F1000943009F057C09091E9009F703091EC0027 +:101F2000232F217030FD20E8922B24E02093E9003C +:101F30002091EB0020FF43C02091EE0027FF3FC01F +:101F400020915C01222321F02091E80025FF37C079 +:101F500010925C0126E03091E80035FD15C030910B +:101F6000F201343061F53091EB0035FD28C021508D +:101F700021F481E080935C0122C0EFE9FFE031971A +:101F8000F1F700C00000E7CF8093F1008091E800F6 +:101F900085FD0AC08091E80080FFFCCF8091E800B9 +:101FA0008E778093E80006C08FB7F89421E02093E5 +:101FB0005E018FBF9F709093E90080E008959F704D +:101FC0009093E9008FEF0895CF93DF9300D01F9295 +:101FD000CDB7DEB79C018091F201843019F593E012 +:101FE00099833B832A839093E9008FEF9091E800D7 +:101FF000815095FD06C095ED9A95F1F7000081118D +:10200000F5CF8091E80085FF0DC040E050E063E02F +:1020100070E0CE0101960E94B4128091E8008E77A4 +:102020008093E8000F900F900F90DF91CF9108956B +:10203000CF93DF9300D01F92CDB7DEB72091F2018E +:10204000243021F522E029839B838A8383E08093D7 +:10205000E9008FEF9091E800815095FD06C095ED65 +:102060009A95F1F700008111F5CF8091E80085FF86 +:102070000DC040E050E063E070E0CE0101960E94A8 +:10208000B4128091E8008E778093E8000F900F9053 +:102090000F90DF91CF9108952091F2012430F1F457 +:1020A00022E02093E9002FEF3091E800215035FD28 +:1020B00006C035ED3A95F1F700002111F5CF2091DA +:1020C000E80025FF0BC040E050E065E070E00E94B2 +:1020D000B4128091E8008E778093E8000895CF9342 +:1020E000DF932091F201243009F048C0EC01809187 +:1020F0000C018823E1F080910D018823C1F085E077 +:102100008093E9008FEF9091E800815095FD06C023 +:1021100095E19A95F1F700008111F5CF8091E800E3 +:1021200085FF2CC040E050E060E170E017C081E026 +:102130008093E9008FEF9091E800815095FD06C0F3 +:1021400095ED9A95F1F700008111F5CF8091E800A7 +:1021500085FF14C040E050E068E070E0CE010E94CE +:10216000B4128091E8008E778093E80080E1FE0150 +:10217000AFE5B1E001900D928A95E1F7DF91CF9143 +:10218000089586E996E00E94D7088091F1018111B7 +:1021900009C00E9449140E94A6148091E200846044 +:1021A0008093E200089582E996E00E94D708109299 +:1021B000F10108958EE896E00C94D7088AE896E03D +:1021C0000E94D7080C945D2E86E896E00E94D708FE +:1021D0000E9423240E94632E0E944B170C947D0FB3 +:1021E00020915D012F5F822F62E30E94D12F9923FE +:1021F00019F020935D01089510925D0180915E01B8 +:10220000882371F18091F201843041F58091E900D9 +:102210008F702091EC00922F917020FD90E8892B17 +:1022200094E09093E9009091EB0090FF14C090919E +:10223000EE0097FF10C09091E80095FF03C0109248 +:10224000F100F9CF9091E80090FF05C09091E8006F +:102250009E779093E8008F708093E90010925E0162 +:10226000089542E061EC81E00E94C31342E061EC1A +:1022700082E00E94C31342E061EC83E00E94C3133A +:1022800042E261EC84E00E94C31342E161EC85E02C +:102290000C94C3138091F401833009F455C030F4D9 +:1022A000813071F0823009F48EC008958A3009F4CB +:1022B0007AC08B3009F460C0893009F09CC020C01E +:1022C0008091F301813A09F096C08091E800877F00 +:1022D0008093E8008091F7019091F801892B21F417 +:1022E00060E18FE591E003C060E080E090E070E0A5 +:1022F0000E94FF128091E8008B778093E800089598 +:102300008091F301813209F076C08091F7019091BC +:10231000F801009719F0049709F06DC08091E8006A +:10232000877F8093E8008091E80082FD05C080915E +:10233000F2018111F8CF5FC08091F10080936F01AD +:102340008091E8008B7753C08091F301813A09F0C6 +:1023500052C08091F7019091F801892B09F04BC090 +:102360008091E800877F8093E8008091E80080FFFB +:10237000FCCF80910C0136C08091F3018132D9F5F8 +:102380008091F7019091F801892BA9F58091E800DF +:10239000877F8093E8000E94F8138091F501809375 +:1023A0000C010C94271D8091F301813221F580915D +:1023B000E800877F8093E8000E94F8138091F6017F +:1023C0008093700108958091F301813AA1F4809186 +:1023D000E800877F8093E8008091E80080FFFCCFD1 +:1023E000809170018093F1008091E8008E77809356 +:1023F000E8000C94F813089584B7877F84BF88E1C0 +:102400000FB6F89480936000109260000FBE90E0C9 +:1024100080E80FB6F89480936100909361000FBE3E +:102420000E94D8170E9449140E94A6148091E200CD +:1024300084608093E20081E89FE00E9462237894A8 +:102440000E942B170E94DA1782E091E00E94461743 +:102450000E944B2E85E796E00E94D7088091F201FA +:10246000853089F481E796E00E94D7080E94E7232F +:102470008091F001882391F30E940F24882371F347 +:102480000E949E12EBCF0E940818E8CF292F332715 +:1024900023303105C9F064F42130310581F0223058 +:1024A000310509F043C08DE890E02EEC36E042C0E3 +:1024B00021323105F1F02232310541F137C082E19C +:1024C00090E02BE537E036C099278130910541F047 +:1024D0008230910541F0892B49F5EAECF6E005C020 +:1024E000E2EBF6E002C0EAE9F6E0849190E09F01B9 +:1024F00021C06530D8F4E62FF0E0EE0FFF1FEB5D52 +:10250000FE4F2081318189E090E014C0653070F485 +:1025100070E0FB01EE0FFF1FE55EFE4F2081318171 +:10252000FB01EA5EFE4F808190E004C080E090E015 +:1025300020E030E0FA0131832083089580E189BDF5 +:1025400082E189BD09B400FEFDCF8091D8008F7D66 +:102550008093D8008091E00082608093E0008091B9 +:10256000E00081FDFCCF0895CF92DF92EF92FF92C1 +:102570000F931F93CF93DF93EC018B016A010E94AD +:102580001714811133C0C114D10439F0F6018081D0 +:102590009181081B190BC80FD91FE12CF12C0115D3 +:1025A000110519F18091E80085FD16C08091E800C1 +:1025B0008E778093E800C114D10449F0F601808140 +:1025C0009181E80EF91EF182E08285E00FC00E9441 +:1025D0001714882321F30AC089918093F1000150D8 +:1025E0001109FFEFEF1AFF0ADACF80E0DF91CF91F8 +:1025F0001F910F91FF90EF90DF90CF900895209161 +:10260000F9013091FA012617370748F06115710575 +:1026100039F42091E8002E772093E80001C0B90139 +:1026200040E061157105A9F12091F201222309F41E +:1026300043C0253009F442C02091E80023FD40C08A +:102640002091E80022FD32C02091E80020FFE9CF70 +:102650004091F3002091F20030E0342BFC01CF01D7 +:102660006115710559F02830310540F4819180934E +:10267000F100615071092F5F3F4FF1CF41E02830E9 +:10268000310509F040E02091E8002E772093E80022 +:10269000C8CF4111C9CF0AC08091F201882361F0EF +:1026A000853061F08091E80083FD0AC08091E800E8 +:1026B00082FFF2CF80E0089582E0089583E00895DC +:1026C00081E008952091F9013091FA01261737072A +:1026D00048F06115710539F42091E8002E772093B8 +:1026E000E80001C0B901FC0120E06115710591F11C +:1026F0008091F201882309F440C0853009F43FC07D +:102700008091E80083FD3DC08091E80082FD2FC0EC +:102710008091E80080FFE9CF2091F3008091F200E2 +:1027200090E0922B6115710559F08830910540F4C5 +:1027300024912093F1003196615071090196F2CFF6 +:1027400021E0089709F020E08091E8008E778093DF +:10275000E800CBCF2111CCCF0AC08091F2018823B1 +:1027600061F0853061F08091E80083FD0AC08091BE +:10277000E80082FFF2CF80E0089582E0089583E0D0 +:10278000089581E00895982F973058F59093E900C7 +:10279000981739F07091EC002091ED005091F00005 +:1027A00003C0242F762F50E021FF19C03091EB0099 +:1027B0003E7F3093EB003091ED003D7F3093ED0094 +:1027C0003091EB0031603093EB007093EC0020937C +:1027D000ED005093F0002091EE0027FF07C09F5FAF +:1027E000D3CF8F708093E90081E0089580E0089551 +:1027F0008091F30187FF11C08091E80082FD05C040 +:102800008091F2018111F8CF11C08091E8008B779F +:102810000BC08091F201882349F08091E80080FF8D +:10282000F8CF8091E8008E778093E800089520919A +:10283000E4003091E50095E64091EC00842F817032 +:1028400040FF22C08091E80080FD1CC08091F20111 +:10285000882391F0853091F08091EB0085FD10C0C8 +:102860004091E4005091E5004217530729F39A0183 +:10287000915011F784E0089582E0089583E008956F +:1028800081E0089580E008954091E80042FFDECFA6 +:1028900008950E94B7140E94BF14E0EEF0E080811A +:1028A00081608083E8EDF0E080818F77808319BCC0 +:1028B000A7EDB0E08C918E7F8C9380818F7E80839A +:1028C0001092F10108950F931F93CF93DF930E940D +:1028D000B7140E94BF14C8EDD0E088818F77888339 +:1028E00088818068888388818F7D888319BC109255 +:1028F000F2011092EE011092F0011092EF0100EE41 +:1029000010E0F80180818B7F8083888181608883DB +:1029100042E060E080E00E94C313E1EEF0E08081DD +:102920008E7F8083E2EEF0E0808181608083808111 +:1029300088608083F80180818E7F808388818061B8 +:102940008883DF91CF911F910F910895E8EDF0E01A +:1029500080818F7E8083E7EDF0E0808181608083DD +:1029600084E082BF81E08093F1010C946314E8ED70 +:10297000F0E080818E7F80831092E20008951092B3 +:10298000DA001092E10008951F920F920FB60F9295 +:1029900011242F933F934F935F936F937F938F9364 +:1029A0009F93AF93BF93EF93FF938091E10082FFDA +:1029B0000BC08091E20082FF07C08091E1008B7F15 +:1029C0008093E1000E94F0108091DA0080FF1FC028 +:1029D0008091D80080FF1BC08091DA008E7F8093A9 +:1029E000DA008091D90080FF0DC080E189BD82E1CD +:1029F00089BD09B400FEFDCF81E08093F2010E9401 +:102A0000C11005C019BC1092F2010E94D310809130 +:102A1000E10080FF19C08091E20080FF15C0809125 +:102A2000E2008E7F8093E2008091E20080618093DB +:102A3000E2008091D80080628093D80019BC85E0C4 +:102A40008093F2010E94DE108091E10084FF30C08B +:102A50008091E20084FF2CC080E189BD82E189BDC4 +:102A600009B400FEFDCF8091D8008F7D8093D800FF +:102A70008091E1008F7E8093E1008091E2008F7E63 +:102A80008093E2008091E20081608093E200809177 +:102A9000EE01882311F084E007C08091E30087FDF8 +:102AA00002C081E001C083E08093F2010E94E41043 +:102AB0008091E10083FF29C08091E20083FF25C05F +:102AC0008091E100877F8093E10082E08093F201B2 +:102AD0001092EE018091E1008E7F8093E100809161 +:102AE000E2008E7F8093E2008091E200806180931B +:102AF000E20042E060E080E00E94C3138091F000B9 +:102B000088608093F0000E94DA10FF91EF91BF91EE +:102B1000AF919F918F917F916F915F914F913F9175 +:102B20002F910F900FBE0F901F9018951F920F922C +:102B30000FB60F9211242F933F934F935F936F9390 +:102B40007F938F939F93AF93BF93CF93DF93EF9335 +:102B5000FF93C091E900CF708091EC00D82FD17025 +:102B600080FDD0E81092E9008091F000877F80938B +:102B7000F00078940E94DA151092E9008091F0003C +:102B800088608093F000CD2BCF70C093E900FF9157 +:102B9000EF91DF91CF91BF91AF919F918F917F91F5 +:102BA0006F915F914F913F912F910F900FBE0F90BA +:102BB0001F9018951F93CF93DF93CDB7DEB7AA97D9 +:102BC0000FB6F894DEBF0FBECDBFE3EFF1E088E0B3 +:102BD0008E0F9091F10091938E13FBCF0E944A11BA +:102BE0008091E80083FF1FC18091F3019091F4016F +:102BF000492F50E04A30510508F015C1FA01EB5950 +:102C0000FF4F0C94F12F803881F0823809F00BC10E +:102C10008091F7018F708093E9008091EB0085FB34 +:102C2000882780F91092E90006C08091EF01909109 +:102C3000F001911182609091E800977F9093E800F5 +:102C40008093F1001092F100C8C0282F2D7F09F069 +:102C5000EAC0882319F0823061F0E5C08091F50167 +:102C6000813009F0E0C0933009F080E08093F001FA +:102C70002BC08091F501811127C08091F7018F70E1 +:102C800009F4D1C08093E9002091EB0020FF1CC023 +:102C9000933021F48091EB00806214C09091EB009E +:102CA00090619093EB0021E030E0A90102C0440F55 +:102CB000551F8A95E2F74093EA001092EA0080914E +:102CC000EB0088608093EB001092E9008091E800AF +:102CD000877F86C08111A7C01091F5011F77809171 +:102CE000E3008078812B8093E3008091E800877F68 +:102CF0008093E8000E94F8138091E80080FFFCCFE9 +:102D00008091E30080688093E300111102C082E0AB +:102D100001C083E08093F20186C08058823008F0C1 +:102D200082C08091F5019091F6018C3D53E09507AA +:102D300079F583E08A838AE289834FB7F894DE01CC +:102D4000139620E03EE051E2E32FF0E0509357006D +:102D5000E49120FF03C0E295EF703F5FEF708E2F8C +:102D600090E0EA3010F0C79601C0C0968D939D9315 +:102D70002F5F243149F74FBF8091E800877F809310 +:102D8000E8006AE270E0CE0101960E94FF1214C0D2 +:102D9000AE014F5F5F4F6091F7010E944612BC0188 +:102DA000892B09F440C09091E800977F9093E80048 +:102DB00089819A810E9462138091E8008B778093C9 +:102DC000E80031C0803879F58091E800877F8093F2 +:102DD000E8008091EE018093F1008091E8008E7709 +:102DE0008093E8000E94F8131EC081111CC09091CE +:102DF000F5019230C0F48091E800877F8093E8006D +:102E00009093EE010E94F8138091EE01811106C0AB +:102E10008091E30087FD02C081E001C084E08093DF +:102E2000F2010E9431118091E80083FF0AC0809175 +:102E3000E800877F8093E8008091EB0080628093B8 +:102E4000EB00AA960FB6F894DEBF0FBECDBFDF91A0 +:102E5000CF911F910895CF938091F2018823A1F023 +:102E6000C091E900CF709091EC00892F817090FDA6 +:102E700080E8C82B1092E9008091E80083FD0E9451 +:102E8000DA15CF70C093E900CF9108959093760141 +:102E9000809375010895E0917501F0917601309766 +:102EA00021F00190F081E02D099480E00895EF92E7 +:102EB000FF920F931F93CF93DF93E0917501F091F1 +:102EC00076013097B1F18C010280F381E02D0995F4 +:102ED0008091D90182FF2DC080FF04C080E998E075 +:102EE0000E94D708E80110E18AE8E82E88E0F82E71 +:102EF0008091D90180FF0BC088811F928F93FF9230 +:102F0000EF920E9470090F900F900F900F90115048 +:102F100021961111EDCF8091D90180FF0AC088E878 +:102F200098E0DF91CF911F910F91FF90EF900C945B +:102F3000D708DF91CF911F910F91FF90EF900895E7 +:102F4000E0917501F0917601309721F00480F581D0 +:102F5000E02D099408952091730130917401821736 +:102F6000930771F09093740180937301E091750160 +:102F7000F0917601309721F00680F781E02D0994D9 +:102F8000089520917101309172018217930771F0B9 +:102F90009093720180937101E0917501F091760137 +:102FA000309721F00084F185E02D0994089508956B +:102FB0000C94D7170E9429240E94D20B0C94EF2462 +:102FC000CF93C82F8091D90182FF1EC080FF04C01B +:102FD00089EA98E00E94D7088091D90180FF0CC04F +:102FE0001F92CF9384EA98E09F938F930E94700979 +:102FF0000F900F900F900F908091D90180FF04C027 +:1030000082EA98E00E94D7088C2FCF910C947D0F14 +:10301000CF92DF92EF92FF920F931F93CF93DF93A4 +:10302000CDB7DEB72B970FB6F894DEBF0FBECDBF7E +:103030000E94EF0B88E7C82E81E0D82E00E010E058 +:10304000E02E802F0E941B0DF60141916F01F42E9E +:10305000F826B1F40F5F1F4F0E30110589F78FEF7F +:1030600089838A831B820E9432248160782F9D830A +:103070008C8349815A816B818D810E94AB1840C03D +:103080009091D90191FF04C08B870E94210D8B85FF +:1030900020E030E04F2D50E0922FBA01022E02C006 +:1030A000759567950A94E2F760FF24C02E83EF823E +:1030B00021E030E0690102C0CC0CDD1C9A95E2F7FA +:1030C00090E08C219D21892B09F420E028870E9423 +:1030D00032248160782F9A8789874E815F81688545 +:1030E0008A850E94AB18F801E858FE4F8081C826F7 +:1030F000C08206C02F5F3F4F2630310569F6AACF48 +:103100000E946028109177010E944B171817A1F0B8 +:103110000E944B17809377012B960FB6F894DEBF71 +:103120000FBECDBFDF91CF911F910F91FF90EF9018 +:10313000DF90CF900C94E0172B960FB6F894DEBF7B +:103140000FBECDBFDF91CF911F910F91FF90EF90F8 +:10315000DF90CF900895CF93DF93CDB7DEB72B9755 +:103160000FB6F894DEBF0FBECDBF4F835887698777 +:103170007A878B87DE01119686E0FD0111928A9590 +:10318000E9F785E0FE01379601900D928A95E1F707 +:1031900049815A816B817C818D819E810E94C11FF2 +:1031A0002B960FB6F894DEBF0FBECDBFDF91CF9147 +:1031B0000895CF93882309F4C2C0C82F823859F4E8 +:1031C0000E944B1781FDBBC089E30E945D220E94D3 +:1031D0003C2389E30CC0833879F40E944B1780FDAF +:1031E000AEC083E50E945D220E943C2383E50E94DD +:1031F000B022CF910C943C23843859F40E944B1791 +:1032000082FD9DC087E40E945D220E943C2387E4EA +:10321000EECF8CEF8C0F813A48F48C2F0E94F32C68 +:1032200081118DC08C2F0E945D22E3CF80E28C0F34 +:10323000883048F4C77081E001C0880FCA95EAF76A +:103240000E940523D6CF8BE58C0F833078F4C53AE6 +:1032500029F0C63A31F083E890E005C081E890E0BB +:1032600002C082E890E0CF910C94AB1788E58C0FF8 +:10327000833108F064C0C83A39F1C93A41F1CA3A19 +:1032800049F1CB3A51F1CC3A59F1CD3A61F1C03B19 +:1032900069F1CE3A71F1CF3A79F1C13B81F1C23B8C +:1032A00089F1C33B91F1C43B99F1C53BA1F1C63B08 +:1032B000A9F1C73BB1F1C83BB9F1C93BC1F1CA3B68 +:1032C000C9F180E090E038C082EE90E035C089EE30 +:1032D00090E032C08AEE90E02FC085EB90E02CC0E9 +:1032E00086EB90E029C087EB90E026C08CEC90E064 +:1032F00023C08DEC90E020C083E891E01DC08AE8F7 +:1033000091E01AC082E991E017C084E991E014C00D +:1033100081E292E011C083E292E00EC084E292E08A +:103320000BC085E292E008C086E292E005C087E229 +:1033300092E002C08AE292E0CF910C94C117CF9143 +:103340000895882309F44BC0823859F40E944B1722 +:1033500081FF45C089E30E945D220E943C2389E3EE +:103360000CC0833871F40E944B1780FF38C083E58E +:103370000E945D220E943C2383E50E94B0220C94AF +:103380003C23843859F40E944B1782FF28C087E4FD +:103390000E945D220E943C2387E4EFCF9CEF980FB0 +:1033A000913A58F390E2980F983050F4877091E07A +:1033B00001C0990F8A95EAF7892F0E940B23DFCF6E +:1033C0009BE5980F933020F480E090E00C94AB17CD +:1033D000885A833120F480E090E00C94C11708955E +:1033E000882321F00E9405230C943C230895882310 +:1033F00021F00E940B230C943C230895BF92CF929E +:10340000DF92EF92FF920F931F93CF93DF9300D041 +:1034100000D000D0CDB7DEB725E0FC01DE0111966B +:1034200001900D922A95E1F7FC01408131810281E2 +:10343000258122952F7063817481672B09F4E5C281 +:103440003F3F19F44F3F09F4E0C27C0149833A83BE +:1034500089819A812E830E941C22182FB92E0E94E6 +:103460001B220E94E220EB2DE295EF70F0E0E15983 +:10347000FF4F2E810C94F12F8B2D807F9B2D9F7001 +:10348000F92E882319F0F29480EFF822002349F0F6 +:10349000FF2009F467C28F2D0E9415230E943C2350 +:1034A00061C2812F0E94A119FF2009F4AEC28F2DA5 +:1034B0000E941B2326960FB6F894DEBF0FBECDBF29 +:1034C000DF91CF911F910F91FF90EF90DF90CF9000 +:1034D000BF900C943C233B2D307F8B2D8F7030326E +:1034E00011F08295807F112319F0113021F12CC049 +:1034F0000023B9F0222309F4A0C1213009F09DC1B5 +:1035000026960FB6F894DEBF0FBECDBFDF91CF91E8 +:103510001F910F91FF90EF90DF90CF90BF900C9490 +:103520002523222319F0213009F46FC28E830E94D3 +:1035300028238E8196C1002321F0223008F065C235 +:103540007CC1211162C28DC1002321F0222309F424 +:1035500074C108C2222309F484C119C22B2D2695F7 +:103560002695237030E02115310521F021303105F9 +:10357000D1F04BC2002321F0812F9B2D937002C00C +:1035800080E090E026960FB6F894DEBF0FBECDBF68 +:10359000DF91CF911F910F91FF90EF90DF90CF902F +:1035A000BF900C94AB17002321F0812F9B2D9370BB +:1035B00002C080E090E026960FB6F894DEBF0FBE02 +:1035C000CDBFDF91CF911F910F91FF90EF90DF90D2 +:1035D000CF90BF900C94C117812F002319F00E9447 +:1035E000E62602C00E944E2726960FB6F894DEBF4C +:1035F0000FBECDBFDF91CF911F910F91FF90EF9044 +:10360000DF90CF90BF900C94D3278B2D837009F05F +:103610007BC00111FAC1812F829586958770880F32 +:10362000880F912F9F70C92ED12CE12CF12C082EE0 +:1036300004C0CC0CDD1CEE1CFF1C0A94D2F714FF56 +:1036400012C04FE050E060E070E004C0440F551F2E +:10365000661F771F8A95D2F7CB01BA0160957095E6 +:103660008095909503C060E070E0CB012B2D2695EE +:1036700026952370422F50E042305105D9F0433057 +:10368000510569F16C297D298E299F294130510509 +:1036900051F126960FB6F894DEBF0FBECDBFDF9175 +:1036A000CF911F910F91FF90EF90DF90CF90BF903F +:1036B0000C9409216C297D298E299F2926960FB605 +:1036C000F894DEBF0FBECDBFDF91CF911F910F9158 +:1036D000FF90EF90DF90CF90BF900C9425210E9437 +:1036E0000921C701B60126960FB6F894DEBF0FBEBA +:1036F000CDBFDF91CF911F910F91FF90EF90DF90A1 +:10370000CF90BF900C94ED20002319F08B2D817089 +:1037100001C08695882309F478C1812F829586950A +:103720008770880F880F912F9F70C92ED12CE12CA4 +:10373000F12C082E04C0CC0CDD1CEE1CFF1C0A94DE +:10374000D2F714FF12C04FE050E060E070E004C018 +:10375000440F551F661F771F8A95D2F7CB01BA0118 +:10376000609570958095909503C060E070E0CB0106 +:103770002B2D269526952370422F50E0423051057F +:10378000D9F04330510569F16C297D298E299F2993 +:103790004130510551F126960FB6F894DEBF0FBEA9 +:1037A000CDBFDF91CF911F910F91FF90EF90DF90F0 +:1037B000CF90BF900C94E3216C297D298E299F29FD +:1037C00026960FB6F894DEBF0FBECDBFDF91CF9126 +:1037D0001F910F91FF90EF90DF90CF90BF900C94CE +:1037E000FF210E94E321C701B60126960FB6F89487 +:1037F000DEBF0FBECDBFDF91CF911F910F91FF9024 +:10380000EF90DF90CF90BF900C94C721103FD1F183 +:1038100018F4103E50F4A1C0123F09F463C008F43C +:103820004CC0133F09F473C098C01F708B2D8F716B +:103830000023A1F00E946021812F26960FB6F894F4 +:10384000DEBF0FBECDBFDF91CF911F910F91FF90D3 +:10385000EF90DF90CF90BF900C94F0190E948121DF +:10386000812F26960FB6F894DEBF0FBECDBFDF9135 +:10387000CF911F910F91FF90EF90DF90CF90BF906D +:103880000C94F7190023A9F02111BFC08B2D8F7163 +:1038900026960FB6F894DEBF0FBECDBFDF91CF9155 +:1038A0001F910F91FF90EF90DF90CF90BF900C94FD +:1038B000A621223008F0A9C0E9CF0023A9F08B2D62 +:1038C0008F7126960FB6F894DEBF0FBECDBFDF9185 +:1038D000CF911F910F91FF90EF90DF90CF90BF900D +:1038E0000C946021002359F38B2D8F7126960FB60F +:1038F000F894DEBF0FBECDBFDF91CF911F910F9126 +:10390000FF90EF90DF90CF90BF900C948121002327 +:1039100099F08B2D8F7126960FB6F894DEBF0FBEEF +:10392000CDBFDF91CF911F910F91FF90EF90DF906E +:10393000CF90BF900C944B2126960FB6F894DEBF23 +:103940000FBECDBFDF91CF911F910F91FF90EF90F0 +:10395000DF90CF90BF900C9441210023A9F0222347 +:1039600009F4ADCF812F26960FB6F894DEBF0FBEB7 +:10397000CDBFDF91CF911F910F91FF90EF90DF901E +:10398000CF90BF900C94D918222309F4ADCF812F8A +:1039900026960FB6F894DEBF0FBECDBFDF91CF9154 +:1039A0001F910F91FF90EF90DF90CF90BF900C94FC +:1039B000A1194B2D4F70612FC7010E9479092696DE +:1039C0000FB6F894DEBF0FBECDBFDF91CF911F9130 +:1039D0000F91FF90EF90DF90CF90BF900C946520F7 +:1039E0004B2D4F70612FC70126960FB6F894DEBF9E +:1039F0000FBECDBFDF91CF911F910F91FF90EF9040 +:103A0000DF90CF90BF900C94270E26960FB6F894B7 +:103A1000DEBF0FBECDBFDF91CF911F910F91FF9001 +:103A2000EF90DF90CF90BF9008950E9422230E94D4 +:103A3000F7220E943C230E9406290E94D32780E09F +:103A400090E00E94AB1780E090E00C94C1170E94B8 +:103A500012230C94151D0E941C22292F22952F70D1 +:103A600030E02C3031054CF42A3031056CF4225012 +:103A700031092230310588F407C02C30310549F076 +:103A80002F30310531F009C0803E48F0803F29F4E5 +:103A900006C093FB882780F9089580E0089581E0AF +:103AA0000895CF93DF9300D000D01F92CDB7DEB73B +:103AB0000F900F900F900F900F90DF91CF9108957E +:103AC000CF93DF9300D000D000D0CDB7DEB72696DD +:103AD0000FB6F894DEBF0FBECDBFDF91CF91089532 +:103AE0001F93CF93DF93C091860116E080918701E9 +:103AF000C81799F0D0E01C9FF0011D9FF00D112414 +:103B0000E857FE4F408151816281738184819581A4 +:103B10000E94601D2196C770E9CFDF91CF911F9160 +:103B200008954091B8015091B9016091BA01709126 +:103B3000BB018091BC019091BD010C94601D8091EE +:103B4000BD0182958F7009F054C08091BA0188231D +:103B500009F44FC080918601A09187016091B8015E +:103B60007091B9014091BB015091BC01B6E08A1738 +:103B700009F43FC090E041155105C1F17F3F11F4B8 +:103B80006F3FA1F1B89FF001B99FF00D1124E857E4 +:103B9000FE4F218172132AC02081621327C0228127 +:103BA000211124C0238134812417350710F42150BA +:103BB0003109241B350B283C3105C0F42091BD018F +:103BC0002F7020612093BD0126E0289FF001299FDE +:103BD000F00D1124E357FE4F80818F708061808348 +:103BE00088EB91E00E94FE190C94701D019687707D +:103BF000BECF0895CF92DF92EF92FF920F931F9363 +:103C0000CF93DF93CDB7DEB762970FB6F894DEBFE0 +:103C10000FBECDBF8C0185E0F801DE011D9601903D +:103C20000D928A95E1F7D8014C9111965C9111970C +:103C300012966C9112971396CD90DC901497309158 +:103C4000B8017091B9018091BB019091BC010097BE +:103C500009F46BC17F3F19F43F3F09F466C1E0905E +:103C6000BA01EE2009F4C0C02091BD01C816D906E2 +:103C700028F0F601E81BF90BCF0104C08095909560 +:103C80008C0D9D1DFF24F394883C910578F0F12C58 +:103C9000207F09F0C6C07C2DD98AC88A89890E94F4 +:103CA000511D88EB91E00E94FE19B1C0822F807FE8 +:103CB00009F046C0751314C0341312C0611110C04E +:103CC0002F7020612093BD010E94911D88EB91E02F +:103CD0000E94FE198091BD01D80115968C932EC0CB +:103CE000CD2819F15F3F11F44F3FF9F0F62E611125 +:103CF0001CC0809186012091870136E0821709F46B +:103D00005AC090E0389FF001399FF00D1124E85718 +:103D1000FE4F7181571306C07081471303C0728133 +:103D2000711103C001968770E9CFF62E662309F45E +:103D300018C18091BD0181608093BD01F12C11C13A +:103D4000751308C0341306C0611104C08091BD0111 +:103D5000D801C3C04D875E878D859E856A8B0E9482 +:103D60002B1D6A898823E1F16623D1F12091BD01E1 +:103D7000822F82958F7090E0029774F08091B80145 +:103D80009091B90198878F831986DB86CA862C8724 +:103D9000CE0107960E94FE1986E0F801A8EBB1E07B +:103DA00001900D928A95E1F70E949F1D0E94911D3E +:103DB000FF24F394D6C04D875E878D859E850E9433 +:103DC0001C22292F22952F7030E0223031050CF073 +:103DD000BCC09F7009F0B6C0805E883008F4C1C0D6 +:103DE000C8010E94FE19E4CFC816D90608F453C0D2 +:103DF000F601E81BF90BCF01883C910508F450C08F +:103E0000F12C7C2DD98AC88A89890E94511DE8EB42 +:103E1000F1E086E0DF011D928A95E9F70E94911D8D +:103E2000A0C0751314C0341312C0611110C080916A +:103E3000BD01F8018583C8010E94FE1986E0E8EB08 +:103E4000F1E0DF011D928A95E9F7FE2C8AC04D87CB +:103E50005E878D859E856A8B0E942B1D6A898823CB +:103E600009F4BECF662309F4BBCF2091BD01822F98 +:103E700082958F7090E002970CF48ECF8091B801FC +:103E80009091B9019A8389831B82DD82CC822E8333 +:103E9000CE0101967FCF809590958C0D9D1DACCF66 +:103EA000F62E662309F49CCF75132EC034132CC054 +:103EB0002091BD0120FD1FC0822F82958F70D9F007 +:103EC000D80115962C9315978F3049F08F5F982F56 +:103ED0009295907F822F8F70892B15968C93C801B5 +:103EE0000E94FE1986E0F801A8EBB1E001900D9266 +:103EF0008A95E1F793CF86E0F801A8EBB1E0019055 +:103F00000D928A95E1F72DC04D875E878D859E8540 +:103F10000E942B1D811140CF8091BD018160809353 +:103F2000BD01C8010E94FE191CC0662309F458CFC8 +:103F30004D875E878D859E850E942B1D882309F401 +:103F40004FCF2ACF811148CF0CC0243031050CF05F +:103F500047CF9F7009F440CFF8019581907F09F019 +:103F60003BCF8F2D62960FB6F894DEBF0FBECDBF4C +:103F7000DF91CF911F910F91FF90EF90DF90CF9045 +:103F800008951F93CF93DF93CDB7DEB72C970FB66D +:103F9000F894DEBF0FBECDBF4F83588769877A87FD +:103FA0008B879C87CE0107960E94FA1D882369F0B3 +:103FB0008F8198852A853B85232BF1F19F3F09F05E +:103FC00063C08F3F09F060C037C086E0FE013796BE +:103FD000DE01119601900D928A95E1F76F81788547 +:103FE000EA85FB85309741F17F3F11F46F3F21F166 +:103FF0002091870130E0C90101968770992740918F +:10400000860150E08417950709F447C069837A83D5 +:10401000FD83EC8396E0929FD001939FB00D112415 +:10402000A857BE4FFE01319601900D929A95E1F787 +:10403000809387010E94701D16E080918601909107 +:1040400087018917C1F1189FC001112488579E4F1D +:104050000E94FA1D882379F1E09186011E9FF001EC +:104060001124E857FE4F4081518162817381848120 +:1040700095810E94601D8091860190E00196877075 +:10408000992780938601D9CF4F81588569857A8594 +:104090008B859C850E94601DCFCF0E94271D1092AA +:1040A000870110928601E8EBF1E086E0DF011D92C6 +:1040B0008A95E9F7C1CF2C960FB6F894DEBF0FBEF4 +:1040C000CDBFDF91CF911F910895EF92FF920F9393 +:1040D0001F93CF93DF938C01892B09F46CC0F12CD3 +:1040E000EE24E394E8012196F8018491843740F4AA +:1040F000843008F051C0813081F0823019F15BC00A +:10410000853709F444C0A8F19CE7980F903708F070 +:1041100052C08F770E94A11941C00E5F1F4FFE0150 +:10412000C49180E28C0F883048F4C7708E2D01C096 +:10413000880FCA95EAF70E94152314C08C2F0E949D +:10414000D9182DC00E5F1F4FFE01C49180E28C0F65 +:10415000883058F4C7708E2D01C0880FCA95EAF7D1 +:104160000E941B230E943C231AC08C2F0E94A1197D +:1041700016C00E5F1F4FFE01C491CC2381F08FE962 +:104180009FE00197F1F700C00000C150F6CF0E5F2D +:104190001F4FFE01F49003C00E94D9188E018F2D8D +:1041A000882309F49FCFEFE9FFE03197F1F700C0D2 +:1041B00000008150F5CFDF91CF911F910F91FF90BB +:1041C000EF90089508956093C2017093C3018093A6 +:1041D000C4019093C5010C94151D0F931F9300917A +:1041E000C2011091C3012091C4013091C501DC01CD +:1041F000CB01802B912BA22BB32B8093C2019093E8 +:10420000C301A093C401B093C5011F910F910C94F9 +:10421000151D0F931F930091C2011091C3012091AE +:10422000C4013091C501DC01CB0180239123A2237D +:10423000B3238093C2019093C301A093C401B093B0 +:10424000C5011F910F910C94151D0F931F930091A1 +:10425000C2011091C3012091C4013091C501DC015C +:10426000CB0180279127A227B3278093C201909387 +:10427000C301A093C401B093C5011F910F910C9489 +:10428000151D1092BE011092BF011092C001109234 +:10429000C1010C94151D41E050E060E070E004C0E5 +:1042A000440F551F661F771F8A95D2F74093BE01B2 +:1042B0005093BF016093C0017093C1010C94151D10 +:1042C00041E050E060E070E004C0440F551F661FFD +:1042D000771F8A95D2F78091BE019091BF01A0917E +:1042E000C001B091C101482B592B6A2B7B2B409305 +:1042F000BE015093BF016093C0017093C1010C9443 +:10430000151D41E050E060E070E004C0440F551F0F +:10431000661F771F8A95D2F74095509560957095E6 +:104320008091BE019091BF01A091C001B091C101E7 +:10433000482359236A237B234093BE015093BF0136 +:104340006093C0017093C1010C94151D41E050E0D1 +:1043500060E070E004C0440F551F661F771F8A9508 +:10436000D2F78091BE019091BF01A091C001B091A0 +:10437000C101482759276A277B274093BE015093E4 +:10438000BF016093C0017093C1010C94151D0F9380 +:104390001F930091BE011091BF012091C001309187 +:1043A000C101DC01CB01802B912BA22BB32B80937D +:1043B000BE019093BF01A093C001B093C1011F91B2 +:1043C0000F910C94151D0F931F930091BE01109136 +:1043D000BF012091C0013091C101DC01CB018023DC +:1043E0009123A223B3238093BE019093BF01A09396 +:1043F000C001B093C1011F910F910C94151D0F9333 +:104400001F930091BE011091BF012091C001309116 +:10441000C101DC01CB0180279127A227B32780931C +:10442000BE019093BF01A093C001B093C1011F9141 +:104430000F910C94151D0895CF92DF92EF92FF9289 +:104440000F931F93CF93DF938C01C090C201D09044 +:10445000C301E090C401F090C5014091BE015091AC +:10446000BF016091C0017091C101C42AD52AE62A1A +:10447000F72ACFE1D0E0D701C6010C2E04C0B695D3 +:10448000A795979587950A94D2F780FF07C0B80142 +:104490008C2F0E944A0E8130910531F4219758F7F4 +:1044A000B80180E00E944A0EDF91CF911F910F91D9 +:1044B000FF90EF90DF90CF90089590910C01992399 +:1044C00021F090910D01911109C020910E013091C0 +:1044D0000F01F90132969FEF40E030C0982F96957A +:1044E000969596959F30A0F4E0910E01F0910F0102 +:1044F000E90FF11D877021E030E0A90102C0440FEF +:10450000551F8A95E2F7CA019181892B818308950D +:104510009091D90190FF23C01F928F938AED98E06C +:104520009F938F930E9470090F900F900F900F90A0 +:1045300008959F3F39F04F5F4E3041F0519158132D +:10454000F8CF0DC05111F7CF942FF5CF9F3F39F021 +:10455000F901E90FF11D97FDFA95828308950895F9 +:1045600090910C01992321F090910D01911109C0B6 +:1045700020910E0130910F01F9013296205F3F4FDB +:1045800030C0982F9695969596959F30A8F4E09117 +:104590000E01F0910F01E90FF11D877021E030E06D +:1045A000A90102C0440F551F8A95E2F7CA01809500 +:1045B00091818923818308959091D90190FF16C03C +:1045C0001F928F938CEB98E09F938F930E947009BA +:1045D0000F900F900F900F9008953196E217F30708 +:1045E00029F090819813F9CF1082F7CF089581E0D8 +:1045F00090E0E0910E01F0910F01E80FF91F108299 +:10460000019680319105A9F708959091D801892BE1 +:104610008093D801089580959091D8018923809343 +:10462000D80108951092D80108959091D701892B4F +:104630008093D701089580959091D7018923809325 +:10464000D70108951092D70108958093C601089567 +:104650001092C601089580910E0190910F01FC0106 +:1046600031969C01205F3F4F80E0919191118F5FC7 +:10467000E217F307D1F70895E0910E01F0910F01D1 +:104680008091D8018083E0910E01F0910F0190811B +:104690008091D701892B80838091C601882361F0A6 +:1046A000E0910E01F0910F019081892B80830E948F +:1046B0002B2381111092C60180910E0190910F0160 +:1046C0000C94571790933B0180933A010895CF9231 +:1046D000DF92EF92FF926C01EE24FF24C114D1040B +:1046E000E104F10421F0C701B60120E101C020E09E +:1046F000C72ED82EE92EFF24C114D104E104F10401 +:1047000019F0285FC701B6016B017C0154E0F694F3 +:10471000E794D794C7945A95D1F7C114D104E10412 +:10472000F10419F02C5FC701B6016B017C0142E076 +:10473000F694E794D794C7944A95D1F7C114D1045D +:10474000E104F10419F02E5FC701B601DC01CB01D1 +:10475000B695A79597958795892B8A2B8B2B09F072 +:104760002F5F822FFF90EF90DF90CF90089582957A +:10477000982F9C7C392F36953695282F237344E04B +:10478000249FC0011124932F982B292F2A7A269534 +:10479000892F8575880F822B08951F93CF93DF9300 +:1047A0001F92CDB7DEB799830E94B723182F998146 +:1047B000892F0E94B723212F30E0322F2227A90111 +:1047C000482BCA010F90DF91CF911F9108958091DE +:1047D000F201843009F11092DA0120E488E190E0DE +:1047E0000FB6F894A895809360000FBE20936000E8 +:1047F00083B7817F846083BF83B7816083BF7894F0 +:10480000889583B78E7F83BF88E10FB6F894809335 +:104810006000109260000FBE089508950895CF9330 +:104820000E940D240E94EF0B0E940E24C0E08C2FEA +:104830000E941B0D811104C0CF5FCE30C1F701C0B3 +:1048400081E0CF9108950E94271D0E944B170C9480 +:104850007D0F82E084BD93E095BD9AEF97BD809374 +:104860006E0008952FB7F8948091DB019091DC01E0 +:10487000A091DD01B091DE012FBF0895CF92DF92AC +:10488000EF92FF920F931F932FB7F8944091DB01A3 +:104890005091DC016091DD017091DE012FBF6A0152 +:1048A0007B01EE24FF248C0120E030E0C016D1060D +:1048B000E206F30610F4415051099A01281B390B06 +:1048C000C9011F910F91FF90EF90DF90CF90089555 +:1048D0001F920F920FB60F9211248F939F93AF9355 +:1048E000BF938091DB019091DC01A091DD01B0913B +:1048F000DE010196A11DB11D8093DB019093DC01C7 +:10490000A093DD01B093DE01BF91AF919F918F9194 +:104910000F900FBE0F901F9018950E944914F894A5 +:104920002FEF87EA91E6215080409040E1F700C0E8 +:10493000000087E090EBDC018093FB019093FC0189 +:10494000A093FD01B093FE019CE088E10FB6F894BE +:10495000A895809360000FBE90936000FFCFEF9208 +:10496000FF920F931F93CF93DF93D82FC0E08C2F2C +:104970000E941B0D00E010E0E82EF12CC701002E74 +:1049800002C0959587950A94E2F780FD06C00F5FF7 +:104990001F4F0630110591F709C0602F7C2F80E072 +:1049A0000E94280ED813F3CF81E004C0CF5FCE3031 +:1049B000F1F680E0DF91CF911F910F91FF90EF9082 +:1049C0000895CF93C82F8CE20E94AF24882321F052 +:1049D0008C2FCF910C94AF2480E0CF910895CF938A +:1049E0000E943E26811102C00E9424268FEF98E08B +:1049F0000E94D708C5E6C15049F00E94EF0B8FE333 +:104A00009CE90197F1F700C00000F5CF88EF98E02E +:104A10000E94D70889E20E94E124811113C18AE231 +:104A20000E94E12481110E94242685E00E94E12455 +:104A300081110E948D240E9449268093D90187E02C +:104A40000E94E1248823A9F18BE10E94E1248823BC +:104A500051F08091D90181FB222720F991E0922722 +:104A600090FB81F90EC08EE00E94E124882361F062 +:104A70008091D90182FB222720F991E0922790FBB7 +:104A800082F98093D90115C080E10E94E1249091C0 +:104A9000D901882341F093FB222720F981E0822766 +:104AA00080FB93F904C0892F809580FB90F9909347 +:104AB000D9018091D9010E944D260E945B268093E6 +:104AC000EC0180EE0E94E124882341F08091EC010A +:104AD000982F909590FB80F98093EC0189E30E94D8 +:104AE000E124882359F08091EC0181FB222720F9F1 +:104AF00091E0922790FB81F98093EC0182EE0E9475 +:104B0000E124882359F08091EC0182FB222720F9CF +:104B100091E0922790FB82F98093EC0186EE0E944F +:104B2000E124882359F08091EC0183FB222720F9AE +:104B300091E0922790FB83F98093EC0183EE0E9431 +:104B4000E124882359F08091EC0184FB222720F98D +:104B500091E0922790FB84F98093EC0185E30E9419 +:104B6000E124882359F08091EC0185FB222720F96C +:104B700091E0922790FB85F98093EC0181E30E94FC +:104B8000E124882359F08091EC0186FB222720F94B +:104B900091E0922790FB86F98093EC0181E10E94DD +:104BA000E124882359F08091EC0187FB222720F92A +:104BB00091E0922790FB87F98093EC018091EC01C2 +:104BC0000E945F268091EC0187FB882780F9809303 +:104BD0000D0187E20E94E124C82F8EE10E94E124AA +:104BE0008111C2608FE10E94E1248111C46080E2E2 +:104BF0000E94E1248111C86081E20E94E1248111B8 +:104C0000C06182E20E94E1248111C06283E20E94BD +:104C1000E1248111C06484E20E94E124882311F020 +:104C2000C06802C0CC2329F08C2F0E9456266C2F1E +:104C300003C00E945226682F70E080E090E0CF9180 +:104C40000C94E320CF9108956DEE7EEF80E090E02C +:104C50000E94273060E082E090E00E94193060E01E +:104C600083E090E00E94193060E084E090E00E94D0 +:104C7000193060E085E090E00C94193080E090E01D +:104C80000E94133021E08D3E9E4F09F020E0822FDC +:104C9000089582E090E00C940B30682F82E090E061 +:104CA0000C94193083E090E00C940B30682F83E073 +:104CB00090E00C94193084E090E00C940B30682F55 +:104CC00084E090E00C9419308091E10180FF0BC0EA +:104CD0006091130185E0689FB00111247595679577 +:104CE000759567952BC081FF09C06091130185E020 +:104CF000689FB00111247595679520C082FF07C099 +:104D00006091130185E0689FB001112417C0909154 +:104D1000E2019923D1F060911201961788F7209152 +:104D2000130185E0289F90011124929FA001939F79 +:104D3000500D112470E0CA010E94DD2F603871050A +:104D400040F46115710539F002C065E070E0862F0E +:104D500008958FE7089581E008958091E10180FF33 +:104D600008C06091110170E075956795759567951C +:104D700021C081FF06C06091110170E075956795B3 +:104D800019C082FF04C06091110170E010C09091C1 +:104D9000E2019923C1F0609110019617A0F780916C +:104DA0001101899FC001112470E00E94DD2F60383D +:104DB000710528F46115710521F0862F08958FE79C +:104DC000089581E0089561E070E0F4CF803F21F420 +:104DD0000E946426819504C0813F29F40E946426C4 +:104DE0008093E5010895823F21F40E946426819515 +:104DF00004C0833F29F40E9464268093E40108954F +:104E0000893F19F40E94AD2605C08A3F31F40E9403 +:104E1000AD2681958093E60108958B3F21F40E9491 +:104E2000AD26819504C08C3F29F40E94AD26809365 +:104E3000E7010895843F21F48091E301816017C068 +:104E4000853F21F48091E301826011C0863F21F407 +:104E50008091E30184600BC0873F21F48091E301DE +:104E6000886005C0883F31F48091E30180618093C0 +:104E7000E30108958D3F21F48091E10181600BC031 +:104E80008E3F21F48091E101826005C08F3F29F4BB +:104E90008091E10184608093E1010895803F39F4BD +:104EA0008091E50187FF6CC01092E50169C0813FE8 +:104EB00029F48091E5011816BCF362C09091E401D9 +:104EC000823F29F497FF5CC01092E40159C0833FF0 +:104ED00019F41916CCF354C0893F41F48091E601CE +:104EE00018160CF04DC01092E6014AC08A3F29F412 +:104EF0008091E60187FF44C0F6CF8B3F39F4809163 +:104F0000E70187FF3DC01092E7013AC08C3F29F4CA +:104F10008091E7011816BCF333C0843F21F48091DF +:104F2000E3018E7F17C0853F21F48091E3018D7FDF +:104F300011C0863F21F48091E3018B7F0BC0873F36 +:104F400021F48091E301877F05C0883F31F480918F +:104F5000E3018F7E8093E30113C08D3F21F48091A4 +:104F6000E1018E7F0BC08E3F21F48091E1018D7FA6 +:104F700005C08F3F29F48091E1018B7F8093E1018F +:104F80008091E40181110EC08091E50181110AC078 +:104F90008091E601811106C08091E701811102C074 +:104FA0001092E20108958091D90183FF7EC08BE3C6 +:104FB00099E00E94D7088091E3011F928F9386E3C6 +:104FC00099E09F938F930E94700984E399E00E9477 +:104FD000D7088091E401282F332727FD30953F9390 +:104FE0008F9381E399E09F938F930E9470098FE2E2 +:104FF00099E00E94D7088091E501282F332727FDEB +:1050000030953F938F938CE299E09F938F930E940A +:1050100070098AE299E00E94D7088091E601282F62 +:10502000332727FD30953F938F9387E299E09F9335 +:105030008F930E94700985E299E00E94D7088091C1 +:10504000E701282F332727FD30953F938F9382E286 +:1050500099E09F938F930E9470098FE199E00E94DD +:10506000D7088091E2011F928F938CE199E09F9382 +:105070008F930E9470098AE199E00E94D70880917D +:10508000E1011F928F9387E199E09F938F930E9494 +:10509000700984E199E00E94D7088DB79EB74C96BD +:1050A0000FB6F8949EBF0FBE8DBF83EE91E00E94B5 +:1050B000A0170E9432249093E0018093DF010895AD +:1050C0001F93CF93DF938091DF019091E0010E94C5 +:1050D0003E24AC019091E201992321F0209114012A +:1050E00030E006C0209115018AE0289F900111242C +:1050F0004217530708F486C08091E401C091E5018E +:10510000D091E6011091E701811107C0C11176C06D +:10511000D11174C0111172C075C09F3F19F09F5F0B +:105120009093E201181624F40E9464268093E4010F +:105130008091E40187FF05C00E94642681958093D9 +:10514000E4011C1624F40E9464268093E5018091FA +:10515000E50187FF05C00E94642681958093E501E3 +:105160006091E401662339F1C091E501CC2319F186 +:10517000772767FD7095872F972F0E94E22E23E3F4 +:1051800033E343E35FE30E94462F0E94AF2E609318 +:10519000E4016C2F772767FD7095872F972F0E946A +:1051A000E22E23E333E343E35FE30E94462F0E94B2 +:1051B000AF2E6093E5011D1624F40E94AD26809366 +:1051C000E6018091E60187FF05C00E94AD2681952A +:1051D0008093E601111624F40E94AD268093E70126 +:1051E0008091E70187FF05C00E94AD2681958093DD +:1051F000E701DF91CF911F910C94D3279F3F09F0D6 +:105200008ECF96CFDF91CF911F910895E3EEF1E01D +:1052100085E0DF011D928A95E9F71092E201109274 +:10522000E10108958EE59BE00E94D7081F9281E07E +:105230008F931F9285E08F9380E19BE09F938F93E4 +:105240000E9470090F900F900F900F900F900F9089 +:1052500008958330E9F128F4813061F0823009F15A +:105260000895853009F462C008F449C0863009F415 +:1052700074C0089580911501262F30E0280F311D4C +:105280002F3F310524F4680F6093150103C08FEFA1 +:1052900080931501809115011F928F9389E49AE004 +:1052A00072C080911401262F30E0280F311D2F3F4E +:1052B000310524F4680F6093140103C08FEF8093CD +:1052C0001401809114011F928F9387E39AE05BC0D1 +:1052D00080911301262F30E0280F311D2F3F31051B +:1052E00024F4680F6093130103C08FEF80931301C0 +:1052F000809113011F928F9384E29AE044C08091C1 +:105300001201262F30E0280F311D2F3F310524F4E4 +:10531000680F6093120103C08FEF80931201809198 +:1053200012011F928F938FE09AE02DC0809111019E +:10533000262F30E0280F311D2F3F310524F4680F50 +:105340006093110103C08FEF8093110180911101CF +:105350001F928F9386EF99E016C080911001262F3F +:1053600030E0280F311D2F3F310524F4680F609382 +:10537000100103C08FEF80931001809110011F92E4 +:105380008F938BED99E09F938F930E9470090F90FC +:105390000F900F900F900895833081F128F48130A1 +:1053A00059F08230D1F00895853009F449C0B8F140 +:1053B000863009F456C0089580911501681720F4CD +:1053C000861B8093150102C0109215018091150172 +:1053D0001F928F938CEC99E054C080911401681750 +:1053E00020F4861B8093140102C010921401809156 +:1053F00014011F928F938AEB99E043C080911301AF +:10540000681720F4861B8093130102C010921301C9 +:10541000809113011F928F9387EA99E032C08091A7 +:105420001201681720F4861B8093120102C01092AB +:105430001201809112011F928F9382E999E021C09D +:1054400080911101681720F4861B8093110102C01E +:1054500010921101809111011F928F9389E799E0B9 +:1054600010C080911001681720F4861B80931001F2 +:1054700002C010921001809110011F928F938EE54F +:1054800099E09F938F930E9470090F900F900F9057 +:105490000F900895CF93C82F1F928F9383E69CE0BF +:1054A0009F938F930E94700981E090E0A0E0B0E0AC +:1054B000BC01CD0104C0660F771F881F991FCA95D4 +:1054C000D2F70E94E3200F900F900F900F90CF9192 +:1054D0000C94271DCF938D3109F465C0B0F58E3043 +:1054E00009F4CCC100F5873009F49BC1A8F48630DB +:1054F00009F06DC28091D901817F8E7F8093D9019F +:1055000088E69CE00E94D7088AEA90E10E94D708CA +:1055100081E08093E90180C1883009F44FC08B306D +:1055200009F47CC154C2863109F4F0C138F48031E9 +:1055300009F4B8C1813109F430C249C2893109F492 +:10554000CEC18B3109F486C142C2853309F437C21A +:1055500048F4873209F433C208F433C2893209F4BB +:105560002EC235C2833438F48A3308F02CC2883313 +:1055700009F454C12CC2833409F421C2883409F0DF +:1055800026C20E94271D89E990E10E94D7089FEF5B +:1055900023ED80E3915020408040E1F700C00000FF +:1055A0000E948D2439C189EB90E10E94D7080E94A6 +:1055B000692E0E944B170E947D0F2EC18EEA90E14A +:1055C0000E94D70889E79EE00E94D7080E945226D1 +:1055D0001F928F9386E79EE09F938F930E9470099E +:1055E00084E79EE00E94D7080E944926C82F81E6E2 +:1055F0009EE00E94D7081F92CF938CE59EE09F9378 +:105600008F930E9470098AE59EE00E94D70880E58A +:105610009EE00E94D7088C2F81701F928F938DE49B +:105620009EE09F938F930E9470098BE49EE00E94FE +:10563000D70881E49EE00E94D708C1FB882780F943 +:105640001F928F938EE39EE09F938F930E94700929 +:105650008CE39EE00E94D70880E39EE00E94D7087A +:10566000C2FB882780F91F928F938DE29EE09F9363 +:105670008F930E9470098BE29EE00E94D70882E21D +:105680009EE00E94D708C3FBCC27C0F91F92CF939E +:105690008FE19EE09F938F930E9470098DE19EE0C1 +:1056A0000E94D7080E945B26C82F89E09EE00E94D6 +:1056B000D7081F92CF9384E09EE09F938F930E9420 +:1056C000700982E09EE00E94D70889EE9DE00E946A +:1056D000D7088C2F81701F928F9386EE9DE09F9349 +:1056E0008F930E9470098DB79EB780960FB6F8947D +:1056F0009EBF0FBE8DBF84EE9DE00E94D7088DEC4B +:105700009DE00E94D708C1FB882780F91F928F93E4 +:105710008AEC9DE09F938F930E94700988EC9DE036 +:105720000E94D70886EB9DE00E94D708C2FB88271D +:1057300080F91F928F9383EB9DE09F938F930E943C +:10574000700981EB9DE00E94D7088FE99DE00E94DF +:10575000D708C3FB882780F91F928F938CE99DE0BF +:105760009F938F930E9470098AE99DE00E94D70859 +:1057700080E99DE00E94D708C4FB882780F91F922A +:105780008F938DE89DE09F938F930E9470098BE823 +:105790009DE00E94D70889E79DE00E94D708C5FBDD +:1057A000882780F91F928F9386E79DE09F938F93C0 +:1057B0000E94700984E79DE00E94D70888E59DE07B +:1057C0000E94D708C6FB882780F91F928F9385E532 +:1057D0009DE09F938F930E94700983E59DE00E9456 +:1057E000D7088BE49DE00E94D708C7FBCC27C0F9FF +:1057F0001F92CF9388E49DE09F938F930E9470093E +:1058000086E49DE00E94D7088DB79EB74C960FB6F0 +:10581000F8949EBF0FBE8DBFC1E0DEC08FE89CE054 +:105820005BC08091D901C82FC17080FF09C08CE88E +:1058300090E10E94D7088091D901817F8E7F47C077 +:1058400080E890E10E94D7088091D901816080931F +:10585000D901E2CF9091D90191FBCC27C0F981E029 +:10586000C827892FC0FB81F98093D901CC2319F077 +:1058700083E790E127C085E690E12EC09091D901A1 +:1058800092FBCC27C0F981E0C827892FC0FB82F9A1 +:105890008093D901CC2319F086E590E113C086E40A +:1058A00090E11AC09091D90193FBCC27C0F981E017 +:1058B000C827892FC0FB83F98093D901CC2351F0ED +:1058C0008AE390E10E94D7088091D901816080939A +:1058D000D90182C08DE290E10E94D7089DCF8EE170 +:1058E00090E10E94D70882EF9FE00E94D70885EBE5 +:1058F0009FE00E94D70888E89FE00E94D70884E4D0 +:105900009FE00E94D70889E19FE0E6CF8BE09FE00F +:105910000E94D7080E944B171F928F9381EF9EE041 +:105920009F938F930E94700980910C011F928F9317 +:105930008AED9EE09F938F930E9470098091700181 +:105940001F928F9387EC9EE09F938F930E94700924 +:1059500080910D011F928F9384EB9EE09F938F9314 +:105960000E9470098091DB019091DC01A091DD0122 +:10597000B091DE01BF93AF939F938F9380EA9EE037 +:105980009F938F930E9470098DB79EB746960FB66E +:10599000F8949EBF0FBE8DBF3FCF0E94271DC091C0 +:1059A0000D0181E0C827C0930D01CC2329F086E9C1 +:1059B0009EE00E94D70810C08BE89EE08DCF80E06B +:1059C00003C08D5101C089530E944A2A25CF89E81E +:1059D0009EE00E94D708C0E08C2FCF91089580E010 +:1059E000089580E00895CF93C82F8091E901813018 +:1059F00081F020F0823009F44FC045C1E0910E01E2 +:105A0000F0910F018081813169F0823209F03DC14E +:105A100009C0E0910E01F0910F018081813111F0F8 +:105A2000823261F48C2F0E94EF2C811104C08C2FE4 +:105A30000E946A2A2FC081E090E02CC08C2F0E9427 +:105A4000F12C811126C0C431E1F070F4CB3081F02B +:105A5000C031D1F40E9412298BE59CE00E94D70846 +:105A600082E08093E90115C0C93259F0C83361F46E +:105A700088E69CE00E94D7088FE59CE00E94D7084A +:105A800008C01092E90103C189E59CE00E94D70893 +:105A9000FEC081E08170FDC0C43220F5CE3108F037 +:105AA000C0C0CB3099F1C8F4C73009F0D2C08AE049 +:105AB0008093150194E19093140193E09093130166 +:105AC0008093120188E08093110188E28093100195 +:105AD0008FEF9AE00E94D708BFC0C33149F1C431AB +:105AE000C1F0B7C0CB3409F4A9C028F4C93289F099 +:105AF000C83361F0AEC0C13509F49EC0C23509F4A7 +:105B000099C0CE3409F0A5C06AE09EC00E94122957 +:105B1000A3C08091E801882319F01092E8019CC08D +:105B20008CE09BE00E94D70881E08093E901B1C03E +:105B300086EE9AE00E94D70884ED9AE00E94D7088A +:105B4000809115011F928F9381ED9AE09F938F931F +:105B50000E9470098FEC9AE00E94D7088DEB9AE0C2 +:105B60000E94D708809114011F928F938AEB9AE0CC +:105B70009F938F930E94700988EB9AE00E94D70848 +:105B800089EA9AE00E94D708809113011F928F93AF +:105B900086EA9AE09F938F930E94700984EA9AE0C4 +:105BA0000E94D70883E99AE00E94D70880911201E9 +:105BB0001F928F9380E99AE09F938F930E947009C0 +:105BC0008EE89AE00E94D70889E79AE00E94D708F9 +:105BD000809111011F928F9386E79AE09F938F9394 +:105BE0000E94700984E79AE00E94D7088DE59AE048 +:105BF0000E94D708809110011F928F938AE59AE046 +:105C00009F938F930E94700988E59AE00E94D708BD +:105C10008DB79EB748960FB6F8949EBF0FBE8DBF46 +:105C20001BC0CE51EC2FF0E0E15DFE4F80818093F0 +:105C3000E80112C061E003C061E006C06AE0809143 +:105C4000E8010E94292908C08091E8010E94CC291E +:105C500003C08DEF9AE013C08091E801882369F0BA +:105C60001F928F9387EF9AE09F938F930E94700902 +:105C70000F900F900F900F9004C084EF9AE00E9455 +:105C8000D70881E006C01092E90180E002C080E000 +:105C900001CFCF910895E1E8F0E0808188608083B2 +:105CA0008081816080838FB7F89493E0909389001E +:105CB00090ED909388008FBF0895EFE6F0E080812B +:105CC000826080830895EFE6F0E080818D7F80839D +:105CD0000895EFE6F0E0908182E0892780830895BF +:105CE0001F920F920FB60F9211242F933F934F9351 +:105CF0005F936F937F938F939F93AF93BF93EF9334 +:105D0000FF938091EA019091EB0101969093EB0152 +:105D10008093EA01811103C082E00E947D0FE0912F +:105D2000EB01E695E695F0E0E753FF4EE4918091B4 +:105D3000EA018E1303C080E00E947D0FFF91EF9176 +:105D4000BF91AF919F918F917F916F915F914F9193 +:105D50003F912F910F900FBE0F901F90189504D078 +:105D60006894B1118DC0089570D088F09F5790F05D +:105D7000B92F9927B751A0F0D1F0660F771F881F70 +:105D8000991F1AF0BA95C9F712C0B13081F077D0D7 +:105D9000B1E0089574C0672F782F8827B85F39F075 +:105DA000B93FCCF3869577956795B395D9F73EF4CF +:105DB00090958095709561957F4F8F4F9F4F089577 +:105DC000E89409C097FB3EF4909580957095619595 +:105DD0007F4F8F4F9F4F9923A9F0F92F96E9BB274B +:105DE0009395F695879577956795B795F111F8CFC7 +:105DF000FAF4BB0F11F460FF1BC06F5F7F4F8F4F32 +:105E00009F4F16C0882311F096E911C0772321F027 +:105E10009EE8872F762F05C0662371F096E8862FBF +:105E200070E060E02AF09A95660F771F881FDAF716 +:105E3000880F9695879597F9089557FD9058440FC8 +:105E4000551F59F05F3F71F04795880F97FB991FD9 +:105E500061F09F3F79F08795089512161306140696 +:105E6000551FF2CF4695F1DF08C016161706180623 +:105E7000991FF1CF86957105610508940895E894FE +:105E8000BB2766277727CB0197F908950BD078C0F9 +:105E900069D028F06ED018F0952309F05AC05FC081 +:105EA0001124EECFCADFA0F3959FD1F3950F50E0F8 +:105EB000551F629FF001729FBB27F00DB11D639FBC +:105EC000AA27F00DB11DAA1F649F6627B00DA11D62 +:105ED000661F829F2227B00DA11D621F739FB00D08 +:105EE000A11D621F839FA00D611D221F749F332778 +:105EF000A00D611D231F849F600D211D822F762F11 +:105F00006A2F11249F5750408AF0E1F088234AF00D +:105F1000EE0FFF1FBB1F661F771F881F9150504059 +:105F2000A9F79E3F510570F014C0AACF5F3FECF374 +:105F3000983EDCF3869577956795B795F795E79545 +:105F40009F5FC1F7FE2B880F911D9695879597F956 +:105F5000089597F99F6780E870E060E008959FEFEB +:105F600080EC089500240A941616170618060906F0 +:105F7000089500240A9412161306140605060895BF +:105F8000092E0394000C11F4882352F0BB0F40F447 +:105F9000BF2B11F460FF04C06F5F7F4F8F4F9F4F87 +:105FA0000895991B79E004C0991F961708F0961B75 +:105FB000881F7A95C9F78095089597FB072E16F4E8 +:105FC000009407D077FD09D00E94F72F07FC05D079 +:105FD0003EF4909581959F4F0895709561957F4F00 +:105FE0000895EE0FFF1F0590F491E02D0994AA1B70 +:105FF000BB1B51E107C0AA1FBB1FA617B70710F0B4 +:10600000A61BB70B881F991F5A95A9F780959095E5 +:10601000BC01CD010895F999FECF92BD81BDF89ADA +:10602000992780B50895A8E1B0E042E050E00C94D3 +:106030002E30262FF999FECF1FBA92BD81BD20BD0B +:106040000FB6F894FA9AF99A0FBE019608950E9435 +:106050001930272F0C941A30DC01CB01FC01F9997F +:10606000FECF06C0F2BDE1BDF89A319600B40D92A4 +:0C60700041505040B8F70895F894FFCF5D +:10607C0020027E0F6F104C101810E40F0101C701A5 +:10608C0028080A03140A3F4D3620394908FC07C674 +:10609C0007A6076D07E006F90612072B074B070149 +:0A60AC0002030405060708090000BE :00000001FF From 46ddbd1fe27c910cd4d6ae3d2b6044cfbf71c3cb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stephan=20Bo=CC=88sebeck?= Date: Wed, 2 Mar 2016 08:43:21 +0100 Subject: [PATCH 03/45] forgot F6 --- keyboard/ergodox_ez/keymaps/osx_de/keymap.c | 2 +- keyboard/ergodox_ez/keymaps/osx_de/osx_de.hex | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/keyboard/ergodox_ez/keymaps/osx_de/keymap.c b/keyboard/ergodox_ez/keymaps/osx_de/keymap.c index 4e88376e49..c3b296cd77 100644 --- a/keyboard/ergodox_ez/keymaps/osx_de/keymap.c +++ b/keyboard/ergodox_ez/keymaps/osx_de/keymap.c @@ -95,7 +95,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // SYMBOLS [SYMB] = KEYMAP( // left hand - KC_TRNS,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, + KC_TRNS,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_TRNS,DE_LESS,DE_MORE,DE_EXLM,DE_QST, KC_TRNS,KC_TRNS, KC_TRNS,DE_HASH,DE_DLR, DE_BSLS,DE_SLSH,KC_DOT, KC_TRNS,KC_TRNS,DE_LESS,DE_PERC,DE_PIPE,DE_TILD,KC_TRNS, diff --git a/keyboard/ergodox_ez/keymaps/osx_de/osx_de.hex b/keyboard/ergodox_ez/keymaps/osx_de/osx_de.hex index 5346f1bdf8..bf12476a4f 100644 --- a/keyboard/ergodox_ez/keymaps/osx_de/osx_de.hex +++ b/keyboard/ergodox_ez/keymaps/osx_de/osx_de.hex @@ -45,7 +45,7 @@ :1002C000003B0035022102350001004C003C001EBD :1002D0000224062202010001003D002D0224022416 :1002E00004010001003E000100370011040000017C -:1002F000000100010000000100000001000E3001BB +:1002F000003F00010000000100000001000E30017D :100300000000000100000001004000240624022338 :1003100002000001004100220425023500300001E6 :100320000042002304260235023800010043002465 From d0c62feb7e5992c2a6de2e50d347572720fa92a1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stephan=20Bo=CC=88sebeck?= Date: Sun, 20 Mar 2016 22:53:43 +0100 Subject: [PATCH 04/45] tweaking it a bit further, fixing things --- keyboard/ergodox_ez/keymaps/osx_de/keymap.c | 24 ++++++++++----------- 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/keyboard/ergodox_ez/keymaps/osx_de/keymap.c b/keyboard/ergodox_ez/keymaps/osx_de/keymap.c index c3b296cd77..3efe3de8ba 100644 --- a/keyboard/ergodox_ez/keymaps/osx_de/keymap.c +++ b/keyboard/ergodox_ez/keymaps/osx_de/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Keymap 0: Basic layer * * ,--------------------------------------------------. ,--------------------------------------------------. - * | ESC | 1 | 2 | 3 | 4 | 5 | 6 | |CMD-C | 7 | 8 | 9 | 0 | ß | # | + * | ESC | 1 | 2 | 3 | 4 | 5 |CTL_SFT| | # | 6 | 7 | 8 | 9 | 0 | ß | * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| * | TAB | Q | W | E | R | T | CMD | | CMD | Z | U | I | O | P | ü | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| @@ -39,8 +39,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |--------+------+------+------+------+------| LALT | | RALT |------+------+------+------+------+--------| * | LShift |Y/Ctrl| X | C | V | B | | | | N | M | , | . |-/Ctrl| RShift | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | | " | ' | ? | + * | | | ^ | % | | | ~ | | | | & | < | > | - | UP | + | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | | | | | | | + | - | . | ; | | + * | | | | | | | ' | " |Left | DOWN |Right | * `----------------------------------' `----------------------------------' * ,-------------. ,-------------. * | | | | | | @@ -107,8 +107,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { M(M_TOGGLE_5), KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS, LALT(LSFT(KC_7)), LALT(KC_5), LALT(KC_6), LALT(KC_7), DE_HASH, DE_EXLM, DE_SLSH, DE_LPRN, DE_RPRN, LALT(KC_8), LALT(KC_9), LSFT(DE_PLUS), - KC_TRNS, DE_AMPR, KC_GRV, LSFT(KC_GRV), DE_DQOT, DE_QUOT, DE_QST, - DE_PLUS, DE_MINS, KC_DOT, LSFT(DE_COMM), KC_TRNS, + KC_TRNS, DE_AMPR, KC_GRV, LSFT(KC_GRV), DE_MINS, KC_UP, DE_PLUS, + DE_QUOT, DE_DQOT, KC_LEFT, KC_DOWN, KC_RIGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS From 7ebc813e8291af61ea3ec6828d682c2d84e2b4e5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stephan=20Bo=CC=88sebeck?= Date: Sun, 20 Mar 2016 23:00:20 +0100 Subject: [PATCH 05/45] changing cursor keys, back to "default" cursor key layout, adding ISO-cursor keys to Symb layer. Changed numbers back to symmetric layout again, keeping F-keys in symb though --- keyboard/ergodox_ez/keymaps/osx_de/keymap.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/keyboard/ergodox_ez/keymaps/osx_de/keymap.c b/keyboard/ergodox_ez/keymaps/osx_de/keymap.c index 3efe3de8ba..e661010133 100644 --- a/keyboard/ergodox_ez/keymaps/osx_de/keymap.c +++ b/keyboard/ergodox_ez/keymaps/osx_de/keymap.c @@ -80,9 +80,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| * | | # | $ | \ | / | . |------| |------| / | ( | ) | { | } | * | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | | ^ | % | | | ~ | | | | & | < | > | - | UP | + | + * | | | ^ | % | | | ~ | | | | & | < | > | UP | - | + | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | | | | | | | ' | " |Left | DOWN |Right | + * | | | | | | | ' | LEFT| DOWN | RIGHT | | * `----------------------------------' `----------------------------------' * ,-------------. ,-------------. * | | | | | | @@ -107,8 +107,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { M(M_TOGGLE_5), KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS, LALT(LSFT(KC_7)), LALT(KC_5), LALT(KC_6), LALT(KC_7), DE_HASH, DE_EXLM, DE_SLSH, DE_LPRN, DE_RPRN, LALT(KC_8), LALT(KC_9), LSFT(DE_PLUS), - KC_TRNS, DE_AMPR, KC_GRV, LSFT(KC_GRV), DE_MINS, KC_UP, DE_PLUS, - DE_QUOT, DE_DQOT, KC_LEFT, KC_DOWN, KC_RIGHT, + KC_TRNS, DE_AMPR, KC_GRV, LSFT(KC_GRV), KC_UP, DE_MINS, DE_PLUS, + DE_QUOT, KC_LEFT, KC_DOWN, KC_RIGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS From 1313e0c8283dc4c5f544aeb981ea047928950f0e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stephan=20Bo=CC=88sebeck?= Date: Sun, 20 Mar 2016 23:07:38 +0100 Subject: [PATCH 06/45] fix number pad, add , --- keyboard/ergodox_ez/keymaps/osx_de/keymap.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/keyboard/ergodox_ez/keymaps/osx_de/keymap.c b/keyboard/ergodox_ez/keymaps/osx_de/keymap.c index e661010133..7ecd1ae70f 100644 --- a/keyboard/ergodox_ez/keymaps/osx_de/keymap.c +++ b/keyboard/ergodox_ez/keymaps/osx_de/keymap.c @@ -211,7 +211,7 @@ KEYMAP( KC_TRNS, KC_UP, KC_7, KC_8, KC_9, LSFT(KC_RBRC), KC_F12, KC_DOWN, KC_4, KC_5, KC_6, KC_RBRC, DE_MINS, KC_TRNS, LSFT(KC_6), KC_1, KC_2, KC_3, LSFT(KC_7), KC_TRNS, - KC_0,KC_DOT, KC_0, DE_EQL, KC_TRNS, + KC_0,KC_DOT, KC_COMM, DE_EQL, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS From 94e96456b87c28299b426e8d0f047033f6d93d42 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stephan=20Bo=CC=88sebeck?= Date: Thu, 24 Mar 2016 10:30:27 +0100 Subject: [PATCH 07/45] minor changes --- keyboard/ergodox_ez/keymaps/osx_de/keymap.c | 30 +- keyboard/ergodox_ez/keymaps/osx_de/osx_de.hex | 2194 ++++++++--------- 2 files changed, 1111 insertions(+), 1113 deletions(-) diff --git a/keyboard/ergodox_ez/keymaps/osx_de/keymap.c b/keyboard/ergodox_ez/keymaps/osx_de/keymap.c index 7dbe05b28e..0349c749bb 100644 --- a/keyboard/ergodox_ez/keymaps/osx_de/keymap.c +++ b/keyboard/ergodox_ez/keymaps/osx_de/keymap.c @@ -74,28 +74,28 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Keymap 1: Symbol Layer * * ,--------------------------------------------------. ,--------------------------------------------------. - * | | F1 | F2 | F3 | F4 | F5 | F6 | | L5 | F7 | F8 | F9 | F10 | F11 | F12 | + * | | F1 | F2 | F3 | F4 | F5 | | | L5 | F6 | F7 | F8 | F9 | F10 | F11 | * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | | < | > | ! | ? | | | | | \ | [ | ] | | | # | ! | + * | | < | > | ! | ? | | | | | \ | [ | ] | < | > | ! | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | # | $ | \ | / | . |------| |------| / | ( | ) | { | } | * | + * | | # | $ | \ | / | . |------| |------| / | ( | ) | { | } | # | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | | ^ | % | | | ~ | | | | & | < | > | UP | - | + | + * | | | ^ | % | | | ~ | | | | | | ~ | ^ | UP | | $ | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' * | | | | | | | ' | LEFT| DOWN | RIGHT | | * `----------------------------------' `----------------------------------' * ,-------------. ,-------------. - * | | | | | | + * | | | | F13 | F12 | * ,------|------|------| |------+------+------. - * | | | | | | | | + * | | | | | F14 | | | * | | |------| |------| | | - * | | | | | | | | + * | | | | | F15 | | | * `--------------------' `--------------------' */ // SYMBOLS [SYMB] = KEYMAP( // left hand - KC_TRNS,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, + KC_TRNS,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, KC_TRNS,DE_LESS,DE_MORE,DE_EXLM,DE_QST, KC_TRNS,KC_TRNS, KC_TRNS,DE_HASH,DE_DLR, DE_BSLS,DE_SLSH,KC_DOT, KC_TRNS,KC_TRNS,DE_LESS,DE_PERC,DE_PIPE,DE_TILD,KC_TRNS, @@ -104,14 +104,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS,KC_DEL,KC_TRNS, // right hand - M(M_TOGGLE_5), KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, - KC_TRNS, LALT(LSFT(KC_7)), LALT(KC_5), LALT(KC_6), LALT(KC_7), DE_HASH, DE_EXLM, - DE_SLSH, DE_LPRN, DE_RPRN, LALT(KC_8), LALT(KC_9), LSFT(DE_PLUS), - KC_TRNS, DE_AMPR, KC_GRV, LSFT(KC_GRV), KC_UP, DE_MINS, DE_PLUS, + M(M_TOGGLE_5), KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + KC_TRNS, LALT(LSFT(KC_7)), LALT(KC_5), LALT(KC_6), DE_LESS, DE_MORE, DE_EXLM, + DE_SLSH, DE_LPRN, DE_RPRN, LALT(KC_8), LALT(KC_9), DE_HASH, + KC_TRNS, DE_PIPE, DE_TILD, DE_CIRC, KC_UP, DE_MINS, LSFT(KC_4), DE_QUOT, KC_LEFT, KC_DOWN, KC_RIGHT, KC_TRNS, - KC_TRNS, KC_TRNS, - KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS + KC_F13, KC_F12, + KC_F14, + KC_F15, KC_TRNS, KC_TRNS ), /* Keymap 2: Media and mouse keys * diff --git a/keyboard/ergodox_ez/keymaps/osx_de/osx_de.hex b/keyboard/ergodox_ez/keymaps/osx_de/osx_de.hex index 7f3ed1af5b..c7cb8d8630 100644 --- a/keyboard/ergodox_ez/keymaps/osx_de/osx_de.hex +++ b/keyboard/ergodox_ez/keymaps/osx_de/osx_de.hex @@ -1,19 +1,19 @@ -:100000000C94F0030C9437040C9437040C943704CC -:100010000C9437040C9437040C9437040C94370474 -:100020000C9437040C9437040C94370E0C94090F7D -:100030000C9437040C9437040C9437040C94370454 -:100040000C9437040C947D230C9437040C943704DF -:100050000C9437040C940F1D0C9437040C94370443 -:100060000C9437040C9437040C9437040C94370424 -:100070000C9437040C9437040C9437040C94370414 -:100080000C9437040C9437040C9437040C94370404 -:100090000C9437040C9437040C9437040C943704F4 -:1000A0000C9437040C9437040C943704470451041F -:1000B00069048104C904CF04F004D504EB04E1040D -:1000C000E604DB04B1049904F504760F980F8B1055 -:1000D000980F8B10DD0F00108B1055106810521305 -:1000E000521381138113C413FE130B160B1617142E -:1000F0000B160C150C15DF150B160B16F61501E17A +:100000000C94F0030C9434040C9434040C943404D5 +:100010000C9434040C9434040C9434040C94340480 +:100020000C9434040C9434040C94210E0C94F30EB0 +:100030000C9434040C9434040C9434040C94340460 +:100040000C9434040C9478230C9434040C943404ED +:100050000C9434040C94091D0C9434040C94340452 +:100060000C9434040C9434040C9434040C94340430 +:100070000C9434040C9434040C9434040C94340420 +:100080000C9434040C9434040C9434040C94340410 +:100090000C9434040C9434040C9434040C94340400 +:1000A0000C9434040C9434040C94340444044E042E +:1000B00066047E04C604CC04ED04D204E804DE0425 +:1000C000E304D804AE049604F204600F820F7010AB +:1000D000820F7010C70FEA0F70103F1052103413C8 +:1000E000341363136313A613E413FD15FD15FD13F9 +:1000F000FD15FE14FE14D115FD15FD15E81501E1E1 :100100000137023702E10138023801E201250225F8 :1001100002E20001E10137023702E1013802380151 :10012000E10130023002E10001E10137023702E172 @@ -32,25 +32,25 @@ :1001F000021902E30002E00001E0000000F0A1F0BB :10020000A329002B00E200E100358100001E00144C :100210000004001D710D304D831F001A0016001BD5 -:10022000000C304C002000080007000600E1042A02 -:10023000002100150009001900E1084A00220017FA -:10024000000A000500000003300130E3000000E276 -:1002500000000002540230E7000000E60000000445 +:10022000000C304C00200008000700060052002A95 +:1002300000210015000900190051004A0022001792 +:10024000000A00050000000330E101E3000000E2C5 +:1002500000000002543100E7000000E60000000446 :100260005423001C000B00110000002E7F240018F6 :10027000000D00100050004B0025000C000E003651 -:100280000052002C00260012000F003700510028F9 -:100290000027001300330038714F004E002D002F4F -:1002A000003474E50031810000010001000100010B +:10028000004F002C00260012000F003700E1082864 +:10029000002700130033003871E1044E002D002FB9 +:1002A000003474E50030810000010001000100010C :1002B00000010000003A003500310001000100019A :1002C000003B0035022102350001004C003C001EBD :1002D0000224062202010001003D002D0224022416 :1002E00004010001003E000100370011040000017C :1002F000000100010000000100000001000E3001BB -:100300000000000100000001003F00240624022339 -:100310000200000100400022042502350001000116 -:100320000041002304260235023700010042002468 -:100330000425041F021E020100430031002604317F -:1003400002010001004400450001002D02010000EF +:100300000000000100000068003F002406240224D1 +:100310000400004500400022042502110431026956 +:100320000041002304260264005000010042003511 +:100330000025045200510001004300350226043814 +:10034000004F006A0044001E02310021020100003B :100350000001000100010001000100000001000196 :100360000001000100010001000100F400F200FBA7 :1003700000010001000100F000F100FA000100019D @@ -80,7 +80,7 @@ :1004F00000000001000100010000000100000001F7 :10050000003F00520051002302000001004000247F :100510000021001E00270001004100250022001FCD -:1005200000370001004200260023002000270001C0 +:1005200000370001004200260023002000360001B1 :10053000004300300230002402270201004400453D :1005400000380001000100000001000100E100018D :1005500000E0000000010001000100010001003D79 @@ -125,1075 +125,1073 @@ :1007C000FCF5E9DAC7B39D87715D4A3A2C20170F13 :1007D0000A06040201000000000000000000000002 :1007E00011241FBECFEFDAE0DEBFCDBF04B603FE9B -:1007F00027C08091EF019091F001A091F101B0919B -:10080000F2018730904BA740B04BD1F41092EF012A -:100810001092F0011092F1011092F20114BE84B70F -:10082000877F84BF0FB6F894A89580916000886197 -:1008300080936000109260000FBEE0E0FFE3099536 -:1008400011E0A0E0B1E0ECE9FAE402C005900D92FD -:10085000A433B107D9F721E0A4E3B1E001C01D92B0 -:10086000AF3EB207E1F70E947E0B0C944C250C942E -:100870000000462F50E04F30510508F0DEC0FA016D -:10088000EA5AFF4FDC0112968C910C9401258823C3 -:1008900021F085EE0E94EC11D0C085EE0E94B412CA -:1008A000CCC0882349F00E94D91C909335018093D5 -:1008B000340188EF91E008958091340190913501E1 -:1008C0000E94E51C873991050CF0A8C08AEE91E0E2 -:1008D0000895882349F00E94D91C90933501809394 -:1008E000340187EE91E008958091340190913501B3 -:1008F0000E94E51C873991050CF093C089ED91E0C9 -:100900000895882349F00E94D91C90933501809363 -:10091000340182ED91E00895809134019091350188 -:100920000E94E51C873991050CF07EC080EC91E0B7 -:100930000895882349F00E94D91C90933501809333 -:1009400034018BEB91E00895809134019091350151 -:100950000E94E51C873991050CF069C08DEA91E091 -:100960000895882349F00E94D91C90933501809303 -:10097000340188EA91E00895809134019091350125 -:100980000E94E51C873991050CF054C08AE991E07A -:100990000895882309F451C085E891E008958823DB -:1009A00009F44BC080E791E00895882309F445C01D -:1009B0008BE591E00895882309F43FC086E491E037 -:1009C00008958823D1F18DE391E008958823A9F15A -:1009D00088E291E00895882381F183E191E0089510 -:1009E000882359F18EEF90E00895882331F18091AA -:1009F000B3019091B401A091B501B091B60120E28C -:100A0000822780729927AA27BB278093B3019093EE -:100A1000B401A093B501B093B6010FC085EF91E08A -:100A2000089584EE91E008958BEC91E0089586EBB3 -:100A300091E0089583EA91E0089580E090E00895C0 -:100A400008956091B3017091B4018091B5019091C6 -:100A5000B6010E943C1C56985E9825982D982698C1 -:100A60002E9827982F988330C1F028F4813041F0D8 -:100A7000823049F00895843049F0853051F008956E -:100A8000259A2D9A0895269A2E9A0895259A2D9A98 -:100A900004C0259A2D9A269A2E9A279A2F9A08955D -:100AA0000C94210556985E9825982D9826982E9896 -:100AB00027982F988FEF90E090938900809388007B -:100AC00090938B0080938A0090938D0080938C008C -:100AD000259A2D9A2FEF80E792E021508040904098 -:100AE000E1F700C00000269A2E9A2FEF80E792E0EF -:100AF000215080409040E1F700C00000279A2F9AD3 -:100B00002FEF80E792E0215080409040E1F700C055 -:100B1000000025982D982FEF80E792E0215080402B -:100B20009040E1F700C0000026982E982FEF80E754 -:100B300092E0215080409040E1F700C000002798EB -:100B40002F9856985E9825982D9826982E98279835 -:100B50002F98089589EA8093800089E0809381002E -:100B600024982C983F988AB18F748AB96E98479AC6 -:100B70008BB1806B8BB9769A0E9452050C9420053C -:100B800080E2809300018091360181110EC00E94A5 -:100B90000F0681E0809336012FEF83ED90E3215023 -:100BA00080409040E1F700C0000080E40E941506FC -:100BB0008093000181112EC00E943F0680930001A6 -:100BC000811128C00E943F0680930001811122C03C -:100BD0008FE30E943F068093000181111BC00E9499 -:100BE000370680E40E94150680930001811112C02F -:100BF0008CE00E943F068093000181110BC00E948F -:100C00003F0680930001811105C08FE30E943F06DB -:100C1000809300010E943706809100010895109290 -:100C2000B9008AE08093B800089594EA9093BC00DC -:100C30009091BC0097FFFCCF9091B900987F9830BD -:100C400021F0903111F081E008958093BB0084E899 -:100C50008093BC008091BC0087FFFCCF8091B900DD -:100C6000887F883111F0803471F780E0089584E93D -:100C70008093BC008091BC0084FDFCCF08958093DC -:100C8000BB0084E88093BC008091BC0087FFFCCF50 -:100C90009091B900987F81E0983209F480E008953E -:100CA00084E88093BC008091BC0087FFFCCF8091DA -:100CB000BB00089580910001811115C080E40E945D -:100CC00015068093000181110CC082E10E943F064D -:100CD00080930001811105C08FEF0E943F06809331 -:100CE00000010E94370684B1807F84B985B1807F7E -:100CF00085B98AB1837F8AB98BB1837F8BB93E98DE -:100D0000469808950E94C005809300010E945A06EB -:100D100080B38C7080BB81B3836F81BBE6E4F1E06C -:100D2000A8E3B1E011921D9281E0E435F807D1F714 -:100D30000C94AA059F92AF92BF92CF92DF92EF924E -:100D4000FF920F931F93CF93DF938091000188232D -:100D500079F0809137018F5F80933701811108C04E -:100D60000E94C00580930001811102C00E945205BB -:100D700088E3E82E81E0F82E8701C0E0D0E0BB24B4 -:100D8000B39492E0A92ECC24C394D12CC730D105C2 -:100D900000F580910001811164C080E40E94150675 -:100DA00080930001811112C082E10E943F0680936E -:100DB000000181110BC0C6010C2E01C0880F0A94DE -:100DC000EAF780950E943F06809300010E94370653 -:100DD00048C0CA30A1F028F4C83059F0C93061F0D9 -:100DE00005C0CC3089F070F0CD3089F0209A289879 -:100DF00010C0219A29980DC0229A2A980AC0239AD5 -:100E00002B9807C0529A01C0539A5B9802C03E9A31 -:100E10004698E0EAEA95F1F78FB181708B257999D0 -:100E200002C032E001C030E0832B7C9902C034E084 -:100E300001C030E0832B7D9902C028E001C020E092 -:100E4000822B7E9902C090E101C090E0892B9FB176 -:100E50009095991F9927991F9295990F907E892BAC -:100E60000FC08091000181114AC080E40E941506E4 -:100E700080930001882381F1912C0E943706892DEF -:100E8000D8019C91981719F08C93A09201010E94AF -:100E90005A0621960F5F1F4FCE30D10509F076CF4D -:100EA00080910101882369F1815080930101882399 -:100EB00039F0EFE9FFE03197F1F700C0000021C001 -:100EC000E6E4F1E0D7018D917D018193B6E4EB1664 -:100ED000B1E0FB06B9F715C083E10E943F0680939D -:100EE00000018111C9CF81E40E94150680930001A1 -:100EF0008111C2CF0E945006982E9094BECF80E000 -:100F0000BFCF0E94500581E0DF91CF911F910F91DB -:100F1000FF90EF90DF90CF90BF90AF909F9008959B -:100F2000E82FF0E0EA5BFE4F8081089508958B3B47 -:100F3000910580F4883A910548F5853A9105D8F4F1 -:100F40008430910508F0B2C0019709F06EC081E0CD -:100F500090E00895803E910508F467C0883E9105B1 -:100F600008F4A4C09C01205F31092031310508F04C -:100F70005CC090650895853A910509F459C0863A98 -:100F8000910509F058C082E890E40895883A9105E7 -:100F900009F454C0893A910509F453C08A3A91057D -:100FA00009F452C08B3A910509F451C08C3A91056D -:100FB00009F450C08D3A910509F44FC0803B91056A -:100FC00009F44EC08E3A910509F44DC08F3A91054F -:100FD00009F44CC0813B910509F44BC0823B91055B -:100FE00009F44AC0833B910509F449C0843B91054B -:100FF00009F448C0853B910509F447C0863B91053B -:1010000009F446C0873B910509F445C0883B91052A -:1010100009F444C0893B910509F443C08A3B91051A -:1010200009F442C080E094E4089580E090E00895DF -:1010300081E890E4089583E890E4089582EE94E4D2 -:10104000089589EE94E408958AEE94E4089585EB7A -:1010500094E4089586EB94E4089587EB94E408956E -:101060008CEC94E408958DEC94E4089583E895E481 -:1010700008958AE895E4089582E995E4089584E95D -:1010800095E4089581E296E4089583E296E4089554 -:1010900084E296E4089585E296E4089586E296E473 -:1010A000089587E296E408958AE296E40895089503 -:1010B00024E5829FC0011124FC0126E0729FE00D0F -:1010C000F11D1124E60FF11DEE0FFF1FEF5FFD4F25 -:1010D000859194910895880F991FFC01E558FF4F61 -:1010E000859194910895880F991FFC01E550FE4F5A -:1010F00085919491089524E5829FC0011124FC01FB -:1011000046E0749FE00DF11D1124E60FF11DEE0F76 -:10111000FF1FEF5FFD4F859194919C013A9521153A -:101120004FE1340708F425C13F512115304120F427 -:101130009F700E94730808959C013053211530411F -:1011400018F49927906C0895811520E5920769F4A9 -:101150000E942D164FEF84E39CE041508040904068 -:10116000E1F700C000000C94341D813020E59207A7 -:1011700031F48091CE0181608093CE0108959C016D -:1011800030552115304108F05CC0292F33272F70CE -:10119000332721303105E9F4AC0164E0440F551FD9 -:1011A0006A95E1F744275370BC016370772702C04A -:1011B000220F331F6A95E2F73C68242B352B73E02E -:1011C000880F991F7A95E1F780769927822B932BC8 -:1011D00008952230310529F4982F8827816F906A6D -:1011E000089523303105A1F4AC0133E0440F551FBD -:1011F0003A95E1F7407E57708370992721E030E0FF -:1012000002C0220F331F8A95E2F7C9019C6816C0FD -:101210002430310531F5AC0123E0440F551F2A95E8 -:10122000E1F7407E57708370992721E030E002C0DB -:10123000220F331F8A95E2F7C9019A68842B952BF8 -:1012400008959C0130572115304118F49F70906229 -:1012500008959C0130582115304118F49F70906A10 -:101260000895803E9105E0F4803C910558F5813366 -:10127000910509F46FC048F48932910509F463C0FF -:101280008A32910509F46DC072C089339105E9F085 -:1012900082389105D1F08533910509F44DC067C0BE -:1012A000833E910581F138F4803E9105B9F0823E8C -:1012B0009105D9F05CC0863E910561F1873E9105AC -:1012C000A1F155C00E946B0808952091E00120FD16 -:1012D00002C021FF4CC080EE90E049C08091E00147 -:1012E00080FFF9CF89E390E042C08091E00182FF66 -:1012F0000EC08091E00184FF03C080E090E037C021 -:1013000083EE90E034C08091E00182FFF2CF82EE64 -:1013100090E02DC08091E00183FF0BC08091E0013F -:1013200084FDEBCF87EE90E022C08091E00183FF47 -:10133000F5CF86EE90E01BC08091E00185FF07C0ED -:1013400089E290E014C08091E00185FFF9CF85E348 -:1013500090E00DC08091E00186FF07C08AE290E036 -:1013600006C08091E00186FFF9CF81E390E00E9402 -:10137000970708950895809164010895CF93DF93AE -:1013800000D01F92CDB7DEB79C018091E60184307A -:1013900019F593E099833B832A839093E9008FEFBB -:1013A0009091E800815095FD06C095ED9A95F1F772 -:1013B00000008111F5CF8091E80085FF0DC040E06D -:1013C00050E063E070E0CE0101960E942B0C80910A -:1013D000E8008E778093E8000F900F900F90DF91D8 -:1013E000CF910895CF93DF9300D01F92CDB7DEB792 -:1013F0002091E601243021F522E029839B838A8312 -:1014000083E08093E9008FEF9091E800815095FD93 -:1014100006C095ED9A95F1F700008111F5CF809106 -:10142000E80085FF0DC040E050E063E070E0CE01D1 -:1014300001960E942B0C8091E8008E778093E80043 -:101440000F900F900F90DF91CF9108959C018091A4 -:10145000E6018430F9F482E08093E9009FEF809107 -:10146000E800915085FD06C085ED8A95F1F70000F2 -:101470009111F5CF8091E80085FF0CC040E050E06D -:1014800065E070E0C9010E942B0C8091E8008E7726 -:101490008093E8000895CF93DF93EC018091E601FB -:1014A000843009F046C090910C019923D9F09091B5 -:1014B0000D019923B9F08093E9008FEF9091E80036 -:1014C000815095FD06C095E19A95F1F700008111D4 -:1014D000F5CF8091E80085FF2CC040E050E060E14E -:1014E00070E017C081E08093E9008FEF9091E800F1 -:1014F000815095FD06C095ED9A95F1F70000811198 -:10150000F5CF8091E80085FF14C040E050E068E02E -:1015100070E0CE010E942B0C8091E8008E778093C2 -:10152000E80080E1FE01A4E5B1E001900D928A950A -:10153000E1F7DF91CF9108958091E501811109C014 -:101540000E94BC0D0E94190E8091E200846080937D -:10155000E20008951092E501089508950C946A231D -:101560000E94CA1C0E9470230E94C4100C94BA09E5 -:1015700042E061EC81E00E94350D42E061EC82E0E6 -:101580000E94350D42E061EC83E00E94350D42E19E -:1015900061EC84E00C94350D8091E801833009F40E -:1015A00055C030F4813071F0823009F48EC0089556 -:1015B0008A3009F47AC08B3009F460C0893009F0B0 -:1015C0009CC020C08091E701813A09F096C08091CB -:1015D000E800877F8093E8008091EB019091EC0117 -:1015E000892B21F460E184E591E003C060E080E0B4 -:1015F00090E070E00E94760C8091E8008B778093F9 -:10160000E80008958091E701813209F076C0809169 -:10161000EB019091EC01009719F0039709F06DC070 -:101620008091E800877F8093E8008091E80082FD48 -:1016300005C08091E6018111F8CF5FC08091F10073 -:10164000809364018091E8008B7753C08091E7011B -:10165000813A09F052C08091EB019091EC01892B05 -:1016600009F04BC08091E800877F8093E80080916B -:10167000E80080FFFCCF80910C0136C08091E7012B -:101680008132D9F58091EB019091EC01892BA9F57C -:101690008091E800877F8093E8000E946A0D809126 -:1016A000E90180930C010C942D168091E7018132A1 -:1016B00021F58091E800877F8093E8000E946A0D01 -:1016C0008091EA018093650108958091E701813A54 -:1016D000A1F48091E800877F8093E8008091E80082 -:1016E00080FFFCCF809165018093F1008091E8003C -:1016F0008E778093E8000C946A0D089584B7877FF5 -:1017000084BF0FB6F894A89580916000886180939B -:101710006000109260000FBE90E080E80FB6F89471 -:1017200080936100909361000FBE0E9413110E948C -:10173000BC0D0E94190E8091E20084608093E2004B -:1017400078940E94A4100E94151182E091E00E94FA -:10175000BF100E9458238091E601853069F40E94F1 -:101760008C1C8091E4018823B1F30E94B61C88236D -:1017700091F30E94150CEFCF0E941B11ECCF292F83 -:10178000332723303105C9F060F42130310581F071 -:101790002230310509F041C08DE690E025E236E0C7 -:1017A00040C021323105E1F02232310531F135C03E -:1017B00082E190E022E936E034C09927813091053A -:1017C00049F028F0029749F5E1EFF5E005C0E1E2C4 -:1017D000F6E002C0E9E0F6E0849190E09F0121C0CC -:1017E0006430D8F4E62FF0E0EE0FFF1FEE5DFE4F01 -:1017F0002081318189E090E014C0643070F470E0A1 -:10180000FB01EE0FFF1FE65EFE4F20813181FB01E1 -:10181000EA5EFE4F808190E004C080E090E020E02E -:1018200030E0FA0131832083089580E189BD82E1AF -:1018300089BD09B400FEFDCF8091D8008F7D8093D3 -:10184000D8008091E00082608093E0008091E00009 -:1018500081FDFCCF0895CF92DF92EF92FF920F931C -:101860001F93CF93DF93EC018B016A010E94890DD6 -:10187000811133C0C114D10439F0F6018081918106 -:10188000081B190BC80FD91FE12CF12C01151105EC -:1018900019F18091E80085FD16C08091E8008E77EF -:1018A0008093E800C114D10449F0F6018081918150 -:1018B000E80EF91EF182E08285E00FC00E94890DDA -:1018C000882321F30AC089918093F1000150110906 -:1018D000FFEFEF1AFF0ADACF80E0DF91CF911F917F -:1018E0000F91FF90EF90DF90CF9008952091ED0140 -:1018F0003091EE012617370748F06115710539F46C -:101900002091E8002E772093E80001C0B901FC0186 -:1019100020E06115710579F18091E6018823F1F1EC -:101920008530F1F18091E80083FD3CC08091E800B2 -:1019300082FD2EC08091E80080FFEBCF2091F30064 -:101940008091F20090E0922B6115710551F0883082 -:10195000910538F421912093F100615071090196AD -:10196000F3CF21E0089709F020E08091E8008E771E -:101970008093E800CECF2111CFCF0AC08091E6013D -:10198000882361F0853061F08091E80083FD0AC012 -:101990008091E80082FFF2CF80E0089582E0089510 -:1019A00083E0089581E008952091ED013091EE01EA -:1019B0002617370748F06115710539F42091E800C2 -:1019C0002E772093E80001C0B901FC0120E06115E9 -:1019D000710591F18091E601882309F440C08530BA -:1019E00009F43FC08091E80083FD3DC08091E8008C -:1019F00082FD2FC08091E80080FFE9CF2091F300A5 -:101A00008091F20090E0922B6115710559F08830B9 -:101A1000910540F424912093F100319661507109B1 -:101A20000196F2CF21E0089709F020E08091E800CC -:101A30008E778093E800CBCF2111CCCF0AC0809164 -:101A4000E601882361F0853061F08091E80083FD34 -:101A50000AC08091E80082FFF2CF80E0089582E022 -:101A6000089583E0089581E00895982F973068F5F0 -:101A70009093E900981739F07091EC002091ED00F7 -:101A80005091F00003C0242F762F50E021FD02C0BA -:101A90009F5FECCF3091EB003E7F3093EB003091B5 -:101AA000ED003D7F3093ED003091EB0031603093DD -:101AB000EB007093EC002093ED005093F000209128 -:101AC000EE0027FDE5CF80E008958F708093E90058 -:101AD00081E008958091E70187FF11C08091E800BF -:101AE00082FD05C08091E6018111F8CF11C080917F -:101AF000E8008B770BC08091E601882349F0809144 -:101B0000E80080FFF8CF8091E8008E778093E800AE -:101B100008952091E4003091E50095E64091EC00B5 -:101B2000842F817040FF23C08091E80080FD1DC09C -:101B30008091E601882399F0853099F08091EB003F -:101B400085FD11C04091E4005091E5002417350750 -:101B500029F3915011F09A01E1CF84E0089582E0D9 -:101B6000089583E0089581E0089580E0089540910C -:101B7000E80042FFDDCF08950E942A0E0E94320E37 -:101B8000E0EEF0E0808181608083E8EDF0E080812C -:101B90008F77808319BCA7EDB0E08C918E7F8C93FA -:101BA00080818F7E80831092E50108950F931F93AB -:101BB000CF93DF930E942A0E0E94320EC8EDD0E030 -:101BC00088818F77888388818068888388818F7DEA -:101BD000888319BC1092E6011092E2011092E40190 -:101BE0001092E30100EE10E0F80180818B7F80838A -:101BF00088818160888342E060E080E00E94350D4A -:101C0000E1EEF0E080818E7F8083E2EEF0E0808183 -:101C100081608083808188608083F80180818E7FED -:101C20008083888180618883DF91CF911F910F919C -:101C30000895E8EDF0E080818F7E8083E7EDF0E0AD -:101C400080818160808384E082BF81E08093E501B0 -:101C50000C94D60DE8EDF0E080818E7F80831092A9 -:101C6000E20008951092DA001092E10008951F92A8 -:101C70000F920FB60F9211242F933F934F935F93C0 -:101C80006F937F938F939F93AF93BF93EF93FF9344 -:101C90008091E10082FF0BC08091E20082FF07C0CB -:101CA0008091E1008B7F8093E1000E94A3108091DE -:101CB000DA0080FF1FC08091D80080FF1BC0809198 -:101CC000DA008E7F8093DA008091D90080FF0DC00A -:101CD00080E189BD82E189BD09B400FEFDCF81E0CC -:101CE0008093E6010E949C0A05C019BC1092E6018F -:101CF0000E94AA0A8091E10080FF19C08091E20051 -:101D000080FF15C08091E2008E7F8093E200809179 -:101D1000E20080618093E2008091D800806280932D -:101D2000D80019BC85E08093E6010E94AE0A80913C -:101D3000E10084FF30C08091E20084FF2CC080E18C -:101D400089BD82E189BD09B400FEFDCF8091D80034 -:101D50008F7D8093D8008091E1008F7E8093E10099 -:101D60008091E2008F7E8093E2008091E2008160AA -:101D70008093E2008091E201882311F084E007C0A3 -:101D80008091E30087FD02C081E001C083E0809381 -:101D9000E6010E94B00A8091E10083FF29C0809192 -:101DA000E20083FF25C08091E100877F8093E100FE -:101DB00082E08093E6011092E2018091E1008E7F43 -:101DC0008093E1008091E2008E7F8093E200809119 -:101DD000E20080618093E20042E060E080E00E94E7 -:101DE000350D8091F00088608093F0000E94AD0A6C -:101DF000FF91EF91BF91AF919F918F917F916F91E3 -:101E00005F914F913F912F910F900FBE0F901F90B8 -:101E100018951F920F920FB60F9211242F933F9394 -:101E20004F935F936F937F938F939F93AF93BF93E2 -:101E3000CF93DF93EF93FF93C091E900CF70809130 -:101E4000EC00D82FD17080FDD0E81092E90080918D -:101E5000F000877F8093F00078940E944D0F1092DD -:101E6000E9008091F00088608093F000CD2BCF7066 -:101E7000C093E900FF91EF91DF91CF91BF91AF91B6 -:101E80009F918F917F916F915F914F913F912F9192 -:101E90000F900FBE0F901F9018951F93CF93DF9355 -:101EA000CDB7DEB7AA970FB6F894DEBF0FBECDBF91 -:101EB000E7EEF1E08091F100819321E0EF3EF2073F -:101EC000C9F70E94CC0A8091E80083FF24C1809169 -:101ED000E7019091E801492F50E04A30510508F0A0 -:101EE0001AC1FA01EB59FF4F0C940125803881F09B -:101EF000823809F010C18091EB018F708093E90066 -:101F00008091EB0085FB882780F91092E90006C0DC -:101F10008091E3019091E401911182609091E80039 -:101F2000977F9093E8008093F1001092F100C8C071 -:101F3000282F2D7F09F0EFC0882319F0823061F03F -:101F4000EAC08091E901813009F0E5C0933009F0E1 -:101F500080E08093E4012BC08091E901811127C0CA -:101F60008091EB018F7009F4D6C08093E900209135 -:101F7000EB0020FF1CC0933021F48091EB008062C5 -:101F800014C09091EB0090619093EB0021E030E061 -:101F9000A90102C0440F551F8A95E2F74093EA0059 -:101FA0001092EA008091EB0088608093EB00109221 -:101FB000E9008091E800877F86C08111ACC0109154 -:101FC000E9011F778091E3008078812B8093E30003 -:101FD0008091E800877F8093E8000E946A0D8091DD -:101FE000E80080FFFCCF8091E30080688093E300ED -:101FF000111102C082E001C083E08093E6018BC032 -:102000008058823008F087C08091E9019091EA0100 -:102010008C3D53E0950779F583E08A838AE28983D2 -:102020004FB7F894DE01139620E03EE051E2E32F33 -:10203000F0E050935700E49120FF03C0E295EF7069 -:102040003F5FEF708E2F90E0EA3010F0C79601C02E -:10205000C0968D939D932F5F243149F74FBF809198 -:10206000E800877F8093E8006AE270E0CE01019685 -:102070000E94760C14C0AE014F5F5F4F6091EB0180 -:102080000E94BF0BBC01892B09F445C09091E80068 -:10209000977F9093E80089819A810E94D40C809167 -:1020A000E8008B778093E80036C08038A1F58091F6 -:1020B000E800877F8093E8008091E2018093F1003F -:1020C0008091E8008E778093E8000E946A0D23C01B -:1020D000811121C08091E9019091EA01992702972D -:1020E000D4F48091E800877F8093E8008091E90133 -:1020F0008093E2010E946A0D8091E201811106C085 -:102100008091E30087FD02C081E001C084E08093FC -:10211000E6010E94B80A8091E80083FF0AC080911E -:10212000E800877F8093E8008091EB0080628093D5 -:10213000EB00AA960FB6F894DEBF0FBECDBFDF91BD -:10214000CF911F9108950895CF938091E601882340 -:10215000A1F0C091E900CF709091EC00892F8170BF -:1021600090FD80E8C82B1092E9008091E80083FD83 -:102170000E944D0FCF70C093E900CF9108959093C6 -:102180006B0180936A010895E0916A01F0916B01FF -:10219000309721F00190F081E02D099480E00895BE -:1021A000E0916A01F0916B01309721F00280F38198 -:1021B000E02D09940895E0916A01F0916B01309748 -:1021C00021F00480F581E02D0994089520916801A3 -:1021D000309169012817390771F090936901809354 -:1021E0006801E0916A01F0916B01309721F006805F -:1021F000F781E02D099408952091660130916701DF -:102200002817390771F09093670180936601E09178 -:102210006A01F0916B01309721F00084F185E02D87 -:102220000994089508950C9412110E94D01C0E94E4 -:1022300082060C94961DCF92DF92EF92FF920F933D -:102240001F93CF93DF93CDB7DEB72B970FB6F894DC -:10225000DEBF0FBECDBF0E949A068DE6C82E81E07C -:10226000D82E00E010E0E02E802F0E949007F601AB -:1022700041916F01F82EF426B1F40F5F1F4F0E301D -:10228000110589F78FEF89838A831B820E94D91CED -:102290008160782F9D838C8349815A816B818D81E8 -:1022A0000E94BE1140C09091CE0191FF04C08B8767 -:1022B0000E9496078B8520E030E04F2D50E0922F52 -:1022C000BA01022E02C0759567950A94E2F760FF85 -:1022D00024C02E83EF8221E030E0690102C0CC0CE3 -:1022E000DD1C9A95E2F790E08C219D21892B09F461 -:1022F00020E028870E94D91C8160782F9A878987DF -:102300004E815F8168858A850E94BE11F801E3597C -:10231000FE4F8081C826C08206C02F5F3F4F263007 -:10232000310569F6AACF0E947D200E94C4109091C9 -:102330006C018917A1F00E94C41080936C012B9648 -:102340000FB6F894DEBF0FBECDBFDF91CF911F91C6 -:102350000F91FF90EF90DF90CF900C94BA092B96DD -:102360000FB6F894DEBF0FBECDBFDF91CF911F91A6 -:102370000F91FF90EF90DF90CF900895CF93DF9370 -:10238000CDB7DEB72B970FB6F894DEBF0FBECDBF2B -:102390004F83588769877A878B87DE01119686E09D -:1023A000FD0111928A95E9F785E0FE0137960190CB -:1023B0000D928A95E1F749815A816B817C818D81EB -:1023C0009E810E94C1182B960FB6F894DEBF0FBEF7 -:1023D000CDBFDF91CF910895CF93C82F882309F403 -:1023E000C1C0823859F40E94C41081FDBBC089E38A -:1023F0000E945E1B0E94161C89E30CC0833879F48E -:102400000E94C41080FDAEC083E50E945E1B0E9446 -:10241000161C83E50E949D1BCF910C94161C8438DA -:1024200059F40E94C41082FD9DC087E40E945E1B87 -:102430000E94161C87E4EECF8CEF8C0F813A48F493 -:102440008C2F0E94BD2281118DC08C2F0E945E1B9B -:10245000E3CF80E28C0F883048F4C77081E001C080 -:10246000880FCA95EAF70E94DF1BD6CF8BE58C0F49 -:10247000833078F4C53A29F0C63A31F083E890E029 -:1024800005C081E890E002C082E890E0CF910C9412 -:10249000E61088E58C0F833108F064C0C83A39F142 -:1024A000C93A41F1CA3A49F1CB3A51F1CC3A59F122 -:1024B000CD3A61F1C03B69F1CE3A71F1CF3A79F191 -:1024C000C13B81F1C23B89F1C33B91F1C43B99F11E -:1024D000C53BA1F1C63BA9F1C73BB1F1C83BB9F17E -:1024E000C93BC1F1CA3BC9F180E090E038C082EE3F -:1024F00090E035C089EE90E032C08AEE90E02FC0C7 -:1025000085EB90E02CC086EB90E029C087EB90E053 -:1025100026C08CEC90E023C08DEC90E020C083E8D6 -:1025200091E01DC08AE891E01AC082E991E017C0ED -:1025300084E991E014C081E292E011C083E292E06C -:102540000EC084E292E00BC085E292E008C086E211 -:1025500092E005C087E292E002C08AE292E0CF9169 -:102560000C94FC10CF910895882309F44BC0823855 -:1025700059F40E94C41081FF45C089E30E945E1B8C -:102580000E94161C89E30CC0833871F40E94C410A9 -:1025900080FF38C083E50E945E1B0E94161C83E505 -:1025A0000E949D1B0C94161C843859F40E94C41080 -:1025B00082FF28C087E40E945E1B0E94161C87E4ED -:1025C000EFCF9CEF980F913A58F390E2980F983024 -:1025D00050F4877091E001C0990F8A95EAF7892F2E -:1025E0000E94E51BDFCF9BE5980F933020F480E03D -:1025F00090E00C94E610885A833120F480E090E05B -:102600000C94FC100895882321F00E94DF1B0C9489 -:10261000161C0895882321F00E94E51B0C94161CBB -:102620000895BF92CF92DF92EF92FF920F931F9384 -:10263000CF93DF9300D000D000D0CDB7DEB77C01C0 -:1026400085E0F701DE01119601900D928A95E1F780 -:10265000F70183819481892B09F4DDC29081818106 -:102660008F3F19F49F3F09F4D6C2F70102812581FB -:1026700022952F7099838A8389819A812E830E9463 -:102680001D1B182FB92E0E941C1B0E94E319EB2D55 -:10269000E295EF704E2F50E0FA01E159FF4F2E8185 -:1026A0000C9401258B2D807F9B2D9F70F92E882304 -:1026B00019F0F29480EFF822002349F0FF2009F48A -:1026C00057C28F2D0E94EF1B0E94161C51C2812FF2 -:1026D0000E94B412FF2009F49EC28F2D0E94F51BA8 -:1026E00026960FB6F894DEBF0FBECDBFDF91CF9117 -:1026F0001F910F91FF90EF90DF90CF90BF900C94BF -:10270000161C3B2D307F8B2D8F70303211F082954F -:10271000807F112319F0113021F12CC00023B9F072 -:10272000222309F490C1213009F08DC126960FB6FD -:10273000F894DEBF0FBECDBFDF91CF911F910F91F7 -:10274000FF90EF90DF90CF90BF900C94FF1B22235F -:1027500019F0213009F45FC28E830E94021C8E8121 -:1027600086C1002321F0223008F055C26CC121112E -:1027700052C27DC1002321F0222309F464C1F8C1B3 -:10278000222309F474C109C28B2D86958695837026 -:1027900019F08130D1F03FC2002321F0812F9B2D11 -:1027A000937002C080E090E026960FB6F894DEBFEA -:1027B0000FBECDBFDF91CF911F910F91FF90EF9092 -:1027C000DF90CF90BF900C94E610002321F0812F72 -:1027D0009B2D937002C080E090E026960FB6F8948F -:1027E000DEBF0FBECDBFDF91CF911F910F91FF9044 -:1027F000EF90DF90CF90BF900C94FC10812F0023BE -:1028000019F00E94851F02C00E94ED1F26960FB688 -:10281000F894DEBF0FBECDBFDF91CF911F910F9116 -:10282000FF90EF90DF90CF90BF900C9472208B2D93 -:10283000837009F075C00111EEC1812F82958695D4 -:102840008770880F880F912F9F70C92ED12CE12C93 -:10285000F12C082E04C0CC0CDD1CEE1CFF1C0A94CD -:10286000D2F714FF12C00FE010E020E030E004C007 -:10287000000F111F221F331F8A95D2F7C901B8011B -:10288000609570958095909503C060E070E0CB01F5 -:102890004B2D4695469543704230C1F060F56C294A -:1028A0007D298E299F29413051F126960FB6F89443 -:1028B000DEBF0FBECDBFDF91CF911F910F91FF9073 -:1028C000EF90DF90CF90BF900C940A1A6C297D296D -:1028D0008E299F2926960FB6F894DEBF0FBECDBF76 -:1028E000DF91CF911F910F91FF90EF90DF90CF90EC -:1028F000BF900C94261A0E940A1AC701B6012696A8 -:102900000FB6F894DEBF0FBECDBFDF91CF911F9100 -:102910000F91FF90EF90DF90CF90BF900C94EE1945 -:10292000002319F08B2D817001C08695882309F44E -:1029300072C1812F829586958770880F880F912F9D -:102940009F70C92ED12CE12CF12C082E04C0CC0C88 -:10295000DD1CEE1CFF1C0A94D2F714FF12C00FE01E -:1029600010E020E030E004C0000F111F221F331FD1 -:102970008A95D2F7C901B8016095709580959095B8 -:1029800003C060E070E0CB014B2D46954695437047 -:102990004230C1F060F56C297D298E299F29413094 -:1029A00051F126960FB6F894DEBF0FBECDBFDF9172 -:1029B000CF911F910F91FF90EF90DF90CF90BF903C -:1029C0000C94E41A6C297D298E299F2926960FB62E -:1029D000F894DEBF0FBECDBFDF91CF911F910F9155 -:1029E000FF90EF90DF90CF90BF900C94001B0E945F -:1029F000E41AC701B60126960FB6F894DEBF0FBEE3 -:102A0000CDBFDF91CF911F910F91FF90EF90DF909D -:102A1000CF90BF900C94C81A103FD1F118F4103E1B -:102A200050F4A1C0123F09F463C008F44CC0133F36 -:102A300009F473C098C01F708B2D8F710023A1F013 -:102A40000E94611A812F26960FB6F894DEBF0FBE42 -:102A5000CDBFDF91CF911F910F91FF90EF90DF904D -:102A6000CF90BF900C9403130E94821A812F269658 -:102A70000FB6F894DEBF0FBECDBFDF91CF911F918F -:102A80000F91FF90EF90DF90CF90BF900C940A13BE -:102A90000023A9F02111BFC08B2D8F7126960FB690 -:102AA000F894DEBF0FBECDBFDF91CF911F910F9184 -:102AB000FF90EF90DF90CF90BF900C94A71A223038 -:102AC00008F0A9C0E9CF0023A9F08B2D8F712696BD -:102AD0000FB6F894DEBF0FBECDBFDF91CF911F912F -:102AE0000F91FF90EF90DF90CF90BF900C94611A00 -:102AF000002359F38B2D8F7126960FB6F894DEBF05 -:102B00000FBECDBFDF91CF911F910F91FF90EF903E -:102B1000DF90CF90BF900C94821A002399F08B2DF8 -:102B20008F7126960FB6F894DEBF0FBECDBFDF9132 -:102B3000CF911F910F91FF90EF90DF90CF90BF90BA -:102B40000C944C1A26960FB6F894DEBF0FBECDBF7C -:102B5000DF91CF911F910F91FF90EF90DF90CF9079 -:102B6000BF900C94421A0023A9F0222309F4ADCFA0 -:102B7000812F26960FB6F894DEBF0FBECDBFDF9132 -:102B8000CF911F910F91FF90EF90DF90CF90BF906A -:102B90000C94EC11222309F4ADCF812F26960FB6A9 -:102BA000F894DEBF0FBECDBFDF91CF911F910F9183 -:102BB000FF90EF90DF90CF90BF900C94B4124B2D0C -:102BC0004F70612FC7010E94390426960FB6F89402 -:102BD000DEBF0FBECDBFDF91CF911F910F91FF9050 -:102BE000EF90DF90CF90BF900C9466194B2D4F70F3 -:102BF000612FC70126960FB6F894DEBF0FBECDBF7A -:102C0000DF91CF911F910F91FF90EF90DF90CF90C8 -:102C1000BF900C94570826960FB6F894DEBF0FBEEF -:102C2000CDBFDF91CF911F910F91FF90EF90DF907B -:102C3000CF90BF9008950E94FC1B0E94D11B0E9460 -:102C4000161C0E9422210E94722080E090E00E94C7 -:102C5000E61080E090E00C94FC100E94EC1B0C94B9 -:102C60001B160E941D1B292F22952F702C3030F42B -:102C70002A3048F42250223078F405C02C3041F03C -:102C80002F3031F009C0803E48F0803F29F406C063 -:102C900093FB882780F9089580E0089581E00895E6 -:102CA000CF93DF9300D000D01F92CDB7DEB70F9047 -:102CB0000F900F900F900F90DF91CF910895CF93C9 -:102CC000DF9300D000D000D0CDB7DEB726960FB688 -:102CD000F894DEBF0FBECDBFDF91CF9108951F9353 -:102CE000CF93DF93C0917B0116E080917C01C817E0 -:102CF00099F0D0E01C9FF0011D9FF00D1124E358C6 -:102D0000FE4F4081518162817381848195810E944F -:102D10005F162196C770E9CFDF91CF911F9108957B -:102D20004091AD015091AE016091AF017091B00141 -:102D30008091B1019091B2010C945F168091B20123 -:102D400082958F7009F054C08091AF01882309F4F7 -:102D50004FC080917B01A0917C014091B0015091C6 -:102D6000B1016091AD017091AE01B6E08A1709F42E -:102D70003FC090E041155105C1F17F3F11F46F3F15 -:102D8000A1F1B89FF001B99FF00D1124E358FE4F57 -:102D9000218127132AC02081261327C022812111D7 -:102DA00024C0238134812417350710F421503109C0 -:102DB000241B350B283C3105C0F42091B2012F7043 -:102DC00020612093B20126E0289FF001299FF00D99 -:102DD0001124EE57FE4F80818F70806180838DEAD1 -:102DE00091E00E9411130C946F1601968770BECF6C -:102DF0000895CF92DF92EF92FF920F931F93CF939C -:102E0000DF93CDB7DEB762970FB6F894DEBF0FBE83 -:102E1000CDBF8C0185E0F801DE011D9601900D9279 -:102E20008A95E1F7D8014C9111965C911197129611 -:102E30006C918091B0019091B101009709F475C136 -:102E40003091AD017091AE017F3F19F43F3F09F41D -:102E50006CC1F801C380D480E090AF01EE2009F48A -:102E6000BEC02091B201C816D90628F0D601A81B11 -:102E7000B90BCD0104C0809590958C0D9D1DFF244C -:102E8000F394883C910578F0F12C207F09F0C4C0C0 -:102E90007C2DD98AC88A89890E9450168DEA91E0D2 -:102EA0000E941113AFC0822F807F09F045C05713D5 -:102EB00013C0431311C061110FC02F702061209304 -:102EC000B2010E9490168DEA91E00E941113809148 -:102ED000B201F80185832EC0CD2819F15F3F11F4AE -:102EE0004F3FF9F0F62E61111CC080917B012091BB -:102EF0007C0136E0821709F45BC090E0389FF00156 -:102F0000399FF00D1124E358FE4F7181571306C00D -:102F10007081471303C07281711103C001968770DD -:102F2000E9CFF62E662309F41CC18091B2018160BD -:102F30008093B201F12C15C1571309C0431307C088 -:102F4000611105C08091B201F8018583C8C04D8729 -:102F50005E878D859E856A8B0E9431166A898823DB -:102F6000D1F16623C1F12091B201822F82958F7039 -:102F700090E0029774F08091AD019091AE01988736 -:102F80008F831986DB86CA862C87CE0107960E941E -:102F9000111386E0F801ADEAB1E001900D928A9537 -:102FA000E1F70E949E160E949016FF24F394D9C068 -:102FB0004D875E878D859E850E941D1B292F22953A -:102FC0002F70223008F0C1C09F7009F0BBC0805E36 -:102FD000883008F4C6C0C8010E941113E6CFC81695 -:102FE000D90608F453C0F601E81BF90BCF01883C61 -:102FF000910508F450C0F12C7C2DD98AC88A8989A2 -:103000000E945016EDEAF1E086E0DF011D928A95FC -:10301000E9F70E949016A5C0571314C0431312C0BD -:10302000611110C08091B201F8018583C8010E942E -:10303000111386E0EDEAF1E0DF011D928A95E9F7D0 -:10304000FE2C8FC04D875E878D859E856A8B0E9482 -:1030500031166A89882309F4BECF662309F4BBCFF1 -:103060002091B201822F82958F7090E002970CF42C -:1030700090CF8091AD019091AE019A8389831B829C -:10308000DD82CC822E83CE01019681CF80959095F2 -:103090008C0D9D1DACCFF62E662309F49CCF5713E3 -:1030A00033C0431331C02091B20120FD24C0822FD0 -:1030B00082958F70482F50E041155105E1F0D801FD -:1030C00015962C9315974F30510549F08F5F982F27 -:1030D0009295907F822F8F70892B15968C93C801C3 -:1030E0000E94111386E0F801ADEAB1E001900D9263 -:1030F0008A95E1F78ECF86E0F801ADEAB1E0019064 -:103100000D928A95E1F72DC04D875E878D859E854E -:103110000E94311681113DCF8091B2018160809370 -:10312000B201C8010E9411131CC0662309F453CFD9 -:103130004D875E878D859E850E943116882309F410 -:103140004ACF27CF811143CF0CC0243008F043CFA2 -:103150009F7009F43CCFD80115969C91907F09F09F -:1031600036CF8F2D62960FB6F894DEBF0FBECDBF5F -:10317000DF91CF911F910F91FF90EF90DF90CF9053 -:1031800008951F93CF93DF93CDB7DEB72C970FB67B -:10319000F894DEBF0FBECDBF4F83588769877A870B -:1031A0008B879C87CE0107960E94F916882371F0C1 -:1031B0008A859B85892B09F441C088858F3F09F05A -:1031C00065C08F818F3F09F061C038C086E0FE0185 -:1031D0003796DE01119601900D928A95E1F76A8586 -:1031E0007B856115710551F1FF81E885EF3F11F491 -:1031F000FF3F21F120917C0130E0C90101968770E9 -:10320000992740917B0150E08417950709F447C046 -:10321000F983EA837D836C8396E0929FD001939F2C -:10322000B00D1124A358BE4FFE01319601900D92AE -:103230009A95E1F780937C010E946F1616E08091C9 -:103240007B0190917C018917B9F1189FC00111246D -:1032500083589E4F0E94F916882371F1E0917B01FB -:103260001E9FF0011124E358FE4F4081518162817D -:103270007381848195810E945F1680917B0190E02B -:1032800001968770992780937B01D9CF4F8158850C -:1032900069857A858B859C850E945F16CFCF0E94B9 -:1032A0002D1610927C0110927B01EDEAF1E086E090 -:1032B000DF011D928A95E9F72C960FB6F894DEBFD0 -:1032C0000FBECDBFDF91CF911F910895EF92FF9276 -:1032D0000F931F93CF93DF938C01892B09F46CC05C -:1032E000F12CEE24E394E8012196F80184918437CF -:1032F00040F4843008F051C0813081F0823019F1FF -:103300005BC0853709F444C0A8F19CE7980F90375B -:1033100008F052C08F770E94B41241C00E5F1F4F59 -:10332000FE01849190E2980F983050F48770FE2D42 -:1033300001C0FF0F8A95EAF78F2F0E94EF1B14C080 -:103340000E94EC112DC00E5F1F4FFE01849190E290 -:10335000980F983060F48770FE2D01C0FF0F8A959A -:10336000EAF78F2F0E94F51B0E94161C19C00E94BD -:10337000B41216C00E5F1F4FFE01C491CC2381F022 -:103380008FE99FE00197F1F700C00000C150F6CF30 -:103390000E5F1F4FFE01F49003C00E94EC118E01DE -:1033A0008F2D882309F49FCFEFE9FFE03197F1F7E4 -:1033B00000C000008150F5CFDF91CF911F910F9198 -:1033C000FF90EF90089508956093B7017093B8014E -:1033D0008093B9019093BA010C941B160F931F931D -:1033E0000091B7011091B8012091B9013091BA0153 -:1033F000DC01CB01802B912BA22BB32B8093B70147 -:103400009093B801A093B901B093BA011F910F91A5 -:103410000C941B160F931F930091B7011091B801E4 -:103420002091B9013091BA01DC01CB0180239123B5 -:10343000A223B3238093B7019093B801A093B9015D -:10344000B093BA011F910F910C941B160F931F9309 -:103450000091B7011091B8012091B9013091BA01E2 -:10346000DC01CB0180279127A227B3278093B701E6 -:103470009093B801A093B901B093BA011F910F9135 -:103480000C941B161092B3011092B4011092B50166 -:103490001092B6010C941B1641E050E060E070E021 -:1034A00004C0440F551F661F771F8A95D2F74093BB -:1034B000B3015093B4016093B5017093B6010C94BD -:1034C0001B1641E050E060E070E004C0440F551F5F -:1034D000661F771F8A95D2F78091B3019091B4014E -:1034E000A091B501B091B601482B592B6A2B7B2BCB -:1034F0004093B3015093B4016093B5017093B6014A -:103500000C941B1641E050E060E070E004C0440FF2 -:10351000551F661F771F8A95D2F740955095609585 -:1035200070958091B3019091B401A091B501B091D3 -:10353000B601482359236A237B234093B301509358 -:10354000B4016093B5017093B6010C941B1641E071 -:1035500050E060E070E004C0440F551F661F771F05 -:103560008A95D2F78091B3019091B401A091B501F1 -:10357000B091B601482759276A277B274093B301AA -:103580005093B4016093B5017093B6010C941B166F -:103590000F931F930091B3011091B4012091B501D5 -:1035A0003091B601DC01CB01802B912BA22BB32BE8 -:1035B0008093B3019093B401A093B501B093B60189 -:1035C0001F910F910C941B160F931F930091B30141 -:1035D0001091B4012091B5013091B601DC01CB010D -:1035E00080239123A223B3238093B3019093B4014A -:1035F000A093B501B093B6011F910F910C941B16C7 -:103600000F931F930091B3011091B4012091B50164 -:103610003091B601DC01CB0180279127A227B32787 -:103620008093B3019093B401A093B501B093B60118 -:103630001F910F910C941B160895CF92DF92EF9279 -:10364000FF920F931F93CF93DF938C01C090B30130 -:10365000D090B401E090B501F090B6018091B7012F -:103660009091B801A091B901B091BA01C82AD92AA4 -:10367000EA2AFB2ACFE1D0E0D701C6010C2E04C014 -:10368000B695A795979587950A94D2F780FF07C0BE -:10369000B8018C2F0E947B088130910531F421976D -:1036A00058F7B80180E00E947B08DF91CF911F910D -:1036B0000F91FF90EF90DF90CF90089590910C01C3 -:1036C0009923F1F090910D019923D1F0982F9695BF -:1036D000969596959F3080F5E0910E01F0910F013F +:1007F00024C08091F0019091F101A091F201B0919B +:10080000F3018730904BA740B04BB9F41092F00140 +:100810001092F1011092F2011092F30114BE84B70C +:10082000877F84BF88E10FB6F894809360001092B0 +:1008300060000FBEE0E0FFE3099511E0A0E0B1E049 +:10084000E4E7FAE402C005900D92A433B107D9F7AA +:1008500011E0A4E3B1E001C01D92A03FB107E1F7B0 +:100860000E94650B0C9438250C940000462F50E034 +:100870004F30510508F0DEC0DC01FA01EA5AFF4FA3 +:1008800012968C910C94ED24882321F085EE0E9421 +:10089000D111D0C085EE0E949912CCC0882349F0B6 +:1008A0000E94D31C909335018093340188EF91E02E +:1008B000089580913401909135010E94DF1C8739A1 +:1008C00091050CF0A8C08AEE91E00895882349F0C4 +:1008D0000E94D31C909335018093340187EE91E000 +:1008E000089580913401909135010E94DF1C873971 +:1008F00091050CF093C089ED91E00895882349F0AB +:100900000E94D31C909335018093340182ED91E0D5 +:10091000089580913401909135010E94DF1C873940 +:1009200091050CF07EC080EC91E00895882349F099 +:100930000E94D31C90933501809334018BEB91E09E +:10094000089580913401909135010E94DF1C873910 +:1009500091050CF069C08DEA91E00895882349F073 +:100960000E94D31C909335018093340188EA91E072 +:10097000089580913401909135010E94DF1C8739E0 +:1009800091050CF054C08AE991E00895882309F498 +:1009900051C085E891E00895882309F44BC080E7B1 +:1009A00091E00895882309F445C08BE591E008950E +:1009B000882309F43FC086E491E008958823D1F1AB +:1009C0008DE391E008958823A9F188E291E00895EC +:1009D000882381F183E191E00895882359F18EEF16 +:1009E00090E00895882331F18091B3019091B40192 +:1009F000A091B501B091B60120E2822780729927BB +:100A0000AA27BB278093B3019093B401A093B501AB +:100A1000B093B6010FC085EF91E0089584EE91E0A8 +:100A200008958BEC91E0089586EB91E0089583EAB8 +:100A300091E0089580E090E0089508956091B301F9 +:100A40007091B4018091B5019091B6010E94381C5B +:100A500056985E9825982D9826982E9827982F9826 +:100A60008330C1F028F4813041F0823049F008959C +:100A7000843049F0853051F00895259A2D9A0895D3 +:100A8000269A2E9A0895259A2D9A04C0259A2D9A71 +:100A9000269A2E9A279A2F9A08950C941E055698F6 +:100AA0005E9825982D9826982E9827982F988FEF46 +:100AB00090E0909389008093880090938B008093BE +:100AC0008A0090938D0080938C00259A2D9A2FEFA9 +:100AD00080E792E0215080409040E1F700C00000A4 +:100AE000269A2E9A2FEF80E792E021508040904086 +:100AF000E1F700C00000279A2F9A2FEF80E792E0DD +:100B0000215080409040E1F700C0000025982D98CA +:100B10002FEF80E792E0215080409040E1F700C045 +:100B2000000026982E982FEF80E792E02150804019 +:100B30009040E1F700C0000027982F9856985E98E3 +:100B400025982D9826982E9827982F98089589EA09 +:100B50008093800089E08093810024982C983F98AE +:100B60008AB18F748AB96E98479A8BB1806B8BB9B2 +:100B7000769A0E944F050C941D0580E28093000137 +:100B80008091360181110EC00E940C0681E0809395 +:100B900036012FEF83ED90E3215080409040E1F744 +:100BA00000C0000080E40E941206809300018111C1 +:100BB0002EC00E943C0680930001811128C00E9433 +:100BC0003C0680930001811122C08FE30E943C0605 +:100BD0008093000181111BC00E94340680E40E94B2 +:100BE000120680930001811112C08CE00E943C0625 +:100BF0008093000181110BC00E943C06809300018C +:100C0000811105C08FE30E943C06809300010E9481 +:100C100034068091000108951092B9008AE0809313 +:100C2000B800089594EA9093BC009091BC0097FF9F +:100C3000FCCF9091B900987F983021F0903111F05D +:100C400081E008958093BB0084E88093BC0080918C +:100C5000BC0087FFFCCF8091B900887F883111F0FC +:100C6000803471F780E0089584E98093BC0080911E +:100C7000BC0084FDFCCF08958093BB0084E8809382 +:100C8000BC008091BC0087FFFCCF9091B900987F99 +:100C900081E0983209F480E0089584E88093BC00F4 +:100CA0008091BC0087FFFCCF8091BB0008958091AC +:100CB0000001811115C080E40E941206809300019A +:100CC00081110CC082E10E943C06809300018111D9 +:100CD00005C08FEF0E943C06809300010E943406FD +:100CE00084B1807F84B985B1807F85B98AB1837FE3 +:100CF0008AB98BB1837F8BB93E98469808950E943C +:100D0000BD05809300010E94570680B38C7080BBA4 +:100D100081B3836F81BBA8E3B1E0E6E4F1E08EE04C +:100D20008E0F11921D928E13FCCF0C94A705BF92CB +:100D3000CF92DF92EF92FF920F931F93CF93DF93A7 +:100D400080910001882379F0809137018F5F809333 +:100D50003701811108C00E94BD05809300018111F7 +:100D600002C00E944F0508E311E0C0E0D0E0DD249E +:100D7000D39482E0C82EEE24E394F12CC730D10541 +:100D800000F580910001811164C080E40E94120688 +:100D900080930001811112C082E10E943C06809381 +:100DA000000181110BC0C7010C2E01C0880F0A94ED +:100DB000EAF780950E943C06809300010E94340669 +:100DC00048C0CA30A1F028F4C83059F0C93061F0E9 +:100DD00005C0CC3089F070F0CD3089F0209A289889 +:100DE00010C0219A29980DC0229A2A980AC0239AE5 +:100DF0002B9807C0529A01C0539A5B9802C03E9A42 +:100E0000469890EA9A95F1F79FB1799902C082E0ED +:100E100001C080E091709D25982B7C9902C084E0F0 +:100E200001C080E0892B7D9902C038E001C030E02C +:100E3000832B7E9902C020E101C020E0822B9FB16C +:100E40009095991F9927991F9295990F907E892BBC +:100E50000FC080910001811149C080E40E941206F8 +:100E600080930001882379F1B12C0E9434068B2DE8 +:100E7000F8019081981719F08083C09201010E94B7 +:100E8000570621960F5F1F4FCE30D10509F076CF60 +:100E900080910101882361F18150809301018823B1 +:100EA00039F08FE99FE00197F1F700C0000020C002 +:100EB000A6E4B1E0E8E3F1E0CF01825F91919D9378 +:100EC0008E13FCCF15C083E10E943C068093000185 +:100ED0008111CACF81E40E94120680930001811122 +:100EE000C3CF0E944D06B82EB094BFCF80E0C0CFD4 +:100EF0000E944D0581E0DF91CF911F910F91FF90EE +:100F0000EF90DF90CF90BF900895E82FF0E0EA5B7C +:100F1000FE4F8081089508958B3B910578F4883ABF +:100F2000910540F5853A9105D0F48430910508F09B +:100F3000B1C08130910509F4ADC06BC0803E910510 +:100F400008F467C0883E910508F4A4C09C01205FA6 +:100F500031092031310508F05CC090650895853A6B +:100F6000910509F459C0863A910509F058C082E804 +:100F700090E40895883A910509F454C0893A91059E +:100F800009F453C08A3A910509F452C08B3A91058D +:100F900009F451C08C3A910509F450C08D3A91057D +:100FA00009F44FC0803B910509F44EC08E3A91057B +:100FB00009F44DC08F3A910509F44CC0813B91056D +:100FC00009F44BC0823B910509F44AC0833B91056B +:100FD00009F449C0843B910509F448C0853B91055B +:100FE00009F447C0863B910509F446C0873B91054B +:100FF00009F445C0883B910509F444C0893B91053B +:1010000009F443C08A3B910509F442C080E094E4AE +:10101000089580E090E0089581E890E4089583E8E1 +:1010200090E4089582EE94E4089589EE94E408959E +:101030008AEE94E4089585EB94E4089586EB94E4B5 +:10104000089587EB94E408958CEC94E408958DEC76 +:1010500094E4089583E895E408958AE895E4089572 +:1010600082E995E4089584E995E4089581E296E49F +:10107000089583E296E4089584E296E4089585E273 +:1010800096E4089586E296E4089587E296E408954A +:101090008AE296E40895089596E0799FF00111247C +:1010A00094E5899FE00DF11D1124E60FF11DEE0F6F +:1010B000FF1FEF5FFD4F859194910895880F991F51 +:1010C000FC01E558FF4F859194910895880F991F71 +:1010D000FC01E550FE4F85919491089526E0729FA2 +:1010E000F001112444E5849FE00DF11D1124E60F69 +:1010F000F11DEE0FFF1FEF5FFD4F859194919C0155 +:101100003A9521154FE1340708F41AC13F512115D2 +:10111000304120F49F700E94660808959C0130536E +:101120002115304118F49927906C0895811520E518 +:10113000920769F40E941F164FEF84E39CE0415030 +:1011400080409040E1F700C000000C942E1D8130DB +:1011500020E5920731F48091CE0181608093CE0129 +:1011600008959C0130552115304108F051C0292FB8 +:1011700033272F70332721303105D9F4AC01437068 +:10118000552702C0220F331F4A95E2F73C68AC0195 +:1011900064E0440F551F6A95E1F744275370242BF0 +:1011A000352B73E0880F991F7A95E1F780769927A0 +:1011B0001DC02230310529F4982F8827816F906A4D +:1011C000089523303105A9F4AC014370552721E07F +:1011D00030E002C0220F331F4A95E2F73C6843E03B +:1011E000880F991F4A95E1F7807E9770822B932B89 +:1011F000089524303105E1F4AC014370552721E016 +:1012000030E002C0220F331F4A95E2F73A68E7CF79 +:101210009C0130572115304118F49F709062089559 +:101220009C0130582115304118F49F70906A089540 +:10123000803E9105E0F4803C910558F5813391059D +:1012400009F46FC048F48932910509F463C08A3209 +:10125000910509F46DC072C089339105E9F08238B7 +:101260009105D1F08533910509F44DC067C0833EE7 +:10127000910581F138F4803E9105B9F0823E9105E7 +:10128000D9F05CC0863E910561F1873E9105A1F1E0 +:1012900055C00E945E0808952091E10120FD02C022 +:1012A00021FF4CC080EE90E049C08091E10180FFB9 +:1012B000F9CF89E390E042C08091E10182FF0EC046 +:1012C0008091E10184FF03C080E090E037C083EEAD +:1012D00090E034C08091E10182FFF2CF82EE90E095 +:1012E0002DC08091E10183FF0BC08091E10184FD5D +:1012F000EBCF87EE90E022C08091E10183FFF5CF34 +:1013000086EE90E01BC08091E10185FF07C089E275 +:1013100090E014C08091E10185FFF9CF85E390E072 +:101320000DC08091E10186FF07C08AE290E006C00F +:101330008091E10186FFF9CF81E390E00E948C0764 +:10134000089508950C94A109809164010895CF93A4 +:10135000DF9300D01F92CDB7DEB79C018091E701EB +:10136000843019F593E099833B832A839093E900B5 +:101370008FEF9091E800815095FD06C095ED9A950C +:10138000F1F700008111F5CF8091E80085FF0DC0D5 +:1013900040E050E063E070E0CE0101960E94110C45 +:1013A0008091E8008E778093E8000F900F900F9067 +:1013B000DF91CF910895CF93DF9300D01F92CDB7E7 +:1013C000DEB72091E701243021F522E029839B83B9 +:1013D0008A8383E08093E9008FEF9091E800815049 +:1013E00095FD06C095ED9A95F1F700008111F5CFB6 +:1013F0008091E80085FF0DC040E050E063E070E0C0 +:10140000CE0101960E94110C8091E8008E778093A6 +:10141000E8000F900F900F90DF91CF9108952091E9 +:10142000E7012430F1F422E02093E9002FEF30911E +:10143000E800215035FD06C035ED3A95F1F7000082 +:101440002111F5CF2091E80025FF0BC040E050E0CE +:1014500065E070E00E94110C8091E8008E77809327 +:10146000E8000895CF93DF93EC019091E701943069 +:1014700009F046C080910C018823D9F080910D01BC +:101480008823B9F09093E9008FEF9091E8008150A4 +:1014900095FD06C095E19A95F1F700008111F5CF11 +:1014A0008091E80085FF2CC040E050E060E170E0F2 +:1014B00017C081E08093E9008FEF9091E8008150A0 +:1014C00095FD06C095ED9A95F1F700008111F5CFD5 +:1014D0008091E80085FF14C040E050E068E070E0D3 +:1014E000CE010E94110C8091E8008E778093E80075 +:1014F00080E1FE01A4E5B1E001900D928A95E1F74B +:10150000DF91CF9108958091E601811109C00E9479 +:10151000A60D0E94030E8091E20084608093E20099 +:1015200008951092E601089508950C9465230E9491 +:10153000C41C0E946B230E94A9100C94A20942E0D3 +:1015400061EC81E00E94200D42E061EC82E00E94AB +:10155000200D42E061EC83E00E94200D42E161EC4D +:1015600084E00C94200D8091E901833009F455C08A +:1015700030F4813071F0823009F48EC008958A30E1 +:1015800009F47AC08B3009F460C0893009F09CC03E +:1015900020C08091E801813A09F096C08091E8006E +:1015A000877F8093E8008091EC019091ED01892B79 +:1015B00021F460E184E591E003C060E080E090E028 +:1015C00070E00E945C0C8091E8008B778093E800CB +:1015D00008958091E801813209F076C08091EC0194 +:1015E0009091ED01009719F0039709F06DC080917B +:1015F000E800877F8093E8008091E80082FD05C0C5 +:101600008091E7018111F8CF5FC08091F100809354 +:1016100064018091E8008B7753C08091E801813AA2 +:1016200009F052C08091EC019091ED01892B09F0F5 +:101630004BC08091E800877F8093E8008091E800AC +:1016400080FFFCCF80910C0136C08091E80181328F +:10165000D9F58091EC019091ED01892BA9F580914C +:10166000E800877F8093E8000E94550D8091EA0191 +:1016700080930C010C941F168091E801813221F5B2 +:101680008091E800877F8093E8000E94550D80914B +:10169000EB018093650108958091E801813AA1F4FE +:1016A0008091E800877F8093E8008091E80080FFC8 +:1016B000FCCF809165018093F1008091E8008E77E6 +:1016C0008093E8000C94550D089584B7877F84BFFC +:1016D00088E10FB6F89480936000109260000FBE0E +:1016E00090E080E80FB6F8948093610090936100D9 +:1016F0000FBE0E94F8100E94A60D0E94030E80915A +:10170000E20084608093E20078940E9489100E9435 +:10171000FA1082E091E00E94A4100E94532380916D +:10172000E701853069F40E94881C8091E5018823D7 +:10173000B1F30E94B01C882391F30E94FB0BEFCF02 +:101740000E940011ECCF292F332723303105C9F037 +:1017500064F42130310581F02230310509F043C0B5 +:101760008DE690E025E236E042C021323105F1F00D +:101770002232310541F137C082E190E022E936E0C2 +:1017800036C099278130910541F08230910541F0B2 +:10179000892B49F5E1E2F6E005C0E9E0F6E002C098 +:1017A000E1EFF5E0849190E09F0121C06430D8F42E +:1017B000E62FF0E0EE0FFF1FEE5DFE4F208131813E +:1017C00089E090E014C0643070F470E0FB01EE0F2B +:1017D000FF1FE65EFE4F20813181FB01EA5EFE4F76 +:1017E000808190E004C080E090E020E030E0FA01E9 +:1017F00031832083089580E189BD82E189BD09B4E8 +:1018000000FEFDCF8091D8008F7D8093D80080911D +:10181000E00082608093E0008091E00081FDFCCFD9 +:101820000895CF92DF92EF92FF920F931F93CF9381 +:10183000DF93EC018B016A010E94740D811133C0AA +:10184000C114D10439F0F60180819181081B190B74 +:10185000C80FD91FE12CF12C0115110519F1809148 +:10186000E80085FD16C08091E8008E778093E8003F +:10187000C114D10449F0F60180819181E80EF91E6E +:10188000F182E08285E00FC00E94740D882321F36D +:101890000AC089918093F10001501109FFEFEF1AFE +:1018A000FF0ADACF80E0DF91CF911F910F91FF9077 +:1018B000EF90DF90CF9008952091EE013091EF01ED +:1018C0002617370748F06115710539F42091E800B3 +:1018D0002E772093E80001C0B90140E06115710541 +:1018E000A9F12091E701222309F443C0253009F42E +:1018F00042C02091E80023FD40C02091E80022FD75 +:1019000032C02091E80020FFE9CF4091F300209100 +:10191000F20030E0342BFC01CF016115710559F064 +:101920002830310540F481918093F10061507109B4 +:101930002F5F3F4FF1CF41E02830310509F040E003 +:101940002091E8002E772093E800C8CF4111C9CF3D +:101950000AC08091E701882361F0853061F08091B1 +:10196000E80083FD0AC08091E80082FFF2CF80E0AA +:10197000089582E0089583E0089581E0089520911C +:10198000EE013091EF012617370748F06115710518 +:1019900039F42091E8002E772093E80001C0B901C6 +:1019A000FC0120E06115710591F18091E701882328 +:1019B00009F440C0853009F43FC08091E80083FD00 +:1019C0003DC08091E80082FD2FC08091E80080FF3B +:1019D000E9CF2091F3008091F20090E0922B611505 +:1019E000710559F08830910540F424912093F1005D +:1019F0003196615071090196F2CF21E0089709F004 +:101A000020E08091E8008E778093E800CBCF211111 +:101A1000CCCF0AC08091E701882361F0853061F066 +:101A20008091E80083FD0AC08091E80082FFF2CF38 +:101A300080E0089582E0089583E0089581E00895AC +:101A4000982F973058F59093E900981739F07091D6 +:101A5000EC002091ED005091F00003C0242F762F70 +:101A600050E021FF19C03091EB003E7F3093EB0036 +:101A70003091ED003D7F3093ED003091EB0031600F +:101A80003093EB007093EC002093ED005093F00046 +:101A90002091EE0027FF07C09F5FD3CF8F70809308 +:101AA000E90081E0089580E008958091E80187FFD2 +:101AB00011C08091E80082FD05C08091E70181118D +:101AC000F8CF11C08091E8008B770BC08091E701BF +:101AD000882349F08091E80080FFF8CF8091E800EA +:101AE0008E778093E80008952091E4003091E5001E +:101AF00095E64091EC00842F817040FF22C08091D8 +:101B0000E80080FD1CC08091E701882391F08530BA +:101B100091F08091EB0085FD10C04091E400509160 +:101B2000E5004217530729F39A01915011F784E019 +:101B3000089582E0089583E0089581E0089580E0AB +:101B400008954091E80042FFDECF08950E94140EF0 +:101B50000E941C0EE0EEF0E0808181608083E8ED61 +:101B6000F0E080818F77808319BCA7EDB0E08C9185 +:101B70008E7F8C9380818F7E80831092E601089502 +:101B80000F931F93CF93DF930E94140E0E941C0E9D +:101B9000C8EDD0E088818F778883888180688883CA +:101BA00088818F7D888319BC1092E7011092E30130 +:101BB0001092E5011092E40100EE10E0F80180813E +:101BC0008B7F808388818160888342E060E080E051 +:101BD0000E94200DE1EEF0E080818E7F8083E2EEB6 +:101BE000F0E0808181608083808188608083F8015B +:101BF00080818E7F8083888180618883DF91CF910F +:101C00001F910F910895E8EDF0E080818F7E808331 +:101C1000E7EDF0E080818160808384E082BF81E035 +:101C20008093E6010C94C00DE8EDF0E080818E7F9A +:101C300080831092E20008951092DA001092E10081 +:101C400008951F920F920FB60F9211242F933F9376 +:101C50004F935F936F937F938F939F93AF93BF93B4 +:101C6000EF93FF938091E10082FF0BC08091E2002F +:101C700082FF07C08091E1008B7F8093E1000E948A +:101C800088108091DA0080FF1FC08091D80080FF0B +:101C90001BC08091DA008E7F8093DA008091D9009A +:101CA00080FF0DC080E189BD82E189BD09B400FEDD +:101CB000FDCF81E08093E7010E94830A05C019BC33 +:101CC0001092E7010E94910A8091E10080FF19C003 +:101CD0008091E20080FF15C08091E2008E7F8093AA +:101CE000E2008091E20080618093E2008091D80060 +:101CF00080628093D80019BC85E08093E7010E9440 +:101D0000950A8091E10084FF30C08091E20084FF59 +:101D10002CC080E189BD82E189BD09B400FEFDCF00 +:101D20008091D8008F7D8093D8008091E1008F7ED4 +:101D30008093E1008091E2008F7E8093E2008091A9 +:101D4000E20081608093E2008091E301882311F03A +:101D500084E007C08091E30087FD02C081E001C0FC +:101D600083E08093E7010E94970A8091E10083FF5E +:101D700029C08091E20083FF25C08091E100877F28 +:101D80008093E10082E08093E7011092E30180916B +:101D9000E1008E7F8093E1008091E2008E7F80934E +:101DA000E2008091E20080618093E20042E060E026 +:101DB00080E00E94200D8091F00088608093F00008 +:101DC0000E94940AFF91EF91BF91AF919F918F91E3 +:101DD0007F916F915F914F913F912F910F900FBE27 +:101DE0000F901F9018951F920F920FB60F9211240B +:101DF0002F933F934F935F936F937F938F939F9313 +:101E0000AF93BF93CF93DF93EF93FF93C091E9001C +:101E1000CF708091EC00D82FD17080FDD0E8109267 +:101E2000E9008091F000877F8093F00078940E9411 +:101E3000370F1092E9008091F00088608093F000E5 +:101E4000CD2BCF70C093E900FF91EF91DF91CF913F +:101E5000BF91AF919F918F917F916F915F914F91C2 +:101E60003F912F910F900FBE0F901F9018951F93C9 +:101E7000CF93DF93CDB7DEB7AA970FB6F894DEBF46 +:101E80000FBECDBFE8EEF1E088E08E0F9091F1003B +:101E900091938E13FBCF0E94B30A8091E80083FFD9 +:101EA0001FC18091E8019091E901492F50E04A302B +:101EB000510508F015C1FA01EB59FF4F0C94ED24C0 +:101EC000803881F0823809F00BC18091EC018F706D +:101ED0008093E9008091EB0085FB882780F91092C0 +:101EE000E90006C08091E4019091E50191118260C2 +:101EF0009091E800977F9093E8008093F100109212 +:101F0000F100C8C0282F2D7F09F0EAC0882319F0FE +:101F1000823061F0E5C08091EA01813009F0E0C0D3 +:101F2000933009F080E08093E5012BC08091EA01B5 +:101F3000811127C08091EC018F7009F4D1C080938A +:101F4000E9002091EB0020FF1CC0933021F4809128 +:101F5000EB00806214C09091EB0090619093EB00D5 +:101F600021E030E0A90102C0440F551F8A95E2F735 +:101F70004093EA001092EA008091EB008860809321 +:101F8000EB001092E9008091E800877F86C0811104 +:101F9000A7C01091EA011F778091E3008078812B20 +:101FA0008093E3008091E800877F8093E8000E949F +:101FB000550D8091E80080FFFCCF8091E3008068A0 +:101FC0008093E300111102C082E001C083E080939E +:101FD000E70186C08058823008F082C08091EA0113 +:101FE0009091EB018C3D53E0950779F583E08A836E +:101FF0008AE289834FB7F894DE01139620E03EE031 +:1020000051E2E32FF0E050935700E49120FF03C02A +:10201000E295EF703F5FEF708E2F90E0EA3010F0A6 +:10202000C79601C0C0968D939D932F5F243149F7C9 +:102030004FBF8091E800877F8093E8006AE270E0FC +:10204000CE0101960E945C0C14C0AE014F5F5F4F41 +:102050006091EC010E94A30BBC01892B09F440C0E4 +:102060009091E800977F9093E80089819A810E947F +:10207000BF0C8091E8008B778093E80031C08038F6 +:1020800079F58091E800877F8093E8008091E301F3 +:102090008093F1008091E8008E778093E8000E94A1 +:1020A000550D1EC081111CC09091EA019230C0F400 +:1020B0008091E800877F8093E8009093E3010E947D +:1020C000550D8091E301811106C08091E30087FDE9 +:1020D00002C081E001C084E08093E7010E949F0A72 +:1020E0008091E80083FF0AC08091E800877F809399 +:1020F000E8008091EB0080628093EB00AA960FB617 +:10210000F894DEBF0FBECDBFDF91CF911F91089530 +:102110000895CF938091E7018823A1F0C091E90051 +:10212000CF709091EC00892F817090FD80E8C82BD2 +:102130001092E9008091E80083FD0E94370FCF7074 +:10214000C093E900CF91089590936B0180936A0149 +:102150000895E0916A01F0916B01309721F00190B0 +:10216000F081E02D099480E00895E0916A01F091FA +:102170006B01309721F00280F381E02D09940895DE +:10218000E0916A01F0916B01309721F00480F581B4 +:10219000E02D09940895209168013091690182171A +:1021A000930771F09093690180936801E0916A014F +:1021B000F0916B01309721F00680F781E02D0994B2 +:1021C000089520916601309167018217930771F09D +:1021D0009093670180936601E0916A01F0916B0131 +:1021E000309721F00084F185E02D09940895089539 +:1021F0000C94F7100E94CA1C0E947F060C94901D3C +:10220000CF92DF92EF92FF920F931F93CF93DF93C2 +:10221000CDB7DEB72B970FB6F894DEBF0FBECDBF9C +:102220000E9497068DE6C82E81E0D82E00E010E0CF +:10223000E02E802F0E948507F60141916F01F42E58 +:10224000F826B1F40F5F1F4F0E30110589F78FEF9D +:1022500089838A831B820E94D31C8160782F9D838F +:102260008C8349815A816B818D810E94A31140C06A +:102270009091CE0191FF04C08B870E948B078B85C4 +:1022800020E030E04F2D50E0922FBA01022E02C024 +:10229000759567950A94E2F760FF24C02E83EF825C +:1022A00021E030E0690102C0CC0CDD1C9A95E2F718 +:1022B00090E08C219D21892B09F420E028870E9441 +:1022C000D31C8160782F9A8789874E815F816885CA +:1022D0008A850E94A311F801E359FE4F8081C82628 +:1022E000C08206C02F5F3F4F2630310569F6AACF66 +:1022F0000E94772010916C010E94A9101817A1F07C +:102300000E94A91080936C012B960FB6F894DEBF43 +:102310000FBECDBFDF91CF911F910F91FF90EF9036 +:10232000DF90CF900C94A2092B960FB6F894DEBFE5 +:102330000FBECDBFDF91CF911F910F91FF90EF9016 +:10234000DF90CF900895CF93DF93CDB7DEB72B9773 +:102350000FB6F894DEBF0FBECDBF4F835887698795 +:102360007A878B87DE01119686E0FD0111928A95AE +:10237000E9F785E0FE01379601900D928A95E1F725 +:1023800049815A816B817C818D819E810E94B9181F +:102390002B960FB6F894DEBF0FBECDBFDF91CF9165 +:1023A0000895CF93882309F4C2C0C82F823859F406 +:1023B0000E94A91081FDBBC089E30E94551B0E94A9 +:1023C000121C89E30CC0833879F40E94A91080FDA7 +:1023D000AEC083E50E94551B0E94121C83E50E943B +:1023E000971BCF910C94121C843859F40E94A910A9 +:1023F00082FD9DC087E40E94551B0E94121C87E449 +:10240000EECF8CEF8C0F813A48F48C2F0E94B822CB +:1024100081118DC08C2F0E94551BE3CF80E28C0F61 +:10242000883048F4C77081E001C0880FCA95EAF788 +:102430000E94DB1BD6CF8BE58C0F833078F4C53A36 +:1024400029F0C63A31F083E890E005C081E890E0D9 +:1024500002C082E890E0CF910C94CB1088E58C0FFD +:10246000833108F064C0C83A39F1C93A41F1CA3A37 +:1024700049F1CB3A51F1CC3A59F1CD3A61F1C03B37 +:1024800069F1CE3A71F1CF3A79F1C13B81F1C23BAA +:1024900089F1C33B91F1C43B99F1C53BA1F1C63B26 +:1024A000A9F1C73BB1F1C83BB9F1C93BC1F1CA3B86 +:1024B000C9F180E090E038C082EE90E035C089EE4E +:1024C00090E032C08AEE90E02FC085EB90E02CC007 +:1024D00086EB90E029C087EB90E026C08CEC90E082 +:1024E00023C08DEC90E020C083E891E01DC08AE815 +:1024F00091E01AC082E991E017C084E991E014C02C +:1025000081E292E011C083E292E00EC084E292E0A8 +:102510000BC085E292E008C086E292E005C087E247 +:1025200092E002C08AE292E0CF910C94E110CF9148 +:102530000895882309F44BC0823859F40E94A910E9 +:1025400081FF45C089E30E94551B0E94121C89E34C +:102550000CC0833871F40E94A91080FF38C083E555 +:102560000E94551B0E94121C83E50E94971B0C942D +:10257000121C843859F40E94A91082FF28C087E4F5 +:102580000E94551B0E94121C87E4EFCF9CEF980F0E +:10259000913A58F390E2980F983050F4877091E098 +:1025A00001C0990F8A95EAF7892F0E94E11BDFCFBE +:1025B0009BE5980F933020F480E090E00C94CB10D2 +:1025C000885A833120F480E090E00C94E110089563 +:1025D000882321F00E94DB1B0C94121C0895882391 +:1025E00021F00E94E11B0C94121C0895BF92CF921F +:1025F000DF92EF92FF920F931F93CF93DF9300D060 +:1026000000D000D0CDB7DEB725E0FC01DE01119689 +:1026100001900D922A95E1F7FC0140813181028100 +:10262000258122952F7063817481672B09F4E5C29F +:102630003F3F19F44F3F09F4E0C27C0149833A83DC +:1026400089819A812E830E94141B182FB92E0E9413 +:10265000131B0E94DA19EB2DE295EF70F0E0E159BF +:10266000FF4F2E810C94ED248B2D807F9B2D9F702E +:10267000F92E882319F0F29480EFF822002349F014 +:10268000FF2009F467C28F2D0E94EB1B0E94121CD1 +:1026900061C2812F0E949912FF2009F4AEC28F2DD2 +:1026A0000E94F11B26960FB6F894DEBF0FBECDBF79 +:1026B000DF91CF911F910F91FF90EF90DF90CF901E +:1026C000BF900C94121C3B2D307F8B2D8F703032BD +:1026D00011F08295807F112319F0113021F12CC067 +:1026E0000023B9F0222309F4A0C1213009F09DC1D3 +:1026F00026960FB6F894DEBF0FBECDBFDF91CF9107 +:102700001F910F91FF90EF90DF90CF90BF900C94AE +:10271000FB1B222319F0213009F46FC28E830E9423 +:10272000FE1B8E8196C1002321F0223008F065C285 +:102730007CC1211162C28DC1002321F0222309F442 +:1027400074C108C2222309F484C119C22B2D269515 +:102750002695237030E02115310521F02130310517 +:10276000D1F04BC2002321F0812F9B2D937002C02A +:1027700080E090E026960FB6F894DEBF0FBECDBF86 +:10278000DF91CF911F910F91FF90EF90DF90CF904D +:10279000BF900C94CB10002321F0812F9B2D9370C0 +:1027A00002C080E090E026960FB6F894DEBF0FBE20 +:1027B000CDBFDF91CF911F910F91FF90EF90DF90F0 +:1027C000CF90BF900C94E110812F002319F00E944C +:1027D0007F1F02C00E94E71F26960FB6F894DEBF47 +:1027E0000FBECDBFDF91CF911F910F91FF90EF9062 +:1027F000DF90CF90BF900C946C208B2D837009F0EC +:102800007BC00111FAC1812F829586958770880F50 +:10281000880F912F9F70C92ED12CE12CF12C082EFE +:1028200004C0CC0CDD1CEE1CFF1C0A94D2F714FF74 +:1028300012C04FE050E060E070E004C0440F551F4C +:10284000661F771F8A95D2F7CB01BA016095709504 +:102850008095909503C060E070E0CB012B2D26950C +:1028600026952370422F50E042305105D9F0433075 +:10287000510569F16C297D298E299F294130510527 +:1028800051F126960FB6F894DEBF0FBECDBFDF9193 +:10289000CF911F910F91FF90EF90DF90CF90BF905D +:1028A0000C94011A6C297D298E299F2926960FB632 +:1028B000F894DEBF0FBECDBFDF91CF911F910F9176 +:1028C000FF90EF90DF90CF90BF900C941D1A0E9464 +:1028D000011AC701B60126960FB6F894DEBF0FBEE7 +:1028E000CDBFDF91CF911F910F91FF90EF90DF90BF +:1028F000CF90BF900C94E519002319F08B2D8170B7 +:1029000001C08695882309F478C1812F8295869528 +:102910008770880F880F912F9F70C92ED12CE12CC2 +:10292000F12C082E04C0CC0CDD1CEE1CFF1C0A94FC +:10293000D2F714FF12C04FE050E060E070E004C036 +:10294000440F551F661F771F8A95D2F7CB01BA0136 +:10295000609570958095909503C060E070E0CB0124 +:102960002B2D269526952370422F50E0423051059D +:10297000D9F04330510569F16C297D298E299F29B1 +:102980004130510551F126960FB6F894DEBF0FBEC7 +:10299000CDBFDF91CF911F910F91FF90EF90DF900E +:1029A000CF90BF900C94DB1A6C297D298E299F292A +:1029B00026960FB6F894DEBF0FBECDBFDF91CF9144 +:1029C0001F910F91FF90EF90DF90CF90BF900C94EC +:1029D000F71A0E94DB1AC701B60126960FB6F894C3 +:1029E000DEBF0FBECDBFDF91CF911F910F91FF9042 +:1029F000EF90DF90CF90BF900C94BF1A103FD1F1B1 +:102A000018F4103E50F4A1C0123F09F463C008F45A +:102A10004CC0133F09F473C098C01F708B2D8F7189 +:102A20000023A1F00E94581A812F26960FB6F89421 +:102A3000DEBF0FBECDBFDF91CF911F910F91FF90F1 +:102A4000EF90DF90CF90BF900C94E8120E94791A1B +:102A5000812F26960FB6F894DEBF0FBECDBFDF9153 +:102A6000CF911F910F91FF90EF90DF90CF90BF908B +:102A70000C94EF120023A9F02111BFC08B2D8F7190 +:102A800026960FB6F894DEBF0FBECDBFDF91CF9173 +:102A90001F910F91FF90EF90DF90CF90BF900C941B +:102AA0009E1A223008F0A9C0E9CF0023A9F08B2D8F +:102AB0008F7126960FB6F894DEBF0FBECDBFDF91A3 +:102AC000CF911F910F91FF90EF90DF90CF90BF902B +:102AD0000C94581A002359F38B2D8F7126960FB63C +:102AE000F894DEBF0FBECDBFDF91CF911F910F9144 +:102AF000FF90EF90DF90CF90BF900C94791A002355 +:102B000099F08B2D8F7126960FB6F894DEBF0FBE0D +:102B1000CDBFDF91CF911F910F91FF90EF90DF908C +:102B2000CF90BF900C94431A26960FB6F894DEBF50 +:102B30000FBECDBFDF91CF911F910F91FF90EF900E +:102B4000DF90CF90BF900C94391A0023A9F0222374 +:102B500009F4ADCF812F26960FB6F894DEBF0FBED5 +:102B6000CDBFDF91CF911F910F91FF90EF90DF903C +:102B7000CF90BF900C94D111222309F4ADCF812FB7 +:102B800026960FB6F894DEBF0FBECDBFDF91CF9172 +:102B90001F910F91FF90EF90DF90CF90BF900C941A +:102BA00099124B2D4F70612FC7010E943604269653 +:102BB0000FB6F894DEBF0FBECDBFDF91CF911F914E +:102BC0000F91FF90EF90DF90CF90BF900C945D1924 +:102BD0004B2D4F70612FC70126960FB6F894DEBFBC +:102BE0000FBECDBFDF91CF911F910F91FF90EF905E +:102BF000DF90CF90BF900C944B0826960FB6F894B8 +:102C0000DEBF0FBECDBFDF91CF911F910F91FF901F +:102C1000EF90DF90CF90BF9008950E94F81B0E9424 +:102C2000CD1B0E94121C0E941D210E946C2080E07E +:102C300090E00E94CB1080E090E00C94E1100E94A4 +:102C4000E81B0C940D160E94141B292F22952F703F +:102C500030E02C3031054CF42A3031056CF4225030 +:102C600031092230310588F407C02C30310549F094 +:102C70002F30310531F009C0803E48F0803F29F403 +:102C800006C093FB882780F9089580E0089581E0CD +:102C90000895CF93DF9300D000D01F92CDB7DEB759 +:102CA0000F900F900F900F900F90DF91CF9108959C +:102CB000CF93DF9300D000D000D0CDB7DEB72696FB +:102CC0000FB6F894DEBF0FBECDBFDF91CF91089550 +:102CD0001F93CF93DF93C0917B0116E080917C011D +:102CE000C81799F0D0E01C9FF0011D9FF00D112432 +:102CF000E358FE4F408151816281738184819581C7 +:102D00000E9458162196C770E9CFDF91CF911F918D +:102D100008954091AD015091AE016091AF01709165 +:102D2000B0018091B1019091B2010C94581680913C +:102D3000B20182958F7009F054C08091AF01882351 +:102D400009F44FC080917B01A0917C016091AD019D +:102D50007091AE014091B0015091B101B6E08A1777 +:102D600009F43FC090E041155105C1F17F3F11F4D6 +:102D70006F3FA1F1B89FF001B99FF00D1124E35806 +:102D8000FE4F218172132AC02081621327C0228145 +:102D9000211124C0238134812417350710F42150D8 +:102DA0003109241B350B283C3105C0F42091B201B8 +:102DB0002F7020612093B20126E0289FF001299F07 +:102DC000F00D1124EE57FE4F80818F70806180835B +:102DD0008DEA91E00E94F6120C94681601968770B5 +:102DE000BECF0895CF92DF92EF92FF920F931F9381 +:102DF000CF93DF93CDB7DEB762970FB6F894DEBFFF +:102E00000FBECDBF8C0185E0F801DE011D9601905B +:102E10000D928A95E1F7D8014C9111965C9111972A +:102E200012966C9112971396CD90DC901497309176 +:102E3000AD017091AE018091B0019091B101009708 +:102E400009F46BC17F3F19F43F3F09F466C1E0907C +:102E5000AF01EE2009F4C0C02091B201C816D90616 +:102E600028F0F601E81BF90BCF0104C0809590957E +:102E70008C0D9D1DFF24F394883C910578F0F12C76 +:102E8000207F09F0C6C07C2DD98AC88A89890E9412 +:102E900049168DEA91E00E94F612B1C0822F807F20 +:102EA00009F046C0751314C0341312C0611110C06C +:102EB0002F7020612093B2010E9489168DEA91E063 +:102EC0000E94F6128091B201D80115968C932EC003 +:102ED000CD2819F15F3F11F44F3FF9F0F62E611143 +:102EE0001CC080917B0120917C0136E0821709F49F +:102EF0005AC090E0389FF001399FF00D1124E3583B +:102F0000FE4F7181571306C07081471303C0728151 +:102F1000711103C001968770E9CFF62E662309F47C +:102F200018C18091B20181608093B201F12C11C16E +:102F3000751308C0341306C0611104C08091B2013A +:102F4000D801C3C04D875E878D859E856A8B0E94A0 +:102F500023166A898823E1F16623D1F12091B20119 +:102F6000822F82958F7090E0029774F08091AD016E +:102F70009091AE0198878F831986DB86CA862C874D +:102F8000CE0107960E94F61286E0F801ADEAB1E0A4 +:102F900001900D928A95E1F70E9497160E9489167A +:102FA000FF24F394D6C04D875E878D859E850E9451 +:102FB000141B292F22952F7030E0223031050CF0A0 +:102FC000BCC09F7009F0B6C0805E883008F4C1C0F4 +:102FD000C8010E94F612E4CFC816D90608F453C0FF +:102FE000F601E81BF90BCF01883C910508F450C0AD +:102FF000F12C7C2DD98AC88A89890E944916EDEA6C +:10300000F1E086E0DF011D928A95E9F70E948916BA +:10301000A0C0751314C0341312C0611110C0809188 +:10302000B201F8018583C8010E94F61286E0EDEA3C +:10303000F1E0DF011D928A95E9F7FE2C8AC04D87E9 +:103040005E878D859E856A8B0E9423166A898823F8 +:1030500009F4BECF662309F4BBCF2091B201822FC1 +:1030600082958F7090E002970CF48ECF8091AD0125 +:103070009091AE019A8389831B82DD82CC822E835C +:10308000CE0101967FCF809590958C0D9D1DACCF84 +:10309000F62E662309F49CCF75132EC034132CC072 +:1030A0002091B20120FD1FC0822F82958F70D9F030 +:1030B000D80115962C9315978F3049F08F5F982F74 +:1030C0009295907F822F8F70892B15968C93C801D3 +:1030D0000E94F61286E0F801ADEAB1E001900D928F +:1030E0008A95E1F793CF86E0F801ADEAB1E001906F +:1030F0000D928A95E1F72DC04D875E878D859E855F +:103100000E942316811140CF8091B201816080938B +:10311000B201C8010E94F6121CC0662309F458CF00 +:103120004D875E878D859E850E942316882309F42E +:103130004FCF2ACF811148CF0CC0243031050CF07D +:1031400047CF9F7009F440CFF8019581907F09F037 +:103150003BCF8F2D62960FB6F894DEBF0FBECDBF6A +:10316000DF91CF911F910F91FF90EF90DF90CF9063 +:1031700008951F93CF93DF93CDB7DEB72C970FB68B +:10318000F894DEBF0FBECDBF4F83588769877A871B +:103190008B879C87CE0107960E94F216882369F0E0 +:1031A0008F8198852A853B85232BF1F19F3F09F07C +:1031B00063C08F3F09F060C037C086E0FE013796DC +:1031C000DE01119601900D928A95E1F76F81788565 +:1031D000EA85FB85309741F17F3F11F46F3F21F184 +:1031E00020917C0130E0C9010196877099274091B8 +:1031F0007B0150E08417950709F447C069837A83FF +:10320000FD83EC8396E0929FD001939FB00D112433 +:10321000A358BE4FFE01319601900D929A95E1F7A9 +:1032200080937C010E94681616E080917B0190914A +:103230007C018917C1F1189FC001112483589E4F4A +:103240000E94F216882379F1E0917B011E9FF00124 +:103250001124E358FE4F4081518162817381848142 +:1032600095810E94581680917B0190E001968770AD +:10327000992780937B01D9CF4F81588569857A85BD +:103280008B859C850E945816CFCF0E941F161092E6 +:103290007C0110927B01EDEAF1E086E0DF011D92F6 +:1032A0008A95E9F7C1CF2C960FB6F894DEBF0FBE12 +:1032B000CDBFDF91CF911F910895EF92FF920F93B1 +:1032C0001F93CF93DF938C01892B09F46CC0F12CF1 +:1032D000EE24E394E8012196F8018491843740F4C8 +:1032E000843008F051C0813081F0823019F15BC028 +:1032F000853709F444C0A8F19CE7980F903708F08F +:1033000052C08F770E94991241C00E5F1F4FFE017D +:10331000C49180E28C0F883048F4C7708E2D01C0B4 +:10332000880FCA95EAF70E94EB1B14C08C2F0E94ED +:10333000D1112DC00E5F1F4FFE01C49180E28C0F92 +:10334000883058F4C7708E2D01C0880FCA95EAF7EF +:103350000E94F11B0E94121C1AC08C2F0E9499120D +:1033600016C00E5F1F4FFE01C491CC2381F08FE980 +:103370009FE00197F1F700C00000C150F6CF0E5F4B +:103380001F4FFE01F49003C00E94D1118E018F2DBA +:10339000882309F49FCFEFE9FFE03197F1F700C0F0 +:1033A00000008150F5CFDF91CF911F910F91FF90D9 +:1033B000EF90089508956093B7017093B8018093DA +:1033C000B9019093BA010C940D160F931F930091BD +:1033D000B7011091B8012091B9013091BA01DC0117 +:1033E000CB01802B912BA22BB32B8093B701909311 +:1033F000B801A093B901B093BA011F910F910C9439 +:103400000D160F931F930091B7011091B8012091F1 +:10341000B9013091BA01DC01CB0180239123A223B1 +:10342000B3238093B7019093B801A093B901B093EF +:10343000BA011F910F910C940D160F931F930091D9 +:10344000B7011091B8012091B9013091BA01DC01A6 +:10345000CB0180279127A227B3278093B7019093B0 +:10346000B801A093B901B093BA011F910F910C94C8 +:103470000D161092B3011092B4011092B501109282 +:10348000B6010C940D1641E050E060E070E004C01D +:10349000440F551F661F771F8A95D2F74093B301DB +:1034A0005093B4016093B5017093B6010C940D165E +:1034B00041E050E060E070E004C0440F551F661F1B +:1034C000771F8A95D2F78091B3019091B401A091B2 +:1034D000B501B091B601482B592B6A2B7B2B409339 +:1034E000B3015093B4016093B5017093B6010C948D +:1034F0000D1641E050E060E070E004C0440F551F3D +:10350000661F771F8A95D2F7409550956095709504 +:103510008091B3019091B401A091B501B091B60131 +:10352000482359236A237B234093B3015093B4016A +:103530006093B5017093B6010C940D1641E050E014 +:1035400060E070E004C0440F551F661F771F8A9526 +:10355000D2F78091B3019091B401A091B501B091DF +:10356000B601482759276A277B274093B301509318 +:10357000B4016093B5017093B6010C940D160F93CE +:103580001F930091B3011091B4012091B5013091C6 +:10359000B601DC01CB01802B912BA22BB32B8093A6 +:1035A000B3019093B401A093B501B093B6011F91FC +:1035B0000F910C940D160F931F930091B30110916E +:1035C000B4012091B5013091B601DC01CB0180231B +:1035D0009123A223B3238093B3019093B401A093CA +:1035E000B501B093B6011F910F910C940D160F9376 +:1035F0001F930091B3011091B4012091B501309156 +:10360000B601DC01CB0180279127A227B327809345 +:10361000B3019093B401A093B501B093B6011F918B +:103620000F910C940D160895CF92DF92EF92FF92B6 +:103630000F931F93CF93DF938C01C090B701D0906D +:10364000B801E090B901F090BA014091B3015091F6 +:10365000B4016091B5017091B601C42AD52AE62A59 +:10366000F72ACFE1D0E0D701C6010C2E04C0B695F1 +:10367000A795979587950A94D2F780FF07C0B80160 +:103680008C2F0E946E088130910531F4219758F7F4 +:10369000B80180E00E946E08DF91CF911F910F91D9 +:1036A000FF90EF90DF90CF90089590910C019923B7 +:1036B00021F090910D01911109C020910E013091DE +:1036C0000F01F90132969FEF40E01FC0982F9695A9 +:1036D000969596959F3050F5E0910E01F0910F016F :1036E000E90FF11D877021E030E0A90102C0440F0D :1036F000551F8A95E2F7CA019181892B818308952C -:1037000020910E0130910F01F90132969FEF40E0B8 -:103710005191851789F09F3F19F4511101C0942FE1 -:103720004F5F4E30A9F79F3F39F0F901E90FF11DC6 -:1037300097FDFA9582830895089590910C0199233D -:10374000F9F090910D019923D9F0982F96959695BF -:1037500096959F3028F5E0910E01F0910F01E90F49 -:10376000F11D877021E030E0A90102C0440F551F10 -:103770008A95E2F7CA018095918189238183089512 -:1037800020910E0130910F01F9013296205F3F4FD9 -:103790009081891301C010823196E217F307C1F7B7 -:1037A000089581E090E0E0910E01F0910F01E80FA3 -:1037B000F91F1082019680319105A9F70895909123 -:1037C000CD01892B8093CD01089580959091CD01F5 -:1037D00089238093CD0108951092CD010895909191 -:1037E000CC01892B8093CC01089580959091CC01D8 -:1037F00089238093CC0108951092CC010895809381 -:10380000BB0108951092BB01089580910E01909123 -:103810000F01FC0131969C01205F3F4F80E09191A8 -:1038200091118F5FE217F307D1F70895E0910E0130 -:10383000F0910F018091CD018083E0910E01F09114 -:103840000F0190818091CC01892B80838091BB01F5 -:10385000882361F0E0910E01F0910F019081892B96 -:1038600080830E94051C81111092BB0180910E0182 -:1038700090910F010C94D010CF92DF92EF92FF92B3 -:103880006C01EE24FF24C114D104E104F10421F001 -:10389000C701B60120E101C020E0C72ED82EE92ED5 -:1038A000FF24C114D104E104F10419F0285FC70119 -:1038B000B6016B017C0154E0F694E794D794C79469 -:1038C0005A95D1F7C114D104E104F10419F02C5F29 -:1038D000C701B6016B017C0142E0F694E794D794EE -:1038E000C7944A95D1F7C114D104E104F10419F049 -:1038F0002E5FC701B601DC01CB01B695A795979560 -:103900008795892B8A2B8B2B09F02F5F822FFF90B5 -:10391000EF90DF90CF9008958091E601843011F10F -:1039200020E488E190E00FB6F894A89580936000B9 -:103930000FBE2093600083B7817F846083BF83B70D -:10394000816083BF7894889583B78E7F83BF0FB6DD -:10395000F894A8958091600088618093600010922F -:1039600060000FBE089508950C94B31CCF930E947D -:10397000B41C0E949A060E94B31CC0E08C2F0E94C7 -:103980009007811104C0CF5FCE30C1F701C081E044 -:10399000CF9108950E942D160E94C4100C94BA096C -:1039A00082E084BD93E095BD9AEF97BD80936E0051 -:1039B00008952FB7F8948091CF019091D001A091F4 -:1039C000D101B091D2012FBF0895CF92DF92EF9233 -:1039D000FF920F931F932FB7F8944091CF0150910E -:1039E000D0016091D1017091D2012FBF6A017B019A -:1039F000EE24FF248C0120E030E0C016D106E20660 -:103A0000F30610F4415051099A01281B390BC901E2 -:103A10001F910F91FF90EF90DF90CF9008951F922C -:103A20000F920FB60F9211248F939F93AF93BF9372 -:103A30008091CF019091D001A091D101B091D2019C -:103A40000196A11DB11D8093CF019093D001A09349 -:103A5000D101B093D201BF91AF919F918F910F90FF -:103A60000FBE0F901F9018950E94BC0DF8942FEF79 -:103A700087EA91E6215080409040E1F700C00000C5 -:103A800087E090EBDC018093EF019093F001A0932D -:103A9000F101B093F2019CE088E10FB6F894A8958B -:103AA000809360000FBE90936000FFCFEF92FF9273 -:103AB0000F931F93CF93DF93D82FC0E08C2F0E94DA -:103AC000900700E010E0E82EF12CC701002E02C0A4 -:103AD000959587950A94E2F780FD06C00F5F1F4F0A -:103AE0000630110591F709C0602F7C2F80E00E94FD -:103AF00058088D13F3CF81E004C0CF5FCE30F1F6CC -:103B000080E0DF91CF911F910F91FF90EF9008958A -:103B1000CF93C82F8CE20E94561D882321F08C2F52 -:103B2000CF910C94561D80E0CF910895CF930E94C1 -:103B3000DD1E811102C00E94C31EC5E6C15049F0BE -:103B40000E949A068FE39CE90197F1F700C00000FC -:103B5000F5CF89E20E94881D811113C18AE20E947B -:103B6000881D81110E94C31E85E00E94881D81115D -:103B70000E94341D0E94E81E8093CE0187E00E94BF -:103B8000881D8823A9F18BE10E94881D882351F0AC -:103B90008091CE0181FB222720F991E0922790FBB2 -:103BA00081F90EC08EE00E94881D882361F080910B -:103BB000CE0182FB222720F991E0922790FB82F927 -:103BC0008093CE0115C080E10E94881D9091CE01A6 -:103BD000882341F093FB222720F981E0822780FB94 -:103BE00093F904C0892F809580FB90F99093CE01C2 -:103BF0008091CE010E94EC1E0E94FA1E8093E0018B -:103C000080EE0E94881D882341F08091E001982F6A -:103C1000909590FB80F98093E00189E30E94881DD4 -:103C2000882359F08091E00181FB222720F991E05F -:103C3000922790FB81F98093E00182EE0E94881D1B -:103C4000882359F08091E00182FB222720F991E03E -:103C5000922790FB82F98093E00186EE0E94881DF6 -:103C6000882359F08091E00183FB222720F991E01D -:103C7000922790FB83F98093E00183EE0E94881DD8 -:103C8000882359F08091E00184FB222720F991E0FC -:103C9000922790FB84F98093E00185E30E94881DC0 -:103CA000882359F08091E00185FB222720F991E0DB -:103CB000922790FB85F98093E00181E30E94881DA3 -:103CC000882359F08091E00186FB222720F991E0BA -:103CD000922790FB86F98093E00181E10E94881D84 -:103CE000882359F08091E00187FB222720F991E099 -:103CF000922790FB87F98093E0018091E0010E9478 -:103D0000FE1E8091E00187FB882780F980930D01DA -:103D100087E20E94881DC82F8EE10E94881D8111B4 -:103D2000C2608FE10E94881D8111C46080E20E9400 -:103D3000881D8111C86081E20E94881D8111C061C7 -:103D400082E20E94881D8111C06283E20E94881D68 -:103D50008111C06484E20E94881D882311F0C0682C -:103D600002C0CC2329F08C2F0E94F51E6C2F03C0BB -:103D70000E94F11E682F70E080E090E0CF910C94DB -:103D8000E419CF9108956DEE7EEF80E090E00E94FF -:103D9000372560E082E090E00E94292560E083E022 -:103DA00090E00E94292560E084E090E00E942925AF -:103DB00060E085E090E00C94292580E090E00E948E -:103DC000232521E08D3E9E4F09F020E0822F0895AB -:103DD00082E090E00C941B25682F82E090E00C9428 -:103DE000292583E090E00C941B25682F83E090E068 -:103DF0000C94292584E090E00C941B25682F84E026 -:103E000090E00C9429258091D50180FF0BC0609132 -:103E1000130185E0689FB00111247595679575952C -:103E200067952BC081FF09C06091130185E0689FF1 -:103E3000B00111247595679520C082FF07C060917D -:103E4000130185E0689FB001112417C09091D6013D -:103E50009923D1F060911201961788F720911301F0 -:103E600085E0289F90011124929FA001939F500DFF -:103E7000112470E0CA010E94ED246038710540F4FD -:103E80006115710519F406C065E070E0862F08958C -:103E90008FE7089581E008958091D50180FF08C0E3 -:103EA0006091110170E0759567957595679521C0D2 -:103EB00081FF06C06091110170E07595679519C08A -:103EC00082FF04C06091110170E010C09091D60192 -:103ED000992399F0609110019617A0F78091110134 -:103EE000899FC001112470E00E94ED2460387105A3 -:103EF00040F46115710519F406C061E070E0862F89 -:103F000008958FE7089581E00895803F21F40E948D -:103F1000031F819504C0813F29F40E94031F8093F1 -:103F2000D9010895823F21F40E94031F819504C0A6 -:103F3000833F29F40E94031F8093D8010895893F8D -:103F400019F40E944C1F05C08A3F31F40E944C1F97 -:103F500081958093DA0108958B3F21F40E944C1FD4 -:103F6000819504C08C3F29F40E944C1F8093DB0193 -:103F70000895843F21F48091D701816017C0853F67 -:103F800021F48091D701826011C0863F21F4809195 -:103F9000D70184600BC0873F21F48091D7018860EE -:103FA00005C0883F31F48091D70180618093D701AB -:103FB00008958D3F21F48091D50181600BC08E3F23 -:103FC00021F48091D501826005C08F3F29F4809152 -:103FD000D50184608093D5010895803F39F48091A4 -:103FE000D90187FF6CC01092D90169C0813F29F4C3 -:103FF0008091D9011816BCF362C09091D801823F1C -:1040000029F497FF5CC01092D80159C0833F19F47E -:104010001916CCF354C0893F41F48091DA01181687 -:104020000CF04DC01092DA014AC08A3F29F4809109 -:10403000DA0187FF44C0F6CF8B3F39F48091DB0172 -:1040400087FF3DC01092DB013AC08C3F29F480917C -:10405000DB011816BCF333C0843F21F48091D701F3 -:104060008E7F17C0853F21F48091D7018D7F11C0CD -:10407000863F21F48091D7018B7F0BC0873F21F4CD -:104080008091D701877F05C0883F31F48091D701A7 -:104090008F7E8093D70113C08D3F21F48091D5018D -:1040A0008E7F0BC08E3F21F48091D5018D7F05C09E -:1040B0008F3F29F48091D5018B7F8093D50180912A -:1040C000D80181110EC08091D90181110AC080915F -:1040D000DA01811106C08091DB01811102C01092CA -:1040E000D601089587ED91E00E94DB100E94D91C53 -:1040F0009093D4018093D30108951F93CF93DF93BE -:104100008091D3019091D4010E94E51CAC01909163 -:10411000D601992321F02091140130E006C02091AE -:1041200015018AE0289F900111244217530708F4D3 -:1041300085C08091D801C091D901D091DA01109148 -:10414000DB01811107C0C11175C0D11173C01111FC -:1041500071C074C09F3F19F09F5F9093D6011816ED -:1041600024F40E94031F8093D8018091D80187FF17 -:1041700005C00E94031F81958093D8011C1624F46A -:104180000E94031F8093D9018091D90187FF05C048 -:104190000E94031F81958093D9016091D801662305 -:1041A00031F1C091D901CC2311F1062E000C770B0F -:1041B000880B990B0E94F42323E333E343E35FE38B -:1041C0000E9458240E94BC236093D8016C2FCC0F0E -:1041D000770B880B990B0E94F42323E333E343E32B -:1041E0005FE30E9458240E94BC236093D9011D16EE -:1041F00024F40E944C1F8093DA018091DA0187FF3A -:1042000005C00E944C1F81958093DA01111624F499 -:104210000E944C1F8093DB018091DB0187FF05C06A -:104220000E944C1F81958093DB01DF91CF911F91FC -:104230000C9472209F3F09F08FCFA0CFDF91CF91D8 -:104240001F910895E7EDF1E085E0DF011D928A9569 -:10425000E9F71092D6011092D5010895833081F1CB -:1042600028F4813059F08230D1F00895853009F476 -:1042700049C0B8F1863009F456C0089580911501FF -:10428000262F30E0280F311D2F3F310524F4680F11 -:104290006093150108958FEF809315010895809123 -:1042A0001401262F30E0280F311D2F3F310524F453 -:1042B000680F6093140108958FEF8093140108959F -:1042C00080911301262F30E0280F311D2F3F31053B -:1042D00024F4680F6093130108958FEF8093130106 -:1042E000089580911201262F30E0280F311D2F3FB5 -:1042F000310524F4680F6093120108958FEF8093C5 -:104300001201089580911101262F30E0280F311DF0 -:104310002F3F310524F4680F6093110108958FEF4A -:1043200080931101089580911001262F30E0280F0D -:10433000311D2F3F310524F4680F6093100108955B -:104340008FEF809310010895833011F128F48130AC -:1043500049F0823091F00895853081F120F1863066 -:10436000C1F1089580911501681720F4861B809390 -:104370001501089510921501089580911401681790 -:1043800020F4861B8093140108951092140108955F -:1043900080911301681720F4861B80931301089500 -:1043A00010921301089580911201681720F4861B62 -:1043B00080931201089510921201089580911101C5 -:1043C000681720F4861B8093110108951092110143 -:1043D000089580911001681720F4861B80931001C6 -:1043E00008951092100108950F931F938D3109F4D1 -:1043F0006BC008F03FC08E3009F47DC0C0F4873038 -:1044000009F46EC068F4863009F0AFC08091CE0127 -:10441000817F8E7F8093CE0181E08093DD01A6C0F5 -:10442000883009F458C08B3009F49BC09EC0863197 -:1044300009F497C078F4803109F470C0813109F033 -:1044400094C00E942D1690910D0181E089278093E0 -:104450000D0187C0893109F484C08B3109F085C012 -:104460008091CE0181FB222720F991E0922790FBD9 -:1044700081F94AC0853309F45BC048F4873209F4F6 -:1044800057C008F45AC0893209F452C06EC0833450 -:1044900038F48A3308F067C0883309F462C065C015 -:1044A000833409F445C0883409F05FC00E942D169A -:1044B0000FEF13ED20E3015010402040E1F700C062 -:1044C00000000E94341D4DC00E9476230E94C4103B -:1044D0000E94BA0946C00E94E81E0E94FA1E41C00E -:1044E0009091CE01892F817090FF12C0917F9E7FA5 -:1044F0009093CE013BC08091CE0182FB222720F910 -:1045000091E0922790FB82F98093CE01992349F1A3 -:104510008091CE0181608093CE0123C08091CE0135 -:1045200083FB222720F991E0922790FB83F9ECCFBF -:1045300061E070E080E090E010C08D5141E050E01B -:1045400060E070E08A019B0104C0000F111F221F70 -:10455000331F8A95D2F7C901B8010E94E4190E945D -:104560002D1681E003C08953E9CF80E01F910F91A0 -:10457000089580E008950C94B922CF93C82F8091BC -:10458000DD01813079F018F08230E9F187C0E091E7 -:104590000E01F0910F018081813169F0823209F0C2 -:1045A0007FC009C0E0910E01F0910F01808181313F -:1045B00011F0823261F48C2F0E94BB22811104C061 -:1045C0008C2F0E94F4211DC081E090E01AC08C2F36 -:1045D0000E94B922811114C0C43179F048F4CB3063 -:1045E00079F0C03109F060C082E08093DD0108C03D -:1045F000C93219F0C83321F057C01092DD0154C000 -:1046000081E0817053C0C93289F118F5C43171F16C -:10461000A8F4C73009F046C08AE08093150194E100 -:104620009093140193E0909313018093120188E01A -:104630008093110188E28093100134C0CE51C630BE -:1046400088F5EC2FF0E0E65DFE4F80818093DC0181 -:1046500029C0CE34E9F020F4CB3421F56AE013C050 -:10466000C13579F0C235F1F461E00DC08091DC0113 -:10467000882319F01092DC0115C081E08093DD01E0 -:1046800015C061E006C08091DC010E942E210AC0A5 -:104690006AE08091DC010E94A42104C01092DD0137 -:1046A00080E004C081E002C080E0ABCFCF910895EC -:1046B000E1E8F0E080818860808380818160808390 -:1046C0008FB7F89493E09093890090ED90938800D1 -:1046D0008FBF0895EFE6F0E08081826080830895C7 -:1046E000EFE6F0E080818D7F80830895EFE6F0E0D3 -:1046F000908182E08927808308951F920F920FB6E0 -:104700000F9211242F933F934F935F936F937F9357 -:104710008F939F93AF93BF93EF93FF938091DE01AD -:104720009091DF0101969093DF018093DE0181116A -:1047300003C082E00E94BA09E091DF01E695E695A8 -:10474000F0E0E156F84FE4918091DE018E1303C052 -:1047500080E00E94BA09FF91EF91BF91AF919F91C4 -:104760008F917F916F915F914F913F912F910F901A -:104770000FBE0F901F9018950E94C3236894B1112B -:104780000C94522408950E94372488F09F5798F083 -:10479000B92F9927B751B0F0E1F0660F771F881F46 -:1047A000991F1AF0BA95C9F714C0B13091F00E9460 -:1047B0005124B1E008950C945124672F782F882755 -:1047C000B85F39F0B93FCCF3869577956795B39587 -:1047D000D9F73EF490958095709561957F4F8F4FF6 -:1047E0009F4F0895E89409C097FB3EF490958095FB -:1047F000709561957F4F8F4F9F4F9923A9F0F92FA7 -:1048000096E9BB279395F695879577956795B79524 -:10481000F111F8CFFAF4BB0F11F460FF1BC06F5F0A -:104820007F4F8F4F9F4F16C0882311F096E911C01C -:10483000772321F09EE8872F762F05C0662371F03D -:1048400096E8862F70E060E02AF09A95660F771F51 -:10485000881FDAF7880F9695879597F9089557FD81 -:104860009058440F551F59F05F3F71F04795880FDE -:1048700097FB991F61F09F3F79F087950895121675 -:1048800013061406551FF2CF4695F1DF08C0161621 -:1048900017061806991FF1CF8695710561050894D2 -:1048A0000895E894BB2766277727CB0197F90895E9 -:1048B0000E946B240C94DC240E94CE2438F00E94C9 -:1048C000D52420F0952311F00C94C5240C94CB240E -:1048D00011240C9452240E942F2470F3959FC1F34D -:1048E000950F50E0551F629FF001729FBB27F00D9E -:1048F000B11D639FAA27F00DB11DAA1F649F6627F3 -:10490000B00DA11D661F829F2227B00DA11D621F41 -:10491000739FB00DA11D621F839FA00D611D221FFB -:10492000749F3327A00D611D231F849F600D211DDF -:10493000822F762F6A2F11249F5750409AF0F1F062 -:1049400088234AF0EE0FFF1FBB1F661F771F881FCB -:1049500091505040A9F79E3F510580F00C94C5241A -:104960000C9452245F3FE4F3983ED4F386957795F8 -:104970006795B795F795E7959F5FC1F7FE2B880F71 -:10498000911D9695879597F9089597F99F6780E807 -:1049900070E060E008959FEF80EC089500240A9491 -:1049A0001616170618060906089500240A9412160A -:1049B0001306140605060895092E0394000C11F43D -:1049C000882352F0BB0F40F4BF2B11F460FF04C0EA -:1049D0006F5F7F4F8F4F9F4F089597FB072E16F401 -:1049E000009407D077FD09D00E94072507FC05D069 -:1049F0003EF4909581959F4F0895709561957F4FF6 -:104A00000895EE0FFF1F0590F491E02D0994AA1B65 -:104A1000BB1B51E107C0AA1FBB1FA617B70710F0A9 -:104A2000A61BB70B881F991F5A95A9F780959095DB -:104A3000BC01CD010895F999FECF92BD81BDF89AD0 -:104A4000992780B50895A8E1B0E042E050E00C94C9 -:104A50003E25262FF999FECF1FBA92BD81BD20BDFC -:104A60000FB6F894FA9AF99A0FBE019608950E942B -:104A70002925272F0C942A25DC01CB01FC01F9996B -:104A8000FECF06C0F2BDE1BDF89A319600B40D929A -:0C4A900041505040B8F70895F894FFCF53 -:104A9C002002BB094B0A260AF209BE090101BC011E -:104AAC0028080A03140A3F4D363960071307DD0640 -:104ABC00A4063706500669068206010203040506A1 -:044ACC0007080900CE +:103700009F3F39F04F5F4E3041F051915813F8CF41 +:103710000DC05111F7CF942FF5CF9F3F39F0F9012C +:10372000E90FF11D97FDFA95828308950895909110 +:103730000C01992321F090910D01911109C0209164 +:103740000E0130910F01F9013296205F3F4F1FC0EB +:10375000982F9695969596959F30F0F4E0910E01EE +:10376000F0910F01E90FF11D877021E030E0A90110 +:1037700002C0440F551F8A95E2F7CA0180959181D6 +:103780008923818308953196E217F30729F0908108 +:103790009813F9CF1082F7CF089581E090E0E0917F +:1037A0000E01F0910F01E80FF91F10820196803190 +:1037B0009105A9F708959091CD01892B8093CD01B2 +:1037C000089580959091CD0189238093CD0108952E +:1037D0001092CD0108959091CC01892B8093CC015A +:1037E000089580959091CC0189238093CC01089510 +:1037F0001092CC0108958093BB0108951092BB01F3 +:10380000089580910E0190910F01FC0131969C0169 +:10381000205F3F4F80E0919191118F5FE217F30796 +:10382000D1F70895E0910E01F0910F018091CD0143 +:103830008083E0910E01F0910F0190818091CC0185 +:10384000892B80838091BB01882361F0E0910E0178 +:10385000F0910F019081892B80830E94011C8111BE +:103860001092BB0180910E0190910F010C94B51044 +:10387000CF92DF92EF92FF926C01EE24FF24C114ED +:10388000D104E104F10421F0C701B60120E101C037 +:1038900020E0C72ED82EE92EFF24C114D104E10464 +:1038A000F10419F0285FC701B6016B017C0154E0F7 +:1038B000F694E794D794C7945A95D1F7C114D104DC +:1038C000E104F10419F02C5FC701B6016B017C0122 +:1038D00042E0F694E794D794C7944A95D1F7C1147F +:1038E000D104E104F10419F02E5FC701B601DC0137 +:1038F000CB01B695A79597958795892B8A2B8B2B0E +:1039000009F02F5F822FFF90EF90DF90CF90089506 +:103910008091E701843009F11092CF0120E488E121 +:1039200090E00FB6F894A895809360000FBE2093A6 +:10393000600083B7817F846083BF83B7816083BF6A +:103940007894889583B78E7F83BF88E10FB6F8940B +:1039500080936000109260000FBE0895089508954E +:10396000CF930E94AE1C0E9497060E94AF1CC0E03D +:103970008C2F0E948507811104C0CF5FCE30C1F724 +:1039800001C081E0CF9108950E941F160E94A910E6 +:103990000C94A20982E084BD93E095BD9AEF97BD97 +:1039A00080936E0008952FB7F8948091D001909184 +:1039B000D101A091D201B091D3012FBF0895CF9230 +:1039C000DF92EF92FF920F931F932FB7F8944091DD +:1039D000D0015091D1016091D2017091D3012FBFDC +:1039E0006A017B01EE24FF248C0120E030E0C01648 +:1039F000D106E206F30610F4415051099A01281B42 +:103A0000390BC9011F910F91FF90EF90DF90CF907C +:103A100008951F920F920FB60F9211248F939F93C8 +:103A2000AF93BF938091D0019091D101A091D20129 +:103A3000B091D3010196A11DB11D8093D001909347 +:103A4000D101A093D201B093D301BF91AF919F91C7 +:103A50008F910F900FBE0F901F9018950E94A60D8A +:103A6000F8942FEF87EA91E6215080409040E1F7EB +:103A700000C0000087E090EBDC018093F0019093A0 +:103A8000F101A093F201B093F3019CE088E10FB63D +:103A9000F894A895809360000FBE90936000FFCFCC +:103AA000EF92FF920F931F93CF93DF93D82FC0E035 +:103AB0008C2F0E94850700E010E0E82EF12CC70152 +:103AC000002E02C0959587950A94E2F780FD06C006 +:103AD0000F5F1F4F0630110591F709C0602F7C2F33 +:103AE00080E00E944C08D813F3CF81E004C0CF5F80 +:103AF000CE30F1F680E0DF91CF911F910F91FF90D2 +:103B0000EF900895CF93C82F8CE20E94501D882318 +:103B100021F08C2FCF910C94501D80E0CF9108950F +:103B2000CF930E94D71E811102C00E94BD1EC5E620 +:103B3000C15049F00E9497068FE39CE90197F1F785 +:103B400000C00000F5CF89E20E94821D811113C1DF +:103B50008AE20E94821D81110E94BD1E85E00E94A2 +:103B6000821D81110E942E1D0E94E21E8093CE01B3 +:103B700087E00E94821D8823A9F18BE10E94821DAB +:103B8000882351F08091CE0181FB222720F991E01A +:103B9000922790FB81F90EC08EE00E94821D88233F +:103BA00061F08091CE0182FB222720F991E09227DB +:103BB00090FB82F98093CE0115C080E10E94821DA6 +:103BC0009091CE01882341F093FB222720F981E0D8 +:103BD000822780FB93F904C0892F809580FB90F9A0 +:103BE0009093CE018091CE010E94E61E0E94F41EA9 +:103BF0008093E10180EE0E94821D882341F0809134 +:103C0000E101982F909590FB80F98093E10189E381 +:103C10000E94821D882359F08091E10181FB2227B7 +:103C200020F991E0922790FB81F98093E10182EEE7 +:103C30000E94821D882359F08091E10182FB222796 +:103C400020F991E0922790FB82F98093E10186EEC2 +:103C50000E94821D882359F08091E10183FB222775 +:103C600020F991E0922790FB83F98093E10183EEA4 +:103C70000E94821D882359F08091E10184FB222754 +:103C800020F991E0922790FB84F98093E10185E38C +:103C90000E94821D882359F08091E10185FB222733 +:103CA00020F991E0922790FB85F98093E10181E36F +:103CB0000E94821D882359F08091E10186FB222712 +:103CC00020F991E0922790FB86F98093E10181E150 +:103CD0000E94821D882359F08091E10187FB2227F1 +:103CE00020F991E0922790FB87F98093E101809180 +:103CF000E1010E94F81E8091E10187FB882780F98D +:103D000080930D0187E20E94821DC82F8EE10E94E0 +:103D1000821D8111C2608FE10E94821D8111C460E9 +:103D200080E20E94821D8111C86081E20E94821D92 +:103D30008111C06182E20E94821D8111C06283E212 +:103D40000E94821D8111C06484E20E94821D88232A +:103D500011F0C06802C0CC2329F08C2F0E94EF1E06 +:103D60006C2F03C00E94EB1E682F70E080E090E093 +:103D7000CF910C94DB19CF9108956DEE7EEF80E02A +:103D800090E00E94232560E082E090E00E941525EB +:103D900060E083E090E00E94152560E084E090E020 +:103DA0000E94152560E085E090E00C94152580E0E8 +:103DB00090E00E940F2521E08D3E9E4F09F020E00B +:103DC000822F089582E090E00C940725682F82E00E +:103DD00090E00C94152583E090E00C940725682F63 +:103DE00083E090E00C94152584E090E00C94072586 +:103DF000682F84E090E00C9415258091D60180FF17 +:103E00000BC06091130185E0689FB0011124759586 +:103E10006795759567952BC081FF09C06091130167 +:103E200085E0689FB00111247595679520C082FFD9 +:103E300007C06091130185E0689FB001112417C08D +:103E40009091D7019923D1F060911201961788F7CC +:103E50002091130185E0289F90011124929FA001D9 +:103E6000939F500D112470E0CA010E94D92460383C +:103E7000710540F46115710539F002C065E070E02C +:103E8000862F08958FE7089581E008958091D601E7 +:103E900080FF08C06091110170E075956795759578 +:103EA000679521C081FF06C06091110170E0759592 +:103EB000679519C082FF04C06091110170E010C0C5 +:103EC0009091D7019923C1F0609110019617A0F746 +:103ED00080911101899FC001112470E00E94D924B2 +:103EE0006038710528F46115710521F0862F089559 +:103EF0008FE7089581E0089561E070E0F4CF803F9E +:103F000021F40E94FD1E819504C0813F29F40E9486 +:103F1000FD1E8093DA010895823F21F40E94FD1E68 +:103F2000819504C0833F29F40E94FD1E8093D9012E +:103F30000895893F19F40E94461F05C08A3F31F455 +:103F40000E94461F81958093DB0108958B3F21F4E9 +:103F50000E94461F819504C08C3F29F40E94461F91 +:103F60008093DC010895843F21F48091D801816021 +:103F700017C0853F21F48091D801826011C0863F2F +:103F800021F48091D80184600BC0873F21F4809197 +:103F9000D801886005C0883F31F48091D8018061E4 +:103FA0008093D80108958D3F21F48091D6018160DE +:103FB0000BC08E3F21F48091D601826005C08F3FF7 +:103FC00029F48091D60184608093D6010895803FC2 +:103FD00039F48091DA0187FF6CC01092DA0169C070 +:103FE000813F29F48091DA011816BCF362C09091E8 +:103FF000D901823F29F497FF5CC01092D90159C0C2 +:10400000833F19F41916CCF354C0893F41F48091D1 +:10401000DB0118160CF04DC01092DB014AC08A3F3C +:1040200029F48091DB0187FF44C0F6CF8B3F39F440 +:104030008091DC0187FF3DC01092DC013AC08C3FCB +:1040400029F48091DC011816BCF333C0843F21F4BD +:104050008091D8018E7F17C0853F21F48091D801CF +:104060008D7F11C0863F21F48091D8018B7F0BC0DA +:10407000873F21F48091D801877F05C0883F31F4C4 +:104080008091D8018F7E8093D80113C08D3F21F499 +:104090008091D6018E7F0BC08E3F21F48091D60196 +:1040A0008D7F05C08F3F29F48091D6018B7F80934F +:1040B000D6018091D90181110EC08091DA01811160 +:1040C0000AC08091DB01811106C08091DC01811161 +:1040D00002C01092D701089588ED91E00E94C010AF +:1040E0000E94D31C9093D5018093D40108951F930F +:1040F000CF93DF938091D4019091D5010E94DF1C72 +:10410000AC019091D701992321F02091140130E066 +:1041100006C0209115018AE0289F900111244217C2 +:10412000530708F486C08091D901C091DA01D0917B +:10413000DB011091DC01811107C0C11176C0D111E2 +:1041400074C0111172C075C09F3F19F09F5F9093AA +:10415000D701181624F40E94FD1E8093D901809186 +:10416000D90187FF05C00E94FD1E81958093D9016A +:104170001C1624F40E94FD1E8093DA018091DA015E +:1041800087FF05C00E94FD1E81958093DA01609132 +:10419000D901662339F1C091DA01CC2319F17727CF +:1041A00067FD7095872F972F0E94EA2323E333E35F +:1041B00043E35FE30E944E240E94B7236093D9013A +:1041C0006C2F772767FD7095872F972F0E94EA2322 +:1041D00023E333E343E35FE30E944E240E94B723CB +:1041E0006093DA011D1624F40E94461F8093DB01C0 +:1041F0008091DB0187FF05C00E94461F8195809357 +:10420000DB01111624F40E94461F8093DC0180918B +:10421000DC0187FF05C00E94461F81958093DC0169 +:10422000DF91CF911F910C946C209F3F09F08ECFAE +:1042300096CFDF91CF911F910895E8EDF1E085E0F1 +:10424000DF011D928A95E9F71092D7011092D601ED +:104250000895833081F128F4813059F08230D1F013 +:104260000895853009F449C0B8F1863009F456C084 +:10427000089580911501262F30E0280F311D2F3F22 +:10428000310524F4680F6093150108958FEF809332 +:104290001501089580911401262F30E0280F311D5B +:1042A0002F3F310524F4680F6093140108958FEFB8 +:1042B00080931401089580911301262F30E0280F78 +:1042C000311D2F3F310524F4680F609313010895C9 +:1042D0008FEF80931301089580911201262F30E013 +:1042E000280F311D2F3F310524F4680F6093120110 +:1042F00008958FEF80931201089580911101262F68 +:1043000030E0280F311D2F3F310524F4680F6093F2 +:10431000110108958FEF809311010895809110018C +:10432000262F30E0280F311D2F3F310524F4680F70 +:104330006093100108958FEF8093100108958330EA +:1043400011F128F4813049F0823091F008958530E0 +:1043500081F120F18630C1F108958091150168172F +:1043600020F4861B8093150108951092150108957D +:1043700080911401681720F4861B8093140108951E +:1043800010921401089580911301681720F4861B80 +:1043900080931301089510921301089580911201E2 +:1043A000681720F4861B8093120108951092120161 +:1043B000089580911101681720F4861B80931101E4 +:1043C000089510921101089580911001681720F44A +:1043D000861B8093100108951092100108950F9389 +:1043E0001F938D3109F46BC008F03FC08E3009F483 +:1043F0007DC0C0F4873009F46EC068F4863009F0DF +:10440000AFC08091CE01817F8E7F8093CE0181E00D +:104410008093DE01A6C0883009F458C08B3009F4BF +:104420009BC09EC0863109F497C078F4803109F4AE +:1044300070C0813109F094C00E941F1690910D0147 +:1044400081E0892780930D0187C0893109F484C0F8 +:104450008B3109F085C08091CE0181FB222720F9A4 +:1044600091E0922790FB81F94AC0853309F45BC043 +:1044700048F4873209F457C008F45AC0893209F465 +:1044800052C06EC0833438F48A3308F067C0883372 +:1044900009F462C065C0833409F445C0883409F06A +:1044A0005FC00E941F160FEF13ED20E30150104074 +:1044B0002040E1F700C000000E942E1D4DC00E9468 +:1044C00071230E94A9100E94A20946C00E94E21E08 +:1044D0000E94F41E41C09091CE01892F817090FFFF +:1044E00012C0917F9E7F9093CE013BC08091CE0100 +:1044F00082FB222720F991E0922790FB82F980939A +:10450000CE01992349F18091CE0181608093CE0143 +:1045100023C08091CE0183FB222720F991E09227CE +:1045200090FB83F9ECCF61E070E080E090E010C098 +:104530008D5141E050E060E070E08A019B0104C0D1 +:10454000000F111F221F331F8A95D2F7C901B8012E +:104550000E94DB190E941F1681E003C08953E9CF36 +:1045600080E01F910F91089580E0089580E0089504 +:10457000CF93C82F8091DE01813079F018F082301E +:10458000E9F187C0E0910E01F0910F018081813146 +:1045900069F0823209F07FC009C0E0910E01F0910C +:1045A0000F018081813111F0823261F48C2F0E94E1 +:1045B000B422811104C08C2F0E94EF211DC081E024 +:1045C00090E01AC08C2F0E94B622811114C0C43111 +:1045D00079F048F4CB3079F0C03109F060C082E066 +:1045E0008093DE0108C0C93219F0C83321F057C0EA +:1045F0001092DE0154C081E0817053C0C93289F14C +:1046000018F5C43171F1A8F4C73009F046C08AE04A +:104610008093150194E19093140193E0909313011A +:104620008093120188E08093110188E28093100149 +:1046300034C0CE51C63088F5EC2FF0E0E65DFE4F79 +:1046400080818093DD0129C0CE34E9F020F4CB34A1 +:1046500021F56AE013C0C13579F0C235F1F461E0AB +:104660000DC08091DD01882319F01092DD0115C085 +:1046700081E08093DE0115C061E006C08091DD011C +:104680000E9429210AC06AE08091DD010E949F21D9 +:1046900004C01092DE0180E004C081E002C080E02E +:1046A000ABCFCF910895E1E8F0E08081886080830E +:1046B0008081816080838FB7F89493E09093890024 +:1046C00090ED909388008FBF0895EFE6F0E0808131 +:1046D000826080830895EFE6F0E080818D7F8083A3 +:1046E0000895EFE6F0E0908182E0892780830895C5 +:1046F0001F920F920FB60F9211242F933F934F9357 +:104700005F936F937F938F939F93AF93BF93EF9339 +:10471000FF938091DF019091E00101969093E00179 +:104720008093DF01811103C082E00E94A209E09121 +:10473000E001E695E695F0E0E156F84FE4918091CE +:10474000DF018E1303C080E00E94A209FF91EF9168 +:10475000BF91AF919F918F917F916F915F914F9199 +:104760003F912F910F900FBE0F901F90189504D07E +:104770006894B1118DC0089570D088F09F5790F063 +:10478000B92F9927B751A0F0D1F0660F771F881F76 +:10479000991F1AF0BA95C9F712C0B13081F077D0DD +:1047A000B1E0089574C0672F782F8827B85F39F07B +:1047B000B93FCCF3869577956795B395D9F73EF4D5 +:1047C00090958095709561957F4F8F4F9F4F08957D +:1047D000E89409C097FB3EF490958095709561959B +:1047E0007F4F8F4F9F4F9923A9F0F92F96E9BB2751 +:1047F0009395F695879577956795B795F111F8CFCD +:10480000FAF4BB0F11F460FF1BC06F5F7F4F8F4F37 +:104810009F4F16C0882311F096E911C0772321F02D +:104820009EE8872F762F05C0662371F096E8862FC5 +:1048300070E060E02AF09A95660F771F881FDAF71C +:10484000880F9695879597F9089557FD9058440FCE +:10485000551F59F05F3F71F04795880F97FB991FDF +:1048600061F09F3F79F0879508951216130614069C +:10487000551FF2CF4695F1DF08C016161706180629 +:10488000991FF1CF86957105610508940895E89404 +:10489000BB2766277727CB0197F908950BD078C0FF +:1048A00069D028F06ED018F0952309F05AC05FC087 +:1048B0001124EECFCADFA0F3959FD1F3950F50E0FE +:1048C000551F629FF001729FBB27F00DB11D639FC2 +:1048D000AA27F00DB11DAA1F649F6627B00DA11D68 +:1048E000661F829F2227B00DA11D621F739FB00D0E +:1048F000A11D621F839FA00D611D221F749F33277E +:10490000A00D611D231F849F600D211D822F762F16 +:104910006A2F11249F5750408AF0E1F088234AF013 +:10492000EE0FFF1FBB1F661F771F881F915050405F +:10493000A9F79E3F510570F014C0AACF5F3FECF37A +:10494000983EDCF3869577956795B795F795E7954B +:104950009F5FC1F7FE2B880F911D9695879597F95C +:10496000089597F99F6780E870E060E008959FEFF1 +:1049700080EC089500240A941616170618060906F6 +:10498000089500240A9412161306140605060895C5 +:10499000092E0394000C11F4882352F0BB0F40F44D +:1049A000BF2B11F460FF04C06F5F7F4F8F4F9F4F8D +:1049B000089597FB072E16F4009407D077FD09D0D1 +:1049C0000E94F32407FC05D03EF4909581959F4FFB +:1049D0000895709561957F4F0895EE0FFF1F059024 +:1049E000F491E02D0994AA1BBB1B51E107C0AA1F3B +:1049F000BB1FA617B70710F0A61BB70B881F991F80 +:104A00005A95A9F780959095BC01CD010895F99923 +:104A1000FECF92BD81BDF89A992780B50895A8E18F +:104A2000B0E042E050E00C942A25262FF999FECF01 +:104A30001FBA92BD81BD20BD0FB6F894FA9AF99ABB +:104A40000FBE019608950E941525272F0C94162558 +:104A5000DC01CB01FC01F999FECF06C0F2BDE1BD3E +:104A6000F89A319600B40D9241505040B8F708952D +:044A7000F894FFCFE8 +:104A74002002A409320A0F0ADB09A7090101BC01BB +:104A840028080A03140A3F4D363960071307DD0668 +:104A9400A4063706500669068206010203040506C9 +:044AA40007080900F6 :00000001FF From 20a3229faf12d964403becf210bf7ba280ca2e49 Mon Sep 17 00:00:00 2001 From: Manuel Barkhau Date: Sun, 27 Mar 2016 02:22:41 +0000 Subject: [PATCH 08/45] Add manuneo layout --- .../keymaps/german-manuneo/compile_keymap.py | 418 ++++++ .../keymaps/german-manuneo/keymap.c | 1278 +++++++++++++++++ .../keymaps/german-manuneo/keymap.md | 222 +++ 3 files changed, 1918 insertions(+) create mode 100644 keyboard/ergodox_ez/keymaps/german-manuneo/compile_keymap.py create mode 100644 keyboard/ergodox_ez/keymaps/german-manuneo/keymap.c create mode 100644 keyboard/ergodox_ez/keymaps/german-manuneo/keymap.md diff --git a/keyboard/ergodox_ez/keymaps/german-manuneo/compile_keymap.py b/keyboard/ergodox_ez/keymaps/german-manuneo/compile_keymap.py new file mode 100644 index 0000000000..3bbb9340b2 --- /dev/null +++ b/keyboard/ergodox_ez/keymaps/german-manuneo/compile_keymap.py @@ -0,0 +1,418 @@ +# encoding: utf-8 +from __future__ import division +from __future__ import print_function +from __future__ import absolute_import +from __future__ import unicode_literals + +import os +import io +import re +import sys +import json +import unicodedata +import collections + +PY2 = sys.version_info.major == 2 + +if PY2: + chr = unichr + + +ONELINE_COMMENT_RE = re.compile(r"^\s*//.*$", re.MULTILINE) +INLINE_COMMENT_RE = re.compile( + r"([\,\"\[\]\{\}\d])\s+//\s[^\"\]\}\{\[]*$", re.MULTILINE +) +TRAILING_COMMA_RE = re.compile( + r",$\s*([\]\}])", re.MULTILINE +) + +def loads(raw_data): + if isinstance(raw_data, bytes): + raw_data = raw_data.decode('utf-8') + raw_data = ONELINE_COMMENT_RE.sub(r"", raw_data) + raw_data = INLINE_COMMENT_RE.sub(r"\1", raw_data) + raw_data = TRAILING_COMMA_RE.sub(r"\1", raw_data) + return json.loads(raw_data) + +with io.open("keymap.md", encoding="utf-8") as fh: + lines = fh.readlines() + +SECTIONS = [ + 'layout_config', + 'layers', +] + +config = { + "includes_basedir": "quantum/", + "keymaps_includes": [ + "keymap_common.h", + ], + 'filler': "-+.':x", + 'separator': "|", + 'default_key_prefix': ["KC_"], + 'unicode_macros': [], + 'macro_ids': ['UMS'], + 'layers': collections.OrderedDict(), + 'layer_lines': collections.OrderedDict(), +} + +section_start_index = -1 +current_section = None +current_layer_name = None +current_layer_lines = [] +config_data = [] + +def end_section(): + global section_start_index + global current_layer_lines + section_start_index = -1 + if current_section == 'layout_config': + config.update(loads("".join( + config_data + ))) + elif current_section == 'layers': + config['layer_lines'][current_layer_name] = current_layer_lines + current_layer_lines = [] + + +for i, line in enumerate(lines): + if line.startswith("# "): + section = line[2:].strip().replace(" ", "_").lower() + if section in SECTIONS: + current_section = section + elif line.startswith("## "): + sub_section = line[3:] + if current_section == 'layers': + current_layer_name = sub_section.strip() + # TODO: parse descriptio + config['layers'][current_layer_name] = "" + elif line.startswith(" "): + if section_start_index < 0: + section_start_index = i + if current_section == 'layout_config': + config_data.append(line) + elif current_section == 'layers': + if not line.strip(): + continue + current_layer_lines.append(line) + elif section_start_index > 0: + end_section() + +end_section() + +KEYDEF_RE = re.compile(r"#define ((?:{})(?:\w+))".format( + "|".join(config['key_prefixes']) +)) +IF0_RE = re.compile(r"^#if 0$.*?#endif", re.MULTILINE | re.DOTALL) +COMMENT_RE = re.compile(r"/\*.*?\*/", re.MULTILINE | re.DOTALL) +ENUM_RE = re.compile(r"(enum\s\w+\s\{.*?\};)", re.MULTILINE | re.DOTALL) +ENUM_KEY_RE = re.compile(r"({}\w+)".format( + "|".join(config['key_prefixes']) +)) + +def parse_keydefs(path): + with io.open(path, encoding="utf-8") as fh: + data = fh.read() + data, _ = COMMENT_RE.subn("", data) + data, _ = IF0_RE.subn("", data) + + for match in KEYDEF_RE.finditer(data): + yield match.groups()[0] + + for enum_match in ENUM_RE.finditer(data): + enum = enum_match.groups()[0] + for key_match in ENUM_KEY_RE.finditer(enum): + yield key_match.groups()[0] + +valid_keycodes = set() +basepath = os.path.abspath(os.path.join( + os.path.dirname(__file__), "..", "..", "..", ".." +)) + +valid_keycodes.update(parse_keydefs(os.path.join( + basepath, "tmk_core", "common", "keycode.h" +))) + +for include_path in config['keymaps_includes']: + path = os.path.join(basepath, config['includes_dir'], include_path) + path = path.replace("/", os.sep) + if os.path.exists(path): + valid_keycodes.update(parse_keydefs(path)) + +LAYER_CHANGE_RE = re.compile(r"(DF|TG|MO)\(\d+\)") +MACRO_RE = re.compile(r"M\(\w+\)") +UNICODE_RE = re.compile(r"U[0-9A-F]{4}") +NON_CODE = re.compile(r"^[^A-Z0-9_]$") + + +def UNICODE_MACRO(config, c): + # TODO: don't use macro for codepoints below 0x2000 + macro_id = "UC_" + ( + unicodedata.name(c) + .replace(" ", "_") + .replace("-", "_") + .replace("SUPERSCRIPT_", "SUP_") + .replace("SUBSCRIPT_", "SUB_") + .replace("GREEK_SMALL_LETTER", "GR_LC") + .replace("GREEK_CAPITAL_LETTER", "GR_UC") + .replace("VULGAR_FRACTION_", "FR_") + ) + if macro_id not in config['macro_ids']: + config['macro_ids'].append(macro_id) + code = "{:04X}".format(ord(c)) + if (macro_id, code) not in config['unicode_macros']: + config['unicode_macros'].append((macro_id, code)) + return "M({})".format(macro_id) + + +def MACRO(config, code): + macro_id = code[2:-1] + if macro_id not in config['macro_ids']: + config['macro_ids'].append(macro_id) + return code + +# TODO: presumably we can have a macro or function which takes +# the hex code and produces much smaller code. + +WIN_UNICODE_MACRO_TEMPLATE = """ +case {0}: + return MACRODOWN( + D(LALT), T(KP_PLUS), {1}, U(LALT), END + ); +""" + +LINUX_UNICODE_MACRO_TEMPLATE = """ +case {0}: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), {1}, T(KP_ENTER), END + ); +""" + +def macro_cases(config, mode): + if mode == 'win': + template = WIN_UNICODE_MACRO_TEMPLATE + elif mode == 'linux': + template = LINUX_UNICODE_MACRO_TEMPLATE + else: + raise ValueError("Invalid mode: ", mode) + template = template.strip() + + for macro_id, unimacro_chars in config['unicode_macros']: + unimacro_keys = ", ".join( + "T({})".format( + "KP_" + char if char.isdigit() else char + ) for char in unimacro_chars + ) + yield template.format(macro_id, unimacro_keys) + + +MACROCODE = """ +#define UC_MODE_WIN 0 +#define UC_MODE_LINUX 1 + +static uint16_t unicode_mode = UC_MODE_WIN; + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) {{ + if (!record->event.pressed) {{ + return MACRO_NONE; + }} + // MACRODOWN only works in this function + switch(id) {{ + case UMS: + unicode_mode = (unicode_mode + 1) % 2; + break; + {macro_cases} + default: + break; + }} + if (unicode_mode == UC_MODE_WIN) {{ + switch(id) {{ + {win_macro_cases} + default: + break; + }} + }} else if (unicode_mode == UC_MODE_LINUX) {{ + switch(id) {{ + {linux_macro_cases} + default: + break; + }} + }} + return MACRO_NONE; +}}; +""" + + +def iter_keycodes(layer_lines, config): + filler_re = re.compile("[" + + config['filler'] + " " + + "]") + + all_codes = [] + for line in layer_lines: + line, _ = filler_re.subn("", line.strip()) + if not line: + continue + codes = line.split(config['separator']) + all_codes.extend(codes[1:-1]) + + key_groups = {} + for group_index, key_indexes in enumerate(config['keymap_indexes']): + for key_index in key_indexes: + key_groups[key_index] = group_index + + keymap_indexes = sum(config['keymap_indexes'], []) + assert len(all_codes) == len(keymap_indexes) + code_index_pairs = zip(all_codes, keymap_indexes) + prev_index = None + for i, (code, key_index) in enumerate(code_index_pairs): + code = code.strip() + layer_match = LAYER_CHANGE_RE.match(code) + unicode_match = UNICODE_RE.match(code) + noncode_match = NON_CODE.match(code) + macro_match = MACRO_RE.match(code) + + ws = "\n" if key_groups[key_index] != prev_index else "" + prev_index = key_groups[key_index] + + try: + if not code: + code = 'KC_TRNS' + elif layer_match: + pass + elif macro_match: + code = MACRO(config, code) + elif unicode_match: + hex_code = code[1:] + code = UNICODE_MACRO(config, chr(int(hex_code, 16))) + elif noncode_match: + code = UNICODE_MACRO(config, code) + elif "_" in code: + assert code in valid_keycodes, "unknown code '{}'".format(code) + else: + for prefix in config['key_prefixes']: + if prefix + code in valid_keycodes: + code = prefix + code + break + assert code in valid_keycodes, "unknown code '{}'".format(code) + yield code, key_index, ws + except AssertionError: + print("Error processing code", repr(code).encode("utf-8")) + raise + +USERCODE = """ +// Runs just one time when the keyboard initializes. +void * matrix_init_user(void) { + +}; + +// Runs constantly in the background, in a loop. +void * matrix_scan_user(void) { + uint8_t layer = biton32(layer_state); + + ergodox_board_led_off(); + ergodox_right_led_1_off(); + ergodox_right_led_2_off(); + ergodox_right_led_3_off(); + switch (layer) { + case L1: + ergodox_right_led_1_on(); + break; + case L2: + ergodox_right_led_2_on(); + break; + case L3: + ergodox_right_led_3_on(); + break; + case L4: + ergodox_right_led_1_on(); + ergodox_right_led_2_on(); + break; + case L5: + ergodox_right_led_1_on(); + ergodox_right_led_3_on(); + break; + // case L6: + // ergodox_right_led_2_on(); + // ergodox_right_led_3_on(); + // break; + // case L7: + // ergodox_right_led_1_on(); + // ergodox_right_led_2_on(); + // ergodox_right_led_3_on(); + // break; + default: + ergodox_board_led_off(); + break; + } +}; +""" + +def parse_keymaps(config): + keymaps = {} + layer_line_items = config['layer_lines'].items() + for i, (layer_name, layer_lines) in enumerate(layer_line_items): + print("parseing layer", layer_name) + keymap = {} + for code, key_index, ws in iter_keycodes(layer_lines, config): + keymap[key_index] = (code, ws) + keymaps[layer_name] = [v for k, v in sorted(keymap.items())] + return keymaps + + +def iter_keymap_lines(config, keymaps): + for include_path in config['keymaps_includes']: + yield '#include "{}"\n'.format(include_path) + + yield "\n" + + layer_items = config['layers'].items() + for i, (layer_name, description) in enumerate(layer_items): + yield '#define L{0:<3} {0:<5} // {1}\n'.format(i, layer_name) + + for i, macro_id in enumerate(config['macro_ids']): + yield "#define {} {}\n".format(macro_id, i) + + yield "\n" + + yield "const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {\n" + + layer_line_items = config['layer_lines'].items() + last_index = config['keymap_indexes'][-1] + for i, (layer_name, layer_lines) in enumerate(layer_line_items): + keymap = keymaps[layer_name] + yield "/*\n" + for line in layer_lines: + yield " *{}".format(line) + yield "*/\n" + + yield "[L{0}] = KEYMAP(\n".format(i) + + for key_index, (code, ws) in enumerate(keymap): + yield "\t{}".format(code) + if key_index < len(keymap) - 1: + yield "," + yield ws + yield "),\n" + + yield "};\n\n" + + yield "const uint16_t PROGMEM fn_actions[] = {\n" + yield "};\n" + + yield MACROCODE.format( + macro_cases="", + win_macro_cases="\n".join(macro_cases(config, mode='win')), + linux_macro_cases="\n".join(macro_cases(config, mode='linux')), + ) + + yield USERCODE + + +with io.open("keymap.c", mode="w", encoding="utf-8") as fh: + for data in iter_keymap_lines(config, parse_keymaps(config)): + fh.write(data) + + +# print("\n".join(sorted(valid_keycodes))) +# print(json.dumps(config, indent=4)) diff --git a/keyboard/ergodox_ez/keymaps/german-manuneo/keymap.c b/keyboard/ergodox_ez/keymaps/german-manuneo/keymap.c new file mode 100644 index 0000000000..400ad6fcf8 --- /dev/null +++ b/keyboard/ergodox_ez/keymaps/german-manuneo/keymap.c @@ -0,0 +1,1278 @@ +#include "ergodox_ez.h" +#include "action_layer.h" +#include "keymap_common.h" +#include "keymap_extras/keymap_german.h" + +#define L0 0 // Layer 0 +#define L1 1 // Layer 1 +#define L2 2 // Layer 2 +#define L3 3 // Layer 3 +#define L4 4 // Layer 4 +#define L5 5 // Layer 5 +#define L6 6 // Layer 6 +#define L7 7 // Layer 7 +#define L8 8 // Layer 8 +#define UMS 0 +#define UC_UPWARDS_ARROW 1 +#define UC_LEFTWARDS_ARROW 2 +#define UC_DOWNWARDS_ARROW 3 +#define UC_RIGHTWARDS_ARROW 4 +#define UC_SUP_ONE 5 +#define UC_SUP_TWO 6 +#define UC_SUP_THREE 7 +#define UC_SUP_FOUR 8 +#define UC_SUP_FIVE 9 +#define UC_FOR_ALL 10 +#define UC_SUP_SIX 11 +#define UC_SUP_SEVEN 12 +#define UC_SUP_EIGHT 13 +#define UC_SUP_NINE 14 +#define UC_SUP_ZERO 15 +#define UC_MULTIPLICATION_SIGN 16 +#define UC_FR_ONE_HALF 17 +#define UC_DIVISION_SIGN 18 +#define UC_FR_ONE_QUARTER 19 +#define UC_FR_ONE_FIFTH 20 +#define UC_FR_ONE_SIXTH 21 +#define UC_FR_ONE_EIGHTH 22 +#define UC_PLUS_MINUS_SIGN 23 +#define UC_EMPTY_SET 24 +#define UC_INFINITY 25 +#define UC_SUP_LATIN_SMALL_LETTER_N 26 +#define UC_THERE_EXISTS 27 +#define UC_ELEMENT_OF 28 +#define UC_FR_ONE_THIRD 29 +#define UC_NOT_EQUAL_TO 30 +#define UC_FR_TWO_THIRDS 31 +#define UC_FR_THREE_QUARTERS 32 +#define UC_ASYMPTOTICALLY_EQUAL_TO 33 +#define UC_THERE_DOES_NOT_EXIST 34 +#define UC_NOT_AN_ELEMENT_OF 35 +#define UC_SUB_ONE 36 +#define UC_SUB_TWO 37 +#define UC_SUB_THREE 38 +#define UC_SUB_FOUR 39 +#define UC_SUB_FIVE 40 +#define UC_SUB_SIX 41 +#define UC_SUB_SEVEN 42 +#define UC_SUB_EIGHT 43 +#define UC_SUB_NINE 44 +#define UC_SUB_ZERO 45 +#define UC_GR_LC_CHI 46 +#define UC_GR_LC_PI 47 +#define UC_GR_LC_PHI 48 +#define UC_GR_LC_OMEGA 49 +#define UC_GR_LC_GAMMA 50 +#define UC_GR_LC_ETA 51 +#define UC_GR_LC_XI 52 +#define UC_GR_LC_KAPPA 53 +#define UC_GR_LC_LAMDA 54 +#define UC_GR_LC_ZETA 55 +#define UC_GR_LC_UPSILON 56 +#define UC_GR_LC_IOTA 57 +#define UC_GR_LC_ALPHA 58 +#define UC_GR_LC_EPSILON 59 +#define UC_GR_LC_OMICRON 60 +#define UC_GR_LC_SIGMA 61 +#define UC_GR_LC_NU 62 +#define UC_GR_LC_RHO 63 +#define UC_GR_LC_TAU 64 +#define UC_GR_LC_DELTA 65 +#define UC_GR_LC_FINAL_SIGMA 66 +#define UC_GR_LC_THETA 67 +#define UC_GR_LC_BETA 68 +#define UC_GR_LC_MU 69 +#define UC_GR_LC_PSI 70 +#define UC_GR_UC_CHI 71 +#define UC_GR_UC_PI 72 +#define UC_GR_UC_PHI 73 +#define UC_GR_UC_OMEGA 74 +#define UC_GR_UC_GAMMA 75 +#define UC_GR_UC_ETA 76 +#define UC_GR_UC_XI 77 +#define UC_GR_UC_KAPPA 78 +#define UC_GR_UC_LAMDA 79 +#define UC_GR_UC_ZETA 80 +#define UC_GR_UC_UPSILON 81 +#define UC_GR_UC_IOTA 82 +#define UC_GR_UC_ALPHA 83 +#define UC_GR_UC_EPSILON 84 +#define UC_GR_UC_OMICRON 85 +#define UC_GR_UC_SIGMA 86 +#define UC_GR_UC_NU 87 +#define UC_GR_UC_RHO 88 +#define UC_GR_UC_TAU 89 +#define UC_GR_UC_DELTA 90 +#define UC_GR_UC_THETA 91 +#define UC_GR_UC_BETA 92 +#define UC_GR_UC_MU 93 +#define UC_GR_UC_PSI 94 + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* + * .-------------------------------------. .-------------------------------------. + * |MO(5)| 1 | 2 | 3 | 4 | 5 | ACUT | ! GRV | 6 | 7 | 8 | 9 | 0 |CIRC | + * !-----+----+----+----+----+-----------! !------+----+----+----+----+----+-----! + * |MO(4)| X | P | F | W | G | HOME | !TG(2) | H | J | K | L | Q | Z | + * !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! + * |MO(1)| U | I | A | E | O |------! !------! S | N | R | T | D | SS | + * !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! + * |MO(3)| UE | OE | AE | C | V | END | ! TAB | B | M |COMM| DOT| UP | Y | + * '-----+----+----+----+----+-----------' '-----------+----+----+----+----+-----' + * | | |LGUI|LALT|LCTL| !LALT| |LEFT|DOWN|RGHT| + * '------------------------'.-------------. .-------------.'------------------------' + * | INS |TG(2) | !M(UMS)| DELT | + * .------+------+------! !------+------+------. + * ! ! | APP | ! PGUP | ! ! + * ! ! !------! !------! ! ! + * | BSPC | LSFT | ESC | ! PGDN |ENTER |SPACE | + * '--------------------' '--------------------' +*/ +[L0] = KEYMAP( + MO(5), + DE_1, DE_2, DE_3, DE_4, DE_5, DE_ACUT, MO(4), + DE_X, DE_P, DE_F, DE_W, DE_G, KC_HOME, MO(1), + DE_U, DE_I, DE_A, DE_E, DE_O, MO(3), + DE_UE, DE_OE, DE_AE, DE_C, DE_V, KC_END, KC_TRNS, + KC_TRNS, KC_LGUI, KC_LALT, KC_LCTL, KC_INS, + TG(2), KC_APP, + KC_BSPC, + KC_LSFT, KC_ESC, DE_GRV, + DE_6, DE_7, DE_8, DE_9, DE_0, DE_CIRC, TG(2), + DE_H, DE_J, DE_K, DE_L, DE_Q, DE_Z, DE_S, + DE_N, DE_R, DE_T, DE_D, DE_SS, KC_TAB, + DE_B, DE_M, DE_COMM, DE_DOT, KC_UP, DE_Y, KC_LALT, + KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, M(UMS), + KC_DELT, KC_PGUP, + KC_PGDN, + KC_ENTER, KC_SPACE), +/* + * .-------------------------------------. .-------------------------------------. + * | |EXLM|DQOT|PARA| | | | ! | | | | |RING| | + * !-----+----+----+----+----+-----------! !------+----+----+----+----+----+-----! + * | |ASTR|PIPE|SLSH|LCBR|RCBR| | ! |HASH|LESS|MORE| |DQOT| | + * !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! + * | |UNDS|MINS|AMPR|LBRC|RBRC|------! !------!DLR |LPRN|RPRN|TILD|QUOT|QST | + * !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! + * | | |PLUS| EQL| | | | ! |BSLS|PERC|SCLN|COLN| ↑ | | + * '-----+----+----+----+----+-----------' '-----------+----+----+----+----+-----' + * | | | | | | ! | | ← | ↓ | → | + * '------------------------'.-------------. .-------------.'------------------------' + * | | | ! | | + * .------+------+------! !------+------+------. + * ! ! | | ! | ! ! + * ! ! !------! !------! ! ! + * | | | | ! | | | + * '--------------------' '--------------------' +*/ +[L1] = KEYMAP( + KC_TRNS, + DE_EXLM, DE_DQOT, DE_PARA, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + DE_ASTR, DE_PIPE, DE_SLSH, DE_LCBR, DE_RCBR, KC_TRNS, KC_TRNS, + DE_UNDS, DE_MINS, DE_AMPR, DE_LBRC, DE_RBRC, KC_TRNS, + KC_TRNS, DE_PLUS, DE_EQL, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, DE_RING, KC_TRNS, KC_TRNS, + DE_HASH, DE_LESS, DE_MORE, KC_TRNS, DE_DQOT, KC_TRNS, DE_DLR, + DE_LPRN, DE_RPRN, DE_TILD, DE_QUOT, DE_QST, KC_TRNS, + DE_BSLS, DE_PERC, DE_SCLN, DE_COLN, M(UC_UPWARDS_ARROW), KC_TRNS, KC_TRNS, + KC_TRNS, M(UC_LEFTWARDS_ARROW), M(UC_DOWNWARDS_ARROW), M(UC_RIGHTWARDS_ARROW), KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS), +/* + * .-------------------------------------. .-------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | F11 | ! F12 | F6 | F7 | F8 | F9 |F10 |PEQL | + * !-----+----+----+----+----+-----------! !------+----+----+----+----+----+-----! + * | | | | | | | | ! | | P7 | P8 | P9 |PAST|PSLS | + * !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! + * | | | | | | |------! !------! | P4 | P5 | P6 |PMNS|PMNS | + * !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! + * | | | | | | | | ! NLCK | | P1 | P2 | P3 |PPLS|PPLS | + * '-----+----+----+----+----+-----------' '-----------+----+----+----+----+-----' + * | | | | | | ! P0 |PCMM|PDOT|PENT|PENT| + * '------------------------'.-------------. .-------------.'------------------------' + * | | | ! | | + * .------+------+------! !------+------+------. + * ! ! | | ! | ! ! + * ! ! !------! !------! ! ! + * | | | | ! | | | + * '--------------------' '--------------------' +*/ +[L2] = KEYMAP( + KC_TRNS, + KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F11, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_F12, + KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_PEQL, KC_TRNS, + KC_TRNS, KC_P7, KC_P8, KC_P9, KC_PAST, KC_PSLS, KC_TRNS, + KC_P4, KC_P5, KC_P6, KC_PMNS, KC_PMNS, KC_NLCK, + KC_TRNS, KC_P1, KC_P2, KC_P3, KC_PPLS, KC_PPLS, KC_P0, + KC_PCMM, KC_PDOT, KC_PENT, KC_PENT, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS), +/* + * .-------------------------------------. .-------------------------------------. + * | | ¹ | ² | ³ | ⁴ | ⁵ | ∀ | ! | ⁶ | ⁷ | ⁸ | ⁹ | ⁰ | | + * !-----+----+----+----+----+-----------! !------+----+----+----+----+----+-----! + * | | × | ½ | ÷ | ¼ | ⅕ | | ! | ⅙ | | ⅛ | | | | + * !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! + * | | | ± | AT |EURO| ∅ |------! !------! ∞ | ⁿ | ∃ | ∈ | | | + * !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! + * | | ⅓ | ≠ | ⅔ | ¾ | ≃ | | ! |EXLM| | ∄ | ∉ | | | + * '-----+----+----+----+----+-----------' '-----------+----+----+----+----+-----' + * | | | | | | ! | | | | | + * '------------------------'.-------------. .-------------.'------------------------' + * | | | ! | | + * .------+------+------! !------+------+------. + * ! ! | | ! | ! ! + * ! ! !------! !------! ! ! + * | | | | ! | | | + * '--------------------' '--------------------' +*/ +[L3] = KEYMAP( + KC_TRNS, + M(UC_SUP_ONE), M(UC_SUP_TWO), M(UC_SUP_THREE), M(UC_SUP_FOUR), M(UC_SUP_FIVE), M(UC_FOR_ALL), KC_TRNS, + M(UC_MULTIPLICATION_SIGN), M(UC_FR_ONE_HALF), M(UC_DIVISION_SIGN), M(UC_FR_ONE_QUARTER), M(UC_FR_ONE_FIFTH), KC_TRNS, KC_TRNS, + KC_TRNS, M(UC_PLUS_MINUS_SIGN), DE_AT, DE_EURO, M(UC_EMPTY_SET), KC_TRNS, + M(UC_FR_ONE_THIRD), M(UC_NOT_EQUAL_TO), M(UC_FR_TWO_THIRDS), M(UC_FR_THREE_QUARTERS), M(UC_ASYMPTOTICALLY_EQUAL_TO), KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + M(UC_SUP_SIX), M(UC_SUP_SEVEN), M(UC_SUP_EIGHT), M(UC_SUP_NINE), M(UC_SUP_ZERO), KC_TRNS, KC_TRNS, + M(UC_FR_ONE_SIXTH), KC_TRNS, M(UC_FR_ONE_EIGHTH), KC_TRNS, KC_TRNS, KC_TRNS, M(UC_INFINITY), + M(UC_SUP_LATIN_SMALL_LETTER_N), M(UC_THERE_EXISTS), M(UC_ELEMENT_OF), KC_TRNS, KC_TRNS, KC_TRNS, + DE_EXLM, KC_TRNS, M(UC_THERE_DOES_NOT_EXIST), M(UC_NOT_AN_ELEMENT_OF), KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS), +/* + * .-------------------------------------. .-------------------------------------. + * | | ₁ | ₂ | ₃ | ₄ | ₅ | | ! | ₆ | ₇ | ₈ | ₉ | ₀ | | + * !-----+----+----+----+----+-----------! !------+----+----+----+----+----+-----! + * | | χ | π | φ | ω | γ | | ! | η | ξ | κ | λ | | ζ | + * !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! + * | | υ | ι | α | ε | ο |------! !------! σ | ν | ρ | τ | δ | ς | + * !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! + * | | | θ | | | | | ! | β | μ | | | | ψ | + * '-----+----+----+----+----+-----------' '-----------+----+----+----+----+-----' + * | | | | | | ! | | | | | + * '------------------------'.-------------. .-------------.'------------------------' + * | | | ! | | + * .------+------+------! !------+------+------. + * ! ! | | ! | ! ! + * ! ! !------! !------! ! ! + * | | | | ! | | | + * '--------------------' '--------------------' +*/ +[L4] = KEYMAP( + KC_TRNS, + M(UC_SUB_ONE), M(UC_SUB_TWO), M(UC_SUB_THREE), M(UC_SUB_FOUR), M(UC_SUB_FIVE), KC_TRNS, KC_TRNS, + M(UC_GR_LC_CHI), M(UC_GR_LC_PI), M(UC_GR_LC_PHI), M(UC_GR_LC_OMEGA), M(UC_GR_LC_GAMMA), KC_TRNS, KC_TRNS, + M(UC_GR_LC_UPSILON), M(UC_GR_LC_IOTA), M(UC_GR_LC_ALPHA), M(UC_GR_LC_EPSILON), M(UC_GR_LC_OMICRON), KC_TRNS, + KC_TRNS, M(UC_GR_LC_THETA), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + M(UC_SUB_SIX), M(UC_SUB_SEVEN), M(UC_SUB_EIGHT), M(UC_SUB_NINE), M(UC_SUB_ZERO), KC_TRNS, KC_TRNS, + M(UC_GR_LC_ETA), M(UC_GR_LC_XI), M(UC_GR_LC_KAPPA), M(UC_GR_LC_LAMDA), KC_TRNS, M(UC_GR_LC_ZETA), M(UC_GR_LC_SIGMA), + M(UC_GR_LC_NU), M(UC_GR_LC_RHO), M(UC_GR_LC_TAU), M(UC_GR_LC_DELTA), M(UC_GR_LC_FINAL_SIGMA), KC_TRNS, + M(UC_GR_LC_BETA), M(UC_GR_LC_MU), KC_TRNS, KC_TRNS, KC_TRNS, M(UC_GR_LC_PSI), KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS), +/* + * .-------------------------------------. .-------------------------------------. + * | | | | | | | | ! | | | | | | | + * !-----+----+----+----+----+-----------! !------+----+----+----+----+----+-----! + * | | Χ | Π | Φ | Ω | Γ | | ! | Η | Ξ | Κ | Λ | | Ζ | + * !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! + * | | Υ | Ι | Α | Ε | Ο |------! !------! Σ | Ν | Ρ | Τ | Δ | | + * !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! + * | | | Θ | | | | | ! | Β | Μ | | | | Ψ | + * '-----+----+----+----+----+-----------' '-----------+----+----+----+----+-----' + * | | | | | | ! | | | | | + * '------------------------'.-------------. .-------------.'------------------------' + * | | | ! | | + * .------+------+------! !------+------+------. + * ! ! | | ! | ! ! + * ! ! !------! !------! ! ! + * | | | | ! | | | + * '--------------------' '--------------------' +*/ +[L5] = KEYMAP( + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + M(UC_GR_UC_CHI), M(UC_GR_UC_PI), M(UC_GR_UC_PHI), M(UC_GR_UC_OMEGA), M(UC_GR_UC_GAMMA), KC_TRNS, KC_TRNS, + M(UC_GR_UC_UPSILON), M(UC_GR_UC_IOTA), M(UC_GR_UC_ALPHA), M(UC_GR_UC_EPSILON), M(UC_GR_UC_OMICRON), KC_TRNS, + KC_TRNS, M(UC_GR_UC_THETA), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + M(UC_GR_UC_ETA), M(UC_GR_UC_XI), M(UC_GR_UC_KAPPA), M(UC_GR_UC_LAMDA), KC_TRNS, M(UC_GR_UC_ZETA), M(UC_GR_UC_SIGMA), + M(UC_GR_UC_NU), M(UC_GR_UC_RHO), M(UC_GR_UC_TAU), M(UC_GR_UC_DELTA), KC_TRNS, KC_TRNS, + M(UC_GR_UC_BETA), M(UC_GR_UC_MU), KC_TRNS, KC_TRNS, KC_TRNS, M(UC_GR_UC_PSI), KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS), +/* + * .-------------------------------------. .-------------------------------------. + * | | | | | | | | ! | | | | | | | + * !-----+----+----+----+----+-----------! !------+----+----+----+----+----+-----! + * | | | | | | | | ! | | | | | | | + * !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! + * | | | | | | |------! !------! | | | | | | + * !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! + * | | | | | | | | ! | | | | | | | + * '-----+----+----+----+----+-----------' '-----------+----+----+----+----+-----' + * | | | | | | ! | | | | | + * '------------------------'.-------------. .-------------.'------------------------' + * | | | ! | | + * .------+------+------! !------+------+------. + * ! ! | | ! | ! ! + * ! ! !------! !------! ! ! + * | | | | ! | | | + * '--------------------' '--------------------' +*/ +[L6] = KEYMAP( + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS), +/* + * .-------------------------------------. .-------------------------------------. + * | | | | | | | | ! | | | | | | | + * !-----+----+----+----+----+-----------! !------+----+----+----+----+----+-----! + * | | | | | | | | ! | | | | | | | + * !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! + * | | | | | | |------! !------! | | | | | | + * !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! + * | | | | | | | | ! | | | | | | | + * '-----+----+----+----+----+-----------' '-----------+----+----+----+----+-----' + * | | | | | | ! | | | | | + * '------------------------'.-------------. .-------------.'------------------------' + * | | | ! | | + * .------+------+------! !------+------+------. + * ! ! | | ! | ! ! + * ! ! !------! !------! ! ! + * | | | | ! | | | + * '--------------------' '--------------------' +*/ +[L7] = KEYMAP( + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS), +/* + * .-------------------------------------. .-------------------------------------. + * | | | | | | | | ! | | | | | | | + * !-----+----+----+----+----+-----------! !------+----+----+----+----+----+-----! + * | | | | | | | | ! | | | | | | | + * !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! + * | | | | | | |------! !------! | | | | | | + * !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! + * | | | | | | | | ! | | | | | | | + * '-----+----+----+----+----+-----------' '-----------+----+----+----+----+-----' + * | | | | | | ! | | | | | + * '------------------------'.-------------. .-------------.'------------------------' + * | | | ! | | + * .------+------+------! !------+------+------. + * ! ! | | ! | ! ! + * ! ! !------! !------! ! ! + * | | | | ! | | | + * '--------------------' '--------------------' +*/ +[L8] = KEYMAP( + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS), +}; + +const uint16_t PROGMEM fn_actions[] = { +}; + +#define UC_MODE_WIN 0 +#define UC_MODE_LINUX 1 + +static uint16_t unicode_mode = UC_MODE_WIN; + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) { + if (!record->event.pressed) { + return MACRO_NONE; + } + // MACRODOWN only works in this function + switch(id) { + case UMS: + unicode_mode = (unicode_mode + 1) % 2; + break; + + default: + break; + } + if (unicode_mode == UC_MODE_WIN) { + switch(id) { + case UC_UPWARDS_ARROW: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_1), T(KP_9), T(KP_1), U(LALT), END + ); +case UC_LEFTWARDS_ARROW: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_1), T(KP_9), T(KP_0), U(LALT), END + ); +case UC_DOWNWARDS_ARROW: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_1), T(KP_9), T(KP_3), U(LALT), END + ); +case UC_RIGHTWARDS_ARROW: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_1), T(KP_9), T(KP_2), U(LALT), END + ); +case UC_SUP_ONE: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_0), T(B), T(KP_9), U(LALT), END + ); +case UC_SUP_TWO: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_0), T(B), T(KP_2), U(LALT), END + ); +case UC_SUP_THREE: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_0), T(B), T(KP_3), U(LALT), END + ); +case UC_SUP_FOUR: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_0), T(KP_7), T(KP_4), U(LALT), END + ); +case UC_SUP_FIVE: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_0), T(KP_7), T(KP_5), U(LALT), END + ); +case UC_FOR_ALL: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_2), T(KP_0), T(KP_0), U(LALT), END + ); +case UC_SUP_SIX: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_0), T(KP_7), T(KP_6), U(LALT), END + ); +case UC_SUP_SEVEN: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_0), T(KP_7), T(KP_7), U(LALT), END + ); +case UC_SUP_EIGHT: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_0), T(KP_7), T(KP_8), U(LALT), END + ); +case UC_SUP_NINE: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_0), T(KP_7), T(KP_9), U(LALT), END + ); +case UC_SUP_ZERO: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_0), T(KP_7), T(KP_0), U(LALT), END + ); +case UC_MULTIPLICATION_SIGN: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_0), T(D), T(KP_7), U(LALT), END + ); +case UC_FR_ONE_HALF: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_0), T(B), T(D), U(LALT), END + ); +case UC_DIVISION_SIGN: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_0), T(F), T(KP_7), U(LALT), END + ); +case UC_FR_ONE_QUARTER: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_0), T(B), T(C), U(LALT), END + ); +case UC_FR_ONE_FIFTH: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_1), T(KP_5), T(KP_5), U(LALT), END + ); +case UC_FR_ONE_SIXTH: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_1), T(KP_5), T(KP_9), U(LALT), END + ); +case UC_FR_ONE_EIGHTH: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_1), T(KP_5), T(B), U(LALT), END + ); +case UC_PLUS_MINUS_SIGN: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_0), T(B), T(KP_1), U(LALT), END + ); +case UC_EMPTY_SET: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_2), T(KP_0), T(KP_5), U(LALT), END + ); +case UC_INFINITY: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_2), T(KP_1), T(E), U(LALT), END + ); +case UC_SUP_LATIN_SMALL_LETTER_N: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_0), T(KP_7), T(F), U(LALT), END + ); +case UC_THERE_EXISTS: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_2), T(KP_0), T(KP_3), U(LALT), END + ); +case UC_ELEMENT_OF: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_2), T(KP_0), T(KP_8), U(LALT), END + ); +case UC_FR_ONE_THIRD: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_1), T(KP_5), T(KP_3), U(LALT), END + ); +case UC_NOT_EQUAL_TO: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_2), T(KP_6), T(KP_0), U(LALT), END + ); +case UC_FR_TWO_THIRDS: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_1), T(KP_5), T(KP_4), U(LALT), END + ); +case UC_FR_THREE_QUARTERS: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_0), T(B), T(E), U(LALT), END + ); +case UC_ASYMPTOTICALLY_EQUAL_TO: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_2), T(KP_4), T(KP_3), U(LALT), END + ); +case UC_THERE_DOES_NOT_EXIST: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_2), T(KP_0), T(KP_4), U(LALT), END + ); +case UC_NOT_AN_ELEMENT_OF: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_2), T(KP_0), T(KP_9), U(LALT), END + ); +case UC_SUB_ONE: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_0), T(KP_8), T(KP_1), U(LALT), END + ); +case UC_SUB_TWO: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_0), T(KP_8), T(KP_2), U(LALT), END + ); +case UC_SUB_THREE: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_0), T(KP_8), T(KP_3), U(LALT), END + ); +case UC_SUB_FOUR: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_0), T(KP_8), T(KP_4), U(LALT), END + ); +case UC_SUB_FIVE: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_0), T(KP_8), T(KP_5), U(LALT), END + ); +case UC_SUB_SIX: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_0), T(KP_8), T(KP_6), U(LALT), END + ); +case UC_SUB_SEVEN: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_0), T(KP_8), T(KP_7), U(LALT), END + ); +case UC_SUB_EIGHT: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_0), T(KP_8), T(KP_8), U(LALT), END + ); +case UC_SUB_NINE: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_0), T(KP_8), T(KP_9), U(LALT), END + ); +case UC_SUB_ZERO: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_0), T(KP_8), T(KP_0), U(LALT), END + ); +case UC_GR_LC_CHI: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(C), T(KP_7), U(LALT), END + ); +case UC_GR_LC_PI: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(C), T(KP_0), U(LALT), END + ); +case UC_GR_LC_PHI: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(C), T(KP_6), U(LALT), END + ); +case UC_GR_LC_OMEGA: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(C), T(KP_9), U(LALT), END + ); +case UC_GR_LC_GAMMA: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(B), T(KP_3), U(LALT), END + ); +case UC_GR_LC_ETA: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(B), T(KP_7), U(LALT), END + ); +case UC_GR_LC_XI: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(B), T(E), U(LALT), END + ); +case UC_GR_LC_KAPPA: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(B), T(A), U(LALT), END + ); +case UC_GR_LC_LAMDA: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(B), T(B), U(LALT), END + ); +case UC_GR_LC_ZETA: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(B), T(KP_6), U(LALT), END + ); +case UC_GR_LC_UPSILON: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(C), T(KP_5), U(LALT), END + ); +case UC_GR_LC_IOTA: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(B), T(KP_9), U(LALT), END + ); +case UC_GR_LC_ALPHA: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(B), T(KP_1), U(LALT), END + ); +case UC_GR_LC_EPSILON: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(B), T(KP_5), U(LALT), END + ); +case UC_GR_LC_OMICRON: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(B), T(F), U(LALT), END + ); +case UC_GR_LC_SIGMA: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(C), T(KP_3), U(LALT), END + ); +case UC_GR_LC_NU: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(B), T(D), U(LALT), END + ); +case UC_GR_LC_RHO: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(C), T(KP_1), U(LALT), END + ); +case UC_GR_LC_TAU: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(C), T(KP_4), U(LALT), END + ); +case UC_GR_LC_DELTA: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(B), T(KP_4), U(LALT), END + ); +case UC_GR_LC_FINAL_SIGMA: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(C), T(KP_2), U(LALT), END + ); +case UC_GR_LC_THETA: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(B), T(KP_8), U(LALT), END + ); +case UC_GR_LC_BETA: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(B), T(KP_2), U(LALT), END + ); +case UC_GR_LC_MU: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(B), T(C), U(LALT), END + ); +case UC_GR_LC_PSI: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(C), T(KP_8), U(LALT), END + ); +case UC_GR_UC_CHI: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(A), T(KP_7), U(LALT), END + ); +case UC_GR_UC_PI: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(A), T(KP_0), U(LALT), END + ); +case UC_GR_UC_PHI: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(A), T(KP_6), U(LALT), END + ); +case UC_GR_UC_OMEGA: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(A), T(KP_9), U(LALT), END + ); +case UC_GR_UC_GAMMA: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(KP_9), T(KP_3), U(LALT), END + ); +case UC_GR_UC_ETA: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(KP_9), T(KP_7), U(LALT), END + ); +case UC_GR_UC_XI: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(KP_9), T(E), U(LALT), END + ); +case UC_GR_UC_KAPPA: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(KP_9), T(A), U(LALT), END + ); +case UC_GR_UC_LAMDA: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(KP_9), T(B), U(LALT), END + ); +case UC_GR_UC_ZETA: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(KP_9), T(KP_6), U(LALT), END + ); +case UC_GR_UC_UPSILON: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(A), T(KP_5), U(LALT), END + ); +case UC_GR_UC_IOTA: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(KP_9), T(KP_9), U(LALT), END + ); +case UC_GR_UC_ALPHA: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(KP_9), T(KP_1), U(LALT), END + ); +case UC_GR_UC_EPSILON: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(KP_9), T(KP_5), U(LALT), END + ); +case UC_GR_UC_OMICRON: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(KP_9), T(F), U(LALT), END + ); +case UC_GR_UC_SIGMA: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(A), T(KP_3), U(LALT), END + ); +case UC_GR_UC_NU: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(KP_9), T(D), U(LALT), END + ); +case UC_GR_UC_RHO: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(A), T(KP_1), U(LALT), END + ); +case UC_GR_UC_TAU: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(A), T(KP_4), U(LALT), END + ); +case UC_GR_UC_DELTA: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(KP_9), T(KP_4), U(LALT), END + ); +case UC_GR_UC_THETA: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(KP_9), T(KP_8), U(LALT), END + ); +case UC_GR_UC_BETA: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(KP_9), T(KP_2), U(LALT), END + ); +case UC_GR_UC_MU: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(KP_9), T(C), U(LALT), END + ); +case UC_GR_UC_PSI: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(A), T(KP_8), U(LALT), END + ); + default: + break; + } + } else if (unicode_mode == UC_MODE_LINUX) { + switch(id) { + case UC_UPWARDS_ARROW: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_1), T(KP_9), T(KP_1), T(KP_ENTER), END + ); +case UC_LEFTWARDS_ARROW: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_1), T(KP_9), T(KP_0), T(KP_ENTER), END + ); +case UC_DOWNWARDS_ARROW: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_1), T(KP_9), T(KP_3), T(KP_ENTER), END + ); +case UC_RIGHTWARDS_ARROW: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_1), T(KP_9), T(KP_2), T(KP_ENTER), END + ); +case UC_SUP_ONE: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_0), T(B), T(KP_9), T(KP_ENTER), END + ); +case UC_SUP_TWO: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_0), T(B), T(KP_2), T(KP_ENTER), END + ); +case UC_SUP_THREE: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_0), T(B), T(KP_3), T(KP_ENTER), END + ); +case UC_SUP_FOUR: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_0), T(KP_7), T(KP_4), T(KP_ENTER), END + ); +case UC_SUP_FIVE: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_0), T(KP_7), T(KP_5), T(KP_ENTER), END + ); +case UC_FOR_ALL: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_2), T(KP_0), T(KP_0), T(KP_ENTER), END + ); +case UC_SUP_SIX: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_0), T(KP_7), T(KP_6), T(KP_ENTER), END + ); +case UC_SUP_SEVEN: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_0), T(KP_7), T(KP_7), T(KP_ENTER), END + ); +case UC_SUP_EIGHT: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_0), T(KP_7), T(KP_8), T(KP_ENTER), END + ); +case UC_SUP_NINE: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_0), T(KP_7), T(KP_9), T(KP_ENTER), END + ); +case UC_SUP_ZERO: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_0), T(KP_7), T(KP_0), T(KP_ENTER), END + ); +case UC_MULTIPLICATION_SIGN: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_0), T(D), T(KP_7), T(KP_ENTER), END + ); +case UC_FR_ONE_HALF: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_0), T(B), T(D), T(KP_ENTER), END + ); +case UC_DIVISION_SIGN: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_0), T(F), T(KP_7), T(KP_ENTER), END + ); +case UC_FR_ONE_QUARTER: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_0), T(B), T(C), T(KP_ENTER), END + ); +case UC_FR_ONE_FIFTH: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_1), T(KP_5), T(KP_5), T(KP_ENTER), END + ); +case UC_FR_ONE_SIXTH: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_1), T(KP_5), T(KP_9), T(KP_ENTER), END + ); +case UC_FR_ONE_EIGHTH: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_1), T(KP_5), T(B), T(KP_ENTER), END + ); +case UC_PLUS_MINUS_SIGN: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_0), T(B), T(KP_1), T(KP_ENTER), END + ); +case UC_EMPTY_SET: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_2), T(KP_0), T(KP_5), T(KP_ENTER), END + ); +case UC_INFINITY: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_2), T(KP_1), T(E), T(KP_ENTER), END + ); +case UC_SUP_LATIN_SMALL_LETTER_N: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_0), T(KP_7), T(F), T(KP_ENTER), END + ); +case UC_THERE_EXISTS: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_2), T(KP_0), T(KP_3), T(KP_ENTER), END + ); +case UC_ELEMENT_OF: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_2), T(KP_0), T(KP_8), T(KP_ENTER), END + ); +case UC_FR_ONE_THIRD: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_1), T(KP_5), T(KP_3), T(KP_ENTER), END + ); +case UC_NOT_EQUAL_TO: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_2), T(KP_6), T(KP_0), T(KP_ENTER), END + ); +case UC_FR_TWO_THIRDS: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_1), T(KP_5), T(KP_4), T(KP_ENTER), END + ); +case UC_FR_THREE_QUARTERS: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_0), T(B), T(E), T(KP_ENTER), END + ); +case UC_ASYMPTOTICALLY_EQUAL_TO: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_2), T(KP_4), T(KP_3), T(KP_ENTER), END + ); +case UC_THERE_DOES_NOT_EXIST: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_2), T(KP_0), T(KP_4), T(KP_ENTER), END + ); +case UC_NOT_AN_ELEMENT_OF: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_2), T(KP_0), T(KP_9), T(KP_ENTER), END + ); +case UC_SUB_ONE: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_0), T(KP_8), T(KP_1), T(KP_ENTER), END + ); +case UC_SUB_TWO: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_0), T(KP_8), T(KP_2), T(KP_ENTER), END + ); +case UC_SUB_THREE: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_0), T(KP_8), T(KP_3), T(KP_ENTER), END + ); +case UC_SUB_FOUR: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_0), T(KP_8), T(KP_4), T(KP_ENTER), END + ); +case UC_SUB_FIVE: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_0), T(KP_8), T(KP_5), T(KP_ENTER), END + ); +case UC_SUB_SIX: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_0), T(KP_8), T(KP_6), T(KP_ENTER), END + ); +case UC_SUB_SEVEN: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_0), T(KP_8), T(KP_7), T(KP_ENTER), END + ); +case UC_SUB_EIGHT: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_0), T(KP_8), T(KP_8), T(KP_ENTER), END + ); +case UC_SUB_NINE: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_0), T(KP_8), T(KP_9), T(KP_ENTER), END + ); +case UC_SUB_ZERO: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_0), T(KP_8), T(KP_0), T(KP_ENTER), END + ); +case UC_GR_LC_CHI: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(C), T(KP_7), T(KP_ENTER), END + ); +case UC_GR_LC_PI: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(C), T(KP_0), T(KP_ENTER), END + ); +case UC_GR_LC_PHI: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(C), T(KP_6), T(KP_ENTER), END + ); +case UC_GR_LC_OMEGA: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(C), T(KP_9), T(KP_ENTER), END + ); +case UC_GR_LC_GAMMA: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(B), T(KP_3), T(KP_ENTER), END + ); +case UC_GR_LC_ETA: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(B), T(KP_7), T(KP_ENTER), END + ); +case UC_GR_LC_XI: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(B), T(E), T(KP_ENTER), END + ); +case UC_GR_LC_KAPPA: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(B), T(A), T(KP_ENTER), END + ); +case UC_GR_LC_LAMDA: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(B), T(B), T(KP_ENTER), END + ); +case UC_GR_LC_ZETA: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(B), T(KP_6), T(KP_ENTER), END + ); +case UC_GR_LC_UPSILON: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(C), T(KP_5), T(KP_ENTER), END + ); +case UC_GR_LC_IOTA: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(B), T(KP_9), T(KP_ENTER), END + ); +case UC_GR_LC_ALPHA: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(B), T(KP_1), T(KP_ENTER), END + ); +case UC_GR_LC_EPSILON: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(B), T(KP_5), T(KP_ENTER), END + ); +case UC_GR_LC_OMICRON: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(B), T(F), T(KP_ENTER), END + ); +case UC_GR_LC_SIGMA: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(C), T(KP_3), T(KP_ENTER), END + ); +case UC_GR_LC_NU: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(B), T(D), T(KP_ENTER), END + ); +case UC_GR_LC_RHO: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(C), T(KP_1), T(KP_ENTER), END + ); +case UC_GR_LC_TAU: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(C), T(KP_4), T(KP_ENTER), END + ); +case UC_GR_LC_DELTA: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(B), T(KP_4), T(KP_ENTER), END + ); +case UC_GR_LC_FINAL_SIGMA: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(C), T(KP_2), T(KP_ENTER), END + ); +case UC_GR_LC_THETA: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(B), T(KP_8), T(KP_ENTER), END + ); +case UC_GR_LC_BETA: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(B), T(KP_2), T(KP_ENTER), END + ); +case UC_GR_LC_MU: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(B), T(C), T(KP_ENTER), END + ); +case UC_GR_LC_PSI: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(C), T(KP_8), T(KP_ENTER), END + ); +case UC_GR_UC_CHI: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(A), T(KP_7), T(KP_ENTER), END + ); +case UC_GR_UC_PI: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(A), T(KP_0), T(KP_ENTER), END + ); +case UC_GR_UC_PHI: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(A), T(KP_6), T(KP_ENTER), END + ); +case UC_GR_UC_OMEGA: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(A), T(KP_9), T(KP_ENTER), END + ); +case UC_GR_UC_GAMMA: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(KP_9), T(KP_3), T(KP_ENTER), END + ); +case UC_GR_UC_ETA: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(KP_9), T(KP_7), T(KP_ENTER), END + ); +case UC_GR_UC_XI: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(KP_9), T(E), T(KP_ENTER), END + ); +case UC_GR_UC_KAPPA: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(KP_9), T(A), T(KP_ENTER), END + ); +case UC_GR_UC_LAMDA: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(KP_9), T(B), T(KP_ENTER), END + ); +case UC_GR_UC_ZETA: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(KP_9), T(KP_6), T(KP_ENTER), END + ); +case UC_GR_UC_UPSILON: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(A), T(KP_5), T(KP_ENTER), END + ); +case UC_GR_UC_IOTA: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(KP_9), T(KP_9), T(KP_ENTER), END + ); +case UC_GR_UC_ALPHA: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(KP_9), T(KP_1), T(KP_ENTER), END + ); +case UC_GR_UC_EPSILON: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(KP_9), T(KP_5), T(KP_ENTER), END + ); +case UC_GR_UC_OMICRON: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(KP_9), T(F), T(KP_ENTER), END + ); +case UC_GR_UC_SIGMA: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(A), T(KP_3), T(KP_ENTER), END + ); +case UC_GR_UC_NU: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(KP_9), T(D), T(KP_ENTER), END + ); +case UC_GR_UC_RHO: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(A), T(KP_1), T(KP_ENTER), END + ); +case UC_GR_UC_TAU: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(A), T(KP_4), T(KP_ENTER), END + ); +case UC_GR_UC_DELTA: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(KP_9), T(KP_4), T(KP_ENTER), END + ); +case UC_GR_UC_THETA: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(KP_9), T(KP_8), T(KP_ENTER), END + ); +case UC_GR_UC_BETA: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(KP_9), T(KP_2), T(KP_ENTER), END + ); +case UC_GR_UC_MU: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(KP_9), T(C), T(KP_ENTER), END + ); +case UC_GR_UC_PSI: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(A), T(KP_8), T(KP_ENTER), END + ); + default: + break; + } + } + return MACRO_NONE; +}; + +// Runs just one time when the keyboard initializes. +void * matrix_init_user(void) { + +}; + +// Runs constantly in the background, in a loop. +void * matrix_scan_user(void) { + uint8_t layer = biton32(layer_state); + + ergodox_board_led_off(); + ergodox_right_led_1_off(); + ergodox_right_led_2_off(); + ergodox_right_led_3_off(); + switch (layer) { + case L1: + ergodox_right_led_1_on(); + break; + case L2: + ergodox_right_led_2_on(); + break; + case L3: + ergodox_right_led_3_on(); + break; + case L4: + ergodox_right_led_1_on(); + ergodox_right_led_2_on(); + break; + case L5: + ergodox_right_led_1_on(); + ergodox_right_led_3_on(); + break; + // case L6: + // ergodox_right_led_2_on(); + // ergodox_right_led_3_on(); + // break; + // case L7: + // ergodox_right_led_1_on(); + // ergodox_right_led_2_on(); + // ergodox_right_led_3_on(); + // break; + default: + ergodox_board_led_off(); + break; + } +}; diff --git a/keyboard/ergodox_ez/keymaps/german-manuneo/keymap.md b/keyboard/ergodox_ez/keymaps/german-manuneo/keymap.md new file mode 100644 index 0000000000..9c0c12528b --- /dev/null +++ b/keyboard/ergodox_ez/keymaps/german-manuneo/keymap.md @@ -0,0 +1,222 @@ +# ManuNeo Ergodox Keyboard Layout + +# Layout Config + + { + "includes_dir": "quantum/", + "keymaps_includes": [ + "ergodox_ez.h", + "action_layer.h", + "keymap_common.h", + "keymap_extras/keymap_german.h", + ], + "keymap_indexes": [ + [ 0, 1, 2, 3, 4, 5, 6], [38, 39, 40, 41, 42, 43, 44], + [ 7, 8, 9, 10, 11, 12, 13], [45, 46, 47, 48, 49, 50, 51], + [14, 15, 16, 17, 18, 19 ], [ 52, 53, 54, 55, 56, 57], + [20, 21, 22, 23, 24, 25, 26], [58, 59, 60, 61, 62, 63, 64], + [27, 28, 29, 30, 31 ], [ 65, 66, 67, 68, 69], + [ 32, 33], [70, 71 ], + [ 34], [72 ], + [ 35, 36, 37], [73, 74, 75 ], + ], + "key_prefixes": ["DE_", "KC_"], + "filler": "-+.'!x", + "separator": "|", + "macros": { + "MUC": "", + }, + } + + +# Layers + + +## Layer 0 + + .-------------------------------------. .-------------------------------------. + |MO(5)| 1 | 2 | 3 | 4 | 5 | ACUT | ! GRV | 6 | 7 | 8 | 9 | 0 |CIRC | + !-----+----+----+----+----+-----------! !------+----+----+----+----+----+-----! + |MO(4)| X | P | F | W | G | HOME | !TG(2) | H | J | K | L | Q | Z | + !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! + |MO(1)| U | I | A | E | O |------! !------! S | N | R | T | D | SS | + !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! + |MO(3)| UE | OE | AE | C | V | END | ! TAB | B | M |COMM| DOT| UP | Y | + '-----+----+----+----+----+-----------' '-----------+----+----+----+----+-----' + | | |LGUI|LALT|LCTL| !LALT| |LEFT|DOWN|RGHT| + '------------------------'.-------------. .-------------.'------------------------' + | INS |TG(2) | !M(UMS)| DELT | + .------+------+------! !------+------+------. + ! ! | APP | ! PGUP | ! ! + ! ! !------! !------! ! ! + | BSPC | LSFT | ESC | ! PGDN |ENTER |SPACE | + '--------------------' '--------------------' + + +## Layer 1 + + .-------------------------------------. .-------------------------------------. + | |EXLM|DQOT|PARA| | | | ! | | | | |RING| | + !-----+----+----+----+----+-----------! !------+----+----+----+----+----+-----! + | |ASTR|PIPE|SLSH|LCBR|RCBR| | ! |HASH|LESS|MORE| |DQOT| | + !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! + | |UNDS|MINS|AMPR|LBRC|RBRC|------! !------!DLR |LPRN|RPRN|TILD|QUOT|QST | + !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! + | | |PLUS| EQL| | | | ! |BSLS|PERC|SCLN|COLN| ↑ | | + '-----+----+----+----+----+-----------' '-----------+----+----+----+----+-----' + | | | | | | ! | | ← | ↓ | → | + '------------------------'.-------------. .-------------.'------------------------' + | | | ! | | + .------+------+------! !------+------+------. + ! ! | | ! | ! ! + ! ! !------! !------! ! ! + | | | | ! | | | + '--------------------' '--------------------' + + +## Layer 2 + + .-------------------------------------. .-------------------------------------. + | | F1 | F2 | F3 | F4 | F5 | F11 | ! F12 | F6 | F7 | F8 | F9 |F10 |PEQL | + !-----+----+----+----+----+-----------! !------+----+----+----+----+----+-----! + | | | | | | | | ! | | P7 | P8 | P9 |PAST|PSLS | + !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! + | | | | | | |------! !------! | P4 | P5 | P6 |PMNS|PMNS | + !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! + | | | | | | | | ! NLCK | | P1 | P2 | P3 |PPLS|PPLS | + '-----+----+----+----+----+-----------' '-----------+----+----+----+----+-----' + | | | | | | ! P0 |PCMM|PDOT|PENT|PENT| + '------------------------'.-------------. .-------------.'------------------------' + | | | ! | | + .------+------+------! !------+------+------. + ! ! | | ! | ! ! + ! ! !------! !------! ! ! + | | | | ! | | | + '--------------------' '--------------------' + + +## Layer 3 + +http://symbolcodes.tlt.psu.edu/bylanguage/mathchart.html + + .-------------------------------------. .-------------------------------------. + | | ¹ | ² | ³ | ⁴ | ⁵ | ∀ | ! | ⁶ | ⁷ | ⁸ | ⁹ | ⁰ | | + !-----+----+----+----+----+-----------! !------+----+----+----+----+----+-----! + | | × | ½ | ÷ | ¼ | ⅕ | | ! | ⅙ | | ⅛ | | | | + !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! + | | | ± | AT |EURO| ∅ |------! !------! ∞ | ⁿ | ∃ | ∈ | | | + !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! + | | ⅓ | ≠ | ⅔ | ¾ | ≃ | | ! |EXLM| | ∄ | ∉ | | | + '-----+----+----+----+----+-----------' '-----------+----+----+----+----+-----' + | | | | | | ! | | | | | + '------------------------'.-------------. .-------------.'------------------------' + | | | ! | | + .------+------+------! !------+------+------. + ! ! | | ! | ! ! + ! ! !------! !------! ! ! + | | | | ! | | | + '--------------------' '--------------------' + + +## Layer 4 + + .-------------------------------------. .-------------------------------------. + | | ₁ | ₂ | ₃ | ₄ | ₅ | | ! | ₆ | ₇ | ₈ | ₉ | ₀ | | + !-----+----+----+----+----+-----------! !------+----+----+----+----+----+-----! + | | χ | π | φ | ω | γ | | ! | η | ξ | κ | λ | | ζ | + !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! + | | υ | ι | α | ε | ο |------! !------! σ | ν | ρ | τ | δ | ς | + !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! + | | | θ | | | | | ! | β | μ | | | | ψ | + '-----+----+----+----+----+-----------' '-----------+----+----+----+----+-----' + | | | | | | ! | | | | | + '------------------------'.-------------. .-------------.'------------------------' + | | | ! | | + .------+------+------! !------+------+------. + ! ! | | ! | ! ! + ! ! !------! !------! ! ! + | | | | ! | | | + '--------------------' '--------------------' + + +## Layer 5 + + .-------------------------------------. .-------------------------------------. + | | | | | | | | ! | | | | | | | + !-----+----+----+----+----+-----------! !------+----+----+----+----+----+-----! + | | Χ | Π | Φ | Ω | Γ | | ! | Η | Ξ | Κ | Λ | | Ζ | + !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! + | | Υ | Ι | Α | Ε | Ο |------! !------! Σ | Ν | Ρ | Τ | Δ | | + !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! + | | | Θ | | | | | ! | Β | Μ | | | | Ψ | + '-----+----+----+----+----+-----------' '-----------+----+----+----+----+-----' + | | | | | | ! | | | | | + '------------------------'.-------------. .-------------.'------------------------' + | | | ! | | + .------+------+------! !------+------+------. + ! ! | | ! | ! ! + ! ! !------! !------! ! ! + | | | | ! | | | + '--------------------' '--------------------' + + +## Layer 6 + + .-------------------------------------. .-------------------------------------. + | | | | | | | | ! | | | | | | | + !-----+----+----+----+----+-----------! !------+----+----+----+----+----+-----! + | | | | | | | | ! | | | | | | | + !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! + | | | | | | |------! !------! | | | | | | + !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! + | | | | | | | | ! | | | | | | | + '-----+----+----+----+----+-----------' '-----------+----+----+----+----+-----' + | | | | | | ! | | | | | + '------------------------'.-------------. .-------------.'------------------------' + | | | ! | | + .------+------+------! !------+------+------. + ! ! | | ! | ! ! + ! ! !------! !------! ! ! + | | | | ! | | | + '--------------------' '--------------------' + +## Layer 7 + + .-------------------------------------. .-------------------------------------. + | | | | | | | | ! | | | | | | | + !-----+----+----+----+----+-----------! !------+----+----+----+----+----+-----! + | | | | | | | | ! | | | | | | | + !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! + | | | | | | |------! !------! | | | | | | + !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! + | | | | | | | | ! | | | | | | | + '-----+----+----+----+----+-----------' '-----------+----+----+----+----+-----' + | | | | | | ! | | | | | + '------------------------'.-------------. .-------------.'------------------------' + | | | ! | | + .------+------+------! !------+------+------. + ! ! | | ! | ! ! + ! ! !------! !------! ! ! + | | | | ! | | | + '--------------------' '--------------------' + + +## Layer 8 + + .-------------------------------------. .-------------------------------------. + | | | | | | | | ! | | | | | | | + !-----+----+----+----+----+-----------! !------+----+----+----+----+----+-----! + | | | | | | | | ! | | | | | | | + !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! + | | | | | | |------! !------! | | | | | | + !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! + | | | | | | | | ! | | | | | | | + '-----+----+----+----+----+-----------' '-----------+----+----+----+----+-----' + | | | | | | ! | | | | | + '------------------------'.-------------. .-------------.'------------------------' + | | | ! | | + .------+------+------! !------+------+------. + ! ! | | ! | ! ! + ! ! !------! !------! ! ! + | | | | ! | | | + '--------------------' '--------------------' From beda4e6fd3a7b9e31b9cf591563e7aa1df0c7eed Mon Sep 17 00:00:00 2001 From: Matthew Carroll Date: Sun, 27 Mar 2016 23:51:11 -0400 Subject: [PATCH 09/45] Added msc keymap for ergodox_ez --- .../ergodox_ez/keymaps/msc/img/code_layer.png | Bin 0 -> 86217 bytes .../ergodox_ez/keymaps/msc/img/main_layer.png | Bin 0 -> 90624 bytes .../keymaps/msc/img/media_layer.png | Bin 0 -> 75750 bytes keyboard/ergodox_ez/keymaps/msc/keymap.c | 184 +++ keyboard/ergodox_ez/keymaps/msc/msc.hex | 1118 +++++++++++++++++ keyboard/ergodox_ez/keymaps/msc/readme.md | 32 + 6 files changed, 1334 insertions(+) create mode 100644 keyboard/ergodox_ez/keymaps/msc/img/code_layer.png create mode 100644 keyboard/ergodox_ez/keymaps/msc/img/main_layer.png create mode 100644 keyboard/ergodox_ez/keymaps/msc/img/media_layer.png create mode 100644 keyboard/ergodox_ez/keymaps/msc/keymap.c create mode 100644 keyboard/ergodox_ez/keymaps/msc/msc.hex create mode 100644 keyboard/ergodox_ez/keymaps/msc/readme.md diff --git a/keyboard/ergodox_ez/keymaps/msc/img/code_layer.png b/keyboard/ergodox_ez/keymaps/msc/img/code_layer.png new file mode 100644 index 0000000000000000000000000000000000000000..1d707c5eaef58f826fff1b58b67339bc3790c272 GIT binary patch literal 86217 zcmdS9gLkFN^7tLw#>BSG$;6u2b|#$InAo;$Pi)(hiEZ2Z?VNM&J>PZDdH;YnYp<+i zKTmg8Rd-iceY!&AWX0fNaA1IdfZ!#>g%yB+z|?_&fQO(U0N*5Jv3Ual!62A_`64Ir zUVG_hj(wMP9D<OT(Psm?FoN*I zg9eI;JWwbZ6YmSc@~Ku4QgZ<5v3N5XqZGyJX+%~D3zm`)dwA9O>ha z1@R7mK=nXqedugK&blDMepL8`jNwK}CqOWF^GAbTbs^h+ivIy42Y=MfWsCgNk7k3r z3H+%W2@4$62h^mCR}GAy3kK{nXE2C7k-j)eY>*NWUNAz+=Z0w59dK|VB017{paQ{^ zDKAPyYJbTb$ztFZAnm})FV5Ne2TZKs!srazzb6Z05^zvU|aH7ci zvus#CFlvFQcAIXpKX9)gM)iDh!PgN2MuR5vi4`r$JD{|P=b?r|_ch3K%CnR2FQ!&v zDMg(Na`V~B#*oXJQe#D@3s4bD%f_4PFeB$iZpY1tq8FLZTb^n^fIOhOA%4OQ{DItC zY!J>AnG7UNN)8|AM>X)vK!b^cDK8m&43ZXu#z(mi#{jR|cLD1}){_4YtpR*F0&hUp zFv*rPolzFuG}L~O$#%Hu(~883`U=|$lr_XX^4A`zEyoL|2SN`Jepuabn?C1Fu?vPv z8Zi7HyxqwgvQQ)^glI_LpfdcQ{jqysVv>r*S;?M|41=G8$@)yTWVT2z@j`@SiLhgM zC8qP+^HFA8XRKz>4pCF0%7q%pA>$N>f`%P;tgj5Ocwho@1#7awBTA;EBUmHwXC#Aw5pn+SFTnPS2UYhn!=hHzOV1=Y!F>gUZ`C&x;S0OUux}P z@2hVWTz$K4xgNOQyJo*y+sxSQy`;KWyb8E9zE-|o-AF6UEv{9vppI+F()iLYk&&Zs z9?B}F0Y?|*6v-~GxwF4LzkR>`b)R9ob7T@(5SkK-6Q&Ou4N40Q3-y7PlHQC8i{3@N zTHRLIR$W|aNQhF4QngsbOzEJmI=;HXw){eV(`mDa*bEsR`D+Yo%q%g72!^nEE_tr> zwAOT3?$wL#R84SMpaBJI^~w=xFFK=m?ZQX~w8wsJN+3DA}oGspaFx5>OIKXOHj?2`IY#*&Srl0!1LF*l+kRf|)Ly91BI z`a#K2z;VWJ_x!JO&T|6U>v`{UT~j_*Q)gjffn0&G~w-0npc(jLA z4`U3|2un&FNn}birPI|kSFfqis7S1csBl(yUe2~Wv9hy*uzIxgw34#QS{z;wSz=qH zTRL7o|9S4z#mUL@$q~yL&Dn^Xos*s$oBP!6$dR1KohOM~z*+vgeyc-EPo-?-pccjI z&ML~v(yDK3-ZRsE5q>Cs2!5xl0UsalD6g)Ixx2C3t*c^tqbrA-_eISW)kVsM@|Dcx z>E-qv?48Ah=3V0@!_7XJ8N><90U{c7IKl~35BMYa90Z+J!>WhJwRE+Yt?b1DMnB!5 z=9wk>B2MG&5&M}{xK)x6BhedC1d%S*Svd88Lb0Kl>jCj>s_PFf0uy8vG+30Wne80zPZZBtsdi0v3tZcf(g;eQgbBj=IbFo>r-r|*+x6O= z@0stS?|TlL?ybM7Kkvt8sUnJf!lz}V@qbI|o*pbWOh;AyOxAf)`At%1A#NhCs7W}V?i7w4PEx9e}6zsY`mKWaa6$A!bi!Rg0= zP2DJrFKn*sHVv9sOg}bLv8l8~HXG(aoG427b|l*ASrFL|<4Zb7O7%{7uWw6ON?nGi zKQ+^|jQY0k0Okaz>(sI`Yd*91lr~`FsG46Duf5x;F(q;`a;DLq_}!``ZLZyx@9N26 zvLQ1B7nlS8&g~9i&7s5fIdQcD*E7*`-a2iq!*1|lVz>3C_4F0u)e7_pwBr8eydD7u zu3?pwKJSDp+MU_m_mypquL@b^ z(kB^x(tG^7t{N}WC+c(OBb|-5aGa_|mW2?R?gClKCbE<7F*k!rDJPimnEec7y6j^| zV>&5yX}E6nk8@+Z7GB0g`vPt6RNfUgPxAtFZ=clQ)Y4shz3QIW-!m>+TkhS?-4l5e zGd+Xft83GrG>ODMt_e2`QX5kzBz(!1fG~8NdW8f z8@ZMrVgPZAym!2n=0j;`M0_RDB%aJ7FiY9u@QOL;#K5D2)rlA42>j5N2Q zjTODVk&S^dy^EDCAaVo(;&tH${Ap$Epik&xWod2C?ZQX=#~a*$zdycaASV3d6$cAG zVl^2#!Y?*<#)NG2tn`e;{4j)sguHe}Cfo|bqJK39{KrRZ=HOt<&A{O7>`d>>LT_Vd z%D}|M#l^tL%)rb{2Y7?d-qqSc--XWFp5)I?{?m`JvAv<4xvhh_jWyv%zxoC?jt+dp z#2*9w_vcSJja|(D9?9DNFSP&)GJHH?V4`Pa__t;b<|h9i%|4#|+3XL!{v3|?qcd(f za~ESvbzyTWV{3bWX#A{f?7V*r^N%Ng3;KUrs{P%PiHV8j|2F+UkN!{74^gz ztn^_EekNXqe|-1X`@9SvhWbB-`*T+Q_!clN{4l%>|D9rfm;|=&WFR0xAPM2mN-n@B z?T8*qb1CodzM@!?`F@3@cT&b0vuxj%gmd6qrx22@<6eCOC3W+0$mrD$Br(xC;kDn? z{bnS=*frxw3V@;(|E48Cj{n~&Dh^c;$>)CO zZ-+A}AKq22UWXQ!ycPS;H6VBbNZm1}wT&S`u zmm-tT9btTY{NZ66_Oq1BINN-eNuB;!vIUd%N|7Ib6u87cjJ6dfI3$|5**lkEo?m-1 z-NBodraATdH$>IFp;ns<)6#fQd;4e-17h<;l)#%BmNEap3r=Ag%(V-Odov zd@t%hr~if=sW!%Vp;~_=R$l$iOvwBFRa9Tkd@umE+uc)GvBRv9jO*q6JrjKZgMt6u z6%w9q`V6Q+?0?q@1_huS5n~&q1mmdRw>!5wKIt0vhcjfoL&WWB+}zx`a~^%m=HH&W z%t)~O($eYUlR0q=2fbkO#G=^S)cGH>u@MISgGYz|Wr6-80(4E59HdxgAP10;(aP#o zcgUP=ri-`;X4uAD3yZ}>nl&{_64(1>`yHltxZbaUj7uDJHi+PD@j~x$%rq7r!~4x1 zcOw0f#PBDaWHk8yT7l3D%HPrm8fH46j`Q`I{AaqwVDR)dBmXJ676)-L3!OqSJRRLB z79Try$mb!?oKxBfBIIFE^bW!!9!OFOin}?6shW-gk`^)9pk}+>(9Le*cGb$xH#d(n zdxYLJ!@gibL1Cqq3nj0o8v?j5vE?#2tN9&!Tb*?C1ru2heH3thvx{~3088oZ} zx#Pn9Dnm*uye+{3@-L2|( zsqj-QJiH8G>jI+BZq)$MQEgWp4c%eN9}+v|`@OYGcRQ^rr3}O1oSydu-WQ9S=Z|kI z>;wMAgAvCOAM~`U5y8>wYBV8Koi7J@UR^&;UihgSUe1bzeb)%#EH$lB#Zk+*(*Noz z#~g*lq|GzZ}D6g@z_ywSyH+-4)ddJ4Ac|H5s=v5T5S{lVMZSbzrcwx9{KADfjp;ph1t& z+n=bLcd(Y=a-6Poqqd8 znk@apBB0=(R^18#cqa_5U6br6tDcI7z-+arA#JtJ!2nbl(+l|^N`XBmS`7ydenZq_ zJQ#O?9>5%pXZ+h?&j)jZq z5IzIy88^KpJKpOtL?-xWd8H;03Vs|l@^>mB(Bae0_XmM@rC;8N9nq}7&Yp^#b(Z|0 z2m%>VoexNvl&cKFE)WdyFG%yJu0oa^n{^~X*v#&coxwqwF4NI9I{~H_r!hSnSAF=w zAp99G%eef~P63Ru!R*|rciTA$0{xEbI+3xMlGPqw)ORmGq2BMF5mutzXeOY)j9#*= zwsgFgVFt+4pwGirQrz)|=ia*eYgt^5Exp5@yi>stym5Gt9=#q!vAIYMsXtsq*;+4g zFtOY&c^Nao({j0G7A5Tcvaw`&@9{ z)d22u-+j=4lQ%vclS1P7KTjUD^p8pKo($?Z=73@dQJ{Skg;?{@r^A@^23k+QoKL<- zWZ0;fJq^6?>rY(IGd|&vYq4WzwrNLCab61xV)0=&H^U-_!@Um|8HZ)#kBVq~yWQ{N zyEo_=a{BZ#42$Ld722!qK-S1awm%o1=R4wB&u@~V=i4#HU6$vb75t0mt=0uMBsJ!H z8d1-bI#r;eEHN3WBuvR?O_$C6eMYN(0mJExl!u-Qp}-_5CJ9!;7wtZ-Qd!+i$C%79nm@5=xMAT44T~HU3KQ2m18TNb66$uF8@DFh_l2^N*^|Stxb#D(&>xCY z?^}+zg8VcCXrrXN>xIs;+H7&|p-4t^c{+cLRqYt`W)fi65^&K?oTi35Oh&z7GgN8$ z^RU=p2_{9ngHo!GGzt&t0)Ky1Pq8)}f`T#urH5V+3>9@xokp=se)zi2l_cLEE^NYJ#PP zfd7I>vQhPt=xep>^*6$<6UC-ayJvZ)G8dL}*#qXhC2F%E z%d+3_+G+c_z&+Z2+oA1+LD5$7#CyAO(Dq?`wU`Uu=tbFdym8C}YT*^NZJr$$JEW-k zIh)ZfKGdfcQ+6|(GH7SjXp>x~LpmI{L3J3Il1)Q{fx|l-K8vwdt|jn zHt9P4-YIq%XNH}9Hc@!JX|3z5JBPydcqU!~U$R|Mt(*&pYZfC`g%VMSMgtTF!|mqV zFF$2^^p>kJ$C%M?U<^G<-*05%+u;WFzC{(?5grx2VyWt+z_}o7rPc^^{iLbdSbnV1 z`+ACa={M}8Z@=hg70~Q5vDY0Xw(2|f&K*XR;>3F94u;)am9x9i7@(zN>D_`c$o~K( zAX{@AJ$r0EV7oBg&H>(x-6?97hnZr&>h7NYtDXp+qOe;Sr=hgW0?sg0T}75+sq;N4 za9Zq)Wi)l&gv%@LpAnsp1fda0mYPQ-qA6EShzsDBj}KCVsE1^B zez`3yYOj03BsA!#<;zJIF_gPc&8Gz?gb=D3EJ7Ki`Ry|?{xHb*TgJk*2kHU-pAZ~F zuOv1|(_%h~ik$&At5o3_+M^|3o~LYAZ~4M;_G;GFGj8wKmYeC?KkJ|bMkny-^k-0c zx%#9cZcIF9_A#uk_j+bcET2lnCuz zou#D-ODBp!FxEOG#`;=#H)~+2nb>ssitIHPU8F`+8LK5t?=3A?GlRP1)uNQN%5LYd zHR3u(wrz^`Zkrr6o}t#JRp@l(%-?Ue9QQYCx8}d?wWyE0^B@tt+xh-J)_rDY)^*sZ zCzudQ?cJpLHkuyLyelBw&a0vlOwd6LMl?i*_%C4`+lmt9RPJBI$ z9(>i&@0WMh+2fea}onU=$7mBJu6y?3T{ek18TQ`Fs^XK6BHfPsU)hg_f5 zh0y{;G%~(00iw zO8dzu=iQFy!Y)7EM0+sCJ+6!GEq9xH%`B8Y7IMqcg)T?yqPOn(t@HW$}v zaUd-%3Pf&_4qsr{{CcFa0r^yAfrV|k)SF>dWjFoz!W%nm_7jLN1NN=m(yx2k>4_^#U-Rt7^Lhx$rjxNFMTw8Q&%0h{xKFr~{7#lD zPkFy$>2^?rGkjfZ9HU5jj!;&6U9oR6bD6`UgInmJ3ZrF<-v#Xz-|`N`tQUCW@_JZ7 zWU^Q?%3pkq;<{K(^0k?KVsB#*fC}O@l0sfz-jI>#-7%kyHoxE4koVpWd4F6zW*4JZ z+0t*DNl+M4e8zc0u0!&VC=g3WKb*VDdRMo=Qcs_tBF4I49I`QYhTK+vWj9G z@h{PN3$*{q@Qk*IfCY&{&Dor3&F)~7!FaCj6Z!)!zUQ6tN(OZ~6bF6(Nfx?+^5)6J zHg?_R!3i91s|9w$$|FRFa~Y+*HaR}JsGsRqPe|R%YwBjEdkJ1oC$dC74JdPzn9&=t ztbULzRf+u$qIa6D_7fzCjKi|Ro^{}&x=dl|*EI)At!o&sWhaU=k6O5K8iHBE zcXl?s+85nS!-mG%>wxEZJI+S75P7P0aR2#GdZ1CW9dnNud_Ayr-j}&ayy!Fs`79it z*qyXC8}RnB&;GL9*&dR@V$Wn6*+yQacfKY$^!f(Nr~YDYoAHnN>B{P2yqt3B_ZDM3 zb{F0VukwC9?nXmrQd}Z@!$iC%>3i?tp0a43LRT^tp09zm!ekVRhyRAW-w-kx+}Bsx z#^pQt)X(6hj|Qc3*H!O`pKvw0K=FEL63=LaR*0IT7_IS`nsAb@oR1nYrEE!_YPt07 z`{bC|Mf?2P30K81Z)=&huB*K_()xMZH9Zavj_vF1{Pt|t8*9f+frFO)INRs+#l~O< zJLEbyH`=u)RmQXBu9PK6_%EUFpQ|{#e?No0gS=L{Zz2QhS~|TGHoaopoUXJr|4M!$ zX?K1}68=tCQ1A+Vbo{P)ab~U;vpbO`5LM-MTNSQo1ar1*gQ+4&|IZMKlo0A;%|35B z5T=rd>ChBHz&j}Us~tMp?$iUr+*gXGyIWOVyJH^O@Te_5^EBS`Q+W%9z+<~-p|3O; z&9_5o@9qr}WIu7ho4I(BO~BY>m)L12I_I3#mzk*!ki>+&B#H*y-9-tv#ea32=ku>$ zyNi9A$M2)NPu$$^SuRLA?JssbfWUA~l^L4XwE~5u=2PEsoLU}u*bE}r;^-_nw9lob z5FinCz)gFZe@^eh`=<`y#RzwjX}^n&FvI9}btKSS*1@j#6w0{z!t)Z10628fWW)`9 ztZ2~v+H?B_+G8B@J9!_qXHkLYGkUKY6OEObD6%fNzD5iLDz+in!q=jh-CD*yhp(bI zOvKr)bkec4IREg*z{*gam52#p6`2Z^q?*N2{Ts;UNk=SD&bu{X;wdbH6o#AFeeLRbgwP%==n_A>Q_JE+xN2f3AFJ*z^#*2B~8doujf%%_5rE(o2 zY}{l1_KUK2!@&AF?H?WafRO@-s0-eWlpqcU|2~}nxM@&pcVkmfR7{A?==nRt>ym@A9b-q+pp^n4MUn;ZSpPWkWYefBw~@-<>i*uxxBJ}!>kdcjbxdW z%G_+yY&yW){5;j5#*hUW9v)t3u+og85;{FSeYogF{QmaxXv>a%*J3ns$YeO6cXKe^ z(X#t1r>94V1ghGGLiKL~A^08SQytZsFIpBDE1@7s7(|9RI`LP*!k>w21bf8rw7o%y z99ya4pn(aP=1`?&WxWYBs%}^s5M)Y{;21Q2($C5*B`lq&fxk zfvg}7z0rnR8Lpa@0j0?&@>EQ_O$!1Rnu_P5yM}gg5|_9s;q;Y54^LFV5be zV6@O9FMCF8gxC2@iL z)@vB~;vaVpJx0nI=GP_@=_L-O+kh3-%cvwT@4K?1MKbrjtHY{N*x(7Sd|lJ8 z0=12jAvv``c@@qW=qK zf+8NzCj{QNhwZnc8}+ZF0^y=*@E2~Im#n$D4@~)$@2bIkiMm@gowVyzXwiS|i(ElM z{6V0Gc-pZpQnVyfz0ZLcMpO^<GL(~JL_coXz%2MahH-ezxWnX>4{rEM zibMpGPLD=ZUEUBU$XhTjHOe3&CI*@MjeU!P#UxK9;8CcZUTO77YCasgult~?+$+HwwOpy zDKmh-@lp~)M++kTHJ*3U5i7*SeA!@2BRGf6m|vcSY$G2FtgeVe6mh9#pNMzK40e1R zm>a-*6<{J+izfRNVN5b;2U(qA7>%j>%t>8&3OFEJa|z8YN2lu#PMWCdIWD7oNqQQw z;-ppJDvRymqGVjtpv_PX0WTPhE)=ZBer%8*ESH#3loV@ERwpd(6v7||9!1?~pKsCr zrK^%8IKxgrC+1oY$-I+ZGgLC&^W}ao-9wt44$YUk`hY3T3S=##6a4lOH<}#c+qf7_ ze=^;dFs8J|OUg_J`tCFeP2q1xw`z%5=F>XaYNXi$0PlBmZg^})IkP7tof;Zmp}bJf zjXg&;Yip5<+j*`A%VyGh7sX6xL-L!Gf{5*sDGv}C8oo}lDTm@ly*Q$qmza8><7zwW zTbI0h9akQwGHuQjNNJdyQ`6AYo%IV316veSgLXTAh3D zG2Q)vwZfO=5wH3P9{=yVyGNG!6pjKQRu$&T-ebQ{gbcp1|2{A69!Pulw*vPLdA`tH zh{n@`g(&IEhXZUr1gV)lNZ)U~?g+bCdJxx0|r2IMkO|th$oQ*rt;s znk3?q1Ej=4s~Zw?uhUGKr) z+9F2PaX(vH7~Y?VbZ z5)>EVaoORfp8!``hG#3yW@csw_Qu6yjL|xtXl%|dN0&E!@()6H7?uLRd`ijU#z|fp zuz=@hb$drAlA`r3L=9h|p$0Y5i*1DAvSz=K=UafiZQNdE+dT>!CCvqmF@B;L3Bsac z!33PD4}??O_+%i(lW9%AT%dlI-gU3#xg8iQ8^7$ps4#RYdXz;}I&x;#pt~X{>()Ie zO}q7HHiLC8W(J)6A|)j+>`7pTRqZ>jS!mb5=C;<(3Q_t^qcJ&Bn-QH!6Xca5avC08 z1Y43hLjTQQ)44V zTF}H@Uo6y%p6eopjceix{qBcHTW1LtcLnN(`FbJ&nceP0%zE_QVr%vw{H^6P;hf-} zs#+CLZANB{ncfoJL3XB<)H-D`c*vRbXTa5Mxkwj8RjV*BSYns@PdwbPtB4c&-?2=> z=56D}3vCEwRjo{)UC_|b(ZA)UVa|=}_VQV%T0A~u8Q5rEu~ro!-=)tTAPtj-i%8$E zsm~Nk3+jHTI!}{|`5c`^lSicmWfcIpVaDK^n+*=^qTW$_l1eMGp#CiwjicSa@Pk5L zF&Vrnn0=3lJbX#->okp=B_YJor@D}ATjil^XsxIdf02cSLNOq=M%z3-^&9G1xHLc3 z+5>ZsVmfb}I2e@&w-}m_a}-Gmgq_J3xM$;7L)FLOk_u%JB21Xkqy9^sYqjghe)Y;D zOr(u&II6L3Z+^ZBt0S$V7Q?i%LFp9tJ-FqNUEfu${_bh#^ix6k;dqGeF=zm-kFYRRpR6M%c`s;+%PojZtk6*u` zggLz}F4-w?1J+#=d9}3{duGacpMZ*$a0iQwgblQfCwRyC8`H$6Nsb+7+Gm>+nKF#; zOv3Zj)}8n4EtmA6wslJ?)lCn$b*6L!QR#a1z-7McL*m1L(eRowiPFet5bcnb|=0HkfT1c$k2T4V^kr)N42 zv144QCe!D0#o9u{y2l9_9P?EKU*`UVG{6COp^V?YlaTO4*7@ky+FH% zInLB3Lex&kqH*;69kyqT7p%{^3+4PDX{~*HkK(5HK?}wW0W0XnB^-?SOV_d*UEq!N zN`|gqATa|qh9@4jA}^<_M-Ga0J#dLjWUdcHqEE03ApGe{1)JIDX8J5mpkh;#W3^8l z&)HyTp$%UeRz$*ABOi4rbmSKOf*zdw?m^@MVVvrSH+5lmhk(Sd& ztpq5NAmoQ4)uVTsW8HK)6f&YdeA^Vs9qOoaw&G`=Wv;2dnIA$?%%j1rPu9aFz$B{w zi3XgI`KKMgna~2KA%2GOsMO(GynGUo0(}v6V052+Uk`x?^xFZ`!tIb*Mm_mn&vmF z6vFg7jLIw2f^@^Wyb#dae}P6zj;jA?DEy*kX><)G7ajDG`w)(RF=N<>Xj?!g?wUTO zQRLE!xTH$iV{CqL2Btpd;Zw!YPFSF8v$s~6p`qZFR)dB1Pw;`-dw*$rj?VBT$YiKO zXEJSy_PK?g8ZwyXzhdXuGV3>yPVEHY(`nIE(g_s-DMhl~spzk>*Ae_?0D^*oa*^;O z?!k5STQT}KCeEdX_~C`AOEIO2EYuZfT9Jz*c0RA3y~msgSb3es=7J5}>*B zz83fGlSxC2SZnO0A+}ntT1*E4jv0YUDoL3*Dh{u0NI@zU$xdANQJx$ z_t^O=8&c6=`7fCA3e2*>D7};y8m-WA zp%(EN9l|3lU*Z>2&B*oe5ILGXS5hSP4~q$_thkh|2EJ?)^ry}IO8T2}{K*%h6B{wC zDny7yxb?mwrw|SMgQ0yO29OM449x!lAAhB# zf7JBlpaPhSgA;Gu|BmaGA3K^Dj4G0PNx~3&_!@7B9y*$r%CY%LBk5N06dx zB~zOJF8dSYMczoJ%XCX?iS=Ovq?ra0UfF1&$bd>IxHZ>(JTf@CnJxuYRmeYrvj4EI zU4yr(=feR|8BUJ}MgXj}F+beJ{lwK3&1_HfpN53K zF2r3-n!LB{j%2_VfO^1woL50AG*UwEpXN<+)!UTJ|ItKH>qD-}mb8&r!7*st7P+xj zACSMr{x47gf<6FLL1N&!#c==Y)4p^7dSW^Uf%(@G$?T6hNQVOv*yC)erMBR)qn z*o*Xr#6Y-YzLcnXPC1mIQH^^J5^0TYx8J0*`0?EDPNs8V!@|P8?+hWwCnVfXi6y-q z<)Cr=xeNfmA;_{vu>ef!b1U}|cs^tp>(=mJ*)@*(R!)*(d0tyish6URj7)!r=QH7Y zWVuE?3_=j7goFeWInU3%T{NP@ZU6&=MEJz$a8Lz-_f#g(-W2s;#TkL|{!skP5T6Vf zC72grH{!`;Iy0e-hGlEN(Ou?nG(a&SCjjHd&qxpG#VGoJ2!Znb@2LmIgSH(jG^|pf zK#>aqGOR70RgM1z0tTq~vjtTDX*JvRgUrCmfKgrVjwTT~ZV3HN0=ZEEByfMNz?xLg z3gpJ9#_3&-8y4B+`LvPAeoxx4WeOCLH+#o{2)oUB>8E*ddAYyGC@Mo(3e)EaNELl( zc970Ww~{Hb_!uy8JzJ2LwLFJ8iwk_^BCtWrqZ@QGGJs@LaUz2{5jnCgh2uQmxBT_> z7Teu9tUF(wcHwBRVxyUi&YHFnl$4aPW&_vU&-o6Pblcy-9EOvT7~F1u$1MZ4>^GE+ zc8wN<*N?MFa0ua1!5ebjqSy!217t1VFSp_oD~Fe@xo3&14*>*UvcHuJly5 z*{%RtQ*{01_Nkm7Rfx1{OdN--!vVcX5f)39OAbG_l+6r*gi0 zk4e?IOGCg$eW?<#*H&$pe*LH-%w`AHK9}b{=x0j1eQS7fCqj-gWIw)zBO~_B0l*Vu zvo}ra+H{d=A?BbhfBIl;1dIX zc|Sp5kd{bbP7?rcpeTZpKup})GWf)4>$6B-v8)__LJbHm>=J-n-E=`NquIaW&?_-k z53R*0vd+xTMo^Iz#`Jg2Z{>8p-0pJ!*F#YFx?q9Yj+tbXX%FZPkB|4qkcgS-)yOu= z#X=$JZ7f3x8YeK$fE}kFsmUV84!|m7{J~MB?TaP9D#-qIqChbKuMPrsbiln^bLvv1 zR`U-)Wi0L_w5lTFBpGlSDpVLn*te3C+(oJxH~L4ohT;K0vim)WeNr>ZHAJ_MUF&dm z9QSysnsNNMX=j4d!Gf;I0GKuiV;b_q?uKyXabZ%z8$KnVL_zQX%;g+DLz{Jy)mzah zjXM$;r0yn{_j&fh@+EI~(Dd~X8S%AXmLXSitdr; zybbiwu6SnoRs1vCaRR2awzjsMw2}dqIK%r-S8~X?j$P35m*kR2M0{S(Vi+BLJ=fAw z1Xvb@jaxU*-BTwETs4PN25lDdp+9prwyXrhs zmtOnEtrkvsFj>@~l=tD4^si@P1&OM)S}{AGDSKnm zg}2YQn2^1l=~}8G`h@KcGHLUzoo+Ub!FZ9-2x_avGn&@g&mRD1rojE_=5V3T^y_)0 zlAR_*N8EMo$8mJ<8Gv%wo~GOG0ds&-rc$Bs<$y3h{z-h*LE8bZ?)Hp9I}?z?mo=Wm ztRMgkGwej7?F=xCg7_mOayS#w3`~huCj#94`FfRc>2`NznUQ>UOA8M6nvuX)44xTg zyy{wpu*z3u6_r5G=ey4x$_b$2DQ|N1RP3N48}rIl-ERXf>3|&N3Cv+!g=F~H<$TT& zPVcodeu^}_=xt^*rMOe)w{q2+L&UwOK1*#MkNDBLgy8&7SHIgT_+B}M=m?a~AJEBR zOAQKYT%=(WuLTx>b#Qz2JiAE^fTKNsY}?|b2}7WOcYg@9j8`^79DG9HQDi+QqEW{X z9gtyHCp$gjA{lkh80HbBL4~~>dI}Ng#0uh}iu4J6uQt5j?A13#dDee*d~}|=!w*=) zw@?ReQ8UU6*D$kIaC%1t#~c7NXBOyiBV|*BA+($6<2gvBnd<-2N0tGo!S>+_19m}7 z$N(OTi6Z-$Pg1r0g#jyL0O-x_u!UdF+qE5^$x-{8Rh?3~;3Ko*$k@mECMcdsYZBVw z0)%FbH~!PLg^BeRCpifd{W_NMyS!vB@*A9keM{Ks|OVKgT95@)ty&nAczf=v2IQ6BPm+uW%J$lGa&YXMocg<>EDX9!= z%hO^a^DnoFK;Kic*8JkUWb1D#O_<=nc`Ac0EonsH>R4EShMoxYWMB~J9pd=v0(5v4 z6WjzG)IR{(-G|j7j@44QYVNn2F%7D?qH)VX!thlsgRx0P7)H*YdC#w3PAW3`I_H4LD?P`L zOpX}9js3fHMCxA)#1gRY@x5Oz%ZinE6|IH@-eN{zZfIH?J3#KwUp~F%SyeC%u){2# zBx^N6yK7f%zZqcKN!rt7VSDa?elJ)D9|A|WsMt4;knkJVO7YuwJ?|)22L#HPwao8DUT$1G!+N~ ztbjt28DW6jR3S$tC&WVbK9X^9aWQFWVSxKh!45t~%sFg?{G<}ybsI>#JujH!m2paG zu8{qUdrHX~64y)J+^)Ic00cy@9}JsnsR~}So^!vt{usIiFiyG#_#eQqGH5TC9*3UhVVgTZyv8$IzI^e4CVY_09J|pwv zm*8Yt%?x&4H7C}FAMiD|zQh-ZHL1nui0mNmf^NfOAox)a4z5HZG8dn5U{tC;mu~6< z3@-AqwQheiKuHM~&;=5TZ zK*w7&alg!`dAuZ-jB(&7*IA@)R+KzZ@4;?TW&db|!{SWyX0N!3D2bEZSdyFm`V#s#v0tnZ=K8Nkt6bZL42? ze|o5eyiAgT0Pg+newedZNMZrJv;tmiP48d#EQF@vCf|NGpWNiqUhphEZ%RCO8@iVz zK{=T)9dA=?6|gg$`-QqS=SNHGm304+7{jg!Z%E?>fo)I9G#lN}o?vFO=#HIdc=H5n zXOC7rv2T1lEz^m@9FqQ*waQsyMFm_9+)}u6brSbjM*opC_l_Be#ECHwM5Xlz?wl+S z`5~2Ij8qRXlw4#>v_D>j{NFg$Z*tM^)Hu{{{R3Y>#j>=cxDD2ZqKoyYq3OVF&KA!3g$tv;SaZDmAu(J1!3k?8~=vl*`7sf)E$fl+Ht>L@qwFGdEmy-Ah&g z+X|nYVODLNZ7jkVtrNq2&Z4gpt|NfAxt6ER;2hyhZ2zfc1f__DCIVox!O*~-=kf^U z6_4Hv>d^>Em#quITN3NN>8FmiPVG{m&=+OazaaLP@?4xIMw8>?%~syy$kBt#qm|Xt z_M48D)IT>t2bW8@dj}<9wlXT`Te5rYqsH0l?)nv5uj(I`JOFm{VWDbM)q>zH_`4Q% zapD3#ta(fH2-Q<=2#?%Sn~QA!k(Se^Ok+Oxo|rle0_U5R!3r!?q>>V6D4XE5FgiK{ zOztc9a}_)H?8iN7>e-V@R%Y0n?*quMO_pC$a}??JCLjm>5 z3=SKI`3!kiCEg;vchEicO+fbA93)>ecPskCFBM~I+94{qoRsJ@{CP}(yo*QfS$d1b z!`=$kV>jRGrpM-y-ecAN8v;c(uJEWf?XFYT~W~MBZ98-mxSGwhny+`tgPC#OVT!R>bZCxA!cAt@oD4FZXNgDr2NA zUTF~0DH*|Y_jq_Ni+du9?gVg6({^Hp} zsr0`zfuO|-i({upn;lT2c>$>o(MN{SXG`e@U&s*!FqnUkpya@6(+<1GoV)UYZzZqL*YPg!Y_~*Mh>zVfH-g@s1k(KNrp)h2@$!sUznz2 z>?9y14WK_Tw3&BQt+Bza3dMktrC6k&^NYJ|$&ZeESOySl4W9ut`;_9-k12hD8cXubaySuw5 zxVr=k1b24{?ykXIg9Hy6oZy~>{I|(B^Jd=rtGcSID7yQebGMzf*4{UF&^_wDP*H&> zsl1DS@Id0*G1*&&V>*mhpfK8r6ERpXveJ*}LCC`YnA0mVBVp=DtAGXbQ{hvlk!e4M z24^2TVg-8?CV;{hmok(4{ObBN9Vow_HDk1ik*4MLTL09Wz10sSA#qXKm_Qq>HD)a- zOMaLRt^uQYjwlAPfD+OHl1m!7Wd<+AF>(^J*-+Kta}4vOd|up1o{t>pb7P-s@`t@4 zto|)>oCLF`2i55J^aymZ3QeX$9Z#w8NIaI}jSa{g?x0I?s`f6NM=_G<=@}mMk!tv%P2YPR*oylkFpb_)*U7&GHGV@lQ`G^l74QFa^QLTA;(50@+C zuXIXP^IPm-o;w;~1J-AwiR9HU0?weG-vM2upF8C{?l*g`U3nH;s`%?Z!J2WlJ7L^) z7>)cMV*Z}IkL#G>n>S$(Tox%DV!R;TXk)dmf<-VZ2SPY1WoYxTHpuiy&-YMp{b>Dxs6PAjr?A_J|@n*cHlM)|cER1CqSnW6+x(>EgZf z-W9(}PslwAh-TQ)v5C9yn3r~R!z5;}%w{G>m=DBhow?yDG71S+Xx)pzvF&%;d)~>ay3H`mU{o8AT;dH z*_ln%##{is)}>XFX4@;A#;l;Zvnzuafnfk-h-GjcO7dKNtLkv=T;K5x!?-3G!GM)9 zsrw0ct_pE^NeVZJ1##ql`oquF;_wHWdV##b0h?!$xGu8wqwS@S8n3|P!~GLkkRA2W?<{l<4|+; zBGT-D3*T~Dfm(|Y=_~vltYod4iTb~00RVTzB8HI|haJ9)XRZZX=|C*IX1wpTI7N(^Wt{pw zOx(=M$6fYA@-$))p)SIg{oFVkv^Q<8m;KG&jib2aa}}wCeS?LJ!xF5s7ynB{Dk2Zb zPAwk^G|CKSV9e+Ej>M>IT6cPF$Q!rf-TLvC*x#dJgt%13ElM_Z8k0Iyw5|49syV$QfaP&0N@u)&XRjA`Fn^5Cg}BAk z6hHbnFdi?$0=cnzu+3;SSP-Vw#QAl5A8WIJU@u0dofoPTJLO@c@J)wY-AEF|M@26J zrFJY7a|rwowrAVWQx8(dUDM?<U3py>Sf}Yt)*^%q6gO`z=3PBrXrbGnsPe;aOiZD_%GZk}So!G?5l+$z6 zM>bWEJ7#!_qtPoL`c&2<`ooJs`k={-g>;(2%@OWwke$(FMAeQcIhzBK>k{`2$B4dv zmldgu`8^VfgAT$QEt4Q$?Ddb=p?#A1s7F~#SkdC{pJ{1YJ`P0e`Yz$0_yiSl0fx#( z1{kVBU85>`odCr4kNTpbfh)5x`uwScxJJ!_+^Op-1yb@{MlCHJ&J{beGgG<9^Z;6n zfvBO>#0Y`X0i6S3u*abyLU{jl!csm0x59tGqpEIOX)FF@GCj<)9Ra^hL=&vGao!E> z+Ng#o9(|K3udHyGX_ibG&6YOnO>ni7l)h%|2Up^p`VzNAVK0a|VM&Sqj+;=46afk7 zCeP))$cF>9Kzvj6&-C7^?QZm1#dgxRS@W#Ri)o4VEek8&GVCkMu}{k?vnG{3`+biEqlB^Rlg+Q5pFoFtUPxFtMqMLVMeXWt+=;AdG0 zh$CnLF)?{$S_)7p-iQb0GX56XW=6-24t!J7bv?}=R$y7zP%p%c#0Vf9MG72?a>AiW|(mCPIkEBE^Bwy^c^wq=>-q5j7p2 zPaHbw;9FNH4Y>JX{bDCo?8?oVv5hpO76qXB)jB~N7yqwp^iO8W2aEWVPr2a#?@R>1 zkxV!Nazv+Enil0>6vBV7i1C4m0GF!Tu(p790Yb6C5FdmxuxC7fZxmfOcWlwl*oRtmMc=sG=bPc$W(> z8F;~A8S@_W-)!LJywbO?UjQB_MHS<9 zg}*BXc?ljF<8`=)dqV42RK|mLwL5CYy z=vg25MjS(Q-0$(qQikY1Cg=oCgLvM~w|kZo!0BYY64b5wCY(Gi2HJT4(|$6WcRro@ zrWXo@me)`Q<~)bX9v=|7l5JiMPMEz_h`$cf)WHoh4mB!_22AEsF0hAg@!UIhrD{_; zIUeLjEuxH_&B zQfHz)6&an>7y;Tk*aUQ7=u20hfo22zdP{(!d8?@QBl1%h*rxN5A@B%WK7S_qh(ZD$ z(!#{#m0!jDmq@#zI>MMHG`}Zqe1r!$9879JZqT3ePIA^=F)J-41)5iKG#~+rk+)iW z2qG2Hk0Ioqn9q%tSxtT7{XCg@@Sod}zg?L@%V=M=xkJrcmJNlWn%DDG8Hq>ipf0!H z|I0^{$z6_t{g}+)5G;X}g_^k79$>Q^$J7y={`dy;6`-yizkSbFVV;|pc`H5F+=Kb( zT9E#aL!xs0W&NU7s5q?#05bB%gpQec7%-~zA1*3pjQR9{!)pBCMVKH$vA+JaEd~u0 z)ur$WjaE?bo0Bb94C8Z}vcOGRPxoJm8`!!JDN#|t{A!hJ^8_v- zLx+Gw^do>Mt3sE`G|5pXnxGTYx;MG(K`yQeD&b_CDiCI>`Foe*MSh`v@dvw{d(9q$ zcFoq+-o&tLu=}S%N=nrCkfxU}=idi5WP_rnTzR1orV2L1PulCnQ`d{;Mmsq5NZNki ze!)%lwPYfV&L~{|XgrRL{cQ=z)2UuH;sqHiUGDs)uTc#lJDy8qBEf8*5s}$sYEB#M z$y!Cc^$Fuqb!~6*&C2MqQOMk{$-vT)Clg?$N;4AAOHnpHj}yd4w<0qs2@d>fw;zX+ zB)h2s4stxBN%IrXHHLilpef8vLA#gv=mR1?fU!E(ot#s4f2aUztcdm!d;4l9ZC+JY zYk^!3P81Itg}9SdfR_A_-j8Iy`xf-fsx?*tPSgMyL79Kz7+GT;NZR?8cE6fMx{w?u z)$0h%wfPu-q(Azqe<$Pc+NUPkqBEg}pD~w_eL935z_yVVdfr>tCkLqf9_qVbp;^)d zvyg`K`?qJc-D@6x^h3z{OZo|K4#eJ^Rt#6KP>lj2b?HqE#(L=`fP^xKoF~-VnF$jE z{ACai!Z1Kx3y^hdR%%(#XQ`3ksc@!C#xC(8F+%HfRU#8y%?0x^l~{sFz_5x5j)ZZa z+f>2CwV+%EiWP@XC&+*#51#H1X)qhLgdSPS$x_fZ&?nWb;7&O1o|2gG5jnYc7werT zp0QXtP2vGS+|S|ujd*b`ujuAUD!AOk(HRkjSu2b3?eB&Px0ZaxhceBrb~&-44< z+gPqvU1nlc-w@5vRq29j4e<3Ki}{c>)X(umZ&Rpnb5udn=TJfP5tsGPKN*I_psfI+ za7Y~V{L0EJ{6!%`8V%an=9VmF6Unb}48o|)K`t6i49hc>JhsEc;WDkBf5IdCeH)qf ze6^HuLYWUA6fdAVso_yUYfZ&FrBU@lC`LC+e;S)ml94b|Lr+A?N=>zaCz+H^Fwq#%;8mTbfKGkMf0`)4iWlMn>lFGQnTV_EKBu57m_ zVuzF*wDZg@St6*l)fzyX{d2Zrx#U?#6NZtO7xx%IvWw!vlMAN(2qK(_~RafE?7p2dUk>cIU%ZE<8a5XjMXT8k^*a8uC!0#gt`;cWAf}+f;o2Ieu`M=c$CM6 z=^rs?ql{-h{`tax2+Q+{6q`Q9D5BrO)%WC-z*vze@fTW%2PW!bU6XGvJ z5Var5jtYo`QKwtP*c)UZG?XoIl)^*4retSF1FdKSAwy)*@cV^)13@?Jw8TcNl~_d{X$-VT5+>)dLguY;fe+0IdyR zd}hZ5Kmnls(aH~?PNCCSjJZl+Zyl5^!-8&(t4r&d1jxFaNK2jYJP7X#i>k5QHTCPS z>+OSE11MD|Ej+j1~Z$lZ-`~cD- z%On5a)LF_4bp`{uSI#{A;S|p5NN4$|*{qRbN;lka`n+KITX<-Ojkh%7Cz|_8k>02x z%Lz93_pNc$;n71pb)HPrrDa$FQqZely;UHniHfwbgOa)bsfFI+>9?QP$wa)`t2ZPp z8ei0xqOJznE*Aa6L)qs(=NYZu6;Vf)uWJ6oQT|~JdjfdA6)|hDMFr4zs^G`8x<*HH zke?_>N`|u8A8z%9gh}@TbxFPNy@RFmO{q4i zLOB6zR_$j+(N5*)xJ zfBI4<5;Il^pGaO;oW*SeeX*E|X#J~Tasu$!(3C^clxm1{|G71!dIW#ZZglOL9e%Eq+*GwxLelrd z$Lm-}TuE+Q*(6wonT^7~>kl(e>taC#YxRgwrTyWZfi*xZ-BsaCoeW#xvfA3efrc-r zj*n)fFKs{wQXMUg#^)S|Z8{?9QiJLC|8+S+c90`@(F-Mb?BMA55wV2&;7QLL?$eTq z3x763D2_6jz!W)h7;eyVXnRgvV~A?htaHM?)5p60lNK+*DcqPCr%V{^ykHMZhvluc zoqvg0LE@x%%oGMpw!>Oq(!?xbTUWy%3I^PKT6H$xk zl5rbTJPahP->f03>(dKs!}w6EJ?gS37!qi32I0bJ21z0SoiM7rDTZ%;isCCAA0Ly( z(3BKNc8E1MHQ}0#y1OP=hM|zuNWdib-LSjkKj`CXfA~p`gB}hY^tKft4^@3>QgS*= zSs~BS!7SG6q;X)!(ciD%R{BL;UW&Bu0^ zx_9K7dAEh$oJhm0nGGKrt1HKuE#S$wM=>?oeR$IxAQPp1d^)ys=03On;Y`6rmaKhl z-ZMfECkjeNq+xCkrO`}-y|T|iZ27vl7#M@Mls^x`=YL%OtCtPb1LlFc)-IYAPg&eIDBUVC>xyI zL0z|dX2(8U4f7bP#HC@Wl@wN=8!2ooF1b45d4vdDZSg?;RPPV+v=9rb;htU5${FzJb5Q)622?q01 z_ZDoQ2BEa&F$4GRjk>R@rEx6pT17(7BA)cBx+Z!!DTF@!6*r;uh8|j$Bv0eA1U2kq zf+#$Vblr-RHWQT1ME(kJLTveU^ZB`O zW5|^qhYC(&aCB~<*UW%TscF$}h-dq2LkX;oe)}t$xJqJY!MWc*L?!!rOcV|2vRlZ1 z(KRF9R^}K61SU9S-6o0np~g!Y4YU;2bzG4RPa2if;bQ`g0wU@FC}h1_uMq_*l*r$c zpjy9cSG8gCnF5po@o%iVM{RVW2fBA`S7WoQQAmB&&;>qb);YOEp2KPbgFb_f#E1p* z_%L=Cmq>f&Dc^mmdxyOf)9z5EbI_k^h#=Z&uoWeNUy<9pNukW{#&gN~43~17t&NqA zANN1Q5?+q%hoT}1m)N-@#gEoLWxMnJQE$(u%E~K6mG-z*x48vJ^^Jpc*RqG}5#8Pm z+~ka7QNc>|CJn_}+K)JqUry*`-tpUwI^&YsOq>t2u5U_zH6nQC<0Rm2)e0h3fikAJ z#nN|zV2)O%y~OHJQoz$oltm#WL9GD;KmYj(R0G+`WUcdxeoIY?k_%WF`gzO0Z$ZYP z$UTtQllW9C-J2vS(r8)Obc?&rp?29M?`7;|kZxcyP(LuSHK`l?XCo`9R@k6G_**=u zoy3@VPybT|A23D$H?N~2<|4UDygHnu@Bhx_0A?cm7F-((3^GWjMukvLWhTB;&}b&^ zAN)kQjLg|P-y%zRfiFs}o^3m8G3b=CmJK=o6aH#JYm3v5#5TuTh7E=9>LTD$(5})! zs${-(NnqR&IPvh1vO28uB$QWU$?kMl43N9aDrwPKw;(T+L%~VJ2G-n{rKYBiikeRW z4h{jg&`IxfrLOdSZ~_x{RU6U>rGhXznkK6Jvp;(*x90Y3dAW>&!s)fFjLhICNe2s7 zktkUOKXAiOhXs(R325Rp^b>w=>0n#O(k~V2M2b_C8w60F80DQ$k}}vo+sYJ4U2++z z(=bbA?3YX(E`3!X$$QnU8Lpn_(%S3b|8&;nL9GM*OsF^@ty-g)qxn+vnOs4=Lwy5- zXh8C1Re+EJ6lJe~w)m8klzLwvT9}E62;kWJ!=>O$XUP2R_nVCpu>cw?%_Qx?M{?2< z5YTG_KA?Wz+bbw38BXWJR1XrfGEhR}^Ekyl>o{QsRMW4JKT>?q^8zwuAQrG7%ORrz z1=%^pOD}qP<%iouU>Gs5IsA8a8K4^qlMq+3Zx6R8+P^sqX`-I}6_9|-e?#$wti;6V zFFdEJ#PJ_m{d^jTjiQ@VZJU?=E=p8F;D8AliFld+3FO9qz&Q*6W$Xv5^$kkM{u`k4 z0XK)pb@fStwHlPy1kdJBdprBcoe9X|O=;v@-}d z(Axkm{;(2`O7}_&3;WZ#+%C36*WKn7$B)JPfNSo61B7MAi}AMf=s*|2kWtYjSm>^V zqt^L{);}6nW_KJAR-5DMnNf;;nUaH&H#7t$y%gkQMGXZ11?SvU{rARGr0nnvZwiPh zQO^OYA@ZJ~H}lDL^6k|70u9Q14q&Z^>zxZsW+32b5Oa6uK`7*hdoYt1r^CNprqkV* z0EGzj&oslGZuV@ZlYg%b?LsalQye-`f$2`^^Zl3nnO5*gm758GHmjw}QQ&m)fWd;0gKhlqh7Fc`H-R7s-v=J%1au7O$|Bp1YYV z)T2bj22(K56buosz!br&6ip!JA<6{Khr&nT}zf?_3ORW`|prsp{4PGDm;BQ;dl(ww^O$>o3TN3gwY2C-PFALhA17vKua^=VK2^qX;mlI z3TVS=Qw#=e(MejUY&DjDfp<=p-Js#+#pG1Agx;^fg7=OeE>A^aM~@)*KJiVDjr9RT za$sh)at6+O{s;k+et*JN$p_r3GRAr=+X<%J+WQjJ3-}Vp`gFuCrA`f8MM}NV5{lc) znyB|ak^s-d>n>&3VxXR8FwV3;CCT|rSTj7WJ+(0`#|Tie+K(>LQzfMe+?q82762l@ zkZh}K>{!tr)MsfKT4bgCDPYhwC0*~fL%Z9Z^tp-9u$4$vu8Z)ZO|`r0I@j%67kiI+ zH+?%g`QO&0P%j9Hi#IPcg1SwlE6BO-n1{6YRLuFySiOd-luK&PIcPL(TRMtDpDpl3mh^*P5L?(4d>)ZVaLP@nKv>UJ1IrhUt zs_xt>H;AlS@Gb+F7`3mdPT=cSbU%DM$vL!Ki=a5xNC9G>4kS~0)Yndj;Z5w$x(@oy zHb;%Ls@|O+Yuj{XhgHM+QFyzhQQU6~Hyk`5bYE-ZlT;gp};JPj(`(KVP$9fNM&Zdny&_rAG^nZdo>giU27# zk77oZsJX|J7QsB79Z>qZyk(cAPI}}ynAGbjIhf3Fy<0h1A!%G%J=x88he%u~c=+Ki za#*{>U~RDp%l_?K6m=(6Ic%zFuch@5R1^NNYGZ}TEGXNRWn=DSUp#P03|1m7job}q zGyVVIY-T?4+@%o@?o3zCwwEFj+o+BotLVSSU+o~sCmxXSn(eL}=HVtz{sV##6+y*C z3nDFHC_dkF#i2_pV8_fS__}sgU-OpF#(CLmZqpzN=X1=mrj`k<={T2Q%t_bfDA8SrAwQ=&-gZ8G$JE-2 zp3abKEB{crr_{D27)I#MVwp^*{@VPe&E@)%#ZGi<%CD;u@$tIBdQw>CR-=tpKLe%A z&|3VF{UIeA4l+29lob;4*mFK7YTUclOke+1dy@W_?P@WHSX+^y{*0l}p2zWo98F^S z1KddtOy;f&$BpuWlfLJ2rW;))5JXI1)yf-m7fcW+$c>a#F4Zlc`Mik<(%;|T>;9Xk z^Ua~^+GQ_a&;5okDT>&%WG^ZoB9)AAoT*qi1CH%}PB;;hPQENy0Gv~z@2-%di`5zw(bX8xI0k;C!v)I6fipnSUnzb*{{n@oeZkDZ? zdOk2ws*Cic8bA7N-Nzx76-~0If4vt@CYIvmrAHrvS4EA4fY5CmdX>0N4hst@D=L!A zC>x{+?@kWM^7#h6rt3;>z|g8M7`nv`$LwMwilrNuiHT{8S-B*BI$b2dgkR-~{6f90 z9mDk<4g*87yVsQXrDTFFyOEJbRBQtbW?RUGeLL2O_Ilh=?ide2)Ygd+oN^EWq6a^f zBeDn4u{sxr7_il(u+c;i^zRL!ubqZsGj#IbCgv@+rR-R!jO~o&edNZmm%PtJ=Ok&@ zFge?MXp0=Xs_gCn1|`WVk2=aF1}d7=H@uZ6O;<|>e-R#pYC|+0ySE7?$ZfStHiTh2| z6A7s>W=BRf&U%+zP(gr$n7DzGH4QDlQa0T%Ns_nm0^!{t9x5_FT2zs#*J@qLQwaA82R;x^QRR791o|3v9| zVWuMKT7E8OTl_jGkbTCp6A8nAV~e>=!q^cH^39rO`3Yt?CK6ripN3y7fFT5nxPkij zX>sI^eJ*`S5(AY6>bej0QfYb718j~k6 zlRYuiCcD@9*|$y(a!yWyAvipY;k9<3J1*1PIk_gSX0y(fXsQSL_x2!1=e}xCCfTPq z3=Y+Xcvr;+FZ)b-37ekM5y9gBi;52*78dPx&tFF{i!RzlNNJ2?faXGgU@{ldX})>9 z(BvKPG@sXRR;SX(?z|&0naMf9bw*RgffGuphd(PYU;bln8G=h`n6}AFyCuKojXt9-~>FpY7P2`Tmm8W_}B&*AkUHbW3EGyij#l_vd{vL zCh+P(1;kEfPt2rqnr~uy^2Jktg#`s@&V{4XovcoU`(e4yoiu|NSKMGi3wdTx3u+*O zk1{|58&2;ftVKWA5*Ck!lW3H=b|8iB*If&NcEv^+#l%2hIf<_-FySZ^>yp%o<|S$M zUVY7vgjqdzH)XnqUv#HzrIvN2Ez$yl!b_MQRRCpo!{9nhz5TkF%9*99FLg`>I~Xe> zmdxk@AUym6yFE#(t~(s~D@X$g595ipgXu8YmjI{M#DFg1u9%aVpI?j*bwDz+xArjddg}crq z&F4W0Oof<}36>r^5QL(Hw-Q|lQAuSbL&cCdWt>O96J__L^|jFBm~z+)?X?R|WNJ-^=9he7H;3V~`76h=GhC8g)c!Q9ugSkt zkP$2#^Dc_*&C8xE*7$p`g0@l9pOQSc7dA0VYaqgGMGW_12!%7&zQd%+VhU<0@=}l>WvpX?nqk;-RZJF_COi5dctn>#=qc@SmjcKv^y6$ zd3X{f2@yu!?BxpVoiS_c>q5~J7vBr6{r;s!5EXBTC#W;)@~D07Vq!xpof&1rq>qE9 zS({p7tJMT2k^Uv4Z^?i*{Ew)*Joi$(B-`_!iwYtAxm-o3_*_6EpYQOe+aAmm?5z9P zY@iquvzuVTzfVQv6@LbPus=y1HGCpb66nr`hb{je;*3qLoQqg$TK0$!H_^K>H99^n zrrsI}s-#;EdOTje!tUud>nxg34<7cW*~z4vnC+u&jSPNIg1yhw|9Yv02)}ZOn$W|J zdHD4K%2aIAeJ);lQ=M)DHB~#&NbVl}7*^sAG`PMRRRP7GZN_;XO!l#mc!L}(CnG%6 z>*`i?4q7$$2aUP7cRweh6B2Q{lGm}G_@~!*S&p86KF>94YryXB%5GF%QqdY#R6K-D zUo5;U@1n3h*2oyO_A73<9wOH+X%M>XVqm6luIn=098c@0BL}xxLlxwOH zK;qul9B^F6mAIZt+m>~tu#pp>5VW~GH=wokg1FayWObEmDUcb@)k3th8>*~~1m?eO zSElJV;0COzR$`Oy`~F&XS!22UI%ISxA-C^X?UGA}_D~(%x*+~yP&5=5HRC$hot(CW z13Tx*oYS42-#F=oMG1%G32X*Z==vP&x~D$go6LK;^$}~Nr4>yH)Bki4k3@Bx&$XUpiXoN+R6(5g5z6Pv87XA%czmG;`w{ReF|9O>v3S{i`^gDshvNhCJkpO}++ z@oI@km}HYa2NL{CXgBOOb6PV0Rtq)I^GyMxBle4*bD*YQ+{}kX#b>Mm33)AiTPh8S zLA~jwOf<#Wu|LOiSOXaNtbP(mjOpbX{j(i;xnMfB?>iYbGaFX=S(e8Bi2DhB-R8b+ zliNW0=smw;%>sMEyv1jUmPac~YeebJneok$Vhd+6`c4h5ai?+}4)&p{C+D?=TS1G1 zso^(YVNdi>3PxA2p3*xa<>|ByVjs6XikdFT{VH0f>fVs+6HR&c8s6sb8Rk<${z>ns zUS|ZS`Ijme;~5jy6|FGXa%V6iozpgT59%iekBzoAj?TN1II3B9tN!ht*k0#9+8G-G05ley!bx~LpspJtD0By?-cv29a7cr&KB1RES_=sGg~ z;Mwr~IN;Q^S90>$mdsdH^-X=H7~N^ur2W^`1QG&v+^XOg3s1z4yYkoE>$52*LwX9m zIXZ!f{m(fG+h-{!N0OvVoiL6ml{y@K?3nF`^f%HPo>(QVYR+9bQ40KwVPl!oF3s;| za=!%gAgAu3{S)^o$>Mo?=tLFnQ@5_#qmn07@Zi719NRzYXmb!X^JG)HB^gvT2-H;F zP(D(r{n9}L%*w*Edw4Z=w_Vt%-9_MBVZYIN$YK_&!PQ4&N}N7cT647vsMlwl&?5cv za@YtXYGs6`^7y&Z%wt@5GxBRVCA5-}{5UDsMnhcYL|=lD9kEi7#BBmUX3$c zhRa#fyy1gX7#i<+o5B_MQi4~Rel_z%EV|@m#~0KQ{^6sbx5l@Hpdai{@cCh3(#Fg8 zgs_Pe4-dN2|Ael*zuonnSxux{>$OPDw+fQx?$?*+R)S5hL&KD)!p~Cmvh%ocdQRwdjC~2+Fm4;J*!zx5eF*Z|m%d{r&o#l`ZDu11d*6QyDcdff zl#YL)u;2uxXLdl-q$C&izRkeNCe@Zoim>W4^VDTY`7D4R_Ac95ioP=bi|5cD^LN0{ z;UwLX`@us%Sj`&dSr`0b2H%e??zPFcX9;vp5_D9X$O=02{VDXj-uS}FTaOD#uj8!w zm69;82hAvM!Yn1KmCr#zYk!&_5@RY-(Q%725#a{}w;1|k4kb3 zJG^V3D{nCBvd5cor7*=+_SW*I22xYbd{GJdgO&BQ6}CJiq< zq?S~EO9%EmO(lNCW!u0#cEiErY>|R)b_;~{9#?$F-;@sm@nzbiBo+%#Fa2r#gvmS3 z?s7iktKuZeJa{nx$HXW=i2=bsk)o7xo4B%(U>O%?`u(@ZBVk&n3Z*OPW1m5WkA@X0 zL{4PNL$nl7s51J+47d8Rz)mXDF0HBx(S{~)$6*{`=}wC)j%qPIn?|oU8!O8touq~j+O{Y( z35L!#sWWzfk8WJou`Jwvm}`sZ66olvs&5!zBa=%_z%33F=C8#a@?NnTSCO2Md64+Y zy!;spm`o`C96OO2hs=ZvqsLn0WgCz`E%N#-^)7yXW<~UycxTc`9Juc| z*^v0y;c{SWWLPzRGV{zQo8mj(Umen*_9ZSh_QLaUgl?(h9pb3*lNn?zISb7zi72cD z4JriwNm=iy<)yWc-5dT^T9K*MvoJwJBC?+D2D$94+HKD#f^(rM>47L-@?w|dznJv5 zjSOJ5>jKm1PbNy*h?*X0 zT4gUhf4xk6D+shV?uDX0E5FlI-LV`da@c5 z`RBKQgF~WX)nx&LG6JMvS*{1(l|BkC`!sMd{Xc)au&?TEZ_Gp-vih6aZ1~Jx4~RBEd-(Xb3;Toh(Fbg{hByMYq9$Ijk{fLl=}nZ zs)uGF31=}+xj&+2XUo8518Qd-+DA=2i{Bp@N?&DlbbmZf9a!G%LW;T|rrw_tRa#=k zBwmkZ3WEIZ$vl#J6mu*KY|Q|w3fcpKhE!!3qPhMu)<1~{2GSv!lTcOnA-S_fFQPqV z4Yge4_cScv*1bGvD$Ifx@3Ab6;#A}Lxk+#;ewY>?vxYNsDNj`ndN6^I47j;6URxA@ zp>jvR;of~BD&58TJORTY*WselV$J=l(*F?7&0PMG$&27mf7KqZRkcfjkNm6R$DB5w z3Ae6HlRnw+maZo}CjxY-j6t#0RE}8GE zk+isT=8Gtk25~X|=)%~@CgsZ_8EJYFg^sETV`xR>l)GgAs&A^(_bYGMo%XU#V?C8? zAr;3ws-t5%tH?2}2slW;RAVo1BH6HQ>u2%7RMX_&*#L(Qmk_a!{@S$IYi@v2Xn9*~ zHB$?(d*^Al7MzueDJ2B`!J_!0)`w5uN$hzX_{C?v&+jz9p?j?pYg7T)8$EA%x7?Vv z+*o5l3t`?jNP#AYvaVv1xC7cN7lE>sgA7Vq-C%m8V>e6sb`&b6rTmre#F(cJ!(Z3B zhCLstnLhb%$vG?f`lY||g|6@*7ReZkDJZSRn_o)7)nW>o?m^LMm8i{_fvd)uG;dPT2CXb+gZN|d$bQjbQ7;*+Q=qLY7g+Nh{)MYsfXrAZjY;_!9~q=7ui za9pAy5uXjI(u#(nKcHXDe9K*@{FklRc!vyV3rZ5eP!%QQP4OW9Za*dcyO-aY<}roH#y#sUUUVIe)ldP6IkZ_^#v^)6fO`o3z?!^uz*paGH4 zR_~!FruaeP^s#hAT9=tNiv%S z{D@f@%4L{`*nF% zs!jnn{~|f}mQQ8I-?DlhY#1{I;m&G|G=t;+%Lo5%E0-wg;mG6)M}2K;tuUI5GJ(w% z&TidUgQV+R%brnH4c{kWDMCYff@K7eX@kk^M4~5$jbW{>j!&Zxr{iNI-swm)h}^$o zj@5c_2|7GS5BeN;_%XbBh1MCLHPliV+bxj})dR%LMMaRFe*~xo)C=!kVHVWq+(YRZb7u15T0_avwEe;f*^)L9^FAa8DOkrv5HL5`Ww znSG8bg=!UP=|U*H?%pa|OR;nKRNQ#Limb7@0LNQFn~rI zI%pP6#$ju1c9X^Pe`4C-{rn$y+JXg1jO~QK#iafx<^P{I(r>WgiB#X1NY7t@G%&;Q zzyC)XU{~oFebSFsiVE9EAtQgtjT+qYnKtYT#Tm17m zpk0X=m_WsKce)Y+5K|*_%?HTHIJi}f|7AuQ9{`Y;y}UV8TeKG+Sk4gs57Op3GRR-E z*h8U61WFbE9Kyjaj28<2--`B7T~X2>u;HC5t63uS|Ctv4YYUY`0H#LCN^)EDKUN7o zul;+M=3>F9_XbGqpT7o4P<)x44H6-ZKQt>A5beE#buw`B1EHe_vsAhc1QrkkKe@<#p5y!LtcS(c?$DE( zPVn=>DH=p2Cp5JULkS$a(4e8ADK;34`A8sWzpeXoaN3dvEKbXjtUS*W6?nF^ z5JcY0J6gKKk@pW5rV|THsgbNO2!Pe~Zm!Tof7S&Y*wm)EqX+Hnl{1Y4S ze4XdiZZMqpY<9Ub)CK?n&YS-Cc+8j@d|Fys$F+O3u*>)m!-m_;LMc?6KR50#wow9j zqDcgqV+HSY{I;M-Si5)IwjZ{6b{wvZzeLJdr)9Q|cPzcE!N;dqg z2`lbXZZHkB>Tv0DlQjl&$07M;QatUyW&sT3(7J_W!$NY22c9{dj-1Y%E}d?^g+}-( zJR<7o2q*=3geLpedEfKIX78ZeHtr`KQ^NtoDixd#9hioZk_3=zsZbdQRL~Qe*HLj= zG?7yW0&x0%q z=bO^Y?)%RuB!3=8V)DPb(d|tCrYp@3j==bNkK@*rN|Wo=@08Ydw`z-ogWyayXEi>1 z49j{3&%~gwuYXz0;!mfrGTNa&>UTZGjYPG}dys8D$h33IF(ZJXEO?vjoU>>|Ic&e} z)$w#(88Z{{FjMZDto|q`k)>aZsN1MpO!bL4SmZ4^X)0sJ%9-r$YPt3G-M?8?zpJFY zrkvnVB&Fgn00e9Ma4>Iwn4)dO=J95#GehZ6Nv2MYKty7d6x#Xc5^AQK_a0b zh)Rmy_j0YI@W0%U*!5lO&osokpPx=f0rky0q3ewJ;LuG~h%vzX3nS#DV@qrOf7m|F zwZ$pr6lM3PRjmwv8%oj=p{`v?gsH$}g#CmHQEwqjww!T65AdrFTEqj*F-q=!08>u@ z;rOw0#$gFOZIGfRT750b8E$e=1@+V5^Jb`lC|z>2~p`G%ps%*l$*)%*PFhSDda?8;&g1= z4*M{8=5kE9huNLo0mNAS?^dn*?>-O58Z_zxhfxO6|Hsu^g;m*n|HINP-K8M0>F$tL zy1S9?2I)=-rMtVkn@w*@8l?y*75=B zvcWSXBm~?yJ1&G@r<<{?WU*%_C^znY_9qjwv~Q^=#Ce@}d z^NI0_iD$|I@AUqZ=o%g4v<**R4#>LvdOR|CjYPtx-Uvit3Ln|J1a1@d)zG^7dNgjn z8$Yv8TX)M%w&|^REt8piQoI4ofI?xd^4E=F!;d6c-FhlCLy#uM7fgU<{far2dPxLu zbK80I9sKfeDBFCBnzQ`=>b53yfo*MV(Q9&*-###-2JZj9sk74g(uo!HF36h=jaTmz z$MgN9AJ>C(gPvD+HJqSIC++3Gp{xyd5*U}ivKg)jCp z+{h6Nd6>y2Wf(at=#ONK%_(rSGmPQLl7IShni}TwLS!liE=0>2+t4zrVapQ=kYlIU@>Q`o&h9nuVYwsKdzk-MTvlWb2tOy zKExrzT1ZHgi)q`k+Qpq-J*+)3=3OJ>QsL`+7-=$4_)J1O9`_DDBtq-W#OYtn z3vO}vC(W@db~N&DeYX;>tDk= zj(U!M{_!01JXv9A^!iQM)X%h=bon)Go?&V&7dpE+C*PbUllN@qIeYsHcBLr~gy&Ci zMy&tr!n;lDCbA0VtN_BnL0YmKh02xFi;vy~1y$sLtie@tEFCuB+s8Nz8NBwwIvKo_ z>CwWQj5koQA7HOP+3NdQBRmVO3Y@Un^ec^*$F2&KS4tI}dI5wvB*oC}LYg!$!tWO( zO*|lSPkx(TePAEUag4D!r>TkSAEMqZK~Ug4?MGx6!~24(n#x0?Crd97pZa=G$J0n| zbr^r{5v*QN_{G(vuzkyW%%h5mmuzWp`5nZ)%VfYhmmf~<1Qe`H0JN@H0qSyW&VGI8(}O{wdytp~3Lv<-7kDgiBKeC25yWlA!KcYkV4t zX>VP@Orp*zycP8Ig$;Xo>?>P*EC1pTX6LnEK0-frQ;*$g%AbNY>lC-8Rji>uafH9S z$f@>Yz(fC!_RmN=^r%rY;XkryLs*)PM1zyDQ7G7BDt@b49GNQit2$}Gda3tdB!LQ- zfy=Z+u75TTN2)|f=?EuWTY4O)C3RO&wV}IQsrDy?X>~8yt4qO$B&Ar@3h$fxY)%|* z*?`C0bbBJvO5eCZduM0%B8BXjrzdYQj6&!yUogV)p>D|A;A(|y4Ql;TaT$(}j>C>) zRl{riz!f$pmf%8qX@?qne)UQ#7USj=T!uCXi4=)K+MTcVu*2%0bWD2wALrg9b!j}@ z?t_*E{U}`cvGqM=R@RuLgq~7s|7oHg73~l@S%Mob_d)rD?-k9wNuZM*oK)JnprwfF z;WnD9t1nKbZ0qUAb=bxueLU!^at&hNfB!!LLWzYV%lPfZsyso=K(fm0u0+#9O?J@Q zV#hf&!`j7sO|#|!3Q#FPkl}#;_)~@nN~MJ_fZ*;FxP7A{a8J+uj&#=9f)$?M`K6>5 zH5n|T=C!vHc{*Fy);6Nt3$DZ^XNCZyp=x3F3{4By&hb-%>M_9kbCm?S_SM+5yov)Ut1fKZXKjOp{! zUd!Xn3eX$7^8`=@g{|NUKj{%>3Y0A0xejSUqi6j4@h4qy4V1FJeiRsq^2=i&T)WP5F(9xdyYebE#sf zh{0F5CZ_Bk1}3ad@SnzGDrIVo!q8va{ZRfOFlQ~P1yNM`M<^qK%Xwa(uF&WMfgSBSuUA7b*>bJWjm%H7(<1Mf_H@$-QLFo z()F(s&UBgix?BCjx!az8R~=z`xvjt;LX^t*hIjGrGqlj=O2AVl!qmou6th`Aqhe_V z+e6g8W%(d}yT%qeH5E$t{a+ek%L12Oc+9oGF4E@nzmRjLhcTC|5~8NcM+0|=Uj<+o zvoqfH=ZLhz%L8hO?(+2njoT8 zvYig{fMAdotfGiNA`hqSpOQ-A#VDtAkY>goeff!$4b?75A`=|Rm6etLV1YJ`4Bv+X z#6laloxCC+FAvsJ-2^os+-A4$50&cQwOO1?(SPVkDJC6-t~V3C3YoI&AL-yN@1Qdq zo@2x5BDYn8lA+oHl;7=Cb;m4-;>QAT!iu3@>(!)x|4A zlI&*lQ-GtW{OVEA{vMY!9_Qbg#PzDoxo~E7U(n;B*mJXq4=;4P>V{cA`IlG(bZw2S z(DFUI!Sc$)!#@B*>=zv+V@(mo3C6~yQl+*UFR`y> z+G~76z$F>k)pZj^*|f_}l49Ev~ADB3zX6 zjHMG(j4UMLnbL4CN3t9V88Y5Ma-i}z=iBNOB+p5_xA>YKX zsmoj0nUa;P&L~e=e95WHuk@jir7VK~Y22HQ!?eE3F^p=h-4@Ff@QzyB7OY{9w(_D=7-NKE`XP`--}MYWDLKV%kk(3*gy?R{ zq=_C3EVKwN4zFOX47kyZ*rN7}b<(e0&i9(4%lTi2mh}(*(qWz?LLSE2;R0$Yrn>1! zj#QkwKVVQoZ(3d%d(%Qz0@sA@+J=%HVuhg{(}(F^Z%0GjTu!v{X%G(l7%Dmwrdl1q zPIpfM|1@k;h@#6oLqW5L$^3kLabHE$4+6#9k+0tK!T4u6LwLpDrau0_SG5x=-r_TD z#5!J#gzLJh1v6+q@Yf>TJJ1I-6h1hOGiHVElxyUV6mMyvf~?P>;S5ga*@fPRObI`2 zqK7(EoaJnI&&qKVGJOCN{n%ae>J+Z%ho&(NAM43$gr_*epZhBebDct-!=EFbBcJJI zd$CYId4!7ZYj`fAj! z9X?(2D_rNO>EGda{e}frS{IisFWxR52#4d7BZ*L)2q=?xvaXXYqHq2kB^%l2F{{K~ z59`}-cdEy+i)yHcN-Y;b?n**m-F>eLm*~#U3Z8xNY;ga%JDW_CjLU0=m5;qEm@ZMI`<^((xqPuIh^^%FmnwGg z0_Dj3rTDS~eZ!%I9HGW@8CrLx1&eoWBBg#4k;uKgp*3nRxBiY~b@iBBIc<3vU8QSE ztrXD2N=QhAI^6(SId^-)uY})Y?8s1IzpvOfZxXNHg~pTd%?3AN5DAp8%%Fk(!TY1!fxc@nTid9!nN^v8M)gZ-{D!z zR}DIa{%vDFSj0J&pr#(6`~ms}()@!m%DHuoRg27_YLjQ%V|L)*!IN{_&tzm)NOeQs zj<*a0&nsW1{Td{nG{`qwdn_}Ow=pv%i<&-Z`j98-Opxk1HT2kQ5DO*Nh5p~Y)G}Lm zVZz__?f-OURNXYFT_34iozC54vIYV1l6GX5YLl#Fv9TH}HqrM)5C@DpnWe;@?clj% zu7&OyC!VwJROeDVspRS?0dXjD(yz<3T7{G2>+4godgTTix%#}pM3vySF7Bx|JN;-~ z%_}Z^Y69G=xg<(^WjuBJYY?j%?Hr;5{(VmXjK{xesanTvNgI{jL!3nq$l8Uu8VLps z7F;^7^KLM7;7sP$q~A+@?U)dr@3Y*PW9+Th-E#mZZC2jH#e-LZu{)Ofq!$L7Deq!N z^E-MSwTvVR^wlirii0+E{=KGPkm}TSKk5$AZ!FW^(M8;BC6N9b1o`jZKU$dpN-<@j zSPUv>T}eHe*cex>6EFH^CTtW9cSC%GMhYWQF9R1%?QVy3 ze&-A8EL~%-CnTM0FBx^Xu=MNFq2`~IM|rhgD{srAy+&nX;NNkxDJLS*ekz!mMD3Zy*4fOqmTL6Q=xh z#K{o-8&ZYjQa&aA>I@c(z>&PZosRXbU|J7&Jd%mu2C1o=>7DP=E_AKwdH8q{LNm^_ zz}y-a%D3ks8;!1*Tq3}#`>J2b&L*z`a z-lxvl{oAqScPv(2CgVS3ojSw+a6vjokCklla~w@?L*_b32983 zNg57a6r>`m(R^J^dVflKyA3HP*rp0?aH)QCdPXWSN1l_E#7{~X@0Z^pYUr#p{BlvN zyTQYM{afXSEc=6RjMR-z@dRgvFkwyF6=+YbUNpMH`NfpqQ3&!y8E>c|B~8mWopNcC zu{=r!)6$e>pF*c=+up-jikGX{M^J!GSw1l$1H3R?nX+hal0=XFxE!2>_upZ<9XkUI zcZ$|)51t=23UO>c1iJf>+Ntlmspipx$=EE>;04XJs+`M@Ppxh}X{H4TYB}A9g^gki zw9tnLpZKfa2yw|k_xu9ifYBRvr1aaHXjLcat}#%VxL!uoYJ#dmG_xnV5Ca{g|LbUF zc`N1fT}(Q=h>t^YE%ast0#qIyTSF}_&O<$OBp&p9wb|`x;{}c7$Y=MeQ`5aMD1K7E zj9Q(hL%DXi63SO+BR5#r4Vi?&&ZOxf+pz;LV~z*GzJRoTPe!}i;pMLY-_J&5T*i!8 z_KBV9uxC1cbQ$*!T$Aefm6_Pjv6~d-M~*Aw6NkwYZGVB26A4i0E<|fo$(rh!cxtRJ zg&b$)G2=O4xuToY==$F8cmNMPRJbUng*Vk-@~-{w{L$fhuahvPvI?#D3m#G}YlX`4 z?@#G&*9pWG9QbZrPsGdt)d1ubCW)|!Vb%4G+fOKz)ks{9e@{#NljPSs&OYnE<*Xm$ zG&To+XAHX$s$e=@(IPr5B%pXX`;T|OKA%ahqTAjVMj58f(N}k10l;YXM-B)4oVq$? zKihK3i5ttTZo4%@49lVh!8cwaC;&W+TN^1!nm%?hFd9~SU0^ldHWc#klca&6jYNlz z4E)hPCVq>zxdj2x>5;k^q5g+_{1!9_z$Z><6m9rvG%#lDd~eZmyA<4k;?TOfqwq1!RutX=OcU!LwQtgPx>yG>VdPubWdxb*JF9i4{rv&;#T zC5MJL1;+1FuIdyDogj$F$7;mtJK>DQs*)d!QK+9M8m)YJh{~)LeYDq9%T`UC#TF{u zwt(e61(rKIS_fEeQxgvj-6V!K-ORjLp?#@XGPy$ocX#g5u`w~>%eMD!JXpjJ97mZS zoHIRtpfLY2;UVtBBeEyP^1>y&SllrEE&C7v*9u3= z&?@lcD!tF^uAh6Mhv{D4-<_ziE&c%ocd-=j@&rvrF^+OS1{-2T?sr@}6zzd#rU8R| zyy{a}Bep;YKh7~^%YvY7ii!vh%GogI&T|Tfj-$RDZoS+le{JdFc*&2{VRe?E$x`&a zD=gPmN}i3tr7sIeRM=7sa_Y3w4)56dHMO>apr<_sksD6_ zFr{;wYHIbQV;Ym4v-gYXzHX#e?ag!i+p>MfKFLXv?bcwn=}jQ>!MKTdPYcqV;m+wO zWJW>?nIsgkVy|eteRoKI$sVXD#X@-8bJ$88T65WXS-4-*ve%|!O2L0M=;;7B)3ub-7<4JOGp@`?#Wx zwl*rZQPN-4E^zSA$cZ|y9m|$BH|FnFk$q&>3BPm7%Oz9)xo?f9&UtvO%l~bkV-8-y zcFSf{Ba|-k4-o54pueD~X>ue_O2iG{qSJq8;vIwHg=~%5RT2UH-hH5v7#WTnLeHVM zCx7%m!svQ8nx>~4V2q$O^jvYPI&ZXDaO-qT@oM>4&2Vw=c2f`=pf_TiMMv~Xc9X?m zka2K@OY7h(LpK#Ly1dLb4#_n(6%9;>L#x_%$o@{WqT%wR=ZF*rymzw)LyZT~6qu{p zNwPD;Xs`QobGxvrnqCg9Ga-96RIuta)O1b^aP3g^zdtdpa;MI$pCCvcSY`H{u)*vN z;e_EdsL*|o=Q}81@vv~@rLkx7Ey8id-#rVcu1BYLFD2VKYmReZt~!imSJ#Ry$IFbU zq+jp*x#}&ek(3Q(dOs3>Jjy6$olmTicywbZjOr!VClogc=tL-EP*Ha7zIEWmXuN1; zE~>krS=rihu4aypTF+RsYz9Gxr%uYRj25H2)ItOCrf)%c`_fluSylDzD* zs^KE=j>Ac+)NtO297q5aenJcAJi<4UN|-^@IJ*{VsJ@iE=Xy@gpu^@(tp0aPaI|0u ze9xtZ_OCC`p@BQ`Qe>>&7biuAA0;cU{-ekqXa1we0#xoJixqGxpM+w5Lqg-t;WRGgdz&v9gjB&@#jX6|LJPWz1KgY>paQv|R@KXjLo>CsUS(kayhvwYnh;qJbl z_!t=qKxZ&}*?zt$?cdvq)jnG2;>?TJ%Lt+oVw%i4D9OCI`{Mw zyATn-DEV}NJP{lcSmE@UBZ28vXm6;*UbmP5p~%SfO26UWtw)X10yKmwxvoSQJx>7T z;#K2*HnlN@(?A#-1f5yb{O3Cg0y-Io+c*fePL3TU*9`7u8j7EJtRr2@N?U}e`b*Mj z=IFB2B?cB6uVX%`Xk|AvAvlV+cB%i}E6HhEnf5Zo_ib~*ydi4iMnBYkC8js4lKMPo ze6cGmM1Y!{#B4gEQ4>c_7t8aWmyB~dEo7Th`D;mc^JqLENEELS)(fJ*WvCFY94AN) z(dugm47uL(*y$L%*TBY=RZUwKX)QR)2sg1CVZ-I|<}QP;drzGw3!!9!I=%MZ`40O5Hjc>DrNyGah4_{guIeu9VOuAo3PjqFWM%u4 z<7M6yB9{t@;b#*`fBq^oG&IRkjc1na_zaJ&2qhEV{m0N07N#WGo?^<8Hs+LOeLDN#! z3Vpi7xzDqQ610Cd#3U%qsU=1QysAbG|2@N?A>Osuu50|5L8CfvMyE6KSm}PbX5Nl< zB;)V_HpdX>g09K=mv!5ssJY*N{@4}7RRSTy%M5co``?E#L*cL<_W;nE38JoC{V^Ko%Sl$f~J-mmtCIzhGE!<6n_ z{YpD3@s&dF1YJ?zXqhOa0~vBz}y>mgvr}xo{@I z3SwLeRB@XoHe)@)@DyiyptC|eT%?cpcF2#uV#bvf_*sHjge0g}WZ{|w`a22|)mtZ~ z)$?PI)DW*v9>)1pF>H=utHbqSy?j+ujbXUN#Y4Es<|4O&n$1Z3ce{$4(znh85y2{a zOTzictLGL1nVJ41jk+n>U&7zaw$Lg4j^75{UYU+%IxhqZ4{I+P!QGpTuSq{-@y1ts z5a)gw6yMk39G|tiwQFBKA&zkxBbq9H3C4={FMo%Ie487Cj^rDQgCF|NJ**UC8X5{0 z4d*v4Y_vEIhD**Iz_j&-KRaHI&=3cbWt(^cE)!k(U@I zHdPjuol5Fc78MZ30M_UAxImNMI=3fN!hBQIIJQjY@|BPtcq*G6ujr_*!^tglYj@(M zFg`A3i3?@&UCt^bq=^S5y58X^wJ)ZVoebn)z3w{hNO+QVD;vPgdC?|C$h=RP5hM~A3)&{#%^#Wu`^{9s}Mq) z&%O(8U;FXUu*$`78Xmc51Tu?$)0NV{1~{dh)#Vw9<93o*ZPwoJiX)=Q;>IS0t--e7 zMUYD?2mOGiIcc~@UocWWEXD5HvkOpZLOZc|WNOI5N|Wtuv+1x>tH#^wFoddP&0erP z9Mv+I)`o7ZDNVgW>K=TUEIwbakMiSFzjk%gd`0|DBEwTWM?0cYZ(j&X2vTRhp`3*g zL(6|`Fjl3-M`l#@uTFFZ>bB^m3yYYDNJ%Dss#)PMP{^~gSMtByJA_O z#a|)I{W(Y)z7OjogA-(2RM{}RUum}20O@zOT!4wu>Tg|!UUL+`K?=k*Q0P7aDFC7q z+RHIw-~j384wy5eAIRT{|8Z~5Hk#ARBva)3_8PuhQajo}JJtwrbQX)m1A7_1`yK21 zFaM)Z*Bd9>t4Qv9x5=`jydN5XjePU8QfC?!Fa-P?Xt`W#ws=|!G(JUvu}KClVYw6m z2R>31H*exYc^i#N787DtTlST11Fe10&8>RJi|sYKAVt4y*5o7m(gE*dWlHXxq>%wxQN&Ym# ze&UnD1a-QYsj}~9^&P{3YkTD7RRgWe!!XyR|8c6d_ppsDNt`|KtLC^25 zpZq+C{HX^~-$tG3Lcb`skfmf><$@@}vMrS}QeF6dR8U#g?a}e;zt@4pJ1ld$PZ8~@ zE|2FWU+IZUa7^3le7>sM)vYbPq&XqepC>P`BILCHsfx-+iZwO_dqzVqdBHt5%glXtH4yNER5E)kq@{&92Q`b)L8aV%X z(;o&5eB1zD2BqFqRXdq#KTi@Eo&t!=43WymW=DgntC;ka%t9G?zVT4po~z!pG+I?OaK3Dr0=a zWJke)b7~{9$U}bskV;R=$7rn&1?SST8CgX-+lGadk1rmxk28s(C!;rW18(Mz)`L;) zhDc-?w-k~1Tp(*2Y!FK6vV`#9LT77k6kopFejuDY4->D@gfr3*bLI4+yUJG^c8E?! zH&3ht9fOt>#4F>K2i-}C7XaRjh^-zadeY&N5J&hJ(Do1;U1 z0R|S9F7Ra_#~Lxcfn{0Nj)65lmCUESUNZ8?`ntrU9}hZz1aef7@;vWRztPvU|GKm_*Tm%=Lx}dcIl9p%>WI;heBSJfZ>K*>|`}aWHmu*V- z?7z%fT4fQJk(>>anDoygt}LMvbXKf4?kx$#;q4Ao?@6@GG%H}ek1i4+)h54k9S9j> zMHEu|;`#T}2-btD#1w>|T~eGPpmXJCCvetW9{C=R>(S`R=?rKWttj*xtXlug$e?lK z!f(hn`j;OW-%>t)H#IGszKx)9-9Tnf|>MRPD)Lr;3^sMC=zZN(<_7pX?a6&5Jt#NG>JZ zN#9ndF}LjjyUMa4lV_qpKegEG#w>LCS^gw{5)KhrXmgGE+HYCcow?{+x4T zd=iQVBaI-;WmEFG`XSyYe=drd%T=cZDNj`n?z`>2&sd4yS-d*SPFn1*NXO0v7V;v6 zi*!1eShRU#C4vMQV6yTKhufr{Iefl~(n3!;hrIS*{PwT* z43g?Ji;2FAamP#ssSbYuV|q+-TonWtRi}=W=y{oogbNe6`ChNEHkPWf95iIsUT#$d*#q z#1CgX$zKn-wqxiy5~Mn5+P^oBRE4|bT3S6|l5joyTATW58b53+I+p$eKhDebb}ai^ z<1zh)e?9IA|E=^UbQJZ6Mhdb%{G8g6?AvZ8A(oR5M+!UyzJ$bFlDcn#yji{r$Q=+G z&dWxNh-`*9exhxmp}!e&NKHtgo45N5vhAt9Q41b4%8eQZB)~*wgMAx~|avut2LM}d7@b)@4rFzn2+8F>Ex?h`2n^*VI?=oc#=s5(S2f_kmBkGg~gk$7~G zystnFvRY@Um zpN9O5@jppqIL$L%>~5F6E+!*6hJAkvJB7^?ot)!_lc=cN^!QHQ^Q6%s!sa?~H0*qD z8Ol0on0coj(D1*>Y*`JHkQq0o$1{_xK1u{RVe1Mxmn*ltKUVw{u7e!ikd`y@+~EvUbryQ53A6YA`(J z2eN^XI}Dm4PVV+p423P}w`C)nm#l%o#e6O zjJJB<@ zKVy5m&W)5D$>f!DvD5g!|9tHe?-qIPvR6ss9pguF+~^TfCDAPljGUBw0pmLwx(iy3 zUDYIyV&MKVgCs2VjAobnZzI(3)ZpwvEZGud0y=LuIxg{!SKZ$+S6=6|b*P^}h_&%- zmTC&um!$-SZQXe3ehYSXhAIAXMrUf*3S0QXp`x5c2(?15H5^@Bf|DqdWK`?UhsRv5 zx`%t$;m(@GSSnshTB$kCINY`QGp0pcoz5 zP1@31kqY(C{AzpxDREI^p%?f;>sSj0F0#V+@y{8(YPYa?b|w z;HfRDsgyDNLso2S!6>d;`%#ytOSO<>L`j{el3H<>Zhev0jLB&V=g=-lyYi3Y&*fa% zIe|z6Lnn%Xt*wM*z>r5#tq}PmLJ|s{)hghBGF0Fl zv*{MkY0GvW8wiu&RGdF#e`Z6y*Dz; z4|j>R*OQcjPJ zs1>DQjM}JCC9=|(u(#$jmxa?FJ&LAj0+#CQv)o9-63nTP))IT-gK1k^8MKMZ3(73o zYtBot!2PIcDqQMUttOJ2>-JBkrQ)o!yT6T%0~zxts()RHz}i%QyC`4lvR*;1b=IJq z-}S03swKPrVZAY75CzubSDLwzcw^81E>@Y-agCiO7Ux#DRqOG_eMbR|EJ#ofXDZW% zcw{AuJbM|=c>}%m06M zdN`ww_j}qY2@b>yRmXd6|EAH<>E*9)Q;_eSwyHN-V|!tQt=TolT3c1A&`h2`s{n05 zF?}a9E{2VJQ#bVu3f;n@!m(_Fz_y2}_s=iJ;7kvO5}s@a{mrL7Pii*x_j{BOnT%{6 z1vGqmnmVD8yYbqg`?RYjYRF#30(o2lga`|8!6Qi-+HMQMJ`g3qNy+z($y)|w_IES> zqbC;#S1EJ5rV&%B`s;IO@3%nY@tcGP7drvVEbjYF^T(X3^pW*C5@!ursRhhyhPCPT z!;38B2Brk>w>3bzArZGM#Lprzg)ihgQfLzeeXk3 znu$h9)reI#-cB=eMt2DhSdhNpK&x_ipI95P2V>{~gL+B4j%z84ZPW?B(h=pUufK1PRc{w5n`@4ZcI68W6V4oaPP z;e^MTr}Y;Cc+n!4<_8@wlGMCp=&cc&Y?3mT5TB;Aesp0HleE(p8~_KU`z3l0p8!CM zClz+%lUbpig1!|gTqs>xiWgv{mGLsmwtnlhCj}Sw+#2h|e_h9u(HDKbIT3b@$28BN z%xg6-5?68>0~fzMCyt-{krE3Pn(U_-D1Q_Nk@s*R%w|V8Rqj0KN?$fQ2JRz#gx16X z``-%5dRmEYq*QM~_J4L>aVY?x)d!(G)Ra~9e0h)c%w(>2{dclIomf>-mughG^;kn4 zL_WC^NM;K2tKA7pU4t8aK>s4Y^+rjYs1z0k!Esf9iuekpQGd0~1w{S5AD0y(I?lJc z2=r+ny&wp$imG9+jj9I2se(qKvWA+P5B9GF%em4)q2GzS+6WgHzk}x)tUKv6I*$);Y+{&cd-GQM25B$^)EU{^)ACjYxr&`fN&ZK7CqHvCVF@Y`61yeJDL?pzF;q| zgyqZbdK_CnDYO!<*2{x6ZS3bDl?pwB#=Xj7b&P&`?&SWRCvWNopxJ+i*PjCr0!DSm z<)}lm_9dUnznQ|wK>P^)vj%Nr7J1`>ZGQ|Y@Xv7B*|pgdG3POT*hJAE&-unCl;2f1 zt}2cNT8Pv>+>TPwy(`fH>Ezjy)l5_Xr&r>Sf;CwSB$4Bagg?nA5Z@fe{uWI$VWdJA zc`C(i4}9QZP4&n$RJx>1U#A&!HO;`cXqLgv!v#n%mBmK#h7iZLc{V%x7wLifWMP2l zzi;Sa+%w&Kzct<`_KJVc^CPfZ37Da+R0#1)69%NF^fi#usf>tI@1Hii=Vkc*3+roV zQ7No4JO5X|>#{Ws!+BmJ)oGp8JNnE`aA}vc9DFeTiUWVFF9x@lR3R}E~6J$i1)WM&dDv)ybrJ(?k5x@TDZE-o6T zcFIc|b|<(Rx<(*^=3y~loTSkEzgtia`PxMkb@=h)?3K9kZq`OC8&hQ<^+?Zdt_ zDpO50jr{1qE5{mdqDXv*)XU5W?FDKh8DghurY4nKbF2J_K=b$S21PDKKmDIYupf~g z#|)*-pMPA(kob{=RWJ`x4Hd_5bLiSy0&-N@zuviL3$;!q4qHz~Zu#4S-Z58b>qGZp zS5qJ066x2>7jh z28~b#CntKH=`Qi=odizn$MxDz%?88tB{qulPEx2^xAw?USd0sF`GIODew_1Cot-`w z78ZkURS0v}>aN)zDa-zXR@8KbA)EHsjV5zH)xd4Fxw75XB({{XG2#A^W!vwRg{R_o zmHv+64hGLbts?@H*+Bt1$Ew7qieeE`@q1y%`pW zmq`7Iv^s>p#o+l+18pJviz&()a$YMQss@sF5Q`U*9^=jFnsv(ti)$I~Ds0|dY6}Je zqc@w|K$TuQ>So%3p6jw!KeM*&dxyP0vVx?xB`b@_CO`gqz0*ux z+EofPZ6@bUcgla+O�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 literal 0 HcmV?d00001 diff --git a/keyboard/ergodox_ez/keymaps/msc/img/main_layer.png b/keyboard/ergodox_ez/keymaps/msc/img/main_layer.png new file mode 100644 index 0000000000000000000000000000000000000000..65f92dda1b64bcef1a1838cb5bd01ded13979260 GIT binary patch literal 90624 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

>Xm640R0W= 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 A3IG5A literal 0 HcmV?d00001 diff --git a/keyboard/ergodox_ez/keymaps/msc/img/media_layer.png b/keyboard/ergodox_ez/keymaps/msc/img/media_layer.png new file mode 100644 index 0000000000000000000000000000000000000000..a69799b0734841a23c2878699d1edba963353a91 GIT binary patch literal 75750 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 literal 0 HcmV?d00001 diff --git a/keyboard/ergodox_ez/keymaps/msc/keymap.c b/keyboard/ergodox_ez/keymaps/msc/keymap.c new file mode 100644 index 0000000000..e567e513f9 --- /dev/null +++ b/keyboard/ergodox_ez/keymaps/msc/keymap.c @@ -0,0 +1,184 @@ +#include "ergodox_ez.h" +#include "debug.h" +#include "action_layer.h" + +#define BASE 0 // default layer +#define SYMB 1 // symbols +#define MDIA 2 // media keys + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* Keymap 0: Basic layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | = | 1 | 2 | 3 | 4 | 5 | LEFT | | RIGHT| 6 | 7 | 8 | 9 | 0 | - | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Del | Q | W | E | R | T | L1 | | L1 | Y | U | I | O | P | \ | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | BkSp | A | S | D | F | G |------| |------| H | J | K | L | ; |' / Cmd | + * |--------+------+------+------+------+------| Hyper| | Meh |------+------+------+------+------+--------| + * | LShift |Z/Ctrl| X | C | V | B | | | | N | M | , | . |//Ctrl| RShift | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | Cmd | Alt |AltShf| Left | Right| | Left | Down | Up |Right | L2 | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | App | LGui | | Alt |Ctrl/Esc| + * ,------|------|------| |------+--------+------. + * | | | Home | | PgUp | | | + * | Space|Backsp|------| |------| Tab |Enter | + * | |ace | End | | PgDn | | | + * `--------------------' `----------------------' + */ +// If it accepts an argument (i.e, is a function), it doesn't need KC_. +// Otherwise, it needs KC_* +[BASE] = KEYMAP( // layer 0 : default + // left hand + KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, KC_LEFT, + KC_DELT, KC_Q, KC_W, KC_E, KC_R, KC_T, TG(SYMB), + KC_BSPC, KC_A, KC_S, KC_D, KC_F, KC_G, + KC_LSFT, CTL_T(KC_Z), KC_X, KC_C, KC_V, KC_B, ALL_T(KC_NO), + KC_LGUI,KC_LALT, LALT(KC_LSFT), KC_LEFT,KC_RGHT, + ALT_T(KC_APP), KC_LGUI, + KC_HOME, + KC_SPC,KC_BSPC,KC_END, + // right hand + KC_RGHT, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, + TG(SYMB), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, + KC_H, KC_J, KC_K, KC_L, KC_SCLN,GUI_T(KC_QUOT), + MEH_T(KC_NO),KC_N, KC_M, KC_COMM,KC_DOT, CTL_T(KC_SLSH), KC_RSFT, + KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, TG(MDIA), + KC_LALT, CTL_T(KC_ESC), + KC_PGUP, + KC_PGDN,KC_TAB, KC_ENT + ), +/* Keymap 1: Symbol Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | ! | @ | { | } | | | | | | Up | 7 | 8 | 9 | * | F12 | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | # | $ | ( | ) | ` |------| |------| Down | 4 | 5 | 6 | + | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | % | ^ | [ | ] | ~ | | | | & | 1 | 2 | 3 | \ | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | . | 0 | = | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// SYMBOLS +[SYMB] = KEYMAP( + // left hand + KC_TRNS,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, + KC_TRNS,KC_EXLM,KC_AT, KC_LCBR,KC_RCBR,KC_PIPE,KC_TRNS, + KC_TRNS,KC_HASH,KC_DLR, KC_LPRN,KC_RPRN,KC_GRV, + KC_TRNS,KC_PERC,KC_CIRC,KC_LBRC,KC_RBRC,KC_TILD,KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS, + KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS, + // right hand + KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + KC_TRNS, KC_UP, KC_7, KC_8, KC_9, KC_ASTR, KC_F12, + KC_DOWN, KC_4, KC_5, KC_6, KC_PLUS, KC_TRNS, + KC_TRNS, KC_AMPR, KC_1, KC_2, KC_3, KC_BSLS, KC_TRNS, + KC_TRNS,KC_DOT, KC_0, KC_EQL, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), +/* Keymap 2: Media and mouse keys + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | MsUp | | | | | | | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | |MsLeft|MsDown|MsRght| |------| |------| | | | | | Play | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | Mute | | | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | Prev |VolDn |VolUp | Next | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | |Brwser| + * | Lclk | Rclk |------| |------| |Back | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// MEDIA AND MOUSE +[MDIA] = KEYMAP( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_BTN1, KC_BTN2, KC_TRNS, + // right hand + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, + KC_TRNS, KC_TRNS, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_MPRV, KC_VOLD, KC_VOLU, KC_MNXT, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_WBAK +), +}; + +const uint16_t PROGMEM fn_actions[] = { + [1] = ACTION_LAYER_TAP_TOGGLE(SYMB) // FN1 - Momentary Layer 1 (Symbols) +}; + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + // MACRODOWN only works in this function + switch(id) { + case 0: + if (record->event.pressed) { + register_code(KC_RSFT); + } else { + unregister_code(KC_RSFT); + } + break; + } + return MACRO_NONE; +}; + +// Runs just one time when the keyboard initializes. +void matrix_init_user(void) { + +}; + +// Runs constantly in the background, in a loop. +void matrix_scan_user(void) { + + uint8_t layer = biton32(layer_state); + + ergodox_board_led_off(); + ergodox_right_led_1_off(); + ergodox_right_led_2_off(); + ergodox_right_led_3_off(); + switch (layer) { + // TODO: Make this relevant to the ErgoDox EZ. + case 1: + ergodox_right_led_1_on(); + break; + case 2: + ergodox_right_led_2_on(); + break; + default: + // none + break; + } + +}; diff --git a/keyboard/ergodox_ez/keymaps/msc/msc.hex b/keyboard/ergodox_ez/keymaps/msc/msc.hex new file mode 100644 index 0000000000..a466a37af7 --- /dev/null +++ b/keyboard/ergodox_ez/keymaps/msc/msc.hex @@ -0,0 +1,1118 @@ +:100000000C9465020C94A9020C94A9020C94A90208 +:100010000C94A9020C94A9020C94A9020C94A902B4 +:100020000C94A9020C94A9020C94AD0B0C947F0CB7 +:100030000C94A9020C94A9020C94A9020C94A90294 +:100040000C94A9020C9404210C94A9020C94A9020A +:100050000C94A9020C94951A0C94A9020C94A90270 +:100060000C94A9020C94A9020C94A9020C94A90264 +:100070000C94A9020C94A9020C94A9020C94A90254 +:100080000C94A9020C94A9020C94A9020C94A90244 +:100090000C94A9020C94A9020C94A9020C94A90234 +:1000A0000C94A9020C94A9020C94A902EC0C0E0D5C +:1000B000FC0D0E0DFC0D530D760DFC0DCB0DDE0D64 +:1000C000C010C010EF10EF10321170118913891396 +:1000D000891189138A128A125D1389138913741383 +:1000E0000000F0A12E004C002A00E100E300000017 +:1000F0001E00140004001D71E2004D001F001A00D4 +:1001000016001B00E1042A0020000800070006007A +:1001100050002C0021001500090019004F004A0072 +:10012000220017000A000500000065745000015409 +:100130000000007F0000E3004F0001540000007742 +:100140000000E20023001C000B00110000002971D8 +:10015000240018000D00100050004B0025000C007A +:100160000E00360051002800260012000F00370054 +:1001700052002B0027001300330038714F004E004F +:100180002D0031003478E500025400000100010028 +:1001900001000100010000003A001E0220022202BC +:1001A000010001003B001F022102230201000100A7 +:1001B0003C002F0226022F00010001003D0030020A +:1001C00027023000010001003E00310235003502F7 +:1001D000000001000100010000000100000001001A +:1001E0000100010000000100000001003F0052007A +:1001F00051002402000001004000240021001E00E4 +:10020000010001004100250022001F00370001000D +:1002100042002600230020002700010043002502A1 +:100220002E0231002E0001004400450001000100B3 +:1002300001000000010001000100010001000000B8 +:1002400001000100010001000100010001000100A6 +:10025000F20001000100F5000100F000F1000100D2 +:100260000100F40001000100F300010001000100A1 +:100270000100010001000100000001000100010077 +:100280000000010000000100010001000000010069 +:100290000000010001000100010001000000010058 +:1002A000010001000100A800AC00010001000100F4 +:1002B00001000100AA00B6000100010001000100D8 +:1002C000A90001000100010001000100AB000100D4 +:1002D00001000100AE00010001000000160345000E +:1002E000720067006F0044006F0078002000450036 +:1002F0005A00000016034500720067006F004400BA +:100300006F007800200045005A0000000403090433 +:1003100009026D00040100A0FA09040000010301B4 +:100320000100092111010001223F00070581030896 +:10033000000A090401000103010200092111010062 +:1003400001224D000705820308000A09040200018A +:100350000300000009211101000122360007058376 +:100360000308000A09040300010300000009211129 +:100370000100012239000705840310000112011059 +:100380000100000008EDFE07130100010200010555 +:10039000010906A101050719E029E71500250195C6 +:1003A0000875018102050819012905950575019156 +:1003B000029501750391010507190029771500259C +:1003C00001957875018102C005010980A1018502AE +:1003D00016010026B7001A01002AB7007510950112 +:1003E0008100C0050C0901A1018503160100269CAE +:1003F000021A01002A9C02751095018100C00501B6 +:100400000902A1010901A100050919012905150029 +:10041000250195057501810295017503810105018D +:10042000093009311581257F950275088106093843 +:100430001581257F950175088106050C0A3802157E +:1004400081257F950175088106C0C005010906A1B7 +:1004500001050719E029E7150025019508750181B7 +:100460000295017508810105081901290595057591 +:100470000191029501750391010507190029FF15E6 +:100480000025FF950675088100C0000000000000EF +:100490000000000000010204060A0F17202C3A4A4F +:1004A0005D71879DB3C7DAE9F5FCFFFCF5E9DAC7B2 +:1004B000B39D87715D4A3A2C20170F0A060402018A +:1004C0000000000000000000000011241FBECFEF5C +:1004D000DAE0DEBFCDBF04B603FE24C08091EE019A +:1004E0009091EF01A091F001B091F1018730904B14 +:1004F000A740B04BB9F41092EE011092EF011092A8 +:10050000F0011092F10114BE84B7877F84BF88E1A7 +:100510000FB6F89480936000109260000FBEE0E088 +:10052000FFE3099511E0A0E0B1E0ECE8F5E402C0DA +:1005300005900D92A433B107D9F711E0A4E3B1E01F +:1005400001C01D92AE3EB107E1F70E94F1080C9484 +:10055000C4220C94000061110BC0FC01828188232D +:1005600021F085EE0E945D0F03C085EE0E942510EC +:1005700080E090E0089508956091B1017091B2011A +:100580008091B3019091B4010E94C41956985E986D +:1005900025982D9826982E9827982F98813019F015 +:1005A000823021F00895259A2D9A0895269A2E9A40 +:1005B00008950C94BC0256985E9825982D9826981C +:1005C0002E9827982F988FEF90E090938900809332 +:1005D000880090938B0080938A0090938D00809385 +:1005E0008C00259A2D9A2FEF80E792E021508040D1 +:1005F0009040E1F700C00000269A2E9A2FEF80E786 +:1006000092E0215080409040E1F700C00000279A1E +:100610002F9A2FEF80E792E0215080409040E1F741 +:1006200000C0000025982D982FEF80E792E0215020 +:1006300080409040E1F700C0000026982E982FEFF0 +:1006400080E792E0215080409040E1F700C0000038 +:1006500027982F9856985E9825982D9826982E982A +:1006600027982F98089589EA8093800089E08093E5 +:10067000810024982C983F988AB18F748AB96E981B +:10068000479A8BB1806B8BB9769A0E94DB020C94EF +:10069000BB0280E2809300018091340181110EC081 +:1006A0000E94980381E0809334012FEF83ED90E363 +:1006B000215080409040E1F700C0000080E40E949B +:1006C0009E038093000181112EC00E94C803809375 +:1006D0000001811128C00E94C8038093000181118C +:1006E00022C08FE30E94C8038093000181111BC0C8 +:1006F0000E94C00380E40E949E0380930001811148 +:1007000012C08CE00E94C8038093000181110BC0CD +:100710000E94C80380930001811105C08FE30E94ED +:10072000C803809300010E94C003809100010895D6 +:100730001092B9008AE08093B800089594EA9093EB +:10074000BC009091BC0097FFFCCF9091B900987FBE +:10075000983021F0903111F081E008958093BB0032 +:1007600084E88093BC008091BC0087FFFCCF80911F +:10077000B900887F883111F0803471F780E00895E6 +:1007800084E98093BC008091BC0084FDFCCF089577 +:100790008093BB0084E88093BC008091BC0087FFFD +:1007A000FCCF9091B900987F81E0983209F480E005 +:1007B000089584E88093BC008091BC0087FFFCCF43 +:1007C0008091BB00089580910001811115C080E4E3 +:1007D0000E949E038093000181110CC082E10E945F +:1007E000C80380930001811105C08FEF0E94C803E8 +:1007F000809300010E94C00384B1807F84B985B1D9 +:10080000807F85B98AB1837F8AB98BB1837F8BB9A9 +:100810003E98469808950E944903809300010E94E3 +:10082000E30380B38C7080BB81B3836F81BBA6E38D +:10083000B1E0E4E4F1E08EE08E0F11921D928E1390 +:10084000FCCF0C943303BF92CF92DF92EF92FF92D2 +:100850000F931F93CF93DF9380910001882379F04A +:10086000809135018F5F80933501811108C00E940E +:10087000490380930001811102C00E94DB0206E35C +:1008800011E0C0E0D0E0DD24D39482E0C82EEE2455 +:10089000E394F12CC730D10500F58091000181115E +:1008A00064C080E40E949E0380930001811112C005 +:1008B00082E10E94C8038093000181110BC0C7012F +:1008C0000C2E01C0880F0A94EAF780950E94C80395 +:1008D000809300010E94C00348C0CA30A1F028F4F0 +:1008E000C83059F0C93061F005C0CC3089F070F0E3 +:1008F000CD3089F0209A289810C0219A29980DC0EF +:10090000229A2A980AC0239A2B9807C0529A01C0AB +:10091000539A5B9802C03E9A469890EA9A95F1F7EE +:100920009FB1799902C082E001C080E091709D255D +:10093000982B7C9902C084E001C080E0892B7D99CE +:1009400002C038E001C030E0832B7E9902C020E174 +:1009500001C020E0822B9FB19095991F9927991F84 +:100960009295990F907E892B0FC080910001811183 +:1009700049C080E40E949E0380930001882379F19E +:10098000B12C0E94C0038B2DF8019081981719F0AB +:100990008083C09201010E94E30321960F5F1F4FE5 +:1009A000CE30D10509F076CF80910101882361F125 +:1009B000815080930101882339F08FE99FE00197EE +:1009C000F1F700C0000020C0A4E4B1E0E6E3F1E0EC +:1009D000CF01825F91919D938E13FCCF15C083E16F +:1009E0000E94C803809300018111CACF81E40E9454 +:1009F0009E03809300018111C3CF0E94D903B82EBA +:100A0000B094BFCF80E0C0CF0E94D90281E0DF91D7 +:100A1000CF911F910F91FF90EF90DF90CF90BF90FB +:100A20000895E82FF0E0EC5BFE4F80810895089573 +:100A30008B3B910578F4883A910540F5853A91050C +:100A4000D0F48430910508F0B1C08130910509F4EB +:100A5000ADC06BC0803E910508F467C0883E91052B +:100A600008F4A4C09C01205F31092031310508F051 +:100A70005CC090650895853A910509F459C0863A9D +:100A8000910509F058C082E890E40895883A9105EC +:100A900009F454C0893A910509F453C08A3A910582 +:100AA00009F452C08B3A910509F451C08C3A910572 +:100AB00009F450C08D3A910509F44FC0803B91056F +:100AC00009F44EC08E3A910509F44DC08F3A910554 +:100AD00009F44CC0813B910509F44BC0823B910560 +:100AE00009F44AC0833B910509F449C0843B910550 +:100AF00009F448C0853B910509F447C0863B910540 +:100B000009F446C0873B910509F445C0883B91052F +:100B100009F444C0893B910509F443C08A3B91051F +:100B200009F442C080E094E4089580E090E00895E4 +:100B300081E890E4089583E890E4089582EE94E4D7 +:100B4000089589EE94E408958AEE94E4089585EB7F +:100B500094E4089586EB94E4089587EB94E4089573 +:100B60008CEC94E408958DEC94E4089583E895E486 +:100B700008958AE895E4089582E995E4089584E962 +:100B800095E4089581E296E4089583E296E4089559 +:100B900084E296E4089585E296E4089586E296E478 +:100BA000089587E296E408958AE296E40895089508 +:100BB00096E0799FF001112494E5899FE00DF11DE5 +:100BC0001124E60FF11DEE0FFF1FEC51FF4F859131 +:100BD00094910895880F991FFC01E05AF040859187 +:100BE00094910895880F991FFC01E052FF4F859161 +:100BF0009491089526E0729FF001112444E5849FAA +:100C0000E00DF11D1124E60FF11DEE0FFF1FEC5159 +:100C1000FF4F859194919C013A9521154FE134073E +:100C200008F41AC13F512115304120F49F700E94F1 +:100C3000F20508959C0130532115304118F499278D +:100C4000906C0895811520E5920769F40E94AB131A +:100C50004FEF84E39CE0415080409040E1F700C0BA +:100C600000000C94BA1A813020E5920731F480918B +:100C7000CC0181608093CC0108959C0130552115F1 +:100C8000304108F051C0292F33272F7033272130EE +:100C90003105D9F4AC014370552702C0220F331F30 +:100CA0004A95E2F73C68AC0164E0440F551F6A9531 +:100CB000E1F744275370242B352B73E0880F991FDD +:100CC0007A95E1F7807699271DC02230310529F405 +:100CD000982F8827816F906A089523303105A9F4F1 +:100CE000AC014370552721E030E002C0220F331FD2 +:100CF0004A95E2F73C6843E0880F991F4A95E1F76F +:100D0000807E9770822B932B089524303105E1F477 +:100D1000AC014370552721E030E002C0220F331FA1 +:100D20004A95E2F73A68E7CF9C01305721153041E8 +:100D300018F49F70906208959C013058211530413D +:100D400018F49F70906A0895803E9105E0F4803C0D +:100D5000910558F58133910509F46FC048F4893243 +:100D6000910509F463C08A32910509F46DC072C01F +:100D700089339105E9F082389105D1F085339105E9 +:100D800009F44DC067C0833E910581F138F4803E7F +:100D90009105B9F0823E9105D9F05CC0863E91057F +:100DA00061F1873E9105A1F155C00E94EA050895C1 +:100DB0002091DF0120FD02C021FF4CC080EE90E0B9 +:100DC00049C08091DF0180FFF9CF89E390E042C004 +:100DD0008091DF0182FF0EC08091DF0184FF03C09C +:100DE00080E090E037C083EE90E034C08091DF0176 +:100DF00082FFF2CF82EE90E02DC08091DF0183FF71 +:100E00000BC08091DF0184FDEBCF87EE90E022C024 +:100E10008091DF0183FFF5CF86EE90E01BC08091CB +:100E2000DF0185FF07C089E290E014C08091DF01F7 +:100E300085FFF9CF85E390E00DC08091DF0186FF4B +:100E400007C08AE290E006C08091DF0186FFF9CFFB +:100E500081E390E00E941805089508950C942D07F1 +:100E6000809162010895CF93DF9300D01F92CDB798 +:100E7000DEB79C018091E501843019F593E09983F8 +:100E80003B832A839093E9008FEF9091E800815093 +:100E900095FD06C095ED9A95F1F700008111F5CF0B +:100EA0008091E80085FF0DC040E050E063E070E015 +:100EB000CE0101960E949D098091E8008E77809373 +:100EC000E8000F900F900F90DF91CF910895CF938E +:100ED000DF9300D01F92CDB7DEB72091E50124301B +:100EE00021F522E029839B838A8383E08093E900B4 +:100EF0008FEF9091E800815095FD06C095ED9A9591 +:100F0000F1F700008111F5CF8091E80085FF0DC059 +:100F100040E050E063E070E0CE0101960E949D0940 +:100F20008091E8008E778093E8000F900F900F90EB +:100F3000DF91CF9108952091E5012430F1F422E072 +:100F40002093E9002FEF3091E800215035FD06C0D5 +:100F500035ED3A95F1F700002111F5CF2091E80029 +:100F600025FF0BC040E050E065E070E00E949D0965 +:100F70008091E8008E778093E8000895CF93DF9307 +:100F8000EC019091E501943009F046C080910C018C +:100F90008823D9F080910D018823B9F09093E9005E +:100FA0008FEF9091E800815095FD06C095E19A95EC +:100FB000F1F700008111F5CF8091E80085FF2CC08A +:100FC00040E050E060E170E017C081E08093E9000C +:100FD0008FEF9091E800815095FD06C095ED9A95B0 +:100FE000F1F700008111F5CF8091E80085FF14C072 +:100FF00040E050E068E070E0CE010E949D098091E1 +:10100000E8008E778093E80080E1FE01A2E5B1E080 +:1010100001900D928A95E1F7DF91CF91089580912B +:10102000E401811109C00E94320B0E948F0B809154 +:10103000E20084608093E20008951092E401089534 +:1010400008950C94F1200E94501A0E94F7200E94EB +:10105000350E0C942E0742E061EC81E00E94AC0A50 +:1010600042E061EC82E00E94AC0A42E061EC83E085 +:101070000E94AC0A42E161EC84E00C94AC0A8091DD +:10108000E701833009F455C030F4813071F08230CB +:1010900009F48EC008958A3009F47AC08B3009F4BF +:1010A00060C0893009F09CC020C08091E601813A7F +:1010B00009F096C08091E800877F8093E8008091D6 +:1010C000EA019091EB01892B21F460E182E591E046 +:1010D00003C060E080E090E070E00E94E809809149 +:1010E000E8008B778093E80008958091E6018132D3 +:1010F00009F076C08091EA019091EB01009719F018 +:10110000039709F06DC08091E800877F8093E80025 +:101110008091E80082FD05C08091E5018111F8CF42 +:101120005FC08091F100809362018091E8008B772D +:1011300053C08091E601813A09F052C08091EA01E2 +:101140009091EB01892B09F04BC08091E800877FDB +:101150008093E8008091E80080FFFCCF80910C0133 +:1011600036C08091E6018132D9F58091EA019091F3 +:10117000EB01892BA9F58091E800877F8093E80037 +:101180000E94E10A8091E80180930C010C94AB135A +:101190008091E601813221F58091E800877F80937C +:1011A000E8000E94E10A8091E901809363010895BB +:1011B0008091E601813AA1F48091E800877F8093D5 +:1011C000E8008091E80080FFFCCF8091630180936C +:1011D000F1008091E8008E778093E8000C94E10A9A +:1011E000089584B7877F84BF88E10FB6F894809311 +:1011F0006000109260000FBE90E080E80FB6F89497 +:1012000080936100909361000FBE0E94840E0E9443 +:10121000320B0E948F0B8091E20084608093E20089 +:1012200078940E94150E0E94860E82E091E00E9442 +:10123000300E0E94DF208091E501853069F40E9424 +:10124000141A8091E3018823B1F30E943C1A882389 +:1012500091F30E948709EFCF0E948C0EECCF292FCB +:10126000332723303105C9F064F42130310581F092 +:101270002230310509F043C08DE690E020E133E0F3 +:1012800042C021323105F1F02232310541F137C03F +:1012900082E190E02DE733E036C099278130910557 +:1012A00041F08230910541F0892B49F5ECE0F3E003 +:1012B00005C0E4EFF2E002C0ECEDF2E0849190E0D2 +:1012C0009F0121C06430D8F4E62FF0E0EE0FFF1F3D +:1012D000EE5DFE4F2081318189E090E014C06430E2 +:1012E00070F470E0FB01EE0FFF1FE65EFE4F208101 +:1012F0003181FB01EA5EFE4F808190E004C080E016 +:1013000090E020E030E0FA0131832083089580E10D +:1013100089BD82E189BD09B400FEFDCF8091D8006E +:101320008F7D8093D8008091E00082608093E00000 +:101330008091E00081FDFCCF0895CF92DF92EF9283 +:10134000FF920F931F93CF93DF93EC018B016A0100 +:101350000E94000B811133C0C114D10439F0F60191 +:1013600080819181081B190BC80FD91FE12CF12C2A +:101370000115110519F18091E80085FD16C08091D5 +:10138000E8008E778093E800C114D10449F0F6019B +:1013900080819181E80EF91EF182E08285E00FC024 +:1013A0000E94000B882321F30AC089918093F100E9 +:1013B00001501109FFEFEF1AFF0ADACF80E0DF9149 +:1013C000CF911F910F91FF90EF90DF90CF900895F4 +:1013D0002091EC013091ED012617370748F0611597 +:1013E000710539F42091E8002E772093E80001C0C0 +:1013F000B90140E061157105A9F12091E5012223B1 +:1014000009F443C0253009F442C02091E80023FDCF +:1014100040C02091E80022FD32C02091E80020FF6A +:10142000E9CF4091F3002091F20030E0342BFC0131 +:10143000CF016115710559F02830310540F48191D3 +:101440008093F100615071092F5F3F4FF1CF41E070 +:101450002830310509F040E02091E8002E772093F4 +:10146000E800C8CF4111C9CF0AC08091E5018823A7 +:1014700061F0853061F08091E80083FD0AC08091C1 +:10148000E80082FFF2CF80E0089582E0089583E0D3 +:10149000089581E008952091EC013091ED01261727 +:1014A000370748F06115710539F42091E8002E776F +:1014B0002093E80001C0B901FC0120E0611571052D +:1014C00091F18091E501882309F440C0853009F449 +:1014D0003FC08091E80083FD3DC08091E80082FD1F +:1014E0002FC08091E80080FFE9CF2091F300809128 +:1014F000F20090E0922B6115710559F0883091054A +:1015000040F424912093F1003196615071090196C5 +:10151000F2CF21E0089709F020E08091E8008E7773 +:101520008093E800CBCF2111CCCF0AC08091E50198 +:10153000882361F0853061F08091E80083FD0AC066 +:101540008091E80082FFF2CF80E0089582E0089564 +:1015500083E0089581E00895982F973058F590938F +:10156000E900981739F07091EC002091ED0050914E +:10157000F00003C0242F762F50E021FF19C03091D6 +:10158000EB003E7F3093EB003091ED003D7F3093D8 +:10159000ED003091EB0031603093EB007093EC0084 +:1015A0002093ED005093F0002091EE0027FF07C03C +:1015B0009F5FD3CF8F708093E90081E0089580E032 +:1015C00008958091E60187FF11C08091E80082FDB7 +:1015D00005C08091E5018111F8CF11C08091E8002C +:1015E0008B770BC08091E501882349F08091E8005A +:1015F00080FFF8CF8091E8008E778093E80008950F +:101600002091E4003091E50095E64091EC00842FB4 +:10161000817040FF22C08091E80080FD1CC0809155 +:10162000E501882391F0853091F08091EB0085FDF4 +:1016300010C04091E4005091E5004217530729F390 +:101640009A01915011F784E0089582E0089583E0B3 +:10165000089581E0089580E008954091E80042FFF8 +:10166000DECF08950E94A00B0E94A80BE0EEF0E0F0 +:10167000808181608083E8EDF0E080818F778083D6 +:1016800019BCA7EDB0E08C918E7F8C9380818F7E0A +:1016900080831092E40108950F931F93CF93DF93FB +:1016A0000E94A00B0E94A80BC8EDD0E088818F7724 +:1016B000888388818068888388818F7D888319BC2E +:1016C0001092E5011092E1011092E3011092E20103 +:1016D00000EE10E0F80180818B7F8083888181603B +:1016E000888342E060E080E00E94AC0AE1EEF0E036 +:1016F00080818E7F8083E2EEF0E080818160808354 +:10170000808188608083F80180818E7F80838881DA +:1017100080618883DF91CF911F910F910895E8ED4B +:10172000F0E080818F7E8083E7EDF0E08081816052 +:10173000808384E082BF81E08093E4010C944C0BB1 +:10174000E8EDF0E080818E7F80831092E2000895C2 +:101750001092DA001092E10008951F920F920FB6D6 +:101760000F9211242F933F934F935F936F937F9327 +:101770008F939F93AF93BF93EF93FF938091E1007B +:1017800082FF0BC08091E20082FF07C08091E100E0 +:101790008B7F8093E1000E94140E8091DA0080FF1D +:1017A0001FC08091D80080FF1BC08091DA008E7F1F +:1017B0008093DA008091D90080FF0DC080E189BD5F +:1017C00082E189BD09B400FEFDCF81E08093E5018F +:1017D0000E940F0805C019BC1092E5010E941D0867 +:1017E0008091E10080FF19C08091E20080FF15C068 +:1017F0008091E2008E7F8093E2008091E200806120 +:101800008093E2008091D80080628093D80019BC58 +:1018100085E08093E5010E9421088091E10084FF2A +:1018200030C08091E20084FF2CC080E189BD82E15C +:1018300089BD09B400FEFDCF8091D8008F7D8093D3 +:10184000D8008091E1008F7E8093E1008091E200DA +:101850008F7E8093E2008091E20081608093E200BD +:101860008091E101882311F084E007C08091E300BA +:1018700087FD02C081E001C083E08093E5010E9402 +:1018800023088091E10083FF29C08091E20083FF5B +:1018900025C08091E100877F8093E10082E0809302 +:1018A000E5011092E1018091E1008E7F8093E100DB +:1018B0008091E2008E7F8093E2008091E20080615F +:1018C0008093E20042E060E080E00E94AC0A8091F8 +:1018D000F00088608093F0000E942008FF91EF9153 +:1018E000BF91AF919F918F917F916F915F914F9138 +:1018F0003F912F910F900FBE0F901F9018951F9240 +:101900000F920FB60F9211242F933F934F935F9333 +:101910006F937F938F939F93AF93BF93CF93DF93F7 +:10192000EF93FF93C091E900CF708091EC00D82F26 +:10193000D17080FDD0E81092E9008091F000877F9F +:101940008093F00078940E94C30C1092E90080917B +:10195000F00088608093F000CD2BCF70C093E90039 +:10196000FF91EF91DF91CF91BF91AF919F918F91B7 +:101970007F916F915F914F913F912F910F900FBE8B +:101980000F901F9018951F93CF93DF93CDB7DEB7BD +:10199000AA970FB6F894DEBF0FBECDBFE6EEF1E01A +:1019A00088E08E0F9091F10091938E13FBCF0E94EF +:1019B0003F088091E80083FF1FC18091E60190916C +:1019C000E701492F50E04A30510508F015C1FA01EE +:1019D000EA5AFF4F0C947922803881F0823809F05E +:1019E0000BC18091EA018F708093E9008091EB0038 +:1019F00085FB882780F91092E90006C08091E201FA +:101A00009091E301911182609091E800977F90930B +:101A1000E8008093F1001092F100C8C0282F2D7FBC +:101A200009F0EAC0882319F0823061F0E5C08091A6 +:101A3000E801813009F0E0C0933009F080E0809344 +:101A4000E3012BC08091E801811127C08091EA0158 +:101A50008F7009F4D1C08093E9002091EB0020FF42 +:101A60001CC0933021F48091EB00806214C09091EF +:101A7000EB0090619093EB0021E030E0A90102C0FF +:101A8000440F551F8A95E2F74093EA001092EA004E +:101A90008091EB0088608093EB001092E9008091C8 +:101AA000E800877F86C08111A7C01091E8011F77E9 +:101AB0008091E3008078812B8093E3008091E8009F +:101AC000877F8093E8000E94E10A8091E80080FF10 +:101AD000FCCF8091E30080688093E300111102C085 +:101AE00082E001C083E08093E50186C080588230A7 +:101AF00008F082C08091E8019091E9018C3D53E0AB +:101B0000950779F583E08A838AE289834FB7F89451 +:101B1000DE01139620E03EE051E2E32FF0E0509327 +:101B20005700E49120FF03C0E295EF703F5FEF7034 +:101B30008E2F90E0EA3010F0C79601C0C0968D93CA +:101B40009D932F5F243149F74FBF8091E800877F35 +:101B50008093E8006AE270E0CE0101960E94E809F5 +:101B600014C0AE014F5F5F4F6091EA010E942F09E0 +:101B7000BC01892B09F440C09091E800977F9093B5 +:101B8000E80089819A810E944B0A8091E8008B7756 +:101B90008093E80031C0803879F58091E800877F34 +:101BA0008093E8008091E1018093F1008091E8004A +:101BB0008E778093E8000E94E10A1EC081111CC04C +:101BC0009091E8019230C0F48091E800877F809383 +:101BD000E8009093E1010E94E10A8091E101811106 +:101BE00006C08091E30087FD02C081E001C084E06F +:101BF0008093E5010E942B088091E80083FF0AC0D2 +:101C00008091E800877F8093E8008091EB008062FC +:101C10008093EB00AA960FB6F894DEBF0FBECDBF3F +:101C2000DF91CF911F9108950895CF938091E501A1 +:101C30008823A1F0C091E900CF709091EC00892F2A +:101C4000817090FD80E8C82B1092E9008091E80037 +:101C500083FD0E94C30CCF70C093E900CF9108951B +:101C600090936901809368010895E0916801F09173 +:101C70006901309721F00190F081E02D099480E016 +:101C80000895E0916801F0916901309721F0028098 +:101C9000F381E02D09940895E0916801F0916901C4 +:101CA000309721F00480F581E02D0994089520916A +:101CB0006601309167018217930771F09093670175 +:101CC00080936601E0916801F0916901309721F0FD +:101CD0000680F781E02D09940895209164013091E8 +:101CE00065018217930771F09093650180936401F9 +:101CF000E0916801F0916901309721F00084F1854D +:101D0000E02D0994089508950C94830E0E94561AAC +:101D10000E940B040C941C1BCF92DF92EF92FF9257 +:101D20000F931F93CF93DF93CDB7DEB72B970FB6EB +:101D3000F894DEBF0FBECDBF0E9423048BE6C82EF1 +:101D400081E0D82E00E010E0E02E802F0E941105E7 +:101D5000F60141916F01F42EF826B1F40F5F1F4F89 +:101D60000E30110589F78FEF89838A831B820E94C9 +:101D70005F1A8160782F9D838C8349815A816B81A2 +:101D80008D810E942F0F40C09091CC0191FF04C023 +:101D90008B870E9417058B8520E030E04F2D50E0A7 +:101DA000922FBA01022E02C0759567950A94E2F748 +:101DB00060FF24C02E83EF8221E030E0690102C081 +:101DC000CC0CDD1C9A95E2F790E08C219D21892BAB +:101DD00009F420E028870E945F1A8160782F9A8793 +:101DE00089874E815F8168858A850E942F0FF8015F +:101DF000E559FE4F8081C826C08206C02F5F3F4F45 +:101E00002630310569F6AACF0E94031E10916A019F +:101E10000E94350E1817A1F00E94350E80936A01BA +:101E20002B960FB6F894DEBF0FBECDBFDF91CF91DA +:101E30001F910F91FF90EF90DF90CF900C942E07A1 +:101E40002B960FB6F894DEBF0FBECDBFDF91CF91BA +:101E50001F910F91FF90EF90DF90CF900895CF9357 +:101E6000DF93CDB7DEB72B970FB6F894DEBF0FBE6A +:101E7000CDBF4F83588769877A878B87DE0111969C +:101E800086E0FD0111928A95E9F785E0FE0137961B +:101E900001900D928A95E1F749815A816B817C818D +:101EA0008D819E810E9445162B960FB6F894DEBF59 +:101EB0000FBECDBFDF91CF910895CF93882309F452 +:101EC000C2C0C82F823859F40E94350E81FDBBC0B4 +:101ED00089E30E94E1180E949E1989E30CC08338AF +:101EE00079F40E94350E80FDAEC083E50E94E118B2 +:101EF0000E949E1983E50E942319CF910C949E198C +:101F0000843859F40E94350E82FD9DC087E40E94FA +:101F1000E1180E949E1987E4EECF8CEF8C0F813A76 +:101F200048F48C2F0E94442081118DC08C2F0E9478 +:101F3000E118E3CF80E28C0F883048F4C77081E06D +:101F400001C0880FCA95EAF70E946719D6CF8BE5C2 +:101F50008C0F833078F4C53A29F0C63A31F083E823 +:101F600090E005C081E890E002C082E890E0CF9167 +:101F70000C94570E88E58C0F833108F064C0C83A82 +:101F800039F1C93A41F1CA3A49F1CB3A51F1CC3A67 +:101F900059F1CD3A61F1C03B69F1CE3A71F1CF3AD6 +:101FA00079F1C13B81F1C23B89F1C33B91F1C43B63 +:101FB00099F1C53BA1F1C63BA9F1C73BB1F1C83BC3 +:101FC000B9F1C93BC1F1CA3BC9F180E090E038C02A +:101FD00082EE90E035C089EE90E032C08AEE90E06B +:101FE0002FC085EB90E02CC086EB90E029C087EBFA +:101FF00090E026C08CEC90E023C08DEC90E020C0F7 +:1020000083E891E01DC08AE891E01AC082E991E07E +:1020100017C084E991E014C081E292E011C083E22C +:1020200092E00EC084E292E00BC085E292E008C02C +:1020300086E292E005C087E292E002C08AE292E086 +:10204000CF910C946D0ECF910895882309F44BC065 +:10205000823859F40E94350E81FF45C089E30E9401 +:10206000E1180E949E1989E30CC0833871F40E9424 +:10207000350E80FF38C083E50E94E1180E949E194A +:1020800083E50E9423190C949E19843859F40E9408 +:10209000350E82FF28C087E40E94E1180E949E1935 +:1020A00087E4EFCF9CEF980F913A58F390E2980FA6 +:1020B000983050F4877091E001C0990F8A95EAF743 +:1020C000892F0E946D19DFCF9BE5980F933020F484 +:1020D00080E090E00C94570E885A833120F480E021 +:1020E00090E00C946D0E0895882321F00E946719EA +:1020F0000C949E190895882321F00E946D190C9468 +:102100009E190895BF92CF92DF92EF92FF920F93A4 +:102110001F93CF93DF9300D000D000D0CDB7DEB7B0 +:1021200025E0FC01DE01119601900D922A95E1F760 +:10213000FC01408131810281258122952F706381CC +:102140007481672B09F4E5C23F3F19F44F3F09F44E +:10215000E0C27C0149833A8389819A812E830E945F +:10216000A018182FB92E0E949F180E946617EB2DF9 +:10217000E295EF70F0E0E05AFF4F2E810C94792247 +:102180008B2D807F9B2D9F70F92E882319F0F29460 +:1021900080EFF822002349F0FF2009F467C28F2D59 +:1021A0000E9477190E949E1961C2812F0E942510FA +:1021B000FF2009F4AEC28F2D0E947D1926960FB61E +:1021C000F894DEBF0FBECDBFDF91CF911F910F916D +:1021D000FF90EF90DF90CF90BF900C949E193B2D15 +:1021E000307F8B2D8F70303211F08295807F1123DC +:1021F00019F0113021F12CC00023B9F0222309F489 +:10220000A0C1213009F09DC126960FB6F894DEBF1B +:102210000FBECDBFDF91CF911F910F91FF90EF9037 +:10222000DF90CF90BF900C948719222319F02130B2 +:1022300009F46FC28E830E948A198E8196C1002391 +:1022400021F0223008F065C27CC1211162C28DC12B +:10225000002321F0222309F474C108C2222309F4C7 +:1022600084C119C22B2D26952695237030E02115A7 +:10227000310521F021303105D1F04BC2002321F08E +:10228000812F9B2D937002C080E090E026960FB6C0 +:10229000F894DEBF0FBECDBFDF91CF911F910F919C +:1022A000FF90EF90DF90CF90BF900C94570E0023DB +:1022B00021F0812F9B2D937002C080E090E0269644 +:1022C0000FB6F894DEBF0FBECDBFDF91CF911F9147 +:1022D0000F91FF90EF90DF90CF90BF900C946D0E18 +:1022E000812F002319F00E940B1D02C00E94731D54 +:1022F00026960FB6F894DEBF0FBECDBFDF91CF910B +:102300001F910F91FF90EF90DF90CF90BF900C94B2 +:10231000F81D8B2D837009F07BC00111FAC1812F4C +:10232000829586958770880F880F912F9F70C92E90 +:10233000D12CE12CF12C082E04C0CC0CDD1CEE1CA1 +:10234000FF1C0A94D2F714FF12C04FE050E060E087 +:1023500070E004C0440F551F661F771F8A95D2F79F +:10236000CB01BA01609570958095909503C060E0AF +:1023700070E0CB012B2D269526952370422F50E03F +:1023800042305105D9F04330510569F16C297D295E +:102390008E299F294130510551F126960FB6F894A8 +:1023A000DEBF0FBECDBFDF91CF911F910F91FF9088 +:1023B000EF90DF90CF90BF900C948D176C297D2902 +:1023C0008E299F2926960FB6F894DEBF0FBECDBF8B +:1023D000DF91CF911F910F91FF90EF90DF90CF9001 +:1023E000BF900C94A9170E948D17C701B6012696BD +:1023F0000FB6F894DEBF0FBECDBFDF91CF911F9116 +:102400000F91FF90EF90DF90CF90BF900C947117D9 +:10241000002319F08B2D817001C08695882309F463 +:1024200078C1812F829586958770880F880F912FAC +:102430009F70C92ED12CE12CF12C082E04C0CC0C9D +:10244000DD1CEE1CFF1C0A94D2F714FF12C04FE0F3 +:1024500050E060E070E004C0440F551F661F771F16 +:102460008A95D2F7CB01BA016095709580959095C9 +:1024700003C060E070E0CB012B2D269526952370DC +:10248000422F50E042305105D9F04330510569F1F7 +:102490006C297D298E299F294130510551F12696BD +:1024A0000FB6F894DEBF0FBECDBFDF91CF911F9165 +:1024B0000F91FF90EF90DF90CF90BF900C94671832 +:1024C0006C297D298E299F2926960FB6F894DEBFA8 +:1024D0000FBECDBFDF91CF911F910F91FF90EF9075 +:1024E000DF90CF90BF900C9483180E946718C701AB +:1024F000B60126960FB6F894DEBF0FBECDBFDF91B2 +:10250000CF911F910F91FF90EF90DF90CF90BF90F0 +:102510000C944B18103FD1F118F4103E50F4A1C0A8 +:10252000123F09F463C008F44CC0133F09F473C0B0 +:1025300098C01F708B2D8F710023A1F00E94E417AB +:10254000812F26960FB6F894DEBF0FBECDBFDF9168 +:10255000CF911F910F91FF90EF90DF90CF90BF90A0 +:102560000C9474100E940518812F26960FB6F894CB +:10257000DEBF0FBECDBFDF91CF911F910F91FF90B6 +:10258000EF90DF90CF90BF900C947B100023A9F0C8 +:102590002111BFC08B2D8F7126960FB6F894DEBF28 +:1025A0000FBECDBFDF91CF911F910F91FF90EF90A4 +:1025B000DF90CF90BF900C942A18223008F0A9C069 +:1025C000E9CF0023A9F08B2D8F7126960FB6F894D2 +:1025D000DEBF0FBECDBFDF91CF911F910F91FF9056 +:1025E000EF90DF90CF90BF900C94E417002359F345 +:1025F0008B2D8F7126960FB6F894DEBF0FBECDBF20 +:10260000DF91CF911F910F91FF90EF90DF90CF90CE +:10261000BF900C940518002399F08B2D8F7126968E +:102620000FB6F894DEBF0FBECDBFDF91CF911F91E3 +:102630000F91FF90EF90DF90CF90BF900C94CF1749 +:1026400026960FB6F894DEBF0FBECDBFDF91CF91B7 +:102650001F910F91FF90EF90DF90CF90BF900C945F +:10266000C5170023A9F0222309F4ADCF812F2696A8 +:102670000FB6F894DEBF0FBECDBFDF91CF911F9193 +:102680000F91FF90EF90DF90CF90BF900C945D0F73 +:10269000222309F4ADCF812F26960FB6F894DEBF22 +:1026A0000FBECDBFDF91CF911F910F91FF90EF90A3 +:1026B000DF90CF90BF900C9425104B2D4F70612F61 +:1026C000C7010E94AB0226960FB6F894DEBF0FBE7C +:1026D000CDBFDF91CF911F910F91FF90EF90DF90D1 +:1026E000CF90BF900C94E9164B2D4F70612FC7010E +:1026F00026960FB6F894DEBF0FBECDBFDF91CF9107 +:102700001F910F91FF90EF90DF90CF90BF900C94AE +:10271000D70526960FB6F894DEBF0FBECDBFDF916A +:10272000CF911F910F91FF90EF90DF90CF90BF90CE +:1027300008950E9484190E9459190E949E190E94AE +:10274000A91E0E94F81D80E090E00E94570E80E0D4 +:1027500090E00C946D0E0E9474190C9499130E94D1 +:10276000A018292F22952F7030E02C3031054CF421 +:102770002A3031056CF4225031092230310588F4B9 +:1027800007C02C30310549F02F30310531F009C038 +:10279000803E48F0803F29F406C093FB882780F9EB +:1027A000089580E0089581E00895CF93DF9300D0ED +:1027B00000D01F92CDB7DEB70F900F900F900F9003 +:1027C0000F90DF91CF910895CF93DF9300D000D089 +:1027D00000D0CDB7DEB726960FB6F894DEBF0FBE99 +:1027E000CDBFDF91CF9108951F93CF93DF93C09119 +:1027F000790116E080917A01C81799F0D0E01C9F0A +:10280000F0011D9FF00D1124E558FE4F40815181CC +:1028100062817381848195810E94E4132196C7703F +:10282000E9CFDF91CF911F9108954091AB01509175 +:10283000AC016091AD017091AE018091AF019091BA +:10284000B0010C94E4138091B00182958F7009F06F +:1028500054C08091AD01882309F44FC08091790163 +:10286000A0917A016091AB017091AC014091AE01F1 +:102870005091AF01B6E08A1709F43FC090E04115CE +:102880005105C1F17F3F11F46F3FA1F1B89FF001F5 +:10289000B99FF00D1124E558FE4F218172132AC013 +:1028A0002081621327C02281211124C02381348119 +:1028B0002417350710F421503109241B350B283C0F +:1028C0003105C0F42091B0012F7020612093B00138 +:1028D00026E0289FF001299FF00D1124E058FE4FBB +:1028E00080818F70806180838BEA91E00E948210EA +:1028F0000C94F41301968770BECF0895CF92DF92A7 +:10290000EF92FF920F931F93CF93DF93CDB7DEB774 +:1029100062970FB6F894DEBF0FBECDBF8C0185E085 +:10292000F801DE011D9601900D928A95E1F7D8011C +:102930004C9111965C91119712966C911297139687 +:10294000CD90DC9014973091AB017091AC018091E7 +:10295000AE019091AF01009709F46BC17F3F19F46C +:102960003F3F09F466C1E090AD01EE2009F4C0C01C +:102970002091B001C816D90628F0F601E81BF90B22 +:10298000CF0104C0809590958C0D9D1DFF24F3947C +:10299000883C910578F0F12C207F09F0C6C07C2D91 +:1029A000D98AC88A89890E94D5138BEA91E00E944E +:1029B0008210B1C0822F807F09F046C0751314C009 +:1029C000341312C0611110C02F7020612093B00128 +:1029D0000E9415148BEA91E00E9482108091B00150 +:1029E000D80115968C932EC0CD2819F15F3F11F4B4 +:1029F0004F3FF9F0F62E61111CC0809179012091B2 +:102A00007A0136E0821709F45AC090E0389FF0014D +:102A1000399FF00D1124E558FE4F7181571306C000 +:102A20007081471303C07281711103C001968770D2 +:102A3000E9CFF62E662309F418C18091B0018160B8 +:102A40008093B001F12C11C1751308C0341306C076 +:102A5000611104C08091B001D801C3C04D875E8769 +:102A60008D859E856A8B0E94AF136A898823E1F168 +:102A70006623D1F12091B001822F82958F7090E072 +:102A8000029774F08091AB019091AC0198878F838D +:102A90001986DB86CA862C87CE0107960E94821093 +:102AA00086E0F801ABEAB1E001900D928A95E1F77A +:102AB0000E9423140E941514FF24F394D6C04D875E +:102AC0005E878D859E850E94A018292F22952F70E4 +:102AD00030E0223031050CF0BCC09F7009F0B6C068 +:102AE000805E883008F4C1C0C8010E948210E4CF23 +:102AF000C816D90608F453C0F601E81BF90BCF013C +:102B0000883C910508F450C0F12C7C2DD98AC88AE4 +:102B100089890E94D513EBEAF1E086E0DF011D927E +:102B20008A95E9F70E941514A0C0751314C03413D8 +:102B300012C0611110C08091B001F8018583C801F5 +:102B40000E94821086E0EBEAF1E0DF011D928A9597 +:102B5000E9F7FE2C8AC04D875E878D859E856A8B3E +:102B60000E94AF136A89882309F4BECF662309F453 +:102B7000BBCF2091B001822F82958F7090E0029799 +:102B80000CF48ECF8091AB019091AC019A83898334 +:102B90001B82DD82CC822E83CE0101967FCF809571 +:102BA00090958C0D9D1DACCFF62E662309F49CCF1D +:102BB00075132EC034132CC02091B00120FD1FC00E +:102BC000822F82958F70D9F0D80115962C93159786 +:102BD0008F3049F08F5F982F9295907F822F8F7062 +:102BE000892B15968C93C8010E94821086E0F8010B +:102BF000ABEAB1E001900D928A95E1F793CF86E0C0 +:102C0000F801ABEAB1E001900D928A95E1F72DC091 +:102C10004D875E878D859E850E94AF13811140CFC1 +:102C20008091B00181608093B001C8010E94821040 +:102C30001CC0662309F458CF4D875E878D859E851D +:102C40000E94AF13882309F44FCF2ACF811148CFB8 +:102C50000CC0243031050CF047CF9F7009F440CFF1 +:102C6000F8019581907F09F03BCF8F2D62960FB6CA +:102C7000F894DEBF0FBECDBFDF91CF911F910F91B2 +:102C8000FF90EF90DF90CF9008951F93CF93DF9345 +:102C9000CDB7DEB72C970FB6F894DEBF0FBECDBF11 +:102CA0004F83588769877A878B879C87CE010796E1 +:102CB0000E947E14882369F08F8198852A853B8540 +:102CC000232BF1F19F3F09F063C08F3F09F060C0F3 +:102CD00037C086E0FE013796DE01119601900D9215 +:102CE0008A95E1F76F817885EA85FB85309741F118 +:102CF0007F3F11F46F3F21F120917A0130E0C9014B +:102D00000196877099274091790150E084179507C3 +:102D100009F447C069837A83FD83EC8396E0929F30 +:102D2000D001939FB00D1124A558BE4FFE013196DE +:102D300001900D929A95E1F780937A010E94F41325 +:102D400016E08091790190917A018917C1F1189F5D +:102D5000C001112485589E4F0E947E14882379F16A +:102D6000E09179011E9FF0011124E558FE4F40814A +:102D7000518162817381848195810E94E4138091E5 +:102D8000790190E001968770992780937901D9CFD6 +:102D90004F81588569857A858B859C850E94E413CF +:102DA000CFCF0E94AB1310927A0110927901EBEA17 +:102DB000F1E086E0DF011D928A95E9F7C1CF2C96FC +:102DC0000FB6F894DEBF0FBECDBFDF91CF911F913C +:102DD0000895EF92FF920F931F93CF93DF938C018F +:102DE000892B09F46CC0F12CEE24E394E8012196C0 +:102DF000F8018491843740F4843008F051C0813068 +:102E000081F0823019F15BC0853709F444C0A8F124 +:102E10009CE7980F903708F052C08F770E942510DA +:102E200041C00E5F1F4FFE01C49180E28C0F8830BD +:102E300048F4C7708E2D01C0880FCA95EAF70E942A +:102E4000771914C08C2F0E945D0F2DC00E5F1F4F8D +:102E5000FE01C49180E28C0F883058F4C7708E2D2B +:102E600001C0880FCA95EAF70E947D190E949E1939 +:102E70001AC08C2F0E94251016C00E5F1F4FFE0136 +:102E8000C491CC2381F08FE99FE00197F1F700C056 +:102E90000000C150F6CF0E5F1F4FFE01F49003C03B +:102EA0000E945D0F8E018F2D882309F49FCFEFE9DB +:102EB000FFE03197F1F700C000008150F5CFDF91BE +:102EC000CF911F910F91FF90EF9008950895609317 +:102ED000B5017093B6018093B7019093B8010C943B +:102EE00099130F931F930091B5011091B601209192 +:102EF000B7013091B801DC01CB01802B912BA22BC3 +:102F0000B32B8093B5019093B601A093B701B09312 +:102F1000B8011F910F910C9499130F931F93009177 +:102F2000B5011091B6012091B7013091B801DC01D3 +:102F3000CB0180239123A223B3238093B5019093E7 +:102F4000B601A093B701B093B8011F910F910C94F3 +:102F500099130F931F930091B5011091B601209121 +:102F6000B7013091B801DC01CB0180279127A2275E +:102F7000B3278093B5019093B601A093B701B093A6 +:102F8000B8011F910F910C9499131092B1011092F6 +:102F9000B2011092B3011092B4010C94991341E064 +:102FA00050E060E070E004C0440F551F661F771FBB +:102FB0008A95D2F74093B1015093B2016093B30167 +:102FC0007093B4010C94991341E050E060E070E01C +:102FD00004C0440F551F661F771F8A95D2F7809152 +:102FE000B1019091B201A091B301B091B401482B0D +:102FF000592B6A2B7B2B4093B1015093B201609304 +:10300000B3017093B4010C94991341E050E060E077 +:1030100070E004C0440F551F661F771F8A95D2F7D2 +:1030200040955095609570958091B1019091B20155 +:10303000A091B301B091B401482359236A237B23A3 +:103040004093B1015093B2016093B3017093B40106 +:103050000C94991341E050E060E070E004C0440F2C +:10306000551F661F771F8A95D2F78091B101909105 +:10307000B201A091B301B091B401482759276A2742 +:103080007B274093B1015093B2016093B3017093D9 +:10309000B4010C9499130F931F930091B1011091F7 +:1030A000B2012091B3013091B401DC01CB01802B3E +:1030B000912BA22BB32B8093B1019093B201A093DB +:1030C000B301B093B4011F910F910C9499130F9316 +:1030D0001F930091B1011091B2012091B301309181 +:1030E000B401DC01CB0180239123A223B32380937D +:1030F000B1019093B201A093B301B093B4011F91B9 +:103100000F910C9499130F931F930091B10110919B +:10311000B2012091B3013091B401DC01CB018027D1 +:103120009127A227B3278093B1019093B201A09376 +:10313000B301B093B4011F910F910C9499130895AA +:10314000CF92DF92EF92FF920F931F93CF93DF9373 +:103150008C01C090B501D090B601E090B701F0901D +:10316000B8014091B1015091B2016091B3017091E9 +:10317000B401C42AD52AE62AF72ACFE1D0E0D70144 +:10318000C6010C2E04C0B695A795979587950A940D +:10319000D2F780FF07C0B8018C2F0E94FA0581305A +:1031A000910531F4219758F7B80180E00E94FA05A3 +:1031B000DF91CF911F910F91FF90EF90DF90CF9013 +:1031C000089590910C01992321F090910D01911196 +:1031D00009C020910E0130910F01F90132969FEF45 +:1031E00040E01FC0982F9695969596959F3050F584 +:1031F000E0910E01F0910F01E90FF11D877021E0C0 +:1032000030E0A90102C0440F551F8A95E2F7CA01B8 +:103210009181892B818308959F3F39F04F5F4E3014 +:1032200041F051915813F8CF0DC05111F7CF942FA1 +:10323000F5CF9F3F39F0F901E90FF11D97FDFA95A0 +:1032400082830895089590910C01992321F0909123 +:103250000D01911109C020910E0130910F01F9016A +:103260003296205F3F4F1FC0982F96959695969562 +:103270009F30F0F4E0910E01F0910F01E90FF11D84 +:10328000877021E030E0A90102C0440F551F8A95E4 +:10329000E2F7CA018095918189238183089531964F +:1032A000E217F30729F090819813F9CF1082F7CF36 +:1032B000089581E090E0E0910E01F0910F01E80F98 +:1032C000F91F1082019680319105A9F70895909118 +:1032D000CB01892B8093CB01089580959091CB01F0 +:1032E00089238093CB0108951092CB01089590918A +:1032F000CA01892B8093CA01089580959091CA01D3 +:1033000089238093CA0108951092CA010895809379 +:10331000B90108951092B901089580910E0190911C +:103320000F01FC0131969C01205F3F4F80E091919D +:1033300091118F5FE217F307D1F70895E0910E0125 +:10334000F0910F018091CB018083E0910E01F0910B +:103350000F0190818091CA01892B80838091B901EE +:10336000882361F0E0910E01F0910F019081892B8B +:1033700080830E948D1981111092B90180910E01F4 +:1033800090910F010C94410ECF92DF92EF92FF9239 +:103390006C01EE24FF24C114D104E104F10421F0F6 +:1033A000C701B60120E101C020E0C72ED82EE92ECA +:1033B000FF24C114D104E104F10419F0285FC7010E +:1033C000B6016B017C0154E0F694E794D794C7945E +:1033D0005A95D1F7C114D104E104F10419F02C5F1E +:1033E000C701B6016B017C0142E0F694E794D794E3 +:1033F000C7944A95D1F7C114D104E104F10419F03E +:103400002E5FC701B601DC01CB01B695A795979554 +:103410008795892B8A2B8B2B09F02F5F822FFF90AA +:10342000EF90DF90CF9008958091E501843009F10D +:103430001092CD0120E488E190E00FB6F894A895B1 +:10344000809360000FBE2093600083B7817F84600B +:1034500083BF83B7816083BF7894889583B78E7F5D +:1034600083BF88E10FB6F8948093600010926000EB +:103470000FBE089508950895CF930E943A1A0E94AE +:1034800023040E943B1AC0E08C2F0E941105811179 +:1034900004C0CF5FCE30C1F701C081E0CF91089565 +:1034A0000E94AB130E94350E0C942E0782E084BD5F +:1034B00093E095BD9AEF97BD80936E0008952FB766 +:1034C000F8948091CE019091CF01A091D001B0915C +:1034D000D1012FBF0895CF92DF92EF92FF920F9309 +:1034E0001F932FB7F8944091CE015091CF01609176 +:1034F000D0017091D1012FBF6A017B01EE24FF241E +:103500008C0120E030E0C016D106E206F30610F48C +:10351000415051099A01281B390BC9011F910F9184 +:10352000FF90EF90DF90CF9008951F920F920FB60B +:103530000F9211248F939F93AF93BF938091CE01ED +:103540009091CF01A091D001B091D1010196A11D20 +:10355000B11D8093CE019093CF01A093D001B09381 +:10356000D101BF91AF919F918F910F900FBE0F909E +:103570001F9018950E94320BF8942FEF87EA91E67E +:10358000215080409040E1F700C0000087E090EBC0 +:10359000DC018093EE019093EF01A093F001B093D2 +:1035A000F1019CE088E10FB6F894A8958093600043 +:1035B0000FBE90936000FFCFEF92FF920F931F9387 +:1035C000CF93DF93D82FC0E08C2F0E94110500E02D +:1035D00010E0E82EF12CC701002E02C095958795CA +:1035E0000A94E2F780FD06C00F5F1F4F06301105F9 +:1035F00091F709C0602F7C2F80E00E94D805D81376 +:10360000F3CF81E004C0CF5FCE30F1F680E0DF91F0 +:10361000CF911F910F91FF90EF900895CF93C82FF6 +:103620008CE20E94DC1A882321F08C2FCF910C941D +:10363000DC1A80E0CF910895CF930E94631C811122 +:1036400002C00E94491CC5E6C15049F00E942304F3 +:103650008FE39CE90197F1F700C00000F5CF89E204 +:103660000E940E1B811113C18AE20E940E1B811160 +:103670000E94491C85E00E940E1B81110E94BA1A0B +:103680000E946E1C8093CC0187E00E940E1B882351 +:10369000A9F18BE10E940E1B882351F08091CC018F +:1036A00081FB222720F991E0922790FB81F90EC03F +:1036B0008EE00E940E1B882361F08091CC0182FB7A +:1036C000222720F991E0922790FB82F98093CC0188 +:1036D00015C080E10E940E1B9091CC01882341F01F +:1036E00093FB222720F981E0822780FB93F904C015 +:1036F000892F809580FB90F99093CC018091CC012B +:103700000E94721C0E94801C8093DF0180EE0E9448 +:103710000E1B882341F08091DF01982F909590FB3C +:1037200080F98093DF0189E30E940E1B882359F002 +:103730008091DF0181FB222720F991E0922790FB05 +:1037400081F98093DF0182EE0E940E1B882359F0DD +:103750008091DF0182FB222720F991E0922790FBE4 +:1037600082F98093DF0186EE0E940E1B882359F0B8 +:103770008091DF0183FB222720F991E0922790FBC3 +:1037800083F98093DF0183EE0E940E1B882359F09A +:103790008091DF0184FB222720F991E0922790FBA2 +:1037A00084F98093DF0185E30E940E1B882359F082 +:1037B0008091DF0185FB222720F991E0922790FB81 +:1037C00085F98093DF0181E30E940E1B882359F065 +:1037D0008091DF0186FB222720F991E0922790FB60 +:1037E00086F98093DF0181E10E940E1B882359F046 +:1037F0008091DF0187FB222720F991E0922790FB3F +:1038000087F98093DF018091DF010E94841C809101 +:10381000DF0187FB882780F980930D0187E20E94F2 +:103820000E1BC82F8EE10E940E1B8111C2608FE11A +:103830000E940E1B8111C46080E20E940E1B811148 +:10384000C86081E20E940E1B8111C06182E20E9469 +:103850000E1B8111C06283E20E940E1B8111C064A5 +:1038600084E20E940E1B882311F0C06802C0CC23A2 +:1038700029F08C2F0E947B1C6C2F03C00E94771CA8 +:10388000682F70E080E090E0CF910C946717CF91A3 +:1038900008956DEE7EEF80E090E00E94AF2260E040 +:1038A00082E090E00E94A12260E083E090E00E942C +:1038B000A12260E084E090E00E94A12260E085E027 +:1038C00090E00C94A12280E090E00E949B2221E0F5 +:1038D0008D3E9E4F09F020E0822F089582E090E017 +:1038E0000C949322682F82E090E00C94A12283E054 +:1038F00090E00C949322682F83E090E00C94A12236 +:1039000084E090E00C949322682F84E090E00C9483 +:10391000A1228091D40180FF0BC06091130185E04A +:10392000689FB001112475956795759567952BC0B3 +:1039300081FF09C06091130185E0689FB0011124E7 +:103940007595679520C082FF07C06091130185E0DF +:10395000689FB001112417C09091D5019923D1F02F +:1039600060911201961788F72091130185E0289F36 +:1039700090011124929FA001939F500D112470E09B +:10398000CA010E9465226038710540F46115710515 +:1039900039F002C065E070E0862F08958FE7089542 +:1039A00081E008958091D40180FF08C060911101E9 +:1039B00070E0759567957595679521C081FF06C084 +:1039C0006091110170E07595679519C082FF04C080 +:1039D0006091110170E010C09091D5019923C1F060 +:1039E000609110019617A0F780911101899FC00185 +:1039F000112470E00E9465226038710528F4611579 +:103A0000710521F0862F08958FE7089581E00895CC +:103A100061E070E0F4CF803F21F40E94891C819521 +:103A200004C0813F29F40E94891C8093D801089525 +:103A3000823F21F40E94891C819504C0833F29F4B0 +:103A40000E94891C8093D7010895893F19F40E9430 +:103A5000D21C05C08A3F31F40E94D21C819580930C +:103A6000D90108958B3F21F40E94D21C819504C096 +:103A70008C3F29F40E94D21C8093DA010895843F80 +:103A800021F48091D601816017C0853F21F4809197 +:103A9000D601826011C0863F21F48091D6018460F6 +:103AA0000BC0873F21F48091D601886005C0883F14 +:103AB00031F48091D60180618093D60108958D3FC5 +:103AC00021F48091D40181600BC08E3F21F480915C +:103AD000D401826005C08F3F29F48091D4018460B5 +:103AE0008093D4010895803F39F48091D80187FFF5 +:103AF0006CC01092D80169C0813F29F48091D8012F +:103B00001816BCF362C09091D701823F29F497FF49 +:103B10005CC01092D70159C0833F19F41916CCF339 +:103B200054C0893F41F48091D90118160CF04DC062 +:103B30001092D9014AC08A3F29F48091D90187FFA8 +:103B400044C0F6CF8B3F39F48091DA0187FF3DC046 +:103B50001092DA013AC08C3F29F48091DA011816EC +:103B6000BCF333C0843F21F48091D6018E7F17C00F +:103B7000853F21F48091D6018D7F11C0863F21F4CD +:103B80008091D6018B7F0BC0873F21F48091D601B5 +:103B9000877F05C0883F31F48091D6018F7E809366 +:103BA000D60113C08D3F21F48091D4018E7F0BC0CC +:103BB0008E3F21F48091D4018D7F05C08F3F29F481 +:103BC0008091D4018B7F8093D4018091D7018111A2 +:103BD0000EC08091D80181110AC08091D901811154 +:103BE00006C08091DA01811102C01092D5010895BA +:103BF00086ED91E00E944C0E0E945F1A9093D301D3 +:103C00008093D20108951F93CF93DF938091D201C7 +:103C10009091D3010E946B1AAC019091D501992328 +:103C200021F02091140130E006C0209115018AE0B6 +:103C3000289F900111244217530708F486C08091F1 +:103C4000D701C091D801D091D9011091DA01811129 +:103C500007C0C11176C0D11174C0111172C075C0F6 +:103C60009F3F19F09F5F9093D501181624F40E948E +:103C7000891C8093D7018091D70187FF05C00E94DE +:103C8000891C81958093D7011C1624F40E94891CFD +:103C90008093D8018091D80187FF05C00E94891CBC +:103CA00081958093D8016091D701662339F1C09145 +:103CB000D801CC2319F1772767FD7095872F972FAF +:103CC0000E94762123E333E343E35FE30E94DA219A +:103CD0000E9443216093D7016C2F772767FD709571 +:103CE000872F972F0E94762123E333E343E35FE39B +:103CF0000E94DA210E9443216093D8011D1624F40A +:103D00000E94D21C8093D9018091D90187FF05C000 +:103D10000E94D21C81958093D901111624F40E942F +:103D2000D21C8093DA018091DA0187FF05C00E94DE +:103D3000D21C81958093DA01DF91CF911F910C9471 +:103D4000F81D9F3F09F08ECF96CFDF91CF911F9145 +:103D50000895E6EDF1E085E0DF011D928A95E9F72F +:103D60001092D5011092D4010895833081F128F486 +:103D7000813059F08230D1F00895853009F449C07E +:103D8000B8F1863009F456C0089580911501262FA8 +:103D900030E0280F311D2F3F310524F4680F609368 +:103DA000150108958FEF80931501089580911401F6 +:103DB000262F30E0280F311D2F3F310524F4680FE6 +:103DC0006093140108958FEF8093140108958091FA +:103DD0001301262F30E0280F311D2F3F310524F429 +:103DE000680F6093130108958FEF80931301089576 +:103DF00080911201262F30E0280F311D2F3F310511 +:103E000024F4680F6093120108958FEF80931201DC +:103E1000089580911101262F30E0280F311D2F3F8A +:103E2000310524F4680F6093110108958FEF80939A +:103E30001101089580911001262F30E0280F311DC7 +:103E40002F3F310524F4680F6093100108958FEF20 +:103E5000809310010895833011F128F4813049F0E6 +:103E6000823091F00895853081F120F18630C1F1E2 +:103E7000089580911501681720F4861B8093150121 +:103E8000089510921501089580911401681720F487 +:103E9000861B809314010895109214010895809157 +:103EA0001301681720F4861B809313010895109264 +:103EB0001301089580911201681720F4861B8093E6 +:103EC000120108951092120108958091110168174E +:103ED00020F4861B8093110108951092110108951A +:103EE00080911001681720F4861B809310010895BB +:103EF0001092100108950F931F938D3109F46BC038 +:103F000008F03FC08E3009F47DC0C0F4873009F45A +:103F10006EC068F4863009F0AFC08091CC01817F1B +:103F20008E7F8093CC0181E08093DC01A6C0883035 +:103F300009F458C08B3009F49BC09EC0863109F447 +:103F400097C078F4803109F470C0813109F094C0D1 +:103F50000E94AB1390910D0181E0892780930D01A0 +:103F600087C0893109F484C08B3109F085C0809104 +:103F7000CC0181FB222720F991E0922790FB81F967 +:103F80004AC0853309F45BC048F4873209F457C04E +:103F900008F45AC0893209F452C06EC0833438F430 +:103FA0008A3308F067C0883309F462C065C083347F +:103FB00009F445C0883409F05FC00E94AB130FEFCD +:103FC00013ED20E3015010402040E1F700C0000055 +:103FD0000E94BA1A4DC00E94FD200E94350E0E9418 +:103FE0002E0746C00E946E1C0E94801C41C090910A +:103FF000CC01892F817090FF12C0917F9E7F90939A +:10400000CC013BC08091CC0182FB222720F991E0BA +:10401000922790FB82F98093CC01992349F18091FA +:10402000CC0181608093CC0123C08091CC0183FBC3 +:10403000222720F991E0922790FB83F9ECCF61E0F1 +:1040400070E080E090E010C08D5141E050E060E011 +:1040500070E08A019B0104C0000F111F221F331F53 +:104060008A95D2F7C901B8010E9467170E94AB1365 +:1040700081E003C08953E9CF80E01F910F9108953B +:1040800080E0089580E00895CF93C82F8091DC01EF +:10409000813079F018F08230E9F187C0E0910E01AB +:1040A000F0910F018081813169F0823209F07FC087 +:1040B00009C0E0910E01F0910F018081813111F072 +:1040C000823261F48C2F0E944020811104C08C2F19 +:1040D0000E947B1F1DC081E090E01AC08C2F0E94BF +:1040E0004220811114C0C43179F048F4CB3079F00A +:1040F000C03109F060C082E08093DC0108C0C932A1 +:1041000019F0C83321F057C01092DC0154C081E08F +:10411000817053C0C93289F118F5C43171F1A8F426 +:10412000C73009F046C08AE08093150194E190936E +:10413000140193E0909313018093120188E080931F +:10414000110188E28093100134C0CE51C63088F549 +:10415000EC2FF0E0E65DFE4F80818093DB0129C00B +:10416000CE34E9F020F4CB3421F56AE013C0C13538 +:1041700079F0C235F1F461E00DC08091DB01882354 +:1041800019F01092DB0115C081E08093DC0115C0AD +:1041900061E006C08091DB010E94B51E0AC06AE0A2 +:1041A0008091DB010E942B1F04C01092DC0180E093 +:1041B00004C081E002C080E0ABCFCF910895E1E878 +:1041C000F0E08081886080838081816080838FB708 +:1041D000F89493E09093890090ED909388008FBFBE +:1041E0000895EFE6F0E08081826080830895EFE635 +:1041F000F0E080818D7F80830895EFE6F0E090818C +:1042000082E08927808308951F920F920FB60F9244 +:1042100011242F933F934F935F936F937F938F93CB +:104220009F93AF93BF93EF93FF938091DD019091A4 +:10423000DE0101969093DE018093DD01811103C0C0 +:1042400082E00E942E07E091DE01E695E695F0E01F +:10425000E657FB4FE4918091DD018E1303C080E0AF +:104260000E942E07FF91EF91BF91AF919F918F9187 +:104270007F916F915F914F913F912F910F900FBE62 +:104280000F901F90189504D06894B1118DC00895B7 +:1042900070D088F09F5790F0B92F9927B751A0F0B0 +:1042A000D1F0660F771F881F991F1AF0BA95C9F7CA +:1042B00012C0B13081F077D0B1E0089574C0672F9B +:1042C000782F8827B85F39F0B93FCCF3869577957A +:1042D0006795B395D9F73EF4909580957095619563 +:1042E0007F4F8F4F9F4F0895E89409C097FB3EF48E +:1042F00090958095709561957F4F8F4F9F4F992333 +:10430000A9F0F92F96E9BB279395F69587957795B0 +:104310006795B795F111F8CFFAF4BB0F11F460FF70 +:104320001BC06F5F7F4F8F4F9F4F16C0882311F0C8 +:1043300096E911C0772321F09EE8872F762F05C0DC +:10434000662371F096E8862F70E060E02AF09A9577 +:10435000660F771F881FDAF7880F9695879597F96C +:10436000089557FD9058440F551F59F05F3F71F065 +:104370004795880F97FB991F61F09F3F79F08795CC +:104380000895121613061406551FF2CF4695F1DF55 +:1043900008C0161617061806991FF1CF86957105E5 +:1043A000610508940895E894BB2766277727CB0119 +:1043B00097F908950BD078C069D028F06ED018F026 +:1043C000952309F05AC05FC01124EECFCADFA0F3D5 +:1043D000959FD1F3950F50E0551F629FF001729F9A +:1043E000BB27F00DB11D639FAA27F00DB11DAA1FB9 +:1043F000649F6627B00DA11D661F829F2227B00D06 +:10440000A11D621F739FB00DA11D621F839FA00D90 +:10441000611D221F749F3327A00D611D231F849FE0 +:10442000600D211D822F762F6A2F11249F57504037 +:104430008AF0E1F088234AF0EE0FFF1FBB1F661FD2 +:10444000771F881F91505040A9F79E3F510570F08B +:1044500014C0AACF5F3FECF3983EDCF386957795C6 +:104460006795B795F795E7959F5FC1F7FE2B880F86 +:10447000911D9695879597F9089597F99F6780E81C +:1044800070E060E008959FEF80EC089500240A94A6 +:104490001616170618060906089500240A9412161F +:1044A0001306140605060895092E0394000C11F452 +:1044B000882352F0BB0F40F4BF2B11F460FF04C0FF +:1044C0006F5F7F4F8F4F9F4F089597FB072E16F416 +:1044D000009407D077FD09D00E947F2207FC05D009 +:1044E0003EF4909581959F4F0895709561957F4F0B +:1044F0000895EE0FFF1F0590F491E02D0994AA1B7B +:10450000BB1B51E107C0AA1FBB1FA617B70710F0BE +:10451000A61BB70B881F991F5A95A9F780959095F0 +:10452000BC01CD010895F999FECF92BD81BDF89AE5 +:10453000992780B50895A8E1B0E042E050E00C94DE +:10454000B622262FF999FECF1FBA92BD81BD20BD9C +:104550000FB6F894FA9AF99A0FBE019608950E9440 +:10456000A122272F0C94A222DC01CB01FC01F99996 +:10457000FECF06C0F2BDE1BDF89A319600B40D92AF +:0C45800041505040B8F70895F894FFCF68 +:10458C0020023007BE079B07670733070101BA01FA +:10459C0028080A03140A3F4D36394B04FE03C8039E +:1045AC008F0322033B0354036D030102030405062E +:0445BC0007080900E3 +:00000001FF diff --git a/keyboard/ergodox_ez/keymaps/msc/readme.md b/keyboard/ergodox_ez/keymaps/msc/readme.md new file mode 100644 index 0000000000..0d14fcbd29 --- /dev/null +++ b/keyboard/ergodox_ez/keymaps/msc/readme.md @@ -0,0 +1,32 @@ +# MSC Configuration + +### Based mostly on the ErgoDox EZ default layout with optimizations for coding on osx. + +#### Expecting the user to rely on Coder Layer this keymap removes some of the duplicate symbol keys in the lower portions of the board and replaces them with arrow keys and modifiers. The Media Layer is also updated to match the change in the arrow keys and the left and right click buttons are moved under the thumb position. The Media layer is now reached with toggle button in the lower right. + +### Main Layer + +![Main Layer](img/main_layer.png) + +### Code Layer + +![Code Layer](img/code_layer.png) + +### Media Layer + +![Media Layer](img/media_layer.png) + +## Changelog + +Version 1.0 + +- Changed the temp code layer key in the bottom right to toggle media layer +- Changed the temp media key to only be ";" +- Changed right hand bottom row to match vim home row nav directions +- Changed media keys to match arrow key changes +- Changed media left and right click to spacebar and backspace locations +- Changed bottom left to Cmd +- Changed single quote on left bottom row to alt + +#### Coming Soon: +- A new layer for Blender editing with a focus on left hand shortcut and a righthand num pad to control the view in Blender. From 577971ab07a49405e1dcd8e5f75b3ecb87e710b9 Mon Sep 17 00:00:00 2001 From: IBNobody Date: Mon, 28 Mar 2016 00:03:21 -0500 Subject: [PATCH 10/45] Magic Key Overrides / Keyboard Lock / Forced NKRO Added Magic Key Overrides / Magic Key Cleanup / Added Keyboard Lock option to template / Added forced NKRO option to template (disabled by default) --- keyboard/retro_refit/Makefile | 23 +-- keyboard/retro_refit/config.h | 47 ++++- quantum/template/Makefile | 23 +-- quantum/template/config.h | 47 ++++- tmk_core/common/command.c | 353 +++++++++++++++++++++++----------- tmk_core/common/command.h | 121 ++++++++++++ tmk_core/common/keyboard.c | 6 + 7 files changed, 488 insertions(+), 132 deletions(-) diff --git a/keyboard/retro_refit/Makefile b/keyboard/retro_refit/Makefile index ec51227ff1..918b430719 100644 --- a/keyboard/retro_refit/Makefile +++ b/keyboard/retro_refit/Makefile @@ -113,18 +113,19 @@ OPT_DEFS += -DBOOTLOADER_SIZE=512 # Build Options # comment out to disable the options. # -BOOTMAGIC_ENABLE = yes # Virtual DIP switch configuration(+1000) -MOUSEKEY_ENABLE = yes # Mouse keys(+4700) -EXTRAKEY_ENABLE = yes # Audio control and System control(+450) -CONSOLE_ENABLE = yes # Console for debug(+400) -COMMAND_ENABLE = yes # Commands for debug and configuration +BOOTMAGIC_ENABLE = yes # Virtual DIP switch configuration(+1000) +MOUSEKEY_ENABLE = yes # Mouse keys(+4700) +EXTRAKEY_ENABLE = yes # Audio control and System control(+450) +CONSOLE_ENABLE = yes # Console for debug(+400) +COMMAND_ENABLE = yes # Commands for debug and configuration +KEYBOARD_LOCK_ENABLE = yes # Allow locking of keyboard via magic key # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE -# SLEEP_LED_ENABLE = yes # Breathing sleep LED during USB suspend -# NKRO_ENABLE = yes # USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work -# BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality -# MIDI_ENABLE = YES # MIDI controls -# UNICODE_ENABLE = YES # Unicode -# BLUETOOTH_ENABLE = yes # Enable Bluetooth with the Adafruit EZ-Key HID +# SLEEP_LED_ENABLE = yes # Breathing sleep LED during USB suspend +NKRO_ENABLE = yes # USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work +# BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality +# MIDI_ENABLE = YES # MIDI controls +# UNICODE_ENABLE = YES # Unicode +# BLUETOOTH_ENABLE = yes # Enable Bluetooth with the Adafruit EZ-Key HID # Optimize size but this may cause error "relocation truncated to fit" diff --git a/keyboard/retro_refit/config.h b/keyboard/retro_refit/config.h index ba9a861edd..05fceb92b2 100644 --- a/keyboard/retro_refit/config.h +++ b/keyboard/retro_refit/config.h @@ -53,11 +53,54 @@ along with this program. If not, see . /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE -/* key combination for command */ + +/* Force NKRO Mode - If forced on, must be disabled via magic key (default = LShift+RShift+N) */ +#define FORCE_NKRO + +/* + * Magic key options + * These options allow the magic key functionality to be changed. This is useful + * if your keyboard/keypad is missing keys and you want magic key support. + */ + +/* key combination for magic key command */ #define IS_COMMAND() ( \ keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ ) +/* control how magic key switches layers */ +//#define MAGIC_KEY_SWITCH_LAYER_WITH_FKEYS true +//#define MAGIC_KEY_SWITCH_LAYER_WITH_NKEYS true +//#define MAGIC_KEY_SWITCH_LAYER_WITH_CUSTOM false + +/* remap magic keys */ +//#define MAGIC_KEY_HELP1 H +//#define MAGIC_KEY_HELP2 SLASH +//#define MAGIC_KEY_DEBUG D +//#define MAGIC_KEY_DEBUG_MATRIX X +//#define MAGIC_KEY_DEBUG_KBD K +//#define MAGIC_KEY_DEBUG_MOUSE M +//#define MAGIC_KEY_VERSION V +//#define MAGIC_KEY_STATUS S +//#define MAGIC_KEY_CONSOLE C +//#define MAGIC_KEY_LAYER0_ALT1 ESC +//#define MAGIC_KEY_LAYER0_ALT2 GRAVE +//#define MAGIC_KEY_LAYER0 0 +//#define MAGIC_KEY_LAYER1 1 +//#define MAGIC_KEY_LAYER2 2 +//#define MAGIC_KEY_LAYER3 3 +//#define MAGIC_KEY_LAYER4 4 +//#define MAGIC_KEY_LAYER5 5 +//#define MAGIC_KEY_LAYER6 6 +//#define MAGIC_KEY_LAYER7 7 +//#define MAGIC_KEY_LAYER8 8 +//#define MAGIC_KEY_LAYER9 9 +//#define MAGIC_KEY_BOOTLOADER PAUSE +#define MAGIC_KEY_LOCK BSLS +//#define MAGIC_KEY_EEPROM E +//#define MAGIC_KEY_NKRO N +//#define MAGIC_KEY_SLEEP_LED Z + /* * Feature disable options * These options are also useful to firmware size reduction. @@ -76,4 +119,4 @@ along with this program. If not, see . //#define NO_ACTION_MACRO //#define NO_ACTION_FUNCTION -#endif +#endif \ No newline at end of file diff --git a/quantum/template/Makefile b/quantum/template/Makefile index 2efa691380..4fa195468d 100644 --- a/quantum/template/Makefile +++ b/quantum/template/Makefile @@ -113,18 +113,19 @@ OPT_DEFS += -DBOOTLOADER_SIZE=512 # Build Options # comment out to disable the options. # -BOOTMAGIC_ENABLE = yes # Virtual DIP switch configuration(+1000) -MOUSEKEY_ENABLE = yes # Mouse keys(+4700) -EXTRAKEY_ENABLE = yes # Audio control and System control(+450) -CONSOLE_ENABLE = yes # Console for debug(+400) -COMMAND_ENABLE = yes # Commands for debug and configuration +BOOTMAGIC_ENABLE = yes # Virtual DIP switch configuration(+1000) +MOUSEKEY_ENABLE = yes # Mouse keys(+4700) +EXTRAKEY_ENABLE = yes # Audio control and System control(+450) +CONSOLE_ENABLE = yes # Console for debug(+400) +COMMAND_ENABLE = yes # Commands for debug and configuration +KEYBOARD_LOCK_ENABLE = yes # Allow locking of keyboard via magic key # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE -# SLEEP_LED_ENABLE = yes # Breathing sleep LED during USB suspend -# NKRO_ENABLE = yes # USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work -# BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality -# MIDI_ENABLE = YES # MIDI controls -# UNICODE_ENABLE = YES # Unicode -# BLUETOOTH_ENABLE = yes # Enable Bluetooth with the Adafruit EZ-Key HID +# SLEEP_LED_ENABLE = yes # Breathing sleep LED during USB suspend +#NKRO_ENABLE = yes # USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work +# BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality +# MIDI_ENABLE = YES # MIDI controls +# UNICODE_ENABLE = YES # Unicode +# BLUETOOTH_ENABLE = yes # Enable Bluetooth with the Adafruit EZ-Key HID # Optimize size but this may cause error "relocation truncated to fit" diff --git a/quantum/template/config.h b/quantum/template/config.h index 7d6149f436..dae4b63130 100644 --- a/quantum/template/config.h +++ b/quantum/template/config.h @@ -55,11 +55,56 @@ along with this program. If not, see . /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE -/* key combination for command */ +/* Force NKRO Mode - If forced on, must be disabled via magic key (default = LShift+RShift+N) */ +//#define FORCE_NKRO + +/* + * Magic key options + * These options allow the magic key functionality to be changed. This is useful + * if your keyboard/keypad is missing keys and you want magic key support. + */ + +/* key combination for magic key command */ #define IS_COMMAND() ( \ keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ ) +/* control how magic key switches layers */ +//#define MAGIC_KEY_SWITCH_LAYER_WITH_FKEYS true +//#define MAGIC_KEY_SWITCH_LAYER_WITH_NKEYS true +//#define MAGIC_KEY_SWITCH_LAYER_WITH_CUSTOM false + +/* override magic key keymap */ +//#define MAGIC_KEY_SWITCH_LAYER_WITH_FKEYS +//#define MAGIC_KEY_SWITCH_LAYER_WITH_NKEYS +//#define MAGIC_KEY_SWITCH_LAYER_WITH_CUSTOM +//#define MAGIC_KEY_HELP1 H +//#define MAGIC_KEY_HELP2 SLASH +//#define MAGIC_KEY_DEBUG D +//#define MAGIC_KEY_DEBUG_MATRIX X +//#define MAGIC_KEY_DEBUG_KBD K +//#define MAGIC_KEY_DEBUG_MOUSE M +//#define MAGIC_KEY_VERSION V +//#define MAGIC_KEY_STATUS S +//#define MAGIC_KEY_CONSOLE C +//#define MAGIC_KEY_LAYER0_ALT1 ESC +//#define MAGIC_KEY_LAYER0_ALT2 GRAVE +//#define MAGIC_KEY_LAYER0 0 +//#define MAGIC_KEY_LAYER1 1 +//#define MAGIC_KEY_LAYER2 2 +//#define MAGIC_KEY_LAYER3 3 +//#define MAGIC_KEY_LAYER4 4 +//#define MAGIC_KEY_LAYER5 5 +//#define MAGIC_KEY_LAYER6 6 +//#define MAGIC_KEY_LAYER7 7 +//#define MAGIC_KEY_LAYER8 8 +//#define MAGIC_KEY_LAYER9 9 +//#define MAGIC_KEY_BOOTLOADER PAUSE +//#define MAGIC_KEY_LOCK CAPS +//#define MAGIC_KEY_EEPROM E +//#define MAGIC_KEY_NKRO N +//#define MAGIC_KEY_SLEEP_LED Z + /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/tmk_core/common/command.c b/tmk_core/common/command.c index d59bb01bbc..b4cd3ca56b 100644 --- a/tmk_core/common/command.c +++ b/tmk_core/common/command.c @@ -52,6 +52,8 @@ along with this program. If not, see . static bool command_common(uint8_t code); static void command_common_help(void); +static void print_version(void); +static void print_status(void); static bool command_console(uint8_t code); static void command_console_help(void); #ifdef MOUSEKEY_ENABLE @@ -112,35 +114,140 @@ bool command_console_extra(uint8_t code) ***********************************************************/ static void command_common_help(void) { - print("\n\t- Magic -\n" - "d: debug\n" - "x: debug matrix\n" - "k: debug keyboard\n" - "m: debug mouse\n" - "v: version\n" - "s: status\n" - "c: console mode\n" - "0-4: layer0-4(F10-F4)\n" - "Paus: bootloader\n" + print( "\n\t- Magic -\n" + STR(MAGIC_KEY_DEBUG ) ": Debug Message Toggle\n" + STR(MAGIC_KEY_DEBUG_MATRIX) ": Matrix Debug Mode Toggle - Show keypresses in matrix grid\n" + STR(MAGIC_KEY_DEBUG_KBD ) ": Keyboard Debug Toggle - Show keypress report\n" + STR(MAGIC_KEY_DEBUG_MOUSE ) ": Debug Mouse Toggle\n" + STR(MAGIC_KEY_VERSION ) ": Version\n" + STR(MAGIC_KEY_STATUS ) ": Status\n" + STR(MAGIC_KEY_CONSOLE ) ": Activate Console Mode\n" + +#if MAGIC_KEY_SWITCH_LAYER_WITH_CUSTOM + STR(MAGIC_KEY_LAYER0 ) ": Switch to Layer 0\n" + STR(MAGIC_KEY_LAYER1 ) ": Switch to Layer 1\n" + STR(MAGIC_KEY_LAYER2 ) ": Switch to Layer 2\n" + STR(MAGIC_KEY_LAYER3 ) ": Switch to Layer 3\n" + STR(MAGIC_KEY_LAYER4 ) ": Switch to Layer 4\n" + STR(MAGIC_KEY_LAYER5 ) ": Switch to Layer 5\n" + STR(MAGIC_KEY_LAYER6 ) ": Switch to Layer 6\n" + STR(MAGIC_KEY_LAYER7 ) ": Switch to Layer 7\n" + STR(MAGIC_KEY_LAYER8 ) ": Switch to Layer 8\n" + STR(MAGIC_KEY_LAYER9 ) ": Switch to Layer 9\n" +#endif + +#if MAGIC_KEY_SWITCH_LAYER_WITH_FKEYS + "F1-F10: Switch to Layer 0-9 (F10 = L0)\n" +#endif + +#if MAGIC_KEY_SWITCH_LAYER_WITH_NKEYS + "0-9: Switch to Layer 0-9\n" +#endif + + STR(MAGIC_KEY_LAYER0_ALT1 ) ": Switch to Layer 0 (alternate key 1)\n" + STR(MAGIC_KEY_LAYER0_ALT2 ) ": Switch to Layer 0 (alternate key 2)\n" + STR(MAGIC_KEY_BOOTLOADER ) ": Jump to Bootloader (Reset)\n" #ifdef KEYBOARD_LOCK_ENABLE - "Caps: Lock\n" + STR(MAGIC_KEY_LOCK ) ": Lock\n" #endif #ifdef BOOTMAGIC_ENABLE - "e: eeprom\n" + STR(MAGIC_KEY_EEPROM ) ": Print EEPROM Settings\n" #endif #ifdef NKRO_ENABLE - "n: NKRO\n" + STR(MAGIC_KEY_NKRO ) ": NKRO Toggle\n" #endif #ifdef SLEEP_LED_ENABLE - "z: sleep LED test\n" + STR(MAGIC_KEY_SLEEP_LED ) ": Sleep LED Test\n" #endif ); } +static void print_version(void) +{ + // print version & information + print("\n\t- Version -\n"); + print("DESC: " STR(DESCRIPTION) "\n"); + print("VID: " STR(VENDOR_ID) "(" STR(MANUFACTURER) ") " + "PID: " STR(PRODUCT_ID) "(" STR(PRODUCT) ") " + "VER: " STR(DEVICE_VER) "\n"); + print("BUILD: " STR(VERSION) " (" __TIME__ " " __DATE__ ")\n"); + + /* build options */ + print("OPTIONS:" + +#ifdef PROTOCOL_PJRC + " PJRC" +#endif +#ifdef PROTOCOL_LUFA + " LUFA" +#endif +#ifdef PROTOCOL_VUSB + " VUSB" +#endif +#ifdef BOOTMAGIC_ENABLE + " BOOTMAGIC" +#endif +#ifdef MOUSEKEY_ENABLE + " MOUSEKEY" +#endif +#ifdef EXTRAKEY_ENABLE + " EXTRAKEY" +#endif +#ifdef CONSOLE_ENABLE + " CONSOLE" +#endif +#ifdef COMMAND_ENABLE + " COMMAND" +#endif +#ifdef NKRO_ENABLE + " NKRO" +#endif +#ifdef KEYMAP_SECTION_ENABLE + " KEYMAP_SECTION" +#endif + + " " STR(BOOTLOADER_SIZE) "\n"); + + print("GCC: " STR(__GNUC__) "." STR(__GNUC_MINOR__) "." STR(__GNUC_PATCHLEVEL__) + " AVR-LIBC: " __AVR_LIBC_VERSION_STRING__ + " AVR_ARCH: avr" STR(__AVR_ARCH__) "\n"); + + return; +} + +static void print_status(void) +{ + + print("\n\t- Status -\n"); + + print_val_hex8(host_keyboard_leds()); + print_val_hex8(keyboard_protocol); + print_val_hex8(keyboard_idle); +#ifdef NKRO_ENABLE + print_val_hex8(keyboard_nkro); +#endif + print_val_hex32(timer_count); + +#ifdef PROTOCOL_PJRC + print_val_hex8(UDCON); + print_val_hex8(UDIEN); + print_val_hex8(UDINT); + print_val_hex8(usb_keyboard_leds); + print_val_hex8(usb_keyboard_idle_count); +#endif + +#ifdef PROTOCOL_PJRC +# if USB_COUNT_SOF + print_val_hex8(usbSofCount); +# endif +#endif + return; +} + #ifdef BOOTMAGIC_ENABLE static void print_eeconfig(void) { @@ -178,24 +285,36 @@ static void print_eeconfig(void) static bool command_common(uint8_t code) { + +#ifdef KEYBOARD_LOCK_ENABLE static host_driver_t *host_driver = 0; +#endif + switch (code) { + #ifdef SLEEP_LED_ENABLE - case KC_Z: - // test breathing sleep LED - print("Sleep LED test\n"); + + // test breathing sleep LED + case MAGIC_KC(MAGIC_KEY_SLEEP_LED): + print("Sleep LED Test\n"); sleep_led_toggle(); led_set(host_keyboard_leds()); break; #endif + #ifdef BOOTMAGIC_ENABLE - case KC_E: + + // print stored eeprom config + case MAGIC_KC(MAGIC_KEY_EEPROM): print("eeconfig:\n"); print_eeconfig(); break; #endif + #ifdef KEYBOARD_LOCK_ENABLE - case KC_CAPSLOCK: + + // lock/unlock keyboard + case MAGIC_KC(MAGIC_KEY_LOCK): if (host_get_driver()) { host_driver = host_get_driver(); clear_keyboard(); @@ -207,11 +326,15 @@ static bool command_common(uint8_t code) } break; #endif - case KC_H: - case KC_SLASH: /* ? */ + + // print help + case MAGIC_KC(MAGIC_KEY_HELP1): + case MAGIC_KC(MAGIC_KEY_HELP2): command_common_help(); break; - case KC_C: + + // activate console + case MAGIC_KC(MAGIC_KEY_CONSOLE): debug_matrix = false; debug_keyboard = false; debug_mouse = false; @@ -220,25 +343,33 @@ static bool command_common(uint8_t code) print("C> "); command_state = CONSOLE; break; - case KC_PAUSE: - clear_keyboard(); - print("\n\nbootloader... "); + + // jump to bootloader + case MAGIC_KC(MAGIC_KEY_BOOTLOADER): + clear_keyboard(); // clear to prevent stuck keys + print("\n\nJumping to bootloader... "); _delay_ms(1000); bootloader_jump(); // not return break; - case KC_D: + + // debug toggle + case MAGIC_KC(MAGIC_KEY_DEBUG): + debug_enable = !debug_enable; if (debug_enable) { + print("\ndebug: on\n"); + debug_matrix = true; + debug_keyboard = true; + debug_mouse = true; + } else { print("\ndebug: off\n"); debug_matrix = false; debug_keyboard = false; debug_mouse = false; - debug_enable = false; - } else { - print("\ndebug: on\n"); - debug_enable = true; } break; - case KC_X: // debug matrix toggle + + // debug matrix toggle + case MAGIC_KC(MAGIC_KEY_DEBUG_MATRIX): debug_matrix = !debug_matrix; if (debug_matrix) { print("\nmatrix: on\n"); @@ -247,7 +378,9 @@ static bool command_common(uint8_t code) print("\nmatrix: off\n"); } break; - case KC_K: // debug keyboard toggle + + // debug keyboard toggle + case MAGIC_KC(MAGIC_KEY_DEBUG_KBD): debug_keyboard = !debug_keyboard; if (debug_keyboard) { print("\nkeyboard: on\n"); @@ -256,87 +389,33 @@ static bool command_common(uint8_t code) print("\nkeyboard: off\n"); } break; - case KC_M: // debug mouse toggle + + // debug mouse toggle + case MAGIC_KC(MAGIC_KEY_DEBUG_MOUSE): debug_mouse = !debug_mouse; if (debug_mouse) { print("\nmouse: on\n"); debug_enable = true; } else { - print("\nmouse: off\n"); + print("\nmouse: off\n"); } break; - case KC_V: // print version & information - print("\n\t- Version -\n"); - print("DESC: " STR(DESCRIPTION) "\n"); - print("VID: " STR(VENDOR_ID) "(" STR(MANUFACTURER) ") " - "PID: " STR(PRODUCT_ID) "(" STR(PRODUCT) ") " - "VER: " STR(DEVICE_VER) "\n"); - print("BUILD: " STR(VERSION) " (" __TIME__ " " __DATE__ ")\n"); - /* build options */ - print("OPTIONS:" -#ifdef PROTOCOL_PJRC - " PJRC" -#endif -#ifdef PROTOCOL_LUFA - " LUFA" -#endif -#ifdef PROTOCOL_VUSB - " VUSB" -#endif -#ifdef BOOTMAGIC_ENABLE - " BOOTMAGIC" -#endif -#ifdef MOUSEKEY_ENABLE - " MOUSEKEY" -#endif -#ifdef EXTRAKEY_ENABLE - " EXTRAKEY" -#endif -#ifdef CONSOLE_ENABLE - " CONSOLE" -#endif -#ifdef COMMAND_ENABLE - " COMMAND" -#endif -#ifdef NKRO_ENABLE - " NKRO" -#endif -#ifdef KEYMAP_SECTION_ENABLE - " KEYMAP_SECTION" -#endif - " " STR(BOOTLOADER_SIZE) "\n"); - print("GCC: " STR(__GNUC__) "." STR(__GNUC_MINOR__) "." STR(__GNUC_PATCHLEVEL__) - " AVR-LIBC: " __AVR_LIBC_VERSION_STRING__ - " AVR_ARCH: avr" STR(__AVR_ARCH__) "\n"); - break; - case KC_S: - print("\n\t- Status -\n"); - print_val_hex8(host_keyboard_leds()); - print_val_hex8(keyboard_protocol); - print_val_hex8(keyboard_idle); -#ifdef NKRO_ENABLE - print_val_hex8(keyboard_nkro); -#endif - print_val_hex32(timer_count); - -#ifdef PROTOCOL_PJRC - print_val_hex8(UDCON); - print_val_hex8(UDIEN); - print_val_hex8(UDINT); - print_val_hex8(usb_keyboard_leds); - print_val_hex8(usb_keyboard_idle_count); -#endif + // print version + case MAGIC_KC(MAGIC_KEY_VERSION): + print_version(); + break; -#ifdef PROTOCOL_PJRC -# if USB_COUNT_SOF - print_val_hex8(usbSofCount); -# endif -#endif + // print status + case MAGIC_KC(MAGIC_KEY_STATUS): + print_status(); break; + #ifdef NKRO_ENABLE - case KC_N: - clear_keyboard(); //Prevents stuck keys. + + // NKRO toggle + case MAGIC_KC(MAGIC_KEY_NKRO): + clear_keyboard(); // clear to prevent stuck keys keyboard_nkro = !keyboard_nkro; if (keyboard_nkro) print("NKRO: on\n"); @@ -344,18 +423,78 @@ static bool command_common(uint8_t code) print("NKRO: off\n"); break; #endif - case KC_ESC: - case KC_GRV: - case KC_0: + + // switch layers + + case MAGIC_KC(MAGIC_KEY_LAYER0_ALT1): + case MAGIC_KC(MAGIC_KEY_LAYER0_ALT2): + switch_default_layer(0); + break; + +#if MAGIC_KEY_SWITCH_LAYER_WITH_CUSTOM + + case MAGIC_KC(MAGIC_KEY_LAYER0): + switch_default_layer(0); + break; + + case MAGIC_KC(MAGIC_KEY_LAYER1): + switch_default_layer(1); + break; + + case MAGIC_KC(MAGIC_KEY_LAYER2): + switch_default_layer(2); + break; + + case MAGIC_KC(MAGIC_KEY_LAYER3): + switch_default_layer(3); + break; + + case MAGIC_KC(MAGIC_KEY_LAYER4): + switch_default_layer(4); + break; + + case MAGIC_KC(MAGIC_KEY_LAYER5): + switch_default_layer(5); + break; + + case MAGIC_KC(MAGIC_KEY_LAYER6): + switch_default_layer(6); + break; + + case MAGIC_KC(MAGIC_KEY_LAYER7): + switch_default_layer(7); + break; + + case MAGIC_KC(MAGIC_KEY_LAYER8): + switch_default_layer(8); + break; + + case MAGIC_KC(MAGIC_KEY_LAYER9): + switch_default_layer(9); + break; +#endif + + +#if MAGIC_KEY_SWITCH_LAYER_WITH_FKEYS + + case KC_F1 ... KC_F9: + switch_default_layer((code - KC_F1) + 1); + break; case KC_F10: switch_default_layer(0); break; +#endif + +#if MAGIC_KEY_SWITCH_LAYER_WITH_NKEYS + case KC_1 ... KC_9: switch_default_layer((code - KC_1) + 1); break; - case KC_F1 ... KC_F9: - switch_default_layer((code - KC_F1) + 1); + case KC_0: + switch_default_layer(0); break; +#endif + default: print("?"); return false; diff --git a/tmk_core/common/command.h b/tmk_core/common/command.h index b57a6c1ced..92b18849bf 100644 --- a/tmk_core/common/command.h +++ b/tmk_core/common/command.h @@ -32,4 +32,125 @@ bool command_proc(uint8_t code); #define command_proc(code) false #endif + +#ifndef MAGIC_KEY_SWITCH_LAYER_WITH_FKEYS +#define MAGIC_KEY_SWITCH_LAYER_WITH_FKEYS true +#endif + +#ifndef MAGIC_KEY_SWITCH_LAYER_WITH_NKEYS +#define MAGIC_KEY_SWITCH_LAYER_WITH_NKEYS true +#endif + +#ifndef MAGIC_KEY_SWITCH_LAYER_WITH_CUSTOM +#define MAGIC_KEY_SWITCH_LAYER_WITH_CUSTOM false +#endif + +#ifndef MAGIC_KEY_HELP1 +#define MAGIC_KEY_HELP1 H +#endif + +#ifndef MAGIC_KEY_HELP2 +#define MAGIC_KEY_HELP2 SLASH +#endif + +#ifndef MAGIC_KEY_DEBUG +#define MAGIC_KEY_DEBUG D +#endif + +#ifndef MAGIC_KEY_DEBUG_MATRIX +#define MAGIC_KEY_DEBUG_MATRIX X +#endif + +#ifndef MAGIC_KEY_DEBUG_KBD +#define MAGIC_KEY_DEBUG_KBD K +#endif + +#ifndef MAGIC_KEY_DEBUG_MOUSE +#define MAGIC_KEY_DEBUG_MOUSE M +#endif + +#ifndef MAGIC_KEY_VERSION +#define MAGIC_KEY_VERSION V +#endif + +#ifndef MAGIC_KEY_STATUS +#define MAGIC_KEY_STATUS S +#endif + +#ifndef MAGIC_KEY_CONSOLE +#define MAGIC_KEY_CONSOLE C +#endif + +#ifndef MAGIC_KEY_LAYER0_ALT1 +#define MAGIC_KEY_LAYER0_ALT1 ESC +#endif + +#ifndef MAGIC_KEY_LAYER0_ALT2 +#define MAGIC_KEY_LAYER0_ALT2 GRAVE +#endif + +#ifndef MAGIC_KEY_LAYER0 +#define MAGIC_KEY_LAYER0 0 +#endif + +#ifndef MAGIC_KEY_LAYER1 +#define MAGIC_KEY_LAYER1 1 +#endif + +#ifndef MAGIC_KEY_LAYER2 +#define MAGIC_KEY_LAYER2 2 +#endif + +#ifndef MAGIC_KEY_LAYER3 +#define MAGIC_KEY_LAYER3 3 +#endif + +#ifndef MAGIC_KEY_LAYER4 +#define MAGIC_KEY_LAYER4 4 +#endif + +#ifndef MAGIC_KEY_LAYER5 +#define MAGIC_KEY_LAYER5 5 +#endif + +#ifndef MAGIC_KEY_LAYER6 +#define MAGIC_KEY_LAYER6 6 +#endif + +#ifndef MAGIC_KEY_LAYER7 +#define MAGIC_KEY_LAYER7 7 +#endif + +#ifndef MAGIC_KEY_LAYER8 +#define MAGIC_KEY_LAYER8 8 #endif + +#ifndef MAGIC_KEY_LAYER9 +#define MAGIC_KEY_LAYER9 9 +#endif + +#ifndef MAGIC_KEY_BOOTLOADER +#define MAGIC_KEY_BOOTLOADER PAUSE +#endif + +#ifndef MAGIC_KEY_LOCK +#define MAGIC_KEY_LOCK CAPS +#endif + +#ifndef MAGIC_KEY_EEPROM +#define MAGIC_KEY_EEPROM E +#endif + +#ifndef MAGIC_KEY_NKRO +#define MAGIC_KEY_NKRO N +#endif + +#ifndef MAGIC_KEY_SLEEP_LED +#define MAGIC_KEY_SLEEP_LED Z + +#endif + +#define XMAGIC_KC(key) KC_##key +#define MAGIC_KC(key) XMAGIC_KC(key) + +#endif \ No newline at end of file diff --git a/tmk_core/common/keyboard.c b/tmk_core/common/keyboard.c index eb7b096bed..e668084858 100644 --- a/tmk_core/common/keyboard.c +++ b/tmk_core/common/keyboard.c @@ -70,6 +70,7 @@ void keyboard_setup(void) void keyboard_init(void) { + timer_init(); matrix_init(); #ifdef PS2_MOUSE_ENABLE @@ -90,6 +91,11 @@ void keyboard_init(void) #ifdef BACKLIGHT_ENABLE backlight_init(); #endif + +#ifdef FORCE_NKRO + keyboard_nkro = true; +#endif + } /* From a1ce1332034a3f01049aab10f4a55ee6fd5560d9 Mon Sep 17 00:00:00 2001 From: Matthew Carroll Date: Mon, 28 Mar 2016 06:00:05 -0400 Subject: [PATCH 11/45] Corrected duplicate image issue --- .../ergodox_ez/keymaps/msc/img/code_layer.png | Bin 86217 -> 71266 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/keyboard/ergodox_ez/keymaps/msc/img/code_layer.png b/keyboard/ergodox_ez/keymaps/msc/img/code_layer.png index 1d707c5eaef58f826fff1b58b67339bc3790c272..7b5efaae791d878fa0349e6ea0f9b1b89a6ad9a2 100644 GIT binary patch literal 71266 zcmaf(19V+o^YCM}v28WB)!1rm+ji2}w%Igx8ry7a+cv)2r_YP^KK-xnuCuak&OIA5 zv-g~t-|SF18BtgmEEpglAXsrRAq5~HFclym;2|goz#V>=IWr(27&tRQK{;_jK>|5@ z8)Gv|BOoBLP^TnFIYl+>pozA_$fQY+^EU99HIK?Xq|Y`%a>AB_c_36_Ay5 z2Q{5a?abH>iFhY2XBcgJ6h@`ma!>hWi=Zmut`4C|l$`jkf;QJ-~ z>)C{^koW$>50pKf^Ll6EoeMA>8$)z~B#aOsECRR!Uq=FPRbSW!VhQHF0AiQ-iT#7) z{jyjYv<1J65Qta;7!uLA3bldQE{M zw1IqU-gB)uAUeTGfm|iLO~YhkO1(fkS=fwWxSRwvTHJjFya`u)Ap-osV!$Q%aSwn% zbwQ|oX>38xIw8TnmivZ|Vn<6QLNIpm#(-XRBHH34e1(yNJ?i4HMXd9u+Ti>F{?vtl z0gmhoYTU`K3Wnba117*80wPbSCx#Rk{DlxV1TIyeA?CvlIQVBmIg$jRLjKfAZwmNN z0TQ_q#lX!#T0s?pE;)J!49wtT0yeo5^e|*S%&IubzASp2me5>1yccNfNHPIT8M84-AP*@~zeS$*u)6aL#x0mlL{`7^Z1bH^t z-FGVoO)h&+7qCGQ1@#rwiu?0#6X$4>}Pxy)K)g7j&0YV0d4- zyHYk}pomWhP!PuZhc>SgYbglLiL*7)%iN%QgaV;Uu~=K z%KWzThJ59tUj3#83N0uk`Q}btd zo@}o!11bYub*BETKB&Ir7Sh(;7WHNP7F#bm2^a}Ai9SgfNi)eF$@e(pxSw&taq}cP z;+K+Y5`E%{Vz&}B65--pV&BA6B;X|~2PuXhh7E`62DuYSho_8)4Z{sR4AFND56suDl*x+BV2J(h^HSoN>!iAz5?)m9aFl-k6-Bn0_;go!2d zwYKYvGK^#P2Gqvh+_41_h$Z{7om*pJG6DxZw2&+d+FDpr_?8Tu4;U$(unx*6A z^SX2APIh)K948DH6c|dCr2CJHOd(ES4&YIsBj8S;y1^g8XCY{;8dg0$ucfNIZDlSN(E4Z&HO?$i z7qJ>|k66#FBCL`>(-XcCMiS~^oJD-it6V!Yupyk0e)5PqCL>u=aq3fVESk z<>^NF+AnGx)G~Q?TbI4U4NNVp&=N~=GqF;FZ`_ay2@2j4sS+%bG?K3=d&$m}nQT0S zUb?}+7jBS#4|{PvpIr%RdLJFB4(sUAsCH^? zI<|ZLx!|8;v`3Hkn@~3a@6K~l%6$M^hUX+g|FZI{y*NsE753@>W{$r}qAQXmOh=@R~<)FSu zP(V&lL!ULVQ;#dTLBS_%HrN{Rxi1FbX?YuCN9IO=e6c=|yg7kx1f7^5hy&~K8oHGo zq5*LVzqh}Y6hLWZM#>Uv5dGXaJUZec8Q6dUesDK*aw;@;y0u_oJOKk*J$z?Oe}>o2 zd>j|EUK;d2jy1soQj;aYUOP^{U;6M?`S#&k^l(m$U|Am!5D2*07ga}9X(>(v8!K8p zLmPb~T30JuK;#Gn#O=xn_-bY3s7K&xWohle>B>X&*Atw8@4s%-5fS|Lh@%A$k*c&D zfuN1O5djM=Gc7$4FAM3;n}$3RO@_orr#X2$39t)SD(D!XKU|Yd-K_i|B!9XP0o{^ zk^})5&@GYgfQI-VmG3)_+VJPeAcgn>x<%~VF8_1K{QEG=f1V7q5WnwuBGksE@}CU~ zFsId@Cj&5N3|3cLacODzj`Lb6lwZqvy9S~-CD|WL+ndcVG>%GnHuGI^o6aeKrJPEK$;<7hO!eOj`(Q=519ZMCNU~; zd|W2lpOlywbbBBgK1Q)^T4q1CDj=!7puIhu-TMXpq2v9Yxkzd#*PoQyepKjx*X9#) z$V3q3zRdQIYpc5UONce^XDFF$MOaI==H})}+@h8JX4!ly)jfxrR_k|!uUgkWqN5YT zm{e0;_S=zc=DVt~8?@T3><{E7+hFc=np834KW1j4-Hgv$-`{?wIGBL{QxbE85Z674 z;zAZJoB6!5mx1J;5B*GheYn{&EhnDbvH@|cF}n|0ERZCUtPBR+;(4W$wn^oBCzuy#Vurr`_H+Nks~apQthwxY7P%3hYYRCY(Vs|9ZBjf06(_e?L4;!>$VQy!W3#JSxZ$ZnOCesvWQF$w7w34ebn z_&K%8IR4JUx43P0lpoFeb=EvmRLQPVkW;$Vq!eQSZ3IIq&5?Mg)Nb50@$=hlC9pAG zpBAXH*#FvxB*ygDn%hwb<@ec_&FY2D-JFs2!7_;OG^pqtbzARWb=fz#>1?_tSFdh( z;YC455AS%EyX?ku%)}48*0RZYX@_a`>MxDDCa=0{hy3Zd)%tC%qVYawi`Pwu;fzWr zys_nJ0y0iKi%p@5yTAULe2pLX4R3OmWb5uzkhMM0^WLRqG8|4jB>da3mu+%` z%dM7+Ml`z>4-i>yRX-k;^>F+OooIa84oK0Xxx6jD_269_o6cDi_3GD5WPc}5M^p5> zj3J>pCp1sTVi{@<^$#f21Mof%xG1{t!y|YDxzQjaJ8dWwF)M5P@NYY!c`qKe22Wrs zk46k`M%(EJw^NTBAKsxfxsF+I=CjUAu_4pZ0x1 zJO-ddN06NmFd>|-D(H+7m_u!&LO9)JPrCe3`MPKCX$PM6=M5gasb^k`ao!)j=_*E= zp-lq(cQ=M4o4qfN(F2&MKFmW^1RvpvJT7q(&YQp3-oAf0c|;t>dz1Af8Gb#OD0kHu zRJ*&lw=LQjNlA1H^idPiPHj!@b(H~o7+}Gv6!B#gaa^j0Z!+KuY#8+s(%HX|xNuGy zG~iGy%+ZD5eYvP~y`5d%x)q%8SjVK^WX}j9hjxhn$6KLTf#Ha*K)Bn2c9ii zP{Op>o6%jGy!{)`mvhjh(f6`%tt*Sspab){^%exO6U(k|CMI$h53*Gc4Vo*i@iChN z=?qF=2=*F7Jlrpq-~(F0qqofnx24(k@_u*{{V%(5Dn)(PiJezN(ui*@Wbx{f@oukjU=}O`$KV*wyE|7 zN5%!O$0G{V^%8Q{)v`-1WtAS8?=AX}oou}0sRh*3+lpL08k8gZobGYD77xt% z4M?=vgqZvk!}$z(JZelof5Bm(N_I!EUxxc}XIy{*=jvb(^Kt^#e_zCXarR?|-c41r125W}Y`QcI+cx{cotyGLo?||AK7iuG`Q_S! zBQq~kO4l(fUohJ!^?;8QAMAji&ZY|_+(vz7rQ6P-r~`}ft3?$5HCFTa=x6nBpj?5} z$AQ%QQMea7El;y1mpi2*U2&m84sh8)nvIU|XP88d`}Q;McJ-(JwHwa|9%fhs#wngJ zB{sP^=cFqdPe?~g?fy2>wJf{3zdmd5$e?VKaR?esWa+qN z@LXlYs;mwC2C!LD6x5TmR(t5i-DFBMZ`GdtB5ffGeHqvdm;XMqWRt--L&WS=%Y2OPZ~&n-C2v zQ5M5re*eitsi07c#u!zT#u)QvJ}aH-sQHtXE&T~q{Qa|T%}5i|bJjBXok$Z*hx=vA z0;L!7mg-CN_QX4gmQE9<3jF9-ab!u~R)h0*lQ4GRLl^_PQZcO6g_$(r}x_cqUbCwrOV)WY(Q@#;fdx+1OC$f|NZbDxsw99n*L2ny^Xv*7Y zW6bfkYUme{^R{3LrLFIY>W@#nn)+l|&WBXn5xktl$TgK~Uo~`c}OApLO zBlo`B!J4L#nf-J z<7u)iD(I>@+2f*(R4c#IeGHNwB9#DLx(u!wzUewaghM3~H=my#kxC_^ z@$j;LP4E4J`mjrPFTg3Mps09RNQdg01W{jia{q-klP;qPNsFtB`G4bYxm13sd(9@= zbMI==K}_m43smphHM^Ueo1FboyBG5weQxp$F!&wm&J>2JLVJvJTt5HneUA-SC)BJ2 z3yjnj7~W5C?pN7$xrKGYt{BjrUU|?V%dXWQMb<4G<1 zd8+XCcS7CQ_L{+!%>q8R4B|D8RnzCUiHl5=4*!-9MP1gn?Z!QP?-)Ps&pbBYEi6%yl zuVnY`GcS<@5!IOgk&^iiK?`v^kQRIA*H-QAnp7P=ulJVpbzBX*^Rz#Xj{KmKbcMH8 z4O`@+=?SY@e4TeN-cGM|xEPHxT5w!0eRz^4nwV{RD6&Q4b~v$kD4VB_!w$>tRs2R( zb&_rrQ-P3b?0t>N&CDKN@V-*@j{4kWi5!)YN@d*X(Jk%6VU}`vo4QbSMEX+k%(`-C z2+K)@*T*RMb{tOcv8Uu}kuxQLnVh)!ex1>RSKGmg%;gLjFTt51lK(KIw4l)dV&rnS zp33x`o|1X}(V5xdQ9VJaO zu#cMD4FgA}xM2y0CGVg#9{0Rfm`h&g3UAT*-d86Z-PhQ6ICcJt@t$UbJ*wOB49xy! zM%Mlw#=tZXgub>MYL<-^PPbp6pRjFg`F!pb!&NrOL6vM=^%2c(Q9xpR@>P{~WW%9* zUi@ml!+D$U{hDPoO(}xI!7%-#r$P%hX1@*Dq{4N2gW-SeLBi%IuOBM7E`~T08p+Up zQ%D!+^xWjIitrvT@M?P5aRKvC-~gIl6oL1{x#Af|B)nCR)Xt{y0Xs8^6#{X@k#oh+lr`gTk)ewaiIae`79afoYQQSt14=cCSHQl)C(7K1G7O!t! z$Ia^Cigf$T&mHm_d%wpsv8<-1CMGizcMtcic1WBC4ZkCJ`4Oq24V``Q&Ue6X%j=uQ zitc4w7nfi{6r1(R$)bVq_}rz8Ssu;esSo70>-(?wasy$bE>Aa@p3lqCZtL9!|LX|| z{76U{GTu)E}p;Fqk@E-mC4i#u7&E;#k7M?m%~INn9GR}MMXxR-BxcXlq9Bm z%j;S)H(X@P>6<2%;C261<|Z}6ofh=%r|S_l3D)HR)v&&rf6^TkB7{c3?l43eOQo`# zmp!q&%G7!1q@7hSSI*#eQ?NXG(vV7_2cFk-kk&kk6eaDCK;52gk;d5n$WgGpyV7+1 z&`aLGm84;R5p?=7C&u6cFyUDgZ6=V?0o;(7fY58vx1mNhrz{bgTK zz{-?ewP1P|Ir|}C!xofGb{w%1;LcHS=>8XE@gpGuNXpi0fewo`0D8#I#Z9B?=c6}q zi*c&$e1z*cM3Cjsm!C&(zX+@fOZ=#ypb(SxDGwvmfb1Wu0T_uMKC0a%OC{n_g9m4ceHQLduxA3B?i=%lD_&6j1$EQW*b&FIV(46ZVt z{dBTeJ5al5GfEYq4?eH$K@%1hCa0zrT2@v@ku;k3A8U7Nf-RUZCG$|gLLW#0a9d`% zJp*ZIzXeq_k;HyimI@XZ3jlOOrcOuP`XE<_1E-DaQJGvWQ9nL1t-9W?x)`jtd!?}3 z<)!xKQU3>kARq$YEfRGPqytur$S+QZ$iGc9B)L(l^ZE$}21bZ|Z%Ccr)XGX&Qu2ej zxq01Wu*830rY}h+FZMDpbPRthG=PEHY?aBHfnZ`{F4P!}#1!)L@bElb^uXKQov0}u zvpS!sM&R?|ZTClFCn(Y)exjlhG%?xV;K2K@{*C~;QC$6+kPS9N%)cMz&YIr~O+wHk zKeC7?5*L-2kbpALPC8|$w?~4@e|mZvf=&OuNWniEjm?*ZUI#n?1px>N2$83SHIu6a+@F4W8mI9+)@} z|7O7S3BG4uKzECy)9~=$qIv3^u5h7?1qhU287K?Gz*>9O$I{ts26;(89T)^qCt)uH zq1G&%_I|C?r~>yAoRJjZT|2TCqRl8)(+;G8BiOG%;;t)3aUO{&gZ7Gdypy1?QkMA} z8SN3qIC}ZUcs0PySZhX0^SS7DpTg&Q%0r(hUpp?vjce~c7Rw~=&cn01jZjiqDQag|O>SsMfoHv``e<#yg|=(hed-Kv*w|@)*f}+$v7!3> z!P3tU#r%j8sm z@rS5BeUejB+I6_QYSh|Fpy`1qoediu9rfd*+OX^<;||4@4AX5~l&`S_C7Q9tOCKl^mrR6mY`dHIpsZ=U%ln2i3g4kQutMNGoF*2I;5&1@) zJt$?IG<5y2X_G%hJ+ZLIFyW_?rRt@X-CbD-Ws&@*=YAwaF=bx9zFw@Qu+cmC-Q6YX zmR=MCOb)xY)pKefn(K}x0Kz~HC|-;rlAC~&%Vy!!41^)p zxIWz+7Oex#L8(z2v9`bL-t<+_K1L9`*65artu6q_Dacxwf{}#doO65GOpU8#~`D+X{D_#wEASJk(4e*y*RT zdQxZs2Bvj;WftWr2||)X0j$-L?>IYRYTSGa{IShb2lRGvWn5iK>j!vbFyxcNH+A9c z@)$2x9baNsx_o706BCbqaN-}CjWNE5(6)PFhtdVXzRiIh*cD2g=}E*bWbovy$svUT zzN8LVc*B@hX}2xyPX~r{S}rs5N_6WDgZF@KZjLm0%O#=G)~b;z;{{~X*3IWk3_Ckm z3tP6@uvasI#@iahQRpw+z(9sH84F}mabT)cdrZ=^Ug(YU{rh*pH<52>d1FkmJ%LY7 zlJe|@2={cV!E9Wk94!XyDdoua7s)hA3w$}@%Zt8EQ4WL5Bh5Lw!vS^4cC{bsCDC)% zgzn;G(IbnM;>l(4YQBucES*%^i!YTouE7wS&&Cpq=9Fq1H-hgH10z92`&O*WHy@$S zln6WlJx8~PMjp@U0sJDU4@>d)#gHX7E`Kz$r*M5-7dEuKwZp5Bqch8Hte+;x)i9&k zUl&HE2hh@Q=XmRZ0s{k8FTU_Ru`qY2C&Yk#A?!@0Dp8eS;_wgZNVmsr&%6dvcjo?D z@p{ZaOa&WB?jDAaOBLe@lVVjByxSUQWT76^21B{e-okoebtY z#~aaf+?fBAyHA@bbrD;EhyWn6IY!JCX=!O-jTp+ZAS4K|ATMW;5Pb{Dh}H>7{9Zue zg`l`o+XQTh@k6JbD}ferYpMZLZ%jpRY_{3uDCHXW2IkJ3PcB2Cdn%22Umkfi$g?Ec z5G%`HDOoL3zy^|Q9=qUlkDk*b})xKtwxA6hgP3s>00k=BV zSg|3i0_YMPOLd? z5WNY<@ecdy^g5OY7DWXXU;*vz?FAA2Mnw(6YJk@>2=a!DjV^0wGm>~hQm2=%Wh7)w!;_t$h>jJ? zL~29KoPsY$4IOHTv4wI9v7=aiSRemoj6Ys(sN$ z{=1s4$Y|)s;T&uu-PyLM@bg#x4N4?21mLr#ID(5I?Q+C7nKKMtr=u?uI!c1Uo%(*O z*4LhwEnI0;1gB^xqwj19J8*9(BwWn_2lxxx*38r?F!yus0`0Cf+s;~IA)cGcC4adB znE8rPQ4kVcYmjDd(ZiBt8w;2fNP7EbdA?^}Poraqi86z2Y8_-jf|xeyRF1)JeM`$D z-{sT(^m-*ziHMN0M6fzi1l0Yom5t+Hp$H=*Bfa?y#T&RT!Q*H)AAT@AetVg~_fh&3 z?PN+$TOzrKmbVdo!R2o-u}Ml$$8+mBwRVV7?F1AtX-gUKhIA^^oGbOa&eX%8oLo!2 zI7z%XJUc?)MlvP@93y=JTXV_Nw-^eVgyV0=)z}1a1p0CB*tC;-U|&vKAD_F=zZVh8 zluu#uVk<30I#rU}TkdsV7tT$HgwYUSJMRT{B2T7kP*^GIy( z+30u0Z?-233@9ilIk~yOZ0nx2-xy~xA*L)0Np__|s7JY)K~7gAJwX^5L+n~ccAq}f zI5bx=Q+6vuTGo+_^qAUMcXNPuq>+K_x$Ci?m|?k8z|nLv(Q z7%q{hIk#JmAN@P@*XJkbwUMaki)?tpDnrEXa537+t*OCzbmmFo=1QO29)8^2Alb&K zD>X$sbnY^u=@zKw%W*7L-4NPLx~)n#ZELPDAey}mGiLgzr0h75m}?&Xb{mpGH3e!C zz!BMQ`jkj{L;`29eDx=GhRcFe)N zwksB({!pSGAQ+!?_g<7@$|1tfpZf%~<({7sIA(|hB5-OX@D^uvpna2Jdm5VXVa{=i7-`#3=6`m*g95RWtgp7>pdqjBg^kk;4d+PErMF z+LxB}oDo#{N1CDJF9pStLAR2x>;PaI{1PccBc$=(UWxayq5-RHdpf$n6zK~iFW3q# zq_Nc4XGPI>$gx@F=qCN1cC)mAu?TqKxzB&)69mwzCvFd%-jULy8lOf!& z36E=2c6Y5=|1eBJyG+;LwF&Ew^egH6+6mAO?yb^-uaDq-p65hQ-7L9xSber8sL3Mh zg7g(8PP?`>;+Q?hoMZ1-#*v5wK)N1_6mj`FWwyolr3}0w&WK%=D1*9QD`m`!)xZ)O zEjs}$K(tSyQbHjuOX64If&T_NWF5s_DK9#alnmT2HX?MTA|IpiE>^NOp*)@*RI5lG zi`lb{nnJw|R`_%HlAzND!ldR{_Bg7;;x?lhNZ{?VvN`@J6z;YKM)i~t5y;iT`6oq(W}dCEz}zSE6@J-5hFhggep}=+p@!h!njqf zhe+1}O#I}S3yS7nC!=U(lSKY`E+(@2C(NU$N)aL)-pg8s zCDpSbH&~sd10flK$jzs{OpuvWmjyg4&7T8qnZjz5S+;U6gDU^GyPOYxQ2l`TfA)Y^ z2@Vr{HO-7A(LlJ@bf95vEk^l@Z>~1yWbFA%$RYo~ZSQu-=mGhsCxA>2 z^T*Ukq^AA{P!Xj5B1%$oMHM757=WmiB#6smHlXw2a{KbE<^0p8ZfsQI-JP@8|J^16 zEdk@KObHnTkkbgt%EG6mr~k!(EJ(8#2BQKKQvd7dUtA~v)C?I~9Z3K@C1C3MKWddD zp$73SIH{Q#DU=BRwNfVI0MDtXB}&BlnnBsB#h6J62>fTx|8;!q3kd)mg(>Hc{;!q( zGJO$XjIjS-TSYlzt?qR#kJEZ~r=x_gXcu%fGk}v;+cn|M3&)IouD@9aU`zr)qWc7N zQVY)F&`mphkXRGR5bGNSSh_!dmXOVeCttV-3kw7AT?#aGv{V5+?*mX@UtjWSS$G?* zV#I$4@K>bCLU;gol4By@$#X2LYi#t$Qy~)qQkDQ=AnP<0V1O9idWJqgdaJ0ZL1Ho) z7t+$oL@O#UDf#>x$^{+dhqnb$^s)V0WJ2hJDM;OHnu71!Spws#vEy8e{V8Jnq5yLO z(%$$Zk`6JYcgC^d;qJ557Q*bHGSzAj0P#3HJR~DM)1huc5d$=eN^JAEcXzx0F-$ZQOi4k0D@a4K!V6U9-2s{l2=+PNg26|M`ceL zlTl5SDJb>t`H|!h1F)lG-6tm^;A^CfEULYFSW+eizqK`O%^$YFUS3{gNmCuB3VY$` zbf1qp|EvDZiL9F~ZE~!@hD47JJg&(A0I886U~6vsxT9$-Bem3~Ypre)v>)Qquh4$S z+gIOZYDkDdzG|MAeui-o_0qak=n_eY1sIR{cd$=YCpf(|LYra)M_`Vx zQB%TnTF-z5DEyj_6Au!}+hCJTLzY-AhZMp9$ei^*va5y9v%F|&Yvb)G5S)`h)?bCj zg!!vC<(97`+~3aY$c7VxXUj(qgxCl# z)@!vOq*#7izzPD}?Yv9$4fHQ)YkGyihkS=Yh;P<(q4PIO8L7#v7Bsv#v5P&Q`q^V;Nx7ON2r2wuO#TYn=#vg~V%O}4$iFB=>e08wF}`Gu zgzg?TZuE(I`x(fhcOeaLkTqB2w?#lfHCvWho)oXo&qKPErE8NtvCE+V+%pu^MGG5< zt6l5tgLJIY(E=n?;MD5RphzW)i|hQ(Q+S&0yeUsr!BxY!;~`zT%zmM@F%g!wR-@=! zyDB@Qvg0V_M?eTE27e4V3HyPgesX>K#T2?+oueif;5CB#gh+$BZm!^bzNNK&bldGz zdc!0Pzdv0z(S&(8D$5Lioju<$Oy$wVW6}n!+h!5|AFh`~QMg=1kq&(!D7yU<5JrGB z27?#a`yMV^jp&TN-NOlh42_Q5k*8~ob4&-0i?hIHXy1^mEf@UwY-nNJ(=lnu!rL4% zksli{6K}2(d6LfkBdHA3Z0bg$N*sjGwsR!dCr$l7Dreou4a3KEc+q;ED~1Ae=LqYw zZ&8_hzG`dv&a-D(1ixAPi<8FzP#K@F6qeMX-{5Qo zQ4WNnzWlA<*z=5P@IO76N-K3J-`qZstkM;I6!}tbzz;jp{ItwY|#> z5sTHQG}gNO-l8eihBua(v0p1;Qi<-pJkA6V<$fW~Id(|^_<~c(Mqc0CdTEAMdUjaHGXLN5R+~`bOt|iZ#e>p0CiNYkt-Vf0!_r zZgu#~srogL`i>>CPdQBS6b;3gu0OpnGNowa1l1<9^^~+nLW4TAF|^UMeW2^4@c5T% zcP%v9$$^pN;(t@p-PPgNXP~wHF?XCYcmz3P7j!Z!3cpM4(X{knI$f{M6XW(6lsm>+ zU=ckwqnk4_9eKFLyKM3$u*Sj;r!IyhiCP z7HEL?0cJa;bkejAb44gJd76|&m>?i?KmyQET|82Uq&a3hd4jUUkCQ{Q;J(#P4bCnIo-J~Ke}9G$r$AD7H+*XL^y z_1>scQ;oqUtuoI$V*gIB{TVR&YsbZo!~T-8O-v7N-<$X)vw~1*S0pc2VOmj z02a08c4q~0;hHd|izTv5BK|p@kn>YvuAI~H_pVgxVM;@&mBoO%vd?9!Kf_?--@ei~ z@C83#t}iH?v)QNIDK**^Rv5IovJ&{~aUVz2RY-X`Rxua~B$w-?Dx*+&+GP!PVcy?s6% zqL2a9d?Mn(%7Osl!5rW5ILU)C*T^{Jz^cF$$4IUj;o-~sSK!z(|bKR zPTOG7u&r6x*aRo21ra5PA0eG7e2!|rvP}?<(U;3>Wnt<34CvvuC-L1$U5%SR5tu? zMZ7^pdANfkj=2p-I`lAo!wXXL46#S=Wvv8X?E4O#S`U;{mOZiyw&pK1M6jlb5}CM{vnc) z_s5_EvuZ-NdDfkTD;rBv+b~p# z3jA;frwdg1<$3|E=$Gq#v{1p7wy>rDhDF*SSxfY?yWP}_RJBLjrJ->xmy#G&S4Yik zv=+(hI0Q{IOrkX)^ywINqMzwsa`ZB(d;!=4Oa8`w&`f3^3Rh4-02m7ki@Vm_@UVpG zV}T02eZ$N0CA>vim7xRTo5iV!CnF2$t_Jqy`PPHYRKrGai+UCHI#wB!b~rh(3N{*D zD-zd|Y;NyKxO30Wmh&6|@p2?>;oU8?B8M@cq6G+_#Mpr`>y7yAV=G$)yCYvmbh>y- zsb)P75-*Yv_<&a`;8epu_4%*Nz9u@)=s!Qf8L=MC0uWZS_N7G^fSV*xyGKltruXIQoM>O7b8{ieD%f65qb)5e zaS~xWrRVF=HTm~djtF8JW#PZDM$8JBAxUr3G9L=Up1y$_ViHBGUTRB^-@ROvc!r$i zlZe%r2iW?^1R7KKysKfGz6=X5MQysaHD!+VwuIJz`=zB6M30=j={BWe@vm+83k{>B zm}>i!i1eRJBzSYz@IVS-0{*qB4pC*}j~Oc>0D)|M zjN_#>eVlA@0hZvS0F-E@ocndN8}x#`L*k;*S}O|W?_&r2j0mm{tDi0J^ACiX^){Qy z_*7iO00laHKRE-U##(4;nQK?-9$e(WsS*5eLk@IWL8j}F5=*znG=sr$ST+k!XFrX7aWP61Gupk&1^A{VpK-3JQRnzr=N_- zjz;WX02r-{x7DP%sTX4L7>hFq?cBVl8T{U0IN>w3YYEzmIc69+;B~p=Kq~*aR{Pfm z4$1Ic*r5r|Tp8r30sD=XLQVzmZPcSPUOc6S2QT0YjuBX`%s&qu5$)dfTvQ@V#PPpC ziwz7XF5a4=O3pd_40@iP+OR$sNzEIXU)A?1I%jP#ke4A_vCh}|#7c~|`lYc28Q1E$ z+PL4JUHug<3FC*BjlRUw$DJ>1`l3bV92rD9F?POm8bTl+)oD<*{kz_jc z=>m^+yZds0ey>t>1O!9`6}GQ@RO%S<5-AD3j%Aver@r|f*iT-RO$&3YQM+a;ISscH z6iW0vZppeQZxfhoks79rxe+CyP^M{X1uX>jw$TBSK%!}s>(KwsD48|3zmd*=(GpHIvj5yT5oaQa`%TD4(n0T+{JxKy^*55!o&`8Vb zwTFB1dl3K-By^KELS5@&dIP0eZ>7KNx2XU5o5Kyv#Svw&2_F->j%EvR zlVF>Sx!rOOH6{E%(%u5Ns;)`fCPtjN6L&XALPCVN5D#%7?n2z% z-IcfycX#6M?oQlYzkT3&pI2t)pQ-w*s1#MF&fa^iy;iU8tMBfE9`Wy^^@P;<)DHeo zZJg#!FVt;xTFTFXZjl-jpx(6nP|VUR(jA??A9aYcX}wX<(VuU%xl^M76&@UI>vB^%64M2h`Ht?rKB&`GvIh1axoX(e2qG(~?6 zQhs^`%KopQFC8PO?+po!5Nl7bB2T-b%qR`dqcQ7 z+*C(J@n=G`Ekd*9NNW1?WiT{8KK-jO0R-RxXTy{H2qH;Jlvxp~$;W9tQbfU@(Q_!M{!(k&t?;@-E z-|<|q7?cc~ZoSu;9RFMge;D@fzb3$^|G&Q*gM!UvPX|`?jtgCqaN zo&!A}EAl$|Nqyun{+=Rw*z(c5T$KWJ*hGH-_$T$CqyGai{o4Wo_N#4azR~-E&;KQn z08HRlT;S8h|Lwa_`ZMH@%Qdr_A;7MpHUfJgk-_Nl43+sA#CyeET$(7I_4y&c=8_@n zf`?+F>$cOirh781p8yg{W}BVQQ`6JN+6#q+G=SHg0VIk8c^cU&D7i(&Tcf`b0d@5&9<bq*CAv?}5^Nyn;1#osH>Y8Qn9sMXz z%AL6&tQa39pbyN7c`un0Qo4Tf2A^~5Tk+vi0~)|S6-O#aQUaGqcV^Tqh1}d)44uY) z3%y!gc~KhyraB#R^5^{6kmgHRMgL7|yI)wDqj9%2J+1pWfz`q1$*N>qo&{^i)UjGn zJ8w!9E8Ms7rAX1qpcr!C$HHB3Fx==0bK^pYY@~u|RBQrhqNj+7*xio)$%RdR`Un}1 z*8oI5r66T1!%CQNv2K(t(F>X^0~xTO=q&N#S^K!p42+CO0Eu^q#;0v?73dC+TN+ce z7BJ(rj7crioEm*vT#0~l@8~@%!r09#jGq42 zBGHlJo8W4g@uLX4kwzzWpA0qR*cv{n{t>0w?779{UoQ8AF4Ol zOmX5aCN=dasnv`_sX0ZBWo}SS>z}1qmuRB?piAx;A6ZAl{fR%vDs%{{WTL5%*ZgZ` zJ^M(&(Z;wRQ`OJ%0&MHz(IPWjeni<0LijFfq>kvN}8rP1pctZh5*8_ z!2KbNY5obQ9@Hn=2{i^lCQ!(Xkf&7X-{x{rKz(~xEnGZO=g(4CP=`ekX1;z+@x+G1X|o5ew5qW z7>t=2H0Kw!qAY_Lr_DxEE762uak%DPt@9!=^!>kBzTW1I; zw`Cw7)VGDJrSp^Y>Zk43W5n+fd|t=|!tu%X^CLpb4bf(=3d%gd8~xiZ%1Ulj zrgw@j2TQA3qKU!19pJbARNU|#!tCCrWZ4iB$w*i^9Eza5tuLy^2pH@h+U(ZiAF;&> zCs5bBpYQEAD&w=?azbUo0~3a4NfCM%CsLX%ug^%(;49%z7tex3+Yr9N-r4xGImxan z;TQ#ZXfc}VcaX6w!gsTZzI^}cSv8}(6=r$4MOiKuKE(|;{?HkpJG|Sf{&Ab_ra`Yf zp@E)nPjn3x$Y?cmd5bWUt?@o;Kqn`AKDw$Qm=dUrPy9rs)2mpOE5WJnK7qQDdQ*`Q zN^8!1^Kt&`wYWe2)wHR0?C&(o6j>xf8@0gwE4V~zWkRCJTLwcsPCEOoH>D7jL|S?T zXuGe`(xqR!Bw_Okk$MqBk|a0i_~zirk*xX(wZjw?;t2?p$sltko5&<4`*n2CeO4)d zW6scU{pCszMP3ZUbqfXD<<~O}x`nNOpZ>_;3fI1L+DDa!Cq=R^4I)E;hL#h%W*@j+VVDbH)GOiO=wpK z@xeUy#F%ttUh+|;1%Rk+`4V?wPUnGP>6^Y;F1F?#03AXjZ99vi8_2!>O3|i;u|)t` z5kz!>vafIrsWs(TZ0k)WO{dF^G6qv3-nwad}rweNKxxB&s>f0)opM zYGY%2c5+djdh@bcC^j;mK^}`tGN1KJUcIbKFIKsB69n$9;#XRgFvFdX5yjOCIeB>- zRW=bDhDULI3XOi^>l$+$Px8uE?~ta|ie#O);XX@xhzIf10wKTd=bRMHv&TSegiRI0 z96OOd}dt8qDr)iA5H)Pkcfg{>@8sa&Q4KipZF&m2;%l<8o z6v5$1z(V{JLDS&_H)pcOr{$hFAO&4lk=7O=Up#_?p!>z0ZXgT**#e@C%6y0l1{sls z{g^Z}@k-wEHil~jVyoT6H}AY8ik*fN%JwNGj!8a7w0$b6g4DMUTcV8#KApWn+(idu zW@-CYB5qf_@>9P0et?JSqk1>MG% zwFEl#t{K?dx4t&rEx0s~e9&?d$N9Vfne7`s8A{6uWdRXQR-i1#(Eb}WA;?UU;d^b} zO769v7ng1H28@QRdQdj{#=YNPHkvb_-^F}WepOqNZ(-T}T$t1+banmaXa z6Q%ZDV|HT9LDv+HN}_Ec)?~5p8$YdXg-P|Mj&o>q4Yy54fGOKI2qKLyNf!&Ff)Quj zIsR$DL{tdb>>*DSKUhrL458MA%ywFqd%N85WPGR^pNq8=;{qGd--d~gO4L<;od0Du>~Q~jA64n{={nsy^0 zA~f=dt<8%010R!`8cs&y@VE?qsODY&14j0Zm#^GA?$*RzY))zKTud-)YaOyPwFsy4}Ie=3bVV^@iu%oGY*5T8Lu^@5HAH^6RYKudraY z)^7ScjGvTDO9GFlU?1Ma*++|+Nqjx}#k$nGl^3IXqT7iiqB6%X<(t>y74&(y?-X}IFO8Ey4F z%g8B9^nL=so*DR(M)LoD?6n{l@ zf#6_x1oLNz#Yjvp`U3h<3rN&UPl2yBv)V(11XKA8P!=5Aln&?Pcc`7wtxscSgy*s} zWiR2U%+-xUgKY5*gjUbJB;H}a4&leUJ?>Hu0_=*lXrto>0hfKTA%x_KB=xp`Es)&t zRaauOTxllW00L1yi)f13^W+auleG0qNmPsWxa4tHj*cNvDN3{}^Dw2wua%aKlpi5m zmE2U1q%vQ}XTbfL=N$@Uqw8SjD#b^u+PU#LS`t*Iq-4()BcL=hp`Bdkvl==abIEx< z%Uq)9HYii#%midgNGJXv+GqwjtIh^3PVogm6q`!n?;|ATw7(ziQrZb9VyUEe#DHd0 zBw1oqEeNULEviRC%1@D+5|ZG1h38HH?|bnk+>H3Hnp25G&GlP=$EOZ+o8D5H`5h^G z!#h3h60Kahi-*>Pen-(s9mnJ|S+AS0oN=*X-`j{;8H7z@fp`0&LBhnsIHTf1ETHx0G&Z_praNRvEH5At6T?yc(tfWBH zG-QN9n8cZ4!n7CVs?3>Oeh`I9ZvS{K>tzW%t&S+4^ZlyZjRyH!x`_&sn~Z1{kU)V9 z+AHTVymIbzY{qiUctlk!Tv&>JQ<#rav2>_Z#MGf|uD%ZAs^h1e0JOx?ZB^D9B+0@U zo8x#hE;E<|;F!I2tlHPN9cJV=pLDL*xadZ&f4gOqD%|C$0*D{@`7C1T*+oq)EZ&&j zX_H)C*WtO6Y-=wA1FN8nEMAqpp7^01!L2#N2QDT6y5)#{`*;hY{b+62zX8$VZO-c) zV+4vXu_G8UxILut>cYF$SrcdaW>`_GCWH_(hXdVl2JuOipaJ=MzHP=H??WYdMGNXt z=S2j0i;n^Mh7tJ8mu$_X=o5&9$}jI$1w>&8O<%}xyvHw{mHs+jJrt?W3<28}3=(4o zo4p&TS%^%x6u2f0k%{Jo)o_H-7rN`)E{-!A)5rOSXI;M+~S>uAl}`YwXF&t#DtKtvwRaZPMupXt6STtT<{V6^%i;W#kirxn5&S{P=p zz<~Nt=3AeV@Yl-v?HT-b9NoY%=YB|DaCW>&Vz1eE)cMniO){Tye_54Colh znU^~Ar@foANWQwT*H$Zb%L48(MgVhvphaI zsL)uI6_6)ZWuUzTXQ|_%|St(sR|XaiejGb7_|^+Ap9rTbBfV@v=ku_f&O#fUdLrb0HR6fVQ0ey z_=+B>44FXYzY;~;5dfKKFitTt-|LVT1nBhRwmC;8c0PtQ3Lu-u1|Am|m-xYkVt;?XTBfD2 z5RRUnUUiqB9GJydKye?Si!lPy240YVflXZ!FjiCmy0EJHf#R!3K4fqe6_vRb7j^&* zj4dn_ZlMx4pzpSOLDXN2a8&@o{+wAY5$**lprH{57FBL^4b`8fU3}FrRy*R=qLpt! zM?)Z~SBhn;iXfV)_xGy`>uqscJG<_R>%O9Bmtvq))4B%^pEl}350>mJ8~9^55JyoV z{V|KhKpmlYF>ICV@2jBvi?Wcpkl4OkJc&`W8KwXN4Y+?A=>9)63NU_u)6)Z3T^s4} zqo67S&jQ$H;CT~)Q(CcD*~{r-hZrcCojSjVqfCJ6mvn-MgBu$gdvzBJs`26@1Ri0c zH-735i3H4P=jbYqgRD)??xvQZx^7VebQuK6azt4F>~<01%?I1BojDfFZ%}v z+=D*XM~eY~u!N=v2?`Lx)C&Ts?R*K`b5SAi!>WScEYk#Kt&*tbP{>#kur6O#0813% z)2)}KK@t92K1#a@)A$)I4Vw&9m_8aB_Y*CcP(eY#@j6^q9WfXv-DBeOT$MG0GXScc zQ*cW7lSKI#L6j?jyFl_gY$zW48=!RC$ikv$zRGY@{o%AQM%qlTmw#X=hs}%I<=QbG z+{u)9G1E4qVD1fYu3F1$g3fVnm{TrsB(D8Ds0Xt~mDu}8&pXg|;7O4o>HeeWMQ2Uk z*hu^6WZg$VJ5doG9qqk0`6I>MAez}ne89}rV(Xk}It!nA#g~c)wk!5kTeePcf}aQ< zprQQJJ<=-@vYw8LjO0)8z71OB8~6s|VmOx09y=`FK@oj+&+XsR8Kfv^>I|xCo3IjEj zAgl2o|Ju6%g)ei(H(S(UK*AX;Wer!=7TNvRrp^tbkC(=B(a6J=20Y6@ z{~*aTBtU}D3<6mRj`2yIET{J)pfB#t}YX?%VZ!s^A zBEm*zdmwIie_u{qx1l#!9S-n7MSmd!d-NYy0BE`!8-9s+s%U#N$a*=M3-o{foKaVY zg~g!Gr=^u1lzYjT9DBFX9TLgO^!JS;Jx74X0+aKNQ(=%pLI83d(nk`{e&yw`;sjk~ zFnmr2pUiHV7Cq>_mDdaf1!ZJpjNY^vz@wuSv4M~sAk{ucY@*>DNXO`K zzSU1G;gzFHPEHOr`9nHj{^l(5O$JaeFe=YBj}t34LKi(AZd)^3j>ljL8vgIAlKw*y ztoMJH1dpU29-6&lXLm8Myj5kvIovK{UHv<6-d@$8X?qKk>He*OGbvw17=}_$3wgG77T2;bG1L0&mg^G!<>!Uw0v8lad9vO z>aT)IV3#nU0P5g&o<(vs%KQAXG9)ZUOU`RaLs*x=Ze3_E?!-Nr( z@>dK)QGpkhFU>c*8Vlq(fEomTHwZ){qN^yp+}9Gv;S`TZGg%FEtCN;h+$~5cGlrex z4Y)~3KaW2@z6Z&A_3Uua3W^iT4l7&<&D3!QowGIUftWy!0}yER1|gdZ+0sZu`@38p zj|P}l ztd8LcRos^zc--)VFNX@6$WkLD`il4M!`W19MSX=8T5YR4c9=vS)R4&zyqGQ{E1p+n zRQoFc32Vy-!hBy-2YdVdEmmh`K z9(VB1&oSwOCi0W|xVux(^`Ad%`ZhsGOj>&B9x?@Lt$G;Mh z3jBRi10jaw+8A-OmI{u&eU+iB)}fI7dJts?W)-N?(6+vF#BwJTU-HYGFJ(n09g;-? zd}?ay#wZkiwGCHF`QtM``byiY1Cx~4J;MV|iV4XwNB7bI*3!@)>Oc2`jdp@jqNQpO zNqoS9X5W+M>CS3oxpBf@#pv2rGMFhv0T9;wF zXuP#0{Zk#vS9cq3@@daA%)2E)92;qrJ!K67?<{x}%8eF(-%=@G@Tq!V)^ zORMCMzPLQ^Rr`dPSaJGIp^gzYNy`tx;!JNetT!t4`8K1Ty02GlIZXVpiG`~AyH7S34oL@PANR8hP!yc#ry~uJJUfkRsNc^(DcbV@%%qogJ!5 z*YzD7r&6@B$dlCq<;9;PH}rcu6$)&H5(6}@=)X8@(jOWaMO<9Ca)yKzMprIvL-#p# z^U>C(!}6{MEAmL&^@XGtCD^l-9{1wEBM$!7!lG|GE2!0OLKTnfdp;OD@=K+tX#H~( zi;@2v1wLpLRvb6ba0SVsnL2<1$s3v`wS2qr+plY`u}gK7^X^-XqphBRa6jep478$j zHSm-?cg#4mE}-_Z5>x-T(`SQrJD2{#BFMK_F7va3#E*^bz|z8k07ym2Qmo+t%4bV~ zD8~*tmwc%tatg5N@kj5LY8-sbaWK24b!)qf)_rEZk|)1CeA)@RKWMo7LKiJi`=fqf zPAO0YU#SByNFi{``Wpj1y^Q+$Iab|niaZ@$F*|>+OP0%~!|7>X4`mP570qP;J*`^3 zuA8o2kC3=;IZW7A+VbsIq)CI@9$aPBo2bwcFCrHanTy?}MhBhXMj}M>Y^YzXz>Dn7 z8FKhLDoC0#M(zWmxE(?$UG7SUBI}aKeg2f@8$MuP1Dv#BTb65cDd$+&mWZD1o1nI=HVmP?vu+E6O;%>NbO02@R$D)pueYUg<4Lo;F zSZq%307e8BFXT_j9ZZPloV3N=Q<~&jFIK5f%t~N+KC}EKtYbWP&{7tOm4V*;5J2Il{UKJkv z_fA~pPHUO^1{OT6fky+og@3U3yr(}mu)D3arvQa!H`kCcwjH?}Ce9bJ=jqv5mw4zS zAS=!qqCZotGS^`9qtf+pFSnQl{rf-Ndtv^y0oeN6+CiHigX3XKETt#}u)-^>a^RSH zTgqpX^H=$Y$Ey#c^W{*(iLWqf-%tGuCB-uidE4*yj4kz@;~SX}`BoaRNE-b|1xS8@R=n!l%*TzoF6>?v^xr$EhH)ZWTBtm z?$O8@*@@{5&^Xt%=s_rMOA9G3=n^0b6GQVFn=6p?dH=}@Eh;mn5hD6%=TlXm#Zv#) z(JH*L!G-($t_;Xy%~VM=q1;Qw)3aA=0NRVK#!4WLMJ$l=?~lQ=9C#ug`tH4_Z_q%! zcnaGW_G>;Hmxq1jj~q1eBjkd~EX*(QbdhySdYVspfh89^c&U9)-`}`YsK_{?7CkL8?3PXhF1Qm?bjE4 zbIUCG&+)?;cqlG!MLQJCUwB;%AsD}WIezhTj*0fr$?L#?P(VlSY$l05FU;J4=fA5E z6%>+exsexFqSulmYAOg?kYq-IRERCjS_7)=aAESvU|+ZDMrSxp56DaozPKiEZ*tlg zj3gzoGP;!Aai@=J`zLX`lwGNra=Y-hT{RD-9WA`!rHHZmFr59P79Nb42-26&4*B-$ zmD%jCCirD<-k0Gk_p4cpCbu`XM?bFZ4I_>Y*j$U7X{T|ZG`f*R(Eus9RF%ejv}CNJ z+GtN6ZW+C{au{3eCa!(~rXC^~y11m%HxTn#GQ=hb#3ut7CGDc8A%bSbMo2 z*$d>5zMjaURN!R{EhBDwhhi3AA8JdVG-3Zcpib#Z1jW2;al&vNz(N9rpOlWa!Sl zQap~GZ>CmxEJSIZ*l%bNXn zcsN$eqDc~ZwZti+R7SxZ0iu{k0pCm6JgfSuC>es#M?*!?IyZT3cCco}?Fxt8;adG> z=$?se6N3Gwa2|0T0Tp-y;sO~Z4=a;ZOPXnnCI^l0Vrd?KRzn?kMi@4DY3Ptdi3^Cd zp@Q@C!N7QJAR9H!Vmoy1CY37rP;OzWnXO;*3^n{ve4YW?=B`@*7}eBR>bI>1o)HI< zN140R?XIhVgqk&QS27v}xgmOO+{vN;OKE3mn=N7WOZ!u~JQw@Jv@|RxPx@k}gFx21 zAmE#zJN;Q1M<_-o;YrtqH+8%(^G^-LCj+az&nf~uWlu{v5ijd`_>(Qy!}9RHeBvlZ zi*6ZQ7CVqPpX*1zPqgOGpOF$-lmFCx+@EkdE{vO8VumK%v}k+caM*iP!c%=HeYk3C z`{ka6XXh;MkVFafBM<(Y=OmXyvtJBPH(HG=@S0Y-jl~XVJx6OJ1am)2JPa~Z z+N^?Hlo+gG2|m4-{A+&xx+aX5BJr4e2Jo{>j_fb#)TpX<3{T213dmqlv>1?eS3fKc zt~qz0EoQt`EQZ<{EUrRfEpAeJ>m3XutTnEa*3*()(hjDMQORq~xyLwt{`CcbZV)7x zQG&;_r*QLh5KmEQXA+Cd1SwdGjVk8xw1&g3z4O!J^G&VAb1vRebep8jug|J$d2b#I zQrc9HX~hV6YNY@3StpQ2T~L4F`vX?6fl8Djq9#6GxXS*O=w(KLUPCv zHC=U2Qo9{;{>7tw6wk0UY`2%uWvmaOO8I9g{$3!zCxA!=ruyjE-TFHFxG{I2Il9i>?W3W=@RxL)%98}B6mav2eLMQ$k=YCl4Q(2qsdTJ?WCr|Y0(~M*TC(uBIV0W z$gbXhy^J2oSnVM5u?H4emAOeA@+)AR#);78yrhZ~W9l`s|1mdz7Ckp{MtO!auKCrM z|L$W?WGXIT$qc+HkfMV8Z4CbNu2X2h=ljOh(@G%g`i~L)bG|YTfhA1MmBXpcO?-Mc z>ap^)&FCQ}nP5z79{*?G{r*ly8uA#c8aL4Whz8Qc$FnbPVXd@C*t;F8?N+GHWV%oR znGTs2$Oqb1tC0NjHeSyBe4}Pp?-urpkn<723o#Y&mh7fQk>^Z`N|qi@+D9V*5v96zyG9wDG@WXqydJQyNcWf@*+%$MXg8?7BIxf4RUWaIU5Bbb*McYPJco- z0r<2;5Iy>)N=ehH8{fK*SP~cW@B6<-#NE<#Jri>1#doMLDr;RB{{CSS=$PvC>~^x! zvJCvriYgXIehfd6pr_O5qoHIufihOJVQRUiGCL~qD{wM5jT)0LG%%P5S3p~Wdy~NV z>>q};W`ZU!FFQR&*Cikue1IZTlQE;4&x-E(ihUnj9P?$1lJ}brG?G1V8$+-bsb^v| ziqBR+KLU%&Y{EfDau3L<4r|g=AHv7>ldcFn_R{f!m!s9^;j;iQr^AZg`x_+OG08~Jn*vC`$Aofk58AA$3v{6LtCR446y(b<%iHYV-7P<3O3_n8nVqSZA4j!+y^XlY;`*;aXb10q3wCr_^Za@vvxd zywosk58=JtM;c*E`Q6HU(X^~3nOjk-CxQ=Q^p&$gh(}ss06&p2XxT0V=5q&$e2w6~ zwgOZFms^nE_VL)vL|s!lUq|cu$q;>1tTrVi$-Xfb@mzL7=z6(%dDhCK^>}$$T^1p9 z+ghkKKX^F|k(c_=jqiTDehes8Z!%FM!*qK>E6T2DAmzedIenR{2_S3O%S%~mdp>Am z+m9#-8Ff3hIfmD|^?nJr>%7;-{}vGg1GJd|%mG4nJ`ar7B~iJGb8=xkoYxl7=~*vf zlQhp=m-#|9^@lK;a`I{%2d#S|6z~cnzWfy+^|Tkxu@U$=;dDahCN0Om%Spi39ayeO zC(InoeEq!NhTqTDgF(E$EzcYRb0&q9^M9pnIi$P8dXapGk4ih_G4pfv`I^0rL77lH z+I|MUSwqlStq-}?Fu@|s$q)06e{J3{{fcYF7b=W^ zdm)#ZE--zJy z)^qpO;rt|JHid0q>OG^|o`gl!Fwe49xhtK+vRwjF2=)i-9Hd;C{K(9L*&I?nO^lD! zSaiy3Qk;7^!epf8z4fjqEjJ$<>VKuV+&2rlu9T>;-vEh-`_Z#w{=UHuXU_fn?8leE zGwEW^f#^0HLdko#+y=oc#V?fRqpW^IlH64o-qGQIJP^QGV?}dHlS1k=$*T2lyf>Y3 z)X^XL{vqr>CGX|*w2ScU#uvI`66e5CKftW}oaj6Es?L#;J@3U+dNXR%VP%N4oM~?} zz|c#z+T7EWD@Lh4ELP}>+&o^4KI~JeS+>-`!=l?C5#w97TqzQ=1Vjb>q(K1}6ZRCW zE(SXzwHAbD=E4HuOOWVssn>*Hr zgiKH7eg>P_QjO&k_ZzO8Uf$<%mkLi}Z*AxEe#)lKH(Wz_#ULZAAWi*?p|wW7j6dT& z405AS0IXnN82ic`)nmYg&Se$m=|qRmpmmX+R*W6^otGg*8B7;RT2e2ehpURUO?Pqj zZpvPSnc3v|%Ut39ZW28`>&c}3f}=ifRc;ZMNeS{TI&iEf!(x0Qs>Q2`qdQ)#EAv=G z__PTYA29JQo|Y_=p6jCR>B#aRtLxn+W~Yx8$IGEx@l)mVwu{g#pRcke>^bbyRhh?C zk6!EQ=?DLv=ZBM%3rRYy)}>z=a|S8qZ((^*MjYn#6YkDyc%RQAxW~c!vuJ1t2%h8x zAYsgX6o}d3GOZkwefc?-xK5fk7pjdnTk5Q%Lf6llPbPmvAR(E|mZl;l=ss`4cHSp{ zurat^Cx2?wv{MlK`sGf9Sz#KMc#>5uQ22ax(J@F}>{+?Mj~;NJbM-@Q1z};jtg?F~ znVa;Ok*d~xXu9B>@R%mdddnc|3(wI)>hgwb2Zgn)Iz#Q63&D#S5)PPJT4NLT;~sudeQnM@`^_+RPoP2=%6tTGtoCF%vSrSyJH z0B!>rxbF?q&FNHDp>$$%(g8o6HA271*+@rru8eleTCNbsvi+j@FOSy^)}T{jOtxd2 z>>FwOcUW3t;3pEf3--&?=3BqtpNW5go>C@`ga%%YljnGEi3rhyaB8jc0KYhZNMXmC06Q?Ee$w>dnmfu6Y1}3L0um zXE~dd`8#Z<@?}>NQ(5$bkz$BOp;jPJiDeKWPm?GN8ZHtdZh^vOAztBEy{_JklajO_1a5=1qcP~95$9*G@AYZk-lW%ZAm8{@@sgCXrfH3-dXh zXW0#CMipj%!ps1>NL(gP-EnfueMhbQvZV_v!LDnz!OZ6l->d>t)afEj0!icd>LSFc z$5nTQ`6cx8R`QVa4)sNxlUn%QC@0HLE`Pfo=NQ-Ec1%Rgk_s5N`RY!#RxX9K(U(hJItG=Ke&1e-xo|!y-v3*S};|4jf-w<6Z=Q8b^qCtLYEH>e&9yNC2FsU z5oonTnaQWnO_RXz^{H61Wr4D@=5!p84mg+LL~~-{zQHOwe#!wmq1SR5c3a9o(uu4s zYu;ePcP$_M0((~QBTf7ZmI_kY`%uKKvB$d$HzV~zP8mI2T~~uae(sX5G}^=9O*urS=uzZXNIG}$XI7$U{=-+a&9WXxrdqU%KC6cLiqH5+ zMJ^{T4taXaA8>TylzRsYiMm-V;$?Yf+%Y(%VpH*%zVcB-QNE`5BCA}sjc(gsuHE@j zyUJpjQ)?vNH0kT9+=MI8f!+b=Cw2Xrsw+YeCN}uhMZhWH4%$WV9R_ev@($3j5)$(# zrf-ud77rJb&cwjZ_LBPBDdl$+W)qRv8^gec3fWui4q_sDFe~s+v8pv1=o4>ZghW#@1}T(fTJm&If`L}S5JOr=EPu-T7XYw-d%hHVF?SUR#rs7f2Ct3c~8;=0+5F{z`(W{5T(F=j6+-)3Z5 zlk)*V?URy1(OuF(?0dSvs=_JF*Nf4sU7qVcNIcm3{TtEH@7H+&KMo*pAqx-b#D0c>2*E|yrpzxr}g(Jg`)NJc(5mwAC^`AxK6 zPM!H;?bWYbZpXK4Q1*Z~>6`@>4TWVFglzN%IHsA(>Xxh}8~|_1F(U5N@w_k++7DWK zXA&r^!gtq*x`||8!kWV-c{?J`Iw=)698b0bXPd%q>t5vtzg!xLhG^P4>_2KfRqZQ* z+Dh3AN5G->@yyq>p8B3*yU@1}>yV5+;m7bxeb37lOJDtLc7$%6a{9b=m=Xe;EcX?y zlGeddRb>qA)$5G=6g)5W-~RuvWAl67FsEjn5^r?Vwq!L)>`ZCiCtK3ZH)V098cmJ- z5{&E)&-|^O<=yS%wdq#U2-5a9^n~!4Z-L4%`|3DXI%opNjOt*pRgIZr7dR#a0b)S*O@YJ=jlJ#NQjS+z zYU7SLrU=JJ$wu@=M_B_b#`rn18TV~GN(9+Z88rJ#SPiP&%gWU3DW!7_ma9CdJNxK(&~6hIsvxpJ>ZoK0lLKC$nP_;CvvGUK!)* zx)?|xotqRO8wI!jkoJ<~ou%Z@D2C}$tgJ6yBRkc@ErWa`t{9W%w1X26rO3#ikEo3n ziAh0ry#ySPraF!juMsrufA!OQor!6}h3cRo?8Hd(%m+9#X>J7vMQv3*@7L% zU3eiA?TCmLGkGM63{mc2Tohq;!EvuQ7BkKy!5&1|akPYsvt}FOlsTiZB~Or4zu#Mz zi0hIYHH#Be`h^MJO*}?p-7S8E;UI>O2)-o?l<}HjtG2xx07CItLNJ2!AktpbjVXEQ zE3Od0Q43%B`ePMK!#0Ys%`CsN=%r!Qt&}b|;plsAD=PnZouyXYs{6wowCmD1@BMD} z&>qaM+kR>HjS;Ssk2e?TFG~qdr6RiY5Tf|4+Rb7L@R=PSzw-EM^Ed`DS;Bzn5HP0~ zV(iZ>S!I|i8y2&p4P;zkaW%lB_`7%eK)AtU?yk-~m~Xy)IcTz2Kb${Ka^MXtD0)+c%7cKRES?ln7PNKUApxGz)$Vv_ ziB{W6%vdE*!(2l$^mx+WFi#Cr7dX@C*M2?GI8k zW8b5tf^OiR${Rjw63^%s!wQUN@5*1&+{e*yHjA8Oc?g^|M8BGji1uoSK3MkkABdNj zrOf`YZQ5OQykzgvnCsT|D^H4h(frneuu`00v)2qv%SAIUzF^&aa91#(6m=;D+~d+sn&FEJMZ3ZMpK1@cxrjm@`}jQ|SJB zoQZ5GBQZ}X`z8ULFVuxk!;q`?3Yo03;i7q6YS~-eBVBG5OWn!$yV9t#+0x@h#3;h6 z<87g6_sY@MkPG$>@VFnlTW6mpgDt5~B=hddMpD;G?c1y;TiMG$y&P`4U*DTsY`1Cc zEBMuE&vWOIgMebBApI)lZpziKL9g`&jO=8w}Q| z{xlHb-3kiHlp$fL>(~A9l96fGo#rHS1x)}EqAU2c^3v@574Ke742u&rObQV+WUfvO zU3|ng-s-LYsD>AcCu!Cugh|K7_G-%|%cgY}?oem@%?DFQ82CXqzKnxP^&s*QLT zzpDTy50wPwAvIBkOY#+(UFl0Bn-ywgx?NqrYYa{oTlM!Sw`iZR_x)70Sv_s zrd(nG!YvW#D&+CfG&~rToII+cP&?;M~nk$o@FU*!FSK zLVVKxV5Y=CjE5DG`V`TLwQs(?vjh0S8rKfBk6^{NtWN9}t#<|vBOiX|y0``|d9#Vj=J)aAN%KYc!&Z#6dYk(b>VXqR?feRBgo?vu$Rk)^zHIi=q5pS` zOZJkB_-2|z8u|U?$QCA~H*W8^C01|-y?h9S39}Oby;`3(DsdzgB9q`IP!{GyiAfN{BL$d_FKM*?rEv?SJ+6T9#duO{ajto=5D3j#UMfK} zc7(#yi8ud6X~vp<*51u*9J6yDSKFH30>Us$PQOxl2nDd^JTpfuXq_XGaZt6RktfMM zXNZSGpL2hGl`Bc)$K?8Xm$b1GsLH>VHPIwi@JGbkL7cKXn0YUbEKbQZ#g9t;9$#J{ zg{YmwARsIf`5K5ntq#AkAVuR&%;d2Cgf8Zq(aJYfPB*^P{6vTu{WbBMz-X4`coW60 z?)g?mIypblH<)+pGOrt#x!&C|eH*TQ-ED%F+n}}kb39w52}{#4Gs~WbjocMn`-cW@ zhsh*W$+dcc!H;yeYn3)qm!D8rw_s9>ov`dX045whIR&whCU76E;-|u$rLh`czEGG` zzKAGcIUzIzJo|R~B}gCW7Vi*Ft|G1biG(GC6t{tt7)H;wrsKvze5b7_i>@aP^O zBV0F0ejWE+0r^II1j7DlUR$bajPh6m+rjaz9|2vc163$B5|%M`S^4tSWg0W-i6{r- z9o?npnpZO9kPj~ZP3?*^P-h^(3wUVj7hPj0Gn9AA%4Lt_8rZb_o|phr=}hLINUmj7 z^u^CIg!QZZ$l-YO@pjGU+2#Tr#A#dHc>tCYy<%Qd7LIJRXb*j}@K`evw)bpY#yhu0 zVCi@>e=Sk@GZ3)aHCp{?k~PK}Dj$^!$1nfpC_FPf=3Q{u<2x-kD~r7ss02We%GjX% z@Fna+rYVfq97_F0Fl{n20)R*27admJ@cg>bQ~2y2Z_k4K-)y3z!iaoq`}L1r0Gr*A zNU5V9&lh2#iVqCtW!Q6Di|vuDcL!Q8`!l5)2M&GA&)AdBGnJ*|00L#j|GCW3AEyw9ZJ@f!Ao@v697O?#%;zP5jf0q>4to2N*3O z&+omIz3C(&3iQlpOdnxvaX5NfSTC5^UEbRcKwGTmu6|P^bf`T@1MiIk%!2X*#)}C} zNkGAwdJ^yxR-L-!m>)o}C6}DvOXpCDZZpRn#!HpB{mlW0vg|3ELfi?r-gYzYAW)Y> z7HTxv+qFF`pSX5>ZdR^cFrj_1k;o8-{UVw&lFG$Zm_+t%7U)I@!kaiGepcemigR}n zp8!(f!SUR;`PF)mzOEjHRQQ$$HAQk>DdtDI`$B?u>O13T!YXB}^5@(=j0n=5U%)S; z?QswAkJ9u6RA|3F!z87I1!ks}X{UIy8ood0XD09zD-v%y{I1{_BBjL8_#KS!1YuzP z1j%(q;}o&358d})s6{e5e_CuG88!id zVZ#ZV?Y7OaS>2;0v`73J+t1~gl7zLNu*n8&W~f(gV?)U;l86o7Toml(GWEpPF^l!z zbZ@_HtW-&Kgw2J%#qEmQqXzbYA=C z+k_6a|e2^l`N^u4wS4hxlks>eO# zosbrtYsfcpW-4v9!}u6FR&)f%XC@ybL`ZjT$yN;C)wGa4<@T(}5b(JD7Iee`m~R z!)6xabLAyM^nMGDy_X3cM#m2tGZbd=ljwfpc}5LTUeLy+0}1a&3`>q`+7``8V3L3= z$_b7=9&6fbx9s~Jk*ss5uE?Z!p4J&^*1iL2oEO^(+tFZ5*U0J__(iP-F9_&HG%1ds zO?9)JZO}b3$~ZxhaD4&Kz|Z>5$~}qmK%=G{S5HbMxqnV#>8AY9a#XvB8zr6u@qG8% zC#~(Ev}t7X8{lv|>(mAto(MTj}R}1r-Xqf;lwKRPwfD8`t-t2he9A&isS19wimQw zumo6RSeR<_u@CssW052aL~3O)<%PCJ5^QF1$x(%aX7PnHufz1q8>lIOUEN<@p;V?B zrW5N^`py~8v<=rz?givVs6fs^af7^t+=O}UZUM`>WqZ?WhlbWJs|-$9h7)Xu-9#A} zjrOly%I(>2A_7%m=hvO;;lhYfy|Q_AVSc<)YR0MsNEkx@)eqjM{$&6z@lbygrTIpu z|CJfMbDz#ts=>UFZ+&|bkZTJ1>x_+5!!wMo!H*zEtq}x=A(c@Gv+(%?y}1~{3;OF> zpP69}qU@5Y;W&53{dhVb=%>in!k-0@vXGFtFUPV1G4R;axW{{U^?jK|w6g2SK^{C3 zNN4~U%GN09nnF=)XpiCM*4-0*oYw z(D~}O3SkTz3?Z6zgrhSIpNs7R3KHT2SjPZH5@U#~j|3Mn-_!lo#U1KQnbvB)&i|w9 z%fq4U{{OQNM#h%0&oIbR21T+D$&yHftYb;YUb3%a%h<*)Ybl8=A!OgzY?UpA?2jdT zmhe5(^L(z~U%&tA>bkn-zR!KmdB0!Vo9@u4q+$R5(~a6CAL*y2Q$1Jj&>?q8Lk0Vz zgM!&rVre${(uH2ZC&Zo^O_L%lmkha;vjK?=x+-M%#AB zBNaHq+B3dNJ$iS^KG3!#j!m+2(0`MB%vFK$MfgpcKs?o4>w#slr1=DjY)v_Ca<_uoha<#j zbr3dOM5O(5Pl?EUpmhm1Q0BzzlB3nf#ic{f^Rd4SV%%6@-Y$m;v8<={&MjG z7u*%g%5d3LJPQ^IJXgE2n-i3rvP(E+*8tDWM000ZduyXYi3UI$?kAJHYr@mZXr|GF zZZe5Hvk z+5w**pum+@h=ezn?1>(cP}h|rN2{u5*i)lr#NBF>QSk96UCRg#xyw7KSh_GyCitcK zsAkJj{fP#@zt z?+WHzn^dsVmgH$Qy|iz}Zc&&Ux`7V4FvuXBWgtvN?E~@0nPU`fms;~Kfd!;H3C}LV zp%?MC>Sao>mt7(nq6RO-t{42P*+?Qn-T$#+N{~t#l5J+)C#_J~sfoe|ckDw*R2aml zO;;5U=b3n3GlokKaeGEmC)6DMQ*?6MO=hRu^|CPE@Y6&q5x$9Egd@#sutTX$BPI0d z#RmLvR?(DHr-KK^h%9*<;?aB{xZ6%}+?Exo);=`ubz-7XzW8ijlDwJBw3#aNq7HX> zVvt}>h}gBzr&_ZpJcsu+3?bP2lXt=GtPG@BI#oZ_;teS2Wqk?j?-@fbqfcs|P-F`) zBX=2mdUpB8Zn!W!h~QSqvGol!{?>c=EZ~9s%Tk8UjK-IP#Jx&f!a%T~g-zmyae#?e zhm*n)^R|$umTtbkCaWByDa~p>V!Vx@jGl`VQLh~0*r29lW5*zVzK+34ZJAx(TXRDSQE*opVH z&h3#5v2M~>1+-YJgDi24pN?ZA)UvO|b1%Hj4b8?j#2ZqagmPne(sK)j4DlTEv_8f6 z7fND`XvSE4IQ`9UTlE~h{ZGsBS1v@5S8&JzOa3J29Jz`Se*~A2uuhVmPi>WJLQc>o z73SV}?chLH$ZUx6vp)Z`(-V{AW;Y)d+n7t$Q}6HCq9z9iJVY_e7-G)NtJJY#<2e;w zAPwkH%V*4H)Q4TP?fA?f@_MZ(QRHpkMot!ARAhh*&ha~6O zF~4#HZ;6)D_|W)={h(=xTdUD*djDW}EUzoaK>O`()sq0?<^v0K0Wj`_tK1GT#NQl# zZtD;R%^N1K-{G2^nTa7i;+Wb z;G3v-NcCd82@hI6J4v{OmU;$q3k+{&A%7O4vJr}U09ydGXE}<&)dO=EvgcO^(Z zJvbm%I3%l#fRs-i*1V8~d##3^Sx{=E^i)nnrF?sNGmcwb#W#rv*|CqD>ORMz1? zES;ci677j1AJne#tdcjVIJ4}+KE56@y*9C4_~mT)+iu%qJ`ehn*zDB*gggESKv61m z8aFVLVh~tJSy5~Y10yuajlWuH1Wy?n`+Y)%Uj9pUf?fffF%PyV0kEcDAUHuyA@td_ zQ`OgdF`oHtJLA6FdNUoQ0`nKK5ps0YO4NzD4d0yW-aYB~?z8$X)fhGMNz!PQEcmL2kKeiMsv7g5&ps!T_G(9}72 zKt$uL&oa-hE+a)l1E|(&%Q&kUw3dDU(>b=sDeXLMKR7Ps{(Dt9gq*9Z#3pl2O+`(V zK3-WE^&H(UkC!9-hRfrwrx__+a5sSot14E6Z3den$tSud&bCf-*{L_qv{FPh{1h$_ z#zR8cvgX5yx&y!NbGG*n&tv;n^QJz;So2#@SGC;br?d5ucAA`DBHJMak06*Pt-;b) z)Ouvi^`85aNKw2L(`l09r=!*j)AOuKSN3aQ+c*1N+0D$d-%m&PCKrY}Z3&KO96d}b?({ap{rzP)>WqN2b* zDZ|ioHi8KGJo^jzEUOD%l=MGbNR?h0qz^n$v5Qq9G^%(qOPT?*rh*sgk;l zfA%!>R8SSijHf*Eu?qBBl8I@CKSYq4K4Qd2jAQ~QgIjEo4^TQQVHk3+4_&TXBWOI- zlzazu!8|wBtypGK^Zp=B9`5H^LLnT&`Q*zTg{Q461vwiSvWnd3tDKb`7fcSOuFMx1 z0btE{KH;WAc>TtYX{o7krwEfcOanc`UCC1b9>ez;g4V7B(tdc$ThnyJFla}ks zIr+x>la6AgWAEruOZ+^vM;8AH1h;t0Zq%FI9mFXuFy!`<^{l>mM4-%jS81%rL5^TU zf9Mgjw6Z3pPVhvQk{&Xk2?#})XUPOf!LKCi27v4OLC)n=XvGZgea<=kV%Wzf>-p&A zW)Nl*K`juN8SMvyhc@`^z4d{U%rXJ}<1Y8r(G4Ojwv?XxmgbeM_Ct|FVM2Tw6JL(| z2lyASv3L_QdYZn1mU^2pE|ql7>qPD+8v>8}dI7%!P}gGxxiE{YhOkb-mhEKUWt zT=eR>;dT(F&hKyk(S5=ClSGVaF^b=f!grCO346)lF5I_7`v&*+OPpv8M^f`NfUN84JT&O6*Z-7kri&ms>V);(%a(uRd4S+31XKP`nBNQJ=Y?0Nmchp zZ2keQ>5Rrh2UVK7FJA9Z@=;EC@ha#|yKtGNx`h;z`rr=dE8bKaHFM{49zO;nNY0ZT zMhRwbb~014gm(dro#FBVJ6FUoO$j`5KEiUWAtQvlSskju-<=N#!BMB$b@y3%@tf*5 z@U}jML2YuuHcCda{d|jetJ=5U$^lS1;G`@TPcHm{uGm7IZ&Wg{*kx2^HOr>0IB@se zQIKLJKhx3q^Ob^>%B3%-FU_Af9X^|)LRBdPNorM#nIQ}59xh1kuQqnuR*u<7uVi<~q3Q3r&QcUBn}WqA$5To#Qlze|mj z5kfMn31iECma7<#nl5}O3?SGbIm6ypdwsWD);rHSH?+&?0q30ovRe|~>m^ssVv{Enc<%9~J*Z_Jk&5(@h zylB^}=b52N1J?GG@C0|;+PbYXv+-xcd)L`k2@CB45pt6MC+O2BmlD~FI3gDCpqpV1 zKNl|O4HYdVZQ|{ss8xQOWtdlXfi;jhoV~|ZC4{7uPEH-87bR&uH0uVt_j$&nmpSn{ z`Aas?f$jnv%meh+-8gMm)4Y(D$ns}*+6Jz7I@GG1N9eWI(^STA`MGQB3S8TF|CTiT zD)aI|%H3-`w)H|wKv*fBvSJHrm^5ht_*}opqM=L}5dNIA7^N6b!4xY&D=r)76yF^c zS>1pA+}T0jIrGCepQW$lR@4njq$az#J*JajZsnYI#PZW!KO?K>$LD^Nxeu%VtDr_) z23&gk)$D(W1wXaQImY0!aLGYA$2M?@d&^)yhJ+gIdkx(n;n49&t;X*C2DSV#4AGiylv?~*w`syi-2C6u)7tn9 zAV@x>i~^=(l?+y37}A4|-RjJ)7r&-K1>7&xLOT+69IE=S8R4h0(!8deb^3C)(P5pc zw8TSB*?(#^FH{_l-VYV6x%Fv!B$dl^JWoT`img)C(0=H! zF1nlSCs5O9#{`|XX!e4{T*lMl@o45}!;j02smCdP2Uv31W%`1A93)>}uGKjIz3ylq0VEwhs`66n(O>3)wz`$B3* zV>{eg87LFyjq}WK=fceGE7SMtfCww_k~+(1HT9|jPY>E_(~{?bP1g$@qoUMnlpsN1Vn@<`z0WyrWqfULk0?EtIL&dXCk$V&!ayp|gCgr)n@-bZ7zwwq z)kR}Jpo2cd0i(_$jjp$UNGKEe3+G3?9$2C~^?caoVq};Z zp{Q53PvyQjQoIcDPL9@ZUFO~53+MQSG=^kJl#{+mb&(Eyc?`}?_A4xN zF+-73PLlwpvU=LnLrpRqL=rg^4n}JG5H5m~K@M)0`b|LGUM7qawP*A?wW?k2z09XS zR@p3xq2#>bhxjhmo#)=%gq*NgCa30#5FiXx0d=$rBYVYVZKKj+lToqNw7q_iMob8n zu_5hII!yq{OjmhRnn_ReXb$a{ZjU(TDER-W$%x>#5&0c~_CpJ;$1JdcJ6R+BPEJ*5 zRTE$h&g3>H3VZ~~!T0qwTlfInw;OO2B11sUMuS$M8?9xJEB?Z*d!lZ$xtlE z8@{}4aHu%1>jgBACmSVZ?9$$vov-uWM^)9<8ny;^$H71=Xs)o?OeP;}lg$q9j>lI8 zXE6L+a&J?_EH*r@mL z5W(^|?Pb`#q2NCtr#I|(Jx*VU{}0ul^sYn!ZFe$C=;kW^nB3a{qjM#euYU;`F}6^* zL1W}jDBxtJL4_JNUzhM7jI^J+f ztXEt217*HZHpy=PXoj(F`t(nhu-n$L8bn4HG-Yo3Op}7l_LIp%^lCNE6&&t>39h+p z_K|rPot}?uLEA{ftSIJk6y^!=P7%YVw|i_oG;I>~a3qJc^J9QWm{eux4zHr)5GcIT ztQFiE#zlKU^dU=O`-T*f0ySe3K|9CZHVM4}mBTPXa%w<-)*vnwc2}m-%$8TXP<% zgevOLdX+Xm6%U1JEyq0~ki_xtLNuBg@aS&HQL2l4_`2qi@2;W`omm?^?^}(I5~(v7sJRyiyYC?HI@U&)8Pm^e_g>V`?xue8POngy9QJ z!dWvv=mqi^o+%sAFMPP9-?w>jY}LTfY$0aTNfcMA-(XLnf4Du=cgSHn^e&NNbXg4^B%J|8;w3_|Z z^h<6kFDR*l-!SM7B)^F;%qn6gh5O@1ih-1gXb3R~tW1x%#vqcM&b7AqQ@$mKx~^_s z0TRPY6Q>4|J`AQVS9CSWeUKAaq+yP?6VBmDh8;c=V%X^@-^~KcrC|m z#gkpaPPt_+ra!)pRE#u|`| z7^02dvi)9uY7|l2H5%XXp=6j|U^#~9aam>9jiUCUWDJ*qhr0621O&yRL3dc(WM?C| z`{CE#!cO z;({__Uv<<=o=MZzO0>q)dL9?z_2U*kv`C{EoTmB?dk(>8)BSX)Nk{oxQ`=Q8i3?IoFtT0W{+Si?$ zw10~HCfl4p4TAmC?XU7GJ@MLoheTolo9hZnJ?7ZtSW(hoAE7`)a#WOp{+vPfY+k-V zr<81?K+RC1A!66F?AOSFroBGn2wO|@fV96r&&AGQ{`&TZ&0ZI!3&~?a&9@WI*0}(v z*i>=d=ET*(EZH&ty&{V}6m2_|H(}F;y5Ss6M|OS&ej2F#)*8q#E?i)Xyuc=nTGy_x zsg8$P-CuJvjX>W@1Sf~qZBcdl#dPW&`k(QK-Sw3=Bm4fy(qghvvel41hAgggUlr$LEB9D1v( zs8fV%F8|)BAkkv!F(vY2mH56V{$%`+YZRyEq`V>iqZ!O<)|^Olvt1 zFeH-^e!o*5|M)1wvBa(E?Bv(UhOD>T8w`^VS<;AF5x(;Aik=H>Lgt@WQ=V1z_n?L) zH`C4e*jgnTJa1)K3^V9UVNcV_UZ-3#Su75T^*8So*~tQ~#R!EN)&n5Ap`!I9^jICvXb{u*4_hw##nfNy z?4{e-LP_diccKSoD)JvcZW58eo5rIB**?93Gg=&1P;`Ln6ZGE;2NL0ecNVpiMO(dL znr=CF7Ld0dK1;y7=tZBbY0f{Wi{vp?Kkh!N&&$eo#fAx}^LvgKWx<}Wx|x-@VCo+7 ze7sJX=W}a0nIs{IHR6-Bc{IzS^iJmC`8%zD?6}IfMa7txaO0NW%L06UZ>*1jX_)L* z?Rru@L3VVGEb`VNr^@sl5{t_;8%#){et(?!+tOi!*M`#Fl2WtMkiH67khRK#ll0d<$7XmPhH8X<4KFT9HEXT3lYKIn+Ek?#8vuVA%KgAiJC9k|Xh3>2>fq4>8Y6=LavJ_57Z~J zR-@xZC9RQ3WXc|gd|2$yM!gl>Ffzc05;ClQ>KkLY-KBo1SObDWk7rA&&jz2$k0G0zndMdmr=VruQKil%^?X!P{!)|HNS940HLuS_sIUI) z^tj+Ur>I4(6VwxudLJ^jaD?nR7pzvrG5LIPFT9IpM_?B!i7#w^vOi&Wtoot9=@Diy zc8=u*&ij*Fyig{S3-h9b5lMHfZ370HC|#H`8+{1g!KXDKG*&?McLOqI^+H3tyvTZM z{VTEEs6#w#UzuM}&ggCJk6mbd$wdB^=9pJu)n0J(1N(J>aIG|3`IVF0ca^pLQNW@A zqBCfND|wX$Le_Av=e6HFZcK2Py|J>^2gma=Lw<%l(bKZ(I12fp6qtMS*5*`DcRL@n!8+tOjZai9duVQ8jSJcn zGS}fBb{wq=`65Eh>?q$aGGDUyY`UvevI%?tKaaZ{InHf$f(&~WS7kA(*gzAU25XM- zKiXaS!2~2GK7v+K-)XBRX>?*zF8CB&oh*n0rj z?Z1$)w>oxgO8207=r(lhx%0=Kh}%;{<<6HGfRnn;NB=w%z+F3CzNxs~dFk@8SJOO` zXU@|}d%<7g=SVtA9%rB|YS%4Jw^O5*Dc6H+EHCrgU;5k!=ztmHRzLC5FjIu&^u?@O zO@aFrIWmhcsdthNd+Yi2I~T=&2rsU;l=u6(C&!zFY03e8g|lkL@FWx0Bgbw^4j)=l;U|p08_sadIQSHaL31#BZ-yc88(7u=5TT{**1s1F%Uv z6{V^&(j8zghiINr_8%9E6&JV6eb*N}hG7}qQ}ctPud-67(Qz6$z&Rh|7u*h?Mc2{zsWz6(=T%n-#o#80!`OG+`6w%FPz_ST@8}NK{Da9pjNrJEoD?`y%8SH)lYNvn$)IR_uC3?QXU6cLxIO{o!cJ z{-v+)(WiJLWFU1O)!OBVS`9=pdJ1Bq{vLN|gmxD1q@F83hENKHbI2|bs|WgYMC#3p z@s~Ov;gSZHh)=1a#y_`kHX6bt=Pu8{Vr3Rwc>@1zS$#CyvfeUZnQjUcK*jBkI8Ww$ z@rEehI7WOkGL-s7L(vCOR*#5Z=GCWRWOnC=p3T!kcZ!|((+euix9xmQmR~V7c*lCiX z&L2q!-3&N6^45!VMM8L)pw-}7o#2p(lS+C|MNWC`0} zHTqadWFlvI1Pu6P{s9|qS)}L6Sd&BGOzl*m_)x?!zWMRr(lnT2VWZdM$SyYbXV)bbq}c;%YF-00SkelH=n zriA~f(QRVv%^z_++JB`g`c%AHfoX#?U?R)*#v!$%L(iucl~7?`ftuG%o2|4P2{*a7 zkktD!YUetY*fsbu(7!@*nbz7?)r?*G&_&>`t1fw9PECJ(DbvH9y)Hd;yFR$4d7a04 zGnk6o)p4xklZVZo;((#EEQ+CM`t2XXd^4{Qw6yl7%}hl;WX>04t{=K8x2|G-z8#Xn zywydnL@55jCgz|OE9hJnw>VttXH|mIrZwnqIF1yC({Cq0<29D^T>FRbcK9SMe0-p% z5Zb&DVAbj$eoXh9>pvPB#Q~759&Vnh+W-{BA(b{rJ#VXoewG8|-yH60-J8X-zF1j> zD2z6Ox$$(bR2rGQ`M4RbUSU}SWxvubIR9zi5?im*64@r7BP;^c!9IL^Vsa(5zb&I% z00!~xCDD)gP zL(c)@PZAQ#ynE@L7d9ywgT2-Gxfac&qMH9e_s;L6wvY7NEk4PhXb1@q54JgXb60n{ zAtc*MJFnUb*7;e^y;yO|W!d9{!uww!BjGQm-J?VlywVF+1ssSj#SgRo+_YXdlqnyn z#VHYBmZ@pDga<>G-Pm)xE1v~5K8e;|!lBC~IXB7@^~*h$1{&{cNENESmu!16A1yEw zF<*gLQdTdS5f54-p`_!#Bkrp4SSyl32G)(;B2tdpnb*qm%gFJV4KmYIKT)sP_|%t^ zt!Ycb)pR7P3UMgfb-q$=0Li_Xr&Y^+(y>X$rvI=?H*jHA9W4LGAfg~Mga8mN zau8wa$U}L)UFH5Zn^E0P1EXFrw(~YRWH#LHoGr#9K@(*cqm1r7pcSc(uTSNq_af27 zMwS<7!g^E(fs4!H=tA)UhrCZE;8RyMLqgiK;5zWd`Gw|hc^L#ig6nCDRpTg7s_*)C zC7y0({>A>TNo0RYzUN$`)6Z9L@W}a&Rr+CPz4fU$eR^EK)}o!dsCb}pMR`1QIn@+J zW<%rC6Uo2J;>9n7Dy|iGUXk4poHE4dug_*I{}yrt9QFL~O|aI*$Lk;i5u@Z%frm7`#hbip9Oq6RoOuZ@afM%3Lo;>Uu_ z{;8zpeiD7*l7qgF_ej1*th+BT4^%&wb}@h5USxpK@KukGN%xL1fobwpPT$5LSL(MwXemvUvk8KV2WmZVBPgYyT#WmP`a zS!X5HhQ+@dBPXZ^SV|Q?YM5%PFy4qu{Jlcd7?>$X0Qp=t2)NM?hhS@TCE_)DHZCMe zj0W(#P!`@G`i+P_b;F}FDxZPQScg*ch8Ku?%Y(rEz8Z72k1lu^QW!FZpoH?@VSolg zGv)Wk+s+i%&vfrl5JZddS3vr{#r7VE+WGB2ICc|STkEm(5fH~dRtveI=iUDj>r}8y z9W>!Gm)qeh@MQQ@WvL$caHOd9KcgyHb@&!V8BfzM@`&p#U7VhU* zq_=MMvoaTN+NO3S9BQyxEf!IeBX?>EJDnv4F@`__L)j3T8?h|=HFQX4HZ8I1;)P!< z5Z?_kth(Iq9H3(P?4}5=wsF|MPLuLaP40VwSF=S%v4k%P&CaKP4jcP({jG%!1NEEdA#X=l6 z?F+INsV(uz#JW+zGwJeceTPY=2lpe;@#4=e;mNGm$F1Y`!s!k#V=#0&^l~ZPFB7t~ zLZ|Pr!>ylBpA4S;iIa}qQb1evmKZOKBwK7|wuDmXq`3R251TW-{#j+^4qA&kAhka} zPV!GlG2D0;r+8XZ2kbDC+MS8PS50oyBjjk{)|+i<)!vD<4})D0&`lq!Q!XNWhr)|1 z05N+;<=7$@RuK!~&4%I#36c?49Zqb1D5+h!Ilw&Lugcje$tYuR9mIUw(>o^3e~51d zR^I`?ff^;v_~!zYExr^woLW+!G8ztkMt=u$GZ~*hx=uOuHDVG8E7As%atG8d!_YUXdH|}?p*h87(sI_ zl8J^TR7n_{mT^Zj2aycCusS>+*}y*_REm{in*emJU`q3{3oR*!4(O&L!G?<0ShkS5 zpaYj=r^{8I`S4GXgwR`azAQJ*zo5p!%{m$|sZILz%93V? z`~8AN+f>@?>z}a?g@25)sDK3=*DeZwsZ z%>i8}1NL2JlTk}hL5%E1&CBVAu5PFb#WQ)Ht|gJ`tQ6FT!=qcr>2(6In=@mR5)DB1 z?4^S~kH0C@PBS+s*W4DqR|NnbMa49++3TT?f)O)u|K?Dn5+O<^xtD3BAmixam8OS$ z`RE-vO66a~@S60JAXZgA?=l3(Ex5-no6jZ6S%o&E7rxpxJZ=_0Pf`CdvhzfxmW*{C zG07}miTt9!HxS#}%5k7yY$1Rq{QNAXzF38736$ikruy5cmJ70l?E@dYorj*{ui&rZ zKMaj`ylJbUecHN3xJGoU^7G53xAt;pM!WJ7&do8X-r$B>1EnJ#`8dx=Tn7%l)Xh$~ zFA>l|)9G2_{%toM)o6cVGESU5Wo6;)Rmuv5g)60tYZp^tQoS(nv<@6d(sx&2>NfE- zZ3E5O-j)9{i^=Hvu*1|i8-z@NRF9I0H7{FtG&2FP81rSJUNl8d@&<<-Ulqrp1_C#v zr=H^5J3hxA>n&@iw|f?8|D~aQQ~=c65L0s`0+8kw2#me$wj@7Vdt5_6#yIVFbEDRr z$f15W8LZ7-kaRl zyk;e(F>PVZY>`FHX4C~7aLs9%vvfXpyP5V^_nj6U;obHJ`&VsIKX_pgxw9n}c&N1~ zvbYLZu$3hjaA7xrR{;9!#6%mVh`j1Y^5WHp(7{SLj#zPSC<;ua4jD`ppootS78yz| z<)VJ>=^crT7x(^d2twGojbi}Sz5V?&*EZ$Mvgu^s1M~*o@7YZ-j*ut0yU0#I4N%X4FDB0}|mUhi~}XxcK0NU(w1&O06aW7zah13{GGqHKrPyZHI5 zsduy$%k~3?Dc{m2_b0#^gQ6JD3yh0zZ zjhEjbkZ*@hGX}KPY9bA41d<-p^Z8aA z$Fm)Y*vz;c*jrWmMG(SqRMmHu-Uh?LBJ5d5Cj@i+ezt9iwum?`5fhXe1gUI7-Iy*wOqT37&ZNFQnj1S@Qatl6H8eVdsmDL{x}ou}rXzPB((UnT-#YigzZ>hdbkfK9 z*{|GR?0KX3dz42q6SA61=A9V1p>ky=8xRZ&Bsj!_N7oQHpGH3uk; z8MoUqc$;YExWhBpR+RTHsY@?vU;g#RbSy|TXsv(W#uC6sUM=Q8DNW7`RlrR{kfaoFMi>^S*9IfO$TF&Hr}_&$;2X@wz{T8Jgv zS+V_M6l_tE$a*|`O3|6MemW9SRPwPm6=!RArJt;&&F@h@qgpE4K;E5um-V9l@aw<9 zj%Dh`p>brzH)GfrfF5jBB4bb!@A%dRo1(A?R%qq!c?#wvIFzJoN)PJh< zWAu8LHU*S_*^g?#+GWIR%Jp}t35St~CTPO#@))M>>-FH3w(Tr!tZzjan2)>hNIPc^ zHkDg-(8MX`aS(gKo}2zvIMK2&M~m_s-#0ktyU1<=I)9zc%L+I3AxMo?L42}Jz1R1 zawR3Gcg9zov(7MO$N3svW(HTU(B}PXpr4m8$U_fZ<5qcH6~Zv}3fV<-Xw>c2R@*a& z&6b2uNALvH(9^XvOcTDIf>UYRT%cn>wi`V_AH2Kx+{H&C7{*^Ov#BW&><6Y!y>@x- zf8m>m!M$!@t3w<3Q&&6A?z?1#t(jtB`XnNlxbCl^0q0Ec2Rnm`(^>AlLNV$rnj(@H zyn5m*qW+QUj~=BNBkGq=?EAlk#|tbn?3}a8(`uViQQtlyx}(8XkdZt)VHG-wXuM1D zY){1k$uc~>8&@xhnpcaET!d-;5g)Z@eJqa4SYbF)sbO19_vU`idVjJ@3v>{e+(y{L z&t<;v3mZQc|M;tX-{wO<96~fPMY`cEnG=|Tx9i1WQ25ieFW=6~`e%ZqE$Kf*Gq{Su zqXI4$E~wgeXgdORj{h;4J4LWQuQa7~bh-O%80*m>GFd%fvecqUEt~taPvTE#H945o z2Q%X6u_}1&FbrUqe-a58+%UK2LYp6#=cB?>Q?k}Dz2WjcfV`|QO-yE7z8Tn4gt@`n z8B1OX-_dvJX{5C7lC!=9gx#MKg%@f9yw2CVUS#={A(e-c+=(VH^%@$_2p0{*A@VO$ zA~R_jzd$I;1Q=vwoQ;@6f^&#>6|I97;uO8 zPjrPhiR{WRAc7GvGk42vA zx92sXk|zFuC`P;kY7~vt?!xcj@JQk!0pU!Fk1)$n`t^=*+wotC`@QF@8K_1-h?Lfk z_&U#MGq6XjRd%TgWA(A7>8X(knllMN?)0!IAI3;p9$LUGBeBWb158eWAn?d^E&v2x z9%o9g4e$V6dMwvJqmX19NOHMr!f2)lUDKIii$(m8m`2g|x9>L&tw%i2A zEu7QvgY5^F^QrGuoRSk-x1?@a1-xoXQU$h$j$M|_7LF;TCY%at1lCa;I|Wzl1asnk z1emf-J3z9bNggGJ1QLH10u(Q8?i2rZS%%4dDBfC#GPtbGm*)F}))QK;!INA6iRix) z^$UCAV=Vu9>`=h-bce5$#q^Wgk{#7G$`*9HW2kC@fLu^wXwXOn{6IjicxT9b<-2E{ z`6~emO?HEf(ayDd-ARw!vgUNmlSZgSBiXE| z6M*bY9F6rGnx^7(RpNUQ+}^RQyo-f~{K(D0+CQi_tjP&eHG%pY@cb=g?3KV%{i}D! zah;y@F=~_RROTo)9p2flKSFB>>z% zj<3_l*x)OOR9}==8I)UYJkb)&qxuJnS*E7GPJN?AmNe8M)y&haAj>mDtc{)9v5DG( z%|p0%=Enk@!dPb zy#|b46eP)3xBJu!v%p{U$w@Q|2ywH-;O5u664@N6fcCOy%Gn?pFCSLEgWhL$QvmH8%yQ3y!*xKxH3Eq=+ z{mC}=7E1M%6Fl~w0{dLROmnaTbRMkoX6@aJMcRSa&WBty+5DJmgZ5VGR@N(Rol+nY zHZt?3)X^@r3m2XOyutU8&|LIz@BO@XC-t{83++$)*)ZZpH>-FJTFX(;C>fPT)^dYnVtz&rM33xGI=!q&0yW+2R!A^EZxb};8)!cch zW((EZ7Kq<;Z4M&21LyRz22+(ov29mI@aAX!z%S@&o$$`*bp(BW}`^0>7# zG)}7tuLB$_>Mc!J7m0N+!z~tAH!oh0(K2zuT`vB}sF)jTdn_XjxLV|2eS z60|OF)vEXvtnTtG$_HAunEu+pn#pb+VrzPJu#ON z<=0Z&Gzm(=Xba$XU0R|+F**tO*?_SeYy=VvzW^cFt^0^U`w>u{J4gfnP)f&UE|AN$1&Z$xc?ZSzJIG5O;shVGCyfS4mGH40?02K zXp(A5zF%Qzr;%;Y7!SKl)jDs0n2z*zo~dftkUK--6KDWVP#Ou*rujs0_I*%gAjH0lz=Ff228H=oj?&yD~<`=af^^ zHG}_aYOX^n?Js_=F1(&PV(|BP=)vRyynX{rtn6ER@be!X=P+zrIDb(d{|8DHQZk7t zZ^1Zn4VkS6Nbv&dPO46;!EE{Um-tkvxfu zg@hu<{zNJszahc#?^e;5{vf^HiJE=|H9abCVVa{DIRK*^xRJ@t%)EX+qEutg0rJ5)#gQIE()&R66n!Oxz zrePH=*ad>bGm!TVI0?Mk*_!Zu09-Z=Mz@`p&re$)`OJfF|4YfG0!j{+Qi(rz4T}#o zd1w>3JA5;}S9{)pMSHpfn{5>zU+V}SA} z?C%sV$8Rn3H|M!?Uuay`6QYhXrTxcXf_2 zmkF~V~Z#g6`yc4Xc&8c7F7^C2PN|Hjz9a= zO<5DKIvqo4lu_4Xlp)m3UNjB&Ak+xxvx8&Pe7zd$oCnZt&@CBE|dJ!d@OkDWjRO)LlXq&IDxBhvM zJ(q45lJLm~k>@B+fa*tMcqY?c3bL&l5xz-0t<4FW7xu|H=KihtAGN4Y6wN2M-Lty@ zKG&9mGcI zw_XF9O6;u#-ejvnJb7U|5C3!RH+YOQokkxd=(E|=@5wSSPVsu{EgQ@1rEQyL>zCXb zl#D0bp5xf_4G%*aQBcw157yJKwvvz8JkpLitPB$88wj1l`p=1F5pmMO$d&sJM1S== zOwd0<#GI3tj72bL%|Jn(-YsNSmt)xW+j~CVpE9mCu8BtJ0D2`=sG(m)ntoawtm#d# zrfSTc%*5D5O>r-QAwj<6NBwMLU}~)N_LuU;)hZ!UuPbJOCwpu6d{Vfdi zDT!~h#lQ}PzX8j%rLKk7Y?w2^nquy&{p`IWQ1s|aRN(0n@W$@QCWE8A&(Hs>fuT1U z&0I)?Ba`QQ?|N#pYVN`N6Qb3QI?;302l?VOsu~%BG9L^0=q35n~fl53^ zjtybhTxG5iZWPJS$A*bx-bENBAyNQhk(SQ3tgUXh`w-gde@S-u>Tku3&?)-=Kr)&>ESK$g{)`uor`}Fb&rzX znvpssfiZE4rNJ(wn$agA;Dw;}=C*QNCybF&y!+%5^G2YTgS%qVf6f0PVD$9@Zaq;0 zRRd%AxgWIporp2b50+^Phx3VrI;V#q3bgKT*20SIQ9bYvNFkF!kogbaUym;89iI8+ zGn!Mub+C*kcoBSYrD0HcaO*+GHK=?tA{hYh_3_NH=e&YVJ_wQ>++S9owbNQmP?OLN znZoUD4XMz3i*aeDJdcm#zd#69$fFwe1t~t88D>|h<)0~NSH$N}M2@Wmxbox=PO<*) zWttOTCaX>sm>L6KrV?WlI?sMw75X`rOO{Bi*WKjyMkQ0ziJ!9|hCop60kCGtbK3u@ z%eAn4MoP-?|Lg3ngQ9%@uu;0DyE~;(m#(FiTtZ4#5D|E}h7fV0w7D6dO@ z(Nuq%OH-OVQJ_W=(JB%0=m}u5m2r2-DO#Z#k@2|eF2B@DP5$N!ZtBC^oY&*myz=0d z4aAoY1HBVaW6J z@lN&80nR=tq;Q1oWAHJ-RuMp=j3p3#nfpoA5&;;I*wD;t#g?Gr$lB^A9F+9z$2T>+CHM+#8Ex=UCQU+Vl&91Q6y8Hcuec7_a zlrD3L|NN>V6?_Rb=zbP=OFEUa_=YSkitHH0MDmTr=%YV~*S@2=tF1o~!VrABTXPrSyFX^TJ<*?AzjCho=oOoQ!<>;0CTtF3f0D)~ z*js}MSr;(v`HAt>>K%|n6{U;Di6n`n*#O7k0{{WPO!-D)aQXm(lnr8-k%xNh;EC64ti(3t(|AfVkkX=G-nid*2eKAQLA zmdv3|?hY&x3Fv$iHB~b!@4xG1P@~nL)l%h0Cz5UgY0iLE%IY23M%oWw3&%-X3Y5xQTWMrf*>*FwQYa7ncN)Aghj#tTd#Y|WT{8hkO?`w+Yy`;4i1X3LDc_z0# z0WIq-2gBsimD%_P;RVB`c>&AzV^}XbdS$36C z?}Ly`uNV?+5i15_CDW>@)u#XFZ8}M(&+>8jwso1Vh17U3wxRC`{Q*%{6Tk&G${x?Y zTaQ!Fo)>J#JQ+w8INx)+?~cnsGUan%#Y(q?O=CV^9`ZIB3b!4vV{uuhRlTQ!Mwg6AIMKpdEfWeqkykMAODQ8AUTlKUN}XOV`P9MWFM|w%h^wTc=Or%q$&R7 zGj$`vk80A7%=naCUZc2&0AI>yluswO3E8?PKLP*qHISfsUx%WT8o8f_>k+1D`T z)!>wtJV(NCmR@FzQYbGB;09+=1^Hg9X~BNH7~WqLoOU!)j~}q@dHVCq&b$r1cY(KB zS9pdOEb!;~JA76DnKjZaH2vGg>Uf+tw~$jJdqi8Y-ZTc2oQLeEV^}SK1=Tm;Iennx z^K1kXzpG^XgJv5!PX84SENj%MGQ-KUZK)Mk1GAbtOOGf(%IM1SK`@-@eGYF^1vSJ0 zmKIQ%U_p;50*tbMJW{t$mnXvW6stjVzlA}}R(*2Dh#(GefwP3usN!%yJC<Hc&3KEQ~( zt$}o^YUD1^;kAgRAr7Ud&Y+_33>vL2wqcQ7MOjh;kn>UTqE0zjdBHJlOa^K2PRJ17d1oOgv3 zR6jWeh+Z9IL@e!|cM=Lie5OCPSwAx8cNRR$dOhq>W9juk>*b! zb}YP_h`$=@xip?bW-g6AYX%`PD;K?i+W(bHQG?OmZeLJ!1fUd2yTa+lSrLZosD##u zyQ%bQs7i=rt|5bB$`bz#9&>A>c0)3LNAN4TDQ=zT_&B_4tTLlP z{z(^!{Nd8ktmg<Jn9<#|2|uFgwachpq6V0)OMfek z5=@bA5qb!Jj)aYta(>iRXZYkzWSFe(#+>$0HC{>g@2K{;Hnt2- z6xrf0_fj>tp1xNI+ZvhfdR38^(~+;UWac?wAMe+@WC4AXzO&HxwW(36?+a4O)GHm} zMM2S`q5Bl{1fbg$_qRtlXaS$I>eKES2*IA>sa2;+sDJ*LA!@|Ay?ne-%Rl)>X*fC& zYBsoqhPipC?IiXUkgnlKs!Z_Q$QUPMl~@Od@GRz*D(?@#SfhU$`RR{VGi6Dk z3c2MWmQ%h-h)D;p8jaGh60gE*^PrOz6mRi`*I>`_+_Sle%CN!*)l-@S`+gg_YWs)p zyz9VZ-Ul$PHJ$!u&9nR^7V|nsZ|1&h?7RgQS!W=IFqNCoN@kid!nS$6TT7_1JN}u| z%8x z;~Kj_EKRs{W&5dq5zd{!vd=%;En}L&(*78F1$ip|5*6H1+$0~C0EAqZ?IV(rQ+ksmtclcAq}L?XY0b%Q4HZpE0Dy_zrOEWLq2Ta8kXkX}S`JjIkdUFSFkf+7u| zqE|a3T{+FXaDvvck7}LP49ToU$&zG~B&hmr#R8OhI>)Mc0^ZXI8bW-_v1gzn=v?Sz zlJ3{g&FYsJTuPSy+Np#T>uZw5Er-!uMdCN@ z&oe@@s`wD+UJ4wN52=}$1${)a>Ws7BoUGTW#^Y_`KdSKS1-y8ROGK%;5XW#w$kWv4 zhbZI^vj?{F&kT5+15A<6(+%Bqx`#VbXovM?E&vu{pOwi(EOVr?PS}V({1giF9_cg< zn=R-1h_qBHD8k9SGQ(z!ml&!}?9B)jDr!f;65E7vKk9zh6WDfa z#2W%My(fk32_|>Gdl`gRAfBqsDZQm+_oI>hyZ!Eh8H0^tb%=lY*oR1pm_6nR9#p|AuA0}@Pt7Y;awSG#7LP7-y*^LKzCrLYyolnAzk+E(! zJuKR4bE=jha;l%S%n5CLCcIiu5(T z>d&=)%{+Co1=QX_KMW$dIq6tg?!!-lj30k+43vS8S}G6IQy?EBx%w+WNcXMJ61TRH zgnz*T>PMev`mY_R&J42Eq&wV>iQrb?s{)`Dk#CZm(Tu?JELhCr7~XFiwrfey=zb7R z0ovbQ0UQjpH>tGUG5wcwKN{Oj3@rkmadto+B@w*bmDdwD>5pVu%5LAN7ZiW3ZC&)2$D`pvR=Y zMuaZABPl!=Q*LBUjs6{`#iWl7Z{S0}VR7d&Fy8>wSv+G5B2zFBmunM_C(qvDB+R7m z+5Q1_4@^GJl}AvWybod3%oZezK{RoyUxe6&)tSs&0=yeeR$sk}*=1LG{rWXGN)9al zA+z6n$gHur@hcCpW#X#f2gv0}G3}<+{18mnFOjRNG_s(iQs=XPHbJk89;#l?i@~m2 zi*iklEG<$(80-mQXxhZTW<}KjJfni8T&fhKclAmYRSSeN7CF(J#=lMXa9};ivHPKi3WPDLcWGe@U;@ zjZ2vDaNIA}HGQP#)PWIow&3p8qLrfM6cO3D)D*< zyh@VHTTlVcNkg_&TtW8C8it;dvSM{TraaGIJ#E_3_MScO$oY5C8l}=+@;05Xg1;Pz+is4!a~S z7Y&zyyR(9_cuy?7Wy0xiL)0T{kx?BAb+& zrTEYu-~M7w3q{>_}Tn>`zyutzDwLH zjyBh6GE1ohpq`?pnh;D=tYuN7^U^|{_dcF~8bOXyk5$~!T1HdY9<5+@Sh^4*B;k{re*4 z4LDODM(>R{3|H8;)fydUWD2M2B@oQLcbO-t+VVi)#+yRC zLYQ0`q3#UBtVH*#mTnZ2_wp}k2nJ&L2|*P6wSWA%Gm^MQS1;;9D<8wri@r3lrkLp@ z8b>!0bqnazk8*I0*0D~PO}R4F9~}m8r7Ig&z?b_*J|)?GNP{Aqd*Lg zs`nS-qfDqn7>1Vj7pbEEJz||u|NgYBi%S=zbKS;1MXa=Hqg|UnZ)y9seO@&@o^5S1 z1h6j>nPP5JbF8l4*td-9dNk-tixBC+TlDSxZIO(CFQ`cZazhc@N89bmzZ6cx7-D`a zCSF?iy`&WKsS$0b#dIfn95b$@&1Hzo{|o*7xOJhk#MH-jh;_3FY8?vB-q+bQ^);wG z{`Tp;C-KrN_hG+d@6h9Ggy2EgN$1{4>`9Ld$I&Rm!O!Y~)CuHtq!b;5c!y`zotplx z)qs>%C<{=WP(^7NWf~3b@LWEdzoa<3d@kC4DbH#04e01Sz=A4ZnZ^f80QudPRuBlV zE@9#AsClI^-Ro>F$ou2oWNBvR)GM#Y6t?_?gYq1}-%IMhZRZ#+ZmkZz8friI{vcCx zyWIdCzYi0KeaM?wgdjR{x?@_Il2Vph-#4F3(VPSmw;<&awcIlR1sg=tL)=(d`dnsN z$W$P$ybA-we(>18Pd19uH#fFOOT(E7bYg6Pr-I9}hBR2>D-h`A)1!~`ZN zg?ygmVGK_urbYp~+o;uBt65ehI_KsGG47PIJe6%6(@_g+aa6k$eHiRXupj+8h|MpR zW_oc{RhS(5%#esI?|e&<;1=s(8`gZgP&ndqB#JDoRa#@23`fiXqtH}06=6R$?INfB zuEaWa0Z}dEJR{Mj((*b3Z6tDS#lcSIS++f#Pb>zv7keqxz0*%)(Zu?xm>TVy7&G=+ zUfE&4I4L9Ay_hHYa{$8~VKYUnlh|Rs6nlbfxIGt}+|F>2?w?78{*bnMSe0Q*WF&5# z<;xmGklrGUSLo^({CnrGtgLIAx3dcZ*nsD@!2k`!TKW91=-gP0$`#YULC)}Mw?l=- z0ybi@_%w{8;3Zm*rMPon^~8>;K#(h~AT$W{sS2$4DcRq!vwA-2_NaYVl zaVwJh&A+mUWVW92VD6C>b^BSFi^%=rD2>{{UrKb>;Nt7$TS|40&em1B{#IQQ{nsYn_rc*?&&<_)(+^w&JDy`xCuz$CNgV!& zhpVN2x4js3|)6y+iq&8AeRXadsCn-0d5pOX90TM6NnAdvXowTDM}aPDFSFU(&G*)KA> zkChRMs>rx#FCi6_kw{)fV!ZFaLVeU=4G?YN$ftgQ?cyGkMv%RiaLFEwX7?2`Egrhv z;K0g@*2r_(wsfOJ^$Ho4f*AS43eogJoItztqOQ^vskxL=`ni|UwuPI3Z}Y5BzJla1 zs}@e)|eavk+z-2zPmBSsn=%2iU~q;7oz9PpdXl!BP$2TOsFdJ4SmyCcWu< zJ{IP#Q;4mUc;kFO4m~0qqgOJ&LJwDEfNXkaVVSl20$>{l3{^Wy!`Rd&Q$W_oYF|Mf zK0?BGqsS4`SO;dP`RLw$dNcgoy4zF16$4HdK_vZK5D{ zOs8R`sw*TGqZuqPuFl9##(nRoC#={TKs(@Zok205P|*dWPoY=Gn*`P5XAfY$ z;cE%<_U`TTu#UWN14LsbH_CysCpZHaVf*)_%olve#~nO|NZ17A366_NQx?8i-vvJu zt;aMZ#&U3*ZWQRI&mxumP~sv~a3DkC4oVxd+H%qdv}`HtfuQMuLW?jM2vt^d!-VA6x}Sz4B<(5^qoQsie_YJt%H!$C9;NIU8KiPun#dPV8{hftR$*OIX2=}^F2oekc1bdugAOeP z45xH3jt362@kJb3EfQ8S>i$8p*GG=i6m9=d%7^nK)d*#_(Z z2JrrU#{84x)Wf;KCyeC~&q#I-eUZ7wnbF!l(2b@_cI$onP){t|2lUv#(hvXrXD26> z!3u2pf7vVrw*Z@5p~3?|yQ+6H6P^+YT7KLc(UFYut`=jyD@7_rI!1|!C8gooxv(gG zAedznOih3zh>=~0y}VVe%l^{snOt$Epf>A!le3^?)~?bpy}@!*I||mBsQo29V~qf1 zN{ShNyj*?NW+1JUCN~ZE-viQ>jS=q^e8j&T)8%Jz(1ch90Y0V`_9peE zCBK2!#nlUE9eEmM)Wnkwd}b(=q#uBbPfXwXo_uZS1V|G+i>Pw91XL8jKAK>Jy)>ZW zj10xT*RlNm}ZVorx@9ri_goG0bkE0`RTG?m!(`O2;uPr+X zOZ0>t^u{vSv)9dRxI`J9%G=*$b&+=c(VVbHU(TA(9XjeI#VFn>MZS~1p~OHn2&0f)2W>|vMItZQ7wS7%s(v^X7$6+$D%W!_f%)@ zNJPxO%V4c7Ustr7&Won+)$riZlGi&L&l${GY*YUsvNjvXAIrWz#BGFuKK-lF(j*OQg}p zcv19F^cS~&vawqG5$0DU%sYxX8qpmuK4tFzeK>puG{kFRJ!#opC$o*h>><2V_XtQ+ zgU>Dw;+?nWWQ5t1nVZ=evI^hO zhC&L}4cG~gf4dqz#x;1pa`~%#t^=y`Y2=FUKY@;$Vf3Q~zi!0&w9@gsHdk3>iCqNR zhF{@PKUVjXxU>eVyU#su9%Qks>O0*ED;e`+XGi`;*2H@16h0$7oTzdTTs9+SB+`8DOTB|>(hc$7TfTs zFkPZYq-)d*PH9gnJp`y5c~{2;J&3laPq?FsbYB?pe@Ni(j)Np(0|oDjR2OD3+kVmG zzFl8uXXigT1*NRCOO9XJgVS({lh!lhe!KNVQ5l)O@Yn)UX>&I_D|E5>^Xt{&9U3p| zJhlqa*k10ebO+vj0A?*$vFODg#(2Lt!nsHN-Wd7V;bU*6bH!{x_3@(J*AG5Bj;V=m z+@;t1h*U@cj#H2R)B^Q}`r2s9j67O>aZG|U9Ff$77Ts3Tem`?n;tv7rpob`1(5%j6 zIYO<{uZWDFQ!nWSCGSfHc#6C85HG`r7Z{gpO4v(u%84cPzLY0<&_dGKpDlZV!lP<2 z_C)u_k&oOI%tFQL>X`+lE7R^_z!KQJ!;+ez566HA5{nye{-@5fK#A`Otf%G$xB*WV6)_2OE^{6$1j8g zVTLnr+*!H#J%%m(Hol&~57I5WI~Sl!ydzqa?ru(Mk^Ds!cB6@6T_d3^@lBv2eIM|F zJGe}A-5T!wq=?`@JaJSzLB&TKX}hgRDUKPU#D~53apbGt084)-pvHbIe^Qi6)?=5M z``r^H@9Ex_x9f}7yLBZ$^~o<~@85HHsEuH^V9;7YOs1K57P|`A7k`LJFF$%^#hOR+ ze8D(QHR|qrFyHH8J=+#p}^`khi1znx$Zke=m#x>i(le!Bhi za@$^Byu&m*)zq7URX_3(i6-?ESOi6$S9LrG|I=D8g4j8=Ok$ZiJjv(MiEKqt zC#nQBz!7`h4ck9jo~S^K8Xgc?ji*m1^32Qwr1hP1BDn%<1$of&EJf$~PCrUTsS=Jv9T~=@+VpSGUY{&HUJsQe-~d4Ip=1R@S8IS-dbm#7$$aa_ zqF3T~PkjVlsc_G(r1dGZ66#xrUpohoW{6$TviL4o_l_w-c^n>i%&2EZbGmE_eXHvb z)>>}JgFgPp4FX-`?i_-~>D?!&{;cVYV4px~fKNmgcJ zV__3$lV#JQxoF~ULG?xJ%e^l;l152#R9S!y5mo9J!^vv12kSo1iL0CcJ z&Oo%axp_Ao-~I8IQqEZK#G^#-B&Qmevj424CtiQ!IAeem=r;f}sTs^K0qEarqc~Hb zm6etE3i~>R#ETL%+!f>P064w+&}2Gm)tn}+TW@KYnZM|dkX(M#c0h7?3Zi#dNdb0c}M7C3Wwg_OIia{ck0#ZLj7^B~ZkCy?^X4CQL|7XcnPwa)H)L zmz3A)3wu*o%o_opG4{*QDuC17VyAj#!c$bP&nd%nod}HbqB~ScM5(b{-L2brx<%m@ z%b@4T8AE@If9*5!oAe=@x^sJjB1gXH*gYaXO_C3oh&}o{F6Qfi$;l50aCA=S$Y%+# z?NI6S%X0Pmvm+y!!x)@tM++I+l~>ZU^p9HDe`%@+4TwDfQiyUhG7du0%xfB=y@7I` z%<#6?uY1cvS^%4t^^a!%#!uC%B5MUs(A}=fzX*RQb}ouJb=3gY$9p;5dokoIXxR*L zBS}##c1->+wn|9?MOIA>gDG;<2~HtzPnfQTN6`6%b#hd^EVQ1s!t*~d^hqSV<+CVS zlh5{do7R8~yAQLd;Cln-Eey<{Hx2csD~9K6%;pay|L^K=xR#-T-_Pa*AxMd z_STI{4M%PTUf-%!Qr%@u&-D%St81lzv7K#Th)j4|M!@#^MWMA!wepbD#qI%MM6!N~ z2W{|U0N@Gyof@Z06p{Kjqoxe~s#Kx%4W|4sfen}oUJX3Xio1!J`Qu{WX6-2+>4`Vc zKb~g%iM+wynW3h!W;4U9FB&}{o#K1k%ZOsW>pVL-5cKGq<6*~EG!1iY@&C+lfQL); zMuXlnkzb)uKo47ec!-nIJMP-nR%6X*%g#i}n)LmP-Q>`T&HyOWBx)2jKu=M=^QH2Y zLwWZGQvfb(U7_I!%xH?*4`}dY*}kDQ0w6X5K*(FICG?N$~uXDpdD=drLbySk!x(cn3x{$9F& zBGa^DJ-^XLZ@0st?y^K2i~=r{iR{5&6hWvc*vVxYKo=?|U`jz7{-*6BpaaIs9`+g9 zjxWNjo+yyQo=oL#wtCb76pcTH`0IGhOtoEjn}G}YsDh$`rh=h@rGle^r$WG;VG63# zGbK^QQ~c08N($g+QAq(G2$7SLCj775Ga1G@NkWa%5%D2w$!20@MlSEJM*0NaC45bw50yNxXuFNy_W(QP;%AS*Fc{`}HPm>gU$7$yJ)w%U+q+XQ33> zF@64|rmLd?6G7KUJRHt+SWNm>=S;X>0QH?r_KE#@hKlnxM*y5RT?;oKCh%eKKG02@ z=PtdWhyDO6@wIen*nfO1dFOzZCWb_RwOKTXRxPIZrbPZ^#@g8UUyj!myf*gbV{XM07YgcuxUVK(84Q~c^J#L-sOwXw99Ul-HO8zY%zrZPq0;YG$|*ql5M*<+*tJ1r`?48x*q)K|)A zN>f(NI#)YT0=5~1txv{E?Z;2C_kqx)DFt?zY;hs2w zyqV&l?NaNl8J7yd@~*gEkVe$52-P%IT|GxI8up4?jTIwVfDZ4o>evBRh!d^lpZME!+Ocy4q@{iHn0U7!PA}iZnT6uO@8h^NgSi3 z4eC!<#~wv^mpFf`s}s`TZ8GtY(!O2*E|gm%PdQ>jol)HmERjRJ4}EB}K(Uxs?x|mL zz|Hko0ErU-n&0x2V!;io0E-B7Rr^3rrWZgb8(D(K^O9sdu%x^AtJLwJ`A^X$-*&&# z?RO&>OXW!n+V@xeVbT46#T`HMnz8VH91IvU0Tlx82=FM#BRrRXH4F9xZcw-?+;CX8 zyt*|#Sfk-!w1B1)gmEljimg?|VVrY9zrW3{^US!)oUZj(>YFe?--iIQr^_rhz0^3% zU=-bzJtfs7DD8==!U14P{d5FuKdh890@_BY7`&g9!#>d(_%|wtVbFCvlR#35cWCf5 z*b{M-uNy$x#9tv^ai>DMLcT)ze~+Y!I-yGjW3niV3F?WgO_94DpqfT6)VQ3afK5t2 z91iL?qBqUz20M=d%KLi>t&kpzIUy4^yG2R1K3`>mF3*RpLkoJ+)L)bno;eVjr)Ldv zdRzqZd*46Y*`95jzzT3L^J_9^8;9tC`2rTel;RW!Gyq+P{eKOLkAxXN2)q@;C@FUL z)$PjBjqCarD)LYPi407Z_&cEJ55|L0qcd^<&};@`%X1ABx!_hb*~h|dXC9ssloK5K ztSBY0aN3m@Bao#S8*QgrxVo>E@denQVY+xi8lm?R#YI}_bu)n*(E_g&?%j)(?XLA=!rrT&!$B1X%bhyPk zmZ*?0QOh|UQoJppCk+eMqX^-|;vKqsh_e#OXQ=%b7+kyjQDbv=l_agSb4JEkh@o4Y zn5&NDN{Y!G3g2$Fl54`VVRhw~L1CN?#6E>T^VZX@&JrP(`q2W9c9%#2R6LH5UHJzX z0!g?nOYO5R%K06PqVXEuJAKY5;GSIdCkajsdVQ*qV{n38BkerLdVk2y>s!+r(TsPbM%YE()RJ1Da;U)D= zvwD|G9vdw#3ZGrW07*felA66x_ijHMbAJx@u;cM@-VsY|K)i77+@7^eo{{2qW&0oz4yjVUK=(WVtUHe(`K>&Z+!2`%Hf0#2?~qc3A$Zo zfyd0%+E`Kr(uW|@asxP-fQ~5Mp5KPR`BNys!}i~Uf!t@GdKpZ)W7@tvhK`5;x;y)9 z|Azq3uB`3JI~-WeoS@ow+AfuM9Zs@h+-GGSO1&wga-?|eS^rCPj0_)rF42<|jBKa} z6c#M6bcIxzQW2)6@dybdkURZ?YH*E$iWLoLC)je?Ed5sNi&lVRjan*x_6F!DAKLs8 zTw+E%U~ruw3t<%W(zVMudF4viAz~&nMNemZl)KXbN|ifzwt8pbbnA_d2VK^+w`avD zsI+U{Nyc%TxOWFp4e#ULWc_e_d2!s<1rYRW>d@;(4f z698pSpY}YD&C+7-DA+L){wAM57ej1O_CR~(7m>&srbO24v;835Jtr$lh9yC zUTAeL3sB_o4Ra0LGK*}w%(*=4V`OT!c@$um3Z)TPEDYBaW|4ae0i&FSNP%@yGNg{x z7rMMaG&KBS4X7dvh`^%c>+^1Dic{DMoYIW(lLy9W>Gq*I z=fETofb+t?qOl=|s-ChcV~I2XR|3(_gpB3uCVB0F$o>`&A)gYhD+r==JYH~*ut^mG zD1DvhNC#~;XhewTS?sjmiPXX6%75CkDy!rx;!utU>Q@LadM1!_AS)@#kN+-6ai@&|21 zj9RZ99|NDlAPe9XiS$qHuI>Z@{NLG!*`KQQ2Y8B{t^?e{RMZU(6l)T`iqA1HU<7#; z0;L#8vnrEncD*-ap%8#L8&V8if6P~2mO!s)Na+fbQjDRWx0eWR&ZvuCmA_HQH3Ax~8ZRfprTCGpFIkAdKJ^B6E zP|BS(Ku{W;-{m`qysQCerg1Oe^8C0m#T~@Ro_js#2>%-IEhCCj*`*k9@~yJ@KWwH& zfVcIvVwk7Oy{iKVij*kpH2J%G^1+qCkVGFRcdG%MP@;FUWh9Glksa5K!6iXWujl~O z^rU?@R+WmiOc2_&A!7RnqmTHxH~BNdVGHD3rn-C;>-miWd|s5s+@E zKsz`!E*H4f@4Xa-s{(FMlEKpa!<nwrmID7+Z*}U|Sr{pgUDt(I~SFm3M?&KCc z>DQ2D+-(l+6iq`AuwGK&~x*BIwsKB}OXj)Ppi@&~~uq*RYwHfPt@29;Og;M6(` ziRw(EJkHgJlJ0VpYRHuvRM^CS>!h>sFq4_q6Z8xLueErzjU-Sxtnd<-qCm_5gDu$E zgOD{0Xe8xonHt9;NPP%wdORkd610}maga_^pgqk=QCxQL6jz zl7FR%V7xPVaOW>_5JA^PAJ81uX9s(}_v3r!&6MbS<6ydw!n4NeF-ofW=+NW>n8gTy zhx#%RkXLcjlxC(#N6Bn0B?%4aA3g&Ql>Xu7aGPaIz>D_EHjQo?Z7Tgm+O^_LkEmyq zTd7V5S+JX(rAm&O|7GjQ_G+vYYOk9VE!UPgK_7$G2O{4JhHk=VW=tmn6)xFax<A=^%Ya|zioJs`%2QSODmmk=N0j4|sKUdrG%j@beY zzA&Jn$m3DbP&M$@x=RTl$DDtBtk#d?DRV;IHdNS-f@J;ToFuur>|z)xF0XCH`D8$K zml%lh-Gv6H5cnL6a%;R$X#X-1(!h$t#pTAJ`9b}#2&4fo711JCwBu`?rdF$z0!ST{ z3tQRzwB8Q@f0pxCW>|Q=jMYTisvS+B`es%hGf&4BoTu^e zVax#FfZ+N9=L>^_c04!jDe%iQrzU%m3gu*=D~gZGq(S>y@T)B8jd#Ecdy47X+$Ziy z%9})79~{tN$P_UAnJ}qx^(r_RAht8f02u~dnC}mN`zmwi@m7kDN}r=Ng?YG24hA%W z`vswP1wd6Lhy{KQLZw=V_kbKgb{43wX$Th`{5z4kj`-@HMgM@0tQerDps3z>pGZ5C z9hxOkEDJagRx9*0p`N^(vmRtt=8Jc2GjA7*>SPEHzG9O0>8~DV%($+5L37LSc|D5C zSlXnn{M%Q~_9{6;L`m9nv`4dt;om>_;__oHR49f5Yc#Ijt|e|DSpsySt6dVkq{`6r z1f%&CJlK0Xi$hVq34F}cg2OGHh#v|z>AKn!~^2&g#YN@(JcuWy>!BGhe0-Qt`g2ciC<$FRL*@73; z%esJ&&EWm#RamFwv9*AT323D=3dHJ-+dHteLwfW&8=NZ|s|d7}S1}Ki;!=B&8{(+N z2Omf^5NrE^Nrvm2j7`pZ3rU#+9O(B$E~5$)y|*;mo5}p50BQF;XX_rBI!6eIre_-L z&Zr$@e7y{5F9$JKL;rV66ddq*1xwz`cwa|$At@9J@pizsTZ1x$^ComrZ0~-$b_`(6X>NinfxJW?YP6XnC8$h@@u}V|XBf#LF+0jHb zf5+WE8(wcae+*i{O_*uk=U=E02o>zORj5zD>trr;xub^Gw~)eT&u z&@YOj%VoTct4c9=dtMe`R0jHtjQ_duYiIu7=MoHzar4sW5fwt$m+*Q6|Mxj19vtKq zc)7rJQ1ZY3zy1P-4u182eYAgDcfEmEpI10QV0SXTIq?7e5%?cN1@M;qe*K&ISKD%B z0{+kMS2#gs(sFf8HUHP2QlVPQ1k5!}01o{B`iuX*)|CUtF(tmT>gNCTr`RaJ_W%2p bLoTs>J&tf-{Hi%<;Gc$yHnd8~>iPczKzChU literal 86217 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�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 From ef21a855e6d60b78011ddb8940f58985b1c60acb Mon Sep 17 00:00:00 2001 From: Damien Pollet Date: Sun, 27 Mar 2016 17:58:26 +0200 Subject: [PATCH 12/45] Add per-event user hook function to QMK --- tmk_core/common/action.c | 5 +++++ tmk_core/common/action.h | 3 +++ 2 files changed, 8 insertions(+) diff --git a/tmk_core/common/action.c b/tmk_core/common/action.c index 4197c53ed2..c6595196ff 100644 --- a/tmk_core/common/action.c +++ b/tmk_core/common/action.c @@ -53,6 +53,9 @@ void action_exec(keyevent_t event) #endif } +__attribute__ ((weak)) +void process_action_user(keyrecord_t *record) {} + void process_action(keyrecord_t *record) { keyevent_t event = record->event; @@ -62,6 +65,8 @@ void process_action(keyrecord_t *record) if (IS_NOEVENT(event)) { return; } + process_action_user(record); + action_t action = layer_switch_get_action(event.key); dprint("ACTION: "); debug_action(action); #ifndef NO_ACTION_LAYER diff --git a/tmk_core/common/action.h b/tmk_core/common/action.h index 8a4736d7bc..141dc3fca6 100644 --- a/tmk_core/common/action.h +++ b/tmk_core/common/action.h @@ -58,6 +58,9 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt); /* user defined special function */ void action_function(keyrecord_t *record, uint8_t id, uint8_t opt); +/* user-defined (pre)processing of each key event */ +void process_action_user(keyrecord_t *record); + /* Utilities for actions. */ void process_action(keyrecord_t *record); void register_code(uint8_t code); From acd64aa841f92ee638ca630fc66c3ff91c09ae72 Mon Sep 17 00:00:00 2001 From: Damien Pollet Date: Mon, 28 Mar 2016 16:12:50 +0200 Subject: [PATCH 13/45] Rename function to be keyboard-specific --- tmk_core/common/action.c | 4 ++-- tmk_core/common/action.h | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/tmk_core/common/action.c b/tmk_core/common/action.c index c6595196ff..2ccc0e0b94 100644 --- a/tmk_core/common/action.c +++ b/tmk_core/common/action.c @@ -54,7 +54,7 @@ void action_exec(keyevent_t event) } __attribute__ ((weak)) -void process_action_user(keyrecord_t *record) {} +void process_action_kb(keyrecord_t *record) {} void process_action(keyrecord_t *record) { @@ -65,7 +65,7 @@ void process_action(keyrecord_t *record) if (IS_NOEVENT(event)) { return; } - process_action_user(record); + process_action_kb(record); action_t action = layer_switch_get_action(event.key); dprint("ACTION: "); debug_action(action); diff --git a/tmk_core/common/action.h b/tmk_core/common/action.h index 141dc3fca6..9f528af4b9 100644 --- a/tmk_core/common/action.h +++ b/tmk_core/common/action.h @@ -58,8 +58,8 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt); /* user defined special function */ void action_function(keyrecord_t *record, uint8_t id, uint8_t opt); -/* user-defined (pre)processing of each key event */ -void process_action_user(keyrecord_t *record); +/* keyboard-specific key event (pre)processing */ +void process_action_kb(keyrecord_t *record); /* Utilities for actions. */ void process_action(keyrecord_t *record); From 2181be029e01d9cf46ae3cadcdf25f5bca02c631 Mon Sep 17 00:00:00 2001 From: Damien Pollet Date: Mon, 28 Mar 2016 16:13:37 +0200 Subject: [PATCH 14/45] Add action-preprocessing hook to keyboard template --- quantum/template/template.c | 20 ++++++++++++++++---- quantum/template/template.h | 5 +++-- 2 files changed, 19 insertions(+), 6 deletions(-) diff --git a/quantum/template/template.c b/quantum/template/template.c index 58e73cb09f..cc52e496ff 100644 --- a/quantum/template/template.c +++ b/quantum/template/template.c @@ -10,6 +10,11 @@ void matrix_scan_user(void) { // leave this function blank - it can be defined in a keymap file } +__attribute__ ((weak)) +void process_action_user(keyrecord_t *record) { + // leave this function blank - it can be defined in a keymap file +} + __attribute__ ((weak)) void led_set_user(uint8_t usb_led) { // leave this function blank - it can be defined in a keymap file @@ -18,19 +23,26 @@ void led_set_user(uint8_t usb_led) { void matrix_init_kb(void) { // put your keyboard start-up code here // runs once when the firmware starts up - + matrix_init_user(); } void matrix_scan_kb(void) { - // put your looping keyboard code here - // runs every cycle (a lot) + // put your looping keyboard code here + // runs every cycle (a lot) matrix_scan_user(); } +void process_action_kb(keyrecord_t *record) { + // put your per-action keyboard code here + // runs for every action, just before processing by the firmware + + process_action_user(record); +} + void led_set_kb(uint8_t usb_led) { // put your keyboard LED indicator (ex: Caps Lock LED) toggling code here led_set_user(usb_led); -} \ No newline at end of file +} diff --git a/quantum/template/template.h b/quantum/template/template.h index ba91abac3e..b1c34d3cbe 100644 --- a/quantum/template/template.h +++ b/quantum/template/template.h @@ -17,10 +17,11 @@ { \ { k00, k01, k02 }, \ { k10, KC_NO, k11 }, \ -} +} void matrix_init_user(void); void matrix_scan_user(void); +void process_action_user(keyrecord_t *record); void led_set_user(uint8_t usb_led); -#endif \ No newline at end of file +#endif From bcebb3447c155056819d42668943110ab0868517 Mon Sep 17 00:00:00 2001 From: Damien Pollet Date: Mon, 28 Mar 2016 16:14:54 +0200 Subject: [PATCH 15/45] Add action-preprocessing kb/user hooks in planck --- keyboard/planck/planck.c | 32 +++++++++++++++++--------------- keyboard/planck/planck.h | 1 + 2 files changed, 18 insertions(+), 15 deletions(-) diff --git a/keyboard/planck/planck.c b/keyboard/planck/planck.c index fe8731ec7b..4b39cf1e8b 100644 --- a/keyboard/planck/planck.c +++ b/keyboard/planck/planck.c @@ -1,28 +1,26 @@ #include "planck.h" __attribute__ ((weak)) -void matrix_init_user(void) { - -} +void matrix_init_user(void) {} __attribute__ ((weak)) -void matrix_scan_user(void) { +void matrix_scan_user(void) {} -} +__attribute__ ((weak)) +void process_action_user(keyrecord_t *record) {} void matrix_init_kb(void) { - #ifdef BACKLIGHT_ENABLE - backlight_init_ports(); - #endif +#ifdef BACKLIGHT_ENABLE + backlight_init_ports(); +#endif - #ifdef RGBLIGHT_ENABLE - rgblight_init(); - #endif +#ifdef RGBLIGHT_ENABLE + rgblight_init(); +#endif - - // Turn status LED on - DDRE |= (1<<6); - PORTE |= (1<<6); + // Turn status LED on + DDRE |= (1<<6); + PORTE |= (1<<6); matrix_init_user(); } @@ -30,3 +28,7 @@ void matrix_init_kb(void) { void matrix_scan_kb(void) { matrix_scan_user(); } + +void process_action_kb(keyrecord_t *record) { + process_action_user(record); +} diff --git a/keyboard/planck/planck.h b/keyboard/planck/planck.h index e9566b9228..edcb5fbff6 100644 --- a/keyboard/planck/planck.h +++ b/keyboard/planck/planck.h @@ -42,5 +42,6 @@ void matrix_init_user(void); void matrix_scan_user(void); +void process_action_user(keyrecord_t *record); #endif From 1fd9dbdbe9e7a819a7dae50d9b745640435e0e13 Mon Sep 17 00:00:00 2001 From: Andrew Pritchard Date: Mon, 28 Mar 2016 08:39:39 -0700 Subject: [PATCH 16/45] Add avr-libc to the Debian build dependencies. Without avr-libc the build fails trying to #include_next a header from the standard library, which of course doesn't exist. --- BUILD_GUIDE.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/BUILD_GUIDE.md b/BUILD_GUIDE.md index 81c3ec44f2..e8b242e4e3 100644 --- a/BUILD_GUIDE.md +++ b/BUILD_GUIDE.md @@ -25,12 +25,12 @@ You can also try these instructions: 3. Install [DFU-Programmer][dfu-prog]. ### Linux -Install AVR GCC and dfu-progammer with your favorite package manager. +Install AVR GCC, AVR libc, and dfu-progammer with your favorite package manager. Debian/Ubuntu example: sudo apt-get update - sudo apt-get install gcc-avr dfu-programmer + sudo apt-get install gcc-avr avr-libc dfu-programmer ### Vagrant If you have any problems building the firmware, you can try using a tool called Vagrant. It will set up a virtual computer with a known configuration that's ready-to-go for firmware building. OLKB does NOT host the files for this virtual computer. Details on how to set up Vagrant are in the [VAGRANT_GUIDE file](VAGRANT_GUIDE.md). @@ -52,4 +52,4 @@ If you have any problems building the firmware, you can try using a tool called ## Troubleshooting 1. Try running `make clean` if the make command fails. - WIP \ No newline at end of file + WIP From a70f43967283498dc01cbfc534819ac9da80f10b Mon Sep 17 00:00:00 2001 From: IBNobody Date: Mon, 28 Mar 2016 16:21:09 -0500 Subject: [PATCH 17/45] Added command to turn LED indicators off while sleeping --- tmk_core/common/avr/suspend.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/tmk_core/common/avr/suspend.c b/tmk_core/common/avr/suspend.c index caf0b06254..c07c2801d5 100644 --- a/tmk_core/common/avr/suspend.c +++ b/tmk_core/common/avr/suspend.c @@ -66,9 +66,12 @@ static void power_down(uint8_t wdto) wdt_intr_enable(wdto); #ifdef BACKLIGHT_ENABLE -backlight_set(0); + backlight_set(0); #endif + // Turn off LED indicators + led_set(0); + // TODO: more power saving // See PicoPower application note // - I/O port input with pullup From 32c7832609414d02c19b6ec312daabc8c741b266 Mon Sep 17 00:00:00 2001 From: Manuel Barkhau Date: Mon, 28 Mar 2016 21:32:16 +0000 Subject: [PATCH 18/45] Refactor compiler code --- .../keymaps/german-manuneo/compile_keymap.py | 864 +++--- .../keymaps/german-manuneo/keymap.c | 2359 +++++++++-------- .../keymaps/german-manuneo/keymap.md | 338 +-- 3 files changed, 1900 insertions(+), 1661 deletions(-) diff --git a/keyboard/ergodox_ez/keymaps/german-manuneo/compile_keymap.py b/keyboard/ergodox_ez/keymaps/german-manuneo/compile_keymap.py index 3bbb9340b2..9767b1e074 100644 --- a/keyboard/ergodox_ez/keymaps/german-manuneo/compile_keymap.py +++ b/keyboard/ergodox_ez/keymaps/german-manuneo/compile_keymap.py @@ -1,4 +1,13 @@ -# encoding: utf-8 +#!/usr/bin/env python +# -*- coding: utf-8 -*- +"""Compiler for keymap.c files + +This scrip will generate a keymap.c file from a simple +markdown file with a specific layout. + +Usage: + python compile_keymap.py INPUT_PATH [OUTPUT_PATH] +""" from __future__ import division from __future__ import print_function from __future__ import absolute_import @@ -15,299 +24,423 @@ import collections PY2 = sys.version_info.major == 2 if PY2: - chr = unichr + chr = unichr -ONELINE_COMMENT_RE = re.compile(r"^\s*//.*$", re.MULTILINE) -INLINE_COMMENT_RE = re.compile( - r"([\,\"\[\]\{\}\d])\s+//\s[^\"\]\}\{\[]*$", re.MULTILINE -) -TRAILING_COMMA_RE = re.compile( - r",$\s*([\]\}])", re.MULTILINE -) +BASEPATH = os.path.abspath(os.path.join( + os.path.dirname(__file__), "..", ".." +)) -def loads(raw_data): - if isinstance(raw_data, bytes): - raw_data = raw_data.decode('utf-8') - raw_data = ONELINE_COMMENT_RE.sub(r"", raw_data) - raw_data = INLINE_COMMENT_RE.sub(r"\1", raw_data) - raw_data = TRAILING_COMMA_RE.sub(r"\1", raw_data) - return json.loads(raw_data) -with io.open("keymap.md", encoding="utf-8") as fh: - lines = fh.readlines() +KEYBOARD_LAYOUTS = { + # These map positions in the parsed layout to + # positions in the KEYMAP MATRIX + 'ergodox_ez': [ + [ 0, 1, 2, 3, 4, 5, 6], [38, 39, 40, 41, 42, 43, 44], + [ 7, 8, 9, 10, 11, 12, 13], [45, 46, 47, 48, 49, 50, 51], + [14, 15, 16, 17, 18, 19 ], [ 52, 53, 54, 55, 56, 57], + [20, 21, 22, 23, 24, 25, 26], [58, 59, 60, 61, 62, 63, 64], + [27, 28, 29, 30, 31 ], [ 65, 66, 67, 68, 69], + [ 32, 33], [70, 71 ], + [ 34], [72 ], + [ 35, 36, 37], [73, 74, 75 ], + ] +} -SECTIONS = [ - 'layout_config', - 'layers', + +BLANK_LAYOUTS = [ +# Compact Layout +""" +.------------------------------------.------------------------------------. +| | | | | | | | | | | | | | | +!-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! +| | | | | | | | | | | | | | | +!-----+----+----+----x----x----! ! !----x----x----+----+----+-----! +| | | | | | |-----!-----! | | | | | | +!-----+----+----+----x----x----! ! !----x----x----+----+----+-----! +| | | | | | | | | | | | | | | +'-----+----+----+----+----+----------'----------+----+----+----+----+-----' + | | | | | | ! | | | | | + '------------------------' '------------------------' + .-----------. .-----------. + | | | ! | | + .-----+-----+-----! !-----+-----+-----. + ! ! | | ! | ! ! + ! ! !-----! !-----! ! ! + | | | | ! | | | + '-----------------' '-----------------' +""", + +# Wide Layout +""" +.--------------------------------------------. .--------------------------------------------. +| | | | | | | | ! | | | | | | | +!------+-----+-----+-----+-----+-------------! !-------+-----+-----+-----+-----+-----+------! +| | | | | | | | ! | | | | | | | +!------+-----+-----+-----x-----x-----! ! ! !-----x-----x-----+-----+-----+------! +| | | | | | |-------! !-------! | | | | | | +!------+-----+-----+-----x-----x-----! ! ! !-----x-----x-----+-----+-----+------! +| | | | | | | | ! | | | | | | | +'------+-----+-----+-----+-----+-------------' '-------------+-----+-----+-----+-----+------' + | | | | | | ! | | | | | + '-----------------------------' '-----------------------------' + .---------------. .---------------. + | | | ! | | + .-------+-------+-------! !-------+-------+-------. + ! ! | | ! | ! ! + ! ! !-------! !-------! ! ! + | | | | ! | | | + '-----------------------' '-----------------------' +""", ] -config = { - "includes_basedir": "quantum/", + +DEFAULT_CONFIG = { + "includes_basedir": "quantum/", "keymaps_includes": [ "keymap_common.h", ], - 'filler': "-+.':x", - 'separator': "|", + 'filler': "-+.':x", + 'separator': "|", 'default_key_prefix': ["KC_"], - 'unicode_macros': [], - 'macro_ids': ['UMS'], - 'layers': collections.OrderedDict(), - 'layer_lines': collections.OrderedDict(), } -section_start_index = -1 -current_section = None -current_layer_name = None -current_layer_lines = [] -config_data = [] - -def end_section(): - global section_start_index - global current_layer_lines - section_start_index = -1 - if current_section == 'layout_config': - config.update(loads("".join( - config_data - ))) - elif current_section == 'layers': - config['layer_lines'][current_layer_name] = current_layer_lines - current_layer_lines = [] - - -for i, line in enumerate(lines): - if line.startswith("# "): - section = line[2:].strip().replace(" ", "_").lower() - if section in SECTIONS: - current_section = section - elif line.startswith("## "): - sub_section = line[3:] - if current_section == 'layers': - current_layer_name = sub_section.strip() - # TODO: parse descriptio - config['layers'][current_layer_name] = "" - elif line.startswith(" "): - if section_start_index < 0: - section_start_index = i - if current_section == 'layout_config': - config_data.append(line) - elif current_section == 'layers': - if not line.strip(): - continue - current_layer_lines.append(line) - elif section_start_index > 0: - end_section() - -end_section() - -KEYDEF_RE = re.compile(r"#define ((?:{})(?:\w+))".format( - "|".join(config['key_prefixes']) -)) -IF0_RE = re.compile(r"^#if 0$.*?#endif", re.MULTILINE | re.DOTALL) -COMMENT_RE = re.compile(r"/\*.*?\*/", re.MULTILINE | re.DOTALL) -ENUM_RE = re.compile(r"(enum\s\w+\s\{.*?\};)", re.MULTILINE | re.DOTALL) -ENUM_KEY_RE = re.compile(r"({}\w+)".format( - "|".join(config['key_prefixes']) -)) -def parse_keydefs(path): - with io.open(path, encoding="utf-8") as fh: - data = fh.read() - data, _ = COMMENT_RE.subn("", data) - data, _ = IF0_RE.subn("", data) +SECTIONS = [ + 'layout_config', + 'layers', +] - for match in KEYDEF_RE.finditer(data): - yield match.groups()[0] - for enum_match in ENUM_RE.finditer(data): - enum = enum_match.groups()[0] - for key_match in ENUM_KEY_RE.finditer(enum): - yield key_match.groups()[0] +# Markdown Parsing -valid_keycodes = set() -basepath = os.path.abspath(os.path.join( - os.path.dirname(__file__), "..", "..", "..", ".." -)) +def loads(raw_data): + ONELINE_COMMENT_RE = re.compile(r""" + ^ # comment must be at the start of the line + \s* # arbitrary whitespace + // # start of the comment + (.*) # the comment + $ # until the end of line + """, re.MULTILINE | re.VERBOSE + ) + + INLINE_COMMENT_RE = re.compile(r""" + (?:[\,\"\[\]\{\}\d]) # anythig that might end a expression + \s+ # comment must be preceded by whitespace + // # start of the comment + \s # and succeded by whitespace + ([^\"\]\}\{\[]*) # the comment (except things which might be json) + $ # until the end of line + """, re.MULTILINE | re.VERBOSE + ) + + TRAILING_COMMA_RE = re.compile(r""" + , # the comma + \s* # arbitrary whitespace (including newlines) + ([\]\}]) # end of an array or object + """, re.MULTILINE | re.VERBOSE + ) -valid_keycodes.update(parse_keydefs(os.path.join( - basepath, "tmk_core", "common", "keycode.h" -))) - -for include_path in config['keymaps_includes']: - path = os.path.join(basepath, config['includes_dir'], include_path) - path = path.replace("/", os.sep) - if os.path.exists(path): - valid_keycodes.update(parse_keydefs(path)) - -LAYER_CHANGE_RE = re.compile(r"(DF|TG|MO)\(\d+\)") -MACRO_RE = re.compile(r"M\(\w+\)") -UNICODE_RE = re.compile(r"U[0-9A-F]{4}") -NON_CODE = re.compile(r"^[^A-Z0-9_]$") - - -def UNICODE_MACRO(config, c): - # TODO: don't use macro for codepoints below 0x2000 - macro_id = "UC_" + ( - unicodedata.name(c) - .replace(" ", "_") - .replace("-", "_") - .replace("SUPERSCRIPT_", "SUP_") - .replace("SUBSCRIPT_", "SUB_") - .replace("GREEK_SMALL_LETTER", "GR_LC") - .replace("GREEK_CAPITAL_LETTER", "GR_UC") - .replace("VULGAR_FRACTION_", "FR_") - ) - if macro_id not in config['macro_ids']: - config['macro_ids'].append(macro_id) - code = "{:04X}".format(ord(c)) - if (macro_id, code) not in config['unicode_macros']: - config['unicode_macros'].append((macro_id, code)) - return "M({})".format(macro_id) - - -def MACRO(config, code): - macro_id = code[2:-1] - if macro_id not in config['macro_ids']: - config['macro_ids'].append(macro_id) - return code - -# TODO: presumably we can have a macro or function which takes -# the hex code and produces much smaller code. + if isinstance(raw_data, bytes): + raw_data = raw_data.decode('utf-8') -WIN_UNICODE_MACRO_TEMPLATE = """ -case {0}: - return MACRODOWN( - D(LALT), T(KP_PLUS), {1}, U(LALT), END - ); -""" + raw_data = ONELINE_COMMENT_RE.sub(r"", raw_data) + raw_data = INLINE_COMMENT_RE.sub(r"\1", raw_data) + raw_data = TRAILING_COMMA_RE.sub(r"\1", raw_data) + return json.loads(raw_data) -LINUX_UNICODE_MACRO_TEMPLATE = """ -case {0}: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), {1}, T(KP_ENTER), END - ); -""" -def macro_cases(config, mode): - if mode == 'win': - template = WIN_UNICODE_MACRO_TEMPLATE - elif mode == 'linux': - template = LINUX_UNICODE_MACRO_TEMPLATE - else: - raise ValueError("Invalid mode: ", mode) - template = template.strip() - - for macro_id, unimacro_chars in config['unicode_macros']: - unimacro_keys = ", ".join( - "T({})".format( - "KP_" + char if char.isdigit() else char - ) for char in unimacro_chars - ) - yield template.format(macro_id, unimacro_keys) +def parse_config(path): + def reset_section(): + section.update({ + 'name': section.get('name', ""), + 'sub_name': "", + 'start_line': -1, + 'end_line': -1, + 'code_lines': [], + }) + + def start_section(line_index, line): + end_section() + if line.startswith("# "): + name = line[2:] + elif line.startswith("## "): + name = line[3:] + + name = name.strip().replace(" ", "_").lower() + if name in SECTIONS: + section['name'] = name + else: + section['sub_name'] = name + section['start_line'] = line_index + + def end_section(): + if section['start_line'] >= 0: + if section['name'] == 'layout_config': + config.update(loads("\n".join( + section['code_lines'] + ))) + elif section['sub_name'].startswith('layer'): + layer_name = section['sub_name'] + config['layer_lines'][layer_name] = section['code_lines'] + + reset_section() + + def amend_section(line_index, line): + section['end_line'] = line_index + section['code_lines'].append(line) + + config = DEFAULT_CONFIG.copy() + config.update({ + 'layer_lines': collections.OrderedDict(), + 'macro_ids': {'UM'}, + 'unicode_macros': {}, + }) + + section = {} + reset_section() + + with io.open(path, encoding="utf-8") as fh: + for i, line in enumerate(fh): + if line.startswith("#"): + start_section(i, line) + elif line.startswith(" "): + amend_section(i, line[4:]) + else: + # TODO: maybe parse description + pass + + end_section() + return config + +# header file parsing + +IF0_RE = re.compile(r""" + ^ + #if 0 + $.*? + #endif + """, re.MULTILINE | re.DOTALL | re.VERBOSE +) -MACROCODE = """ -#define UC_MODE_WIN 0 -#define UC_MODE_LINUX 1 +COMMENT_RE = re.compile(r""" + /\* + .*? + \*/" + """, re.MULTILINE | re.DOTALL | re.VERBOSE +) -static uint16_t unicode_mode = UC_MODE_WIN; +def read_header_file(path): + with io.open(path, encoding="utf-8") as fh: + data = fh.read() + data, _ = COMMENT_RE.subn("", data) + data, _ = IF0_RE.subn("", data) + return data + + +def regex_partial(re_str_fmt, flags=re.MULTILINE | re.DOTALL | re.VERBOSE): + def partial(*args, **kwargs): + re_str = re_str_fmt.format(*args, **kwargs) + return re.compile(re_str, flags) + return partial + + +KEYDEF_REP = regex_partial(r""" + #define + \s + ( + (?:{}) # the prefixes + (?:\w+) # the key name + ) # capture group end + """ +) + + +ENUM_RE = re.compile(r""" + ( + enum + \s\w+\s + \{ + .*? # the enum content + \} + ; + ) # capture group end + """, re.MULTILINE | re.DOTALL | re.VERBOSE +) + + +ENUM_KEY_REP = regex_partial(r""" + ( + {} # the prefixes + \w+ # the key name + ) # capture group end + """ +) + +def parse_keydefs(config, data): + prefix_options = "|".join(config['key_prefixes']) + keydef_re = KEYDEF_REP(prefix_options) + enum_key_re = ENUM_KEY_REP(prefix_options) + for match in keydef_re.finditer(data): + yield match.groups()[0] + + for enum_match in ENUM_RE.finditer(data): + enum = enum_match.groups()[0] + for key_match in enum_key_re.finditer(enum): + yield key_match.groups()[0] + + +def parse_valid_keys(config): + valid_keycodes = set() + paths = [ + os.path.join(BASEPATH, "tmk_core", "common", "keycode.h") + ] + [ + os.path.join( + BASEPATH, config['includes_dir'], include_path + ) for include_path in config['keymaps_includes'] + ] + + for path in paths: + path = path.replace("/", os.sep) + # the config always uses forward slashe + if os.path.exists(path): + header_data = read_header_file(path) + valid_keycodes.update( + parse_keydefs(config, header_data) + ) + return valid_keycodes + +# Keymap Parsing + +def iter_raw_codes(layer_lines, filler, separator): + filler_re = re.compile("[" + filler + " ]") + for line in layer_lines: + line, _ = filler_re.subn("", line.strip()) + if not line: + continue + codes = line.split(separator) + for code in codes[1:-1]: + yield code + + +def iter_indexed_codes(raw_codes, key_indexes): + key_rows = {} + key_indexes_flat = [] + for row_index, key_indexes in enumerate(key_indexes): + for key_index in key_indexes: + key_rows[key_index] = row_index + key_indexes_flat.extend(key_indexes) + assert len(raw_codes) == len(key_indexes_flat) + for raw_code, key_index in zip(raw_codes, key_indexes_flat): + # we keep track of the row mostly for layout purposes + yield raw_code, key_index, key_rows[key_index] + + +LAYER_CHANGE_RE = re.compile(r""" + (DF|TG|MO)\(\d+\) +""", re.VERBOSE) + + +MACRO_RE = re.compile(r""" + M\(\w+\) +""", re.VERBOSE) + + +UNICODE_RE = re.compile(r""" + U[0-9A-F]{4} +""", re.VERBOSE) + + +NON_CODE = re.compile(r""" + ^[^A-Z0-9_]$ +""", re.VERBOSE) + + +def parse_uni_code(raw_code): + macro_id = "UC_" + ( + unicodedata.name(raw_code) + .replace(" ", "_") + .replace("-", "_") + ) + code = "M({})".format(macro_id) + uc_hex = "{:04X}".format(ord(raw_code)) + return code, macro_id, uc_hex + + +def parse_key_code(raw_code, key_prefixes, valid_keycodes): + if raw_code in valid_keycodes: + return raw_code + + for prefix in key_prefixes: + code = prefix + raw_code + if code in valid_keycodes: + return code + + +def parse_code(raw_code, key_prefixes, valid_keycodes): + if not raw_code: + return 'KC_TRNS', None, None + + if LAYER_CHANGE_RE.match(raw_code): + return raw_code, None, None + + if MACRO_RE.match(raw_code): + code = macro_id = raw_code[2:-1] + return code, macro_id, None + + if UNICODE_RE.match(raw_code): + hex_code = raw_code[1:] + return parse_uni_code(chr(int(hex_code, 16))) + + if NON_CODE.match(raw_code): + return parse_uni_code(raw_code) + + code = parse_key_code(raw_code, key_prefixes, valid_keycodes) + return code, None, None + + +def parse_keymap(config, key_indexes, layer_lines, valid_keycodes): + keymap = {} + raw_codes = list(iter_raw_codes( + layer_lines, config['filler'], config['separator'] + )) + indexed_codes = iter_indexed_codes(raw_codes, key_indexes) + for raw_code, key_index, row_index in indexed_codes: + code, macro_id, uc_hex = parse_code( + raw_code, config['key_prefixes'], valid_keycodes + ) + if macro_id: + config['macro_ids'].add(macro_id) + if uc_hex: + config['unicode_macros'][macro_id] = uc_hex + keymap[key_index] = (code, row_index) + return keymap -const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) {{ - if (!record->event.pressed) {{ - return MACRO_NONE; - }} - // MACRODOWN only works in this function - switch(id) {{ - case UMS: - unicode_mode = (unicode_mode + 1) % 2; - break; - {macro_cases} - default: - break; - }} - if (unicode_mode == UC_MODE_WIN) {{ - switch(id) {{ - {win_macro_cases} - default: - break; - }} - }} else if (unicode_mode == UC_MODE_LINUX) {{ - switch(id) {{ - {linux_macro_cases} - default: - break; - }} - }} - return MACRO_NONE; -}}; -""" +def parse_keymaps(config, valid_keycodes): + keymaps = collections.OrderedDict() + key_indexes = config.get( + 'key_indexes', KEYBOARD_LAYOUTS[config['layout']] + ) + # TODO: maybe validate key_indexes -def iter_keycodes(layer_lines, config): - filler_re = re.compile("[" + - config['filler'] + " " + - "]") - - all_codes = [] - for line in layer_lines: - line, _ = filler_re.subn("", line.strip()) - if not line: - continue - codes = line.split(config['separator']) - all_codes.extend(codes[1:-1]) - - key_groups = {} - for group_index, key_indexes in enumerate(config['keymap_indexes']): - for key_index in key_indexes: - key_groups[key_index] = group_index - - keymap_indexes = sum(config['keymap_indexes'], []) - assert len(all_codes) == len(keymap_indexes) - code_index_pairs = zip(all_codes, keymap_indexes) - prev_index = None - for i, (code, key_index) in enumerate(code_index_pairs): - code = code.strip() - layer_match = LAYER_CHANGE_RE.match(code) - unicode_match = UNICODE_RE.match(code) - noncode_match = NON_CODE.match(code) - macro_match = MACRO_RE.match(code) - - ws = "\n" if key_groups[key_index] != prev_index else "" - prev_index = key_groups[key_index] - - try: - if not code: - code = 'KC_TRNS' - elif layer_match: - pass - elif macro_match: - code = MACRO(config, code) - elif unicode_match: - hex_code = code[1:] - code = UNICODE_MACRO(config, chr(int(hex_code, 16))) - elif noncode_match: - code = UNICODE_MACRO(config, code) - elif "_" in code: - assert code in valid_keycodes, "unknown code '{}'".format(code) - else: - for prefix in config['key_prefixes']: - if prefix + code in valid_keycodes: - code = prefix + code - break - assert code in valid_keycodes, "unknown code '{}'".format(code) - yield code, key_index, ws - except AssertionError: - print("Error processing code", repr(code).encode("utf-8")) - raise + for layer_name, layer_lines, in config['layer_lines'].items(): + keymaps[layer_name] = parse_keymap( + config, key_indexes, layer_lines, valid_keycodes + ) + return keymaps + +# keymap.c output USERCODE = """ // Runs just one time when the keyboard initializes. -void * matrix_init_user(void) { +void matrix_init_user(void) { }; // Runs constantly in the background, in a loop. -void * matrix_scan_user(void) { +void matrix_scan_user(void) { uint8_t layer = biton32(layer_state); ergodox_board_led_off(); @@ -348,71 +481,158 @@ void * matrix_scan_user(void) { }; """ -def parse_keymaps(config): - keymaps = {} - layer_line_items = config['layer_lines'].items() - for i, (layer_name, layer_lines) in enumerate(layer_line_items): - print("parseing layer", layer_name) - keymap = {} - for code, key_index, ws in iter_keycodes(layer_lines, config): - keymap[key_index] = (code, ws) - keymaps[layer_name] = [v for k, v in sorted(keymap.items())] - return keymaps - - -def iter_keymap_lines(config, keymaps): - for include_path in config['keymaps_includes']: - yield '#include "{}"\n'.format(include_path) - - yield "\n" - - layer_items = config['layers'].items() - for i, (layer_name, description) in enumerate(layer_items): - yield '#define L{0:<3} {0:<5} // {1}\n'.format(i, layer_name) - - for i, macro_id in enumerate(config['macro_ids']): - yield "#define {} {}\n".format(macro_id, i) - - yield "\n" - - yield "const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {\n" - - layer_line_items = config['layer_lines'].items() - last_index = config['keymap_indexes'][-1] - for i, (layer_name, layer_lines) in enumerate(layer_line_items): - keymap = keymaps[layer_name] - yield "/*\n" - for line in layer_lines: - yield " *{}".format(line) - yield "*/\n" - - yield "[L{0}] = KEYMAP(\n".format(i) - - for key_index, (code, ws) in enumerate(keymap): - yield "\t{}".format(code) - if key_index < len(keymap) - 1: - yield "," - yield ws - yield "),\n" - - yield "};\n\n" - - yield "const uint16_t PROGMEM fn_actions[] = {\n" - yield "};\n" +MACROCODE = """ +#define UC_MODE_WIN 0 +#define UC_MODE_LINUX 1 - yield MACROCODE.format( - macro_cases="", - win_macro_cases="\n".join(macro_cases(config, mode='win')), - linux_macro_cases="\n".join(macro_cases(config, mode='linux')), - ) +static uint16_t unicode_mode = UC_MODE_WIN; - yield USERCODE +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) {{ + if (!record->event.pressed) {{ + return MACRO_NONE; + }} + // MACRODOWN only works in this function + switch(id) {{ + case UM: + unicode_mode = (unicode_mode + 1) % 2; + break; + {macro_cases} + default: + break; + }} + if (unicode_mode == UC_MODE_WIN) {{ + switch(id) {{ + {win_macro_cases} + default: + break; + }} + }} else if (unicode_mode == UC_MODE_LINUX) {{ + switch(id) {{ + {linux_macro_cases} + default: + break; + }} + }} + return MACRO_NONE; +}}; +""" +WIN_UNICODE_MACRO_TEMPLATE = """ +case {0}: + return MACRODOWN( + D(LALT), T(KP_PLUS), {1}, U(LALT), END + ); +""" -with io.open("keymap.c", mode="w", encoding="utf-8") as fh: - for data in iter_keymap_lines(config, parse_keymaps(config)): - fh.write(data) +LINUX_UNICODE_MACRO_TEMPLATE = """ +case {0}: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), {1}, T(KP_ENTER), END + ); +""" + +def macro_cases(config, mode): + if mode == 'win': + template = WIN_UNICODE_MACRO_TEMPLATE + elif mode == 'linux': + template = LINUX_UNICODE_MACRO_TEMPLATE + else: + raise ValueError("Invalid mode: ", mode) + template = template.strip() + + for macro_id, uc_hex in config['unicode_macros'].items(): + unimacro_keys = ", ".join( + "T({})".format( + "KP_" + digit if digit.isdigit() else digit + ) for digit in uc_hex + ) + yield template.format(macro_id, unimacro_keys) + + +def iter_keymap_lines(keymap): + prev_row_index = None + for key_index in sorted(keymap): + code, row_index = keymap[key_index] + if row_index != prev_row_index: + yield "\n" + yield " {}".format(code) + if key_index < len(keymap) - 1: + yield "," + prev_row_index = row_index + + +def iter_keymap_parts(config, keymaps): + # includes + for include_path in config['keymaps_includes']: + yield '#include "{}"\n'.format(include_path) + + yield "\n" + + # definitions + for i, macro_id in enumerate(sorted(config['macro_ids'])): + yield "#define {} {}\n".format(macro_id, i) + + yield "\n" + + for i, layer_name in enumerate(config['layer_lines']): + yield '#define L{0:<3} {0:<5} // {1}\n'.format(i, layer_name) + + yield "\n" + + # keymaps + yield "const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {\n" + + for i, layer_name in enumerate(config['layer_lines']): + # comment + layer_lines = config['layer_lines'][layer_name] + prefixed_lines = " * " + " * ".join(layer_lines) + yield "/*\n{}*/\n".format(prefixed_lines) + + # keymap codes + keymap = keymaps[layer_name] + keymap_lines = "".join(iter_keymap_lines(keymap)) + yield "[L{0}] = KEYMAP({1}\n),\n".format(i, keymap_lines) + + yield "};\n\n" + + # no idea what this is for + yield "const uint16_t PROGMEM fn_actions[] = {};\n" + + # macros + yield MACROCODE.format( + macro_cases="", + win_macro_cases="\n".join(macro_cases(config, mode='win')), + linux_macro_cases="\n".join(macro_cases(config, mode='linux')), + ) + + # TODO: dynamically create blinking lights + yield USERCODE + + +def main(argv=sys.argv[1:]): + if not argv or '-h' in argv or '--help' in argv: + print(__doc__) + return 0 + + in_path = os.path.abspath(argv[0]) + if not os.path.exists(in_path): + print("No such file '{}'".format(in_path)) + return 1 + + if len(argv) > 1: + out_path = os.path.abspath(argv[1]) + else: + dirname = os.path.dirname(in_path) + out_path = os.path.join(dirname, "keymap.c") + + config = parse_config(in_path) + valid_keys = parse_valid_keys(config) + keymaps = parse_keymaps(config, valid_keys) + + with io.open(out_path, mode="w", encoding="utf-8") as fh: + for part in iter_keymap_parts(config, keymaps): + fh.write(part) -# print("\n".join(sorted(valid_keycodes))) -# print(json.dumps(config, indent=4)) +if __name__ == '__main__': + sys.exit(main()) diff --git a/keyboard/ergodox_ez/keymaps/german-manuneo/keymap.c b/keyboard/ergodox_ez/keymaps/german-manuneo/keymap.c index 400ad6fcf8..23611ddd89 100644 --- a/keyboard/ergodox_ez/keymaps/german-manuneo/keymap.c +++ b/keyboard/ergodox_ez/keymaps/german-manuneo/keymap.c @@ -3,449 +3,458 @@ #include "keymap_common.h" #include "keymap_extras/keymap_german.h" -#define L0 0 // Layer 0 -#define L1 1 // Layer 1 -#define L2 2 // Layer 2 -#define L3 3 // Layer 3 -#define L4 4 // Layer 4 -#define L5 5 // Layer 5 -#define L6 6 // Layer 6 -#define L7 7 // Layer 7 -#define L8 8 // Layer 8 -#define UMS 0 -#define UC_UPWARDS_ARROW 1 -#define UC_LEFTWARDS_ARROW 2 -#define UC_DOWNWARDS_ARROW 3 -#define UC_RIGHTWARDS_ARROW 4 -#define UC_SUP_ONE 5 -#define UC_SUP_TWO 6 -#define UC_SUP_THREE 7 -#define UC_SUP_FOUR 8 -#define UC_SUP_FIVE 9 -#define UC_FOR_ALL 10 -#define UC_SUP_SIX 11 -#define UC_SUP_SEVEN 12 -#define UC_SUP_EIGHT 13 -#define UC_SUP_NINE 14 -#define UC_SUP_ZERO 15 -#define UC_MULTIPLICATION_SIGN 16 -#define UC_FR_ONE_HALF 17 -#define UC_DIVISION_SIGN 18 -#define UC_FR_ONE_QUARTER 19 -#define UC_FR_ONE_FIFTH 20 -#define UC_FR_ONE_SIXTH 21 -#define UC_FR_ONE_EIGHTH 22 -#define UC_PLUS_MINUS_SIGN 23 -#define UC_EMPTY_SET 24 -#define UC_INFINITY 25 -#define UC_SUP_LATIN_SMALL_LETTER_N 26 -#define UC_THERE_EXISTS 27 -#define UC_ELEMENT_OF 28 -#define UC_FR_ONE_THIRD 29 -#define UC_NOT_EQUAL_TO 30 -#define UC_FR_TWO_THIRDS 31 -#define UC_FR_THREE_QUARTERS 32 -#define UC_ASYMPTOTICALLY_EQUAL_TO 33 -#define UC_THERE_DOES_NOT_EXIST 34 -#define UC_NOT_AN_ELEMENT_OF 35 -#define UC_SUB_ONE 36 -#define UC_SUB_TWO 37 -#define UC_SUB_THREE 38 -#define UC_SUB_FOUR 39 -#define UC_SUB_FIVE 40 -#define UC_SUB_SIX 41 -#define UC_SUB_SEVEN 42 -#define UC_SUB_EIGHT 43 -#define UC_SUB_NINE 44 -#define UC_SUB_ZERO 45 -#define UC_GR_LC_CHI 46 -#define UC_GR_LC_PI 47 -#define UC_GR_LC_PHI 48 -#define UC_GR_LC_OMEGA 49 -#define UC_GR_LC_GAMMA 50 -#define UC_GR_LC_ETA 51 -#define UC_GR_LC_XI 52 -#define UC_GR_LC_KAPPA 53 -#define UC_GR_LC_LAMDA 54 -#define UC_GR_LC_ZETA 55 -#define UC_GR_LC_UPSILON 56 -#define UC_GR_LC_IOTA 57 -#define UC_GR_LC_ALPHA 58 -#define UC_GR_LC_EPSILON 59 -#define UC_GR_LC_OMICRON 60 -#define UC_GR_LC_SIGMA 61 -#define UC_GR_LC_NU 62 -#define UC_GR_LC_RHO 63 -#define UC_GR_LC_TAU 64 -#define UC_GR_LC_DELTA 65 -#define UC_GR_LC_FINAL_SIGMA 66 -#define UC_GR_LC_THETA 67 -#define UC_GR_LC_BETA 68 -#define UC_GR_LC_MU 69 -#define UC_GR_LC_PSI 70 -#define UC_GR_UC_CHI 71 -#define UC_GR_UC_PI 72 -#define UC_GR_UC_PHI 73 -#define UC_GR_UC_OMEGA 74 -#define UC_GR_UC_GAMMA 75 -#define UC_GR_UC_ETA 76 -#define UC_GR_UC_XI 77 -#define UC_GR_UC_KAPPA 78 -#define UC_GR_UC_LAMDA 79 -#define UC_GR_UC_ZETA 80 -#define UC_GR_UC_UPSILON 81 -#define UC_GR_UC_IOTA 82 -#define UC_GR_UC_ALPHA 83 -#define UC_GR_UC_EPSILON 84 -#define UC_GR_UC_OMICRON 85 -#define UC_GR_UC_SIGMA 86 -#define UC_GR_UC_NU 87 -#define UC_GR_UC_RHO 88 -#define UC_GR_UC_TAU 89 -#define UC_GR_UC_DELTA 90 -#define UC_GR_UC_THETA 91 -#define UC_GR_UC_BETA 92 -#define UC_GR_UC_MU 93 -#define UC_GR_UC_PSI 94 +#define UC_ASYMPTOTICALLY_EQUAL_TO 0 +#define UC_DIVISION_SIGN 1 +#define UC_DOWNWARDS_ARROW 2 +#define UC_ELEMENT_OF 3 +#define UC_EMPTY_SET 4 +#define UC_FOR_ALL 5 +#define UC_GREEK_CAPITAL_LETTER_ALPHA 6 +#define UC_GREEK_CAPITAL_LETTER_BETA 7 +#define UC_GREEK_CAPITAL_LETTER_CHI 8 +#define UC_GREEK_CAPITAL_LETTER_DELTA 9 +#define UC_GREEK_CAPITAL_LETTER_EPSILON 10 +#define UC_GREEK_CAPITAL_LETTER_ETA 11 +#define UC_GREEK_CAPITAL_LETTER_GAMMA 12 +#define UC_GREEK_CAPITAL_LETTER_IOTA 13 +#define UC_GREEK_CAPITAL_LETTER_KAPPA 14 +#define UC_GREEK_CAPITAL_LETTER_LAMDA 15 +#define UC_GREEK_CAPITAL_LETTER_MU 16 +#define UC_GREEK_CAPITAL_LETTER_NU 17 +#define UC_GREEK_CAPITAL_LETTER_OMEGA 18 +#define UC_GREEK_CAPITAL_LETTER_OMICRON 19 +#define UC_GREEK_CAPITAL_LETTER_PHI 20 +#define UC_GREEK_CAPITAL_LETTER_PI 21 +#define UC_GREEK_CAPITAL_LETTER_PSI 22 +#define UC_GREEK_CAPITAL_LETTER_RHO 23 +#define UC_GREEK_CAPITAL_LETTER_SIGMA 24 +#define UC_GREEK_CAPITAL_LETTER_TAU 25 +#define UC_GREEK_CAPITAL_LETTER_THETA 26 +#define UC_GREEK_CAPITAL_LETTER_UPSILON 27 +#define UC_GREEK_CAPITAL_LETTER_XI 28 +#define UC_GREEK_CAPITAL_LETTER_ZETA 29 +#define UC_GREEK_SMALL_LETTER_ALPHA 30 +#define UC_GREEK_SMALL_LETTER_BETA 31 +#define UC_GREEK_SMALL_LETTER_CHI 32 +#define UC_GREEK_SMALL_LETTER_DELTA 33 +#define UC_GREEK_SMALL_LETTER_EPSILON 34 +#define UC_GREEK_SMALL_LETTER_ETA 35 +#define UC_GREEK_SMALL_LETTER_FINAL_SIGMA 36 +#define UC_GREEK_SMALL_LETTER_GAMMA 37 +#define UC_GREEK_SMALL_LETTER_IOTA 38 +#define UC_GREEK_SMALL_LETTER_KAPPA 39 +#define UC_GREEK_SMALL_LETTER_LAMDA 40 +#define UC_GREEK_SMALL_LETTER_MU 41 +#define UC_GREEK_SMALL_LETTER_NU 42 +#define UC_GREEK_SMALL_LETTER_OMEGA 43 +#define UC_GREEK_SMALL_LETTER_OMICRON 44 +#define UC_GREEK_SMALL_LETTER_PHI 45 +#define UC_GREEK_SMALL_LETTER_PI 46 +#define UC_GREEK_SMALL_LETTER_PSI 47 +#define UC_GREEK_SMALL_LETTER_RHO 48 +#define UC_GREEK_SMALL_LETTER_SIGMA 49 +#define UC_GREEK_SMALL_LETTER_TAU 50 +#define UC_GREEK_SMALL_LETTER_THETA 51 +#define UC_GREEK_SMALL_LETTER_UPSILON 52 +#define UC_GREEK_SMALL_LETTER_XI 53 +#define UC_GREEK_SMALL_LETTER_ZETA 54 +#define UC_INFINITY 55 +#define UC_LEFTWARDS_ARROW 56 +#define UC_MULTIPLICATION_SIGN 57 +#define UC_NOT_AN_ELEMENT_OF 58 +#define UC_NOT_EQUAL_TO 59 +#define UC_PLUS_MINUS_SIGN 60 +#define UC_RIGHTWARDS_ARROW 61 +#define UC_SUBSCRIPT_EIGHT 62 +#define UC_SUBSCRIPT_FIVE 63 +#define UC_SUBSCRIPT_FOUR 64 +#define UC_SUBSCRIPT_NINE 65 +#define UC_SUBSCRIPT_ONE 66 +#define UC_SUBSCRIPT_SEVEN 67 +#define UC_SUBSCRIPT_SIX 68 +#define UC_SUBSCRIPT_THREE 69 +#define UC_SUBSCRIPT_TWO 70 +#define UC_SUBSCRIPT_ZERO 71 +#define UC_SUPERSCRIPT_EIGHT 72 +#define UC_SUPERSCRIPT_FIVE 73 +#define UC_SUPERSCRIPT_FOUR 74 +#define UC_SUPERSCRIPT_LATIN_SMALL_LETTER_N 75 +#define UC_SUPERSCRIPT_NINE 76 +#define UC_SUPERSCRIPT_ONE 77 +#define UC_SUPERSCRIPT_SEVEN 78 +#define UC_SUPERSCRIPT_SIX 79 +#define UC_SUPERSCRIPT_THREE 80 +#define UC_SUPERSCRIPT_TWO 81 +#define UC_SUPERSCRIPT_ZERO 82 +#define UC_THERE_DOES_NOT_EXIST 83 +#define UC_THERE_EXISTS 84 +#define UC_UPWARDS_ARROW 85 +#define UC_VULGAR_FRACTION_ONE_EIGHTH 86 +#define UC_VULGAR_FRACTION_ONE_FIFTH 87 +#define UC_VULGAR_FRACTION_ONE_HALF 88 +#define UC_VULGAR_FRACTION_ONE_QUARTER 89 +#define UC_VULGAR_FRACTION_ONE_SIXTH 90 +#define UC_VULGAR_FRACTION_ONE_THIRD 91 +#define UC_VULGAR_FRACTION_THREE_QUARTERS 92 +#define UC_VULGAR_FRACTION_TWO_THIRDS 93 +#define UM 94 + +#define L0 0 // layer_0 +#define L1 1 // layer_1 +#define L2 2 // layer_2 +#define L3 3 // layer_3 +#define L4 4 // layer_4 +#define L5 5 // layer_5 +#define L6 6 // layer_6 +#define L7 7 // layer_7 +#define L8 8 // layer_8 const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* - * .-------------------------------------. .-------------------------------------. - * |MO(5)| 1 | 2 | 3 | 4 | 5 | ACUT | ! GRV | 6 | 7 | 8 | 9 | 0 |CIRC | - * !-----+----+----+----+----+-----------! !------+----+----+----+----+----+-----! - * |MO(4)| X | P | F | W | G | HOME | !TG(2) | H | J | K | L | Q | Z | - * !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! - * |MO(1)| U | I | A | E | O |------! !------! S | N | R | T | D | SS | - * !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! - * |MO(3)| UE | OE | AE | C | V | END | ! TAB | B | M |COMM| DOT| UP | Y | - * '-----+----+----+----+----+-----------' '-----------+----+----+----+----+-----' - * | | |LGUI|LALT|LCTL| !LALT| |LEFT|DOWN|RGHT| - * '------------------------'.-------------. .-------------.'------------------------' - * | INS |TG(2) | !M(UMS)| DELT | - * .------+------+------! !------+------+------. - * ! ! | APP | ! PGUP | ! ! - * ! ! !------! !------! ! ! - * | BSPC | LSFT | ESC | ! PGDN |ENTER |SPACE | - * '--------------------' '--------------------' + * .------------------------------------.------------------------------------. + * |MO(5)| 1 | 2 | 3 | 4 | 5 |ACUT | GRV | 6 | 7 | 8 | 9 | 0 |CIRC | + * !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + * |MO(4)| X | P | F | W | G |HOME |TG(2)| H | J | K | L | Q | Z | + * !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + * |MO(1)| U | I | A | E | O |-----!-----! S | N | R | T | D | SS | + * !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + * |MO(3)| UE | OE | AE | C | V |END | TAB | B | M |COMM| DOT| UP | Y | + * '-----+----+----+----+----+----------'----------+----+----+----+----+-----' + * | | |LGUI|LALT|LCTL| !LALT| |LEFT|DOWN|RGHT| + * '------------------------' '------------------------' + * .-----------. .-----------. + * |INS |TG(2)| !M(UM)|DELT | + * .-----+-----+-----! !-----+-----+-----. + * ! ! | APP | ! PGUP| ! ! + * ! ! !-----! !-----! ! ! + * |BSPC |LSFT | ESC | ! PGDN|ENTER|SPACE| + * '-----------------' '-----------------' */ [L0] = KEYMAP( - MO(5), - DE_1, DE_2, DE_3, DE_4, DE_5, DE_ACUT, MO(4), - DE_X, DE_P, DE_F, DE_W, DE_G, KC_HOME, MO(1), - DE_U, DE_I, DE_A, DE_E, DE_O, MO(3), - DE_UE, DE_OE, DE_AE, DE_C, DE_V, KC_END, KC_TRNS, - KC_TRNS, KC_LGUI, KC_LALT, KC_LCTL, KC_INS, - TG(2), KC_APP, - KC_BSPC, - KC_LSFT, KC_ESC, DE_GRV, - DE_6, DE_7, DE_8, DE_9, DE_0, DE_CIRC, TG(2), - DE_H, DE_J, DE_K, DE_L, DE_Q, DE_Z, DE_S, - DE_N, DE_R, DE_T, DE_D, DE_SS, KC_TAB, - DE_B, DE_M, DE_COMM, DE_DOT, KC_UP, DE_Y, KC_LALT, - KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, M(UMS), - KC_DELT, KC_PGUP, - KC_PGDN, - KC_ENTER, KC_SPACE), + MO(5), DE_1, DE_2, DE_3, DE_4, DE_5, DE_ACUT, + MO(4), DE_X, DE_P, DE_F, DE_W, DE_G, KC_HOME, + MO(1), DE_U, DE_I, DE_A, DE_E, DE_O, + MO(3), DE_UE, DE_OE, DE_AE, DE_C, DE_V, KC_END, + KC_TRNS, KC_TRNS, KC_LGUI, KC_LALT, KC_LCTL, + KC_INS, TG(2), + KC_APP, + KC_BSPC, KC_LSFT, KC_ESC, + DE_GRV, DE_6, DE_7, DE_8, DE_9, DE_0, DE_CIRC, + TG(2), DE_H, DE_J, DE_K, DE_L, DE_Q, DE_Z, + DE_S, DE_N, DE_R, DE_T, DE_D, DE_SS, + KC_TAB, DE_B, DE_M, DE_COMM, DE_DOT, KC_UP, DE_Y, + KC_LALT, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, + UM, KC_DELT, + KC_PGUP, + KC_PGDN, KC_ENTER, KC_SPACE +), /* - * .-------------------------------------. .-------------------------------------. - * | |EXLM|DQOT|PARA| | | | ! | | | | |RING| | - * !-----+----+----+----+----+-----------! !------+----+----+----+----+----+-----! - * | |ASTR|PIPE|SLSH|LCBR|RCBR| | ! |HASH|LESS|MORE| |DQOT| | - * !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! - * | |UNDS|MINS|AMPR|LBRC|RBRC|------! !------!DLR |LPRN|RPRN|TILD|QUOT|QST | - * !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! - * | | |PLUS| EQL| | | | ! |BSLS|PERC|SCLN|COLN| ↑ | | - * '-----+----+----+----+----+-----------' '-----------+----+----+----+----+-----' - * | | | | | | ! | | ← | ↓ | → | - * '------------------------'.-------------. .-------------.'------------------------' - * | | | ! | | - * .------+------+------! !------+------+------. - * ! ! | | ! | ! ! - * ! ! !------! !------! ! ! - * | | | | ! | | | - * '--------------------' '--------------------' + * .------------------------------------.------------------------------------. + * | |EXLM|DQOT|PARA| | | | | | | | |RING| | + * !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + * | |ASTR|PIPE|SLSH|LCBR|RCBR| | |HASH|LESS|MORE| |DQOT| | + * !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + * | |UNDS|MINS|AMPR|LBRC|RBRC|-----!-----!DLR |LPRN|RPRN|TILD|QUOT| QST | + * !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + * | | |PLUS|EQL | | | | |BSLS|PERC|SCLN|COLN| ↑ | | + * '-----+----+----+----+----+----------'----------+----+----+----+----+-----' + * | | | | | | ! | | ← | ↓ | → | + * '------------------------' '------------------------' + * .-----------. .-----------. + * | | | ! | | + * .-----+-----+-----! !-----+-----+-----. + * ! ! | | ! | ! ! + * ! ! !-----! !-----! ! ! + * | | | | ! | | | + * '-----------------' '-----------------' */ [L1] = KEYMAP( - KC_TRNS, - DE_EXLM, DE_DQOT, DE_PARA, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - DE_ASTR, DE_PIPE, DE_SLSH, DE_LCBR, DE_RCBR, KC_TRNS, KC_TRNS, - DE_UNDS, DE_MINS, DE_AMPR, DE_LBRC, DE_RBRC, KC_TRNS, - KC_TRNS, DE_PLUS, DE_EQL, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, - KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, DE_RING, KC_TRNS, KC_TRNS, - DE_HASH, DE_LESS, DE_MORE, KC_TRNS, DE_DQOT, KC_TRNS, DE_DLR, - DE_LPRN, DE_RPRN, DE_TILD, DE_QUOT, DE_QST, KC_TRNS, - DE_BSLS, DE_PERC, DE_SCLN, DE_COLN, M(UC_UPWARDS_ARROW), KC_TRNS, KC_TRNS, - KC_TRNS, M(UC_LEFTWARDS_ARROW), M(UC_DOWNWARDS_ARROW), M(UC_RIGHTWARDS_ARROW), KC_TRNS, - KC_TRNS, KC_TRNS, - KC_TRNS, - KC_TRNS, KC_TRNS), + KC_TRNS, DE_EXLM, DE_DQOT, DE_PARA, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, DE_ASTR, DE_PIPE, DE_SLSH, DE_LCBR, DE_RCBR, KC_TRNS, + KC_TRNS, DE_UNDS, DE_MINS, DE_AMPR, DE_LBRC, DE_RBRC, + KC_TRNS, KC_TRNS, DE_PLUS, DE_EQL, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, DE_RING, KC_TRNS, + KC_TRNS, DE_HASH, DE_LESS, DE_MORE, KC_TRNS, DE_DQOT, KC_TRNS, + DE_DLR, DE_LPRN, DE_RPRN, DE_TILD, DE_QUOT, DE_QST, + KC_TRNS, DE_BSLS, DE_PERC, DE_SCLN, DE_COLN, M(UC_UPWARDS_ARROW), KC_TRNS, + KC_TRNS, KC_TRNS, M(UC_LEFTWARDS_ARROW), M(UC_DOWNWARDS_ARROW), M(UC_RIGHTWARDS_ARROW), + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), /* - * .-------------------------------------. .-------------------------------------. - * | | F1 | F2 | F3 | F4 | F5 | F11 | ! F12 | F6 | F7 | F8 | F9 |F10 |PEQL | - * !-----+----+----+----+----+-----------! !------+----+----+----+----+----+-----! - * | | | | | | | | ! | | P7 | P8 | P9 |PAST|PSLS | - * !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! - * | | | | | | |------! !------! | P4 | P5 | P6 |PMNS|PMNS | - * !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! - * | | | | | | | | ! NLCK | | P1 | P2 | P3 |PPLS|PPLS | - * '-----+----+----+----+----+-----------' '-----------+----+----+----+----+-----' - * | | | | | | ! P0 |PCMM|PDOT|PENT|PENT| - * '------------------------'.-------------. .-------------.'------------------------' - * | | | ! | | - * .------+------+------! !------+------+------. - * ! ! | | ! | ! ! - * ! ! !------! !------! ! ! - * | | | | ! | | | - * '--------------------' '--------------------' + * .------------------------------------.------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | F11 | F12 | F6 | F7 | F8 | F9 |F10 |PEQL | + * !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + * | | | | | | | | | | P7 | P8 | P9 |PAST|PSLS | + * !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + * | | | | | | |-----!-----! | P4 | P5 | P6 |PMNS|PMNS | + * !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + * | | | | | | | | NLCK| | P1 | P2 | P3 |PPLS|PPLS | + * '-----+----+----+----+----+----------'----------+----+----+----+----+-----' + * | | | | | | ! P0 |PCMM|PDOT|PENT|PENT| + * '------------------------' '------------------------' + * .-----------. .-----------. + * | | | ! | | + * .-----+-----+-----! !-----+-----+-----. + * ! ! | | ! | ! ! + * ! ! !-----! !-----! ! ! + * | | | | ! | | | + * '-----------------' '-----------------' */ [L2] = KEYMAP( - KC_TRNS, - KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F11, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, - KC_TRNS, - KC_TRNS, KC_TRNS, KC_F12, - KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_PEQL, KC_TRNS, - KC_TRNS, KC_P7, KC_P8, KC_P9, KC_PAST, KC_PSLS, KC_TRNS, - KC_P4, KC_P5, KC_P6, KC_PMNS, KC_PMNS, KC_NLCK, - KC_TRNS, KC_P1, KC_P2, KC_P3, KC_PPLS, KC_PPLS, KC_P0, - KC_PCMM, KC_PDOT, KC_PENT, KC_PENT, KC_TRNS, - KC_TRNS, KC_TRNS, - KC_TRNS, - KC_TRNS, KC_TRNS), + KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F11, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + KC_F12, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_PEQL, + KC_TRNS, KC_TRNS, KC_P7, KC_P8, KC_P9, KC_PAST, KC_PSLS, + KC_TRNS, KC_P4, KC_P5, KC_P6, KC_PMNS, KC_PMNS, + KC_NLCK, KC_TRNS, KC_P1, KC_P2, KC_P3, KC_PPLS, KC_PPLS, + KC_P0, KC_PCMM, KC_PDOT, KC_PENT, KC_PENT, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), /* - * .-------------------------------------. .-------------------------------------. - * | | ¹ | ² | ³ | ⁴ | ⁵ | ∀ | ! | ⁶ | ⁷ | ⁸ | ⁹ | ⁰ | | - * !-----+----+----+----+----+-----------! !------+----+----+----+----+----+-----! - * | | × | ½ | ÷ | ¼ | ⅕ | | ! | ⅙ | | ⅛ | | | | - * !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! - * | | | ± | AT |EURO| ∅ |------! !------! ∞ | ⁿ | ∃ | ∈ | | | - * !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! - * | | ⅓ | ≠ | ⅔ | ¾ | ≃ | | ! |EXLM| | ∄ | ∉ | | | - * '-----+----+----+----+----+-----------' '-----------+----+----+----+----+-----' - * | | | | | | ! | | | | | - * '------------------------'.-------------. .-------------.'------------------------' - * | | | ! | | - * .------+------+------! !------+------+------. - * ! ! | | ! | ! ! - * ! ! !------! !------! ! ! - * | | | | ! | | | - * '--------------------' '--------------------' + * .------------------------------------.------------------------------------. + * | | ¹ | ² | ³ | ⁴ | ⁵ | ∀ | | ⁶ | ⁷ | ⁸ | ⁹ | ⁰ | | + * !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + * | | × | ½ | ÷ | ¼ | ⅕ | | | ⅙ | | ⅛ | | | | + * !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + * | | | ± | AT |EURO| ∅ |-----!-----! ∞ | ⁿ | ∃ | ∈ | | | + * !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + * | | ⅓ | ≠ | ⅔ | ¾ | ≃ | | |EXLM| | ∄ | ∉ | | | + * '-----+----+----+----+----+----------'----------+----+----+----+----+-----' + * | | | | | | ! | | | | | + * '------------------------' '------------------------' + * .-----------. .-----------. + * | | | ! | | + * .-----+-----+-----! !-----+-----+-----. + * ! ! | | ! | ! ! + * ! ! !-----! !-----! ! ! + * | | | | ! | | | + * '-----------------' '-----------------' */ [L3] = KEYMAP( - KC_TRNS, - M(UC_SUP_ONE), M(UC_SUP_TWO), M(UC_SUP_THREE), M(UC_SUP_FOUR), M(UC_SUP_FIVE), M(UC_FOR_ALL), KC_TRNS, - M(UC_MULTIPLICATION_SIGN), M(UC_FR_ONE_HALF), M(UC_DIVISION_SIGN), M(UC_FR_ONE_QUARTER), M(UC_FR_ONE_FIFTH), KC_TRNS, KC_TRNS, - KC_TRNS, M(UC_PLUS_MINUS_SIGN), DE_AT, DE_EURO, M(UC_EMPTY_SET), KC_TRNS, - M(UC_FR_ONE_THIRD), M(UC_NOT_EQUAL_TO), M(UC_FR_TWO_THIRDS), M(UC_FR_THREE_QUARTERS), M(UC_ASYMPTOTICALLY_EQUAL_TO), KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, - KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, - M(UC_SUP_SIX), M(UC_SUP_SEVEN), M(UC_SUP_EIGHT), M(UC_SUP_NINE), M(UC_SUP_ZERO), KC_TRNS, KC_TRNS, - M(UC_FR_ONE_SIXTH), KC_TRNS, M(UC_FR_ONE_EIGHTH), KC_TRNS, KC_TRNS, KC_TRNS, M(UC_INFINITY), - M(UC_SUP_LATIN_SMALL_LETTER_N), M(UC_THERE_EXISTS), M(UC_ELEMENT_OF), KC_TRNS, KC_TRNS, KC_TRNS, - DE_EXLM, KC_TRNS, M(UC_THERE_DOES_NOT_EXIST), M(UC_NOT_AN_ELEMENT_OF), KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, - KC_TRNS, - KC_TRNS, KC_TRNS), + KC_TRNS, M(UC_SUPERSCRIPT_ONE), M(UC_SUPERSCRIPT_TWO), M(UC_SUPERSCRIPT_THREE), M(UC_SUPERSCRIPT_FOUR), M(UC_SUPERSCRIPT_FIVE), M(UC_FOR_ALL), + KC_TRNS, M(UC_MULTIPLICATION_SIGN), M(UC_VULGAR_FRACTION_ONE_HALF), M(UC_DIVISION_SIGN), M(UC_VULGAR_FRACTION_ONE_QUARTER), M(UC_VULGAR_FRACTION_ONE_FIFTH), KC_TRNS, + KC_TRNS, KC_TRNS, M(UC_PLUS_MINUS_SIGN), DE_AT, DE_EURO, M(UC_EMPTY_SET), + KC_TRNS, M(UC_VULGAR_FRACTION_ONE_THIRD), M(UC_NOT_EQUAL_TO), M(UC_VULGAR_FRACTION_TWO_THIRDS), M(UC_VULGAR_FRACTION_THREE_QUARTERS), M(UC_ASYMPTOTICALLY_EQUAL_TO), KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, M(UC_SUPERSCRIPT_SIX), M(UC_SUPERSCRIPT_SEVEN), M(UC_SUPERSCRIPT_EIGHT), M(UC_SUPERSCRIPT_NINE), M(UC_SUPERSCRIPT_ZERO), KC_TRNS, + KC_TRNS, M(UC_VULGAR_FRACTION_ONE_SIXTH), KC_TRNS, M(UC_VULGAR_FRACTION_ONE_EIGHTH), KC_TRNS, KC_TRNS, KC_TRNS, + M(UC_INFINITY), M(UC_SUPERSCRIPT_LATIN_SMALL_LETTER_N), M(UC_THERE_EXISTS), M(UC_ELEMENT_OF), KC_TRNS, KC_TRNS, + KC_TRNS, DE_EXLM, KC_TRNS, M(UC_THERE_DOES_NOT_EXIST), M(UC_NOT_AN_ELEMENT_OF), KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), /* - * .-------------------------------------. .-------------------------------------. - * | | ₁ | ₂ | ₃ | ₄ | ₅ | | ! | ₆ | ₇ | ₈ | ₉ | ₀ | | - * !-----+----+----+----+----+-----------! !------+----+----+----+----+----+-----! - * | | χ | π | φ | ω | γ | | ! | η | ξ | κ | λ | | ζ | - * !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! - * | | υ | ι | α | ε | ο |------! !------! σ | ν | ρ | τ | δ | ς | - * !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! - * | | | θ | | | | | ! | β | μ | | | | ψ | - * '-----+----+----+----+----+-----------' '-----------+----+----+----+----+-----' - * | | | | | | ! | | | | | - * '------------------------'.-------------. .-------------.'------------------------' - * | | | ! | | - * .------+------+------! !------+------+------. - * ! ! | | ! | ! ! - * ! ! !------! !------! ! ! - * | | | | ! | | | - * '--------------------' '--------------------' + * .------------------------------------.------------------------------------. + * | | ₁ | ₂ | ₃ | ₄ | ₅ | | | ₆ | ₇ | ₈ | ₉ | ₀ | | + * !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + * | | χ | π | φ | ω | γ | | | η | ξ | κ | λ | | ζ | + * !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + * | | υ | ι | α | ε | ο |-----!-----! σ | ν | ρ | τ | δ | ς | + * !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + * | | | θ | | | | | | β | μ | | | | ψ | + * '-----+----+----+----+----+----------'----------+----+----+----+----+-----' + * | | | | | | ! | | | | | + * '------------------------' '------------------------' + * .-----------. .-----------. + * | | | ! | | + * .-----+-----+-----! !-----+-----+-----. + * ! ! | | ! | ! ! + * ! ! !-----! !-----! ! ! + * | | | | ! | | | + * '-----------------' '-----------------' */ [L4] = KEYMAP( - KC_TRNS, - M(UC_SUB_ONE), M(UC_SUB_TWO), M(UC_SUB_THREE), M(UC_SUB_FOUR), M(UC_SUB_FIVE), KC_TRNS, KC_TRNS, - M(UC_GR_LC_CHI), M(UC_GR_LC_PI), M(UC_GR_LC_PHI), M(UC_GR_LC_OMEGA), M(UC_GR_LC_GAMMA), KC_TRNS, KC_TRNS, - M(UC_GR_LC_UPSILON), M(UC_GR_LC_IOTA), M(UC_GR_LC_ALPHA), M(UC_GR_LC_EPSILON), M(UC_GR_LC_OMICRON), KC_TRNS, - KC_TRNS, M(UC_GR_LC_THETA), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, - KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, - M(UC_SUB_SIX), M(UC_SUB_SEVEN), M(UC_SUB_EIGHT), M(UC_SUB_NINE), M(UC_SUB_ZERO), KC_TRNS, KC_TRNS, - M(UC_GR_LC_ETA), M(UC_GR_LC_XI), M(UC_GR_LC_KAPPA), M(UC_GR_LC_LAMDA), KC_TRNS, M(UC_GR_LC_ZETA), M(UC_GR_LC_SIGMA), - M(UC_GR_LC_NU), M(UC_GR_LC_RHO), M(UC_GR_LC_TAU), M(UC_GR_LC_DELTA), M(UC_GR_LC_FINAL_SIGMA), KC_TRNS, - M(UC_GR_LC_BETA), M(UC_GR_LC_MU), KC_TRNS, KC_TRNS, KC_TRNS, M(UC_GR_LC_PSI), KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, - KC_TRNS, - KC_TRNS, KC_TRNS), + KC_TRNS, M(UC_SUBSCRIPT_ONE), M(UC_SUBSCRIPT_TWO), M(UC_SUBSCRIPT_THREE), M(UC_SUBSCRIPT_FOUR), M(UC_SUBSCRIPT_FIVE), KC_TRNS, + KC_TRNS, M(UC_GREEK_SMALL_LETTER_CHI), M(UC_GREEK_SMALL_LETTER_PI), M(UC_GREEK_SMALL_LETTER_PHI), M(UC_GREEK_SMALL_LETTER_OMEGA), M(UC_GREEK_SMALL_LETTER_GAMMA), KC_TRNS, + KC_TRNS, M(UC_GREEK_SMALL_LETTER_UPSILON), M(UC_GREEK_SMALL_LETTER_IOTA), M(UC_GREEK_SMALL_LETTER_ALPHA), M(UC_GREEK_SMALL_LETTER_EPSILON), M(UC_GREEK_SMALL_LETTER_OMICRON), + KC_TRNS, KC_TRNS, M(UC_GREEK_SMALL_LETTER_THETA), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, M(UC_SUBSCRIPT_SIX), M(UC_SUBSCRIPT_SEVEN), M(UC_SUBSCRIPT_EIGHT), M(UC_SUBSCRIPT_NINE), M(UC_SUBSCRIPT_ZERO), KC_TRNS, + KC_TRNS, M(UC_GREEK_SMALL_LETTER_ETA), M(UC_GREEK_SMALL_LETTER_XI), M(UC_GREEK_SMALL_LETTER_KAPPA), M(UC_GREEK_SMALL_LETTER_LAMDA), KC_TRNS, M(UC_GREEK_SMALL_LETTER_ZETA), + M(UC_GREEK_SMALL_LETTER_SIGMA), M(UC_GREEK_SMALL_LETTER_NU), M(UC_GREEK_SMALL_LETTER_RHO), M(UC_GREEK_SMALL_LETTER_TAU), M(UC_GREEK_SMALL_LETTER_DELTA), M(UC_GREEK_SMALL_LETTER_FINAL_SIGMA), + KC_TRNS, M(UC_GREEK_SMALL_LETTER_BETA), M(UC_GREEK_SMALL_LETTER_MU), KC_TRNS, KC_TRNS, KC_TRNS, M(UC_GREEK_SMALL_LETTER_PSI), + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), /* - * .-------------------------------------. .-------------------------------------. - * | | | | | | | | ! | | | | | | | - * !-----+----+----+----+----+-----------! !------+----+----+----+----+----+-----! - * | | Χ | Π | Φ | Ω | Γ | | ! | Η | Ξ | Κ | Λ | | Ζ | - * !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! - * | | Υ | Ι | Α | Ε | Ο |------! !------! Σ | Ν | Ρ | Τ | Δ | | - * !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! - * | | | Θ | | | | | ! | Β | Μ | | | | Ψ | - * '-----+----+----+----+----+-----------' '-----------+----+----+----+----+-----' - * | | | | | | ! | | | | | - * '------------------------'.-------------. .-------------.'------------------------' - * | | | ! | | - * .------+------+------! !------+------+------. - * ! ! | | ! | ! ! - * ! ! !------! !------! ! ! - * | | | | ! | | | - * '--------------------' '--------------------' + * .------------------------------------.------------------------------------. + * | | | | | | | | | | | | | | | + * !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + * | | Χ | Π | Φ | Ω | Γ | | | Η | Ξ | Κ | Λ | | Ζ | + * !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + * | | Υ | Ι | Α | Ε | Ο |-----!-----! Σ | Ν | Ρ | Τ | Δ | | + * !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + * | | | Θ | | | | | | Β | Μ | | | | Ψ | + * '-----+----+----+----+----+----------'----------+----+----+----+----+-----' + * | | | | | | ! | | | | | + * '------------------------' '------------------------' + * .-----------. .-----------. + * | | | ! | | + * .-----+-----+-----! !-----+-----+-----. + * ! ! | | ! | ! ! + * ! ! !-----! !-----! ! ! + * | | | | ! | | | + * '-----------------' '-----------------' */ [L5] = KEYMAP( - KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - M(UC_GR_UC_CHI), M(UC_GR_UC_PI), M(UC_GR_UC_PHI), M(UC_GR_UC_OMEGA), M(UC_GR_UC_GAMMA), KC_TRNS, KC_TRNS, - M(UC_GR_UC_UPSILON), M(UC_GR_UC_IOTA), M(UC_GR_UC_ALPHA), M(UC_GR_UC_EPSILON), M(UC_GR_UC_OMICRON), KC_TRNS, - KC_TRNS, M(UC_GR_UC_THETA), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, - KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - M(UC_GR_UC_ETA), M(UC_GR_UC_XI), M(UC_GR_UC_KAPPA), M(UC_GR_UC_LAMDA), KC_TRNS, M(UC_GR_UC_ZETA), M(UC_GR_UC_SIGMA), - M(UC_GR_UC_NU), M(UC_GR_UC_RHO), M(UC_GR_UC_TAU), M(UC_GR_UC_DELTA), KC_TRNS, KC_TRNS, - M(UC_GR_UC_BETA), M(UC_GR_UC_MU), KC_TRNS, KC_TRNS, KC_TRNS, M(UC_GR_UC_PSI), KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, - KC_TRNS, - KC_TRNS, KC_TRNS), + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, M(UC_GREEK_CAPITAL_LETTER_CHI), M(UC_GREEK_CAPITAL_LETTER_PI), M(UC_GREEK_CAPITAL_LETTER_PHI), M(UC_GREEK_CAPITAL_LETTER_OMEGA), M(UC_GREEK_CAPITAL_LETTER_GAMMA), KC_TRNS, + KC_TRNS, M(UC_GREEK_CAPITAL_LETTER_UPSILON), M(UC_GREEK_CAPITAL_LETTER_IOTA), M(UC_GREEK_CAPITAL_LETTER_ALPHA), M(UC_GREEK_CAPITAL_LETTER_EPSILON), M(UC_GREEK_CAPITAL_LETTER_OMICRON), + KC_TRNS, KC_TRNS, M(UC_GREEK_CAPITAL_LETTER_THETA), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, M(UC_GREEK_CAPITAL_LETTER_ETA), M(UC_GREEK_CAPITAL_LETTER_XI), M(UC_GREEK_CAPITAL_LETTER_KAPPA), M(UC_GREEK_CAPITAL_LETTER_LAMDA), KC_TRNS, M(UC_GREEK_CAPITAL_LETTER_ZETA), + M(UC_GREEK_CAPITAL_LETTER_SIGMA), M(UC_GREEK_CAPITAL_LETTER_NU), M(UC_GREEK_CAPITAL_LETTER_RHO), M(UC_GREEK_CAPITAL_LETTER_TAU), M(UC_GREEK_CAPITAL_LETTER_DELTA), KC_TRNS, + KC_TRNS, M(UC_GREEK_CAPITAL_LETTER_BETA), M(UC_GREEK_CAPITAL_LETTER_MU), KC_TRNS, KC_TRNS, KC_TRNS, M(UC_GREEK_CAPITAL_LETTER_PSI), + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), /* - * .-------------------------------------. .-------------------------------------. - * | | | | | | | | ! | | | | | | | - * !-----+----+----+----+----+-----------! !------+----+----+----+----+----+-----! - * | | | | | | | | ! | | | | | | | - * !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! - * | | | | | | |------! !------! | | | | | | - * !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! - * | | | | | | | | ! | | | | | | | - * '-----+----+----+----+----+-----------' '-----------+----+----+----+----+-----' - * | | | | | | ! | | | | | - * '------------------------'.-------------. .-------------.'------------------------' - * | | | ! | | - * .------+------+------! !------+------+------. - * ! ! | | ! | ! ! - * ! ! !------! !------! ! ! - * | | | | ! | | | - * '--------------------' '--------------------' + * .------------------------------------.------------------------------------. + * | | | | | | | | | | | | | | | + * !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + * | | | | | | | | | | | | | | | + * !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + * | | | | | | |-----!-----! | | | | | | + * !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + * | | | | | | | | | | | | | | | + * '-----+----+----+----+----+----------'----------+----+----+----+----+-----' + * | | | | | | ! | | | | | + * '------------------------' '------------------------' + * .-----------. .-----------. + * | | | ! | | + * .-----+-----+-----! !-----+-----+-----. + * ! ! | | ! | ! ! + * ! ! !-----! !-----! ! ! + * | | | | ! | | | + * '-----------------' '-----------------' */ [L6] = KEYMAP( - KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, - KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, - KC_TRNS, - KC_TRNS, KC_TRNS), + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), /* - * .-------------------------------------. .-------------------------------------. - * | | | | | | | | ! | | | | | | | - * !-----+----+----+----+----+-----------! !------+----+----+----+----+----+-----! - * | | | | | | | | ! | | | | | | | - * !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! - * | | | | | | |------! !------! | | | | | | - * !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! - * | | | | | | | | ! | | | | | | | - * '-----+----+----+----+----+-----------' '-----------+----+----+----+----+-----' - * | | | | | | ! | | | | | - * '------------------------'.-------------. .-------------.'------------------------' - * | | | ! | | - * .------+------+------! !------+------+------. - * ! ! | | ! | ! ! - * ! ! !------! !------! ! ! - * | | | | ! | | | - * '--------------------' '--------------------' + * .------------------------------------.------------------------------------. + * | | | | | | | | | | | | | | | + * !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + * | | | | | | | | | | | | | | | + * !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + * | | | | | | |-----!-----! | | | | | | + * !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + * | | | | | | | | | | | | | | | + * '-----+----+----+----+----+----------'----------+----+----+----+----+-----' + * | | | | | | ! | | | | | + * '------------------------' '------------------------' + * .-----------. .-----------. + * | | | ! | | + * .-----+-----+-----! !-----+-----+-----. + * ! ! | | ! | ! ! + * ! ! !-----! !-----! ! ! + * | | | | ! | | | + * '-----------------' '-----------------' */ [L7] = KEYMAP( - KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, - KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, - KC_TRNS, - KC_TRNS, KC_TRNS), + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), /* - * .-------------------------------------. .-------------------------------------. - * | | | | | | | | ! | | | | | | | - * !-----+----+----+----+----+-----------! !------+----+----+----+----+----+-----! - * | | | | | | | | ! | | | | | | | - * !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! - * | | | | | | |------! !------! | | | | | | - * !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! - * | | | | | | | | ! | | | | | | | - * '-----+----+----+----+----+-----------' '-----------+----+----+----+----+-----' - * | | | | | | ! | | | | | - * '------------------------'.-------------. .-------------.'------------------------' - * | | | ! | | - * .------+------+------! !------+------+------. - * ! ! | | ! | ! ! - * ! ! !------! !------! ! ! - * | | | | ! | | | - * '--------------------' '--------------------' + * .------------------------------------.------------------------------------. + * | | | | | | | | | | | | | | | + * !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + * | | | | | | | | | | | | | | | + * !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + * | | | | | | |-----!-----! | | | | | | + * !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + * | | | | | | | | | | | | | | | + * '-----+----+----+----+----+----------'----------+----+----+----+----+-----' + * | | | | | | ! | | | | | + * '------------------------' '------------------------' + * .-----------. .-----------. + * | | | ! | | + * .-----+-----+-----! !-----+-----+-----. + * ! ! | | ! | ! ! + * ! ! !-----! !-----! ! ! + * | | | | ! | | | + * '-----------------' '-----------------' */ [L8] = KEYMAP( - KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, - KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, - KC_TRNS, - KC_TRNS, KC_TRNS), + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), }; -const uint16_t PROGMEM fn_actions[] = { -}; +const uint16_t PROGMEM fn_actions[] = {}; #define UC_MODE_WIN 0 #define UC_MODE_LINUX 1 @@ -453,791 +462,791 @@ const uint16_t PROGMEM fn_actions[] = { static uint16_t unicode_mode = UC_MODE_WIN; const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) { - if (!record->event.pressed) { - return MACRO_NONE; - } - // MACRODOWN only works in this function + if (!record->event.pressed) { + return MACRO_NONE; + } + // MACRODOWN only works in this function switch(id) { - case UMS: - unicode_mode = (unicode_mode + 1) % 2; - break; - - default: - break; + case UM: + unicode_mode = (unicode_mode + 1) % 2; + break; + + default: + break; } - if (unicode_mode == UC_MODE_WIN) { - switch(id) { - case UC_UPWARDS_ARROW: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_2), T(KP_1), T(KP_9), T(KP_1), U(LALT), END - ); + if (unicode_mode == UC_MODE_WIN) { + switch(id) { + case UC_GREEK_SMALL_LETTER_OMICRON: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(B), T(F), U(LALT), END + ); case UC_LEFTWARDS_ARROW: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_2), T(KP_1), T(KP_9), T(KP_0), U(LALT), END - ); -case UC_DOWNWARDS_ARROW: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_2), T(KP_1), T(KP_9), T(KP_3), U(LALT), END - ); + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_1), T(KP_9), T(KP_0), U(LALT), END + ); +case UC_GREEK_CAPITAL_LETTER_RHO: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(A), T(KP_1), U(LALT), END + ); +case UC_SUBSCRIPT_THREE: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_0), T(KP_8), T(KP_3), U(LALT), END + ); +case UC_VULGAR_FRACTION_ONE_EIGHTH: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_1), T(KP_5), T(B), U(LALT), END + ); +case UC_GREEK_SMALL_LETTER_LAMDA: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(B), T(B), U(LALT), END + ); +case UC_VULGAR_FRACTION_ONE_THIRD: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_1), T(KP_5), T(KP_3), U(LALT), END + ); +case UC_GREEK_SMALL_LETTER_XI: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(B), T(E), U(LALT), END + ); +case UC_THERE_DOES_NOT_EXIST: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_2), T(KP_0), T(KP_4), U(LALT), END + ); +case UC_SUPERSCRIPT_ONE: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_0), T(B), T(KP_9), U(LALT), END + ); +case UC_GREEK_SMALL_LETTER_BETA: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(B), T(KP_2), U(LALT), END + ); +case UC_SUBSCRIPT_FIVE: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_0), T(KP_8), T(KP_5), U(LALT), END + ); +case UC_GREEK_CAPITAL_LETTER_IOTA: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(KP_9), T(KP_9), U(LALT), END + ); +case UC_VULGAR_FRACTION_ONE_FIFTH: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_1), T(KP_5), T(KP_5), U(LALT), END + ); +case UC_GREEK_SMALL_LETTER_PSI: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(C), T(KP_8), U(LALT), END + ); +case UC_SUBSCRIPT_NINE: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_0), T(KP_8), T(KP_9), U(LALT), END + ); +case UC_SUPERSCRIPT_FOUR: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_0), T(KP_7), T(KP_4), U(LALT), END + ); case UC_RIGHTWARDS_ARROW: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_2), T(KP_1), T(KP_9), T(KP_2), U(LALT), END - ); -case UC_SUP_ONE: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_0), T(KP_0), T(B), T(KP_9), U(LALT), END - ); -case UC_SUP_TWO: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_0), T(KP_0), T(B), T(KP_2), U(LALT), END - ); -case UC_SUP_THREE: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_0), T(KP_0), T(B), T(KP_3), U(LALT), END - ); -case UC_SUP_FOUR: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_2), T(KP_0), T(KP_7), T(KP_4), U(LALT), END - ); -case UC_SUP_FIVE: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_2), T(KP_0), T(KP_7), T(KP_5), U(LALT), END - ); -case UC_FOR_ALL: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_2), T(KP_2), T(KP_0), T(KP_0), U(LALT), END - ); -case UC_SUP_SIX: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_2), T(KP_0), T(KP_7), T(KP_6), U(LALT), END - ); -case UC_SUP_SEVEN: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_2), T(KP_0), T(KP_7), T(KP_7), U(LALT), END - ); -case UC_SUP_EIGHT: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_2), T(KP_0), T(KP_7), T(KP_8), U(LALT), END - ); -case UC_SUP_NINE: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_2), T(KP_0), T(KP_7), T(KP_9), U(LALT), END - ); -case UC_SUP_ZERO: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_2), T(KP_0), T(KP_7), T(KP_0), U(LALT), END - ); -case UC_MULTIPLICATION_SIGN: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_0), T(KP_0), T(D), T(KP_7), U(LALT), END - ); -case UC_FR_ONE_HALF: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_0), T(KP_0), T(B), T(D), U(LALT), END - ); + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_1), T(KP_9), T(KP_2), U(LALT), END + ); +case UC_SUPERSCRIPT_SIX: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_0), T(KP_7), T(KP_6), U(LALT), END + ); +case UC_DOWNWARDS_ARROW: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_1), T(KP_9), T(KP_3), U(LALT), END + ); +case UC_GREEK_SMALL_LETTER_PI: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(C), T(KP_0), U(LALT), END + ); +case UC_SUPERSCRIPT_TWO: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_0), T(B), T(KP_2), U(LALT), END + ); +case UC_GREEK_CAPITAL_LETTER_OMEGA: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(A), T(KP_9), U(LALT), END + ); +case UC_GREEK_CAPITAL_LETTER_PSI: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(A), T(KP_8), U(LALT), END + ); +case UC_SUBSCRIPT_FOUR: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_0), T(KP_8), T(KP_4), U(LALT), END + ); +case UC_GREEK_CAPITAL_LETTER_NU: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(KP_9), T(D), U(LALT), END + ); case UC_DIVISION_SIGN: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_0), T(KP_0), T(F), T(KP_7), U(LALT), END - ); -case UC_FR_ONE_QUARTER: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_0), T(KP_0), T(B), T(C), U(LALT), END - ); -case UC_FR_ONE_FIFTH: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_2), T(KP_1), T(KP_5), T(KP_5), U(LALT), END - ); -case UC_FR_ONE_SIXTH: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_2), T(KP_1), T(KP_5), T(KP_9), U(LALT), END - ); -case UC_FR_ONE_EIGHTH: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_2), T(KP_1), T(KP_5), T(B), U(LALT), END - ); -case UC_PLUS_MINUS_SIGN: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_0), T(KP_0), T(B), T(KP_1), U(LALT), END - ); -case UC_EMPTY_SET: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_2), T(KP_2), T(KP_0), T(KP_5), U(LALT), END - ); + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_0), T(F), T(KP_7), U(LALT), END + ); +case UC_GREEK_SMALL_LETTER_SIGMA: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(C), T(KP_3), U(LALT), END + ); +case UC_GREEK_SMALL_LETTER_RHO: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(C), T(KP_1), U(LALT), END + ); +case UC_VULGAR_FRACTION_ONE_SIXTH: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_1), T(KP_5), T(KP_9), U(LALT), END + ); +case UC_GREEK_SMALL_LETTER_GAMMA: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(B), T(KP_3), U(LALT), END + ); +case UC_VULGAR_FRACTION_TWO_THIRDS: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_1), T(KP_5), T(KP_4), U(LALT), END + ); +case UC_GREEK_SMALL_LETTER_NU: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(B), T(D), U(LALT), END + ); +case UC_GREEK_SMALL_LETTER_ZETA: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(B), T(KP_6), U(LALT), END + ); +case UC_GREEK_SMALL_LETTER_EPSILON: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(B), T(KP_5), U(LALT), END + ); +case UC_GREEK_SMALL_LETTER_KAPPA: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(B), T(A), U(LALT), END + ); +case UC_SUPERSCRIPT_SEVEN: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_0), T(KP_7), T(KP_7), U(LALT), END + ); +case UC_GREEK_CAPITAL_LETTER_PI: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(A), T(KP_0), U(LALT), END + ); +case UC_GREEK_SMALL_LETTER_FINAL_SIGMA: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(C), T(KP_2), U(LALT), END + ); +case UC_GREEK_CAPITAL_LETTER_XI: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(KP_9), T(E), U(LALT), END + ); +case UC_GREEK_SMALL_LETTER_THETA: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(B), T(KP_8), U(LALT), END + ); +case UC_GREEK_SMALL_LETTER_ETA: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(B), T(KP_7), U(LALT), END + ); +case UC_SUBSCRIPT_TWO: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_0), T(KP_8), T(KP_2), U(LALT), END + ); +case UC_ASYMPTOTICALLY_EQUAL_TO: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_2), T(KP_4), T(KP_3), U(LALT), END + ); +case UC_GREEK_SMALL_LETTER_ALPHA: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(B), T(KP_1), U(LALT), END + ); +case UC_GREEK_CAPITAL_LETTER_PHI: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(A), T(KP_6), U(LALT), END + ); +case UC_GREEK_SMALL_LETTER_PHI: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(C), T(KP_6), U(LALT), END + ); case UC_INFINITY: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_2), T(KP_2), T(KP_1), T(E), U(LALT), END - ); -case UC_SUP_LATIN_SMALL_LETTER_N: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_2), T(KP_0), T(KP_7), T(F), U(LALT), END - ); -case UC_THERE_EXISTS: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_2), T(KP_2), T(KP_0), T(KP_3), U(LALT), END - ); + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_2), T(KP_1), T(E), U(LALT), END + ); +case UC_GREEK_CAPITAL_LETTER_OMICRON: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(KP_9), T(F), U(LALT), END + ); case UC_ELEMENT_OF: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_2), T(KP_2), T(KP_0), T(KP_8), U(LALT), END - ); -case UC_FR_ONE_THIRD: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_2), T(KP_1), T(KP_5), T(KP_3), U(LALT), END - ); -case UC_NOT_EQUAL_TO: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_2), T(KP_2), T(KP_6), T(KP_0), U(LALT), END - ); -case UC_FR_TWO_THIRDS: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_2), T(KP_1), T(KP_5), T(KP_4), U(LALT), END - ); -case UC_FR_THREE_QUARTERS: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_0), T(KP_0), T(B), T(E), U(LALT), END - ); -case UC_ASYMPTOTICALLY_EQUAL_TO: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_2), T(KP_2), T(KP_4), T(KP_3), U(LALT), END - ); -case UC_THERE_DOES_NOT_EXIST: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_2), T(KP_2), T(KP_0), T(KP_4), U(LALT), END - ); + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_2), T(KP_0), T(KP_8), U(LALT), END + ); +case UC_MULTIPLICATION_SIGN: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_0), T(D), T(KP_7), U(LALT), END + ); +case UC_SUBSCRIPT_ZERO: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_0), T(KP_8), T(KP_0), U(LALT), END + ); +case UC_GREEK_CAPITAL_LETTER_SIGMA: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(A), T(KP_3), U(LALT), END + ); +case UC_GREEK_SMALL_LETTER_OMEGA: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(C), T(KP_9), U(LALT), END + ); +case UC_SUBSCRIPT_ONE: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_0), T(KP_8), T(KP_1), U(LALT), END + ); +case UC_GREEK_CAPITAL_LETTER_ZETA: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(KP_9), T(KP_6), U(LALT), END + ); +case UC_GREEK_SMALL_LETTER_TAU: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(C), T(KP_4), U(LALT), END + ); +case UC_SUPERSCRIPT_FIVE: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_0), T(KP_7), T(KP_5), U(LALT), END + ); +case UC_THERE_EXISTS: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_2), T(KP_0), T(KP_3), U(LALT), END + ); +case UC_PLUS_MINUS_SIGN: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_0), T(B), T(KP_1), U(LALT), END + ); +case UC_VULGAR_FRACTION_THREE_QUARTERS: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_0), T(B), T(E), U(LALT), END + ); +case UC_SUPERSCRIPT_THREE: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_0), T(B), T(KP_3), U(LALT), END + ); +case UC_EMPTY_SET: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_2), T(KP_0), T(KP_5), U(LALT), END + ); +case UC_UPWARDS_ARROW: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_1), T(KP_9), T(KP_1), U(LALT), END + ); +case UC_SUPERSCRIPT_NINE: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_0), T(KP_7), T(KP_9), U(LALT), END + ); +case UC_GREEK_SMALL_LETTER_DELTA: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(B), T(KP_4), U(LALT), END + ); +case UC_GREEK_SMALL_LETTER_MU: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(B), T(C), U(LALT), END + ); +case UC_GREEK_CAPITAL_LETTER_KAPPA: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(KP_9), T(A), U(LALT), END + ); +case UC_SUBSCRIPT_EIGHT: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_0), T(KP_8), T(KP_8), U(LALT), END + ); +case UC_GREEK_CAPITAL_LETTER_ALPHA: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(KP_9), T(KP_1), U(LALT), END + ); +case UC_SUBSCRIPT_SEVEN: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_0), T(KP_8), T(KP_7), U(LALT), END + ); +case UC_GREEK_CAPITAL_LETTER_BETA: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(KP_9), T(KP_2), U(LALT), END + ); +case UC_GREEK_CAPITAL_LETTER_ETA: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(KP_9), T(KP_7), U(LALT), END + ); +case UC_SUPERSCRIPT_EIGHT: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_0), T(KP_7), T(KP_8), U(LALT), END + ); +case UC_SUPERSCRIPT_ZERO: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_0), T(KP_7), T(KP_0), U(LALT), END + ); case UC_NOT_AN_ELEMENT_OF: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_2), T(KP_2), T(KP_0), T(KP_9), U(LALT), END - ); -case UC_SUB_ONE: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_2), T(KP_0), T(KP_8), T(KP_1), U(LALT), END - ); -case UC_SUB_TWO: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_2), T(KP_0), T(KP_8), T(KP_2), U(LALT), END - ); -case UC_SUB_THREE: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_2), T(KP_0), T(KP_8), T(KP_3), U(LALT), END - ); -case UC_SUB_FOUR: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_2), T(KP_0), T(KP_8), T(KP_4), U(LALT), END - ); -case UC_SUB_FIVE: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_2), T(KP_0), T(KP_8), T(KP_5), U(LALT), END - ); -case UC_SUB_SIX: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_2), T(KP_0), T(KP_8), T(KP_6), U(LALT), END - ); -case UC_SUB_SEVEN: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_2), T(KP_0), T(KP_8), T(KP_7), U(LALT), END - ); -case UC_SUB_EIGHT: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_2), T(KP_0), T(KP_8), T(KP_8), U(LALT), END - ); -case UC_SUB_NINE: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_2), T(KP_0), T(KP_8), T(KP_9), U(LALT), END - ); -case UC_SUB_ZERO: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_2), T(KP_0), T(KP_8), T(KP_0), U(LALT), END - ); -case UC_GR_LC_CHI: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(C), T(KP_7), U(LALT), END - ); -case UC_GR_LC_PI: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(C), T(KP_0), U(LALT), END - ); -case UC_GR_LC_PHI: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(C), T(KP_6), U(LALT), END - ); -case UC_GR_LC_OMEGA: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(C), T(KP_9), U(LALT), END - ); -case UC_GR_LC_GAMMA: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(B), T(KP_3), U(LALT), END - ); -case UC_GR_LC_ETA: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(B), T(KP_7), U(LALT), END - ); -case UC_GR_LC_XI: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(B), T(E), U(LALT), END - ); -case UC_GR_LC_KAPPA: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(B), T(A), U(LALT), END - ); -case UC_GR_LC_LAMDA: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(B), T(B), U(LALT), END - ); -case UC_GR_LC_ZETA: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(B), T(KP_6), U(LALT), END - ); -case UC_GR_LC_UPSILON: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(C), T(KP_5), U(LALT), END - ); -case UC_GR_LC_IOTA: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(B), T(KP_9), U(LALT), END - ); -case UC_GR_LC_ALPHA: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(B), T(KP_1), U(LALT), END - ); -case UC_GR_LC_EPSILON: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(B), T(KP_5), U(LALT), END - ); -case UC_GR_LC_OMICRON: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(B), T(F), U(LALT), END - ); -case UC_GR_LC_SIGMA: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(C), T(KP_3), U(LALT), END - ); -case UC_GR_LC_NU: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(B), T(D), U(LALT), END - ); -case UC_GR_LC_RHO: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(C), T(KP_1), U(LALT), END - ); -case UC_GR_LC_TAU: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(C), T(KP_4), U(LALT), END - ); -case UC_GR_LC_DELTA: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(B), T(KP_4), U(LALT), END - ); -case UC_GR_LC_FINAL_SIGMA: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(C), T(KP_2), U(LALT), END - ); -case UC_GR_LC_THETA: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(B), T(KP_8), U(LALT), END - ); -case UC_GR_LC_BETA: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(B), T(KP_2), U(LALT), END - ); -case UC_GR_LC_MU: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(B), T(C), U(LALT), END - ); -case UC_GR_LC_PSI: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(C), T(KP_8), U(LALT), END - ); -case UC_GR_UC_CHI: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(A), T(KP_7), U(LALT), END - ); -case UC_GR_UC_PI: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(A), T(KP_0), U(LALT), END - ); -case UC_GR_UC_PHI: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(A), T(KP_6), U(LALT), END - ); -case UC_GR_UC_OMEGA: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(A), T(KP_9), U(LALT), END - ); -case UC_GR_UC_GAMMA: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(KP_9), T(KP_3), U(LALT), END - ); -case UC_GR_UC_ETA: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(KP_9), T(KP_7), U(LALT), END - ); -case UC_GR_UC_XI: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(KP_9), T(E), U(LALT), END - ); -case UC_GR_UC_KAPPA: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(KP_9), T(A), U(LALT), END - ); -case UC_GR_UC_LAMDA: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(KP_9), T(B), U(LALT), END - ); -case UC_GR_UC_ZETA: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(KP_9), T(KP_6), U(LALT), END - ); -case UC_GR_UC_UPSILON: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(A), T(KP_5), U(LALT), END - ); -case UC_GR_UC_IOTA: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(KP_9), T(KP_9), U(LALT), END - ); -case UC_GR_UC_ALPHA: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(KP_9), T(KP_1), U(LALT), END - ); -case UC_GR_UC_EPSILON: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(KP_9), T(KP_5), U(LALT), END - ); -case UC_GR_UC_OMICRON: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(KP_9), T(F), U(LALT), END - ); -case UC_GR_UC_SIGMA: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(A), T(KP_3), U(LALT), END - ); -case UC_GR_UC_NU: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(KP_9), T(D), U(LALT), END - ); -case UC_GR_UC_RHO: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(A), T(KP_1), U(LALT), END - ); -case UC_GR_UC_TAU: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(A), T(KP_4), U(LALT), END - ); -case UC_GR_UC_DELTA: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(KP_9), T(KP_4), U(LALT), END - ); -case UC_GR_UC_THETA: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(KP_9), T(KP_8), U(LALT), END - ); -case UC_GR_UC_BETA: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(KP_9), T(KP_2), U(LALT), END - ); -case UC_GR_UC_MU: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(KP_9), T(C), U(LALT), END - ); -case UC_GR_UC_PSI: - return MACRODOWN( - D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(A), T(KP_8), U(LALT), END - ); - default: - break; - } - } else if (unicode_mode == UC_MODE_LINUX) { - switch(id) { - case UC_UPWARDS_ARROW: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_1), T(KP_9), T(KP_1), T(KP_ENTER), END - ); + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_2), T(KP_0), T(KP_9), U(LALT), END + ); +case UC_GREEK_SMALL_LETTER_UPSILON: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(C), T(KP_5), U(LALT), END + ); +case UC_NOT_EQUAL_TO: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_2), T(KP_6), T(KP_0), U(LALT), END + ); +case UC_GREEK_CAPITAL_LETTER_CHI: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(A), T(KP_7), U(LALT), END + ); +case UC_FOR_ALL: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_2), T(KP_0), T(KP_0), U(LALT), END + ); +case UC_GREEK_CAPITAL_LETTER_TAU: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(A), T(KP_4), U(LALT), END + ); +case UC_VULGAR_FRACTION_ONE_QUARTER: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_0), T(B), T(C), U(LALT), END + ); +case UC_GREEK_SMALL_LETTER_CHI: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(C), T(KP_7), U(LALT), END + ); +case UC_GREEK_CAPITAL_LETTER_THETA: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(KP_9), T(KP_8), U(LALT), END + ); +case UC_GREEK_SMALL_LETTER_IOTA: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(B), T(KP_9), U(LALT), END + ); +case UC_GREEK_CAPITAL_LETTER_LAMDA: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(KP_9), T(B), U(LALT), END + ); +case UC_SUPERSCRIPT_LATIN_SMALL_LETTER_N: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_0), T(KP_7), T(F), U(LALT), END + ); +case UC_GREEK_CAPITAL_LETTER_UPSILON: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(A), T(KP_5), U(LALT), END + ); +case UC_GREEK_CAPITAL_LETTER_MU: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(KP_9), T(C), U(LALT), END + ); +case UC_GREEK_CAPITAL_LETTER_EPSILON: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(KP_9), T(KP_5), U(LALT), END + ); +case UC_GREEK_CAPITAL_LETTER_GAMMA: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(KP_9), T(KP_3), U(LALT), END + ); +case UC_SUBSCRIPT_SIX: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_2), T(KP_0), T(KP_8), T(KP_6), U(LALT), END + ); +case UC_GREEK_CAPITAL_LETTER_DELTA: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_3), T(KP_9), T(KP_4), U(LALT), END + ); +case UC_VULGAR_FRACTION_ONE_HALF: + return MACRODOWN( + D(LALT), T(KP_PLUS), T(KP_0), T(KP_0), T(B), T(D), U(LALT), END + ); + default: + break; + } + } else if (unicode_mode == UC_MODE_LINUX) { + switch(id) { + case UC_GREEK_SMALL_LETTER_OMICRON: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(B), T(F), T(KP_ENTER), END + ); case UC_LEFTWARDS_ARROW: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_1), T(KP_9), T(KP_0), T(KP_ENTER), END - ); -case UC_DOWNWARDS_ARROW: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_1), T(KP_9), T(KP_3), T(KP_ENTER), END - ); + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_1), T(KP_9), T(KP_0), T(KP_ENTER), END + ); +case UC_GREEK_CAPITAL_LETTER_RHO: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(A), T(KP_1), T(KP_ENTER), END + ); +case UC_SUBSCRIPT_THREE: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_0), T(KP_8), T(KP_3), T(KP_ENTER), END + ); +case UC_VULGAR_FRACTION_ONE_EIGHTH: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_1), T(KP_5), T(B), T(KP_ENTER), END + ); +case UC_GREEK_SMALL_LETTER_LAMDA: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(B), T(B), T(KP_ENTER), END + ); +case UC_VULGAR_FRACTION_ONE_THIRD: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_1), T(KP_5), T(KP_3), T(KP_ENTER), END + ); +case UC_GREEK_SMALL_LETTER_XI: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(B), T(E), T(KP_ENTER), END + ); +case UC_THERE_DOES_NOT_EXIST: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_2), T(KP_0), T(KP_4), T(KP_ENTER), END + ); +case UC_SUPERSCRIPT_ONE: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_0), T(B), T(KP_9), T(KP_ENTER), END + ); +case UC_GREEK_SMALL_LETTER_BETA: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(B), T(KP_2), T(KP_ENTER), END + ); +case UC_SUBSCRIPT_FIVE: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_0), T(KP_8), T(KP_5), T(KP_ENTER), END + ); +case UC_GREEK_CAPITAL_LETTER_IOTA: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(KP_9), T(KP_9), T(KP_ENTER), END + ); +case UC_VULGAR_FRACTION_ONE_FIFTH: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_1), T(KP_5), T(KP_5), T(KP_ENTER), END + ); +case UC_GREEK_SMALL_LETTER_PSI: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(C), T(KP_8), T(KP_ENTER), END + ); +case UC_SUBSCRIPT_NINE: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_0), T(KP_8), T(KP_9), T(KP_ENTER), END + ); +case UC_SUPERSCRIPT_FOUR: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_0), T(KP_7), T(KP_4), T(KP_ENTER), END + ); case UC_RIGHTWARDS_ARROW: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_1), T(KP_9), T(KP_2), T(KP_ENTER), END - ); -case UC_SUP_ONE: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_0), T(B), T(KP_9), T(KP_ENTER), END - ); -case UC_SUP_TWO: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_0), T(B), T(KP_2), T(KP_ENTER), END - ); -case UC_SUP_THREE: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_0), T(B), T(KP_3), T(KP_ENTER), END - ); -case UC_SUP_FOUR: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_0), T(KP_7), T(KP_4), T(KP_ENTER), END - ); -case UC_SUP_FIVE: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_0), T(KP_7), T(KP_5), T(KP_ENTER), END - ); -case UC_FOR_ALL: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_2), T(KP_0), T(KP_0), T(KP_ENTER), END - ); -case UC_SUP_SIX: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_0), T(KP_7), T(KP_6), T(KP_ENTER), END - ); -case UC_SUP_SEVEN: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_0), T(KP_7), T(KP_7), T(KP_ENTER), END - ); -case UC_SUP_EIGHT: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_0), T(KP_7), T(KP_8), T(KP_ENTER), END - ); -case UC_SUP_NINE: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_0), T(KP_7), T(KP_9), T(KP_ENTER), END - ); -case UC_SUP_ZERO: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_0), T(KP_7), T(KP_0), T(KP_ENTER), END - ); -case UC_MULTIPLICATION_SIGN: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_0), T(D), T(KP_7), T(KP_ENTER), END - ); -case UC_FR_ONE_HALF: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_0), T(B), T(D), T(KP_ENTER), END - ); + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_1), T(KP_9), T(KP_2), T(KP_ENTER), END + ); +case UC_SUPERSCRIPT_SIX: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_0), T(KP_7), T(KP_6), T(KP_ENTER), END + ); +case UC_DOWNWARDS_ARROW: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_1), T(KP_9), T(KP_3), T(KP_ENTER), END + ); +case UC_GREEK_SMALL_LETTER_PI: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(C), T(KP_0), T(KP_ENTER), END + ); +case UC_SUPERSCRIPT_TWO: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_0), T(B), T(KP_2), T(KP_ENTER), END + ); +case UC_GREEK_CAPITAL_LETTER_OMEGA: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(A), T(KP_9), T(KP_ENTER), END + ); +case UC_GREEK_CAPITAL_LETTER_PSI: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(A), T(KP_8), T(KP_ENTER), END + ); +case UC_SUBSCRIPT_FOUR: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_0), T(KP_8), T(KP_4), T(KP_ENTER), END + ); +case UC_GREEK_CAPITAL_LETTER_NU: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(KP_9), T(D), T(KP_ENTER), END + ); case UC_DIVISION_SIGN: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_0), T(F), T(KP_7), T(KP_ENTER), END - ); -case UC_FR_ONE_QUARTER: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_0), T(B), T(C), T(KP_ENTER), END - ); -case UC_FR_ONE_FIFTH: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_1), T(KP_5), T(KP_5), T(KP_ENTER), END - ); -case UC_FR_ONE_SIXTH: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_1), T(KP_5), T(KP_9), T(KP_ENTER), END - ); -case UC_FR_ONE_EIGHTH: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_1), T(KP_5), T(B), T(KP_ENTER), END - ); -case UC_PLUS_MINUS_SIGN: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_0), T(B), T(KP_1), T(KP_ENTER), END - ); -case UC_EMPTY_SET: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_2), T(KP_0), T(KP_5), T(KP_ENTER), END - ); + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_0), T(F), T(KP_7), T(KP_ENTER), END + ); +case UC_GREEK_SMALL_LETTER_SIGMA: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(C), T(KP_3), T(KP_ENTER), END + ); +case UC_GREEK_SMALL_LETTER_RHO: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(C), T(KP_1), T(KP_ENTER), END + ); +case UC_VULGAR_FRACTION_ONE_SIXTH: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_1), T(KP_5), T(KP_9), T(KP_ENTER), END + ); +case UC_GREEK_SMALL_LETTER_GAMMA: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(B), T(KP_3), T(KP_ENTER), END + ); +case UC_VULGAR_FRACTION_TWO_THIRDS: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_1), T(KP_5), T(KP_4), T(KP_ENTER), END + ); +case UC_GREEK_SMALL_LETTER_NU: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(B), T(D), T(KP_ENTER), END + ); +case UC_GREEK_SMALL_LETTER_ZETA: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(B), T(KP_6), T(KP_ENTER), END + ); +case UC_GREEK_SMALL_LETTER_EPSILON: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(B), T(KP_5), T(KP_ENTER), END + ); +case UC_GREEK_SMALL_LETTER_KAPPA: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(B), T(A), T(KP_ENTER), END + ); +case UC_SUPERSCRIPT_SEVEN: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_0), T(KP_7), T(KP_7), T(KP_ENTER), END + ); +case UC_GREEK_CAPITAL_LETTER_PI: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(A), T(KP_0), T(KP_ENTER), END + ); +case UC_GREEK_SMALL_LETTER_FINAL_SIGMA: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(C), T(KP_2), T(KP_ENTER), END + ); +case UC_GREEK_CAPITAL_LETTER_XI: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(KP_9), T(E), T(KP_ENTER), END + ); +case UC_GREEK_SMALL_LETTER_THETA: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(B), T(KP_8), T(KP_ENTER), END + ); +case UC_GREEK_SMALL_LETTER_ETA: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(B), T(KP_7), T(KP_ENTER), END + ); +case UC_SUBSCRIPT_TWO: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_0), T(KP_8), T(KP_2), T(KP_ENTER), END + ); +case UC_ASYMPTOTICALLY_EQUAL_TO: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_2), T(KP_4), T(KP_3), T(KP_ENTER), END + ); +case UC_GREEK_SMALL_LETTER_ALPHA: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(B), T(KP_1), T(KP_ENTER), END + ); +case UC_GREEK_CAPITAL_LETTER_PHI: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(A), T(KP_6), T(KP_ENTER), END + ); +case UC_GREEK_SMALL_LETTER_PHI: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(C), T(KP_6), T(KP_ENTER), END + ); case UC_INFINITY: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_2), T(KP_1), T(E), T(KP_ENTER), END - ); -case UC_SUP_LATIN_SMALL_LETTER_N: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_0), T(KP_7), T(F), T(KP_ENTER), END - ); -case UC_THERE_EXISTS: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_2), T(KP_0), T(KP_3), T(KP_ENTER), END - ); + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_2), T(KP_1), T(E), T(KP_ENTER), END + ); +case UC_GREEK_CAPITAL_LETTER_OMICRON: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(KP_9), T(F), T(KP_ENTER), END + ); case UC_ELEMENT_OF: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_2), T(KP_0), T(KP_8), T(KP_ENTER), END - ); -case UC_FR_ONE_THIRD: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_1), T(KP_5), T(KP_3), T(KP_ENTER), END - ); -case UC_NOT_EQUAL_TO: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_2), T(KP_6), T(KP_0), T(KP_ENTER), END - ); -case UC_FR_TWO_THIRDS: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_1), T(KP_5), T(KP_4), T(KP_ENTER), END - ); -case UC_FR_THREE_QUARTERS: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_0), T(B), T(E), T(KP_ENTER), END - ); -case UC_ASYMPTOTICALLY_EQUAL_TO: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_2), T(KP_4), T(KP_3), T(KP_ENTER), END - ); -case UC_THERE_DOES_NOT_EXIST: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_2), T(KP_0), T(KP_4), T(KP_ENTER), END - ); + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_2), T(KP_0), T(KP_8), T(KP_ENTER), END + ); +case UC_MULTIPLICATION_SIGN: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_0), T(D), T(KP_7), T(KP_ENTER), END + ); +case UC_SUBSCRIPT_ZERO: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_0), T(KP_8), T(KP_0), T(KP_ENTER), END + ); +case UC_GREEK_CAPITAL_LETTER_SIGMA: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(A), T(KP_3), T(KP_ENTER), END + ); +case UC_GREEK_SMALL_LETTER_OMEGA: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(C), T(KP_9), T(KP_ENTER), END + ); +case UC_SUBSCRIPT_ONE: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_0), T(KP_8), T(KP_1), T(KP_ENTER), END + ); +case UC_GREEK_CAPITAL_LETTER_ZETA: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(KP_9), T(KP_6), T(KP_ENTER), END + ); +case UC_GREEK_SMALL_LETTER_TAU: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(C), T(KP_4), T(KP_ENTER), END + ); +case UC_SUPERSCRIPT_FIVE: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_0), T(KP_7), T(KP_5), T(KP_ENTER), END + ); +case UC_THERE_EXISTS: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_2), T(KP_0), T(KP_3), T(KP_ENTER), END + ); +case UC_PLUS_MINUS_SIGN: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_0), T(B), T(KP_1), T(KP_ENTER), END + ); +case UC_VULGAR_FRACTION_THREE_QUARTERS: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_0), T(B), T(E), T(KP_ENTER), END + ); +case UC_SUPERSCRIPT_THREE: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_0), T(B), T(KP_3), T(KP_ENTER), END + ); +case UC_EMPTY_SET: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_2), T(KP_0), T(KP_5), T(KP_ENTER), END + ); +case UC_UPWARDS_ARROW: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_1), T(KP_9), T(KP_1), T(KP_ENTER), END + ); +case UC_SUPERSCRIPT_NINE: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_0), T(KP_7), T(KP_9), T(KP_ENTER), END + ); +case UC_GREEK_SMALL_LETTER_DELTA: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(B), T(KP_4), T(KP_ENTER), END + ); +case UC_GREEK_SMALL_LETTER_MU: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(B), T(C), T(KP_ENTER), END + ); +case UC_GREEK_CAPITAL_LETTER_KAPPA: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(KP_9), T(A), T(KP_ENTER), END + ); +case UC_SUBSCRIPT_EIGHT: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_0), T(KP_8), T(KP_8), T(KP_ENTER), END + ); +case UC_GREEK_CAPITAL_LETTER_ALPHA: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(KP_9), T(KP_1), T(KP_ENTER), END + ); +case UC_SUBSCRIPT_SEVEN: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_0), T(KP_8), T(KP_7), T(KP_ENTER), END + ); +case UC_GREEK_CAPITAL_LETTER_BETA: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(KP_9), T(KP_2), T(KP_ENTER), END + ); +case UC_GREEK_CAPITAL_LETTER_ETA: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(KP_9), T(KP_7), T(KP_ENTER), END + ); +case UC_SUPERSCRIPT_EIGHT: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_0), T(KP_7), T(KP_8), T(KP_ENTER), END + ); +case UC_SUPERSCRIPT_ZERO: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_0), T(KP_7), T(KP_0), T(KP_ENTER), END + ); case UC_NOT_AN_ELEMENT_OF: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_2), T(KP_0), T(KP_9), T(KP_ENTER), END - ); -case UC_SUB_ONE: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_0), T(KP_8), T(KP_1), T(KP_ENTER), END - ); -case UC_SUB_TWO: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_0), T(KP_8), T(KP_2), T(KP_ENTER), END - ); -case UC_SUB_THREE: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_0), T(KP_8), T(KP_3), T(KP_ENTER), END - ); -case UC_SUB_FOUR: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_0), T(KP_8), T(KP_4), T(KP_ENTER), END - ); -case UC_SUB_FIVE: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_0), T(KP_8), T(KP_5), T(KP_ENTER), END - ); -case UC_SUB_SIX: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_0), T(KP_8), T(KP_6), T(KP_ENTER), END - ); -case UC_SUB_SEVEN: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_0), T(KP_8), T(KP_7), T(KP_ENTER), END - ); -case UC_SUB_EIGHT: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_0), T(KP_8), T(KP_8), T(KP_ENTER), END - ); -case UC_SUB_NINE: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_0), T(KP_8), T(KP_9), T(KP_ENTER), END - ); -case UC_SUB_ZERO: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_0), T(KP_8), T(KP_0), T(KP_ENTER), END - ); -case UC_GR_LC_CHI: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(C), T(KP_7), T(KP_ENTER), END - ); -case UC_GR_LC_PI: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(C), T(KP_0), T(KP_ENTER), END - ); -case UC_GR_LC_PHI: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(C), T(KP_6), T(KP_ENTER), END - ); -case UC_GR_LC_OMEGA: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(C), T(KP_9), T(KP_ENTER), END - ); -case UC_GR_LC_GAMMA: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(B), T(KP_3), T(KP_ENTER), END - ); -case UC_GR_LC_ETA: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(B), T(KP_7), T(KP_ENTER), END - ); -case UC_GR_LC_XI: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(B), T(E), T(KP_ENTER), END - ); -case UC_GR_LC_KAPPA: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(B), T(A), T(KP_ENTER), END - ); -case UC_GR_LC_LAMDA: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(B), T(B), T(KP_ENTER), END - ); -case UC_GR_LC_ZETA: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(B), T(KP_6), T(KP_ENTER), END - ); -case UC_GR_LC_UPSILON: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(C), T(KP_5), T(KP_ENTER), END - ); -case UC_GR_LC_IOTA: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(B), T(KP_9), T(KP_ENTER), END - ); -case UC_GR_LC_ALPHA: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(B), T(KP_1), T(KP_ENTER), END - ); -case UC_GR_LC_EPSILON: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(B), T(KP_5), T(KP_ENTER), END - ); -case UC_GR_LC_OMICRON: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(B), T(F), T(KP_ENTER), END - ); -case UC_GR_LC_SIGMA: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(C), T(KP_3), T(KP_ENTER), END - ); -case UC_GR_LC_NU: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(B), T(D), T(KP_ENTER), END - ); -case UC_GR_LC_RHO: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(C), T(KP_1), T(KP_ENTER), END - ); -case UC_GR_LC_TAU: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(C), T(KP_4), T(KP_ENTER), END - ); -case UC_GR_LC_DELTA: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(B), T(KP_4), T(KP_ENTER), END - ); -case UC_GR_LC_FINAL_SIGMA: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(C), T(KP_2), T(KP_ENTER), END - ); -case UC_GR_LC_THETA: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(B), T(KP_8), T(KP_ENTER), END - ); -case UC_GR_LC_BETA: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(B), T(KP_2), T(KP_ENTER), END - ); -case UC_GR_LC_MU: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(B), T(C), T(KP_ENTER), END - ); -case UC_GR_LC_PSI: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(C), T(KP_8), T(KP_ENTER), END - ); -case UC_GR_UC_CHI: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(A), T(KP_7), T(KP_ENTER), END - ); -case UC_GR_UC_PI: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(A), T(KP_0), T(KP_ENTER), END - ); -case UC_GR_UC_PHI: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(A), T(KP_6), T(KP_ENTER), END - ); -case UC_GR_UC_OMEGA: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(A), T(KP_9), T(KP_ENTER), END - ); -case UC_GR_UC_GAMMA: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(KP_9), T(KP_3), T(KP_ENTER), END - ); -case UC_GR_UC_ETA: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(KP_9), T(KP_7), T(KP_ENTER), END - ); -case UC_GR_UC_XI: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(KP_9), T(E), T(KP_ENTER), END - ); -case UC_GR_UC_KAPPA: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(KP_9), T(A), T(KP_ENTER), END - ); -case UC_GR_UC_LAMDA: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(KP_9), T(B), T(KP_ENTER), END - ); -case UC_GR_UC_ZETA: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(KP_9), T(KP_6), T(KP_ENTER), END - ); -case UC_GR_UC_UPSILON: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(A), T(KP_5), T(KP_ENTER), END - ); -case UC_GR_UC_IOTA: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(KP_9), T(KP_9), T(KP_ENTER), END - ); -case UC_GR_UC_ALPHA: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(KP_9), T(KP_1), T(KP_ENTER), END - ); -case UC_GR_UC_EPSILON: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(KP_9), T(KP_5), T(KP_ENTER), END - ); -case UC_GR_UC_OMICRON: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(KP_9), T(F), T(KP_ENTER), END - ); -case UC_GR_UC_SIGMA: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(A), T(KP_3), T(KP_ENTER), END - ); -case UC_GR_UC_NU: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(KP_9), T(D), T(KP_ENTER), END - ); -case UC_GR_UC_RHO: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(A), T(KP_1), T(KP_ENTER), END - ); -case UC_GR_UC_TAU: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(A), T(KP_4), T(KP_ENTER), END - ); -case UC_GR_UC_DELTA: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(KP_9), T(KP_4), T(KP_ENTER), END - ); -case UC_GR_UC_THETA: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(KP_9), T(KP_8), T(KP_ENTER), END - ); -case UC_GR_UC_BETA: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(KP_9), T(KP_2), T(KP_ENTER), END - ); -case UC_GR_UC_MU: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(KP_9), T(C), T(KP_ENTER), END - ); -case UC_GR_UC_PSI: - return MACRODOWN( - D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(A), T(KP_8), T(KP_ENTER), END - ); - default: - break; - } - } + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_2), T(KP_0), T(KP_9), T(KP_ENTER), END + ); +case UC_GREEK_SMALL_LETTER_UPSILON: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(C), T(KP_5), T(KP_ENTER), END + ); +case UC_NOT_EQUAL_TO: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_2), T(KP_6), T(KP_0), T(KP_ENTER), END + ); +case UC_GREEK_CAPITAL_LETTER_CHI: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(A), T(KP_7), T(KP_ENTER), END + ); +case UC_FOR_ALL: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_2), T(KP_0), T(KP_0), T(KP_ENTER), END + ); +case UC_GREEK_CAPITAL_LETTER_TAU: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(A), T(KP_4), T(KP_ENTER), END + ); +case UC_VULGAR_FRACTION_ONE_QUARTER: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_0), T(B), T(C), T(KP_ENTER), END + ); +case UC_GREEK_SMALL_LETTER_CHI: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(C), T(KP_7), T(KP_ENTER), END + ); +case UC_GREEK_CAPITAL_LETTER_THETA: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(KP_9), T(KP_8), T(KP_ENTER), END + ); +case UC_GREEK_SMALL_LETTER_IOTA: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(B), T(KP_9), T(KP_ENTER), END + ); +case UC_GREEK_CAPITAL_LETTER_LAMDA: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(KP_9), T(B), T(KP_ENTER), END + ); +case UC_SUPERSCRIPT_LATIN_SMALL_LETTER_N: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_0), T(KP_7), T(F), T(KP_ENTER), END + ); +case UC_GREEK_CAPITAL_LETTER_UPSILON: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(A), T(KP_5), T(KP_ENTER), END + ); +case UC_GREEK_CAPITAL_LETTER_MU: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(KP_9), T(C), T(KP_ENTER), END + ); +case UC_GREEK_CAPITAL_LETTER_EPSILON: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(KP_9), T(KP_5), T(KP_ENTER), END + ); +case UC_GREEK_CAPITAL_LETTER_GAMMA: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(KP_9), T(KP_3), T(KP_ENTER), END + ); +case UC_SUBSCRIPT_SIX: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_2), T(KP_0), T(KP_8), T(KP_6), T(KP_ENTER), END + ); +case UC_GREEK_CAPITAL_LETTER_DELTA: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_3), T(KP_9), T(KP_4), T(KP_ENTER), END + ); +case UC_VULGAR_FRACTION_ONE_HALF: + return MACRODOWN( + D(LCTRL), D(LSHIFT), T(U), U(LCTRL), U(LSHIFT), T(KP_0), T(KP_0), T(B), T(D), T(KP_ENTER), END + ); + default: + break; + } + } return MACRO_NONE; }; // Runs just one time when the keyboard initializes. -void * matrix_init_user(void) { +void matrix_init_user(void) { }; // Runs constantly in the background, in a loop. -void * matrix_scan_user(void) { +void matrix_scan_user(void) { uint8_t layer = biton32(layer_state); ergodox_board_led_off(); diff --git a/keyboard/ergodox_ez/keymaps/german-manuneo/keymap.md b/keyboard/ergodox_ez/keymaps/german-manuneo/keymap.md index 9c0c12528b..1dc019ab05 100644 --- a/keyboard/ergodox_ez/keymaps/german-manuneo/keymap.md +++ b/keyboard/ergodox_ez/keymaps/german-manuneo/keymap.md @@ -1,8 +1,14 @@ # ManuNeo Ergodox Keyboard Layout +Compile this file to a `keymap.c` file using `compile_keymap.py` + + compile_keymap.py keymaps/german-manuneo/keymap.md + + # Layout Config { + "layout": "ergodox_ez", "includes_dir": "quantum/", "keymaps_includes": [ "ergodox_ez.h", @@ -10,22 +16,14 @@ "keymap_common.h", "keymap_extras/keymap_german.h", ], - "keymap_indexes": [ - [ 0, 1, 2, 3, 4, 5, 6], [38, 39, 40, 41, 42, 43, 44], - [ 7, 8, 9, 10, 11, 12, 13], [45, 46, 47, 48, 49, 50, 51], - [14, 15, 16, 17, 18, 19 ], [ 52, 53, 54, 55, 56, 57], - [20, 21, 22, 23, 24, 25, 26], [58, 59, 60, 61, 62, 63, 64], - [27, 28, 29, 30, 31 ], [ 65, 66, 67, 68, 69], - [ 32, 33], [70, 71 ], - [ 34], [72 ], - [ 35, 36, 37], [73, 74, 75 ], - ], "key_prefixes": ["DE_", "KC_"], "filler": "-+.'!x", "separator": "|", "macros": { - "MUC": "", + // TODO: implement macros + // "MUC": "", }, + // TODO: implement default unicode mode } @@ -34,189 +32,201 @@ ## Layer 0 - .-------------------------------------. .-------------------------------------. - |MO(5)| 1 | 2 | 3 | 4 | 5 | ACUT | ! GRV | 6 | 7 | 8 | 9 | 0 |CIRC | - !-----+----+----+----+----+-----------! !------+----+----+----+----+----+-----! - |MO(4)| X | P | F | W | G | HOME | !TG(2) | H | J | K | L | Q | Z | - !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! - |MO(1)| U | I | A | E | O |------! !------! S | N | R | T | D | SS | - !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! - |MO(3)| UE | OE | AE | C | V | END | ! TAB | B | M |COMM| DOT| UP | Y | - '-----+----+----+----+----+-----------' '-----------+----+----+----+----+-----' - | | |LGUI|LALT|LCTL| !LALT| |LEFT|DOWN|RGHT| - '------------------------'.-------------. .-------------.'------------------------' - | INS |TG(2) | !M(UMS)| DELT | - .------+------+------! !------+------+------. - ! ! | APP | ! PGUP | ! ! - ! ! !------! !------! ! ! - | BSPC | LSFT | ESC | ! PGDN |ENTER |SPACE | - '--------------------' '--------------------' + .------------------------------------.------------------------------------. + |MO(5)| 1 | 2 | 3 | 4 | 5 |ACUT | GRV | 6 | 7 | 8 | 9 | 0 |CIRC | + !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + |MO(4)| X | P | F | W | G |HOME |TG(2)| H | J | K | L | Q | Z | + !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + |MO(1)| U | I | A | E | O |-----!-----! S | N | R | T | D | SS | + !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + |MO(3)| UE | OE | AE | C | V |END | TAB | B | M |COMM| DOT| UP | Y | + '-----+----+----+----+----+----------'----------+----+----+----+----+-----' + | | |LGUI|LALT|LCTL| !LALT| |LEFT|DOWN|RGHT| + '------------------------' '------------------------' + .-----------. .-----------. + |INS |TG(2)| !M(UM)|DELT | + .-----+-----+-----! !-----+-----+-----. + ! ! | APP | ! PGUP| ! ! + ! ! !-----! !-----! ! ! + |BSPC |LSFT | ESC | ! PGDN|ENTER|SPACE| + '-----------------' '-----------------' ## Layer 1 - .-------------------------------------. .-------------------------------------. - | |EXLM|DQOT|PARA| | | | ! | | | | |RING| | - !-----+----+----+----+----+-----------! !------+----+----+----+----+----+-----! - | |ASTR|PIPE|SLSH|LCBR|RCBR| | ! |HASH|LESS|MORE| |DQOT| | - !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! - | |UNDS|MINS|AMPR|LBRC|RBRC|------! !------!DLR |LPRN|RPRN|TILD|QUOT|QST | - !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! - | | |PLUS| EQL| | | | ! |BSLS|PERC|SCLN|COLN| ↑ | | - '-----+----+----+----+----+-----------' '-----------+----+----+----+----+-----' - | | | | | | ! | | ← | ↓ | → | - '------------------------'.-------------. .-------------.'------------------------' - | | | ! | | - .------+------+------! !------+------+------. - ! ! | | ! | ! ! - ! ! !------! !------! ! ! - | | | | ! | | | - '--------------------' '--------------------' + .------------------------------------.------------------------------------. + | |EXLM|DQOT|PARA| | | | | | | | |RING| | + !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + | |ASTR|PIPE|SLSH|LCBR|RCBR| | |HASH|LESS|MORE| |DQOT| | + !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + | |UNDS|MINS|AMPR|LBRC|RBRC|-----!-----!DLR |LPRN|RPRN|TILD|QUOT| QST | + !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + | | |PLUS|EQL | | | | |BSLS|PERC|SCLN|COLN| ↑ | | + '-----+----+----+----+----+----------'----------+----+----+----+----+-----' + | | | | | | ! | | ← | ↓ | → | + '------------------------' '------------------------' + .-----------. .-----------. + | | | ! | | + .-----+-----+-----! !-----+-----+-----. + ! ! | | ! | ! ! + ! ! !-----! !-----! ! ! + | | | | ! | | | + '-----------------' '-----------------' ## Layer 2 - .-------------------------------------. .-------------------------------------. - | | F1 | F2 | F3 | F4 | F5 | F11 | ! F12 | F6 | F7 | F8 | F9 |F10 |PEQL | - !-----+----+----+----+----+-----------! !------+----+----+----+----+----+-----! - | | | | | | | | ! | | P7 | P8 | P9 |PAST|PSLS | - !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! - | | | | | | |------! !------! | P4 | P5 | P6 |PMNS|PMNS | - !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! - | | | | | | | | ! NLCK | | P1 | P2 | P3 |PPLS|PPLS | - '-----+----+----+----+----+-----------' '-----------+----+----+----+----+-----' - | | | | | | ! P0 |PCMM|PDOT|PENT|PENT| - '------------------------'.-------------. .-------------.'------------------------' - | | | ! | | - .------+------+------! !------+------+------. - ! ! | | ! | ! ! - ! ! !------! !------! ! ! - | | | | ! | | | - '--------------------' '--------------------' + .------------------------------------.------------------------------------. + | | F1 | F2 | F3 | F4 | F5 | F11 | F12 | F6 | F7 | F8 | F9 |F10 |PEQL | + !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + | | | | | | | | | | P7 | P8 | P9 |PAST|PSLS | + !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + | | | | | | |-----!-----! | P4 | P5 | P6 |PMNS|PMNS | + !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + | | | | | | | | NLCK| | P1 | P2 | P3 |PPLS|PPLS | + '-----+----+----+----+----+----------'----------+----+----+----+----+-----' + | | | | | | ! P0 |PCMM|PDOT|PENT|PENT| + '------------------------' '------------------------' + .-----------. .-----------. + | | | ! | | + .-----+-----+-----! !-----+-----+-----. + ! ! | | ! | ! ! + ! ! !-----! !-----! ! ! + | | | | ! | | | + '-----------------' '-----------------' + ## Layer 3 http://symbolcodes.tlt.psu.edu/bylanguage/mathchart.html - .-------------------------------------. .-------------------------------------. - | | ¹ | ² | ³ | ⁴ | ⁵ | ∀ | ! | ⁶ | ⁷ | ⁸ | ⁹ | ⁰ | | - !-----+----+----+----+----+-----------! !------+----+----+----+----+----+-----! - | | × | ½ | ÷ | ¼ | ⅕ | | ! | ⅙ | | ⅛ | | | | - !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! - | | | ± | AT |EURO| ∅ |------! !------! ∞ | ⁿ | ∃ | ∈ | | | - !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! - | | ⅓ | ≠ | ⅔ | ¾ | ≃ | | ! |EXLM| | ∄ | ∉ | | | - '-----+----+----+----+----+-----------' '-----------+----+----+----+----+-----' - | | | | | | ! | | | | | - '------------------------'.-------------. .-------------.'------------------------' - | | | ! | | - .------+------+------! !------+------+------. - ! ! | | ! | ! ! - ! ! !------! !------! ! ! - | | | | ! | | | - '--------------------' '--------------------' + .------------------------------------.------------------------------------. + | | ¹ | ² | ³ | ⁴ | ⁵ | ∀ | | ⁶ | ⁷ | ⁸ | ⁹ | ⁰ | | + !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + | | × | ½ | ÷ | ¼ | ⅕ | | | ⅙ | | ⅛ | | | | + !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + | | | ± | AT |EURO| ∅ |-----!-----! ∞ | ⁿ | ∃ | ∈ | | | + !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + | | ⅓ | ≠ | ⅔ | ¾ | ≃ | | |EXLM| | ∄ | ∉ | | | + '-----+----+----+----+----+----------'----------+----+----+----+----+-----' + | | | | | | ! | | | | | + '------------------------' '------------------------' + .-----------. .-----------. + | | | ! | | + .-----+-----+-----! !-----+-----+-----. + ! ! | | ! | ! ! + ! ! !-----! !-----! ! ! + | | | | ! | | | + '-----------------' '-----------------' ## Layer 4 - .-------------------------------------. .-------------------------------------. - | | ₁ | ₂ | ₃ | ₄ | ₅ | | ! | ₆ | ₇ | ₈ | ₉ | ₀ | | - !-----+----+----+----+----+-----------! !------+----+----+----+----+----+-----! - | | χ | π | φ | ω | γ | | ! | η | ξ | κ | λ | | ζ | - !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! - | | υ | ι | α | ε | ο |------! !------! σ | ν | ρ | τ | δ | ς | - !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! - | | | θ | | | | | ! | β | μ | | | | ψ | - '-----+----+----+----+----+-----------' '-----------+----+----+----+----+-----' - | | | | | | ! | | | | | - '------------------------'.-------------. .-------------.'------------------------' - | | | ! | | - .------+------+------! !------+------+------. - ! ! | | ! | ! ! - ! ! !------! !------! ! ! - | | | | ! | | | - '--------------------' '--------------------' + + .------------------------------------.------------------------------------. + | | ₁ | ₂ | ₃ | ₄ | ₅ | | | ₆ | ₇ | ₈ | ₉ | ₀ | | + !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + | | χ | π | φ | ω | γ | | | η | ξ | κ | λ | | ζ | + !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + | | υ | ι | α | ε | ο |-----!-----! σ | ν | ρ | τ | δ | ς | + !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + | | | θ | | | | | | β | μ | | | | ψ | + '-----+----+----+----+----+----------'----------+----+----+----+----+-----' + | | | | | | ! | | | | | + '------------------------' '------------------------' + .-----------. .-----------. + | | | ! | | + .-----+-----+-----! !-----+-----+-----. + ! ! | | ! | ! ! + ! ! !-----! !-----! ! ! + | | | | ! | | | + '-----------------' '-----------------' ## Layer 5 - .-------------------------------------. .-------------------------------------. - | | | | | | | | ! | | | | | | | - !-----+----+----+----+----+-----------! !------+----+----+----+----+----+-----! - | | Χ | Π | Φ | Ω | Γ | | ! | Η | Ξ | Κ | Λ | | Ζ | - !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! - | | Υ | Ι | Α | Ε | Ο |------! !------! Σ | Ν | Ρ | Τ | Δ | | - !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! - | | | Θ | | | | | ! | Β | Μ | | | | Ψ | - '-----+----+----+----+----+-----------' '-----------+----+----+----+----+-----' - | | | | | | ! | | | | | - '------------------------'.-------------. .-------------.'------------------------' - | | | ! | | - .------+------+------! !------+------+------. - ! ! | | ! | ! ! - ! ! !------! !------! ! ! - | | | | ! | | | - '--------------------' '--------------------' + .------------------------------------.------------------------------------. + | | | | | | | | | | | | | | | + !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + | | Χ | Π | Φ | Ω | Γ | | | Η | Ξ | Κ | Λ | | Ζ | + !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + | | Υ | Ι | Α | Ε | Ο |-----!-----! Σ | Ν | Ρ | Τ | Δ | | + !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + | | | Θ | | | | | | Β | Μ | | | | Ψ | + '-----+----+----+----+----+----------'----------+----+----+----+----+-----' + | | | | | | ! | | | | | + '------------------------' '------------------------' + .-----------. .-----------. + | | | ! | | + .-----+-----+-----! !-----+-----+-----. + ! ! | | ! | ! ! + ! ! !-----! !-----! ! ! + | | | | ! | | | + '-----------------' '-----------------' ## Layer 6 - .-------------------------------------. .-------------------------------------. - | | | | | | | | ! | | | | | | | - !-----+----+----+----+----+-----------! !------+----+----+----+----+----+-----! - | | | | | | | | ! | | | | | | | - !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! - | | | | | | |------! !------! | | | | | | - !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! - | | | | | | | | ! | | | | | | | - '-----+----+----+----+----+-----------' '-----------+----+----+----+----+-----' - | | | | | | ! | | | | | - '------------------------'.-------------. .-------------.'------------------------' - | | | ! | | - .------+------+------! !------+------+------. - ! ! | | ! | ! ! - ! ! !------! !------! ! ! - | | | | ! | | | - '--------------------' '--------------------' + .------------------------------------.------------------------------------. + | | | | | | | | | | | | | | | + !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + | | | | | | | | | | | | | | | + !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + | | | | | | |-----!-----! | | | | | | + !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + | | | | | | | | | | | | | | | + '-----+----+----+----+----+----------'----------+----+----+----+----+-----' + | | | | | | ! | | | | | + '------------------------' '------------------------' + .-----------. .-----------. + | | | ! | | + .-----+-----+-----! !-----+-----+-----. + ! ! | | ! | ! ! + ! ! !-----! !-----! ! ! + | | | | ! | | | + '-----------------' '-----------------' + ## Layer 7 - .-------------------------------------. .-------------------------------------. - | | | | | | | | ! | | | | | | | - !-----+----+----+----+----+-----------! !------+----+----+----+----+----+-----! - | | | | | | | | ! | | | | | | | - !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! - | | | | | | |------! !------! | | | | | | - !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! - | | | | | | | | ! | | | | | | | - '-----+----+----+----+----+-----------' '-----------+----+----+----+----+-----' - | | | | | | ! | | | | | - '------------------------'.-------------. .-------------.'------------------------' - | | | ! | | - .------+------+------! !------+------+------. - ! ! | | ! | ! ! - ! ! !------! !------! ! ! - | | | | ! | | | - '--------------------' '--------------------' + .------------------------------------.------------------------------------. + | | | | | | | | | | | | | | | + !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + | | | | | | | | | | | | | | | + !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + | | | | | | |-----!-----! | | | | | | + !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + | | | | | | | | | | | | | | | + '-----+----+----+----+----+----------'----------+----+----+----+----+-----' + | | | | | | ! | | | | | + '------------------------' '------------------------' + .-----------. .-----------. + | | | ! | | + .-----+-----+-----! !-----+-----+-----. + ! ! | | ! | ! ! + ! ! !-----! !-----! ! ! + | | | | ! | | | + '-----------------' '-----------------' ## Layer 8 - .-------------------------------------. .-------------------------------------. - | | | | | | | | ! | | | | | | | - !-----+----+----+----+----+-----------! !------+----+----+----+----+----+-----! - | | | | | | | | ! | | | | | | | - !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! - | | | | | | |------! !------! | | | | | | - !-----+----+----+----x----x----! ! ! !----x----x----+----+----+-----! - | | | | | | | | ! | | | | | | | - '-----+----+----+----+----+-----------' '-----------+----+----+----+----+-----' - | | | | | | ! | | | | | - '------------------------'.-------------. .-------------.'------------------------' - | | | ! | | - .------+------+------! !------+------+------. - ! ! | | ! | ! ! - ! ! !------! !------! ! ! - | | | | ! | | | - '--------------------' '--------------------' + .------------------------------------.------------------------------------. + | | | | | | | | | | | | | | | + !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + | | | | | | | | | | | | | | | + !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + | | | | | | |-----!-----! | | | | | | + !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + | | | | | | | | | | | | | | | + '-----+----+----+----+----+----------'----------+----+----+----+----+-----' + | | | | | | ! | | | | | + '------------------------' '------------------------' + .-----------. .-----------. + | | | ! | | + .-----+-----+-----! !-----+-----+-----. + ! ! | | ! | ! ! + ! ! !-----! !-----! ! ! + | | | | ! | | | + '-----------------' '-----------------' From a2d3c0bd93bf97264bb94510c126d4fd21b7b135 Mon Sep 17 00:00:00 2001 From: Manuel Barkhau Date: Mon, 28 Mar 2016 23:42:55 +0200 Subject: [PATCH 19/45] add hex file --- .../keymaps/german-manuneo/german-manuneo.hex | 1624 +++++++++++++++++ 1 file changed, 1624 insertions(+) create mode 100644 keyboard/ergodox_ez/keymaps/german-manuneo/german-manuneo.hex diff --git a/keyboard/ergodox_ez/keymaps/german-manuneo/german-manuneo.hex b/keyboard/ergodox_ez/keymaps/german-manuneo/german-manuneo.hex new file mode 100644 index 0000000000..cb8b7fa8d4 --- /dev/null +++ b/keyboard/ergodox_ez/keymaps/german-manuneo/german-manuneo.hex @@ -0,0 +1,1624 @@ +:100000000C94BD0F0C9401100C9401100C94011071 +:100010000C9401100C9401100C9401100C9401101C +:100020000C9401100C9401100C94791B0C944B1C33 +:100030000C9401100C9401100C9401100C940110FC +:100040000C9401100C94D6300C9401100C940110F7 +:100050000C9401100C94782A0C9401100C9401104B +:100060000C9401100C9401100C9401100C940110CC +:100070000C9401100C9401100C9401100C940110BC +:100080000C9401100C9401100C9401100C940110AC +:100090000C9401100C9401100C9401100C9401109C +:1000A0000C9401100C9401100C940110AB107810FA +:1000B0006310BD10E4101711F910FF1014113E1158 +:1000C0003511021138114E10F3102911321175102B +:1000D0006C10BA10B11099106F103010C6101A11B0 +:1000E00023112F119F10CF10AE1048102011ED10CA +:1000F0009010A5109C108410261193103910F01048 +:100100008A10C9106C12B410661054107E107B1047 +:10011000D210A2100E113F108D10B7102D10C0106C +:100120000B111111DB105D10F6104B1072105710EF +:10013000CC10FC103B113310A810C3100511D510C2 +:100140005A102C11EA10451096106010E110691039 +:1001500008114210D810E7103610511041111D112E +:1001600081103C10DE108710D311A0118B11E51106 +:100170000C123F12211227123C1266125D122A1233 +:10018000601276111B1251125A129D119411E21134 +:10019000D911C11197115811EE1142124B12571279 +:1001A000C711F711D611701148121512B811CD11DF +:1001B000C411AC114E12BB1161111812B211F11120 +:1001C0006F12DC118E117C11A611A311FA11CA1144 +:1001D00036126711B511DF115511E81133123912BA +:1001E000031285111E1273119A117F11F41124123A +:1001F00063125B11D011EB112D12FD1182115412FB +:1002000012126D11BE1188110912911130126A116A +:1002100000120F125E11791169124512A9116411B1 +:100220000612AF11B01CD21CBD1DD21CBD1D141D69 +:10023000371DBD1D8C1D9F1D8C208C20BA20BA201F +:10024000FC203821382338235021382347224722E5 +:10025000122338233823262301E001E10118021874 +:1002600002E002E10162026201620262010502052E +:1002700001070207015802580001E001E1011802DC +:100280001802E002E101620262015B025B016102AD +:1002900061015C025C015802580001E001E10118B3 +:1002A000021802E002E1015A025A01620262016090 +:1002B0000260015E025E015802580001E001E101A6 +:1002C00018021802E002E101620262015B025B01B6 +:1002D000610261015B025B015802580001E001E12B +:1002E0000118021802E002E101620262015B025B96 +:1002F00001610261015D025D015802580001E001E7 +:10030000E10118021802E002E101620262015B02EF +:100310005B0161026101060206015802580001E01A +:1003200001E10118021802E002E101620262015BD0 +:10033000025B01040204015D025D015802580001E4 +:10034000E001E10118021802E002E1015A025A013B +:10035000620262015F025F0109020901580258004E +:1003600001E001E10118021802E002E1016202620B +:10037000015B025B0161026101050205015802583F +:100380000001E001E10118021802E002E10162024D +:1003900062015B025B010502050161026101580215 +:1003A000580001E001E10118021802E002E10162D7 +:1003B0000262015B025B016102610160026001583F +:1003C00002580001E001E10118021802E002E10117 +:1003D000620262015B025B01060206015F025F01CD +:1003E0005802580001E001E10118021802E002E1A0 +:1003F0000162026201620262010502050106020653 +:10040000015802580001E001E10118021802E0025F +:10041000E101620262015B025B01040204015C0211 +:100420005C015802580001E001E10118021802E0E5 +:1004300002E1015A025A015A025A01620262016241 +:100440000262015802580001E001E101180218029D +:10045000E002E101620262015B025B01040204014D +:100460005F025F015802580001E001E10118021823 +:1004700002E002E1015A025A015A025A015E025E8A +:1004800001620262015802580001E001E101180214 +:100490001802E002E101620262015B025B010602F6 +:1004A00006015D025D015802580001E001E10118FA +:1004B000021802E002E1015A025A015A025A01628C +:1004C000026201610261015802580001E001E1018C +:1004D00018021802E002E1015A025A0162026201A6 +:1004E0005F025F01620262015802580001E001E10F +:1004F0000118021802E002E1015A025A0162026286 +:10050000015F025F01600260015802580001E001D2 +:10051000E10118021802E002E101620262015B02DD +:100520005B01610261015F025F015802580001E056 +:1005300001E10118021802E002E101620262015BBE +:10054000025B01610261015A025A0158025800011E +:10055000E001E10118021802E002E1015A025A0129 +:1005600062026201600260015F025F01580258008E +:1005700001E001E10118021802E002E101620262F9 +:10058000015B025B01610261015902590158025885 +:100590000001E001E10118021802E002E1015A0243 +:1005A0005A01620262016002600160026001580249 +:1005B000580001E001E10118021802E002E10162C5 +:1005C0000262015B025B01610261010402040158E5 +:1005D00002580001E001E10118021802E002E10105 +:1005E000620262015B025B0105020501060206016F +:1005F0005802580001E001E10118021802E002E18E +:1006000001620262015B025B01050205015C025CA2 +:10061000015802580001E001E10118021802E0024D +:10062000E1015A025A01620262015F025F01610246 +:1006300061015802580001E001E10118021802E0CE +:1006400002E1015A025A015902590161026101593C +:100650000259015802580001E001E1011802180294 +:10066000E002E1015A025A015A025A016202620191 +:100670005D025D015802580001E001E10118021815 +:1006800002E002E10162026201620262010502050A +:10069000015B025B015802580001E001E101180210 +:1006A0001802E002E10162026201620262010502D7 +:1006B0000501080208015802580001E001E1011893 +:1006C000021802E002E101620262016202620105B7 +:1006D000020501590259015802580001E001E101E7 +:1006E00018021802E002E1015A025A015A025A01A4 +:1006F000620262015B025B015802580001E001E105 +:100700000118021802E002E1015A025A0162026273 +:10071000015F025F015D025D015802580001E001C6 +:10072000E10118021802E002E101620262015B02CB +:100730005B01060206015C025C015802580001E000 +:1007400001E10118021802E002E101620262015BAC +:10075000025B01610261015E025E01580258000104 +:10076000E001E10118021802E002E1015A025A0117 +:100770006202620160026001590259015802580088 +:1007800001E001E10118021802E002E101620262E7 +:10079000015B025B01060206016102610158025819 +:1007A0000001E001E10118021802E002E101620229 +:1007B00062015B025B01040204015B025B015802FF +:1007C000580001E001E10118021802E002E1015ABB +:1007D000025A016202620160026001620262015813 +:1007E00002580001E001E10118021802E002E101F3 +:1007F0006202620162026201070207015F025F0199 +:100800005802580001E001E10118021802E002E17B +:10081000015A025A015A025A0162026201600260E0 +:10082000015802580001E001E10118021802E0023B +:10083000E101620262015B025B0161026101090286 +:1008400009015802580001E001E10118021802E014 +:1008500002E1015A025A015A025A01590259010889 +:100860000208015802580001E001E10118021802D3 +:10087000E002E101620262015B025B010602060125 +:100880005E025E015802580001E001E10118021801 +:1008900002E002E101620262015B025B0104020408 +:1008A000015E025E015802580001E001E1011802F8 +:1008B0001802E002E101620262015B025B010502D3 +:1008C0000501590259015802580001E001E10118DF +:1008D000021802E002E1015A025A015A025A015C6E +:1008E000025C015B025B015802580001E001E1017A +:1008F00018021802E002E1015A025A016202620182 +:10090000600260015A025A015802580001E001E1F8 +:100910000118021802E002E101620262015B025B5F +:1009200001050205015F025F015802580001E00164 +:10093000E10118021802E002E101620262015B02B9 +:100940005B0105020501600260015802580001E0E8 +:1009500001E10118021802E002E101620262015B9A +:10096000025B01610261010802080158025800019E +:10097000E001E10118021802E002E10162026201F5 +:100980005B025B01060206015A025A015802580036 +:1009900001E001E10118021802E002E101620262D5 +:1009A000015B025B01040204016202620158025809 +:1009B0000001E001E10118021802E002E1015A021F +:1009C0005A01620262015F025F015F025F01580229 +:1009D000580001E001E10118021802E002E10162A1 +:1009E0000262015B025B0105020501040204015879 +:1009F00002580001E001E10118021802E002E101E1 +:100A0000620262015B025B01050205015D025D019C +:100A10005802580001E001E10118021802E002E169 +:100A200001620262015B025B01050205015E025E7A +:100A3000015802580001E001E10118021802E00229 +:100A4000E101620262015B025B010502050107022E +:100A500007015802580001E001E10118021802E004 +:100A600002E1015A025A01590259015D025D015C1D +:100A7000025C015802580001E001E101180218026D +:100A8000E002E101620262015B025B010502050115 +:100A90005B025B015802580001E001E101180218F5 +:100AA00002E002E1015A025A01590259015D025D58 +:100AB00001610261015802580001E001E1011802E0 +:100AC0001802E002E101620262015B025B010602C0 +:100AD0000601590259015802580001E001E10118CC +:100AE000021802E002E101620262015B025B0106A0 +:100AF0000206015B025B015802580001E001E101BE +:100B000018021802E002E10162026201620262015F +:100B1000090209015F025F015802580001E001E18A +:100B20000118021802E002E101620262015B025B4D +:100B30000161026101070207015802580001E0014A +:100B4000E10118021802E002E1015A025A016202B0 +:100B50006201600260015C025C015802580001E021 +:100B600001E10118021802E002E101620262015B88 +:100B7000025B010402040160026001580258000196 +:100B8000E001E10118021802E002E10162026201E3 +:100B90005B025B010402040161026101580258001A +:100BA00001E001E10118021802E002E101620262C3 +:100BB0000162026201050205015A025A01580258F7 +:100BC0000001E001E10118021802E002E101620205 +:100BD00062015B025B0106020601620262015802C9 +:100BE000580001E001E10118021802E002E1015A97 +:100BF000025A0159025901610261015B025B01580D +:100C000002580001E001E10118021802E002E101CE +:100C10005A025A01620262015F025F015E025E01D6 +:100C20005802580001E001E10118021802E002E157 +:100C3000015A025A0159025901610261015A025ACC +:100C4000015802580001E001E10118021802E00217 +:100C5000E1015A025A01620262015F025F015C0215 +:100C60005C015802580001E001E10118021802E09D +:100C700002E1015A025A01620262016002600161EE +:100C80000261015802580001E001E1011802180256 +:100C9000E002E101620262015B025B010602060101 +:100CA000600260015802580001E001E101180218D9 +:100CB00002E002E1015A025A01590259015D025D46 +:100CC000015D025D015802580001E001E1011802D6 +:100CD0001802E002E101620262015B025B01610253 +:100CE0006101610261015802580001E001E101184F +:100CF000021802E002E1015A025A01620262016036 +:100D00000260015D025D015802580001E001E1014D +:100D100018021802E002E101620262015B025B015B +:100D2000050205015A025A015802580001E001E18A +:100D30000118021802E002E101620262016202622D +:100D40000105020501610261015802580001E0013C +:100D5000E10118021802E002E1015A025A015A02A6 +:100D60005A01620262015C025C015802580001E013 +:100D700001E10118021802E002E101620262015B76 +:100D8000025B010502050108020801580258000132 +:100D9000E001E10118021802E002E1015A025A01E1 +:100DA000590259015D025D015B025B015802580066 +:100DB00001E001E10118021802E002E101620262B1 +:100DC000015B025B0105020501050205015802589D +:100DD0000001E001E10118021802E002E1015A02FB +:100DE0005A01590259015D025D01050205015802CF +:100DF000580001E001E10118021802E002E1015A85 +:100E0000025A0162026201600260015B025B0158EA +:100E100002580001E001E10118021802E002E101BC +:100E2000620262015B025B01040204015902590182 +:100E30005802580001E001E10118021802E002E145 +:100E4000015A025A015902590161026101620262AA +:100E5000015802580001E001E10118021802E00205 +:100E6000E101620262015B025B0105020501090208 +:100E700009015802580001E201570257016202625B +:100E800001620262010502050107020702E2000198 +:100E9000E20157025701620262015B025B016102DB +:100EA00061015C025C02E20001E201570257015A53 +:100EB000025A0162026201600260015E025E02E2A9 +:100EC0000001E20157025701620262015B025B010D +:100ED000610261015B025B02E20001E2015702571D +:100EE00001620262015B025B01610261015D025D00 +:100EF00002E20001E20157025701620262015B0255 +:100F00005B016102610106020602E20001E2015793 +:100F1000025701620262015B025B01040204015D8F +:100F2000025D02E20001E201570257015A025A0132 +:100F3000620262015F025F0109020902E20001E24E +:100F40000157025701620262015B025B01610261AB +:100F50000105020502E20001E201570257016202A7 +:100F600062015B025B010502050161026102E200B0 +:100F700001E20157025701620262015B025B0161FB +:100F800002610160026002E20001E20157025701C2 +:100F9000620262015B025B01060206015F025F0200 +:100FA000E20001E20157025701620262016202623D +:100FB000010502050106020602E20001E2015702F4 +:100FC0005701620262015B025B01040204015C02E0 +:100FD0005C02E20001E201570257015A025A015A2B +:100FE000025A016202620162026202E20001E2014F +:100FF00057025701620262015B025B0104020401B5 +:101000005F025F02E20001E201570257015A025AF1 +:10101000015A025A015E025E0162026202E20001AE +:10102000E20157025701620262015B025B010602A4 +:1010300006015D025D02E20001E201570257015A1A +:10104000025A015A025A016202620161026102E21D +:101050000001E201570257015A025A01620262017D +:101060005F025F0162026202E20001E20157025781 +:10107000015A025A01620262015F025F016002606E +:1010800002E20001E20157025701620262015B02C3 +:101090005B01610261015F025F02E20001E2015750 +:1010A000025701620262015B025B01610261015A47 +:1010B000025A02E20001E201570257015A025A01A4 +:1010C00062026201600260015F025F02E20001E20F +:1010D0000157025701620262015B025B016102611A +:1010E0000159025902E20001E201570257015A0276 +:1010F0005A01620262016002600160026002E20065 +:1011000001E20157025701620262015B025B016169 +:1011100002610104020402E20001E20157025701E8 +:10112000620262015B025B01050205010602060222 +:10113000E20001E20157025701620262015B025BB9 +:1011400001050205015C025C02E20001E2015702B6 +:1011500057015A025A01620262015F025F01610295 +:101160006102E20001E201570257015A025A015995 +:101170000259016102610159025902E20001E201D2 +:10118000570257015A025A015A025A016202620179 +:101190005D025D02E20001E2015702570162026254 +:1011A0000162026201050205015B025B02E20001CD +:1011B000E201570257016202620162026201050206 +:1011C000050108020802E20001E20157025701622C +:1011D000026201620262010502050159025902E23E +:1011E0000001E201570257015A025A015A025A01FC +:1011F000620262015B025B02E20001E201570257F8 +:10120000015A025A01620262015F025F015D025DE2 +:1012100002E20001E20157025701620262015B0231 +:101220005B01060206015C025C02E20001E201577A +:10123000025701620262015B025B01610261015EB1 +:10124000025E02E20001E201570257015A025A010E +:10125000620262016002600159025902E20001E289 +:101260000157025701620262015B025B010602063E +:101270000161026102E20001E201570257016202CC +:1012800062015B025B01040204015B025B02E2009B +:1012900001E201570257015A025A016202620160DB +:1012A00002600162026202E20001E201570257019C +:1012B0006202620162026201070207015F025F02CD +:1012C000E20001E201570257015A025A015A025A3A +:1012D000016202620160026002E20001E201570263 +:1012E0005701620262015B025B0161026101090256 +:1012F0000902E20001E201570257015A025A015A5B +:10130000025A015902590108020802E20001E201F1 +:1013100057025701620262015B025B01060206018D +:101320005E025E02E20001E20157025701620262C0 +:10133000015B025B01040204015E025E02E2000145 +:10134000E20157025701620262015B025B01050282 +:10135000050159025902E20001E201570257015A00 +:10136000025A015A025A015C025C015B025B02E212 +:101370000001E201570257015A025A01620262015A +:10138000600260015A025A02E20001E2015702576C +:1013900001620262015B025B01050205015F025FFF +:1013A00002E20001E20157025701620262015B02A0 +:1013B0005B010502050160026002E20001E20157E3 +:1013C000025701620262015B025B01610261010876 +:1013D000020802E20001E2015702570162026201C3 +:1013E0005B025B01060206015A025A02E20001E2B8 +:1013F0000157025701620262015B025B01040204B1 +:101400000162026202E20001E201570257015A0240 +:101410005A01620262015F025F015F025F02E20045 +:1014200001E20157025701620262015B025B0105A2 +:1014300002050104020402E20001E2015702570121 +:10144000620262015B025B01050205015D025D0251 +:10145000E20001E20157025701620262015B025B96 +:1014600001050205015E025E02E20001E20157028F +:101470005701620262015B025B010502050107027E +:101480000702E20001E201570257015A025A0159CC +:101490000259015D025D015C025C02E20001E201B1 +:1014A00057025701620262015B025B0105020501FE +:1014B0005B025B02E20001E201570257015A025A45 +:1014C00001590259015D025D0161026102E2000100 +:1014D000E20157025701620262015B025B010602F0 +:1014E000060159025902E20001E201570257016266 +:1014F0000262015B025B01060206015B025B02E223 +:101500000001E201570257016202620162026201B8 +:10151000090209015F025F02E20001E2015702577E +:1015200001620262015B025B016102610107020765 +:1015300002E20001E201570257015A025A01620217 +:101540006201600260015C025C02E20001E201579C +:10155000025701620262015B025B01040204016046 +:10156000026002E20001E2015702570162026201D9 +:101570005B025B010402040161026102E20001E21C +:10158000015702570162026201620262010502050F +:10159000015A025A02E20001E201570257016202B7 +:1015A00062015B025B010602060162026202E20066 +:1015B00001E201570257015A025A015902590161C9 +:1015C0000261015B025B02E20001E2015702570186 +:1015D0005A025A01620262015F025F015E025E020C +:1015E000E20001E201570257015A025A0159025919 +:1015F00001610261015A025A02E20001E20157024E +:1016000057015A025A01620262015F025F015C02E5 +:101610005C02E20001E201570257015A025A0162DC +:101620000262016002600161026102E20001E20106 +:1016300057025701620262015B025B01060206016A +:1016400060026002E20001E201570257015A025AA9 +:1016500001590259015D025D015D025D02E2000176 +:10166000E20157025701620262015B025B01610203 +:10167000610161026102E20001E201570257015A71 +:10168000025A0162026201600260015D025D02E2D3 +:101690000001E20157025701620262015B025B0135 +:1016A000050205015A025A02E20001E201570257FF +:1016B00001620262016202620105020501610261CA +:1016C00002E20001E201570257015A025A015A028E +:1016D0005A01620262015C025C02E20001E201570F +:1016E000025701620262015B025B0105020501080B +:1016F000020802E20001E201570257015A025A01B0 +:10170000590259015D025D015B025B02E20001E2E8 +:101710000157025701620262015B025B010502058B +:101720000105020502E20001E201570257015A02D7 +:101730005A01590259015D025D0105020502E200EC +:1017400001E201570257015A025A01620262016026 +:101750000260015B025B02E20001E20157025701F5 +:10176000620262015B025B01040204015902590238 +:10177000E20001E201570257015A025A0159025987 +:10178000016102610162026202E20001E2015702AC +:101790005701620262015B025B0105020501090259 +:1017A0000902E200055204520152035201000000F6 +:1017B0001E001B0018002F00010029001F0013004D +:1017C0000C003300E300E1002000090004003400B5 +:1017D000E2002A0021001A0008000600E00065006F +:1017E00022000A0012001900000049002E004A00E1 +:1017F00000004D00000002542E02025400002B0095 +:1018000000005E0023000B001600050000004C00E5 +:1018100024000D0011001000E2004B0025000E0016 +:101820001500360001002C0026000F0017003700BD +:1018300050002800270014000700520051004E00FD +:1018400035001C002D001D004F00000001000100AC +:1018500001000100010000001E02300238020100F8 +:10186000010001001F026414380030000100010073 +:101870002002240223022702010001000100241497 +:1018800025140100010001000100271426140100A5 +:101890000000010001000100000001000000010043 +:1018A0000100010000000100000001000100310002 +:1018B00021022D1400000100010064002502220213 +:1018C000010001000100640226023602010001004D +:1018D00001000100301437023830010035021F02C8 +:1018E0003102553002300100010001002D020100DB +:1018F0003D30000001000100010001000100000076 +:101900003A00010001000100010001003B0001005C +:1019100001000100010001003C0001000100010084 +:10192000010001003D000100010001000100010073 +:101930003E00010001000100000001004400010020 +:1019400000000100000001004500010000005300FC +:10195000000001003F000100010001000000010043 +:1019600040005F005C00590062000100410060001F +:101970005D005A0085000100420061005E005B00CE +:101980006300010043005500560057005800010055 +:101990006700540056005700580000000100010085 +:1019A00001000100010000004D30393001005B30C2 +:1019B00001000100513058303C303B300100010043 +:1019C0005030013014145D30010001004A305930AC +:1019D00008145C30010001004930573004300030F9 +:1019E00000000100053001000000010000000100BE +:1019F0000100010000000100000001004F305A30DA +:101A000037301E02000001004E3001004B30010053 +:101A100001000100483056305430533001000100BD +:101A20004C30010003303A30010001005230010017 +:101A3000010001000100010001000100010001009E +:101A40000100000001000100010001000100000090 +:101A500042302030343001000100010046302E3089 +:101A6000263033300100010045302D301E3001009A +:101A70000100010040302B30223001000100010044 +:101A80003F3025302C300100000001000100010032 +:101A90000000010000000100010001000000010041 +:101AA000000001004430233031301F3000000100BD +:101AB000433035302A302930010001003E302730D4 +:101AC0003030010001000100413028303230010087 +:101AD0000100010047300100213001000100010038 +:101AE0000100363024302F300100000001000100D9 +:101AF0000100010001000000010008301B3001005E +:101B000001000100010015300D301A300100010004 +:101B10000100143006300100010001000100123004 +:101B20000A3001000100010001000C3013300100F7 +:101B300000000100010001000000010000000100A0 +:101B400001000100000001000000010001000B3055 +:101B5000183007300000010001001C301130103037 +:101B60000100010001000E301730010001000100EA +:101B700001000F30193001000100010001000100D7 +:101B8000093001000100010001001D300100163084 +:101B9000010000000100010001000100010000003F +:101BA000010001000100010001000100010001002D +:101BB000010001000100010001000100010001001D +:101BC000010001000100010001000100010001000D +:101BD00001000100010001000000010001000100FE +:101BE00000000100000001000100010000000100F0 +:101BF00000000100010001000100010000000100DF +:101C000001000100010001000100010001000100CC +:101C100001000100010001000100010001000100BC +:101C200001000100010001000100010001000100AC +:101C3000010001000100010001000000010001009D +:101C4000010001000100000001000100010001008D +:101C5000010001000100010001000100010001007C +:101C6000010001000100010001000100010001006C +:101C7000010001000100010001000100010001005C +:101C8000000001000100010000000100000001004F +:101C9000010001000000010000000100010001003E +:101CA000010001000000010001000100010001002D +:101CB000010001000100010001000100010001001C +:101CC000010001000100010001000100010001000C +:101CD00001000100010001000100010001000100FC +:101CE00001000000010001000100010001000000EE +:101CF00001000100010001000100010001000100DC +:101D000001000100010001000100010001000100CB +:101D100001000100010001000100010001000100BB +:101D200001000100010001000000010001000100AC +:101D3000000001000000010001000100000001009E +:101D4000000001000100010001000100000001008D +:101D5000010001000100010001000100010001007B +:101D6000010001000100010001000100010001006B +:101D7000010001000100010001000100010001005B +:101D800001000100010001000100000016034500F0 +:101D9000720067006F0044006F007800200045006B +:101DA0005A00000016034500720067006F004400EF +:101DB0006F007800200045005A0000000403090469 +:101DC00009026D00040100A0FA09040000010301EA +:101DD0000100092111010001223F000705810308CC +:101DE000000A090401000103010200092111010098 +:101DF00001224D000705820308000A0904020001C0 +:101E000003000000092111010001223600070583AB +:101E10000308000A0904030001030000000921115E +:101E2000010001223900070584031000011201108E +:101E30000100000008EDFE0713010001020001058A +:101E4000010906A101050719E029E71500250195FB +:101E5000087501810205081901290595057501918B +:101E600002950175039101050719002977150025D1 +:101E700001957875018102C005010980A1018502E3 +:101E800016010026B7001A01002AB7007510950147 +:101E90008100C0050C0901A1018503160100269CE3 +:101EA000021A01002A9C02751095018100C00501EB +:101EB0000902A1010901A10005091901290515005F +:101EC00025019505750181029501750381010501C3 +:101ED000093009311581257F950275088106093879 +:101EE0001581257F950175088106050C0A380215B4 +:101EF00081257F950175088106C0C005010906A1ED +:101F000001050719E029E7150025019508750181EC +:101F100002950175088101050819012905950575C6 +:101F20000191029501750391010507190029FF151B +:101F30000025FF950675088100C000000000000024 +:101F40000000000000010204060A0F17202C3A4A84 +:101F50005D71879DB3C7DAE9F5FCFFFCF5E9DAC7E7 +:101F6000B39D87715D4A3A2C20170F0A06040201BF +:101F70000000000000000000000011241FBECFEF91 +:101F8000DAE0DEBFCDBF04B603FE24C08091F001CD +:101F90009091F101A091F201B091F3018730904B43 +:101FA000A740B04BB9F41092F0011092F1011092D9 +:101FB000F2011092F30114BE84B7877F84BF88E1D9 +:101FC0000FB6F89480936000109260000FBEE0E0BE +:101FD000FFE3099511E0A0E0B1E0E0E3F5E602C01F +:101FE00005900D92A433B107D9F711E0A4E3B1E055 +:101FF00001C01D92A03FB107E1F70E94BF180C94E9 +:1020000096320C940000FC018281811103C080E0B3 +:1020100090E008956E3561F42091340130913501DE +:102020002F5F3F4F217033273093350120933401C8 +:1020300020913401309135012115310509F024C179 +:10204000862F90E08E35910528F4FC01EA5AFF4F67 +:102050000C944B3280E090E0089582E797E1089578 +:1020600089E597E1089580E497E1089587E297E193 +:1020700008958EE097E1089585EF96E108958CED3F +:1020800096E1089583EC96E108958AEA96E1089531 +:1020900081E996E1089588E796E108958FE596E154 +:1020A000089586E496E108958DE296E1089584E12D +:1020B00096E108958BEF95E1089582EE95E10895FC +:1020C00089EC95E1089580EB95E1089587E995E124 +:1020D00008958EE795E1089585E695E108958CE4ED +:1020E00095E1089583E395E108958AE195E10895E6 +:1020F00081E095E1089588EE94E108958FEC94E1F4 +:10210000089586EB94E108958DE994E1089584E8BB +:1021100094E108958BE694E1089582E594E10895B1 +:1021200089E394E1089580E294E1089587E094E1E1 +:1021300008958EEE93E1089585ED93E108958CEB7B +:1021400093E1089583EA93E108958AE893E108957D +:1021500081E793E1089588E593E108958FE393E1A2 +:10216000089586E293E108958DE093E1089584EF68 +:1021700092E108958BED92E1089582EC92E1089549 +:1021800089EA92E1089580E992E1089587E792E172 +:1021900008958EE592E1089585E492E108958CE238 +:1021A00092E1089583E192E108958AEF91E1089523 +:1021B00081EE91E1089588EC91E108958FEA91E133 +:1021C000089586E991E108958DE791E1089584E607 +:1021D00091E108958BE491E1089582E391E10895FE +:1021E00089E191E1089580E091E1089587EE90E121 +:1021F00008958EEC90E1089585EB90E108958CE9C7 +:1022000090E1089583E890E108958AE690E10895C9 +:1022100081E590E1089588E390E108958FE190E1F0 +:10222000089586E090E108958DEE9FE0089584ED95 +:102230009FE008958BEB9FE0089582EA9FE0089568 +:1022400089E89FE0089580E79FE0089587E59FE093 +:1022500008958EE39FE0089585E29FE008958CE065 +:102260009FE0089583EF9EE008958AED9EE0089533 +:1022700081EC9EE0089588EA9EE008958FE89EE054 +:10228000089586E79EE008952130310509F0BFCE1C +:10229000862F90E08E35910528F4FC01EC54FF4F19 +:1022A0000C944B3280E090E0089584E39EE0089522 +:1022B00083E19EE0089582EF9DE0089581ED9DE029 +:1022C000089580EB9DE008958FE89DE008958EE6E7 +:1022D0009DE008958DE49DE008958CE29DE00895D1 +:1022E0008BE09DE008958AEE9CE0089589EC9CE0E7 +:1022F000089588EA9CE0089587E89CE0089586E6C2 +:102300009CE0089585E49CE0089584E29CE00895B3 +:1023100083E09CE0089582EE9BE0089581EC9BE0D1 +:10232000089580EA9BE008958FE79BE008958EE58D +:102330009BE008958DE39BE008958CE19BE0089578 +:102340008BEF9AE008958AED9AE0089589EB9AE080 +:10235000089588E99AE0089587E79AE0089586E568 +:102360009AE0089585E39AE0089584E19AE008955B +:1023700083EF99E0089582ED99E0089581EB99E06B +:10238000089580E999E008958FE699E008958EE434 +:1023900099E008958DE299E008958CE099E0089520 +:1023A0008BEE98E008958AEC98E0089589EA98E029 +:1023B000089588E898E0089587E698E0089586E40F +:1023C00098E0089585E298E0089584E098E0089503 +:1023D00083EE97E0089582EC97E0089581EA97E014 +:1023E000089580E897E008958FE597E008958EE3DB +:1023F00097E008958DE197E008958CEF96E00895B9 +:102400008BED96E008958AEB96E0089589E996E0D1 +:10241000089588E796E0089587E596E0089586E3B5 +:1024200096E0089585E196E0089584EF95E008959B +:1024300083ED95E0089582EB95E0089581E995E0BC +:10244000089580E795E008958FE495E008958EE281 +:1024500095E008958DE095E008958CEE94E0089560 +:102460008BEC94E008958AEA94E0089589E894E07A +:10247000089588E694E0089587E494E0089586E25C +:1024800094E0089585E094E0089584EE93E0089543 +:1024900083EC93E0089582EA93E0089581E893E065 +:1024A000089580E693E008958FE393E008958EE128 +:1024B00093E008958DEF92E008958CED92E00895F9 +:1024C0008BEB92E008958AE992E0089589E792E023 +:1024D000089588E592E008958BE897E1089585E5F1 +:1024E0009EE0089508956091B3017091B4018091C8 +:1024F000B5019091B6010E94A42956985E9825983E +:102500002D9826982E9827982F988330A9F028F494 +:10251000813051F0823069F012C0843041F0853052 +:1025200071F4259A2D9A08C0259A2D9A0895259A16 +:102530002D9A269A2E9A0895279A2F9A089556989A +:102540005E9808950C94731256985E9825982D986D +:1025500026982E9827982F988FEF90E090938900D7 +:102560008093880090938B0080938A0090938D00D5 +:1025700080938C00259A2D9A2FEF80E792E02150CE +:1025800080409040E1F700C00000269A2E9A2FEF7D +:1025900080E792E0215080409040E1F700C00000C9 +:1025A000279A2F9A2FEF80E792E0215080409040A9 +:1025B000E1F700C0000025982D982FEF80E792E00A +:1025C000215080409040E1F700C0000026982E98EE +:1025D0002FEF80E792E0215080409040E1F700C06B +:1025E000000027982F9856985E9825982D98269841 +:1025F0002E9827982F98089589EA8093800089E083 +:102600008093810024982C983F988AB18F748AB95E +:102610006E98479A8BB1806B8BB9769A0E94A41200 +:102620000C94721280E28093000180913601811136 +:102630000EC00E94611381E0809336012FEF83ED7D +:1026400090E3215080409040E1F700C0000080E41A +:102650000E9467138093000181112EC00E94911384 +:1026600080930001811128C00E9491138093000182 +:10267000811122C08FE30E94911380930001811188 +:102680001BC00E94891380E40E946713809300019D +:10269000811112C08CE00E9491138093000181117E +:1026A0000BC00E94911380930001811105C08FE33C +:1026B0000E949113809300010E9489138091000170 +:1026C00008951092B9008AE08093B800089594EAC2 +:1026D0009093BC009091BC0097FFFCCF9091B90003 +:1026E000987F983021F0903111F081E00895809327 +:1026F000BB0084E88093BC008091BC0087FFFCCFC6 +:102700008091B900887F883111F0803471F780E0C2 +:10271000089584E98093BC008091BC0084FDFCCFC7 +:1027200008958093BB0084E88093BC008091BC0036 +:1027300087FFFCCF9091B900987F81E0983209F42F +:1027400080E0089584E88093BC008091BC0087FFFE +:10275000FCCF8091BB00089580910001811115C0CC +:1027600080E40E9467138093000181110CC082E114 +:102770000E94911380930001811105C08FEF0E9488 +:102780009113809300010E94891384B1807F84B9E2 +:1027900085B1807F85B98AB1837F8AB98BB1837F08 +:1027A0008BB93E98469808950E94121380930001B9 +:1027B0000E94AC1380B38C7080BB81B3836F81BBEC +:1027C000E6E4F1E0A8E3B1E011921D9281E0E43586 +:1027D000F807D1F70C94FC12BF92CF92DF92EF92E0 +:1027E000FF920F931F93CF93DF9380910001882373 +:1027F00079F0809137018F5F80933701811108C094 +:102800000E94121380930001811102C00E94A41241 +:1028100008E311E0C0E0D0E0DD24D39482E0C82ECC +:10282000EE24E394F12CC73000F580910001811172 +:1028300062C080E40E94671380930001811112C07E +:1028400082E10E9491138093000181110BC0C701A6 +:102850000C2E01C0880F0A94EAF780950E9491130C +:10286000809300010E94891346C0CA30A1F028F469 +:10287000C83059F0C93061F005C0CC3089F070F033 +:10288000CD3089F0209A289810C0219A29980DC03F +:10289000229A2A980AC0239A2B9807C0529A01C0FC +:1028A000539A5B9802C03E9A4698E0EAEA95F1F79F +:1028B0008FB179995AC092E081708D25892B7C9BCC +:1028C00002C090E001C094E0892B7D9B02C090E0A3 +:1028D00001C098E0892B7E9B02C090E001C090E18E +:1028E000892B9FB19095991F9927991F9295990FC0 +:1028F000907E892B0FC08091000181114BC080E434 +:102900000E94671380930001882389F1B12C0E94F3 +:1029100089138B2DF8019081981719F08083C0924C +:1029200001010E94AC1321960F5F1F4FCE30D105DD +:1029300009F079CF80910101882371F18150809352 +:102940000101882339F08FE99FE00197F1F700C07A +:10295000000022C0A6E4B1E0E8E3F1E081918D93AC +:1029600091E0E634F907D1F717C090E0A5CF83E1F5 +:102970000E949113809300018111C8CF81E40E94CD +:102980006713809300018111C1CF0E94A213B82E5A +:10299000B094BDCF80E0BECF0E94A21281E0DF9153 +:1029A000CF911F910F91FF90EF90DF90CF90BF904C +:1029B0000895E82FF0E0EA5BFE4F808108950895C6 +:1029C0008B3B910578F4883A910540F5853A91055D +:1029D000D0F48430910508F0B1C08130910509F43C +:1029E000ADC06BC0803E910508F467C0883E91057C +:1029F00008F4A4C09C01205F31092031310508F0A2 +:102A00005CC090650895853A910509F459C0863AED +:102A1000910509F458C083E890E40895883A910537 +:102A200009F454C0893A910509F453C08A3A9105D2 +:102A300009F452C08B3A910509F451C08C3A9105C2 +:102A400009F450C08D3A910509F44FC0803B9105BF +:102A500009F44EC08E3A910509F44DC08F3A9105A4 +:102A600009F44CC0813B910509F44BC0823B9105B0 +:102A700009F44AC0833B910509F449C0843B9105A0 +:102A800009F448C0853B910509F447C0863B910590 +:102A900009F446C0873B910509F445C0883B910580 +:102AA00009F444C0893B910509F443C08A3B910570 +:102AB00009F042C08AE296E4089580E090E008952B +:102AC00081E890E4089582E890E4089582EE94E429 +:102AD000089589EE94E408958AEE94E4089585EBD0 +:102AE00094E4089586EB94E4089587EB94E40895C4 +:102AF0008CEC94E408958DEC94E4089583E895E4D7 +:102B000008958AE895E4089582E995E4089584E9B2 +:102B100095E4089581E296E4089583E296E40895A9 +:102B200084E296E4089585E296E4089586E296E4C8 +:102B3000089587E296E4089580E094E40895089566 +:102B400096E0799FF001112494E5899FE00DF11D35 +:102B50001124E60FF11DEE0FFF1FEC55F84E859185 +:102B600094910895880F991F8C5D994EFC01859171 +:102B700094910895880F991F8C55984EFC0185916A +:102B80009491089526E0729FF001112444E5849FFA +:102B9000E00DF11D1124E60FF11DEE0FFF1FEC55A6 +:102BA000F84E25913491C9019A9581159F4110F4F1 +:102BB000C9010895C90190528115904128F4C901B5 +:102BC0009F700E94BA150895C901905381159041D4 +:102BD00020F4C9019927906C0895211580E53807E4 +:102BE00069F40E9459239FEF24E34CE09150204068 +:102BF0004040E1F700C000000C949D2A213080E5A0 +:102C0000380731F48091CE0181608093CE01089520 +:102C1000C90190558115904108F050C0832F992724 +:102C20008F70992781309105D9F4A90143705527F8 +:102C300002C0880F991F4A95E2F79C68A90164E0D9 +:102C4000440F551F6A95E1F744275370842B952B49 +:102C500073E0220F331F7A95E1F7207633271DC0EA +:102C60008230910529F4922F8827816F906A089508 +:102C700083309105A9F4A9014370552781E090E0C4 +:102C800002C0880F991F4A95E2F79C6843E0220F23 +:102C9000331F4A95E1F7207E3770822B932B0895DE +:102CA0000497F1F4A9014370552781E090E002C038 +:102CB000880F991F4A95E2F79A68E8CFC9019057A3 +:102CC0008115904120F4C9019F7090620895C90157 +:102CD00090588115904120F4C9019F70906A089521 +:102CE000203E3105E0F4203C310558F52133310513 +:102CF00009F470C048F42932310509F464C02A325D +:102D0000310509F46EC074C029333105F1F0223861 +:102D10003105D9F02533310509F44EC069C0233E91 +:102D2000310589F138F4203E3105C1F0223E3105EC +:102D3000E1F05EC0263E310569F1273E3105A9F17B +:102D400057C0C9010E94B21508958091E10180FD2C +:102D500002C081FF4DC080EE90E04BC08091E10148 +:102D600080FFF9CF89E390E044C08091E10182FFC8 +:102D70000EC08091E10184FF03C080E090E039C083 +:102D800083EE90E036C08091E10182FFF2CF82EEC7 +:102D900090E02FC08091E10183FF0BC08091E101A1 +:102DA00084FDEBCF87EE90E024C08091E10183FFAA +:102DB000F5CF86EE90E01DC08091E10185FF07C050 +:102DC00089E290E016C08091E10185FFF9CF85E3AB +:102DD00090E00FC08091E10186FF07C08AE290E099 +:102DE00008C08091E10186FFF9CF81E390E001C046 +:102DF000C9010E94E014089508950C94FC16809176 +:102E000064010895CF93DF9300D01F92CDB7DEB752 +:102E10002091E701243019F523E029839B838A83DD +:102E20002093E9008FEF9091E800815095FD06C056 +:102E300095ED9A95F1F700008111F5CF8091E800AA +:102E400085FF0DC040E050E063E070E0CE010196E8 +:102E50000E946C198091E8008E778093E8000F90B3 +:102E60000F900F90DF91CF910895CF93DF9300D013 +:102E70001F92CDB7DEB72091E701243021F522E083 +:102E800029839B838A8383E08093E9008FEF90916D +:102E9000E800815095FD06C095ED9A95F1F7000088 +:102EA0008111F5CF8091E80085FF0DC040E050E032 +:102EB00063E070E0CE0101960E946C198091E800F9 +:102EC0008E778093E8000F900F900F90DF91CF9155 +:102ED00008952091E7012430F1F422E02093E900E5 +:102EE0002FEF3091E800215035FD06C035ED3A95C1 +:102EF000F1F700002111F5CF2091E80025FF0BC06C +:102F000040E050E065E070E00E946C198091E800BC +:102F10008E778093E8000895CF93DF93EC01809142 +:102F2000E701843009F046C090910C019923D9F053 +:102F300090910D019923B9F08093E9008FEF909162 +:102F4000E800815095FD06C095E19A95F1F70000E3 +:102F50008111F5CF8091E80085FF2CC040E050E062 +:102F600060E170E017C081E08093E9008FEF9091FD +:102F7000E800815095FD06C095ED9A95F1F70000A7 +:102F80008111F5CF8091E80085FF14C040E050E04A +:102F900068E070E0CE010E946C198091E8008E77A5 +:102FA0008093E80080E1FE01A4E5B1E001900D927C +:102FB0008A95E1F7DF91CF9108958091E601811123 +:102FC00009C00E94FE1A0E945B1B8091E20084608F +:102FD0008093E20008951092E601089508950C94FC +:102FE000C3300E94342A0E94C9300E94F81D0C94FC +:102FF000FD1642E061EC81E00E94781A42E061EC4B +:1030000082E00E94781A42E061EC83E00E94781A24 +:1030100042E161EC84E00C94781A8091E9018330FC +:1030200009F455C030F4813071F0823009F48EC05B +:1030300008958A3009F47AC08B3009F460C0893071 +:1030400009F09CC020C08091E801813A09F096C047 +:103050008091E800877F8093E8008091EC01909157 +:10306000ED01892B21F060E080E090E003C060E199 +:1030700084E591E070E00E94B5198091E8008B77BB +:103080008093E80008958091E801813209F076C0CC +:103090008091EC019091ED01009719F0039709F0F0 +:1030A0006DC08091E800877F8093E8008091E80000 +:1030B00082FD05C08091E7018111F8CF5FC080914A +:1030C000F100809364018091E8008B7753C0809178 +:1030D000E801813A09F052C08091EC019091ED0134 +:1030E000892B09F04BC08091E800877F8093E8002E +:1030F0008091E80080FFFCCF80910C0136C0809168 +:10310000E8018132D9F58091EC019091ED01892B94 +:10311000A9F58091E800877F8093E8000E94AD1AAE +:103120008091EA0180930C010C9459238091E8016D +:10313000813221F58091E800877F8093E8000E942A +:10314000AD1A8091EB018093650108958091E801AB +:10315000813AA1F48091E800877F8093E800809114 +:10316000E80080FFFCCF809165018093F1008091A1 +:10317000E8008E778093E8000C94AD1A089584B728 +:10318000877F84BF88E10FB6F89480936000109227 +:1031900060000FBE90E080E80FB6F8948093610065 +:1031A000909361000FBE0E94471E0E94FE1A0E946B +:1031B0005B1B8091E20084608093E20078940E941F +:1031C000D61D0E94491E82E091E00E94F31D0E94DC +:1031D000B1308091E701853069F40E94F729809130 +:1031E000E5018823B1F30E941F2A882391F30E94EE +:1031F0005619EFCF0E944F1EECCF292F33272330D3 +:103200003105A9F06CF42130310509F442C02230B7 +:10321000310509F043C08DE690E020EC3DE142C06D +:1032200021323105C9F02232310519F137C0992711 +:103230008130910541F08230910541F0892B71F583 +:10324000ECEBFDE105C0E4EAFDE102C0ECE8FDE1E4 +:10325000849190E09F0126C0643000F5E62FF0E0F5 +:10326000EE0FFF1FEE5DFE4F2081318189E090E07F +:1032700019C0643098F4E62FF0E0DF01AA0FBB1FFD +:10328000A65EBE4F2D913C91EA5EFE4F808190E09C +:1032900009C082E190E02DE23EE104C080E090E0D0 +:1032A00020E030E0FA0131832083089580E189BD78 +:1032B00082E189BD09B400FEFDCF8091D8008F7DE9 +:1032C0008093D8008091E00082608093E00080913C +:1032D000E00081FDFCCF0895CF92DF92EF92FF9244 +:1032E0000F931F93CF93DF937C018B01EA010E9420 +:1032F000CE1A811131C0209731F088819981081B45 +:10330000190BE80EF91EC12CD12C0115110519F16C +:103310008091E80085FD14C08091E8008E7780934D +:10332000E800209741F0888199818C0D9D1D99833B +:10333000888385E011C00E94CE1A882331F30CC027 +:10334000F70181917F018093F10001501109FFEF96 +:10335000CF1ADF0ADACF80E0DF91CF911F910F9172 +:10336000FF90EF90DF90CF9008952091EE01309183 +:10337000EF012617370748F06115710539F42091E0 +:10338000E8002E772093E80001C0B901FC0120E09D +:1033900061157105B9F18091E701882309F440C0F6 +:1033A000853009F43FC08091E80083FD3DC08091E5 +:1033B000E80082FF06C08091E80082FF26C080E01E +:1033C00008958091E80080FFE3CF2091F300809181 +:1033D000F20090E0922B6115710551F08830910553 +:1033E00038F421912093F100615071090196F3CFD7 +:1033F00021E0089709F020E08091E8008E77809323 +:10340000E800C6CF2111C7CFD6CF8091E70188232E +:1034100039F0853039F08091E80083FFCCCF04C0CB +:1034200082E0089583E0089581E008952091EE01FF +:103430003091EF012617370748F06115710539F40F +:103440002091E8002E772093E80001C0B901FC012B +:1034500020E061157105C1F18091E701882309F42D +:1034600041C0853009F440C08091E80083FD3EC032 +:103470008091E80082FF06C08091E80082FF27C0AB +:1034800080E008958091E80080FFE3CF2091F30071 +:103490008091F20090E0922B6115710559F088300F +:1034A000910540F424912093F10031966150710907 +:1034B0000196F2CF21E0089709F020E08091E80022 +:1034C0008E778093E800C5CF2111C6CFD5CF8091EC +:1034D000E701882339F0853039F08091E80083FFD7 +:1034E000CBCF04C082E0089583E0089581E0089581 +:1034F000982F973058F59093E900981739F070910C +:10350000EC002091ED005091F00003C0242F762FA5 +:1035100050E021FF19C03091EB003E7F3093EB006B +:103520003091ED003D7F3093ED003091EB00316044 +:103530003093EB007093EC002093ED005093F0007B +:103540002091EE0027FF07C09F5FD3CF8F7080933D +:10355000E90081E0089580E008958091E80187FD09 +:1035600005C08091E80080FF0EC012C08091E80085 +:1035700082FD05C08091E7018111F8CF0895809107 +:10358000E8008B7708C08091E7018111EACF0895A8 +:103590008091E8008E778093E80008958091E400A0 +:1035A0009091E50045E62091EC0020FF21C020919C +:1035B000E80020FD21C02091E701222389F0253079 +:1035C00089F02091EB0025FD0FC02091E40030919F +:1035D000E5002817390739F3415041F0C901E3CF1D +:1035E00082E0089583E0089581E0089584E00895DD +:1035F0002091E80022FFDFCF80E008950E946C1B3D +:103600000E94741BE0EEF0E0808181608083E8ED31 +:10361000F0E080818F77808319BCA7EDB0E08C91BA +:103620008E7F8C9380818F7E80831092E601089537 +:103630000F931F93CF93DF930E946C1B0E94741B08 +:10364000C8EDD0E088818F778883888180688883FF +:1036500088818F7D888319BC1092E7011092E30165 +:103660001092E5011092E40100EE10E0F801808173 +:103670008B7F808388818160888342E060E080E086 +:103680000E94781AE1EEF0E080818E7F8083E2EE86 +:10369000F0E0808181608083808188608083F80190 +:1036A00080818E7F8083888180618883DF91CF9144 +:1036B0001F910F910895E8EDF0E080818F7E808367 +:1036C000E7EDF0E080818160808384E082BF81E06B +:1036D0008093E6010C94181BE8EDF0E080818E7F6A +:1036E00080831092E20008951092DA001092E100B7 +:1036F00008951F920F920FB60F9211242F933F93AC +:103700004F935F936F937F938F939F93AF93BF93E9 +:10371000EF93FF938091E10082FF0BC08091E20064 +:1037200082FF07C08091E1008B7F8093E1000E94BF +:10373000D51D8091DA0080FF1FC08091D80080FFE6 +:103740001BC08091DA008E7F8093DA008091D900CF +:1037500080FF0DC080E189BD82E189BD09B400FE12 +:10376000FDCF81E08093E7010E94DD1705C019BC01 +:103770001092E7010E94EB178091E10080FF19C0D1 +:103780008091E20080FF15C08091E2008E7F8093DF +:10379000E2008091E20080618093E2008091D80095 +:1037A00080628093D80019BC85E08093E7010E9475 +:1037B000EF178091E10084FF30C08091E20084FF28 +:1037C0002CC080E189BD82E189BD09B400FEFDCF36 +:1037D0008091D8008F7D8093D8008091E1008F7E0A +:1037E0008093E1008091E2008F7E8093E2008091DF +:1037F000E20081608093E2008091E301882311F070 +:1038000084E007C08091E30087FF02C083E001C02D +:1038100081E08093E7010E94F1178091E10083FF2E +:1038200029C08091E20083FF25C08091E100877F5D +:103830008093E10082E08093E7011092E3018091A0 +:10384000E1008E7F8093E1008091E2008E7F809383 +:10385000E2008091E20080618093E20042E060E05B +:1038600080E00E94781A8091F00088608093F000D8 +:103870000E94EE17FF91EF91BF91AF919F918F91B1 +:103880007F916F915F914F913F912F910F900FBE5C +:103890000F901F9018951F920F920FB60F92112440 +:1038A0002F933F934F935F936F937F938F939F9348 +:1038B000AF93BF93CF93EF93FF93C091E900CF7085 +:1038C0008091EC001092E9008091F000877F809356 +:1038D000F00078940E94871C1092E9008091F0001B +:1038E00088608093F000C093E900FF91EF91CF9141 +:1038F000BF91AF919F918F917F916F915F914F9108 +:103900003F912F910F900FBE0F901F9018951F930E +:10391000CF93DF93CDB7DEB7AA970FB6F894DEBF8B +:103920000FBECDBFE8EEF1E08091F100819321E080 +:10393000E03FF207C9F70E940D188091E80083FF6D +:103940001CC12091E8013091E901832F90E08A3079 +:10395000910508F012C1FC01EE5EFE4F0C944B3253 +:10396000203881F0223809F008C18091EC018F7075 +:103970008093E9008091EB0085FB882780F9109205 +:10398000E90006C08091E4019091E5019111826007 +:103990009091E800977F9093E8008093F100109257 +:1039A000F100C5C0822F8D7F09F0E7C0222319F0F6 +:1039B000223061F0E2C08091EA01813009F0DDC07F +:1039C000333009F080E08093E50128C08091EA015E +:1039D000811124C02091EC012F7009F4CEC02093F6 +:1039E000E9008091EB0080FF19C08091EB0033303B +:1039F00011F4806211C080618093EB0081E090E05F +:103A0000022E01C0880F0A94EAF78093EA00109210 +:103A1000EA008091EB0088608093EB001092E9004F +:103A20008091E800877F86C02111A7C01091EA012C +:103A30001F778091E3008078812B8093E300809151 +:103A4000E800877F8093E8000E94AD1A8091E8002B +:103A500080FFFCCF8091E30080688093E300112316 +:103A600011F083E001C082E08093E70186C0205816 +:103A7000223008F082C08091EA019091EB018C3DE8 +:103A800023E0920779F583E08A838AE289834FB73E +:103A9000F894DE01139620E03EE051E2E32FF0E0DF +:103AA00050935700E49120FF03C0E295EF703F5F11 +:103AB000EF708E2F90E0EA3010F0C79601C0C096EC +:103AC0008D939D932F5F243149F74FBF8091E8007C +:103AD000877F8093E8006AE270E0CE0101960E9441 +:103AE000B51914C0AE014F5F5F4F6091EC010E94A9 +:103AF000FD18009709F441C02091E800277F20932A +:103B0000E800BC0189819A810E94161A8091E80020 +:103B10008B778093E80031C0203879F58091E800F8 +:103B2000877F8093E8008091E3018093F10080918A +:103B3000E8008E778093E8000E94AD1A1EC0211124 +:103B40001CC09091EA019230C0F48091E800877F18 +:103B50008093E8009093E3010E94AD1A8091E30105 +:103B6000811104C08091E30087FF02C084E001C09E +:103B700081E08093E7010E94F9178091E80083FFBC +:103B80000AC08091E800877F8093E8008091EB0075 +:103B900080628093EB00AA960FB6F894DEBF0FBE4A +:103BA000CDBFDF91CF911F9108950895CF9380915C +:103BB000E7018823B1F08091E9008F709091EC00CB +:103BC00090FF02C090E801C090E0C92FC82B10926E +:103BD000E9008091E80083FD0E94871CCF70C093AC +:103BE000E900CF91089590936B0180936A01089545 +:103BF000E0916A01F0916B01309721F00190F08122 +:103C0000E02D099480E00895E0916A01F0916B0144 +:103C1000309721F00280F381E02D09940895E0911E +:103C20006A01F0916B01309721F00480F581E02D5D +:103C300009940895209168013091690182179307D2 +:103C400071F09093690180936801E0916A01F091AD +:103C50006B01309721F00680F781E02D09940895DB +:103C600020916601309167018217930771F090935C +:103C7000670180936601E0916A01F0916B013097D2 +:103C800021F00084F185E02D0994089508950C94A5 +:103C9000461E0E943A2A0E94D4130C94002BCF9205 +:103CA000DF92EF92FF920F931F93CF93DF93CDB7E5 +:103CB000DEB72B970FB6F894DEBF0FBECDBF0E94C4 +:103CC000EC133DE6E32E31E0F32E00E010E0C02ED1 +:103CD000802F0E94D914F701D1907F01D826B1F42A +:103CE0000F5F1F4F0E30110591F78FEF89838A8385 +:103CF0001B820E94432A8160782F9D838C83498197 +:103D00005A816B818D810E94F21E41C09091CE013B +:103D100091FF04C08B870E94DF148B8520E030E088 +:103D20004D2D50E0922FBA01022E02C07595679575 +:103D30000A94E2F760FF25C02E83CF82EE24E3943D +:103D4000F12C02C0EE0CFF1C9A95E2F790E08E2158 +:103D50009F2121E0892B09F420E028870E94432A33 +:103D60008160782F9A8789874E815F8168858A85EF +:103D70000E94F21EF801E359FE4F80818E25808358 +:103D800006C02F5F3F4F2630310561F6A9CF0E9454 +:103D9000E42D10916C010E94F81D1817A1F00E94EB +:103DA000F81D80936C012B960FB6F894DEBF0FBE02 +:103DB000CDBFDF91CF911F910F91FF90EF90DF90DA +:103DC000CF900C94FD162B960FB6F894DEBF0FBE65 +:103DD000CDBFDF91CF911F910F91FF90EF90DF90BA +:103DE000CF900895CF93DF93CDB7DEB72B970FB663 +:103DF000F894DEBF0FBECDBF4F83588769877A879F +:103E00008B87DE01119686E0FD0111928A95E9F714 +:103E100085E0FE01379601900D928A95E1F7498180 +:103E20005A816B817C818D819E810E9425262B96F3 +:103E30000FB6F894DEBF0FBECDBFDF91CF910895CE +:103E4000CF93C82F882309F4C1C0823859F40E9447 +:103E5000F81D81FDBBC089E30E94C4280E947E2911 +:103E600089E30CC0833879F40E94F81D80FDAEC050 +:103E700083E50E94C4280E947E2983E50E940429CC +:103E8000CF910C947E29843859F40E94F81D82FD4C +:103E90009DC087E40E94C4280E947E2987E4EECF5B +:103EA0008CEF8C0F813A48F48C2F0E9419308111CD +:103EB0008DC08C2F0E94C428E3CF80E28C0F883005 +:103EC00048F4C77081E001C0880FCA95EAF70E94E4 +:103ED0004529D6CF8BE58C0F833078F4C53A29F08D +:103EE000C63A31F482E890E005C081E890E002C073 +:103EF00083E890E0CF910C941A1E88E58C0F8331F3 +:103F000008F064C0C83A39F1C93A41F1CA3A49F1F6 +:103F1000CB3A51F1CC3A59F1CD3A61F1C03B69F15C +:103F2000CE3A71F1CF3A79F1C13B81F1C23B89F1CF +:103F3000C33B91F1C43B99F1C53BA1F1C63BA9F14B +:103F4000C73BB1F1C83BB9F1C93BC1F1CA3BC9F5A7 +:103F50008AE292E038C082EE90E035C089EE90E0CF +:103F600032C08AEE90E02FC085EB90E02CC086EB4B +:103F700090E029C087EB90E026C08CEC90E023C055 +:103F80008DEC90E020C083E891E01DC08AE891E0CC +:103F90001AC082E991E017C084E991E014C081E27F +:103FA00092E011C083E292E00EC084E292E00BC086 +:103FB00085E292E008C086E292E005C087E292E0E6 +:103FC00002C080E090E0CF910C94301ECF91089514 +:103FD000882309F44BC0823859F40E94F81D81FFF0 +:103FE00045C089E30E94C4280E947E2989E30CC051 +:103FF000833871F40E94F81D80FF38C083E50E9469 +:10400000C4280E947E2983E50E9404290C947E29FD +:10401000843859F40E94F81D82FF28C087E40E946A +:10402000C4280E947E2987E4EFCF9CEF980F913A35 +:1040300058F390E2980F983050F4877091E001C0E7 +:10404000990F8A95EAF7892F0E944B29DFCF9BE5CC +:10405000980F933020F480E090E00C941A1E885A58 +:10406000833120F480E090E00C94301E0895882382 +:1040700021F00E9445290C947E290895882321F07F +:104080000E944B290C947E290895CF92DF92EF92E3 +:10409000FF920F931F93CF93DF93CDB7DEB728978F +:1040A0000FB6F894DEBF0FBECDBF8C0185E0F801DE +:1040B000DE01119601900D928A95E1F7F801408199 +:1040C0003181F280258122952F7083819481892B03 +:1040D00031F03F3F31F481E04F3F19F403C081E0FC +:1040E00001C080E080FDC4C249833A8389819A81FE +:1040F0002F830E9482289E8388870E9481280E94A5 +:1041000054274E81E42FE295EF70F0E0E45EFE4F1D +:104110002F8168850C944B32842F807F142F1F7061 +:10412000882311F01295107FFF2059F0112309F414 +:1041300054C2812F68870E9455290E947E29688574 +:104140004CC2862F0E94E81F112309F491C2812FCF +:104150000E945B2928960FB6F894DEBF0FBECDBF34 +:10416000DF91CF911F910F91FF90EF90DF90CF9053 +:104170000C947E29342F307F842F8F70303211F0D1 +:104180008295807F662319F0613019F12BC0FF20E2 +:10419000B1F0222309F493C1213009F090C128968F +:1041A0000FB6F894DEBF0FBECDBFDF91CF911F9148 +:1041B0000F91FF90EF90DF90CF900C946529222310 +:1041C00019F0213009F454C28E830E9468298E812F +:1041D00089C1FF2021F0223008F04AC270C12111AC +:1041E00047C280C1FF2021F0222309F468C1F5C134 +:1041F000222309F477C105C2242F26952695237022 +:1042000030E02115310521F021303105C9F030C2EF +:10421000FF2021F0862F942F937002C080E090E061 +:1042200028960FB6F894DEBF0FBECDBFDF91CF91B9 +:104230001F910F91FF90EF90DF90CF900C941A1E7A +:10424000FF2021F0862F942F937002C080E090E031 +:1042500028960FB6F894DEBF0FBECDBFDF91CF9189 +:104260001F910F91FF90EF90DF90CF900C94301E34 +:10427000862FFF2019F00E94EC2C02C00E94542DC2 +:1042800028960FB6F894DEBF0FBECDBFDF91CF9159 +:104290001F910F91FF90EF90DF90CF900C94D92D4C +:1042A000842F837009F076C0F110E2C1262F229589 +:1042B00026952770220F220F862F8F70C82ED12CA3 +:1042C000E12CF12C022E04C0CC0CDD1CEE1CFF1CDA +:1042D0000A94D2F764FF10C06FE070E080E090E0D5 +:1042E00004C0660F771F881F991F2A95D2F7609523 +:1042F00070958095909503C060E070E0CB01242F0D +:10430000269526952370422F50E042305105D1F07A +:104310004330510559F16C297D298E299F2941305F +:10432000510541F128960FB6F894DEBF0FBECDBF00 +:10433000DF91CF911F910F91FF90EF90DF90CF9081 +:104340000C9479276C297D298E299F2928960FB6F0 +:10435000F894DEBF0FBECDBFDF91CF911F910F91BB +:10436000FF90EF90DF90CF900C9493270E947927D5 +:10437000C701B60128960FB6F894DEBF0FBECDBFB9 +:10438000DF91CF911F910F91FF90EF90DF90CF9031 +:104390000C945F27FF2019F0842F817001C086954F +:1043A000882309F465C1262F229526952770220FB0 +:1043B000220F862F8F70C82ED12CE12CF12C022ECB +:1043C00004C0CC0CDD1CEE1CFF1C0A94D2F764FF69 +:1043D00010C06FE070E080E090E004C0660F771FCF +:1043E000881F991F2A95D2F76095709580959095B2 +:1043F00003C060E070E0CB01242F26952695237042 +:10440000422F50E042305105D1F04330510559F16F +:104410006C297D298E299F294130510541F128962B +:104420000FB6F894DEBF0FBECDBFDF91CF911F91C5 +:104430000F91FF90EF90DF90CF900C944D286C2956 +:104440007D298E299F2928960FB6F894DEBF0FBECE +:10445000CDBFDF91CF911F910F91FF90EF90DF9033 +:10446000CF900C9467280E944D28C701B60128966A +:104470000FB6F894DEBF0FBECDBFDF91CF911F9175 +:104480000F91FF90EF90DF90CF900C943328603F16 +:10449000C9F118F4603E50F49BC0623F09F460C05B +:1044A00008F44AC0633F09F46FC092C0162F1F7012 +:1044B000842F8F71FF2099F00E94CC27812F28969E +:1044C0000FB6F894DEBF0FBECDBFDF91CF911F9125 +:1044D0000F91FF90EF90DF90CF900C9437200E94C7 +:1044E000ED27812F28960FB6F894DEBF0FBECDBF03 +:1044F000DF91CF911F910F91FF90EF90DF90CF90C0 +:104500000C943E20FF20A1F02111B2C0842F8F71A6 +:1045100028960FB6F894DEBF0FBECDBFDF91CF91C6 +:104520001F910F91FF90EF90DF90CF900C94122885 +:10453000223008F09DC0EACFFF20A1F0842F8F71B8 +:1045400028960FB6F894DEBF0FBECDBFDF91CF9196 +:104550001F910F91FF90EF90DF90CF900C94CC279C +:10456000FF2061F3842F8F7128960FB6F894DEBF79 +:104570000FBECDBFDF91CF911F910F91FF90EF90B4 +:10458000DF90CF900C94ED27FF2091F0842F8F7156 +:1045900028960FB6F894DEBF0FBECDBFDF91CF9146 +:1045A0001F910F91FF90EF90DF90CF900C94B72761 +:1045B00028960FB6F894DEBF0FBECDBFDF91CF9126 +:1045C0001F910F91FF90EF90DF90CF900C94AD274B +:1045D000FF20A1F0222309F4B1CF862F28960FB631 +:1045E000F894DEBF0FBECDBFDF91CF911F910F9129 +:1045F000FF90EF90DF90CF900C94201F222309F4BE +:10460000B1CF862F28960FB6F894DEBF0FBECDBF70 +:10461000DF91CF911F910F91FF90EF90DF90CF909E +:104620000C94E81F4F70C8010E94031028960FB623 +:10463000F894DEBF0FBECDBFDF91CF911F910F91D8 +:10464000FF90EF90DF90CF900C94D2264F70C8016E +:1046500028960FB6F894DEBF0FBECDBFDF91CF9185 +:104660001F910F91FF90EF90DF90CF900C949F15CA +:1046700028960FB6F894DEBF0FBECDBFDF91CF9165 +:104680001F910F91FF90EF90DF90CF9008950E94BF +:1046900062290E9437290E947E290E94852E0E944D +:1046A000D92D80E090E00E941A1E80E090E00C94EA +:1046B000301E0E9452290C9447230E948228292FE1 +:1046C00022952F7030E02C3031054CF42A30310522 +:1046D0006CF4225031092230310590F407C02C309F +:1046E000310551F02F30310539F00AC0803E10F00D +:1046F000803F31F481E0089593FB882780F9089585 +:1047000080E00895CF93DF9300D000D01F92CDB703 +:10471000DEB70F900F900F900F900F90DF91CF9119 +:104720000895CF93DF9300D000D000D0CDB7DEB78F +:1047300026960FB6F894DEBF0FBECDBFDF91CF91A6 +:1047400008951F93CF93DF93C0917B0116E0809172 +:104750007C01C81799F0D0E01C9FF0011D9FF00D5F +:104760001124E358FE4F408151816281738184811D +:1047700095810E9491232196C770E9CFDF91CF9157 +:104780001F9108954091AD015091AE016091AF012C +:104790007091B0018091B1019091B2010C9491237C +:1047A000CF938091B20182958F7009F05FC08091A4 +:1047B000AF01882309F45AC020917B01A0917C01AC +:1047C0006091AD017091AE018091B0019091B10105 +:1047D00031E06F3F09F030E0B32FC6E02A1709F44B +:1047E00045C0009721F07F3F21F44B2F03C041E0EB +:1047F00001C040E030E040FD35C0C29FF001C39FE2 +:10480000F00D1124E358FE4F418174132BC04081F9 +:10481000641328C04281411125C043815481481747 +:10482000590710F441505109481B590B483C510598 +:10483000C8F48091B2018F7080618093B20186E0EC +:10484000829FF001839FF00D1124EE57FE4F80816F +:104850008F70806180838DEA91E00E944520CF9126 +:104860000C94A1232F5F3F4F2770B8CFCF910895AD +:10487000CF92DF92EF92FF920F931F93CF93DF932C +:10488000CDB7DEB762970FB6F894DEBF0FBECDBFCF +:104890008C0185E0F801DE011D9601900D928A954C +:1048A000E1F7D8014C9111965C91119712966C9199 +:1048B00012971396ED90FC9014977091AD01E091D2 +:1048C000AE012091B0013091B1012115310531F0D7 +:1048D000EF3F31F481E07F3F19F403C081E001C074 +:1048E00080E0B82FB170CB2E80FD6CC1D090AF01AD +:1048F000DD2009F4F5C0F091B201E216F30638F0BC +:10490000C701821B930B883C910548F09BC0209502 +:1049100030952E0D3F1D283C310508F093C08F2F98 +:10492000807F09F052C0E51314C0741312C0D62E54 +:1049300061110FC0FF70F061F093B2010E94C223B9 +:104940008DEA91E00E9445208091B201F8018583B3 +:104950006CC1EF2831F05F3F31F481E04F3F19F433 +:1049600003C081E001C080E080FD03C081E08627B4 +:1049700001C080E0F82FF170FF2E80FF1CC08091F5 +:104980007B0120917C0136E0821709F428C190E078 +:10499000389FF001399FF00D1124E358FE4F7181CB +:1049A000571306C07081471303C07281671303C099 +:1049B00001968770E9CFD62E662309F436C180911F +:1049C000B20181608093B20153C0E51308C0741333 +:1049D00006C0611104C0D8011596FC93AEC04D8786 +:1049E0005E878D859E856A8B0E945D236A898823F8 +:1049F00029F1D62E662311F12091B201822F8295E2 +:104A00008F7090E002970CF460C08091AD0190919E +:104A1000AE0198878F831986FB86EA862C87CE01A4 +:104A2000079651C0E51731F14D875E878D859E85CC +:104A30006A8B0E945D236A8981112EC0C8010E9481 +:104A40004520A4C08F2F807F69F77E2DF98AE88AE0 +:104A500089890E9482238DEA91E00E944520EDEA37 +:104A6000F1E086E0DF011D928A95E9F70E94C223FA +:104A7000D12CDBC07413D8CF6111D6CFD8011596D5 +:104A8000FC93C8010E944520EDEAF1E086E0DF01D9 +:104A90001D928A95E9F7C9C0D62E662379F2209136 +:104AA000B201822F82958F7090E0029774F080910E +:104AB000AD019091AE019A8389831B82FD82EC82C5 +:104AC0002E83CE0101960E94452086E0F801ADEAD2 +:104AD000B1E001900D928A95E1F70E94D0236FC05A +:104AE000E216F30628F0C701821B930B9C0104C059 +:104AF000209530952E0D3F1D283C310508F052C001 +:104B0000D62E662309F49ACFE5132CC074132AC05D +:104B10008091B20180FD1DC0982F92959F70C9F0C1 +:104B2000D80115968C9315979F3039F09F5F929519 +:104B3000907F8F70892B15968C93C8010E94452019 +:104B400086E0F801ADEAB1E001900D928A95E1F7B7 +:104B500036C086E0F801ADEAB1E001900D928A9589 +:104B6000E1F763C04D875E878D859E850E945D233A +:104B7000882379F086E0F801ADEAB1E001900D926A +:104B80008A95E1F70E94D0230E94C223DD24D394AA +:104B90004CC08091B20181608093B201C8010E9433 +:104BA000452043C07E2DF98AE88A89890E948223A4 +:104BB000EDEAF1E086E0DF011D928A95E9F70E94B7 +:104BC000C22333C0662309F439CF4D875E878D85B4 +:104BD0009E850E945D23882309F430CFCBCF4D877B +:104BE0005E878D859E850E948228292F22952F70B1 +:104BF00030E0223031052CF49F7041F0811106C065 +:104C00000CC0243031052CF49F7049F4805E88304C +:104C100020F0C8010E944520CF2CDC2C06C0D80112 +:104C200015969C91907F91F7F8CF8D2D62960FB6D7 +:104C3000F894DEBF0FBECDBFDF91CF911F910F91D2 +:104C4000FF90EF90DF90CF9008951F93CF93DF9365 +:104C5000CDB7DEB72C970FB6F894DEBF0FBECDBF31 +:104C60004F83588769877A878B879C87CE01079601 +:104C70000E9438248823C1F02F8138858A859B853E +:104C8000892B31F03F3F11F080E003C02F3FE1F767 +:104C900081E0811147C04F81588569857A858B8570 +:104CA0009C850E9491233EC086E0FE013796DE017E +:104CB000119601900D928A95E1F7FF81E8854A856A +:104CC0005B854115510531F0EF3F31F481E0FF3F45 +:104CD00019F403C081E001C080E080FD23C0209171 +:104CE0007C0130E0C90101968770992760917B01B2 +:104CF00070E086179707F1F1F983EA835D834C83AF +:104D000096E0929FD001939FB00D1124A358BE4FFF +:104D1000FE01319601900D929A95E1F780937C0106 +:104D20000E94A12316E080917B0190917C0189175C +:104D300079F1189FC001112483589E4F0E94382496 +:104D4000882331F1E0917B011E9FF0011124E3588B +:104D5000FE4F4081518162817381848195810E94DF +:104D6000912380917B0190E0019687709927809331 +:104D70007B01D9CF0E94592310927C0110927B01B4 +:104D8000EDEAF1E086E0DF011D928A95E9F7CACFEE +:104D90002C960FB6F894DEBF0FBECDBFDF91CF913A +:104DA0001F910895EF92FF920F931F93CF93DF937C +:104DB0009C01009709F471C0F12CEE24E394E90101 +:104DC0002196F9018491843740F4843008F056C06C +:104DD000813081F0823021F160C0853709F449C00B +:104DE000C0F19CE7980F903708F057C08F770E946A +:104DF000E81F46C089010E5F1F4FFE01849190E2BB +:104E0000980F983050F48770FE2D01C0FF0F8A95DF +:104E1000EAF78F2F0E94552915C00E94201F14C049 +:104E200089010E5F1F4FFE01849190E2980F983028 +:104E300068F48770FE2D01C0FF0F8A95EAF78F2F67 +:104E40000E945B290E947E29E8011AC00E94E81F87 +:104E5000FBCF2E5F3F4FFE01C491CC2341F08FE981 +:104E60009FE00197F1F700C00000C150F6CFE901C3 +:104E700007C0FE01F490E901229602C00E94201FA3 +:104E80008F2D882341F0EFE9FFE03197F1F700C063 +:104E900000008150F6CF9E0192CFDF91CF911F91FC +:104EA0000F91FF90EF90089508956093B70170936C +:104EB000B8018093B9019093BA010C9447230F93E2 +:104EC0001F930091B7011091B8012091B901309161 +:104ED000BA01062B172B282B392B0093B7011093FF +:104EE000B8012093B9013093BA011F910F910C942E +:104EF00047230F931F930091B7011091B8012091A0 +:104F0000B9013091BA0106231723282339230093CE +:104F1000B7011093B8012093B9013093BA011F91E2 +:104F20000F910C9447230F931F930091B701109199 +:104F3000B8012091B9013091BA0106271727282717 +:104F400039270093B7011093B8012093B90130932A +:104F5000BA011F910F910C9447231092B301109244 +:104F6000B4011092B5011092B6010C94472341E0B0 +:104F700050E060E070E004C0440F551F661F771FCB +:104F80008A95D2F74093B3015093B4016093B50171 +:104F90007093B6010C94472341E050E060E070E06C +:104FA00004C0440F551F661F771F8A95D2F7809162 +:104FB000B3019091B401A091B501B091B601842BD9 +:104FC000952BA62BB72B8093B3019093B401A0939C +:104FD000B501B093B6010C94472341E050E060E086 +:104FE00070E004C0440F551F661F771F8A95D2F7E3 +:104FF00040955095609570958091B3019091B40162 +:10500000A091B501B091B60184239523A623B723BF +:105010008093B3019093B401A093B501B093B6010E +:105020000C94472341E050E060E070E004C0440F7E +:10503000551F661F771F8A95D2F78091B301909113 +:10504000B401A091B501B091B60184279527A62798 +:10505000B7278093B3019093B401A093B501B093A7 +:10506000B6010C9447230F931F930091B301109145 +:10507000B4012091B5013091B601062B172B282BD6 +:10508000392B0093B3011093B4012093B5013093F1 +:10509000B6011F910F910C9447230F931F9300911A +:1050A000B3011091B4012091B5013091B6010623EE +:1050B0001723282339230093B3011093B4012093BD +:1050C000B5013093B6011F910F910C9447230F93B4 +:1050D0001F930091B3011091B4012091B50130915B +:1050E000B60106271727282739270093B301109305 +:1050F000B4012093B5013093B6011F910F910C9428 +:1051000047230895CF92DF92EF92FF920F931F9360 +:10511000CF93DF93EC01C090B701D090B801E0903D +:10512000B901F090BA018091B3019091B401A091BE +:10513000B501B091B601C82AD92AEA2AFB2A0FE1A3 +:1051400010E0B701A601002E04C07695679557952B +:1051500047950A94D2F740FF07C0BE01802F0E94F6 +:10516000C2158130910539F40150110950F7BE0183 +:1051700080E00E94C215DF91CF911F910F91FF90A7 +:10518000EF90DF90CF90089590910C019923D9F082 +:1051900090910D019923B9F0982F96959695969533 +:1051A0009F3088F5E0910E01F0910F01E90FF11D9C +:1051B000877021E030E001C0220F8A95EAF78181F3 +:1051C000822B8183089540910E0150910F0120E0C0 +:1051D00030E09FEFFA01E20FF31F6281681799F048 +:1051E0009F3F19F4611101C0922F2F5F3F4F2E3066 +:1051F000310581F79F3F39F0FA01E90FF11D97FD65 +:10520000FA9582830895089590910C019923E1F015 +:1052100090910D019923C1F0982F969596959695AA +:105220009F3020F5E0910E01F0910F01E90FF11D83 +:10523000877021E030E001C0220F8A95EAF72095BF +:10524000818128232183089540910E0150910F01FF +:1052500020E030E0FA01E20FF31F9281981301C0C1 +:1052600012822F5F3F4F2E303105A1F7089581E064 +:1052700090E0E0910E01F0910F01E80FF91F10820C +:10528000019680319105A9F708959091CD01982B51 +:105290009093CD01089580959091CD01982390939E +:1052A000CD0108951092CD0108959091CC01982BD5 +:1052B0009093CC01089580959091CC019823909380 +:1052C000CC0108951092CC0108958093BB010895FC +:1052D0001092BB01089540910E0150910F0120E002 +:1052E00030E080E0FA01E20FF31F918191118F5FAE +:1052F0002F5F3F4F2F303105A9F70895E0910E0140 +:10530000F0910F018091CD018083E0910E01F09129 +:105310000F0180819091CC01892B80839091BB01FA +:10532000992361F0E0910E01F0910F018081892BAA +:1053300080830E946B2981111092BB0180910E0124 +:1053400090910F010C94041ECF92DF92EF92FF9286 +:105350000F931F936C01EE24FF24C114D104E104C8 +:10536000F10421F46B017C0180E001C080E133276E +:105370002F2D1E2D0D2D011511052105310519F0BB +:10538000885F6801790197018601A4E03695279529 +:1053900017950795AA95D1F7011511052105310536 +:1053A00019F08C5F6801790197018601F2E036956A +:1053B000279517950795FA95D1F701151105210540 +:1053C000310519F08E5F68017901B701A601769564 +:1053D000679557954795452B462B472B09F08F5FCF +:1053E0001F910F91FF90EF90DF90CF9008958091E3 +:1053F000E701843009F11092CF0120E488E190E0C8 +:105400000FB6F894A895809360000FBE20936000BB +:1054100083B7817F846083BF83B7816083BF7894C3 +:10542000889583B78E7F83BF88E10FB6F894809309 +:105430006000109260000FBE089508950895CF9304 +:105440000E941D2A0E94EC130E941E2AC0E08C2F8D +:105450000E94D914811105C0CF5FCE30C1F780E022 +:1054600001C081E0CF9108950E9459230E94F81D48 +:105470000C94FD1682E084BD93E095BD9AEF97BD34 +:1054800080936E0008952FB7F8948091D001909189 +:10549000D101A091D201B091D3012FBF0895CF9235 +:1054A000DF92EF92FF920F931F932FB7F8944091E2 +:1054B000D0015091D1016091D2017091D3012FBFE1 +:1054C0006A017B01EE24FF248C0120E030E0C0164D +:1054D000D106E206F30610F441505109481B590B5E +:1054E000CA011F910F91FF90EF90DF90CF90089528 +:1054F0001F920F920FB60F9211248F939F93AF9329 +:10550000BF938091D0019091D101A091D201B0912F +:10551000D3010196A11DB11D8093D0019093D101BB +:10552000A093D201B093D301BF91AF919F918F917E +:105530000F900FBE0F901F9018950E94FE1AF894BE +:105540002FEF87EA91E6215080409040E1F700C0BC +:10555000000087E090EBDC018093F0019093F10173 +:10556000A093F201B093F3012CE088E190E00FB634 +:10557000F894A895809360000FBE20936000FFCF41 +:10558000EF92FF920F931F93CF93DF93E82EF12CAE +:105590008F2D0E94D914C0E0D0E0082F10E09801B0 +:1055A0000C2E02C0359527950A94E2F720FD05C020 +:1055B0002196C630D10599F709C06C2F7F2D80E068 +:1055C0000E94A015E812F4CF81E005C0F3948EE0AC +:1055D000F812DECF80E0DF91CF911F910F91FF9005 +:1055E000EF900895CF93C82F8CE20E94C02A8823A1 +:1055F00021F08C2FCF910C94C02A80E0CF91089598 +:10560000CF930E94452C811102C00E942B2CC5E62D +:10561000C15049F00E94EC138FE39CE90197F1F728 +:1056200000C00000F5CF89E20E94F22A811111C169 +:105630008AE20E94F22A81110E942B2C85E00E94AE +:10564000F22A81110E949D2A0E94502C8093CE0143 +:1056500087E00E94F22A882399F18BE10E94F22AC6 +:10566000882351F09091CE0191FB882780F921E0A9 +:10567000822780FB91F922C08EE00E94F22A8823C3 +:1056800051F09091CE0192FB882780F921E082278A +:1056900080FB92F913C080E10E94F22A9091CE0122 +:1056A000882341F093FB882780F921E0822780FB43 +:1056B00093F904C0892F809580FB90F99093CE01D7 +:1056C0008091CE010E94542C0E94622C8093E101B3 +:1056D00080EE0E94F22A882341F08091E101982F08 +:1056E000909590FB80F98093E10189E30E94F22A72 +:1056F000882359F09091E10191FB882780F921E0FE +:10570000822780FB91F99093E10182EE0E94F22AB8 +:10571000882359F09091E10192FB882780F921E0DC +:10572000822780FB92F99093E10186EE0E94F22A93 +:10573000882359F09091E10193FB882780F921E0BB +:10574000822780FB93F99093E10183EE0E94F22A75 +:10575000882359F09091E10194FB882780F921E09A +:10576000822780FB94F99093E10185E30E94F22A5D +:10577000882359F09091E10195FB882780F921E079 +:10578000822780FB95F99093E10181E30E94F22A40 +:10579000882359F09091E10196FB882780F921E058 +:1057A000822780FB96F99093E10181E10E94F22A21 +:1057B000882359F09091E10197FB882780F921E037 +:1057C000822780FB97F99093E1018091E1010E948B +:1057D000662C8091E10187FB882780F980930D0179 +:1057E00087E20E94F22AC82F8EE10E94F22A8111DC +:1057F000C2608FE10E94F22A8111C46080E20E949F +:10580000F22A8111C86081E20E94F22A8111C061EE +:1058100082E20E94F22A8111C06283E20E94F22A8F +:105820008111C06484E20E94F22A882311F0C068CA +:1058300002C0CC2329F08C2F0E945D2C6C2F03C05A +:105840000E94592C682F70E080E090E0CF910C947A +:105850005527CF9108956DEE7EEF80E090E00E9495 +:10586000813260E082E090E00E94733260E083E089 +:1058700090E00E94733260E084E090E00E94733216 +:1058800060E085E090E00C94733280E090E00E944C +:105890006D3221E08D3E9E4F09F020E0822F089569 +:1058A00082E090E00C946532682F82E090E00C94E6 +:1058B000733283E090E00C946532682F83E090E0CF +:1058C0000C94733284E090E00C946532682F84E08D +:1058D00090E00C9473328091D60180FF0BC06091F0 +:1058E000130185E0689FB001112475956795759542 +:1058F00067952AC081FF09C06091130185E0689F08 +:10590000B0011124759567951FC082FF07C0609193 +:10591000130185E0689FB001112416C04091D701A2 +:105920004423C9F060911201461788F720911301B2 +:1059300085E0289F90011124429FC001439F900D54 +:10594000112470E00E9437326038710540F461150F +:10595000710539F002C065E070E0862F08958FE789 +:10596000089581E008958091D60180FF08C060917C +:10597000110170E0759567957595679521C081FF58 +:1059800006C06091110170E07595679519C082FF9E +:1059900004C06091110170E010C08091D70188238C +:1059A000C1F0609110018617A0F790911101989FA6 +:1059B000C001112470E00E9437326038710528F46C +:1059C0006115710521F0862F08958FE7089581E014 +:1059D000089561E070E0F4CF803F21F40E946B2CC9 +:1059E000819504C0813F29F40E946B2C8093DA01D9 +:1059F0000895823F21F40E946B2C819504C0833F5F +:105A000029F40E946B2C8093D9010895893F19F4E1 +:105A10000E94B32C05C08A3F31F40E94B32C8195BB +:105A20008093DB0108958B3F21F40E94B32C819574 +:105A300004C08C3F29F40E94B32C8093DC010895AC +:105A4000843F21F48091D801816017C0853F21F403 +:105A50008091D801826011C0863F21F48091D801E5 +:105A600084600BC0873F21F48091D801886005C015 +:105A7000883F31F48091D80180618093D8010895E6 +:105A80008D3F21F48091D60181600BC08E3F21F4BF +:105A90008091D601826005C08F3F29F48091D601A4 +:105AA00084608093D6010895803F39F48091DA01B3 +:105AB00087FF6CC01092DA0169C0813F29F48091A0 +:105AC000DA011816BCF362C09091D901823F29F423 +:105AD00097FF5CC01092D90159C0833F19F4191681 +:105AE000CCF354C0893F41F48091DB0118160CF0CF +:105AF0004DC01092DB014AC08A3F29F48091DB013E +:105B000087FF44C0F6CF8B3F39F48091DC0187FFDB +:105B10003DC01092DC013AC08C3F29F48091DC0139 +:105B20001816BCF333C0843F21F48091D8018E7FD6 +:105B300017C0853F21F48091D8018D7F11C0863F29 +:105B400021F48091D8018B7F0BC0873F21F4809195 +:105B5000D801877F05C0883F31F48091D8018F7EBE +:105B60008093D80113C08D3F21F48091D6018E7FA0 +:105B70000BC08E3F21F48091D6018D7F05C08F3FF1 +:105B800029F48091D6018B7F8093D6018091D90131 +:105B900081110EC08091DA0181110AC08091DB0170 +:105BA000811106C08091DC01811102C01092D701E1 +:105BB000089588ED91E00E940F1E0E94432A909361 +:105BC000D5018093D40108951F93CF93DF938091E3 +:105BD000D4019091D5010E944F2A4091D7014423CE +:105BE00021F02091140130E006C0209115015AE007 +:105BF000259F900111248217930708F482C0809199 +:105C0000D9011091DA01D091DB01C091DC01811141 +:105C100007C0111105C0D11103C0CC2309F471C014 +:105C20004F3F19F04F5F4093D701181624F40E949C +:105C30006B2C8093D9018091D90187FF05C00E9408 +:105C40006B2C81958093D901111624F40E946B2C42 +:105C50008093DA018091DA0187FF05C00E946B2CE6 +:105C600081958093DA016091D901662339F1109111 +:105C7000DA01112319F1772767FD7095872F972F88 +:105C80000E94483123E333E343E35FE30E94AC31F6 +:105C90000E9415316093D901612F772767FD7095B8 +:105CA000872F972F0E94483123E333E343E35FE3D9 +:105CB0000E94AC310E9415316093DA011D1624F464 +:105CC0000E94B32C8093DB018091DB0187FF05C02C +:105CD0000E94B32C81958093DB011C1624F40E9452 +:105CE000B32C8093DC018091DC0187FF05C00E940A +:105CF000B32C81958093DC01DF91CF911F910C949F +:105D0000D92DDF91CF911F910895E8EDF1E085E065 +:105D1000DF011D928A95E9F71092D7011092D60102 +:105D20000895833081F128F4813059F08230D1F028 +:105D30000895853009F449C0B8F1863009F456C099 +:105D4000089520911501862F90E0820F911D8F3FBD +:105D5000910520F4620F6093150108958FEF8093F1 +:105D60001501089520911401862F90E0820F911D56 +:105D70008F3F910520F4620F6093140108958FEF17 +:105D800080931401089520911301862F90E0820FD3 +:105D9000911D8F3F910520F4620F609313010895C8 +:105DA0008FEF80931301089520911201862F90E0C8 +:105DB000820F911D8F3F910520F4620F60931201B5 +:105DC00008958FEF80931201089520911101862F7D +:105DD00090E0820F911D8F3F910520F4620F609338 +:105DE000110108958FEF8093110108952091100102 +:105DF000862F90E0820F911D8F3F910520F4620F56 +:105E00006093100108958FEF8093100108958330FF +:105E100011F128F4813049F0823091F008958530F5 +:105E200081F120F18630C1F1089580911501681744 +:105E300020F4861B80931501089510921501089592 +:105E400080911401681720F4861B80931401089533 +:105E500010921401089580911301681720F4861B95 +:105E600080931301089510921301089580911201F7 +:105E7000681720F4861B8093120108951092120176 +:105E8000089580911101681720F4861B80931101F9 +:105E9000089510921101089580911001681720F45F +:105EA000861B8093100108951092100108958D3182 +:105EB00009F442C020F58E3009F479C070F48730BF +:105EC00009F45EC020F4863009F442C033C0883043 +:105ED000D1F18B3009F4A7C02DC0863109F4A3C0DD +:105EE00038F4803109F46DC0813109F47BC022C0DF +:105EF000893109F498C08B3109F44FC01BC0853338 +:105F000009F479C048F4873209F475C008F478C000 +:105F1000893209F470C00EC0833438F48A3308F033 +:105F200071C0883309F47FC005C0833409F463C0AD +:105F30008834C1F080E008950E94CF300E94F81D9F +:105F40000E94FD1670C00E94502C0E94622C6BC0F3 +:105F50008091CE01817F8E7F8093CE0181E08093FE +:105F6000DE0108950E9459232FEF83ED90E3215025 +:105F700080409040E1F700C000000E949D2A53C07D +:105F80009091CE01892F817090FF03C0917F9E7FF9 +:105F900026C091609093CE0146C09091CE0191FBB6 +:105FA000882780F921E0822780FB91F913C0909126 +:105FB000CE0192FB882780F921E0822780FB92F9AD +:105FC00009C09091CE0193FB882780F921E08227B8 +:105FD00080FB93F99093CE01882329F191609093EF +:105FE000CE0108950E94592380910D0191E08927E7 +:105FF00080930D0118C061E070E080E090E00FC078 +:1060000023EE01C027EC280F61E070E080E090E013 +:1060100004C0660F771F881F991F2A95D2F70E9428 +:1060200055270E94592381E0089580E0089580E07B +:106030000895CF93C82F8091DE01813079F018F058 +:106040008230D1F184C0A0910E01B0910F018C91EA +:10605000813169F0823209F07CC009C0A0910E0143 +:10606000B0910F018C91813111F0823249F48C2F63 +:106070000E94153081111DC08C2F0E94572F1AC00D +:106080008C2F0E941730811114C0C43179F048F46C +:10609000CB3079F0C03109F060C082E08093DE013E +:1060A00008C0C93219F0C83321F057C01092DE0180 +:1060B00054C081E0817053C0C93289F118F5C431F0 +:1060C00071F1A8F4C73009F046C08AE08093150149 +:1060D00094E19093140193E0909313018093120143 +:1060E00088E08093110188E28093100134C0CE5182 +:1060F000C63088F5EC2FF0E0E65DFE4F808180939E +:10610000DD0129C0CE34E9F020F4CB3421F56AE07A +:1061100013C0C13579F0C235F1F461E00DC0809152 +:10612000DD01882319F01092DD0115C081E0809314 +:10613000DE0115C061E006C08091DD010E94912E54 +:106140000AC06AE08091DD010E94072F04C010920E +:10615000DE0180E004C081E002C080E0ABCFCF91DF +:106160000895E1E8F0E0808188608083808181602B +:1061700080838FB7F89493E09093890090ED90938B +:1061800088008FBF0895EFE6F0E080818260808311 +:106190000895EFE6F0E080818D7F80830895EFE63B +:1061A000F0E0808192E08927808308951F920F920A +:1061B0000FB60F9211242F933F934F935F936F93DA +:1061C0007F938F939F93AF93BF93EF93FF938091B0 +:1061D000DF019091E00101969093E0018093DF014F +:1061E000811103C082E00E94FD16E091E001E69576 +:1061F000E695F0E0E65CF04EE4918091DF018E13CD +:1062000003C080E00E94FD16FF91EF91BF91AF9116 +:106210009F918F917F916F915F914F913F912F91BE +:106220000F900FBE0F901F90189504D06894B11175 +:106230008DC0089570D088F09F5790F0B92F99279E +:10624000B751A0F0D1F0660F771F881F991F1AF081 +:10625000BA95C9F712C0B13081F077D0B1E0089596 +:1062600074C0672F782F8827B85F39F0B93FCCF317 +:10627000869577956795B395D9F73EF49095809577 +:10628000709561957F4F8F4F9F4F0895E89409C097 +:1062900097FB3EF490958095709561957F4F8F4F59 +:1062A0009F4F9923A9F0F92F96E9BB279395F6956F +:1062B000879577956795B795F111F8CFFAF4BB0FED +:1062C00011F460FF1BC06F5F7F4F8F4F9F4F16C051 +:1062D000882311F096E911C0772321F09EE8872FDB +:1062E000762F05C0662371F096E8862F70E060E097 +:1062F0002AF09A95660F771F881FDAF7880F969510 +:10630000879597F9089557FD9058440F551F59F0F8 +:106310005F3F71F04795880F97FB991F61F09F3F92 +:1063200079F087950895121613061406551FF2CFBB +:106330004695F1DF08C0161617061806991FF1CF0B +:1063400086957105610508940895E894BB27662732 +:106350007727CB0197F908950BD078C069D028F042 +:106360006ED018F0952309F05AC05FC01124EECF0B +:10637000CADFA0F3959FD1F3950F50E0551F629FA0 +:10638000F001729FBB27F00DB11D639FAA27F00D8E +:10639000B11DAA1F649F6627B00DA11D661F829FB5 +:1063A0002227B00DA11D621F739FB00DA11D621F9A +:1063B000839FA00D611D221F749F3327A00D611DB7 +:1063C000231F849F600D211D822F762F6A2F112499 +:1063D0009F5750408AF0E1F088234AF0EE0FFF1FEC +:1063E000BB1F661F771F881F91505040A9F79E3F23 +:1063F000510570F014C0AACF5F3FECF3983EDCF378 +:10640000869577956795B795F795E7959F5FC1F75F +:10641000FE2B880F911D9695879597F9089597F90A +:106420009F6780E870E060E008959FEF80EC08953A +:1064300000240A9416161706180609060895002463 +:106440000A9412161306140605060895092E0394DD +:10645000000C11F4882352F0BB0F40F4BF2B11F451 +:1064600060FF04C06F5F7F4F8F4F9F4F089597FB72 +:10647000072E16F4009407D077FD09D00E94513200 +:1064800007FC05D03EF4909581959F4F0895709537 +:1064900061957F4F0895EE0FFF1F0590F491E02D59 +:1064A0000994AA1BBB1B51E107C0AA1FBB1FA6175B +:1064B000B70710F0A61BB70B881F991F5A95A9F7AD +:1064C00080959095BC01CD010895F999FECF92BDBC +:1064D00081BDF89A992780B50895A8E1B0E042E01F +:1064E00050E00C948832262FF999FECF1FBA92BD46 +:1064F00081BD20BD0FB6F894FA9AF99A0FBE0196A5 +:1065000008950E947332272F0C947432DC01CB0162 +:10651000FC01F999FECF06C0F2BDE1BDF89A3196B3 +:1065200000B40D9241505040B8F70895F894FFCF51 +:106530002002FF168C176917351702170101BC01DD +:1065400028080A03140A3F4D3639FB1EAE1E781E7A +:106550003F1ED21DEB1D041E1D1E01020304050675 +:04656000070809001F +:00000001FF From 1d13aa933bbb57bf0c1fe0196981b81233c3df97 Mon Sep 17 00:00:00 2001 From: IBNobody Date: Mon, 28 Mar 2016 19:45:20 -0500 Subject: [PATCH 20/45] Minor Tweaks and Documentation Fixed compiler warning by including bootloader.h in keymap_common.c. Changed FORCE_NKRO to only be applied if NKRO_ENABLE is defined. Added extra documentation to the template config.h --- quantum/keymap_common.c | 1 + quantum/template/config.h | 53 ++++++++++++++++++++++++++++++-------- tmk_core/common/keyboard.c | 2 +- 3 files changed, 44 insertions(+), 12 deletions(-) diff --git a/quantum/keymap_common.c b/quantum/keymap_common.c index 7068ca4f31..2eef4f15a7 100644 --- a/quantum/keymap_common.c +++ b/quantum/keymap_common.c @@ -25,6 +25,7 @@ along with this program. If not, see . #include "debug.h" #include "backlight.h" #include "keymap_midi.h" +#include "bootloader.h" #include #include diff --git a/quantum/template/config.h b/quantum/template/config.h index dae4b63130..e6fb7866c6 100644 --- a/quantum/template/config.h +++ b/quantum/template/config.h @@ -32,36 +32,67 @@ along with this program. If not, see . #define MATRIX_ROWS 2 #define MATRIX_COLS 3 -// Planck PCB default pin-out -// Change this to how you wired your keyboard -// COLS: Left to right, ROWS: Top to bottom +/* + * Keyboard Matrix Assignments + * + * Change this to how you wired your keyboard + * COLS: AVR pins used for columns, left to right + * ROWS: AVR pins used for rows, top to bottom + * DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode) + * ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode) + * +*/ #define COLS (int []){ F1, F0, B0 } #define ROWS (int []){ D0, D5 } /* COL2ROW or ROW2COL */ #define DIODE_DIRECTION COL2ROW -/* define if matrix has ghost */ +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 + +/* define if matrix has ghost (lacks anti-ghosting diodes) */ //#define MATRIX_HAS_GHOST /* number of backlight levels */ #define BACKLIGHT_LEVELS 3 -/* Set 0 if debouncing isn't needed */ -#define DEBOUNCE 5 - /* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ #define LOCKING_SUPPORT_ENABLE /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE -/* Force NKRO Mode - If forced on, must be disabled via magic key (default = LShift+RShift+N) */ +/* + * Force NKRO + * + * Force NKRO (nKey Rollover) to be enabled by default, regardless of the saved + * state in the bootmagic EEPROM settings. (Note that NKRO must be enabled in the + * makefile for this to work.) + * + * If forced on, NKRO can be disabled via magic key (default = LShift+RShift+N) + * until the next keyboard reset. + * + * NKRO may prevent your keystrokes from being detected in the BIOS, but it is + * fully operational during normal computer usage. + * + * For a less heavy-handed approach, enable NKRO via magic key (LShift+RShift+N) + * or via bootmagic (hold SPACE+N while plugging in the keyboard). Once set by + * bootmagic, NKRO mode will always be enabled until it is toggled again during a + * power-up. + * + */ //#define FORCE_NKRO /* - * Magic key options - * These options allow the magic key functionality to be changed. This is useful - * if your keyboard/keypad is missing keys and you want magic key support. + * Magic Key Options + * + * Magic keys are hotkey commands that allow control over firmware functions of + * the keyboard. They are best used in combination with the HID Listen program, + * found here: https://www.pjrc.com/teensy/hid_listen.html + * + * The options below allow the magic key functionality to be changed. This is + * useful if your keyboard/keypad is missing keys and you want magic key support. + * */ /* key combination for magic key command */ diff --git a/tmk_core/common/keyboard.c b/tmk_core/common/keyboard.c index e668084858..302b3ec87c 100644 --- a/tmk_core/common/keyboard.c +++ b/tmk_core/common/keyboard.c @@ -92,7 +92,7 @@ void keyboard_init(void) backlight_init(); #endif -#ifdef FORCE_NKRO +#if defined(NKRO_ENABLE) && defined(FORCE_NKRO) keyboard_nkro = true; #endif From 60570f3e37c27e7583ccab862bbd88f8f38f1d8c Mon Sep 17 00:00:00 2001 From: Noah Andrews Date: Mon, 28 Mar 2016 22:02:52 -0400 Subject: [PATCH 21/45] Added clarifying steps to Windows section of build guide --- BUILD_GUIDE.md | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/BUILD_GUIDE.md b/BUILD_GUIDE.md index e8b242e4e3..22df53c30d 100644 --- a/BUILD_GUIDE.md +++ b/BUILD_GUIDE.md @@ -3,11 +3,13 @@ ## Build Environment Setup ### Windows -1. Install [MHV AVR Tools](https://infernoembedded.com/sites/default/files/project/MHV_AVR_Tools_20131101.exe). Disable smatch, but **be sure to leave the option to add the tools to the PATH checked**. -2. Install [MinGW](https://sourceforge.net/projects/mingw/files/Installer/mingw-get-setup.exe/download). During installation, uncheck the option to install a graphical user interface. **DO NOT change the default installation folder.** The scripts depend on the default location. -3. Clone this repository. [This link will download it as a zip file, which you'll need to extract.](https://github.com/jackhumbert/qmk_firmware/archive/master.zip) Open the extracted folder in Windows Explorer. -4. Right-click on the 1-setup-path-win batch script, select "Run as administrator", and accept the User Account Control prompt. Press the spacebar to dismiss the success message in the command prompt that pops up. -5. Right-click on the 2-setup-environment-win batch script, select "Run as administrator", and accept the User Account Control prompt. This part may take a couple of minutes, and you'll need to approve a driver installation, but once it finishes, your environment is complete! +1. If you have ever installed WinAVR, uninstall it. +2. Install [MHV AVR Tools](https://infernoembedded.com/sites/default/files/project/MHV_AVR_Tools_20131101.exe). Disable smatch, but **be sure to leave the option to add the tools to the PATH checked**. +3. Install [MinGW](https://sourceforge.net/projects/mingw/files/Installer/mingw-get-setup.exe/download). During installation, uncheck the option to install a graphical user interface. **DO NOT change the default installation folder.** The scripts depend on the default location. +4. Clone this repository. [This link will download it as a zip file, which you'll need to extract.](https://github.com/jackhumbert/qmk_firmware/archive/master.zip) Open the extracted folder in Windows Explorer. +5. Right-click on the 1-setup-path-win batch script, select "Run as administrator", and accept the User Account Control prompt. Press the spacebar to dismiss the success message in the command prompt that pops up. +6. Right-click on the 2-setup-environment-win batch script, select "Run as administrator", and accept the User Account Control prompt. This part may take a couple of minutes, and you'll need to approve a driver installation, but once it finishes, your environment is complete! +7. Future build commands should be run from the standard Windows command prompt, which you can find by searching for "command prompt" from the start menu or start screen. Ignore the "MHV AVR Shell". ### Mac If you're using [homebrew,](http://brew.sh/) you can use the following commands: From ac22d1c185fe3caf3581650390309aa8232e55bb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stephan=20Bo=CC=88sebeck?= Date: Tue, 29 Mar 2016 13:02:14 +0200 Subject: [PATCH 22/45] added CTL_Shift / Hash macro --- keyboard/ergodox_ez/keymaps/osx_de/keymap.c | 35 ++++++++++++++------- 1 file changed, 24 insertions(+), 11 deletions(-) diff --git a/keyboard/ergodox_ez/keymaps/osx_de/keymap.c b/keyboard/ergodox_ez/keymaps/osx_de/keymap.c index 0349c749bb..df8d996508 100644 --- a/keyboard/ergodox_ez/keymaps/osx_de/keymap.c +++ b/keyboard/ergodox_ez/keymaps/osx_de/keymap.c @@ -16,6 +16,7 @@ #define M_DE_PLUS_CTRLALT 12 #define M_DE_CIRC_CTRLCMD 13 #define M_TOGGLE_5 14 +#define M_CTL_SFT_HASH 15 #define SM_SMILE 4 #define SM_SMIRK 5 @@ -30,15 +31,15 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Keymap 0: Basic layer * - * ,--------------------------------------------------. ,--------------------------------------------------. - * | ESC | 1 | 2 | 3 | 4 | 5 |CTL_SFT| | # | 6 | 7 | 8 | 9 | 0 | ß | - * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | TAB | Q | W | E | R | T | CMD | | CMD | Z | U | I | O | P | ü | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | LALT | A | S | D | F | G |------| |------| H | J | K | L | ö | ä/RALT| - * |--------+------+------+------+------+------| LALT | | RALT |------+------+------+------+------+--------| - * | LShift |Y/Ctrl| X | C | V | B | | | | N | M | , | . |-/Ctrl| RShift | - * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * ,-----------------------------------------------------. ,--------------------------------------------------. + * | ESC | 1 | 2 | 3 | 4 | 5 |CTL_SFT/#| |CTL_SFT/#| 6 | 7 | 8 | 9 | 0 | ß | + * |--------+------+------+------+------+----------------| |---------+------+------+------+------+------+--------| + * | TAB | Q | W | E | R | T | CMD | | CMD | Z | U | I | O | P | ü | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | LALT | A | S | D | F | G |---------| |---------| H | J | K | L | ö | ä/RALT| + * |--------+------+------+------+------+------| LALT | | RALT |------+------+------+------+------+--------| + * | LShift |Y/Ctrl| X | C | V | B | | | | N | M | , | . |-/Ctrl| RShift | + * `--------+------+------+------+------+----------------' `-------------+------+------+------+------+--------' * |event.pressed) { + start=timer_read(); + return MACRO(D(LCTRL),D(LSFT),END); + } else { + if (timer_elapsed(start) > 150){ + return MACRO(U(LCTRL),U(LSFT),END); + } else { + return MACRO(U(LCTRL),U(LSFT),T(BSLS),END); + } + } + break; case M_DE_CIRC_CTRLCMD: if (record->event.pressed) { start = timer_read(); From 2ae44470e01287c48f3852ac54a87d7fc4e747c2 Mon Sep 17 00:00:00 2001 From: Noah Andrews Date: Tue, 29 Mar 2016 12:06:32 -0400 Subject: [PATCH 23/45] Fix error in Planck makefile comment [This comment](https://www.reddit.com/r/olkb/comments/428umx/rgb_underglow/czaivbc) states that because both audio output and RGB support require the user of timer 3, they can't be enabled at the same time. That makes sense, I can see where audio.c uses timer 3. But this comment in the code states that the incompatibility is with MIDI support, which doesn't make sense based on what I see in the code. Please enlighten me if I'm mistaken. --- keyboard/planck/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/keyboard/planck/Makefile b/keyboard/planck/Makefile index 307b0c7f4f..03d2601761 100644 --- a/keyboard/planck/Makefile +++ b/keyboard/planck/Makefile @@ -143,7 +143,7 @@ BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality # AUDIO_ENABLE = YES # Audio output on port C6 # UNICODE_ENABLE = YES # Unicode # BLUETOOTH_ENABLE = yes # Enable Bluetooth with the Adafruit EZ-Key HID -# RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with MIDI at the same time. +# RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. ifdef BACKLIGHT_ENABLE SRC += backlight.c From 77fa2b0056f10c079af541a746fb12cb96fabe72 Mon Sep 17 00:00:00 2001 From: mbarkhau Date: Tue, 29 Mar 2016 18:35:47 +0200 Subject: [PATCH 24/45] Update compile_keymap.py --- .../keymaps/german-manuneo/compile_keymap.py | 24 +++++++++---------- 1 file changed, 11 insertions(+), 13 deletions(-) diff --git a/keyboard/ergodox_ez/keymaps/german-manuneo/compile_keymap.py b/keyboard/ergodox_ez/keymaps/german-manuneo/compile_keymap.py index 9767b1e074..af68672226 100644 --- a/keyboard/ergodox_ez/keymaps/german-manuneo/compile_keymap.py +++ b/keyboard/ergodox_ez/keymaps/german-manuneo/compile_keymap.py @@ -121,32 +121,30 @@ def loads(raw_data): // # start of the comment (.*) # the comment $ # until the end of line - """, re.MULTILINE | re.VERBOSE - ) - + """, re.MULTILINE | re.VERBOSE) + INLINE_COMMENT_RE = re.compile(r""" - (?:[\,\"\[\]\{\}\d]) # anythig that might end a expression + ([\,\"\[\]\{\}\d]) # anythig that might end a expression \s+ # comment must be preceded by whitespace // # start of the comment \s # and succeded by whitespace - ([^\"\]\}\{\[]*) # the comment (except things which might be json) + (?:[^\"\]\}\{\[]*) # the comment (except things which might be json) $ # until the end of line - """, re.MULTILINE | re.VERBOSE - ) - + """, re.MULTILINE | re.VERBOSE) + TRAILING_COMMA_RE = re.compile(r""" , # the comma - \s* # arbitrary whitespace (including newlines) + (?:\s*) # arbitrary whitespace + $ # only works if the trailing comma is followed by newline + (\s*) # arbitrary whitespace ([\]\}]) # end of an array or object - """, re.MULTILINE | re.VERBOSE - ) - + """, re.MULTILINE | re.VERBOSE) if isinstance(raw_data, bytes): raw_data = raw_data.decode('utf-8') raw_data = ONELINE_COMMENT_RE.sub(r"", raw_data) raw_data = INLINE_COMMENT_RE.sub(r"\1", raw_data) - raw_data = TRAILING_COMMA_RE.sub(r"\1", raw_data) + raw_data = TRAILING_COMMA_RE.sub(r"\1\2", raw_data) return json.loads(raw_data) From 8f1ea16ad5e34446bad63bf2357432f256c4298a Mon Sep 17 00:00:00 2001 From: Noah Andrews Date: Tue, 29 Mar 2016 16:35:06 -0400 Subject: [PATCH 25/45] Fix #198 --- 1-setup-path-win.bat | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/1-setup-path-win.bat b/1-setup-path-win.bat index 49fb00e149..6957dbc3f4 100644 --- a/1-setup-path-win.bat +++ b/1-setup-path-win.bat @@ -1,9 +1,14 @@ @echo off -setx /M path "%PATH%;C:\MinGW\bin;C:\MinGW\msys\1.0\bin" > nul 2>&1 + +reg add "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /f /v Path /t REG_SZ /d "%path%;C:\MinGW\bin;C:\MinGW\msys\1.0\bin" > nul +echo. + if NOT ["%errorlevel%"]==["0"] ( - echo FAILED. Rerun with administrator privileges. - pause + echo FAILED. You probably just need to run the script with administrator privileges. ) else ( echo Success! - pause + setx QMK QMK > nul ) + +echo. +pause From 95fba250ef2029ccdedb34500c5d1e96f6d065cf Mon Sep 17 00:00:00 2001 From: Noah Andrews Date: Tue, 29 Mar 2016 21:53:36 -0400 Subject: [PATCH 26/45] Updated several keyboard folders to use new keymap naming scheme --- BUILD_GUIDE.md | 5 ++++- keyboard/alps64/Makefile | 4 ++-- .../alps64/{keymap_plain.c => keymaps/default.c} | 0 keyboard/alps64/{keymap_hasu.c => keymaps/hasu.c} | 0 keyboard/atomic/Makefile | 4 ++-- keyboard/atomic/README.md | 4 ++-- .../atomic/keymaps/{keymap_abienz.c => abienz.c} | 0 .../atomic/keymaps/{keymap_default.c => default.c} | 0 .../keymaps/{keymap_michelle.c => michelle.c} | 0 keyboard/atreus/Makefile | 4 ++-- keyboard/atreus/README.md | 4 ++-- .../atreus/keymaps/{keymap_default.c => default.c} | 0 keyboard/atreus/keymaps/{keymap_gerb.c => gerb.c} | 0 keyboard/gh60/Makefile | 4 ++-- keyboard/gh60/Makefile.pjrc | 4 ++-- keyboard/gh60/README.md | 14 +++++++------- keyboard/gh60/{keymap_hasu.c => keymaps/hasu.c} | 0 keyboard/gh60/{keymap_hhkb.c => keymaps/hhkb.c} | 0 keyboard/gh60/{keymap_plain.c => keymaps/plain.c} | 0 keyboard/gh60/{keymap_poker.c => keymaps/poker.c} | 0 .../{keymap_poker_bit.c => keymaps/poker_bit.c} | 0 .../{keymap_poker_set.c => keymaps/poker_set.c} | 0 .../gh60/{keymap_spacefn.c => keymaps/spacefn.c} | 0 keyboard/hhkb/Makefile | 8 ++++---- keyboard/hhkb/Makefile.pjrc | 4 ++-- keyboard/hhkb/Makefile.rn42 | 8 ++++---- keyboard/hhkb/README.md | 2 +- keyboard/hhkb/{keymap_hasu.c => keymaps/hasu.c} | 0 keyboard/hhkb/{keymap_hhkb.c => keymaps/hhkb.c} | 0 keyboard/hhkb/{keymap_jp.c => keymaps/jp.c} | 0 .../hhkb/{keymap_spacefn.c => keymaps/spacefn.c} | 0 keyboard/hhkb_qmk/Makefile | 4 ++-- keyboard/hhkb_qmk/README.md | 4 ++-- .../keymaps/{keymap_default.c => default.c} | 0 .../hhkb_qmk/keymaps/{keymap_lxol.c => lxol.c} | 0 keyboard/jd45/Makefile | 4 ++-- .../jd45/keymaps/{keymap_default.c => default.c} | 0 .../jd45/keymaps/{keymap_justin.c => justin.c} | 0 keyboard/planck/README.md | 4 ++-- .../common_keymaps/keymap_mitch.c | 0 quantum/template/README.md | 2 +- 41 files changed, 45 insertions(+), 42 deletions(-) rename keyboard/alps64/{keymap_plain.c => keymaps/default.c} (100%) rename keyboard/alps64/{keymap_hasu.c => keymaps/hasu.c} (100%) rename keyboard/atomic/keymaps/{keymap_abienz.c => abienz.c} (100%) rename keyboard/atomic/keymaps/{keymap_default.c => default.c} (100%) rename keyboard/atomic/keymaps/{keymap_michelle.c => michelle.c} (100%) rename keyboard/atreus/keymaps/{keymap_default.c => default.c} (100%) rename keyboard/atreus/keymaps/{keymap_gerb.c => gerb.c} (100%) rename keyboard/gh60/{keymap_hasu.c => keymaps/hasu.c} (100%) rename keyboard/gh60/{keymap_hhkb.c => keymaps/hhkb.c} (100%) rename keyboard/gh60/{keymap_plain.c => keymaps/plain.c} (100%) rename keyboard/gh60/{keymap_poker.c => keymaps/poker.c} (100%) rename keyboard/gh60/{keymap_poker_bit.c => keymaps/poker_bit.c} (100%) rename keyboard/gh60/{keymap_poker_set.c => keymaps/poker_set.c} (100%) rename keyboard/gh60/{keymap_spacefn.c => keymaps/spacefn.c} (100%) rename keyboard/hhkb/{keymap_hasu.c => keymaps/hasu.c} (100%) rename keyboard/hhkb/{keymap_hhkb.c => keymaps/hhkb.c} (100%) rename keyboard/hhkb/{keymap_jp.c => keymaps/jp.c} (100%) rename keyboard/hhkb/{keymap_spacefn.c => keymaps/spacefn.c} (100%) rename keyboard/hhkb_qmk/keymaps/{keymap_default.c => default.c} (100%) rename keyboard/hhkb_qmk/keymaps/{keymap_lxol.c => lxol.c} (100%) rename keyboard/jd45/keymaps/{keymap_default.c => default.c} (100%) rename keyboard/jd45/keymaps/{keymap_justin.c => justin.c} (100%) rename keyboard/planck/{ => old_keymap_files}/common_keymaps/keymap_mitch.c (100%) diff --git a/BUILD_GUIDE.md b/BUILD_GUIDE.md index 22df53c30d..f7a57d2fc9 100644 --- a/BUILD_GUIDE.md +++ b/BUILD_GUIDE.md @@ -44,7 +44,10 @@ If you have any problems building the firmware, you can try using a tool called 4. Once you're in the correct keyboard-specific folder, run the `make` command. This should output a lot of information about the build process. ## Customizing, Building, and Deploying Your Firmware -1. Running the `make` command from your keyboard's folder will generate a .hex file based on the default keymap. All keymaps for a particular keyboard live in the `keymaps` folder in that keyboard's folder. To create your own keymap, copy `keymaps/default/keymap.c` to the `keymaps` folder, and rename it with your name, for example jack.c. Or, if you don't care about the ability to share your keymap with the community via GitHub, you can just modify the default keymap itself. Details on how to program keymap files can be found in other guides. + +Note: Some keyboard folders have non-standard organizations, and may not even support specifying alternate keymaps. Until these get reorganized, you will need to edit their default keymaps directly. + +1. Running the `make` command from your keyboard's folder will generate a .hex file based on the default keymap. All keymaps for a particular keyboard live in the `keymaps` folder in that keyboard's folder. To create your own keymap, copy `keymaps/default/keymap.c` to the `keymaps` folder, and rename it with your name, for example jack.c. Or, if you don't care about the ability to share your keymap with the community via GitHub, you can just modify the default keymap itself. Details on how to program keymap files can be found in other guides. 2. To build a keymap other than the default, type `KEYMAP=` after `make`. So if I've named my keymap jack.c, the full command would be `make KEYMAP=jack`. 3. How you deploy the firmware will depend on whether you are using a PCB or a Teensy. In both cases, you'll need to put the keyboard in bootloader mode, either by pressing a button on the PCB/Teensy or pressing the key with the `RESET` keycode. Then, if you're using a PCB, just run `make KEYMAP= dfu` to both build and deploy the firmware. If you're using a Teensy, you'll probably need to take the .hex file that make produces in the keyboard's folder, and deploy it using the [Teensy Loader.](https://www.pjrc.com/teensy/loader.html) diff --git a/keyboard/alps64/Makefile b/keyboard/alps64/Makefile index e90dcedb67..7634c4280e 100644 --- a/keyboard/alps64/Makefile +++ b/keyboard/alps64/Makefile @@ -53,9 +53,9 @@ SRC = keymap_common.c \ led.c ifdef KEYMAP - SRC := keymap_$(KEYMAP).c $(SRC) + SRC := keymaps/$(KEYMAP).c $(SRC) else - SRC := keymap_plain.c $(SRC) + SRC := keymaps/default.c $(SRC) endif CONFIG_H = config.h diff --git a/keyboard/alps64/keymap_plain.c b/keyboard/alps64/keymaps/default.c similarity index 100% rename from keyboard/alps64/keymap_plain.c rename to keyboard/alps64/keymaps/default.c diff --git a/keyboard/alps64/keymap_hasu.c b/keyboard/alps64/keymaps/hasu.c similarity index 100% rename from keyboard/alps64/keymap_hasu.c rename to keyboard/alps64/keymaps/hasu.c diff --git a/keyboard/atomic/Makefile b/keyboard/atomic/Makefile index e678b4efa8..da6d0ac60c 100644 --- a/keyboard/atomic/Makefile +++ b/keyboard/atomic/Makefile @@ -54,9 +54,9 @@ SRC = atomic.c \ backlight.c ifdef KEYMAP - SRC := keymaps/keymap_$(KEYMAP).c $(SRC) + SRC := keymaps/$(KEYMAP).c $(SRC) else - SRC := keymaps/keymap_default.c $(SRC) + SRC := keymaps/default.c $(SRC) endif CONFIG_H = config.h diff --git a/keyboard/atomic/README.md b/keyboard/atomic/README.md index c8e83cf55a..0e42370ba6 100644 --- a/keyboard/atomic/README.md +++ b/keyboard/atomic/README.md @@ -16,10 +16,10 @@ Depending on which keymap you would like to use, you will have to compile slight To build with the default keymap, simply run `make`. ### Other Keymaps -Several version of keymap are available in advance but you are recommended to define your favorite layout yourself. To define your own keymap create file named `keymap_.c` and see keymap document (you can find in top README.md) and existent keymap files. +Several version of keymap are available in advance but you are recommended to define your favorite layout yourself. To define your own keymap create a file in the keymaps folder named `.c` and see keymap document (you can find in top README.md) and existent keymap files. To build the firmware binary hex file with a keymap just do `make` with `KEYMAP` option like: ``` $ make KEYMAP=[default|jack|] ``` -Keymaps follow the format **__keymap\_\.c__** and are stored in the `keymaps` folder. +Keymaps follow the format **__\.c__** and are stored in the `keymaps` folder. diff --git a/keyboard/atomic/keymaps/keymap_abienz.c b/keyboard/atomic/keymaps/abienz.c similarity index 100% rename from keyboard/atomic/keymaps/keymap_abienz.c rename to keyboard/atomic/keymaps/abienz.c diff --git a/keyboard/atomic/keymaps/keymap_default.c b/keyboard/atomic/keymaps/default.c similarity index 100% rename from keyboard/atomic/keymaps/keymap_default.c rename to keyboard/atomic/keymaps/default.c diff --git a/keyboard/atomic/keymaps/keymap_michelle.c b/keyboard/atomic/keymaps/michelle.c similarity index 100% rename from keyboard/atomic/keymaps/keymap_michelle.c rename to keyboard/atomic/keymaps/michelle.c diff --git a/keyboard/atreus/Makefile b/keyboard/atreus/Makefile index 2e542d62ed..a6fddd70d2 100644 --- a/keyboard/atreus/Makefile +++ b/keyboard/atreus/Makefile @@ -53,9 +53,9 @@ TARGET_DIR = . SRC = atreus.c ifdef KEYMAP - SRC := keymaps/keymap_$(KEYMAP).c $(SRC) + SRC := keymaps/$(KEYMAP).c $(SRC) else - SRC := keymaps/keymap_default.c $(SRC) + SRC := keymaps/default.c $(SRC) endif ifdef TEENSY2 diff --git a/keyboard/atreus/README.md b/keyboard/atreus/README.md index 4db7ac1203..aacf2841f4 100644 --- a/keyboard/atreus/README.md +++ b/keyboard/atreus/README.md @@ -177,10 +177,10 @@ Depending on which keymap you would like to use, you will have to compile slight To build with the default keymap, simply run `make`. ### Other Keymaps -Several version of keymap are available in advance but you are recommended to define your favorite layout yourself. To define your own keymap create file named `keymap_.c` and see keymap document (you can find in top README.md) and existent keymap files. +Several version of keymap are available in advance but you are recommended to define your favorite layout yourself. To define your own keymap create file named `.c` and see keymap document (you can find in top README.md) and existent keymap files. To build the firmware binary hex file with a keymap just do `make` with `KEYMAP` option like: ``` $ make KEYMAP=[default|jack|] ``` -Keymaps follow the format **__keymap\_\.c__** and are stored in the `keymaps` folder. +Keymaps follow the format **__\.c__** and are stored in the `keymaps` folder. diff --git a/keyboard/atreus/keymaps/keymap_default.c b/keyboard/atreus/keymaps/default.c similarity index 100% rename from keyboard/atreus/keymaps/keymap_default.c rename to keyboard/atreus/keymaps/default.c diff --git a/keyboard/atreus/keymaps/keymap_gerb.c b/keyboard/atreus/keymaps/gerb.c similarity index 100% rename from keyboard/atreus/keymaps/keymap_gerb.c rename to keyboard/atreus/keymaps/gerb.c diff --git a/keyboard/gh60/Makefile b/keyboard/gh60/Makefile index daba0f6449..4c8f9dc8ab 100644 --- a/keyboard/gh60/Makefile +++ b/keyboard/gh60/Makefile @@ -53,9 +53,9 @@ SRC = keymap_common.c \ led.c ifdef KEYMAP - SRC := keymap_$(KEYMAP).c $(SRC) + SRC := keymaps/$(KEYMAP).c $(SRC) else - SRC := keymap_poker.c $(SRC) + SRC := keymaps/poker.c $(SRC) endif CONFIG_H = config.h diff --git a/keyboard/gh60/Makefile.pjrc b/keyboard/gh60/Makefile.pjrc index 11bd3b7840..8ed73a248d 100644 --- a/keyboard/gh60/Makefile.pjrc +++ b/keyboard/gh60/Makefile.pjrc @@ -53,9 +53,9 @@ SRC = keymap_common.c \ led.c ifdef KEYMAP - SRC := keymap_$(KEYMAP).c $(SRC) + SRC := keymaps/$(KEYMAP).c $(SRC) else - SRC := keymap_poker.c $(SRC) + SRC := keymaps/poker.c $(SRC) endif CONFIG_H = config.h diff --git a/keyboard/gh60/README.md b/keyboard/gh60/README.md index 510cb5c8b6..41a757ea3a 100644 --- a/keyboard/gh60/README.md +++ b/keyboard/gh60/README.md @@ -21,7 +21,7 @@ Use `make -f Makefile.pjrc` if you want to use PJRC stack but I find no reason t ## Keymap -Several version of keymap are available in advance but you are recommended to define your favorite layout yourself. To define your own keymap create file named `keymap_.c` and see keymap document(you can find in top README.md) and existent keymap files. +Several version of keymap are available in advance but you are recommended to define your favorite layout yourself. To define your own keymap create file named `.c` in the keymaps folder, and see keymap document(you can find in top README.md) and existent keymap files. To build firmware binary hex file with a certain keymap just do `make` with `KEYMAP` option like: @@ -29,8 +29,8 @@ To build firmware binary hex file with a certain keymap just do `make` with `KEY ### 1 Poker -[keymap_poker.c](keymap_poker.c) emulates original Poker layers -while both [keymap_poker_bit.c](keymap_poker_bit.c) and [keymap_poker_set.c](keymap_poker_set.c) implements same layout in different way and they fix a minor issue of original Poker and enhance arrow keys. +[poker.c](keymaps/poker.c) emulates original Poker layers +while both [poker_bit.c](keymaps/poker_bit.c) and [poker_set.c](keymaps/poker_set.c) implement the same layout in different ways and they fix a minor issue of original Poker and enhance arrow keys. Fn + Esc = ` Fn + {left, down, up, right} = {home, pgdown, pgup, end} @@ -63,7 +63,7 @@ while both [keymap_poker_bit.c](keymap_poker_bit.c) and [keymap_poker_set.c](key ### 2. Plain Without any Fn layer this will be useful if you want to use key remapping tool like AHK on host. -See [keymap_plain.c](keymap_plain.c) for detail. +See [plain.c](keymaps/plain.c) for detail. #### 1.0 Plain Default layer ,-----------------------------------------------------------. @@ -80,11 +80,11 @@ See [keymap_plain.c](keymap_plain.c) for detail. ### 3. Hasu -This is my favorite keymap with HHKB Fn, Vi cursor and Mousekey layer. See [keymap_hasu.c](keymap_hasu.c) for detail. +This is my favorite keymap with HHKB Fn, Vi cursor and Mousekey layer. See [hasu.c](keymaps/hasu.c) for detail. ### 4. SpaceFN -This layout proposed by spiceBar uses space bar to change layer with using Dual role key technique. See [keymap_spacefn.c](keymap_spacefn.c) and [SpaceFN discussion](http://geekhack.org/index.php?topic=51069.0). +This layout proposed by spiceBar uses space bar to change layer with using Dual role key technique. See [spacefn.c](keymaps/spacefn.c) and [SpaceFN discussion](http://geekhack.org/index.php?topic=51069.0). #### 4.0 Default layer ,-----------------------------------------------------------. @@ -113,7 +113,7 @@ This layout proposed by spiceBar uses space bar to change layer with using Dual ### 5. HHKB -[keymap_hhkb.c](keymap_hhkb.c) emulates original HHKB layers. +[hhkb.c](keymaps/hhkb.c) emulates original HHKB layers. #### 5.0: Default layer ,-----------------------------------------------------------. |Esc| 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =| \| `| diff --git a/keyboard/gh60/keymap_hasu.c b/keyboard/gh60/keymaps/hasu.c similarity index 100% rename from keyboard/gh60/keymap_hasu.c rename to keyboard/gh60/keymaps/hasu.c diff --git a/keyboard/gh60/keymap_hhkb.c b/keyboard/gh60/keymaps/hhkb.c similarity index 100% rename from keyboard/gh60/keymap_hhkb.c rename to keyboard/gh60/keymaps/hhkb.c diff --git a/keyboard/gh60/keymap_plain.c b/keyboard/gh60/keymaps/plain.c similarity index 100% rename from keyboard/gh60/keymap_plain.c rename to keyboard/gh60/keymaps/plain.c diff --git a/keyboard/gh60/keymap_poker.c b/keyboard/gh60/keymaps/poker.c similarity index 100% rename from keyboard/gh60/keymap_poker.c rename to keyboard/gh60/keymaps/poker.c diff --git a/keyboard/gh60/keymap_poker_bit.c b/keyboard/gh60/keymaps/poker_bit.c similarity index 100% rename from keyboard/gh60/keymap_poker_bit.c rename to keyboard/gh60/keymaps/poker_bit.c diff --git a/keyboard/gh60/keymap_poker_set.c b/keyboard/gh60/keymaps/poker_set.c similarity index 100% rename from keyboard/gh60/keymap_poker_set.c rename to keyboard/gh60/keymaps/poker_set.c diff --git a/keyboard/gh60/keymap_spacefn.c b/keyboard/gh60/keymaps/spacefn.c similarity index 100% rename from keyboard/gh60/keymap_spacefn.c rename to keyboard/gh60/keymaps/spacefn.c diff --git a/keyboard/hhkb/Makefile b/keyboard/hhkb/Makefile index 5a179bd24d..d434246cef 100644 --- a/keyboard/hhkb/Makefile +++ b/keyboard/hhkb/Makefile @@ -129,17 +129,17 @@ NKRO_ENABLE = yes # USB Nkey Rollover # Keymap file # ifdef KEYMAP - SRC := keymap_$(KEYMAP).c $(SRC) + SRC := keymaps/$(KEYMAP).c $(SRC) else ifdef HHKB_JP - SRC := keymap_jp.c $(SRC) + SRC := keymaps/jp.c $(SRC) else - SRC := keymap_hhkb.c $(SRC) + SRC := keymaps/hhkb.c $(SRC) endif endif -ifneq (, $(or $(findstring keymap_jp.c, $(SRC)), $(findstring yes, $(HHKB_JP)))) +ifneq (, $(or $(findstring jp.c, $(SRC)), $(findstring yes, $(HHKB_JP)))) OPT_DEFS += -DHHKB_JP endif diff --git a/keyboard/hhkb/Makefile.pjrc b/keyboard/hhkb/Makefile.pjrc index 7d0f8c3a9c..403a8ec60a 100644 --- a/keyboard/hhkb/Makefile.pjrc +++ b/keyboard/hhkb/Makefile.pjrc @@ -18,9 +18,9 @@ SRC = keymap_common.c \ led.c ifdef KEYMAP - SRC := keymap_$(KEYMAP).c $(SRC) + SRC := keymaps/$(KEYMAP).c $(SRC) else - SRC := keymap_hasu.c $(SRC) + SRC := keymaps/hasu.c $(SRC) endif CONFIG_H = config.h diff --git a/keyboard/hhkb/Makefile.rn42 b/keyboard/hhkb/Makefile.rn42 index cbb2b744c9..a730442af0 100644 --- a/keyboard/hhkb/Makefile.rn42 +++ b/keyboard/hhkb/Makefile.rn42 @@ -122,17 +122,17 @@ COMMAND_ENABLE = yes # Commands for debug and configuration # Keymap file # ifdef KEYMAP - SRC := keymap_$(KEYMAP).c $(SRC) + SRC := keymaps/$(KEYMAP).c $(SRC) else ifdef HHKB_JP - SRC := keymap_jp.c $(SRC) + SRC := keymaps/jp.c $(SRC) else - SRC := keymap_hhkb.c $(SRC) + SRC := keymaps/hhkb.c $(SRC) endif endif -ifneq (, $(or $(findstring keymap_jp.c, $(SRC)), $(findstring yes, $(HHKB_JP)))) +ifneq (, $(or $(findstring jp.c, $(SRC)), $(findstring yes, $(HHKB_JP)))) OPT_DEFS += -DHHKB_JP endif diff --git a/keyboard/hhkb/README.md b/keyboard/hhkb/README.md index fcd72e1941..e20c23d823 100644 --- a/keyboard/hhkb/README.md +++ b/keyboard/hhkb/README.md @@ -76,7 +76,7 @@ Use [Teensy Loader] if your controller is Teensy/Teensy++. ##Keymap -To define your own keymap create file named `keymap_.c` and see [keymap document](../../doc/keymap.md) and existent keymap files. +To define your own keymap create a file in the keymaps folder named `.c` and see keymap document (you can find in top README.md) and existent keymap files. ##Hardware diff --git a/keyboard/hhkb/keymap_hasu.c b/keyboard/hhkb/keymaps/hasu.c similarity index 100% rename from keyboard/hhkb/keymap_hasu.c rename to keyboard/hhkb/keymaps/hasu.c diff --git a/keyboard/hhkb/keymap_hhkb.c b/keyboard/hhkb/keymaps/hhkb.c similarity index 100% rename from keyboard/hhkb/keymap_hhkb.c rename to keyboard/hhkb/keymaps/hhkb.c diff --git a/keyboard/hhkb/keymap_jp.c b/keyboard/hhkb/keymaps/jp.c similarity index 100% rename from keyboard/hhkb/keymap_jp.c rename to keyboard/hhkb/keymaps/jp.c diff --git a/keyboard/hhkb/keymap_spacefn.c b/keyboard/hhkb/keymaps/spacefn.c similarity index 100% rename from keyboard/hhkb/keymap_spacefn.c rename to keyboard/hhkb/keymaps/spacefn.c diff --git a/keyboard/hhkb_qmk/Makefile b/keyboard/hhkb_qmk/Makefile index 8bd44100b7..21ba261a23 100644 --- a/keyboard/hhkb_qmk/Makefile +++ b/keyboard/hhkb_qmk/Makefile @@ -54,9 +54,9 @@ SRC = hhkb_qmk.c \ matrix.c ifdef KEYMAP - SRC := keymaps/keymap_$(KEYMAP).c $(SRC) + SRC := keymaps/keymaps/$(KEYMAP).c $(SRC) else - SRC := keymaps/keymap_default.c $(SRC) + SRC := keymaps/keymaps/default.c $(SRC) endif CONFIG_H = config.h diff --git a/keyboard/hhkb_qmk/README.md b/keyboard/hhkb_qmk/README.md index 606025c411..389407b3aa 100644 --- a/keyboard/hhkb_qmk/README.md +++ b/keyboard/hhkb_qmk/README.md @@ -171,10 +171,10 @@ Depending on which keymap you would like to use, you will have to compile slight To build with the default keymap, simply run `make`. ### Other Keymaps -Several version of keymap are available in advance but you are recommended to define your favorite layout yourself. To define your own keymap create file named `keymap_.c` and see keymap document (you can find in top README.md) and existent keymap files. +Several version of keymap are available in advance but you are recommended to define your favorite layout yourself. To define your own keymap create a file in the keymaps folder named `.c` and see keymap document (you can find in top README.md) and existent keymap files. To build the firmware binary hex file with a keymap just do `make` with `KEYMAP` option like: ``` $ make KEYMAP=[default|jack|] ``` -Keymaps follow the format **__keymap\_\.c__** and are stored in the `keymaps` folder. +Keymaps follow the format **__\.c__** and are stored in the `keymaps` folder. diff --git a/keyboard/hhkb_qmk/keymaps/keymap_default.c b/keyboard/hhkb_qmk/keymaps/default.c similarity index 100% rename from keyboard/hhkb_qmk/keymaps/keymap_default.c rename to keyboard/hhkb_qmk/keymaps/default.c diff --git a/keyboard/hhkb_qmk/keymaps/keymap_lxol.c b/keyboard/hhkb_qmk/keymaps/lxol.c similarity index 100% rename from keyboard/hhkb_qmk/keymaps/keymap_lxol.c rename to keyboard/hhkb_qmk/keymaps/lxol.c diff --git a/keyboard/jd45/Makefile b/keyboard/jd45/Makefile index 076dced829..f6a8d10c58 100644 --- a/keyboard/jd45/Makefile +++ b/keyboard/jd45/Makefile @@ -54,9 +54,9 @@ SRC = jd45.c \ backlight.c ifdef KEYMAP - SRC := keymaps/keymap_$(KEYMAP).c $(SRC) + SRC := keymaps/keymaps/(KEYMAP).c $(SRC) else - SRC := keymaps/keymap_default.c $(SRC) + SRC := keymaps/keymaps/default.c $(SRC) endif CONFIG_H = config.h diff --git a/keyboard/jd45/keymaps/keymap_default.c b/keyboard/jd45/keymaps/default.c similarity index 100% rename from keyboard/jd45/keymaps/keymap_default.c rename to keyboard/jd45/keymaps/default.c diff --git a/keyboard/jd45/keymaps/keymap_justin.c b/keyboard/jd45/keymaps/justin.c similarity index 100% rename from keyboard/jd45/keymaps/keymap_justin.c rename to keyboard/jd45/keymaps/justin.c diff --git a/keyboard/planck/README.md b/keyboard/planck/README.md index 3ba0cc1527..d9a1e3beee 100644 --- a/keyboard/planck/README.md +++ b/keyboard/planck/README.md @@ -16,13 +16,13 @@ Depending on which keymap you would like to use, you will have to compile slight To build with the default keymap, simply run `make`. ### Other Keymaps -Several version of keymap are available in advance but you are recommended to define your favorite layout yourself. To define your own keymap create file named `.c` and see keymap document (you can find in top README.md) and existent keymap files. +Several version of keymap are available in advance but you are recommended to define your favorite layout yourself. To define your own keymap create file named `.c` in the keymaps folder, and see keymap document (you can find in top README.md) and existent keymap files. To build the firmware binary hex file with a keymap just do `make` with `KEYMAP` option like: ``` $ make KEYMAP=[default|jack|] ``` -Keymaps follow the format **__.c__** and are stored in the `keymaps` folder. +Keymaps follow the format **__\.c__** and are stored in the `keymaps` folder. ### Notable forks (which some of the keymap files are from) - [Shane's Fork](https://github.com/shanecelis/tmk_keyboard/tree/master/keyboard/planck) diff --git a/keyboard/planck/common_keymaps/keymap_mitch.c b/keyboard/planck/old_keymap_files/common_keymaps/keymap_mitch.c similarity index 100% rename from keyboard/planck/common_keymaps/keymap_mitch.c rename to keyboard/planck/old_keymap_files/common_keymaps/keymap_mitch.c diff --git a/quantum/template/README.md b/quantum/template/README.md index dc163a2f4b..39f9f59d10 100644 --- a/quantum/template/README.md +++ b/quantum/template/README.md @@ -15,7 +15,7 @@ Depending on which keymap you would like to use, you will have to compile slight To build with the default keymap, simply run `make`. ### Other Keymaps -Several version of keymap are available in advance but you are recommended to define your favorite layout yourself. To define your own keymap create file named `.c` and see keymap document (you can find in top README.md) and existent keymap files. +Several version of keymap are available in advance but you are recommended to define your favorite layout yourself. To define your own keymap create file named `.c` in the keymaps folder, and see keymap document (you can find in top README.md) and existent keymap files. To build the firmware binary hex file with a keymap just do `make` with `KEYMAP` option like: ``` From ac0729787ff0e8d1bd1202a28f5edf9125c00b0c Mon Sep 17 00:00:00 2001 From: Jack Humbert Date: Wed, 30 Mar 2016 00:43:07 -0400 Subject: [PATCH 27/45] preonic update --- keyboard/preonic/Makefile | 56 ++-- keyboard/preonic/Makefile.pjrc | 116 --------- keyboard/preonic/PCB_GUIDE.md | 116 --------- keyboard/preonic/README.md | 49 +--- keyboard/preonic/__avr_gdbinit | 6 - keyboard/preonic/analog.c | 53 ---- keyboard/preonic/analog.h | 36 --- keyboard/preonic/beeps.c | 246 ------------------ keyboard/preonic/beeps.h | 12 - keyboard/preonic/config.h | 18 +- keyboard/preonic/config_definitions.h | 50 ---- keyboard/preonic/extended_keymap_common.c | 216 --------------- keyboard/preonic/extended_keymap_common.h | 181 ------------- .../extended_keymap_default.c | 70 ----- .../extended_keymaps/extended_keymap_lock.c | 81 ------ keyboard/preonic/keymap_midi.c | 110 -------- keyboard/preonic/keymap_midi.h | 220 ---------------- keyboard/preonic/led.c | 38 --- keyboard/preonic/matrix.c | 234 ----------------- quantum/keymap_midi.c | 4 +- 20 files changed, 66 insertions(+), 1846 deletions(-) delete mode 100644 keyboard/preonic/Makefile.pjrc delete mode 100644 keyboard/preonic/PCB_GUIDE.md delete mode 100644 keyboard/preonic/__avr_gdbinit delete mode 100644 keyboard/preonic/analog.c delete mode 100644 keyboard/preonic/analog.h delete mode 100644 keyboard/preonic/beeps.c delete mode 100644 keyboard/preonic/beeps.h delete mode 100644 keyboard/preonic/config_definitions.h delete mode 100644 keyboard/preonic/extended_keymap_common.c delete mode 100644 keyboard/preonic/extended_keymap_common.h delete mode 100644 keyboard/preonic/extended_keymaps/extended_keymap_default.c delete mode 100644 keyboard/preonic/extended_keymaps/extended_keymap_lock.c delete mode 100644 keyboard/preonic/keymap_midi.c delete mode 100644 keyboard/preonic/keymap_midi.h delete mode 100644 keyboard/preonic/led.c delete mode 100644 keyboard/preonic/matrix.c diff --git a/keyboard/preonic/Makefile b/keyboard/preonic/Makefile index 0145e44bc6..664aff7321 100644 --- a/keyboard/preonic/Makefile +++ b/keyboard/preonic/Makefile @@ -27,7 +27,7 @@ # make flip-ee = Download the eeprom file to the device, using Atmel FLIP # (must have Atmel FLIP installed). # -# make debug = Start either simulavr or avarice as specified for debugging, +# make debug = Start either simulavr or avarice as specified for debugging, # with avr-gdb or avr-insight as the front end for debugging. # # make filename.s = Just compile filename.c into the assembler code only. @@ -39,25 +39,41 @@ #---------------------------------------------------------------------------- # Target file name (without extension). -TARGET = preonic_lufa +TARGET = preonic + # Directory common source filess exist TOP_DIR = ../.. +TMK_DIR = ../../tmk_core # Directory keyboard dependent files exist TARGET_DIR = . # # project specific files -SRC = extended_keymap_common.c \ - matrix.c \ - led.c \ - backlight.c +SRC = preonic.c + +ifdef keymap + KEYMAP = $(keymap) +endif ifdef KEYMAP - SRC := extended_keymaps/extended_keymap_$(KEYMAP).c $(SRC) +ifneq ("$(wildcard keymaps/$(KEYMAP).c)","") + KEYMAP_FILE = keymaps/$(KEYMAP).c else - SRC := extended_keymaps/extended_keymap_default.c $(SRC) +ifneq ("$(wildcard keymaps/$(KEYMAP)/keymap.c)","") + KEYMAP_FILE = keymaps/$(KEYMAP)/keymap.c +else +$(error Keymap file does not exist) +endif endif +else +ifneq ("$(wildcard keymaps/default.c)","") + KEYMAP_FILE = keymaps/default.c +else + KEYMAP_FILE = keymaps/default/keymap.c +endif +endif +SRC := $(KEYMAP_FILE) $(SRC) CONFIG_H = config.h @@ -120,24 +136,26 @@ EXTRAKEY_ENABLE = yes # Audio control and System control(+450) CONSOLE_ENABLE = yes # Console for debug(+400) COMMAND_ENABLE = yes # Commands for debug and configuration # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE -#SLEEP_LED_ENABLE = yes # Breathing sleep LED during USB suspend -NKRO_ENABLE = yes # USB Nkey Rollover - not yet supported in LUFA +# SLEEP_LED_ENABLE = yes # Breathing sleep LED during USB suspend +# NKRO_ENABLE = yes # USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality -MIDI_ENABLE = yes # MIDI controls -BACKLIGHT_ENABLE = yes - -ifdef MIDI_ENABLE - SRC += keymap_midi.c \ - beeps.c +MIDI_ENABLE = YES # MIDI controls +AUDIO_ENABLE = YES # Audio output on port C6 +# UNICODE_ENABLE = YES # Unicode +# BLUETOOTH_ENABLE = yes # Enable Bluetooth with the Adafruit EZ-Key HID +# RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with MIDI at the same time. + +ifdef BACKLIGHT_ENABLE + SRC += backlight.c endif + # Optimize size but this may cause error "relocation truncated to fit" #EXTRALDFLAGS = -Wl,--relax # Search Path VPATH += $(TARGET_DIR) VPATH += $(TOP_DIR) +VPATH += $(TMK_DIR) -include $(TOP_DIR)/protocol/lufa.mk -include $(TOP_DIR)/common.mk -include $(TOP_DIR)/rules.mk +include $(TOP_DIR)/quantum/quantum.mk diff --git a/keyboard/preonic/Makefile.pjrc b/keyboard/preonic/Makefile.pjrc deleted file mode 100644 index be83ba18b1..0000000000 --- a/keyboard/preonic/Makefile.pjrc +++ /dev/null @@ -1,116 +0,0 @@ -#---------------------------------------------------------------------------- -# On command line: -# -# make all = Make software. -# -# make clean = Clean out built project files. -# -# make coff = Convert ELF to AVR COFF. -# -# make extcoff = Convert ELF to AVR Extended COFF. -# -# make program = Download the hex file to the device. -# Please customize your programmer settings(PROGRAM_CMD) -# -# make teensy = Download the hex file to the device, using teensy_loader_cli. -# (must have teensy_loader_cli installed). -# -# make dfu = Download the hex file to the device, using dfu-programmer (must -# have dfu-programmer installed). -# -# make flip = Download the hex file to the device, using Atmel FLIP (must -# have Atmel FLIP installed). -# -# make dfu-ee = Download the eeprom file to the device, using dfu-programmer -# (must have dfu-programmer installed). -# -# make flip-ee = Download the eeprom file to the device, using Atmel FLIP -# (must have Atmel FLIP installed). -# -# make debug = Start either simulavr or avarice as specified for debugging, -# with avr-gdb or avr-insight as the front end for debugging. -# -# make filename.s = Just compile filename.c into the assembler code only. -# -# make filename.i = Create a preprocessed source file for use in submitting -# bug reports to the GCC project. -# -# To rebuild project do "make clean" then "make all". -#---------------------------------------------------------------------------- - -# Target file name (without extension). -TARGET = gh60_pjrc - -# Directory common source filess exist -TOP_DIR = ../.. - -# Directory keyboard dependent files exist -TARGET_DIR = . - -# project specific files -SRC = keymap_common.c \ - matrix.c \ - led.c - -ifdef KEYMAP - SRC := keymap_$(KEYMAP).c $(SRC) -else - SRC := keymap_jack.c $(SRC) -endif - -CONFIG_H = config.h - - -# MCU name, you MUST set this to match the board you are using -# type "make clean" after changing this, so all files will be rebuilt -MCU = atmega32u4 -#MCU = at90usb1286 - - -# Processor frequency. -# Normally the first thing your program should do is set the clock prescaler, -# so your program will run at the correct speed. You should also set this -# variable to same clock speed. The _delay_ms() macro uses this, and many -# examples use this variable to calculate timings. Do not add a "UL" here. -F_CPU = 16000000 - - -# Boot Section Size in *bytes* -# Teensy halfKay 512 -# Atmel DFU loader 4096 -# LUFA bootloader 4096 -OPT_DEFS += -DBOOTLOADER_SIZE=4096 - - -# Build Options -# comment out to disable the options. -# -BOOTMAGIC_ENABLE = yes # Virtual DIP switch configuration(+1000) -MOUSEKEY_ENABLE = yes # Mouse keys(+5000) -EXTRAKEY_ENABLE = yes # Audio control and System control(+600) -CONSOLE_ENABLE = yes # Console for debug -COMMAND_ENABLE = yes # Commands for debug and configuration -SLEEP_LED_ENABLE = yes # Breathing sleep LED during USB suspend -NKRO_ENABLE = yes # USB Nkey Rollover(+500) -#PS2_MOUSE_ENABLE = yes # PS/2 mouse(TrackPoint) support - - -# Search Path -VPATH += $(TARGET_DIR) -VPATH += $(TOP_DIR) - -include $(TOP_DIR)/protocol/pjrc.mk -include $(TOP_DIR)/common.mk -include $(TOP_DIR)/rules.mk - -plain: OPT_DEFS += -DKEYMAP_PLAIN -plain: all - -poker: OPT_DEFS += -DKEYMAP_POKER -poker: all - -poker_set: OPT_DEFS += -DKEYMAP_POKER_SET -poker_set: all - -poker_bit: OPT_DEFS += -DKEYMAP_POKER_BIT -poker_bit: all diff --git a/keyboard/preonic/PCB_GUIDE.md b/keyboard/preonic/PCB_GUIDE.md deleted file mode 100644 index c3004c75a4..0000000000 --- a/keyboard/preonic/PCB_GUIDE.md +++ /dev/null @@ -1,116 +0,0 @@ -# Planck Firmware Guide - -## Setting up the environment - -### Windows -1. Install [WinAVR Tools](http://sourceforge.net/projects/winavr/) for AVR GCC compiler. -2. Install [DFU-Programmer][dfu-prog] (the -win one). -3. Start DFU bootloader on the chip first time you will see 'Found New Hardware Wizard' to install driver. If you install device driver properly you can find chip name like 'ATmega32U4' under 'LibUSB-Win32 Devices' tree on 'Device Manager'. If not you will need to update its driver on 'Device Manager' to the `dfu-programmer` driver. - -### Mac -1. Install [CrossPack](http://www.obdev.at/products/crosspack/index.html) or install Xcode from the App Store and install the Command Line Tools from `Xcode->Preferences->Downloads`. -2. Install [DFU-Programmer][dfu-prog]. - -### Linux -1. Install AVR GCC with your favorite package manager. -2. Install [DFU-Programmer][dfu-prog]. - -##Verify Your Installation -1. Clone the following repository: https://github.com/jackhumbert/tmk_keyboard -2. Open a Terminal and `cd` into `tmk_keyboard/keyboard/planck` -3. Run `make`. This should output a lot of information about the build process. - -## Using the built-in functions - -Here is a list of some of the functions available from the command line: - -* `make clean`: clean the environment - may be required in-between builds -* `make`: compile the code -* `make COMMON=true`: compile with the common (non-extended) keymap -* `make MATRIX=`: compile with the referenced matrix file. Default if unspecified is `matrix_pcb.c`. For handwired boards, use `matrix_handwired.c`. -* `make KEYMAP=`: compile with the extended keymap file `extended_keymaps/extended_keymap_.c` -* `make COMMON=true KEYMAP=`: compile with the common keymap file `common_keymaps/keymap_.c` -* `make dfu`: build and flash the layout to the PCB -* `make dfu-force`: build and force-flash the layout to the PCB (may be require for first flash) - -Generally, the instructions to flash the PCB are as follows: - -1. Make changes to the appropriate keymap file -2. Save the file -3. `make clean` -4. Press the reset button on the PCB/press the key with the `RESET` keycode -5. `make dfu` - use the necessary `KEYMAP=` and/or `COMMON=true` arguments here. - -## Extended keymap - -### Keymap - -Unlike the common keymap, prefixing the keycodes with `KC_` is required. A full list of the keycodes is available [here](https://github.com/jackhumbert/tmk_keyboard/blob/master/doc/keycode.txt). For the keycodes available only in the extended keymap, see this [header file](https://github.com/jackhumbert/tmk_keyboard/blob/master/keyboard/planck/extended_keymap_common.h). - -You can use modifiers with keycodes like this: - - LCTL(KC_C) - -Which will generate Ctrl+c. These are daisy-chainable, meaning you can do things like: - - LCTL(LALT(KC_C)) - -That will generate Ctrl+Alt+c. The entire list of these functions is here: - -* `LCTL()`: Left control -* `LSFT()` / `S()`: Left shift -* `LALT()`: Left alt/opt -* `LGUI()`: Left win/cmd -* `RCTL()`: Right control -* `RSFT()`: Right shift -* `RALT()`: Right alt/opt -* `RGUI()`: Right win/cmd - -`S(KC_1)`-like entries are useful in writing keymaps for the Planck. - -### Other keycodes - -A number of other keycodes have been added that you may find useful: - -* `CM_`: the Colemak equivalent of a key (in place of `KC_`), when using Colemak in software (`CM_O` generates `KC_SCLN`) -* `RESET`: jump to bootloader for flashing (same as press the reset button) -* `BL_STEP`: step through the backlight brightnesses -* `BL_<0-15>`: set backlight brightness to 0-15 -* `BL_DEC`: lower the backlight brightness -* `BL_INC`: raise the backlight brightness -* `BL_TOGG`: toggle the backlight on/off - -### Function layers - -The extended keymap extends the number of function layers from 32 to the near-infinite value of 256. Rather than using `FN` notation (still available, but limited to `FN0`-`FN31`), you can use the `FUNC()` notation. `F()` is a shortcut for this. - -The function actions are unchanged, and you can see the full list of them [here](https://github.com/jackhumbert/tmk_keyboard/blob/master/common/action_code.h). They are explained in detail [here](https://github.com/jackhumbert/tmk_keyboard/blob/master/doc/keymap.md#2-action). - -### Macros - -Macros have been setup in the `extended_keymaps/extended_keymaps_default.c` file so that you can use `M()` to access a macro in the `action_get_macro` section on your keymap. The switch/case structure you see here is required, and is setup for `M(0)` - you'll need to copy and paste the code to look like this (e.g. to support `M(3)`): - - switch(id) { - case 0: - return MACRODOWN(TYPE(KC_A), END); - break; - case 1: - return MACRODOWN(TYPE(KC_B), END); - break; - case 2: - return MACRODOWN(TYPE(KC_C), END); - break; - case 3: - return MACRODOWN(TYPE(KC_D), END); - break; - } - return MACRO_NONE; - -`MACRODOWN()` is a shortcut for `(record->event.pressed ? MACRO(__VA_ARGS__) : MACRO_NONE)` which tells the macro to execute when the key is pressed. Without this, the macro will be executed on both the down and up stroke. - -[cygwin]: https://www.cygwin.com/ -[mingw]: http://www.mingw.org/ -[mhv]: https://infernoembedded.com/products/avr-tools -[winavr]: http://winavr.sourceforge.net/ -[crosspack]: http://www.obdev.at/products/crosspack/index.html -[dfu-prog]: http://dfu-programmer.sourceforge.net/ diff --git a/keyboard/preonic/README.md b/keyboard/preonic/README.md index ee824d26e0..3ba0cc1527 100644 --- a/keyboard/preonic/README.md +++ b/keyboard/preonic/README.md @@ -2,54 +2,29 @@ Planck keyboard firmware ====================== DIY/Assembled compact ortholinear 40% keyboard by [Ortholinear Keyboards](http://ortholinearkeyboards.com). -## Extended Keymap -If you include extended_keymap_common.h instead of keymap_common.h at the top of your file, you'll have access to a bunch of goodies: +## Quantum MK Firmware -- Use `LSFT()`, `LCTL()`, et. al. (listed in extended_keymap_common.h) as modifiers for keys (daisy-chain-able) -- Use `FUNC(1)` instead of `FN1` (etc.) to access the function layers beyond the 32 function layer limit -- Use `CM_F` instead of `KC_F` to get the ColeMak equivilent for shortcuts (maps backwards) -- Use `MACRODOWN()` instead of `MACRO()` to easily make a keydown macro (`CM_*` works here too) +For the full Quantum feature list, see [the parent README.md](/README.md). -### Some notes on usage: +## Building -- The `KEYMAP()` macro is unable to be used due to the bitwise modifications that take place - refer to extended_keymap_jack.c to see how to set things up with the `KC_` prefix -- Keep an eye on the Makefile - this needs to include the correct files to work -- Don't forget to use `const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {` instead of the 8bit equivilent - -## Build - -Follow [this guide](http://deskthority.net/workshop-f7/how-to-build-your-very-own-keyboard-firmware-t7177.html) to setup your development environment before anything else. Abbreviated instructions are provide at the [bottom of this document](https://github.com/rswiernik/tmk_keyboard/tree/rswiernik_dev/keyboard/planck#environment-setup) - -Download the whole firmware [here](https://github.com/jackhumbert/tmk_keyboard/archive/master.zip) and navigate to the keyboard/planck folder. Once your dev env is setup, you'll be able to type `make` to generate your .hex that you can load with the Teensy app onto your Planck (once you've hit reset/shorted GND & RST). +Download or clone the whole firmware and navigate to the keyboard/planck folder. Once your dev env is setup, you'll be able to type `make` to generate your .hex - you can then use `make dfu` to program your PCB once you hit the reset button. Depending on which keymap you would like to use, you will have to compile slightly differently. -####Default -To build with the default keymap, simply move to the tmk\_keyboard/keyboard/planck/ and run `make` as follows: -``` -$ make -``` - -## Keymap -Several version of keymap are available in advance but you are recommended to define your favorite layout yourself. To define your own keymap create file named `keymap_.c` and see keymap document (you can find in top README.md) and existent keymap files. - -####**Extended Keymaps** - -To build the firmware binary hex file with an extended keymap just do `make` with `KEYMAP` option like: -``` -$ make KEYMAP=[common|jack|] -``` -_The only applicable keymaps will work with this option._ Extended keymaps follow the format **__extended\_keymap\_\.c__** +### Default +To build with the default keymap, simply run `make`. -####**Common Keymaps** +### Other Keymaps +Several version of keymap are available in advance but you are recommended to define your favorite layout yourself. To define your own keymap create file named `.c` and see keymap document (you can find in top README.md) and existent keymap files. -Building with a common keymap is as simple as adding the COMMON option. Note that only +To build the firmware binary hex file with a keymap just do `make` with `KEYMAP` option like: ``` -$ make KEYMAP=[common|jack|] COMMON=true +$ make KEYMAP=[default|jack|] ``` -_The only applicable keymaps will work with this option._ Common keymaps follow the format **__keymap\_\.c__** +Keymaps follow the format **__.c__** and are stored in the `keymaps` folder. -## Notable TMK forks (which some of the keymap files are from) +### Notable forks (which some of the keymap files are from) - [Shane's Fork](https://github.com/shanecelis/tmk_keyboard/tree/master/keyboard/planck) - [Pierre's Fork](https://github.com/pcarrier/tmk_keyboard/blob/pcarrier/planck/keyboard/gh60/keymap_planck.c) - [Nathan's Fork](https://github.com/nathanrosspowell/tmk_keyboard/tree/planck-jack/keyboard/planck) diff --git a/keyboard/preonic/__avr_gdbinit b/keyboard/preonic/__avr_gdbinit deleted file mode 100644 index afc51e6d19..0000000000 --- a/keyboard/preonic/__avr_gdbinit +++ /dev/null @@ -1,6 +0,0 @@ -define reset -SIGNAL SIGHUP -end -file planck_lufa.elf -target remote localhost:4242 -break main diff --git a/keyboard/preonic/analog.c b/keyboard/preonic/analog.c deleted file mode 100644 index 49b84ee0e8..0000000000 --- a/keyboard/preonic/analog.c +++ /dev/null @@ -1,53 +0,0 @@ -// Simple analog to digitial conversion - -#include -#include -#include -#include "analog.h" - - -static uint8_t aref = (1<= 12) return 0; - return adc_read(pgm_read_byte(pin_to_mux + pin)); -#elif defined(__AVR_AT90USB646__) || defined(__AVR_AT90USB1286__) - if (pin >= 8) return 0; - return adc_read(pin); -#else - return 0; -#endif -} - -// Mux input -int16_t adc_read(uint8_t mux) -{ -#if defined(__AVR_AT90USB162__) - return 0; -#else - uint8_t low; - - ADCSRA = (1< - -void analogReference(uint8_t mode); -int16_t analogRead(uint8_t pin); -int16_t adc_read(uint8_t mux); - -#define ADC_REF_POWER (1< -#include -#include -#include - -#define PI 3.14159265 - -void delay_us(int count) { - while(count--) { - _delay_us(1); - } -} - -int voices = 0; -double frequency = 0; -int volume = 0; -int position = 0; - -double frequencies[8] = {0, 0, 0, 0, 0, 0, 0, 0}; -int volumes[8] = {0, 0, 0, 0, 0, 0, 0, 0}; -bool sliding = false; -#define RANGE 1000 -volatile int i=0; //elements of the wave - - -void beeps() { - play_notes(); -} - -void send_freq(double freq, int vol) { - int duty = (((double)F_CPU) / freq); - ICR3 = duty; // Set max to the period - OCR3A = duty >> (0x10 - vol); // Set compare to half the period -} - -void stop_all_notes() { - voices = 0; - TCCR3A = 0; - TCCR3B = 0; - frequency = 0; - volume = 0; - - for (int i = 0; i < 8; i++) { - frequencies[i] = 0; - volumes[i] = 0; - } -} - -void stop_note(double freq) { - for (int i = 7; i >= 0; i--) { - if (frequencies[i] == freq) { - frequencies[i] = 0; - volumes[i] = 0; - for (int j = i; (j < 7); j++) { - frequencies[j] = frequencies[j+1]; - frequencies[j+1] = 0; - volumes[j] = volumes[j+1]; - volumes[j+1] = 0; - } - } - } - voices--; - if (voices < 0) - voices = 0; - if (voices == 0) { - TCCR3A = 0; - TCCR3B = 0; - frequency = 0; - volume = 0; - } else { - double freq = frequencies[voices - 1]; - int vol = volumes[voices - 1]; - if (frequency < freq) { - sliding = true; - for (double f = frequency; f <= freq; f += ((freq - frequency) / 500.0)) { - send_freq(f, vol); - } - sliding = false; - } else if (frequency > freq) { - sliding = true; - for (double f = frequency; f >= freq; f -= ((frequency - freq) / 500.0)) { - send_freq(f, vol); - } - sliding = false; - } - send_freq(freq, vol); - frequency = freq; - volume = vol; - } -} - -void init_notes() { - // TCCR1A = (1 << COM1A1) | (0 << COM1A0) | (1 << WGM11) | (1 << WGM10); - // TCCR1B = (1 << COM1B1) | (0 << COM1A0) | (1 << WGM13) | (1 << WGM12) | (0 << CS12) | (0 << CS11) | (1 << CS10); - - // DDRC |= (1<<6); - - // TCCR3A = (1 << COM3A1) | (0 << COM3A0) | (1 << WGM31) | (0 << WGM30); - // TCCR3B = (1 << WGM33) | (1 << WGM32) | (0 << CS32) | (0 << CS31) | (1 << CS30); - - // ICR3 = 0xFFFF; - // OCR3A = (int)((float)wave[i]*ICR3/RANGE); //go to next array element - - - // cli(); - - // /* Enable interrupt on timer2 == 127, with clk/8 prescaler. At 16MHz, - // this gives a timer interrupt at 15625Hz. */ - // TIMSK3 = (1 << OCIE3A); - - // /* clear/reset timer on match */ - // // TCCR3A = 1<> 8) & 0x00FF) -// #define lowByte(c) (c & 0x00FF) - -ISR(TIMER3_COMPA_vect) { - - if (ICR3 > 0 && !sliding) { - switch (position) { - case 0: { - int duty = (((double)F_CPU) / (frequency)); - ICR3 = duty; // Set max to the period - OCR3A = duty >> 1; // Set compare to half the period - break; - } - case 1: { - int duty = (((double)F_CPU) / (frequency*2)); - ICR3 = duty; // Set max to the period - OCR3A = duty >> 1; // Set compare to half the period - break; - } - case 2: { - int duty = (((double)F_CPU) / (frequency*3)); - ICR3 = duty; // Set max to the period - OCR3A = duty >> 1; // Set compare to half the period - break; - } - } - position = (position + 1) % 3; - } -// /* OCR2A has been cleared, per TCCR2A above */ -// // OCR3A = 127; - -// // pos1 += incr1; -// // pos2 += incr2; -// // pos3 += incr3; - -// // sample = sinewave[highByte(pos1)] + sinewave[highByte(pos2)] + sinewave[highByte(pos3)]; - -// // OCR3A = sample; - - -// OCR3A=pgm_read_byte(&sinewave[pos1]); -// pos1++; -// // PORTC &= ~(1<<6); - -// /* buffered, 1x gain, active mode */ -// // SPDR = highByte(sample) | 0x70; -// // while (!(SPSR & (1< 0) { - DDRC |= (1<<6); - - TCCR3A = (1 << COM3A1) | (0 << COM3A0) | (1 << WGM31) | (0 << WGM30); - TCCR3B = (1 << WGM33) | (1 << WGM32) | (0 << CS32) | (1 << CS31) | (0 << CS30); - - if (frequency != 0) { - if (frequency < freq) { - for (double f = frequency; f <= freq; f += ((freq - frequency) / 500.0)) { - send_freq(f, vol); - } - } else if (frequency > freq) { - for (double f = frequency; f >= freq; f -= ((frequency - freq) / 500.0)) { - send_freq(f, vol); - } - } - } - send_freq(freq, vol); - frequency = freq; - volume = vol; - - frequencies[voices] = frequency; - volumes[voices] = volume; - voices++; - } - // ICR3 = 0xFFFF; - // for (int i = 0; i < 10000; i++) { - // OCR3A = round((sin(i*freq)*.5)+.5)*0xFFFF; - // // _delay_us(50); - // } - - // TCCR3A = 0; - // TCCR3B = 0; -} - -// void note(int x, float length) { -// DDRC |= (1<<6); -// int t = (int)(440*pow(2,-x/12.0)); // starting note -// for (int y = 0; y < length*1000/t; y++) { // note length -// PORTC |= (1<<6); -// delay_us(t); -// PORTC &= ~(1<<6); -// delay_us(t); -// } -// PORTC &= ~(1<<6); -// } - -// void true_note(float x, float y, float length) { -// for (uint32_t i = 0; i < length * 50; i++) { -// uint32_t v = (uint32_t) (round(sin(PI*2*i*640000*pow(2, x/12.0))*.5+1 + sin(PI*2*i*640000*pow(2, y/12.0))*.5+1) / 2 * pow(2, 8)); -// for (int u = 0; u < 8; u++) { -// if (v & (1 << u) && !(PORTC&(1<<6))) -// PORTC |= (1<<6); -// else if (PORTC&(1<<6)) -// PORTC &= ~(1<<6); -// } -// } -// PORTC &= ~(1<<6); -// } \ No newline at end of file diff --git a/keyboard/preonic/beeps.h b/keyboard/preonic/beeps.h deleted file mode 100644 index 378983c605..0000000000 --- a/keyboard/preonic/beeps.h +++ /dev/null @@ -1,12 +0,0 @@ -#include -#include -#include -#include - -void note(int x, float length); -void beeps(); -void true_note(float x, float y, float length); -void play_note(double freq, int vol); -void stop_note(double freq); -void stop_all_notes(); -void init_notes(); \ No newline at end of file diff --git a/keyboard/preonic/config.h b/keyboard/preonic/config.h index cad269c9d4..5528667fa7 100644 --- a/keyboard/preonic/config.h +++ b/keyboard/preonic/config.h @@ -18,11 +18,11 @@ along with this program. If not, see . #ifndef CONFIG_H #define CONFIG_H -#include "config_definitions.h" +#include "config_common.h" /* USB Device descriptor parameter */ #define VENDOR_ID 0xFEED -#define PRODUCT_ID 0x6062 +#define PRODUCT_ID 0x6061 #define DEVICE_VER 0x0001 #define MANUFACTURER Ortholinear Keyboards #define PRODUCT The Preonic Keyboard @@ -34,7 +34,10 @@ along with this program. If not, see . /* Planck PCB default pin-out */ #define COLS (int []){ F1, F0, B0, C7, F4, F5, F6, F7, D4, D6, B4, D7 } -#define ROWS (int []){ D1, D0, D5, B5, B6 } +#define ROWS (int []){ D2, D5, B5, B6, D3 } + +/* COL2ROW or ROW2COL */ +#define DIODE_DIRECTION COL2ROW /* define if matrix has ghost */ //#define MATRIX_HAS_GHOST @@ -55,6 +58,15 @@ along with this program. If not, see . keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ ) +/* ws2812 RGB LED */ +#define ws2812_PORTREG PORTD +#define ws2812_DDRREG DDRD +#define ws2812_pin PD1 +#define RGBLED_NUM 28 // Number of LEDs +#define RGBLIGHT_HUE_STEP 10 +#define RGBLIGHT_SAT_STEP 17 +#define RGBLIGHT_VAL_STEP 17 + /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboard/preonic/config_definitions.h b/keyboard/preonic/config_definitions.h deleted file mode 100644 index fd138b8841..0000000000 --- a/keyboard/preonic/config_definitions.h +++ /dev/null @@ -1,50 +0,0 @@ -#ifndef CONFIG_DEFINITIONS_H -#define CONFIG_DEFINITIONS_H - -#define B0 0x20 -#define B1 0x21 -#define B2 0x22 -#define B3 0x23 -#define B4 0x24 -#define B5 0x25 -#define B6 0x26 -#define B7 0x27 -#define C0 0x30 -#define C1 0x31 -#define C2 0x32 -#define C3 0x33 -#define C4 0x34 -#define C5 0x35 -#define C6 0x36 -#define C7 0x37 -#define D0 0x40 -#define D1 0x41 -#define D2 0x42 -#define D3 0x43 -#define D4 0x44 -#define D5 0x45 -#define D6 0x46 -#define D7 0x47 -#define E0 0x50 -#define E1 0x51 -#define E2 0x52 -#define E3 0x53 -#define E4 0x54 -#define E5 0x55 -#define E6 0x56 -#define E7 0x57 -#define F0 0x60 -#define F1 0x61 -#define F2 0x62 -#define F3 0x63 -#define F4 0x64 -#define F5 0x65 -#define F6 0x66 -#define F7 0x67 - - - - - -#endif - diff --git a/keyboard/preonic/extended_keymap_common.c b/keyboard/preonic/extended_keymap_common.c deleted file mode 100644 index 4fa80de7cf..0000000000 --- a/keyboard/preonic/extended_keymap_common.c +++ /dev/null @@ -1,216 +0,0 @@ -/* -Copyright 2012,2013 Jun Wako - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#include "extended_keymap_common.h" -#include "report.h" -#include "keycode.h" -#include "action_layer.h" -#include "action.h" -#include "action_macro.h" -#include "debug.h" -#include "backlight.h" -#include "keymap_midi.h" -#include - -static action_t keycode_to_action(uint16_t keycode); - -/* converts key to action */ -action_t action_for_key(uint8_t layer, keypos_t key) -{ - // 16bit keycodes - important - uint16_t keycode = keymap_key_to_keycode(layer, key); - - if (keycode >= 0x0100 && keycode < 0x2000) { - // Has a modifier - action_t action; - // Split it up - action.code = ACTION_MODS_KEY(keycode >> 8, keycode & 0xFF); - return action; - } else if (keycode >= 0x2000 && keycode < 0x3000) { - // Is a shortcut for function layer, pull last 12bits - return keymap_func_to_action(keycode & 0xFFF); - } else if (keycode >= 0x3000 && keycode < 0x4000) { - action_t action; - action.code = ACTION_MACRO(keycode & 0xFF); - return action; - } else if (keycode >= BL_0 & keycode <= BL_15) { - action_t action; - action.code = ACTION_BACKLIGHT_LEVEL(keycode & 0x000F); - return action; - } else if (keycode == BL_DEC) { - action_t action; - action.code = ACTION_BACKLIGHT_DECREASE(); - return action; - } else if (keycode == BL_INC) { - action_t action; - action.code = ACTION_BACKLIGHT_INCREASE(); - return action; - } else if (keycode == BL_TOGG) { - action_t action; - action.code = ACTION_BACKLIGHT_TOGGLE(); - return action; - } else if (keycode == BL_STEP) { - action_t action; - action.code = ACTION_BACKLIGHT_STEP(); - return action; - } else if (keycode == RESET) { - bootloader_jump(); - return; - } else if (keycode == DEBUG) { - print("\nDEBUG: enabled.\n"); - debug_enable = true; - return; - } else if (keycode >= 0x6000 && keycode < 0x7000) { - action_t action; - action.code = ACTION_FUNCTION_OPT(keycode & 0xFF, (keycode & 0x0F00) >> 8); - return action; - } - - switch (keycode) { - case KC_FN0 ... KC_FN31: - return keymap_fn_to_action(keycode); -#ifdef BOOTMAGIC_ENABLE - case KC_CAPSLOCK: - case KC_LOCKING_CAPS: - if (keymap_config.swap_control_capslock || keymap_config.capslock_to_control) { - return keycode_to_action(KC_LCTL); - } - return keycode_to_action(keycode); - case KC_LCTL: - if (keymap_config.swap_control_capslock) { - return keycode_to_action(KC_CAPSLOCK); - } - return keycode_to_action(KC_LCTL); - case KC_LALT: - if (keymap_config.swap_lalt_lgui) { - if (keymap_config.no_gui) { - return keycode_to_action(ACTION_NO); - } - return keycode_to_action(KC_LGUI); - } - return keycode_to_action(KC_LALT); - case KC_LGUI: - if (keymap_config.swap_lalt_lgui) { - return keycode_to_action(KC_LALT); - } - if (keymap_config.no_gui) { - return keycode_to_action(ACTION_NO); - } - return keycode_to_action(KC_LGUI); - case KC_RALT: - if (keymap_config.swap_ralt_rgui) { - if (keymap_config.no_gui) { - return keycode_to_action(ACTION_NO); - } - return keycode_to_action(KC_RGUI); - } - return keycode_to_action(KC_RALT); - case KC_RGUI: - if (keymap_config.swap_ralt_rgui) { - return keycode_to_action(KC_RALT); - } - if (keymap_config.no_gui) { - return keycode_to_action(ACTION_NO); - } - return keycode_to_action(KC_RGUI); - case KC_GRAVE: - if (keymap_config.swap_grave_esc) { - return keycode_to_action(KC_ESC); - } - return keycode_to_action(KC_GRAVE); - case KC_ESC: - if (keymap_config.swap_grave_esc) { - return keycode_to_action(KC_GRAVE); - } - return keycode_to_action(KC_ESC); - case KC_BSLASH: - if (keymap_config.swap_backslash_backspace) { - return keycode_to_action(KC_BSPACE); - } - return keycode_to_action(KC_BSLASH); - case KC_BSPACE: - if (keymap_config.swap_backslash_backspace) { - return keycode_to_action(KC_BSLASH); - } - return keycode_to_action(KC_BSPACE); -#endif - default: - return keycode_to_action(keycode); - } -} - - -/* Macro */ -__attribute__ ((weak)) -const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) -{ - return MACRO_NONE; -} - -/* Function */ -__attribute__ ((weak)) -void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) -{ -} - -/* translates keycode to action */ -static action_t keycode_to_action(uint16_t keycode) -{ - action_t action; - switch (keycode) { - case KC_A ... KC_EXSEL: - case KC_LCTRL ... KC_RGUI: - action.code = ACTION_KEY(keycode); - break; - case KC_SYSTEM_POWER ... KC_SYSTEM_WAKE: - action.code = ACTION_USAGE_SYSTEM(KEYCODE2SYSTEM(keycode)); - break; - case KC_AUDIO_MUTE ... KC_WWW_FAVORITES: - action.code = ACTION_USAGE_CONSUMER(KEYCODE2CONSUMER(keycode)); - break; - case KC_MS_UP ... KC_MS_ACCEL2: - action.code = ACTION_MOUSEKEY(keycode); - break; - case KC_TRNS: - action.code = ACTION_TRANSPARENT; - break; - default: - action.code = ACTION_NO; - break; - } - return action; -} - - -/* translates key to keycode */ -uint16_t keymap_key_to_keycode(uint8_t layer, keypos_t key) -{ - // Read entire word (16bits) - return pgm_read_word(&keymaps[(layer)][(key.row)][(key.col)]); -} - -/* translates Fn keycode to action */ -action_t keymap_fn_to_action(uint16_t keycode) -{ - return (action_t){ .code = pgm_read_word(&fn_actions[FN_INDEX(keycode)]) }; -} - -action_t keymap_func_to_action(uint16_t keycode) -{ - // For FUNC without 8bit limit - return (action_t){ .code = pgm_read_word(&fn_actions[(int)keycode]) }; -} diff --git a/keyboard/preonic/extended_keymap_common.h b/keyboard/preonic/extended_keymap_common.h deleted file mode 100644 index 7ccfa1b039..0000000000 --- a/keyboard/preonic/extended_keymap_common.h +++ /dev/null @@ -1,181 +0,0 @@ -/* -Copyright 2012,2013 Jun Wako - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef KEYMAP_H -#define KEYMAP_H - -#include -#include -#include "action.h" -#include -#include "keycode.h" -#include "keymap.h" -#include "action_macro.h" -#include "report.h" -#include "host.h" -// #include "print.h" -#include "debug.h" - -#ifdef BOOTMAGIC_ENABLE -/* NOTE: Not portable. Bit field order depends on implementation */ -typedef union { - uint16_t raw; - struct { - bool swap_control_capslock:1; - bool capslock_to_control:1; - bool swap_lalt_lgui:1; - bool swap_ralt_rgui:1; - bool no_gui:1; - bool swap_grave_esc:1; - bool swap_backslash_backspace:1; - bool nkro:1; - }; -} keymap_config_t; -keymap_config_t keymap_config; -#endif - - -/* translates key to keycode */ -uint16_t keymap_key_to_keycode(uint8_t layer, keypos_t key); - -/* translates Fn keycode to action */ -action_t keymap_fn_to_action(uint16_t keycode); - -/* translates Fn keycode to action */ -action_t keymap_func_to_action(uint16_t keycode); - -extern const uint16_t keymaps[][MATRIX_ROWS][MATRIX_COLS]; -extern const uint16_t fn_actions[]; - -// Ability to use mods in layouts -#define LCTL(kc) kc | 0x0100 -#define LSFT(kc) kc | 0x0200 -#define LALT(kc) kc | 0x0400 -#define LGUI(kc) kc | 0x0800 -#define RCTL(kc) kc | 0x1100 -#define RSFT(kc) kc | 0x1200 -#define RALT(kc) kc | 0x1400 -#define RGUI(kc) kc | 0x1800 - -// Alias for function layers than expand past FN31 -#define FUNC(kc) kc | 0x2000 - -// Aliases -#define S(kc) LSFT(kc) -#define F(kc) FUNC(kc) - -// For software implementation of colemak -#define CM_Q KC_Q -#define CM_W KC_W -#define CM_F KC_E -#define CM_P KC_R -#define CM_G KC_T -#define CM_J KC_Y -#define CM_L KC_U -#define CM_U KC_I -#define CM_Y KC_O -#define CM_SCLN KC_P - -#define CM_A KC_A -#define CM_R KC_S -#define CM_S KC_D -#define CM_T KC_F -#define CM_D KC_G -#define CM_H KC_H -#define CM_N KC_J -#define CM_E KC_K -#define CM_I KC_L -#define CM_O KC_SCLN - -#define CM_Z KC_Z -#define CM_X KC_X -#define CM_C KC_C -#define CM_V KC_V -#define CM_B KC_B -#define CM_K KC_N -#define CM_M KC_M -#define CM_COMM KC_COMM -#define CM_DOT KC_DOT -#define CM_SLSH KC_SLSH - -// Make it easy to support these in macros -#define KC_CM_Q CM_Q -#define KC_CM_W CM_W -#define KC_CM_F CM_F -#define KC_CM_P CM_P -#define KC_CM_G CM_G -#define KC_CM_J CM_J -#define KC_CM_L CM_L -#define KC_CM_U CM_U -#define KC_CM_Y CM_Y -#define KC_CM_SCLN CM_SCLN - -#define KC_CM_A CM_A -#define KC_CM_R CM_R -#define KC_CM_S CM_S -#define KC_CM_T CM_T -#define KC_CM_D CM_D -#define KC_CM_H CM_H -#define KC_CM_N CM_N -#define KC_CM_E CM_E -#define KC_CM_I CM_I -#define KC_CM_O CM_O - -#define KC_CM_Z CM_Z -#define KC_CM_X CM_X -#define KC_CM_C CM_C -#define KC_CM_V CM_V -#define KC_CM_B CM_B -#define KC_CM_K CM_K -#define KC_CM_M CM_M -#define KC_CM_COMM CM_COMM -#define KC_CM_DOT CM_DOT -#define KC_CM_SLSH CM_SLSH - -#define M(kc) kc | 0x3000 - -#define MACRODOWN(...) (record->event.pressed ? MACRO(__VA_ARGS__) : MACRO_NONE) - -#define BL_ON 0x4009 -#define BL_OFF 0x4000 -#define BL_0 0x4000 -#define BL_1 0x4001 -#define BL_2 0x4002 -#define BL_3 0x4003 -#define BL_4 0x4004 -#define BL_5 0x4005 -#define BL_6 0x4006 -#define BL_7 0x4007 -#define BL_8 0x4008 -#define BL_9 0x4009 -#define BL_10 0x400A -#define BL_11 0x400B -#define BL_12 0x400C -#define BL_13 0x400D -#define BL_14 0x400E -#define BL_15 0x400F -#define BL_DEC 0x4010 -#define BL_INC 0x4011 -#define BL_TOGG 0x4012 -#define BL_STEP 0x4013 - -#define RESET 0x5000 -#define DEBUG 0x5001 - -#define MIDI(n) n | 0x6000 - -#endif diff --git a/keyboard/preonic/extended_keymaps/extended_keymap_default.c b/keyboard/preonic/extended_keymaps/extended_keymap_default.c deleted file mode 100644 index b52f60fd08..0000000000 --- a/keyboard/preonic/extended_keymaps/extended_keymap_default.c +++ /dev/null @@ -1,70 +0,0 @@ -#include "extended_keymap_common.h" -#include "backlight.h" -#include "lufa.h" -#include "debug.h" - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[0] = { /* Qwerty */ - {KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL}, - {KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC}, - {KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT}, - {KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT}, - {M(0), KC_LCTL, KC_LALT, KC_LGUI, FUNC(2), KC_SPC, KC_SPC, FUNC(1), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT} - // Space is repeated to accommadate for both spacebar wiring positions -}, -[1] = { /* Colemak */ - {KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL}, - {KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC}, - {KC_ESC, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT}, - {KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT}, - {KC_FN3, KC_LCTL, KC_LALT, KC_LGUI, FUNC(2), KC_SPC, KC_SPC, FUNC(1), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT} -}, -[2] = { /* RAISE */ - {KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL}, - {KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC}, - {KC_TRNS, FUNC(3), FUNC(4), RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS}, - {KC_TRNS, KC_F11, KC_F12, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS}, - {KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, FUNC(1), KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY} -}, -[3] = { /* LOWER */ - {KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL}, - {S(KC_GRV), S(KC_1), S(KC_2), S(KC_3), S(KC_4), S(KC_5), S(KC_6), S(KC_7), S(KC_8), S(KC_9), S(KC_0), KC_BSPC}, - {KC_TRNS, FUNC(3), FUNC(4), RESET, KC_TRNS, KC_TRNS, KC_TRNS, S(KC_MINS), S(KC_EQL), S(KC_LBRC), S(KC_RBRC), S(KC_BSLS)}, - {KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_TRNS}, - {KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, FUNC(2), KC_TRNS, KC_TRNS, KC_TRNS, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY} -}, -[4] = { /* TENKEY */ - {KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL}, - {KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_KP_7, KC_KP_8, KC_KP_9, KC_P, KC_BSPC}, - {KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_KP_4, KC_KP_5, KC_KP_6, KC_SCLN, KC_QUOT}, - {KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_KP_1, KC_KP_2, KC_KP_3, KC_SLSH, KC_ENT}, - {KC_TRNS, KC_LCTL, KC_LALT, KC_LGUI, KC_TRNS, KC_SPC, KC_SPC, KC_KP_0, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT} -} -}; - -const uint16_t PROGMEM fn_actions[] = { - [1] = ACTION_LAYER_MOMENTARY(2), // to RAISE - [2] = ACTION_LAYER_MOMENTARY(3), // to LOWER - - [3] = ACTION_DEFAULT_LAYER_SET(0), - [4] = ACTION_DEFAULT_LAYER_SET(1), - -}; - -const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) -{ - // MACRODOWN only works in this function - switch(id) { - case 0: - if (record->event.pressed) { - register_code(KC_RSFT); - midi_send_noteon(&midi_device, 1, 64, 127); - backlight_step(); - } else { - unregister_code(KC_RSFT); - midi_send_noteoff(&midi_device, 1, 64, 127); - } - break; - } - return MACRO_NONE; -}; diff --git a/keyboard/preonic/extended_keymaps/extended_keymap_lock.c b/keyboard/preonic/extended_keymaps/extended_keymap_lock.c deleted file mode 100644 index ec7bc776ac..0000000000 --- a/keyboard/preonic/extended_keymaps/extended_keymap_lock.c +++ /dev/null @@ -1,81 +0,0 @@ -#include "extended_keymap_common.h" -#include "backlight.h" -#include "action_layer.h" -#include "keymap_midi.h" -#include "beeps.h" - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[0] = { /* Qwerty */ - {KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC}, - {KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC}, - {KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT}, - {KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT}, - {M(0), KC_LCTL, KC_LALT, KC_LGUI, FUNC(2), KC_SPC, KC_SPC, FUNC(1), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT} - // Space is repeated to accommadate for both spacebar wiring positions -}, -[1] = { /* Colemak */ - {KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC}, - {KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC}, - {KC_ESC, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT}, - {KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT}, - {KC_FN3, KC_LCTL, KC_LALT, KC_LGUI, FUNC(2), KC_SPC, KC_SPC, FUNC(1), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT} -}, -[2] = { /* RAISE */ - {KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC}, - {KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC}, - {KC_TRNS, FUNC(3), FUNC(4), RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS}, - {KC_TRNS, KC_F11, KC_F12, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS}, - {KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, FUNC(1), KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY} -}, -[3] = { /* LOWER */ - {KC_GRV, S(KC_1), S(KC_2), S(KC_3), S(KC_4), S(KC_5), S(KC_6), S(KC_7), S(KC_8), S(KC_9), S(KC_0), KC_BSPC}, - {S(KC_GRV), S(KC_1), S(KC_2), S(KC_3), S(KC_4), S(KC_5), S(KC_6), S(KC_7), S(KC_8), S(KC_9), S(KC_0), KC_BSPC}, - {KC_TRNS, FUNC(3), FUNC(4), RESET, KC_TRNS, KC_TRNS, KC_TRNS, S(KC_MINS), S(KC_EQL), S(KC_LBRC), S(KC_RBRC), S(KC_BSLS)}, - {KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_TRNS}, - {KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, FUNC(2), KC_TRNS, KC_TRNS, KC_TRNS, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY} -}, -[4] = { /* TENKEY */ - {KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC}, - {KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_KP_7, KC_KP_8, KC_KP_9, KC_P, KC_BSPC}, - {KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_KP_4, KC_KP_5, KC_KP_6, KC_SCLN, KC_QUOT}, - {KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_KP_1, KC_KP_2, KC_KP_3, KC_SLSH, KC_ENT}, - {KC_TRNS, KC_LCTL, KC_LALT, KC_LGUI, KC_TRNS, KC_SPC, KC_SPC, KC_KP_0, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT} -}, -[5] = { - { MIDI12 }, - { MIDI12 }, - { MIDI12 }, - { MIDI12 }, - {M(0), KC_LCTL, KC_LALT, KC_LGUI, FUNC(2), KC_SPC, KC_SPC, FUNC(1), MIDI, MIDI, MIDI, MIDI} -} - -}; - -const uint16_t PROGMEM fn_actions[] = { - [1] = ACTION_LAYER_MOMENTARY(2), // to RAISE - [2] = ACTION_LAYER_MOMENTARY(3), // to LOWER - - [3] = ACTION_DEFAULT_LAYER_SET(0), - [4] = ACTION_DEFAULT_LAYER_SET(1), - -}; - -const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) -{ - switch(id) { - case 0: - if (record->event.pressed) { - // register_code(KC_RSFT); - backlight_set(BACKLIGHT_LEVELS); - default_layer_and(0); - default_layer_or((1<<5)); - } else { - // unregister_code(KC_RSFT); - backlight_set(0); - default_layer_and(0); - default_layer_or(0); - } - break; - } - return MACRO_NONE; -}; diff --git a/keyboard/preonic/keymap_midi.c b/keyboard/preonic/keymap_midi.c deleted file mode 100644 index a0fa59990c..0000000000 --- a/keyboard/preonic/keymap_midi.c +++ /dev/null @@ -1,110 +0,0 @@ -/* -Copyright 2015 Jack Humbert - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#include "extended_keymap_common.h" -#include "keymap_midi.h" -#include - -uint8_t starting_note = 0x0C; -int offset = 7; - -void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) -{ - if (id != 0) { - if (record->event.pressed) { - midi_send_noteon(&midi_device, opt, (id & 0xFF), 127); - } else { - midi_send_noteoff(&midi_device, opt, (id & 0xFF), 127); - } - } - - if (record->event.key.col == (MATRIX_COLS - 1) && record->event.key.row == (MATRIX_ROWS - 1)) { - if (record->event.pressed) { - starting_note++; - play_note(((double)261.6)*pow(2.0, -1.0)*pow(2.0,(starting_note + SCALE[0 + offset])/12.0+(MATRIX_ROWS - 1)), 0xC); - midi_send_cc(&midi_device, 0, 0x7B, 0); - midi_send_cc(&midi_device, 1, 0x7B, 0); - midi_send_cc(&midi_device, 2, 0x7B, 0); - midi_send_cc(&midi_device, 3, 0x7B, 0); - midi_send_cc(&midi_device, 4, 0x7B, 0); - return; - } else { - stop_note(((double)261.6)*pow(2.0, -1.0)*pow(2.0,(starting_note + SCALE[0 + offset])/12.0+(MATRIX_ROWS - 1))); - stop_all_notes(); - return; - } - } - if (record->event.key.col == (MATRIX_COLS - 2) && record->event.key.row == (MATRIX_ROWS - 1)) { - if (record->event.pressed) { - starting_note--; - play_note(((double)261.6)*pow(2.0, -1.0)*pow(2.0,(starting_note + SCALE[0 + offset])/12.0+(MATRIX_ROWS - 1)), 0xC); - midi_send_cc(&midi_device, 0, 0x7B, 0); - midi_send_cc(&midi_device, 1, 0x7B, 0); - midi_send_cc(&midi_device, 2, 0x7B, 0); - midi_send_cc(&midi_device, 3, 0x7B, 0); - midi_send_cc(&midi_device, 4, 0x7B, 0); - return; - } else { - stop_note(((double)261.6)*pow(2.0, -1.0)*pow(2.0,(starting_note + SCALE[0 + offset])/12.0+(MATRIX_ROWS - 1))); - stop_all_notes(); - return; - } - } - - if (record->event.key.col == (MATRIX_COLS - 3) && record->event.key.row == (MATRIX_ROWS - 1) && record->event.pressed) { - offset++; - midi_send_cc(&midi_device, 0, 0x7B, 0); - midi_send_cc(&midi_device, 1, 0x7B, 0); - midi_send_cc(&midi_device, 2, 0x7B, 0); - midi_send_cc(&midi_device, 3, 0x7B, 0); - midi_send_cc(&midi_device, 4, 0x7B, 0); - stop_all_notes(); - for (int i = 0; i <= 7; i++) { - play_note(((double)261.6)*pow(2.0, -1.0)*pow(2.0,(starting_note + SCALE[i + offset])/12.0+(MATRIX_ROWS - 1)), 0xC); - _delay_us(80000); - stop_note(((double)261.6)*pow(2.0, -1.0)*pow(2.0,(starting_note + SCALE[i + offset])/12.0+(MATRIX_ROWS - 1))); - _delay_us(8000); - } - return; - } - if (record->event.key.col == (MATRIX_COLS - 4) && record->event.key.row == (MATRIX_ROWS - 1) && record->event.pressed) { - offset--; - midi_send_cc(&midi_device, 0, 0x7B, 0); - midi_send_cc(&midi_device, 1, 0x7B, 0); - midi_send_cc(&midi_device, 2, 0x7B, 0); - midi_send_cc(&midi_device, 3, 0x7B, 0); - midi_send_cc(&midi_device, 4, 0x7B, 0); - stop_all_notes(); - for (int i = 0; i <= 7; i++) { - play_note(((double)261.6)*pow(2.0, -1.0)*pow(2.0,(starting_note + SCALE[i + offset])/12.0+(MATRIX_ROWS - 1)), 0xC); - _delay_us(80000); - stop_note(((double)261.6)*pow(2.0, -1.0)*pow(2.0,(starting_note + SCALE[i + offset])/12.0+(MATRIX_ROWS - 1))); - _delay_us(8000); - } - return; - } - - if (record->event.pressed) { - // midi_send_noteon(&midi_device, record->event.key.row, starting_note + SCALE[record->event.key.col], 127); - midi_send_noteon(&midi_device, 0, (starting_note + SCALE[record->event.key.col + offset])+12*(MATRIX_ROWS - record->event.key.row), 127); - play_note(((double)261.6)*pow(2.0, -1.0)*pow(2.0,(starting_note + SCALE[record->event.key.col + offset])/12.0+(MATRIX_ROWS - record->event.key.row)), 0xF); - } else { - // midi_send_noteoff(&midi_device, record->event.key.row, starting_note + SCALE[record->event.key.col], 127); - midi_send_noteoff(&midi_device, 0, (starting_note + SCALE[record->event.key.col + offset])+12*(MATRIX_ROWS - record->event.key.row), 127); - stop_note(((double)261.6)*pow(2.0, -1.0)*pow(2.0,(starting_note + SCALE[record->event.key.col + offset])/12.0+(MATRIX_ROWS - record->event.key.row))); - } -} \ No newline at end of file diff --git a/keyboard/preonic/keymap_midi.h b/keyboard/preonic/keymap_midi.h deleted file mode 100644 index c5917f884e..0000000000 --- a/keyboard/preonic/keymap_midi.h +++ /dev/null @@ -1,220 +0,0 @@ -/* -Copyright 2015 Jack Humbert - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#ifndef KEYMAP_MIDI_H -#define KEYMAP_MIDI_H - -#define MIDI 0x6000 -#define MIDI12 0x6000, 0x6000, 0x6000, 0x6000, 0x6000, 0x6000, 0x6000, 0x6000, 0x6000, 0x6000, 0x6000, 0x6000 - -#define CHNL(note, channel) (note + (channel << 8)) - -#define SCALE (int []){ 0 + (12*0), 2 + (12*0), 4 + (12*0), 5 + (12*0), 7 + (12*0), 9 + (12*0), 11 + (12*0), \ - 0 + (12*1), 2 + (12*1), 4 + (12*1), 5 + (12*1), 7 + (12*1), 9 + (12*1), 11 + (12*1), \ - 0 + (12*2), 2 + (12*2), 4 + (12*2), 5 + (12*2), 7 + (12*2), 9 + (12*2), 11 + (12*2), \ - 0 + (12*3), 2 + (12*3), 4 + (12*3), 5 + (12*3), 7 + (12*3), 9 + (12*3), 11 + (12*3), \ - 0 + (12*4), 2 + (12*4), 4 + (12*4), 5 + (12*4), 7 + (12*4), 9 + (12*4), 11 + (12*4), } - -#define N_CN1 (0x600C + (12 * -1) + 0 ) -#define N_CN1S (0x600C + (12 * -1) + 1 ) -#define N_DN1F (0x600C + (12 * -1) + 1 ) -#define N_DN1 (0x600C + (12 * -1) + 2 ) -#define N_DN1S (0x600C + (12 * -1) + 3 ) -#define N_EN1F (0x600C + (12 * -1) + 3 ) -#define N_EN1 (0x600C + (12 * -1) + 4 ) -#define N_FN1 (0x600C + (12 * -1) + 5 ) -#define N_FN1S (0x600C + (12 * -1) + 6 ) -#define N_GN1F (0x600C + (12 * -1) + 6 ) -#define N_GN1 (0x600C + (12 * -1) + 7 ) -#define N_GN1S (0x600C + (12 * -1) + 8 ) -#define N_AN1F (0x600C + (12 * -1) + 8 ) -#define N_AN1 (0x600C + (12 * -1) + 9 ) -#define N_AN1S (0x600C + (12 * -1) + 10) -#define N_BN1F (0x600C + (12 * -1) + 10) -#define N_BN1 (0x600C + (12 * -1) + 11) -#define N_C0 (0x600C + (12 * 0) + 0 ) -#define N_C0S (0x600C + (12 * 0) + 1 ) -#define N_D0F (0x600C + (12 * 0) + 1 ) -#define N_D0 (0x600C + (12 * 0) + 2 ) -#define N_D0S (0x600C + (12 * 0) + 3 ) -#define N_E0F (0x600C + (12 * 0) + 3 ) -#define N_E0 (0x600C + (12 * 0) + 4 ) -#define N_F0 (0x600C + (12 * 0) + 5 ) -#define N_F0S (0x600C + (12 * 0) + 6 ) -#define N_G0F (0x600C + (12 * 0) + 6 ) -#define N_G0 (0x600C + (12 * 0) + 7 ) -#define N_G0S (0x600C + (12 * 0) + 8 ) -#define N_A0F (0x600C + (12 * 0) + 8 ) -#define N_A0 (0x600C + (12 * 0) + 9 ) -#define N_A0S (0x600C + (12 * 0) + 10) -#define N_B0F (0x600C + (12 * 0) + 10) -#define N_B0 (0x600C + (12 * 0) + 11) -#define N_C1 (0x600C + (12 * 1) + 0 ) -#define N_C1S (0x600C + (12 * 1) + 1 ) -#define N_D1F (0x600C + (12 * 1) + 1 ) -#define N_D1 (0x600C + (12 * 1) + 2 ) -#define N_D1S (0x600C + (12 * 1) + 3 ) -#define N_E1F (0x600C + (12 * 1) + 3 ) -#define N_E1 (0x600C + (12 * 1) + 4 ) -#define N_F1 (0x600C + (12 * 1) + 5 ) -#define N_F1S (0x600C + (12 * 1) + 6 ) -#define N_G1F (0x600C + (12 * 1) + 6 ) -#define N_G1 (0x600C + (12 * 1) + 7 ) -#define N_G1S (0x600C + (12 * 1) + 8 ) -#define N_A1F (0x600C + (12 * 1) + 8 ) -#define N_A1 (0x600C + (12 * 1) + 9 ) -#define N_A1S (0x600C + (12 * 1) + 10) -#define N_B1F (0x600C + (12 * 1) + 10) -#define N_B1 (0x600C + (12 * 1) + 11) -#define N_C2 (0x600C + (12 * 2) + 0 ) -#define N_C2S (0x600C + (12 * 2) + 1 ) -#define N_D2F (0x600C + (12 * 2) + 1 ) -#define N_D2 (0x600C + (12 * 2) + 2 ) -#define N_D2S (0x600C + (12 * 2) + 3 ) -#define N_E2F (0x600C + (12 * 2) + 3 ) -#define N_E2 (0x600C + (12 * 2) + 4 ) -#define N_F2 (0x600C + (12 * 2) + 5 ) -#define N_F2S (0x600C + (12 * 2) + 6 ) -#define N_G2F (0x600C + (12 * 2) + 6 ) -#define N_G2 (0x600C + (12 * 2) + 7 ) -#define N_G2S (0x600C + (12 * 2) + 8 ) -#define N_A2F (0x600C + (12 * 2) + 8 ) -#define N_A2 (0x600C + (12 * 2) + 9 ) -#define N_A2S (0x600C + (12 * 2) + 10) -#define N_B2F (0x600C + (12 * 2) + 10) -#define N_B2 (0x600C + (12 * 2) + 11) -#define N_C3 (0x600C + (12 * 3) + 0 ) -#define N_C3S (0x600C + (12 * 3) + 1 ) -#define N_D3F (0x600C + (12 * 3) + 1 ) -#define N_D3 (0x600C + (12 * 3) + 2 ) -#define N_D3S (0x600C + (12 * 3) + 3 ) -#define N_E3F (0x600C + (12 * 3) + 3 ) -#define N_E3 (0x600C + (12 * 3) + 4 ) -#define N_F3 (0x600C + (12 * 3) + 5 ) -#define N_F3S (0x600C + (12 * 3) + 6 ) -#define N_G3F (0x600C + (12 * 3) + 6 ) -#define N_G3 (0x600C + (12 * 3) + 7 ) -#define N_G3S (0x600C + (12 * 3) + 8 ) -#define N_A3F (0x600C + (12 * 3) + 8 ) -#define N_A3 (0x600C + (12 * 3) + 9 ) -#define N_A3S (0x600C + (12 * 3) + 10) -#define N_B3F (0x600C + (12 * 3) + 10) -#define N_B3 (0x600C + (12 * 3) + 11) -#define N_C4 (0x600C + (12 * 4) + 0 ) -#define N_C4S (0x600C + (12 * 4) + 1 ) -#define N_D4F (0x600C + (12 * 4) + 1 ) -#define N_D4 (0x600C + (12 * 4) + 2 ) -#define N_D4S (0x600C + (12 * 4) + 3 ) -#define N_E4F (0x600C + (12 * 4) + 3 ) -#define N_E4 (0x600C + (12 * 4) + 4 ) -#define N_F4 (0x600C + (12 * 4) + 5 ) -#define N_F4S (0x600C + (12 * 4) + 6 ) -#define N_G4F (0x600C + (12 * 4) + 6 ) -#define N_G4 (0x600C + (12 * 4) + 7 ) -#define N_G4S (0x600C + (12 * 4) + 8 ) -#define N_A4F (0x600C + (12 * 4) + 8 ) -#define N_A4 (0x600C + (12 * 4) + 9 ) -#define N_A4S (0x600C + (12 * 4) + 10) -#define N_B4F (0x600C + (12 * 4) + 10) -#define N_B4 (0x600C + (12 * 4) + 11) -#define N_C5 (0x600C + (12 * 5) + 0 ) -#define N_C5S (0x600C + (12 * 5) + 1 ) -#define N_D5F (0x600C + (12 * 5) + 1 ) -#define N_D5 (0x600C + (12 * 5) + 2 ) -#define N_D5S (0x600C + (12 * 5) + 3 ) -#define N_E5F (0x600C + (12 * 5) + 3 ) -#define N_E5 (0x600C + (12 * 5) + 4 ) -#define N_F5 (0x600C + (12 * 5) + 5 ) -#define N_F5S (0x600C + (12 * 5) + 6 ) -#define N_G5F (0x600C + (12 * 5) + 6 ) -#define N_G5 (0x600C + (12 * 5) + 7 ) -#define N_G5S (0x600C + (12 * 5) + 8 ) -#define N_A5F (0x600C + (12 * 5) + 8 ) -#define N_A5 (0x600C + (12 * 5) + 9 ) -#define N_A5S (0x600C + (12 * 5) + 10) -#define N_B5F (0x600C + (12 * 5) + 10) -#define N_B5 (0x600C + (12 * 5) + 11) -#define N_C6 (0x600C + (12 * 6) + 0 ) -#define N_C6S (0x600C + (12 * 6) + 1 ) -#define N_D6F (0x600C + (12 * 6) + 1 ) -#define N_D6 (0x600C + (12 * 6) + 2 ) -#define N_D6S (0x600C + (12 * 6) + 3 ) -#define N_E6F (0x600C + (12 * 6) + 3 ) -#define N_E6 (0x600C + (12 * 6) + 4 ) -#define N_F6 (0x600C + (12 * 6) + 5 ) -#define N_F6S (0x600C + (12 * 6) + 6 ) -#define N_G6F (0x600C + (12 * 6) + 6 ) -#define N_G6 (0x600C + (12 * 6) + 7 ) -#define N_G6S (0x600C + (12 * 6) + 8 ) -#define N_A6F (0x600C + (12 * 6) + 8 ) -#define N_A6 (0x600C + (12 * 6) + 9 ) -#define N_A6S (0x600C + (12 * 6) + 10) -#define N_B6F (0x600C + (12 * 6) + 10) -#define N_B6 (0x600C + (12 * 6) + 11) -#define N_C7 (0x600C + (12 * 7) + 0 ) -#define N_C7S (0x600C + (12 * 7) + 1 ) -#define N_D7F (0x600C + (12 * 7) + 1 ) -#define N_D7 (0x600C + (12 * 7) + 2 ) -#define N_D7S (0x600C + (12 * 7) + 3 ) -#define N_E7F (0x600C + (12 * 7) + 3 ) -#define N_E7 (0x600C + (12 * 7) + 4 ) -#define N_F7 (0x600C + (12 * 7) + 5 ) -#define N_F7S (0x600C + (12 * 7) + 6 ) -#define N_G7F (0x600C + (12 * 7) + 6 ) -#define N_G7 (0x600C + (12 * 7) + 7 ) -#define N_G7S (0x600C + (12 * 7) + 8 ) -#define N_A7F (0x600C + (12 * 7) + 8 ) -#define N_A7 (0x600C + (12 * 7) + 9 ) -#define N_A7S (0x600C + (12 * 7) + 10) -#define N_B7F (0x600C + (12 * 7) + 10) -#define N_B7 (0x600C + (12 * 7) + 11) -#define N_C8 (0x600C + (12 * 8) + 0 ) -#define N_C8S (0x600C + (12 * 8) + 1 ) -#define N_D8F (0x600C + (12 * 8) + 1 ) -#define N_D8 (0x600C + (12 * 8) + 2 ) -#define N_D8S (0x600C + (12 * 8) + 3 ) -#define N_E8F (0x600C + (12 * 8) + 3 ) -#define N_E8 (0x600C + (12 * 8) + 4 ) -#define N_F8 (0x600C + (12 * 8) + 5 ) -#define N_F8S (0x600C + (12 * 8) + 6 ) -#define N_G8F (0x600C + (12 * 8) + 6 ) -#define N_G8 (0x600C + (12 * 8) + 7 ) -#define N_G8S (0x600C + (12 * 8) + 8 ) -#define N_A8F (0x600C + (12 * 8) + 8 ) -#define N_A8 (0x600C + (12 * 8) + 9 ) -#define N_A8S (0x600C + (12 * 8) + 10) -#define N_B8F (0x600C + (12 * 8) + 10) -#define N_B8 (0x600C + (12 * 8) + 11) -#define N_C8 (0x600C + (12 * 8) + 0 ) -#define N_C8S (0x600C + (12 * 8) + 1 ) -#define N_D8F (0x600C + (12 * 8) + 1 ) -#define N_D8 (0x600C + (12 * 8) + 2 ) -#define N_D8S (0x600C + (12 * 8) + 3 ) -#define N_E8F (0x600C + (12 * 8) + 3 ) -#define N_E8 (0x600C + (12 * 8) + 4 ) -#define N_F8 (0x600C + (12 * 8) + 5 ) -#define N_F8S (0x600C + (12 * 8) + 6 ) -#define N_G8F (0x600C + (12 * 8) + 6 ) -#define N_G8 (0x600C + (12 * 8) + 7 ) -#define N_G8S (0x600C + (12 * 8) + 8 ) -#define N_A8F (0x600C + (12 * 8) + 8 ) -#define N_A8 (0x600C + (12 * 8) + 9 ) -#define N_A8S (0x600C + (12 * 8) + 10) -#define N_B8F (0x600C + (12 * 8) + 10) -#define N_B8 (0x600C + (12 * 8) + 11) - -#endif \ No newline at end of file diff --git a/keyboard/preonic/led.c b/keyboard/preonic/led.c deleted file mode 100644 index 2c05746607..0000000000 --- a/keyboard/preonic/led.c +++ /dev/null @@ -1,38 +0,0 @@ -/* -Copyright 2012 Jun Wako - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#include -#include "stdint.h" -#include "led.h" - - -void led_set(uint8_t usb_led) -{ - // // Using PE6 Caps Lock LED - // if (usb_led & (1<. -*/ - -/* - * scan matrix - */ -#include -#include -#include -#include -#include "print.h" -#include "debug.h" -#include "util.h" -#include "matrix.h" - -#ifndef DEBOUNCE -# define DEBOUNCE 10 -#endif -static uint8_t debouncing = DEBOUNCE; - -/* matrix state(1:on, 0:off) */ -static matrix_row_t matrix[MATRIX_ROWS]; -static matrix_row_t matrix_debouncing[MATRIX_ROWS]; - -static matrix_row_t read_cols(void); -static void init_cols(void); -static void unselect_rows(void); -static void select_row(uint8_t row); - -inline -uint8_t matrix_rows(void) -{ - return MATRIX_ROWS; -} - -inline -uint8_t matrix_cols(void) -{ - return MATRIX_COLS; -} - -void matrix_init(void) -{ - // To use PORTF disable JTAG with writing JTD bit twice within four cycles. - MCUCR |= (1<event.pressed) { // midi_send_noteon(&midi_device, record->event.key.row, starting_note + SCALE[record->event.key.col], 127); - midi_send_noteon(&midi_device, 0, (starting_note + SCALE[record->event.key.col + offset])+12*(MATRIX_ROWS - record->event.key.row), 127); + // midi_send_noteon(&midi_device, 0, (starting_note + SCALE[record->event.key.col + offset])+12*(MATRIX_ROWS - record->event.key.row), 127); play_note(((double)261.626)*pow(2.0, -1.0)*pow(2.0,(starting_note + SCALE[record->event.key.col + offset])/12.0+(MATRIX_ROWS - record->event.key.row)), 0xF); } else { // midi_send_noteoff(&midi_device, record->event.key.row, starting_note + SCALE[record->event.key.col], 127); - midi_send_noteoff(&midi_device, 0, (starting_note + SCALE[record->event.key.col + offset])+12*(MATRIX_ROWS - record->event.key.row), 127); + // midi_send_noteoff(&midi_device, 0, (starting_note + SCALE[record->event.key.col + offset])+12*(MATRIX_ROWS - record->event.key.row), 127); stop_note(((double)261.626)*pow(2.0, -1.0)*pow(2.0,(starting_note + SCALE[record->event.key.col + offset])/12.0+(MATRIX_ROWS - record->event.key.row))); } } \ No newline at end of file From b8ac5095708b5023f5e3e375b22534f8b395741f Mon Sep 17 00:00:00 2001 From: Jack Humbert Date: Wed, 30 Mar 2016 00:45:37 -0400 Subject: [PATCH 28/45] .hex files --- keyboard/preonic/Makefile | 4 +- keyboard/preonic/preonic_pcb.hex | 1702 +++++++++++++++++++++++ keyboard/preonic/preonic_pcb_silent.hex | 1189 ++++++++++++++++ 3 files changed, 2893 insertions(+), 2 deletions(-) create mode 100644 keyboard/preonic/preonic_pcb.hex create mode 100644 keyboard/preonic/preonic_pcb_silent.hex diff --git a/keyboard/preonic/Makefile b/keyboard/preonic/Makefile index 664aff7321..89c48e50a9 100644 --- a/keyboard/preonic/Makefile +++ b/keyboard/preonic/Makefile @@ -139,8 +139,8 @@ COMMAND_ENABLE = yes # Commands for debug and configuration # SLEEP_LED_ENABLE = yes # Breathing sleep LED during USB suspend # NKRO_ENABLE = yes # USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality -MIDI_ENABLE = YES # MIDI controls -AUDIO_ENABLE = YES # Audio output on port C6 +# MIDI_ENABLE = YES # MIDI controls +# AUDIO_ENABLE = YES # Audio output on port C6 # UNICODE_ENABLE = YES # Unicode # BLUETOOTH_ENABLE = yes # Enable Bluetooth with the Adafruit EZ-Key HID # RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with MIDI at the same time. diff --git a/keyboard/preonic/preonic_pcb.hex b/keyboard/preonic/preonic_pcb.hex new file mode 100644 index 0000000000..5bdc190e1d --- /dev/null +++ b/keyboard/preonic/preonic_pcb.hex @@ -0,0 +1,1702 @@ +:100000000C94D4020C9418030C9418030C94180349 +:100010000C9418030C9418030C9418030C941803F4 +:100020000C9418030C9418030C94E8160C94BA174B +:100030000C946C290C9418030C9418030C9418035A +:100040000C9418030C9418030C9418030C941803C4 +:100050000C9418030C94D9290C9418030C941803CD +:100060000C9418030C9418030C9418030C941803A4 +:100070000C9418030C9418030C9418030C94180394 +:100080000C941C0E0C9418030C9418030C94180375 +:100090000C9418030C9418030C9418030C94180374 +:1000A0000C9418030C9418030C941803076342363D +:1000B000B79BD8A71A39685618AEBAAB558C1D3CF9 +:1000C000B7CC5763BD6DEDFD753EF6177231BF00BD +:1000D0000000803F08000000BE922449123EABAAF7 +:1000E000AA2ABECDCCCC4C3E00000080BEABAAAA52 +:1000F000AA3E00000000BF000000803F000000009A +:1001000000084178D3BB4387D1133D190E3CC3BDD2 +:100110004282AD2B3E68EC8276BED98FE1A93E4C7F +:1001200080EFFFBE01C4FF7F3F00000000003500EC +:100130001E001F00200021002200230024002500B3 +:10014000260027002A002B0014001A0008001500C2 +:1001500017001C0018000C00120013002A002900D0 +:1001600004001600070009000A000B000D000E0035 +:100170000F0033003400E1001D001B0006001900D1 +:10018000050011001000360037003800280000304C +:10019000E000E200E30003522C002C000452500067 +:1001A000510052004F0035001E001F0020002100AA +:1001B0002200230024002500260027002A002B000F +:1001C00014001A00090013000A000D000F001800A7 +:1001D0001C0033002A002900040015001600170037 +:1001E00007000B00110008000C0012003400E100B1 +:1001F0001D001B000600190005000E00100036004F +:100200003700380028000030E000E200E30003522D +:100210002C002C0004525000510052004F003500B9 +:100220001E001F00200021002200230024002500C2 +:10023000260027002A002B00340036003700130068 +:100240001C0009000A00060015000F002A00290002 +:1002500004001200080018000C0007000B00170033 +:10026000110016003800E100330014000D000E00EC +:100270001B00050010001A0019001D0028000030A6 +:10028000E000E200E30003522C002C000452500076 +:10029000510052004F0035001E001F0020002100B9 +:1002A0002200230024002500260027002A00350212 +:1002B0001E021F0220022102220223022402250222 +:1002C000260227022A0001003A003B003C003D00C4 +:1002D0003E003F002D022E022F02300231020100AB +:1002E00040004100420043004400450000530153D8 +:1002F0000253005001000100010001000100010053 +:10030000010001000100AB00AA00A900AE00350009 +:100310001E001F00200021002200230024002500D1 +:10032000260027002A0035001E001F0020002100A3 +:100330002200230024002500260027002A000100B7 +:100340003A003B003C003D003E003F002D002E00E7 +:100350002F00300031000100400041004200430006 +:1003600044004500005301530253005001000100B6 +:100370000100010001000100010001000100AB00CB +:10038000AA00A900AE002A035400680065002000FE +:100390005000720065006F006E006900630020006D +:1003A0004B006500790062006F006100720064001C +:1003B00000002C034F007200740068006F006C0096 +:1003C00069006E0065006100720020004B0065004E +:1003D000790062006F006100720064007300000029 +:1003E000040309040902D000060100A0FA09040070 +:1003F000000103010100092111010001223F000752 +:1004000005810308000A0904010001030102000933 +:100410002111010001224D000705820308000A098D +:10042000040200010300000009211101000122362D +:10043000000705830308000A090403000203000003 +:10044000000921110100012220000705840320007A +:100450000107050403200001090404000001010054 +:100460000009240100010900010509040500020139 +:1004700003000007240100014100062402010100DD +:1004800006240202020009240301030102010009FB +:1004900024030204010101000905060240000500D1 +:1004A0000005250101010905850240000500000540 +:1004B000250101031201100100000008EDFE61603A +:1004C0000100010200010631FF0974A1010975153F +:1004D0000025FF9520750881020976150025FF95F6 +:1004E0002075089102C005010980A101850216014D +:1004F0000026B7001A01002AB70075109501810087 +:10050000C0050C0901A1018503160100269C021AF1 +:1005100001002A9C02751095018100C005010902A5 +:10052000A1010901A10005091901290515002501ED +:100530009505750181029501750381010501093059 +:1005400009311581257F95027508810609381581C5 +:10055000257F950175088106050C0A38021581254D +:100560007F950175088106C0C005010906A1010536 +:100570000719E029E7150025019508750181029505 +:100580000175088101050819012905950575019175 +:10059000029501750391010507190029FF15002532 +:1005A000FF950675088100C011241FBECFEFDAE069 +:1005B000DEBFCDBF04B603FE24C080910404909139 +:1005C0000504A0910604B09107048730904BA74022 +:1005D000B04BB9F410920404109205041092060472 +:1005E0001092070414BE84B7877F84BF88E10FB6DA +:1005F000F89480936000109260000FBEE0E0F8E392 +:10060000099512E0A0E0B1E0EEE1F9E602C0059044 +:100610000D92A832B107D9F714E0A8E2B2E001C008 +:100620001D92A430B107E1F70E94A0130C948D3401 +:100630000C94000061110DC0FC018281882331F00F +:1006400085EE0E94671E0E94683003C085EE0E94FE +:100650002F1F80E090E008950E940F0E40E050E0D0 +:1006600069E070E080E091E00C94600F08950E94D2 +:1006700049036E9A769A8CE293E0892B11F00C94E0 +:100680002C03089586E393E0892B11F00C94360334 +:100690000895279A2F988FEF9FEF9093870080936C +:1006A00086008AE08093800089E1809381000C9429 +:1006B000113081110BC080918000877F8093800072 +:1006C00010928D0010928C002F9808952F988330EF +:1006D00041F4809180008860809380008FEF9FEFCD +:1006E00012C09091800098609093800023E030E0E9 +:1006F000281B3109220F331F8FEF9FEF02C0969501 +:1007000087952A95E2F790938D0080938C00089549 +:100710008B3B910568F4883A910530F5853A91054F +:10072000C0F48430910598F4019709F06FC071C04E +:10073000803E910508F46AC0883E910540F09C0116 +:10074000205F31092031310508F060C05CC09C0198 +:10075000A1C0853A910509F45FC0863A910509F474 +:100760005EC023E830E496C0883A910509F45AC087 +:10077000893A910509F459C08A3A910509F458C09B +:100780008B3A910509F457C08C3A910509F456C08B +:100790008D3A910509F455C0803B910509F454C088 +:1007A0008E3A910509F453C08F3A910509F452C06D +:1007B000813B910509F451C0823B910509F450C079 +:1007C000833B910509F44FC0843B910509F44EC069 +:1007D000853B910509F44DC0863B910509F44CC059 +:1007E000873B910509F44BC0883B910509F44AC049 +:1007F000893B910509F449C08A3B910509F048C03D +:100800002AE236E447C09C01306544C020E030E075 +:1008100041C021E030E03EC021E830E43BC022E8A6 +:1008200030E438C022EE34E435C029EE34E432C07E +:100830002AEE34E42FC025EB34E42CC026EB34E45C +:1008400029C027EB34E426C02CEC34E423C02DEC83 +:1008500034E420C023E835E41DC02AE835E41AC09A +:1008600022E935E417C024E935E414C021E236E476 +:1008700011C023E236E40EC024E236E40BC025E2C8 +:1008800036E408C026E236E405C027E236E402C0BA +:1008900020E034E4C90108959CE0799FF00111241F +:1008A0009CE3899FE00DF11D1124E60FF11DEE0F71 +:1008B000FF1FE25DFE4F25913491C9010895880F15 +:1008C000991F82559040FC0125913491C9010895EA +:1008D000880F991F825D9E4FFC0125913491C901BB +:1008E00008950E944C049C019A9581159F4110F433 +:1008F000C9010895C90190528115904128F4C90198 +:100900009F700E9468040895C90190538115904119 +:1009100020F4C9019927906C0895C901905440971B +:1009200028F4C9018F709927946D0895203180E4CF +:10093000380719F480E091ED0895213190E43907EA +:1009400019F480E090ED0895223140E4340719F461 +:1009500080E092ED0895233180E4380719F480E0B7 +:1009600093ED0895211590E5390799F40E945623D7 +:1009700040E065E088E491E00E94600F2FEF44E3DF +:100980008CE0215040408040E1F700C000000C9412 +:10099000FE29213090E5390731F48091F002816021 +:1009A0008093F0020895C90190558115904108F097 +:1009B00062C0432F55274F70552741305105F9F438 +:1009C000C90174E0880F991F7A95E1F78827937021 +:1009D000B901E3E0660F771FEA95E1F760767727C4 +:1009E000862B972B9C682370332702C0440F551F1A +:1009F0002A95E2F74F715527842B952B08954230A5 +:100A0000510529F4922F8827816F906A0895433009 +:100A10005105B9F4C90153E0880F991F5A95E1F7C0 +:100A2000807E97702370332741E050E002C0440F6E +:100A3000551F2A95E2F74F715527842B952B9C68FB +:100A400008954430510589F5C90143E0880F991F85 +:100A50004A95E1F7807E97702370332741E050E09C +:100A600002C0440F551F2A95E2F74F715527842B7A +:100A7000952B9A680895C90190568115904118F4F4 +:100A8000C901906F0895C90190578115904120F4D4 +:100A9000C9019F7090620895C901905881159041D5 +:100AA00020F4C9019F70906A0895203E3105E0F45A +:100AB000203C310568F52133310509F475C048F44F +:100AC0002932310509F46BC02A32310509F07BC0A7 +:100AD00075C02933310501F122383105E9F025339C +:100AE000310509F070C051C0233E3105B1F140F429 +:100AF000203E3105D1F0223E310509F064C01CC012 +:100B0000263E310579F1273E310509F05CC038C039 +:100B1000C9010E945F0408958091010380FD02C015 +:100B200081FF51C080EE90E04FC08091010380FFB3 +:100B3000F9CF89E390E048C08091010382FF0AC0A9 +:100B40008091010384FF03C080E090E03DC083EE0C +:100B500090E03AC082EE90E037C08091010382FFBE +:100B6000EFCFF8CF8091010383FF07C0809101038D +:100B700084FDEACF87EE90E027C086EE90E024C0A7 +:100B80008091010383FFF2CFF8CF8091010385FFAD +:100B900003C089E290E018C085E390E015C0809121 +:100BA000010385FDF9CFF5CF8091010386FF03C0D6 +:100BB0008AE290E009C081E390E006C080910103E1 +:100BC00086FDF9CFF5CFC9010E94880308950895E5 +:100BD0005F926F927F928F929F92AF92BF92CF92CD +:100BE000DF92EF92FF920F931F93CF93DF93CDB7D6 +:100BF000DEB72A970FB6F894DEBF0FBECDBF9E01B9 +:100C00002F5F3F4F4E018BE0880E911C60E070E03B +:100C100000E010E0E12CF12CC12CD12CA12CB12C46 +:100C20008AE0782E622E532E41E050E0E3E9F1E0B5 +:100C3000A62DB52D872D01900D928A95E1F7F9012A +:100C4000819191919F01FC01E07FFF27E032F10546 +:100C500059F48F709927FA0102C0EE0FFF1F8A9591 +:100C6000E2F7AE2ABF2A37C0E033F10559F48F709E +:100C70009927FA0102C0EE0FFF1F8A95E2F7CE2AEC +:100C8000DF2A29C0E034F10559F48F709927FA0161 +:100C900002C0EE0FFF1F8A95E2F7EE2AFF2A1BC063 +:100CA000E035F10559F48F709927FA0102C0EE0F73 +:100CB000FF1F8A95E2F70E2B1F2B0DC0E036F105C2 +:100CC00051F48F709927FA0102C0EE0FFF1F8A9529 +:100CD000E2F76E2B7F2B2815390509F0A7CF94B1C9 +:100CE0008A2D8095892384B985B18A2985B997B1E0 +:100CF0008C2D8095892387B988B18C2988B99AB1C0 +:100D00008E2D809589238AB98BB18E298BB99DB19F +:100D1000802F809589238DB98EB1802B8EB990B3A9 +:100D2000862F8095892380BB81B3862B81BB2A9631 +:100D30000FB6F894DEBF0FBECDBFDF91CF911F91EC +:100D40000F91FF90EF90DF90CF90BF90AF909F906A +:100D50008F907F906F905F9008955F926F927F92D7 +:100D60008F929F92AF92BF92CF92DF92EF92FF92BB +:100D70000F931F93CF93DF93CDB7DEB768970FB66E +:100D8000F894DEBF0FBECDBF85B7806885BF85B73D +:100D9000806885BF0E94E8059E012F5F3F4F4E018E +:100DA00089E1880E911C60E070E000E010E0E12C29 +:100DB000F12CC12CD12CA12CB12C98E1792E622ED2 +:100DC000532E41E050E0EDE9F1E0A62DB52D872D41 +:100DD00001900D928A95E1F7F901819191919F011E +:100DE000FC01E07FFF27E032F10559F48F7099276D +:100DF000FA0102C0EE0FFF1F8A95E2F7AE2ABF2A62 +:100E000037C0E033F10559F48F709927FA0102C019 +:100E1000EE0FFF1F8A95E2F7CE2ADF2A29C0E034C1 +:100E2000F10559F48F709927FA0102C0EE0FFF1FE8 +:100E30008A95E2F7EE2AFF2A1BC0E035F10559F446 +:100E40008F709927FA0102C0EE0FFF1F8A95E2F713 +:100E50000E2B1F2B0DC0E036F10551F48F70992732 +:100E6000FA0102C0EE0FFF1F8A95E2F76E2B7F2B6F +:100E70002815390509F0A7CF94B18A2D80958923CB +:100E800084B985B18A2985B997B18C2D809589233C +:100E900087B988B18C2988B99AB18E2D809589231C +:100EA0008AB98BB18E298BB99DB1802F809589230A +:100EB0008DB98EB1802B8EB990B3862F8095892302 +:100EC00080BB81B3862B81BB10922902109228022D +:100ED000109233021092320210922B0210922A02C8 +:100EE000109235021092340210922D0210922C02B0 +:100EF000109237021092360210922F0210922E0298 +:100F0000109239021092380210923102109230027F +:100F100010923B0210923A0287E393E0892BB9F0DA +:100F200068960FB6F894DEBF0FBECDBFDF91CF91AC +:100F30001F910F91FF90EF90DF90CF90BF90AF90F7 +:100F40009F908F907F906F905F900C94370368967E +:100F50000FB6F894DEBF0FBECDBFDF91CF911F91CA +:100F60000F91FF90EF90DF90CF90BF90AF909F9048 +:100F70008F907F906F905F9008955F926F927F92B5 +:100F80008F929F92AF92BF92CF92DF92EF92FF9299 +:100F90000F931F93CF93DF93CDB7DEB7A2970FB612 +:100FA000F894DEBF0FBECDBF7E0149E1E40EF11C17 +:100FB00022E3C22E22E0D22E5E0153E2A50EB11C26 +:100FC0003AE0532E470101E010E048E1642E55E07D +:100FD000752EE3E9F1E0D401852D01900D928A95FB +:100FE000E1F7F701819191917F019C01207F3327E7 +:100FF0002032310589F424B18F709927A80102C0ED +:10100000440F551F8A95E2F7CA01242B24B995B1E4 +:101010008095892385B94FC02033310589F427B1E4 +:101020008F709927F80102C0EE0FFF1F8A95E2F733 +:10103000CF012E2B27B998B18095892388B93BC061 +:101040002034310589F42AB18F709927A80102C094 +:10105000440F551F8A95E2F7CA01242B2AB99BB188 +:10106000809589238BB927C02035310589F42DB1AE +:101070008F709927F80102C0EE0FFF1F8A95E2F7E3 +:10108000CF012E2B2DB99EB1809589238EB913C027 +:101090002036310581F420B38F709927A80102C052 +:1010A000440F551F8A95E2F7CA01242B20BB91B348 +:1010B0008095892381BB50EA5A95F1F7BE016F5F95 +:1010C0007F4F80E090E020E030E0EDE9F1E0DE01EC +:1010D0001196462D01900D924A95E1F7FB01419141 +:1010E0005191BF01FA01E07FFF27E032F10511F4D1 +:1010F000E3B113C0E033F10511F4E6B10EC0E03402 +:10110000F10511F4E9B109C0E035F10511F4ECB1D4 +:1011100004C0E036F105B9F4EFB1F0E04F705527A7 +:1011200002C0F595E7954A95E2F7E0FD08C0A801F1 +:10113000022E02C0440F551F0A94E2F702C040E09D +:1011400050E0842B952B2F5F3F4F2C30310509F059 +:10115000BCCFF601208131812817390721F0918316 +:101160008083709270010E94E805F2E0CF0ED11CDE +:10117000EA14FB0409F02DCF809170018823A1F1BE +:10118000815080937001882339F08FE99FE00197A7 +:10119000F1F700C0000028C0809132029091330224 +:1011A0009093290280932802809134029091350215 +:1011B00090932B0280932A028091360290913702FD +:1011C00090932D0280932C028091380290913902E5 +:1011D00090932F0280932E0280913A0290913B02CD +:1011E000909331028093300282E493E0892B11F0D6 +:1011F0000E94420381E0A2960FB6F894DEBF0FBEB4 +:10120000CDBFDF91CF911F910F91FF90EF90DF90B5 +:10121000CF90BF90AF909F908F907F906F905F9096 +:101220000895E82FF0E0EE0FFF1FE85DFD4F80818D +:10123000918108950895CF92DF92EF92FF920F93DC +:101240001F93CF93DF93CDB7DEB7CC5BD2400FB601 +:10125000F894DEBF0FBECDBF8C01862F642F88238C +:1012600079F0F80192812FE7482F992329F083E044 +:1012700093E00E94C41904C083E093E00E94D41953 +:10128000F80180818B3091F59181943009F0A8C2EA +:101290009281809173019923B1F08F5F80937301E4 +:1012A00096E4E5EBF1E0DE01A958BD4F01900D9207 +:1012B0009A95E1F7E0917101F0917201EE0FFF1F35 +:1012C00027E732E036C096E4E5EBF1E0DE01AF5C03 +:1012D000BD4F01900D929A95E1F7E0917101F09167 +:1012E0007201EE0FFF1F21E332E093C08A3009F054 +:1012F000CBC0F8019181943009F072C29281809143 +:101300007301992309F473C081508093730196E4AB +:10131000E5EBF1E0DE01A551BE4F01900D929A95EB +:10132000E1F7E0917101F0917201EE0FFF1F2BEEDA +:1013300031E02C0F3D1FE20FF31F60817181680FB8 +:10134000711D882777FD8095982F0E94AC3120E091 +:1013500030E040E451E40E94113120E030E040E808 +:1013600050E40E94A9309B01AC0160E070E080E095 +:1013700090E40E94C33221E230ED42E053E40E9447 +:1013800060324CE050E00E94BB0F20E04BE760E091 +:1013900083E093E00E94B41920E04BE761E083E032 +:1013A00093E00E94B41920E04BE762E083E093E011 +:1013B0000E94B41920E04BE763E083E093E00E94D1 +:1013C000B41920E04BE764E083E093E0C454DD4FC0 +:1013D0000FB6F894DEBF0FBECDBFDF91CF911F9146 +:1013E0000F91FF90EF90DF90CF900C94B41996E49A +:1013F000E5EBF1E0DE01AB55BE4F01900D929A9501 +:10140000E1F7E0917101F0917201EE0FFF1F25EA03 +:1014100031E02C0F3D1FE20FF31F60817181680FD7 +:10142000711D882777FD8095982F0E94AC3120E0B0 +:1014300030E040E451E40E94113120E030E040E827 +:1014400050E40E94A9309B01AC0160E070E080E0B4 +:1014500090E40E94C33221E230ED42E053E40E9466 +:1014600060320E94EB0CC454DD4F0FB6F894DEBF1F +:101470000FBECDBFDF91CF911F910F91FF90EF90E5 +:10148000DF90CF900C94BE0C893009F0D3C0F801E6 +:101490009181943009F0A4C19281992309F4A0C1EB +:1014A00080917101909172010196909372018093E5 +:1014B000710120E04BE760E083E093E00E94B41903 +:1014C00020E04BE761E083E093E00E94B41920E064 +:1014D0004BE762E083E093E00E94B41920E04BE721 +:1014E00063E083E093E00E94B41920E04BE764E0FE +:1014F00083E093E00E94B4190E94BE0C00E010E06B +:10150000E6E4FE2E80917301E5EBF1E0DE01A15AE5 +:10151000BE4F9F2D01900D929A95E1F7E0917101D8 +:10152000F0917201E00FF11FEE0FFF1F2FE531E088 +:101530002C0F3D1FE20FF31F60817181680F711D39 +:10154000882777FD8095982F0E94AC3120E030E00D +:1015500040E451E40E94113120E030E040E850E4E2 +:101560000E94A9309B01AC0160E070E080E090E453 +:101570000E94C33221E230ED42E053E40E94603227 +:101580004CE050E00E94BB0F3FEF87EE93E03150FC +:1015900080409040E1F700C0000080917301E5EBCE +:1015A000F1E0DE01A75EBE4F9F2D01900D929A954E +:1015B000E1F7E0917101F0917201E00FF11FEE0F80 +:1015C000FF1F29E131E02C0F3D1FE20FF31F608167 +:1015D0007181680F711D882777FD8095982F0E9473 +:1015E000AC3120E030E040E451E40E94113120E0D1 +:1015F00030E040E850E40E94A9309B01AC0160E07B +:1016000070E080E090E40E94C33221E230ED42E0DD +:1016100053E40E9460320E94EB0C8FEF9CE701972D +:10162000F1F700C000000F5F1F4F0830110509F0EF +:1016300069CF94C1883009F0D3C0F801918194300A +:1016400009F0CEC09281992309F4CAC0809171013A +:10165000909172010197909372018093710120E043 +:101660004BE760E083E093E00E94B41920E04BE791 +:1016700061E083E093E00E94B41920E04BE762E070 +:1016800083E093E00E94B41920E04BE763E083E03D +:1016900093E00E94B41920E04BE764E083E093E01C +:1016A0000E94B4190E94BE0C00E010E056E4F52E32 +:1016B00080917301E5EBF1E0DE01AD52BF4F9F2D4C +:1016C00001900D929A95E1F7E0917101F09172010C +:1016D000E00FF11FEE0FFF1F23ED30E02C0F3D1F39 +:1016E000E20FF31F60817181680F711D882777FDFC +:1016F0008095982F0E94AC3120E030E040E451E426 +:101700000E94113120E030E040E850E40E94A9300E +:101710009B01AC0160E070E080E090E40E94C33285 +:1017200021E230ED42E053E40E9460324CE050E0B0 +:101730000E94BB0F3FEF87EE93E031508040904016 +:10174000E1F700C0000080917301E5EBF1E0DE01FC +:10175000A357BF4F9F2D01900D929A95E1F7E0910D +:101760007101F0917201E00FF11FEE0FFF1F2DE8E4 +:1017700030E02C0F3D1FE20FF31F60817181680F75 +:10178000711D882777FD8095982F0E94AC3120E04D +:1017900030E040E451E40E94113120E030E040E8C4 +:1017A00050E40E94A9309B01AC0160E070E080E051 +:1017B00090E40E94C33221E230ED42E053E40E9403 +:1017C00060320E94EB0C8FEF9CE70197F1F700C0AD +:1017D00000000F5F1F4F0830110509F069CFBEC030 +:1017E000F801228190917301222309F45DC026E45F +:1017F000E5EBF1E0DE01A95BBF4F01900D922A9568 +:10180000E1F7E0917101F0917201E80FF11DEE0F27 +:10181000FF1F27E430E02C0F3D1FE20FF31F608114 +:101820007181690F711D882777FD8095982F0E941F +:10183000AC3120E030E040E451E40E9411316B0112 +:101840007C01F801818165E070E0681B71098827DF +:1018500077FD8095982F0E94AC319B01AC01C701A8 +:10186000B6010E94A9309B01AC0160E070E080E00D +:1018700090E40E94C33221E230ED42E053E40E9442 +:1018800060324FE050E0C454DD4F0FB6F894DEBF35 +:101890000FBECDBFDF91CF911F910F91FF90EF90C1 +:1018A000DF90CF900C94BB0F26E4E5EBF1E0DE0176 +:1018B000119601900D922A95E1F7E0917101F09156 +:1018C0007201E80FF11DEE0FFF1F21E030E02C0F39 +:1018D0003D1FE20FF31F60817181690F711D882721 +:1018E00077FD8095982F0E94AC3120E030E040E4F5 +:1018F00051E40E9411316B017C01F801818165E0A6 +:1019000070E0681B7109882777FD8095982F0E94E9 +:10191000AC319B01AC01C701B6010E94A9309B010B +:10192000AC0160E070E080E090E40E94C33221E20C +:1019300030ED42E053E40E946032C454DD4F0FB6F4 +:10194000F894DEBF0FBECDBFDF91CF911F910F91F5 +:10195000FF90EF90DF90CF900C94EB0CC454DD4FD0 +:101960000FB6F894DEBF0FBECDBFDF91CF911F91B0 +:101970000F91FF90EF90DF90CF9008951092870223 +:1019800010928602809171008D7F8093710080910A +:1019900090008F7780939000109248021092470237 +:1019A00010928002109281021092820210928302A1 +:1019B00010927F0210927E02EEE5F2E0AEE4B2E019 +:1019C00011921192119211921D921D9282E0EE37A6 +:1019D000F807B1F708956F927F928F929F92AF921E +:1019E000BF92CF92DF92EF92FF920F931F93CF930C +:1019F000DF936B017C010EE712E04CE5A42E42E080 +:101A0000B42EC7E0D0E0A7019601F801929182912F +:101A1000729162918F010E940D31882349F02197C4 +:101A2000F2E0AF1AB108CF3F8FEFD80761F734C0AB +:101A3000F8011082118212821382F5011182108244 +:101A4000FE01EE0FFF1FEE0FFF1FE25AFD4FDE01FA +:101A5000AA0FBB1FA25BBD4FCE011AC001964481E5 +:101A600055816681778140835183628373831482B9 +:101A700015821682178212962D913C91139711961A +:101A80003C932E9313961C921E92129734961296A4 +:101A90008730910519F7C3CF809186029091870214 +:101AA000019797FD05C0909387028093860204C03A +:101AB0001092870210928602E0918602F0918702CE +:101AC0003097C9F4809171008D7F8093710080916F +:101AD00090008F7780939000109280021092810284 +:101AE000109282021092830210927F0210927E0264 +:101AF0001092470285C03197DF01AA0FBB1FAA0FC2 +:101B0000BB1FA25ABD4FCD90DD90ED90FC90EE0F23 +:101B1000FF1FE25BFD4FC081D18160908002709019 +:101B200081028090820290908302A7019601662D27 +:101B3000772D882D992D0E940D3187FF25C0262DE8 +:101B4000372D482D592DC701B6010E94A83020E03D +:101B500030E04AEF54E40E9411315B018C012A2DE0 +:101B60003B2D402F512F662D772D882D992D0E94CA +:101B7000A9303B014C01A7019601772D992D0E94B8 +:101B80000D31181664F72EC0A7019601662D772D2A +:101B9000882D992D0E945C32181634F5A701960104 +:101BA000662D772D882D992D0E94A83020E030E0F9 +:101BB0004AEF54E40E9411315B018C012A2D3B2D28 +:101BC000402F512F662D772D882D992D0E94A830FA +:101BD0003B014C01A7019601772D992D0E945C32A3 +:101BE00087FFECCF10924D02C0928002D09281020A +:101BF000E0928202F0928302D0937F02C0937E0231 +:101C0000DF91CF911F910F91FF90EF90DF90CF90D8 +:101C1000BF90AF909F908F907F906F9008953E9A65 +:101C2000E1E7F0E080818D7F808382E08093900007 +:101C30008AE18093910008951F920F920FB60F9240 +:101C40001124CF92DF92EF92FF922F933F934F9305 +:101C50005F936F937F938F939F93AF93BF93CF9334 +:101C6000DF93EF93FF9380914702882309F479C0B3 +:101C700020E030E0A90160918002709181028091A2 +:101C80008202909183020E945C3218160CF069C0A7 +:101C900020E030E040E251E46091490270914A0254 +:101CA00080914B0290914C020E945C321816BCF459 +:101CB00080918402909185020196609186027091D4 +:101CC00087020E9448349093850280938402109288 +:101CD000490210924A0210924B0210924C02C0919B +:101CE0008402D0918502CC0FDD1FCC0FDD1FC25ABC +:101CF000DD4F288139814A815B8160E074E284E7AD +:101D00009BE40E9411310E94793170939700609397 +:101D10009600288139814A815B8160E074E284E722 +:101D20009BE40E9411310E947931759567957093FB +:101D300099006093980020E030E040E85FE3609114 +:101D4000490270914A0280914B0290914C020E948C +:101D5000A9306093490270934A0280934B0290939A +:101D60004C0280914802882309F493C0C09043023A +:101D7000D0904402E0904502F090460220E030E02E +:101D8000A901C701B6010E945C321816F4F4A7013C +:101D9000960160E074E284E79BE40E9411310E94A6 +:101DA00079317093970060939600A701960160E0E7 +:101DB00074E284E79BE40E9411310E9479317595A9 +:101DC0006795709399006093980060913D027091BF +:101DD0003E026F5F7F4F70933E0260933D0280E052 +:101DE00090E00E94AA3120913F0230914002409140 +:101DF0004102509142020E945C3287FD4AC08091AC +:101E00003C028F5F80933C029091F0038917A0F011 +:101E10008091F503882319F010923C020DC0809147 +:101E200071008D7F80937100809190008F778093F7 +:101E30009000109248022DC0E091F103F091F2035E +:101E400080913C0298E0899FE00DF11D1124808172 +:101E50009181A281B3818093430290934402A09325 +:101E60004502B093460220E030E040E85EE3648142 +:101E70007581868197810E94603260933F027093E2 +:101E80004002809341029093420210923E021092CF +:101E90003D02FF91EF91DF91CF91BF91AF919F9163 +:101EA0008F917F916F915F914F913F912F91FF9013 +:101EB000EF90DF90CF900F900FBE0F901F9018956E +:101EC0000F931F93CF93DF9300D0CDB7DEB78C0174 +:101ED00080914702882331F04A8369830E94BE0CB7 +:101EE00069814A8181E0809348021093F203009354 +:101EF000F1036093F0034093F503109249021092AE +:101F00004A0210924B0210924C0210923C02F801CD +:101F10004081518162817381409343025093440216 +:101F2000609345027093460220E030E040E85EE3B3 +:101F300064817581868197810E94603260933F023F +:101F400070934002809341029093420210923E02AD +:101F500010923D02809171008260809371008091A7 +:101F600090008068809390000F900F90DF91CF9148 +:101F70001F910F9108956F927F928F929F92AF92CF +:101F8000BF92CF92DF92EF92FF920F931F93CF9366 +:101F9000DF936B017C01EA018091480281110E946C +:101FA000BE0C81E08093470220E030E0A901C70128 +:101FB000B6010E945C3218160CF09AC06090800244 +:101FC00070908102809082029090830220E030E045 +:101FD000A901662D772D882D992D0E940D31811133 +:101FE00028C0C0928002D0928102E0928202F092D8 +:101FF0008302D0937F02C0937E02809186029091EB +:102000008702FC01EE0FFF1FEE0FFF1FE25AFD4F8C +:10201000C082D182E282F382FC01EE0FFF1FE25BFD +:10202000FD4FD183C08301969093870280938602EF +:102030005FC0A7019601662D772D882D992D0E94EE +:102040000D3187FF25C0262D372D482D592DC7016D +:10205000B6010E94A83020E030E04AEF54E40E942C +:1020600011315B018C012A2D3B2D402F512F662D04 +:10207000772D882D992D0E94A9303B014C01A70195 +:102080009601772D992D0E940D31181664F7A9CF6E +:10209000A7019601662D772D882D992D0E945C321F +:1020A00018160CF09ECFA7019601662D772D882D6E +:1020B000992D0E94A83020E030E04AEF54E40E94BD +:1020C00011315B018C012A2D3B2D402F512F662DA4 +:1020D000772D882D992D0E94A8303B014C01A70136 +:1020E0009601772D992D0E945C3287FFECCF79CF36 +:1020F000809171008260809371008091900080686F +:1021000080939000DF91CF911F910F91FF90EF90FE +:10211000DF90CF90BF90AF909F908F907F906F9007 +:102120000895809191020895CF93DF9300D01F927C +:10213000CDB7DEB72091FA03243021F523E02983BF +:102140009B838A832093E9008FEF06C095ED9A95D3 +:10215000F1F70000882329F09091E800815095FF65 +:10216000F5CF8091E80085FF0DC040E050E063E0CE +:1021700070E0CE0101960E947E148091E8008E7777 +:102180008093E8000F900F900F90DF91CF9108950A +:10219000CF93DF9300D01F92CDB7DEB72091FA0323 +:1021A000243029F522E029839B838A8383E080936E +:1021B000E9008FEF06C095ED9A95F1F700008823AE +:1021C00029F09091E800815095FFF5CF8091E800CB +:1021D00085FF0DC040E050E063E070E0CE01019665 +:1021E0000E947E148091E8008E778093E8000F9023 +:1021F0000F900F90DF91CF9108952091FA03243032 +:10220000F9F422E02093E9002FEF06C035ED3A956E +:10221000F1F70000222329F03091E800215035FF2A +:10222000F5CF2091E80025FF0BC040E050E065E0CD +:1022300070E00E947E148091E8008E778093E80021 +:102240000895CF93DF93EC018091FA03843041F538 +:1022500081E08093E9008FEF06C095ED9A95F1F744 +:102260000000882329F09091E800815095FFF5CF78 +:102270008091E80085FF14C040E050E068E070E025 +:10228000CE010E947E148091E8008E778093E80052 +:1022900088E0FE01A9E8B2E001900D928A95E1F78D +:1022A000DF91CF910895BF92CF92DF92EF92FF928C +:1022B0000F931F93CF93DF937C01B62EE90100E0CB +:1022C00010E0C42ED12C0BC04991202F2B0D2F775D +:1022D0004F776FE0C7010E94B4190F5F1F4F0C15B5 +:1022E0001D0594F3DF91CF911F910F91FF90EF9017 +:1022F000DF90CF90BF90089570E06F5F7F4F6F7059 +:1023000077270C94B4190F931F93CF93C42F633086 +:10231000710509F04AC0842F807F803849F18039E7 +:1023200009F043C0622F6F7770E080E090E00E9478 +:10233000AC3120E030E040E451E40E9411319B01D7 +:10234000AC0160E070E080E090E40E94C3320F775F +:1023500010E023E0159507952A95E1F72DEC3CEC6C +:1023600042E053E40E946032A8010E94BB0F1DC0EE +:10237000622F6F7770E080E090E00E94AC3120E047 +:1023800030E040E451E40E9411319B01AC0160E077 +:1023900070E080E090E40E94C3322DEC3CEC42E01F +:1023A00053E40E9460320E94EB0CCC3F29F4CF91A1 +:1023B0001F910F910C94BE0CCF911F910F91089516 +:1023C0000F931F93CF93DF93CDB7DEB727970FB649 +:1023D000F894DEBF0FBECDBF8C0114C08A810E946D +:1023E0008E199A819D839B819E839C819F838111FD +:1023F0001EC089818430B1F08730A1F08630A1F011 +:102400008530A1F0BE016F5F7F4F84E791E00E94AD +:10241000FB1C8111E3CF84E791E00E94EC1C0E9439 +:1024200067190DC083E003C082E001C081E0AE0106 +:102430004B5F5F4F682FC8010E94211AE3CF279698 +:102440000FB6F894DEBF0FBECDBFDF91CF911F91C5 +:102450000F910895EF92FF920F93CF93DF9300D0E7 +:1024600000D000D0CDB7DEB77B014A832B830C832D +:10247000842F2E834D830E948E192E814D818111D0 +:102480001BC082E0E816F10479F083E0E816F1045D +:1024900021F0EA94EF2821F50BC0073F11F487E003 +:1024A00001C084E089830BC0273FD9F786E0FACFCB +:1024B000473FB9F785E0F6CF42954F704983BE019B +:1024C0006F5F7F4F84E791E00E94B11C84E791E049 +:1024D0000E94CF1C84E791E00E94EC1C0E946719C7 +:1024E00026960FB6F894DEBF0FBECDBFDF91CF9119 +:1024F0000F91FF90EF9008958091F903811109C029 +:102500000E946D160E94CA168091E200846080933A +:10251000E20008951092F9030895089508950C9427 +:102520006129809192028F5F8093920262E30E9400 +:102530002834911135C01092920280919302882321 +:1025400079F18091FA03843049F58091E9008F7028 +:102550009091EC0090FF02C090E801C090E0982BB1 +:1025600084E08093E9008091EB0080FF14C08091AB +:10257000EE0087FD03C00FC01092F1008091E800CB +:1025800085FDFACF8091E80080FF05C08091E800CA +:102590008E778093E8009F709093E90010929302E9 +:1025A000089542E061EC81E00E94E31542E061ECB5 +:1025B00082E00E94E31542E061EC83E00E94E315B3 +:1025C00042E261EC84E00E94E31542E361E885E0C9 +:1025D0000E94E31542E360E886E00C94E3158091E5 +:1025E000FC03833009F454C030F4813071F0823040 +:1025F00009F0A5C08CC08A3009F479C08B3009F489 +:102600005FC0893009F09BC020C08091FB03813AF4 +:1026100009F095C08091E800877F8093E800809161 +:10262000FF0390910004892B21F060E080E090E0AE +:1026300003C068E089E892E070E00E941C15809178 +:10264000E8008B778093E80008958091FB03813246 +:1026500009F075C08091FF0390910004892B09F067 +:102660006EC08091E800877F8093E80005C080916C +:10267000FA03882309F463C08091E80082FFF7CF52 +:102680008091F100809391028091E8008B7753C094 +:102690008091FB03813A09F052C08091FF03909131 +:1026A0000004892B09F04BC08091E800877F80935C +:1026B000E8008091E80080FFFCCF80918A0136C05D +:1026C0008091FB038132D9F58091FF039091000442 +:1026D000892BA9F58091E800877F8093E8000E940C +:1026E0001A168091FD0380938A010C9456238091E1 +:1026F000FB03813221F58091E800877F8093E80019 +:102700000E941A168091FE0380938802089580919A +:10271000FB03813AA1F48091E800877F8093E80071 +:102720008091E80080FFFCCF809188028093F100C7 +:102730008091E8008E778093E8000C941A16089533 +:1027400083E093E00E94F0196AE272E183E093E093 +:102750000E94461A60EE71E183E093E00E944A1AFB +:1027600084B7877F84BF88E10FB6F89480936000B8 +:10277000109260000FBE90E080E80FB6F89480934E +:102780006100909361000FBE0E94741D0E946D163F +:102790000E94CA168091E20084608093E2007894DF +:1027A00063E871E183E093E00E94EC196CE771E16A +:1027B00083E093E00E94E41963E571E183E093E034 +:1027C0000E94E8190E940F0E0E9467190E94761D50 +:1027D00080E891E00E94201D0BC00E941E2980917C +:1027E000F803882329F00E94492981110E94681466 +:1027F0008091FA03853089F383E093E00E94F91B0E +:102800000E94801DF5CF292F332723303105B1F0E9 +:102810004CF42130310509F44DC02230310509F066 +:102820004EC007C02132310541F12232310591F10C +:1028300046C0E0EDF0E084EE93E045C0992781309A +:10284000910569F08230910589F0892B09F037C034 +:10285000E0EEF3E0E491F0E080EE93E034C0E2EBF0 +:10286000F3E0E491F0E082EB93E02DC0E6E8F3E0E2 +:10287000E491F0E086E893E026C0643000F5E62FAE +:10288000F0E0EE0FFF1FE550FE4F80819181E9E0FF +:10289000F0E019C0643098F4E62FF0E0DF01AA0FF1 +:1028A000BB1FAD5FBD4F8D919C91E55FFD4FE081FA +:1028B000F0E009C0E2E1F0E084EB94E004C0E0E085 +:1028C000F0E080E090E0DA018D939C93CF010895D1 +:1028D00080E189BD82E189BD09B400FEFDCF809110 +:1028E000D8008F7D8093D8008091E0008260809333 +:1028F000E0008091E00081FDFCCF0895BF92CF926F +:10290000DF92EF92FF920F931F93CF93DF937C019F +:102910008B01EA010E943B16B82E811133C020972B +:1029200031F028813981021B130BE20EF31EC12CFA +:10293000D12C23C08091E80085FD15C08091E8006E +:102940008E778093E800209749F0888199818C0DDB +:102950009D1D9983888325E0B22E14C00E943B16EA +:10296000882359F00EC0F70181917F018093F10017 +:1029700001501109FFEFCF1ADF0A01151105D1F639 +:1029800001C0B82E8B2DDF91CF911F910F91FF9039 +:10299000EF90DF90CF90BF900895BF92CF92DF92DB +:1029A000EF92FF920F931F93CF93DF937C018B01E4 +:1029B000EA010E943B16B82E811133C0209731F0F6 +:1029C00028813981021B130BE20EF31EC12CD12C7E +:1029D00023C08091E80085FD15C08091E8008B77C9 +:1029E0008093E800209749F0888199818C0D9D1D86 +:1029F0009983888345E0B42E14C00E943B16882337 +:102A000059F00EC08091F100F70181937F010150D0 +:102A10001109FFEFCF1ADF0A01151105D1F601C028 +:102A2000B82E8B2DDF91CF911F910F91FF90EF90DA +:102A3000DF90CF90BF90089540910104509102041F +:102A40004617570748F06115710539F44091E800C1 +:102A50004E774093E80001C0BA01FC0140E033C06A +:102A60008091FA03882309F444C0853009F443C0F7 +:102A70008091E80083FD41C08091E80082FD33C071 +:102A80008091E80080FF1FC09091F3008091F200D8 +:102A9000392F20E0A901482BCA0106C0419140937B +:102AA000F1006150710901966115710519F08830C6 +:102AB0009105A0F341E0089709F040E08091E8001B +:102AC0008E778093E8006115710551F64111C8CFEA +:102AD0000AC08091FA03882361F0853061F080910B +:102AE000E80083FD0AC08091E80082FFF2CF80E019 +:102AF000089582E0089583E0089581E0089540916B +:102B00000104509102044617570748F061157105FA +:102B100039F44091E8004E774093E80001C0BA01D3 +:102B2000FC0140E034C08091FA03882309F445C0D9 +:102B3000853009F444C08091E80083FD42C0809153 +:102B4000E80082FD34C08091E80080FF20C09091B1 +:102B5000F3008091F200392F20E0A901482BCA012F +:102B600007C044914093F10031966150710901967C +:102B70006115710519F08830910598F341E00897C7 +:102B800009F040E08091E8008E778093E8006115BD +:102B9000710549F64111C7CF0AC08091FA03882315 +:102BA00061F0853061F08091E80083FD0AC080917A +:102BB000E80082FFF2CF80E0089582E0089583E08C +:102BC000089581E00895982F2CC09093E9009817FC +:102BD00039F07091EC002091ED005091F00003C0AD +:102BE000242F762F50E021FD02C09F5F1AC0309144 +:102BF000EB003E7F3093EB003091ED003D7F309352 +:102C0000ED003091EB0031603093EB007093EC00FD +:102C10002093ED005093F0002091EE0027FDE5CFCA +:102C200007C0973090F28F708093E90081E008959B +:102C300080E008958091FB0387FD05C08091E80046 +:102C400080FF0EC012C08091E80082FD05C0809117 +:102C5000FA038111F8CF08958091E8008B7708C0BE +:102C60008091FA038111EACF08958091E8008E7770 +:102C70008093E80008958091E4009091E50045E696 +:102C80002091EC0020FD1FC023C02091FA032223D5 +:102C900091F0253091F02091EB0025FD10C020919E +:102CA000E4003091E5002817390751F34150C9017C +:102CB00039F784E0089582E0089583E0089581E083 +:102CC000089580E008952091E80020FFDECFF9CF3D +:102CD0002091E80022FFD9CFF4CF0E94DB160E949A +:102CE000E316E0EEF0E0808181608083E8EDF0E0C3 +:102CF00080818F77808319BCA7EDB0E08C918E7FA7 +:102D00008C9380818F7E80831092F90308950F93B6 +:102D10001F93CF93DF930E94DB160E94E316C8ED4A +:102D2000D0E088818F7788838881806888838881D4 +:102D30008F7D888319BC1092FA031092F6031092CB +:102D4000F8031092F70300EE10E0F80180818B7F0A +:102D5000808388818160888342E060E080E00E9417 +:102D6000E315E1EEF0E080818E7F8083E2EEF0E01B +:102D7000808181608083808188608083F801808188 +:102D80008E7F8083888180618883DF91CF911F91BE +:102D90000F910895E8EDF0E080818F7E8083E7ED6C +:102DA000F0E080818160808384E082BF81E0809355 +:102DB000F9030C948716E8EDF0E080818E7F808324 +:102DC0001092E20008951092DA001092E100089546 +:102DD0001F920F920FB60F9211242F933F934F9390 +:102DE0005F936F937F938F939F93AF93BF93EF9373 +:102DF000FF938091E10082FF0BC08091E20082FF8F +:102E000007C08091E1008B7F8093E1000E949112C6 +:102E10008091DA0080FF1FC08091D80080FF1BC026 +:102E20008091DA008E7F8093DA008091D90080FF54 +:102E30000DC080E189BD82E189BD09B400FEFDCFEE +:102E400081E08093FA030E947C1205C019BC1092A5 +:102E5000FA030E948A128091E10080FF19C08091DC +:102E6000E20080FF15C08091E2008E7F8093E20037 +:102E70008091E20080618093E2008091D8008062BE +:102E80008093D80019BC85E08093FA030E948E12CB +:102E90008091E10084FF30C08091E20084FF2CC06B +:102EA00080E189BD82E189BD09B400FEFDCF80913A +:102EB000D8008F7D8093D8008091E1008F7E809331 +:102EC000E1008091E2008F7E8093E2008091E20039 +:102ED00081608093E2008091F603882311F084E002 +:102EE00007C08091E30087FF02C083E001C081E05A +:102EF0008093FA030E948F128091E10083FF29C022 +:102F00008091E20083FF25C08091E100877F80935C +:102F1000E10082E08093FA031092F6038091E100D1 +:102F20008E7F8093E1008091E2008E7F8093E200AB +:102F30008091E20080618093E20042E060E080E006 +:102F40000E94E3158091F00088608093F0000E9459 +:102F50008D12FF91EF91BF91AF919F918F917F91D2 +:102F60006F915F914F913F912F910F900FBE0F90F6 +:102F70001F9018951F920F920FB60F9211242F9346 +:102F80003F934F935F936F937F938F939F93AF93F1 +:102F9000BF93CF93EF93FF938091E9008F7090914F +:102FA000EC0090FF02C090E801C090E0C92FC82B50 +:102FB0001092E9008091F000877F8093F000789470 +:102FC0000E94FE171092E9008091F00088608093C3 +:102FD000F000CF70C093E900FF91EF91CF91BF91C6 +:102FE000AF919F918F917F916F915F914F913F91A1 +:102FF0002F910F900FBE0F901F9018951F93CF9396 +:10300000DF93CDB7DEB7AC970FB6F894DEBF0FBE37 +:10301000CDBFEBEFF3E08091F100819324E0E3304A +:10302000F207C9F70E94EF128091E80083FF37C1D1 +:103030008091FB039091FC03953009F488C038F42B +:103040009130B1F170F0933009F029C131C098305E +:1030500009F4F8C0993009F404C1963009F01FC191 +:103060009DC0803821F0823809F019C108C08091D4 +:10307000F7039091F803992389F082600FC0809143 +:10308000FF03909100048F7099278093E90080914D +:10309000EB0085FB882780F91092E9009091E80009 +:1030A000977F9093E8008093F1001092F100D5C0D3 +:1030B000882319F0823009F0F2C08F7121F082303C +:1030C00009F0EDC00BC08091FD03813009F0E7C02D +:1030D000933009F080E08093F8032FC08091FD03C6 +:1030E00081112BC08091FF03909100048F7099276C +:1030F000009709F4D4C08093E9002091EB0020FFF1 +:103100001CC02091FC03233021F48091EB008062ED +:1031100012C09091EB0090619093EB0021E030E0C1 +:1031200001C0220F8A95EAF72093EA001092EA0084 +:103130008091EB0088608093EB001092E900809111 +:10314000E800877F8093E8000E941A16A8C08111CA +:10315000A6C08091FD039091FE038F779927182FC9 +:103160009091E3009078982B9093E3008091E80091 +:10317000877F8093E8000E941A168091E80080FF04 +:10318000FCCF8091E30080688093E300112311F06D +:1031900083E001C082E08093FA0381C080588230CE +:1031A00008F07DC08091FD039091FE038C3D23E0EB +:1031B000920779F583E08A838AE289834FB7F8948E +:1031C000DE01139620E03EE051E2E32FF0E0509361 +:1031D0005700E49120FF03C0E295EF703F5FEF706E +:1031E0008E2F90E0EA3010F0C79601C0C0968D9304 +:1031F0009D932F5F243149F74FBF8091E800877F6F +:103200008093E8006AE270E0CE0101960E941C15EE +:1032100013C0AE01455D5F4F6091FF030E94031430 +:103220000097E9F12091E800277F2093E800BC0196 +:103230008BA59CA50E947F158091E8008B778093D9 +:10324000E8002DC0803859F58091E800877F809391 +:10325000E8008091F6038093F1008091E8008E777A +:1032600071CF81111CC09091FD039230C0F4809108 +:10327000E800877F8093E8009093F6030E941A1677 +:103280008091F603811104C08091E30087FF02C0A2 +:1032900084E001C081E08093FA030E94D112809102 +:1032A000E80083FF0AC08091E800877F8093E800F0 +:1032B0008091EB0080628093EB00AC960FB6F8949F +:1032C000DEBF0FBECDBFDF91CF911F910895CF9389 +:1032D0008091FA038823B1F08091E9008F7090917A +:1032E000EC0090FF02C090E801C090E0C92FC82B0D +:1032F0001092E9008091E80083FD0E94FE17CF70D4 +:10330000C093E900CF910895881F8827881F0895EA +:1033100091E0883F08F490E0892F0895982F907FDE +:10332000903B99F038F4903981F0903A71F09038F0 +:10333000C9F40BC0903DA1F018F4903C99F410C072 +:10334000903E19F0903F71F402C083E00895E82F99 +:10335000E15FEF3038F4F0E0E15FFD4F80810895E8 +:1033600082E0089580E008950F932F774F776F7074 +:10337000606BDC01ED91FC91022F242F462F63E05E +:1033800070E009950F9108950F932F774F776F7025 +:103390006069DC01ED91FC91022F242F462F63E040 +:1033A00070E009950F9108950F932F774F776F7005 +:1033B0006068DC01ED91FC91022F242F462F63E021 +:1033C00070E009950F910895FC017383628308955D +:1033D000FC01738F628F0895FC01758F648F0895CF +:1033E000CF93DF93EC011DA21FA21EA2BC01685D5A +:1033F0007F4F40EC88519F4F0E942D1C1B821A82E8 +:103400001D821C821F821E82198618861B861A86C0 +:103410001D861C861F861E86198A188A1B8A1A8A90 +:103420001D8A1C8A1F8A1E8A198E188E1B8E1A8E60 +:103430001D8E1C8E1F8E1E8E19A218A2DF91CF9199 +:103440000895CF92DF92FF920F931F93CF93DF9354 +:103450001F92CDB7DEB7F62E6A018C0108511F4FBF +:1034600008C0F60161916F01C80149830E94341CB4 +:1034700049818C2D841B8F15A0F30F90DF91CF9184 +:103480001F910F91FF90DF90CF900895FC01718301 +:1034900060830895FC0171A360A30895AF92BF9269 +:1034A000CF92DF92EF92FF920F931F93CF93DF9310 +:1034B00000D01F92CDB7DEB77C016B01142FB22E66 +:1034C000A02EDC0195968C9195978430F1F45A9654 +:1034D000ED91FC915B97309709F4D8C0CB0101972F +:1034E00063E070E00E943434DB01AA0FBB1FA60F1B +:1034F000B71F49832A830B834C2D4A1B9E012F5FE4 +:103500003F4FBD01C7010995B1C06230710509F493 +:1035100053C06330710529F06130710509F09CC01A +:1035200083C0842F807F803A01F130F48038B9F075 +:10353000803909F0ABC00DC0803EE9F0803F09F151 +:10354000803B09F0A3C0D7011296ED91FC9113972F +:1035500023C0D7011496ED91FC9115971DC0D7019A +:103560001696ED91FC91179717C0D7011896ED911B +:10357000FC91199711C0D7011A96ED91FC911B97F8 +:103580000BC0423F09F082C0D7011C96ED91FC911F +:103590001D97309731F47AC0309709F477C0123F05 +:1035A00021F42A2D4B2D62EF04C0612F6F702A2D5C +:1035B0004B2DC70109955AC0842F807F803D59F05B +:1035C000803F79F0803C09F061C0D7011E96ED91F3 +:1035D000FC911F9719C0D7015096ED91FC9151971E +:1035E00013C0433F31F4D7015296ED91FC915397AC +:1035F00008C0413F09F04AC0D7015496ED91FC91B3 +:103600005597309741F442C0309709F43FC0133FBB +:1036100011F0113F19F44B2D612F03C0612F6F7012 +:103620004B2DC701099522C0842F0E948819882339 +:1036300031F0D7015696ED91FC91579707C0163F90 +:1036400029F5D7015896ED91FC9159973097F1F0F3 +:10365000612FC70109950AC064307105A8F416C02E +:103660000A2D2B2D412FB601C7010995D7015E9672 +:10367000ED91FC915F97309789F00A2D2B2D412F0A +:10368000B601C70109950AC0C12CD12CD7015C969F +:10369000ED91FC915D97309719F7E8CF0F900F905F +:1036A0000F90DF91CF911F910F91FF90EF90DF90DE +:1036B000CF90BF90AF900895EF92FF920F931F931A +:1036C000CF93DF93EC01162F862F0E948819882351 +:1036D00069F0FDA081E08DA300E020E0412F61E0D2 +:1036E00070E0CE010E944E1AFDA27CC0812F0E9484 +:1036F00084194DA1882309F440C0443029F01AA34D +:1037000021E030E03FA32EA3812F0E948E1981304B +:1037100031F070F0823051F0833059F507C08DA33D +:1037200000E020E0412F61E070E01EC08DA35AC090 +:10373000103F19F0173FE9F404C084E08DA31AA3E9 +:103740003FC02EA13FA1C90163E070E00E94343464 +:103750008C0F9D1FFC0112A3B9016F5F7F4F7FA3E8 +:103760006EA30CA12BA14AA1CE010E944E1A1DA24C +:1037700039C01DA21FA21EA235C0442399F12EA15B +:103780003FA1C90163E070E00E9434347C01FE0176 +:10379000E80FF91F12A3B9016F5F7F4F7FA36EA3DC +:1037A0008130910591F082E0E816F104D9F40CA182 +:1037B0002BA14AA1CE010E944E1A8DA1843091F016 +:1037C00081E090E09FA38EA30DC0423059F400E049 +:1037D0002BA14AA1CE010E944E1A8DA1843011F076 +:1037E000FFA2EEA2DF91CF911F910F91FF90EF907A +:1037F0000895CF92DF92EF92FF920F931F93CF9392 +:10380000DF93EC01E8A1F9A1309709F009958E0149 +:1038100008511F4FC8010E94661CE12CF12CC82ED4 +:10382000D12C0FC060E0C8010E947A1C682FCE0125 +:103830000E945C1B61E0C8010E948B1C8FEFE81A9C +:10384000F80AEC14FD0470F3DF91CF911F910F91F2 +:10385000FF90EF90DF90CF900895FC014283748336 +:1038600063831182108208950F931F93CF93DF9388 +:10387000EC01062F0E94AC1C182F298130E0C901F1 +:1038800001966A8170E00E944834488150E08417B4 +:10389000950729F4812F0E94AF1C80E012C0EB81B4 +:1038A000FC81E20FF31F00832981822F90E00196B3 +:1038B0006A8170E00E9448348983812F0E94AF1C86 +:1038C00081E0DF91CF911F910F910895CF93DF9306 +:1038D000EC010E94AC1C29819881291710F0C22F9D +:1038E00002C0CA81C20FC91B0E94AF1C8C2FDF917E +:1038F000CF910895FC012081862F90E0820F911DC9 +:10390000628170E00E9448340380F481E02DE80F6A +:10391000F91F808108950F931F93CF93DF931F9218 +:10392000CDB7DEB78C0169830E94AC1C482FF8012B +:1039300080816981262F30E0280F311D6281C90105 +:1039400070E00E9448348083842F0F90DF91CF91E4 +:103950001F910F910C94AF1C8FB7F89408958FBFEF +:103960000895FC01CB012091FA032430B1F42181A8 +:103970002F702093E90040E050E064E070E00E9486 +:103980007E1481110BC09091E80095FD07C09091C5 +:10399000E8009E779093E800089582E008952091D2 +:1039A000FA032430A9F4FC0181818F708093E9002F +:1039B0003091F3002091F200932F80E0822B892B2D +:1039C00049F08091E8008E778093E8000C943B16D4 +:1039D00082E0089580E008952091FA03243051F4A4 +:1039E000FC0121812F702093E9002091E80020FD47 +:1039F0000C94CF1C0895FC01CB012091FA032430D4 +:103A000011F080E0089526812F702093E900209125 +:103A1000E80022FFF6CF2091E80025FFF2CF40E03A +:103A200050E064E070E00E94CD148091E80085FDD4 +:103A300005C08091E8008B778093E80081E00895CD +:103A400090939502809394020895E0919402F091EE +:103A50009502309721F00190F081E02D099480E0EB +:103A60000895E0919402F0919502309721F0028040 +:103A7000F381E02D09940895E0919402F09195026C +:103A8000309721F00480F581E02D0994089520916C +:103A90009602309197028217930771F090939702E4 +:103AA00080939602E0919402F0919502309721F074 +:103AB0000680F781E02D09940895209198023091B5 +:103AC00099028217930771F090939902809398025C +:103AD000E0919402F0919502309721F00084F185F5 +:103AE000E02D0994089508950C94731D0E94952962 +:103AF0000E94AD060E94692A0C9411300C94E705CF +:103B00005F926F927F928F929F92AF92BF92CF926D +:103B1000DF92EF92FF920F931F93CF93DF93CDB776 +:103B2000DEB72A970FB6F894DEBF0FBECDBF0E9456 +:103B3000BD079AE9C92E92E0D92E00E010E0AA2430 +:103B4000A394B12C502E802F0E9411093C01F60144 +:103B5000E190F1906F01E826F926E114F10431F4C7 +:103B60000F5F1F4F0530110569F73AC08091F002D1 +:103B700081FD0E941A0920E030E04501022E02C0BA +:103B8000880C991C0A94E2F7C4018E219F21892B8D +:103B900009F12E835F826820792081E0672809F48B +:103BA00080E088870E949E298160782F9A87898784 +:103BB0004E815F8168858A850E94391EF801EE0F6B +:103BC000FF1FE656FD4F80819181882599259183BD +:103BD000808316C02F5F3F4F2C30310571F6C0CF68 +:103BE0008FEF89838A831B820E949E298160782FB0 +:103BF0009D838C8349815A816B818D810E94391EFE +:103C00000E94562D1091A4020E94251D1817D9F06C +:103C10000E94251D8093A4022A960FB6F894DEBF59 +:103C20000FBECDBFDF91CF911F910F91FF90EF900D +:103C3000DF90CF90BF90AF909F908F907F906F90CC +:103C40005F900C947E1D2A960FB6F894DEBF0FBECF +:103C5000CDBFDF91CF911F910F91FF90EF90DF903B +:103C6000CF90BF90AF909F908F907F906F905F901C +:103C70000895CF93DF93CDB7DEB72B970FB6F894A7 +:103C8000DEBF0FBECDBF4F83588769877A878B878A +:103C9000DE01119686E0FD0111928A95E9F785E033 +:103CA000FE01379601900D928A95E1F749815A817C +:103CB0006B817C818D819E810E9415262B960FB68B +:103CC000F894DEBF0FBECDBFDF91CF910895CF93A3 +:103CD000C82F882309F4C1C0823859F40E94251DD9 +:103CE00081FDBBC089E30E947C280E94F82889E3FB +:103CF0000CC0833879F40E94251D80FDAEC083E599 +:103D00000E947C280E94F82883E50E949E28CF917B +:103D10000C94F828843859F40E94251D82FD9DC01A +:103D200087E40E947C280E94F82887E4EECF845024 +:103D3000813A48F48C2F0E94732F81118EC08C2FF2 +:103D40000E947C28E4CF8C2F805E883050F4C770AE +:103D500081E090E001C0880FCA95EAF70E94BF2871 +:103D6000D6CF8C2F855A833078F4C53A29F0C63ADD +:103D700031F482E890E005C081E890E002C083E879 +:103D800090E0CF910C94471D8C2F885A833108F016 +:103D900064C0C83A39F1C93A41F1CA3A49F1CB3A5B +:103DA00051F1CC3A59F1CD3A61F1C03B69F1CE3ACB +:103DB00071F1CF3A79F1C13B81F1C23B89F1C33B4B +:103DC00091F1C43B99F1C53BA1F1C63BA9F1C73BB9 +:103DD000B1F1C83BB9F1C93BC1F1CA3BC9F58AE2AF +:103DE00092E038C082EE90E035C089EE90E032C0BB +:103DF0008AEE90E02FC085EB90E02CC086EB90E03F +:103E000029C087EB90E026C08CEC90E023C08DECBD +:103E100090E020C083E891E01DC08AE891E01AC0DC +:103E200082E991E017C084E991E014C081E292E058 +:103E300011C083E292E00EC084E292E00BC085E202 +:103E400092E008C086E292E005C087E292E002C0FC +:103E500080E090E0CF910C945D1DCF910895882370 +:103E600009F44DC0823859F40E94251D81FF47C0D6 +:103E700089E30E947C280E94F82889E30CC08338DB +:103E800071F40E94251D80FF3AC083E50E947C28C2 +:103E90000E94F82883E50E949E280C94F828843814 +:103EA00059F40E94251D82FF2AC087E40E947C28C5 +:103EB0000E94F82887E4EFCF982F9450913A08F4A5 +:103EC000EACF982F905E983058F4282F277081E021 +:103ED00090E001C0880F2A95EAF70E94C528DDCF3F +:103EE000982F955A933020F480E090E00C94471D71 +:103EF000885A833120F480E090E00C945D1D089591 +:103F0000882321F00E94BF280C94F8280895882364 +:103F100021F00E94C5280C94F8280895BF92CF92F2 +:103F2000DF92EF92FF920F931F93CF93DF93CDB762 +:103F3000DEB727970FB6F894DEBF0FBECDBF8C015A +:103F400085E0F801DE01119601900D928A95E1F766 +:103F5000F80130812181F280558152955F70838113 +:103F60009481892B39F02F3F41F481E090E03F3F6D +:103F700031F003C081E090E002C080E090E080FD7D +:103F800073C339832A8389819A815E830E94392889 +:103F9000B92E8F830E9438280E9460272B2D2295EE +:103FA0002F7030E05E816F812530310509F4E6C065 +:103FB0006CF4243031050CF0A2C04B2D407F8B2DCA +:103FC0008F70223031050CF045C017C02C30310500 +:103FD0004CF42A3031050CF0E7C12830310509F0E6 +:103FE00043C3E5C02D30310509F4BAC20CF4A2C2B6 +:103FF0002F30310509F038C323C3182F411101C0F8 +:1040000002C01295107FFF2059F0112309F46BC2F2 +:10401000812F6F830E94CF280E94F8286F8163C28E +:10402000862F0E942F1F112309F41EC3812F0E9487 +:10403000D52827960FB6F894DEBF0FBECDBFDF910F +:10404000CF911F910F91FF90EF90DF90CF90BF9095 +:104050000C94F828403211F08295807F662319F085 +:10406000613071F523C0FF20B1F0511101C032C0A1 +:10407000513081F527960FB6F894DEBF0FBECDBF45 +:10408000DF91CF911F910F91FF90EF90DF90CF9034 +:10409000BF900C94DF28511101C003C0513009F4C6 +:1040A000E3C28E830E94E2288E819AC1FF2021F014 +:1040B000563008F0D9C20EC0553008F0D5C290C1B4 +:1040C000FF20C9F0552331F0F801958190FF0BC214 +:1040D0009F70958327960FB6F894DEBF0FBECDBFB5 +:1040E000DF91CF911F910F91FF90EF90DF90CF90D4 +:1040F000BF900C94801F552309F472C109C22B2D67 +:1041000026952695237030E02115310529F02130C0 +:10411000310509F0A9C219C0FF2021F0862F9B2D7F +:10412000937002C080E090E027960FB6F894DEBF4F +:104130000FBECDBFDF91CF911F910F91FF90EF90F8 +:10414000DF90CF90BF900C94471DFF2021F0862F69 +:104150009B2D937002C080E090E027960FB6F894F4 +:10416000DEBF0FBECDBFDF91CF911F910F91FF90AA +:10417000EF90DF90CF90BF900C945D1D862FFF20B5 +:1041800019F00E945C2C02C00E94C42C27960FB626 +:10419000F894DEBF0FBECDBFDF91CF911F910F917D +:1041A000FF90EF90DF90CF90BF900C944B2D8B2D14 +:1041B000837009F079C0F11057C2262F22952695F9 +:1041C0002770220F220F862F8F70C82ED12CE12C42 +:1041D000F12C022E04C0CC0CDD1CEE1CFF1C0A943A +:1041E000D2F764FF10C06FE070E080E090E004C0A0 +:1041F000660F771F881F991F2A95D2F760957095D3 +:104200008095909503C060E070E0CB012B2D269542 +:1042100026952370422F50E042305105D9F04330AB +:10422000510569F16C297D298E299F29413051055D +:1042300051F127960FB6F894DEBF0FBECDBFDF91C8 +:10424000CF911F910F91FF90EF90DF90CF90BF9093 +:104250000C9475276C297D298E299F2927960FB6E6 +:10426000F894DEBF0FBECDBFDF91CF911F910F91AC +:10427000FF90EF90DF90CF90BF900C9487270E9423 +:104280007527C701B60127960FB6F894DEBF0FBE9B +:10429000CDBFDF91CF911F910F91FF90EF90DF90F5 +:1042A000CF90BF900C946327FF2019F08B2D817065 +:1042B00001C08695882309F4D7C1262F229526951B +:1042C0002770220F220F862F8F70C82ED12CE12C41 +:1042D000F12C022E04C0CC0CDD1CEE1CFF1C0A9439 +:1042E000D2F764FF10C06FE070E080E090E004C09F +:1042F000660F771F881F991F2A95D2F760957095D2 +:104300008095909503C060E070E0CB012B2D269541 +:1043100026952370422F50E042305105D9F04330AA +:10432000510569F16C297D298E299F29413051055C +:1043300051F127960FB6F894DEBF0FBECDBFDF91C7 +:10434000CF911F910F91FF90EF90DF90CF90BF9092 +:104350000C9414286C297D298E299F2927960FB645 +:10436000F894DEBF0FBECDBFDF91CF911F910F91AB +:10437000FF90EF90DF90CF90BF900C9426280E9482 +:104380001428C701B60127960FB6F894DEBF0FBEFA +:10439000CDBFDF91CF911F910F91FF90EF90DF90F4 +:1043A000CF90BF900C940228603F59F120F4603EFA +:1043B00008F494C008C0623F09F467C0F0F1633F9D +:1043C00009F08CC065C0162F1F708B2D8F71FF20D8 +:1043D00021F00E94AD27812F7DCE0E94C827812F1A +:1043E00027960FB6F894DEBF0FBECDBFDF91CF91F9 +:1043F0001F910F91FF90EF90DF90CF90BF900C94A2 +:10440000871FFF20B1F0553008F02EC18B2D8F7122 +:1044100027960FB6F894DEBF0FBECDBFDF91CF91C8 +:104420001F910F91FF90EF90DF90CF90BF900C9471 +:10443000E727563008F018C1E9CFFF2099F08B2DFF +:104440008F7127960FB6F894DEBF0FBECDBFDF91F8 +:10445000CF911F910F91FF90EF90DF90CF90BF9081 +:104460000C94AD278B2D8F7127960FB6F894DEBF75 +:104470000FBECDBFDF91CF911F910F91FF90EF90B5 +:10448000DF90CF90BF900C94C827F110EBCFD7CF1F +:10449000FF2099F08B2D8F7127960FB6F894DEBF11 +:1044A0000FBECDBFDF91CF911F910F91FF90EF9085 +:1044B000DF90CF90BF900C949E2727960FB6F8946C +:1044C000DEBF0FBECDBFDF91CF911F910F91FF9047 +:1044D000EF90DF90CF90BF900C949927FF20A9F028 +:1044E000552309F4ACCF862F27960FB6F894DEBF7C +:1044F0000FBECDBFDF91CF911F910F91FF90EF9035 +:10450000DF90CF90BF900C94671E552309F4AACF7B +:10451000862F27960FB6F894DEBF0FBECDBFDF9172 +:10452000CF911F910F91FF90EF90DF90CF90BF90B0 +:104530000C942F1F4B2D4F70C8010E941A03279611 +:104540000FB6F894DEBF0FBECDBFDF91CF911F91A4 +:104550000F91FF90EF90DF90CF90BF900C94CB26FF +:10456000F11082C09B2D9F70492F50E042305105C1 +:1045700099F144F44115510569F04130510509F0B4 +:1045800073C019C043305105C1F14430510509F0E1 +:104590006BC044C027960FB6F894DEBF0FBECDBFE8 +:1045A000DF91CF911F910F91FF90EF90DF90CF900F +:1045B000BF900C94223027960FB6F894DEBF0FBE42 +:1045C000CDBFDF91CF911F910F91FF90EF90DF90C2 +:1045D000CF90BF900C94393027960FB6F894DEBF79 +:1045E0000FBECDBFDF91CF911F910F91FF90EF9044 +:1045F000DF90CF90BF900C94553027960FB6F8946B +:10460000DEBF0FBECDBFDF91CF911F910F91FF9005 +:10461000EF90DF90CF90BF900C946830862F279654 +:104620000FB6F894DEBF0FBECDBFDF91CF911F91C3 +:104630000F91FF90EF90DF90CF90BF900C948C3053 +:104640004B2D4F70C80127960FB6F894DEBF0FBEF2 +:10465000CDBFDF91CF911F910F91FF90EF90DF9031 +:10466000CF90BF900C941B0927960FB6F894DEBF2D +:104670000FBECDBFDF91CF911F910F91FF90EF90B3 +:10468000DF90CF90BF9008950E94DC280E94B1284F +:104690000E94F8280E94F72D0E944B2D80E090E0A8 +:1046A0000E94471D80E090E00C945D1D0E94CC2884 +:1046B0000C9444230E943928292F22952F7030E032 +:1046C0002C3031054CF42A3031056CF4225031097C +:1046D0002230310590F407C02C30310551F02F30D5 +:1046E000310559F406C0803E10F0803F31F481E07E +:1046F000089593FB882780F9089580E00895CF936B +:10470000DF9300D000D01F92CDB7DEB70F900F908F +:104710000F900F900F90DF91CF910895CF93DF937B +:1047200000D000D000D0CDB7DEB726960FB6F894F3 +:10473000DEBF0FBECDBFDF91CF9108951F93CF9302 +:10474000DF93C091DB0216E012C0D0E01C9FF001A5 +:104750001D9FF00D1124E555FD4F4081518162816F +:104760007381848195810E948E232196C7708091E8 +:10477000DC02C813EACFDF91CF911F9108954091D9 +:10478000A5025091A6026091A7027091A8028091A3 +:10479000A9029091AA020C948E230F931F93CF939A +:1047A000DF938091AA0282958F7009F069C0809191 +:1047B000A702882309F464C0A091DB02D091DC0237 +:1047C000B091A502C091A6028091A8029091A90281 +:1047D00021E030E0BF3F11F020E030E0122FBC01BB +:1047E0006095709506E04AC0009721F0CF3F29F40C +:1047F000212F05C021E030E002C020E030E020FDA4 +:104800003BC04A2F50E0049FF001059FF00D11249A +:10481000E555FD4F2181C2132FC02081B2132CC05A +:104820002281211129C0238134812817390718F0EA +:10483000281B390B02C0260F371F283C3105E0F436 +:104840008091AA028F7080618093AA0286E0849F83 +:10485000F001859FF00D1124E055FD4F80818F7090 +:104860008061808385EA92E00E948E1FDF91CF9164 +:104870001F910F910C949E23AF5FA770AD13B4CF1F +:10488000DF91CF911F910F910895EF92FF920F93B7 +:104890001F93CF93DF93CDB7DEB762970FB6F8942F +:1048A000DEBF0FBECDBF8C0185E0F801DE011D9695 +:1048B00001900D928A95E1F7D8014C9111965C9187 +:1048C000119712966C9112971396ED90FC90149795 +:1048D0007091A502E091A6028091A8029091A90290 +:1048E000009739F0EF3F41F421E030E07F3F31F0B5 +:1048F00003C021E030E002C020E030E020FD5CC1D8 +:104900002091A702222309F4F1C0E816F90628F045 +:104910009701281B390BC90104C0809590958E0D15 +:104920009F1D883C910508F098C08091AA02982F9D +:10493000907F09F064C0E51314C0741312C06111B4 +:1049400010C08F7080618093AA020E94BF2385EA05 +:1049500092E00E948E1F8091AA02D80115968C9336 +:1049600043C1EF2839F05F3F41F481E090E04F3FD1 +:1049700031F003C081E090E002C080E090E080FD73 +:1049800003C081E0862702C080E090E080FF2EC057 +:104990008091DB022091DC0236E013C090E0389F6A +:1049A000F001399FF00D1124E555FD4F718157132A +:1049B00006C07081471303C07281671317C0019648 +:1049C00087708213EBCF12C19F7059F0882309F4CE +:1049D0000BC107C09F7029F0F8019581907F09F401 +:1049E00003C1805E883008F4FFC0D2C0662309F49A +:1049F000FBC08091AA0281608093AA02F5C0E513F2 +:104A000008C0741306C0611104C0D80115968C93B8 +:104A10009DC04D875E878D859E856A8B0E945A2337 +:104A20006A89882309F4B4C0662309F4B1C02091CF +:104A3000AA02822F82958F7090E002970CF4C6C074 +:104A40008091A5029091A60298878F831986FB8694 +:104A5000EA862C87CE01079646C08091AA02982F3D +:104A6000907F59F47E2DF98AE88A89890E947F23F4 +:104A700085EA92E00E948E1F95C0E51311C0741361 +:104A80000FC061110DC0F8018583C8010E948E1FFF +:104A9000E5EAF2E086E0DF011D928A95E9F7A2C01F +:104AA0004D875E878D859E856A8B0E945A236A8911 +:104AB000882309F46DC0662309F46AC02091AA0214 +:104AC000822F82958F7090E002970CF47FC08091C6 +:104AD000A5029091A6029A8389831B82FD82EC82B3 +:104AE0002E83CE0101960E948E1F70C0E816F90633 +:104AF00028F09701281B390BC90104C080959095B7 +:104B00008E0D9F1D883C910508F046C0662309F470 +:104B10003FC0E51330C074132EC02091AA0220FDBF +:104B200021C0322F32953F70832F90E00097D1F053 +:104B3000D80115962C9315970F9741F0832F8F5F0F +:104B40008295807F2F70282B15962C93C8010E9488 +:104B50008E1F86E0F801A5EAB2E001900D928A95D9 +:104B6000E1F73EC086E0F801A5EAB2E001900D92BF +:104B70008A95E1F737C04D875E878D859E850E94B7 +:104B80005A23811123C08091AA0281608093AA02D6 +:104B9000C8010E948E1F26C07E2DF98AE88A898965 +:104BA0000E947F23E5EAF2E086E0DF011D928A950C +:104BB000E9F70E94BF2318C0662351F34D875E8733 +:104BC0008D859E850E945A23882311F386E0F80183 +:104BD000A5EAB2E001900D928A95E1F70E94CD23FB +:104BE0000E94BF2381E014C080E012C04D875E8721 +:104BF0008D859E850E943928292F22952F7030E0BF +:104C0000223031050CF4E0CE243031050CF6E2CE32 +:104C100062960FB6F894DEBF0FBECDBFDF91CF9185 +:104C20001F910F91FF90EF9008951F93CF93DF9303 +:104C3000CDB7DEB72C970FB6F894DEBF0FBECDBF51 +:104C40004F83588769877A878B879C87CE01079621 +:104C50000E9445248823D9F02F8138858A859B8539 +:104C6000892B39F03F3F19F080E090E004C02F3FDE +:104C7000D9F781E090E0892B09F06DC04F8158850C +:104C800069857A858B859C850E948E2364C086E029 +:104C9000FE013796DE01119601900D928A95E1F79B +:104CA000FF81E8854A855B854115510539F0EF3F65 +:104CB00041F481E090E0FF3F31F003C081E090E0FB +:104CC00002C080E090E080FD46C02091DC0230E030 +:104CD000C9010196877099276091DB0270E0861701 +:104CE000970709F440C0F983EA835D834C8396E01B +:104CF000929FD001939FB00D1124A555BD4FFE0189 +:104D0000319601900D929A95E1F78093DC020E9412 +:104D10009E2321C0189FC001112485559D4F0E94DC +:104D20004524882371F1E091DB021E9FF0011124DC +:104D3000E555FD4F40815181628173818481958168 +:104D40000E948E238091DB0290E001968770992764 +:104D50008093DB0201C016E08091DB029091DC02BF +:104D60008913D8CF0EC00E9456231092DC021092F5 +:104D7000DB02E5EAF2E086E0DF011D928A95E9F7C1 +:104D8000EACF2C960FB6F894DEBF0FBECDBFDF91F1 +:104D9000CF911F910895DF92EF92FF920F931F938F +:104DA000CF93DF93EC01009709F46EC0D12CEE2471 +:104DB000E394F12C8E010F5F1F4FFE018491843725 +:104DC00048F4843008F04CC0813071F0823009F032 +:104DD0005BC01EC0853709F43FC080F1982F9458FE +:104DE000903708F051C03FC02296F8018491982F67 +:104DF000905E983050F48770FE2D01C0FF0F8A95A9 +:104E0000EAF78F2F0E94CF2813C00E94671E2FC081 +:104E10002296F8018491982F905E983060F4877004 +:104E2000FE2D01C0FF0F8A95EAF78F2F0E94D5282B +:104E30000E94F8281CC00E942F1F19C02296F8015A +:104E4000049107C08FE99FE00197F1F700C00000CF +:104E500001500111F7CF0BC02296F801D49007C082 +:104E60000E94671E03C08F770E942F1FE8018D2DBF +:104E700007C08150EFE9FFE03197F1F700C0000073 +:104E8000882309F497CFF5CFDF91CF911F910F9130 +:104E9000FF90EF90DF9008956093E1027093E2023B +:104EA0008093E3029093E4020C9444236093DD0228 +:104EB0007093DE028093DF029093E0020C9444230F +:104EC00008950C944C270F931F930091E1021091C9 +:104ED000E2022091E3023091E402602B712B822BDD +:104EE000932B1F910F910C944C270F931F930091BC +:104EF000E1021091E2022091E3023091E40260238A +:104F00007123822393231F910F910C944C270F93AD +:104F10001F930091E1021091E2022091E30230918F +:104F2000E40260277127822793271F910F910C9429 +:104F30004C2760E070E0CB010C94562741E050E034 +:104F400060E070E004C0440F551F661F771F8A950C +:104F5000D2F7CB01BA010C94562741E050E060E053 +:104F600070E004C0440F551F661F771F8A95D2F763 +:104F70008091DD029091DE02A091DF02B091E0020B +:104F8000482B592B6A2B7B2BCB01BA010C9456274B +:104F900041E050E060E070E004C0440F551F661F20 +:104FA000771F8A95D2F740955095609570958091BE +:104FB000DD029091DE02A091DF02B091E002482371 +:104FC00059236A237B23CB01BA010C94562741E075 +:104FD00050E060E070E004C0440F551F661F771F6B +:104FE0008A95D2F78091DD029091DE02A091DF02D6 +:104FF000B091E002482759276A277B27CB01BA01E5 +:105000000C9456270F931F930091DD021091DE023E +:105010002091DF023091E002602B712B822B932BC9 +:105020001F910F910C9456270F931F930091DD024F +:105030001091DE022091DF023091E00260237123A3 +:10504000822393231F910F910C9456270F931F9344 +:105050000091DD021091DE022091DF023091E0022A +:1050600060277127822793271F910F910C94562751 +:105070000895CF92DF92EF92FF920F931F93CF93F9 +:10508000DF93EC01C090E102D090E202E090E302F5 +:10509000F090E4028091DD029091DE02A091DF02A7 +:1050A000B091E002C82AD92AEA2AFB2A0FE110E0CF +:1050B000B701A601002E04C07695679557954795D0 +:1050C0000A94D2F740FF08C0BE01802F0E947104ED +:1050D0008130910509F007C00150110948F7BE0160 +:1050E00080E00E947104DF91CF911F910F91FF909A +:1050F000EF90DF90CF90089540918B0150918C01FB +:1051000020E030E09FEFFA01E20FF31F62816817A1 +:10511000A1F09F3F19F4611101C0922F2F5F3F4F03 +:105120002630310581F707C0FA01E90FF11D97FD1F +:10513000FA95828308959F3FB9F7089540918B01B6 +:1051400050918C0120E030E0FA01E20FF31F9281D0 +:10515000981301C012822F5F3F4F26303105A1F70F +:10516000089581E090E0E0918B01F0918C01E80FCF +:10517000F91F1082019688309105A9F70895909142 +:10518000E502982B9093E502089580959091E502B1 +:1051900098239093E50208951092E5020895909166 +:1051A000E602982B9093E602089580959091E6028E +:1051B00098239093E60208951092E6020895809352 +:1051C000E70208951092E702089540918B015091F3 +:1051D0008C0120E030E080E0FA01E20FF31F9181C2 +:1051E00091118F5F2F5F3F4F27303105A9F7089549 +:1051F000E0918B01F0918C018091E5028083E09138 +:105200008B01F0918C0180819091E602892B808343 +:105210009091E702992361F0E0918B01F0918C016C +:105220008081892B80830E94E52881110E94E228D9 +:1052300080918B0190918C010C94311D8091FA0327 +:10524000843021F11092F10220E488E190E00FB661 +:10525000F894A895809360000FBE2093600080E0D2 +:105260000E94590383B7817F846083BF83B78160C5 +:1052700083BF7894889583B78E7F83BF88E10FB60C +:10528000F89480936000109260000FBE0895089516 +:105290000895CF9380E00E9459030E9447290E94FD +:1052A000BD070E944829C0E08C2F0E941109892B5C +:1052B00029F4CF5FC530C1F780E001C081E0CF9114 +:1052C00008950E94562380E00E9459030E941130E5 +:1052D0000E94251D0C94E7051F920F920FB60F92A6 +:1052E00011248F939F93AF93BF938091F10281110B +:1052F00013C08091F2029091F302A091F402B09158 +:10530000F5024196A11DB11D8093F2029093F30224 +:10531000A093F402B093F502BF91AF919F918F914A +:105320000F900FBE0F901F90189582E084BD93E000 +:1053300095BD9AEF97BD80936E0008958FB7F8944E +:105340004091F2025091F3026091F4027091F502E3 +:105350008FBFCA010895CF92DF92EF92FF920F9311 +:105360001F932FB7F8944091F2025091F30260918D +:10537000F4027091F5022FBF6A017B01EE24FF2435 +:105380008C0120E030E0C016D106E206F30620F0E2 +:105390009A01281B390B05C09C0120953095240FDC +:1053A000351FC9011F910F91FF90EF90DF90CF90B3 +:1053B00008951F920F920FB60F9211248F939F930F +:1053C000AF93BF938091F2029091F302A091F40207 +:1053D000B091F5020196A11DB11D8093F202909348 +:1053E000F302A093F402B093F502BF91AF919F91A5 +:1053F0008F910F900FBE0F901F9018950E946D1601 +:10540000F8942FEF87EA91E6215080409040E1F731 +:1054100000C0000087E090EBDC01809304049093CF +:105420000504A0930604B09307042CE088E190E003 +:105430000FB6F894A895809360000FBE209360008B +:10544000FFCFCF92DF92EF92FF920F931F93CF93F4 +:10545000DF93C82ED12C01E010E08D2D0E941109A0 +:105460007C01C0E0D0E098010C2E02C0220F331F57 +:105470000A94E2F72E213F21232B29F42196CC30E8 +:10548000D10589F708C06C2F7D2D80E00E944C0467 +:10549000C812F4CF06C0D39485E0D812DECF80E0E6 +:1054A00001C081E0DF91CF911F910F91FF90EF90AC +:1054B000DF90CF900895CF93C82F8CE20E94212ACD +:1054C000882321F08C2FCF910C94212A80E0CF915A +:1054D0000895CF930E94AC2B811102C00E948D2BA6 +:1054E000C5E608C00E94BD078FE39CE90197F1F76C +:1054F00000C00000C150B1F789E20E945B2A81110F +:105500000AC18AE20E945B2A81110E948D2B85E0EC +:105510000E945B2A81110E94FE290E94B72B809372 +:10552000F00287E00E945B2A882399F18BE10E94B8 +:105530005B2A882351F09091F00291FB882780F933 +:1055400021E0822780FB91F922C08EE00E945B2A35 +:10555000882351F09091F00292FB882780F921E096 +:10556000822780FB92F913C080E10E945B2A909110 +:10557000F002882341F093FB882780F921E08227FD +:1055800080FB93F904C0892F809580FB90F990935C +:10559000F0028091F0020E94BB2B0E94C92B8093E5 +:1055A000010380EE0E945B2A882341F08091010371 +:1055B000982F909590FB80F98093010389E30E94D6 +:1055C0005B2A882359F09091010391FB882780F989 +:1055D00021E0822780FB91F99093010382EE0E94E3 +:1055E0005B2A882359F09091010392FB882780F968 +:1055F00021E0822780FB92F99093010386EE0E94BE +:105600005B2A882359F09091010393FB882780F946 +:1056100021E0822780FB93F99093010383EE0E949F +:105620005B2A882359F09091010394FB882780F925 +:1056300021E0822780FB94F99093010385E30E9487 +:105640005B2A882359F09091010395FB882780F904 +:1056500021E0822780FB95F99093010381E30E946A +:105660005B2A882359F09091010396FB882780F9E3 +:1056700021E0822780FB96F99093010381E10E944B +:105680005B2A882359F09091010397FB882780F9C2 +:1056900021E0822780FB97F9909301038091010319 +:1056A0000E94CD2B87E20E945B2AC82F8EE10E94C8 +:1056B0005B2A8111C2608FE10E945B2A8111C46064 +:1056C00080E20E945B2A8111C86081E20E945B2A0D +:1056D0008111C06182E20E945B2A8111C06283E273 +:1056E0000E945B2A8111C06484E20E945B2A8823A5 +:1056F00011F0C06802C0CC2329F08C2F0E94C42B6B +:105700006C2F03C00E94C02B682F70E080E090E0F7 +:10571000CF910C946127CF9108956DEE7EEF80E0DC +:1057200090E00E94783460E082E090E00E946A3469 +:1057300060E083E090E00E946A3460E084E090E002 +:105740000E946A3460E085E090E00E946A3460E084 +:1057500086E090E00C946A3480E090E00E9464342B +:1057600021E08D3E9E4F09F020E0822F089582E0D7 +:1057700090E00C945C34682F82E090E00C946A34E2 +:1057800083E090E00C945C34682F83E090E00C940C +:105790006A3484E090E00C945C34682F84E090E0FC +:1057A0000C946A3486E090E00C945C34682F86E0B8 +:1057B00090E00C946A348091FE0280FF0BC06091EF +:1057C000900185E0689FB0011124759567957595E6 +:1057D00067952AC081FF09C06091900185E0689FAC +:1057E000B0011124759567951FC082FF07C06091B5 +:1057F000900185E0689FB001112416C04091F80225 +:105800004423C9F060918F01461788F720919001D9 +:1058100085E0289F90011124429FC001439F900D75 +:10582000112470E00E9448346038710540F461151D +:10583000710539F002C065E070E0862F08958FE7AA +:10584000089581E008958091FE0280FF08C0609174 +:105850008E0170E0759567957595679521C081FFFC +:1058600006C060918E0170E07595679519C082FF42 +:1058700004C060918E0170E010C08091F80288230E +:10588000C1F060918D018617A0F790918E01989FCD +:10589000C001112470E00E9448346038710528F47A +:1058A0006115710521F0862F08958FE7089581E035 +:1058B000089561E070E0F4CF803F21F40E94DB2B7B +:1058C000819504C0813F29F40E94DB2B8093FB0269 +:1058D0000895823F21F40E94DB2B819504C0833F11 +:1058E00029F40E94DB2B8093FA020895893F19F472 +:1058F0000E94232C05C08A3F31F40E94232C8195FD +:105900008093FC0208958B3F21F40E94232C819503 +:1059100004C08C3F29F40E94232C8093FD0208953B +:10592000843F21F48091F902816017C0853F21F402 +:105930008091F902826011C0863F21F48091F902C2 +:1059400084600BC0873F21F48091F902886005C014 +:10595000883F31F48091F90280618093F9020895C3 +:105960008D3F21F48091FE0281600BC08E3F21F4B7 +:105970008091FE02826005C08F3F29F48091FE0273 +:1059800084608093FE020895803F29F48091FB0299 +:1059900087FF6EC007C0813F41F48091FB0218165B +:1059A0000CF066C01092FB0263C09091FA02823F35 +:1059B00019F497FF5DC005C0833F31F419160CF050 +:1059C00057C01092FA0254C0893F31F48091FC0212 +:1059D00018160CF04DC006C08A3F39F48091FC02C5 +:1059E00087FF46C01092FC0243C08B3F29F4809190 +:1059F000FD0287FF3DC006C08C3F39F48091FD0257 +:105A00001816B4F51092FD0233C0843F21F4809142 +:105A1000F9028E7F05C0853F31F48091F9028D7FB8 +:105A20008093F90225C0863F21F48091F9028B7F93 +:105A3000F7CF873F21F48091F902877FF1CF883F2C +:105A400021F48091F9028F7EEBCF8D3F21F480917C +:105A5000FE028E7F0BC08E3F21F48091FE028D7F6F +:105A600005C08F3F29F48091FE028B7F8093FE0258 +:105A70008091FA0281110EC08091FB0281110AC04F +:105A80008091FC02811106C08091FD02811102C04B +:105A90001092F802089589EF92E00E943C1D0E9446 +:105AA0009E299093F7028093F6020895CF938091F8 +:105AB000F6029091F7020E94AB294091F80244232C +:105AC00021F02091910130E006C0209192015AE02E +:105AD000259F900111248217930708F486C08091B6 +:105AE000FA0281110DC09091FB02911109C09091B1 +:105AF000FC02911105C09091FD02992309F475C033 +:105B00004F3F19F04F5F4093F802181624F40E949B +:105B1000DB2B8093FA028091FA0287FF05C00E9476 +:105B2000DB2B81958093FA028091FB02181624F4F6 +:105B30000E94DB2B8093FB028091FB0287FF05C054 +:105B40000E94DB2B81958093FB026091FA02662311 +:105B500039F1C091FB02CC2319F1772767FD7095CD +:105B6000872F972F0E94AC3123E333E343E35FE3B6 +:105B70000E9460320E9479316093FA026C2F77277D +:105B800067FD7095872F972F0E94AC3123E333E395 +:105B900043E35FE30E9460320E9479316093FB022D +:105BA0008091FC02181624F40E94232C8093FC029E +:105BB0008091FC0287FF05C00E94232C8195809371 +:105BC000FC028091FD02181624F40E94232C80937D +:105BD000FD028091FD0287FF05C00E94232C819564 +:105BE0008093FD02CF910C944B2DCF910895E9EF56 +:105BF000F2E085E0DF011D928A95E9F71092F80244 +:105C00001092FE020895833089F130F4813061F002 +:105C1000823009F06EC019C0853009F449C0B8F16E +:105C2000863009F066C055C020919201862F90E021 +:105C3000820F911D8F3F910520F4620F60939201B6 +:105C400008958FEF80939201089520919101862FFE +:105C500090E0820F911D8F3F910520F4620F6093B9 +:105C6000910108958FEF8093910108952091900103 +:105C7000862F90E0820F911D8F3F910520F4620FD7 +:105C80006093900108958FEF809390010895209183 +:105C90008F01862F90E0820F911D8F3F910520F498 +:105CA000620F60938F0108958FEF80938F010895A5 +:105CB00020918E01862F90E0820F911D8F3F9105DC +:105CC00020F4620F60938E0108958FEF80938E0110 +:105CD000089520918D01862F90E0820F911D8F3FB6 +:105CE000910520F4620F60938D0108958FEF8093EA +:105CF0008D010895833021F130F4813059F08230E4 +:105D000009F049C012C0853089F128F1863009F0C8 +:105D100042C037C080919201681720F4861B80939F +:105D2000920108951092920108958091910168174F +:105D300020F4861B8093910108951092910108959B +:105D400080919001681720F4861B8093900108953C +:105D500010929001089580918F01681720F4861B9E +:105D600080938F01089510928F01089580918E0184 +:105D7000681720F4861B80938E01089510928E017F +:105D8000089580918D01681720F4861B80938D0102 +:105D9000089510928D01089541E050E060E070E0B8 +:105DA00004C0440F551F661F771F8A95D2F7CB0199 +:105DB000BA010E9461270C945623873200F58E3178 +:105DC00008F086C08E3009F466C060F4873009F4AC +:105DD0004DC018F4863049F531C0883041F18B3020 +:105DE00021F57BC0863109F478C018F48031E9F4DC +:105DF0005CC0893109F471C08B31B9F442C0883379 +:105E000009F46BC048F4893209F460C0853309F4A1 +:105E10005DC0873251F45AC0833409F457C018F476 +:105E20008A3318F057C0883499F080E008950E94B2 +:105E3000B72B0E94C92B0E94D22B4FC08091F00239 +:105E4000817F8E7F8093F00281E08093FF0208952E +:105E50000E9456232FEF83ED90E321508040904025 +:105E6000E1F700C000000E94FE2937C08091F002D7 +:105E700080FF03C0817F8E7F01C081608093F0022C +:105E80002CC09091F00291FB882780F921E08227B5 +:105E900080FB91F913C09091F00292FB882780F962 +:105EA00021E0822780FB92F909C09091F00293FBD8 +:105EB000882780F921E0822780FB93F99093F002F4 +:105EC000882359F091609093F00207C080E003C0EE +:105ED0008D5101C089530E94CC2E81E0089580E04D +:105EE000089580E00895CF93C82F8091FF028130FC +:105EF00071F020F0823009F089C037C0A0918B0189 +:105F0000B0918C018C91823209F082C007C0A091BF +:105F10008B01B0918C018C91823249F48C2F0E94BC +:105F20006F2F81111EC08C2F0E94DD2E1CC08C2F64 +:105F30000E94712F811115C0C43169F030F4CB304B +:105F400081F0C03109F068C009C0C93221F0C833FE +:105F500009F062C006C01092FF025EC082E080932A +:105F6000FF0281E090E081705AC0C932C9F060F44C +:105F7000C431B1F020F4C73009F04CC034C0CE5168 +:105F8000C63008F047C017C0CE3439F120F4CB3406 +:105F900009F040C01CC0C135C1F0C235D9F513C0ED +:105FA00080910003882319F01092000333C081E030 +:105FB0008093FF0234C0EC2FF0E0E25EFD4F808161 +:105FC0008093000327C061E003C061E007C06AE07E +:105FD000809100030E94032E1DC06AE0809100039F +:105FE0000E947A2E17C08EE18093920182E3809303 +:105FF00091018AE08093900184E180938F0188E091 +:1060000080938E0188E280938D0104C01092FF027C +:1060100080E005C081E003C080E090E0A4CFCF9194 +:1060200008950E94AC2B811102C00E948D2B0E940A +:10603000D22B8093030480FF02C0869501C080E0CC +:106040000C94590380910304982F9695292F30E0E2 +:10605000233031054CF49F5F990F8170892B81604B +:10606000809303040E94D62B8091030486950C94A0 +:10607000590380910304982F969591F09158990FA8 +:106080008170892B809303048E7F91E009F490E066 +:106090008091030490FB80F9809303040E94D62B27 +:1060A0008091030486950C94590380910304982FE2 +:1060B000909590FB80F9809303040E94D62B8091E9 +:1060C000030480FF02C0869501C080E00C94590350 +:1060D00030910304232F26952F5F2F77822F90E096 +:1060E000317004972CF4220F232B2093030402C059 +:1060F0003093030480910304282F2E7F91E009F44C +:1061000090E090FB80F9809303040E94D62B80914D +:10611000030486950C94590320910304922F9695BD +:106120009827990F822F8170892B809303048E7F8B +:1061300091E009F490E08091030490FB80F9809352 +:1061400003040E94D62B8091030486950C94590376 +:106150005058BB27AA270ED075C166D130F06BD13D +:1061600020F031F49F3F11F41EF45BC10EF4E09572 +:10617000E7FB51C1E92F77D180F3BA1762077307A4 +:106180008407950718F071F49EF58FC10EF4E09521 +:106190000B2EBA2FA02D0B01B90190010C01CA01E1 +:1061A000A0011124FF27591B99F0593F50F4503E8C +:1061B00068F11A16F040A22F232F342F4427585F7E +:1061C000F3CF469537952795A795F0405395C9F796 +:1061D0007EF41F16BA0B620B730B840BBAF091504E +:1061E000A1F0FF0FBB1F661F771F881FC2F70EC0ED +:1061F000BA0F621F731F841F48F4879577956795C0 +:10620000B795F7959E3F08F0B3CF9395880F08F0A8 +:106210009927EE0F979587950895D9D008F481E0D6 +:1062200008950CD00FC107D140F0FED030F021F41A +:106230005F3F19F0F0C0511139C1F3C014D198F388 +:106240009923C9F35523B1F3951B550BBB27AA27F7 +:1062500062177307840738F09F5F5F4F220F331F69 +:10626000441FAA1FA9F333D00E2E3AF0E0E830D035 +:1062700091505040E695001CCAF729D0FE2F27D038 +:10628000660F771F881FBB1F261737074807AB0706 +:10629000B0E809F0BB0B802DBF01FF2793585F4F7B +:1062A0002AF09E3F510568F0B6C000C15F3FECF395 +:1062B000983EDCF3869577956795B795F7959F5F40 +:1062C000C9F7880F911D9695879597F90895E1E094 +:1062D000660F771F881FBB1F621773078407BA07F3 +:1062E00020F0621B730B840BBA0BEE1F88F7E0954E +:1062F000089504D06894B111D9C00895BCD088F035 +:106300009F5790F0B92F9927B751A0F0D1F0660FA1 +:10631000771F881F991F1AF0BA95C9F712C0B130BC +:1063200081F0C3D0B1E00895C0C0672F782F8827CF +:10633000B85F39F0B93FCCF3869577956795B395FB +:10634000D9F73EF490958095709561957F4F8F4F6A +:106350009F4F0895E89409C097FB3EF4909580956F +:10636000709561957F4F8F4F9F4F9923A9F0F92F1B +:1063700096E9BB279395F695879577956795B79599 +:10638000F111F8CFFAF4BB0F11F460FF1BC06F5F7F +:106390007F4F8F4F9F4F16C0882311F096E911C091 +:1063A000772321F09EE8872F762F05C0662371F0B2 +:1063B00096E8862F70E060E02AF09A95660F771FC6 +:1063C000881FDAF7880F9695879597F90895990FA2 +:1063D0000008550FAA0BE0E8FEEF16161706E807AF +:1063E000F907C0F012161306E407F50798F0621BD0 +:1063F000730B840B950B39F40A2661F0232B242BA5 +:10640000252B21F408950A2609F4A140A6958FEFC3 +:10641000811D811D089597F99F6780E870E060E015 +:1064200008959FEF80EC089500240A94161617062D +:1064300018060906089500240A9412161306140675 +:1064400005060895092E0394000C11F4882352F0D8 +:10645000BB0F40F4BF2B11F460FF04C06F5F7F4F90 +:106460008F4F9F4F089557FD9058440F551F59F077 +:106470005F3F71F04795880F97FB991F61F09F3F31 +:1064800079F087950895121613061406551FF2CF5A +:106490004695F1DF08C0161617061806991FF1CFAA +:1064A00086957105610508940895E894BB276627D1 +:1064B0007727CB0197F908958ADF08F48FEF0895C5 +:1064C0000BD0C0CFB1DF28F0B6DF18F0952309F06C +:1064D000A2CFA7CF1124EACFC6DFA0F3959FD1F3B7 +:1064E000950F50E0551F629FF001729FBB27F00D82 +:1064F000B11D639FAA27F00DB11DAA1F649F6627D7 +:10650000B00DA11D661F829F2227B00DA11D621F25 +:10651000739FB00DA11D621F839FA00D611D221FDF +:10652000749F3327A00D611D231F849F600D211DC3 +:10653000822F762F6A2F11249F5750408AF0E1F066 +:1065400088234AF0EE0FFF1FBB1F661F771F881FAF +:1065500091505040A9F79E3F510570F05CCFA6CFF7 +:106560005F3FECF3983EDCF3869577956795B7959A +:10657000F795E7959F5FC1F7FE2B880F911D9695C4 +:10658000879597F90895FA01EE0FFF1F30962105C0 +:10659000310599F16115710561F48038BFE39B07FE +:1065A00049F168949038810561F08038BFEF9B070E +:1065B00041F0992342F5FF3FE1053105210511F135 +:1065C000E8940894E795D901AA2329F4AB2FBE2FAC +:1065D000F85FD0F310C0FF5F70F4A695E0F7F739CD +:1065E00050F019F0FF3A38F49F779F930CD00F903A +:1065F00007FC905808953EF014CF60E070E080E80A +:106600009FE308954FE79F775F934F933F932F93B7 +:106610009ED02F913F914F915F9152DF05C019F4A9 +:106620000EF0F9CE42CFFDCE26DFC8F39638C0F784 +:1066300007F80F92E8942BE33AEA48EB5FE74EDF66 +:106640000F920F920F924DB75EB70F92C0D0ECEA47 +:10665000F0E016D04F915F91EF91FF91E595EE1F1D +:10666000FF1F49F0FE57E0684427EE0F441FFA95DC +:10667000E1F74195550B32D00F9007FE26C00895E3 +:10668000DF93CF931F930F93FF92EF92DF927B01E3 +:106690008C01689405C0DA2EEF011EDFFE01E8943C +:1066A000A5912591359145915591AEF3EF0162DDAC +:1066B000FE019701A801DA9479F7DF90EF90FF903F +:1066C0000F911F91CF91DF9108959B01AC0160E084 +:1066D00070E080E89FE3A5CD9ECEACC0CCDEE8F3B1 +:1066E0009923D9F3940F511DBBF39150504094F06E +:1066F00059F0882332F0660F771F881F9150504061 +:10670000C1F79E3F510544F7880F911D96958795D7 +:1067100097F908955F3FACF0983E9CF0BB278695B3 +:1067200077956795B79508F4B1609395C1F7BB0F5E +:1067300058F711F460FFE8CF6F5F7F4F8F4F9F4F87 +:10674000E3CFB4CE0EF076C06CCE689464CE93DE08 +:10675000C8F39923D1F3C6F3DF93CF931F930F931D +:10676000FF92C92FDD2788232AF02197660F771F14 +:10677000881FDAF720E030E040E85FEB9FE38839DC +:1067800020F0803E30F021968F77E3DCE4EDF0E0FE +:1067900003C0DFDCE1E0F1E073DF8B01BE01EC015F +:1067A000FB2E6F5771097595771F880B990BD4DDF8 +:1067B00028E132E741E35FE38FDEAF2D9801AE01C0 +:1067C000FF900F911F91CF91DF91D4DC3BCEFA0166 +:1067D000DC01AA0FBB1F9B01AC01BF5728F4222785 +:1067E0003327442750781FC0B75188F4AB2F0024BB +:1067F000469537952795011CA395D2F3002069F0A3 +:10680000220F331F441FB395DAF30DD0A1CC6130B2 +:106810007105A0E88A07B94630F49B01AC016627F0 +:10682000772788279078309621F020833183428320 +:10683000538308959F3F31F0915020F487957795C9 +:106840006795B795880F911D9695879597F9089547 +:10685000991B79E004C0991F961708F0961B881FB2 +:106860007A95C9F780950895AA1BBB1B51E107C013 +:10687000AA1FBB1FA617B70710F0A61BB70B881FD0 +:10688000991F5A95A9F780959095BC01CD0108955F +:1068900097FB072E16F4009407D077FD09D00E94CD +:1068A000343407FC05D03EF4909581959F4F0895B0 +:1068B000709561957F4F0895F999FECF92BD81BD86 +:1068C000F89A992780B50895A8E1B0E042E050E039 +:1068D0000C947F34262FF999FECF1FBA92BD81BD4B +:1068E00020BD0FB6F894FA9AF99A0FBE0196089552 +:1068F0000E946A34272F0C946B34DC01CB01FC011D +:10690000F999FECF06C0F2BDE1BDF89A319600B408 +:0E6910000D9241505040B8F70895F894FFCF13 +:10691E0055D0A44600001644000000000000484276 +:10692E0061978A460000C8430000000000004842FC +:10693E0055D024460000C843000000000000484225 +:10694E0000005C460000C843000000000000484202 +:10695E0061978A4600007A4455D0A4460000C84389 +:10696E00000000000000484200005C460000C843E2 +:10697E00000000000000484255D024460000164496 +:10698E000507000C058540000001064000000100CF +:10699E0091102111FD10C810941001E8022808145E +:1069AE000A321E42004500250026004300610060A9 +:1069BE000020003700640065006600670044004652 +:1069CE000024004700000002000400050007000933 +:1069DE00000B000C000E0010001100130015001724 +:1069EE000018001A001C001D001F002100230024A7 +:1069FE00002600280029002B002D002F0030003229 +:106A0E000034003500370039003B00F6030F042830 +:106A1E0004410469051C05E604C6043F4D362002F8 +:106A2E000302000001000101010101000101010248 +:086A3E00030405060708090026 +:00000001FF diff --git a/keyboard/preonic/preonic_pcb_silent.hex b/keyboard/preonic/preonic_pcb_silent.hex new file mode 100644 index 0000000000..cc59d3fe8d --- /dev/null +++ b/keyboard/preonic/preonic_pcb_silent.hex @@ -0,0 +1,1189 @@ +:100000000C9465020C94A9020C94A9020C94A90208 +:100010000C94A9020C94A9020C94A9020C94A902B4 +:100020000C94A9020C94A9020C94430D0C94150E87 +:100030000C942B1C0C94A9020C94A9020C94A902F8 +:100040000C94A9020C94A9020C94A9020C94A90284 +:100050000C94A9020C94981C0C94A9020C94A9026B +:100060000C94A9020C94A9020C94A9020C94A90264 +:100070000C94A9020C94A9020C94A9020C94A90254 +:100080000C94A9020C94A9020C94A9020C94A90244 +:100090000C94A9020C94A9020C94A9020C94A90234 +:1000A0000C94A9020C94A9020C94A90235001E001C +:1000B0001F0020002100220023002400250026002C +:1000C00027002A002B0014001A0008001500170052 +:1000D0001C0018000C00120013002A002900040064 +:1000E0001600070009000A000B000D000E000F00AB +:1000F00033003400E1001D001B000600190005005C +:100100001100100036003700380028000030E000F1 +:10011000E200E30003522C002C0004525000510076 +:1001200052004F0035001E001F0020002100220059 +:10013000230024002500260027002A002B0014009D +:100140001A00090013000A000D000F0018001C001F +:1001500033002A00290004001500160017000700CC +:100160000B00110008000C0012003400E1001D001B +:100170001B000600190005000E00100036003700B5 +:10018000380028000030E000E200E30003522C00B9 +:100190002C0004525000510052004F0035001E0048 +:1001A0001F0020002100220023002400250026003B +:1001B00027002A002B0034003600370013001C00F3 +:1001C00009000A00060015000F002A00290004009B +:1001D0001200080018000C0007000B0017001100A7 +:1001E00016003800E100330014000D000E001B0063 +:1001F000050010001A0019001D0028000030E00062 +:10020000E200E30003522C002C0004525000510085 +:1002100052004F0035001E001F0020002100220068 +:10022000230024002500260027002A0035021E0294 +:100230001F0220022102220223022402250226029A +:1002400027022A0001003A003B003C003D003E002E +:100250003F002D022E022F02300231020100400029 +:100260004100420043004400450000530153025343 +:100270000050010001000100010001000100010027 +:1002800001000100AB00AA00A900AE0035001E006D +:100290001F0020002100220023002400250026004A +:1002A00027002A0035001E001F0020002100220028 +:1002B000230024002500260027002A0001003A0020 +:1002C0003B003C003D003E003F002D002E002F0073 +:1002D0003000310001004000410042004300440072 +:1002E000450000530153025300500100010001007A +:1002F000010001000100010001000100AB00AA00A3 +:10030000A900AE002A0354006800650020005000D8 +:10031000720065006F006E006900630020004B00F2 +:100320006500790062006F006100720064000000E7 +:100330002C034F007200740068006F006C006900AD +:100340006E0065006100720020004B0065007900BE +:1003500062006F006100720064007300000004031B +:10036000090409027400040100A0FA090400000154 +:1003700003010100092111010001223F000705814D +:100380000308000A09040100010301020009211108 +:10039000010001224D000705820308000A0904023A +:1003A00000010300000009211101000122360007AD +:1003B00005830308000A0904030002030000000982 +:1003C00021110100012220000705840320000107FC +:1003D0000504032000011201100100000008EDFED9 +:1003E00061600100010200010631FF0974A10109E9 +:1003F00075150025FF9520750881020976150025E1 +:10040000FF952075089102C005010980A1018502B0 +:1004100016010026B7001A01002AB70075109501D1 +:100420008100C0050C0901A1018503160100269C6D +:10043000021A01002A9C02751095018100C0050175 +:100440000902A1010901A1000509190129051500E9 +:10045000250195057501810295017503810105014D +:10046000093009311581257F950275088106093803 +:100470001581257F950175088106050C0A3802153E +:1004800081257F950175088106C0C005010906A177 +:1004900001050719E029E715002501950875018177 +:1004A0000295017508810105081901290595057551 +:1004B0000191029501750391010507190029FF15A6 +:1004C0000025FF950675088100C011241FBECFEFDF +:1004D000DAE0DEBFCDBF04B603FE24C08091F10197 +:1004E0009091F201A091F301B091F4018730904B0B +:1004F000A740B04BB9F41092F1011092F2011092A2 +:10050000F3011092F40114BE84B7877F84BF88E1A1 +:100510000FB6F89480936000109260000FBEE0E088 +:10052000F8E3099511E0A0E0B1E0E0EEF9E402C0E3 +:1005300005900D92A435B107D9F711E0A4E5B1E01B +:1005400001C01D92A13FB107E1F70E94720A0C940D +:10055000EE240C94000061110DC0FC0182818823FF +:1005600031F085EE0E9426110E94272303C085EEFC +:100570000E94EE1180E090E00895089508950E9491 +:10058000D1026E9A769A8DEB92E0892B11F00C9441 +:10059000BD0208958EEB92E0892B11F00C94BE02FF +:1005A0000895279A2F988FEF9FEF9093870080935D +:1005B00086008AE08093800089E1809381000C941A +:1005C000D02281110BC080918000877F80938000B2 +:1005D00010928D0010928C002F9808952F988330E0 +:1005E00041F4809180008860809380008FEF9FEFBE +:1005F00012C09091800098609093800023E030E0DA +:10060000281B3109220F331F8FEF9FEF02C09695F1 +:1006100087952A95E2F790938D0080938C0008953A +:100620008B3B910568F4883A910530F5853A910540 +:10063000C0F48430910598F4019709F06FC071C03F +:10064000803E910508F46AC0883E910540F09C0107 +:10065000205F31092031310508F060C05CC09C0189 +:10066000A1C0853A910509F45FC0863A910509F465 +:100670005EC023E830E496C0883A910509F45AC078 +:10068000893A910509F459C08A3A910509F458C08C +:100690008B3A910509F457C08C3A910509F456C07C +:1006A0008D3A910509F455C0803B910509F454C079 +:1006B0008E3A910509F453C08F3A910509F452C05E +:1006C000813B910509F451C0823B910509F450C06A +:1006D000833B910509F44FC0843B910509F44EC05A +:1006E000853B910509F44DC0863B910509F44CC04A +:1006F000873B910509F44BC0883B910509F44AC03A +:10070000893B910509F449C08A3B910509F048C02D +:100710002AE236E447C09C01306544C020E030E066 +:1007200041C021E030E03EC021E830E43BC022E897 +:1007300030E438C022EE34E435C029EE34E432C06F +:100740002AEE34E42FC025EB34E42CC026EB34E44D +:1007500029C027EB34E426C02CEC34E423C02DEC74 +:1007600034E420C023E835E41DC02AE835E41AC08B +:1007700022E935E417C024E935E414C021E236E467 +:1007800011C023E236E40EC024E236E40BC025E2B9 +:1007900036E408C026E236E405C027E236E402C0AB +:1007A00020E034E4C901089508959CE0799FF001A8 +:1007B00011249CE3899FE00DF11D1124E60FF11D2A +:1007C000EE0FFF1FE455FF4F25913491C9010895A5 +:1007D000880F991F845D9040FC0125913491C901D7 +:1007E0000895880F991F84559F4FFC0125913491DE +:1007F000C90108950E94D5039C019A9581159F41D6 +:1008000010F4C9010895C90190528115904128F44E +:10081000C9019F700E94F1030895C9019053811589 +:10082000904120F4C9019927906C0895C901905412 +:10083000409728F4C9018F709927946D089520314D +:1008400080E4380719F480E091ED0895213190E4B7 +:10085000390719F480E090ED0895223140E434071F +:1008600019F480E092ED0895233180E4380719F4FB +:1008700080E093ED0895211590E5390769F40E9411 +:1008800015162FEF44E38CE0215040408040E1F703 +:1008900000C000000C94BD1C213090E5390731F4F4 +:1008A0008091D00181608093D0010895C901905555 +:1008B0008115904108F062C0432F55274F7055278E +:1008C00041305105F9F4C90174E0880F991F7A95F8 +:1008D000E1F788279370B901E3E0660F771FEA9587 +:1008E000E1F760767727862B972B9C682370332758 +:1008F00002C0440F551F2A95E2F74F715527842BEC +:10090000952B08954230510529F4922F8827816F45 +:10091000906A089543305105B9F4C90153E0880F36 +:10092000991F5A95E1F7807E97702370332741E035 +:1009300050E002C0440F551F2A95E2F74F7155272A +:10094000842B952B9C6808954430510549F5C901C5 +:1009500043E0880F991F4A95E1F7807E97702370D6 +:10096000332741E050E002C0440F551F2A95E2F7BB +:100970004F715527842B952B9A680895C90190577C +:100980008115904120F4C9019F7090620895C901BA +:1009900090588115904120F4C9019F70906A089584 +:1009A000203E3105E0F4203C310568F52133310566 +:1009B00009F475C048F42932310509F46BC02A32B4 +:1009C000310509F07BC075C02933310501F12238AA +:1009D0003105E9F02533310509F070C051C0233EDF +:1009E0003105B1F140F4203E3105D1F0223E310510 +:1009F00009F064C01CC0263E310579F1273E31055F +:100A000009F05CC038C0C9010E94E80308958091D4 +:100A1000E10180FD02C081FF51C080EE90E04FC037 +:100A20008091E10180FFF9CF89E390E048C0809197 +:100A3000E10182FF0AC08091E10184FF03C080E0F0 +:100A400090E03DC083EE90E03AC082EE90E037C087 +:100A50008091E10182FFEFCFF8CF8091E10183FF28 +:100A600007C08091E10184FDEACF87EE90E027C0C6 +:100A700086EE90E024C08091E10183FFF2CFF8CFB1 +:100A80008091E10185FF03C089E290E018C085E311 +:100A900090E015C08091E10185FDF9CFF5CF8091FF +:100AA000E10186FF03C08AE290E009C081E390E0A3 +:100AB00006C08091E10186FDF9CFF5CFC9010E9402 +:100AC0001003089508955F926F927F928F929F9284 +:100AD000AF92BF92CF92DF92EF92FF920F931F934C +:100AE000CF93DF93CDB7DEB72A970FB6F894DEBF6A +:100AF0000FBECDBF9E012F5F3F4F4E018BE0880E92 +:100B0000911C60E070E000E010E0E12CF12CC12CC1 +:100B1000D12CA12CB12C8AE0782E622E532E41E0EC +:100B200050E0E4E1F1E0A62DB52D872D01900D9266 +:100B30008A95E1F7F901819191919F01FC01E07F94 +:100B4000FF27E032F10559F48F709927FA0102C0AE +:100B5000EE0FFF1F8A95E2F7AE2ABF2A37C0E033B7 +:100B6000F10559F48F709927FA0102C0EE0FFF1FAB +:100B70008A95E2F7CE2ADF2A29C0E034F10559F43C +:100B80008F709927FA0102C0EE0FFF1F8A95E2F7D6 +:100B9000EE2AFF2A1BC0E035F10559F48F70992722 +:100BA000FA0102C0EE0FFF1F8A95E2F70E2B1F2BF2 +:100BB0000DC0E036F10551F48F709927FA0102C09B +:100BC000EE0FFF1F8A95E2F76E2B7F2B2815390554 +:100BD00009F0A7CF94B18A2D8095892384B985B176 +:100BE0008A2985B997B18C2D8095892387B988B1D9 +:100BF0008C2988B99AB18E2D809589238AB98BB1B9 +:100C00008E298BB99DB1802F809589238DB98EB1A6 +:100C1000802B8EB990B3862F8095892380BB81B3BA +:100C2000862B81BB2A960FB6F894DEBF0FBECDBFD0 +:100C3000DF91CF911F910F91FF90EF90DF90CF90B8 +:100C4000BF90AF909F908F907F906F905F9008952E +:100C50005F926F927F928F929F92AF92BF92CF924C +:100C6000DF92EF92FF920F931F93CF93DF93CDB755 +:100C7000DEB768970FB6F894DEBF0FBECDBF85B75D +:100C8000806885BF85B7806885BF0E9463059E0127 +:100C90002F5F3F4F4E0189E1880E911C60E070E0AC +:100CA00000E010E0E12CF12CC12CD12CA12CB12CB6 +:100CB00098E1792E622E532E41E050E0EEE1F1E012 +:100CC000A62DB52D872D01900D928A95E1F7F9019A +:100CD000819191919F01FC01E07FFF27E032F105B6 +:100CE00059F48F709927FA0102C0EE0FFF1F8A9501 +:100CF000E2F7AE2ABF2A37C0E033F10559F48F700E +:100D00009927FA0102C0EE0FFF1F8A95E2F7CE2A5B +:100D1000DF2A29C0E034F10559F48F709927FA01D0 +:100D200002C0EE0FFF1F8A95E2F7EE2AFF2A1BC0D2 +:100D3000E035F10559F48F709927FA0102C0EE0FE2 +:100D4000FF1F8A95E2F70E2B1F2B0DC0E036F10531 +:100D500051F48F709927FA0102C0EE0FFF1F8A9598 +:100D6000E2F76E2B7F2B2815390509F0A7CF94B138 +:100D70008A2D8095892384B985B18A2985B997B14F +:100D80008C2D8095892387B988B18C2988B99AB12F +:100D90008E2D809589238AB98BB18E298BB99DB10F +:100DA000802F809589238DB98EB1802B8EB990B319 +:100DB000862F8095892380BB81B3862B81BB1092BF +:100DC00055011092540110925F0110925E01109231 +:100DD0005701109256011092610110926001109219 +:100DE0005901109258011092630110926201109201 +:100DF0005B0110925A0110926501109264011092E9 +:100E00005D0110925C0110926701109266018FEBF8 +:100E100092E0892BB9F068960FB6F894DEBF0FBE4A +:100E2000CDBFDF91CF911F910F91FF90EF90DF9099 +:100E3000CF90BF90AF909F908F907F906F905F907A +:100E40000C94BF0268960FB6F894DEBF0FBECDBFFC +:100E5000DF91CF911F910F91FF90EF90DF90CF9096 +:100E6000BF90AF909F908F907F906F905F9008950C +:100E70005F926F927F928F929F92AF92BF92CF922A +:100E8000DF92EF92FF920F931F93CF93DF93CDB733 +:100E9000DEB7A2970FB6F894DEBF0FBECDBF7E01BE +:100EA00049E1E40EF11C2EE5C22E21E0D22E5E01B6 +:100EB00053E2A50EB11C3AE0532E470101E010E0C9 +:100EC00048E1642E55E0752EE4E1F1E0D401852D72 +:100ED00001900D928A95E1F7F701819191917F013F +:100EE0009C01207F33272032310589F424B18F7093 +:100EF0009927A80102C0440F551F8A95E2F7CA013D +:100F0000242B24B995B18095892385B94FC020330E +:100F1000310589F427B18F709927F80102C0EE0FCF +:100F2000FF1F8A95E2F7CF012E2B27B998B1809544 +:100F3000892388B93BC02034310589F42AB18F70E8 +:100F40009927A80102C0440F551F8A95E2F7CA01EC +:100F5000242B2AB99BB1809589238BB927C02035D2 +:100F6000310589F42DB18F709927F80102C0EE0F79 +:100F7000FF1F8A95E2F7CF012E2B2DB99EB18095E8 +:100F800089238EB913C02036310581F420B38F70C8 +:100F90009927A80102C0440F551F8A95E2F7CA019C +:100FA000242B20BB91B38095892381BB50EA5A95AD +:100FB000F1F7BE016F5F7F4F80E090E020E030E00E +:100FC000EEE1F1E0DE011196462D01900D924A9579 +:100FD000E1F7FB0141915191BF01FA01E07FFF2749 +:100FE000E032F10511F4E3B113C0E033F10511F47F +:100FF000E6B10EC0E034F10511F4E9B109C0E03505 +:10100000F10511F4ECB104C0E036F105B9F4EFB12B +:10101000F0E04F70552702C0F595E7954A95E2F745 +:10102000E0FD08C0A801022E02C0440F551F0A941B +:10103000E2F702C040E050E0842B952B2F5F3F4F3A +:101040002C30310509F0BCCFF60120813181281701 +:10105000390721F091838083709200010E9463051B +:10106000F2E0CF0ED11CEA14FB0409F02DCF8091E1 +:1010700000018823A1F1815080930001882339F079 +:101080008FE99FE00197F1F700C0000028C0809130 +:101090005E0190915F01909355018093540180917E +:1010A0006001909161019093570180935601809166 +:1010B000620190916301909359018093580180914E +:1010C00064019091650190935B0180935A01809136 +:1010D00066019091670190935D0180935C018AECB9 +:1010E00092E0892B11F00E94CA0281E0A2960FB60D +:1010F000F894DEBF0FBECDBFDF91CF911F910F914E +:10110000FF90EF90DF90CF90BF90AF909F908F9027 +:101110007F906F905F900895E82FF0E0EE0FFF1F33 +:10112000EC5AFE4F8081918108950895809171015C +:101130000895CF93DF9300D01F92CDB7DEB72091F3 +:10114000E701243021F523E029839B838A832093C0 +:10115000E9008FEF06C095ED9A95F1F7000088231E +:1011600029F09091E800815095FFF5CF8091E8003B +:1011700085FF0DC040E050E063E070E0CE010196D5 +:101180000E94280B8091E8008E778093E8000F90F2 +:101190000F900F90DF91CF910895CF93DF9300D000 +:1011A0001F92CDB7DEB72091E701243029F522E068 +:1011B00029839B838A8383E08093E9008FEF06C0B5 +:1011C00095ED9A95F1F70000882329F09091E800B9 +:1011D000815095FFF5CF8091E80085FF0DC040E07C +:1011E00050E063E070E0CE0101960E94280B8091F0 +:1011F000E8008E778093E8000F900F900F90DF91BA +:10120000CF9108952091E7012430F9F422E0209352 +:10121000E9002FEF06C035ED3A95F1F700002223E3 +:1012200029F03091E800215035FFF5CF2091E800FA +:1012300025FF0BC040E050E065E070E00E94280B05 +:101240008091E8008E778093E8000895CF93DF9334 +:10125000EC018091E701843041F581E08093E90061 +:101260008FEF06C095ED9A95F1F70000882329F0DD +:101270009091E800815095FFF5CF8091E80085FFBF +:1012800014C040E050E068E070E0CE010E94280BFE +:101290008091E8008E778093E80088E0FE01A9E65F +:1012A000B1E001900D928A95E1F7DF91CF91089519 +:1012B0008091E601811109C00E94C80C0E94250D91 +:1012C0008091E20084608093E20008951092E6012C +:1012D0000895089508950C94201C809172018F5FE9 +:1012E0008093720162E30E948924911135C01092AB +:1012F000720180917301882379F18091E701843034 +:1013000049F58091E9008F709091EC0090FF02C048 +:1013100090E801C090E0982B84E08093E9008091F0 +:10132000EB0080FF14C08091EE0087FD03C00FC06A +:101330001092F1008091E80085FDFACF8091E800DD +:1013400080FF05C08091E8008E778093E8009F7051 +:101350009093E90010927301089542E061EC81E0FE +:101360000E943E0C42E061EC82E00E943E0C42E0B2 +:1013700061EC83E00E943E0C42E261EC84E00C945C +:101380003E0C8091E901833009F454C030F481307F +:1013900071F0823009F0A5C08CC08A3009F479C0A0 +:1013A0008B3009F45FC0893009F09BC020C0809168 +:1013B000E801813A09F095C08091E800877F809329 +:1013C000E8008091EC019091ED01892B21F060E023 +:1013D00080E090E003C068E089E691E070E00E9460 +:1013E000770B8091E8008B778093E80008958091D7 +:1013F000E801813209F075C08091EC019091ED0116 +:10140000892B09F06EC08091E800877F8093E80007 +:1014100005C08091E701882309F463C08091E8004A +:1014200082FFF7CF8091F100809371018091E800F5 +:101430008B7753C08091E801813A09F052C08091C6 +:10144000EC019091ED01892B09F04BC08091E800EF +:10145000877F8093E8008091E80080FFFCCF809137 +:101460000B0136C08091E8018132D9F58091EC0101 +:101470009091ED01892BA9F58091E800877F8093F9 +:10148000E8000E94750C8091EA0180930B010C9496 +:1014900015168091E801813221F58091E800877F5F +:1014A0008093E8000E94750C8091EB0180936801A5 +:1014B00008958091E801813AA1F48091E800877F46 +:1014C0008093E8008091E80080FFFCCF8091680164 +:1014D0008093F1008091E8008E778093E8000C946F +:1014E000750C089584B7877F84BF88E10FB6F894A0 +:1014F00080936000109260000FBE90E080E80FB60D +:10150000F89480936100909361000FBE0E943310A5 +:101510000E94C80C0E94250D8091E2008460809397 +:10152000E20078940E94C20F0E94351081E091E0A1 +:101530000E94DF0F0BC00E94DD1B8091E501882314 +:1015400029F00E94081C81110E94120B8091E70172 +:10155000853089F30E943F10F9CF292F332723309C +:101560003105B1F04CF42130310509F44DC0223081 +:10157000310509F04EC007C02132310541F1223258 +:10158000310591F146C0E4E7F0E082E693E045C022 +:1015900099278130910569F08230910589F0892B76 +:1015A00009F037C0EEE5F3E0E491F0E08EE593E07A +:1015B00034C0E0E3F3E0E491F0E080E393E02DC099 +:1015C000E4E0F3E0E491F0E084E093E026C06430EE +:1015D00000F5E62FF0E0EE0FFF1FEA5CFE4F808182 +:1015E0009181E9E0F0E019C0643098F4E62FF0E072 +:1015F000DF01AA0FBB1FA25CBE4F8D919C91EA5BDD +:10160000FE4FE081F0E009C0E2E1F0E086ED93E01A +:1016100004C0E0E0F0E080E090E0DA018D939C937C +:10162000CF01089580E189BD82E189BD09B400FE42 +:10163000FDCF8091D8008F7D8093D8008091E0000D +:1016400082608093E0008091E00081FDFCCF0895EE +:10165000BF92CF92DF92EF92FF920F931F93CF939F +:10166000DF937C018B01EA010E94960CB82E811158 +:1016700033C0209731F028813981021B130BE20E11 +:10168000F31EC12CD12C23C08091E80085FD15C02C +:101690008091E8008E778093E800209749F0888158 +:1016A00099818C0D9D1D9983888325E0B22E14C0ED +:1016B0000E94960C882359F00EC0F70181917F019A +:1016C0008093F10001501109FFEFCF1ADF0A0115D5 +:1016D0001105D1F601C0B82E8B2DDF91CF911F914E +:1016E0000F91FF90EF90DF90CF90BF9008954091C1 +:1016F000EE015091EF014617570748F0611571054B +:1017000039F44091E8004E774093E80001C0BA01F7 +:10171000FC0140E033C08091E701882309F444C014 +:10172000853009F443C08091E80083FD41C0809179 +:10173000E80082FD33C08091E80080FF1FC09091D7 +:10174000F3008091F200392F20E0A901482BCA0153 +:1017500006C041914093F1006150710901966115F5 +:10176000710519F088309105A0F341E0089709F060 +:1017700040E08091E8008E778093E8006115710564 +:1017800051F64111C8CF0AC08091E701882361F06A +:10179000853061F08091E80083FD0AC08091E80007 +:1017A00082FFF2CF80E0089582E0089583E00895FB +:1017B00081E008954091EE015091EF0146175707DF +:1017C00048F06115710539F44091E8004E77409377 +:1017D000E80001C0BA01FC0140E034C08091E7019B +:1017E000882309F445C0853009F444C08091E8009D +:1017F00083FD42C08091E80082FD34C08091E80002 +:1018000080FF20C09091F3008091F200392F20E0FA +:10181000A901482BCA0107C044914093F1003196B9 +:101820006150710901966115710519F088309105B3 +:1018300098F341E0089709F040E08091E8008E7746 +:101840008093E8006115710549F64111C7CF0AC0C0 +:101850008091E701882361F0853061F08091E80094 +:1018600083FD0AC08091E80082FFF2CF80E00895F6 +:1018700082E0089583E0089581E00895982F2CC0B8 +:101880009093E900981739F07091EC002091ED00E9 +:101890005091F00003C0242F762F50E021FD02C0AC +:1018A0009F5F1AC03091EB003E7F3093EB00309188 +:1018B000ED003D7F3093ED003091EB0031603093CF +:1018C000EB007093EC002093ED005093F00020911A +:1018D000EE0027FDE5CF07C0973090F28F70809320 +:1018E000E90081E0089580E008958091E80187FD96 +:1018F00005C08091E80080FF0EC012C08091E80012 +:1019000082FD05C08091E7018111F8CF0895809193 +:10191000E8008B7708C08091E7018111EACF089534 +:101920008091E8008E778093E80008958091E4002C +:101930009091E50045E62091EC0020FD1FC023C0FA +:101940002091E701222391F0253091F02091EB00C6 +:1019500025FD10C02091E4003091E50028173907DB +:1019600051F34150C90139F784E0089582E00895A8 +:1019700083E0089581E0089580E008952091E800D3 +:1019800020FFDECFF9CF2091E80022FFD9CFF4CF9E +:101990000E94360D0E943E0DE0EEF0E080818160F5 +:1019A0008083E8EDF0E080818F77808319BCA7ED1C +:1019B000B0E08C918E7F8C9380818F7E808310929B +:1019C000E60108950F931F93CF93DF930E94360D86 +:1019D0000E943E0DC8EDD0E088818F778883888192 +:1019E0008068888388818F7D888319BC1092E70185 +:1019F0001092E3011092E5011092E40100EE10E074 +:101A0000F80180818B7F808388818160888342E0B8 +:101A100060E080E00E943E0CE1EEF0E080818E7F8D +:101A20008083E2EEF0E08081816080838081886045 +:101A30008083F80180818E7F8083888180618883A4 +:101A4000DF91CF911F910F910895E8EDF0E0808133 +:101A50008F7E8083E7EDF0E080818160808384E089 +:101A600082BF81E08093E6010C94E20CE8EDF0E0A7 +:101A700080818E7F80831092E20008951092DA00B8 +:101A80001092E10008951F920F920FB60F92112449 +:101A90002F933F934F935F936F937F938F939F9376 +:101AA000AF93BF93EF93FF938091E10082FF0BC050 +:101AB0008091E20082FF07C08091E1008B7F8093DC +:101AC000E1000E946D098091DA0080FF1FC08091C3 +:101AD000D80080FF1BC08091DA008E7F8093DA00EF +:101AE0008091D90080FF0DC080E189BD82E189BD70 +:101AF00009B400FEFDCF81E08093E7010E94580900 +:101B000005C019BC1092E7010E9466098091E100AE +:101B100080FF19C08091E20080FF15C08091E20033 +:101B20008E7F8093E2008091E20080618093E200EA +:101B30008091D80080628093D80019BC85E08093A2 +:101B4000E7010E946A098091E10084FF30C0809122 +:101B5000E20084FF2CC080E189BD82E189BD09B427 +:101B600000FEFDCF8091D8008F7D8093D8008091BA +:101B7000E1008F7E8093E1008091E2008F7E809370 +:101B8000E2008091E20081608093E2008091E301B5 +:101B9000882311F084E007C08091E30087FF02C032 +:101BA00083E001C081E08093E7010E946B0980918E +:101BB000E10083FF29C08091E20083FF25C080916E +:101BC000E100877F8093E10082E08093E70110923B +:101BD000E3018091E1008E7F8093E1008091E2003B +:101BE0008E7F8093E2008091E20080618093E2002A +:101BF00042E060E080E00E943E0C8091F00088604E +:101C00008093F0000E946909FF91EF91BF91AF911D +:101C10009F918F917F916F915F914F913F912F9104 +:101C20000F900FBE0F901F9018951F920F920FB636 +:101C30000F9211242F933F934F935F936F937F9352 +:101C40008F939F93AF93BF93CF93EF93FF93809125 +:101C5000E9008F709091EC0090FF02C090E801C005 +:101C600090E0C92FC82B1092E9008091F000877F87 +:101C70008093F00078940E94590E1092E9008091B0 +:101C8000F00088608093F000CF70C093E900FF916E +:101C9000EF91CF91BF91AF919F918F917F916F9174 +:101CA0005F914F913F912F910F900FBE0F901F901A +:101CB00018951F93CF93DF93CDB7DEB7AC970FB6D0 +:101CC000F894DEBF0FBECDBFE8EEF1E08091F100E9 +:101CD000819321E0E03FF207C9F70E94C10980919A +:101CE000E80083FF37C18091E8019091E9019530C8 +:101CF00009F488C038F49130B1F170F0933009F0F4 +:101D000029C131C0983009F4F8C0993009F404C1F0 +:101D1000963009F01FC19DC0803821F0823809F04B +:101D200019C108C08091E4019091E501992389F0DF +:101D300082600FC08091EC019091ED018F70992726 +:101D40008093E9008091EB0085FB882780F9109251 +:101D5000E9009091E800977F9093E8008093F1006C +:101D60001092F100D5C0882319F0823009F0F2C03A +:101D70008F7121F0823009F0EDC00BC08091EA0133 +:101D8000813009F0E7C0933009F080E08093E501ED +:101D90002FC08091EA0181112BC08091EC019091BC +:101DA000ED018F709927009709F4D4C08093E90062 +:101DB0002091EB0020FF1CC02091E901233021F489 +:101DC0008091EB00806212C09091EB009061909343 +:101DD000EB0021E030E001C0220F8A95EAF7209362 +:101DE000EA001092EA008091EB0088608093EB009B +:101DF0001092E9008091E800877F8093E8000E94BC +:101E0000750CA8C08111A6C08091EA019091EB01E8 +:101E10008F779927182F9091E3009078982B9093C3 +:101E2000E3008091E800877F8093E8000E94750CB2 +:101E30008091E80080FFFCCF8091E3008068809370 +:101E4000E300112311F083E001C082E08093E701F9 +:101E500081C08058823008F07DC08091EA01909165 +:101E6000EB018C3D23E0920779F583E08A838AE2D7 +:101E700089834FB7F894DE01139620E03EE051E2EB +:101E8000E32FF0E050935700E49120FF03C0E29568 +:101E9000EF703F5FEF708E2F90E0EA3010F0C79642 +:101EA00001C0C0968D939D932F5F243149F74FBF9A +:101EB0008091E800877F8093E8006AE270E0CE01BD +:101EC00001960E94770B13C0AE01455D5F4F609194 +:101ED000EC010E94AD0A0097E9F12091E800277F0C +:101EE0002093E800BC018BA59CA50E94DA0B809191 +:101EF000E8008B778093E8002DC0803859F58091F9 +:101F0000E800877F8093E8008091E3018093F100EF +:101F10008091E8008E7771CF81111CC09091EA0109 +:101F20009230C0F48091E800877F8093E80090931E +:101F3000E3010E94750C8091E301811104C080913E +:101F4000E30087FF02C084E001C081E08093E701E5 +:101F50000E94AD098091E80083FF0AC08091E800EB +:101F6000877F8093E8008091EB0080628093EB0094 +:101F7000AC960FB6F894DEBF0FBECDBFDF91CF9108 +:101F80001F910895CF938091E7018823B1F080914C +:101F9000E9008F709091EC0090FF02C090E801C0C2 +:101FA00090E0C92FC82B1092E9008091E80083FDD2 +:101FB0000E94590ECF70C093E900CF91089590937D +:101FC0007501809374010895E0917401F091750199 +:101FD000309721F00190F081E02D099480E0089580 +:101FE000E0917401F0917501309721F00280F38146 +:101FF000E02D09940895E0917401F09175013097F6 +:1020000021F00480F581E02D099408952091760156 +:10201000309177018217930771F090937701809345 +:102020007601E0917401F0917501309721F00680FE +:10203000F781E02D0994089520917801309179017C +:102040008217930771F09093790180937801E09162 +:102050007401F0917501309721F00084F185E02D35 +:102060000994089508950C9432100E94541C0E9403 +:1020700028060E94281D0C94D0220C9462055F92C1 +:102080006F927F928F929F92AF92BF92CF92DF9288 +:10209000EF92FF920F931F93CF93DF93CDB7DEB7ED +:1020A0002A970FB6F894DEBF0FBECDBF0E94380747 +:1020B0009AE7C92E91E0D92E00E010E0AA24A3945B +:1020C000B12C502E802F0E948C083C01F601E1902B +:1020D000F1906F01E826F926E114F10431F40F5F65 +:1020E0001F4F0530110569F73AC08091D00181FD7D +:1020F0000E94950820E030E04501022E02C0880CC5 +:10210000991C0A94E2F7C4018E219F21892B09F1C1 +:102110002E835F826820792081E0672809F480E0BF +:1021200088870E945D1C8160782F9A8789874E81FD +:102130005F8168858A850E94F810F801EE0FFF1F05 +:10214000E658FE4F8081918188259925918380836F +:1021500016C02F5F3F4F2C30310571F6C0CF8FEF87 +:1021600089838A831B820E945D1C8160782F9D83F6 +:102170008C8349815A816B818D810E94F8100E9465 +:102180001520109184010E94E40F1817D9F00E94C5 +:10219000E40F809384012A960FB6F894DEBF0FBE39 +:1021A000CDBFDF91CF911F910F91FF90EF90DF9006 +:1021B000CF90BF90AF909F908F907F906F905F90E7 +:1021C0000C943D102A960FB6F894DEBF0FBECDBF1B +:1021D000DF91CF911F910F91FF90EF90DF90CF9003 +:1021E000BF90AF909F908F907F906F905F90089579 +:1021F000CF93DF93CDB7DEB72B970FB6F894DEBF42 +:102200000FBECDBF4F83588769877A878B87DE01E2 +:10221000119686E0FD0111928A95E9F785E0FE01AD +:10222000379601900D928A95E1F749815A816B8129 +:102230007C818D819E810E94D4182B960FB6F894D4 +:10224000DEBF0FBECDBFDF91CF910895CF93C82FD2 +:10225000882309F4C1C0823859F40E94E40F81FD3B +:10226000BBC089E30E943B1B0E94B71B89E30CC0E3 +:10227000833879F40E94E40F80FDAEC083E50E94AC +:102280003B1B0E94B71B83E50E945D1BCF910C9402 +:10229000B71B843859F40E94E40F82FD9DC087E487 +:1022A0000E943B1B0E94B71B87E4EECF8450813A0B +:1022B00048F48C2F0E94322281118EC08C2F0E94F4 +:1022C0003B1BE4CF8C2F805E883050F4C77081E0D8 +:1022D00090E001C0880FCA95EAF70E947E1BD6CF16 +:1022E0008C2F855A833078F4C53A29F0C63A31F4F8 +:1022F00082E890E005C081E890E002C083E890E0C9 +:10230000CF910C9406108C2F885A833108F064C04A +:10231000C83A39F1C93A41F1CA3A49F1CB3A51F1D7 +:10232000CC3A59F1CD3A61F1C03B69F1CE3A71F145 +:10233000CF3A79F1C13B81F1C23B89F1C33B91F1C5 +:10234000C43B99F1C53BA1F1C63BA9F1C73BB1F133 +:10235000C83BB9F1C93BC1F1CA3BC9F58AE292E079 +:1023600038C082EE90E035C089EE90E032C08AEE4F +:1023700090E02FC085EB90E02CC086EB90E029C068 +:1023800087EB90E026C08CEC90E023C08DEC90E0D1 +:1023900020C083E891E01DC08AE891E01AC082E97C +:1023A00091E017C084E991E014C081E292E011C08D +:1023B00083E292E00EC084E292E00BC085E292E0FC +:1023C00008C086E292E005C087E292E002C080E0A9 +:1023D00090E0CF910C941C10CF910895882309F4BC +:1023E0004DC0823859F40E94E40F81FF47C089E351 +:1023F0000E943B1B0E94B71B89E30CC0833871F419 +:102400000E94E40F80FF3AC083E50E943B1B0E94BC +:10241000B71B83E50E945D1B0C94B71B843859F4ED +:102420000E94E40F82FF2AC087E40E943B1B0E94A7 +:10243000B71B87E4EFCF982F9450913A08F4EACF76 +:10244000982F905E983058F4282F277081E090E004 +:1024500001C0880F2A95EAF70E94841BDDCF982FD0 +:10246000955A933020F480E090E00C940610885A3E +:10247000833120F480E090E00C941C1008958823B0 +:1024800021F00E947E1B0C94B71B0895882321F035 +:102490000E94841B0C94B71B0895BF92CF92DF92C9 +:1024A000EF92FF920F931F93CF93DF93CDB7DEB7D9 +:1024B00027970FB6F894DEBF0FBECDBF8C0185E025 +:1024C000F801DE01119601900D928A95E1F7F8016D +:1024D00030812181F280558152955F708381948192 +:1024E000892B39F02F3F41F481E090E03F3F31F0FC +:1024F00003C081E090E002C080E090E080FD73C303 +:1025000039832A8389819A815E830E94F81AB92EC1 +:102510008F830E94F71A0E941F1A2B2D22952F706D +:1025200030E05E816F812530310509F4E6C06CF43E +:10253000243031050CF0A2C04B2D407F8B2D8F70C5 +:10254000223031050CF045C017C02C3031054CF459 +:102550002A3031050CF0E7C12830310509F043C3BA +:10256000E5C02D30310509F4BAC20CF4A2C22F30F7 +:10257000310509F038C323C3182F411101C002C02F +:102580001295107FFF2059F0112309F46BC2812F9F +:102590006F830E948E1B0E94B71B6F8163C2862FC0 +:1025A0000E94EE11112309F41EC3812F0E94941B77 +:1025B00027960FB6F894DEBF0FBECDBFDF91CF9147 +:1025C0001F910F91FF90EF90DF90CF90BF900C94F0 +:1025D000B71B403211F08295807F662319F061307D +:1025E00071F523C0FF20B1F0511101C032C051304C +:1025F00081F527960FB6F894DEBF0FBECDBFDF91F1 +:10260000CF911F910F91FF90EF90DF90CF90BF90EF +:102610000C949E1B511101C003C0513009F4E3C258 +:102620008E830E94A11B8E819AC1FF2021F056301B +:1026300008F0D9C20EC0553008F0D5C290C1FF20B5 +:10264000C9F0552331F0F801958190FF0BC29F70BE +:10265000958327960FB6F894DEBF0FBECDBFDF91EE +:10266000CF911F910F91FF90EF90DF90CF90BF908F +:102670000C943F12552309F472C109C22B2D2695E3 +:102680002695237030E02115310529F021303105E0 +:1026900009F0A9C219C0FF2021F0862F9B2D93704D +:1026A00002C080E090E027960FB6F894DEBF0FBE20 +:1026B000CDBFDF91CF911F910F91FF90EF90DF90F1 +:1026C000CF90BF900C940610FF2021F0862F9B2DF9 +:1026D000937002C080E090E027960FB6F894DEBFBA +:1026E0000FBECDBFDF91CF911F910F91FF90EF9063 +:1026F000DF90CF90BF900C941C10862FFF2019F014 +:102700000E941B1F02C00E94831F27960FB6F894D9 +:10271000DEBF0FBECDBFDF91CF911F910F91FF9014 +:10272000EF90DF90CF90BF900C940A208B2D837098 +:1027300009F079C0F11057C2262F229526952770EF +:10274000220F220F862F8F70C82ED12CE12CF12C56 +:10275000022E04C0CC0CDD1CEE1CFF1C0A94D2F728 +:1027600064FF10C06FE070E080E090E004C0660F8E +:10277000771F881F991F2A95D2F7609570958095CD +:10278000909503C060E070E0CB012B2D2695269537 +:102790002370422F50E042305105D9F043305105AB +:1027A00069F16C297D298E299F294130510551F10C +:1027B00027960FB6F894DEBF0FBECDBFDF91CF9145 +:1027C0001F910F91FF90EF90DF90CF90BF900C94EE +:1027D000341A6C297D298E299F2927960FB6F894E3 +:1027E000DEBF0FBECDBFDF91CF911F910F91FF9044 +:1027F000EF90DF90CF90BF900C94461A0E94341A4D +:10280000C701B60127960FB6F894DEBF0FBECDBF45 +:10281000DF91CF911F910F91FF90EF90DF90CF90BC +:10282000BF900C94221AFF2019F08B2D817001C0EB +:102830008695882309F4D7C1262F229526952770DF +:10284000220F220F862F8F70C82ED12CE12CF12C55 +:10285000022E04C0CC0CDD1CEE1CFF1C0A94D2F727 +:1028600064FF10C06FE070E080E090E004C0660F8D +:10287000771F881F991F2A95D2F7609570958095CC +:10288000909503C060E070E0CB012B2D2695269536 +:102890002370422F50E042305105D9F043305105AA +:1028A00069F16C297D298E299F294130510551F10B +:1028B00027960FB6F894DEBF0FBECDBFDF91CF9144 +:1028C0001F910F91FF90EF90DF90CF90BF900C94ED +:1028D000D31A6C297D298E299F2927960FB6F89443 +:1028E000DEBF0FBECDBFDF91CF911F910F91FF9043 +:1028F000EF90DF90CF90BF900C94E51A0E94D31A0E +:10290000C701B60127960FB6F894DEBF0FBECDBF44 +:10291000DF91CF911F910F91FF90EF90DF90CF90BB +:10292000BF900C94C11A603F59F120F4603E08F446 +:1029300094C008C0623F09F467C0F0F1633F09F03A +:102940008CC065C0162F1F708B2D8F71FF2021F05A +:102950000E946C1A812F7DCE0E94871A812F2796A4 +:102960000FB6F894DEBF0FBECDBFDF91CF911F91A0 +:102970000F91FF90EF90DF90CF90BF900C94461294 +:10298000FF20B1F0553008F02EC18B2D8F712796A6 +:102990000FB6F894DEBF0FBECDBFDF91CF911F9170 +:1029A0000F91FF90EF90DF90CF90BF900C94A61AFC +:1029B000563008F018C1E9CFFF2099F08B2D8F71A8 +:1029C00027960FB6F894DEBF0FBECDBFDF91CF9133 +:1029D0001F910F91FF90EF90DF90CF90BF900C94DC +:1029E0006C1A8B2D8F7127960FB6F894DEBF0FBE31 +:1029F000CDBFDF91CF911F910F91FF90EF90DF90AE +:102A0000CF90BF900C94871AF110EBCFD7CFFF2057 +:102A100099F08B2D8F7127960FB6F894DEBF0FBEFD +:102A2000CDBFDF91CF911F910F91FF90EF90DF907D +:102A3000CF90BF900C945D1A27960FB6F894DEBF26 +:102A40000FBECDBFDF91CF911F910F91FF90EF90FF +:102A5000DF90CF90BF900C94581AFF20A9F0552317 +:102A600009F4ACCF862F27960FB6F894DEBF0FBEC1 +:102A7000CDBFDF91CF911F910F91FF90EF90DF902D +:102A8000CF90BF900C942611552309F4AACF862F1E +:102A900027960FB6F894DEBF0FBECDBFDF91CF9162 +:102AA0001F910F91FF90EF90DF90CF90BF900C940B +:102AB000EE114B2D4F70C8010E94AB0227960FB646 +:102AC000F894DEBF0FBECDBFDF91CF911F910F9164 +:102AD000FF90EF90DF90CF90BF900C948A19F11087 +:102AE00082C09B2D9F70492F50E04230510599F1D3 +:102AF00044F44115510569F04130510509F073C0A6 +:102B000019C043305105C1F14430510509F06BC083 +:102B100044C027960FB6F894DEBF0FBECDBFDF913D +:102B2000CF911F910F91FF90EF90DF90CF90BF90CA +:102B30000C94E12227960FB6F894DEBF0FBECDBFEE +:102B4000DF91CF911F910F91FF90EF90DF90CF9089 +:102B5000BF900C94F82227960FB6F894DEBF0FBEF4 +:102B6000CDBFDF91CF911F910F91FF90EF90DF903C +:102B7000CF90BF900C94142327960FB6F894DEBF25 +:102B80000FBECDBFDF91CF911F910F91FF90EF90BE +:102B9000DF90CF90BF900C942723862F27960FB6F7 +:102BA000F894DEBF0FBECDBFDF91CF911F910F9183 +:102BB000FF90EF90DF90CF90BF900C944B234B2D64 +:102BC0004F70C80127960FB6F894DEBF0FBECDBF79 +:102BD000DF91CF911F910F91FF90EF90DF90CF90F9 +:102BE000BF900C94D40327960FB6F894DEBF0FBEA7 +:102BF000CDBFDF91CF911F910F91FF90EF90DF90AC +:102C0000CF90BF9008950E949B1B0E94701B0E9452 +:102C1000B71B0E94B6200E940A2080E090E00E942C +:102C2000061080E090E00C941C100E948B1B0C940A +:102C300003160E94F81A292F22952F7030E02C30AD +:102C400031054CF42A3031056CF422503109223020 +:102C5000310590F407C02C30310551F02F3031058B +:102C600059F406C0803E10F0803F31F481E00895B1 +:102C700093FB882780F9089580E00895CF93DF9330 +:102C800000D000D01F92CDB7DEB70F900F900F90FD +:102C90000F900F90DF91CF910895CF93DF9300D0E5 +:102CA00000D000D0CDB7DEB726960FB6F894DEBFC1 +:102CB0000FBECDBFDF91CF9108951F93CF93DF93C8 +:102CC000C091BB0116E012C0D0E01C9FF0011D9F17 +:102CD000F00D1124E557FE4F4081518162817381CF +:102CE000848195810E944D162196C7708091BC0108 +:102CF000C813EACFDF91CF911F91089540918501CC +:102D000050918601609187017091880180918901BD +:102D100090918A010C944D160F931F93CF93DF93DC +:102D200080918A0182958F7009F069C08091870136 +:102D3000882309F464C0A091BB01D091BC01B0917B +:102D40008501C0918601809188019091890121E0DF +:102D500030E0BF3F11F020E030E0122FBC01609561 +:102D6000709506E04AC0009721F0CF3F29F4212F4B +:102D700005C021E030E002C020E030E020FD3BC093 +:102D80004A2F50E0049FF001059FF00D1124E557F4 +:102D9000FE4F2181C2132FC02081B2132CC022818B +:102DA000211129C0238134812817390718F0281BE5 +:102DB000390B02C0260F371F283C3105E0F4809103 +:102DC0008A018F70806180938A0186E0849FF00180 +:102DD000859FF00D1124E057FE4F80818F70806138 +:102DE000808385E891E00E944D12DF91CF911F9181 +:102DF0000F910C945D16AF5FA770AD13B4CFDF9148 +:102E0000CF911F910F910895EF92FF920F931F930F +:102E1000CF93DF93CDB7DEB762970FB6F894DEBFDE +:102E20000FBECDBF8C0185E0F801DE011D9601903B +:102E30000D928A95E1F7D8014C9111965C9111970A +:102E400012966C9112971396ED90FC9014977091D6 +:102E50008501E09186018091880190918901009718 +:102E600039F0EF3F41F421E030E07F3F31F003C023 +:102E700021E030E002C020E030E020FD5CC1209184 +:102E80008701222309F4F1C0E816F90628F097011A +:102E9000281B390BC90104C0809590958E0D9F1D8C +:102EA000883C910508F098C080918A01982F907F06 +:102EB00009F064C0E51314C0741312C0611110C08E +:102EC0008F70806180938A010E947E1685E891E070 +:102ED0000E944D1280918A01D80115968C9343C1AE +:102EE000EF2839F05F3F41F481E090E04F3F31F04F +:102EF00003C081E090E002C080E090E080FD03C06C +:102F000081E0862702C080E090E080FF2EC08091A3 +:102F1000BB012091BC0136E013C090E0389FF00166 +:102F2000399FF00D1124E557FE4F7181571306C0EC +:102F30007081471303C07281671317C001968770B1 +:102F40008213EBCF12C19F7059F0882309F40BC193 +:102F500007C09F7029F0F8019581907F09F403C1A3 +:102F6000805E883008F4FFC0D2C0662309F4FBC03D +:102F700080918A01816080938A01F5C0E51308C0C1 +:102F8000741306C0611104C0D80115968C939DC0BE +:102F90004D875E878D859E856A8B0E9419166A898A +:102FA000882309F4B4C0662309F4B1C020918A01D2 +:102FB000822F82958F7090E002970CF4C6C08091AA +:102FC00085019091860198878F831986FB86EA8612 +:102FD0002C87CE01079646C080918A01982F907F5A +:102FE00059F47E2DF98AE88A89890E943E1685E87F +:102FF00091E00E944D1295C0E51311C074130FC0EB +:1030000061110DC0F8018583C8010E944D12E5E8E9 +:10301000F1E086E0DF011D928A95E9F7A2C04D87B5 +:103020005E878D859E856A8B0E9419166A89882322 +:1030300009F46DC0662309F46AC020918A01822FC9 +:1030400082958F7090E002970CF47FC0809185018B +:10305000909186019A8389831B82FD82EC822E8364 +:10306000CE0101960E944D1270C0E816F90628F0B4 +:103070009701281B390BC90104C0809590958E0DCE +:103080009F1D883C910508F046C0662309F43FC0A7 +:10309000E51330C074132EC020918A0120FD21C099 +:1030A000322F32953F70832F90E00097D1F0D801F6 +:1030B00015962C9315970F9741F0832F8F5F82956C +:1030C000807F2F70282B15962C93C8010E944D12DB +:1030D00086E0F801A5E8B1E001900D928A95E1F74C +:1030E0003EC086E0F801A5E8B1E001900D928A9516 +:1030F000E1F737C04D875E878D859E850E94191642 +:10310000811123C080918A01816080938A01C80166 +:103110000E944D1226C07E2DF98AE88A89890E9474 +:103120003E16E5E8F1E086E0DF011D928A95E9F7B9 +:103130000E947E1618C0662351F34D875E878D85E9 +:103140009E850E941916882311F386E0F801A5E8F0 +:10315000B1E001900D928A95E1F70E948C160E94D1 +:103160007E1681E014C080E012C04D875E878D8599 +:103170009E850E94F81A292F22952F7030E0223068 +:1031800031050CF4E0CE243031050CF6E2CE629627 +:103190000FB6F894DEBF0FBECDBFDF91CF911F9168 +:1031A0000F91FF90EF9008951F93CF93DF93CDB7CA +:1031B000DEB72C970FB6F894DEBF0FBECDBF4F839E +:1031C000588769877A878B879C87CE0107960E94EC +:1031D00004178823D9F02F8138858A859B85892B10 +:1031E00039F03F3F19F080E090E004C02F3FD9F75D +:1031F00081E090E0892B09F06DC04F815885698589 +:103200007A858B859C850E944D1664C086E0FE0100 +:103210003796DE01119601900D928A95E1F7FF81B4 +:10322000E8854A855B854115510539F0EF3F41F44A +:1032300081E090E0FF3F31F003C081E090E002C008 +:1032400080E090E080FD46C02091BC0130E0C901E3 +:103250000196877099276091BB0170E086179707E8 +:1032600009F440C0F983EA835D834C8396E0929F22 +:10327000D001939FB00D1124A557BE4FFE0131968A +:1032800001900D929A95E1F78093BC010E945D1622 +:1032900021C0189FC001112485579E4F0E9404171A +:1032A000882371F1E091BB011E9FF0011124E557C5 +:1032B000FE4F4081518162817381848195810E949A +:1032C0004D168091BB0190E00196877099278093FD +:1032D000BB0101C016E08091BB019091BC01891334 +:1032E000D8CF0EC00E9415161092BC011092BB01DF +:1032F000E5E8F1E086E0DF011D928A95E9F7EACF83 +:103300002C960FB6F894DEBF0FBECDBFDF91CF91E4 +:103310001F910895DF92EF92FF920F931F93CF9327 +:10332000DF93EC01009709F46EC0D12CEE24E394F6 +:10333000F12C8E010F5F1F4FFE018491843748F4FA +:10334000843008F04CC0813071F0823009F05BC0ED +:103350001EC0853709F43FC080F1982F94589037EC +:1033600008F051C03FC02296F8018491982F905EDA +:10337000983050F48770FE2D01C0FF0F8A95EAF750 +:103380008F2F0E948E1B13C00E9426112FC02296E1 +:10339000F8018491982F905E983060F48770FE2D2C +:1033A00001C0FF0F8A95EAF78F2F0E94941B0E949D +:1033B000B71B1CC00E94EE1119C02296F80104919F +:1033C00007C08FE99FE00197F1F700C000000150AE +:1033D0000111F7CF0BC02296F801D49007C00E94CC +:1033E000261103C08F770E94EE11E8018D2D07C0D2 +:1033F0008150EFE9FFE03197F1F700C0000088232A +:1034000009F497CFF5CFDF91CF911F910F91FF90E6 +:10341000EF90DF9008956093C1017093C201809393 +:10342000C3019093C4010C9403166093BD01709383 +:10343000BE018093BF019093C0010C9403160895C0 +:103440000C940B1A0F931F930091C1011091C201AC +:103450002091C3013091C401602B712B822B932BDF +:103460001F910F910C940B1A0F931F930091C101A0 +:103470001091C2012091C3013091C40160237123D6 +:10348000822393231F910F910C940B1A0F931F9378 +:103490000091C1011091C2012091C3013091C4017A +:1034A00060277127822793271F910F910C940B1A85 +:1034B00060E070E0CB010C94151A41E050E060E050 +:1034C00070E004C0440F551F661F771F8A95D2F71E +:1034D000CB01BA010C94151A41E050E060E070E0B5 +:1034E00004C0440F551F661F771F8A95D2F780913D +:1034F000BD019091BE01A091BF01B091C001482BC8 +:10350000592B6A2B7B2BCB01BA010C94151A41E085 +:1035100050E060E070E004C0440F551F661F771F45 +:103520008A95D2F740955095609570958091BD0130 +:103530009091BE01A091BF01B091C00148235923D1 +:103540006A237B23CB01BA010C94151A41E050E0A9 +:1035500060E070E004C0440F551F661F771F8A9516 +:10356000D2F78091BD019091BE01A091BF01B091B1 +:10357000C001482759276A277B27CB01BA010C9441 +:10358000151A0F931F930091BD011091BE01209158 +:10359000BF013091C001602B712B822B932B1F91A7 +:1035A0000F910C94151A0F931F930091BD01109168 +:1035B000BE012091BF013091C0016023712382239D +:1035C00093231F910F910C94151A0F931F93009141 +:1035D000BD011091BE012091BF013091C001602753 +:1035E0007127822793271F910F910C94151A089524 +:1035F000CF92DF92EF92FF920F931F93CF93DF93BF +:10360000EC01C090C101D090C201E090C301F090E4 +:10361000C4018091BD019091BE01A091BF01B09104 +:10362000C001C82AD92AEA2AFB2A0FE110E0B70113 +:10363000A601002E04C076956795579547950A9484 +:10364000D2F740FF08C0BE01802F0E94FA038130EC +:10365000910509F007C00150110948F7BE0180E04B +:103660000E94FA03DF91CF911F910F91FF90EF908D +:10367000DF90CF90089540910C0150910D0120E012 +:1036800030E09FEFFA01E20FF31F62816817A1F0AB +:103690009F3F19F4611101C0922F2F5F3F4F2630D9 +:1036A000310581F707C0FA01E90FF11D97FDFA9581 +:1036B000828308959F3FB9F7089540910C0150917E +:1036C0000D0120E030E0FA01E20FF31F9281981320 +:1036D00001C012822F5F3F4F26303105A1F70895B8 +:1036E00081E090E0E0910C01F0910D01E80FF91FED +:1036F0001082019688309105A9F708959091C5012F +:10370000982B9093C501089580959091C5019823B9 +:103710009093C50108951092C50108959091C60136 +:10372000982B9093C601089580959091C601982397 +:103730009093C60108951092C60108958093C70121 +:1037400008951092C701089540910C0150910D0108 +:1037500020E030E080E0FA01E20FF31F9181911147 +:103760008F5F2F5F3F4F27303105A9F70895E09114 +:103770000C01F0910D018091C5018083E0910C0155 +:10378000F0910D0180819091C601892B80839091E9 +:10379000C701992361F0E0910C01F0910D01808146 +:1037A000892B80830E94A41B81110E94A11B809100 +:1037B0000C0190910D010C94F00F8091E701843081 +:1037C00021F11092D10120E488E190E00FB6F89445 +:1037D000A895809360000FBE2093600080E00E9457 +:1037E000E10283B7817F846083BF83B7816083BF39 +:1037F0007894889583B78E7F83BF88E10FB6F8945D +:1038000080936000109260000FBE0895089508959F +:10381000CF9380E00E94E1020E94061C0E943807BC +:103820000E94071CC0E08C2F0E948C08892B29F471 +:10383000CF5FC530C1F780E001C081E0CF9108952E +:103840000E94151680E00E94E1020E94D0220E9490 +:10385000E40F0C9462051F920F920FB60F92112481 +:103860008F939F93AF93BF938091D101811113C028 +:103870008091D2019091D301A091D401B091D50152 +:103880004196A11DB11D8093D2019093D301A093C5 +:10389000D401B093D501BF91AF919F918F910F90BB +:1038A0000FBE0F901F90189582E084BD93E095BDE8 +:1038B0009AEF97BD80936E0008958FB7F89440916A +:1038C000D2015091D3016091D4017091D5018FBF85 +:1038D000CA010895CF92DF92EF92FF920F931F9348 +:1038E0002FB7F8944091D2015091D3016091D40147 +:1038F0007091D5012FBF6A017B01EE24FF248C015A +:1039000020E030E0C016D106E206F30620F09A016E +:10391000281B390B05C09C0120953095240F351FBD +:10392000C9011F910F91FF90EF90DF90CF90089504 +:103930001F920F920FB60F9211248F939F93AF9304 +:10394000BF938091D2019091D301A091D401B09105 +:10395000D5010196A11DB11D8093D2019093D30191 +:10396000A093D401B093D501BF91AF919F918F9156 +:103970000F900FBE0F901F9018950E94C80CF894DE +:103980002FEF87EA91E6215080409040E1F700C098 +:10399000000087E090EBDC018093F1019093F2014D +:1039A000A093F301B093F4012CE088E190E00FB60E +:1039B000F894A895809360000FBE20936000FFCF1D +:1039C000CF92DF92EF92FF920F931F93CF93DF93EB +:1039D000C82ED12C01E010E08D2D0E948C087C01B6 +:1039E000C0E0D0E098010C2E02C0220F331F0A94D1 +:1039F000E2F72E213F21232B29F42196CC30D1054B +:103A000089F708C06C2F7D2D80E00E94D503C81275 +:103A1000F4CF06C0D39485E0D812DECF80E001C099 +:103A200081E0DF91CF911F910F91FF90EF90DF9098 +:103A3000CF900895CF93C82F8CE20E94E01C88237A +:103A400021F08C2FCF910C94E01C80E0CF91089551 +:103A5000CF930E946B1E811102C00E944C1EC5E6CE +:103A600008C00E9438078FE39CE90197F1F700C076 +:103A70000000C150B1F789E20E941A1D81110AC1EC +:103A80008AE20E941A1D81110E944C1E85E00E944C +:103A90001A1D81110E94BD1C0E94761E8093D001C8 +:103AA00087E00E941A1D882399F18BE10E941A1D5C +:103AB000882351F09091D00191FB882780F921E073 +:103AC000822780FB91F922C08EE00E941A1D882374 +:103AD00051F09091D00192FB882780F921E0822754 +:103AE00080FB92F913C080E10E941A1D9091D001D1 +:103AF000882341F093FB882780F921E0822780FB0F +:103B000093F904C0892F809580FB90F99093D001A0 +:103B10008091D0010E947A1E0E94881E8093E1014C +:103B200080EE0E941A1D882341F08091E101982FB8 +:103B3000909590FB80F98093E10189E30E941A1D22 +:103B4000882359F09091E10191FB882780F921E0C9 +:103B5000822780FB91F99093E10182EE0E941A1D69 +:103B6000882359F09091E10192FB882780F921E0A8 +:103B7000822780FB92F99093E10186EE0E941A1D44 +:103B8000882359F09091E10193FB882780F921E087 +:103B9000822780FB93F99093E10183EE0E941A1D26 +:103BA000882359F09091E10194FB882780F921E066 +:103BB000822780FB94F99093E10185E30E941A1D0E +:103BC000882359F09091E10195FB882780F921E045 +:103BD000822780FB95F99093E10181E30E941A1DF1 +:103BE000882359F09091E10196FB882780F921E024 +:103BF000822780FB96F99093E10181E10E941A1DD2 +:103C0000882359F09091E10197FB882780F921E002 +:103C1000822780FB97F99093E1018091E1010E9456 +:103C20008C1E87E20E941A1DC82F8EE10E941A1D69 +:103C30008111C2608FE10E941A1D8111C46080E26F +:103C40000E941A1D8111C86081E20E941A1D811113 +:103C5000C06182E20E941A1D8111C06283E20E944B +:103C60001A1D8111C06484E20E941A1D882311F07C +:103C7000C06802C0CC2329F08C2F0E94831E6C2FB9 +:103C800003C00E947F1E682F70E080E090E0CF911B +:103C90000C94201ACF9108956DEE7EEF80E090E0B5 +:103CA0000E94D92460E082E090E00E94CB2460E092 +:103CB00083E090E00E94CB2460E084E090E00E94EA +:103CC000CB2460E085E090E00E94CB2460E086E0B9 +:103CD00090E00C94CB2480E090E00E94C52421E089 +:103CE0008D3E9E4F09F020E0822F089582E090E003 +:103CF0000C94BD24682F82E090E00C94CB2483E0E8 +:103D000090E00C94BD24682F83E090E00C94CB24C9 +:103D100084E090E00C94BD24682F84E090E00C9443 +:103D2000CB2486E090E00C94BD24682F86E090E0E0 +:103D30000C94CB248091DE0180FF0BC060911101B7 +:103D400085E0689FB0011124759567957595679515 +:103D50002AC081FF09C06091110185E0689FB00110 +:103D60001124759567951FC082FF07C060911101EE +:103D700085E0689FB001112416C04091D80144230A +:103D8000C9F060911001461788F72091110185E074 +:103D9000289F90011124429FC001439F900D112440 +:103DA00070E00E9495246038710540F4611571053A +:103DB00039F002C065E070E0862F08958FE708951E +:103DC00081E008958091DE0180FF08C060910F01BD +:103DD00070E0759567957595679521C081FF06C060 +:103DE00060910F0170E07595679519C082FF04C05E +:103DF00060910F0170E010C08091D8018823C1F05C +:103E000060910E018617A0F790910F01989FC00155 +:103E1000112470E00E9495246038710528F4611522 +:103E2000710521F0862F08958FE7089581E00895A8 +:103E300061E070E0F4CF803F21F40E949A1E8195EA +:103E400004C0813F29F40E949A1E8093DB010895EB +:103E5000823F21F40E949A1E819504C0833F29F479 +:103E60000E949A1E8093DA010895893F19F40E94F6 +:103E7000E21E05C08A3F31F40E94E21E81958093C4 +:103E8000DC0108958B3F21F40E94E21E819504C05D +:103E90008C3F29F40E94E21E8093DD010895843F47 +:103EA00021F48091D901816017C0853F21F4809170 +:103EB000D901826011C0863F21F48091D9018460CC +:103EC0000BC0873F21F48091D901886005C0883FED +:103ED00031F48091D90180618093D90108958D3F9B +:103EE00021F48091DE0181600BC08E3F21F480912E +:103EF000DE01826005C08F3F29F48091DE0184607D +:103F00008093DE010895803F29F48091DB0187FFD3 +:103F10006EC007C0813F41F48091DB0118160CF0A0 +:103F200066C01092DB0163C09091DA01823F19F400 +:103F300097FF5DC005C0833F31F419160CF057C0E0 +:103F40001092DA0154C0893F31F48091DC011816D7 +:103F50000CF04DC006C08A3F39F48091DC0187FF28 +:103F600046C01092DC0143C08B3F29F48091DD01F3 +:103F700087FF3DC006C08C3F39F48091DD011816E3 +:103F8000B4F51092DD0133C0843F21F48091D90152 +:103F90008E7F05C0853F31F48091D9018D7F80935C +:103FA000D90125C0863F21F48091D9018B7FF7CFBD +:103FB000873F21F48091D901877FF1CF883F21F499 +:103FC0008091D9018F7EEBCF8D3F21F48091DE016E +:103FD0008E7F0BC08E3F21F48091DE018D7F05C066 +:103FE0008F3F29F48091DE018B7F8093DE018091E9 +:103FF000DA0181110EC08091DB0181110AC080912C +:10400000DC01811106C08091DD01811102C0109296 +:10401000D801089589ED91E00E94FB0F0E945D1C7C +:104020009093D7018093D6010895CF938091D601C4 +:104030009091D7010E946A1C4091D801442321F03D +:104040002091120130E006C0209113015AE0259F13 +:10405000900111248217930708F486C08091DA0139 +:1040600081110DC09091DB01911109C09091DC018B +:10407000911105C09091DD01992309F475C04F3F5E +:1040800019F04F5F4093D801181624F40E949A1E2D +:104090008093DA018091DA0187FF05C00E949A1EA1 +:1040A00081958093DA018091DB01181624F40E9437 +:1040B0009A1E8093DB018091DB0187FF05C00E947F +:1040C0009A1E81958093DB016091DA01662339F1B4 +:1040D000C091DB01CC2319F1772767FD7095872FFD +:1040E000972F0E949A2323E333E343E35FE30E9485 +:1040F000FE230E9467236093DA016C2F772767FD08 +:104100007095872F972F0E949A2323E333E343E38D +:104110005FE30E94FE230E9467236093DB0180918E +:10412000DC01181624F40E94E21E8093DC018091C9 +:10413000DC0187FF05C00E94E21E81958093DC01AF +:104140008091DD01181624F40E94E21E8093DD01A7 +:104150008091DD0187FF05C00E94E21E819580935A +:10416000DD01CF910C940A20CF910895E9EDF1E0A3 +:1041700085E0DF011D928A95E9F71092D80110922F +:10418000DE010895833089F130F4813061F08230AE +:1041900009F06EC019C0853009F449C0B8F1863005 +:1041A00009F066C055C020911301862F90E0820F60 +:1041B000911D8F3F910520F4620F609313010895C4 +:1041C0008FEF80931301089520911201862F90E0C4 +:1041D000820F911D8F3F910520F4620F60931201B1 +:1041E00008958FEF80931201089520911101862F79 +:1041F00090E0820F911D8F3F910520F4620F609334 +:10420000110108958FEF80931101089520911001FD +:10421000862F90E0820F911D8F3F910520F4620F51 +:104220006093100108958FEF8093100108952091FD +:104230000F01862F90E0820F911D8F3F910520F492 +:10424000620F60930F0108958FEF80930F0108951F +:1042500020910E01862F90E0820F911D8F3F9105D6 +:1042600020F4620F60930E0108958FEF80930E018A +:104270000895833021F130F4813059F0823009F013 +:1042800049C012C0853089F128F1863009F042C05A +:1042900037C080911301681720F4861B80931301A7 +:1042A000089510921301089580911201681720F467 +:1042B000861B809312010895109212010895809137 +:1042C0001101681720F4861B809311010895109244 +:1042D0001101089580911001681720F4861B8093C6 +:1042E0001001089510921001089580910F01681730 +:1042F00020F4861B80930F01089510920F010895FA +:1043000080910E01681720F4861B80930E0108959A +:1043100010920E01089541E050E060E070E004C0AA +:10432000440F551F661F771F8A95D2F7CB01BA013C +:104330000E94201A0C941516873200F58E3108F071 +:1043400086C08E3009F466C060F4873009F44DC031 +:1043500018F4863049F531C0883041F18B3021F5B1 +:104360007BC0863109F478C018F48031E9F45CC070 +:10437000893109F471C08B31B9F442C0883309F432 +:104380006BC048F4893209F460C0853309F45DC01C +:10439000873251F45AC0833409F457C018F48A3371 +:1043A00018F057C0883499F080E008950E94761E76 +:1043B0000E94881E0E94911E4FC08091D001817F73 +:1043C0008E7F8093D00181E08093DF0108950E9469 +:1043D00015162FEF83ED90E3215080409040E1F7D8 +:1043E00000C000000E94BD1C37C08091D00180FF3A +:1043F00003C0817F8E7F01C081608093D0012CC07B +:104400009091D00191FB882780F921E0822780FBE1 +:1044100091F913C09091D00192FB882780F921E097 +:10442000822780FB92F909C09091D00193FB8827E5 +:1044300080F921E0822780FB93F99093D0018823B3 +:1044400059F091609093D00107C080E003C08D5176 +:1044500001C089530E948B2181E0089580E0089576 +:1044600080E00895CF93C82F8091DF01813071F0F3 +:1044700020F0823009F089C037C0A0910C01B091C2 +:104480000D018C91823209F082C007C0A0910C010D +:10449000B0910D018C91823249F48C2F0E942E2212 +:1044A00081111EC08C2F0E949C211CC08C2F0E9449 +:1044B0003022811115C0C43169F030F4CB3081F065 +:1044C000C03109F068C009C0C93221F0C83309F011 +:1044D00062C006C01092DF015EC082E08093DF01FF +:1044E00081E090E081705AC0C932C9F060F4C431F3 +:1044F000B1F020F4C73009F04CC034C0CE51C63002 +:1045000008F047C017C0CE3439F120F4CB3409F09D +:1045100040C01CC0C135C1F0C235D9F513C080916F +:10452000E001882319F01092E00133C081E080930C +:10453000DF0134C0EC2FF0E0E65BFE4F808180931A +:10454000E00127C061E003C061E007C06AE080913C +:10455000E0010E94C2201DC06AE08091E0010E943B +:10456000392117C08EE18093130182E380931201F9 +:104570008AE08093110184E18093100188E08093A8 +:104580000F0188E280930E0104C01092DF0180E0E9 +:1045900005C081E003C080E090E0A4CFCF910895F2 +:1045A0000E946B1E811102C00E944C1E0E94911E2F +:1045B0008093F00180FF02C0869501C080E00C94DA +:1045C000E1028091F001982F9695292F30E0233059 +:1045D00031054CF49F5F990F8170892B8160809326 +:1045E000F0010E94951E8091F00186950C94E102E5 +:1045F0008091F001982F969591F09158990F8170C4 +:10460000892B8093F0018E7F91E009F490E08091F6 +:10461000F00190FB80F98093F0010E94951E80913B +:10462000F00186950C94E1028091F001982F90950D +:1046300090FB80F98093F0010E94951E8091F0011B +:1046400080FF02C0869501C080E00C94E1023091A9 +:10465000F001232F26952F5F2F77822F90E0317066 +:1046600004972CF4220F232B2093F00102C03093E7 +:10467000F0018091F001282F2E7F91E009F490E065 +:1046800090FB80F98093F0010E94951E8091F001CB +:1046900086950C94E1022091F001922F969598272F +:1046A000990F822F8170892B8093F0018E7F91E08A +:1046B00009F490E08091F00190FB80F98093F00183 +:1046C0000E94951E8091F00186950C94E10204D021 +:1046D0006894B1118DC0089570D088F09F5790F004 +:1046E000B92F9927B751A0F0D1F0660F771F881F17 +:1046F000991F1AF0BA95C9F712C0B13081F077D07E +:10470000B1E0089574C0672F782F8827B85F39F01B +:10471000B93FCCF3869577956795B395D9F73EF475 +:1047200090958095709561957F4F8F4F9F4F08951D +:10473000E89409C097FB3EF490958095709561953B +:104740007F4F8F4F9F4F9923A9F0F92F96E9BB27F1 +:104750009395F695879577956795B795F111F8CF6D +:10476000FAF4BB0F11F460FF1BC06F5F7F4F8F4FD8 +:104770009F4F16C0882311F096E911C0772321F0CE +:104780009EE8872F762F05C0662371F096E8862F66 +:1047900070E060E02AF09A95660F771F881FDAF7BD +:1047A000880F9695879597F9089557FD9058440F6F +:1047B000551F59F05F3F71F04795880F97FB991F80 +:1047C00061F09F3F79F0879508951216130614063D +:1047D000551FF2CF4695F1DF08C0161617061806CA +:1047E000991FF1CF86957105610508940895E894A5 +:1047F000BB2766277727CB0197F908950BD078C0A0 +:1048000069D028F06ED018F0952309F05AC05FC027 +:104810001124EECFCADFA0F3959FD1F3950F50E09E +:10482000551F629FF001729FBB27F00DB11D639F62 +:10483000AA27F00DB11DAA1F649F6627B00DA11D08 +:10484000661F829F2227B00DA11D621F739FB00DAE +:10485000A11D621F839FA00D611D221F749F33271E +:10486000A00D611D231F849F600D211D822F762FB7 +:104870006A2F11249F5750408AF0E1F088234AF0B4 +:10488000EE0FFF1FBB1F661F771F881F9150504000 +:10489000A9F79E3F510570F014C0AACF5F3FECF31B +:1048A000983EDCF3869577956795B795F795E795EC +:1048B0009F5FC1F7FE2B880F911D9695879597F9FD +:1048C000089597F99F6780E870E060E008959FEF92 +:1048D00080EC089500240A94161617061806090697 +:1048E000089500240A941216130614060506089566 +:1048F000092E0394000C11F4882352F0BB0F40F4EE +:10490000BF2B11F460FF04C06F5F7F4F8F4F9F4F2D +:104910000895991B79E004C0991F961708F0961B1B +:10492000881F7A95C9F78095089597FB072E16F48E +:10493000009407D077FD09D00E94A92407FC05D078 +:104940003EF4909581959F4F0895709561957F4FA6 +:104950000895AA1BBB1B51E107C0AA1FBB1FA617C6 +:10496000B70710F0A61BB70B881F991F5A95A9F718 +:1049700080959095BC01CD010895F999FECF92BD27 +:1049800081BDF89A992780B50895A8E1B0E042E08A +:1049900050E00C94E024262FF999FECF1FBA92BD67 +:1049A00081BD20BD0FB6F894FA9AF99A0FBE019610 +:1049B00008950E94CB24272F0C94CC24DC01CB013A +:1049C000FC01F999FECF06C0F2BDE1BDF89A31961F +:1049D00000B40D9241505040B8F70895F894FFCFBD +:1049E00005960826090209CD08990801C80128087A +:1049F000140A321E420045002500260043006100D3 +:104A00006000200037006400650066006700440015 +:104A100046002400470074038D03A603BF038B04E4 +:104A20003E040804E8033F4D362001020304050656 +:044A3000070809006A +:00000001FF From 47b537c87fd1d2d7671eaf5c49f20bba40afad25 Mon Sep 17 00:00:00 2001 From: Jack Humbert Date: Wed, 30 Mar 2016 00:46:45 -0400 Subject: [PATCH 29/45] preonic readme --- keyboard/preonic/README.md | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) diff --git a/keyboard/preonic/README.md b/keyboard/preonic/README.md index 3ba0cc1527..0c09466559 100644 --- a/keyboard/preonic/README.md +++ b/keyboard/preonic/README.md @@ -1,6 +1,6 @@ -Planck keyboard firmware +Preonic keyboard firmware ====================== -DIY/Assembled compact ortholinear 40% keyboard by [Ortholinear Keyboards](http://ortholinearkeyboards.com). +DIY/Assembled compact ortholinear 50% keyboard by [Ortholinear Keyboards](http://ortholinearkeyboards.com). ## Quantum MK Firmware @@ -8,7 +8,7 @@ For the full Quantum feature list, see [the parent README.md](/README.md). ## Building -Download or clone the whole firmware and navigate to the keyboard/planck folder. Once your dev env is setup, you'll be able to type `make` to generate your .hex - you can then use `make dfu` to program your PCB once you hit the reset button. +Download or clone the whole firmware and navigate to the keyboard/preonic folder. Once your dev env is setup, you'll be able to type `make` to generate your .hex - you can then use `make dfu` to program your PCB once you hit the reset button. Depending on which keymap you would like to use, you will have to compile slightly differently. @@ -23,9 +23,3 @@ To build the firmware binary hex file with a keymap just do `make` with `KEYMAP` $ make KEYMAP=[default|jack|] ``` Keymaps follow the format **__.c__** and are stored in the `keymaps` folder. - -### Notable forks (which some of the keymap files are from) -- [Shane's Fork](https://github.com/shanecelis/tmk_keyboard/tree/master/keyboard/planck) -- [Pierre's Fork](https://github.com/pcarrier/tmk_keyboard/blob/pcarrier/planck/keyboard/gh60/keymap_planck.c) -- [Nathan's Fork](https://github.com/nathanrosspowell/tmk_keyboard/tree/planck-jack/keyboard/planck) -- [Matthew's Fork](https://github.com/pepers/tmk_keyboard/tree/master/keyboard/planck_grid) From 09d567045cb011b2fd7984cf3277b4875e677153 Mon Sep 17 00:00:00 2001 From: Noah Andrews Date: Wed, 30 Mar 2016 09:17:06 -0400 Subject: [PATCH 30/45] Fixed minor issues with Preonic readme --- keyboard/preonic/README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/keyboard/preonic/README.md b/keyboard/preonic/README.md index 0c09466559..4a33a3e4e0 100644 --- a/keyboard/preonic/README.md +++ b/keyboard/preonic/README.md @@ -16,10 +16,10 @@ Depending on which keymap you would like to use, you will have to compile slight To build with the default keymap, simply run `make`. ### Other Keymaps -Several version of keymap are available in advance but you are recommended to define your favorite layout yourself. To define your own keymap create file named `.c` and see keymap document (you can find in top README.md) and existent keymap files. +Several version of keymap are available in advance but you are recommended to define your favorite layout yourself. To define your own keymap, create a file in the keymaps folder named `.c` and see keymap document (you can find in top README.md) and existent keymap files. To build the firmware binary hex file with a keymap just do `make` with `KEYMAP` option like: ``` $ make KEYMAP=[default|jack|] ``` -Keymaps follow the format **__.c__** and are stored in the `keymaps` folder. +Keymaps follow the format **__\.c__** and are stored in the `keymaps` folder. From 3b703eff33963a5756b3e3f16019d6ddae8a7874 Mon Sep 17 00:00:00 2001 From: Miha Rekar Date: Wed, 30 Mar 2016 17:03:03 +0200 Subject: [PATCH 31/45] Tiny fix of Planck diagrams --- keyboard/planck/keymaps/default/keymap.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/keyboard/planck/keymaps/default/keymap.c b/keyboard/planck/keymaps/default/keymap.c index d995eb9e58..988deee99d 100644 --- a/keyboard/planck/keymaps/default/keymap.c +++ b/keyboard/planck/keymaps/default/keymap.c @@ -76,7 +76,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * ,-----------------------------------------------------------------------------------. * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp | * |------+------+------+------+------+-------------+------+------+------+------+------| - * | Del | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ | + * | Esc | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ | * |------+------+------+------+------+------|------+------+------+------+------+------| * | Shift| F7 | F8 | F9 | F10 | F11 | F12 |Qwerty|Colemk|Dvorak| Reset|Enter | * |------+------+------+------+------+------+------+------+------+------+------+------| @@ -94,7 +94,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * ,-----------------------------------------------------------------------------------. * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Bksp | * |------+------+------+------+------+-------------+------+------+------+------+------| - * | Del | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | | | + * | Esc | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | | | * |------+------+------+------+------+------|------+------+------+------+------+------| * | Shift| F7 | F8 | F9 | F10 | F11 | F12 |Qwerty|Colemk|Dvorak| Reset|Enter | * |------+------+------+------+------+------+------+------+------+------+------+------| From ac3f3a85d571658fe2dcb98458cfd0c14e418150 Mon Sep 17 00:00:00 2001 From: Noah Andrews Date: Wed, 30 Mar 2016 11:36:35 -0400 Subject: [PATCH 32/45] Update README.md --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 6a6bbed40b..9857330679 100644 --- a/README.md +++ b/README.md @@ -269,7 +269,7 @@ For this mod, you need an unused pin wiring to DI of WS2812 strip. After wiring RGBLIGHT_ENABLE = yes -Please note that the underglow is not compatible with MIDI functions. So you cannot enable both of them at the same time. +Please note that the underglow is not compatible with audio output. So you cannot enable both of them at the same time. Please add the following options into your config.h, and set them up according your hardware configuration. @@ -309,4 +309,4 @@ what things are (and likely aren't) too risky. - EEPROM has around a 100000 write cycle. You shouldn't rewrite the firmware repeatedly and continually; that'll burn the EEPROM eventually. - \ No newline at end of file + From fe6c3e4f0fe1abb38d64ce3f4d48db7aea63aad0 Mon Sep 17 00:00:00 2001 From: David Mohr Date: Tue, 29 Mar 2016 23:49:34 -0600 Subject: [PATCH 33/45] Squisher's international dvorak variant for ergodox ez See README.md --- .../keymaps/dvorak_intl_squisher/README.md | 29 +++ .../dvorak_intl_squisher/keyboard-layout0.png | Bin 0 -> 73585 bytes .../dvorak_intl_squisher/keyboard-layout1.png | Bin 0 -> 59122 bytes .../dvorak_intl_squisher/keyboard-layout2.png | Bin 0 -> 53319 bytes .../keymaps/dvorak_intl_squisher/keymap.c | 185 ++++++++++++++++++ 5 files changed, 214 insertions(+) create mode 100644 keyboard/ergodox_ez/keymaps/dvorak_intl_squisher/README.md create mode 100644 keyboard/ergodox_ez/keymaps/dvorak_intl_squisher/keyboard-layout0.png create mode 100644 keyboard/ergodox_ez/keymaps/dvorak_intl_squisher/keyboard-layout1.png create mode 100644 keyboard/ergodox_ez/keymaps/dvorak_intl_squisher/keyboard-layout2.png create mode 100644 keyboard/ergodox_ez/keymaps/dvorak_intl_squisher/keymap.c diff --git a/keyboard/ergodox_ez/keymaps/dvorak_intl_squisher/README.md b/keyboard/ergodox_ez/keymaps/dvorak_intl_squisher/README.md new file mode 100644 index 0000000000..984106ff46 --- /dev/null +++ b/keyboard/ergodox_ez/keymaps/dvorak_intl_squisher/README.md @@ -0,0 +1,29 @@ +# ErgoDox EZ Dvorak International Squisher + +Dvorak layout adjusted with several (linux) applications in mind: + +* Easier Escape for VIM +* Windows/Super key for awesome WM +* Alt+Shift for international characters +* PrintScreen for sys-rq +* Insert for the X11 clip-board + +Major layer changes: + +* Common multimedia keys are integrated into layer 0, less common into layer 1 +* No mouse keys +* Layer 2 is qwerty (for easier gaming & less fortunate keyboard users) + +Known issues: + +* Alt+Shift does not work reliably (depends on the X11 kb layout? Not + entirely clear...) + +![layer0](keyboard-layout0.png) +![layer1](keyboard-layout1.png) +![layer2](keyboard-layout2.png) + +## Changelog + +* 2016-03-29 + * Initial release diff --git a/keyboard/ergodox_ez/keymaps/dvorak_intl_squisher/keyboard-layout0.png b/keyboard/ergodox_ez/keymaps/dvorak_intl_squisher/keyboard-layout0.png new file mode 100644 index 0000000000000000000000000000000000000000..6a36f9bfa1259aa74b6a8e956596dbd86c5a89c5 GIT binary patch literal 73585 zcmb@u2{e{%8#UaBG9(F+F-0RPQl?}mDy0%hx1o}d49QF-b5t4>QmDw72az${s3a-# zJS#HKLjOKBKF{~A?_d8~f9rYQO5E3Zox^eLWAA;OUI*27GcM*_JZH`vMwLB^hvv*# zAU0>t+(HyU>C#`NzX}&GJLsJ*a9RGI{HX;;Smy6NEd5Bh zDKePGuwumN`%HhQsk$=T^HVY%qCY{d?qhG6QhB`}H z-`-jOTs!vnkKhkc<|ADiIxj63c9uNcZDC#Qf~7X9_F zF_!Ibmj}x@R8;g1fB6)}%kbB~U0okX$@JcG=KYi$r@@~$TaY77-jz}8_c-XT=<)pf zI~H!G{uw6S6?!92dFIVkY1Zo*Xy(_|)qRLNAr<%G%LP#mhN=v^#4ZcL+0ROS_#x1j zkLuyhv7mH;n3!1q$Vh&aMzmgnmic(Uew^t2eOk%J%N?DZ5*#Ni%Ue}u$7CV*NSsUF zXg&r&mGQiO-6K9;Wb>9S8s|-8^Gzl4Dl6Fs1_q)E@63*8mx@ubGIPykJi%fK#!?Y? z!a>vOO;M5Sn^U_iEjN$$)E2Tnd-m-0>(@Iel!g<9nTExj91Jw&t*WyR3l&T7?g-&UvDI|Dq&_ga z9t{5Y@sOa9(8<1rOdb8r_Ydmm)V<2rP^e2e|FCO+{8|iJD4O53^47jMmmaOv-qDe3v^5tiZjd1AR&DBDYNTjp){7N9S1YlAhDO4~ zb15gMH$D3%y-!c~Yo%RS`-xG#%<-8M_w2%Ud#2IcNHqM`o8H&|c6~gbpx}Z$cSePC z=VH6M#kCWcDh`G6(}dE+QB3ZHg!qMp36uvZoUH1($hv$vzl=;~sY*gnP*99}>X{Or zt5>h?jQGTlPpD6`cFoR~lQ64$ZTf$_QcU$qCR*94euWEPJ}z{b8t~|%U~hTel~-Wc zwNyvkudVGAKEK@O+4?~H*gJJnVuM3NVwP=t_V{1Taiwi7dv-V~y&lURD3TmMpRBwd zw|eCq%L>zr>D-4S)Ra_J7iUd&tuKE-cKk+HcaEz9o|B@hUs4bSsJU+R&E}FH63-l1 z6X?xC*&r|`e#&92SLwoqtqm^Uo#M2z9Ji15)^`tTFDv)qqZ4CJR`zOJ-Nkt+qe`I{ zXEczWEG={LtG5Gzk`@B?qhGy3WE=z}B{{fvT-dp158b8{Y1Cx)=&j|@Kc0cnQm3!X4q02T-QJg1j>m(E zJNJOx^wndDhR=E*m%D4}=v-@R(o@{Md)uUqZH_^L-j|P0KG&v*ARM}l97;D^x*(Jx ztU_2l6C3gdy94%es_yKD?qI9J`t1vnV3e^ReieRQ*1I{+<79E5cw~J1nW$H9M;0$$ zyh}-G;mkydi$QsmM$|UOCmCJc-2+7;*?RBpiAlQ5WOS+Rw^LG5;@`aapVGe0jt+q> zTW)Rt=bwK#o$SZ(X-ikE@IvIK?|yQzUVv`b3dLCUF#9(r=9iV1>la*G(LXelcY|Ny z;Gsjg!<;+Iik+=8Dq@d&+`i3P?$l=c>_iG(*6eO8Ui`Y3Nl=Yin_Lh80)%72NrR zh3RHyW)K_C)I^(9#_ds6P3v}G^I51IzI5Tjg_0I63l6W8y2yaI=PPR`y>{&)3Wbtu zPsVZOAdR}o?MRAcr75zOyrSX)G7&knyrSPHZDW^+MMXysd`&FbJfI`7onl#w>z_IYL82?azu=jjnm%ui~nBm<8$ z$9!5Qs-~`!TcxfGcYAw#|L`ysq2<2tb8RzEO!!$*s=4G!;q~iVKl+SR-l*=mh~R7T zes52j67$u~p4#C_9oC&S1sFu`)kXJ2_2)G>jh(16l_;+_D({R>C>{CH*Z!w*Pm~2^5i1+m=o!2 zB3a`C7j|%8?5$h7kAZ8*|FB-brW4-T->3U-JPva8zIt`Ro{z;UE|_gUUO6Tee?3tS zWbS*I)$^Wr?%dJJc9u!A?xtC?WXXo(FZR)iu$6`d)Nmo~+?Frnd~!N|aL`hEsy|OF z(_S2>ftGxq*7G?c*;AV{3H%MaxczV)xc8<5#rag1!%qkff?z3ml2Cl~M)z#I$1!u6& zIixOb2oSs7x;o-jM_b#YGbJIZ_9N?owy<59=k@F|%*bx^!o~<_-@IWCa_wLnU&3 zQ~Vc)(OSR=K$GNE68lgIScjSSWpZUiicW+t6GEtph&{mPirux z;k&O3Y}jxuy=J}2wm#wV?ve4z?3pL3-&1)hc6N53s}qIRtzWNx?3mZ*&qf!z$`-lO zFz!NZN}XZC)EtAT(w)&dCHc7d&iOTnaHF{Y~q2oTL;3h{P(t; zVN%_@SIlYh!l_fI%zN?$RAs8R$jRwiv%jQ-^?KP38*Fs9oK#D6=ZM=BR#tXIEB0u) z2rFA;WTeqB^;{Hl0#Dvu`}$*g@h8&V0pj#tU7Aax4#8NTA`YyQmF01BbBjt-qFg3ekMvoY-#rYo|(^-5s_Y-@B}mOV8{AE)#33P4=eez}6j zN!V1E0|MB0?b`Jr<-G3a3p+Y@Z4nb&dO&($LCn$h+IsxFX^ou=dCY}j^@Z=LiLPF@4EZMEDzEn^pH|AI( zXNL0T9XmMtGKT!3GA(niEEMJR9j|Si>2S;nsQFN%>_GWGS()A69-tf5`%zm&eM~XN zA%Rt4yVLHQ{4`7QLt_tiB_E9meH@V2yi-SK<;-YGHa{QV9C8M)t=Mwo{{3g(T;fy* zhx$oLuNqlZyZW?cvq2{~sGsD5HMhJ>;%oazs?ow^0v62o$h%CXDxP8bKIZbB9o66a z?8;0Bn9H!*M_N+nZPQStO zLCYSE6DNF;hK`O%87h?oL^{aaH4u*I`@q~P%h$4SFQqMiv8uxZRG}n=j8SZygQ?Bt zk8JuHQc=FLEL%2Ex|Ff(4pAczXv^r~i7*_srq=>HhxyONdw3d1Rhr!uA}>J7a(e zmD24#fska=U`KmP=zzPR3hMCw!NJ^-?#clY_AxoJ_IK4yO!}_N&3G=6n_|YiJ`yu; z+F2eFdqK`&_4*r?nVA*wy4Pnxo3O55J+Zt?LpM~TuZd0Oc*hz7; z`yX#%KRxrU@1DdtP8=JOTy&i$7K)3Db8J3E=f^EoaHq1Tgi5z)Q4W{~b#?W*D#o@p zSBnkvaKe~*c>GAb?C99>-Pfkki9OM<_==#4R+7=uHTwe>;9WnY-MGO_78XcD(rI$* z*NakYNLggAaE@%8R}wBDROU91fuNuuAIb|vKR3bpm01n4)bYV05t7ysAxX*pZkY8h zpU9xW+`*P2pF1R>Y^55tK7Q>RN{QF(kq;RAOHIR zyxSG_`T6j`t6`r_!E3X9oII zd?@Sm+_ZYLS*8|Bodx`|s!PP)zI`j|IBtHSyMnQ~xtSonT?z^bs3$ucUAmq{h@LE9 zh|0t=F?`aFuc^`Q+ULMA$z3235YC;uk(2{92zLU@T&H zlRZzkc?9Q7ABZ?A-P2!$(?Ikd>(NL2G`gMcEEKM7X4I3{WoXWyKc4}BF1&H$@?0`s zD@BsGQ5MJxD;%#74k~tEwcGE}-hfSDIl^l8Qi?|j+(9Z0HhF=sE^0<1vh8Wi=8eyq zjOyAH*5>2RvC03?kt1!6&+B^XChK0Z9c-cUNSgD_Obs0CQ^Iss8yP&XZ?*Gqsc!#ZOM!+d4RG8PQ<~83Kl)xs|(EHMk0qAghaK zEDsob5XDp8Kx-jMGi*lG_ZabO7kt;}KI&|nzZ_qCsUz8l6@wzCva&n}*xwn@IVCF(k&GG;d zT{di{+x_b{Z89`$-MA}D%WJh2XpZ~K($6<$y<>E?&C;uV8~yYtP0+UUhG9DoW+kJ6Bg9C60^c`o<(9T(7RelDK}6~(4jSkPI=>4juArc$C#A6f z4_nMu~GZiY5|3jh{Y!$q8AU zn>*2PgrR+yo6{i4;*hN$znyq*vPG-1<5<1T`}pcm#O8Jp|eEHtlkSu z3OURqU?2|r3pSU?eW!wyo5e0u;{zBrP*ovT2Jl;&(X%ZXaGmy}D=y0J5SSb6kUSFJF{_WdWgocI^HZH;CyK^V=Ns?}_-$fOAB$iSJhP@p zj|01nWZ6H<93bRIl8(c%C&`p(&3O0p^lv9lojz^RGlGI*m8dB5?(01HzFga$U+mFd zuwa2C?M#NfivLv*p!_JGva+)7$vUM8#Pc1kjRqoFrF>1VD>Ov4eecE}XZCXEvTx4z zcTfiamAroYc9)Zr%+Xlwg_)ERr&i!5P>aeyM$O&bKG`!P@!nH3$Irzd2c~cS67kU8 z!^5LXP1QcZ{iDJ)3~mS4cZa@AkE$vyU{-*U7VMGr*g%2eCc)V^Cz0dCtUC5}ZV>~+ zQJU@I0+e6B?Pv6JB?nMA!7jsjI_(x>AfL3fj%WJ5%9vxW4VeykSVfHeRl>=_)RId4 ze^YC#EAZ=b4Gj&FH`z97Q!_Ok9i?$@s;I~l_Hny~5;iGL8SC~Xnpj2@a37gnE#hk*dM#yPx$@Gg6Ws1R ze?fi`ktIu)E+sVwAr%?8Bp7g35bmhA*B(YGPI57zj)bk0%ArFn0s;cs;zp18Y2-bx z&%RsF2(oGTqeqwaifoLjmi_j1%exSn+KCZfm#NEzJP!M;x20u`4}u~1mD!{VpC^-e zwENhx`$OGG)~#MbAx(p742jj(GBTtQY86H@>Qu1TH?YyaGqj2>$!jgVt`J|@+V*AC-OgcAQ97hL%@o zaF&9?H3_xFC1OY37B!pmp{M}On%7&O{&E--=UQ#5Y;3%4md9Vab}b|WUmhE)K@DBq z>tIduPHk=m^Yni{{v{iVko+&7A~b#u0A<&7GYQX?smF@xBwn$7eMK z2NWAr(x!JMo_H_p@#6(Za+0?FkM@eV=3FX~{kCsJ`6(+nyGuEG%o4hmaq*4L-xwPj z8aM!BhVG- z`v)iYugtsKkQ?yef$z0z43D2Y5mU0a-|~qxPQd3LL2&8 z=}W6K)WSmgAd&5rgh8?@k@0AB`Ocl3oIKv-x`dgHt)P7*-=Y4XL+el0w9PhFJ9#lO zxtEt0$}OS`<>)p2nj`sV|6`60`aD!f(vH>o=hPyi`Wct6+jRc$*55MV(q+r6N=)vb z(YAL&sBOMX%d_*?u@yFz?0wb>KUg`OIR93XzLA^@Cai&NYEsT$2h-S_Ve4LD>c~G> z<9I7HQMO%w-2zR1ARplDYgAy^HqO?jKF0I z9(i-|wA|cX3lP&!XVMTNoJ+iRl=)zp5Et*zk0sm=QDgSVU8*hKKVdoQdoP8L|Rrohf5 zEZ;zVIyJDUCuPkh-7KA3jAGljzs!j)ko`VoML07g`FyI^GK=Qig`48zr82dy{umtPNm z_E&+|Jh9(Et^QDZ*W_kSUx1~5x+-t1hhDEE>-m*p?F#*2w)!E*`-lkSHB6xE(+bm+KCeTE z4=-K0^6S(jifh8ZXk-`IavOYY$mGItIW#R9=>02Isal;xHD|NQodXH5ke1i+k-h#A zZ#Q~&fz6v)Xk6z)k;&}-2CfvbV2_$wL6+0EdjjI(%MlA+7Zs&tCkvU#Um?L=2?{zM zp0cXJzQua~e%~&;m$x8cqrR7zJYtqu&G0}?$TX|hy6Ci-*(RuA;K1In(lV{w2}Qi9 z)vT*RH{`FRKda2)JUF$*RGT#}Bf$Yh%|+*PiPcRg9-{AL({}#zkFIl1a^*djIM1Jn z-#b!)A-bHX4Yv07WCk&PN~We8G)=3X&%L!~KSsy}iNdbLN)~g7un^TrU5@jBX$o~* zbm{X$-8FPqTxJEiW3e^b(5m-41>TC6>Z9J1w)8a4 zCQC4K_G}i}Eu5TPQ#+)jxKLH@>+~5JdJcLE=^v91$(N?Ii#a?gi4_bAd=Z~3<9Ty) zb5jMtC&FbwKqUCymvWtJbqyZ5xowqac3frb%TiusTwX!M{;p3S9ji?xhQC%X!>)-$ zT?x=fYLcfz`FVDdr{A)cRaS1{`oUc)&(a=2U5oVR1{Gf{Ii4HHrEt`pW4|3VxE8RT z1*sOTH*Vj4Y=6saE#BX@*^OOPKX(DhZcBAf9gFyuN6C%@*Zz9bfQkx|ROY{&NV7U{ zJ1EEpMceqdZzplKqvT5Dzhs7R#vD&!!bZ@O0DklnP`EZcd;vh&DmkCjcoLoj^}WF=yQcdP5_mG5WCXltNq5k z5p<0He|Oc^GsQ2Eu?QZy91$S|hJw(zxy|O-ZkHVgvV>a7eV&jA;>{q2V0iQHU7A~O z7Wm|c9eZcE<(hJMQN*ssZmQvScgu{a>FI=XwJ(%2uPLv3XPDT9woNxD6`Kfrql5zP?Yy zx#mx_I31vdvzv(B{$#_t!eFJW;}G||moHyN9hfPjmP@^C53br!c+f8(x>7qq+B&JW zM|j;j;|nZCD3CikDq`GizkFO>{-8}lQGLj|g}UgfhevDXSi|9SHzQd~OH1jPn3OFn z5}yC6FlXglVyTF!23#hj0VFQ*@iDNmzCaA0$OLiAz8eei+$~Z;@}jT=l`l}atwb|z zP*qLs=(PBrv9M>A+HVl-YEzc*^Yf3R*3+=@|HQ0R98hkYk66U~L+>Xt|8KqD+1VLG zG3#eNubxSFg?T>4;Ys;14uEyqOiFwjeQb47ijY8C;X$>MP<~}DAtfru;GiI7HP`Nw z1S@^$9||fMz&=KNW`&VEGEyqyE4g*i5G*)Oh;%z%jBhfI`rB z*lH}ORiHT4eB}OyUCxITuZ6PF$E=V4Sp`9RUjEi+b#J@IZzDsr^NA!HpZqKEd4+)& z0rSXKvA1VGQ5S(@SjzX7iC))HH_*m`Nnq+!nm+5@}pt-N_I!NXDPo6y4 zhh1jx1ZJM>L0EghwZdBQsIoi3vRySUb82b|ydf4puc(L~n=l_K@g8RNfM8$%Cpiq5 zJFNtRg)|HtkJ9+A1MA0VCG1M&Xc+uB$-D}|9rG?}-F3T5R@HuDe4Gyju)knvS{f%{ zsEo9$34;O8)isEL3>>0!fFj?;;>}QhkgztNhT#%o%)EK?p5wL3gKrOFVqNnM zES#MnT1<_^yW|sE@-bu)fzpgJPr!mtG5o}owdO#`HIxk7w9CBG#W;OA#0(aIc@sXu z&^K)ShMCl=s927~K3`WYNvL|1Mp3Y5KKUMWOXkOfeyUI@ZG_lfEC(PRZ4qj^#Fhaa(-?R?ND*x z&=z+~qY8+U2G|3HgS&KT4k-Gin@CprV;ft%4911PTFDs{yTmR9W`22?#dA-vEug1C zJG1lf@I=WDDNz5mP|RxO*v+tW^q5>CehlcF)&WwX;z1_yP$$5K4v0-O7rUxk_?^==p{W<%iS~D>xF2)mn+gFgGtxV|w3e zam5LRYryZX^77`R=z!PfVDgGXS=7NlASvnV2&D5S{O^MEi6ciAfUgu4U)iNwV8PG{vZh=_@rL!3G8BYb?<=EahCe6}N*cWE>FKE-E`yl;zcRh0$r1c4v_p-)RjQQ@Qo6h2 z;BS1gm%TR=X<(6yiwnt4u${oICEfAvzAGiuz7!lse1SX1_o+^~ft2iNUlk(iO4}!} z{Ro(Vua%!a`7Pm*ri0H2cB|WW?wq}gc$;S`v1`43RH51Xe{?2(o@Fw|{Ia zi2(b?ywS~_L-vPVNYw!mg@8_=%g=Q$w-EUU77Hl+dN`nU_6e`2ISnxM@A4^T^?J!s zLt?!ScJPw?<)27R^90h=NSD+K$Js4imhx;D)t=#a*ONP%G5^rny&SE9tmNqENH{I% z6T^Ltx}LOmp{1qf`>)nq~YnJ~sl!Nm$VuGg$ir`!Vor z3VX533t+}GlH#xEtKdTcYmQ1Jul9VlFLo<&P9nzEIfzS8MT3e-aRuccH6{ZuFYmo# zLy+$TgM;k+H8AbX)X!B3;a27er;FH#!3!Mxx4!J%*dZWR%m>?4NcjT4-o8o-r@;+& zyR(IR+hmrmCrQT0(}I_I;0jUl7Cy;Pd$41nh=>TWWCE@-=SC;+lcOgsBZDEp2_*(7 z-8p7#Y~1wa%cAspH6qVw@7wDRt$f&gX5xJIG)*RDiHiSolgdpXyqhpr;Hd$~)8pek zGjvO+I2E*GGHyz*eKNFm9{D%(@P>R%B_3(e03Na^skQCxU24}JJ>mmleeWIz=5}X% z<+dj1UW9!M%TGGxX<=f-ukzh#`C};9)u!XapAJCKS_1Ihnph%Bu*j$6fL@TTPzFiR z`c;yGJryKU>FUg*F8HZ0Zq&tA{WHI3)AH1ssr_SO6K{O|Wze z4ChAMRhh(Or-u(SaBig|>@$3ti1!1<+ZshrIGhF9+Gg#N0XBxo#>NJsMPzTTL)PZa zo0(UxWB~aHY+Ph-^+1~}d~YqYYqG(6)kAGmbEMLHa0(FK9O^FrOXN| zHtD2Zdj4D#ksTWe;OA9QQFoT?)|cXB8fqLpo4d-76<+7vjb&8V((**`&eanYO}@-N zL0v<3&dA?JJtfLlc}mS-7{B|VgL<;e5n=C(8ba!K3dS6!e z)Ha|YeTg8A14$KXrueYr>p>Ywt$&iwO?HPH0WUI)JVT`+LFGS^cRhIQ*c($2P!A-s zm*tg5CmNQ7_==lUM22X^KCFTOZp^!l9N^ys-=8-<2G{XbB5s~OeL9Ml-bR5zGyc6c z$U~xtbT&#|{L0}xGjXPTe$10)K^ZuLucJ5qN+?8yFo0Hn7vkydc4!ogqqQ+V7sEYT z^GrKxHqCen04FQzCIp|$pzC!;=9ql>F-e2Qd;ipZ-WgS{KUXx(YgY)39+h?c!O!&NjR0c6(7C!Q}CW`<#+$!I99s^TD!AF-4)E?03D2@ zx4{HMEHu_n&_cBpIcc$VIg(gs7K2z4Q@oG_c7xqb&Evl$I$+wid>-QQ;EQ7a8TLvG zRGPQDldtWhwAlXC^8Ww$#t~hpRly~e`ZoguIRU*7X1(5PO^!zkI14P+Bk`c|2?3FF z@GQ_Q9igs?{|+kdWqS{ux*td>dWYNu!Y&GaR8WbA>@dn&wktvvjVOgz$`KNjhUHX%tI&b+xc-<^>Q65-Y2 zfQmSghQD4m)@~q+2JJOc;7tzvJ6RpKr`JUtiP#E8x`6cu^t)(R2V+tm;wbbNkEEon z7vs>@1N6uw)m$+av5a&zb#ae`6c|?u}6vd8A35>{0T@| z8@O*x40u9(!PCp@WoPocE!r9Xoejcr({H5cO56U+%oJJfZj`K@U^irlex3`TKjeHV zqDNgo%2ptvTa}wjj0PrK>i=w-kAXkv`XpPYfu_IcdRxCx7}@cT@InMH(P~))av$V9 zyk3VDPH}9k_)8Kpp-3y3NMwCz8Oisrg!%c#ojds?wEZ#{gdXKG*thT6P=zA6r%4O( zfZFr>VbgxOhRXo3>g&byu1e-|-}HExqzS3`BsnB^_U&#~N=V!8zrT4Q3`(;ZW0o#) z>*Q!C!Y_K|aP^U}NLJ#s1hpu#Zq!p$i*M3KXlrj^z8;II-MC6)k zf_d{U07j$^J?sG+CppyPYi=!qfut(sJnv!bWzxC;n%jnZ44V6o{TAI#+%`sATOe2b z?n8iXD|zAbjgBt&-}dm;#s`-E=Cjur*X!k*Aj6=M0Zcm)Nu?iFZ5-Kre;<)T0n;=@ z{9;d|HY0yU3AkX}wiM;_yE8_p-3UqLLzY4yYhD)@pBsKw2WRn)2WnN0_1$-i>gsgh zUf@SB$6BV9l9%w;fWnQIe@R%1J!?T(85I}EqR%F*g7Ihu#c4zXe!^(yl_VO39Qaxh zY>L?avnWJ+nGcG>IO3xxj<;>ww!yzQ6w>JkjXEkS>PU&#&*raP6D)H|yHOBK5n?wv zLhBDVEu!8{Lr>XeR`&`GG#YY#Pybe{+Jj9eCMJlZ4#hAtD=T$592~aYu_-qmJ`|yD zKQMvdRK|$yqYO^k_`u6M+hSwp+R80itNS&ln{pm0zbe@zpsSF7EI6Be)-VSl@TuAh zbbTQZLHHt089I9UR&THXsV`sZ*Cd^VIjnu=2iGwfJm|uIn#*o~ z*;U3mwvI`=h`r=_1M_h!o~S=G%_wW^>?4!!iZsBTYYz&1-~G)>Bjaxf(hYyjOziZ4 z{ZX`67cQo!zZnwJ@O4?x2!}-ba&B(MOiJHB=1A*&Qc^){(VWI9a}?wofYJuYSr-+C z2L|N7jrN3o`od{GIefO<@?t#cbIZucxN+mgBm3~9|1{h5)M!+>-T%)ngzc44DihynRgwp%N-M;wsE4lFClddv8^M7y@n%ghbzr}j3%MA#bUmoE zR5QJMQn;|F+$2^jWJk?xpPTrOMM*z$&_z#v<1Dpc$;&WzX28oFwUOnH0Ibx&uY|O` z==$h~)0lLP)f`6umFEuX2kk5--VTR9OgEPS^Zr$Xo$F87tril>GfRo4>^o6fW)che z$um#{5)V*6KP*Hbj^Ps8(O}=bF^>EJv?0*^S4Z!ZNUjAx<+<15s(WSJ#>6i{9KuAO zQ5-Su{w)xCawy#7m97drV*o#%RbRe4~ zO?rPEIvdAs!(5n}p58c8Qwlz`1$Of@n{~B$40N)cxxta4x8PvCQry2;&I0e{>qX&+ zC|_u&7+-lZ-+Os(e*fKox`Kf>LJyl@7}^Of3e}n)Nb%Mu0hHWJbLS&E+*|*=c!dFS z^juJgjOa+w`^N%X=yOf-dbFVSPKKbl06+<}JvLzuD+0X&O7if--w;B;&n!xp|KmDH zsymDX5x{;OOF5<(X7_CAPj(y;jyR{mOPM7_F0(ngl~WAX94`U(jn4vfYXX z?ivVGrU#qg$sr09XvvPnF_H9J)IB)jGN7-U6Y<5W#T%c-;aiaIm;NN)_vE5qCKWt9 zNtCL$Xd{!DV*N6&mM4Y`?H_P{W2p$PImp!Lf<$m#r9(P%|3ug2YutV9-k|vprf?)i zu8o%PMG{#K6N45tf5G?6u74WSdZmy2mVN(v+h~nr9M2Fg&;geCjT4owbV ztdtHOWNs#b?p@Hfl8LQG>IPN!0)pp#gU)`kx9+7c+e-u{>5;O-@0M$A+@`3)a>g_C zj$;BHT0VCCB!U4LYs5f$C6QNv#+F(go zLrbpN!w7RN{9<#6Zwcbr(&fwDAo@p*25K04#$^(=vNObi2|NgCaDfM>6n(m+n@PvP z?dnxH-qc4{o}K<{)!Xdt92}(NE)IN9Sfc;ok^G(m2Rduuy>_%4kfbtO|Bks3R51I# zvOVKXIj)#FQVzhrXSf|4Dat4)_PyRWOO39gac8#QEX4vPzT;5wHuUKeMl!^{Yi-8# zXf513``EBGsK@ui-r;8ZHKDK{!&?P^KH4Xn8}Mk;zbZ`(KqlJ zT9r^Bz7ygb4cqbo^y+gS7j~V>mO-hRQjJ` z#;z~`yGVM8bQ}`s>~03scxDLway<6V7oa>xu}qxy7K48Zm}Emwa3*xv>o5dg1*fo3 zapc#}!2d5@c!PY+$a6r~|JE)2lv)kB(Yt?D<*}K|RtXDxnuxIR6F%-gj;Y5s8v)gkjsx(mxwZ*3c4tfW-sX3o4X;#y z3=8PVPbEQ{prSYb{2}zH_}VLcRj5SD{rQzopI+V4+WOK(YEkr!fYA)Bji_0jBr$vw zV=w45*!JFJ22|)@^t9-f$;Woifh&RZoJ+3sV^cAv^P_Xe^^(dK(QsKvTnVAqm8{Q?91K`BKE)i~rfOc?vc#&Wi8zdF5+f>pX zj+XNr!$ffovWv<0J=fYmEEZhnGvGlA<)uWtx@=z=;D^Y99{FQ7}TG)&3U(=#<*=taGm2ke`e1kzv= zMjA(AV^5EsYMq$n+vgHlA!j|9x7ZO@yfdWA9uJgBSK%KveCx+BV7u=ImeVAoFnNb#7=_e_#|TL`@TM? z)JV9Jj^m;*y?1qWp{0tMo!tX1@>^5qkafXZXDZ3bNl37vyU=3B4$f;(|0gJW(7AzH z7G^E~3q#c$PTxkAV4_YG;woX^K!{h6JbZK%)In!sBOos%d>%m)hr#6V7eWy?!DWUm z)Qsw_&fzS#p$A7wFX{Rt;~+A1+v}xZ*-uUkwi8n`*cI=uza{93Ft`7=)sUf8@Hcb5*7hM(K`X;n3{yb@f>~x+3jn0Do*o}u zFgI`9c=h!qe?(u>n=NAS-V$}FTvHcgn2T}%_ttE{7eSUhP`J8!@7<=nC2|*L}vJlb^{7P zrIBT6F+K55)FelD{pv$Ujm!_`94#1#ZDPh{k?Aw_xN$(gyCSyEe(6dEG3*?&pCJ_S zL-{nRh{?GpcJd&ekG@~h&IcsxA*ce|l6*WR)4Z!}Eqaqy2?)$Xf4`k8twRWoB_0pO zPxyb!7<`*HF(GV^m$=NhLZTxs1kC00+8(^`|5QdY&kKzLJ@lhDSc1bJ30rz*yfrFI zUA~O|F3CN;?cy#ojzD4(FZ(;(P$&X=KFgZz+#ptmQC32G8`lvDm^j`^X9^^21U&xL zs~5`3%3ctn=@gavm7_l-oZJl~FzG+Us)1+ckad(KM+c=KF+YNRcz?#wv?ghh)8w!` zE(jofYiK2}8}TlOhINfod@=Sgaeu?V+>Aa6gdHh4waqZ-T*ECNC(6+_Y|o7&eP~9heV?wZB~^_UBBGx)Q7A%c!8;Mg z8_?~shP^Rn88^2t@D^@kivI6gTlU;RmQfE^&Vg(}Zb~2*W}scVH#3O|{Yh*jphw4N zy*+iv){7tKJld$V$T+zL#{sF~Dk9s{0}uUD8ti@6;}1;8WD96%SD_7iWY)7IU_gi* zTs=YrM@CMAt@9Ygh~}_YF#foBDu@rGR~m48>AbXQ?| zEei<~7tu}}xbrvPJt+dx3`8CZ68Ek`7eb~XB|@sbEh3*W>l>Po`{NsOgJned`gS-q zp`>d%{c?k2klI6G;#|7_mIC|(0%*}ef<=ISe|;@*2kvp;lrf9#@Ue-9x-PJG?U%T| zV;k5we3g-oo8S-LXMt9F(2KbS33b+WIM8V1J@kKn&Mf(_I08>)-t47X7d6Q}NJd*5 ztm|N~h2t{nM>`hilL~w9NQ!iLzT?dRiC-%bz+oh&8)pBLw*V@`@q}~NOyiaS-4!QN zA$6|}LnjE^kP@W^;Pl5D7(BvO za=L9#7=N~dY#e}Dnbh0URVUPupfOni6byRPLyqEA`<>ngj5(g|`7f2-XEH}SF=1hB z_4v@g@agma&us|MAI!#psa(_3r64R+HZ|6#TC55|d|UHNIaDT%3z_)Ru@7f=w zRL@{)ZL*0+?D3S`l9D9=j8WSXEBx=@_rf4>ApoU{ytTnuPg0T?I{Xy0+L*+69Q)-- z|35J9d%5`dcn@631ndVOe<#ycmt0oG4MsQO-@2Ig)XFfJ8R3c`>02ZEsD)in*qc+i zu$PlB+`D(rfl`ER(H;F#;Tp;Au>6=ii~P7xfT^XWg`l~N(HavDXE1sib~Hegld#?6?xORFzbDXx1Jnb#_yZh6uuBNul9YtR83Sq9SPfT6 zJhvS%kRGi%N&0MXdl;_!(oQT5^xg75JhXbznc71oFhu86R)GE_UiQ^X&L5OoK!7yM1W?tv2B* z6PR8WyXG`GzG69m!9&BrC*9{1$P*T)8Z~CgT-fp87A=qMtL>mV{@cn=8YOgebXntX)26!}#HT__dLZllcp%RLS%E!JJ0%YFfRVuAsIT1(^K9 zzeY%?(JH)n-no%|*N}nqaiI!szDXWR3H=S^Tz&vKMc7=SP{B9JMXo{UjIH1Jix=5? z#uG@K9KFX85vzoRXwim<8-#F+$zk!%(NH&*lGjEmJN2^U=kFqxji&V@5ICzMpCf?f%$m+s0)Be>ct8`ZZ@}fH}I3_M4p} zxsj~6LkB**w(o@v>F(mzPo}>QdHYCQx-;h}o%Z~SE2@kJN-;{cHKkp)bB=Q*+Zyd% zvg*K@3&!j3?lz%)sw5SgbhlKs{N{^XY3|Sap0(|Sw~UU>NZU8ItnB0wW~H5i)s-XD z+5Hcv=)Ufp$N%ldNQ>2pH94nTDlU z-j>q(dPeWGAS$_lg|u~rgz%6XP=K$Is$jZQ0@lg;KI3q~#-{bW%Qr6EGeGZcx$zR8 z3d6k1-&2FAYW^`HdxF6;nVR7v~xmdSz&Z+kWj5I-s7BXvE{@L^* zDRg}+lZt_DwXlv^-sKC=%8dz4hLC+ts<3$wR!KcX2$XSdfImH!ipTT2S=O;Tk~u`VcjPgRE|7V0w z(W@U>61Xh5Z-`2ndUeaWwekDRHXhrixj@5-PkCAB7WC#-CiusnR6QPazIbkG!xFE| zDq7u>GPB#jZ?`|k=KJp`eD5p2^!DaS%;Tdg~fGelbqv-I;P3-9Mh{2=g;^T`+Zc66Q;%rng!g~ z1;vi6TaI!n-`4f{WlYYlCx>3vCsa4MyMBRr?~0;;MOP|n^@E2G=dHuyElo zYZUgllVDK7D@W7e^r=%j*WKAHAwRtJ&@g+76 z6{OMafxak)%Vps^bxTkQiy&S0=v0SiNfJ81LD+}9!qpDJ;^q?lskK!H zLjv=uRK9iVykkhD3q}L5_qDZObC+2KL8LN(c7xVnK3EFqy~FqdipZ)tVxq`3ibB>2 zOA#I!X5(F*s)1zfEhY1MVZ5mBh3A>pGJuKWFb*&B4l|#bvLp6T+$I)WnSYe#Y#W*`UNex$#gyuB0N{!?AuH8gg`P%=4bm+&l5Qvdw< z^QD8rXx^IDX4Se3Rw+Ci$vHh9Ra8r&U+Ym8V63|@c5Ko&hxr*cM{2r6(ih9Z9Jb}l z^`SG7Yrhl)a?mI52B9nAV@_IFH}VU)mB*|h!wV#v{06o>?*CP zF?Q(#`vV3cSmtb=#0eZFwe@ehN9=KFUxFW+t0I;MJ~^}&z9d_z%lbR|1(@kVF2~Eh z4Jf>gOC-pBvACSZI9s9?H49N=}~HYB7j3grgAMbi-$lAPe&IP#ojAG#ze9 zax0kr$HywdA|i!w2n~ReZU$kOkBru%5nA1*ccOFzzUSs=5h1&9AFd$FqB3Lgldf(; z)+753Kqk|mA#fZwY-&ZX2mb-SWm*=N+JnNZkYsRQSxgJ;j+b;cMHJTr+_?ki^wpHP z^FCc>zr3@b0YNuQ`YE~m8KftCbJ@Ut_GLd;7|!^UBVFa>UXa+sLc_a5 z4>m#BRfM}GzUF!SCe4)~tj{3jTEK%%ON$m9;&#Q=Gtb}W3|bp>n6b1Xv65SS`tf7t z{|{;30hV*$_l+o8QfQ|VnJr00q(!96qOC%EX(^SqCJBjlLekRGmKHKf+S*BbP-m3t z{rqxW_x0TO`#i_{9LIYc*Kr@W%O&Ue|NqAK`&r+U;U|+wdCXqoa0yh*mbC$HjWVAT z+?tmw8!)Z>?f0+OcyP;FgEzM}9p83`GM)VN={PX!jmRLZQ>M@9TBUPChQbE@j=npI z_(JNSl9~wnVOBju{^EXv=L|ZfDFVLlMX+vQK|YAu8YY5Os>EUmWdXEo)S1oi9!NZ_ z`x@XS1B4cp#^Iq}A_oF|iH|+={hIMn1E3GsBLo!;GUIqEl(RwpV#Zmh>PIin-TdpE zDxTS*$8*YDIS8A#8*<%*xjACR01F`CUn-{)bM?D_**+I!5jQ=*Kxc;2U}D$iZZ9E; ztS~`60T%5%hMV>7hF5_wSlWSKbo+P;- z&;R~(6C>Zwn7S-z16?d|2xU&?Ex5gIo#| zpr*6eK}0B=H7{(x(&BfZMmV9NQKhLPu~3?O@A~Tercb_9T@K7W=ykF4y-#mbM6MO~ z_DWSqT+6`q^{2-=Zd|CoTPvLhEeFYDxfta&^>u0O-SVG6D{&Hf zA?y!|D;r%_tqDaP6&l^;%Sw0Q$ochLNQ>Dke#;KsLbh#pXwkV77Xa!$WrOt7jo3rM z?!S9BkSMx`%3*B6;s=_zuH6t_v%xMSj)A5O?^iR0kg_MVwN+aAR!ySXk>_QSO;P{x zl)+`lwxV<%3x-%Xu)#07kKw1IIgK%aN2Txdd&t`xA*A z=~^j%W~QdGCzE1NZ*yIL=ZFtjs1^!jlI4IKBypMd+t!zo0nk$0+)PeG;^HA& zg{}3eEVY8Oj@_YWi2dFE#-1LEC7^d;#q)Q7swRLT`~ z%*{yQmV1j0WqwY}1YDzW>d7_}-HM>1-d`eQGAbZ^?%C{6bU1i~f~_^{bW)|yLexVt zP5{x7yf~`W`>qis3DSfG9*3o?u<9@;;BdkzT>)yX^qkIG``o5_M4pUP?*Qu-jF8jN zI*P$|0sn)%;~R=+p2P*+LH|<$F(D#iR*U4{?g&$+4~S34QzpO&rLl|2V9(!L0Bky4 z9a6VKD8t@yMC_hWapk`X6ug_R;mxv0?XTZ}-cWcYz;a z-|0INXh>UIvEMhITpF$R8A+ro*>|hF^VPB5oj;vV^Xu84Sj#SX^-TDYL}GqhgW3g^ zb$h=7=Re<7Koq!35ClC2D3Br>D%7tF#Rr=F8X6|UR)(O zH|PT^UUBM}d;RN!-M-HT#g_0WR>AMtj)lG~p&U8#hpwfO?Ty<^z`yH4f^{B)KYl)g z(~(AS3%sF+p?SLoTJGOJ(=&p#5ZR_uFh_;)c||?0Q`dzk2kmT*vTBjC`A_j9l*?DE zXqT~6t$zk&BncwKdPl1W4`U|)L6jj%hyU&p-+-jx=@AE3E}0yd z!lYB2m<(UXGLM%YE~9x>e7e2ysiD`*CiV>7VnZ8_wxyDYtN`I9WM;CEauVN+#-jZ0 z-SvK#v&&w+B6A&%uT{Low&Pkqe}20R6W-qKo=P&9o_vCiCd7(nLY|Fpk zo`(HITou@6(A$!{fAHxS&k>FZsO!;bw<$0;Sn8unJXnJUeOtMdS4f z10vLhK6&oxJSROhsW~?+{G>tc4{eYK9Pny^@JKE0?102p2A}-jj6MZdk@g1yHjLXYoClP(PFL{~$$B_lz zjoO3a%dywtS&d}?ZA?A;pOQgWpPgms?U-!4G|Hm;*PIOsBKD%b1vDeOy8Flh4*={*b<-3?ms{6 zw4J@9<3^;ak-D+Rxye-c&+|d_!FiPPb3%5Yj+q)TVfoiqnEjU^KHG7HXPZTRqn~E3UY z_DxM0BR=rJe?Av-s1y$x9OcXx8@(yu8y@`X ztAqd^p@gj6#39yys$d1ySzhw5Uux)>n~WD?q=UR1K{M`~&TVKB-LPcp9s|j$~ zpX!t>BcN&SE}{2c?*aa{zB?&|3=o-|oPG3fl`C(99l}1`{Jtrt5Hf43(gB` zzmT=@;J@#XfB$O!A+G&3e6YxN;mTsHYL_g#YcI}5 zk6e^jBxesF=q9Iwx19~UUKZA#>VK@gcg;Vogqc}>QIleLUu_0Djld5dREcRfaQ#k> z$vrL|>4-rEuNb@K`GVQQ|JBd&ZOv$HZJoe;fot(w;A!CH7I>D^HF`!|%P6|0 zik3~GwG|hx*6J#-?){HrOYBllNzq}IUe24SvDq!F+y)ZEt>f8R& z(VULk1a_FS0+N87m~)P0+t$)%<>ZK2vRop{IorH1NkSl*AFoTuyAJdi0IbzW#Rb4x zOGE#@-oKjV0~rAb>d@sc#TjG3FZ7cE*_doQj3l`W3JQo`!RF_F)L~@l6UG|{FkI&2 zAj`WzqftuE{n_3mBO!gzHzhTdl+qyatdU=@PHH^lGL!5nReLbXBuh4EwNW(xfdd;* z)D>p4hP$rSqfxLD5ar3gP7@*6CN^~A{ZeBb0zx}74=sF%gUjO-X?DOZ$M-p$H zd2)Ii6b6z-qaAajj^sE6+I{=TCTI(+lQ53Q*mw&hT>#zn3QAt2R?Fg;VLI4WnPgABno1T$Eu{$0RR-A)SD6=B!rcIvb=D=CLMAk-Dsno zjVl3uhdtgkzexHI)R%RdFDE;@3z4M0hXpVcNJubz>(hEuv>0*%%;y0jQMFfVSF(-? zrw(ygb{YYP0px&yp_UGa=#|jzp;DDu|7^`l?O24&gQ-J-12OW$q646vNSaXSx}&7W ze-v1KQ;IWpyka(x?muccS9@7=GqWV@ znpv|b)k}JEF?a5)K>O|VQkmC@7BT=5Bm#IAnMU9tDaC1xLnrj~)Ldc!zpnI=``pmL zI5hohFyZPk)^NVd5|&+o)2ys^e;34mQ2&|1YcDQ;Q=R=(-p(SQTH|8UO>C)QR0e+m zk<&LHFTMfQ8gV?8#qO*CkV5S7E%*m88#iqr0!YcY5e($8y(hrDQajPHEfDp&i(aE? zHlcT(Jh`T_SsqE3BXfj~Ms0ImhxFNL1KnacGk0DU-Q4Z@e=#eN^2){?7a3hE<0BWB z&U%{JUqMySU0W`pR#t#H?#YwuxfELm_pNJbq1^JBaCyznDy(a#dEK11q|{zVp5Y$W zG(gT{vqex5*O+Dlja#C4!q~!s5G`oCkR3WV2Ga{sJ|g1`3%HW%#IjNy6fq<;8}*rA zz6cH;^68ZlN`bnd@NQ{sjl&hBqtiAPT{~b0VTi-o;!z<2-`7_(N-e<)_bTl(2L%1% z*}t!LYhE29zXO<8@xpL&E%fTXfCnIwLsrv_EA&~bvo#4Ii#anvXI_7`#WC_pXv6=L z5aU{At}#d5XwR@)KOiXR;m*FK#v#72H{>*;=|DsnWK5SZ>9{C2c!BA~bvfKX=$N^;m$eNjC7wvr%!*rnR{-c{?No3*8g7$tabnI zf2Y7Sm;R3wSR%tV?Fmlp#@)B|w_-XA%yC&ANwvl`H8q`+?Ld~Fzic~B%_b5HE+@x(=g7!@5Vh^aEwA-OVhajd2V`nKf9}l+QGss|=!37F z#eaEe85=bI`ps_UMr#Ow7#7kkLn(T6`-Si-Z*JfGb}z zSQ`!bg@*pU&a+F*+$|wt000ifSvde3R%%86t`?giU_Xtpw*wFxyB*DbV{zSUorr7s_JYqPDs_q2}Lv{suIaYT`2Et ze-)cpS^4RvJx&P^jf_Or)06Yuipso_@|(jj<%^lwe>n;s#{H_`hx7AW5@u(noMoOq zo!Ow6R5t+Cb&t9Z8xY^(!R{gQ3YyBShbyM;T~E$$`urC;*F^giWICiPF^V|i(m;vHFkxhl9XxCC%J^xyb~I_H0ku)rscJDhZ9di>hVK8 ze0xs_qK*+fL`yrPaUqvGsimQzuVxz2r9_yWahBd+!4pMZ)5z>MJol_AF^7?s6`_Z{ zL6+WfW?z1z28=YY*@GxWP{lFMX(gUKn4;c;|CVRN#+H`R&8q!ZO%Z*9fHm!QrHaLO zbv23#m4*vj$l|*?!P@#4HyXquILb4T*f_-g@wcdd=B_-Qfj_LM)ZT`G_va1)b-}Bw zy|~O?nj0Xy(_Y^1^|}~7hPcN{B%QN85O59v0fjhOgkDXM@Ad)zS_HDyma$L9;y4r; z=N@9!VJqL;Z3aaC#Wi$kcn{96T`gms*}-o-)TKWE8f%y2=irwR*r(6-qP74lbWkXq z2+!o7PIYfXDzCR@%A=wZVw&8kmGk1EPul)~wEVx610q~5QIe%2_pS%#H#IE2x1$D3 z)P5glw?_?Z6Bgc3yQ;~WefaG5V#e!Nvo*9@+f3(?k%>}?47Va|sA>izEVx_oRrc;1 z_?Dbnx-0>tS&Pg|T(zJp7-x@aX=;v_v#9A4rIh{9`j(a!RAkmj_&GmSK%qE@@7~=U zKG~WYhcsXqp>c-tPl>Ix%)qXKhL`NBNvjlfx;$-0h@tLm_Y&W&(4@IRnM@~`%8 z!%4Nle!_mSFg17r9{y_m*AYO_@A#DIg*kn0So8-{(U6u*LJ#KvWDNn(+7$wCj_hu8 z>`+8ul(M=nS?Cgcuv{p;vM8f24+n7~60JOGA6LsvGKKKS(Bk+3Y}7QrXLFdzVXdR) zS=renevQ`WRaeqk8yit{oG4-28V--|L|+LR5nt%x<7dwrkIBP#PwTS`tvBiw`#iO~ z7~cR+f$grEg{7quB3(vY?}mnUHH0RUORSDm9)IxD>hUv+wCaTKKeX!E_`oP21IJfJ zBR|vb<;F9+If9GSP#gYLWdox831`~`;fO$?VGU7Av@$O;+}&}`^W8g@C#RqCO&w@m z&yuZqte`?+$NG&>9Dc6mm8>ZkRYY!Sk?`u=(F#m}xrU)wq}3%q%_x#k6uc8ZFOe^NWQ$SG|Lg7?v~!$V70h zeQGEI>(P5N-21`%i?B_vfRL&)ol>cX>9e@<+i$q+y1h{&PsPx1BLYvZ=nVNnI}sn~ zN}t$3^EaXH_AW(030<6pz4oh4R1dscxB5F;7}tG$>Lv5v0k!8-yuJ>-EY;9aQKOd$ z)=W`Cfk?0=(ERZ5z`0CBzY}Jh%KPVk8VYRQ{HY}mVSMQRt@+#uHBR{gEBxXWllT!@luJGa{ zhug;CiHi-w0a1pEi;L4Ijr!D^l8}8EYHB}y^2EuD3Y?+fWryscRQRR77mrqh>S2OQ z4kdZy;!edKe2mr_XDBLEj8;7^nn70Nr3d( zJtb+;|teW2{il}Xj2fG*|t4o65~0IWP9_39trwJ zE8qgcU4}q9#QO9gINk(}#(i{B1UW^r!aE-d^pwK+#og_o)6hHW1m?vJ0(g;LZ51!Jz>vf&=>Cw$T#9TjNK z$V&2UHm@Y3`k`}%Ot63--xggXWn_t zIzYHVhWkatix}7PUj-@0({{1jw1|E`wWoK%Dro)13EhUSn&Os>9`@Y1Rge;ez3H`e zp8-&fIiLpaQOMFlB0s1~ulUghPj)yYK+yuy4JOb$h=0rJ*7ogt0ekzy%H1+646zk9 zcu;QU}wyc$l zJ6>a&^5luNz0z^0q3KqCQDAKY1~kVVf2l7rIaJ`4fqXXNp`tXRdwu~z z?1Yw`&}UU_=kjjMtFKVt(K zEF{@11x1}X52dJ+t4pC7IVogP3%<~K@UW3YEr@AV93w{A85wIHNLai=i^Eo;s@897 z-)U@VNhaNh!Z?G2g&3>hwR+aJboK4>^qq5$o)jFELvg4Yvp*O*N0_84=g&b40N4u* z41`h;meTCF-xpZAU(a4tMs#vH$}z}|RWqmI5_yu8WV2EXG3Yom$Po%x^gSB}`3qnx z@OXBmSmr-&g1(icn&8|T8EY$cZJi$@6HEcwl9_JBnC}l`sbnDx}+z9&c zoE(WQciy^H|JY;IPRw7Gtq(e-pom3K_<;VUMTOmfxW|6BwzjsPLwXB?*4~5g7Lh#n zCOvX5@rS%d@*ETr9YxLI1W%V7*_C=w@FD2DnTGdcr zKlLNI2zAs!^wHS6JskU%;{CKAHu#NJkunWQ450P0nhQgJUdmADA)Zo*oDnBgyynIf z!gTy5nJix`(_4*0nk0+Gx$O=?I|1BB@+05|_VH`7yf48)zA@8Dl{~A(O&^dyJNX!X zJjCWQ(fWXmpS#6|MaHNcLsIi@ObTvW_R6W?X6uC{clb4Oq~(d4h9L$};&YWUVWLqyWIpNX_cv z-`|fG&d&_ty!ODwhLi+y4*>i_QMwVI8RM87`jLP4r4+pYL~OMU65|pqYEz9!ZCs<7 z(s1wwkO$mV0JM5WRN3~Eq%q{u9(E~VoNB5AqlxK1>qt9~_8yX^gC`twl`%;$Auq3a zK6iub;p{ML?#aS6DfY4-ix zd~KU_e3-N8`UeltU|H?MVrA1zS&x%HqhtYPQ!Af8z)z!v+^FAwYXKIX0Sd>o%>$79 zvi5%a)`NGO<=y~23W(fSrrF3alI0Igx0N-r?d(hzdNkKy9s0%yf{{d>cI{KAsIoOJ z^ln)umq5Q^G9-+KUA0~hSlOeLr6&P&3lqioWtC zNPK`b-q60lC-=tW0Eh7d|DF1i%gOvOBAXb{MA#KTA9gFpSL1Kqzpp@3Hrw2EaoS_X z4;B=?g&7TU(83M4RIyEmZ&8E@KOVWCv0I3KZ+79$hYyt)$#KaYTPYYS)fRF*yb?W2+|#FTO_m9w zaK=Il8sZQlJ)i(J%330Ac^YU^QqS73Srk24zuh?-6j2cK0((!!O3k9`fTj*x+aJoQ zaddTz6kOND(?X_r;?ktTX9J2rwgIFzr%tgT0b)Oiv$eC+hlhtznI18&1a`+aBb5`x zofs%=O&LB%;Xl zbZl(KYHpK4zonYUhN%b2DYrSSmf91?0D0T!a-v;ErEu31hZ3G_;Q_huWMYfN|Nq%G z=0=0k8xJEEQUV0LBh&260ZvF4QRrl4Po*{5qLd+eS_qe62HZpt8Hj6oa2`?CG3W3{ z<Pic-dqwyi zNZz?~s!%4qHWGt%rsd3bf+puj!G%HtW+BLo^M81;;G#x&ZBZ-(K-MmFS_7=WaNW0$ zF@8!3ajt`pj&A{M_ex7Am5~ec^61v@kcEhm%=EzGMtO}>K(HEm%WcHfjOkieF{b-$ zt|d3A4-8=wUmScI!W{_R?dS6mme4#C=M=6ql0HHa)HGKyAU-6*BO^xXO|?h#o28*9 zCA+zx$6MmB&@Fzmalno$=P1%IU~(=oxK%WCA>C%x3xL4LI2mD~(_(6>tzC+yAt;F6 zZ)V9_MPg0|0yWUcqn=EnvWT7pVrK>Z(4wZeW^;%9_vK-(P?$?GEGsK3Bl)|yU4iJM zbbx*g=FXUU%6CP)=tn9M%K)(;IR}u=mODpg{dW4cWwDveDD7K0Q^8q>y6xZg_(?k01!O( zNUIq-k)?^x-H(N%uiGC*M@wt)^@uR2eux_(H>D|wuNwecf#YAsIEuMQSIuQ?&`uit zlWjibxE80f0sRV4-i1W*1ROuBW01})jO~NvS)5ck5;NN-&118(>rJTLc@LFq=tOfc zA(b=$9inqvsk3Gy$fGqNrcefaabK82l#6`?1E)l~dib6$LuQhU4D1irVU|as%I3>g z0?R-a0+OGtuSOI!h%b_>bncAs#*G`Pa4IHdCml(&UHRD!o-j9ODk>@yFDbko($69o zL|#sAah7@-r4FREyij=E;M+HEN}uS_X+SZpMD^Z1H2 zwY45(bR4R<{U&qsF(`rcp@4q z`~;Msn}jxOaZDlh4Uk2lu;^%2Ej4e3{6dBeVQf}~6V#;duNgd)-)*x}qaOyGP2V=vu7-SZKp(usM zlKR=Dgj!=R)i*79mjw~X%CH#F8HC2d5KR^1p#;VYQ$Cp%8;KO?;>FFtdI(@;XK&vH z-9vigCu>UE`oM|-F~eXbDwNMZbxqJ`p%IwOBmxA07GTiV`S&PVu7I~}%b0a^YqBvC zbUE@rpkn6vwA*d6_7FsEp5z`sj@6@pQqY1@kebSfrTDtk5r+o{2M758IOb-j@BWMJ zBZEKL>!NXq*mXRSi?bd`8o-s>Xl14jOoYgmuyRqvf=P|TnG9V>B_h_ibAqvdL3^*} z8A-qujc+B56guP^*yY>zm-`o}g;@9tN;Frq5-takh~#Jv=^Qo-Yj4V7dv{Ni3SC{6 z`>7Kr&Uf@dAq5?m5BAC*mnI+J0`m9|q|j+_28E5I{*sY8jxS`eW0;sZnft zxlLmmM(&SlMcg!Tj$9J{8#BBX5)#7KR)wnyB zaeGik+sxdF#}cS4nJfu0I89L{;y@^^yFO+WS#}f$qar>maO>c7mo#LG+I2XfIA}p8 zUUq)?^kkCV%B#LdApXzN+_{$4r_8$$Y1G6xf8)mVOx;`C{6;-NqTLwQ(%hWa|eF>&IQLEQ)=3tAl!OkvH9`6Qiy zI)T>5(}6vI=lB|09}w=t(^s%YQP%)oLurFt9j;;G?Wr8DaKuGGP)-8_F7t%Cf#Vo| z3}DtrZYiqT2k#_pdx^e+j21b0^3&K4h<UBo$x{`$fnANC^RbCH}QCSr(l%Pnb`V$8%j2pT^dkiuAr>_y)%9Wy*t(lt4u*no?l4U@MJ zN$^E8uBN4BFiS}Rr#j*f3ZJ*VS?7|cIsNKP2^b%AJ=@j?N?qw4Jp6tst{Qhf;2n^i z+B+E=0x*I|hG--4qIoi;mO$SQy(^S%IL^AvnR}qgaYFOV{Xz8-UD-&J#388~fp#44 zn>SO#KMr9-$lRQ-FEy_E7CpM<%NqLQx6sD8%_O;689{ywf6Iu=HB2J?$EB6=$EB51 zwsj-YY}EEmEC(;-14s|zxFnQ@K zYL|&MxHVu>-v~VPWYXtor>ALYxoMiHXy=BBO%}VZpaPW|859n`{UN-M5!bfq*YzNR zzF^w3ysl0Cv}8kK%R*p^=Fykg2eWKJw8GkNe0w{e4Cgb7TUO* zhTt54bH0f;sbMujqwhP#sq)U^L(G92Xqju1gciZPaw(m5{TKQ0>tptzM7Q9K%^Tg+ zN`J7YmV!+$#H;$unale2!9C=SeJR==A=8|pGZ2Z}AB!LLd~De%g&aXq!b;$U&JLk< zB1#n?l@R!QmFml4;FW8=BIaWOji22l3WdY4e;|AnWH=vX>>2Q~Jh1Y&isxtvspVHjSki+vN0U`{ctZ4ZNtzMRq9EE UzKyAZLDhB+yk#Aswkn7~| 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