fix motor direction after error state
authorErik Andresen <erik@vontaene.de>
Fri, 1 Apr 2016 13:41:23 +0000 (15:41 +0200)
committerErik Andresen <erik@vontaene.de>
Fri, 1 Apr 2016 13:41:23 +0000 (15:41 +0200)
avr/motor_ctrl/main.c
avr/motor_ctrl/main.hex

index 048fab0..e8c3d3f 100644 (file)
@@ -673,17 +673,34 @@ static void update_motor(void) {
 
        error_state = ~((PIND & 0x40)>>3 | (PINB & 0x07)) & 0xf;
 
-       // if error and running: stop
-       if (motor1_mode == MOTOR_PID && bit_is_set(error_state, 0) && m1_old != 0) motor1 = 0;
-       if (motor2_mode == MOTOR_PID && bit_is_set(error_state, 1) && m2_old != 0) motor2 = 0;
-       if (motor3_mode == MOTOR_PID && bit_is_set(error_state, 2) && m3_old != 0) motor3 = 0;
-       if (motor4_mode == MOTOR_PID && bit_is_set(error_state, 3) && m4_old != 0) motor4 = 0;
-
-       // if we start motor in error state: start with full power
-       if (motor1_mode == MOTOR_PID && bit_is_set(error_state, 0) && m1_old == 0 && motor1 != 0) motor1 = 255;
-       if (motor2_mode == MOTOR_PID && bit_is_set(error_state, 1) && m2_old == 0 && motor2 != 0) motor2 = 255;
-       if (motor3_mode == MOTOR_PID && bit_is_set(error_state, 2) && m3_old == 0 && motor3 != 0) motor3 = 255;
-       if (motor4_mode == MOTOR_PID && bit_is_set(error_state, 3) && m4_old == 0 && motor4 != 0) motor4 = 255;
+       if (motor1_mode == MOTOR_PID && bit_is_set(error_state, 0)) {
+               // if error and running: stop
+               if (m1_old != 0) motor1 = 0;
+               // if we start motor in error state: start with full power
+               else if (motor1 > 0) motor1 = 255;
+               else if (motor1 < 0) motor1 = -255;
+       }
+       if (motor2_mode == MOTOR_PID && bit_is_set(error_state, 1)) {
+               // if error and running: stop
+               if (m2_old != 0) motor2 = 0;
+               // if we start motor in error state: start with full power
+               else if (motor2 > 0) motor2 = 255;
+               else if (motor2 < 0) motor2 = -255;
+       }
+       if (motor3_mode == MOTOR_PID && bit_is_set(error_state, 2)) {
+               // if error and running: stop
+               if (m3_old != 0) motor3 = 0;
+               // if we start motor in error state: start with full power
+               else if (motor3 > 0) motor3 = 255;
+               else if (motor3 < 0) motor3 = -255;
+       }
+       if (motor4_mode == MOTOR_PID && bit_is_set(error_state, 3)) {
+               // if error and running: stop
+               if (m4_old != 0) motor4 = 0;
+               // if we start motor in error state: start with full power
+               else if (motor4 > 0) motor4 = 255;
+               else if (motor4 < 0) motor4 = -255;
+       }
 
        if (m1_old != motor1) { // update only when changed
                if (motor1 == 0) {
index 72a9ae8..0cebf42 100644 (file)
@@ -7,10 +7,10 @@
 :100060000C50B9918688083CA6AAAA2ABE000000B6\r
 :10007000803F45464765666700202B2D2E30313284\r
 :100080003334353637383968000011241FBECFE5C8\r
-:10009000D8E0DEBFCDBF10E0A0E6B0E0E4E5F8E2D6\r
+:10009000D8E0DEBFCDBF10E0A0E6B0E0E6E6F8E2D3\r
 :1000A00002C005900D92A837B107D9F721E0A8E763\r
 :1000B000B0E001C01D92A836B207E1F70E94290600\r
-:1000C0000C9428140C9400001F920F920FB60F92FC\r
+:1000C0000C9431140C9400001F920F920FB60F92F3\r
 :1000D00011242F933F934F935F936F937F938F934D\r
 :1000E0009F93AF93BF93EF93FF9381B1887F803845\r
 :1000F00081F040F4803609F0B5C385EC86BF1092DC\r
@@ -54,7 +54,7 @@
 :10035000A2009091A300A091A400B091A500BA2F93\r
 :10036000A92F982F8827BC01CD01622B6093A20092\r
 :100370007093A3008093A4009093A50023E33BE532\r
-:1003800042E855E40E9486100E945A0F7093CF00F5\r
+:1003800042E855E40E948F100E94630F7093CF00E3\r
 :100390006093CE007093CD006093CC0081E0809399\r
 :1003A000D7008093D6004EC283B190E0A0E0B0E0C9\r
 :1003B0000EC023B18091A2009091A300A091A4004F\r
 :100AB0000F900FBE0F901F9018959C018AB188610E\r
 :100AC0008AB9579A80B5866080BDC901A0E0B0E0C0\r
 :100AD0009C01AD0184E0220F331F441F551F8A95EE\r
-:100AE000D1F760E079E08DE390E00E944411DA01F3\r
+:100AE000D1F760E079E08DE390E00E944D11DA01EA\r
 :100AF000C9010197A109B109892F9A2FAB2FBB27F3\r
 :100B0000A7FDBA9580BD215029B987EF90E0909359\r
 :100B1000F4008093F3009093F6008093F50008951D\r
 :100B5000EC01CE012196FC012081222319F00E9494\r
 :100B60009005F7CFDF91CF9108955F9BFECF8CB1B9\r
 :100B700090E008950C94B5056AEB75E086E995E080\r
-:100B80000C94C711CF93DF93FC01E253FF4FA08178\r
+:100B80000C94D011CF93DF93FC01E253FF4FA0816F\r
 :100B9000B181EC01C453DF4F28813981A217B3071B\r
 :100BA000A1F05D9B12C02C912CB920813181AC0148\r
 :100BB00045535F4F2417350718F42F5F3F4F03C08D\r
 :100C800095E20E945D050E94BC0580E582B986B7A9\r
 :100C90008B7E86BF85EC86BF81EF8FBD89E08EBDE0\r
 :100CA0001BBC1ABC19BC18BC89E785BD13BC83BF2B\r
-:100CB0001CBE8EE690E00E944A1285B78F7885BFF1\r
-:100CC00084E089BF789422242A94312C8091E90011\r
-:100CD0008F3F41F48091E800853A21F4F894E0E0F8\r
-:100CE000F8E109958091F200882309F4E7C0F894AF\r
-:100CF0008090EA009090EB00A090EC00B090ED00A6\r
-:100D00006091EE007091EF008091F0009091F10001\r
-:100D10001092F20078942BED3FE049E450E40E94F9\r
-:100D2000861027EB3BE04DEB5EE30E94861020E04F\r
-:100D300030E040E05FE30E948610A50194010E942C\r
-:100D4000720E6B017C01A5019401C501B4010E94E2\r
-:100D5000720EA70196010E94710E23E33BE542E863\r
-:100D600055E40E9486104B015C0123E33BE542E819\r
-:100D700055E4C701B6010E9486106B017C01809189\r
-:100D8000A8008823B9F18091A80064E670E0681B90\r
-:100D90007109072E000C880B990B0E94920F9B0182\r
-:100DA000AC01C501B4010E94861020E030E048EC9F\r
-:100DB00052E40E94E80E0E945A0F7093CF00609395\r
-:100DC000CE008091A80064E670E0681B7109072ED0\r
-:100DD000000C880B990B0E94920F9B01AC01C7017C\r
-:100DE000B6010E94861020E030E048EC52E40E94F8\r
-:100DF000E80E0AC0C501B4010E945A0F7093CF00DB\r
-:100E00006093CE00C701B6010E945A0F7093C900CB\r
-:100E10006093C8008091A9008823B9F18091A9004E\r
-:100E200064E670E0681B7109072E000C880B990BB3\r
-:100E30000E94920F9B01AC01C501B4010E94861073\r
-:100E400020E030E048EC52E40E94E80E0E945A0F85\r
-:100E50007093CD006093CC008091A90064E670E0AF\r
-:100E6000681B7109072E000C880B990B0E94920FCA\r
-:100E70009B01AC01C701B6010E94861020E030E062\r
-:100E800048EC52E40E94E80E0AC0C501B4010E9479\r
-:100E90005A0F7093CD006093CC00C701B6010E9439\r
-:100EA0005A0F7093CB006093CA00F1E0F093D70023\r
-:100EB000F093D600F093D500F093D4008091C70052\r
-:100EC0008C3908F4E0C51092C700F8942091DE0038\r
-:100ED0003091DF003A8329834091DC005091DD009E\r
-:100EE0005C834B838091DA009091DB009E838D833D\r
-:100EF000E091D800F091D900F887EF837894809141\r
-:100F00009600909197005901A81AB90A809194000F\r
-:100F1000909195008A01081B190B80919200909185\r
-:100F20009300ED80FE80E81AF90A8091900090917C\r
-:100F300091006F01C81AD90AB5010B2C000C880B5F\r
-:100F4000990B0E94920F2AE037ED43E25CE30E9486\r
-:100F5000E80E0E945A0F69877A878B879C87B801B1\r
-:100F6000012E000C880B990B0E94920F2AE037ED9E\r
-:100F700043E25CE30E94E80E0E945A0F6D877E8771\r
-:100F80008F87988BB7010F2C000C880B990B0E9450\r
-:100F9000920F2AE037ED43E25CE30E94E80E0E94E4\r
-:100FA0005A0F698B7A8B8B8B9C8BB6010D2C000CA6\r
-:100FB000880B990B0E94920F2AE037ED43E25CE325\r
-:100FC0000E94E80E0E945A0F6D8B7E8B8F8B988F3C\r
-:100FD000B501600F711F072E000C880B990B0E9442\r
-:100FE000920F23E33BE542E056E40E94E80E4B01FA\r
-:100FF0005C01B7016C0D7D1D072E000C880B990B51\r
-:101000000E94920F23E33BE542E056E40E94E80E83\r
-:101010002B013C01C090B300D090B400E090B5002B\r
-:10102000F090B600A50194010E94710E27EB3BE001\r
-:101030004DEB5EE30E94E80E9B01AC01C701B601D7\r
-:101040000E94720E6B017C012BED3FE049EC50E4F5\r
-:101050000E94811018164CF42BED3FE049EC50E44F\r
-:10106000C701B6010E94710E12C02BED3FE049ECA2\r
-:1010700050ECC701B6010E94DE0E87FF0AC02BEDBF\r
-:101080003FE049EC50E4C701B6010E94720E6B01CB\r
-:101090007C01A3019201C501B4010E94720E20E0FF\r
-:1010A00030E040E05FE30E9486104B015C0140901D\r
-:1010B000BB005090BC006090BD007090BE00C701A6\r
-:1010C000B6010E94E30EA50194010E9486109B01C7\r
-:1010D000AC01C301B2010E94720E698F7A8F8B8FAF\r
-:1010E0009C8F4090B7005090B8006090B90070900D\r
-:1010F000BA00C701B6010E94F310A50194010E9435\r
-:1011000086109B01AC01C301B2010E94720E2B013B\r
-:101110003C010D851E8529853A85020F131F17FF97\r
-:1011200002C00F5F1F4F159507954D895E8989890C\r
-:101130009A89480F591F57FF02C04F5F5F4FFA014E\r
-:10114000F595E795FE8FED8FBF01600F711F072E9C\r
-:10115000000C880B990B0E94920F23E33BE542E0C1\r
-:1011600056E40E94E80E4B015C016D8D7E8D601B84\r
-:10117000710B072E000C880B990B0E94920F29E926\r
-:1011800035E347E955E40E94E80EF894C092B300B5\r
-:10119000D092B400E092B500F092B600298D3A8D5D\r
-:1011A0004B8D5C8D2093BB003093BC004093BD0001\r
-:1011B0005093BE004092B7005092B8006092B900C0\r
-:1011C0007092BA0049855A855093C6004093C50075\r
-:1011D000ED85FE85F093C400E093C30029893A8928\r
-:1011E0003093C2002093C1004D895E895093C000A6\r
-:1011F0004093BF008092AF009092B000A092B100E7\r
-:10120000B092B2006093AB007093AC008093AD00DD\r
-:101210009093AE00789489819A81909397008093FF\r
-:101220009600EB81FC81F0939500E09394002D8172\r
-:101230003E8130939300209392004F8158855093C4\r
-:101240009100409390008091D700813009F094C0C4\r
-:101250008091CE009091CF00892B89F41092E70005\r
-:101260001092E60010928F0010928E0010928A0069\r
-:1012700010928B0010928C0010928D007DC02091F6\r
-:10128000CE003091CF008091C5009091C6008901B9\r
-:10129000081B190BB801012E000C880B990BC0908C\r
-:1012A0008A00D0908B00E0908C00F0908D00C60EEC\r
-:1012B000D71EE81EF91EC0928A00D0928B00E092E1\r
-:1012C0008C00F0928D000E94920F2CEE31E548E3E5\r
-:1012D0005DE30E9486104B015C01C701B6010E94CC\r
-:1012E000920F2EE830E44CEB5CE30E9486109B01E9\r
-:1012F000AC01C501B4010E94720E6B017C018091AA\r
-:101300008E0090918F00B801681B790B072E000C9E\r
-:10131000880B990B0E94920F2AE037ED43E25DE3C0\r
-:101320000E9486109B01AC01C701B6010E94720E9B\r
-:101330000E945A0F7093E7006093E60010938F00AD\r
-:1013400000938E008091E6009091E7008F3F910519\r
-:1013500031F02CF03092E7002092E6000DC0809131\r
-:10136000E6009091E70081309F4F34F481E09FEFD9\r
-:101370009093E7008093E6008091D600813009F0D9\r
-:1013800094C08091CC009091CD00892B89F410926B\r
-:10139000E5001092E40010928900109288001092EB\r
-:1013A00084001092850010928600109287007DC004\r
-:1013B0002091CC003091CD008091C3009091C40069\r
-:1013C0008901081B190BB801012E000C880B990B21\r
-:1013D000C0908400D0908500E0908600F090870057\r
-:1013E000C60ED71EE81EF91EC0928400D09285005A\r
-:1013F000E0928600F09287000E94920F2CEE31E579\r
-:1014000048E35DE30E9486104B015C01C701B60111\r
-:101410000E94920F2EE830E44CEB5CE30E948610B1\r
-:101420009B01AC01C501B4010E94720E6B017C01ED\r
-:101430008091880090918900B801681B790B072E74\r
-:10144000000C880B990B0E94920F2AE037ED43E2C3\r
-:101450005DE30E9486109B01AC01C701B6010E94AA\r
-:10146000720E0E945A0F7093E5006093E40010938F\r
-:101470008900009388008091E4009091E5008F3FFF\r
-:10148000910531F02CF03092E5002092E4000DC07F\r
-:101490008091E4009091E50081309F4F34F421E089\r
-:1014A0003FEF3093E5002093E4008091D500813038\r
-:1014B00009F094C08091CA009091CB00892B89F4E7\r
-:1014C0001092E3001092E2001092830010928200CA\r
-:1014D00010927E0010927F00109280001092810086\r
-:1014E0007DC02091CA003091CB008091C1009091C5\r
-:1014F000C2008901081B190BB801012E000C880BD2\r
-:10150000990BC0907E00D0907F00E0908000F0901A\r
-:101510008100C60ED71EE81EF91EC0927E00D09232\r
-:101520007F00E0928000F09281000E94920F2CEEEA\r
-:1015300031E548E35DE30E9486104B015C01C70181\r
-:10154000B6010E94920F2EE830E44CEB5CE30E945F\r
-:1015500086109B01AC01C501B4010E94720E6B01A3\r
-:101560007C018091820090918300B801681B790B07\r
-:10157000072E000C880B990B0E94920F2AE037ED82\r
-:1015800043E25DE30E9486109B01AC01C701B601F6\r
-:101590000E94720E0E945A0F7093E3006093E20063\r
-:1015A00010938300009382008091E2009091E30009\r
-:1015B0008F3F910531F02CF03092E3002092E20051\r
-:1015C0000DC08091E2009091E30081309F4F34F490\r
-:1015D00041E05FEF5093E3004093E2008091D4003C\r
-:1015E000813009F094C08091C8009091C900892B86\r
-:1015F00089F41092E1001092E00010927D001092A8\r
-:101600007C00109278001092790010927A0010926B\r
-:101610007B007DC02091C8003091C9008091BF003F\r
-:101620009091C0008901081B190BB801012E000C14\r
-:10163000880B990BC0907800D0907900E0907A00E8\r
-:10164000F0907B00C60ED71EE81EF91EC0927800EF\r
-:10165000D0927900E0927A00F0927B000E94920F83\r
-:101660002CEE31E548E35DE30E9486104B015C01FE\r
-:10167000C701B6010E94920F2EE830E44CEB5CE308\r
-:101680000E9486109B01AC01C501B4010E94720E3C\r
-:101690006B017C0180917C0090917D00B801681BFA\r
-:1016A000790B072E000C880B990B0E94920F2AE0F1\r
-:1016B00037ED43E25DE30E9486109B01AC01C70158\r
-:1016C000B6010E94720E0E945A0F7093E10060935F\r
-:1016D000E00010937D0000937C008091E0009091E9\r
-:1016E000E1008F3F910531F02CF03092E100209223\r
-:1016F000E0000DC08091E0009091E10081309F4FAB\r
-:1017000034F481E09FEF9093E1008093E00090B388\r
-:1017100026B39074892F90E033E0959587953A959C\r
-:10172000E1F7922F9770892B80958F708093A70097\r
-:101730002091D7008091660090916700213051F48C\r
-:101740002091A70020FF06C0009721F01092E7002B\r
-:101750001092E6002091D600213071F42091A7006C\r
-:1017600021FF0AC02091640030916500232B21F0F5\r
-:101770001092E5001092E4002091D500213071F420\r
-:101780002091A70022FF0AC02091620030916300DF\r
-:10179000232B21F01092E3001092E2002091D4005C\r
-:1017A000213071F42091A70023FF0AC0209160002E\r
-:1017B00030916100232B21F01092E1001092E000A3\r
-:1017C0002091D700213081F42091A70020FF0CC088\r
-:1017D000009751F42091E6003091E700232B21F08F\r
-:1017E0003092E7002092E6002091D6002130A1F44B\r
-:1017F0002091A70021FF10C0209164003091650066\r
-:10180000232B51F42091E4003091E500232B21F0AB\r
-:101810003092E5002092E4002091D5002130A1F41F\r
-:101820002091A70022FF10C0209162003091630038\r
-:10183000232B51F42091E2003091E300232B21F07F\r
-:101840003092E3002092E2002091D4002130A1F4F4\r
-:101850002091A70023FF10C020916000309161000B\r
-:10186000232B51F42091E0003091E100232B21F053\r
-:101870003092E1002092E0002091E6003091E700F4\r
-:1018800082179307B9F18091E6009091E700892BC8\r
-:1018900019F485B38C6017C08091D300811107C003\r
-:1018A0008091E6009091E7001816190654F0809197\r
-:1018B000D300882351F08091E6009091E70097FFD4\r
-:1018C00004C085B3837F85BB02C0AA98AB9A809180\r
-:1018D000E6009091E7009093670080936600809106\r
-:1018E000E6009091E70097FF03C0919581959109DB\r
-:1018F0009BBD8ABD8091E4009091E5002091640039\r
-:101900003091650028173907B9F18091E400909172\r
-:10191000E500892B19F485B3806317C08091D2004C\r
-:10192000811107C08091E4009091E5001816190616\r
-:1019300054F08091D200882351F08091E40090917E\r
-:10194000E50097FF04C085B38F7C85BB02C0AC98CF\r
-:10195000AD9A8091E4009091E500909365008093AA\r
-:1019600064008091E4009091E50097FF03C0919599\r
-:101970008195910999BD88BD8091E2009091E30025\r
-:10198000209162003091630028173907B1F18091EE\r
-:10199000E2009091E300892B19F485B3806C17C0A5\r
-:1019A0008091D100811107C08091E2009091E30005\r
-:1019B0001816190654F08091D100882351F08091B7\r
-:1019C000E2009091E30097FF04C085B38F7385BB5D\r
-:1019D00002C0AE98AF9A8091E2009091E30090939C\r
-:1019E0006300809362008091E2009091E30097FF92\r
-:1019F00003C091958195910983BD8091E0009091FC\r
-:101A0000E100209160003091610028173907B1F1A1\r
-:101A10008091E0009091E100892B19F482B38C60F1\r
-:101A200017C08091D000811107C08091E000909193\r
-:101A3000E1001816190654F08091D000882351F067\r
-:101A40008091E0009091E10097FF04C082B3837F12\r
-:101A500082BB02C09298939A8091E0009091E1003D\r
-:101A600090936100809360008091E0009091E1008C\r
-:101A700097FF03C09195819591098CBF8091AA0031\r
-:101A80008F5F8093AA0085B7806885BF889585B7EA\r
-:101A90008F7785BF1BC9ACE0B0E0E1E5FDE00C94B9\r
-:101AA00067116C015B017A01FC0117821682838148\r
-:101AB00081FF0EC1CE0101964C01F6010381F501B3\r
-:101AC00003FD159103FF11915F01112309F4FCC07F\r
-:101AD000153249F403FD159103FF11915F01153291\r
-:101AE00011F020E01BC0B601812F90E00E9412127D\r
-:101AF00037017301E2CF112309F4E6C0612F70E0D2\r
-:101B000089E790E02C870E94BC112C85892B49F035\r
-:101B1000F50103FD159103FF11915F0127FFEBCF45\r
-:101B200009C0133229F01C3609F0D5C02068F0CF67\r
-:101B300020E1EECF022F112309F4C6C0612F70E01F\r
-:101B400082E790E02C870E94BC112C85892B41F004\r
-:101B50003701F4E06F0E711CB6018FE390E011C005\r
-:101B6000133639F0133781F0133519F5022F016060\r
-:101B70000BC0370182E0680E711CB601F70180814D\r
-:101B800091810E941212B5CF3701F2E06F0E711CE5\r
-:101B9000F701E080F180F70100FD859100FF819160\r
-:101BA0007F01882309F4A5CFB60190E00E941212AC\r
-:101BB000F2CF143611F0193629F5370127FF09C085\r
-:101BC000F4E06F0E711CF701608171818281938155\r
-:101BD0000AC0F2E06F0E711CF70160817181072E5F\r
-:101BE000000C880B990B022F0F7E97FF08C0909571\r
-:101BF0008095709561957F4F8F4F9F4F00642AE0CD\r
-:101C000030E033C0103799F040F41835B1F01F368A\r
-:101C100009F05AC028E030E014C0153719F0183721\r
-:101C200041F052C0022F0F7E2AE030E00AC0022F9E\r
-:101C30000061046220E130E004C0022F046020E172\r
-:101C400032E0370107FF09C0F4E06F0E711CF701A5\r
-:101C5000608171818281938108C0F2E06F0E711CF6\r
-:101C6000F7016081718180E090E0A4010E947A1206\r
-:101C7000182F181906FF05C0B6018DE290E00E94EA\r
-:101C8000121204FF15C0FE01E10FF11D80818033A7\r
-:101C900079F0B60180E390E00E94121202FF08C0C2\r
-:101CA0000072802F90E0B601885A9F4F0E94121256\r
-:101CB0001150F401E10FF11D8081B60190E00E9406\r
-:101CC00012121111F5CF15CFF6018681978105C04B\r
-:101CD0008FEF9FEF02C0022F31CF2C96EEE00C94D5\r
-:101CE00083115058BB27AA270E94890E0C943310E9\r
-:101CF0000E94FA0F38F00E94011020F039F49F3F43\r
-:101D000019F426F40C94F70F0EF4E095E7FB0C940D\r
-:101D1000F10FE92F0E94581058F3BA1762077307A2\r
-:101D20008407950720F079F4A6F50C947A100EF448\r
-:101D3000E0950B2EBA2FA02D0B01B90190010C01DB\r
-:101D4000CA01A0011124FF27591B99F0593F50F4F3\r
-:101D5000503E68F11A16F040A22F232F342F44274B\r
-:101D6000585FF3CF469537952795A795F040539543\r
-:101D7000C9F77EF41F16BA0B620B730B840BBAF013\r
-:101D80009150A1F0FF0FBB1F661F771F881FC2F77E\r
-:101D90000EC0BA0F621F731F841F48F48795779592\r
-:101DA0006795B795F7959E3F08F0B0CF9395880F4C\r
-:101DB00008F09927EE0F9795879508950E94CD0F0B\r
-:101DC00008F481E008950E940A10E3950C944410F1\r
-:101DD0000E94FC0E0C9433100E94011058F00E94D7\r
-:101DE000FA0F40F029F45F3F29F00C94F10F5111E4\r
-:101DF0000C947B100C94F70F0E94581068F39923F1\r
-:101E0000B1F3552391F3951B550BBB27AA276217F6\r
-:101E10007307840738F09F5F5F4F220F331F441F03\r
-:101E2000AA1FA9F335D00E2E3AF0E0E832D0915037\r
-:101E30005040E695001CCAF72BD0FE2F29D0660F24\r
-:101E4000771F881FBB1F261737074807AB07B0E867\r
-:101E500009F0BB0B802DBF01FF2793585F4F3AF06D\r
-:101E60009E3F510578F00C94F10F0C947B105F3F6E\r
-:101E7000E4F3983ED4F3869577956795B795F795F3\r
-:101E80009F5FC9F7880F911D9695879597F90895DB\r
-:101E9000E1E0660F771F881FBB1F62177307840777\r
-:101EA000BA0720F0621B730B840BBA0BEE1F88F786\r
-:101EB000E09508950E94610F6894B1110C947B1015\r
-:101EC00008950E94601088F09F5798F0B92F9927C5\r
-:101ED000B751B0F0E1F0660F771F881F991F1AF015\r
-:101EE000BA95C9F714C0B13091F00E947A10B1E0F0\r
-:101EF00008950C947A10672F782F8827B85F39F0EF\r
-:101F0000B93FCCF3869577956795B395D9F73EF4AD\r
-:101F100090958095709561957F4F8F4F9F4F089555\r
-:101F2000E89409C097FB3EF4909580957095619573\r
-:101F30007F4F8F4F9F4F9923A9F0F92F96E9BB2729\r
-:101F40009395F695879577956795B795F111F8CFA5\r
-:101F5000FAF4BB0F11F460FF1BC06F5F7F4F8F4F10\r
-:101F60009F4F16C0882311F096E911C0772321F006\r
-:101F70009EE8872F762F05C0662371F096E8862F9E\r
-:101F800070E060E02AF09A95660F771F881FDAF7F5\r
-:101F9000880F9695879597F90895990F0008550F22\r
-:101FA000AA0BE0E8FEEF16161706E807F907C0F0DF\r
-:101FB00012161306E407F50798F0621B730B840BE7\r
-:101FC000950B39F40A2661F0232B242B252B21F4C1\r
-:101FD00008950A2609F4A140A6958FEF811D811D61\r
-:101FE000089597F99F6780E870E060E008959FEF9B\r
-:101FF00080EC089500240A941616170618060906A0\r
-:10200000089500240A94121613061406050608956E\r
-:102010000C94F70F0E946010D8F3E894E0E0BB271F\r
-:102020009F57F0F02AED3FE049EC06C0EE0FBB0FE2\r
-:10203000661F771F881F28F0B23A6207730784076C\r
-:1020400028F0B25A620B730B840BE3959A9572F7E2\r
-:10205000803830F49A95BB0F661F771F881FD2F720\r
-:1020600090480C94FD10092E0394000C11F4882361\r
-:1020700052F0BB0F40F4BF2B11F460FF04C06F5F40\r
-:102080007F4F8F4F9F4F0895EF93E0FF07C0A2EA65\r
-:102090002AED3FE049EC5FEB0E94890E0E9433106D\r
-:1020A0000F90039401FC9058E4E5F0E00C940911C2\r
-:1020B00057FD9058440F551F59F05F3F71F04795F9\r
-:1020C000880F97FB991F61F09F3F79F087950895DE\r
-:1020D000121613061406551FF2CF4695F1DF08C0FD\r
-:1020E000161617061806991FF1CF8695710561051A\r
-:1020F00008940895E894BB2766277727CB0197F9C2\r
-:1021000008950E94CD0F08F48FEF08950E94991052\r
-:102110000C9433100E94FA0F38F00E94011020F046\r
-:10212000952311F00C94F10F0C94F70F11240C94DB\r
-:102130007B100E94581070F3959FC1F3950F50E0EB\r
-:10214000551F629FF001729FBB27F00DB11D639F69\r
-:10215000AA27F00DB11DAA1F649F6627B00DA11D0F\r
-:10216000661F829F2227B00DA11D621F739FB00DB5\r
-:10217000A11D621F839FA00D611D221F749F332725\r
-:10218000A00D611D231F849F600D211D822F762FBE\r
-:102190006A2F11249F5750409AF0F1F088234AF09B\r
-:1021A000EE0FFF1FBB1F661F771F881F9150504007\r
-:1021B000A9F79E3F510580F00C94F10F0C947B1011\r
-:1021C0005F3FE4F3983ED4F3869577956795B7958E\r
-:1021D000F795E7959F5FC1F7FE2B880F911D9695A8\r
-:1021E000879597F908959F930E940A100F9007FC16\r
-:1021F000EE5F0C9444109F3F31F0915020F487958E\r
-:1022000077956795B795880F911D9695879597F95E\r
-:1022100008959F938F937F936F93FF93EF939B0109\r
-:10222000AC010E948610EF91FF910E941D112F9129\r
-:102230003F914F915F910C948610DF93CF931F9342\r
-:102240000F93FF92EF92DF927B018C01689406C09E\r
-:10225000DA2EEF010E949910FE01E894A5912591D4\r
-:10226000359145915591A6F3EF010E94890EFE012B\r
-:102270009701A801DA9469F7DF90EF90FF900F9132\r
-:102280001F91CF91DF910895052E97FB1EF40094C6\r
-:102290000E945B1157FD07D00E949A1107FC03D0E2\r
-:1022A0004EF40C945B1150954095309521953F4F1D\r
-:1022B0004F4F5F4F089590958095709561957F4F32\r
-:1022C0008F4F9F4F08952F923F924F925F926F9240\r
-:1022D0007F928F929F92AF92BF92CF92DF92EF92B6\r
-:1022E000FF920F931F93CF93DF93CDB7DEB7CA1B37\r
-:1022F000DB0B0FB6F894DEBF0FBECDBF09942A8862\r
-:10230000398848885F846E847D848C849B84AA8409\r
-:10231000B984C884DF80EE80FD800C811B81AA8196\r
-:10232000B981CE0FD11D0FB6F894DEBF0FBECDBF61\r
-:10233000ED010895A1E21A2EAA1BBB1BFD010DC0E1\r
-:10234000AA1FBB1FEE1FFF1FA217B307E407F50765\r
-:1023500020F0A21BB30BE40BF50B661F771F881F41\r
-:10236000991F1A9469F760957095809590959B01D7\r
-:10237000AC01BD01CF010895FC010590061621F0C6\r
-:102380000020D9F7C00108953197CF0108950F9328\r
-:102390001F93CF93DF93009731F46115710519F402\r
-:1023A00080E090E03AC08B01EC016EE070E081E0EB\r
-:1023B00090E00E94D812FC01892B91F380E883837E\r
-:1023C0000115110571F01387028781E883838091DD\r
-:1023D0005E0190915F01892B21F4F0935F01E093FE\r
-:1023E0005E012097C9F0D187C08783818260838393\r
-:1023F0008091600190916101892B71F4F0936101EA\r
-:10240000E09360018091620190916301892B21F436\r
-:10241000F0936301E0936201CF01DF91CF911F91AF\r
-:102420000F9108950F931F93CF93DF93FB012381A7\r
-:1024300021FD03C08FEF9FEF28C022FF16C0468109\r
-:102440005781248135814217530744F4A081B1811B\r
-:102450009D012F5F3F4F318320838C9326813781ED\r
-:102460002F5F3F4F3783268310C0EB01092F182FB2\r
-:102470000084F185E02D0995892BE1F68E819F81FD\r
-:1024800001969F838E83812F902FDF91CF911F9193\r
-:102490000F9108950F931F93CF93DF93E091600105\r
-:1024A000F0916101238121FF1BC08C01D0E0C0E0CD\r
-:1024B000F80181918F016091600170916101DB01F0\r
-:1024C0001896ED91FC911997882331F00995892B85\r
-:1024D00079F3DFEFCFEFECCF8AE00995892B19F084\r
-:1024E0008FEF9FEF02C08D2F9C2FDF91CF911F9117\r
-:1024F0000F910895FA01AA27283051F1203181F176\r
-:10250000E8946F936E7F6E5F7F4F8F4F9F4FAF4FFB\r
-:10251000B1E03ED0B4E03CD0670F781F891F9A1F0E\r
-:10252000A11D680F791F8A1F911DA11D6A0F711DC2\r
-:10253000811D911DA11D20D009F468943F912AE0CE\r
-:10254000269F11243019305D3193DEF6CF010895B6\r
-:10255000462F4770405D4193B3E00FD0C9F7F6CFE7\r
-:10256000462F4F70405D4A3318F0495D31FD4052AF\r
-:10257000419302D0A9F7EACFB4E0A6959795879545\r
-:1025800077956795BA95C9F7009761057105089524\r
-:102590009B01AC010A2E06945795479537952795D0\r
-:1025A000BA95C9F7620F731F841F951FA01D089568\r
-:1025B0000F931F93CF93DF93869F8001879F100D0A\r
-:1025C000969F100D1124C8010E94F412EC0100978F\r
-:1025D00029F0A80160E070E00E942114CE01DF9193\r
-:1025E000CF911F910F910895CF93DF938230910582\r
-:1025F00010F482E090E0E0916601F091670120E044\r
-:1026000030E0C0E0D0E0309711F1408151814817AF\r
-:102610005907C0F04817590761F4828193812097C8\r
-:1026200019F09B838A832BC0909367018093660186\r
-:1026300026C02115310519F04217530718F49A01E5\r
-:10264000BE01DF01EF010280F381E02DDCCF211517\r
-:10265000310509F1281B390B2430310590F412960D\r
-:102660008D919C9113976115710521F0FB01938366\r
-:10267000828304C09093670180936601FD013296C6\r
-:1026800044C0FD01E20FF31F819391932250310961\r
-:102690002D933C933AC02091640130916501232B26\r
-:1026A00041F420916A0030916B00309365012093D2\r
-:1026B000640120916800309169002115310541F4D1\r
-:1026C0002DB73EB740916C0050916D00241B350B27\r
-:1026D000E0916401F0916501E217F307A0F42E1B6D\r
-:1026E0003F0B2817390778F0AC014E5F5F4F241776\r
-:1026F000350748F04E0F5F1F50936501409364010A\r
-:102700008193919302C0E0E0F0E0CF01DF91CF919F\r
-:1027100008950F931F93CF93DF93009709F48CC014\r
-:10272000FC013297138212820091660110916701B9\r
-:102730000115110581F420813181820F931F2091B1\r
-:102740006401309165012817390779F5F093650127\r
-:10275000E093640171C0D80140E050E0AE17BF07BC\r
-:1027600050F412962D913C911397AD01211531052E\r
-:1027700009F1D901F3CF9D01DA013383228360810E\r
-:102780007181860F971F8217930769F4EC012881E6\r
-:102790003981260F371F2E5F3F4F318320838A8177\r
-:1027A0009B8193838283452B29F4F0936701E09307\r
-:1027B000660142C01396FC93EE931297ED01499186\r
-:1027C00059919E01240F351FE217F30771F48081A0\r
-:1027D0009181840F951F029611969C938E9382810E\r
-:1027E000938113969C938E931297E0E0F0E0D801CA\r
-:1027F00012968D919C911397009719F0F8018C0116\r
-:10280000F6CF8D919C9198012E5F3F4F820F931FC1\r
-:1028100020916401309165012817390769F43097D8\r
-:1028200029F4109267011092660102C0138212828D\r
-:102830001093650100936401DF91CF911F910F9177\r
-:102840000895DC0101C06D9341505040E0F70895B8\r
-:04285000F894FFCF2A\r
-:1028540000800080008000800000680120000D0AD4\r
-:0828640053746172740D000051\r
+:100CB0001CBE8EE690E00E94531285B78F7885BFE8\r
+:100CC00084E089BF78942224239433243A94809139\r
+:100CD000E9008F3F41F48091E800853A21F4F894CF\r
+:100CE000E0E0F8E109958091F200882309F4E7C07B\r
+:100CF000F8948090EA009090EB00A090EC00B09007\r
+:100D0000ED006091EE007091EF008091F000909105\r
+:100D1000F1001092F20078942BED3FE049E450E4AA\r
+:100D20000E948F1027EB3BE04DEB5EE30E948F109B\r
+:100D300020E030E040E05FE30E948F10A5019401C5\r
+:100D40000E947B0E6B017C01A5019401C501B401D9\r
+:100D50000E947B0EA70196010E947A0E23E33BE5D9\r
+:100D600042E855E40E948F104B015C0123E33BE510\r
+:100D700042E855E4C701B6010E948F106B017C0167\r
+:100D80008091A8008823B9F18091A80064E670E002\r
+:100D9000681B7109072E000C880B990B0E949B0F92\r
+:100DA0009B01AC01C501B4010E948F1020E030E02E\r
+:100DB00048EC52E40E94F10E0E94630F7093CF0042\r
+:100DC0006093CE008091A80064E670E0681B710912\r
+:100DD000072E000C880B990B0E949B0F9B01AC0106\r
+:100DE000C701B6010E948F1020E030E048EC52E4C9\r
+:100DF0000E94F10E0AC0C501B4010E94630F7093F6\r
+:100E0000CF006093CE00C701B6010E94630F7093BC\r
+:100E1000C9006093C8008091A9008823B9F180912E\r
+:100E2000A90064E670E0681B7109072E000C880BAE\r
+:100E3000990B0E949B0F9B01AC01C501B4010E945C\r
+:100E40008F1020E030E048EC52E40E94F10E0E9446\r
+:100E5000630F7093CD006093CC008091A90064E68D\r
+:100E600070E0681B7109072E000C880B990B0E941B\r
+:100E70009B0F9B01AC01C701B6010E948F1020E0BF\r
+:100E800030E048EC52E40E94F10E0AC0C501B40102\r
+:100E90000E94630F7093CD006093CC00C701B60130\r
+:100EA0000E94630F7093CB006093CA00F1E0F0934F\r
+:100EB000D700F093D600F093D500F093D400809142\r
+:100EC000C7008C3908F4E8C51092C700F894209147\r
+:100ED000DE003091DF003A8329834091DC0050919D\r
+:100EE000DD005C834B838091DA009091DB009E8370\r
+:100EF0008D83E091D800F091D900F887EF83789442\r
+:100F000080919600909197005901A81AB90A809192\r
+:100F10009400909195008A01081B190B8091920012\r
+:100F200090919300ED80FE80E81AF90A809190007C\r
+:100F3000909191006F01C81AD90AB5010B2C000CD1\r
+:100F4000880B990B0E949B0F2AE037ED43E25CE38C\r
+:100F50000E94F10E0E94630F69877A878B879C87B6\r
+:100F6000B801012E000C880B990B0E949B0F2AE000\r
+:100F700037ED43E25CE30E94F10E0E94630F6D8740\r
+:100F80007E878F87988BB7010F2C000C880B990BED\r
+:100F90000E949B0F2AE037ED43E25CE30E94F10ED2\r
+:100FA0000E94630F698B7A8B8B8B9C8BB6010D2C07\r
+:100FB000000C880B990B0E949B0F2AE037ED43E24F\r
+:100FC0005CE30E94F10E0E94630F6D8B7E8B8F8B12\r
+:100FD000988FB501600F711F072E000C880B990BBD\r
+:100FE0000E949B0F23E33BE542E056E40E94F10E92\r
+:100FF0004B015C01B7016C0D7D1D072E000C880BA9\r
+:10100000990B0E949B0F23E33BE542E056E40E94CC\r
+:10101000F10E2B013C01C090B300D090B400E090E1\r
+:10102000B500F090B600A50194010E947A0E27EB5E\r
+:101030003BE04DEB5EE30E94F10E9B01AC01C7016A\r
+:10104000B6010E947B0E6B017C012BED3FE049EC69\r
+:1010500050E40E948A1018164CF42BED3FE049EC46\r
+:1010600050E4C701B6010E947A0E12C02BED3FE09A\r
+:1010700049EC50ECC701B6010E94E70E87FF0AC099\r
+:101080002BED3FE049EC50E4C701B6010E947B0E16\r
+:101090006B017C01A3019201C501B4010E947B0E8A\r
+:1010A00020E030E040E05FE30E948F104B015C01E4\r
+:1010B0004090BB005090BC006090BD007090BE009E\r
+:1010C000C701B6010E94EC0EA50194010E948F1089\r
+:1010D0009B01AC01C301B2010E947B0E698F7A8F24\r
+:1010E0008B8F9C8F4090B7005090B8006090B900F3\r
+:1010F0007090BA00C701B6010E94FC10A5019401CE\r
+:101100000E948F109B01AC01C301B2010E947B0EB3\r
+:101110002B013C010D851E8529853A85020F131F81\r
+:1011200017FF02C00F5F1F4F159507954D895E8908\r
+:1011300089899A89480F591F57FF02C04F5F5F4F37\r
+:10114000FA01F595E795FE8FED8FBF01600F711FD6\r
+:10115000072E000C880B990B0E949B0F23E33BE5A5\r
+:1011600042E056E40E94F10E4B015C016D8D7E8DD4\r
+:10117000601B710B072E000C880B990B0E949B0FB4\r
+:1011800029E935E347E955E40E94F10EF894C0924D\r
+:10119000B300D092B400E092B500F092B600298D71\r
+:1011A0003A8D4B8D5C8D2093BB003093BC004093F7\r
+:1011B000BD005093BE004092B7005092B8006092BC\r
+:1011C000B9007092BA0049855A855093C600409381\r
+:1011D000C500ED85FE85F093C400E093C300298926\r
+:1011E0003A893093C2002093C1004D895E895093A3\r
+:1011F000C0004093BF008092AF009092B000A092D8\r
+:10120000B100B092B2006093AB007093AC008093D9\r
+:10121000AD009093AE00789489819A819093970065\r
+:1012200080939600EB81FC81F0939500E09394000D\r
+:101230002D813E8130939300209392004F815885F9\r
+:1012400050939100409390008091D700813009F035\r
+:1012500094C08091CE009091CF00892B89F4109298\r
+:10126000E7001092E60010928F0010928E0010920C\r
+:101270008A0010928B0010928C0010928D007DC01D\r
+:101280002091CE003091CF008091C5009091C60092\r
+:101290008901081B190BB801012E000C880B990B52\r
+:1012A000C0908A00D0908B00E0908C00F0908D0070\r
+:1012B000C60ED71EE81EF91EC0928A00D0928B007F\r
+:1012C000E0928C00F0928D000E949B0F2CEE31E595\r
+:1012D00048E35DE30E948F104B015C01C701B6013A\r
+:1012E0000E949B0F2EE830E44CEB5CE30E948F10D1\r
+:1012F0009B01AC01C501B4010E947B0E6B017C0116\r
+:1013000080918E0090918F00B801681B790B072E99\r
+:10131000000C880B990B0E949B0F2AE037ED43E2EB\r
+:101320005DE30E948F109B01AC01C701B6010E94D2\r
+:101330007B0E0E94630F7093E7006093E6001093AA\r
+:101340008F0000938E008091E6009091E7008F3F20\r
+:10135000910541F03CF08FEF90E09093E70080938F\r
+:10136000E6000BC08091E6009091E70081309F4F2E\r
+:1013700024F43092E7002092E6008091D60081307C\r
+:1013800009F094C08091CC009091CD00892B89F414\r
+:101390001092E5001092E4001092890010928800EB\r
+:1013A000109284001092850010928600109287009F\r
+:1013B0007DC02091CC003091CD008091C3009091F0\r
+:1013C000C4008901081B190BB801012E000C880B01\r
+:1013D000990BC0908400D0908500E0908600F0903A\r
+:1013E0008700C60ED71EE81EF91EC0928400D09258\r
+:1013F0008500E0928600F09287000E949B0F2CEE01\r
+:1014000031E548E35DE30E948F104B015C01C701A9\r
+:10141000B6010E949B0F2EE830E44CEB5CE30E9487\r
+:101420008F109B01AC01C501B4010E947B0E6B01C2\r
+:101430007C018091880090918900B801681B790B2C\r
+:10144000072E000C880B990B0E949B0F2AE037EDAA\r
+:1014500043E25DE30E948F109B01AC01C701B6011E\r
+:101460000E947B0E0E94630F7093E5006093E4007E\r
+:1014700010938900009388008091E4009091E5002A\r
+:101480008F3F910541F03CF02FEF30E03093E500C5\r
+:101490002093E4000BC08091E4009091E50081303E\r
+:1014A0009F4F24F43092E5002092E4008091D50013\r
+:1014B000813009F094C08091CA009091CB00892BB3\r
+:1014C00089F41092E3001092E200109283001092CF\r
+:1014D000820010927E0010927F0010928000109285\r
+:1014E00081007DC02091CA003091CB008091C10065\r
+:1014F0009091C2008901081B190BB801012E000C44\r
+:10150000880B990BC0907E00D0907F00E090800007\r
+:10151000F0908100C60ED71EE81EF91EC0927E0014\r
+:10152000D0927F00E0928000F09281000E949B0F99\r
+:101530002CEE31E548E35DE30E948F104B015C0126\r
+:10154000C701B6010E949B0F2EE830E44CEB5CE330\r
+:101550000E948F109B01AC01C501B4010E947B0E5B\r
+:101560006B017C018091820090918300B801681B1F\r
+:10157000790B072E000C880B990B0E949B0F2AE019\r
+:1015800037ED43E25DE30E948F109B01AC01C70180\r
+:10159000B6010E947B0E0E94630F7093E30060937C\r
+:1015A000E20010938300009382008091E20090910A\r
+:1015B000E3008F3F910541F03CF04FEF50E0509336\r
+:1015C000E3004093E2000BC08091E2009091E300C1\r
+:1015D00081309F4F24F43092E3002092E20080910A\r
+:1015E000D400813009F094C08091C8009091C90066\r
+:1015F000892B89F41092E1001092E00010927D0096\r
+:1016000010927C00109278001092790010927A006B\r
+:1016100010927B007DC02091C8003091C90080915C\r
+:10162000BF009091C0008901081B190BB801012E61\r
+:10163000000C880B990BC0907800D0907900E09056\r
+:101640007A00F0907B00C60ED71EE81EF91EC092ED\r
+:101650007800D0927900E0927A00F0927B000E94AC\r
+:101660009B0F2CEE31E548E35DE30E948F104B01A8\r
+:101670005C01C701B6010E949B0F2EE830E44CEBE1\r
+:101680005CE30E948F109B01AC01C501B4010E9474\r
+:101690007B0E6B017C0180917C0090917D00B801F4\r
+:1016A000681B790B072E000C880B990B0E949B0F6F\r
+:1016B0002AE037ED43E25DE30E948F109B01AC010D\r
+:1016C000C701B6010E947B0E0E94630F7093E10078\r
+:1016D0006093E00010937D0000937C008091E00017\r
+:1016E0009091E1008F3F910541F03CF08FEF90E049\r
+:1016F0009093E1008093E0000BC08091E000909116\r
+:10170000E10081309F4F24F43092E1002092E0000C\r
+:1017100090B326B39074892F90E033E09595879528\r
+:101720003A95E1F7922F9770892B80958F7080936F\r
+:10173000A7002091D700809166009091670021302A\r
+:1017400019F52091A70020FF1FC0009729F01092E3\r
+:10175000E7001092E60018C02091E6003091E70003\r
+:10176000121613063CF42FEF30E03093E70020937D\r
+:10177000E6000AC02091E6003091E70037FF04C080\r
+:101780003092E7002092E6002091D600213039F512\r
+:101790002091A70021FF23C02091640030916500B3\r
+:1017A000232B29F01092E5001092E40018C020913C\r
+:1017B000E4003091E500121613063CF44FEF50E0C0\r
+:1017C0005093E5004093E4000AC02091E40030917A\r
+:1017D000E50037FF04C03092E5002092E40020913C\r
+:1017E000D500213039F52091A70022FF23C0209198\r
+:1017F000620030916300232B29F01092E3001092D5\r
+:10180000E20018C02091E2003091E30012161306A6\r
+:101810003CF4EFEFF0E0F093E300E093E2000AC065\r
+:101820002091E2003091E30037FF04C03092E300E2\r
+:101830002092E2002091D400213039F52091A700B8\r
+:1018400023FF23C02091600030916100232B29F0F9\r
+:101850001092E1001092E00018C02091E000309159\r
+:10186000E100121613063CF42FEF30E03093E10054\r
+:101870002093E0000AC02091E0003091E10037FFA2\r
+:1018800004C03092E1002092E0002091E600309107\r
+:10189000E70082179307B9F18091E6009091E70085\r
+:1018A000892B19F485B38C6017C08091D300811106\r
+:1018B00007C08091E6009091E7001816190654F0D1\r
+:1018C0008091D300882351F08091E6009091E70049\r
+:1018D00097FF04C085B3837F85BB02C0AA98AB9AEB\r
+:1018E0008091E6009091E7009093670080936600F6\r
+:1018F0008091E6009091E70097FF03C09195819554\r
+:1019000091099BBD8ABD8091E4009091E5002091F2\r
+:1019100064003091650028173907B9F18091E4001F\r
+:101920009091E500892B19F485B3806317C08091ED\r
+:10193000D200811107C08091E4009091E500181653\r
+:10194000190654F08091D200882351F08091E40070\r
+:101950009091E50097FF04C085B38F7C85BB02C0E2\r
+:10196000AC98AD9A8091E4009091E5009093650069\r
+:10197000809364008091E4009091E50097FF03C09C\r
+:1019800091958195910999BD88BD8091E2009091D2\r
+:10199000E300209162003091630028173907B1F10C\r
+:1019A0008091E2009091E300892B19F485B3806C5B\r
+:1019B00017C08091D100811107C08091E200909101\r
+:1019C000E3001816190654F08091D100882351F0D5\r
+:1019D0008091E2009091E30097FF04C085B38F737C\r
+:1019E00085BB02C0AE98AF9A8091E2009091E3006F\r
+:1019F00090936300809362008091E2009091E300F5\r
+:101A000097FF03C091958195910983BD8091E00076\r
+:101A10009091E10020916000309161002817390712\r
+:101A2000B1F18091E0009091E100892B19F482B32B\r
+:101A30008C6017C08091D000811107C08091E000B8\r
+:101A40009091E1001816190654F08091D000882377\r
+:101A500051F08091E0009091E10097FF04C082B3C3\r
+:101A6000837F82BB02C09298939A8091E00090910C\r
+:101A7000E10090936100809360008091E00090917C\r
+:101A8000E10097FF03C09195819591098CBF8091EA\r
+:101A9000AA008F5F8093AA0085B7806885BF88956C\r
+:101AA00085B78F7785BF13C9ACE0B0E0EAE5FDE00C\r
+:101AB0000C9470116C015B017A01FC011782168293\r
+:101AC000838181FF0EC1CE0101964C01F601038195\r
+:101AD000F50103FD159103FF11915F01112309F435\r
+:101AE000FCC0153249F403FD159103FF11915F010C\r
+:101AF000153211F020E01BC0B601812F90E00E944A\r
+:101B00001B1237017301E2CF112309F4E6C0612FE4\r
+:101B100070E089E790E02C870E94C5112C85892B05\r
+:101B200049F0F50103FD159103FF11915F0127FFB6\r
+:101B3000EBCF09C0133229F01C3609F0D5C020685C\r
+:101B4000F0CF20E1EECF022F112309F4C6C0612FA0\r
+:101B500070E082E790E02C870E94C5112C85892BCC\r
+:101B600041F03701F4E06F0E711CB6018FE390E095\r
+:101B700011C0133639F0133781F0133519F5022FE0\r
+:101B800001600BC0370182E0680E711CB601F701DD\r
+:101B9000808191810E941B12B5CF3701F2E06F0E58\r
+:101BA000711CF701E080F180F70100FD859100FFD5\r
+:101BB00081917F01882309F4A5CFB60190E00E94AE\r
+:101BC0001B12F2CF143611F0193629F5370127FF11\r
+:101BD00009C0F4E06F0E711CF70160817181828190\r
+:101BE00093810AC0F2E06F0E711CF7016081718170\r
+:101BF000072E000C880B990B022F0F7E97FF08C051\r
+:101C000090958095709561957F4F8F4F9F4F0064A1\r
+:101C10002AE030E033C0103799F040F41835B1F0C5\r
+:101C20001F3609F05AC028E030E014C0153719F00B\r
+:101C3000183741F052C0022F0F7E2AE030E00AC070\r
+:101C4000022F0061046220E130E004C0022F046032\r
+:101C500020E132E0370107FF09C0F4E06F0E711C8C\r
+:101C6000F701608171818281938108C0F2E06F0E7B\r
+:101C7000711CF7016081718180E090E0A4010E94F5\r
+:101C80008312182F181906FF05C0B6018DE290E0E7\r
+:101C90000E941B1204FF15C0FE01E10FF11D80819F\r
+:101CA000803379F0B60180E390E00E941B1202FFBE\r
+:101CB00008C00072802F90E0B601885A9F4F0E94A2\r
+:101CC0001B121150F401E10FF11D8081B60190E06B\r
+:101CD0000E941B121111F5CF15CFF6018681978155\r
+:101CE00005C08FEF9FEF02C0022F31CF2C96EEE0A0\r
+:101CF0000C948C115058BB27AA270E94920E0C946A\r
+:101D00003C100E94031038F00E940A1020F039F4B1\r
+:101D10009F3F19F426F40C9400100EF4E095E7FBB5\r
+:101D20000C94FA0FE92F0E94611058F3BA1762075A\r
+:101D300073078407950720F079F4A6F50C948310B7\r
+:101D40000EF4E0950B2EBA2FA02D0B01B9019001D6\r
+:101D50000C01CA01A0011124FF27591B99F0593F1A\r
+:101D600050F4503E68F11A16F040A22F232F342F62\r
+:101D70004427585FF3CF469537952795A795F040B0\r
+:101D80005395C9F77EF41F16BA0B620B730B840BC5\r
+:101D9000BAF09150A1F0FF0FBB1F661F771F881F7D\r
+:101DA000C2F70EC0BA0F621F731F841F48F48795D5\r
+:101DB00077956795B795F7959E3F08F0B0CF9395C7\r
+:101DC000880F08F09927EE0F9795879508950E9440\r
+:101DD000D60F08F481E008950E941310E3950C9447\r
+:101DE0004D100E94050F0C943C100E940A1058F0F0\r
+:101DF0000E94031040F029F45F3F29F00C94FA0F81\r
+:101E000051110C9484100C9400100E94611068F31E\r
+:101E10009923B1F3552391F3951B550BBB27AA27A3\r
+:101E200062177307840738F09F5F5F4F220F331FDD\r
+:101E3000441FAA1FA9F335D00E2E3AF0E0E832D0A5\r
+:101E400091505040E695001CCAF72BD0FE2F29D0A8\r
+:101E5000660F771F881FBB1F261737074807AB077A\r
+:101E6000B0E809F0BB0B802DBF01FF2793585F4FEF\r
+:101E70003AF09E3F510578F00C94FA0F0C948410C0\r
+:101E80005F3FE4F3983ED4F3869577956795B795D1\r
+:101E9000F7959F5FC9F7880F911D9695879597F9DC\r
+:101EA0000895E1E0660F771F881FBB1F6217730755\r
+:101EB0008407BA0720F0621B730B840BBA0BEE1F6A\r
+:101EC00088F7E09508950E946A0F6894B1110C9408\r
+:101ED000841008950E94691088F09F5798F0B92FD8\r
+:101EE0009927B751B0F0E1F0660F771F881F991F4F\r
+:101EF0001AF0BA95C9F714C0B13091F00E9483105E\r
+:101F0000B1E008950C948310672F782F8827B85F6D\r
+:101F100039F0B93FCCF3869577956795B395D9F7A6\r
+:101F20003EF490958095709561957F4F8F4F9F4FB0\r
+:101F30000895E89409C097FB3EF4909580957095BC\r
+:101F400061957F4F8F4F9F4F9923A9F0F92F96E905\r
+:101F5000BB279395F695879577956795B795F1117A\r
+:101F6000F8CFFAF4BB0F11F460FF1BC06F5F7F4F17\r
+:101F70008F4F9F4F16C0882311F096E911C0772329\r
+:101F800021F09EE8872F762F05C0662371F096E832\r
+:101F9000862F70E060E02AF09A95660F771F881F01\r
+:101FA000DAF7880F9695879597F90895990F0008A5\r
+:101FB000550FAA0BE0E8FEEF16161706E807F9071B\r
+:101FC000C0F012161306E407F50798F0621B730BB6\r
+:101FD000840B950B39F40A2661F0232B242B252B37\r
+:101FE00021F408950A2609F4A140A6958FEF811DDA\r
+:101FF000811D089597F99F6780E870E060E008957B\r
+:102000009FEF80EC089500240A9416161706180610\r
+:102010000906089500240A941216130614060506EC\r
+:1020200008950C9400100E946910D8F3E894E0E041\r
+:10203000BB279F57F0F02AED3FE049EC06C0EE0FBA\r
+:10204000BB0F661F771F881F28F0B23A620773071D\r
+:10205000840728F0B25A620B730B840BE3959A95B0\r
+:1020600072F7803830F49A95BB0F661F771F881F70\r
+:10207000D2F790480C940611092E0394000C11F429\r
+:10208000882352F0BB0F40F4BF2B11F460FF04C053\r
+:102090006F5F7F4F8F4F9F4F0895EF93E0FF07C013\r
+:1020A000A2EA2AED3FE049EC5FEB0E94920E0E940B\r
+:1020B0003C100F90039401FC9058E4E5F0E00C9480\r
+:1020C000121157FD9058440F551F59F05F3F71F0A2\r
+:1020D0004795880F97FB991F61F09F3F79F087958F\r
+:1020E0000895121613061406551FF2CF4695F1DF18\r
+:1020F00008C0161617061806991FF1CF86957105A8\r
+:10210000610508940895E894BB2766277727CB01DB\r
+:1021100097F908950E94D60F08F48FEF08950E9452\r
+:10212000A2100C943C100E94031038F00E940A1078\r
+:1021300020F0952311F00C94FA0F0C940010112448\r
+:102140000C9484100E94611070F3959FC1F3950F59\r
+:1021500050E0551F629FF001729FBB27F00DB11D2B\r
+:10216000639FAA27F00DB11DAA1F649F6627B00DBB\r
+:10217000A11D661F829F2227B00DA11D621F739FA4\r
+:10218000B00DA11D621F839FA00D611D221F749FB2\r
+:102190003327A00D611D231F849F600D211D822FF9\r
+:1021A000762F6A2F11249F5750409AF0F1F0882320\r
+:1021B0004AF0EE0FFF1FBB1F661F771F881F91504D\r
+:1021C0005040A9F79E3F510580F00C94FA0F0C94F3\r
+:1021D00084105F3FE4F3983ED4F386957795679536\r
+:1021E000B795F795E7959F5FC1F7FE2B880F911D77\r
+:1021F0009695879597F908959F930E9413100F90D5\r
+:1022000007FCEE5F0C944D109F3F31F0915020F48D\r
+:10221000879577956795B795880F911D96958795C2\r
+:1022200097F908959F938F937F936F93FF93EF9305\r
+:102230009B01AC010E948F10EF91FF910E9426112B\r
+:102240002F913F914F915F910C948F10DF93CF931B\r
+:102250001F930F93FF92EF92DF927B018C016894A2\r
+:1022600006C0DA2EEF010E94A210FE01E894A591AB\r
+:102270002591359145915591A6F3EF010E94920E5B\r
+:10228000FE019701A801DA9469F7DF90EF90FF90C3\r
+:102290000F911F91CF91DF910895052E97FB1EF4AA\r
+:1022A00000940E94641157FD07D00E94A31107FCFF\r
+:1022B00003D04EF40C9464115095409530952195BF\r
+:1022C0003F4F4F4F5F4F0895909580957095619562\r
+:1022D0007F4F8F4F9F4F08952F923F924F925F9263\r
+:1022E0006F927F928F929F92AF92BF92CF92DF9226\r
+:1022F000EF92FF920F931F93CF93DF93CDB7DEB78B\r
+:10230000CA1BDB0B0FB6F894DEBF0FBECDBF09941E\r
+:102310002A88398848885F846E847D848C849B8475\r
+:10232000AA84B984C884DF80EE80FD800C811B8183\r
+:10233000AA81B981CE0FD11D0FB6F894DEBF0FBEB2\r
+:10234000CDBFED010895A1E21A2EAA1BBB1BFD0112\r
+:102350000DC0AA1FBB1FEE1FFF1FA217B307E40784\r
+:10236000F50720F0A21BB30BE40BF50B661F771FDC\r
+:10237000881F991F1A9469F76095709580959095BC\r
+:102380009B01AC01BD01CF010895FC01059006162B\r
+:1023900021F00020D9F7C00108953197CF010895A9\r
+:1023A0000F931F93CF93DF93009731F4611571055D\r
+:1023B00019F480E090E03AC08B01EC016EE070E02F\r
+:1023C00081E090E00E94E112FC01892B91F380E80A\r
+:1023D00083830115110571F01387028781E88383D8\r
+:1023E00080915E0190915F01892B21F4F0935F0150\r
+:1023F000E0935E012097C9F0D187C0878381826016\r
+:1024000083838091600190916101892B71F4F09335\r
+:102410006101E09360018091620190916301892BD9\r
+:1024200021F4F0936301E0936201CF01DF91CF913A\r
+:102430001F910F9108950F931F93CF93DF93FB018B\r
+:10244000238121FD03C08FEF9FEF28C022FF16C01C\r
+:1024500046815781248135814217530744F4A08176\r
+:10246000B1819D012F5F3F4F318320838C93268163\r
+:1024700037812F5F3F4F3783268310C0EB01092F31\r
+:10248000182F0084F185E02D0995892BE1F68E81C6\r
+:102490009F8101969F838E83812F902FDF91CF9113\r
+:1024A0001F910F9108950F931F93CF93DF93E091A6\r
+:1024B0006001F0916101238121FF1BC08C01D0E0FC\r
+:1024C000C0E0F80181918F0160916001709161011C\r
+:1024D000DB011896ED91FC911997882331F009954D\r
+:1024E000892B79F3DFEFCFEFECCF8AE00995892BC9\r
+:1024F00019F08FEF9FEF02C08D2F9C2FDF91CF91AE\r
+:102500001F910F910895FA01AA27283051F1203127\r
+:1025100081F1E8946F936E7F6E5F7F4F8F4F9F4F77\r
+:10252000AF4FB1E03ED0B4E03CD0670F781F891FB9\r
+:102530009A1FA11D680F791F8A1F911DA11D6A0F87\r
+:10254000711D811D911DA11D20D009F468943F913A\r
+:102550002AE0269F11243019305D3193DEF6CF0139\r
+:102560000895462F4770405D4193B3E00FD0C9F7FF\r
+:10257000F6CF462F4F70405D4A3318F0495D31FD6C\r
+:102580004052419302D0A9F7EACFB4E0A6959795BF\r
+:10259000879577956795BA95C9F700976105710595\r
+:1025A00008959B01AC010A2E0694579547953795DF\r
+:1025B0002795BA95C9F7620F731F841F951FA01D39\r
+:1025C00008950F931F93CF93DF93869F8001879F7A\r
+:1025D000100D969F100D1124C8010E94FD12EC01F0\r
+:1025E000009729F0A80160E070E00E942A14CE0153\r
+:1025F000DF91CF911F910F910895CF93DF93823098\r
+:10260000910510F482E090E0E0916601F09167019D\r
+:1026100020E030E0C0E0D0E0309711F140815181FE\r
+:1026200048175907C0F04817590761F48281938110\r
+:10263000209719F09B838A832BC090936701809326\r
+:10264000660126C02115310519F04217530718F409\r
+:102650009A01BE01DF01EF010280F381E02DDCCFA2\r
+:102660002115310509F1281B390B2430310590F46F\r
+:1026700012968D919C9113976115710521F0FB01C4\r
+:102680009383828304C09093670180936601FD0168\r
+:10269000329644C0FD01E20FF31F819391932250C3\r
+:1026A00031092D933C933AC020916401309165012A\r
+:1026B000232B41F420916A0030916B003093650127\r
+:1026C0002093640120916800309169002115310543\r
+:1026D00041F42DB73EB740916C0050916D00241B22\r
+:1026E000350BE0916401F0916501E217F307A0F466\r
+:1026F0002E1B3F0B2817390778F0AC014E5F5F4F58\r
+:102700002417350748F04E0F5F1F50936501409323\r
+:1027100064018193919302C0E0E0F0E0CF01DF918A\r
+:10272000CF9108950F931F93CF93DF93009709F4F0\r
+:102730008CC0FC01329713821282009166011091C5\r
+:1027400067010115110581F420813181820F931FEA\r
+:1027500020916401309165012817390779F5F093CC\r
+:102760006501E093640171C0D80140E050E0AE170C\r
+:10277000BF0750F412962D913C911397AD0121158E\r
+:10278000310509F1D901F3CF9D01DA0133832283A9\r
+:1027900060817181860F971F8217930769F4EC019E\r
+:1027A00028813981260F371F2E5F3F4F31832083C9\r
+:1027B0008A819B8193838283452B29F4F09367015F\r
+:1027C000E093660142C01396FC93EE931297ED01DD\r
+:1027D000499159919E01240F351FE217F30771F4B7\r
+:1027E00080819181840F951F029611969C938E9300\r
+:1027F0008281938113969C938E931297E0E0F0E090\r
+:10280000D80112968D919C911397009719F0F801B9\r
+:102810008C01F6CF8D919C9198012E5F3F4F820FD6\r
+:10282000931F20916401309165012817390769F4DD\r
+:10283000309729F4109267011092660102C013824A\r
+:1028400012821093650100936401DF91CF911F9173\r
+:102850000F910895DC0101C06D9341505040E0F7A5\r
+:062860000895F894FFCF7B\r
+:1028660000800080008000800000680120000D0AC2\r
+:0828760053746172740D00003F\r
 :00000001FF\r