/Modules/TDC/GP201A/SW/PICinterface/GP2.c
51,17 → 51,6
//}TDC_registers;
 
 
/*
1 0 0 0 0 ADR2 ADR1 ADR0 Write into address ADR
1 0 1 1 0 ADR2 ADR1 ADR0 Read from address ADR
0 1 1 1 0 0 0 0 Init
0 1 0 1 0 0 0 0 Power On Reset
0 0 0 0 0 0 0 1 Start_Cycle
0 0 0 0 0 0 1 0 Start_Temp
0 0 0 0 0 0 1 1 Start_Cal_Resonator
0 0 0 0 0 1 0 0 Start_Cal_TDC
*/
 
void TDC_init()
{
output_low(TDC_ENABLE);
256,80 → 245,3
}
return time;
}
 
float TDC_mrange1_get_time(unsigned int channel1, unsigned int shot1, unsigned int channel2, unsigned int shot2)
{
unsigned int32 measurement;
float time;
 
switch (shot1)
{
case 0:
hit1=TDC_MRANGE1_HIT1_START;
break;
case 1:
if (channel1 == 1) hit1=TDC_MRANGE1_HIT1_1CH1; else hit1=TDC_MRANGE1_HIT1_1CH2;
break;
 
case 2:
if (channel1 == 1) hit1=TDC_MRANGE1_HIT1_2CH1; else hit1=TDC_MRANGE1_HIT1_2CH2;
break;
 
case 3:
if (channel1 == 1) hit1=TDC_MRANGE1_HIT1_3CH1; else hit1=TDC_MRANGE1_HIT1_3CH2;
break;
 
case 4:
if (channel1 == 1) hit1=TDC_MRANGE1_HIT1_4CH1; else hit1=TDC_MRANGE1_HIT1_4CH2;
break;
}
 
switch (shot2)
{
case 0:
hit2=TDC_MRANGE1_HIT2_START;
break;
 
case 1:
if (channel2 == 1) hit2=TDC_MRANGE1_HIT2_1CH1; else hit2=TDC_MRANGE1_HIT2_1CH2;
break;
 
case 2:
if (channel2 == 1) hit2=TDC_MRANGE1_HIT2_2CH1; else hit2=TDC_MRANGE1_HIT2_2CH2;
break;
 
case 3:
if (channel2 == 1) hit2=TDC_MRANGE1_HIT2_3CH1; else hit2=TDC_MRANGE1_HIT2_3CH2;
break;
 
case 4:
if (channel2 == 1) hit2=TDC_MRANGE1_HIT2_4CH1; else hit2=TDC_MRANGE1_HIT2_4CH2;
break;
}
 
TDC_update_reg1(); // tell to ALU which shot period must be computed
Delay_ms(50); // wait to computing of result
measurement=TDC_get_measurement(7&TDC_get_status()); // read computed value on pointer result register address
 
switch (clkhsdiv)
{
case TDC_CLKHSDIV_1:
time=(measurement/65536.0) * 1.0e6/TDC_CLKHS;
break;
 
case TDC_CLKHSDIV_2:
time=(measurement/65536.0) * 1.0e6/TDC_CLKHS * 2.0;
break;
 
case TDC_CLKHSDIV_4:
time=(measurement/65536.0) * 1.0e6/TDC_CLKHS * 4.0;
break;
case TDC_CLKHSDIV_8:
time=(measurement/65536.0) * 1.0e6/TDC_CLKHS * 8.0;
break;
}
return time;
}
/Modules/TDC/GP201A/SW/PICinterface/main.c
33,6 → 33,17
 
delay_ms(50);
 
/*
1 0 0 0 0 ADR2 ADR1 ADR0 Write into address ADR
1 0 1 1 0 ADR2 ADR1 ADR0 Read from address ADR
0 1 1 1 0 0 0 0 Init
0 1 0 1 0 0 0 0 Power On Reset
0 0 0 0 0 0 0 1 Start_Cycle
0 0 0 0 0 0 1 0 Start_Temp
0 0 0 0 0 0 1 1 Start_Cal_Resonator
0 0 0 0 0 1 0 0 Start_Cal_TDC
*/
 
int16 ret16;
int8 ret8;
 
