diff --git a/.cproject b/.cproject
index df5e259..e3a8be1 100644
--- a/.cproject
+++ b/.cproject
@@ -263,5 +263,5 @@
-
+
diff --git a/Hardware/inc/J1_UART6.h b/Hardware/inc/J1_UART6.h
index 63f8346..182c171 100644
--- a/Hardware/inc/J1_UART6.h
+++ b/Hardware/inc/J1_UART6.h
@@ -15,7 +15,7 @@
#define J1_PWR_Ctrl 38
-void J1_485_Init(void);
+void J1_485_Init(uint32_t baud);
void J1_PWR_Open(void);
void J1_PWR_Close(void);
diff --git a/Hardware/inc/J2_UART7.h b/Hardware/inc/J2_UART7.h
index e4c2272..8db8e3c 100644
--- a/Hardware/inc/J2_UART7.h
+++ b/Hardware/inc/J2_UART7.h
@@ -14,7 +14,7 @@
/* PE8 */
#define J2_PWR_Ctrl 39
-void J2_485_Init(void);
+void J2_485_Init(uint32_t baud);
void J2_PWR_Open(void);
void J2_PWR_Close(void);
diff --git a/Hardware/inc/J3_USART2.h b/Hardware/inc/J3_USART2.h
index 5676f11..65c528a 100644
--- a/Hardware/inc/J3_USART2.h
+++ b/Hardware/inc/J3_USART2.h
@@ -15,7 +15,7 @@
/* PE9 */
#define J3_PWR_Ctrl 40
-void J3_485_Init(void);
+void J3_485_Init(uint32_t baud);
void J3_PWR_Open(void);
void J3_PWR_Close(void);
diff --git a/Hardware/inc/J4_UART8.h b/Hardware/inc/J4_UART8.h
index c5f032a..cdfdb56 100644
--- a/Hardware/inc/J4_UART8.h
+++ b/Hardware/inc/J4_UART8.h
@@ -14,7 +14,7 @@
/* PE10 */
#define J4_PWR_Ctrl 41
-void J4_485_Init(void);
+void J4_485_Init(uint32_t baud);
void J4_PWR_Open(void);
void J4_PWR_Close(void);
diff --git a/Hardware/inc/J5-0_USART3.h b/Hardware/inc/J5-0_USART3.h
index 627a5a7..760cb66 100644
--- a/Hardware/inc/J5-0_USART3.h
+++ b/Hardware/inc/J5-0_USART3.h
@@ -32,11 +32,11 @@
#define USART3_buffer_len 256
-void J5_0_485_Init(void);
+void J5_0_485_Init(uint32_t baud);
extern void USARTx_SendByte(USART_TypeDef* pUSARTx, uint8_t data);
extern void USARTx_SendStr(USART_TypeDef* pUSARTx, char *str);
-void USART3_IRQHandler(void);
+//void USART3_IRQHandler(void);
void USART_CONNET_J0(void);
void USART_CONNET_J5(void);
diff --git a/Hardware/inc/UART.h b/Hardware/inc/UART.h
index 3e70917..de79cda 100644
--- a/Hardware/inc/UART.h
+++ b/Hardware/inc/UART.h
@@ -38,6 +38,7 @@
void USARTx_SendByte(USART_TypeDef* pUSARTx, uint8_t data);
void USARTx_SendStr(USART_TypeDef* pUSARTx, char *str);
+void USARTx_SendByte_str(USART_TypeDef* pUSARTx, uint8_t data);
void USARTx_SendStr_Len(USART_TypeDef* pUSARTx, char *str, int len);
diff --git a/Hardware/src/J1_UART6.c b/Hardware/src/J1_UART6.c
index 55dfcea..1e15938 100644
--- a/Hardware/src/J1_UART6.c
+++ b/Hardware/src/J1_UART6.c
@@ -7,7 +7,7 @@
#include "J1_UART6.h"
-void J1_485_Init(void)
+void J1_485_Init(uint32_t baud)
{
rt_pin_mode(J1_DE, PIN_MODE_OUTPUT);
/* 设置485状态为读 */
diff --git a/Hardware/src/J2_UART7.c b/Hardware/src/J2_UART7.c
index ebf6cc0..2b2d4c8 100644
--- a/Hardware/src/J2_UART7.c
+++ b/Hardware/src/J2_UART7.c
@@ -9,7 +9,7 @@
-void J2_485_Init(void)
+void J2_485_Init(uint32_t baud)
{
rt_pin_mode(J2_DE, PIN_MODE_OUTPUT);
/* 设置485状态为读 */
diff --git a/Hardware/src/J3_USART2.c b/Hardware/src/J3_USART2.c
index 4fb34a6..1e65887 100644
--- a/Hardware/src/J3_USART2.c
+++ b/Hardware/src/J3_USART2.c
@@ -8,7 +8,7 @@
-void J3_485_Init(void)
+void J3_485_Init(uint32_t baud)
{
rt_pin_mode(J3_DE, PIN_MODE_OUTPUT);
/* 设置485状态为读 */
diff --git a/Hardware/src/J4_UART8.c b/Hardware/src/J4_UART8.c
index 9becbe0..62563fa 100644
--- a/Hardware/src/J4_UART8.c
+++ b/Hardware/src/J4_UART8.c
@@ -9,7 +9,7 @@
-void J4_485_Init(void)
+void J4_485_Init(uint32_t baud)
{
rt_pin_mode(J4_DE, PIN_MODE_OUTPUT);
/* 设置485状态为读 */
diff --git a/Hardware/src/J5-0_USART3.c b/Hardware/src/J5-0_USART3.c
index f1a7fbd..9e3796d 100644
--- a/Hardware/src/J5-0_USART3.c
+++ b/Hardware/src/J5-0_USART3.c
@@ -23,7 +23,7 @@ uint8_t USART_Rbuffer[USART3_buffer_len];
* Input : None
* Return : None
**/
-void J5_0_485_Init(void)
+void J5_0_485_Init(uint32_t baud)
{
rt_pin_mode(J5_PWR_Ctrl, PIN_MODE_OUTPUT);
rt_pin_mode(J6_PWR_Ctrl, PIN_MODE_OUTPUT);
@@ -59,7 +59,7 @@ void J5_0_485_Init(void)
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING; //设置PB11为浮空输入
GPIO_Init(GPIOB, &GPIO_InitStructure);
- USART_InitStructure.USART_BaudRate = 115200;
+ USART_InitStructure.USART_BaudRate = baud;
USART_InitStructure.USART_WordLength = USART_WordLength_8b;
USART_InitStructure.USART_StopBits = USART_StopBits_1;
USART_InitStructure.USART_Parity = USART_Parity_No;
@@ -74,7 +74,7 @@ void J5_0_485_Init(void)
NVIC_Init(&NVIC_InitStructure); //中断优先级初始化
USART_ITConfig(USART3, USART_IT_RXNE, ENABLE);
- USART_ITConfig(USART3, USART_IT_IDLE, ENABLE);
+// USART_ITConfig(USART3, USART_IT_IDLE, ENABLE);
USART_Cmd(USART3,ENABLE);
}
@@ -90,25 +90,25 @@ void USART3_IRQHandler(void)
USART_Rbuffer_Num++;
}
- if(USART_GetITStatus(USART3, USART_IT_IDLE) != RESET) //中断产生
- {
-// for(USART_Tbuffer_Num=0;USART_Tbuffer_Num < USART_Rbuffer_Num;USART_Tbuffer_Num++)
-// {
-// USARTx_SendByte(USART3, USART_Rbuffer[USART_Tbuffer_Num]); //发送数据
-// }
- USARTx_SendStr_Len(USART3, USART_Rbuffer, USART_Rbuffer_Num);
- rt_kprintf("USART_Rbuffer_Num = %d \n", USART_Rbuffer_Num);
-// USART3->STATR;
-// USART3->DATAR;
- USART_Rbuffer_Num = 0; //初始化
- USART_ReceiveData(USART3); //读DR
- }
-
- if(USART_GetFlagStatus(USART3,USART_FLAG_ORE) == SET) //溢出
- {
- USART_ClearFlag(USART3,USART_FLAG_ORE); //清标志
- USART_ReceiveData(USART3); //读DR
- }
+// if(USART_GetITStatus(USART3, USART_IT_IDLE) != RESET) //中断产生
+// {
+//// for(USART_Tbuffer_Num=0;USART_Tbuffer_Num < USART_Rbuffer_Num;USART_Tbuffer_Num++)
+//// {
+//// USARTx_SendByte(USART3, USART_Rbuffer[USART_Tbuffer_Num]); //发送数据
+//// }
+// USARTx_SendStr_Len(USART3, USART_Rbuffer, USART_Rbuffer_Num);
+// rt_kprintf("USART_Rbuffer_Num = %d \n", USART_Rbuffer_Num);
+//// USART3->STATR;
+//// USART3->DATAR;
+// USART_Rbuffer_Num = 0; //初始化
+// USART_ReceiveData(USART3); //读DR
+// }
+//
+// if(USART_GetFlagStatus(USART3,USART_FLAG_ORE) == SET) //溢出
+// {
+// USART_ClearFlag(USART3,USART_FLAG_ORE); //清标志
+// USART_ReceiveData(USART3); //读DR
+// }
}
/*
diff --git a/Hardware/src/UART.c b/Hardware/src/UART.c
index 5057040..03f5b9b 100644
--- a/Hardware/src/UART.c
+++ b/Hardware/src/UART.c
@@ -50,6 +50,7 @@ void USARTx_SendByte(USART_TypeDef* pUSARTx, uint8_t data)
}
}
+
void USARTx_SendByte_str(USART_TypeDef* pUSARTx, uint8_t data)
{
USART_SendData(pUSARTx, data);
diff --git a/Software/inc/uart_dev.h b/Software/inc/uart_dev.h
index ff799f3..26be5d3 100644
--- a/Software/inc/uart_dev.h
+++ b/Software/inc/uart_dev.h
@@ -11,7 +11,7 @@
#include "ch32v30x.h"
#include
#include
-#include "ring_queue.h"
+#include "RingQueue/ring_queue.h"
#include "rs485.h"
#define ASCII_CHAR_BACKSPACE 0x08 /* '\b' */
@@ -21,29 +21,46 @@
#define ASCII_CHAR_FORM_FEED 0x0C /* '\f' */
#define ASCII_CHAR_CARRIAGE_RETURN 0x0D /* '\r' */
-#define RS485_MAX_PACK_DATA_LEN 30
+//#define RS485_MAX_PACK_DATA_LEN 30
typedef uint32_t device_handle;
-
+extern device_handle g_J1RS485_UART6_handle;
+extern device_handle g_J2RS485_UART7_handle;
+extern device_handle g_J3RS485_USART2_handle;
+extern device_handle g_J4RS485_UART8_handle;
+extern device_handle g_J50RS485_USART3_handle;
+extern device_handle g_LORA_UART5_handle;
typedef enum{
- J1RS485_UART6 = 0,
- J2RS485_UART7,
- J3RS485_USART2,
- J4RS485_UART8,
- J50RS485_USART3,
- LORA_UART5,
+ J1RS485_UART6 = 6,
+ J2RS485_UART7 = 7,
+ J3RS485_USART2 = 2,
+ J4RS485_UART8 = 8,
+ J50RS485_USART3 = 3,
+ LORA_UART5 = 5,
}uartIndex_e;
+typedef enum{
+ ONLYONE = 1,
+ J0RS485 = 0,
+ J5RS485 = 5,
+ J6RS485 = 6,
+ J7RS485 = 7,
+ J8RS485 = 8,
+ J9RS485 = 9,
+}uartNum_e;
+
/* UART 驱动数据结构,对应一个uart设备 */
typedef struct _uart_device_info{
uint8_t init;
uartIndex_e uart_index;
uint32_t uart_baudrate;
RingQueue uart_ring_queue;
+ uartNum_e uart_num;
}uart_device_info;
//device_handle uart_dev_init(uartIndex_e uart_index, uint8_t *buff, int buff_size);
+//device_handle uart_dev_init(uart_device_info *uart_device, uint8_t *buff, int buff_size);
device_handle uart_dev_init(void);
void uart_sendstr(device_handle device,char *str);
void uart_dev_write(device_handle device, void *data, int len);
diff --git a/Software/src/uart_dev.c b/Software/src/uart_dev.c
index 303572e..88b2629 100644
--- a/Software/src/uart_dev.c
+++ b/Software/src/uart_dev.c
@@ -6,38 +6,80 @@
*/
#include "uart_dev.h"
+#include "J1_UART6.h"
+#include "J2_UART7.h"
+#include "J3_USART2.h"
+#include "J4_UART8.h"
+#include "J5-0_USART3.h"
+
/* 使能485发送 */
-//#define rs485_send_enable 1
+#define rs485_send_enable 1
-static void uart_init(uartIndex_e uart_index, int baud);
+//static void uart_init(uartIndex_e uart_index, int baud);
+static void uart_init(uart_device_info *uart_device, int baud);
static uint8_t uart_putchar(device_handle device, char ch);
-//device_handle g_bat485_uart3_handle;
-//device_handle g_gw485_uart4_handle;
-//
-//static uint8_t bat485_in_buff[200];
-//static uint8_t gw485_in_buff[300];
-//
+device_handle g_J1RS485_UART6_handle;
+device_handle g_J2RS485_UART7_handle;
+device_handle g_J3RS485_USART2_handle;
+device_handle g_J4RS485_UART8_handle;
+device_handle g_J50RS485_USART3_handle;
+device_handle g_LORA_UART5_handle;
+
+#define IN_BUFF_SIZE 128
+//static uint8_t J1RS485_in_buff[IN_BUFF_SIZE];
+//static uint8_t J2RS485_in_buff[IN_BUFF_SIZE];
+//static uint8_t J3RS485_in_buff[IN_BUFF_SIZE];
+//static uint8_t J4RS485_in_buff[IN_BUFF_SIZE];
+//static uint8_t J50RS485_in_buff[IN_BUFF_SIZE];
+//static uint8_t LORA_in_buff[IN_BUFF_SIZE];
+uint8_t J1RS485_in_buff[IN_BUFF_SIZE];
+uint8_t J2RS485_in_buff[IN_BUFF_SIZE];
+uint8_t J3RS485_in_buff[IN_BUFF_SIZE];
+uint8_t J4RS485_in_buff[IN_BUFF_SIZE];
+uint8_t J50RS485_in_buff[IN_BUFF_SIZE];
+uint8_t LORA_in_buff[IN_BUFF_SIZE];
+
//uint8_t rs485_out_buff[100];
/**
- * @brief 串口信息初始化,串口号及波特率.
+ * @brief 串口信息初始化,串口号.
* @param uart_index 对应的硬件串口号
* @param uart_baudrate 波特率
*/
uart_device_info uart_devices[]={
-// [0] = {
-// .init = 0,
-// .uart_index = BAT485_UART_INDEX,
-// .uart_baudrate = 9600,
-// },
-// [1] = {
-// .init = 0,
-// .uart_index = GW485_UART_INDEX,
-// .uart_baudrate = 9600,
-// },
+ [0] = {
+ .init = 0,
+ .uart_index = J1RS485_UART6,
+ .uart_num = ONLYONE,
+ },
+ [1] = {
+ .init = 0,
+ .uart_index = J2RS485_UART7,
+ .uart_num = ONLYONE,
+ },
+ [2] = {
+ .init = 0,
+ .uart_index = J3RS485_USART2,
+ .uart_num = ONLYONE,
+ },
+ [3] = {
+ .init = 0,
+ .uart_index = J4RS485_UART8,
+ .uart_num = ONLYONE,
+ },
+ [4] = {
+ .init = 0,
+ .uart_index = J50RS485_USART3,
+ .uart_num = J0RS485,
+ },
+ [5] = {
+ .init = 0,
+ .uart_index = LORA_UART5,
+ .uart_num = ONLYONE,
+ },
};
/**
@@ -64,29 +106,55 @@ uart_device_info uart_devices[]={
// }
// return 0;
//}
+//device_handle uart_dev_init(uart_device_info *uart_device, uint8_t *buff, int buff_size)
+//{
+// int i = 0;
+// for(; i < ELEMENT_OF(uart_devices); i++){
+// if(uart_devices[i].uart_index == uart_device->uart_index){
+// if(!uart_devices[i].init){
+// InitRingQueue(&uart_devices[i].uart_ring_queue, buff, buff_size);
+// uart_init(uart_device, uart_devices[i].uart_baudrate);
+//
+// uart_devices[i].init = 1;
+// }
+// return (device_handle)(&uart_devices[i]);
+// }
+// }
+// return 0;
+//}
device_handle uart_dev_init(void)
{
-// int i = 0;
-// for(; i < ELEMENT_OF(uart_devices); i++){
-// if(uart_devices[i].uart_index == uart_index){
-// if(!uart_devices[i].init){
-// InitRingQueue(&uart_devices[i].uart_ring_queue, buff, buff_size);
-// uart_init(uart_index, uart_devices[i].uart_baudrate);
-//
-// uart_devices[i].init = 1;
-// }
-// return (device_handle)(&uart_devices[i]);
-// }
-// }
-// InitRingQueue(&uart_devices[0].uart_ring_queue, bat485_in_buff, sizeof(bat485_in_buff));
-// uart_init(BAT485_UART_INDEX, g_slConfigInfo.bat485_Baud);
-// uart_devices[0].init = 1;
-// g_bat485_uart3_handle = (device_handle)(&uart_devices[0]);
-//
-// InitRingQueue(&uart_devices[1].uart_ring_queue, gw485_in_buff, sizeof(gw485_in_buff));
-// uart_init(GW485_UART_INDEX, g_slConfigInfo.gw485_Baud);
-// uart_devices[1].init = 1;
-// g_gw485_uart4_handle = (device_handle)(&uart_devices[1]);
+ InitRingQueue(&uart_devices[0].uart_ring_queue, J1RS485_in_buff, sizeof(J1RS485_in_buff));
+ uart_init(&uart_devices[0], 9600);
+ uart_devices[0].init = 1;
+ g_J1RS485_UART6_handle = (device_handle)(&uart_devices[0]);
+
+ InitRingQueue(&uart_devices[1].uart_ring_queue, J2RS485_in_buff, sizeof(J2RS485_in_buff));
+ uart_init(&uart_devices[1], 9600);
+ uart_devices[1].init = 1;
+ g_J2RS485_UART7_handle = (device_handle)(&uart_devices[1]);
+
+
+ InitRingQueue(&uart_devices[2].uart_ring_queue, J3RS485_in_buff, sizeof(J3RS485_in_buff));
+ uart_init(&uart_devices[2], 9600);
+ uart_devices[2].init = 1;
+ g_J3RS485_USART2_handle = (device_handle)(&uart_devices[2]);
+
+ InitRingQueue(&uart_devices[3].uart_ring_queue, J4RS485_in_buff, sizeof(J4RS485_in_buff));
+ uart_init(&uart_devices[3], 9600);
+ uart_devices[3].init = 1;
+ g_J4RS485_UART8_handle = (device_handle)(&uart_devices[3]);
+
+
+ InitRingQueue(&uart_devices[4].uart_ring_queue, J50RS485_in_buff, sizeof(J50RS485_in_buff));
+ uart_init(&uart_devices[4], 9600);
+ uart_devices[4].init = 1;
+ g_J50RS485_USART3_handle = (device_handle)(&uart_devices[4]);
+
+ InitRingQueue(&uart_devices[5].uart_ring_queue, LORA_in_buff, sizeof(LORA_in_buff));
+ uart_init(&uart_devices[5], 9600);
+ uart_devices[5].init = 1;
+ g_LORA_UART5_handle = (device_handle)(&uart_devices[5]);
return 0;
}
@@ -98,13 +166,36 @@ device_handle uart_dev_init(void)
* @param baud 波特率
* @retval None
*/
-void uart_init(uartIndex_e uart_index, int baud)
-{
-// if (uart_index == BAT485_UART_INDEX) {
-// BAT_485_Init(uart_devices[0].uart_baudrate);
-// } else if (uart_index == GW485_UART_INDEX) {
-// GW_485_Init(uart_devices[1].uart_baudrate);
-// }
+void uart_init(uart_device_info *uart_device, int baud)
+{ rt_kprintf("1 \n");
+ uart_device->uart_baudrate = baud;
+ if (uart_device->uart_index == J1RS485_UART6) {
+ J1_485_Init(baud);
+ } else if (uart_device->uart_index == J2RS485_UART7) {
+ J2_485_Init(baud);
+ } else if (uart_device->uart_index == J3RS485_USART2) {
+ J3_485_Init(baud);
+ } else if (uart_device->uart_index == J4RS485_UART8) {
+ J4_485_Init(baud);
+ } else if (uart_device->uart_index == J50RS485_USART3) {
+ J5_0_485_Init(baud);
+ if (uart_device->uart_num == J0RS485) {
+ USART_CONNET_J0();
+ } else if (uart_device->uart_num == J5RS485) {
+ USART_CONNET_J5();
+ } else if (uart_device->uart_num == J6RS485) {
+ USART_CONNET_J6();
+ } else if (uart_device->uart_num == J7RS485) {
+ USART_CONNET_J7();
+ } else if (uart_device->uart_num == J8RS485) {
+ USART_CONNET_J8();
+ } else if (uart_device->uart_num == J9RS485) {
+ USART_CONNET_J9();
+ }
+ rt_kprintf("1 \n");
+ } else if (uart_device->uart_index == LORA_UART5) {
+ ;
+ }
}
/**
@@ -119,53 +210,117 @@ uint8_t uart_putchar(device_handle device, char ch)
if((!device) || (!device_info->init))
return 0;
-// if (device_info->uart_index == BAT485_UART_INDEX) {
-// USARTx_SendByte(BAT_485, ch);
-// } else if(device_info->uart_index == GW485_UART_INDEX) {
-// USARTx_SendByte(GW_485, ch);
-// }
+ if (device_info->uart_index == J1RS485_UART6) {
+
+ } else if (device_info->uart_index == J2RS485_UART7) {
+
+ } else if (device_info->uart_index == J3RS485_USART2) {
+
+ } else if (device_info->uart_index == J4RS485_UART8) {
+
+ } else if (device_info->uart_index == J50RS485_USART3) {
+ USARTx_SendByte_str(USART3, ch);
+ }
return 1;
}
/**
- * @brief bat485发送使能.
+ * @brief J1RS485发送使能.
* @param
* @retval
*/
-void bat485_tx_enabla(void)
+void J1RS485_tx_enabla(void)
{
-// GPIO_WriteBit(GPIO_BAT_485_RDE, Pin_BAT_485_RDE, write);
+ rt_pin_write(J1_DE, write);
}
/**
- * @brief bat485发送关闭.
+ * @brief J1RS485发送关闭.
* @param
* @retval
*/
-void bat485_tx_disenabla(void)
+void J1RS485_tx_disenabla(void)
{
-// GPIO_WriteBit(GPIO_BAT_485_RDE, Pin_BAT_485_RDE, read);
+ rt_pin_write(J1_DE, read);
}
/**
- * @brief gw485发送使能.
+ * @brief J2RS485发送使能.
* @param
* @retval
*/
-void gw485_tx_enabla(void)
+void J2RS485_tx_enabla(void)
{
-// GPIO_WriteBit(GPIO_GW_485_RDE, Pin_GW_485_RDE, write);
+ rt_pin_write(J2_DE, write);
}
/**
- * @brief gw485发送关闭.
+ * @brief J2RS485发送关闭.
* @param
* @retval
*/
-void gw485_tx_disenabla(void)
+void J2RS485_tx_disenabla(void)
{
-// GPIO_WriteBit(GPIO_GW_485_RDE, Pin_GW_485_RDE, read);
+ rt_pin_write(J2_DE, read);
+}
+
+/**
+ * @brief J3RS485发送使能.
+ * @param
+ * @retval
+ */
+void J3RS485_tx_enabla(void)
+{
+ rt_pin_write(J3_DE, write);
+}
+
+/**
+ * @brief J3RS485发送关闭.
+ * @param
+ * @retval
+ */
+void J3RS485_tx_disenabla(void)
+{
+ rt_pin_write(J3_DE, read);
+}
+/**
+ * @brief J4RS485发送使能.
+ * @param
+ * @retval
+ */
+void J4RS485_tx_enabla(void)
+{
+ rt_pin_write(J4_DE, write);
+}
+
+/**
+ * @brief J4RS485发送关闭.
+ * @param
+ * @retval
+ */
+void J4RS485_tx_disenabla(void)
+{
+ rt_pin_write(J4_DE, read);
+}
+/**
+ * @brief J50RS485发送使能.
+ * @param
+ * @retval
+ */
+void J50RS485_tx_enabla(void)
+{
+ rt_pin_write(USART3_DE, write);
+}
+
+/**
+ * @brief J50RS485发送关闭.
+ * @param
+ * @retval
+ */
+void J50RS485_tx_disenabla(void)
+{
+ rt_pin_write(USART3_DE, read);
}
/**
@@ -177,11 +332,16 @@ void gw485_tx_disenabla(void)
void uart_sendstr(device_handle device,char *str)
{
#if rs485_send_enable
- if(device == g_bat485_uart3_handle){
- bat485_tx_enabla();
- }
- else if (device == g_gw485_uart4_handle) {
- gw485_tx_enabla();
+ if(device == g_J1RS485_UART6_handle){
+ J1RS485_tx_enabla();
+ } else if (device == g_J2RS485_UART7_handle) {
+ J2RS485_tx_enabla();
+ } else if (device == g_J3RS485_USART2_handle) {
+ J3RS485_tx_enabla();
+ } else if (device == g_J4RS485_UART8_handle) {
+ J4RS485_tx_enabla();
+ } else if (device == g_J50RS485_USART3_handle) {
+ J50RS485_tx_enabla();
}
#endif
@@ -196,12 +356,17 @@ void uart_sendstr(device_handle device,char *str)
}
#if rs485_send_enable
- if(device == g_bat485_uart3_handle){
- bat485_tx_disenabla();
- }
- else if (device == g_gw485_uart4_handle) {
- gw485_tx_disenabla();
- }
+ if(device == g_J1RS485_UART6_handle){
+ J1RS485_tx_disenabla();
+ } else if (device == g_J2RS485_UART7_handle) {
+ J2RS485_tx_disenabla();
+ } else if (device == g_J3RS485_USART2_handle) {
+ J3RS485_tx_disenabla();
+ } else if (device == g_J4RS485_UART8_handle) {
+ J4RS485_tx_disenabla();
+ } else if (device == g_J50RS485_USART3_handle) {
+ J50RS485_tx_disenabla();
+ }
#endif
}
@@ -217,11 +382,16 @@ void uart_sendstr(device_handle device,char *str)
void uart_dev_write(device_handle device, void *data, int len)
{
#if rs485_send_enable
- if(device == g_bat485_uart3_handle){
- bat485_tx_enabla();
- }
- else if (device == g_gw485_uart4_handle) {
- gw485_tx_enabla();
+ if(device == g_J1RS485_UART6_handle){
+ J1RS485_tx_enabla();
+ } else if (device == g_J2RS485_UART7_handle) {
+ J2RS485_tx_enabla();
+ } else if (device == g_J3RS485_USART2_handle) {
+ J3RS485_tx_enabla();
+ } else if (device == g_J4RS485_UART8_handle) {
+ J4RS485_tx_enabla();
+ } else if (device == g_J50RS485_USART3_handle) {
+ J50RS485_tx_enabla();
}
#endif
@@ -230,12 +400,17 @@ void uart_dev_write(device_handle device, void *data, int len)
}
#if rs485_send_enable
- if(device == g_bat485_uart3_handle){
- bat485_tx_disenabla();
- }
- else if (device == g_gw485_uart4_handle) {
- gw485_tx_disenabla();
- }
+ if(device == g_J1RS485_UART6_handle){
+ J1RS485_tx_disenabla();
+ } else if (device == g_J2RS485_UART7_handle) {
+ J2RS485_tx_disenabla();
+ } else if (device == g_J3RS485_USART2_handle) {
+ J3RS485_tx_disenabla();
+ } else if (device == g_J4RS485_UART8_handle) {
+ J4RS485_tx_disenabla();
+ } else if (device == g_J50RS485_USART3_handle) {
+ J50RS485_tx_disenabla();
+ }
#endif
}
diff --git a/User/main.c b/User/main.c
index 2c984de..1cbc8ca 100644
--- a/User/main.c
+++ b/User/main.c
@@ -34,6 +34,7 @@ int main(void)
SystemCoreClockUpdate();
rt_kprintf(" SysClk: %dHz\r\n",SystemCoreClock);
rt_kprintf(" ChipID: %08x\r\n",DBGMCU_GetCHIPID());
+ rt_kprintf("test \r\n");
app_star();
diff --git a/User/start.c b/User/start.c
index 02de9dc..5b7e189 100644
--- a/User/start.c
+++ b/User/start.c
@@ -1,12 +1,15 @@
#include
-#include "inc/Android.h"
+
+#include "inc/Android.h"
#include "inc/Flash.h"
#include "inc/UART.h"
-#include "inc/J5-0_USART3.h"
#include
#include "inc/Rs485.h"
+#include "inc/uart_dev.h"
+
+
/*
* 硬件初始化函数
*
@@ -19,7 +22,6 @@ void hareware_init()
// SPI_Flash_TEST();
- J5_0_485_Init();
// USARTx_SendStr(J5_0_USART, "This is a test data.\n");
@@ -33,6 +35,10 @@ void hareware_init()
*/
void software_init()
{
+ uart_dev_init();
+
+// uart_sendstr(g_J50RS485_USART3_handle, "This is a test data.\n");
+ USARTx_SendStr(USART3, "This is a test data.\n");
Rs485_thread_Init();
diff --git a/obj/CH32V303_V0.1.elf b/obj/CH32V303_V0.1.elf
index c224c88..c025c93 100644
Binary files a/obj/CH32V303_V0.1.elf and b/obj/CH32V303_V0.1.elf differ
diff --git a/obj/CH32V303_V0.1.hex b/obj/CH32V303_V0.1.hex
index f9cc0a5..d111d38 100644
--- a/obj/CH32V303_V0.1.hex
+++ b/obj/CH32V303_V0.1.hex
@@ -1,30 +1,30 @@
-:040000006F30B02786
-:100004000000000000000000B0370000D0370000FE
-:1000140000000000783A000000000000000000002A
-:10002400783A0000783A0000000000000000000068
+:040000006F30702CC1
+:100004000000000000000000D2370000F2370000BA
+:1000140000000000C43A00000000000000000000DE
+:10002400C43A0000C43A00000000000000000000D0
:100034008C2F00000000000090020000000000006F
-:10004400783A0000783A0000783A0000783A0000E4
-:10005400783A0000783A000082330000AA330000A6
-:10006400D2330000FA33000022340000783A000052
-:10007400783A0000783A0000783A0000783A0000B4
-:10008400783A0000783A0000783A0000783A0000A4
-:10009400783A0000783A0000783A00004A340000C8
-:1000A400783A0000783A0000783A0000783A000084
-:1000B400783A0000783A0000783A0000783A000074
-:1000C400783A0000783A0000783A0000783A000064
-:1000D400783A000066370000783A00005840000083
-:1000E400C2340000783A0000783A0000783A000000
-:1000F400783A0000783A0000783A0000783A000034
-:1001040000000000783A0000783A0000783A0000D5
-:10011400783A0000783A0000783A0000783A000013
-:10012400783A0000783A0000783A0000783A000003
-:10013400783A0000783A0000783A0000783A0000F3
-:10014400783A0000783A0000783A0000783A0000E3
-:10015400783A0000783A0000783A0000783A0000D3
-:10016400783A0000783A0000783A0000783A0000C3
-:10017400783A0000783A0000783A0000783A0000B3
-:10018400783A0000783A0000783A0000783A0000A3
-:10019400783A0000783A0000783A0000783A000093
+:10004400C43A0000C43A0000C43A0000C43A0000B4
+:10005400C43A0000C43A000092330000BA330000EE
+:10006400E23300000A34000032340000C43A0000D5
+:10007400C43A0000C43A0000C43A0000C43A000084
+:10008400C43A0000C43A0000C43A0000C43A000074
+:10009400C43A0000C43A0000C43A00005A340000D4
+:1000A400C43A0000C43A0000C43A0000C43A000054
+:1000B400C43A0000C43A0000C43A0000C43A000044
+:1000C400C43A0000C43A0000C43A0000C43A000034
+:1000D400C43A000088370000C43A00000A43000014
+:1000E400D2340000C43A0000C43A0000C43A00000C
+:1000F400C43A0000C43A0000C43A0000C43A000004
+:1001040000000000C43A0000C43A0000C43A0000F1
+:10011400C43A0000C43A0000C43A0000C43A0000E3
+:10012400C43A0000C43A0000C43A0000C43A0000D3
+:10013400C43A0000C43A0000C43A0000C43A0000C3
+:10014400C43A0000C43A0000C43A0000C43A0000B3
+:10015400C43A0000C43A0000C43A0000C43A0000A3
+:10016400C43A0000C43A0000C43A0000C43A000093
+:10017400C43A0000C43A0000C43A0000C43A000083
+:10018400C43A0000C43A0000C43A0000C43A000073
+:10019400C43A0000C43A0000C43A0000C43A000063
:1001A400000000000000000000000000000000004B
:0C01B4000000000000000000000000003F
:1001C00097020120938202E4938202E0739002344A
@@ -77,13 +77,13 @@
:1004B0003347F5023365F5023305F5021305753E42
:1004C0003345F5023307F7023A9582807D558280E5
:1004D00001458280014582800145828001458280FC
-:1004E000EFF23FEC19649964130404B69384C4B624
+:1004E000EFF23FEC19649964130404F29384C4F2AC
:1004F00063639400C9BD1C4011048297D5BFEFF21D
-:100500005FEA196499641304C4B6938444B76363BF
+:100500005FEA196499641304C4F2938444F3636347
:10051000940055BD1C4011048297D5BFEFF27FE8CF
-:10052000F93FEF30E02C45B5EFF2BFE7B70500002B
-:1005300037450000D14715479306002001469385B3
-:10054000C55113058552EF10A026EF10203EA5BD22
+:10052000F93FEF30002F45B5EFF2BFE7B705000008
+:1005300037550000D14715479306002001469385A3
+:10054000C5511305058EEF10A026EF10203EA5BD66
:10055000EFF23FE5EF10E062EF20F01BEF00B02B71
:10056000EF10205CEF005078C137EF10205C012CB9
:10057000EF00707A014581BDEFF2BFE2D13F014546
@@ -96,8 +96,8 @@
:1005E0004D377DF522852686A545EF00305E014515
:1005F000231C2401230E0400231D0400D9BFEFF2A5
:100600005FDA1E2D41112A84C18B9DE71C558DC3D5
-:100610002EC68297AA84B24501CD2A8637450000AE
-:10062000A28513050553EF0090182685410161BB93
+:100610002EC68297AA84B24501CD2A86375500009E
+:10062000A2851305858EEF0090182685410161BBD8
:100630001E2C93E707011EAC1E2CA18B89C73E2CF4
:10064000E554A18BFDF35C5489CF22858297AA845F
:1006500005E13E2C93E787003EAC5C2C85075CAC43
@@ -117,11 +117,11 @@
:10073000EF00105B631B55014A85EF00104FEF007F
:10074000F0705285EF10A04495B9EF0030705285DB
:10075000EF10E0434848EF00303A4A85EF0030554B
-:1007600061BFEFF21FC413848193130904011C407D
+:1007600061BFEFF21FC413840195130904011C40FB
:1007700091C382971104E31C24FF953FEDB7EFF27C
-:100780005FC237060000B7450000930800023D48ED
-:10079000930700201387819481461306267693855C
-:1007A00085561385818BEF00307D1385818BEF108B
+:100780005FC237060000B7550000930800023D48DD
+:1007900093070020138701968146130626769385DA
+:1007A00005921385018DEF00307D1385018DEF10CB
:1007B000E01711B9EFF2FFBE41112A842E8532C62F
:1007C0002EC4EF1060083246A24519C68547630D56
:1007D000F60001454101C5BE5840938745011CC341
@@ -148,9 +148,9 @@
:100920005DB4EFF21FA84111EF10A025138741819C
:100930001C23FD1793F7F70F1CA383A7018181C721
:100940002AC682973245EF1080244101ADBC03C511
-:1009500041818280937808044111639E0800916868
-:100960009388487193730801638B03001378E8FF41
-:10097000930E000219A8916893880867E5B713736E
+:1009500041818280937808044111639E0800956864
+:100960009388C8AC93730801638B03001378E8FF86
+:10097000930E000219A89568938888A2E5B71373AF
:100980001800930E0003E30503FE13732800630EA3
:100990000306635806023306C0409302D0020A8E53
:1009A000814F294F6395E6073373D6023356D6023B
@@ -195,8 +195,8 @@
:100C10003E858280AA870387070001E73385A740C6
:100C200082808507CDBFEFF24FF52E89B30B2501EA
:100C300041112A8CB68563F5AB001349F5FFFD5BC6
-:100C4000C169374A00006284930AB002130B0002A4
-:100C5000FD19130ACA7031A8130750026389E7020D
+:100C4000C169375A00006284930AB002130B000294
+:100C5000FD19130A4AAC31A8130750026389E70251
:100C6000637374011CA013051400B284138614006E
:100C70002A8483070600EDF363060900637B742F63
:100C8000230004003305844141016FF08FF20148D5
@@ -251,16 +251,16 @@
:100F9000AA84084019C1EFF02FEE9305300426858E
:100FA000EFF0EFE504C04A856FF0EFC18280397140
:100FB00026CA2ED232D436D62A8654109305F0078C
-:100FC000138581B43EDA36C606CE22CC3AD842DC4E
-:100FD00046DE9139AA8603A5C18109E9138581B44A
+:100FC000138501B63EDA36C606CE22CC3AD842DCCC
+:100FD00046DE9139AA8603A5C18109E9138501B6C8
:100FE000F137F2406244D244216182802686262D68
:100FF0001384C18193E704043EAD9307F00763F4C3
-:10100000D7009306F007138681B48145EFF00FEC0B
-:101010001C40A6AFF9B7EFF2CFB837450000130573
-:10102000456871373745000013050569493737476B
-:101030000000374500001307476B8D4605468D4578
-:101040001305056CAD37374500001305056E853770
-:101050006FF06FB731C591661377F50F938606571A
+:10100000D7009306F007138601B68145EFF00FEC89
+:101010001C40A6AFF9B7EFF2CFB837550000130563
+:10102000C5A3713737550000130585A449373757D5
+:101030000000375500001307C7A68D4605468D45AD
+:10104000130585A7AD3737550000130585A98537EA
+:101050006FF06FB731C595661377F50F938686925B
:1010600009C7BA96882205058280C167938707F071
:10107000E98F81CB21851377F50F36970823250556
:101080008280B707FF00E98F81CB41859377F50F09
@@ -271,22 +271,22 @@
:1010D000BA9794C71045B307C700630FF500B6234E
:1010E00081EE938681828C426393A5009CC2544119
:1010F000D4C35C413E9710C78280EFF28FAA83A5CC
-:1011000001833745000013058572553583A5C183DA
-:10111000374500001305C573593D83A5C182374586
-:1011200000001305057561356FF0EFA9EFF26FA7A9
+:10110000018337550000130505AE553583A5C1830E
+:1011100037550000130545AF593D83A5C1823755AA
+:101120000000130585B061356FF0EFA9EFF26FA7EE
:1011300013F7C5FFE1462E8663F1E60693073500F7
:10114000F19B930687FE63EAF6041D8F130687FE64
:1011500023A8C1828966511713844182938606EAC7
:10116000D8C394C323A407001CC0BA9723A0F1825C
-:10117000C966938606EAB745000094C3D8C398C7EA
-:10118000814605469385857E138581BCEFF02FE867
-:10119000184023A4E1826FF00FA3AA853745000011
-:1011A0001305057F2935C5BFEFF2AF9F39C503A7EA
+:10117000C966938606EAB755000094C3D8C398C7DA
+:1011800081460546938505BA138501BEEFF02FE829
+:10119000184023A4E1826FF00FA3AA853755000001
+:1011A000130585BA2935C5BFEFF2AF9F39C503A72F
:1011B00001831304350071981389018381446366A8
-:1011C000870EB1476373F4003144FD55138581BC2C
+:1011C000870EB1476373F4003144FD55138501BEAA
:1011D000EFF06FE683A7818283A54182832809000F
:1011E00026853386B740B38688401388818263683A
-:1011F000D600138581BCEFF00FEC81447DA0B38451
+:1011F000D600138501BEEFF00FEC81447DA0B384CF
:10120000C500BA2003AE440061E73307CE40930F18
:1012100047FF63EF8F0A138FC183938EC18213033D
:10122000840183260F0083A30E001389C183938258
@@ -296,7 +296,7 @@
:1012600016012E9618C61387C60022972320E90080
:1012700063F4E30023A0E2000967130707EA9AA0DA
:10128000639A970083A601820147B22305EE19C332
-:101290002320F800138581BCEFF0EFE183A7818361
+:101290002320F800138501BEEFF0EFE183A78183DF
:1012A000B10481C7A2852685829726856FF0AF910C
:1012B00005463697B2A02320EF00E3FFE3FA23A010
:1012C000EE005DBFE385D7FCDC430547AE9775BFF5
@@ -305,14 +305,14 @@
:1012F000228541016FF02F8D45C5EFF2EF8883A75E
:1013000041832A8491C3829783A7418213894182B2
:101310006366F40883A701826372F408FD551385A0
-:1013200081BCEFF04FD1835764FF930944FF81CB19
-:10133000035744FF8967938707EA6301F70237453C
-:1013400000001305C579A531835644FF035664FF99
-:1013500037450000CE851305857B913989679387D2
+:1013200001BEEFF04FD1835764FF930944FF81CB97
+:10133000035744FF8967938707EA6301F70237552C
+:101340000000130545B5A531835644FF035664FFDD
+:1013500037550000CE85130505B791398967938706
:1013600007EA231AF4FE938781829843231B04FE25
:1013700063F4E90023A037011387C1831C4383264C
:1013800084FF4E85958F83260900B386D940B69792
-:101390001CC3013B138581BCEFF0EFD16FF00F82CE
+:101390001CC3013B138501BEEFF0EFD16FF00F824C
:1013A0008280B707002093860700014793870700D4
:1013B00021468C426396A500131547003E95828016
:1013C0000507C106E317C7FE01458280EFE2DFFB98
@@ -333,26 +333,26 @@
:1014B0005FEF83A741842A8491C3829723040400A9
:1014C000EF00206C544418489307C400D8C214C3DA
:1014D0001CC85CC4EF00A06B2285393D6FE0BFEEF5
-:1014E000030585007D81828023900186938781BEDC
+:1014E000030585007D81828023900186938701C05A
:1014F00013870708DCC39CC3A107E39DE7FE3D47B4
:10150000238AE18423AC018423A601869387418644
:10151000DCC39CC38280EFE2DFE803A5C186EFF065
-:101520007FB37D1593173500138581BE3E95084125
+:101520007FB37D1593173500138501C03E950841A3
:101530001307C5FE210523ACE184EFE07FC86FE00F
:101540009FE8EFE21FE6EF00C063839701862A89D8
:10155000B1E703A5C186EFF0FFAF7D151317350086
-:10156000938781BEBA97844393878185804393850F
+:10156000938701C0BA97844393878185804393858D
:10157000C4FE6305B4028CC383A7C185238AA184FA
:1015800099C32285829783C741811305C40193853E
:10159000840093F7F70F81EBEFE05FC44A85EF001B
:1015A000005F6FE05FE2EF00E05ECDBFEFE27FDF64
:1015B0002A84EF00005D8347440393064401C19BE6
:1015C00093E71700230AF402834754031397370065
-:1015D000938781BEBA97D84314C318CCD4C35CC8D0
+:1015D000938701C0BA97D84314C318CCD4C35CC84E
:1015E0009387C1869443185C558F98C3EF00205AA7
:1015F0006FE07FDDEFE2FFDA2A846123184C544864
:1016000093074401D8C214C35CC81CCC834754035D
-:1016100013973700938781BEBA979843631AF700F0
+:1016100013973700938701C0BA979843631AF7006E
:101620001387C1861C5C144393C7F7FFF58F1CC357
:10163000B92B6FE05FD9EFE2DFD6A1239387018654
:101640009A2305079AA3A1236FE0FFD7EFE27FD586
@@ -385,7 +385,7 @@
:1017F0002285E13DEDB7EFE2DFBA612683A781855F
:101800000546AA8603C747033D8B631CC702D04B1E
:10181000984F6308E60258C210C303C65703938665
-:1018200047010E06138781BE94CF3297504314C2EE
+:1018200047010E06138701C094CF3297504314C26C
:1018300090CF54C3D8CBA12EEFF0BFD001456FE0BD
:101840009FB83685A926DDBF834745030547BD8B75
:10185000639FE702EFE2FFB42A842526834744030F
@@ -445,132 +445,132 @@
:101BB000553F6FE05F812A87814718436314A70070
:101BC0003E8582808507D5BFB707EFBE37E700E0C7
:101BD000938707083CC701458280EFE28FFC3755A9
-:101BE00000001305C582EFF08FBC01456FE0AFFD2B
+:101BE0000000130545BEEFF08FBC01456FE0AFFD6F
:101BF000EFE22FFB2A84FD54375900007D14631453
-:101C000094006FE04FFC130549F9EFF04FBAFDB7B0
+:101C000094006FE04FFC1305C934EFF04FBAFDB7F5
:101C1000EFE28FF70041AA8437590000B75900005E
-:101C2000631494006FE08FF99305C4FE130589F9DE
-:101C3000EFF0EFB71C40638697001385C9F9EFF00A
+:101C2000631494006FE08FF99305C4FE1305093522
+:101C3000EFF0EFB71C406386970013854935EFF04E
:101C40000FB70040F1BFEFE2CFF52E89EFE09FFC28
:101C50002A84EFF05F9E83240900639C2401EFF047
:101C6000FF9EA14763C3870011E0214422856FE0F6
:101C70008FF5138544FFEFE0FFF96353A4002A8436
:101C80008440E1BFEFE26FEF0545EFF08FF1B75908
-:101C90000000130945002A84CA85138509AE6537FB
-:101CA000AA85AA8437550000138609AE130585AEB0
+:101C90000000130945002A84CA85138589E9653740
+:101CA000AA85AA8437550000138689E9130505EA39
:101CB000EFF0EFAF2685EFF0BFF3375500001305C7
-:101CC000C5B2EFF0CFAE4040B7590000054A894A8F
+:101CC00045EEEFF0CFAE4040B7590000054A894AD3
:101CD000375B0000B75B0000375C0000B75C0000BA
:101CE000375D00006315890001456FE08FEC034705
-:101CF00094021385C9B6930644FF2146A685EFF0EA
-:101D00000FAB8347840213858CB7BD8B638E47016D
-:101D100013054CB8638A570113850BB991C7114756
-:101D20006396E7001305CBB9EFF06FA84C4C93070F
+:101CF0009402138549F2930644FF2146A685EFF02E
+:101D00000FAB8347840213850CF3BD8B638E4701B1
+:101D10001305CCF3638A570113858BF491C71147E0
+:101D20006396E70013054BF5EFF06FA84C4C930753
:101D30003002AE8698226306F702105093074006E1
:101D40000848B295B386D540B386F602585C5C501D
-:101D5000898D13058DBAB3D6C602EFF04FA50040AA
+:101D5000898D13050DF6B3D6C602EFF04FA50040EE
:101D600051B78506C1BFEFE22FE241110945EFF0FF
:101D70004FE393094500375900002A84CE851305A7
-:101D800009A8EFF05FECAA85AA8437550000130676
-:101D900009A81305C5A8EFF08FA12685EFF05FE530
-:101DA00037550000130585AAEFF06FA04040375A61
+:101D800089E3EFF05FECAA85AA84375500001306BB
+:101D900089E3130545E4EFF08FA12685EFF05FE5B9
+:101DA00037550000130505E6EFF06FA04040375AA5
:101DB0000000B75A0000375B0000639689000145B8
:101DC00041016FE0AFDF1A281C44930644FF13095A
:101DD000840036C63AC44A856306F902EFF0BFDDD7
-:101DE0002247B246AA872146A68513850AACEFF0A2
-:101DF0000F9C4A85EFF0DFE11305CB8AEFF02F9BB4
+:101DE0002247B246AA872146A68513858AE7EFF0E7
+:101DF0000F9C4A85EFF0DFE113054BC6EFF02F9BF8
:101E0000004065BFEFF03FDB2247B246AA8721467C
-:101E1000A68513050AADEFF08F99DDB7EFE2CFD6B7
+:101E1000A68513058AE8EFF08F99DDB7EFE2CFD6FC
:101E200041111145EFF0EFD79309450037590000F4
-:101E30002A84CE851305498CEFF0FFE0AA85AA8499
-:101E4000375500001306498C1305C58CEFF02F960B
-:101E50002685EFF0FFD9375500001305058FEFF009
+:101E30002A84CE851305C9C7EFF0FFE0AA85AA84DE
+:101E4000375500001306C9C7130545C8EFF02F9694
+:101E50002685EFF0FFD937550000130585CAEFF04E
:101E60000F954040375A0000B75A0000375B00001A
:101E700063968900014541016FE04FD41C4413096A
:101E80008400930644FF18486309F9024A8536C660
:101E90003AC4EFF05FD22247B246AA872146A68510
-:101EA00013850A91EFF0AF904A85EFF07FD61305C6
-:101EB000CB8AEFF0CF8F004065BF2146A685130582
-:101EC0008A92EFF0CF8EC5BFEFE20FCC41110D45E6
+:101EA00013858ACCEFF0AF904A85EFF07FD613050B
+:101EB0004BC6EFF0CF8F004065BF2146A6851305C6
+:101EC0000ACEEFF0CF8EC5BFEFE20FCC41110D452A
:101ED000EFF02FCDB7590000130945002A84CA85B9
-:101EE0001385C9A1EFF03FD6AA85AA843755000013
-:101EF0001386C9A1130545A2EFF06F8B2685EFF07D
-:101F00003FCF37550000130585A4EFF04F8A4040BE
+:101EE000138549DDEFF03FD6AA85AA843755000057
+:101EF000138649DD1305C5DDEFF06F8B2685EFF006
+:101F00003FCF37550000130505E0EFF04F8A404002
:101F1000B759000063168900014541016FE00FCAFF
:101F2000930644FF1305840036C6EFF0DFC803486C
:101F300034015C48B246AA8821472146A68513850C
-:101F400089A6EFF0CF860040F1B7EFE2EFC3411171
+:101F400009E2EFF0CF860040F1B7EFE2EFC34111B5
:101F50001545EFF00FC593094500375900002A8455
-:101F6000CE851305C993EFF01FCEAA85AA843755F5
-:101F700000001306C99313054594EFF04F8326859F
-:101F8000EFF01FC73755000013058596EFF02F823D
+:101F6000CE85130549CFEFF01FCEAA85AA84375539
+:101F70000000130649CF1305C5CFEFF04F83268528
+:101F8000EFF01FC737550000130505D2EFF02F8281
:101F90004040375A0000B75A0000375B0000639694
:101FA0008900014541016FE06FC17A285E28104425
:101FB000930644FF1309840036C63AC43EC24A85DC
:101FC0006307C902EFF03FBF92472247B2462A8813
-:101FD0002146A68513854A98EFE07FFD4A85EFF0FC
-:101FE0003FC31305CB8AEFE09FFC00404DBFEFF0ED
+:101FD0002146A6851385CAD3EFE07FFD4A85EFF041
+:101FE0003FC313054BC6EFE09FFC00404DBFEFF031
:101FF0009FBC92472247B2462A882146A6851305F0
-:10200000CA99EFE0DFFAD5B7EFE20FB841111945F1
+:102000004AD5EFE0DFFAD5B7EFE20FB84111194535
:10201000EFF02FB993094500375900002A84CE8587
-:102020001305499BEFF03FC2AA85AA8437550000EB
-:102030001306499B1305059CEFE07FF72685EFF01B
-:102040003FBB375500001305C59DEFE05FF64040EC
+:102020001305C9D6EFF03FC2AA85AA843755000030
+:102030001306C9D6130585D7EFE07FF72685EFF0A5
+:102040003FBB37550000130545D9EFE05FF6404030
:10205000375A0000B75A0000375B000063968900CA
:10206000014541016FE08FB51A2C1C44930644FFD3
:102070001309840036C63AC44A856306F902EFF0B4
-:102080009FB32247B246AA872146A68513854A9F59
-:10209000EFE0FFF14A85EFF0BFB71305CB8AEFE021
+:102080009FB32247B246AA872146A6851385CADA9E
+:10209000EFE0FFF14A85EFF0BFB713054BC6EFE065
:1020A0001FF1004065BFEFF01FB12247B246AA877B
-:1020B0002146A68513058AA0EFE07FEFDDB7EFE2AA
-:1020C000AFAC5D712545EFF0CFAD9165130600050E
-:1020D0002A84130945009385854D0A85EF20202E1B
-:1020E000B7590000CA851385C985EFF0DFB5AA8509
-:1020F000AA84375500001386C98513054586EFE08D
-:102100001FEB2685EFF0DFAE375500001305C588BD
+:1020B0002146A68513050ADCEFE07FEFDDB7EFE2EE
+:1020C000AFAC5D712545EFF0CFAD9565130600050A
+:1020D0002A8413094500938505890A85EF208069C4
+:1020E000B7590000CA85138549C1EFF0DFB5AA854D
+:1020F000AA8437550000138649C11305C5C1EFE016
+:102100001FEB2685EFF0DFAE37550000130545C401
:10211000EFE0FFE94040D149375A000063168900DB
:10212000014561616FE08FA91C44930644FF63E0A1
:10213000F90298088A07BA9703A707FB1C282146CB
-:10214000A68513050A8BEFE09FE60040C1BF464716
+:10214000A68513058AC6EFE09FE60040C1BF46475B
:10215000F5B7EFE26FA32945EFF0AFA4B759000040
-:10216000130945002A84CA85138509BDEFF0BFAD68
-:10217000AA85AA8437550000138609BD130585BDBD
+:10216000130945002A84CA85138589F8EFF0BFADAD
+:10217000AA85AA8437550000138689F8130505F946
:10218000EFE0FFE22685EFF0BFA63755000013050C
-:1021900005C0EFE0DFE14040B7590000375A0000CA
+:1021900085FBEFE0DFE14040B7590000375A00000F
:1021A000B75A0000631E8900EFE02FADAA853755AE
-:1021B0000000130585C5EFE09FDF01456FE00FA02C
-:1021C0005C4C184C138549C2930644FF2146A685F2
-:1021D000EFE0FFDD8347D4FF1385CAC3858B99E306
-:1021E00013058AC4EFE0BFDC00406DBFEFE2CF997A
-:1021F0003755000013054583EFE07FDB03A4018A18
+:1021B000000013050501EFE09FDF01456FE00FA070
+:1021C0005C4C184C1385C9FD930644FF2146A68537
+:1021D000EFE0FFDD8347D4FF13854AFF858B99E34A
+:1021E00013050A00EFE0BFDC00406DBFEFE2CF99BE
+:1021F000375500001305C5BEEFE07FDB03A4018A5D
:10220000B7590000375A000083A7418A6365F4007C
-:1022100001456FE0AF9A044009469385898426857D
-:10222000EF20002919C55040A6851305CA84EFE0A8
+:1022100001456FE0AF9A04400946938509C02685C1
+:10222000EF20606419C55040A68513054AC0EFE051
:102230001FD83104D1BFEFE22F95375500001305A9
-:10224000850FEFE0DFD603A4018AB7590000375AA3
+:10224000054BEFE0DFD603A4018AB7590000375AE7
:10225000000083A7418A636BF40037550000130523
-:10226000C58AEFE0DFD401456FE04F950440194681
-:10227000938549112685EF20A02301E950409385DD
-:1022800064001305CA11EFE09FD23104D9B70545A8
+:1022600045C6EFE0DFD401456FE04F9504401946C5
+:102270009385C94C2685EF20005F01E95040938586
+:10228000640013054A4DEFE09FD23104D9B70545EC
:102290008280EFE26F8F79712A84AA9593060002FB
:1022A000254783070400B38485406385D70A638389
:1022B000E70A0145638B0410014913070002A54694
:1022C000B307240183870700638AE7086388D70878
:1022D0006314990883A9018A83AA418A375B0000A5
-:1022E00063F0590903AA0900194693054B11528559
-:1022F000EF20001C59E54A86A28513056A00EF20ED
-:10230000201B41E14A9A83076A00A5EF83A989004F
+:1022E00063F0590903AA090019469305CB4C52859E
+:1022F000EF20605759E54A86A28513056A00EF2052
+:10230000805641E14A9A83076A00A5EF83A98900B4
:10231000638809041306800281452800EFE06F8B73
:1023200013098100CA86A2870145014713080002EC
:10233000A548294313062002130EC0058385070014
:102340006384050163961505631F9702A94763031C
:10235000F50469A80504B1B705099DB7E31C09F6A2
:10236000A287038707001377F7FD79E73755000049
-:102370001305050E23800700A285EFE05FC37D559E
+:102370001305854923800700A285EFE05FC37D55E3
:10238000A9A0B109B1BF23800700050785077DB764
-:1023900063106504375500001305C50BEFE03FC11E
-:1023A0000018B7540000832509001385C40D1109D6
-:1023B000EFE0FFBFE31989FE375500001305C58A1A
+:10239000631065043755000013054547EFE03FC162
+:1023A0000018B7540000832509001385444911091A
+:1023B000EFE0FFBFE31989FE37550000130545C65E
:1023C000EFE0FFBE29452C00829945616FD01FFFC9
:1023D000637E970005056392C504850705079CC2C7
:1023E000838507006381C5026364970069FD8DBF23
@@ -583,33 +583,33 @@
:102450005FF603AA018AAA8981440149375B00001B
:10246000B75B000083A7418A6369FA00EDD04A8612
:10247000A6854E85EFE0AFF4D9BF03240A001946C4
-:1024800093054B112285EF20A00221E14E85EF201C
-:10249000000119042A86A2854E85EF20600115E50A
-:1024A000631709002285EF10907F2A89A284A687EE
+:102480009305CB4C2285EF20003E21E14E85EF20C5
+:10249000603C19042A86A2854E85EF20C03C15E5D4
+:1024A000631709002285EF20E03A2A89A284A687D3
:1024B00022870386070001EE858F63D327013E89BB
-:1024C000A28513854B12EFE09FAE310A61BF8306F0
+:1024C000A2851385CB4DEFE09FAE310A61BF830635
:1024D0000700FDD2E312D6FE85070507D9BFEFD26C
:1024E0005FECEFF02FFA01456FD0FFEDEFD27FEBFD
:1024F000EFE0BFC001456FD01FEDEFD29FEA03A50B
:10250000C189EFE04FBB01456FD0FFEBEFD27FE910
-:10251000B76700009387C7A023A0F18AB7670000C0
-:102520009387C7B523A2F18AB76700009387C7B521
-:1025300023A4F18AB76700009387C7B593050021EC
+:10251000B76700009387C7DC23A0F18AB767000084
+:102520009387C7F123A2F18AB76700009387C7F1A9
+:1025300023A4F18AB76700009387C7F193050021B0
:10254000054523A6F18A1384C189EFE0BFD808C0EE
-:1025500019E9375500001305851DEFE05FA57D548F
+:1025500019E93755000013050559EFE05FA57D54D3
:1025600022856FD05FE6B725000037550000A947E8
-:102570002D479306004001469385C5681305051F46
+:102570002D479306004001469385C5681305855A8B
:10258000EFF00FA3AA840840B7550000814601462A
-:102590009385851FEFE0AFA70144F9D02685EFF0C2
+:102590009385055BEFE0AFA70144F9D02685EFF006
:1025A000EFB87DBFEFD2FFDFEFF07FCE0DC5B7559F
-:1025B00000009385451A138581C6EF10506DB755FD
-:1025C00000009385451B138581C6EF10706A138543
-:1025D00081C66FD05FDFB75500009385C51AE1BF94
-:1025E000EFD23FDC2A843755000013054521EFE088
+:1025B00000009385C555138501C8EF20A028B755A5
+:1025C00000009385C556138501C8EF20C0251385EB
+:1025D00001C86FD05FDFB755000093854556E1BF56
+:1025E000EFD23FDC2A84375500001305C55CEFE0CD
:1025F0001F9CEFF03FFBAA85375500001306A41B74
-:102600001305C521EFE0BF9A01456FD0DFDBEFD2A4
+:102600001305455DEFE0BF9A01456FD0DFDBEFD2E8
:102610005FD941112AC6EFD0DFF6B24511E937552F
-:1026200000001305851BEFE09F9841016FD0BFD9D3
+:10262000000013050557EFE09F9841016FD0BFD917
:1026300083A7C189AA841384C18983A7C720E3869D
:10264000A7FE93053014EFD09FFB65F11C4003A556
:10265000C72009C9EFE04F821C40814503A5C72070
@@ -629,58 +629,58 @@
:10273000D1A80947E398E7FE232004029307100479
:102740006312F9046E30D1D9FD15C205C1816EB096
:102750009307A41B13070005B385E50213060005C4
-:102760003E859385A502A295EF107045EF1030537A
+:102760003E859385A502A295EF20C000EF20800E44
:102770001375F50F2305A420A305A4202285EFF0EF
:102780003FE6A1BF930720046311F90216347E309F
:102790001387F6FF63D8E70085077EB09307A41B75
:1027A0006E304DBF9DDA7AB0D5BF930740046310F9
-:1027B000F9028347B42095D313850920EFE02FFF5A
+:1027B000F9028347B42095D31385895BEFE02FFF9F
:1027C00098408347B720FD17A305F72039B7930733
:1027D0003004E319F9F48347B4200347A420E3FE4F
-:1027E000E7EE3E948305A41B13854A20EFE02FFCFF
-:1027F00098408347B7208507C1BF13850920EFE0C4
+:1027E000E7EE3E948305A41B1385CA5BEFE02FFC44
+:1027F00098408347B7208507C1BF1385895BEFE009
:102800000FFB050980408347B420E348F9FE130518
-:10281000CA8AEFE0CFF9EFF09FA785471304A41B06
+:102810004AC6EFE0CFF9EFF09FA785471304A41B4A
:102820006315F5002285EFF07FC1EFF0BFD7228658
-:10283000AA851385CC21EFE08FF780401305A41BF8
-:10284000EF10F0451375F50F2305A420A305A42070
+:10283000AA8513854C5DEFE08FF780401305A41B3C
+:10284000EF2040011375F50F2305A420A305A42054
:1028500069B59307F0076305F900A1476315F90807
:102860008347B420E38B07E60346A420FD1793F7C4
:10287000F70F7D161376F60F2305C420A305F42069
:1028800063F8C7049385B71B1385A71B1D8EA295FC
-:102890002295EFE04FAE9C4013858B2003C7A72005
+:102890002295EFE04FAE9C4013850B5C03C7A72049
:1028A0003E97230D071A83C5B7209385A51BBE95B8
:1028B000EFE0EFEF9C4003C4B7209C4083C7A72004
-:1028C000E3CD87E013850920EFE06FEE0504F5B74F
-:1028D00013050B21EFE0AFED9C4003C7A720BA978B
+:1028C000E3CD87E01385895BEFE06FEE0504F5B794
+:1028D00013058B5CEFE0AFED9C4003C7A720BA97D0
:1028E000238D071ADDBB35478347A4206305E90024
:1028F0002947631EE90EB9CB035984029147130D92
:10290000A41B63FB2709930DA41613060005EA8593
-:102910006E85EF1090281DC91309A4024A8513097A
-:10292000090513060005CA85EF107029E3982DFFED
+:102910006E85EF10F0631DC91309A4024A851309DF
+:10292000090513060005CA85EF10D064E3982DFF52
:102930001306000581456E85EFD0BFA90346A4208C
-:10294000EA856E85EF10B02795471EB41E347EB021
+:10294000EA856E85EF10106395471EB41E347EB085
:10295000EFF0FF9385476312F5029C4083C747025F
-:10296000858B89C71305CA8AEFE06FE488408345E9
+:10296000858B89C713054AC6EFE06FE4884083452D
:10297000A5201305A51BEFF0DF91EFF0BFC2EFE03C
:102980000FE380401306000581451305A41BEFD01B
:102990005FA42315042091B3630109021305F9FF15
:1029A000930700053305F50213060005EA851305B4
-:1029B000A5022295EF10701E51D9930D0005330525
+:1029B000A5022295EF10D05951D9930D000533058A
:1029C000B9031306000581451305A5022295EFD032
:1029D0005FA00A340346A420EA853305B503130536
-:1029E000A5022295EF10B01D1E348507B9BF13074D
+:1029E000A5022295EF1010591E348507B9BF1307B1
:1029F000F0046374F700230504200346B4208347E2
:102A0000A4206370F6089305A61B1305B61BA295B8
:102A10003386C7402295EFE00F968C4083C7B520E0
:102A20003387F500230D271B03C74502058B01CB18
-:102A30009387A71BBE9513058CF9EFE04FD79C40F9
+:102A30009387A71BBE9513050C35EFE04FD79C403D
:102A400003C4B7209C4083C7A7206346F402984084
:102A50008347A7208346B7208507850693F7F70F9E
:102A6000A305D7202305F7209306F004E3F7F6C665
-:102A7000231507209DB113850920EFE04FD30504EE
+:102A7000231507209DB11385895BEFE04FD3050433
:102A8000D1B7A297238D271B83474402858BE1D3BF
-:102A9000CA8513854A20EFE08FD155BF7C4123289A
+:102A9000CA851385CA5BEFE08FD155BF7C412328DF
:102AA0000504232A05049C4381CBEFD29F8F930515
:102AB000850482976FD03F9101458280EFD2DF8CF1
:102AC00036899DCAAA843284B309D600294A1C20BB
@@ -735,755 +735,827 @@
:102DD0002685829741016FD06FDEFC44998DA983CF
:102DE000C207C183B385B740F9BF828001CEEFD25D
:102DF0004FDB7841B2878E23184332220297014578
-:102E00006FD06FDC7D558280EFD2AFD91387C1CEF2
-:102E100078432E86AA8518431385C1CE02976FD0BA
-:102E20008FDAEFD20FD81387C1CE78432E86AA85CA
-:102E300058431385C1CE02976FD0EFD8EFD26FD62B
-:102E40001387C1CE7843AA851385C1CE1847029750
+:102E00006FD06FDC7D558280EFD2AFD9138741D070
+:102E100078432E86AA851843138541D002976FD038
+:102E20008FDAEFD20FD8138741D078432E86AA8548
+:102E30005843138541D002976FD0EFD8EFD26FD6A9
+:102E4000138741D07843AA85138541D0184702974C
:102E50006FD06FD705C611476392E602EFD26FD4E9
:102E60007C410E2241119C4736C632C482972246CD
:102E7000B2462AA2368541016FD0EFD4814636850D
:102E800082801DC2B28711466390C602EFD26FD115
:102E90007841B2238E235843411136C60297B24679
:102EA000410136856FD02FD2814636858280EFD2A0
-:102EB0004FCF9387C1CE4947D8CB37370000130790
+:102EB0004FCF938741D04947D8CB3737000013070E
:102EC00047E5D8DB37370000130727E898DF3737A7
:102ED00000001307C7DEECC3B0C3AA850D461385F7
-:102EE000C1CE23A0070223A2070223A4070223A620
+:102EE00041D023A0070223A2070223A4070223A69E
:102EF000070223A80702D8DFEFD02FED01456FD0DE
-:102F00008FCC3705002013054569828037150020D6
-:102F1000130545698280EFD2CFC8B707002003A709
-:102F200007169307803EC1563357F702B7E700E014
+:102F00008FCC370500201305C57682803715002049
+:102F10001305C5768280EFD2CFC8B707002003A77C
+:102F200007229307803EC1563357F702B7E700E008
:102F30002386D7402387D740856623A0D710916684
:102F400023A0D710B7F700E023A0070023A20700B3
:102F5000014690C78146D4C781461306F7FF90CB40
:102F6000D4CB3D4798C3EFD0AFD7EFF09FF92A8479
:102F7000EFF0DFF9AA852285EFE04F9B375500007F
-:102F800013054529EFD0BFFF6FD0EFC37311013494
+:102F80001305C564EFD0BFFF6FD0EFC373110134D9
:102F9000EFD07F96B7F700E023A20700EFD04FCE27
-:102FA000EFD03F987311013473002030814785467C
-:102FB000130700023396F6006306A6008507E39B1D
-:102FC000E7FEFD573E858280EFD2AFBD85451305F4
-:102FD0000002EF00906D6FD00FBFEFD28FBC854520
-:102FE0002145EF00906C6FD00FBEEFD28FBB8545AF
-:102FF0001145EF00906B6FD00FBDEFD28FBA8545B2
-:103000004145EF00906A6FD00FBCEFD28FB9854574
-:1030100013050004EF0070696FD0EFBAEFD26FB8FC
-:1030200095653765000001469385C52913054598C8
-:10303000EFF0FFE76FD02FB99307400663ECA700CE
-:10304000931745001565130545333E951841FD5707
-:103050006313F70001458280EFD2AFB4411113F53D
-:10306000F50F32C6EFF05FFD11C54E25324608451B
-:10307000EF00104441016FD00FB5EFD28FB213F5BE
-:10308000F50FEFF07FFBAA87014589C7CE27884758
-:10309000EF0070416FD02FB3EFD2AFB0011113F535
-:1030A000F50F3284EFF05FF905C55C412AC68297BF
-:1030B00032455C45FC82C1473ECE8D473ECC09C4BB
-:1030C0001547631AE40002CE08454C08EF00B03102
-:1030D00005616FD04FAF05476315E40091473ECEC1
-:1030E000E5B76315F40093078002D5BF89476315E0
-:1030F000F40093078004E5B791476314F400D147C7
-:10310000F9BF99476314F400F147D1BF9D47E31D10
-:10311000F4FAE147E9B7EFD22FA713F5F50FAE8424
-:10312000B289368A3A89EFF03FF1994731CD484567
-:10313000EFF0DFE73D472A8499476367A704EFE094
-:103140005FA4B146B306D402B7070020138707086F
-:103150002A8693870708369783160700639F960091
-:103160004C43639C45012E23639935011847631630
-:103170002701EFE0DFA1814701A87D576389E600C1
-:103180003285EFE0DFA09D473E856FD02FA331450C
-:103190003305A4023E9506A12322450123113501E2
-:1031A000232425013285F1B7EFD2AF9F13F5F50F38
-:1031B000EFF09FE819471DC94845EFF03FDFBD47D5
-:1031C0002A84194763E4A702EFE0BF9BB1473304A9
-:1031D000F402B7070020938707087D57A2978396CC
-:1031E00007006398E600EFE09F9A01473A856FD0A9
-:1031F0008F9D41677D1798C323A2070023A4070072
-:10320000DDB7EFD26F98011113F5F50F328AEFF0A9
-:10321000BFE2994721C185442A8463159A10484525
-:10322000EFF0DFD83D47AA8499476365A702EFE036
-:103230005F95B14AB3875403370900201309090881
-:10324000AA893E9903170900FD576319F700EFE0BB
-:103250001F9499473E8505616FD04F965C408297D9
-:1032600085450545EF0070445C440D473AC47C82B7
-:103270003EC88357290002CA52CE638C4709C1C792
-:103280000947638DE70808444C00EF00D015184447
-:10329000B7170140938607C005456302D702094569
-:1032A000630FF700938707400D45630AF700B727C0
-:1032B00001409387078001456313F700114593F59B
-:1032C000F40FEF00901F0808EF00D0089567938770
-:1032D000472B8E04BE94D04037E700E093060005EC
-:1032E000B307C7002380D74093575600938707043E
-:1032F00085468A07B396C600BA9794C34E85EFE019
-:103300001F89814781BF930780023EC6A1473ECCFB
-:103310009DBF930780043EC656CCB5B791473EC6C5
-:10332000C147F5B79947E3170AF24845EFF01FC8C0
-:103330003D479947E360A7F29317350015651305DC
-:10334000452B3E9558419357570093870706B394F2
-:10335000E4008A0737E700E0BA9784C35DB7EFD28D
-:103360004F84EFF0BFC4B1473305F502B707002023
-:10337000938707083E955C4199C3084582976FD0B3
-:103380008F8473110134EFD00FD70545EF00300360
-:1033900019C50545EFF0BFFC0545EF003004EFD03F
-:1033A0004FD8731101347300203073110134EFD002
-:1033B0008FD40945EF00B00019C50945EFF03FFA79
-:1033C0000945EF00B001EFD0CFD573110134730080
-:1033D000203073110134EFD00FD21145EF00207E61
-:1033E00019C51145EFF0BFF71145EF00207FEFD071
-:1033F0004FD3731101347300203073110134EFD0B7
-:103400008FCF2145EF00A07B19C52145EFF03FF597
-:103410002145EF00A07CEFD0CFD0731101347300B1
-:10342000203073110134EFD00FCD4145EF002079EA
-:1034300019C54145EFF0BFF24145EF00207AEFD0CA
-:103440004FCE731101347300203073110134EFD06B
-:103450008FCA13050002EF0080761DCD1305000210
-:10346000EFF0FFEF13050004EFF07FEF1305000806
-:10347000EFF0FFEE13050010EFF07FEE13050020D4
-:10348000EFF0FFED1305003EEF004075EFD06FC980
-:10349000731101347300203013050004EF00207213
-:1034A00055FD13050008EF0080714DF9130500105C
-:1034B000EF00E07045F513050020EF00407059FD66
-:1034C000F1B773110134EFD00FC313050040EF00C3
-:1034D000006F29C113050040EFF07FE80565130573
-:1034E0000580EFF0DFE70565EFF07FE70965EFF0B6
-:1034F0001FE71165EFF0BFE62165EFF05FE641657C
-:10350000130505C0EF00806DEFD0AFC1731101341A
-:1035100073002030056513050580552545FD0565BB
-:10352000792D4DF90965612D55F51165492D5DF12F
-:103530002165712545F1C9BF01458280EFC27FE653
-:103540009C412041A14641111CC0B1473EA4DC4131
-:103550002316040013F7F7006301D702A546631E84
-:10356000D70005675AA013D747000D8B01C78546C2
-:103570006308D7002313040031A023120400E5B729
-:1035800009677AA099838D8B05476389E70081C716
-:1035900009476387E7062314040021A0930700600E
-:1035A0001EA41848B7470140938707806316F704A5
-:1035B000116585451105EF00500F93070020B714E2
-:1035C00001407C820D49E1474C00138504803EC6D2
-:1035D0004AC4112D930700407C824C00914713850B
-:1035E00004803EC64AC401250848A285EF00B00FFA
-:1035F00008488545EF003018014541016FC0BFDC28
-:103600009307004071BFEFC23FD8B7140020138466
-:10361000C46E930750035CC837190020B7470140B8
-:10362000130649699387078074461CC89967938776
-:1036300087987CC2B70700C0F58FC166A106716785
-:1036400013070720D58F1165411138C67CC6854503
-:10365000B7070C00110518C01CC423220400231650
-:103660000400EF009004B7190140930700207C820A
-:103670000D4AE1474C001385098052C43EC6A5237C
-:10368000930700407C824C009147138509803EC619
-:1036900052C4912B08489385C46EEF00D0040848AB
-:1036A0008545EF00500DB75500009386C46E130694
-:1036B00030109385452913054969EFF0EFE2014584
-:1036C00041016FC0BFCFEFC2DFCD204193050002A3
-:1036D0000848EF00101019C51C48CA231375F50FD0
-:1036E0006FC07FCE7D55EDBFEFC2BFCB24412E848E
-:1036F000884893050004EF00D00D7DD99C48420412
-:103700004180C2A305456FC01FCCEFC29FC9C1470E
-:103710003841638BF502C5476395F502544B054666
-:1037200093D75600938707063316D6008A07B7E665
-:1037300000E0B69790C30146084B93055052EF0046
-:10374000F00401456FC03FC8544B054693D756005F
-:10375000938707043316D6008A07B7E600E0B697CA
-:1037600090C30546D1BF411122C626C4731101344E
-:10377000B7140020EFD02F9893874469A043930596
-:1037800050520848EF00500619C985451385446911
-:10379000EFF02FDB084893055052EF00B008EFD050
-:1037A0004F98731101343244A24441017300203018
-:1037B00073110134EFD02F94376500001305859AFB
-:1037C000EFD0EFFEEFD0EF9573110134730020308E
-:1037D00073110134EFD02F92376500001305C5999E
-:1037E000EFD0EFFCEFD0EF93731101347300203072
-:1037F000EFC23FBB376500001305859BEFD02FFB61
-:10380000A922B707002083A5071637650000130516
-:10381000C59CEFD0CFF9152EAA853765000013059A
-:10382000C59DEFD0CFF8312801456FC0DFB9EFC299
-:103830005FB7EF007000EF003001EF0090156FC030
-:103840009FB8EFC21FB6EFF09FFED12C6FC0BFB77D
-:10385000B71702409843B706FFF0411113671700EE
-:1038600098C3D84337060200758FD8C39843B7066C
-:10387000F7FEFD16758F98C39843B706FCFFFD163B
-:10388000758F98C3D843B70601FFFD16758FD8C34F
-:103890009843B70600ECFD16758F98C33707FF00F5
-:1038A00098C723A6070202C402C69843C166558F73
-:1038B00098C3B716024005679C42F18F3EC6A247E7
-:1038C00085073EC4B24781E7A247E397E7FEB717F3
-:1038D00002409C431397E7006357070685473EC69F
-:1038E00032478547631FF704B7170240D843B7062E
-:1038F000C1FFFD16D8C3D843D8C3D84313670740C8
-:10390000D8C3D843758FD8C3D843B7062900558F7D
-:10391000D8C39843B7060001558F98C398439316B0
-:103920006700E3DD06FED843B7160240719BD8C39B
-:10393000D84313672700D8C32147DC42B18BE39EED
-:10394000E7FE4101828002C661BFB7160240D8423D
-:10395000B70700201146318B938707166305C70010
-:1039600021466308C70237177A001307072098C358
-:1039700037170240584311839376F700370700202A
-:10398000130707143697142398433357D70098C367
-:103990008280D842D442416649833D8BF18E130622
-:1039A000270015CF3D47630FE6024147630FE6024C
-:1039B000454781456313E6004146A1E2374702408F
-:1039C00003270780418B0DC737177A00130707209D
-:1039D0003306C70290C3C9DD9843058349BF8145BB
-:1039E0004946E1BF85453546C9BF81453D46F1B7EA
-:1039F00037173D0013070790E1BF371502405855B0
-:103A00009316F700585563DF060411833D8B930628
-:103A1000170037177A00130707203357D70298C3C8
-:103A20005455A182BD8A8DE295463307D70205839E
-:103A300098C337170240585794433D8B050733D737
-:103A4000E60298C3984369B705456394A600E54626
-:103A5000E9BF3D456396A600D1463387E602C9BF5C
-:103A60008906E5BF3D8B9306170037177A001307C9
-:103A700007203357D702F1B701A07390123497D1C2
-:103A8000FF1F938121EE17C100201301A1571725B5
-:103A900000001305A50E97C5FF1F9385A556138635
-:103AA000818063FAC5008322050023A0550011051B
-:103AB0009105E3EAC5FE1385818097E5FF1F938595
-:103AC000A5D46377B500232005001105E36DB5FE8D
-:103AD000FD42739002BCFD4273904280B7820000A9
-:103AE000938202807390023097C2FFFF9382C2518B
-:103AF00093E2320073905230EFF09FD597D2FFFFE0
-:103B00009382C2A77390123473002030EFC27F8972
-:103B10000564130484BB2285EFD0BFDBEDBFEFC289
-:103B20005F88B745000037650000D14729479306F5
-:103B3000002001469385C5B01305C59EEFD05FC731
-:103B400019C1EFD0BFDE6FC01F88B7F7FF1F03A5F5
-:103B5000477082805841032805004C4537060140D4
-:103B6000930706403E979346F8FFB1C5832506406C
-:103B7000F58D2320B640D043F18ED4C31443B3E671
-:103B8000060114C3184190479346F7FF758E90C7FE
-:103B9000D047F18ED4C7144541466399C600944777
-:103BA000D98E94C7D447558FD8C78280B69794438F
-:103BB000558F98C382801C43F58F1CC38280B70742
-:103BC00001401387074083A70740584B698F09C7F7
-:103BD0007D8D3335A000828001458280B70701408A
-:103BE00023AAA74082809C4513F7070113F8F7002A
-:103BF00001C7D8413368E8008E2113F7F50F39C3A8
-:103C000018418146854E3D4F930F800293028004F8
-:103C1000214E3396DE00B3F8C50063111603939866
-:103C2000260033131F011343F3FF3377E300B31868
-:103C3000180133E7E800639FF70550C98506E39A4A
-:103C4000C6FD18C11307F00F6375B7045441214630
-:103C5000854E3D4F930F800293028004414EB398EE
-:103C6000CE0033F715016392E802131726000117FF
-:103C70003313EF001343F3FFB376D3003317E80099
-:103C8000D98E639DF701232A15010506E319C6FDA8
-:103C900054C18280E39457FA10C94DB7E39757FE99
-:103CA00023281501DDB708456D8D3335A0008280CE
-:103CB00019C20CC982804CC9828013F7C50F93F7D3
-:103CC0003500B7050140BA9594458A073D4733173B
-:103CD000F7001347F7FF758F98C598453315F50022
-:103CE000598D88C5828003A7018B894710216311F4
-:103CF000F70214318D4763EDD7003C219A0637E770
-:103D000000E09607D58F93F7F70F32972300F7401F
-:103D100054410547935756003317C70089CA938704
-:103D200007048A07B7E600E0B69798C382809387B6
-:103D30000706C5BF371702405C439146B18B6385C8
-:103D4000D700A1466382D706B7177A00938707206A
-:103D50001CC1371602405C423707002013070715C5
-:103D60009183BD8BBA9794231C41B3D7D7005CC114
-:103D70005442A1829D8ABA969422B3D6D70014C524
-:103D80005442AD829D8A36971823B3D7E7005CC5AD
-:103D9000584239839376370013874180369718232A
-:103DA000B3D7E7021CC982805C435843C166C9830C
-:103DB000758FB7F6FF1F83A6C670BD8B8907139654
-:103DC000160163480600C54601466392D702C947FB
-:103DD00039A88946638FD702BD46638ED702C14694
-:103DE000638ED702C54601466393D700C1471DEFD6
-:103DF0003747024003270780418B05C737177A00F2
-:103E000013070720B307F7021CC121D61C41858385
-:103E100081B701466DBF0546B547D1BF0146BD47D5
-:103E2000F9B737173D0013070790E9BFB7150240F0
-:103E3000D8559316F700D85563DF060411833D8BE0
-:103E40009306170037177A00130707203357D70256
-:103E500018C1D455A182BD8A8DE295463307D70299
-:103E6000058318C137170240585714413D8B050789
-:103E700033D7E60218C1184171B785456394B6007F
-:103E8000E546E9BFBD456396B600D1463387E602F5
-:103E9000C9BF8906E5BF3D8B9306170037177A0027
-:103EA000130707203357D702F1B799C537170240D8
-:103EB0001C4F5D8D08CF8280B7170240984F134585
-:103EC000F5FF798D88CF828099C5371702405C4F06
-:103ED0005D8D48CF8280B7170240D84F1345F5FF5C
-:103EE000798DC8CF8280EFC2CFCB1629F577FD1729
-:103EF000F58FF621DA257971D58F1EA95625FD7724
-:103F00009387379FF58FD6212A842EC6D58F962585
-:103F1000D58FB625D58F5EA55E29C207C18393F7DD
-:103F2000F7CFD98F5EA96808EFF0DFE0B74701400F
-:103F300093870780B245631EF402A2576547B38793
-:103F4000E7029841930640060A07B3D7E70233D742
-:103F5000D702B3F7D7021207920793872703B3D785
-:103F6000D702BD8BD98FC207C1831EA445616FC024
-:103F70008FC59257E1B791C55E250967D98F5EA5B8
-:103F800082805A25F977FD17F98FD5BF13F7F50F02
-:103F900085471583B395B7006319F7009307C500EC
-:103FA000984301CED98D8CC3828089469307450101
-:103FB000E318D7FE93070501E5B793C5F5FFF98D23
-:103FC000DDB793F5F51F4EA182804A211375F51FC9
-:103FD00082800A216D8D3335A000828093C5F5FF64
-:103FE000C205C1810EA1828013F7F50F85461583A6
-:103FF000B397B6006311D7025A25F98F1A210145EC
-:104000004207418381CB0545A181B315B5006D8F72
-:104010003335E000828089466314D7001A29F1BF46
-:104020005A29E1BFA1818547B397B70093C7F7FF2E
-:10403000C207C1831EA18280EFC2AFB68145094588
-:10404000EFE09FDC6FC02FB8EFC2AFB585450945E3
-:10405000EFE03FDD6FC02FB7411122C6375400405B
-:10406000930550521305048026C4EFF0FFF705C1F5
-:1040700013050480EFF07FF51387418B1423B717E6
-:10408000002093874770B697850688A314A3B7547A
-:1040900000409305404213850480EFF0FFF405C90A
-:1040A0001384418B1020B71500209385457013852C
-:1040B000048039240C20376500001305059FEFC0EC
-:1040C0001FEF1385048023000400EFF01FF0375426
-:1040D0000040A14513050480EFF0BFEF8547631B47
-:1040E000F50013050480A145EFF05FEF1305048090
-:1040F000EFF0BFED3244A244410173002030EFC223
-:104100004FAA81451305A002EFE0BFD16FC0AFAB4E
-:10411000EFC22FA981451305B002EFE09FD06FC019
-:104120008FAAEFC20FA881451305C002EFE07FCF31
-:104130006FC06FA9EFC2EFA681451305D002EFE073
-:104140005FCE6FC04FA8EFC2CFA581451305E00237
-:10415000EFE03FCD6FC02FA7EFC2AFA4EFF03FFA63
-:10416000EFF01FFBEFF0FFFBEFF0DFFCEFF0BFFD28
-:10417000814513058003EFE0DFCA814513059003F5
-:10418000EFE03FCA81451305A003EFE09FC96FC070
-:104190008FA3EFC20FA1797181451305A002EFE053
-:1041A000BFC681451305B002EFE01FC68145130568
-:1041B000C002EFE07FC581451305D002EFE0DFC408
-:1041C00081451305E002EFE03FC48145130570030C
-:1041D000EFE09FC3814513057003EFE09FC4814565
-:1041E00013058003EFE05FC2814513059003EFE004
-:1041F000BFC181451305A003EFE01FC1EFF0DFF55C
-:1042000085452145EFF07FCA854537050400EFF06D
-:10421000BFCB93070040FC82371401408D473ECC52
-:104220004C08E147130504C03ECEEFF0DF9B8567E5
-:1042300093870780FC824C089147130504C03ECE4B
-:10424000EFF07F9AF16737540040938707200C10F6
-:104250003ED013050480B7070C003ED402D22316CB
-:104260000102EFF05FC8930770137C8685475C8777
-:10427000680085473EC8EFF01FA713050480054678
-:1042800093055052EFF09FD0054613050480930527
-:104290004042EFF0BFCF854513050480EFF0BFCD5E
-:1042A00045616FC04F92EFC2CF8F2A84EFF07FD16C
-:1042B000930500082285EFF0DFD17DD96FC0AF9064
-:1042C000EFC28F8CB7570040938707802A84AE894E
-:1042D00032896316F504854513057003EFE07FB45A
-:1042E000CA84B307994093F7F70FCE978C232285A2
-:1042F000FD14EFF05FFBF5F4930500042285EFF069
-:104300005FCD7DD9B7570040938707806318F404C9
-:10431000814513057003EFE0DFB06FC02F8AB72728
-:104320000040138707806315E500854511457DB77B
-:10433000138707C06315E5008545154545B7374721
-:104340000040130707406315E5008545614579B7CF
-:10435000E315F5FC85451305300249B7B727004042
-:10436000138707806315E400814511456DB71387F6
-:1043700007C06315E4008145154571BF374700400C
-:10438000130707406315E4008145614569B7E316EB
-:10439000F4F8814513053002BDBF01476314E60000
-:1043A00001458280B307E5000507B386E5009C233D
-:1043B00083C6F6FFE384D7FE3385D7408280B3C738
-:1043C000A5008D8B3307C50081E78D4763EDC700DE
-:1043D000AA87637EE508942185078505A38FD7FE0C
-:1043E000E3EBE7FE828093763500AA8789CA9421A1
-:1043F00085078505A38FD7FE93F63700C5BF937653
-:10440000C7FF138606FE63F0C70683A3050083A2D9
-:10441000450083AF850003AFC50083AE050103AE41
-:10442000450103A3850183A8C5019385450223A007
-:10443000770003A8C5FF23A2570023A4F70123A6F2
-:10444000E70123A8D70123AAC70123AC670023AE45
-:1044500017019387470223AE07FF75B79041910775
-:10446000910523AEC7FEE3EBD7FEE3E6E7F68280D5
-:10447000AA8798239386170009EB850503C7F5FFE4
-:104480008507A38FE7FE75FB8280B687DDB7AA8715
-:10449000982185078505A38FE7FE7DFB8280AA878B
-:1044A000850703C7F7FF6DFF3385A7407D15828021
-:1044B00015C27D160147B307E500B386E5009C23CE
-:1044C00094226396D7006304C7000507EDF7338590
-:1044D000D740828001458280A04F0000B44F000089
-:1044E000C44F0000D84F0000E44F0000F04F000020
-:1044F000F44F000004500000145000001C50000055
-:10450000305000004050000048500000545000005F
-:1045100060500000745000007C5000008C5000007F
-:104520009C500000B45000006D61696E00000000F6
-:10453000546F20696E697469616C697A652064657D
-:10454000766963653A2573206661696C65642E201F
-:10455000546865206572726F7220636F64652069AC
-:10456000732025640A0000007469646C6500000013
-:104570000000010002000100030001000200010030
-:10458000040001000200010003000100020001001C
-:10459000050001000200010003000100020001000B
-:1045A00004000100020001000300010002000100FC
-:1045B00006000100020001000300010002000100EA
-:1045C00004000100020001000300010002000100DC
-:1045D00005000100020001000300010002000100CB
-:1045E00004000100020001000300010002000100BC
-:1045F00007000100020001000300010002000100A9
-:10460000040001000200010003000100020001009B
-:10461000050001000200010003000100020001008A
-:10462000040001000200010003000100020001007B
-:104630000600010002000100030001000200010069
-:10464000040001000200010003000100020001005B
-:10465000050001000200010003000100020001004A
-:10466000040001000200010003000100020001003B
-:104670003031323334353637383941424344454698
-:10468000000000000A205C207C202F0A00000000AF
-:104690002D205254202D2020202020546872656146
-:1046A00064204F7065726174696E6720537973740A
-:1046B000656D0A004A756C20313320323032340087
-:1046C000202F207C205C202020202025642E2564A3
-:1046D0002E2564206275696C642025730A00000031
-:1046E0002032303036202D203230313920436F7067
-:1046F0007972696768742062792072742D746872A7
-:10470000656164207465616D0A000000284E554C97
-:104710004C29000030313233343536373839616254
-:104720006364656600000000746F74616C206D65E1
-:104730006D6F72793A2025640A0000007573656414
-:10474000206D656D6F7279203A2025640A000000A3
-:104750006D6178696D756D20616C6C6F63617465F6
-:1047600064206D656D6F72793A2025640A0000003F
-:104770006C697374206D656D6F72792075736167F4
-:104780006520696E666F726D6174696F6E000000FE
-:104790006C6973745F6D656D00000000746F206656
-:1047A00072656520612062616420646174612062C9
-:1047B0006C6F636B3A0A00006D656D3A20307825A6
-:1047C0003038782C207573656420666C61673A20F8
-:1047D00025642C206D6167696320636F64653A20EE
-:1047E0003078253034780A00686561700000000078
-:1047F0006D656D20696E69742C206572726F722010
-:10480000626567696E2061646472657373203078D5
-:1048100025782C20616E6420656E6420616464726A
-:1048200065737320307825780A0000001B5B324ADC
-:104830001B5B48002D2D46756E6374696F6E204CAE
-:104840006973743A0A0000005F5F0000252D31365D
-:1048500073202D2D2025730A000000006465766901
-:1048600063650000252D2A2E732020202020202083
-:1048700020207479706520202020202020202072A4
-:10488000656620636F756E740A000000202D2D2D63
-:104890002D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D48
-:1048A0002D202D2D2D2D2D2D2D2D2D2D0A000000EF
-:1048B000252D2A2E2A7320252D32307320252D38C0
-:1048C000640A00006576656E74000000252D2A2EAE
-:1048D00073202020202020736574202020207375F1
-:1048E0007370656E64207468726561640A0000000C
-:1048F00020202D2D2D2D2D2D2D2D2D2D202D2D2D0F
-:104900002D2D2D2D2D2D2D2D2D2D2D0A00000000AE
-:10491000252D2A2E2A73202030782530387820251E
-:104920003033643A00000000252D2A2E2A732020FF
-:1049300030782530387820300A0000006D61696CCD
-:10494000626F7800252D2A2E7320656E747279208F
-:1049500073697A652073757370656E64207468720C
-:104960006561640A00000000202D2D2D2D20202DD2
-:104970002D2D2D202D2D2D2D2D2D2D2D2D2D2D2D74
-:104980002D2D0A00252D2A2E2A732025303464204F
-:1049900020253034642025643A000000252D2A2E7D
-:1049A0002A73202530346420202530346420256487
-:1049B0000A0000006D736771756575650000000081
-:1049C000252D2A2E7320656E74727920737573708D
-:1049D000656E64207468726561640A00202D2D2D57
-:1049E0002D20202D2D2D2D2D2D2D2D2D2D2D2D2D11
-:1049F0002D0A0000252D2A2E2A732025303464200C
-:104A00002025643A00000000252D2A2E2A73202537
-:104A1000303464202025640A000000006D75746540
-:104A200078000000252D2A2E732020206F776E65D8
-:104A3000722020686F6C642073757370656E6420DB
-:104A40007468726561640A00202D2D2D2D2D2D2D89
-:104A50002D202D2D2D2D202D2D2D2D2D2D2D2D2DA0
-:104A60002D2D2D2D2D0A0000252D2A2E2A732025CF
-:104A70002D382E2A7320253034642025640A000046
-:104A800073656D6170686F7265000000252D2A2EB8
-:104A900073207620202073757370656E64207468AF
-:104AA000726561640A000000202D2D2D202D2D2D12
-:104AB0002D2D2D2D2D2D2D2D2D2D2D0A00000000FD
-:104AC000252D2A2E2A7320253033642025643A00B0
-:104AD000252D2A2E2A7320253033642025640A00D0
-:104AE0007468726561640000252D2A2E732070722F
-:104AF0006920207374617475732020202020207336
-:104B0000702020202020737461636B2073697A65A4
-:104B1000206D61782075736564206C6566742074FF
-:104B200069636B20206572726F720A00202D2D2D33
-:104B300020202D2D2D2D2D2D2D202D2D2D2D2D2DCC
-:104B40002D2D2D2D202D2D2D2D2D2D2D2D2D2D20AF
-:104B5000202D2D2D2D2D2D20202D2D2D2D2D2D2DAC
-:104B60002D2D2D202D2D2D0A00000000252D2A2E63
-:104B70002A73202533642000207265616479202027
-:104B8000000000002073757370656E640000000003
-:104B900020696E69742020200000000020636C6F83
-:104BA0007365202000000000203078253038782000
-:104BB0003078253038782020202025303264252593
-:104BC00020202030782530387820253033640A00C2
-:104BD00074696D6572000000252D2A2E73202070E7
-:104BE0006572696F64696320202074696D656F75F3
-:104BF0007420202020202020666C61670A000000BD
-:104C0000202D2D2D2D2D2D2D2D2D2D202D2D2D2DEE
-:104C10002D2D2D2D2D2D202D2D2D2D2D2D2D2D2DD1
-:104C20002D2D0A00252D2A2E2A7320307825303884
-:104C3000782030782530387820000000616374696E
-:104C400076617465640A0000646561637469766105
-:104C50007465640A0000000063757272656E7420EA
-:104C60007469636B3A3078253038780A00000000A8
-:104C70006C69737420616C6C2073796D626F6C2049
-:104C8000696E2073797374656D0000006C697374CC
-:104C9000000000006C6973742064657669636520A8
-:104CA000696E2073797374656D0000005F5F636DDA
-:104CB000645F6C6973745F646576696365000000A6
-:104CC0006C6973742064657669636520696E20730E
-:104CD000797374656D0000006C6973745F64657648
-:104CE000696365006C6973742074696D657220690D
-:104CF0006E2073797374656D000000005F5F636DF3
-:104D0000645F6C6973745F74696D657200000000A4
-:104D10006C6973742074696D657220696E20737993
-:104D20007374656D000000006C6973745F74696D65
-:104D3000657200006C697374206D657373616765DB
-:104D400020717565756520696E2073797374656D62
-:104D5000000000005F5F636D645F6C6973745F6D7A
-:104D600073677175657565006C697374206D657323
-:104D70007361676520717565756520696E2073794B
-:104D80007374656D000000006C6973745F6D736708
-:104D900071756575650000006C697374206D6169DB
-:104DA0006C20626F7820696E2073797374656D0072
-:104DB0005F5F636D645F6C6973745F6D61696C6282
-:104DC0006F7800006C697374206D61696C20626F8C
-:104DD0007820696E2073797374656D006C697374E3
-:104DE0005F6D61696C626F78000000006C697374BC
-:104DF000206D7574657820696E2073797374656DA4
-:104E0000000000005F5F636D645F6C6973745F6DC9
-:104E100075746578000000006C697374206D75749A
-:104E2000657820696E2073797374656D00000000E9
-:104E30006C6973745F6D7574657800006C69737468
-:104E4000206576656E7420696E2073797374656D64
-:104E5000000000005F5F636D645F6C6973745F6581
-:104E600076656E74000000006C6973742065766569
-:104E70006E7420696E2073797374656D0000000094
-:104E80006C6973745F6576656E7400006C69737429
-:104E90002073656D6170686F726520696E2073792B
-:104EA0007374656D000000005F5F636D645F6C6923
-:104EB00073745F73656D00006C6973742073656D46
-:104EC0006170686F6E6520696E2073797374656DAB
-:104ED000000000006C6973745F73656D0000000072
-:104EE0006C69737420746872656164005F5F636DE0
-:104EF000645F6C6973745F7468726561640000005C
-:104F00006C69737420746872656164006C69737491
-:104F10005F74687265616400746865207465726DA1
-:104F2000696E616C2073637265656E005F5F636DAF
-:104F3000645F636C65617200746865207465726D8E
-:104F4000696E616C2073637265656E00636C656188
-:104F5000720000007265626F6F7420746865206271
-:104F60006F617264000000005F5F636D645F726573
-:104F7000626F6F74000000007265626F6F7420745E
-:104F8000686520626F617264000000007265626F84
-:104F90006F7400002D000000257300002F0000003A
-:104FA0004368617261637465722044657669636504
-:104FB00000000000426C6F636B2044657669636596
-:104FC000000000004E6574776F726B20496E746547
-:104FD00072666163650000004D5444204465766943
-:104FE0006365000043414E204465766963650000B7
-:104FF00052544300536F756E64204465766963654F
-:10500000000000004772617068696320446576693A
-:1050100063650000493243204275730055534220B6
-:10502000536C617665204465766963650000000015
-:1050300055534220486F737420427573000000007E
-:105040005350492042757300535049204465766996
-:10505000636500005344494F20427573000000000F
-:10506000504D2050736575646F20446576696365A3
-:10507000000000005069706500000000506F7274FD
-:10508000616C2044657669636500000054696D6554
-:105090007220446576696365000000004D697363A2
-:1050A000656C6C616E656F757320446576696365C8
-:1050B00000000000556E6B6E6F776E00546F6F20AE
-:1050C0006D616E7920617267732021205765206FB2
-:1050D0006E6C79205573653A0A0000002573200034
-:1050E00025733A20636F6D6D616E64206E6F74205E
-:1050F000666F756E642E0A0052542D546872656195
-:1051000064207368656C6C20636F6D6D616E647391
-:105110003A0A00005F5F636D645F0000252D313641
-:1051200073202D2025730A0052542D546872656136
-:1051300064207368656C6C2068656C70000000000A
-:105140005F5F636D645F68656C70000053686F77C4
-:1051500020746865206D656D6F7279207573616765
-:105160006520696E207468652073797374656D00BD
-:105170005F5F636D645F6672656500004C697374A0
-:10518000207468726561647320696E20746865209C
-:1051900073797374656D00005F5F636D645F707336
-:1051A000000000006D7368200000000066696E73E7
-:1051B000682000003E00000066696E73683A206354
-:1051C000616E206E6F742066696E64206465766916
-:1051D00063653A2025730A006E6F206D656D6F72EE
-:1051E0007920666F72207368656C6C0A000000009D
-:1051F000747368656C6C000073687278000000005E
-:105200000800000025630000082573202008000026
-:10521000082008001B5B324B0D000000257325732E
-:1052200000000000726561642073746174757320FE
-:1052300066726F6D20686172647761726520706953
-:105240006E00000070696E52656164007772697467
-:10525000652076616C756520746F20686172647773
-:105260006172652070696E0070696E57726974654D
-:105270000000000073657420686172647761726574
-:105280002070696E206D6F646500000070696E4D5E
-:105290006F64650075617274310000009830000021
-:1052A000583000007A30000016310000A8310000AC
-:1052B00002320000010000001600000002000000A1
-:1052C00017000000040000001800000008000000A3
-:1052D00019000000100000001A000000200000006B
-:1052E00027000000400000002700000080000000B0
-:1052F000270000000001000027000000000200005D
-:105300002700000000040000380000000008000032
-:1053100038000000001000003800000000200000ED
-:10532000380000000040000038000000008000004D
-:1053300038000000FFFFFFFF000000000000000039
-:1053400000000000010000000A30000000180140C9
-:1053500004000000020000000A30000000180140B4
-:1053600008000000030000000A300000001801409F
-:1053700010000000040000000A3000000018014086
-:1053800020000000050000000A3000000018014065
-:1053900040000000FFFFFFFF0000000000000000D1
-:1053A0000000000007000000FA2F0000001001407C
-:1053B0000020000008000000FA2F0000001001404B
-:1053C0000040000009000000FA2F0000001001401A
-:1053D00000800000FFFFFFFF000000000000000051
-:1053E00000000000FFFFFFFF0000000000000000C1
-:1053F00000000000FFFFFFFF0000000000000000B1
-:1054000000000000FFFFFFFF0000000000000000A0
-:1054100000000000FFFFFFFF000000000000000090
-:10542000000000000F000000FA2F000000100140F3
-:105430000100000010000000FA2F000000100140E1
-:105440000200000011000000FA2F000000100140CF
-:105450000400000012000000FA2F000000100140BC
-:1054600008000000FFFFFFFF000000000000000038
-:1054700000000000FFFFFFFF000000000000000030
-:1054800000000000FFFFFFFF000000000000000020
-:1054900000000000FFFFFFFF000000000000000010
-:1054A0000000000017000000EA2F00000008014083
-:1054B0000100000018000000EA2F00000008014071
-:1054C0000200000019000000EA2F0000000801405F
-:1054D000040000001A000000EA2F0000000801404C
-:1054E00008000000FFFFFFFF0000000000000000B8
-:1054F00000000000FFFFFFFF0000000000000000B0
-:10550000000000001D000000EA2F0000000801401C
-:10551000100000001E000000EA2F000000080140FB
-:10552000200000001F000000EA2F000000080140DA
-:105530004000000020000000EA2F000000080140A9
-:105540008000000021000000FA2F00000010014040
-:105550001000000022000000FA2F0000001001409F
-:105560002000000023000000DA2F0000000C0140A2
-:105570000100000024000000DA2F0000000C0140B0
-:105580000200000025000000DA2F0000000C01409E
-:1055900004000000260000000A300000001801404E
-:1055A00080000000270000000A30000000180140C1
-:1055B00000010000280000000A300000001801402F
-:1055C00000020000290000000A300000001801401D
-:1055D000000400002A0000000A300000001801400A
-:1055E000000800002B0000000A30000000180140F5
-:1055F000001000002C0000000A30000000180140DC
-:10560000002000002D0000000A30000000180140BA
-:10561000004000002E0000000A3000000018014089
-:10562000008000002F000000DA2F0000000C014075
-:105630000004000030000000DA2F0000000C0140E0
-:1056400000080000FFFFFFFF000000000000000056
-:1056500000000000FFFFFFFF00000000000000004E
-:105660000000000033000000DA2F0000000C0140B1
-:105670000010000034000000DA2F0000000C014090
-:105680000020000035000000DA2F0000000C01406F
-:105690000040000036000000DA2F0000000C01403E
-:1056A0000080000037000000C82F000000140140F7
-:1056B0000001000038000000C82F00000014014065
-:1056C0000002000039000000C82F00000014014053
-:1056D000000400003A000000C82F00000014014040
-:1056E000000800003B000000C82F0000001401402B
-:1056F000001000003C000000C82F00000014014012
-:10570000002000003D000000C82F000000140140F0
-:10571000004000003E000000C82F000000140140BF
-:10572000008000003F000000FA2F00000010014040
-:105730004000000040000000FA2F0000001001406F
-:105740008000000041000000FA2F0000001001401E
-:105750000001000042000000FA2F0000001001408C
-:105760000002000043000000EA2F00000008014092
-:105770000001000044000000EA2F00000008014082
-:105780000002000045000000EA2F00000008014070
-:105790000004000046000000EA2F0000000801405D
-:1057A0000008000047000000EA2F00000008014048
-:1057B0000010000048000000EA2F0000000801402F
-:1057C00000200000FFFFFFFF0000000000000000BD
-:1057D00000000000FFFFFFFF0000000000000000CD
-:1057E00000000000FFFFFFFF0000000000000000BD
-:1057F000000000004C000000EA2F000000080140FB
-:10580000004000004D000000EA2F000000080140A9
-:10581000008000004E000000FA2F00000010014040
-:10582000000400004F000000FA2F000000100140AB
-:105830000008000050000000FA2F00000010014096
-:105840000010000051000000C82F000000140140AB
-:105850000100000052000000C82F000000140140A9
-:105860000200000053000000C82F00000014014097
-:105870000400000054000000C82F00000014014084
-:105880000800000055000000C82F0000001401406F
-:105890001000000056000000C82F00000014014056
-:1058A0002000000057000000C82F00000014014035
-:1058B0004000000058000000C82F00000014014004
-:1058C0008000000059000000DA2F0000000C0140A9
-:1058D000080000005A000000DA2F0000000C014010
-:1058E000100000005B000000DA2F0000000C0140F7
-:1058F000200000005C000000DA2F0000000C0140D6
-:10590000400000005D000000DA2F0000000C0140A4
-:1059100080000000FFFFFFFF00000000000000000B
-:10592000000000005F000000DA2F0000000C0140C2
-:105930000001000060000000DA2F0000000C0140B0
-:1059400000020000610000000A3000000018014061
-:1059500001000000620000000A3000000018014051
-:1059600002000000FFFFFFFF000000000000000039
-:1059700000000000FFFFFFFF00000000000000002B
-:105980000000000070696E003C3500000A3700001E
-:10599000E8360000C6360000383500002068617225
-:1059A0006466756C740D0A00204E4D492048616E86
-:1059B000646C65720D0A00000D0A204D43553A20B3
-:1059C00043483332563330330D0A00002053797385
-:1059D000436C6B3A202564487A0D0A0020436869BD
-:1059E0007049443A20253038780D0A006C6564000F
-:1059F00055534152545F526275666665725F4E75CB
-:105A00006D203D202564200A000000009047000022
-:105A100070470000FA1000008C4C0000704C000031
-:105A2000EC210000AC4C0000944C0000BE200000B3
-:105A3000D84C0000C04C0000BE200000FC4C000010
-:105A4000E44C000052210000284D0000104D0000E1
-:105A500052210000544D0000344D00000820000089
-:105A6000884D0000684D000008200000B04D000087
-:105A7000984D00004A1F0000DC4D0000C44D00009E
-:105A80004A1F0000044E0000EC4D0000C81E00003C
-:105A9000304E0000184E0000C81E0000544E00009A
-:105AA0003C4E00001C1E0000804E0000684E0000AE
-:105AB0001C1E0000A84E00008C4E0000661D000059
-:105AC000D44E0000B84E0000661D0000EC4E0000F1
-:105AD000E04E0000841C00000C4F0000004F00004E
-:105AE000841C00002C4F0000184F0000DA1B00003F
-:105AF0004C4F0000384F0000DA1B0000684F0000D8
-:105B0000544F0000C81B00008C4F0000784F00006D
-:105B1000C81B000040510000285100003622000040
-:105B2000705100004C510000EC240000985100001E
-:105B30007C510000DE24000044520000245200008A
-:105B40003C2E0000685200004C520000222E000043
-:105B50008C52000074520000082E0000D004000097
-:105B6000D80400001C30000006360000DC040000F1
-:085B70000C250000D404000024
-:105B78000100000004000020040000208000000054
-:105B88000200000014000020140000202000000083
-:105B9800030000002400002024000020240000004E
-:105BA8000400000034000020340000202000000021
-:105BB80005000000440000204400002030000000E0
-:105BC80006000000540000205400002034000000AB
-:105BD8000900000064000020640000204400000068
-:105BE8000A00000074000020740000202C0000004F
-:105BF800FFFF00000000000000000000FFFF0000A1
-:105C08000000000000000000FFFF0000000000008E
-:105C180000000000FFFF000000000000000000007E
-:105C2800FFFF00000000000000000000FFFF000070
-:105C38000000000000000000FFFF0000000000005E
-:105C480000000000FFFF000000000000000000004E
-:105C5800FFFF00000000000000000000FFFF000040
-:105C68000000000000000000FFFF0000000000002E
-:105C780000000000FFFF000000000000000000001E
-:105C8800FFFF00000000000000000000FFFF000010
-:105C98000000000000000000FFFF000000000000FE
-:105CA80000000000FFFF00000000000000000000EE
-:105CB80000000000000000000102030406070809B4
-:105CC800000000000102030401020304060708099A
-:085CD80000D8B805020406081B
+:102FA000EFD03F98731101347300203023260500C1
+:102FB0000CC150C123240500054582808147854608
+:102FC000130700023396F6006306A6008507E39B0D
+:102FD000E7FEFD573E858280EFD2AFBC85451305E5
+:102FE0000002EF10200A6FD00FBEEFD28FBB8545D5
+:102FF0002145EF1020096FD00FBDEFD28FBA854564
+:103000001145EF1020086FD00FBCEFD28FB9854566
+:103010004145EF1020076FD00FBBEFD28FB8854529
+:1030200013050004EF1000066FD0EFB9EFD26FB7B1
+:103030009565376500000146938545651305C5D341
+:10304000EFF0FFE66FD02FB89307400663ECA700C0
+:103050009317450015651305C56E3E951841FD573C
+:103060006313F70001458280EFD2AFB3411113F52E
+:10307000F50F32C6EFF05FFD11C54E25324608450B
+:10308000EF00B06041016FD00FB4EFD28FB113F5F4
+:10309000F50FEFF07FFBAA87014589C7CE27884748
+:1030A000EF00105E6FD02FB2EFD2AFAF011113F56A
+:1030B000F50F3284EFF05FF905C55C412AC68297AF
+:1030C00032455C45FC82C1473ECE8D473ECC09C4AB
+:1030D0001547631AE40002CE08454C08EF00504E35
+:1030E00005616FD04FAE05476315E40091473ECEB2
+:1030F000E5B76315F40093078002D5BF89476315D0
+:10310000F40093078004E5B791476314F400D147B6
+:10311000F9BF99476314F400F147D1BF9D47E31D00
+:10312000F4FAE147E9B7EFD22FA613F5F50FAE8415
+:10313000B289368A3A89EFF03FF1994731CD484557
+:10314000EFF0DFE73D472A8499476367A704EFE084
+:103150005FA3B146B306D402B70700201387070860
+:103160002A8693870708369783160700639F960081
+:103170004C43639C45012E23639935011847631620
+:103180002701EFE0DFA0814701A87D576389E600B2
+:103190003285EFE0DF9F9D473E856FD02FA23145FE
+:1031A0003305A4023E9506A12322450123113501D2
+:1031B000232425013285F1B7EFD2AF9E13F5F50F29
+:1031C000EFF09FE819471DC94845EFF03FDFBD47C5
+:1031D0002A84194763E4A702EFE0BF9AB14733049A
+:1031E000F402B7070020938707087D57A2978396BC
+:1031F00007006398E600EFE09F9901473A856FD09A
+:103200008F9C41677D1798C323A2070023A4070062
+:10321000DDB7EFD26F97011113F5F50F328AEFF09A
+:10322000BFE2994721C185442A8463159A10484515
+:10323000EFF0DFD83D47AA8499476365A702EFE026
+:103240005F94B14AB3875403370900201309090872
+:10325000AA893E9903170900FD576319F700EFE0AB
+:103260001F9399473E8505616FD04F955C408297CB
+:1032700085450545EF0010615C440D473AC47C82EA
+:103280003EC88357290002CA52CE638C4709C1C782
+:103290000947638DE70808444C00EF00703218447A
+:1032A000B7170140938607C005456302D702094559
+:1032B000630FF700938707400D45630AF700B727B0
+:1032C00001409387078001456313F700114593F58B
+:1032D000F40FEF00303C0808EF00702595679387E6
+:1032E000C7668E04BE94D04037E700E09306000521
+:1032F000B307C7002380D74093575600938707042E
+:1033000085468A07B396C600BA9794C34E85EFE008
+:103310001F88814781BF930780023EC6A1473ECCEC
+:103320009DBF930780043EC656CCB5B791473EC6B5
+:10333000C147F5B79947E3170AF24845EFF01FC8B0
+:103340003D479947E360A7F29317350015651305CC
+:10335000C5663E9558419357570093870706B39427
+:10336000E4008A0737E700E0BA9784C35DB7EFD27D
+:103370004F83EFF0BFC4B1473305F502B707002014
+:10338000938707083E955C4199C3084582976FD0A3
+:103390008F8373110134EFD00FD60545EF00D01F96
+:1033A00019C50545EFF0BFFC0545EF00D020EFD073
+:1033B0004FD7731101347300203073110134EFD0F3
+:1033C0008FD30945EF00501D19C50945EFF03FFAAD
+:1033D0000945EF00501EEFD0CFD4731101347300B4
+:1033E000203073110134EFD00FD11145EF00D01A06
+:1033F00019C51145EFF0BFF71145EF00D01BEFD015
+:103400004FD2731101347300203073110134EFD0A7
+:103410008FCE2145EF00501819C52145EFF03FF53B
+:103420002145EF005019EFD0CFCF73110134730055
+:10343000203073110134EFD00FCC4145EF00D0158F
+:1034400019C54145EFF0BFF24145EF00D016EFD06E
+:103450004FCD731101347300203073110134EFD05C
+:103460008FC913050002EF0030131DCD13050002B4
+:10347000EFF0FFEF13050004EFF07FEF13050008F6
+:10348000EFF0FFEE13050010EFF07FEE13050020C4
+:10349000EFF0FFED1305003EEF00F011EFD06FC825
+:1034A000731101347300203013050004EF00D00EB7
+:1034B00055FD13050008EF00300E4DF913050010FF
+:1034C000EF00900D45F513050020EF00F00C59FDBD
+:1034D000F1B773110134EFD00FC213050040EF00B4
+:1034E000B00B29C113050040EFF07FE80565130517
+:1034F0000580EFF0DFE70565EFF07FE70965EFF0A6
+:103500001FE71165EFF0BFE62165EFF05FE641656B
+:10351000130505C0EF00300AEFD0AFC073110134BE
+:1035200073002030056513050580EF00F0065DF996
+:103530000565EF0070065DF50965EF00F0055DF1CA
+:103540001165EF00700559FD2165EF00F00459F990
+:10355000E1B701458280EFC2DFE49C412041A146F2
+:1035600041111CC0B1473EA4DC412316040013F7EF
+:10357000F7006301D702A546631ED70005675AA06E
+:1035800013D747000D8B01C785466308D700231367
+:10359000040031A023120400E5B709677AA09983DB
+:1035A0008D8B05476389E70081C709476389E70673
+:1035B0002314040021A0930700601EA41848B747F5
+:1035C0000140938707806318F7041165854511054D
+:1035D000EF00502B93070020B71401407C820D4967
+:1035E000E1474C00138504803EC64AC4EF00407D8D
+:1035F000930700407C824C009147138504803EC6AF
+:103600004AC4EF00E07B0848A285EF00702B084811
+:103610008545EF00F033014541016FC0DFDA9307C4
+:10362000004061BFEFC25FD6B71400201384447C12
+:10363000930750035CC837190020B74701401306B1
+:10364000C9769387078074461CC89967938707D407
+:103650007CC2B70700C0F58FC166A106716713076A
+:103660000720D58F1165411138C67CC68545B7073F
+:103670000C00110518C01CC42322040023160400EA
+:10368000EF005020B7190140930700207C820D4ABB
+:10369000E1474C001385098052C43EC6EF004072DA
+:1036A000930700407C824C009147138509803EC6F9
+:1036B00052C4EF00E07008489385447CEF0050202E
+:1036C00008488545EF00D028B75500009386447C14
+:1036D000130630109385C5641305C976EFF0CFE06B
+:1036E000014541016FC09FCDEFC2BFCB2041930583
+:1036F00000020848EF00902B19C51C48CA23137517
+:10370000F50F6FC05FCC7D55EDBFEFC29FC924415F
+:103710002E84884893050004EF0050297DD99C48E9
+:1037200042044180C2A305456FC0FFC9EFC27FC7F5
+:10373000C1473841638BF502C5476395F502544B89
+:10374000054693D75600938707063316D6008A0797
+:10375000B7E600E0B69790C30146084B9305505278
+:10376000EF00702001456FC01FC6544B054693D72C
+:103770005600938707043316D6008A07B7E600E0A1
+:10378000B69790C30546D1BF411122C626C4731116
+:103790000134B7140020EFD00F969387C476A0436E
+:1037A000930550520848EF00102119C9854513852B
+:1037B000C476EFF00FD9084893055052EF007023FC
+:1037C000EFD02F96731101343244A24441017300AB
+:1037D000203073110134EFD00F92376500001305CC
+:1037E00005D6EFD0CFFCEFD0CF9373110134730027
+:1037F000203073110134EFD00F90376500001305AE
+:1038000045D5EFD0CFFAEFD0CF91731101347300CB
+:103810002030EFC21FB937650000130505D7EFD080
+:103820000FF9952AB707002083A507223765000006
+:10383000130545D8EFD0AFF7F521AA85376500000D
+:10384000130545D9EFD0AFF637650000130545DA0B
+:10385000EFD0EFF5252801456FC0FFB6EFC27FB46A
+:10386000EF00701AEF00301B6FC0FFB5EFC27FB3DF
+:10387000C126B7650000375500409385C5DA1305AA
+:103880000580EF00105FD5246FC0FFB3EFC27FB19A
+:10389000EFF0DFFCEFF09FFD6FC0FFB2B717024003
+:1038A0009843B706FFF041111367170098C3D84338
+:1038B00037060200758FD8C39843B706F7FEFD168A
+:1038C000758F98C39843B706FCFFFD16758F98C394
+:1038D000D843B70601FFFD16758FD8C39843B706C6
+:1038E00000ECFD16758F98C33707FF0098C723A615
+:1038F000070202C402C69843C166558F98C3B71623
+:10390000024005679C42F18F3EC6A24785073EC430
+:10391000B24781E7A247E397E7FEB71702409C430F
+:103920001397E7006357070685473EC6324785472A
+:10393000631FF704B7170240D843B706C1FFFD164F
+:10394000D8C3D843D8C3D84313670740D8C3D84394
+:10395000758FD8C3D843B7062900558FD8C398436D
+:10396000B7060001558F98C3984393166700E3DDAF
+:1039700006FED843B7160240719BD8C3D8431367DD
+:103980002700D8C32147DC42B18BE39EE7FE41010B
+:10399000828002C661BFB7160240D842B707002036
+:1039A0001146318B938707226305C70021466308C0
+:1039B000C70237177A001307072098C3371702404A
+:1039C000584311839376F700370700201307071435
+:1039D0003697142398433357D70098C38280D84230
+:1039E000D442416649833D8BF18E1306270015CFE3
+:1039F0003D47630FE6024147630FE60245478145B5
+:103A00006313E6004146A1E23747024003270780DF
+:103A1000418B0DC737177A00130707203306C702FB
+:103A200090C3C9DD9843058349BF81454946E1BF3D
+:103A300085453546C9BF81453D46F1B737173D003D
+:103A400013070790E1BF3715024058559316F7004A
+:103A5000585563DF060411833D8B93061700371713
+:103A60007A00130707203357D70298C35455A18211
+:103A7000BD8A8DE295463307D702058398C3371771
+:103A80000240585794433D8B050733D7E60298C34D
+:103A9000984369B705456394A600E546E9BF3D45EF
+:103AA0006396A600D1463387E602C9BF8906E5BF03
+:103AB0003D8B9306170037177A00130707203357FB
+:103AC000D702F1B701A07390123497D1FF1F9381F1
+:103AD00061F517C100201301E152172500001305FD
+:103AE000E54597C5FF1F9385E5511386818063FAED
+:103AF000C5008322050023A0550011059105E3EAC6
+:103B0000C5FE1385818097E5FF1F9385650D63775B
+:103B1000B500232005001105E36DB5FEFD4273904D
+:103B200002BCFD4273904280B78200009382028003
+:103B30007390023097C2FFFF9382024D93E23200EE
+:103B400073905230EFF09FD597D2FFFF938202A37C
+:103B50007390123473002030EFC2BF8405641304E5
+:103B600084BB2285EFD0FFD6EDBFEFC29F83B74560
+:103B7000000037650000D147294793060020014621
+:103B8000938585B5130545DCEFD09FC219C1EFD0F1
+:103B9000FFD96FC05F83EFC22FFF37640000AA8494
+:103BA000130584DCEFD0AFC00965DC401305055870
+:103BB00088C4194A6395470141256FC03F809D49DC
+:103BC000639437017525D5BF09476394E700E92D54
+:103BD000EDB7214963952701EF008070F9BF0D47CC
+:103BE000E39DE7FCEF00B008DC4C81EBEF009004B4
+:103BF000130584DCEFD0AFBBC9B715476395E70069
+:103C0000EF001017F5B763954701EF00101ACDB715
+:103C100063953701EF00101DE1BF63952701EF00A9
+:103C20001020F9B72547E395E7FCEF00E07BC9B723
+:103C3000EFC22FF7B704002013840415B715002036
+:103C4000130600089385C57D1305C400EFF00FB679
+:103C500013850415EFF03FF4B725002085441306C3
+:103C600000089385C5851305C40223A8818A13091A
+:103C7000040204A0EFF08FB34A85EFF0DFF1B7251F
+:103C80000020130600089385C58D1305C40423AADC
+:103C9000218B2300940213090404EFF02FB14A850D
+:103CA000EFF07FEFB7250020130600089385C59538
+:103CB0001305C40623AC218B2300940413090406C6
+:103CC000EFF0CFAE4A85EFF01FEDB72500201306C9
+:103CD00000089385C59D1305C40823AE218B2300DE
+:103CE000940613090408EFF06FAC4A85EFF0BFEAC1
+:103CF000B7250020130600089385C5A51305C40A3F
+:103D000023A0218D230094081309040AEFF00FAAC1
+:103D10004A85EFF05FE82300940A23A2218D014534
+:103D20006FC06FEAB7F7FF1F03A547708280584145
+:103D3000032805004C4537060140930706403E978F
+:103D40009346F8FFB1C583250640F58D2320B64084
+:103D5000D043F18ED4C31443B3E6060114C3184113
+:103D600090479346F7FF758E90C7D047F18ED4C722
+:103D7000144541466399C6009447D98E94C7D447E9
+:103D8000558FD8C78280B6979443558F98C3828049
+:103D90001C43F58F1CC38280B7070140138707407F
+:103DA00083A70740584B698F09C77D8D3335A00025
+:103DB000828001458280B707014023AAA740828004
+:103DC0009C4513F7070113F8F70001C7D841336882
+:103DD000E8008E2113F7F50F39C318418146854E4F
+:103DE0003D4F930F800293028004214E3396DE00F4
+:103DF000B3F8C500631116039398260033131F010F
+:103E00001343F3FF3377E300B318180133E7E800F7
+:103E1000639FF70550C98506E39AC6FD18C11307CD
+:103E2000F00F6375B70454412146854E3D4F930F03
+:103E3000800293028004414EB398CE0033F71501FF
+:103E40006392E8021317260001173313EF001343A0
+:103E5000F3FFB376D3003317E800D98E639DF701E3
+:103E6000232A15010506E319C6FD54C18280E39497
+:103E700057FA10C94DB7E39757FE23281501DDB750
+:103E800008456D8D3335A000828019C20CC982802F
+:103E90004CC9828013F7C50F93F73500B705014071
+:103EA000BA9594458A073D473317F7001347F7FF44
+:103EB000758F98C598453315F500598D88C5828052
+:103EC00003A7818C894710216311F70214318D47B4
+:103ED00063EDD7003C219A0637E700E09607D58FBF
+:103EE00093F7F70F32972300F74054410547935754
+:103EF00056003317C70089CA938707048A07B7E6B5
+:103F000000E0B69798C3828093870706C5BF37172E
+:103F100002405C439146B18B6385D700A146638222
+:103F2000D706B7177A00938707201CC137160240BF
+:103F30005C4237070020130707219183BD8BBA9796
+:103F400094231C41B3D7D7005CC15442A1829D8AFF
+:103F5000BA969422B3D6D70014C55442AD829D8A36
+:103F600036971823B3D7E7005CC558423983937658
+:103F700037001387418036971823B3D7E7021CC94F
+:103F800082805C435843C166C983758FB7F6FF1FB3
+:103F900083A6C670BD8B8907139616016348060079
+:103FA000C54601466392D702C94739A88946638F3F
+:103FB000D702BD46638ED702C146638ED702C5467F
+:103FC00001466393D700C1471DEF374702400327DF
+:103FD0000780418B05C737177A0013070720B307FF
+:103FE000F7021CC121D61C41858381B701466DBFF4
+:103FF0000546B547D1BF0146BD47F9B737173D0064
+:1040000013070790E9BFB7150240D8559316F7007C
+:10401000D85563DF060411833D8B930617003717CD
+:104020007A00130707203357D70218C1D455A1824D
+:10403000BD8A8DE295463307D702058318C137172D
+:104040000240585714413D8B050733D7E60218C18B
+:10405000184171B785456394B600E546E9BFBD4593
+:104060006396B600D1463387E602C9BF8906E5BF2D
+:104070003D8B9306170037177A0013070720335735
+:10408000D702F1B799C5371702401C4F5D8D08CF95
+:104090008280B7170240984F1345F5FF798D88CF7E
+:1040A000828099C5371702405C4F5D8D48CF828072
+:1040B000B7170240D84F1345F5FF798DC8CF8280DE
+:1040C000EFC22FAE1629F577FD17F58FF621DA2509
+:1040D0007971D58F1EA95625FD779387379FF58F68
+:1040E000D6212A842EC6D58F9625D58FB625D58F75
+:1040F0005EA55E29C207C18393F7F7CFD98F5EA96A
+:104100006808EFF0DFE0B747014093870780B245CA
+:10411000631EF402A2576547B387E70298419306EE
+:1041200040060A07B3D7E70233D7D702B3F7D7025F
+:104130001207920793872703B3D7D702BD8BD98F76
+:10414000C207C1831EA445616FC0EFA79257E1B7B4
+:1041500091C55E250967D98F5EA582805A25F977BA
+:10416000FD17F98FD5BF13F7F50F85471583B39565
+:10417000B7006319F7009307C500984301CED98DA6
+:104180008CC38280894693074501E318D7FE9307C5
+:104190000501E5B793C5F5FFF98DDDB793F5F51F7B
+:1041A0004EA182804A211375F51F82800A216D8DF0
+:1041B0003335A000828013F7F50F85461583B3973A
+:1041C000B6006311D7025A25F98F1A21014542071B
+:1041D000418381CB0545A181B315B5006D8F333582
+:1041E000E000828089466314D7001A29F1BF5A295A
+:1041F000E1BFA1818547B397B70093C7F7FFC20717
+:10420000C1831EA18280EFC2CF9981450945EFE0AD
+:10421000BFBF6FC04F9BEFC2CF9885450945EFE008
+:104220005FC06FC04F9AEFC2CF97854513056002FC
+:10423000EFE03FBF6FC02F99EFC2AF9681451145A8
+:10424000EFE09FBC81451145EFE0BFBD81451305FF
+:104250006002EFE07FBBEFF01FFD6FC0CF96EFC2B3
+:104260004F94854513057002EFE0BFBB6FC0AF955B
+:10427000EFC22F9381451545EFE01FB981451545E4
+:10428000EFE03FBA814513057002EFE0FFB7EFF0B2
+:104290001FFD6FC04F93EFC2CF908545130580027D
+:1042A000EFE03FB86FC02F92EFC2AF8F81456145FD
+:1042B000EFE09FB581456145EFE0BFB6814513054D
+:1042C0008002EFE07FB4EFF01FFD6FC0CF8FEFC231
+:1042D0004F8D854513059002EFE0BFB46FC0AF8EE0
+:1042E000EFC22F8C814513053002EFE0FFB181450D
+:1042F00013053002EFE0FFB2814513059002EFE0B5
+:10430000BFB0EFF0DFFC6FC00F8C411122C63754F5
+:1043100000409305505213050480EFF0DFE905C11A
+:1043200013050480EFF01FE81387C18C1423B7270F
+:1043300000209387C7ADB697850688A314A332449F
+:10434000410173002030EFC2CF8585451305A002DF
+:10435000EFE03FAD6FC02F87EFC2AF8481451305FB
+:10436000A002EFE01FAC6FC00F86EFC28F838545C0
+:104370001305B002EFE0FFAA6FC0EF84EFC26F82B7
+:1043800081451305B002EFE0DFA96FC0CF83EFC214
+:104390004F8185451305C002EFE0BFA86FC0AF8213
+:1043A000EFC22F8081451305C002EFE09FA76FC0C9
+:1043B0008F81EFB21FFF85451305D002EFE07FA686
+:1043C0006FC06F80EFB2FFFD81451305D002EFE0B3
+:1043D0005FA56FB05FFFEFB2DFFC85451305E0021C
+:1043E000EFE03FA46FB03FFEEFB2BFFBEFF0DFF6B0
+:1043F000EFF0DFF8EFF0DFFAEFF0DFFCEFF0BFFDFA
+:10440000854513058003EFE0DFA181451305900387
+:10441000EFE03FA185451305A003EFE09FA06FB03B
+:104420009FFAEFB21FF881451305E002EFE07F9F8E
+:104430006FB07FF9EFB2FFF6EFF01FF2EFF01FF46D
+:10444000EFF01FF6EFF01FF8EFF0BFFD8145130509
+:104450008003EFE01F9D814513059003EFE07F9CF3
+:1044600081451305A003EFE0DF9B6FB0DFF5EFB2EE
+:104470005FF37971AA8481451305A002EFE0DF980C
+:1044800081451305B002EFE03F9881451305C00256
+:10449000EFE09F9781451305D002EFE0FF9681453D
+:1044A0001305E002EFE05F96814513057003EFE02E
+:1044B000BF95814513057003EFE0BF968145130555
+:1044C0008003EFE07F94814513059003EFE0DF93D5
+:1044D00081451305A003EFE03F93EFF0BFF585455D
+:1044E0002145EFF03FBA854537050400EFF07FBB6B
+:1044F00093070040FC82371401408D473ECC4C08A6
+:10450000E147130504C03ECEEFF09F8B856793878C
+:104510000780FC824C089147130504C03ECE3754F7
+:104520000040EFF0FF890C10B7070C001305048062
+:1045300026D03ED402D223160102EFF07FB89307B3
+:1045400070137C8685475C87680085473EC8EFF01E
+:104550003F9705461305048093055052EFF0BFC006
+:10456000854513050480EFF0BFBE45616FB0BFE520
+:10457000EFB23FE3EFF03FDDEFF05FE0EFF05FE23F
+:10458000EFF05FE4EFF0FFE9814513058003EFE012
+:104590005F89814513059003EFE0BF8881451305CE
+:1045A000A003EFE01F886FB01FE2EFB29FDFEFF0D4
+:1045B000BFDAEFF09FDBEFF0BFDEEFF0BFE0EFF030
+:1045C0005FE6854513058003EFE0BF858145130550
+:1045D0009003EFE01F8581451305A003EFE07F8482
+:1045E0006FB07FDEEFB2FFDBEFF01FD7EFF01FD928
+:1045F000EFF0FFD9EFF01FDDEFF0BFE285451305C7
+:104600008003EFE01F82854513059003EFE07F8173
+:1046100081451305A003EFE0DF806FB0DFDAEFB272
+:104620005FD8EFF07FD3EFF07FD5EFF07FD7EFF0DB
+:104630005FD8EFF01FDF814513058003EFE06FFEC9
+:10464000814513059003EFE0CFFD85451305A003D9
+:10465000EFE02FFD6FB03FD7EFB2BFD42A84EFF069
+:10466000FFB3930500082285EFF05FB47DD96FB0EA
+:104670009FD5EFB21FD3B7570040938707802A8496
+:104680002E896319F504854513057003EFE06FF972
+:104690008144B30799008C2322858504EFF0DFFB6A
+:1046A00093F4F40FB307990083870700FDF3930594
+:1046B00000042285EFF09FAF7DD9B7570040938764
+:1046C00007806318F404814513057003EFE06FF56C
+:1046D0006FB07FCFB7270040138707806315E500D1
+:1046E0008545114565B7138707C06315E500854506
+:1046F000154569BF37470040130707406315E500BC
+:104700008545614561B7E315F5FC85451305300224
+:10471000B5BFB7270040138707806315E4008145C4
+:1047200011456DB7138707C06315E4008145154532
+:1047300071BF37470040130707406315E400814508
+:10474000614569B7E316F4F8814513053002BDBF32
+:1047500001476314E60001458280B307E5000507C1
+:10476000B386E5009C2383C6F6FFE384D7FE33853A
+:10477000D7408280B3C7A5008D8B3307C50081E782
+:104780008D4763EDC700AA87637EE50894218507FE
+:104790008505A38FD7FEE3EBE7FE82809376350095
+:1047A000AA8789CA942185078505A38FD7FE93F62A
+:1047B0003700C5BF9376C7FF138606FE63F0C706B2
+:1047C00083A3050083A2450083AF850003AFC50026
+:1047D00083AE050103AE450103A3850183A8C5018E
+:1047E0009385450223A0770003A8C5FF23A25700A5
+:1047F00023A4F70123A6E70123A8D70123AAC70111
+:1048000023AC670023AE17019387470223AE07FF4F
+:1048100075B790419107910523AEC7FEE3EBD7FE34
+:10482000E3E6E7F68280AA8798239386170009EBD0
+:10483000850503C7F5FF8507A38FE7FE75FB82801B
+:10484000B687DDB7AA87982185078505A38FE7FE80
+:104850007DFB8280AA87850703C7F7FF6DFF33853D
+:10486000A7407D15828015C27D160147B307E5007C
+:10487000B386E5009C2394226396D7006304C700A7
+:104880000507EDF73385D74082800145828000001F
+:10489000585300006C5300007C53000090530000FC
+:1048A0009C530000A8530000AC530000BC53000010
+:1048B000CC530000D4530000E8530000F85300002C
+:1048C000005400000C540000185400002C54000048
+:1048D0003454000044540000545400006C54000050
+:1048E0006D61696E00000000546F20696E69746923
+:1048F000616C697A65206465766963653A25732021
+:104900006661696C65642E20546865206572726FFB
+:104910007220636F64652069732025640A000000BB
+:104920007469646C65000000000001000200010071
+:104930000300010002000100040001000200010068
+:104940000300010002000100050001000200010057
+:104950000300010002000100040001000200010048
+:104960000300010002000100060001000200010036
+:104970000300010002000100040001000200010028
+:104980000300010002000100050001000200010017
+:104990000300010002000100040001000200010008
+:1049A00003000100020001000700010002000100F5
+:1049B00003000100020001000400010002000100E8
+:1049C00003000100020001000500010002000100D7
+:1049D00003000100020001000400010002000100C8
+:1049E00003000100020001000600010002000100B6
+:1049F00003000100020001000400010002000100A8
+:104A00000300010002000100050001000200010096
+:104A10000300010002000100040001000200010087
+:104A200003000100020001003031323334353637E3
+:104A30003839414243444546000000000A205C20CA
+:104A40007C202F0A000000002D205254202D202011
+:104A5000202020546872656164204F706572617413
+:104A6000696E672053797374656D0A004A756C200E
+:104A70003135203230323400202F207C205C202041
+:104A800020202025642E25642E2564206275696C03
+:104A9000642025730A0000002032303036202D209B
+:104AA0003230313920436F707972696768742062DF
+:104AB000792072742D746872656164207465616D0B
+:104AC0000A000000284E554C4C290000303132338A
+:104AD000343536373839616263646566000000003A
+:104AE000746F74616C206D656D6F72793A20256406
+:104AF0000A00000075736564206D656D6F72792022
+:104B00003A2025640A0000006D6178696D756D209A
+:104B1000616C6C6F6361746564206D656D6F727933
+:104B20003A2025640A0000006C697374206D656D7D
+:104B30006F727920757361676520696E666F726D3B
+:104B40006174696F6E0000006C6973745F6D656DF0
+:104B500000000000746F206672656520612062614C
+:104B600064206461746120626C6F636B3A0A0000B8
+:104B70006D656D3A203078253038782C2075736556
+:104B80006420666C61673A2025642C206D6167693A
+:104B90006320636F64653A203078253034780A00EA
+:104BA00068656170000000006D656D20696E697454
+:104BB0002C206572726F7220626567696E20616475
+:104BC000647265737320307825782C20616E6420C0
+:104BD000656E642061646472657373203078257833
+:104BE0000A0000001B5B324A1B5B48002D2D4675F6
+:104BF0006E6374696F6E204C6973743A0A0000002A
+:104C00005F5F0000252D313673202D2D2025730A7E
+:104C1000000000006465766963650000252D2A2E7A
+:104C200073202020202020202020747970652020EF
+:104C30002020202020202072656620636F756E740E
+:104C40000A000000202D2D2D2D2D2D2D2D2D2D2D4B
+:104C50002D2D2D2D2D2D2D2D2D202D2D2D2D2D2D91
+:104C60002D2D2D2D0A000000252D2A2E2A732025FA
+:104C70002D32307320252D38640A00006576656E6C
+:104C800074000000252D2A2E732020202020207360
+:104C900065742020202073757370656E64207468BD
+:104CA000726561640A00000020202D2D2D2D2D2D10
+:104CB0002D2D2D2D202D2D2D2D2D2D2D2D2D2D2D31
+:104CC0002D2D2D0A00000000252D2A2E2A732020CC
+:104CD00030782530387820253033643A00000000E1
+:104CE000252D2A2E2A732020307825303878203040
+:104CF0000A0000006D61696C626F7800252D2A2E14
+:104D00007320656E7472792073697A652073757388
+:104D100070656E64207468726561640A000000004A
+:104D2000202D2D2D2D20202D2D2D2D202D2D2D2DE7
+:104D30002D2D2D2D2D2D2D2D2D2D0A00252D2A2EFD
+:104D40002A732025303464202025303464202564E3
+:104D50003A000000252D2A2E2A73202530346420A5
+:104D600020253034642025640A0000006D736771CB
+:104D70007565756500000000252D2A2E7320656E6F
+:104D80007472792073757370656E642074687265CF
+:104D900061640A00202D2D2D2D20202D2D2D2D2D4F
+:104DA0002D2D2D2D2D2D2D2D2D0A0000252D2A2EBA
+:104DB0002A732025303464202025643A0000000046
+:104DC000252D2A2E2A732025303464202025640ABC
+:104DD000000000006D75746578000000252D2A2EF6
+:104DE000732020206F776E65722020686F6C6420BE
+:104DF00073757370656E64207468726561640A000F
+:104E0000202D2D2D2D2D2D2D2D202D2D2D2D202DF9
+:104E10002D2D2D2D2D2D2D2D2D2D2D2D2D0A00003F
+:104E2000252D2A2E2A7320252D382E2A7320253051
+:104E300034642025640A000073656D6170686F72C8
+:104E400065000000252D2A2E732076202020737502
+:104E50007370656E64207468726561640A00000096
+:104E6000202D2D2D202D2D2D2D2D2D2D2D2D2D2D8C
+:104E70002D2D2D0A00000000252D2A2E2A73202515
+:104E80003033642025643A00252D2A2E2A732025EC
+:104E90003033642025640A00746872656164000020
+:104EA000252D2A2E73207072692020737461747509
+:104EB0007320202020202073702020202020737455
+:104EC00061636B2073697A65206D61782075736505
+:104ED00064206C656674207469636B20206572724F
+:104EE0006F720A00202D2D2D20202D2D2D2D2D2DE2
+:104EF0002D202D2D2D2D2D2D2D2D2D2D202D2D2DFC
+:104F00002D2D2D2D2D2D2D20202D2D2D2D2D2D20F8
+:104F1000202D2D2D2D2D2D2D2D2D2D202D2D2D0AFE
+:104F200000000000252D2A2E2A732025336420003E
+:104F30002072656164792020000000002073757381
+:104F400070656E640000000020696E697420202086
+:104F50000000000020636C6F7365202000000000DB
+:104F60002030782530387820307825303878202067
+:104F70002020253032642525202020307825303827
+:104F80007820253033640A0074696D657200000072
+:104F9000252D2A2E732020706572696F6469632045
+:104FA000202074696D656F757420202020202020DA
+:104FB000666C61670A000000202D2D2D2D2D2D2DF2
+:104FC0002D2D2D202D2D2D2D2D2D2D2D2D2D202D2B
+:104FD0002D2D2D2D2D2D2D2D2D2D0A00252D2A2E5B
+:104FE0002A7320307825303878203078253038788A
+:104FF000200000006163746976617465640A0000D2
+:1050000064656163746976617465640A0000000018
+:1050100063757272656E74207469636B3A307825BB
+:105020003038780A000000006C69737420616C6C81
+:105030002073796D626F6C20696E2073797374656B
+:105040006D0000006C697374000000006C6973747B
+:105050002064657669636520696E20737973746571
+:105060006D0000005F5F636D645F6C6973745F6403
+:1050700065766963650000006C6973742064657609
+:1050800069636520696E2073797374656D00000033
+:105090006C6973745F646576696365006C697374C9
+:1050A0002074696D657220696E2073797374656D03
+:1050B000000000005F5F636D645F6C6973745F7410
+:1050C000696D6572000000006C6973742074696D0D
+:1050D000657220696E2073797374656D000000003D
+:1050E0006C6973745F74696D657200006C697374C8
+:1050F000206D6573736167652071756575652069DD
+:105100006E2073797374656D000000005F5F636DDE
+:10511000645F6C6973745F6D736771756575650045
+:105120006C697374206D6573736167652071756553
+:10513000756520696E2073797374656D00000000D9
+:105140006C6973745F6D73677175657565000000D8
+:105150006C697374206D61696C20626F7820696E70
+:105160002073797374656D005F5F636D645F6C6954
+:1051700073745F6D61696C626F7800006C69737441
+:10518000206D61696C20626F7820696E207379737D
+:1051900074656D006C6973745F6D61696C626F78C2
+:1051A000000000006C697374206D75746578206967
+:1051B0006E2073797374656D000000005F5F636D2E
+:1051C000645F6C6973745F6D7574657800000000CE
+:1051D0006C697374206D7574657820696E207379BD
+:1051E0007374656D000000006C6973745F6D757495
+:1051F000657800006C697374206576656E7420694B
+:105200006E2073797374656D000000005F5F636DDD
+:10521000645F6C6973745F6576656E74000000008E
+:105220006C697374206576656E7420696E2073797D
+:105230007374656D000000006C6973745F6576655A
+:105240006E7400006C6973742073656D6170686FB3
+:10525000726520696E2073797374656D00000000BB
+:105260005F5F636D645F6C6973745F73656D00008D
+:105270006C6973742073656D6170686F6E65206909
+:105280006E2073797374656D000000006C6973742F
+:105290005F73656D000000006C6973742074687240
+:1052A000656164005F5F636D645F6C6973745F74F4
+:1052B00068726561640000006C69737420746872C0
+:1052C000656164006C6973745F7468726561640021
+:1052D000746865207465726D696E616C20736372A9
+:1052E00065656E005F5F636D645F636C656172002E
+:1052F000746865207465726D696E616C2073637289
+:1053000065656E00636C6561720000007265626FB6
+:105310006F742074686520626F6172640000000021
+:105320005F5F636D645F7265626F6F7400000000A1
+:105330007265626F6F742074686520626F61726459
+:10534000000000007265626F6F7400002D000000A5
+:10535000257300002F00000043686172616374656B
+:10536000722044657669636500000000426C6F63DB
+:105370006B20446576696365000000004E657477B4
+:105380006F726B20496E7465726661636500000020
+:105390004D544420446576696365000043414E20C6
+:1053A000446576696365000052544300536F756E1F
+:1053B000642044657669636500000000477261708F
+:1053C000686963204465766963650000493243205B
+:1053D0004275730055534220536C617665204465D5
+:1053E000766963650000000055534220486F73746E
+:1053F000204275730000000053504920427573002D
+:105400005350492044657669636500005344494F11
+:105410002042757300000000504D20507365756484
+:105420006F2044657669636500000000506970650F
+:1054300000000000506F7274616C204465766963EF
+:105440006500000054696D65722044657669636586
+:10545000000000004D697363656C6C616E656F756B
+:10546000732044657669636500000000556E6B6EBD
+:105470006F776E00546F6F206D616E792061726777
+:10548000732021205765206F6E6C79205573653A23
+:105490000A0000002573200025733A20636F6D6DAC
+:1054A000616E64206E6F7420666F756E642E0A00E4
+:1054B00052542D546872656164207368656C6C2069
+:1054C000636F6D6D616E64733A0A00005F5F636DB8
+:1054D000645F0000252D313673202D2025730A00CE
+:1054E00052542D546872656164207368656C6C2039
+:1054F00068656C70000000005F5F636D645F6865E5
+:105500006C70000053686F7720746865206D656D5E
+:105510006F727920757361676520696E20746865A4
+:105520002073797374656D005F5F636D645F66728D
+:10553000656500004C6973742074687265616473FA
+:1055400020696E207468652073797374656D00003E
+:105550005F5F636D645F7073000000006D736820AF
+:105560000000000066696E73682000003E000000C5
+:1055700066696E73683A2063616E206E6F74206690
+:10558000696E64206465766963653A2025730A0054
+:105590006E6F206D656D6F727920666F7220736813
+:1055A000656C6C0A00000000747368656C6C000028
+:1055B0007368727800000000080000002563000096
+:1055C0000825732020080000082008001B5B324BD0
+:1055D0000D000000257325730000000072656164F2
+:1055E000207374617475732066726F6D20686172C8
+:1055F00064776172652070696E00000070696E5298
+:105600006561640077726974652076616C756520E8
+:10561000746F2068617264776172652070696E00D2
+:1056200070696E57726974650000000073657420BC
+:1056300068617264776172652070696E206D6F6455
+:105640006500000070696E4D6F646500756172746D
+:1056500031000000A8300000683000008A300000EF
+:1056600026310000B83100001232000001000000B5
+:1056700016000000020000001700000004000000F7
+:1056800018000000080000001900000010000000D1
+:105690001A00000020000000270000004000000069
+:1056A000270000008000000027000000000100002B
+:1056B0002700000000020000270000000004000096
+:1056C0003800000000080000380000000010000052
+:1056D00038000000002000003800000000400000FA
+:1056E000380000000080000038000000FFFFFFFFCE
+:1056F00000000000000000000000000001000000A9
+:105700001A300000001801400400000002000000F0
+:105710001A300000001801400800000003000000DB
+:105720001A300000001801401000000004000000C2
+:105730001A300000001801402000000005000000A1
+:105740001A3000000018014040000000FFFFFFFF7A
+:105750000000000000000000000000000700000042
+:105760000A30000000100140002000000800000086
+:105770000A30000000100140004000000900000055
+:105780000A3000000010014000800000FFFFFFFF12
+:10579000000000000000000000000000FFFFFFFF0D
+:1057A000000000000000000000000000FFFFFFFFFD
+:1057B000000000000000000000000000FFFFFFFFED
+:1057C000000000000000000000000000FFFFFFFFDD
+:1057D0000000000000000000000000000F000000BA
+:1057E0000A3000000010014001000000100000001D
+:1057F0000A3000000010014002000000110000000B
+:105800000A300000001001400400000012000000F7
+:105810000A3000000010014008000000FFFFFFFFF9
+:10582000000000000000000000000000FFFFFFFF7C
+:10583000000000000000000000000000FFFFFFFF6C
+:10584000000000000000000000000000FFFFFFFF5C
+:105850000000000000000000000000001700000031
+:10586000FA2F0000000801400100000018000000AD
+:10587000FA2F00000008014002000000190000009B
+:10588000FA2F000000080140040000001A00000088
+:10589000FA2F00000008014008000000FFFFFFFF92
+:1058A000000000000000000000000000FFFFFFFFFC
+:1058B0000000000000000000000000001D000000CB
+:1058C000FA2F000000080140100000001E00000038
+:1058D000FA2F000000080140200000001F00000017
+:1058E000FA2F0000000801404000000020000000E6
+:1058F000FA2F000000080140800000002100000095
+:105900000A300000001001401000000022000000DA
+:105910000A300000001001402000000023000000B9
+:10592000EA2F0000000C01400100000024000000EC
+:10593000EA2F0000000C01400200000025000000DA
+:10594000EA2F0000000C01400400000026000000C7
+:105950001A300000001801408000000027000000FD
+:105960001A3000000018014000010000280000006B
+:105970001A30000000180140000200002900000059
+:105980001A30000000180140000400002A00000046
+:105990001A30000000180140000800002B00000031
+:1059A0001A30000000180140001000002C00000018
+:1059B0001A30000000180140002000002D000000F7
+:1059C0001A30000000180140004000002E000000C6
+:1059D0001A30000000180140008000002F00000075
+:1059E000EA2F0000000C014000040000300000001D
+:1059F000EA2F0000000C014000080000FFFFFFFF3D
+:105A0000000000000000000000000000FFFFFFFF9A
+:105A10000000000000000000000000003300000053
+:105A2000EA2F0000000C01400010000034000000CC
+:105A3000EA2F0000000C01400020000035000000AB
+:105A4000EA2F0000000C014000400000360000007A
+:105A5000EA2F0000000C0140008000003700000029
+:105A6000D82F0000001401400001000038000000A1
+:105A7000D82F00000014014000020000390000008F
+:105A8000D82F000000140140000400003A0000007C
+:105A9000D82F000000140140000800003B00000067
+:105AA000D82F000000140140001000003C0000004E
+:105AB000D82F000000140140002000003D0000002D
+:105AC000D82F000000140140004000003E000000FC
+:105AD000D82F000000140140008000003F000000AB
+:105AE0000A300000001001404000000040000000AB
+:105AF0000A3000000010014080000000410000005A
+:105B00000A300000001001400001000042000000C7
+:105B10000A300000001001400002000043000000B5
+:105B2000FA2F0000000801400001000044000000BE
+:105B3000FA2F0000000801400002000045000000AC
+:105B4000FA2F000000080140000400004600000099
+:105B5000FA2F000000080140000800004700000084
+:105B6000FA2F00000008014000100000480000006B
+:105B7000FA2F00000008014000200000FFFFFFFF97
+:105B8000000000000000000000000000FFFFFFFF19
+:105B9000000000000000000000000000FFFFFFFF09
+:105BA0000000000000000000000000004C000000A9
+:105BB000FA2F000000080140004000004D000000E6
+:105BC000FA2F000000080140008000004E00000095
+:105BD0000A30000000100140000400004F000000E7
+:105BE0000A300000001001400008000050000000D2
+:105BF0000A300000001001400010000051000000B9
+:105C0000D82F0000001401400100000052000000E5
+:105C1000D82F0000001401400200000053000000D3
+:105C2000D82F0000001401400400000054000000C0
+:105C3000D82F0000001401400800000055000000AB
+:105C4000D82F000000140140100000005600000092
+:105C5000D82F000000140140200000005700000071
+:105C6000D82F000000140140400000005800000040
+:105C7000D82F0000001401408000000059000000EF
+:105C8000EA2F0000000C0140080000005A0000004C
+:105C9000EA2F0000000C0140100000005B00000033
+:105CA000EA2F0000000C0140200000005C00000012
+:105CB000EA2F0000000C0140400000005D000000E1
+:105CC000EA2F0000000C014080000000FFFFFFFFF2
+:105CD0000000000000000000000000005F00000065
+:105CE000EA2F0000000C01400001000060000000ED
+:105CF000EA2F0000000C01400002000061000000DB
+:105D00001A3000000018014001000000620000008D
+:105D10001A3000000018014002000000FFFFFFFFE2
+:105D2000000000000000000000000000FFFFFFFF77
+:105D300000000000000000000000000070696E001C
+:105D4000563500002C3700000A370000E836000006
+:105D500052350000206861726466756C740D0A002B
+:105D6000204E4D492048616E646C65720D0A00003A
+:105D70000D0A204D43553A204348333256333033D1
+:105D80000D0A000020537973436C6B3A2025644858
+:105D90007A0D0A00204368697049443A202530385A
+:105DA000780D0A0074657374200D0A0054686973D5
+:105DB0002069732061207465737420646174612E9E
+:105DC0000A0000006C65640031200A00484B0000A6
+:105DD000284B0000FA10000044500000285000003A
+:105DE000EC210000645000004C500000BE20000078
+:105DF0009050000078500000BE200000B450000019
+:105E00009C50000052210000E0500000C8500000EB
+:105E1000522100000C510000EC500000082000004E
+:105E2000405100002051000008200000685100008F
+:105E3000505100004A1F0000945100007C510000A6
+:105E40004A1F0000BC510000A4510000C81E000001
+:105E5000E8510000D0510000C81E00000C520000A4
+:105E6000F45100001C1E00003852000020520000B7
+:105E70001C1E00006052000044520000661D00001D
+:105E80008C52000070520000661D0000A4520000F9
+:105E900098520000841C0000C4520000B852000058
+:105EA000841C0000E4520000D0520000DA1B000005
+:105EB00004530000F0520000DA1B000020530000E1
+:105EC0000C530000C81B0000445300003053000076
+:105ED000C81B0000F8540000E05400003622000007
+:105EE0002855000004550000EC2400005055000027
+:105EF00034550000DE240000FC550000DC55000095
+:105F00003C2E00002056000004560000222E000007
+:105F1000445600002C560000082E0000D00400005B
+:105F2000D80400002C30000024360000DC040000FF
+:085F30000C250000D404000060
+:105F38000100000004000020040000208000000090
+:105F480002000000140000201400002020000000BF
+:105F5800030000002400002024000020240000008A
+:105F6800040000003400002034000020200000005D
+:105F7800050000004400002044000020300000001C
+:105F880006000000540000205400002034000000E7
+:105F980009000000640000206400002044000000A4
+:105FA8000A00000074000020740000202C0000008B
+:105FB800FFFF00000000000000000000FFFF0000DD
+:105FC8000000000000000000FFFF000000000000CB
+:105FD80000000000FFFF00000000000000000000BB
+:105FE800FFFF00000000000000000000FFFF0000AD
+:105FF8000000000000000000FFFF0000000000009B
+:1060080000000000FFFF000000000000000000008A
+:10601800FFFF00000000000000000000FFFF00007C
+:106028000000000000000000FFFF0000000000006A
+:1060380000000000FFFF000000000000000000005A
+:10604800FFFF00000000000000000000FFFF00004C
+:106058000000000000000000FFFF0000000000003A
+:1060680000000000FFFF000000000000000000002A
+:1060780000000000000000000102030406070809F0
+:106088000000000006000000000000000000000002
+:1060980000000000000000000000000001000000F7
+:1060A80000000000070000000000000000000000E1
+:1060B80000000000000000000000000001000000D7
+:1060C80000000000020000000000000000000000C6
+:1060D80000000000000000000000000001000000B7
+:1060E80000000000080000000000000000000000A0
+:1060F8000000000000000000000000000100000097
+:106108000000000003000000000000000000000084
+:106118000000000000000000000000000000000077
+:106128000000000005000000000000000000000062
+:106138000000000000000000000000000100000056
+:106148000000000001020304010203040607080915
+:0861580000D8B8050204060896
:00000001FF
diff --git a/obj/CH32V303_V0.1.lst b/obj/CH32V303_V0.1.lst
index 819588d..3a02cb4 100644
--- a/obj/CH32V303_V0.1.lst
+++ b/obj/CH32V303_V0.1.lst
@@ -7,9 +7,9 @@ start address 0x00000000
Program Header:
LOAD off 0x00001000 vaddr 0x00000000 paddr 0x00000000 align 2**12
- filesz 0x00005b78 memsz 0x00005b78 flags r-x
- LOAD off 0x00007000 vaddr 0x20000000 paddr 0x00005b78 align 2**12
- filesz 0x00000168 memsz 0x00001804 flags rw-
+ filesz 0x00005f38 memsz 0x00005f38 flags r-x
+ LOAD off 0x00007000 vaddr 0x20000000 paddr 0x00005f38 align 2**12
+ filesz 0x00000228 memsz 0x00001bdc flags rw-
LOAD off 0x00007800 vaddr 0x2000f800 paddr 0x2000f800 align 2**12
filesz 0x00000000 memsz 0x00000800 flags rw-
@@ -19,47 +19,47 @@ Idx Name Size VMA LMA File off Algn
CONTENTS, ALLOC, LOAD, READONLY, CODE
1 .vector 000001bc 00000004 00000004 00001004 2**1
CONTENTS, ALLOC, LOAD, READONLY, CODE
- 2 .text 000059b8 000001c0 000001c0 000011c0 2**2
+ 2 .text 00005d78 000001c0 000001c0 000011c0 2**2
CONTENTS, ALLOC, LOAD, READONLY, CODE
- 3 .fini 00000000 00005b78 00005b78 00007168 2**0
+ 3 .fini 00000000 00005f38 00005f38 00007228 2**0
CONTENTS, ALLOC, LOAD, CODE
- 4 .dalign 00000000 20000000 20000000 00007168 2**0
+ 4 .dalign 00000000 20000000 20000000 00007228 2**0
CONTENTS
- 5 .dlalign 00000000 00005b78 00005b78 00007168 2**0
+ 5 .dlalign 00000000 00005f38 00005f38 00007228 2**0
CONTENTS
- 6 .data 00000168 20000000 00005b78 00007000 2**2
+ 6 .data 00000228 20000000 00005f38 00007000 2**2
CONTENTS, ALLOC, LOAD, DATA
- 7 .bss 0000169c 20000168 00005ce0 00007168 2**2
+ 7 .bss 000019b4 20000228 00006160 00007228 2**2
ALLOC
8 .stack 00000800 2000f800 2000f800 00007800 2**0
ALLOC
- 9 .debug_info 00025c15 00000000 00000000 00007168 2**0
+ 9 .debug_info 0002a74c 00000000 00000000 00007228 2**0
CONTENTS, READONLY, DEBUGGING
- 10 .debug_abbrev 000070bf 00000000 00000000 0002cd7d 2**0
+ 10 .debug_abbrev 00007fc9 00000000 00000000 00031974 2**0
CONTENTS, READONLY, DEBUGGING
- 11 .debug_loc 00009dfe 00000000 00000000 00033e3c 2**0
+ 11 .debug_loc 0000a34a 00000000 00000000 0003993d 2**0
CONTENTS, READONLY, DEBUGGING
- 12 .debug_aranges 000010b8 00000000 00000000 0003dc40 2**3
+ 12 .debug_aranges 00001270 00000000 00000000 00043c88 2**3
CONTENTS, READONLY, DEBUGGING
- 13 .debug_ranges 00001700 00000000 00000000 0003ecf8 2**3
+ 13 .debug_ranges 00001888 00000000 00000000 00044ef8 2**3
CONTENTS, READONLY, DEBUGGING
- 14 .debug_line 0001804c 00000000 00000000 000403f8 2**0
+ 14 .debug_line 00019d59 00000000 00000000 00046780 2**0
CONTENTS, READONLY, DEBUGGING
- 15 .debug_str 00004dbb 00000000 00000000 00058444 2**0
+ 15 .debug_str 000052c9 00000000 00000000 000604d9 2**0
CONTENTS, READONLY, DEBUGGING
- 16 .comment 00000033 00000000 00000000 0005d1ff 2**0
+ 16 .comment 00000033 00000000 00000000 000657a2 2**0
CONTENTS, READONLY
- 17 .debug_frame 00002d7c 00000000 00000000 0005d234 2**2
+ 17 .debug_frame 000031d0 00000000 00000000 000657d8 2**2
CONTENTS, READONLY, DEBUGGING
SYMBOL TABLE:
00000000 l d .init 00000000 .init
00000004 l d .vector 00000000 .vector
000001c0 l d .text 00000000 .text
-00005b78 l d .fini 00000000 .fini
+00005f38 l d .fini 00000000 .fini
20000000 l d .dalign 00000000 .dalign
-00005b78 l d .dlalign 00000000 .dlalign
+00005f38 l d .dlalign 00000000 .dlalign
20000000 l d .data 00000000 .data
-20000168 l d .bss 00000000 .bss
+20000228 l d .bss 00000000 .bss
2000f800 l d .stack 00000000 .stack
00000000 l d .debug_info 00000000 .debug_info
00000000 l d .debug_abbrev 00000000 .debug_abbrev
@@ -73,7 +73,7 @@ SYMBOL TABLE:
00000000 l df *ABS* 00000000 ./Startup/startup_ch32v30x_D8C.o
00000004 l .vector 00000000 _vector_base
00000000 l df *ABS* 00000000 clock.c
-20000168 l O .bss 00000004 rt_tick
+20000228 l O .bss 00000004 rt_tick
00000000 l df *ABS* 00000000 components.c
000004d0 l F .text 00000004 rti_start
000004d4 l F .text 00000004 rti_end
@@ -82,50 +82,50 @@ SYMBOL TABLE:
00000000 l df *ABS* 00000000 device.c
00000000 l df *ABS* 00000000 idle.c
00000762 l F .text 0000001c rt_thread_idle_entry
-20000218 l O .bss 00000080 idle
-20000298 l O .bss 00000010 idle_hook_list
-200002a8 l O .bss 00000200 rt_thread_stack
+200002f0 l O .bss 00000080 idle
+20000370 l O .bss 00000010 idle_hook_list
+20000380 l O .bss 00000200 rt_thread_stack
00000000 l df *ABS* 00000000 ipc.c
000007b4 l F .text 0000005a rt_ipc_list_suspend
00000000 l df *ABS* 00000000 irq.c
-2000016c l O .bss 00000004 rt_interrupt_enter_hook
-20000170 l O .bss 00000004 rt_interrupt_leave_hook
+2000022c l O .bss 00000004 rt_interrupt_enter_hook
+20000230 l O .bss 00000004 rt_interrupt_leave_hook
00000000 l df *ABS* 00000000 kservice.c
00000954 l F .text 0000017e print_number
-200004a8 l O .bss 00000080 rt_log_buf.2693
-00004670 l O .text 00000011 large_digits.2583
-00004714 l O .text 00000011 small_digits.2582
-20000178 l O .bss 00000004 __rt_errno
-2000017c l O .bss 00000004 _console_device
+20000580 l O .bss 00000080 rt_log_buf.2693
+00004a28 l O .text 00000011 large_digits.2583
+00004acc l O .text 00000011 small_digits.2582
+20000238 l O .bss 00000004 __rt_errno
+2000023c l O .bss 00000004 _console_device
00000000 l df *ABS* 00000000 mem.c
000010a2 l F .text 00000058 plug_holes
-20000528 l O .bss 00000020 heap_sem
-20000180 l O .bss 00000004 heap_end
-20000184 l O .bss 00000004 heap_ptr
-20000188 l O .bss 00000004 lfree
-2000018c l O .bss 00000004 max_mem
-20000190 l O .bss 00000004 mem_size_aligned
-20000194 l O .bss 00000004 rt_free_hook
-20000198 l O .bss 00000004 rt_malloc_hook
-2000019c l O .bss 00000004 used_mem
+20000600 l O .bss 00000020 heap_sem
+20000240 l O .bss 00000004 heap_end
+20000244 l O .bss 00000004 heap_ptr
+20000248 l O .bss 00000004 lfree
+2000024c l O .bss 00000004 max_mem
+20000250 l O .bss 00000004 mem_size_aligned
+20000254 l O .bss 00000004 rt_free_hook
+20000258 l O .bss 00000004 rt_malloc_hook
+2000025c l O .bss 00000004 used_mem
00000000 l df *ABS* 00000000 object.c
20000000 l O .data 00000080 rt_object_container
-200001a0 l O .bss 00000004 rt_object_attach_hook
-200001a4 l O .bss 00000004 rt_object_detach_hook
+20000260 l O .bss 00000004 rt_object_attach_hook
+20000264 l O .bss 00000004 rt_object_detach_hook
00000000 l df *ABS* 00000000 scheduler.c
-200001bc l O .bss 00000004 rt_scheduler_hook
-200001c0 l O .bss 00000002 rt_scheduler_lock_nest
+2000027c l O .bss 00000004 rt_scheduler_hook
+20000280 l O .bss 00000002 rt_scheduler_lock_nest
00000000 l df *ABS* 00000000 thread.c
000016ca l F .text 0000008e _rt_thread_init.isra.0
-200001d0 l O .bss 00000004 rt_thread_inited_hook
-200001d4 l O .bss 00000004 rt_thread_resume_hook
-200001d8 l O .bss 00000004 rt_thread_suspend_hook
+20000290 l O .bss 00000004 rt_thread_inited_hook
+20000294 l O .bss 00000004 rt_thread_resume_hook
+20000298 l O .bss 00000004 rt_thread_suspend_hook
00000000 l df *ABS* 00000000 timer.c
00001958 l F .text 00000012 _rt_timer_remove.part.1
-200001dc l O .bss 00000004 random_nr.2483
-200001e0 l O .bss 00000004 rt_timer_enter_hook
-200001e4 l O .bss 00000004 rt_timer_exit_hook
-200001e8 l O .bss 00000008 rt_timer_list
+2000029c l O .bss 00000004 random_nr.2483
+200002a0 l O .bss 00000004 rt_timer_enter_hook
+200002a4 l O .bss 00000004 rt_timer_exit_hook
+200002a8 l O .bss 00000008 rt_timer_list
00000000 l df *ABS* 00000000 cpuport.c
00000000 l df *ABS* 00000000 cmd.c
00001bb6 l F .text 00000012 rt_list_len
@@ -137,7 +137,7 @@ SYMBOL TABLE:
00000000 l df *ABS* 00000000 shell.c
000024fa l F .text 00000012 finsh_rx_ind
000025e0 l F .text 0000002e shell_handle_history
-200005c8 l O .bss 00000081 finsh_prompt.4315
+200006a0 l O .bss 00000081 finsh_prompt.4315
00000000 l df *ABS* 00000000 serial.c
00002a9c l F .text 00000020 rt_serial_init
00002abc l F .text 00000042 rt_serial_write
@@ -149,40 +149,47 @@ SYMBOL TABLE:
00002dec l F .text 0000001c _pin_control
00002e54 l F .text 0000002e _pin_read
00002e82 l F .text 0000002c _pin_write
-2000064c l O .bss 00000048 _hw_pin
+20000724 l O .bss 00000048 _hw_pin
00000000 l df *ABS* 00000000 board.c
-20000694 l O .bss 00001000 rt_heap
+2000076c l O .bss 00001000 rt_heap
+00000000 l df *ABS* 00000000 ring_queue.c
00000000 l df *ABS* 00000000 drv_gpio.c
-00002fac l F .text 0000001c bit2bitno
-00002fc8 l F .text 00000012 GPIOD_CLK_ENABLE
-00002fda l F .text 00000010 GPIOB_CLK_ENABLE
-00002fea l F .text 00000010 GPIOA_CLK_ENABLE
-00002ffa l F .text 00000010 GPIOC_CLK_ENABLE
-0000300a l F .text 00000012 GPIOE_CLK_ENABLE
-0000529c l O .text 00000018 _ch32_pin_ops
-000052b4 l O .text 00000080 pin_irq_map
-00005334 l O .text 00000650 pins
+00002fbc l F .text 0000001c bit2bitno
+00002fd8 l F .text 00000012 GPIOD_CLK_ENABLE
+00002fea l F .text 00000010 GPIOB_CLK_ENABLE
+00002ffa l F .text 00000010 GPIOA_CLK_ENABLE
+0000300a l F .text 00000010 GPIOC_CLK_ENABLE
+0000301a l F .text 00000012 GPIOE_CLK_ENABLE
+00005654 l O .text 00000018 _ch32_pin_ops
+0000566c l O .text 00000080 pin_irq_map
+000056ec l O .text 00000650 pins
00000000 l df *ABS* 00000000 drv_usart.c
-0000353c l F .text 000000ca ch32_configure
-000036c6 l F .text 00000022 ch32_getc
-000036e8 l F .text 00000022 ch32_putc
-0000370a l F .text 0000005c ch32_control
-00005988 l O .text 00000014 ch32_uart_ops
+00003556 l F .text 000000ce ch32_configure
+000036e8 l F .text 00000022 ch32_getc
+0000370a l F .text 00000022 ch32_putc
+0000372c l F .text 0000005c ch32_control
+00005d40 l O .text 00000014 ch32_uart_ops
00000000 l df *ABS* 00000000 ch32v30x_it.c
00000000 l df *ABS* 00000000 main.c
00000000 l df *ABS* 00000000 start.c
00000000 l df *ABS* 00000000 system_ch32v30x.c
00000000 l df *ABS* 00000000 Rs485.c
-00003b0c l F .text 00000012 Rs485_thread_entry
+00003b58 l F .text 00000012 Rs485_thread_entry
+00000000 l df *ABS* 00000000 uart_dev.c
+00003b96 l F .text 0000009a uart_init.constprop.0
00000000 l df *ABS* 00000000 ch32v30x_dbgmcu.c
00000000 l df *ABS* 00000000 ch32v30x_exti.c
00000000 l df *ABS* 00000000 ch32v30x_gpio.c
00000000 l df *ABS* 00000000 ch32v30x_misc.c
00000000 l df *ABS* 00000000 ch32v30x_rcc.c
-20000150 l O .data 00000010 APBAHBPrescTable
-20000164 l O .data 00000004 ADCPrescTable
+20000210 l O .data 00000010 APBAHBPrescTable
+20000224 l O .data 00000004 ADCPrescTable
00000000 l df *ABS* 00000000 ch32v30x_usart.c
00000000 l df *ABS* 00000000 Android.c
+00000000 l df *ABS* 00000000 J1_UART6.c
+00000000 l df *ABS* 00000000 J2_UART7.c
+00000000 l df *ABS* 00000000 J3_USART2.c
+00000000 l df *ABS* 00000000 J4_UART8.c
00000000 l df *ABS* 00000000 J5-0_USART3.c
00000000 l df *ABS* 00000000 UART.c
00000000 l df *ABS* 00000000 memcmp.c
@@ -192,458 +199,491 @@ SYMBOL TABLE:
00000000 l df *ABS* 00000000 strlen.c
00000000 l df *ABS* 00000000 strncmp.c
00000000 l df *ABS* 00000000 symbol.c
-000033d2 g F .text 00000028 EXTI2_IRQHandler
-00003a78 w .text 00000000 TIM8_TRG_COM_IRQHandler
+000033e2 g F .text 00000028 EXTI2_IRQHandler
+00003ac4 w .text 00000000 TIM8_TRG_COM_IRQHandler
000012d4 g F .text 00000024 rt_calloc
-00003a78 w .text 00000000 TIM8_CC_IRQHandler
-00005ad8 g O .text 0000000c __fsym_list_thread
+00003ac4 w .text 00000000 TIM8_CC_IRQHandler
+00005e98 g O .text 0000000c __fsym_list_thread
00000578 g F .text 0000000a entry
-0000448e g F .text 00000010 strcpy
+00004844 g F .text 00000010 strcpy
00001c84 g F .text 000000e2 list_thread
0000268c g F .text 00000410 finsh_thread_entry
000014e0 g F .text 00000008 rt_object_is_systemobject
+000043b2 g F .text 00000012 J8_PWR_Open
00000bbe g F .text 0000002c rt_strncpy
00001b2e g F .text 00000036 rt_hw_stack_init
000018d2 g F .text 0000000e rt_thread_mdelay
-00003a78 w .text 00000000 UART8_IRQHandler
+00003ac4 w .text 00000000 UART8_IRQHandler
00002292 g F .text 000001aa msh_exec
-00004ddc g O .text 0000000d __fsym_list_mailbox_name
+00003c30 g F .text 000000f4 uart_dev_init
+00005194 g O .text 0000000d __fsym_list_mailbox_name
00001458 g F .text 00000056 rt_object_allocate
-00005b38 g O .text 0000000c __fsym_pinRead
-00004570 g O .text 00000100 __lowest_bit_bitmap
-00004146 g F .text 00000012 J9_PWR_Close
-20000960 g .data 00000000 __global_pointer$
+00005ef8 g O .text 0000000c __fsym_pinRead
+00004928 g O .text 00000100 __lowest_bit_bitmap
+00004422 g F .text 00000012 J9_PWR_Close
+20000a20 g .data 00000000 __global_pointer$
00001516 g F .text 0000002c rt_system_scheduler_start
0000037a g F .text 00000028 .hidden __riscv_save_8
-00003a78 w .text 00000000 TIM1_CC_IRQHandler
-200001f4 g O .bss 00000004 rt_interrupt_to_thread
-000037d0 g F .text 00000020 HardFault_Handler
-00004ed4 g O .text 00000009 __fsym_list_sem_name
+00003ac4 w .text 00000000 TIM1_CC_IRQHandler
+200002b4 g O .bss 00000004 rt_interrupt_to_thread
+000037f2 g F .text 00000020 HardFault_Handler
+0000528c g O .text 00000009 __fsym_list_sem_name
000003c6 g F .text 0000000c .hidden __riscv_restore_3
-00003a78 w .text 00000000 TIM6_IRQHandler
+00003ac4 w .text 00000000 TIM6_IRQHandler
000006e8 g F .text 00000006 rt_device_set_rx_indicate
00002f8c g F .text 00000020 SysTick_Handler
000012f8 g F .text 000000aa rt_free
-200001f0 g O .bss 00000004 rt_interrupt_from_thread
-00003ce6 g F .text 0000004e NVIC_Init
+200002b0 g O .bss 00000004 rt_interrupt_from_thread
+00003ec0 g F .text 0000004e NVIC_Init
0000112c g F .text 0000007c rt_system_heap_init
-00003a78 w .text 00000000 PVD_IRQHandler
+00003ac4 w .text 00000000 PVD_IRQHandler
0000051c g F .text 0000000c main_thread_entry
-00003a78 w .text 00000000 SDIO_IRQHandler
-00003a78 w .text 00000000 TIM9_BRK_IRQHandler
-00004048 g F .text 00000010 android_PowerCtrl_Open
-00004f8c g O .text 00000007 __fsym_reboot_name
+00003ac4 w .text 00000000 SDIO_IRQHandler
+00003ac4 w .text 00000000 TIM9_BRK_IRQHandler
+00004216 g F .text 00000010 android_PowerCtrl_Open
+00005344 g O .text 00000007 __fsym_reboot_name
00001aaa g F .text 00000078 rt_timer_check
000003b2 g F .text 00000020 .hidden __riscv_restore_10
000015ac g F .text 00000048 rt_schedule_insert_thread
00001d66 g F .text 000000b6 list_sem
000005fe g F .text 0000007a rt_device_open
-00003a78 w .text 00000000 DMA2_Channel8_IRQHandler
-000037b0 g F .text 00000020 NMI_Handler
-00003a78 w .text 00000000 CAN2_RX1_IRQHandler
-000033fa g F .text 00000028 EXTI3_IRQHandler
+200019dc g O .bss 00000080 J50RS485_in_buff
+00003ac4 w .text 00000000 DMA2_Channel8_IRQHandler
+000037d2 g F .text 00000020 NMI_Handler
+000043d6 g F .text 00000012 J9_PWR_Open
+00003ac4 w .text 00000000 CAN2_RX1_IRQHandler
+0000340a g F .text 00000028 EXTI3_IRQHandler
0000037a g F .text 00000028 .hidden __riscv_save_11
-00003b4a g F .text 0000000a DBGMCU_GetCHIPID
+00003d24 g F .text 0000000a DBGMCU_GetCHIPID
000021ec g F .text 0000004a list
-00004790 g O .text 00000009 __fsym_list_mem_name
-20000208 g O .bss 00000004 _sysvar_table_begin
-00004e04 g O .text 00000011 __fsym___cmd_list_mutex_name
-00005b78 g .text 00000000 __rtmsymtab_start
-00003a78 w .text 00000000 USBHS_IRQHandler
-00003fd2 g F .text 0000000a USART_GetFlagStatus
-00003a78 w .text 00000000 DMA2_Channel9_IRQHandler
+00004b48 g O .text 00000009 __fsym_list_mem_name
+200002c8 g O .bss 00000004 _sysvar_table_begin
+000051bc g O .text 00000011 __fsym___cmd_list_mutex_name
+00005f38 g .text 00000000 __rtmsymtab_start
+00003ac4 w .text 00000000 USBHS_IRQHandler
+000041ac g F .text 0000000a USART_GetFlagStatus
+00003ac4 w .text 00000000 DMA2_Channel9_IRQHandler
000006ee g F .text 00000074 rt_thread_idle_excute
00001848 g F .text 0000004a rt_thread_suspend
-00003842 g F .text 0000000e app_star
+0000388c g F .text 00000010 app_star
00000fae g F .text 00000068 rt_kprintf
-00003a78 w .text 00000000 TIM10_CC_IRQHandler
+00003ac4 w .text 00000000 TIM10_CC_IRQHandler
0000094e g F .text 00000006 rt_interrupt_get_nest
-20000168 g .bss 00000000 _sbss
+20000228 g .bss 00000000 _sbss
00000800 g *ABS* 00000000 __stack_size
00001758 g F .text 00000020 rt_thread_timeout
-00004f2c g O .text 0000000c __fsym___cmd_clear_name
+000052e4 g O .text 0000000c __fsym___cmd_clear_name
000024ec g F .text 0000000e cmd_free
-00003a78 w .text 00000000 USBFS_IRQHandler
-00004e68 g O .text 00000015 __fsym_list_event_desc
-00005a60 g O .text 0000000c __fsym_list_msgqueue
-00005b5c g .text 00000000 __rt_init_start
+00003ac4 w .text 00000000 USBFS_IRQHandler
+00005220 g O .text 00000015 __fsym_list_event_desc
+00005e20 g O .text 0000000c __fsym_list_msgqueue
+00005f1c g .text 00000000 __rt_init_start
00001f4a g F .text 000000be list_mailbox
000003c6 g F .text 0000000c .hidden __riscv_restore_2
-00005274 g O .text 00000016 __fsym_pinMode_desc
-00005b5c g .text 00000000 __fsymtab_end
+0000562c g O .text 00000016 __fsym_pinMode_desc
+00005f1c g .text 00000000 __fsymtab_end
00002e22 g F .text 0000001a rt_pin_write
-00004f18 g O .text 00000014 __fsym___cmd_clear_desc
+2000195c g O .bss 00000080 J4RS485_in_buff
+000052d0 g O .text 00000014 __fsym___cmd_clear_desc
000006b0 g F .text 0000001c rt_device_read
-200001fc g O .bss 00000004 shell
-000043be g F .text 000000b2 memcpy
+200002bc g O .bss 00000004 shell
+00004774 g F .text 000000b2 memcpy
0000250c g F .text 00000098 finsh_system_init
000004fe g F .text 0000001e rt_components_init
-00003382 g F .text 00000028 EXTI0_IRQHandler
-00003a78 w .text 00000000 I2C2_EV_IRQHandler
-00003a78 w .text 00000000 TIM10_TRG_COM_IRQHandler
+00003392 g F .text 00000028 EXTI0_IRQHandler
+00003ac4 w .text 00000000 I2C2_EV_IRQHandler
+00003ac4 w .text 00000000 TIM10_TRG_COM_IRQHandler
0000196a g F .text 0000003a rt_timer_init
-00005b78 g .text 00000000 __rt_init_end
+00005f38 g .text 00000000 __rt_init_end
0000077e g F .text 00000036 rt_thread_idle_init
-20000160 g O .data 00000004 SystemCoreClock
-00005a90 g O .text 0000000c __fsym_list_mutex
-00003fca g F .text 00000008 USART_ReceiveData
-20000204 g O .bss 00000004 _syscall_table_end
-200016ec g O .bss 00000018 uart1
+000045e4 g F .text 0000003a USART_CONNET_J7
+20000220 g O .data 00000004 SystemCoreClock
+000045aa g F .text 0000003a USART_CONNET_J6
+00005e50 g O .text 0000000c __fsym_list_mutex
+000041a4 g F .text 00000008 USART_ReceiveData
+200002c4 g O .bss 00000004 _syscall_table_end
+200017c4 g O .bss 00000018 uart1
+200018dc g O .bss 00000080 J3RS485_in_buff
000014e8 g F .text 0000002e rt_system_scheduler_init
00000582 g F .text 00000048 rt_device_find
000001c0 g .text 00000000 rt_hw_context_switch_to
-00005b64 g O .text 00000004 __rt_init_rt_hw_pin_init
+00005f24 g O .text 00000004 __rt_init_rt_hw_pin_init
00000004 g .init 00000000 _einit
-200001f8 g O .bss 00000004 rt_thread_switch_interrupt_flag
-00003eaa g F .text 0000001e RCC_APB2PeriphClockCmd
+200002b8 g O .bss 00000004 rt_thread_switch_interrupt_flag
+00004084 g F .text 0000001e RCC_APB2PeriphClockCmd
00000372 g F .text 00000030 .hidden __riscv_save_12
-00003a78 w .text 00000000 CAN2_SCE_IRQHandler
-00003a78 w .text 00000000 ADC1_2_IRQHandler
-00005b74 g O .text 00000004 __rt_init_rti_end
-00004110 g F .text 00000012 J6_PWR_Close
-00003be6 g F .text 000000c0 GPIO_Init
-00004ea8 g O .text 0000000f __fsym___cmd_list_sem_name
-00003a78 w .text 00000000 Break_Point_Handler
-00005a54 g O .text 0000000c __fsym___cmd_list_msgqueue
-00004c70 g O .text 0000001a __fsym_list_desc
+00003ac4 w .text 00000000 CAN2_SCE_IRQHandler
+00003ac4 w .text 00000000 ADC1_2_IRQHandler
+00005f34 g O .text 00000004 __rt_init_rti_end
+0000437c g F .text 00000012 J6_PWR_Close
+00003dc0 g F .text 000000c0 GPIO_Init
+00005260 g O .text 0000000f __fsym___cmd_list_sem_name
+00003ac4 w .text 00000000 Break_Point_Handler
+00004270 g F .text 00000026 J2_485_Init
+00005e14 g O .text 0000000c __fsym___cmd_list_msgqueue
+00005028 g O .text 0000001a __fsym_list_desc
000003b2 g F .text 00000020 .hidden __riscv_restore_11
-20000210 g O .bss 00000004 NVIC_Priority_Group
-00003a78 w .text 00000000 SPI1_IRQHandler
+200002e8 g O .bss 00000004 NVIC_Priority_Group
+00003ac4 w .text 00000000 SPI1_IRQHandler
00002ce8 g F .text 0000005a rt_hw_serial_register
-00003f76 g F .text 00000016 USART_Cmd
-00004c8c g O .text 00000005 __fsym_list_name
+00004150 g F .text 00000016 USART_Cmd
+00005044 g O .text 00000005 __fsym_list_name
00001b94 g F .text 00000022 rt_hw_context_switch_interrupt
-00004f68 g O .text 0000000d __fsym___cmd_reboot_name
-00003a78 w .text 00000000 TAMPER_IRQHandler
+00005320 g O .text 0000000d __fsym___cmd_reboot_name
+00003ac4 w .text 00000000 TAMPER_IRQHandler
000003a2 g F .text 0000000c .hidden __riscv_save_1
000003c6 g F .text 0000000c .hidden __riscv_restore_0
-00004ee0 g O .text 0000000c __fsym___cmd_list_thread_desc
-00004f4c g O .text 00000006 __fsym_clear_name
+00005298 g O .text 0000000c __fsym___cmd_list_thread_desc
+00005304 g O .text 00000006 __fsym_clear_name
000017b0 g F .text 00000046 rt_thread_create
00000388 g F .text 0000001a .hidden __riscv_save_7
-00005b78 g .text 00000000 __rtmsymtab_end
-00004d28 g O .text 0000000b __fsym_list_timer_name
-00004024 g F .text 00000014 USART_ClearITPendingBit
-00003a78 w .text 00000000 CAN2_RX0_IRQHandler
+00005f38 g .text 00000000 __rtmsymtab_end
+000050e0 g O .text 0000000b __fsym_list_timer_name
+000041f2 g F .text 00000014 USART_ClearITPendingBit
+00003ac4 w .text 00000000 CAN2_RX0_IRQHandler
000017f6 g F .text 00000052 rt_thread_yield
-00003a78 w .text 00000000 TIM8_UP_IRQHandler
+00003ac4 w .text 00000000 TIM8_UP_IRQHandler
00000528 g F .text 00000028 rt_application_init
-00003ec8 g F .text 0000001e RCC_APB1PeriphClockCmd
-00003a78 w .text 00000000 Ecall_M_Mode_Handler
+000040a2 g F .text 0000001e RCC_APB1PeriphClockCmd
+00003ac4 w .text 00000000 Ecall_M_Mode_Handler
000011a8 g F .text 0000012c rt_malloc
2000f800 g .stack 00000000 _heap_end
000008b6 g F .text 00000040 rt_sem_release
-00005ac0 g O .text 0000000c __fsym_list_sem
+00005e80 g O .text 0000000c __fsym_list_sem
000003bc g F .text 00000016 .hidden __riscv_restore_5
00002f02 w F .text 0000000a rt_heap_begin_get
-00003a78 w .text 00000000 DMA2_Channel2_IRQHandler
-00005a18 g O .text 0000000c __fsym_list
-00003a78 w .text 00000000 DMA1_Channel4_IRQHandler
+00003ac4 w .text 00000000 DMA2_Channel2_IRQHandler
+00005dd8 g O .text 0000000c __fsym_list
+00003ac4 w .text 00000000 DMA1_Channel4_IRQHandler
00001b64 g F .text 00000010 sw_setpend
20000080 g O .data 000000c0 pin_irq_hdr_tab
-00004eec g O .text 00000012 __fsym___cmd_list_thread_name
-0000528c g O .text 00000008 __fsym_pinMode_name
-00005afc g O .text 0000000c __fsym___cmd_reboot
-00004dc4 g O .text 00000018 __fsym_list_mailbox_desc
+000052a4 g O .text 00000012 __fsym___cmd_list_thread_name
+00005644 g O .text 00000008 __fsym_pinMode_name
+00002fac g F .text 00000010 InitRingQueue
+00005ebc g O .text 0000000c __fsym___cmd_reboot
+0000517c g O .text 00000018 __fsym_list_mailbox_desc
000019a4 g F .text 0000001e rt_timer_detach
-00003a78 w .text 00000000 TIM9_UP_IRQHandler
+00003ac4 w .text 00000000 TIM9_UP_IRQHandler
0000228e g F .text 00000004 msh_is_used
000003bc g F .text 00000016 .hidden __riscv_restore_6
-00004058 g F .text 000000a6 USART3_IRQHandler
-00003bdc g F .text 0000000a EXTI_ClearITPendingBit
+00004296 g F .text 00000012 J3_PWR_Open
+0000430a g F .text 0000003c USART3_IRQHandler
+00003db6 g F .text 0000000a EXTI_ClearITPendingBit
000004e0 g F .text 0000001e rt_components_board_init
-00003a78 w .text 00000000 RTC_IRQHandler
-00004f78 g O .text 00000011 __fsym_reboot_desc
+00003ac4 w .text 00000000 RTC_IRQHandler
+00005330 g O .text 00000011 __fsym_reboot_desc
00001016 g F .text 0000003e rt_show_version
-20001804 g .bss 00000000 _ebss
-00003fe8 g F .text 0000003c USART_GetITStatus
-00005b5c g O .text 00000004 __rt_init_rti_start
-00003a78 w .text 00000000 DMA1_Channel7_IRQHandler
+20001bdc g .bss 00000000 _ebss
+000041b6 g F .text 0000003c USART_GetITStatus
+00005f1c g O .text 00000004 __rt_init_rti_start
+00003ac4 w .text 00000000 DMA1_Channel7_IRQHandler
00002f16 g F .text 00000076 rt_hw_board_init
00002eae g F .text 00000054 rt_device_pin_register
-00005ae4 g O .text 0000000c __fsym___cmd_clear
-00003a78 w .text 00000000 CAN1_RX1_IRQHandler
+00005ea4 g O .text 0000000c __fsym___cmd_clear
+00003ac4 w .text 00000000 CAN1_RX1_IRQHandler
000018e0 g F .text 0000004c rt_thread_resume
+0000436a g F .text 00000012 J6_PWR_Open
00000550 g F .text 00000028 rtthread_startup
-000031a8 g F .text 0000005a ch32_pin_dettach_irq
-00003a78 w .text 00000000 DVP_IRQHandler
-00003a78 w .text 00000000 UART5_IRQHandler
-00004158 g F .text 0000003a USART_CONNET_J0
-000040fe g F .text 00000012 J5_PWR_Close
-00004d88 g O .text 0000000e __fsym_list_msgqueue_name
+000031b8 g F .text 0000005a ch32_pin_dettach_irq
+00003ac4 w .text 00000000 DVP_IRQHandler
+00003ac4 w .text 00000000 UART5_IRQHandler
+00004434 g F .text 0000003a USART_CONNET_J0
+00004358 g F .text 00000012 J5_PWR_Close
+00004238 g F .text 00000026 J1_485_Init
+200002dc g O .bss 00000004 g_J4RS485_UART8_handle
+00005140 g O .text 0000000e __fsym_list_msgqueue_name
00001a72 g F .text 00000038 rt_timer_control
000013a2 g F .text 0000002a rt_object_get_information
-20000548 g O .bss 00000080 rt_thread_priority_table
-20001694 g O .bss 00000058 serial1
-00003a78 w .text 00000000 TIM4_IRQHandler
-00005224 g O .text 0000001e __fsym_pinRead_desc
+20000620 g O .bss 00000080 rt_thread_priority_table
+2000176c g O .bss 00000058 serial1
+00003ac4 w .text 00000000 TIM4_IRQHandler
+000055dc g O .text 0000001e __fsym_pinRead_desc
00001bda g F .text 00000016 clear
-200001a8 g O .bss 00000004 rt_object_put_hook
+20000268 g O .bss 00000004 rt_object_put_hook
0000037a g F .text 00000028 .hidden __riscv_save_9
-00003cb0 g F .text 0000000a GPIO_WriteBit
-00004470 g F .text 0000001e strcat
+00003e8a g F .text 0000000a GPIO_WriteBit
+00004826 g F .text 0000001e strcat
0000167a g F .text 00000050 rt_thread_exit
-00003a78 w .text 00000000 DMA2_Channel1_IRQHandler
-00004e3c g O .text 00000015 __fsym___cmd_list_event_desc
+00003ac4 w .text 00000000 DMA2_Channel1_IRQHandler
+000051f4 g O .text 00000015 __fsym___cmd_list_event_desc
000005ca g F .text 00000034 rt_device_register
00000b76 g F .text 00000048 rt_memmove
+00004346 g F .text 00000012 J5_PWR_Open
00000388 g F .text 0000001a .hidden __riscv_save_4
-0000335e g F .text 00000024 HAL_GPIO_EXTI_Callback
+0000336e g F .text 00000024 HAL_GPIO_EXTI_Callback
00001bc8 g F .text 00000012 reboot
-00003a78 w .text 00000000 I2C1_EV_IRQHandler
-00005a6c g O .text 0000000c __fsym___cmd_list_mailbox
-00003d34 g F .text 00000176 RCC_GetClocksFreq
-00005268 g O .text 00000009 __fsym_pinWrite_name
-00003a78 w .text 00000000 DMA1_Channel6_IRQHandler
+00004570 g F .text 0000003a USART_CONNET_J5
+00003ac4 w .text 00000000 I2C1_EV_IRQHandler
+00005e2c g O .text 0000000c __fsym___cmd_list_mailbox
+00003f0e g F .text 00000176 RCC_GetClocksFreq
+00005620 g O .text 00000009 __fsym_pinWrite_name
+000042ce g F .text 00000012 J4_PWR_Open
+00003ac4 w .text 00000000 DMA1_Channel6_IRQHandler
00002008 g F .text 000000b6 list_msgqueue
-00003a78 w .text 00000000 UART4_IRQHandler
-00003a78 w .text 00000000 DMA2_Channel4_IRQHandler
-00003ee6 g F .text 00000090 USART_Init
-00003a78 w .text 00000000 TIM3_IRQHandler
-00003a78 w .text 00000000 RCC_IRQHandler
+2000185c g O .bss 00000080 J2RS485_in_buff
+00003ac4 w .text 00000000 UART4_IRQHandler
+00003ac4 w .text 00000000 DMA2_Channel4_IRQHandler
+000040c0 g F .text 00000090 USART_Init
+00003ac4 w .text 00000000 TIM3_IRQHandler
+00003ac4 w .text 00000000 RCC_IRQHandler
00000c14 g F .text 00000012 rt_strlen
+0000386c g F .text 00000020 software_init
000003a2 g F .text 0000000c .hidden __riscv_save_3
-00003a78 w .text 00000000 TIM1_TRG_COM_IRQHandler
-00005b08 g O .text 0000000c __fsym_reboot
-00005b14 g O .text 0000000c __fsym___cmd_help
-00003a78 w .text 00000000 DMA1_Channel1_IRQHandler
-200001b4 g O .bss 00000001 rt_current_priority
-00003098 g F .text 0000007e ch32_pin_mode
-00005a3c g O .text 0000000c __fsym___cmd_list_timer
+00003ac4 w .text 00000000 TIM1_TRG_COM_IRQHandler
+00005ec8 g O .text 0000000c __fsym_reboot
+00005ed4 g O .text 0000000c __fsym___cmd_help
+00003ac4 w .text 00000000 DMA1_Channel1_IRQHandler
+20000274 g O .bss 00000001 rt_current_priority
+000030a8 g F .text 0000007e ch32_pin_mode
+00005dfc g O .text 0000000c __fsym___cmd_list_timer
00000000 g .init 00000000 _start
-00004d98 g O .text 00000018 __fsym___cmd_list_mailbox_desc
-00003a78 w .text 00000000 DMA2_Channel7_IRQHandler
+00005150 g O .text 00000018 __fsym___cmd_list_mailbox_desc
+00003ac4 w .text 00000000 DMA2_Channel7_IRQHandler
20000140 g O .data 00000010 AHBPrescTable
00001e1c g F .text 000000ac list_event
-000034c2 g F .text 00000076 EXTI15_10_IRQHandler
-000044b0 g F .text 00000028 strncmp
+000034d2 g F .text 00000080 EXTI15_10_IRQHandler
+00004866 g F .text 00000028 strncmp
00002e08 g F .text 0000001a rt_pin_mode
-00003f8c g F .text 00000036 USART_ITConfig
-00005b50 g O .text 0000000c __fsym_pinMode
-00004c94 g O .text 00000016 __fsym___cmd_list_device_desc
-00003b54 g F .text 0000006a EXTI_Init
-00005a30 g O .text 0000000c __fsym_list_device
-00005a84 g O .text 0000000c __fsym___cmd_list_mutex
+00004166 g F .text 00000036 USART_ITConfig
+00005f10 g O .text 0000000c __fsym_pinMode
+0000504c g O .text 00000016 __fsym___cmd_list_device_desc
+00003d2e g F .text 0000006a EXTI_Init
+00005df0 g O .text 0000000c __fsym_list_device
+00005e44 g O .text 0000000c __fsym___cmd_list_mutex
00002e3c g F .text 00000018 rt_pin_read
-00005140 g O .text 0000000b __fsym___cmd_help_name
+000054f8 g O .text 0000000b __fsym___cmd_help_name
00000480 g F .text 00000028 rt_tick_increase
000010fa g F .text 00000032 list_mem
-0000517c g O .text 0000001b __fsym___cmd_ps_desc
-00003a78 w .text 00000000 TIM7_IRQHandler
-00004e18 g O .text 00000015 __fsym_list_mutex_desc
+00005534 g O .text 0000001b __fsym___cmd_ps_desc
+00003ac4 w .text 00000000 TIM7_IRQHandler
+000051d0 g O .text 00000015 __fsym_list_mutex_desc
00001a42 g F .text 00000030 rt_timer_stop
-00003a78 w .text 00000000 CAN2_TX_IRQHandler
-0000514c g O .text 00000024 __fsym___cmd_free_desc
+00003ac4 w .text 00000000 CAN2_TX_IRQHandler
+00005504 g O .text 00000024 __fsym___cmd_free_desc
20000000 g .dalign 00000000 _data_vma
00000c26 g F .text 00000352 rt_vsnprintf
-00005acc g O .text 0000000c __fsym___cmd_list_thread
-00003a78 w .text 00000000 TIM5_IRQHandler
-0000439a g F .text 00000024 memcmp
-00003058 g F .text 00000022 ch32_pin_write
-0000344a g F .text 00000078 EXTI9_5_IRQHandler
-00004f38 g O .text 00000014 __fsym_clear_desc
+00005e8c g O .text 0000000c __fsym___cmd_list_thread
+00003ac4 w .text 00000000 TIM5_IRQHandler
+00004750 g F .text 00000024 memcmp
+00003068 g F .text 00000022 ch32_pin_write
+0000345a g F .text 00000078 EXTI9_5_IRQHandler
+000052f0 g O .text 00000014 __fsym_clear_desc
00001b74 g F .text 0000000e sw_clearpend
000004a8 g F .text 00000028 rt_tick_from_millisecond
-20000200 g O .bss 00000004 _syscall_table_begin
+20001a5c g O .bss 00000080 LORA_in_buff
+200002c0 g O .bss 00000004 _syscall_table_begin
00002f0c w F .text 0000000a rt_heap_end_get
-00003cba g F .text 0000002c GPIO_EXTILineConfig
+00003e94 g F .text 0000002c GPIO_EXTILineConfig
0000037a g F .text 00000028 .hidden __riscv_save_10
-00003538 g F .text 00000004 ch32dma_transmit
+00003552 g F .text 00000004 ch32dma_transmit
+200002e0 g O .bss 00000004 g_J50RS485_USART3_handle
000025a4 g F .text 0000003c finsh_get_prompt
-00003a78 w .text 00000000 ETH_WKUP_IRQHandler
+00003ac4 w .text 00000000 ETH_WKUP_IRQHandler
+20000150 g O .data 000000c0 uart_devices
000003bc g F .text 00000016 .hidden __riscv_restore_4
000003b2 g F .text 00000020 .hidden __riscv_restore_8
00001054 g F .text 0000004e __rt_ffs
00000388 g F .text 0000001a .hidden __riscv_save_6
-00003bbe g F .text 0000001e EXTI_GetITStatus
-00003a78 w .text 00000000 SPI2_IRQHandler
+00003d98 g F .text 0000001e EXTI_GetITStatus
+00003ac4 w .text 00000000 SPI2_IRQHandler
0000243c g F .text 000000a2 msh_auto_complete
-2000020c g O .bss 00000004 _sysvar_table_end
+200002cc g O .bss 00000004 _sysvar_table_end
00001636 g F .text 00000016 rt_enter_critical
00001892 g F .text 00000040 rt_thread_sleep
000003d2 g F .text 000000a8 memset
000003b2 g F .text 00000020 .hidden __riscv_restore_9
-00004192 g F .text 00000114 J5_0_485_Init
+0000446e g F .text 00000102 J5_0_485_Init
000003bc g F .text 00000016 .hidden __riscv_restore_7
-000037f0 g F .text 0000003e main
-00005128 g O .text 00000015 __fsym___cmd_help_desc
-00003a78 w .text 00000000 TIM10_BRK_IRQHandler
+00003812 g F .text 0000004a main
+000054e0 g O .text 00000015 __fsym___cmd_help_desc
+00003ac4 w .text 00000000 TIM10_BRK_IRQHandler
+200002d4 g O .bss 00000004 g_J2RS485_UART7_handle
00000922 g F .text 0000002c rt_interrupt_leave
-00003a78 w .text 00000000 TIM9_CC_IRQHandler
-00004cfc g O .text 00000011 __fsym___cmd_list_timer_name
-00003a78 w .text 00000000 DMA2_Channel5_IRQHandler
+00003ac4 w .text 00000000 TIM9_CC_IRQHandler
+000050b4 g O .text 00000011 __fsym___cmd_list_timer_name
+00003ac4 w .text 00000000 DMA2_Channel5_IRQHandler
+200002d0 g O .bss 00000004 g_J1RS485_UART6_handle
00001b2c g F .text 00000002 rt_system_timer_thread_init
+00004226 g F .text 00000012 J1_PWR_Open
00001778 g F .text 00000032 rt_thread_init
-00004ce4 g O .text 00000015 __fsym___cmd_list_timer_desc
-00005b5c g .text 00000000 __vsymtab_start
-00003b1e g F .text 0000002c Rs485_thread_Init
-00003a78 w .text 00000000 DMA1_Channel5_IRQHandler
-00003422 g F .text 00000028 EXTI4_IRQHandler
-00004e8c g O .text 00000019 __fsym___cmd_list_sem_desc
-20000174 g O .bss 00000001 rt_interrupt_nest
-00003a78 w .text 00000000 USB_LP_CAN1_RX0_IRQHandler
-00004f54 g O .text 00000011 __fsym___cmd_reboot_desc
-00004dec g O .text 00000015 __fsym___cmd_list_mutex_desc
+0000509c g O .text 00000015 __fsym___cmd_list_timer_desc
+00005f1c g .text 00000000 __vsymtab_start
+00003b6a g F .text 0000002c Rs485_thread_Init
+00003ac4 w .text 00000000 DMA1_Channel5_IRQHandler
+00003432 g F .text 00000028 EXTI4_IRQHandler
+00005244 g O .text 00000019 __fsym___cmd_list_sem_desc
+00004672 g F .text 000000de USARTx_SendStr
+20000234 g O .bss 00000001 rt_interrupt_nest
+0000461e g F .text 0000003a USART_CONNET_J8
+00003ac4 w .text 00000000 USB_LP_CAN1_RX0_IRQHandler
+0000530c g O .text 00000011 __fsym___cmd_reboot_desc
+000051a4 g O .text 00000015 __fsym___cmd_list_mutex_desc
00000fac w F .text 00000002 rt_hw_console_output
-000042a6 g F .text 0000001a USARTx_SendByte_str
-20001704 g O .bss 00000100 USART_Rbuffer
-200001ac g O .bss 00000004 rt_object_take_hook
-00003fdc g F .text 0000000c USART_ClearFlag
+00004658 g F .text 0000001a USARTx_SendByte_str
+20001adc g O .bss 00000100 USART_Rbuffer
+2000026c g O .bss 00000004 rt_object_take_hook
00002152 g F .text 0000009a list_timer
-00004d34 g O .text 0000001d __fsym___cmd_list_msgqueue_desc
-00003850 g F .text 000000fa SystemInit
-00003a78 w .text 00000000 RNG_IRQHandler
-00005170 g O .text 0000000b __fsym___cmd_free_name
+000050ec g O .text 0000001d __fsym___cmd_list_msgqueue_desc
+0000389c g F .text 000000fa SystemInit
+00003ac4 w .text 00000000 RNG_IRQHandler
+00005528 g O .text 0000000b __fsym___cmd_free_name
00001b82 g F .text 0000000c rt_hw_interrupt_disable
+200002d8 g O .bss 00000004 g_J3RS485_USART2_handle
0000192c g F .text 0000002c rt_thread_startup
-200001b8 g O .bss 00000004 rt_current_thread
+20000278 g O .bss 00000004 rt_current_thread
00000f78 g F .text 00000006 rt_console_get_device
-000042c0 g F .text 000000da USARTx_SendStr_Len
-00003a78 w .text 00000000 USB_HP_CAN1_TX_IRQHandler
+00003ac4 w .text 00000000 USB_HP_CAN1_TX_IRQHandler
00000000 g .init 00000000 _sinit
-00004e30 g O .text 0000000b __fsym_list_mutex_name
-00003a78 w .text 00000000 DMA1_Channel3_IRQHandler
-200001cc g O .bss 00000004 rt_thread_ready_priority_group
-00003a78 w .text 00000000 ETH_IRQHandler
-00005b20 g O .text 0000000c __fsym___cmd_free
-00003a78 w .text 00000000 TIM1_UP_IRQHandler
-00004db0 g O .text 00000013 __fsym___cmd_list_mailbox_name
-00004cac g O .text 00000012 __fsym___cmd_list_device_name
-200001c4 g O .bss 00000008 rt_thread_defunct
-00005b6c g O .text 00000004 __rt_init_rti_board_end
-00003a78 w .text 00000000 WWDG_IRQHandler
-00005b44 g O .text 0000000c __fsym_pinWrite
+000051e8 g O .text 0000000b __fsym_list_mutex_name
+00003ac4 w .text 00000000 DMA1_Channel3_IRQHandler
+2000028c g O .bss 00000004 rt_thread_ready_priority_group
+00003ac4 w .text 00000000 ETH_IRQHandler
+00005ee0 g O .text 0000000c __fsym___cmd_free
+00003ac4 w .text 00000000 TIM1_UP_IRQHandler
+00005168 g O .text 00000013 __fsym___cmd_list_mailbox_name
+00005064 g O .text 00000012 __fsym___cmd_list_device_name
+20000284 g O .bss 00000008 rt_thread_defunct
+00005f2c g O .text 00000004 __rt_init_rti_board_end
+00003ac4 w .text 00000000 WWDG_IRQHandler
+00005f04 g O .text 0000000c __fsym_pinWrite
0000080e g F .text 00000028 rt_sem_init
00000236 g .text 00000000 rt_hw_context_switch_exit
-00003a78 w .text 00000000 USBHSWakeup_IRQHandler
+00003ac4 w .text 00000000 USBHSWakeup_IRQHandler
00000aee g F .text 00000088 rt_memset
-00003a78 w .text 00000000 DMA2_Channel11_IRQHandler
+00003ac4 w .text 00000000 DMA2_Channel11_IRQHandler
000020be g F .text 00000094 list_device
-00003a78 w .text 00000000 Ecall_U_Mode_Handler
-00005a78 g O .text 0000000c __fsym_list_mailbox
+00003ac4 w .text 00000000 Ecall_U_Mode_Handler
+00005e38 g O .text 0000000c __fsym_list_mailbox
00000bea g F .text 0000002a rt_strncmp
-00005a9c g O .text 0000000c __fsym___cmd_list_event
-00003a78 w .text 00000000 DMA2_Channel6_IRQHandler
-00005b5c g .text 00000000 __vsymtab_end
-00005244 g O .text 00000008 __fsym_pinRead_name
-00005198 g O .text 00000009 __fsym___cmd_ps_name
-00005a48 g O .text 0000000c __fsym_list_timer
-00003a78 w .text 00000000 TIM2_IRQHandler
+00005e5c g O .text 0000000c __fsym___cmd_list_event
+00003ac4 w .text 00000000 DMA2_Channel6_IRQHandler
+200002e4 g O .bss 00000004 g_LORA_UART5_handle
+00005f1c g .text 00000000 __vsymtab_end
+000055fc g O .text 00000008 __fsym_pinRead_name
+00005550 g O .text 00000009 __fsym___cmd_ps_name
+00005e08 g O .text 0000000c __fsym_list_timer
+00003ac4 w .text 00000000 TIM2_IRQHandler
20010000 g .stack 00000000 _eusrstack
0000142a g F .text 0000002e rt_object_detach
000003a2 g F .text 0000000c .hidden __riscv_save_2
00000290 g .text 00000000 SW_Handler
-00005b68 g O .text 00000004 __rt_init_rt_hw_usart_init
+00005f28 g O .text 00000004 __rt_init_rt_hw_usart_init
00000ad2 g F .text 0000001c rt_set_errno
00001b22 g F .text 0000000a rt_system_timer_init
-00003a78 w .text 00000000 TIM1_BRK_IRQHandler
+00003ac4 w .text 00000000 TIM1_BRK_IRQHandler
000015f4 g F .text 00000042 rt_schedule_remove_thread
-00003fc2 g F .text 00000008 USART_SendData
+0000419c g F .text 00000008 USART_SendData
000008f6 g F .text 0000002c rt_interrupt_enter
-00003a78 w .text 00000000 DMA2_Channel10_IRQHandler
-000033aa g F .text 00000028 EXTI1_IRQHandler
+00003ac4 w .text 00000000 DMA2_Channel10_IRQHandler
+000033ba g F .text 00000028 EXTI1_IRQHandler
00001b8e g F .text 00000006 rt_hw_interrupt_enable
00000388 g F .text 0000001a .hidden __riscv_save_5
-20000214 g O .bss 00000001 USART_Rbuffer_Num
-00005a0c g O .text 0000000c __fsym_list_mem
-20000168 g .data 00000000 _edata
-0000382e g F .text 00000014 hareware_init
-00005a24 g O .text 0000000c __fsym___cmd_list_device
-20001804 g .bss 00000000 _end
-00004d54 g O .text 00000014 __fsym___cmd_list_msgqueue_name
+200002ec g O .bss 00000001 USART_Rbuffer_Num
+00005dcc g O .text 0000000c __fsym_list_mem
+20000228 g .data 00000000 _edata
+0000385c g F .text 00000010 hareware_init
+00005de4 g O .text 0000000c __fsym___cmd_list_device
+20001bdc g .bss 00000000 _end
+0000510c g O .text 00000014 __fsym___cmd_list_msgqueue_name
0000164c g F .text 0000002e rt_exit_critical
-00003a78 w .text 00000000 RTCAlarm_IRQHandler
+0000425e g F .text 00000012 J2_PWR_Open
+000042a8 g F .text 00000026 J3_485_Init
+00003ac4 w .text 00000000 RTCAlarm_IRQHandler
00001ec8 g F .text 00000082 list_mutex
000024de g F .text 0000000e cmd_ps
-00004134 g F .text 00000012 J8_PWR_Close
-00005b78 g .dlalign 00000000 _data_lma
+000043c4 g F .text 00000012 J8_PWR_Close
+00005f38 g .dlalign 00000000 _data_lma
0000260e g F .text 0000007e finsh_set_device
-00003a78 w .text 00000000 TIM10_UP_IRQHandler
-00003a78 w .text 00000000 TIM9_TRG_COM_IRQHandler
-00003a78 w .text 00000000 UART7_IRQHandler
-00003038 g F .text 00000020 get_pin
-00003a78 w .text 00000000 USART2_IRQHandler
-00003a78 w .text 00000000 UART6_IRQHandler
-00004122 g F .text 00000012 J7_PWR_Close
+00003ac4 w .text 00000000 TIM10_UP_IRQHandler
+00003ac4 w .text 00000000 TIM9_TRG_COM_IRQHandler
+00003ac4 w .text 00000000 UART7_IRQHandler
+00003048 g F .text 00000020 get_pin
+00003ac4 w .text 00000000 USART2_IRQHandler
+00003ac4 w .text 00000000 UART6_IRQHandler
+000043a0 g F .text 00000012 J7_PWR_Close
00000678 g F .text 00000038 rt_device_close
000017aa g F .text 00000006 rt_thread_self
-00005b70 g O .text 00000004 __rt_init_finsh_system_init
-00004cc0 g O .text 00000016 __fsym_list_device_desc
-0000394a g F .text 0000012e SystemCoreClockUpdate
-00004f00 g O .text 0000000c __fsym_list_thread_desc
-00003a78 w .text 00000000 I2C2_ER_IRQHandler
-00003a78 w .text 00000000 DMA1_Channel2_IRQHandler
+00005f30 g O .text 00000004 __rt_init_finsh_system_init
+00005078 g O .text 00000016 __fsym_list_device_desc
+00003996 g F .text 0000012e SystemCoreClockUpdate
+000052b8 g O .text 0000000c __fsym_list_thread_desc
+00003ac4 w .text 00000000 I2C2_ER_IRQHandler
+00003ac4 w .text 00000000 DMA1_Channel2_IRQHandler
000014ae g F .text 00000032 rt_object_delete
-00003606 g F .text 000000c0 rt_hw_usart_init
+00003624 g F .text 000000c4 rt_hw_usart_init
0000047a g F .text 00000006 rt_tick_get
000003ae g F .text 00000024 .hidden __riscv_restore_12
-00003a78 w .text 00000000 TIM8_BRK_IRQHandler
-00004e80 g O .text 0000000b __fsym_list_event_name
-00003a7a w .text 00000000 handle_reset
-00003a78 w .text 00000000 CAN1_SCE_IRQHandler
-00005aa8 g O .text 0000000c __fsym_list_event
-200001b0 g O .bss 00000004 rt_object_trytake_hook
-00003a78 w .text 00000000 FLASH_IRQHandler
+00003ac4 w .text 00000000 TIM8_BRK_IRQHandler
+000043e8 g F .text 0000003a USART_CONNET_J9
+00005238 g O .text 0000000b __fsym_list_event_name
+00003ac6 w .text 00000000 handle_reset
+00003ac4 w .text 00000000 CAN1_SCE_IRQHandler
+00005e68 g O .text 0000000c __fsym_list_event
+20000270 g O .bss 00000004 rt_object_trytake_hook
+00003ac4 w .text 00000000 FLASH_IRQHandler
000003a2 g F .text 0000000c .hidden __riscv_save_0
-00004e54 g O .text 00000011 __fsym___cmd_list_event_name
-00004770 g O .text 0000001e __fsym_list_mem_desc
+0000520c g O .text 00000011 __fsym___cmd_list_event_name
+00004b28 g O .text 0000001e __fsym_list_mem_desc
+0000438e g F .text 00000012 J7_PWR_Open
00000836 g F .text 00000080 rt_sem_take
-00003766 g F .text 0000004a USART1_IRQHandler
-00005ab4 g O .text 0000000c __fsym___cmd_list_sem
-0000449e g F .text 00000012 strlen
-00003a78 w .text 00000000 SPI3_IRQHandler
-00004d10 g O .text 00000015 __fsym_list_timer_desc
+00003788 g F .text 0000004a USART1_IRQHandler
+00005e74 g O .text 0000000c __fsym___cmd_list_sem
+00004854 g F .text 00000012 strlen
+00003ac4 w .text 00000000 SPI3_IRQHandler
+000050c8 g O .text 00000015 __fsym_list_timer_desc
00000f7e g F .text 0000002e rt_console_set_device
-00003116 g F .text 00000092 ch32_pin_attach_irq
-00003a78 w .text 00000000 I2C1_ER_IRQHandler
-00005b60 g O .text 00000004 __rt_init_rti_board_start
+00003126 g F .text 00000092 ch32_pin_attach_irq
+00003ac4 w .text 00000000 I2C1_ER_IRQHandler
+00005f20 g O .text 00000004 __rt_init_rti_board_start
000006cc g F .text 0000001c rt_device_write
-00004f0c g O .text 0000000c __fsym_list_thread_name
-00005a0c g .text 00000000 __fsymtab_start
+000052c4 g O .text 0000000c __fsym_list_thread_name
+00005dcc g .text 00000000 __fsymtab_start
000003c6 g F .text 0000000c .hidden __riscv_restore_1
-0000301c g F .text 0000001c rt_hw_pin_init
-00005af0 g O .text 0000000c __fsym_clear
+0000302c g F .text 0000001c rt_hw_pin_init
+00005eb0 g O .text 0000000c __fsym_clear
00001542 g F .text 0000006a rt_schedule
000013cc g F .text 0000005e rt_object_init
-0000307a g F .text 0000001e ch32_pin_read
-00005b2c g O .text 0000000c __fsym___cmd_ps
-00003ca6 g F .text 0000000a GPIO_ReadInputDataBit
-0000524c g O .text 0000001c __fsym_pinWrite_desc
+0000308a g F .text 0000001e ch32_pin_read
+00005eec g O .text 0000000c __fsym___cmd_ps
+00003e80 g F .text 0000000a GPIO_ReadInputDataBit
+00005604 g O .text 0000001c __fsym_pinWrite_desc
000019c2 g F .text 00000080 rt_timer_start
-00004038 g F .text 00000010 android_PowerCtrl_Init
+000042e0 g F .text 0000002a J4_485_Init
+200017dc g O .bss 00000080 J1RS485_in_buff
+00004206 g F .text 00000010 android_PowerCtrl_Init
00002236 g F .text 00000058 msh_help
00002d42 g F .text 000000aa rt_hw_serial_isr
-00003a78 w .text 00000000 USBWakeUp_IRQHandler
+00003ac4 w .text 00000000 USBWakeUp_IRQHandler
000001dc g .text 00000000 rt_hw_context_switch
-00003a78 w .text 00000000 DMA2_Channel3_IRQHandler
-00003202 g F .text 0000015c ch32_pin_irq_enable
-00004cd8 g O .text 0000000c __fsym_list_device_name
-00004d68 g O .text 0000001d __fsym_list_msgqueue_desc
-00004eb8 g O .text 00000019 __fsym_list_sem_desc
+00003ac4 w .text 00000000 DMA2_Channel3_IRQHandler
+00003212 g F .text 0000015c ch32_pin_irq_enable
+00005090 g O .text 0000000c __fsym_list_device_name
+00005120 g O .text 0000001d __fsym_list_msgqueue_desc
+00005270 g O .text 00000019 __fsym_list_sem_desc
Disassembly of section .init:
00000000 <_sinit>:
- 0: 27b0306f j 3a7a
+ 0: 2c70306f j 3ac6
Disassembly of section .vector:
00000004 <_vector_base>:
...
- c: 37b0 lbu a2,11(a5)
+ c: 37d2 lhu a2,44(a5)
e: 0000 unimp
- 10: 37d0 lbu a2,13(a5)
+ 10: 37f2 lhu a2,46(a5)
12: 0000 unimp
14: 0000 unimp
16: 0000 unimp
- 18: 3a78 lbu a4,23(a2)
+ 18: 3ac4 lbu s1,21(a3)
...
22: 0000 unimp
- 24: 3a78 lbu a4,23(a2)
+ 24: 3ac4 lbu s1,21(a3)
26: 0000 unimp
- 28: 3a78 lbu a4,23(a2)
+ 28: 3ac4 lbu s1,21(a3)
...
32: 0000 unimp
34: 2f8c lbu a1,24(a5)
@@ -654,181 +694,181 @@ Disassembly of section .vector:
3e: 0000 unimp
40: 0000 unimp
42: 0000 unimp
- 44: 3a78 lbu a4,23(a2)
+ 44: 3ac4 lbu s1,21(a3)
46: 0000 unimp
- 48: 3a78 lbu a4,23(a2)
+ 48: 3ac4 lbu s1,21(a3)
4a: 0000 unimp
- 4c: 3a78 lbu a4,23(a2)
+ 4c: 3ac4 lbu s1,21(a3)
4e: 0000 unimp
- 50: 3a78 lbu a4,23(a2)
+ 50: 3ac4 lbu s1,21(a3)
52: 0000 unimp
- 54: 3a78 lbu a4,23(a2)
+ 54: 3ac4 lbu s1,21(a3)
56: 0000 unimp
- 58: 3a78 lbu a4,23(a2)
+ 58: 3ac4 lbu s1,21(a3)
5a: 0000 unimp
- 5c: 3382 lhu s0,32(a5)
+ 5c: 3392 lhu a2,32(a5)
5e: 0000 unimp
- 60: 33aa lhu a0,34(a5)
+ 60: 33ba lhu a4,34(a5)
62: 0000 unimp
- 64: 33d2 lhu a2,36(a5)
+ 64: 33e2 lhu s0,38(a5)
66: 0000 unimp
- 68: 33fa lhu a4,38(a5)
+ 68: 340a lhu a0,40(s0)
6a: 0000 unimp
- 6c: 3422 lhu s0,42(s0)
+ 6c: 3432 lhu a2,42(s0)
6e: 0000 unimp
- 70: 3a78 lbu a4,23(a2)
+ 70: 3ac4 lbu s1,21(a3)
72: 0000 unimp
- 74: 3a78 lbu a4,23(a2)
+ 74: 3ac4 lbu s1,21(a3)
76: 0000 unimp
- 78: 3a78 lbu a4,23(a2)
+ 78: 3ac4 lbu s1,21(a3)
7a: 0000 unimp
- 7c: 3a78 lbu a4,23(a2)
+ 7c: 3ac4 lbu s1,21(a3)
7e: 0000 unimp
- 80: 3a78 lbu a4,23(a2)
+ 80: 3ac4 lbu s1,21(a3)
82: 0000 unimp
- 84: 3a78 lbu a4,23(a2)
+ 84: 3ac4 lbu s1,21(a3)
86: 0000 unimp
- 88: 3a78 lbu a4,23(a2)
+ 88: 3ac4 lbu s1,21(a3)
8a: 0000 unimp
- 8c: 3a78 lbu a4,23(a2)
+ 8c: 3ac4 lbu s1,21(a3)
8e: 0000 unimp
- 90: 3a78 lbu a4,23(a2)
+ 90: 3ac4 lbu s1,21(a3)
92: 0000 unimp
- 94: 3a78 lbu a4,23(a2)
+ 94: 3ac4 lbu s1,21(a3)
96: 0000 unimp
- 98: 3a78 lbu a4,23(a2)
+ 98: 3ac4 lbu s1,21(a3)
9a: 0000 unimp
- 9c: 3a78 lbu a4,23(a2)
+ 9c: 3ac4 lbu s1,21(a3)
9e: 0000 unimp
- a0: 344a lhu a0,44(s0)
+ a0: 345a lhu a4,44(s0)
a2: 0000 unimp
- a4: 3a78 lbu a4,23(a2)
+ a4: 3ac4 lbu s1,21(a3)
a6: 0000 unimp
- a8: 3a78 lbu a4,23(a2)
+ a8: 3ac4 lbu s1,21(a3)
aa: 0000 unimp
- ac: 3a78 lbu a4,23(a2)
+ ac: 3ac4 lbu s1,21(a3)
ae: 0000 unimp
- b0: 3a78 lbu a4,23(a2)
+ b0: 3ac4 lbu s1,21(a3)
b2: 0000 unimp
- b4: 3a78 lbu a4,23(a2)
+ b4: 3ac4 lbu s1,21(a3)
b6: 0000 unimp
- b8: 3a78 lbu a4,23(a2)
+ b8: 3ac4 lbu s1,21(a3)
ba: 0000 unimp
- bc: 3a78 lbu a4,23(a2)
+ bc: 3ac4 lbu s1,21(a3)
be: 0000 unimp
- c0: 3a78 lbu a4,23(a2)
+ c0: 3ac4 lbu s1,21(a3)
c2: 0000 unimp
- c4: 3a78 lbu a4,23(a2)
+ c4: 3ac4 lbu s1,21(a3)
c6: 0000 unimp
- c8: 3a78 lbu a4,23(a2)
+ c8: 3ac4 lbu s1,21(a3)
ca: 0000 unimp
- cc: 3a78 lbu a4,23(a2)
+ cc: 3ac4 lbu s1,21(a3)
ce: 0000 unimp
- d0: 3a78 lbu a4,23(a2)
+ d0: 3ac4 lbu s1,21(a3)
d2: 0000 unimp
- d4: 3a78 lbu a4,23(a2)
+ d4: 3ac4 lbu s1,21(a3)
d6: 0000 unimp
- d8: 3766 lhu s1,46(a4)
+ d8: 3788 lbu a0,9(a5)
da: 0000 unimp
- dc: 3a78 lbu a4,23(a2)
+ dc: 3ac4 lbu s1,21(a3)
de: 0000 unimp
- e0: 4058 lw a4,4(s0)
+ e0: 430a lw t1,128(sp)
e2: 0000 unimp
- e4: 34c2 lhu s0,44(s1)
+ e4: 34d2 lhu a2,44(s1)
e6: 0000 unimp
- e8: 3a78 lbu a4,23(a2)
+ e8: 3ac4 lbu s1,21(a3)
ea: 0000 unimp
- ec: 3a78 lbu a4,23(a2)
+ ec: 3ac4 lbu s1,21(a3)
ee: 0000 unimp
- f0: 3a78 lbu a4,23(a2)
+ f0: 3ac4 lbu s1,21(a3)
f2: 0000 unimp
- f4: 3a78 lbu a4,23(a2)
+ f4: 3ac4 lbu s1,21(a3)
f6: 0000 unimp
- f8: 3a78 lbu a4,23(a2)
+ f8: 3ac4 lbu s1,21(a3)
fa: 0000 unimp
- fc: 3a78 lbu a4,23(a2)
+ fc: 3ac4 lbu s1,21(a3)
fe: 0000 unimp
- 100: 3a78 lbu a4,23(a2)
+ 100: 3ac4 lbu s1,21(a3)
102: 0000 unimp
104: 0000 unimp
106: 0000 unimp
- 108: 3a78 lbu a4,23(a2)
+ 108: 3ac4 lbu s1,21(a3)
10a: 0000 unimp
- 10c: 3a78 lbu a4,23(a2)
+ 10c: 3ac4 lbu s1,21(a3)
10e: 0000 unimp
- 110: 3a78 lbu a4,23(a2)
+ 110: 3ac4 lbu s1,21(a3)
112: 0000 unimp
- 114: 3a78 lbu a4,23(a2)
+ 114: 3ac4 lbu s1,21(a3)
116: 0000 unimp
- 118: 3a78 lbu a4,23(a2)
+ 118: 3ac4 lbu s1,21(a3)
11a: 0000 unimp
- 11c: 3a78 lbu a4,23(a2)
+ 11c: 3ac4 lbu s1,21(a3)
11e: 0000 unimp
- 120: 3a78 lbu a4,23(a2)
+ 120: 3ac4 lbu s1,21(a3)
122: 0000 unimp
- 124: 3a78 lbu a4,23(a2)
+ 124: 3ac4 lbu s1,21(a3)
126: 0000 unimp
- 128: 3a78 lbu a4,23(a2)
+ 128: 3ac4 lbu s1,21(a3)
12a: 0000 unimp
- 12c: 3a78 lbu a4,23(a2)
+ 12c: 3ac4 lbu s1,21(a3)
12e: 0000 unimp
- 130: 3a78 lbu a4,23(a2)
+ 130: 3ac4 lbu s1,21(a3)
132: 0000 unimp
- 134: 3a78 lbu a4,23(a2)
+ 134: 3ac4 lbu s1,21(a3)
136: 0000 unimp
- 138: 3a78 lbu a4,23(a2)
+ 138: 3ac4 lbu s1,21(a3)
13a: 0000 unimp
- 13c: 3a78 lbu a4,23(a2)
+ 13c: 3ac4 lbu s1,21(a3)
13e: 0000 unimp
- 140: 3a78 lbu a4,23(a2)
+ 140: 3ac4 lbu s1,21(a3)
142: 0000 unimp
- 144: 3a78 lbu a4,23(a2)
+ 144: 3ac4 lbu s1,21(a3)
146: 0000 unimp
- 148: 3a78 lbu a4,23(a2)
+ 148: 3ac4 lbu s1,21(a3)
14a: 0000 unimp
- 14c: 3a78 lbu a4,23(a2)
+ 14c: 3ac4 lbu s1,21(a3)
14e: 0000 unimp
- 150: 3a78 lbu a4,23(a2)
+ 150: 3ac4 lbu s1,21(a3)
152: 0000 unimp
- 154: 3a78 lbu a4,23(a2)
+ 154: 3ac4 lbu s1,21(a3)
156: 0000 unimp
- 158: 3a78 lbu a4,23(a2)
+ 158: 3ac4 lbu s1,21(a3)
15a: 0000 unimp
- 15c: 3a78 lbu a4,23(a2)
+ 15c: 3ac4 lbu s1,21(a3)
15e: 0000 unimp
- 160: 3a78 lbu a4,23(a2)
+ 160: 3ac4 lbu s1,21(a3)
162: 0000 unimp
- 164: 3a78 lbu a4,23(a2)
+ 164: 3ac4 lbu s1,21(a3)
166: 0000 unimp
- 168: 3a78 lbu a4,23(a2)
+ 168: 3ac4 lbu s1,21(a3)
16a: 0000 unimp
- 16c: 3a78 lbu a4,23(a2)
+ 16c: 3ac4 lbu s1,21(a3)
16e: 0000 unimp
- 170: 3a78 lbu a4,23(a2)
+ 170: 3ac4 lbu s1,21(a3)
172: 0000 unimp
- 174: 3a78 lbu a4,23(a2)
+ 174: 3ac4 lbu s1,21(a3)
176: 0000 unimp
- 178: 3a78 lbu a4,23(a2)
+ 178: 3ac4 lbu s1,21(a3)
17a: 0000 unimp
- 17c: 3a78 lbu a4,23(a2)
+ 17c: 3ac4 lbu s1,21(a3)
17e: 0000 unimp
- 180: 3a78 lbu a4,23(a2)
+ 180: 3ac4 lbu s1,21(a3)
182: 0000 unimp
- 184: 3a78 lbu a4,23(a2)
+ 184: 3ac4 lbu s1,21(a3)
186: 0000 unimp
- 188: 3a78 lbu a4,23(a2)
+ 188: 3ac4 lbu s1,21(a3)
18a: 0000 unimp
- 18c: 3a78 lbu a4,23(a2)
+ 18c: 3ac4 lbu s1,21(a3)
18e: 0000 unimp
- 190: 3a78 lbu a4,23(a2)
+ 190: 3ac4 lbu s1,21(a3)
192: 0000 unimp
- 194: 3a78 lbu a4,23(a2)
+ 194: 3ac4 lbu s1,21(a3)
196: 0000 unimp
- 198: 3a78 lbu a4,23(a2)
+ 198: 3ac4 lbu s1,21(a3)
19a: 0000 unimp
- 19c: 3a78 lbu a4,23(a2)
+ 19c: 3ac4 lbu s1,21(a3)
19e: 0000 unimp
- 1a0: 3a78 lbu a4,23(a2)
+ 1a0: 3ac4 lbu s1,21(a3)
...
Disassembly of section .text:
@@ -889,7 +929,7 @@ Disassembly of section .text:
238: 34151073 csrw mepc,a0
23c: 4092 lw ra,4(sp)
23e: 00008537 lui a0,0x8
- 242: 80050513 addi a0,a0,-2048 # 7800 <__rt_init_end+0x1c88>
+ 242: 80050513 addi a0,a0,-2048 # 7800 <__rt_init_end+0x18c8>
246: 30052073 csrs mstatus,a0
24a: 4522 lw a0,8(sp)
24c: 30052073 csrs mstatus,a0
@@ -965,23 +1005,23 @@ Disassembly of section .text:
2e2: 093010ef jal ra,1b74
2e6: 63c000ef jal ra,922
2ea: 34011173 csrrw sp,mscratch,sp
- 2ee: 89818413 addi s0,gp,-1896 # 200001f8
+ 2ee: 89818413 addi s0,gp,-1896 # 200002b8
2f2: 00042903 lw s2,0(s0)
2f6: 02090463 beqz s2,31e
2fa: 00042023 sw zero,0(s0)
2fe: 34102573 csrr a0,mepc
302: c02a sw a0,0(sp)
- 304: 89018413 addi s0,gp,-1904 # 200001f0
+ 304: 89018413 addi s0,gp,-1904 # 200002b0
308: 4004 lw s1,0(s0)
30a: 0024a023 sw sp,0(s1)
- 30e: 89418413 addi s0,gp,-1900 # 200001f4
+ 30e: 89418413 addi s0,gp,-1900 # 200002b4
312: 4004 lw s1,0(s0)
314: 0004a103 lw sp,0(s1)
318: 4502 lw a0,0(sp)
31a: 34151073 csrw mepc,a0
31e: 4092 lw ra,4(sp)
320: 000082b7 lui t0,0x8
- 324: 80028293 addi t0,t0,-2048 # 7800 <__rt_init_end+0x1c88>
+ 324: 80028293 addi t0,t0,-2048 # 7800 <__rt_init_end+0x18c8>
328: 3002a073 csrs mstatus,t0
32c: 42a2 lw t0,8(sp)
32e: 3002a073 csrs mstatus,t0
@@ -1138,12 +1178,12 @@ Disassembly of section .text:
478: b7a5 j 3e0
0000047a :
- 47a: 8081a503 lw a0,-2040(gp) # 20000168 <_edata>
+ 47a: 8081a503 lw a0,-2040(gp) # 20000228 <_edata>
47e: 8082 ret
00000480 :
480: f23ff2ef jal t0,3a2 <__riscv_save_0>
- 484: 80818793 addi a5,gp,-2040 # 20000168 <_edata>
+ 484: 80818793 addi a5,gp,-2040 # 20000228 <_edata>
488: 4398 lw a4,0(a5)
48a: 0705 addi a4,a4,1
48c: c398 sw a4,0(a5)
@@ -1192,8 +1232,8 @@ Disassembly of section .text:
4e0: ec3ff2ef jal t0,3a2 <__riscv_save_0>
4e4: 6419 lui s0,0x6
4e6: 6499 lui s1,0x6
- 4e8: b6040413 addi s0,s0,-1184 # 5b60 <__rt_init_rti_board_start>
- 4ec: b6c48493 addi s1,s1,-1172 # 5b6c <__rt_init_rti_board_end>
+ 4e8: f2040413 addi s0,s0,-224 # 5f20 <__rt_init_rti_board_start>
+ 4ec: f2c48493 addi s1,s1,-212 # 5f2c <__rt_init_rti_board_end>
4f0: 00946363 bltu s0,s1,4f6
4f4: bdc9 j 3c6 <__riscv_restore_0>
4f6: 401c lw a5,0(s0)
@@ -1205,8 +1245,8 @@ Disassembly of section .text:
4fe: ea5ff2ef jal t0,3a2 <__riscv_save_0>
502: 6419 lui s0,0x6
504: 6499 lui s1,0x6
- 506: b6c40413 addi s0,s0,-1172 # 5b6c <__rt_init_rti_board_end>
- 50a: b7448493 addi s1,s1,-1164 # 5b74 <__rt_init_rti_end>
+ 506: f2c40413 addi s0,s0,-212 # 5f2c <__rt_init_rti_board_end>
+ 50a: f3448493 addi s1,s1,-204 # 5f34 <__rt_init_rti_end>
50e: 00946363 bltu s0,s1,514
512: bd55 j 3c6 <__riscv_restore_0>
514: 401c lw a5,0(s0)
@@ -1217,19 +1257,19 @@ Disassembly of section .text:
0000051c :
51c: e87ff2ef jal t0,3a2 <__riscv_save_0>
520: 3ff9 jal 4fe
- 522: 2ce030ef jal ra,37f0
+ 522: 2f0030ef jal ra,3812
526: b545 j 3c6 <__riscv_restore_0>
00000528 :
528: e7bff2ef jal t0,3a2 <__riscv_save_0>
52c: 000005b7 lui a1,0x0
- 530: 00004537 lui a0,0x4
+ 530: 00005537 lui a0,0x5
534: 47d1 li a5,20
536: 4715 li a4,5
538: 20000693 li a3,512
53c: 4601 li a2,0
53e: 51c58593 addi a1,a1,1308 # 51c
- 542: 52850513 addi a0,a0,1320 # 4528
+ 542: 8e050513 addi a0,a0,-1824 # 48e0
546: 26a010ef jal ra,17b0
54a: 3e2010ef jal ra,192c
54e: bda5 j 3c6 <__riscv_restore_0>
@@ -1320,9 +1360,9 @@ Disassembly of section .text:
616: 45b2 lw a1,12(sp)
618: cd01 beqz a0,630
61a: 862a mv a2,a0
- 61c: 00004537 lui a0,0x4
+ 61c: 00005537 lui a0,0x5
620: 85a2 mv a1,s0
- 622: 53050513 addi a0,a0,1328 # 4530
+ 622: 8e850513 addi a0,a0,-1816 # 48e8
626: 189000ef jal ra,fae
62a: 8526 mv a0,s1
62c: 0141 addi sp,sp,16
@@ -1423,15 +1463,15 @@ Disassembly of section .text:
000006ee :
6ee: c9bff2ef jal t0,388 <__riscv_save_4>
- 6f2: 86418993 addi s3,gp,-1948 # 200001c4
+ 6f2: 86418993 addi s3,gp,-1948 # 20000284
6f6: 4a85 li s5,1
- 6f8: 8641a783 lw a5,-1948(gp) # 200001c4
+ 6f8: 8641a783 lw a5,-1948(gp) # 20000284
6fc: 05378663 beq a5,s3,748
700: 482010ef jal ra,1b82
- 704: 8641a783 lw a5,-1948(gp) # 200001c4
+ 704: 8641a783 lw a5,-1948(gp) # 20000284
708: 8a2a mv s4,a0
70a: 03378d63 beq a5,s3,744
- 70e: 8641a403 lw s0,-1948(gp) # 200001c4
+ 70e: 8641a403 lw s0,-1948(gp) # 20000284
712: 405c lw a5,4(s0)
714: 4018 lw a4,0(s0)
716: fec40913 addi s2,s0,-20
@@ -1464,7 +1504,7 @@ Disassembly of section .text:
00000762 :
762: c41ff2ef jal t0,3a2 <__riscv_save_0>
- 766: 93818413 addi s0,gp,-1736 # 20000298
+ 766: 95018413 addi s0,gp,-1712 # 20000370
76a: 01040913 addi s2,s0,16
76e: 401c lw a5,0(s0)
770: c391 beqz a5,774
@@ -1477,17 +1517,17 @@ Disassembly of section .text:
0000077e :
77e: c25ff2ef jal t0,3a2 <__riscv_save_0>
782: 00000637 lui a2,0x0
- 786: 000045b7 lui a1,0x4
+ 786: 000055b7 lui a1,0x5
78a: 02000893 li a7,32
78e: 483d li a6,15
790: 20000793 li a5,512
- 794: 94818713 addi a4,gp,-1720 # 200002a8
+ 794: 96018713 addi a4,gp,-1696 # 20000380
798: 4681 li a3,0
79a: 76260613 addi a2,a2,1890 # 762
- 79e: 56858593 addi a1,a1,1384 # 4568
- 7a2: 8b818513 addi a0,gp,-1864 # 20000218
+ 79e: 92058593 addi a1,a1,-1760 # 4920
+ 7a2: 8d018513 addi a0,gp,-1840 # 200002f0
7a6: 7d3000ef jal ra,1778
- 7aa: 8b818513 addi a0,gp,-1864 # 20000218
+ 7aa: 8d018513 addi a0,gp,-1840 # 200002f0
7ae: 17e010ef jal ra,192c
7b2: b911 j 3c6 <__riscv_restore_0>
@@ -1550,7 +1590,7 @@ Disassembly of section .text:
00000836 :
836: b53ff2ef jal t0,388 <__riscv_save_4>
- 83a: 8501a783 lw a5,-1968(gp) # 200001b0
+ 83a: 8501a783 lw a5,-1968(gp) # 20000270
83e: 1141 addi sp,sp,-16
840: c62e sw a1,12(sp)
842: 842a mv s0,a0
@@ -1563,7 +1603,7 @@ Disassembly of section .text:
852: 17fd addi a5,a5,-1
854: ac5e sh a5,28(s0)
856: 338010ef jal ra,1b8e
- 85a: 84c1a783 lw a5,-1972(gp) # 200001ac
+ 85a: 84c1a783 lw a5,-1972(gp) # 2000026c
85e: 4501 li a0,0
860: cb91 beqz a5,874
862: 8522 mv a0,s0
@@ -1601,7 +1641,7 @@ Disassembly of section .text:
000008b6 :
8b6: aedff2ef jal t0,3a2 <__riscv_save_0>
- 8ba: 8481a783 lw a5,-1976(gp) # 200001a8
+ 8ba: 8481a783 lw a5,-1976(gp) # 20000268
8be: 842a mv s0,a0
8c0: c391 beqz a5,8c4
8c2: 9782 jalr a5
@@ -1629,12 +1669,12 @@ Disassembly of section .text:
8f6: aadff2ef jal t0,3a2 <__riscv_save_0>
8fa: 1141 addi sp,sp,-16
8fc: 286010ef jal ra,1b82
- 900: 81418713 addi a4,gp,-2028 # 20000174
+ 900: 81418713 addi a4,gp,-2028 # 20000234
904: 231c lbu a5,0(a4)
906: 0785 addi a5,a5,1
908: 0ff7f793 andi a5,a5,255
90c: a31c sb a5,0(a4)
- 90e: 80c1a783 lw a5,-2036(gp) # 2000016c
+ 90e: 80c1a783 lw a5,-2036(gp) # 2000022c
912: c781 beqz a5,91a
914: c62a sw a0,12(sp)
916: 9782 jalr a5
@@ -1647,12 +1687,12 @@ Disassembly of section .text:
922: a81ff2ef jal t0,3a2 <__riscv_save_0>
926: 1141 addi sp,sp,-16
928: 25a010ef jal ra,1b82
- 92c: 81418713 addi a4,gp,-2028 # 20000174
+ 92c: 81418713 addi a4,gp,-2028 # 20000234
930: 231c lbu a5,0(a4)
932: 17fd addi a5,a5,-1
934: 0ff7f793 andi a5,a5,255
938: a31c sb a5,0(a4)
- 93a: 8101a783 lw a5,-2032(gp) # 20000170
+ 93a: 8101a783 lw a5,-2032(gp) # 20000230
93e: c781 beqz a5,946
940: c62a sw a0,12(sp)
942: 9782 jalr a5
@@ -1662,22 +1702,22 @@ Disassembly of section .text:
94c: bcad j 3c6 <__riscv_restore_0>
0000094e :
- 94e: 8141c503 lbu a0,-2028(gp) # 20000174
+ 94e: 8141c503 lbu a0,-2028(gp) # 20000234
952: 8082 ret
00000954 :
954: 04087893 andi a7,a6,64
958: 1141 addi sp,sp,-16
95a: 00089e63 bnez a7,976
- 95e: 6891 lui a7,0x4
- 960: 71488893 addi a7,a7,1812 # 4714
+ 95e: 6895 lui a7,0x5
+ 960: acc88893 addi a7,a7,-1332 # 4acc
964: 01087393 andi t2,a6,16
968: 00038b63 beqz t2,97e
96c: ffe87813 andi a6,a6,-2
970: 02000e93 li t4,32
974: a819 j 98a
- 976: 6891 lui a7,0x4
- 978: 67088893 addi a7,a7,1648 # 4670
+ 976: 6895 lui a7,0x5
+ 978: a2888893 addi a7,a7,-1496 # 4a28
97c: b7e5 j 964
97e: 00187313 andi t1,a6,1
982: 03000e93 li t4,48
@@ -1798,7 +1838,7 @@ Disassembly of section .text:
ad6: 842a mv s0,a0
ad8: 3d9d jal 94e
ada: c509 beqz a0,ae4
- adc: 8081ac23 sw s0,-2024(gp) # 20000178 <__rt_errno>
+ adc: 8081ac23 sw s0,-2024(gp) # 20000238 <__rt_errno>
ae0: 8e7ff06f j 3c6 <__riscv_restore_0>
ae4: 4c7000ef jal ra,17aa
ae8: d975 beqz a0,adc
@@ -1938,12 +1978,12 @@ Disassembly of section .text:
c3a: fff54913 not s2,a0
c3e: 5bfd li s7,-1
c40: 69c1 lui s3,0x10
- c42: 00004a37 lui s4,0x4
+ c42: 00005a37 lui s4,0x5
c46: 8462 mv s0,s8
c48: 02b00a93 li s5,43
c4c: 02000b13 li s6,32
c50: 19fd addi s3,s3,-1
- c52: 70ca0a13 addi s4,s4,1804 # 470c
+ c52: ac4a0a13 addi s4,s4,-1340 # 4ac4
c56: a831 j c72
c58: 02500713 li a4,37
c5c: 02e78963 beq a5,a4,c8e
@@ -2204,15 +2244,15 @@ Disassembly of section .text:
f76: b339 j c84
00000f78 :
- f78: 81c1a503 lw a0,-2020(gp) # 2000017c <_console_device>
+ f78: 81c1a503 lw a0,-2020(gp) # 2000023c <_console_device>
f7c: 8082 ret
00000f7e :
f7e: c24ff2ef jal t0,3a2 <__riscv_save_0>
- f82: 81c1a903 lw s2,-2020(gp) # 2000017c <_console_device>
+ f82: 81c1a903 lw s2,-2020(gp) # 2000023c <_console_device>
f86: dfcff0ef jal ra,582
f8a: cd11 beqz a0,fa6
- f8c: 81c18413 addi s0,gp,-2020 # 2000017c <_console_device>
+ f8c: 81c18413 addi s0,gp,-2020 # 2000023c <_console_device>
f90: 84aa mv s1,a0
f92: 4008 lw a0,0(s0)
f94: c119 beqz a0,f9a
@@ -2236,7 +2276,7 @@ Disassembly of section .text:
fb8: 862a mv a2,a0
fba: 1054 addi a3,sp,36
fbc: 07f00593 li a1,127
- fc0: b4818513 addi a0,gp,-1208 # 200004a8
+ fc0: b6018513 addi a0,gp,-1184 # 20000580
fc4: da3e sw a5,52(sp)
fc6: c636 sw a3,12(sp)
fc8: ce06 sw ra,28(sp)
@@ -2246,9 +2286,9 @@ Disassembly of section .text:
fd0: de46 sw a7,60(sp)
fd2: 3991 jal c26
fd4: 86aa mv a3,a0
- fd6: 81c1a503 lw a0,-2020(gp) # 2000017c <_console_device>
+ fd6: 81c1a503 lw a0,-2020(gp) # 2000023c <_console_device>
fda: e909 bnez a0,fec
- fdc: b4818513 addi a0,gp,-1208 # 200004a8
+ fdc: b6018513 addi a0,gp,-1184 # 20000580
fe0: 37f1 jal fac
fe2: 40f2 lw ra,28(sp)
fe4: 4462 lw s0,24(sp)
@@ -2257,13 +2297,13 @@ Disassembly of section .text:
fea: 8082 ret
fec: 8626 mv a2,s1
fee: 2d26 lhu s1,26(a0)
- ff0: 81c18413 addi s0,gp,-2020 # 2000017c <_console_device>
+ ff0: 81c18413 addi s0,gp,-2020 # 2000023c <_console_device>
ff4: 0404e793 ori a5,s1,64
ff8: ad3e sh a5,26(a0)
ffa: 07f00793 li a5,127
ffe: 00d7f463 bgeu a5,a3,1006
1002: 07f00693 li a3,127
- 1006: b4818613 addi a2,gp,-1208 # 200004a8
+ 1006: b6018613 addi a2,gp,-1184 # 20000580
100a: 4581 li a1,0
100c: ec0ff0ef jal ra,6cc
1010: 401c lw a5,0(s0)
@@ -2272,37 +2312,37 @@ Disassembly of section .text:
00001016 :
1016: b8cff2ef jal t0,3a2 <__riscv_save_0>
- 101a: 00004537 lui a0,0x4
- 101e: 68450513 addi a0,a0,1668 # 4684
+ 101a: 00005537 lui a0,0x5
+ 101e: a3c50513 addi a0,a0,-1476 # 4a3c
1022: 3771 jal fae
- 1024: 00004537 lui a0,0x4
- 1028: 69050513 addi a0,a0,1680 # 4690
+ 1024: 00005537 lui a0,0x5
+ 1028: a4850513 addi a0,a0,-1464 # 4a48
102c: 3749 jal fae
- 102e: 00004737 lui a4,0x4
- 1032: 00004537 lui a0,0x4
- 1036: 6b470713 addi a4,a4,1716 # 46b4
+ 102e: 00005737 lui a4,0x5
+ 1032: 00005537 lui a0,0x5
+ 1036: a6c70713 addi a4,a4,-1428 # 4a6c
103a: 468d li a3,3
103c: 4605 li a2,1
103e: 458d li a1,3
- 1040: 6c050513 addi a0,a0,1728 # 46c0
+ 1040: a7850513 addi a0,a0,-1416 # 4a78
1044: 37ad jal fae
- 1046: 00004537 lui a0,0x4
- 104a: 6e050513 addi a0,a0,1760 # 46e0
+ 1046: 00005537 lui a0,0x5
+ 104a: a9850513 addi a0,a0,-1384 # 4a98
104e: 3785 jal fae
1050: b76ff06f j 3c6 <__riscv_restore_0>
00001054 <__rt_ffs>:
1054: c531 beqz a0,10a0 <__rt_ffs+0x4c>
- 1056: 6691 lui a3,0x4
+ 1056: 6695 lui a3,0x5
1058: 0ff57713 andi a4,a0,255
- 105c: 57068693 addi a3,a3,1392 # 4570 <__lowest_bit_bitmap>
+ 105c: 92868693 addi a3,a3,-1752 # 4928 <__lowest_bit_bitmap>
1060: c709 beqz a4,106a <__rt_ffs+0x16>
1062: 96ba add a3,a3,a4
1064: 2288 lbu a0,0(a3)
1066: 0505 addi a0,a0,1
1068: 8082 ret
106a: 67c1 lui a5,0x10
- 106c: f0078793 addi a5,a5,-256 # ff00 <__rt_init_end+0xa388>
+ 106c: f0078793 addi a5,a5,-256 # ff00 <__rt_init_end+0x9fc8>
1070: 8fe9 and a5,a5,a0
1072: cb81 beqz a5,1082 <__rt_ffs+0x2e>
1074: 8521 srai a0,a0,0x8
@@ -2327,15 +2367,15 @@ Disassembly of section .text:
10a0: 8082 ret
000010a2 :
- 10a2: 8241a703 lw a4,-2012(gp) # 20000184
+ 10a2: 8241a703 lw a4,-2012(gp) # 20000244
10a6: 415c lw a5,4(a0)
10a8: 97ba add a5,a5,a4
10aa: 02f50563 beq a0,a5,10d4
10ae: 23b6 lhu a3,2(a5)
10b0: e295 bnez a3,10d4
- 10b2: 8201a683 lw a3,-2016(gp) # 20000180
+ 10b2: 8201a683 lw a3,-2016(gp) # 20000240
10b6: 00f68f63 beq a3,a5,10d4
- 10ba: 82818693 addi a3,gp,-2008 # 20000188
+ 10ba: 82818693 addi a3,gp,-2008 # 20000248
10be: 4290 lw a2,0(a3)
10c0: 00f61363 bne a2,a5,10c6
10c4: c288 sw a0,0(a3)
@@ -2350,7 +2390,7 @@ Disassembly of section .text:
10da: 00f50f63 beq a0,a5,10f8
10de: 23b6 lhu a3,2(a5)
10e0: ee81 bnez a3,10f8
- 10e2: 82818693 addi a3,gp,-2008 # 20000188
+ 10e2: 82818693 addi a3,gp,-2008 # 20000248
10e6: 428c lw a1,0(a3)
10e8: 00a59363 bne a1,a0,10ee
10ec: c29c sw a5,0(a3)
@@ -2363,17 +2403,17 @@ Disassembly of section .text:
000010fa :
10fa: aa8ff2ef jal t0,3a2 <__riscv_save_0>
- 10fe: 8301a583 lw a1,-2000(gp) # 20000190
- 1102: 00004537 lui a0,0x4
- 1106: 72850513 addi a0,a0,1832 # 4728
+ 10fe: 8301a583 lw a1,-2000(gp) # 20000250
+ 1102: 00005537 lui a0,0x5
+ 1106: ae050513 addi a0,a0,-1312 # 4ae0
110a: 3555 jal fae
- 110c: 83c1a583 lw a1,-1988(gp) # 2000019c
- 1110: 00004537 lui a0,0x4
- 1114: 73c50513 addi a0,a0,1852 # 473c
+ 110c: 83c1a583 lw a1,-1988(gp) # 2000025c
+ 1110: 00005537 lui a0,0x5
+ 1114: af450513 addi a0,a0,-1292 # 4af4
1118: 3d59 jal fae
- 111a: 82c1a583 lw a1,-2004(gp) # 2000018c
- 111e: 00004537 lui a0,0x4
- 1122: 75050513 addi a0,a0,1872 # 4750
+ 111a: 82c1a583 lw a1,-2004(gp) # 2000024c
+ 111e: 00005537 lui a0,0x5
+ 1122: b0850513 addi a0,a0,-1272 # 4b08
1126: 3561 jal fae
1128: a9eff06f j 3c6 <__riscv_restore_0>
@@ -2389,61 +2429,61 @@ Disassembly of section .text:
1146: 04f6ea63 bltu a3,a5,119a
114a: 8f1d sub a4,a4,a5
114c: fe870613 addi a2,a4,-24
- 1150: 82c1a823 sw a2,-2000(gp) # 20000190
+ 1150: 82c1a823 sw a2,-2000(gp) # 20000250
1154: 6689 lui a3,0x2
1156: 1751 addi a4,a4,-12
- 1158: 82418413 addi s0,gp,-2012 # 20000184
+ 1158: 82418413 addi s0,gp,-2012 # 20000244
115c: ea068693 addi a3,a3,-352 # 1ea0
1160: c3d8 sw a4,4(a5)
1162: c394 sw a3,0(a5)
- 1164: 0007a423 sw zero,8(a5) # ff0008 <__rt_init_end+0xfea490>
+ 1164: 0007a423 sw zero,8(a5) # ff0008 <__rt_init_end+0xfea0d0>
1168: c01c sw a5,0(s0)
116a: 97ba add a5,a5,a4
- 116c: 82f1a023 sw a5,-2016(gp) # 20000180
+ 116c: 82f1a023 sw a5,-2016(gp) # 20000240
1170: 66c9 lui a3,0x12
- 1172: ea068693 addi a3,a3,-352 # 11ea0 <__rt_init_end+0xc328>
- 1176: 000045b7 lui a1,0x4
+ 1172: ea068693 addi a3,a3,-352 # 11ea0 <__rt_init_end+0xbf68>
+ 1176: 000055b7 lui a1,0x5
117a: c394 sw a3,0(a5)
117c: c3d8 sw a4,4(a5)
117e: c798 sw a4,8(a5)
1180: 4681 li a3,0
1182: 4605 li a2,1
- 1184: 7e858593 addi a1,a1,2024 # 47e8 <__fsym_list_mem_name+0x58>
- 1188: bc818513 addi a0,gp,-1080 # 20000528
+ 1184: ba058593 addi a1,a1,-1120 # 4ba0 <__fsym_list_mem_name+0x58>
+ 1188: be018513 addi a0,gp,-1056 # 20000600
118c: e82ff0ef jal ra,80e
1190: 4018 lw a4,0(s0)
- 1192: 82e1a423 sw a4,-2008(gp) # 20000188
+ 1192: 82e1a423 sw a4,-2008(gp) # 20000248
1196: a30ff06f j 3c6 <__riscv_restore_0>
119a: 85aa mv a1,a0
- 119c: 00004537 lui a0,0x4
- 11a0: 7f050513 addi a0,a0,2032 # 47f0 <__fsym_list_mem_name+0x60>
+ 119c: 00005537 lui a0,0x5
+ 11a0: ba850513 addi a0,a0,-1112 # 4ba8 <__fsym_list_mem_name+0x60>
11a4: 3529 jal fae
11a6: bfc5 j 1196
000011a8 :
11a8: 9faff2ef jal t0,3a2 <__riscv_save_0>
11ac: c539 beqz a0,11fa
- 11ae: 8301a703 lw a4,-2000(gp) # 20000190
+ 11ae: 8301a703 lw a4,-2000(gp) # 20000250
11b2: 00350413 addi s0,a0,3
11b6: 9871 andi s0,s0,-4
- 11b8: 83018913 addi s2,gp,-2000 # 20000190
+ 11b8: 83018913 addi s2,gp,-2000 # 20000250
11bc: 4481 li s1,0
11be: 0e876663 bltu a4,s0,12aa
11c2: 47b1 li a5,12
11c4: 00f47363 bgeu s0,a5,11ca
11c8: 4431 li s0,12
11ca: 55fd li a1,-1
- 11cc: bc818513 addi a0,gp,-1080 # 20000528
+ 11cc: be018513 addi a0,gp,-1056 # 20000600
11d0: e66ff0ef jal ra,836
- 11d4: 8281a783 lw a5,-2008(gp) # 20000188
- 11d8: 8241a583 lw a1,-2012(gp) # 20000184
+ 11d4: 8281a783 lw a5,-2008(gp) # 20000248
+ 11d8: 8241a583 lw a1,-2012(gp) # 20000244
11dc: 00092883 lw a7,0(s2)
11e0: 8526 mv a0,s1
11e2: 40b78633 sub a2,a5,a1
11e6: 408886b3 sub a3,a7,s0
- 11ea: 82818813 addi a6,gp,-2008 # 20000188
+ 11ea: 82818813 addi a6,gp,-2008 # 20000248
11ee: 00d66863 bltu a2,a3,11fe
- 11f2: bc818513 addi a0,gp,-1080 # 20000528
+ 11f2: be018513 addi a0,gp,-1056 # 20000600
11f6: ec0ff0ef jal ra,8b6
11fa: 4481 li s1,0
11fc: a07d j 12aa
@@ -2454,13 +2494,13 @@ Disassembly of section .text:
120a: 40ce0733 sub a4,t3,a2
120e: ff470f93 addi t6,a4,-12
1212: 0a8fef63 bltu t6,s0,12d0
- 1216: 83c18f13 addi t5,gp,-1988 # 2000019c
- 121a: 82c18e93 addi t4,gp,-2004 # 2000018c
+ 1216: 83c18f13 addi t5,gp,-1988 # 2000025c
+ 121a: 82c18e93 addi t4,gp,-2004 # 2000024c
121e: 01840313 addi t1,s0,24
1222: 000f2683 lw a3,0(t5)
1226: 000ea383 lw t2,0(t4)
- 122a: 83c18913 addi s2,gp,-1988 # 2000019c
- 122e: 82c18293 addi t0,gp,-2004 # 2000018c
+ 122a: 83c18913 addi s2,gp,-1988 # 2000025c
+ 122e: 82c18293 addi t0,gp,-2004 # 2000024c
1232: 066fef63 bltu t6,t1,12b0
1236: 00c40713 addi a4,s0,12
123a: 9732 add a4,a4,a2
@@ -2487,15 +2527,15 @@ Disassembly of section .text:
127a: ea070713 addi a4,a4,-352 # 1ea0
127e: a09a sh a4,0(s1)
1280: 00979a63 bne a5,s1,1294
- 1284: 8201a683 lw a3,-2016(gp) # 20000180
+ 1284: 8201a683 lw a3,-2016(gp) # 20000240
1288: 4701 li a4,0
128a: 23b2 lhu a2,2(a5)
128c: ee05 bnez a2,12c4
128e: c319 beqz a4,1294
1290: 00f82023 sw a5,0(a6)
- 1294: bc818513 addi a0,gp,-1080 # 20000528
+ 1294: be018513 addi a0,gp,-1056 # 20000600
1298: e1eff0ef jal ra,8b6
- 129c: 8381a783 lw a5,-1992(gp) # 20000198
+ 129c: 8381a783 lw a5,-1992(gp) # 20000258
12a0: 04b1 addi s1,s1,12
12a2: c781 beqz a5,12aa
12a4: 85a2 mv a1,s0
@@ -2537,17 +2577,17 @@ Disassembly of section .text:
000012f8 :
12f8: c545 beqz a0,13a0
12fa: 88eff2ef jal t0,388 <__riscv_save_4>
- 12fe: 8341a783 lw a5,-1996(gp) # 20000194
+ 12fe: 8341a783 lw a5,-1996(gp) # 20000254
1302: 842a mv s0,a0
1304: c391 beqz a5,1308
1306: 9782 jalr a5
- 1308: 8241a783 lw a5,-2012(gp) # 20000184
- 130c: 82418913 addi s2,gp,-2012 # 20000184
+ 1308: 8241a783 lw a5,-2012(gp) # 20000244
+ 130c: 82418913 addi s2,gp,-2012 # 20000244
1310: 08f46663 bltu s0,a5,139c
- 1314: 8201a783 lw a5,-2016(gp) # 20000180
+ 1314: 8201a783 lw a5,-2016(gp) # 20000240
1318: 08f47263 bgeu s0,a5,139c
131c: 55fd li a1,-1
- 131e: bc818513 addi a0,gp,-1080 # 20000528
+ 131e: be018513 addi a0,gp,-1056 # 20000600
1322: d14ff0ef jal ra,836
1326: ff645783 lhu a5,-10(s0)
132a: ff440993 addi s3,s0,-12
@@ -2556,24 +2596,24 @@ Disassembly of section .text:
1334: 6789 lui a5,0x2
1336: ea078793 addi a5,a5,-352 # 1ea0
133a: 02f70163 beq a4,a5,135c
- 133e: 00004537 lui a0,0x4
- 1342: 79c50513 addi a0,a0,1948 # 479c <__fsym_list_mem_name+0xc>
+ 133e: 00005537 lui a0,0x5
+ 1342: b5450513 addi a0,a0,-1196 # 4b54 <__fsym_list_mem_name+0xc>
1346: 31a5 jal fae
1348: ff445683 lhu a3,-12(s0)
134c: ff645603 lhu a2,-10(s0)
- 1350: 00004537 lui a0,0x4
+ 1350: 00005537 lui a0,0x5
1354: 85ce mv a1,s3
- 1356: 7b850513 addi a0,a0,1976 # 47b8 <__fsym_list_mem_name+0x28>
+ 1356: b7050513 addi a0,a0,-1168 # 4b70 <__fsym_list_mem_name+0x28>
135a: 3991 jal fae
135c: 6789 lui a5,0x2
135e: ea078793 addi a5,a5,-352 # 1ea0
1362: fef41a23 sh a5,-12(s0)
- 1366: 82818793 addi a5,gp,-2008 # 20000188
+ 1366: 82818793 addi a5,gp,-2008 # 20000248
136a: 4398 lw a4,0(a5)
136c: fe041b23 sh zero,-10(s0)
1370: 00e9f463 bgeu s3,a4,1378
1374: 0137a023 sw s3,0(a5)
- 1378: 83c18713 addi a4,gp,-1988 # 2000019c
+ 1378: 83c18713 addi a4,gp,-1988 # 2000025c
137c: 431c lw a5,0(a4)
137e: ff842683 lw a3,-8(s0)
1382: 854e mv a0,s3
@@ -2583,7 +2623,7 @@ Disassembly of section .text:
138e: 97b6 add a5,a5,a3
1390: c31c sw a5,0(a4)
1392: 3b01 jal 10a2