avr: clk back to 4MHz, optimize uninterruptible parts
authorErik Andresen <erik@vontaene.de>
Fri, 29 May 2015 17:46:28 +0000 (19:46 +0200)
committerErik Andresen <erik@vontaene.de>
Fri, 29 May 2015 17:46:28 +0000 (19:46 +0200)
avr/motor_ctrl/Makefile
avr/motor_ctrl/main.c
avr/motor_ctrl/main.hex

index 6160c44..50995aa 100644 (file)
@@ -90,7 +90,7 @@ EXTRAINCDIRS =
 CSTANDARD = -std=gnu99\r
 \r
 # Place -D or -U options here\r
-CDEFS = -DF_CPU=8000000\r
+CDEFS = -DF_CPU=4000000\r
 \r
 # Place -I options here\r
 CINCS = -Ii2c/\r
index 72c0659..2713674 100644 (file)
  * 0x91 Motor 2 switch
  * 0x92 Motor 3 switch
  * 0x93 Motor 4 switch
- * 0x94 TLE Error status
+ * free
+ * 0xA0 Reset reason
+ * 0xA1 TLE Error status
+ * 0xA2 count test
  * free
  * 0xff Bootloader
  */
@@ -142,7 +145,7 @@ static volatile int16_t speed1_wish=0; // step/s
 static volatile int16_t speed2_wish=0;
 static volatile int16_t speed3_wish=0;
 static volatile int16_t speed4_wish=0;
-static volatile uint16_t run_update=0;
+static volatile uint8_t run_update=0;
 static volatile int16_t speed1=0; // step/s
 static volatile int16_t speed2=0;
 static volatile int16_t speed3=0;
@@ -152,6 +155,7 @@ static volatile ufloat_t pos_y={0.0};
 static volatile ufloat_t angle={0.0};
 static volatile float cur_speed_lin=0;
 static volatile float cur_speed_rot=0;
