diff --git a/DS18B20.LST b/DS18B20.LST index 783da46..afc3ec0 100644 --- a/DS18B20.LST +++ b/DS18B20.LST @@ -1,4 +1,4 @@ -C51 COMPILER V9.56.0.0 DS18B20 04/30/2022 20:50:18 PAGE 1 +C51 COMPILER V9.56.0.0 DS18B20 05/01/2022 13:15:20 PAGE 1 C51 COMPILER V9.56.0.0, COMPILATION OF MODULE DS18B20 @@ -62,7 +62,7 @@ line level source 53 1 uint i, j; 54 1 for(j=0; j<8; j++) 55 1 { - C51 COMPILER V9.56.0.0 DS18B20 04/30/2022 20:50:18 PAGE 2 + C51 COMPILER V9.56.0.0 DS18B20 05/01/2022 13:15:20 PAGE 2 56 2 DS18B20 = 0; //每写入一位数据之前先把总线拉低 57 2 i++; @@ -126,7 +126,7 @@ MODULE INFORMATION: STATIC OVERLAYABLE PDATA SIZE = ---- ---- DATA SIZE = ---- 7 IDATA SIZE = ---- ---- - C51 COMPILER V9.56.0.0 DS18B20 04/30/2022 20:50:18 PAGE 3 + C51 COMPILER V9.56.0.0 DS18B20 05/01/2022 13:15:20 PAGE 3 BIT SIZE = ---- ---- END OF MODULE INFORMATION. diff --git a/DS18B20.OBJ b/DS18B20.OBJ index 250ac10..68d350c 100644 Binary files a/DS18B20.OBJ and b/DS18B20.OBJ differ diff --git a/DS18B20.__i b/DS18B20.__i deleted file mode 100644 index ece57ca..0000000 --- a/DS18B20.__i +++ /dev/null @@ -1 +0,0 @@ -"DS18B20.c" OPTIMIZE (8,SPEED) BROWSE DEBUG OBJECTEXTEND TABS (2) \ No newline at end of file diff --git a/ds1302.LST b/ds1302.LST index 5ce1d73..257b1ed 100644 --- a/ds1302.LST +++ b/ds1302.LST @@ -1,4 +1,4 @@ -C51 COMPILER V9.56.0.0 DS1302 05/01/2022 12:24:18 PAGE 1 +C51 COMPILER V9.56.0.0 DS1302 05/01/2022 13:15:20 PAGE 1 C51 COMPILER V9.56.0.0, COMPILATION OF MODULE DS1302 @@ -62,7 +62,7 @@ line level source 53 1 54 1 SCLK = 0;//ȽSCLKõ͵ƽ 55 1 _nop_(); - C51 COMPILER V9.56.0.0 DS1302 05/01/2022 12:24:18 PAGE 2 + C51 COMPILER V9.56.0.0 DS1302 05/01/2022 13:15:20 PAGE 2 56 1 RST = 1;//ȻRST(CE)øߵƽ 57 1 _nop_(); @@ -126,7 +126,7 @@ MODULE INFORMATION: STATIC OVERLAYABLE CONSTANT SIZE = 14 ---- XDATA SIZE = ---- ---- PDATA SIZE = ---- ---- - C51 COMPILER V9.56.0.0 DS1302 05/01/2022 12:24:18 PAGE 3 + C51 COMPILER V9.56.0.0 DS1302 05/01/2022 13:15:20 PAGE 3 DATA SIZE = 7 ---- IDATA SIZE = ---- ---- diff --git a/ds1302.OBJ b/ds1302.OBJ index d19e11b..880ab36 100644 Binary files a/ds1302.OBJ and b/ds1302.OBJ differ diff --git a/ds1302.__i b/ds1302.__i deleted file mode 100644 index 3255d2a..0000000 --- a/ds1302.__i +++ /dev/null @@ -1 +0,0 @@ -"ds1302.c" OPTIMIZE (8,SPEED) BROWSE DEBUG OBJECTEXTEND TABS (2) \ No newline at end of file diff --git a/i2c.LST b/i2c.LST index f20b6a7..2ac6bb5 100644 --- a/i2c.LST +++ b/i2c.LST @@ -1,4 +1,4 @@ -C51 COMPILER V9.56.0.0 I2C 04/28/2022 23:10:25 PAGE 1 +C51 COMPILER V9.56.0.0 I2C 05/01/2022 13:15:20 PAGE 1 C51 COMPILER V9.56.0.0, COMPILATION OF MODULE I2C @@ -62,7 +62,7 @@ line level source 53 /******************************************************************************* 54 * : I2cSendByte(unsigned char dat) 55 * : ͨI2CһֽڡSCLʱźŸߵƽڼ䣬ַźSDAȶ - C51 COMPILER V9.56.0.0 I2C 04/28/2022 23:10:25 PAGE 2 + C51 COMPILER V9.56.0.0 I2C 05/01/2022 13:15:20 PAGE 2 56 * : num 57 * : 01ͳɹ1ʧܷ0 @@ -126,7 +126,7 @@ line level source 115 1 } 116 117 - C51 COMPILER V9.56.0.0 I2C 04/28/2022 23:10:25 PAGE 3 + C51 COMPILER V9.56.0.0 I2C 05/01/2022 13:15:20 PAGE 3 118 /******************************************************************************* 119 * : void At24c02Write(unsigned char addr,unsigned char dat) diff --git a/i2c.OBJ b/i2c.OBJ index 521404c..80d4742 100644 Binary files a/i2c.OBJ and b/i2c.OBJ differ diff --git a/lcd.LST b/lcd.LST index f366850..63d0dae 100644 --- a/lcd.LST +++ b/lcd.LST @@ -1,4 +1,4 @@ -C51 COMPILER V9.56.0.0 LCD 04/30/2022 18:10:32 PAGE 1 +C51 COMPILER V9.56.0.0 LCD 05/01/2022 13:15:20 PAGE 1 C51 COMPILER V9.56.0.0, COMPILATION OF MODULE LCD @@ -62,7 +62,7 @@ line level source LCD1602_E = 1; //дʱ Lcd1602_Delay1ms(5); - C51 COMPILER V9.56.0.0 LCD 04/30/2022 18:10:32 PAGE 2 + C51 COMPILER V9.56.0.0 LCD 05/01/2022 13:15:20 PAGE 2 LCD1602_E = 0; @@ -126,7 +126,7 @@ line level source 115 #ifndef LCD1602_4PINS 116 void LcdInit() //LCDʼӳ 117 { - C51 COMPILER V9.56.0.0 LCD 04/30/2022 18:10:32 PAGE 3 + C51 COMPILER V9.56.0.0 LCD 05/01/2022 13:15:20 PAGE 3 118 1 LcdWriteCom(0x38); //ʾ 119 1 LcdWriteCom(0x0c); //ʾʾ diff --git a/lcd.OBJ b/lcd.OBJ index c24ed22..e2c9f2e 100644 Binary files a/lcd.OBJ and b/lcd.OBJ differ diff --git a/main.LST b/main.LST index 9281c8f..a375800 100644 --- a/main.LST +++ b/main.LST @@ -1,4 +1,4 @@ -C51 COMPILER V9.56.0.0 MAIN 05/01/2022 12:19:19 PAGE 1 +C51 COMPILER V9.56.0.0 MAIN 05/01/2022 13:19:20 PAGE 1 C51 COMPILER V9.56.0.0, COMPILATION OF MODULE MAIN @@ -27,588 +27,597 @@ line level source 18 sbit LED3=P2^4; 19 20 sbit LED4=P2^3; - 21 - 22 sbit key1 = P1^2; - 23 sbit key2 = P1^3; - 24 sbit key3 = P2^2; - 25 sbit key4 = P2^7; - 26 + 21 sbit LED5=P1^7; + 22 + 23 sbit key1 = P1^2; + 24 sbit key2 = P1^3; + 25 sbit key3 = P2^2; + 26 sbit key4 = P2^7; 27 - 28 sbit IN = P3^7; - 29 sbit OUT = P3^6; - 30 - 31 sbit SCL1=P1^1; - 32 sbit SDA1=P1^0; - 33 - 34 int cut = 0; - 35 - 36 struct Time{ - 37 int hour; - 38 int min; - 39 int sec; - 40 }; - 41 - 42 struct UserInfo{ - 43 int num; - 44 int model; - 45 int set; - 46 int start; - 47 float Light; - 48 int temp; - 49 struct Time time[2]; - 50 }; - 51 - 52 struct UserInfo userInfo; - 53 - 54 void LcdDisplay(); - 55 void LcdDisplay1(); - C51 COMPILER V9.56.0.0 MAIN 05/01/2022 12:19:19 PAGE 2 + 28 + 29 sbit IN = P3^7; + 30 sbit OUT = P3^6; + 31 + 32 sbit SCL1=P1^1; + 33 sbit SDA1=P1^0; + 34 + 35 int cut = 0; + 36 + 37 int led_num = 0; + 38 + 39 struct Time{ + 40 int hour; + 41 int min; + 42 int sec; + 43 }; + 44 + 45 struct UserInfo{ + 46 int num; + 47 int model; + 48 int set; + 49 int start; + 50 float Light; + 51 int temp; + 52 struct Time time[2]; + 53 }; + 54 + 55 struct UserInfo userInfo; + C51 COMPILER V9.56.0.0 MAIN 05/01/2022 13:19:20 PAGE 2 - 56 void Delay10ms(void); - 57 - 58 #define SlaveAddress 0x46 //¶¨ÒåÆ÷¼þÔÚIIC×ÜÏßÖеĴӵØÖ·,¸ù¾ÝALT ADDRESSµ + 56 + 57 void LcdDisplay(); + 58 void LcdDisplay1(); + 59 void Delay10ms(void); + 60 + 61 #define SlaveAddress 0x46 //¶¨ÒåÆ÷¼þÔÚIIC×ÜÏßÖеĴӵØÖ·,¸ù¾ÝALT ADDRESSµ -ØÖ·Òý½Å²»Í¬ÐÞ¸Ä - 59 //ALT ADDRESSÒý½Å½ÓµØʱµØַΪ0x46£¬½ÓµçԴʱµØÖ + 62 //ALT ADDRESSÒý½Å½ÓµØʱµØַΪ0x46£¬½ÓµçԴʱµØÖ -·Îª0xB8 - 60 typedef unsigned char BYTE; - 61 typedef unsigned short WORD; - 62 - 63 BYTE BUF[8]; //½ÓÊÕÊý¾Ý»º´æÇø - 64 int dis_data; //±äÁ¿ + 63 typedef unsigned char BYTE; + 64 typedef unsigned short WORD; 65 - 66 void delay_nms(unsigned int k); - 67 void InitLcd(); - 68 void Init_BH1750(void); - 69 - 70 void WriteDataLCM(uchar dataW); - 71 void WriteCommandLCM(uchar CMD,uchar Attribc); - 72 void DisplayOneChar(uchar X,uchar Y,uchar DData); - 73 void conversion(uint temp_data); - 74 - 75 void Single_Write_BH1750(uchar REG_Address); //µ¥¸öдÈëÊý¾Ý - 76 uchar Single_Read_BH1750(uchar REG_Address); //µ¥¸ö¶ÁÈ¡ÄÚ²¿¼Ä´æÆ÷Êý¾Ý - 77 void Multiple_Read_BH1750(); //Á¬ÐøµÄ¶ÁÈ¡ÄÚ²¿¼Ä´æÆ÷Êý + 66 BYTE BUF[8]; //½ÓÊÕÊý¾Ý»º´æÇø + 67 int dis_data; //±äÁ¿ + 68 + 69 void delay_nms(unsigned int k); + 70 void InitLcd(); + 71 void Init_BH1750(void); + 72 + 73 void WriteDataLCM(uchar dataW); + 74 void WriteCommandLCM(uchar CMD,uchar Attribc); + 75 void DisplayOneChar(uchar X,uchar Y,uchar DData); + 76 void conversion(uint temp_data); + 77 + 78 void Single_Write_BH1750(uchar REG_Address); //µ¥¸öдÈëÊý¾Ý + 79 uchar Single_Read_BH1750(uchar REG_Address); //µ¥¸ö¶ÁÈ¡ÄÚ²¿¼Ä´æÆ÷Êý¾Ý + 80 void Multiple_Read_BH1750(); //Á¬ÐøµÄ¶ÁÈ¡ÄÚ²¿¼Ä´æÆ÷Êý -¾Ý - 78 //------------------------------------ - 79 void Delay5us(); - 80 void Delay5ms(); - 81 void BH1750_Start(); //ÆðʼÐźŠ- 82 void BH1750_Stop(); //Í£Ö¹ÐźŠ- 83 void BH1750_SendACK(bit ack); //Ó¦´ðACK - 84 bit BH1750_RecvACK(); //¶Áack - 85 void BH1750_SendByte(BYTE dat); //IICµ¥¸ö×Ö½Úд - 86 BYTE BH1750_RecvByte(); //IICµ¥¸ö×Ö½Ú¶Á - 87 - 88 - 89 //ºÁÃëÑÓʱ************************** - 90 void delay_nms(unsigned int k) - 91 { - 92 1 unsigned int i,j; - 93 1 for(i=0;i 99) userInfo.num = 99; - C51 COMPILER V9.56.0.0 MAIN 05/01/2022 12:19:19 PAGE 7 + 301 1 while(*puf!='\0') + 302 1 { + 303 2 Send_Uart(*puf); + 304 2 us_delay(5); + 305 2 puf++; + 306 2 } + 307 1 } + 308 + 309 void Detection() + 310 { + 311 1 static int num = 0; + 312 1 int i = 0; + 313 1 Single_Write_BH1750(0x01); + 314 1 Single_Write_BH1750(0x10); + 315 1 delay_nms(180); + 316 1 Multiple_Read_BH1750(); + 317 1 dis_data=BUF[0]; + 318 1 dis_data=(dis_data<<8)+BUF[1]; + 319 1 userInfo.Light = (float)dis_data/1.2; + 320 1 + 321 1 userInfo.temp = Temper_change(); + 322 1 userInfo.temp /= 100; + 323 1 if(key1==0) + 324 1 { + 325 2 Delay10ms(); + 326 2 if(key1==0){ + 327 3 if(userInfo.set == 0){ + 328 4 if(userInfo.model == 0) userInfo.model = 1; + 329 4 else userInfo.model = 0; + 330 4 if(userInfo.model == 1) LED4 = 1, LED5 = 0; + 331 4 else LED4 = 0, LED5 = 1; + 332 4 } + 333 3 } + 334 2 while((i<50)&&(key1==0)){ + 335 3 Delay10ms(); + 336 3 i++; + 337 3 } + 338 2 i=0; + 339 2 } + 340 1 + 341 1 if(key2==0) + 342 1 { + 343 2 Delay10ms(); + 344 2 if(key2==0){ + 345 3 if(userInfo.model){ + 346 4 led_num++; + 347 4 if(led_num >= 5) led_num = 0; + 348 4 }else{ + 349 4 if(userInfo.set == 0) userInfo.set = 1; + 350 4 else userInfo.set = 0; + 351 4 cut = 0; + 352 4 } + 353 3 LcdWriteCom(0x01); //清屏 + 354 3 } + 355 2 while((i<50)&&(key2==0)){ + 356 3 Delay10ms(); + 357 3 i++; + 358 3 } + 359 2 i=0; + 360 2 } + 361 1 + 362 1 if(IN==0) + C51 COMPILER V9.56.0.0 MAIN 05/01/2022 13:19:20 PAGE 7 - 363 3 } - 364 2 while((i<50)&&(IN==0)){ - 365 3 Delay10ms(); - 366 3 i++; - 367 3 } - 368 2 i=0; - 369 2 } - 370 1 - 371 1 if(OUT==0) //��ⰴ��K1�Ƿ��� - 372 1 { - 373 2 Delay10ms(); //�������� - 374 2 if(OUT==0){ - 375 3 userInfo.num--; - 376 3 if(userInfo.num < 0) userInfo.num = 0; - 377 3 } - 378 2 while((i<50)&&(OUT==0)){ - 379 3 Delay10ms(); - 380 3 i++; - 381 3 } - 382 2 i=0; - 383 2 } - 384 1 - 385 1 if(key3==0) //��ⰴ��K1�Ƿ��� - 386 1 { - 387 2 Delay10ms(); //�������� - 388 2 if(key3==0){ - 389 3 cut++; - 390 3 if(cut >= 4) cut = 0; - 391 3 } - 392 2 while((i<50)&&(key3==0)){ - 393 3 Delay10ms(); - 394 3 i++; - 395 3 } - 396 2 i=0; - 397 2 } - 398 1 - 399 1 if(key4==0) //��ⰴ��K1�Ƿ��� - 400 1 { - 401 2 Delay10ms(); //�������� - 402 2 if(key4==0){ - 403 3 if(cut == 0){ - 404 4 userInfo.time[0].hour++; - 405 4 if(userInfo.time[0].hour >= 24) userInfo.time[0].hour = 0; - 406 4 }else if(cut == 1){ - 407 4 userInfo.time[0].min++; - 408 4 if(userInfo.time[0].min >= 59) userInfo.time[0].min = 0; - 409 4 }else if(cut == 2){ - 410 4 userInfo.time[1].hour++; - 411 4 if(userInfo.time[1].hour >= 24) userInfo.time[1].hour = 0; - 412 4 }else if(cut == 3){ - 413 4 userInfo.time[1].min++; - 414 4 if(userInfo.time[1].min >= 59) userInfo.time[1].min = 0; - 415 4 } - 416 3 while((i<50)&&(key4==0)){ - 417 4 Delay10ms(); - 418 4 i++; - 419 4 } - 420 3 i=0; - 421 3 } - 422 2 } - 423 1 } - 424 - C51 COMPILER V9.56.0.0 MAIN 05/01/2022 12:19:19 PAGE 8 + 363 1 { + 364 2 Delay10ms(); + 365 2 if(IN==0){ + 366 3 userInfo.num++; + 367 3 if(userInfo.num > 99) userInfo.num = 99; + 368 3 } + 369 2 while((i<50)&&(IN==0)){ + 370 3 Delay10ms(); + 371 3 i++; + 372 3 } + 373 2 i=0; + 374 2 } + 375 1 + 376 1 if(OUT==0) //��ⰴ��K1�Ƿ��� + 377 1 { + 378 2 Delay10ms(); //�������� + 379 2 if(OUT==0){ + 380 3 userInfo.num--; + 381 3 if(userInfo.num < 0) userInfo.num = 0; + 382 3 } + 383 2 while((i<50)&&(OUT==0)){ + 384 3 Delay10ms(); + 385 3 i++; + 386 3 } + 387 2 i=0; + 388 2 } + 389 1 + 390 1 if(key3==0) //��ⰴ��K1�Ƿ��� + 391 1 { + 392 2 Delay10ms(); //�������� + 393 2 if(key3==0){ + 394 3 cut++; + 395 3 if(cut >= 4) cut = 0; + 396 3 } + 397 2 while((i<50)&&(key3==0)){ + 398 3 Delay10ms(); + 399 3 i++; + 400 3 } + 401 2 i=0; + 402 2 } + 403 1 + 404 1 if(key4==0) //��ⰴ��K1�Ƿ��� + 405 1 { + 406 2 Delay10ms(); //�������� + 407 2 if(key4==0){ + 408 3 if(cut == 0){ + 409 4 userInfo.time[0].hour++; + 410 4 if(userInfo.time[0].hour >= 24) userInfo.time[0].hour = 0; + 411 4 }else if(cut == 1){ + 412 4 userInfo.time[0].min++; + 413 4 if(userInfo.time[0].min >= 59) userInfo.time[0].min = 0; + 414 4 }else if(cut == 2){ + 415 4 userInfo.time[1].hour++; + 416 4 if(userInfo.time[1].hour >= 24) userInfo.time[1].hour = 0; + 417 4 }else if(cut == 3){ + 418 4 userInfo.time[1].min++; + 419 4 if(userInfo.time[1].min >= 59) userInfo.time[1].min = 0; + 420 4 } + 421 3 while((i<50)&&(key4==0)){ + 422 4 Delay10ms(); + 423 4 i++; + 424 4 } + C51 COMPILER V9.56.0.0 MAIN 05/01/2022 13:19:20 PAGE 8 - 425 - 426 int getTimeResult() - 427 { - 428 1 int result = 1; - 429 1 struct Time Nowtime; - 430 1 - 431 1 Nowtime.hour = TIME[2]/16 * 10 + (TIME[2]&0x0f); - 432 1 Nowtime.min = TIME[1]/16 * 10 + (TIME[1]&0x0f); - 433 1 - 434 1 if(Nowtime.hour < userInfo.time[0].hour || Nowtime.hour > userInfo.time[1].hour) return 0; - 435 1 if(Nowtime.hour == userInfo.time[0].hour && Nowtime.min < userInfo.time[0].min) return 0; - 436 1 if(Nowtime.hour == userInfo.time[1].hour && Nowtime.min > userInfo.time[1].min) return 0; - 437 1 - 438 1 return result; - 439 1 } - 440 - 441 - 442 void Dispose() - 443 { - 444 1 - 445 1 if(userInfo.model == 0){ - 446 2 if(getTimeResult() && userInfo.Light < 100){ - 447 3 if(userInfo.num < 10 && userInfo.num > 0) LED0 = 0, LED1 = 0, LED2 = 0 ,LED3 = 1; - 448 3 else if(userInfo.num >= 10 && userInfo.num < 20) LED0 = 0, LED1 = 0, LED2 = 1 ,LED3 = 1; - 449 3 else if(userInfo.num >= 20 && userInfo.num < 30) LED0 = 0, LED1 = 1, LED2 = 1 ,LED3 = 1; - 450 3 else if(userInfo.num >= 30) LED0 = 1, LED1 = 1, LED2 = 1 ,LED3 = 1; - 451 3 else LED0 = 0, LED1 = 0, LED2 = 0 ,LED3 = 0; - 452 3 }else{ - 453 3 LED0 = 0, LED1 = 0, LED2 = 0 ,LED3 = 0; - 454 3 } - 455 2 }else{ - 456 2 if(userInfo.start){ - 457 3 LED0 = 1, LED1 = 1, LED2 = 1 ,LED3 = 1; - 458 3 }else{ - 459 3 LED0 = 0, LED1 = 0, LED2 = 0 ,LED3 = 0; - 460 3 } - 461 2 } - 462 1 LED4 = userInfo.model; - 463 1 } - 464 - 465 void main() - 466 { - 467 1 int i = 0; - 468 1 uchar str[10]; - 469 1 Ds1302Init(); - 470 1 Uart_Init(); - 471 1 LcdInit(); - 472 1 - 473 1 userInfo.time[0].hour = 18; - 474 1 userInfo.time[0].min = 0; - 475 1 userInfo.time[0].sec = 0; - 476 1 - 477 1 userInfo.time[1].hour = 23; - 478 1 userInfo.time[1].min = 30; - 479 1 userInfo.time[1].sec = 0; - 480 1 - 481 1 while(1) - 482 1 { - 483 2 Ds1302ReadTime(); - 484 2 LcdDisplay(); - 485 2 Detection(); - 486 2 Dispose(); - C51 COMPILER V9.56.0.0 MAIN 05/01/2022 12:19:19 PAGE 9 + 425 3 i=0; + 426 3 } + 427 2 } + 428 1 } +*** WARNING C280 IN LINE 311 OF main.c: 'num': unreferenced local variable + 429 + 430 + 431 int getTimeResult() + 432 { + 433 1 int result = 1; + 434 1 struct Time Nowtime; + 435 1 + 436 1 Nowtime.hour = TIME[2]/16 * 10 + (TIME[2]&0x0f); + 437 1 Nowtime.min = TIME[1]/16 * 10 + (TIME[1]&0x0f); + 438 1 + 439 1 if(Nowtime.hour < userInfo.time[0].hour || Nowtime.hour > userInfo.time[1].hour) return 0; + 440 1 if(Nowtime.hour == userInfo.time[0].hour && Nowtime.min < userInfo.time[0].min) return 0; + 441 1 if(Nowtime.hour == userInfo.time[1].hour && Nowtime.min > userInfo.time[1].min) return 0; + 442 1 + 443 1 return result; + 444 1 } + 445 + 446 + 447 void Dispose() + 448 { + 449 1 + 450 1 if(userInfo.model == 0){ + 451 2 if(getTimeResult() && userInfo.Light < 100){ + 452 3 if(userInfo.num < 10 && userInfo.num > 0) LED0 = 0, LED1 = 0, LED2 = 0 ,LED3 = 1; + 453 3 else if(userInfo.num >= 10 && userInfo.num < 20) LED0 = 0, LED1 = 0, LED2 = 1 ,LED3 = 1; + 454 3 else if(userInfo.num >= 20 && userInfo.num < 30) LED0 = 0, LED1 = 1, LED2 = 1 ,LED3 = 1; + 455 3 else if(userInfo.num >= 30) LED0 = 1, LED1 = 1, LED2 = 1 ,LED3 = 1; + 456 3 else LED0 = 0, LED1 = 0, LED2 = 0 ,LED3 = 0; + 457 3 }else{ + 458 3 LED0 = 0, LED1 = 0, LED2 = 0 ,LED3 = 0; + 459 3 } + 460 2 }else{ + 461 2 if(led_num){ + 462 3 if(led_num == 1) LED0 = 0, LED1 = 0, LED2 = 0 ,LED3 = 1; + 463 3 else if(led_num == 2) LED0 = 0, LED1 = 0, LED2 = 1 ,LED3 = 1; + 464 3 else if(led_num == 3) LED0 = 0, LED1 = 1, LED2 = 1 ,LED3 = 1; + 465 3 else if(led_num == 4) LED0 = 1, LED1 = 1, LED2 = 1 ,LED3 = 1; + 466 3 }else{ + 467 3 LED0 = 0, LED1 = 0, LED2 = 0 ,LED3 = 0; + 468 3 } + 469 2 } + 470 1 LED4 = userInfo.model; + 471 1 } + 472 + 473 void main() + 474 { + 475 1 int i = 0; + 476 1 uchar str[10]; + 477 1 Ds1302Init(); + 478 1 Uart_Init(); + 479 1 LcdInit(); + 480 1 + 481 1 userInfo.time[0].hour = 18; + 482 1 userInfo.time[0].min = 0; + 483 1 userInfo.time[0].sec = 0; + 484 1 + 485 1 userInfo.time[1].hour = 23; + C51 COMPILER V9.56.0.0 MAIN 05/01/2022 13:19:20 PAGE 9 - 487 2 sprintf(str, "%d\r\n", userInfo.temp); - 488 2 Bluetooth_Set(str); - 489 2 } - 490 1 } - 491 - 492 void LcdDisplay() - 493 { - 494 1 uint temp_data; - 495 1 if(userInfo.set == 0){ - 496 2 // TODO 显示时间 - 497 2 LcdWriteCom(0x80); - 498 2 LcdWriteData('0'+TIME[4]/16); //月 - 499 2 LcdWriteData('0'+(TIME[4]&0x0f)); - 500 2 LcdWriteData('-'); - 501 2 LcdWriteData('0'+TIME[3]/16); //日 - 502 2 LcdWriteData('0'+(TIME[3]&0x0f)); - 503 2 LcdWriteData(' '); - 504 2 - 505 2 LcdWriteData('0'+TIME[2]/16); //时 - 506 2 LcdWriteData('0'+(TIME[2]&0x0f)); - 507 2 LcdWriteData(':'); - 508 2 LcdWriteData('0'+TIME[1]/16); //分 - 509 2 LcdWriteData('0'+(TIME[1]&0x0f)); - 510 2 LcdWriteData(':'); - 511 2 LcdWriteData('0'+TIME[0]/16); //秒 - 512 2 LcdWriteData('0'+(TIME[0]&0x0f)); - 513 2 - 514 2 LcdWriteData(' '); - 515 2 LcdWriteData('0'+(TIME[5]&0x0f)); - 516 2 - 517 2 LcdWriteCom(0x80 + 0x40); - 518 2 temp_data = userInfo.Light; - 519 2 temp_data=temp_data%10000; - 520 2 LcdWriteData(temp_data/1000+0x30); - 521 2 temp_data=temp_data%1000; - 522 2 LcdWriteData(temp_data/100+0x30); - 523 2 temp_data=temp_data%100; - 524 2 LcdWriteData(temp_data/10+0x30); - 525 2 temp_data=temp_data%10; - 526 2 LcdWriteData(temp_data+0x30); - 527 2 LcdWriteData('L'); - 528 2 LcdWriteData('x'); - 529 2 LcdWriteData(' '); - 530 2 LcdWriteData(userInfo.temp / 10 + 0x30); - 531 2 LcdWriteData(userInfo.temp % 10 + 0x30); - 532 2 LcdWriteData('C'); - 533 2 - 534 2 LcdWriteData(' '); - 535 2 LcdWriteData(userInfo.num / 10 % 10 + 0x30); - 536 2 LcdWriteData(userInfo.num % 10 + 0x30); - 537 2 }else{ - 538 2 LcdWriteCom(0x80); - 539 2 LcdWriteData('0'+ userInfo.time[0].hour/10); //时 - 540 2 LcdWriteData('0'+ userInfo.time[0].hour% 10); - 541 2 LcdWriteData(':'); - 542 2 LcdWriteData('0'+userInfo.time[0].min/10); //分 - 543 2 LcdWriteData('0'+ userInfo.time[0].min % 10); - 544 2 LcdWriteData(':'); - 545 2 LcdWriteData('0'+userInfo.time[0].sec / 10); //秒 - 546 2 LcdWriteData('0'+userInfo.time[0].sec % 10); - 547 2 LcdWriteData(' '); - 548 2 - C51 COMPILER V9.56.0.0 MAIN 05/01/2022 12:19:19 PAGE 10 + 486 1 userInfo.time[1].min = 30; + 487 1 userInfo.time[1].sec = 0; + 488 1 + 489 1 while(1) + 490 1 { + 491 2 Ds1302ReadTime(); + 492 2 LcdDisplay(); + 493 2 Detection(); + 494 2 Dispose(); + 495 2 sprintf(str, "%d\r\n", userInfo.temp); + 496 2 Bluetooth_Set(str); + 497 2 } + 498 1 } + 499 + 500 void LcdDisplay() + 501 { + 502 1 uint temp_data; + 503 1 if(userInfo.set == 0){ + 504 2 // TODO 显示时间 + 505 2 LcdWriteCom(0x80); + 506 2 LcdWriteData('0'+TIME[4]/16); //月 + 507 2 LcdWriteData('0'+(TIME[4]&0x0f)); + 508 2 LcdWriteData('-'); + 509 2 LcdWriteData('0'+TIME[3]/16); //日 + 510 2 LcdWriteData('0'+(TIME[3]&0x0f)); + 511 2 LcdWriteData(' '); + 512 2 + 513 2 LcdWriteData('0'+TIME[2]/16); //时 + 514 2 LcdWriteData('0'+(TIME[2]&0x0f)); + 515 2 LcdWriteData(':'); + 516 2 LcdWriteData('0'+TIME[1]/16); //分 + 517 2 LcdWriteData('0'+(TIME[1]&0x0f)); + 518 2 LcdWriteData(':'); + 519 2 LcdWriteData('0'+TIME[0]/16); //秒 + 520 2 LcdWriteData('0'+(TIME[0]&0x0f)); + 521 2 + 522 2 LcdWriteData(' '); + 523 2 LcdWriteData('0'+(TIME[5]&0x0f)); + 524 2 + 525 2 LcdWriteCom(0x80 + 0x40); + 526 2 temp_data = userInfo.Light; + 527 2 temp_data=temp_data%10000; + 528 2 LcdWriteData(temp_data/1000+0x30); + 529 2 temp_data=temp_data%1000; + 530 2 LcdWriteData(temp_data/100+0x30); + 531 2 temp_data=temp_data%100; + 532 2 LcdWriteData(temp_data/10+0x30); + 533 2 temp_data=temp_data%10; + 534 2 LcdWriteData(temp_data+0x30); + 535 2 LcdWriteData('L'); + 536 2 LcdWriteData('x'); + 537 2 LcdWriteData(' '); + 538 2 LcdWriteData(userInfo.temp / 10 + 0x30); + 539 2 LcdWriteData(userInfo.temp % 10 + 0x30); + 540 2 LcdWriteData('C'); + 541 2 + 542 2 LcdWriteData(' '); + 543 2 LcdWriteData(userInfo.num / 10 % 10 + 0x30); + 544 2 LcdWriteData(userInfo.num % 10 + 0x30); + 545 2 }else{ + 546 2 LcdWriteCom(0x80); + 547 2 LcdWriteData('0'+ userInfo.time[0].hour/10); //时 + C51 COMPILER V9.56.0.0 MAIN 05/01/2022 13:19:20 PAGE 10 - 549 2 LcdWriteData('0'+cut); - 550 2 - 551 2 LcdWriteCom(0x80 + 0x40); - 552 2 LcdWriteData('0'+ userInfo.time[1].hour/10); //时 - 553 2 LcdWriteData('0'+ userInfo.time[1].hour% 10); - 554 2 LcdWriteData(':'); - 555 2 LcdWriteData('0'+userInfo.time[1].min/10); //分 - 556 2 LcdWriteData('0'+ userInfo.time[1].min % 10); - 557 2 LcdWriteData(':'); - 558 2 LcdWriteData('0'+userInfo.time[1].sec / 10); //秒 - 559 2 LcdWriteData('0'+userInfo.time[1].sec % 10); - 560 2 } - 561 1 } - 562 - 563 - 564 void Delay10ms(void) //��� 0us - 565 { - 566 1 unsigned char a,b,c; - 567 1 for(c=1;c>0;c--) - 568 1 for(b=38;b>0;b--) - 569 1 for(a=130;a>0;a--); - 570 1 } + 548 2 LcdWriteData('0'+ userInfo.time[0].hour% 10); + 549 2 LcdWriteData(':'); + 550 2 LcdWriteData('0'+userInfo.time[0].min/10); //分 + 551 2 LcdWriteData('0'+ userInfo.time[0].min % 10); + 552 2 LcdWriteData(':'); + 553 2 LcdWriteData('0'+userInfo.time[0].sec / 10); //秒 + 554 2 LcdWriteData('0'+userInfo.time[0].sec % 10); + 555 2 LcdWriteData(' '); + 556 2 + 557 2 LcdWriteData('0'+cut); + 558 2 + 559 2 LcdWriteCom(0x80 + 0x40); + 560 2 LcdWriteData('0'+ userInfo.time[1].hour/10); //时 + 561 2 LcdWriteData('0'+ userInfo.time[1].hour% 10); + 562 2 LcdWriteData(':'); + 563 2 LcdWriteData('0'+userInfo.time[1].min/10); //分 + 564 2 LcdWriteData('0'+ userInfo.time[1].min % 10); + 565 2 LcdWriteData(':'); + 566 2 LcdWriteData('0'+userInfo.time[1].sec / 10); //秒 + 567 2 LcdWriteData('0'+userInfo.time[1].sec % 10); + 568 2 } + 569 1 } + 570 + 571 + 572 void Delay10ms(void) //��� 0us + 573 { + 574 1 unsigned char a,b,c; + 575 1 for(c=1;c>0;c--) + 576 1 for(b=38;b>0;b--) + 577 1 for(a=130;a>0;a--); + 578 1 } MODULE INFORMATION: STATIC OVERLAYABLE - CODE SIZE = 2027 ---- + CODE SIZE = 2082 ---- CONSTANT SIZE = 5 ---- XDATA SIZE = ---- ---- PDATA SIZE = ---- ---- - DATA SIZE = 38 22 + DATA SIZE = 42 22 IDATA SIZE = ---- ---- BIT SIZE = ---- 1 END OF MODULE INFORMATION. -C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S) +C51 COMPILATION COMPLETE. 1 WARNING(S), 0 ERROR(S) diff --git a/main.OBJ b/main.OBJ index 8aee14c..53c78a3 100644 Binary files a/main.OBJ and b/main.OBJ differ diff --git a/main.c b/main.c index 4e9990d..d0a8b15 100644 --- a/main.c +++ b/main.c @@ -18,6 +18,7 @@ sbit LED2=P2^1; sbit LED3=P2^4; sbit LED4=P2^3; +sbit LED5=P1^7; sbit key1 = P1^2; sbit key2 = P1^3; @@ -33,6 +34,8 @@ sbit SDA1=P1^0; int cut = 0; +int led_num = 0; + struct Time{ int hour; int min; @@ -266,7 +269,6 @@ void Init_BH1750() } - void Uart_Init() { TMOD = 0x20 | 0x01; @@ -306,6 +308,7 @@ void Bluetooth_Set(uchar *puf) void Detection() { + static int num = 0; int i = 0; Single_Write_BH1750(0x01); Single_Write_BH1750(0x10); @@ -324,6 +327,8 @@ void Detection() if(userInfo.set == 0){ if(userInfo.model == 0) userInfo.model = 1; else userInfo.model = 0; + if(userInfo.model == 1) LED4 = 1, LED5 = 0; + else LED4 = 0, LED5 = 1; } } while((i<50)&&(key1==0)){ @@ -338,8 +343,8 @@ void Detection() Delay10ms(); if(key2==0){ if(userInfo.model){ - if(userInfo.start == 0) userInfo.start = 1; - else userInfo.start = 0; + led_num++; + if(led_num >= 5) led_num = 0; }else{ if(userInfo.set == 0) userInfo.set = 1; else userInfo.set = 0; @@ -453,8 +458,11 @@ void Dispose() LED0 = 0, LED1 = 0, LED2 = 0 ,LED3 = 0; } }else{ - if(userInfo.start){ - LED0 = 1, LED1 = 1, LED2 = 1 ,LED3 = 1; + if(led_num){ + if(led_num == 1) LED0 = 0, LED1 = 0, LED2 = 0 ,LED3 = 1; + else if(led_num == 2) LED0 = 0, LED1 = 0, LED2 = 1 ,LED3 = 1; + else if(led_num == 3) LED0 = 0, LED1 = 1, LED2 = 1 ,LED3 = 1; + else if(led_num == 4) LED0 = 1, LED1 = 1, LED2 = 1 ,LED3 = 1; }else{ LED0 = 0, LED1 = 0, LED2 = 0 ,LED3 = 0; } diff --git a/pro b/pro index 4d048b2..6ca440f 100644 Binary files a/pro and b/pro differ diff --git a/pro.M51 b/pro.M51 index 8ad2041..ca8e1b1 100644 --- a/pro.M51 +++ b/pro.M51 @@ -1,4 +1,4 @@ -BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 12:24:18 PAGE 1 +BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 13:48:31 PAGE 1 BL51 BANKED LINKER/LOCATER V6.22, INVOKED BY: @@ -50,65 +50,65 @@ LINK MAP OF MODULE: pro (MAIN) 000FH 0011H *** GAP *** BIT 0020H.0 0001H.1 UNIT _BIT_GROUP_ 0021H.1 0000H.7 *** GAP *** - DATA 0022H 0028H UNIT _DATA_GROUP_ - DATA 004AH 0026H UNIT ?DT?MAIN - IDATA 0070H 0001H UNIT ?STACK + DATA 0022H 002AH UNIT ?DT?MAIN + DATA 004CH 0028H UNIT _DATA_GROUP_ + IDATA 0074H 0001H UNIT ?STACK * * * * * * * C O D E M E M O R Y * * * * * * * CODE 0000H 0003H ABSOLUTE CODE 0003H 069FH UNIT ?C?LIB_CODE CODE 06A2H 046FH UNIT ?PR?PRINTF?PRINTF - CODE 0B11H 0283H UNIT ?PR?LCDDISPLAY?MAIN - BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 12:24:18 PAGE 2 - - - CODE 0D94H 027AH UNIT ?PR?DETECTION?MAIN - CODE 100EH 00BEH UNIT ?PR?DISPOSE?MAIN - CODE 10CCH 0099H UNIT ?PR?GETTIMERESULT?MAIN - CODE 1165H 008CH UNIT ?C_C51STARTUP - CODE 11F1H 005AH UNIT ?PR?MAIN?MAIN - CODE 124BH 004FH UNIT ?PR?TEMPER_CHANGE?DS18B20 - CODE 129AH 004AH UNIT ?PR?_DS1302READ?DS1302 - CODE 12E4H 0042H UNIT ?PR?_DS18B20_WRITEBYTE?DS18B20 - CODE 1326H 0041H UNIT ?PR?_I2CSENDBYTE?I2C - CODE 1367H 003EH UNIT ?PR?DS18B20_READBYTE?DS18B20 - CODE 13A5H 0035H UNIT ?PR?_DS1302WRITE?DS1302 - CODE 13DAH 002AH UNIT ?PR?_LCD1602_DELAY1MS?LCD - CODE 1404H 0029H UNIT ?PR?MULTIPLE_READ_BH1750?MAIN - CODE 142DH 0027H UNIT ?PR?PUTCHAR?PUTCHAR - CODE 1454H 0026H UNIT ?PR?I2CREADBYTE?I2C - CODE 147AH 0025H UNIT ?PR?DS18B20_INIT?DS18B20 - CODE 149FH 0022H UNIT ?PR?_AT24C02READ?I2C - CODE 14C1H 0021H UNIT ?PR?DS18B20_READTEMP?DS18B20 - CODE 14E2H 0020H UNIT ?PR?_DELAY_NMS?MAIN - CODE 1502H 001EH UNIT ?PR?BH1750_RECVBYTE?MAIN - CODE 1520H 001EH UNIT ?PR?_DELAY_MS?DS18B20 - CODE 153EH 0019H UNIT ?PR?_BH1750_SENDBYTE?MAIN - CODE 1557H 0019H UNIT ?PR?LCDINIT?LCD - CODE 1570H 0019H UNIT ?PR?_AT24C02WRITE?I2C - CODE 1589H 0018H UNIT ?PR?_BLUETOOTH_SET?MAIN - CODE 15A1H 0016H UNIT ?PR?UART_INIT?MAIN - CODE 15B7H 0016H UNIT ?PR?DS1302READTIME?DS1302 - CODE 15CDH 0014H UNIT ?PR?DS1302INIT?DS1302 - CODE 15E1H 0012H UNIT ?PR?_SINGLE_WRITE_BH1750?MAIN - CODE 15F3H 0011H UNIT ?PR?DELAY5US?MAIN - CODE 1604H 000FH UNIT ?PR?DELAY5MS?MAIN - CODE 1613H 000FH UNIT ?PR?BH1750_START?MAIN - CODE 1622H 000FH UNIT ?PR?I2CSTART?I2C - CODE 1631H 000EH UNIT ?PR?BH1750_SENDACK?MAIN - CODE 163FH 000EH UNIT ?PR?_SEND_UART?MAIN - CODE 164DH 000EH UNIT ?C_INITSEG - CODE 165BH 000EH UNIT ?CO?DS1302 - CODE 1669H 000EH UNIT ?PR?DELAY10US?I2C - CODE 1677H 000DH UNIT ?PR?BH1750_RECVACK?MAIN - CODE 1684H 000DH UNIT ?PR?DELAY10MS?MAIN - CODE 1691H 000CH UNIT ?PR?BH1750_STOP?MAIN - CODE 169DH 000AH UNIT ?PR?_LCDWRITECOM?LCD - CODE 16A7H 000AH UNIT ?PR?_LCDWRITEDATA?LCD - CODE 16B1H 000AH UNIT ?PR?I2CSTOP?I2C - CODE 16BBH 0007H UNIT ?PR?_US_DELAY?MAIN - CODE 16C2H 0005H UNIT ?PR?INIT_BH1750?MAIN - CODE 16C7H 0005H UNIT ?CO?MAIN + CODE 0B11H 0292H UNIT ?PR?DETECTION?MAIN + BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 13:48:31 PAGE 2 + + + CODE 0DA3H 0283H UNIT ?PR?LCDDISPLAY?MAIN + CODE 1026H 00DDH UNIT ?PR?DISPOSE?MAIN + CODE 1103H 0099H UNIT ?PR?GETTIMERESULT?MAIN + CODE 119CH 008CH UNIT ?C_C51STARTUP + CODE 1228H 005AH UNIT ?PR?MAIN?MAIN + CODE 1282H 004FH UNIT ?PR?TEMPER_CHANGE?DS18B20 + CODE 12D1H 004AH UNIT ?PR?_DS1302READ?DS1302 + CODE 131BH 0042H UNIT ?PR?_DS18B20_WRITEBYTE?DS18B20 + CODE 135DH 0041H UNIT ?PR?_I2CSENDBYTE?I2C + CODE 139EH 003EH UNIT ?PR?DS18B20_READBYTE?DS18B20 + CODE 13DCH 0035H UNIT ?PR?_DS1302WRITE?DS1302 + CODE 1411H 002AH UNIT ?PR?_LCD1602_DELAY1MS?LCD + CODE 143BH 0029H UNIT ?PR?MULTIPLE_READ_BH1750?MAIN + CODE 1464H 0027H UNIT ?PR?PUTCHAR?PUTCHAR + CODE 148BH 0026H UNIT ?PR?I2CREADBYTE?I2C + CODE 14B1H 0025H UNIT ?PR?DS18B20_INIT?DS18B20 + CODE 14D6H 0022H UNIT ?PR?_AT24C02READ?I2C + CODE 14F8H 0021H UNIT ?PR?DS18B20_READTEMP?DS18B20 + CODE 1519H 0020H UNIT ?PR?_DELAY_NMS?MAIN + CODE 1539H 001EH UNIT ?PR?BH1750_RECVBYTE?MAIN + CODE 1557H 001EH UNIT ?PR?_DELAY_MS?DS18B20 + CODE 1575H 0019H UNIT ?PR?_BH1750_SENDBYTE?MAIN + CODE 158EH 0019H UNIT ?PR?LCDINIT?LCD + CODE 15A7H 0019H UNIT ?PR?_AT24C02WRITE?I2C + CODE 15C0H 0018H UNIT ?PR?_BLUETOOTH_SET?MAIN + CODE 15D8H 0016H UNIT ?PR?UART_INIT?MAIN + CODE 15EEH 0016H UNIT ?C_INITSEG + CODE 1604H 0016H UNIT ?PR?DS1302READTIME?DS1302 + CODE 161AH 0014H UNIT ?PR?DS1302INIT?DS1302 + CODE 162EH 0012H UNIT ?PR?_SINGLE_WRITE_BH1750?MAIN + CODE 1640H 0011H UNIT ?PR?DELAY5US?MAIN + CODE 1651H 000FH UNIT ?PR?DELAY5MS?MAIN + CODE 1660H 000FH UNIT ?PR?BH1750_START?MAIN + CODE 166FH 000FH UNIT ?PR?I2CSTART?I2C + CODE 167EH 000EH UNIT ?PR?BH1750_SENDACK?MAIN + CODE 168CH 000EH UNIT ?PR?_SEND_UART?MAIN + CODE 169AH 000EH UNIT ?CO?DS1302 + CODE 16A8H 000EH UNIT ?PR?DELAY10US?I2C + CODE 16B6H 000DH UNIT ?PR?BH1750_RECVACK?MAIN + CODE 16C3H 000DH UNIT ?PR?DELAY10MS?MAIN + CODE 16D0H 000CH UNIT ?PR?BH1750_STOP?MAIN + CODE 16DCH 000AH UNIT ?PR?_LCDWRITECOM?LCD + CODE 16E6H 000AH UNIT ?PR?_LCDWRITEDATA?LCD + CODE 16F0H 000AH UNIT ?PR?I2CSTOP?I2C + CODE 16FAH 0007H UNIT ?PR?_US_DELAY?MAIN + CODE 1701H 0005H UNIT ?PR?INIT_BH1750?MAIN + CODE 1706H 0005H UNIT ?CO?MAIN @@ -119,13 +119,13 @@ SEGMENT BIT_GROUP DATA_GROUP +--> CALLED SEGMENT START LENGTH START LENGTH -------------------------------------------------------------------------- ?C_C51STARTUP ----- ----- ----- ----- - BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 12:24:18 PAGE 3 + BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 13:48:31 PAGE 3 +--> ?PR?MAIN?MAIN +--> ?C_INITSEG -?PR?MAIN?MAIN ----- ----- 0022H 000CH +?PR?MAIN?MAIN ----- ----- 004CH 000CH +--> ?PR?DS1302INIT?DS1302 +--> ?PR?UART_INIT?MAIN +--> ?PR?LCDINIT?LCD @@ -150,14 +150,14 @@ SEGMENT BIT_GROUP DATA_GROUP +--> ?CO?DS1302 +--> ?PR?_DS1302READ?DS1302 -?PR?LCDDISPLAY?MAIN ----- ----- 002EH 0002H +?PR?LCDDISPLAY?MAIN ----- ----- 0058H 0002H +--> ?PR?_LCDWRITECOM?LCD +--> ?PR?_LCDWRITEDATA?LCD ?PR?_LCDWRITEDATA?LCD ----- ----- ----- ----- +--> ?PR?_LCD1602_DELAY1MS?LCD -?PR?DETECTION?MAIN ----- ----- 002EH 0002H +?PR?DETECTION?MAIN ----- ----- 0058H 0002H +--> ?PR?_SINGLE_WRITE_BH1750?MAIN +--> ?PR?_DELAY_NMS?MAIN +--> ?PR?MULTIPLE_READ_BH1750?MAIN @@ -179,7 +179,7 @@ SEGMENT BIT_GROUP DATA_GROUP ?PR?BH1750_RECVACK?MAIN ----- ----- ----- ----- +--> ?PR?DELAY5US?MAIN - BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 12:24:18 PAGE 4 + BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 13:48:31 PAGE 4 @@ -200,14 +200,14 @@ SEGMENT BIT_GROUP DATA_GROUP ?PR?BH1750_SENDACK?MAIN 0020H.0 0000H.1 ----- ----- +--> ?PR?DELAY5US?MAIN -?PR?TEMPER_CHANGE?DS18B20 ----- ----- 0030H 0004H +?PR?TEMPER_CHANGE?DS18B20 ----- ----- 005AH 0004H +--> ?PR?DS18B20_READTEMP?DS18B20 -?PR?DS18B20_READTEMP?DS18B20 ----- ----- 0034H 0001H +?PR?DS18B20_READTEMP?DS18B20 ----- ----- 005EH 0001H +--> ?PR?_DS18B20_WRITEBYTE?DS18B20 +--> ?PR?DS18B20_READBYTE?DS18B20 -?PR?_DS18B20_WRITEBYTE?DS18B20 ----- ----- 0035H 0002H +?PR?_DS18B20_WRITEBYTE?DS18B20 ----- ----- 005FH 0002H +--> ?PR?DS18B20_INIT?DS18B20 +--> ?PR?_DELAY_MS?DS18B20 @@ -217,9 +217,9 @@ SEGMENT BIT_GROUP DATA_GROUP ?PR?DISPOSE?MAIN ----- ----- ----- ----- +--> ?PR?GETTIMERESULT?MAIN -?PR?GETTIMERESULT?MAIN ----- ----- 002EH 0006H +?PR?GETTIMERESULT?MAIN ----- ----- 0058H 0006H -?PR?PRINTF?PRINTF 0020H.0 0001H.1 002EH 001CH +?PR?PRINTF?PRINTF 0020H.0 0001H.1 0058H 001CH +--> ?PR?PUTCHAR?PUTCHAR ?PR?_BLUETOOTH_SET?MAIN ----- ----- ----- ----- @@ -239,54 +239,56 @@ SYMBOL TABLE OF MODULE: pro (MAIN) D:0090H PUBLIC P1 D:00A0H PUBLIC P2 D:00B0H PUBLIC P3 - BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 12:24:18 PAGE 5 + BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 13:48:31 PAGE 5 B:00A0H.5 PUBLIC LED0 B:00A8H.7 PUBLIC EA B:00A0H.6 PUBLIC LED1 B:00A0H.1 PUBLIC LED2 - C:1604H PUBLIC Delay5ms + C:1651H PUBLIC Delay5ms B:00A0H.4 PUBLIC LED3 - C:1404H PUBLIC Multiple_read_BH1750 + C:143BH PUBLIC Multiple_read_BH1750 B:0090H.0 PUBLIC SDA1 B:00A0H.3 PUBLIC LED4 - C:163FH PUBLIC _Send_Uart - C:15E1H PUBLIC _Single_Write_BH1750 - C:15F3H PUBLIC Delay5us + C:168CH PUBLIC _Send_Uart + B:0090H.7 PUBLIC LED5 + C:162EH PUBLIC _Single_Write_BH1750 + C:1640H PUBLIC Delay5us B:0090H.1 PUBLIC SCL1 - C:15A1H PUBLIC Uart_Init - C:1631H PUBLIC BH1750_SendACK + C:15D8H PUBLIC Uart_Init + C:167EH PUBLIC BH1750_SendACK B:00B0H.7 PUBLIC IN B:00A8H.4 PUBLIC ES - C:1677H PUBLIC BH1750_RecvACK + C:16B6H PUBLIC BH1750_RecvACK B:00D0H.7 PUBLIC CY B:0098H.1 PUBLIC TI - C:0D94H PUBLIC Detection - C:11F1H PUBLIC main + C:0B11H PUBLIC Detection + C:1228H PUBLIC main D:0099H PUBLIC SBUF D:0087H PUBLIC PCON D:0098H PUBLIC SCON - C:1684H PUBLIC Delay10ms + C:16C3H PUBLIC Delay10ms D:0089H PUBLIC TMOD - D:004AH PUBLIC dis_data - C:14E2H PUBLIC _delay_nms - C:1589H PUBLIC _Bluetooth_Set - C:1613H PUBLIC BH1750_Start - D:004CH PUBLIC cut + D:0024H PUBLIC dis_data + C:1519H PUBLIC _delay_nms + C:15C0H PUBLIC _Bluetooth_Set + C:1660H PUBLIC BH1750_Start + D:0026H PUBLIC cut D:008DH PUBLIC TH1 - C:16C2H PUBLIC Init_BH1750 - D:004EH PUBLIC userInfo + C:1701H PUBLIC Init_BH1750 + D:0028H PUBLIC userInfo D:008BH PUBLIC TL1 - C:10CCH PUBLIC getTimeResult + C:1103H PUBLIC getTimeResult B:0088H.6 PUBLIC TR1 - C:100EH PUBLIC Dispose - C:16BBH PUBLIC _us_delay - C:153EH PUBLIC _BH1750_SendByte - D:0068H PUBLIC BUF - C:1691H PUBLIC BH1750_Stop - C:1502H PUBLIC BH1750_RecvByte - C:0B11H PUBLIC LcdDisplay + C:1026H PUBLIC Dispose + C:16FAH PUBLIC _us_delay + C:1575H PUBLIC _BH1750_SendByte + D:0042H PUBLIC BUF + C:16D0H PUBLIC BH1750_Stop + C:1539H PUBLIC BH1750_RecvByte + D:004AH PUBLIC led_num + C:0DA3H PUBLIC LcdDisplay B:00B0H.6 PUBLIC OUT B:0090H.2 PUBLIC key1 B:0090H.3 PUBLIC key2 @@ -297,463 +299,469 @@ SYMBOL TABLE OF MODULE: pro (MAIN) D:0004H SYMBOL i D:0002H SYMBOL j ------- ENDDO - C:14E2H LINE# 90 - C:14E2H LINE# 91 - BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 12:24:18 PAGE 6 + BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 13:48:31 PAGE 6 - C:14E2H LINE# 93 - C:14ECH LINE# 94 - C:14ECH LINE# 95 - C:14EFH LINE# 96 - C:1501H LINE# 97 + C:1519H LINE# 93 + C:1519H LINE# 94 + C:1519H LINE# 96 + C:1523H LINE# 97 + C:1523H LINE# 98 + C:1526H LINE# 99 + C:1538H LINE# 100 ------- ENDPROC _DELAY_NMS ------- PROC DELAY5US - C:15F3H LINE# 99 - C:15F3H LINE# 100 - C:15F3H LINE# 101 - C:15F7H LINE# 102 - C:15FBH LINE# 103 - C:15FFH LINE# 104 - C:1603H LINE# 105 + C:1640H LINE# 102 + C:1640H LINE# 103 + C:1640H LINE# 104 + C:1644H LINE# 105 + C:1648H LINE# 106 + C:164CH LINE# 107 + C:1650H LINE# 108 ------- ENDPROC DELAY5US ------- PROC DELAY5MS ------- DO D:0006H SYMBOL n ------- ENDDO - C:1604H LINE# 107 - C:1604H LINE# 108 - C:1604H LINE# 109 - C:1608H LINE# 111 - C:1612H LINE# 112 + C:1651H LINE# 110 + C:1651H LINE# 111 + C:1651H LINE# 112 + C:1655H LINE# 114 + C:165FH LINE# 115 ------- ENDPROC DELAY5MS ------- PROC BH1750_START - C:1613H LINE# 117 - C:1613H LINE# 118 - C:1613H LINE# 119 - C:1615H LINE# 120 - C:1617H LINE# 121 - C:161AH LINE# 122 - C:161CH LINE# 123 - C:161FH LINE# 124 - C:1621H LINE# 125 + C:1660H LINE# 120 + C:1660H LINE# 121 + C:1660H LINE# 122 + C:1662H LINE# 123 + C:1664H LINE# 124 + C:1667H LINE# 125 + C:1669H LINE# 126 + C:166CH LINE# 127 + C:166EH LINE# 128 ------- ENDPROC BH1750_START ------- PROC BH1750_STOP - C:1691H LINE# 130 - C:1691H LINE# 131 - C:1691H LINE# 132 - C:1693H LINE# 133 - C:1695H LINE# 134 - C:1698H LINE# 135 - C:169AH LINE# 136 + C:16D0H LINE# 133 + C:16D0H LINE# 134 + C:16D0H LINE# 135 + C:16D2H LINE# 136 + C:16D4H LINE# 137 + C:16D7H LINE# 138 + C:16D9H LINE# 139 ------- ENDPROC BH1750_STOP ------- PROC BH1750_SENDACK B:0020H.0 SYMBOL ack - C:1631H LINE# 143 - C:1631H LINE# 144 - C:1631H LINE# 145 - C:1635H LINE# 146 - C:1637H LINE# 147 - C:163AH LINE# 148 - C:163CH LINE# 149 + C:167EH LINE# 146 + C:167EH LINE# 147 + C:167EH LINE# 148 + C:1682H LINE# 149 + C:1684H LINE# 150 + C:1687H LINE# 151 + C:1689H LINE# 152 ------- ENDPROC BH1750_SENDACK + BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 13:48:31 PAGE 7 + + ------- PROC BH1750_RECVACK - C:1677H LINE# 155 - BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 12:24:18 PAGE 7 - - - C:1677H LINE# 156 - C:1677H LINE# 157 - C:1679H LINE# 158 - C:167CH LINE# 159 - C:167EH LINE# 160 - C:1680H LINE# 161 - C:1683H LINE# 163 - C:1683H LINE# 164 + C:16B6H LINE# 158 + C:16B6H LINE# 159 + C:16B6H LINE# 160 + C:16B8H LINE# 161 + C:16BBH LINE# 162 + C:16BDH LINE# 163 + C:16BFH LINE# 164 + C:16C2H LINE# 166 + C:16C2H LINE# 167 ------- ENDPROC BH1750_RECVACK ------- PROC _BH1750_SENDBYTE D:0007H SYMBOL dat ------- DO D:0006H SYMBOL i ------- ENDDO - C:153EH LINE# 169 - C:153EH LINE# 170 - C:153EH LINE# 173 - C:1540H LINE# 174 - C:1540H LINE# 175 - C:1544H LINE# 176 - C:1546H LINE# 177 - C:1548H LINE# 178 - C:154BH LINE# 179 - C:154DH LINE# 180 - C:1550H LINE# 181 - C:1554H LINE# 182 + C:1575H LINE# 172 + C:1575H LINE# 173 + C:1575H LINE# 176 + C:1577H LINE# 177 + C:1577H LINE# 178 + C:157BH LINE# 179 + C:157DH LINE# 180 + C:157FH LINE# 181 + C:1582H LINE# 182 + C:1584H LINE# 183 + C:1587H LINE# 184 + C:158BH LINE# 185 ------- ENDPROC _BH1750_SENDBYTE ------- PROC BH1750_RECVBYTE ------- DO D:0006H SYMBOL i D:0007H SYMBOL dat ------- ENDDO - C:1502H LINE# 188 - C:1502H LINE# 189 - C:1502H LINE# 191 - C:1504H LINE# 193 - C:1506H LINE# 194 - C:1507H LINE# 195 - C:1507H LINE# 196 - C:150BH LINE# 197 - C:150DH LINE# 198 - C:1510H LINE# 199 - C:1516H LINE# 200 - C:1518H LINE# 201 - C:151BH LINE# 202 - C:151FH LINE# 203 - C:151FH LINE# 204 + C:1539H LINE# 191 + C:1539H LINE# 192 + C:1539H LINE# 194 + C:153BH LINE# 196 + C:153DH LINE# 197 + C:153EH LINE# 198 + C:153EH LINE# 199 + C:1542H LINE# 200 + C:1544H LINE# 201 + C:1547H LINE# 202 + C:154DH LINE# 203 + C:154FH LINE# 204 + C:1552H LINE# 205 + C:1556H LINE# 206 + C:1556H LINE# 207 ------- ENDPROC BH1750_RECVBYTE ------- PROC _SINGLE_WRITE_BH1750 D:0005H SYMBOL REG_Address - C:15E1H LINE# 208 - C:15E3H LINE# 209 - C:15E3H LINE# 210 - C:15E6H LINE# 211 - C:15EBH LINE# 212 - C:15F0H LINE# 214 - ------- ENDPROC _SINGLE_WRITE_BH1750 - BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 12:24:18 PAGE 8 + C:162EH LINE# 211 + C:1630H LINE# 212 + C:1630H LINE# 213 + C:1633H LINE# 214 + C:1638H LINE# 215 + BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 13:48:31 PAGE 8 + C:163DH LINE# 217 + ------- ENDPROC _SINGLE_WRITE_BH1750 ------- PROC MULTIPLE_READ_BH1750 ------- DO D:0005H SYMBOL i ------- ENDDO - C:1404H LINE# 237 - C:1404H LINE# 239 - C:1404H LINE# 240 - C:1407H LINE# 241 - C:140CH LINE# 243 - C:140EH LINE# 244 - C:140EH LINE# 245 - C:1417H LINE# 246 - C:141AH LINE# 247 - C:141AH LINE# 249 - C:141CH LINE# 250 - C:141EH LINE# 252 - C:141EH LINE# 253 - C:1423H LINE# 254 - C:1423H LINE# 255 - C:1427H LINE# 257 - C:142AH LINE# 258 + C:143BH LINE# 240 + C:143BH LINE# 242 + C:143BH LINE# 243 + C:143EH LINE# 244 + C:1443H LINE# 246 + C:1445H LINE# 247 + C:1445H LINE# 248 + C:144EH LINE# 249 + C:1451H LINE# 250 + C:1451H LINE# 252 + C:1453H LINE# 253 + C:1455H LINE# 255 + C:1455H LINE# 256 + C:145AH LINE# 257 + C:145AH LINE# 258 + C:145EH LINE# 260 + C:1461H LINE# 261 ------- ENDPROC MULTIPLE_READ_BH1750 ------- PROC INIT_BH1750 - C:16C2H LINE# 263 - C:16C2H LINE# 264 - C:16C2H LINE# 265 + C:1701H LINE# 266 + C:1701H LINE# 267 + C:1701H LINE# 268 ------- ENDPROC INIT_BH1750 ------- PROC UART_INIT - C:15A1H LINE# 270 - C:15A1H LINE# 271 - C:15A1H LINE# 272 - C:15A4H LINE# 273 - C:15A7H LINE# 274 - C:15AAH LINE# 275 - C:15ADH LINE# 276 - C:15B0H LINE# 277 - C:15B2H LINE# 278 - C:15B4H LINE# 279 - C:15B6H LINE# 280 + C:15D8H LINE# 272 + C:15D8H LINE# 273 + C:15D8H LINE# 274 + C:15DBH LINE# 275 + C:15DEH LINE# 276 + C:15E1H LINE# 277 + C:15E4H LINE# 278 + C:15E7H LINE# 279 + C:15E9H LINE# 280 + C:15EBH LINE# 281 + C:15EDH LINE# 282 ------- ENDPROC UART_INIT ------- PROC _US_DELAY D:0007H SYMBOL t - C:16BBH LINE# 282 - C:16BBH LINE# 283 - C:16BBH LINE# 284 - C:16C1H LINE# 285 + C:16FAH LINE# 284 + C:16FAH LINE# 285 + C:16FAH LINE# 286 + C:1700H LINE# 287 ------- ENDPROC _US_DELAY ------- PROC _SEND_UART D:0007H SYMBOL value - C:163FH LINE# 287 - C:163FH LINE# 288 - C:163FH LINE# 289 - C:1641H LINE# 290 - C:1643H LINE# 291 - C:1645H LINE# 292 - C:1648H LINE# 293 - C:164AH LINE# 294 - BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 12:24:18 PAGE 9 - - - C:164CH LINE# 295 + C:168CH LINE# 289 + C:168CH LINE# 290 + C:168CH LINE# 291 + C:168EH LINE# 292 + C:1690H LINE# 293 + C:1692H LINE# 294 + BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 13:48:31 PAGE 9 + + + C:1695H LINE# 295 + C:1697H LINE# 296 + C:1699H LINE# 297 ------- ENDPROC _SEND_UART ------- PROC _BLUETOOTH_SET D:0001H SYMBOL puf - C:1589H LINE# 297 - C:1589H LINE# 298 - C:1589H LINE# 299 - C:158FH LINE# 300 - C:158FH LINE# 301 - C:1592H LINE# 302 - C:1597H LINE# 303 - C:159EH LINE# 304 - C:15A0H LINE# 305 + C:15C0H LINE# 299 + C:15C0H LINE# 300 + C:15C0H LINE# 301 + C:15C6H LINE# 302 + C:15C6H LINE# 303 + C:15C9H LINE# 304 + C:15CEH LINE# 305 + C:15D5H LINE# 306 + C:15D7H LINE# 307 ------- ENDPROC _BLUETOOTH_SET ------- PROC DETECTION ------- DO - D:002EH SYMBOL i + D:0022H SYMBOL num + D:0058H SYMBOL i ------- ENDDO - C:0D94H LINE# 307 - C:0D94H LINE# 308 - C:0D94H LINE# 309 - C:0D99H LINE# 310 - C:0D9EH LINE# 311 - C:0DA3H LINE# 312 - C:0DAAH LINE# 313 - C:0DADH LINE# 314 - C:0DB3H LINE# 315 - C:0DC1H LINE# 316 - C:0DDAH LINE# 318 - C:0DE1H LINE# 319 - C:0DECH LINE# 320 - C:0DEFH LINE# 321 - C:0DEFH LINE# 322 - C:0DF2H LINE# 323 - C:0DF5H LINE# 324 - C:0DFBH LINE# 325 - C:0E08H LINE# 326 - C:0E0DH LINE# 327 - C:0E0DH LINE# 328 - C:0E0DH LINE# 329 - C:0E1DH LINE# 330 - C:0E20H LINE# 331 - C:0E28H LINE# 332 - C:0E2AH LINE# 333 - C:0E2FH LINE# 334 - C:0E2FH LINE# 336 - C:0E32H LINE# 337 - C:0E32H LINE# 338 - C:0E35H LINE# 339 - C:0E38H LINE# 340 - C:0E3EH LINE# 341 - C:0E4BH LINE# 342 - C:0E50H LINE# 343 - C:0E52H LINE# 344 - C:0E5FH LINE# 345 - C:0E64H LINE# 346 - C:0E69H LINE# 347 - BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 12:24:18 PAGE 10 - - - C:0E69H LINE# 348 - C:0E6EH LINE# 349 - C:0E6EH LINE# 350 - C:0E7EH LINE# 351 - C:0E81H LINE# 352 - C:0E89H LINE# 353 - C:0E8BH LINE# 354 - C:0E90H LINE# 355 - C:0E90H LINE# 357 - C:0E93H LINE# 358 - C:0E93H LINE# 359 - C:0E96H LINE# 360 - C:0E99H LINE# 361 - C:0EA1H LINE# 362 - C:0EB2H LINE# 363 - C:0EB2H LINE# 364 - C:0EC2H LINE# 365 - C:0EC5H LINE# 366 - C:0ECDH LINE# 367 - C:0ECFH LINE# 368 - C:0ED4H LINE# 369 - C:0ED4H LINE# 371 - C:0ED7H LINE# 372 - C:0ED7H LINE# 373 - C:0EDAH LINE# 374 - C:0EDDH LINE# 375 - C:0EE5H LINE# 376 - C:0EF3H LINE# 377 - C:0EF3H LINE# 378 - C:0F03H LINE# 379 - C:0F06H LINE# 380 - C:0F0EH LINE# 381 - C:0F10H LINE# 382 - C:0F15H LINE# 383 - C:0F15H LINE# 385 - C:0F18H LINE# 386 - C:0F18H LINE# 387 - C:0F1BH LINE# 388 - C:0F1EH LINE# 389 - C:0F26H LINE# 390 - C:0F36H LINE# 391 - C:0F36H LINE# 392 - C:0F46H LINE# 393 - C:0F49H LINE# 394 - C:0F51H LINE# 395 - C:0F53H LINE# 396 - C:0F58H LINE# 397 - C:0F58H LINE# 399 - C:0F5EH LINE# 400 - C:0F5EH LINE# 401 - C:0F61H LINE# 402 - C:0F67H LINE# 403 - C:0F6DH LINE# 404 - C:0F75H LINE# 405 - C:0F85H LINE# 406 - C:0F8FH LINE# 407 - C:0F97H LINE# 408 - BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 12:24:18 PAGE 11 - - - C:0FA7H LINE# 409 - C:0FB1H LINE# 410 - C:0FB9H LINE# 411 - C:0FC9H LINE# 412 - C:0FD3H LINE# 413 - C:0FDBH LINE# 414 - C:0FEBH LINE# 415 - C:0FEBH LINE# 416 - C:0FFBH LINE# 417 - C:0FFEH LINE# 418 - C:1006H LINE# 419 - C:1008H LINE# 420 - C:100DH LINE# 421 - C:100DH LINE# 422 - C:100DH LINE# 423 + C:0B11H LINE# 309 + C:0B11H LINE# 310 + C:0B11H LINE# 312 + C:0B16H LINE# 313 + C:0B1BH LINE# 314 + C:0B20H LINE# 315 + C:0B27H LINE# 316 + C:0B2AH LINE# 317 + C:0B30H LINE# 318 + C:0B3EH LINE# 319 + C:0B57H LINE# 321 + C:0B5EH LINE# 322 + C:0B69H LINE# 323 + C:0B6CH LINE# 324 + C:0B6CH LINE# 325 + C:0B6FH LINE# 326 + C:0B72H LINE# 327 + C:0B78H LINE# 328 + C:0B85H LINE# 329 + C:0B8AH LINE# 330 + C:0B98H LINE# 331 + C:0B9CH LINE# 332 + C:0B9CH LINE# 333 + C:0B9CH LINE# 334 + C:0BACH LINE# 335 + C:0BAFH LINE# 336 + C:0BB7H LINE# 337 + C:0BB9H LINE# 338 + C:0BBEH LINE# 339 + C:0BBEH LINE# 341 + C:0BC1H LINE# 342 + C:0BC1H LINE# 343 + C:0BC4H LINE# 344 + C:0BC7H LINE# 345 + C:0BCDH LINE# 346 + C:0BD5H LINE# 347 + BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 13:48:31 PAGE 10 + + + C:0BE5H LINE# 348 + C:0BE7H LINE# 349 + C:0BF4H LINE# 350 + C:0BF9H LINE# 351 + C:0BFEH LINE# 352 + C:0BFEH LINE# 353 + C:0C03H LINE# 354 + C:0C03H LINE# 355 + C:0C13H LINE# 356 + C:0C16H LINE# 357 + C:0C1EH LINE# 358 + C:0C20H LINE# 359 + C:0C25H LINE# 360 + C:0C25H LINE# 362 + C:0C28H LINE# 363 + C:0C28H LINE# 364 + C:0C2BH LINE# 365 + C:0C2EH LINE# 366 + C:0C36H LINE# 367 + C:0C47H LINE# 368 + C:0C47H LINE# 369 + C:0C57H LINE# 370 + C:0C5AH LINE# 371 + C:0C62H LINE# 372 + C:0C64H LINE# 373 + C:0C69H LINE# 374 + C:0C69H LINE# 376 + C:0C6CH LINE# 377 + C:0C6CH LINE# 378 + C:0C6FH LINE# 379 + C:0C72H LINE# 380 + C:0C7AH LINE# 381 + C:0C88H LINE# 382 + C:0C88H LINE# 383 + C:0C98H LINE# 384 + C:0C9BH LINE# 385 + C:0CA3H LINE# 386 + C:0CA5H LINE# 387 + C:0CAAH LINE# 388 + C:0CAAH LINE# 390 + C:0CADH LINE# 391 + C:0CADH LINE# 392 + C:0CB0H LINE# 393 + C:0CB3H LINE# 394 + C:0CBBH LINE# 395 + C:0CCBH LINE# 396 + C:0CCBH LINE# 397 + C:0CDBH LINE# 398 + C:0CDEH LINE# 399 + C:0CE6H LINE# 400 + C:0CE8H LINE# 401 + C:0CEDH LINE# 402 + C:0CEDH LINE# 404 + C:0CF3H LINE# 405 + C:0CF3H LINE# 406 + C:0CF6H LINE# 407 + C:0CFCH LINE# 408 + BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 13:48:31 PAGE 11 + + + C:0D02H LINE# 409 + C:0D0AH LINE# 410 + C:0D1AH LINE# 411 + C:0D24H LINE# 412 + C:0D2CH LINE# 413 + C:0D3CH LINE# 414 + C:0D46H LINE# 415 + C:0D4EH LINE# 416 + C:0D5EH LINE# 417 + C:0D68H LINE# 418 + C:0D70H LINE# 419 + C:0D80H LINE# 420 + C:0D80H LINE# 421 + C:0D90H LINE# 422 + C:0D93H LINE# 423 + C:0D9BH LINE# 424 + C:0D9DH LINE# 425 + C:0DA2H LINE# 426 + C:0DA2H LINE# 427 + C:0DA2H LINE# 428 ------- ENDPROC DETECTION ------- PROC GETTIMERESULT ------- DO D:0004H SYMBOL result - D:002EH SYMBOL Nowtime + D:0058H SYMBOL Nowtime ------- ENDDO - C:10CCH LINE# 426 - C:10CCH LINE# 427 - C:10CCH LINE# 428 - C:10D0H LINE# 431 - C:10E9H LINE# 432 - C:1100H LINE# 434 - C:1124H LINE# 435 - C:1141H LINE# 436 - C:1160H LINE# 438 - C:1164H LINE# 439 + C:1103H LINE# 431 + C:1103H LINE# 432 + C:1103H LINE# 433 + C:1107H LINE# 436 + C:1120H LINE# 437 + C:1137H LINE# 439 + C:115BH LINE# 440 + C:1178H LINE# 441 + C:1197H LINE# 443 + C:119BH LINE# 444 ------- ENDPROC GETTIMERESULT ------- PROC DISPOSE - C:100EH LINE# 442 - C:100EH LINE# 443 - C:100EH LINE# 445 - C:1017H LINE# 446 - C:1035H LINE# 447 - C:1058H LINE# 448 - C:1077H LINE# 449 - C:1096H LINE# 450 - C:10A9H LINE# 453 - C:10A9H LINE# 454 - C:10A9H LINE# 455 - C:10ABH LINE# 456 - C:10B1H LINE# 457 - C:10B9H LINE# 458 - C:10BBH LINE# 459 - C:10C3H LINE# 460 - C:10C3H LINE# 461 - C:10C3H LINE# 462 - C:10CBH LINE# 463 + C:1026H LINE# 447 + C:1026H LINE# 448 + C:1026H LINE# 450 + C:102FH LINE# 451 + C:104AH LINE# 452 + C:1065H LINE# 453 + C:1080H LINE# 454 + C:109BH LINE# 455 + C:10AAH LINE# 458 + C:10AAH LINE# 459 + C:10AAH LINE# 460 + C:10ACH LINE# 461 + C:10B2H LINE# 462 + C:10C4H LINE# 463 + C:10D2H LINE# 464 + C:10E0H LINE# 465 + C:10F0H LINE# 466 + C:10F2H LINE# 467 + C:10FAH LINE# 468 + BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 13:48:31 PAGE 12 + + + C:10FAH LINE# 469 + C:10FAH LINE# 470 + C:1102H LINE# 471 ------- ENDPROC DISPOSE ------- PROC MAIN ------- DO - D:0022H SYMBOL i - D:0024H SYMBOL str - BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 12:24:18 PAGE 12 - - + D:004CH SYMBOL i + D:004EH SYMBOL str ------- ENDDO - C:11F1H LINE# 465 - C:11F1H LINE# 466 - C:11F1H LINE# 467 - C:11F6H LINE# 469 - C:11F9H LINE# 470 - C:11FCH LINE# 471 - C:11FFH LINE# 473 - C:1205H LINE# 474 - C:120AH LINE# 475 - C:120EH LINE# 477 - C:1213H LINE# 478 - C:1218H LINE# 479 - C:121CH LINE# 481 - C:121CH LINE# 482 - C:121CH LINE# 483 - C:121FH LINE# 484 - C:1222H LINE# 485 - C:1225H LINE# 486 - C:1228H LINE# 487 - C:1240H LINE# 488 - C:1249H LINE# 489 + C:1228H LINE# 473 + C:1228H LINE# 474 + C:1228H LINE# 475 + C:122DH LINE# 477 + C:1230H LINE# 478 + C:1233H LINE# 479 + C:1236H LINE# 481 + C:123CH LINE# 482 + C:1241H LINE# 483 + C:1245H LINE# 485 + C:124AH LINE# 486 + C:124FH LINE# 487 + C:1253H LINE# 489 + C:1253H LINE# 490 + C:1253H LINE# 491 + C:1256H LINE# 492 + C:1259H LINE# 493 + C:125CH LINE# 494 + C:125FH LINE# 495 + C:1277H LINE# 496 + C:1280H LINE# 497 ------- ENDPROC MAIN ------- PROC LCDDISPLAY ------- DO - D:002EH SYMBOL temp_data + D:0058H SYMBOL temp_data ------- ENDDO - C:0B11H LINE# 492 - C:0B11H LINE# 493 - C:0B11H LINE# 495 - C:0B1CH LINE# 497 - C:0B1FH LINE# 498 - C:0B2AH LINE# 499 - C:0B34H LINE# 500 - C:0B39H LINE# 501 - C:0B44H LINE# 502 - C:0B4EH LINE# 503 - C:0B53H LINE# 505 - C:0B5EH LINE# 506 - C:0B68H LINE# 507 - C:0B6DH LINE# 508 - C:0B78H LINE# 509 - C:0B82H LINE# 510 - C:0B87H LINE# 511 - C:0B92H LINE# 512 - C:0B9CH LINE# 514 - C:0BA1H LINE# 515 - C:0BABH LINE# 517 - C:0BB0H LINE# 518 - C:0BBFH LINE# 519 - C:0BCAH LINE# 520 - C:0BDCH LINE# 521 - C:0BEBH LINE# 522 - C:0BFDH LINE# 523 - C:0C0CH LINE# 524 - C:0C1EH LINE# 525 - C:0C2DH LINE# 526 - BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 12:24:18 PAGE 13 - - - C:0C35H LINE# 527 - C:0C3AH LINE# 528 - C:0C3FH LINE# 529 - C:0C44H LINE# 530 - C:0C56H LINE# 531 - C:0C68H LINE# 532 - C:0C6DH LINE# 534 - C:0C72H LINE# 535 - C:0C8BH LINE# 536 - C:0C8FH LINE# 537 - C:0C92H LINE# 538 - C:0C95H LINE# 539 - C:0CA7H LINE# 540 - C:0CB9H LINE# 541 - C:0CBEH LINE# 542 - C:0CD0H LINE# 543 - C:0CE2H LINE# 544 - C:0CE7H LINE# 545 - C:0CF9H LINE# 546 - C:0D0BH LINE# 547 - C:0D10H LINE# 549 - C:0D18H LINE# 551 - C:0D1DH LINE# 552 - C:0D2FH LINE# 553 - C:0D41H LINE# 554 - C:0D46H LINE# 555 - C:0D58H LINE# 556 - C:0D6AH LINE# 557 - C:0D6FH LINE# 558 - C:0D81H LINE# 559 - C:0D93H LINE# 560 - C:0D93H LINE# 561 + C:0DA3H LINE# 500 + C:0DA3H LINE# 501 + C:0DA3H LINE# 503 + C:0DAEH LINE# 505 + C:0DB1H LINE# 506 + C:0DBCH LINE# 507 + C:0DC6H LINE# 508 + C:0DCBH LINE# 509 + C:0DD6H LINE# 510 + C:0DE0H LINE# 511 + C:0DE5H LINE# 513 + C:0DF0H LINE# 514 + C:0DFAH LINE# 515 + C:0DFFH LINE# 516 + C:0E0AH LINE# 517 + C:0E14H LINE# 518 + C:0E19H LINE# 519 + C:0E24H LINE# 520 + C:0E2EH LINE# 522 + C:0E33H LINE# 523 + C:0E3DH LINE# 525 + C:0E42H LINE# 526 + BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 13:48:31 PAGE 13 + + + C:0E51H LINE# 527 + C:0E5CH LINE# 528 + C:0E6EH LINE# 529 + C:0E7DH LINE# 530 + C:0E8FH LINE# 531 + C:0E9EH LINE# 532 + C:0EB0H LINE# 533 + C:0EBFH LINE# 534 + C:0EC7H LINE# 535 + C:0ECCH LINE# 536 + C:0ED1H LINE# 537 + C:0ED6H LINE# 538 + C:0EE8H LINE# 539 + C:0EFAH LINE# 540 + C:0EFFH LINE# 542 + C:0F04H LINE# 543 + C:0F1DH LINE# 544 + C:0F21H LINE# 545 + C:0F24H LINE# 546 + C:0F27H LINE# 547 + C:0F39H LINE# 548 + C:0F4BH LINE# 549 + C:0F50H LINE# 550 + C:0F62H LINE# 551 + C:0F74H LINE# 552 + C:0F79H LINE# 553 + C:0F8BH LINE# 554 + C:0F9DH LINE# 555 + C:0FA2H LINE# 557 + C:0FAAH LINE# 559 + C:0FAFH LINE# 560 + C:0FC1H LINE# 561 + C:0FD3H LINE# 562 + C:0FD8H LINE# 563 + C:0FEAH LINE# 564 + C:0FFCH LINE# 565 + C:1001H LINE# 566 + C:1013H LINE# 567 + C:1025H LINE# 568 + C:1025H LINE# 569 ------- ENDPROC LCDDISPLAY ------- PROC DELAY10MS ------- DO @@ -761,29 +769,29 @@ SYMBOL TABLE OF MODULE: pro (MAIN) D:0006H SYMBOL b D:0007H SYMBOL c ------- ENDDO - C:1684H LINE# 564 - C:1684H LINE# 565 - C:1684H LINE# 567 - C:1686H LINE# 568 - C:1688H LINE# 569 - C:1690H LINE# 570 + C:16C3H LINE# 572 + C:16C3H LINE# 573 + C:16C3H LINE# 575 + C:16C5H LINE# 576 + C:16C7H LINE# 577 + C:16CFH LINE# 578 ------- ENDPROC DELAY10MS ------- ENDMOD MAIN ------- MODULE LCD + BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 13:48:31 PAGE 14 + + C:0000H SYMBOL _ICE_DUMMY_ D:0080H PUBLIC P0 D:0090H PUBLIC P1 - C:16A7H PUBLIC _LcdWriteData + C:16E6H PUBLIC _LcdWriteData B:0090H.6 PUBLIC LCD1602_RS B:0090H.5 PUBLIC LCD1602_RW - C:1557H PUBLIC LcdInit + C:158EH PUBLIC LcdInit B:0090H.4 PUBLIC LCD1602_E - BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 12:24:18 PAGE 14 - - - C:169DH PUBLIC _LcdWriteCom - C:13EBH PUBLIC _Lcd1602_Delay1ms + C:16DCH PUBLIC _LcdWriteCom + C:1422H PUBLIC _Lcd1602_Delay1ms ------- PROC L?0015 ------- ENDPROC L?0015 ------- PROC _LCD1602_DELAY1MS @@ -792,236 +800,236 @@ SYMBOL TABLE OF MODULE: pro (MAIN) D:0004H SYMBOL a D:0005H SYMBOL b ------- ENDDO - C:13EBH LINE# 11 - C:13EBH LINE# 12 - C:13EBH LINE# 14 - C:13F4H LINE# 15 - C:13F4H LINE# 16 - C:13F6H LINE# 17 - C:13F6H LINE# 18 - C:13FAH LINE# 19 - C:13FCH LINE# 20 - C:1403H LINE# 22 + C:1422H LINE# 11 + C:1422H LINE# 12 + C:1422H LINE# 14 + C:142BH LINE# 15 + C:142BH LINE# 16 + C:142DH LINE# 17 + C:142DH LINE# 18 + C:1431H LINE# 19 + C:1433H LINE# 20 + C:143AH LINE# 22 ------- ENDPROC _LCD1602_DELAY1MS ------- PROC _LCDWRITECOM D:0007H SYMBOL com - C:169DH LINE# 31 - C:169DH LINE# 32 - C:169DH LINE# 33 - C:169FH LINE# 34 - C:16A1H LINE# 35 - C:16A1H LINE# 37 - C:16A1H LINE# 38 - C:16A1H LINE# 40 - C:16A1H LINE# 41 - C:16A4H LINE# 42 - C:16A6H LINE# 43 + C:16DCH LINE# 31 + C:16DCH LINE# 32 + C:16DCH LINE# 33 + C:16DEH LINE# 34 + C:16E0H LINE# 35 + C:16E0H LINE# 37 + C:16E0H LINE# 38 + C:16E0H LINE# 40 + C:16E0H LINE# 41 + C:16E3H LINE# 42 + C:16E5H LINE# 43 ------- ENDPROC _LCDWRITECOM ------- PROC _LCDWRITEDATA D:0007H SYMBOL dat - C:16A7H LINE# 74 - C:16A7H LINE# 75 - C:16A7H LINE# 76 - C:16A9H LINE# 77 - C:16ABH LINE# 78 - C:16ABH LINE# 80 - C:16ABH LINE# 81 - C:16ABH LINE# 83 - C:16ABH LINE# 84 - C:16AEH LINE# 85 - C:16B0H LINE# 86 + C:16E6H LINE# 74 + C:16E6H LINE# 75 + C:16E6H LINE# 76 + C:16E8H LINE# 77 + C:16EAH LINE# 78 + C:16EAH LINE# 80 + C:16EAH LINE# 81 + C:16EAH LINE# 83 + C:16EAH LINE# 84 + C:16EDH LINE# 85 + C:16EFH LINE# 86 ------- ENDPROC _LCDWRITEDATA - ------- PROC LCDINIT - C:1557H LINE# 116 - C:1557H LINE# 117 - C:1557H LINE# 118 - C:155CH LINE# 119 - C:1561H LINE# 120 - C:1566H LINE# 121 - C:156BH LINE# 122 - BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 12:24:18 PAGE 15 + BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 13:48:31 PAGE 15 + ------- PROC LCDINIT + C:158EH LINE# 116 + C:158EH LINE# 117 + C:158EH LINE# 118 + C:1593H LINE# 119 + C:1598H LINE# 120 + C:159DH LINE# 121 + C:15A2H LINE# 122 ------- ENDPROC LCDINIT ------- ENDMOD LCD ------- MODULE DS1302 C:0000H SYMBOL _ICE_DUMMY_ D:00B0H PUBLIC P3 - C:13A5H PUBLIC _Ds1302Write - C:15B7H PUBLIC Ds1302ReadTime - C:15CDH PUBLIC Ds1302Init + C:13DCH PUBLIC _Ds1302Write + C:1604H PUBLIC Ds1302ReadTime + C:161AH PUBLIC Ds1302Init B:00B0H.5 PUBLIC SCLK D:0008H PUBLIC TIME B:00B0H.4 PUBLIC DSIO - C:1662H PUBLIC WRITE_RTC_ADDR - C:165BH PUBLIC READ_RTC_ADDR + C:16A1H PUBLIC WRITE_RTC_ADDR + C:169AH PUBLIC READ_RTC_ADDR B:00B0H.3 PUBLIC RST - C:129AH PUBLIC _Ds1302Read + C:12D1H PUBLIC _Ds1302Read ------- PROC _DS1302WRITE D:0007H SYMBOL addr D:0005H SYMBOL dat ------- DO D:0006H SYMBOL n ------- ENDDO - C:13A5H LINE# 14 - C:13A5H LINE# 15 - C:13A5H LINE# 17 - C:13A7H LINE# 18 - C:13A8H LINE# 20 - C:13AAH LINE# 21 - C:13ABH LINE# 22 - C:13ADH LINE# 23 - C:13AEH LINE# 25 - C:13B0H LINE# 26 - C:13B0H LINE# 27 - C:13B4H LINE# 28 - C:13B8H LINE# 29 - C:13BAH LINE# 30 - C:13BBH LINE# 31 - C:13BDH LINE# 32 - C:13BEH LINE# 33 - C:13C2H LINE# 34 - C:13C4H LINE# 35 - C:13C4H LINE# 36 - C:13C8H LINE# 37 - C:13CCH LINE# 38 - C:13CEH LINE# 39 - C:13CFH LINE# 40 - C:13D1H LINE# 41 - C:13D2H LINE# 42 - C:13D6H LINE# 44 - C:13D8H LINE# 45 - C:13D9H LINE# 46 + C:13DCH LINE# 14 + C:13DCH LINE# 15 + C:13DCH LINE# 17 + C:13DEH LINE# 18 + C:13DFH LINE# 20 + C:13E1H LINE# 21 + C:13E2H LINE# 22 + C:13E4H LINE# 23 + C:13E5H LINE# 25 + C:13E7H LINE# 26 + C:13E7H LINE# 27 + C:13EBH LINE# 28 + C:13EFH LINE# 29 + C:13F1H LINE# 30 + C:13F2H LINE# 31 + C:13F4H LINE# 32 + C:13F5H LINE# 33 + C:13F9H LINE# 34 + C:13FBH LINE# 35 + C:13FBH LINE# 36 + C:13FFH LINE# 37 + C:1403H LINE# 38 + C:1405H LINE# 39 + C:1406H LINE# 40 + C:1408H LINE# 41 + C:1409H LINE# 42 + C:140DH LINE# 44 + BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 13:48:31 PAGE 16 + + + C:140FH LINE# 45 + C:1410H LINE# 46 ------- ENDPROC _DS1302WRITE ------- PROC _DS1302READ D:0007H SYMBOL addr ------- DO D:0005H SYMBOL n D:0006H SYMBOL dat - BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 12:24:18 PAGE 16 - - D:0007H SYMBOL dat1 ------- ENDDO - C:129AH LINE# 48 - C:129AH LINE# 49 - C:129AH LINE# 51 - C:129CH LINE# 52 - C:129DH LINE# 54 - C:129FH LINE# 55 - C:12A0H LINE# 56 - C:12A2H LINE# 57 - C:12A3H LINE# 59 - C:12A5H LINE# 60 - C:12A5H LINE# 61 - C:12A9H LINE# 62 - C:12ADH LINE# 63 - C:12AFH LINE# 64 - C:12B0H LINE# 65 - C:12B2H LINE# 66 - C:12B3H LINE# 67 - C:12B7H LINE# 68 - C:12B8H LINE# 69 - C:12BAH LINE# 70 - C:12BAH LINE# 71 - C:12BFH LINE# 72 - C:12CBH LINE# 73 - C:12CDH LINE# 74 - C:12CEH LINE# 75 - C:12D0H LINE# 76 - C:12D1H LINE# 77 - C:12D5H LINE# 79 - C:12D7H LINE# 80 - C:12D8H LINE# 81 - C:12DAH LINE# 82 - C:12DBH LINE# 83 - C:12DDH LINE# 84 - C:12DEH LINE# 85 - C:12E0H LINE# 86 - C:12E1H LINE# 87 - C:12E3H LINE# 88 + C:12D1H LINE# 48 + C:12D1H LINE# 49 + C:12D1H LINE# 51 + C:12D3H LINE# 52 + C:12D4H LINE# 54 + C:12D6H LINE# 55 + C:12D7H LINE# 56 + C:12D9H LINE# 57 + C:12DAH LINE# 59 + C:12DCH LINE# 60 + C:12DCH LINE# 61 + C:12E0H LINE# 62 + C:12E4H LINE# 63 + C:12E6H LINE# 64 + C:12E7H LINE# 65 + C:12E9H LINE# 66 + C:12EAH LINE# 67 + C:12EEH LINE# 68 + C:12EFH LINE# 69 + C:12F1H LINE# 70 + C:12F1H LINE# 71 + C:12F6H LINE# 72 + C:1302H LINE# 73 + C:1304H LINE# 74 + C:1305H LINE# 75 + C:1307H LINE# 76 + C:1308H LINE# 77 + C:130CH LINE# 79 + C:130EH LINE# 80 + C:130FH LINE# 81 + C:1311H LINE# 82 + C:1312H LINE# 83 + C:1314H LINE# 84 + C:1315H LINE# 85 + C:1317H LINE# 86 + C:1318H LINE# 87 + C:131AH LINE# 88 ------- ENDPROC _DS1302READ ------- PROC DS1302INIT ------- DO D:0007H SYMBOL n ------- ENDDO - C:15CDH LINE# 90 - C:15CDH LINE# 91 - C:15CDH LINE# 93 - C:15D4H LINE# 94 - C:15D6H LINE# 95 - C:15D6H LINE# 97 - C:15DAH LINE# 98 + C:161AH LINE# 90 + C:161AH LINE# 91 + C:161AH LINE# 93 + C:1621H LINE# 94 + C:1623H LINE# 95 + BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 13:48:31 PAGE 17 + + + C:1623H LINE# 97 + C:1627H LINE# 98 ------- ENDPROC DS1302INIT ------- PROC DS1302READTIME ------- DO D:0003H SYMBOL n ------- ENDDO - C:15B7H LINE# 101 - BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 12:24:18 PAGE 17 - - - C:15B7H LINE# 102 - C:15B7H LINE# 104 - C:15B9H LINE# 105 - C:15B9H LINE# 106 - C:15C8H LINE# 107 - C:15CCH LINE# 108 + C:1604H LINE# 101 + C:1604H LINE# 102 + C:1604H LINE# 104 + C:1606H LINE# 105 + C:1606H LINE# 106 + C:1615H LINE# 107 + C:1619H LINE# 108 ------- ENDPROC DS1302READTIME ------- ENDMOD DS1302 ------- MODULE I2C C:0000H SYMBOL _ICE_DUMMY_ D:00A0H PUBLIC P2 - C:1326H PUBLIC _I2cSendByte - C:16B1H PUBLIC I2cStop - C:166EH PUBLIC Delay10us + C:135DH PUBLIC _I2cSendByte + C:16F0H PUBLIC I2cStop + C:16ADH PUBLIC Delay10us B:00A0H.0 PUBLIC SDA - C:149FH PUBLIC _At24c02Read + C:14D6H PUBLIC _At24c02Read B:00A0H.1 PUBLIC SCL - C:1622H PUBLIC I2cStart - C:1570H PUBLIC _At24c02Write - C:1454H PUBLIC I2cReadByte - C:1669H SYMBOL L?0024 + C:166FH PUBLIC I2cStart + C:15A7H PUBLIC _At24c02Write + C:148BH PUBLIC I2cReadByte + C:16A8H SYMBOL L?0024 ------- PROC L?0023 ------- ENDPROC L?0023 - C:1669H SYMBOL L?0024 + C:16A8H SYMBOL L?0024 ------- PROC DELAY10US ------- DO D:0006H SYMBOL a D:0007H SYMBOL b ------- ENDDO - C:166EH LINE# 10 - C:166EH LINE# 11 - C:166EH LINE# 13 - C:1670H LINE# 14 - C:1676H LINE# 16 + C:16ADH LINE# 10 + C:16ADH LINE# 11 + C:16ADH LINE# 13 + C:16AFH LINE# 14 + C:16B5H LINE# 16 ------- ENDPROC DELAY10US ------- PROC I2CSTART - C:1622H LINE# 25 - C:1622H LINE# 26 - C:1622H LINE# 27 - C:1624H LINE# 28 - C:1624H LINE# 29 - C:1624H LINE# 30 - C:1627H LINE# 31 - C:1629H LINE# 32 - C:162CH LINE# 33 - C:162EH LINE# 34 + C:166FH LINE# 25 + C:166FH LINE# 26 + C:166FH LINE# 27 + C:1671H LINE# 28 + C:1671H LINE# 29 + C:1671H LINE# 30 + C:1674H LINE# 31 + C:1676H LINE# 32 + C:1679H LINE# 33 + C:167BH LINE# 34 ------- ENDPROC I2CSTART ------- PROC I2CSTOP - C:16B1H LINE# 44 - C:16B1H LINE# 45 - C:16B1H LINE# 46 - C:16B3H LINE# 47 - C:16B3H LINE# 48 - C:16B3H LINE# 49 - C:16B6H LINE# 50 - C:16B8H LINE# 51 - BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 12:24:18 PAGE 18 + BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 13:48:31 PAGE 18 + C:16F0H LINE# 44 + C:16F0H LINE# 45 + C:16F0H LINE# 46 + C:16F2H LINE# 47 + C:16F2H LINE# 48 + C:16F2H LINE# 49 + C:16F5H LINE# 50 + C:16F7H LINE# 51 ------- ENDPROC I2CSTOP ------- PROC _I2CSENDBYTE D:0005H SYMBOL dat @@ -1029,140 +1037,140 @@ SYMBOL TABLE OF MODULE: pro (MAIN) D:0003H SYMBOL a D:0002H SYMBOL b ------- ENDDO - C:1326H LINE# 61 - C:1328H LINE# 62 - C:1328H LINE# 63 - C:132BH LINE# 64 - C:132BH LINE# 65 - C:132BH LINE# 66 - C:1336H LINE# 67 - C:133AH LINE# 68 - C:133AH LINE# 69 - C:133AH LINE# 70 - C:133DH LINE# 71 - C:133FH LINE# 72 - C:1342H LINE# 73 - C:1346H LINE# 74 - C:1348H LINE# 75 - C:134BH LINE# 76 - C:134DH LINE# 77 - C:1350H LINE# 78 - C:1350H LINE# 79 - C:1351H LINE# 80 - C:1357H LINE# 81 - C:1357H LINE# 82 - C:1359H LINE# 83 - C:135CH LINE# 84 - C:135FH LINE# 85 - C:135FH LINE# 86 - C:135FH LINE# 87 - C:1361H LINE# 88 - C:1364H LINE# 89 - C:1366H LINE# 90 + C:135DH LINE# 61 + C:135FH LINE# 62 + C:135FH LINE# 63 + C:1362H LINE# 64 + C:1362H LINE# 65 + C:1362H LINE# 66 + C:136DH LINE# 67 + C:1371H LINE# 68 + C:1371H LINE# 69 + C:1371H LINE# 70 + C:1374H LINE# 71 + C:1376H LINE# 72 + C:1379H LINE# 73 + C:137DH LINE# 74 + C:137FH LINE# 75 + C:1382H LINE# 76 + C:1384H LINE# 77 + C:1387H LINE# 78 + C:1387H LINE# 79 + C:1388H LINE# 80 + C:138EH LINE# 81 + C:138EH LINE# 82 + C:1390H LINE# 83 + C:1393H LINE# 84 + C:1396H LINE# 85 + C:1396H LINE# 86 + C:1396H LINE# 87 + C:1398H LINE# 88 + C:139BH LINE# 89 + C:139DH LINE# 90 ------- ENDPROC _I2CSENDBYTE ------- PROC I2CREADBYTE ------- DO D:0005H SYMBOL a D:0004H SYMBOL dat ------- ENDDO - C:1454H LINE# 99 - C:1454H LINE# 100 - C:1454H LINE# 101 - C:1457H LINE# 102 - C:1459H LINE# 103 - C:145CH LINE# 104 - C:145CH LINE# 105 - C:145CH LINE# 106 - C:145EH LINE# 107 - C:1461H LINE# 108 - C:1465H LINE# 109 - C:146BH LINE# 110 - C:146EH LINE# 111 - C:1470H LINE# 112 - BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 12:24:18 PAGE 19 - - - C:1473H LINE# 113 - C:1477H LINE# 114 - C:1479H LINE# 115 + C:148BH LINE# 99 + C:148BH LINE# 100 + C:148BH LINE# 101 + C:148EH LINE# 102 + C:1490H LINE# 103 + C:1493H LINE# 104 + BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 13:48:31 PAGE 19 + + + C:1493H LINE# 105 + C:1493H LINE# 106 + C:1495H LINE# 107 + C:1498H LINE# 108 + C:149CH LINE# 109 + C:14A2H LINE# 110 + C:14A5H LINE# 111 + C:14A7H LINE# 112 + C:14AAH LINE# 113 + C:14AEH LINE# 114 + C:14B0H LINE# 115 ------- ENDPROC I2CREADBYTE ------- PROC _AT24C02WRITE D:0001H SYMBOL addr D:0004H SYMBOL dat - C:1570H LINE# 125 - C:1574H LINE# 126 - C:1574H LINE# 127 - C:1577H LINE# 128 - C:157CH LINE# 129 - C:1581H LINE# 130 - C:1586H LINE# 131 + C:15A7H LINE# 125 + C:15ABH LINE# 126 + C:15ABH LINE# 127 + C:15AEH LINE# 128 + C:15B3H LINE# 129 + C:15B8H LINE# 130 + C:15BDH LINE# 131 ------- ENDPROC _AT24C02WRITE ------- PROC _AT24C02READ D:0004H SYMBOL addr ------- DO D:0005H SYMBOL num ------- ENDDO - C:149FH LINE# 140 - C:14A1H LINE# 141 - C:14A1H LINE# 143 - C:14A4H LINE# 144 - C:14A9H LINE# 145 - C:14AEH LINE# 146 - C:14B1H LINE# 147 - C:14B6H LINE# 148 - C:14BBH LINE# 149 - C:14BEH LINE# 150 - C:14C0H LINE# 151 + C:14D6H LINE# 140 + C:14D8H LINE# 141 + C:14D8H LINE# 143 + C:14DBH LINE# 144 + C:14E0H LINE# 145 + C:14E5H LINE# 146 + C:14E8H LINE# 147 + C:14EDH LINE# 148 + C:14F2H LINE# 149 + C:14F5H LINE# 150 + C:14F7H LINE# 151 ------- ENDPROC _AT24C02READ ------- ENDMOD I2C ------- MODULE DS18B20 C:0000H SYMBOL _ICE_DUMMY_ D:00B0H PUBLIC P3 - C:1367H PUBLIC DS18B20_ReadByte - C:147AH PUBLIC DS18B20_Init - C:14C1H PUBLIC DS18B20_ReadTemp + C:139EH PUBLIC DS18B20_ReadByte + C:14B1H PUBLIC DS18B20_Init + C:14F8H PUBLIC DS18B20_ReadTemp B:00B0H.2 PUBLIC DS18B20 - C:12F0H PUBLIC _DS18B20_WriteByte - C:124BH PUBLIC Temper_change - C:1520H PUBLIC _delay_ms + C:1327H PUBLIC _DS18B20_WriteByte + C:1282H PUBLIC Temper_change + C:1557H PUBLIC _delay_ms ------- PROC _DELAY_MS D:0006H SYMBOL x ------- DO D:0006H SYMBOL y D:0004H SYMBOL z + BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 13:48:31 PAGE 20 + + ------- ENDDO - C:1520H LINE# 5 - C:1520H LINE# 6 - C:1520H LINE# 8 - C:1529H LINE# 9 - C:153DH LINE# 10 + C:1557H LINE# 5 + C:1557H LINE# 6 + C:1557H LINE# 8 + C:1560H LINE# 9 + C:1574H LINE# 10 ------- ENDPROC _DELAY_MS ------- PROC DS18B20_INIT - BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 12:24:18 PAGE 20 - - ------- DO D:0003H SYMBOL i ------- ENDDO - C:147AH LINE# 12 - C:147AH LINE# 13 - C:147AH LINE# 15 - C:147CH LINE# 16 - C:147EH LINE# 17 - C:1484H LINE# 18 - C:1486H LINE# 19 - C:1488H LINE# 20 - C:148BH LINE# 21 - C:148BH LINE# 22 - C:1492H LINE# 23 - C:1493H LINE# 24 - C:1499H LINE# 25 - C:1499H LINE# 26 - C:149CH LINE# 27 - C:149CH LINE# 28 - C:149CH LINE# 29 - C:149EH LINE# 30 + C:14B1H LINE# 12 + C:14B1H LINE# 13 + C:14B1H LINE# 15 + C:14B3H LINE# 16 + C:14B5H LINE# 17 + C:14BBH LINE# 18 + C:14BDH LINE# 19 + C:14BFH LINE# 20 + C:14C2H LINE# 21 + C:14C2H LINE# 22 + C:14C9H LINE# 23 + C:14CAH LINE# 24 + C:14D0H LINE# 25 + C:14D0H LINE# 26 + C:14D3H LINE# 27 + C:14D3H LINE# 28 + C:14D3H LINE# 29 + C:14D5H LINE# 30 ------- ENDPROC DS18B20_INIT ------- PROC DS18B20_READBYTE ------- DO @@ -1171,97 +1179,97 @@ SYMBOL TABLE OF MODULE: pro (MAIN) D:0006H SYMBOL i D:0004H SYMBOL j ------- ENDDO - C:1367H LINE# 32 - C:1367H LINE# 33 - C:1367H LINE# 36 - C:136BH LINE# 37 - C:136BH LINE# 38 - C:136DH LINE# 39 - C:1371H LINE# 40 - C:1373H LINE# 41 - C:1377H LINE# 42 - C:137BH LINE# 43 - C:137FH LINE# 44 - C:138BH LINE# 45 - C:138FH LINE# 46 - C:1399H LINE# 47 - C:13A2H LINE# 48 - C:13A4H LINE# 49 + C:139EH LINE# 32 + C:139EH LINE# 33 + C:139EH LINE# 36 + C:13A2H LINE# 37 + C:13A2H LINE# 38 + C:13A4H LINE# 39 + C:13A8H LINE# 40 + C:13AAH LINE# 41 + C:13AEH LINE# 42 + C:13B2H LINE# 43 + C:13B6H LINE# 44 + C:13C2H LINE# 45 + C:13C6H LINE# 46 + C:13D0H LINE# 47 + C:13D9H LINE# 48 + C:13DBH LINE# 49 ------- ENDPROC DS18B20_READBYTE ------- PROC L?0042 ------- ENDPROC L?0042 ------- PROC _DS18B20_WRITEBYTE + BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 13:48:31 PAGE 21 + + D:0007H SYMBOL dat ------- DO - D:0035H SYMBOL i + D:005FH SYMBOL i D:0002H SYMBOL j ------- ENDDO - C:12F0H LINE# 51 - C:12F0H LINE# 52 - C:12F0H LINE# 54 - BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 12:24:18 PAGE 21 - - - C:12F3H LINE# 55 - C:12F3H LINE# 56 - C:12F5H LINE# 57 - C:12FDH LINE# 58 - C:1301H LINE# 59 - C:1307H LINE# 60 - C:1314H LINE# 61 - C:1316H LINE# 62 - C:131AH LINE# 63 - C:1325H LINE# 64 + C:1327H LINE# 51 + C:1327H LINE# 52 + C:1327H LINE# 54 + C:132AH LINE# 55 + C:132AH LINE# 56 + C:132CH LINE# 57 + C:1334H LINE# 58 + C:1338H LINE# 59 + C:133EH LINE# 60 + C:134BH LINE# 61 + C:134DH LINE# 62 + C:1351H LINE# 63 + C:135CH LINE# 64 ------- ENDPROC _DS18B20_WRITEBYTE ------- PROC DS18B20_READTEMP ------- DO D:0006H SYMBOL temp D:0007H SYMBOL tmh - D:0034H SYMBOL tml + D:005EH SYMBOL tml ------- ENDDO - C:14C1H LINE# 66 - C:14C1H LINE# 67 - C:14C1H LINE# 68 - C:14C4H LINE# 70 - C:14C4H LINE# 71 - C:14C4H LINE# 72 - C:14C7H LINE# 73 - C:14CCH LINE# 75 - C:14CCH LINE# 76 - C:14CCH LINE# 77 - C:14CFH LINE# 78 - C:14D4H LINE# 80 - C:14D9H LINE# 81 - C:14DCH LINE# 82 - C:14DCH LINE# 83 - C:14DEH LINE# 84 - C:14E1H LINE# 85 - C:14E1H LINE# 86 + C:14F8H LINE# 66 + C:14F8H LINE# 67 + C:14F8H LINE# 68 + C:14FBH LINE# 70 + C:14FBH LINE# 71 + C:14FBH LINE# 72 + C:14FEH LINE# 73 + C:1503H LINE# 75 + C:1503H LINE# 76 + C:1503H LINE# 77 + C:1506H LINE# 78 + C:150BH LINE# 80 + C:1510H LINE# 81 + C:1513H LINE# 82 + C:1513H LINE# 83 + C:1515H LINE# 84 + C:1518H LINE# 85 + C:1518H LINE# 86 ------- ENDPROC DS18B20_READTEMP ------- PROC TEMPER_CHANGE ------- DO D:0006H SYMBOL temper - D:0030H SYMBOL tp + D:005AH SYMBOL tp ------- ENDDO - C:124BH LINE# 89 - C:124BH LINE# 90 - C:124BH LINE# 94 - C:124EH LINE# 95 - C:1254H LINE# 96 - C:1254H LINE# 97 - C:1259H LINE# 98 - C:125FH LINE# 99 - C:125FH LINE# 100 - C:125FH LINE# 101 - C:1261H LINE# 103 - C:1261H LINE# 104 - C:127BH LINE# 105 - C:1299H LINE# 106 - C:1299H LINE# 107 - C:1299H LINE# 108 - BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 12:24:18 PAGE 22 - - + C:1282H LINE# 89 + C:1282H LINE# 90 + C:1282H LINE# 94 + C:1285H LINE# 95 + C:128BH LINE# 96 + C:128BH LINE# 97 + C:1290H LINE# 98 + C:1296H LINE# 99 + BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 13:48:31 PAGE 22 + + + C:1296H LINE# 100 + C:1296H LINE# 101 + C:1298H LINE# 103 + C:1298H LINE# 104 + C:12B2H LINE# 105 + C:12D0H LINE# 106 + C:12D0H LINE# 107 + C:12D0H LINE# 108 ------- ENDPROC TEMPER_CHANGE ------- ENDMOD DS18B20 @@ -1294,8 +1302,8 @@ SYMBOL TABLE OF MODULE: pro (MAIN) ------- ENDMOD ?C?CASTF ------- MODULE PRINTF - D:002EH PUBLIC ?_PRINTF?BYTE - D:002EH PUBLIC ?_SPRINTF?BYTE + D:0058H PUBLIC ?_PRINTF?BYTE + D:0058H PUBLIC ?_SPRINTF?BYTE C:0704H PUBLIC _PRINTF C:06FEH PUBLIC _SPRINTF ------- ENDMOD PRINTF @@ -1311,6 +1319,9 @@ SYMBOL TABLE OF MODULE: pro (MAIN) ------- MODULE ?C?FTNPWR C:053BH PUBLIC ?C?FTNPWR ------- ENDMOD ?C?FTNPWR + BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 13:48:31 PAGE 23 + + ------- MODULE ?C?CLDPTR C:057BH PUBLIC ?C?CLDPTR @@ -1319,9 +1330,6 @@ SYMBOL TABLE OF MODULE: pro (MAIN) ------- MODULE ?C?CLDOPTR C:0594H PUBLIC ?C?CLDOPTR ------- ENDMOD ?C?CLDOPTR - BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 12:24:18 PAGE 23 - - ------- MODULE ?C?CSTPTR C:05C1H PUBLIC ?C?CSTPTR @@ -1348,7 +1356,7 @@ SYMBOL TABLE OF MODULE: pro (MAIN) ------- ENDMOD ?C?CCASE ------- MODULE PUTCHAR - C:142DH PUBLIC _PUTCHAR + C:1464H PUBLIC _PUTCHAR ------- ENDMOD PUTCHAR *** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS @@ -1360,5 +1368,5 @@ SYMBOL TABLE OF MODULE: pro (MAIN) *** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS SEGMENT: ?PR?_AT24C02READ?I2C -Program Size: data=95.1 xdata=0 code=5836 +Program Size: data=99.1 xdata=0 code=5899 LINK/LOCATE RUN COMPLETE. 3 WARNING(S), 0 ERROR(S) diff --git a/pro.build_log.htm b/pro.build_log.htm index a467fa6..a0859b0 100644 --- a/pro.build_log.htm +++ b/pro.build_log.htm @@ -23,7 +23,6 @@ Project File Date: 04/30/2022

Output:

Build target 'Target 1' -compiling ds1302.c... linking... *** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS SEGMENT: ?PR?INIT_BH1750?MAIN @@ -31,7 +30,7 @@ linking... SEGMENT: ?PR?_AT24C02WRITE?I2C *** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS SEGMENT: ?PR?_AT24C02READ?I2C -Program Size: data=95.1 xdata=0 code=5836 +Program Size: data=99.1 xdata=0 code=5899 creating hex file from "pro"... "pro" - 0 Error(s), 3 Warning(s). Build Time Elapsed: 00:00:00 diff --git a/pro.hex b/pro.hex index ba1c107..3b15a30 100644 --- a/pro.hex +++ b/pro.hex @@ -1,222 +1,226 @@ -:0516C70025640D0A007E -:04164D00024C00004B -:1014E200E4FDFCC3ED9FEC9E5015E4FBFA0BBB0040 -:0F14F200010AEB64794A70F50DBD00010C80E42E -:0115010022C7 -:1015F30000000000000000000000000000000000E8 -:0116030022C4 -:0E1604007F307E02EF1FAC0670011E4C70F6A8 -:0116120022B5 -:0F161300D290D2911215F3C2901215F3C2912208 -:0C169100C290D2911215F3D2900215F312 -:0E163100A2009290D2911215F3C2910215F30D -:0D167700D2911215F3A290C2911215F32228 -:10153E00E4FEEF25E0FF9290D2911215F3C29112C4 -:09154E0015F30EBE08EC0216773D -:10150200E4FFD290FEEF25E0FFD2911215F3A290F4 -:0D151200E4334207C2911215F30EBE08E843 -:01151F0022A9 -:1015E100AD071216137F4612153EAF0512153E02C6 -:0215F100169151 -:101404001216137F4712153EE4FD12150274682D5F -:10141400F8A607BD0304D2008002C2001216310DE3 -:09142400BD03E712169102160443 -:0516C2007F010215E1AB -:1015A100758921759850758DFD858D8BE4F587D2F0 -:0615B100AFD2ACD28E2285 -:0716BB00AE071FEE70FA22DA -:0E163F00C2ACC2998F993099FDC299D2AC22EB -:1015890012057BFF601112163F7F051216BB74010D -:0815990029F9E43AFA80E92285 -:100D9400E4F52EF52F7F011215E17F101215E17F86 -:100DA400B47E001214E2121404754A0085684BE5FF -:100DB4004BFE7C00E42569F54BEC3EF54AFCAD4B5B -:100DC40012031F7B9A7A997999783F1202048F59FA -:100DD4008E588D578C5612124B8E5A8F5B7C007D29 -:100DE400641206288E5A8F5B209240121684209239 -:100DF40018E55345527012E55145507007F550758A -:100E040051018005E4F550F551C3E52F9432E52EE8 -:100E140064809480501020920D121684052FE52FC3 -:100E240070E7052E80E3E4F52EF52F20935E12166D -:100E340084209336E55145506014E55545547007B8 -:100E4400F554755501801EE4F554F5558017E553A6 -:100E540045527007F5527553018005E4F552F55378 -:100E6400E4F54CF54D7F0112169DC3E52F9432E550 -:100E74002E64809480501020930D121684052FE563 -:100E84002F70E7052E80E3E4F52EF52F20B74112ED -:100E9400168420B719054FE54F7002054ED39463AD -:100EA400E54E648094804006754E00754F63C3E53B -:100EB4002F9432E52E64809480501020B70D1216C2 -:100EC40084052FE52F70E7052E80E3E4F52EF52F3A -:100ED40020B63E12168420B616E54F154F70021543 -:100EE4004EC3E54E648094805005E4F54EF54FC33F -:100EF400E52F9432E52E64809480501020B60D12B4 -:100F04001684052FE52F70E7052E80E3E4F52EF512 -:100F14002F20A24012168420A218054DE54D700220 -:100F2400054CC39404E54C648094804005E4F54C7E -:100F3400F54DC3E52F9432E52E6480948050102043 -:100F4400A20D121684052FE52F70E7052E80E3E429 -:100F5400F52EF52F30A70302100D12168430A703C7 -:100F640002100DE54D454C701A055DE55D700205F6 -:100F74005CC39418E55C64809480406BE4F55CF594 -:100F84005D8064E54D6401454C701A055FE55F7052 -:100F940002055EC3943BE55E648094804049E4F5B9 -:100FA4005EF55F8042E54D6402454C701A0563E5C9 -:100FB4006370020562C39418E562648094804027DC -:100FC400E4F562F5638020E54D6403454C70180533 -:100FD40065E56570020564C3943BE56464809480B0 -:100FE4004005E4F564F565C3E52F9432E52E64808D -:100FF4009480501020A70D121684052FE52F70E75A -:09100400052E80E3E4F52EF52F22 -:01100D0022C0 -:1010CC007D017C00E50AC4540F75F00AA4FFAEF054 -:1010DC00E50A540F7A002FF52FEA3EF52EE509C4E8 -:1010EC00540F75F00AA4FFAEF0E509540F2FF5313B -:1010FC00EA3EF530C3E52F955DE55C6480F8E52E9E -:10110C00648098404BD3E52F9563E5626480F8E5E5 -:10111C002E64809840028038E52FB55D18E52EB519 -:10112C005C13C3E531955FE55E6480F8E53064805F -:10113C00985002801BE52FB5631AE52EB56215D3C6 -:10114C00E5319565E5646480F8E530648098400489 -:08115C00E4FEFF22AE04AF0522 -:011164002268 -:10100E00E551455060030210AB1210CCEF4E700349 -:10101E000210A9E4FFFE7DC87C42AB59AA58A9571D -:10102E00A8561202A15074C3E54F940AE54E64808F -:10103E0094805016E54F9400E54E64809480400AEB -:10104E00C2A5C2A6C2A1D2A4806BC3E54F940AE585 -:10105E004E648094804012E54F9414E54E64809463 -:10106E00805006C2A5C2A6803EC3E54F9414E54E3D -:10107E00648094804012E54F941EE54E6480948007 -:10108E005006C2A5D2A6801FC3E54F941EE54E643E -:10109E008094804018D2A5D2A6800C8010E55545CC -:1010AE0054600AD2A5D2A6D2A1D2A48008C2A5C2EB -:0E10BE00A6C2A1C2A4E550455124FF92A32270 -:1011F100E4F522F5231215CD1215A1121557755CD0 -:1012010000755D12E4F55EF55FF560F561F56275F7 -:101211006317F56475651EF566F5671215B7120B50 -:1012210011120D9412100E7531FF7532167533C7F8 -:10123100855A34855B357B007A0079241206FE7B62 -:0A124100007A00792412158980D18B -:100B1100E55345527F806003020C9212169DE50C4D -:100B2100C4540F2430FF1216A7E50C540F2430FFD4 -:100B31001216A77F2D1216A7E50BC4540F2430FF00 -:100B41001216A7E50B540F2430FF1216A77F2012AF -:100B510016A7E50AC4540F2430FF1216A7E50A545C -:100B61000F2430FF1216A77F3A1216A7E509C454C5 -:100B71000F2430FF1216A7E509540F2430FF121677 -:100B8100A77F3A1216A7E508C4540F2430FF1216A6 -:100B9100A7E508540F2430FF1216A77F201216A7CD -:100BA100E50D540F2430FF1216A77FC012169DAF1A -:100BB10059AE58AD57AC561203588E2E8F2F7C2745 -:100BC1007D101205D38C2E8D2FAE2EAF2F7C037D81 -:100BD100E81205D3EF2430FF1216A7AE2EAF2F7CFB -:100BE100037DE81205D38C2E8D2FAE2EAF2F7C0006 -:100BF1007D641205D3EF2430FF1216A7AE2EAF2F5E -:100C01007C007D641205D38C2E8D2FAE2EAF2F7CF0 -:100C1100007D0A1205D3EF2430FF1216A7AE2EAFC6 -:100C21002F7C007D0A1205D38C2E8D2FE52F2430C9 -:100C3100FF1216A77F4C1216A77F781216A77F20E6 -:100C41001216A7AE5AAF5B7C007D0A120628EF246C -:100C510030FF1216A7AE5AAF5B7C007D0A12062840 -:100C6100ED2430FF1216A77F431216A77F2012161C -:100C7100A7AE4EAF4F7C007D0A1206287C007D0A8C -:100C8100120628ED2430FF1216A7AE4EAF4F020D0B -:100C91008512169DAE5CAF5D7C007D0A120628EFC1 -:100CA1002430FF1216A7AE5CAF5D7C007D0A1206F0 -:100CB10028ED2430FF1216A77F3A1216A7AE5EAFB9 -:100CC1005F7C007D0A120628EF2430FF1216A7AEC2 -:100CD1005EAF5F7C007D0A120628ED2430FF1216FC -:100CE100A77F3A1216A7AE60AF617C007D0A12069B -:100CF10028EF2430FF1216A7AE60AF617C007D0A99 -:100D0100120628ED2430FF1216A77F201216A7E540 -:100D11004D2430FF1216A77FC012169DAE62AF633D -:100D21007C007D0A120628EF2430FF1216A7AE625E -:100D3100AF637C007D0A120628ED2430FF1216A74E -:100D41007F3A1216A7AE64AF657C007D0A120628B1 -:100D5100EF2430FF1216A7AE64AF657C007D0A1246 -:100D61000628ED2430FF1216A77F3A1216A7AE66A9 -:100D7100AF677C007D0A120628EF2430FF1216A708 -:100D8100AE66AF677C007D0A120628ED2430FF12A3 -:020D910016A7A3 -:010D9300223D -:0C1684007F017E267D82DDFEDEFADFF6AF -:011690002237 -:1013DA00C2958F807F017E001213EBD2947F057E27 -:0113EA000002 -:1013EB00D3EF9400EE9400400F7DC77C01DCFEDD53 -:0813FB00FAEF1F70EB1E80E801 -:0114030022C6 -:0A169D00C294C2961213DAC294221E -:0A16A700C294D2961213DAC2942204 -:101557007F3812169D7F0C12169D7F0612169D7FEF -:091567000112169D7F8002169D01 -:0E165B0081838587898B8D80828486888A8C26 -:091651000708002412010507221C -:1013A500C2B300C2B500D2B300E4FEEF1392B4EFAE -:1013B500C313FFD2B500C2B5000EBE08EEE4FEEDC4 -:1013C5001392B4EDC313FDD2B500C2B5000EBE082D -:0413D500EEC2B300B1 -:0113D90022F1 -:10129A00C2B300C2B500D2B300E4FDEF1392B4EFBB -:1012AA00C313FFD2B500C2B5000DBD08EE00E4FDC0 -:1012BA00A2B4E433FFC43333335480FCEEC3134C7B -:1012CA00FED2B500C2B5000DBD08E5C2B300D2B565 -:0912DA0000C2B400D2B400AF065A -:0112E30022E8 -:1015CD00E4FD7F8E1213A5E4FF0FBF07FC7D807F26 -:0415DD008E0213A5C2 -:1015B700E4FBEB90165B93FF12129A74082BF8A6C4 -:0515C700070BBB07ED5E -:0115CC0022FC -:0516690012166ED2A173 -:08166E007F017E02DEFEDFFABF -:011676002251 -:0F162200D2A0121669C2A012166EC2A102166ED5 -:0A16B100C2A0121669D2A002166E44 -:02132600AD0711 -:10132800E4FBFAEDC4131313540124FF92A0ED2536 -:10133800E0FD121669C2A112166E0BBB08E5D2A019 -:1013480012166ED2A130A00F0AEAD394C840F6C292 -:0E135800A112166E7F0022C2A112166E7F0136 -:011366002264 -:10145400E4FDFCD2A012166ED2A112166EEC25E0A9 -:10146400FCA2A0E433420412166EC2A112166E0D41 -:05147400BD08E5AF0416 -:011479002250 -:10157000AC05A9071216227FA0121326AF01121381 -:0915800026AF041213260216B175 -:02149F00AC0798 -:1014A1001216227FA0121326AF041213261216223F -:0F14B1007FA1121326121454AD071216B1AF0506 -:0114C0002209 -:10152000D3EF9400EE940040147D6E7C00ED1D70AE -:0D153000011CED4C70F7EF1F70E61E80E30C -:01153D00228B -:10147A00C2B27B46AF031BEF70FAD2B2E4FB30B2C2 -:10148A00117F017E001215200BEBD3940540EF7FEC -:04149A0000227F01AC -:01149E00222B -:101367007D087C00C2B20FBF0000D2B20FBF0000E1 -:101377000FBF0000A2B2E433C43333335480FBE918 -:10138700C3134BF97E007F04EF1FAA0670011E4AA4 -:0D13970070F6ED1D70011CED4C70C9AF012A -:0113A4002226 -:0C12E40012147A7F017E001215207FCCCE -:1012F000E4FBFAC2B20536E53670020535EF13920B -:10130000B2753500753606E5361536AC3570021502 -:10131000354C70F3D2B2EFC313FF0BBB00010AEBE5 -:0513200064084A70CED4 -:0113250022A5 -:1014C100E4FFFE1212E47F441212F01212E47FBE16 -:1014D1001212F01213678F34121367EFFEE534FF17 -:0114E10022E8 -:10124B001214C1C3EE9400500DEF1F70011E630703 -:10125B00FF6306FF8000AD07AC06E412031FE4FB3F -:10126B00FA7980783D1200FB8F338E328D318C30C2 -:10127B00E4FFFE7DC87C42AB33AA32A931A8301201 -:0E128B0000FBE4FBFAF9783F12000A12035848 -:011299002232 +:0517060025640D0A003E +:0C15EE0002260000024A00000222000059 +:10151900E4FDFCC3ED9FEC9E5015E4FBFA0BBB0008 +:0F152900010AEB64794A70F50DBD00010C80E4F6 +:011538002290 +:10164000000000000000000000000000000000009A +:011650002277 +:0E1651007F307E02EF1FAC0670011E4C70F65B +:01165F002268 +:0F166000D290D291121640C290121640C291221F +:0C16D000C290D291121640D29002164037 +:0E167E00A2009290D291121640C29102164024 +:0D16B600D291121640A290C291121640224D +:10157500E4FEEF25E0FF9290D291121640C291123F +:0915850016400EBE08EC0216B679 +:10153900E4FFD290FEEF25E0FFD291121640A2906F +:0D154900E4334207C2911216400EBE08E8BE +:011556002272 +:10162E00AD071216607F46121575AF0512157502BD +:02163E0016D0C4 +:10143B001216607F47121575E4FD12153974422D93 +:10144B00F8A607BD0304D2008002C20012167E0D5F +:09145B00BD03E71216D002165180 +:051701007F0102162E1D +:1015D800758921759850758DFD858D8BE4F587D2B9 +:0615E800AFD2ACD28E224E +:0716FA00AE071FEE70FA229B +:0E168C00C2ACC2998F993099FDC299D2AC229E +:1015C00012057BFF601112168C7F051216FA74014A +:0815D00029F9E43AFA80E9224E +:100B1100E4F558F5597F0112162E7F1012162E7F1B +:100B2100B47E0012151912143B752400854225E587 +:100B310025FE7C00E42543F525EC3EF524FCAD259E +:100B410012031F7B9A7A997999783F1202048F33A5 +:100B51008E328D318C301212828E348F357C007D35 +:100B6100641206288E348F352092521216C32092B9 +:100B71002AE52D452C7024E52B452A7007F52A75A9 +:100B81002B018005E4F52AF52BE52B6401452A703C +:100B910006D2A3C2978004C2A3D297C3E559943267 +:100BA100E55864809480501020920D1216C30559A7 +:100BB100E55970E7055880E3E4F558F55920936449 +:100BC1001216C320933CE52B452A601A054BE54BD1 +:100BD1007002054AC39405E54A64809480401EE48E +:100BE100F54AF54B8017E52D452C7007F52C752D31 +:100BF100018005E4F52CF52DE4F526F5277F01129A +:100C010016DCC3E5599432E5586480948050102075 +:100C1100930D1216C30559E55970E7055880E3E4B1 +:100C2100F558F55920B7411216C320B7190529E522 +:100C31002970020528D39463E528648094804006D6 +:100C4100752800752963C3E5599432E55864809489 +:100C510080501020B70D1216C30559E55970E705EC +:100C61005880E3E4F558F55920B63E1216C320B674 +:100C710016E529152970021528C3E528648094809A +:100C81005005E4F528F529C3E5599432E558648007 +:100C91009480501020B60D1216C30559E55970E71E +:100CA100055880E3E4F558F55920A2401216C320F7 +:100CB100A2180527E52770020526C39404E52664DA +:100CC1008094804005E4F526F527C3E5599432E583 +:100CD1005864809480501020A20D1216C30559E566 +:100CE1005970E7055880E3E4F558F55930A7030238 +:100CF1000DA21216C330A703020DA2E527452670E7 +:100D01001A0537E53770020536C39418E536648055 +:100D11009480406BE4F536F5378064E5276401453E +:100D210026701A0539E53970020538C3943BE53858 +:100D3100648094804049E4F538F5398042E52764C0 +:100D4100024526701A053DE53D7002053CC3941825 +:100D5100E53C648094804027E4F53CF53D8020E546 +:100D610027640345267018053FE53F7002053EC321 +:100D7100943BE53E648094804005E4F53EF53FC335 +:100D8100E5599432E55864809480501020A70D12E3 +:100D910016C30559E55970E7055880E3E4F558F5A0 +:010DA10059F8 +:010DA200222E +:101103007D017C00E50AC4540F75F00AA4FFAEF01C +:10111300E50A540F7A002FF559EA3EF558E509C45C +:10112300540F75F00AA4FFAEF0E509540F2FF55BD9 +:10113300EA3EF55AC3E5599537E5366480F8E55834 +:10114300648098404BD3E559953DE53C6480F8E5D0 +:101153005864809840028038E559B53718E558B58A +:101163003613C3E55B9539E5386480F8E55A648046 +:10117300985002801BE559B53D1AE558B53C15D387 +:10118300E55B953FE53E6480F8E55A64809840044A +:08119300E4FEFF22AE04AF05EB +:01119B002231 +:10102600E52B452A60030210AC121103EF4E6074E3 +:10103600E4FFFE7DC87C42AB33AA32A931A8301248 +:1010460002A15060C3E529940AE528648094805083 +:101056000EE5299400E5286480948040028055C3FB +:10106600E529940AE52864809480400EE5299414C5 +:10107600E528648094805002804CC3E5299414E5E9 +:101086002864809480400EE529941EE528648094A7 +:10109600805002803FC3E529941EE5286480948031 +:1010A600404A803E8046E54B454A6040E54B640138 +:1010B600454A700AC2A5C2A6C2A1D2A48036E54B93 +:1010C6006402454A7006C2A5C2A6801AE54B6403AF +:1010D600454A7006C2A5D2A6800CE54B6404454A73 +:1010E6007012D2A5D2A6D2A1D2A48008C2A5C2A649 +:0D10F600C2A1C2A4E52A452B24FF92A3222B +:10122800E4F54CF54D12161A1215D812158E7536AE +:1012380000753712E4F538F539F53AF53BF53C75A4 +:101248003D17F53E753F1EF540F541121604120D87 +:10125800A3120B11121026755BFF755C17755D06DE +:1012680085345E85355F7B007A00794E1206FE7BF9 +:0A127800007A00794E1215C080D1F3 +:100DA300E52D452C7F806003020F241216DCE50C31 +:100DB300C4540F2430FF1216E6E50C540F2430FF01 +:100DC3001216E67F2D1216E6E50BC4540F2430FFEE +:100DD3001216E6E50B540F2430FF1216E67F20129D +:100DE30016E6E50AC4540F2430FF1216E6E50A544A +:100DF3000F2430FF1216E67F3A1216E6E509C454B3 +:100E03000F2430FF1216E6E509540F2430FF1216A3 +:100E1300E67F3A1216E6E508C4540F2430FF121693 +:100E2300E6E508540F2430FF1216E67F201216E67B +:100E3300E50D540F2430FF1216E67FC01216DCAF07 +:100E430033AE32AD31AC301203588E588F597C27F4 +:100E53007D101205D38C588D59AE58AF597C037D44 +:100E6300E81205D3EF2430FF1216E6AE58AF597CD3 +:100E7300037DE81205D38C588D59AE58AF597C00C9 +:100E83007D641205D3EF2430FF1216E6AE58AF5936 +:100E93007C007D641205D38C588D59AE58AF597CB4 +:100EA300007D0A1205D3EF2430FF1216E6AE58AFC9 +:100EB300597C007D0A1205D38C588D59E55924308D +:100EC300FF1216E67F4C1216E67F781216E67F2095 +:100ED3001216E6AE34AF357C007D0A120628EF24E5 +:100EE30030FF1216E6AE34AF357C007D0A120628B9 +:100EF300ED2430FF1216E67F431216E67F2012160A +:100F0300E6AE28AF297C007D0A1206287C007D0A04 +:100F1300120628ED2430FF1216E6AE28AF29021080 +:100F2300171216DCAE36AF377C007D0A120628EFA7 +:100F33002430FF1216E6AE36AF377C007D0A120668 +:100F430028ED2430FF1216E67F3A1216E6AE38AFCC +:100F5300397C007D0A120628EF2430FF1216E6AE14 +:100F630038AF397C007D0A120628ED2430FF1216B3 +:100F7300E67F3A1216E6AE3AAF3B7C007D0A1206D4 +:100F830028EF2430FF1216E6AE3AAF3B7C007D0A11 +:100F9300120628ED2430FF1216E67F201216E6E52E +:100FA300272430FF1216E67FC01216DCAE3CAF3D9D +:100FB3007C007D0A120628EF2430FF1216E6AE3CB1 +:100FC300AF3D7C007D0A120628ED2430FF1216E6A1 +:100FD3007F3A1216E6AE3EAF3F7C007D0A1206282A +:100FE300EF2430FF1216E6AE3EAF3F7C007D0A12BF +:100FF3000628ED2430FF1216E67F3A1216E6AE40BD +:10100300AF417C007D0A120628EF2430FF1216E65A +:10101300AE40AF417C007D0A120628ED2430FF125A +:0210230016E6CF +:0110250022A8 +:0C16C3007F017E267D82DDFEDEFADFF670 +:0116CF0022F8 +:10141100C2958F807F017E00121422D2947F057EB7 +:0114210000CA +:10142200D3EF9400EE9400400F7DC77C01DCFEDD1B +:08143200FAEF1F70EB1E80E8C9 +:01143A00228F +:0A16DC00C294C296121411C29422A7 +:0A16E600C294D296121411C294228D +:10158E007F381216DC7F0C1216DC7F061216DC7FFB +:09159E00011216DC7F800216DC4C +:0E169A0081838587898B8D80828486888A8CE7 +:0915FA0007080024120105072274 +:1013DC00C2B300C2B500D2B300E4FEEF1392B4EF77 +:1013EC00C313FFD2B500C2B5000EBE08EEE4FEED8D +:1013FC001392B4EDC313FDD2B500C2B5000EBE08F6 +:04140C00EEC2B30079 +:0114100022B9 +:1012D100C2B300C2B500D2B300E4FDEF1392B4EF84 +:1012E100C313FFD2B500C2B5000DBD08EE00E4FD89 +:1012F100A2B4E433FFC43333335480FCEEC3134C44 +:10130100FED2B500C2B5000DBD08E5C2B300D2B52D +:0913110000C2B400D2B400AF0622 +:01131A0022B0 +:10161A00E4FD7F8E1213DCE4FF0FBF07FC7D807FA1 +:04162A008E0213DC3D +:10160400E4FBEB90169A93FF1212D174082BF8A600 +:05161400070BBB07ED10 +:0116190022AE +:0516A8001216ADD2A1F5 +:0816AD007F017E02DEFEDFFA80 +:0116B5002212 +:0F166F00D2A01216A8C2A01216ADC2A10216ADCB +:0A16F000C2A01216A8D2A00216AD87 +:02135D00AD07DA +:10135F00E4FBFAEDC4131313540124FF92A0ED25FF +:10136F00E0FD1216A8C2A11216AD0BBB08E5D2A064 +:10137F001216ADD2A130A00F0AEAD394C840F6C21C +:0E138F00A11216AD7F0022C2A11216AD7F0181 +:01139D00222D +:10148B00E4FDFCD2A01216ADD2A11216ADEC25E0F4 +:10149B00FCA2A0E43342041216ADC2A11216AD0D8C +:0514AB00BD08E5AF04DF +:0114B0002219 +:1015A700AC05A90712166F7FA012135DAF011213C6 +:0915B7005DAF0412135D0216F091 +:0214D600AC0761 +:1014D80012166F7FA012135DAF0412135D12166F00 +:0F14E8007FA112135D12148BAD071216F0AF0522 +:0114F70022D2 +:10155700D3EF9400EE940040147D6E7C00ED1D7077 +:0D156700011CED4C70F7EF1F70E61E80E3D5 +:011574002254 +:1014B100C2B27B46AF031BEF70FAD2B2E4FB30B28B +:1014C100117F017E001215570BEBD3940540EF7F7E +:0414D10000227F0175 +:0114D50022F4 +:10139E007D087C00C2B20FBF0000D2B20FBF0000AA +:1013AE000FBF0000A2B2E433C43333335480FBE9E1 +:1013BE00C3134BF97E007F04EF1FAA0670011E4A6D +:0D13CE0070F6ED1D70011CED4C70C9AF01F3 +:0113DB0022EF +:0C131B001214B17F017E001215577FCC28 +:10132700E4FBFAC2B20560E5607002055FEF139255 +:10133700B2755F00756006E5601560AC5F700215F9 +:101347005F4C70F3D2B2EFC313FF0BBB00010AEB84 +:0513570064084A70CE9D +:01135C00226E +:1014F800E4FFFE12131B7F4412132712131B7FBE37 +:1015080012132712139E8F5E12139EEFFEE55EFFE5 +:0115180022B0 +:101282001214F8C3EE9400500DEF1F70011E630795 +:10129200FF6306FF8000AD07AC06E412031FE4FB08 +:1012A200FA7980783D1200FB8F5D8E5C8D5B8C5AE3 +:1012B200E4FFFE7DC87C42AB5DAA5CA95BA85A1222 +:0E12C20000FBE4FBFAF9783F12000A12035811 +:0112D00022FB :100003000203C4E86480F8E933E83360110460F064 :10001300ED33EC337009E8FCE9FDEAFEEBFF220463 :1000230060DED3EB9FEA9EE99DE8C2E78CF0C2F75E @@ -276,48 +280,48 @@ :10036800FDFC22FCE4CFCECDCC24E0501174FF80FC :10037800EDC3CC13CCCD13CDCE13CECF13CF047099 :07038800F030D5DE02065E35 -:1006A200E5452431F8E6054522782E3007027831F7 +:1006A200E56F245BF8E6056F227858300702785B25 :1006B200E475F00112066C02057B2000EB7F2ED25E :1006C200008018EF540F2490D43440D4FF30040B30 -:1006D200EF24BFB41A0050032461FFE546600215FF -:1006E200460549E5497002054830070D782EE47544 -:1006F200F00112066CEF0205C102142D7403D20739 -:100702008003E4C207F5458B2E8A2F8930E4F54633 -:10071200F548F549E54660077F201206DD80F5754C -:1007220047FFC201C200C202C203C205C206C2081A -:100732001206ABFF700D3007057F001206EEAF49BF -:10074200AE4822B4255FC2D5C2041206ABFF24D044 -:10075200B40A00501A75F00A784630D50508B6FF7B +:1006D200EF24BFB41A0050032461FFE570600215D5 +:1006E200700573E5737002057230070D7858E47572 +:1006F200F00112066CEF0205C10214647403D20702 +:100702008003E4C207F56F8B588A59895AE4F57061 +:10071200F572F573E57060077F201206DD80F575CE +:1007220071FFC201C200C202C203C205C206C208F0 +:100732001206ABFF700D3007057F001206EEAF7395 +:10074200AE7222B4255FC2D5C2041206ABFF24D01A +:10075200B40A00501A75F00A787030D50508B6FF51 :100762000106C6A426F620D5047002D20380D9243D :10077200CFB41A00EF5004C2E5D2040209DBD20161 :1007820080C6D20080C0D20280BCD2D580BAD20547 -:1007920080B47F201206DD2002077401B5460040B6 +:1007920080B47F201206DD2002077401B57000408C :1007A200F11206A2FF1206DD020716D208D2068057 :1007B200951206A2FB1206A2FA1206A2F94A4B7081 -:1007C2000679D27A0A7BFF20022EE546602A7E0055 -:1007D2008E8275830012059460060EEE654770F0F6 +:1007C2000679D27A0A7BFF20022EE570602A7E002B +:1007D2008E8275830012059460060EEE657170F0CC :1007E200C2D5EBC0E0EAC0E0E9C0E0EE120A3BD0BD :1007F200E0F9D0E0FAD0E0FB12057BFF60AAEBC083 :10080200E0EAC0E0E9C0E01206DDD0E02401F9D060 -:10081200E03400FAD0E0FBE5470460DCD547D9803C -:1008220087D20280A2120A1E60F7E5477001041205 -:1008320003D9A947600DE547600914F547120AC5B7 +:10081200E03400FAD0E0FBE5710460DCD571D980E8 +:1008220087D20280A2120A1E60F7E57170010412DB +:1008320003D9A971600DE571600914F571120AC539 :10084200EF60F3EA30E702F404C3995077EAF42543 -:10085200470430E701E404F547800D120A1E60C127 -:10086200EA054725471203D9EA7844F630E701E45E -:10087200254704D5470420050114120A3BE4C0E0D1 -:10088200120AC57844E6601320E70714F61206C57B -:10089200802204F6D0E014C0E07F001206C5E547CE -:1008A20060071206BC1547800B3005031206BCD048 -:1008B200E0020716D0E00480C5120A1E60A0E547D8 -:1008C200041203D97844EAF6E547200502600104E0 +:10085200710430E701E404F571800D120A1E60C1D3 +:10086200EA057125711203D9EA786EF630E701E4E0 +:10087200257104D5710420050114120A3BE4C0E07D +:10088200120AC5786EE6601320E70714F61206C551 +:10089200802204F6D0E014C0E07F001206C5E571A4 +:1008A20060071206BC1571800B3005031206BCD01E +:1008B200E0020716D0E00480C5120A1E60A0E571AE +:1008C200041203D9786EEAF6E5712005026001048C :0508D2002404120A3BA2 -:1008D70074FF04C0E0120AC51206C5E547200502E9 -:1008E70060031206BCD0E0B547E87F451206CF7813 -:1008F70044E67F2B30E7047F2DF404C0E01206DDC9 +:1008D70074FF04C0E0120AC51206C5E571200502BF +:1008E70060031206BCD0E0B571E87F451206CF78E9 +:1008F7006EE67F2B30E7047F2DF404C0E01206DD9F :10090700D0E075F00A84C0F01206C6D0E01206C621 :10091700020716791080027908C206C2088008D239 -:10092700D5790A8004790AC2D5E547047002F547EC +:10092700D5790A8004790AC2D5E571047002F57198 :10093700E4FAFDFEFF1206A2FC7B08200113120653 :10094700A2FD7B1030000A1206A2FE1206A2FF7B50 :1009570020EC3382D592D55013C3E43000069FFFB5 @@ -326,28 +330,28 @@ :10098700C3EF33FFEE33FEED33FDEC33FCEB33FB0C :10099700994002FB0FD8E9EB300105F8D0E0C448D5 :1009A700B201C0E00AEC4D4E4F78207B0070C2EADE -:1009B700B5470040BCC0E0120A3DD0F0D0E02001AE +:1009B700B5710040BCC0E0120A3DD0F0D0E0200184 :1009C70004C4C0E0C4B201C0F01206C6D0F0D5F02E :1009D700EB02071612067C07B353091A5807844C13 :1009E700078042091E4F09264409264907994309EA :1009F7002C55085D4608BB450827470AF25007886B :100A07002D078C2E07AF2B07902307AD200ADB2A73 -:100A1700074848000007A7E547B4FF0375470612D4 +:100A1700074848000007A7E571B4FF037571061280 :100A270006A2FC1206A2FD1206A2FE1206A2FF787B -:100A37003D020408790AA2D5200314300509B9102C +:100A370067020408790AA2D5200314300509B91002 :100A4700020404B9080104A2D520060250010420BB -:100A570002689202B546005034C0E07F2030031987 +:100A570002689202B570005034C0E07F203003195D :100A67007F30A20272067205500F120A94C202C2A8 :100A770006C205C2087F30800F300503E9C0E012C7 -:100A870006DD300503D0E0F9D0E0B546CC300517D8 +:100A870006DD300503D0E0F9D0E0B570CC300517AE :100A97007F30B9100C1206DD7F583004077F78804D :100AA70003B908031206DD3002057F2D0206DD7F3C :100AB700202008F87F2B2006F322920280CF7F00A8 -:100AC700B407005005243DF8E6FF22286E756C6CCC -:100AD7002900D2011206A23001F8C201784630D5AA +:100AC700B4070050052467F8E6FF22286E756C6CA2 +:100AD7002900D2011206A23001F8C201787030D580 :100AE7000108F60207482D504349581206A224036D :100AF700B405004001E4900AED931206CE743A1251 -:0A0B070006CED20375460402091A57 +:0A0B070006CED20375700402091A2D :10038F00E9D2E7C933E833F892D5EDD2E7CD33ECB4 :07039F0033FC5002B2D5222D :1003A600EC30E7100FBF000C0EBE00080DBD0004B8 @@ -381,8 +385,8 @@ :10054B00091205551205641200FBECF8EDF9EEFAF1 :10055B00EFCB22EB12056480F1543803241C900579 :10056B000BFE93FC0EEE93FD0EEE930ECE93FF223D -:0300000002116585 -:0C116500787FE4F6D8FD75816F0211ACB4 +:0300000002119C4E +:0C119C00787FE4F6D8FD7581730211E342 :10057B00BB010689828A83E0225002E722BBFE027E :09058B00E32289828A83E49322B1 :10059400BB010CE58229F582E5833AF583E022501C @@ -405,16 +409,16 @@ :10067C00D083D082F8E4937012740193700DA3A30D :10068C0093F8740193F5828883E473740293686021 :06069C00EFA3A3A380DF21 -:10142D00EFB40A07740D121438740A309811A89984 -:10143D00B8130CC2983098FDA899C298B811F6301F -:07144D0099FDC299F59922F7 -:101171000211F1E493A3F8E493A34003F68001F292 -:1011810008DFF48029E493A3F85407240CC8C3337F -:10119100C4540F4420C8834004F456800146F6DF4E -:1011A100E4800B010204081020408090164DE47E7B -:1011B100019360BCA3FF543F30E509541FFEE49343 -:1011C100A360010ECF54C025E060A840B8E493A30A -:1011D100FAE493A3F8E493A3C8C582C8CAC583CA35 -:1011E100F0A3C8C582C8CAC583CADFE9DEE780BEED -:01165A00008F +:10146400EFB40A07740D12146F740A309811A89916 +:10147400B8130CC2983098FDA899C298B811F630E8 +:0714840099FDC299F59922C0 +:1011A800021228E493A3F8E493A34003F68001F223 +:1011B80008DFF48029E493A3F85407240CC8C33348 +:1011C800C4540F4420C8834004F456800146F6DF17 +:1011D800E4800B01020408102040809015EEE47EA4 +:1011E800019360BCA3FF543F30E509541FFEE4930C +:1011F800A360010ECF54C025E060A840B8E493A3D3 +:10120800FAE493A3F8E493A3C8C582C8CAC583CAFD +:10121800F0A3C8C582C8CAC583CADFE9DEE780BEB5 +:0116030000E6 :00000001FF diff --git a/pro.uvgui.QY b/pro.uvgui.QY index de979e2..c281c2e 100644 --- a/pro.uvgui.QY +++ b/pro.uvgui.QY @@ -80,28 +80,28 @@ 44 - 2 - 3 + 0 + 1 - -32000 - -32000 + -1 + -1 -1 -1 - 336 - 655 - 2575 - 988 + 39 + -1384 + 536 + 691 0 794 - 01000000040000000100000001000000010000000100000000000000020000000000000001000000010000000000000028000000280000000100000008000000040000000100000034453A5CCFEEC4BF5CBCE6D6B0CFEEC4BF5C32303232303432382D496E74656C6C6967656E744C69676874696E675C6D61696E2E6300000000066D61696E2E6300000000FFDC7800FFFFFFFF33453A5CCFEEC4BF5CBCE6D6B0CFEEC4BF5C32303232303432382D496E74656C6C6967656E744C69676874696E675C6C63642E6800000000056C63642E6800000000BECEA100FFFFFFFF33453A5CCFEEC4BF5CBCE6D6B0CFEEC4BF5C32303232303432382D496E74656C6C6967656E744C69676874696E675C6C63642E6300000000056C63642E6300000000F0A0A100FFFFFFFF36453A5CCFEEC4BF5CBCE6D6B0CFEEC4BF5C32303232303432382D496E74656C6C6967656E744C69676874696E675C6473313330322E6800000000086473313330322E6800000000F0A0A100FFFFFFFF36453A5CCFEEC4BF5CBCE6D6B0CFEEC4BF5C32303232303432382D496E74656C6C6967656E744C69676874696E675C6473313330322E6300000000086473313330322E6300000000BCA8E100FFFFFFFF33453A5CCFEEC4BF5CBCE6D6B0CFEEC4BF5C32303232303432382D496E74656C6C6967656E744C69676874696E675C6932632E6800000000056932632E68000000009CC1B600FFFFFFFF37453A5CCFEEC4BF5CBCE6D6B0CFEEC4BF5C32303232303432382D496E74656C6C6967656E744C69676874696E675C445331384232302E680000000009445331384232302E6800000000F7B88600FFFFFFFF37453A5CCFEEC4BF5CBCE6D6B0CFEEC4BF5C32303232303432382D496E74656C6C6967656E744C69676874696E675C445331384232302E630000000009445331384232302E6300000000D9ADC200FFFFFFFF0100000010000000C5D4F200FFDC7800BECEA100F0A0A100BCA8E1009CC1B600F7B88600D9ADC200A5C2D700B3A6BE00EAD6A300F6FA7D00B5E99D005FC3CF00C1838300CACAD5000100000000000000020000004401000066000000000A00009B040000 + 01000000040000000100000001000000010000000100000000000000020000000000000001000000010000000000000028000000280000000100000008000000000000000100000034453A5CCFEEC4BF5CBCE6D6B0CFEEC4BF5C32303232303432382D496E74656C6C6967656E744C69676874696E675C6D61696E2E6300000000066D61696E2E6300000000FFDC7800FFFFFFFF33453A5CCFEEC4BF5CBCE6D6B0CFEEC4BF5C32303232303432382D496E74656C6C6967656E744C69676874696E675C6C63642E6800000000056C63642E6800000000BECEA100FFFFFFFF33453A5CCFEEC4BF5CBCE6D6B0CFEEC4BF5C32303232303432382D496E74656C6C6967656E744C69676874696E675C6C63642E6300000000056C63642E6300000000F0A0A100FFFFFFFF36453A5CCFEEC4BF5CBCE6D6B0CFEEC4BF5C32303232303432382D496E74656C6C6967656E744C69676874696E675C6473313330322E6800000000086473313330322E6800000000BCA8E100FFFFFFFF36453A5CCFEEC4BF5CBCE6D6B0CFEEC4BF5C32303232303432382D496E74656C6C6967656E744C69676874696E675C6473313330322E6300000000086473313330322E63000000009CC1B600FFFFFFFF33453A5CCFEEC4BF5CBCE6D6B0CFEEC4BF5C32303232303432382D496E74656C6C6967656E744C69676874696E675C6932632E6800000000056932632E6800000000F7B88600FFFFFFFF37453A5CCFEEC4BF5CBCE6D6B0CFEEC4BF5C32303232303432382D496E74656C6C6967656E744C69676874696E675C445331384232302E680000000009445331384232302E6800000000D9ADC200FFFFFFFF37453A5CCFEEC4BF5CBCE6D6B0CFEEC4BF5C32303232303432382D496E74656C6C6967656E744C69676874696E675C445331384232302E630000000009445331384232302E6300000000A5C2D700FFFFFFFF0100000010000000C5D4F200FFDC7800BECEA100F0A0A100BCA8E1009CC1B600F7B88600D9ADC200A5C2D700B3A6BE00EAD6A300F6FA7D00B5E99D005FC3CF00C1838300CACAD500010000000000000002000000450100006E0000001D0300009A040000 @@ -140,7 +140,7 @@ 0 16 - 03000000660000003D0100006B040000 + 03000000660000003D01000062040000 16 @@ -160,7 +160,7 @@ 0 16 - 03000000660000003D0100006B040000 + 03000000660000003D01000062040000 16 @@ -440,7 +440,7 @@ 0 16 - 03000000660000003D0100006B040000 + 03000000660000003D01000062040000 16 @@ -460,7 +460,7 @@ 0 16 - 03000000660000003D0100006B040000 + 03000000660000003D01000062040000 16 @@ -480,7 +480,7 @@ 0 16 - 000000009C040000000A00004E050000 + 00000000930400001C03000045050000 16 @@ -520,7 +520,7 @@ 0 16 - 030000009F040000FD09000035050000 + 0300000096040000FD0900002C050000 16 @@ -1160,7 +1160,7 @@ 0 16 - 030000009F040000FD09000035050000 + 0300000096040000FD0900002C050000 16 @@ -1180,7 +1180,7 @@ 0 16 - 030000009F040000FD09000035050000 + 0300000096040000FD0900002C050000 16 @@ -1240,7 +1240,7 @@ 0 16 - 030000009F040000FD09000035050000 + 0300000096040000FD0900002C050000 16 @@ -1260,7 +1260,7 @@ 0 16 - 030000009F040000FD09000035050000 + 0300000096040000FD0900002C050000 16 @@ -1700,7 +1700,7 @@ 0 16 - 0000000000000000C40300001C000000 + 00000000000000001C0300001C000000 16 @@ -1720,7 +1720,7 @@ 0 16 - 000000004E050000000A000061050000 + 00000000450500001C03000058050000 16 @@ -1789,14 +1789,14 @@ 3317 - 000000000B000000000000000020000000000000FFFFFFFFFFFFFFFF44010000150100007007000019010000000000000100000004000000010000000000000000000000FFFFFFFF08000000CB00000057010000CC000000F08B00005A01000079070000D601000045890000FFFF02000B004354616262656450616E6500200000000000004401000066000000700700002C010000440100004F00000070070000150100000000000040280046080000000B446973617373656D626C7900000000CB00000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A6572000000005701000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A657200000000CC00000001000000FFFFFFFFFFFFFFFF0E4C6F67696320416E616C797A657200000000F08B000001000000FFFFFFFFFFFFFFFF0D436F646520436F766572616765000000005A01000001000000FFFFFFFFFFFFFFFF11496E737472756374696F6E205472616365000000007907000001000000FFFFFFFFFFFFFFFF0F53797374656D20416E616C797A657200000000D601000001000000FFFFFFFFFFFFFFFF104576656E742053746174697374696373000000004589000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFCB00000001000000FFFFFFFFCB000000000000000040000000000000FFFFFFFFFFFFFFFF2C0600004F0000003006000001030000000000000200000004000000010000000000000000000000FFFFFFFF2B000000E2050000CA0900002D8C00002E8C00002F8C0000308C0000318C0000328C0000338C0000348C0000358C0000368C0000378C0000388C0000398C00003A8C00003B8C00003C8C00003D8C00003E8C00003F8C0000408C0000418C000050C3000051C3000052C3000053C3000054C3000055C3000056C3000057C3000058C3000059C300005AC300005BC300005CC300005DC300005EC300005FC3000060C3000061C3000062C3000063C300000180004000000000000030060000660000007007000018030000300600004F000000700700000103000000000000404100462B0000000753796D626F6C7300000000E205000001000000FFFFFFFFFFFFFFFF0A5472616365204461746100000000CA09000001000000FFFFFFFFFFFFFFFF00000000002D8C000001000000FFFFFFFFFFFFFFFF00000000002E8C000001000000FFFFFFFFFFFFFFFF00000000002F8C000001000000FFFFFFFFFFFFFFFF0000000000308C000001000000FFFFFFFFFFFFFFFF0000000000318C000001000000FFFFFFFFFFFFFFFF0000000000328C000001000000FFFFFFFFFFFFFFFF0000000000338C000001000000FFFFFFFFFFFFFFFF0000000000348C000001000000FFFFFFFFFFFFFFFF0000000000358C000001000000FFFFFFFFFFFFFFFF0000000000368C000001000000FFFFFFFFFFFFFFFF0000000000378C000001000000FFFFFFFFFFFFFFFF0000000000388C000001000000FFFFFFFFFFFFFFFF0000000000398C000001000000FFFFFFFFFFFFFFFF00000000003A8C000001000000FFFFFFFFFFFFFFFF00000000003B8C000001000000FFFFFFFFFFFFFFFF00000000003C8C000001000000FFFFFFFFFFFFFFFF00000000003D8C000001000000FFFFFFFFFFFFFFFF00000000003E8C000001000000FFFFFFFFFFFFFFFF00000000003F8C000001000000FFFFFFFFFFFFFFFF0000000000408C000001000000FFFFFFFFFFFFFFFF0000000000418C000001000000FFFFFFFFFFFFFFFF000000000050C3000001000000FFFFFFFFFFFFFFFF000000000051C3000001000000FFFFFFFFFFFFFFFF000000000052C3000001000000FFFFFFFFFFFFFFFF000000000053C3000001000000FFFFFFFFFFFFFFFF000000000054C3000001000000FFFFFFFFFFFFFFFF000000000055C3000001000000FFFFFFFFFFFFFFFF000000000056C3000001000000FFFFFFFFFFFFFFFF000000000057C3000001000000FFFFFFFFFFFFFFFF000000000058C3000001000000FFFFFFFFFFFFFFFF000000000059C3000001000000FFFFFFFFFFFFFFFF00000000005AC3000001000000FFFFFFFFFFFFFFFF00000000005BC3000001000000FFFFFFFFFFFFFFFF00000000005CC3000001000000FFFFFFFFFFFFFFFF00000000005DC3000001000000FFFFFFFFFFFFFFFF00000000005EC3000001000000FFFFFFFFFFFFFFFF00000000005FC3000001000000FFFFFFFFFFFFFFFF000000000060C3000001000000FFFFFFFFFFFFFFFF000000000061C3000001000000FFFFFFFFFFFFFFFF000000000062C3000001000000FFFFFFFFFFFFFFFF000000000063C3000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFE205000001000000FFFFFFFFE2050000000000000010000001000000FFFFFFFFFFFFFFFF400100004F0000004401000084040000010000000200001004000000010000000000000000000000FFFFFFFF05000000ED0300006D000000C3000000C400000073940000018000100000010000000000000066000000400100009B040000000000004F00000040010000840400000000000040410056050000000750726F6A65637401000000ED03000001000000FFFFFFFFFFFFFFFF05426F6F6B73010000006D00000001000000FFFFFFFFFFFFFFFF0946756E6374696F6E7301000000C300000001000000FFFFFFFFFFFFFFFF0954656D706C6174657301000000C400000001000000FFFFFFFFFFFFFFFF09526567697374657273000000007394000001000000FFFFFFFFFFFFFFFF00000000000000000000000000000000000000000000000001000000FFFFFFFFED03000001000000FFFFFFFFED030000000000000080000000000000FFFFFFFFFFFFFFFF00000000ED02000070070000F102000000000000010000000400000001000000000000000000000000000000000000000000000001000000C6000000FFFFFFFF0F0000008F070000930700009407000095070000960700009007000091070000B5010000B801000038030000B9050000BA050000BB050000BC050000CB09000001800080000000000000000000000803000070070000E203000000000000F102000070070000CB03000000000000404100460F0000001343616C6C20537461636B202B204C6F63616C73000000008F07000001000000FFFFFFFFFFFFFFFF0755415254202331000000009307000001000000FFFFFFFFFFFFFFFF0755415254202332000000009407000001000000FFFFFFFFFFFFFFFF0755415254202333000000009507000001000000FFFFFFFFFFFFFFFF15446562756720287072696E74662920566965776572000000009607000001000000FFFFFFFFFFFFFFFF0757617463682031000000009007000001000000FFFFFFFFFFFFFFFF0757617463682032000000009107000001000000FFFFFFFFFFFFFFFF10547261636520457863657074696F6E7300000000B501000001000000FFFFFFFFFFFFFFFF0E4576656E7420436F756E7465727300000000B801000001000000FFFFFFFFFFFFFFFF09554C494E4B706C7573000000003803000001000000FFFFFFFFFFFFFFFF084D656D6F7279203100000000B905000001000000FFFFFFFFFFFFFFFF084D656D6F7279203200000000BA05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203300000000BB05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203400000000BC05000001000000FFFFFFFFFFFFFFFF105472616365204E617669676174696F6E00000000CB09000001000000FFFFFFFFFFFFFFFFFFFFFFFF0000000001000000000000000000000001000000FFFFFFFFB8030000F1020000BC030000CB03000000000000020000000400000000000000000000000000000000000000000000000000000002000000C6000000FFFFFFFF8F07000001000000FFFFFFFF8F07000001000000C6000000000000000080000001000000FFFFFFFFFFFFFFFF0000000084040000000A000088040000010000000100001004000000010000000000000000000000FFFFFFFF06000000C5000000C7000000B4010000D2010000CF0100007794000001800080000001000000000000009F040000000A0000650500000000000088040000000A00004E0500000000000040820056060000000C4275696C64204F757470757401000000C500000001000000FFFFFFFFFFFFFFFF0D46696E6420496E2046696C657300000000C700000001000000FFFFFFFFFFFFFFFF0A4572726F72204C69737400000000B401000001000000FFFFFFFFFFFFFFFF0E536F757263652042726F7773657200000000D201000001000000FFFFFFFFFFFFFFFF1346696E6420416C6C205265666572656E63657300000000CF01000001000000FFFFFFFFFFFFFFFF0742726F77736572000000007794000001000000FFFFFFFFFFFFFFFF00000000000000000000000000000000000000000000000001000000FFFFFFFFC500000001000000FFFFFFFFC5000000000000000000000000000000 + 000000000B000000000000000020000000000000FFFFFFFFFFFFFFFF44010000150100007007000019010000000000000100000004000000010000000000000000000000FFFFFFFF08000000CB00000057010000CC000000F08B00005A01000079070000D601000045890000FFFF02000B004354616262656450616E6500200000000000004401000066000000700700002C010000440100004F00000070070000150100000000000040280046080000000B446973617373656D626C7900000000CB00000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A6572000000005701000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A657200000000CC00000001000000FFFFFFFFFFFFFFFF0E4C6F67696320416E616C797A657200000000F08B000001000000FFFFFFFFFFFFFFFF0D436F646520436F766572616765000000005A01000001000000FFFFFFFFFFFFFFFF11496E737472756374696F6E205472616365000000007907000001000000FFFFFFFFFFFFFFFF0F53797374656D20416E616C797A657200000000D601000001000000FFFFFFFFFFFFFFFF104576656E742053746174697374696373000000004589000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFCB00000001000000FFFFFFFFCB000000000000000040000000000000FFFFFFFFFFFFFFFF2C0600004F0000003006000001030000000000000200000004000000010000000000000000000000FFFFFFFF2B000000E2050000CA0900002D8C00002E8C00002F8C0000308C0000318C0000328C0000338C0000348C0000358C0000368C0000378C0000388C0000398C00003A8C00003B8C00003C8C00003D8C00003E8C00003F8C0000408C0000418C000050C3000051C3000052C3000053C3000054C3000055C3000056C3000057C3000058C3000059C300005AC300005BC300005CC300005DC300005EC300005FC3000060C3000061C3000062C3000063C300000180004000000000000030060000660000007007000018030000300600004F000000700700000103000000000000404100462B0000000753796D626F6C7300000000E205000001000000FFFFFFFFFFFFFFFF0A5472616365204461746100000000CA09000001000000FFFFFFFFFFFFFFFF00000000002D8C000001000000FFFFFFFFFFFFFFFF00000000002E8C000001000000FFFFFFFFFFFFFFFF00000000002F8C000001000000FFFFFFFFFFFFFFFF0000000000308C000001000000FFFFFFFFFFFFFFFF0000000000318C000001000000FFFFFFFFFFFFFFFF0000000000328C000001000000FFFFFFFFFFFFFFFF0000000000338C000001000000FFFFFFFFFFFFFFFF0000000000348C000001000000FFFFFFFFFFFFFFFF0000000000358C000001000000FFFFFFFFFFFFFFFF0000000000368C000001000000FFFFFFFFFFFFFFFF0000000000378C000001000000FFFFFFFFFFFFFFFF0000000000388C000001000000FFFFFFFFFFFFFFFF0000000000398C000001000000FFFFFFFFFFFFFFFF00000000003A8C000001000000FFFFFFFFFFFFFFFF00000000003B8C000001000000FFFFFFFFFFFFFFFF00000000003C8C000001000000FFFFFFFFFFFFFFFF00000000003D8C000001000000FFFFFFFFFFFFFFFF00000000003E8C000001000000FFFFFFFFFFFFFFFF00000000003F8C000001000000FFFFFFFFFFFFFFFF0000000000408C000001000000FFFFFFFFFFFFFFFF0000000000418C000001000000FFFFFFFFFFFFFFFF000000000050C3000001000000FFFFFFFFFFFFFFFF000000000051C3000001000000FFFFFFFFFFFFFFFF000000000052C3000001000000FFFFFFFFFFFFFFFF000000000053C3000001000000FFFFFFFFFFFFFFFF000000000054C3000001000000FFFFFFFFFFFFFFFF000000000055C3000001000000FFFFFFFFFFFFFFFF000000000056C3000001000000FFFFFFFFFFFFFFFF000000000057C3000001000000FFFFFFFFFFFFFFFF000000000058C3000001000000FFFFFFFFFFFFFFFF000000000059C3000001000000FFFFFFFFFFFFFFFF00000000005AC3000001000000FFFFFFFFFFFFFFFF00000000005BC3000001000000FFFFFFFFFFFFFFFF00000000005CC3000001000000FFFFFFFFFFFFFFFF00000000005DC3000001000000FFFFFFFFFFFFFFFF00000000005EC3000001000000FFFFFFFFFFFFFFFF00000000005FC3000001000000FFFFFFFFFFFFFFFF000000000060C3000001000000FFFFFFFFFFFFFFFF000000000061C3000001000000FFFFFFFFFFFFFFFF000000000062C3000001000000FFFFFFFFFFFFFFFF000000000063C3000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFE205000001000000FFFFFFFFE2050000000000000010000001000000FFFFFFFFFFFFFFFF400100004F000000440100007B040000010000000200001004000000010000000000000000000000FFFFFFFF05000000ED0300006D000000C3000000C400000073940000018000100000010000000000000066000000400100009B040000000000004F000000400100007B0400000000000040410056050000000750726F6A65637401000000ED03000001000000FFFFFFFFFFFFFFFF05426F6F6B73010000006D00000001000000FFFFFFFFFFFFFFFF0946756E6374696F6E7301000000C300000001000000FFFFFFFFFFFFFFFF0954656D706C6174657301000000C400000001000000FFFFFFFFFFFFFFFF09526567697374657273000000007394000001000000FFFFFFFFFFFFFFFF00000000000000000000000000000000000000000000000001000000FFFFFFFFED03000001000000FFFFFFFFED030000000000000080000000000000FFFFFFFFFFFFFFFF00000000ED02000070070000F102000000000000010000000400000001000000000000000000000000000000000000000000000001000000C6000000FFFFFFFF0F0000008F070000930700009407000095070000960700009007000091070000B5010000B801000038030000B9050000BA050000BB050000BC050000CB09000001800080000000000000000000000803000070070000E203000000000000F102000070070000CB03000000000000404100460F0000001343616C6C20537461636B202B204C6F63616C73000000008F07000001000000FFFFFFFFFFFFFFFF0755415254202331000000009307000001000000FFFFFFFFFFFFFFFF0755415254202332000000009407000001000000FFFFFFFFFFFFFFFF0755415254202333000000009507000001000000FFFFFFFFFFFFFFFF15446562756720287072696E74662920566965776572000000009607000001000000FFFFFFFFFFFFFFFF0757617463682031000000009007000001000000FFFFFFFFFFFFFFFF0757617463682032000000009107000001000000FFFFFFFFFFFFFFFF10547261636520457863657074696F6E7300000000B501000001000000FFFFFFFFFFFFFFFF0E4576656E7420436F756E7465727300000000B801000001000000FFFFFFFFFFFFFFFF09554C494E4B706C7573000000003803000001000000FFFFFFFFFFFFFFFF084D656D6F7279203100000000B905000001000000FFFFFFFFFFFFFFFF084D656D6F7279203200000000BA05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203300000000BB05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203400000000BC05000001000000FFFFFFFFFFFFFFFF105472616365204E617669676174696F6E00000000CB09000001000000FFFFFFFFFFFFFFFFFFFFFFFF0000000001000000000000000000000001000000FFFFFFFFB8030000F1020000BC030000CB03000000000000020000000400000000000000000000000000000000000000000000000000000002000000C6000000FFFFFFFF8F07000001000000FFFFFFFF8F07000001000000C6000000000000000080000001000000FFFFFFFFFFFFFFFF000000007B0400001C0300007F040000010000000100001004000000010000000000000000000000FFFFFFFF06000000C5000000C7000000B4010000D2010000CF0100007794000001800080000001000000000000009F040000000A000065050000000000007F0400001C030000450500000000000040820056060000000C4275696C64204F757470757401000000C500000001000000FFFFFFFFFFFFFFFF0D46696E6420496E2046696C657300000000C700000001000000FFFFFFFFFFFFFFFF0A4572726F72204C69737400000000B401000001000000FFFFFFFFFFFFFFFF0E536F757263652042726F7773657200000000D201000001000000FFFFFFFFFFFFFFFF1346696E6420416C6C205265666572656E63657300000000CF01000001000000FFFFFFFFFFFFFFFF0742726F77736572000000007794000001000000FFFFFFFFFFFFFFFF00000000000000000000000000000000000000000000000001000000FFFFFFFFC500000001000000FFFFFFFFC5000000000000000000000000000000 59392 File - 2467 - 00200000010000002800FFFF01001100434D4643546F6F6C426172427574746F6E00E100000000000000000000000000000000000000000000000100000001000000018001E100000000000001000000000000000000000000000000000100000001000000018003E1000000000000020000000000000000000000000000000001000000010000000180CD7F0000000000000300000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018023E100000000040004000000000000000000000000000000000100000001000000018022E100000000040005000000000000000000000000000000000100000001000000018025E10000000000000600000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001802BE10000000000000700000000000000000000000000000000010000000100000001802CE10000000004000800000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001807A8A0000000000000900000000000000000000000000000000010000000100000001807B8A0000000004000A00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180D3B00000000000000B000000000000000000000000000000000100000001000000018015B10000000004000C0000000000000000000000000000000001000000010000000180F4B00000000004000D000000000000000000000000000000000100000001000000018036B10000000004000E00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FF88000000000400460000000000000000000000000000000001000000010000000180FE880000000004004500000000000000000000000000000000010000000100000001800B810000000004001300000000000000000000000000000000010000000100000001800C810000000004001400000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180F0880000020000000F000000000000000000000000000000000100000001000000FFFF0100120043555646696E64436F6D626F427574746F6EE8030000000000000000000000000000000000000000000000010000000100000096000000020020500000000003534441960000000000000014000454494D45035344410353434C0442595445067763736C656E0630783030306608B6C1C8A1CEC8B6A804657869740C5265636976655F7461626C650474696D650574696D65310F52696768745F6D6F746F5F73746F700E707573685F76616C5F72696768741170776D5F6F75745F6C6566745F6D6F746F0273300875735F64656C6179036375740A73656E64546F576966690B676574546F74616C4461790C74696D696E67735B695D2D3E0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000018024E10000000000001100000000000000000000000000000000010000000100000001800A810000000000001200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E2280000002000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B46350000000000000000000000000100000001000000000000000000000001000000020021802280000000000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B4635000000000000000000000000010000000100000000000000000000000100000000002180E0010000000000007500000021456E65726779204D6561737572656D656E742026776974686F75742044656275670000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C488000000000000160000000000000000000000000000000001000000010000000180C988000000000400180000000000000000000000000000000001000000010000000180C788000000000000190000000000000000000000000000000001000000010000000180C8880000000000001700000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000021804C010000020001001A0000000F2650726F6A6563742057696E646F77000000000000000000000000010000000100000000000000000000000100000008002180DD880000000000001A0000000750726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180DC8B0000000000003A00000005426F6F6B73000000000000000000000000010000000100000000000000000000000100000000002180E18B0000000000003B0000000946756E6374696F6E73000000000000000000000000010000000100000000000000000000000100000000002180E28B000000000000400000000954656D706C6174657300000000000000000000000001000000010000000000000000000000010000000000218018890000000000003D0000000E536F757263652042726F777365720000000000000000000000000100000001000000000000000000000001000000000021800000000000000400FFFFFFFF00000000000000000001000000000000000100000000000000000000000100000000002180D988000000000000390000000C4275696C64204F7574707574000000000000000000000000010000000100000000000000000000000100000000002180E38B000000000000410000000B46696E64204F75747075740000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FB7F0000000000001B000000000000000000000000000000000100000001000000000000000446696C65B9030000 + 2459 + 00200000010000002800FFFF01001100434D4643546F6F6C426172427574746F6E00E100000000000000000000000000000000000000000000000100000001000000018001E100000000000001000000000000000000000000000000000100000001000000018003E1000000000000020000000000000000000000000000000001000000010000000180CD7F0000000000000300000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018023E100000000040004000000000000000000000000000000000100000001000000018022E100000000040005000000000000000000000000000000000100000001000000018025E10000000000000600000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001802BE10000000004000700000000000000000000000000000000010000000100000001802CE10000000004000800000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001807A8A0000000000000900000000000000000000000000000000010000000100000001807B8A0000000004000A00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180D3B00000000000000B000000000000000000000000000000000100000001000000018015B10000000004000C0000000000000000000000000000000001000000010000000180F4B00000000004000D000000000000000000000000000000000100000001000000018036B10000000004000E00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FF88000000000400460000000000000000000000000000000001000000010000000180FE880000000004004500000000000000000000000000000000010000000100000001800B810000000004001300000000000000000000000000000000010000000100000001800C810000000004001400000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180F0880000020000000F000000000000000000000000000000000100000001000000FFFF0100120043555646696E64436F6D626F427574746F6EE803000000000000000000000000000000000000000000000001000000010000009600000002002050000000000454494D45960000000000000013000454494D45035344410353434C0442595445067763736C656E0630783030306608B6C1C8A1CEC8B6A804657869740C5265636976655F7461626C650574696D65310F52696768745F6D6F746F5F73746F700E707573685F76616C5F72696768741170776D5F6F75745F6C6566745F6D6F746F0273300875735F64656C6179036375740A73656E64546F576966690B676574546F74616C4461790C74696D696E67735B695D2D3E00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000018024E10000000000001100000000000000000000000000000000010000000100000001800A810000000000001200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E2280000002000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B46350000000000000000000000000100000001000000000000000000000001000000020021802280000000000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B4635000000000000000000000000010000000100000000000000000000000100000000002180E0010000000000007500000021456E65726779204D6561737572656D656E742026776974686F75742044656275670000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C488000000000000160000000000000000000000000000000001000000010000000180C988000000000400180000000000000000000000000000000001000000010000000180C788000000000000190000000000000000000000000000000001000000010000000180C8880000000000001700000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000021804C010000020001001A0000000F2650726F6A6563742057696E646F77000000000000000000000000010000000100000000000000000000000100000008002180DD880000000000001A0000000750726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180DC8B0000000000003A00000005426F6F6B73000000000000000000000000010000000100000000000000000000000100000000002180E18B0000000000003B0000000946756E6374696F6E73000000000000000000000000010000000100000000000000000000000100000000002180E28B000000000000400000000954656D706C6174657300000000000000000000000001000000010000000000000000000000010000000000218018890000000000003D0000000E536F757263652042726F777365720000000000000000000000000100000001000000000000000000000001000000000021800000000000000400FFFFFFFF00000000000000000001000000000000000100000000000000000000000100000000002180D988000000000000390000000C4275696C64204F7574707574000000000000000000000000010000000100000000000000000000000100000000002180E38B000000000000410000000B46696E64204F75747075740000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FB7F0000000000001B000000000000000000000000000000000100000001000000000000000446696C65B9030000 1423 @@ -1852,19 +1852,19 @@ 0 100 - 4 + 0 .\main.c - 27 + 7 7 - 479 + 29 1 0 lcd.h - 12 + 6 1 34 1 @@ -1873,7 +1873,7 @@ .\lcd.c - 4 + 6 71 121 1 @@ -1882,9 +1882,9 @@ ds1302.h - 15 + 6 1 - 20 + 19 1 0 @@ -1892,7 +1892,7 @@ .\ds1302.c 14 - 72 + 47 87 1 @@ -1919,7 +1919,7 @@ .\DS18B20.c 20 - 44 + 1 66 1 diff --git a/原理图/Free Documents.OutJob b/原理图/Free Documents.OutJob new file mode 100644 index 0000000..d97c153 --- /dev/null +++ b/原理图/Free Documents.OutJob @@ -0,0 +1,146 @@ +[OutputJobFile] +Version=1.0 + +[OutputGroup1] +Name= +Description= +TargetOutputMedium=PDF +VariantName=[No Variations] +VariantScope=0 +CurrentConfigurationName= +TargetPrinter=Virtual Printer +PrinterOptions=Record=PrinterOptions|Copies=1|Duplex=1|TrueTypeOptions=3|Collate=1|PrintJobKind=1|PrintWhat=1 +OutputMedium1=Print Job +OutputMedium1_Type=Printer +OutputMedium1_Printer= +OutputMedium1_PrinterOptions=Record=PrinterOptions|Copies=1|Duplex=1|TrueTypeOptions=3|Collate=1|PrintJobKind=1|PrintWhat=1 +OutputMedium2=PDF +OutputMedium2_Type=Publish +OutputMedium3=Folder Structure +OutputMedium3_Type=GeneratedFiles +OutputMedium4=Video +OutputMedium4_Type=Multimedia +OutputType1=Schematic Print +OutputName1=Schematic Prints of (1).Sch +OutputCategory1=Documentation +OutputDocumentPath1=(1).Sch +OutputVariantName1= +OutputEnabled1=1 +OutputEnabled1_OutputMedium1=0 +OutputEnabled1_OutputMedium2=1 +OutputEnabled1_OutputMedium3=0 +OutputEnabled1_OutputMedium4=0 +OutputDefault1=0 +PageOptions1=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=0.77|XCorrection=1.00|YCorrection=1.00|PrintKind=0|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=A4|PaperIndex=9 +Configuration1_Name1=OutputConfigurationParameter1 +Configuration1_Item1=Record=SchPrintView|ShowNoERC=True|ShowParamSet=True|ShowProbe=True|ShowBlanket=True|NoERCSymbolsToShow="Thin Cross","Thick Cross","Small Cross",Checkbox,Triangle|ShowNote=True|ShowNoteCollapsed=True|ShowOpenEnds=True|ExpandDesignator=True|ExpandNetLabel=False|ExpandPort=False|ExpandSheetNum=False|ExpandDocNum=False|PrintArea=0|PrintAreaRect.X1=0|PrintAreaRect.Y1=0|PrintAreaRect.X2=0|PrintAreaRect.Y2=0 +OutputType2=BOM_PartType +OutputName2=Bill of Materials +OutputCategory2=Report +OutputDocumentPath2= +OutputVariantName2=[No Variations] +OutputEnabled2=1 +OutputEnabled2_OutputMedium1=0 +OutputEnabled2_OutputMedium2=2 +OutputEnabled2_OutputMedium3=0 +OutputEnabled2_OutputMedium4=0 +OutputDefault2=0 +PageOptions2=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=A4|PaperIndex=9 +Configuration2_Name1=General +Configuration2_Item1=TemplateFilename= + +[PublishSettings] +OutputFilePath2=E:\Ŀ\ְĿ\20220428-IntelligentLighting\ԭͼ\.PDF +ReleaseManaged2=0 +OutputBasePath2=E:\Ŀ\ְĿ\20220428-IntelligentLighting\ԭͼ\ +OutputPathMedia2= +OutputPathMediaValue2= +OutputPathOutputer2=[Output Type] +OutputPathOutputerPrefix2= +OutputPathOutputerValue2= +OutputFileName2=(1).pdf +OutputFileNameMulti2= +UseOutputNameForMulti2=1 +OutputFileNameSpecial2= +OpenOutput2=1 +PromptOverwrite2=1 +PublishMethod2=0 +ZoomLevel2=50 +FitSCHPrintSizeToDoc2=0 +FitPCBPrintSizeToDoc2=0 +GenerateNetsInfo2=1 +MarkPins2=1 +MarkNetLabels2=1 +MarkPortsId2=1 +GenerateTOC2=1 +ShowComponentParameters2=1 +GlobalBookmarks2=0 +PDFACompliance2=Disabled +PDFVersion2=Default +OutputFilePath3= +ReleaseManaged3=1 +OutputBasePath3= +OutputPathMedia3= +OutputPathMediaValue3= +OutputPathOutputer3=[Output Type] +OutputPathOutputerPrefix3= +OutputPathOutputerValue3= +OutputFileName3= +OutputFileNameMulti3= +UseOutputNameForMulti3=1 +OutputFileNameSpecial3= +OpenOutput3=1 +OutputFilePath4= +ReleaseManaged4=1 +OutputBasePath4= +OutputPathMedia4= +OutputPathMediaValue4= +OutputPathOutputer4=[Output Type] +OutputPathOutputerPrefix4= +OutputPathOutputerValue4= +OutputFileName4= +OutputFileNameMulti4= +UseOutputNameForMulti4=1 +OutputFileNameSpecial4= +OpenOutput4=1 +PromptOverwrite4=1 +PublishMethod4=5 +ZoomLevel4=50 +FitSCHPrintSizeToDoc4=1 +FitPCBPrintSizeToDoc4=1 +GenerateNetsInfo4=1 +MarkPins4=1 +MarkNetLabels4=1 +MarkPortsId4=1 +MediaFormat4=Windows Media file (*.wmv,*.wma,*.asf) +FixedDimensions4=1 +Width4=352 +Height4=288 +MultiFile4=0 +FramesPerSecond4=25 +FramesPerSecondDenom4=1 +AviPixelFormat4=7 +AviCompression4=MP42 MS-MPEG4 V2 +AviQuality4=100 +FFmpegVideoCodecId4=13 +FFmpegPixelFormat4=0 +FFmpegQuality4=80 +WmvVideoCodecName4=Windows Media Video V7 +WmvQuality4=80 + +[GeneratedFilesSettings] +RelativeOutputPath2=E:\Ŀ\ְĿ\20220428-IntelligentLighting\ԭͼ\.PDF +OpenOutputs2=1 +RelativeOutputPath3= +OpenOutputs3=1 +AddToProject3=1 +TimestampFolder3=0 +UseOutputName3=0 +OpenODBOutput3=0 +OpenGerberOutput3=0 +OpenNCDrillOutput3=0 +OpenIPCOutput3=0 +EnableReload3=0 +RelativeOutputPath4= +OpenOutputs4=1 + diff --git a/原理图/History/教室智能(1).~(1).Sch.Zip b/原理图/History/教室智能(1).~(1).Sch.Zip new file mode 100644 index 0000000..2aaddaf Binary files /dev/null and b/原理图/History/教室智能(1).~(1).Sch.Zip differ diff --git a/原理图/History/教室智能(1).~(10).Sch.Zip b/原理图/History/教室智能(1).~(10).Sch.Zip new file mode 100644 index 0000000..9da6d7a Binary files /dev/null and b/原理图/History/教室智能(1).~(10).Sch.Zip differ diff --git a/原理图/History/教室智能(1).~(11).Sch.Zip b/原理图/History/教室智能(1).~(11).Sch.Zip new file mode 100644 index 0000000..0563906 Binary files /dev/null and b/原理图/History/教室智能(1).~(11).Sch.Zip differ diff --git a/原理图/History/教室智能(1).~(12).Sch.Zip b/原理图/History/教室智能(1).~(12).Sch.Zip new file mode 100644 index 0000000..caf5d9e Binary files /dev/null and b/原理图/History/教室智能(1).~(12).Sch.Zip differ diff --git a/原理图/History/教室智能(1).~(13).Sch.Zip b/原理图/History/教室智能(1).~(13).Sch.Zip new file mode 100644 index 0000000..8f3a888 Binary files /dev/null and b/原理图/History/教室智能(1).~(13).Sch.Zip differ diff --git a/原理图/History/教室智能(1).~(14).Sch.Zip b/原理图/History/教室智能(1).~(14).Sch.Zip new file mode 100644 index 0000000..f330e7f Binary files /dev/null and b/原理图/History/教室智能(1).~(14).Sch.Zip differ diff --git a/原理图/History/教室智能(1).~(15).Sch.Zip b/原理图/History/教室智能(1).~(15).Sch.Zip new file mode 100644 index 0000000..b598779 Binary files /dev/null and b/原理图/History/教室智能(1).~(15).Sch.Zip differ diff --git a/原理图/History/教室智能(1).~(16).Sch.Zip b/原理图/History/教室智能(1).~(16).Sch.Zip new file mode 100644 index 0000000..ea4ab80 Binary files /dev/null and b/原理图/History/教室智能(1).~(16).Sch.Zip differ diff --git a/原理图/History/教室智能(1).~(17).Sch.Zip b/原理图/History/教室智能(1).~(17).Sch.Zip new file mode 100644 index 0000000..1f47006 Binary files /dev/null and b/原理图/History/教室智能(1).~(17).Sch.Zip differ diff --git a/原理图/History/教室智能(1).~(18).Sch.Zip b/原理图/History/教室智能(1).~(18).Sch.Zip new file mode 100644 index 0000000..e541e87 Binary files /dev/null and b/原理图/History/教室智能(1).~(18).Sch.Zip differ diff --git a/原理图/History/教室智能(1).~(19).Sch.Zip b/原理图/History/教室智能(1).~(19).Sch.Zip new file mode 100644 index 0000000..94589b9 Binary files /dev/null and b/原理图/History/教室智能(1).~(19).Sch.Zip differ diff --git a/原理图/History/教室智能(1).~(2).Sch.Zip b/原理图/History/教室智能(1).~(2).Sch.Zip new file mode 100644 index 0000000..6b78a27 Binary files /dev/null and b/原理图/History/教室智能(1).~(2).Sch.Zip differ diff --git a/原理图/History/教室智能(1).~(20).Sch.Zip b/原理图/History/教室智能(1).~(20).Sch.Zip new file mode 100644 index 0000000..5ba7636 Binary files /dev/null and b/原理图/History/教室智能(1).~(20).Sch.Zip differ diff --git a/原理图/History/教室智能(1).~(21).Sch.Zip b/原理图/History/教室智能(1).~(21).Sch.Zip new file mode 100644 index 0000000..9a2376c Binary files /dev/null and b/原理图/History/教室智能(1).~(21).Sch.Zip differ diff --git a/原理图/History/教室智能(1).~(22).Sch.Zip b/原理图/History/教室智能(1).~(22).Sch.Zip new file mode 100644 index 0000000..1ec7cd5 Binary files /dev/null and b/原理图/History/教室智能(1).~(22).Sch.Zip differ diff --git a/原理图/History/教室智能(1).~(23).Sch.Zip b/原理图/History/教室智能(1).~(23).Sch.Zip new file mode 100644 index 0000000..8aac8a6 Binary files /dev/null and b/原理图/History/教室智能(1).~(23).Sch.Zip differ diff --git a/原理图/History/教室智能(1).~(24).Sch.Zip b/原理图/History/教室智能(1).~(24).Sch.Zip new file mode 100644 index 0000000..7ef9b74 Binary files /dev/null and b/原理图/History/教室智能(1).~(24).Sch.Zip differ diff --git a/原理图/History/教室智能(1).~(25).Sch.Zip b/原理图/History/教室智能(1).~(25).Sch.Zip new file mode 100644 index 0000000..c09b387 Binary files /dev/null and b/原理图/History/教室智能(1).~(25).Sch.Zip differ diff --git a/原理图/History/教室智能(1).~(26).Sch.Zip b/原理图/History/教室智能(1).~(26).Sch.Zip new file mode 100644 index 0000000..99c93b2 Binary files /dev/null and b/原理图/History/教室智能(1).~(26).Sch.Zip differ diff --git a/原理图/History/教室智能(1).~(27).Sch.Zip b/原理图/History/教室智能(1).~(27).Sch.Zip new file mode 100644 index 0000000..3bcca30 Binary files /dev/null and b/原理图/History/教室智能(1).~(27).Sch.Zip differ diff --git a/原理图/History/教室智能(1).~(28).Sch.Zip b/原理图/History/教室智能(1).~(28).Sch.Zip new file mode 100644 index 0000000..aab4582 Binary files /dev/null and b/原理图/History/教室智能(1).~(28).Sch.Zip differ diff --git a/原理图/History/教室智能(1).~(29).Sch.Zip b/原理图/History/教室智能(1).~(29).Sch.Zip new file mode 100644 index 0000000..002c658 Binary files /dev/null and b/原理图/History/教室智能(1).~(29).Sch.Zip differ diff --git a/原理图/History/教室智能(1).~(3).Sch.Zip b/原理图/History/教室智能(1).~(3).Sch.Zip new file mode 100644 index 0000000..b1fee4c Binary files /dev/null and b/原理图/History/教室智能(1).~(3).Sch.Zip differ diff --git a/原理图/History/教室智能(1).~(30).Sch.Zip b/原理图/History/教室智能(1).~(30).Sch.Zip new file mode 100644 index 0000000..30993aa Binary files /dev/null and b/原理图/History/教室智能(1).~(30).Sch.Zip differ diff --git a/原理图/History/教室智能(1).~(31).Sch.Zip b/原理图/History/教室智能(1).~(31).Sch.Zip new file mode 100644 index 0000000..e420f50 Binary files /dev/null and b/原理图/History/教室智能(1).~(31).Sch.Zip differ diff --git a/原理图/History/教室智能(1).~(32).Sch.Zip b/原理图/History/教室智能(1).~(32).Sch.Zip new file mode 100644 index 0000000..8899870 Binary files /dev/null and b/原理图/History/教室智能(1).~(32).Sch.Zip differ diff --git a/原理图/History/教室智能(1).~(33).Sch.Zip b/原理图/History/教室智能(1).~(33).Sch.Zip new file mode 100644 index 0000000..f53fac4 Binary files /dev/null and b/原理图/History/教室智能(1).~(33).Sch.Zip differ diff --git a/原理图/History/教室智能(1).~(34).Sch.Zip b/原理图/History/教室智能(1).~(34).Sch.Zip new file mode 100644 index 0000000..85feaee Binary files /dev/null and b/原理图/History/教室智能(1).~(34).Sch.Zip differ diff --git a/原理图/History/教室智能(1).~(35).Sch.Zip b/原理图/History/教室智能(1).~(35).Sch.Zip new file mode 100644 index 0000000..0073b45 Binary files /dev/null and b/原理图/History/教室智能(1).~(35).Sch.Zip differ diff --git a/原理图/History/教室智能(1).~(36).Sch.Zip b/原理图/History/教室智能(1).~(36).Sch.Zip new file mode 100644 index 0000000..cd3f614 Binary files /dev/null and b/原理图/History/教室智能(1).~(36).Sch.Zip differ diff --git a/原理图/History/教室智能(1).~(37).Sch.Zip b/原理图/History/教室智能(1).~(37).Sch.Zip new file mode 100644 index 0000000..f644a6a Binary files /dev/null and b/原理图/History/教室智能(1).~(37).Sch.Zip differ diff --git a/原理图/History/教室智能(1).~(38).Sch.Zip b/原理图/History/教室智能(1).~(38).Sch.Zip new file mode 100644 index 0000000..b970faa Binary files /dev/null and b/原理图/History/教室智能(1).~(38).Sch.Zip differ diff --git a/原理图/History/教室智能(1).~(39).Sch.Zip b/原理图/History/教室智能(1).~(39).Sch.Zip new file mode 100644 index 0000000..ddf7190 Binary files /dev/null and b/原理图/History/教室智能(1).~(39).Sch.Zip differ diff --git a/原理图/History/教室智能(1).~(4).Sch.Zip b/原理图/History/教室智能(1).~(4).Sch.Zip new file mode 100644 index 0000000..086478c Binary files /dev/null and b/原理图/History/教室智能(1).~(4).Sch.Zip differ diff --git a/原理图/History/教室智能(1).~(40).Sch.Zip b/原理图/History/教室智能(1).~(40).Sch.Zip new file mode 100644 index 0000000..cee923b Binary files /dev/null and b/原理图/History/教室智能(1).~(40).Sch.Zip differ diff --git a/原理图/History/教室智能(1).~(41).Sch.Zip b/原理图/History/教室智能(1).~(41).Sch.Zip new file mode 100644 index 0000000..78b528b Binary files /dev/null and b/原理图/History/教室智能(1).~(41).Sch.Zip differ diff --git a/原理图/History/教室智能(1).~(42).Sch.Zip b/原理图/History/教室智能(1).~(42).Sch.Zip new file mode 100644 index 0000000..0a161d1 Binary files /dev/null and b/原理图/History/教室智能(1).~(42).Sch.Zip differ diff --git a/原理图/History/教室智能(1).~(43).Sch.Zip b/原理图/History/教室智能(1).~(43).Sch.Zip new file mode 100644 index 0000000..a902444 Binary files /dev/null and b/原理图/History/教室智能(1).~(43).Sch.Zip differ diff --git a/原理图/History/教室智能(1).~(44).Sch.Zip b/原理图/History/教室智能(1).~(44).Sch.Zip new file mode 100644 index 0000000..9ebea5f Binary files /dev/null and b/原理图/History/教室智能(1).~(44).Sch.Zip differ diff --git a/原理图/History/教室智能(1).~(45).Sch.Zip b/原理图/History/教室智能(1).~(45).Sch.Zip new file mode 100644 index 0000000..cf39536 Binary files /dev/null and b/原理图/History/教室智能(1).~(45).Sch.Zip differ diff --git a/原理图/History/教室智能(1).~(46).Sch.Zip b/原理图/History/教室智能(1).~(46).Sch.Zip new file mode 100644 index 0000000..458c249 Binary files /dev/null and b/原理图/History/教室智能(1).~(46).Sch.Zip differ diff --git a/原理图/History/教室智能(1).~(47).Sch.Zip b/原理图/History/教室智能(1).~(47).Sch.Zip new file mode 100644 index 0000000..e5406f0 Binary files /dev/null and b/原理图/History/教室智能(1).~(47).Sch.Zip differ diff --git a/原理图/History/教室智能(1).~(48).Sch.Zip b/原理图/History/教室智能(1).~(48).Sch.Zip new file mode 100644 index 0000000..8ff2d8c Binary files /dev/null and b/原理图/History/教室智能(1).~(48).Sch.Zip differ diff --git a/原理图/History/教室智能(1).~(49).Sch.Zip b/原理图/History/教室智能(1).~(49).Sch.Zip new file mode 100644 index 0000000..f836a22 Binary files /dev/null and b/原理图/History/教室智能(1).~(49).Sch.Zip differ diff --git a/原理图/History/教室智能(1).~(5).Sch.Zip b/原理图/History/教室智能(1).~(5).Sch.Zip new file mode 100644 index 0000000..ee40f2a Binary files /dev/null and b/原理图/History/教室智能(1).~(5).Sch.Zip differ diff --git a/原理图/History/教室智能(1).~(50).Sch.Zip b/原理图/History/教室智能(1).~(50).Sch.Zip new file mode 100644 index 0000000..1fb8060 Binary files /dev/null and b/原理图/History/教室智能(1).~(50).Sch.Zip differ diff --git a/原理图/History/教室智能(1).~(51).Sch.Zip b/原理图/History/教室智能(1).~(51).Sch.Zip new file mode 100644 index 0000000..0bbe256 Binary files /dev/null and b/原理图/History/教室智能(1).~(51).Sch.Zip differ diff --git a/原理图/History/教室智能(1).~(52).Sch.Zip b/原理图/History/教室智能(1).~(52).Sch.Zip new file mode 100644 index 0000000..cc44867 Binary files /dev/null and b/原理图/History/教室智能(1).~(52).Sch.Zip differ diff --git a/原理图/History/教室智能(1).~(53).Sch.Zip b/原理图/History/教室智能(1).~(53).Sch.Zip new file mode 100644 index 0000000..8509b42 Binary files /dev/null and b/原理图/History/教室智能(1).~(53).Sch.Zip differ diff --git a/原理图/History/教室智能(1).~(54).Sch.Zip b/原理图/History/教室智能(1).~(54).Sch.Zip new file mode 100644 index 0000000..0010695 Binary files /dev/null and b/原理图/History/教室智能(1).~(54).Sch.Zip differ diff --git a/原理图/History/教室智能(1).~(55).Sch.Zip b/原理图/History/教室智能(1).~(55).Sch.Zip new file mode 100644 index 0000000..e5bc72b Binary files /dev/null and b/原理图/History/教室智能(1).~(55).Sch.Zip differ diff --git a/原理图/History/教室智能(1).~(56).Sch.Zip b/原理图/History/教室智能(1).~(56).Sch.Zip new file mode 100644 index 0000000..8d3a1f7 Binary files /dev/null and b/原理图/History/教室智能(1).~(56).Sch.Zip differ diff --git a/原理图/History/教室智能(1).~(57).Sch.Zip b/原理图/History/教室智能(1).~(57).Sch.Zip new file mode 100644 index 0000000..8f7ef15 Binary files /dev/null and b/原理图/History/教室智能(1).~(57).Sch.Zip differ diff --git a/原理图/History/教室智能(1).~(58).Sch.Zip b/原理图/History/教室智能(1).~(58).Sch.Zip new file mode 100644 index 0000000..38e98de Binary files /dev/null and b/原理图/History/教室智能(1).~(58).Sch.Zip differ diff --git a/原理图/History/教室智能(1).~(6).Sch.Zip b/原理图/History/教室智能(1).~(6).Sch.Zip new file mode 100644 index 0000000..195c755 Binary files /dev/null and b/原理图/History/教室智能(1).~(6).Sch.Zip differ diff --git a/原理图/History/教室智能(1).~(7).Sch.Zip b/原理图/History/教室智能(1).~(7).Sch.Zip new file mode 100644 index 0000000..9e9d122 Binary files /dev/null and b/原理图/History/教室智能(1).~(7).Sch.Zip differ diff --git a/原理图/History/教室智能(1).~(8).Sch.Zip b/原理图/History/教室智能(1).~(8).Sch.Zip new file mode 100644 index 0000000..fb4135e Binary files /dev/null and b/原理图/History/教室智能(1).~(8).Sch.Zip differ diff --git a/原理图/History/教室智能(1).~(9).Sch.Zip b/原理图/History/教室智能(1).~(9).Sch.Zip new file mode 100644 index 0000000..400f27a Binary files /dev/null and b/原理图/History/教室智能(1).~(9).Sch.Zip differ diff --git a/原理图/__Previews/教室智能(1).SchPreview b/原理图/__Previews/教室智能(1).SchPreview new file mode 100644 index 0000000..4c5cf1e --- /dev/null +++ b/原理图/__Previews/教室智能(1).SchPreview @@ -0,0 +1,14 @@ +[Preview] +LargeImageOriginalSize=632000 +LargeImageWidth=500 +LargeImageHeight=316 +LargeImage=789CED9D3D8F24C795AEFB7FDCF1F727B0B13F604D197387F205F9836E8306812B684DCDDE6E9F2BCD9AA45A6D091851A0D9430DDA1525D01C8E06630A57C0352F395CCDAD535D6FD5A9A8C8CCC8EF88CCC778505F5955919199F1E63971E29CABEBEBB3DFFEEE1606E08ABEA42F3385FEA42F7384BE1CB62F3FBFB93DFB7F3F7E8001A02FE9CB5CA13FE9CB1CA12F87EDCB12FAF3EED5FDD9EBB7EF666F474A7FCEDD8694BE34E66EC712FAD2CEC912CECB92FA73EE362CA52F4B686329ED2CE9BC2CA13F4B686329EDB473B3847696D046DA392C8F9F7C5CC4D859425F9642097D59924E96D0CE6757D7B3B721B53FE76E4313669B97D0CE12DA58CABD5129FDF9F4E272F6362CA52F1933876D6329F79925F46729D097F465AED09FF4658ED097C3F665557FCAF68074CCBE98BB0D4B81BEA43F7385BEA42FE7A4CA57A0CFB96F0200581E1AC7ED51736D6DE38BFD77F43D3DF71A62AFB59DFF2FFFDCFF9EDEF76D935EE977BAB4B76E3FC2DFF4FF17A2398BDC7CED759A8D9E03002C138DE3A64D1AEFED799B352EB6BD344DDFD76FE877FD7FD9E347E7E7FBCFECD1621DA593F6DCDE33DBDC9E2B6EC2EB91B6D3F787EC0BF905D47EDF4EDF4775FA98C3318DBD8F9E03002C138DE3D24EAFCDA9C827EE6DEA500365E3DAF6D2C9FFF1E8D1F6B9FE5BDFD7EFD9A3D7FAF0DE40DB0C651FAB9DE1FE84FE037FBF92E35A69F41C00607D783B73ED2C69AE3E76ACD1730080E5A2715CFE65F9B7DBD8BD5E07F53CF44DDB6FE5BE464E7D21FB5BFE0AEFF3AFFBAEBE97CB7EC4DE47CF01009689C6F1D04E6DE347F6716FD26DFF7B3E366EEEFD4DE90BCDDD87F30775DF4DDD6ECAFD88BD8F9E03002C9321FCED4BF1D92FA92F62C71A3D0700582E438CE368415E7D819E0300AC0FF43CBFFE1CAB0DE83900C072F1E3B85FABD5F537D64E0E7D819E0300AC0FF47CBCFECCAD0DE83900C072C1DF9E5F7F8ED506F41C0060B9A0E7F9F5E7586D40CF0100960B7A9E5F7F8ED506F41C0060B9681C57DE745FE7A4ED6F84B54BC21C714D39D69680F6D7E7CCF3FDE073EFF87CF4631CD3AAB6B5F90E00009481C6716950971A23D2A9B04E9AAFAFE26B8ECEBDCF63F7A7743AACAD1AD68B1DAB2FD0730080F5B1A49C6839904B5FC48E357A0E00B05C18C797077A0E00B03E18C797077A0E00B03E18C797077A0E87E33A7F1B00601A18C797077A0E0FC7F440CAF67F7FFBEEECEBABEB2DDF6CCE87AF33A8FD0B00E9308E2F0FF41CBC961B77AFD2BE272D1773EF0700A4C338BE3CD0F375E375FCD9553B4DFFEED5FD163D9F7B5F00201DC6F1E5819EC3E1B8CEDF060098068DE3CA71F2D1F9F9F63DE58599BB7DD0FD98C6DE47CFD7455B3DFF61731EA430F77E01C0291AC7950B4539E218DFCB053DCF97300FB278E1E6ACBB60F3DE5F6EAEDDF0FDABF38F4FDEFBD2E5220E49D5EA3F55FCC60BCE2380D99076C3B2881DEBA6CFE63E17D780F4DC9EB7C9A9DC84C5A6DF3CF9F8E4BD2F23351362EF89F79BCFFAD8E8C4D001000C077A9E3FCAE93FE46FA66A69950D6DFAAF7838FBADBF77B8DF40CF010086033D1F1FD3BC50EFDA6AF4D0F129A95A5A77AC65E3775DB3869E03000C478A9EAB9E6BD377D64AB80E3BE4FAD1A3B32F827970D5D0B3EFCE1137D657CFE59FB77B15ED7F5B1B1D3D0700180E8DD78ABBD23CADD7F3D05647CF8F69D2A56F82BE93AD1DDADCD2F5EF27582B32847D3E551B0000A019AFD95A87A8D7F8DBD368A3E7B2CB1B7F77B38DC585BF319FFC80B170A96D9EE258A3E70000C3C1FC797FDAE879DB63637CB1D1F597CE57FFC500B171A96BC5D07300803258BB9EDB9CAF62B5A52F7AEEEB8DD4694F1F3DF7F1E161DC9C7CF3DE6F92F27FFADDD86FB63D86E839004019AC5DCF0DAFD98AF3929EDBA3C571D7E527EFA3E7F67F3E774B6CDBF058A4E8A08FC7B3F6879A9E7A0CDFA0E7000045B0763DF736AC3D7E71757BF68B27BF3CFB8F8BE7DB47F1D9D55795BF91A2E77598DE9A961BF63CB6CD672E9F5B5D8E17FF9FFE5E21FCFC65E2310CE3EE7D5E39DDEFA8EDE1FBDABE6BBF419C9378C981E22BC2736EEEFD048076AC5DCF43AE7FF7EDD9EF3F7C38E193DB6F2BBF53CAD8673AA0187A9FDB2DD403BF9DE7FBDDDC40550E597BFCCE6DA37C3355BE8D52FA2D377EDCDCF3FDE8F2FB0DB1D651F7B429F34B009027E8F931A5EBF97781E676F98DAA9CADDFEFB4D9C71CF83EF82EF279B85DAEFD5612A6E51FCECECEFEFBFC7C7B2F3648EE82DDEF505F07A05CD0F363BC9EFFECFAFAECF9BB773B3DAFAE5DF0878173B1F62155CFEBC6E52A3B5EF6799DCDDD06F43C7EFCAACEB337BBE3603A6E7A2EC23CFA2F2BBE5FC79F12E67074DE54FDC6CB0ADF4D155D7204034035E8F9315ECF3FB9BD4DB2CF4B24F5184AF735672B0D1E428BD1F36E7D22FB7CABE5BBFC827DFFB76A8E25E47DC2BDEBE737DF9EDDBD7AB747AFF5F8FAEDFFDD6E57B5F60200BA819E1FE3F5FC57F7F7A3EBB95F1B67B1635F4F64EBB7896FB7B15EE3B8B7AFFADAE8E879B73E919E4BC773F3819B6E9B663FBDF8EAECD9D5FDF6B5B0F71E3FB93DD2F4B9DB0BB014D0F36342FBFCE06F1FCF3EF76BDD73D373D69F4F4BAA9E7B0D1F42CF7D3C63DFF3D034DB1E658F7F74FE7CAFE522DCE7A9CE7B8025839E1FE3F5DCB45C367ADDFC79EADAAF9C486D337A3E2DC97DE2FDD403F8ACA5E15AE338A5BE6ACDE6DC7D0F503AE8F9315DECF312756988FA6AE1FA34EAAB4D775C8CFD5AC30DDBF88642E7A2D173806140CF8F297DBD5A2A43D46389AD3F1FA30D6BA2559F6CF4DBE6D1EDB9C537FC58A826A2E700C3809E1FF3E9D5FD56BB437E72D93D3F5C8E0C619FFB397FE5B51BA30D6BA2A94E406C3D62E93165E839C030A0E7D534E5431125EAD210F6B9F0F1596D728E94D86F731E177DF66BCB23F3E38723DFC8DCEDEEBBCFE839407FD0F37A52D69095A84BA96D4E899BD3FA299F636CC836AC89BA3ED179E8FD228A6398BBDD7DF7193D07E80F7A5E8D8FF9AADB6EE8F1D4EAA38ED9C7F29587EFC7F633C5F6939EFFF3D1A393B55453F6DB1258639FA0E700C3809EF7A7EB182CFD54BEF358DF8FD1D7F6BF61DD33FBFF3F46C6D4367A6EB4D17318EE5C1AE29CD0FF87E7E314FB8C9E03F4073DEF4FD731D8D71BADD2CDBBCD387B3751BC53571DEEEA6F875352CEA5A5D54B45CF0186013DEF4FDBB1CFFAEFB58B0FAFD3F3679BF75F4F642BF5D1F32EF170D0ED5C5A5ABD54F41C6018D0F3FE54D58F329DFEED069F4BEEE9CECFFD85EA68E4900364675777AEED11E62ACB619F0AA54DFE768B575842BD54F41C6018D0F371D1F86C36F6B39D0D2EFB5CDBF8DA5673B451B9C55473A5B3A6EFF6A9E45C657373BDD168BBD75B53BD54F41C6018D0F371F17A9ED26F63DA4155981E48CF756FD1E9775C8EB294BA9A708AF9749A62D17CFCE150E7CA90F552C39A6A7AEDDFB7FA6AF2F1A3E700C3809E8F8BF79FA6CE83ABEF7FBB19E3BE08FCF563B6D5C6F4BD6DDDC1BEF676F949CC16B43E5FAA28A15EAA3DAA5EAAD7717B4F7A6EDB28DF1D7A0ED01FF47C5CAAC667AD09B2F14C768AEC328B67571FDB737F1F90CBFA646BAB6CC970ED1B0C7FBE78A6A897DAE73C33FDB647AB95AA3AE8F6DC6BBBF4DCB0F3073D07E80F7A3E2E4DF93B95E34B393C9BFA3A473D2F3DDF684E502F1500BA829E8F4B53FE4E7D5EB55DAE7A0E03D2D1FF42BD5400F0A0E7E3D226DEB74D4C3094CB3EB660772CBDBFBC6BBD54FB0DEAA502AC1BF41C601A4CC7B596C0C7936BDDBF61EBD5AAEA05C89F13D663A15E2A0018E839C08438FF786C6D62977AA9A56BE112F6012007D073807CA05E2A0074053D07C887D2B5B9EB3EA3E700FD41CF01F2817AA900D015F41C201FBAD44B1D2A171FF55201CA063D07C88756F55223EBDDBA42BD5480F241CF01F2817AA900D015F41C201FA8970A005D41CF01F2416BD0EAB629BD5EAA3D5A7D16EAA5B647F572C2F845ABA510D6D32197E4FA40CF01F2610DF552ADB69AE9B96D43BDD4769856FBBA86965B48CFAD0FA5E7DA66EEF6C2B4D469F6D3A0F6B6784A7D4C805148D173F9D7F57AC87AA97D6BA51AD44B1D0FD36BD527D6BD90FAD0E66AA4EDD4305E27759A8D7D0E302D73D74B9D3AB65DFB8C9EA7F1C9EDB78D7C7A55763E7FE80EFE76807CE8532F75A875E873ECF3AAF5BCC5FDD8EF3F3473FDBB6FE7DF279805F41C201FBAD64B351F3CF552CBE0A8567DCBF586A6D7CFDFBD3BFBD5FD3D7A0E27A0E700F9D0548F25562FB5F49CEF4BD2F3BB57359F6F8E95EAE5866B06FCEBBA7585D2EC9F5D5FA3E770027A0E900F5DEAA57E9DB0862C6796A2E7A6E59FDF346CE7E6474CC7B54E30F53F649F7F727B8B9EC309E839403E502FB54CA4E58D7ADE13E6CFA10EF41C201F4AD7E6AEFB5CB29EBF7E7BD0F2675787E72F6EDEB5CA97279AFCED669FFFEBC71FA3E770027A0E900FD44B2D1369F814F6B9E939F3E710033D07C807EAA5960BFE76981BF41C201FA8975A3653E939F639C440CF01F2817AA9F3A07A263990B25E8DF87688819EC7519EE435C627C17C988D5C3596532F753C4AB9CEA5D9E4938118E8791C9FBB63EEB6D4519BBF0216C918F55253EDF321EAA5AA1E4B4EF5524BD373E6CF21067A5EC32EF7C3ECEDA83C76D3C4E0405E945E2F559F1BB9D44B2D45CFFD7D5215AA450BEB033DAF66ACF9C2618EDB31D8E9EB618CF876F9A2CC5EFEAEE7EF49AF551355F67895DED8FFA2E7CDC89761F43D46B04CD0F36A72D573AFE34F2FD0F4D5E26A7AF4FD2DE59B339D987A8E09FBBC5D3B7DEC0180676D7A2EFF5E8C1741EC91EA24BC09E27EAABE6F79B5FD7A9F2A863D7EF3F729CCC3BE46EA2E1F788EF79E29A0E769C87752425B611ED6A6E76DAE85B6F6F91F12EC9A25EBB9E29B7C9C93DE977FD07FE6DF870E6CFA71BB66ED47EAA50ED186B9FB21057FEDA8DDFE3D7FFD61C3AF0FF4BC9AB67A9ED22F438F1B2F6FF2D143E9B3DF47F96F43FF841F8FE66E772954D54BFD3271AD59AEA0E7EDCE013BDE3AEEE613D473EB435D6FDA66EEF6C2B4A0E735ECFC987DFBB2F3FF0FBD3F23232D8FE5E6F076B9B7CDB1CFDB1FEBB05E6A4EE740D7FD42CFD3505E0C3D57BBEDBDEB478FF6DA5EFA3D1E74033D1FBF2FC7FCFFA17EEFD3ABFBB34F6EBF2D829F5C7E35FB793407D44B1DB70D73F7430A29D7875DCB73B713E6013DAFDEAEED1C6FC97A6E3928527255E4808D59739F47301CABD7F3167E71F2C9401DE879F5765ABF933A0FB5143DB75C925693D17244D7E5891E57B36FF7587B7C7E4BD3F3BB5796A7E47ACB6BE6098B66557ABE9BC3EBBA2EC1CE7F5D9BE839842C51CFEBD6618F72DDEE7265FE6D9747BB6ECE7DE8FFAF5B7F67FCF9D57D52FEEECBEBDB132DFDC9E5E59639F4DCFED734DCEBBAD773D3F1A79BFE36EC796C9F5ED4F40BCC8F8F892C5DCF93723F6CC6095B8710E6D6D5BA5891528F85FA6A1063697A6ED755DD1AAE29FD6A3EE64BE3570E712AA68166DFDEB9FB0E6F9FCF6997FBF14AB6B9D923A17DEECF45D9EA73F72BB4C3AFA72E59CF9BC69C237639A4ED9EDF741CFB1C8664497AAEEB6A4A3DAFAC5BE16AB3C9779FC3B8E58FADEC5A7B2FF4B70B1B37BCEF3DD4D6B1F06DA8D273DD93D49DAB903F5A6B35671BBA8E0B53D75040CFA18EA5E8B9D7F210F9F74C53FFFDEC6CD0FFADBAB7FEC1F9146597FB1AAC5311F3B7CB476D3CDE8CA346CCDF2E5DF5BE6F7D3EA5BF3DFC4FD3736BB3F6417E77FCED6551BABFDD8F31CFAEE2634E17F0B7435796A2E70FED6ABE571EDADF5D679FCFDD1F5598067ADBD6DEF3F6B98D1542F3E86613D8EB26DB60483DD7FFC7F45CE7A1E9BAEE51E6EE57D0F9555F2FD51EAD26CB12FCED73D9E7E839C458929E3FB42D9FF973D9E239CC99C78EAD9F732E79BD9ABF2F81F969AA976AB5D65463CD343DACAF3687AFA04F2EB5A9F5BC09F47CBD2C4DCF8D5CE2DB3556F87A553E47DA14BC8CF8ECBCBFFDA3F3F393F876D9E6F2B5DB73C5BA9B9D5C671B0CC5BF7EFCF1FEBFAC1DFE3F63F1EDF8DBF3E1174F7EB97DFCC3D56FF6AFEDB93D1A9F5D5C1F69A83D979EDB73D37B7F2F30F77892368E0EF33BD62729FEF6BA7527E8F97A59A29ED791AAE7DAAE4D3ED239D69F773DE68A09970EC6E2DBCDAF6798B6EAFDA9FCEDD2F2D87FFAF5E7F2B7DFB5384E302EA6C742767858F3DCF039804DCFFDB5215B5EB6FE5A681A6FFCF5819E43087A1EC7C7AEF5EDCB2EFF3FF6310F8F6F2CBEDDAF17538CB99E4FA1E7FEBFFC7F7A7FBBE59261BD5A5E98069B96CBC7AEF762DB6AFE5C39E98D97375F1DD9F473FB1BA6A4A96FFD358A9E43087A1EC7D7B2EADB975DFE7F4CB44E4DB6B96962959E4B4BBDBE4EA1E97EBD9AEE23423DF76BEED0F37CF073E59A3B7FFCA4FABCF7EBD5CC5EFFF3AB6FF7F67CD3FDC0DA48B976D0F3F5829E57B3CFCBD8B32FBBFE7F134DB9E18CD8FCB927367F6EFEF530379B7CDF53AD596B5AAFA6FB91D8BC39F3E7E5A06B42B53E1FE68F0FB1F1876B0B8D0268023DAF26E7FAE71AFBCC06921D94FA5DE587F379CFBD7DFE2F1B8D373DB5471F8FE6FDEF63C7C4B5C90FC77AB5BCD0396936B93F3F65ABFB6DA5EBAAE36DEF996D2E3DD773AD719B7BDFE644B106CA6531777B203FD0F36A72D573BBAE35F6F975BD6DDAF97A1747ABF74A5DAF66FBA1B8BEB9CF2D78205CA3E6CF519B570FB7CF213F5C29D8F8B1841AB9300E297AAEF5BDAFF71A52E6B964F7B4961FAECAF7F7E2E6E0AB7D7373A893F0E6E6D88F5BF57DB331527D8C5DF171C0296BDF9AFCEDD2C29F5E3E3FB28DB5364DB9647C9E38EF8B9FC2DF1E5BAF265FBBA11877FCED6591537E38802550A7D9FA4CEF97AEE7461B3D6D6B9FF7C949918AF45CB9B5E48FD4A36DD3E47BF7F9E1744C63F9E1A4E9D253AD459FA2966A4A7E38D9E675BE24989EA6FC70B2D373CA0F07B004EA34DB8F917EEC2F79EC1C53CFA7407A2EDBC68F9BA9B1C03E2E5CEFC5D69FFBFAE373FBD8ABFCED3A37896FCF87A6FC70FEFC8CE58703806ED469F6DAE7CFDBC6B74F818D7B3E7FAC8F17F2F650D331D7BA6D1DE7CBEBAF8EF45C316FB2CD6593FB98F37135FBF87E228C87530C9CEAB2947C4E2E0D9D7F766E2AD79B3DAF8A8943CF01868178B838F205CEDDDE9098BF5DB93B948F2BC53ED7BD9B1E437FBBF7A9FB356BFA7C0A3DF7FEF650CFE56B373DD77ECC7D6C40E7D7C3FC8FF0F3413A5F6DBB303FDCDCED06281DF4BC7A3B8D3553CC8BA712FADBBD7E7B5B28E598D7F9DB7D1E97D0469EC2FF1EE687AB5AAFF67ABB66EFB2E8737269E8DED2E793F1FE765BC7E6351D3D071806F4BC7A3BF303E666A387FEF670FE3C652DBAE2E164A71B313DF7B1703E47DC547A5EE76FF7EBD4587F9E17760EEADCB47BCB8FCE9FEFCF4DE1B767BD5A1AB22F740F64E3931FA3F4596E63164C077A5E167EBDDA10F9E1549FCCAF578BF9D97DAD33D5671913BF5E2D8CA567BDDA3260BD5AB7F14BB52594935AEFEB75E9631C74073D2F0BE9B9F643F1C26DF2C9283F5C55FDF3267FFB1CF558EAF2C351FF3C2F744E86F9E1E46B97DD6EDBEA5C46CF9B31FB7C5B6FF6EAABB3FFB878BE7D6E8F7AADE72F6EB0CFD70A7A5E1675FEF636C73C5CB316D3735F53CDD72DF5EF8FE57BAFAAC5E2F55C7305C4B7E7855F37E9D7A8797C9E38FCEDE9A45C3BD463592FE8F901D54795EFEACB0CE764C3FC70AA2B69A4FADB7D1D13F3553FE487F3F9D76EF739657C3E17EF731F3BD63DACC712DAE75AA7A639F498CF1D7FFB3CA8C6A9CE495FFB54D8FB8A335DBD7DDE22DE163D873AD0F3037EFE49F35373B737C4C7B7FFFDEDBB7D9D0ABF26289623DBE3F3C3E9BD70BD9ACF09E7E7AFA7AAB316D66389E587F3E769C9E7E4D2D03A359F174EAFEDDCD4FA4AF30BFFAF8BDBB3CF2E56B4FE7C73CDEEF35AEC9EB7C959A5F9AEBAEB0E3D5F2FE8F901E5836BA2CDFDF4D0D8B867F719B26D94A3C3AFF54D39E675F558C2783831C5BC790A617E38D9E9739F5BA0F3EB9077D87CED5ABB16FADBEDD162DF97964FE6F39B8ACF36D7DC7BF3F96D1EFD78A23A11A22E7ED5DFEFA2E710B2363DAF8BF74EBD4FFE534DCD6DEF771C63DDBAF45CAF7F767EF91023B3B171ECF1DF1EFD7CEFCFACF2B77B5F75ACFEB972A77B9FBB1E551B5D6BD8868E75B7DF536E3A6B8738AEC7723A7710F3B79363661EC29C853ECF917FAE6DFEF79365CD9F57EAB96163C2CE2E371DEF629F37F9C5D0F3F5B2363DAF23BC4FAEB5D1137E6F8CD83B3F7F1EFE7E9B9838C5846B1E3DB4CFE567F79AEED78F495F87F6B757AD933BF6B77FB5F731CC7DCE407F96347F7EF7AA41CF7B92720DA1E7EB053D1F8F31F5BCAE1E4BCA31CFD5DF5EF5DFFEFFC3FC70E493299B25E8B9E9B83D9A9687BCBC69CE13E169F2B7AB76317A0E21E8F903E61B577CFB50717063E9B98FBBF7F3924D79E184E2E17C9C7B557E38D9E75A9B165B9BDE46AF7D5E786F7FEBB97CEDBE0DA7F17007FB5CEBD5983F2F9725E8B990868FF5FB7E4E0C3D8710F4FC40297AAEDF1D223F5C6CFEDCC7AE877559C278F72EFEF6B0B6F9BF6CDAE0355EF1F5D5F679FD3E317F5E164BD273037F3BCC057AFE80AFBD224D37BD54FC9969BDD77BBF4D956E8FED6FEF1A6F6736B9F29FEB3D6F9F7BBD0DED736F3BCBF7D756CFC31C35D26FD3758B87B347C5C1D96BFBDCDE8BF9DB73B1CFFD1C886A7A8BB162239742A8E7BA064BE5B38B7EDF6FF2B7EB9A41CF21043D3F451AAD7159350EA4ED5A2FE6353E365E4FE16FEF82695F5897CCEBB9FCE9A1CF7BACFC70DE16F7BFA9F8F9B0E67AA8E7CA75D7B4DF8A63D4DADF218F8BF4DCE7E3F59A8E9ED7F79DF4DCFAE9EF6F0FEB2E7D5E85B9DB9903E839D4819ED7B35F6FDE613C1EDBDF9E62C754F9DB7D7E38C3FBDBA5A15535D07D7EB821E2DBFD6F7B7F7E88D7F3147FBBED7BB8CEF7FDEE5EA8ED5A85264C736C1C6DA2A996ED1A919EDBF9ECE33C7D9DB6A61C496B017F3BD4819ED7D367DC1F53CFFDD8D7165F2F35669F4B53E577D76BD377BF36DDB61D22DFABFEC3FB02FC7AB958BD54ED8BED47387750772C959B6BABEF1B6D7F3F909FDE3427655FB133E3D7C9AFCFCF8FCE67E549529C277AFE80EC73E2E120C61AF4BC8F0D96A39EF7F5DF7A1B56EF793DCF9D70BD5AB8F66E0ED0F3EE84F3E7D4EFAE467A4E3E1988B1243DFF7E370E487BE55BB5477BEFFFECC60DF9A25F24FA697D4EC6370DFE5DFDB6D59FF8CF273F1F3CD6C6EC18BF0F4DFCD9D9E1DED7EE6B993CD43F3FD8D9DEE7DDB4D6752CCCE7EFE7D4FDDA77D373B55DED7F1AC9D937763D96E33E7D9E643BA1E7A7783DD73DB0D9E4AAAD2A5B3D753DE692D1795417B7829EAF9725E9B9E9B67CA9F2ABFA7C8A66D326AF8BD9D9BF5DED731B874CD387DE473F7FDE87BBFD3CE5C3BAAE98BF3D8C879BD606BFDD6B7AAC1E8BE2DA6DEEBF6BFD73E51E552E71D50A69D37FFE78ABDD75B6137A7E8AF4DC9FD7D26F1D0FD3F6B9DB9903FEFA40CF2164497ABE67971FF9A896D1EEB3242D54DD841FF3F4B70FF1BB9A43D7EB309F8C6CE239F5DCDBE555F3E73EA74C977E90A6FBBC3C29DF0BEBD3797F7B9DED849EC7AF13F33B1DF7EFA166A08ED3DCED9C8AA6F56AE839D49D3B55EF17ABE735B4D542D54CF8BEC39C5ECE7A1EFAA92FAFBF3AD1D2265B736C3D571C5C2C1E4E6BD4FC3EB4ED036F97FB9A9E29DF551CDEE19A78D0F3A6B94DF43C7E9D2C299FCC98A0E750077A5ED67F0D9D1F4E75C9BC9EFB58F3A6B1632C944FA66EBD9ACF571B638EF973BF960F3D4FBF4ED0F33452AE1DF47CBDA0E7A74827EDB14FEED731F55CF9E16C5E51BE62D996E1EB1875FE76BF462CCCE532157579E8BAE69309917DEEFDEDA9F679984F16FBBC3BE8793A76EE37F1297183AB053D8F6FA33C5539EAB95FAF16D657934635CD054BCFE5332E71BD9AE6CE53D79FC708E7CFFBEA7913E879FC3A41CF01FA839E576FA73CAFD2F7B6FA9CB3BF5D7E76ABC7623EEB9F5E3E3FF27587B9E1A6D6ECB0664BE86F97AFDDD0BEC498DADF1EB6153D4FBB4ED0F3F4BE9A72CE10CA023DAFDE4E76B0BE93939ECBDFAE382E1F0B9C826CCB987D1ECBB93A879EAB1D313D57DBED5C949DDEB62F63F1706DE2DB8FAF8983BF9DF5E7ED40CFD3F0757EE66E0BE4097A5EBD9DEC72D5C86A5B07650A7FBBD6E99A16B5D1F3F01896E86F37A4E98F7BE8817285B7F1B7C77E23A5EDE879FC3A41CF01FAB3463DAFF2997ADED83DF0462BAAD69DAB4E8BCF831E3246DECAB01ECB2F9EFCF2ECB38BEB6DEE1A7B4CF5B79B9F5DF958EAFCED4DFEE331ED731F13E763C663FE76DB97B6F1EDEA337BB47EACEAC3F877AF8FFE53FE76F2C974BB26D17380FEAC4DCF53D9E795ABC893EEF3CE4D49588FC5E7356B937343F950E4AF6ECA0F37879ED7F9DB6597AB967B577F7BD7FC70AF83F3027F7B77D073806140CFE348AF9BE89267A60F7EFEDC5EFBDCD6F219A71E777F1C4BF6B777CDF7FAF0FDE3F876D5E86CDB7FF8DBBB839E030C037A1E27D4F30F67677BE6D6733F8F6FFA136A7ACAEF280F8B3D86F9DB7D7E38E57C9D5EB3EBF3C329C7ABDAFFB4656C83115B7FDE46CFC90F370CE839C030A0E765E1E7CFFBC4DBC9A6ADCAF73A777CBBAFC7A2D75ECF7DBED72EBEF6A1F1F639F9E1DA819E030C037A1E47B9E1725B1BE26BA5DA6BB327536DCAF018A6D46391CD39879EAB0DB17AA96AB7ECF4A9F3C3518F6538D073806140CFE328574BDB356A6313FADB4D7FBA6884F45CC7D2EBB9E9D19CB5D57C1BD48E58BE57BFB660EAFC7055F5589AEE7FD0F353D073806140CFAB511CF9DCEDF0C4D6AB196DF3C3C9CF6E6BBD8CCBEB833FDBAF576B9A0F1E8BA6FC705AA3E6D7AD4DB95EED9BDD3D44AC1E0BF1EDEDAF33F41CA03FE8795984F9E1E42F8EE570D7FBB2E1FD5AAC70CEB9AE1ECB1CF1707EED79189317FADB87CC0FD765EEE2E19A389EAF40CFD341CF0186A14EB3AB6A51768925866108F3C3292F9C8F737F387E877A2CB1B877CB27E3FDC525AF57D35AF4EED7C0213F5CAADE9A6D5EE56FAF033D3FA5643D7FFDF681B9DB0160D46936F6797E48CFF5DAFCC33F3BBFDCE789FBB7473FDF3EB7477BFD3F379F7D746E39D47EB9D1A0DF9C1C5FD3F587F8F6834D6971E566139B8D2CA6D66CC5B6CBE77F9C1FEE109BAF7A32DA8FB6FE76F9D9AD0FADBFEAE62EC2FC70B17A2C615BD1F3664AD573D3F1CF6F1E98BB2D0006FEF6B2A8CA0F273B5D3EE487E3546D6F6AFD742C1EAE84FC70DA07F98A86CA0F37443D16F4BC1D25EAB9D772819D0E73839E9745981FCEF4E1F193DBA3F9735117FB1EAEB72AD9DFDE75BDDAC3F78FE3DB53F5369CB3C7DFDE9D12F5DCEBF8D30B341DF2003D2F8B70BDDA47E7CFB78F9A3BD75CB034AA2ABE4B1A28BF7B557EB8B9ECF3A6FC705AA3A67A3273AC3FAFCA0F477C7B3B4AD4730FFE76C805F4BC2CFC7A35AD91AFA36ABD9AAFB316CE9F9B1E791D9FDBDF1EE6A8939E57AD534B9D3FEF4B6CFEBCA9BFD0F353D073806140CFCB22CC0FA73569F6DCCF0337FD4E9DBFBD2E37DB94F679558EBA58FDF3AE6B2EC6F0B7931FAE1DA5EBF98B9BBC7254C07A41CFCB22F4B7C7E6CC538FBBF2A184F552FD9A6F3D9F5ACFBD8657E5873394232EA77CAFBEDDE13D117A7ECA987AAE3C0DC2BF3754BEA83E75140086043D2F8B303F5C577FBBCF0F67CF7F7A7988C9F6F9E1E6AAC762F87A2CC7B6FBB7B57308DEDF6EF73E46AC6F746F3486BFDDAFB5F33973D1F353C6D673FB7D5BE369FFE1E7A874EC8768FFDC7D0860A0E765115BAF16E6854BD18CBAFCEDE1BCF51C7A6E6BBEB4F6ABCE3E37EAF2C9D4D95F7D6C33E5B139F4E7F17A3511F6217A7ECA987AFE978D66FF6983E9B9AFB1646CF57CF3D8A7E6B1EEA9E7EE4300033D2F8B303F9CFCC59A076EA3E7FE75A9EBD5BC8D3CE77161BD5A77423DFFAE87BE86BCDF5C2BEF6BE6629A3E6F22C71A8CB05ED0F3B208F3C3F93960BD4EF99D301FCA7F6D7EC334BD043E8DCC71C7F2C998DDF5C3E65C35FAD860315E07B6BDF57F4ADB759CE080D773D9BA3E9FBE613916F45C9F29DE41AFE76CFFDC7D0860A0E765E1E7CF87447E43CD2FCEBD9F83B0D9A7AD8EBBC7B1FE4B7DB7A8FE9B08E9B9EF37DDA3FABC0A5EBFFDE7756B3A7EDCFCAEF8E7A347671FCECEB6D873FF599FFB3D8E37E4027A5E1663E9B97ED36CFF258C4F363EBFBFB8DCEBB8ECF431FF53FDB684FE9B92A9D6AB8DE5AFE178432EA0E76531969ECBB6D45A9EB9F773486CEC1663FE4FB82E0AD21853CF15DBFEE5883521D173C805F4BC2CC6D27380B9185BCFB5366DCCF6CFDD8700067A5E16E8F978680DA0CFA73B779BD6C0987AAE633AA6CF84EB1172013D2F0BF47C5CC29C3173B7670D949EEF95F30472013D2F0BF47C3C7C3E50FF1AC6053D071806F4BC2CD0F3FE28C639C43E936F165FFB74A0E700C3809E97057A3E1EBE3E077D3C6DBF0FADE77EDE3C568765C8FB35CE15C805F4BC2CD0F3F1B0B15EB974B1CFA72396EFB54D5D9C1737A7B5783EDB1CC73F6CB0FCED7F3C3FDFE755F0F9DB9567E887C8F77D4D9FBAFF0EEB1D02CC097A5E16E8392C0DAFE7B2A795FF4D28AF71EA6FEADEEC2FBB9A2BD27369BAAEA1BE7986C8070839819E97057A0E4B437AEEFD22D26E5F5FA84B2D9BAA588993D8891EB18F5C8F900BE8795974D173CB7BAA9CA7F67AECBCA7006DB0F3F9D7E7E747EB09BC4D2E5BBD6F6D3ACBD3AEFCED3F0E385F8F9E432EA0E765D145CF95E7D474DD6A43F6B547008664CCF8769FC778CCF6CFDD8700067A5E165DFDED43F916619948F32CB66BEA5C3A63EBB9E6CCC76CFFDCC70FC040CFCBA2CFFC397EF6743EBF99BF0D5598AFD81FCB218EAB5FCBB5243DF731ED63B67FEE7302C040CFCB023D9F06D373E3F5DBF9DB12A279E0FF3E3F3F8A8BE885AB29DB183B36F0FE904F066018D0F3B2A8D3F3A675BB7FDC7DB78EB5E5383D5EC7FC6EAFE3CFAEE6D1F487B55AF1B5D06F767A6A3AAEB8AE7F3E7AB48D8BF07AFBB2E2FB75FC29710D75DD5AED970DE756556EFC31F4DCAE05BFD6DCAF53B3398521ED75F41C72013D2F8B3A3D6F3A2E571B1D688A0BE2D8AA1FE6D1F3146DF071DAA6E743D8CCA9BF91BA9DC5A62B26DDC7A72B66DD1EB5AF63E979B8DEDCBF46CF6189A0E765D147CF538E1BC756FD308FBFBD8D9E6BCDD5503EF0145FFBF72DE2C49F5E7C75F6ECEA7E8FE9B8BDE7D794FB3C6BFA5E9BFC7095BE8C9D862BCE2F7CFEB7DD5A8FBB57F795BF91F2FF43DBFA007D40CFCB023D9F86B9E6CE53F57CE87838D9ADF253F7FD3DD9E1A6E3F6DCAF25B7F7CC5ED7B6A689D273F98FF43DFF1DFF3BF67DDD27C4FE5F795C2BDB3850DC816208A73E4F0062A0E765819E4FC35C71707369C3D7414ED4A9F7D9CE6BC5D8DB7BD2ECD09ED767F658A7E7667BDB7D4F136DFC0DB91D338010F4BC2CD0F36593AC0DBB5A22F67CFB58701C632C3F5CE89B97BFDE53A7E72163E4856B7DCC0046063D2F0BF47CD9B4D2868DFE9946D973D9A373B7BFEB3E8F150F3745ED33F41C722145CF1533D2F41D189F2A3DFF611703543927B819FBEDF3F73573A3FA8D926DBDD2A9D306C574856BBEB4CEB0D4B58663E8B9CF8D33E7310398923ACDD66B3DBFDBD73EE2FC9D8B3A3DF78F6D3F4FDD06C6A549CF4DA7548BAC6E4D77498CA5E7BE2EEA5CC70C604AEA345B9F3DDB5C17E8791EA0E7CBA64E1BE43BB673C0B4CA5E2B1E1D3DCFF398014C499D66337F9E1FE8F9B2994B1B965A8F65C9C70C208478B8B240CF974D8A36580C845F67453D96E6FDF2F1057E5F87883940CF2117D0F3B268D2F37FECFCB01AAFB4AEF81FBB38B81F7631BF7E3C93EF56BFF1B75DCE2B8D815FBAD773EFFF2271FDDA263FDCD0F75F767CBDFE4DB5FF63EBB9AE03AD71F7B9DD86D062F41C72013D2F8BB67A2EFCD8AFB153DB28BE4ADBFC75F71FFE9E80316B20B46EDC3D7A3D6E9BBF7DA89A67CAA7D644DDFA88AE8CA9E7DFB89A2C618D16BB4EFEB2A16F4E19AE0DC805F4BC2CF0B7978BE9C67BE987AB4FFA7EB7CED0B87EF4E8EC8B5D2CCBD2EBAB55D56369FB1B2F6ADAD494F7557D56F5FD1709FF8FDF0A72013D2F8B14FBDCFB13C3CF7FB839E4E9D67AE6709BBFEEFC9262EE7D5E22A633A2EDFD93EC73D3F2C1EA9FFF98568FA54D7DB5C74F6E8F72BCD97BBE368B6DA773557A6ECFF55DBFADF2C5590E58FBCCE77F6DEAE7BA7C0AA5E7D603F0A0E76591629FFBF5C9B1CFE56FACDAE6AFBBF550F2B5CFBDCF708C728F4B8786AAC712BBC7EB43989F557A1EE663573D167F2E4AB3B59DAFBB6A9FD96FA5B4417E8C26D0745802E8795934E587FB879BEBF6E3B2D921CA0FA731DBD7BF30EC33DBE68DF385E24B2C808162B4E5B799DA2733D57A35BB46742F34461C00C0DCA0E76541FE761047F5587AFE96D7F125E9B9EE5D97E867BA7B157FDFFBDD7C5CAB7FED8F39736ACB013D2F0BF41CF66CC6658B8DB3E7DBB8BA096A8F8CC1D8EBD5348F30F77E0EC9E7370F5469FA37818F2DCCFD7F13AC61997B7F60A8F3023D2F09F41CF6B85838C5D6CDDEA60E4CB1FE7C499A252DAFD274E59408D7DAFB9CF67E7E65497DB37696A6E761ECB69F13F46B5053FD4C55F7BF73918B9E6B4CF06386B785861A275EBFCDEF18CC85ECA9583D96B9DBD677BF4ACEF73A255EC79F5E546BFA4F2EBF3AFBE4F6DB133E4DAC170F65B2343D8F698B5E2B1F544A2D45D3115D2BF67CEEFD1239E9B93DFABE8CD5FCEAB3AFFE18CCDDEF3950578F65EEB6F5013DEF46DD7561DAFDFB0F1F4EB8FE5DDA3A3F2893A5E9B9B7BD436D0F6DF72AFBDCEB486E9A9E939E4BC3BF0E62E69BFA37859C8F010C0B7ADE0DF41C4ECF8965E9B9F993EC9C6DA2BE4F0E3CBB6A8E3D99923A3D7FD9705C9A3E4FDDC6B075C029FD9C8AFD5E29C70086053DEFC6B3AB779579EDD0F375B2343DAF3A8F43D2FB67FE7DF2D4E979937F3BC5FF9DEA23B7DC1E29FD9C4A5DBEAFDC8E010C0B7ADE1DD5B97E16CCB9A0E7EB64A97AFEABFBFB2DCFDFBDDB3F47CF87D773EBDF4F6E6FB7CFF518C31F0BFF1DF41CD0F3EED8587CF7EA1E3D87FDF950F57EA97A6E5AF1B3EBEB2DA61FF65A5A72D08FB43A15A11F786EBC9EFBF8339BC3B65A1E757523140FD8669BAA7E797AF17CDF97EAE73A4DF7C7C4B0D77E5BFBBDEA63307FBFC378A0E7A7F89A3D3EC7BFCFA3FF667B1D5EEEAEC74BFCEDB0483D37ED9666F8E731FBFCF5DB7759EF4F88F45CB95A7DBD8BA6EFF6B1CFC3F321B4CFFD7D53959E6B3B69BADFD6B7FF69A17951A01BE8F929CA25A03C415B3D8FE4F5957D1E8E61E8F93A59A29ED7F97B63FEF69CF727446B9594B3D1D7BB68FA6E1F3D377FDE9D8B571F73FEFC3163FBAA40CFBBA3B10B7F3BF8F321F67EE97AEE6D74D986A1BFDDAE03C594C4E852D3B90DAA7556B78D5FF7253DD7EB5F3CF9E5D91FAE7EB3A5E9BF64DB77F5B77B9F5EE86F575F7B9F7A6883EBBECA7F1EF3B787C7A3A9CD739F73D00FF4BC3B1A8BB1CF21761EF8F74BD7F370DEDCFBDCB5BDF9DBEF7AAC93EE8BF282E8B5CDD76BCEDE7CE95617D26C71D9E37EFEFC9B9B87F97DDB46F528ED7595ADAEFC2375EDA9D2C7D76FC3F564DF9EE8B97CEEDEBF1E1B5362F3E7BECD399F5F303CA19E8F79FFBC24FEBCF3B3B35E0DC492F5BC8E9CF6C76BA8AFF7EC1F4DCF4D8BFDFCB9BDEFF5DF68531BBAA92D75C77D4C7FFBDCC703A6C5EB39FE9663748F5E1527A3F9F330E6043D5F274BD5F39F5C5EEE6D41F978BDBF5DDBD7D9E7D2D0BAFFB33ACA3EE6B48ABA7ACBA19E7B2DF7DA6CEDF9F5F9F9893DEFE7D08D671D73342BD75BECB330E6C6C7C3595FCBD76E7DACBE47CF21053F1734775B72427E37AFE7F6E8B7D1BC397A0EC652F55C6BCE7DEC75DBF56AFFB919634C3FC37964CF9BC4DCD96F6AE6E8DBEC9F1FF77C4EDB21B871FB2B1F40CA7AB550CFEBE2DC53F41CD6859D6BBFDED57D1DE3BC5E2AF5FEF67BF47C852C51CF4D4B7C1E199FC724E66F0F63433D3F34ECABD6863631542DCBBAF56AB2CDFBF8DBABA8B3CF7D9C027A0E6DF1FE761F2BB276742DDBA3ECF4F0DA66BD1A84E743D5FBA5EAF990F3E74D7AAE7870C5A97B7FB5C626F9EDA5C17DF6CFC63DEF6F373DD7F56ED8FCF918DA58A5E763CC9FA712DE33CD7DEE4137A4E7435C1F4BC2DFA38B989EDB23EBD5C09F0FB1F74BD473ABC7F2EFD75FF5AAC762C8EEB679EF3ADB5A1AAE5C6DD273D567B5E7DE47D677FF729967CC41CF63E8BEC9C7F2CB9F213FAE8E599FFA6F301CF2B74BCBF1B73F606B51F5F8D9C5C39A56BF2EF5CFBB3838D3F2D3FC70F8DBD7C8D2F43CAC73DEF9B736DF351D17B1DC4C86F77D87F173D60E7BCF1EBDEEF7D93FF4FC81AA798D7FB87B2B1D1FBFBE5FC7C2FA115B300FF0B7C7F171B1E13A16617E33FCED70386796A5E743D8C2A6DF9663515A9E933F173DAFE76F3B9F88EEB1FC3C875EE7D07F70007F7B9CD0DFAEB56BC7DB904F064ECF87D8FB25EAB91FC387F8BD231B3D83FD43CF1FA88B3B946F26877E8266427F3B3C10C6C3D9F3D8FC79AC06057ABE4E96A6E74B073D6FC6FBDAE7EE27483B5EE4876B0FEBD520043D2F8BD1F53CD146CA41CF63F1ED8A6718D24703E3E2F59C7BB003B67645B964CC468FAD57B358B8D7DB75ABE49301F4BC3486D4733F9710D6596EC2EBB9AF83AAF5E786E599F1397CA6B2CFA12CE46FE7FEEB98989E87DB689D1AEBD5C040CFCB62283DF7317F6693FBBCB4DEE64DC90F27FD0E73F129D70C7A0E75E06FC7DF0EC3809E97C518FEF6D04E8F6D633E3D6F03F8FC70CA0B270DF7EFCD317F0E65E1F51C1BFD00F9E1A02DE87959CC190F57951F4EB95D637A1EAB7F1EAF47CF38B356A4E7AC573B26B65E2DA6E7B1B11A3D5F27E879594CA9E7A9F558BCBF5DAFFD6388CDAB87BE78FBBDAAFF7AD9E0779CFB98403F347FEECFBBB97DD93910E687538E38EF6F575EB8D3FC70E8F91A41CFCB624A3DF7FF139E0F613D96700EDD62E3627A2EBB3DAC5FEBEDF3305617968DF7B7931FEE402C3F5CACD692CD85BD0EFA0C3D5F27E87959E4A6E763AC570BC7265836D2F3305FF2DA49C90F67B05E0D0EE70C7A5E1273E979888D2B4D356FDA101BA7601DC8DF8E5D7E4C4A3C9C417E3810E87959E4A2E7CAA74A5E55E88BF7B7EB359CCE9F5B6DB5B0BEDA219E85F97340CF4B23173DF79FA1E7D007AFE79C4B07427F7BD576B65E8D7C32F070CEA0E72591939E93571586407A8E961F13E6878BF9DA0DF41C047A5E16B9E8F9E737366F377F7F40F9E06FEF467D7E38F47C8DA0E76591939EA3E930045ECFF1F51C08ED73C5C4C5B6251E0E62E7817F1F3DCF8FDCF4DC98BB4FA06CA4E7E4873B269C3FD7EB703BE2DBE170CEA0E72531A59EDF05B6D2D38BFBBD863FBB3AE8F9DDABF9FB05CAC5CE67BF5E4D6B26D64E2CBEBDCADFFE78332EE06F07F4BC2CA6D4F3F0381FE793C1DF0EC3E0FDEDE4873BA629B6DDC03E07819E97454E7A8E96C31048CFC90F778AFCEC75DBD875497C3BE85CA87A1F3DCF8F5CF41C1F3B0C85FCED68F92929F6B9817D0EB1F3C0BF8F9EE7472E7A0E3014DEDFAED7D04CFD7AB57BF47C85A0E765819EC3D2F07A3ED5B95D0AB656CD1E1F3FB9DD52B51DF639C4CE03FF3E7A9E1F63EBB9E5A0D2BA98A717D7FBE7E16BEAA7C05048CFD1F263742D9A8E9BCFBDAA1E8B417D3530D0F3B2187BDC4BAD83CAB80043A1F973FF1AF0B7437BD0F3B240CF6169E06FAFC6FCEDDE4716DB86FAE720D0F3B2984ACF7F757FBF19136EB7D86B7BB4F718176068F0B757E3F5BC6A8E0B3D07819E97C5D4F6F9F377EFF6FA8E9EC31884FE763860D7A3CD991BA6E7DEDFFED2F9D76DFD39FE7640CFCB027F3B2C0DEF6F87F6987D1EE666C63E5F27E87959A0E7B034D0F3FE901F0E0CF4BC2CA65CAF5607EBD56028D0F37E90BF1D047A5E1663EBB9EA6158EE4DFB1FFFFCEB8D0D6068FEEEEBC02600E8C292F5BC4B5EE42F2F2E93D6ABF9F973D6AB81819E97C51471C05EB30D8D2FD26F6A55C3902C55CF4DCBAD6E5197FE68B3BDD9E78F83FEC33E5F27E879594C619F4BABED51B6B91E05B5B0602896A6E7D270D514EED21F6DB6373D67FE1C0CF4BC2CA6F2B7E34B87A9B073FACB60FD74C9783D7F7A71D0F59737F77B7F97ADCFABF2A3A7FADBEBF3C3A1E76B043D2F8B29FCED1A2FE6DE57583E4BB3CD8D14FBBCEEFAEA72ED619F83819E97C5147A2E3FFBDCFB0ACBC6CEE5A569B9A76EFE7C683D27BE1D62E7817F1F3DCF0FF3C52D790C8475B0742D1755F1ED43EB79984FE6D3ABFBAD7687FC57450E785806E8797990EB1A4A662D5A5EC7D07AEEB1F817FD866257FDEBB9F71DC6033D2F93EB478FB836A13896385FDEB51FBA7CD6E6F7F53BD273AD51997BDF613CD0F372C1CE8192E07C3D30857DAE479F3B023D5F36E879D930464209709E1E33B67D0EEB043D2F1FE6D32167F0B1C7FBA4CB670075A0E7CB80F974C8113B27EDDC9CBB1DB9819EC318A0E7CB019F26E404E76335E8398C017ABE2C18432107380FEB41CF610CD0F3E5C17C3ACC09F3E5697DD4E533803A52F4DC72033F75F512D0F3FCC13E8239E0BC4B033D873190365BBE40D36CE50DF47A7EB7ABE3137E07F286B115A684F32D9DBA31143D87AEF8F32AB4C1F1B7970FBE779802B4BC1DE8398C01F3E7CBC7D60B69BC05188BB9CFF39240CF610CD07300806909C750E567352C372B9A0E5D40CF0100A625A6E7C26A227F17D43F0548013D07009896700C954D2E3D57FD148036A0E70000D3F292F9731801F41C00605A7E40CF6104D0730080E9787F75BDD5F32A4D47CFA12BE83900C07448C7D173181AF41C00603AD073180BF41C00603AD073180BF41C00603ABC9EC7341D3D87AEA0E70000D3210DB7B8B80F6767676F7663ADF8ECE272FFDCF2CAF85C3373B71DF2063D0700988E237FFBDB77279FA3DBD015F41C00603A983F87B140CF0100A6033D87B140CF0100A6033D87B140CF0100A6E3FB57F767EF2F2EB78FB1CFD173E80A7A0E00302DE46F873140CF0100A6A56E0C45CFA12BE83900C0B4F831F4EF6FDF6D6B9EABF6397A0E5D41CF0100A6251C43A5E3E48D813EA0E70000D312DAE7A6E1F6A87C7073B70FCA043D07009816E6CF610CD07300806941CF610CD07300806979819EC308A0E70000D352A7D9E83974053D0700181F9F0F0E3D873140CF01008663ABDB6FDF6DEB9BDBEB7DBDF38BCBEDF3379BF76F9E7C7CB43E2D64EE7D803241CF010086C3745B7A6EDA1ED65F51DE98B9DB09CB033D0700181ED372D9EA4655FD1580A140CF010000CA073D070000289F2E7AFEFAEDBBFDE790C6D38BCBD9DBB014E84BFA3357E84BFA724E4C9BDBEA390C77DF04F4E5DCD09FF4658ED097C3F66509FD79F7EABEF29E24274AE9CBBB0262764AE84B3B274B382F4BEACFB9DBB094BE2CA18DA5B4B3A4F3B284FE2CA18DA5B453F32873B763097D493B87E5F1938F8B183B4BE8CB5228A12F4BD2C912DAF96C97B321774AE84BB3CD4B6867096D2CE5DEA894FE7C5AC87AED12FA923173D83696729F59427F96027D495FE60AFD495FE6087D396C5F125F381CF4257D992BF4277D9923F4E5B07DF9FF018ADFD6F7 +MediumImageOriginalSize=158000 +MediumImageWidth=250 +MediumImageHeight=158 +MediumImage=789CED9DCF731CC775C7E72FB12FBAF8E24B72480EC92139E4905B72B08F712A95522556B9AC72A872A8B814398A542CBA2C3B45AACC206650054386A950940923A460C12881B0966040D04B2158C05C6E08820245C1A448D1B2405262FAD33B6FB7B731333BBB98D9E9D9EDC3B776767677B6A7A7BFFD5EBF5FFDF3B9F960B5B6E1347E5E8236FA768E5E1BCBD24EDAF8AE7AFDE4D1E3CCC0F5EE7DBC9BF935B3BC1E585ABE94F935B36EE7CD9D3BC1D5CD2DE7DBB9585972FE99D3BE95EAAAF37D491B79EE59B731EB765EDFBEE57C5F8232F0E73777EF67FECCF3686719FAB22CEDA48D79CC99663B917172CE25B8DA2EDFCEF2B57156E9B06F4CCF04AF9D3C15F91F7C3EBFB0D87A1D9F98D4FA8A1C737EE6ECACFE3DD779E5D8987E6F5E17999CD406AEC56F0472AD57A74E6476DFA6EE22E7F29C433D3C5C02E3FFA5438735AFA274257807D7E01CF8C6816782F57A43E3EFBEFA94E624E7B9C6B75F7831F8E6C167F5F7F99CCFF87DB73608D7655E00CC13BC729D2CEED3E6B5E7B9C728011E2297E129AFB61C141E8F1D1FD79F037E93A54EC1F5F80FE689EF1F39BAE7FA9C9B0D6D67FD021D44EED9F3DC63D4203C87CFC8549B1FA23F8B9C159D3AEBB583CC27B4C76E07E7F7FB9F9EE71EA30CC63876AE387BB10B1CB079D9EF35E2AEE7C23D7A78E409C6387E0C74E3B8CF5D68A3E7B98747FFE836C65DE080E7B987C7FE207630D6C751FE74F149892D9C5790B54FBB5B1BC57F273E3BD6F0716D8EBB8679EC79EE314A8033D8B9788DF2738B6F5BBE03C73937C89803E1B470DCE4BAB7C3797874C7A88C712FCF89752676BCF876780C1EA332C63DCF1F2BFD073F2AF1E39DE76F6FDF0ACE1F1B0B2E2B9DA9E8367AE4835119E3A3CEF3EBDBDC27EB347206F67E0ED73FBA7BBFF0767AE4033316254D8C6A59316C3C376D13D714DE4BC0EAF48C7E6D5496828589597D5C33620E37D4B576813A6E417D774341BE7333877C3C8FC1017B9AC4B3F662D72A1B86CD0E87CDD4BCA724D4D573E5F5C39D3BC107A17F622D3C073E52E7EE28DEEFCCCDB7794E9EBA91EFF05E09FBC863F41025CF8527AEF0FC9AE29629877F69E4062E851CFCC4D0ADD3E6684771D4BC673EBFA4F439D6E7B763E4B6E7B94719C0B8C6D70E5CE5B9CD25DEC371DA4CCCE2271FEFB6E4EDFBB43D650C43379EF77B0D0F0FD710C573F3B3BCFF1F390957DEAF37B4DC4697DEB2EAF944F15C8ED1B9F93EBFE73DF103B34A06D3F686751DD1CFC5AEB6E679EE312228DA0E073FB17D5D387926F8AF177EA0F1DF47263BBE637389B94074788ECFBDFCBDE0ED43875BE7A6955ECFEB35ABE61BE736D43C0078BF1E717F1F85E7980F983FCCB987E30FAC3843A7791EEA3ADDF41BE63FEECD9E5F3D860745F35C305FDB094E3D7EAC31BEB1D3F159165C426F601CCB3A7B5771FD8192FB0FA6675A6B7B8E053B4AFF87DF8079089BBCC05CABBBCCF34FFFE44F8307478E36ED17497DA33EC7D6784BDDA7E95B28BAFD1ED9C1359E1F5E5A0AC6566F74F8043E48F05DA1839BF6F238887EFFA161A3DBB2EFAFDE087619EB0ADBA11CFF6D1759E80ACFB72C3F0A7AC9679FFB7CF0E917BFD8BC27F57E3DC6E7D2B07D870AF72D1F53A3BA16CC9D5C0C16A62BADD72BCBAB5DFBDDC30DB8C4F3D77677837F5B5DDD23CF9380BE49CC1A7AFB7EEE5D709573F5466B5EE81623E30ACFA3DAF1F0C0334D3FA0BA9F6EBF15BD25EE3BF73E7E142C2D6F07AF9DAC05AF1C5B0EBEF37225989D6BF65323A51FD3A338B8C6F3A31B1B7BE4F91EB99B11A2AE6BDEB3AC5B411CDF5DE639EB91DD70DEFA24C1D768DA22FAF96FEC2345DFBF47329CE1F9E55B5A8E837F3FB7D9F1595E5C4AE33FC777FE3F4A5F781F1B55840EEF22CF596BC05BE4ECADA913C15DE46DBD91DB7F7B9EBB0F57782EC0169EE447CB1251D7BD1271EED197BE1C3C98988CB44DB9CCF3778E1C6DF926F2FC6FCF73F7E11ACF4DFFB6206E9C329ED1ADE5FBE4E22F86B1E78D5A726C3B605D2F6BD355F55B7DEEF878AB1FD6439B14F6ACCF9E7842DBB33EB26C58EF396287DA0F97E943B31F7B85E7B9FB708DE751B0E36278250E6E4DC9AC8B4ACEC257F99CBC847EF6264AF2233DFCFAD3C103350FB8EC6B8AE279CBA7D6652EC24FC85C277105BDC2F3DC7D9485E7ADD876C5696436F57B56D46BCBD7BB8F7DC7B0496B3F7ADC35380F1CCE4D23F7EE5DA3EE51CBAFF67BBF9F895F6D2B462742A7F23C771F65E0B909C616B27C4FBD6DF5FEC2D4896035DCB7E2BDB49C24365EF183B8195BEE896F1E68AE38EC3FC2E666FBFAE1F8C34387BBEA2177EB8DE08EE2F55D63DEB47F835F0D3FDAD8F14BC1F78F5CD0C0CF463C633F3E4D8FC1A28C3C97637888AE894D9C312EEDA7166716B627FC4CE4AB95C13F1C75BF7A5E4AA187D087AC7D2E1C1F8FFD0E3CBFBE7D5FE3DDDA8EE638C77CF68B175E2CFCFE3D9251369E233F4467C4A68CBE0A0FE5DC9A715C745B7305B21BFEC2E3D0FF1DF51DD623AC4BF2B42D78BDDD7D948DE71E4DE8B546B8DEA0E6CDFF4E4CB6ECE5E836C868E42CBA4EDEFA88E7B9FBF03C1F0ED8FE73FC93F09BD70FF761A34C03CF73F7E1793E1C885CA7605744C677E1B9CC09FDCA7DCF73F7E1793E1C88E2F9A77FF4C7A9ECEDFBCD4BF53C771F9EE7C301FC0255632FA0ACFDE7E4A59E9D5A087E726C3678FDF89C06B9A9E8022EF25CEA1461A790D8DF3479C6C30A9BD733465DE3A53EF3973C068FC8BCD483CFA6CE4B850F71B52E017E35FC693367EBC1AB53AB3A3795F7ACFD5DF4ABE19781D7628BC467889F7F5479BE68D422178ECB675E9E97074979A95A074FE0B0E4A5F66BAF2B5C9E47C4E5FFE4FC8DE0E8C64E077E79D9DD78C6BCE1F5F6E140625E2A35E9EB8DDCFE7B103CB7F7C46AF915890D086B7B9BEB8CC9F3755DB3446A9181A55AFAFA25C306CFF3E1405C5E6A549E6FD6C89BE7EC71C9FE771DE7C338A1B8DC869FADEF789E1BF03C1F0E0C735EEAD2F2E3E0D5A9E63E78D76A5BB179C6B63CFFE7D959CFF3109EE7C381483B9CE21FBA6D379DBDE8BC54B18D27E1EC54F77A0236CF7FB8B5E5791EC2259ECB9E8645F74919F15EBDD131CEBBF9D5D68DEF179D976AE627EC0736CF8F351A9EE7215CE23976DF6D631FC32C80CEC7FAAEE87E2E0269F3523F54FD6EE7A4A6C94B5DA9DECA242F350FFBC13B8AD3ACD14D6C6CDE2BFC99140597780E74BD8788F3BDFA3DEF7D8CCFF071303ED1B4E1D8F6DA9140CAFA18E4DFE26396BDABA2FBF3919A2F7FA7FA7157E7A3AED7EFE8633E7391E7D419EA771D328C288AE7B6CEB516EA86EC9172356C87997F7A2EACE52648ABDF63BBC9A2BDE81A002E00D694725CF4334C82D6D9F13BE518F3B45FBD3D0F9ECBBE5B3C1FD97F8FD7518D932992E751E7E3C6A3DD96B46363ABD6E8FA1DE414B15D49387BFC74F0FAA11F063F9F3813FCF4E509FD9E63623FE37EC3758B78A6765E6ABF75D9D3C2459EAF5656F5331AFBCA3FE8E7F6E383DF0DCE3CF7A2E7F9A3E2792EF2322A2EAB5F9EA7F9DE998BDB7B62A7B200D72DE2999A79A971FD99250AE7B98F87EB8A41F2DCB487453D5BD9EB70CF9C4B5C266B2DE379A61D1B66FD19BD06A877DAA5C18973CD788A7F9A99090E9C38D161A3ED05EC0DC735C46F3BA664FDF78F1CD57902F25FD732B02BBB04E690BC791E6547D57170005F414C3CDC772F5DF2F6F64783E5F94AB573AD9C7A0EA706A3D880C3584EBB96733FA096E4AB53278279354ED8F3E9C7F7EF072F2D2E6A5F0C7E57C0B95E784EFC15634BE2B0E6751DB54B3A6FA0E8E79C17D01BF69BC79234162263E1808F87EB0983E039B66E9ED5FCC2E360ADD6ACD1989AA7F5468BE7BF0B730CE13A72BF1FF963CAF3EF283934767C5CC9DD45BDB7DB3F9E3AA5F1F763639AAFB6FFB51B9827FE657E5EEF1127F29CFF40A6975D9E5F8BC94B455FCA539EE3177DED645346346AC9F1345E9E17CB73C0BCBC5E4FF76CF740C98CFB4A2EFE56CDDBE417C2736234FB1AAFC658807FE34A37406F87E78C0B746FB8CAEBF8AD5B3DF11C7E03912393BFA8EA3AF363C61E2F65E639BCFED19133C19117DE08FEF5C0947E2F79A9ACB99807D833B9D76B27E5C302FCA3DDC68859EFD7C7C315C7731B513C4746C7F93CFBB5C32501BD1D1E9E5263029E238F4D99DC0FCF4D3DE0671737F5F587456F272E667E6153FB12E41CF2FCADE79ED77C47C623EF8B98876CFF267ABBE7791B2EF13C291EAE5F9EDB7638539E2367BFAD64D12BAFCFB7F476388E2D4DD6EABDF01C8EF33BD117D1DB5F3A7458CF276597E700F93D3D31AF21E7449E6BBECFD5F7CC0345C1C7C3C5F3A7689E83B878B8B53E78CED83B3D5D535C8B9E3BE03976B2372F6F6B9B1BB67600D7E12BFA37FCEFD50E27F303D745968F25EC7F501610FBF6CD8373BA8E0CFDC92BE7D1B9DF3CF8ACD69BAF2A1EC91E0E122B5714B0D5D686448FCA02513C47D7642FC23C794E3D33535624C5C301F66348D2D36C601B223EA4BA7049CBA1E5B9650D539E236767D53A01B90BCFFFFCA9A7823F7BF2C9E0E9C9496D8BEB55A68BCE0F449EC3716C006597E7517638FA330B3B9C47FE60EC5D55FAB2E9E385E3F742BB465EFF1B278FB3DAC38CB1C75A7F796155DB8ED03519A7B61D4EDBC9141F91DBF8BDD1DD85DFFDDAE1646ED0D73D79AAC3DE9E66BF6617116587AB9CBDA06D2A2ED687F3E8847059E477917A3BB2016E66119B283C5F59DED46B46EA175EB5D667C8F215354ED1AF451EA377C377B8DAEBFADCB6C3715DE611B85EF473DE2FC863A11FA901393E51D558ACDCF0FB2896042EADCF59EB65158B6DEAEDF87A90E71C9BF21CFE81575E5FD0BC646D0EC77985F3F8D67AE1B91D0FC775C5473F0C7A3B7A3A329CBE447FE7BDABF55E599BB336649D8ECED12D1F6FD8E102CF251E1B9E67158B0DCF79D62283A2BE83AD9D353AFE2FD1DBB1A5890D4EE2E27AB1C3C9EF4CBF1AFF51F473DE2FB0ABBD76B2A6F3CEBFF5DC7CF08D03B33A1F9D67E622CFDF387B29185FAC05C7E7ABC1C4525D1FFFAAE6E3DBE5B8089E13F3427C1CE3256B79CE9A92753972089964CAF357D47F226BC5AFF6B5F1710DE432EB7464B31D5395C60E67FAD5589B0F8B3C17BD081B1CEB74DE2F2DD482375F28406FB7F68BB53FC78F66DB57BCFFBC7D3C289E9B7CDB201721A276D18651BB08FB15FA57DA5A85F09C18D9E9A98A1E97FFF9F24CB056A9EEB1C349DC2BF6F6278F1ED5B676F1ADC1D7B43C478E8BDE2EF6F6F13717B40DC0B4C3FDA6CF5A8B2E007F19EB726C1DC8765E8F1DBB10FCECE0F3B9FF37F194667E44ABAE33F9F5E1D8B1E3E124FED8F3DC917A32EC27C033B3786EE727886C49734DE1F972A5AEE3B880FD1D746A8987139E0364BAC4C6A5B5C5F15D7C717FF3BDEFE96BA01F9C3857D575D8E633AE85E51AF2F6AB99F911709D9A02513A87CD739FC7D2860B3C47BF267612FBB89983CEDA0FF92DF6F75E79CE75D1D70136B8F76A1B7BF4F66FA9FF459E330E90C392CB62CAF4285EA313321F20FFE136BFE198353E321D9EBFF27A731E31FDE7FDC873D161E813B163143D6EECBECEFB3FC867E9A53690CF57EB840B3C671C3376B19B6117C54F03EFB19592B782BECEF77AE539D74BF2D1C1737848FEA819F72AF1AB8C9324790ED7F91C6E23C3991B7885F75C4FF252E179C77FC353595BA6F02192B7C3BDD017DCD76A4CCC6051A04D3C43D645003B7C1E36822BCBC99FDBF25CD64F9EE76EF0DC84D6DF636265FA91E77BEC49963C878392978A3C16FB9BBCDA63250A7F75F8B0E6363CE73780F327CED5F4FE75CC25F29FEC41CC9A92B83FEA243C48E15B5F56E3737CA313D305D5AA8902F653F40C6C21C70E9DD676CF226C857E7D1E8F41F15CF60B207E9D71BE11C6B1AE19CF467340F1020EDCB69E1B31B195A9D3C1C59333A99E3931D7E803F67933FF1C8E37FDE74D7B3B9CEE26C3BBD9E2D005C4AF26F676FEA35F7B3BBF3935576DE90EF25FE8A5458F1D01732A3C5FAA34B4AF0DFB1C35618B6C13FDE3EBB7B731309E871CA6C60F7E907A846D4A6C71B1B92CD8CBAB6BA9FE8FB1D74DF6CB5EB1E23F97BC737B5DD74B3C1CFABEC8117D5DC5F1D984FAC2D8B0B15D135B16F56C8853647CC273D397EF12CF91E7D80EB075C2F3A2F2D5BC3C4FEE1BBB9FA23ECB1A511C64ACDC45EEC7D8997AD5DBB5BE10AE1901B6B8B5E5D58E3C16E42D716BF05C72577A8D6B1788DFDD8C87231627C97F2EFE6833D753B01CC6E522CF914DE6FCE312CF5DCC63A17F7E74E78EE7790897788E7DE972C27AB51F3B1C39D1E450BE31BDA163B9909FF21D91B592972A7A7BBF3CE7B792CBC27BAE2BB1B571ED44967FE7E58A86FD19FAC67535E7313E19B366BB3CCF9371FE622338A3643AB650C1FF15BC9628122EF11CBB99705D6CECF66F7AE139766A7C6AC4C421CF6D3B1CB9E192978A3CC7560ED7FB5D9FA30B20CF45EE725D7406539EDBF96AB48DB8B2A87A4B6BE1BA02790ECFBD3C4F0FC9632EBA1DAEA0289E4B1DC72B06EFF09FEFA8753B7CC7AE83FE7EBBDAD6B397D4E7697311EC7838F1F5983CC70E67E7A5EE579E9B3174C27374F738BD1DDB3436EAA87A4B15350FE197133B9CABEB731779EED10997FC6ADACFA4641F76380DC5C307B6EF3925242F757E6E43DB7FC967B1BF439C9AD49391FA7070C95ED7A585ACA1858F524F663121A75EEC70C0FE8CB5B9D8E16893E7B947BF7089E752ABFDC1B1B1E0D1579F6AC6BED61B7D5DCB8C8743668A4FD794E7C8F2A61D6EBE658743A6DB76DA5EED7092CF2AF5E192FC6A497ABB6987439E7BBDDDA35FB8C473C6367170595C4BEC70E45D44C972803C677D8EFF4BF66980E3FDCA73F1BD0BCFB9AEACCFE3DA297638A9B7663F1BB1C3713D6F87F3E8172EF15CF2D0B3B896C87391955223AEA2F09A7ABF525DD31CD73C0CE3E1B0C3F5B33F836D87B3F352CD78B838BF5AD4FA7C43B55FE4393ABB59F7C2F3DCA317D8BC663DD9B27BE5BCCF669E68E5AB2DAC062F3F7752D734834BD34A7FFF967A0FCF897B35798ECE6EC6B3F56B876BEFC7B2A8FF03F463879B516D139EA363B81C0F97DFF87C1C5CDD2CFE1ECB0E89093339DEEEE3F2FA25C40E377BB669E3224E0B98F6AE95D0962F792C59D9E144BFE6BAE80C69E2E1689BFDD97ABDA1F3DB96C2FDDF464D6F87DFE3134D78AEEF0F2EE9ED5942F476B3FE09B2F375F5DEF4AB612713792EFBAAEDD70E67EE97FA8D03CF24C6C349DBA2E2E1162DBF9A99233B0A3C6F8EC1DEF2513DE2FA7178795ED3FAC98E8E85435E52B3D4FC0E72161D86BC32B1C3218FFB95E770D18C87439EAFD71B1DF170663E3D38335DD5F5EBC68EEF5D23516F5BEC70CC4352AF0E9495E792432FAFDDE221AED5B6348ABEC7B26398792EF55EA576BBBD4F83C4A49A76B8FDC4C3C173E4B9F09CF983B9C4B4C35D566B6E335F96BA7871B96AD585C50EBF9AEC07055CE439BC8DBA0F3327714DF5C73B4A8792B8C75FA9FBDF323E5FB77ECBF7A262233D7AC330F31C3BDC7AFD8E96E5AC836FEEFCAEE33B5743DB7E45C9CB13EBD983EBD2872BC638A5969959B730293653DA7759DD837DEDB72EBB535346F252DFADDED07977523B8E635ECD9A5DC44275D40254BCDF4DE031CFD0F37CFF18669EA78D6F96FD21F28E87D6E39ABA85616E2EE7D2FC27F25FF6A92ABA5FA32079A9CCA9C42A00382EFB6374F0BCD6CC3B7EF4A52F078FFEF6C9663D82041EF792D3E0110FCFF3F69A318B7D60BA42EA118735DF1A3DB47120EDEBB3AFD37E9767F2CE91A33D7DDFF37CFFF03C77A3FFA5FE5B19DA1CD5D769BFCB5CD5CB5E1C9EE7D9C0F3BC38A0C3DE4187AFB7EB14BB2AB3BBF5755ED7F63CCF069EE7C5416A69C173EC4DAEB737A9AF79C5CE91646F5F56F778897DC9A74E687B88AE29A27EB365E41EDBF6F64BA17FA2E87B2C3B4692E7AC8D8103B2B3CC7D6CF6351CAF549A3638E215A2F6C52076E0865A9BBC7FE8707053FD069087BC9BB08F85F8208BBEC7B263E478AEB82D3565771DB8BF2B0EB481F53248BBA7950DECEDAC37D86B913AAFD8DD6D1FA6F95FCC09BACE408A9AD65E6FCF0623C773B07DAB29431C90E7661BAF6FB3CF7876D7D67573654F882E6D201EA5DFFD1F7A599FE3D748AA0118D536CFF3FD635478BE65ACF9580FD6ACDAEEEF67940FDB2B442F5DABEDEAFDC366E79AFB89F57A9DDB4A4ECAF3031F297CF6B9CF079FFEC11F367DF6E1DAF7DD083422F6B0BC6FEC6109CCFE33811C4FCB73F6DCC10E01648F996EBFF13CCF06A3C273F35ED04F2F5863CC857B255F03AEF723D3A3B8F0E917BE103CFACA5F775D9FDCC5EE6F733D227685FC00EA76108F4FCCDB99B34D0E0ACFA3E601BBFEDFAF952CE715AED758AB1B36B8B588DFB3D786B7C36531B6468FE769DE1781FDE8ED513CD7B67C7CD55DF4F6B4F176F09CBC20D6DEEFEA1C9DA61F9C1A40FC161B9CCC01C4C3116F6CD6C969D5FF03C7C69A36922E7BC94ABDD0A29F4DD9E1795EFE7B05915C507A8B8E2B0D65755EFF2D76B8AB9BF7741E017300F6767995EF6183634E81DF0F52C6C479BD3D1B44F19C1CAE9BE17AAFE8F6F50B93E7B2DE6C7D5E6F04F7CDDA0F6A6D7EDF88392F234C2EC039F462E24BB57EACD62859D5E38AEBEB34DF637DDEABADCFF33C1BE8D8847A43D73330EB4551C76498786ECAB3B8F72EF8D9FA85CD737C57F05BEC8E49B1A67CA66D91EA37FDF6759EF7E579BE7FC0656A19900339AC7A3BFCBDABD6AABC47BEDD0AEDCFE8908CED5FABB522EF6F283D06B9D76DDF74E7A0E6E4282E900FA6F33EBB3C47E4ACCC07FDF675DAEF4AFF626FC71ED74DBE7B9E678351589F9B3C678C09CF656C0BCFB7C3BD7ACAC0739DC72DB9DC8A2FD46BA81A3A99F8D53E7BE28948BFDA7ABDBD3F74239C0B3AFC6A73EDFA5A497E357401FA9AFE8AAB9761D699D8C4AFA6E653E657E659E6D62DA346A11DF7CABC9CE79A6354302A3C87C3E48331B6642CE3B341AEC8FB5FBDF0A2B63B17DDF6D4105B7A8C4EFEE82FFE52EF67D34D9E7F506FE8FEB96BF445D4FE18D8DBB19F036CEAD8D6D105D86B1EDEE2737BE9D0A2DEAF923A58517B4332273D3C743878F8F5A78387079E091E3EF77C579BBBC7FE310A3C87071B4AA63126756CA77A8F0C933A65E8BD0D6C55F586F372BC2748AE3B48B82FFA89F9EE7617FF5B525FA7FD2EFD8D0EA5F59084FDA8B200356257AA9DF729B5ADB85739EE254FB6AC18099E47DCCBB0F9D54C881D8EFBBFA7F4E2BB39FBD57AE1B9C4C40DA21F88399A39DB8E2F4497E3BFB10930AFA1CF6DF4B037679931289ED3C7F4296B5FA9A9403F9B7D4C3CD8AB53D9D4EACE82E7C81DC605F1D88C8D6EB124C4B8BC31DD1C5B59C6A9F70A78CE38C6AF2D36F73CFFCFC5FD588839623CF12C643CFDE4FC8DE0E8C68EC67F9C8BDE8B6B5831289E9F5B580D66CED58237DE5C0E4EFFA21A9C9CAE046FCF5D6AE548C10B62BBE139F3703F31DE1DFF67F1DCCE0BEBF61EAC551BBACDB49536D3F6D98B9BBA5EB309EA3DF27DC613ED07EBF5E29FEDA0E022CF05F30B6D3FD2E4F97AAB36EF0987EAE50E0283E2397588A93B2E7B96C4ED3590554DFE3D792C96CFC8967151324FEAA6D366732F14D98B9CFACD7C6E8E9951DC57C0299EB3D6C61611AEB9890591FAF98C37CFF3FC794EFDF1AF8D8F6BB01702F32BCFC1DCFBE9EA6636F58AA57E3B35DBE7A6E6B4EE6DFA6B449FB5DF23D7D947953651371D1ED35E734F62F645797A72529F87EFE32B9BBA76337B3EAC541BFBD645CA065778AEFD8C6A6D2871F3D824168DFAF95E9EB78FF3E4B9EC4D049089F43B7C9A377220AFC4F860E3C09ABF11FAC6C1B5EA5ACBA72BFB28CADEE7665EEA452B2FD5E4397CA54DF09C36B37703DC667F04D9C381F673DEE439E3C9CEB91A85DAE3DDF6692802DB61BEEF5B9EE71A45F05CF636E2DC4D5DF7BBD1F775E1F2351D1FB2A373A400E30D1B94E679A5DEAA234E9E05BF91980EF33AE67B62036997EC3B0E9FA5DDC273F8CD79F8CE98B9A7AEB912C1E9AD21B2E3C7019E4B4C5DD1600F6CF6ABE395F76FAB31C09EB89EE783E339BC605F22F477781225CFB1C39B39CB0D35173FB0F0A192C5F2393160C86FEA1509F83F780EFF2B672FB4F61747878F1B1FB2FFD1D57AA3439EB3EF1AFB31A1A3CBFE883684E7D723FCCFC3E4AF8B83ECD35034C701FBDCC371D1E12A6A7CCD86B17D93E7373CCF1FE5CF736438F28F57D6BD9C235FA6635F22EB3F77D4FB4D351F6F86F5DCEE2BEEDE0EB99DF47FB28FE2D45455C76911A32573409A3ED1F93CE17EC4E8EBCC51E61ADDE679DCB56E50CFA2DE28FC39E709A90359748C11F17AD4A0E479CB3ED33CC7C5301EC7DBE1DAC779F1FC62A5A6E4EAE9E09DCBDB9A3F6023D4A35B50FAB2C462CB39BDE60EE31BD0C779656DDD6DDD9B455D67D1DBBB2176CCD41BAD385262EAF1C1D37EFCF0E0ED43878722160B79EE82DE7E657955EF9989EE861E277AFB78A8FF7979DE3ECE8BE770B4D125CEB1954791413CA40B3CA7F692DCD31DC35E0827C030701C08CFE3EAB70F0AD860E1F8B143A7B5FECEB94E3B9CE7B91C0F6BDC6B5744D434DEB73C57B81FEEC3207B350E63EE95EC975AB43C87E7C873DB0EE7793EDA3C97BD3B751DA370FD8F7D1C9F3E10FFB9D80E41942D2E69CC94B90FD3C2153B1C3C171B9CD85C2B869DD7F3BC7D3C4A3CD7909C2E43CEC2716C83120F47DC1B3638D3AF863D91F3D81493C68C0BFB30E40DEC0CFB5D236501D30E479D3ACE318667C2DABEDE0ED73E1E399E5B5855F3BFE95783E71227034CFF39B2DD8C9321BED2AEC9300A7132624F2C5A9E9B7638F1AB5555FFB7FD6ADE7F2EC78C71B34E5CD1EDEB17FDF29CDFACD71BDA17BEACE4F9F84677FCF8FC0DED3FE77745DF7711406F77C1EE1025CFC16C58F37394E5B9195B2E1C97CF46519E9BBF91DA462EE8A42EC3253B9C6D6FBF526F187E352FCFE5D8F3BCFD9BF5EA2DA58337FADE5F7054E0A21DAEBA70A9C573915F9EE7EDE351E739329C5C78D903899CF8226B469401AED8E1D8AF95BA74D4A8437F97F33E1ECEF3DCC67A9D3AA8C880C6BEF6351C25B828CFB1C9893CF7F96A9EE751FDD1CE85F7B23C0DC40EE7C21A1D9ECBDA7CEFFADCFBCFE5D8F37C634F3F7874EF6B17E2DB01B989C0B4C3B5D7E79EE7723CAA3CBF5C6FC6BB8CAF345AF8E9C5EDDCDA374C70258F05C06F782E792CF0DCE7A57A9E0B887D23B64D62DE781DB5B1D02FE0B92BB591D93F02FFF9BBB5F6B3F3F1709EE702C95921FE0DBE778B67F568037B7BD16D10506380FDD9372A4DBF1AFB387979EE792E20179EF9DEC45B97B3A94939EC70A50EA4A9BF4BBD3F782EF1C89EE7EDE351E5B98C0D7247A90141FD2A30A8BD43CA8C41F1FCE60E3946F19F9B357C3DCF3BE179DE84EC0764D64B68EDC7E6C0FDB80A6A45B13ECFFB7F886160AF9BF189660C13718AABE1FEB636B7CDE34E3B9CF79FCBF1A8F29CF1BA11E63B78A4EF33D6E683B2C121CBD94749DEDBCFD77C6F1E4BFD416F876B1F0F0BCFC93F71C93E346C80E36F3DF7FCC0EDEC666C625A9EFF26D4C9CEB367C75C35383B5D09CE57CA3BB6FBC1B0F21C508F8D3576D1ED18460C528EC7212DCF05F67EA945F7E12031CC3C073C4F2FD7B3C3A075F524F4CAF351C6B0F31C78B99E1DE0B82BB2D0F33C3DA278CEBE43D44719169E032FD7F70797E4B8C0F33C3DE032760AF613139E93C7279F15DDBE2CC118F55CEF1D45D9DCBAC1AEB1E9791E0FE1B9F81887516F37815C67CCE277F34887370F3EEB1CC7A3C6A7E779BABE1A059E7B0C0F647CC269D9CF4A3EF33C8FEE2B39F63CF7280BAE86E35372626B615E1AF03CEF84E7B94759B14BFCA2B117B5D7DBE3E179EE5156C81E95F2DEF33C1E9EE71E6585DE1F6F62B2F5DEF33C1E9EE71E65053C7F78E019BD4E67AC56D4FAFC6ABD996BE8C2FE302EC1F3DCA3AC48D2DB3D3AE179EE5156683B5CBDD17AEF791E0FCF738FB2622B214EC6A3139EE71E65858C4F72942E4E4C7A9EA7E82B39F63CF7280B647C6273937D9F8A6E93ABF03CF7282BD6BDDE9E1A9EE71EA58392DD9F44C86FCFF378789E7B94021FEF6AFBFA03B5167F70F254B07B7636B8786CACA3DE2BBA7BE1ED74149EE71EA502F12FC4B4FB7ADB3D2189E7D4C395732E817DEB8B6E836FA76F63D9DA19C7F32C409D1A6A50E535376585EBDBD9EFB194753BA90792755FE6D1CEB2B4F1660E7A7E1ECF3C8F3666DDCE3C3899C73597962F39DF4EC6E57ABDE17C3BA94D5486B95DF66F70B99DB4316B19441B654F7897518636FA768E5E1BCBD24EDAF8FFEF43BBE7 +SmallImageOriginalSize=57000 +SmallImageWidth=150 +SmallImageHeight=95 +SmallImage=789CED5D6B531BD7193E7FA8FD4B6DA7DF3AD34EA733FDD44EA6B9386DE3B163E2B8BE24761D9B5087382436259810C2CD5CA2C802031202490849AC2E0884C45DD81DFA3E873DCA61BD2B69A55DED4AEC876724ADA4BD9CF3EC7B3BEFFBEEDCC2124B2A99BAB1128B9BFA3D3067F218C170C4D6FDB7EA3A628994EDC7307B1DAD182B1C2341AFC7AF4FEB467E67D7D4EF01B3C7C86D176DDD3F90C9176CBF8E46CECB8D6395CAE44C1F431CC73FBF50F9ECA17D8079EB7DDCC7FE3B3854D90679D1F3A8977DD6DDC3AEDFB8C9BE1B1965573EEC62376EDD66EF5E7A9FDDBDFF807DD33FC01EF53ED6DDDFB3E111FEFFA70383ECF6A7F758642D51F7B96879255E3DB417306FDF8F8E731EC4D653FCF3F26A8C3DEC79C47903CEC5538A299E82737D4FFA2BFA6CD61FA84BEE78BCEA1C60DEC09B974BA173F36BB5FEF17875B180793B28BFE6BA4ADE66F57CD6B33F994B1EAFDA1B98375F609EEB2A79DBB743C31CB0ADCCDADD7AC0BE9ECFF8B8CE857E343A17F1EAF1AABDE1B4DFD02E7A70BB744AF7DFCF9F77725B6CC3E0FEF0E09E7993CFC5095EC116281D1C1B7E9FC99F929C3DA5DF9C7D3EDCD965FBD1383BC6F95920CF3B0D9837C491E1BFB9E15CC46BAB78B55DDAAFBC8E4D4EB30D3ADEB60631DA8E57C8A730BDC7392549B66E91ED70483EF421F10BDB22E4FB383D866E82D3FA4F4F0F4EFBFC7CAEADE65586EE21C115D8953155E61C924FBC6F1023DE96CE419C0FF4608EFE7B7874A2FB3B0FEE01E60C3134C4CFAC9057EBC4CD08F90981EE1E56507595987BF1BABF77C84203832C473C99201F25165AA9FC7F937CE4347D4E4AE790A3F747A43377490F968887C081AA3F9DE2D51EDD7F2593EB26170956EB418CF7C0DC3ABBEB0BB2B978E10D3E093D07FD96273E6709E27BFC17DBF7C09BF149764C5C3FA66D27642F1C91AC5B191E61C1FE012EF7D6A6665BC2AB5797DE67651D5DBB4332384DF70FB7F51A585FEC74D8615F7D97DE63F7331936BA7CB696B0A3DA5302D063F1191F973FDAED45758E14E91C8AF47E8FF8A7E8CCAF1DBC4AAAB2BB4078FDAB5FB3F2E0107F2FDB0F0AD979DBA4D3C1AB82BA6696263C79F423FBECD618FBBA67966D919E9775F645825DBC7AB0B555E15596C657FE1E3A0DB6125E8DF6B1A9635F8173D0B37B124FEDE0D5B97DD27B3D7905590B54E527F1EEA2DA7F76F06A237FC89E0F4CB07CA95C75EEABC518E4FF08D9053D5AE8BACE75622B789525B9F5B2F771C3C7F078656F9C411EDB3DE840D22129F243B18E8535879C4E9C01DFE355213B2AA5AEA56708AFFEFA163BB97193EDABE7BB61431CEB1C17B0D6A6633F415681371EAF9CE315741EC67799E40CE2555B982BFA5C44BCA1DA7FA183C8B639263955D94632AE8CF9B4312EBA4AB69FB0AFFEF78B5FEADA57053A87B20ABC17F6957F72994D8F2CB2257FA41283737A8E3B955702628C711FC306474EC70BB297B4F69711202372B5B868E1790265ACE1EAD851B806BD35A5D87A892D86B65830BCCD7D568F57F6F30A76B756DF017B1A7FD1116C175999746F9978AEA8FA0DE7B63630C80A24BF1AD9A7A707DDB9EEEC14E4781A64E4818E7F514F5CD4E395C72B195B925E7EF5F63BACACA3EFEA898B7ABC3AADAC15CAFCBAA888924D55898BFEE6B7AC3C34AC1B17DD256E558B8B627DC02E5EC1765B267F62AAEB7A4DBFD4295EC99C92B97651F1465C545D9B9701FD58ACB17E6399BC823F4C3EB5BCEDBA3FC17A327BECF6D2A6E3E3A5074F0F1AF34AC445B7EAF457B56886570905B57AEA673A7E595D3312F374D91764DF9C9EB2FBC42DA7C74BFFFC3D5E69718E0B886B68640560775C74258A3ACED3377C67314FD7E6A3178E57586BC53A9E99FFEC1D393F1602D94CCE302E9A12DF212661515C1472512FFEA207314FFF988E724E752D641D1F2FBB79857C2B5C3B72A7CA645726D4B1801E11E3A26793E4774ED937FDA74CC9393F1E5A705FD0202E5AD089F98BB8E84A74A7EEB8A8599986FB3626AD91BA1156F2EA5C9C5ACA014890BF542B0F2FADD41F1B45DE20E60C63ABCD6FB0123C2E4AB2AAD8E01CD6AB071BD195EDE00FDAC1ABB814A396F7673486589FA9AC39ABBA06B81A48B12BFE3097F9D5706365837EBB4AD8205911AFFCBF5EFDA207E827F0563E3733B08C57B86F2033253DF8C1EC5A47EB41D4CBE015B954467ED311EC10925F584F5BEC7BA2FB1BC81C9957E83781BAC76BF311B225A6799E60EFE121B755F5F0492241633DCB6EC5B2BC6EF287F1C9A679D52CEA8D5F697F83FAB66058FACD05F40727A648DE2BAF795EFAA654BF2D838F09D9B990DD466B84E772648857E0147A987CB414676F0F0FB34BE3E3EC9EA254E515F87737B5C37B55805B4EF04A1B1785CC0BCFD7B6CBE5F1CA6D9FB269DF996D6064B75F247F508C8FD61F14FBC37A5A5ECD67AFAA3F08A8F9063FC0ABF746472B32AB1AAFAEF8FDEC4E3CCFF988FF3BC1ABE1FE0087905789C04BF6E58369B611AD7DDD32F229FDEDEDE80F226F0579778DF04AAB07E535B5246D1739C77A7A017C1B1B9C67A140B4C22B51FF7F35B0C2FEDCDBCBFE36344436D44A555E5DF6F9B8BC02AF9C92570FEF4C701E21DE005EC51756C856D8A4B135DF83CE08B86FA3A82B71017FAAF18AE770D2DCA356B6D1FA41E4080B3B551B67807E14B106BD38036C2ECCC3C8C01C5BF0ADF2FFC33E420E60D7C21AFBDDEDDBEC9D911192FDF3557905B9065EA1DED7297925F4E0C0E39F6C5D1F743B30F6E81F287C28B1AD917DC9636826BE025EF986FDECFEE5AFD9DCF00C7B41FC043760BB43AFC1BE82BC02778C78753312A9D8EDF82F7A89A106364148B6103D5D4FD9BFDEFE82757FF8842DD179D8C12BC87EDCAB79A946CE6DB0C3BEC2AB99981278353BBAC456493609793741F20E32E7E35082F30AF6D5C7A1107BB4BF5FD51F84BC421F44E85027E5155EED9257E0D5C3BE51F6F5E41CFBE23B73EB1AEDC8AB15B5BE2149F7E90EEC2B7A9F52734830BE46755DE0D5C4D04BD6DFEBE3F62D78051D083BE9B26F89FDF1C103AE07FF3E396928B33E5A5AE27AF0564CE1724ED857AD1ECFB1C924F13A4AC78FB17FBFFBB0295EA1EF097F4F3E6599AE498E335C247F10F18175B2A336A103B10F8957A2BEC688579057585713F20ABC823F88F8D5EFEFDD637FE9EFE7F248F609FB5EBF26F994E2DBFED4D3C3F9776D3EC4FB4C08FBCAC9B16D369F616C528A35A8F6A99827C48A2F0AAF00C824C4A9106F470F06BCCAF16A235EC9BA44F883E0D58D9514D7839057570301F6592E774E4E4137C2F6FAC3FDFB9C7F570321DE434EC445F931908F20D7F4A880AF81F3C37A8851ECAD595E89F8D55A68DDB44E8D2E19C719B0B6D0D1BC5273CE8E7676CFD58CF33A16695D369F4A73D4CB2BF00232077106E83FF882D0755A5E01E01BB80579F649629BFF6F42F547795E1EFA8AA0D783CEB16F0452B6C581C02BC869D85AF3332B96D86F17465EA96B0C7BE8C1ABE68B28E4A7944956EDD37C721D4888F9E6788C506FACE6C877933F439FA25E55F00A7129D4E51BF98272BC1DBCD28B8B42CF22AE243E8769BEE103DF203B05BE801DF323E4957F3E6B59FC4ACC13E22F1DCD2B0942CF21CEA9EDD1514B0F62DE11A7C6BD0D79051B09B637E43DE45477A1509357906B884B20CEA0F507B17FC42CB5BCBA49F3F3E5F1B16DBCB2CB1F7CFA22CEC6D27B6C28E2CE5E3696DAED345749753FE1DEC767DC228E25D479ACC6ABEF1F4FB1C9BE313E17885F41DE801B585F85BCAAC52BC4AFB0862878851EF872FC6AE4D108BBF7CFBE4A9CE925ED1FDCBD4EBCC57A76BBF12A2DF50C7323ECCA432ED3BCBDFAB0EBCC3FAED1AB47C41920AB847D054E205E003D68465E8975676D3E03E4D5E79F4EEACAAB76E3553BC02E5E9959BF02AFB08623DBED786682E055D7C202FBBC58ACC92BC8AB6AF6D57FEE3DAF7C8E87236DAB07DB0132979CAA1F04AF0253611EA71EECF3B3CF7B66B98E82CC01AFE00BD623AFA02FEFC4735C5E4D48EB937AF22A48738E3551D8ED5F9D9CB88A57C893410E96D3DC68965732A764AEB59257CF8717D857DD337CEE43E1048F41097F1031AA7A78057FF09E52E4BCAAE50FA28F32FA2481576ED383C8BD029CE646B3BC92F9E514AF10DFC13A4E765DE17A103CC73A9FE0552D3D88B8167885756721EB701D8877626EA78602E7FC41F4CA45AFDEBBAB69FE5FFCAF95BCC2FA29FA60A2F642BBBE8518BB997C7F37C22DBC429E0CE45574295E79CE26E6FDD2F832F1E5259FF76AF9EDF003F1BB6BF3691EFB127A308BDEE1B0A7667CE76264ABB47FE8C12B932BEC83D945F6DE68D0165E217E85F574D47DF157028FE9A1E603EB12C4FF9CFAFCAD8C7A6E58AFA8D563D2ED7003AFB08E62F45D7868B8F17DE7B6CEFCD1EDA2AEDC809C406D8F5DD7257885BA2FC44667FD699EE387EFD0DB61FF41373B41BEBFA62EA05AACAF5DE0765E5936C7744D58A76C654D54353D88FC46A33E471EAFDA8457348747A46F360D6A49ED82E0958CB43ACE71F42924999527AEE7D56D420FE27F8DF684700B5CC92BCCBDC5F39F72E0FE17EBCED33E8543FE6E13397F5DD759E9D6EDB37571E93BC8558F5736F04AD1EF0DD40CB6D46B426CC8CCFF78FD870EC79BEDFB2172FEF5BEF3F4A0B5BC52D4DC355E67EC3FAB95522CBA6FA1FFE0BB3F1DA8DD6324AD3E5BBBD2F7033D4695FAFA2123D70AEBE7BEF1205F73907B53C8792E61B2D7E13324D5385B52FE0D5DBB27AFACE3957C5CBBCEA59EDE22B2ACA8D60F592F173095D9E7BD90E103225E003D8878EC17F7A7787C6EDAB7CAAF093D00D1871EFEAA9657A8BDECA43803D6E4726AFE8113BC2A08BD42E75050E7AC60B13EAC0782573C9644B22ADBA05F514D0FF27A259DBE5AE2B89DA0079147871824D661F16C11A778C5F3034BFBAC48FC3E54FB2C1ECEF8CEB6B5F09959624E71DC2DD253259D5CD366ED2BC4DAA1EB20F3B4CF66EA145EA11615CF20745A0F96680E6173E4487F64C836811ED9A7FB5AE4C8DB7A1E52FF76C400CED95726FAAA61BD0075DB88AFC3BEC2333D616BA1DE16B6978833A449BFA6C92748D1B56D6AE2EDB02FB5CF3A6B37B8C9BECAD23CC01E41BC294EFCE23D4268FCE30DF6E5B7023C06A0634719C9A2DCF6118BAC15B98D25EE07C4DA97570BBCE79AF8DD2EFDFFE0C32E7672EBB661EE7D3520DF41D481E13C3056F04DDCF2ACCD6679856B812C476EA89CC3883A25B3BCAA65B763EC702F63AEF4F4A29963D603E8A955F2DB8A0DDA78B5E2EDCDF4835B0C9DE53C1C944FD9B38905F66C7A9185A75EB8467F36CB2B5F30C9BE7DB9C6FA7F0AB3295F986F438C08B56F95BACA3A7995918E2BDECBDB8291341B988B720C47B33CBF1B7891DAE5F72F8E59E9216C01500786674635FA6C4ABBF3FAA67D119EEBD3AD94784E4742714F0D45B3BC1A8A64D95B8383BCC6EA5B9AEB45518393A9DF3E409D216C8FE0E8CCCF35396A3E3C5EB3AAAF3ABABCC16BBA446D2AEA9B917BFC642DCFBF4F28EEB2496CE1156A9FC92E039E93ED89F1EE445E415EA07F10723AC1ABE7EA33D6D29A753119D065D09BBC77CC6AB2922783DC3B7C869E436F3F9957C87707AF90930C6E01C8C703B7C02BE4C6A4A5FD3B3DAE82578DF6903402FA0C20DF26174DB09F68FF9DCAABD18D129755C8BD03AF7CAA6F84D89EA8CD29D37D257CA714F947D806DB023D8377F64E78FDA0C8BF02AFE471E4B6AF5A4F085E81BFC8639773FAF0DCDF9C64AF264D9CBFDDBC1272D72AE05E447D09E4FB388D2BE474B752EC385ECDCEAF556C9D05BA2EC42C507FC3E3D407C7DC3681FD047F1BE38C350AED3E20AFE02BC1672A1DBCD23D4E9EFCEE17B47FE4236B6B9EC12BF9B74738067C789A53F01BFE7E2BF318645EE9E5343403D401207E8FBAFCC9A9D98EE515ECDA37FC1A7C866F5EA7BF536F9E0C78A59783ACE515388D5EB9E81384389053BEB71DF20ABC42CF36F0EA47BACE4EE59515D0E515641E7427C9FA229D0FD603A0076FC562BCEE46EE09A9E595133931ADE415E415E2AFE0D5997DE5F1AA6E5E49807D855A08995777E2716EB7CBFEA0A28E7DC64576BB1DBC127500E0157A77BADD6E77AA7EB016AF309EB0AF56E339F6C3E23A9B21F9246351D8752E184FBB7925FC1B5E83115AE1F5256EE595D3F583F5F00AAF91F02E2BE4DCD9E7A255BC82BC823F08FB2A4C7219F6815B7925F3CB8DBC4A931E8CA78AEC87716BE3E9EDC82BC829D12F73351A57ED768F578DF04A9C1B9EFBE5F47839CD2BC4F7442F8B10D9569EDDDE18AFC2997DB2CB731C338952CBCEC92A5E591DBF420E0EFA97405EA197ABC7ABC678859815E2A0E84FAB8D27B81DA22ED5CA7DE6778E798E33D68782C4292F7ED518AFA2D1341BF385D9B36753ECF988AFF21CC37640B3EBCEC881D9D93BBF4DAC3742BF2E931EF478D518AF9003853568AC03E9E5ECBA1988F73713EBF705CE9EC3A7842295674BC8791E6BB4CDB3DB8D81E77D18C921E440B5938C1210B65533FB281D9C3DA3589679E23D5E0FCAAF79DCAE7F9AE47930C9B239F7E409B98157E8BF31FFA8B72DF9A3072B3825C38857621BE438F4A35DCF236E046EE01520B8D5EEF50256730AA8C52B3742E61272A732F98223BC02C0AD85C77D6DCB2D3B380564DB9457A226D5497925006EC1DE822DDF6EB0AB6E48CC07729244DCA21D7825F3CB695E79781339753EE0136FA8CFA1F578E5A169A05783DA07A49DF4A078F578E552D07CA05F644239EB8B0A4EB5B2AF4023F078D506C07C68E495DBE1F1CAFD28420FAAB1298F571EAC9E23F486F678E5C12A283AF12BB7C3E3958B81DE4C6B09B649724AE431B8DD5E17D0E3955C3FE1C141A0CF29EAC3D5DE64ED04BFDA83477C36C3C9466A60CC1E236732CFC4ECFE5B751DF906D6A6EC9E8F46C6CAEC75088E99E1246A411AE1B199DF07D57E0E76ED1F103D70EC3C4E2B8ED18AB112EB7D668EF17F9869DF17 + diff --git a/原理图/教室智能(1) SCH ECO 2022-5-1 15-56-05.LOG b/原理图/教室智能(1) SCH ECO 2022-5-1 15-56-05.LOG new file mode 100644 index 0000000..c6747bb --- /dev/null +++ b/原理图/教室智能(1) SCH ECO 2022-5-1 15-56-05.LOG @@ -0,0 +1,3 @@ +Change Component Designator: Old Designator=P? New Designator=P1 +Change Component Designator: Old Designator=P? New Designator=P2 +Change Component Designator: Old Designator=P? New Designator=P3 diff --git a/原理图/教室智能.Sch b/原理图/教室智能.Sch new file mode 100644 index 0000000..00b33c4 Binary files /dev/null and b/原理图/教室智能.Sch differ diff --git a/原理图/教室智能.pdf b/原理图/教室智能.pdf new file mode 100644 index 0000000..7d973fe Binary files /dev/null and b/原理图/教室智能.pdf differ