39,29 → 50,24
TDC_reset();
delay_ms(100);
while(TRUE)
{
 
 
//----------------------------------------------- Nastaveni registru
MRange=TDC_MRANGE2; // sets measurement mode
hit1=TDC_MRANGE2_HIT1_START;
hitin1=TDC_HITIN1_4; // set nomber of hits on channel 1
hitin2=TDC_HITIN2_0; // disable channel 2 (normal state for this mode)
en_int= TDC_INT_ALU | TDC_INT_ENDHIT | TDC_INT_TIMEOUT; // eneble all possible interrupt flags
en_err_val=TDC_ERRVAL_EN; // enable of error value output
clkhsdiv=TDC_CLKHSDIV_4; // divide clkHS by 4
delval1=0x0; // windowing disabled
hitin1=TDC_HITIN1_4;
hitin2=TDC_HITIN2_0;
en_int= TDC_INT_ALU | TDC_INT_ENDHIT | TDC_INT_TIMEOUT;
en_err_val=TDC_ERRVAL_EN;
clkhsdiv=TDC_CLKHSDIV_4;
delval1=0x0;
delval2=0x0;
delval3=0x0;
TDC_update_registers();
 
while(TRUE)
{
delay_ms(100);
 
//----------------------------------------------- Mereni 2
//----------------------------------------------- Mereni
TDC_init();
91,7 → 97,7
//----------------------------------------------- Pocitani
 
printf("Time2: %3.7f %3.7f %3.7f ", TDC_mrange2_get_time(1), TDC_mrange2_get_time(2), TDC_mrange2_get_time(3));
printf("Time: %3.7f %3.7f %3.7f ", TDC_mrange2_get_time(1), TDC_mrange2_get_time(2), TDC_mrange2_get_time(3));
output_low(TDC_ENABLE); //status register
ret8=0;
101,59 → 107,6
output_high(TDC_ENABLE);
printf("[%Lu %Lu %Lu %Lu %Lu %Lu %Lu]\r\n", (1&(ret16)>>12), (1&(ret16)>>11), (1&(ret16)>>10), 1&(ret16)>>9, 7&(ret16)>>6, 7&(ret16)>>3, 7&TDC_get_status());
 
//----------------------------------------------- Nastaveni registru
MRange=TDC_MRANGE1;
hit1=TDC_MRANGE1_HIT1_NOAC;
hit2=TDC_MRANGE1_HIT2_NOAC;
hitin1=TDC_HITIN1_1;
hitin2=TDC_HITIN2_1;
en_int= TDC_INT_ALU | TDC_INT_ENDHIT | TDC_INT_TIMEOUT;
en_err_val=TDC_ERRVAL_EN;
clkhsdiv=TDC_CLKHSDIV_4;
delval1=0x0;
delval2=0x0;
delval3=0x0;
TDC_update_registers();
 
delay_ms(100);
 
 
//----------------------------------------------- Mereni 1
TDC_init();
delay_ms(50);
output_low(START);
output_low(STOP1);
output_low(STOP2);
output_high(START); // start of time measurement
output_low(START);
 
output_high(STOP2);
output_high(STOP1);
 
output_low(STOP2);
output_low(STOP1);
//----------------------------------------------- Pocitani
 
printf("Time1: %3.7f %3.7f %3.7f ", TDC_mrange1_get_time(1,0,1,1), TDC_mrange1_get_time(2,0,2,1), TDC_mrange1_get_time(1,1,2,1));
printf("Time1: %LX %LX %LX %LX ", TDC_get_measurement(1), TDC_get_measurement(2), TDC_get_measurement(3), TDC_get_measurement(4));
output_low(TDC_ENABLE); //status register
ret8=0;
ret8=(0b1011<<4)|4;
spi_xfer(TDC_stream,ret8,8);
ret16=spi_xfer(TDC_stream,0,16);
output_high(TDC_ENABLE);
printf("[%Lu %Lu %Lu %Lu %Lu %Lu %Lu]\r\n", (1&(ret16)>>12), (1&(ret16)>>11), (1&(ret16)>>10), 1&(ret16)>>9, 7&(ret16)>>6, 7&(ret16)>>3, 7&TDC_get_status());
 
 
/// ----------------------------------------------- Temperature masurement
 
TDC_start_temp();
output_low(TDC_ENABLE); //status register
ret8=0;
164,7 → 117,5
printf("Temp: [%Lu %Lu %Lu %Lu %Lu %Lu %Lu] ", (1&(ret16)>>12), (1&(ret16)>>11), (1&(ret16)>>10), 1&(ret16)>>9, 7&(ret16)>>6, 7&(ret16)>>3, 7&TDC_get_status());
printf(" %LX %LX %LX %LX \r\n", TDC_get_measurement(1), TDC_get_measurement(2), TDC_get_measurement(3), TDC_get_measurement(4));
}
}
/Modules/TDC/GP201A/SW/PICinterface/main.hex
1,489 → 1,342
:10000000A1EF09F054696D65323A2025332E376629
:100010002025332E37662025332E3766200054697D
:100020006D65313A2025332E37662025332E37660D
:100030002025332E3766200054696D65313A20251E
:100040004C5820254C5820254C5820254C58200031
:1000500054656D703A205B254C7520254C75202524
:100060004C7520254C7520254C7520254C75202578
:100070004C755D2000004450200807E0456E403676
:10008000413642364336452EFAD793829390939465
:100090008A9444C045F08A8443AE8A9043BE8A80E5
:1000A00040364136423643368A94003601360236AF
:1000B000033681A2009081B20080452EECD7000C5F
:1000C00093968A96436A426A416A500E406E080EC1
:1000D000446ED1DF93968A86000CEA6A380EE96E88
:1000E000EF500DE0060E016E006A002EFED7012EC5
:1000F000FBD77B0E006E002EFED7EF2EF3D7000C41
:1001000093968A96436A426A416A810E406E080E4F
:10011000446EB1DF436A426A416A0BC040F0040E8C
:10012000446EA9DF436A426A416A0CC040F0040E83
:10013000446EA1DF000E0AB4010E436A426A416AAE
:10014000406E010E446E97DF436A426A416A010EB7
:10015000406E446E90DF436A426A416A0DC040F0CF
:10016000030E446E88DF436A426A416A0EC040F063
:10017000030E446E80DF436A426A416A406A080E99
:10018000446E79DF93968A86000C93968A96436A2A
:10019000426A416A800E406E080E446E6CDF436A0C
:1001A000426A416A04C040F0040E446E64DF436A50
:1001B000426A416A05C040F0040E446E5CDF436A47
:1001C000426A416A06C040F0020E446E54DF436A40
:1001D000426A416A07C040F0020E446E4CDF436A37
:1001E000426A416A08C040F0020E446E44DF000ECD
:1001F00009B0010E436A426A416A406E010E446EC4
:100200003ADF000E09B2010E436A426A416A406E4B
:10021000010E446E30DF000E09B4010E436A426ADB
:10022000416A406E010E446E26DF000E09B6010ED3
:10023000436A426A416A406E010E446E1CDF000E42
:1002400009B8010E436A426A416A406E010E446E6B
:1002500012DF000E09BA010E436A426A416A406E1B
:10026000010E446E08DF000E09BC010E436A426AAB
:10027000416A406E010E446EFEDE000E09BE010EA4
:10028000436A426A416A406E010E446EF4DE000E1B
:100290000AB0010E436A426A416A406E010E446E22
:1002A000EADE000E0AB2010E436A426A416A406EFB
:1002B000010E446EE0DE93968A8622DF93968A963C
:1002C000436A426A416A820E406E200E446ED3DE5B
:1002D000436A426A416A0FC040F0030E446ECBDEAF
:1002E000000E0AB6010E436A426A416A406E010E70
:1002F000446EC1DE000E0AB8010E436A426A416ACA
:10030000406E010E446EB7DE13C043F012C042F0DF
:1003100011C041F010C040F0130E446EACDE939655
:100320008A8693968A96436A426A416A830E406E31
:10033000200E446EA0DE436A426A416A406A020EA1
:10034000446E99DE000E0ABA010E436A426A416A9F
:10035000406E010E446E8FDE436A426A416A14C0E9
:1003600040F0020E446E87DE18C043F017C042F022
:1003700016C041F015C040F0130E446E7CDE93961B
:100380008A8693968A96436A426A416A840E406ED0
:10039000200E446E70DE436A426A416A040E406E6B
:1003A000050E446E68DE1CC043F01BC042F01AC04C
:1003B00041F019C040F0130E446E5DDE93968A86BC
:1003C00093968A96436A426A416A850E406E200E71
:1003D000446E51DE436A426A416A1DC040F0030E1A
:1003E000446E49DE000E0ABC010E436A426A416A4D
:1003F000406E010E446E3FDE000E0ABE010E436ADF
:10040000426A416A406E010E446E35DE436A426ABA
:10041000416A1EC040F0030E446E2DDE436A426AFC
:1004200020C041F01FC040F0100E446E24DE9396B1
:100430008A86000C93968A96436A426A416A700ED5
:10044000406E080E446E17DE93968A86000C9396D3
:100450008A96436A426A416A010E406E080E446EF3
:100460000ADE93968A8641EF0AF093968A96436A4B
:10047000426A416AB40E406E080E446EFCDD436A67
:10048000426A416A406A100E446EF5DD015001C0B7
:1004900039F000C038F093968A8638C001F039C030
:1004A00002F0000C93968A96B00E3A24FF0F3F6E2E
:1004B000436A426A416A406E080E446EDCDD436A5C
:1004C000426A416A406A200E446ED5DD015003C085
:1004D0003EF002C03DF001C03CF000C03BF09396FE
:1004E0008A863BC000F03CC001F03DC002F03EC037
:1004F00003F0000CB60E006E036A026A016A3850FF
:1005000039103A103B1002E1006A0DD0D89001BEBC
:1005100009D0383639363A363B360336023601369C
:10052000002EF4D7019E000C3C50D8B4A5D0486EE4
:100530004050D8B4A1D0485E05E37F0E4826D8B01D
:100540009BD006D0810E485ED8A096D0D8B494D067
:1005500048C000F0016A026A036A476A3DC046F07B
:10056000468E3EC045F03FC044F0190E486E4350E1
:10057000445E0DE2010E455E0AE2465E08E2475E19
:1005800006E2472A462A452A4350442628D04250AC
:10059000455E12E2010E465E0FE2475E0DE2472A1B
:1005A000462A425045264350442619E3452A17E17E
:1005B000462A15E1472A13D041508009465E0EE2D3
:1005C000010E475E0BE2472A415080094626425001
:1005D0004526E9E3462AE7E1472AE5D70380482E86
:1005E00001D00BD0D8904436453646364736D890A1
:1005F0000336023601364936BAD749A006D0D8901C
:10060000013202320332493202D0000635E049BEDF
:100610001ED0D89044364536463647364350445E61
:1006200007E2010E455E04E2465E02E2475E1AE31F
:100630004250455E05E2010E465E02E2475E12E36D
:1006400041508009465E03E2010E475E0BE3032A38
:1006500009E1022A07E1012A05E1002A0DE0013241
:10066000023203323DC048F04150481A48AE02D031
:10067000018E06D0019E04D0006A016A026A036AF4
:10068000000C3D50D8B471D0006E4150D8B46DD03C
:10069000002604E3810E002668E204D07F0E005E8F
:1006A00064E363E03EC045F04250451A3E8E428E00
:1006B00040504402F4CF47F03F504302F4CF03F0E0
:1006C000F3CF46F04402F3504726F4504622000E82
:1006D000032240504302F3504726F4504622000EB6
:1006E000026A032202223E504402F3504626F4508E
:1006F0000322000E02223E504302F3500326F45020
:100700000222000E016A012240504202F3504626A6
:10071000F4500322000E022201223F504202F35005
:100720000326F4500222000E01223E504202F350F2
:100730000226F4500122002A01BE05D046360336B7
:10074000023601360006000E46AE0AD0032A022207
:100750000122015005E1025003E1035001E1002AAA
:1007600045BE018E45AE019E04D0006A016A026A50
:10077000036A000C2C50010A05E0030A06E0010A96
:1007800007E009D0020E0B6E06D0030E0B6E03D0ED
:10079000040E0B6E00D0B4DC320E386E9EDC65DECB
:1007A00002C003F00150070B356E366A3A6E7ADEEE
:1007B00003C030F002C02FF001C02EF000C02DF0B9
:1007C0000750FC0FD8B089D1040F76EF05F030C088
:1007D0003BF02FC03AF02EC039F02DC038F08ADE41
:1007E00003C03FF002C03EF001C03DF000C03CF04D
:1007F000436A426A416A8F0E406E96DE00C035F051
:1008000001C036F002C037F003C038F003C040F03A
:1008100002C03FF001C03EF000C03DF0446A240E2B
:10082000436E740E426E920E416E2BDF00C035F0A7
:1008300001C036F002C037F003C038F003C03FF00B
:1008400002C03EF001C03DF000C03CF0800E436E9F
:10085000960E426E180E416E950E406E65DE03C018
:1008600034F002C033F001C032F000C031F035D1B5
:1008700030C03BF02FC03AF02EC039F02DC038F018
:1008800039DE03C03FF002C03EF001C03DF000C0C1
:100890003CF0436A426A416A8F0E406E45DE00C0FA
:1008A00035F001C036F002C037F003C038F003C0A5
:1008B00040F002C03FF001C03EF000C03DF0446A8D
:1008C000240E436E740E426E920E416EDADE00C04C
:1008D00035F001C036F002C037F003C038F003C075
:1008E0003FF002C03EF001C03DF000C03CF0800E81
:1008F000436E960E426E180E416E950E406E14DEDB
:1009000000C035F001C036F002C037F003C038F047
:1009100003C040F002C03FF001C03EF000C03DF017
:10092000446A436A426A800E416EABDE03C034F013
:1009300002C033F001C032F000C031F0CED030C080
:100940003BF02FC03AF02EC039F02DC038F0D2DD88
:1009500003C03FF002C03EF001C03DF000C03CF0DB
:10096000436A426A416A8F0E406EDEDD00C035F098
:1009700001C036F002C037F003C038F003C040F0C9
:1009800002C03FF001C03EF000C03DF0446A240EBA
:10099000436E740E426E920E416E73DE00C035F0EF
:1009A00001C036F002C037F003C038F003C03FF09A
:1009B00002C03EF001C03DF000C03CF0800E436E2E
:1009C000960E426E180E416E950E406EADDD00C063
:1009D00035F001C036F002C037F003C038F003C074
:1009E00040F002C03FF001C03EF000C03DF0446A5C
:1009F000436A426A810E416E44DE03C034F002C095
:100A000033F001C032F000C031F067D030C03BF0AD
:100A10002FC03AF02EC039F02DC038F06BDD03C086
:100A20003FF002C03EF001C03DF000C03CF0436A20
:100A3000426A416A8F0E406E77DD00C035F001C01A
:100A400036F002C037F003C038F003C040F002C0F7
:100A50003FF001C03EF000C03DF0446A240E436EFA
:100A6000740E426E920E416E0CDE00C035F001C075
:100A700036F002C037F003C038F003C03FF002C0C8
:100A80003EF001C03DF000C03CF0800E436E960E7B
:100A9000426E180E416E950E406E46DD00C035F078
:100AA00001C036F002C037F003C038F003C040F098
:100AB00002C03FF001C03EF000C03DF0446A436A0E
:100AC000426A820E416EDDDD03C034F002C033F0B5
:100AD00001C032F000C031F000D031C000F032C0AF
:100AE00001F033C002F034C003F0000CE824F76AD0
:100AF000F736070FF66E0B0EF7220A00F550FA6E66
:100B00000800F550F96ECE0770083E090C0A939E56
:100B10008A9E080E016E00D00000018E0ED0019E4C
:100B20003D32D8B08A8ED8A08A9E018C06D0019C16
:100B3000012EF6D700D000008A8EA70EE96EE92EAE
:100B4000FED700D001BEEBD701BCF1D7000C0900E5
:100B5000F6CF35F0F7CF36F0F5CF3DF0D8DF35C022
:100B6000F6FF36C0F7FF342EF2D7000C3D50B60822
:100B70003D6E036A3EC041F03E8ED8903E323F3219
:100B8000403203320232013200323D2EF6D741AEFE
:100B90000BD0001E011E021E031E002AD8B4012A1B
:100BA000D8B4022AD8B4032A3AEF06F0006A016AE0
:100BB000026A036A456A466A476A486A44504310B3
:100BC000421041102CE0200E496ED8903D363E3642
:100BD0003F36403645364636473648364450485C00
:100BE00008E14350475C05E14250465C02E1415058
:100BF000455C0FE34150455E4250D8A0423C465E02
:100C00004350D8A0433C475E4450D8A0443C485E83
:100C1000D8800036013602360336492ED6D7EA6A26
:100C2000450EE96E000CE950356E3450376E19E010
:100C300033C040F032C03FF031C03EF030C03DF034
:100C4000446A436A200E426E820E416E1ADD03C072
:100C500033F002C032F001C031F000C030F0372E66
:100C6000E7D733C040F032C03FF031C03EF030C073
:100C70003DF07CD703C033F002C032F001C031F048
:100C800000C030F033AE0DD03506358A301E311E2F
:100C9000321E331E302AD8B4312AD8B4322AD8B4FE
:100CA000332A3B0E3C6E9A0E3B6ECA0E3A6E396A80
:100CB0000A0E376E3450D8B4352A33C040F032C0F3
:100CC0003FF031C03EF030C03DF03CC044F03BC08E
:100CD00043F03AC042F039C041F068DF0150EFCF35
:100CE00030F0ECCF31F0ECCF32F0ECCF33F00052FB
:100CF0000FE13428375C0CE035500CE00F0B375C0B
:100D000001E037E235BE35D035BC04D0200E2DD001
:100D1000200E351635AA0CD0359A3450D8A4350695
:100D20000050356E2D0E3D6EF2DE3550006E356A88
:100D30003450375C0AE10050356E2E0E3D6EE7DE12
:100D40003550006E200E3516000E300E35AA0DD02F
:100D5000359A3450D8A435060050356E2D0E3D6EB0
:100D6000D6DE3550006E356A300E002600C03DF0EC
:100D7000CEDE3CC040F03BC03FF03AC03EF039C050
:100D80003DF0446A436A426A0A0E416E0FDF03C0B7
:100D90003CF002C03BF001C03AF000C039F0372E01
:100DA0008CD7000CEACF3AF0E9CF39F03338F009AC
:100DB000356E3526E20F366E320F386E33500F0B1C
:100DC000362636263826E90F376E3726372632384C
:100DD0000F0B3726382637363836381E383632501D
:100DE0000F0B38263536070E346E0A0E37063826B6
:100DF000FDE336063726FDE335063626FDE33406E9
:100E00003526FDE3EA6A340EE96E070E3914399C83
:100E1000E926380EE95CD8B4398CEF50006E08E151
:100E200039BC06D039B813D039B602D0200E03D061
:100E300039863998300E0026EACF33F0E9CF32F008
:100E400000C03DF064DE33C0EAFF32C0E9FFEE507F
:100E500039ACDFD7000C2D50FB0F25E2050F3DEF1D
:100E600009F00C6A20D02C2C03D0010E0C6E02D09D
:100E7000090E0C6E18D02C2C03D0020E0C6E02D072
:100E80000A0E0C6E10D02C2C03D0030E0C6E02D068
:100E90000B0E0C6E08D02C2C03D0040E0C6E02D05E
:100EA0000C0E0C6E00D02F50FB0F25E2050F4FEFFC
:100EB00009F00B6A20D02E2C03D0010E0B6E02D04D
:100EC000090E0B6E18D02E2C03D0020E0B6E02D022
:100ED0000A0E0B6E10D02E2C03D0030E0B6E02D018
:100EE0000B0E0B6E08D02E2C03D0040E0B6E02D00E
:100EF0000C0E0B6E00D080EC00F0320E386E6DECF4
:100F000000F035EC02F002C003F00150070B386E20
:100F1000396A3A6E52EC02F003C033F002C032F08C
:100F200001C031F000C030F00750FC0FD8B09CD1A8
:100F3000040F61EF09F033C03BF032C03AF031C02A
:100F400039F030C038F07AEC02F003C03FF002C054
:100F50003EF001C03DF000C03CF0436A426A416A85
:100F60008F0E406E94EC02F000C038F001C039F0F2
:100F700002C03AF003C03BF003C040F002C03FF0B3
:100F800001C03EF000C03DF0446A240E436E740E72
:100F9000426E920E416E41EC03F000C038F001C089
:100FA00039F002C03AF003C03BF003C03FF002C08A
:100FB0003EF001C03DF000C03CF0800E436E960E46
:100FC000426E180E416E950E406E94EC02F003C016
:100FD00037F002C036F001C035F000C034F044D123
:100FE00033C03BF032C03AF031C039F030C038F095
:100FF0007AEC02F003C03FF002C03EF001C03DF0C9
:1010000000C03CF0436A426A416A8F0E406E94EC25
:1010100002F000C038F001C039F002C03AF003C05D
:101020003BF003C040F002C03FF001C03EF000C002
:101030003DF0446A240E436E740E426E920E416E71
:1010400041EC03F000C038F001C039F002C03AF0C2
:1010500003C03BF003C03FF002C03EF001C03DF0D2
:1010600000C03CF0800E436E960E426E180E416E2C
:10107000950E406E94EC02F000C038F001C039F0DB
:1010800002C03AF003C03BF003C040F002C03FF0A2
:1010900001C03EF000C03DF0446A436A426A800EDF
:1010A000416E41EC03F003C037F002C036F001C0DE
:1010B00035F000C034F0D8D033C03BF032C03AF045
:1010C00031C039F030C038F07AEC02F003C03FF0A4
:1010D00002C03EF001C03DF000C03CF0436A426AED
:1010E000416A8F0E406E94EC02F000C038F001C0EF
:1010F00039F002C03AF003C03BF003C040F002C038
:101100003FF001C03EF000C03DF0446A240E436E43
:10111000740E426E920E416E41EC03F000C038F046
:1011200001C039F002C03AF003C03BF003C03FF009
:1011300002C03EF001C03DF000C03CF0800E436EA6
:10114000960E426E180E416E950E406E94EC02F0B3
:1011500000C038F001C039F002C03AF003C03BF0E3
:1011600003C040F002C03FF001C03EF000C03DF0BF
:10117000446A436A426A810E416E41EC03F003C047
:1011800037F002C036F001C035F000C034F06CD04A
:1011900033C03BF032C03AF031C039F030C038F0E3
:1011A0007AEC02F003C03FF002C03EF001C03DF017
:1011B00000C03CF0436A426A416A8F0E406E94EC74
:1011C00002F000C038F001C039F002C03AF003C0AC
:1011D0003BF003C040F002C03FF001C03EF000C051
:1011E0003DF0446A240E436E740E426E920E416EC0
:1011F00041EC03F000C038F001C039F002C03AF011
:1012000003C03BF003C03FF002C03EF001C03DF020
:1012100000C03CF0800E436E960E426E180E416E7A
:10122000950E406E94EC02F000C038F001C039F029
:1012300002C03AF003C03BF003C040F002C03FF0F0
:1012400001C03EF000C03DF0446A436A426A820E2B
:10125000416E41EC03F003C037F002C036F001C02C
:1012600035F000C034F000D034C000F035C001F0DB
:1012700036C002F037C003F0000CE824F76AF736F6
:10128000950FF66E120EF7220A00F550FA6E08005E
:10129000F550F96E620E660E760E860E960EE824F6
:1012A000F76AF736B90FF66E120EF7220A00F550FC
:1012B000FA6E0800F550F96EB20EB60EC60ED60ED6
:1012C000E60EE824F76AF736DD0FF66E120EF72207
:1012D0000A00F550FA6E0800F550F96E360FE00F6F
:1012E000B810901135BE0FD00F0E006E34380016B6
:1012F0000A0E005C03E2300E002602D035500026B4
:1013000000C03DF004DC0F0E34160A0E345C02E21D
:10131000300E02D0359E3550342634C03DF087EC77
:1013200005F0000C93968A96436A426A416A020E5F
:10133000406E080E446E3BEC00F093968A869FEF59
:101340000DF0F86AD09EEA6AE96A939E8A8E9382CB
:10135000939093948A94046A010E056E066A076A54
:10136000086E09800992099409860988099A098CEE
:10137000099E0A900A92050E0B6E0C6E0A940D6A75
:101380000E6A010E0F6E0A960A98136A126A116AA3
:10139000106A0A9A030E146E186A176A166A156A9A
:1013A0001C6A1B6A1A6A196A1D6A0A9C0A8E1E6ADE
:1013B000206A1F6AC150C00B0F09C16E070EB46EC0
:1013C000C150C00B0F09C16EC090C092C094C09EA6
:1013D000C2809698C69A949E93809392010EC66E90
:1013E000000EC76ED190800ED56ECD6A000ECA6E0B
:1013F000000ECB6E9484BD6AB76AB66A070EB46EEF
:101400009250926E100E006E002EFED70000B45067
:10141000A19CB56A60EC00F095988C98959A8C9A8E
:10142000959C8C9C320E386E6DEC00F060EC00F0F8
:10143000640E386E6DEC00F0098C010E0C6E040E1B
:101440000E6E0D6A070E0F6E0A8A020E076E136A81
:10145000126A116A106A186A176A166A156A1C6A93
:101460001B6A1A6A196AC5EC00F0640E386E6DECDE
:1014700000F01AEC02F0320E386E6DEC00F027EF3F
:1014800002F0C80E386E6DEC00F0959C8C8C95982F
:101490008C8895988C98F90E006E002EFED700D09F
:1014A000959A8C8A959A8C9A00D000D00000959AD3
:1014B0008C8A959A8C9A100E006E002EFED7000032
:1014C000959A8C8A959A8C9A00D000D00000010ED3
:1014D0002C6EBAEC03F000C024F001C025F002C06D
:1014E00026F003C027F0020E2C6EBAEC03F000C009
:1014F00028F001C029F002C02AF003C02BF0030E2F
:101500002C6EBAEC03F000C02CF001C02DF002C02C
:101510002EF003C02FF0040EF66E000EF76E070ECD
:10152000346EA7EC05F0890EE96E27C033F026C0B3
:1015300032F025C031F024C030F0070E346E13ECC9
:1015400006F0200E3D6E87EC05F0890EE96E2BC08B
:1015500033F02AC032F029C031F028C030F0070E35
:10156000346E13EC06F0200E3D6E87EC05F0890E0C
:10157000E96E2FC033F02EC032F02DC031F02CC0F8
:1015800030F0070E346E13EC06F0200E3D6E87EC43
:1015900005F093968A96236AB40E236E436A426AD4
:1015A000416A23C040F0080E446E3BEC00F0436AF1
:1015B000426A416A406A100E446E3BEC00F00150F2
:1015C00001C022F000C021F093968A862238026E74
:1015D000036A0F0E02160250010B246E256A036A7D
:1015E0002230026E023202321F0E02160250010B2E
:1015F000266E276A036A2230026E02323F0E0216FE
:101600000250010B286E296AD890036A2230026EBC
:10161000010B2A6E2B6A2230036E2130026E0332D8
:101620000232033202320332023203320232033216
:101630000232030E03160250070B2C6E2D6A223065
:10164000036E2130026E03320232033202321F0E69
:1016500003160250070B2E6E2F6A35EC02F002C003
:1016600003F00150070B306E316A5B0E3D6E87EC64
:1016700005F0100EE96E25C033F024C032F0D2EC34
:1016800006F0200E3D6E87EC05F0100EE96E27C0C7
:1016900033F026C032F0D2EC06F0200E3D6E87EC1F
:1016A00005F0100EE96E29C033F028C032F0D2ECFC
:1016B00006F0200E3D6E87EC05F0100EE96E2BC093
:1016C00033F02AC032F0D2EC06F0200E3D6E87ECEB
:1016D00005F0100EE96E2DC033F02CC032F0D2ECC4
:1016E00006F0200E3D6E87EC05F0100EE96E2FC05F
:1016F00033F02EC032F0D2EC06F0200E3D6E87ECB7
:1017000005F0100EE96E31C033F030C032F0D2EC8B
:1017100006F05D0E3D6E87EC05F00D0E3D6E87EC1C
:1017200005F00A0E3D6E87EC05F0099C050E0C6E67
:101730000B6E010E0E6E0D6E070E0F6E0A8A020EF4
:10174000076E136A126A116A106A186A176A166AB3
:10175000156A1C6A1B6A1A6A196AC5EC00F0640EE5
:10176000386E6DEC00F01AEC02F0320E386E6DEC53
:1017700000F095988C98959A8C9A959C8C9C95984D
:101780008C8895988C98959C8C8C959A8C8A959C35
:101790008C9C959A8C9A010E2C6E2D6A2E6E2F6E53
:1017A0002BEC07F000C024F001C025F002C026F0A9
:1017B00003C027F0020E2C6E2D6A2E6E010E2F6EC6
:1017C0002BEC07F000C028F001C029F002C02AF07D
:1017D00003C02BF0010E2C6E2D6E020E2E6E010E2C
:1017E0002F6E2BEC07F000C02CF001C02DF002C0D2
:1017F0002EF003C02FF01E0EF66E000EF76E070ED1
:10180000346EA7EC05F0890EE96E27C033F026C0D0
:1018100032F025C031F024C030F0070E346E13ECE6
:1018200006F0200E3D6E87EC05F0890EE96E2BC0A8
:1018300033F02AC032F029C031F028C030F0070E52
:10184000346E13EC06F0200E3D6E87EC05F0890E29
:10185000E96E2FC033F02EC032F02DC031F02CC015
:1018600030F0070E346E13EC06F0200E3D6E87EC60
:1018700005F0010E3A6E52EC02F003C027F002C0F0
:1018800026F001C025F000C024F0020E3A6E52ECA2
:1018900002F003C02BF002C02AF001C029F000C002
:1018A00028F0030E3A6E52EC02F003C02FF002C093
:1018B0002EF001C02DF000C02CF0040E3A6E52EC58
:1018C00002F003C033F002C032F001C031F000C0BA
:1018D00030F0380EF66E000EF76E070E346EA7EC81
:1018E00005F027C034F0370E356EFCDC26C034F02E
:1018F000370E356EF7DC25C034F0370E356EF2DC6E
:1019000024C034F0370E356EEDDC200E3D6E87ECD2
:1019100005F02BC034F0370E356EE4DC2AC034F00D
:10192000370E356EDFDC29C034F0370E356EDADC69
:1019300028C034F0370E356ED5DC200E3D6E87ECB6
:1019400005F02FC034F0370E356ECCDC2EC034F0ED
:10195000370E356EC7DC2DC034F0370E356EC2DC65
:101960002CC034F0370E356EBDDC200E3D6E87EC9A
:1019700005F033C034F0370E356EB4DC32C034F0CD
:10198000370E356EAFDC31C034F0370E356EAADC61
:1019900030C034F0370E356EA5DC200E3D6E87EC7E
:1019A00005F093968A96236AB40E236E436A426AC0
:1019B000416A23C040F0080E446E3BEC00F0436ADD
:1019C000426A416A406A100E446E3BEC00F00150DE
:1019D00001C022F000C021F093968A862238026E60
:1019E000036A0F0E02160250010B246E256A036A69
:1019F0002230026E023202321F0E02160250010B1A
:101A0000266E276A036A2230026E02323F0E0216E9
:101A10000250010B286E296AD890036A2230026EA8
:101A2000010B2A6E2B6A2230036E2130026E0332C4
:101A30000232033202320332023203320232033202
:101A40000232030E03160250070B2C6E2D6A223051
:101A5000036E2130026E03320232033202321F0E55
:101A600003160250070B2E6E2F6A35EC02F002C0EF
:101A700003F00150070B306E316A5B0E3D6E87EC50
:101A800005F0100EE96E25C033F024C032F0D2EC20
:101A900006F0200E3D6E87EC05F0100EE96E27C0B3
:101AA00033F026C032F0D2EC06F0200E3D6E87EC0B
:101AB00005F0100EE96E29C033F028C032F0D2ECE8
:101AC00006F0200E3D6E87EC05F0100EE96E2BC07F
:101AD00033F02AC032F0D2EC06F0200E3D6E87ECD7
:101AE00005F0100EE96E2DC033F02CC032F0D2ECB0
:101AF00006F0200E3D6E87EC05F0100EE96E2FC04B
:101B000033F02EC032F0D2EC06F0200E3D6E87ECA2
:101B100005F0100EE96E31C033F030C032F0D2EC77
:101B200006F05D0E3D6E87EC05F00D0E3D6E87EC08
:101B300005F00A0E3D6E87EC05F092EF09F09396E2
:101B40008A96236AB40E236E436A426A416A23C0AE
:101B500040F0080E446E3BEC00F0436A426A416A72
:101B6000406A100E446E3BEC00F0015001C022F0C0
:101B700000C021F093968A862238026E036A0F0E07
:101B800002160250010B246E256A036A2230026E8F
:101B9000023202321F0E02160250010B266E276A15
:101BA000036A2230026E02323F0E02160250010B0F
:101BB000286E296AD890036A2230026E010B2A6EC1
:101BC0002B6A2230036E2130026E0332023203325E
:101BD0000232033202320332023203320232030E85
:101BE00003160250070B2C6E2D6A2230036E213033
:101BF000026E03320232033202321F0E031602500B
:101C0000070B2E6E2F6A35EC02F002C003F0015074
:101C1000070B306E316A500EF66E000EF76E070E2F
:101C2000346EA7EC05F0100EE96E25C033F024C029
:101C300032F0D2EC06F0200E3D6E87EC05F0100E6F
:101C4000E96E27C033F026C032F0D2EC06F0200E49
:101C50003D6E87EC05F0100EE96E29C033F028C008
:101C600032F0D2EC06F0200E3D6E87EC05F0100E3F
:101C7000E96E2BC033F02AC032F0D2EC06F0200E11
:101C80003D6E87EC05F0100EE96E2DC033F02CC0D0
:101C900032F0D2EC06F0200E3D6E87EC05F0100E0F
:101CA000E96E2FC033F02EC032F0D2EC06F0200ED9
:101CB0003D6E87EC05F0100EE96E31C033F030C098
:101CC00032F0D2EC06F05D0E3D6E87EC05F0200E92
:101CD0003D6E87EC05F0010E3A6E52EC02F003C047
:101CE00027F002C026F001C025F000C024F0020E4B
:101CF0003A6E52EC02F003C02BF002C02AF001C091
:101D000029F000C028F0030E3A6E52EC02F003C036
:101D10002FF002C02EF001C02DF000C02CF0040EF8
:101D20003A6E52EC02F003C033F002C032F001C050
:101D300031F000C030F0200E3D6E87EC05F027C07A
:101D400034F0370E356E72EC09F026C034F0370EE1
:101D5000356E72EC09F025C034F0370E356E72EC3A
:101D600009F024C034F0370E356E72EC09F0200E05
:101D70003D6E87EC05F02BC034F0370E356E72ECFB
:101D800009F02AC034F0370E356E72EC09F029C024
:101D900034F0370E356E72EC09F028C034F0370E8F
:101DA000356E72EC09F0200E3D6E87EC05F02FC009
:101DB00034F0370E356E72EC09F02EC034F0370E69
:101DC000356E72EC09F02DC034F0370E356E72ECC2
:101DD00009F02CC034F0370E356E72EC09F0200E8D
:101DE0003D6E87EC05F033C034F0370E356E72EC83
:101DF00009F032C034F0370E356E72EC09F031C0A4
:101E000034F0370E356E72EC09F030C034F0370E16
:101E1000356E72EC09F0200E3D6E87EC05F00D0E6C
:101E20003D6E87EC05F00A0E3D6E87EC05F01CEF69
:041E30000AF00300B1
:1000000042EF07F054696D653A2025332E3766209C
:1000100025332E37662025332E37662000005465A1
:100020006D703A205B254C7520254C7520254C754C
:1000300020254C7520254C7520254C7520254C75A8
:100040005D2000004150200807E0426E3D363E36FC
:100050003F364036422EFAD79382939093948A94F7
:1000600041C042F08A8440AE8A9040BE8A803D36CC
:100070003E363F3640368A94003601360236033625
:1000800081A2009081B20080422EECD7000C9396A2
:100090008A96406A3F6A3E6A500E3D6E080E416E77
:1000A000D1DF93968A86000CEA6A350EE96EEF502E
:1000B0000DE0060E016E006A002EFED7012EFBD762
:1000C0007B0E006E002EFED7EF2EF3D7000C93961A
:1000D0008A96406A3F6A3E6A810E3D6E080E416E06
:1000E000B1DF406A3F6A3E6A0BC03DF0040E416ECC
:1000F000A9DF406A3F6A3E6A0CC03DF0040E416EC3
:10010000A1DF000E0AB4010E406A3F6A3E6A3D6EEE
:10011000010E416E97DF406A3F6A3E6A010E3D6EF6
:10012000416E90DF406A3F6A3E6A0DC03DF0030EAB
:10013000416E88DF406A3F6A3E6A0EC03DF0030EA2
:10014000416E80DF406A3F6A3E6A3D6A080E416E3A
:1001500079DF93968A86000C93968A96406A3F6A66
:100160003E6A800E3D6E080E416E6CDF406A3F6A4B
:100170003E6A04C03DF0040E416E64DF406A3F6A8F
:100180003E6A05C03DF0040E416E5CDF406A3F6A86
:100190003E6A06C03DF0020E416E54DF406A3F6A7F
:1001A0003E6A07C03DF0020E416E4CDF406A3F6A76
:1001B0003E6A08C03DF0020E416E44DF000E09B0F9
:1001C000010E406A3F6A3E6A3D6E010E416E3ADFA3
:1001D000000E09B2010E406A3F6A3E6A3D6E010E92
:1001E000416E30DF000E09B4010E406A3F6A3E6A7C
:1001F0003D6E010E416E26DF000E09B6010E406A0B
:100200003F6A3E6A3D6E010E416E1CDF000E09B86A
:10021000010E406A3F6A3E6A3D6E010E416E12DF7A
:10022000000E09BA010E406A3F6A3E6A3D6E010E39
:10023000416E08DF000E09BC010E406A3F6A3E6A4B
:100240003D6E010E416EFEDE000E09BE010E406ADB
:100250003F6A3E6A3D6E010E416EF4DE000E0AB04A
:10026000010E406A3F6A3E6A3D6E010E416EEADE53
:10027000000E0AB2010E406A3F6A3E6A3D6E010EF0
:10028000416EE0DE93968A8622DF93968A96406AD4
:100290003F6A3E6A820E3D6E200E416ED3DE406A9A
:1002A0003F6A3E6A0FC03DF0030E416ECBDE000E8A
:1002B0000AB6010E406A3F6A3E6A3D6E010E416E0B
:1002C000C1DE000E0AB8010E406A3F6A3E6A3D6E0A
:1002D000010E416EB7DE13C040F012C03FF011C0F6
:1002E0003EF010C03DF0130E416EACDE93968A8650
:1002F00093968A96406A3F6A3E6A830E3D6E200E50
:10030000416EA0DE406A3F6A3E6A3D6A020E416E5F
:1003100099DE000E0ABA010E406A3F6A3E6A3D6EDF
:10032000010E416E8FDE406A3F6A3E6A14C03DF0A6
:10033000020E416E87DE18C040F017C03FF016C0B5
:100340003EF015C03DF0130E416E7CDE93968A861A
:1003500093968A96406A3F6A3E6A840E3D6E200EEE
:10036000416E70DE406A3F6A3E6A040E3D6E050EC5
:10037000416E68DE1CC040F01BC03FF01AC03EF06A
:1003800019C03DF0130E416E5DDE93968A869396FA
:100390008A96406A3F6A3E6A850E3D6E200E416E27
:1003A00051DE406A3F6A3E6A1DC03DF0030E416E59
:1003B00049DE000E0ABC010E406A3F6A3E6A3D6E8D
:1003C000010E416E3FDE000E0ABE010E406A3F6A1A
:1003D0003E6A3D6E010E416E35DE406A3F6A3E6AFE
:1003E0001EC03DF0030E416E2DDE406A3F6A20C004
:1003F0003EF01FC03DF0100E416E24DE93968A86BB
:10040000D5EF07F093968A96406A3F6A3E6A700E6F
:100410003D6E080E416E16DE93968A86DBEF07F07E
:1004200093968A96406A3F6A3E6A010E3D6E080EB8
:10043000416E08DE93968A86E1EF07F093968A96DE
:10044000406A3F6A3E6AB40E3D6E080E416EFADDA8
:10045000406A3F6A3E6A3D6A100E416EF3DD01500C
:1004600001C036F000C035F093968A8635C001F0A1
:1004700036C002F0000C93968A96B00E3724FF0F18
:100480003C6E406A3F6A3E6A3D6E080E416EDADDA0
:10049000406A3F6A3E6A3D6A200E416ED3DD0150DC
:1004A00003C03BF002C03AF001C039F000C038F0A0
:1004B00093968A8638C000F039C001F03AC002F045
:1004C0003BC003F0000CB60E006E036A026A016ABC
:1004D000355036103710381002E1006A0DD0D89030
:1004E00001BE09D035363636373638360336023651
:1004F0000136002EF4D7019E000C3950D8B4A5D097
:10050000456E3D50D8B4A1D0455E05E37F0E45262B
:10051000D8B09BD006D0810E455ED8A096D0D8B476
:1005200094D045C000F0016A026A036A446A3AC086
:1005300043F0438E3BC042F03CC041F0190E456E83
:100540004050415E0DE2010E425E0AE2435E08E267
:10055000445E06E2442A432A422A4050412628D0DB
:100560003F50425E12E2010E435E0FE2445E0DE236
:10057000442A432A3F5042264050412619E3422A4A
:1005800017E1432A15E1442A13D03E508009435E07
:100590000EE2010E445E0BE2442A3E5080094326DF
:1005A0003F504226E9E3432AE7E1442AE5D70380A6
:1005B000452E01D00BD0D8904136423643364436D2
:1005C000D8900336023601364636BAD746A006D052
:1005D000D890013202320332463202D0000635E0B2
:1005E00046BE1ED0D890413642364336443640503F
:1005F000415E07E2010E425E04E2435E02E2445EB7
:100600001AE33F50425E05E2010E435E02E2445EA1
:1006100012E33E508009435E03E2010E445E0BE3A9
:10062000032A09E1022A07E1012A05E1002A0DE077
:100630000132023203323AC045F03E50451A45AE0F
:1006400002D0018E06D0019E04D0006A016A026ABF
:10065000036A000C3D50D8B471D0006E4150D8B43C
:100660006DD0002604E3810E002668E204D07F0EE0
:10067000005E64E363E03EC045F04250451A3E8EA2
:10068000428E40504402F4CF47F03F504302F4CF33
:1006900003F0F3CF46F04402F3504726F4504622CD
:1006A000000E032240504302F3504726F4504622E6
:1006B000000E026A032202223E504402F3504626F4
:1006C000F4500322000E02223E504302F350032650
:1006D000F4500222000E016A012240504202F350FF
:1006E0004626F4500322000E022201223F5042020D
:1006F000F3500326F4500222000E01223E50420223
:10070000F3500226F4500122002A01BE05D04636DD
:100710000336023601360006000E46AE0AD0032A22
:1007200002220122015005E1025003E1035001E1E0
:10073000002A45BE018E45AE019E04D0006A016AC2
:10074000026A036A000C2C50010A05E0030A06E065
:10075000010A07E009D0020E0B6E06D0030E0B6EE5
:1007600003D0040E0B6E00D0B2DC320E356E9CDC72
:1007700065DE02C003F00150070B356E366A376E36
:100780007ADE03C030F002C02FF001C02EF000C0AE
:100790002DF00750FC0FD8B089D1040F5FEF05F0A2
:1007A00030C038F02FC037F02EC036F02DC035F0F5
:1007B0008ADE03C03CF002C03BF001C03AF000C04A
:1007C00039F0406A3F6A3E6A8F0E3D6E96DE00C089
:1007D00035F001C036F002C037F003C038F003C076
:1007E00040F002C03FF001C03EF000C03DF0446A5E
:1007F000240E436E740E426E920E416E2BDF00C0CB
:1008000035F001C036F002C037F003C038F003C045
:100810003CF002C03BF001C03AF000C039F0800E5D
:10082000406E960E3F6E180E3E6E950E3D6E65DE66
:1008300003C034F002C033F001C032F000C031F028
:1008400035D130C038F02FC037F02EC036F02DC073
:1008500035F039DE03C03CF002C03BF001C03AF095
:1008600000C039F0406A3F6A3E6A8F0E3D6E45DE39
:1008700000C035F001C036F002C037F003C038F0D8
:1008800003C040F002C03FF001C03EF000C03DF0A8
:10089000446A240E436E740E426E920E416EDADE8E
:1008A00000C035F001C036F002C037F003C038F0A8
:1008B00003C03CF002C03BF001C03AF000C039F088
:1008C000800E406E960E3F6E180E3E6E950E3D6E7B
:1008D00014DE00C035F001C036F002C037F003C0AE
:1008E00038F003C040F002C03FF001C03EF000C04D
:1008F0003DF0446A436A426A800E416EABDE03C03B
:1009000034F002C033F001C032F000C031F0CED07C
:1009100030C038F02FC037F02EC036F02DC035F083
:10092000D2DD03C03CF002C03BF001C03AF000C091
:1009300039F0406A3F6A3E6A8F0E3D6EDEDD00C0D0
:1009400035F001C036F002C037F003C038F003C004
:1009500040F002C03FF001C03EF000C03DF0446AEC
:10096000240E436E740E426E920E416E73DE00C012
:1009700035F001C036F002C037F003C038F003C0D4
:100980003CF002C03BF001C03AF000C039F0800EEC
:10099000406E960E3F6E180E3E6E950E3D6EADDDAE
:1009A00000C035F001C036F002C037F003C038F0A7
:1009B00003C040F002C03FF001C03EF000C03DF077
:1009C000446A436A426A810E416E44DE03C034F0D9
:1009D00002C033F001C032F000C031F067D030C047
:1009E00038F02FC037F02EC036F02DC035F06BDD5B
:1009F00003C03CF002C03BF001C03AF000C039F047
:100A0000406A3F6A3E6A8F0E3D6E77DD00C035F06A
:100A100001C036F002C037F003C038F003C040F028
:100A200002C03FF001C03EF000C03DF0446A240E19
:100A3000436E740E426E920E416E0CDE00C035F0B5
:100A400001C036F002C037F003C038F003C03CF0FC
:100A500002C03BF001C03AF000C039F0800E406E99
:100A6000960E3F6E180E3E6E950E3D6E46DD00C032
:100A700035F001C036F002C037F003C038F003C0D3
:100A800040F002C03FF001C03EF000C03DF0446ABB
:100A9000436A426A820E416EDDDD03C034F002C05B
:100AA00033F001C032F000C031F000D031C000F0AE
:100AB00032C001F033C002F034C003F0000CE8246F
:100AC000F76AF736D90FF66E0A0EF7220A00F550CC
:100AD000FA6E0800F550F96EA00742081009DE0909
:100AE000939E8A9E080E016E00D00000018E0ED0EB
:100AF000019E3D32D8B08A8ED8A08A9E018C06D045
:100B0000019C012EF6D700D000008A8EA70EE96E58
:100B1000E92EFED700D001BEEBD701BCF1D7000C07
:100B20000900F6CF33F0F7CF34F0F5CF3DF0D8DF42
:100B300033C0F6FF34C0F7FF322EF2D7000C3D5021
:100B4000B6083D6E036A3EC041F03E8ED8903E32FC
:100B50003F32403203320232013200323D2EF6D7AC
:100B600041AE0BD0001E011E021E031E002AD8B487
:100B7000012AD8B4022AD8B4032A23EF06F0006A67
:100B8000016A026A036A456A466A476A486A4450CB
:100B90004310421041102CE0200E496ED8903D3693
:100BA0003E363F3640364536463647364836445060
:100BB000485C08E14350475C05E14250465C02E175
:100BC0004150455C0FE34150455E4250D8A0423C45
:100BD000465E4350D8A0433C475E4450D8A0443CB6
:100BE000485ED8800036013602360336492ED6D705
:100BF000EA6A450EE96E000CE950356E3450376EE6
:100C000019E033C040F032C03FF031C03EF030C098
:100C10003DF0446A436A200E426E820E416E1ADD38
:100C200003C033F002C032F001C031F000C030F038
:100C3000372EE7D733C040F032C03FF031C03EF02E
:100C400030C03DF07CD703C033F002C032F001C0A9
:100C500031F000C030F033AE0DD03506358A301E8D
:100C6000311E321E331E302AD8B4312AD8B4322A6B
:100C7000D8B4332A3B0E3C6E9A0E3B6ECA0E3A6EC7
:100C8000396A0A0E376E3450D8B4352A33C040F072
:100C900032C03FF031C03EF030C03DF03CC044F0C7
:100CA0003BC043F03AC042F039C041F068DF015028
:100CB000EFCF30F0ECCF31F0ECCF32F0ECCF33F0BF
:100CC00000520FE13428375C0CE035500CE00F0B7C
:100CD000375C01E037E235BE35D035BC04D0200E9C
:100CE0002DD0200E351635AA0CD0359A3450D8A404
:100CF00035060050356E2D0E3D6EF2DE3550006E1D
:100D0000356A3450375C0AE10050356E2E0E3D6E68
:100D1000E7DE3550006E200E3516000E300E35AA77
:100D20000DD0359A3450D8A435060050356E2D0EAE
:100D30003D6ED6DE3550006E356A300E002600C09E
:100D40003DF0CEDE3CC040F03BC03FF03AC03EF04C
:100D500039C03DF0446A436A426A0A0E416E0FDFB1
:100D600003C03CF002C03BF001C03AF000C039F0D3
:100D7000372E8CD7000CEACF3AF0E9CF39F0333870
:100D8000F009356E3526E20F366E320F386E33506D
:100D90000F0B362636263826E90F376E37263726CC
:100DA00032380F0B3726382637363836381E383665
:100DB00032500F0B38263536070E346E0A0E3706C2
:100DC0003826FDE336063726FDE335063626FDE3F5
:100DD00034063526FDE3EA6A340EE96E070E39144F
:100DE000399CE926380EE95CD8B4398CEF50006E96
:100DF00008E139BC06D039B813D039B602D0200E7C
:100E000003D039863998300E0026EACF33F0E9CF87
:100E100032F000C03DF064DE33C0EAFF32C0E9FFCB
:100E2000EE5039ACDFD7000C93968A96406A3F6A41
:100E30003E6A020E3D6E080E416E22EC00F0939663
:100E40008A861EEF09F035BE0FD00F0E006E3438C3
:100E500000160A0E005C03E2300E002602D0355068
:100E6000002600C03DF03CDE0F0E34160A0E345C46
:100E700002E2300E02D0359E3550342634C03DF0AB
:100E80002FDE000CF86AD09EEA6AE96A939E8A8E89
:100E90009382939093948A94046A010E056E066A75
:100EA000076A086E09800992099409860988099AD7
:100EB000098C099E0A900A92050E0B6E0C6E0A941C
:100EC0000D6A0E6A010E0F6E0A960A98136A126A6C
:100ED000116A106A0A9A030E146E186A176A166A63
:100EE000156A1C6A1B6A1A6A196A1D6A0A9C0A8EAC
:100EF0001E6A206A1F6AC150C00B0F09C16E070E1F
:100F0000B46EC150C00B0F09C16EC090C092C094A6
:100F1000C09EC2809698C69A949E93809392010E2A
:100F2000C66E000EC76ED190800ED56ECD6A000ED3
:100F3000CA6E000ECB6E9484BD6AB76AB66A070E9D
:100F4000B46E9250926E100E006E002EFED700000E
:100F5000B450A19CB56A47EC00F095988C98959A8E
:100F60008C9A959C8C9C320E356E54EC00F047ECBC
:100F700000F0640E356E54EC00F0010E0C6E040EA1
:100F80000E6E0D6A070E0F6E0A8A020E076E136A46
:100F9000126A116A106A186A176A166A156A1C6A58
:100FA0001B6A1A6A196AACEF00F0640E356E54ECD5
:100FB00000F002EF02F0320E356E54EC00F010EF4C
:100FC00002F0C80E356E54EC00F0959C8C8C959810
:100FD0008C8895988C98F90E006E002EFED700D064
:100FE000959A8C8A959A8C9A00D000D00000959A98
:100FF0008C8A959A8C9A100E006E002EFED70000F7
:10100000959A8C8A959A8C9A00D000D00000010E97
:101010002C6EA3EC03F000C024F001C025F002C048
:1010200026F003C027F0020E2C6EA3EC03F000C0E4
:1010300028F001C029F002C02AF003C02BF0030EF3
:101040002C6EA3EC03F000C02CF001C02DF002C008
:101050002EF003C02FF0040EF66E000EF76E060E93
:10106000326E5EDD890EE96E27C033F026C032F0A5
:1010700025C031F024C030F0070E346EBDDD200EE7
:101080003D6E2EDD890EE96E2BC033F02AC032F0A2
:1010900029C031F028C030F0070E346EADDD200ECF
:1010A0003D6E1EDD890EE96E2FC033F02EC032F08A
:1010B0002DC031F02CC030F0070E346E9DDD200EB7
:1010C0003D6E0EDD93968A96236AB40E236E406AB7
:1010D0003F6A3E6A23C03DF0080E416E22EC00F0EC
:1010E000406A3F6A3E6A3D6A100E416E22EC00F093
:1010F000015001C022F000C021F093968A86223868
:10110000026E036A0F0E02160250010B246E256A4E
:10111000036A2230026E023202321F0E02160250A1
:10112000010B266E276A036A2230026E02323F0EDE
:1011300002160250010B286E296AD890036A2230E9
:10114000026E010B2A6E2B6A2230036E2130026E72
:1011500003320232033202320332023203320232EB
:1011600003320232030E03160250070B2C6E2D6A57
:101170002230036E2130026E033202320332023219
:101180001F0E03160250070B2E6E2F6A1EEC02F084
:1011900002C003F00150070B306E316A5B0E3D6EEA
:1011A0009FDC100EE96E25C033F024C032F0E3DD81
:1011B000200E3D6E95DC100EE96E27C033F026C080
:1011C00032F0D9DD200E3D6E8BDC100EE96E29C0A9
:1011D00033F028C032F0CFDD200E3D6E81DC100EE2
:1011E000E96E2BC033F02AC032F0C5DD200E3D6E13
:1011F00077DC100EE96E2DC033F02CC032F0BBDD71
:10120000200E3D6E6DDC100EE96E2FC033F02EC047
:1012100032F0B1DD200E3D6E63DC100EE96E31C0A0
:1012200033F030C032F0A7DD5D0E3D6E59DC0D0E9F
:101230003D6E56DC0A0E3D6E53DCF6D593968A96CB
:10124000236AB40E236E406A3F6A3E6A23C03DF0B3
:10125000080E416E22EC00F0406A3F6A3E6A3D6A29
:10126000100E416E22EC00F0015001C022F000C0CF
:1012700021F093968A862238026E036A0F0E0216B8
:101280000250010B246E256A036A2230026E02327C
:1012900002321F0E02160250010B266E276A036AE5
:1012A0002230026E02323F0E02160250010B286EEF
:1012B000296AD890036A2230026E010B2A6E2B6ACB
:1012C0002230036E2130026E0332023203320232C8
:1012D000033202320332023203320232030E0316A9
:1012E0000250070B2C6E2D6A2230036E2130026EE5
:1012F00003320232033202321F0E03160250070B72
:101300002E6E2F6A1EEC02F002C003F00150070B94
:10131000306E316A1E0EF66E000EF76E070E326EDC
:1013200090EC05F0100EE96E25C033F024C032F0C9
:1013300022DD200E3D6E70EC05F0100EE96E27C028
:1013400033F026C032F017DD200E3D6E70EC05F054
:10135000100EE96E29C033F028C032F00CDD200EEB
:101360003D6E70EC05F0100EE96E2BC033F02AC014
:1013700032F001DD200E3D6E70EC05F0100EE96ECE
:101380002DC033F02CC032F0F6DC200E3D6E70EC38
:1013900005F0100EE96E2FC033F02EC032F0EBDCFA
:1013A000200E3D6E70EC05F0100EE96E31C033F08A
:1013B00030C032F0E0DC5D0E3D6E70EC05F0200ECA
:1013C0003D6E70EC05F0010E376E3BEC02F003C091
:1013D00027F002C026F001C025F000C024F0020E64
:1013E000376E3BEC02F003C02BF002C02AF001C0C4
:1013F00029F000C028F0030E376E3BEC02F003C06A
:101400002FF002C02EF001C02DF000C02CF0040E11
:10141000376E3BEC02F003C033F002C032F001C083
:1014200031F000C030F0200E3D6E70EC05F027C0AA
:1014300034F0370E356E07DD26C034F0370E356ECA
:1014400002DD25C034F0370E356EFDDC24C034F0EB
:10145000370E356EF8DC200E3D6E70EC05F02BC0BB
:1014600034F0370E356EEFDC2AC034F0370E356EAF
:10147000EADC29C034F0370E356EE5DC28C034F0E4
:10148000370E356EE0DC200E3D6E70EC05F02FC09F
:1014900034F0370E356ED7DC2EC034F0370E356E93
:1014A000D2DC2DC034F0370E356ECDDC2CC034F0DC
:1014B000370E356EC8DC200E3D6E70EC05F033C083
:1014C00034F0370E356EBFDC32C034F0370E356E77
:1014D000BADC31C034F0370E356EB5DC30C034F0D4
:1014E000370E356EB0DC200E3D6E70EC05F00D0E43
:1014F0003D6E70EC05F00A0E3D6E70EC05F055D5B2
:021500000300E6
:020000040030CA
:0E00000027CC390E0087A1000FC00FE00F4083
:00000001FF
;PIC18F4550
;CRC=8340 CREATED="01-V-11 16:28"
;CRC=1672 CREATED="25-IV-11 23:59"