motor_ctrl: pid tuning
authorErik Andresen <erik@vontaene.de>
Wed, 13 Jul 2016 08:00:53 +0000 (10:00 +0200)
committerErik Andresen <erik@vontaene.de>
Wed, 13 Jul 2016 08:00:53 +0000 (10:00 +0200)
avr/motor_ctrl/main.c
avr/motor_ctrl/main.hex
scripts/engine_man_test.py [new file with mode: 0755]

index d25271f..5c6a667 100644 (file)
 #define TWI_RESET      TWCR &= ~((1 << TWSTO) | (1 << TWEN)); TWI_ACK
 #define TWI_NAK                TWCR = (1<<TWINT) | (1<<TWEN) | (1<<TWIE)
 
-#define KP 0.045
-#define KI 2.298
-#define KD 0.0004
+#define KP 0.025
+#define KI 2.3
+#define KD 0.0
 #define PID_T 0.01
 // wheel diameter=12cm, encoder=48cpr, gear ratio=1:34, real wheel diameter: 0.12454m
 #define STEP_PER_M_AVG 4171.4
index d155318..88dbf87 100644 (file)
 :100000000C94E6000C9403010C9403010C9403017E\r
 :100010000C9403010C9403010C9403010C94030150\r
-:100020000C9403010C9453040C9403010C940301ED\r
-:100030000C9403010C943E050C9403010C940301F1\r
+:100020000C9403010C9450040C9403010C940301F0\r
+:100030000C9403010C942B050C9403010C94030104\r
 :100040000C9403010C9403010C9403010C9405011E\r
-:100050000C940301ED02F702F002F702F302F7023B\r
-:10006000F502F70234043404340434043404340450\r
-:10007000F9021103FE021103030311030803110324\r
-:1000800034043404340434043404340434043404B0\r
-:10009000140319031E03230328032D03320337031C\r
-:1000A0003404340434043404340434043404340490\r
-:1000B0003C03410346034B03500355035A036003BB\r
-:1000C000650376037F0388038B03A003A9031C0445\r
-:1000D000B203BB03C403CD03D603DF03E803F1037C\r
-:1000E000FA0303040F041C043404340434043404F9\r
-:1000F0003404340434043404340434043404340440\r
-:10010000340434043404340434043404340434042F\r
-:10011000340434043404340434043404340434041F\r
-:10012000340434043404340434043404340434040F\r
-:1001300034043404340434043404340434043404FF\r
-:1001400034043404340434043404340434043404EF\r
-:1001500034043404340434043404340434043404DF\r
-:1001600034043404340434043404340434043404CF\r
-:1001700034043404340434043404340434043404BF\r
-:1001800034043404340434043404340434043404AF\r
-:1001900025042A042F0405A84CCDB2D44EB9383614\r
+:100050000C940301EA02F402ED02F402F002F4024D\r
+:10006000F202F40231043104310431043104310468\r
+:10007000F6020E03FB020E0300030E0305030E033C\r
+:1000800031043104310431043104310431043104C8\r
+:10009000110316031B03200325032A032F03340334\r
+:1000A00031043104310431043104310431043104A8\r
+:1000B00039033E03430348034D03520357035D03D3\r
+:1000C000620373037C03850388039D03A60319045D\r
+:1000D000AF03B803C103CA03D303DC03E503EE0394\r
+:1000E000F70300040C041904310431043104310411\r
+:1000F0003104310431043104310431043104310458\r
+:100100003104310431043104310431043104310447\r
+:100110003104310431043104310431043104310437\r
+:100120003104310431043104310431043104310427\r
+:100130003104310431043104310431043104310417\r
+:100140003104310431043104310431043104310407\r
+:1001500031043104310431043104310431043104F7\r
+:1001600031043104310431043104310431043104E7\r
+:1001700031043104310431043104310431043104D7\r
+:1001800031043104310431043104310431043104C7\r
+:10019000220427042C0405A84CCDB2D44EB938361D\r
 :1001A000A9020C50B9918688083CA6AAAA2ABE00CA\r
 :1001B0000000803F45464765666700202B2D2E30A6\r
 :1001C00031323334353637383968000011241FBED8\r
-:1001D000CFE5D8E0DEBFCDBF10E0A0E6B0E0EEE4B2\r
-:1001E000F7E202C005900D92AA37B107D9F721E0D6\r
+:1001D000CFE5D8E0DEBFCDBF10E0A0E6B0E0E6E7B7\r
+:1001E000F6E202C005900D92AA37B107D9F721E0D7\r
 :1001F000AAE7B0E001C01D92A836B207E1F70E945D\r
-:1002000034060C94A5130C9400001F920F920FB6A5\r
+:1002000020060C9439130C9400001F920F920FB625\r
 :100210000F9211242F933F934F935F936F937F938C\r
 :100220008F939F93AF93BF93EF93FF9381B1887F99\r
-:10023000803881F040F4803609F01FC385EC86BF1A\r
-:100240001092E9001FC3883A09F4B9C1883B09F448\r
-:10025000B6C113C38091E9008A3209F44BC108F09A\r
+:10023000803881F040F4803609F01CC385EC86BF1D\r
+:100240001092E9001CC3883A09F4B7C1883B09F44D\r
+:10025000B4C110C38091E9008A3209F449C108F0A1\r
 :1002600047C0803209F402C138F5843009F4C1C0B6\r
 :1002700060F4813009F4FAC008F4A6C0823009F4B1\r
-:10028000ACC0833009F4F2C0F0C2863009F4BDC0BE\r
-:1002900008F4ECC0873009F4E9C0883009F0E5C201\r
+:10028000ACC0833009F4F2C0EDC2863009F4BDC0C1\r
+:1002900008F4ECC0873009F4E9C0883009F0E2C204\r
 :1002A00083B12091A80090E0922B9093E10080937D\r
-:1002B000E0001092D400D1C2853209F4CAC060F4C3\r
+:1002B000E0001092D400CEC2853209F4CAC060F4C6\r
 :1002C000823209F4D3C008F4ACC0833209F4B6C05A\r
-:1002D000843209F4CBC0C9C2873209F4CBC008F418\r
-:1002E000C5C0883209F401C1893209F403C1BDC215\r
-:1002F000843509F416C1E8F58F3209F4C8C060F4FA\r
-:100300008C3209F4F2C008F4C2C08D3209F4F2C094\r
-:100310008E3209F4EFC0A9C2813509F4EBC020F494\r
-:10032000803509F4E2C0A1C2823509F4E3C0833507\r
-:1003300009F09BC223B18091A4009091A500A091E7\r
+:1002D000843209F4CBC0C6C2873209F4CBC008F41B\r
+:1002E000C5C0883209F4FFC0893209F401C1BAC21D\r
+:1002F000843509F414C1E8F58F3209F4C8C060F4FC\r
+:100300008C3209F4F0C008F4C2C08D3209F4F0C098\r
+:100310008E3209F4EDC0A6C2813509F4E9C020F49B\r
+:10032000803509F4E0C09EC2823509F4E1C083350E\r
+:1003300009F098C223B18091A4009091A500A091EA\r
 :10034000A600B091A700BA2FA92F982F8827822B3B\r
 :100350008093A4009093A500A093A600B093A7005B\r
 :100360008093EA009093EB00A093EC00B093ED0033\r
-:1003700074C2813909F410C178F4863509F4D6C005\r
-:1003800008F4D4C0873509F4E8C0803909F06DC29B\r
-:1003900083B18093690061C2843909F405C150F4C6\r
-:1003A000823909F4FDC0833909F05FC283B18093BB\r
-:1003B000D20053C2853909F4FBC08F3F09F055C202\r
-:1003C00083B18093E80051C283B18093E9008091AA\r
-:1003D000E90081508093E90040C283B12091A800D8\r
+:1003700071C2813909F40EC178F4863509F4D4C00C\r
+:1003800008F4D2C0873509F4E6C0803909F06AC2A2\r
+:1003900083B1809369005EC2843909F403C150F4CB\r
+:1003A000823909F4FBC0833909F05CC283B18093C0\r
+:1003B000D20050C2853909F4F9C08F3F09F052C20A\r
+:1003C00083B18093E8004EC283B18093E9008091AD\r
+:1003D000E90081508093E9003DC283B12091A800DB\r
 :1003E00090E0922B9093E7008093E6001092D70064\r
-:1003F00034C283B12091A80090E0922B9093E50045\r
-:100400008093E4001092D60028C283B12091A80006\r
+:1003F00031C283B12091A80090E0922B9093E50048\r
+:100400008093E4001092D60025C283B12091A80009\r
 :1004100090E0922B9093E3008093E2001092D5003D\r
-:100420001CC283B12091A80090E0922B9093D10040\r
-:100430008093D00081E08093D7000FC283B12091D8\r
+:1004200019C283B12091A80090E0922B9093D10043\r
+:100430008093D00081E08093D7000CC283B12091DB\r
 :10044000A80090E0922B9093CF008093CE0081E0A3\r
-:1004500049C083B12091A80090E0922B9093CD00E9\r
-:100460008093CC0081E08093D500F7C183B1809365\r
-:10047000A800F3C183B12091A80090E0922B909343\r
-:10048000CB008093CA0081E08093D400E6C123B101\r
+:1004500047C083B12091A80090E0922B9093CD00EB\r
+:100460008093CC0081E08093D500F4C183B1809368\r
+:10047000A800F0C183B12091A80090E0922B909346\r
+:10048000CB008093CA0081E08093D400E3C123B104\r
 :100490008091A4009091A500A091A600B091A70022\r