+static volatile uint8_t count_test=0;
 
 ISR(TWI_vect)
 {
@@ -544,10 +548,18 @@ ISR(TWI_vect)
                                        TWDR = pos_y.i;
                                        TWI_ACK;
                                        break;
-                               case 0x94: // TLE Error status
+                               case 0xA0: // Reset reason
+                                       TWDR = MCUCSR & 0x0f;
+                                       MCUCSR = 0x0;
+                                       TWI_ACK;
+                                       break;
+                               case 0xA1: // TLE Error status
                                        TWDR = ~((PIND & 0x40)>>3 | (PINB & 0x07)) & 0xf;
                                        TWI_ACK;
                                        break;
+                               case 0xA2: // count test
+                                       TWDR = count_test;
+                                       TWI_ACK;
                                default:
                                        TWDR = 0;
                                        TWI_NAK;
@@ -722,21 +734,30 @@ static void update_pos(void) {
        int16_t pos3_diff;
        int16_t pos4_diff;
        float diff_left_m, diff_right_m, angle_diff, translation;
-       float pos_x_diff, pos_y_diff, angle_new;
+       float pos_x_new, pos_y_new, angle_new;
        int16_t speed_l, speed_r;
        float tmp_speed_lin, tmp_speed_rot;
+       int16_t cur_pos1, cur_pos2, cur_pos3, cur_pos4;
+       int16_t new_speed1, new_speed2, new_speed3, new_speed4;
 
+       // copy to tmp
        cli();
-       pos1_diff = pos1 - pos1_last;
-       pos2_diff = pos2 - pos2_last;
-       pos3_diff = pos3 - pos3_last;
-       pos4_diff = pos4 - pos4_last;
-       speed1 = pos1_diff/PID_T;
-       speed2 = pos2_diff/PID_T;
-       speed3 = pos3_diff/PID_T;
-       speed4 = pos4_diff/PID_T;
+       cur_pos1 = pos1;
+       cur_pos2 = pos2;
+       cur_pos3 = pos3;
+       cur_pos4 = pos4;
        sei();
 
+       pos1_diff = cur_pos1 - pos1_last;
+       pos2_diff = cur_pos2 - pos2_last;
+       pos3_diff = cur_pos3 - pos3_last;
+       pos4_diff = cur_pos4 - pos4_last;
+
+       new_speed1 = pos1_diff/PID_T;
+       new_speed2 = pos2_diff/PID_T;
+       new_speed3 = pos3_diff/PID_T;
+       new_speed4 = pos4_diff/PID_T;
+
        diff_left_m = (pos1_diff + pos2_diff)/(2*STEP_PER_M);
        diff_right_m = (pos3_diff + pos4_diff)/(2*STEP_PER_M);
        angle_diff = (diff_right_m - diff_left_m) / WHEEL_DIST;
@@ -746,29 +767,31 @@ static void update_pos(void) {
        else if (angle_new < 2*M_PI) angle_new+=2*M_PI;
 
        translation = (diff_left_m + diff_right_m)/2.0;
-       pos_x_diff = cos(angle_new)*translation;
-       pos_y_diff = sin(angle_new)*translation;
-       
-       cli();
-       angle.f = angle_new;
-       pos_x.f += pos_x_diff;
-       pos_y.f += pos_y_diff;
-       sei();
+       pos_x_new = pos_x.f + cos(angle_new)*translation;
+       pos_y_new = pos_y.f + sin(angle_new)*translation;
 
-       speed_l = (speed1+speed2)/2;
-       speed_r = (speed3+speed4)/2;
+       speed_l = (new_speed1+new_speed2)/2;
+       speed_r = (new_speed3+new_speed4)/2;
        tmp_speed_lin = (speed_l + speed_r)/(2.0*STEP_PER_M);
        tmp_speed_rot = (speed_r - speed_l)/(M_PI*WHEEL_DIST*STEP_PER_M);
 
+       // copy from tmp
        cli();
+       angle.f = angle_new;
+       pos_x.f = pos_x_new;
+       pos_y.f = pos_y_new;
+       speed1 = new_speed1;
+       speed2 = new_speed2;
+       speed3 = new_speed3;
+       speed4 = new_speed4;
        cur_speed_lin = tmp_speed_lin;
        cur_speed_rot = tmp_speed_rot;
        sei();
 
-       pos1_last = pos1;
-       pos2_last = pos2;
-       pos3_last = pos3;
-       pos4_last = pos4;
+       pos1_last = cur_pos1;
+       pos2_last = cur_pos2;
+       pos3_last = cur_pos3;
+       pos4_last = cur_pos4;
 }
 
 
@@ -870,7 +893,7 @@ int main(void) {
        TWI_RESET;
 
        // Motor 1 & 2
-       // Timer 1: Fast PWM inverting mode, Top=256 => 31.25kHz
+       // Timer 1: Fast PWM inverting mode, Top=256 => 15.625kHz
        // Prescaler=1
        TCCR1A = (1 << COM1A1) | (1 << COM1B1) | (1 << COM1A0) | (1 << COM1B0) | (1 << WGM10);
        TCCR1B = (1 << WGM12) | (1 << CS10);
@@ -910,10 +933,18 @@ int main(void) {
                }
 
                if (cmd_vel.bUpdate) {
-                       float speed_wish_right = cmd_vel.angle*M_PI*WHEEL_DIST/2 + cmd_vel.speed;
-                       float speed_wish_left = cmd_vel.speed*2-speed_wish_right;
+                       float speed_wish_right, speed_wish_left;
+                       float speed, angle;
 
+                       cli();
+                       speed = cmd_vel.speed;
+                       angle = cmd_vel.angle;
                        cmd_vel.bUpdate = 0;
+                       sei();
+
+                       speed_wish_right = angle*M_PI*WHEEL_DIST/2 + speed;
+                       speed_wish_left = speed*2-speed_wish_right;
+
                        speed_wish_left*=STEP_PER_M;
                        speed_wish_right*=STEP_PER_M;
 
@@ -927,12 +958,13 @@ int main(void) {
                        motor4_mode = MOTOR_PID;
                }
 
-               if (run_update >= 312) { // ~100Hz
+               if (run_update >= 156) { // ~100Hz
                        run_update=0;
 
                        update_pos();
                        update_pid();
                        update_motor();
+                       count_test++;
                }
 
                sleep_mode();
index cfc59c5..d628a26 100644 (file)
-:100000000C94D8000C94F5000C94F5000C94F500B9\r
-:100010000C94F5000C94F5000C94F5000C94F5008C\r
-:100020000C94F5000C9417040C94F5000C94F50056\r
-:100030000C94F5000C94F6040C94F5000C94F50067\r
-:100040000C94F5000C94F5000C94F5000C94F7005A\r
-:100050000C94F500CC02F803CF02F803D302F803A6\r
-:10006000D502F803F803F803F803F803F803F803DC\r
-:10007000D702EF02DC02EF02E102EF02E602EF023A\r
-:10008000F803F803F803F803F803F803F803F80398\r
-:10009000F202F702FC02010306030B03100315032F\r
-:1000A000F803F803F803F803F803F803F803F80378\r
-:1000B0001A031F03240329032E03330338033E03CB\r
-:1000C000430354035D03660369037A0383038C03CC\r
-:1000D00095039E03A703B003B903C603D203DF034E\r
-:1000E000B903C603D203DF03F803F803F803F803E8\r
-:1000F000F803F803F803F803F803F803F803F80328\r
-:10010000F803F803F803F803F803F803F803F80317\r
-:10011000F803F803F803F803F803F803F803F80307\r
-:10012000F803F803F803F803F803F803F803F803F7\r
-:10013000F803F803F803F803F803F803F803F803E7\r
-:10014000F803F803F803F803F803F803F803F803D7\r
-:10015000F803F803F803F803F803F803F803F803C7\r
-:10016000F803F803F803F803F803F803F803F803B7\r
-:10017000F803F803F803F803E80305A84CCDB2D45C\r
-:100180004EB93836A9020C50B9918688083CA6AA07\r
-:10019000AA2ABE000000803F4546476566670020EA\r
-:1001A0002B2D2E3031323334353637383968000054\r
-:1001B00011241FBECFE5D8E0DEBFCDBF10E0A0E622\r
-:1001C000B0E0ECE6F5E202C005900D92A837B10769\r
-:1001D000D9F721E0A8E7B0E001C01D92A536B2072B\r
-:1001E000E1F70E94EB050C94B4120C9400001F92EE\r
-:1001F0000F920FB60F9211242F933F934F935F935B\r
-:100200006F937F938F939F93AF93BF93EF93FF93DE\r
-:1002100081B1887F803881F040F4803609F0F1C2E6\r
-:1002200085EC86BF1092E600F1C2883A09F4A7C1B6\r
-:10023000883B09F4A4C1E5C28091E600893209F443\r
-:100240003CC108F04BC0883009F4CFC0F0F48330D3\r
-:1002500009F4F1C070F4813009F4EDC008F0A1C0D8\r
-:1002600083B18093E6008091E60081508093E600A0\r
-:10027000BDC2853009F4DFC008F49FC0863009F4A0\r
-:10028000A8C0873009F4D7C0B4C2843209F4D3C0FF\r
-:10029000C8F4813209F4B5C020F4803209F4CBC02F\r
-:1002A000A8C2823209F4C7C0833209F0A2C283B166\r
-:1002B0002091A60090E0922B9093CA008093C900F1\r
-:1002C00081E0F3C0863209F4B6C008F4A7C08732D3\r
-:1002D00009F4B5C0883209F4EBC08BC2833509F448\r
-:1002E00003C1F8F48E3209F4E8C060F48B3209F4EB\r
-:1002F000B3C008F4E2C08C3209F4DAC08D3209F4DC\r
-:10030000DCC077C2803509F4D3C020F48F3209F401\r
-:10031000A3C06FC2813509F4D0C0823509F4CDC0C5\r
-:1003200068C2803909F41BC168F5853509F400C13C\r
-:1003300008F4F9C0863509F4FBC0873509F059C2C5\r
-:1003400023B180919E0090919F00A091A000B09158\r
-:10035000A100BA2FA92F982F8827822B80939E0067\r
-:1003600090939F00A093A000B093A1008093EB0016\r
-:100370009093EC00A093ED00B093EE0081E08093A9\r
-:10038000EF0034C2823909F4F2C008F4ECC08339BA\r
-:1003900009F4F1C08F3F09F02CC283B18093E500CE\r
-:1003A00028C283B12091A60090E0922B9093E400A4\r
-:1003B0008093E3001092D40019C283B12091A6006B\r
-:1003C00090E0922B9093E2008093E1001092D30092\r
-:1003D0000DC283B12091A60090E0922B9093E00093\r
-:1003E0008093DF001092D20001C283B12091A60059\r
-:1003F00090E0922B9093DE008093DD001092D1006C\r
-:10040000F5C183B12091A60090E0922B9093CC008F\r
-:100410008093CB0081E08093D400E8C183B1209128\r
-:10042000A60090E0922B9093C8008093C70081E0D3\r
-:100430008093D200DBC183B18093A600D7C183B182\r
-:100440002091A60090E0922B9093C6008093C50067\r
-:1004500081E08093D100CAC123B18091A200909124\r
-:10046000A300A091A400B091A5006627782F892F42\r
-:100470009A2F622B6093A2007093A3008093A40034\r
-:100480009093A5002AE931E043E555E40E94630F0B\r
-:100490000E94430E7093CC006093CB007093CA000F\r
-:1004A0006093C90081E08093D4008093D3009EC103\r
-:1004B00083B190E0A0E0B0E00EC023B18091A20033\r
-:1004C0009091A300A091A400B091A500BA2FA92FEC\r
-:1004D000982F8827822B8093A2009093A300A0934B\r
-:1004E000A400B093A50082C123B18091A200909195\r
-:1004F000A300A091A400B091A500BA2FA92F982F16\r
-:100500008827822B8093A2009093A300A093A4003D\r
-:10051000B093A5008093E7009093E800A093E900D2\r
-:10052000B093EA0063C183B190E0A0E0B0E00EC0F8\r
-:1005300023B180919E0090919F00A091A000B09166\r
-:10054000A100BA2FA92F982F8827822B80939E0075\r
-:1005500090939F00A093A000B093A10047C183B1E6\r
-:100560008093D00043C183B18093CF003FC183B15A\r
-:100570008093CE003BC183B18093CD0037C1809181\r
-:10058000E60090E0FC013297E339F10508F030C154\r
-:10059000E65DFF4F0C942F108AB59BB502C088B55D\r
-:1005A00099B583B923C183B5FCCF8CB7FACF8091BD\r
-:1005B000DB009091DC000EC08091D9009091DA00B0\r
-:1005C00009C08091D7009091D80004C08091D500D7\r
-:1005D0009091D60090939D0080939C004DC0809197\r
-:1005E0009C00DFCF8091CB009091CC0045C08091E2\r
-:1005F000CB009091CC00D5CF8091C9009091CA00DA\r
-:100600003BC08091C9009091CA00CBCF8091C700B8\r
-:100610009091C80031C08091C7009091C800C1CFAF\r
-:100620008091C5009091C60027C08091C50090912F\r
-:10063000C600B7CF8091C1009091C2001DC08091CB\r
-:10064000C1009091C200ADCF8091BF009091C000D9\r
-:1006500013C08091BF009091C000A3CF8091BD00D6\r
-:100660009091BE0009C08091BD009091BE0099CFCD\r
-:100670008091BB009091BC0093B9B8C08091BB0041\r
-:100680009091BC008ECF8091AB009091AC00A09176\r
-:10069000AD00B091AE008093A2009093A300A09310\r
-:1006A000A400B093A5006DC08091A2009091A3001A\r
-:1006B000A091A400B091A50071C08091A20090917A\r
-:1006C000A300A091A400B091A50074C08091A200E5\r
-:1006D00068CF8091A7009091A800A091A900B09147\r
-:1006E000AA0080939E0090939F00A093A000B093D7\r
-:1006F000A10047C080919E0090919F00A091A00012\r
-:10070000B091A1004BC080919E0090919F00A0915C\r
-:10071000A000B091A1004EC08091AF009091B000B8\r
-:10072000A091B100B091B2003CCF8091B700909100\r
-:10073000B800A091B900B091BA0023C08091B70071\r
-:100740009091B800A091B900B091BA0027C08091F3\r
-:10075000B7009091B800A091B900B091BA002AC03A\r
-:100760008091B7009091B800A091B900B091BA0003\r
-:1007700018CF8091B3009091B400A091B500B091D2\r
-:10078000B6008B2F9927AA27BB270BCF8091B300E8\r
-:100790009091B400A091B500B091B600CD01AA2708\r
-:1007A000BB27FFCE8091B3009091B400A091B5001B\r
-:1007B000B091B600892F9A2FAB2FBB27F2CE809134\r
-:1007C000B3009091B400A091B500B091B600E9CE0D\r
-:1007D00080B326B3807490E033E0959587953A9581\r
-:1007E000E1F72770282B20952F7023B985EC02C0E4\r
-:1007F00013B885E886BF8091E6008F5F8093E6009E\r
-:1008000005C086B78B7E86BF85EC86BFFF91EF91D2\r
-:10081000BF91AF919F918F917F916F915F914F9118\r
-:100820003F912F910F900FBE0F901F9018951F9220\r
-:100830000F920FB60F9211242F933F934F935F9314\r
-:100840008F939F9399B390FD02C080E001C083E035\r
-:1008500091FF02C091E0892720919B00281B20FF77\r
-:100860001FC080939B008091D000422F427088234C\r
-:1008700049F08091DB009091DC00242F30E0215082\r
-:10088000310908C08091DB009091DC0021E030E06C\r
-:10089000241B3109820F931F9093DC008093DB00AF\r
-:1008A00099B392959F7090FD02C080E001C083E0F3\r
-:1008B00091FF02C091E0892720919A00281B20FF18\r
-:1008C0001FC080939A008091CF002270882359F036\r
-:1008D0008091D9009091DA0041E050E0421B51092B\r
-:1008E000840F951F09C08091D9009091DA0030E003\r
-:1008F00021503109820F931F9093DA008093D90021\r
-:1009000099B39695969590FD02C080E001C083E072\r
-:1009100091FF02C091E0892720919900281B20FFB8\r
-:100920001FC0809399008091CE002270882359F0D7\r
-:100930008091D7009091D80041E050E0421B5109CE\r
-:10094000840F951F09C08091D7009091D80030E0A6\r
-:1009500021503109820F931F9093D8008093D700C4\r
-:1009600099B3929596959695937090FD02C080E00C\r
-:1009700001C083E0927011F091E0892720919800E6\r
-:10098000281B20FF1FC0809398008091CD00422F2C\r
-:100990004270882349F08091D5009091D600242F91\r
-:1009A00030E02150310908C08091D5009091D600E7\r
-:1009B00021E030E0241B3109820F931F9093D60071\r
-:1009C0008093D5008091C3009091C40001969093CC\r
-:1009D000C4008093C3009F918F915F914F913F918D\r
-:1009E0002F910F900FBE0F901F9018951F920F928E\r
-:1009F0000FB60F9211248F939F93EF93FF935F9BFA\r
-:100A000016C0E091F200F091F3008CB1808381E098\r
-:100A1000E735F80730F43196F093F300E093F200F5\r
-:100A200006C084EF90E09093F3008093F200FF9172\r
-:100A3000EF919F918F910F900FBE0F901F9018957F\r
-:100A40009C018AB188618AB9579A80B5866080BD59\r
-:100A500040E050E084E0220F331F441F551F8A9569\r
-:100A6000D1F760E072E18AE790E00E941010DA01AD\r
-:100A7000C9010197A109B109892F9A2FAB2FBB2773\r
-:100A8000A7FDBA9580BD215029B984EF90E09093DD\r
-:100A9000F1008093F0009093F3008093F2000895AA\r
-:100AA0005D9BFECFFC0180818CB90895CF93DF93CD\r
-:100AB0001F92CDB7DEB78983CE0101960E94500503\r
-:100AC00080E090E00F90DF91CF910895CF93DF9376\r
-:100AD000EC01CE012196FC012081222319F00E9415\r
-:100AE0005005F7CFDF91CF9108955F9BFECF8CB17A\r
-:100AF00090E008950C9475056AE775E086E595E049\r
-:100B00000C946210CF93DF93FC01E253FF4FA0815E\r
-:100B1000B181EC01C453DF4F28813981A217B3079B\r
-:100B2000A1F05D9B12C02C912CB920813181AC01C8\r
-:100B300045535F4F2417350718F42F5F3F4F03C00D\r
-:100B40009C0128593F4F31832083E091F000F091C0\r
-:100B5000F1002091F2003091F3002E173F07C1F110\r
-:100B6000DC01AC59BF4FCD91DC91119720812883D6\r
-:100B70006D917C9111979C012B523F4FE901388177\r
-:100B8000EB012881321307C09C012C523F4FE90131\r
-:100B900048814F5F48839C012D593F4F621773076F\r
-:100BA00028F4EB012196CD93DC9302C08D939C93A6\r
-:100BB000D1E0E735FD0730F43196F093F100E09392\r
-:100BC000F00006C084EF90E09093F1008093F00075\r
-:100BD000DF91CF910895CF93DF9300D000D0CDB7B0\r
-:100BE000DEB788E087BB8CEF84BB8CEB81BB1092B7\r
-:100BF000E50080E895E20E9420050E947C0580E5E2\r
-:100C000082B986B78B7E86BF85EC86BF81EF8FBDAC\r
-:100C100089E08EBD1BBC1ABC19BC18BC89E785BD18\r
-:100C200013BC83BF1CBE8EE690E00E94DF1085B728\r
-:100C30008F7885BF84E089BF78942224239433245D\r
-:100C40003A940FEF10E08091E6008F3F41F48091DD\r
-:100C5000E500853A21F4F894E0E0F8E10995809107\r
-:100C6000EF00882309F465C06091EB007091EC00FF\r
-:100C70008091ED009091EE00C090E700D090E800E8\r
-:100C8000E090E900F090EA002BED3FE049E450E409\r
-:100C90000E94630F25E236E041E85EE30E94630FA5\r
-:100CA00020E030E040E05FE30E94630FA70196017F\r
-:100CB0000E94700D6B017C016091E7007091E8006B\r
-:100CC0008091E9009091EA009B01AC010E94700DB7\r
-:100CD000A70196010E946F0D1092EF002AE931E002\r
-:100CE00043E555E40E94630F0E94430E7093CC00CD\r
-:100CF0006093CB007093CA006093C9002AE931E089\r
-:100D000043E555E4C701B6010E94630F0E94430EFC\r
-:100D10007093C8006093C7007093C6006093C500CD\r
-:100D2000F1E0F093D400F093D300F093D200F0936D\r
-:100D3000D1008091C3009091C4008833914008F4A1\r
-:100D400079C51092C4001092C300F894A090DB0003\r
-:100D5000B090DC008091960090919700A81AB90A93\r
-:100D6000C090D900D090DA008091940090919500C5\r
-:100D7000C81AD90AE090D700F090D800809192006C\r
-:100D800090919300E81AF90A6090D5007090D6000F\r
-:100D90008091900090919100681A790AB501882796\r
-:100DA00077FD8095982F0E94760E2AE037ED43E27A\r
-:100DB0005CE30E94DB0D0E94430E7093C2006093BF\r
-:100DC000C100B601882777FD8095982F0E94760E86\r
-:100DD0002AE037ED43E25CE30E94DB0D0E94430E04\r
-:100DE0007093C0006093BF00B701882777FD80959E\r
-:100DF000982F0E94760E2AE037ED43E25CE30E94D2\r
-:100E0000DB0D0E94430E7093BE006093BD00B301E2\r
-:100E1000882777FD8095982F0E94760E2AE037ED7F\r
-:100E200043E25CE30E94DB0D0E94430E7093BC0022\r
-:100E30006093BB007894B5016C0D7D1D882777FD0C\r
-:100E40008095982F0E94760E2AE931E043ED55E413\r
-:100E50000E94DB0D4B015C01B701660D771D8827F1\r
-:100E600077FD8095982F0E94760E2AE931E043EDB8\r
-:100E700055E40E94DB0D2B013C01C090AF00D090E7\r
-:100E8000B000E090B100F090B200A50194010E9482\r
-:100E90006F0D25E236E041E85EE30E94DB0D9B0129\r
-:100EA000AC01C701B6010E94700D6B017C012BEDF6\r
-:100EB0003FE049EC50E40E945F0F2BED3FE049EC2E\r
-:100EC00050E418162CF4C701B6010E946F0D0EC035\r
-:100ED000C701B6010E94D40D87FF0AC02BED3FE089\r
-:100EE00049EC50E4C701B6010E94700D6B017C0112\r
-:100EF000A3019201C501B4010E94700D20E030E011\r
-:100F000040E05FE30E94630F4B015C01C701B60143\r
-:100F10000E94D80D2B013C01C701B6010E94C60FEB\r
-:100F200069837A838B839C83F894C092AF00D092BC\r
-:100F3000B000E092B100F092B200C090B700D09043\r
-:100F4000B800E090B900F090BA00A5019401C30187\r
-:100F5000B2010E94630F9B01AC01C701B6010E9460\r
-:100F6000700D6093B7007093B8008093B9009093B0\r
-:100F7000BA00C090B300D090B400E090B500F090FB\r
-:100F8000B600A501940169817A818B819C810E94C0\r
-:100F9000630F9B01AC01C701B6010E94700D609305\r
-:100FA000B3007093B4008093B5009093B60078942A\r
-:100FB000C090C100D090C2008091BF009091C0004D\r
-:100FC000C80ED91ED7FE03C03FEFC31AD30AD5946B\r
-:100FD000C794E090BD00F090BE008091BB0090915E\r
-:100FE000BC00E80EF91EF7FE03C08FEFE81AF80AFE\r
-:100FF000F594E794B6016E0D7F1D882777FD8095E7\r
-:10100000982F0E94760E2AE931E043ED55E40E94C4\r
-:10101000DB0D4B015C01B7016C197D09882777FD59\r
-:101020008095982F0E94760E2BEB3CE047E255E42A\r
-:101030000E94DB0DF8948092AB009092AC00A092DD\r
-:10104000AD00B092AE006093A7007093A8008093AB\r
-:10105000A9009093AA0078948091DB009091DC0025\r
-:1010600090939700809396008091D9009091DA0038\r
-:1010700090939500809394008091D7009091D80030\r
-:1010800090939300809392008091D5009091D60028\r
-:1010900090939100809390008091D400813009F06A\r
-:1010A000ACC08091CB009091CC00892B89F4109238\r
-:1010B000E4001092E30010928F0010928E001092C4\r
-:1010C0008A0010928B0010928C0010928D0095C0B7\r
-:1010D000E091CB00F091CC008091C1009091C200D2\r
-:1010E000E81BF90BFA83E9832F01662457FC60940F\r
-:1010F000762CC0908A00D0908B00E0908C00F0900D\r
-:101100008D00C40CD51CE61CF71CC0928A00D0923E\r
-:101110008B00E0928C00F0928D008091E300909122\r
-:10112000E400BC01882777FD8095982F0E94760EF9\r
-:101130004B015C01C301B2010E94760E2CEB34E737\r
-:1011400043E15CE30E94630F2B013C01C701B60140\r
-:101150000E94760E2BE631ED46E05AE30E94630FC3\r
-:101160009B01AC01C301B2010E94700D6B017C01B7\r
-:1011700080918E0090918F0029813A81281B390B34\r
-:10118000B901882777FD8095982F0E94760E2CE272\r
-:1011900034ED4AE15DE30E94630F9B01AC01C7019E\r
-:1011A000B6010E94700D9B01AC01C501B4010E9403\r
-:1011B000700D0E94430E7093E4006093E3008981F8\r
-:1011C0009A8190938F0080938E008091E30090919C\r
-:1011D000E4008F3F910531F02CF01093E400009370\r
-:1011E000E3000BC08091E3009091E40081309F4FB9\r
-:1011F00024F43092E4002092E3008091D300813007\r
-:1012000009F0ACC08091C9009091CA00892B89F483\r
-:101210001092E2001092E100109289001092880072\r
-:101220001092840010928500109286001092870020\r
-:1012300095C02091C9003091CA008091BF00909163\r
-:10124000C000281B390B3A8329832901662457FCE7\r
-:101250006094762CC0908400D0908500E090860049\r
-:10126000F0908700C40CD51CE61CF71CC0928400CB\r
-:10127000D0928500E0928600F09287008091E10094\r
-:101280009091E200BC01882777FD8095982F0E94FD\r
-:10129000760E4B015C01C301B2010E94760E2CEB6D\r
-:1012A00034E743E15CE30E94630F2B013C01C7017B\r
-:1012B000B6010E94760E2BE631ED46E05AE30E941D\r
-:1012C000630F9B01AC01C301B2010E94700D6B0161\r
-:1012D0007C018091880090918900E981FA81E81B66\r
-:1012E000F90BBF01882777FD8095982F0E94760E15\r
-:1012F0002CE234ED4AE15DE30E94630F9B01AC01F7\r
-:10130000C701B6010E94700D9B01AC01C501B4017B\r
-:101310000E94700D0E94430E7093E2006093E10002\r
-:1013200029813A8130938900209388008091E100DF\r
-:101330009091E2008F3F910531F02CF01093E20084\r
-:101340000093E1000BC08091E1009091E2008130B8\r
-:101350009F4F24F43092E2002092E1008091D2006D\r
-:10136000813009F0B0C08091C7009091C800892BEE\r
-:1013700089F41092E0001092DF0010928300109226\r
-:10138000820010927E0010927F00109280001092D6\r
-:10139000810099C08091C7009091C8009A83898389\r
-:1013A0008091BD009091BE00E981FA81E81BF90BA4\r
-:1013B000FA83E9832F01662457FC6094762CC09051\r
-:1013C0007E00D0907F00E0908000F0908100C40CFF\r
-:1013D000D51CE61CF71CC0927E00D0927F00E092E4\r
-:1013E0008000F09281008091DF009091E000BC01CC\r
-:1013F000882777FD8095982F0E94760E4B015C011F\r
-:10140000C301B2010E94760E2CEB34E743E15CE3AA\r
-:101410000E94630F2B013C01C701B6010E94760EAA\r
-:101420002BE631ED46E05AE30E94630F9B01AC01CD\r
-:10143000C301B2010E94700D6B017C01809182009A\r
-:101440009091830029813A81281B390BB9018827A3\r
-:1014500077FD8095982F0E94760E2CE234ED4AE1BC\r
-:101460005DE30E94630F9B01AC01C701B6010E94BE\r
-:10147000700D9B01AC01C501B4010E94700D0E946A\r
-:10148000430E7093E0006093DF0089819A8190930E\r
-:101490008300809382008091DF009091E0008F3F75\r
-:1014A000910531F02CF01093E0000093DF000BC0A9\r
-:1014B0008091DF009091E00081309F4F24F43092C2\r
-:1014C000E0002092DF008091D100813009F0ACC0B3\r
-:1014D0008091C5009091C600892B89F41092DE009E\r
-:1014E0001092DD0010927D0010927C001092780026\r
-:1014F0001092790010927A0010927B0095C0209192\r
-:10150000C5003091C6008091BB009091BC00281BA3\r
-:10151000390B3A8329832901662457FC6094762C81\r
-:10152000C0907800D0907900E0907A00F0907B0035\r
-:10153000C40CD51CE61CF71CC0927800D092790030\r
-:10154000E0927A00F0927B008091DD009091DE00C5\r
-:10155000BC01882777FD8095982F0E94760E4B015D\r
-:101560005C01C301B2010E94760E2CEB34E743E12B\r
-:101570005CE30E94630F2B013C01C701B6010E948E\r
-:10158000760E2BE631ED46E05AE30E94630F9B0195\r
-:10159000AC01C301B2010E94700D6B017C0180910E\r
-:1015A0007C0090917D00E981FA81E81BF90BBF0175\r
-:1015B000882777FD8095982F0E94760E2CE234EDD7\r
-:1015C0004AE15DE30E94630F9B01AC01C701B601D4\r
-:1015D0000E94700D9B01AC01C501B4010E94700D09\r
-:1015E0000E94430E7093DE006093DD0029813A81F2\r
-:1015F00030937D0020937C008091DD009091DE008F\r
-:101600008F3F910531F02CF01093DE000093DD0048\r
-:101610000BC08091DD009091DE0081309F4F24F45B\r
-:101620003092DE002092DD008091E3009091E40092\r
-:10163000209166003091670028173907B9F1809131\r
-:10164000E3009091E400892B19F485B38C6017C0F6\r
-:101650008091D000811107C08091E3009091E40057\r
-:101660001816190654F08091D000882351F080910B\r
-:10167000E3009091E40097FF04C085B3837F85BBAE\r
-:1016800002C0AA98AB9A8091E3009091E4009093F5\r
-:101690006700809366008091E3009091E40097FFDB\r
-:1016A00003C09195819591099BBD8ABD8091E10010\r
-:1016B0009091E2002091640030916500281739076D\r
-:1016C000B9F18091E1009091E200892B19F485B382\r
-:1016D000806317C08091CF00811107C08091E10025\r
-:1016E0009091E2001816190654F08091CF008823DB\r
-:1016F00051F08091E1009091E20097FF04C085B322\r
-:101700008F7C85BB02C0AC98AD9A8091E10090912E\r
-:10171000E20090936500809364008091E1009091D5\r
-:10172000E20097FF03C091958195910999BD88BD0D\r
-:101730008091DF009091E000209162003091630081\r
-:1017400028173907B1F18091DF009091E000892BD3\r
-:1017500019F485B3806C17C08091CE00811107C049\r
-:101760008091DF009091E0001816190654F08091E6\r
-:10177000CE00882351F08091DF009091E00097FF28\r
-:1017800004C085B38F7385BB02C0AE98AF9A8091B9\r
-:10179000DF009091E000909363008093620080915D\r
-:1017A000DF009091E00097FF03C09195819591092A\r
-:1017B00083BD8091DD009091DE002091600030912A\r
-:1017C000610028173907B1F18091DD009091DE00AA\r
-:1017D000892B19F482B38C6017C08091CD008111E0\r
-:1017E00007C08091DD009091DE001816190654F0B4\r
-:1017F0008091CD00882351F08091DD009091DE0032\r
-:1018000097FF04C082B3837F82BB02C09298939AF1\r
-:101810008091DD009091DE009093610080936000E4\r
-:101820008091DD009091DE0097FF03C09195819536\r
-:1018300091098CBF85B7806885BF889585B78F77FC\r
-:1018400085BF01CA6F927F929F92AF92BF92CF9253\r
-:10185000DF92EF92FF920F931F93CF93DF93CDB759\r
-:10186000DEB72C970FB6F894DEBF0FBECDBF8C014C\r
-:101870007B013A01FC0117821682838181FF19C125\r
-:10188000CE0101965C01F801D380F701D3FC2591CC\r
-:10189000D3FE21917F01222309F407C1253249F4A7\r
-:1018A000D3FC2591D3FE21917F01253211F0912C9B\r
-:1018B0001BC0B801822F90E00E94AD106301360179\r
-:1018C000E2CF222309F4F1C0622F70E08FE991E0AA\r
-:1018D0002C870E9457102C85892B49F0F701D3FCE7\r
-:1018E0002591D3FE21917F0197FEEBCF0CC02332CF\r
-:1018F00021F4F92DF0619F2EF1CF2C3639F4292DEA\r
-:101900002068922EEBCF222309F4CFC0622F70E023\r
-:1019100088E991E02C870E9457102C85892B41F093\r
-:101920006301F4E0CF0ED11CB8018FE390E012C048\r
-:10193000233641F0233789F0233521F5F92DF16065\r
-:101940009F2E0BC0630122E0C20ED11CB801F3012F\r
-:10195000808191810E94AD10B2CF630122E0C20E5E\r
-:10196000D11CF30160807180F30190FC859190FEA1\r
-:1019700081913F01882309F4A2CFB80190E00E9431\r
-:10198000AD10F2CF243611F0293639F5630197FEF8\r
-:1019900009C0F4E0CF0ED11CF30160817181828116\r
-:1019A00093810AC0F2E0CF0ED11CF30160817181F6\r
-:1019B000882777FD8095982FF92DFF7E9F2E97FF22\r
-:1019C00009C090958095709561957F4F8F4F9F4F7F\r
-:1019D000F0649F2E2AE030E038C02037A1F040F4B8\r
-:1019E0002835D1F02F3609F060C028E030E019C06A\r
-:1019F000253719F0283751F058C0292D2F7E922E07\r
-:101A00002AE030E00EC0892D8061982E992D9462D5\r
-:101A1000992E20E130E005C0E92DE4609E2E20E102\r
-:101A200032E0630197FE09C0F4E0CF0ED11CF30150\r
-:101A3000608171818281938108C0F2E0CF0ED11C58\r
-:101A4000F3016081718180E090E0A5010E940C119A\r
-:101A5000782E7A1896FE05C0B8018DE290E00E94BB\r
-:101A6000AD1094FE16C0FE01E70DF11D808180339C\r
-:101A700081F0B80180E390E00E94AD1092FE09C0B1\r
-:101A8000292D2072822F90E0B801885A9F4F0E9422\r
-:101A9000AD107A94F501E70DF11D8081B80190E059\r
-:101AA0000E94AD107110F5CF0ACFF80186819781A1\r
-:101AB00002C08FEF9FEF2C960FB6F894DEBF0FBEDB\r
-:101AC000CDBFDF91CF911F910F91FF90EF90DF90ED\r
-:101AD000CF90BF90AF909F907F906F900895505897\r
-:101AE000BB27AA270ED0A0C169D130F06ED120F05B\r
-:101AF00031F49F3F11F41EF45EC10EF4E095E7FB54\r
-:101B000054C1E92FB3D180F3BA1762077307840772\r
-:101B1000950718F071F49EF5CBC10EF4E0950B2EED\r
-:101B2000BA2FA02D0B01B90190010C01CA01A0012F\r
-:101B30001124FF27591B99F0593F50F4503E68F18A\r
-:101B40001A16F040A22F232F342F4427585FF3CFCB\r
-:101B5000469537952795A795F0405395C9F77EF49C\r
-:101B60001F16BA0B620B730B840BBAF09150A1F0E5\r
-:101B7000FF0FBB1F661F771F881FC2F70EC0BA0F6B\r
-:101B8000621F731F841F48F4879577956795B795F3\r
-:101B9000F7959E3F08F0B3CF9395880F08F09927EB\r
-:101BA000EE0F979587950895DCD008F481E00895AD\r
-:101BB00014D1E3954AC10CD037C107D140F0FED013\r
-:101BC00030F021F45F3F19F0F0C0511172C1F3C041\r
-:101BD0004DD198F39923C9F35523B1F3951B550BB8\r
-:101BE000BB27AA2762177307840738F09F5F5F4FF0\r
-:101BF000220F331F441FAA1FA9F333D00E2E3AF031\r
-:101C0000E0E830D091505040E695001CCAF729D04A\r
-:101C1000FE2F27D0660F771F881FBB1F2617370799\r
-:101C20004807AB07B0E809F0BB0B802DBF01FF27C9\r
-:101C300093585F4F2AF09E3F510568F0B6C039C1F6\r
-:101C40005F3FECF3983EDCF3869577956795B79503\r
-:101C5000F7959F5FC9F7880F911D9695879597F91E\r
-:101C60000895E1E0660F771F881FBB1F6217730797\r
-:101C70008407BA0720F0621B730B840BBA0BEE1FAC\r
-:101C800088F7E095089504D06894B11112C10895C1\r
-:101C9000F5D088F09F5790F0B92F9927B751A0F051\r
-:101CA000D1F0660F771F881F991F1AF0BA95C9F7F0\r
-:101CB00012C0B13081F0FCD0B1E00895F9C0672FB7\r
-:101CC000782F8827B85F39F0B93FCCF386957795A0\r
-:101CD0006795B395D9F73EF4909580957095619589\r
-:101CE0007F4F8F4F9F4F0895E89409C097FB3EF4B4\r
-:101CF00090958095709561957F4F8F4F9F4F992359\r
-:101D0000A9F0F92F96E9BB279395F69587957795D6\r
-:101D10006795B795F111F8CFFAF4BB0F11F460FF96\r
-:101D20001BC06F5F7F4F8F4F9F4F16C0882311F0EE\r
-:101D300096E911C0772321F09EE8872F762F05C002\r
-:101D4000662371F096E8862F70E060E02AF09A959D\r
-:101D5000660F771F881FDAF7880F9695879597F992\r
-:101D60000895990F0008550FAA0BE0E8FEEF16162C\r
-:101D70001706E807F907C0F012161306E407F5077F\r
-:101D800098F0621B730B840B950B39F40A2661F0F3\r
-:101D9000232B242B252B21F408950A2609F4A14096\r
-:101DA000A6958FEF811D811D089597F99F6780E8A3\r
-:101DB00070E060E008959FEF80EC089500240A949D\r
-:101DC0001616170618060906089500240A94121616\r
-:101DD0001306140605060895EECF50D0E8F3E894F4\r
-:101DE000E0E0BB279F57F0F02AED3FE049EC06C04A\r
-:101DF000EE0FBB0F661F771F881F28F0B23A6207ED\r
-:101E00007307840728F0B25A620B730B840BE395B7\r
-:101E10009A9572F7803830F49A95BB0F661F771F3A\r
-:101E2000881FD2F79048BAC0092E0394000C11F411\r
-:101E3000882352F0BB0F40F4BF2B11F460FF04C0A5\r
-:101E40006F5F7F4F8F4F9F4F0895EF93E0FF06C066\r
-:101E5000A2EA2AED3FE049EC5FEB53DEE5DF0F90AD\r
-:101E6000039401FC9058EAE7F1E0A4C057FD9058B4\r
-:101E7000440F551F59F05F3F71F04795880F97FB4E\r
-:101E8000991F61F09F3F79F0879508951216130608\r
-:101E90001406551FF2CF4695F1DF08C01616170637\r
-:101EA0001806991FF1CF869571056105089408956C\r
-:101EB000E894BB2766277727CB0197F9089551DF70\r
-:101EC00008F48FEF08950BD0AFCF78DF28F07DDFD7\r
-:101ED00018F0952309F069CF6ECF1124EACFC6DF41\r
-:101EE000A0F3959FD1F3950F50E0551F629FF0012D\r
-:101EF000729FBB27F00DB11D639FAA27F00DB11D86\r
-:101F0000AA1F649F6627B00DA11D661F829F22270E\r
-:101F1000B00DA11D621F739FB00DA11D621F839F95\r
-:101F2000A00D611D221F749F3327A00D611D231F6B\r
-:101F3000849F600D211D822F762F6A2F11249F57B9\r
-:101F400050408AF0E1F088234AF0EE0FFF1FBB1FDC\r
-:101F5000661F771F881F91505040A9F79E3F51057B\r
-:101F600070F023CFA6CF5F3FECF3983EDCF386956D\r
-:101F700077956795B795F795E7959F5FC1F7FE2B26\r
-:101F8000880F911D9695879597F908959F9325DF62\r
-:101F90000F9007FCEE5F59CF9F3F31F0915020F436\r
-:101FA000879577956795B795880F911D9695879535\r
-:101FB00097F908959F938F937F936F93FF93EF9378\r
-:101FC0009B01AC0180DFEF91FF9105D02F913F91F4\r
-:101FD0004F915F9178CFDF93CF931F930F93FF9231\r
-:101FE000EF92DF927B018C01689405C0DA2EEF013D\r
-:101FF00076DFFE01E894A5912591359145915591A3\r
-:10200000AEF3EF017EDDFE019701A801DA9479F7C6\r
-:10201000DF90EF90FF900F911F91CF91DF91089586\r
-:10202000052E97FB1EF400940E94271057FD07D041\r
-:102030000E94351007FC03D04EF40C9427105095E5\r
-:102040004095309521953F4F4F4F5F4F08959095A4\r
-:102050008095709561957F4F8F4F9F4F0895EE0F3C\r
-:10206000FF1F0590F491E02D0994A1E21A2EAA1BFE\r
-:10207000BB1BFD010DC0AA1FBB1FEE1FFF1FA21738\r
-:10208000B307E407F50720F0A21BB30BE40BF50B35\r
-:10209000661F771F881F991F1A9469F760957095BE\r
-:1020A000809590959B01AC01BD01CF010895FC0185\r
-:1020B0000590061621F00020D9F7C0010895319748\r
-:1020C000CF0108950F931F93CF93DF93EC018B0102\r
-:1020D000009731F46115710519F480E090E038C083\r
-:1020E0006EE070E081E090E00E946A11FC010097D0\r
-:1020F000A1F380E883830115110571F0138702872E\r
-:1021000081E8838380915B0190915C01892B21F4AC\r
-:10211000F0935C01E0935B012097C9F0D187C08701\r
-:1021200083818260838380915D0190915E01892B20\r
-:1021300071F4F0935E01E0935D0180915F019091F5\r
-:102140006001892B21F4F0936001E0935F01CF01DE\r
-:10215000DF91CF911F910F9108950F931F93CF930C\r
-:10216000DF93182F092FEB018B8181FD03C08FEFC7\r
-:102170009FEF20C082FF10C04E815F812C813D8186\r
-:10218000421753077CF4E881F9819F012F5F3F4F8D\r
-:1021900039832883108306C0E885F985812F099546\r
-:1021A000892B29F72E813F812F5F3F4F3F832E835D\r
-:1021B000812F902FDF91CF911F910F9108950F9351\r
-:1021C0001F93CF93DF93E0915D01F0915E01238136\r
-:1021D00021FF1BC0EC0100E010E0899160915D01DE\r
-:1021E00070915E01DB011896ED91FC91199788239F\r
-:1021F00031F00995892B89F30FEF1FEFEECF8AE0BD\r
-:102200000995892B11F4C80102C08FEF9FEFDF9170\r
-:10221000CF911F910F910895FA01AA27283051F10B\r
-:10222000203181F1E8946F936E7F6E5F7F4F8F4F07\r
-:102230009F4FAF4FB1E03ED0B4E03CD0670F781F66\r
-:10224000891F9A1FA11D680F791F8A1F911DA11D4B\r
-:102250006A0F711D811D911DA11D20D009F4689484\r
-:102260003F912AE0269F11243019305D3193DEF62C\r
-:10227000CF010895462F4770405D4193B3E00FD0E2\r
-:10228000C9F7F6CF462F4F70405D4A3318F0495DCD\r
-:1022900031FD4052419302D0A9F7EACFB4E0A695B0\r
-:1022A0009795879577956795BA95C9F700976105D2\r
-:1022B000710508959B01AC010A2E06945795479528\r
-:1022C00037952795BA95C9F7620F731F841F951F1D\r
-:1022D000A01D08950F931F93CF93DF93869F8001D6\r
-:1022E000879F100D969F100D1124C8010E94861122\r
-:1022F000EC01009729F0A80160E070E00E94AD12A7\r
-:10230000CE01DF91CF911F910F910895CF93DF936D\r
-:102310008230910510F482E090E0E0916301F09149\r
-:10232000640120E030E0A0E0B0E0309739F1408176\r
-:10233000518148175907B8F04817590771F482813D\r
-:102340009381109729F013969C938E9312972CC02B\r
-:10235000909364018093630127C02115310531F00A\r
-:102360004217530718F0A901DB0101C0EF019A01E0\r
-:10237000BD01DF010280F381E02DD7CF21153105AA\r
-:10238000F9F0281B390B2430310580F48A819B81B8\r
-:102390006115710521F0FB019383828304C0909342\r
-:1023A000640180936301FE01329644C0FE01E20F96\r
-:1023B000F31F8193919322503109398328833AC0C6\r
-:1023C0002091610130916201232B41F420916A0038\r
-:1023D00030916B003093620120936101209168007D\r
-:1023E000309169002115310541F42DB73EB7409178\r
-:1023F0006C0050916D00241B350BE0916101F09150\r
-:102400006201E217F307A0F42E1B3F0B28173907D0\r
-:1024100078F0AC014E5F5F4F2417350748F04E0F40\r
-:102420005F1F50936201409361018193919302C0B9\r
-:10243000E0E0F0E0CF01DF91CF910895CF93DF93FB\r
-:10244000009709F487C0FC01329713821282C09171\r
-:102450006301D0916401209781F420813181280F9C\r
-:10246000391F80916101909162018217930779F57C\r
-:10247000F0936201E09361016DC0DE0120E030E085\r
-:10248000AE17BF0750F412964D915C9113979D01C2\r
-:102490004115510509F1DA01F3CFB383A2834081DD\r
-:1024A0005181840F951F8A179B0771F48D919C9120\r
-:1024B0001197840F951F02969183808312968D91B8\r
-:1024C0009C911397938382832115310529F4F0930E\r
-:1024D0006401E09363013EC0D9011396FC93EE932F\r
-:1024E00012974D915D91A40FB51FEA17FB0779F480\r
-:1024F00080819181840F951F0296D90111969C933A\r
-:102500008E938281938113969C938E931297E0E031\r
-:10251000F0E08A819B81009719F0FE01EC01F9CF70\r
-:10252000CE01029628813981820F931F209161018B\r
-:10253000309162012817390769F4309729F4109215\r
-:1025400064011092630102C013821282D09362016F\r
-:10255000C0936101DF91CF910895DC0101C06D93BB\r
-:0C25600041505040E0F70895F894FFCF80\r
-:10256C0000800080008000800000650120000D0AC2\r
-:08257C0053746172740D00003C\r
+:100000000C9445000C9462000C9462000C94620005\r
+:100010000C9462000C9462000C9462000C946200D8\r
+:100020000C9462000C9429040C9462000C946200FD\r
+:100030000C9462000C9404050C9462000C94620011\r
+:100040000C9462000C9462000C9462000C946400A6\r
+:100050000C94620005A84CCDB2D44EB93836A90232\r
+:100060000C50B9918688083CA6AAAA2ABE000000B6\r
+:10007000803F45464765666700202B2D2E30313284\r
+:100080003334353637383968000011241FBECFE5C8\r
+:10009000D8E0DEBFCDBF10E0A0E6B0E0EEE7F5E2CD\r
+:1000A00002C005900D92A837B107D9F721E0A8E763\r
+:1000B000B0E001C01D92A536B207E1F70E94F90534\r
+:1000C0000C94BD120C9400001F920F920FB60F9269\r
+:1000D00011242F933F934F935F936F937F938F934D\r
+:1000E0009F93AF93BF93EF93FF9381B1887F803845\r
+:1000F00081F040F4803609F096C385EC86BF1092FB\r
+:10010000E60096C3883A09F4A7C1883B09F4A4C164\r
+:100110008AC38091E600893209F43CC108F04BC0E3\r
+:10012000883009F4CFC0F0F4833009F4F1C070F4E2\r
+:10013000813009F4EDC008F0A1C083B18093E600DE\r
+:100140008091E60081508093E6005DC3853009F41C\r
+:10015000DFC008F49FC0863009F4A8C0873009F4D6\r
+:10016000D7C059C3843209F4D3C0C8F4813209F42A\r
+:10017000B5C020F4803209F4CBC04DC3823209F4FB\r
+:10018000C7C0833209F047C383B12091A60090E035\r
+:10019000922B9093CA008093C90081E0F3C086320D\r
+:1001A00009F4B6C008F4A7C0873209F4B5C0883294\r
+:1001B00009F4EBC030C3833509F403C1F8F48E327F\r
+:1001C00009F4E8C060F48B3209F4B3C008F4E2C06B\r
+:1001D0008C3209F4DAC08D3209F4DCC01CC38035DE\r
+:1001E00009F4D3C020F48F3209F4A3C014C38135BD\r
+:1001F00009F4D0C0823509F4CDC00DC3803909F4AB\r
+:100200001BC168F5853509F400C108F4F9C08635CD\r
+:1002100009F4FBC0873509F0FEC223B180919E002E\r
+:1002200090919F00A091A000B091A100BA2FA92F9A\r
+:10023000982F8827822B80939E0090939F00A093F5\r
+:10024000A000B093A1008093EB009093EC00A093EA\r
+:10025000ED00B093EE0081E08093EF00D4C28239CC\r
+:1002600009F4F2C008F4ECC0833909F4F1C08F3FFF\r
+:1002700009F0D1C283B18093E500CDC283B1209152\r
+:10028000A60090E0922B9093E4008093E3001092FC\r
+:10029000D400B9C283B12091A60090E0922B909334\r
+:1002A000E2008093E1001092D300ADC283B12091AF\r
+:1002B000A60090E0922B9093E0008093DF001092D4\r
+:1002C000D200A1C283B12091A60090E0922B90931E\r
+:1002D000DE008093DD001092D10095C283B12091A1\r
+:1002E000A60090E0922B9093CC008093CB0081E00D\r
+:1002F0008093D40088C283B12091A60090E0922B15\r
+:100300009093C8008093C70081E08093D2007BC2A5\r
+:1003100083B18093A60077C283B12091A60090E0BC\r
+:10032000922B9093C6008093C50081E08093D1000A\r
+:100330006AC223B18091A2009091A300A091A40071\r
+:10034000B091A5006627782F892F9A2F622B609392\r
+:10035000A2007093A3008093A4009093A5002AE9C3\r
+:1003600031E043E555E40E94720F0E94520E7093F3\r
+:10037000CC006093CB007093CA006093C90081E009\r
+:100380008093D4008093D3003EC283B190E0A0E07C\r
+:10039000B0E00EC023B18091A2009091A300A09183\r
+:1003A000A400B091A500BA2FA92F982F8827822BDF\r
+:1003B0008093A2009093A300A093A400B093A50003\r
+:1003C00022C223B18091A2009091A300A091A40029\r
+:1003D000B091A500BA2FA92F982F8827822B809340\r
+:1003E000A2009093A300A093A400B093A5008093D3\r
+:1003F000E7009093E800A093E900B093EA0003C2FD\r
+:1004000083B190E0A0E0B0E00EC023B180919E00E7\r
+:1004100090919F00A091A000B091A100BA2FA92FA8\r
+:10042000982F8827822B80939E0090939F00A09303\r
+:10043000A000B093A100E7C183B18093D000E3C1D5\r
+:1004400083B18093CF00DFC183B18093CE00DBC145\r
+:1004500083B18093CD00D7C18091E600853309F444\r
+:100460002FC108F06BC0803209F4FDC080F58131E6\r
+:1004700009F4F6C0C0F4863009F4DAC048F48230DA\r
+:1004800009F4D3C0843009F0C5C188B599B5D1C08D\r
+:10049000883009F4D0C0803109F0BCC18091DB0004\r
+:1004A0009091DC00D8C0843109F4CCC038F482319A\r
+:1004B00009F4C3C0833109F4D3C0ACC1863109F457\r
+:1004C000C6C008F4CDC0873109F4CAC0A3C18632C2\r
+:1004D00009F4DDC0D0F4833209F4CFC058F481327E\r
+:1004E00009F4C6C0823209F095C18091C90090918B\r
+:1004F000CA00EFC0843209F4C5C0853209F08AC150\r
+:100500008091C7009091C80094C0813309F4C9C09C\r
+:1005100058F4873209F4C0C0803309F07BC1809160\r
+:10052000C2009091C300D5C0833309F4BFC008F066\r
+:10053000C2C08091C0009091C100CBC0823409F448\r
+:1005400013C108F043C08B3309F4DFC0F0F48833E3\r
+:1005500009F4C1C058F4863309F4B7C0873309F0F1\r
+:1005600059C18091BC009091BD0063C0893309F4EA\r
+:10057000C3C08A3309F04EC18091A2009091A300BC\r
+:10058000A091A400B091A50022C18E3309F4D1C07E\r
+:1005900078F48C3309F4BCC08D3309F03BC18091F1\r
+:1005A0009E0090919F00A091A000B091A10003C176\r
+:1005B000803409F4C7C008F0CEC08091B00090919B\r
+:1005C000B100A091B200B091B30033C0883409F4F7\r
+:1005D000DDC090F4853409F4E6C038F4833409F4BE\r
+:1005E000CCC0843409F4D2C015C1863409F4E7C004\r
+:1005F000873409F4F1C00EC18B3409F4EDC038F42E\r
+:10060000893409F4D0C08A3409F4D9C003C1813ACD\r
+:1006100009F4EBC0823A09F4F8C0803A09F0FAC054\r
+:1006200084B78F7083B914BEEEC08AB59BB501C084\r
+:1006300083B583B9E8C08CB7FCCF8091D900909185\r
+:10064000DA0009C08091D7009091D80004C0809151\r
+:10065000D5009091D60090939D0080939C0039C066\r
+:1006600080919C00E6CF8091CB009091CC0031C06E\r
+:100670008091CB009091CC00DCCF8091C90090910B\r
+:10068000CA00D7CF8091C7009091C80022C0809146\r
+:10069000C5009091C6001DC08091C5009091C60014\r
+:1006A000C8CF8091C2009091C300C3CF8091C00099\r
+:1006B0009091C100BECF8091BE009091BF0009C053\r
+:1006C0008091BE009091BF00B4CF8091BC0090910A\r
+:1006D000BD0093B998C08091AC009091AD00A091FD\r
+:1006E000AE00B091AF008093A2009093A300A093BE\r
+:1006F000A400B093A50052C08091A2009091A300E5\r
+:10070000A091A400B091A50056C08091A20091CF05\r
+:100710008091A8009091A900A091AA00B091AB008F\r
+:1007200080939E0090939F00A093A000B093A1009F\r
+:1007300035C080919E0090919F00A091A000B09143\r
+:10074000A10045C08091B8009091B900A091BA0075\r
+:10075000B091BB0023C08091B8009091B900A091E6\r
+:10076000BA00B091BB0027C08091B8009091B90049\r
+:10077000A091BA00B091BB002AC08091B8009091BE\r
+:10078000B900A091BA00B091BB0053CF8091B400E2\r
+:100790009091B500A091B600B091B7008B2F99272A\r
+:1007A000AA27BB2746CF8091B4009091B500A091B5\r
+:1007B000B600B091B700CD01AA27BB273ACF8091F0\r
+:1007C000B4009091B500A091B600B091B700892F08\r
+:1007D0009A2FAB2FBB272DCF8091B4009091B500FD\r
+:1007E000A091B600B091B70024CF80B326B3807437\r
+:1007F00090E033E0959587953A95E1F72770282B9F\r
+:1008000020952F7023B985EC07C08091A70083B98C\r
+:1008100085EC86BF13B885E886BF8091E6008F5FC0\r
+:100820008093E60005C086B78B7E86BF85EC86BFC9\r
+:10083000FF91EF91BF91AF919F918F917F916F91B8\r
+:100840005F914F913F912F910F900FBE0F901F908E\r
+:1008500018951F920F920FB60F9211242F933F936A\r
+:100860004F935F938F939F9399B390FD02C080E065\r
+:1008700001C083E091FF02C091E0892720919B0095\r
+:10088000281B20FF1FC080939B008091D000422F27\r
+:100890004270882349F08091DB009091DC00242F86\r
+:1008A00030E02150310908C08091DB009091DC00DC\r
+:1008B00021E030E0241B3109820F931F9093DC006C\r
+:1008C0008093DB0099B392959F7090FD02C080E009\r
+:1008D00001C083E091FF02C091E0892720919A0036\r
+:1008E000281B20FF1FC080939A008091CF002270A8\r
+:1008F000882359F08091D9009091DA0041E050E0CE\r
+:10090000421B5109840F951F09C08091D900909115\r
+:10091000DA0030E021503109820F931F9093DA0002\r
+:100920008093D90099B39695969590FD02C080E08A\r
+:1009300001C083E091FF02C091E0892720919900D6\r
+:10094000281B20FF1FC0809399008091CE00227049\r
+:10095000882359F08091D7009091D80041E050E071\r
+:10096000421B5109840F951F09C08091D7009091B7\r
+:10097000D80030E021503109820F931F9093D800A6\r
+:100980008093D70099B3929596959695937090FD24\r
+:1009900002C080E001C083E0927011F091E08927ED\r
+:1009A00020919800281B20FF1FC080939800809101\r
+:1009B000CD00422F4270882349F08091D50090915C\r
+:1009C000D600242F30E02150310908C08091D50095\r
+:1009D0009091D60021E030E0241B3109820F931F53\r
+:1009E0009093D6008093D5008091C4008F5F809350\r
+:1009F000C4009F918F915F914F913F912F910F90E4\r
+:100A00000FBE0F901F9018951F920F920FB60F9266\r
+:100A100011248F939F93EF93FF935F9B16C0E091F8\r
+:100A2000F200F091F3008CB1808381E0E735F807A4\r
+:100A300030F43196F093F300E093F20006C084EFB7\r
+:100A400090E09093F3008093F200FF91EF919F91DB\r
+:100A50008F910F900FBE0F901F9018959C018AB137\r
+:100A600088618AB9579A80B5866080BD40E050E0C1\r
+:100A700084E0220F331F441F551F8A95D1F760E091\r
+:100A800079E08DE390E00E941F10DA01C90101971F\r
+:100A9000A109B109892F9A2FAB2FBB27A7FDBA95C2\r
+:100AA00080BD215029B984EF90E09093F1008093AC\r
+:100AB000F0009093F3008093F20008955D9BFECFC9\r
+:100AC000FC0180818CB90895CF93DF931F92CDB73D\r
+:100AD000DEB78983CE0101960E945E0580E090E03A\r
+:100AE0000F90DF91CF910895CF93DF93EC01CE016A\r
+:100AF0002196FC012081222319F00E945E05F7CF88\r
+:100B0000DF91CF9108955F9BFECF8CB190E0089567\r
+:100B10000C94830568E875E084E695E00C946B100E\r
+:100B2000CF93DF93FC01E253FF4FA081B181EC0131\r
+:100B3000C453DF4F28813981A217B307A1F05D9B11\r
+:100B400012C02C912CB920813181AC0145535F4FEB\r
+:100B50002417350718F42F5F3F4F03C09C01285915\r
+:100B60003F4F31832083E091F000F091F10020911C\r
+:100B7000F2003091F3002E173F07C1F1DC01AC59B0\r
+:100B8000BF4FCD91DC911197208128836D917C918D\r
+:100B900011979C012B523F4FE9013881EB012881CD\r
+:100BA000321307C09C012C523F4FE90148814F5F2F\r
+:100BB00048839C012D593F4F6217730728F4EB01BE\r
+:100BC0002196CD93DC9302C08D939C93D1E0E735C1\r
+:100BD000FD0730F43196F093F100E093F00006C089\r
+:100BE00084EF90E09093F1008093F000DF91CF913B\r
+:100BF0000895CF93DF93CDB7DEB76E970FB6F89415\r
+:100C0000DEBF0FBECDBF88E087BB8CEF84BB8CEB13\r
+:100C100081BB1092E50080E895E20E942E050E94BB\r
+:100C20008A0580E582B986B78B7E86BF85EC86BF54\r
+:100C300081EF8FBD89E08EBD1BBC1ABC19BC18BCEE\r
+:100C400089E785BD13BC83BF1CBE8EE690E00E9481\r
+:100C5000E81085B78F7885BF84E089BF7894222417\r
+:100C6000239433243A948091E6008F3F41F480919D\r
+:100C7000E500853A21F4F894E0E0F8E109958091E7\r
+:100C8000EF00882309F461C0F894C090E700D09089\r
+:100C9000E800E090E900F090EA006091EB007091CC\r
+:100CA000EC008091ED009091EE001092EF007894AE\r
+:100CB0002BED3FE049E450E40E94720F25E236E05C\r
+:100CC00041E85EE30E94720F20E030E040E05FE325\r
+:100CD0000E94720FA70196010E947F0D4B015C01DB\r
+:100CE000A7019601C701B6010E947F0DA5019401DD\r
+:100CF0000E947E0D2AE931E043E555E40E94720F1F\r
+:100D00000E94520E7093CC006093CB007093CA0087\r
+:100D10006093C9002AE931E043E555E4C501B40117\r
+:100D20000E94720F0E94520E7093C8006093C70019\r
+:100D30007093C6006093C500F1E0F093D400F09387\r
+:100D4000D300F093D200F093D1008091C4008C398D\r
+:100D500008F47FC51092C400F8942091DB00309114\r
+:100D6000DC003A8329834091D9005091DA005C83FA\r
+:100D70004B838091D7009091D8009E838D83E09122\r
+:100D8000D500F091D600F887EF8378948091960093\r
+:100D9000909197005901A81AB90A809194009091F6\r
+:100DA00095008A01081B190B809192009091930085\r
+:100DB000ED80FE80E81AF90A8091900090919100F0\r
+:100DC0006F01C81AD90AB501882777FD8095982F39\r
+:100DD0000E94850E2AE037ED43E25CE30E94EA0DB3\r
+:100DE0000E94520E69877A878B879C87B801882773\r
+:100DF00077FD8095982F0E94850E2AE037ED43E21B\r
+:100E00005CE30E94EA0D0E94520E6D877E878F87F9\r
+:100E1000988BB701882777FD8095982F0E94850EC3\r
+:100E20002AE037ED43E25CE30E94EA0D0E94520E95\r
+:100E3000698B7A8B8B8B9C8BB601882777FD80958D\r
+:100E4000982F0E94850E2AE037ED43E25CE30E9472\r
+:100E5000EA0D0E94520E6D8B7E8B8F8B988FB501A1\r
+:100E6000600F711F882777FD8095982F0E94850E4F\r
+:100E70002AE931E043ED55E40E94EA0D4B015C01A3\r
+:100E8000B7016C0D7D1D882777FD8095982F0E94F6\r
+:100E9000850E2AE931E043ED55E40E94EA0D2B016D\r
+:100EA0003C01C090B000D090B100E090B200F09052\r
+:100EB000B300A50194010E947E0D25E236E041E8D1\r
+:100EC0005EE30E94EA0D9B01AC01C701B6010E94DE\r
+:100ED0007F0D6B017C012BED3FE049EC50E40E945B\r
+:100EE0006E0F2BED3FE049EC50E418162CF4C701CF\r
+:100EF000B6010E947E0D0EC0C701B6010E94E30D2F\r
+:100F000087FF0AC02BED3FE049EC50E4C701B60172\r
+:100F10000E947F0D6B017C01A3019201C501B40108\r
+:100F20000E947F0D20E030E040E05FE30E94720FFE\r
+:100F30004B015C014090B8005090B9006090BA003D\r
+:100F40007090BB00C701B6010E94E70DA501940196\r
+:100F50000E94720F9B01AC01C301B2010E947F0D80\r
+:100F6000698F7A8F8B8F9C8F4090B4005090B50022\r
+:100F70006090B6007090B700C701B6010E94D50F0F\r
+:100F8000A50194010E94720F9B01AC01C301B20143\r
+:100F90000E947F0D2B013C010D851E8529853A8518\r
+:100FA000020F131F17FF02C00F5F1F4F1595079504\r
+:100FB0004D895E8989899A89480F591F57FF02C058\r
+:100FC0004F5F5F4FFA01F595E795FE8FED8FBF01FB\r
+:100FD000600F711F882777FD8095982F0E94850EDE\r
+:100FE0002AE931E043ED55E40E94EA0D4B015C0132\r
+:100FF0006D8D7E8D601B710B882777FD8095982FF6\r
+:101000000E94850E2BEB3CE047E255E40E94EA0D7E\r
+:10101000F894C092B000D092B100E092B200F09289\r
+:10102000B300298D3A8D4B8D5C8D2093B8003093A1\r
+:10103000B9004093BA005093BB004092B400509264\r
+:10104000B5006092B6007092B70049855A855093FA\r
+:10105000C3004093C200ED85FE85F093C100E0938C\r
+:10106000C00029893A893093BF002093BE004D8982\r
+:101070005E895093BD004093BC008092AC0090927A\r
+:10108000AD00A092AE00B092AF006093A800709344\r
+:10109000A9008093AA009093AB00789489819A81EB\r
+:1010A0009093970080939600EB81FC81F0939500DC\r
+:1010B000E09394002D813E81309393002093920021\r
+:1010C0004F81588550939100409390008091D400B7\r
+:1010D000813009F0A9C08091CB009091CC00892B80\r
+:1010E00089F41092E4001092E30010928F001092A5\r
+:1010F0008E0010928A0010928B0010928C00109239\r
+:101100008D0092C00091CB001091CC008091C20064\r
+:101110009091C300081B190B2801662457FC6094AA\r
+:10112000762CC0908A00D0908B00E0908C00F090DC\r
+:101130008D00C40CD51CE61CF71CC0928A00D0920E\r
+:101140008B00E0928C00F0928D008091E3009091F2\r
+:10115000E400BC01882777FD8095982F0E94850EBA\r
+:101160004B015C01C301B2010E94850E2CEB34E7F8\r
+:1011700043E15CE30E94720F2B013C01C701B60101\r
+:101180000E94850E2BE631ED46E05AE30E94720F75\r
+:101190009B01AC01C301B2010E947F0D6B017C0178\r
+:1011A00080918E0090918F00F801E81BF90BBF0130\r
+:1011B000882777FD8095982F0E94850E2CE234EDCC\r
+:1011C0004AE15DE30E94720F9B01AC01C701B601C9\r
+:1011D0000E947F0D9B01AC01C501B4010E947F0DEF\r
+:1011E0000E94520E7093E4006093E30010938F000E\r
+:1011F00000938E008091E3009091E4008F3F910571\r
+:1012000041F03CF02FEF30E03093E4002093E30016\r
+:101210000BC08091E3009091E40081309F4F24F453\r
+:101220003092E4002092E3008091D300813009F0F5\r
+:10123000A9C08091C9009091CA00892B89F41092AD\r
+:10124000E2001092E1001092890010928800109242\r
+:10125000840010928500109286001092870092C040\r
+:101260000091C9001091CA008091C0009091C10006\r
+:10127000081B190B2801662457FC6094762CC0903B\r
+:101280008400D0908500E0908600F0908700C40C28\r
+:10129000D51CE61CF71CC0928400D0928500E09219\r
+:1012A0008600F09287008091E1009091E200BC01FD\r
+:1012B000882777FD8095982F0E94850E4B015C0151\r
+:1012C000C301B2010E94850E2CEB34E743E15CE3DD\r
+:1012D0000E94720F2B013C01C701B6010E94850ECE\r
+:1012E0002BE631ED46E05AE30E94720F9B01AC0100\r
+:1012F000C301B2010E947F0D6B017C0180918800C7\r
+:1013000090918900A801481B590BBA01882777FDE5\r
+:101310008095982F0E94850E2CE234ED4AE15DE322\r
+:101320000E94720F9B01AC01C701B6010E947F0DA4\r
+:101330009B01AC01C501B4010E947F0D0E94520EB9\r
+:101340007093E2006093E10010938900009388009D\r
+:101350008091E1009091E2008F3F910541F03CF0D7\r
+:101360008FEF90E09093E2008093E1000BC08091BA\r
+:10137000E1009091E20081309F4F24F43092E2002E\r
+:101380002092E1008091D200813009F0A9C08091C3\r
+:10139000C7009091C800892B89F41092E000109248\r
+:1013A000DF00109283001092820010927E00109253\r
+:1013B0007F00109280001092810092C00091C700BF\r
+:1013C0001091C8008091BE009091BF00081B190BBE\r
+:1013D0002801662457FC6094762CC0907E00D09043\r
+:1013E0007F00E0908000F0908100C40CD51CE61CCA\r
+:1013F000F71CC0927E00D0927F00E0928000F092B5\r
+:1014000081008091DF009091E000BC01882777FD8A\r
+:101410008095982F0E94850E4B015C01C301B2019B\r
+:101420000E94850E2CEB34E743E15CE30E94720FCF\r
+:101430002B013C01C701B6010E94850E2BE631ED60\r
+:1014400046E05AE30E94720F9B01AC01C301B20156\r
+:101450000E947F0D6B017C0180918200909183003E\r
+:101460009801281B390BB901882777FD8095982FA3\r
+:101470000E94850E2CE234ED4AE15DE30E94720F7A\r
+:101480009B01AC01C701B6010E947F0D9B01AC011D\r
+:10149000C501B4010E947F0D0E94520E7093E000BE\r
+:1014A0006093DF0010938300009382008091DF003F\r
+:1014B0009091E0008F3F910541F03CF04FEF50E0FC\r
+:1014C0005093E0004093DF000BC08091DF009091CB\r
+:1014D000E00081309F4F24F43092E0002092DF0042\r
+:1014E0008091D100813009F0A9C08091C500909110\r
+:1014F000C600892B89F41092DE001092DD00109254\r
+:101500007D0010927C001092780010927900109269\r
+:101510007A0010927B0092C00091C5001091C60025\r
+:101520008091BC009091BD00081B190B2801662416\r
+:1015300057FC6094762CC0907800D0907900E090B1\r
+:101540007A00F0907B00C40CD51CE61CF71CC092FE\r
+:101550007800D0927900E0927A00F0927B0080913E\r
+:10156000DD009091DE00BC01882777FD8095982FE3\r
+:101570000E94850E4B015C01C301B2010E94850EE1\r
+:101580002CEB34E743E15CE30E94720F2B013C013A\r
+:10159000C701B6010E94850E2BE631ED46E05AE305\r
+:1015A0000E94720F9B01AC01C301B2010E947F0D2A\r
+:1015B0006B017C0180917C0090917D00F801E81B1B\r
+:1015C000F90BBF01882777FD8095982F0E94850E23\r
+:1015D0002CE234ED4AE15DE30E94720F9B01AC0105\r
+:1015E000C701B6010E947F0D9B01AC01C501B4018A\r
+:1015F0000E947F0D0E94520E7093DE006093DD000A\r
+:1016000010937D0000937C008091DD009091DE00BE\r
+:101610008F3F910541F03CF02FEF30E03093DE003A\r
+:101620002093DD000BC08091DD009091DE008130C1\r
+:101630009F4F24F43092DE002092DD008091E30081\r
+:101640009091E400209166003091670028173907D7\r
+:10165000B9F18091E3009091E400892B19F485B3EE\r
+:101660008C6017C08091D000811107C08091E30089\r
+:101670009091E4001816190654F08091D000882348\r
+:1016800051F08091E3009091E40097FF04C085B38E\r
+:10169000837F85BB02C0AA98AB9A8091E3009091AA\r
+:1016A000E40090936700809366008091E30090913E\r
+:1016B000E40097FF03C09195819591099BBD8ABD78\r
+:1016C0008091E1009091E2002091640030916500EA\r
+:1016D00028173907B9F18091E1009091E200892B38\r
+:1016E00019F485B3806317C08091CF00811107C0C2\r
+:1016F0008091E1009091E2001816190654F0809153\r
+:10170000CF00882351F08091E1009091E20097FF93\r
+:1017100004C085B38F7C85BB02C0AC98AD9A809124\r
+:10172000E1009091E20090936500809364008091C5\r
+:10173000E1009091E20097FF03C091958195910996\r
+:1017400099BD88BD8091DF009091E00020916200FA\r
+:101750003091630028173907B1F18091DF00909133\r
+:10176000E000892B19F485B3806C17C08091CE00FE\r
+:10177000811107C08091DF009091E00018161906D2\r
+:1017800054F08091CE00882351F08091DF00909139\r
+:10179000E00097FF04C085B38F7385BB02C0AE988D\r
+:1017A000AF9A8091DF009091E00090936300809366\r
+:1017B00062008091DF009091E00097FF03C0919557\r
+:1017C0008195910983BD8091DD009091DE0020918B\r
+:1017D00060003091610028173907B1F18091DD0078\r
+:1017E0009091DE00892B19F482B38C6017C0809130\r
+:1017F000CD00811107C08091DD009091DE001816A8\r
+:10180000190654F08091CD00882351F08091DD00BD\r
+:101810009091DE0097FF04C082B3837F82BB02C039\r
+:101820009298939A8091DD009091DE0090936100F0\r
+:10183000809360008091DD009091DE0097FF03C0EF\r
+:101840009195819591098CBF8091A7008F5F8093BE\r
+:10185000A70085B7806885BF889585B78F7785BFD6\r
+:1018600002CA6F927F929F92AF92BF92CF92DF9205\r
+:10187000EF92FF920F931F93CF93DF93CDB7DEB715\r
+:101880002C970FB6F894DEBF0FBECDBF8C017B0145\r
+:101890003A01FC0117821682838181FF19C1CE01B2\r
+:1018A00001965C01F801D380F701D3FC2591D3FEAA\r
+:1018B00021917F01222309F407C1253249F4D3FC89\r
+:1018C0002591D3FE21917F01253211F0912C1BC06F\r
+:1018D000B801822F90E00E94B61063013601E2CF7A\r
+:1018E000222309F4F1C0622F70E089E790E02C8791\r
+:1018F0000E9460102C85892B49F0F701D3FC2591BB\r
+:10190000D3FE21917F0197FEEBCF0CC0233221F44F\r
+:10191000F92DF0619F2EF1CF2C3639F4292D206856\r
+:10192000922EEBCF222309F4CFC0622F70E082E722\r
+:1019300090E02C870E9460102C85892B41F0630178\r
+:10194000F4E0CF0ED11CB8018FE390E012C0233633\r
+:1019500041F0233789F0233521F5F92DF1609F2ED1\r
+:101960000BC0630122E0C20ED11CB801F3018081DB\r
+:1019700091810E94B610B2CF630122E0C20ED11C49\r
+:10198000F30160807180F30190FC859190FE81915C\r
+:101990003F01882309F4A2CFB80190E00E94B6105D\r
+:1019A000F2CF243611F0293639F5630197FE09C0CC\r
+:1019B000F4E0CF0ED11CF3016081718182819381AB\r
+:1019C0000AC0F2E0CF0ED11CF3016081718188273B\r
+:1019D00077FD8095982FF92DFF7E9F2E97FF09C0E8\r
+:1019E00090958095709561957F4F8F4F9F4FF064D4\r
+:1019F0009F2E2AE030E038C02037A1F040F428358F\r
+:101A0000D1F02F3609F060C028E030E019C025374A\r
+:101A100019F0283751F058C0292D2F7E922E2AE038\r
+:101A200030E00EC0892D8061982E992D9462992EF8\r
+:101A300020E130E005C0E92DE4609E2E20E132E097\r
+:101A4000630197FE09C0F4E0CF0ED11CF301608161\r
+:101A500071818281938108C0F2E0CF0ED11CF30125\r
+:101A60006081718180E090E0A5010E941511782EBF\r
+:101A70007A1896FE05C0B8018DE290E00E94B6107B\r
+:101A800094FE16C0FE01E70DF11D8081803381F0C8\r
+:101A9000B80180E390E00E94B61092FE09C0292DA3\r
+:101AA0002072822F90E0B801885A9F4F0E94B61092\r
+:101AB0007A94F501E70DF11D8081B80190E00E9454\r
+:101AC000B6107110F5CF0ACFF8018681978102C058\r
+:101AD0008FEF9FEF2C960FB6F894DEBF0FBECDBFF1\r
+:101AE000DF91CF911F910F91FF90EF90DF90CF90FA\r
+:101AF000BF90AF909F907F906F9008955058BB27F4\r
+:101B0000AA270ED0A0C169D130F06ED120F031F4F7\r
+:101B10009F3F11F41EF45EC10EF4E095E7FB54C143\r
+:101B2000E92FB3D180F3BA176207730784079507CB\r
+:101B300018F071F49EF5CBC10EF4E0950B2EBA2F80\r
+:101B4000A02D0B01B90190010C01CA01A0011124C3\r
+:101B5000FF27591B99F0593F50F4503E68F11A166F\r
+:101B6000F040A22F232F342F4427585FF3CF469500\r
+:101B700037952795A795F0405395C9F77EF41F1622\r
+:101B8000BA0B620B730B840BBAF09150A1F0FF0FEC\r
+:101B9000BB1F661F771F881FC2F70EC0BA0F621FD8\r
+:101BA000731F841F48F4879577956795B795F795C8\r
+:101BB0009E3F08F0B3CF9395880F08F09927EE0F5A\r
+:101BC000979587950895DCD008F481E0089514D1A5\r
+:101BD000E3954AC10CD037C107D140F0FED030F0B8\r
+:101BE00021F45F3F19F0F0C0511172C1F3C04DD123\r
+:101BF00098F39923C9F35523B1F3951B550BBB27D4\r
+:101C0000AA2762177307840738F09F5F5F4F220F80\r
+:101C1000331F441FAA1FA9F333D00E2E3AF0E0E879\r
+:101C200030D091505040E695001CCAF729D0FE2FC5\r
+:101C300027D0660F771F881FBB1F26173707480757\r
+:101C4000AB07B0E809F0BB0B802DBF01FF2793580D\r
+:101C50005F4F2AF09E3F510568F0B6C039C15F3F23\r
+:101C6000ECF3983EDCF3869577956795B795F795F5\r
+:101C70009F5FC9F7880F911D9695879597F90895ED\r
+:101C8000E1E0660F771F881FBB1F62177307840789\r
+:101C9000BA0720F0621B730B840BBA0BEE1F88F798\r
+:101CA000E095089504D06894B11112C10895F5D05B\r
+:101CB00088F09F5790F0B92F9927B751A0F0D1F035\r
+:101CC000660F771F881F991F1AF0BA95C9F712C0BF\r
+:101CD000B13081F0FCD0B1E00895F9C0672F782FC2\r
+:101CE0008827B85F39F0B93FCCF38695779567952B\r
+:101CF000B395D9F73EF490958095709561957F4F97\r
+:101D00008F4F9F4F0895E89409C097FB3EF490953C\r
+:101D10008095709561957F4F8F4F9F4F9923A9F0C4\r
+:101D2000F92F96E9BB279395F69587957795679553\r
+:101D3000B795F111F8CFFAF4BB0F11F460FF1BC097\r
+:101D40006F5F7F4F8F4F9F4F16C0882311F096E92A\r
+:101D500011C0772321F09EE8872F762F05C06623D8\r
+:101D600071F096E8862F70E060E02AF09A95660F91\r
+:101D7000771F881FDAF7880F9695879597F908954A\r
+:101D8000990F0008550FAA0BE0E8FEEF161617068C\r
+:101D9000E807F907C0F012161306E407F50798F0F4\r
+:101DA000621B730B840B950B39F40A2661F0232B0D\r
+:101DB000242B252B21F408950A2609F4A140A69589\r
+:101DC0008FEF811D811D089597F99F6780E870E06E\r
+:101DD00060E008959FEF80EC089500240A941616A1\r
+:101DE000170618060906089500240A941216130609\r
+:101DF000140605060895EECF50D0E8F3E894E0E02D\r
+:101E0000BB279F57F0F02AED3FE049EC06C0EE0FEC\r
+:101E1000BB0F661F771F881F28F0B23A620773074F\r
+:101E2000840728F0B25A620B730B840BE3959A95E2\r
+:101E300072F7803830F49A95BB0F661F771F881FA2\r
+:101E4000D2F79048BAC0092E0394000C11F48823ED\r
+:101E500052F0BB0F40F4BF2B11F460FF04C06F5F62\r
+:101E60007F4F8F4F9F4F0895EF93E0FF06C0A2EA88\r
+:101E70002AED3FE049EC5FEB53DEE5DF0F90039482\r
+:101E800001FC9058E4E5F0E0A4C057FD9058440FE1\r
+:101E9000551F59F05F3F71F04795880F97FB991FC9\r
+:101EA00061F09F3F79F08795089512161306140686\r
+:101EB000551FF2CF4695F1DF08C016161706180613\r
+:101EC000991FF1CF86957105610508940895E894EE\r
+:101ED000BB2766277727CB0197F9089551DF08F4D0\r
+:101EE0008FEF08950BD0AFCF78DF28F07DDF18F0AB\r
+:101EF000952309F069CF6ECF1124EACFC6DFA0F396\r
+:101F0000959FD1F3950F50E0551F629FF001729F8E\r
+:101F1000BB27F00DB11D639FAA27F00DB11DAA1FAD\r
+:101F2000649F6627B00DA11D661F829F2227B00DFA\r
+:101F3000A11D621F739FB00DA11D621F839FA00D85\r
+:101F4000611D221F749F3327A00D611D231F849FD5\r
+:101F5000600D211D822F762F6A2F11249F5750402C\r
+:101F60008AF0E1F088234AF0EE0FFF1FBB1F661FC7\r
+:101F7000771F881F91505040A9F79E3F510570F080\r
+:101F800023CFA6CF5F3FECF3983EDCF386957795A1\r
+:101F90006795B795F795E7959F5FC1F7FE2B880F7B\r
+:101FA000911D9695879597F908959F9325DF0F903A\r
+:101FB00007FCEE5F59CF9F3F31F0915020F4879599\r
+:101FC00077956795B795880F911D9695879597F9A1\r
+:101FD00008959F938F937F936F93FF93EF939B014C\r
+:101FE000AC0180DFEF91FF9105D02F913F914F9190\r
+:101FF0005F9178CFDF93CF931F930F93FF92EF9270\r
+:10200000DF927B018C01689405C0DA2EEF0176DF48\r
+:10201000FE01E894A5912591359145915591AEF336\r
+:10202000EF017EDDFE019701A801DA9479F7DF90D8\r
+:10203000EF90FF900F911F91CF91DF910895052EA2\r
+:1020400097FB1EF400940E94361057FD07D00E94A3\r
+:102050003E1007FC03D04EF40C943610509540957A\r
+:10206000309521953F4F4F4F5F4F08959095809544\r
+:10207000709561957F4F8F4F9F4F0895A1E21A2E63\r
+:10208000AA1BBB1BFD010DC0AA1FBB1FEE1FFF1F1C\r
+:10209000A217B307E407F50720F0A21BB30BE40B6C\r
+:1020A000F50B661F771F881F991F1A9469F76095B3\r
+:1020B0007095809590959B01AC01BD01CF0108956D\r
+:1020C000FC010590061621F00020D9F7C001089503\r
+:1020D0003197CF0108950F931F93CF93DF93EC01B6\r
+:1020E0008B01009731F46115710519F480E090E0DF\r
+:1020F00038C06EE070E081E090E00E947311FC0156\r
+:102100000097A1F380E883830115110571F013870F\r
+:10211000028781E8838380915B0190915C01892B28\r
+:1021200021F4F0935C01E0935B012097C9F0D18723\r
+:10213000C08783818260838380915D0190915E017D\r
+:10214000892B71F4F0935E01E0935D0180915F0152\r
+:1021500090916001892B21F4F0936001E0935F017D\r
+:10216000CF01DF91CF911F910F9108950F931F938E\r
+:10217000CF93DF93182F092FEB018B8181FD03C0D3\r
+:102180008FEF9FEF20C082FF10C04E815F812C81B6\r
+:102190003D81421753077CF4E881F9819F012F5F4D\r
+:1021A0003F4F39832883108306C0E885F985812F46\r
+:1021B0000995892B29F72E813F812F5F3F4F3F8360\r
+:1021C0002E83812F902FDF91CF911F910F91089532\r
+:1021D0000F931F93CF93DF93E0915D01F0915E0128\r
+:1021E000238121FF1BC0EC0100E010E08991609188\r
+:1021F0005D0170915E01DB011896ED91FC911997DC\r
+:10220000882331F00995892B89F30FEF1FEFEECF6B\r
+:102210008AE00995892B11F4C80102C08FEF9FEF66\r
+:10222000DF91CF911F910F910895FA01AA272830CD\r
+:1022300051F1203181F1E8946F936E7F6E5F7F4F93\r
+:102240008F4F9F4FAF4FB1E03ED0B4E03CD0670F0F\r
+:10225000781F891F9A1FA11D680F791F8A1F911D62\r
+:10226000A11D6A0F711D811D911DA11D20D009F4B2\r
+:1022700068943F912AE0269F11243019305D3193F4\r
+:10228000DEF6CF010895462F4770405D4193B3E0DD\r
+:102290000FD0C9F7F6CF462F4F70405D4A3318F084\r
+:1022A000495D31FD4052419302D0A9F7EACFB4E035\r
+:1022B000A6959795879577956795BA95C9F70097ED\r
+:1022C0006105710508959B01AC010A2E069457958E\r
+:1022D000479537952795BA95C9F7620F731F841FE5\r
+:1022E000951FA01D08950F931F93CF93DF93869F93\r
+:1022F0008001879F100D969F100D1124C8010E9428\r
+:102300008F11EC01009729F0A80160E070E00E94B5\r
+:10231000B612CE01DF91CF911F910F910895CF9307\r
+:10232000DF938230910510F482E090E0E091630148\r
+:10233000F091640120E030E0A0E0B0E0309739F1A6\r
+:102340004081518148175907B8F04817590771F46F\r
+:1023500082819381109729F013969C938E93129704\r
+:102360002CC0909364018093630127C0211531052F\r
+:1023700031F04217530718F0A901DB0101C0EF014A\r
+:102380009A01BD01DF010280F381E02DD7CF211535\r
+:102390003105F9F0281B390B2430310580F48A818E\r
+:1023A0009B816115710521F0FB019383828304C039\r
+:1023B0009093640180936301FE01329644C0FE0154\r
+:1023C000E20FF31F819391932250310939832883BF\r
+:1023D0003AC02091610130916201232B41F4209198\r
+:1023E0006A0030916B00309362012093610120916B\r
+:1023F0006800309169002115310541F42DB73EB7D1\r
+:1024000040916C0050916D00241B350BE0916101EF\r
+:10241000F0916201E217F307A0F42E1B3F0B28177F\r
+:10242000390778F0AC014E5F5F4F2417350748F04D\r
+:102430004E0F5F1F5093620140936101819391930E\r
+:1024400002C0E0E0F0E0CF01DF91CF910895CF939B\r
+:10245000DF93009709F487C0FC0132971382128240\r
+:10246000C0916301D0916401209781F42081318172\r
+:10247000280F391F809161019091620182179307A3\r
+:1024800079F5F0936201E09361016DC0DE0120E017\r
+:1024900030E0AE17BF0750F412964D915C91139740\r
+:1024A0009D014115510509F1DA01F3CFB383A283F0\r
+:1024B00040815181840F951F8A179B0771F48D917C\r
+:1024C0009C911197840F951F029691838083129699\r
+:1024D0008D919C911397938382832115310529F463\r
+:1024E000F0936401E09363013EC0D9011396FC931D\r
+:1024F000EE9312974D915D91A40FB51FEA17FB075C\r
+:1025000079F480819181840F951F0296D9011196EB\r
+:102510009C938E938281938113969C938E931297B2\r
+:10252000E0E0F0E08A819B81009719F0FE01EC0168\r
+:10253000F9CFCE01029628813981820F931F209115\r
+:102540006101309162012817390769F4309729F445\r
+:10255000109264011092630102C013821282D09320\r
+:102560006201C0936101DF91CF910895DC0101C048\r
+:0E2570006D9341505040E0F70895F894FFCF6E\r
+:10257E0000800080008000800000650120000D0AB0\r
+:08258E0053746172740D00002A\r
 :00000001FF\r