diff options
-rw-r--r-- | README.md | 62 | ||||
-rw-r--r-- | keyboard/ergodox_ez/keymaps/erez_experimental/erez_experimental.hex | 2153 | ||||
-rw-r--r-- | keyboard/ergodox_ez/keymaps/erez_experimental/keymap.c | 53 | ||||
-rw-r--r-- | keyboard/ergodox_ez/keymaps/erez_experimental/makefile.mk | 2 | ||||
-rw-r--r-- | quantum/keymap_common.h | 2 | ||||
-rw-r--r-- | quantum/quantum.c | 44 |
6 files changed, 1104 insertions, 1212 deletions
@@ -118,6 +118,20 @@ We've added shortcuts to make common modifier/tap (mod-tap) mappings more compac * `LCAG_T(kc)` - is CtrlAltGui when held and *kc* when tapped * `MEH_T(kc)` - is like Hyper, but not as cool -- does not include the Cmd/Win key, so just sends Alt+Ctrl+Shift. +### Space Cadet Shift: The future, built in + +Steve Losh [described](http://stevelosh.com/blog/2012/10/a-modern-space-cadet/) the Space Cadet Shift quite well. Essentially, you hit the left Shift on its own, and you get an opening parenthesis; hit the right Shift on its own, and you get the closing one. When hit with other keys, the Shift key keeps working as it always does. Yes, it's as cool as it sounds. + +To use it, use `KC_LSPO` (Left Shift, Parens Open) for your left Shift on your keymap, and `KC_RSPC` (Right Shift, Parens Close) for your right Shift. + +The only other thing you're going to want to do is create a `makefile.mk` in your keymap directory and set the following: + +``` +COMMAND_ENABLE = no # Commands for debug and configuration +``` + +This is just to keep the keyboard from going into command mode when you hold both Shift keys at the same time. + ### The Leader key: A new kind of modifier If you've ever used Vim, you know what a Leader key is. If not, you're about to discover a wonderful concept. :) Instead of hitting Alt+Shift+W for example (holding down three keys at the same time), what if you could hit a _sequence_ of keys instead? So you'd hit our special modifier (the Leader key), followed by W and then C (just a rapid succession of keys), and something would happen. @@ -296,7 +310,7 @@ if (timer_elapsed(key_timer) < 100) { It's best to declare the `static uint16_t key_timer;` outside of the macro block (top of file, etc). -#### Example 1: Single-key copy/paste (hold to copy, tap to paste) +#### Example: Single-key copy/paste (hold to copy, tap to paste) With QMK, it's easy to make one key do two things, as long as one of those things is being a modifier. :) So if you want a key to act as Ctrl when held and send the letter R when tapped, that's easy: `CTL_T(KC_R)`. But what do you do when you want that key to send Ctrl-V (paste) when tapped, and Ctrl-C (copy) when held? @@ -330,52 +344,6 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) And then, to assign this macro to a key on your keyboard layout, you just use `M(0)` on the key you want to press for copy/paste. -#### Example 2: Space Cadet Shift (making it easy to send opening and closing parentheses) - -In the [Modern Space Cadet Keyboard](http://stevelosh.com/blog/2012/10/a-modern-space-cadet/#shift-parentheses), one of cooler features is the Shift Parentheses. To quote Steve Losh: - - > When held while pressing other keys, act like Shift. - > When pressed and released on their own, type an opening or closing parenthesis (left and right shift respectively). - -``` -static uint16_t key_timer; - -const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) -{ - switch(id) { - case 0: { - if (record->event.pressed) { - key_timer = timer_read(); // if the key is being pressed, we start the timer. - register_code(KC_LSFT); // we're now holding down Shift. - } else { // this means the key was just released, so we can figure out how long it was pressed for (tap or "held down"). - if (timer_elapsed(key_timer) < 150) { // 150 being 150ms, the threshhold we pick for counting something as a tap. - register_code(KC_9); // sending 9 while Shift is held down gives us an opening paren - unregister_code(KC_9); // now let's let go of that key - } - unregister_code(KC_LSFT); // let's release the Shift key now. - } - break; - } - case 1: { - if (record->event.pressed) { - key_timer = timer_read(); // Now we're doing the same thing, only for the right shift/close paren key - register_code(KC_RSFT); - } else { - if (timer_elapsed(key_timer) < 150) { - register_code(KC_0); - unregister_code(KC_0); - } - unregister_code(KC_RSFT); - } - break; - } - } - return MACRO_NONE; -}; -``` - -And then, to assign this macro to a key on your keyboard layout, you just use `M(0)` on the key you want to press for left shift/opening parens, and `M(1)` for right shift/closing parens. - ## Additional keycode aliases for software-implemented layouts (Colemak, Dvorak, etc) Everything is assuming you're in Qwerty (in software) by default, but there is built-in support for using a Colemak or Dvorak layout by including this at the top of your keymap: diff --git a/keyboard/ergodox_ez/keymaps/erez_experimental/erez_experimental.hex b/keyboard/ergodox_ez/keymaps/erez_experimental/erez_experimental.hex index 4bbda7e97..5e010380c 100644 --- a/keyboard/ergodox_ez/keymaps/erez_experimental/erez_experimental.hex +++ b/keyboard/ergodox_ez/keymaps/erez_experimental/erez_experimental.hex @@ -1,21 +1,21 @@ :100000000C945C020C94A0020C94A0020C94A0022C
:100010000C94A0020C94A0020C94A0020C94A002D8
-:100020000C94A0020C94A0020C94900D0C94620EFF
-:100030000C94AB1C0C94A0020C94A0020C94A00293
+:100020000C94A0020C94A0020C945C0D0C942E0E67
+:100030000C946C1C0C94A0020C94A0020C94A002D2
:100040000C94A0020C94A0020C94A0020C94A002A8
-:100050000C94A0020C94121D0C94A0020C94A0020B
+:100050000C94A0020C94D31C0C94A0020C94A0024B
:100060000C94A0020C94A0020C94A0020C94A00288
:100070000C94A0020C94A0020C94A0020C94A00278
:100080000C94A0020C94A0020C94A0020C94A00268
:100090000C94A0020C94A0020C94A0020C94A00258
-:1000A0000C94A0020C94A0020C94A002C70EE90EBE
-:1000B000D40FE90ED40F2B0F4E0FD40FA30FB60F92
-:1000C0008D128D12BC12BC12031325137D147D14E6
-:1000D00030137D14D713D7136E147D147D14771449
-:1000E000E413E413E413E413E413E413E413E41358
-:1000F000E413E413E413E413E413E413E413E41348
-:10010000F61303140A1411141B140000F0A100C804
-:1001100001C82E004C002A000030354100001E00AE
+:1000A0000C94A0020C94A0020C94A002930EB50E26
+:1000B000A00FB50EA00FF70E1A0FA00F6F0F820F33
+:1000C0004E124E127D127D12C412E6123E143E14E0
+:1000D000F1123E14981398132F143E143E14381442
+:1000E000A513A513A513A513A513A513A513A51350
+:1000F000A513A513A513A513A513A513A513A51340
+:10010000B713C413CB13D213DC130000F0A100C843
+:1001100001C82E004C002A008450354100001E000A
:10012000140004001D7134004D001F001A00160059
:100130001B00E104145020000800070006005000D6
:100140002C0021001500090019004F004A00220070
@@ -25,7 +25,7 @@ :1001800018000D74100052004B0025000C000E00EA
:10019000360051002800260012000F0037002F0003
:1001A0002B41270013003342387130004E002D00E0
-:1001B0003100347801302D410000010001000100C0
+:1001B0003100347885502D4100000100010001001C
:1001C0000100010000003A0001001E0023000100B0
:1001D00001003B0001001F002400010001003C0061
:1001E0000100200025004B0101003D00010021001D
@@ -74,1109 +74,1034 @@ :100490000175088101050819012905950575019166
:1004A000029501750391010507190029FF15002523
:1004B000FF950675088100C011241FBECFEFDAE05A
-:1004C000DEBFCDBF04B603FE24C08091FC01909135
-:1004D000FD01A091FE01B091FF018730904BA74034
-:1004E000B04BB9F41092FC011092FD011092FE0184
-:1004F0001092FF0114BE84B7877F84BF88E10FB6D6
+:1004C000DEBFCDBF04B603FE24C08091F30190913E
+:1004D000F401A091F501B091F6018730904BA7404F
+:1004E000B04BB9F41092F3011092F4011092F5019F
+:1004F0001092F60114BE84B7877F84BF88E10FB6DF
:10050000F89480936000109260000FBEE0E0FFE37B
-:10051000099511E0A0E0B1E0E0E9F9E402C005903E
-:100520000D92A433B107D9F711E0A4E3B1E001C003
-:100530001D92AC3FB107E1F70E94D80A0C94C62483
-:100540000C940000CF93DF93EC01662319F0613027
-:1005500079F031C08A818823C9F082E00E94451277
-:100560008D81982F907F71F080FD0CC086E21BC0BA
-:100570008A818823D9F082E00E9445128D81982FCC
-:10058000907F71F48D818F708D8315C08D81807FF8
-:1005900019F086E20E94F61182E00E944C120BC014
-:1005A00080FDF0CF87E20E942E1105C08D81807FF3
-:1005B00099F387E2EFCF80E090E0DF91CF9108954B
-:1005C0000895CF93DF9300D000D000D0CDB7DEB731
-:1005D0006091BB017091BC018091BD019091BE0101
-:1005E0000E94191C56985E9825982D9826982E984A
-:1005F00027982F98813029F0823029F4269A2E9A54
-:1006000002C0259A2D9A80915B01882309F472C05B
-:100610008091590190915A010E94E91C8D329140BC
-:100620000CF468C010925B010E94D80580915301C0
-:10063000909154014A97C1F48091550190915601CF
-:10064000892B91F48091570190915801892B61F485
-:1006500082EE0E942E118DE30E942E118DE30E94E6
-:10066000F61182EE0E94F61180915301909154018F
-:100670004297F1F48091550190915601892BC1F474
-:100680008091570190915801892B91F480EE0E943E
-:100690002E1181EE0E942E1182E10E942E1182E124
-:1006A0000E94F61181EE0E94F61180EE0E94F61172
-:1006B000809153019091540184319045D9F48091F7
-:1006C000550190915601892BA9F480915701909181
-:1006D0005801892B79F481E08B8360E072E2CE01CE
-:1006E00001960E9453121B8260E072E2CE010196D5
-:1006F0000E94531226960FB6F894DEBF0FBECDBFF0
-:10070000DF91CF9108950C94E10256985E98259858
-:100710002D9826982E9827982F988FEF90E09093F9
-:1007200089008093880090938B0080938A00909337
-:100730008D0080938C00259A2D9A2FEF80E792E010
-:10074000215080409040E1F700C00000269A2E9A88
-:100750002FEF80E792E0215080409040E1F700C009
-:100760000000279A2F9A2FEF80E792E021508040D7
-:100770009040E1F700C0000025982D982FEF80E70A
-:1007800092E0215080409040E1F700C000002698A0
-:100790002E982FEF80E792E0215080409040E1F7C3
-:1007A00000C0000027982F9856985E9825982D989D
-:1007B00026982E9827982F98089589EA809380008C
-:1007C00089E08093810024982C983F988AB18F7497
-:1007D0008AB96E98479A8BB1806B8BB9769A0E94D2
-:1007E00085030C94E00280E2809300018091340143
-:1007F00081110EC00E94420481E0809334012FEFEA
-:1008000083ED90E3215080409040E1F700C000006C
-:1008100080E40E9448048093000181112EC00E9450
-:10082000720480930001811128C00E947204809399
-:100830000001811122C08FE30E94720480930001A5
-:1008400081111BC00E946A0480E40E9448048093C6
-:100850000001811112C08CE00E947204809300019B
-:1008600081110BC00E94720480930001811105C0A8
-:100870008FE30E947204809300010E946A048091B9
-:10088000000108951092B9008AE08093B80008959D
-:1008900094EA9093BC009091BC0097FFFCCF90919C
-:1008A000B900987F983021F0903111F081E00895DF
-:1008B0008093BB0084E88093BC008091BC0087FFDC
-:1008C000FCCF8091B900887F883111F0803471F7B6
-:1008D00080E0089584E98093BC008091BC0084FD91
-:1008E000FCCF08958093BB0084E88093BC00809186
-:1008F000BC0087FFFCCF9091B900987F81E09832CF
-:1009000009F480E0089584E88093BC008091BC00E5
-:1009100087FFFCCF8091BB00089580910001811179
-:1009200015C080E40E9448048093000181110CC02E
-:1009300082E10E94720480930001811105C08FEF53
-:100940000E947204809300010E946A0484B1807F37
-:1009500084B985B1807F85B98AB1837F8AB98BB12B
-:10096000837F8BB93E98469808950E94F303809345
-:1009700000010E948D0480B38C7080BB81B3836FB3
-:1009800081BBE4E4F1E0A6E3B1E011921D9281E0C5
-:10099000E235F807D1F70C94DD03BF92CF92DF92D6
-:1009A000EF92FF920F931F93CF93DF9380910001FB
-:1009B000882379F0809135018F5F80933501811113
-:1009C00008C00E94F30380930001811102C00E94BD
-:1009D000850306E311E0C0E0D0E0DD24D39482E09B
-:1009E000C82EEE24E394F12CC73000F5809100016D
-:1009F000811162C080E40E9448048093000181114B
-:100A000012C082E10E9472048093000181110BC028
-:100A1000C7010C2E01C0880F0A94EAF780950E9446
-:100A20007204809300010E946A0446C0CA30A1F09B
-:100A300028F4C83059F0C93061F005C0CC3089F0D5
-:100A400070F0CD3089F0209A289810C0219A29980A
-:100A50000DC0229A2A980AC0239A2B9807C0529A4E
-:100A600001C0539A5B9802C03E9A4698E0EAEA9524
-:100A7000F1F78FB179995AC092E081708D25892B59
-:100A80007C9B02C090E001C094E0892B7D9B02C05A
-:100A900090E001C098E0892B7E9B02C090E001C0ED
-:100AA00090E1892B9FB19095991F9927991F929555
-:100AB000990F907E892B0FC08091000181114BC04E
-:100AC00080E40E94480480930001882389F1B12CBE
-:100AD0000E946A048B2DF8019081981719F0808389
-:100AE000C09201010E948D0421960F5F1F4FCE30EE
-:100AF000D10509F079CF80910101882371F18150EE
-:100B000080930101882339F08FE99FE00197F1F785
-:100B100000C0000022C0A4E4B1E0E6E3F1E081916E
-:100B20008D9391E0E434F907D1F717C090E0A5CF99
-:100B300083E10E947204809300018111C8CF81E497
-:100B40000E944804809300018111C1CF0E94830458
-:100B5000B82EB094BDCF80E0BECF0E94830381E069
-:100B6000DF91CF911F910F91FF90EF90DF90CF9089
-:100B7000BF900895E82FF0E0EC5BFE4F8081089570
-:100B800008951F93CF93DF93C4E4D1E010E08991DF
-:100B900090E00E940D1C180F81E0C235D807B9F70C
-:100BA000812FDF91CF911F91089581E008950895DD
-:100BB00008950F931F93CF93DF93EC010881198160
-:100BC000C8010E94161AB8010E9430068C018A8161
-:100BD0008823C1F180915B0181111DC00431104552
-:100BE00089F50E94D70581E080935B010E94DD1C9E
-:100BF00090935A018093590110925201109254011E
-:100C00001092530110925601109255011092580102
-:100C1000109257011EC08091590190915A010E9473
-:100C2000E91C883C910570F480915201E82FF0E0B6
-:100C3000EE0FFF1FED5AFE4F118300838F5F8093ED
-:100C4000520107C0CE01DF91CF911F910F910C94FB
-:100C5000D50580E0DF91CF911F910F910895089500
-:100C600096E0799FF001112494E5899FE00DF11D34
-:100C70001124E60FF11DEE0FFF1FEE5EFE4F859172
-:100C800094910895880F991F86579040FC01859193
-:100C900094910895880F991F865F9E4FFC0185915E
-:100CA000949108950F931F93CF93DF93EC018115D7
-:100CB00020E3920740F5811530E2930708F0C4C0A5
-:100CC0008B3B910588F4883A910508F06BC0853A12
-:100CD000910508F05CC08430910508F056C0813061
-:100CE000910509F4C8C1C4C18F3F910511F008F006
-:100CF0004CC0803F910508F0A4C0805E9109089720
-:100D000008F443C0B5C1C13080E5D80709F4A4C0D8
-:100D100020F5C0312FE4D20770F4C11530E4D307B9
-:100D200008F096C0C11581E3D80708F0A1C18E0173
-:100D30001127106CE1C1C115D04509F099C10E947D
-:100D4000E9143FEF84E39CE0315080409040E1F7AC
-:100D500000C000000E94371DCFC1C11527E5D20792
-:100D600058F4C03131E5D30708F01EC1C43180E525
-:100D7000D80708F477C07CC1CE0190578115904107
-:100D800008F076C18E011F7071C18E01B5C1853A20
-:100D9000910509F473C1863A910509F472C103E81B
-:100DA00010E4AAC1883A910509F46EC1893A910507
-:100DB00009F46DC18A3A910509F46CC18B3A910529
-:100DC00009F46BC18C3A910509F46AC18D3A910519
-:100DD00009F469C1803B910509F468C18E3A910517
-:100DE00009F467C18F3A910509F466C1813B910509
-:100DF00009F465C1823B910509F464C1833B910507
-:100E000009F463C1843B910509F462C1853B9105F6
-:100E100009F461C1863B910509F460C1873B9105E6
-:100E200009F45FC1883B910509F45EC1893B9105D6
-:100E300009F45DC18A3B910509F05CC10AE216E440
-:100E40005BC18C01106558C19F700E944A0655C154
-:100E50008E011F70106A50C18091DD018160809306
-:100E6000DD014AC10E94DD1E811102C00E94C31E25
-:100E70000E94FA1E90E09093FC018093FB01C23027
-:100E800020E5D20721F48091FB01816086C0C43047
-:100E900030E5D30721F48091FB0182607EC0C6302B
-:100EA00080E5D80721F48091FB01846076C0C830CA
-:100EB00090E5D90719F48091FB0127C0CA3020E5DD
-:100EC000D20721F48091FB01806167C0CC3030E50E
-:100ED000D30721F48091FB0180625FC0CE3080E5B2
-:100EE000D80721F48091FB01806457C0C03190E5A0
-:100EF000D90721F48091FB0180684FC0C23120E501
-:100F0000D20729F48091FB018460886046C0C33019
-:100F100030E5D30721F48091FB018E7F3EC0C530C0
-:100F200080E5D80721F48091FB018D7F36C0C73062
-:100F300090E5D90721F48091FB018B7F2EC0C93049
-:100F400020E5D20719F48091FB0126C0CB3030E5B3
-:100F5000D30721F48091FB018F7E1FC0CD3080E547
-:100F6000D80721F48091FB018F7D17C0CF3090E529
-:100F7000D90721F48091FB018F7B0FC0C13120E59F
-:100F8000D20721F48091FB018F7707C0C331D04590
-:100F900031F48091FB018B7F877F8093FB018091EF
-:100FA000FB010E94FE1EA8C08D2F99278F709927E4
-:100FB00081309105E9F48E01037011279C0102C074
-:100FC000220F331F0A95E2F789011C68CE01E4E085
-:100FD000880F991FEA95E1F788279370082B192B42
-:100FE000F3E0CC0FDD1FFA95E1F7C076DD272CC0CA
-:100FF0008230910529F41C2F0027016F106A7CC0F4
-:101000008330910561F4CE018370992701E010E0EF
-:1010100002C0000F111F8A95E2F71C680EC08430D1
-:101020009105A9F4CE018370992701E010E002C078
-:10103000000F111F8A95E2F71A6863E0CC0FDD1FDD
-:101040006A95E1F7C07ED7700C2B1D2B55C08530FB
-:10105000910529F41C2F0027046F106A4DC00697D4
-:1010600009F04AC0CF71DD271C2F0027106244C051
-:1010700000E010E041C001E010E03EC001E810E4F3
-:101080003BC002E810E438C002EE14E435C009EEBB
-:1010900014E432C00AEE14E42FC005EB14E42CC0B3
-:1010A00006EB14E429C007EB14E426C00CEC14E4AE
-:1010B00023C00DEC14E420C003E815E41DC00AE8C9
-:1010C00015E41AC002E915E417C004E915E414C0D8
-:1010D00001E216E411C003E216E40EC004E216E4D5
-:1010E0000BC005E216E408C006E216E405C007E2FC
-:1010F00016E402C000E014E4C801DF91CF911F9113
-:101100000F91089596E0799FF001112494E5899F4D
-:10111000E00DF11D1124E60FF11DEE0FFF1FEE5E35
-:10112000FE4F85919491803E9105E0F4803C9105BD
-:1011300058F58133910509F46FC048F4893291055F
-:1011400009F463C08A32910509F46DC072C0893315
-:101150009105E9F082389105D1F08533910509F4C4
-:101160004DC067C0833E910581F138F4803E910502
-:10117000B9F0823E9105D9F05CC0863E910561F1DF
-:10118000873E9105A1F155C00E9442060895209125
-:10119000FB0120FD02C021FF4CC080EE90E049C061
-:1011A0008091FB0180FFF9CF89E390E042C08091FC
-:1011B000FB0182FF0EC08091FB0184FF03C080E031
-:1011C00090E037C083EE90E034C08091FB0182FF55
-:1011D000F2CF82EE90E02DC08091FB0183FF0BC027
-:1011E0008091FB0184FDEBCF87EE90E022C08091DF
-:1011F000FB0183FFF5CF86EE90E01BC08091FB01E1
-:1012000085FF07C089E290E014C08091FB0185FF53
-:10121000F9CF85E390E00DC08091FB0186FF07C008
-:101220008AE290E006C08091FB0186FFF9CF81E35E
-:1012300090E00E945206089508950C941C09809134
-:101240006C010895CF93DF9300D01F92CDB7DEB726
-:101250002091F201243019F523E029839B838A83AE
-:101260002093E9008FEF9091E800815095FD06C032
+:10051000099511E0A0E0B1E0E4EEF4E402C005903A
+:100520000D92AA32B107D9F711E0AAE2B1E001C0F9
+:100530001D92A33FB107E1F70E94A40A0C94702218
+:100540000C94000080E090E0089508956091B4015B
+:100550007091B5018091B6019091B7010E94DA1BAC
+:1005600056985E9825982D9826982E9827982F981B
+:10057000813029F0823029F4269A2E9A02C0259AD9
+:100580002D9A80915401882309F450C08091520122
+:10059000909153010E94AA1C8D3291400CF446C0E8
+:1005A000109254010E946C0580914C0190914D0174
+:1005B0004A97C1F480914E0190914F01892B91F49B
+:1005C0008091500190915101892B61F482EE0E943B
+:1005D000FA108DE30E94FA108DE30E94B71182EEAB
+:1005E0000E94B71180914C0190914D014297F1F416
+:1005F00080914E0190914F01892BC1F4809150015F
+:1006000090915101892B91F480EE0E94FA1081EEB5
+:100610000E94FA1082E10E94FA1082E10E94B71152
+:1006200081EE0E94B71180EE0C94B71108950C94DE
+:10063000A60256985E9825982D9826982E98279869
+:100640002F988FEF90E0909389008093880090938B
+:100650008B0080938A0090938D0080938C00259A64
+:100660002D9A2FEF80E792E0215080409040E1F7F3
+:1006700000C00000269A2E9A2FEF80E792E02150CA
+:1006800080409040E1F700C00000279A2F9A2FEF9A
+:1006900080E792E0215080409040E1F700C00000E8
+:1006A00025982D982FEF80E792E0215080409040D0
+:1006B000E1F700C0000026982E982FEF80E792E027
+:1006C000215080409040E1F700C0000027982F980B
+:1006D00056985E9825982D9826982E9827982F98AA
+:1006E000089589EA8093800089E0809381002498AE
+:1006F0002C983F988AB18F748AB96E98479A8BB1BB
+:10070000806B8BB9769A0E9419030C94A50280E243
+:100710008093000180912A0181110EC00E94D603AE
+:1007200081E080932A012FEF83ED90E321508040F8
+:100730009040E1F700C0000080E40E94DC03809359
+:10074000000181112EC00E940604809300018111D6
+:1007500028C00E94060480930001811122C08FE30B
+:100760000E9406048093000181111BC00E94FE03B9
+:1007700080E40E94DC0380930001811112C08CE0B0
+:100780000E9406048093000181110BC00E940604A0
+:1007900080930001811105C08FE30E9406048093BD
+:1007A00000010E94FE038091000108951092B9009B
+:1007B0008AE08093B800089594EA9093BC009091E9
+:1007C000BC0097FFFCCF9091B900987F983021F042
+:1007D000903111F081E008958093BB0084E880930C
+:1007E000BC008091BC0087FFFCCF8091B900887F5E
+:1007F000883111F0803471F780E0089584E98093A6
+:10080000BC008091BC0084FDFCCF08958093BB00A8
+:1008100084E88093BC008091BC0087FFFCCF90915E
+:10082000B900987F81E0983209F480E0089584E867
+:100830008093BC008091BC0087FFFCCF8091BB00FF
+:10084000089580910001811115C080E40E94DC03AD
+:100850008093000181110CC082E10E940604809304
+:100860000001811105C08FEF0E94060480930001F2
+:100870000E94FE0384B1807F84B985B1807F85B9F1
+:100880008AB1837F8AB98BB1837F8BB93E984698B2
+:1008900008950E948703809300010E94210480B381
+:1008A0008C7080BB81B3836F81BBEAE3F1E0ACE283
+:1008B000B1E011921D9281E0E834F807D1F70C9471
+:1008C0007103BF92CF92DF92EF92FF920F931F932B
+:1008D000CF93DF9380910001882379F080912B01E1
+:1008E0008F5F80932B01811108C00E948703809342
+:1008F0000001811102C00E9419030CE211E0C0E066
+:10090000D0E0DD24D39482E0C82EEE24E394F12CD1
+:10091000C73000F580910001811162C080E40E941F
+:10092000DC0380930001811112C082E10E94060461
+:100930008093000181110BC0C7010C2E01C0880FEC
+:100940000A94EAF780950E940604809300010E94B1
+:10095000FE0346C0CA30A1F028F4C83059F0C930AF
+:1009600061F005C0CC3089F070F0CD3089F0209A6C
+:10097000289810C0219A29980DC0229A2A980AC056
+:10098000239A2B9807C0529A01C0539A5B9802C0D1
+:100990003E9A4698E0EAEA95F1F78FB179995AC004
+:1009A00092E081708D25892B7C9B02C090E001C074
+:1009B00094E0892B7D9B02C090E001C098E0892BD8
+:1009C0007E9B02C090E001C090E1892B9FB1909581
+:1009D000991F9927991F9295990F907E892B0FC087
+:1009E0008091000181114BC080E40E94DC03809360
+:1009F0000001882389F1B12C0E94FE038B2DF801A0
+:100A00009081981719F08083C09201010E942104FF
+:100A100021960F5F1F4FCE30D10509F079CF80911D
+:100A20000101882371F1815080930101882339F0FD
+:100A30008FE99FE00197F1F700C0000022C0AAE310
+:100A4000B1E0ECE2F1E081918D9391E0EA33F907B6
+:100A5000D1F717C090E0A5CF83E10E9406048093F0
+:100A600000018111C8CF81E40E94DC038093000162
+:100A70008111C1CF0E941704B82EB094BDCF80E081
+:100A8000BECF0E94170381E0DF91CF911F910F919C
+:100A9000FF90EF90DF90CF90BF900895E82FF0E0A7
+:100AA000E65CFE4F8081089508951F93CF93DF93F6
+:100AB000CAE3D1E010E0899190E00E94CE1B180FAC
+:100AC00081E0C834D807B9F7812FDF91CF911F910A
+:100AD000089581E00895089508950F931F93CF938B
+:100AE000DF93EC0108811981C8010E94D719B80170
+:100AF0000E94FC058C018A818823C9F180915401F0
+:100B000081111EC0043180E5180789F50E946B052C
+:100B100081E0809354010E949E1C90935301809326
+:100B2000520110924B0110924D0110924C01109203
+:100B30004F0110924E01109251011092500155C078
+:100B400080915201909153010E94AA1C883C91050A
+:100B500070F480914B01E82FF0E0EE0FFF1FE45B93
+:100B6000FE4F118300838F5F80934B013EC004389A
+:100B700080E5180721F005381045A1F02AC08A81C8
+:100B8000882321F01092480182E012C08091480130
+:100B9000811106C086E20E94FA1086E20E94B71117
+:100BA00082E014C08A81882331F01092490180E2EA
+:100BB0000E9406121AC080914901811106C087E285
+:100BC0000E94FA1087E20E94B71180E20E940D1283
+:100BD0000CC081E08093480180934901CE01DF91F0
+:100BE000CF911F910F910C94690580E0DF91CF9117
+:100BF0001F910F910895089596E0799FF0011124B7
+:100C000094E5899FE00DF11D1124E60FF11DEE0F13
+:100C1000FF1FEE5EFE4F859194910895880F991FF6
+:100C200086579040FC01859194910895880F991FF3
+:100C3000865F9E4FFC018591949108950F931F93B9
+:100C4000CF93DF93EC01811520E3920740F58115E6
+:100C500030E2930708F0C4C08B3B910588F4883AD2
+:100C6000910508F06BC0853A910508F05CC08430AE
+:100C7000910508F056C08130910509F4C8C1C4C17E
+:100C80008F3F910511F008F04CC0803F910508F0AE
+:100C9000A4C0805E9109089708F443C0B5C1C13073
+:100CA00080E5D80709F4A4C020F5C0312FE4D207AD
+:100CB00070F4C11530E4D30708F096C0C11581E384
+:100CC000D80708F0A1C18E011127106CE1C1C11530
+:100CD000D04509F099C10E94AA143FEF84E39CE03B
+:100CE000315080409040E1F700C000000E94F81CA5
+:100CF000CFC1C11527E5D20758F4C03131E5D3077C
+:100D000008F01EC1C43180E5D80708F477C07CC163
+:100D1000CE0190578115904108F076C18E011F7069
+:100D200071C18E01B5C1853A910509F473C1863A46
+:100D3000910509F472C103E810E4AAC1883A91054B
+:100D400009F46EC1893A910509F46DC18A3A910599
+:100D500009F46CC18B3A910509F46BC18C3A910589
+:100D600009F46AC18D3A910509F469C1803B910586
+:100D700009F468C18E3A910509F467C18F3A91056B
+:100D800009F466C1813B910509F465C1823B910577
+:100D900009F464C1833B910509F463C1843B910567
+:100DA00009F462C1853B910509F461C1863B910557
+:100DB00009F460C1873B910509F45FC1883B910547
+:100DC00009F45EC1893B910509F45DC18A3B910537
+:100DD00009F05CC10AE216E45BC18C01106558C1E0
+:100DE0009F700E94160655C18E011F70106A50C177
+:100DF0008091D60181608093D6014AC10E949E1ED7
+:100E0000811102C00E94841E0E94BB1E90E090933C
+:100E1000F3018093F201C23020E5D20721F48091E2
+:100E2000F201816086C0C43030E5D30721F480919F
+:100E3000F20182607EC0C63080E5D80721F480913F
+:100E4000F201846076C0C83090E5D90719F480912A
+:100E5000F20127C0CA3020E5D20721F48091F201C7
+:100E6000806167C0CC3030E5D30721F48091F20176
+:100E700080625FC0CE3080E5D80721F48091F20116
+:100E8000806457C0C03190E5D90721F48091F20108
+:100E900080684FC0C23120E5D20729F48091F20169
+:100EA0008460886046C0C33030E5D30721F4809168
+:100EB000F2018E7F3EC0C53080E5D80721F48091D5
+:100EC000F2018D7F36C0C73090E5D90721F48091BB
+:100ED000F2018B7F2EC0C93020E5D20719F4809132
+:100EE000F20126C0CB3030E5D30721F48091F20126
+:100EF0008F7E1FC0CD3080E5D80721F48091F201AC
+:100F00008F7D17C0CF3090E5D90721F48091F20191
+:100F10008F7B0FC0C13120E5D20721F48091F2010F
+:100F20008F7707C0C331D04531F48091F2018B7FB8
+:100F3000877F8093F2018091F2010E94BF1EA8C0BA
+:100F40008D2F99278F70992781309105E9F48E01B3
+:100F5000037011279C0102C0220F331F0A95E2F78C
+:100F600089011C68CE01E4E0880F991FEA95E1F73A
+:100F700088279370082B192BF3E0CC0FDD1FFA950F
+:100F8000E1F7C076DD272CC08230910529F41C2FB3
+:100F90000027016F106A7CC08330910561F4CE0197
+:100FA0008370992701E010E002C0000F111F8A959D
+:100FB000E2F71C680EC084309105A9F4CE0183705D
+:100FC000992701E010E002C0000F111F8A95E2F797
+:100FD0001A6863E0CC0FDD1F6A95E1F7C07ED77019
+:100FE0000C2B1D2B55C08530910529F41C2F002793
+:100FF000046F106A4DC0069709F04AC0CF71DD2713
+:101000001C2F0027106244C000E010E041C001E046
+:1010100010E03EC001E810E43BC002E810E438C034
+:1010200002EE14E435C009EE14E432C00AEE14E412
+:101030002FC005EB14E42CC006EB14E429C007EB29
+:1010400014E426C00CEC14E423C00DEC14E420C01E
+:1010500003E815E41DC00AE815E41AC002E915E426
+:1010600017C004E915E414C001E216E411C003E25C
+:1010700016E40EC004E216E40BC005E216E408C054
+:1010800006E216E405C007E216E402C000E014E43C
+:10109000C801DF91CF911F910F91089596E0799F3C
+:1010A000F001112494E5899FE00DF11D1124E60F54
+:1010B000F11DEE0FFF1FEE5EFE4F85919491803E75
+:1010C0009105E0F4803C910558F58133910509F4D0
+:1010D0006FC048F48932910509F463C08A329105E2
+:1010E00009F46DC072C089339105E9F08238910529
+:1010F000D1F08533910509F44DC067C0833E910559
+:1011000081F138F4803E9105B9F0823E9105D9F025
+:101110005CC0863E910561F1873E9105A1F155C005
+:101120000E940E0608952091F20120FD02C021FFC9
+:101130004CC080EE90E049C08091F20180FFF9CF71
+:1011400089E390E042C08091F20182FF0EC080915D
+:10115000F20184FF03C080E090E037C083EE90E0AE
+:1011600034C08091F20182FFF2CF82EE90E02DC078
+:101170008091F20183FF0BC08091F20184FDEBCFDF
+:1011800087EE90E022C08091F20183FFF5CF86EEDA
+:1011900090E01BC08091F20185FF07C089E290E0DA
+:1011A00014C08091F20185FFF9CF85E390E00DC076
+:1011B0008091F20186FF07C08AE290E006C080912C
+:1011C000F20186FFF9CF81E390E00E941E060895A8
+:1011D00008950C94E808809165010895CF93DF93FA
+:1011E00000D01F92CDB7DEB72091E901243019F568
+:1011F00023E029839B838A832093E9008FEF9091DA
+:10120000E800815095FD06C095ED9A95F1F7000034
+:101210008111F5CF8091E80085FF0DC040E050E0DE
+:1012200063E070E0CE0101960E944F0B8091E800D0
+:101230008E778093E8000F900F900F90DF91CF9101
+:101240000895CF93DF9300D01F92CDB7DEB72091E2
+:10125000E901243021F522E029839B838A8383E0FE
+:101260008093E9008FEF9091E800815095FD06C0D2
:1012700095ED9A95F1F700008111F5CF8091E80086
:1012800085FF0DC040E050E063E070E0CE010196C4
-:101290000E94830B8091E8008E778093E8000F9086
-:1012A0000F900F90DF91CF910895CF93DF9300D0EF
-:1012B0001F92CDB7DEB72091F201243021F522E054
-:1012C00029839B838A8383E08093E9008FEF909149
-:1012D000E800815095FD06C095ED9A95F1F7000064
-:1012E0008111F5CF8091E80085FF0DC040E050E00E
-:1012F00063E070E0CE0101960E94830B8091E800CC
-:101300008E778093E8000F900F900F90DF91CF9130
-:1013100008952091F2012430F1F422E02093E900B5
-:101320002FEF3091E800215035FD06C035ED3A959C
-:10133000F1F700002111F5CF2091E80025FF0BC047
-:1013400040E050E065E070E00E94830B8091E8008F
-:101350008E778093E8000895CF93DF93EC0180911E
-:10136000F201843009F046C090910C019923D9F024
-:1013700090910D019923B9F08093E9008FEF90913E
-:10138000E800815095FD06C095E19A95F1F70000BF
-:101390008111F5CF8091E80085FF2CC040E050E03E
-:1013A00060E170E017C081E08093E9008FEF9091D9
-:1013B000E800815095FD06C095ED9A95F1F7000083
-:1013C0008111F5CF8091E80085FF14C040E050E026
-:1013D00068E070E0CE010E94830B8091E8008E7778
-:1013E0008093E80080E1FE01ACE5B1E001900D9250
-:1013F0008A95E1F7DF91CF9108958091F1018111F4
-:1014000009C00E94150D0E94720D8091E200846057
-:101410008093E20008951092F101089508950895CF
-:101420000C94A51C42E061EC81E00E948F0C42E02C
-:1014300061EC82E00E948F0C42E061EC83E00E944C
-:101440008F0C42E161EC84E00C948F0C8091F401EC
-:10145000833009F455C030F4813071F0823009F4E2
-:101460008EC008958A3009F47AC08B3009F460C0C8
-:10147000893009F09CC020C08091F301813A09F0C5
-:1014800096C08091E800877F8093E8008091F70103
-:101490009091F801892B21F060E080E090E003C09A
-:1014A00060E18CE591E070E00E94CC0B8091E80057
-:1014B0008B778093E80008958091F301813209F0E1
-:1014C00076C08091F7019091F801009719F0039789
-:1014D00009F06DC08091E800877F8093E8008091DB
-:1014E000E80082FD05C08091F2018111F8CF5FC054
-:1014F0008091F10080936C018091E8008B7753C05C
-:101500008091F301813A09F052C08091F7019091E6
-:10151000F801892B09F04BC08091E800877F809308
-:10152000E8008091E80080FFFCCF80910C0136C07C
-:101530008091F3018132D9F58091F7019091F80102
-:10154000892BA9F58091E800877F8093E8000E94AD
-:10155000C40C8091F50180930C010C94E9148091E6
-:10156000F301813221F58091E800877F8093E800C4
-:101570000E94C40C8091F60180936D0108958091C2
-:10158000F301813AA1F48091E800877F8093E8001D
-:101590008091E80080FFFCCF80916D018093F10085
-:1015A0008091E8008E778093E8000C94C40C089535
-:1015B00084B7877F84BF88E10FB6F894809360007A
-:1015C000109260000FBE90E080E80FB6F894809310
-:1015D0006100909361000FBE0E945E100E94150D85
-:1015E0000E94720D8091E20084608093E200789402
-:1015F0000E94ED0F0E94601082E091E00E940A10AC
-:101600008091F201853069F40E946C1C8091F00198
-:101610008823B1F30E94971C882391F30E946D0BDD
-:10162000EFCF0E946610ECCF292F332723303105EE
-:10163000A9F06CF42130310509F442C022303105A3
-:1016400009F043C08DE690E02EE333E042C0213242
-:101650003105C9F02232310519F137C0992781309F
-:10166000910541F08230910541F0892B71F5EAE353
-:10167000F3E005C0E2E2F3E002C0EAE0F3E08491C7
-:1016800090E09F0126C0643000F5E62FF0E0EE0FF9
-:10169000FF1FEE5DFE4F2081318189E090E019C08F
-:1016A000643098F4E62FF0E0DF01AA0FBB1FA65EBE
-:1016B000BE4F2D913C91EA5EFE4F808190E009C0C3
-:1016C00082E190E02BEA33E004C080E090E020E08B
-:1016D00030E0FA0131832083089580E189BD82E101
-:1016E00089BD09B400FEFDCF8091D8008F7D809325
-:1016F000D8008091E00082608093E0008091E0005B
-:1017000081FDFCCF0895CF92DF92EF92FF920F936D
-:101710001F93CF93DF937C018B01EA010E94E50CBC
-:10172000811131C0209731F088819981081B190BF4
-:10173000E80EF91EC12CD12C0115110519F180916B
-:10174000E80085FD14C08091E8008E778093E80062
-:10175000209741F0888199818C0D9D1D9983888304
-:1017600085E011C00E94E50C882331F30CC0F7011D
-:1017700081917F018093F10001501109FFEFCF1A91
-:10178000DF0ADACF80E0DF91CF911F910F91FF90B8
-:10179000EF90DF90CF9008952091F9013091FA01F8
-:1017A0002617370748F06115710539F42091E800D4
-:1017B0002E772093E80001C0B901FC0120E06115FB
-:1017C0007105B9F18091F201882309F440C0853098
-:1017D00009F43FC08091E80083FD3DC08091E8009E
-:1017E00082FF06C08091E80082FF26C080E0089555
-:1017F0008091E80080FFE3CF2091F3008091F20018
-:1018000090E0922B6115710551F08830910538F404
-:1018100021912093F100615071090196F3CF21E0ED
-:10182000089709F020E08091E8008E778093E80027
-:10183000C6CF2111C7CFD6CF8091F201882339F0CE
-:10184000853039F08091E80083FFCCCF04C082E07E
-:10185000089583E0089581E008952091F901309181
-:10186000FA012617370748F06115710539F4209100
-:10187000E8002E772093E80001C0B901FC0120E0C8
-:1018800061157105C1F18091F201882309F441C00D
-:10189000853009F440C08091E80083FD3EC080910E
-:1018A000E80082FF06C08091E80082FF27C080E048
-:1018B00008958091E80080FFE3CF2091F3008091AC
-:1018C000F20090E0922B6115710559F08830910576
-:1018D00040F424912093F1003196615071090196F2
-:1018E000F2CF21E0089709F020E08091E8008E77A0
-:1018F0008093E800C5CF2111C6CFD5CF8091F201EA
-:10190000882339F0853039F08091E80083FFCBCF10
-:1019100004C082E0089583E0089581E00895982F3F
-:10192000973058F59093E900981739F07091EC00D2
-:101930002091ED005091F00003C0242F762F50E04D
-:1019400021FF19C03091EB003E7F3093EB003091C6
-:10195000ED003D7F3093ED003091EB00316030932E
-:10196000EB007093EC002093ED005093F000209179
-:10197000EE0027FF07C09F5FD3CF8F708093E900F1
-:1019800081E0089580E008958091F30187FD05C00E
-:101990008091E80080FF0EC012C08091E80082FDB7
-:1019A00005C08091F2018111F8CF08958091E8007F
-:1019B0008B7708C08091F2018111EACF0895809160
-:1019C000E8008E778093E80008958091E40090917C
-:1019D000E50045E62091EC0020FF21C02091E800C1
-:1019E00020FD21C02091F201222389F0253089F0C9
-:1019F0002091EB0025FD0FC02091E4003091E5001F
-:101A00002817390739F3415041F0C901E3CF82E08B
-:101A1000089583E0089581E0089584E00895209179
-:101A2000E80022FFDFCF80E008950E94830D0E942E
-:101A30008B0DE0EEF0E0808181608083E8EDF0E0E6
-:101A400080818F77808319BCA7EDB0E08C918E7F69
-:101A50008C9380818F7E80831092F10108950F9383
-:101A60001F93CF93DF930E94830D0E948B0DC8EDCF
-:101A7000D0E088818F778883888180688883888197
-:101A80008F7D888319BC1092F2011092EE011092A2
-:101A9000F0011092EF0100EE10E0F80180818B7FE1
-:101AA000808388818160888342E060E080E00E94DA
-:101AB0008F0CE1EEF0E080818E7F8083E2EEF0E03B
-:101AC000808181608083808188608083F80180814B
-:101AD0008E7F8083888180618883DF91CF911F9181
-:101AE0000F910895E8EDF0E080818F7E8083E7ED2F
-:101AF000F0E080818160808384E082BF81E0809318
-:101B0000F1010C942F0DE8EDF0E080818E7F808351
-:101B10001092E20008951092DA001092E100089508
-:101B20001F920F920FB60F9211242F933F934F9352
-:101B30005F936F937F938F939F93AF93BF93EF9335
-:101B4000FF938091E10082FF0BC08091E20082FF51
-:101B500007C08091E1008B7F8093E1000E94EC0F31
-:101B60008091DA0080FF1FC08091D80080FF1BC0E9
-:101B70008091DA008E7F8093DA008091D90080FF17
-:101B80000DC080E189BD82E189BD09B400FEFDCFB1
-:101B900081E08093F2010E94FD0905C019BC1092FA
-:101BA000F2010E940B0A8091E10080FF19C0809130
-:101BB000E20080FF15C08091E2008E7F8093E200FA
-:101BC0008091E20080618093E2008091D800806281
-:101BD0008093D80019BC85E08093F2010E940F0A1F
-:101BE0008091E10084FF30C08091E20084FF2CC02E
-:101BF00080E189BD82E189BD09B400FEFDCF8091FD
-:101C0000D8008F7D8093D8008091E1008F7E8093F3
-:101C1000E1008091E2008F7E8093E2008091E200FB
-:101C200081608093E2008091EE01882311F084E0CE
-:101C300007C08091E30087FF02C083E001C081E01C
-:101C40008093F2010E94100A8091E10083FF29C075
-:101C50008091E20083FF25C08091E100877F80931F
-:101C6000E10082E08093F2011092EE018091E100A8
-:101C70008E7F8093E1008091E2008E7F8093E2006E
-:101C80008091E20080618093E20042E060E080E0C9
-:101C90000E948F0C8091F00088608093F0000E9479
-:101CA0000E0AFF91EF91BF91AF919F918F917F911C
-:101CB0006F915F914F913F912F910F900FBE0F90B9
-:101CC0001F9018951F920F920FB60F9211242F9309
-:101CD0003F934F935F936F937F938F939F93AF93B4
-:101CE000BF93CF93EF93FF93C091E900CF708091A2
-:101CF000EC001092E9008091F000877F8093F00063
-:101D000078940E949E0E1092E9008091F000886005
-:101D10008093F000C093E900FF91EF91CF91BF91C4
-:101D2000AF919F918F917F916F915F914F913F9173
-:101D30002F910F900FBE0F901F9018951F93CF9368
-:101D4000DF93CDB7DEB7AA970FB6F894DEBF0FBE0C
-:101D5000CDBFE3EFF1E08091F100819321E0EB3F13
-:101D6000F207C9F70E94260A8091E80083FF1CC190
-:101D70002091F3013091F401832F90E08A30910596
-:101D800008F012C1FC01EA5AFF4F0C947624203867
-:101D900081F0223809F008C18091F7018F7080939B
-:101DA000E9008091EB0085FB882780F91092E9001B
-:101DB00006C08091EF019091F001911182609091A5
-:101DC000E800977F9093E8008093F1001092F10073
-:101DD000C5C0822F8D7F09F0E7C0222319F0223081
-:101DE00061F0E2C08091F501813009F0DDC033304F
-:101DF00009F080E08093F00128C08091F501811105
-:101E000024C02091F7012F7009F4CEC02093E9007F
-:101E10008091EB0080FF19C08091EB00333011F40A
-:101E2000806211C080618093EB0081E090E0022E1F
-:101E300001C0880F0A94EAF78093EA001092EA0042
-:101E40008091EB0088608093EB001092E900809114
-:101E5000E800877F86C02111A7C01091F5011F7788
-:101E60008091E3008078812B8093E3008091E800EB
-:101E7000877F8093E8000E94C40C8091E80080FF77
-:101E8000FCCF8091E30080688093E300112311F080
-:101E900083E001C082E08093F20186C020582230A6
-:101EA00008F082C08091F5019091F6018C3D23E00D
-:101EB000920779F583E08A838AE289834FB7F894A1
-:101EC000DE01139620E03EE051E2E32FF0E0509374
-:101ED0005700E49120FF03C0E295EF703F5FEF7081
-:101EE0008E2F90E0EA3010F0C79601C0C0968D9317
-:101EF0009D932F5F243149F74FBF8091E800877F82
-:101F00008093E8006AE270E0CE0101960E94CC0B5B
-:101F100014C0AE014F5F5F4F6091F7010E94140B38
-:101F2000009709F441C02091E800277F2093E80042
-:101F3000BC0189819A810E942D0C8091E8008B77E9
-:101F40008093E80031C0203879F58091E800877FE0
-:101F50008093E8008091EE018093F1008091E80089
-:101F60008E778093E8000E94C40C1EC021111CC013
-:101F70009091F5019230C0F48091E800877F8093C2
-:101F8000E8009093EE010E94C40C8091EE01811153
-:101F900004C08091E30087FF02C084E001C081E0BB
-:101FA0008093F2010E94120A8091E80083FF0AC028
-:101FB0008091E800877F8093E8008091EB00806249
-:101FC0008093EB00AA960FB6F894DEBF0FBECDBF8C
-:101FD000DF91CF911F9108950895CF938091F201E1
-:101FE0008823B1F08091E9008F709091EC0090FF10
-:101FF00002C090E801C090E0C92FC82B1092E90000
-:102000008091E80083FD0E949E0ECF70C093E9008E
-:10201000CF91089590937301809372010895E09198
-:102020007201F0917301309721F00190F081E02D61
-:10203000099480E00895E0917201F0917301309766
-:1020400021F00280F381E02D09940895E09172015E
-:10205000F0917301309721F00480F581E02D09940F
-:10206000089520917001309171018217930771F0EA
-:102070009093710180937001E0917201F09173016E
-:10208000309721F00680F781E02D09940895209182
-:102090006E0130916F018217930771F090936F0179
-:1020A00080936E01E0917201F0917301309721F0FD
-:1020B0000084F185E02D0994089508950C945D1035
-:1020C0000E94D41C0E94B5040C94981D9F92AF925C
-:1020D000BF92CF92DF92EF92FF920F931F93CF9315
-:1020E000DF9300D000D000D0CDB7DEB70E94CD0482
-:1020F00083E8E82E81E0F82E0DE010E0CC24C394B4
-:10210000D12C902E802F0E94BA05F701B2907F014A
-:10211000B826A1F401501109A0F78FEF89838A83B3
-:102120001B820E94DD1C8160782F9D838C834981F6
-:102130005A816B818D810E94001131C09091DD0127
-:1021400091FF04C08E830E94C0058E8125E030E09F
-:10215000A601022E01C0440F0A94EAF7A42E4B21D7
-:10216000D1F029839A828A2191E009F490E09B833F
-:102170000E94DD1C8160782F9D838C8349815A8168
-:102180006B818D810E940011F801EB58FE4F808118
-:102190008A25808304C021503109D0F6BBCF0E942C
-:1021A0007C20109174010E940F101817B9F00E9442
-:1021B0000F108093740126960FB6F894DEBF0FBE01
-:1021C000CDBFDF91CF911F910F91FF90EF90DF90E6
-:1021D000CF90BF90AF909F900C941D0926960FB69C
-:1021E000F894DEBF0FBECDBFDF91CF911F910F914D
-:1021F000FF90EF90DF90CF90BF90AF909F900895A9
-:10220000CF93DF93CDB7DEB72B970FB6F894DEBF31
-:102210000FBECDBF4F83588769877A878B87DE01D2
-:10222000119686E0FD0111928A95E9F785E0FE019D
-:10223000379601900D928A95E1F749815A816B8119
-:102240007C818D819E810E94B9172B960FB6F894E0
-:10225000DEBF0FBECDBFDF91CF910895CF93C82FC2
-:10226000882309F4C1C0823859F40E940F1081FDFF
-:10227000BBC089E30E94001B0E94D71B89E30CC0EE
-:10228000833879F40E940F1080FDAEC083E50E9470
-:10229000001B0E94D71B83E50E94401BCF910C942A
-:1022A000D71B843859F40E940F1082FD9DC087E42B
-:1022B0000E94001B0E94D71B87E4EECF8CEF8C0F8F
-:1022C000813A48F48C2F0E94A82281118DC08C2F56
-:1022D0000E94001BE3CF80E28C0F883048F4C77067
-:1022E00081E001C0880FCA95EAF70E94841BD6CF0F
-:1022F0008BE58C0F833078F4C53A29F0C63A31F477
-:1023000082E890E005C081E890E002C083E890E0B8
-:10231000CF910C94311088E58C0F833108F064C0A4
-:10232000C83A39F1C93A41F1CA3A49F1CB3A51F1C7
-:10233000CC3A59F1CD3A61F1C03B69F1CE3A71F135
-:10234000CF3A79F1C13B81F1C23B89F1C33B91F1B5
-:10235000C43B99F1C53BA1F1C63BA9F1C73BB1F123
-:10236000C83BB9F1C93BC1F1CA3BC9F58AE292E069
-:1023700038C082EE90E035C089EE90E032C08AEE3F
-:1023800090E02FC085EB90E02CC086EB90E029C058
-:1023900087EB90E026C08CEC90E023C08DEC90E0C1
-:1023A00020C083E891E01DC08AE891E01AC082E96C
-:1023B00091E017C084E991E014C081E292E011C07D
-:1023C00083E292E00EC084E292E00BC085E292E0EC
-:1023D00008C086E292E005C087E292E002C080E099
-:1023E00090E0CF910C944710CF910895882309F481
-:1023F0004BC0823859F40E940F1081FF45C089E319
-:102400000E94001B0E94D71B89E30CC0833871F423
-:102410000E940F1080FF38C083E50E94001B0E94BD
-:10242000D71B83E50E94401B0C94D71B843859F4BA
-:102430000E940F1082FF28C087E40E94001B0E94A8
-:10244000D71B87E4EFCF9CEF980F913A58F390E2B7
-:10245000980F983050F4877091E001C0990F8A95D9
-:10246000EAF7892F0E948A1BDFCF9BE5980F9330F4
-:1024700020F480E090E00C943110885A833120F4ED
-:1024800080E090E00C9447100895882321F00E948A
-:10249000841B0C94D71B0895882321F00E948A1B6B
-:1024A0000C94D71B08958F929F92AF92BF92CF92B8
-:1024B000DF92EF92FF920F931F93CF93DF934C0124
-:1024C000A62EC72FFC01E280D581D295DF700E9435
-:1024D0009B1A882319F082E00E94DE1AE1100E9404
-:1024E000A11B0E94F91A882379F0EE2069F080E29E
-:1024F0008A0D883048F082E00E94DE1A0E94F91AA4
-:10250000BB24B394B82601C0B12CEC2FE295EF7038
-:10251000F0E0E05AFF4F0C9476248C2F807F1C2F24
-:102520001F70882311F01295107FEE2089F011237F
-:1025300009F4C9C180E28A0D883020F4812F0E94FD
-:10254000841B03C0812F0E94941B0E94D71BBBC118
-:102550008A2D0E94F611112309F4CFC180E28A0D61
-:10256000883020F4812F0E948A1B03C0812F0E9493
-:102570009A1B0E94D71BC1C18C2F807F1C2F1F70FC
-:10258000803211F01295107FAA2021F0F1E0AF16F1
-:1025900039F12FC0EE2091F0DD2309F41DC1D130B7
-:1025A00021F4812F0E94B41BA8C1D23009F014C1BC
-:1025B0000E94BD1B812F0E94681A0EC1DD2369F0A5
-:1025C000D13041F40E94811B812309F496C10E94FD
-:1025D0006B1A03C0D23009F490C10E94BD1B02C126
-:1025E000EE2021F0D23008F088C1F6C0D11185C1AB
-:1025F000F9C0EE2021F0DD2309F4EEC064C1DD2333
-:1026000009F4F0C067C12C2F26952695237030E081
-:102610002115310521F02130310561F06EC1EE2028
-:1026200021F08A2D9C2F937002C080E090E00E94E0
-:10263000311063C1EE2021F08A2D9C2F937002C0CF
-:1026400080E090E00E94471058C18A2DEE2019F0DA
-:102650000E94841F02C00E94EC1F0E9471204DC185
-:102660008C2F837009F04EC0E11047C12A2D2295AE
-:1026700026952770220F220F8A2D8F70C82ED12CFD
-:10268000E12CF12C022E04C0CC0CDD1CEE1CFF1C36
-:102690000A94D2F7A4FE10C06FE070E080E090E0F2
-:1026A00004C0660F771F881F991F2A95D2F760957F
-:1026B00070958095909503C060E070E0CB012C2F61
-:1026C00026952695237030E02230310569F02330BD
-:1026D000310589F06C297D298E299F29213031050A
-:1026E00071F00E940D1909C16C297D298E299F293D
-:1026F0000E94271902C10E940D19C701B6010E944C
-:10270000F318FBC0EE2019F08C2F817001C0869564
-:10271000882309F4F2C02A2D229526952770220FCE
-:10272000220F8A2D8F70C82ED12CE12CF12C022E75
-:1027300004C0CC0CDD1CEE1CFF1C0A94D2F7A4FED6
-:1027400010C06FE070E080E090E004C0660F771F7B
-:10275000881F991F2A95D2F760957095809590955E
-:1027600003C060E070E0CB012C2F269526952370E6
-:1027700030E02230310569F02330310589F06C29D1
-:102780007D298E299F292130310571F00E94E119A0
-:10279000B4C06C297D298E299F290E94FB19ADC0E8
-:1027A0000E94E119C701B6010E94C719A6C00A2DEF
-:1027B00010E0F801E05EF109E531F10508F07EC0B6
-:1027C000E059FF4F0C9476241A2D1F708C2F8F71B7
-:1027D000EE2031F00E946019812F0E9445128DC0B9
-:1027E0000E948119812F0E944C1287C0EE2039F07F
-:1027F000D11183C08C2F8F710E94A6197EC0D23058
-:1028000008F07BC0F7CFEE2039F08C2F8F710E943B
-:10281000601973C0EE20C9F38C2F8F710E9481194B
-:102820006CC0EE2029F08C2F8F710E944B1965C06F
-:102830000E94411962C0EE20B9F00E94651A0E9400
-:102840008A1B0E94971A843029F40E94D71A8C2F71
-:102850008F7164C0D23008F06FC0CF718C2F0E948E
-:10286000601963E08C2F0DC00E94651A0E94841BC2
-:10287000D230A8F00E94D71A0E946B1A64E08C2F05
-:102880008F71DF91CF911F910F91FF90EF90DF90AB
-:10289000CF90BF90AF909F908F900C94C71A81E01B
-:1028A000DF91CF911F910F91FF90EF90DF90CF902C
-:1028B000BF90AF909F908F900C94DE1AEE2039F06D
-:1028C000DD2309F4A2CF8A2D0E942E1116C0DD232C
-:1028D00009F4A2CF8A2D0E94F6110FC04C2F4F7021
-:1028E0006A2DC4010E94A2020E94661806C04C2FE5
-:1028F0004F706A2DC4010E942F06BB20E9F00E9490
-:10290000971A80FD19C0F40112820E94911A0E9448
-:102910006019C4010E94A9140E94911ADF91CF91FD
-:102920001F910F91FF90EF90DF90CF90BF90AF90ED
-:102930009F908F900C948119DF91CF911F910F91EF
-:10294000FF90EF90DF90CF90BF90AF909F908F90CF
-:1029500008950F931F93CF93DF93EC012881398162
-:102960008B819C81892B31F03F3F11F080E003C0C7
-:102970002F3FE1F781E0811113C0CE010E94D905FC
-:10298000882371F0688179818A810E94611A8C01A3
-:102990000E94151A0E94E818B801CE010E94531235
-:1029A000DF91CF911F910F9108950E94A11B0E946A
-:1029B000B11B0E94731B0E94D71B0E941D210E9405
-:1029C000712080E090E00E94311080E090E00C9453
-:1029D00047100E94911B0C94D5140E94561A292F5F
-:1029E00022952F7030E02C3031054CF42A3031051F
-:1029F0006CF42250310922303105B0F407C02C307C
-:102A0000310571F02F30310559F00EC0803F31F0A3
-:102A100018F4803E48F402C0843F31F481E0089508
-:102A200093FB882780F9089580E00895CF93DF9382
-:102A300000D000D01F92CDB7DEB70F900F900F904F
-:102A40000F900F90DF91CF910895CF93DF9300D037
-:102A500000D000D0CDB7DEB726960FB6F894DEBF13
-:102A60000FBECDBFDF91CF9108951F93CF93DF931A
-:102A7000C091830116E080918401C81799F0D0E0DD
-:102A80001C9FF0011D9FF00D1124EB57FE4F40815C
-:102A9000518162817381848195810E9425152196DF
-:102AA000C770E9CFDF91CF911F9108954091B50193
-:102AB0005091B6016091B7017091B8018091B90150
-:102AC0009091BA010C942515CF938091BA0182950B
-:102AD0008F7009F05FC08091B701882309F45AC054
-:102AE00020918301A09184016091B5017091B6019C
-:102AF0008091B8019091B90131E06F3F09F030E069
-:102B0000B32FC6E02A1709F445C0009721F07F3F94
-:102B100021F44B2F03C041E001C040E030E040FD14
-:102B200035C0C29FF001C39FF00D1124EB57FE4F3B
-:102B3000418174132BC04081641328C0428141112C
-:102B400025C0438154814817590710F44150510959
-:102B5000481B590B483C5105C8F48091BA018F704D
-:102B600080618093BA0186E0829FF001839FF00D1F
-:102B70001124E657FE4F80818F708061808385EB42
-:102B800091E00E94A914CF910C9435152F5F3F4F0F
-:102B90002770B8CFCF910895CF92DF92EF92FF9236
-:102BA0000F931F93CF93DF93CDB7DEB762970FB626
-:102BB000F894DEBF0FBECDBF8C0185E0F801DE01C9
-:102BC0001D9601900D928A95E1F7D8014C911196CE
-:102BD0005C91119712966C9112971396ED90FC9060
-:102BE00014977091B501E091B6012091B801309130
-:102BF000B9012115310531F0EF3F31F481E07F3F1C
-:102C000019F403C081E001C080E0B82FB170CB2E71
-:102C100080FD6CC1D090B701DD2009F4F5C0F091C2
-:102C2000BA01E216F30638F0C701821B930B883C09
-:102C3000910548F09BC0209530952E0D3F1D283CF6
-:102C4000310508F093C08F2F807F09F052C0E51343
-:102C500014C0741312C0D62E61110FC0FF70F06142
-:102C6000F093BA010E94561585EB91E00E94A914D9
-:102C70008091BA01F80185836CC1EF2831F05F3F84
-:102C800031F481E04F3F19F403C081E001C080E0DE
-:102C900080FD03C081E0862701C080E0F82FF1703D
-:102CA000FF2E80FF1CC0809183012091840136E0BB
-:102CB000821709F428C190E0389FF001399FF00D88
-:102CC0001124EB57FE4F7181571306C070814713D3
-:102CD00003C07281671303C001968770E9CFD62EB7
-:102CE000662309F436C18091BA0181608093BA01EC
-:102CF00053C0E51308C0741306C0611104C0D801A5
-:102D00001596FC93AEC04D875E878D859E856A8B38
-:102D10000E94ED146A89882329F1D62E662311F1C9
-:102D20002091BA01822F82958F7090E002970CF467
-:102D300060C08091B5019091B60198878F83198604
-:102D4000FB86EA862C87CE01079651C0E51731F144
-:102D50004D875E878D859E856A8B0E94ED146A89FA
-:102D600081112EC0C8010E94A914A4C08F2F807F9A
-:102D700069F77E2DF98AE88A89890E94161585EB04
-:102D800091E00E94A914E5EBF1E086E0DF011D92DD
-:102D90008A95E9F70E945615D12CDBC07413D8CF61
-:102DA0006111D6CFD8011596FC93C8010E94A914D1
-:102DB000E5EBF1E086E0DF011D928A95E9F7C9C0F5
-:102DC000D62E662379F22091BA01822F82958F70D8
-:102DD00090E0029774F08091B5019091B6019A83CA
-:102DE00089831B82FD82EC822E83CE0101960E9494
-:102DF000A91486E0F801A5EBB1E001900D928A9547
-:102E0000E1F70E9464156FC0E216F30628F0C701CF
-:102E1000821B930B9C0104C0209530952E0D3F1D05
-:102E2000283C310508F052C0D62E662309F49ACF0B
-:102E3000E5132CC074132AC08091BA0180FD1DC017
-:102E4000982F92959F70C9F0D80115968C9315977D
-:102E50009F3039F09F5F9295907F8F70892B1596E8
-:102E60008C93C8010E94A91486E0F801A5EBB1E09B
-:102E700001900D928A95E1F736C086E0F801A5EB46
-:102E8000B1E001900D928A95E1F763C04D875E87AE
-:102E90008D859E850E94ED14882379F086E0F801E7
-:102EA000A5EBB1E001900D928A95E1F70E946415BF
-:102EB0000E945615DD24D3944CC08091BA018160E4
-:102EC0008093BA01C8010E94A91443C07E2DF98ADB
-:102ED000E88A89890E941615E5EBF1E086E0DF01BA
-:102EE0001D928A95E9F70E94561533C0662309F4AE
-:102EF00039CF4D875E878D859E850E94ED1488238E
-:102F000009F430CFCBCF4D875E878D859E850E949B
-:102F1000561A292F22952F7030E0223031052CF4DB
-:102F20009F7041F0811106C00CC0243031052CF493
-:102F30009F7049F4805E883020F0C8010E94A91477
-:102F4000CF2CDC2C06C0D80115969C91907F91F770
-:102F5000F8CF8D2D62960FB6F894DEBF0FBECDBFB1
-:102F6000DF91CF911F910F91FF90EF90DF90CF9065
-:102F700008951F93CF93DF93CDB7DEB72C970FB68D
-:102F8000F894DEBF0FBECDBF4F83588769877A871D
-:102F90008B879C87CE0107960E94CC158823C1F0B1
-:102FA0002F8138858A859B85892B31F03F3F11F031
-:102FB00080E003C02F3FE1F781E0811147C04F81DE
-:102FC000588569857A858B859C850E9425153EC02C
-:102FD00086E0FE013796DE01119601900D928A95EA
-:102FE000E1F7FF81E8854A855B854115510531F0A0
-:102FF000EF3F31F481E0FF3F19F403C081E001C0ED
-:1030000080E080FD23C02091840130E0C901019659
-:10301000877099276091830170E086179707F1F117
-:10302000F983EA835D834C8396E0929FD001939F5E
-:10303000B00D1124AB57BE4FFE01319601900D9299
-:103040009A95E1F7809384010E94351516E08091EE
-:10305000830190918401891779F1189FC00111248F
-:103060008B579E4F0E94CC15882331F1E09183014C
-:103070001E9FF0011124EB57FE4F40815181628168
-:103080007381848195810E9425158091830190E050
-:1030900001968770992780938301D9CF0E94E91404
-:1030A0001092840110928301E5EBF1E086E0DF01EC
-:1030B0001D928A95E9F7CACF2C960FB6F894DEBF19
-:1030C0000FBECDBFDF91CF911F910895EF92FF9278
-:1030D0000F931F93CF93DF939C01009709F471C066
-:1030E000F12CEE24E394E9012196F90184918437CF
-:1030F00040F4843008F056C0813081F0823021F1F4
-:1031000060C0853709F449C0C0F19CE7980F90373B
-:1031100008F057C08F770E94F61146C089010E5FF4
-:103120001F4FFE01849190E2980F983050F4877001
-:10313000FE2D01C0FF0F8A95EAF78F2F0E94A41B76
-:1031400015C00E942E1114C089010E5F1F4FFE0191
-:10315000849190E2980F983068F48770FE2D01C03A
-:10316000FF0F8A95EAF78F2F0E94AA1B0E94D71B98
-:10317000E8011AC00E94F611FBCF2E5F3F4FFE01FF
-:10318000C491CC2341F08FE99FE00197F1F700C093
-:103190000000C150F6CFE90107C0FE01F490E9013B
-:1031A000229602C00E942E118F2D882341F0EFE954
-:1031B000FFE03197F1F700C000008150F6CF9E018B
-:1031C00092CFDF91CF911F910F91FF90EF900895D3
-:1031D00008956093BF017093C0018093C1019093E3
-:1031E000C2010C94D5140F931F930091BF0110914D
-:1031F000C0012091C1013091C201062B172B282B51
-:10320000392B0093BF011093C0012093C10130936B
-:10321000C2011F910F910C94D5140F931F9300912D
-:10322000BF011091C0012091C1013091C20106235C
-:103230001723282339230093BF011093C001209343
-:10324000C1013093C2011F910F910C94D5140F93BB
-:103250001F930091BF011091C0012091C1013091D5
-:10326000C20106271727282739270093BF0110938B
-:10327000C0012093C1013093C2011F910F910C94A2
-:10328000D5141092BB011092BC011092BD01109296
-:10329000BE010C94D51441E050E060E070E004C041
-:1032A000440F551F661F771F8A95D2F74093BB01C5
-:1032B0005093BC016093BD017093BE010C94D51472
-:1032C00041E050E060E070E004C0440F551F661F0D
-:1032D000771F8A95D2F78091BB019091BC01A09194
-:1032E000BD01B091BE01842B952BA62BB72B8093EB
-:1032F000BB019093BC01A093BD01B093BE010C949F
-:10330000D51441E050E060E070E004C0440F551F68
-:10331000661F771F8A95D2F74095509560957095F6
-:103320008091BB019091BC01A091BD01B091BE0103
-:1033300084239523A623B7238093BB019093BC01DC
-:10334000A093BD01B093BE010C94D51441E050E0B0
-:1033500060E070E004C0440F551F661F771F8A9518
-:10336000D2F78091BB019091BC01A091BD01B091B9
-:10337000BE0184279527A627B7278093BB0190938A
-:10338000BC01A093BD01B093BE010C94D5140F9362
-:103390001F930091BB011091BC012091BD013091A0
-:1033A000BE01062B172B282B392B0093BB01109342
-:1033B000BC012093BD013093BE011F910F910C946D
-:1033C000D5140F931F930091BB011091BC01209164
-:1033D000BD013091BE010623172328233923009312
-:1033E000BB011093BC012093BD013093BE011F911E
-:1033F0000F910C94D5140F931F930091BB01109162
-:10340000BC012091BD013091BE0106271727282756
-:1034100039270093BB011093BC012093BD01309369
-:10342000BE011F910F910C94D5140895CF92DF9295
-:10343000EF92FF920F931F93CF93DF93EC01C09015
-:10344000BF01D090C001E090C101F090C201809115
-:10345000BB019091BC01A091BD01B091BE01C82AF1
-:10346000D92AEA2AFB2A0FE110E0B701A601002EB3
-:1034700004C076956795579547950A94D2F740FD15
-:1034800005C00150110988F780E007C0BE01802FF8
-:103490000E9482080197A9F3802FDF91CF911F919D
-:1034A0000F91FF90EF90DF90CF900895CF93DF932F
-:1034B000EC010E94161ABE010E948208DF91CF9192
-:1034C0000895CB010E94561A08958091C80108956D
-:1034D0008093C80108951092C80108950E94DD1CD0
-:1034E0002091C6013091C7018217930750F00E94C6
-:1034F000DD1C2091C6013091C701821B930B9C01FA
-:103500000AC00E94DD1C2091C6013091C7012095A0
-:103510003095280F391F81E0283B3B4008F480E0BC
-:1035200008958091C501859585958595089580912B
-:10353000C501877008950E94DD1C2091C301309160
-:10354000C4018217930768F00E94DD1C2091C3011B
-:103550003091C401821B930B883B9B4078F480E040
-:1035600014C00E94DD1C2091C3013091C40120953C
-:103570003095280F391F283B3B4088F38091C501C7
-:1035800082FB882780F991E089278170089598E06F
-:10359000899F90011124622B6093C5010E946019DC
-:1035A0000E94DD1C9093C4018093C3010895109282
-:1035B000C5011092C4011092C30108954091C50144
-:1035C000809584238093C501982F977089F450E0EB
-:1035D000282F332727FD30954217530749F085954B
-:1035E000859585950E9481191092C4011092C3019E
-:1035F00008959091C501977081E009F480E00895E5
-:1036000090910C019923D9F090910D019923B9F073
-:10361000982F9695969596959F3088F5E0910E0196
-:10362000F0910F01E90FF11D877021E030E001C03A
-:10363000220F8A95EAF78181822B81830895409138
-:103640000E0150910F0120E030E09FEFFA01E20FF0
-:10365000F31F6281681799F09F3F19F4611101C04F
-:10366000922F2F5F3F4F2E30310581F79F3F39F06A
-:10367000FA01E90FF11D97FDFA95828308950895E7
-:1036800090910C019923E1F090910D019923C1F0E3
-:10369000982F9695969596959F3020F5E0910E017E
-:1036A000F0910F01E90FF11D877021E030E001C0BA
-:1036B000220F8A95EAF72095818128232183089596
-:1036C00040910E0150910F0120E030E0FA01E20F2D
-:1036D000F31F9281981301C012822F5F3F4F2E304B
-:1036E0003105A1F7089581E090E0E0910E01F0919D
-:1036F0000F01E80FF91F1082019680319105A9F79B
-:1037000008958091DC0108959091DC01982B9093AD
-:10371000DC01089580959091DC0198239093DC0161
-:1037200008951092DC0108959091DB01982B9093FD
-:10373000DB01089580959091DB0198239093DB0144
-:1037400008951092DB0108959091DA01982B9093DF
-:10375000DA01089580959091DA0198239093DA0127
-:1037600008951092DA0108958093C9010E94DD1C2A
-:103770009093C7018093C60108951092C9011092D9
-:10378000C7011092C601089540910E0150910F019A
-:1037900020E030E080E0FA01E20FF31F9181911107
-:1037A0008F5F2F5F3F4F2F303105A9F70895E091CC
-:1037B0000E01F0910F018091DC018083E0910E01F8
-:1037C000F0910F0180819091DB01892B8083E09142
-:1037D0000E01F0910F0180819091DA01892B808395
-:1037E0008091C901882399F00E946E1A81110E946C
-:1037F000BD1BE0910E01F0910F0180819091C901F4
-:10380000892B80830E94C41B81110E94BD1B809163
-:103810000E0190910F010C941B1040E0009739F0BD
-:103820009C0121503109822393234F5FF7CF842FCE
-:103830000895CF92DF92EF92FF920F931F936C0146
-:10384000EE24FF24C114D104E104F10421F46B013E
-:103850007C0180E001C080E133272F2D1E2D0D2D2E
-:10386000011511052105310519F0885F68017901FD
-:1038700097018601A4E03695279517950795AA9597
-:10388000D1F7011511052105310519F08C5F68018B
-:10389000790197018601F2E03695279517950795EE
-:1038A000FA95D1F7011511052105310519F08E5F43
-:1038B00068017901B701A6017695679557954795F7
-:1038C000452B462B472B09F08F5F1F910F91FF90DF
-:1038D000EF90DF90CF9008958091F201843021F134
-:1038E0001092DE0120E488E190E00FB6F894A895EC
-:1038F000809360000FBE2093600080E00E941D094D
-:1039000083B7817F846083BF83B7816083BF7894EE
-:10391000889583B78E7F83BF88E10FB6F894809334
-:103920006000109260000FBE0895089508950E94EF
-:10393000951C0E94CD040E94961C0E94C10591E036
-:10394000811101C090E0892F08950E94E9140E941E
-:103950000F100C941D091F920F920FB60F92112495
-:103960008F939F93AF93BF938091DE01811113C01A
-:103970008091DF019091E001A091E101B091E2011D
-:103980004196A11DB11D8093DF019093E001A093AA
-:10399000E101B093E201BF91AF919F918F910F90A0
-:1039A0000FBE0F901F90189582E084BD93E095BDE7
-:1039B0009AEF97BD80936E0008952FB7F894809189
-:1039C000DF019091E001A091E101B091E2012FBFF0
-:1039D0000895CF92DF92EF92FF920F931F932FB72C
-:1039E000F8944091DF015091E0016091E101709104
-:1039F000E2012FBF6A017B01EE24FF248C0120E04D
-:103A000030E0C016D106E206F30610F44150510929
-:103A1000481B590BCA011F910F91FF90EF90DF9047
-:103A2000CF9008951F920F920FB60F9211248F938B
-:103A30009F93AF93BF938091DF019091E001A0919C
-:103A4000E101B091E2010196A11DB11D8093DF015A
-:103A50009093E001A093E101B093E201BF91AF9197
-:103A60009F918F910F900FBE0F901F9018950E94FD
-:103A7000150DF8942FEF87EA91E621508040904091
-:103A8000E1F700C0000087E090EBDC018093FC01CF
-:103A90009093FD01A093FE01B093FF012CE088E11B
-:103AA00090E00FB6F894A895809360000FBE209325
-:103AB0006000FFCFEF92FF920F931F93CF93DF939E
-:103AC000E82E8DE0F82E8F2D0E94BA05C5E0D0E0DB
-:103AD000082F10E098010C2E02C0359527950A9406
-:103AE000E2F720FF09C06C2F7F2D80E00E94300696
-:103AF000E81202C081E007C0219760F7FA948FEFC7
-:103B0000F812E1CF80E0DF91CF911F910F91FF90EC
-:103B1000EF900895CF93C82F8CE20E945A1D8823FE
-:103B200021F08C2FCF910C945A1D80E0CF910895F5
-:103B3000CF930E94DD1E811102C00E94C31EC5E604
-:103B4000C15049F00E94CD048FE39CE90197F1F741
-:103B500000C00000F5CF89E20E948A1D811111C1C9
-:103B60008AE20E948A1D81110E94C31E85E00E9484
-:103B70008A1D81110E94371D0E94E81E8093DD017D
-:103B800087E00E948A1D882399F18BE10E948A1D9B
-:103B9000882351F09091DD0191FB882780F921E085
-:103BA000822780FB91F922C08EE00E948A1D882323
-:103BB00051F09091DD0192FB882780F921E0822766
-:103BC00080FB92F913C080E10E948A1D9091DD0173
-:103BD000882341F093FB882780F921E0822780FB2E
-:103BE00093F904C0892F809580FB90F99093DD01B3
-:103BF0008091DD010E94EC1E0E94FA1E8093FB0161
-:103C000080EE0E948A1D882341F08091FB01982F4D
-:103C1000909590FB80F98093FB0189E30E948A1DB7
-:103C2000882359F09091FB0191FB882780F921E0CE
-:103C3000822780FB91F99093FB0182EE0E948A1DFE
-:103C4000882359F09091FB0192FB882780F921E0AD
-:103C5000822780FB92F99093FB0186EE0E948A1DD9
-:103C6000882359F09091FB0193FB882780F921E08C
-:103C7000822780FB93F99093FB0183EE0E948A1DBB
-:103C8000882359F09091FB0194FB882780F921E06B
-:103C9000822780FB94F99093FB0185E30E948A1DA3
-:103CA000882359F09091FB0195FB882780F921E04A
-:103CB000822780FB95F99093FB0181E30E948A1D86
-:103CC000882359F09091FB0196FB882780F921E029
-:103CD000822780FB96F99093FB0181E10E948A1D67
-:103CE000882359F09091FB0197FB882780F921E008
-:103CF000822780FB97F99093FB018091FB010E9442
-:103D0000FE1E8091FB0187FB882780F980930D01BF
-:103D100087E20E948A1DC82F8EE10E948A1D8111B0
-:103D2000C2608FE10E948A1D8111C46080E20E94FE
-:103D30008A1D8111C86081E20E948A1D8111C061C3
-:103D400082E20E948A1D8111C06283E20E948A1D64
-:103D50008111C06484E20E948A1D882311F0C0682A
-:103D600002C0CC2329F08C2F0E94F51E6C2F03C0BB
-:103D70000E94F11E682F70E080E090E0CF910C94DB
-:103D8000E918CF9108956DEE7EEF80E090E00E94FB
-:103D9000B02460E082E090E00E949E2460E083E036
-:103DA00090E00E949E2460E084E090E00E949E24C7
-:103DB00060E085E090E00C949E2480E090E00E941A
-:103DC000982421E08D3E9E4F09F020E0822F089537
-:103DD00082E090E00C949024682F82E090E00C94B4
-:103DE0009E2483E090E00C949024682F83E090E080
-:103DF0000C949E2484E090E00C949024682F84E03E
-:103E000090E00C949E248091E50180FF0BC06091AE
-:103E1000130185E0689FB00111247595679575952C
-:103E200067952AC081FF09C06091130185E0689FF2
-:103E3000B0011124759567951FC082FF07C060917E
-:103E4000130185E0689FB001112416C04091E6017E
-:103E50004423C9F060911201461788F7209113019D
-:103E600085E0289F90011124429FC001439F900D3F
-:103E7000112470E00E9462246038710540F46115DD
-:103E8000710539F002C065E070E0862F08958FE774
-:103E9000089581E008958091E50180FF08C0609158
-:103EA000110170E0759567957595679521C081FF43
-:103EB00006C06091110170E07595679519C082FF89
-:103EC00004C06091110170E010C08091E601882368
-:103ED000C1F0609110018617A0F790911101989F91
-:103EE000C001112470E00E9462246038710528F43A
-:103EF0006115710521F0862F08958FE7089581E0FF
-:103F0000089561E070E0F4CF803F21F40E94031F28
-:103F1000819504C0813F29F40E94031F8093E90129
-:103F20000895823F21F40E94031F819504C0833FBE
-:103F300029F40E94031F8093E8010895893F19F432
-:103F40000E944B1F05C08A3F31F40E944B1F819590
-:103F50008093EA0108958B3F21F40E944B1F8195C5
-:103F600004C08C3F29F40E944B1F8093EB010895FD
-:103F7000843F21F48091E701816017C0853F21F4DF
-:103F80008091E701826011C0863F21F48091E701B2
-:103F900084600BC0873F21F48091E701886005C0F1
-:103FA000883F31F48091E70180618093E7010895B3
-:103FB0008D3F21F48091E50181600BC08E3F21F49B
-:103FC0008091E501826005C08F3F29F48091E50171
-:103FD00084608093E5010895803F39F48091E90180
-:103FE00087FF6CC01092E90169C0813F29F480917C
-:103FF000E9011816BCF362C09091E801823F29F4F0
-:1040000097FF5CC01092E80159C0833F19F419165C
-:10401000CCF354C0893F41F48091EA0118160CF0AA
-:104020004DC01092EA014AC08A3F29F48091EA010A
-:1040300087FF44C0F6CF8B3F39F48091EB0187FFB7
-:104040003DC01092EB013AC08C3F29F48091EB0106
-:104050001816BCF333C0843F21F48091E7018E7FB2
-:1040600017C0853F21F48091E7018D7F11C0863F05
-:1040700021F48091E7018B7F0BC0873F21F4809171
-:10408000E701877F05C0883F31F48091E7018F7E8B
-:104090008093E70113C08D3F21F48091E5018E7F6D
-:1040A0000BC08E3F21F48091E5018D7F05C08F3FCD
-:1040B00029F48091E5018B7F8093E5018091E801EF
-:1040C00081110EC08091E90181110AC08091EA013D
-:1040D000811106C08091EB01811102C01092E601AE
-:1040E000089587EE91E00E9426100E94DD1C9093B7
-:1040F000E4018093E30108951F93CF93DF938091B0
-:10410000E3019091E4010E94E91C4091E6014423FF
-:1041100021F02091140130E006C0209115015AE0F1
-:10412000259F900111248217930708F482C0809183
-:10413000E8011091E901D091EA01C091EB018111F0
-:1041400007C0111105C0D11103C0CC2309F471C0FF
-:104150004F3F19F04F5F4093E601181624F40E9478
-:10416000031F8093E8018091E80187FF05C00E944A
-:10417000031F81958093E801111624F40E94031F08
-:104180008093E9018091E90187FF05C00E94031F28
-:1041900081958093E9016091E801662339F11091DE
-:1041A000E901112319F1772767FD7095872F972F64
-:1041B0000E94732323E333E343E35FE30E94D723A7
-:1041C0000E9440236093E801612F772767FD709577
-:1041D000872F972F0E94732323E333E343E35FE3A7
-:1041E0000E94D7230E9440236093E9011D1624F406
-:1041F0000E944B1F8093EA018091EA0187FF05C06E
-:104200000E944B1F81958093EA011C1624F40E94A2
-:104210004B1F8093EB018091EB0187FF05C00E944B
-:104220004B1F81958093EB01DF91CF911F910C94EF
-:104230007120DF91CF911F910895E7EEF1E085E0C5
-:10424000DF011D928A95E9F71092E6011092E501CF
-:104250000895833081F128F4813059F08230D1F013
-:104260000895853009F449C0B8F1863009F456C084
-:10427000089520911501862F90E0820F911D8F3FA8
-:10428000910520F4620F6093150108958FEF8093DC
-:104290001501089520911401862F90E0820F911D41
-:1042A0008F3F910520F4620F6093140108958FEF02
-:1042B00080931401089520911301862F90E0820FBE
-:1042C000911D8F3F910520F4620F609313010895B3
-:1042D0008FEF80931301089520911201862F90E0B3
-:1042E000820F911D8F3F910520F4620F60931201A0
-:1042F00008958FEF80931201089520911101862F68
-:1043000090E0820F911D8F3F910520F4620F609322
-:10431000110108958FEF80931101089520911001EC
-:10432000862F90E0820F911D8F3F910520F4620F40
-:104330006093100108958FEF8093100108958330EA
-:1043400011F128F4813049F0823091F008958530E0
-:1043500081F120F18630C1F108958091150168172F
-:1043600020F4861B8093150108951092150108957D
-:1043700080911401681720F4861B8093140108951E
-:1043800010921401089580911301681720F4861B80
-:1043900080931301089510921301089580911201E2
-:1043A000681720F4861B8093120108951092120161
-:1043B000089580911101681720F4861B80931101E4
-:1043C000089510921101089580911001681720F44A
-:1043D000861B8093100108951092100108958B316F
-:1043E00009F46AC008F58E3009F470C070F48730A3
-:1043F00009F452C018F48630B9F134C0883009F499
-:10440000A1C08B3009F49EC02DC0813109F479C060
-:1044100020F4803109F464C025C0863109F492C0CB
-:10442000893109F48FC01EC0853309F483C060F45C
-:10443000873209F47FC020F48E3108F06DC012C0BD
-:10444000893209F477C00EC0833438F48A3308F017
-:1044500061C0883309F476C005C0833409F46AC0AA
-:10446000883461F080E008958091DD01817F8E7F46
-:104470008093DD0181E08093ED0108950E94E914AD
-:104480002FEF83ED90E3215080409040E1F700C092
-:1044900000000E94371D56C09091DD01892F809544
-:1044A000817080FB90F919F09660986027C0997F21
-:1044B000977F9093DD0146C09091DD0191FB8827A5
-:1044C00080F921E0822780FB91F913C09091DD01F2
-:1044D00092FB882780F921E0822780FB92F909C0AE
-:1044E0009091DD0193FB882780F921E0822780FBF2
-:1044F00093F99093DD01882329F191609093DD0178
-:1045000008950E94E91480910D0191E0892780931C
-:104510000D0118C027EC01C023EE280F61E070E008
-:1045200080E090E004C0660F771F881F991F2A95CE
-:10453000D2F704C061E070E080E090E00E94E918EA
-:104540000E94E91481E0089580E0089580E00895D4
-:10455000CF93C82F8091ED01813079F018F082302F
-:10456000D1F184C0A0910E01B0910F018C918131E5
-:1045700069F0823209F07CC009C0A0910E01B091AF
-:104580000F018C91813111F0823249F48C2F0E94FD
-:10459000A42281111DC08C2F0E94EF211AC08C2FE4
-:1045A0000E94A622811114C0C43179F048F4CB30A6
-:1045B00079F0C03109F060C082E08093ED0108C05D
-:1045C000C93219F0C83321F057C01092ED0154C020
-:1045D00081E0817053C0C93289F118F5C43171F19D
-:1045E000A8F4C73009F046C08AE08093150194E131
-:1045F0009093140193E0909313018093120188E04B
-:104600008093110188E28093100134C0CE51C630EE
-:1046100088F5EC2FF0E0E65DFE4F80818093EC01A1
-:1046200029C0CE34E9F020F4CB3421F56AE013C080
-:10463000C13579F0C235F1F461E00DC08091EC0133
-:10464000882319F01092EC0115C081E08093ED01F0
-:1046500015C061E006C08091EC010E9429210AC0CA
-:104660006AE08091EC010E949F2104C01092ED014C
-:1046700080E004C081E002C080E0ABCFCF9108951C
-:1046800004D06894B1118DC0089570D088F09F5700
-:1046900090F0B92F9927B751A0F0D1F0660F771F8E
-:1046A000881F991F1AF0BA95C9F712C0B13081F06E
-:1046B00077D0B1E0089574C0672F782F8827B85F4E
-:1046C00039F0B93FCCF3869577956795B395D9F7CF
-:1046D0003EF490958095709561957F4F8F4F9F4FD9
-:1046E0000895E89409C097FB3EF4909580957095E5
-:1046F00061957F4F8F4F9F4F9923A9F0F92F96E92E
-:10470000BB279395F695879577956795B795F111A2
-:10471000F8CFFAF4BB0F11F460FF1BC06F5F7F4F3F
-:104720008F4F9F4F16C0882311F096E911C0772351
-:1047300021F09EE8872F762F05C0662371F096E85A
-:10474000862F70E060E02AF09A95660F771F881F29
-:10475000DAF7880F9695879597F9089557FD905841
-:10476000440F551F59F05F3F71F04795880F97FB35
-:10477000991F61F09F3F79F08795089512161306EF
-:104780001406551FF2CF4695F1DF08C0161617061E
-:104790001806991FF1CF8695710561050894089553
-:1047A000E894BB2766277727CB0197F908950BD0AC
-:1047B00078C069D028F06ED018F0952309F05AC05F
-:1047C0005FC01124EECFCADFA0F3959FD1F3950F00
-:1047D00050E0551F629FF001729FBB27F00DB11D85
-:1047E000639FAA27F00DB11DAA1F649F6627B00D15
-:1047F000A11D661F829F2227B00DA11D621F739FFE
-:10480000B00DA11D621F839FA00D611D221F749F0B
-:104810003327A00D611D231F849F600D211D822F52
-:10482000762F6A2F11249F5750408AF0E1F0882399
-:104830004AF0EE0FFF1FBB1F661F771F881F9150A6
-:104840005040A9F79E3F510570F014C0AACF5F3FBA
-:10485000ECF3983EDCF3869577956795B795F795D9
-:10486000E7959F5FC1F7FE2B880F911D9695879561
-:1048700097F9089597F99F6780E870E060E00895E0
-:104880009FEF80EC089500240A9416161706180668
-:104890000906089500240A94121613061406050644
-:1048A0000895092E0394000C11F4882352F0BB0FD5
-:1048B00040F4BF2B11F460FF04C06F5F7F4F8F4F38
-:1048C0009F4F089597FB072E16F4009407D077FDAD
-:1048D00009D00E947C2407FC05D03EF49095819578
-:1048E0009F4F0895709561957F4F0895EE0FFF1FBC
-:1048F0000590F491E02D0994AA1BBB1B51E107C060
-:10490000AA1FBB1FA617B70710F0A61BB70B881F5F
-:10491000991F5A95A9F780959095BC01CD010895EE
-:10492000F999FECF92BD81BDF89A992780B5089577
-:10493000A8E1B0E042E050E00C94B824262FF999A9
-:10494000FECF92BD81BDF89A019700B4021639F0EE
-:104950001FBA20BD0FB6F894FA9AF99A0FBE0895BF
-:104960000196272F0E949F240C949E24DC01CB01EA
-:10497000FC01F999FECF06C0F2BDE1BDF89A31966F
-:1049800000B40D9241505040B8F70895F894FFCF0D
-:1049900020021F09AC098909550922090101CA0130
-:1049A00028080A03140A3F4D363979042C04F6030B
-:1049B000BD035003690382039B0301020304050640
-:0449C00007080900DB
+:101290000E944F0B8091E8008E778093E8000F90BA
+:1012A0000F900F90DF91CF9108952091E9012430A4
+:1012B000F1F422E02093E9002FEF3091E800215073
+:1012C00035FD06C035ED3A95F1F700002111F5CF57
+:1012D0002091E80025FF0BC040E050E065E070E0A1
+:1012E0000E944F0B8091E8008E778093E80008956C
+:1012F000CF93DF93EC018091E901843009F046C07F
+:1013000090910C019923D9F090910D019923B9F096
+:101310008093E9008FEF9091E800815095FD06C021
+:1013200095E19A95F1F700008111F5CF8091E800E1
+:1013300085FF2CC040E050E060E170E017C081E024
+:101340008093E9008FEF9091E800815095FD06C0F1
+:1013500095ED9A95F1F700008111F5CF8091E800A5
+:1013600085FF14C040E050E068E070E0CE010E94CC
+:101370004F0B8091E8008E778093E80080E1FE01BA
+:10138000A5E5B1E001900D928A95E1F7DF91CF914B
+:1013900008958091E801811109C00E94E10C0E942A
+:1013A0003E0D8091E20084608093E20008951092E7
+:1013B000E8010895089508950C94661C42E061ECDC
+:1013C00081E00E945B0C42E061EC82E00E945B0CD9
+:1013D00042E061EC83E00E945B0C42E161EC84E05E
+:1013E0000C945B0C8091EB01833009F455C030F410
+:1013F000813071F0823009F48EC008958A3009F48A
+:101400007AC08B3009F460C0893009F09CC020C0DC
+:101410008091EA01813A09F096C08091E800877FC7
+:101420008093E8008091EE019091EF01892B21F0EB
+:1014300060E080E090E003C060E185E591E070E06D
+:101440000E94980B8091E8008B778093E8000895C4
+:101450008091EA01813209F076C08091EE0190918D
+:10146000EF01009719F0039709F06DC08091E80033
+:10147000877F8093E8008091E80082FD05C080911D
+:10148000E9018111F8CF5FC08091F100809365017F
+:101490008091E8008B7753C08091EA01813A09F08E
+:1014A00052C08091EE019091EF01892B09F04BC061
+:1014B0008091E800877F8093E8008091E80080FFBA
+:1014C000FCCF80910C0136C08091EA018132D9F5C0
+:1014D0008091EE019091EF01892BA9F58091E800B0
+:1014E000877F8093E8000E94900C8091EC018093AC
+:1014F0000C010C94AA148091EA01813221F58091AB
+:10150000E800877F8093E8000E94900C8091ED01B5
+:101510008093660108958091EA01813AA1F4809157
+:10152000E800877F8093E8008091E80080FFFCCF8F
+:10153000809166018093F1008091E8008E7780931E
+:10154000E8000C94900C089584B7877F84BF88E1ED
+:101550000FB6F89480936000109260000FBE90E088
+:1015600080E80FB6F89480936100909361000FBEFD
+:101570000E942A100E94E10C0E943E0D8091E20020
+:1015800084608093E20078940E94B90F0E942C102E
+:1015900082E091E00E94D60F8091E901853069F4E4
+:1015A0000E942D1C8091E7018823B1F30E94581CF2
+:1015B000882391F30E94390BEFCF0E943210ECCFB9
+:1015C000292F332723303105A9F06CF42130310560
+:1015D00009F442C02230310509F043C08DE690E0A5
+:1015E0002EE333E042C021323105C9F02232310509
+:1015F00019F137C099278130910541F0823091056A
+:1016000041F0892B71F5EAE3F3E005C0E2E2F3E093
+:1016100002C0EAE0F3E0849190E09F0126C06430CC
+:1016200000F5E62FF0E0EE0FFF1FEE5DFE4F20818C
+:10163000318189E090E019C0643098F4E62FF0E041
+:10164000DF01AA0FBB1FA65EBE4F2D913C91EA5E43
+:10165000FE4F808190E009C082E190E02BEA33E008
+:1016600004C080E090E020E030E0FA013183208384
+:10167000089580E189BD82E189BD09B400FEFDCFF6
+:101680008091D8008F7D8093D8008091E0008260A7
+:101690008093E0008091E00081FDFCCF0895CF921F
+:1016A000DF92EF92FF920F931F93CF93DF937C0112
+:1016B0008B01EA010E94B10C811131C0209731F0F9
+:1016C00088819981081B190BE80EF91EC12CD12CB9
+:1016D0000115110519F18091E80085FD14C0809174
+:1016E000E8008E778093E800209741F08881998107
+:1016F0008C0D9D1D9983888385E011C00E94B10CDB
+:10170000882331F30CC0F70181917F018093F100B0
+:1017100001501109FFEFCF1ADF0ADACF80E0DF9125
+:10172000CF911F910F91FF90EF90DF90CF90089590
+:101730002091F0013091F1012617370748F061152B
+:10174000710539F42091E8002E772093E80001C05C
+:10175000B901FC0120E061157105B9F18091E90141
+:10176000882309F440C0853009F43FC08091E80027
+:1017700083FD3DC08091E80082FF06C08091E800B3
+:1017800082FF26C080E008958091E80080FFE3CFCB
+:101790002091F3008091F20090E0922B6115710589
+:1017A00051F08830910538F421912093F100615077
+:1017B00071090196F3CF21E0089709F020E08091AC
+:1017C000E8008E778093E800C6CF2111C7CFD6CF2F
+:1017D0008091E901882339F0853039F08091E80063
+:1017E00083FFCCCF04C082E0089583E0089581E0B8
+:1017F00008952091F0013091F1012617370748F044
+:101800006115710539F42091E8002E772093E800E6
+:1018100001C0B901FC0120E061157105C1F18091A1
+:10182000E901882309F441C0853009F440C0809162
+:10183000E80083FD3EC08091E80082FF06C08091F1
+:10184000E80082FF27C080E008958091E80080FFD3
+:10185000E3CF2091F3008091F20090E0922B61158C
+:10186000710559F08830910540F424912093F100DE
+:101870003196615071090196F2CF21E0089709F085
+:1018800020E08091E8008E778093E800C5CF211199
+:10189000C6CFD5CF8091E901882339F0853039F062
+:1018A0008091E80083FFCBCF04C082E0089583E0FD
+:1018B000089581E00895982F973058F59093E900A6
+:1018C000981739F07091EC002091ED005091F000E4
+:1018D00003C0242F762F50E021FF19C03091EB0078
+:1018E0003E7F3093EB003091ED003D7F3093ED0073
+:1018F0003091EB0031603093EB007093EC0020935B
+:10190000ED005093F0002091EE0027FF07C09F5F8D
+:10191000D3CF8F708093E90081E0089580E008952F
+:101920008091EA0187FD05C08091E80080FF0EC02C
+:1019300012C08091E80082FD05C08091E90181110B
+:10194000F8CF08958091E8008B7708C08091E90175
+:101950008111EACF08958091E8008E778093E800A6
+:1019600008958091E4009091E50045E62091EC0017
+:1019700020FF21C02091E80020FD21C02091E90135
+:10198000222389F0253089F02091EB0025FD0FC03E
+:101990002091E4003091E5002817390739F34150D0
+:1019A00041F0C901E3CF82E0089583E0089581E02A
+:1019B000089584E008952091E80022FFDFCF80E0C1
+:1019C00008950E944F0D0E94570DE0EEF0E08081D7
+:1019D00081608083E8EDF0E080818F77808319BC9F
+:1019E000A7EDB0E08C918E7F8C9380818F7E808379
+:1019F0001092E80108950F931F93CF93DF930E94F5
+:101A00004F0D0E94570DC8EDD0E088818F778883F5
+:101A100088818068888388818F7D888319BC109233
+:101A2000E9011092E5011092E7011092E60100EE43
+:101A300010E0F80180818B7F8083888181608883BA
+:101A400042E060E080E00E945B0CE1EEF0E080812B
+:101A50008E7F8083E2EEF0E08081816080838081F0
+:101A600088608083F80180818E7F80838881806197
+:101A70008883DF91CF911F910F910895E8EDF0E0F9
+:101A800080818F7E8083E7EDF0E0808181608083BC
+:101A900084E082BF81E08093E8010C94FB0CE8EDC8
+:101AA000F0E080818E7F80831092E2000895109292
+:101AB000DA001092E10008951F920F920FB60F9274
+:101AC00011242F933F934F935F936F937F938F9343
+:101AD0009F93AF93BF93EF93FF938091E10082FFB9
+:101AE0000BC08091E20082FF07C08091E1008B7FF4
+:101AF0008093E1000E94B80F8091DA0080FF1FC040
+:101B00008091D80080FF1BC08091DA008E7F809387
+:101B1000DA008091D90080FF0DC080E189BD82E1AB
+:101B200089BD09B400FEFDCF81E08093E9010E94E8
+:101B3000C90905C019BC1092E9010E94D70980911A
+:101B4000E10080FF19C08091E20080FF15C0809104
+:101B5000E2008E7F8093E2008091E20080618093BA
+:101B6000E2008091D80080628093D80019BC85E0A3
+:101B70008093E9010E94DB098091E10084FF30C07D
+:101B80008091E20084FF2CC080E189BD82E189BDA3
+:101B900009B400FEFDCF8091D8008F7D8093D800DE
+:101BA0008091E1008F7E8093E1008091E2008F7E42
+:101BB0008093E2008091E20081608093E200809156
+:101BC000E501882311F084E007C08091E30087FFDE
+:101BD00002C083E001C081E08093E9010E94DC093A
+:101BE0008091E10083FF29C08091E20083FF25C03E
+:101BF0008091E100877F8093E10082E08093E9019A
+:101C00001092E5018091E1008E7F8093E100809148
+:101C1000E2008E7F8093E2008091E20080618093F9
+:101C2000E20042E060E080E00E945B0C8091F00006
+:101C300088608093F0000E94DA09FF91EF91BF91D4
+:101C4000AF919F918F917F916F915F914F913F9154
+:101C50002F910F900FBE0F901F9018951F920F920B
+:101C60000FB60F9211242F933F934F935F936F936F
+:101C70007F938F939F93AF93BF93CF93EF93FF93F4
+:101C8000C091E900CF708091EC001092E900809142
+:101C9000F000877F8093F00078940E946A0E109283
+:101CA000E9008091F00088608093F000C093E90023
+:101CB000FF91EF91CF91BF91AF919F918F917F91C4
+:101CC0006F915F914F913F912F910F900FBE0F90A9
+:101CD0001F9018951F93CF93DF93CDB7DEB7AA97C8
+:101CE0000FB6F894DEBF0FBECDBFEAEEF1E08091F3
+:101CF000F100819321E0E23FF207C9F70E94F20967
+:101D00008091E80083FF1CC12091EA013091EB0132
+:101D1000832F90E08A30910508F012C1FC01EA5A45
+:101D2000FF4F0C942022203881F0223809F008C19E
+:101D30008091EE018F708093E9008091EB0085FB2C
+:101D4000882780F91092E90006C08091E601909101
+:101D5000E701911182609091E800977F9093E800ED
+:101D60008093F1001092F100C5C0822F8D7F09F0A1
+:101D7000E7C0222319F0223061F0E2C08091EC012B
+:101D8000813009F0DDC0333009F080E08093E70155
+:101D900028C08091EC01811124C02091EE012F70A8
+:101DA00009F4CEC02093E9008091EB0080FF19C0B8
+:101DB0008091EB00333011F4806211C08061809318
+:101DC000EB0081E090E0022E01C0880F0A94EAF750
+:101DD0008093EA001092EA008091EB008860809383
+:101DE000EB001092E9008091E800877F86C0211106
+:101DF000A7C01091EC011F778091E3008078812BC0
+:101E00008093E3008091E800877F8093E8000E9440
+:101E1000900C8091E80080FFFCCF8091E300806807
+:101E20008093E300112311F083E001C082E08093EE
+:101E3000E90186C02058223008F082C08091EC0170
+:101E40009091ED018C3D23E0920779F583E08A8340
+:101E50008AE289834FB7F894DE01139620E03EE0D2
+:101E600051E2E32FF0E050935700E49120FF03C0CC
+:101E7000E295EF703F5FEF708E2F90E0EA3010F048
+:101E8000C79601C0C0968D939D932F5F243149F76B
+:101E90004FBF8091E800877F8093E8006AE270E09E
+:101EA000CE0101960E94980B14C0AE014F5F5F4FA8
+:101EB0006091EE010E94E00A009709F441C0209170
+:101EC000E800277F2093E800BC0189819A810E9465
+:101ED000F90B8091E8008B778093E80031C02038BF
+:101EE00079F58091E800877F8093E8008091E50193
+:101EF0008093F1008091E8008E778093E8000E9443
+:101F0000900C1EC021111CC09091EC019230C0F4C5
+:101F10008091E800877F8093E8009093E5010E941C
+:101F2000900C8091E501811104C08091E30087FF4E
+:101F300002C084E001C081E08093E9010E94DE09D3
+:101F40008091E80083FF0AC08091E800877F80933A
+:101F5000E8008091EB0080628093EB00AA960FB6B8
+:101F6000F894DEBF0FBECDBFDF91CF911F910895D2
+:101F70000895CF938091E9018823B1F08091E90021
+:101F80008F709091EC0090FF02C090E801C090E04B
+:101F9000C92FC82B1092E9008091E80083FD0E94B0
+:101FA0006A0ECF70C093E900CF91089590936C01B1
+:101FB00080936B010895E0916B01F0916C01309773
+:101FC00021F00190F081E02D099480E00895E091E6
+:101FD0006B01F0916C01309721F00280F381E02DCC
+:101FE00009940895E0916B01F0916C01309721F014
+:101FF0000480F581E02D09940895209169013091C4
+:102000006A018217930771F090936A0180936901C6
+:10201000E0916B01F0916C01309721F00680F7811F
+:10202000E02D09940895209167013091680182178D
+:10203000930771F09093680180936701E0916B01C1
+:10204000F0916C01309721F00084F185E02D099426
+:10205000089508950C9429100E94951C0E9449042B
+:102060000C94591D9F92AF92BF92CF92DF92EF9244
+:10207000FF920F931F93CF93DF9300D000D000D037
+:10208000CDB7DEB70E9461048CE7E82E81E0F82E20
+:102090000DE010E0CC24C394D12C902E802F0E9410
+:1020A0004E05F701B2907F01B826A1F40150110945
+:1020B000A0F78FEF89838A831B820E949E1C816018
+:1020C000782F9D838C8349815A816B818D810E94F9
+:1020D000CC1031C09091D60191FF04C08E830E9434
+:1020E00054058E8125E030E0A601022E01C0440F88
+:1020F0000A94EAF7A42E4B21D1F029839A828A21EF
+:1021000091E009F490E09B830E949E1C8160782FEF
+:102110009D838C8349815A816B818D810E94CC1073
+:10212000F801E259FE4F80818A25808304C0215046
+:102130003109D0F6BBCF0E943D2010916D010E9465
+:10214000DB0F1817B9F00E94DB0F80936D01269604
+:102150000FB6F894DEBF0FBECDBFDF91CF911F91B8
+:102160000F91FF90EF90DF90CF90BF90AF909F9036
+:102170000C94E90826960FB6F894DEBF0FBECDBFCB
+:10218000DF91CF911F910F91FF90EF90DF90CF9053
+:10219000BF90AF909F900895CF93DF93CDB7DEB7F8
+:1021A0002B970FB6F894DEBF0FBECDBF4F83588775
+:1021B00069877A878B87DE01119686E0FD0111928F
+:1021C0008A95E9F785E0FE01379601900D928A9590
+:1021D000E1F749815A816B817C818D819E810E94CA
+:1021E0007A172B960FB6F894DEBF0FBECDBFDF91E6
+:1021F000CF910895882309F4B9C0823859F40E9418
+:10220000DB0F81FDB3C089E30E94C11A0E94981BB5
+:1022100089E30CC0833871F40E94DB0F80FDA6C0F7
+:1022200083E50E94C11A0E94981B83E50E94011B4E
+:102230000C94981B843859F40E94DB0F82FD96C0E1
+:1022400087E40E94C11A0E94981B87E4EFCF9CEF9D
+:10225000980F913A18F40E94C11AEACF90E2980FB1
+:10226000983050F4877091E001C0990F8A95EAF791
+:10227000892F0E94451BDCCF9BE5980F933070F4AB
+:10228000853A29F0863A31F482E890E005C081E889
+:1022900090E002C083E890E00C94FD0F98E5980F61
+:1022A000933108F063C0883A39F1893A41F18A3AAA
+:1022B00049F18B3A51F18C3A59F18D3A61F1803BF9
+:1022C00069F18E3A71F18F3A79F1813B81F1823B6C
+:1022D00089F1833B91F1843B99F1853BA1F1863BE8
+:1022E000A9F1873BB1F1883BB9F1893BC1F18A3B48
+:1022F000C9F58AE292E038C082EE90E035C089EEFE
+:1023000090E032C08AEE90E02FC085EB90E02CC0C8
+:1023100086EB90E029C087EB90E026C08CEC90E043
+:1023200023C08DEC90E020C083E891E01DC08AE8D6
+:1023300091E01AC082E991E017C084E991E014C0ED
+:1023400081E292E011C083E292E00EC084E292E06A
+:102350000BC085E292E008C086E292E005C087E209
+:1023600092E002C080E090E00C941310089588235E
+:1023700009F44BC0823859F40E94DB0F81FF45C03D
+:1023800089E30E94C11A0E94981B89E30CC083381C
+:1023900071F40E94DB0F80FF38C083E50E94C11AF0
+:1023A0000E94981B83E50E94011B0C94981B8438A3
+:1023B00059F40E94DB0F82FF28C087E40E94C11AF3
+:1023C0000E94981B87E4EFCF9CEF980F913A58F347
+:1023D00090E2980F983050F4877091E001C0990F07
+:1023E0008A95EAF7892F0E944B1BDFCF9BE5980F58
+:1023F000933020F480E090E00C94FD0F885A8331F4
+:1024000020F480E090E00C9413100895882321F0CC
+:102410000E94451B0C94981B0895882321F00E946C
+:102420004B1B0C94981B08958F929F92AF92BF9272
+:10243000CF92DF92EF92FF920F931F93CF93DF9390
+:102440004C01A62EC72FFC01E280D581D295DF700A
+:102450000E945C1A882319F082E00E949F1AE11002
+:102460000E94621B0E94BA1A882379F0EE2069F05C
+:1024700080E28A0D883048F082E00E949F1A0E9414
+:10248000BA1ABB24B394B82601C0B12CEC2FE29544
+:10249000EF70F0E0E05AFF4F0C9420228C2F807FE9
+:1024A0001C2F1F70882311F01295107FEE2089F0E9
+:1024B000112309F4C9C180E28A0D883020F4812FEC
+:1024C0000E94451B03C0812F0E94551B0E94981B30
+:1024D000BBC18A2D0E94B711112309F4CFC180E23C
+:1024E0008A0D883020F4812F0E944B1B03C0812F5E
+:1024F0000E945B1B0E94981BC1C18C2F807F1C2FE8
+:102500001F70803211F01295107FAA2021F0F1E0A7
+:10251000AF1639F12FC0EE2091F0DD2309F41DC173
+:10252000D13021F4812F0E94751BA8C1D23009F04F
+:1025300014C10E947E1B812F0E94291A0EC1DD2327
+:1025400069F0D13041F40E94421B812309F496C105
+:102550000E942C1A03C0D23009F490C10E947E1B45
+:1025600002C1EE2021F0D23008F088C1F6C0D111AE
+:1025700085C1F9C0EE2021F0DD2309F4EEC064C16D
+:10258000DD2309F4F0C067C12C2F26952695237012
+:1025900030E02115310521F02130310561F06EC1A7
+:1025A000EE2021F08A2D9C2F937002C080E090E0F5
+:1025B0000E94FD0F63C1EE2021F08A2D9C2F9370A5
+:1025C00002C080E090E00E94131058C18A2DEE20D6
+:1025D00019F00E94451F02C00E94AD1F0E943220C8
+:1025E0004DC18C2F837009F04EC0E11047C12A2DD8
+:1025F000229526952770220F220F8A2D8F70C82EC4
+:10260000D12CE12CF12C022E04C0CC0CDD1CEE1CD4
+:10261000FF1C0A94D2F7A4FE10C06FE070E080E0C7
+:1026200090E004C0660F771F881F991F2A95D2F784
+:10263000609570958095909503C060E070E0CB0147
+:102640002C2F26952695237030E02230310569F035
+:102650002330310589F06C297D298E299F2921306D
+:10266000310571F00E94CE1809C16C297D298E298F
+:102670009F290E94E81802C10E94CE18C701B60126
+:102680000E94B418FBC0EE2019F08C2F817001C09D
+:102690008695882309F4F2C02A2D22952695277065
+:1026A000220F220F8A2D8F70C82ED12CE12CF12CF5
+:1026B000022E04C0CC0CDD1CEE1CFF1C0A94D2F7C9
+:1026C000A4FE10C06FE070E080E090E004C0660FF0
+:1026D000771F881F991F2A95D2F76095709580956E
+:1026E000909503C060E070E0CB012C2F26952695D5
+:1026F000237030E02230310569F02330310589F054
+:102700006C297D298E299F292130310571F00E9485
+:10271000A219B4C06C297D298E299F290E94BC1959
+:10272000ADC00E94A219C701B6010E948819A6C0B7
+:102730000A2D10E0F801E05EF109E531F10508F03D
+:102740007EC0E059FF4F0C9420221A2D1F708C2F51
+:102750008F71EE2031F00E942119812F0E94061204
+:102760008DC00E944219812F0E940D1287C0EE2059
+:1027700039F0D11183C08C2F8F710E9467197EC0F0
+:10278000D23008F07BC0F7CFEE2039F08C2F8F715C
+:102790000E94211973C0EE20C9F38C2F8F710E9403
+:1027A00042196CC0EE2029F08C2F8F710E940C19F9
+:1027B00065C00E94021962C0EE20B9F00E94261A7C
+:1027C0000E944B1B0E94581A843029F40E94981AC8
+:1027D0008C2F8F7164C0D23008F06FC0CF718C2FF6
+:1027E0000E94211963E08C2F0DC00E94261A0E94BE
+:1027F000451BD230A8F00E94981A0E942C1A64E05F
+:102800008C2F8F71DF91CF911F910F91FF90EF90DF
+:10281000DF90CF90BF90AF909F908F900C94881ACC
+:1028200081E0DF91CF911F910F91FF90EF90DF90AA
+:10283000CF90BF90AF909F908F900C949F1AEE20F6
+:1028400039F0DD2309F4A2CF8A2D0E94FA1016C0B8
+:10285000DD2309F4A2CF8A2D0E94B7110FC04C2F9F
+:102860004F706A2DC4010E94A2020E94271806C060
+:102870004C2F4F706A2DC4010E94FB05BB20E9F06C
+:102880000E94581A80FD19C0F40112820E94521A47
+:102890000E942119C4010E946A140E94521ADF91F9
+:1028A000CF911F910F91FF90EF90DF90CF90BF904D
+:1028B000AF909F908F900C944219DF91CF911F9110
+:1028C0000F91FF90EF90DF90CF90BF90AF909F90CF
+:1028D0008F9008950F931F93CF93DF93EC0128817E
+:1028E00039818B819C81892B31F03F3F11F080E051
+:1028F00003C02F3FE1F781E0811113C0CE010E9498
+:102900006D05882371F0688179818A810E94221A7D
+:102910008C010E94D6190E94A918B801CE010E940C
+:102920001412DF91CF911F910F9108950E94621BA5
+:102930000E94721B0E94341B0E94981B0E94DE2082
+:102940000E94322080E090E00E94FD0F80E090E045
+:102950000C9413100E94521B0C9496140E94171A88
+:10296000292F22952F7030E02C3031054CF42A307D
+:1029700031056CF42250310922303105B0F407C022
+:102980002C30310571F02F30310559F00EC0803FE9
+:1029900031F018F4803E48F402C0843F31F481E005
+:1029A000089593FB882780F9089580E00895CF93D8
+:1029B000DF9300D000D01F92CDB7DEB70F900F90FD
+:1029C0000F900F900F90DF91CF910895CF93DF93E9
+:1029D00000D000D000D0CDB7DEB726960FB6F89461
+:1029E000DEBF0FBECDBFDF91CF9108951F93CF9370
+:1029F000DF93C0917C0116E080917D01C81799F0AA
+:102A0000D0E01C9FF0011D9FF00D1124E258FE4FF5
+:102A10004081518162817381848195810E94E61495
+:102A20002196C770E9CFDF91CF911F910895409112
+:102A3000AE015091AF016091B0017091B1018091F0
+:102A4000B2019091B3010C94E614CF938091B3013D
+:102A500082958F7009F05FC08091B001882309F4DE
+:102A60005AC020917C01A0917D016091AE017091CE
+:102A7000AF018091B1019091B20131E06F3F09F057
+:102A800030E0B32FC6E02A1709F445C0009721F0C3
+:102A90007F3F21F44B2F03C041E001C040E030E014
+:102AA00040FD35C0C29FF001C39FF00D1124E258D4
+:102AB000FE4F418174132BC04081641328C04281B2
+:102AC000411125C0438154814817590710F44150E2
+:102AD0005109481B590B483C5105C8F48091B3017A
+:102AE0008F7080618093B30186E0829FF001839FA5
+:102AF000F00D1124ED57FE4F80818F70806180832F
+:102B00008EEA91E00E946A14CF910C94F6142F5F24
+:102B10003F4F2770B8CFCF910895CF92DF92EF92B9
+:102B2000FF920F931F93CF93DF93CDB7DEB76297DA
+:102B30000FB6F894DEBF0FBECDBF8C0185E0F80163
+:102B4000DE011D9601900D928A95E1F7D8014C9116
+:102B500011965C91119712966C9112971396ED90C5
+:102B6000FC9014977091AE01E091AF012091B101FA
+:102B70003091B2012115310531F0EF3F31F481E0A0
+:102B80007F3F19F403C081E001C080E0B82FB1702D
+:102B9000CB2E80FD6CC1D090B001DD2009F4F5C0D2
+:102BA000F091B301E216F30638F0C701821B930BD4
+:102BB000883C910548F09BC0209530952E0D3F1D17
+:102BC000283C310508F093C08F2F807F09F052C058
+:102BD000E51314C0741312C0D62E61110FC0FF701C
+:102BE000F061F093B3010E9417158EEA91E00E9404
+:102BF0006A148091B301F80185836CC1EF2831F02C
+:102C00005F3F31F481E04F3F19F403C081E001C020
+:102C100080E080FD03C081E0862701C080E0F82FBE
+:102C2000F170FF2E80FF1CC080917C0120917D01FE
+:102C300036E0821709F428C190E0389FF001399FEF
+:102C4000F00D1124E258FE4F7181571306C07081B8
+:102C5000471303C07281671303C001968770E9CFE1
+:102C6000D62E662309F436C18091B301816080932A
+:102C7000B30153C0E51308C0741306C0611104C04A
+:102C8000D8011596FC93AEC04D875E878D859E85D5
+:102C90006A8B0E94AE146A89882329F1D62E662396
+:102CA00011F12091B301822F82958F7090E00297ED
+:102CB0000CF460C08091AE019091AF0198878F8332
+:102CC0001986FB86EA862C87CE01079651C0E51748
+:102CD00031F14D875E878D859E856A8B0E94AE148B
+:102CE0006A8981112EC0C8010E946A14A4C08F2F66
+:102CF000807F69F77E2DF98AE88A89890E94D71436
+:102D00008EEA91E00E946A14EEEAF1E086E0DF01CB
+:102D10001D928A95E9F70E941715D12CDBC0741318
+:102D2000D8CF6111D6CFD8011596FC93C8010E9467
+:102D30006A14EEEAF1E086E0DF011D928A95E9F778
+:102D4000C9C0D62E662379F22091B301822F8295D5
+:102D50008F7090E0029774F08091AE019091AF0176
+:102D60009A8389831B82FD82EC822E83CE01019699
+:102D70000E946A1486E0F801AEEAB1E001900D927B
+:102D80008A95E1F70E9425156FC0E216F30628F038
+:102D9000C701821B930B9C0104C0209530952E0D1A
+:102DA0003F1D283C310508F052C0D62E662309F499
+:102DB0009ACFE5132CC074132AC08091B30180FD13
+:102DC0001DC0982F92959F70C9F0D80115968C93CD
+:102DD00015979F3039F09F5F9295907F8F70892B68
+:102DE00015968C93C8010E946A1486E0F801AEEA39
+:102DF000B1E001900D928A95E1F736C086E0F801C6
+:102E0000AEEAB1E001900D928A95E1F763C04D877B
+:102E10005E878D859E850E94AE14882379F086E0BA
+:102E2000F801AEEAB1E001900D928A95E1F70E94B7
+:102E300025150E941715DD24D3944CC08091B30151
+:102E400081608093B301C8010E946A1443C07E2D43
+:102E5000F98AE88A89890E94D714EEEAF1E086E0CF
+:102E6000DF011D928A95E9F70E94171533C066238A
+:102E700009F439CF4D875E878D859E850E94AE14FB
+:102E8000882309F430CFCBCF4D875E878D859E8513
+:102E90000E94171A292F22952F7030E02230310519
+:102EA0002CF49F7041F0811106C00CC02430310514
+:102EB0002CF49F7049F4805E883020F0C8010E9495
+:102EC0006A14CF2CDC2C06C0D80115969C91907FFB
+:102ED00091F7F8CF8D2D62960FB6F894DEBF0FBE36
+:102EE000CDBFDF91CF911F910F91FF90EF90DF90B9
+:102EF000CF9008951F93CF93DF93CDB7DEB72C9774
+:102F00000FB6F894DEBF0FBECDBF4F8358876987D9
+:102F10007A878B879C87CE0107960E948D15882320
+:102F2000C1F02F8138858A859B85892B31F03F3F01
+:102F300011F080E003C02F3FE1F781E0811147C02D
+:102F40004F81588569857A858B859C850E94E6141A
+:102F50003EC086E0FE013796DE01119601900D928B
+:102F60008A95E1F7FF81E8854A855B854115510522
+:102F700031F0EF3F31F481E0FF3F19F403C081E00D
+:102F800001C080E080FD23C020917D0130E0C901B7
+:102F900001968770992760917C0170E086179707EA
+:102FA000F1F1F983EA835D834C8396E0929FD0012F
+:102FB000939FB00D1124A258BE4FFE01319601908F
+:102FC0000D929A95E1F780937D010E94F61416E028
+:102FD00080917C0190917D01891779F1189FC00142
+:102FE000112482589E4F0E948D15882331F1E09163
+:102FF0007C011E9FF0011124E258FE4F4081518157
+:1030000062817381848195810E94E61480917C01A4
+:1030100090E001968770992780937C01D9CF0E9418
+:10302000AA1410927D0110927C01EEEAF1E086E094
+:10303000DF011D928A95E9F7CACF2C960FB6F89456
+:10304000DEBF0FBECDBFDF91CF911F910895EF92EC
+:10305000FF920F931F93CF93DF939C01009709F486
+:1030600071C0F12CEE24E394E9012196F9018491D9
+:10307000843740F4843008F056C0813081F08230CB
+:1030800021F160C0853709F449C0C0F19CE7980F71
+:10309000903708F057C08F770E94B71146C089015A
+:1030A0000E5F1F4FFE01849190E2980F983050F40C
+:1030B0008770FE2D01C0FF0F8A95EAF78F2F0E94BF
+:1030C000651B15C00E94FA1014C089010E5F1F4FC6
+:1030D000FE01849190E2980F983068F48770FE2D7D
+:1030E00001C0FF0F8A95EAF78F2F0E946B1B0E9489
+:1030F000981BE8011AC00E94B711FBCF2E5F3F4F0B
+:10310000FE01C491CC2341F08FE99FE00197F1F7D4
+:1031100000C00000C150F6CFE90107C0FE01F490E5
+:10312000E901229602C00E94FA108F2D882341F0F7
+:10313000EFE9FFE03197F1F700C000008150F6CFD2
+:103140009E0192CFDF91CF911F910F91FF90EF9051
+:10315000089508956093B8017093B9018093BA01FE
+:103160009093BB010C9496140F931F930091B80198
+:103170001091B9012091BA013091BB01062B172B98
+:10318000282B392B0093B8011093B9012093BA0171
+:103190003093BB011F910F910C9496140F931F93C2
+:1031A0000091B8011091B9012091BA013091BB0191
+:1031B00006231723282339230093B8011093B9015C
+:1031C0002093BA013093BB011F910F910C94961478
+:1031D0000F931F930091B8011091B9012091BA018A
+:1031E0003091BB0106271727282739270093B801FC
+:1031F0001093B9012093BA013093BB011F910F9135
+:103200000C9496141092B4011092B5011092B6016C
+:103210001092B7010C94961441E050E060E070E029
+:1032200004C0440F551F661F771F8A95D2F740933D
+:10323000B4015093B5016093B6017093B7010C943B
+:10324000961441E050E060E070E004C0440F551F68
+:10325000661F771F8A95D2F78091B4019091B501CE
+:10326000A091B601B091B701842B952BA62BB72B5B
+:103270008093B4019093B501A093B601B093B701C8
+:103280000C94961441E050E060E070E004C0440FFC
+:10329000551F661F771F8A95D2F740955095609508
+:1032A00070958091B4019091B501A091B601B09153
+:1032B000B70184239523A623B7238093B401909369
+:1032C000B501A093B601B093B7010C94961441E0F8
+:1032D00050E060E070E004C0440F551F661F771F88
+:1032E0008A95D2F78091B4019091B501A091B60171
+:1032F000B091B70184279527A627B7278093B401FB
+:103300009093B501A093B601B093B7010C949614B5
+:103310000F931F930091B4011091B5012091B60154
+:103320003091B701062B172B282B392B0093B401B2
+:103330001093B5012093B6013093B7011F910F91FF
+:103340000C9496140F931F930091B4011091B50142
+:103350002091B6013091B701062317232823392382
+:103360000093B4011093B5012093B6013093B701D7
+:103370001F910F910C9496140F931F930091B40119
+:103380001091B5012091B6013091B701062717279A
+:10339000282739270093B4011093B5012093B60173
+:1033A0003093B7011F910F910C9496140895CF920A
+:1033B000DF92EF92FF920F931F93CF93DF93EC0175
+:1033C000C090B801D090B901E090BA01F090BB0173
+:1033D0008091B4019091B501A091B601B091B7016F
+:1033E000C82AD92AEA2AFB2A0FE110E0B701A60170
+:1033F000002E04C076956795579547950A94D2F7A5
+:1034000040FD05C00150110988F780E007C0BE01EA
+:10341000802F0E944E080197A9F3802FDF91CF9152
+:103420001F910F91FF90EF90DF90CF900895CF9371
+:10343000DF93EC010E94D719BE010E944E08DF9174
+:10344000CF910895CB010E94171A08958091C10170
+:1034500008958093C10108951092C10108950E94BA
+:103460009E1C2091BF013091C0018217930750F03C
+:103470000E949E1C2091BF013091C001821B930BC2
+:103480009C010AC00E949E1C2091BF013091C00186
+:1034900020953095280F391F81E0283B3B4008F4E8
+:1034A00080E008958091BE01859585958595089564
+:1034B0008091BE01877008950E949E1C2091BC01DE
+:1034C0003091BD018217930768F00E949E1C2091E5
+:1034D000BC013091BD01821B930B883B9B4078F46B
+:1034E00080E014C00E949E1C2091BC013091BD015F
+:1034F00020953095280F391F283B3B4088F3809159
+:10350000BE0182FB882780F991E0892781700895A8
+:1035100098E0899F90011124622B6093BE010E9464
+:1035200021190E949E1C9093BD018093BC010895B7
+:103530001092BE011092BD011092BC0108954091FD
+:10354000BE01809584238093BE01982F977089F4E3
+:1035500050E0282F332727FD30954217530749F0B5
+:103560008595859585950E9442191092BD0110920E
+:10357000BC0108959091BE01977081E009F480E04C
+:10358000089590910C019923D9F090910D01992300
+:10359000B9F0982F9695969596959F3088F5E0917D
+:1035A0000E01F0910F01E90FF11D877021E030E06D
+:1035B00001C0220F8A95EAF78181822B81830895C9
+:1035C00040910E0150910F0120E030E09FEFFA0191
+:1035D000E20FF31F6281681799F09F3F19F46111A0
+:1035E00001C0922F2F5F3F4F2E30310581F79F3F53
+:1035F00039F0FA01E90FF11D97FDFA9582830895DC
+:10360000089590910C019923E1F090910D01992377
+:10361000C1F0982F9695969596959F3020F5E0915C
+:103620000E01F0910F01E90FF11D877021E030E0EC
+:1036300001C0220F8A95EAF72095818128232183F2
+:10364000089540910E0150910F0120E030E0FA0101
+:10365000E20FF31F9281981301C012822F5F3F4F38
+:103660002E303105A1F7089581E090E0E0910E0140
+:10367000F0910F01E80FF91F10820196803191053A
+:10368000A9F708958091D50108959091D501982BBF
+:103690009093D501089580959091D50198239093AA
+:1036A000D50108951092D50108959091D401982BD9
+:1036B0009093D401089580959091D401982390938C
+:1036C000D40108951092D40108959091D301982BBC
+:1036D0009093D301089580959091D301982390936E
+:1036E000D30108951092D30108958093C2010E94DE
+:1036F0009E1C9093C0018093BF0108951092C20157
+:103700001092C0011092BF01089540910E01509196
+:103710000F0120E030E080E0FA01E20FF31F918119
+:1037200091118F5F2F5F3F4F2F303105A9F708951B
+:10373000E0910E01F0910F018091D5018083E0911D
+:103740000E01F0910F0180819091D401892B80832B
+:10375000E0910E01F0910F0180819091D301892BAE
+:1037600080838091C201882399F00E942F1A8111D1
+:103770000E947E1BE0910E01F0910F0180819091DB
+:10378000C201892B80830E94851B81110E947E1BB0
+:1037900080910E0190910F010C94E70F40E000978B
+:1037A00039F09C0121503109822393234F5FF7CFD9
+:1037B000842F0895CF92DF92EF92FF920F931F9381
+:1037C0006C01EE24FF24C114D104E104F10421F4BE
+:1037D0006B017C0180E001C080E133272F2D1E2D7D
+:1037E0000D2D011511052105310519F0885F6801BE
+:1037F000790197018601A4E03695279517950795DD
+:10380000AA95D1F7011511052105310519F08C5F35
+:103810006801790197018601F2E0369527951795A1
+:103820000795FA95D1F7011511052105310519F014
+:103830008E5F68017901B701A60176956795579566
+:103840004795452B462B472B09F08F5F1F910F9112
+:10385000FF90EF90DF90CF9008958091E901843040
+:1038600021F11092D70120E488E190E00FB6F8949E
+:10387000A895809360000FBE2093600080E00E94B6
+:10388000E90883B7817F846083BF83B7816083BF8A
+:103890007894889583B78E7F83BF88E10FB6F894BC
+:1038A00080936000109260000FBE089508950895FF
+:1038B0000E94561C0E9461040E94571C0E945505DC
+:1038C00091E0811101C090E0892F08950E94AA140F
+:1038D0000E94DB0F0C94E9081F920F920FB60F9213
+:1038E00011248F939F93AF93BF938091D701811140
+:1038F00013C08091D8019091D901A091DA01B091C3
+:10390000DB014196A11DB11D8093D8019093D9018F
+:10391000A093DA01B093DB01BF91AF919F918F919A
+:103920000F900FBE0F901F90189582E084BD93E01A
+:1039300095BD9AEF97BD80936E0008952FB7F894C8
+:103940008091D8019091D901A091DA01B091DB0169
+:103950002FBF0895CF92DF92EF92FF920F931F93A4
+:103960002FB7F8944091D8015091D9016091DA01B4
+:103970007091DB012FBF6A017B01EE24FF248C01D3
+:1039800020E030E0C016D106E206F30610F4415004
+:103990005109481B590BCA011F910F91FF90EF90DD
+:1039A000DF90CF9008951F920F920FB60F921124BF
+:1039B0008F939F93AF93BF938091D8019091D9013A
+:1039C000A091DA01B091DB010196A11DB11D809398
+:1039D000D8019093D901A093DA01B093DB01BF9194
+:1039E000AF919F918F910F900FBE0F901F901895E0
+:1039F0000E94E10CF8942FEF87EA91E62150804075
+:103A00009040E1F700C0000087E090EBDC0180937C
+:103A1000F3019093F401A093F501B093F6012CE02B
+:103A200088E190E00FB6F894A895809360000FBEEF
+:103A300020936000FFCFEF92FF920F931F93CF93DD
+:103A4000DF93E82E8DE0F82E8F2D0E944E05C5E005
+:103A5000D0E0082F10E098010C2E02C03595279574
+:103A60000A94E2F720FF09C06C2F7F2D80E00E94AE
+:103A7000FC05E81202C081E007C0219760F7FA94C4
+:103A80008FEFF812E1CF80E0DF91CF911F910F917E
+:103A9000FF90EF900895CF93C82F8CE20E941B1DDA
+:103AA000882321F08C2FCF910C941B1D80E0CF91A7
+:103AB0000895CF930E949E1E811102C00E94841E11
+:103AC000C5E6C15049F00E9461048FE39CE901976B
+:103AD000F1F700C00000F5CF89E20E944B1D811173
+:103AE00011C18AE20E944B1D81110E94841E85E053
+:103AF0000E944B1D81110E94F81C0E94A91E8093F8
+:103B0000D60187E00E944B1D882399F18BE10E942A
+:103B10004B1D882351F09091D60191FB882780F9A5
+:103B200021E0822780FB91F922C08EE00E944B1D8C
+:103B3000882351F09091D60192FB882780F921E0EB
+:103B4000822780FB92F913C080E10E944B1D909167
+:103B5000D601882341F093FB882780F921E0822752
+:103B600080FB93F904C0892F809580FB90F9909396
+:103B7000D6018091D6010E94AD1E0E94BB1E80938B
+:103B8000F20180EE0E944B1D882341F08091F201EA
+:103B9000982F909590FB80F98093F20189E30E9421
+:103BA0004B1D882359F09091F20191FB882780F9F1
+:103BB00021E0822780FB91F99093F20182EE0E942E
+:103BC0004B1D882359F09091F20192FB882780F9D0
+:103BD00021E0822780FB92F99093F20186EE0E9409
+:103BE0004B1D882359F09091F20193FB882780F9AF
+:103BF00021E0822780FB93F99093F20183EE0E94EB
+:103C00004B1D882359F09091F20194FB882780F98D
+:103C100021E0822780FB94F99093F20185E30E94D2
+:103C20004B1D882359F09091F20195FB882780F96C
+:103C300021E0822780FB95F99093F20181E30E94B5
+:103C40004B1D882359F09091F20196FB882780F94B
+:103C500021E0822780FB96F99093F20181E10E9496
+:103C60004B1D882359F09091F20197FB882780F92A
+:103C700021E0822780FB97F99093F2018091F20175
+:103C80000E94BF1E8091F20187FB882780F98093F4
+:103C90000D0187E20E944B1DC82F8EE10E944B1D33
+:103CA0008111C2608FE10E944B1D8111C46080E2CE
+:103CB0000E944B1D8111C86081E20E944B1D811141
+:103CC000C06182E20E944B1D8111C06283E20E94AA
+:103CD0004B1D8111C06484E20E944B1D882311F0AA
+:103CE000C06802C0CC2329F08C2F0E94B61E6C2F16
+:103CF00003C00E94B21E682F70E080E090E0CF9178
+:103D00000C94AA18CF9108956DEE7EEF80E090E0BC
+:103D10000E945A2260E082E090E00E94482260E027
+:103D200083E090E00E94482260E084E090E00E94FE
+:103D3000482260E085E090E00C94482280E090E02A
+:103D40000E94422221E08D3E9E4F09F020E0822F0A
+:103D5000089582E090E00C943A22682F82E090E08F
+:103D60000C94482283E090E00C943A22682F83E080
+:103D700090E00C94482284E090E00C943A22682F62
+:103D800084E090E00C9448228091DE0180FF0BC01B
+:103D90006091130185E0689FB001112475956795C6
+:103DA000759567952AC081FF09C06091130185E070
+:103DB000689FB0011124759567951FC082FF07C0E9
+:103DC0006091130185E0689FB001112416C04091F5
+:103DD000DF014423C9F060911201461788F7209152
+:103DE000130185E0289F90011124429FC001439F49
+:103DF000900D112470E00E940C226038710540F48F
+:103E00006115710539F002C065E070E0862F0895F4
+:103E10008FE7089581E008958091DE0180FF08C05A
+:103E20006091110170E0759567957595679521C052
+:103E300081FF06C06091110170E07595679519C00A
+:103E400082FF04C06091110170E010C08091DF0119
+:103E50008823C1F0609110018617A0F7909111019D
+:103E6000989FC001112470E00E940C2260387105F7
+:103E700028F46115710521F0862F08958FE70895C4
+:103E800081E0089561E070E0F4CF803F21F40E946A
+:103E9000C41E819504C0813F29F40E94C41E8093F2
+:103EA000E2010895823F21F40E94C41E819504C05E
+:103EB000833F29F40E94C41E8093E1010895893F45
+:103EC00019F40E940C1F05C08A3F31F40E940C1F98
+:103ED00081958093E30108958B3F21F40E940C1F8C
+:103EE000819504C08C3F29F40E940C1F8093E4014B
+:103EF0000895843F21F48091E001816017C0853FDF
+:103F000021F48091E001826011C0863F21F480910C
+:103F1000E00184600BC0873F21F48091E00188605C
+:103F200005C0883F31F48091E00180618093E00119
+:103F300008958D3F21F48091DE0181600BC08E3F9A
+:103F400021F48091DE01826005C08F3F29F48091C9
+:103F5000DE0184608093DE010895803F39F4809112
+:103F6000E20187FF6CC01092E20169C0813F29F431
+:103F70008091E2011816BCF362C09091E101823F8A
+:103F800029F497FF5CC01092E10159C0833F19F4F6
+:103F90001916CCF354C0893F41F48091E3011816FF
+:103FA0000CF04DC01092E3014AC08A3F29F4809181
+:103FB000E30187FF44C0F6CF8B3F39F48091E401E1
+:103FC00087FF3DC01092E4013AC08C3F29F48091F4
+:103FD000E4011816BCF333C0843F21F48091E00162
+:103FE0008E7F17C0853F21F48091E0018D7F11C045
+:103FF000863F21F48091E0018B7F0BC0873F21F445
+:104000008091E001877F05C0883F31F48091E00115
+:104010008F7E8093E00113C08D3F21F48091DE01FB
+:104020008E7F0BC08E3F21F48091DE018D7F05C015
+:104030008F3F29F48091DE018B7F8093DE01809198
+:10404000E10181110EC08091E20181110AC08091CD
+:10405000E301811106C08091E401811102C0109238
+:10406000DF01089580EE91E00E94F20F0E949E1CF5
+:104070009093DD018093DC0108951F93CF93DF932C
+:104080008091DC019091DD010E94AA1C4091DF012A
+:10409000442321F02091140130E006C02091150145
+:1040A0005AE0259F900111248217930708F482C0DB
+:1040B0008091E1011091E201D091E301C091E4010E
+:1040C000811107C0111105C0D11103C0CC2309F41F
+:1040D00071C04F3F19F04F5F4093DF01181624F471
+:1040E0000E94C41E8093E1018091E10187FF05C019
+:1040F0000E94C41E81958093E101111624F40E9450
+:10410000C41E8093E2018091E20187FF05C00E94F6
+:10411000C41E81958093E2016091E101662339F12B
+:104120001091E201112319F1772767FD7095872F10
+:10413000972F0E941D2123E333E343E35FE30E94B3
+:1041400081210E94EA206093E101612F772767FDBA
+:104150007095872F972F0E941D2123E333E343E3BC
+:104160005FE30E9481210E94EA206093E2011D1614
+:1041700024F40E940C1F8093E3018091E30187FFE8
+:1041800005C00E940C1F81958093E3011C1624F446
+:104190000E940C1F8093E4018091E40187FF05C019
+:1041A0000E940C1F81958093E401DF91CF911F91B4
+:1041B0000C943220DF91CF911F910895E0EEF1E051
+:1041C00085E0DF011D928A95E9F71092DF011092D8
+:1041D000DE01089504D06894B1118DC0089570D0A7
+:1041E00088F09F5790F0B92F9927B751A0F0D1F0E0
+:1041F000660F771F881F991F1AF0BA95C9F712C06A
+:10420000B13081F077D0B1E0089574C0672F782F76
+:104210008827B85F39F0B93FCCF3869577956795D5
+:10422000B395D9F73EF490958095709561957F4F41
+:104230008F4F9F4F0895E89409C097FB3EF49095E7
+:104240008095709561957F4F8F4F9F4F9923A9F06F
+:10425000F92F96E9BB279395F695879577956795FE
+:10426000B795F111F8CFFAF4BB0F11F460FF1BC042
+:104270006F5F7F4F8F4F9F4F16C0882311F096E9D5
+:1042800011C0772321F09EE8872F762F05C0662383
+:1042900071F096E8862F70E060E02AF09A95660F3C
+:1042A000771F881FDAF7880F9695879597F90895F5
+:1042B00057FD9058440F551F59F05F3F71F04795D7
+:1042C000880F97FB991F61F09F3F79F087950895BC
+:1042D000121613061406551FF2CF4695F1DF08C0DB
+:1042E000161617061806991FF1CF869571056105F8
+:1042F00008940895E894BB2766277727CB0197F9A0
+:1043000008950BD078C069D028F06ED018F09523AE
+:1043100009F05AC05FC01124EECFCADFA0F3959F09
+:10432000D1F3950F50E0551F629FF001729FBB279C
+:10433000F00DB11D639FAA27F00DB11DAA1F649F48
+:104340006627B00DA11D661F829F2227B00DA11DFB
+:10435000621F739FB00DA11D621F839FA00D611D81
+:10436000221F749F3327A00D611D231F849F600DA2
+:10437000211D822F762F6A2F11249F5750408AF0DB
+:10438000E1F088234AF0EE0FFF1FBB1F661F771F67
+:10439000881F91505040A9F79E3F510570F014C0FE
+:1043A000AACF5F3FECF3983EDCF38695779567954F
+:1043B000B795F795E7959F5FC1F7FE2B880F911D85
+:1043C0009695879597F9089597F99F6780E870E02B
+:1043D00060E008959FEF80EC089500240A9416167B
+:1043E000170618060906089500240A9412161306E3
+:1043F000140605060895092E0394000C11F4882371
+:1044000052F0BB0F40F4BF2B11F460FF04C06F5F8C
+:104410007F4F8F4F9F4F089597FB072E16F4009400
+:1044200007D077FD09D00E94262207FC05D03EF474
+:10443000909581959F4F0895709561957F4F089550
+:10444000EE0FFF1F0590F491E02D0994AA1BBB1BF2
+:1044500051E107C0AA1FBB1FA617B70710F0A61B84
+:10446000B70B881F991F5A95A9F780959095BC01A5
+:10447000CD010895F999FECF92BD81BDF89A992793
+:1044800080B50895A8E1B0E042E050E00C946222CB
+:10449000262FF999FECF92BD81BDF89A019700B4FD
+:1044A000021639F01FBA20BD0FB6F894FA9AF99A9D
+:1044B0000FBE08950196272F0E9449220C9448228E
+:1044C000DC01CB01FC01F999FECF06C0F2BDE1BDD4
+:1044D000F89A319600B40D9241505040B8F70895C3
+:0444E000F894FFCF7E
+:1044E4002002EB08780955092109EE080101C301EE
+:1044F40028080A03140A3F4D363979042C04F603BC
+:0A450400BD035003690382039B030B
:00000001FF
diff --git a/keyboard/ergodox_ez/keymaps/erez_experimental/keymap.c b/keyboard/ergodox_ez/keymaps/erez_experimental/keymap.c index e03bb57ab..93d1c84bc 100644 --- a/keyboard/ergodox_ez/keymaps/erez_experimental/keymap.c +++ b/keyboard/ergodox_ez/keymaps/erez_experimental/keymap.c @@ -7,8 +7,6 @@ #define SYMB 1 // symbols #define MDIA 2 // media keys -#define LSFTO M(0) // Left shift, open parens when tapped -#define RSFTC M(1) // Right shift, close parens when tapped #define LEADER_TIMEOUT 300 const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { @@ -40,7 +38,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 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, - LSFTO, CTL_T(KC_Z), KC_X, KC_C, KC_V, KC_B, ALL_T(KC_LBRC), + KC_LSPO, CTL_T(KC_Z), KC_X, KC_C, KC_V, KC_B, ALL_T(KC_LBRC), LT(SYMB,KC_GRV),KC_QUOT, LALT(KC_LSFT), KC_LEFT, KC_RGHT, ALT_T(KC_APP), KC_LGUI, KC_HOME, @@ -49,7 +47,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 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,ALT_T(KC_J),KC_K, KC_L, LT(MDIA,KC_SCLN),GUI_T(KC_QUOT), - MEH_T(KC_RBRC),KC_N,KC_M, KC_COMM,KC_DOT, CTL_T(KC_SLSH), RSFTC, + MEH_T(KC_RBRC),KC_N,KC_M, KC_COMM,KC_DOT, CTL_T(KC_SLSH), KC_RSPC, KC_UP, KC_DOWN,KC_LBRC,KC_RBRC, LT(SYMB,KC_MINS), KC_LALT, CTL_T(KC_ESC), KC_PGUP, @@ -150,48 +148,7 @@ static uint16_t key_timer; const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) { - switch(id) { - case 0: - if (record->event.pressed) { - register_mods(MOD_BIT(KC_LSFT)); - if (record->tap.count && !record->tap.interrupted) { - register_code(KC_9); - } - else { - record->tap.count = 0; - } - } - else { - if (record->tap.count) { - unregister_code(KC_9); - } - else { - } - unregister_mods(MOD_BIT(KC_LSFT)); - } - break; - - case 1: - if (record->event.pressed) { - register_mods(MOD_BIT(KC_LSFT)); - if (record->tap.count && !record->tap.interrupted) { - register_code(KC_0); - } - else { - record->tap.count = 0; - } - } - else { - if (record->tap.count) { - unregister_code(KC_0); - } - else { - } - unregister_mods(MOD_BIT(KC_LSFT)); - } - break; - } - return MACRO_NONE; + return MACRO_NONE; }; // Runs just one time when the keyboard initializes. @@ -242,7 +199,5 @@ void matrix_scan_user(void) { unregister_code(KC_LCTL); } } -}; - - +} diff --git a/keyboard/ergodox_ez/keymaps/erez_experimental/makefile.mk b/keyboard/ergodox_ez/keymaps/erez_experimental/makefile.mk index 4c3a314ed..faca18b54 100644 --- a/keyboard/ergodox_ez/keymaps/erez_experimental/makefile.mk +++ b/keyboard/ergodox_ez/keymaps/erez_experimental/makefile.mk @@ -2,4 +2,4 @@ # for your own particular keymap SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend - +COMMAND_ENABLE = no # Commands for debug and configuration diff --git a/quantum/keymap_common.h b/quantum/keymap_common.h index 91d5c09c1..fafc93f7c 100644 --- a/quantum/keymap_common.h +++ b/quantum/keymap_common.h @@ -240,6 +240,8 @@ extern const uint16_t fn_actions[]; #define BL_TOGG 0x5082 #define BL_STEP 0x5083 +#define KC_LSPO 0x5084 // Left shift, open parens when tapped +#define KC_RSPC 0x5085 // Right shift, close parens when tapped // GOTO layer - 16 layers max // when: // ON_PRESS = 1 diff --git a/quantum/quantum.c b/quantum/quantum.c index eb64a99a4..753dde5c6 100644 --- a/quantum/quantum.c +++ b/quantum/quantum.c @@ -21,6 +21,7 @@ void leader_end(void) {} uint8_t starting_note = 0x0C; int offset = 7; + #ifdef AUDIO_ENABLE bool music_activated = false; @@ -59,6 +60,8 @@ uint8_t chord_key_down = 0; static uint8_t input_mode; #endif +static bool shift_interrupted[] = {0, 0, 0}; + bool keys_chord(uint8_t keys[]) { uint8_t keys_size = sizeof(keys)/sizeof(keys[0]); bool pass = true; @@ -415,6 +418,45 @@ bool process_record_quantum(keyrecord_t *record) { #endif + switch(keycode) { + case KC_LSPO: { + if (record->event.pressed) { + shift_interrupted[0] = false; + register_mods(MOD_BIT(KC_LSFT)); + } + else { + if (!shift_interrupted[0]) { + register_code(KC_9); + unregister_code(KC_9); + } + unregister_mods(MOD_BIT(KC_LSFT)); + } + return false; + break; + } + + case KC_RSPC: { + if (record->event.pressed) { + shift_interrupted[1] = false; + register_mods(MOD_BIT(KC_RSFT)); + } + else { + if (!shift_interrupted[1]) { + register_code(KC_0); + unregister_code(KC_0); + } + unregister_mods(MOD_BIT(KC_RSFT)); + } + return false; + break; + } + default: { + shift_interrupted[0] = true; + shift_interrupted[1] = true; + break; + } + } + return process_action_kb(record); } @@ -481,4 +523,4 @@ void audio_on_user() {} __attribute__ ((weak)) void music_scale_user() {} -//------------------------------------------------------------------------------
\ No newline at end of file +//------------------------------------------------------------------------------ |