-:1004A000BA2FA92F982F8827BC01CD01622B60930A\r
-:1004B000A4007093A5008093A6009093A70023E367\r
-:1004C0003BE542E855E40E94FD0F0E94D10E709377\r
-:1004D000D1006093D0007093CF006093CE0081E094\r
-:1004E0008093D7008093D600B8C183B190E0A0E09C\r
-:1004F000B0E00EC023B18091A4009091A500A0911E\r
-:10050000A600B091A700BA2FA92F982F8827822B79\r
-:100510008093A4009093A500A093A600B093A70099\r
-:100520009CC183B190E0A0E0B0E00EC023B1809107\r
-:10053000A0009091A100A091A200B091A300BA2FB9\r
-:10054000A92F982F8827822B8093A0009093A10039\r
-:10055000A093A200B093A30080C123B18091A0001A\r
-:100560009091A100A091A200B091A300BA2FA92F51\r
-:10057000982F8827822B8093A0009093A100A093AE\r
-:10058000A200B093A3008093EE009093EF00A0939D\r
-:10059000F000B093F1000FC083B1809368005DC19B\r
-:1005A00083B18093D30059C183B18093AB0003C062\r
-:1005B00083B18093AA0081E08093F2004EC1E09164\r
-:1005C000E9008E2F90E0FC013297E13AF10508F046\r
-:1005D0004BC1E65DFF4F0C94DA108AB59BB53CC168\r
-:1005E00088B599B539C183B537C18CB735C113B852\r
-:1005F00034C18091DE009091DF000EC08091DC005C\r
-:100600009091DD0009C08091DA009091DB0004C078\r
-:100610008091D8009091D90090939F0080939E0084\r
-:100620004DC080919E0018C18091D0009091D10062\r
-:1006300045C08091D0009091D1000EC18091CE0034\r
-:100640009091CF003BC08091CE009091CF0004C12B\r
-:100650008091CC009091CD0031C08091CC009091E0\r
-:10066000CD00FAC08091CA009091CB0027C0809144\r
-:10067000CA009091CB00F0C08091C7009091C80053\r
-:100680001DC08091C7009091C800E6C08091C50050\r
-:100690009091C60013C08091C5009091C600DCC047\r
-:1006A0008091C3009091C40009C08091C3009091D3\r
-:1006B000C400D2C08091C1009091C20093B9CDC056\r
-:1006C0008091C1009091C200C7C08091B10090910B\r
-:1006D000B200A091B300B091B4008093A4009093B5\r
-:1006E000A500A093A600B093A70025C08091A40008\r
-:1006F0009091A500A091A600B091A7008CC0809118\r
-:10070000A4009091A500A091A600B091A7008FC071\r
-:100710008091A400A1C08091AD009091AE00A09105\r
-:10072000AF00B091B0008093A0009093A100A0937F\r
-:10073000A200B093A3008B2F9927AA27BB278CC0B8\r
-:100740008091A0009091A100A091A200B091A3007F\r
-:1007500062C08091A0009091A100A091A200B091F0\r
-:10076000A30065C08091BD009091BE00A091BF0024\r
-:10077000B091C000E0CF8091BD009091BE00A091EB\r
-:10078000BF00B091C00047C08091BD009091BE00F5\r
-:10079000A091BF00B091C0004AC08091BD0090916F\r
-:1007A000BE00A091BF00B091C00056C08091B900BA\r
-:1007B0009091BA00A091BB00B091BC00BCCF8091D9\r
-:1007C000B9009091BA00A091BB00B091BC0023C0C9\r
-:1007D0008091B9009091BA00A091BB00B091BC008B\r
-:1007E00026C08091B9009091BA00A091BB00B09151\r
-:1007F000BC0032C08091B5009091B600A091B700C6\r
-:10080000B091B80098CF8091B5009091B600A091BA\r
-:10081000B700B091B800CD01AA27BB271DC08091B9\r
-:10082000B5009091B600A091B700B091B800892FA3\r
-:100830009A2FAB2FBB2710C08091B5009091B600C6\r
-:10084000A091B700B091B80007C084B78F7083B98A\r
-:1008500014BE03C08091A90083B985EC07C08091C4\r
-:10086000AC0083B985EC86BF13B885E886BF80915C\r
-:10087000E9008F5F8093E90005C086B78B7E86BF55\r
-:1008800085EC86BFFF91EF91BF91AF919F918F91C2\r
-:100890007F916F915F914F913F912F910F900FBE7C\r
-:1008A0000F901F9018951F920F920FB60F92112460\r
-:1008B0002F933F934F935F936F937F938F939F9368\r
-:1008C00089B380FF02C093E001C090E081FF02C0C5\r
-:1008D00081E0982780919D00891B80FF22C0909322\r
-:1008E0009D0020916900982F9270222351F0209151\r
-:1008F000DE003091DF00892F90E00197820F931F77\r
-:100900000CC04091DE005091DF0021E030E0B901E1\r
-:10091000691B7109CB01840F951F9093DF008093B1\r
-:10092000DE0089B382958F7080FF02C093E001C022\r
-:1009300090E081FF02C081E0982780919C00891B94\r
-:1009400080FF22C090939C0020916800982F9270A5\r
-:10095000222369F04091DC005091DD0021E030E07D\r
-:10096000B901691B7109CB01840F951F09C0209142\r
-:10097000DC003091DD00892F90E00197820F931FFA\r
-:100980009093DD008093DC0089B38695869580FF87\r
-:1009900002C093E001C090E081FF02C081E098278F\r
-:1009A00080919B00891B80FF22C090939B00209127\r
-:1009B000D300982F9270222369F04091DA00509171\r
-:1009C000DB0021E030E0B901691B7109CB01840F24\r
-:1009D000951F09C02091DA003091DB00892F90E04B\r
-:1009E0000197820F931F9093DB008093DA0089B305\r
-:1009F000829586958695837080FF02C093E001C042\r
-:100A000090E0827011F081E0982780919A00891B14\r
-:100A100080FF22C090939A002091D200982F92706C\r
-:100A2000222351F02091D8003091D900892F90E0F5\r
-:100A30000197820F931F0CC04091D8005091D900AC\r
-:100A400021E030E0B901691B7109CB01840F951FCA\r
-:100A50009093D9008093D8008091C9008F5F8093D4\r
-:100A6000C9009F918F917F916F915F914F913F91BD\r
-:100A70002F910F900FBE0F901F9018951F920F92FD\r
-:100A80000FB60F9211248F939F93EF93FF935F9B69\r
-:100A900016C0E091F500F091F6008CB1808381E002\r
-:100AA000EA35F80730F43196F093F600E093F5005C\r
-:100AB00006C087EF90E09093F6008093F500FF91D9\r
-:100AC000EF919F918F910F900FBE0F901F901895EF\r
-:100AD0009C018AB188618AB9579A80B5866080BDC9\r
-:100AE000C901A0E0B0E09C01AD0184E0220F331FFA\r
-:100AF000441F551F8A95D1F760E079E08DE390E0BF\r
-:100B00000E94BB10DA01C9010197A109B109892F1F\r
-:100B10009A2FAB2FBB27A7FDBA9580BD215029B9CD\r
-:100B200087EF90E09093F4008093F3009093F600A9\r
-:100B30008093F50008955D9BFECFFC0180818CB908\r
-:100B40000895CF93DF931F92CDB7DEB78983CE018F\r
-:100B500001960E949B0580E090E00F90DF91CF917D\r
-:100B60000895CF93DF93EC01CE012196FC01208103\r
-:100B7000222319F00E949B05F7CFDF91CF910895B2\r
-:100B80005F9BFECF8CB190E008950C94C00565EC9E\r
-:100B900075E081EA95E00C944411CF93DF93FC015A\r
-:100BA000E253FF4FA081B181EC01C453DF4F288194\r
-:100BB0003981A217B307A1F05D9B12C02C912CB90B\r
-:100BC00020813181AC0145535F4F2417350718F45C\r
-:100BD0002F5F3F4F03C09C0128593F4F3183208333\r
-:100BE000E091F300F091F4002091F5003091F600CF\r
-:100BF0002E173F07B1F1EC01CC59DF4FA881B98125\r
-:100C000020812C93688179819C012B523F4FD9011F\r
-:100C10003C91DB012C91321307C0AC014C525F4F69\r
-:100C2000DA012C912F5F2C939C012D593F4F6217B5\r
-:100C3000730728F4DB011196B983A88302C0998356\r
-:100C40008883B1E0EA35FB0730F43196F093F40085\r
-:100C5000E093F30006C087EF90E09093F400809358\r
-:100C6000F300DF91CF910895CF93DF93CDB7DEB737\r
-:100C70006E970FB6F894DEBF0FBECDBF88E087BB7E\r
-:100C80008CEF84BB8CEB81BB87E088BB80E482BBAC\r
-:100C90001092E80080E895E20E9468050E94C7056E\r
-:100CA00080E582B986B78B7E86BF85EC86BF81EAF8\r
-:100CB0008FBD89E08EBD1BBC1ABC19BC18BC89E66F\r
-:100CC00085BD13BC83BF1CBE80E790E00E94C711A6\r
-:100CD00085B78F7885BF84E089BF789464E6262E37\r
-:100CE000312C8091E9008F3F41F48091E800853AF2\r
-:100CF00021F4F894E0E0F8E109958091F20088236E\r
-:100D000009F4E3C0F8948090EA009090EB00A09082\r
-:100D1000EC00B090ED006091EE007091EF008091DA\r
-:100D2000F0009091F1001092F20078942BED3FE0EA\r
-:100D300049E450E40E94FD0F27EB3BE04DEB5EE3FE\r
-:100D40000E94FD0F20E030E040E05FE30E94FD0FD5\r
-:100D5000A50194010E94E90D6B017C01A50194019C\r
-:100D6000C501B4010E94E90DA70196010E94E80D9A\r
-:100D700023E33BE542E855E40E94FD0F4B015C0193\r
-:100D800023E33BE542E855E4C701B6010E94FD0FAD\r
-:100D90006B017C018091AA008823A9F18091AA00AF\r
-:100DA000B101681B7109072E000C880B990B0E947A\r
-:100DB000090F9B01AC01C501B4010E94FD0F20E0A9\r
-:100DC00030E048EC52E40E945F0E0E94D10E709316\r
-:100DD000D1006093D0008091AA00B101681B710915\r
-:100DE000072E000C880B990B0E94090F9B01AC0188\r
-:100DF000C701B6010E94FD0F20E030E048EC52E44C\r
-:100E00000E945F0E0AC0C501B4010E94D10E70930A\r
-:100E1000D1006093D000C701B6010E94D10E70933B\r
-:100E2000CB006093CA008091AB008823A9F1809128\r
-:100E3000AB00B101681B7109072E000C880B990BE0\r
-:100E40000E94090F9B01AC01C501B4010E94FD0F76\r
-:100E500020E030E048EC52E40E945F0E0E94D10E88\r
-:100E60007093CF006093CE008091AB00B101681BFE\r
-:100E70007109072E000C880B990B0E94090F9B012A\r
-:100E8000AC01C701B6010E94FD0F20E030E048EC44\r
-:100E900052E40E945F0E0AC0C501B4010E94D10E47\r
-:100EA0007093CF006093CE00C701B6010E94D10EAF\r
-:100EB0007093CD006093CC00F1E0F093D700F093F5\r
-:100EC000D600F093D500F093D4008091C9008C39FE\r
-:100ED00008F450C51092C900F8942091DE003091BA\r
-:100EE000DF003A8329834091DC005091DD005C8370\r
-:100EF0004B838091DA009091DB009E838D83E0919B\r
-:100F0000D800F091D900F887EF8378948091980009\r
-:100F1000909199005901A81AB90A80919600909170\r
-:100F200097008A01081B190B8091940090919500FD\r
-:100F3000ED80FE80E81AF90A80919200909193006A\r
-:100F40006F01C81AD90AB5010B2C000C880B990B3C\r
-:100F50000E94090F2AE037ED43E25CE30E945F0E36\r
-:100F60000E94D10E69877A878B879C87B801012EF2\r
-:100F7000000C880B990B0E94090F2AE037ED43E221\r
-:100F80005CE30E945F0E0E94D10E6D877E878F8783\r
-:100F9000988BB7010F2C000C880B990B0E94090F3E\r
-:100FA0002AE037ED43E25CE30E945F0E0E94D10E1F\r
-:100FB000698B7A8B8B8B9C8BB6010D2C000C880B6C\r
-:100FC000990B0E94090F2AE037ED43E25CE30E948F\r
-:100FD0005F0E0E94D10E6D8B7E8B8F8B988FB5012B\r
-:100FE000600F711F072E000C880B990B0E94090FD0\r
-:100FF00023E33BE542E056E40E945F0E4B015C01B7\r
-:10100000B7016C0D7D1D072E000C880B990B0E94FB\r
-:10101000090F23E33BE542E056E40E945F0E2B01FB\r
-:101020003C01C090B500D090B600E090B700F090C1\r
-:10103000B800A50194010E94E80D27EB3BE04DEBC1\r
-:101040005EE30E945F0E9B01AC01C701B6010E94E6\r
-:10105000E90D6B017C012BED3FE049EC50E40E946F\r
-:10106000F80F18164CF42BED3FE049EC50E4C701A3\r
-:10107000B6010E94E80D12C02BED3FE049EC50ECA8\r
-:10108000C701B6010E94550E87FF0AC02BED3FE055\r
-:1010900049EC50E4C701B6010E94E90D6B017C01E7\r
-:1010A000A3019201C501B4010E94E90D20E030E0E6\r
-:1010B00040E05FE30E94FD0F4B015C014090BD00EA\r
-:1010C0005090BE006090BF007090C000C701B60194\r
-:1010D0000E945A0EA50194010E94FD0F9B01AC01D4\r
-:1010E000C301B2010E94E90D698F7A8F8B8F9C8FAB\r
-:1010F0004090B9005090BA006090BB007090BC0066\r
-:10110000C701B6010E946A10A50194010E94FD0F5B\r
-:101110009B01AC01C301B2010E94E90D2B013C010E\r
-:101120000D851E8529853A85020F131F17FF02C002\r
-:101130000F5F1F4F159507954D895E8989899A899B\r
-:10114000480F591F57FF02C04F5F5F4FFA01F595D7\r
-:10115000E795FE8FED8FBF01600F711F072E000C0A\r
-:10116000880B990B0E94090F23E33BE542E056E40C\r
-:101170000E945F0E4B015C016D8D7E8D601B710BBB\r
-:10118000072E000C880B990B0E94090F29E935E303\r
-:1011900047E955E40E945F0EF894C092B500D092E2\r
-:1011A000B600E092B700F092B800298D3A8D4B8DD1\r
-:1011B0005C8D2093BD003093BE004093BF005093E0\r
-:1011C000C0004092B9005092BA006092BB00709289\r
-:1011D000BC0049855A855093C8004093C700ED85EF\r
-:1011E000FE85F093C600E093C50029893A893093C3\r
-:1011F000C4002093C3004D895E895093C200409380\r
-:10120000C1008092B1009092B200A092B300B0925F\r
-:10121000B4006093AD007093AE008093AF009093E4\r
-:10122000B000789489819A81909399008093980076\r
-:10123000EB81FC81F0939700E09396002D813E8135\r
-:1012400030939500209394004F81588550939300DC\r
-:10125000409392008091D700813009F096C0809130\r
-:10126000D0009091D100892B89F41092E700109260\r
-:10127000E600109291001092900010928C00109253\r
-:101280008D0010928E0010928F007FC02091D000B0\r
-:101290003091D1008091C7009091C8008901081B4E\r
-:1012A000190BB801012E000C880B990BC0908C0013\r
-:1012B000D0908D00E0908E00F0908F00C60ED71E6B\r
-:1012C000E81EF91EC0928C00D0928D00E0928E0034\r
-:1012D000F0928F000E94090F2CEE31E548E35DE3A8\r
-:1012E0000E94FD0F4B015C01C701B6010E94090F6E\r
-:1012F0002EE830E44CEB5CE30E94FD0F9B01AC0157\r
-:10130000C501B4010E94E90D6B017C018091900040\r
-:1013100090919100B801681B790B072E000C880B87\r
-:10132000990B0E94090F2AE037ED43E25DE30E942A\r
-:10133000FD0F9B01AC01C701B6010E94E90D0E949F\r
-:10134000D10E7093E7006093E60010939100009334\r
-:1013500090008091E6009091E7008F3F910541F069\r
-:101360003CF08FEF90E09093E7008093E6000DC093\r
-:101370008091E6009091E70081309F4F34F421E0A6\r
-:101380003FEF3093E7002093E6008091D600813054\r
-:1013900009F096C08091CE009091CF00892B89F4FE\r
-:1013A0001092E5001092E40010928B0010928A00D7\r
-:1013B0001092860010928700109288001092890087\r
-:1013C0007FC02091CE003091CF008091C5009091D8\r
-:1013D000C6008901081B190BB801012E000C880BEF\r
-:1013E000990BC0908600D0908700E0908800F09024\r
-:1013F0008900C60ED71EE81EF91EC0928600D09244\r
-:101400008700E0928800F09289000E94090F2CEE7C\r
-:1014100031E548E35DE30E94FD0F4B015C01C7012C\r
-:10142000B6010E94090F2EE830E44CEB5CE30E9409\r
-:10143000FD0F9B01AC01C501B4010E94E90D6B01D8\r
-:101440007C0180918A0090918B00B801681B790B18\r
-:10145000072E000C880B990B0E94090F2AE037ED2C\r
-:1014600043E25DE30E94FD0F9B01AC01C701B601A1\r
-:101470000E94E90D0E94D10E7093E5006093E40094\r
-:1014800010938B0000938A008091E4009091E50016\r
-:101490008F3F910541F03CF04FEF50E05093E50055\r
-:1014A0004093E4000DC08091E4009091E50081300C\r
-:1014B0009F4F34F481E09FEF9093E5008093E40028\r
-:1014C0008091D500813009F096C08091CC00909138\r
-:1014D000CD00892B89F41092E3001092E200109263\r
-:1014E000850010928400109280001092810010926A\r
-:1014F0008200109283007FC02091CC003091CD00FB\r
-:101500008091C3009091C4008901081B190BB80198\r
-:10151000012E000C880B990BC0908000D0908100A8\r
-:10152000E0908200F0908300C60ED71EE81EF91EE0\r
-:10153000C0928000D0928100E0928200F0928300FD\r
-:101540000E94090F2CEE31E548E35DE30E94FD0F98\r
-:101550004B015C01C701B6010E94090F2EE830E47F\r
-:101560004CEB5CE30E94FD0F9B01AC01C501B40193\r
-:101570000E94E90D6B017C018091840090918500AF\r
-:10158000B801681B790B072E000C880B990B0E9481\r
-:10159000090F2AE037ED43E25DE30E94FD0F9B0156\r
-:1015A000AC01C701B6010E94E90D0E94D10E7093F3\r
-:1015B000E3006093E2001093850000938400809123\r
-:1015C000E2009091E3008F3F910541F03CF0EFEF96\r
-:1015D000F0E0F093E300E093E2000DC08091E200C0\r
-:1015E0009091E30081309F4F34F421E03FEF30933E\r
-:1015F000E3002093E2008091D400813009F096C08E\r
-:101600008091CA009091CB00892B89F41092E1005F\r
-:101610001092E00010927F0010927E0010927A00EB\r
-:1016200010927B0010927C0010927D007FC0209170\r
-:10163000CA003091CB008091C1009091C200890115\r
-:10164000081B190BB801012E000C880B990BC090D8\r
-:101650007A00D0907B00E0907C00F0907D00C60E78\r
-:10166000D71EE81EF91EC0927A00D0927B00E0924D\r
-:101670007C00F0927D000E94090F2CEE31E548E3DA\r
-:101680005DE30E94FD0F4B015C01C701B6010E94A2\r
-:10169000090F2EE830E44CEB5CE30E94FD0F9B0148\r
-:1016A000AC01C501B4010E94E90D6B017C01809180\r
-:1016B0007E0090917F00B801681B790B072E000C0B\r
-:1016C000880B990B0E94090F2AE037ED43E25DE396\r
-:1016D0000E94FD0F9B01AC01C701B6010E94E90DFC\r
-:1016E0000E94D10E7093E1006093E00010937F00A0\r
-:1016F00000937E008091E0009091E1008F3F910582\r
-:1017000041F03CF04FEF50E05093E1004093E00097\r
-:101710000DC08091E0009091E10081309F4F34F442\r
-:1017200081E09FEF9093E1008093E00090B326B3B7\r
-:101730009074892F90E033E0959587953A95E1F77D\r
-:10174000922F9770892B80958F708093A90080913C\r
-:10175000E6009091E700209166003091670028171D\r
-:101760003907C9F18091E6009091E700892B19F4BF\r
-:1017700085B3837F1CC080916900811107C080916F\r
-:10178000E6009091E7001816190654F08091690060\r
-:10179000882351F08091E6009091E70097FF04C004\r
-:1017A00085B3877F846003C085B38B7F886085BBEA\r
-:1017B0008091E6009091E700909367008093660027\r
-:1017C0008091E6009091E70097FF03C09195819585\r
-:1017D00091099BBD8ABD8091E4009091E500209124\r
-:1017E00064003091650028173907C9F18091E40041\r
-:1017F0009091E500892B19F485B38F7C1CC08091F2\r
-:101800006800811107C08091E4009091E5001816EE\r
-:10181000190654F080916800882351F08091E4000B\r
-:101820009091E50097FF04C085B38F7D806103C070\r
-:1018300085B38F7E806285BB8091E4009091E50046\r
-:1018400090936500809364008091E4009091E5009E\r
-:1018500097FF03C091958195910999BD88BD8091AD\r
-:10186000E2009091E300209162003091630028171C\r
-:101870003907C1F18091E2009091E300892B19F4BE\r
-:1018800085B38F731CC08091D300811107C08091F4\r
-:10189000E2009091E3001816190654F08091D300ED\r
-:1018A000882351F08091E2009091E30097FF04C0FB\r
-:1018B00085B38F77806403C085B38F7B806885BBD9\r
-:1018C0008091E2009091E300909363008093620026\r
-:1018D0008091E2009091E30097FF03C0919581957C\r
-:1018E000910983BD8091E0009091E100209160001A\r
-:1018F0003091610028173907C1F18091E000909183\r
-:10190000E100892B19F482B3837F1CC08091D2003F\r
-:10191000811107C08091E0009091E100181619062E\r
-:1019200054F08091D200882351F08091E000909192\r
-:10193000E10097FF04C082B3877F846003C082B355\r
-:101940008B7F886082BB8091E0009091E100909352\r
-:101950006100809360008091E0009091E10097FF2A\r
-:1019600003C09195819591098CBF8091AC008F5FE8\r
-:101970008093AC0085B7806885BF889585B78F77E1\r
-:1019800085BFAFC9ACE0B0E0E8ECFCE00C94E4103B\r
-:101990006C015B017A01FC0117821682838181FF51\r
-:1019A0000EC1CE0101964C01F6010381F50103FD44\r
-:1019B000159103FF11915F01112309F4FCC0153249\r
-:1019C00049F403FD159103FF11915F01153211F0E8\r
-:1019D00020E01BC0B601812F90E00E948F113701DB\r
-:1019E0007301E2CF112309F4E6C0612F70E08BEBA5\r
-:1019F00091E02C870E9439112C85892B49F0F50143\r
-:101A000003FD159103FF11915F0127FFEBCF09C083\r
-:101A1000133229F01C3609F0D5C02068F0CF20E140\r
-:101A2000EECF022F112309F4C6C0612F70E084EBC2\r
-:101A300091E02C870E9439112C85892B41F03701C8\r
-:101A4000F4E06F0E711CB6018FE390E011C0133605\r
-:101A500039F0133781F0133519F5022F01600BC0EF\r
-:101A6000370182E0680E711CB601F7018081918117\r
-:101A70000E948F11B5CF3701F2E06F0E711CF70194\r
-:101A8000E080F180F70100FD859100FF81917F01E9\r
-:101A9000882309F4A5CFB60190E00E948F11F2CF00\r
-:101AA000143611F0193629F5370127FF09C0F4E083\r
-:101AB0006F0E711CF70160817181828193810AC070\r
-:101AC000F2E06F0E711CF70160817181072E000C2E\r
-:101AD000880B990B022F0F7E97FF08C09095809579\r
-:101AE000709561957F4F8F4F9F4F00642AE030E0E3\r
-:101AF00033C0103799F040F41835B1F01F3609F0B3\r
-:101B00005AC028E030E014C0153719F0183741F0FA\r
-:101B100052C0022F0F7E2AE030E00AC0022F00617F\r
-:101B2000046220E130E004C0022F046020E132E0D2\r
-:101B3000370107FF09C0F4E06F0E711CF7016081E7\r
-:101B400071818281938108C0F2E06F0E711CF701F0\r
-:101B50006081718180E090E0A4010E94F711182F4C\r
-:101B6000181906FF05C0B6018DE290E00E948F11A2\r
-:101B700004FF15C0FE01E10FF11D8081803379F073\r
-:101B8000B60180E390E00E948F1102FF08C000724E\r
-:101B9000802F90E0B601885A9F4F0E948F111150FC\r
-:101BA000F401E10FF11D8081B60190E00E948F11D8\r
-:101BB0001111F5CF15CFF6018681978105C08FEF02\r
-:101BC0009FEF02C0022F31CF2C96EEE00C94001153\r
-:101BD0005058BB27AA270E94000E0C94AA0F0E94FF\r
-:101BE000710F38F00E94780F20F039F49F3F19F4FC\r
-:101BF00026F40C946E0F0EF4E095E7FB0C94680F3E\r
-:101C0000E92F0E94CF0F58F3BA17620773078407B2\r
-:101C1000950720F079F4A6F50C94F10F0EF4E095F9\r
-:101C20000B2EBA2FA02D0B01B90190010C01CA0196\r
-:101C3000A0011124FF27591B99F0593F50F4503E41\r
-:101C400068F11A16F040A22F232F342F4427585F33\r
-:101C5000F3CF469537952795A795F0405395C9F74B\r
-:101C60007EF41F16BA0B620B730B840BBAF0915003\r
-:101C7000A1F0FF0FBB1F661F771F881FC2F70EC0A2\r
-:101C8000BA0F621F731F841F48F487957795679575\r
-:101C9000B795F7959E3F08F0B0CF9395880F08F061\r
-:101CA0009927EE0F9795879508950E94440F08F4A1\r
-:101CB00081E008950E94810FE3950C94BB0F0E9470\r
-:101CC000730E0C94AA0F0E94780F58F00E94710FA7\r
-:101CD00040F029F45F3F29F00C94680F51110C94E7\r
-:101CE000F20F0C946E0F0E94CF0F68F39923B1F39B\r
-:101CF000552391F3951B550BBB27AA276217730732\r
-:101D0000840738F09F5F5F4F220F331F441FAA1FC5\r
-:101D1000A9F335D00E2E3AF0E0E832D09150504081\r
-:101D2000E695001CCAF72BD0FE2F29D0660F771F2F\r
-:101D3000881FBB1F261737074807AB07B0E809F015\r
-:101D4000BB0B802DBF01FF2793585F4F3AF09E3F9A\r
-:101D5000510578F00C94680F0C94F20F5F3FE4F398\r
-:101D6000983ED4F3869577956795B795F7959F5FDD\r
-:101D7000C9F7880F911D9695879597F90895E1E029\r
-:101D8000660F771F881FBB1F621773078407BA0788\r
-:101D900020F0621B730B840BBA0BEE1F88F7E095E3\r
-:101DA00008950E94D80E6894B1110C94F20F089512\r
-:101DB0000E94D70F88F09F5798F0B92F9927B751F5\r
-:101DC000B0F0E1F0660F771F881F991F1AF0BA95DF\r
-:101DD000C9F714C0B13091F00E94F10FB1E008953D\r
-:101DE0000C94F10F672F782F8827B85F39F0B93F2F\r
-:101DF000CCF3869577956795B395D9F73EF4909592\r
-:101E00008095709561957F4F8F4F9F4F0895E8940F\r
-:101E100009C097FB3EF490958095709561957F4F32\r
-:101E20008F4F9F4F9923A9F0F92F96E9BB279395E0\r
-:101E3000F695879577956795B795F111F8CFFAF4F0\r
-:101E4000BB0F11F460FF1BC06F5F7F4F8F4F9F4F21\r
-:101E500016C0882311F096E911C0772321F09EE87F\r
-:101E6000872F762F05C0662371F096E8862F70E0E5\r
-:101E700060E02AF09A95660F771F881FDAF7880FBF\r
-:101E80009695879597F90895990F0008550FAA0B15\r
-:101E9000E0E8FEEF16161706E807F907C0F012167D\r
-:101EA0001306E407F50798F0621B730B840B950B80\r
-:101EB00039F40A2661F0232B242B252B21F40895D5\r
-:101EC0000A2609F4A140A6958FEF811D811D089572\r
-:101ED00097F99F6780E870E060E008959FEF80ECDD\r
-:101EE000089500240A941616170618060906089580\r
-:101EF00000240A94121613061406050608950C947D\r
-:101F00006E0F0E94D70FD8F3E894E0E0BB279F57ED\r
-:101F1000F0F02AED3FE049EC06C0EE0FBB0F661F64\r
-:101F2000771F881F28F0B23A62077307840728F0EA\r
-:101F3000B25A620B730B840BE3959A9572F7803853\r
-:101F400030F49A95BB0F661F771F881FD2F7904811\r
-:101F50000C947410092E0394000C11F4882352F091\r
-:101F6000BB0F40F4BF2B11F460FF04C06F5F7F4FC5\r
-:101F70008F4F9F4F0895EF93E0FF07C0A2EA2AED2D\r
-:101F80003FE049EC5FEB0E94000E0E94AA0F0F9009\r
-:101F9000039401FC9058E6E9F1E00C94801057FDA1\r
-:101FA0009058440F551F59F05F3F71F04795880FC7\r
-:101FB00097FB991F61F09F3F79F08795089512165E\r
-:101FC00013061406551FF2CF4695F1DF08C016160A\r
-:101FD00017061806991FF1CF8695710561050894BB\r
-:101FE0000895E894BB2766277727CB0197F90895D2\r
-:101FF0000E94440F08F48FEF08950E9410100C9473\r
-:10200000AA0F0E94710F38F00E94780F20F09523DC\r
-:1020100011F00C94680F0C946E0F11240C94F20FB5\r
-:102020000E94CF0F70F3959FC1F3950F50E0551F9D\r
-:10203000629FF001729FBB27F00DB11D639FAA271D\r
-:10204000F00DB11DAA1F649F6627B00DA11D661F6C\r
-:10205000829F2227B00DA11D621F739FB00DA11D8D\r
-:10206000621F839FA00D611D221F749F3327A00D47\r
-:10207000611D231F849F600D211D822F762F6A2FE3\r
-:1020800011249F5750409AF0F1F088234AF0EE0F48\r
-:10209000FF1FBB1F661F771F881F91505040A9F775\r
-:1020A0009E3F510580F00C94680F0C94F20F5F3F37\r
-:1020B000E4F3983ED4F3869577956795B795F795B1\r
-:1020C000E7959F5FC1F7FE2B880F911D9695879529\r
-:1020D00097F908959F930E94810F0F9007FCEE5F80\r
-:1020E0000C94BB0F9F3F31F0915020F4879577956A\r
-:1020F0006795B795880F911D9695879597F90895DF\r
-:102100009F938F937F936F93FF93EF939B01AC010A\r
-:102110000E94FD0FEF91FF910E9494102F913F912B\r
-:102120004F915F910C94FD0FDF93CF931F930F930B\r
-:10213000FF92EF92DF927B018C01689406C0DA2E49\r
-:10214000EF010E941010FE01E894A59125913591B0\r
-:1021500045915591A6F3EF010E94000EFE019701F3\r
-:10216000A801DA9469F7DF90EF90FF900F911F912B\r
-:10217000CF91DF910895052E97FB1EF400940E94E5\r
-:10218000D21057FD07D00E94171107FC03D04EF460\r
-:102190000C94D21050954095309521953F4F4F4F5C\r
-:1021A0005F4F089590958095709561957F4F8F4F03\r
-:1021B0009F4F0895EE0FFF1F0590F491E02D0994B5\r
-:1021C0002F923F924F925F926F927F928F929F9247\r
-:1021D000AF92BF92CF92DF92EF92FF920F931F9335\r
-:1021E000CF93DF93CDB7DEB7CA1BDB0B0FB6F894E6\r
-:1021F000DEBF0FBECDBF09942A88398848885F8426\r
-:102200006E847D848C849B84AA84B984C884DF8096\r
-:10221000EE80FD800C811B81AA81B981CE0FD11D7A\r
-:102220000FB6F894DEBF0FBECDBFED010895A1E259\r
-:102230001A2EAA1BBB1BFD010DC0AA1FBB1FEE1F40\r
-:10224000FF1FA217B307E407F50720F0A21BB30B8B\r
-:10225000E40BF50B661F771F881F991F1A9469F707\r
-:1022600060957095809590959B01AC01BD01CF0163\r
-:102270000895FC010590061621F00020D9F7C00151\r
-:1022800008953197CF0108950F931F93CF93DF9354\r
-:10229000009731F46115710519F480E090E03AC0BF\r
-:1022A0008B01EC016EE070E081E090E00E9455123D\r
-:1022B000FC01892B91F380E883830115110571F0EE\r
-:1022C0001387028781E8838380915E0190915F018B\r
-:1022D000892B21F4F0935F01E0935E012097C9F010\r
-:1022E000D187C087838182608383809160019091D0\r
-:1022F0006101892B71F4F0936101E0936001809199\r
-:10230000620190916301892B21F4F0936301E093C2\r
-:102310006201CF01DF91CF911F910F9108950F932B\r
-:102320001F93CF93DF93FB01238121FD03C08FEF28\r
-:102330009FEF28C022FF16C0468157812481358136\r
-:102340004217530744F4A081B1819D012F5F3F4F95\r
-:10235000318320838C93268137812F5F3F4F3783D2\r
-:10236000268310C0EB01092F182F0084F185E02D82\r
-:102370000995892BE1F68E819F8101969F838E833B\r
-:10238000812F902FDF91CF911F910F9108950F937F\r
-:102390001F93CF93DF93E0916001F091610123815E\r
-:1023A00021FF1BC08C01D0E0C0E0F80181918F01BA\r
-:1023B0006091600170916101DB011896ED91FC91D3\r
-:1023C0001997882331F00995892B79F3DFEFCFEF47\r
-:1023D000ECCF8AE00995892B19F08FEF9FEF02C0AF\r
-:1023E0008D2F9C2FDF91CF911F910F910895FA01AE\r
-:1023F000AA27283051F1203181F1E8946F936E7F44\r
-:102400006E5F7F4F8F4F9F4FAF4FB1E03ED0B4E034\r
-:102410003CD0670F781F891F9A1FA11D680F791F75\r
-:102420008A1F911DA11D6A0F711D811D911DA11D86\r
-:1024300020D009F468943F912AE0269F1124301996\r
-:10244000305D3193DEF6CF010895462F4770405D31\r
-:102450004193B3E00FD0C9F7F6CF462F4F70405DE0\r
-:102460004A3318F0495D31FD4052419302D0A9F73B\r
-:10247000EACFB4E0A6959795879577956795BA9535\r
-:10248000C9F700976105710508959B01AC010A2EFB\r
-:1024900006945795479537952795BA95C9F7620FD2\r
-:1024A000731F841F951FA01D08950F931F93CF9333\r
-:1024B000DF93869F8001879F100D969F100D11243A\r
-:1024C000C8010E947112EC01009729F0A80160E098\r
-:1024D00070E00E949E13CE01DF91CF911F910F916A\r
-:1024E0000895CF93DF938230910510F482E090E05D\r
-:1024F000E0916601F091670120E030E0C0E0D0E0BB\r
-:10250000309711F14081518148175907C0F04817A1\r
-:10251000590761F482819381209719F09B838A8304\r
-:102520002BC0909367018093660126C02115310569\r
-:1025300019F04217530718F49A01BE01DF01EF01A9\r
-:102540000280F381E02DDCCF2115310509F1281B34\r
-:10255000390B2430310590F412968D919C9113978C\r
-:102560006115710521F0FB019383828304C0909370\r
-:10257000670180936601FD01329644C0FD01E20FC0\r
-:10258000F31F81939193225031092D933C933AC0CC\r
-:102590002091640130916501232B41F420916C005E\r
-:1025A00030916D00309365012093640120916A00A1\r
-:1025B00030916B002115310541F42DB73EB74091A4\r
-:1025C0006E0050916F00241B350BE0916401F09177\r
-:1025D0006501E217F307A0F42E1B3F0B28173907FC\r
-:1025E00078F0AC014E5F5F4F2417350748F04E0F6F\r
-:1025F0005F1F50936501409364018193919302C0E2\r
-:10260000E0E0F0E0CF01DF91CF9108950F931F93A9\r
-:10261000CF93DF93009709F48CC0FC0132971382AB\r
-:10262000128200916601109167010115110581F474\r
-:1026300020813181820F931F2091640130916501C7\r
-:102640002817390779F5F0936501E093640171C0AB\r
-:10265000D80140E050E0AE17BF0750F412962D911C\r
-:102660003C911397AD012115310509F1D901F3CF43\r
-:102670009D01DA013383228360817181860F971F68\r
-:102680008217930769F4EC0128813981260F371FDF\r
-:102690002E5F3F4F318320838A819B819383828386\r
-:1026A000452B29F4F0936701E093660142C013962D\r
-:1026B000FC93EE931297ED01499159919E01240FDD\r
-:1026C000351FE217F30771F480819181840F951F04\r
-:1026D000029611969C938E938281938113969C937C\r
-:1026E0008E931297E0E0F0E0D80112968D919C91C4\r
-:1026F0001397009719F0F8018C01F6CF8D919C91FA\r
-:1027000098012E5F3F4F820F931F209164013091FB\r
-:1027100065012817390769F4309729F41092670189\r
-:102720001092660102C01382128210936501009319\r
-:102730006401DF91CF911F910F910895DC0101C0D9\r
-:0E2740006D9341505040E0F70895F894FFCF9C\r
-:10274E0000800080008000800101000068012000F0\r
-:0A275E000D0A53746172740D00003F\r
+:1004A0006627782F892F9A2F622B6093A400709370\r
+:1004B000A5008093A6009093A70023E33BE542E8C4\r
+:1004C00055E40E94E80F0E94C80E7093D10060931B\r
+:1004D000D0007093CF006093CE0081E08093D7006E\r
+:1004E0008093D600B7C183B190E0A0E0B0E00EC029\r
+:1004F00023B18091A4009091A500A091A600B09195\r
+:10050000A700BA2FA92F982F8827822B8093A400A9\r
+:100510009093A500A093A600B093A7009BC183B1C0\r
+:1005200090E0A0E0B0E00EC023B18091A0009091D7\r
+:10053000A100A091A200B091A300BA2FA92F982FDB\r
+:100540008827822B8093A0009093A100A093A20003\r
+:10055000B093A3007FC123B18091A0009091A1002E\r
+:10056000A091A200B091A300BA2FA92F982F88279D\r
+:10057000822B8093A0009093A100A093A200B0933F\r
+:10058000A3008093EE009093EF00A093F000B0934F\r
+:10059000F1000FC083B1809368005CC183B1809388\r
+:1005A000D30058C183B18093AB0003C083B1809363\r
+:1005B000AA0081E08093F2004DC18091E90090E0B3\r
+:1005C000FC013297E13AF10508F04BC1E65DFF4FBF\r
+:1005D0000C94B4108AB59BB53CC188B599B539C1A6\r
+:1005E00083B537C18CB735C113B834C18091DE00F3\r
+:1005F0009091DF000EC08091DC009091DD0009C079\r
+:100600008091DA009091DB0004C08091D800909135\r
+:10061000D90090939F0080939E004DC080919E00D2\r
+:1006200018C18091D0009091D10045C08091D00038\r
+:100630009091D1000EC18091CE009091CF003BC02F\r
+:100640008091CE009091CF0004C18091CC00909118\r
+:10065000CD0031C08091CC009091CD00FAC0809146\r
+:10066000CA009091CB0027C08091CA009091CB0026\r
+:10067000F0C08091C7009091C8001DC08091C70054\r
+:100680009091C800E6C08091C5009091C60013C04B\r
+:100690008091C5009091C600DCC08091C30090910C\r
+:1006A000C40009C08091C3009091C400D2C0809161\r
+:1006B000C1009091C20093B9CDC08091C1009091CA\r
+:1006C000C200C7C08091B1009091B200A091B30068\r
+:1006D000B091B4008093A4009093A500A093A600CD\r
+:1006E000B093A70025C08091A4009091A500A0918F\r
+:1006F000A600B091A7008CC08091A4009091A500A5\r
+:10070000A091A600B091A7008FC08091A400A1C0C5\r
+:100710008091AD009091AE00A091AF00B091B0007B\r
+:100720008093A0009093A100A093A200B093A30097\r
+:100730008B2F9927AA27BB278CC08091A00090916E\r
+:10074000A100A091A200B091A30062C08091A0007E\r
+:100750009091A100A091A200B091A30065C08091EA\r
+:10076000BD009091BE00A091BF00B091C000E0CF4D\r
+:100770008091BD009091BE00A091BF00B091C000DB\r
+:1007800047C08091BD009091BE00A091BF00B09184\r
+:10079000C0004AC08091BD009091BE00A091BF00F2\r
+:1007A000B091C00056C08091B9009091BA00A0915C\r
+:1007B000BB00B091BC00BCCF8091B9009091BA0051\r
+:1007C000A091BB00B091BC0023C08091B900909172\r
+:1007D000BA00A091BB00B091BC0026C08091B900C6\r
+:1007E0009091BA00A091BB00B091BC0032C0809142\r
+:1007F000B5009091B600A091B700B091B80098CF25\r
+:100800008091B5009091B600A091B700B091B8006A\r
+:10081000CD01AA27BB271DC08091B5009091B600DD\r
+:10082000A091B700B091B800892F9A2FAB2FBB27AA\r
+:1008300010C08091B5009091B600A091B700B09122\r
+:10084000B80007C084B78F7083B914BE03C080910D\r
+:10085000A90083B985EC07C08091AC0083B985EC11\r
+:1008600086BF13B885E886BF8091E9008F5F8093CB\r
+:10087000E90005C086B78B7E86BF85EC86BFFF91F9\r
+:10088000EF91BF91AF919F918F917F916F915F9108\r
+:100890004F913F912F910F900FBE0F901F90189581\r
+:1008A0001F920F920FB60F9211242F933F934F93E5\r
+:1008B0005F938F939F9399B390FD02C080E001C036\r
+:1008C00083E091FF02C091E0892720919D00281BC1\r
+:1008D00020FF1FC080939D0080916900422F4270CD\r
+:1008E000882349F08091DE009091DF00242F30E0D2\r
+:1008F0002150310908C08091DE009091DF0021E095\r
+:1009000030E0241B3109820F931F9093DF00809306\r
+:10091000DE0099B392959F7090FD02C080E001C007\r
+:1009200083E091FF02C091E0892720919C00281B61\r
+:1009300020FF1FC080939C00809168002270882354\r
+:1009400059F08091DC009091DD0041E050E0421BC5\r
+:100950005109840F951F09C08091DC009091DD0042\r
+:1009600030E021503109820F931F9093DD00809376\r
+:10097000DC0099B39695969590FD02C080E001C089\r
+:1009800083E091FF02C091E0892720919B00281B02\r
+:1009900020FF1FC080939B008091D300227088238A\r
+:1009A00059F08091DA009091DB0041E050E0421B69\r
+:1009B0005109840F951F09C08091DA009091DB00E6\r
+:1009C00030E021503109820F931F9093DB00809318\r
+:1009D000DA0099B3929596959695937090FD02C022\r
+:1009E00080E001C083E0927011F091E089272091AE\r
+:1009F0009A00281B20FF1FC080939A008091D2008C\r
+:100A0000422F4270882349F08091D8009091D900FC\r
+:100A1000242F30E02150310908C08091D8009091F6\r
+:100A2000D90021E030E0241B3109820F931F9093FD\r
+:100A3000D9008093D8008091C9008F5F8093C9004E\r
+:100A40009F918F915F914F913F912F910F900FBE8A\r
+:100A50000F901F9018951F920F920FB60F921124AE\r
+:100A60008F939F93EF93FF935F9B16C0E091F500E8\r
+:100A7000F091F6008CB1808381E0EA35F80730F41C\r
+:100A80003196F093F600E093F50006C087EF90E012\r
+:100A90009093F6008093F500FF91EF919F918F91D5\r
+:100AA0000F900FBE0F901F9018959C018AB188611E\r
+:100AB0008AB9579A80B5866080BD40E050E084E0F6\r
+:100AC000220F331F441F551F8A95D1F760E079E04C\r
+:100AD0008DE390E00E949510DA01C9010197A10908\r
+:100AE000B109892F9A2FAB2FBB27A7FDBA9580BDDF\r
+:100AF000215029B987EF90E09093F4008093F300A0\r
+:100B00009093F6008093F50008955D9BFECFFC0165\r
+:100B100080818CB90895CF93DF931F92CDB7DEB754\r
+:100B20008983CE0101960E94850580E090E00F90B8\r
+:100B3000DF91CF910895CF93DF93EC01CE01219601\r
+:100B4000FC012081222319F00E948505F7CFDF9157\r
+:100B5000CF9108955F9BFECF8CB190E008950C94E7\r
+:100B6000AA056FEA75E08BE895E00C94E710CF9347\r
+:100B7000DF93FC01E253FF4FA081B181EC01C4532C\r
+:100B8000DF4F28813981A217B307A1F05D9B12C006\r
+:100B90002C912CB920813181AC0145535F4F241732\r
+:100BA000350718F42F5F3F4F03C09C0128593F4F72\r
+:100BB00031832083E091F300F091F4002091F5005F\r
+:100BC0003091F6002E173F07C1F1DC01AC59BF4F41\r
+:100BD000CD91DC911197208128836D917C911197A3\r
+:100BE0009C012B523F4FE9013881EB0128813213E0\r
+:100BF00007C09C012C523F4FE90148814F5F488359\r
+:100C00009C012D593F4F6217730728F4EB01219681\r
+:100C1000CD93DC9302C08D939C93D1E0EA35FD0720\r
+:100C200030F43196F093F400E093F30006C087EFC0\r
+:100C300090E09093F4008093F300DF91CF910895BA\r
+:100C4000CF93DF93CDB7DEB76E970FB6F894DEBFC4\r
+:100C50000FBECDBF88E087BB8CEF84BB8CEB81BB24\r
+:100C600087E088BB80E482BB1092E80080E895E2D0\r
+:100C70000E9455050E94B10580E582B986B78B7E3A\r
+:100C800086BF85EC86BF81EA8FBD89E08EBD1BBC27\r
+:100C90001ABC19BC18BC89E685BD13BC83BF1CBE39\r
+:100CA00080E790E00E94641185B78F7885BF84E06B\r
+:100CB00089BF789494E6292E312C8091E9008F3FEA\r
+:100CC00041F48091E800853A21F4F894E0E0F8E1FD\r
+:100CD00009958091F200882309F4E6C0F894809089\r
+:100CE000EA009090EB00A090EC00B090ED006091D5\r
+:100CF000EE007091EF008091F0009091F100109261\r
+:100D0000F20078942BED3FE049E450E40E94E80FB4\r
+:100D100027EB3BE04DEB5EE30E94E80F20E030E084\r
+:100D200040E05FE30E94E80FA50194010E94F50DE9\r
+:100D30006B017C01A5019401C501B4010E94F50D70\r
+:100D4000A70196010E94F40D23E33BE542E855E438\r
+:100D50000E94E80F4B015C0123E33BE542E855E4C8\r
+:100D6000C701B6010E94E80F6B017C018091AA00C7\r
+:100D70008823B9F18091AA009101281B3109B9019A\r
+:100D8000882777FD8095982F0E94FB0E9B01AC0170\r
+:100D9000C501B4010E94E80F20E030E048EC52E4C5\r
+:100DA0000E94600E0E94C80E7093D1006093D00024\r
+:100DB0008091AA00A101481B5109BA01882777FD3B\r
+:100DC0008095982F0E94FB0E9B01AC01C701B601D4\r
+:100DD0000E94E80F20E030E048EC52E40E94600EF0\r
+:100DE0000AC0C501B4010E94C80E7093D10060937F\r
+:100DF000D000C701B6010E94C80E7093CB0060936B\r
+:100E0000CA008091AB008823B1F18091AB00F10161\r
+:100E1000E81BF109BF01882777FD8095982F0E9474\r
+:100E2000FB0E9B01AC01C501B4010E94E80F20E05C\r
+:100E300030E048EC52E40E94600E0E94C80E7093AD\r
+:100E4000CF006093CE008091AB00B101681B7109A7\r
+:100E5000882777FD8095982F0E94FB0E9B01AC019F\r
+:100E6000C701B6010E94E80F20E030E048EC52E4F0\r
+:100E70000E94600E0AC0C501B4010E94C80E7093A2\r
+:100E8000CF006093CE00C701B6010E94C80E7093D8\r
+:100E9000CD006093CC00F1E0F093D700F093D60042\r
+:100EA000F093D500F093D4008091C9008C3908F4F8\r
+:100EB00046C51092C900F8942091DE003091DF0001\r
+:100EC0003A8329834091DC005091DD005C834B83A1\r
+:100ED0008091DA009091DB009E838D83E091D800B1\r
+:100EE000F091D900F887EF837894809198009091E1\r
+:100EF00099005901A81AB90A80919600909197001B\r
+:100F00008A01081B190B8091940090919500ED8047\r
+:100F1000FE80E81AF90A80919200909193006F0187\r
+:100F2000C81AD90AB501882777FD8095982F0E94A5\r
+:100F3000FB0E2AE037ED43E25CE30E94600E0E9464\r
+:100F4000C80E69877A878B879C87B801882777FDC9\r
+:100F50008095982F0E94FB0E2AE037ED43E25CE378\r
+:100F60000E94600E0E94C80E6D877E878F87988BC7\r
+:100F7000B701882777FD8095982F0E94FB0E2AE005\r
+:100F800037ED43E25CE30E94600E0E94C80E698B5D\r
+:100F90007A8B8B8B9C8BB601882777FD8095982F59\r
+:100FA0000E94FB0E2AE037ED43E25CE30E94600EF4\r
+:100FB0000E94C80E6D8B7E8B8F8B988FB501600F52\r
+:100FC000711F882777FD8095982F0E94FB0E23E3E1\r
+:100FD0003BE542E056E40E94600E4B015C01B70124\r
+:100FE0006C0D7D1D882777FD8095982F0E94FB0E44\r
+:100FF00023E33BE542E056E40E94600E2B013C01F6\r
+:10100000C090B500D090B600E090B700F090B80066\r
+:10101000A50194010E94F40D27EB3BE04DEB5EE34C\r
+:101020000E94600E9B01AC01C701B6010E94F50D44\r
+:101030006B017C012BED3FE049EC50E40E94E40F92\r
+:1010400018164CF42BED3FE049EC50E4C701B60113\r
+:101050000E94F40D12C02BED3FE049EC50ECC701AB\r
+:10106000B6010E94590E87FF0AC02BED3FE049EC04\r
+:1010700050E4C701B6010E94F50D6B017C01A3018C\r
+:101080009201C501B4010E94F50D20E030E040E07E\r
+:101090005FE30E94E80F4B015C014090BD0050905F\r
+:1010A000BE006090BF007090C000C701B6010E94F2\r
+:1010B0005D0EA50194010E94E80F9B01AC01C301E4\r
+:1010C000B2010E94F50D698F7A8F8B8F9C8F4090B3\r
+:1010D000B9005090BA006090BB007090BC00C7018E\r
+:1010E000B6010E944B10A50194010E94E80F9B01DC\r
+:1010F000AC01C301B2010E94F50D2B013C010D852D\r
+:101100001E8529853A85020F131F17FF02C00F5F46\r
+:101110001F4F159507954D895E8989899A89480FD2\r
+:10112000591F57FF02C04F5F5F4FFA01F595E795D2\r
+:10113000FE8FED8FBF01600F711F882777FD8095AF\r
+:10114000982F0E94FB0E23E33BE542E056E40E9409\r
+:10115000600E4B015C016D8D7E8D601B710B8827CD\r
+:1011600077FD8095982F0E94FB0E29E935E347E92A\r
+:1011700055E40E94600EF894C092B500D092B6007B\r
+:10118000E092B700F092B800298D3A8D4B8D5C8DBE\r
+:101190002093BD003093BE004093BF005093C00029\r
+:1011A0004092B9005092BA006092BB007092BC00AD\r
+:1011B00049855A855093C8004093C700ED85FE8548\r
+:1011C000F093C600E093C50029893A893093C400A2\r
+:1011D0002093C3004D895E895093C2004093C100A3\r
+:1011E0008092B1009092B200A092B300B092B4008D\r
+:1011F0006093AD007093AE008093AF009093B00009\r
+:10120000789489819A819093990080939800EB81DA\r
+:10121000FC81F0939700E09396002D813E813093FE\r
+:101220009500209394004F815885509393004093EC\r
+:1012300092008091D700813009F094C08091D00055\r
+:101240009091D100892B89F41092E7001092E6006A\r
+:10125000109291001092900010928C0010928D00CC\r
+:1012600010928E0010928F007DC00091D0001091DE\r
+:10127000D1008091C7009091C800081B190BB801DC\r
+:10128000882777FD8095982FC0908C00D0908D0096\r
+:10129000E0908E00F0908F00C60ED71EE81EF91E5B\r
+:1012A000C0928C00D0928D00E0928E00F0928F0060\r
+:1012B0000E94FB0E2DEC3CEC4CEC5CE30E94E80F32\r
+:1012C0004B015C01C701B6010E94FB0E2EE73AE616\r
+:1012D0004CEB5CE30E94E80F9B01AC01C501B4013B\r
+:1012E0000E94F50D6B017C0180919000909191001E\r
+:1012F000B801681B790B882777FD8095982F0E948D\r
+:10130000FB0E20E030E0A9010E94E80F9B01AC0138\r
+:10131000C701B6010E94F50D0E94C80E7093E70048\r
+:101320006093E60010939100009390008091E60096\r
+:101330009091E7008F3F910541F03CF08FEF90E0F6\r
+:101340009093E7008093E6000DC08091E6009091B5\r
+:10135000E70081309F4F34F421E03FEF3093E70006\r
+:101360002093E6008091D600813009F094C08091EE\r
+:10137000CE009091CF00892B89F41092E500109255\r
+:10138000E40010928B0010928A0010928600109256\r
+:10139000870010928800109289007DC00091CE00D5\r
+:1013A0001091CF008091C5009091C600081B190BC9\r
+:1013B000B801882777FD8095982FC0908600D0903F\r
+:1013C0008700E0908800F0908900C60ED71EE81EC6\r
+:1013D000F91EC0928600D0928700E0928800F092B9\r
+:1013E00089000E94FB0E2DEC3CEC4CEC5CE30E946F\r
+:1013F000E80F4B015C01C701B6010E94FB0E2EE70E\r
+:101400003AE64CEB5CE30E94E80F9B01AC01C5019E\r
+:10141000B4010E94F50D6B017C0180918A009091CE\r
+:101420008B00B801681B790B882777FD8095982F72\r
+:101430000E94FB0E20E030E0A9010E94E80F9B0112\r
+:10144000AC01C701B6010E94F50D0E94C80E709351\r
+:10145000E5006093E40010938B0000938A00809174\r
+:10146000E4009091E5008F3F910541F03CF04FEF93\r
+:1014700050E05093E5004093E4000DC08091E400FB\r
+:101480009091E50081309F4F34F481E09FEF90937D\r
+:10149000E5008093E4008091D500813009F094C08C\r
+:1014A0008091CC009091CD00892B89F41092E300BB\r
+:1014B0001092E20010928500109284001092800039\r
+:1014C0001092810010928200109283007DC00091E2\r
+:1014D000CC001091CD008091C3009091C400081BF6\r
+:1014E000190BB801882777FD8095982FC090800050\r
+:1014F000D0908100E0908200F0908300C60ED71E4D\r
+:10150000E81EF91EC0928000D0928100E092820015\r
+:10151000F09283000E94FB0E2DEC3CEC4CEC5CE363\r
+:101520000E94E80F4B015C01C701B6010E94FB0E4F\r
+:101530002EE73AE64CEB5CE30E94E80F9B01AC011E\r
+:10154000C501B4010E94F50D6B017C0180918400FE\r
+:1015500090918500B801681B790B882777FD8095ED\r
+:10156000982F0E94FB0E20E030E0A9010E94E80FB6\r
+:101570009B01AC01C701B6010E94F50D0E94C80E87\r
+:101580007093E3006093E200109385000093840061\r
+:101590008091E2009091E3008F3F910541F03CF093\r
+:1015A000EFEFF0E0F093E300E093E2000DC08091F4\r
+:1015B000E2009091E30081309F4F34F421E03FEF4F\r
+:1015C0003093E3002093E2008091D400813009F051\r
+:1015D00094C08091CA009091CB00892B89F410921D\r
+:1015E000E1001092E00010927F0010927E001092B5\r
+:1015F0007A0010927B0010927C0010927D007DC0DA\r
+:101600000091CA001091CB008091C1009091C2005E\r
+:10161000081B190BB801882777FD8095982FC0907B\r
+:101620007A00D0907B00E0907C00F0907D00C60EA8\r
+:10163000D71EE81EF91EC0927A00D0927B00E0927D\r
+:101640007C00F0927D000E94FB0E2DEC3CEC4CECFB\r
+:101650005CE30E94E80F4B015C01C701B6010E94E8\r
+:10166000FB0E2EE73AE64CEB5CE30E94E80F9B0191\r
+:10167000AC01C501B4010E94F50D6B017C018091A4\r
+:101680007E0090917F00B801681B790B882777FD59\r
+:101690008095982F0E94FB0E20E030E0A9010E9467\r
+:1016A000E80F9B01AC01C701B6010E94F50D0E9435\r
+:1016B000C80E7093E1006093E00010937F000093E8\r
+:1016C0007E008091E0009091E1008F3F910541F014\r
+:1016D0003CF04FEF50E05093E1004093E0000DC02C\r
+:1016E0008091E0009091E10081309F4F34F481E0DF\r
+:1016F0009FEF9093E1008093E00080B326B3807465\r
+:1017000090E0A3E095958795AA95E1F72770282B9F\r
+:1017100020952F702093A9008091E6009091E7001A\r
+:10172000209166003091670028173907C9F1809130\r
+:10173000E6009091E700892B19F485B3837F1CC0E4\r
+:1017400080916900811107C08091E6009091E700C7\r
+:101750001816190654F080916900882351F0809181\r
+:10176000E6009091E70097FF04C085B3877F84600F\r
+:1017700003C085B38B7F886085BB8091E600909124\r
+:10178000E70090936700809366008091E600909157\r
+:10179000E70097FF03C09195819591099BBD8ABD94\r
+:1017A0008091E4009091E500209164003091650003\r
+:1017B00028173907C9F18091E4009091E500892B41\r
+:1017C00019F485B38F7C1CC080916800811107C01B\r
+:1017D0008091E4009091E5001816190654F080916C\r
+:1017E0006800882351F08091E4009091E50097FF14\r
+:1017F00004C085B38F7D806103C085B38F7E806216\r
+:1018000085BB8091E4009091E50090936500809302\r
+:1018100064008091E4009091E50097FF03C09195EA\r
+:101820008195910999BD88BD8091E2009091E30076\r
+:10183000209162003091630028173907C1F180912F\r
+:10184000E2009091E300892B19F485B38F731CC0DB\r
+:101850008091D300811107C08091E2009091E30054\r
+:101860001816190654F08091D300882351F0809106\r
+:10187000E2009091E30097FF04C085B38F77806406\r
+:1018800003C085B38F7B806885BB8091E200909117\r
+:10189000E30090936300809362008091E200909156\r
+:1018A000E30097FF03C091958195910983BD8091D5\r
+:1018B000E0009091E10020916000309161002817D4\r
+:1018C0003907C1F18091E0009091E100892B19F472\r
+:1018D00082B3837F1CC08091D200811107C08091A8\r
+:1018E000E0009091E1001816190654F08091D200A2\r
+:1018F000882351F08091E0009091E10097FF04C0AF\r
+:1019000082B3877F846003C082B38B7F886082BB91\r
+:101910008091E0009091E1009093610080936000DD\r
+:101920008091E0009091E10097FF03C0919581952F\r
+:1019300091098CBF8091AC008F5F8093AC0085B71C\r
+:10194000806885BF889585B78F7785BFB6C96F9248\r
+:101950007F929F92AF92BF92CF92DF92EF92FF92CF\r
+:101960000F931F93CF93DF93CDB7DEB72C970FB6AE\r
+:10197000F894DEBF0FBECDBF8C017B013A01FC01A4\r
+:1019800017821682838181FF19C1CE0101965C0105\r
+:10199000F801D380F701D3FC2591D3FE21917F017B\r
+:1019A000222309F407C1253249F4D3FC2591D3FE43\r
+:1019B00021917F01253211F0912C1BC0B801822F9B\r
+:1019C00090E00E94321163013601E2CF222309F434\r
+:1019D000F1C0622F70E08BEB91E02C870E94DC104D\r
+:1019E0002C85892B49F0F701D3FC2591D3FE219159\r
+:1019F0007F0197FEEBCF0CC0233221F4F92DF0616B\r
+:101A00009F2EF1CF2C3639F4292D2068922EEBCF62\r
+:101A1000222309F4CFC0622F70E084EB91E02C8781\r
+:101A20000E94DC102C85892B41F06301F4E0CF0E7D\r
+:101A3000D11CB8018FE390E012C0233641F0233768\r
+:101A400089F0233521F5F92DF1609F2E0BC063013C\r
+:101A500022E0C20ED11CB801F301808191810E9465\r
+:101A60003211B2CF630122E0C20ED11CF3016080BB\r
+:101A70007180F30190FC859190FE81913F01882354\r
+:101A800009F4A2CFB80190E00E943211F2CF2436BF\r
+:101A900011F0293639F5630197FE09C0F4E0CF0E45\r
+:101AA000D11CF30160817181828193810AC0F2E0CF\r
+:101AB000CF0ED11CF30160817181882777FD80955D\r
+:101AC000982FF92DFF7E9F2E97FF09C09095809546\r
+:101AD000709561957F4F8F4F9F4FF0649F2E2AE046\r
+:101AE00030E038C02037A1F040F42835D1F02F364F\r
+:101AF00009F060C028E030E019C0253719F0283718\r
+:101B000051F058C0292D2F7E922E2AE030E00EC0D1\r
+:101B1000892D8061982E992D9462992E20E130E0D4\r
+:101B200005C0E92DE4609E2E20E132E0630197FEBE\r
+:101B300009C0F4E0CF0ED11CF30160817181828174\r
+:101B4000938108C0F2E0CF0ED11CF3016081718156\r
+:101B500080E090E0A5010E949111782E7A1896FEFF\r
+:101B600005C0B8018DE290E00E94321194FE16C0CB\r
+:101B7000FE01E70DF11D8081803381F0B80180E323\r
+:101B800090E00E94321192FE09C0292D2072822F0E\r
+:101B900090E0B801885A9F4F0E9432117A94F50163\r
+:101BA000E70DF11D8081B80190E00E9432117110A3\r
+:101BB000F5CF0ACFF8018681978102C08FEF9FEFA2\r
+:101BC0002C960FB6F894DEBF0FBECDBFDF91CF913C\r
+:101BD0001F910F91FF90EF90DF90CF90BF90AF904B\r
+:101BE0009F907F906F9008955058BB27AA270ED0E2\r
+:101BF000A0C169D130F06ED120F031F49F3F11F4D3\r
+:101C00001EF45EC10EF4E095E7FB54C1E92FB3D199\r
+:101C100080F3BA17620773078407950718F071F409\r
+:101C20009EF5CBC10EF4E0950B2EBA2FA02D0B0123\r
+:101C3000B90190010C01CA01A0011124FF27591B11\r
+:101C400099F0593F50F4503E68F11A16F040A22F17\r
+:101C5000232F342F4427585FF3CF46953795279588\r
+:101C6000A795F0405395C9F77EF41F16BA0B620B87\r
+:101C7000730B840BBAF09150A1F0FF0FBB1F661FCE\r
+:101C8000771F881FC2F70EC0BA0F621F731F841F11\r
+:101C900048F4879577956795B795F7959E3F08F037\r
+:101CA000B3CF9395880F08F09927EE0F97958795F6\r
+:101CB0000895DCD008F481E0089514D1E3954AC179\r
+:101CC0000CD037C107D140F0FED030F021F45F3F97\r
+:101CD00019F0F0C0511172C1F3C04DD198F399239E\r
+:101CE000C9F35523B1F3951B550BBB27AA276217E0\r
+:101CF0007307840738F09F5F5F4F220F331F441F25\r
+:101D0000AA1FA9F333D00E2E3AF0E0E830D091505C\r
+:101D10005040E695001CCAF729D0FE2F27D0660F49\r
+:101D2000771F881FBB1F261737074807AB07B0E888\r
+:101D300009F0BB0B802DBF01FF2793585F4F2AF09E\r
+:101D40009E3F510568F0B6C039C15F3FECF3983E45\r
+:101D5000DCF3869577956795B795F7959F5FC9F7FB\r
+:101D6000880F911D9695879597F90895E1E0660F84\r
+:101D7000771F881FBB1F621773078407BA0720F0FD\r
+:101D8000621B730B840BBA0BEE1F88F7E095089566\r
+:101D900004D06894B11112C10895F5D088F09F570E\r
+:101DA00090F0B92F9927B751A0F0D1F0660F771FA7\r
+:101DB000881F991F1AF0BA95C9F712C0B13081F087\r
+:101DC000FCD0B1E00895F9C0672F782F8827B85F5D\r
+:101DD00039F0B93FCCF3869577956795B395D9F7E8\r
+:101DE0003EF490958095709561957F4F8F4F9F4FF2\r
+:101DF0000895E89409C097FB3EF4909580957095FE\r
+:101E000061957F4F8F4F9F4F9923A9F0F92F96E946\r
+:101E1000BB279395F695879577956795B795F111BB\r
+:101E2000F8CFFAF4BB0F11F460FF1BC06F5F7F4F58\r
+:101E30008F4F9F4F16C0882311F096E911C077236A\r
+:101E400021F09EE8872F762F05C0662371F096E873\r
+:101E5000862F70E060E02AF09A95660F771F881F42\r
+:101E6000DAF7880F9695879597F90895990F0008E6\r
+:101E7000550FAA0BE0E8FEEF16161706E807F9075C\r
+:101E8000C0F012161306E407F50798F0621B730BF7\r
+:101E9000840B950B39F40A2661F0232B242B252B78\r
+:101EA00021F408950A2609F4A140A6958FEF811D1B\r
+:101EB000811D089597F99F6780E870E060E00895BC\r
+:101EC0009FEF80EC089500240A9416161706180652\r
+:101ED0000906089500240A9412161306140605062E\r
+:101EE0000895EECF50D0E8F3E894E0E0BB279F5789\r
+:101EF000F0F02AED3FE049EC06C0EE0FBB0F661F85\r
+:101F0000771F881F28F0B23A62077307840728F00A\r
+:101F1000B25A620B730B840BE3959A9572F7803873\r
+:101F200030F49A95BB0F661F771F881FD2F7904831\r
+:101F3000BAC0092E0394000C11F4882352F0BB0F91\r
+:101F400040F4BF2B11F460FF04C06F5F7F4F8F4FD1\r
+:101F50009F4F0895EF93E0FF06C0A2EA2AED3FE00D\r
+:101F600049EC5FEB53DEE5DF0F90039401FC9058E2\r
+:101F7000E6E9F1E0A4C057FD9058440F551F59F011\r
+:101F80005F3F71F04795880F97FB991F61F09F3F66\r
+:101F900079F087950895121613061406551FF2CF8F\r
+:101FA0004695F1DF08C0161617061806991FF1CFDF\r
+:101FB00086957105610508940895E894BB27662706\r
+:101FC0007727CB0197F9089551DF08F48FEF089533\r
+:101FD0000BD0AFCF78DF28F07DDF18F0952309F024\r
+:101FE00069CF6ECF1124EACFC6DFA0F3959FD1F35E\r
+:101FF000950F50E0551F629FF001729FBB27F00DB7\r
+:10200000B11D639FAA27F00DB11DAA1F649F66270B\r
+:10201000B00DA11D661F829F2227B00DA11D621F5A\r
+:10202000739FB00DA11D621F839FA00D611D221F14\r
+:10203000749F3327A00D611D231F849F600D211DF8\r
+:10204000822F762F6A2F11249F5750408AF0E1F09B\r
+:1020500088234AF0EE0FFF1FBB1F661F771F881FE4\r
+:1020600091505040A9F79E3F510570F023CFA6CF65\r
+:102070005F3FECF3983EDCF3869577956795B795CF\r
+:10208000F795E7959F5FC1F7FE2B880F911D9695F9\r
+:10209000879597F908959F9325DF0F9007FCEE5FD2\r
+:1020A00059CF9F3F31F0915020F4879577956795F0\r
+:1020B000B795880F911D9695879597F908959F93E9\r
+:1020C0008F937F936F93FF93EF939B01AC0180DF1E\r
+:1020D000EF91FF9105D02F913F914F915F9178CF74\r
+:1020E000DF93CF931F930F93FF92EF92DF927B01C9\r
+:1020F0008C01689405C0DA2EEF0176DFFE01E894CA\r
+:10210000A5912591359145915591AEF3EF017EDD75\r
+:10211000FE019701A801DA9479F7DF90EF90FF9024\r
+:102120000F911F91CF91DF910895052E97FB1EF41B\r
+:1021300000940E94AC1057FD07D00E94BA1007FC13\r
+:1021400003D04EF40C94AC105095409530952195E9\r
+:102150003F4F4F4F5F4F08959095809570956195D3\r
+:102160007F4F8F4F9F4F0895EE0FFF1F0590F49103\r
+:10217000E02D0994A1E21A2EAA1BBB1BFD010DC084\r
+:10218000AA1FBB1FEE1FFF1FA217B307E407F50727\r
+:1021900020F0A21BB30BE40BF50B661F771F881F03\r
+:1021A000991F1A9469F760957095809590959B0199\r
+:1021B000AC01BD01CF010895FC010590061621F088\r
+:1021C0000020D9F7C00108953197CF0108950F93EA\r
+:1021D0001F93CF93DF93EC018B01009731F46115CE\r
+:1021E000710519F480E090E038C06EE070E081E0A5\r
+:1021F00090E00E94EF11FC010097A1F380E8838337\r
+:102200000115110571F01387028781E8838380919E\r
+:102210005E0190915F01892B21F4F0935F01E093BF\r
+:102220005E012097C9F0D187C08783818260838354\r
+:102230008091600190916101892B71F4F0936101AB\r
+:10224000E09360018091620190916301892B21F4F8\r
+:10225000F0936301E0936201CF01DF91CF911F9171\r
+:102260000F9108950F931F93CF93DF93182F092F8A\r
+:10227000EB018B8181FD03C08FEF9FEF20C082FFB8\r
+:1022800010C04E815F812C813D81421753077CF441\r
+:10229000E881F9819F012F5F3F4F398328831083A5\r
+:1022A00006C0E885F985812F0995892B29F72E81AC\r
+:1022B0003F812F5F3F4F3F832E83812F902FDF91F0\r
+:1022C000CF911F910F9108950F931F93CF93DF9399\r
+:1022D000E0916001F0916101238121FF1BC0EC01BD\r
+:1022E00000E010E089916091600170916101DB0173\r
+:1022F0001896ED91FC911997882331F00995892B57\r
+:1023000089F30FEF1FEFEECF8AE00995892B11F4C7\r
+:10231000C80102C08FEF9FEFDF91CF911F910F9106\r
+:102320000895FA01AA27283051F1203181F1E8946B\r
+:102330006F936E7F6E5F7F4F8F4F9F4FAF4FB1E0B8\r
+:102340003ED0B4E03CD0670F781F891F9A1FA11DB3\r
+:10235000680F791F8A1F911DA11D6A0F711D811DB4\r
+:10236000911DA11D20D009F468943F912AE0269F79\r
+:1023700011243019305D3193DEF6CF010895462FD8\r
+:102380004770405D4193B3E00FD0C9F7F6CF462FB9\r
+:102390004F70405D4A3318F0495D31FD4052419322\r
+:1023A00002D0A9F7EACFB4E0A695979587957795DF\r
+:1023B0006795BA95C9F700976105710508959B0166\r
+:1023C000AC010A2E06945795479537952795BA95EF\r
+:1023D000C9F7620F731F841F951FA01D08950F93E7\r
+:1023E0001F93CF93DF93869F8001879F100D969F49\r
+:1023F000100D1124C8010E940B12EC01009729F066\r
+:10240000A80160E070E00E943213CE01DF91CF910D\r
+:102410001F910F910895CF93DF938230910510F4AF\r
+:1024200082E090E0E0916601F091670120E030E009\r
+:10243000A0E0B0E0309739F1408151814817590749\r
+:10244000B8F04817590771F482819381109729F0E9\r
+:1024500013969C938E9312972CC090936701809350\r
+:10246000660127C02115310531F04217530718F0D6\r
+:10247000A901DB0101C0EF019A01BD01DF0102806A\r
+:10248000F381E02DD7CF21153105F9F0281B390B49\r
+:102490002430310580F48A819B816115710521F01A\r
+:1024A000FB019383828304C090936701809366014C\r
+:1024B000FE01329644C0FE01E20FF31F8193919317\r
+:1024C00022503109398328833AC020916401309128\r
+:1024D0006501232B41F420916C0030916D00309305\r
+:1024E00065012093640120916A0030916B002115F1\r
+:1024F000310541F42DB73EB740916E0050916F0009\r
+:10250000241B350BE0916401F0916501E217F3079C\r
+:10251000A0F42E1B3F0B2817390778F0AC014E5F53\r
+:102520005F4F2417350748F04E0F5F1F509365012A\r
+:10253000409364018193919302C0E0E0F0E0CF0109\r
+:10254000DF91CF910895CF93DF93009709F487C06F\r
+:10255000FC01329713821282C0916601D09167010B\r
+:10256000209781F420813181280F391F80916401E7\r
+:10257000909165018217930779F5F0936501E093D7\r
+:1025800064016DC0DE0120E030E0AE17BF0750F4FB\r
+:1025900012964D915C9113979D014115510509F1DA\r
+:1025A000DA01F3CFB383A28340815181840F951F59\r
+:1025B0008A179B0771F48D919C911197840F951F39\r
+:1025C00002969183808312968D919C9113979383A9\r
+:1025D00082832115310529F4F0936701E0936601A8\r
+:1025E0003EC0D9011396FC93EE9312974D915D91E5\r
+:1025F000A40FB51FEA17FB0779F480819181840F3E\r
+:10260000951F0296D90111969C938E938281938196\r
+:1026100013969C938E931297E0E0F0E08A819B8161\r
+:10262000009719F0FE01EC01F9CFCE010296288146\r
+:102630003981820F931F2091640130916501281721\r
+:10264000390769F4309729F41092670110926601F6\r
+:1026500002C013821282D0936501C0936401DF919E\r
+:10266000CF910895DC0101C06D9341505040E0F7D7\r
+:062670000895F894FFCF6D\r
+:1026760000800080008000800101000068012000C9\r
+:0A2686000D0A53746172740D000018\r
 :00000001FF\r
