summaryrefslogtreecommitdiff
path: root/keyboard/ergodox_ez
diff options
context:
space:
mode:
Diffstat (limited to 'keyboard/ergodox_ez')
-rw-r--r--keyboard/ergodox_ez/keymaps/bepo/README.md34
-rw-r--r--keyboard/ergodox_ez/keymaps/bepo/bepo.hex1193
-rw-r--r--keyboard/ergodox_ez/keymaps/bepo/bepo.pngbin0 -> 79747 bytes
-rw-r--r--keyboard/ergodox_ez/keymaps/bepo/keymap.c311
-rw-r--r--keyboard/ergodox_ez/keymaps/dave/dave.hex2298
-rw-r--r--keyboard/ergodox_ez/keymaps/dave/keymap.c22
-rw-r--r--keyboard/ergodox_ez/keymaps/dave/readme.md38
-rw-r--r--keyboard/ergodox_ez/keymaps/dvorak_spanish/README.md99
-rw-r--r--keyboard/ergodox_ez/keymaps/dvorak_spanish/dvorak_spanish.hex5371
-rwxr-xr-xkeyboard/ergodox_ez/keymaps/dvorak_spanish/keymap.c284
-rw-r--r--keyboard/ergodox_ez/matrix.c2
-rw-r--r--keyboard/ergodox_ez/readme.md6
-rw-r--r--keyboard/ergodox_ez/util/compile_keymap.py710
-rw-r--r--keyboard/ergodox_ez/util/readme.md3
14 files changed, 9231 insertions, 1140 deletions
diff --git a/keyboard/ergodox_ez/keymaps/bepo/README.md b/keyboard/ergodox_ez/keymaps/bepo/README.md
new file mode 100644
index 0000000000..338909ed99
--- /dev/null
+++ b/keyboard/ergodox_ez/keymaps/bepo/README.md
@@ -0,0 +1,34 @@
+# BEPO keymap for the ErgoDox
+
+This keymap has been made for the BEPO layout (http://bepo.fr), which is an ergonomic french keyboard layout based on Dvorak rules. As it's made for french people, the following of this README will be in french.
+
+# Disposition BÉPO pour l'ErgoDox
+
+Cette keymap a été pensée pour la disposition BÉPO (http://bepo.fr), qui est une disposition de clavier francophone, ergonomique et libre, élaborée selon la méthode Dvorak. L'adaptation de cette disposition à l'ErgoDox a été réalisée en conservant les points forts du clavier TypeMatrix 2030 (très répandu dans la communauté bépo, avec un excellent rapport ergonomie / prix) voir en réglant certains de ses défauts (3 colonnes pour l'auriculaire droit et touche "Ê") et en apportant son lot de nouveautés (compatibilité avec les systèmes azerty et qwerty).
+
+Particularités
+--------------
+
+Touches de repos des pouces : "espace" à gauche et "entrée" à droite.
+
+Placement des touches de combinaison ("Shift", "Alt", "Ctrl"...) adapté aux pouces, et permettant de conserver chaque doigt pour les rangées de lettres auxquelles ils sont assignés sans avoir à changer la touche de combinaison de côté (exemple : "A" majuscule puis "M" majuscule avec les auriculaires et un seul appui d'une touche "Shift").
+
+Les touches "Alt" et "Alt Gr" sont accessibles avec les pouces sur la rangée du bas comme sur la TypeMatrix 2030, avec une symétrie gauche / droite.
+
+Les touches "Ctrl" sont placées sur la même ligne que les touche "Alt" et "Alt Gr" comme sur un clavier clasique, elles sont accessibles aux pouces sur la rangée du bas (moins éloigné que le groupe de touches de pouces pour des petites mains).
+
+Les touches "Backspace" et "Delete" sont placées comme sur la TypeMatrix 2030, du côté gauche uniquement (pour laisser celles de la main droite servir de {caps,num,scroll}lock puisqu'elles ont des LED).
+
+La touche "Tab" est placée comme sur la TypeMatrix 2020.
+
+Meilleure symétrie et accessibilité que la TypeMatrix 2030 : les touches "W" et "%" ont dû être déplacées du côté gauche en raison du nombre de touches de l'ErgoDox, mais l'auriculaire droit ne gère maintenant que deux colonnes de touches au lieu de trois. La touche "Ê" redevient accessible sur la même rangée que les autres lettres, comme sur un clavier classique en disposition bépo. Les lettres, chiffres et symboles sont tous regroupés sur 4 lignes et 6 colonnes pour chaque main, et la première rangée de lettres à la main gauche conserve une identité visuelle "BÉPO".
+
+Touche de fonction permettant de saisir les touches F1 à F12, les touches F1 à F10 sont placées de façon logique par rapport aux chiffres 1 à 0. Cette même touche permet l'accès aux touches directionnelles sans déplacer la main droite. Les touches "Home" et "End" sont placées de la même façon que sur une TypeMatrix 2030 par rapport aux touches directionnelles. Les touches "Page Up" et "Page Down" sont également accessibles facilement sans déplacer la main droite. Les fonctions "VolUp" et "VolDown" sont placées comme sur la TypeMatrix 2030, avec la fonction "Mute" juste au dessus. Les fonctions "Undo", "Cut", "Copy" et "Paste" sont placées côte à côte comme elles le seraient sur un clavier QWERTY en combinaison avec la touche "Ctrl" (à l'emplacement des lettres "Z", "X", "C" et "V"). Par rapport au layout "SpaceFN", l'utilisation d'une touche de fonction dédiée au pouce permet de ne pas ajouter de latence, et la touche espace reste compatible avec les jeux (action au moment de l'appui et possibilité d'appui long).
+
+Touche de fonction permettant l'accès au pavé numérique comme sur la TypeMatrix 2030, mais sans avoir à déplacer la main droite : avec les doigts sur la rangée de repos, possibilité de saisir les chiffres "4", "5" et "6" comme sur un pavé numérique classique. Le double "0" de la TypeMatrix a été conservé, et gagne une possibilité de répétition en simples "0".
+
+L'appui sur une touche permet de basculer en mode BEPO sur un système configuré pour un clavier QWERTY. Cette compatibilité n'est pas parfaite (pas encore de gestion des accents mais ça devrait être faisable avec une disposition en qwerty international, et les combinaisons de touches ne sont pas toutes supportées puisque le clavier traduit déjà certaines touches en combinaisons) mais reste pratique pour une saisie de texte occasionnelle.
+
+TODO : couche de compatibilité pour utiliser la disposition BÉPO sur un système configuré pour un clavier AZERTY.
+
+> Olivier Smedts <olivier@gid0.org>
diff --git a/keyboard/ergodox_ez/keymaps/bepo/bepo.hex b/keyboard/ergodox_ez/keymaps/bepo/bepo.hex
new file mode 100644
index 0000000000..0456ea21d0
--- /dev/null
+++ b/keyboard/ergodox_ez/keymaps/bepo/bepo.hex
@@ -0,0 +1,1193 @@
+:100000000C94D2030C9419040C9419040C94190444
+:100010000C9419040C9419040C9419040C941904EC
+:100020000C9419040C9419040C94B50E0C94870FBD
+:100030000C9419040C9419040C9419040C941904CC
+:100040000C9419040C9443230C9419040C94190473
+:100050000C9419040C94D71C0C9419040C941904D6
+:100060000C9419040C9419040C9419040C9419049C
+:100070000C9419040C9419040C9419040C9419048C
+:100080000C9419040C9419040C9419040C9419047C
+:100090000C9419040C9419040C9419040C9419046C
+:1000A0000C9419040C9419040C941904F40F1610F0
+:1000B0000411161004115B107E100411D310E61009
+:1000C000B513B513E413E4131A143A146B156B1536
+:1000D00045146B15F514F5145C156B156B1565154A
+:1000E0000215021502150215021502150215021558
+:1000F0000215021502150215021502150215021548
+:100100001415211528152F15391502E002E20001FA
+:10011000E201E00002620001620262016200350059
+:100120002E0030006400015400001E001400040082
+:100130001D00000004521F001A0016001B00E300FF
+:10014000E1002000080007000600E0002C0021006C
+:10015000150009001900E2000552220017000A00EC
+:100160000500000029004C002A0000002B000000C0
+:100170000652470039000000530000000000230031
+:100180001C000B00110000004900240018000D00A5
+:100190001000E600013025000C000E003600E400DF
+:1001A0002800260012000F003700E700E5002700B6
+:1001B000130033003800460004522D002F00340095
+:1001C000310048000000210222021A00080001004C
+:1001D000000034020500040004000000045236024E
+:1001E000080018001C00E3000252370213000C0044
+:1001F0001B00E0002C002602120008003700E2007D
+:1002000005522702080036000E00000029004C00AD
+:100210002A0000002B0000000652470039000000B1
+:100220005300000000001F022302060034000000FB
+:1002300049002E02190017001400035201002D007E
+:10024000070016000A00E400280038000F0015001F
+:100250000B00E700025225020D00110009004600C4
+:1002600004522E001D00100006004800000020026D
+:1002700035001A020802010000001E0005020402F7
+:100280000402010001001F00080218021C02E30220
+:100290000100200013020C021B02E00201002100F9
+:1002A000120208023302E2020100220008023300B7
+:1002B0000E02000001000100010000002B020000FE
+:1002C0000100010001000000010000000100230006
+:1002D0001E02060238020000010024001902170263
+:1002E0001402E60201002500070216020A02E402D7
+:1002F000010026000F0215020B02E7020100270091
+:100300000D02110209020100010001001D0210028C
+:10031000060201000000210222021A00080001006A
+:1003200000003402310204003100000004523602A1
+:10033000080018002F02E3000252370224020C00CA
+:100340003002E0002D022F00120022143700E200DC
+:1003500005523000080036003502000029004C002C
+:100360002A0000002B000000065247003900000060
+:100370005300000000001F022302060034000000AA
+:1003800049002E02190017001400010001002D0081
+:10039000070016000A00E400280038000F001500CE
+:1003A0000B00E700025225020D0011000900460073
+:1003B00004522E001D00100006004800000000003E
+:1003C000000000000000000000003A0000000000F3
+:1003D0007A00000001003B00000000007B000100EB
+:1003E00001003C00000000007C00010000003D0016
+:1003F000000000007D00010000003E000000000041
+:10040000000000000000A800A9000000AA000000F1
+:1004100000000000000000000000000000003F009D
+:100420004B004E0000000000000040004A00500059
+:1004300000000100010041005200510000000100D5
+:10044000000042004D004F00000001000100430089
+:100450004400450000000000010000000000000012
+:10046000000000000000000000000000000000008C
+:10047000000000000000000000000000000000007C
+:10048000000000000000010001000000000000006A
+:10049000000001000000000000000000000001005A
+:1004A000010000000000000000000000000000004B
+:1004B000000000000000000000000000000000003C
+:1004C000000000000000000000000000000000002C
+:1004D000000057005F005C005900620000005600F9
+:1004E00060005D005A0000305800540061005E005A
+:1004F0005B008500010055000000000000000000C6
+:1005000000000000000000000000000000000000EB
+:1005100000000000000000000000000000000000DB
+:1005200000000000000000000000000000000100CA
+:1005300001000000000000000000010000000000B9
+:1005400000000000000001000000000000000000AA
+:10055000000000000000000000000000000000009B
+:10056000010000000000000000000000000000008A
+:10057000000000000000000000000000F400F20095
+:100580000000010000000000F000F1000000010088
+:1005900000000000F500F300000001000100000071
+:1005A000F900FA0000000000000000000000000058
+:1005B00000000000000016034500720067006F0095
+:1005C00044006F007800200045005A000000160328
+:1005D0004500720067006F0044006F007800200043
+:1005E00045005A0000000403090409026D000401DB
+:1005F00000A0FA0904000001030101000921110112
+:100600000001223F000705810308000A09040100D8
+:100610000103010200092111010001224D0007051B
+:10062000820308000A0904020001030000000921F6
+:10063000110100012236000705830308000A09049E
+:10064000030001030000000921110100012239000B
+:10065000070584031000011201100100000008EDDD
+:10066000FE071301000102000105010906A10105B1
+:100670000719E029E7150025019508750181020594
+:1006800008190129059505750191029501750391D8
+:100690000105071900297715002501957875018155
+:1006A00002C005010980A101850216010026B700DC
+:1006B0001A01002AB700751095018100C0050C09C8
+:1006C00001A1018503160100269C021A01002A9C43
+:1006D00002751095018100C005010902A1010901FF
+:1006E000A1000509190129051500250195057501C8
+:1006F00081029501750381010501093009311581D8
+:10070000257F95027508810609381581257F950199
+:1007100075088106050C0A38021581257F9501753B
+:10072000088106C0C005010906A101050719E029D5
+:10073000E71500250195087501810295017508816D
+:1007400001050819012905950575019102950175A5
+:100750000391010507190029FF150025FF9506756E
+:10076000088100C00000000000000000000000013F
+:100770000204060A0F17202C3A4A5D71879DB3C701
+:10078000DAE9F5FCFFFCF5E9DAC7B39D87715D4A4C
+:100790003A2C20170F0A0604020100000000000096
+:1007A0000000000011241FBECFEFDAE0DEBFCDBF96
+:1007B00004B603FE27C08091FB019091FC01A0913B
+:1007C000FD01B091FE018730904BA740B04BD1F4B2
+:1007D0001092FB011092FC011092FD011092FE019B
+:1007E00014BE84B7877F84BF0FB6F894A895809114
+:1007F0006000886180936000109260000FBEE0E0AE
+:10080000FFE3099511E0A0E0B1E0E2E3FAE402C001
+:1008100005900D92A433B107D9F721E0A4E3B1E02C
+:1008200001C01D92AB3FB207E1F70E94F60B0C949A
+:1008300017250C940000662319F0613041F017C0B1
+:10084000FC018281811116C084E191E00895FC01D0
+:100850008281882331F084E00E94131A8FE091E0B6
+:10086000089584E00E94341A8AE091E0089580E0BF
+:1008700090E0089587E191E00895089508950C941B
+:100880003E0456985E9825982D9826982E9827987D
+:100890002F988FEF90E09093890080938800909339
+:1008A0008B0080938A0090938D0080938C00259A12
+:1008B0002D9A2FEF80E792E0215080409040E1F7A1
+:1008C00000C00000269A2E9A2FEF80E792E0215078
+:1008D00080409040E1F700C00000279A2F9A2FEF48
+:1008E00080E792E0215080409040E1F700C0000096
+:1008F00025982D982FEF80E792E02150804090407E
+:10090000E1F700C0000026982E982FEF80E792E0D4
+:10091000215080409040E1F700C0000027982F98B8
+:1009200056985E9825982D9826982E9827982F9857
+:10093000089589EA8093800089E08093810024985B
+:100940002C983F988AB18F748AB96E98479A8BB168
+:10095000806B8BB9769A0E9441040C943D0480E22E
+:10096000809300018091340181110EC00E94FE0429
+:1009700081E0809334012FEF83ED90E3215080409C
+:100980009040E1F700C0000080E40E9404058093DD
+:10099000000181112EC00E942E058093000181115B
+:1009A00028C00E942E0580930001811122C08FE390
+:1009B0000E942E058093000181111BC00E94260514
+:1009C00080E40E94040580930001811112C08CE034
+:1009D0000E942E058093000181110BC00E942E05FC
+:1009E00080930001811105C08FE30E942E05809342
+:1009F00000010E9426058091000108951092B9001F
+:100A00008AE08093B800089594EA9093BC00909196
+:100A1000BC0097FFFCCF9091B900987F983021F0EF
+:100A2000903111F081E008958093BB0084E88093B9
+:100A3000BC008091BC0087FFFCCF8091B900887F0B
+:100A4000883111F0803471F780E0089584E9809353
+:100A5000BC008091BC0084FDFCCF08958093BB0056
+:100A600084E88093BC008091BC0087FFFCCF90910C
+:100A7000B900987F81E0983209F480E0089584E815
+:100A80008093BC008091BC0087FFFCCF8091BB00AD
+:100A9000089580910001811115C080E40E94040531
+:100AA0008093000181110CC082E10E942E05809389
+:100AB0000001811105C08FEF0E942E058093000177
+:100AC0000E94260584B1807F84B985B1807F85B975
+:100AD0008AB1837F8AB98BB1837F8BB93E98469860
+:100AE00008950E94AF04809300010E94490580B3DD
+:100AF0008C7080BB81B3836F81BBA6E3B1E0E4E47B
+:100B0000F1E08EE08E0F11921D928E13FCCF0C94AB
+:100B10009904BF92CF92DF92EF92FF920F931F93AF
+:100B2000CF93DF9380910001882379F08091350184
+:100B30008F5F80933501811108C00E94AF048093BC
+:100B40000001811102C00E94410406E311E0C0E0EF
+:100B5000D0E0DD24D39482E0C82EEE24E394F12C7F
+:100B6000C730D10500F580910001811164C080E497
+:100B70000E94040580930001811112C082E10E944D
+:100B80002E058093000181110BC0C7010C2E01C0FE
+:100B9000880F0A94EAF780950E942E058093000141
+:100BA0000E94260548C0CA30A1F028F4C83059F088
+:100BB000C93061F005C0CC3089F070F0CD3089F0DB
+:100BC000209A289810C0219A29980DC0229A2A9814
+:100BD0000AC0239A2B9807C0529A01C0539A5B9877
+:100BE00002C03E9A469890EA9A95F1F79FB179999A
+:100BF00002C082E001C080E091709D25982B7C9915
+:100C000002C084E001C080E0892B7D9902C038E0F9
+:100C100001C030E0832B7E9902C020E101C020E0BA
+:100C2000822B9FB19095991F9927991F9295990FA3
+:100C3000907E892B0FC080910001811149C080E412
+:100C40000E94040580930001882379F1B12C0E9451
+:100C500026058B2DF8019081981719F08083C0929A
+:100C600001010E94490521960F5F1F4FCE30D1052B
+:100C700009F076CF80910101882361F18150809342
+:100C80000101882339F08FE99FE00197F1F700C057
+:100C9000000020C0A4E4B1E0E6E3F1E0CF01825F10
+:100CA00091919D938E13FCCF15C083E10E942E0578
+:100CB000809300018111CACF81E40E9404058093D2
+:100CC00000018111C3CF0E943F05B82EB094BFCF61
+:100CD00080E0C0CF0E943F0481E0DF91CF911F915F
+:100CE0000F91FF90EF90DF90CF90BF900895E82F85
+:100CF000F0E0EC5BFE4F8081089508950F931F9301
+:100D0000CF93DF93C4E4D1E010E00C2F025F899110
+:100D100090E00E944A1C180F0C13F9CF812FDF912D
+:100D2000CF911F910F91089581E0089581E008957A
+:100D30000C94960608950F931F93CF93DF938C0125
+:100D4000FC01C081D181CE010E94CF1ABE010E9458
+:100D50004407EC01B8010E949806882309F48DC06D
+:100D6000F8018281882309F44AC080915D018111D4
+:100D70001FC0C431F0E5DF0709F051C00E949A0698
+:100D800081E080935D010E94A11C90935C0180939F
+:100D90005B0110925401109256011092550110926D
+:100DA00058011092570110925A011092590165C0D2
+:100DB00080915B0190915C010E94AD1C883C910583
+:100DC00070F480915401E82FF0E0EE0FFF1FEB5A12
+:100DD000FE4FD183C0838F5F809354014EC0C438CF
+:100DE00080E5D80721F0C538D04501F13AC0F801B7
+:100DF0008281882341F01092520182E01EC0C438E3
+:100E0000E0E5DE0759F580915201811106C086E2C6
+:100E10000E94591286E20E94211382E01CC0C4384D
+:100E2000F0E5DF0741F3C538D045D9F4F8018281F8
+:100E3000882331F01092530180E20E9470131DC08C
+:100E400080915301811106C087E20E94591287E206
+:100E50000E94211380E20E9477130FC0C538D0454D
+:100E600029F381E08093520180935301C801DF91FF
+:100E7000CF911F910F910C94940680E0DF91CF9158
+:100E80001F910F910895089596E0799FF001112424
+:100E900094E5899FE00DF11D1124E60FF11DEE0F81
+:100EA000FF1FE25EFE4F859194910895880F991F70
+:100EB000FC01E256F040859194910895880F991FA6
+:100EC000FC01E25EFE4F8591949108950F931F936C
+:100ED000CF93DF93EC018115904350F5C11580E26B
+:100EE000D80708F0C3C0CB3BD10590F4C83AD10570
+:100EF00008F06AC0C53AD10508F05BC0C430D1051E
+:100F000008F0D0C1219709F0CAC101E010E00AC27F
+:100F1000CF3FD10511F008F0C5C1C03FD10508F0A1
+:100F2000A2C0CE01805E9109089708F4BBC1B7C189
+:100F3000C13090E5D90709F4A2C020F5C0318FE493
+:100F4000D80770F4C11590E4D90708F094C0C11512
+:100F500021E3D20708F0A3C1DD278E01106CE2C1A6
+:100F6000C115D04509F09BC10E94D6158FEF94E3BF
+:100F70002CE0815090402040E1F700C000000E942A
+:100F8000FC1CD0C1C11597E5D90758F4C03121E543
+:100F9000D20708F01CC1C43180E5D80708F475C039
+:100FA0007EC1CE0190578115904108F078C1DF7065
+:100FB00073C1C53AD10509F477C1C63AD10509F024
+:100FC00076C102E810E4AEC1C83AD10509F472C195
+:100FD000C93AD10509F471C1CA3AD10509F470C101
+:100FE000CB3AD10509F46FC1CC3AD10509F46EC1F1
+:100FF000CD3AD10509F46DC1C03BD10509F46CC1EE
+:10100000CE3AD10509F46BC1CF3AD10509F46AC1D2
+:10101000C13BD10509F469C1C23BD10509F468C1DE
+:10102000C33BD10509F467C1C43BD10509F466C1CE
+:10103000C53BD10509F465C1C63BD10509F464C1BE
+:10104000C73BD10509F463C1C83BD10509F462C1AE
+:10105000C93BD10509F461C1CA3BD10509F460C19E
+:1010600000E014E45FC18E0110655CC1CE019F7089
+:101070000E945E0758C1DF708E01106A53C18091D3
+:10108000DA0181608093DA014DC10E94A11E8111B5
+:1010900002C00E94871E0E94BE1E90E09093FB013A
+:1010A0008093FA01C23080E5D80721F48091FA01DB
+:1010B000816086C0C43090E5D90721F48091FA019F
+:1010C00082607EC0C63020E5D20721F48091FA010B
+:1010D000846076C0C83080E5D80719F48091FA01A1
+:1010E00027C0CA3090E5D90721F48091FA018061C8
+:1010F00067C0CC3020E5D20721F48091FA018062EC
+:101100005FC0CE3080E5D80721F48091FA01806479
+:1011100057C0C03190E5D90721F48091FA01806869
+:101120004FC0C23120E5D20729F48091FA018460D2
+:10113000886046C0C33080E5D80721F48091FA0169
+:101140008E7F3EC0C53090E5D90721F48091FA0129
+:101150008D7F36C0C73020E5D20721F48091FA0197
+:101160008B7F2EC0C93080E5D80719F48091FA0131
+:1011700026C0CB3090E5D90721F48091FA018F7E0B
+:101180001FC0CD3020E5D20721F48091FA018F7D78
+:1011900017C0CF3080E5D80721F48091FA018F7B0A
+:1011A0000FC0C13190E5D90721F48091FA018F7702
+:1011B00007C0C331D04531F48091FA018B7F877F1E
+:1011C0008093FA018091FA010E94C21EABC08D2F5C
+:1011D00099278F70992781309105D9F49E0123704A
+:1011E000332702C0880F991F2A95E2F79C688E0169
+:1011F00044E0000F111F4A95E1F700271370802B80
+:10120000912B53E0CC0FDD1F5A95E1F7C076DD2717
+:101210002FC08230910531F4DC2FCC278E01016F75
+:10122000106A80C08330910569F4CE0183709927DC
+:1012300001E010E002C0000F111F8A95E2F7C8011B
+:101240009C680FC084309105B9F4CE018370992752
+:1012500001E010E002C0000F111F8A95E2F7C801FB
+:101260009A6823E0CC0FDD1F2A95E1F7C07ED77086
+:101270008C010C2B1D2B56C08530910531F4DC2FD1
+:10128000CC278E01046F106A4DC0069709F04AC042
+:10129000CF71DD27DC2FCC278E01106243C000E028
+:1012A00010E040C08E013EC001E810E43BC003E8FE
+:1012B00010E438C002EE14E435C009EE14E432C084
+:1012C0000AEE14E42FC005EB14E42CC006EB14E482
+:1012D00029C007EB14E426C00CEC14E423C00DEC89
+:1012E00014E420C003E815E41DC00AE815E41AC0A0
+:1012F00002E915E417C004E915E414C001E216E49C
+:1013000011C003E216E40EC004E216E40BC005E2CD
+:1013100016E408C006E216E405C007E216E402C0BF
+:101320000AE216E4C801DF91CF911F910F91089551
+:1013300096E0799FF001112494E5899FE00DF11D5D
+:101340001124E60FF11DEE0FFF1FE25EFE4F8591A7
+:101350009491803E9105E0F4803C910558F58133ED
+:10136000910509F46FC048F48932910509F463C00E
+:101370008A32910509F46DC072C089339105E9F094
+:1013800082389105D1F08533910509F44DC067C0CD
+:10139000833E910581F138F4803E9105B9F0823E9B
+:1013A0009105D9F05CC0863E910561F1873E9105BB
+:1013B000A1F155C00E94560708952091FA0120FD21
+:1013C00002C021FF4CC080EE90E049C08091FA013C
+:1013D00080FFF9CF89E390E042C08091FA0182FF5B
+:1013E0000EC08091FA0184FF03C080E090E037C016
+:1013F00083EE90E034C08091FA0182FFF2CF82EE5A
+:1014000090E02DC08091FA0183FF0BC08091FA011A
+:1014100084FDEBCF87EE90E022C08091FA0183FF3C
+:10142000F5CF86EE90E01BC08091FA0185FF07C0E2
+:1014300089E290E014C08091FA0185FFF9CF85E33D
+:1014400090E00DC08091FA0186FF07C08AE290E02B
+:1014500006C08091FA0186FFF9CF81E390E00E94F7
+:101460006607089508950C94320A80916E010895DC
+:10147000CF93DF9300D01F92CDB7DEB79C01809150
+:10148000F101843019F593E099833B832A8390938B
+:10149000E9008FEF9091E800815095FD06C095ED31
+:1014A0009A95F1F700008111F5CF8091E80085FF52
+:1014B0000DC040E050E063E070E0CE0101960E9474
+:1014C000A50C8091E8008E778093E8000F900F9034
+:1014D0000F90DF91CF910895CF93DF9300D01F92AB
+:1014E000CDB7DEB72091F101243021F522E0298328
+:1014F0009B838A8383E08093E9008FEF9091E800DB
+:10150000815095FD06C095ED9A95F1F70000811187
+:10151000F5CF8091E80085FF0DC040E050E063E02A
+:1015200070E0CE0101960E94A50C8091E8008E77B4
+:101530008093E8000F900F900F90DF91CF91089566
+:101540002091F1012430F1F422E02093E9002FEF03
+:101550003091E800215035FD06C035ED3A95F1F7A0
+:1015600000002111F5CF2091E80025FF0BC040E0DD
+:1015700050E065E070E00E94A50C8091E8008E7755
+:101580008093E8000895CF93DF93EC019091F101EF
+:10159000943009F046C080910C018823D9F08091E5
+:1015A0000D018823B9F09093E9008FEF9091E80046
+:1015B000815095FD06C095E19A95F1F700008111E3
+:1015C000F5CF8091E80085FF2CC040E050E060E15D
+:1015D00070E017C081E08093E9008FEF9091E80000
+:1015E000815095FD06C095ED9A95F1F700008111A7
+:1015F000F5CF8091E80085FF14C040E050E068E03E
+:1016000070E0CE010E94A50C8091E8008E77809357
+:10161000E80080E1FE01AEE5B1E001900D928A950F
+:10162000E1F7DF91CF9108958091F001811109C018
+:101630000E943A0E0E94970E8091E200846080938F
+:10164000E20008951092F001089508950C9430235B
+:101650000E94921C0E9436230E943D110C94330A72
+:1016600042E061EC81E00E94B40D42E061EC82E076
+:101670000E94B40D42E061EC83E00E94B40D42E1AF
+:1016800061EC84E00C94B40D8091F301833009F493
+:1016900055C030F4813071F0823009F48EC0089565
+:1016A0008A3009F47AC08B3009F460C0893009F0BF
+:1016B0009CC020C08091F201813A09F096C08091CF
+:1016C000E800877F8093E8008091F6019091F70110
+:1016D000892B21F460E18EE591E003C060E080E0B9
+:1016E00090E070E00E94F00C8091E8008B7780938E
+:1016F000E80008958091F201813209F076C080916E
+:10170000F6019091F701009719F0039709F06DC069
+:101710008091E800877F8093E8008091E80082FD57
+:1017200005C08091F1018111F8CF5FC08091F10077
+:1017300080936E018091E8008B7753C08091F20115
+:10174000813A09F052C08091F6019091F701892BFE
+:1017500009F04BC08091E800877F8093E80080917A
+:10176000E80080FFFCCF80910C0136C08091F2012F
+:101770008132D9F58091F6019091F701892BA9F575
+:101780008091E800877F8093E8000E94E90D8091B6
+:10179000F40180930C010C94D6158091F2018132F2
+:1017A00021F58091E800877F8093E8000E94E90D91
+:1017B0008091F50180936F0108958091F201813A43
+:1017C000A1F48091E800877F8093E8008091E80091
+:1017D00080FFFCCF80916F018093F1008091E80041
+:1017E0008E778093E8000C94E90D089584B7877F85
+:1017F00084BF0FB6F894A8958091600088618093AB
+:101800006000109260000FBE90E080E80FB6F89480
+:1018100080936100909361000FBE0E948C110E9422
+:101820003A0E0E94970E8091E20084608093E2005D
+:1018300078940E941D110E948E1182E091E00E9416
+:1018400038110E941E238091F101853069F40E94B5
+:10185000561C8091EF018823B1F30E94841C8823D9
+:1018600091F30E948F0CEFCF0E949411ECCF292F9F
+:10187000332723303105C9F064F42130310581F07C
+:101880002230310509F043C08DE690E02AEE35E0C4
+:1018900042C021323105F1F02232310541F137C029
+:1018A00082E190E027E536E036C099278130910546
+:1018B00041F08230910541F0892B49F5E6EEF5E0E3
+:1018C00005C0EEECF5E002C0E6EBF5E0849190E0B7
+:1018D0009F0121C06430D8F4E62FF0E0EE0FFF1F27
+:1018E000EE5DFE4F2081318189E090E014C06430CC
+:1018F00070F470E0FB01EE0FFF1FE65EFE4F2081EB
+:101900003181FB01EA5EFE4F808190E004C080E0FF
+:1019100090E020E030E0FA0131832083089580E1F7
+:1019200089BD82E189BD09B400FEFDCF8091D80058
+:101930008F7D8093D8008091E00082608093E000EA
+:101940008091E00081FDFCCF0895CF92DF92EF926D
+:10195000FF920F931F93CF93DF93EC018B016A01EA
+:101960000E94080E811133C0C114D10439F0F60170
+:1019700080819181081B190BC80FD91FE12CF12C14
+:101980000115110519F18091E80085FD16C08091BF
+:10199000E8008E778093E800C114D10449F0F60185
+:1019A00080819181E80EF91EF182E08285E00FC00E
+:1019B0000E94080E882321F30AC089918093F100C8
+:1019C00001501109FFEFEF1AFF0ADACF80E0DF9133
+:1019D000CF911F910F91FF90EF90DF90CF900895DE
+:1019E0002091F8013091F9012617370748F0611569
+:1019F000710539F42091E8002E772093E80001C0AA
+:101A0000B90140E061157105A9F12091F10122238E
+:101A100009F443C0253009F442C02091E80023FDB9
+:101A200040C02091E80022FD32C02091E80020FF54
+:101A3000E9CF4091F3002091F20030E0342BFC011B
+:101A4000CF016115710559F02830310540F48191BD
+:101A50008093F100615071092F5F3F4FF1CF41E05A
+:101A60002830310509F040E02091E8002E772093DE
+:101A7000E800C8CF4111C9CF0AC08091F101882385
+:101A800061F0853061F08091E80083FD0AC08091AB
+:101A9000E80082FFF2CF80E0089582E0089583E0BD
+:101AA000089581E008952091F8013091F9012617F9
+:101AB000370748F06115710539F42091E8002E7759
+:101AC0002093E80001C0B901FC0120E06115710517
+:101AD00091F18091F101882309F440C0853009F427
+:101AE0003FC08091E80083FD3DC08091E80082FD09
+:101AF0002FC08091E80080FFE9CF2091F300809112
+:101B0000F20090E0922B6115710559F08830910533
+:101B100040F424912093F1003196615071090196AF
+:101B2000F2CF21E0089709F020E08091E8008E775D
+:101B30008093E800CBCF2111CCCF0AC08091F10176
+:101B4000882361F0853061F08091E80083FD0AC050
+:101B50008091E80082FFF2CF80E0089582E008954E
+:101B600083E0089581E00895982F973058F5909379
+:101B7000E900981739F07091EC002091ED00509138
+:101B8000F00003C0242F762F50E021FF19C03091C0
+:101B9000EB003E7F3093EB003091ED003D7F3093C2
+:101BA000ED003091EB0031603093EB007093EC006E
+:101BB0002093ED005093F0002091EE0027FF07C026
+:101BC0009F5FD3CF8F708093E90081E0089580E01C
+:101BD00008958091F20187FF11C08091E80082FD95
+:101BE00005C08091F1018111F8CF11C08091E8000A
+:101BF0008B770BC08091F101882349F08091E80038
+:101C000080FFF8CF8091E8008E778093E8000895F8
+:101C10002091E4003091E50095E64091EC00842F9E
+:101C2000817040FF22C08091E80080FD1CC080913F
+:101C3000F101882391F0853091F08091EB0085FDD2
+:101C400010C04091E4005091E5004217530729F37A
+:101C50009A01915011F784E0089582E0089583E09D
+:101C6000089581E0089580E008954091E80042FFE2
+:101C7000DECF08950E94A80E0E94B00EE0EEF0E0C4
+:101C8000808181608083E8EDF0E080818F778083C0
+:101C900019BCA7EDB0E08C918E7F8C9380818F7EF4
+:101CA00080831092F00108950F931F93CF93DF93D9
+:101CB0000E94A80E0E94B00EC8EDD0E088818F77F8
+:101CC000888388818068888388818F7D888319BC18
+:101CD0001092F1011092ED011092EF011092EE01BD
+:101CE00000EE10E0F80180818B7F80838881816025
+:101CF000888342E060E080E00E94B40DE1EEF0E015
+:101D000080818E7F8083E2EEF0E08081816080833D
+:101D1000808188608083F80180818E7F80838881C4
+:101D200080618883DF91CF911F910F910895E8ED35
+:101D3000F0E080818F7E8083E7EDF0E0808181603C
+:101D4000808384E082BF81E08093F0010C94540E84
+:101D5000E8EDF0E080818E7F80831092E2000895AC
+:101D60001092DA001092E10008951F920F920FB6C0
+:101D70000F9211242F933F934F935F936F937F9311
+:101D80008F939F93AF93BF93EF93FF938091E10065
+:101D900082FF0BC08091E20082FF07C08091E100CA
+:101DA0008B7F8093E1000E941C118091DA0080FFFC
+:101DB0001FC08091D80080FF1BC08091DA008E7F09
+:101DC0008093DA008091D90080FF0DC080E189BD49
+:101DD00082E189BD09B400FEFDCF81E08093F1016D
+:101DE0000E94140B05C019BC1092F1010E94220B35
+:101DF0008091E10080FF19C08091E20080FF15C052
+:101E00008091E2008E7F8093E2008091E200806109
+:101E10008093E2008091D80080628093D80019BC42
+:101E200085E08093F1010E94260B8091E10084FF00
+:101E300030C08091E20084FF2CC080E189BD82E146
+:101E400089BD09B400FEFDCF8091D8008F7D8093BD
+:101E5000D8008091E1008F7E8093E1008091E200C4
+:101E60008F7E8093E2008091E20081608093E200A7
+:101E70008091ED01882311F084E007C08091E30098
+:101E800087FD02C081E001C083E08093F1010E94E0
+:101E9000280B8091E10083FF29C08091E20083FF3D
+:101EA00025C08091E100877F8093E10082E08093EC
+:101EB000F1011092ED018091E1008E7F8093E100AD
+:101EC0008091E2008E7F8093E2008091E200806149
+:101ED0008093E20042E060E080E00E94B40D8091D7
+:101EE000F00088608093F0000E94250BFF91EF9135
+:101EF000BF91AF919F918F917F916F915F914F9122
+:101F00003F912F910F900FBE0F901F9018951F9229
+:101F10000F920FB60F9211242F933F934F935F931D
+:101F20006F937F938F939F93AF93BF93CF93DF93E1
+:101F3000EF93FF93C091E900CF708091EC00D82F10
+:101F4000D17080FDD0E81092E9008091F000877F89
+:101F50008093F00078940E94CB0F1092E90080915A
+:101F6000F00088608093F000CD2BCF70C093E90023
+:101F7000FF91EF91DF91CF91BF91AF919F918F91A1
+:101F80007F916F915F914F913F912F910F900FBE75
+:101F90000F901F9018951F93CF93DF93CDB7DEB7A7
+:101FA000AA970FB6F894DEBF0FBECDBFE2EFF1E007
+:101FB00088E08E0F9091F10091938E13FBCF0E94D9
+:101FC000440B8091E80083FF1FC18091F201909142
+:101FD000F301492F50E04A30510508F015C1FA01CC
+:101FE000EA5AFF4F0C94C724803881F0823809F0F8
+:101FF0000BC18091F6018F708093E9008091EB0016
+:1020000085FB882780F91092E90006C08091EE01D7
+:102010009091EF01911182609091E800977F9093E9
+:10202000E8008093F1001092F100C8C0282F2D7FA6
+:1020300009F0EAC0882319F0823061F0E5C0809190
+:10204000F401813009F0E0C0933009F080E0809322
+:10205000EF012BC08091F401811127C08091F6011E
+:102060008F7009F4D1C08093E9002091EB0020FF2C
+:102070001CC0933021F48091EB00806214C09091D9
+:10208000EB0090619093EB0021E030E0A90102C0E9
+:10209000440F551F8A95E2F74093EA001092EA0038
+:1020A0008091EB0088608093EB001092E9008091B2
+:1020B000E800877F86C08111A7C01091F4011F77C7
+:1020C0008091E3008078812B8093E3008091E80089
+:1020D000877F8093E8000E94E90D8091E80080FFEF
+:1020E000FCCF8091E30080688093E300111102C06F
+:1020F00082E001C083E08093F10186C08058823085
+:1021000008F082C08091F4019091F5018C3D53E07C
+:10211000950779F583E08A838AE289834FB7F8943B
+:10212000DE01139620E03EE051E2E32FF0E0509311
+:102130005700E49120FF03C0E295EF703F5FEF701E
+:102140008E2F90E0EA3010F0C79601C0C0968D93B4
+:102150009D932F5F243149F74FBF8091E800877F1F
+:102160008093E8006AE270E0CE0101960E94F00CD4
+:1021700014C0AE014F5F5F4F6091F6010E94370CB3
+:10218000BC01892B09F440C09091E800977F90939F
+:10219000E80089819A810E94530D8091E8008B7735
+:1021A0008093E80031C0803879F58091E800877F1E
+:1021B0008093E8008091ED018093F1008091E80028
+:1021C0008E778093E8000E94E90D1EC081111CC02B
+:1021D0009091F4019230C0F48091E800877F809361
+:1021E000E8009093ED010E94E90D8091ED018111CD
+:1021F00006C08091E30087FD02C081E001C084E059
+:102200008093F1010E94300B8091E80083FF0AC0A7
+:102210008091E800877F8093E8008091EB008062E6
+:102220008093EB00AA960FB6F894DEBF0FBECDBF29
+:10223000DF91CF911F9108950895CF938091F1017F
+:102240008823A1F0C091E900CF709091EC00892F14
+:10225000817090FD80E8C82B1092E9008091E80021
+:1022600083FD0E94CB0FCF70C093E900CF910895FA
+:1022700090937501809374010895E0917401F09139
+:102280007501309721F00190F081E02D099480E0F4
+:102290000895E0917401F0917501309721F002806A
+:1022A000F381E02D09940895E0917401F091750196
+:1022B000309721F00480F581E02D09940895209154
+:1022C0007201309173018217930771F0909373013B
+:1022D00080937201E0917401F0917501309721F0C3
+:1022E0000680F781E02D09940895209170013091C6
+:1022F00071018217930771F09093710180937001BF
+:10230000E0917401F0917501309721F00084F1851E
+:10231000E02D0994089508950C948B110E94981C47
+:102320000E9471050C945A1D9F92AF92BF92CF925A
+:10233000DF92EF92FF920F931F93CF93DF9300D022
+:1023400000D000D0CDB7DEB70E9489050DE010E0C7
+:10235000AA24A394B12C902E802F0E947706980176
+:1023600029583E4F6901F901F080F826A1F4015087
+:10237000110988F78FEF89838A831B820E94A11C31
+:102380008160782F9D838C8349815A816B818D81F7
+:102390000E942B122FC09091DA0191FF04C08E830E
+:1023A0000E947D068E8125E030E0A501022E01C04D
+:1023B000440F0A94EAF7E42E4F21C1F029839A8250
+:1023C0008E2191E009F490E09B830E94A11C816022
+:1023D000782F9D838C8349815A816B818D810E94E6
+:1023E0002B12F6018081E826E08204C021503109D9
+:1023F000E0F6BDCF0E944120109176010E943D1170
+:102400001817B9F00E943D118093760126960FB6F9
+:10241000F894DEBF0FBECDBFDF91CF911F910F911A
+:10242000FF90EF90DF90CF90BF90AF909F900C9473
+:10243000330A26960FB6F894DEBF0FBECDBFDF91EC
+:10244000CF911F910F91FF90EF90DF90CF90BF90B1
+:10245000AF909F900895CF93DF93CDB7DEB72B97C2
+:102460000FB6F894DEBF0FBECDBF4F835887698784
+:102470007A878B87DE01119686E0FD0111928A959D
+:10248000E9F785E0FE01379601900D928A95E1F714
+:1024900049815A816B817C818D819E810E94741853
+:1024A0002B960FB6F894DEBF0FBECDBFDF91CF9154
+:1024B0000895CF93882309F4C2C0C82F823859F4F5
+:1024C0000E943D1181FDBBC089E30E944E1B0E940A
+:1024D0001B1C89E30CC0833879F40E943D1180FDF8
+:1024E000AEC083E50E944E1B0E941B1C83E50E9428
+:1024F000901BCF910C941B1C843859F40E943D1101
+:1025000082FD9DC087E40E944E1B0E941B1C87E435
+:10251000EECF8CEF8C0F813A48F48C2F0E948322EF
+:1025200081118DC08C2F0E944E1BE3CF80E28C0F57
+:10253000883048F4C77081E001C0880FCA95EAF777
+:102540000E94D41BD6CF8BE58C0F833078F4C53A2C
+:1025500029F0C63A31F083E890E005C081E890E0C8
+:1025600002C082E890E0CF910C945F1188E58C0F57
+:10257000833108F064C0C83A39F1C93A41F1CA3A26
+:1025800049F1CB3A51F1CC3A59F1CD3A61F1C03B26
+:1025900069F1CE3A71F1CF3A79F1C13B81F1C23B99
+:1025A00089F1C33B91F1C43B99F1C53BA1F1C63B15
+:1025B000A9F1C73BB1F1C83BB9F1C93BC1F1CA3B75
+:1025C000C9F180E090E038C082EE90E035C089EE3D
+:1025D00090E032C08AEE90E02FC085EB90E02CC0F6
+:1025E00086EB90E029C087EB90E026C08CEC90E071
+:1025F00023C08DEC90E020C083E891E01DC08AE804
+:1026000091E01AC082E991E017C084E991E014C01A
+:1026100081E292E011C083E292E00EC084E292E097
+:102620000BC085E292E008C086E292E005C087E236
+:1026300092E002C08AE292E0CF910C947511CF91A2
+:102640000895882309F44BC0823859F40E943D1143
+:1026500081FF45C089E30E944E1B0E941B1C89E339
+:102660000CC0833871F40E943D1180FF38C083E5AF
+:102670000E944E1B0E941B1C83E50E94901B0C9421
+:102680001B1C843859F40E943D1182FF28C087E446
+:102690000E944E1B0E941B1C87E4EFCF9CEF980FFB
+:1026A000913A58F390E2980F983050F4877091E087
+:1026B00001C0990F8A95EAF7892F0E94DA1BDFCFB4
+:1026C0009BE5980F933020F480E090E00C945F112C
+:1026D000885A833120F480E090E00C9475110895BD
+:1026E000882321F00E94D41B0C941B1C089588237E
+:1026F00021F00E94DA1B0C941B1C08957F928F928C
+:102700009F92AF92BF92CF92DF92EF92FF920F9380
+:102710001F93CF93DF931F92CDB7DEB77C01C62EF8
+:10272000772EFC01058102950F70128111110E9414
+:10273000F11B0E94471B882379F0112369F080E286
+:102740008C0D883048F082E00E94301B0E94471BAD
+:1027500091E0D82ED92601C0D12CE72DE295EF705B
+:10276000F0E0E05AFF4F0C94C724872D807F072D9F
+:102770000F70882311F00295007F112389F0002348
+:1027800009F490C180E28C0D883020F4802F0E94E3
+:10279000D41B03C0802F0E94E41B0E941B1C82C11B
+:1027A0008C2D0E942113002309F495C180E28C0D29
+:1027B000883020F4802F0E94DA1B03C0802F0E94F3
+:1027C000EA1B0E941B1C87C1972D907F872D8F705D
+:1027D000903211F08295807FCC2021F0F1E0CF166D
+:1027E000B1F01EC0112349F0002309F414C10130D7
+:1027F00009F011C10E94041C6EC1002319F00130C0
+:1028000009F469C189830E94071C89810AC11123C7
+:1028100021F0023008F05FC1FEC001115CC101C1AE
+:10282000112321F0002309F4F6C03CC1002309F470
+:10283000F8C03EC1872D86958695837090E00097FD
+:1028400019F0019761F047C1112321F08C2D972DCC
+:10285000937002C080E090E00E945F113CC11123A0
+:1028600021F08C2D972D937002C080E090E00E94A3
+:10287000751131C18C2D112319F00E94491F02C01E
+:102880000E94B11F0E94362026C1872D837009F057
+:1028900052C0111120C18C2D829586958770880FAA
+:1028A000880F9C2D9F70892E912CA12CB12C082E65
+:1028B00004C0880C991CAA1CBB1C0A94D2F7C4FE45
+:1028C00014C00FE010E020E030E0B901A80104C01E
+:1028D000440F551F661F771F8A95D2F7CB01BA01A7
+:1028E000609570958095909503C060E070E0CB0195
+:1028F000272D26952695237030E02230310569F08A
+:102900002330310589F0682979298A299B292130CA
+:10291000310571F00E94BC19DEC0682979298A2925
+:102920009B290E94D819D7C00E94BC19C501B401C7
+:102930000E94A019D0C0112319F0872D817001C009
+:102940008695882309F4C7C08C2D8295869587705B
+:10295000880F880F9C2D9F70892E912CA12CB12C53
+:10296000082E04C0880C991CAA1CBB1C0A94D2F720
+:10297000C4FE14C00FE010E020E030E0B901A8016F
+:1029800004C0440F551F661F771F8A95D2F7CB01ED
+:10299000BA01609570958095909503C060E070E0F5
+:1029A000CB01272D269526952370422F50E04230EB
+:1029B000510569F04330510589F0682979298A2940
+:1029C0009B294130510571F00E94961A84C06829F4
+:1029D00079298A299B290E94B21A7DC00E94961AE1
+:1029E000C501B4010E947A1A76C08C2D90E0FC01DA
+:1029F000E05EF109E531F10508F050C0E059FF4F04
+:102A00000C94C7240C2D0F70872D8F71112331F07A
+:102A10000E94131A802F0E9470135DC00E94341A06
+:102A2000802F0E94771357C0112339F0011153C032
+:102A3000872D8F710E94591A4EC0023008F04BC08A
+:102A4000F7CF112339F0872D8F710E94131A43C0DD
+:102A50001123C9F3872D8F710E94341A3CC01123B2
+:102A600029F0872D8F710E94FE1935C00E94F4193C
+:102A700032C0112351F0172D1F71812F0E94131A9C
+:102A800063E0812F0E94271B26C081E00E94301B3B
+:102A9000023008F182E00E94301B1DC0112331F08A
+:102AA000002389F28C2D0E94591215C0002391F247
+:102AB0008C2D0E9421130FC0472D4F706C2DC70124
+:102AC0000E941B040E94181906C0472D4F706C2DE0
+:102AD000C7010E944307DD20F9F00E94231B80FDFF
+:102AE0001BC0F70112820E941D1B0E94131AC7010E
+:102AF0000E949B150E941D1B0F90DF91CF911F918B
+:102B00000F91FF90EF90DF90CF90BF90AF909F908C
+:102B10008F907F900C94341A0F90DF91CF911F917A
+:102B20000F91FF90EF90DF90CF90BF90AF909F906C
+:102B30008F907F9008950F931F93CF93DF93EC01B5
+:102B4000888199812B813C81232BB9F09F3F11F41F
+:102B50008F3F99F0CE010E949B06882371F0688117
+:102B600079818A810E94191B8C010E94CE1A0E94D1
+:102B70009519B801CE010E947E13DF91CF911F916C
+:102B80000F9108950E94F11B0E94011C0E94C61B18
+:102B90000E941B1C0E94E6200E94362080E090E0EC
+:102BA0000E945F1180E090E00C9475110E94E11B7F
+:102BB0000C94C2150E940E1B292F22952F7030E015
+:102BC0002C3031054CF42A3031056CF42250310997
+:102BD00022303105A8F407C02C30310569F02F30C0
+:102BE000310551F00DC0803F69F018F4803E40F48B
+:102BF00009C0843F29F406C093FB882780F9089513
+:102C000080E0089581E00895CF93DF9300D000D055
+:102C10001F92CDB7DEB70F900F900F900F900F90CF
+:102C2000DF91CF910895CF93DF9300D000D000D0F3
+:102C3000CDB7DEB726960FB6F894DEBF0FBECDBF78
+:102C4000DF91CF9108951F93CF93DF93C0918501BA
+:102C500016E080918601C81799F0D0E01C9FF00122
+:102C60001D9FF00D1124E957FE4F40815181628173
+:102C70007381848195810E9413162196C770E9CFD4
+:102C8000DF91CF911F9108954091B7015091B80104
+:102C90006091B9017091BA018091BB019091BC0122
+:102CA0000C9413168091BC0182958F7009F054C06A
+:102CB0008091B901882309F44FC080918501A091CA
+:102CC00086016091B7017091B8014091BA015091AD
+:102CD000BB01B6E08A1709F43FC090E041155105E9
+:102CE000C1F17F3F11F46F3FA1F1B89FF001B99F8F
+:102CF000F00D1124E957FE4F218172132AC0208163
+:102D0000621327C02281211124C02381348124171A
+:102D1000350710F421503109241B350B283C3105AF
+:102D2000C0F42091BC012F7020612093BC0126E0EB
+:102D3000289FF001299FF00D1124E457FE4F808158
+:102D40008F708061808387EB91E00E949B150C94CB
+:102D5000231601968770BECF0895CF92DF92EF922F
+:102D6000FF920F931F93CF93DF93CDB7DEB7629798
+:102D70000FB6F894DEBF0FBECDBF8C0185E0F80121
+:102D8000DE011D9601900D928A95E1F7D8014C91D4
+:102D900011965C91119712966C9112971396CD90A3
+:102DA000DC9014973091B7017091B8018091BA010D
+:102DB0009091BB01009709F46BC17F3F19F43F3F2D
+:102DC00009F466C1E090B901EE2009F4C0C0209179
+:102DD000BC01C816D90628F0F601E81BF90BCF0193
+:102DE00004C0809590958C0D9D1DFF24F394883C24
+:102DF000910578F0F12C207F09F0C6C07C2DD98A8E
+:102E0000C88A89890E94041687EB91E00E949B156D
+:102E1000B1C0822F807F09F046C0751314C03413EF
+:102E200012C0611110C02F7020612093BC010E945C
+:102E3000441687EB91E00E949B158091BC01D8015C
+:102E400015968C932EC0CD2819F15F3F11F44F3F9A
+:102E5000F9F0F62E61111CC0809185012091860148
+:102E600036E0821709F45AC090E0389FF001399F8C
+:102E7000F00D1124E957FE4F7181571306C0708180
+:102E8000471303C07281711103C001968770E9CFA7
+:102E9000F62E662309F418C18091BC0181608093ED
+:102EA000BC01F12C11C1751308C0341306C06111A7
+:102EB00004C08091BC01D801C3C04D875E878D8559
+:102EC0009E856A8B0E94DA156A898823E1F1662360
+:102ED000D1F12091BC01822F82958F7090E00297F2
+:102EE00074F08091B7019091B80198878F8319860B
+:102EF000DB86CA862C87CE0107960E949B1586E04A
+:102F0000F801A7EBB1E001900D928A95E1F70E94DC
+:102F100052160E944416FF24F394D6C04D875E8754
+:102F20008D859E850E940E1B292F22952F7030E0E3
+:102F3000223031050CF0BCC09F7009F0B6C0805E35
+:102F4000883008F4C1C0C8010E949B15E4CFC816A0
+:102F5000D90608F453C0F601E81BF90BCF01883CF1
+:102F6000910508F450C0F12C7C2DD98AC88A898932
+:102F70000E940416E7EBF1E086E0DF011D928A95DE
+:102F8000E9F70E944416A0C0751314C0341312C090
+:102F9000611110C08091BC01F8018583C8010E94B5
+:102FA0009B1586E0E7EBF1E0DF011D928A95E9F7DA
+:102FB000FE2C8AC04D875E878D859E856A8B0E9418
+:102FC000DA156A89882309F4BECF662309F4BBCFDA
+:102FD0002091BC01822F82958F7090E002970CF4B3
+:102FE0008ECF8091B7019091B8019A8389831B821B
+:102FF000DD82CC822E83CE0101967FCF8095909585
+:103000008C0D9D1DACCFF62E662309F49CCF751355
+:103010002EC034132CC02091BC0120FD1FC0822F74
+:1030200082958F70D9F0D80115962C9315978F3013
+:1030300049F08F5F982F9295907F822F8F70892B08
+:1030400015968C93C8010E949B1586E0F801A7EBAA
+:10305000B1E001900D928A95E1F793CF86E0F801F7
+:10306000A7EBB1E001900D928A95E1F72DC04D8755
+:103070005E878D859E850E94DA15811140CF8091F3
+:10308000BC0181608093BC01C8010E949B151CC0DB
+:10309000662309F458CF4D875E878D859E850E94F3
+:1030A000DA15882309F44FCF2ACF811148CF0CC0FD
+:1030B000243031050CF047CF9F7009F440CFF80160
+:1030C0009581907F09F03BCF8F2D62960FB6F894D3
+:1030D000DEBF0FBECDBFDF91CF911F910F91FF904B
+:1030E000EF90DF90CF9008951F93CF93DF93CDB7EC
+:1030F000DEB72C970FB6F894DEBF0FBECDBF4F835F
+:10310000588769877A878B879C87CE0107960E94AC
+:10311000AD16882369F08F8198852A853B85232BFE
+:10312000F1F19F3F09F063C08F3F09F060C037C0E5
+:1031300086E0FE013796DE01119601900D928A9588
+:10314000E1F76F817885EA85FB85309741F17F3F14
+:1031500011F46F3F21F12091860130E0C901019601
+:10316000877099274091850150E08417950709F4ED
+:1031700047C069837A83FD83EC8396E0929FD001F8
+:10318000939FB00D1124A957BE4FFE0131960190B7
+:103190000D929A95E1F7809386010E94231616E01E
+:1031A00080918501909186018917C1F1189FC00116
+:1031B000112489579E4F0E94AD16882379F1E09122
+:1031C00085011E9FF0011124E957FE4F4081518176
+:1031D00062817381848195810E941316809185019B
+:1031E00090E001968770992780938501D9CF4F8110
+:1031F000588569857A858B859C850E941316CFCF6B
+:103200000E94D6151092860110928501E7EBF1E03D
+:1032100086E0DF011D928A95E9F7C1CF2C960FB6A3
+:10322000F894DEBF0FBECDBFDF91CF911F910895FF
+:10323000EF92FF920F931F93CF93DF938C01892B13
+:1032400009F46CC0F12CEE24E394E8012196F80116
+:103250008491843740F4843008F051C0813081F08B
+:10326000823019F15BC0853709F444C0A8F19CE7AE
+:10327000980F903708F052C08F770E94211341C0F9
+:103280000E5F1F4FFE01C49180E28C0F883048F41E
+:10329000C7708E2D01C0880FCA95EAF70E94F41BF3
+:1032A00014C08C2F0E9459122DC00E5F1F4FFE01BB
+:1032B000C49180E28C0F883058F4C7708E2D01C005
+:1032C000880FCA95EAF70E94FA1B0E941B1C1AC0BD
+:1032D0008C2F0E94211316C00E5F1F4FFE01C49158
+:1032E000CC2381F08FE99FE00197F1F700C0000047
+:1032F000C150F6CF0E5F1F4FFE01F49003C00E9435
+:1033000059128E018F2D882309F49FCFEFE9FFE03A
+:103310003197F1F700C000008150F5CFDF91CF91D8
+:103320001F910F91FF90EF90089508956093C10150
+:103330007093C2018093C3019093C4010C94C21591
+:103340000F931F930091C1011091C2012091C301FD
+:103350003091C401DC01CB01802B912BA22BB32B2C
+:103360008093C1019093C201A093C301B093C401A3
+:103370001F910F910C94C2150F931F930091C101DF
+:103380001091C2012091C3013091C401DC01CB0135
+:1033900080239123A223B3238093C1019093C20180
+:1033A000A093C301B093C4011F910F910C94C21557
+:1033B0000F931F930091C1011091C2012091C3018D
+:1033C0003091C401DC01CB0180279127A227B327CC
+:1033D0008093C1019093C201A093C301B093C40133
+:1033E0001F910F910C94C2151092BD011092BE0155
+:1033F0001092BF011092C0010C94C21541E050E040
+:1034000060E070E004C0440F551F661F771F8A9567
+:10341000D2F74093BD015093BE016093BF017093FA
+:10342000C0010C94C21541E050E060E070E004C0BF
+:10343000440F551F661F771F8A95D2F78091BD01F3
+:103440009091BE01A091BF01B091C001482B592BB2
+:103450006A2B7B2B4093BD015093BE016093BF014B
+:103460007093C0010C94C21541E050E060E070E040
+:1034700004C0440F551F661F771F8A95D2F74095E9
+:103480005095609570958091BD019091BE01A0917D
+:10349000BF01B091C001482359236A237B23409385
+:1034A000BD015093BE016093BF017093C0010C94A5
+:1034B000C21541E050E060E070E004C0440F551FC9
+:1034C000661F771F8A95D2F78091BD019091BE014A
+:1034D000A091BF01B091C001482759276A277B27D7
+:1034E0004093BD015093BE016093BF017093C00132
+:1034F0000C94C2150F931F930091BD011091BE0152
+:103500002091BF013091C001DC01CB01802B912BB8
+:10351000A22BB32B8093BD019093BE01A093BF015A
+:10352000B093C0011F910F910C94C2150F931F937C
+:103530000091BD011091BE012091BF013091C001E9
+:10354000DC01CB0180239123A223B3238093BD010F
+:103550009093BE01A093BF01B093C0011F910F9142
+:103560000C94C2150F931F930091BD011091BE01E1
+:103570002091BF013091C001DC01CB018027912750
+:10358000A227B3278093BD019093BE01A093BF01F2
+:10359000B093C0011F910F910C94C2150895CF9262
+:1035A000DF92EF92FF920F931F93CF93DF938C01E3
+:1035B000C090C101D090C201E090C301F090C4015D
+:1035C0008091BD019091BE01A091BF01B091C00159
+:1035D000C82AD92AEA2AFB2ACFE1D0E0D701C601BE
+:1035E0000C2E04C0B695A795979587950A94D2F7A7
+:1035F00080FF06C0B8018C2F0E949809019721F422
+:10360000219760F780E001C08C2FDF91CF911F914F
+:103610000F91FF90EF90DF90CF900895CF93DF93BD
+:10362000EC010E94CF1ABE010E949809DF91CF9150
+:103630000895CB010E940E1B08958091C5018595C8
+:103640008595859508958091C5018770089598E0C6
+:10365000899F90011124262B2093C5010C94131AE5
+:103660002091C501809582238093C501982F977082
+:1036700069F430E0482F082E000C550B241735074D
+:1036800029F08595859585950C94341A0895909127
+:10369000C501977081E009F480E0089590910C01D4
+:1036A000992321F090910D01911109C020910E01F3
+:1036B00030910F01F90132969FEF40E01FC0982F23
+:1036C0009695969596959F3050F5E0910E01F09164
+:1036D0000F01E90FF11D877021E030E0A90102C060
+:1036E000440F551F8A95E2F7CA019181892B818386
+:1036F00008959F3F39F04F5F4E3041F0519158137C
+:10370000F8CF0DC05111F7CF942FF5CF9F3F39F06F
+:10371000F901E90FF11D97FDFA9582830895089547
+:1037200090910C01992321F090910D01911109C004
+:1037300020910E0130910F01F9013296205F3F4F29
+:103740001FC0982F9695969596959F30F0F4E0912E
+:103750000E01F0910F01E90FF11D877021E030E0BB
+:10376000A90102C0440F551F8A95E2F7CA0180954E
+:1037700091818923818308953196E217F30729F017
+:1037800090819813F9CF1082F7CF089581E090E0EF
+:10379000E0910E01F0910F01E80FF91F10820196E0
+:1037A00080319105A9F708959091D901892B8093D3
+:1037B000D901089580959091D90189238093D901E9
+:1037C00008951092D90108959091D801892B809382
+:1037D000D801089580959091D80189238093D801CC
+:1037E00008951092D80108959091D701892B809364
+:1037F000D701089580959091D70189238093D701AF
+:1038000008951092D70108958093C60108951092EB
+:10381000C601089580910E0190910F01FC0131962F
+:103820009C01205F3F4F80E0919191118F5FE217E3
+:10383000F307D1F70895E0910E01F0910F01809107
+:10384000D9018083E0910E01F0910F019081809168
+:10385000D801892B8083E0910E01F0910F019081B6
+:103860008091D701892B80838091C601882361F0E4
+:10387000E0910E01F0910F019081892B80830E94CD
+:103880000A1C81111092C60180910E0190910F01C6
+:103890000C94491120E0009739F0AC0141505109D6
+:1038A000842395232F5FF7CF822F08958091F10114
+:1038B000843039F11092DB0120E488E190E00FB60A
+:1038C000F894A895809360000FBE2093600080E07C
+:1038D0000E94330A83B7817F846083BF83B781608E
+:1038E00083BF7894889583B78E7F83BF0FB6F89493
+:1038F000A8958091600088618093600010926000BC
+:103900000FBE0895089508950E94821C0E948905A3
+:103910000E94831C0E947E0691E0811101C090E00C
+:10392000892F08950E94D6150E943D110C94330AE8
+:1039300082E084BD93E095BD9AEF97BD80936E00C1
+:1039400008952FB7F8948091DC019091DD01A0914A
+:10395000DE01B091DF012FBF0895CF92DF92EF9289
+:10396000FF920F931F932FB7F8944091DC01509171
+:10397000DD016091DE017091DF012FBF6A017B01E3
+:10398000EE24FF248C0120E030E0C016D106E206D0
+:10399000F30610F4415051099A01281B390BC90153
+:1039A0001F910F91FF90EF90DF90CF9008951F929D
+:1039B0000F920FB60F9211248F939F93AF93BF93E3
+:1039C0008091DC019091DD01A091DE01B091DF01D9
+:1039D0000196A11DB11D8093DC019093DD01A093A0
+:1039E000DE01B093DF01BF91AF919F918F910F9056
+:1039F0000FBE0F901F9018950E943A0EF8942FEF6B
+:103A000087EA91E6215080409040E1F700C0000035
+:103A100087E090EBDC018093FB019093FC01A09385
+:103A2000FD01B093FE019CE088E10FB6F894A895E3
+:103A3000809360000FBE90936000FFCFEF92FF92E3
+:103A40000F931F93CF93DF93D82FCDE08C2F0E943D
+:103A5000770605E010E0E82EF12CC701002E02C029
+:103A6000959587950A94E2F780FF09C0602F7C2F17
+:103A700080E00E944407D81302C081E006C00150D4
+:103A8000110958F7C15010F780E0DF91CF911F91D5
+:103A90000F91FF90EF900895CF93C82F8CE20E9472
+:103AA0001E1D882321F08C2FCF910C941E1D80E0C9
+:103AB000CF910895CF930E94A11E811102C00E9450
+:103AC000871EC5E6C15049F00E9489058FE39CE935
+:103AD0000197F1F700C00000F5CF89E20E944C1D6C
+:103AE000811113C18AE20E944C1D81110E94871E20
+:103AF00085E00E944C1D81110E94FC1C0E94AC1E9E
+:103B00008093DA0187E00E944C1D8823A9F18BE1A4
+:103B10000E944C1D882351F08091DA0181FB2227FD
+:103B200020F991E0922790FB81F90EC08EE00E946F
+:103B30004C1D882361F08091DA0182FB222720F955
+:103B400091E0922790FB82F98093DA0115C080E121
+:103B50000E944C1D9091DA01882341F093FB2227AB
+:103B600020F981E0822780FB93F904C0892F80959A
+:103B700080FB90F99093DA018091DA010E94B01EE7
+:103B80000E94BE1E8093FA0180EE0E944C1D882385
+:103B900041F08091FA01982F909590FB80F98093E5
+:103BA000FA0189E30E944C1D882359F08091FA01A3
+:103BB00081FB222720F991E0922790FB81F98093E5
+:103BC000FA0182EE0E944C1D882359F08091FA017F
+:103BD00082FB222720F991E0922790FB82F98093C3
+:103BE000FA0186EE0E944C1D882359F08091FA015B
+:103BF00083FB222720F991E0922790FB83F98093A1
+:103C0000FA0183EE0E944C1D882359F08091FA013D
+:103C100084FB222720F991E0922790FB84F980937E
+:103C2000FA0185E30E944C1D882359F08091FA0126
+:103C300085FB222720F991E0922790FB85F980935C
+:103C4000FA0181E30E944C1D882359F08091FA010A
+:103C500086FB222720F991E0922790FB86F980933A
+:103C6000FA0181E10E944C1D882359F08091FA01EC
+:103C700087FB222720F991E0922790FB87F9809318
+:103C8000FA018091FA010E94C21E8091FA0187FB1D
+:103C9000882780F980930D0187E20E944C1DC82F70
+:103CA0008EE10E944C1D8111C2608FE10E944C1D6B
+:103CB0008111C46080E20E944C1D8111C86081E2C4
+:103CC0000E944C1D8111C06182E20E944C1D811135
+:103CD000C06283E20E944C1D8111C06484E20E9494
+:103CE0004C1D882311F0C06802C0CC2329F08C2F12
+:103CF0000E94B91E6C2F03C00E94B51E682F70E091
+:103D000080E090E0CF910C949619CF9108956DEEDC
+:103D10007EEF80E090E00E94012560E082E090E08C
+:103D20000E94EF2460E083E090E00E94EF2460E0D6
+:103D300084E090E00E94EF2460E085E090E00C9445
+:103D4000EF2480E090E00E94E92421E08D3E9E4F28
+:103D500009F020E0822F089582E090E00C94E124A5
+:103D6000682F82E090E00C94EF2483E090E00C94C4
+:103D7000E124682F83E090E00C94EF2484E090E04D
+:103D80000C94E124682F84E090E00C94EF2480915F
+:103D9000E20180FF0BC06091130185E0689FB001D4
+:103DA000112475956795759567952BC081FF09C09E
+:103DB0006091130185E0689FB001112475956795A6
+:103DC00020C082FF07C06091130185E0689FB001A9
+:103DD000112417C09091E3019923D1F06091120151
+:103DE000961788F72091130185E0289F90011124F0
+:103DF000929FA001939F500D112470E0CA010E9470
+:103E0000B3246038710540F46115710539F002C0C2
+:103E100065E070E0862F08958FE7089581E00895AA
+:103E20008091E20180FF08C06091110170E07595FA
+:103E300067957595679521C081FF06C06091110156
+:103E400070E07595679519C082FF04C060911101FB
+:103E500070E010C09091E3019923C1F060911001CE
+:103E60009617A0F780911101899FC001112470E07D
+:103E70000E94B3246038710528F46115710521F0A2
+:103E8000862F08958FE7089581E0089561E070E03E
+:103E9000F4CF803F21F40E94C71E819504C0813F6A
+:103EA00029F40E94C71E8093E6010895823F21F401
+:103EB0000E94C71E819504C0833F29F40E94C71E3B
+:103EC0008093E5010895893F19F40E94101F05C0F1
+:103ED0008A3F31F40E94101F81958093E701089575
+:103EE0008B3F21F40E94101F819504C08C3F29F460
+:103EF0000E94101F8093E8010895843F21F480916F
+:103F0000E401816017C0853F21F48091E401826063
+:103F100011C0863F21F48091E40184600BC0873F8B
+:103F200021F48091E401886005C0883F31F48091DC
+:103F3000E40180618093E40108958D3F21F4809134
+:103F4000E20181600BC08E3F21F48091E20182602A
+:103F500005C08F3F29F48091E20184608093E201E3
+:103F60000895803F39F48091E60187FF6CC010927C
+:103F7000E60169C0813F29F48091E6011816BCF37F
+:103F800062C09091E501823F29F497FF5CC01092D6
+:103F9000E50159C0833F19F41916CCF354C0893F89
+:103FA00041F48091E70118160CF04DC01092E70122
+:103FB0004AC08A3F29F48091E70187FF44C0F6CFC9
+:103FC0008B3F39F48091E80187FF3DC01092E801F2
+:103FD0003AC08C3F29F48091E8011816BCF333C035
+:103FE000843F21F48091E4018E7F17C0853F21F446
+:103FF0008091E4018D7F11C0863F21F48091E4011E
+:104000008B7F0BC0873F21F48091E401877F05C03F
+:10401000883F31F48091E4018F7E8093E40113C0E6
+:104020008D3F21F48091E2018E7F0BC08E3F21F401
+:104030008091E2018D7F05C08F3F29F48091E201DC
+:104040008B7F8093E2018091E50181110EC0809108
+:10405000E60181110AC08091E701811106C08091BB
+:10406000E801811102C01092E301089584EE91E00D
+:104070000E9454110E94A11C9093E1018093E001E1
+:1040800008951F93CF93DF938091E0019091E10118
+:104090000E94AD1CAC019091E301992321F0209185
+:1040A000140130E006C0209115018AE0289F90019C
+:1040B00011244217530708F485C08091E501C0918F
+:1040C000E601D091E7011091E801811107C0C1110B
+:1040D00075C0D11173C0111171C074C09F3F19F028
+:1040E0009F5F9093E301181624F40E94C71E8093EB
+:1040F000E5018091E50187FF05C00E94C71E8195FB
+:104100008093E5011C1624F40E94C71E8093E601EB
+:104110008091E60187FF05C00E94C71E81958093AC
+:10412000E6016091E501662331F1C091E601CC23FF
+:1041300011F1062E000C770B880B990B0E94BA2305
+:1041400023E333E343E35FE30E941E240E948223C0
+:104150006093E5016C2FCC0F770B880B990B0E94B5
+:10416000BA2323E333E343E35FE30E941E240E9468
+:1041700082236093E6011D1624F40E94101F809391
+:10418000E7018091E70187FF05C00E94101F81951C
+:104190008093E701111624F40E94101F8093E80118
+:1041A0008091E80187FF05C00E94101F81958093D0
+:1041B000E801DF91CF911F910C9436209F3F09F0C9
+:1041C0008FCF97CFDF91CF911F910895E4EEF1E06B
+:1041D00085E0DF011D928A95E9F71092E3011092C4
+:1041E000E2010895833081F128F4813059F0823062
+:1041F000D1F00895853009F449C0B8F1863009F44A
+:1042000056C0089580911501262F30E0280F311DEA
+:104210002F3F310524F4680F6093150108958FEF47
+:1042200080931501089580911401262F30E0280F06
+:10423000311D2F3F310524F4680F60931401089558
+:104240008FEF80931401089580911301262F30E0A1
+:10425000280F311D2F3F310524F4680F609313019F
+:1042600008958FEF80931301089580911201262FF6
+:1042700030E0280F311D2F3F310524F4680F609383
+:10428000120108958FEF809312010895809111011A
+:10429000262F30E0280F311D2F3F310524F4680F01
+:1042A0006093110108958FEF80931101089580911B
+:1042B0001001262F30E0280F311D2F3F310524F447
+:1042C000680F6093100108958FEF80931001089597
+:1042D000833011F128F4813049F0823091F0089553
+:1042E000853081F120F18630C1F10895809115016A
+:1042F000681720F4861B809315010895109215010C
+:10430000089580911401681720F4861B809314018E
+:10431000089510921401089580911301681720F4F4
+:10432000861B8093130108951092130108958091C4
+:104330001201681720F4861B8093120108951092D1
+:104340001201089580911101681720F4861B809353
+:1043500011010895109211010895809110016817BC
+:1043600020F4861B80931001089510921001089587
+:104370000F931F938D3109F46BC008F03FC08E304E
+:1043800009F47FC0C0F4873009F469C068F486304E
+:1043900009F0B1C08091DA01817F8E7F8093DA01CC
+:1043A00081E08093EA01A8C0883009F4A2C08B3074
+:1043B00009F49FC0A0C0863109F49BC078F4803115
+:1043C00009F472C0813109F096C00E94D61590910F
+:1043D0000D0181E0892780930D018BC0893109F49B
+:1043E00088C08B3109F087C08091DA0181FB2227D8
+:1043F00020F991E0922790FB81F94CC0853309F4B4
+:1044000070C048F4873209F46CC008F459C089328E
+:1044100009F467C070C0833438F48A3308F04EC0A2
+:10442000883309F466C067C0833409F45AC08834FD
+:1044300009F061C00E94D6150FEF13ED20E3015083
+:1044400010402040E1F700C000000E94FC1C51C059
+:104450000E943C230E943D110E94330A4AC0909161
+:10446000DA01892F8095817080FB90F929F09660A0
+:1044700098609093DA0140C0997F977F9093DA011A
+:1044800038C08091DA0182FB222720F991E092273F
+:1044900090FB82F98093DA01992359F18091DA0136
+:1044A00081608093DA0125C08091DA0183FB2227A5
+:1044B00020F991E0922790FB83F9ECCF895301C05A
+:1044C0008D5141E050E060E070E08A019B0104C042
+:1044D000000F111F221F331F8A95D2F7C901B8019F
+:1044E00004C061E070E080E090E00E9496190E94B4
+:1044F000D61581E001C080E01F910F91089580E002
+:10450000089580E00895CF93C82F8091EA0181300B
+:1045100079F018F08230E9F187C0E0910E01F09156
+:104520000F018081813169F0823209F07FC009C0BA
+:10453000E0910E01F0910F018081813111F0823202
+:1045400061F48C2F0E947F22811104C08C2F0E9465
+:10455000B8211DC081E090E01AC08C2F0E948122FA
+:10456000811114C0C43179F048F4CB3079F0C031F6
+:1045700009F060C082E08093EA0108C0C93219F0F6
+:10458000C83321F057C01092EA0154C081E0817015
+:1045900053C0C93289F118F5C43171F1A8F4C7309C
+:1045A00009F046C08AE08093150194E190931401CC
+:1045B00093E0909313018093120188E0809311019E
+:1045C00088E28093100134C0CE51C63088F5EC2FBC
+:1045D000F0E0E65DFE4F80818093E90129C0CE3492
+:1045E000E9F020F4CB3421F56AE013C0C13579F04D
+:1045F000C235F1F461E00DC08091E901882319F022
+:104600001092E90115C081E08093EA0115C061E0D4
+:1046100006C08091E9010E94F2200AC06AE0809100
+:10462000E9010E94682104C01092EA0180E004C000
+:1046300081E002C080E0ABCFCF910895E1E8F0E0E7
+:104640008081886080838081816080838FB7F894C7
+:1046500093E09093890090ED909388008FBF089528
+:10466000EFE6F0E08081826080830895EFE6F0E07D
+:1046700080818D7F80830895EFE6F0E0908182E075
+:104680008927808308951F920F920FB60F921124ED
+:104690002F933F934F935F936F937F938F939F934A
+:1046A000AF93BF93EF93FF938091EB019091EC0157
+:1046B00001969093EC018093EB01811103C082E09D
+:1046C0000E94330AE091EC01E695E695F0E0EC59A2
+:1046D000F84FE4918091EB018E1303C080E00E94BB
+:1046E000330AFF91EF91BF91AF919F918F917F918D
+:1046F0006F915F914F913F912F910F900FBE0F904F
+:104700001F9018950E9489236894B1110C94182465
+:1047100008950E94FD2388F09F5798F0B92F99279C
+:10472000B751B0F0E1F0660F771F881F991F1AF09C
+:10473000BA95C9F714C0B13091F00E941724B1E0C6
+:1047400008950C941724672F782F8827B85F39F0C5
+:10475000B93FCCF3869577956795B395D9F73EF435
+:1047600090958095709561957F4F8F4F9F4F0895DD
+:10477000E89409C097FB3EF49095809570956195FB
+:104780007F4F8F4F9F4F9923A9F0F92F96E9BB27B1
+:104790009395F695879577956795B795F111F8CF2D
+:1047A000FAF4BB0F11F460FF1BC06F5F7F4F8F4F98
+:1047B0009F4F16C0882311F096E911C0772321F08E
+:1047C0009EE8872F762F05C0662371F096E8862F26
+:1047D00070E060E02AF09A95660F771F881FDAF77D
+:1047E000880F9695879597F9089557FD9058440F2F
+:1047F000551F59F05F3F71F04795880F97FB991F40
+:1048000061F09F3F79F087950895121613061406FC
+:10481000551FF2CF4695F1DF08C016161706180689
+:10482000991FF1CF86957105610508940895E89464
+:10483000BB2766277727CB0197F908950E9431247B
+:104840000C94A2240E94942438F00E949B2420F00F
+:10485000952311F00C948B240C94912411240C9426
+:1048600018240E94F52370F3959FC1F3950F50E033
+:10487000551F629FF001729FBB27F00DB11D639F12
+:10488000AA27F00DB11DAA1F649F6627B00DA11DB8
+:10489000661F829F2227B00DA11D621F739FB00D5E
+:1048A000A11D621F839FA00D611D221F749F3327CE
+:1048B000A00D611D231F849F600D211D822F762F67
+:1048C0006A2F11249F5750409AF0F1F088234AF044
+:1048D000EE0FFF1FBB1F661F771F881F91505040B0
+:1048E000A9F79E3F510580F00C948B240C9418245A
+:1048F0005F3FE4F3983ED4F3869577956795B79537
+:10490000F795E7959F5FC1F7FE2B880F911D969550
+:10491000879597F9089597F99F6780E870E060E0C0
+:1049200008959FEF80EC089500240A941616170648
+:1049300018060906089500240A9412161306140690
+:1049400005060895092E0394000C11F4882352F0F3
+:10495000BB0F40F4BF2B11F460FF04C06F5F7F4FAB
+:104960008F4F9F4F089597FB072E16F4009407D0A2
+:1049700077FD09D00E94CD2407FC05D03EF4909528
+:1049800081959F4F0895709561957F4F0895EE0F23
+:10499000FF1F0590F491E02D0994AA1BBB1B51E168
+:1049A00007C0AA1FBB1FA617B70710F0A61BB70B9F
+:1049B000881F991F5A95A9F780959095BC01CD0144
+:1049C0000895F999FECF92BD81BDF89A992780B5D7
+:1049D0000895A8E1B0E042E050E00C940925262FAC
+:1049E000F999FECF92BD81BDF89A019700B40216E5
+:1049F00039F01FBA20BD0FB6F894FA9AF99A0FBE93
+:104A000008950196272F0E94F0240C94EF24DC01D6
+:104A1000CB01FC01F999FECF06C0F2BDE1BDF89AC9
+:104A2000319600B40D9241505040B8F70895F89473
+:024A3000FFCFB6
+:104A32002002350AC30AA00A6C0A380A0101C7011A
+:104A420028080A03140A3F4D36392507D806A2065C
+:104A52006906FC0515062E06470601020304050633
+:044A62000708090038
+:00000001FF
diff --git a/keyboard/ergodox_ez/keymaps/bepo/bepo.png b/keyboard/ergodox_ez/keymaps/bepo/bepo.png
new file mode 100644
index 0000000000..3df7aa609f
--- /dev/null
+++ b/keyboard/ergodox_ez/keymaps/bepo/bepo.png
Binary files differ
diff --git a/keyboard/ergodox_ez/keymaps/bepo/keymap.c b/keyboard/ergodox_ez/keymaps/bepo/keymap.c
new file mode 100644
index 0000000000..dac6b7b51a
--- /dev/null
+++ b/keyboard/ergodox_ez/keymaps/bepo/keymap.c
@@ -0,0 +1,311 @@
+#include "ergodox_ez.h"
+#include "debug.h"
+#include "action_layer.h"
+#include "keymap_extras/keymap_bepo.h"
+
+#define BASE 0 // default layer
+#define QWER 1 // qwerty compat layer
+#define SQWER 2 // shifted qwerty compat layer
+#define AQWER 3 // alted qwerty compat layer
+#define FNAV 4 // function / navigation keys
+#define NUM 5 // numeric keypad keys
+#define MSE 6 // mouse keys
+
+#define KP_00 0
+#define CA_Fx 1
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+/* Keymap 0: Base layer
+ *
+ * ,--------------------------------------------------. ,--------------------------------------------------.
+ * | $ | " | < | > | ( | ) |Delete| |ScroLo| @ | + | - | / | * | = |
+ * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
+ * | % | B |E_ACUT| P | O |E_GRAV|Backsp| |CapsLo| ^ | V | D | L | J | Z |
+ * |--------+------+------+------+------+------| ace | | |------+------+------+------+------+--------|
+ * | W | A | U | I | E | , |------| |------| C | T | S | R | N | M |
+ * |--------+------+------+------+------+------| Tab | | NumLo|------+------+------+------+------+--------|
+ * | E_CIRC |A_GRAV| Y | X | . | K | | | | ' | Q | G | H | F | C_CEDIL|
+ * `--------+------+------+------+------+-------------,-------------. ,-------------`-------------+------+------+------+------+--------'
+ * |QWERTY| |LSuper| LCtrl| LAlt| |Escape| L_Mse| | |Insert| | AltGr| RCtrl|RSuper|PrntSc| Pause|
+ * `----------------------------------' ,------|------|------| |------+------+------. `----------------------------------'
+ * | | | L_Num| | CA_Fx| | |
+ * | Space|LShift|------| |------|RShift|Enter |
+ * | | |L_FNav| |L_FNav| | |
+ * `--------------------' `--------------------'
+ */
+[BASE] = KEYMAP(
+// Left hand
+BP_DOLLAR, BP_DQOT, BP_LGIL, BP_RGIL, BP_LPRN, BP_RPRN, KC_DEL,
+BP_PERCENT, BP_B, BP_E_ACUTE, BP_P, BP_O, BP_E_GRAVE, KC_BSPC,
+BP_W, BP_A, BP_U, BP_I, BP_E, BP_COMMA,
+BP_ECRC, BP_A_GRAVE, BP_Y, BP_X, BP_DOT, BP_K, KC_TAB,
+TG(QWER), KC_NO, KC_LGUI, KC_LCTL, KC_LALT,
+ KC_ESC, MO(MSE),
+ MO(NUM),
+ KC_SPC, KC_LSHIFT, MO(FNAV),
+// Right hand
+ KC_SLCK, BP_AT, BP_PLUS, BP_MINUS, BP_SLASH, BP_ASTR, BP_EQUAL,
+ KC_CAPSLOCK, BP_DCRC, BP_V, BP_D, BP_L, BP_J, BP_Z,
+ BP_C, BP_T, BP_S, BP_R, BP_N, BP_M,
+ KC_NUMLOCK, BP_APOS, BP_Q, BP_G, BP_H, BP_F, BP_CCED,
+ BP_ALGR, KC_RCTL, KC_RGUI, KC_PSCREEN, KC_PAUSE,
+KC_NO, KC_INS,
+M(CA_Fx),
+MO(FNAV), KC_RSHIFT, KC_ENTER),
+/* Keymap 1: QWERTY system compatibility layer
+ *
+ * ,--------------------------------------------------. ,--------------------------------------------------.
+ * | $ | " | < | > | ( | ) |Delete| |ScroLo| @ | + | - | / | * | = |
+ * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
+ * | % | b | e | p | o | e |Backsp| |CapsLo| ^ | v | d | l | j | z |
+ * |--------+------+------+------+------+------| ace | | |------+------+------+------+------+--------|
+ * | w | a | u | i | e | , |------| |------| c | t | s | r | n | m |
+ * |--------+------+------+------+------+------| Tab | | NumLo|------+------+------+------+------+--------|
+ * | e | a | y | x | . | k | | | | ' | q | g | h | f | c |
+ * `--------+------+------+------+------+-------------,-------------. ,-------------`-------------+------+------+------+------+--------'
+ * | BEPO | |LSuper| LCtrl| LAlt| |Escape| L_Mse| | |Insert| | AltGr| RCtrl|RSuper|PrntSc| Pause|
+ * `----------------------------------' ,------|------|------| |------+------+------. `----------------------------------'
+ * | | | L_Num| | | | |
+ * | Space|LShift|------| |------|RShift|Enter |
+ * | | |L_FNav| |L_FNav| | |
+ * `--------------------' `--------------------'
+ */
+[QWER] = KEYMAP(
+// Left hand
+KC_DOLLAR, S(KC_QUOT), S(KC_COMM), S(KC_DOT), KC_LPRN, KC_RPRN, KC_DEL,
+KC_PERCENT, KC_B, KC_E, KC_P, KC_O, KC_E, KC_BSPC,
+KC_W, KC_A, KC_U, KC_I, KC_E, KC_COMMA,
+KC_E, KC_A, KC_Y, KC_X, KC_DOT, KC_K, KC_TAB,
+KC_TRNS, KC_NO, KC_LGUI, KC_LCTL, KC_LALT,
+ KC_ESC, MO(MSE),
+ MO(NUM),
+ KC_SPC, MO(SQWER), MO(FNAV),
+// Right hand
+ KC_SLCK, KC_AT, KC_PLUS, KC_MINUS, KC_SLASH, KC_ASTR, KC_EQUAL,
+ KC_CAPSLOCK, KC_CIRC, KC_V, KC_D, KC_L, KC_J, KC_Z,
+ KC_C, KC_T, KC_S, KC_R, KC_N, KC_M,
+ KC_NUMLOCK, KC_QUOT, KC_Q, KC_G, KC_H, KC_F, KC_C,
+ MO(AQWER), KC_RCTL, KC_RGUI, KC_PSCREEN, KC_PAUSE,
+KC_NO, KC_INS,
+KC_TRNS,
+MO(FNAV), MO(SQWER), KC_ENTER),
+/* Keymap 2: QWERTY shifted system compatibility layer
+ *
+ * ,--------------------------------------------------. ,--------------------------------------------------.
+ * | # | 1 | 2 | 3 | 4 | 5 |Delete| |ScroLo| 6 | 7 | 8 | 9 | 0 | = |
+ * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
+ * | ` | B | E | P | O | E |Backsp| |CapsLo| ! | V | D | L | J | Z |
+ * |--------+------+------+------+------+------| ace | | |------+------+------+------+------+--------|
+ * | W | A | U | I | E | ; |------| |------| C | T | S | R | N | M |
+ * |--------+------+------+------+------+------| Tab | | NumLo|------+------+------+------+------+--------|
+ * | E | A | Y | X | : | K | | | | ? | Q | G | H | F | C |
+ * `--------+------+------+------+------+-------------,-------------. ,-------------`-------------+------+------+------+------+--------'
+ * | BEPO | |LSuper| LCtrl| LAlt| |Escape| L_Mse| | |Insert| | AltGr| RCtrl|RSuper|PrntSc| Pause|
+ * `----------------------------------' ,------|------|------| |------+------+------. `----------------------------------'
+ * | | | L_Num| | | | |
+ * | Space|LShift|------| |------|RShift|Enter |
+ * | | |L_FNav| |L_FNav| | |
+ * `--------------------' `--------------------'
+ */
+[SQWER] = KEYMAP(
+// Left hand
+KC_HASH, KC_1, KC_2, KC_3, KC_4, KC_5, KC_TRNS,
+KC_GRV, S(KC_B), S(KC_E), S(KC_P), S(KC_O), S(KC_E), KC_TRNS,
+S(KC_W), S(KC_A), S(KC_U), S(KC_I), S(KC_E), KC_SCOLON,
+S(KC_E), S(KC_A), S(KC_Y), S(KC_X), KC_COLON, S(KC_K), S(KC_TAB),
+KC_TRNS, KC_TRNS, S(KC_LGUI), S(KC_LCTL), S(KC_LALT),
+ KC_TRNS, KC_TRNS,
+ KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS,
+// Right hand
+ KC_TRNS, KC_6, KC_7, KC_8, KC_9, KC_0, KC_TRNS,
+ KC_TRNS, KC_EXLM, S(KC_V), S(KC_D), S(KC_L), S(KC_J), S(KC_Z),
+ S(KC_C), S(KC_T), S(KC_S), S(KC_R), S(KC_N), S(KC_M),
+ KC_TRNS, S(KC_SLASH), S(KC_Q), S(KC_G), S(KC_H), S(KC_F), S(KC_C),
+ S(KC_RALT), S(KC_RCTL), S(KC_RGUI), KC_TRNS, KC_TRNS,
+KC_TRNS, KC_TRNS,
+KC_TRNS,
+KC_TRNS, KC_TRNS, KC_TRNS),
+/* Keymap 3: QWERTY alted system compatibility layer
+ *
+ * ,--------------------------------------------------. ,--------------------------------------------------.
+ * | $ | " | < | > | [ | ] |Delete| |ScroLo| @ | + | - | / | * | = |
+ * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
+ * | % | | | e | & | o | e |Backsp| |CapsLo| ^ | v | d | l | j | z |
+ * |--------+------+------+------+------+------| ace | | |------+------+------+------+------+--------|
+ * | w | a | u | i | € | , |------| |------| c | t | s | r | n | m |
+ * |--------+------+------+------+------+------| Tab | | NumLo|------+------+------+------+------+--------|
+ * | e | \ | { | } | . | ~ | | | | ' | q | g | h | f | c |
+ * `--------+------+------+------+------+-------------,-------------. ,-------------`-------------+------+------+------+------+--------'
+ * | BEPO | |LSuper| LCtrl| LAlt| |Escape| L_Mse| | |Insert| | AltGr| RCtrl|RSuper|PrntSc| Pause|
+ * `----------------------------------' ,------|------|------| |------+------+------. `----------------------------------'
+ * | | | L_Num| | | | |
+ * | _ |LShift|------| |------|RShift|Enter |
+ * | | |L_FNav| |L_FNav| | |
+ * `--------------------' `--------------------'
+ */
+[AQWER] = KEYMAP(
+// Left hand
+KC_DOLLAR, S(KC_QUOT), S(KC_COMM), S(KC_DOT), KC_LBRC, KC_RBRC, KC_DEL,
+KC_PERCENT, KC_PIPE, KC_E, KC_AMPR, KC_O, KC_E, KC_BSPC,
+KC_W, KC_A, KC_U, KC_I, RALT(KC_5), KC_COMMA,
+KC_E, KC_BSLASH, KC_LCBR, KC_RCBR, KC_DOT, KC_TILDE, KC_TAB,
+KC_TRNS, KC_NO, KC_LGUI, KC_LCTL, KC_LALT,
+ KC_ESC, MO(MSE),
+ MO(NUM),
+ KC_UNDS, MO(SQWER), MO(FNAV),
+// Right hand
+ KC_SLCK, KC_AT, KC_PLUS, KC_MINUS, KC_SLASH, KC_ASTR, KC_EQUAL,
+ KC_CAPSLOCK, KC_CIRC, KC_V, KC_D, KC_L, KC_J, KC_Z,
+ KC_C, KC_T, KC_S, KC_R, KC_N, KC_M,
+ KC_NUMLOCK, KC_QUOT, KC_Q, KC_G, KC_H, KC_F, KC_C,
+ KC_TRNS, KC_RCTL, KC_RGUI, KC_PSCREEN, KC_PAUSE,
+KC_NO, KC_INS,
+KC_TRNS,
+MO(FNAV), MO(SQWER), KC_ENTER),
+/* Keymap 4: function / navigation layer
+ *
+ * ,--------------------------------------------------. ,--------------------------------------------------.
+ * | | F1 | F2 | F3 | F4 | F5 |VolMut| | | F6 | F7 | F8 | F9 | F10 | |
+ * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
+ * | | | | | | |VolDwn| | | PgUp | Home | Up | End | F11 | |
+ * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
+ * | | | | | | |------| |------| PgDn | Left | Down | Right| F12 | |
+ * |--------+------+------+------+------+------| VolUp| | |------+------+------+------+------+--------|
+ * | | Undo | Cut | Copy | Paste| | | | | | | | | | |
+ * `--------+------+------+------+------+-------------,-------------. ,-------------`-------------+------+------+------+------+--------'
+ * | | | | | | | | | | | | | | | | | |
+ * `----------------------------------' ,------|------|------| |------+------+------. `----------------------------------'
+ * | | | | | | | |
+ * | | |------| |------| | |
+ * | | | | | | | |
+ * `--------------------' `--------------------'
+ */
+[FNAV] = KEYMAP(
+// Left hand
+KC_NO, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_MUTE,
+KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_VOLU,
+KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
+KC_NO, KC_UNDO, KC_CUT, KC_COPY, KC_PASTE, KC_NO, KC_VOLD,
+KC_NO, KC_NO, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_NO, KC_NO,
+ KC_NO,
+ KC_NO, KC_TRNS, KC_TRNS,
+// Right hand
+ KC_NO, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_NO,
+ KC_NO, KC_PGUP, KC_HOME, KC_UP, KC_END, KC_F11, KC_NO,
+ KC_PGDOWN, KC_LEFT, KC_DOWN, KC_RIGHT, KC_F12, KC_NO,
+ KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, KC_NO,
+KC_NO, KC_NO,
+KC_TRNS,
+KC_TRNS, KC_TRNS, KC_NO),
+/* Keymap 5: numeric layer, sends keypad codes
+ *
+ * ,--------------------------------------------------. ,--------------------------------------------------.
+ * | | | | | | | | | | | + | - | / | * | |
+ * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
+ * | | | | | | | | | | | 7 | 8 | 9 | | |
+ * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
+ * | | | | | | |------| |------| | 4 | 5 | 6 | | |
+ * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
+ * | | | | | | | | | | | 1 | 2 | 3 | | |
+ * `--------+------+------+------+------+-------------,-------------. ,-------------`-------------+------+------+------+------+--------'
+ * | | | | | | | | | | | | | 0 | 00 | . | | |
+ * `----------------------------------' ,------|------|------| |------+------+------. `----------------------------------'
+ * | | | | | | | |
+ * | | |------| |------| | Enter|
+ * | | | | | | | |
+ * `--------------------' `--------------------'
+ */
+[NUM] = KEYMAP(
+// Left hand
+KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
+KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
+KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
+KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
+KC_NO, KC_NO, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_NO, KC_NO,
+ KC_TRNS,
+ KC_NO, KC_TRNS, KC_NO,
+// Right hand
+ KC_NO, KC_NO, KC_KP_PLUS, KC_KP_MINUS, KC_KP_SLASH, KC_KP_ASTERISK, KC_NO,
+ KC_NO, KC_NO, KC_KP_7, KC_KP_8, KC_KP_9, KC_NO, KC_NO,
+ KC_NO, KC_KP_4, KC_KP_5, KC_KP_6, KC_NO, KC_NO,
+ KC_NO, KC_NO, KC_KP_1, KC_KP_2, KC_KP_3, KC_NO, KC_NO,
+ KC_KP_0, M(KP_00), KC_KP_COMMA, KC_NO, KC_NO,
+KC_NO, KC_NO,
+KC_NO,
+KC_NO, KC_TRNS, KC_KP_ENTER),
+/* Keymap 6: mouse layer
+ *
+ * ,--------------------------------------------------. ,--------------------------------------------------.
+ * | | | | | | | | | | | | | | | |
+ * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
+ * | | | | | | | | | | |LClick| Up |RClick| WhUp | |
+ * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
+ * | | | | | | |------| |------| | Left | Down | Right|WhDown| |
+ * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
+ * | | | | | | | | | | | | | | | |
+ * `--------+------+------+------+------+-------------,-------------. ,-------------`-------------+------+------+------+------+--------'
+ * | | | | | | | | | | | | | | | | | |
+ * `----------------------------------' ,------|------|------| |------+------+------. `----------------------------------'
+ * | | | | | | | |
+ * | | |------| |------| | |
+ * | | | | | | | |
+ * `--------------------' `--------------------'
+ */
+[MSE] = KEYMAP(
+// Left hand
+KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
+KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
+KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
+KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
+KC_NO, KC_NO, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_NO, KC_TRNS,
+ KC_NO,
+ KC_NO, KC_TRNS, KC_NO,
+// Right hand
+ KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
+ KC_NO, KC_NO, KC_MS_BTN1, KC_MS_UP, KC_MS_BTN2, KC_MS_WH_UP, KC_NO,
+ KC_NO, KC_MS_LEFT, KC_MS_DOWN, KC_MS_RIGHT, KC_MS_WH_DOWN, KC_NO,
+ KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, KC_NO,
+KC_NO, KC_NO,
+KC_NO,
+KC_NO, KC_TRNS, KC_NO)
+};
+
+const uint16_t PROGMEM fn_actions[] = {
+};
+
+const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
+{
+ switch(id) {
+ case KP_00:
+ if (record->event.pressed) {
+ return MACRO( T(KP_0), D(KP_0), END );
+ } else {
+ return MACRO( U(KP_0), END );
+ }
+ break;
+ case CA_Fx:
+ if (record->event.pressed) {
+ layer_on(FNAV);
+ return MACRO( D(LALT), D(LCTL), END );
+ } else {
+ layer_off(FNAV);
+ return MACRO( U(LCTL), U(LALT), END );
+ }
+ break;
+ }
+ return MACRO_NONE;
+};
+
+// Runs just one time when the keyboard initializes.
+void matrix_init_user(void) {
+};
+
+// Runs constantly in the background, in a loop.
+void matrix_scan_user(void) {
+};
diff --git a/keyboard/ergodox_ez/keymaps/dave/dave.hex b/keyboard/ergodox_ez/keymaps/dave/dave.hex
index 363e7234d8..a1ba8b901d 100644
--- a/keyboard/ergodox_ez/keymaps/dave/dave.hex
+++ b/keyboard/ergodox_ez/keymaps/dave/dave.hex
@@ -1,1128 +1,1172 @@
-:100000000C9463020C94AA020C94AA020C94AA0207
-:100010000C94AA020C94AA020C94AA020C94AA02B0
-:100020000C94AA020C94AA020C94FF0B0C94D10C11
-:100030000C94AA020C94AA020C94AA020C94AA0290
-:100040000C94AA020C9445210C94AA020C94AA02C6
-:100050000C94AA020C94D71A0C94AA020C94AA022B
-:100060000C94AA020C94AA020C94AA020C94AA0260
-:100070000C94AA020C94AA020C94AA020C94AA0250
-:100080000C94AA020C94AA020C94AA020C94AA0240
-:100090000C94AA020C94AA020C94AA020C94AA0230
-:1000A0000C94AA020C94AA020C94AA023E0D600DB4
-:1000B000530E600D530EA50DC80D530E1D0E300EC0
-:1000C0001A111A11491149118C11C611D313D313E6
-:1000D000DF11D313D412D412A713D313D313BE1327
-:1000E00029002B00E000E100357100001E00140023
-:1000F00004001D006400E3001F001A0016001B002E
-:1001000000000252200008000700060000002C003A
-:100110002100150009001900E2001151220017000A
-:100120000A0005000000460023001C0000000B0030
-:100130000000650023000A000000050000004800E0
-:1001400024001C000B0011000000007525001800A1
-:100150000D001000E600115126000C000E003600C4
-:1001600000002C00270012000F0037002F00015262
-:100170002D001300330038003000E7002A0028006B
-:100180002800E500347100000100010001000100B9
-:100190000100000001001E022002220201000100F5
-:1001A00001001F02210223020100010001002F02B1
-:1001B00026022F000100010001003002270230005A
-:1001C000010012510100310235003502000001002A
-:1001D0000100010000000100000001000100010019
-:1001E0000000010000000100010001000100010009
-:1001F0000000010000005F005C0059006200125125
-:10020000540060005D005A0062000100550061006A
-:100210005E005B0063000100560057005700580065
-:10022000580001002E0032003400010001000000DF
-:100230000100010001000100010000003A004A0035
-:100240005000F400F20001003B0052005100F000A9
-:10025000F10001003C004D004F00F500F3000100EB
-:100260003D0049004C000100010010513E004B00D0
-:100270004E0001000000A5003F0001000000010049
-:1002800000004C05400001000000010000000100DA
-:1002900041000100010001000000010042000100D6
-:1002A000B600AC00AA001051430049004C00AE005B
-:1002B000A800010044000100B700AB00A900010044
-:1002C00045000100010001000100010001000100E2
-:1002D00001000100010000001603450072006700E4
-:1002E0006F0044006F007800200045005A000000B5
-:1002F00016034500720067006F0044006F0078002D
-:10030000200045005A0000000403090409026D00A2
-:10031000040100A0FA090400000103010100092101
-:1003200011010001223F000705810308000A0904AA
-:1003300001000103010200092111010001224D0009
-:100340000705820308000A090402000103000000F7
-:100350000921110100012236000705830308000A64
-:10036000090403000103000000092111010001221A
-:10037000390007058403100001120110010000007C
-:1003800008EDFE071301000102000105010906A1A5
-:1003900001050719E029E715002501950875018178
-:1003A0000205081901290595057501910295017548
-:1003B0000391010507190029771500250195787526
-:1003C000018102C005010980A101850216010026F4
-:1003D000B7001A01002AB700751095018100C00509
-:1003E0000C0901A1018503160100269C021A0100D7
-:1003F0002A9C02751095018100C005010902A10126
-:100400000901A10005091901290515002501950516
-:1004100075018102950175038101050109300931DA
-:100420001581257F95027508810609381581257F7C
-:10043000950175088106050C0A38021581257F95FE
-:100440000175088106C0C005010906A1010507194B
-:10045000E029E715002501950875018102950175D0
-:100460000881010508190129059505750191029575
-:1004700001750391010507190029FF150025FF9556
-:100480000675088100C000000000000000000000A8
-:1004900000010204060A0F17202C3A4A5D71879D5D
-:1004A000B3C7DAE9F5FCFFFCF5E9DAC7B39D87715C
-:1004B0005D4A3A2C20170F0A0604020100000000D2
-:1004C00000000000000011241FBECFEFDAE0DEBF05
-:1004D000CDBF04B603FE27C08091F1019091F201D7
-:1004E000A091F301B091F4018730904BA740B04B3D
-:1004F000D1F41092F1011092F2011092F3011092D6
-:10050000F40114BE84B7877F84BF0FB6F894A89512
-:1005100080916000886180936000109260000FBE3F
-:10052000E0E0FFE3099511E0A0E0B1E0ECE2F6E4E1
-:1005300002C005900D92A433B107D9F721E0A4E3DE
-:10054000B1E001C01D92A13FB207E1F70E94460948
-:100550000C9414230C94000061110BC0FC018281E7
-:10056000882321F085EE0E94B40F03C085EE0E941F
-:100570007C1080E090E0089508956091B50170913D
-:10058000B6018091B7019091B8010E94041A569863
-:100590005E98E5E3F1E065E070E031E0A1E0B0E015
-:1005A0004081831305C091E04F3F41F490E006C0C5
-:1005B00021E0411101C020E0922F9195940F90838A
-:1005C000992309F194B1AD01062E01C0440F0A949C
-:1005D000EAF7942B94B995B1492B45B9408150E085
-:1005E000313029F4509389004093880019C032308B
-:1005F00029F450938B0040938A0012C050938D00D1
-:1006000040938C000DC094B1AD01062E01C0440F83
-:100610000A94EAF74095942394B995B1492345B9D2
-:100620003F5F6F5F7F4F3196343009F0B9CF089547
-:100630000C94BD0256985E9825982D9826982E9871
-:1006400027982F988FEF90E09093890080938800EF
-:1006500090938B0080938A0090938D0080938C0000
-:10066000259A2D9A2FEF80E792E02150804090400C
-:10067000E1F700C00000269A2E9A2FEF80E792E063
-:10068000215080409040E1F700C00000279A2F9A47
-:100690002FEF80E792E0215080409040E1F700C0CA
-:1006A000000025982D982FEF80E792E021508040A0
-:1006B0009040E1F700C0000026982E982FEF80E7C9
-:1006C00092E0215080409040E1F700C00000279860
-:1006D0002F9856985E9825982D9826982E982798AA
-:1006E0002F98089589EA8093800089E080938100A3
-:1006F00024982C983F988AB18F748AB96E98479A3B
-:100700008BB1806B8BB9769A0E941A030C94BC0251
-:1007100080E2809300018091380181110EC00E9417
-:10072000D70381E0809338012FEF83ED90E32150D0
-:1007300080409040E1F700C0000080E40E94DD03AB
-:100740008093000181112EC00E9407048093000154
-:10075000811128C00E94070480930001811122C0EA
-:100760008FE30E9407048093000181111BC00E9447
-:10077000FF0380E40E94DD0380930001811112C019
-:100780008CE00E9407048093000181110BC00E943D
-:10079000070480930001811105C08FE30E940704C4
-:1007A000809300010E94FF03809100010895109240
-:1007B000B9008AE08093B800089594EA9093BC0051
-:1007C0009091BC0097FFFCCF9091B900987F983032
-:1007D00021F0903111F081E008958093BB0084E80E
-:1007E0008093BC008091BC0087FFFCCF8091B90052
-:1007F000887F883111F0803471F780E0089584E9B2
-:100800008093BC008091BC0084FDFCCF0895809350
-:10081000BB0084E88093BC008091BC0087FFFCCFC4
-:100820009091B900987F81E0983209F480E00895B2
-:1008300084E88093BC008091BC0087FFFCCF80914E
-:10084000BB00089580910001811115C080E40E94D1
-:10085000DD038093000181110CC082E10E94070436
-:1008600080930001811105C08FEF0E9407048093DF
-:1008700000010E94FF0384B1807F84B985B1807F2D
-:1008800085B98AB1837F8AB98BB1837F8BB93E9852
-:10089000469808950E948803809300010E942204D4
-:1008A00080B38C7080BB81B3836F81BBE8E4F1E0DF
-:1008B000AAE3B1E011921D9281E0E635F807D1F785
-:1008C0000C9472039F92AF92BF92CF92DF92EF92FD
-:1008D000FF920F931F93CF93DF93809100018823A2
-:1008E00079F0809139018F5F80933901811108C0BF
-:1008F0000E94880380930001811102C00E941A03A4
-:100900008AE3E82E81E0F82E8701C0E0D0E0BB2426
-:10091000B39492E0A92ECC24C394D12CC730D10536
-:1009200000F580910001811164C080E40E94DD0324
-:1009300080930001811112C082E10E94070480931C
-:10094000000181110BC0C6010C2E01C0880F0A9452
-:10095000EAF780950E940704809300010E94FF033C
-:1009600048C0CA30A1F028F4C83059F0C93061F04D
-:1009700005C0CC3089F070F0CD3089F0209A2898ED
-:1009800010C0219A29980DC0229A2A980AC0239A49
-:100990002B9807C0529A01C0539A5B9802C03E9AA6
-:1009A0004698E0EAEA95F1F78FB181708B25799945
-:1009B00002C032E001C030E0832B7C9902C034E0F9
-:1009C00001C030E0832B7D9902C028E001C020E007
-:1009D000822B7E9902C090E101C090E0892B9FB1EB
-:1009E0009095991F9927991F9295990F907E892B21
-:1009F0000FC08091000181114AC080E40E94DD0394
-:100A000080930001882381F1912C0E94FF03892D9E
-:100A1000D8019C91981719F08C93A09201010E9423
-:100A2000220421960F5F1F4FCE30D10509F076CFFB
-:100A300080910101882369F181508093010188230D
-:100A400039F0EFE9FFE03197F1F700C0000021C075
-:100A5000E8E4F1E0D7018D917D018193B8E4EB16D4
-:100A6000B1E0FB06B9F715C083E10E94070480934B
-:100A700000018111C9CF81E40E94DD038093000150
-:100A80008111C2CF0E941804982E9094BECF80E0AE
-:100A9000BFCF0E94180381E0DF91CF911F910F918A
-:100AA000FF90EF90DF90CF90BF90AF909F90089510
-:100AB000E82FF0E0E85BFE4F8081089508958B3BBE
-:100AC000910580F4883A910548F5853A9105D8F466
-:100AD0008430910508F0B2C0019709F06EC081E042
-:100AE00090E00895803E910508F467C0883E910526
-:100AF00008F4A4C09C01205F31092031310508F0C1
-:100B00005CC090650895853A910509F459C0863A0C
-:100B1000910509F058C082E890E40895883A91055B
-:100B200009F454C0893A910509F453C08A3A9105F1
-:100B300009F452C08B3A910509F451C08C3A9105E1
-:100B400009F450C08D3A910509F44FC0803B9105DE
-:100B500009F44EC08E3A910509F44DC08F3A9105C3
-:100B600009F44CC0813B910509F44BC0823B9105CF
-:100B700009F44AC0833B910509F449C0843B9105BF
-:100B800009F448C0853B910509F447C0863B9105AF
-:100B900009F446C0873B910509F445C0883B91059F
-:100BA00009F444C0893B910509F443C08A3B91058F
-:100BB00009F442C080E094E4089580E090E0089554
-:100BC00081E890E4089583E890E4089582EE94E447
-:100BD000089589EE94E408958AEE94E4089585EBEF
-:100BE00094E4089586EB94E4089587EB94E40895E3
-:100BF0008CEC94E408958DEC94E4089583E895E4F6
-:100C000008958AE895E4089582E995E4089584E9D1
-:100C100095E4089581E296E4089583E296E40895C8
-:100C200084E296E4089585E296E4089586E296E4E7
-:100C3000089587E296E408958AE296E40895089577
-:100C400024E5829FC0011124FC0126E0729FE00D83
-:100C5000F11D1124E60FF11DEE0FFF1FE052FF4FB3
-:100C6000859194910895880F991FFC01E05AF040F6
-:100C7000859194910895880F991FFC01E052FF4FD0
-:100C800085919491089524E5829FC0011124FC016F
-:100C900046E0749FE00DF11D1124E60FF11DEE0FEB
-:100CA000FF1FE052FF4F859194919C013A952115C9
-:100CB0004FE1340708F425C13F512115304120F49C
-:100CC0009F700E943B0608959C01305321153041CE
-:100CD00018F49927906C0895811520E5920769F41E
-:100CE0000E94F5134FEF84E39CE041508040904018
-:100CF000E1F700C000000C94FC1A813020E5920757
-:100D000031F48091D00181608093D00108959C01DD
-:100D100030552115304108F05CC0292F33272F7042
-:100D2000332721303105E9F4AC0164E0440F551F4D
-:100D30006A95E1F744275370BC016370772702C0BE
-:100D4000220F331F6A95E2F73C68242B352B73E0A2
-:100D5000880F991F7A95E1F780769927822B932B3C
-:100D600008952230310529F4982F8827816F906AE1
-:100D7000089523303105A1F4AC0133E0440F551F31
-:100D80003A95E1F7407E57708370992721E030E073
-:100D900002C0220F331F8A95E2F7C9019C6816C072
-:100DA0002430310531F5AC0123E0440F551F2A955D
-:100DB000E1F7407E57708370992721E030E002C050
-:100DC000220F331F8A95E2F7C9019A68842B952B6D
-:100DD00008959C0130572115304118F49F7090629E
-:100DE00008959C0130582115304118F49F70906A85
-:100DF0000895803E9105E0F4803C910558F58133DB
-:100E0000910509F46FC048F48932910509F463C073
-:100E10008A32910509F46DC072C089339105E9F0F9
-:100E200082389105D1F08533910509F44DC067C032
-:100E3000833E910581F138F4803E9105B9F0823E00
-:100E40009105D9F05CC0863E910561F1873E910520
-:100E5000A1F155C00E94330608952091E20120FDC2
-:100E600002C021FF4CC080EE90E049C08091E201B9
-:100E700080FFF9CF89E390E042C08091E20182FFD8
-:100E80000EC08091E20184FF03C080E090E037C093
-:100E900083EE90E034C08091E20182FFF2CF82EED7
-:100EA00090E02DC08091E20183FF0BC08091E201B0
-:100EB00084FDEBCF87EE90E022C08091E20183FFBA
-:100EC000F5CF86EE90E01BC08091E20185FF07C060
-:100ED00089E290E014C08091E20185FFF9CF85E3BB
-:100EE00090E00DC08091E20186FF07C08AE290E0A9
-:100EF00006C08091E20186FFF9CF81E390E00E9475
-:100F00005F0508950895809166010895CF93DF935A
-:100F100000D01F92CDB7DEB79C018091E8018430EC
-:100F200019F593E099833B832A839093E9008FEF2F
-:100F30009091E800815095FD06C095ED9A95F1F7E6
-:100F400000008111F5CF8091E80085FF0DC040E0E1
-:100F500050E063E070E0CE0101960E94F3098091B9
-:100F6000E8008E778093E8000F900F900F90DF914C
-:100F7000CF910895CF93DF9300D01F92CDB7DEB706
-:100F80002091E801243021F522E029839B838A8384
-:100F900083E08093E9008FEF9091E800815095FD08
-:100FA00006C095ED9A95F1F700008111F5CF80917B
-:100FB000E80085FF0DC040E050E063E070E0CE0146
-:100FC00001960E94F3098091E8008E778093E800F3
-:100FD0000F900F900F90DF91CF9108959C01809119
-:100FE000E8018430F9F482E08093E9009FEF80917A
-:100FF000E800915085FD06C085ED8A95F1F7000067
-:101000009111F5CF8091E80085FF0CC040E050E0E1
-:1010100065E070E0C9010E94F3098091E8008E77D5
-:101020008093E8000895CF93DF93EC018091E8016D
-:10103000843009F046C090910C019923D9F0909129
-:101040000D019923B9F08093E9008FEF9091E800AA
-:10105000815095FD06C095E19A95F1F70000811148
-:10106000F5CF8091E80085FF2CC040E050E060E1C2
-:1010700070E017C081E08093E9008FEF9091E80065
-:10108000815095FD06C095ED9A95F1F7000081110C
-:10109000F5CF8091E80085FF14C040E050E068E0A3
-:1010A00070E0CE010E94F3098091E8008E77809372
-:1010B000E80080E1FE01A6E5B1E001900D928A957D
-:1010C000E1F7DF91CF9108958091E701811109C087
-:1010D0000E94840B0E94E10B8091E2008460809367
-:1010E000E20008951092E701089508950C943221CA
-:1010F0000E94921A0E9438210E948C0E0C94820742
-:1011000042E061EC81E00E94FD0A42E061EC82E095
-:101110000E94FD0A42E061EC83E00E94FD0A42E188
-:1011200061EC84E00C94FD0A8091EA01833009F4BB
-:1011300055C030F4813071F0823009F48EC00895CA
-:101140008A3009F47AC08B3009F460C0893009F024
-:101150009CC020C08091E901813A09F096C080913D
-:10116000E800877F8093E8008091ED019091EE0187
-:10117000892B21F460E186E591E003C060E080E026
-:1011800090E070E00E943E0A8091E8008B778093A7
-:10119000E80008958091E901813209F076C08091DC
-:1011A000ED019091EE01009719F0039709F06DC0E1
-:1011B0008091E800877F8093E8008091E80082FDBD
-:1011C00005C08091E8018111F8CF5FC08091F100E6
-:1011D000809366018091E8008B7753C08091E9018C
-:1011E000813A09F052C08091ED019091EE01892B76
-:1011F00009F04BC08091E800877F8093E8008091E0
-:10120000E80080FFFCCF80910C0136C08091E9019D
-:101210008132D9F58091ED019091EE01892BA9F5EC
-:101220008091E800877F8093E8000E94320B8091D4
-:10123000EB0180930C010C94F5138091E90181324C
-:1012400021F58091E800877F8093E8000E94320BAF
-:101250008091EC018093670108958091E901813AC2
-:10126000A1F48091E800877F8093E8008091E800F6
-:1012700080FFFCCF809167018093F1008091E800AE
-:101280008E778093E8000C94320B089584B7877FA3
-:1012900084BF0FB6F894A895809160008861809310
-:1012A0006000109260000FBE90E080E80FB6F894E6
-:1012B00080936100909361000FBE0E94DB0E0E943C
-:1012C000840B0E94E10B8091E20084608093E20035
-:1012D00078940E946C0E0E94DD0E82E091E00E94E4
-:1012E000870E0E9420218091E801853069F40E94D8
-:1012F000541A8091E6018823B1F30E947E1A882354
-:1013000091F30E94DD09EFCF0E94E30EECCF292F6D
-:10131000332723303105C9F060F42130310581F0E5
-:101320002230310509F041C08DE690E02CE033E039
-:1013300040C021323105E1F02232310531F135C0B2
-:1013400082E190E029E733E034C0992781309105AC
-:1013500049F028F0029749F5E8EDF2E005C0E8E031
-:10136000F3E002C0E0EFF2E0849190E09F0121C041
-:101370006430D8F4E62FF0E0EE0FFF1FEE5DFE4F75
-:101380002081318189E090E014C0643070F470E015
-:10139000FB01EE0FFF1FE65EFE4F20813181FB0156
-:1013A000EA5EFE4F808190E004C080E090E020E0A3
-:1013B00030E0FA0131832083089580E189BD82E124
-:1013C00089BD09B400FEFDCF8091D8008F7D809348
-:1013D000D8008091E00082608093E0008091E0007E
-:1013E00081FDFCCF0895CF92DF92EF92FF920F9391
-:1013F0001F93CF93DF93EC018B016A010E94510B85
-:10140000811133C0C114D10439F0F601808191817A
-:10141000081B190BC80FD91FE12CF12C0115110560
-:1014200019F18091E80085FD16C08091E8008E7763
-:101430008093E800C114D10449F0F60180819181C4
-:10144000E80EF91EF182E08285E00FC00E94510B88
-:10145000882321F30AC089918093F100015011097A
-:10146000FFEFEF1AFF0ADACF80E0DF91CF911F91F3
-:101470000F91FF90EF90DF90CF9008952091EF01B2
-:101480003091F0012617370748F06115710539F4DE
-:101490002091E8002E772093E80001C0B901FC01FB
-:1014A00020E06115710579F18091E8018823F1F15F
-:1014B0008530F1F18091E80083FD3CC08091E80027
-:1014C00082FD2EC08091E80080FFEBCF2091F300D9
-:1014D0008091F20090E0922B6115710551F08830F7
-:1014E000910538F421912093F10061507109019622
-:1014F000F3CF21E0089709F020E08091E8008E7793
-:101500008093E800CECF2111CFCF0AC08091E801AF
-:10151000882361F0853061F08091E80083FD0AC086
-:101520008091E80082FFF2CF80E0089582E0089584
-:1015300083E0089581E008952091EF013091F0015A
-:101540002617370748F06115710539F42091E80036
-:101550002E772093E80001C0B901FC0120E061155D
-:10156000710591F18091E801882309F440C085302C
-:1015700009F43FC08091E80083FD3DC08091E80000
-:1015800082FD2FC08091E80080FFE9CF2091F30019
-:101590008091F20090E0922B6115710559F088302E
-:1015A000910540F424912093F10031966150710926
-:1015B0000196F2CF21E0089709F020E08091E80041
-:1015C0008E778093E800CBCF2111CCCF0AC08091D9
-:1015D000E801882361F0853061F08091E80083FDA7
-:1015E0000AC08091E80082FFF2CF80E0089582E097
-:1015F000089583E0089581E00895982F973068F565
-:101600009093E900981739F07091EC002091ED006B
-:101610005091F00003C0242F762F50E021FD02C02E
-:101620009F5FECCF3091EB003E7F3093EB00309129
-:10163000ED003D7F3093ED003091EB003160309351
-:10164000EB007093EC002093ED005093F00020919C
-:10165000EE0027FDE5CF80E008958F708093E900CC
-:1016600081E008958091E90187FF11C08091E80031
-:1016700082FD05C08091E8018111F8CF11C08091F1
-:10168000E8008B770BC08091E801882349F08091B6
-:10169000E80080FFF8CF8091E8008E778093E80023
-:1016A00008952091E4003091E50095E64091EC002A
-:1016B000842F817040FF23C08091E80080FD1DC011
-:1016C0008091E801882399F0853099F08091EB00B2
-:1016D00085FD11C04091E4005091E50024173507C5
-:1016E00029F3915011F09A01E1CF84E0089582E04E
-:1016F000089583E0089581E0089580E00895409181
-:10170000E80042FFDDCF08950E94F20B0E94FA0B21
-:10171000E0EEF0E0808181608083E8EDF0E08081A0
-:101720008F77808319BCA7EDB0E08C918E7F8C936E
-:1017300080818F7E80831092E70108950F931F931D
-:10174000CF93DF930E94F20B0E94FA0BC8EDD0E01A
-:1017500088818F77888388818068888388818F7D5E
-:10176000888319BC1092E8011092E4011092E601FE
-:101770001092E50100EE10E0F80180818B7F8083FC
-:1017800088818160888342E060E080E00E94FD0AF9
-:10179000E1EEF0E080818E7F8083E2EEF0E08081F8
-:1017A00081608083808188608083F80180818E7F62
-:1017B0008083888180618883DF91CF911F910F9111
-:1017C0000895E8EDF0E080818F7E8083E7EDF0E022
-:1017D00080818160808384E082BF81E08093E70123
-:1017E0000C949E0BE8EDF0E080818E7F8083109258
-:1017F000E20008951092DA001092E10008951F921D
-:101800000F920FB60F9211242F933F934F935F9334
-:101810006F937F938F939F93AF93BF93EF93FF93B8
-:101820008091E10082FF0BC08091E20082FF07C03F
-:101830008091E1008B7F8093E1000E946B0E80918C
-:10184000DA0080FF1FC08091D80080FF1BC080910C
-:10185000DA008E7F8093DA008091D90080FF0DC07E
-:1018600080E189BD82E189BD09B400FEFDCF81E040
-:101870008093E8010E94640805C019BC1092E80139
-:101880000E9472088091E10080FF19C08091E200FF
-:1018900080FF15C08091E2008E7F8093E2008091EE
-:1018A000E20080618093E2008091D80080628093A2
-:1018B000D80019BC85E08093E8010E9476088091E9
-:1018C000E10084FF30C08091E20084FF2CC080E101
-:1018D00089BD82E189BD09B400FEFDCF8091D800A9
-:1018E0008F7D8093D8008091E1008F7E8093E1000E
-:1018F0008091E2008F7E8093E2008091E20081601F
-:101900008093E2008091E401882311F084E007C015
-:101910008091E30087FD02C081E001C083E08093F5
-:10192000E8010E9478088091E10083FF29C080913E
-:10193000E20083FF25C08091E100877F8093E10072
-:1019400082E08093E8011092E4018091E1008E7FB3
-:101950008093E1008091E2008E7F8093E20080918D
-:10196000E20080618093E20042E060E080E00E945B
-:10197000FD0A8091F00088608093F0000E94750855
-:10198000FF91EF91BF91AF919F918F917F916F9157
-:101990005F914F913F912F910F900FBE0F901F902D
-:1019A00018951F920F920FB60F9211242F933F9309
-:1019B0004F935F936F937F938F939F93AF93BF9357
-:1019C000CF93DF93EF93FF93C091E900CF708091A5
-:1019D000EC00D82FD17080FDD0E81092E900809102
-:1019E000F000877F8093F00078940E94150D10928C
-:1019F000E9008091F00088608093F000CD2BCF70DB
-:101A0000C093E900FF91EF91DF91CF91BF91AF912A
-:101A10009F918F917F916F915F914F913F912F9106
-:101A20000F900FBE0F901F9018951F93CF93DF93C9
-:101A3000CDB7DEB7AA970FB6F894DEBF0FBECDBF05
-:101A4000E9EEF1E08091F100819321E0E13FF207BE
-:101A5000C9F70E9494088091E80083FF24C1809117
-:101A6000E9019091EA01492F50E04A30510508F010
-:101A70001AC1FA01EA5AFF4F0C94C922803881F04A
-:101A8000823809F010C18091ED018F708093E900D8
-:101A90008091EB0085FB882780F91092E90006C051
-:101AA0008091E5019091E601911182609091E800AA
-:101AB000977F9093E8008093F1001092F100C8C0E6
-:101AC000282F2D7F09F0EFC0882319F0823061F0B4
-:101AD000EAC08091EB01813009F0E5C0933009F054
-:101AE00080E08093E6012BC08091EB01811127C03B
-:101AF0008091ED018F7009F4D6C08093E9002091A8
-:101B0000EB0020FF1CC0933021F48091EB00806239
-:101B100014C09091EB0090619093EB0021E030E0D5
-:101B2000A90102C0440F551F8A95E2F74093EA00CD
-:101B30001092EA008091EB0088608093EB00109295
-:101B4000E9008091E800877F86C08111ACC01091C8
-:101B5000EB011F778091E3008078812B8093E30075
-:101B60008091E800877F8093E8000E94320B80918B
-:101B7000E80080FFFCCF8091E30080688093E30061
-:101B8000111102C082E001C083E08093E8018BC0A4
-:101B90008058823008F087C08091EB019091EC0171
-:101BA0008C3D53E0950779F583E08A838AE2898347
-:101BB0004FB7F894DE01139620E03EE051E2E32FA8
-:101BC000F0E050935700E49120FF03C0E295EF70DE
-:101BD0003F5FEF708E2F90E0EA3010F0C79601C0A3
-:101BE000C0968D939D932F5F243149F74FBF80910D
-:101BF000E800877F8093E8006AE270E0CE010196FA
-:101C00000E943E0A14C0AE014F5F5F4F6091ED012C
-:101C10000E948709BC01892B09F445C09091E80016
-:101C2000977F9093E80089819A810E949C0A809115
-:101C3000E8008B778093E80036C08038A1F580916A
-:101C4000E800877F8093E8008091E4018093F100B1
-:101C50008091E8008E778093E8000E94320B23C0C9
-:101C6000811121C08091EB019091EC01992702979D
-:101C7000D4F48091E800877F8093E8008091EB01A5
-:101C80008093E4010E94320B8091E401811106C02F
-:101C90008091E30087FD02C081E001C084E0809371
-:101CA000E8010E9480088091E80083FF0AC08091CB
-:101CB000E800877F8093E8008091EB00806280934A
-:101CC000EB00AA960FB6F894DEBF0FBECDBFDF9132
-:101CD000CF911F9108950895CF938091E8018823B3
-:101CE000A1F0C091E900CF709091EC00892F817034
-:101CF00090FD80E8C82B1092E9008091E80083FDF8
-:101D00000E94150DCF70C093E900CF910895909374
-:101D10006D0180936C010895E0916C01F0916D016B
-:101D2000309721F00190F081E02D099480E0089532
-:101D3000E0916C01F0916D01309721F00280F38108
-:101D4000E02D09940895E0916C01F0916D013097B8
-:101D500021F00480F581E02D0994089520916A0115
-:101D600030916B012817390771F090936B018093C4
-:101D70006A01E0916C01F0916D01309721F00680CD
-:101D8000F781E02D0994089520916801309169014F
-:101D90002817390771F09093690180936801E091E9
-:101DA0006C01F0916D01309721F00084F185E02DF8
-:101DB0000994089508950C94DA0E0E94981A0E94CE
-:101DC0004A040C945E1BCF92DF92EF92FF920F9326
-:101DD0001F93CF93DF93CDB7DEB72B970FB6F89451
-:101DE000DEBF0FBECDBF0E9462048FE6C82E81E029
-:101DF000D82E00E010E0E02E802F0E945805F6015A
-:101E000041916F01F82EF426B1F40F5F1F4F0E3091
-:101E1000110589F78FEF89838A831B820E94A11A9B
-:101E20008160782F9D838C8349815A816B818D815C
-:101E30000E94860F40C09091D00191FF04C08B8713
-:101E40000E945E058B8520E030E04F2D50E0922F00
-:101E5000BA01022E02C0759567950A94E2F760FFF9
-:101E600024C02E83EF8221E030E0690102C0CC0C57
-:101E7000DD1C9A95E2F790E08C219D21892B09F4D5
-:101E800020E028870E94A11A8160782F9A8789878D
-:101E90004E815F8168858A850E94860FF801E1592D
-:101EA000FE4F8081C826C08206C02F5F3F4F26307C
-:101EB000310569F6AACF0E94451E0E948C0E9091B2
-:101EC0006E018917A1F00E948C0E80936E012B96F3
-:101ED0000FB6F894DEBF0FBECDBFDF91CF911F913B
-:101EE0000F91FF90EF90DF90CF900C9482072B968C
-:101EF0000FB6F894DEBF0FBECDBFDF91CF911F911B
-:101F00000F91FF90EF90DF90CF900895CF93DF93E4
-:101F1000CDB7DEB72B970FB6F894DEBF0FBECDBF9F
-:101F20004F83588769877A878B87DE01119686E011
-:101F3000FD0111928A95E9F785E0FE01379601903F
-:101F40000D928A95E1F749815A816B817C818D815F
-:101F50009E810E9489162B960FB6F894DEBF0FBEA5
-:101F6000CDBFDF91CF910895CF93C82F882309F477
-:101F7000C1C0823859F40E948C0E81FDBBC089E338
-:101F80000E9426190E94DE1989E30CC0833879F477
-:101F90000E948C0E80FDAEC083E50E9426190E942F
-:101FA000DE1983E50E946519CF910C94DE198438FF
-:101FB00059F40E948C0E82FD9DC087E40E94261970
-:101FC0000E94DE1987E4EECF8CEF8C0F813A48F443
-:101FD0008C2F0E94852081118DC08C2F0E94261984
-:101FE000E3CF80E28C0F883048F4C77081E001C0F5
-:101FF000880FCA95EAF70E94A719D6CF8BE58C0FF8
-:10200000833078F4C53A29F0C63A31F083E890E09D
-:1020100005C081E890E002C082E890E0CF910C9486
-:10202000AE0E88E58C0F833108F064C0C83A39F1F0
-:10203000C93A41F1CA3A49F1CB3A51F1CC3A59F196
-:10204000CD3A61F1C03B69F1CE3A71F1CF3A79F105
-:10205000C13B81F1C23B89F1C33B91F1C43B99F192
-:10206000C53BA1F1C63BA9F1C73BB1F1C83BB9F1F2
-:10207000C93BC1F1CA3BC9F180E090E038C082EEB3
-:1020800090E035C089EE90E032C08AEE90E02FC03B
-:1020900085EB90E02CC086EB90E029C087EB90E0C8
-:1020A00026C08CEC90E023C08DEC90E020C083E84B
-:1020B00091E01DC08AE891E01AC082E991E017C062
-:1020C00084E991E014C081E292E011C083E292E0E1
-:1020D0000EC084E292E00BC085E292E008C086E286
-:1020E00092E005C087E292E002C08AE292E0CF91DE
-:1020F0000C94C40ECF910895882309F44BC0823804
-:1021000059F40E948C0E81FF45C089E30E94261974
-:102110000E94DE1989E30CC0833871F40E948C0E92
-:1021200080FF38C083E50E9426190E94DE1983E5EE
-:102130000E9465190C94DE19843859F40E948C0EA3
-:1021400082FF28C087E40E9426190E94DE1987E4D6
-:10215000EFCF9CEF980F913A58F390E2980F983098
-:1021600050F4877091E001C0990F8A95EAF7892FA2
-:102170000E94AD19DFCF9BE5980F933020F480E0EB
-:1021800090E00C94AE0E885A833120F480E090E009
-:102190000C94C40E0895882321F00E94A7190C9472
-:1021A000DE190895882321F00E94AD190C94DE19E0
-:1021B0000895BF92CF92DF92EF92FF920F931F93F9
-:1021C000CF93DF9300D000D000D0CDB7DEB77C0135
-:1021D00085E0F701DE01119601900D928A95E1F7F5
-:1021E000F70183819481892B09F4DDC2908181817B
-:1021F0008F3F19F49F3F09F4D6C2F7010281258170
-:1022000022952F7099838A8389819A812E830E94D7
-:10221000E518182FB92E0E94E4180E94AB17EB2D79
-:10222000E295EF704E2F50E0FA01E05AFF4F2E81F9
-:102230000C94C9228B2D807F9B2D9F70F92E8823B3
-:1022400019F0F29480EFF822002349F0FF2009F4FE
-:1022500057C28F2D0E94B7190E94DE1951C2812FDB
-:102260000E947C10FF2009F49EC28F2D0E94BD1990
-:1022700026960FB6F894DEBF0FBECDBFDF91CF918B
-:102280001F910F91FF90EF90DF90CF90BF900C9433
-:10229000DE193B2D307F8B2D8F70303211F08295FF
-:1022A000807F112319F0113021F12CC00023B9F0E7
-:1022B000222309F490C1213009F08DC126960FB672
-:1022C000F894DEBF0FBECDBFDF91CF911F910F916C
-:1022D000FF90EF90DF90CF90BF900C94C71922230E
-:1022E00019F0213009F45FC28E830E94CA198E81D1
-:1022F00086C1002321F0223008F055C26CC12111A3
-:1023000052C27DC1002321F0222309F464C1F8C127
-:10231000222309F474C109C28B2D8695869583709A
-:1023200019F08130D1F03FC2002321F0812F9B2D85
-:10233000937002C080E090E026960FB6F894DEBF5E
-:102340000FBECDBFDF91CF911F910F91FF90EF9006
-:10235000DF90CF90BF900C94AE0E002321F0812F20
-:102360009B2D937002C080E090E026960FB6F89403
-:10237000DEBF0FBECDBFDF91CF911F910F91FF90B8
-:10238000EF90DF90CF90BF900C94C40E812F00236C
-:1023900019F00E944D1D02C00E94B51D26960FB671
-:1023A000F894DEBF0FBECDBFDF91CF911F910F918B
-:1023B000FF90EF90DF90CF90BF900C943A1E8B2D42
-:1023C000837009F075C00111EEC1812F8295869549
-:1023D0008770880F880F912F9F70C92ED12CE12C08
-:1023E000F12C082E04C0CC0CDD1CEE1CFF1C0A9442
-:1023F000D2F714FF12C00FE010E020E030E004C07C
-:10240000000F111F221F331F8A95D2F7C901B8018F
-:10241000609570958095909503C060E070E0CB0169
-:102420004B2D4695469543704230C1F060F56C29BE
-:102430007D298E299F29413051F126960FB6F894B7
-:10244000DEBF0FBECDBFDF91CF911F910F91FF90E7
-:10245000EF90DF90CF90BF900C94D2176C297D291C
-:102460008E299F2926960FB6F894DEBF0FBECDBFEA
-:10247000DF91CF911F910F91FF90EF90DF90CF9060
-:10248000BF900C94EE170E94D217C701B601269692
-:102490000FB6F894DEBF0FBECDBFDF91CF911F9175
-:1024A0000F91FF90EF90DF90CF90BF900C94B617F4
-:1024B000002319F08B2D817001C08695882309F4C3
-:1024C00072C1812F829586958770880F880F912F12
-:1024D0009F70C92ED12CE12CF12C082E04C0CC0CFD
-:1024E000DD1CEE1CFF1C0A94D2F714FF12C00FE093
-:1024F00010E020E030E004C0000F111F221F331F46
-:102500008A95D2F7C901B80160957095809590952C
-:1025100003C060E070E0CB014B2D469546954370BB
-:102520004230C1F060F56C297D298E299F29413008
-:1025300051F126960FB6F894DEBF0FBECDBFDF91E6
-:10254000CF911F910F91FF90EF90DF90CF90BF90B0
-:102550000C94AC186C297D298E299F2926960FB6DC
-:10256000F894DEBF0FBECDBFDF91CF911F910F91C9
-:10257000FF90EF90DF90CF90BF900C94C8180E940E
-:10258000AC18C701B60126960FB6F894DEBF0FBE91
-:10259000CDBFDF91CF911F910F91FF90EF90DF9012
-:1025A000CF90BF900C949018103FD1F118F4103ECA
-:1025B00050F4A1C0123F09F463C008F44CC0133FAB
-:1025C00009F473C098C01F708B2D8F710023A1F088
-:1025D0000E942918812F26960FB6F894DEBF0FBEF1
-:1025E000CDBFDF91CF911F910F91FF90EF90DF90C2
-:1025F000CF90BF900C94CB100E944A18812F269642
-:102600000FB6F894DEBF0FBECDBFDF91CF911F9103
-:102610000F91FF90EF90DF90CF90BF900C94D2106D
-:102620000023A9F02111BFC08B2D8F7126960FB604
-:10263000F894DEBF0FBECDBFDF91CF911F910F91F8
-:10264000FF90EF90DF90CF90BF900C946F182230E6
-:1026500008F0A9C0E9CF0023A9F08B2D8F71269631
-:102660000FB6F894DEBF0FBECDBFDF91CF911F91A3
-:102670000F91FF90EF90DF90CF90BF900C942918AE
-:10268000002359F38B2D8F7126960FB6F894DEBF79
-:102690000FBECDBFDF91CF911F910F91FF90EF90B3
-:1026A000DF90CF90BF900C944A18002399F08B2DA7
-:1026B0008F7126960FB6F894DEBF0FBECDBFDF91A7
-:1026C000CF911F910F91FF90EF90DF90CF90BF902F
-:1026D0000C94141826960FB6F894DEBF0FBECDBF2B
-:1026E000DF91CF911F910F91FF90EF90DF90CF90EE
-:1026F000BF900C940A180023A9F0222309F4ADCF4F
-:10270000812F26960FB6F894DEBF0FBECDBFDF91A6
-:10271000CF911F910F91FF90EF90DF90CF90BF90DE
-:102720000C94B40F222309F4ADCF812F26960FB657
-:10273000F894DEBF0FBECDBFDF91CF911F910F91F7
-:10274000FF90EF90DF90CF90BF900C947C104B2DBA
-:102750004F70612FC7010E94AC0226960FB6F89405
-:10276000DEBF0FBECDBFDF91CF911F910F91FF90C4
-:10277000EF90DF90CF90BF900C942E174B2D4F70A1
-:10278000612FC70126960FB6F894DEBF0FBECDBFEE
-:10279000DF91CF911F910F91FF90EF90DF90CF903D
-:1027A000BF900C941F0626960FB6F894DEBF0FBE9E
-:1027B000CDBFDF91CF911F910F91FF90EF90DF90F0
-:1027C000CF90BF9008950E94C4190E9499190E9449
-:1027D000DE190E94EA1E0E943A1E80E090E00E94EC
-:1027E000AE0E80E090E00C94C40E0E94B4190C94DC
-:1027F000E3130E94E518292F22952F702C3030F416
-:102800002A3048F42250223078F405C02C3041F0B0
-:102810002F3031F009C0803E48F0803F29F406C0D7
-:1028200093FB882780F9089580E0089581E008955A
-:10283000CF93DF9300D000D01F92CDB7DEB70F90BB
-:102840000F900F900F900F90DF91CF910895CF933D
-:10285000DF9300D000D000D0CDB7DEB726960FB6FC
-:10286000F894DEBF0FBECDBFDF91CF9108951F93C7
-:10287000CF93DF93C0917D0116E080917E01C81750
-:1028800099F0D0E01C9FF0011D9FF00D1124E1583C
-:10289000FE4F4081518162817381848195810E94C4
-:1028A00027142196C770E9CFDF91CF911F9108952A
-:1028B0004091AF015091B0016091B1017091B201AE
-:1028C0008091B3019091B4010C9427148091B401CC
-:1028D00082958F7009F054C08091B101882309F46A
-:1028E0004FC080917D01A0917E014091B201509135
-:1028F000B3016091AF017091B001B6E08A1709F49D
-:102900003FC090E041155105C1F17F3F11F46F3F89
-:10291000A1F1B89FF001B99FF00D1124E158FE4FCD
-:10292000218127132AC02081261327C0228121114B
-:1029300024C0238134812417350710F42150310934
-:10294000241B350B283C3105C0F42091B4012F70B5
-:1029500020612093B40126E0289FF001299FF00D0B
-:102960001124EC57FE4F80818F70806180838FEA45
-:1029700091E00E94D9100C94371401968770BECF55
-:102980000895CF92DF92EF92FF920F931F93CF9310
-:10299000DF93CDB7DEB762970FB6F894DEBF0FBEF8
-:1029A000CDBF8C0185E0F801DE011D9601900D92EE
-:1029B0008A95E1F7D8014C9111965C911197129686
-:1029C0006C918091B2019091B301009709F475C1A7
-:1029D0003091AF017091B0017F3F19F43F3F09F48E
-:1029E0006CC1F801C380D480E090B101EE2009F4FD
-:1029F000BEC02091B401C816D90628F0D601A81B84
-:102A0000B90BCD0104C0809590958C0D9D1DFF24C0
-:102A1000F394883C910578F0F12C207F09F0C4C034
-:102A20007C2DD98AC88A89890E9418148FEA91E07E
-:102A30000E94D910AFC0822F807F09F045C0571384
-:102A400013C0431311C061110FC02F702061209378
-:102A5000B4010E9458148FEA91E00E94D91080912D
-:102A6000B401F80185832EC0CD2819F15F3F11F420
-:102A70004F3FF9F0F62E61111CC080917D0120912D
-:102A80007E0136E0821709F45BC090E0389FF001C8
-:102A9000399FF00D1124E158FE4F7181571306C084
-:102AA0007081471303C07281711103C00196877052
-:102AB000E9CFF62E662309F41CC18091B401816030
-:102AC0008093B401F12C15C1571309C0431307C0FB
-:102AD000611105C08091B401F8018583C8C04D879C
-:102AE0005E878D859E856A8B0E94F9136A8988238B
-:102AF000D1F16623C1F12091B401822F82958F70AC
-:102B000090E0029774F08091AF019091B0019887A6
-:102B10008F831986DB86CA862C87CE0107960E9492
-:102B2000D91086E0F801AFEAB1E001900D928A95E4
-:102B3000E1F70E9466140E945814FF24F394D9C050
-:102B40004D875E878D859E850E94E518292F2295E9
-:102B50002F70223008F0C1C09F7009F0BBC0805EAA
-:102B6000883008F4C6C0C8010E94D910E6CFC81644
-:102B7000D90608F453C0F601E81BF90BCF01883CD5
-:102B8000910508F450C0F12C7C2DD98AC88A898916
-:102B90000E941814EFEAF1E086E0DF011D928A95A9
-:102BA000E9F70E945814A5C0571314C0431312C06C
-:102BB000611110C08091B401F8018583C8010E94A1
-:102BC000D91086E0EFEAF1E0DF011D928A95E9F77E
-:102BD000FE2C8FC04D875E878D859E856A8B0E94F7
-:102BE000F9136A89882309F4BECF662309F4BBCFA1
-:102BF0002091B401822F82958F7090E002970CF49F
-:102C000090CF8091AF019091B0019A8389831B820C
-:102C1000DD82CC822E83CE01019681CF8095909566
-:102C20008C0D9D1DACCFF62E662309F49CCF571357
-:102C300033C0431331C02091B40120FD24C0822F42
-:102C400082958F70482F50E041155105E1F0D80171
-:102C500015962C9315974F30510549F08F5F982F9B
-:102C60009295907F822F8F70892B15968C93C80137
-:102C70000E94D91086E0F801AFEAB1E001900D9210
-:102C80008A95E1F78ECF86E0F801AFEAB1E00190D6
-:102C90000D928A95E1F72DC04D875E878D859E85C3
-:102CA0000E94F91381113DCF8091B401816080931E
-:102CB000B401C8010E94D9101CC0662309F453CF87
-:102CC0004D875E878D859E850E94F913882309F4C0
-:102CD0004ACF27CF811143CF0CC0243008F043CF17
-:102CE0009F7009F43CCFD80115969C91907F09F014
-:102CF00036CF8F2D62960FB6F894DEBF0FBECDBFD4
-:102D0000DF91CF911F910F91FF90EF90DF90CF90C7
-:102D100008951F93CF93DF93CDB7DEB72C970FB6EF
-:102D2000F894DEBF0FBECDBF4F83588769877A877F
-:102D30008B879C87CE0107960E94C114882371F06F
-:102D40008A859B85892B09F441C088858F3F09F0CE
-:102D500065C08F818F3F09F061C038C086E0FE01F9
-:102D60003796DE01119601900D928A95E1F76A85FA
-:102D70007B856115710551F1FF81E885EF3F11F405
-:102D8000FF3F21F120917E0130E0C901019687705B
-:102D9000992740917D0150E08417950709F447C0B9
-:102DA000F983EA837D836C8396E0929FD001939FA1
-:102DB000B00D1124A158BE4FFE01319601900D9225
-:102DC0009A95E1F780937E010E94371416E0809176
-:102DD0007D0190917E018917B9F1189FC0011124DE
-:102DE00081589E4F0E94C114882371F1E0917D01AA
-:102DF0001E9FF0011124E158FE4F408151816281F4
-:102E00007381848195810E94271480917D0190E0D7
-:102E100001968770992780937D01D9CF4F8158857E
-:102E200069857A858B859C850E942714CFCF0E9467
-:102E3000F51310927E0110927D01EFEAF1E086E039
-:102E4000DF011D928A95E9F72C960FB6F894DEBF44
-:102E50000FBECDBFDF91CF911F910895EF92FF92EA
-:102E60000F931F93CF93DF938C01892B09F46CC0D0
-:102E7000F12CEE24E394E8012196F8018491843743
-:102E800040F4843008F051C0813081F0823019F173
-:102E90005BC0853709F444C0A8F19CE7980F9037D0
-:102EA00008F052C08F770E947C1041C00E5F1F4F08
-:102EB000FE01849190E2980F983050F48770FE2DB7
-:102EC00001C0FF0F8A95EAF78F2F0E94B71914C02F
-:102ED0000E94B40F2DC00E5F1F4FFE01849190E23F
-:102EE000980F983060F48770FE2D01C0FF0F8A950F
-:102EF000EAF78F2F0E94BD190E94DE1919C00E94A7
-:102F00007C1016C00E5F1F4FFE01C491CC2381F0D0
-:102F10008FE99FE00197F1F700C00000C150F6CFA4
-:102F20000E5F1F4FFE01F49003C00E94B40F8E018C
-:102F30008F2D882309F49FCFEFE9FFE03197F1F758
-:102F400000C000008150F5CFDF91CF911F910F910C
-:102F5000FF90EF90089508956093B9017093BA01BE
-:102F60008093BB019093BC010C94E3130F931F93C8
-:102F70000091B9011091BA012091BB013091BC01BF
-:102F8000DC01CB01802B912BA22BB32B8093B901B9
-:102F90009093BA01A093BB01B093BC011F910F9114
-:102FA0000C94E3130F931F930091B9011091BA0190
-:102FB0002091BB013091BC01DC01CB018023912326
-:102FC000A223B3238093B9019093BA01A093BB01CC
-:102FD000B093BC011F910F910C94E3130F931F93B7
-:102FE0000091B9011091BA012091BB013091BC014F
-:102FF000DC01CB0180279127A227B3278093B90159
-:103000009093BA01A093BB01B093BC011F910F91A3
-:103010000C94E3131092B5011092B6011092B7010F
-:103020001092B8010C94E31341E050E060E070E0CE
-:1030300004C0440F551F661F771F8A95D2F740932F
-:10304000B5015093B6016093B7017093B8010C9429
-:10305000E31341E050E060E070E004C0440F551F0E
-:10306000661F771F8A95D2F78091B5019091B601BE
-:10307000A091B701B091B801482B592B6A2B7B2B3B
-:103080004093B5015093B6016093B7017093B801B6
-:103090000C94E31341E050E060E070E004C0440FA2
-:1030A000551F661F771F8A95D2F7409550956095FA
-:1030B00070958091B5019091B601A091B701B09142
-:1030C000B801482359236A237B234093B5015093C9
-:1030D000B6016093B7017093B8010C94E31341E01B
-:1030E00050E060E070E004C0440F551F661F771F7A
-:1030F0008A95D2F78091B5019091B601A091B70160
-:10310000B091B801482759276A277B274093B5011A
-:103110005093B6016093B7017093B8010C94E31318
-:103120000F931F930091B5011091B6012091B70143
-:103130003091B801DC01CB01802B912BA22BB32B5A
-:103140008093B5019093B601A093B701B093B801F5
-:103150001F910F910C94E3130F931F930091B501EE
-:103160001091B6012091B7013091B801DC01CB017B
-:1031700080239123A223B3238093B5019093B601BA
-:10318000A093B701B093B8011F910F910C94E31372
-:103190000F931F930091B5011091B6012091B701D3
-:1031A0003091B801DC01CB0180279127A227B327FA
-:1031B0008093B5019093B601A093B701B093B80185
-:1031C0001F910F910C94E3130895CF92DF92EF9229
-:1031D000FF920F931F93CF93DF938C01C090B501A3
-:1031E000D090B601E090B701F090B8018091B9019C
-:1031F0009091BA01A091BB01B091BC01C82AD92A13
-:10320000EA2AFB2ACFE1D0E0D701C6010C2E04C088
-:10321000B695A795979587950A94D2F780FF07C032
-:10322000B8018C2F0E9443068130910531F421971B
-:1032300058F7B80180E00E944306DF91CF911F91BB
-:103240000F91FF90EF90DF90CF90089590910C0137
-:103250009923F1F090910D019923D1F0982F969533
-:10326000969596959F3080F5E0910E01F0910F01B3
-:10327000E90FF11D877021E030E0A90102C0440F81
-:10328000551F8A95E2F7CA019181892B81830895A0
-:1032900020910E0130910F01F90132969FEF40E02D
-:1032A0005191851789F09F3F19F4511101C0942F56
-:1032B0004F5F4E30A9F79F3F39F0F901E90FF11D3B
-:1032C00097FDFA9582830895089590910C019923B2
-:1032D000F9F090910D019923D9F0982F9695969534
-:1032E00096959F3028F5E0910E01F0910F01E90FBE
-:1032F000F11D877021E030E0A90102C0440F551F85
-:103300008A95E2F7CA018095918189238183089586
-:1033100020910E0130910F01F9013296205F3F4F4D
-:103320009081891301C010823196E217F307C1F72B
-:10333000089581E090E0E0910E01F0910F01E80F17
-:10334000F91F1082019680319105A9F70895909197
-:10335000CF01892B8093CF01089580959091CF0163
-:1033600089238093CF0108951092CF010895909101
-:10337000CE01892B8093CE01089580959091CE0146
-:1033800089238093CE0108951092CE0108958093F1
-:10339000BD0108951092BD01089580910E01909194
-:1033A0000F01FC0131969C01205F3F4F80E091911D
-:1033B00091118F5FE217F307D1F70895E0910E01A5
-:1033C000F0910F018091CF018083E0910E01F09187
-:1033D0000F0190818091CE01892B80838091BD0166
-:1033E000882361F0E0910E01F0910F019081892B0B
-:1033F00080830E94CD1981111092BD0180910E0130
-:1034000090910F010C94980ECF92DF92EF92FF9261
-:103410006C01EE24FF24C114D104E104F10421F075
-:10342000C701B60120E101C020E0C72ED82EE92E49
-:10343000FF24C114D104E104F10419F0285FC7018D
-:10344000B6016B017C0154E0F694E794D794C794DD
-:103450005A95D1F7C114D104E104F10419F02C5F9D
-:10346000C701B6016B017C0142E0F694E794D79462
-:10347000C7944A95D1F7C114D104E104F10419F0BD
-:103480002E5FC701B601DC01CB01B695A7959795D4
-:103490008795892B8A2B8B2B09F02F5F822FFF902A
-:1034A000EF90DF90CF9008958091E801843011F182
-:1034B00020E488E190E00FB6F894A895809360002E
-:1034C0000FBE2093600083B7817F846083BF83B782
-:1034D000816083BF7894889583B78E7F83BF0FB652
-:1034E000F894A895809160008861809360001092A4
-:1034F00060000FBE089508950C947B1ACF930E942C
-:103500007C1A0E9462040E947B1AC0E08C2F0E94E9
-:103510005805811104C0CF5FCE30C1F701C081E0F2
-:10352000CF9108950E94F5130E948C0E0C9482078F
-:1035300082E084BD93E095BD9AEF97BD80936E00C5
-:1035400008952FB7F8948091D1019091D201A09164
-:10355000D301B091D4012FBF0895CF92DF92EF92A3
-:10356000FF920F931F932FB7F8944091D101509180
-:10357000D2016091D3017091D4012FBF6A017B0108
-:10358000EE24FF248C0120E030E0C016D106E206D4
-:10359000F30610F4415051099A01281B390BC90157
-:1035A0001F910F91FF90EF90DF90CF9008951F92A1
-:1035B0000F920FB60F9211248F939F93AF93BF93E7
-:1035C0008091D1019091D201A091D301B091D40109
-:1035D0000196A11DB11D8093D1019093D201A093BA
-:1035E000D301B093D401BF91AF919F918F910F9070
-:1035F0000FBE0F901F9018950E94840BF8942FEF28
-:1036000087EA91E6215080409040E1F700C0000039
-:1036100087E090EBDC018093F1019093F201A0939D
-:10362000F301B093F4019CE088E10FB6F894A895FB
-:10363000809360000FBE90936000FFCFEF92FF92E7
-:103640000F931F93CF93DF93D82FC0E08C2F0E944E
-:10365000580500E010E0E82EF12CC701002E02C052
-:10366000959587950A94E2F780FD06C00F5F1F4F7E
-:103670000630110591F709C0602F7C2F80E00E9471
-:1036800020068D13F3CF81E004C0CF5FCE30F1F67A
-:1036900080E0DF91CF911F910F91FF90EF900895FF
-:1036A000CF93C82F8CE20E941E1B882321F08C2F01
-:1036B000CF910C941E1B80E0CF910895CF930E9470
-:1036C000A51C811102C00E948B1CC5E6C15049F0A7
-:1036D0000E9462048FE39CE90197F1F700C00000AB
-:1036E000F5CF89E20E94501B811113C18AE20E942A
-:1036F000501B81110E948B1C85E00E94501B811180
-:103700000E94FC1A0E94B01C8093D00187E00E94A6
-:10371000501B8823A9F18BE10E94501B882351F094
-:103720008091D00181FB222720F991E0922790FB24
-:1037300081F90EC08EE00E94501B882361F08091B9
-:10374000D00182FB222720F991E0922790FB82F999
-:103750008093D00115C080E10E94501B9091D00150
-:10376000882341F093FB222720F981E0822780FB08
-:1037700093F904C0892F809580FB90F99093D00134
-:103780008091D0010E94B41C0E94C21C8093E2016F
-:1037900080EE0E94501B882341F08091E201982F17
-:1037A000909590FB80F98093E20189E30E94501B81
-:1037B000882359F08091E20181FB222720F991E0D2
-:1037C000922790FB81F98093E20182EE0E94501BC8
-:1037D000882359F08091E20182FB222720F991E0B1
-:1037E000922790FB82F98093E20186EE0E94501BA3
-:1037F000882359F08091E20183FB222720F991E090
-:10380000922790FB83F98093E20183EE0E94501B84
-:10381000882359F08091E20184FB222720F991E06E
-:10382000922790FB84F98093E20185E30E94501B6C
-:10383000882359F08091E20185FB222720F991E04D
-:10384000922790FB85F98093E20181E30E94501B4F
-:10385000882359F08091E20186FB222720F991E02C
-:10386000922790FB86F98093E20181E10E94501B30
-:10387000882359F08091E20187FB222720F991E00B
-:10388000922790FB87F98093E2018091E2010E94E8
-:10389000C61C8091E20187FB882780F980930D0187
-:1038A00087E20E94501BC82F8EE10E94501B81119D
-:1038B000C2608FE10E94501B8111C46080E20E94AF
-:1038C000501B8111C86081E20E94501B8111C061B0
-:1038D00082E20E94501B8111C06283E20E94501B51
-:1038E0008111C06484E20E94501B882311F0C068DB
-:1038F00002C0CC2329F08C2F0E94BD1C6C2F03C06A
-:103900000E94B91C682F70E080E090E0CF910C9489
-:10391000AC17CF9108956DEE7EEF80E090E00E94AD
-:10392000FF2260E082E090E00E94F12260E083E00C
-:1039300090E00E94F12260E084E090E00E94F12299
-:1039400060E085E090E00C94F12280E090E00E943D
-:10395000EB2221E08D3E9E4F09F020E0822F08955A
-:1039600082E090E00C94E322682F82E090E00C94D7
-:10397000F12283E090E00C94E322682F83E090E052
-:103980000C94F12284E090E00C94E322682F84E010
-:1039900090E00C94F1228091D70180FF0BC06091E0
-:1039A000130185E0689FB0011124759567957595A1
-:1039B00067952BC081FF09C06091130185E0689F66
-:1039C000B00111247595679520C082FF07C06091F2
-:1039D000130185E0689FB001112417C09091D801B0
-:1039E0009923D1F060911201961788F72091130165
-:1039F00085E0289F90011124929FA001939F500D74
-:103A0000112470E0CA010E94B5226038710540F4AB
-:103A10006115710519F406C065E070E0862F089500
-:103A20008FE7089581E008958091D70180FF08C055
-:103A30006091110170E0759567957595679521C046
-:103A400081FF06C06091110170E07595679519C0FE
-:103A500082FF04C06091110170E010C09091D80104
-:103A6000992399F0609110019617A0F780911101A8
-:103A7000899FC001112470E00E94B5226038710551
-:103A800040F46115710519F406C061E070E0862FFD
-:103A900008958FE7089581E00895803F21F40E9402
-:103AA000CB1C819504C0813F29F40E94CB1C8093DC
-:103AB000DB010895823F21F40E94CB1C819504C054
-:103AC000833F29F40E94CB1C8093DA010895893F3B
-:103AD00019F40E94141D05C08A3F31F40E94141D80
-:103AE00081958093DC0108958B3F21F40E94141D81
-:103AF000819504C08C3F29F40E94141D8093DD0140
-:103B00000895843F21F48091D901816017C0853FD9
-:103B100021F48091D901826011C0863F21F4809107
-:103B2000D90184600BC0873F21F48091D90188605E
-:103B300005C0883F31F48091D90180618093D9011B
-:103B400008958D3F21F48091D70181600BC08E3F95
-:103B500021F48091D701826005C08F3F29F48091C4
-:103B6000D70184608093D7010895803F39F4809114
-:103B7000DB0187FF6CC01092DB0169C0813F29F433
-:103B80008091DB011816BCF362C09091DA01823F8C
-:103B900029F497FF5CC01092DA0159C0833F19F4F1
-:103BA0001916CCF354C0893F41F48091DC011816FA
-:103BB0000CF04DC01092DC014AC08A3F29F480917C
-:103BC000DC0187FF44C0F6CF8B3F39F48091DD01E3
-:103BD00087FF3DC01092DD013AC08C3F29F48091EF
-:103BE000DD011816BCF333C0843F21F48091D90164
-:103BF0008E7F17C0853F21F48091D9018D7F11C040
-:103C0000863F21F48091D9018B7F0BC0873F21F43F
-:103C10008091D901877F05C0883F31F48091D90117
-:103C20008F7E8093D90113C08D3F21F48091D701FD
-:103C30008E7F0BC08E3F21F48091D7018D7F05C010
-:103C40008F3F29F48091D7018B7F8093D70180919A
-:103C5000DA0181110EC08091DB0181110AC08091CF
-:103C6000DC01811106C08091DD01811102C010923A
-:103C7000D801089589ED91E00E94A30E0E94A11A37
-:103C80009093D6018093D50108951F93CF93DF932E
-:103C90008091D5019091D6010E94AD1AAC0190910E
-:103CA000D801992321F02091140130E006C0209121
-:103CB00015018AE0289F900111244217530708F448
-:103CC00085C08091DA01C091DB01D091DC011091B7
-:103CD000DD01811107C0C11175C0D11173C011116F
-:103CE00071C074C09F3F19F09F5F9093D801181660
-:103CF00024F40E94CB1C8093DA018091DA0187FFC3
-:103D000005C00E94CB1C81958093DA011C1624F417
-:103D10000E94CB1C8093DB018091DB0187FF05C0F3
-:103D20000E94CB1C81958093DB016091DA016623B0
-:103D300031F1C091DB01CC2311F1062E000C770B81
-:103D4000880B990B0E94BC2123E333E343E35FE339
-:103D50000E9420220E9484216093DA016C2FCC0FF4
-:103D6000770B880B990B0E94BC2123E333E343E3D9
-:103D70005FE30E9420220E9484216093DB011D16D4
-:103D800024F40E94141D8093DC018091DC0187FFE4
-:103D900005C00E94141D81958093DC01111624F446
-:103DA0000E94141D8093DD018091DD0187FF05C015
-:103DB0000E94141D81958093DD01DF91CF911F91A9
-:103DC0000C943A1E9F3F09F08FCFA0CFDF91CF9187
-:103DD0001F910895E9EDF1E085E0DF011D928A95DC
-:103DE000E9F71092D8011092D7010895833081F13C
-:103DF00028F4813059F08230D1F00895853009F4EB
-:103E000049C0B8F1863009F456C008958091150173
-:103E1000262F30E0280F311D2F3F310524F4680F85
-:103E20006093150108958FEF809315010895809197
-:103E30001401262F30E0280F311D2F3F310524F4C7
-:103E4000680F6093140108958FEF80931401089513
-:103E500080911301262F30E0280F311D2F3F3105AF
-:103E600024F4680F6093130108958FEF809313017A
-:103E7000089580911201262F30E0280F311D2F3F29
-:103E8000310524F4680F6093120108958FEF809339
-:103E90001201089580911101262F30E0280F311D65
-:103EA0002F3F310524F4680F6093110108958FEFBF
-:103EB00080931101089580911001262F30E0280F82
-:103EC000311D2F3F310524F4680F609310010895D0
-:103ED0008FEF809310010895833011F128F4813021
-:103EE00049F0823091F00895853081F120F18630DB
-:103EF000C1F1089580911501681720F4861B809305
-:103F00001501089510921501089580911401681704
-:103F100020F4861B809314010895109214010895D3
-:103F200080911301681720F4861B80931301089574
-:103F300010921301089580911201681720F4861BD6
-:103F40008093120108951092120108958091110139
-:103F5000681720F4861B80931101089510921101B7
-:103F6000089580911001681720F4861B809310013A
-:103F700008951092100108950F931F938D3109F445
-:103F80006BC008F03FC08E3009F47DC0C0F48730AC
-:103F900009F46EC068F4863009F0AFC08091D0019A
-:103FA000817F8E7F8093D00181E08093DF01A6C066
-:103FB000883009F458C08B3009F49BC09EC086310C
-:103FC00009F497C078F4803109F470C0813109F0A8
-:103FD00094C00E94F51390910D0181E08927809390
-:103FE0000D0187C0893109F484C08B3109F085C087
-:103FF0008091D00181FB222720F991E0922790FB4C
-:1040000081F94AC0853309F45BC048F4873209F46A
-:1040100057C008F45AC0893209F452C06EC08334C4
-:1040200038F48A3308F067C0883309F462C065C089
-:10403000833409F445C0883409F05FC00E94F51349
-:104040000FEF13ED20E3015010402040E1F700C0D6
-:1040500000000E94FC1A4DC00E943E210E948C0E5E
-:104060000E94820746C00E94B01C0E94C21C41C030
-:104070009091D001892F817090FF12C0917F9E7F17
-:104080009093D0013BC08091D00182FB222720F980
-:1040900091E0922790FB82F98093D001992349F116
-:1040A0008091D00181608093D00123C08091D001A4
-:1040B00083FB222720F991E0922790FB83F9ECCF34
-:1040C00061E070E080E090E010C08D5141E050E090
-:1040D00060E070E08A019B0104C0000F111F221FE5
-:1040E000331F8A95D2F7C901B8010E94AC170E940C
-:1040F000F51381E003C08953E9CF80E01F910F9150
-:10410000089580E008950C948120CF93C82F80916A
-:10411000DF01813079F018F08230E9F187C0E09159
-:104120000E01F0910F018081813169F0823209F036
-:104130007FC009C0E0910E01F0910F0180818131B3
-:1041400011F0823261F48C2F0E948320811104C00F
-:104150008C2F0E94BC1F1DC081E090E01AC08C2FE4
-:104160000E948120811114C0C43179F048F4CB3011
-:1041700079F0C03109F060C082E08093DF0108C0AF
-:10418000C93219F0C83321F057C01092DF0154C072
-:1041900081E0817053C0C93289F118F5C43171F1E1
-:1041A000A8F4C73009F046C08AE08093150194E175
-:1041B0009093140193E0909313018093120188E08F
-:1041C0008093110188E28093100134C0CE51C63033
-:1041D00088F5EC2FF0E0E65DFE4F80818093DE01F4
-:1041E00029C0CE34E9F020F4CB3421F56AE013C0C5
-:1041F000C13579F0C235F1F461E00DC08091DE0186
-:10420000882319F01092DE0115C081E08093DF0150
-:1042100015C061E006C08091DE010E94F61E0AC052
-:104220006AE08091DE010E946C1F04C01092DF01E1
-:1042300080E004C081E002C080E0ABCFCF91089560
-:10424000E1E8F0E080818860808380818160808304
-:104250008FB7F89493E09093890090ED9093880045
-:104260008FBF0895EFE6F0E080818260808308953B
-:10427000EFE6F0E080818D7F80830895EFE6F0E047
-:10428000908182E08927808308951F920F920FB654
-:104290000F9211242F933F934F935F936F937F93CC
-:1042A0008F939F93AF93BF93EF93FF938091E00120
-:1042B0009091E10101969093E1018093E0018111D9
-:1042C00003C082E00E948207E091E101E695E69555
-:1042D000F0E0EA57FB4FE4918091E0018E1303C0B8
-:1042E00080E00E948207FF91EF91BF91AF919F9173
-:1042F0008F917F916F915F914F913F912F910F908F
-:104300000FBE0F901F9018950E948B216894B111D9
-:104310000C941A2208950E94FF2188F09F5798F06C
-:10432000B92F9927B751B0F0E1F0660F771F881FBA
-:10433000991F1AF0BA95C9F714C0B13091F00E94D4
-:104340001922B1E008950C941922672F782F88273D
-:10435000B85F39F0B93FCCF3869577956795B395FB
-:10436000D9F73EF490958095709561957F4F8F4F6A
-:104370009F4F0895E89409C097FB3EF4909580956F
-:10438000709561957F4F8F4F9F4F9923A9F0F92F1B
-:1043900096E9BB279395F695879577956795B79599
-:1043A000F111F8CFFAF4BB0F11F460FF1BC06F5F7F
-:1043B0007F4F8F4F9F4F16C0882311F096E911C091
-:1043C000772321F09EE8872F762F05C0662371F0B2
-:1043D00096E8862F70E060E02AF09A95660F771FC6
-:1043E000881FDAF7880F9695879597F9089557FDF6
-:1043F0009058440F551F59F05F3F71F04795880F53
-:1044000097FB991F61F09F3F79F0879508951216E9
-:1044100013061406551FF2CF4695F1DF08C0161695
-:1044200017061806991FF1CF869571056105089446
-:104430000895E894BB2766277727CB0197F908955D
-:104440000E9433220C94A4220E94962238F00E94EB
-:104450009D2220F0952311F00C948D220C94932230
-:1044600011240C941A220E94F72170F3959FC1F336
-:10447000950F50E0551F629FF001729FBB27F00D12
-:10448000B11D639FAA27F00DB11DAA1F649F662767
-:10449000B00DA11D661F829F2227B00DA11D621FB6
-:1044A000739FB00DA11D621F839FA00D611D221F70
-:1044B000749F3327A00D611D231F849F600D211D54
-:1044C000822F762F6A2F11249F5750409AF0F1F0D7
-:1044D00088234AF0EE0FFF1FBB1F661F771F881F40
-:1044E00091505040A9F79E3F510580F00C948D22C9
-:1044F0000C941A225F3FE4F3983ED4F386957795A7
-:104500006795B795F795E7959F5FC1F7FE2B880FE5
-:10451000911D9695879597F9089597F99F6780E87B
-:1045200070E060E008959FEF80EC089500240A9405
-:104530001616170618060906089500240A9412167E
-:104540001306140605060895092E0394000C11F4B1
-:10455000882352F0BB0F40F4BF2B11F460FF04C05E
-:104560006F5F7F4F8F4F9F4F089597FB072E16F475
-:10457000009407D077FD09D00E94CF2207FC05D018
-:104580003EF4909581959F4F0895709561957F4F6A
-:104590000895EE0FFF1F0590F491E02D0994AA1BDA
-:1045A000BB1B51E107C0AA1FBB1FA617B70710F01E
-:1045B000A61BB70B881F991F5A95A9F78095909550
-:1045C000BC01CD010895F999FECF92BD81BDF89A45
-:1045D000992780B50895A8E1B0E042E050E00C943E
-:1045E0000623262FF999FECF1FBA92BD81BD20BDAB
-:1045F0000FB6F894FA9AF99A0FBE019608950E94A0
-:10460000F122272F0C94F222DC01CB01FC01F99955
-:10461000FECF06C0F2BDE1BDF89A319600B40D920E
-:0C46200041505040B8F70895F894FFCFC7
-:10462C00200283071308EE07BA0786070101BE01B3
-:10463C0028080A03140A3F4D36394704FA03C40309
-:10464C008B031E03370350036903010203040506A1
-:04465C000708090042
+:100000000C9478020C94BF020C94BF020C94BF02B3
+:100010000C94BF020C94BF020C94BF020C94BF025C
+:100020000C94BF020C94BF020C94C10D0C94930E5F
+:100030000C94BF020C94BF020C94BF020C94BF023C
+:100040000C94BF020C949F220C94BF020C94BF022C
+:100050000C94BF020C94331C0C94BF020C94BF028E
+:100060000C94BF020C94BF020C94BF020C94BF020C
+:100070000C94BF020C94BF020C94BF020C94BF02FC
+:100080000C94BF020C94BF020C94BF020C94BF02EC
+:100090000C94BF020C94BF020C94BF020C94BF02DC
+:1000A0000C94BF020C94BF020C94BF02000F220FED
+:1000B0001010220F1010670F8A0F1010DF0FF20FB1
+:1000C000C112C112F012F0122613461377147714DE
+:1000D00051137714011401146814771477147114F0
+:1000E0000E140E140E140E140E140E140E140E1400
+:1000F0000E140E140E140E140E140E140E140E14F0
+:1001000020142D1434143B14451429002B00E00056
+:10011000E100357100001E00140004001D006400A1
+:10012000E3001F001A0016001B000000025220000E
+:1001300008000700060000002C002100150009003F
+:100140001900E2001151220017000A00050000000A
+:10015000460023001C0000000B00000046002300A6
+:100160000A00000005000000007524001C000B00C0
+:10017000110000000075250018000D001000E600B9
+:10018000115126000C000E0036002F002C00270015
+:1001900012000F003700300001522D001300330011
+:1001A00038000000E7002A0028002800E50034712C
+:1001B0000000010001000100010001000000010039
+:1001C0001E02200222020100010001001F02210282
+:1001D00023020100010001002F0226022F0001006E
+:1001E000010001003002270230000100125101001D
+:1001F000310235003502000001000100010000005D
+:1002000001000000010001000100000001000000E9
+:1002100001000100010001000100000001000000D8
+:100220005F005C00590062001251540060005D00E4
+:100230005A0062000100550061005E005B0063002F
+:1002400001005600570057005800580001002E00CA
+:100250003200340001000100000001000100010033
+:100260000100010000003A004A005000F400F200D2
+:1002700001003B0052005100F000F10001003C0081
+:100280004D004F00F500F30001003D0049004C0017
+:100290000100010010513E004B004E000100000023
+:1002A00001003F00010000000100000001004000CB
+:1002B00001000000010000000100410001000100F8
+:1002C00001000000010042000100B600AC00AA00DD
+:1002D0001051430049004C00AE00A800010044004A
+:1002E0000100B700AB00A9000100450001000100BA
+:1002F00001000100010001000100010001000100F6
+:10030000000016034500720067006F0044006F0094
+:100310007800200045005A000000160345007200D6
+:1003200067006F0044006F007800200045005A000D
+:1003300000000403090409026D00040100A0FA0989
+:100340000400000103010100092111010001223F05
+:10035000000705810308000A0904010001030102E6
+:1003600000092111010001224D0007058203080048
+:100370000A09040200010300000009211101000123
+:100380002236000705830308000A0904030001035D
+:100390000000000921110100012239000705840332
+:1003A0001000011201100100000008EDFE0713010A
+:1003B000000102000105010906A101050719E02954
+:1003C000E715002501950875018102050819012925
+:1003D00005950575019102950175039101050719B0
+:1003E00000297715002501957875018102C0050166
+:1003F0000980A101850216010026B7001A01002A12
+:10040000B700751095018100C0050C0901A1018597
+:1004100003160100269C021A01002A9C0275109501
+:10042000018100C005010902A1010901A10005091E
+:100430001901290515002501950575018102950110
+:10044000750381010501093009311581257F950268
+:100450007508810609381581257F95017508810683
+:10046000050C0A38021581257F950175088106C0A3
+:10047000C005010906A101050719E029E7150025B6
+:10048000019508750181029501750881010508191A
+:1004900001290595057501910295017503910105E5
+:1004A00007190029FF150025FF950675088100C072
+:1004B0000000000000000000000000010204060A25
+:1004C0000F17202C3A4A5D71879DB3C7DAE9F5FC16
+:1004D000FFFCF5E9DAC7B39D87715D4A3A2C201716
+:1004E0000F0A0604020100000000000000000000E6
+:1004F00011241FBECFEFDAE0DEBFCDBF04B603FE8E
+:1005000027C08091FF0190910002A0910102B0915B
+:1005100002028730904BA740B04BD1F41092FF01FC
+:1005200010920002109201021092020214BE84B7CF
+:10053000877F84BF0FB6F894A8958091600088618A
+:1005400080936000109260000FBEE0E0FFE3099529
+:1005500011E0A0E0B1E0EAEEF8E402C005900D92EF
+:10056000A433B107D9F721E0A4E3B1E001C01D92A3
+:10057000AF3FB207E1F70E94020B0C9473240C9476
+:10058000000061110BC0FC018281882321F085EEFF
+:100590000E94651103C085EE0E942D1280E090E05C
+:1005A00008950895EF92FF921F93CF93DF93609188
+:1005B000C1017091C2018091C3019091C4010E9458
+:1005C000621B56985E9821E030E0E82FF0E0AF0122
+:1005D0004C5C5E4F7A01A1E0B0E0122F821308C09C
+:1005E000AF01E701988161E09F3F69F460E00BC0D3
+:1005F000A901B9016C5C7E4FEB01988161E091111A
+:1006000001C060E06195960FBA016C5C7E4FEB0112
+:1006100098834C5F5F4F992321F194B1ED0102C0A3
+:10062000CC0FDD1F4A95E2F7AE019C2B94B995B132
+:10063000492B45B9EB01488150E02130310529F4BF
+:1006400050938900409388001AC0123029F45093C7
+:100650008B0040938A0013C050938D0040938C0010
+:100660000EC094B1BD0102C0660F771F4A95E2F734
+:10067000AB014095942394B995B1492345B92F5FB7
+:100680003F4F2430310509F0A8CFDF91CF911F9162
+:10069000FF90EF9008950C94D20256985E9825989A
+:1006A0002D9826982E9827982F988FEF90E090936A
+:1006B00089008093880090938B0080938A009093A8
+:1006C0008D0080938C00259A2D9A2FEF80E792E081
+:1006D000215080409040E1F700C00000269A2E9AF9
+:1006E0002FEF80E792E0215080409040E1F700C07A
+:1006F0000000279A2F9A2FEF80E792E02150804048
+:100700009040E1F700C0000025982D982FEF80E77A
+:1007100092E0215080409040E1F700C00000269810
+:100720002E982FEF80E792E0215080409040E1F733
+:1007300000C0000027982F9856985E9825982D980D
+:1007400026982E9827982F98089589EA80938000FC
+:1007500089E08093810024982C983F988AB18F7407
+:100760008AB96E98479A8BB1806B8BB9769A0E9442
+:100770004D030C94D10280E28093000180913801F6
+:1007800081110EC00E940A0481E0809338012FEF8E
+:1007900083ED90E3215080409040E1F700C00000DD
+:1007A00080E40E9410048093000181112EC00E94F9
+:1007B0003A0480930001811128C00E943A0480937A
+:1007C0000001811122C08FE30E943A04809300014E
+:1007D00081111BC00E94320480E40E9410048093A7
+:1007E0000001811112C08CE00E943A048093000144
+:1007F00081110BC00E943A0480930001811105C051
+:100800008FE30E943A04809300010E943204809199
+:10081000000108951092B9008AE08093B80008950D
+:1008200094EA9093BC009091BC0097FFFCCF90910C
+:10083000B900987F983021F0903111F081E008954F
+:100840008093BB0084E88093BC008091BC0087FF4C
+:10085000FCCF8091B900887F883111F0803471F726
+:1008600080E0089584E98093BC008091BC0084FD01
+:10087000FCCF08958093BB0084E88093BC008091F6
+:10088000BC0087FFFCCF9091B900987F81E098323F
+:1008900009F480E0089584E88093BC008091BC0056
+:1008A00087FFFCCF8091BB000895809100018111EA
+:1008B00015C080E40E9410048093000181110CC0D7
+:1008C00082E10E943A0480930001811105C08FEFFC
+:1008D0000E943A04809300010E94320484B1807F18
+:1008E00084B985B1807F85B98AB1837F8AB98BB19C
+:1008F000837F8BB93E98469808950E94BB038093EE
+:1009000000010E94550480B38C7080BB81B3836F5B
+:1009100081BBAAE3B1E0E8E4F1E08EE08E0F119232
+:100920001D928E13FCCF0C94A503BF92CF92DF9241
+:10093000EF92FF920F931F93CF93DF93809100016B
+:10094000882379F0809139018F5F8093390181117B
+:1009500008C00E94BB0380930001811102C00E9465
+:100960004D030AE311E0C0E0D0E0DD24D39482E03F
+:10097000C82EEE24E394F12CC730D10500F5809108
+:100980000001811164C080E40E9410048093000182
+:10099000811112C082E10E943A048093000181110A
+:1009A0000BC0C7010C2E01C0880F0A94EAF780958E
+:1009B0000E943A04809300010E94320448C0CA3069
+:1009C000A1F028F4C83059F0C93061F005C0CC302E
+:1009D00089F070F0CD3089F0209A289810C0219AC3
+:1009E00029980DC0229A2A980AC0239A2B9807C0EA
+:1009F000529A01C0539A5B9802C03E9A469890EA78
+:100A00009A95F1F79FB1799902C082E001C080E028
+:100A100091709D25982B7C9902C084E001C080E0F4
+:100A2000892B7D9902C038E001C030E0832B7E998C
+:100A300002C020E101C020E0822B9FB19095991F58
+:100A40009927991F9295990F907E892B0FC08091BD
+:100A50000001811149C080E40E94100480930001CC
+:100A6000882379F1B12C0E9432048B2DF8019081FA
+:100A7000981719F08083C09201010E9455042196B5
+:100A80000F5F1F4FCE30D10509F076CF8091010165
+:100A9000882361F1815080930101882339F08FE927
+:100AA0009FE00197F1F700C0000020C0A8E4B1E08A
+:100AB000EAE3F1E0CF01825F91919D938E13FCCF29
+:100AC00015C083E10E943A04809300018111CACFCE
+:100AD00081E40E941004809300018111C3CF0E9421
+:100AE0004B04B82EB094BFCF80E0C0CF0E944B0320
+:100AF00081E0DF91CF911F910F91FF90EF90DF90F8
+:100B0000CF90BF900895E82FF0E0E85BFE4F808122
+:100B1000089508950F931F93CF93DF93C8E4D1E016
+:100B200010E00C2F025F899190E00E94561B180F75
+:100B30000C13F9CF812FDF91CF911F910F91089561
+:100B400081E0089581E008950C94A20508950F9323
+:100B50001F93CF93DF938C01FC01C081D181CE0123
+:100B60000E94DB19BE010E945006EC01B8010E94F0
+:100B7000A405882309F48DC0F8018281882309F433
+:100B80004AC08091610181111FC0C431F0E5DF07C7
+:100B900009F051C00E94A60581E0809361010E9486
+:100BA000FD1B9093600180935F0110925801109299
+:100BB0005A011092590110925C0110925B0110923F
+:100BC0005E0110925D0165C080915F0190916001AE
+:100BD0000E94091C883C910570F480915801E82F0F
+:100BE000F0E0EE0FFF1FE75AFE4FD183C0838F5F07
+:100BF000809358014EC0C43880E5D80721F0C5382D
+:100C0000D04501F13AC0F8018281882341F0109269
+:100C1000560182E01EC0C438E0E5DE0759F5809138
+:100C20005601811106C086E20E94651186E20E948B
+:100C30002D1282E01CC0C438F0E5DF0741F3C5384F
+:100C4000D045D9F4F8018281882331F01092570100
+:100C500080E20E947C121DC080915701811106C064
+:100C600087E20E94651187E20E942D1280E20E94B5
+:100C700083120FC0C538D04529F381E08093560117
+:100C800080935701C801DF91CF911F910F910C9470
+:100C9000A00580E0DF91CF911F910F9108950895F5
+:100CA00096E0799FF001112494E5899FE00DF11DF4
+:100CB0001124E60FF11DEE0FFF1FE65FFE4F859139
+:100CC00094910895880F991FFC01E657F040859193
+:100CD00094910895880F991FFC01E65FFE4F85915E
+:100CE000949108950F931F93CF93DF93EC01811597
+:100CF000904350F5C11580E2D80708F0C3C0CB3B44
+:100D0000D10590F4C83AD10508F06AC0C53AD105BA
+:100D100008F05BC0C430D10508F0D0C1219709F0BC
+:100D2000CAC101E010E00AC2CF3FD10511F008F0BE
+:100D3000C5C1C03FD10508F0A2C0CE01805E9109B7
+:100D4000089708F4BBC1B7C1C13090E5D90709F4D1
+:100D5000A2C020F5C0318FE4D80770F4C11590E42B
+:100D6000D90708F094C0C11521E3D20708F0A3C148
+:100D7000DD278E01106CE2C1C115D04509F09BC181
+:100D80000E94E2148FEF94E32CE0815090402040C9
+:100D9000E1F700C000000E94581CD0C1C11597E5C2
+:100DA000D90758F4C03121E5D20708F01CC1C4317D
+:100DB00080E5D80708F475C07EC1CE019057811533
+:100DC000904108F078C1DF7073C1C53AD10509F4CC
+:100DD00077C1C63AD10509F076C102E810E4AEC188
+:100DE000C83AD10509F472C1C93AD10509F471C1F3
+:100DF000CA3AD10509F470C1CB3AD10509F46FC1E3
+:100E0000CC3AD10509F46EC1CD3AD10509F46DC1D2
+:100E1000C03BD10509F46CC1CE3AD10509F46BC1D0
+:100E2000CF3AD10509F46AC1C13BD10509F469C1C2
+:100E3000C23BD10509F468C1C33BD10509F467C1C0
+:100E4000C43BD10509F466C1C53BD10509F465C1B0
+:100E5000C63BD10509F464C1C73BD10509F463C1A0
+:100E6000C83BD10509F462C1C93BD10509F461C190
+:100E7000CA3BD10509F460C100E014E45FC18E01F2
+:100E800010655CC1CE019F700E946A0658C1DF7078
+:100E90008E01106A53C18091DE0181608093DE0172
+:100EA0004DC10E94FD1D811102C00E94E31D0E94E0
+:100EB0001A1E90E09093FF018093FE01C23080E5FE
+:100EC000D80721F48091FE01816086C0C43090E58E
+:100ED000D90721F48091FE0182607EC0C63020E5F2
+:100EE000D20721F48091FE01846076C0C83080E58D
+:100EF000D80719F48091FE0127C0CA3090E5D907C0
+:100F000021F48091FE01806167C0CC3020E5D207DA
+:100F100021F48091FE0180625FC0CE3080E5D80769
+:100F200021F48091FE01806457C0C03190E5D9075B
+:100F300021F48091FE0180684FC0C23120E5D207C4
+:100F400029F48091FE018460886046C0C33080E54A
+:100F5000D80721F48091FE018E7F3EC0C53090E518
+:100F6000D90721F48091FE018D7F36C0C73020E57E
+:100F7000D20721F48091FE018B7F2EC0C93080E51D
+:100F8000D80719F48091FE0126C0CB3090E5D9072F
+:100F900021F48091FE018F7E1FC0CD3020E5D20765
+:100FA00021F48091FE018F7D17C0CF3080E5D807F6
+:100FB00021F48091FE018F7B0FC0C13190E5D907EC
+:100FC00021F48091FE018F7707C0C331D04531F401
+:100FD0008091FE018B7F877F8093FE018091FE01CF
+:100FE0000E941E1EABC08D2F99278F7099278130CC
+:100FF0009105D9F49E012370332702C0880F991FF1
+:101000002A95E2F79C688E0144E0000F111F4A9573
+:10101000E1F700271370802B912B53E0CC0FDD1FDD
+:101020005A95E1F7C076DD272FC08230910531F463
+:10103000DC2FCC278E01016F106A80C083309105B0
+:1010400069F4CE018370992701E010E002C0000F1F
+:10105000111F8A95E2F7C8019C680FC08430910582
+:10106000B9F4CE018370992701E010E002C0000FAF
+:10107000111F8A95E2F7C8019A6823E0CC0FDD1FA3
+:101080002A95E1F7C07ED7708C010C2B1D2B56C022
+:101090008530910531F4DC2FCC278E01046F106A66
+:1010A0004DC0069709F04AC0CF71DD27DC2FCC2751
+:1010B0008E01106243C000E010E040C08E013EC0CF
+:1010C00001E810E43BC003E810E438C002EE14E489
+:1010D00035C009EE14E432C00AEE14E42FC005EB6B
+:1010E00014E42CC006EB14E429C007EB14E426C07A
+:1010F0000CEC14E423C00DEC14E420C003E815E468
+:101100001DC00AE815E41AC002E915E417C004E995
+:1011100015E414C001E216E411C003E216E40EC0A7
+:1011200004E216E40BC005E216E408C006E216E489
+:1011300005C007E216E402C00AE216E4C801DF9126
+:10114000CF911F910F91089596E0799FF00111249E
+:1011500094E5899FE00DF11D1124E60FF11DEE0FBE
+:10116000FF1FE65FFE4F85919491803E9105E0F46C
+:10117000803C910558F58133910509F46FC048F41E
+:101180008932910509F463C08A32910509F46DC072
+:1011900072C089339105E9F082389105D1F0853329
+:1011A000910509F44DC067C0833E910581F138F483
+:1011B000803E9105B9F0823E9105D9F05CC0863E33
+:1011C000910561F1873E9105A1F155C00E9462062B
+:1011D00008952091FE0120FD02C021FF4CC080EE49
+:1011E00090E049C08091FE0180FFF9CF89E390E053
+:1011F00042C08091FE0182FF0EC08091FE0184FFFB
+:1012000003C080E090E037C083EE90E034C080916E
+:10121000FE0182FFF2CF82EE90E02DC08091FE01B0
+:1012200083FF0BC08091FE0184FDEBCF87EE90E041
+:1012300022C08091FE0183FFF5CF86EE90E01BC0B7
+:101240008091FE0185FF07C089E290E014C0809183
+:10125000FE0185FFF9CF85E390E00DC08091FE018E
+:1012600086FF07C08AE290E006C08091FE0186FFFB
+:10127000F9CF81E390E00E947206089508950C94DE
+:101280003E09809172010895CF93DF9300D01F92A1
+:10129000CDB7DEB79C018091F501843019F593E05C
+:1012A00099833B832A839093E9008FEF9091E80024
+:1012B000815095FD06C095ED9A95F1F700008111DA
+:1012C000F5CF8091E80085FF0DC040E050E063E07D
+:1012D00070E0CE0101960E94B10B8091E8008E77FC
+:1012E0008093E8000F900F900F90DF91CF910895B9
+:1012F000CF93DF9300D01F92CDB7DEB72091F501D9
+:10130000243021F522E029839B838A8383E0809324
+:10131000E9008FEF9091E800815095FD06C095EDB2
+:101320009A95F1F700008111F5CF8091E80085FFD3
+:101330000DC040E050E063E070E0CE0101960E94F5
+:10134000B10B8091E8008E778093E8000F900F90AA
+:101350000F90DF91CF9108952091F5012430F1F4A1
+:1013600022E02093E9002FEF3091E800215035FD75
+:1013700006C035ED3A95F1F700002111F5CF209127
+:10138000E80025FF0BC040E050E065E070E00E94FF
+:10139000B10B8091E8008E778093E8000895CF9399
+:1013A000DF93EC019091F501943009F046C08091F3
+:1013B0000C018823D9F080910D018823B9F0909316
+:1013C000E9008FEF9091E800815095FD06C095E10E
+:1013D0009A95F1F700008111F5CF8091E80085FF23
+:1013E0002CC040E050E060E170E017C081E08093E5
+:1013F000E9008FEF9091E800815095FD06C095EDD2
+:101400009A95F1F700008111F5CF8091E80085FFF2
+:1014100014C040E050E068E070E0CE010E94B10BE3
+:101420008091E8008E778093E80080E1FE01A2E6DB
+:10143000B1E001900D928A95E1F7DF91CF91089587
+:101440008091F401811109C00E94460D0E94A30DF4
+:101450008091E20084608093E20008951092F4018C
+:10146000089508950C948C220E94EE1B0E949222F3
+:101470000E9449100C943F0942E061EC81E00E9417
+:10148000C00C42E061EC82E00E94C00C42E061ECE2
+:1014900083E00E94C00C42E161EC84E00C94C00C3B
+:1014A0008091F701833009F455C030F4813071F038
+:1014B000823009F48EC008958A3009F47AC08B30E6
+:1014C00009F460C0893009F09CC020C08091F60109
+:1014D000813A09F096C08091E800877F8093E80008
+:1014E0008091FA019091FB01892B21F460E182E661
+:1014F00091E003C060E080E090E070E00E94FC0BAF
+:101500008091E8008B778093E80008958091F60140
+:10151000813209F076C08091FA019091FB01009729
+:1015200019F0039709F06DC08091E800877F8093E0
+:10153000E8008091E80082FD05C08091F5018111ED
+:10154000F8CF5FC08091F100809372018091E80034
+:101550008B7753C08091F601813A09F052C0809197
+:10156000FA019091FB01892B09F04BC08091E800B2
+:10157000877F8093E8008091E80080FFFCCF809116
+:101580000C0136C08091F6018132D9F58091FA01C3
+:101590009091FB01892BA9F58091E800877F8093CA
+:1015A000E8000E94F50C8091F80180930C010C94E6
+:1015B000E2148091F601813221F58091E800877F65
+:1015C0008093E8000E94F50C8091F90180937301EB
+:1015D00008958091F601813AA1F48091E800877F17
+:1015E0008093E8008091E80080FFFCCF8091730138
+:1015F0008093F1008091E8008E778093E8000C944E
+:10160000F50C089584B7877F84BF0FB6F894A8952A
+:1016100080916000886180936000109260000FBE2E
+:1016200090E080E80FB6F894809361009093610099
+:101630000FBE0E9498100E94460D0E94A30D80913B
+:10164000E20084608093E20078940E9429100E9456
+:101650009A1082E091E00E9444100E947A228091C8
+:10166000F501853069F40E94B21B8091F301882353
+:10167000B1F30E94E01B882391F30E949B0BEFCFF4
+:101680000E94A010ECCF292F332723303105C9F059
+:1016900064F42130310581F02230310509F043C076
+:1016A0008DE690E026E333E042C021323105F1F0CF
+:1016B0002232310541F137C082E190E023EA33E084
+:1016C00036C099278130910541F08230910541F073
+:1016D000892B49F5E2E3F3E005C0EAE1F3E002C05B
+:1016E000E2E0F3E0849190E09F0121C06430D8F4FF
+:1016F000E62FF0E0EE0FFF1FEE5DFE4F20813181FF
+:1017000089E090E014C0643070F470E0FB01EE0FEB
+:10171000FF1FE65EFE4F20813181FB01EA5EFE4F36
+:10172000808190E004C080E090E020E030E0FA01A9
+:1017300031832083089580E189BD82E189BD09B4A8
+:1017400000FEFDCF8091D8008F7D8093D8008091DE
+:10175000E00082608093E0008091E00081FDFCCF9A
+:101760000895CF92DF92EF92FF920F931F93CF9342
+:10177000DF93EC018B016A010E94140D811133C0CB
+:10178000C114D10439F0F60180819181081B190B35
+:10179000C80FD91FE12CF12C0115110519F1809109
+:1017A000E80085FD16C08091E8008E778093E80000
+:1017B000C114D10449F0F60180819181E80EF91E2F
+:1017C000F182E08285E00FC00E94140D882321F38E
+:1017D0000AC089918093F10001501109FFEFEF1ABF
+:1017E000FF0ADACF80E0DF91CF911F910F91FF9038
+:1017F000EF90DF90CF9008952091FC013091FD0192
+:101800002617370748F06115710539F42091E80073
+:101810002E772093E80001C0B90140E06115710501
+:10182000A9F12091F501222309F443C0253009F4E0
+:1018300042C02091E80023FD40C02091E80022FD35
+:1018400032C02091E80020FFE9CF4091F3002091C1
+:10185000F20030E0342BFC01CF016115710559F025
+:101860002830310540F481918093F1006150710975
+:101870002F5F3F4FF1CF41E02830310509F040E0C4
+:101880002091E8002E772093E800C8CF4111C9CFFE
+:101890000AC08091F501882361F0853061F0809164
+:1018A000E80083FD0AC08091E80082FFF2CF80E06B
+:1018B000089582E0089583E0089581E008952091DD
+:1018C000FC013091FD012617370748F061157105BD
+:1018D00039F42091E8002E772093E80001C0B90187
+:1018E000FC0120E06115710591F18091F5018823DB
+:1018F00009F440C0853009F43FC08091E80083FDC1
+:101900003DC08091E80082FD2FC08091E80080FFFB
+:10191000E9CF2091F3008091F20090E0922B6115C5
+:10192000710559F08830910540F424912093F1001D
+:101930003196615071090196F2CF21E0089709F0C4
+:1019400020E08091E8008E778093E800CBCF2111D2
+:10195000CCCF0AC08091F501882361F0853061F019
+:101960008091E80083FD0AC08091E80082FFF2CFF9
+:1019700080E0089582E0089583E0089581E008956D
+:10198000982F973058F59093E900981739F0709197
+:10199000EC002091ED005091F00003C0242F762F31
+:1019A00050E021FF19C03091EB003E7F3093EB00F7
+:1019B0003091ED003D7F3093ED003091EB003160D0
+:1019C0003093EB007093EC002093ED005093F00007
+:1019D0002091EE0027FF07C09F5FD3CF8F708093C9
+:1019E000E90081E0089580E008958091F60187FF85
+:1019F00011C08091E80082FD05C08091F501811140
+:101A0000F8CF11C08091E8008B770BC08091F50171
+:101A1000882349F08091E80080FFF8CF8091E800AA
+:101A20008E778093E80008952091E4003091E500DE
+:101A300095E64091EC00842F817040FF22C0809198
+:101A4000E80080FD1CC08091F501882391F085306D
+:101A500091F08091EB0085FD10C04091E400509121
+:101A6000E5004217530729F39A01915011F784E0DA
+:101A7000089582E0089583E0089581E0089580E06C
+:101A800008954091E80042FFDECF08950E94B40D12
+:101A90000E94BC0DE0EEF0E0808181608083E8ED83
+:101AA000F0E080818F77808319BCA7EDB0E08C9146
+:101AB0008E7F8C9380818F7E80831092F4010895B5
+:101AC0000F931F93CF93DF930E94B40D0E94BC0D20
+:101AD000C8EDD0E088818F7788838881806888838B
+:101AE00088818F7D888319BC1092F5011092F101D5
+:101AF0001092F3011092F20100EE10E0F8018081E3
+:101B00008B7F808388818160888342E060E080E011
+:101B10000E94C00CE1EEF0E080818E7F8083E2EED7
+:101B2000F0E0808181608083808188608083F8011B
+:101B300080818E7F8083888180618883DF91CF91CF
+:101B40001F910F910895E8EDF0E080818F7E8083F2
+:101B5000E7EDF0E080818160808384E082BF81E0F6
+:101B60008093F4010C94600DE8EDF0E080818E7FAD
+:101B700080831092E20008951092DA001092E10042
+:101B800008951F920F920FB60F9211242F933F9337
+:101B90004F935F936F937F938F939F93AF93BF9375
+:101BA000EF93FF938091E10082FF0BC08091E200F0
+:101BB00082FF07C08091E1008B7F8093E1000E944B
+:101BC00028108091DA0080FF1FC08091D80080FF2C
+:101BD0001BC08091DA008E7F8093DA008091D9005B
+:101BE00080FF0DC080E189BD82E189BD09B400FE9E
+:101BF000FDCF81E08093F5010E94200A05C019BC49
+:101C00001092F5010E942E0A8091E10080FF19C018
+:101C10008091E20080FF15C08091E2008E7F80936A
+:101C2000E2008091E20080618093E2008091D80020
+:101C300080628093D80019BC85E08093F5010E94F2
+:101C4000320A8091E10084FF30C08091E20084FF7D
+:101C50002CC080E189BD82E189BD09B400FEFDCFC1
+:101C60008091D8008F7D8093D8008091E1008F7E95
+:101C70008093E1008091E2008F7E8093E20080916A
+:101C8000E20081608093E2008091F101882311F0ED
+:101C900084E007C08091E30087FD02C081E001C0BD
+:101CA00083E08093F5010E94340A8091E10083FF74
+:101CB00029C08091E20083FF25C08091E100877FE9
+:101CC0008093E10082E08093F5011092F101809110
+:101CD000E1008E7F8093E1008091E2008E7F80930F
+:101CE000E2008091E20080618093E20042E060E0E7
+:101CF00080E00E94C00C8091F00088608093F0002A
+:101D00000E94310AFF91EF91BF91AF919F918F9106
+:101D10007F916F915F914F913F912F910F900FBEE7
+:101D20000F901F9018951F920F920FB60F921124CB
+:101D30002F933F934F935F936F937F938F939F93D3
+:101D4000AF93BF93CF93DF93EF93FF93C091E900DD
+:101D5000CF708091EC00D82FD17080FDD0E8109228
+:101D6000E9008091F000877F8093F00078940E94D2
+:101D7000D70E1092E9008091F00088608093F00007
+:101D8000CD2BCF70C093E900FF91EF91DF91CF9100
+:101D9000BF91AF919F918F917F916F915F914F9183
+:101DA0003F912F910F900FBE0F901F9018951F938A
+:101DB000CF93DF93CDB7DEB7AA970FB6F894DEBF07
+:101DC0000FBECDBFE6EFF1E088E08E0F9091F100FD
+:101DD00091938E13FBCF0E94500A8091E80083FFFD
+:101DE0001FC18091F6019091F701492F50E04A30D0
+:101DF000510508F015C1FA01EA5AFF4F0C9423244B
+:101E0000803881F0823809F00BC18091FA018F701F
+:101E10008093E9008091EB0085FB882780F9109280
+:101E2000E90006C08091F2019091F3019111826066
+:101E30009091E800977F9093E8008093F1001092D2
+:101E4000F100C8C0282F2D7F09F0EAC0882319F0BF
+:101E5000823061F0E5C08091F801813009F0E0C086
+:101E6000933009F080E08093F3012BC08091F8015A
+:101E7000811127C08091FA018F7009F4D1C080933D
+:101E8000E9002091EB0020FF1CC0933021F48091E9
+:101E9000EB00806214C09091EB0090619093EB0096
+:101EA00021E030E0A90102C0440F551F8A95E2F7F6
+:101EB0004093EA001092EA008091EB0088608093E2
+:101EC000EB001092E9008091E800877F86C08111C5
+:101ED000A7C01091F8011F778091E3008078812BD3
+:101EE0008093E3008091E800877F8093E8000E9460
+:101EF000F50C8091E80080FFFCCF8091E3008068C2
+:101F00008093E300111102C082E001C083E080935E
+:101F1000F50186C08058823008F082C08091F801B7
+:101F20009091F9018C3D53E0950779F583E08A8320
+:101F30008AE289834FB7F894DE01139620E03EE0F1
+:101F400051E2E32FF0E050935700E49120FF03C0EB
+:101F5000E295EF703F5FEF708E2F90E0EA3010F067
+:101F6000C79601C0C0968D939D932F5F243149F78A
+:101F70004FBF8091E800877F8093E8006AE270E0BD
+:101F8000CE0101960E94FC0B14C0AE014F5F5F4F63
+:101F90006091FA010E94430BBC01892B09F440C0F7
+:101FA0009091E800977F9093E80089819A810E9440
+:101FB0005F0C8091E8008B778093E80031C0803817
+:101FC00079F58091E800877F8093E8008091F101A6
+:101FD0008093F1008091E8008E778093E8000E9462
+:101FE000F50C1EC081111CC09091F8019230C0F414
+:101FF0008091E800877F8093E8009093F1010E9430
+:10200000F50C8091F101811106C08091E30087FDFC
+:1020100002C081E001C084E08093F5010E943C0A87
+:102020008091E80083FF0AC08091E800877F809359
+:10203000E8008091EB0080628093EB00AA960FB6D7
+:10204000F894DEBF0FBECDBFDF91CF911F910895F1
+:102050000895CF938091F5018823A1F0C091E90004
+:10206000CF709091EC00892F817090FD80E8C82B93
+:102070001092E9008091E80083FD0E94D70ECF7096
+:10208000C093E900CF9108959093790180937801EE
+:102090000895E0917801F0917901309721F0019055
+:1020A000F081E02D099480E00895E0917801F091AD
+:1020B0007901309721F00280F381E02D0994089591
+:1020C000E0917801F0917901309721F00480F58159
+:1020D000E02D0994089520917601309177018217BF
+:1020E000930771F09093770180937601E0917801E6
+:1020F000F0917901309721F00680F781E02D099465
+:10210000089520917401309175018217930771F041
+:102110009093750180937401E0917801F0917901B9
+:10212000309721F00084F185E02D099408950895F9
+:102130000C9497100E94F41B0E947D040C94B61C12
+:102140009F92AF92BF92CF92DF92EF92FF920F9346
+:102150001F93CF93DF9300D000D000D0CDB7DEB770
+:102160000E9495040DE010E0AA24A394B12C902EB7
+:10217000802F0E948305980125583E4F6901F9017F
+:10218000F080F826A1F40150110988F78FEF8983B8
+:102190008A831B820E94FD1B8160782F9D838C8324
+:1021A00049815A816B818D810E9437112FC0909196
+:1021B000DE0191FF04C08E830E9489058E8125E097
+:1021C00030E0A501022E01C0440F0A94EAF7E42E84
+:1021D0004F21C1F029839A828E2191E009F490E089
+:1021E0009B830E94FD1B8160782F9D838C83498196
+:1021F0005A816B818D810E943711F6018081E8261A
+:10220000E08204C021503109E0F6BDCF0E949D1F3D
+:1022100010917A010E9449101817B9F00E944910D4
+:1022200080937A0126960FB6F894DEBF0FBECDBF1D
+:10223000DF91CF911F910F91FF90EF90DF90CF90A2
+:10224000BF90AF909F900C943F0926960FB6F894DC
+:10225000DEBF0FBECDBFDF91CF911F910F91FF90D9
+:10226000EF90DF90CF90BF90AF909F900895CF9365
+:10227000DF93CDB7DEB72B970FB6F894DEBF0FBE56
+:10228000CDBF4F83588769877A878B87DE01119688
+:1022900086E0FD0111928A95E9F785E0FE01379607
+:1022A00001900D928A95E1F749815A816B817C8179
+:1022B0008D819E810E9480172B960FB6F894DEBF09
+:1022C0000FBECDBFDF91CF910895CF93882309F43E
+:1022D000C2C0C82F823859F40E94491081FDBBC08A
+:1022E00089E30E945A1A0E94271B89E30CC0833895
+:1022F00079F40E94491080FDAEC083E50E945A1A0D
+:102300000E94271B83E50E949C1ACF910C94271BE7
+:10231000843859F40E94491082FD9DC087E40E94D0
+:102320005A1A0E94271B87E4EECF8CEF8C0F813A5C
+:1023300048F48C2F0E94DF2181118DC08C2F0E94C8
+:102340005A1AE3CF80E28C0F883048F4C77081E0DE
+:1023500001C0880FCA95EAF70E94E01AD6CF8BE534
+:102360008C0F833078F4C53A29F0C63A31F083E80F
+:1023700090E005C081E890E002C082E890E0CF9153
+:102380000C946B1088E58C0F833108F064C0C83A58
+:1023900039F1C93A41F1CA3A49F1CB3A51F1CC3A53
+:1023A00059F1CD3A61F1C03B69F1CE3A71F1CF3AC2
+:1023B00079F1C13B81F1C23B89F1C33B91F1C43B4F
+:1023C00099F1C53BA1F1C63BA9F1C73BB1F1C83BAF
+:1023D000B9F1C93BC1F1CA3BC9F180E090E038C016
+:1023E00082EE90E035C089EE90E032C08AEE90E057
+:1023F0002FC085EB90E02CC086EB90E029C087EBE6
+:1024000090E026C08CEC90E023C08DEC90E020C0E2
+:1024100083E891E01DC08AE891E01AC082E991E06A
+:1024200017C084E991E014C081E292E011C083E218
+:1024300092E00EC084E292E00BC085E292E008C018
+:1024400086E292E005C087E292E002C08AE292E072
+:10245000CF910C948110CF910895882309F44BC03B
+:10246000823859F40E94491081FF45C089E30E94D7
+:102470005A1A0E94271B89E30CC0833871F40E940A
+:10248000491080FF38C083E50E945A1A0E94271B1A
+:1024900083E50E949C1A0C94271B843859F40E94EF
+:1024A000491082FF28C087E40E945A1A0E94271B05
+:1024B00087E4EFCF9CEF980F913A58F390E2980F92
+:1024C000983050F4877091E001C0990F8A95EAF72F
+:1024D000892F0E94E61ADFCF9BE5980F933020F4F6
+:1024E00080E090E00C946B10885A833120F480E0F7
+:1024F00090E00C9481100895882321F00E94E01A46
+:102500000C94271B0895882321F00E94E61A0C944E
+:10251000271B08957F928F929F92AF92BF92CF9286
+:10252000DF92EF92FF920F931F93CF93DF931F924F
+:10253000CDB7DEB77C01C62E772EFC010581029552
+:102540000F70128111110E94FD1A0E94531A8823E4
+:1025500079F0112369F080E28C0D883048F082E038
+:102560000E943C1A0E94531A91E0D82ED92601C02D
+:10257000D12CE72DE295EF70F0E0E05AFF4F0C947C
+:102580002324872D807F072D0F70882311F002955B
+:10259000007F112389F0002309F490C180E28C0DA3
+:1025A000883020F4802F0E94E01A03C0802F0E9400
+:1025B000F01A0E94271B82C18C2D0E942D1200232D
+:1025C00009F495C180E28C0D883020F4802F0E94A0
+:1025D000E61A03C0802F0E94F61A0E94271B87C1AB
+:1025E000972D907F872D8F70903211F08295807F8C
+:1025F000CC2021F0F1E0CF16B1F01EC0112349F03C
+:10260000002309F414C1013009F011C10E94101B0C
+:102610006EC1002319F0013009F469C189830E9459
+:10262000131B89810AC1112321F0023008F05FC118
+:10263000FEC001115CC101C1112321F0002309F486
+:10264000F6C03CC1002309F4F8C03EC1872D869531
+:102650008695837090E0009719F0019761F047C16B
+:10266000112321F08C2D972D937002C080E090E013
+:102670000E946B103CC1112321F08C2D972D93707B
+:1026800002C080E090E00E94811031C18C2D1123A6
+:1026900019F00E94A51E02C00E940D1F0E94921FE9
+:1026A00026C1872D837009F052C0111120C18C2DD5
+:1026B000829586958770880F880F9C2D9F70892E34
+:1026C000912CA12CB12C082E04C0880C991CAA1C9A
+:1026D000BB1C0A94D2F7C4FE14C00FE010E020E047
+:1026E00030E0B901A80104C0440F551F661F771FD1
+:1026F0008A95D2F7CB01BA01609570958095909537
+:1027000003C060E070E0CB01272D2695269523704D
+:1027100030E02230310569F02330310589F0682935
+:1027200079298A299B292130310571F00E94C81826
+:10273000DEC0682979298A299B290E94E418D7C01C
+:102740000E94C818C501B4010E94AC18D0C0112362
+:1027500019F0872D817001C08695882309F4C7C0C0
+:102760008C2D829586958770880F880F9C2D9F7081
+:10277000892E912CA12CB12C082E04C0880C991CF8
+:10278000AA1CBB1C0A94D2F7C4FE14C00FE010E0D0
+:1027900020E030E0B901A80104C0440F551F661FB6
+:1027A000771F8A95D2F7CB01BA0160957095809515
+:1027B000909503C060E070E0CB01272D269526950B
+:1027C0002370422F50E04230510569F043305105EB
+:1027D00089F0682979298A299B294130510571F0AE
+:1027E0000E94A21984C0682979298A299B290E94FC
+:1027F000BE197DC00E94A219C501B4010E948619AC
+:1028000076C08C2D90E0FC01E05EF109E531F10528
+:1028100008F050C0E059FF4F0C9423240C2D0F708A
+:10282000872D8F71112331F00E941F19802F0E9474
+:102830007C125DC00E944019802F0E94831257C0F5
+:10284000112339F0011153C0872D8F710E94651932
+:102850004EC0023008F04BC0F7CF112339F0872D5E
+:102860008F710E941F1943C01123C9F3872D8F71E7
+:102870000E9440193CC0112329F0872D8F710E94BE
+:102880000A1935C00E94001932C0112351F0172DCA
+:102890001F71812F0E941F1963E0812F0E94331A3C
+:1028A00026C081E00E943C1A023008F182E00E94BA
+:1028B0003C1A1DC0112331F0002389F28C2D0E9497
+:1028C000651115C0002391F28C2D0E942D120FC0AE
+:1028D000472D4F706C2DC7010E94C1020E94241821
+:1028E00006C0472D4F706C2DC7010E944F06DD209A
+:1028F000F9F00E942F1A80FD1BC0F70112820E947E
+:10290000291A0E941F19C7010E94A7140E94291AA0
+:102910000F90DF91CF911F910F91FF90EF90DF907B
+:10292000CF90BF90AF909F908F907F900C94401964
+:102930000F90DF91CF911F910F91FF90EF90DF905B
+:10294000CF90BF90AF909F908F907F9008950F93FE
+:102950001F93CF93DF93EC01888199812B813C8178
+:10296000232BB9F09F3F11F48F3F99F0CE010E94C5
+:10297000A705882371F0688179818A810E94251AD0
+:102980008C010E94DA190E94A118B801CE010E94A0
+:102990008A12DF91CF911F910F9108950E94FD1A25
+:1029A0000E940D1B0E94D21A0E94271B0E944220E7
+:1029B0000E94921F80E090E00E946B1080E090E007
+:1029C0000C9481100E94ED1A0C94CE140E941A1AD5
+:1029D000292F22952F7030E02C3031054CF42A300D
+:1029E00031056CF42250310922303105A8F407C0BA
+:1029F0002C30310569F02F30310551F00DC0803F8A
+:102A000069F018F4803E40F409C0843F29F406C000
+:102A100093FB882780F9089580E0089581E0089568
+:102A2000CF93DF9300D000D01F92CDB7DEB70F90C9
+:102A30000F900F900F900F90DF91CF910895CF934B
+:102A4000DF9300D000D000D0CDB7DEB726960FB60A
+:102A5000F894DEBF0FBECDBFDF91CF9108951F93D5
+:102A6000CF93DF93C091890116E080918A01C81746
+:102A700099F0D0E01C9FF0011D9FF00D1124E55747
+:102A8000FE4F4081518162817381848195810E94D2
+:102A90001F152196C770E9CFDF91CF911F9108953F
+:102AA0004091BB015091BC016091BD017091BE018C
+:102AB0008091BF019091C0010C941F158091C001BD
+:102AC00082958F7009F054C08091BD01882309F46C
+:102AD0004FC080918901A0918A016091BB017091E2
+:102AE000BC014091BE015091BF01B6E08A1709F4C4
+:102AF0003FC090E041155105C1F17F3F11F46F3F98
+:102B0000A1F1B89FF001B99FF00D1124E557FE4FD8
+:102B1000218172132AC02081621327C022812111D2
+:102B200024C0238134812417350710F42150310942
+:102B3000241B350B283C3105C0F42091C0012F70B7
+:102B400020612093C00126E0289FF001299FF00D0D
+:102B50001124E057FE4F80818F70806180838BEB62
+:102B600091E00E94A7140C942F1501968770BECF98
+:102B70000895CF92DF92EF92FF920F931F93CF931E
+:102B8000DF93CDB7DEB762970FB6F894DEBF0FBE06
+:102B9000CDBF8C0185E0F801DE011D9601900D92FC
+:102BA0008A95E1F7D8014C9111965C911197129694
+:102BB0006C9112971396CD90DC9014973091BB01D5
+:102BC0007091BC018091BE019091BF01009709F402
+:102BD0006BC17F3F19F43F3F09F466C1E090BD012E
+:102BE000EE2009F4C0C02091C001C816D90628F013
+:102BF000F601E81BF90BCF0104C0809590958C0D70
+:102C00009D1DFF24F394883C910578F0F12C207FE2
+:102C100009F0C6C07C2DD98AC88A89890E941015FE
+:102C20008BEB91E00E94A714B1C0822F807F09F046
+:102C300046C0751314C0341312C0611110C02F7038
+:102C400020612093C0010E9450158BEB91E00E94FF
+:102C5000A7148091C001D80115968C932EC0CD2861
+:102C600019F15F3F11F44F3FF9F0F62E61111CC0CE
+:102C70008091890120918A0136E0821709F45AC0B7
+:102C800090E0389FF001399FF00D1124E557FE4F79
+:102C90007181571306C07081471303C0728171118F
+:102CA00003C001968770E9CFF62E662309F418C198
+:102CB0008091C00181608093C001F12C11C1751316
+:102CC00008C0341306C0611104C08091C001D8014E
+:102CD000C3C04D875E878D859E856A8B0E94E614F2
+:102CE0006A898823E1F16623D1F12091C001822F06
+:102CF00082958F7090E0029774F08091BB01909163
+:102D0000BC0198878F831986DB86CA862C87CE0103
+:102D100007960E94A71486E0F801ABEBB1E00190A2
+:102D20000D928A95E1F70E945E150E945015FF24CE
+:102D3000F394D6C04D875E878D859E850E941A1AB2
+:102D4000292F22952F7030E0223031050CF0BCC0C5
+:102D50009F7009F0B6C0805E883008F4C1C0C80119
+:102D60000E94A714E4CFC816D90608F453C0F60190
+:102D7000E81BF90BCF01883C910508F450C0F12CF9
+:102D80007C2DD98AC88A89890E941015EBEBF1E065
+:102D900086E0DF011D928A95E9F70E945015A0C0D8
+:102DA000751314C0341312C0611110C08091C0019A
+:102DB000F8018583C8010E94A71486E0EBEBF1E0DF
+:102DC000DF011D928A95E9F7FE2C8AC04D875E8748
+:102DD0008D859E856A8B0E94E6146A89882309F492
+:102DE000BECF662309F4BBCF2091C001822F82950C
+:102DF0008F7090E002970CF48ECF8091BB01909180
+:102E0000BC019A8389831B82DD82CC822E83CE0112
+:102E100001967FCF809590958C0D9D1DACCFF62EA1
+:102E2000662309F49CCF75132EC034132CC0209157
+:102E3000C00120FD1FC0822F82958F70D9F0D8016C
+:102E400015962C9315978F3049F08F5F982F929598
+:102E5000907F822F8F70892B15968C93C8010E94CA
+:102E6000A71486E0F801ABEBB1E001900D928A95D2
+:102E7000E1F793CF86E0F801ABEBB1E001900D9262
+:102E80008A95E1F72DC04D875E878D859E850E94CE
+:102E9000E614811140CF8091C00181608093C00110
+:102EA000C8010E94A7141CC0662309F458CF4D879F
+:102EB0005E878D859E850E94E614882309F44FCF96
+:102EC0002ACF811148CF0CC0243031050CF047CFF8
+:102ED0009F7009F440CFF8019581907F09F03BCFB6
+:102EE0008F2D62960FB6F894DEBF0FBECDBFDF9177
+:102EF000CF911F910F91FF90EF90DF90CF900895A9
+:102F00001F93CF93DF93CDB7DEB72C970FB6F8940E
+:102F1000DEBF0FBECDBF4F83588769877A878B8707
+:102F20009C87CE0107960E94B915882369F08F818E
+:102F300098852A853B85232BF1F19F3F09F063C0DB
+:102F40008F3F09F060C037C086E0FE013796DE0192
+:102F5000119601900D928A95E1F76F817885EA8547
+:102F6000FB85309741F17F3F11F46F3F21F12091B4
+:102F70008A0130E0C9010196877099274091890143
+:102F800050E08417950709F447C069837A83FD836D
+:102F9000EC8396E0929FD001939FB00D1124A5572A
+:102FA000BE4FFE01319601900D929A95E1F7809304
+:102FB0008A010E942F1516E08091890190918A0163
+:102FC0008917C1F1189FC001112485579E4F0E9497
+:102FD000B915882379F1E09189011E9FF001112430
+:102FE000E557FE4F408151816281738184819581D3
+:102FF0000E941F158091890190E0019687709927A2
+:1030000080938901D9CF4F81588569857A858B85D1
+:103010009C850E941F15CFCF0E94E21410928A0156
+:1030200010928901EBEBF1E086E0DF011D928A95B9
+:10303000E9F7C1CF2C960FB6F894DEBF0FBECDBF17
+:10304000DF91CF911F910895EF92FF920F931F93FD
+:10305000CF93DF938C01892B09F46CC0F12CEE2403
+:10306000E394E8012196F8018491843740F4843098
+:1030700008F051C0813081F0823019F15BC0853792
+:1030800009F444C0A8F19CE7980F903708F052C0AB
+:103090008F770E942D1241C00E5F1F4FFE01C49119
+:1030A00080E28C0F883048F4C7708E2D01C0880FE5
+:1030B000CA95EAF70E94001B14C08C2F0E9465116C
+:1030C0002DC00E5F1F4FFE01C49180E28C0F88302F
+:1030D00058F4C7708E2D01C0880FCA95EAF70E9478
+:1030E000061B0E94271B1AC08C2F0E942D1216C08F
+:1030F0000E5F1F4FFE01C491CC2381F08FE99FE04A
+:103100000197F1F700C00000C150F6CF0E5F1F4FCE
+:10311000FE01F49003C00E9465118E018F2D88235B
+:1031200009F49FCFEFE9FFE03197F1F700C000000D
+:103130008150F5CFDF91CF911F910F91FF90EF90CC
+:10314000089508956093C5017093C6018093C701E7
+:103150009093C8010C94CE140F931F930091C50156
+:103160001091C6012091C7013091C801DC01CB014B
+:10317000802B912BA22BB32B8093C5019093C6017A
+:10318000A093C701B093C8011F910F910C94CE1466
+:103190000F931F930091C5011091C6012091C701A3
+:1031A0003091C801DC01CB0180239123A223B323FA
+:1031B0008093C5019093C601A093C701B093C80145
+:1031C0001F910F910C94CE140F931F930091C50182
+:1031D0001091C6012091C7013091C801DC01CB01DB
+:1031E00080279127A227B3278093C5019093C6011A
+:1031F000A093C701B093C8011F910F910C94CE14F6
+:103200001092C1011092C2011092C3011092C40128
+:103210000C94CE1441E050E060E070E004C0440F34
+:10322000551F661F771F8A95D2F74093C1015093AF
+:10323000C2016093C3017093C4010C94CE1441E0A9
+:1032400050E060E070E004C0440F551F661F771F18
+:103250008A95D2F78091C1019091C201A091C301DA
+:10326000B091C401482B592B6A2B7B2B4093C10191
+:103270005093C2016093C3017093C4010C94CE14A7
+:1032800041E050E060E070E004C0440F551F661F4D
+:10329000771F8A95D2F740955095609570958091EB
+:1032A000C1019091C201A091C301B091C401482312
+:1032B00059236A237B234093C1015093C201609339
+:1032C000C3017093C4010C94CE1441E050E060E05F
+:1032D00070E004C0440F551F661F771F8A95D2F710
+:1032E0008091C1019091C201A091C301B091C4012C
+:1032F000482759276A277B274093C1015093C20171
+:103300006093C3017093C4010C94CE140F931F9368
+:103310000091C1011091C2012091C3013091C401FB
+:10332000DC01CB01802B912BA22BB32B8093C1010D
+:103330009093C201A093C301B093C4011F910F9158
+:103340000C94CE140F931F930091C1011091C201F0
+:103350002091C3013091C401DC01CB018023912372
+:10336000A223B3238093C1019093C201A093C30110
+:10337000B093C4011F910F910C94CE140F931F931F
+:103380000091C1011091C2012091C3013091C4018B
+:10339000DC01CB0180279127A227B3278093C101AD
+:1033A0009093C201A093C301B093C4011F910F91E8
+:1033B0000C94CE140895CF92DF92EF92FF920F9368
+:1033C0001F93CF93DF938C01C090C501D090C601AD
+:1033D000E090C701F090C8018091C1019091C201B5
+:1033E000A091C301B091C401C82AD92AEA2AFB2AB4
+:1033F000CFE1D0E0D701C6010C2E04C0B695A79549
+:10340000979587950A94D2F780FF06C0B8018C2F54
+:103410000E94A408019721F4219760F780E001C081
+:103420008C2FDF91CF911F910F91FF90EF90DF9044
+:10343000CF900895CF93DF93EC010E94DB19BE017A
+:103440000E94A408DF91CF910895CB010E941A1A1F
+:1034500008958091C90185958595859508958091F8
+:10346000C9018770089598E0899F90011124262B47
+:103470002093C9010C941F192091C90180958223C2
+:103480008093C901982F977069F430E0482F082E77
+:10349000000C550B2417350729F0859585958595E2
+:1034A0000C94401908959091C901977081E009F436
+:1034B00080E0089590910C01992321F090910D01E5
+:1034C000911109C020910E0130910F01F90132963E
+:1034D0009FEF40E01FC0982F9695969596959F3048
+:1034E00050F5E0910E01F0910F01E90FF11D877089
+:1034F00021E030E0A90102C0440F551F8A95E2F790
+:10350000CA019181892B818308959F3F39F04F5FD4
+:103510004E3041F051915813F8CF0DC05111F7CFF3
+:10352000942FF5CF9F3F39F0F901E90FF11D97FD79
+:10353000FA9582830895089590910C01992321F0C2
+:1035400090910D01911109C020910E0130910F0150
+:10355000F9013296205F3F4F1FC0982F96959695A0
+:1035600096959F30F0F4E0910E01F0910F01E90F74
+:10357000F11D877021E030E0A90102C0440F551F02
+:103580008A95E2F7CA018095918189238183089504
+:103590003196E217F30729F090819813F9CF108242
+:1035A000F7CF089581E090E0E0910E01F0910F01D6
+:1035B000E80FF91F1082019680319105A9F708954F
+:1035C0009091DD01892B8093DD0108958095909184
+:1035D000DD0189238093DD0108951092DD010895B6
+:1035E0009091DC01892B8093DC0108958095909166
+:1035F000DC0189238093DC0108951092DC01089599
+:103600009091DB01892B8093DB0108958095909147
+:10361000DB0189238093DB0108951092DB0108957B
+:103620008093CA0108951092CA01089580910E01F5
+:1036300090910F01FC0131969C01205F3F4F80E08B
+:10364000919191118F5FE217F307D1F70895E091FF
+:103650000E01F0910F018091DD018083E0910E0158
+:10366000F0910F0190818091DC01892B8083E091A2
+:103670000E01F0910F0190818091DB01892B8083F5
+:103680008091CA01882361F0E0910E01F0910F0151
+:103690009081892B80830E94161B81111092CA0190
+:1036A00080910E0190910F010C94551020E000972D
+:1036B00039F0AC0141505109842395232F5FF7CF96
+:1036C000822F0895CF92DF92EF92FF926C01EE2449
+:1036D000FF24C114D104E104F10421F0C701B601B3
+:1036E00020E101C020E0C72ED82EE92EFF24C1140E
+:1036F000D104E104F10419F0285FC701B6016B01A0
+:103700007C0154E0F694E794D794C7945A95D1F786
+:10371000C114D104E104F10419F02C5FC701B60112
+:103720006B017C0142E0F694E794D794C7944A95E4
+:10373000D1F7C114D104E104F10419F02E5FC701DF
+:10374000B601DC01CB01B695A79597958795892B96
+:103750008A2B8B2B09F02F5F822FFF90EF90DF9049
+:10376000CF9008958091F501843039F11092DF01F6
+:1037700020E488E190E00FB6F894A895809360006B
+:103780000FBE2093600080E00E943F0983B7817FD5
+:10379000846083BF83B7816083BF7894889583B743
+:1037A0008E7F83BF0FB6F894A895809160008861E2
+:1037B00080936000109260000FBE089508950895F0
+:1037C0000E94DE1B0E9495040E94DF1B0E948A0556
+:1037D00091E0811101C090E0892F08950E94E214C8
+:1037E0000E9449100C943F0982E084BD93E095BD8E
+:1037F0009AEF97BD80936E0008952FB7F89480914B
+:10380000E0019091E101A091E201B091E3012FBFAD
+:103810000895CF92DF92EF92FF920F931F932FB7ED
+:10382000F8944091E0015091E1016091E2017091C2
+:10383000E3012FBF6A017B01EE24FF248C0120E00D
+:1038400030E0C016D106E206F30610F441505109EB
+:103850009A01281B390BC9011F910F91FF90EF901E
+:10386000DF90CF9008951F920F920FB60F92112400
+:103870008F939F93AF93BF938091E0019091E1016B
+:10388000A091E201B091E3010196A11DB11D8093C9
+:10389000E0019093E101A093E201B093E301BF91B5
+:1038A000AF919F918F910F900FBE0F901F90189521
+:1038B0000E94460DF8942FEF87EA91E62150804050
+:1038C0009040E1F700C0000087E090EBDC018093BE
+:1038D000FF0190930002A0930102B09302029CE0CA
+:1038E00088E10FB6F894A895809360000FBE90937E
+:1038F0006000FFCFEF92FF920F931F93CF93DF9360
+:10390000D82FCDE08C2F0E94830505E010E0E82E33
+:10391000F12CC701002E02C0959587950A94E2F715
+:1039200080FF09C0602F7C2F80E00E945006D813D2
+:1039300002C081E006C00150110958F7C15010F7CC
+:1039400080E0DF91CF911F910F91FF90EF9008954C
+:10395000CF93C82F8CE20E947A1C882321F08C2FF1
+:10396000CF910C947A1C80E0CF910895CF930E9460
+:10397000FD1D811102C00E94E31DC5E6C15049F042
+:103980000E9495048FE39CE90197F1F700C00000C5
+:10399000F5CF89E20E94A81C811113C18AE20E941E
+:1039A000A81C81110E94E31D85E00E94A81C8111C2
+:1039B0000E94581C0E94081E8093DE0187E00E942E
+:1039C000A81C8823A9F18BE10E94A81C882351F030
+:1039D0008091DE0181FB222720F991E0922790FB64
+:1039E00081F90EC08EE00E94A81C882361F08091AE
+:1039F000DE0182FB222720F991E0922790FB82F9D9
+:103A00008093DE0115C080E10E94A81C9091DE0128
+:103A1000882341F093FB222720F981E0822780FB55
+:103A200093F904C0892F809580FB90F99093DE0173
+:103A30008091DE010E940C1E0E941A1E8093FE01DE
+:103A400080EE0E94A81C882341F08091FE01982FEF
+:103A5000909590FB80F98093FE0189E30E94A81C59
+:103A6000882359F08091FE0181FB222720F991E003
+:103A7000922790FB81F98093FE0182EE0E94A81CA0
+:103A8000882359F08091FE0182FB222720F991E0E2
+:103A9000922790FB82F98093FE0186EE0E94A81C7B
+:103AA000882359F08091FE0183FB222720F991E0C1
+:103AB000922790FB83F98093FE0183EE0E94A81C5D
+:103AC000882359F08091FE0184FB222720F991E0A0
+:103AD000922790FB84F98093FE0185E30E94A81C45
+:103AE000882359F08091FE0185FB222720F991E07F
+:103AF000922790FB85F98093FE0181E30E94A81C28
+:103B0000882359F08091FE0186FB222720F991E05D
+:103B1000922790FB86F98093FE0181E10E94A81C08
+:103B2000882359F08091FE0187FB222720F991E03C
+:103B3000922790FB87F98093FE018091FE010E94FD
+:103B40001E1E8091FE0187FB882780F980930D015E
+:103B500087E20E94A81CC82F8EE10E94A81C811138
+:103B6000C2608FE10E94A81C8111C46080E20E94A3
+:103B7000A81C8111C86081E20E94A81C8111C0614B
+:103B800082E20E94A81C8111C06283E20E94A81CEC
+:103B90008111C06484E20E94A81C882311F0C068CF
+:103BA00002C0CC2329F08C2F0E94151E6C2F03C05D
+:103BB0000E94111E682F70E080E090E0CF910C947D
+:103BC000A218CF9108956DEE7EEF80E090E00E9404
+:103BD0005D2460E082E090E00E944B2460E083E09E
+:103BE00090E00E944B2460E084E090E00E944B242F
+:103BF00060E085E090E00C944B2480E090E00E942F
+:103C0000452421E08D3E9E4F09F020E0822F08954B
+:103C100082E090E00C943D24682F82E090E00C94C8
+:103C20004B2483E090E00C943D24682F83E090E0E7
+:103C30000C944B2484E090E00C943D24682F84E0A5
+:103C400090E00C944B248091E60180FF0BC06091C2
+:103C5000130185E0689FB0011124759567957595EE
+:103C600067952BC081FF09C06091130185E0689FB3
+:103C7000B00111247595679520C082FF07C060913F
+:103C8000130185E0689FB001112417C09091E701EE
+:103C90009923D1F060911201961788F720911301B2
+:103CA00085E0289F90011124929FA001939F500DC1
+:103CB000112470E0CA010E940F246038710540F49D
+:103CC0006115710539F002C065E070E0862F089536
+:103CD0008FE7089581E008958091E60180FF08C094
+:103CE0006091110170E0759567957595679521C094
+:103CF00081FF06C06091110170E07595679519C04C
+:103D000082FF04C06091110170E010C09091E70142
+:103D10009923C1F0609110019617A0F780911101CD
+:103D2000899FC001112470E00E940F246038710542
+:103D300028F46115710521F0862F08958FE7089505
+:103D400081E0089561E070E0F4CF803F21F40E94AB
+:103D5000231E819504C0813F29F40E94231E809375
+:103D6000EA010895823F21F40E94231E819504C038
+:103D7000833F29F40E94231E8093E9010895893F1F
+:103D800019F40E946C1E05C08A3F31F40E946C1E1B
+:103D900081958093EB0108958B3F21F40E946C1E66
+:103DA000819504C08C3F29F40E946C1E8093EC0125
+:103DB0000895843F21F48091E801816017C0853F18
+:103DC00021F48091E801826011C0863F21F4809146
+:103DD000E80184600BC0873F21F48091E80188608E
+:103DE00005C0883F31F48091E80180618093E8014B
+:103DF00008958D3F21F48091E60181600BC08E3FD4
+:103E000021F48091E601826005C08F3F29F4809102
+:103E1000E60184608093E6010895803F39F4809143
+:103E2000EA0187FF6CC01092EA0169C0813F29F462
+:103E30008091EA011816BCF362C09091E901823FBB
+:103E400029F497FF5CC01092E90159C0833F19F42F
+:103E50001916CCF354C0893F41F48091EB01181638
+:103E60000CF04DC01092EB014AC08A3F29F48091BA
+:103E7000EB0187FF44C0F6CF8B3F39F48091EC0112
+:103E800087FF3DC01092EC013AC08C3F29F480912D
+:103E9000EC011816BCF333C0843F21F48091E80193
+:103EA0008E7F17C0853F21F48091E8018D7F11C07E
+:103EB000863F21F48091E8018B7F0BC0873F21F47E
+:103EC0008091E801877F05C0883F31F48091E80147
+:103ED0008F7E8093E80113C08D3F21F48091E6012D
+:103EE0008E7F0BC08E3F21F48091E6018D7F05C04F
+:103EF0008F3F29F48091E6018B7F8093E6018091CA
+:103F0000E90181110EC08091EA0181110AC08091FE
+:103F1000EB01811106C08091EC01811102C0109269
+:103F2000E701089588EE91E00E9460100E94FD1B59
+:103F30009093E5018093E40108951F93CF93DF935D
+:103F40008091E4019091E5010E94091CAC019091DF
+:103F5000E701992321F02091140130E006C020915F
+:103F600015018AE0289F900111244217530708F495
+:103F700085C08091E901C091EA01D091EB011091D7
+:103F8000EC01811107C0C11175C0D11173C01111AD
+:103F900071C074C09F3F19F09F5F9093E70118169E
+:103FA00024F40E94231E8093E9018091E90187FF98
+:103FB00005C00E94231E81958093E9011C1624F4FC
+:103FC0000E94231E8093EA018091EA0187FF05C0C9
+:103FD0000E94231E81958093EA016091E901662386
+:103FE00031F1C091EA01CC2311F1062E000C770BC0
+:103FF000880B990B0E94162323E333E343E35FE32B
+:104000000E947A230E94DE226093E9016C2FCC0F7C
+:10401000770B880B990B0E94162323E333E343E3CA
+:104020005FE30E947A230E94DE226093EA011D165C
+:1040300024F40E946C1E8093EB018091EB0187FFBA
+:1040400005C00E946C1E81958093EB01111624F42B
+:104050000E946C1E8093EC018091EC0187FF05C0EB
+:104060000E946C1E81958093EC01DF91CF911F918E
+:104070000C94921F9F3F09F08FCF97CFDF91CF9184
+:104080001F910895E8EEF1E085E0DF011D928A9529
+:10409000E9F71092E7011092E6010895833081F16B
+:1040A00028F4813059F08230D1F00895853009F438
+:1040B00049C0B8F1863009F456C0089580911501C1
+:1040C000262F30E0280F311D2F3F310524F4680FD3
+:1040D0006093150108958FEF8093150108958091E5
+:1040E0001401262F30E0280F311D2F3F310524F415
+:1040F000680F6093140108958FEF80931401089561
+:1041000080911301262F30E0280F311D2F3F3105FC
+:1041100024F4680F6093130108958FEF80931301C7
+:10412000089580911201262F30E0280F311D2F3F76
+:10413000310524F4680F6093120108958FEF809386
+:104140001201089580911101262F30E0280F311DB2
+:104150002F3F310524F4680F6093110108958FEF0C
+:1041600080931101089580911001262F30E0280FCF
+:10417000311D2F3F310524F4680F6093100108951D
+:104180008FEF809310010895833011F128F481306E
+:1041900049F0823091F00895853081F120F1863028
+:1041A000C1F1089580911501681720F4861B809352
+:1041B0001501089510921501089580911401681752
+:1041C00020F4861B80931401089510921401089521
+:1041D00080911301681720F4861B809313010895C2
+:1041E00010921301089580911201681720F4861B24
+:1041F0008093120108951092120108958091110187
+:10420000681720F4861B8093110108951092110104
+:10421000089580911001681720F4861B8093100187
+:1042200008951092100108950F931F938D3109F492
+:104230006BC008F03FC08E3009F47FC0C0F48730F7
+:1042400009F469C068F4863009F0B1C08091DE01DC
+:10425000817F8E7F8093DE0181E08093EE01A8C094
+:10426000883009F4A2C08B3009F49FC0A0C0863109
+:1042700009F49BC078F4803109F472C0813109F0EF
+:1042800096C00E94E21490910D0181E089278093ED
+:104290000D018BC0893109F488C08B3109F087C0CA
+:1042A0008091DE0181FB222720F991E0922790FB8B
+:1042B00081F94CC0853309F470C048F4873209F4A1
+:1042C0006CC008F459C0893209F467C070C08334E7
+:1042D00038F48A3308F04EC0883309F466C067C0EA
+:1042E000833409F45AC0883409F061C00E94E21492
+:1042F0000FEF13ED20E3015010402040E1F700C024
+:1043000000000E94581C51C00E9498220E9449102F
+:104310000E943F094AC09091DE01892F80958170EB
+:1043200080FB90F929F0966098609093DE0140C080
+:10433000997F977F9093DE0138C08091DE0182FBE8
+:10434000222720F991E0922790FB82F98093DE01E9
+:10435000992359F18091DE0181608093DE0125C0AF
+:104360008091DE0183FB222720F991E0922790FBC8
+:1043700083F9ECCF895301C08D5141E050E060E0FA
+:1043800070E08A019B0104C0000F111F221F331F20
+:104390008A95D2F7C901B80104C061E070E080E0FD
+:1043A00090E00E94A2180E94E21481E001C080E027
+:1043B0001F910F91089580E0089580E00895CF93B4
+:1043C000C82F8091EE01813079F018F08230E9F148
+:1043D00087C0E0910E01F0910F018081813169F079
+:1043E000823209F07FC009C0E0910E01F0910F0107
+:1043F0008081813111F0823261F48C2F0E94DB21A7
+:10440000811104C08C2F0E9414211DC081E090E016
+:104410001AC08C2F0E94DD21811114C0C43179F0A3
+:1044200048F4CB3079F0C03109F060C082E080936D
+:10443000EE0108C0C93219F0C83321F057C01092FC
+:10444000EE0154C081E0817053C0C93289F118F582
+:10445000C43171F1A8F4C73009F046C08AE08093F6
+:10446000150194E19093140193E0909313018093CC
+:10447000120188E08093110188E28093100134C01A
+:10448000CE51C63088F5EC2FF0E0E65DFE4F80811E
+:104490008093ED0129C0CE34E9F020F4CB3421F52E
+:1044A0006AE013C0C13579F0C235F1F461E00DC0A6
+:1044B0008091ED01882319F01092ED0115C081E083
+:1044C0008093EE0115C061E006C08091ED010E946D
+:1044D0004E200AC06AE08091ED010E94C42004C011
+:1044E0001092EE0180E004C081E002C080E0ABCF1A
+:1044F000CF910895E1E8F0E0808188608083808139
+:10450000816080838FB7F89493E09093890090ED59
+:10451000909388008FBF0895EFE6F0E0808182607D
+:1045200080830895EFE6F0E080818D7F8083089599
+:10453000EFE6F0E0908182E08927808308951F9262
+:104540000F920FB60F9211242F933F934F935F93C7
+:104550006F937F938F939F93AF93BF93EF93FF934B
+:104560008091EF019091F00101969093F00180937A
+:10457000EF01811103C082E00E943F09E091F00148
+:10458000E695E695F0E0E055FB4FE4918091EF0170
+:104590008E1303C080E00E943F09FF91EF91BF910D
+:1045A000AF919F918F917F916F915F914F913F91CB
+:1045B0002F910F900FBE0F901F9018950E94E5222B
+:1045C0006894B1110C94742308950E94592388F0C3
+:1045D0009F5798F0B92F9927B751B0F0E1F0660FC7
+:1045E000771F881F991F1AF0BA95C9F714C0B13008
+:1045F00091F00E947323B1E008950C947323672F08
+:10460000782F8827B85F39F0B93FCCF38695779536
+:104610006795B395D9F73EF490958095709561951F
+:104620007F4F8F4F9F4F0895E89409C097FB3EF44A
+:1046300090958095709561957F4F8F4F9F4F9923EF
+:10464000A9F0F92F96E9BB279395F695879577956D
+:104650006795B795F111F8CFFAF4BB0F11F460FF2D
+:104660001BC06F5F7F4F8F4F9F4F16C0882311F085
+:1046700096E911C0772321F09EE8872F762F05C099
+:10468000662371F096E8862F70E060E02AF09A9534
+:10469000660F771F881FDAF7880F9695879597F929
+:1046A000089557FD9058440F551F59F05F3F71F022
+:1046B0004795880F97FB991F61F09F3F79F0879589
+:1046C0000895121613061406551FF2CF4695F1DF12
+:1046D00008C0161617061806991FF1CF86957105A2
+:1046E000610508940895E894BB2766277727CB01D6
+:1046F00097F908950E948D230C94FE230E94F023C5
+:1047000038F00E94F72320F0952311F00C94E72352
+:104710000C94ED2311240C9474230E94512370F304
+:10472000959FC1F3950F50E0551F629FF001729F56
+:10473000BB27F00DB11D639FAA27F00DB11DAA1F65
+:10474000649F6627B00DA11D661F829F2227B00DB2
+:10475000A11D621F739FB00DA11D621F839FA00D3D
+:10476000611D221F749F3327A00D611D231F849F8D
+:10477000600D211D822F762F6A2F11249F575040E4
+:104780009AF0F1F088234AF0EE0FFF1FBB1F661F5F
+:10479000771F881F91505040A9F79E3F510580F028
+:1047A0000C94E7230C9474235F3FE4F3983ED4F316
+:1047B000869577956795B795F795E7959F5FC1F7CC
+:1047C000FE2B880F911D9695879597F9089597F977
+:1047D0009F6780E870E060E008959FEF80EC0895A7
+:1047E00000240A94161617061806090608950024D0
+:1047F0000A9412161306140605060895092E03944A
+:10480000000C11F4882352F0BB0F40F4BF2B11F4BD
+:1048100060FF04C06F5F7F4F8F4F9F4F089597FBDE
+:10482000072E16F4009407D077FD09D00E942924A2
+:1048300007FC05D03EF4909581959F4F08957095A3
+:1048400061957F4F0895EE0FFF1F0590F491E02DC5
+:104850000994AA1BBB1B51E107C0AA1FBB1FA617C7
+:10486000B70710F0A61BB70B881F991F5A95A9F719
+:1048700080959095BC01CD010895F999FECF92BD28
+:1048800081BDF89A992780B50895A8E1B0E042E08B
+:1048900050E00C946524262FF999FECF92BD81BD7E
+:1048A000F89A019700B4021639F01FBA20BD0FB66E
+:1048B000F894FA9AF99A0FBE08950196272F0E944C
+:1048C0004C240C944B24DC01CB01FC01F999FECF64
+:1048D00006C0F2BDE1BDF89A319600B40D92415088
+:0A48E0005040B8F70895F894FFCF98
+:1048EA0020024109CF09AC09780944090101CB0129
+:1048FA0028080A03140A3F4D363971042404EE03CA
+:10490A00B503480361037A0393030102030405060E
+:04491A000708090081
:00000001FF
diff --git a/keyboard/ergodox_ez/keymaps/dave/keymap.c b/keyboard/ergodox_ez/keymaps/dave/keymap.c
index 3ac2842fbf..e9480af3e9 100644
--- a/keyboard/ergodox_ez/keymaps/dave/keymap.c
+++ b/keyboard/ergodox_ez/keymaps/dave/keymap.c
@@ -3,8 +3,8 @@
#include "action_layer.h"
#define BASE 0 // default layer
-#define PROG 1 // symbols
-#define NAVI 2 // navigation keys
+#define PROG 1 // programming
+#define NAVI 2 // navigation
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Keymap 0: Basic layer
@@ -18,16 +18,18 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* |--------+------+------+------+------+------| H | | B |------+------+------+------+------+--------|
* | LShift | Z | X | C | V | B | | | | N | M | , | . | / | RShift |
* `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
- * |`/Ctrl| \ | | | LAlt | | RAlt | | [ | ] |'/Ctrl|
+ * |`/Ctrl| \ | | | LAlt | | RAlt | [ | ] | |'/Ctrl|
* `----------------------------------' `----------------------------------'
* ,-------------. ,-------------.
- * | PrtS | Apps | | Paus | CtAl |
+ * | PrtS | PrtS | | CtAl | CtAl |
* ,------+------+------| |------+------+------.
* | | | L1 | | L1 | | |
* | Spce | ~L2 +------| |------+ ~L1 | Spce |
* | | | LGui | | RGui | | |
* `--------------------' `--------------------'
*/
+// If it accepts an argument (i.e, is a function), it doesn't need KC_.
+// Otherwise, it needs KC_*
[BASE] = KEYMAP( // layer 0 : default
// left hand
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6,
@@ -35,7 +37,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_LCTRL, KC_A, KC_S, KC_D, KC_F, KC_G,
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_H,
CTL_T(KC_GRV),KC_NUBS,KC_NO, KC_NO, KC_LALT,
- KC_PSCREEN, KC_APP,
+ KC_PSCREEN, KC_PSCREEN,
TO(PROG, ON_PRESS),
KC_SPC, MO(NAVI), KC_LGUI,
// right hand
@@ -43,8 +45,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_G, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_ENTER,
KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_ENTER,
KC_B, KC_N, KC_M, KC_COMM,KC_DOT, KC_SLSH, KC_RSFT,
- KC_RALT,KC_NO, KC_LBRC,KC_RBRC, CTL_T(KC_QUOT),
- KC_PAUS, MT(0x5, KC_NO),
+ KC_RALT,KC_LBRC,KC_RBRC,KC_NO, CTL_T(KC_QUOT),
+ MT(0x5, KC_NO), MT(0x5, KC_NO),
TO(PROG, ON_PRESS),
KC_RGUI, MO(PROG), KC_SPC
),
@@ -70,6 +72,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* | | | | | | | |
* `--------------------' `--------------------'
*/
+// PROGRAMMING
[PROG] = KEYMAP(
// left hand
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
@@ -105,20 +108,21 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* | | MsLt | MsDn | MsRt | | |VolDn | Mute |VolUp | | |
* `----------------------------------' `----------------------------------'
* ,-------------. ,-------------.
- * | Powr | Log | | | |
+ * | | | | | |
* ,------|------|------| |------+------+------.
* | | | L0 | | L0 | | |
* | | |------| |------| | |
* | | | | | | | |
* `--------------------' `--------------------'
*/
+// NAVIGATION
[NAVI] = KEYMAP(
KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6,
KC_TRNS, KC_HOME, KC_UP, KC_END, KC_INS, KC_PGUP, KC_TRNS,
KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_DELT, KC_PGDN,
KC_TRNS, KC_BTN1, KC_MS_U, KC_BTN2, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS,
- KC_PWR, LCTL(LALT(KC_DELT)),
+ KC_TRNS, KC_TRNS,
TO(BASE, ON_PRESS),
KC_TRNS, KC_TRNS, KC_TRNS,
// right hand
diff --git a/keyboard/ergodox_ez/keymaps/dave/readme.md b/keyboard/ergodox_ez/keymaps/dave/readme.md
new file mode 100644
index 0000000000..aa0f9bd192
--- /dev/null
+++ b/keyboard/ergodox_ez/keymaps/dave/readme.md
@@ -0,0 +1,38 @@
+This keymap is my preferred layout (after a certain amount of experimentation).
+The rationale behind the design is as follows:
+
+I grew up typing from a very early age and thus never learned the "correct" way
+to touch type (essentially, I'm self-taught). As a, result my fingers don't
+tend to stay on the "home keys" and occasionally my right hand wants to type
+keys that are on the left of the keyboard, and vice versa.
+
+Hence, despite liking the idea of split keyboards in principle, I've never been
+able to get on with them because the split simply doesn't work with my style of
+typing. The Ergodox solves this neatly by virtue of having a few extra keys in
+the "middle" of the keyboard which I can utilise for deliberate redundancy.
+Thus in this keymap there are two "6" keys (one on the left, one on the right)
+and likewise Y, H, G, and B are all duplicated to enable one-handed patterns
+that I use frequently (e.g. "byobu" with the right hand, "yes" with the left,
+etc.).
+
+I occasionally use the numeric pad for data entry, thus this is duplicated
+under the natural home position of the right hand in layer 1 (activated by
+holding one of the right thumb buttons), while the cursor keys are duplicated
+under the classic WASD gaming layout of the left hand in layer 2 (activated by
+holding one of the left thumb buttons). Various other useful keys also appear
+in these layers (brackets and symbols for coding in layer 1, navigation and
+F-keys in layer 2, etc.).
+
+Finally, modifier keys like Ctrl, Shift, and Alt, along with Backspace and
+Enter are all in traditional locations in an effort to reuse existing muscle
+memory as much as possible (keys like =, #, and ' are in layer 1). The layout
+maps are in the comments of keymap_dave.c so I won't bother duplicating them
+here.
+
+Oh, and the LEDs are rather pimped ... because I could!
+
+Anyway, although I'm sure this keymap won't be to many people's taste you might
+find some interesting ideas in here for your own layouts. Do tweet me
+(@waveform80) if you have any questions / suggestions / bugs.
+
+Dave.
diff --git a/keyboard/ergodox_ez/keymaps/dvorak_spanish/README.md b/keyboard/ergodox_ez/keymaps/dvorak_spanish/README.md
new file mode 100644
index 0000000000..e075e3cd7d
--- /dev/null
+++ b/keyboard/ergodox_ez/keymaps/dvorak_spanish/README.md
@@ -0,0 +1,99 @@
+# Ergodox Spanish Dvorak Layout
+ * See spanish dvorak layout [here](http://djelibeibi.unex.es/dvorak/)
+ * Software layout must be set to SPANISH QWERTY to work properly
+
+## Keymap Layers
+ - L0: spanish dvorak with some customizations (see layout below)
+ - L1: auxiliary keys (includes qwerty shortcuts, numpad...)
+ - L2: qwerty layout with customizations
+
+
+### Keymap 0: Base layer
+Keys with double values (like Esc/Ctrl) correspond to the 'tapped' key and the 'held' key, respectively
+
+<pre><code>
+
+,--------------------------------------------------. ,--------------------------------------------------.
+| \ | 1 | 2 | 3 | 4 | 5 | <> | | ¡ | 6 | 7 | 8 | 9 | 0 | ' |
+|--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
+| F1/~L1 | . | , | Ñ | P | Y |MEH_T | | L1 | F | G | C | H | L |ALL_T/+ |
+|--------+------+------+------+------+------| DEL | | ~L1 |------+------+------+------+------+--------|
+|Esc/Ctrl| A | O | E | U | I |------| |------| D | R | T | N | S |'/RCtrl |
+|--------+------+------+------+------+------| LGUI | | RALT |------+------+------+------+------+--------|
+| {/LSft | - | Q | J | K | X | | | | B | M | W | V | Z | }/RSft |
+'--------+------+------+------+------+-------------' '-------------+------+------+------+------+--------'
+ |[/LALT| HOME |PGDOWN| PGUP | END | | LEFT | DOWN | UP |RIGHT |]/LALT|
+ '----------------------------------' '----------------------------------'
+ ,-------------. ,-------------.
+ |F5/CAG|F6/~L1| |F7/~L1|F8/CAG|
+ ,------|------|------| |------+--------+------.
+ | | |F4/CA | |F11/CA| | |
+ | ENTER| TAB |------| |------| BSPC | SPACE|
+ | | |F3/SA | |F12/SA| | |
+ '--------------------' '----------------------'
+ CAG = CTRL-ALT-GUI
+ CA = CTRL-ALT
+ SA = SHIFT-ALT
+
+</pre></code>
+
+### Keymap 1: Aux layer
+
+<pre><code>
+
+,--------------------------------------------------. ,--------------------------------------------------.
+| | F1 | F2 | F3 | F4 | F5 | SLEEP| | PWR | F6 | F7 | F8 | F9 | F10 | F11 |
+|--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
+| | < | > | MsUp | | | | | ~L0 | | 7 | 8 | 9 | * | '^ |
+|--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
+| | |MsLeft|MsDown|MsRght| |------| |------| | 4 | 5 | 6 | + | Ç |
+|--------+------+------+------+------+------| | |PSCR |------+------+------+------+------+--------|
+|CAPSLOCK| | | | | | | | | | 1 | 2 | 3 | / | |
+'--------+------+------+------+------+-------------' '-------------+------+------+------+------+--------'
+ |CTRL-S|CTRL-Z|CTRL-X|CTRL-C|CTRL-V| | | . | 0 | = | |
+ '----------------------------------' '----------------------------------'
+ ,-------------. ,-------------.
+ | | | | | Play |
+ ,------|------|------| |------+------+------.
+ | | | | | VolUp| | |
+ | Lclk | Rclk |------| |------| Prev | Next |
+ | | | L2 | | VolDn| | |
+ '--------------------' '--------------------'
+
+</pre></code>
+
+### Keymap 2: QWERTY layer
+
+<pre><code>
+
+,--------------------------------------------------. ,--------------------------------------------------.
+| \ | 1 | 2 | 3 | 4 | 5 | <> | | ¡ | 6 | 7 | 8 | 9 | 0 | ' |
+|--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
+| TRANS | Q | W | E | R | T |MEH_T | | TRANS| Y | U | I | O | P |ALL_T/+ |
+|--------+------+------+------+------+------| DEL | | |------+------+------+------+------+--------|
+|Esc/Ctrl| A | S | D | F | G |------| |------| H | J | K | L | Ñ |'/RCtrl |
+|--------+------+------+------+------+------| LGUI | | RALT |------+------+------+------+------+--------|
+| {/LSft | Z | X | C | V | B | | | | N | M | , | . | - | }/RSft |
+'--------+------+------+------+------+-------------' '-------------+------+------+------+------+--------'
+ |[/LALT| HOME |PGDOWN| PGUP | END | | LEFT | DOWN | UP |RIGHT |]/LALT|
+ '----------------------------------' '----------------------------------'
+ ,-------------. ,-------------.
+ |F5/CAG| TRANS| | TRANS|F8/CAG|
+ ,------|------|------| |------+--------+------.
+ | | |F4/CA | |F11/CA| | |
+ | ENTER| TAB |------| |------| BSPC | SPACE|
+ | | | TRANS| |F12/SA| | |
+ '--------------------' '----------------------'
+ CAG = CTRL-ALT-GUI
+ CA = CTRL-ALT
+ SA = SHIFT-ALT
+
+</pre></code>
+
+
+## Generation of .hex file
+> [Download scripts from here](https://github.com/johgh/keyboard/tree/master/ergodox)
+
+> Execute install.sh and generate.sh scripts.
+
+> Flash with `teensy_loader` binary (should be installed from previous step)
diff --git a/keyboard/ergodox_ez/keymaps/dvorak_spanish/dvorak_spanish.hex b/keyboard/ergodox_ez/keymaps/dvorak_spanish/dvorak_spanish.hex
new file mode 100644
index 0000000000..9d41778092
--- /dev/null
+++ b/keyboard/ergodox_ez/keymaps/dvorak_spanish/dvorak_spanish.hex
@@ -0,0 +1,5371 @@
+
+
+
+
+<!DOCTYPE html>
+<html lang="en" class=" is-copy-enabled is-u2f-enabled">
+ <head prefix="og: http://ogp.me/ns# fb: http://ogp.me/ns/fb# object: http://ogp.me/ns/object# article: http://ogp.me/ns/article# profile: http://ogp.me/ns/profile#">
+ <meta charset='utf-8'>
+
+ <link crossorigin="anonymous" href="https://assets-cdn.github.com/assets/frameworks-3514e6d8825ab9f55728f0030acba498e5da5b85ebc8abc35f0f466ac9d2bdda.css" integrity="sha256-NRTm2IJaufVXKPADCsukmOXaW4XryKvDXw9GasnSvdo=" media="all" rel="stylesheet" />
+ <link crossorigin="anonymous" href="https://assets-cdn.github.com/assets/github-92b560dee7dafd08f0965a6d49e5e4298b3d856899681b308fd7809d9c35367b.css" integrity="sha256-krVg3ufa/QjwllptSeXkKYs9hWiZaBswj9eAnZw1Nns=" media="all" rel="stylesheet" />
+
+
+
+
+
+ <link as="script" href="https://assets-cdn.github.com/assets/frameworks-ea5bbb2a837377ffde53e1099e5909c8df4d36cc5e90c05aeb3694b157df7e4d.js" rel="preload" />
+
+ <link as="script" href="https://assets-cdn.github.com/assets/github-391829145dbc07158dde112aa636b7ac8b58f7726527ce710bd56118ae1d2f57.js" rel="preload" />
+
+ <meta http-equiv="X-UA-Compatible" content="IE=edge">
+ <meta http-equiv="Content-Language" content="en">
+ <meta name="viewport" content="width=device-width">
+
+
+ <title>keyboard/dvorak_spanish.hex at master · johgh/keyboard</title>
+ <link rel="search" type="application/opensearchdescription+xml" href="/opensearch.xml" title="GitHub">
+ <link rel="fluid-icon" href="https://github.com/fluidicon.png" title="GitHub">
+ <link rel="apple-touch-icon" href="/apple-touch-icon.png">
+ <link rel="apple-touch-icon" sizes="57x57" href="/apple-touch-icon-57x57.png">
+ <link rel="apple-touch-icon" sizes="60x60" href="/apple-touch-icon-60x60.png">
+ <link rel="apple-touch-icon" sizes="72x72" href="/apple-touch-icon-72x72.png">
+ <link rel="apple-touch-icon" sizes="76x76" href="/apple-touch-icon-76x76.png">
+ <link rel="apple-touch-icon" sizes="114x114" href="/apple-touch-icon-114x114.png">
+ <link rel="apple-touch-icon" sizes="120x120" href="/apple-touch-icon-120x120.png">
+ <link rel="apple-touch-icon" sizes="144x144" href="/apple-touch-icon-144x144.png">
+ <link rel="apple-touch-icon" sizes="152x152" href="/apple-touch-icon-152x152.png">
+ <link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon-180x180.png">
+ <meta property="fb:app_id" content="1401488693436528">
+
+ <meta content="https://avatars0.githubusercontent.com/u/8402706?v=3&amp;s=400" name="twitter:image:src" /><meta content="@github" name="twitter:site" /><meta content="summary" name="twitter:card" /><meta content="johgh/keyboard" name="twitter:title" /><meta content="My keyboard layouts" name="twitter:description" />
+ <meta content="https://avatars0.githubusercontent.com/u/8402706?v=3&amp;s=400" property="og:image" /><meta content="GitHub" property="og:site_name" /><meta content="object" property="og:type" /><meta content="johgh/keyboard" property="og:title" /><meta content="https://github.com/johgh/keyboard" property="og:url" /><meta content="My keyboard layouts" property="og:description" />
+ <meta name="browser-stats-url" content="https://api.github.com/_private/browser/stats">
+ <meta name="browser-errors-url" content="https://api.github.com/_private/browser/errors">
+ <link rel="assets" href="https://assets-cdn.github.com/">
+ <link rel="web-socket" href="wss://live.github.com/_sockets/ODQwMjcwNjplYzk1N2I2ZWI2ZmQ4NDkxYzYwOGYyNTI5NTU2ZGU4MDo5NzUzYjgxYzU5YjA2Y2E3NWRkMzFkYmU1NGVmNzVjNWZiNjhkOTc2ZDNmYmQ2MjA3YTEyNmUwZjJhMGJiYWM1--b3bf68e80e5b864f72da0ef5dee160dae6a5eb69">
+ <meta name="pjax-timeout" content="1000">
+ <link rel="sudo-modal" href="/sessions/sudo_modal">
+
+ <meta name="msapplication-TileImage" content="/windows-tile.png">
+ <meta name="msapplication-TileColor" content="#ffffff">
+ <meta name="selected-link" value="repo_source" data-pjax-transient>
+
+ <meta name="google-site-verification" content="KT5gs8h0wvaagLKAVWq8bbeNwnZZK1r1XQysX3xurLU">
+<meta name="google-site-verification" content="ZzhVyEFwb7w3e0-uOTltm8Jsck2F5StVihD0exw2fsA">
+ <meta name="google-analytics" content="UA-3769691-2">
+
+<meta content="collector.githubapp.com" name="octolytics-host" /><meta content="github" name="octolytics-app-id" /><meta content="2F3F4253:55E8:1DFD2F84:574C7A03" name="octolytics-dimension-request_id" /><meta content="8402706" name="octolytics-actor-id" /><meta content="johgh" name="octolytics-actor-login" /><meta content="c7f8908bf6490d3f8a93067aaad799b39f00fe93f431d2c8e1af7a284d27053c" name="octolytics-actor-hash" />
+<meta content="/&lt;user-name&gt;/&lt;repo-name&gt;/blob/show" data-pjax-transient="true" name="analytics-location" />
+
+
+
+ <meta class="js-ga-set" name="dimension1" content="Logged In">
+
+
+
+ <meta name="hostname" content="github.com">
+ <meta name="user-login" content="johgh">
+
+ <meta name="expected-hostname" content="github.com">
+ <meta name="js-proxy-site-detection-payload" content="NzY3MTQyZDM1NGNkODk4MGRiNjE4YmFjMjhlMTJiYzU2ODgzYThiYjE1ZWVlN2Q0NDcwZTg5MjQyNWVhZGRlM3x7InJlbW90ZV9hZGRyZXNzIjoiNDcuNjMuNjYuODMiLCJyZXF1ZXN0X2lkIjoiMkYzRjQyNTM6NTVFODoxREZEMkY4NDo1NzRDN0EwMyIsInRpbWVzdGFtcCI6MTQ2NDYyOTc3MH0=">
+
+
+ <link rel="mask-icon" href="https://assets-cdn.github.com/pinned-octocat.svg" color="#4078c0">
+ <link rel="icon" type="image/x-icon" href="https://assets-cdn.github.com/favicon.ico">
+
+ <meta name="html-safe-nonce" content="96bc37131ccc1986c2a0d20d90faf397412de2be">
+ <meta content="28f444bd9d5d742a073b405185ff204d5126d5a2" name="form-nonce" />
+
+ <meta http-equiv="x-pjax-version" content="e7cec84ad9772b41eb2a7820f7affce2">
+
+
+
+ <meta name="description" content="My keyboard layouts">
+ <meta name="go-import" content="github.com/johgh/keyboard git https://github.com/johgh/keyboard.git">
+
+ <meta content="8402706" name="octolytics-dimension-user_id" /><meta content="johgh" name="octolytics-dimension-user_login" /><meta content="58259078" name="octolytics-dimension-repository_id" /><meta content="johgh/keyboard" name="octolytics-dimension-repository_nwo" /><meta content="true" name="octolytics-dimension-repository_public" /><meta content="false" name="octolytics-dimension-repository_is_fork" /><meta content="58259078" name="octolytics-dimension-repository_network_root_id" /><meta content="johgh/keyboard" name="octolytics-dimension-repository_network_root_nwo" />
+ <link href="https://github.com/johgh/keyboard/commits/master.atom" rel="alternate" title="Recent Commits to keyboard:master" type="application/atom+xml">
+
+
+ <link rel="canonical" href="https://github.com/johgh/keyboard/blob/master/ergodox/dvorak_spanish/dvorak_spanish.hex" data-pjax-transient>
+ </head>
+
+
+ <body class="logged-in env-production linux vis-public page-blob">
+ <div id="js-pjax-loader-bar" class="pjax-loader-bar"></div>
+ <a href="#start-of-content" tabindex="1" class="accessibility-aid js-skip-to-content">Skip to content</a>
+
+
+
+
+
+
+
+ <div class="header header-logged-in true" role="banner">
+ <div class="container clearfix">
+
+ <a class="header-logo-invertocat" href="https://github.com/" data-hotkey="g d" aria-label="Homepage" data-ga-click="Header, go to dashboard, icon:logo">
+ <svg aria-hidden="true" class="octicon octicon-mark-github" height="28" version="1.1" viewBox="0 0 16 16" width="28"><path d="M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59 0.4 0.07 0.55-0.17 0.55-0.38 0-0.19-0.01-0.82-0.01-1.49-2.01 0.37-2.53-0.49-2.69-0.94-0.09-0.23-0.48-0.94-0.82-1.13-0.28-0.15-0.68-0.52-0.01-0.53 0.63-0.01 1.08 0.58 1.23 0.82 0.72 1.21 1.87 0.87 2.33 0.66 0.07-0.52 0.28-0.87 0.51-1.07-1.78-0.2-3.64-0.89-3.64-3.95 0-0.87 0.31-1.59 0.82-2.15-0.08-0.2-0.36-1.02 0.08-2.12 0 0 0.67-0.21 2.2 0.82 0.64-0.18 1.32-0.27 2-0.27 0.68 0 1.36 0.09 2 0.27 1.53-1.04 2.2-0.82 2.2-0.82 0.44 1.1 0.16 1.92 0.08 2.12 0.51 0.56 0.82 1.27 0.82 2.15 0 3.07-1.87 3.75-3.65 3.95 0.29 0.25 0.54 0.73 0.54 1.48 0 1.07-0.01 1.93-0.01 2.2 0 0.21 0.15 0.46 0.55 0.38C13.71 14.53 16 11.53 16 8 16 3.58 12.42 0 8 0z"></path></svg>
+</a>
+
+
+ <div class="header-search scoped-search site-scoped-search js-site-search" role="search">
+ <!-- </textarea> --><!-- '"` --><form accept-charset="UTF-8" action="/johgh/keyboard/search" class="js-site-search-form" data-scoped-search-url="/johgh/keyboard/search" data-unscoped-search-url="/search" method="get"><div style="margin:0;padding:0;display:inline"><input name="utf8" type="hidden" value="&#x2713;" /></div>
+ <label class="form-control header-search-wrapper js-chromeless-input-container">
+ <div class="header-search-scope">This repository</div>
+ <input type="text"
+ class="form-control header-search-input js-site-search-focus js-site-search-field is-clearable"
+ data-hotkey="s"
+ name="q"
+ placeholder="Search"
+ aria-label="Search this repository"
+ data-unscoped-placeholder="Search GitHub"
+ data-scoped-placeholder="Search"
+ tabindex="1"
+ autocapitalize="off">
+ </label>
+</form></div>
+
+
+ <ul class="header-nav left" role="navigation">
+ <li class="header-nav-item">
+ <a href="/pulls" class="js-selected-navigation-item header-nav-link" data-ga-click="Header, click, Nav menu - item:pulls context:user" data-hotkey="g p" data-selected-links="/pulls /pulls/assigned /pulls/mentioned /pulls">
+ Pull requests
+</a> </li>
+ <li class="header-nav-item">
+ <a href="/issues" class="js-selected-navigation-item header-nav-link" data-ga-click="Header, click, Nav menu - item:issues context:user" data-hotkey="g i" data-selected-links="/issues /issues/assigned /issues/mentioned /issues">
+ Issues
+</a> </li>
+ <li class="header-nav-item">
+ <a class="header-nav-link" href="https://gist.github.com/" data-ga-click="Header, go to gist, text:gist">Gist</a>
+ </li>
+ </ul>
+
+
+<ul class="header-nav user-nav right" id="user-links">
+ <li class="header-nav-item">
+
+ <a href="/notifications" aria-label="You have no unread notifications" class="header-nav-link notification-indicator tooltipped tooltipped-s js-socket-channel js-notification-indicator" data-channel="notification-changed-v2:8402706" data-ga-click="Header, go to notifications, icon:read" data-hotkey="g n">
+ <span class="mail-status "></span>
+ <svg aria-hidden="true" class="octicon octicon-bell" height="16" version="1.1" viewBox="0 0 14 16" width="14"><path d="M14 12v1H0v-1l0.73-0.58c0.77-0.77 0.81-2.55 1.19-4.42 0.77-3.77 4.08-5 4.08-5 0-0.55 0.45-1 1-1s1 0.45 1 1c0 0 3.39 1.23 4.16 5 0.38 1.88 0.42 3.66 1.19 4.42l0.66 0.58z m-7 4c1.11 0 2-0.89 2-2H5c0 1.11 0.89 2 2 2z"></path></svg>
+</a>
+ </li>
+
+ <li class="header-nav-item dropdown js-menu-container">
+ <a class="header-nav-link tooltipped tooltipped-s js-menu-target" href="/new"
+ aria-label="Create new…"
+ data-ga-click="Header, create new, icon:add">
+ <svg aria-hidden="true" class="octicon octicon-plus left" height="16" version="1.1" viewBox="0 0 12 16" width="12"><path d="M12 9H7v5H5V9H0V7h5V2h2v5h5v2z"></path></svg>
+ <span class="dropdown-caret"></span>
+ </a>
+
+ <div class="dropdown-menu-content js-menu-content">
+ <ul class="dropdown-menu dropdown-menu-sw">
+
+<a class="dropdown-item" href="/new" data-ga-click="Header, create new repository">
+ New repository
+</a>
+
+ <a class="dropdown-item" href="/new/import" data-ga-click="Header, import a repository">
+ Import repository
+ </a>
+
+
+ <a class="dropdown-item" href="/organizations/new" data-ga-click="Header, create new organization">
+ New organization
+ </a>
+
+
+
+ <div class="dropdown-divider"></div>
+ <div class="dropdown-header">
+ <span title="johgh/keyboard">This repository</span>
+ </div>
+ <a class="dropdown-item" href="/johgh/keyboard/issues/new" data-ga-click="Header, create new issue">
+ New issue
+ </a>
+ <a class="dropdown-item" href="/johgh/keyboard/settings/collaboration" data-ga-click="Header, create new collaborator">
+ New collaborator
+ </a>
+
+ </ul>
+ </div>
+ </li>
+
+ <li class="header-nav-item dropdown js-menu-container">
+ <a class="header-nav-link name tooltipped tooltipped-sw js-menu-target" href="/johgh"
+ aria-label="View profile and more"
+ data-ga-click="Header, show menu, icon:avatar">
+ <img alt="@johgh" class="avatar" height="20" src="https://avatars0.githubusercontent.com/u/8402706?v=3&amp;s=40" width="20" />
+ <span class="dropdown-caret"></span>
+ </a>
+
+ <div class="dropdown-menu-content js-menu-content">
+ <div class="dropdown-menu dropdown-menu-sw">
+ <div class=" dropdown-header header-nav-current-user css-truncate">
+ Signed in as <strong class="css-truncate-target">johgh</strong>
+
+ </div>
+
+
+ <div class="dropdown-divider"></div>
+
+ <a class="dropdown-item" href="/johgh" data-ga-click="Header, go to profile, text:your profile">
+ Your profile
+ </a>
+ <a class="dropdown-item" href="/stars" data-ga-click="Header, go to starred repos, text:your stars">
+ Your stars
+ </a>
+ <a class="dropdown-item" href="/explore" data-ga-click="Header, go to explore, text:explore">
+ Explore
+ </a>
+ <a class="dropdown-item" href="/integrations" data-ga-click="Header, go to integrations, text:integrations">
+ Integrations
+ </a>
+ <a class="dropdown-item" href="https://help.github.com" data-ga-click="Header, go to help, text:help">
+ Help
+ </a>
+
+
+ <div class="dropdown-divider"></div>
+
+ <a class="dropdown-item" href="/settings/profile" data-ga-click="Header, go to settings, icon:settings">
+ Settings
+ </a>
+
+ <!-- </textarea> --><!-- '"` --><form accept-charset="UTF-8" action="/logout" class="logout-form" data-form-nonce="28f444bd9d5d742a073b405185ff204d5126d5a2" method="post"><div style="margin:0;padding:0;display:inline"><input name="utf8" type="hidden" value="&#x2713;" /><input name="authenticity_token" type="hidden" value="+XodOWOKV2qhNVaih0sfooP0Lk1Hb8ZAjBSaV905IlPw0ey4dZ5MbzXx+FxqBR0EBSVq6fDwao88f69abdVTfQ==" /></div>
+ <button class="dropdown-item dropdown-signout" data-ga-click="Header, sign out, icon:logout">
+ Sign out
+ </button>
+</form>
+ </div>
+ </div>
+ </li>
+</ul>
+
+
+
+ </div>
+</div>
+
+
+
+
+
+ <div id="start-of-content" class="accessibility-aid"></div>
+
+ <div id="js-flash-container">
+</div>
+
+
+ <div role="main" class="main-content">
+ <div itemscope itemtype="http://schema.org/SoftwareSourceCode">
+ <div id="js-repo-pjax-container" data-pjax-container>
+
+<div class="pagehead repohead instapaper_ignore readability-menu experiment-repo-nav">
+ <div class="container repohead-details-container">
+
+
+
+<ul class="pagehead-actions">
+
+ <li>
+ <!-- </textarea> --><!-- '"` --><form accept-charset="UTF-8" action="/notifications/subscribe" class="js-social-container" data-autosubmit="true" data-form-nonce="28f444bd9d5d742a073b405185ff204d5126d5a2" data-remote="true" method="post"><div style="margin:0;padding:0;display:inline"><input name="utf8" type="hidden" value="&#x2713;" /><input name="authenticity_token" type="hidden" value="f797ztd5TsuzQ5g9R6knDUTPO2IVEFpEIeU+5aa6U2NuHB5HDPxoXez+Ele95bMWYaRLcKkoQK+H44xomAgfJA==" /></div> <input class="form-control" id="repository_id" name="repository_id" type="hidden" value="58259078" />
+
+ <div class="select-menu js-menu-container js-select-menu">
+ <a href="/johgh/keyboard/subscription"
+ class="btn btn-sm btn-with-count select-menu-button js-menu-target" role="button" tabindex="0" aria-haspopup="true"
+ data-ga-click="Repository, click Watch settings, action:blob#show">
+ <span class="js-select-button">
+ <svg aria-hidden="true" class="octicon octicon-eye" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path d="M8.06 2C3 2 0 8 0 8s3 6 8.06 6c4.94 0 7.94-6 7.94-6S13 2 8.06 2z m-0.06 10c-2.2 0-4-1.78-4-4 0-2.2 1.8-4 4-4 2.22 0 4 1.8 4 4 0 2.22-1.78 4-4 4z m2-4c0 1.11-0.89 2-2 2s-2-0.89-2-2 0.89-2 2-2 2 0.89 2 2z"></path></svg>
+ Unwatch
+ </span>
+ </a>
+ <a class="social-count js-social-count" href="/johgh/keyboard/watchers">
+ 1
+ </a>
+
+ <div class="select-menu-modal-holder">
+ <div class="select-menu-modal subscription-menu-modal js-menu-content" aria-hidden="true">
+ <div class="select-menu-header js-navigation-enable" tabindex="-1">
+ <svg aria-label="Close" class="octicon octicon-x js-menu-close" height="16" role="img" version="1.1" viewBox="0 0 12 16" width="12"><path d="M7.48 8l3.75 3.75-1.48 1.48-3.75-3.75-3.75 3.75-1.48-1.48 3.75-3.75L0.77 4.25l1.48-1.48 3.75 3.75 3.75-3.75 1.48 1.48-3.75 3.75z"></path></svg>
+ <span class="select-menu-title">Notifications</span>
+ </div>
+
+ <div class="select-menu-list js-navigation-container" role="menu">
+
+ <div class="select-menu-item js-navigation-item " role="menuitem" tabindex="0">
+ <svg aria-hidden="true" class="octicon octicon-check select-menu-item-icon" height="16" version="1.1" viewBox="0 0 12 16" width="12"><path d="M12 5L4 13 0 9l1.5-1.5 2.5 2.5 6.5-6.5 1.5 1.5z"></path></svg>
+ <div class="select-menu-item-text">
+ <input id="do_included" name="do" type="radio" value="included" />
+ <span class="select-menu-item-heading">Not watching</span>
+ <span class="description">Be notified when participating or @mentioned.</span>
+ <span class="js-select-button-text hidden-select-button-text">
+ <svg aria-hidden="true" class="octicon octicon-eye" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path d="M8.06 2C3 2 0 8 0 8s3 6 8.06 6c4.94 0 7.94-6 7.94-6S13 2 8.06 2z m-0.06 10c-2.2 0-4-1.78-4-4 0-2.2 1.8-4 4-4 2.22 0 4 1.8 4 4 0 2.22-1.78 4-4 4z m2-4c0 1.11-0.89 2-2 2s-2-0.89-2-2 0.89-2 2-2 2 0.89 2 2z"></path></svg>
+ Watch
+ </span>
+ </div>
+ </div>
+
+ <div class="select-menu-item js-navigation-item selected" role="menuitem" tabindex="0">
+ <svg aria-hidden="true" class="octicon octicon-check select-menu-item-icon" height="16" version="1.1" viewBox="0 0 12 16" width="12"><path d="M12 5L4 13 0 9l1.5-1.5 2.5 2.5 6.5-6.5 1.5 1.5z"></path></svg>
+ <div class="select-menu-item-text">
+ <input checked="checked" id="do_subscribed" name="do" type="radio" value="subscribed" />
+ <span class="select-menu-item-heading">Watching</span>
+ <span class="description">Be notified of all conversations.</span>
+ <span class="js-select-button-text hidden-select-button-text">
+ <svg aria-hidden="true" class="octicon octicon-eye" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path d="M8.06 2C3 2 0 8 0 8s3 6 8.06 6c4.94 0 7.94-6 7.94-6S13 2 8.06 2z m-0.06 10c-2.2 0-4-1.78-4-4 0-2.2 1.8-4 4-4 2.22 0 4 1.8 4 4 0 2.22-1.78 4-4 4z m2-4c0 1.11-0.89 2-2 2s-2-0.89-2-2 0.89-2 2-2 2 0.89 2 2z"></path></svg>
+ Unwatch
+ </span>
+ </div>
+ </div>
+
+ <div class="select-menu-item js-navigation-item " role="menuitem" tabindex="0">
+ <svg aria-hidden="true" class="octicon octicon-check select-menu-item-icon" height="16" version="1.1" viewBox="0 0 12 16" width="12"><path d="M12 5L4 13 0 9l1.5-1.5 2.5 2.5 6.5-6.5 1.5 1.5z"></path></svg>
+ <div class="select-menu-item-text">
+ <input id="do_ignore" name="do" type="radio" value="ignore" />
+ <span class="select-menu-item-heading">Ignoring</span>
+ <span class="description">Never be notified.</span>
+ <span class="js-select-button-text hidden-select-button-text">
+ <svg aria-hidden="true" class="octicon octicon-mute" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path d="M8 2.81v10.38c0 0.67-0.81 1-1.28 0.53L3 10H1c-0.55 0-1-0.45-1-1V7c0-0.55 0.45-1 1-1h2l3.72-3.72c0.47-0.47 1.28-0.14 1.28 0.53z m7.53 3.22l-1.06-1.06-1.97 1.97-1.97-1.97-1.06 1.06 1.97 1.97-1.97 1.97 1.06 1.06 1.97-1.97 1.97 1.97 1.06-1.06-1.97-1.97 1.97-1.97z"></path></svg>
+ Stop ignoring
+ </span>
+ </div>
+ </div>
+
+ </div>
+
+ </div>
+ </div>
+ </div>
+</form>
+ </li>
+
+ <li>
+
+ <div class="js-toggler-container js-social-container starring-container ">
+
+ <!-- </textarea> --><!-- '"` --><form accept-charset="UTF-8" action="/johgh/keyboard/unstar" class="starred" data-form-nonce="28f444bd9d5d742a073b405185ff204d5126d5a2" data-remote="true" method="post"><div style="margin:0;padding:0;display:inline"><input name="utf8" type="hidden" value="&#x2713;" /><input name="authenticity_token" type="hidden" value="9A6+ZzRASK6KFvr/l3mD5fdqF6wAutGyXcHd/9130Jyt/nJTM2+0QZbzPe1wh8z3boeD9BwofxkUcUFuamo4Vg==" /></div>
+ <button
+ class="btn btn-sm btn-with-count js-toggler-target"
+ aria-label="Unstar this repository" title="Unstar johgh/keyboard"
+ data-ga-click="Repository, click unstar button, action:blob#show; text:Unstar">
+ <svg aria-hidden="true" class="octicon octicon-star" height="16" version="1.1" viewBox="0 0 14 16" width="14"><path d="M14 6l-4.9-0.64L7 1 4.9 5.36 0 6l3.6 3.26L2.67 14l4.33-2.33 4.33 2.33L10.4 9.26 14 6z"></path></svg>
+ Unstar
+ </button>
+ <a class="social-count js-social-count" href="/johgh/keyboard/stargazers">
+ 0
+ </a>
+</form>
+ <!-- </textarea> --><!-- '"` --><form accept-charset="UTF-8" action="/johgh/keyboard/star" class="unstarred" data-form-nonce="28f444bd9d5d742a073b405185ff204d5126d5a2" data-remote="true" method="post"><div style="margin:0;padding:0;display:inline"><input name="utf8" type="hidden" value="&#x2713;" /><input name="authenticity_token" type="hidden" value="CAPVEEQSSx3LaHYWOp68GDX/WuflV61vhOh8IuCmd964inwPxiXoLYYiUTnlqzXaEt30NeCFUneoxaosn8Etgw==" /></div>
+ <button
+ class="btn btn-sm btn-with-count js-toggler-target"
+ aria-label="Star this repository" title="Star johgh/keyboard"
+ data-ga-click="Repository, click star button, action:blob#show; text:Star">
+ <svg aria-hidden="true" class="octicon octicon-star" height="16" version="1.1" viewBox="0 0 14 16" width="14"><path d="M14 6l-4.9-0.64L7 1 4.9 5.36 0 6l3.6 3.26L2.67 14l4.33-2.33 4.33 2.33L10.4 9.26 14 6z"></path></svg>
+ Star
+ </button>
+ <a class="social-count js-social-count" href="/johgh/keyboard/stargazers">
+ 0
+ </a>
+</form> </div>
+
+ </li>
+
+ <li>
+ <!-- </textarea> --><!-- '"` --><form accept-charset="UTF-8" action="/johgh/keyboard/fork" class="btn-with-count" data-form-nonce="28f444bd9d5d742a073b405185ff204d5126d5a2" method="post"><div style="margin:0;padding:0;display:inline"><input name="utf8" type="hidden" value="&#x2713;" /><input name="authenticity_token" type="hidden" value="TkLrGh7KM4+GzHjrSCT3n2kES2RQWpBwpod3gLNn1itfZMlNQss5N6fBtlSb7wTp6cdW2i9jN0j7FSK5k3ClmQ==" /></div>
+ <button
+ type="submit"
+ class="btn btn-sm btn-with-count"
+ data-ga-click="Repository, show fork modal, action:blob#show; text:Fork"
+ title="Fork your own copy of johgh/keyboard to your account"
+ aria-label="Fork your own copy of johgh/keyboard to your account">
+ <svg aria-hidden="true" class="octicon octicon-repo-forked" height="16" version="1.1" viewBox="0 0 10 16" width="10"><path d="M8 1c-1.11 0-2 0.89-2 2 0 0.73 0.41 1.38 1 1.72v1.28L5 8 3 6v-1.28c0.59-0.34 1-0.98 1-1.72 0-1.11-0.89-2-2-2S0 1.89 0 3c0 0.73 0.41 1.38 1 1.72v1.78l3 3v1.78c-0.59 0.34-1 0.98-1 1.72 0 1.11 0.89 2 2 2s2-0.89 2-2c0-0.73-0.41-1.38-1-1.72V9.5l3-3V4.72c0.59-0.34 1-0.98 1-1.72 0-1.11-0.89-2-2-2zM2 4.2c-0.66 0-1.2-0.55-1.2-1.2s0.55-1.2 1.2-1.2 1.2 0.55 1.2 1.2-0.55 1.2-1.2 1.2z m3 10c-0.66 0-1.2-0.55-1.2-1.2s0.55-1.2 1.2-1.2 1.2 0.55 1.2 1.2-0.55 1.2-1.2 1.2z m3-10c-0.66 0-1.2-0.55-1.2-1.2s0.55-1.2 1.2-1.2 1.2 0.55 1.2 1.2-0.55 1.2-1.2 1.2z"></path></svg>
+ Fork
+ </button>
+</form>
+ <a href="/johgh/keyboard/network" class="social-count">
+ 0
+ </a>
+ </li>
+</ul>
+
+ <h1 class="entry-title public ">
+ <svg aria-hidden="true" class="octicon octicon-repo" height="16" version="1.1" viewBox="0 0 12 16" width="12"><path d="M4 9h-1v-1h1v1z m0-3h-1v1h1v-1z m0-2h-1v1h1v-1z m0-2h-1v1h1v-1z m8-1v12c0 0.55-0.45 1-1 1H6v2l-1.5-1.5-1.5 1.5V14H1c-0.55 0-1-0.45-1-1V1C0 0.45 0.45 0 1 0h10c0.55 0 1 0.45 1 1z m-1 10H1v2h2v-1h3v1h5V11z m0-10H2v9h9V1z"></path></svg>
+ <span class="author" itemprop="author"><a href="/johgh" class="url fn" rel="author">johgh</a></span><!--
+--><span class="path-divider">/</span><!--
+--><strong itemprop="name"><a href="/johgh/keyboard" data-pjax="#js-repo-pjax-container">keyboard</a></strong>
+
+</h1>
+
+ </div>
+ <div class="container">
+
+<nav class="reponav js-repo-nav js-sidenav-container-pjax"
+ itemscope
+ itemtype="http://schema.org/BreadcrumbList"
+ role="navigation"
+ data-pjax="#js-repo-pjax-container">
+
+ <span itemscope itemtype="http://schema.org/ListItem" itemprop="itemListElement">
+ <a href="/johgh/keyboard" aria-selected="true" class="js-selected-navigation-item selected reponav-item" data-hotkey="g c" data-selected-links="repo_source repo_downloads repo_commits repo_releases repo_tags repo_branches /johgh/keyboard" itemprop="url">
+ <svg aria-hidden="true" class="octicon octicon-code" height="16" version="1.1" viewBox="0 0 14 16" width="14"><path d="M9.5 3l-1.5 1.5 3.5 3.5L8 11.5l1.5 1.5 4.5-5L9.5 3zM4.5 3L0 8l4.5 5 1.5-1.5L2.5 8l3.5-3.5L4.5 3z"></path></svg>
+ <span itemprop="name">Code</span>
+ <meta itemprop="position" content="1">
+</a> </span>
+
+ <span itemscope itemtype="http://schema.org/ListItem" itemprop="itemListElement">
+ <a href="/johgh/keyboard/issues" class="js-selected-navigation-item reponav-item" data-hotkey="g i" data-selected-links="repo_issues repo_labels repo_milestones /johgh/keyboard/issues" itemprop="url">
+ <svg aria-hidden="true" class="octicon octicon-issue-opened" height="16" version="1.1" viewBox="0 0 14 16" width="14"><path d="M7 2.3c3.14 0 5.7 2.56 5.7 5.7S10.14 13.7 7 13.7 1.3 11.14 1.3 8s2.56-5.7 5.7-5.7m0-1.3C3.14 1 0 4.14 0 8s3.14 7 7 7 7-3.14 7-7S10.86 1 7 1z m1 3H6v5h2V4z m0 6H6v2h2V10z"></path></svg>
+ <span itemprop="name">Issues</span>
+ <span class="counter">0</span>
+ <meta itemprop="position" content="2">
+</a> </span>
+
+ <span itemscope itemtype="http://schema.org/ListItem" itemprop="itemListElement">
+ <a href="/johgh/keyboard/pulls" class="js-selected-navigation-item reponav-item" data-hotkey="g p" data-selected-links="repo_pulls /johgh/keyboard/pulls" itemprop="url">
+ <svg aria-hidden="true" class="octicon octicon-git-pull-request" height="16" version="1.1" viewBox="0 0 12 16" width="12"><path d="M11 11.28c0-1.73 0-6.28 0-6.28-0.03-0.78-0.34-1.47-0.94-2.06s-1.28-0.91-2.06-0.94c0 0-1.02 0-1 0V0L4 3l3 3V4h1c0.27 0.02 0.48 0.11 0.69 0.31s0.3 0.42 0.31 0.69v6.28c-0.59 0.34-1 0.98-1 1.72 0 1.11 0.89 2 2 2s2-0.89 2-2c0-0.73-0.41-1.38-1-1.72z m-1 2.92c-0.66 0-1.2-0.55-1.2-1.2s0.55-1.2 1.2-1.2 1.2 0.55 1.2 1.2-0.55 1.2-1.2 1.2zM4 3c0-1.11-0.89-2-2-2S0 1.89 0 3c0 0.73 0.41 1.38 1 1.72 0 1.55 0 5.56 0 6.56-0.59 0.34-1 0.98-1 1.72 0 1.11 0.89 2 2 2s2-0.89 2-2c0-0.73-0.41-1.38-1-1.72V4.72c0.59-0.34 1-0.98 1-1.72z m-0.8 10c0 0.66-0.55 1.2-1.2 1.2s-1.2-0.55-1.2-1.2 0.55-1.2 1.2-1.2 1.2 0.55 1.2 1.2z m-1.2-8.8c-0.66 0-1.2-0.55-1.2-1.2s0.55-1.2 1.2-1.2 1.2 0.55 1.2 1.2-0.55 1.2-1.2 1.2z"></path></svg>
+ <span itemprop="name">Pull requests</span>
+ <span class="counter">0</span>
+ <meta itemprop="position" content="3">
+</a> </span>
+
+ <a href="/johgh/keyboard/wiki" class="js-selected-navigation-item reponav-item" data-hotkey="g w" data-selected-links="repo_wiki /johgh/keyboard/wiki">
+ <svg aria-hidden="true" class="octicon octicon-book" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path d="M2 5h4v1H2v-1z m0 3h4v-1H2v1z m0 2h4v-1H2v1z m11-5H9v1h4v-1z m0 2H9v1h4v-1z m0 2H9v1h4v-1z m2-6v9c0 0.55-0.45 1-1 1H8.5l-1 1-1-1H1c-0.55 0-1-0.45-1-1V3c0-0.55 0.45-1 1-1h5.5l1 1 1-1h5.5c0.55 0 1 0.45 1 1z m-8 0.5l-0.5-0.5H1v9h6V3.5z m7-0.5H8.5l-0.5 0.5v8.5h6V3z"></path></svg>
+ Wiki
+</a>
+
+ <a href="/johgh/keyboard/pulse" class="js-selected-navigation-item reponav-item" data-selected-links="pulse /johgh/keyboard/pulse">
+ <svg aria-hidden="true" class="octicon octicon-pulse" height="16" version="1.1" viewBox="0 0 14 16" width="14"><path d="M11.5 8L8.8 5.4 6.6 8.5 5.5 1.6 2.38 8H0V10h3.6L4.5 8.2l0.9 5.4L9 8.5l1.6 1.5H14V8H11.5z"></path></svg>
+ Pulse
+</a>
+ <a href="/johgh/keyboard/graphs" class="js-selected-navigation-item reponav-item" data-selected-links="repo_graphs repo_contributors /johgh/keyboard/graphs">
+ <svg aria-hidden="true" class="octicon octicon-graph" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path d="M16 14v1H0V0h1v14h15z m-11-1H3V8h2v5z m4 0H7V3h2v10z m4 0H11V6h2v7z"></path></svg>
+ Graphs
+</a>
+ <a href="/johgh/keyboard/settings" class="js-selected-navigation-item reponav-item" data-selected-links="repo_settings repo_branch_settings hooks /johgh/keyboard/settings">
+ <svg aria-hidden="true" class="octicon octicon-gear" height="16" version="1.1" viewBox="0 0 14 16" width="14"><path d="M14 8.77V7.17l-1.94-0.64-0.45-1.09 0.88-1.84-1.13-1.13-1.81 0.91-1.09-0.45-0.69-1.92H6.17l-0.63 1.94-1.11 0.45-1.84-0.88-1.13 1.13 0.91 1.81-0.45 1.09L0 7.23v1.59l1.94 0.64 0.45 1.09-0.88 1.84 1.13 1.13 1.81-0.91 1.09 0.45 0.69 1.92h1.59l0.63-1.94 1.11-0.45 1.84 0.88 1.13-1.13-0.92-1.81 0.47-1.09 1.92-0.69zM7 11c-1.66 0-3-1.34-3-3s1.34-3 3-3 3 1.34 3 3-1.34 3-3 3z"></path></svg>
+ Settings
+</a>
+</nav>
+
+ </div>
+</div>
+
+<div class="container new-discussion-timeline experiment-repo-nav">
+ <div class="repository-content">
+
+
+
+<a href="/johgh/keyboard/blob/ab4c46c678233f6082bb057e59bd1facade3e5a3/ergodox/dvorak_spanish/dvorak_spanish.hex" class="hidden js-permalink-shortcut" data-hotkey="y">Permalink</a>
+
+<!-- blob contrib key: blob_contributors:v21:3c9a595e7cf64fe08b296fdf57e4ba32 -->
+
+<div class="file-navigation js-zeroclipboard-container">
+
+<div class="select-menu branch-select-menu js-menu-container js-select-menu left">
+ <button class="btn btn-sm select-menu-button js-menu-target css-truncate" data-hotkey="w"
+ title="master"
+ type="button" aria-label="Switch branches or tags" tabindex="0" aria-haspopup="true">
+ <i>Branch:</i>
+ <span class="js-select-button css-truncate-target">master</span>
+ </button>
+
+ <div class="select-menu-modal-holder js-menu-content js-navigation-container" data-pjax aria-hidden="true">
+
+ <div class="select-menu-modal">
+ <div class="select-menu-header">
+ <svg aria-label="Close" class="octicon octicon-x js-menu-close" height="16" role="img" version="1.1" viewBox="0 0 12 16" width="12"><path d="M7.48 8l3.75 3.75-1.48 1.48-3.75-3.75-3.75 3.75-1.48-1.48 3.75-3.75L0.77 4.25l1.48-1.48 3.75 3.75 3.75-3.75 1.48 1.48-3.75 3.75z"></path></svg>
+ <span class="select-menu-title">Switch branches/tags</span>
+ </div>
+
+ <div class="select-menu-filters">
+ <div class="select-menu-text-filter">
+ <input type="text" aria-label="Find or create a branch…" id="context-commitish-filter-field" class="form-control js-filterable-field js-navigation-enable" placeholder="Find or create a branch…">
+ </div>
+ <div class="select-menu-tabs">
+ <ul>
+ <li class="select-menu-tab">
+ <a href="#" data-tab-filter="branches" data-filter-placeholder="Find or create a branch…" class="js-select-menu-tab" role="tab">Branches</a>
+ </li>
+ <li class="select-menu-tab">
+ <a href="#" data-tab-filter="tags" data-filter-placeholder="Find a tag…" class="js-select-menu-tab" role="tab">Tags</a>
+ </li>
+ </ul>
+ </div>
+ </div>
+
+ <div class="select-menu-list select-menu-tab-bucket js-select-menu-tab-bucket" data-tab-filter="branches" role="menu">
+
+ <div data-filterable-for="context-commitish-filter-field" data-filterable-type="substring">
+
+
+ <a class="select-menu-item js-navigation-item js-navigation-open selected"
+ href="/johgh/keyboard/blob/master/ergodox/dvorak_spanish/dvorak_spanish.hex"
+ data-name="master"
+ data-skip-pjax="true"
+ rel="nofollow">
+ <svg aria-hidden="true" class="octicon octicon-check select-menu-item-icon" height="16" version="1.1" viewBox="0 0 12 16" width="12"><path d="M12 5L4 13 0 9l1.5-1.5 2.5 2.5 6.5-6.5 1.5 1.5z"></path></svg>
+ <span class="select-menu-item-text css-truncate-target js-select-menu-filter-text" title="master">
+ master
+ </span>
+ </a>
+ </div>
+
+ <!-- </textarea> --><!-- '"` --><form accept-charset="UTF-8" action="/johgh/keyboard/branches" class="js-create-branch select-menu-item select-menu-new-item-form js-navigation-item js-new-item-form" data-form-nonce="28f444bd9d5d742a073b405185ff204d5126d5a2" method="post"><div style="margin:0;padding:0;display:inline"><input name="utf8" type="hidden" value="&#x2713;" /><input name="authenticity_token" type="hidden" value="eqr2+jkq/i0OVGOdWjBeradS5NuV5Awtfm3VeKOA1dzLRV3xH1xNXVEbNlekX7TJtQx/gDTpucEMsJBUR96nIA==" /></div>
+ <svg aria-hidden="true" class="octicon octicon-git-branch select-menu-item-icon" height="16" version="1.1" viewBox="0 0 10 16" width="10"><path d="M10 5c0-1.11-0.89-2-2-2s-2 0.89-2 2c0 0.73 0.41 1.38 1 1.72v0.3c-0.02 0.52-0.23 0.98-0.63 1.38s-0.86 0.61-1.38 0.63c-0.83 0.02-1.48 0.16-2 0.45V4.72c0.59-0.34 1-0.98 1-1.72 0-1.11-0.89-2-2-2S0 1.89 0 3c0 0.73 0.41 1.38 1 1.72v6.56C0.41 11.63 0 12.27 0 13c0 1.11 0.89 2 2 2s2-0.89 2-2c0-0.53-0.2-1-0.53-1.36 0.09-0.06 0.48-0.41 0.59-0.47 0.25-0.11 0.56-0.17 0.94-0.17 1.05-0.05 1.95-0.45 2.75-1.25s1.2-1.98 1.25-3.02h-0.02c0.61-0.36 1.02-1 1.02-1.73zM2 1.8c0.66 0 1.2 0.55 1.2 1.2s-0.55 1.2-1.2 1.2-1.2-0.55-1.2-1.2 0.55-1.2 1.2-1.2z m0 12.41c-0.66 0-1.2-0.55-1.2-1.2s0.55-1.2 1.2-1.2 1.2 0.55 1.2 1.2-0.55 1.2-1.2 1.2z m6-8c-0.66 0-1.2-0.55-1.2-1.2s0.55-1.2 1.2-1.2 1.2 0.55 1.2 1.2-0.55 1.2-1.2 1.2z"></path></svg>
+ <div class="select-menu-item-text">
+ <span class="select-menu-item-heading">Create branch: <span class="js-new-item-name"></span></span>
+ <span class="description">from ‘master’</span>
+ </div>
+ <input type="hidden" name="name" id="name" class="js-new-item-value">
+ <input type="hidden" name="branch" id="branch" value="master">
+ <input type="hidden" name="path" id="path" value="ergodox/dvorak_spanish/dvorak_spanish.hex">
+</form>
+ </div>
+
+ <div class="select-menu-list select-menu-tab-bucket js-select-menu-tab-bucket" data-tab-filter="tags">
+ <div data-filterable-for="context-commitish-filter-field" data-filterable-type="substring">
+
+
+ </div>
+
+ <div class="select-menu-no-results">Nothing to show</div>
+ </div>
+
+ </div>
+ </div>
+</div>
+
+ <div class="btn-group right">
+ <a href="/johgh/keyboard/find/master"
+ class="js-pjax-capture-input btn btn-sm"
+ data-pjax
+ data-hotkey="t">
+ Find file
+ </a>
+ <button aria-label="Copy file path to clipboard" class="js-zeroclipboard btn btn-sm zeroclipboard-button tooltipped tooltipped-s" data-copied-hint="Copied!" type="button">Copy path</button>
+ </div>
+ <div class="breadcrumb js-zeroclipboard-target">
+ <span class="repo-root js-repo-root"><span class="js-path-segment"><a href="/johgh/keyboard"><span>keyboard</span></a></span></span><span class="separator">/</span><span class="js-path-segment"><a href="/johgh/keyboard/tree/master/ergodox"><span>ergodox</span></a></span><span class="separator">/</span><span class="js-path-segment"><a href="/johgh/keyboard/tree/master/ergodox/dvorak_spanish"><span>dvorak_spanish</span></a></span><span class="separator">/</span><strong class="final-path">dvorak_spanish.hex</strong>
+ </div>
+</div>
+
+<include-fragment class="commit-tease" src="/johgh/keyboard/contributors/master/ergodox/dvorak_spanish/dvorak_spanish.hex">
+ <div>
+ Fetching contributors&hellip;
+ </div>
+
+ <div class="commit-tease-contributors">
+ <img alt="" class="loader-loading left" height="16" src="https://assets-cdn.github.com/images/spinners/octocat-spinner-32-EAF2F5.gif" width="16" />
+ <span class="loader-error">Cannot retrieve contributors at this time</span>
+ </div>
+</include-fragment>
+<div class="file">
+ <div class="file-header">
+ <div class="file-actions">
+
+ <div class="btn-group">
+ <a href="/johgh/keyboard/raw/master/ergodox/dvorak_spanish/dvorak_spanish.hex" class="btn btn-sm " id="raw-url">Raw</a>
+ <a href="/johgh/keyboard/blame/master/ergodox/dvorak_spanish/dvorak_spanish.hex" class="btn btn-sm js-update-url-with-hash">Blame</a>
+ <a href="/johgh/keyboard/commits/master/ergodox/dvorak_spanish/dvorak_spanish.hex" class="btn btn-sm " rel="nofollow">History</a>
+ </div>
+
+
+ <!-- </textarea> --><!-- '"` --><form accept-charset="UTF-8" action="/johgh/keyboard/edit/master/ergodox/dvorak_spanish/dvorak_spanish.hex" class="inline-form js-update-url-with-hash" data-form-nonce="28f444bd9d5d742a073b405185ff204d5126d5a2" method="post"><div style="margin:0;padding:0;display:inline"><input name="utf8" type="hidden" value="&#x2713;" /><input name="authenticity_token" type="hidden" value="mBXUFIbsdwQ12m5mU+yedoFFa8YgpdxmzXk1dlfq1kh0C66VRpqfqiN2C7erMu+s584jhyOYVPRmEEJ8ZlRmjw==" /></div>
+ <button class="btn-octicon tooltipped tooltipped-nw" type="submit"
+ aria-label="Edit this file" data-hotkey="e" data-disable-with>
+ <svg aria-hidden="true" class="octicon octicon-pencil" height="16" version="1.1" viewBox="0 0 14 16" width="14"><path d="M0 12v3h3l8-8-3-3L0 12z m3 2H1V12h1v1h1v1z m10.3-9.3l-1.3 1.3-3-3 1.3-1.3c0.39-0.39 1.02-0.39 1.41 0l1.59 1.59c0.39 0.39 0.39 1.02 0 1.41z"></path></svg>
+ </button>
+</form> <!-- </textarea> --><!-- '"` --><form accept-charset="UTF-8" action="/johgh/keyboard/delete/master/ergodox/dvorak_spanish/dvorak_spanish.hex" class="inline-form" data-form-nonce="28f444bd9d5d742a073b405185ff204d5126d5a2" method="post"><div style="margin:0;padding:0;display:inline"><input name="utf8" type="hidden" value="&#x2713;" /><input name="authenticity_token" type="hidden" value="EK6jR4ODlaPp5/jn2atxuOqb22Or3H/UxxumUc4sjbGX1M3680KVs3VMgkwrfWaeZk9Qhd9vqD3sI7bJpiKXIw==" /></div>
+ <button class="btn-octicon btn-octicon-danger tooltipped tooltipped-nw" type="submit"
+ aria-label="Delete this file" data-disable-with>
+ <svg aria-hidden="true" class="octicon octicon-trashcan" height="16" version="1.1" viewBox="0 0 12 16" width="12"><path d="M10 2H8c0-0.55-0.45-1-1-1H4c-0.55 0-1 0.45-1 1H1c-0.55 0-1 0.45-1 1v1c0 0.55 0.45 1 1 1v9c0 0.55 0.45 1 1 1h7c0.55 0 1-0.45 1-1V5c0.55 0 1-0.45 1-1v-1c0-0.55-0.45-1-1-1z m-1 12H2V5h1v8h1V5h1v8h1V5h1v8h1V5h1v9z m1-10H1v-1h9v1z"></path></svg>
+ </button>
+</form> </div>
+
+ <div class="file-info">
+ 1172 lines (1171 sloc)
+ <span class="file-info-divider"></span>
+ 51.4 KB
+ </div>
+</div>
+
+
+
+ <div itemprop="text" class="blob-wrapper data type-text">
+ <table class="highlight tab-size js-file-line-container" data-tab-size="8">
+ <tr>
+ <td id="L1" class="blob-num js-line-number" data-line-number="1"></td>
+ <td id="LC1" class="blob-code blob-code-inner js-file-line">:100000000C9465020C94AC020C94AC020C94AC02FF </td>
+ </tr>
+ <tr>
+ <td id="L2" class="blob-num js-line-number" data-line-number="2"></td>
+ <td id="LC2" class="blob-code blob-code-inner js-file-line">:100010000C94AC020C94AC020C94AC020C94AC02A8 </td>
+ </tr>
+ <tr>
+ <td id="L3" class="blob-num js-line-number" data-line-number="3"></td>
+ <td id="LC3" class="blob-code blob-code-inner js-file-line">:100020000C94AC020C94AC020C94FC0C0C94CE0D11 </td>
+ </tr>
+ <tr>
+ <td id="L4" class="blob-num js-line-number" data-line-number="4"></td>
+ <td id="LC4" class="blob-code blob-code-inner js-file-line">:100030000C94AC020C94AC020C94AC020C94AC0288 </td>
+ </tr>
+ <tr>
+ <td id="L5" class="blob-num js-line-number" data-line-number="5"></td>
+ <td id="LC5" class="blob-code blob-code-inner js-file-line">:100040000C94AC020C949A220C94AC020C94AC026A </td>
+ </tr>
+ <tr>
+ <td id="L6" class="blob-num js-line-number" data-line-number="6"></td>
+ <td id="LC6" class="blob-code blob-code-inner js-file-line">:100050000C94AC020C942A1C0C94AC020C94AC02D0 </td>
+ </tr>
+ <tr>
+ <td id="L7" class="blob-num js-line-number" data-line-number="7"></td>
+ <td id="LC7" class="blob-code blob-code-inner js-file-line">:100060000C94AC020C94AC020C94AC020C94AC0258 </td>
+ </tr>
+ <tr>
+ <td id="L8" class="blob-num js-line-number" data-line-number="8"></td>
+ <td id="LC8" class="blob-code blob-code-inner js-file-line">:100070000C94AC020C94AC020C94AC020C94AC0248 </td>
+ </tr>
+ <tr>
+ <td id="L9" class="blob-num js-line-number" data-line-number="9"></td>
+ <td id="LC9" class="blob-code blob-code-inner js-file-line">:100080000C94AC020C94AC020C94AC020C94AC0238 </td>
+ </tr>
+ <tr>
+ <td id="L10" class="blob-num js-line-number" data-line-number="10"></td>
+ <td id="LC10" class="blob-code blob-code-inner js-file-line">:100090000C94AC020C94AC020C94AC020C94AC0228 </td>
+ </tr>
+ <tr>
+ <td id="L11" class="blob-num js-line-number" data-line-number="11"></td>
+ <td id="LC11" class="blob-code blob-code-inner js-file-line">:1000A0000C94AC020C94AC020C94AC023B0E5D0EB2 </td>
+ </tr>
+ <tr>
+ <td id="L12" class="blob-num js-line-number" data-line-number="12"></td>
+ <td id="LC12" class="blob-code blob-code-inner js-file-line">:1000B0004B0F5D0E4B0FA20EC50E4B0F1A0F2D0FDF </td>
+ </tr>
+ <tr>
+ <td id="L13" class="blob-num js-line-number" data-line-number="13"></td>
+ <td id="LC13" class="blob-code blob-code-inner js-file-line">:1000C00019121912561256129912D712F014F0146E </td>
+ </tr>
+ <tr>
+ <td id="L14" class="blob-num js-line-number" data-line-number="14"></td>
+ <td id="LC14" class="blob-code blob-code-inner js-file-line">:1000D000F012F014F113F113C414F014F014DB1443 </td>
+ </tr>
+ <tr>
+ <td id="L15" class="blob-num js-line-number" data-line-number="15"></td>
+ <td id="LC15" class="blob-code blob-code-inner js-file-line">:1000E0000000F0A135003A81297100300230000093 </td>
+ </tr>
+ <tr>
+ <td id="L16" class="blob-num js-line-number" data-line-number="16"></td>
+ <td id="LC16" class="blob-code blob-code-inner js-file-line">:1000F0001E003700040038004A003C761F0036001E </td>
+ </tr>
+ <tr>
+ <td id="L17" class="blob-num js-line-number" data-line-number="17"></td>
+ <td id="LC17" class="blob-code blob-code-inner js-file-line">:10010000120014004E002B002000330008000D00E8 </td>
+ </tr>
+ <tr>
+ <td id="L18" class="blob-num js-line-number" data-line-number="18"></td>
+ <td id="LC18" class="blob-code blob-code-inner js-file-line">:100110004B0028002100130018000E004D003D7513 </td>
+ </tr>
+ <tr>
+ <td id="L19" class="blob-num js-line-number" data-line-number="19"></td>
+ <td id="LC19" class="blob-code blob-code-inner js-file-line">:1001200022001C000C001B0000003E7D64004C7788 </td>
+ </tr>
+ <tr>
+ <td id="L20" class="blob-num js-line-number" data-line-number="20"></td>
+ <td id="LC20" class="blob-code blob-code-inner js-file-line">:100130000000E30000003F812E00C1000000E60047 </td>
+ </tr>
+ <tr>
+ <td id="L21" class="blob-num js-line-number" data-line-number="21"></td>
+ <td id="LC21" class="blob-code blob-code-inner js-file-line">:100140000000408123000900070005000000417DF8 </td>
+ </tr>
+ <tr>
+ <td id="L22" class="blob-num js-line-number" data-line-number="22"></td>
+ <td id="LC22" class="blob-code blob-code-inner js-file-line">:1001500024000A0015001000500044752500060018 </td>
+ </tr>
+ <tr>
+ <td id="L23" class="blob-num js-line-number" data-line-number="23"></td>
+ <td id="LC23" class="blob-code blob-code-inner js-file-line">:1001600017001A0051002C0026000B001100190086 </td>
+ </tr>
+ <tr>
+ <td id="L24" class="blob-num js-line-number" data-line-number="24"></td>
+ <td id="LC24" class="blob-code blob-code-inner js-file-line">:1001700052002A0027000F0016001D004F00457690 </td>
+ </tr>
+ <tr>
+ <td id="L25" class="blob-num js-line-number" data-line-number="25"></td>
+ <td id="LC25" class="blob-code blob-code-inner js-file-line">:100180002D00307F34710130033000000000010089 </td>
+ </tr>
+ <tr>
+ <td id="L26" class="blob-num js-line-number" data-line-number="26"></td>
+ <td id="LC26" class="blob-code blob-code-inner js-file-line">:1001900000000430160100003A0064000000000076 </td>
+ </tr>
+ <tr>
+ <td id="L27" class="blob-num js-line-number" data-line-number="27"></td>
+ <td id="LC27" class="blob-code blob-code-inner js-file-line">:1001A0001D0102543B006402F20000001B01F50037 </td>
+ </tr>
+ <tr>
+ <td id="L28" class="blob-num js-line-number" data-line-number="28"></td>
+ <td id="LC28" class="blob-code blob-code-inner js-file-line">:1001B0003C00F000F10000000601F4003D000000EA </td>
+ </tr>
+ <tr>
+ <td id="L29" class="blob-num js-line-number" data-line-number="29"></td>
+ <td id="LC29" class="blob-code blob-code-inner js-file-line">:1001C000F3000000190100003E00000000000000E4 </td>
+ </tr>
+ <tr>
+ <td id="L30" class="blob-num js-line-number" data-line-number="30"></td>
+ <td id="LC30" class="blob-code blob-code-inner js-file-line">:1001D00000000000A6000000000000000000010078 </td>
+ </tr>
+ <tr>
+ <td id="L31" class="blob-num js-line-number" data-line-number="31"></td>
+ <td id="LC31" class="blob-code blob-code-inner js-file-line">:1001E000A500010000004600000001003F000000E3 </td>
+ </tr>
+ <tr>
+ <td id="L32" class="blob-num js-line-number" data-line-number="32"></td>
+ <td id="LC32" class="blob-code blob-code-inner js-file-line">:1001F000000000000000AE004000240021001E00AE </td>
+ </tr>
+ <tr>
+ <td id="L33" class="blob-num js-line-number" data-line-number="33"></td>
+ <td id="LC33" class="blob-code blob-code-inner js-file-line">:100200000000A9004100250022001F003700AB00BC </td>
+ </tr>
+ <tr>
+ <td id="L34" class="blob-num js-line-number" data-line-number="34"></td>
+ <td id="LC34" class="blob-code blob-code-inner js-file-line">:1002100042002600230020002700AC0043005500C8 </td>
+ </tr>
+ <tr>
+ <td id="L35" class="blob-num js-line-number" data-line-number="35"></td>
+ <td id="LC35" class="blob-code blob-code-inner js-file-line">:10022000570054006700AA0044002F00310000006E </td>
+ </tr>
+ <tr>
+ <td id="L36" class="blob-num js-line-number" data-line-number="36"></td>
+ <td id="LC36" class="blob-code blob-code-inner js-file-line">:10023000000000003500010029710030023000008C </td>
+ </tr>
+ <tr>
+ <td id="L37" class="blob-num js-line-number" data-line-number="37"></td>
+ <td id="LC37" class="blob-code blob-code-inner js-file-line">:100240001E00140004001D004A0001001F001A00D7 </td>
+ </tr>
+ <tr>
+ <td id="L38" class="blob-num js-line-number" data-line-number="38"></td>
+ <td id="LC38" class="blob-code blob-code-inner js-file-line">:1002500016001B004E002B002000080007000600BF </td>
+ </tr>
+ <tr>
+ <td id="L39" class="blob-num js-line-number" data-line-number="39"></td>
+ <td id="LC39" class="blob-code blob-code-inner js-file-line">:100260004B00280021001500090019004D003D75C4 </td>
+ </tr>
+ <tr>
+ <td id="L40" class="blob-num js-line-number" data-line-number="40"></td>
+ <td id="LC40" class="blob-code blob-code-inner js-file-line">:10027000220017000A00050000003E7D64004C7754 </td>
+ </tr>
+ <tr>
+ <td id="L41" class="blob-num js-line-number" data-line-number="41"></td>
+ <td id="LC41" class="blob-code blob-code-inner js-file-line">:100280000000E300000001002E0001000000E60075 </td>
+ </tr>
+ <tr>
+ <td id="L42" class="blob-num js-line-number" data-line-number="42"></td>
+ <td id="LC42" class="blob-code blob-code-inner js-file-line">:100290000000010023001C000B0011000000417D44 </td>
+ </tr>
+ <tr>
+ <td id="L43" class="blob-num js-line-number" data-line-number="43"></td>
+ <td id="LC43" class="blob-code blob-code-inner js-file-line">:1002A000240018000D0010005000447525000C00BB </td>
+ </tr>
+ <tr>
+ <td id="L44" class="blob-num js-line-number" data-line-number="44"></td>
+ <td id="LC44" class="blob-code blob-code-inner js-file-line">:1002B0000E00360051002C00260012000F003700FF </td>
+ </tr>
+ <tr>
+ <td id="L45" class="blob-num js-line-number" data-line-number="45"></td>
+ <td id="LC45" class="blob-code blob-code-inner js-file-line">:1002C00052002A0027001300330038004F00457603 </td>
+ </tr>
+ <tr>
+ <td id="L46" class="blob-num js-line-number" data-line-number="46"></td>
+ <td id="LC46" class="blob-code blob-code-inner js-file-line">:1002D0002D00307F347101300330000016034500DB </td>
+ </tr>
+ <tr>
+ <td id="L47" class="blob-num js-line-number" data-line-number="47"></td>
+ <td id="LC47" class="blob-code blob-code-inner js-file-line">:1002E000720067006F0044006F0078002000450036 </td>
+ </tr>
+ <tr>
+ <td id="L48" class="blob-num js-line-number" data-line-number="48"></td>
+ <td id="LC48" class="blob-code blob-code-inner js-file-line">:1002F0005A00000016034500720067006F004400BA </td>
+ </tr>
+ <tr>
+ <td id="L49" class="blob-num js-line-number" data-line-number="49"></td>
+ <td id="LC49" class="blob-code blob-code-inner js-file-line">:100300006F007800200045005A0000000403090433 </td>
+ </tr>
+ <tr>
+ <td id="L50" class="blob-num js-line-number" data-line-number="50"></td>
+ <td id="LC50" class="blob-code blob-code-inner js-file-line">:1003100009026D00040100A0FA09040000010301B4 </td>
+ </tr>
+ <tr>
+ <td id="L51" class="blob-num js-line-number" data-line-number="51"></td>
+ <td id="LC51" class="blob-code blob-code-inner js-file-line">:100320000100092111010001223F00070581030896 </td>
+ </tr>
+ <tr>
+ <td id="L52" class="blob-num js-line-number" data-line-number="52"></td>
+ <td id="LC52" class="blob-code blob-code-inner js-file-line">:10033000000A090401000103010200092111010062 </td>
+ </tr>
+ <tr>
+ <td id="L53" class="blob-num js-line-number" data-line-number="53"></td>
+ <td id="LC53" class="blob-code blob-code-inner js-file-line">:1003400001224D000705820308000A09040200018A </td>
+ </tr>
+ <tr>
+ <td id="L54" class="blob-num js-line-number" data-line-number="54"></td>
+ <td id="LC54" class="blob-code blob-code-inner js-file-line">:100350000300000009211101000122360007058376 </td>
+ </tr>
+ <tr>
+ <td id="L55" class="blob-num js-line-number" data-line-number="55"></td>
+ <td id="LC55" class="blob-code blob-code-inner js-file-line">:100360000308000A09040300010300000009211129 </td>
+ </tr>
+ <tr>
+ <td id="L56" class="blob-num js-line-number" data-line-number="56"></td>
+ <td id="LC56" class="blob-code blob-code-inner js-file-line">:100370000100012239000705840310000112011059 </td>
+ </tr>
+ <tr>
+ <td id="L57" class="blob-num js-line-number" data-line-number="57"></td>
+ <td id="LC57" class="blob-code blob-code-inner js-file-line">:100380000100000008EDFE07130100010200010555 </td>
+ </tr>
+ <tr>
+ <td id="L58" class="blob-num js-line-number" data-line-number="58"></td>
+ <td id="LC58" class="blob-code blob-code-inner js-file-line">:10039000010906A101050719E029E71500250195C6 </td>
+ </tr>
+ <tr>
+ <td id="L59" class="blob-num js-line-number" data-line-number="59"></td>
+ <td id="LC59" class="blob-code blob-code-inner js-file-line">:1003A0000875018102050819012905950575019156 </td>
+ </tr>
+ <tr>
+ <td id="L60" class="blob-num js-line-number" data-line-number="60"></td>
+ <td id="LC60" class="blob-code blob-code-inner js-file-line">:1003B000029501750391010507190029771500259C </td>
+ </tr>
+ <tr>
+ <td id="L61" class="blob-num js-line-number" data-line-number="61"></td>
+ <td id="LC61" class="blob-code blob-code-inner js-file-line">:1003C00001957875018102C005010980A1018502AE </td>
+ </tr>
+ <tr>
+ <td id="L62" class="blob-num js-line-number" data-line-number="62"></td>
+ <td id="LC62" class="blob-code blob-code-inner js-file-line">:1003D00016010026B7001A01002AB7007510950112 </td>
+ </tr>
+ <tr>
+ <td id="L63" class="blob-num js-line-number" data-line-number="63"></td>
+ <td id="LC63" class="blob-code blob-code-inner js-file-line">:1003E0008100C0050C0901A1018503160100269CAE </td>
+ </tr>
+ <tr>
+ <td id="L64" class="blob-num js-line-number" data-line-number="64"></td>
+ <td id="LC64" class="blob-code blob-code-inner js-file-line">:1003F000021A01002A9C02751095018100C00501B6 </td>
+ </tr>
+ <tr>
+ <td id="L65" class="blob-num js-line-number" data-line-number="65"></td>
+ <td id="LC65" class="blob-code blob-code-inner js-file-line">:100400000902A1010901A100050919012905150029 </td>
+ </tr>
+ <tr>
+ <td id="L66" class="blob-num js-line-number" data-line-number="66"></td>
+ <td id="LC66" class="blob-code blob-code-inner js-file-line">:10041000250195057501810295017503810105018D </td>
+ </tr>
+ <tr>
+ <td id="L67" class="blob-num js-line-number" data-line-number="67"></td>
+ <td id="LC67" class="blob-code blob-code-inner js-file-line">:10042000093009311581257F950275088106093843 </td>
+ </tr>
+ <tr>
+ <td id="L68" class="blob-num js-line-number" data-line-number="68"></td>
+ <td id="LC68" class="blob-code blob-code-inner js-file-line">:100430001581257F950175088106050C0A3802157E </td>
+ </tr>
+ <tr>
+ <td id="L69" class="blob-num js-line-number" data-line-number="69"></td>
+ <td id="LC69" class="blob-code blob-code-inner js-file-line">:1004400081257F950175088106C0C005010906A1B7 </td>
+ </tr>
+ <tr>
+ <td id="L70" class="blob-num js-line-number" data-line-number="70"></td>
+ <td id="LC70" class="blob-code blob-code-inner js-file-line">:1004500001050719E029E7150025019508750181B7 </td>
+ </tr>
+ <tr>
+ <td id="L71" class="blob-num js-line-number" data-line-number="71"></td>
+ <td id="LC71" class="blob-code blob-code-inner js-file-line">:100460000295017508810105081901290595057591 </td>
+ </tr>
+ <tr>
+ <td id="L72" class="blob-num js-line-number" data-line-number="72"></td>
+ <td id="LC72" class="blob-code blob-code-inner js-file-line">:100470000191029501750391010507190029FF15E6 </td>
+ </tr>
+ <tr>
+ <td id="L73" class="blob-num js-line-number" data-line-number="73"></td>
+ <td id="LC73" class="blob-code blob-code-inner js-file-line">:100480000025FF950675088100C0000000000000EF </td>
+ </tr>
+ <tr>
+ <td id="L74" class="blob-num js-line-number" data-line-number="74"></td>
+ <td id="LC74" class="blob-code blob-code-inner js-file-line">:100490000000000000010204060A0F17202C3A4A4F </td>
+ </tr>
+ <tr>
+ <td id="L75" class="blob-num js-line-number" data-line-number="75"></td>
+ <td id="LC75" class="blob-code blob-code-inner js-file-line">:1004A0005D71879DB3C7DAE9F5FCFFFCF5E9DAC7B2 </td>
+ </tr>
+ <tr>
+ <td id="L76" class="blob-num js-line-number" data-line-number="76"></td>
+ <td id="LC76" class="blob-code blob-code-inner js-file-line">:1004B000B39D87715D4A3A2C20170F0A060402018A </td>
+ </tr>
+ <tr>
+ <td id="L77" class="blob-num js-line-number" data-line-number="77"></td>
+ <td id="LC77" class="blob-code blob-code-inner js-file-line">:1004C0000000000000000000000011241FBECFEF5C </td>
+ </tr>
+ <tr>
+ <td id="L78" class="blob-num js-line-number" data-line-number="78"></td>
+ <td id="LC78" class="blob-code blob-code-inner js-file-line">:1004D000DAE0DEBFCDBF04B603FE27C08091F00195 </td>
+ </tr>
+ <tr>
+ <td id="L79" class="blob-num js-line-number" data-line-number="79"></td>
+ <td id="LC79" class="blob-code blob-code-inner js-file-line">:1004E0009091F101A091F201B091F3018730904B0E </td>
+ </tr>
+ <tr>
+ <td id="L80" class="blob-num js-line-number" data-line-number="80"></td>
+ <td id="LC80" class="blob-code blob-code-inner js-file-line">:1004F000A740B04BD1F41092F0011092F10110928C </td>
+ </tr>
+ <tr>
+ <td id="L81" class="blob-num js-line-number" data-line-number="81"></td>
+ <td id="LC81" class="blob-code blob-code-inner js-file-line">:10050000F2011092F30114BE84B7877F84BF0FB647 </td>
+ </tr>
+ <tr>
+ <td id="L82" class="blob-num js-line-number" data-line-number="82"></td>
+ <td id="LC82" class="blob-code blob-code-inner js-file-line">:10051000F894A895809160008861809360001092A3 </td>
+ </tr>
+ <tr>
+ <td id="L83" class="blob-num js-line-number" data-line-number="83"></td>
+ <td id="LC83" class="blob-code blob-code-inner js-file-line">:1005200060000FBEE0E0FFE3099511E0A0E0B1E05C </td>
+ </tr>
+ <tr>
+ <td id="L84" class="blob-num js-line-number" data-line-number="84"></td>
+ <td id="LC84" class="blob-code blob-code-inner js-file-line">:10053000E0EEF8E402C005900D92A433B107D9F7BC </td>
+ </tr>
+ <tr>
+ <td id="L85" class="blob-num js-line-number" data-line-number="85"></td>
+ <td id="LC85" class="blob-code blob-code-inner js-file-line">:1005400021E0A4E3B1E001C01D92A03FB207E1F7B2 </td>
+ </tr>
+ <tr>
+ <td id="L86" class="blob-num js-line-number" data-line-number="86"></td>
+ <td id="LC86" class="blob-code blob-code-inner js-file-line">:100550000E943D0A0C946E240C940000FC01623051 </td>
+ </tr>
+ <tr>
+ <td id="L87" class="blob-num js-line-number" data-line-number="87"></td>
+ <td id="LC87" class="blob-code blob-code-inner js-file-line">:1005600009F445C028F4662351F0613041F182C09E </td>
+ </tr>
+ <tr>
+ <td id="L88" class="blob-num js-line-number" data-line-number="88"></td>
+ <td id="LC88" class="blob-code blob-code-inner js-file-line">:10057000633009F45BC0643009F472C07BC08281CF </td>
+ </tr>
+ <tr>
+ <td id="L89" class="blob-num js-line-number" data-line-number="89"></td>
+ <td id="LC89" class="blob-code blob-code-inner js-file-line">:10058000882341F00E94F41B90933501809334013D </td>
+ </tr>
+ <tr>
+ <td id="L90" class="blob-num js-line-number" data-line-number="90"></td>
+ <td id="LC90" class="blob-code blob-code-inner js-file-line">:1005900085EE6AC085EE0E947511809134019091BC </td>
+ </tr>
+ <tr>
+ <td id="L91" class="blob-num js-line-number" data-line-number="91"></td>
+ <td id="LC91" class="blob-code blob-code-inner js-file-line">:1005A00035010E94001C8F3591050CF063C086EE6A </td>
+ </tr>
+ <tr>
+ <td id="L92" class="blob-num js-line-number" data-line-number="92"></td>
+ <td id="LC92" class="blob-code blob-code-inner js-file-line">:1005B0000E94AD1084E30E94AD1084E34DC082819F </td>
+ </tr>
+ <tr>
+ <td id="L93" class="blob-num js-line-number" data-line-number="93"></td>
+ <td id="LC93" class="blob-code blob-code-inner js-file-line">:1005C0008111E0CF85EE0E947511809134019091E8 </td>
+ </tr>
+ <tr>
+ <td id="L94" class="blob-num js-line-number" data-line-number="94"></td>
+ <td id="LC94" class="blob-code blob-code-inner js-file-line">:1005D00035010E94001C8F3591050CF04BC086EE52 </td>
+ </tr>
+ <tr>
+ <td id="L95" class="blob-num js-line-number" data-line-number="95"></td>
+ <td id="LC95" class="blob-code blob-code-inner js-file-line">:1005E0000E94AD1081E30E94AD1081E335C082818D </td>
+ </tr>
+ <tr>
+ <td id="L96" class="blob-num js-line-number" data-line-number="96"></td>
+ <td id="LC96" class="blob-code blob-code-inner js-file-line">:1005F000882341F00E94F41B9093350180933401CD </td>
+ </tr>
+ <tr>
+ <td id="L97" class="blob-num js-line-number" data-line-number="97"></td>
+ <td id="LC97" class="blob-code blob-code-inner js-file-line">:1006000082EE32C082EE0E94751180913401909189 </td>
+ </tr>
+ <tr>
+ <td id="L98" class="blob-num js-line-number" data-line-number="98"></td>
+ <td id="LC98" class="blob-code blob-code-inner js-file-line">:1006100035010E94001C8F35910564F586EE0E941D </td>
+ </tr>
+ <tr>
+ <td id="L99" class="blob-num js-line-number" data-line-number="99"></td>
+ <td id="LC99" class="blob-code blob-code-inner js-file-line">:10062000AD108FE20E94AD108FE216C08281811161 </td>
+ </tr>
+ <tr>
+ <td id="L100" class="blob-num js-line-number" data-line-number="100"></td>
+ <td id="LC100" class="blob-code blob-code-inner js-file-line">:10063000E1CF82EE0E9475118091340190913501D5 </td>
+ </tr>
+ <tr>
+ <td id="L101" class="blob-num js-line-number" data-line-number="101"></td>
+ <td id="LC101" class="blob-code blob-code-inner js-file-line">:100640000E94001C8F359105ACF486EE0E94AD101F </td>
+ </tr>
+ <tr>
+ <td id="L102" class="blob-num js-line-number" data-line-number="102"></td>
+ <td id="LC102" class="blob-code blob-code-inner js-file-line">:1006500080E30E94AD1080E30E94751186EE08C011 </td>
+ </tr>
+ <tr>
+ <td id="L103" class="blob-num js-line-number" data-line-number="103"></td>
+ <td id="LC103" class="blob-code blob-code-inner js-file-line">:100660008281882321F089E30E94AD1003C089E3D1 </td>
+ </tr>
+ <tr>
+ <td id="L104" class="blob-num js-line-number" data-line-number="104"></td>
+ <td id="LC104" class="blob-code blob-code-inner js-file-line">:100670000E94751180E090E0089508956091B301A3 </td>
+ </tr>
+ <tr>
+ <td id="L105" class="blob-num js-line-number" data-line-number="105"></td>
+ <td id="LC105" class="blob-code blob-code-inner js-file-line">:100680007091B4018091B5019091B6010E94531B05 </td>
+ </tr>
+ <tr>
+ <td id="L106" class="blob-num js-line-number" data-line-number="106"></td>
+ <td id="LC106" class="blob-code blob-code-inner js-file-line">:1006900056985E9825982D9826982E9827982F98EA </td>
+ </tr>
+ <tr>
+ <td id="L107" class="blob-num js-line-number" data-line-number="107"></td>
+ <td id="LC107" class="blob-code blob-code-inner js-file-line">:1006A000813029F0823029F4269A2E9A02C0279AA6 </td>
+ </tr>
+ <tr>
+ <td id="L108" class="blob-num js-line-number" data-line-number="108"></td>
+ <td id="LC108" class="blob-code blob-code-inner js-file-line">:1006B0002F9A0E94840F81FF02C0259A2D9A0895D7 </td>
+ </tr>
+ <tr>
+ <td id="L109" class="blob-num js-line-number" data-line-number="109"></td>
+ <td id="LC109" class="blob-code blob-code-inner js-file-line">:1006C0000C943E0356985E9825982D9826982E985F </td>
+ </tr>
+ <tr>
+ <td id="L110" class="blob-num js-line-number" data-line-number="110"></td>
+ <td id="LC110" class="blob-code blob-code-inner js-file-line">:1006D00027982F988FEF90E090938900809388005F </td>
+ </tr>
+ <tr>
+ <td id="L111" class="blob-num js-line-number" data-line-number="111"></td>
+ <td id="LC111" class="blob-code blob-code-inner js-file-line">:1006E00090938B0080938A0090938D0080938C0070 </td>
+ </tr>
+ <tr>
+ <td id="L112" class="blob-num js-line-number" data-line-number="112"></td>
+ <td id="LC112" class="blob-code blob-code-inner js-file-line">:1006F000259A2D9A2FEF80E792E02150804090407C </td>
+ </tr>
+ <tr>
+ <td id="L113" class="blob-num js-line-number" data-line-number="113"></td>
+ <td id="LC113" class="blob-code blob-code-inner js-file-line">:10070000E1F700C00000269A2E9A2FEF80E792E0D2 </td>
+ </tr>
+ <tr>
+ <td id="L114" class="blob-num js-line-number" data-line-number="114"></td>
+ <td id="LC114" class="blob-code blob-code-inner js-file-line">:10071000215080409040E1F700C00000279A2F9AB6 </td>
+ </tr>
+ <tr>
+ <td id="L115" class="blob-num js-line-number" data-line-number="115"></td>
+ <td id="LC115" class="blob-code blob-code-inner js-file-line">:100720002FEF80E792E0215080409040E1F700C039 </td>
+ </tr>
+ <tr>
+ <td id="L116" class="blob-num js-line-number" data-line-number="116"></td>
+ <td id="LC116" class="blob-code blob-code-inner js-file-line">:10073000000025982D982FEF80E792E0215080400F </td>
+ </tr>
+ <tr>
+ <td id="L117" class="blob-num js-line-number" data-line-number="117"></td>
+ <td id="LC117" class="blob-code blob-code-inner js-file-line">:100740009040E1F700C0000026982E982FEF80E738 </td>
+ </tr>
+ <tr>
+ <td id="L118" class="blob-num js-line-number" data-line-number="118"></td>
+ <td id="LC118" class="blob-code blob-code-inner js-file-line">:1007500092E0215080409040E1F700C000002798CF </td>
+ </tr>
+ <tr>
+ <td id="L119" class="blob-num js-line-number" data-line-number="119"></td>
+ <td id="LC119" class="blob-code blob-code-inner js-file-line">:100760002F9856985E9825982D9826982E98279819 </td>
+ </tr>
+ <tr>
+ <td id="L120" class="blob-num js-line-number" data-line-number="120"></td>
+ <td id="LC120" class="blob-code blob-code-inner js-file-line">:100770002F98089589EA8093800089E08093810012 </td>
+ </tr>
+ <tr>
+ <td id="L121" class="blob-num js-line-number" data-line-number="121"></td>
+ <td id="LC121" class="blob-code blob-code-inner js-file-line">:1007800024982C983F988AB18F748AB96E98479AAA </td>
+ </tr>
+ <tr>
+ <td id="L122" class="blob-num js-line-number" data-line-number="122"></td>
+ <td id="LC122" class="blob-code blob-code-inner js-file-line">:100790008BB1806B8BB9769A0E9462030C943D03F7 </td>
+ </tr>
+ <tr>
+ <td id="L123" class="blob-num js-line-number" data-line-number="123"></td>
+ <td id="LC123" class="blob-code blob-code-inner js-file-line">:1007A00080E2809300018091360181110EC00E9489 </td>
+ </tr>
+ <tr>
+ <td id="L124" class="blob-num js-line-number" data-line-number="124"></td>
+ <td id="LC124" class="blob-code blob-code-inner js-file-line">:1007B0001F0481E0809336012FEF83ED90E32150F9 </td>
+ </tr>
+ <tr>
+ <td id="L125" class="blob-num js-line-number" data-line-number="125"></td>
+ <td id="LC125" class="blob-code blob-code-inner js-file-line">:1007C00080409040E1F700C0000080E40E942504D2 </td>
+ </tr>
+ <tr>
+ <td id="L126" class="blob-num js-line-number" data-line-number="126"></td>
+ <td id="LC126" class="blob-code blob-code-inner js-file-line">:1007D0008093000181112EC00E944F04809300017C </td>
+ </tr>
+ <tr>
+ <td id="L127" class="blob-num js-line-number" data-line-number="127"></td>
+ <td id="LC127" class="blob-code blob-code-inner js-file-line">:1007E000811128C00E944F0480930001811122C012 </td>
+ </tr>
+ <tr>
+ <td id="L128" class="blob-num js-line-number" data-line-number="128"></td>
+ <td id="LC128" class="blob-code blob-code-inner js-file-line">:1007F0008FE30E944F048093000181111BC00E946F </td>
+ </tr>
+ <tr>
+ <td id="L129" class="blob-num js-line-number" data-line-number="129"></td>
+ <td id="LC129" class="blob-code blob-code-inner js-file-line">:10080000470480E40E94250480930001811112C0F6 </td>
+ </tr>
+ <tr>
+ <td id="L130" class="blob-num js-line-number" data-line-number="130"></td>
+ <td id="LC130" class="blob-code blob-code-inner js-file-line">:100810008CE00E944F048093000181110BC00E9464 </td>
+ </tr>
+ <tr>
+ <td id="L131" class="blob-num js-line-number" data-line-number="131"></td>
+ <td id="LC131" class="blob-code blob-code-inner js-file-line">:100820004F0480930001811105C08FE30E944F04A3 </td>
+ </tr>
+ <tr>
+ <td id="L132" class="blob-num js-line-number" data-line-number="132"></td>
+ <td id="LC132" class="blob-code blob-code-inner js-file-line">:10083000809300010E944704809100010895109266 </td>
+ </tr>
+ <tr>
+ <td id="L133" class="blob-num js-line-number" data-line-number="133"></td>
+ <td id="LC133" class="blob-code blob-code-inner js-file-line">:10084000B9008AE08093B800089594EA9093BC00C0 </td>
+ </tr>
+ <tr>
+ <td id="L134" class="blob-num js-line-number" data-line-number="134"></td>
+ <td id="LC134" class="blob-code blob-code-inner js-file-line">:100850009091BC0097FFFCCF9091B900987F9830A1 </td>
+ </tr>
+ <tr>
+ <td id="L135" class="blob-num js-line-number" data-line-number="135"></td>
+ <td id="LC135" class="blob-code blob-code-inner js-file-line">:1008600021F0903111F081E008958093BB0084E87D </td>
+ </tr>
+ <tr>
+ <td id="L136" class="blob-num js-line-number" data-line-number="136"></td>
+ <td id="LC136" class="blob-code blob-code-inner js-file-line">:100870008093BC008091BC0087FFFCCF8091B900C1 </td>
+ </tr>
+ <tr>
+ <td id="L137" class="blob-num js-line-number" data-line-number="137"></td>
+ <td id="LC137" class="blob-code blob-code-inner js-file-line">:10088000887F883111F0803471F780E0089584E921 </td>
+ </tr>
+ <tr>
+ <td id="L138" class="blob-num js-line-number" data-line-number="138"></td>
+ <td id="LC138" class="blob-code blob-code-inner js-file-line">:100890008093BC008091BC0084FDFCCF08958093C0 </td>
+ </tr>
+ <tr>
+ <td id="L139" class="blob-num js-line-number" data-line-number="139"></td>
+ <td id="LC139" class="blob-code blob-code-inner js-file-line">:1008A000BB0084E88093BC008091BC0087FFFCCF34 </td>
+ </tr>
+ <tr>
+ <td id="L140" class="blob-num js-line-number" data-line-number="140"></td>
+ <td id="LC140" class="blob-code blob-code-inner js-file-line">:1008B0009091B900987F81E0983209F480E0089522 </td>
+ </tr>
+ <tr>
+ <td id="L141" class="blob-num js-line-number" data-line-number="141"></td>
+ <td id="LC141" class="blob-code blob-code-inner js-file-line">:1008C00084E88093BC008091BC0087FFFCCF8091BE </td>
+ </tr>
+ <tr>
+ <td id="L142" class="blob-num js-line-number" data-line-number="142"></td>
+ <td id="LC142" class="blob-code blob-code-inner js-file-line">:1008D000BB00089580910001811115C080E40E9441 </td>
+ </tr>
+ <tr>
+ <td id="L143" class="blob-num js-line-number" data-line-number="143"></td>
+ <td id="LC143" class="blob-code blob-code-inner js-file-line">:1008E00025048093000181110CC082E10E944F0415 </td>
+ </tr>
+ <tr>
+ <td id="L144" class="blob-num js-line-number" data-line-number="144"></td>
+ <td id="LC144" class="blob-code blob-code-inner js-file-line">:1008F00080930001811105C08FEF0E944F04809307 </td>
+ </tr>
+ <tr>
+ <td id="L145" class="blob-num js-line-number" data-line-number="145"></td>
+ <td id="LC145" class="blob-code blob-code-inner js-file-line">:1009000000010E94470484B1807F84B985B1807F53 </td>
+ </tr>
+ <tr>
+ <td id="L146" class="blob-num js-line-number" data-line-number="146"></td>
+ <td id="LC146" class="blob-code blob-code-inner js-file-line">:1009100085B98AB1837F8AB98BB1837F8BB93E98C1 </td>
+ </tr>
+ <tr>
+ <td id="L147" class="blob-num js-line-number" data-line-number="147"></td>
+ <td id="LC147" class="blob-code blob-code-inner js-file-line">:10092000469808950E94D003809300010E946A04B3 </td>
+ </tr>
+ <tr>
+ <td id="L148" class="blob-num js-line-number" data-line-number="148"></td>
+ <td id="LC148" class="blob-code blob-code-inner js-file-line">:1009300080B38C7080BB81B3836F81BBA8E3B1E0CF </td>
+ </tr>
+ <tr>
+ <td id="L149" class="blob-num js-line-number" data-line-number="149"></td>
+ <td id="LC149" class="blob-code blob-code-inner js-file-line">:10094000E6E4F1E08EE08E0F11921D928E13FCCF43 </td>
+ </tr>
+ <tr>
+ <td id="L150" class="blob-num js-line-number" data-line-number="150"></td>
+ <td id="LC150" class="blob-code blob-code-inner js-file-line">:100950000C94BA03BF92CF92DF92EF92FF920F9363 </td>
+ </tr>
+ <tr>
+ <td id="L151" class="blob-num js-line-number" data-line-number="151"></td>
+ <td id="LC151" class="blob-code blob-code-inner js-file-line">:100960001F93CF93DF9380910001882379F08091CA </td>
+ </tr>
+ <tr>
+ <td id="L152" class="blob-num js-line-number" data-line-number="152"></td>
+ <td id="LC152" class="blob-code blob-code-inner js-file-line">:1009700037018F5F80933701811108C00E94D00337 </td>
+ </tr>
+ <tr>
+ <td id="L153" class="blob-num js-line-number" data-line-number="153"></td>
+ <td id="LC153" class="blob-code blob-code-inner js-file-line">:1009800080930001811102C00E94620308E311E01C </td>
+ </tr>
+ <tr>
+ <td id="L154" class="blob-num js-line-number" data-line-number="154"></td>
+ <td id="LC154" class="blob-code blob-code-inner js-file-line">:10099000C0E0D0E0DD24D39482E0C82EEE24E394BE </td>
+ </tr>
+ <tr>
+ <td id="L155" class="blob-num js-line-number" data-line-number="155"></td>
+ <td id="LC155" class="blob-code blob-code-inner js-file-line">:1009A000F12CC730D10500F580910001811164C0A0 </td>
+ </tr>
+ <tr>
+ <td id="L156" class="blob-num js-line-number" data-line-number="156"></td>
+ <td id="LC156" class="blob-code blob-code-inner js-file-line">:1009B00080E40E94250480930001811112C082E12D </td>
+ </tr>
+ <tr>
+ <td id="L157" class="blob-num js-line-number" data-line-number="157"></td>
+ <td id="LC157" class="blob-code blob-code-inner js-file-line">:1009C0000E944F048093000181110BC0C7010C2EBF </td>
+ </tr>
+ <tr>
+ <td id="L158" class="blob-num js-line-number" data-line-number="158"></td>
+ <td id="LC158" class="blob-code blob-code-inner js-file-line">:1009D00001C0880F0A94EAF780950E944F04809323 </td>
+ </tr>
+ <tr>
+ <td id="L159" class="blob-num js-line-number" data-line-number="159"></td>
+ <td id="LC159" class="blob-code blob-code-inner js-file-line">:1009E00000010E94470448C0CA30A1F028F4C83072 </td>
+ </tr>
+ <tr>
+ <td id="L160" class="blob-num js-line-number" data-line-number="160"></td>
+ <td id="LC160" class="blob-code blob-code-inner js-file-line">:1009F00059F0C93061F005C0CC3089F070F0CD30CD </td>
+ </tr>
+ <tr>
+ <td id="L161" class="blob-num js-line-number" data-line-number="161"></td>
+ <td id="LC161" class="blob-code blob-code-inner js-file-line">:100A000089F0209A289810C0219A29980DC0229A1E </td>
+ </tr>
+ <tr>
+ <td id="L162" class="blob-num js-line-number" data-line-number="162"></td>
+ <td id="LC162" class="blob-code blob-code-inner js-file-line">:100A10002A980AC0239A2B9807C0529A01C0539A69 </td>
+ </tr>
+ <tr>
+ <td id="L163" class="blob-num js-line-number" data-line-number="163"></td>
+ <td id="LC163" class="blob-code blob-code-inner js-file-line">:100A20005B9802C03E9A469890EA9A95F1F79FB17A </td>
+ </tr>
+ <tr>
+ <td id="L164" class="blob-num js-line-number" data-line-number="164"></td>
+ <td id="LC164" class="blob-code blob-code-inner js-file-line">:100A3000799902C082E001C080E091709D25982BD9 </td>
+ </tr>
+ <tr>
+ <td id="L165" class="blob-num js-line-number" data-line-number="165"></td>
+ <td id="LC165" class="blob-code blob-code-inner js-file-line">:100A40007C9902C084E001C080E0892B7D9902C0BE </td>
+ </tr>
+ <tr>
+ <td id="L166" class="blob-num js-line-number" data-line-number="166"></td>
+ <td id="LC166" class="blob-code blob-code-inner js-file-line">:100A500038E001C030E0832B7E9902C020E101C064 </td>
+ </tr>
+ <tr>
+ <td id="L167" class="blob-num js-line-number" data-line-number="167"></td>
+ <td id="LC167" class="blob-code blob-code-inner js-file-line">:100A600020E0822B9FB19095991F9927991F92950D </td>
+ </tr>
+ <tr>
+ <td id="L168" class="blob-num js-line-number" data-line-number="168"></td>
+ <td id="LC168" class="blob-code blob-code-inner js-file-line">:100A7000990F907E892B0FC080910001811149C090 </td>
+ </tr>
+ <tr>
+ <td id="L169" class="blob-num js-line-number" data-line-number="169"></td>
+ <td id="LC169" class="blob-code blob-code-inner js-file-line">:100A800080E40E94250480930001882379F1B12C31 </td>
+ </tr>
+ <tr>
+ <td id="L170" class="blob-num js-line-number" data-line-number="170"></td>
+ <td id="LC170" class="blob-code blob-code-inner js-file-line">:100A90000E9447048B2DF8019081981719F08083EC </td>
+ </tr>
+ <tr>
+ <td id="L171" class="blob-num js-line-number" data-line-number="171"></td>
+ <td id="LC171" class="blob-code blob-code-inner js-file-line">:100AA000C09201010E946A0421960F5F1F4FCE3051 </td>
+ </tr>
+ <tr>
+ <td id="L172" class="blob-num js-line-number" data-line-number="172"></td>
+ <td id="LC172" class="blob-code blob-code-inner js-file-line">:100AB000D10509F076CF80910101882361F1815041 </td>
+ </tr>
+ <tr>
+ <td id="L173" class="blob-num js-line-number" data-line-number="173"></td>
+ <td id="LC173" class="blob-code blob-code-inner js-file-line">:100AC00080930101882339F08FE99FE00197F1F7C6 </td>
+ </tr>
+ <tr>
+ <td id="L174" class="blob-num js-line-number" data-line-number="174"></td>
+ <td id="LC174" class="blob-code blob-code-inner js-file-line">:100AD00000C0000020C0A6E4B1E0E8E3F1E0CF01EF </td>
+ </tr>
+ <tr>
+ <td id="L175" class="blob-num js-line-number" data-line-number="175"></td>
+ <td id="LC175" class="blob-code blob-code-inner js-file-line">:100AE000825F91919D938E13FCCF15C083E10E948C </td>
+ </tr>
+ <tr>
+ <td id="L176" class="blob-num js-line-number" data-line-number="176"></td>
+ <td id="LC176" class="blob-code blob-code-inner js-file-line">:100AF0004F04809300018111CACF81E40E94250434 </td>
+ </tr>
+ <tr>
+ <td id="L177" class="blob-num js-line-number" data-line-number="177"></td>
+ <td id="LC177" class="blob-code blob-code-inner js-file-line">:100B0000809300018111C3CF0E946004B82EB0947D </td>
+ </tr>
+ <tr>
+ <td id="L178" class="blob-num js-line-number" data-line-number="178"></td>
+ <td id="LC178" class="blob-code blob-code-inner js-file-line">:100B1000BFCF80E0C0CF0E94600381E0DF91CF9122 </td>
+ </tr>
+ <tr>
+ <td id="L179" class="blob-num js-line-number" data-line-number="179"></td>
+ <td id="LC179" class="blob-code blob-code-inner js-file-line">:100B20001F910F91FF90EF90DF90CF90BF900895AD </td>
+ </tr>
+ <tr>
+ <td id="L180" class="blob-num js-line-number" data-line-number="180"></td>
+ <td id="LC180" class="blob-code blob-code-inner js-file-line">:100B3000E82FF0E0EA5BFE4F808108950895089564 </td>
+ </tr>
+ <tr>
+ <td id="L181" class="blob-num js-line-number" data-line-number="181"></td>
+ <td id="LC181" class="blob-code blob-code-inner js-file-line">:100B400096E0799FF001112494E5899FE00DF11D55 </td>
+ </tr>
+ <tr>
+ <td id="L182" class="blob-num js-line-number" data-line-number="182"></td>
+ <td id="LC182" class="blob-code blob-code-inner js-file-line">:100B50001124E60FF11DEE0FFF1FEC51FF4F8591A1 </td>
+ </tr>
+ <tr>
+ <td id="L183" class="blob-num js-line-number" data-line-number="183"></td>
+ <td id="LC183" class="blob-code blob-code-inner js-file-line">:100B600094910895880F991FFC01E05AF0408591F7 </td>
+ </tr>
+ <tr>
+ <td id="L184" class="blob-num js-line-number" data-line-number="184"></td>
+ <td id="LC184" class="blob-code blob-code-inner js-file-line">:100B700094910895880F991FFC01E052FF4F8591D1 </td>
+ </tr>
+ <tr>
+ <td id="L185" class="blob-num js-line-number" data-line-number="185"></td>
+ <td id="LC185" class="blob-code blob-code-inner js-file-line">:100B8000949108950F931F93CF93DF93EC018115F8 </td>
+ </tr>
+ <tr>
+ <td id="L186" class="blob-num js-line-number" data-line-number="186"></td>
+ <td id="LC186" class="blob-code blob-code-inner js-file-line">:100B9000904350F5C11580E2D80708F0B3C0CB3BB5 </td>
+ </tr>
+ <tr>
+ <td id="L187" class="blob-num js-line-number" data-line-number="187"></td>
+ <td id="LC187" class="blob-code blob-code-inner js-file-line">:100BA000D10590F4C83AD10508F05AC0C53AD1052C </td>
+ </tr>
+ <tr>
+ <td id="L188" class="blob-num js-line-number" data-line-number="188"></td>
+ <td id="LC188" class="blob-code blob-code-inner js-file-line">:100BB00008F04BC0C430D10508F0BBC1219709F043 </td>
+ </tr>
+ <tr>
+ <td id="L189" class="blob-num js-line-number" data-line-number="189"></td>
+ <td id="LC189" class="blob-code blob-code-inner js-file-line">:100BC000B5C101E010E0F5C1CF3FD10511F008F04B </td>
+ </tr>
+ <tr>
+ <td id="L190" class="blob-num js-line-number" data-line-number="190"></td>
+ <td id="LC190" class="blob-code blob-code-inner js-file-line">:100BD000B0C1C03FD10508F092C0CE01805E91093E </td>
+ </tr>
+ <tr>
+ <td id="L191" class="blob-num js-line-number" data-line-number="191"></td>
+ <td id="LC191" class="blob-code blob-code-inner js-file-line">:100BE000089708F4A6C1A2C1C11591E5D907A8F4D8 </td>
+ </tr>
+ <tr>
+ <td id="L192" class="blob-num js-line-number" data-line-number="192"></td>
+ <td id="LC192" class="blob-code blob-code-inner js-file-line">:100BF000C23020E5D20708F09EC0C11580E5D807B5 </td>
+ </tr>
+ <tr>
+ <td id="L193" class="blob-num js-line-number" data-line-number="193"></td>
+ <td id="LC193" class="blob-code blob-code-inner js-file-line">:100C000009F485C008F091C0C11520E4D20708F0AE </td>
+ </tr>
+ <tr>
+ <td id="L194" class="blob-num js-line-number" data-line-number="194"></td>
+ <td id="LC194" class="blob-code blob-code-inner js-file-line">:100C10008DC1DD278E01106CCCC1C11580E8D807CD </td>
+ </tr>
+ <tr>
+ <td id="L195" class="blob-num js-line-number" data-line-number="195"></td>
+ <td id="LC195" class="blob-code blob-code-inner js-file-line">:100C200058F4C11590E7D90708F07CC1C11520E63A </td>
+ </tr>
+ <tr>
+ <td id="L196" class="blob-num js-line-number" data-line-number="196"></td>
+ <td id="LC196" class="blob-code blob-code-inner js-file-line">:100C3000D20708F422C17AC1C11580E9D80708F0AB </td>
+ </tr>
+ <tr>
+ <td id="L197" class="blob-num js-line-number" data-line-number="197"></td>
+ <td id="LC197" class="blob-code blob-code-inner js-file-line">:100C400075C1DF708E01106AB4C1C53AD10509F4CF </td>
+ </tr>
+ <tr>
+ <td id="L198" class="blob-num js-line-number" data-line-number="198"></td>
+ <td id="LC198" class="blob-code blob-code-inner js-file-line">:100C500072C1C63AD10509F071C102E810E4A9C118 </td>
+ </tr>
+ <tr>
+ <td id="L199" class="blob-num js-line-number" data-line-number="199"></td>
+ <td id="LC199" class="blob-code blob-code-inner js-file-line">:100C6000C83AD10509F46DC1C93AD10509F46CC17E </td>
+ </tr>
+ <tr>
+ <td id="L200" class="blob-num js-line-number" data-line-number="200"></td>
+ <td id="LC200" class="blob-code blob-code-inner js-file-line">:100C7000CA3AD10509F46BC1CB3AD10509F46AC16E </td>
+ </tr>
+ <tr>
+ <td id="L201" class="blob-num js-line-number" data-line-number="201"></td>
+ <td id="LC201" class="blob-code blob-code-inner js-file-line">:100C8000CC3AD10509F469C1CD3AD10509F468C15E </td>
+ </tr>
+ <tr>
+ <td id="L202" class="blob-num js-line-number" data-line-number="202"></td>
+ <td id="LC202" class="blob-code blob-code-inner js-file-line">:100C9000C03BD10509F467C1CE3AD10509F466C15C </td>
+ </tr>
+ <tr>
+ <td id="L203" class="blob-num js-line-number" data-line-number="203"></td>
+ <td id="LC203" class="blob-code blob-code-inner js-file-line">:100CA000CF3AD10509F465C1C13BD10509F464C14E </td>
+ </tr>
+ <tr>
+ <td id="L204" class="blob-num js-line-number" data-line-number="204"></td>
+ <td id="LC204" class="blob-code blob-code-inner js-file-line">:100CB000C23BD10509F463C1C33BD10509F462C14C </td>
+ </tr>
+ <tr>
+ <td id="L205" class="blob-num js-line-number" data-line-number="205"></td>
+ <td id="LC205" class="blob-code blob-code-inner js-file-line">:100CC000C43BD10509F461C1C53BD10509F460C13C </td>
+ </tr>
+ <tr>
+ <td id="L206" class="blob-num js-line-number" data-line-number="206"></td>
+ <td id="LC206" class="blob-code blob-code-inner js-file-line">:100CD000C63BD10509F45FC1C73BD10509F45EC12C </td>
+ </tr>
+ <tr>
+ <td id="L207" class="blob-num js-line-number" data-line-number="207"></td>
+ <td id="LC207" class="blob-code blob-code-inner js-file-line">:100CE000C83BD10509F45DC1C93BD10509F45CC11C </td>
+ </tr>
+ <tr>
+ <td id="L208" class="blob-num js-line-number" data-line-number="208"></td>
+ <td id="LC208" class="blob-code blob-code-inner js-file-line">:100CF000CA3BD10509F45BC100E014E45AC18E017E </td>
+ </tr>
+ <tr>
+ <td id="L209" class="blob-num js-line-number" data-line-number="209"></td>
+ <td id="LC209" class="blob-code blob-code-inner js-file-line">:100D0000106557C1CE019F700E94BA0553C10E9461 </td>
+ </tr>
+ <tr>
+ <td id="L210" class="blob-num js-line-number" data-line-number="210"></td>
+ <td id="LC210" class="blob-code blob-code-inner js-file-line">:100D100014159FEF24E38CE0915020408040E1F7D0 </td>
+ </tr>
+ <tr>
+ <td id="L211" class="blob-num js-line-number" data-line-number="211"></td>
+ <td id="LC211" class="blob-code blob-code-inner js-file-line">:100D200000C000000E944F1C44C18091CF0181602F </td>
+ </tr>
+ <tr>
+ <td id="L212" class="blob-num js-line-number" data-line-number="212"></td>
+ <td id="LC212" class="blob-code blob-code-inner js-file-line">:100D30008093CF013EC10E94F81D811102C00E9424 </td>
+ </tr>
+ <tr>
+ <td id="L213" class="blob-num js-line-number" data-line-number="213"></td>
+ <td id="LC213" class="blob-code blob-code-inner js-file-line">:100D4000DE1D0E94151E90E09093F0018093EF014C </td>
+ </tr>
+ <tr>
+ <td id="L214" class="blob-num js-line-number" data-line-number="214"></td>
+ <td id="LC214" class="blob-code blob-code-inner js-file-line">:100D5000C23090E5D90721F48091EF01816086C00F </td>
+ </tr>
+ <tr>
+ <td id="L215" class="blob-num js-line-number" data-line-number="215"></td>
+ <td id="LC215" class="blob-code blob-code-inner js-file-line">:100D6000C43020E5D20721F48091EF0182607EC07B </td>
+ </tr>
+ <tr>
+ <td id="L216" class="blob-num js-line-number" data-line-number="216"></td>
+ <td id="LC216" class="blob-code blob-code-inner js-file-line">:100D7000C63080E5D80721F48091EF01846076C009 </td>
+ </tr>
+ <tr>
+ <td id="L217" class="blob-num js-line-number" data-line-number="217"></td>
+ <td id="LC217" class="blob-code blob-code-inner js-file-line">:100D8000C83090E5D90719F48091EF0127C0CA3027 </td>
+ </tr>
+ <tr>
+ <td id="L218" class="blob-num js-line-number" data-line-number="218"></td>
+ <td id="LC218" class="blob-code blob-code-inner js-file-line">:100D900020E5D20721F48091EF01806167C0CC305B </td>
+ </tr>
+ <tr>
+ <td id="L219" class="blob-num js-line-number" data-line-number="219"></td>
+ <td id="LC219" class="blob-code blob-code-inner js-file-line">:100DA00080E5D80721F48091EF0180625FC0CE30EA </td>
+ </tr>
+ <tr>
+ <td id="L220" class="blob-num js-line-number" data-line-number="220"></td>
+ <td id="LC220" class="blob-code blob-code-inner js-file-line">:100DB00090E5D90721F48091EF01806457C0C031DC </td>
+ </tr>
+ <tr>
+ <td id="L221" class="blob-num js-line-number" data-line-number="221"></td>
+ <td id="LC221" class="blob-code blob-code-inner js-file-line">:100DC00020E5D20721F48091EF0180684FC0C23145 </td>
+ </tr>
+ <tr>
+ <td id="L222" class="blob-num js-line-number" data-line-number="222"></td>
+ <td id="LC222" class="blob-code blob-code-inner js-file-line">:100DD00080E5D80729F48091EF018460886046C0DF </td>
+ </tr>
+ <tr>
+ <td id="L223" class="blob-num js-line-number" data-line-number="223"></td>
+ <td id="LC223" class="blob-code blob-code-inner js-file-line">:100DE000C33090E5D90721F48091EF018E7F3EC09A </td>
+ </tr>
+ <tr>
+ <td id="L224" class="blob-num js-line-number" data-line-number="224"></td>
+ <td id="LC224" class="blob-code blob-code-inner js-file-line">:100DF000C53020E5D20721F48091EF018D7F36C008 </td>
+ </tr>
+ <tr>
+ <td id="L225" class="blob-num js-line-number" data-line-number="225"></td>
+ <td id="LC225" class="blob-code blob-code-inner js-file-line">:100E0000C73080E5D80721F48091EF018B7F2EC099 </td>
+ </tr>
+ <tr>
+ <td id="L226" class="blob-num js-line-number" data-line-number="226"></td>
+ <td id="LC226" class="blob-code blob-code-inner js-file-line">:100E1000C93090E5D90719F48091EF0126C0CB3095 </td>
+ </tr>
+ <tr>
+ <td id="L227" class="blob-num js-line-number" data-line-number="227"></td>
+ <td id="LC227" class="blob-code blob-code-inner js-file-line">:100E200020E5D20721F48091EF018F7E1FC0CD30E5 </td>
+ </tr>
+ <tr>
+ <td id="L228" class="blob-num js-line-number" data-line-number="228"></td>
+ <td id="LC228" class="blob-code blob-code-inner js-file-line">:100E300080E5D80721F48091EF018F7D17C0CF3076 </td>
+ </tr>
+ <tr>
+ <td id="L229" class="blob-num js-line-number" data-line-number="229"></td>
+ <td id="LC229" class="blob-code blob-code-inner js-file-line">:100E400090E5D90721F48091EF018F7B0FC0C1316C </td>
+ </tr>
+ <tr>
+ <td id="L230" class="blob-num js-line-number" data-line-number="230"></td>
+ <td id="LC230" class="blob-code blob-code-inner js-file-line">:100E500020E5D20721F48091EF018F7707C0C331DD </td>
+ </tr>
+ <tr>
+ <td id="L231" class="blob-num js-line-number" data-line-number="231"></td>
+ <td id="LC231" class="blob-code blob-code-inner js-file-line">:100E6000D04531F48091EF018B7F877F8093EF0134 </td>
+ </tr>
+ <tr>
+ <td id="L232" class="blob-num js-line-number" data-line-number="232"></td>
+ <td id="LC232" class="blob-code blob-code-inner js-file-line">:100E70008091EF010E94191E9CC08D2F99278F70C1 </td>
+ </tr>
+ <tr>
+ <td id="L233" class="blob-num js-line-number" data-line-number="233"></td>
+ <td id="LC233" class="blob-code blob-code-inner js-file-line">:100E8000992781309105D9F49E012370332702C040 </td>
+ </tr>
+ <tr>
+ <td id="L234" class="blob-num js-line-number" data-line-number="234"></td>
+ <td id="LC234" class="blob-code blob-code-inner js-file-line">:100E9000880F991F2A95E2F79C688E0144E0000FA5 </td>
+ </tr>
+ <tr>
+ <td id="L235" class="blob-num js-line-number" data-line-number="235"></td>
+ <td id="LC235" class="blob-code blob-code-inner js-file-line">:100EA000111F4A95E1F700271370802B912B53E017 </td>
+ </tr>
+ <tr>
+ <td id="L236" class="blob-num js-line-number" data-line-number="236"></td>
+ <td id="LC236" class="blob-code blob-code-inner js-file-line">:100EB000CC0FDD1F5A95E1F7C076DD272FC08230B9 </td>
+ </tr>
+ <tr>
+ <td id="L237" class="blob-num js-line-number" data-line-number="237"></td>
+ <td id="LC237" class="blob-code blob-code-inner js-file-line">:100EC000910531F4DC2FCC278E01016F106A71C0BF </td>
+ </tr>
+ <tr>
+ <td id="L238" class="blob-num js-line-number" data-line-number="238"></td>
+ <td id="LC238" class="blob-code blob-code-inner js-file-line">:100ED0008330910569F4CE018370992701E010E019 </td>
+ </tr>
+ <tr>
+ <td id="L239" class="blob-num js-line-number" data-line-number="239"></td>
+ <td id="LC239" class="blob-code blob-code-inner js-file-line">:100EE00002C0000F111F8A95E2F7C8019C680FC06D </td>
+ </tr>
+ <tr>
+ <td id="L240" class="blob-num js-line-number" data-line-number="240"></td>
+ <td id="LC240" class="blob-code blob-code-inner js-file-line">:100EF000049709F05EC0CE018370992701E010E0ED </td>
+ </tr>
+ <tr>
+ <td id="L241" class="blob-num js-line-number" data-line-number="241"></td>
+ <td id="LC241" class="blob-code blob-code-inner js-file-line">:100F000002C0000F111F8A95E2F7C8019A6823E01A </td>
+ </tr>
+ <tr>
+ <td id="L242" class="blob-num js-line-number" data-line-number="242"></td>
+ <td id="LC242" class="blob-code blob-code-inner js-file-line">:100F1000CC0FDD1F2A95E1F7C07ED7708C010C2B1A </td>
+ </tr>
+ <tr>
+ <td id="L243" class="blob-num js-line-number" data-line-number="243"></td>
+ <td id="LC243" class="blob-code blob-code-inner js-file-line">:100F20001D2B47C0DF708E01106243C000E010E04F </td>
+ </tr>
+ <tr>
+ <td id="L244" class="blob-num js-line-number" data-line-number="244"></td>
+ <td id="LC244" class="blob-code blob-code-inner js-file-line">:100F300040C08E013EC001E810E43BC003E810E46D </td>
+ </tr>
+ <tr>
+ <td id="L245" class="blob-num js-line-number" data-line-number="245"></td>
+ <td id="LC245" class="blob-code blob-code-inner js-file-line">:100F400038C002EE14E435C009EE14E432C00AEEF3 </td>
+ </tr>
+ <tr>
+ <td id="L246" class="blob-num js-line-number" data-line-number="246"></td>
+ <td id="LC246" class="blob-code blob-code-inner js-file-line">:100F500014E42FC005EB14E42CC006EB14E429C004 </td>
+ </tr>
+ <tr>
+ <td id="L247" class="blob-num js-line-number" data-line-number="247"></td>
+ <td id="LC247" class="blob-code blob-code-inner js-file-line">:100F600007EB14E426C00CEC14E423C00DEC14E4ED </td>
+ </tr>
+ <tr>
+ <td id="L248" class="blob-num js-line-number" data-line-number="248"></td>
+ <td id="LC248" class="blob-code blob-code-inner js-file-line">:100F700020C003E815E41DC00AE815E41AC002E920 </td>
+ </tr>
+ <tr>
+ <td id="L249" class="blob-num js-line-number" data-line-number="249"></td>
+ <td id="LC249" class="blob-code blob-code-inner js-file-line">:100F800015E417C004E915E414C001E216E411C029 </td>
+ </tr>
+ <tr>
+ <td id="L250" class="blob-num js-line-number" data-line-number="250"></td>
+ <td id="LC250" class="blob-code blob-code-inner js-file-line">:100F900003E216E40EC004E216E40BC005E216E418 </td>
+ </tr>
+ <tr>
+ <td id="L251" class="blob-num js-line-number" data-line-number="251"></td>
+ <td id="LC251" class="blob-code blob-code-inner js-file-line">:100FA00008C006E216E405C007E216E402C00AE241 </td>
+ </tr>
+ <tr>
+ <td id="L252" class="blob-num js-line-number" data-line-number="252"></td>
+ <td id="LC252" class="blob-code blob-code-inner js-file-line">:100FB00016E4C801DF91CF911F910F91089596E03B </td>
+ </tr>
+ <tr>
+ <td id="L253" class="blob-num js-line-number" data-line-number="253"></td>
+ <td id="LC253" class="blob-code blob-code-inner js-file-line">:100FC000799FF001112494E5899FE00DF11D112412 </td>
+ </tr>
+ <tr>
+ <td id="L254" class="blob-num js-line-number" data-line-number="254"></td>
+ <td id="LC254" class="blob-code blob-code-inner js-file-line">:100FD000E60FF11DEE0FFF1FEC51FF4F859194912D </td>
+ </tr>
+ <tr>
+ <td id="L255" class="blob-num js-line-number" data-line-number="255"></td>
+ <td id="LC255" class="blob-code blob-code-inner js-file-line">:100FE000803E9105E0F4803C910558F581339105F0 </td>
+ </tr>
+ <tr>
+ <td id="L256" class="blob-num js-line-number" data-line-number="256"></td>
+ <td id="LC256" class="blob-code blob-code-inner js-file-line">:100FF00009F46FC048F48932910509F463C08A325C </td>
+ </tr>
+ <tr>
+ <td id="L257" class="blob-num js-line-number" data-line-number="257"></td>
+ <td id="LC257" class="blob-code blob-code-inner js-file-line">:10100000910509F46DC072C089339105E9F0823809 </td>
+ </tr>
+ <tr>
+ <td id="L258" class="blob-num js-line-number" data-line-number="258"></td>
+ <td id="LC258" class="blob-code blob-code-inner js-file-line">:101010009105D1F08533910509F44DC067C0833E39 </td>
+ </tr>
+ <tr>
+ <td id="L259" class="blob-num js-line-number" data-line-number="259"></td>
+ <td id="LC259" class="blob-code blob-code-inner js-file-line">:10102000910581F138F4803E9105B9F0823E910539 </td>
+ </tr>
+ <tr>
+ <td id="L260" class="blob-num js-line-number" data-line-number="260"></td>
+ <td id="LC260" class="blob-code blob-code-inner js-file-line">:10103000D9F05CC0863E910561F1873E9105A1F132 </td>
+ </tr>
+ <tr>
+ <td id="L261" class="blob-num js-line-number" data-line-number="261"></td>
+ <td id="LC261" class="blob-code blob-code-inner js-file-line">:1010400055C00E94B20508952091EF0120FD02C015 </td>
+ </tr>
+ <tr>
+ <td id="L262" class="blob-num js-line-number" data-line-number="262"></td>
+ <td id="LC262" class="blob-code blob-code-inner js-file-line">:1010500021FF4CC080EE90E049C08091EF0180FFFD </td>
+ </tr>
+ <tr>
+ <td id="L263" class="blob-num js-line-number" data-line-number="263"></td>
+ <td id="LC263" class="blob-code blob-code-inner js-file-line">:10106000F9CF89E390E042C08091EF0182FF0EC08A </td>
+ </tr>
+ <tr>
+ <td id="L264" class="blob-num js-line-number" data-line-number="264"></td>
+ <td id="LC264" class="blob-code blob-code-inner js-file-line">:101070008091EF0184FF03C080E090E037C083EEF1 </td>
+ </tr>
+ <tr>
+ <td id="L265" class="blob-num js-line-number" data-line-number="265"></td>
+ <td id="LC265" class="blob-code blob-code-inner js-file-line">:1010800090E034C08091EF0182FFF2CF82EE90E0D9 </td>
+ </tr>
+ <tr>
+ <td id="L266" class="blob-num js-line-number" data-line-number="266"></td>
+ <td id="LC266" class="blob-code blob-code-inner js-file-line">:101090002DC08091EF0183FF0BC08091EF0184FD93 </td>
+ </tr>
+ <tr>
+ <td id="L267" class="blob-num js-line-number" data-line-number="267"></td>
+ <td id="LC267" class="blob-code blob-code-inner js-file-line">:1010A000EBCF87EE90E022C08091EF0183FFF5CF78 </td>
+ </tr>
+ <tr>
+ <td id="L268" class="blob-num js-line-number" data-line-number="268"></td>
+ <td id="LC268" class="blob-code blob-code-inner js-file-line">:1010B00086EE90E01BC08091EF0185FF07C089E2BA </td>
+ </tr>
+ <tr>
+ <td id="L269" class="blob-num js-line-number" data-line-number="269"></td>
+ <td id="LC269" class="blob-code blob-code-inner js-file-line">:1010C00090E014C08091EF0185FFF9CF85E390E0B7 </td>
+ </tr>
+ <tr>
+ <td id="L270" class="blob-num js-line-number" data-line-number="270"></td>
+ <td id="LC270" class="blob-code blob-code-inner js-file-line">:1010D0000DC08091EF0186FF07C08AE290E006C054 </td>
+ </tr>
+ <tr>
+ <td id="L271" class="blob-num js-line-number" data-line-number="271"></td>
+ <td id="LC271" class="blob-code blob-code-inner js-file-line">:1010E0008091EF0186FFF9CF81E390E00E94C20575 </td>
+ </tr>
+ <tr>
+ <td id="L272" class="blob-num js-line-number" data-line-number="272"></td>
+ <td id="LC272" class="blob-code blob-code-inner js-file-line">:1010F000089508950C947908809164010895CF9320 </td>
+ </tr>
+ <tr>
+ <td id="L273" class="blob-num js-line-number" data-line-number="273"></td>
+ <td id="LC273" class="blob-code blob-code-inner js-file-line">:10110000DF9300D01F92CDB7DEB79C018091E6013E </td>
+ </tr>
+ <tr>
+ <td id="L274" class="blob-num js-line-number" data-line-number="274"></td>
+ <td id="LC274" class="blob-code blob-code-inner js-file-line">:10111000843019F593E099833B832A839093E90007 </td>
+ </tr>
+ <tr>
+ <td id="L275" class="blob-num js-line-number" data-line-number="275"></td>
+ <td id="LC275" class="blob-code blob-code-inner js-file-line">:101120008FEF9091E800815095FD06C095ED9A955E </td>
+ </tr>
+ <tr>
+ <td id="L276" class="blob-num js-line-number" data-line-number="276"></td>
+ <td id="LC276" class="blob-code blob-code-inner js-file-line">:10113000F1F700008111F5CF8091E80085FF0DC027 </td>
+ </tr>
+ <tr>
+ <td id="L277" class="blob-num js-line-number" data-line-number="277"></td>
+ <td id="LC277" class="blob-code blob-code-inner js-file-line">:1011400040E050E063E070E0CE0101960E94EC0ABE </td>
+ </tr>
+ <tr>
+ <td id="L278" class="blob-num js-line-number" data-line-number="278"></td>
+ <td id="LC278" class="blob-code blob-code-inner js-file-line">:101150008091E8008E778093E8000F900F900F90B9 </td>
+ </tr>
+ <tr>
+ <td id="L279" class="blob-num js-line-number" data-line-number="279"></td>
+ <td id="LC279" class="blob-code blob-code-inner js-file-line">:10116000DF91CF910895CF93DF9300D01F92CDB739 </td>
+ </tr>
+ <tr>
+ <td id="L280" class="blob-num js-line-number" data-line-number="280"></td>
+ <td id="LC280" class="blob-code blob-code-inner js-file-line">:10117000DEB72091E601243021F522E029839B830C </td>
+ </tr>
+ <tr>
+ <td id="L281" class="blob-num js-line-number" data-line-number="281"></td>
+ <td id="LC281" class="blob-code blob-code-inner js-file-line">:101180008A8383E08093E9008FEF9091E80081509B </td>
+ </tr>
+ <tr>
+ <td id="L282" class="blob-num js-line-number" data-line-number="282"></td>
+ <td id="LC282" class="blob-code blob-code-inner js-file-line">:1011900095FD06C095ED9A95F1F700008111F5CF08 </td>
+ </tr>
+ <tr>
+ <td id="L283" class="blob-num js-line-number" data-line-number="283"></td>
+ <td id="LC283" class="blob-code blob-code-inner js-file-line">:1011A0008091E80085FF0DC040E050E063E070E012 </td>
+ </tr>
+ <tr>
+ <td id="L284" class="blob-num js-line-number" data-line-number="284"></td>
+ <td id="LC284" class="blob-code blob-code-inner js-file-line">:1011B000CE0101960E94EC0A8091E8008E77809320 </td>
+ </tr>
+ <tr>
+ <td id="L285" class="blob-num js-line-number" data-line-number="285"></td>
+ <td id="LC285" class="blob-code blob-code-inner js-file-line">:1011C000E8000F900F900F90DF91CF91089520913C </td>
+ </tr>
+ <tr>
+ <td id="L286" class="blob-num js-line-number" data-line-number="286"></td>
+ <td id="LC286" class="blob-code blob-code-inner js-file-line">:1011D000E6012430F1F422E02093E9002FEF309172 </td>
+ </tr>
+ <tr>
+ <td id="L287" class="blob-num js-line-number" data-line-number="287"></td>
+ <td id="LC287" class="blob-code blob-code-inner js-file-line">:1011E000E800215035FD06C035ED3A95F1F70000D5 </td>
+ </tr>
+ <tr>
+ <td id="L288" class="blob-num js-line-number" data-line-number="288"></td>
+ <td id="LC288" class="blob-code blob-code-inner js-file-line">:1011F0002111F5CF2091E80025FF0BC040E050E021 </td>
+ </tr>
+ <tr>
+ <td id="L289" class="blob-num js-line-number" data-line-number="289"></td>
+ <td id="LC289" class="blob-code blob-code-inner js-file-line">:1012000065E070E00E94EC0A8091E8008E778093A0 </td>
+ </tr>
+ <tr>
+ <td id="L290" class="blob-num js-line-number" data-line-number="290"></td>
+ <td id="LC290" class="blob-code blob-code-inner js-file-line">:10121000E8000895CF93DF93EC019091E6019430BC </td>
+ </tr>
+ <tr>
+ <td id="L291" class="blob-num js-line-number" data-line-number="291"></td>
+ <td id="LC291" class="blob-code blob-code-inner js-file-line">:1012200009F046C080910C018823D9F080910D010E </td>
+ </tr>
+ <tr>
+ <td id="L292" class="blob-num js-line-number" data-line-number="292"></td>
+ <td id="LC292" class="blob-code blob-code-inner js-file-line">:101230008823B9F09093E9008FEF9091E8008150F6 </td>
+ </tr>
+ <tr>
+ <td id="L293" class="blob-num js-line-number" data-line-number="293"></td>
+ <td id="LC293" class="blob-code blob-code-inner js-file-line">:1012400095FD06C095E19A95F1F700008111F5CF63 </td>
+ </tr>
+ <tr>
+ <td id="L294" class="blob-num js-line-number" data-line-number="294"></td>
+ <td id="LC294" class="blob-code blob-code-inner js-file-line">:101250008091E80085FF2CC040E050E060E170E044 </td>
+ </tr>
+ <tr>
+ <td id="L295" class="blob-num js-line-number" data-line-number="295"></td>
+ <td id="LC295" class="blob-code blob-code-inner js-file-line">:1012600017C081E08093E9008FEF9091E8008150F2 </td>
+ </tr>
+ <tr>
+ <td id="L296" class="blob-num js-line-number" data-line-number="296"></td>
+ <td id="LC296" class="blob-code blob-code-inner js-file-line">:1012700095FD06C095ED9A95F1F700008111F5CF27 </td>
+ </tr>
+ <tr>
+ <td id="L297" class="blob-num js-line-number" data-line-number="297"></td>
+ <td id="LC297" class="blob-code blob-code-inner js-file-line">:101280008091E80085FF14C040E050E068E070E025 </td>
+ </tr>
+ <tr>
+ <td id="L298" class="blob-num js-line-number" data-line-number="298"></td>
+ <td id="LC298" class="blob-code blob-code-inner js-file-line">:10129000CE010E94EC0A8091E8008E778093E800EE </td>
+ </tr>
+ <tr>
+ <td id="L299" class="blob-num js-line-number" data-line-number="299"></td>
+ <td id="LC299" class="blob-code blob-code-inner js-file-line">:1012A00080E1FE01A4E5B1E001900D928A95E1F79D </td>
+ </tr>
+ <tr>
+ <td id="L300" class="blob-num js-line-number" data-line-number="300"></td>
+ <td id="LC300" class="blob-code blob-code-inner js-file-line">:1012B000DF91CF9108958091E501811109C00E94CD </td>
+ </tr>
+ <tr>
+ <td id="L301" class="blob-num js-line-number" data-line-number="301"></td>
+ <td id="LC301" class="blob-code blob-code-inner js-file-line">:1012C000810C0E94DE0C8091E20084608093E20039 </td>
+ </tr>
+ <tr>
+ <td id="L302" class="blob-num js-line-number" data-line-number="302"></td>
+ <td id="LC302" class="blob-code blob-code-inner js-file-line">:1012D00008951092E501089508950C9487220E94C4 </td>
+ </tr>
+ <tr>
+ <td id="L303" class="blob-num js-line-number" data-line-number="303"></td>
+ <td id="LC303" class="blob-code blob-code-inner js-file-line">:1012E000E51B0E948D220E94840F0C947A0842E034 </td>
+ </tr>
+ <tr>
+ <td id="L304" class="blob-num js-line-number" data-line-number="304"></td>
+ <td id="LC304" class="blob-code blob-code-inner js-file-line">:1012F00061EC81E00E94FB0B42E061EC82E00E9425 </td>
+ </tr>
+ <tr>
+ <td id="L305" class="blob-num js-line-number" data-line-number="305"></td>
+ <td id="LC305" class="blob-code blob-code-inner js-file-line">:10130000FB0B42E061EC83E00E94FB0B42E161ECED </td>
+ </tr>
+ <tr>
+ <td id="L306" class="blob-num js-line-number" data-line-number="306"></td>
+ <td id="LC306" class="blob-code blob-code-inner js-file-line">:1013100084E00C94FB0B8091E801833009F455C004 </td>
+ </tr>
+ <tr>
+ <td id="L307" class="blob-num js-line-number" data-line-number="307"></td>
+ <td id="LC307" class="blob-code blob-code-inner js-file-line">:1013200030F4813071F0823009F48EC008958A3033 </td>
+ </tr>
+ <tr>
+ <td id="L308" class="blob-num js-line-number" data-line-number="308"></td>
+ <td id="LC308" class="blob-code blob-code-inner js-file-line">:1013300009F47AC08B3009F460C0893009F09CC090 </td>
+ </tr>
+ <tr>
+ <td id="L309" class="blob-num js-line-number" data-line-number="309"></td>
+ <td id="LC309" class="blob-code blob-code-inner js-file-line">:1013400020C08091E701813A09F096C08091E800C1 </td>
+ </tr>
+ <tr>
+ <td id="L310" class="blob-num js-line-number" data-line-number="310"></td>
+ <td id="LC310" class="blob-code blob-code-inner js-file-line">:10135000877F8093E8008091EB019091EC01892BCD </td>
+ </tr>
+ <tr>
+ <td id="L311" class="blob-num js-line-number" data-line-number="311"></td>
+ <td id="LC311" class="blob-code blob-code-inner js-file-line">:1013600021F460E184E591E003C060E080E090E07A </td>
+ </tr>
+ <tr>
+ <td id="L312" class="blob-num js-line-number" data-line-number="312"></td>
+ <td id="LC312" class="blob-code blob-code-inner js-file-line">:1013700070E00E94370B8091E8008B778093E80043 </td>
+ </tr>
+ <tr>
+ <td id="L313" class="blob-num js-line-number" data-line-number="313"></td>
+ <td id="LC313" class="blob-code blob-code-inner js-file-line">:1013800008958091E701813209F076C08091EB01E8 </td>
+ </tr>
+ <tr>
+ <td id="L314" class="blob-num js-line-number" data-line-number="314"></td>
+ <td id="LC314" class="blob-code blob-code-inner js-file-line">:101390009091EC01009719F0039709F06DC08091CE </td>
+ </tr>
+ <tr>
+ <td id="L315" class="blob-num js-line-number" data-line-number="315"></td>
+ <td id="LC315" class="blob-code blob-code-inner js-file-line">:1013A000E800877F8093E8008091E80082FD05C017 </td>
+ </tr>
+ <tr>
+ <td id="L316" class="blob-num js-line-number" data-line-number="316"></td>
+ <td id="LC316" class="blob-code blob-code-inner js-file-line">:1013B0008091E6018111F8CF5FC08091F1008093A8 </td>
+ </tr>
+ <tr>
+ <td id="L317" class="blob-num js-line-number" data-line-number="317"></td>
+ <td id="LC317" class="blob-code blob-code-inner js-file-line">:1013C00064018091E8008B7753C08091E701813AF6 </td>
+ </tr>
+ <tr>
+ <td id="L318" class="blob-num js-line-number" data-line-number="318"></td>
+ <td id="LC318" class="blob-code blob-code-inner js-file-line">:1013D00009F052C08091EB019091EC01892B09F04A </td>
+ </tr>
+ <tr>
+ <td id="L319" class="blob-num js-line-number" data-line-number="319"></td>
+ <td id="LC319" class="blob-code blob-code-inner js-file-line">:1013E0004BC08091E800877F8093E8008091E800FF </td>
+ </tr>
+ <tr>
+ <td id="L320" class="blob-num js-line-number" data-line-number="320"></td>
+ <td id="LC320" class="blob-code blob-code-inner js-file-line">:1013F00080FFFCCF80910C0136C08091E7018132E3 </td>
+ </tr>
+ <tr>
+ <td id="L321" class="blob-num js-line-number" data-line-number="321"></td>
+ <td id="LC321" class="blob-code blob-code-inner js-file-line">:10140000D9F58091EB019091EC01892BA9F58091A0 </td>
+ </tr>
+ <tr>
+ <td id="L322" class="blob-num js-line-number" data-line-number="322"></td>
+ <td id="LC322" class="blob-code blob-code-inner js-file-line">:10141000E800877F8093E8000E94300C8091E9010A </td>
+ </tr>
+ <tr>
+ <td id="L323" class="blob-num js-line-number" data-line-number="323"></td>
+ <td id="LC323" class="blob-code blob-code-inner js-file-line">:1014200080930C010C9414158091E701813221F511 </td>
+ </tr>
+ <tr>
+ <td id="L324" class="blob-num js-line-number" data-line-number="324"></td>
+ <td id="LC324" class="blob-code blob-code-inner js-file-line">:101430008091E800877F8093E8000E94300C8091C3 </td>
+ </tr>
+ <tr>
+ <td id="L325" class="blob-num js-line-number" data-line-number="325"></td>
+ <td id="LC325" class="blob-code blob-code-inner js-file-line">:10144000EA018093650108958091E701813AA1F452 </td>
+ </tr>
+ <tr>
+ <td id="L326" class="blob-num js-line-number" data-line-number="326"></td>
+ <td id="LC326" class="blob-code blob-code-inner js-file-line">:101450008091E800877F8093E8008091E80080FF1A </td>
+ </tr>
+ <tr>
+ <td id="L327" class="blob-num js-line-number" data-line-number="327"></td>
+ <td id="LC327" class="blob-code blob-code-inner js-file-line">:10146000FCCF809165018093F1008091E8008E7738 </td>
+ </tr>
+ <tr>
+ <td id="L328" class="blob-num js-line-number" data-line-number="328"></td>
+ <td id="LC328" class="blob-code blob-code-inner js-file-line">:101470008093E8000C94300C089584B7877F84BF74 </td>
+ </tr>
+ <tr>
+ <td id="L329" class="blob-num js-line-number" data-line-number="329"></td>
+ <td id="LC329" class="blob-code blob-code-inner js-file-line">:101480000FB6F894A8958091600088618093600001 </td>
+ </tr>
+ <tr>
+ <td id="L330" class="blob-num js-line-number" data-line-number="330"></td>
+ <td id="LC330" class="blob-code blob-code-inner js-file-line">:10149000109260000FBE90E080E80FB6F894809341 </td>
+ </tr>
+ <tr>
+ <td id="L331" class="blob-num js-line-number" data-line-number="331"></td>
+ <td id="LC331" class="blob-code blob-code-inner js-file-line">:1014A0006100909361000FBE0E94D30F0E94810CD7 </td>
+ </tr>
+ <tr>
+ <td id="L332" class="blob-num js-line-number" data-line-number="332"></td>
+ <td id="LC332" class="blob-code blob-code-inner js-file-line">:1014B0000E94DE0C8091E20084608093E2007894C8 </td>
+ </tr>
+ <tr>
+ <td id="L333" class="blob-num js-line-number" data-line-number="333"></td>
+ <td id="LC333" class="blob-code blob-code-inner js-file-line">:1014C0000E94640F0E94D50F82E091E00E947F0F7E </td>
+ </tr>
+ <tr>
+ <td id="L334" class="blob-num js-line-number" data-line-number="334"></td>
+ <td id="LC334" class="blob-code blob-code-inner js-file-line">:1014D0000E9475228091E601853069F40E94A31B69 </td>
+ </tr>
+ <tr>
+ <td id="L335" class="blob-num js-line-number" data-line-number="335"></td>
+ <td id="LC335" class="blob-code blob-code-inner js-file-line">:1014E0008091E4018823B1F30E94D11B882391F3FA </td>
+ </tr>
+ <tr>
+ <td id="L336" class="blob-num js-line-number" data-line-number="336"></td>
+ <td id="LC336" class="blob-code blob-code-inner js-file-line">:1014F0000E94D60AEFCF0E94DB0FECCF292F3327B3 </td>
+ </tr>
+ <tr>
+ <td id="L337" class="blob-num js-line-number" data-line-number="337"></td>
+ <td id="LC337" class="blob-code blob-code-inner js-file-line">:1015000023303105C9F064F42130310581F02230F7 </td>
+ </tr>
+ <tr>
+ <td id="L338" class="blob-num js-line-number" data-line-number="338"></td>
+ <td id="LC338" class="blob-code blob-code-inner js-file-line">:10151000310509F043C08DE690E020E133E042C0A0 </td>
+ </tr>
+ <tr>
+ <td id="L339" class="blob-num js-line-number" data-line-number="339"></td>
+ <td id="LC339" class="blob-code blob-code-inner js-file-line">:1015200021323105F1F02232310541F137C082E13B </td>
+ </tr>
+ <tr>
+ <td id="L340" class="blob-num js-line-number" data-line-number="340"></td>
+ <td id="LC340" class="blob-code blob-code-inner js-file-line">:1015300090E02DE733E036C099278130910541F0E6 </td>
+ </tr>
+ <tr>
+ <td id="L341" class="blob-num js-line-number" data-line-number="341"></td>
+ <td id="LC341" class="blob-code blob-code-inner js-file-line">:101540008230910541F0892B49F5ECE0F3E005C0CC </td>
+ </tr>
+ <tr>
+ <td id="L342" class="blob-num js-line-number" data-line-number="342"></td>
+ <td id="LC342" class="blob-code blob-code-inner js-file-line">:10155000E4EFF2E002C0ECEDF2E0849190E09F0154 </td>
+ </tr>
+ <tr>
+ <td id="L343" class="blob-num js-line-number" data-line-number="343"></td>
+ <td id="LC343" class="blob-code blob-code-inner js-file-line">:1015600021C06430D8F4E62FF0E0EE0FFF1FEE5DEF </td>
+ </tr>
+ <tr>
+ <td id="L344" class="blob-num js-line-number" data-line-number="344"></td>
+ <td id="LC344" class="blob-code blob-code-inner js-file-line">:10157000FE4F2081318189E090E014C0643070F426 </td>
+ </tr>
+ <tr>
+ <td id="L345" class="blob-num js-line-number" data-line-number="345"></td>
+ <td id="LC345" class="blob-code blob-code-inner js-file-line">:1015800070E0FB01EE0FFF1FE65EFE4F2081318110 </td>
+ </tr>
+ <tr>
+ <td id="L346" class="blob-num js-line-number" data-line-number="346"></td>
+ <td id="LC346" class="blob-code blob-code-inner js-file-line">:10159000FB01EA5EFE4F808190E004C080E090E0B5 </td>
+ </tr>
+ <tr>
+ <td id="L347" class="blob-num js-line-number" data-line-number="347"></td>
+ <td id="LC347" class="blob-code blob-code-inner js-file-line">:1015A00020E030E0FA0131832083089580E189BD95 </td>
+ </tr>
+ <tr>
+ <td id="L348" class="blob-num js-line-number" data-line-number="348"></td>
+ <td id="LC348" class="blob-code blob-code-inner js-file-line">:1015B00082E189BD09B400FEFDCF8091D8008F7D06 </td>
+ </tr>
+ <tr>
+ <td id="L349" class="blob-num js-line-number" data-line-number="349"></td>
+ <td id="LC349" class="blob-code blob-code-inner js-file-line">:1015C0008093D8008091E00082608093E000809159 </td>
+ </tr>
+ <tr>
+ <td id="L350" class="blob-num js-line-number" data-line-number="350"></td>
+ <td id="LC350" class="blob-code blob-code-inner js-file-line">:1015D000E00081FDFCCF0895CF92DF92EF92FF9261 </td>
+ </tr>
+ <tr>
+ <td id="L351" class="blob-num js-line-number" data-line-number="351"></td>
+ <td id="LC351" class="blob-code blob-code-inner js-file-line">:1015E0000F931F93CF93DF93EC018B016A010E944D </td>
+ </tr>
+ <tr>
+ <td id="L352" class="blob-num js-line-number" data-line-number="352"></td>
+ <td id="LC352" class="blob-code blob-code-inner js-file-line">:1015F0004F0C811133C0C114D10439F0F601808140 </td>
+ </tr>
+ <tr>
+ <td id="L353" class="blob-num js-line-number" data-line-number="353"></td>
+ <td id="LC353" class="blob-code blob-code-inner js-file-line">:101600009181081B190BC80FD91FE12CF12C011572 </td>
+ </tr>
+ <tr>
+ <td id="L354" class="blob-num js-line-number" data-line-number="354"></td>
+ <td id="LC354" class="blob-code blob-code-inner js-file-line">:10161000110519F18091E80085FD16C08091E80060 </td>
+ </tr>
+ <tr>
+ <td id="L355" class="blob-num js-line-number" data-line-number="355"></td>
+ <td id="LC355" class="blob-code blob-code-inner js-file-line">:101620008E778093E800C114D10449F0F6018081DF </td>
+ </tr>
+ <tr>
+ <td id="L356" class="blob-num js-line-number" data-line-number="356"></td>
+ <td id="LC356" class="blob-code blob-code-inner js-file-line">:101630009181E80EF91EF182E08285E00FC00E94E0 </td>
+ </tr>
+ <tr>
+ <td id="L357" class="blob-num js-line-number" data-line-number="357"></td>
+ <td id="LC357" class="blob-code blob-code-inner js-file-line">:101640004F0C882321F30AC089918093F100015047 </td>
+ </tr>
+ <tr>
+ <td id="L358" class="blob-num js-line-number" data-line-number="358"></td>
+ <td id="LC358" class="blob-code blob-code-inner js-file-line">:101650001109FFEFEF1AFF0ADACF80E0DF91CF9197 </td>
+ </tr>
+ <tr>
+ <td id="L359" class="blob-num js-line-number" data-line-number="359"></td>
+ <td id="LC359" class="blob-code blob-code-inner js-file-line">:101660001F910F91FF90EF90DF90CF900895209100 </td>
+ </tr>
+ <tr>
+ <td id="L360" class="blob-num js-line-number" data-line-number="360"></td>
+ <td id="LC360" class="blob-code blob-code-inner js-file-line">:10167000ED013091EE012617370748F0611571052D </td>
+ </tr>
+ <tr>
+ <td id="L361" class="blob-num js-line-number" data-line-number="361"></td>
+ <td id="LC361" class="blob-code blob-code-inner js-file-line">:1016800039F42091E8002E772093E80001C0B901D9 </td>
+ </tr>
+ <tr>
+ <td id="L362" class="blob-num js-line-number" data-line-number="362"></td>
+ <td id="LC362" class="blob-code blob-code-inner js-file-line">:1016900040E061157105A9F12091E601222309F4CA </td>
+ </tr>
+ <tr>
+ <td id="L363" class="blob-num js-line-number" data-line-number="363"></td>
+ <td id="LC363" class="blob-code blob-code-inner js-file-line">:1016A00043C0253009F442C02091E80023FD40C02A </td>
+ </tr>
+ <tr>
+ <td id="L364" class="blob-num js-line-number" data-line-number="364"></td>
+ <td id="LC364" class="blob-code blob-code-inner js-file-line">:1016B0002091E80022FD32C02091E80020FFE9CF10 </td>
+ </tr>
+ <tr>
+ <td id="L365" class="blob-num js-line-number" data-line-number="365"></td>
+ <td id="LC365" class="blob-code blob-code-inner js-file-line">:1016C0004091F3002091F20030E0342BFC01CF0177 </td>
+ </tr>
+ <tr>
+ <td id="L366" class="blob-num js-line-number" data-line-number="366"></td>
+ <td id="LC366" class="blob-code blob-code-inner js-file-line">:1016D0006115710559F02830310540F481918093EE </td>
+ </tr>
+ <tr>
+ <td id="L367" class="blob-num js-line-number" data-line-number="367"></td>
+ <td id="LC367" class="blob-code blob-code-inner js-file-line">:1016E000F100615071092F5F3F4FF1CF41E0283089 </td>
+ </tr>
+ <tr>
+ <td id="L368" class="blob-num js-line-number" data-line-number="368"></td>
+ <td id="LC368" class="blob-code blob-code-inner js-file-line">:1016F000310509F040E02091E8002E772093E800C2 </td>
+ </tr>
+ <tr>
+ <td id="L369" class="blob-num js-line-number" data-line-number="369"></td>
+ <td id="LC369" class="blob-code blob-code-inner js-file-line">:10170000C8CF4111C9CF0AC08091E601882361F09A </td>
+ </tr>
+ <tr>
+ <td id="L370" class="blob-num js-line-number" data-line-number="370"></td>
+ <td id="LC370" class="blob-code blob-code-inner js-file-line">:10171000853061F08091E80083FD0AC08091E80087 </td>
+ </tr>
+ <tr>
+ <td id="L371" class="blob-num js-line-number" data-line-number="371"></td>
+ <td id="LC371" class="blob-code blob-code-inner js-file-line">:1017200082FFF2CF80E0089582E0089583E008957B </td>
+ </tr>
+ <tr>
+ <td id="L372" class="blob-num js-line-number" data-line-number="372"></td>
+ <td id="LC372" class="blob-code blob-code-inner js-file-line">:1017300081E008952091ED013091EE0126173707E1 </td>
+ </tr>
+ <tr>
+ <td id="L373" class="blob-num js-line-number" data-line-number="373"></td>
+ <td id="LC373" class="blob-code blob-code-inner js-file-line">:1017400048F06115710539F42091E8002E77209357 </td>
+ </tr>
+ <tr>
+ <td id="L374" class="blob-num js-line-number" data-line-number="374"></td>
+ <td id="LC374" class="blob-code blob-code-inner js-file-line">:10175000E80001C0B901FC0120E06115710591F1BB </td>
+ </tr>
+ <tr>
+ <td id="L375" class="blob-num js-line-number" data-line-number="375"></td>
+ <td id="LC375" class="blob-code blob-code-inner js-file-line">:101760008091E601882309F440C0853009F43FC028 </td>
+ </tr>
+ <tr>
+ <td id="L376" class="blob-num js-line-number" data-line-number="376"></td>
+ <td id="LC376" class="blob-code blob-code-inner js-file-line">:101770008091E80083FD3DC08091E80082FD2FC08C </td>
+ </tr>
+ <tr>
+ <td id="L377" class="blob-num js-line-number" data-line-number="377"></td>
+ <td id="LC377" class="blob-code blob-code-inner js-file-line">:101780008091E80080FFE9CF2091F3008091F20082 </td>
+ </tr>
+ <tr>
+ <td id="L378" class="blob-num js-line-number" data-line-number="378"></td>
+ <td id="LC378" class="blob-code blob-code-inner js-file-line">:1017900090E0922B6115710559F08830910540F465 </td>
+ </tr>
+ <tr>
+ <td id="L379" class="blob-num js-line-number" data-line-number="379"></td>
+ <td id="LC379" class="blob-code blob-code-inner js-file-line">:1017A00024912093F1003196615071090196F2CF96 </td>
+ </tr>
+ <tr>
+ <td id="L380" class="blob-num js-line-number" data-line-number="380"></td>
+ <td id="LC380" class="blob-code blob-code-inner js-file-line">:1017B00021E0089709F020E08091E8008E7780937F </td>
+ </tr>
+ <tr>
+ <td id="L381" class="blob-num js-line-number" data-line-number="381"></td>
+ <td id="LC381" class="blob-code blob-code-inner js-file-line">:1017C000E800CBCF2111CCCF0AC08091E60188235D </td>
+ </tr>
+ <tr>
+ <td id="L382" class="blob-num js-line-number" data-line-number="382"></td>
+ <td id="LC382" class="blob-code blob-code-inner js-file-line">:1017D00061F0853061F08091E80083FD0AC080915E </td>
+ </tr>
+ <tr>
+ <td id="L383" class="blob-num js-line-number" data-line-number="383"></td>
+ <td id="LC383" class="blob-code blob-code-inner js-file-line">:1017E000E80082FFF2CF80E0089582E0089583E070 </td>
+ </tr>
+ <tr>
+ <td id="L384" class="blob-num js-line-number" data-line-number="384"></td>
+ <td id="LC384" class="blob-code blob-code-inner js-file-line">:1017F000089581E00895982F973058F59093E90067 </td>
+ </tr>
+ <tr>
+ <td id="L385" class="blob-num js-line-number" data-line-number="385"></td>
+ <td id="LC385" class="blob-code blob-code-inner js-file-line">:10180000981739F07091EC002091ED005091F000A4 </td>
+ </tr>
+ <tr>
+ <td id="L386" class="blob-num js-line-number" data-line-number="386"></td>
+ <td id="LC386" class="blob-code blob-code-inner js-file-line">:1018100003C0242F762F50E021FF19C03091EB0038 </td>
+ </tr>
+ <tr>
+ <td id="L387" class="blob-num js-line-number" data-line-number="387"></td>
+ <td id="LC387" class="blob-code blob-code-inner js-file-line">:101820003E7F3093EB003091ED003D7F3093ED0033 </td>
+ </tr>
+ <tr>
+ <td id="L388" class="blob-num js-line-number" data-line-number="388"></td>
+ <td id="LC388" class="blob-code blob-code-inner js-file-line">:101830003091EB0031603093EB007093EC0020931B </td>
+ </tr>
+ <tr>
+ <td id="L389" class="blob-num js-line-number" data-line-number="389"></td>
+ <td id="LC389" class="blob-code blob-code-inner js-file-line">:10184000ED005093F0002091EE0027FF07C09F5F4E </td>
+ </tr>
+ <tr>
+ <td id="L390" class="blob-num js-line-number" data-line-number="390"></td>
+ <td id="LC390" class="blob-code blob-code-inner js-file-line">:10185000D3CF8F708093E90081E0089580E00895F0 </td>
+ </tr>
+ <tr>
+ <td id="L391" class="blob-num js-line-number" data-line-number="391"></td>
+ <td id="LC391" class="blob-code blob-code-inner js-file-line">:101860008091E70187FF11C08091E80082FD05C0EB </td>
+ </tr>
+ <tr>
+ <td id="L392" class="blob-num js-line-number" data-line-number="392"></td>
+ <td id="LC392" class="blob-code blob-code-inner js-file-line">:101870008091E6018111F8CF11C08091E8008B774B </td>
+ </tr>
+ <tr>
+ <td id="L393" class="blob-num js-line-number" data-line-number="393"></td>
+ <td id="LC393" class="blob-code blob-code-inner js-file-line">:101880000BC08091E601882349F08091E80080FF39 </td>
+ </tr>
+ <tr>
+ <td id="L394" class="blob-num js-line-number" data-line-number="394"></td>
+ <td id="LC394" class="blob-code blob-code-inner js-file-line">:10189000F8CF8091E8008E778093E800089520913A </td>
+ </tr>
+ <tr>
+ <td id="L395" class="blob-num js-line-number" data-line-number="395"></td>
+ <td id="LC395" class="blob-code blob-code-inner js-file-line">:1018A000E4003091E50095E64091EC00842F8170D2 </td>
+ </tr>
+ <tr>
+ <td id="L396" class="blob-num js-line-number" data-line-number="396"></td>
+ <td id="LC396" class="blob-code blob-code-inner js-file-line">:1018B00040FF22C08091E80080FD1CC08091E601BD </td>
+ </tr>
+ <tr>
+ <td id="L397" class="blob-num js-line-number" data-line-number="397"></td>
+ <td id="LC397" class="blob-code blob-code-inner js-file-line">:1018C000882391F0853091F08091EB0085FD10C068 </td>
+ </tr>
+ <tr>
+ <td id="L398" class="blob-num js-line-number" data-line-number="398"></td>
+ <td id="LC398" class="blob-code blob-code-inner js-file-line">:1018D0004091E4005091E5004217530729F39A0123 </td>
+ </tr>
+ <tr>
+ <td id="L399" class="blob-num js-line-number" data-line-number="399"></td>
+ <td id="LC399" class="blob-code blob-code-inner js-file-line">:1018E000915011F784E0089582E0089583E008950F </td>
+ </tr>
+ <tr>
+ <td id="L400" class="blob-num js-line-number" data-line-number="400"></td>
+ <td id="LC400" class="blob-code blob-code-inner js-file-line">:1018F00081E0089580E008954091E80042FFDECF46 </td>
+ </tr>
+ <tr>
+ <td id="L401" class="blob-num js-line-number" data-line-number="401"></td>
+ <td id="LC401" class="blob-code blob-code-inner js-file-line">:1019000008950E94EF0C0E94F70CE0EEF0E0808159 </td>
+ </tr>
+ <tr>
+ <td id="L402" class="blob-num js-line-number" data-line-number="402"></td>
+ <td id="LC402" class="blob-code blob-code-inner js-file-line">:1019100081608083E8EDF0E080818F77808319BC5F </td>
+ </tr>
+ <tr>
+ <td id="L403" class="blob-num js-line-number" data-line-number="403"></td>
+ <td id="LC403" class="blob-code blob-code-inner js-file-line">:10192000A7EDB0E08C918E7F8C9380818F7E808339 </td>
+ </tr>
+ <tr>
+ <td id="L404" class="blob-num js-line-number" data-line-number="404"></td>
+ <td id="LC404" class="blob-code blob-code-inner js-file-line">:101930001092E50108950F931F93CF93DF930E94B8 </td>
+ </tr>
+ <tr>
+ <td id="L405" class="blob-num js-line-number" data-line-number="405"></td>
+ <td id="LC405" class="blob-code blob-code-inner js-file-line">:10194000EF0C0E94F70CC8EDD0E088818F77888378 </td>
+ </tr>
+ <tr>
+ <td id="L406" class="blob-num js-line-number" data-line-number="406"></td>
+ <td id="LC406" class="blob-code blob-code-inner js-file-line">:1019500088818068888388818F7D888319BC1092F4 </td>
+ </tr>
+ <tr>
+ <td id="L407" class="blob-num js-line-number" data-line-number="407"></td>
+ <td id="LC407" class="blob-code blob-code-inner js-file-line">:10196000E6011092E2011092E4011092E30100EE10 </td>
+ </tr>
+ <tr>
+ <td id="L408" class="blob-num js-line-number" data-line-number="408"></td>
+ <td id="LC408" class="blob-code blob-code-inner js-file-line">:1019700010E0F80180818B7F80838881816088837B </td>
+ </tr>
+ <tr>
+ <td id="L409" class="blob-num js-line-number" data-line-number="409"></td>
+ <td id="LC409" class="blob-code blob-code-inner js-file-line">:1019800042E060E080E00E94FB0BE1EEF0E080814D </td>
+ </tr>
+ <tr>
+ <td id="L410" class="blob-num js-line-number" data-line-number="410"></td>
+ <td id="LC410" class="blob-code blob-code-inner js-file-line">:101990008E7F8083E2EEF0E08081816080838081B1 </td>
+ </tr>
+ <tr>
+ <td id="L411" class="blob-num js-line-number" data-line-number="411"></td>
+ <td id="LC411" class="blob-code blob-code-inner js-file-line">:1019A00088608083F80180818E7F80838881806158 </td>
+ </tr>
+ <tr>
+ <td id="L412" class="blob-num js-line-number" data-line-number="412"></td>
+ <td id="LC412" class="blob-code blob-code-inner js-file-line">:1019B0008883DF91CF911F910F910895E8EDF0E0BA </td>
+ </tr>
+ <tr>
+ <td id="L413" class="blob-num js-line-number" data-line-number="413"></td>
+ <td id="LC413" class="blob-code blob-code-inner js-file-line">:1019C00080818F7E8083E7EDF0E08081816080837D </td>
+ </tr>
+ <tr>
+ <td id="L414" class="blob-num js-line-number" data-line-number="414"></td>
+ <td id="LC414" class="blob-code blob-code-inner js-file-line">:1019D00084E082BF81E08093E5010C949B0CE8EDEC </td>
+ </tr>
+ <tr>
+ <td id="L415" class="blob-num js-line-number" data-line-number="415"></td>
+ <td id="LC415" class="blob-code blob-code-inner js-file-line">:1019E000F0E080818E7F80831092E2000895109253 </td>
+ </tr>
+ <tr>
+ <td id="L416" class="blob-num js-line-number" data-line-number="416"></td>
+ <td id="LC416" class="blob-code blob-code-inner js-file-line">:1019F000DA001092E10008951F920F920FB60F9235 </td>
+ </tr>
+ <tr>
+ <td id="L417" class="blob-num js-line-number" data-line-number="417"></td>
+ <td id="LC417" class="blob-code blob-code-inner js-file-line">:101A000011242F933F934F935F936F937F938F9303 </td>
+ </tr>
+ <tr>
+ <td id="L418" class="blob-num js-line-number" data-line-number="418"></td>
+ <td id="LC418" class="blob-code blob-code-inner js-file-line">:101A10009F93AF93BF93EF93FF938091E10082FF79 </td>
+ </tr>
+ <tr>
+ <td id="L419" class="blob-num js-line-number" data-line-number="419"></td>
+ <td id="LC419" class="blob-code blob-code-inner js-file-line">:101A20000BC08091E20082FF07C08091E1008B7FB4 </td>
+ </tr>
+ <tr>
+ <td id="L420" class="blob-num js-line-number" data-line-number="420"></td>
+ <td id="LC420" class="blob-code blob-code-inner js-file-line">:101A30008093E1000E94630F8091DA0080FF1FC055 </td>
+ </tr>
+ <tr>
+ <td id="L421" class="blob-num js-line-number" data-line-number="421"></td>
+ <td id="LC421" class="blob-code blob-code-inner js-file-line">:101A40008091D80080FF1BC08091DA008E7F809348 </td>
+ </tr>
+ <tr>
+ <td id="L422" class="blob-num js-line-number" data-line-number="422"></td>
+ <td id="LC422" class="blob-code blob-code-inner js-file-line">:101A5000DA008091D90080FF0DC080E189BD82E16C </td>
+ </tr>
+ <tr>
+ <td id="L423" class="blob-num js-line-number" data-line-number="423"></td>
+ <td id="LC423" class="blob-code blob-code-inner js-file-line">:101A600089BD09B400FEFDCF81E08093E6010E94AC </td>
+ </tr>
+ <tr>
+ <td id="L424" class="blob-num js-line-number" data-line-number="424"></td>
+ <td id="LC424" class="blob-code blob-code-inner js-file-line">:101A70005B0905C019BC1092E6010E9469098091BA </td>
+ </tr>
+ <tr>
+ <td id="L425" class="blob-num js-line-number" data-line-number="425"></td>
+ <td id="LC425" class="blob-code blob-code-inner js-file-line">:101A8000E10080FF19C08091E20080FF15C08091C5 </td>
+ </tr>
+ <tr>
+ <td id="L426" class="blob-num js-line-number" data-line-number="426"></td>
+ <td id="LC426" class="blob-code blob-code-inner js-file-line">:101A9000E2008E7F8093E2008091E200806180937B </td>
+ </tr>
+ <tr>
+ <td id="L427" class="blob-num js-line-number" data-line-number="427"></td>
+ <td id="LC427" class="blob-code blob-code-inner js-file-line">:101AA000E2008091D80080628093D80019BC85E064 </td>
+ </tr>
+ <tr>
+ <td id="L428" class="blob-num js-line-number" data-line-number="428"></td>
+ <td id="LC428" class="blob-code blob-code-inner js-file-line">:101AB0008093E6010E946D098091E10084FF30C0AF </td>
+ </tr>
+ <tr>
+ <td id="L429" class="blob-num js-line-number" data-line-number="429"></td>
+ <td id="LC429" class="blob-code blob-code-inner js-file-line">:101AC0008091E20084FF2CC080E189BD82E189BD64 </td>
+ </tr>
+ <tr>
+ <td id="L430" class="blob-num js-line-number" data-line-number="430"></td>
+ <td id="LC430" class="blob-code blob-code-inner js-file-line">:101AD00009B400FEFDCF8091D8008F7D8093D8009F </td>
+ </tr>
+ <tr>
+ <td id="L431" class="blob-num js-line-number" data-line-number="431"></td>
+ <td id="LC431" class="blob-code blob-code-inner js-file-line">:101AE0008091E1008F7E8093E1008091E2008F7E03 </td>
+ </tr>
+ <tr>
+ <td id="L432" class="blob-num js-line-number" data-line-number="432"></td>
+ <td id="LC432" class="blob-code blob-code-inner js-file-line">:101AF0008093E2008091E20081608093E200809117 </td>
+ </tr>
+ <tr>
+ <td id="L433" class="blob-num js-line-number" data-line-number="433"></td>
+ <td id="LC433" class="blob-code blob-code-inner js-file-line">:101B0000E201882311F084E007C08091E30087FDA3 </td>
+ </tr>
+ <tr>
+ <td id="L434" class="blob-num js-line-number" data-line-number="434"></td>
+ <td id="LC434" class="blob-code blob-code-inner js-file-line">:101B100002C081E001C083E08093E6010E946F096A </td>
+ </tr>
+ <tr>
+ <td id="L435" class="blob-num js-line-number" data-line-number="435"></td>
+ <td id="LC435" class="blob-code blob-code-inner js-file-line">:101B20008091E10083FF29C08091E20083FF25C0FE </td>
+ </tr>
+ <tr>
+ <td id="L436" class="blob-num js-line-number" data-line-number="436"></td>
+ <td id="LC436" class="blob-code blob-code-inner js-file-line">:101B30008091E100877F8093E10082E08093E6015D </td>
+ </tr>
+ <tr>
+ <td id="L437" class="blob-num js-line-number" data-line-number="437"></td>
+ <td id="LC437" class="blob-code blob-code-inner js-file-line">:101B40001092E2018091E1008E7F8093E10080910C </td>
+ </tr>
+ <tr>
+ <td id="L438" class="blob-num js-line-number" data-line-number="438"></td>
+ <td id="LC438" class="blob-code blob-code-inner js-file-line">:101B5000E2008E7F8093E2008091E20080618093BA </td>
+ </tr>
+ <tr>
+ <td id="L439" class="blob-num js-line-number" data-line-number="439"></td>
+ <td id="LC439" class="blob-code blob-code-inner js-file-line">:101B6000E20042E060E080E00E94FB0B8091F00028 </td>
+ </tr>
+ <tr>
+ <td id="L440" class="blob-num js-line-number" data-line-number="440"></td>
+ <td id="LC440" class="blob-code blob-code-inner js-file-line">:101B700088608093F0000E946C09FF91EF91BF9103 </td>
+ </tr>
+ <tr>
+ <td id="L441" class="blob-num js-line-number" data-line-number="441"></td>
+ <td id="LC441" class="blob-code blob-code-inner js-file-line">:101B8000AF919F918F917F916F915F914F913F9115 </td>
+ </tr>
+ <tr>
+ <td id="L442" class="blob-num js-line-number" data-line-number="442"></td>
+ <td id="LC442" class="blob-code blob-code-inner js-file-line">:101B90002F910F900FBE0F901F9018951F920F92CC </td>
+ </tr>
+ <tr>
+ <td id="L443" class="blob-num js-line-number" data-line-number="443"></td>
+ <td id="LC443" class="blob-code blob-code-inner js-file-line">:101BA0000FB60F9211242F933F934F935F936F9330 </td>
+ </tr>
+ <tr>
+ <td id="L444" class="blob-num js-line-number" data-line-number="444"></td>
+ <td id="LC444" class="blob-code blob-code-inner js-file-line">:101BB0007F938F939F93AF93BF93CF93DF93EF93D5 </td>
+ </tr>
+ <tr>
+ <td id="L445" class="blob-num js-line-number" data-line-number="445"></td>
+ <td id="LC445" class="blob-code blob-code-inner js-file-line">:101BC000FF93C091E900CF708091EC00D82FD170C5 </td>
+ </tr>
+ <tr>
+ <td id="L446" class="blob-num js-line-number" data-line-number="446"></td>
+ <td id="LC446" class="blob-code blob-code-inner js-file-line">:101BD00080FDD0E81092E9008091F000877F80932B </td>
+ </tr>
+ <tr>
+ <td id="L447" class="blob-num js-line-number" data-line-number="447"></td>
+ <td id="LC447" class="blob-code blob-code-inner js-file-line">:101BE000F00078940E94120E1092E9008091F000AB </td>
+ </tr>
+ <tr>
+ <td id="L448" class="blob-num js-line-number" data-line-number="448"></td>
+ <td id="LC448" class="blob-code blob-code-inner js-file-line">:101BF00088608093F000CD2BCF70C093E900FF91F7 </td>
+ </tr>
+ <tr>
+ <td id="L449" class="blob-num js-line-number" data-line-number="449"></td>
+ <td id="LC449" class="blob-code blob-code-inner js-file-line">:101C0000EF91DF91CF91BF91AF919F918F917F9194 </td>
+ </tr>
+ <tr>
+ <td id="L450" class="blob-num js-line-number" data-line-number="450"></td>
+ <td id="LC450" class="blob-code blob-code-inner js-file-line">:101C10006F915F914F913F912F910F900FBE0F9059 </td>
+ </tr>
+ <tr>
+ <td id="L451" class="blob-num js-line-number" data-line-number="451"></td>
+ <td id="LC451" class="blob-code blob-code-inner js-file-line">:101C20001F9018951F93CF93DF93CDB7DEB7AA9778 </td>
+ </tr>
+ <tr>
+ <td id="L452" class="blob-num js-line-number" data-line-number="452"></td>
+ <td id="LC452" class="blob-code blob-code-inner js-file-line">:101C30000FB6F894DEBF0FBECDBFE7EEF1E088E04F </td>
+ </tr>
+ <tr>
+ <td id="L453" class="blob-num js-line-number" data-line-number="453"></td>
+ <td id="LC453" class="blob-code blob-code-inner js-file-line">:101C40008E0F9091F10091938E13FBCF0E948B0920 </td>
+ </tr>
+ <tr>
+ <td id="L454" class="blob-num js-line-number" data-line-number="454"></td>
+ <td id="LC454" class="blob-code blob-code-inner js-file-line">:101C50008091E80083FF1FC18091E7019091E80126 </td>
+ </tr>
+ <tr>
+ <td id="L455" class="blob-num js-line-number" data-line-number="455"></td>
+ <td id="LC455" class="blob-code blob-code-inner js-file-line">:101C6000492F50E04A30510508F015C1FA01EA5AEF </td>
+ </tr>
+ <tr>
+ <td id="L456" class="blob-num js-line-number" data-line-number="456"></td>
+ <td id="LC456" class="blob-code blob-code-inner js-file-line">:101C7000FF4F0C941E24803881F0823809F00BC18C </td>
+ </tr>
+ <tr>
+ <td id="L457" class="blob-num js-line-number" data-line-number="457"></td>
+ <td id="LC457" class="blob-code blob-code-inner js-file-line">:101C80008091EB018F708093E9008091EB0085FBE0 </td>
+ </tr>
+ <tr>
+ <td id="L458" class="blob-num js-line-number" data-line-number="458"></td>
+ <td id="LC458" class="blob-code blob-code-inner js-file-line">:101C9000882780F91092E90006C08091E3019091B5 </td>
+ </tr>
+ <tr>
+ <td id="L459" class="blob-num js-line-number" data-line-number="459"></td>
+ <td id="LC459" class="blob-code blob-code-inner js-file-line">:101CA000E401911182609091E800977F9093E800A1 </td>
+ </tr>
+ <tr>
+ <td id="L460" class="blob-num js-line-number" data-line-number="460"></td>
+ <td id="LC460" class="blob-code blob-code-inner js-file-line">:101CB0008093F1001092F100C8C0282F2D7F09F009 </td>
+ </tr>
+ <tr>
+ <td id="L461" class="blob-num js-line-number" data-line-number="461"></td>
+ <td id="LC461" class="blob-code blob-code-inner js-file-line">:101CC000EAC0882319F0823061F0E5C08091E90113 </td>
+ </tr>
+ <tr>
+ <td id="L462" class="blob-num js-line-number" data-line-number="462"></td>
+ <td id="LC462" class="blob-code blob-code-inner js-file-line">:101CD000813009F0E0C0933009F080E08093E401A6 </td>
+ </tr>
+ <tr>
+ <td id="L463" class="blob-num js-line-number" data-line-number="463"></td>
+ <td id="LC463" class="blob-code blob-code-inner js-file-line">:101CE0002BC08091E901811127C08091EB018F7099 </td>
+ </tr>
+ <tr>
+ <td id="L464" class="blob-num js-line-number" data-line-number="464"></td>
+ <td id="LC464" class="blob-code blob-code-inner js-file-line">:101CF00009F4D1C08093E9002091EB0020FF1CC0C3 </td>
+ </tr>
+ <tr>
+ <td id="L465" class="blob-num js-line-number" data-line-number="465"></td>
+ <td id="LC465" class="blob-code blob-code-inner js-file-line">:101D0000933021F48091EB00806214C09091EB003D </td>
+ </tr>
+ <tr>
+ <td id="L466" class="blob-num js-line-number" data-line-number="466"></td>
+ <td id="LC466" class="blob-code blob-code-inner js-file-line">:101D100090619093EB0021E030E0A90102C0440FF4 </td>
+ </tr>
+ <tr>
+ <td id="L467" class="blob-num js-line-number" data-line-number="467"></td>
+ <td id="LC467" class="blob-code blob-code-inner js-file-line">:101D2000551F8A95E2F74093EA001092EA008091ED </td>
+ </tr>
+ <tr>
+ <td id="L468" class="blob-num js-line-number" data-line-number="468"></td>
+ <td id="LC468" class="blob-code blob-code-inner js-file-line">:101D3000EB0088608093EB001092E9008091E8004E </td>
+ </tr>
+ <tr>
+ <td id="L469" class="blob-num js-line-number" data-line-number="469"></td>
+ <td id="LC469" class="blob-code blob-code-inner js-file-line">:101D4000877F86C08111A7C01091E9011F7780911C </td>
+ </tr>
+ <tr>
+ <td id="L470" class="blob-num js-line-number" data-line-number="470"></td>
+ <td id="LC470" class="blob-code blob-code-inner js-file-line">:101D5000E3008078812B8093E3008091E800877F07 </td>
+ </tr>
+ <tr>
+ <td id="L471" class="blob-num js-line-number" data-line-number="471"></td>
+ <td id="LC471" class="blob-code blob-code-inner js-file-line">:101D60008093E8000E94300C8091E80080FFFCCF57 </td>
+ </tr>
+ <tr>
+ <td id="L472" class="blob-num js-line-number" data-line-number="472"></td>
+ <td id="LC472" class="blob-code blob-code-inner js-file-line">:101D70008091E30080688093E300111102C082E04B </td>
+ </tr>
+ <tr>
+ <td id="L473" class="blob-num js-line-number" data-line-number="473"></td>
+ <td id="LC473" class="blob-code blob-code-inner js-file-line">:101D800001C083E08093E60186C08058823008F06D </td>
+ </tr>
+ <tr>
+ <td id="L474" class="blob-num js-line-number" data-line-number="474"></td>
+ <td id="LC474" class="blob-code blob-code-inner js-file-line">:101D900082C08091E9019091EA018C3D53E0950762 </td>
+ </tr>
+ <tr>
+ <td id="L475" class="blob-num js-line-number" data-line-number="475"></td>
+ <td id="LC475" class="blob-code blob-code-inner js-file-line">:101DA00079F583E08A838AE289834FB7F894DE016C </td>
+ </tr>
+ <tr>
+ <td id="L476" class="blob-num js-line-number" data-line-number="476"></td>
+ <td id="LC476" class="blob-code blob-code-inner js-file-line">:101DB000139620E03EE051E2E32FF0E0509357000D </td>
+ </tr>
+ <tr>
+ <td id="L477" class="blob-num js-line-number" data-line-number="477"></td>
+ <td id="LC477" class="blob-code blob-code-inner js-file-line">:101DC000E49120FF03C0E295EF703F5FEF708E2F2C </td>
+ </tr>
+ <tr>
+ <td id="L478" class="blob-num js-line-number" data-line-number="478"></td>
+ <td id="LC478" class="blob-code blob-code-inner js-file-line">:101DD00090E0EA3010F0C79601C0C0968D939D93B5 </td>
+ </tr>
+ <tr>
+ <td id="L479" class="blob-num js-line-number" data-line-number="479"></td>
+ <td id="LC479" class="blob-code blob-code-inner js-file-line">:101DE0002F5F243149F74FBF8091E800877F8093B0 </td>
+ </tr>
+ <tr>
+ <td id="L480" class="blob-num js-line-number" data-line-number="480"></td>
+ <td id="LC480" class="blob-code blob-code-inner js-file-line">:101DF000E8006AE270E0CE0101960E94370B14C041 </td>
+ </tr>
+ <tr>
+ <td id="L481" class="blob-num js-line-number" data-line-number="481"></td>
+ <td id="LC481" class="blob-code blob-code-inner js-file-line">:101E0000AE014F5F5F4F6091EB010E947E0ABC0103 </td>
+ </tr>
+ <tr>
+ <td id="L482" class="blob-num js-line-number" data-line-number="482"></td>
+ <td id="LC482" class="blob-code blob-code-inner js-file-line">:101E1000892B09F440C09091E800977F9093E800E7 </td>
+ </tr>
+ <tr>
+ <td id="L483" class="blob-num js-line-number" data-line-number="483"></td>
+ <td id="LC483" class="blob-code blob-code-inner js-file-line">:101E200089819A810E949A0B8091E8008B77809338 </td>
+ </tr>
+ <tr>
+ <td id="L484" class="blob-num js-line-number" data-line-number="484"></td>
+ <td id="LC484" class="blob-code blob-code-inner js-file-line">:101E3000E80031C0803879F58091E800877F809391 </td>
+ </tr>
+ <tr>
+ <td id="L485" class="blob-num js-line-number" data-line-number="485"></td>
+ <td id="LC485" class="blob-code blob-code-inner js-file-line">:101E4000E8008091E2018093F1008091E8008E77B4 </td>
+ </tr>
+ <tr>
+ <td id="L486" class="blob-num js-line-number" data-line-number="486"></td>
+ <td id="LC486" class="blob-code blob-code-inner js-file-line">:101E50008093E8000E94300C1EC081111CC090913C </td>
+ </tr>
+ <tr>
+ <td id="L487" class="blob-num js-line-number" data-line-number="487"></td>
+ <td id="LC487" class="blob-code blob-code-inner js-file-line">:101E6000E9019230C0F48091E800877F8093E80018 </td>
+ </tr>
+ <tr>
+ <td id="L488" class="blob-num js-line-number" data-line-number="488"></td>
+ <td id="LC488" class="blob-code blob-code-inner js-file-line">:101E70009093E2010E94300C8091E201811106C032 </td>
+ </tr>
+ <tr>
+ <td id="L489" class="blob-num js-line-number" data-line-number="489"></td>
+ <td id="LC489" class="blob-code blob-code-inner js-file-line">:101E80008091E30087FD02C081E001C084E080937F </td>
+ </tr>
+ <tr>
+ <td id="L490" class="blob-num js-line-number" data-line-number="490"></td>
+ <td id="LC490" class="blob-code blob-code-inner js-file-line">:101E9000E6010E9477098091E80083FF0AC08091E3 </td>
+ </tr>
+ <tr>
+ <td id="L491" class="blob-num js-line-number" data-line-number="491"></td>
+ <td id="LC491" class="blob-code blob-code-inner js-file-line">:101EA000E800877F8093E8008091EB008062809358 </td>
+ </tr>
+ <tr>
+ <td id="L492" class="blob-num js-line-number" data-line-number="492"></td>
+ <td id="LC492" class="blob-code blob-code-inner js-file-line">:101EB000EB00AA960FB6F894DEBF0FBECDBFDF9140 </td>
+ </tr>
+ <tr>
+ <td id="L493" class="blob-num js-line-number" data-line-number="493"></td>
+ <td id="LC493" class="blob-code blob-code-inner js-file-line">:101EC000CF911F9108950895CF938091E6018823C3 </td>
+ </tr>
+ <tr>
+ <td id="L494" class="blob-num js-line-number" data-line-number="494"></td>
+ <td id="LC494" class="blob-code blob-code-inner js-file-line">:101ED000A1F0C091E900CF709091EC00892F817042 </td>
+ </tr>
+ <tr>
+ <td id="L495" class="blob-num js-line-number" data-line-number="495"></td>
+ <td id="LC495" class="blob-code blob-code-inner js-file-line">:101EE00090FD80E8C82B1092E9008091E80083FD06 </td>
+ </tr>
+ <tr>
+ <td id="L496" class="blob-num js-line-number" data-line-number="496"></td>
+ <td id="LC496" class="blob-code blob-code-inner js-file-line">:101EF0000E94120ECF70C093E900CF910895909385 </td>
+ </tr>
+ <tr>
+ <td id="L497" class="blob-num js-line-number" data-line-number="497"></td>
+ <td id="LC497" class="blob-code blob-code-inner js-file-line">:101F00006B0180936A010895E0916A01F0916B0181 </td>
+ </tr>
+ <tr>
+ <td id="L498" class="blob-num js-line-number" data-line-number="498"></td>
+ <td id="LC498" class="blob-code blob-code-inner js-file-line">:101F1000309721F00190F081E02D099480E0089540 </td>
+ </tr>
+ <tr>
+ <td id="L499" class="blob-num js-line-number" data-line-number="499"></td>
+ <td id="LC499" class="blob-code blob-code-inner js-file-line">:101F2000E0916A01F0916B01309721F00280F3811A </td>
+ </tr>
+ <tr>
+ <td id="L500" class="blob-num js-line-number" data-line-number="500"></td>
+ <td id="LC500" class="blob-code blob-code-inner js-file-line">:101F3000E02D09940895E0916A01F0916B013097CA </td>
+ </tr>
+ <tr>
+ <td id="L501" class="blob-num js-line-number" data-line-number="501"></td>
+ <td id="LC501" class="blob-code blob-code-inner js-file-line">:101F400021F00480F581E02D099408952091680125 </td>
+ </tr>
+ <tr>
+ <td id="L502" class="blob-num js-line-number" data-line-number="502"></td>
+ <td id="LC502" class="blob-code blob-code-inner js-file-line">:101F5000309169018217930771F090936901809322 </td>
+ </tr>
+ <tr>
+ <td id="L503" class="blob-num js-line-number" data-line-number="503"></td>
+ <td id="LC503" class="blob-code blob-code-inner js-file-line">:101F60006801E0916A01F0916B01309721F00680E1 </td>
+ </tr>
+ <tr>
+ <td id="L504" class="blob-num js-line-number" data-line-number="504"></td>
+ <td id="LC504" class="blob-code blob-code-inner js-file-line">:101F7000F781E02D09940895209166013091670161 </td>
+ </tr>
+ <tr>
+ <td id="L505" class="blob-num js-line-number" data-line-number="505"></td>
+ <td id="LC505" class="blob-code blob-code-inner js-file-line">:101F80008217930771F09093670180936601E09147 </td>
+ </tr>
+ <tr>
+ <td id="L506" class="blob-num js-line-number" data-line-number="506"></td>
+ <td id="LC506" class="blob-code blob-code-inner js-file-line">:101F90006A01F0916B01309721F00084F185E02D0A </td>
+ </tr>
+ <tr>
+ <td id="L507" class="blob-num js-line-number" data-line-number="507"></td>
+ <td id="LC507" class="blob-code blob-code-inner js-file-line">:101FA0000994089508950C94D20F0E94EB1B0E948F </td>
+ </tr>
+ <tr>
+ <td id="L508" class="blob-num js-line-number" data-line-number="508"></td>
+ <td id="LC508" class="blob-code blob-code-inner js-file-line">:101FB00092040C94B11CCF92DF92EF92FF920F9398 </td>
+ </tr>
+ <tr>
+ <td id="L509" class="blob-num js-line-number" data-line-number="509"></td>
+ <td id="LC509" class="blob-code blob-code-inner js-file-line">:101FC0001F93CF93DF93CDB7DEB72B970FB6F8945F </td>
+ </tr>
+ <tr>
+ <td id="L510" class="blob-num js-line-number" data-line-number="510"></td>
+ <td id="LC510" class="blob-code blob-code-inner js-file-line">:101FD000DEBF0FBECDBF0E94AA048DE6C82E81E0F1 </td>
+ </tr>
+ <tr>
+ <td id="L511" class="blob-num js-line-number" data-line-number="511"></td>
+ <td id="LC511" class="blob-code blob-code-inner js-file-line">:101FE000D82E00E010E0E02E802F0E949805F60128 </td>
+ </tr>
+ <tr>
+ <td id="L512" class="blob-num js-line-number" data-line-number="512"></td>
+ <td id="LC512" class="blob-code blob-code-inner js-file-line">:101FF00041916F01F42EF826B1F40F5F1F4F0E30A0 </td>
+ </tr>
+ <tr>
+ <td id="L513" class="blob-num js-line-number" data-line-number="513"></td>
+ <td id="LC513" class="blob-code blob-code-inner js-file-line">:10200000110589F78FEF89838A831B820E94F41B55 </td>
+ </tr>
+ <tr>
+ <td id="L514" class="blob-num js-line-number" data-line-number="514"></td>
+ <td id="LC514" class="blob-code blob-code-inner js-file-line">:102010008160782F9D838C8349815A816B818D816A </td>
+ </tr>
+ <tr>
+ <td id="L515" class="blob-num js-line-number" data-line-number="515"></td>
+ <td id="LC515" class="blob-code blob-code-inner js-file-line">:102020000E947E1040C09091CF0191FF04C08B8729 </td>
+ </tr>
+ <tr>
+ <td id="L516" class="blob-num js-line-number" data-line-number="516"></td>
+ <td id="LC516" class="blob-code blob-code-inner js-file-line">:102030000E949E058B8520E030E04F2D50E0922FCE </td>
+ </tr>
+ <tr>
+ <td id="L517" class="blob-num js-line-number" data-line-number="517"></td>
+ <td id="LC517" class="blob-code blob-code-inner js-file-line">:10204000BA01022E02C0759567950A94E2F760FF07 </td>
+ </tr>
+ <tr>
+ <td id="L518" class="blob-num js-line-number" data-line-number="518"></td>
+ <td id="LC518" class="blob-code blob-code-inner js-file-line">:1020500024C02E83EF8221E030E0690102C0CC0C65 </td>
+ </tr>
+ <tr>
+ <td id="L519" class="blob-num js-line-number" data-line-number="519"></td>
+ <td id="LC519" class="blob-code blob-code-inner js-file-line">:10206000DD1C9A95E2F790E08C219D21892B09F4E3 </td>
+ </tr>
+ <tr>
+ <td id="L520" class="blob-num js-line-number" data-line-number="520"></td>
+ <td id="LC520" class="blob-code blob-code-inner js-file-line">:1020700020E028870E94F41B8160782F9A87898747 </td>
+ </tr>
+ <tr>
+ <td id="L521" class="blob-num js-line-number" data-line-number="521"></td>
+ <td id="LC521" class="blob-code blob-code-inner js-file-line">:102080004E815F8168858A850E947E10F801E35940 </td>
+ </tr>
+ <tr>
+ <td id="L522" class="blob-num js-line-number" data-line-number="522"></td>
+ <td id="LC522" class="blob-code blob-code-inner js-file-line">:10209000FE4F8081C826C08206C02F5F3F4F26308A </td>
+ </tr>
+ <tr>
+ <td id="L523" class="blob-num js-line-number" data-line-number="523"></td>
+ <td id="LC523" class="blob-code blob-code-inner js-file-line">:1020A000310569F6AACF0E94981F10916C010E9419 </td>
+ </tr>
+ <tr>
+ <td id="L524" class="blob-num js-line-number" data-line-number="524"></td>
+ <td id="LC524" class="blob-code blob-code-inner js-file-line">:1020B000840F1817A1F00E94840F80936C012B9657 </td>
+ </tr>
+ <tr>
+ <td id="L525" class="blob-num js-line-number" data-line-number="525"></td>
+ <td id="LC525" class="blob-code blob-code-inner js-file-line">:1020C0000FB6F894DEBF0FBECDBFDF91CF911F9149 </td>
+ </tr>
+ <tr>
+ <td id="L526" class="blob-num js-line-number" data-line-number="526"></td>
+ <td id="LC526" class="blob-code blob-code-inner js-file-line">:1020D0000F91FF90EF90DF90CF900C947A082B96A1 </td>
+ </tr>
+ <tr>
+ <td id="L527" class="blob-num js-line-number" data-line-number="527"></td>
+ <td id="LC527" class="blob-code blob-code-inner js-file-line">:1020E0000FB6F894DEBF0FBECDBFDF91CF911F9129 </td>
+ </tr>
+ <tr>
+ <td id="L528" class="blob-num js-line-number" data-line-number="528"></td>
+ <td id="LC528" class="blob-code blob-code-inner js-file-line">:1020F0000F91FF90EF90DF90CF900895CF93DF93F3 </td>
+ </tr>
+ <tr>
+ <td id="L529" class="blob-num js-line-number" data-line-number="529"></td>
+ <td id="LC529" class="blob-code blob-code-inner js-file-line">:10210000CDB7DEB72B970FB6F894DEBF0FBECDBFAD </td>
+ </tr>
+ <tr>
+ <td id="L530" class="blob-num js-line-number" data-line-number="530"></td>
+ <td id="LC530" class="blob-code blob-code-inner js-file-line">:102110004F83588769877A878B87DE01119686E01F </td>
+ </tr>
+ <tr>
+ <td id="L531" class="blob-num js-line-number" data-line-number="531"></td>
+ <td id="LC531" class="blob-code blob-code-inner js-file-line">:10212000FD0111928A95E9F785E0FE01379601904D </td>
+ </tr>
+ <tr>
+ <td id="L532" class="blob-num js-line-number" data-line-number="532"></td>
+ <td id="LC532" class="blob-code blob-code-inner js-file-line">:102130000D928A95E1F749815A816B817C818D816D </td>
+ </tr>
+ <tr>
+ <td id="L533" class="blob-num js-line-number" data-line-number="533"></td>
+ <td id="LC533" class="blob-code blob-code-inner js-file-line">:102140009E810E94AE172B960FB6F894DEBF0FBE8D </td>
+ </tr>
+ <tr>
+ <td id="L534" class="blob-num js-line-number" data-line-number="534"></td>
+ <td id="LC534" class="blob-code blob-code-inner js-file-line">:10215000CDBFDF91CF9108950895CF93882309F4DF </td>
+ </tr>
+ <tr>
+ <td id="L535" class="blob-num js-line-number" data-line-number="535"></td>
+ <td id="LC535" class="blob-code blob-code-inner js-file-line">:10216000C2C0C82F823859F40E94840F81FDBBC0C1 </td>
+ </tr>
+ <tr>
+ <td id="L536" class="blob-num js-line-number" data-line-number="536"></td>
+ <td id="LC536" class="blob-code blob-code-inner js-file-line">:1021700089E30E94571A0E94241B89E30CC083380C </td>
+ </tr>
+ <tr>
+ <td id="L537" class="blob-num js-line-number" data-line-number="537"></td>
+ <td id="LC537" class="blob-code blob-code-inner js-file-line">:1021800079F40E94840F80FDAEC083E50E94571A47 </td>
+ </tr>
+ <tr>
+ <td id="L538" class="blob-num js-line-number" data-line-number="538"></td>
+ <td id="LC538" class="blob-code blob-code-inner js-file-line">:102190000E94241B83E50E94991ACF910C94241B62 </td>
+ </tr>
+ <tr>
+ <td id="L539" class="blob-num js-line-number" data-line-number="539"></td>
+ <td id="LC539" class="blob-code blob-code-inner js-file-line">:1021A000843859F40E94840F82FD9DC087E40E9408 </td>
+ </tr>
+ <tr>
+ <td id="L540" class="blob-num js-line-number" data-line-number="540"></td>
+ <td id="LC540" class="blob-code blob-code-inner js-file-line">:1021B000571A0E94241B87E4EECF8CEF8C0F813AD4 </td>
+ </tr>
+ <tr>
+ <td id="L541" class="blob-num js-line-number" data-line-number="541"></td>
+ <td id="LC541" class="blob-code blob-code-inner js-file-line">:1021C00048F48C2F0E94DA2181118DC08C2F0E943F </td>
+ </tr>
+ <tr>
+ <td id="L542" class="blob-num js-line-number" data-line-number="542"></td>
+ <td id="LC542" class="blob-code blob-code-inner js-file-line">:1021D000571AE3CF80E28C0F883048F4C77081E053 </td>
+ </tr>
+ <tr>
+ <td id="L543" class="blob-num js-line-number" data-line-number="543"></td>
+ <td id="LC543" class="blob-code blob-code-inner js-file-line">:1021E00001C0880FCA95EAF70E94DD1AD6CF8BE5A9 </td>
+ </tr>
+ <tr>
+ <td id="L544" class="blob-num js-line-number" data-line-number="544"></td>
+ <td id="LC544" class="blob-code blob-code-inner js-file-line">:1021F0008C0F833078F4C53A29F0C63A31F083E881 </td>
+ </tr>
+ <tr>
+ <td id="L545" class="blob-num js-line-number" data-line-number="545"></td>
+ <td id="LC545" class="blob-code blob-code-inner js-file-line">:1022000090E005C081E890E002C082E890E0CF91C4 </td>
+ </tr>
+ <tr>
+ <td id="L546" class="blob-num js-line-number" data-line-number="546"></td>
+ <td id="LC546" class="blob-code blob-code-inner js-file-line">:102210000C94A60F88E58C0F833108F064C0C83A8F </td>
+ </tr>
+ <tr>
+ <td id="L547" class="blob-num js-line-number" data-line-number="547"></td>
+ <td id="LC547" class="blob-code blob-code-inner js-file-line">:1022200039F1C93A41F1CA3A49F1CB3A51F1CC3AC4 </td>
+ </tr>
+ <tr>
+ <td id="L548" class="blob-num js-line-number" data-line-number="548"></td>
+ <td id="LC548" class="blob-code blob-code-inner js-file-line">:1022300059F1CD3A61F1C03B69F1CE3A71F1CF3A33 </td>
+ </tr>
+ <tr>
+ <td id="L549" class="blob-num js-line-number" data-line-number="549"></td>
+ <td id="LC549" class="blob-code blob-code-inner js-file-line">:1022400079F1C13B81F1C23B89F1C33B91F1C43BC0 </td>
+ </tr>
+ <tr>
+ <td id="L550" class="blob-num js-line-number" data-line-number="550"></td>
+ <td id="LC550" class="blob-code blob-code-inner js-file-line">:1022500099F1C53BA1F1C63BA9F1C73BB1F1C83B20 </td>
+ </tr>
+ <tr>
+ <td id="L551" class="blob-num js-line-number" data-line-number="551"></td>
+ <td id="LC551" class="blob-code blob-code-inner js-file-line">:10226000B9F1C93BC1F1CA3BC9F180E090E038C087 </td>
+ </tr>
+ <tr>
+ <td id="L552" class="blob-num js-line-number" data-line-number="552"></td>
+ <td id="LC552" class="blob-code blob-code-inner js-file-line">:1022700082EE90E035C089EE90E032C08AEE90E0C8 </td>
+ </tr>
+ <tr>
+ <td id="L553" class="blob-num js-line-number" data-line-number="553"></td>
+ <td id="LC553" class="blob-code blob-code-inner js-file-line">:102280002FC085EB90E02CC086EB90E029C087EB57 </td>
+ </tr>
+ <tr>
+ <td id="L554" class="blob-num js-line-number" data-line-number="554"></td>
+ <td id="LC554" class="blob-code blob-code-inner js-file-line">:1022900090E026C08CEC90E023C08DEC90E020C054 </td>
+ </tr>
+ <tr>
+ <td id="L555" class="blob-num js-line-number" data-line-number="555"></td>
+ <td id="LC555" class="blob-code blob-code-inner js-file-line">:1022A00083E891E01DC08AE891E01AC082E991E0DC </td>
+ </tr>
+ <tr>
+ <td id="L556" class="blob-num js-line-number" data-line-number="556"></td>
+ <td id="LC556" class="blob-code blob-code-inner js-file-line">:1022B00017C084E991E014C081E292E011C083E28A </td>
+ </tr>
+ <tr>
+ <td id="L557" class="blob-num js-line-number" data-line-number="557"></td>
+ <td id="LC557" class="blob-code blob-code-inner js-file-line">:1022C00092E00EC084E292E00BC085E292E008C08A </td>
+ </tr>
+ <tr>
+ <td id="L558" class="blob-num js-line-number" data-line-number="558"></td>
+ <td id="LC558" class="blob-code blob-code-inner js-file-line">:1022D00086E292E005C087E292E002C08AE292E0E4 </td>
+ </tr>
+ <tr>
+ <td id="L559" class="blob-num js-line-number" data-line-number="559"></td>
+ <td id="LC559" class="blob-code blob-code-inner js-file-line">:1022E000CF910C94BC0FCF910895882309F44BC073 </td>
+ </tr>
+ <tr>
+ <td id="L560" class="blob-num js-line-number" data-line-number="560"></td>
+ <td id="LC560" class="blob-code blob-code-inner js-file-line">:1022F000823859F40E94840F81FF45C089E30E940F </td>
+ </tr>
+ <tr>
+ <td id="L561" class="blob-num js-line-number" data-line-number="561"></td>
+ <td id="LC561" class="blob-code blob-code-inner js-file-line">:10230000571A0E94241B89E30CC0833871F40E9481 </td>
+ </tr>
+ <tr>
+ <td id="L562" class="blob-num js-line-number" data-line-number="562"></td>
+ <td id="LC562" class="blob-code blob-code-inner js-file-line">:10231000840F80FF38C083E50E94571A0E94241B57 </td>
+ </tr>
+ <tr>
+ <td id="L563" class="blob-num js-line-number" data-line-number="563"></td>
+ <td id="LC563" class="blob-code blob-code-inner js-file-line">:1023200083E50E94991A0C94241B843859F40E9466 </td>
+ </tr>
+ <tr>
+ <td id="L564" class="blob-num js-line-number" data-line-number="564"></td>
+ <td id="LC564" class="blob-code blob-code-inner js-file-line">:10233000840F82FF28C087E40E94571A0E94241B42 </td>
+ </tr>
+ <tr>
+ <td id="L565" class="blob-num js-line-number" data-line-number="565"></td>
+ <td id="LC565" class="blob-code blob-code-inner js-file-line">:1023400087E4EFCF9CEF980F913A58F390E2980F03 </td>
+ </tr>
+ <tr>
+ <td id="L566" class="blob-num js-line-number" data-line-number="566"></td>
+ <td id="LC566" class="blob-code blob-code-inner js-file-line">:10235000983050F4877091E001C0990F8A95EAF7A0 </td>
+ </tr>
+ <tr>
+ <td id="L567" class="blob-num js-line-number" data-line-number="567"></td>
+ <td id="LC567" class="blob-code blob-code-inner js-file-line">:10236000892F0E94E31ADFCF9BE5980F933020F46A </td>
+ </tr>
+ <tr>
+ <td id="L568" class="blob-num js-line-number" data-line-number="568"></td>
+ <td id="LC568" class="blob-code blob-code-inner js-file-line">:1023700080E090E00C94A60F885A833120F480E02E </td>
+ </tr>
+ <tr>
+ <td id="L569" class="blob-num js-line-number" data-line-number="569"></td>
+ <td id="LC569" class="blob-code blob-code-inner js-file-line">:1023800090E00C94BC0F0895882321F00E94DD1A80 </td>
+ </tr>
+ <tr>
+ <td id="L570" class="blob-num js-line-number" data-line-number="570"></td>
+ <td id="LC570" class="blob-code blob-code-inner js-file-line">:102390000C94241B0895882321F00E94E31A0C94C6 </td>
+ </tr>
+ <tr>
+ <td id="L571" class="blob-num js-line-number" data-line-number="571"></td>
+ <td id="LC571" class="blob-code blob-code-inner js-file-line">:1023A000241B0895BF92CF92DF92EF92FF920F937A </td>
+ </tr>
+ <tr>
+ <td id="L572" class="blob-num js-line-number" data-line-number="572"></td>
+ <td id="LC572" class="blob-code blob-code-inner js-file-line">:1023B0001F93CF93DF9300D000D000D0CDB7DEB70E </td>
+ </tr>
+ <tr>
+ <td id="L573" class="blob-num js-line-number" data-line-number="573"></td>
+ <td id="LC573" class="blob-code blob-code-inner js-file-line">:1023C00025E0FC01DE01119601900D922A95E1F7BE </td>
+ </tr>
+ <tr>
+ <td id="L574" class="blob-num js-line-number" data-line-number="574"></td>
+ <td id="LC574" class="blob-code blob-code-inner js-file-line">:1023D000FC01D08011810281258122952F704381DB </td>
+ </tr>
+ <tr>
+ <td id="L575" class="blob-num js-line-number" data-line-number="575"></td>
+ <td id="LC575" class="blob-code blob-code-inner js-file-line">:1023E0005481452B09F4FCC21F3F21F4FFEFDF1697 </td>
+ </tr>
+ <tr>
+ <td id="L576" class="blob-num js-line-number" data-line-number="576"></td>
+ <td id="LC576" class="blob-code blob-code-inner js-file-line">:1023F00009F4F6C27C012E830E94AC10D9821A83A4 </td>
+ </tr>
+ <tr>
+ <td id="L577" class="blob-num js-line-number" data-line-number="577"></td>
+ <td id="LC577" class="blob-code blob-code-inner js-file-line">:1024000069817A81802F0E94531A182FB92E0E9459 </td>
+ </tr>
+ <tr>
+ <td id="L578" class="blob-num js-line-number" data-line-number="578"></td>
+ <td id="LC578" class="blob-code blob-code-inner js-file-line">:10241000081A0E94CF182E81002319F00E94FA1A80 </td>
+ </tr>
+ <tr>
+ <td id="L579" class="blob-num js-line-number" data-line-number="579"></td>
+ <td id="LC579" class="blob-code blob-code-inner js-file-line">:102420002E81EB2DE295EF70F0E0E05AFF4F0C9417 </td>
+ </tr>
+ <tr>
+ <td id="L580" class="blob-num js-line-number" data-line-number="580"></td>
+ <td id="LC580" class="blob-code blob-code-inner js-file-line">:102430001E248B2D807F9B2D9F70F92E882319F0F1 </td>
+ </tr>
+ <tr>
+ <td id="L581" class="blob-num js-line-number" data-line-number="581"></td>
+ <td id="LC581" class="blob-code blob-code-inner js-file-line">:10244000F29480EFF822002389F0FF2009F475C28E </td>
+ </tr>
+ <tr>
+ <td id="L582" class="blob-num js-line-number" data-line-number="582"></td>
+ <td id="LC582" class="blob-code blob-code-inner js-file-line">:1024500080E2810F883020F48F2D0E94DD1A03C0A6 </td>
+ </tr>
+ <tr>
+ <td id="L583" class="blob-num js-line-number" data-line-number="583"></td>
+ <td id="LC583" class="blob-code blob-code-inner js-file-line">:102460008F2D0E94ED1A0E94241B67C2812F0E94AB </td>
+ </tr>
+ <tr>
+ <td id="L584" class="blob-num js-line-number" data-line-number="584"></td>
+ <td id="LC584" class="blob-code blob-code-inner js-file-line">:102470007511FF2009F4B4C2105E8F2D183018F4C6 </td>
+ </tr>
+ <tr>
+ <td id="L585" class="blob-num js-line-number" data-line-number="585"></td>
+ <td id="LC585" class="blob-code blob-code-inner js-file-line">:102480000E94E31A02C00E94F31A26960FB6F8942F </td>
+ </tr>
+ <tr>
+ <td id="L586" class="blob-num js-line-number" data-line-number="586"></td>
+ <td id="LC586" class="blob-code blob-code-inner js-file-line">:10249000DEBF0FBECDBFDF91CF911F910F91FF9097 </td>
+ </tr>
+ <tr>
+ <td id="L587" class="blob-num js-line-number" data-line-number="587"></td>
+ <td id="LC587" class="blob-code blob-code-inner js-file-line">:1024A000EF90DF90CF90BF900C94241B3B2D307F9A </td>
+ </tr>
+ <tr>
+ <td id="L588" class="blob-num js-line-number" data-line-number="588"></td>
+ <td id="LC588" class="blob-code blob-code-inner js-file-line">:1024B0008B2D8F70303211F08295807F112319F0AF </td>
+ </tr>
+ <tr>
+ <td id="L589" class="blob-num js-line-number" data-line-number="589"></td>
+ <td id="LC589" class="blob-code blob-code-inner js-file-line">:1024C000113021F12CC00023B9F0222309F4A0C15E </td>
+ </tr>
+ <tr>
+ <td id="L590" class="blob-num js-line-number" data-line-number="590"></td>
+ <td id="LC590" class="blob-code blob-code-inner js-file-line">:1024D000213009F09DC126960FB6F894DEBF0FBEDD </td>
+ </tr>
+ <tr>
+ <td id="L591" class="blob-num js-line-number" data-line-number="591"></td>
+ <td id="LC591" class="blob-code blob-code-inner js-file-line">:1024E000CDBFDF91CF911F910F91FF90EF90DF90C3 </td>
+ </tr>
+ <tr>
+ <td id="L592" class="blob-num js-line-number" data-line-number="592"></td>
+ <td id="LC592" class="blob-code blob-code-inner js-file-line">:1024F000CF90BF900C940D1B222319F0213009F4CA </td>
+ </tr>
+ <tr>
+ <td id="L593" class="blob-num js-line-number" data-line-number="593"></td>
+ <td id="LC593" class="blob-code blob-code-inner js-file-line">:102500006FC28E830E94101B8E8196C1002321F022 </td>
+ </tr>
+ <tr>
+ <td id="L594" class="blob-num js-line-number" data-line-number="594"></td>
+ <td id="LC594" class="blob-code blob-code-inner js-file-line">:10251000223008F065C27CC1211162C28DC1002346 </td>
+ </tr>
+ <tr>
+ <td id="L595" class="blob-num js-line-number" data-line-number="595"></td>
+ <td id="LC595" class="blob-code blob-code-inner js-file-line">:1025200021F0222309F474C108C2222309F484C1D2 </td>
+ </tr>
+ <tr>
+ <td id="L596" class="blob-num js-line-number" data-line-number="596"></td>
+ <td id="LC596" class="blob-code blob-code-inner js-file-line">:1025300019C22B2D26952695237030E021153105E3 </td>
+ </tr>
+ <tr>
+ <td id="L597" class="blob-num js-line-number" data-line-number="597"></td>
+ <td id="LC597" class="blob-code blob-code-inner js-file-line">:1025400021F021303105D1F04BC2002321F0812F41 </td>
+ </tr>
+ <tr>
+ <td id="L598" class="blob-num js-line-number" data-line-number="598"></td>
+ <td id="LC598" class="blob-code blob-code-inner js-file-line">:102550009B2D937002C080E090E026960FB6F89411 </td>
+ </tr>
+ <tr>
+ <td id="L599" class="blob-num js-line-number" data-line-number="599"></td>
+ <td id="LC599" class="blob-code blob-code-inner js-file-line">:10256000DEBF0FBECDBFDF91CF911F910F91FF90C6 </td>
+ </tr>
+ <tr>
+ <td id="L600" class="blob-num js-line-number" data-line-number="600"></td>
+ <td id="LC600" class="blob-code blob-code-inner js-file-line">:10257000EF90DF90CF90BF900C94A60F002321F036 </td>
+ </tr>
+ <tr>
+ <td id="L601" class="blob-num js-line-number" data-line-number="601"></td>
+ <td id="LC601" class="blob-code blob-code-inner js-file-line">:10258000812F9B2D937002C080E090E026960FB6BD </td>
+ </tr>
+ <tr>
+ <td id="L602" class="blob-num js-line-number" data-line-number="602"></td>
+ <td id="LC602" class="blob-code blob-code-inner js-file-line">:10259000F894DEBF0FBECDBFDF91CF911F910F9199 </td>
+ </tr>
+ <tr>
+ <td id="L603" class="blob-num js-line-number" data-line-number="603"></td>
+ <td id="LC603" class="blob-code blob-code-inner js-file-line">:1025A000FF90EF90DF90CF90BF900C94BC0F812FE5 </td>
+ </tr>
+ <tr>
+ <td id="L604" class="blob-num js-line-number" data-line-number="604"></td>
+ <td id="LC604" class="blob-code blob-code-inner js-file-line">:1025B000002319F00E94A01E02C00E94081F269648 </td>
+ </tr>
+ <tr>
+ <td id="L605" class="blob-num js-line-number" data-line-number="605"></td>
+ <td id="LC605" class="blob-code blob-code-inner js-file-line">:1025C0000FB6F894DEBF0FBECDBFDF91CF911F9144 </td>
+ </tr>
+ <tr>
+ <td id="L606" class="blob-num js-line-number" data-line-number="606"></td>
+ <td id="LC606" class="blob-code blob-code-inner js-file-line">:1025D0000F91FF90EF90DF90CF90BF900C948D1FE4 </td>
+ </tr>
+ <tr>
+ <td id="L607" class="blob-num js-line-number" data-line-number="607"></td>
+ <td id="LC607" class="blob-code blob-code-inner js-file-line">:1025E0008B2D837009F07BC00111FAC1812F829578 </td>
+ </tr>
+ <tr>
+ <td id="L608" class="blob-num js-line-number" data-line-number="608"></td>
+ <td id="LC608" class="blob-code blob-code-inner js-file-line">:1025F00086958770880F880F912F9F70C92ED12CD8 </td>
+ </tr>
+ <tr>
+ <td id="L609" class="blob-num js-line-number" data-line-number="609"></td>
+ <td id="LC609" class="blob-code blob-code-inner js-file-line">:10260000E12CF12C082E04C0CC0CDD1CEE1CFF1CB0 </td>
+ </tr>
+ <tr>
+ <td id="L610" class="blob-num js-line-number" data-line-number="610"></td>
+ <td id="LC610" class="blob-code blob-code-inner js-file-line">:102610000A94D2F714FF12C04FE050E060E070E07F </td>
+ </tr>
+ <tr>
+ <td id="L611" class="blob-num js-line-number" data-line-number="611"></td>
+ <td id="LC611" class="blob-code blob-code-inner js-file-line">:1026200004C0440F551F661F771F8A95D2F7CB0150 </td>
+ </tr>
+ <tr>
+ <td id="L612" class="blob-num js-line-number" data-line-number="612"></td>
+ <td id="LC612" class="blob-code blob-code-inner js-file-line">:10263000BA01609570958095909503C060E070E058 </td>
+ </tr>
+ <tr>
+ <td id="L613" class="blob-num js-line-number" data-line-number="613"></td>
+ <td id="LC613" class="blob-code blob-code-inner js-file-line">:10264000CB012B2D269526952370422F50E042304A </td>
+ </tr>
+ <tr>
+ <td id="L614" class="blob-num js-line-number" data-line-number="614"></td>
+ <td id="LC614" class="blob-code blob-code-inner js-file-line">:102650005105D9F04330510569F16C297D298E2946 </td>
+ </tr>
+ <tr>
+ <td id="L615" class="blob-num js-line-number" data-line-number="615"></td>
+ <td id="LC615" class="blob-code blob-code-inner js-file-line">:102660009F294130510551F126960FB6F894DEBFEF </td>
+ </tr>
+ <tr>
+ <td id="L616" class="blob-num js-line-number" data-line-number="616"></td>
+ <td id="LC616" class="blob-code blob-code-inner js-file-line">:102670000FBECDBFDF91CF911F910F91FF90EF90D3 </td>
+ </tr>
+ <tr>
+ <td id="L617" class="blob-num js-line-number" data-line-number="617"></td>
+ <td id="LC617" class="blob-code blob-code-inner js-file-line">:10268000DF90CF90BF900C94F6186C297D298E298D </td>
+ </tr>
+ <tr>
+ <td id="L618" class="blob-num js-line-number" data-line-number="618"></td>
+ <td id="LC618" class="blob-code blob-code-inner js-file-line">:102690009F2926960FB6F894DEBF0FBECDBFDF91FF </td>
+ </tr>
+ <tr>
+ <td id="L619" class="blob-num js-line-number" data-line-number="619"></td>
+ <td id="LC619" class="blob-code blob-code-inner js-file-line">:1026A000CF911F910F91FF90EF90DF90CF90BF904F </td>
+ </tr>
+ <tr>
+ <td id="L620" class="blob-num js-line-number" data-line-number="620"></td>
+ <td id="LC620" class="blob-code blob-code-inner js-file-line">:1026B0000C9412190E94F618C701B60126960FB69F </td>
+ </tr>
+ <tr>
+ <td id="L621" class="blob-num js-line-number" data-line-number="621"></td>
+ <td id="LC621" class="blob-code blob-code-inner js-file-line">:1026C000F894DEBF0FBECDBFDF91CF911F910F9168 </td>
+ </tr>
+ <tr>
+ <td id="L622" class="blob-num js-line-number" data-line-number="622"></td>
+ <td id="LC622" class="blob-code blob-code-inner js-file-line">:1026D000FF90EF90DF90CF90BF900C94DA1800231A </td>
+ </tr>
+ <tr>
+ <td id="L623" class="blob-num js-line-number" data-line-number="623"></td>
+ <td id="LC623" class="blob-code blob-code-inner js-file-line">:1026E00019F08B2D817001C08695882309F478C17B </td>
+ </tr>
+ <tr>
+ <td id="L624" class="blob-num js-line-number" data-line-number="624"></td>
+ <td id="LC624" class="blob-code blob-code-inner js-file-line">:1026F000812F829586958770880F880F912F9F7004 </td>
+ </tr>
+ <tr>
+ <td id="L625" class="blob-num js-line-number" data-line-number="625"></td>
+ <td id="LC625" class="blob-code blob-code-inner js-file-line">:10270000C92ED12CE12CF12C082E04C0CC0CDD1CE0 </td>
+ </tr>
+ <tr>
+ <td id="L626" class="blob-num js-line-number" data-line-number="626"></td>
+ <td id="LC626" class="blob-code blob-code-inner js-file-line">:10271000EE1CFF1C0A94D2F714FF12C04FE050E0E9 </td>
+ </tr>
+ <tr>
+ <td id="L627" class="blob-num js-line-number" data-line-number="627"></td>
+ <td id="LC627" class="blob-code blob-code-inner js-file-line">:1027200060E070E004C0440F551F661F771F8A9554 </td>
+ </tr>
+ <tr>
+ <td id="L628" class="blob-num js-line-number" data-line-number="628"></td>
+ <td id="LC628" class="blob-code blob-code-inner js-file-line">:10273000D2F7CB01BA01609570958095909503C052 </td>
+ </tr>
+ <tr>
+ <td id="L629" class="blob-num js-line-number" data-line-number="629"></td>
+ <td id="LC629" class="blob-code blob-code-inner js-file-line">:1027400060E070E0CB012B2D269526952370422F5B </td>
+ </tr>
+ <tr>
+ <td id="L630" class="blob-num js-line-number" data-line-number="630"></td>
+ <td id="LC630" class="blob-code blob-code-inner js-file-line">:1027500050E042305105D9F04330510569F16C2900 </td>
+ </tr>
+ <tr>
+ <td id="L631" class="blob-num js-line-number" data-line-number="631"></td>
+ <td id="LC631" class="blob-code blob-code-inner js-file-line">:102760007D298E299F294130510551F126960FB6BA </td>
+ </tr>
+ <tr>
+ <td id="L632" class="blob-num js-line-number" data-line-number="632"></td>
+ <td id="LC632" class="blob-code blob-code-inner js-file-line">:10277000F894DEBF0FBECDBFDF91CF911F910F91B7 </td>
+ </tr>
+ <tr>
+ <td id="L633" class="blob-num js-line-number" data-line-number="633"></td>
+ <td id="LC633" class="blob-code blob-code-inner js-file-line">:10278000FF90EF90DF90CF90BF900C94D0196C2900 </td>
+ </tr>
+ <tr>
+ <td id="L634" class="blob-num js-line-number" data-line-number="634"></td>
+ <td id="LC634" class="blob-code blob-code-inner js-file-line">:102790007D298E299F2926960FB6F894DEBF0FBE9D </td>
+ </tr>
+ <tr>
+ <td id="L635" class="blob-num js-line-number" data-line-number="635"></td>
+ <td id="LC635" class="blob-code blob-code-inner js-file-line">:1027A000CDBFDF91CF911F910F91FF90EF90DF9000 </td>
+ </tr>
+ <tr>
+ <td id="L636" class="blob-num js-line-number" data-line-number="636"></td>
+ <td id="LC636" class="blob-code blob-code-inner js-file-line">:1027B000CF90BF900C94EC190E94D019C701B601BC </td>
+ </tr>
+ <tr>
+ <td id="L637" class="blob-num js-line-number" data-line-number="637"></td>
+ <td id="LC637" class="blob-code blob-code-inner js-file-line">:1027C00026960FB6F894DEBF0FBECDBFDF91CF9136 </td>
+ </tr>
+ <tr>
+ <td id="L638" class="blob-num js-line-number" data-line-number="638"></td>
+ <td id="LC638" class="blob-code blob-code-inner js-file-line">:1027D0001F910F91FF90EF90DF90CF90BF900C94DE </td>
+ </tr>
+ <tr>
+ <td id="L639" class="blob-num js-line-number" data-line-number="639"></td>
+ <td id="LC639" class="blob-code blob-code-inner js-file-line">:1027E000B419103FD1F118F4103E50F4A1C0123FBB </td>
+ </tr>
+ <tr>
+ <td id="L640" class="blob-num js-line-number" data-line-number="640"></td>
+ <td id="LC640" class="blob-code blob-code-inner js-file-line">:1027F00009F463C008F44CC0133F09F473C098C0D7 </td>
+ </tr>
+ <tr>
+ <td id="L641" class="blob-num js-line-number" data-line-number="641"></td>
+ <td id="LC641" class="blob-code blob-code-inner js-file-line">:102800001F708B2D8F710023A1F00E944D19812F15 </td>
+ </tr>
+ <tr>
+ <td id="L642" class="blob-num js-line-number" data-line-number="642"></td>
+ <td id="LC642" class="blob-code blob-code-inner js-file-line">:1028100026960FB6F894DEBF0FBECDBFDF91CF91E5 </td>
+ </tr>
+ <tr>
+ <td id="L643" class="blob-num js-line-number" data-line-number="643"></td>
+ <td id="LC643" class="blob-code blob-code-inner js-file-line">:102820001F910F91FF90EF90DF90CF90BF900C948D </td>
+ </tr>
+ <tr>
+ <td id="L644" class="blob-num js-line-number" data-line-number="644"></td>
+ <td id="LC644" class="blob-code blob-code-inner js-file-line">:10283000C4110E946E19812F26960FB6F894DEBF40 </td>
+ </tr>
+ <tr>
+ <td id="L645" class="blob-num js-line-number" data-line-number="645"></td>
+ <td id="LC645" class="blob-code blob-code-inner js-file-line">:102840000FBECDBFDF91CF911F910F91FF90EF9001 </td>
+ </tr>
+ <tr>
+ <td id="L646" class="blob-num js-line-number" data-line-number="646"></td>
+ <td id="LC646" class="blob-code blob-code-inner js-file-line">:10285000DF90CF90BF900C94CB110023A9F02111F1 </td>
+ </tr>
+ <tr>
+ <td id="L647" class="blob-num js-line-number" data-line-number="647"></td>
+ <td id="LC647" class="blob-code blob-code-inner js-file-line">:10286000BFC08B2D8F7126960FB6F894DEBF0FBEBA </td>
+ </tr>
+ <tr>
+ <td id="L648" class="blob-num js-line-number" data-line-number="648"></td>
+ <td id="LC648" class="blob-code blob-code-inner js-file-line">:10287000CDBFDF91CF911F910F91FF90EF90DF902F </td>
+ </tr>
+ <tr>
+ <td id="L649" class="blob-num js-line-number" data-line-number="649"></td>
+ <td id="LC649" class="blob-code blob-code-inner js-file-line">:10288000CF90BF900C949319223008F0A9C0E9CFE3 </td>
+ </tr>
+ <tr>
+ <td id="L650" class="blob-num js-line-number" data-line-number="650"></td>
+ <td id="LC650" class="blob-code blob-code-inner js-file-line">:102890000023A9F08B2D8F7126960FB6F894DEBF1A </td>
+ </tr>
+ <tr>
+ <td id="L651" class="blob-num js-line-number" data-line-number="651"></td>
+ <td id="LC651" class="blob-code blob-code-inner js-file-line">:1028A0000FBECDBFDF91CF911F910F91FF90EF90A1 </td>
+ </tr>
+ <tr>
+ <td id="L652" class="blob-num js-line-number" data-line-number="652"></td>
+ <td id="LC652" class="blob-code blob-code-inner js-file-line">:1028B000DF90CF90BF900C944D19002359F38B2DCE </td>
+ </tr>
+ <tr>
+ <td id="L653" class="blob-num js-line-number" data-line-number="653"></td>
+ <td id="LC653" class="blob-code blob-code-inner js-file-line">:1028C0008F7126960FB6F894DEBF0FBECDBFDF9195 </td>
+ </tr>
+ <tr>
+ <td id="L654" class="blob-num js-line-number" data-line-number="654"></td>
+ <td id="LC654" class="blob-code blob-code-inner js-file-line">:1028D000CF911F910F91FF90EF90DF90CF90BF901D </td>
+ </tr>
+ <tr>
+ <td id="L655" class="blob-num js-line-number" data-line-number="655"></td>
+ <td id="LC655" class="blob-code blob-code-inner js-file-line">:1028E0000C946E19002399F08B2D8F7126960FB6DC </td>
+ </tr>
+ <tr>
+ <td id="L656" class="blob-num js-line-number" data-line-number="656"></td>
+ <td id="LC656" class="blob-code blob-code-inner js-file-line">:1028F000F894DEBF0FBECDBFDF91CF911F910F9136 </td>
+ </tr>
+ <tr>
+ <td id="L657" class="blob-num js-line-number" data-line-number="657"></td>
+ <td id="LC657" class="blob-code blob-code-inner js-file-line">:10290000FF90EF90DF90CF90BF900C9438192696EF </td>
+ </tr>
+ <tr>
+ <td id="L658" class="blob-num js-line-number" data-line-number="658"></td>
+ <td id="LC658" class="blob-code blob-code-inner js-file-line">:102910000FB6F894DEBF0FBECDBFDF91CF911F91F0 </td>
+ </tr>
+ <tr>
+ <td id="L659" class="blob-num js-line-number" data-line-number="659"></td>
+ <td id="LC659" class="blob-code blob-code-inner js-file-line">:102920000F91FF90EF90DF90CF90BF900C942E19F5 </td>
+ </tr>
+ <tr>
+ <td id="L660" class="blob-num js-line-number" data-line-number="660"></td>
+ <td id="LC660" class="blob-code blob-code-inner js-file-line">:102930000023A9F0222309F4ADCF812F26960FB6EC </td>
+ </tr>
+ <tr>
+ <td id="L661" class="blob-num js-line-number" data-line-number="661"></td>
+ <td id="LC661" class="blob-code blob-code-inner js-file-line">:10294000F894DEBF0FBECDBFDF91CF911F910F91E5 </td>
+ </tr>
+ <tr>
+ <td id="L662" class="blob-num js-line-number" data-line-number="662"></td>
+ <td id="LC662" class="blob-code blob-code-inner js-file-line">:10295000FF90EF90DF90CF90BF900C94AD102223AA </td>
+ </tr>
+ <tr>
+ <td id="L663" class="blob-num js-line-number" data-line-number="663"></td>
+ <td id="LC663" class="blob-code blob-code-inner js-file-line">:1029600009F4ADCF812F26960FB6F894DEBF0FBEC7 </td>
+ </tr>
+ <tr>
+ <td id="L664" class="blob-num js-line-number" data-line-number="664"></td>
+ <td id="LC664" class="blob-code blob-code-inner js-file-line">:10297000CDBFDF91CF911F910F91FF90EF90DF902E </td>
+ </tr>
+ <tr>
+ <td id="L665" class="blob-num js-line-number" data-line-number="665"></td>
+ <td id="LC665" class="blob-code blob-code-inner js-file-line">:10298000CF90BF900C9475114B2D4F70612FC701E4 </td>
+ </tr>
+ <tr>
+ <td id="L666" class="blob-num js-line-number" data-line-number="666"></td>
+ <td id="LC666" class="blob-code blob-code-inner js-file-line">:102990000E94AE0226960FB6F894DEBF0FBECDBFE2 </td>
+ </tr>
+ <tr>
+ <td id="L667" class="blob-num js-line-number" data-line-number="667"></td>
+ <td id="LC667" class="blob-code blob-code-inner js-file-line">:1029A000DF91CF911F910F91FF90EF90DF90CF902B </td>
+ </tr>
+ <tr>
+ <td id="L668" class="blob-num js-line-number" data-line-number="668"></td>
+ <td id="LC668" class="blob-code blob-code-inner js-file-line">:1029B000BF900C9452184B2D4F70612FC701269673 </td>
+ </tr>
+ <tr>
+ <td id="L669" class="blob-num js-line-number" data-line-number="669"></td>
+ <td id="LC669" class="blob-code blob-code-inner js-file-line">:1029C0000FB6F894DEBF0FBECDBFDF91CF911F9140 </td>
+ </tr>
+ <tr>
+ <td id="L670" class="blob-num js-line-number" data-line-number="670"></td>
+ <td id="LC670" class="blob-code blob-code-inner js-file-line">:1029D0000F91FF90EF90DF90CF90BF900C949F05E8 </td>
+ </tr>
+ <tr>
+ <td id="L671" class="blob-num js-line-number" data-line-number="671"></td>
+ <td id="LC671" class="blob-code blob-code-inner js-file-line">:1029E00026960FB6F894DEBF0FBECDBFDF91CF9114 </td>
+ </tr>
+ <tr>
+ <td id="L672" class="blob-num js-line-number" data-line-number="672"></td>
+ <td id="LC672" class="blob-code blob-code-inner js-file-line">:1029F0001F910F91FF90EF90DF90CF90BF900895BF </td>
+ </tr>
+ <tr>
+ <td id="L673" class="blob-num js-line-number" data-line-number="673"></td>
+ <td id="LC673" class="blob-code blob-code-inner js-file-line">:102A00000E94FA1A0E940A1B0E94CF1A0E94241BDD </td>
+ </tr>
+ <tr>
+ <td id="L674" class="blob-num js-line-number" data-line-number="674"></td>
+ <td id="LC674" class="blob-code blob-code-inner js-file-line">:102A10000E943D200E948D1F80E090E00E94A60F42 </td>
+ </tr>
+ <tr>
+ <td id="L675" class="blob-num js-line-number" data-line-number="675"></td>
+ <td id="LC675" class="blob-code blob-code-inner js-file-line">:102A200080E090E00C94BC0F0E94EA1A0C94001510 </td>
+ </tr>
+ <tr>
+ <td id="L676" class="blob-num js-line-number" data-line-number="676"></td>
+ <td id="LC676" class="blob-code blob-code-inner js-file-line">:102A30000E94481A292F22952F7030E02C30310542 </td>
+ </tr>
+ <tr>
+ <td id="L677" class="blob-num js-line-number" data-line-number="677"></td>
+ <td id="LC677" class="blob-code blob-code-inner js-file-line">:102A40004CF42A3031056CF4225031092230310522 </td>
+ </tr>
+ <tr>
+ <td id="L678" class="blob-num js-line-number" data-line-number="678"></td>
+ <td id="LC678" class="blob-code blob-code-inner js-file-line">:102A500088F407C02C30310549F02F30310531F0B2 </td>
+ </tr>
+ <tr>
+ <td id="L679" class="blob-num js-line-number" data-line-number="679"></td>
+ <td id="LC679" class="blob-code blob-code-inner js-file-line">:102A600009C0803E48F0803F29F406C093FB8827C8 </td>
+ </tr>
+ <tr>
+ <td id="L680" class="blob-num js-line-number" data-line-number="680"></td>
+ <td id="LC680" class="blob-code blob-code-inner js-file-line">:102A700080F9089580E0089581E00895CF93DF9371 </td>
+ </tr>
+ <tr>
+ <td id="L681" class="blob-num js-line-number" data-line-number="681"></td>
+ <td id="LC681" class="blob-code blob-code-inner js-file-line">:102A800000D000D01F92CDB7DEB70F900F900F90FF </td>
+ </tr>
+ <tr>
+ <td id="L682" class="blob-num js-line-number" data-line-number="682"></td>
+ <td id="LC682" class="blob-code blob-code-inner js-file-line">:102A90000F900F90DF91CF910895CF93DF9300D0E7 </td>
+ </tr>
+ <tr>
+ <td id="L683" class="blob-num js-line-number" data-line-number="683"></td>
+ <td id="LC683" class="blob-code blob-code-inner js-file-line">:102AA00000D000D0CDB7DEB726960FB6F894DEBFC3 </td>
+ </tr>
+ <tr>
+ <td id="L684" class="blob-num js-line-number" data-line-number="684"></td>
+ <td id="LC684" class="blob-code blob-code-inner js-file-line">:102AB0000FBECDBFDF91CF9108951F93CF93DF93CA </td>
+ </tr>
+ <tr>
+ <td id="L685" class="blob-num js-line-number" data-line-number="685"></td>
+ <td id="LC685" class="blob-code blob-code-inner js-file-line">:102AC000C0917B0116E080917C01C81799F0D0E09D </td>
+ </tr>
+ <tr>
+ <td id="L686" class="blob-num js-line-number" data-line-number="686"></td>
+ <td id="LC686" class="blob-code blob-code-inner js-file-line">:102AD0001C9FF0011D9FF00D1124E358FE4F408113 </td>
+ </tr>
+ <tr>
+ <td id="L687" class="blob-num js-line-number" data-line-number="687"></td>
+ <td id="LC687" class="blob-code blob-code-inner js-file-line">:102AE000518162817381848195810E944D15219667 </td>
+ </tr>
+ <tr>
+ <td id="L688" class="blob-num js-line-number" data-line-number="688"></td>
+ <td id="LC688" class="blob-code blob-code-inner js-file-line">:102AF000C770E9CFDF91CF911F9108954091AD014B </td>
+ </tr>
+ <tr>
+ <td id="L689" class="blob-num js-line-number" data-line-number="689"></td>
+ <td id="LC689" class="blob-code blob-code-inner js-file-line">:102B00005091AE016091AF017091B0018091B1011F </td>
+ </tr>
+ <tr>
+ <td id="L690" class="blob-num js-line-number" data-line-number="690"></td>
+ <td id="LC690" class="blob-code blob-code-inner js-file-line">:102B10009091B2010C944D158091B20182958F7005 </td>
+ </tr>
+ <tr>
+ <td id="L691" class="blob-num js-line-number" data-line-number="691"></td>
+ <td id="LC691" class="blob-code blob-code-inner js-file-line">:102B200009F054C08091AF01882309F44FC080910F </td>
+ </tr>
+ <tr>
+ <td id="L692" class="blob-num js-line-number" data-line-number="692"></td>
+ <td id="LC692" class="blob-code blob-code-inner js-file-line">:102B30007B01A0917C016091AD017091AE0140914B </td>
+ </tr>
+ <tr>
+ <td id="L693" class="blob-num js-line-number" data-line-number="693"></td>
+ <td id="LC693" class="blob-code blob-code-inner js-file-line">:102B4000B0015091B101B6E08A1709F43FC090E09E </td>
+ </tr>
+ <tr>
+ <td id="L694" class="blob-num js-line-number" data-line-number="694"></td>
+ <td id="LC694" class="blob-code blob-code-inner js-file-line">:102B500041155105C1F17F3F11F46F3FA1F1B89FBD </td>
+ </tr>
+ <tr>
+ <td id="L695" class="blob-num js-line-number" data-line-number="695"></td>
+ <td id="LC695" class="blob-code blob-code-inner js-file-line">:102B6000F001B99FF00D1124E358FE4F218172133B </td>
+ </tr>
+ <tr>
+ <td id="L696" class="blob-num js-line-number" data-line-number="696"></td>
+ <td id="LC696" class="blob-code blob-code-inner js-file-line">:102B70002AC02081621327C02281211124C0238111 </td>
+ </tr>
+ <tr>
+ <td id="L697" class="blob-num js-line-number" data-line-number="697"></td>
+ <td id="LC697" class="blob-code blob-code-inner js-file-line">:102B800034812417350710F421503109241B350BEB </td>
+ </tr>
+ <tr>
+ <td id="L698" class="blob-num js-line-number" data-line-number="698"></td>
+ <td id="LC698" class="blob-code blob-code-inner js-file-line">:102B9000283C3105C0F42091B2012F7020612093B0 </td>
+ </tr>
+ <tr>
+ <td id="L699" class="blob-num js-line-number" data-line-number="699"></td>
+ <td id="LC699" class="blob-code blob-code-inner js-file-line">:102BA000B20126E0289FF001299FF00D1124EE5775 </td>
+ </tr>
+ <tr>
+ <td id="L700" class="blob-num js-line-number" data-line-number="700"></td>
+ <td id="LC700" class="blob-code blob-code-inner js-file-line">:102BB000FE4F80818F70806180838DEA91E00E945A </td>
+ </tr>
+ <tr>
+ <td id="L701" class="blob-num js-line-number" data-line-number="701"></td>
+ <td id="LC701" class="blob-code blob-code-inner js-file-line">:102BC000D2110C945D1501968770BECF0895CF92F7 </td>
+ </tr>
+ <tr>
+ <td id="L702" class="blob-num js-line-number" data-line-number="702"></td>
+ <td id="LC702" class="blob-code blob-code-inner js-file-line">:102BD000DF92EF92FF920F931F93CF93DF93CDB7C6 </td>
+ </tr>
+ <tr>
+ <td id="L703" class="blob-num js-line-number" data-line-number="703"></td>
+ <td id="LC703" class="blob-code blob-code-inner js-file-line">:102BE000DEB762970FB6F894DEBF0FBECDBF8C0183 </td>
+ </tr>
+ <tr>
+ <td id="L704" class="blob-num js-line-number" data-line-number="704"></td>
+ <td id="LC704" class="blob-code blob-code-inner js-file-line">:102BF00085E0F801DE011D9601900D928A95E1F7BE </td>
+ </tr>
+ <tr>
+ <td id="L705" class="blob-num js-line-number" data-line-number="705"></td>
+ <td id="LC705" class="blob-code blob-code-inner js-file-line">:102C0000D8014C9111965C91119712966C91129784 </td>
+ </tr>
+ <tr>
+ <td id="L706" class="blob-num js-line-number" data-line-number="706"></td>
+ <td id="LC706" class="blob-code blob-code-inner js-file-line">:102C10001396CD90DC9014973091AD017091AE0178 </td>
+ </tr>
+ <tr>
+ <td id="L707" class="blob-num js-line-number" data-line-number="707"></td>
+ <td id="LC707" class="blob-code blob-code-inner js-file-line">:102C20008091B0019091B101009709F46BC17F3F91 </td>
+ </tr>
+ <tr>
+ <td id="L708" class="blob-num js-line-number" data-line-number="708"></td>
+ <td id="LC708" class="blob-code blob-code-inner js-file-line">:102C300019F43F3F09F466C1E090AF01EE2009F4BA </td>
+ </tr>
+ <tr>
+ <td id="L709" class="blob-num js-line-number" data-line-number="709"></td>
+ <td id="LC709" class="blob-code blob-code-inner js-file-line">:102C4000C0C02091B201C816D90628F0F601E81BD1 </td>
+ </tr>
+ <tr>
+ <td id="L710" class="blob-num js-line-number" data-line-number="710"></td>
+ <td id="LC710" class="blob-code blob-code-inner js-file-line">:102C5000F90BCF0104C0809590958C0D9D1DFF242C </td>
+ </tr>
+ <tr>
+ <td id="L711" class="blob-num js-line-number" data-line-number="711"></td>
+ <td id="LC711" class="blob-code blob-code-inner js-file-line">:102C6000F394883C910578F0F12C207F09F0C6C0E0 </td>
+ </tr>
+ <tr>
+ <td id="L712" class="blob-num js-line-number" data-line-number="712"></td>
+ <td id="LC712" class="blob-code blob-code-inner js-file-line">:102C70007C2DD98AC88A89890E943E158DEA91E007 </td>
+ </tr>
+ <tr>
+ <td id="L713" class="blob-num js-line-number" data-line-number="713"></td>
+ <td id="LC713" class="blob-code blob-code-inner js-file-line">:102C80000E94D211B1C0822F807F09F046C0751317 </td>
+ </tr>
+ <tr>
+ <td id="L714" class="blob-num js-line-number" data-line-number="714"></td>
+ <td id="LC714" class="blob-code blob-code-inner js-file-line">:102C900014C0341312C0611110C02F702061209332 </td>
+ </tr>
+ <tr>
+ <td id="L715" class="blob-num js-line-number" data-line-number="715"></td>
+ <td id="LC715" class="blob-code blob-code-inner js-file-line">:102CA000B2010E947E158DEA91E00E94D2118091BE </td>
+ </tr>
+ <tr>
+ <td id="L716" class="blob-num js-line-number" data-line-number="716"></td>
+ <td id="LC716" class="blob-code blob-code-inner js-file-line">:102CB000B201D80115968C932EC0CD2819F15F3F33 </td>
+ </tr>
+ <tr>
+ <td id="L717" class="blob-num js-line-number" data-line-number="717"></td>
+ <td id="LC717" class="blob-code blob-code-inner js-file-line">:102CC00011F44F3FF9F0F62E61111CC080917B0189 </td>
+ </tr>
+ <tr>
+ <td id="L718" class="blob-num js-line-number" data-line-number="718"></td>
+ <td id="LC718" class="blob-code blob-code-inner js-file-line">:102CD00020917C0136E0821709F45AC090E0389FB9 </td>
+ </tr>
+ <tr>
+ <td id="L719" class="blob-num js-line-number" data-line-number="719"></td>
+ <td id="LC719" class="blob-code blob-code-inner js-file-line">:102CE000F001399FF00D1124E358FE4F7181571305 </td>
+ </tr>
+ <tr>
+ <td id="L720" class="blob-num js-line-number" data-line-number="720"></td>
+ <td id="LC720" class="blob-code blob-code-inner js-file-line">:102CF00006C07081471303C07281711103C0019631 </td>
+ </tr>
+ <tr>
+ <td id="L721" class="blob-num js-line-number" data-line-number="721"></td>
+ <td id="LC721" class="blob-code blob-code-inner js-file-line">:102D00008770E9CFF62E662309F418C18091B201CD </td>
+ </tr>
+ <tr>
+ <td id="L722" class="blob-num js-line-number" data-line-number="722"></td>
+ <td id="LC722" class="blob-code blob-code-inner js-file-line">:102D100081608093B201F12C11C1751308C0341386 </td>
+ </tr>
+ <tr>
+ <td id="L723" class="blob-num js-line-number" data-line-number="723"></td>
+ <td id="LC723" class="blob-code blob-code-inner js-file-line">:102D200006C0611104C08091B201D801C3C04D87B3 </td>
+ </tr>
+ <tr>
+ <td id="L724" class="blob-num js-line-number" data-line-number="724"></td>
+ <td id="LC724" class="blob-code blob-code-inner js-file-line">:102D30005E878D859E856A8B0E9418156A89882317 </td>
+ </tr>
+ <tr>
+ <td id="L725" class="blob-num js-line-number" data-line-number="725"></td>
+ <td id="LC725" class="blob-code blob-code-inner js-file-line">:102D4000E1F16623D1F12091B201822F82958F703B </td>
+ </tr>
+ <tr>
+ <td id="L726" class="blob-num js-line-number" data-line-number="726"></td>
+ <td id="LC726" class="blob-code blob-code-inner js-file-line">:102D500090E0029774F08091AD019091AE01988758 </td>
+ </tr>
+ <tr>
+ <td id="L727" class="blob-num js-line-number" data-line-number="727"></td>
+ <td id="LC727" class="blob-code blob-code-inner js-file-line">:102D60008F831986DB86CA862C87CE0107960E9440 </td>
+ </tr>
+ <tr>
+ <td id="L728" class="blob-num js-line-number" data-line-number="728"></td>
+ <td id="LC728" class="blob-code blob-code-inner js-file-line">:102D7000D21186E0F801ADEAB1E001900D928A959A </td>
+ </tr>
+ <tr>
+ <td id="L729" class="blob-num js-line-number" data-line-number="729"></td>
+ <td id="LC729" class="blob-code blob-code-inner js-file-line">:102D8000E1F70E948C150E947E15FF24F394D6C0B3 </td>
+ </tr>
+ <tr>
+ <td id="L730" class="blob-num js-line-number" data-line-number="730"></td>
+ <td id="LC730" class="blob-code blob-code-inner js-file-line">:102D90004D875E878D859E850E94481A292F229532 </td>
+ </tr>
+ <tr>
+ <td id="L731" class="blob-num js-line-number" data-line-number="731"></td>
+ <td id="LC731" class="blob-code blob-code-inner js-file-line">:102DA0002F7030E0223031050CF0BCC09F7009F06C </td>
+ </tr>
+ <tr>
+ <td id="L732" class="blob-num js-line-number" data-line-number="732"></td>
+ <td id="LC732" class="blob-code blob-code-inner js-file-line">:102DB000B6C0805E883008F4C1C0C8010E94D2113C </td>
+ </tr>
+ <tr>
+ <td id="L733" class="blob-num js-line-number" data-line-number="733"></td>
+ <td id="LC733" class="blob-code blob-code-inner js-file-line">:102DC000E4CFC816D90608F453C0F601E81BF90B86 </td>
+ </tr>
+ <tr>
+ <td id="L734" class="blob-num js-line-number" data-line-number="734"></td>
+ <td id="LC734" class="blob-code blob-code-inner js-file-line">:102DD000CF01883C910508F450C0F12C7C2DD98A94 </td>
+ </tr>
+ <tr>
+ <td id="L735" class="blob-num js-line-number" data-line-number="735"></td>
+ <td id="LC735" class="blob-code blob-code-inner js-file-line">:102DE000C88A89890E943E15EDEAF1E086E0DF019C </td>
+ </tr>
+ <tr>
+ <td id="L736" class="blob-num js-line-number" data-line-number="736"></td>
+ <td id="LC736" class="blob-code blob-code-inner js-file-line">:102DF0001D928A95E9F70E947E15A0C0751314C034 </td>
+ </tr>
+ <tr>
+ <td id="L737" class="blob-num js-line-number" data-line-number="737"></td>
+ <td id="LC737" class="blob-code blob-code-inner js-file-line">:102E0000341312C0611110C08091B201F8018583A2 </td>
+ </tr>
+ <tr>
+ <td id="L738" class="blob-num js-line-number" data-line-number="738"></td>
+ <td id="LC738" class="blob-code blob-code-inner js-file-line">:102E1000C8010E94D21186E0EDEAF1E0DF011D92C7 </td>
+ </tr>
+ <tr>
+ <td id="L739" class="blob-num js-line-number" data-line-number="739"></td>
+ <td id="LC739" class="blob-code blob-code-inner js-file-line">:102E20008A95E9F7FE2C8AC04D875E878D859E8541 </td>
+ </tr>
+ <tr>
+ <td id="L740" class="blob-num js-line-number" data-line-number="740"></td>
+ <td id="LC740" class="blob-code blob-code-inner js-file-line">:102E30006A8B0E9418156A89882309F4BECF66231D </td>
+ </tr>
+ <tr>
+ <td id="L741" class="blob-num js-line-number" data-line-number="741"></td>
+ <td id="LC741" class="blob-code blob-code-inner js-file-line">:102E400009F4BBCF2091B201822F82958F7090E060 </td>
+ </tr>
+ <tr>
+ <td id="L742" class="blob-num js-line-number" data-line-number="742"></td>
+ <td id="LC742" class="blob-code blob-code-inner js-file-line">:102E500002970CF48ECF8091AD019091AE019A83D0 </td>
+ </tr>
+ <tr>
+ <td id="L743" class="blob-num js-line-number" data-line-number="743"></td>
+ <td id="LC743" class="blob-code blob-code-inner js-file-line">:102E600089831B82DD82CC822E83CE0101967FCFA7 </td>
+ </tr>
+ <tr>
+ <td id="L744" class="blob-num js-line-number" data-line-number="744"></td>
+ <td id="LC744" class="blob-code blob-code-inner js-file-line">:102E7000809590958C0D9D1DACCFF62E662309F4A0 </td>
+ </tr>
+ <tr>
+ <td id="L745" class="blob-num js-line-number" data-line-number="745"></td>
+ <td id="LC745" class="blob-code blob-code-inner js-file-line">:102E80009CCF75132EC034132CC02091B20120FDAD </td>
+ </tr>
+ <tr>
+ <td id="L746" class="blob-num js-line-number" data-line-number="746"></td>
+ <td id="LC746" class="blob-code blob-code-inner js-file-line">:102E90001FC0822F82958F70D9F0D80115962C9380 </td>
+ </tr>
+ <tr>
+ <td id="L747" class="blob-num js-line-number" data-line-number="747"></td>
+ <td id="LC747" class="blob-code blob-code-inner js-file-line">:102EA00015978F3049F08F5F982F9295907F822FE2 </td>
+ </tr>
+ <tr>
+ <td id="L748" class="blob-num js-line-number" data-line-number="748"></td>
+ <td id="LC748" class="blob-code blob-code-inner js-file-line">:102EB0008F70892B15968C93C8010E94D21186E0E1 </td>
+ </tr>
+ <tr>
+ <td id="L749" class="blob-num js-line-number" data-line-number="749"></td>
+ <td id="LC749" class="blob-code blob-code-inner js-file-line">:102EC000F801ADEAB1E001900D928A95E1F793CF58 </td>
+ </tr>
+ <tr>
+ <td id="L750" class="blob-num js-line-number" data-line-number="750"></td>
+ <td id="LC750" class="blob-code blob-code-inner js-file-line">:102ED00086E0F801ADEAB1E001900D928A95E1F744 </td>
+ </tr>
+ <tr>
+ <td id="L751" class="blob-num js-line-number" data-line-number="751"></td>
+ <td id="LC751" class="blob-code blob-code-inner js-file-line">:102EE0002DC04D875E878D859E850E9418158111A6 </td>
+ </tr>
+ <tr>
+ <td id="L752" class="blob-num js-line-number" data-line-number="752"></td>
+ <td id="LC752" class="blob-code blob-code-inner js-file-line">:102EF00040CF8091B20181608093B201C8010E94ED </td>
+ </tr>
+ <tr>
+ <td id="L753" class="blob-num js-line-number" data-line-number="753"></td>
+ <td id="LC753" class="blob-code blob-code-inner js-file-line">:102F0000D2111CC0662309F458CF4D875E878D858A </td>
+ </tr>
+ <tr>
+ <td id="L754" class="blob-num js-line-number" data-line-number="754"></td>
+ <td id="LC754" class="blob-code blob-code-inner js-file-line">:102F10009E850E941815882309F44FCF2ACF81116E </td>
+ </tr>
+ <tr>
+ <td id="L755" class="blob-num js-line-number" data-line-number="755"></td>
+ <td id="LC755" class="blob-code blob-code-inner js-file-line">:102F200048CF0CC0243031050CF047CF9F7009F416 </td>
+ </tr>
+ <tr>
+ <td id="L756" class="blob-num js-line-number" data-line-number="756"></td>
+ <td id="LC756" class="blob-code blob-code-inner js-file-line">:102F300040CFF8019581907F09F03BCF8F2D6296AD </td>
+ </tr>
+ <tr>
+ <td id="L757" class="blob-num js-line-number" data-line-number="757"></td>
+ <td id="LC757" class="blob-code blob-code-inner js-file-line">:102F40000FB6F894DEBF0FBECDBFDF91CF911F91BA </td>
+ </tr>
+ <tr>
+ <td id="L758" class="blob-num js-line-number" data-line-number="758"></td>
+ <td id="LC758" class="blob-code blob-code-inner js-file-line">:102F50000F91FF90EF90DF90CF9008951F93CF9344 </td>
+ </tr>
+ <tr>
+ <td id="L759" class="blob-num js-line-number" data-line-number="759"></td>
+ <td id="LC759" class="blob-code blob-code-inner js-file-line">:102F6000DF93CDB7DEB72C970FB6F894DEBF0FBE58 </td>
+ </tr>
+ <tr>
+ <td id="L760" class="blob-num js-line-number" data-line-number="760"></td>
+ <td id="LC760" class="blob-code blob-code-inner js-file-line">:102F7000CDBF4F83588769877A878B879C87CE011F </td>
+ </tr>
+ <tr>
+ <td id="L761" class="blob-num js-line-number" data-line-number="761"></td>
+ <td id="LC761" class="blob-code blob-code-inner js-file-line">:102F800007960E94E715882369F08F8198852A8526 </td>
+ </tr>
+ <tr>
+ <td id="L762" class="blob-num js-line-number" data-line-number="762"></td>
+ <td id="LC762" class="blob-code blob-code-inner js-file-line">:102F90003B85232BF1F19F3F09F063C08F3F09F080 </td>
+ </tr>
+ <tr>
+ <td id="L763" class="blob-num js-line-number" data-line-number="763"></td>
+ <td id="LC763" class="blob-code blob-code-inner js-file-line">:102FA00060C037C086E0FE013796DE0111960190C1 </td>
+ </tr>
+ <tr>
+ <td id="L764" class="blob-num js-line-number" data-line-number="764"></td>
+ <td id="LC764" class="blob-code blob-code-inner js-file-line">:102FB0000D928A95E1F76F817885EA85FB853097D8 </td>
+ </tr>
+ <tr>
+ <td id="L765" class="blob-num js-line-number" data-line-number="765"></td>
+ <td id="LC765" class="blob-code blob-code-inner js-file-line">:102FC00041F17F3F11F46F3F21F120917C0130E00E </td>
+ </tr>
+ <tr>
+ <td id="L766" class="blob-num js-line-number" data-line-number="766"></td>
+ <td id="LC766" class="blob-code blob-code-inner js-file-line">:102FD000C90101968770992740917B0150E08417C1 </td>
+ </tr>
+ <tr>
+ <td id="L767" class="blob-num js-line-number" data-line-number="767"></td>
+ <td id="LC767" class="blob-code blob-code-inner js-file-line">:102FE000950709F447C069837A83FD83EC8396E0F3 </td>
+ </tr>
+ <tr>
+ <td id="L768" class="blob-num js-line-number" data-line-number="768"></td>
+ <td id="LC768" class="blob-code blob-code-inner js-file-line">:102FF000929FD001939FB00D1124A358BE4FFE01A4 </td>
+ </tr>
+ <tr>
+ <td id="L769" class="blob-num js-line-number" data-line-number="769"></td>
+ <td id="LC769" class="blob-code blob-code-inner js-file-line">:10300000319601900D929A95E1F780937C010E9490 </td>
+ </tr>
+ <tr>
+ <td id="L770" class="blob-num js-line-number" data-line-number="770"></td>
+ <td id="LC770" class="blob-code blob-code-inner js-file-line">:103010005D1516E080917B0190917C018917C1F1CB </td>
+ </tr>
+ <tr>
+ <td id="L771" class="blob-num js-line-number" data-line-number="771"></td>
+ <td id="LC771" class="blob-code blob-code-inner js-file-line">:10302000189FC001112483589E4F0E94E7158823E2 </td>
+ </tr>
+ <tr>
+ <td id="L772" class="blob-num js-line-number" data-line-number="772"></td>
+ <td id="LC772" class="blob-code blob-code-inner js-file-line">:1030300079F1E0917B011E9FF0011124E358FE4FCE </td>
+ </tr>
+ <tr>
+ <td id="L773" class="blob-num js-line-number" data-line-number="773"></td>
+ <td id="LC773" class="blob-code blob-code-inner js-file-line">:103040004081518162817381848195810E944D15F7 </td>
+ </tr>
+ <tr>
+ <td id="L774" class="blob-num js-line-number" data-line-number="774"></td>
+ <td id="LC774" class="blob-code blob-code-inner js-file-line">:1030500080917B0190E001968770992780937B0196 </td>
+ </tr>
+ <tr>
+ <td id="L775" class="blob-num js-line-number" data-line-number="775"></td>
+ <td id="LC775" class="blob-code blob-code-inner js-file-line">:10306000D9CF4F81588569857A858B859C850E944B </td>
+ </tr>
+ <tr>
+ <td id="L776" class="blob-num js-line-number" data-line-number="776"></td>
+ <td id="LC776" class="blob-code blob-code-inner js-file-line">:103070004D15CFCF0E94141510927C0110927B0148 </td>
+ </tr>
+ <tr>
+ <td id="L777" class="blob-num js-line-number" data-line-number="777"></td>
+ <td id="LC777" class="blob-code blob-code-inner js-file-line">:10308000EDEAF1E086E0DF011D928A95E9F7C1CF14 </td>
+ </tr>
+ <tr>
+ <td id="L778" class="blob-num js-line-number" data-line-number="778"></td>
+ <td id="LC778" class="blob-code blob-code-inner js-file-line">:103090002C960FB6F894DEBF0FBECDBFDF91CF9157 </td>
+ </tr>
+ <tr>
+ <td id="L779" class="blob-num js-line-number" data-line-number="779"></td>
+ <td id="LC779" class="blob-code blob-code-inner js-file-line">:1030A0001F910895EF92FF920F931F93CF93DF9399 </td>
+ </tr>
+ <tr>
+ <td id="L780" class="blob-num js-line-number" data-line-number="780"></td>
+ <td id="LC780" class="blob-code blob-code-inner js-file-line">:1030B0008C01892B09F46CC0F12CEE24E394E80117 </td>
+ </tr>
+ <tr>
+ <td id="L781" class="blob-num js-line-number" data-line-number="781"></td>
+ <td id="LC781" class="blob-code blob-code-inner js-file-line">:1030C0002196F8018491843740F4843008F051C08F </td>
+ </tr>
+ <tr>
+ <td id="L782" class="blob-num js-line-number" data-line-number="782"></td>
+ <td id="LC782" class="blob-code blob-code-inner js-file-line">:1030D000813081F0823019F15BC0853709F444C03A </td>
+ </tr>
+ <tr>
+ <td id="L783" class="blob-num js-line-number" data-line-number="783"></td>
+ <td id="LC783" class="blob-code blob-code-inner js-file-line">:1030E000A8F19CE7980F903708F052C08F770E94A4 </td>
+ </tr>
+ <tr>
+ <td id="L784" class="blob-num js-line-number" data-line-number="784"></td>
+ <td id="LC784" class="blob-code blob-code-inner js-file-line">:1030F000751141C00E5F1F4FFE01C49180E28C0F1D </td>
+ </tr>
+ <tr>
+ <td id="L785" class="blob-num js-line-number" data-line-number="785"></td>
+ <td id="LC785" class="blob-code blob-code-inner js-file-line">:10310000883048F4C7708E2D01C0880FCA95EAF741 </td>
+ </tr>
+ <tr>
+ <td id="L786" class="blob-num js-line-number" data-line-number="786"></td>
+ <td id="LC786" class="blob-code blob-code-inner js-file-line">:103110000E94FD1A14C08C2F0E94AD102DC00E5FAE </td>
+ </tr>
+ <tr>
+ <td id="L787" class="blob-num js-line-number" data-line-number="787"></td>
+ <td id="LC787" class="blob-code blob-code-inner js-file-line">:103120001F4FFE01C49180E28C0F883058F4C770A5 </td>
+ </tr>
+ <tr>
+ <td id="L788" class="blob-num js-line-number" data-line-number="788"></td>
+ <td id="LC788" class="blob-code blob-code-inner js-file-line">:103130008E2D01C0880FCA95EAF70E94031B0E94DA </td>
+ </tr>
+ <tr>
+ <td id="L789" class="blob-num js-line-number" data-line-number="789"></td>
+ <td id="LC789" class="blob-code blob-code-inner js-file-line">:10314000241B1AC08C2F0E94751116C00E5F1F4FD2 </td>
+ </tr>
+ <tr>
+ <td id="L790" class="blob-num js-line-number" data-line-number="790"></td>
+ <td id="LC790" class="blob-code blob-code-inner js-file-line">:10315000FE01C491CC2381F08FE99FE00197F1F744 </td>
+ </tr>
+ <tr>
+ <td id="L791" class="blob-num js-line-number" data-line-number="791"></td>
+ <td id="LC791" class="blob-code blob-code-inner js-file-line">:1031600000C00000C150F6CF0E5F1F4FFE01F4906B </td>
+ </tr>
+ <tr>
+ <td id="L792" class="blob-num js-line-number" data-line-number="792"></td>
+ <td id="LC792" class="blob-code blob-code-inner js-file-line">:1031700003C00E94AD108E018F2D882309F49FCFCC </td>
+ </tr>
+ <tr>
+ <td id="L793" class="blob-num js-line-number" data-line-number="793"></td>
+ <td id="LC793" class="blob-code blob-code-inner js-file-line">:10318000EFE9FFE03197F1F700C000008150F5CF83 </td>
+ </tr>
+ <tr>
+ <td id="L794" class="blob-num js-line-number" data-line-number="794"></td>
+ <td id="LC794" class="blob-code blob-code-inner js-file-line">:10319000DF91CF911F910F91FF90EF9008950895C7 </td>
+ </tr>
+ <tr>
+ <td id="L795" class="blob-num js-line-number" data-line-number="795"></td>
+ <td id="LC795" class="blob-code blob-code-inner js-file-line">:1031A0006093B7017093B8018093B9019093BA010D </td>
+ </tr>
+ <tr>
+ <td id="L796" class="blob-num js-line-number" data-line-number="796"></td>
+ <td id="LC796" class="blob-code blob-code-inner js-file-line">:1031B0000C9400150F931F930091B7011091B80163 </td>
+ </tr>
+ <tr>
+ <td id="L797" class="blob-num js-line-number" data-line-number="797"></td>
+ <td id="LC797" class="blob-code blob-code-inner js-file-line">:1031C0002091B9013091BA01DC01CB01802B912B08 </td>
+ </tr>
+ <tr>
+ <td id="L798" class="blob-num js-line-number" data-line-number="798"></td>
+ <td id="LC798" class="blob-code blob-code-inner js-file-line">:1031D000A22BB32B8093B7019093B801A093B901B0 </td>
+ </tr>
+ <tr>
+ <td id="L799" class="blob-num js-line-number" data-line-number="799"></td>
+ <td id="LC799" class="blob-code blob-code-inner js-file-line">:1031E000B093BA011F910F910C9400150F931F9388 </td>
+ </tr>
+ <tr>
+ <td id="L800" class="blob-num js-line-number" data-line-number="800"></td>
+ <td id="LC800" class="blob-code blob-code-inner js-file-line">:1031F0000091B7011091B8012091B9013091BA0145 </td>
+ </tr>
+ <tr>
+ <td id="L801" class="blob-num js-line-number" data-line-number="801"></td>
+ <td id="LC801" class="blob-code blob-code-inner js-file-line">:10320000DC01CB0180239123A223B3238093B70158 </td>
+ </tr>
+ <tr>
+ <td id="L802" class="blob-num js-line-number" data-line-number="802"></td>
+ <td id="LC802" class="blob-code blob-code-inner js-file-line">:103210009093B801A093B901B093BA011F910F9197 </td>
+ </tr>
+ <tr>
+ <td id="L803" class="blob-num js-line-number" data-line-number="803"></td>
+ <td id="LC803" class="blob-code blob-code-inner js-file-line">:103220000C9400150F931F930091B7011091B801F2 </td>
+ </tr>
+ <tr>
+ <td id="L804" class="blob-num js-line-number" data-line-number="804"></td>
+ <td id="LC804" class="blob-code blob-code-inner js-file-line">:103230002091B9013091BA01DC01CB01802791279F </td>
+ </tr>
+ <tr>
+ <td id="L805" class="blob-num js-line-number" data-line-number="805"></td>
+ <td id="LC805" class="blob-code blob-code-inner js-file-line">:10324000A227B3278093B7019093B801A093B90147 </td>
+ </tr>
+ <tr>
+ <td id="L806" class="blob-num js-line-number" data-line-number="806"></td>
+ <td id="LC806" class="blob-code blob-code-inner js-file-line">:10325000B093BA011F910F910C9400151092B30115 </td>
+ </tr>
+ <tr>
+ <td id="L807" class="blob-num js-line-number" data-line-number="807"></td>
+ <td id="LC807" class="blob-code blob-code-inner js-file-line">:103260001092B4011092B5011092B6010C940015A1 </td>
+ </tr>
+ <tr>
+ <td id="L808" class="blob-num js-line-number" data-line-number="808"></td>
+ <td id="LC808" class="blob-code blob-code-inner js-file-line">:1032700041E050E060E070E004C0440F551F661F5D </td>
+ </tr>
+ <tr>
+ <td id="L809" class="blob-num js-line-number" data-line-number="809"></td>
+ <td id="LC809" class="blob-code blob-code-inner js-file-line">:10328000771F8A95D2F74093B3015093B4016093AE </td>
+ </tr>
+ <tr>
+ <td id="L810" class="blob-num js-line-number" data-line-number="810"></td>
+ <td id="LC810" class="blob-code blob-code-inner js-file-line">:10329000B5017093B6010C94001541E050E060E078 </td>
+ </tr>
+ <tr>
+ <td id="L811" class="blob-num js-line-number" data-line-number="811"></td>
+ <td id="LC811" class="blob-code blob-code-inner js-file-line">:1032A00070E004C0440F551F661F771F8A95D2F740 </td>
+ </tr>
+ <tr>
+ <td id="L812" class="blob-num js-line-number" data-line-number="812"></td>
+ <td id="LC812" class="blob-code blob-code-inner js-file-line">:1032B0008091B3019091B401A091B501B091B60194 </td>
+ </tr>
+ <tr>
+ <td id="L813" class="blob-num js-line-number" data-line-number="813"></td>
+ <td id="LC813" class="blob-code blob-code-inner js-file-line">:1032C000482B592B6A2B7B2B4093B3015093B401AD </td>
+ </tr>
+ <tr>
+ <td id="L814" class="blob-num js-line-number" data-line-number="814"></td>
+ <td id="LC814" class="blob-code blob-code-inner js-file-line">:1032D0006093B5017093B6010C94001541E050E085 </td>
+ </tr>
+ <tr>
+ <td id="L815" class="blob-num js-line-number" data-line-number="815"></td>
+ <td id="LC815" class="blob-code blob-code-inner js-file-line">:1032E00060E070E004C0440F551F661F771F8A9589 </td>
+ </tr>
+ <tr>
+ <td id="L816" class="blob-num js-line-number" data-line-number="816"></td>
+ <td id="LC816" class="blob-code blob-code-inner js-file-line">:1032F000D2F740955095609570958091B30190916B </td>
+ </tr>
+ <tr>
+ <td id="L817" class="blob-num js-line-number" data-line-number="817"></td>
+ <td id="LC817" class="blob-code blob-code-inner js-file-line">:10330000B401A091B501B091B601482359236A23B5 </td>
+ </tr>
+ <tr>
+ <td id="L818" class="blob-num js-line-number" data-line-number="818"></td>
+ <td id="LC818" class="blob-code blob-code-inner js-file-line">:103310007B234093B3015093B4016093B501709344 </td>
+ </tr>
+ <tr>
+ <td id="L819" class="blob-num js-line-number" data-line-number="819"></td>
+ <td id="LC819" class="blob-code blob-code-inner js-file-line">:10332000B6010C94001541E050E060E070E004C08C </td>
+ </tr>
+ <tr>
+ <td id="L820" class="blob-num js-line-number" data-line-number="820"></td>
+ <td id="LC820" class="blob-code blob-code-inner js-file-line">:10333000440F551F661F771F8A95D2F78091B301FE </td>
+ </tr>
+ <tr>
+ <td id="L821" class="blob-num js-line-number" data-line-number="821"></td>
+ <td id="LC821" class="blob-code blob-code-inner js-file-line">:103340009091B401A091B501B091B60148275927D9 </td>
+ </tr>
+ <tr>
+ <td id="L822" class="blob-num js-line-number" data-line-number="822"></td>
+ <td id="LC822" class="blob-code blob-code-inner js-file-line">:103350006A277B274093B3015093B4016093B50172 </td>
+ </tr>
+ <tr>
+ <td id="L823" class="blob-num js-line-number" data-line-number="823"></td>
+ <td id="LC823" class="blob-code blob-code-inner js-file-line">:103360007093B6010C9400150F931F930091B30155 </td>
+ </tr>
+ <tr>
+ <td id="L824" class="blob-num js-line-number" data-line-number="824"></td>
+ <td id="LC824" class="blob-code blob-code-inner js-file-line">:103370001091B4012091B5013091B601DC01CB016F </td>
+ </tr>
+ <tr>
+ <td id="L825" class="blob-num js-line-number" data-line-number="825"></td>
+ <td id="LC825" class="blob-code blob-code-inner js-file-line">:10338000802B912BA22BB32B8093B3019093B4018C </td>
+ </tr>
+ <tr>
+ <td id="L826" class="blob-num js-line-number" data-line-number="826"></td>
+ <td id="LC826" class="blob-code blob-code-inner js-file-line">:10339000A093B501B093B6011F910F910C94001545 </td>
+ </tr>
+ <tr>
+ <td id="L827" class="blob-num js-line-number" data-line-number="827"></td>
+ <td id="LC827" class="blob-code blob-code-inner js-file-line">:1033A0000F931F930091B3011091B4012091B501C7 </td>
+ </tr>
+ <tr>
+ <td id="L828" class="blob-num js-line-number" data-line-number="828"></td>
+ <td id="LC828" class="blob-code blob-code-inner js-file-line">:1033B0003091B601DC01CB0180239123A223B323FA </td>
+ </tr>
+ <tr>
+ <td id="L829" class="blob-num js-line-number" data-line-number="829"></td>
+ <td id="LC829" class="blob-code blob-code-inner js-file-line">:1033C0008093B3019093B401A093B501B093B6017B </td>
+ </tr>
+ <tr>
+ <td id="L830" class="blob-num js-line-number" data-line-number="830"></td>
+ <td id="LC830" class="blob-code blob-code-inner js-file-line">:1033D0001F910F910C9400150F931F930091B3014F </td>
+ </tr>
+ <tr>
+ <td id="L831" class="blob-num js-line-number" data-line-number="831"></td>
+ <td id="LC831" class="blob-code blob-code-inner js-file-line">:1033E0001091B4012091B5013091B601DC01CB01FF </td>
+ </tr>
+ <tr>
+ <td id="L832" class="blob-num js-line-number" data-line-number="832"></td>
+ <td id="LC832" class="blob-code blob-code-inner js-file-line">:1033F00080279127A227B3278093B3019093B4012C </td>
+ </tr>
+ <tr>
+ <td id="L833" class="blob-num js-line-number" data-line-number="833"></td>
+ <td id="LC833" class="blob-code blob-code-inner js-file-line">:10340000A093B501B093B6011F910F910C940015D4 </td>
+ </tr>
+ <tr>
+ <td id="L834" class="blob-num js-line-number" data-line-number="834"></td>
+ <td id="LC834" class="blob-code blob-code-inner js-file-line">:103410000895CF92DF92EF92FF920F931F93CF9375 </td>
+ </tr>
+ <tr>
+ <td id="L835" class="blob-num js-line-number" data-line-number="835"></td>
+ <td id="LC835" class="blob-code blob-code-inner js-file-line">:10342000DF938C01C090B701D090B801E090B90152 </td>
+ </tr>
+ <tr>
+ <td id="L836" class="blob-num js-line-number" data-line-number="836"></td>
+ <td id="LC836" class="blob-code blob-code-inner js-file-line">:10343000F090BA018091B3019091B401A091B501CF </td>
+ </tr>
+ <tr>
+ <td id="L837" class="blob-num js-line-number" data-line-number="837"></td>
+ <td id="LC837" class="blob-code blob-code-inner js-file-line">:10344000B091B601C82AD92AEA2AFB2ACFE1D0E0F6 </td>
+ </tr>
+ <tr>
+ <td id="L838" class="blob-num js-line-number" data-line-number="838"></td>
+ <td id="LC838" class="blob-code blob-code-inner js-file-line">:10345000D701C6010C2E04C0B695A7959795879500 </td>
+ </tr>
+ <tr>
+ <td id="L839" class="blob-num js-line-number" data-line-number="839"></td>
+ <td id="LC839" class="blob-code blob-code-inner js-file-line">:103460000A94D2F780FF06C0B8018C2F0E94DF07B4 </td>
+ </tr>
+ <tr>
+ <td id="L840" class="blob-num js-line-number" data-line-number="840"></td>
+ <td id="LC840" class="blob-code blob-code-inner js-file-line">:10347000019721F4219760F780E001C08C2FDF9144 </td>
+ </tr>
+ <tr>
+ <td id="L841" class="blob-num js-line-number" data-line-number="841"></td>
+ <td id="LC841" class="blob-code blob-code-inner js-file-line">:10348000CF911F910F91FF90EF90DF90CF90089513 </td>
+ </tr>
+ <tr>
+ <td id="L842" class="blob-num js-line-number" data-line-number="842"></td>
+ <td id="LC842" class="blob-code blob-code-inner js-file-line">:10349000CF93DF93EC010E94091ABE010E94DF075F </td>
+ </tr>
+ <tr>
+ <td id="L843" class="blob-num js-line-number" data-line-number="843"></td>
+ <td id="LC843" class="blob-code blob-code-inner js-file-line">:1034A000DF91CF910895CB010E94481A0895909121 </td>
+ </tr>
+ <tr>
+ <td id="L844" class="blob-num js-line-number" data-line-number="844"></td>
+ <td id="LC844" class="blob-code blob-code-inner js-file-line">:1034B0000C01992321F090910D01911109C02091E7 </td>
+ </tr>
+ <tr>
+ <td id="L845" class="blob-num js-line-number" data-line-number="845"></td>
+ <td id="LC845" class="blob-code blob-code-inner js-file-line">:1034C0000E0130910F01F90132969FEF40E01FC0CD </td>
+ </tr>
+ <tr>
+ <td id="L846" class="blob-num js-line-number" data-line-number="846"></td>
+ <td id="LC846" class="blob-code blob-code-inner js-file-line">:1034D000982F9695969596959F3050F5E0910E0110 </td>
+ </tr>
+ <tr>
+ <td id="L847" class="blob-num js-line-number" data-line-number="847"></td>
+ <td id="LC847" class="blob-code blob-code-inner js-file-line">:1034E000F0910F01E90FF11D877021E030E0A90193 </td>
+ </tr>
+ <tr>
+ <td id="L848" class="blob-num js-line-number" data-line-number="848"></td>
+ <td id="LC848" class="blob-code blob-code-inner js-file-line">:1034F00002C0440F551F8A95E2F7CA019181892BBA </td>
+ </tr>
+ <tr>
+ <td id="L849" class="blob-num js-line-number" data-line-number="849"></td>
+ <td id="LC849" class="blob-code blob-code-inner js-file-line">:10350000818308959F3F39F04F5F4E3041F05191D4 </td>
+ </tr>
+ <tr>
+ <td id="L850" class="blob-num js-line-number" data-line-number="850"></td>
+ <td id="LC850" class="blob-code blob-code-inner js-file-line">:103510005813F8CF0DC05111F7CF942FF5CF9F3F1F </td>
+ </tr>
+ <tr>
+ <td id="L851" class="blob-num js-line-number" data-line-number="851"></td>
+ <td id="LC851" class="blob-code blob-code-inner js-file-line">:1035200039F0F901E90FF11D97FDFA9582830895AD </td>
+ </tr>
+ <tr>
+ <td id="L852" class="blob-num js-line-number" data-line-number="852"></td>
+ <td id="LC852" class="blob-code blob-code-inner js-file-line">:10353000089590910C01992321F090910D01911122 </td>
+ </tr>
+ <tr>
+ <td id="L853" class="blob-num js-line-number" data-line-number="853"></td>
+ <td id="LC853" class="blob-code blob-code-inner js-file-line">:1035400009C020910E0130910F01F9013296205FE0 </td>
+ </tr>
+ <tr>
+ <td id="L854" class="blob-num js-line-number" data-line-number="854"></td>
+ <td id="LC854" class="blob-code blob-code-inner js-file-line">:103550003F4F1FC0982F9695969596959F30F0F403 </td>
+ </tr>
+ <tr>
+ <td id="L855" class="blob-num js-line-number" data-line-number="855"></td>
+ <td id="LC855" class="blob-code blob-code-inner js-file-line">:10356000E0910E01F0910F01E90FF11D877021E04C </td>
+ </tr>
+ <tr>
+ <td id="L856" class="blob-num js-line-number" data-line-number="856"></td>
+ <td id="LC856" class="blob-code blob-code-inner js-file-line">:1035700030E0A90102C0440F551F8A95E2F7CA0145 </td>
+ </tr>
+ <tr>
+ <td id="L857" class="blob-num js-line-number" data-line-number="857"></td>
+ <td id="LC857" class="blob-code blob-code-inner js-file-line">:10358000809591818923818308953196E217F3070D </td>
+ </tr>
+ <tr>
+ <td id="L858" class="blob-num js-line-number" data-line-number="858"></td>
+ <td id="LC858" class="blob-code blob-code-inner js-file-line">:1035900029F090819813F9CF1082F7CF089581E038 </td>
+ </tr>
+ <tr>
+ <td id="L859" class="blob-num js-line-number" data-line-number="859"></td>
+ <td id="LC859" class="blob-code blob-code-inner js-file-line">:1035A00090E0E0910E01F0910F01E80FF91F1082F9 </td>
+ </tr>
+ <tr>
+ <td id="L860" class="blob-num js-line-number" data-line-number="860"></td>
+ <td id="LC860" class="blob-code blob-code-inner js-file-line">:1035B000019680319105A9F708959091CE01892B4C </td>
+ </tr>
+ <tr>
+ <td id="L861" class="blob-num js-line-number" data-line-number="861"></td>
+ <td id="LC861" class="blob-code blob-code-inner js-file-line">:1035C0008093CE01089580959091CE0189238093B8 </td>
+ </tr>
+ <tr>
+ <td id="L862" class="blob-num js-line-number" data-line-number="862"></td>
+ <td id="LC862" class="blob-code blob-code-inner js-file-line">:1035D000CE0108951092CE0108959091CD01892BCE </td>
+ </tr>
+ <tr>
+ <td id="L863" class="blob-num js-line-number" data-line-number="863"></td>
+ <td id="LC863" class="blob-code blob-code-inner js-file-line">:1035E0008093CD01089580959091CD01892380939A </td>
+ </tr>
+ <tr>
+ <td id="L864" class="blob-num js-line-number" data-line-number="864"></td>
+ <td id="LC864" class="blob-code blob-code-inner js-file-line">:1035F000CD0108951092CD0108959091CC01892BB1 </td>
+ </tr>
+ <tr>
+ <td id="L865" class="blob-num js-line-number" data-line-number="865"></td>
+ <td id="LC865" class="blob-code blob-code-inner js-file-line">:103600008093CC01089580959091CC01892380937B </td>
+ </tr>
+ <tr>
+ <td id="L866" class="blob-num js-line-number" data-line-number="866"></td>
+ <td id="LC866" class="blob-code blob-code-inner js-file-line">:10361000CC0108951092CC0108958093BB010895C8 </td>
+ </tr>
+ <tr>
+ <td id="L867" class="blob-num js-line-number" data-line-number="867"></td>
+ <td id="LC867" class="blob-code blob-code-inner js-file-line">:103620001092BB01089580910E0190910F01FC0151 </td>
+ </tr>
+ <tr>
+ <td id="L868" class="blob-num js-line-number" data-line-number="868"></td>
+ <td id="LC868" class="blob-code blob-code-inner js-file-line">:1036300031969C01205F3F4F80E0919191118F5F07 </td>
+ </tr>
+ <tr>
+ <td id="L869" class="blob-num js-line-number" data-line-number="869"></td>
+ <td id="LC869" class="blob-code blob-code-inner js-file-line">:10364000E217F307D1F70895E0910E01F0910F0111 </td>
+ </tr>
+ <tr>
+ <td id="L870" class="blob-num js-line-number" data-line-number="870"></td>
+ <td id="LC870" class="blob-code blob-code-inner js-file-line">:103650008091CE018083E0910E01F0910F01908165 </td>
+ </tr>
+ <tr>
+ <td id="L871" class="blob-num js-line-number" data-line-number="871"></td>
+ <td id="LC871" class="blob-code blob-code-inner js-file-line">:103660008091CD01892B8083E0910E01F0910F01B3 </td>
+ </tr>
+ <tr>
+ <td id="L872" class="blob-num js-line-number" data-line-number="872"></td>
+ <td id="LC872" class="blob-code blob-code-inner js-file-line">:1036700090818091CC01892B80838091BB0188232C </td>
+ </tr>
+ <tr>
+ <td id="L873" class="blob-num js-line-number" data-line-number="873"></td>
+ <td id="LC873" class="blob-code blob-code-inner js-file-line">:1036800061F0E0910E01F0910F019081892B808310 </td>
+ </tr>
+ <tr>
+ <td id="L874" class="blob-num js-line-number" data-line-number="874"></td>
+ <td id="LC874" class="blob-code blob-code-inner js-file-line">:103690000E94131B81111092BB0180910E01909129 </td>
+ </tr>
+ <tr>
+ <td id="L875" class="blob-num js-line-number" data-line-number="875"></td>
+ <td id="LC875" class="blob-code blob-code-inner js-file-line">:1036A0000F010C94900FCF92DF92EF92FF926C017A </td>
+ </tr>
+ <tr>
+ <td id="L876" class="blob-num js-line-number" data-line-number="876"></td>
+ <td id="LC876" class="blob-code blob-code-inner js-file-line">:1036B000EE24FF24C114D104E104F10421F0C70178 </td>
+ </tr>
+ <tr>
+ <td id="L877" class="blob-num js-line-number" data-line-number="877"></td>
+ <td id="LC877" class="blob-code blob-code-inner js-file-line">:1036C000B60120E101C020E0C72ED82EE92EFF244C </td>
+ </tr>
+ <tr>
+ <td id="L878" class="blob-num js-line-number" data-line-number="878"></td>
+ <td id="LC878" class="blob-code blob-code-inner js-file-line">:1036D000C114D104E104F10419F0285FC701B60157 </td>
+ </tr>
+ <tr>
+ <td id="L879" class="blob-num js-line-number" data-line-number="879"></td>
+ <td id="LC879" class="blob-code blob-code-inner js-file-line">:1036E0006B017C0154E0F694E794D794C7945A9503 </td>
+ </tr>
+ <tr>
+ <td id="L880" class="blob-num js-line-number" data-line-number="880"></td>
+ <td id="LC880" class="blob-code blob-code-inner js-file-line">:1036F000D1F7C114D104E104F10419F02C5FC70122 </td>
+ </tr>
+ <tr>
+ <td id="L881" class="blob-num js-line-number" data-line-number="881"></td>
+ <td id="LC881" class="blob-code blob-code-inner js-file-line">:10370000B6016B017C0142E0F694E794D794C7942C </td>
+ </tr>
+ <tr>
+ <td id="L882" class="blob-num js-line-number" data-line-number="882"></td>
+ <td id="LC882" class="blob-code blob-code-inner js-file-line">:103710004A95D1F7C114D104E104F10419F02E5FE8 </td>
+ </tr>
+ <tr>
+ <td id="L883" class="blob-num js-line-number" data-line-number="883"></td>
+ <td id="LC883" class="blob-code blob-code-inner js-file-line">:10372000C701B601DC01CB01B695A79597958795A2 </td>
+ </tr>
+ <tr>
+ <td id="L884" class="blob-num js-line-number" data-line-number="884"></td>
+ <td id="LC884" class="blob-code blob-code-inner js-file-line">:10373000892B8A2B8B2B09F02F5F822FFF90EF9024 </td>
+ </tr>
+ <tr>
+ <td id="L885" class="blob-num js-line-number" data-line-number="885"></td>
+ <td id="LC885" class="blob-code blob-code-inner js-file-line">:10374000DF90CF9008958091E601843039F1109296 </td>
+ </tr>
+ <tr>
+ <td id="L886" class="blob-num js-line-number" data-line-number="886"></td>
+ <td id="LC886" class="blob-code blob-code-inner js-file-line">:10375000D00120E488E190E00FB6F894A89580931A </td>
+ </tr>
+ <tr>
+ <td id="L887" class="blob-num js-line-number" data-line-number="887"></td>
+ <td id="LC887" class="blob-code blob-code-inner js-file-line">:1037600060000FBE2093600080E00E947A0883B75B </td>
+ </tr>
+ <tr>
+ <td id="L888" class="blob-num js-line-number" data-line-number="888"></td>
+ <td id="LC888" class="blob-code blob-code-inner js-file-line">:10377000817F846083BF83B7816083BF789488959D </td>
+ </tr>
+ <tr>
+ <td id="L889" class="blob-num js-line-number" data-line-number="889"></td>
+ <td id="LC889" class="blob-code blob-code-inner js-file-line">:1037800083B78E7F83BF0FB6F894A89580916000B1 </td>
+ </tr>
+ <tr>
+ <td id="L890" class="blob-num js-line-number" data-line-number="890"></td>
+ <td id="LC890" class="blob-code blob-code-inner js-file-line">:10379000886180936000109260000FBE08950895C4 </td>
+ </tr>
+ <tr>
+ <td id="L891" class="blob-num js-line-number" data-line-number="891"></td>
+ <td id="LC891" class="blob-code blob-code-inner js-file-line">:1037A0000895CF930E94CF1B0E94AA040E94D01BB1 </td>
+ </tr>
+ <tr>
+ <td id="L892" class="blob-num js-line-number" data-line-number="892"></td>
+ <td id="LC892" class="blob-code blob-code-inner js-file-line">:1037B000C0E08C2F0E949805811104C0CF5FCE30ED </td>
+ </tr>
+ <tr>
+ <td id="L893" class="blob-num js-line-number" data-line-number="893"></td>
+ <td id="LC893" class="blob-code blob-code-inner js-file-line">:1037C000C1F701C081E0CF9108950E9414150E94B5 </td>
+ </tr>
+ <tr>
+ <td id="L894" class="blob-num js-line-number" data-line-number="894"></td>
+ <td id="LC894" class="blob-code blob-code-inner js-file-line">:1037D000840F0C947A0882E084BD93E095BD9AEF43 </td>
+ </tr>
+ <tr>
+ <td id="L895" class="blob-num js-line-number" data-line-number="895"></td>
+ <td id="LC895" class="blob-code blob-code-inner js-file-line">:1037E00097BD80936E0008952FB7F8948091D10112 </td>
+ </tr>
+ <tr>
+ <td id="L896" class="blob-num js-line-number" data-line-number="896"></td>
+ <td id="LC896" class="blob-code blob-code-inner js-file-line">:1037F0009091D201A091D301B091D4012FBF08952F </td>
+ </tr>
+ <tr>
+ <td id="L897" class="blob-num js-line-number" data-line-number="897"></td>
+ <td id="LC897" class="blob-code blob-code-inner js-file-line">:10380000CF92DF92EF92FF920F931F932FB7F8940E </td>
+ </tr>
+ <tr>
+ <td id="L898" class="blob-num js-line-number" data-line-number="898"></td>
+ <td id="LC898" class="blob-code blob-code-inner js-file-line">:103810004091D1015091D2016091D3017091D401B6 </td>
+ </tr>
+ <tr>
+ <td id="L899" class="blob-num js-line-number" data-line-number="899"></td>
+ <td id="LC899" class="blob-code blob-code-inner js-file-line">:103820002FBF6A017B01EE24FF248C0120E030E0F1 </td>
+ </tr>
+ <tr>
+ <td id="L900" class="blob-num js-line-number" data-line-number="900"></td>
+ <td id="LC900" class="blob-code blob-code-inner js-file-line">:10383000C016D106E206F30610F4415051099A0170 </td>
+ </tr>
+ <tr>
+ <td id="L901" class="blob-num js-line-number" data-line-number="901"></td>
+ <td id="LC901" class="blob-code blob-code-inner js-file-line">:10384000281B390BC9011F910F91FF90EF90DF905A </td>
+ </tr>
+ <tr>
+ <td id="L902" class="blob-num js-line-number" data-line-number="902"></td>
+ <td id="LC902" class="blob-code blob-code-inner js-file-line">:10385000CF9008951F920F920FB60F9211248F935D </td>
+ </tr>
+ <tr>
+ <td id="L903" class="blob-num js-line-number" data-line-number="903"></td>
+ <td id="LC903" class="blob-code blob-code-inner js-file-line">:103860009F93AF93BF938091D1019091D201A0918A </td>
+ </tr>
+ <tr>
+ <td id="L904" class="blob-num js-line-number" data-line-number="904"></td>
+ <td id="LC904" class="blob-code blob-code-inner js-file-line">:10387000D301B091D4010196A11DB11D8093D10156 </td>
+ </tr>
+ <tr>
+ <td id="L905" class="blob-num js-line-number" data-line-number="905"></td>
+ <td id="LC905" class="blob-code blob-code-inner js-file-line">:103880009093D201A093D301B093D401BF91AF9193 </td>
+ </tr>
+ <tr>
+ <td id="L906" class="blob-num js-line-number" data-line-number="906"></td>
+ <td id="LC906" class="blob-code blob-code-inner js-file-line">:103890009F918F910F900FBE0F901F9018950E94CF </td>
+ </tr>
+ <tr>
+ <td id="L907" class="blob-num js-line-number" data-line-number="907"></td>
+ <td id="LC907" class="blob-code blob-code-inner js-file-line">:1038A000810CF8942FEF87EA91E6215080409040F8 </td>
+ </tr>
+ <tr>
+ <td id="L908" class="blob-num js-line-number" data-line-number="908"></td>
+ <td id="LC908" class="blob-code blob-code-inner js-file-line">:1038B000E1F700C0000087E090EBDC018093F001AD </td>
+ </tr>
+ <tr>
+ <td id="L909" class="blob-num js-line-number" data-line-number="909"></td>
+ <td id="LC909" class="blob-code blob-code-inner js-file-line">:1038C0009093F101A093F201B093F3019CE088E1A1 </td>
+ </tr>
+ <tr>
+ <td id="L910" class="blob-num js-line-number" data-line-number="910"></td>
+ <td id="LC910" class="blob-code blob-code-inner js-file-line">:1038D0000FB6F894A895809360000FBE9093600097 </td>
+ </tr>
+ <tr>
+ <td id="L911" class="blob-num js-line-number" data-line-number="911"></td>
+ <td id="LC911" class="blob-code blob-code-inner js-file-line">:1038E000FFCFEF92FF920F931F93CF93DF93D82FC9 </td>
+ </tr>
+ <tr>
+ <td id="L912" class="blob-num js-line-number" data-line-number="912"></td>
+ <td id="LC912" class="blob-code blob-code-inner js-file-line">:1038F000C0E08C2F0E94980500E010E0E82EF12C2B </td>
+ </tr>
+ <tr>
+ <td id="L913" class="blob-num js-line-number" data-line-number="913"></td>
+ <td id="LC913" class="blob-code blob-code-inner js-file-line">:10390000C701002E02C0959587950A94E2F780FDC5 </td>
+ </tr>
+ <tr>
+ <td id="L914" class="blob-num js-line-number" data-line-number="914"></td>
+ <td id="LC914" class="blob-code blob-code-inner js-file-line">:1039100006C00F5F1F4F0630110591F709C0602FD9 </td>
+ </tr>
+ <tr>
+ <td id="L915" class="blob-num js-line-number" data-line-number="915"></td>
+ <td id="LC915" class="blob-code blob-code-inner js-file-line">:103920007C2F80E00E94A005D813F3CF81E004C073 </td>
+ </tr>
+ <tr>
+ <td id="L916" class="blob-num js-line-number" data-line-number="916"></td>
+ <td id="LC916" class="blob-code blob-code-inner js-file-line">:10393000CF5FCE30F1F680E0DF91CF911F910F91F4 </td>
+ </tr>
+ <tr>
+ <td id="L917" class="blob-num js-line-number" data-line-number="917"></td>
+ <td id="LC917" class="blob-code blob-code-inner js-file-line">:10394000FF90EF900895CF93C82F8CE20E94711CD6 </td>
+ </tr>
+ <tr>
+ <td id="L918" class="blob-num js-line-number" data-line-number="918"></td>
+ <td id="LC918" class="blob-code blob-code-inner js-file-line">:10395000882321F08C2FCF910C94711C80E0CF91A3 </td>
+ </tr>
+ <tr>
+ <td id="L919" class="blob-num js-line-number" data-line-number="919"></td>
+ <td id="LC919" class="blob-code blob-code-inner js-file-line">:103960000895CF930E94F81D811102C00E94DE1DB0 </td>
+ </tr>
+ <tr>
+ <td id="L920" class="blob-num js-line-number" data-line-number="920"></td>
+ <td id="LC920" class="blob-code blob-code-inner js-file-line">:10397000C5E6C15049F00E94AA048FE39CE9019773 </td>
+ </tr>
+ <tr>
+ <td id="L921" class="blob-num js-line-number" data-line-number="921"></td>
+ <td id="LC921" class="blob-code blob-code-inner js-file-line">:10398000F1F700C00000F5CF89E20E94A31C81116D </td>
+ </tr>
+ <tr>
+ <td id="L922" class="blob-num js-line-number" data-line-number="922"></td>
+ <td id="LC922" class="blob-code blob-code-inner js-file-line">:1039900013C18AE20E94A31C81110E94DE1D85E0F2 </td>
+ </tr>
+ <tr>
+ <td id="L923" class="blob-num js-line-number" data-line-number="923"></td>
+ <td id="LC923" class="blob-code blob-code-inner js-file-line">:1039A0000E94A31C81110E944F1C0E94031E809341 </td>
+ </tr>
+ <tr>
+ <td id="L924" class="blob-num js-line-number" data-line-number="924"></td>
+ <td id="LC924" class="blob-code blob-code-inner js-file-line">:1039B000CF0187E00E94A31C8823A9F18BE10E941C </td>
+ </tr>
+ <tr>
+ <td id="L925" class="blob-num js-line-number" data-line-number="925"></td>
+ <td id="LC925" class="blob-code blob-code-inner js-file-line">:1039C000A31C882351F08091CF0181FB222720F98D </td>
+ </tr>
+ <tr>
+ <td id="L926" class="blob-num js-line-number" data-line-number="926"></td>
+ <td id="LC926" class="blob-code blob-code-inner js-file-line">:1039D00091E0922790FB81F90EC08EE00E94A31C1B </td>
+ </tr>
+ <tr>
+ <td id="L927" class="blob-num js-line-number" data-line-number="927"></td>
+ <td id="LC927" class="blob-code blob-code-inner js-file-line">:1039E000882361F08091CF0182FB222720F991E0AA </td>
+ </tr>
+ <tr>
+ <td id="L928" class="blob-num js-line-number" data-line-number="928"></td>
+ <td id="LC928" class="blob-code blob-code-inner js-file-line">:1039F000922790FB82F98093CF0115C080E10E944D </td>
+ </tr>
+ <tr>
+ <td id="L929" class="blob-num js-line-number" data-line-number="929"></td>
+ <td id="LC929" class="blob-code blob-code-inner js-file-line">:103A0000A31C9091CF01882341F093FB222720F93A </td>
+ </tr>
+ <tr>
+ <td id="L930" class="blob-num js-line-number" data-line-number="930"></td>
+ <td id="LC930" class="blob-code blob-code-inner js-file-line">:103A100081E0822780FB93F904C0892F809580FB89 </td>
+ </tr>
+ <tr>
+ <td id="L931" class="blob-num js-line-number" data-line-number="931"></td>
+ <td id="LC931" class="blob-code blob-code-inner js-file-line">:103A200090F99093CF018091CF010E94071E0E94D0 </td>
+ </tr>
+ <tr>
+ <td id="L932" class="blob-num js-line-number" data-line-number="932"></td>
+ <td id="LC932" class="blob-code blob-code-inner js-file-line">:103A3000151E8093EF0180EE0E94A31C882341F0A5 </td>
+ </tr>
+ <tr>
+ <td id="L933" class="blob-num js-line-number" data-line-number="933"></td>
+ <td id="LC933" class="blob-code blob-code-inner js-file-line">:103A40008091EF01982F909590FB80F98093EF0182 </td>
+ </tr>
+ <tr>
+ <td id="L934" class="blob-num js-line-number" data-line-number="934"></td>
+ <td id="LC934" class="blob-code blob-code-inner js-file-line">:103A500089E30E94A31C882359F08091EF0181FB28 </td>
+ </tr>
+ <tr>
+ <td id="L935" class="blob-num js-line-number" data-line-number="935"></td>
+ <td id="LC935" class="blob-code blob-code-inner js-file-line">:103A6000222720F991E0922790FB81F98093EF01C2 </td>
+ </tr>
+ <tr>
+ <td id="L936" class="blob-num js-line-number" data-line-number="936"></td>
+ <td id="LC936" class="blob-code blob-code-inner js-file-line">:103A700082EE0E94A31C882359F08091EF0182FB03 </td>
+ </tr>
+ <tr>
+ <td id="L937" class="blob-num js-line-number" data-line-number="937"></td>
+ <td id="LC937" class="blob-code blob-code-inner js-file-line">:103A8000222720F991E0922790FB82F98093EF01A1 </td>
+ </tr>
+ <tr>
+ <td id="L938" class="blob-num js-line-number" data-line-number="938"></td>
+ <td id="LC938" class="blob-code blob-code-inner js-file-line">:103A900086EE0E94A31C882359F08091EF0183FBDE </td>
+ </tr>
+ <tr>
+ <td id="L939" class="blob-num js-line-number" data-line-number="939"></td>
+ <td id="LC939" class="blob-code blob-code-inner js-file-line">:103AA000222720F991E0922790FB83F98093EF0180 </td>
+ </tr>
+ <tr>
+ <td id="L940" class="blob-num js-line-number" data-line-number="940"></td>
+ <td id="LC940" class="blob-code blob-code-inner js-file-line">:103AB00083EE0E94A31C882359F08091EF0184FBC0 </td>
+ </tr>
+ <tr>
+ <td id="L941" class="blob-num js-line-number" data-line-number="941"></td>
+ <td id="LC941" class="blob-code blob-code-inner js-file-line">:103AC000222720F991E0922790FB84F98093EF015F </td>
+ </tr>
+ <tr>
+ <td id="L942" class="blob-num js-line-number" data-line-number="942"></td>
+ <td id="LC942" class="blob-code blob-code-inner js-file-line">:103AD00085E30E94A31C882359F08091EF0185FBA8 </td>
+ </tr>
+ <tr>
+ <td id="L943" class="blob-num js-line-number" data-line-number="943"></td>
+ <td id="LC943" class="blob-code blob-code-inner js-file-line">:103AE000222720F991E0922790FB85F98093EF013E </td>
+ </tr>
+ <tr>
+ <td id="L944" class="blob-num js-line-number" data-line-number="944"></td>
+ <td id="LC944" class="blob-code blob-code-inner js-file-line">:103AF00081E30E94A31C882359F08091EF0186FB8B </td>
+ </tr>
+ <tr>
+ <td id="L945" class="blob-num js-line-number" data-line-number="945"></td>
+ <td id="LC945" class="blob-code blob-code-inner js-file-line">:103B0000222720F991E0922790FB86F98093EF011C </td>
+ </tr>
+ <tr>
+ <td id="L946" class="blob-num js-line-number" data-line-number="946"></td>
+ <td id="LC946" class="blob-code blob-code-inner js-file-line">:103B100081E10E94A31C882359F08091EF0187FB6B </td>
+ </tr>
+ <tr>
+ <td id="L947" class="blob-num js-line-number" data-line-number="947"></td>
+ <td id="LC947" class="blob-code blob-code-inner js-file-line">:103B2000222720F991E0922790FB87F98093EF01FB </td>
+ </tr>
+ <tr>
+ <td id="L948" class="blob-num js-line-number" data-line-number="948"></td>
+ <td id="LC948" class="blob-code blob-code-inner js-file-line">:103B30008091EF010E94191E8091EF0187FB882779 </td>
+ </tr>
+ <tr>
+ <td id="L949" class="blob-num js-line-number" data-line-number="949"></td>
+ <td id="LC949" class="blob-code blob-code-inner js-file-line">:103B400080F980930D0187E20E94A31CC82F8EE1AB </td>
+ </tr>
+ <tr>
+ <td id="L950" class="blob-num js-line-number" data-line-number="950"></td>
+ <td id="LC950" class="blob-code blob-code-inner js-file-line">:103B50000E94A31C8111C2608FE10E94A31C8111ED </td>
+ </tr>
+ <tr>
+ <td id="L951" class="blob-num js-line-number" data-line-number="951"></td>
+ <td id="LC951" class="blob-code blob-code-inner js-file-line">:103B6000C46080E20E94A31C8111C86081E20E94AF </td>
+ </tr>
+ <tr>
+ <td id="L952" class="blob-num js-line-number" data-line-number="952"></td>
+ <td id="LC952" class="blob-code blob-code-inner js-file-line">:103B7000A31C8111C06182E20E94A31C8111C0625A </td>
+ </tr>
+ <tr>
+ <td id="L953" class="blob-num js-line-number" data-line-number="953"></td>
+ <td id="LC953" class="blob-code blob-code-inner js-file-line">:103B800083E20E94A31C8111C06484E20E94A31CF2 </td>
+ </tr>
+ <tr>
+ <td id="L954" class="blob-num js-line-number" data-line-number="954"></td>
+ <td id="LC954" class="blob-code blob-code-inner js-file-line">:103B9000882311F0C06802C0CC2329F08C2F0E942A </td>
+ </tr>
+ <tr>
+ <td id="L955" class="blob-num js-line-number" data-line-number="955"></td>
+ <td id="LC955" class="blob-code blob-code-inner js-file-line">:103BA000101E6C2F03C00E940C1E682F70E080E076 </td>
+ </tr>
+ <tr>
+ <td id="L956" class="blob-num js-line-number" data-line-number="956"></td>
+ <td id="LC956" class="blob-code blob-code-inner js-file-line">:103BB00090E0CF910C94D018CF9108956DEE7EEFE8 </td>
+ </tr>
+ <tr>
+ <td id="L957" class="blob-num js-line-number" data-line-number="957"></td>
+ <td id="LC957" class="blob-code blob-code-inner js-file-line">:103BC00080E090E00E94582460E082E090E00E9453 </td>
+ </tr>
+ <tr>
+ <td id="L958" class="blob-num js-line-number" data-line-number="958"></td>
+ <td id="LC958" class="blob-code blob-code-inner js-file-line">:103BD000462460E083E090E00E94462460E084E0B8 </td>
+ </tr>
+ <tr>
+ <td id="L959" class="blob-num js-line-number" data-line-number="959"></td>
+ <td id="LC959" class="blob-code blob-code-inner js-file-line">:103BE00090E00E94462460E085E090E00C9446243A </td>
+ </tr>
+ <tr>
+ <td id="L960" class="blob-num js-line-number" data-line-number="960"></td>
+ <td id="LC960" class="blob-code blob-code-inner js-file-line">:103BF00080E090E00E94402421E08D3E9E4F09F03D </td>
+ </tr>
+ <tr>
+ <td id="L961" class="blob-num js-line-number" data-line-number="961"></td>
+ <td id="LC961" class="blob-code blob-code-inner js-file-line">:103C000020E0822F089582E090E00C943824682F01 </td>
+ </tr>
+ <tr>
+ <td id="L962" class="blob-num js-line-number" data-line-number="962"></td>
+ <td id="LC962" class="blob-code blob-code-inner js-file-line">:103C100082E090E00C94462483E090E00C943824F9 </td>
+ </tr>
+ <tr>
+ <td id="L963" class="blob-num js-line-number" data-line-number="963"></td>
+ <td id="LC963" class="blob-code blob-code-inner js-file-line">:103C2000682F83E090E00C94462484E090E00C94AC </td>
+ </tr>
+ <tr>
+ <td id="L964" class="blob-num js-line-number" data-line-number="964"></td>
+ <td id="LC964" class="blob-code blob-code-inner js-file-line">:103C30003824682F84E090E00C9446248091D701CA </td>
+ </tr>
+ <tr>
+ <td id="L965" class="blob-num js-line-number" data-line-number="965"></td>
+ <td id="LC965" class="blob-code blob-code-inner js-file-line">:103C400080FF0BC06091130185E0689FB0011124D3 </td>
+ </tr>
+ <tr>
+ <td id="L966" class="blob-num js-line-number" data-line-number="966"></td>
+ <td id="LC966" class="blob-code blob-code-inner js-file-line">:103C500075956795759567952BC081FF09C0609133 </td>
+ </tr>
+ <tr>
+ <td id="L967" class="blob-num js-line-number" data-line-number="967"></td>
+ <td id="LC967" class="blob-code blob-code-inner js-file-line">:103C6000130185E0689FB00111247595679520C008 </td>
+ </tr>
+ <tr>
+ <td id="L968" class="blob-num js-line-number" data-line-number="968"></td>
+ <td id="LC968" class="blob-code blob-code-inner js-file-line">:103C700082FF07C06091130185E0689FB0011124A5 </td>
+ </tr>
+ <tr>
+ <td id="L969" class="blob-num js-line-number" data-line-number="969"></td>
+ <td id="LC969" class="blob-code blob-code-inner js-file-line">:103C800017C09091D8019923D1F060911201961735 </td>
+ </tr>
+ <tr>
+ <td id="L970" class="blob-num js-line-number" data-line-number="970"></td>
+ <td id="LC970" class="blob-code blob-code-inner js-file-line">:103C900088F72091130185E0289F90011124929FBD </td>
+ </tr>
+ <tr>
+ <td id="L971" class="blob-num js-line-number" data-line-number="971"></td>
+ <td id="LC971" class="blob-code blob-code-inner js-file-line">:103CA000A001939F500D112470E0CA010E940A24C4 </td>
+ </tr>
+ <tr>
+ <td id="L972" class="blob-num js-line-number" data-line-number="972"></td>
+ <td id="LC972" class="blob-code blob-code-inner js-file-line">:103CB0006038710540F46115710539F002C065E0A6 </td>
+ </tr>
+ <tr>
+ <td id="L973" class="blob-num js-line-number" data-line-number="973"></td>
+ <td id="LC973" class="blob-code blob-code-inner js-file-line">:103CC00070E0862F08958FE7089581E00895809130 </td>
+ </tr>
+ <tr>
+ <td id="L974" class="blob-num js-line-number" data-line-number="974"></td>
+ <td id="LC974" class="blob-code blob-code-inner js-file-line">:103CD000D70180FF08C06091110170E0759567956C </td>
+ </tr>
+ <tr>
+ <td id="L975" class="blob-num js-line-number" data-line-number="975"></td>
+ <td id="LC975" class="blob-code blob-code-inner js-file-line">:103CE0007595679521C081FF06C06091110170E054 </td>
+ </tr>
+ <tr>
+ <td id="L976" class="blob-num js-line-number" data-line-number="976"></td>
+ <td id="LC976" class="blob-code blob-code-inner js-file-line">:103CF0007595679519C082FF04C06091110170E04D </td>
+ </tr>
+ <tr>
+ <td id="L977" class="blob-num js-line-number" data-line-number="977"></td>
+ <td id="LC977" class="blob-code blob-code-inner js-file-line">:103D000010C09091D8019923C1F0609110019617CD </td>
+ </tr>
+ <tr>
+ <td id="L978" class="blob-num js-line-number" data-line-number="978"></td>
+ <td id="LC978" class="blob-code blob-code-inner js-file-line">:103D1000A0F780911101899FC001112470E00E94D9 </td>
+ </tr>
+ <tr>
+ <td id="L979" class="blob-num js-line-number" data-line-number="979"></td>
+ <td id="LC979" class="blob-code blob-code-inner js-file-line">:103D20000A246038710528F46115710521F0862F89 </td>
+ </tr>
+ <tr>
+ <td id="L980" class="blob-num js-line-number" data-line-number="980"></td>
+ <td id="LC980" class="blob-code blob-code-inner js-file-line">:103D300008958FE7089581E0089561E070E0F4CF81 </td>
+ </tr>
+ <tr>
+ <td id="L981" class="blob-num js-line-number" data-line-number="981"></td>
+ <td id="LC981" class="blob-code blob-code-inner js-file-line">:103D4000803F21F40E941E1E819504C0813F29F40A </td>
+ </tr>
+ <tr>
+ <td id="L982" class="blob-num js-line-number" data-line-number="982"></td>
+ <td id="LC982" class="blob-code blob-code-inner js-file-line">:103D50000E941E1E8093DB010895823F21F40E9481 </td>
+ </tr>
+ <tr>
+ <td id="L983" class="blob-num js-line-number" data-line-number="983"></td>
+ <td id="LC983" class="blob-code blob-code-inner js-file-line">:103D60001E1E819504C0833F29F40E941E1E80936D </td>
+ </tr>
+ <tr>
+ <td id="L984" class="blob-num js-line-number" data-line-number="984"></td>
+ <td id="LC984" class="blob-code blob-code-inner js-file-line">:103D7000DA010895893F19F40E94671E05C08A3F41 </td>
+ </tr>
+ <tr>
+ <td id="L985" class="blob-num js-line-number" data-line-number="985"></td>
+ <td id="LC985" class="blob-code blob-code-inner js-file-line">:103D800031F40E94671E81958093DC0108958B3F7A </td>
+ </tr>
+ <tr>
+ <td id="L986" class="blob-num js-line-number" data-line-number="986"></td>
+ <td id="LC986" class="blob-code blob-code-inner js-file-line">:103D900021F40E94671E819504C08C3F29F40E9483 </td>
+ </tr>
+ <tr>
+ <td id="L987" class="blob-num js-line-number" data-line-number="987"></td>
+ <td id="LC987" class="blob-code blob-code-inner js-file-line">:103DA000671E8093DD010895843F21F48091D9013D </td>
+ </tr>
+ <tr>
+ <td id="L988" class="blob-num js-line-number" data-line-number="988"></td>
+ <td id="LC988" class="blob-code blob-code-inner js-file-line">:103DB000816017C0853F21F48091D901826011C0D4 </td>
+ </tr>
+ <tr>
+ <td id="L989" class="blob-num js-line-number" data-line-number="989"></td>
+ <td id="LC989" class="blob-code blob-code-inner js-file-line">:103DC000863F21F48091D90184600BC0873F21F4A4 </td>
+ </tr>
+ <tr>
+ <td id="L990" class="blob-num js-line-number" data-line-number="990"></td>
+ <td id="LC990" class="blob-code blob-code-inner js-file-line">:103DD0008091D901886005C0883F31F48091D90174 </td>
+ </tr>
+ <tr>
+ <td id="L991" class="blob-num js-line-number" data-line-number="991"></td>
+ <td id="LC991" class="blob-code blob-code-inner js-file-line">:103DE00080618093D90108958D3F21F48091D7019E </td>
+ </tr>
+ <tr>
+ <td id="L992" class="blob-num js-line-number" data-line-number="992"></td>
+ <td id="LC992" class="blob-code blob-code-inner js-file-line">:103DF00081600BC08E3F21F48091D701826005C0A5 </td>
+ </tr>
+ <tr>
+ <td id="L993" class="blob-num js-line-number" data-line-number="993"></td>
+ <td id="LC993" class="blob-code blob-code-inner js-file-line">:103E00008F3F29F48091D70184608093D701089572 </td>
+ </tr>
+ <tr>
+ <td id="L994" class="blob-num js-line-number" data-line-number="994"></td>
+ <td id="LC994" class="blob-code blob-code-inner js-file-line">:103E1000803F39F48091DB0187FF6CC01092DB0199 </td>
+ </tr>
+ <tr>
+ <td id="L995" class="blob-num js-line-number" data-line-number="995"></td>
+ <td id="LC995" class="blob-code blob-code-inner js-file-line">:103E200069C0813F29F48091DB011816BCF362C0A0 </td>
+ </tr>
+ <tr>
+ <td id="L996" class="blob-num js-line-number" data-line-number="996"></td>
+ <td id="LC996" class="blob-code blob-code-inner js-file-line">:103E30009091DA01823F29F497FF5CC01092DA0179 </td>
+ </tr>
+ <tr>
+ <td id="L997" class="blob-num js-line-number" data-line-number="997"></td>
+ <td id="LC997" class="blob-code blob-code-inner js-file-line">:103E400059C0833F19F41916CCF354C0893F41F48B </td>
+ </tr>
+ <tr>
+ <td id="L998" class="blob-num js-line-number" data-line-number="998"></td>
+ <td id="LC998" class="blob-code blob-code-inner js-file-line">:103E50008091DC0118160CF04DC01092DC014AC0B4 </td>
+ </tr>
+ <tr>
+ <td id="L999" class="blob-num js-line-number" data-line-number="999"></td>
+ <td id="LC999" class="blob-code blob-code-inner js-file-line">:103E60008A3F29F48091DC0187FF44C0F6CF8B3F65 </td>
+ </tr>
+ <tr>
+ <td id="L1000" class="blob-num js-line-number" data-line-number="1000"></td>
+ <td id="LC1000" class="blob-code blob-code-inner js-file-line">:103E700039F48091DD0187FF3DC01092DD013AC029 </td>
+ </tr>
+ <tr>
+ <td id="L1001" class="blob-num js-line-number" data-line-number="1001"></td>
+ <td id="LC1001" class="blob-code blob-code-inner js-file-line">:103E80008C3F29F48091DD011816BCF333C0843FC8 </td>
+ </tr>
+ <tr>
+ <td id="L1002" class="blob-num js-line-number" data-line-number="1002"></td>
+ <td id="LC1002" class="blob-code blob-code-inner js-file-line">:103E900021F48091D9018E7F17C0853F21F4809154 </td>
+ </tr>
+ <tr>
+ <td id="L1003" class="blob-num js-line-number" data-line-number="1003"></td>
+ <td id="LC1003" class="blob-code blob-code-inner js-file-line">:103EA000D9018D7F11C0863F21F48091D9018B7F8C </td>
+ </tr>
+ <tr>
+ <td id="L1004" class="blob-num js-line-number" data-line-number="1004"></td>
+ <td id="LC1004" class="blob-code blob-code-inner js-file-line">:103EB0000BC0873F21F48091D901877F05C0883FDF </td>
+ </tr>
+ <tr>
+ <td id="L1005" class="blob-num js-line-number" data-line-number="1005"></td>
+ <td id="LC1005" class="blob-code blob-code-inner js-file-line">:103EC00031F48091D9018F7E8093D90113C08D3F49 </td>
+ </tr>
+ <tr>
+ <td id="L1006" class="blob-num js-line-number" data-line-number="1006"></td>
+ <td id="LC1006" class="blob-code blob-code-inner js-file-line">:103ED00021F48091D7018E7F0BC08E3F21F4809119 </td>
+ </tr>
+ <tr>
+ <td id="L1007" class="blob-num js-line-number" data-line-number="1007"></td>
+ <td id="LC1007" class="blob-code blob-code-inner js-file-line">:103EE000D7018D7F05C08F3F29F48091D7018B7F4B </td>
+ </tr>
+ <tr>
+ <td id="L1008" class="blob-num js-line-number" data-line-number="1008"></td>
+ <td id="LC1008" class="blob-code blob-code-inner js-file-line">:103EF0008093D7018091DA0181110EC08091DB019E </td>
+ </tr>
+ <tr>
+ <td id="L1009" class="blob-num js-line-number" data-line-number="1009"></td>
+ <td id="LC1009" class="blob-code blob-code-inner js-file-line">:103F000081110AC08091DC01811106C08091DD0120 </td>
+ </tr>
+ <tr>
+ <td id="L1010" class="blob-num js-line-number" data-line-number="1010"></td>
+ <td id="LC1010" class="blob-code blob-code-inner js-file-line">:103F1000811102C01092D801089589ED91E00E94AC </td>
+ </tr>
+ <tr>
+ <td id="L1011" class="blob-num js-line-number" data-line-number="1011"></td>
+ <td id="LC1011" class="blob-code blob-code-inner js-file-line">:103F20009B0F0E94F41B9093D6018093D5010895B6 </td>
+ </tr>
+ <tr>
+ <td id="L1012" class="blob-num js-line-number" data-line-number="1012"></td>
+ <td id="LC1012" class="blob-code blob-code-inner js-file-line">:103F30001F93CF93DF938091D5019091D6010E947A </td>
+ </tr>
+ <tr>
+ <td id="L1013" class="blob-num js-line-number" data-line-number="1013"></td>
+ <td id="LC1013" class="blob-code blob-code-inner js-file-line">:103F4000001CAC019091D801992321F0209114011B </td>
+ </tr>
+ <tr>
+ <td id="L1014" class="blob-num js-line-number" data-line-number="1014"></td>
+ <td id="LC1014" class="blob-code blob-code-inner js-file-line">:103F500030E006C0209115018AE0289F90011124CD </td>
+ </tr>
+ <tr>
+ <td id="L1015" class="blob-num js-line-number" data-line-number="1015"></td>
+ <td id="LC1015" class="blob-code blob-code-inner js-file-line">:103F60004217530708F485C08091DA01C091DB0144 </td>
+ </tr>
+ <tr>
+ <td id="L1016" class="blob-num js-line-number" data-line-number="1016"></td>
+ <td id="LC1016" class="blob-code blob-code-inner js-file-line">:103F7000D091DC011091DD01811107C0C11175C024 </td>
+ </tr>
+ <tr>
+ <td id="L1017" class="blob-num js-line-number" data-line-number="1017"></td>
+ <td id="LC1017" class="blob-code blob-code-inner js-file-line">:103F8000D11173C0111171C074C09F3F19F09F5FB0 </td>
+ </tr>
+ <tr>
+ <td id="L1018" class="blob-num js-line-number" data-line-number="1018"></td>
+ <td id="LC1018" class="blob-code blob-code-inner js-file-line">:103F90009093D801181624F40E941E1E8093DA0113 </td>
+ </tr>
+ <tr>
+ <td id="L1019" class="blob-num js-line-number" data-line-number="1019"></td>
+ <td id="LC1019" class="blob-code blob-code-inner js-file-line">:103FA0008091DA0187FF05C00E941E1E81958093D3 </td>
+ </tr>
+ <tr>
+ <td id="L1020" class="blob-num js-line-number" data-line-number="1020"></td>
+ <td id="LC1020" class="blob-code blob-code-inner js-file-line">:103FB000DA011C1624F40E941E1E8093DB018091FE </td>
+ </tr>
+ <tr>
+ <td id="L1021" class="blob-num js-line-number" data-line-number="1021"></td>
+ <td id="LC1021" class="blob-code blob-code-inner js-file-line">:103FC000DB0187FF05C00E941E1E81958093DB01E7 </td>
+ </tr>
+ <tr>
+ <td id="L1022" class="blob-num js-line-number" data-line-number="1022"></td>
+ <td id="LC1022" class="blob-code blob-code-inner js-file-line">:103FD0006091DA01662331F1C091DB01CC2311F14C </td>
+ </tr>
+ <tr>
+ <td id="L1023" class="blob-num js-line-number" data-line-number="1023"></td>
+ <td id="LC1023" class="blob-code blob-code-inner js-file-line">:103FE000062E000C770B880B990B0E94112323E3FC </td>
+ </tr>
+ <tr>
+ <td id="L1024" class="blob-num js-line-number" data-line-number="1024"></td>
+ <td id="LC1024" class="blob-code blob-code-inner js-file-line">:103FF00033E343E35FE30E9475230E94D922609379 </td>
+ </tr>
+ <tr>
+ <td id="L1025" class="blob-num js-line-number" data-line-number="1025"></td>
+ <td id="LC1025" class="blob-code blob-code-inner js-file-line">:10400000DA016C2FCC0F770B880B990B0E941123D0 </td>
+ </tr>
+ <tr>
+ <td id="L1026" class="blob-num js-line-number" data-line-number="1026"></td>
+ <td id="LC1026" class="blob-code blob-code-inner js-file-line">:1040100023E333E343E35FE30E9475230E94D92245 </td>
+ </tr>
+ <tr>
+ <td id="L1027" class="blob-num js-line-number" data-line-number="1027"></td>
+ <td id="LC1027" class="blob-code blob-code-inner js-file-line">:104020006093DB011D1624F40E94671E8093DC015F </td>
+ </tr>
+ <tr>
+ <td id="L1028" class="blob-num js-line-number" data-line-number="1028"></td>
+ <td id="LC1028" class="blob-code blob-code-inner js-file-line">:104030008091DC0187FF05C00E94671E81958093F7 </td>
+ </tr>
+ <tr>
+ <td id="L1029" class="blob-num js-line-number" data-line-number="1029"></td>
+ <td id="LC1029" class="blob-code blob-code-inner js-file-line">:10404000DC01111624F40E94671E8093DD0180912B </td>
+ </tr>
+ <tr>
+ <td id="L1030" class="blob-num js-line-number" data-line-number="1030"></td>
+ <td id="LC1030" class="blob-code blob-code-inner js-file-line">:10405000DD0187FF05C00E94671E81958093DD0109 </td>
+ </tr>
+ <tr>
+ <td id="L1031" class="blob-num js-line-number" data-line-number="1031"></td>
+ <td id="LC1031" class="blob-code blob-code-inner js-file-line">:10406000DF91CF911F910C948D1F9F3F09F08FCF4F </td>
+ </tr>
+ <tr>
+ <td id="L1032" class="blob-num js-line-number" data-line-number="1032"></td>
+ <td id="LC1032" class="blob-code blob-code-inner js-file-line">:1040700097CFDF91CF911F910895E9EDF1E085E0B1 </td>
+ </tr>
+ <tr>
+ <td id="L1033" class="blob-num js-line-number" data-line-number="1033"></td>
+ <td id="LC1033" class="blob-code blob-code-inner js-file-line">:10408000DF011D928A95E9F71092D8011092D701AD </td>
+ </tr>
+ <tr>
+ <td id="L1034" class="blob-num js-line-number" data-line-number="1034"></td>
+ <td id="LC1034" class="blob-code blob-code-inner js-file-line">:104090000895833081F128F4813059F08230D1F0D5 </td>
+ </tr>
+ <tr>
+ <td id="L1035" class="blob-num js-line-number" data-line-number="1035"></td>
+ <td id="LC1035" class="blob-code blob-code-inner js-file-line">:1040A0000895853009F449C0B8F1863009F456C046 </td>
+ </tr>
+ <tr>
+ <td id="L1036" class="blob-num js-line-number" data-line-number="1036"></td>
+ <td id="LC1036" class="blob-code blob-code-inner js-file-line">:1040B000089580911501262F30E0280F311D2F3FE4 </td>
+ </tr>
+ <tr>
+ <td id="L1037" class="blob-num js-line-number" data-line-number="1037"></td>
+ <td id="LC1037" class="blob-code blob-code-inner js-file-line">:1040C000310524F4680F6093150108958FEF8093F4 </td>
+ </tr>
+ <tr>
+ <td id="L1038" class="blob-num js-line-number" data-line-number="1038"></td>
+ <td id="LC1038" class="blob-code blob-code-inner js-file-line">:1040D0001501089580911401262F30E0280F311D1D </td>
+ </tr>
+ <tr>
+ <td id="L1039" class="blob-num js-line-number" data-line-number="1039"></td>
+ <td id="LC1039" class="blob-code blob-code-inner js-file-line">:1040E0002F3F310524F4680F6093140108958FEF7A </td>
+ </tr>
+ <tr>
+ <td id="L1040" class="blob-num js-line-number" data-line-number="1040"></td>
+ <td id="LC1040" class="blob-code blob-code-inner js-file-line">:1040F00080931401089580911301262F30E0280F3A </td>
+ </tr>
+ <tr>
+ <td id="L1041" class="blob-num js-line-number" data-line-number="1041"></td>
+ <td id="LC1041" class="blob-code blob-code-inner js-file-line">:10410000311D2F3F310524F4680F6093130108958A </td>
+ </tr>
+ <tr>
+ <td id="L1042" class="blob-num js-line-number" data-line-number="1042"></td>
+ <td id="LC1042" class="blob-code blob-code-inner js-file-line">:104110008FEF80931301089580911201262F30E0D4 </td>
+ </tr>
+ <tr>
+ <td id="L1043" class="blob-num js-line-number" data-line-number="1043"></td>
+ <td id="LC1043" class="blob-code blob-code-inner js-file-line">:10412000280F311D2F3F310524F4680F60931201D1 </td>
+ </tr>
+ <tr>
+ <td id="L1044" class="blob-num js-line-number" data-line-number="1044"></td>
+ <td id="LC1044" class="blob-code blob-code-inner js-file-line">:1041300008958FEF80931201089580911101262F29 </td>
+ </tr>
+ <tr>
+ <td id="L1045" class="blob-num js-line-number" data-line-number="1045"></td>
+ <td id="LC1045" class="blob-code blob-code-inner js-file-line">:1041400030E0280F311D2F3F310524F4680F6093B4 </td>
+ </tr>
+ <tr>
+ <td id="L1046" class="blob-num js-line-number" data-line-number="1046"></td>
+ <td id="LC1046" class="blob-code blob-code-inner js-file-line">:10415000110108958FEF809311010895809110014E </td>
+ </tr>
+ <tr>
+ <td id="L1047" class="blob-num js-line-number" data-line-number="1047"></td>
+ <td id="LC1047" class="blob-code blob-code-inner js-file-line">:10416000262F30E0280F311D2F3F310524F4680F32 </td>
+ </tr>
+ <tr>
+ <td id="L1048" class="blob-num js-line-number" data-line-number="1048"></td>
+ <td id="LC1048" class="blob-code blob-code-inner js-file-line">:104170006093100108958FEF8093100108958330AC </td>
+ </tr>
+ <tr>
+ <td id="L1049" class="blob-num js-line-number" data-line-number="1049"></td>
+ <td id="LC1049" class="blob-code blob-code-inner js-file-line">:1041800011F128F4813049F0823091F008958530A2 </td>
+ </tr>
+ <tr>
+ <td id="L1050" class="blob-num js-line-number" data-line-number="1050"></td>
+ <td id="LC1050" class="blob-code blob-code-inner js-file-line">:1041900081F120F18630C1F10895809115016817F1 </td>
+ </tr>
+ <tr>
+ <td id="L1051" class="blob-num js-line-number" data-line-number="1051"></td>
+ <td id="LC1051" class="blob-code blob-code-inner js-file-line">:1041A00020F4861B8093150108951092150108953F </td>
+ </tr>
+ <tr>
+ <td id="L1052" class="blob-num js-line-number" data-line-number="1052"></td>
+ <td id="LC1052" class="blob-code blob-code-inner js-file-line">:1041B00080911401681720F4861B809314010895E0 </td>
+ </tr>
+ <tr>
+ <td id="L1053" class="blob-num js-line-number" data-line-number="1053"></td>
+ <td id="LC1053" class="blob-code blob-code-inner js-file-line">:1041C00010921401089580911301681720F4861B42 </td>
+ </tr>
+ <tr>
+ <td id="L1054" class="blob-num js-line-number" data-line-number="1054"></td>
+ <td id="LC1054" class="blob-code blob-code-inner js-file-line">:1041D00080931301089510921301089580911201A4 </td>
+ </tr>
+ <tr>
+ <td id="L1055" class="blob-num js-line-number" data-line-number="1055"></td>
+ <td id="LC1055" class="blob-code blob-code-inner js-file-line">:1041E000681720F4861B8093120108951092120123 </td>
+ </tr>
+ <tr>
+ <td id="L1056" class="blob-num js-line-number" data-line-number="1056"></td>
+ <td id="LC1056" class="blob-code blob-code-inner js-file-line">:1041F000089580911101681720F4861B80931101A6 </td>
+ </tr>
+ <tr>
+ <td id="L1057" class="blob-num js-line-number" data-line-number="1057"></td>
+ <td id="LC1057" class="blob-code blob-code-inner js-file-line">:10420000089510921101089580911001681720F40B </td>
+ </tr>
+ <tr>
+ <td id="L1058" class="blob-num js-line-number" data-line-number="1058"></td>
+ <td id="LC1058" class="blob-code blob-code-inner js-file-line">:10421000861B8093100108951092100108950F934A </td>
+ </tr>
+ <tr>
+ <td id="L1059" class="blob-num js-line-number" data-line-number="1059"></td>
+ <td id="LC1059" class="blob-code blob-code-inner js-file-line">:104220001F938D3109F46BC008F03FC08E3009F444 </td>
+ </tr>
+ <tr>
+ <td id="L1060" class="blob-num js-line-number" data-line-number="1060"></td>
+ <td id="LC1060" class="blob-code blob-code-inner js-file-line">:104230007FC0C0F4873009F469C068F4863009F0A3 </td>
+ </tr>
+ <tr>
+ <td id="L1061" class="blob-num js-line-number" data-line-number="1061"></td>
+ <td id="LC1061" class="blob-code blob-code-inner js-file-line">:10424000B1C08091CF01817F8E7F8093CF0181E0CB </td>
+ </tr>
+ <tr>
+ <td id="L1062" class="blob-num js-line-number" data-line-number="1062"></td>
+ <td id="LC1062" class="blob-code blob-code-inner js-file-line">:104250008093DF01A8C0883009F4A2C08B3009F434 </td>
+ </tr>
+ <tr>
+ <td id="L1063" class="blob-num js-line-number" data-line-number="1063"></td>
+ <td id="LC1063" class="blob-code blob-code-inner js-file-line">:104260009FC0A0C0863109F49BC078F4803109F466 </td>
+ </tr>
+ <tr>
+ <td id="L1064" class="blob-num js-line-number" data-line-number="1064"></td>
+ <td id="LC1064" class="blob-code blob-code-inner js-file-line">:1042700072C0813109F096C00E94141590910D0111 </td>
+ </tr>
+ <tr>
+ <td id="L1065" class="blob-num js-line-number" data-line-number="1065"></td>
+ <td id="LC1065" class="blob-code blob-code-inner js-file-line">:1042800081E0892780930D018BC0893109F488C0B2 </td>
+ </tr>
+ <tr>
+ <td id="L1066" class="blob-num js-line-number" data-line-number="1066"></td>
+ <td id="LC1066" class="blob-code blob-code-inner js-file-line">:104290008B3109F087C08091CF0181FB222720F963 </td>
+ </tr>
+ <tr>
+ <td id="L1067" class="blob-num js-line-number" data-line-number="1067"></td>
+ <td id="LC1067" class="blob-code blob-code-inner js-file-line">:1042A00091E0922790FB81F94CC0853309F470C0EE </td>
+ </tr>
+ <tr>
+ <td id="L1068" class="blob-num js-line-number" data-line-number="1068"></td>
+ <td id="LC1068" class="blob-code blob-code-inner js-file-line">:1042B00048F4873209F46CC008F459C0893209F413 </td>
+ </tr>
+ <tr>
+ <td id="L1069" class="blob-num js-line-number" data-line-number="1069"></td>
+ <td id="LC1069" class="blob-code blob-code-inner js-file-line">:1042C00067C070C0833438F48A3308F04EC0883336 </td>
+ </tr>
+ <tr>
+ <td id="L1070" class="blob-num js-line-number" data-line-number="1070"></td>
+ <td id="LC1070" class="blob-code blob-code-inner js-file-line">:1042D00009F466C067C0833409F45AC0883409F011 </td>
+ </tr>
+ <tr>
+ <td id="L1071" class="blob-num js-line-number" data-line-number="1071"></td>
+ <td id="LC1071" class="blob-code blob-code-inner js-file-line">:1042E00061C00E9414150FEF13ED20E30150104040 </td>
+ </tr>
+ <tr>
+ <td id="L1072" class="blob-num js-line-number" data-line-number="1072"></td>
+ <td id="LC1072" class="blob-code blob-code-inner js-file-line">:1042F0002040E1F700C000000E944F1C51C00E9406 </td>
+ </tr>
+ <tr>
+ <td id="L1073" class="blob-num js-line-number" data-line-number="1073"></td>
+ <td id="LC1073" class="blob-code blob-code-inner js-file-line">:1043000093220E94840F0E947A084AC09091CF01A4 </td>
+ </tr>
+ <tr>
+ <td id="L1074" class="blob-num js-line-number" data-line-number="1074"></td>
+ <td id="LC1074" class="blob-code blob-code-inner js-file-line">:10431000892F8095817080FB90F929F096609860D4 </td>
+ </tr>
+ <tr>
+ <td id="L1075" class="blob-num js-line-number" data-line-number="1075"></td>
+ <td id="LC1075" class="blob-code blob-code-inner js-file-line">:104320009093CF0140C0997F977F9093CF0138C081 </td>
+ </tr>
+ <tr>
+ <td id="L1076" class="blob-num js-line-number" data-line-number="1076"></td>
+ <td id="LC1076" class="blob-code blob-code-inner js-file-line">:104330008091CF0182FB222720F991E0922790FB08 </td>
+ </tr>
+ <tr>
+ <td id="L1077" class="blob-num js-line-number" data-line-number="1077"></td>
+ <td id="LC1077" class="blob-code blob-code-inner js-file-line">:1043400082F98093CF01992359F18091CF01816047 </td>
+ </tr>
+ <tr>
+ <td id="L1078" class="blob-num js-line-number" data-line-number="1078"></td>
+ <td id="LC1078" class="blob-code blob-code-inner js-file-line">:104350008093CF0125C08091CF0183FB222720F9D4 </td>
+ </tr>
+ <tr>
+ <td id="L1079" class="blob-num js-line-number" data-line-number="1079"></td>
+ <td id="LC1079" class="blob-code blob-code-inner js-file-line">:1043600091E0922790FB83F9ECCF895301C08D51E6 </td>
+ </tr>
+ <tr>
+ <td id="L1080" class="blob-num js-line-number" data-line-number="1080"></td>
+ <td id="LC1080" class="blob-code blob-code-inner js-file-line">:1043700041E050E060E070E08A019B0104C0000F62 </td>
+ </tr>
+ <tr>
+ <td id="L1081" class="blob-num js-line-number" data-line-number="1081"></td>
+ <td id="LC1081" class="blob-code blob-code-inner js-file-line">:10438000111F221F331F8A95D2F7C901B80104C03B </td>
+ </tr>
+ <tr>
+ <td id="L1082" class="blob-num js-line-number" data-line-number="1082"></td>
+ <td id="LC1082" class="blob-code blob-code-inner js-file-line">:1043900061E070E080E090E00E94D0180E94141567 </td>
+ </tr>
+ <tr>
+ <td id="L1083" class="blob-num js-line-number" data-line-number="1083"></td>
+ <td id="LC1083" class="blob-code blob-code-inner js-file-line">:1043A00081E001C080E01F910F91089580E00895A1 </td>
+ </tr>
+ <tr>
+ <td id="L1084" class="blob-num js-line-number" data-line-number="1084"></td>
+ <td id="LC1084" class="blob-code blob-code-inner js-file-line">:1043B00080E00895CF93C82F8091DF01813079F09C </td>
+ </tr>
+ <tr>
+ <td id="L1085" class="blob-num js-line-number" data-line-number="1085"></td>
+ <td id="LC1085" class="blob-code blob-code-inner js-file-line">:1043C00018F08230E9F187C0E0910E01F0910F0101 </td>
+ </tr>
+ <tr>
+ <td id="L1086" class="blob-num js-line-number" data-line-number="1086"></td>
+ <td id="LC1086" class="blob-code blob-code-inner js-file-line">:1043D0008081813169F0823209F07FC009C0E091AB </td>
+ </tr>
+ <tr>
+ <td id="L1087" class="blob-num js-line-number" data-line-number="1087"></td>
+ <td id="LC1087" class="blob-code blob-code-inner js-file-line">:1043E0000E01F0910F018081813111F0823261F470 </td>
+ </tr>
+ <tr>
+ <td id="L1088" class="blob-num js-line-number" data-line-number="1088"></td>
+ <td id="LC1088" class="blob-code blob-code-inner js-file-line">:1043F0008C2F0E94D621811104C08C2F0E940F2186 </td>
+ </tr>
+ <tr>
+ <td id="L1089" class="blob-num js-line-number" data-line-number="1089"></td>
+ <td id="LC1089" class="blob-code blob-code-inner js-file-line">:104400001DC081E090E01AC08C2F0E94D82181113C </td>
+ </tr>
+ <tr>
+ <td id="L1090" class="blob-num js-line-number" data-line-number="1090"></td>
+ <td id="LC1090" class="blob-code blob-code-inner js-file-line">:1044100014C0C43179F048F4CB3079F0C03109F0E0 </td>
+ </tr>
+ <tr>
+ <td id="L1091" class="blob-num js-line-number" data-line-number="1091"></td>
+ <td id="LC1091" class="blob-code blob-code-inner js-file-line">:1044200060C082E08093DF0108C0C93219F0C83350 </td>
+ </tr>
+ <tr>
+ <td id="L1092" class="blob-num js-line-number" data-line-number="1092"></td>
+ <td id="LC1092" class="blob-code blob-code-inner js-file-line">:1044300021F057C01092DF0154C081E0817053C059 </td>
+ </tr>
+ <tr>
+ <td id="L1093" class="blob-num js-line-number" data-line-number="1093"></td>
+ <td id="LC1093" class="blob-code blob-code-inner js-file-line">:10444000C93289F118F5C43171F1A8F4C73009F007 </td>
+ </tr>
+ <tr>
+ <td id="L1094" class="blob-num js-line-number" data-line-number="1094"></td>
+ <td id="LC1094" class="blob-code blob-code-inner js-file-line">:1044500046C08AE08093150194E19093140193E0A3 </td>
+ </tr>
+ <tr>
+ <td id="L1095" class="blob-num js-line-number" data-line-number="1095"></td>
+ <td id="LC1095" class="blob-code blob-code-inner js-file-line">:10446000909313018093120188E08093110188E2F8 </td>
+ </tr>
+ <tr>
+ <td id="L1096" class="blob-num js-line-number" data-line-number="1096"></td>
+ <td id="LC1096" class="blob-code blob-code-inner js-file-line">:104470008093100134C0CE51C63088F5EC2FF0E0A7 </td>
+ </tr>
+ <tr>
+ <td id="L1097" class="blob-num js-line-number" data-line-number="1097"></td>
+ <td id="LC1097" class="blob-code blob-code-inner js-file-line">:10448000E65DFE4F80818093DE0129C0CE34E9F0E5 </td>
+ </tr>
+ <tr>
+ <td id="L1098" class="blob-num js-line-number" data-line-number="1098"></td>
+ <td id="LC1098" class="blob-code blob-code-inner js-file-line">:1044900020F4CB3421F56AE013C0C13579F0C23580 </td>
+ </tr>
+ <tr>
+ <td id="L1099" class="blob-num js-line-number" data-line-number="1099"></td>
+ <td id="LC1099" class="blob-code blob-code-inner js-file-line">:1044A000F1F461E00DC08091DE01882319F01092D3 </td>
+ </tr>
+ <tr>
+ <td id="L1100" class="blob-num js-line-number" data-line-number="1100"></td>
+ <td id="LC1100" class="blob-code blob-code-inner js-file-line">:1044B000DE0115C081E08093DF0115C061E006C018 </td>
+ </tr>
+ <tr>
+ <td id="L1101" class="blob-num js-line-number" data-line-number="1101"></td>
+ <td id="LC1101" class="blob-code blob-code-inner js-file-line">:1044C0008091DE010E9449200AC06AE08091DE01ED </td>
+ </tr>
+ <tr>
+ <td id="L1102" class="blob-num js-line-number" data-line-number="1102"></td>
+ <td id="LC1102" class="blob-code blob-code-inner js-file-line">:1044D0000E94BF2004C01092DF0180E004C081E090 </td>
+ </tr>
+ <tr>
+ <td id="L1103" class="blob-num js-line-number" data-line-number="1103"></td>
+ <td id="LC1103" class="blob-code blob-code-inner js-file-line">:1044E00002C080E0ABCFCF910895E1E8F0E0808199 </td>
+ </tr>
+ <tr>
+ <td id="L1104" class="blob-num js-line-number" data-line-number="1104"></td>
+ <td id="LC1104" class="blob-code blob-code-inner js-file-line">:1044F000886080838081816080838FB7F89493E0A7 </td>
+ </tr>
+ <tr>
+ <td id="L1105" class="blob-num js-line-number" data-line-number="1105"></td>
+ <td id="LC1105" class="blob-code blob-code-inner js-file-line">:104500009093890090ED909388008FBF0895EFE617 </td>
+ </tr>
+ <tr>
+ <td id="L1106" class="blob-num js-line-number" data-line-number="1106"></td>
+ <td id="LC1106" class="blob-code blob-code-inner js-file-line">:10451000F0E08081826080830895EFE6F0E08081A2 </td>
+ </tr>
+ <tr>
+ <td id="L1107" class="blob-num js-line-number" data-line-number="1107"></td>
+ <td id="LC1107" class="blob-code blob-code-inner js-file-line">:104520008D7F80830895EFE6F0E0908182E0892717 </td>
+ </tr>
+ <tr>
+ <td id="L1108" class="blob-num js-line-number" data-line-number="1108"></td>
+ <td id="LC1108" class="blob-code blob-code-inner js-file-line">:10453000808308951F920F920FB60F9211242F932C </td>
+ </tr>
+ <tr>
+ <td id="L1109" class="blob-num js-line-number" data-line-number="1109"></td>
+ <td id="LC1109" class="blob-code blob-code-inner js-file-line">:104540003F934F935F936F937F938F939F93AF931B </td>
+ </tr>
+ <tr>
+ <td id="L1110" class="blob-num js-line-number" data-line-number="1110"></td>
+ <td id="LC1110" class="blob-code blob-code-inner js-file-line">:10455000BF93EF93FF938091E0019091E101019669 </td>
+ </tr>
+ <tr>
+ <td id="L1111" class="blob-num js-line-number" data-line-number="1111"></td>
+ <td id="LC1111" class="blob-code blob-code-inner js-file-line">:104560009093E1018093E001811103C082E00E94F9 </td>
+ </tr>
+ <tr>
+ <td id="L1112" class="blob-num js-line-number" data-line-number="1112"></td>
+ <td id="LC1112" class="blob-code blob-code-inner js-file-line">:104570007A08E091E101E695E695F0E0E657FB4F19 </td>
+ </tr>
+ <tr>
+ <td id="L1113" class="blob-num js-line-number" data-line-number="1113"></td>
+ <td id="LC1113" class="blob-code blob-code-inner js-file-line">:10458000E4918091E0018E1303C080E00E947A08DC </td>
+ </tr>
+ <tr>
+ <td id="L1114" class="blob-num js-line-number" data-line-number="1114"></td>
+ <td id="LC1114" class="blob-code blob-code-inner js-file-line">:10459000FF91EF91BF91AF919F918F917F916F911B </td>
+ </tr>
+ <tr>
+ <td id="L1115" class="blob-num js-line-number" data-line-number="1115"></td>
+ <td id="LC1115" class="blob-code blob-code-inner js-file-line">:1045A0005F914F913F912F910F900FBE0F901F90F1 </td>
+ </tr>
+ <tr>
+ <td id="L1116" class="blob-num js-line-number" data-line-number="1116"></td>
+ <td id="LC1116" class="blob-code blob-code-inner js-file-line">:1045B00018950E94E0226894B1110C946F2308951D </td>
+ </tr>
+ <tr>
+ <td id="L1117" class="blob-num js-line-number" data-line-number="1117"></td>
+ <td id="LC1117" class="blob-code blob-code-inner js-file-line">:1045C0000E94542388F09F5798F0B92F9927B7512C </td>
+ </tr>
+ <tr>
+ <td id="L1118" class="blob-num js-line-number" data-line-number="1118"></td>
+ <td id="LC1118" class="blob-code blob-code-inner js-file-line">:1045D000B0F0E1F0660F771F881F991F1AF0BA95A7 </td>
+ </tr>
+ <tr>
+ <td id="L1119" class="blob-num js-line-number" data-line-number="1119"></td>
+ <td id="LC1119" class="blob-code blob-code-inner js-file-line">:1045E000C9F714C0B13091F00E946E23B1E0089574 </td>
+ </tr>
+ <tr>
+ <td id="L1120" class="blob-num js-line-number" data-line-number="1120"></td>
+ <td id="LC1120" class="blob-code blob-code-inner js-file-line">:1045F0000C946E23672F782F8827B85F39F0B93F66 </td>
+ </tr>
+ <tr>
+ <td id="L1121" class="blob-num js-line-number" data-line-number="1121"></td>
+ <td id="LC1121" class="blob-code blob-code-inner js-file-line">:10460000CCF3869577956795B395D9F73EF4909559 </td>
+ </tr>
+ <tr>
+ <td id="L1122" class="blob-num js-line-number" data-line-number="1122"></td>
+ <td id="LC1122" class="blob-code blob-code-inner js-file-line">:104610008095709561957F4F8F4F9F4F0895E894D7 </td>
+ </tr>
+ <tr>
+ <td id="L1123" class="blob-num js-line-number" data-line-number="1123"></td>
+ <td id="LC1123" class="blob-code blob-code-inner js-file-line">:1046200009C097FB3EF490958095709561957F4FFA </td>
+ </tr>
+ <tr>
+ <td id="L1124" class="blob-num js-line-number" data-line-number="1124"></td>
+ <td id="LC1124" class="blob-code blob-code-inner js-file-line">:104630008F4F9F4F9923A9F0F92F96E9BB279395A8 </td>
+ </tr>
+ <tr>
+ <td id="L1125" class="blob-num js-line-number" data-line-number="1125"></td>
+ <td id="LC1125" class="blob-code blob-code-inner js-file-line">:10464000F695879577956795B795F111F8CFFAF4B8 </td>
+ </tr>
+ <tr>
+ <td id="L1126" class="blob-num js-line-number" data-line-number="1126"></td>
+ <td id="LC1126" class="blob-code blob-code-inner js-file-line">:10465000BB0F11F460FF1BC06F5F7F4F8F4F9F4FE9 </td>
+ </tr>
+ <tr>
+ <td id="L1127" class="blob-num js-line-number" data-line-number="1127"></td>
+ <td id="LC1127" class="blob-code blob-code-inner js-file-line">:1046600016C0882311F096E911C0772321F09EE847 </td>
+ </tr>
+ <tr>
+ <td id="L1128" class="blob-num js-line-number" data-line-number="1128"></td>
+ <td id="LC1128" class="blob-code blob-code-inner js-file-line">:10467000872F762F05C0662371F096E8862F70E0AD </td>
+ </tr>
+ <tr>
+ <td id="L1129" class="blob-num js-line-number" data-line-number="1129"></td>
+ <td id="LC1129" class="blob-code blob-code-inner js-file-line">:1046800060E02AF09A95660F771F881FDAF7880F87 </td>
+ </tr>
+ <tr>
+ <td id="L1130" class="blob-num js-line-number" data-line-number="1130"></td>
+ <td id="LC1130" class="blob-code blob-code-inner js-file-line">:104690009695879597F9089557FD9058440F551FA3 </td>
+ </tr>
+ <tr>
+ <td id="L1131" class="blob-num js-line-number" data-line-number="1131"></td>
+ <td id="LC1131" class="blob-code blob-code-inner js-file-line">:1046A00059F05F3F71F04795880F97FB991F61F0B4 </td>
+ </tr>
+ <tr>
+ <td id="L1132" class="blob-num js-line-number" data-line-number="1132"></td>
+ <td id="LC1132" class="blob-code blob-code-inner js-file-line">:1046B0009F3F79F087950895121613061406551F2B </td>
+ </tr>
+ <tr>
+ <td id="L1133" class="blob-num js-line-number" data-line-number="1133"></td>
+ <td id="LC1133" class="blob-code blob-code-inner js-file-line">:1046C000F2CF4695F1DF08C0161617061806991F97 </td>
+ </tr>
+ <tr>
+ <td id="L1134" class="blob-num js-line-number" data-line-number="1134"></td>
+ <td id="LC1134" class="blob-code blob-code-inner js-file-line">:1046D000F1CF86957105610508940895E894BB278C </td>
+ </tr>
+ <tr>
+ <td id="L1135" class="blob-num js-line-number" data-line-number="1135"></td>
+ <td id="LC1135" class="blob-code blob-code-inner js-file-line">:1046E00066277727CB0197F908950E9488230C94B9 </td>
+ </tr>
+ <tr>
+ <td id="L1136" class="blob-num js-line-number" data-line-number="1136"></td>
+ <td id="LC1136" class="blob-code blob-code-inner js-file-line">:1046F000F9230E94EB2338F00E94F22320F0952347 </td>
+ </tr>
+ <tr>
+ <td id="L1137" class="blob-num js-line-number" data-line-number="1137"></td>
+ <td id="LC1137" class="blob-code blob-code-inner js-file-line">:1047000011F00C94E2230C94E82311240C946F23F1 </td>
+ </tr>
+ <tr>
+ <td id="L1138" class="blob-num js-line-number" data-line-number="1138"></td>
+ <td id="LC1138" class="blob-code blob-code-inner js-file-line">:104710000E944C2370F3959FC1F3950F50E0551FF5 </td>
+ </tr>
+ <tr>
+ <td id="L1139" class="blob-num js-line-number" data-line-number="1139"></td>
+ <td id="LC1139" class="blob-code blob-code-inner js-file-line">:10472000629FF001729FBB27F00DB11D639FAA2706 </td>
+ </tr>
+ <tr>
+ <td id="L1140" class="blob-num js-line-number" data-line-number="1140"></td>
+ <td id="LC1140" class="blob-code blob-code-inner js-file-line">:10473000F00DB11DAA1F649F6627B00DA11D661F55 </td>
+ </tr>
+ <tr>
+ <td id="L1141" class="blob-num js-line-number" data-line-number="1141"></td>
+ <td id="LC1141" class="blob-code blob-code-inner js-file-line">:10474000829F2227B00DA11D621F739FB00DA11D76 </td>
+ </tr>
+ <tr>
+ <td id="L1142" class="blob-num js-line-number" data-line-number="1142"></td>
+ <td id="LC1142" class="blob-code blob-code-inner js-file-line">:10475000621F839FA00D611D221F749F3327A00D30 </td>
+ </tr>
+ <tr>
+ <td id="L1143" class="blob-num js-line-number" data-line-number="1143"></td>
+ <td id="LC1143" class="blob-code blob-code-inner js-file-line">:10476000611D231F849F600D211D822F762F6A2FCC </td>
+ </tr>
+ <tr>
+ <td id="L1144" class="blob-num js-line-number" data-line-number="1144"></td>
+ <td id="LC1144" class="blob-code blob-code-inner js-file-line">:1047700011249F5750409AF0F1F088234AF0EE0F31 </td>
+ </tr>
+ <tr>
+ <td id="L1145" class="blob-num js-line-number" data-line-number="1145"></td>
+ <td id="LC1145" class="blob-code blob-code-inner js-file-line">:10478000FF1FBB1F661F771F881F91505040A9F75E </td>
+ </tr>
+ <tr>
+ <td id="L1146" class="blob-num js-line-number" data-line-number="1146"></td>
+ <td id="LC1146" class="blob-code blob-code-inner js-file-line">:104790009E3F510580F00C94E2230C946F235F3F01 </td>
+ </tr>
+ <tr>
+ <td id="L1147" class="blob-num js-line-number" data-line-number="1147"></td>
+ <td id="LC1147" class="blob-code blob-code-inner js-file-line">:1047A000E4F3983ED4F3869577956795B795F7959A </td>
+ </tr>
+ <tr>
+ <td id="L1148" class="blob-num js-line-number" data-line-number="1148"></td>
+ <td id="LC1148" class="blob-code blob-code-inner js-file-line">:1047B000E7959F5FC1F7FE2B880F911D9695879512 </td>
+ </tr>
+ <tr>
+ <td id="L1149" class="blob-num js-line-number" data-line-number="1149"></td>
+ <td id="LC1149" class="blob-code blob-code-inner js-file-line">:1047C00097F9089597F99F6780E870E060E0089591 </td>
+ </tr>
+ <tr>
+ <td id="L1150" class="blob-num js-line-number" data-line-number="1150"></td>
+ <td id="LC1150" class="blob-code blob-code-inner js-file-line">:1047D0009FEF80EC089500240A9416161706180619 </td>
+ </tr>
+ <tr>
+ <td id="L1151" class="blob-num js-line-number" data-line-number="1151"></td>
+ <td id="LC1151" class="blob-code blob-code-inner js-file-line">:1047E0000906089500240A941216130614060506F5 </td>
+ </tr>
+ <tr>
+ <td id="L1152" class="blob-num js-line-number" data-line-number="1152"></td>
+ <td id="LC1152" class="blob-code blob-code-inner js-file-line">:1047F0000895092E0394000C11F4882352F0BB0F86 </td>
+ </tr>
+ <tr>
+ <td id="L1153" class="blob-num js-line-number" data-line-number="1153"></td>
+ <td id="LC1153" class="blob-code blob-code-inner js-file-line">:1048000040F4BF2B11F460FF04C06F5F7F4F8F4FE8 </td>
+ </tr>
+ <tr>
+ <td id="L1154" class="blob-num js-line-number" data-line-number="1154"></td>
+ <td id="LC1154" class="blob-code blob-code-inner js-file-line">:104810009F4F089597FB072E16F4009407D077FD5D </td>
+ </tr>
+ <tr>
+ <td id="L1155" class="blob-num js-line-number" data-line-number="1155"></td>
+ <td id="LC1155" class="blob-code blob-code-inner js-file-line">:1048200009D00E94242407FC05D03EF49095819580 </td>
+ </tr>
+ <tr>
+ <td id="L1156" class="blob-num js-line-number" data-line-number="1156"></td>
+ <td id="LC1156" class="blob-code blob-code-inner js-file-line">:104830009F4F0895709561957F4F0895EE0FFF1F6C </td>
+ </tr>
+ <tr>
+ <td id="L1157" class="blob-num js-line-number" data-line-number="1157"></td>
+ <td id="LC1157" class="blob-code blob-code-inner js-file-line">:104840000590F491E02D0994AA1BBB1B51E107C010 </td>
+ </tr>
+ <tr>
+ <td id="L1158" class="blob-num js-line-number" data-line-number="1158"></td>
+ <td id="LC1158" class="blob-code blob-code-inner js-file-line">:10485000AA1FBB1FA617B70710F0A61BB70B881F10 </td>
+ </tr>
+ <tr>
+ <td id="L1159" class="blob-num js-line-number" data-line-number="1159"></td>
+ <td id="LC1159" class="blob-code blob-code-inner js-file-line">:10486000991F5A95A9F780959095BC01CD0108959F </td>
+ </tr>
+ <tr>
+ <td id="L1160" class="blob-num js-line-number" data-line-number="1160"></td>
+ <td id="LC1160" class="blob-code blob-code-inner js-file-line">:10487000F999FECF92BD81BDF89A992780B5089528 </td>
+ </tr>
+ <tr>
+ <td id="L1161" class="blob-num js-line-number" data-line-number="1161"></td>
+ <td id="LC1161" class="blob-code blob-code-inner js-file-line">:10488000A8E1B0E042E050E00C946024262FF999B2 </td>
+ </tr>
+ <tr>
+ <td id="L1162" class="blob-num js-line-number" data-line-number="1162"></td>
+ <td id="LC1162" class="blob-code blob-code-inner js-file-line">:10489000FECF92BD81BDF89A019700B4021639F09F </td>
+ </tr>
+ <tr>
+ <td id="L1163" class="blob-num js-line-number" data-line-number="1163"></td>
+ <td id="LC1163" class="blob-code blob-code-inner js-file-line">:1048A0001FBA20BD0FB6F894FA9AF99A0FBE089570 </td>
+ </tr>
+ <tr>
+ <td id="L1164" class="blob-num js-line-number" data-line-number="1164"></td>
+ <td id="LC1164" class="blob-code blob-code-inner js-file-line">:1048B0000196272F0E9447240C944624DC01CB014B </td>
+ </tr>
+ <tr>
+ <td id="L1165" class="blob-num js-line-number" data-line-number="1165"></td>
+ <td id="LC1165" class="blob-code blob-code-inner js-file-line">:1048C000FC01F999FECF06C0F2BDE1BDF89A319620 </td>
+ </tr>
+ <tr>
+ <td id="L1166" class="blob-num js-line-number" data-line-number="1166"></td>
+ <td id="LC1166" class="blob-code blob-code-inner js-file-line">:1048D00000B40D9241505040B8F70895F894FFCFBE </td>
+ </tr>
+ <tr>
+ <td id="L1167" class="blob-num js-line-number" data-line-number="1167"></td>
+ <td id="LC1167" class="blob-code blob-code-inner js-file-line">:1048E00020027C080A09E708B3087F080101BC011F </td>
+ </tr>
+ <tr>
+ <td id="L1168" class="blob-num js-line-number" data-line-number="1168"></td>
+ <td id="LC1168" class="blob-code blob-code-inner js-file-line">:1048F00028080A03140A3F4D36394B04FE03C80347 </td>
+ </tr>
+ <tr>
+ <td id="L1169" class="blob-num js-line-number" data-line-number="1169"></td>
+ <td id="LC1169" class="blob-code blob-code-inner js-file-line">:104900008F0322033B0354036D03010203040506D6 </td>
+ </tr>
+ <tr>
+ <td id="L1170" class="blob-num js-line-number" data-line-number="1170"></td>
+ <td id="LC1170" class="blob-code blob-code-inner js-file-line">:04491000070809008B </td>
+ </tr>
+ <tr>
+ <td id="L1171" class="blob-num js-line-number" data-line-number="1171"></td>
+ <td id="LC1171" class="blob-code blob-code-inner js-file-line">:00000001FF </td>
+ </tr>
+</table>
+
+ </div>
+
+</div>
+
+<button type="button" data-facebox="#jump-to-line" data-facebox-class="linejump" data-hotkey="l" class="hidden">Jump to Line</button>
+<div id="jump-to-line" style="display:none">
+ <!-- </textarea> --><!-- '"` --><form accept-charset="UTF-8" action="" class="js-jump-to-line-form" method="get"><div style="margin:0;padding:0;display:inline"><input name="utf8" type="hidden" value="&#x2713;" /></div>
+ <input class="form-control linejump-input js-jump-to-line-field" type="text" placeholder="Jump to line&hellip;" aria-label="Jump to line" autofocus>
+ <button type="submit" class="btn">Go</button>
+</form></div>
+
+ </div>
+ <div class="modal-backdrop"></div>
+</div>
+
+
+ </div>
+ </div>
+
+ </div>
+
+ <div class="container site-footer-container">
+ <div class="site-footer" role="contentinfo">
+ <ul class="site-footer-links right">
+ <li><a href="https://status.github.com/" data-ga-click="Footer, go to status, text:status">Status</a></li>
+ <li><a href="https://developer.github.com" data-ga-click="Footer, go to api, text:api">API</a></li>
+ <li><a href="https://training.github.com" data-ga-click="Footer, go to training, text:training">Training</a></li>
+ <li><a href="https://shop.github.com" data-ga-click="Footer, go to shop, text:shop">Shop</a></li>
+ <li><a href="https://github.com/blog" data-ga-click="Footer, go to blog, text:blog">Blog</a></li>
+ <li><a href="https://github.com/about" data-ga-click="Footer, go to about, text:about">About</a></li>
+
+ </ul>
+
+ <a href="https://github.com" aria-label="Homepage" class="site-footer-mark" title="GitHub">
+ <svg aria-hidden="true" class="octicon octicon-mark-github" height="24" version="1.1" viewBox="0 0 16 16" width="24"><path d="M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59 0.4 0.07 0.55-0.17 0.55-0.38 0-0.19-0.01-0.82-0.01-1.49-2.01 0.37-2.53-0.49-2.69-0.94-0.09-0.23-0.48-0.94-0.82-1.13-0.28-0.15-0.68-0.52-0.01-0.53 0.63-0.01 1.08 0.58 1.23 0.82 0.72 1.21 1.87 0.87 2.33 0.66 0.07-0.52 0.28-0.87 0.51-1.07-1.78-0.2-3.64-0.89-3.64-3.95 0-0.87 0.31-1.59 0.82-2.15-0.08-0.2-0.36-1.02 0.08-2.12 0 0 0.67-0.21 2.2 0.82 0.64-0.18 1.32-0.27 2-0.27 0.68 0 1.36 0.09 2 0.27 1.53-1.04 2.2-0.82 2.2-0.82 0.44 1.1 0.16 1.92 0.08 2.12 0.51 0.56 0.82 1.27 0.82 2.15 0 3.07-1.87 3.75-3.65 3.95 0.29 0.25 0.54 0.73 0.54 1.48 0 1.07-0.01 1.93-0.01 2.2 0 0.21 0.15 0.46 0.55 0.38C13.71 14.53 16 11.53 16 8 16 3.58 12.42 0 8 0z"></path></svg>
+</a>
+ <ul class="site-footer-links">
+ <li>&copy; 2016 <span title="0.18057s from github-fe155-cp1-prd.iad.github.net">GitHub</span>, Inc.</li>
+ <li><a href="https://github.com/site/terms" data-ga-click="Footer, go to terms, text:terms">Terms</a></li>
+ <li><a href="https://github.com/site/privacy" data-ga-click="Footer, go to privacy, text:privacy">Privacy</a></li>
+ <li><a href="https://github.com/security" data-ga-click="Footer, go to security, text:security">Security</a></li>
+ <li><a href="https://github.com/contact" data-ga-click="Footer, go to contact, text:contact">Contact</a></li>
+ <li><a href="https://help.github.com" data-ga-click="Footer, go to help, text:help">Help</a></li>
+ </ul>
+ </div>
+</div>
+
+
+
+
+
+ <div id="ajax-error-message" class="ajax-error-message flash flash-error">
+ <svg aria-hidden="true" class="octicon octicon-alert" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path d="M15.72 12.5l-6.85-11.98C8.69 0.21 8.36 0.02 8 0.02s-0.69 0.19-0.87 0.5l-6.85 11.98c-0.18 0.31-0.18 0.69 0 1C0.47 13.81 0.8 14 1.15 14h13.7c0.36 0 0.69-0.19 0.86-0.5S15.89 12.81 15.72 12.5zM9 12H7V10h2V12zM9 9H7V5h2V9z"></path></svg>
+ <button type="button" class="flash-close js-flash-close js-ajax-error-dismiss" aria-label="Dismiss error">
+ <svg aria-hidden="true" class="octicon octicon-x" height="16" version="1.1" viewBox="0 0 12 16" width="12"><path d="M7.48 8l3.75 3.75-1.48 1.48-3.75-3.75-3.75 3.75-1.48-1.48 3.75-3.75L0.77 4.25l1.48-1.48 3.75 3.75 3.75-3.75 1.48 1.48-3.75 3.75z"></path></svg>
+ </button>
+ Something went wrong with that request. Please try again.
+ </div>
+
+
+
+ <script crossorigin="anonymous" integrity="sha256-6lu7KoNzd//eU+EJnlkJyN9NNsxekMBa6zaUsVfffk0=" src="https://assets-cdn.github.com/assets/frameworks-ea5bbb2a837377ffde53e1099e5909c8df4d36cc5e90c05aeb3694b157df7e4d.js"></script>
+ <script async="async" crossorigin="anonymous" integrity="sha256-ORgpFF28BxWN3hEqpja3rItY93JlJ85xC9VhGK4dL1c=" src="https://assets-cdn.github.com/assets/github-391829145dbc07158dde112aa636b7ac8b58f7726527ce710bd56118ae1d2f57.js"></script>
+
+
+
+
+
+
+ <div class="js-stale-session-flash stale-session-flash flash flash-warn flash-banner hidden">
+ <svg aria-hidden="true" class="octicon octicon-alert" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path d="M15.72 12.5l-6.85-11.98C8.69 0.21 8.36 0.02 8 0.02s-0.69 0.19-0.87 0.5l-6.85 11.98c-0.18 0.31-0.18 0.69 0 1C0.47 13.81 0.8 14 1.15 14h13.7c0.36 0 0.69-0.19 0.86-0.5S15.89 12.81 15.72 12.5zM9 12H7V10h2V12zM9 9H7V5h2V9z"></path></svg>
+ <span class="signed-in-tab-flash">You signed in with another tab or window. <a href="">Reload</a> to refresh your session.</span>
+ <span class="signed-out-tab-flash">You signed out in another tab or window. <a href="">Reload</a> to refresh your session.</span>
+ </div>
+ <div class="facebox" id="facebox" style="display:none;">
+ <div class="facebox-popup">
+ <div class="facebox-content" role="dialog" aria-labelledby="facebox-header" aria-describedby="facebox-description">
+ </div>
+ <button type="button" class="facebox-close js-facebox-close" aria-label="Close modal">
+ <svg aria-hidden="true" class="octicon octicon-x" height="16" version="1.1" viewBox="0 0 12 16" width="12"><path d="M7.48 8l3.75 3.75-1.48 1.48-3.75-3.75-3.75 3.75-1.48-1.48 3.75-3.75L0.77 4.25l1.48-1.48 3.75 3.75 3.75-3.75 1.48 1.48-3.75 3.75z"></path></svg>
+ </button>
+ </div>
+</div>
+
+ </body>
+</html>
+
diff --git a/keyboard/ergodox_ez/keymaps/dvorak_spanish/keymap.c b/keyboard/ergodox_ez/keymaps/dvorak_spanish/keymap.c
new file mode 100755
index 0000000000..33a0480c94
--- /dev/null
+++ b/keyboard/ergodox_ez/keymaps/dvorak_spanish/keymap.c
@@ -0,0 +1,284 @@
+#include "ergodox_ez.h"
+#include "debug.h"
+#include "action_layer.h"
+
+/******************************************************************************************
+ * SPANISH DVORAK LAYOUT (see http://djelibeibi.unex.es/dvorak/)
+ * Layer 1: auxiliary keys
+ * Layer 2: full qwerty layout
+ ******************************************************************************************
+ * IMPORTANT: Software layout must be set to SPANISH QWERTY to work properly
+ *****************************************************************************************/
+
+// LAYERS
+#define BASE 0 // dvorak layout (default)
+#define AUX 1 // auxiliary keys
+#define QWERTY 2 // qwerty layout
+
+// MACROS
+#define OBRACE 0 // key { or shift
+#define CBRACE 1 // key } or shift
+#define OBRACK 2 // key [ or left alt
+#define CBRACK 3 // key ] or left alt
+#define CAPS 4 // caps lock
+
+// LEDS
+#define USB_LED_NUM_LOCK 0
+#define USB_LED_CAPS_LOCK 1
+#define USB_LED_SCROLL_LOCK 2
+#define USB_LED_COMPOSE 3
+#define USB_LED_KANA 4
+
+// TIMERS
+#define KEY_TAP_FAST 85
+#define KEY_TAP_SLOW 95
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+/* Keymap 0: Base layer
+ * Keys with double values (like Esc/Ctrl) correspond to the 'tapped' key and the 'held' key, respectively
+ *
+ * ,--------------------------------------------------. ,--------------------------------------------------.
+ * | \ | 1 | 2 | 3 | 4 | 5 | <> | | ¡ | 6 | 7 | 8 | 9 | 0 | ' |
+ * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
+ * | F1/~L1 | . | , | Ñ | P | Y |MEH_T | | L1 | F | G | C | H | L |ALL_T/+ |
+ * |--------+------+------+------+------+------| DEL | | ~L1 |------+------+------+------+------+--------|
+ * |Esc/Ctrl| A | O | E | U | I |------| |------| D | R | T | N | S |'/RCtrl |
+ * |--------+------+------+------+------+------| LGUI | | RALT |------+------+------+------+------+--------|
+ * | {/LSft | - | Q | J | K | X | | | | B | M | W | V | Z | }/RSft |
+ * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
+ * |[/LALT| HOME |PGDOWN| PGUP | END | | LEFT | DOWN | UP |RIGHT |]/LALT|
+ * `----------------------------------' `----------------------------------'
+ * ,-------------. ,-------------.
+ * |F5/CAG|F6/~L1| |F7/~L1|F8/CAG|
+ * ,------|------|------| |------+--------+------.
+ * | | |F4/CA | |F11/CA| | |
+ * | ENTER| TAB |------| |------| BSPC | SPACE|
+ * | | |F3/SA | |F12/SA| | |
+ * `--------------------' `----------------------'
+ * CAG = CTRL-ALT-GUI
+ * CA = CTRL-ALT
+ * SA = SHIFT-ALT
+ *
+ */
+[BASE] = KEYMAP(
+ // left hand
+ KC_GRAVE, KC_1, KC_2, KC_3, KC_4, KC_5, KC_NONUS_BSLASH,
+ LT(AUX, KC_F1), KC_DOT, KC_COMM,KC_SCLN,KC_P, KC_Y, MEH_T(KC_DEL),
+ CTL_T(KC_ESC), KC_A, KC_O, KC_E, KC_U, KC_I,
+ M(OBRACE), KC_SLSH,KC_Q, KC_J, KC_K, KC_X, KC_LGUI,
+ M(OBRACK), KC_HOME,KC_PGDN,KC_PGUP,KC_END,
+ LCAG_T(KC_F5), LT(AUX, KC_F6),
+ MT(MOD_LALT | MOD_LCTL, KC_F4),
+ KC_ENT,KC_TAB,MT((MOD_LALT | MOD_LSFT), KC_F3),
+ // right hand
+ KC_EQL, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINUS,
+ KC_FN1, KC_F, KC_G, KC_C, KC_H, KC_L, ALL_T(KC_RBRACKET),
+ KC_D, KC_R, KC_T, KC_N, KC_S, CTL_T(KC_QUOTE),
+ KC_RALT, KC_B, KC_M, KC_W, KC_V, KC_Z, M(CBRACE),
+ KC_LEFT,KC_DOWN,KC_UP, KC_RGHT,M(CBRACK),
+ LT(AUX, KC_F7), LCAG_T(KC_F8),
+ MT(MOD_LALT | MOD_LCTL, KC_F11),
+ MT(MOD_LALT | MOD_LSFT, KC_F12),KC_BSPC, KC_SPC
+ ),
+/* Keymap 1: Aux layer
+ *
+ * ,--------------------------------------------------. ,--------------------------------------------------.
+ * | | F1 | F2 | F3 | F4 | F5 | SLEEP | PWR | F6 | F7 | F8 | F9 | F10 | F11 |
+ * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
+ * | | < | > | MsUp | | | | | ~L0 | | 7 | 8 | 9 | * | `^ |
+ * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
+ * | | |MsLeft|MsDown|MsRght| |------| |------| | 4 | 5 | 6 | + | Ç |
+ * |--------+------+------+------+------+------| | |PSCR |------+------+------+------+------+--------|
+ * |CAPSLOCK| | | | | | | | | | 1 | 2 | 3 | / | |
+ * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
+ * |CTRL-S|CTRL-Z|CTRL-X|CTRL-C|CTRL-V| | | . | 0 | = | |
+ * `----------------------------------' `----------------------------------'
+ * ,-------------. ,-------------.
+ * | | | | | Play |
+ * ,------|------|------| |------+------+------.
+ * | | | | | VolUp| | |
+ * | Lclk | Rclk |------| |------| Prev | Next |
+ * | | | L2 | | VolDn| | |
+ * `--------------------' `--------------------'
+ */
+[AUX] = KEYMAP(
+ // left hand
+ KC_NO , KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_SLEP,
+ KC_TRNS, KC_NONUS_BSLASH, LSFT(KC_NONUS_BSLASH), KC_MS_U, KC_NO, KC_NO, KC_NO,
+ KC_NO , KC_NO, KC_MS_L, KC_MS_D, KC_MS_R, KC_NO ,
+ M(CAPS), KC_NO, KC_NO , KC_NO , KC_NO , KC_NO , KC_NO,
+ LCTL(KC_S), LCTL(KC_Z), LCTL(KC_X), LCTL(KC_C), LCTL(KC_V),
+ KC_NO , KC_TRNS,
+ KC_NO,
+ KC_BTN1, KC_BTN2, TG(QWERTY),
+ // right hand
+ KC_PWR, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11,
+ KC_TRNS, KC_NO, KC_7, KC_8, KC_9, KC_PAST, KC_LBRACKET,
+ KC_NO, KC_4, KC_5, KC_6, KC_PPLS, KC_BSLASH,
+ KC_PSCR, KC_NO, KC_1, KC_2, KC_3, KC_PSLS, KC_NO,
+ KC_NO ,KC_DOT, KC_0, KC_PEQL, KC_NO,
+ KC_TRNS, KC_MPLY,
+ KC_VOLU,
+ KC_VOLD, KC_MPRV, KC_MNXT
+),
+/* Keymap 2: QWERTY layer
+ *
+ * ,--------------------------------------------------. ,--------------------------------------------------.
+ * | \ | 1 | 2 | 3 | 4 | 5 | <> | | ¡ | 6 | 7 | 8 | 9 | 0 | ' |
+ * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
+ * | TRANS | Q | W | E | R | T |MEH_T | | TRANS| Y | U | I | O | P |ALL_T/+ |
+ * |--------+------+------+------+------+------| DEL | | |------+------+------+------+------+--------|
+ * |Esc/Ctrl| A | S | D | F | G |------| |------| H | J | K | L | Ñ |'/RCtrl |
+ * |--------+------+------+------+------+------| LGUI | | RALT |------+------+------+------+------+--------|
+ * | {/LSft | Z | X | C | V | B | | | | N | M | , | . | - | }/RSft |
+ * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
+ * |[/LALT| HOME |PGDOWN| PGUP | END | | LEFT | DOWN | UP |RIGHT |]/LALT|
+ * `----------------------------------' `----------------------------------'
+ * ,-------------. ,-------------.
+ * |F5/CAG| TRANS| | TRANS|F8/CAG|
+ * ,------|------|------| |------+--------+------.
+ * | | |F4/CA | |F11/CA| | |
+ * | ENTER| TAB |------| |------| BSPC | SPACE|
+ * | | | TRANS| |F12/SA| | |
+ * `--------------------' `----------------------'
+ * CAG = CTRL-ALT-GUI
+ * CA = CTRL-ALT
+ * SA = SHIFT-ALT
+ *
+ */
+[QWERTY] = KEYMAP(
+ // left hand
+ KC_GRAVE, KC_1, KC_2, KC_3, KC_4, KC_5, KC_NONUS_BSLASH,
+ KC_TRNS, KC_Q, KC_W, KC_E, KC_R, KC_T, MEH_T(KC_DEL),
+ CTL_T(KC_ESC), KC_A, KC_S, KC_D, KC_F, KC_G,
+ M(OBRACE), KC_Z, KC_X, KC_C, KC_V, KC_B, KC_LGUI,
+ M(OBRACK), KC_HOME,KC_PGDN,KC_PGUP,KC_END,
+ LCAG_T(KC_F5), KC_TRNS,
+ MT(MOD_LALT | MOD_LCTL, KC_F4),
+ KC_ENT,KC_TAB,KC_TRNS,
+ // right hand
+ KC_EQL, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINUS,
+ KC_TRNS, KC_Y, KC_U, KC_I, KC_O, KC_P, ALL_T(KC_RBRACKET),
+ KC_H, KC_J, KC_K, KC_L, KC_SCLN,CTL_T(KC_QUOTE),
+ KC_RALT, KC_N, KC_M, KC_COMM,KC_DOT, KC_SLSH,M(CBRACE),
+ KC_LEFT,KC_DOWN,KC_UP, KC_RGHT,M(CBRACK),
+ KC_TRNS, LCAG_T(KC_F8),
+ MT(MOD_LALT | MOD_LCTL, KC_F11),
+ MT(MOD_LALT | MOD_LSFT, KC_F12),KC_BSPC, KC_SPC
+),
+};
+
+const uint16_t PROGMEM fn_actions[] = {
+ [1] = ACTION_LAYER_TAP_TOGGLE(AUX) // FN1 - Momentary Layer 1 (Aux)
+};
+
+static uint16_t key_timer;
+
+const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
+{
+ switch(id) {
+ case OBRACE: {
+ if (record->event.pressed) {
+ key_timer = timer_read();
+ register_code(KC_RSFT);
+ } else {
+ unregister_code(KC_RSFT);
+ if (timer_elapsed(key_timer) < KEY_TAP_SLOW) {
+ register_code(KC_RALT);
+ register_code(KC_QUOTE);
+ unregister_code(KC_QUOTE);
+ unregister_code(KC_RALT);
+ }
+ }
+ break;
+ }
+ case CBRACE: {
+ if (record->event.pressed) {
+ key_timer = timer_read();
+ register_code(KC_RSFT);
+ } else {
+ unregister_code(KC_RSFT);
+ if (timer_elapsed(key_timer) < KEY_TAP_SLOW) {
+ register_code(KC_RALT);
+ register_code(KC_BSLS);
+ unregister_code(KC_BSLS);
+ unregister_code(KC_RALT);
+ }
+ }
+ break;
+ }
+ case OBRACK: {
+ if (record->event.pressed) {
+ key_timer = timer_read();
+ register_code(KC_LALT);
+ } else {
+ unregister_code(KC_LALT);
+ if (timer_elapsed(key_timer) < KEY_TAP_SLOW) {
+ register_code(KC_RALT);
+ register_code(KC_LBRACKET);
+ unregister_code(KC_LBRACKET);
+ unregister_code(KC_RALT);
+ }
+ }
+ break;
+ }
+ case CBRACK: {
+ if (record->event.pressed) {
+ key_timer = timer_read();
+ register_code(KC_LALT);
+ } else {
+ unregister_code(KC_LALT);
+ if (timer_elapsed(key_timer) < KEY_TAP_SLOW) {
+ register_code(KC_RALT);
+ register_code(KC_RBRACKET);
+ unregister_code(KC_RBRACKET);
+ unregister_code(KC_RALT);
+ }
+ }
+ break;
+ }
+ case CAPS: {
+ if (record->event.pressed) {
+ register_code(KC_CAPSLOCK);
+ } else {
+ unregister_code(KC_CAPSLOCK);
+ }
+ break;
+ }
+ }
+ return MACRO_NONE;
+};
+
+// Runs just one time when the keyboard initializes.
+void matrix_init_user(void) {
+
+};
+
+// Runs constantly in the background, in a loop.
+void matrix_scan_user(void) {
+
+ uint8_t layer = biton32(layer_state);
+
+ ergodox_board_led_off();
+ ergodox_right_led_1_off();
+ ergodox_right_led_2_off();
+ ergodox_right_led_3_off();
+ switch (layer) {
+ case 1:
+ ergodox_right_led_3_on();
+ break;
+ case 2:
+ ergodox_right_led_2_on();
+ break;
+ default:
+ // none
+ break;
+ }
+
+ // Turn the caps lock led on
+ if (host_keyboard_leds() & (1<<USB_LED_CAPS_LOCK)) {
+ ergodox_right_led_1_on();
+ }
+
+}
+
diff --git a/keyboard/ergodox_ez/matrix.c b/keyboard/ergodox_ez/matrix.c
index c4f5b179f0..7266cca985 100644
--- a/keyboard/ergodox_ez/matrix.c
+++ b/keyboard/ergodox_ez/matrix.c
@@ -50,7 +50,7 @@ static matrix_row_t matrix_debouncing[MATRIX_ROWS];
static matrix_row_t read_cols(uint8_t row);
static void init_cols(void);
-static void unselect_rows();
+static void unselect_rows(void);
static void select_row(uint8_t row);
static uint8_t mcp23018_reset_loop;
diff --git a/keyboard/ergodox_ez/readme.md b/keyboard/ergodox_ez/readme.md
index 97a10ff4d8..78b825aaa2 100644
--- a/keyboard/ergodox_ez/readme.md
+++ b/keyboard/ergodox_ez/readme.md
@@ -4,7 +4,7 @@ There are two main ways you could customize the ErgoDox EZ.
## The Easy Way: Use an existing firmware file and just flash it
-1. Download and install the [Teensy Loader](https://www.pjrc.com/teensy/loader.html)
+1. Download and install the [Teensy Loader](https://www.pjrc.com/teensy/loader.html). Some Linux distributions already provide a binary (may be called `teensy-loader-cli`), so you may prefer to use this.
2. Find a firmware file you like. You can find a few if these in the keymaps subdirectory right here. The file you need ends with .hex, and you can look at its .c counterpart (or its PNG image) to see what you'll be getting. You can also use the [Massdrop configurator](https://keyboard-configurator.massdrop.com/ext/ergodox) to create a firmware Hex file you like.
3. Download the firmware file
4. Connect the keyboard, press its Reset button (gently insert a paperclip into the hole in the top-right corner) and flash it using the Teensy loader you installed on step 1 and the firmware you downloaded.
@@ -15,12 +15,12 @@ This requires a little bit of familiarity with coding.
1. Go to https://github.com/jackhumbert/qmk_firmware and read the Readme at the base of this repository, top to bottom. Then come back here :)
2. Clone the repository (download it)
-3. Set up a build environment as per [the build guide](/BUILD_GUIDE.md)
+3. Set up a build environment as per [the build guide](/doc/BUILD_GUIDE.md)
- Using a Mac and have homebrew? just run `brew tap osx-cross/avr && brew install avr-libc`
4. Copy `keyboard/ergodox_ez/keymaps/default/keymap.c` into `keymaps/your_name/keymap.c` (for example, `keymaps/german/keymap.c`)
5. Edit this file, changing keycodes to your liking (see "Finding the keycodes you need" below). Try to edit the comments as well, so the "text graphics" represent your layout correctly. See below for more tips on sharing your work.
6. Compile your firmware by running `make clean` followed by `make KEYMAP=your_name`. For example, `make KEYMAP=german`. This will result in a hex file, which will always be called `ergodox_ez.hex`, regardless of your keymap name.
-6. Flash this hex file using the [Teensy loader](https://www.pjrc.com/teensy/loader.html) as described in step 4 in the "Easy Way" above.
+6. Flash this hex file using the [Teensy loader](https://www.pjrc.com/teensy/loader.html) as described in step 4 in the "Easy Way" above. If you prefer you can automatically flash the hex file after successfull build by running `make teensy KEYMAP=your_name`.
7. Submit your work as a pull request to this repository, so others can also use it. :) See below on specifics.
Good luck! :)
diff --git a/keyboard/ergodox_ez/util/compile_keymap.py b/keyboard/ergodox_ez/util/compile_keymap.py
new file mode 100644
index 0000000000..7076a6ecb2
--- /dev/null
+++ b/keyboard/ergodox_ez/util/compile_keymap.py
@@ -0,0 +1,710 @@
+#!/usr/bin/env python
+# -*- coding: utf-8 -*-
+"""Compiler for keymap.c files
+
+This scrip will generate a keymap.c file from a simple
+markdown file with a specific layout.
+
+Usage:
+ python compile_keymap.py INPUT_PATH [OUTPUT_PATH]
+"""
+from __future__ import division
+from __future__ import print_function
+from __future__ import absolute_import
+from __future__ import unicode_literals
+
+import os
+import io
+import re
+import sys
+import json
+import unicodedata
+import collections
+import itertools as it
+
+PY2 = sys.version_info.major == 2
+
+if PY2:
+ chr = unichr
+
+
+KEYBOARD_LAYOUTS = {
+ # These map positions in the parsed layout to
+ # positions in the KEYMAP MATRIX
+ 'ergodox_ez': [
+ [ 0, 1, 2, 3, 4, 5, 6], [38, 39, 40, 41, 42, 43, 44],
+ [ 7, 8, 9, 10, 11, 12, 13], [45, 46, 47, 48, 49, 50, 51],
+ [14, 15, 16, 17, 18, 19 ], [ 52, 53, 54, 55, 56, 57],
+ [20, 21, 22, 23, 24, 25, 26], [58, 59, 60, 61, 62, 63, 64],
+ [27, 28, 29, 30, 31 ], [ 65, 66, 67, 68, 69],
+ [ 32, 33], [70, 71 ],
+ [ 34], [72 ],
+ [ 35, 36, 37], [73, 74, 75 ],
+ ]
+}
+
+ROW_INDENTS = {
+ 'ergodox_ez': [0, 0, 0, 0, 0, 1, 0, 0, 0, 2, 5, 0, 6, 0, 4, 0]
+}
+
+BLANK_LAYOUTS = [
+# Compact Layout
+"""
+.------------------------------------.------------------------------------.
+| | | | | | | | | | | | | | |
+!-----+----+----+----+----+----------!-----+----+----+----+----+----+-----!
+| | | | | | | | | | | | | | |
+!-----+----+----+----x----x----! ! !----x----x----+----+----+-----!
+| | | | | | |-----!-----! | | | | | |
+!-----+----+----+----x----x----! ! !----x----x----+----+----+-----!
+| | | | | | | | | | | | | | |
+'-----+----+----+----+----+----------'----------+----+----+----+----+-----'
+ | | | | | | ! | | | | |
+ '------------------------' '------------------------'
+ .-----------. .-----------.
+ | | | ! | |
+ .-----+-----+-----! !-----+-----+-----.
+ ! ! | | ! | ! !
+ ! ! !-----! !-----! ! !
+ | | | | ! | | |
+ '-----------------' '-----------------'
+""",
+
+# Wide Layout
+"""
+.---------------------------------------------. .---------------------------------------------.
+| | | | | | | | ! | | | | | | |
+!-------+-----+-----+-----+-----+-------------! !-------+-----+-----+-----+-----+-----+-------!
+| | | | | | | | ! | | | | | | |
+!-------+-----+-----+-----x-----x-----! ! ! !-----x-----x-----+-----+-----+-------!
+| | | | | | |-------! !-------! | | | | | |
+!-------+-----+-----+-----x-----x-----! ! ! !-----x-----x-----+-----+-----+-------!
+| | | | | | | | ! | | | | | | |
+'-------+-----+-----+-----+-----+-------------' '-------------+-----+-----+-----+-----+-------'
+ | | | | | | ! | | | | |
+ '------------------------------' '------------------------------'
+ .---------------. .---------------.
+ | | | ! | |
+ .-------+-------+-------! !-------+-------+-------.
+ ! ! | | ! | ! !
+ ! ! !-------! !-------! ! !
+ | | | | ! | | |
+ '-----------------------' '-----------------------'
+""",
+]
+
+
+DEFAULT_CONFIG = {
+ "keymaps_includes": [
+ "keymap_common.h",
+ ],
+ 'filler': "-+.'!:x",
+ 'separator': "|",
+ 'default_key_prefix': ["KC_"],
+}
+
+
+SECTIONS = [
+ 'layout_config',
+ 'layers',
+]
+
+
+# Markdown Parsing
+
+ONELINE_COMMENT_RE = re.compile(r"""
+ ^ # comment must be at the start of the line
+ \s* # arbitrary whitespace
+ // # start of the comment
+ (.*) # the comment
+ $ # until the end of line
+""", re.MULTILINE | re.VERBOSE
+)
+
+INLINE_COMMENT_RE = re.compile(r"""
+ ([\,\"\[\]\{\}\d]) # anythig that might end a expression
+ \s+ # comment must be preceded by whitespace
+ // # start of the comment
+ \s # and succeded by whitespace
+ (?:[^\"\]\}\{\[]*) # the comment (except things which might be json)
+ $ # until the end of line
+""", re.MULTILINE | re.VERBOSE)
+
+TRAILING_COMMA_RE = re.compile(r"""
+ , # the comma
+ (?:\s*) # arbitrary whitespace
+ $ # only works if the trailing comma is followed by newline
+ (\s*) # arbitrary whitespace
+ ([\]\}]) # end of an array or object
+""", re.MULTILINE | re.VERBOSE)
+
+
+def loads(raw_data):
+ if isinstance(raw_data, bytes):
+ raw_data = raw_data.decode('utf-8')
+
+ raw_data = ONELINE_COMMENT_RE.sub(r"", raw_data)
+ raw_data = INLINE_COMMENT_RE.sub(r"\1", raw_data)
+ raw_data = TRAILING_COMMA_RE.sub(r"\1\2", raw_data)
+ return json.loads(raw_data)
+
+
+def parse_config(path):
+ def reset_section():
+ section.update({
+ 'name': section.get('name', ""),
+ 'sub_name': "",
+ 'start_line': -1,
+ 'end_line': -1,
+ 'code_lines': [],
+ })
+
+ def start_section(line_index, line):
+ end_section()
+ if line.startswith("# "):
+ name = line[2:]
+ elif line.startswith("## "):
+ name = line[3:]
+ else:
+ name = ""
+
+ name = name.strip().replace(" ", "_").lower()
+ if name in SECTIONS:
+ section['name'] = name
+ else:
+ section['sub_name'] = name
+ section['start_line'] = line_index
+
+ def end_section():
+ if section['start_line'] >= 0:
+ if section['name'] == 'layout_config':
+ config.update(loads("\n".join(
+ section['code_lines']
+ )))
+ elif section['sub_name'].startswith('layer'):
+ layer_name = section['sub_name']
+ config['layer_lines'][layer_name] = section['code_lines']
+
+ reset_section()
+
+ def amend_section(line_index, line):
+ section['end_line'] = line_index
+ section['code_lines'].append(line)
+
+ config = DEFAULT_CONFIG.copy()
+ config.update({
+ 'layer_lines': collections.OrderedDict(),
+ 'macro_ids': {'UM'},
+ 'unicode_macros': {},
+ })
+
+ section = {}
+ reset_section()
+
+ with io.open(path, encoding="utf-8") as fh:
+ for i, line in enumerate(fh):
+ if line.startswith("#"):
+ start_section(i, line)
+ elif line.startswith(" "):
+ amend_section(i, line[4:])
+ else:
+ # TODO: maybe parse description
+ pass
+
+ end_section()
+ assert 'layout' in config
+ return config
+
+# header file parsing
+
+IF0_RE = re.compile(r"""
+ ^
+ #if 0
+ $.*?
+ #endif
+""", re.MULTILINE | re.DOTALL | re.VERBOSE)
+
+
+COMMENT_RE = re.compile(r"""
+ /\*
+ .*?
+ \*/"
+""", re.MULTILINE | re.DOTALL | re.VERBOSE)
+
+
+def read_header_file(path):
+ with io.open(path, encoding="utf-8") as fh:
+ data = fh.read()
+ data, _ = COMMENT_RE.subn("", data)
+ data, _ = IF0_RE.subn("", data)
+ return data
+
+
+def regex_partial(re_str_fmt, flags):
+ def partial(*args, **kwargs):
+ re_str = re_str_fmt.format(*args, **kwargs)
+ return re.compile(re_str, flags)
+ return partial
+
+
+KEYDEF_REP = regex_partial(r"""
+ #define
+ \s
+ (
+ (?:{}) # the prefixes
+ (?:\w+) # the key name
+ ) # capture group end
+""", re.MULTILINE | re.DOTALL | re.VERBOSE)
+
+
+ENUM_RE = re.compile(r"""
+ (
+ enum
+ \s\w+\s
+ \{
+ .*? # the enum content
+ \}
+ ;
+ ) # capture group end
+""", re.MULTILINE | re.DOTALL | re.VERBOSE)
+
+
+ENUM_KEY_REP = regex_partial(r"""
+ (
+ {} # the prefixes
+ \w+ # the key name
+ ) # capture group end
+""", re.MULTILINE | re.DOTALL | re.VERBOSE)
+
+
+def parse_keydefs(config, data):
+ prefix_options = "|".join(config['key_prefixes'])
+ keydef_re = KEYDEF_REP(prefix_options)
+ enum_key_re = ENUM_KEY_REP(prefix_options)
+ for match in keydef_re.finditer(data):
+ yield match.groups()[0]
+
+ for enum_match in ENUM_RE.finditer(data):
+ enum = enum_match.groups()[0]
+ for key_match in enum_key_re.finditer(enum):
+ yield key_match.groups()[0]
+
+
+def parse_valid_keys(config, out_path):
+ basepath = os.path.abspath(os.path.join(os.path.dirname(out_path)))
+ dirpaths = []
+ subpaths = []
+ while len(subpaths) < 6:
+ path = os.path.join(basepath, *subpaths)
+ dirpaths.append(path)
+ dirpaths.append(os.path.join(path, "tmk_core", "common"))
+ dirpaths.append(os.path.join(path, "quantum"))
+ subpaths.append('..')
+
+ includes = set(config['keymaps_includes'])
+ includes.add("keycode.h")
+
+ valid_keycodes = set()
+ for dirpath, include in it.product(dirpaths, includes):
+ include_path = os.path.join(dirpath, include)
+ if os.path.exists(include_path):
+ header_data = read_header_file(include_path)
+ valid_keycodes.update(
+ parse_keydefs(config, header_data)
+ )
+ return valid_keycodes
+
+
+# Keymap Parsing
+
+def iter_raw_codes(layer_lines, filler, separator):
+ filler_re = re.compile("[" + filler + " ]")
+ for line in layer_lines:
+ line, _ = filler_re.subn("", line.strip())
+ if not line:
+ continue
+ codes = line.split(separator)
+ for code in codes[1:-1]:
+ yield code
+
+
+def iter_indexed_codes(raw_codes, key_indexes):
+ key_rows = {}
+ key_indexes_flat = []
+
+ for row_index, key_indexes in enumerate(key_indexes):
+ for key_index in key_indexes:
+ key_rows[key_index] = row_index
+ key_indexes_flat.extend(key_indexes)
+ assert len(raw_codes) == len(key_indexes_flat)
+ for raw_code, key_index in zip(raw_codes, key_indexes_flat):
+ # we keep track of the row mostly for layout purposes
+ yield raw_code, key_index, key_rows[key_index]
+
+
+LAYER_CHANGE_RE = re.compile(r"""
+ (DF|TG|MO)\(\d+\)
+""", re.VERBOSE)
+
+
+MACRO_RE = re.compile(r"""
+ M\(\w+\)
+""", re.VERBOSE)
+
+
+UNICODE_RE = re.compile(r"""
+ U[0-9A-F]{4}
+""", re.VERBOSE)
+
+
+NON_CODE = re.compile(r"""
+ ^[^A-Z0-9_]$
+""", re.VERBOSE)
+
+
+def parse_uni_code(raw_code):
+ macro_id = "UC_" + (
+ unicodedata.name(raw_code)
+ .replace(" ", "_")
+ .replace("-", "_")
+ )
+ code = "M({})".format(macro_id)
+ uc_hex = "{:04X}".format(ord(raw_code))
+ return code, macro_id, uc_hex
+
+
+def parse_key_code(raw_code, key_prefixes, valid_keycodes):
+ if raw_code in valid_keycodes:
+ return raw_code
+
+ for prefix in key_prefixes:
+ code = prefix + raw_code
+ if code in valid_keycodes:
+ return code
+
+
+def parse_code(raw_code, key_prefixes, valid_keycodes):
+ if not raw_code:
+ return 'KC_TRNS', None, None
+
+ if LAYER_CHANGE_RE.match(raw_code):
+ return raw_code, None, None
+
+ if MACRO_RE.match(raw_code):
+ macro_id = raw_code[2:-1]
+ return raw_code, macro_id, None
+
+ if UNICODE_RE.match(raw_code):
+ hex_code = raw_code[1:]
+ return parse_uni_code(chr(int(hex_code, 16)))
+
+ if NON_CODE.match(raw_code):
+ return parse_uni_code(raw_code)
+
+ code = parse_key_code(raw_code, key_prefixes, valid_keycodes)
+ return code, None, None
+
+
+def parse_keymap(config, key_indexes, layer_lines, valid_keycodes):
+ keymap = {}
+ raw_codes = list(iter_raw_codes(
+ layer_lines, config['filler'], config['separator']
+ ))
+ indexed_codes = iter_indexed_codes(raw_codes, key_indexes)
+ key_prefixes = config['key_prefixes']
+ for raw_code, key_index, row_index in indexed_codes:
+ code, macro_id, uc_hex = parse_code(
+ raw_code, key_prefixes, valid_keycodes
+ )
+ # TODO: line numbers for invalid codes
+ err_msg = "Could not parse key '{}' on row {}".format(
+ raw_code, row_index
+ )
+ assert code is not None, err_msg
+ # print(repr(raw_code), repr(code), macro_id, uc_hex)
+ if macro_id:
+ config['macro_ids'].add(macro_id)
+ if uc_hex:
+ config['unicode_macros'][macro_id] = uc_hex
+ keymap[key_index] = (code, row_index)
+ return keymap
+
+
+def parse_keymaps(config, valid_keycodes):
+ keymaps = collections.OrderedDict()
+ key_indexes = config.get(
+ 'key_indexes', KEYBOARD_LAYOUTS[config['layout']]
+ )
+ # TODO: maybe validate key_indexes
+
+ for layer_name, layer_lines, in config['layer_lines'].items():
+ keymaps[layer_name] = parse_keymap(
+ config, key_indexes, layer_lines, valid_keycodes
+ )
+ return keymaps
+
+# keymap.c output
+
+USERCODE = """
+// Runs just one time when the keyboard initializes.
+void matrix_init_user(void) {
+
+};
+
+// Runs constantly in the background, in a loop.
+void matrix_scan_user(void) {
+ uint8_t layer = biton32(layer_state);
+
+ ergodox_board_led_off();
+ ergodox_right_led_1_off();
+ ergodox_right_led_2_off();
+ ergodox_right_led_3_off();
+ switch (layer) {
+ case L1:
+ ergodox_right_led_1_on();
+ break;
+ case L2:
+ ergodox_right_led_2_on();
+ break;
+ case L3:
+ ergodox_right_led_3_on();
+ break;
+ case L4:
+ ergodox_right_led_1_on();
+ ergodox_right_led_2_on();
+ break;
+ case L5:
+ ergodox_right_led_1_on();
+ ergodox_right_led_3_on();
+ break;
+ // case L6:
+ // ergodox_right_led_2_on();
+ // ergodox_right_led_3_on();
+ // break;
+ // case L7:
+ // ergodox_right_led_1_on();
+ // ergodox_right_led_2_on();
+ // ergodox_right_led_3_on();
+ // break;
+ default:
+ ergodox_board_led_off();
+ break;
+ }
+};
+"""
+
+MACROCODE = """
+#define UC_MODE_WIN 0
+#define UC_MODE_LINUX 1
+#define UC_MODE_OSX 2
+
+// TODO: allow default mode to be configured
+static uint16_t unicode_mode = UC_MODE_WIN;
+
+uint16_t hextokeycode(uint8_t hex) {{
+ if (hex == 0x0) {{
+ return KC_P0;
+ }}
+ if (hex < 0xA) {{
+ return KC_P1 + (hex - 0x1);
+ }}
+ return KC_A + (hex - 0xA);
+}}
+
+void unicode_action_function(uint16_t hi, uint16_t lo) {{
+ switch (unicode_mode) {{
+ case UC_MODE_WIN:
+ register_code(KC_LALT);
+
+ register_code(KC_PPLS);
+ unregister_code(KC_PPLS);
+
+ register_code(hextokeycode((hi & 0xF0) >> 4));
+ unregister_code(hextokeycode((hi & 0xF0) >> 4));
+ register_code(hextokeycode((hi & 0x0F)));
+ unregister_code(hextokeycode((hi & 0x0F)));
+ register_code(hextokeycode((lo & 0xF0) >> 4));
+ unregister_code(hextokeycode((lo & 0xF0) >> 4));
+ register_code(hextokeycode((lo & 0x0F)));
+ unregister_code(hextokeycode((lo & 0x0F)));
+
+ unregister_code(KC_LALT);
+ break;
+ case UC_MODE_LINUX:
+ register_code(KC_LCTL);
+ register_code(KC_LSFT);
+
+ register_code(KC_U);
+ unregister_code(KC_U);
+
+ register_code(hextokeycode((hi & 0xF0) >> 4));
+ unregister_code(hextokeycode((hi & 0xF0) >> 4));
+ register_code(hextokeycode((hi & 0x0F)));
+ unregister_code(hextokeycode((hi & 0x0F)));
+ register_code(hextokeycode((lo & 0xF0) >> 4));
+ unregister_code(hextokeycode((lo & 0xF0) >> 4));
+ register_code(hextokeycode((lo & 0x0F)));
+ unregister_code(hextokeycode((lo & 0x0F)));
+
+ unregister_code(KC_LCTL);
+ unregister_code(KC_LSFT);
+ break;
+ case UC_MODE_OSX:
+ break;
+ }}
+}}
+
+const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) {{
+ if (!record->event.pressed) {{
+ return MACRO_NONE;
+ }}
+ // MACRODOWN only works in this function
+ switch(id) {{
+ case UM:
+ unicode_mode = (unicode_mode + 1) % 2;
+ break;
+{macro_cases}
+{unicode_macro_cases}
+ default:
+ break;
+ }}
+ return MACRO_NONE;
+}};
+"""
+
+
+UNICODE_MACRO_TEMPLATE = """
+case {macro_id}:
+ unicode_action_function(0x{hi:02x}, 0x{lo:02x});
+ break;
+""".strip()
+
+
+def unicode_macro_cases(config):
+ for macro_id, uc_hex in config['unicode_macros'].items():
+ hi = int(uc_hex, 16) >> 8
+ lo = int(uc_hex, 16) & 0xFF
+ unimacro_keys = ", ".join(
+ "T({})".format(
+ "KP_" + digit if digit.isdigit() else digit
+ ) for digit in uc_hex
+ )
+ yield UNICODE_MACRO_TEMPLATE.format(
+ macro_id=macro_id, hi=hi, lo=lo
+ )
+
+
+def iter_keymap_lines(keymap, row_indents=None):
+ col_widths = {}
+ col = 0
+ # first pass, figure out the column widths
+ prev_row_index = None
+ for code, row_index in keymap.values():
+ if row_index != prev_row_index:
+ col = 0
+ if row_indents:
+ col = row_indents[row_index]
+ col_widths[col] = max(len(code), col_widths.get(col, 0))
+ prev_row_index = row_index
+ col += 1
+
+ # second pass, yield the cell values
+ col = 0
+ prev_row_index = None
+ for key_index in sorted(keymap):
+ code, row_index = keymap[key_index]
+ if row_index != prev_row_index:
+ col = 0
+ yield "\n"
+ if row_indents:
+ for indent_col in range(row_indents[row_index]):
+ pad = " " * (col_widths[indent_col] - 4)
+ yield (" /*-*/" + pad)
+ col = row_indents[row_index]
+ else:
+ yield pad
+ yield " {}".format(code)
+ if key_index < len(keymap) - 1:
+ yield ","
+ # This will be yielded on the next iteration when
+ # we know that we're not at the end of a line.
+ pad = " " * (col_widths[col] - len(code))
+ prev_row_index = row_index
+ col += 1
+
+
+def iter_keymap_parts(config, keymaps):
+ # includes
+ for include_path in config['keymaps_includes']:
+ yield '#include "{}"\n'.format(include_path)
+
+ yield "\n"
+
+ # definitions
+ for i, macro_id in enumerate(sorted(config['macro_ids'])):
+ yield "#define {} {}\n".format(macro_id, i)
+
+ yield "\n"
+
+ for i, layer_name in enumerate(config['layer_lines']):
+ yield '#define L{0:<3} {0:<5} // {1}\n'.format(i, layer_name)
+
+ yield "\n"
+
+ # keymaps
+ yield "const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {\n"
+
+ for i, layer_name in enumerate(config['layer_lines']):
+ # comment
+ layer_lines = config['layer_lines'][layer_name]
+ prefixed_lines = " * " + " * ".join(layer_lines)
+ yield "/*\n{} */\n".format(prefixed_lines)
+
+ # keymap codes
+ keymap = keymaps[layer_name]
+ row_indents = ROW_INDENTS.get(config['layout'])
+ keymap_lines = "".join(iter_keymap_lines(keymap, row_indents))
+ yield "[L{0}] = KEYMAP({1}\n),\n".format(i, keymap_lines)
+
+ yield "};\n\n"
+
+ # no idea what this is for
+ yield "const uint16_t PROGMEM fn_actions[] = {};\n"
+
+ # macros
+ yield MACROCODE.format(
+ macro_cases="",
+ unicode_macro_cases="\n".join(unicode_macro_cases(config)),
+ )
+
+ # TODO: dynamically create blinking lights
+ yield USERCODE
+
+
+def main(argv=sys.argv[1:]):
+ if not argv or '-h' in argv or '--help' in argv:
+ print(__doc__)
+ return 0
+
+ in_path = os.path.abspath(argv[0])
+ if not os.path.exists(in_path):
+ print("No such file '{}'".format(in_path))
+ return 1
+
+ if len(argv) > 1:
+ out_path = os.path.abspath(argv[1])
+ else:
+ dirname = os.path.dirname(in_path)
+ out_path = os.path.join(dirname, "keymap.c")
+
+ config = parse_config(in_path)
+ valid_keys = parse_valid_keys(config, out_path)
+ keymaps = parse_keymaps(config, valid_keys)
+
+ with io.open(out_path, mode="w", encoding="utf-8") as fh:
+ for part in iter_keymap_parts(config, keymaps):
+ fh.write(part)
+
+
+if __name__ == '__main__':
+ sys.exit(main())
diff --git a/keyboard/ergodox_ez/util/readme.md b/keyboard/ergodox_ez/util/readme.md
new file mode 100644
index 0000000000..26c5e5d99c
--- /dev/null
+++ b/keyboard/ergodox_ez/util/readme.md
@@ -0,0 +1,3 @@
+# ErgoDox EZ Utilities
+
+The Python script in this directory, by [mbarkhau](https://github.com/mbarkhau) allows you to write out a basic ErgoDox EZ keymap using Markdown notation, and then transpile it to C, which you can then compile. It's experimental, but if you're not comfortable using C, it's a nice option.