diff --git a/scripts/engine_man_test.py b/scripts/engine_man_test.py
new file mode 100755 (executable)
index 0000000..ae639ae
--- /dev/null
@@ -0,0 +1,27 @@
+#!/usr/bin/env python
+# -*- coding: iso-8859-15 -*-
+
+import sys
+import struct
+from time import sleep
+from i2c import i2c_write_reg, i2c_read_reg
+
+
+def set_pwm(left, right):
+       i2c_write_reg(0x50, 0x1, struct.pack(">h", left))
+       i2c_write_reg(0x50, 0x3, struct.pack(">h", left))
+       i2c_write_reg(0x50, 0x5, struct.pack(">h", right))
+       i2c_write_reg(0x50, 0x7, struct.pack(">h", right))
+
+if __name__ == "__main__":
+       set_pwm(int(sys.argv[1]), int(sys.argv[2]))
+
+       while True:
+               motor1, = struct.unpack(">B", i2c_read_reg(0x50, 0x2, 1))
+               motor2, = struct.unpack(">B", i2c_read_reg(0x50, 0x4, 1))
+               motor3, = struct.unpack(">B", i2c_read_reg(0x50, 0x6, 1))
+               motor4, = struct.unpack(">B", i2c_read_reg(0x50, 0x8, 1))
+               speed1, speed2, speed3, speed4 = struct.unpack(">hhhh", i2c_read_reg(0x50, 0x30, 8))
+               error,  = struct.unpack(">B", i2c_read_reg(0x50, 0xA1, 1))
+               print "PWM:", motor1, motor2, motor3, motor4, "Speed:", speed1, speed2, speed3, speed4, "Error:", error
+               sleep(0.1)