diff --git a/Core/Inc/protocan.h b/Core/Inc/protocan.h index c83157a..01aa8fc 100644 --- a/Core/Inc/protocan.h +++ b/Core/Inc/protocan.h @@ -8,270 +8,245 @@ #define ONLINE 1; #define OFFLINE 0; -// TIM defines -#define TIM_PROTOCAN_Prescaler 64000 - -//CAN Speed -#define CAN_SPEED_PRSC_1000KB 2 -#define CAN_SPEED_PRSC_500KB 4 -#define CAN_SPEED_PRSC_250KB 8 -#define CAN_SPEED_PRSC_125KB 16 -#define CAN_SPEED_PRSC_50KB 40 -#define CAN_CURRENT_SPEED CAN_SPEED_PRSC_250KB - -//CAN Filter #define ID_MAIN_DEVICE 0x000 - #define CURRENT_TYPE_DEVICE 0b001 #define CURRENT_ID_DEVICE 0b0010 -#define CAN_IDE_32 0b00000100 // Для 32-х битного масштаба - -#define CAN_DATA_TYPE_FILTER 0x1F000000 -#define CAN_DEVICE_ID_FILTER 0x000000FF -#define CAN_SENSOR_TYPE_FILTER 0x00F80000 -#define CAN_SENSOR_ID_FILTER 0x0007FF00 - -typedef union{ - struct bitfield{ - unsigned bit0:1; - unsigned bit1:1; - unsigned bit2:1; - unsigned bit3:1; - unsigned bit4:1; - unsigned bit5:1; - unsigned bit6:1; - unsigned bit7:1; - }Bitfield; - char AllBit; -}Byte; - -_Bool IsLeapYear(uint8_t year); - -#define COUNT_OF_MODBUS_SECTIONS 1 -#define MODBUS_SECTION_MASK 0 -#define MODBUS_SECTION_FILTER 1 +#define PROTOCAN_RX_BUFFER_SIZE 128 #define SensorToModbusRegister(SensorType, SensorID) SensorType << 11 | SensorID #define HighByteOfWord(WORD) (WORD>>8)&0xFF #define LowByteOfWord(WORD) WORD&0xFF -//Priority level -#define PRIORITY_CRITICAL 0 -#define PRIORITY_STANDARD 1 +/** + * @brief Статус инициализации протокола CAN. + * + * Это перечисление описывает возможные статусы после попытки инициализации. + */ +typedef enum +{ + PROTOCAN_INIT_OK = 0x00U, /**< Инициализация прошла успешно. */ + PROTOCAN_INIT_HCAN_ERROR = 0x01U, /**< Ошибка при инициализации модуля CAN. */ + PROTOCAN_INIT_HRTC_ERROR = 0x02U, /**< Ошибка при инициализации модуля RTC. */ + PROTOCAN_INIT_TIM_ERROR = 0x04U /**< Ошибка при инициализации таймера. */ +} PROTOCAN_INIT_StatusTypeDef; -//Route mode -#define ROUTE_MASTER 1 -#define ROUTE_SLAVE 0 +/** + * @brief Статус выполнения операции протокола CAN. + * + * Это перечисление описывает возможные результаты выполнения функций протокола. + */ +typedef enum +{ + PROTOCAN_OK = 0x00U, /**< Операция прошла успешно. */ + PROTOCAN_ERROR = 0x01U, /**< Обнаружена ошибка во время выполнения. */ + PROTOCAN_BUSY = 0x02U, /**< Канал занят, выполнение невозможно в данный момент. */ + PROTOCAN_TIMEOUT = 0x03U /**< Истек таймаут ожидания. */ +} PROTOCAN_StatusTypeDef; -//Data Types -#define DATA_TYPE_BROADCAST 0b0000 -#define DATA_TYPE_DISCRETE 0b0001 -#define DATA_TYPE_ANALOG 0b0010 -#define DATA_TYPE_GENERAL_ADDRESS_SPACE 0b0011 -#define DATA_TYPE_MODBUS_COIL 0b0100 -#define DATA_TYPE_MODBUS_DISCRETE 0b0101 -#define DATA_TYPE_MODBUS_HOLDING 0b0110 -#define DATA_TYPE_MODBUS_INPUT 0b0111 -#define DATA_TYPE_ERROR 0b1000 -#define DATA_TYPE_PULSE 0b1111 +/** + * @brief Уровень приоритета CAN-сообщения. + * + * Это перечисление определяет важность и приоритет обработки сообщения. + */ +typedef enum { + PROTOCAN_PRIORITY_CRITICAL = 0, /**< Критический приоритет, рекомендуется обработка без задержек. */ + PROTOCAN_PRIORITY_STANDARD = 1 /**< Стандартный приоритет, менее важный. */ +} ProtoCanPriorityType; -//Sensor Types for DATA_TYPE_BROADCAST -#define SENSOR_TYPE_BROADCAST_STATUS 0b000000000000 -#define SENSOR_TYPE_BROADCAST_ONOFF 0b000000000001 -#define SENSOR_TYPE_BROADCAST_RESTARTDEVICE 0b000000000010 -#define SENSOR_TYPE_BROADCAST_RTCSETUP 0b000000000011 +/** + * @brief Маршрут CAN-сообщения. + * + * Это перечисление задает направление маршрута отправки сообщения. + */ +typedef enum { + PROTOCAN_ROUTE_FROM_PM = 0, /**< Сообщение отправляется от управляющего модуля (PM). */ + PROTOCAN_ROUTE_FROM_DEVICE = 1 /**< Сообщение отправляется от устройства (Device). */ +} ProtoCanRouteType; -//Sensor Types for DATA_TYPE_DISCRETE -#define SENSOR_TYPE_DISCRETE_ACCIDENT 0b0000 -#define SENSOR_TYPE_DISCRETE_WARNING 0b0001 -#define SENSOR_TYPE_DISCRETE_CONTROL_SIGNALS 0b0010 -#define SENSOR_TYPE_DISCRETE_FLAGS 0b0011 -#define SENSOR_TYPE_DISCRETE_RESET 0b0100 -#define SENSOR_TYPE_DISCRETE_CHANGE_MODE 0b0101 -#define SENSOR_TYPE_DISCRETE_REQUEST_LIST_OF_PARAMETERS 0b0110 +/** + * @brief Типы сообщений CAN. + * + * Перечисление определяет различные типы сообщений, используемые в протоколе. + */ +typedef enum { + PROTOCAN_MSGTYPE_BROADCAST = 0b0000, /**< Широковещательное сообщение. */ + PROTOCAN_MSGTYPE_DISCRETE = 0b0001, /**< Дискретное цифровое сообщение. */ + PROTOCAN_MSGTYPE_ANALOG = 0b0010, /**< Аналоговое сообщение. */ + PROTOCAN_MSGTYPE_GENERAL_ADDRESS_SPACE = 0b0011, /**< Сообщение общего адресного пространства. */ + PROTOCAN_MSGTYPE_MODBUS_COIL = 0b0100, /**< Сообщение Modbus - Coil. */ + PROTOCAN_MSGTYPE_MODBUS_DISCRETE = 0b0101, /**< Сообщение Modbus - Discrete. */ + PROTOCAN_MSGTYPE_MODBUS_HOLDING = 0b0110, /**< Сообщение Modbus - Holding. */ + PROTOCAN_MSGTYPE_MODBUS_INPUT = 0b0111, /**< Сообщение Modbus - Input. */ + PROTOCAN_MSGTYPE_ERROR = 0b1000, /**< Сообщение об ошибке. */ + PROTOCAN_MSGTYPE_PULSE = 0b1111, /**< Импульсное сообщение. */ +}ProtoCanMsgType; -//Sensor Types for DATA_TYPE_ANALOG -#define SENSOR_TYPE_ANALOG_UNIVERSAL 0b0000 -#define SENSOR_TYPE_ANALOG_USTAVKI 0b0001 -#define SENSOR_TYPE_ANALOG_U 0b0010 -#define SENSOR_TYPE_ANALOG_I 0b0011 -#define SENSOR_TYPE_ANALOG_T 0b0100 +/** + * @brief Типы широковещательных сообщений CAN. + * + * Перечисление задает различные типы широковещательных команд, используемых в протоколе. + */ +typedef enum { + PROTOCAN_BROADCAST_STATUS = 0b000000000000, /**< Статус устройства. */ + PROTOCAN_BROADCAST_ONOFF = 0b000000000001, /**< Включение/выключение устройства. */ + PROTOCAN_BROADCAST_RESTARTDEVICE = 0b000000000010, /**< Перезагрузка устройства. */ + PROTOCAN_BROADCAST_RTCSETUP = 0b000000000011, /**< Настройка RTC (часы реального времени). */ + PROTOCAN_BROADCAST_END = 0b111111111111 /**< Конец диапазона широковещательных сообщений. */ +}ProtoCanBroadcastType; -//Error Code -#define NONEXISTENT_ELEMENT 0x01 +/** + * @brief Структура и представление широковещательного сообщения CAN. + * + * Объединение позволяет обращаться к данным сообщения либо как к отдельным полям, либо как к целому 16-битному значению. + */ +typedef union{ + struct msgBody_Broadcast{ + unsigned Body:4; /**< Поле для дополнительных данных или кода задачи (4 бита). */ + ProtoCanBroadcastType Type:12; /**< Тип широковещательного сообщения (12 бит). */ + } Fields; /**< Структура с разбивкой по полям. */ + unsigned Body; /**< Общее 16-битное представление сообщения. */ +} msgBodyBroadcastType; -#define HighIdFilter(x) x<<24 +/** + * @brief Типы дискретных сообщений CAN. + * + * Перечисление задает различные виды дискретных команд или событий. + */ +typedef enum { + PROTOCAN_DISCRETE_ACCIDENT = 0b0000, /**< Аварийное состояние. */ + PROTOCAN_DISCRETE_WARNING = 0b0001, /**< Предупредительный сигнал. */ + PROTOCAN_DISCRETE_CONTROL_SIGNALS = 0b0010, /**< Управляющие сигналы. */ + PROTOCAN_DISCRETE_FLAGS = 0b0011, /**< Флаги состояния. */ + PROTOCAN_DISCRETE_RESET = 0b0100, /**< Сброс устройства. */ + PROTOCAN_DISCRETE_CHANGE_MODE = 0b0101, /**< Смена режима работы. */ + PROTOCAN_DISCRETE_REQUEST_LIST_OF_PARAMETERS = 0b0110, /**< Запрос списка параметров. */ + PROTOCAN_DISCRETE_END = 0b1111 /**< Конец диапазона дискретных сообщений. */ +}ProtoCanDiscreteType; + +/** + * @brief Структура и представление дискретного сообщения CAN. + * + * Объединение позволяет обращаться к данным сообщения как к отдельным полям или как к целому 16-битному значению. + */ +typedef union{ + struct msgBody_Discrete{ + unsigned Body:12; /**< Поле данных или кода (12 бит). */ + ProtoCanDiscreteType Type:4; /**< Тип дискретного сообщения (4 бита). */ + } Fields; /**< Структура с разбивкой по полям. */ + unsigned Body; /**< Общее 16-битное представление сообщения. */ +} msgBodyDiscreteType; + +/** + * @brief Типы аналоговых сообщений CAN. + * + * Перечисление определяет различные типы аналоговых данных или команд. + */ +typedef enum { + PROTOCAN_ANALOG_UNIVERSAL = 0b0000, /**< Универсальный тип. */ + PROTOCAN_ANALOG_SETTINGS = 0b0001, /**< Настройки. */ + PROTOCAN_ANALOG_U = 0b0010, /**< Напряжение (U). */ + PROTOCAN_ANALOG_I = 0b0011, /**< Ток (I). */ + PROTOCAN_ANALOG_T = 0b0100, /**< Температура (T). */ + PROTOCAN_ANALOG_END = 0b1111 /**< Конец диапазона типов. */ +}ProtoCanAnalogType; + +/** + * @brief Структура и представление аналогового сообщения CAN. + * + * Объединение позволяет обращаться к данным сообщения как к отдельным полям или как к целому 16-битному значению. + */ +typedef union{ + struct msgBody_Analog{ + unsigned SensorID:12; /**< Идентификатор датчика (12 бит). */ + ProtoCanAnalogType Type:4; /**< Тип аналоговых данных (4 бита). */ + } Fields; /**< Структура с разбивкой по полям. */ + unsigned Body; /**< Общее 16-битное представление сообщения. */ +}msgBodyAnalogType; + +/** + * @brief Структура и представление сообщения Modbus CAN. + * + * Объединение позволяет обращаться к данным как к отдельным полям или как к целому 16-битному значению. + */ +typedef union{ + struct msgBody_Modbus{ + unsigned RegCount:4; /**< Количество регистров (4 бита). */ + unsigned StrAdr:12; /**< Адрес строки или регистра (12 бит). */ + } Fields; /**< Поля структуры сообщения Modbus. */ + unsigned Body; /**< Общее 16-битное представление сообщения. */ +} msgBodyModbusType; + +/** + * @brief Структура и представление сообщения об ошибке CAN. + * + * Объединение позволяет обращаться к данным как к отдельным полям или как к целому 16-битному значению. + */ +typedef union{ + struct msgBody_Error{ + unsigned ErrorCode:8; /**< Код ошибки (8 бит). */ + unsigned Info:8; /**< Дополнительная информация (8 бит). */ + } Fields; /**< Поля ошибки. */ + unsigned Body; /**< Общее 16-битное представление сообщения об ошибке. */ +} msgBodyErrorType; struct controlflags{ unsigned IsPulse:1; unsigned IsRtrMode:1; }; -//Device settings +/** + * @brief Поля идентификатора протокола CAN. + * + * Объединение позволяет обращаться к различным полям идентификатора, а также как к 29-битному целому числу. + */ typedef union{ - struct msgBody_Broadcast{ - unsigned Page:4; - unsigned BroadcastType:12; - }Fields; - unsigned Body:16; -}msgBroadcastType; + struct protoCanIdFields{ + unsigned MsgBody:16; /**< Поле сообщения (16 бит). */ + ProtoCanMsgType MsgType:4; /**< Тип сообщения (4 бита). */ + unsigned DeviceID:4; /**< Идентификатор устройства (4 бита). */ + unsigned DeviceType:3; /**< Тип устройства (3 бита). */ + ProtoCanRouteType Route:1; /**< Маршрут (1 бит). */ + ProtoCanPriorityType Priority:1; /**< Приоритет (1 бит). */ + } Fields; /**< Структура с разбивкой по полям. */ + unsigned int BitAll:29; /**< Общее представление 29-битного идентификатора. */ +} ProtoCanId_t; -typedef union{ - struct msgBody_Discrete{ - unsigned Body:12; - unsigned Type:4; - }Fields; - unsigned Body:16; -}msgDiscreteType; +/** + * @brief Структура для общего адресного пространства CAN. + * + * Используется для хранения данных о регистре и его содержимом. + */ +typedef struct{ + struct ProtoCanGeneralAddressSpaceData{ + uint16_t RegStartAdr; /**< Начальный адрес регистров. */ + uint16_t *Data; /**< Указатель на массив данных. */ + unsigned RegCount; /**< Количество регистров. */ + } GeneralAddressSpaceData; +} ProtoCanData_t; -typedef union{ - struct msgBody_Analog{ - unsigned SensorID:12; - unsigned SensorType:4; - }Fields; - unsigned Body:16; -}msgAnalogType; - -typedef union{ - struct msgBody_Modbus{ - unsigned RegCount:4; - unsigned StrAdr:12; - }Fields; - unsigned Body:16; -}msgModbusType; - -typedef union{ - struct msgBody_Error{ - unsigned ErrorCode:8; - unsigned Info:8; - }Fields; - unsigned Body:16; -}msgErrorType; - -typedef union{ - struct extID_Fields{ - unsigned MsgBody:16; - unsigned MsgType:4; - unsigned DeviceID:4; - unsigned DeviceType:3; - unsigned Route:1; - unsigned Priority:1; - }Fields; - unsigned int BitAll:29; -}extID; - -struct device{ - unsigned Status:1; - extID ExtID; - unsigned TimeFromLastPulse; - unsigned LastPulseStep; -}; - -struct data{ - struct T_sens{ - char info[256]; - unsigned SensID; - unsigned AvrgValue; - unsigned LastTenValues[10]; - }TS; - - struct U_sens{ - char info[256]; - unsigned SensID; - unsigned AvrgValue; - unsigned LastTenValues[10]; - }Uu, Uv, Uw; - - struct I_sens{ - char info[256]; - unsigned SensID; - unsigned AvrgValue; - unsigned LastTenValues[10]; - }Iu, Iv, Iw; -}; - -struct received_request{ - extID RequestedExtID; - unsigned RequestedDLC; - uint8_t RxData[8]; - - //DATA_TYPE_DISCRETIC - union discreticflags{ - struct discretictype{ - unsigned Request_Accident:1; - unsigned Request_Warning:1; - unsigned Request_Control_Signals:1; - unsigned Request_Flags:1; - unsigned Request_Reset:1; - unsigned Request_List_of_Parameters:1; - }DiscreticType; - unsigned AllFlags:5; - }DiscreticFlags; - - //DATA_TYPE_BROADCAST - union broadcastflags{ - struct broadcasttype{ - unsigned Request_Status:1; - unsigned Request_OnOff:1; - unsigned Request_RTC_Setup:1; - }BroadcastType; - unsigned AllFlags:3; - }BroadcastFlags; - - //DATA_TYPE_ANALOG - union analogflags{ - struct analogtype{ - unsigned Request_Universal_Sens:1; - unsigned Request_U_Sens:1; - unsigned Request_I_Sens:1; - unsigned Request_T_Sens:1; - }AnalogType; - unsigned AllFlags:4; - }AnalogFlags; - - //DATA_TYPE_MODBUS - union modbusflags{ - struct modbustype{ - unsigned Coil:1; - unsigned Discrete:1; - unsigned Holding:1; - unsigned Input:1; - }ModbusType; - unsigned AllFlags:4; - }ModbusFlags; - - union sensor_To_Modbus{ - struct modbus{ - unsigned Count:8; - unsigned StrAdr:8; - }Modbus; - unsigned Sensor:16; - }SensorToModbus; - - unsigned ModbusFlag:1; -}; - -#define CAN_RX_BUFFER_SIZE 128 +/** + * @brief Структура данных устройства CAN. + * + * Включает статус, идентификатор, таймер последнего импульса и шаг последнего импульса. + */ +typedef struct{ + unsigned Status:1; /**< Статус устройства (флаг). */ + ProtoCanId_t Id; /**< Идентификатор CAN. */ + unsigned TimeFromLastPulse; /**< Время с последнего импульса (мс). */ + unsigned LastPulseStep; /**< Шаг последнего импульса. */ +} ProtoCanDevice_t; struct RXMsg{ struct INFO{ unsigned EXT:1; unsigned RTR:1; }info; - extID eID; + ProtoCanId_t eID; uint16_t DLC; uint8_t Data[8]; }; -typedef enum -{ - PROTOCAN_OK = 0x00U, - PROTOCAN_HCAN_ERROR = 0x01U, - PROTOCAN_HRTC_ERROR = 0x02U, - PROTOCAN_TIM_ERROR = 0x04U, -} PROTOCAN_INIT_StatusTypeDef; - uint16_t AvailableCanRxMsg(void); PROTOCAN_INIT_StatusTypeDef PROTOCAN_INIT(CAN_HandleTypeDef *tmp_hcan, @@ -280,39 +255,41 @@ PROTOCAN_INIT_StatusTypeDef PROTOCAN_INIT(CAN_HandleTypeDef *tmp_hcan, void PROTOCAN_DEINIT(uint8_t stage); void PROTOCAN_FILTERS(void); void PROTOCAN_LOOP(void); + void ProtoCanPulseCallback(TIM_HandleTypeDef *htim); void ProtoCanRxFifo0MsgPendingCallback(CAN_HandleTypeDef *hcan); -HAL_StatusTypeDef PROTOCAN_AnalogProcessing(struct RXMsg _rxMsg); -HAL_StatusTypeDef ProtoCanMsgToAnalogUniversal(struct RXMsg _rxMsg); -HAL_StatusTypeDef ProtoCanMsgToAnalogUSTAVKI(struct RXMsg _rxMsg); -HAL_StatusTypeDef ProtoCanMsgToAnalogUSens(struct RXMsg _rxMsg); -HAL_StatusTypeDef ProtoCanMsgToAnalogISens(struct RXMsg _rxMsg); -HAL_StatusTypeDef ProtoCanMsgToAnalogTSens(struct RXMsg _rxMsg); +PROTOCAN_StatusTypeDef PROTOCAN_BroadcastProcessing(struct RXMsg _rxMsg); +PROTOCAN_StatusTypeDef ProtoCanMsgToBroadcastStatus(struct RXMsg _rxMsg); +PROTOCAN_StatusTypeDef ProtoCanMsgToBroadcastOnOff(struct RXMsg _rxMsg); +PROTOCAN_StatusTypeDef ProtoCanMsgToBroadcastRestart(struct RXMsg _rxMsg); +PROTOCAN_StatusTypeDef ProtoCanMsgToBroadcastRtcSetup(struct RXMsg _rxMsg); -HAL_StatusTypeDef PROTOCAN_BroadcastProcessing(struct RXMsg _rxMsg); -HAL_StatusTypeDef ProtoCanMsgToBroadcastStatus(struct RXMsg _rxMsg); -void ProtoCanMsgToBroadcastOnOff(struct RXMsg _rxMsg); -void ProtoCanMsgToBroadcastRestart(struct RXMsg _rxMsg); -void ProtoCanMsgToBroadcastRtcSetup(struct RXMsg _rxMsg); +PROTOCAN_StatusTypeDef PROTOCAN_DiscreticProcessing(struct RXMsg _rxMsg); +PROTOCAN_StatusTypeDef ProtoCanMsgToDiscreteAccident(struct RXMsg _rxMsg); +PROTOCAN_StatusTypeDef ProtoCanMsgToDiscreteWarning(struct RXMsg _rxMsg); +PROTOCAN_StatusTypeDef ProtoCanMsgToDiscreteControlSignals(struct RXMsg _rxMsg); +PROTOCAN_StatusTypeDef ProtoCanMsgToDiscreteFlags(struct RXMsg _rxMsg); +PROTOCAN_StatusTypeDef ProtoCanMsgToDiscreteReset(struct RXMsg _rxMsg); +PROTOCAN_StatusTypeDef ProtoCanMsgToDiscreteChangeMode(struct RXMsg _rxMsg); +PROTOCAN_StatusTypeDef ProtoCanMsgToDiscreteRequestListOfParameters(struct RXMsg _rxMsg); -HAL_StatusTypeDef PROTOCAN_DiscreticProcessing(struct RXMsg _rxMsg); -void ProtoCanMsgToDiscreteAccident(struct RXMsg _rxMsg); -void ProtoCanMsgToDiscreteWarning(struct RXMsg _rxMsg); -void ProtoCanMsgToDiscreteControlSignals(struct RXMsg _rxMsg); -void ProtoCanMsgToDiscreteFlags(struct RXMsg _rxMsg); -void ProtoCanMsgToDiscreteReset(struct RXMsg _rxMsg); -void ProtoCanMsgToDiscreteChangeMode(struct RXMsg _rxMsg); -void ProtoCanMsgToDiscreteRequestListOfParameters(struct RXMsg _rxMsg); +PROTOCAN_StatusTypeDef PROTOCAN_AnalogProcessing(struct RXMsg _rxMsg); +PROTOCAN_StatusTypeDef ProtoCanMsgToAnalogUniversal(struct RXMsg _rxMsg); +PROTOCAN_StatusTypeDef ProtoCanMsgToAnalogSettings(struct RXMsg _rxMsg); +PROTOCAN_StatusTypeDef ProtoCanMsgToAnalogUSens(struct RXMsg _rxMsg); +PROTOCAN_StatusTypeDef ProtoCanMsgToAnalogISens(struct RXMsg _rxMsg); +PROTOCAN_StatusTypeDef ProtoCanMsgToAnalogTSens(struct RXMsg _rxMsg); -void PROTOCAN_GeneralAddressSpace_Answer(struct RXMsg _rxMsg); -HAL_StatusTypeDef CanRequestError(struct RXMsg _rxMsg); +PROTOCAN_StatusTypeDef ProtoCanMsgToGeneralAddressSpace(struct RXMsg _rxMsg); -HAL_StatusTypeDef PROTOCAN_ModbusProcessing(struct RXMsg _rxMsg); -HAL_StatusTypeDef ProtoCanMsgToModbusCoil(struct RXMsg _rxMsg); -HAL_StatusTypeDef ProtoCanMsgToModbusDiscrete(struct RXMsg _rxMsg); -HAL_StatusTypeDef ProtoCanMsgToModbusHolding(struct RXMsg _rxMsg); -HAL_StatusTypeDef ProtoCanMsgToModbusInput(struct RXMsg _rxMsg); +PROTOCAN_StatusTypeDef CanRequestError(struct RXMsg _rxMsg); + +PROTOCAN_StatusTypeDef PROTOCAN_ModbusProcessing(struct RXMsg _rxMsg); +PROTOCAN_StatusTypeDef ProtoCanMsgToModbusCoil(struct RXMsg _rxMsg); +PROTOCAN_StatusTypeDef ProtoCanMsgToModbusDiscrete(struct RXMsg _rxMsg); +PROTOCAN_StatusTypeDef ProtoCanMsgToModbusHolding(struct RXMsg _rxMsg); +PROTOCAN_StatusTypeDef ProtoCanMsgToModbusInput(struct RXMsg _rxMsg); void PROTOCAN_RTC_SYNC(uint8_t *data); diff --git a/Core/Src/can.c b/Core/Src/can.c index fbae66f..e640052 100644 --- a/Core/Src/can.c +++ b/Core/Src/can.c @@ -21,7 +21,13 @@ #include "can.h" /* USER CODE BEGIN 0 */ - +//CAN Speed +#define CAN_SPEED_PRSC_1000KB 2 +#define CAN_SPEED_PRSC_500KB 4 +#define CAN_SPEED_PRSC_250KB 8 +#define CAN_SPEED_PRSC_125KB 16 +#define CAN_SPEED_PRSC_50KB 40 +#define CAN_CURRENT_SPEED CAN_SPEED_PRSC_250KB /* USER CODE END 0 */ CAN_HandleTypeDef hcan; diff --git a/Core/Src/main.c b/Core/Src/main.c index fef4ea1..6c96e2d 100644 --- a/Core/Src/main.c +++ b/Core/Src/main.c @@ -92,9 +92,9 @@ int main(void) MX_RTC_Init(); MX_TIM4_Init(); /* USER CODE BEGIN 2 */ - HAL_CAN_Start(&hcan); if(PROTOCAN_INIT(&hcan, &hrtc, &htim4) == PROTOCAN_OK) { + HAL_CAN_Start(&hcan); HAL_CAN_ActivateNotification(&hcan, CAN_IT_RX_FIFO0_MSG_PENDING | CAN_IT_ERROR | CAN_IT_BUSOFF | CAN_IT_LAST_ERROR_CODE); PROTOCAN_LOOP(); } diff --git a/Core/Src/protocan.c b/Core/Src/protocan.c index f79b826..50554ce 100644 --- a/Core/Src/protocan.c +++ b/Core/Src/protocan.c @@ -1,7 +1,7 @@ #include "protocan.h" -struct device CurrentDevice; -struct device Device_on_the_Network[8][16]; +ProtoCanDevice_t CurrentDevice; +ProtoCanDevice_t Device_on_the_Network[8][16]; struct controlflags ControlFlags; CAN_HandleTypeDef *_HCAN = 0; @@ -10,7 +10,7 @@ TIM_HandleTypeDef *_HTIM = 0; uint8_t CurrentStep = 1; uint8_t LastStep = 0; -struct RXMsg rxMsg[CAN_RX_BUFFER_SIZE]; +struct RXMsg rxMsg[PROTOCAN_RX_BUFFER_SIZE]; /** * @brief Проверяет, является ли год високосным. @@ -33,7 +33,7 @@ _Bool IsLeapYear(uint8_t year) */ uint16_t AvailableCanRxMsg(void) { - return ((uint16_t)(CAN_RX_BUFFER_SIZE + (LastStep - CurrentStep + 1)))%CAN_RX_BUFFER_SIZE; + return ((uint16_t)(PROTOCAN_RX_BUFFER_SIZE + (LastStep - CurrentStep + 1)))%PROTOCAN_RX_BUFFER_SIZE; } void PROTOCAN_DEINIT(uint8_t stage) @@ -66,19 +66,19 @@ PROTOCAN_INIT_StatusTypeDef PROTOCAN_INIT(CAN_HandleTypeDef *tmp_hcan, RTC_Handl HAL_StatusTypeDef CAN_RC_RESULT = HAL_CAN_RegisterCallback(_HCAN, HAL_CAN_RX_FIFO0_MSG_PENDING_CB_ID, ProtoCanRxFifo0MsgPendingCallback); if(CAN_RC_RESULT != HAL_OK) { PROTOCAN_DEINIT(initStage); - return PROTOCAN_HRTC_ERROR; + return PROTOCAN_INIT_HRTC_ERROR; } #endif } else { PROTOCAN_DEINIT(initStage); - return PROTOCAN_HCAN_ERROR; + return PROTOCAN_INIT_HCAN_ERROR; } initStage++; if(tmp_hrtc) { _HRTC = tmp_hrtc; } else { PROTOCAN_DEINIT(initStage); - return PROTOCAN_HRTC_ERROR; + return PROTOCAN_INIT_HRTC_ERROR; } initStage++; if(tmp_tim) { @@ -87,17 +87,17 @@ PROTOCAN_INIT_StatusTypeDef PROTOCAN_INIT(CAN_HandleTypeDef *tmp_hcan, RTC_Handl HAL_StatusTypeDef TIM_RC_RESULT = HAL_TIM_RegisterCallback(_HTIM, HAL_TIM_PERIOD_ELAPSED_CB_ID, ProtoCanPulseCallback); if(TIM_RC_RESULT != HAL_OK) { PROTOCAN_DEINIT(initStage); - return PROTOCAN_HRTC_ERROR; + return PROTOCAN_INIT_HRTC_ERROR; } #endif } else { PROTOCAN_DEINIT(initStage); - return PROTOCAN_TIM_ERROR; + return PROTOCAN_INIT_TIM_ERROR; } initStage++; PROTOCAN_FILTERS(); ControlFlags.IsPulse = 1; - return PROTOCAN_OK; + return PROTOCAN_INIT_OK; } /** @@ -111,264 +111,71 @@ PROTOCAN_INIT_StatusTypeDef PROTOCAN_INIT(CAN_HandleTypeDef *tmp_hcan, RTC_Handl */ void PROTOCAN_LOOP(void) { - //HAL_TIM_Base_Start_IT(&htim4); while(1) { if(AvailableCanRxMsg()) { - if(rxMsg[CurrentStep].eID.Fields.MsgType == DATA_TYPE_ANALOG) + if(rxMsg[CurrentStep].eID.Fields.MsgType == PROTOCAN_MSGTYPE_ANALOG) { PROTOCAN_AnalogProcessing(rxMsg[CurrentStep]); } - else if(rxMsg[CurrentStep].eID.Fields.MsgType == DATA_TYPE_BROADCAST) + else if(rxMsg[CurrentStep].eID.Fields.MsgType == PROTOCAN_MSGTYPE_BROADCAST) { PROTOCAN_BroadcastProcessing(rxMsg[CurrentStep]); } - else if(rxMsg[CurrentStep].eID.Fields.MsgType == DATA_TYPE_DISCRETE) + else if(rxMsg[CurrentStep].eID.Fields.MsgType == PROTOCAN_MSGTYPE_DISCRETE) { PROTOCAN_DiscreticProcessing(rxMsg[CurrentStep]); } - else if(rxMsg[CurrentStep].eID.Fields.MsgType == DATA_TYPE_GENERAL_ADDRESS_SPACE) + else if(rxMsg[CurrentStep].eID.Fields.MsgType == PROTOCAN_MSGTYPE_GENERAL_ADDRESS_SPACE) { - PROTOCAN_GeneralAddressSpace_Answer(rxMsg[CurrentStep]); + ProtoCanMsgToGeneralAddressSpace(rxMsg[CurrentStep]); } - else if(rxMsg[CurrentStep].eID.Fields.MsgType == DATA_TYPE_MODBUS_COIL || - rxMsg[CurrentStep].eID.Fields.MsgType == DATA_TYPE_MODBUS_DISCRETE || - rxMsg[CurrentStep].eID.Fields.MsgType == DATA_TYPE_MODBUS_HOLDING || - rxMsg[CurrentStep].eID.Fields.MsgType == DATA_TYPE_MODBUS_INPUT) + else if(rxMsg[CurrentStep].eID.Fields.MsgType == PROTOCAN_MSGTYPE_MODBUS_COIL || + rxMsg[CurrentStep].eID.Fields.MsgType == PROTOCAN_MSGTYPE_MODBUS_DISCRETE || + rxMsg[CurrentStep].eID.Fields.MsgType == PROTOCAN_MSGTYPE_MODBUS_HOLDING || + rxMsg[CurrentStep].eID.Fields.MsgType == PROTOCAN_MSGTYPE_MODBUS_INPUT) { PROTOCAN_ModbusProcessing(rxMsg[CurrentStep]); } - else if(rxMsg[CurrentStep].eID.Fields.MsgType == DATA_TYPE_ERROR) + else if(rxMsg[CurrentStep].eID.Fields.MsgType == PROTOCAN_MSGTYPE_ERROR) { CanRequestError(rxMsg[CurrentStep]); } - CurrentStep = (uint16_t)(CurrentStep + 1) % CAN_RX_BUFFER_SIZE; + CurrentStep = (uint16_t)(CurrentStep + 1) % PROTOCAN_RX_BUFFER_SIZE; } } } -/** -* @brief Функция обработки аналоговых запросов. -* @param struct RXMsg _rxMsg - структура для полученного сообщения. -* @details Функция, сортирующая запросы по типам и вызывающая соответствующие функции. Типы запросов: Универсальный, Уставки, Напряжение, Ток, Температура. -* @return HAL_StatusTypeDef Статус выполнения команды CAN (успех или ошибка). -*/ -HAL_StatusTypeDef PROTOCAN_AnalogProcessing(struct RXMsg _rxMsg) -{ - msgAnalogType msg; - msg.Body = _rxMsg.eID.Fields.MsgBody; - switch (msg.Fields.SensorType) - { - case SENSOR_TYPE_ANALOG_UNIVERSAL: - { - return ProtoCanMsgToAnalogUniversal(_rxMsg); - break; - } - case SENSOR_TYPE_ANALOG_USTAVKI: - { - return ProtoCanMsgToAnalogUSTAVKI(_rxMsg); - break; - } - case SENSOR_TYPE_ANALOG_U: - { - return ProtoCanMsgToAnalogUSens(_rxMsg); - break; - } - case SENSOR_TYPE_ANALOG_I: - { - return ProtoCanMsgToAnalogISens(_rxMsg); - break; - } - case SENSOR_TYPE_ANALOG_T: - { - return ProtoCanMsgToAnalogTSens(_rxMsg); - break; - } - default: - //RESERVE SENSOR TYPE - return HAL_ERROR; - break; - } - return HAL_ERROR; -} - -/** -* @brief Функция ответа на запрос данных со всех датчиков. -* Создает сообщение с определенными данными и отправляет его через CAN-шину. -* @param _rxMsg Структура входящего сообщения, используется для формирования ID. -* @return HAL_StatusTypeDef Статус выполнения операции HAL, например HAL_OK. -*/ -__weak HAL_StatusTypeDef ProtoCanMsgToAnalogUniversal(struct RXMsg _rxMsg) -{ - CAN_TxHeaderTypeDef TxHeader; - uint32_t TxMailBox = 0; - uint8_t data[8]; - TxHeader.IDE = CAN_ID_EXT; - TxHeader.TransmitGlobalTime = DISABLE; - TxHeader.RTR = CAN_RTR_DATA; - extID tmp_eID; - tmp_eID.BitAll = _rxMsg.eID.BitAll; - tmp_eID.Fields.Route = ROUTE_SLAVE; - TxHeader.ExtId = tmp_eID.BitAll; - TxHeader.DLC = 6; - data[0] = 'U'; - data[1] = 'N'; - data[2] = 'I'; - data[3] = 'V'; - data[4] = 'E'; - data[5] = 'R'; - return HAL_CAN_AddTxMessage(_HCAN, &TxHeader, data, &TxMailBox); -} - -/** -* @brief Функция ответа на запрос уставок по CAN. -* Создает сообщение с определенными данными и отправляет его через CAN-шину. -* @param _rxMsg Структура входящего сообщения, используется только для формирования ID. -* @return HAL_StatusTypeDef Статус выполнения операции HAL, например HAL_OK. -*/ -__weak HAL_StatusTypeDef ProtoCanMsgToAnalogUSTAVKI(struct RXMsg _rxMsg) -{ - CAN_TxHeaderTypeDef TxHeader; - uint32_t TxMailBox = 0; - uint8_t data[8]; - TxHeader.IDE = CAN_ID_EXT; - TxHeader.TransmitGlobalTime = DISABLE; - TxHeader.RTR = CAN_RTR_DATA; - extID tmp_eID; - tmp_eID.BitAll = _rxMsg.eID.BitAll; - tmp_eID.Fields.Route = ROUTE_SLAVE; - TxHeader.ExtId = tmp_eID.BitAll; - TxHeader.DLC = 7; - data[0] = 'U'; - data[1] = 'S'; - data[2] = 'T'; - data[3] = 'A'; - data[4] = 'V'; - data[5] = 'K'; - data[6] = 'I'; - return HAL_CAN_AddTxMessage(_HCAN, &TxHeader, data, &TxMailBox); -} - -/** -* @brief Функция ответа на запрос данных с датчиков напряжения. -* Создает сообщение с указанными параметрами и отправляет его через CAN-шину. -* @param _rxMsg Структура входящего сообщения, используемая для формирования идентификатора и данных. -* @return HAL_StatusTypeDef Статус выполнения операции HAL, например HAL_OK при успешной отправке. -*/ -__weak HAL_StatusTypeDef ProtoCanMsgToAnalogUSens(struct RXMsg _rxMsg) -{ - CAN_TxHeaderTypeDef TxHeader; - uint32_t TxMailBox = 0; - uint8_t data[8]; - TxHeader.IDE = CAN_ID_EXT; - TxHeader.TransmitGlobalTime = DISABLE; - TxHeader.RTR = CAN_RTR_DATA; - extID tmp_eID; - tmp_eID.BitAll = _rxMsg.eID.BitAll; - tmp_eID.Fields.Route = ROUTE_SLAVE; - TxHeader.ExtId = tmp_eID.BitAll; - TxHeader.DLC = 6; - msgAnalogType msg; - msg.Body = _rxMsg.eID.Fields.MsgBody; - data[0] = 'U'; - data[1] = 'S'; - data[2] = 47 + msg.Fields.SensorID / 1000; - data[3] = 47 + msg.Fields.SensorID / 100 % 10; - data[4] = 47 + msg.Fields.SensorID / 10 % 10; - data[5] = 47 + msg.Fields.SensorID % 10; - return HAL_CAN_AddTxMessage(_HCAN, &TxHeader, data, &TxMailBox); -} - -/** -* @brief Функция ответа на запрос данных с датчиков тока. -* Создает сообщение с определенными параметрами и отправляет его через CAN-шину. -* @param _rxMsg Структура входящего сообщения, используется для формирования идентификатора и данных. -* @return HAL_StatusTypeDef Статус операции HAL, например HAL_OK при успешной отправке. -*/ -__weak HAL_StatusTypeDef ProtoCanMsgToAnalogISens(struct RXMsg _rxMsg) -{ - CAN_TxHeaderTypeDef TxHeader; - uint32_t TxMailBox = 0; - uint8_t data[8]; - TxHeader.IDE = CAN_ID_EXT; - TxHeader.TransmitGlobalTime = DISABLE; - TxHeader.RTR = CAN_RTR_DATA; - extID tmp_eID; - tmp_eID.BitAll = _rxMsg.eID.BitAll; - tmp_eID.Fields.Route = ROUTE_SLAVE; - TxHeader.ExtId = tmp_eID.BitAll; - TxHeader.DLC = 6; - msgAnalogType msg; - msg.Body = _rxMsg.eID.Fields.MsgBody; - data[0] = 'I'; - data[1] = 'S'; - data[2] = 47 + msg.Fields.SensorID / 1000; - data[3] = 47 + msg.Fields.SensorID / 100 % 10; - data[4] = 47 + msg.Fields.SensorID / 10 % 10; - data[5] = 47 + msg.Fields.SensorID % 10; - return HAL_CAN_AddTxMessage(_HCAN, &TxHeader, data, &TxMailBox); -} - -/** -* @brief Функция ответа на запрос данных с датчиков температуры. -* Создает сообщение с определенным заголовком, формирует данные по ID сенсора и отправляет его через CAN. -* @param _rxMsg Структура полученного сообщения, которая используется для формирования идентификатора. -* @return HAL_StatusTypeDef Статус выполнения функции HAL, например HAL_OK при успехе. -*/ -__weak HAL_StatusTypeDef ProtoCanMsgToAnalogTSens(struct RXMsg _rxMsg) -{ - CAN_TxHeaderTypeDef TxHeader; - uint32_t TxMailBox = 0; - uint8_t data[8]; - TxHeader.IDE = CAN_ID_EXT; - TxHeader.TransmitGlobalTime = DISABLE; - TxHeader.RTR = CAN_RTR_DATA; - extID tmp_eID; - tmp_eID.BitAll = _rxMsg.eID.BitAll; - tmp_eID.Fields.Route = ROUTE_SLAVE; - TxHeader.ExtId = tmp_eID.BitAll; - TxHeader.DLC = 6; - msgAnalogType msg; - msg.Body = _rxMsg.eID.Fields.MsgBody; - data[0] = 'T'; - data[1] = 'S'; - data[2] = 47 + msg.Fields.SensorID / 1000; - data[3] = 47 + msg.Fields.SensorID / 100 % 10; - data[4] = 47 + msg.Fields.SensorID / 10 % 10; - data[5] = 47 + msg.Fields.SensorID % 10; - return HAL_CAN_AddTxMessage(_HCAN, &TxHeader, data, &TxMailBox); -} - /** * @brief Функция обработки широковещательных запросов. * @param struct RXMsg _rxMsg - структура для полученного сообщения. * @details Функция, выполняющая команды, переданные в широковещательном формате с головного (master) устройства. Типы команд: Запрос статуса, запрос на включение или выключение, рестарт устройств, установка времени. * @return HAL_StatusTypeDef Статус выполнения команды CAN (успех или ошибка). */ -HAL_StatusTypeDef PROTOCAN_BroadcastProcessing(struct RXMsg _rxMsg) +PROTOCAN_StatusTypeDef PROTOCAN_BroadcastProcessing(struct RXMsg _rxMsg) { - msgBroadcastType msg; + msgBodyBroadcastType msg; msg.Body = _rxMsg.eID.Fields.MsgBody; - switch(msg.Fields.BroadcastType) + switch(msg.Fields.Type) { - case SENSOR_TYPE_BROADCAST_STATUS: + case PROTOCAN_BROADCAST_STATUS: { //Обработка запроса статуса устройства return ProtoCanMsgToBroadcastStatus(_rxMsg); } - case SENSOR_TYPE_BROADCAST_ONOFF: + case PROTOCAN_BROADCAST_ONOFF: { //Обработка запроса на вкл/выкл ProtoCanMsgToBroadcastOnOff(_rxMsg); break; } - case SENSOR_TYPE_BROADCAST_RESTARTDEVICE: + case PROTOCAN_BROADCAST_RESTARTDEVICE: { ProtoCanMsgToBroadcastRestart(_rxMsg); break; } - case SENSOR_TYPE_BROADCAST_RTCSETUP: + case PROTOCAN_BROADCAST_RTCSETUP: { //Обработка запроса на синхронизацию времени //С головным устройством @@ -377,10 +184,10 @@ HAL_StatusTypeDef PROTOCAN_BroadcastProcessing(struct RXMsg _rxMsg) } default: //RESERVE SENSOR TYPE. - return HAL_ERROR; + return PROTOCAN_ERROR; break; } - return HAL_OK; + return PROTOCAN_OK; } /** @@ -389,7 +196,7 @@ HAL_StatusTypeDef PROTOCAN_BroadcastProcessing(struct RXMsg _rxMsg) * @param _rxMsg Структура полученного по CAN запроса. * @return HAL_StatusTypeDef Статус операции HAL, например HAL_OK при успехе. */ -__weak HAL_StatusTypeDef ProtoCanMsgToBroadcastStatus(struct RXMsg _rxMsg) +__weak PROTOCAN_StatusTypeDef ProtoCanMsgToBroadcastStatus(struct RXMsg _rxMsg) { CAN_TxHeaderTypeDef TxHeader; uint32_t TxMailBox = 0; @@ -398,9 +205,9 @@ __weak HAL_StatusTypeDef ProtoCanMsgToBroadcastStatus(struct RXMsg _rxMsg) TxHeader.DLC = 7; TxHeader.TransmitGlobalTime = DISABLE; TxHeader.RTR = CAN_RTR_DATA; - extID tmp_eID; + ProtoCanId_t tmp_eID; tmp_eID.BitAll = _rxMsg.eID.BitAll; - tmp_eID.Fields.Route = ROUTE_SLAVE; + tmp_eID.Fields.Route = PROTOCAN_ROUTE_FROM_DEVICE; tmp_eID.Fields.DeviceType = CURRENT_TYPE_DEVICE; tmp_eID.Fields.DeviceID = CURRENT_ID_DEVICE; TxHeader.ExtId = tmp_eID.BitAll; @@ -418,7 +225,7 @@ __weak HAL_StatusTypeDef ProtoCanMsgToBroadcastStatus(struct RXMsg _rxMsg) data[5] = DateToUpdate.Date; data[6] = DateToUpdate.WeekDay; - return HAL_CAN_AddTxMessage(_HCAN, &TxHeader, data, &TxMailBox); + return (PROTOCAN_StatusTypeDef)HAL_CAN_AddTxMessage(_HCAN, &TxHeader, data, &TxMailBox); } /** @@ -427,9 +234,10 @@ __weak HAL_StatusTypeDef ProtoCanMsgToBroadcastStatus(struct RXMsg _rxMsg) * В данном случае — просто инвертирует его логическое значение. * @param _rxMsg Структура полученного CAN-сообщения (Пока не используется в функции). */ -__weak void ProtoCanMsgToBroadcastOnOff(struct RXMsg _rxMsg) +__weak PROTOCAN_StatusTypeDef ProtoCanMsgToBroadcastOnOff(struct RXMsg _rxMsg) { ControlFlags.IsPulse = !ControlFlags.IsPulse; + return PROTOCAN_OK; } /** @@ -438,15 +246,15 @@ __weak void ProtoCanMsgToBroadcastOnOff(struct RXMsg _rxMsg) * вызывает системный перезапуск. * @param _rxMsg Структура полученного CAN-сообщения с командой перезапуска. */ -__weak void ProtoCanMsgToBroadcastRestart(struct RXMsg _rxMsg) +__weak PROTOCAN_StatusTypeDef ProtoCanMsgToBroadcastRestart(struct RXMsg _rxMsg) { if(_rxMsg.DLC == 0) { - return; + return PROTOCAN_ERROR; } - msgBroadcastType msg; + msgBodyBroadcastType msg; msg.Body = _rxMsg.eID.Fields.MsgBody; - if(msg.Fields.Page == (CURRENT_ID_DEVICE / (_rxMsg.DLC*8))) + if(msg.Fields.Body == (CURRENT_ID_DEVICE / (_rxMsg.DLC*8))) { uint64_t page = 0; for(int i = 0; i < _rxMsg.DLC; i++) @@ -458,7 +266,7 @@ __weak void ProtoCanMsgToBroadcastRestart(struct RXMsg _rxMsg) NVIC_SystemReset(); } } - return; + return PROTOCAN_OK; } /** @@ -467,10 +275,10 @@ __weak void ProtoCanMsgToBroadcastRestart(struct RXMsg _rxMsg) * вызывает функцию синхронизации RTC. * @param _rxMsg Структура полученного CAN-сообщения с данными для установки времени и даты. */ -__weak void ProtoCanMsgToBroadcastRtcSetup(struct RXMsg _rxMsg) +__weak PROTOCAN_StatusTypeDef ProtoCanMsgToBroadcastRtcSetup(struct RXMsg _rxMsg) { if(_rxMsg.DLC > 7) { - //ERROR + return PROTOCAN_ERROR; } else { int DaysCount_Normal[2][12] = {{31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}, {31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}}; @@ -481,11 +289,13 @@ __weak void ProtoCanMsgToBroadcastRtcSetup(struct RXMsg _rxMsg) _rxMsg.Data[4] > 12 || _rxMsg.Data[5] > DaysCount_Normal[IsLeapYear(_rxMsg.Data[3])][_rxMsg.Data[4]] || _rxMsg.Data[6] > 6) { + return PROTOCAN_ERROR; //ERROR } else { PROTOCAN_RTC_SYNC(_rxMsg.Data); } } + return PROTOCAN_OK; } /** @@ -495,52 +305,52 @@ __weak void ProtoCanMsgToBroadcastRtcSetup(struct RXMsg _rxMsg) * @note Запрос на устройство. Головное (master) устройство запрашивает некоторое колличество параметров. В Data - 64 битовых адресса параметров, тип которых задаётся в Sensor ID. Имеется возможность запрашивать непоследовательные параметры. * @return HAL_StatusTypeDef Статус выполнения команды CAN (успех или ошибка). */ -HAL_StatusTypeDef PROTOCAN_DiscreticProcessing(struct RXMsg _rxMsg) +PROTOCAN_StatusTypeDef PROTOCAN_DiscreticProcessing(struct RXMsg _rxMsg) { - msgDiscreteType msg; + msgBodyDiscreteType msg; msg.Body = _rxMsg.eID.Fields.MsgBody; switch(msg.Fields.Type){ - case SENSOR_TYPE_DISCRETE_ACCIDENT: + case PROTOCAN_DISCRETE_ACCIDENT: { ProtoCanMsgToDiscreteAccident(_rxMsg); break; } - case SENSOR_TYPE_DISCRETE_WARNING: + case PROTOCAN_DISCRETE_WARNING: { ProtoCanMsgToDiscreteWarning(_rxMsg); break; } - case SENSOR_TYPE_DISCRETE_CONTROL_SIGNALS: + case PROTOCAN_DISCRETE_CONTROL_SIGNALS: { ProtoCanMsgToDiscreteControlSignals(_rxMsg); break; } - case SENSOR_TYPE_DISCRETE_FLAGS: + case PROTOCAN_DISCRETE_FLAGS: { ProtoCanMsgToDiscreteFlags(_rxMsg); break; } - case SENSOR_TYPE_DISCRETE_RESET: + case PROTOCAN_DISCRETE_RESET: { ProtoCanMsgToDiscreteReset(_rxMsg); break; } - case SENSOR_TYPE_DISCRETE_CHANGE_MODE: + case PROTOCAN_DISCRETE_CHANGE_MODE: { ProtoCanMsgToDiscreteChangeMode(_rxMsg); break; } - case SENSOR_TYPE_DISCRETE_REQUEST_LIST_OF_PARAMETERS: + case PROTOCAN_DISCRETE_REQUEST_LIST_OF_PARAMETERS: { ProtoCanMsgToDiscreteRequestListOfParameters(_rxMsg); break; } default: //RESERVE SENSOR TYPE. - return HAL_ERROR; + return PROTOCAN_ERROR; break; } - return HAL_OK; + return PROTOCAN_OK; } /** @@ -549,9 +359,9 @@ HAL_StatusTypeDef PROTOCAN_DiscreticProcessing(struct RXMsg _rxMsg) * Можно реализовать отправку или обработку аварийных данных. * @param _rxMsg Входящее сообщение с данными запроса. */ -__weak void ProtoCanMsgToDiscreteAccident(struct RXMsg _rxMsg) +__weak PROTOCAN_StatusTypeDef ProtoCanMsgToDiscreteAccident(struct RXMsg _rxMsg) { - return; + return PROTOCAN_OK; } /** @@ -560,9 +370,9 @@ __weak void ProtoCanMsgToDiscreteAccident(struct RXMsg _rxMsg) * Можно реализовать обработку или ответ на предупреждения. * @param _rxMsg Входящее сообщение. */ -__weak void ProtoCanMsgToDiscreteWarning(struct RXMsg _rxMsg) +__weak PROTOCAN_StatusTypeDef ProtoCanMsgToDiscreteWarning(struct RXMsg _rxMsg) { - return; + return PROTOCAN_OK; } /** @@ -571,9 +381,9 @@ __weak void ProtoCanMsgToDiscreteWarning(struct RXMsg _rxMsg) * Можно реализовать управление сигналами. * @param _rxMsg Входящее сообщение. */ -__weak void ProtoCanMsgToDiscreteControlSignals(struct RXMsg _rxMsg) +__weak PROTOCAN_StatusTypeDef ProtoCanMsgToDiscreteControlSignals(struct RXMsg _rxMsg) { - return; + return PROTOCAN_OK; } /** @@ -582,9 +392,9 @@ __weak void ProtoCanMsgToDiscreteControlSignals(struct RXMsg _rxMsg) * Можно реализовать работу с флагами. * @param _rxMsg Входящее сообщение. */ -__weak void ProtoCanMsgToDiscreteFlags(struct RXMsg _rxMsg) +__weak PROTOCAN_StatusTypeDef ProtoCanMsgToDiscreteFlags(struct RXMsg _rxMsg) { - return; + return PROTOCAN_OK; } /** @@ -592,9 +402,10 @@ __weak void ProtoCanMsgToDiscreteFlags(struct RXMsg _rxMsg) * Выполняет программный рестарт системы. * @param _rxMsg Входящее сообщение. */ -__weak void ProtoCanMsgToDiscreteReset(struct RXMsg _rxMsg) +__weak PROTOCAN_StatusTypeDef ProtoCanMsgToDiscreteReset(struct RXMsg _rxMsg) { NVIC_SystemReset(); + return PROTOCAN_ERROR; } /** @@ -603,9 +414,9 @@ __weak void ProtoCanMsgToDiscreteReset(struct RXMsg _rxMsg) * Можно реализовать изменение режима работы. * @param _rxMsg Входящее сообщение. */ -__weak void ProtoCanMsgToDiscreteChangeMode(struct RXMsg _rxMsg) +__weak PROTOCAN_StatusTypeDef ProtoCanMsgToDiscreteChangeMode(struct RXMsg _rxMsg) { - return; + return PROTOCAN_OK; } /** @@ -614,17 +425,63 @@ __weak void ProtoCanMsgToDiscreteChangeMode(struct RXMsg _rxMsg) * Можно реализовать отправку списка параметров. * @param _rxMsg Входящее сообщение. */ -__weak void ProtoCanMsgToDiscreteRequestListOfParameters(struct RXMsg _rxMsg) +__weak PROTOCAN_StatusTypeDef ProtoCanMsgToDiscreteRequestListOfParameters(struct RXMsg _rxMsg) { - return; + return PROTOCAN_OK; } /** -* @brief Обработка и ответ на запрос общего адресного пространства. -* Формирует и передает сообщение с данными о статусе "GAS-XXXX", где XXXX — значение из сообщения _rxMsg. -* @param _rxMsg Структура входящего сообщения, содержит идентификатор и тело сообщения. +* @brief Функция обработки аналоговых запросов. +* @param struct RXMsg _rxMsg - структура для полученного сообщения. +* @details Функция, сортирующая запросы по типам и вызывающая соответствующие функции. Типы запросов: Универсальный, Уставки, Напряжение, Ток, Температура. +* @return HAL_StatusTypeDef Статус выполнения команды CAN (успех или ошибка). */ -void PROTOCAN_GeneralAddressSpace_Answer(struct RXMsg _rxMsg) +PROTOCAN_StatusTypeDef PROTOCAN_AnalogProcessing(struct RXMsg _rxMsg) +{ + msgBodyAnalogType msg; + msg.Body = _rxMsg.eID.Fields.MsgBody; + switch (msg.Fields.Type) + { + case PROTOCAN_ANALOG_UNIVERSAL: + { + return ProtoCanMsgToAnalogUniversal(_rxMsg); + break; + } + case PROTOCAN_ANALOG_SETTINGS: + { + return ProtoCanMsgToAnalogSettings(_rxMsg); + break; + } + case PROTOCAN_ANALOG_U: + { + return ProtoCanMsgToAnalogUSens(_rxMsg); + break; + } + case PROTOCAN_ANALOG_I: + { + return ProtoCanMsgToAnalogISens(_rxMsg); + break; + } + case PROTOCAN_ANALOG_T: + { + return ProtoCanMsgToAnalogTSens(_rxMsg); + break; + } + default: + //RESERVE SENSOR TYPE + return PROTOCAN_ERROR; + break; + } + return PROTOCAN_ERROR; +} + +/** +* @brief Функция ответа на запрос данных со всех датчиков. +* Создает сообщение с определенными данными и отправляет его через CAN-шину. +* @param _rxMsg Структура входящего сообщения, используется для формирования ID. +* @return HAL_StatusTypeDef Статус выполнения операции HAL, например HAL_OK. +*/ +__weak PROTOCAN_StatusTypeDef ProtoCanMsgToAnalogUniversal(struct RXMsg _rxMsg) { CAN_TxHeaderTypeDef TxHeader; uint32_t TxMailBox = 0; @@ -632,9 +489,155 @@ void PROTOCAN_GeneralAddressSpace_Answer(struct RXMsg _rxMsg) TxHeader.IDE = CAN_ID_EXT; TxHeader.TransmitGlobalTime = DISABLE; TxHeader.RTR = CAN_RTR_DATA; - extID tmp_eID; + ProtoCanId_t tmp_eID; tmp_eID.BitAll = _rxMsg.eID.BitAll; - tmp_eID.Fields.Route = ROUTE_SLAVE; + tmp_eID.Fields.Route = PROTOCAN_ROUTE_FROM_DEVICE; + TxHeader.ExtId = tmp_eID.BitAll; + TxHeader.DLC = 6; + data[0] = 'U'; + data[1] = 'N'; + data[2] = 'I'; + data[3] = 'V'; + data[4] = 'E'; + data[5] = 'R'; + return (PROTOCAN_StatusTypeDef)HAL_CAN_AddTxMessage(_HCAN, &TxHeader, data, &TxMailBox); +} + +/** +* @brief Функция ответа на запрос уставок по CAN. +* Создает сообщение с определенными данными и отправляет его через CAN-шину. +* @param _rxMsg Структура входящего сообщения, используется только для формирования ID. +* @return HAL_StatusTypeDef Статус выполнения операции HAL, например HAL_OK. +*/ +__weak PROTOCAN_StatusTypeDef ProtoCanMsgToAnalogSettings(struct RXMsg _rxMsg) +{ + CAN_TxHeaderTypeDef TxHeader; + uint32_t TxMailBox = 0; + uint8_t data[8]; + TxHeader.IDE = CAN_ID_EXT; + TxHeader.TransmitGlobalTime = DISABLE; + TxHeader.RTR = CAN_RTR_DATA; + ProtoCanId_t tmp_eID; + tmp_eID.BitAll = _rxMsg.eID.BitAll; + tmp_eID.Fields.Route = PROTOCAN_ROUTE_FROM_DEVICE; + TxHeader.ExtId = tmp_eID.BitAll; + TxHeader.DLC = 7; + data[0] = 'U'; + data[1] = 'S'; + data[2] = 'T'; + data[3] = 'A'; + data[4] = 'V'; + data[5] = 'K'; + data[6] = 'I'; + return (PROTOCAN_StatusTypeDef)HAL_CAN_AddTxMessage(_HCAN, &TxHeader, data, &TxMailBox); +} + +/** +* @brief Функция ответа на запрос данных с датчиков напряжения. +* Создает сообщение с указанными параметрами и отправляет его через CAN-шину. +* @param _rxMsg Структура входящего сообщения, используемая для формирования идентификатора и данных. +* @return HAL_StatusTypeDef Статус выполнения операции HAL, например HAL_OK при успешной отправке. +*/ +__weak PROTOCAN_StatusTypeDef ProtoCanMsgToAnalogUSens(struct RXMsg _rxMsg) +{ + CAN_TxHeaderTypeDef TxHeader; + uint32_t TxMailBox = 0; + uint8_t data[8]; + TxHeader.IDE = CAN_ID_EXT; + TxHeader.TransmitGlobalTime = DISABLE; + TxHeader.RTR = CAN_RTR_DATA; + ProtoCanId_t tmp_eID; + tmp_eID.BitAll = _rxMsg.eID.BitAll; + tmp_eID.Fields.Route = PROTOCAN_ROUTE_FROM_DEVICE; + TxHeader.ExtId = tmp_eID.BitAll; + TxHeader.DLC = 6; + msgBodyAnalogType msg; + msg.Body = _rxMsg.eID.Fields.MsgBody; + data[0] = 'U'; + data[1] = 'S'; + data[2] = 47 + msg.Fields.SensorID / 1000; + data[3] = 47 + msg.Fields.SensorID / 100 % 10; + data[4] = 47 + msg.Fields.SensorID / 10 % 10; + data[5] = 47 + msg.Fields.SensorID % 10; + return (PROTOCAN_StatusTypeDef)HAL_CAN_AddTxMessage(_HCAN, &TxHeader, data, &TxMailBox); +} + +/** +* @brief Функция ответа на запрос данных с датчиков тока. +* Создает сообщение с определенными параметрами и отправляет его через CAN-шину. +* @param _rxMsg Структура входящего сообщения, используется для формирования идентификатора и данных. +* @return HAL_StatusTypeDef Статус операции HAL, например HAL_OK при успешной отправке. +*/ +__weak PROTOCAN_StatusTypeDef ProtoCanMsgToAnalogISens(struct RXMsg _rxMsg) +{ + CAN_TxHeaderTypeDef TxHeader; + uint32_t TxMailBox = 0; + uint8_t data[8]; + TxHeader.IDE = CAN_ID_EXT; + TxHeader.TransmitGlobalTime = DISABLE; + TxHeader.RTR = CAN_RTR_DATA; + ProtoCanId_t tmp_eID; + tmp_eID.BitAll = _rxMsg.eID.BitAll; + tmp_eID.Fields.Route = PROTOCAN_ROUTE_FROM_DEVICE; + TxHeader.ExtId = tmp_eID.BitAll; + TxHeader.DLC = 6; + msgBodyAnalogType msg; + msg.Body = _rxMsg.eID.Fields.MsgBody; + data[0] = 'I'; + data[1] = 'S'; + data[2] = 47 + msg.Fields.SensorID / 1000; + data[3] = 47 + msg.Fields.SensorID / 100 % 10; + data[4] = 47 + msg.Fields.SensorID / 10 % 10; + data[5] = 47 + msg.Fields.SensorID % 10; + return (PROTOCAN_StatusTypeDef)HAL_CAN_AddTxMessage(_HCAN, &TxHeader, data, &TxMailBox); +} + +/** +* @brief Функция ответа на запрос данных с датчиков температуры. +* Создает сообщение с определенным заголовком, формирует данные по ID сенсора и отправляет его через CAN. +* @param _rxMsg Структура полученного сообщения, которая используется для формирования идентификатора. +* @return HAL_StatusTypeDef Статус выполнения функции HAL, например HAL_OK при успехе. +*/ +__weak PROTOCAN_StatusTypeDef ProtoCanMsgToAnalogTSens(struct RXMsg _rxMsg) +{ + CAN_TxHeaderTypeDef TxHeader; + uint32_t TxMailBox = 0; + uint8_t data[8]; + TxHeader.IDE = CAN_ID_EXT; + TxHeader.TransmitGlobalTime = DISABLE; + TxHeader.RTR = CAN_RTR_DATA; + ProtoCanId_t tmp_eID; + tmp_eID.BitAll = _rxMsg.eID.BitAll; + tmp_eID.Fields.Route = PROTOCAN_ROUTE_FROM_DEVICE; + TxHeader.ExtId = tmp_eID.BitAll; + TxHeader.DLC = 6; + msgBodyAnalogType msg; + msg.Body = _rxMsg.eID.Fields.MsgBody; + data[0] = 'T'; + data[1] = 'S'; + data[2] = 47 + msg.Fields.SensorID / 1000; + data[3] = 47 + msg.Fields.SensorID / 100 % 10; + data[4] = 47 + msg.Fields.SensorID / 10 % 10; + data[5] = 47 + msg.Fields.SensorID % 10; + return (PROTOCAN_StatusTypeDef)HAL_CAN_AddTxMessage(_HCAN, &TxHeader, data, &TxMailBox); +} + +/** +* @brief Обработка и ответ на запрос общего адресного пространства. +* Формирует и передает сообщение с данными о статусе "GAS-XXXX", где XXXX — значение из сообщения _rxMsg. +* @param _rxMsg Структура входящего сообщения, содержит идентификатор и тело сообщения. +*/ +__weak PROTOCAN_StatusTypeDef ProtoCanMsgToGeneralAddressSpace(struct RXMsg _rxMsg) +{ + CAN_TxHeaderTypeDef TxHeader; + uint32_t TxMailBox = 0; + uint8_t data[8]; + TxHeader.IDE = CAN_ID_EXT; + TxHeader.TransmitGlobalTime = DISABLE; + TxHeader.RTR = CAN_RTR_DATA; + ProtoCanId_t tmp_eID; + tmp_eID.BitAll = _rxMsg.eID.BitAll; + tmp_eID.Fields.Route = PROTOCAN_ROUTE_FROM_DEVICE; TxHeader.ExtId = tmp_eID.BitAll; TxHeader.DLC = 8; data[0] = 'G'; @@ -653,7 +656,9 @@ void PROTOCAN_GeneralAddressSpace_Answer(struct RXMsg _rxMsg) data[4+i] = sym+'0'; } } - HAL_CAN_AddTxMessage(_HCAN, &TxHeader, data, &TxMailBox); + return (PROTOCAN_StatusTypeDef)HAL_CAN_AddTxMessage(_HCAN, &TxHeader, data, &TxMailBox); +} + } /** @@ -663,36 +668,36 @@ void PROTOCAN_GeneralAddressSpace_Answer(struct RXMsg _rxMsg) * @param _rxMsg Структура входящего сообщения RXMsg. * @return HAL_StatusTypeDef Статус выполнения команды CAN (успех или ошибка). */ -HAL_StatusTypeDef PROTOCAN_ModbusProcessing(struct RXMsg _rxMsg) +PROTOCAN_StatusTypeDef PROTOCAN_ModbusProcessing(struct RXMsg _rxMsg) { switch(_rxMsg.eID.Fields.MsgType) { - case DATA_TYPE_MODBUS_COIL: + case PROTOCAN_MSGTYPE_MODBUS_COIL: { return ProtoCanMsgToModbusCoil(_rxMsg); break; } - case DATA_TYPE_MODBUS_DISCRETE: + case PROTOCAN_MSGTYPE_MODBUS_DISCRETE: { return ProtoCanMsgToModbusDiscrete(_rxMsg); break; } - case DATA_TYPE_MODBUS_HOLDING: + case PROTOCAN_MSGTYPE_MODBUS_HOLDING: { return ProtoCanMsgToModbusHolding(_rxMsg); break; } - case DATA_TYPE_MODBUS_INPUT: + case PROTOCAN_MSGTYPE_MODBUS_INPUT: { return ProtoCanMsgToModbusInput(_rxMsg); break; } default: //ERROR - return HAL_ERROR; + return PROTOCAN_ERROR; break; } - return HAL_ERROR; + return PROTOCAN_ERROR; } /** @@ -701,7 +706,7 @@ HAL_StatusTypeDef PROTOCAN_ModbusProcessing(struct RXMsg _rxMsg) * @param _rxMsg Структура входящего сообщения RXMsg. * @return HAL_StatusTypeDef Статус выполнения команды CAN (успех или ошибка). */ -__weak HAL_StatusTypeDef ProtoCanMsgToModbusCoil(struct RXMsg _rxMsg) +__weak PROTOCAN_StatusTypeDef ProtoCanMsgToModbusCoil(struct RXMsg _rxMsg) { CAN_TxHeaderTypeDef TxHeader; uint32_t TxMailBox = 0; @@ -709,12 +714,12 @@ __weak HAL_StatusTypeDef ProtoCanMsgToModbusCoil(struct RXMsg _rxMsg) TxHeader.IDE = CAN_ID_EXT; TxHeader.TransmitGlobalTime = DISABLE; TxHeader.RTR = CAN_RTR_DATA; - extID tmp_eID; + ProtoCanId_t tmp_eID; tmp_eID.BitAll = _rxMsg.eID.BitAll; - tmp_eID.Fields.Route = ROUTE_SLAVE; + tmp_eID.Fields.Route = PROTOCAN_ROUTE_FROM_DEVICE; TxHeader.ExtId = tmp_eID.BitAll; TxHeader.DLC = 8; - msgModbusType msg; + msgBodyModbusType msg; msg.Body = _rxMsg.eID.Fields.MsgBody; data[0] = 'M'; data[1] = 'C'; @@ -724,7 +729,7 @@ __weak HAL_StatusTypeDef ProtoCanMsgToModbusCoil(struct RXMsg _rxMsg) data[5] = ' '; data[6] = 'C'; data[7] = msg.Fields.RegCount; - return HAL_CAN_AddTxMessage(_HCAN, &TxHeader, data, &TxMailBox); + return (PROTOCAN_StatusTypeDef)HAL_CAN_AddTxMessage(_HCAN, &TxHeader, data, &TxMailBox); } /** @@ -733,7 +738,7 @@ __weak HAL_StatusTypeDef ProtoCanMsgToModbusCoil(struct RXMsg _rxMsg) * @param _rxMsg Структура входящего сообщения RXMsg. * @return HAL_StatusTypeDef Статус выполнения команды CAN (успех или ошибка). */ -__weak HAL_StatusTypeDef ProtoCanMsgToModbusDiscrete(struct RXMsg _rxMsg) +__weak PROTOCAN_StatusTypeDef ProtoCanMsgToModbusDiscrete(struct RXMsg _rxMsg) { CAN_TxHeaderTypeDef TxHeader; uint32_t TxMailBox = 0; @@ -741,12 +746,12 @@ __weak HAL_StatusTypeDef ProtoCanMsgToModbusDiscrete(struct RXMsg _rxMsg) TxHeader.IDE = CAN_ID_EXT; TxHeader.TransmitGlobalTime = DISABLE; TxHeader.RTR = CAN_RTR_DATA; - extID tmp_eID; + ProtoCanId_t tmp_eID; tmp_eID.BitAll = _rxMsg.eID.BitAll; - tmp_eID.Fields.Route = ROUTE_SLAVE; + tmp_eID.Fields.Route = PROTOCAN_ROUTE_FROM_DEVICE; TxHeader.ExtId = tmp_eID.BitAll; TxHeader.DLC = 8; - msgModbusType msg; + msgBodyModbusType msg; msg.Body = _rxMsg.eID.Fields.MsgBody; data[0] = 'M'; data[1] = 'D'; @@ -756,7 +761,7 @@ __weak HAL_StatusTypeDef ProtoCanMsgToModbusDiscrete(struct RXMsg _rxMsg) data[5] = ' '; data[6] = 'C'; data[7] = msg.Fields.RegCount; - return HAL_CAN_AddTxMessage(_HCAN, &TxHeader, data, &TxMailBox); + return (PROTOCAN_StatusTypeDef)HAL_CAN_AddTxMessage(_HCAN, &TxHeader, data, &TxMailBox); } /** @@ -765,7 +770,7 @@ __weak HAL_StatusTypeDef ProtoCanMsgToModbusDiscrete(struct RXMsg _rxMsg) * @param _rxMsg Структура входящего сообщения RXMsg. * @return HAL_StatusTypeDef Статус выполнения команды CAN (успех или ошибка). */ -__weak HAL_StatusTypeDef ProtoCanMsgToModbusHolding(struct RXMsg _rxMsg) +__weak PROTOCAN_StatusTypeDef ProtoCanMsgToModbusHolding(struct RXMsg _rxMsg) { CAN_TxHeaderTypeDef TxHeader; uint32_t TxMailBox = 0; @@ -773,12 +778,12 @@ __weak HAL_StatusTypeDef ProtoCanMsgToModbusHolding(struct RXMsg _rxMsg) TxHeader.IDE = CAN_ID_EXT; TxHeader.TransmitGlobalTime = DISABLE; TxHeader.RTR = CAN_RTR_DATA; - extID tmp_eID; + ProtoCanId_t tmp_eID; tmp_eID.BitAll = _rxMsg.eID.BitAll; - tmp_eID.Fields.Route = ROUTE_SLAVE; + tmp_eID.Fields.Route = PROTOCAN_ROUTE_FROM_DEVICE; TxHeader.ExtId = tmp_eID.BitAll; TxHeader.DLC = 8; - msgModbusType msg; + msgBodyModbusType msg; msg.Body = _rxMsg.eID.Fields.MsgBody; data[0] = 'M'; data[1] = 'H'; @@ -788,7 +793,7 @@ __weak HAL_StatusTypeDef ProtoCanMsgToModbusHolding(struct RXMsg _rxMsg) data[5] = ' '; data[6] = 'C'; data[7] = msg.Fields.RegCount; - return HAL_CAN_AddTxMessage(_HCAN, &TxHeader, data, &TxMailBox); + return (PROTOCAN_StatusTypeDef)HAL_CAN_AddTxMessage(_HCAN, &TxHeader, data, &TxMailBox); } /** @@ -797,7 +802,7 @@ __weak HAL_StatusTypeDef ProtoCanMsgToModbusHolding(struct RXMsg _rxMsg) * @param _rxMsg Структура входящего сообщения RXMsg. * @return HAL_StatusTypeDef Статус выполнения команды CAN (успех или ошибка). */ -__weak HAL_StatusTypeDef ProtoCanMsgToModbusInput(struct RXMsg _rxMsg) +__weak PROTOCAN_StatusTypeDef ProtoCanMsgToModbusInput(struct RXMsg _rxMsg) { CAN_TxHeaderTypeDef TxHeader; uint32_t TxMailBox = 0; @@ -805,12 +810,12 @@ __weak HAL_StatusTypeDef ProtoCanMsgToModbusInput(struct RXMsg _rxMsg) TxHeader.IDE = CAN_ID_EXT; TxHeader.TransmitGlobalTime = DISABLE; TxHeader.RTR = CAN_RTR_DATA; - extID tmp_eID; + ProtoCanId_t tmp_eID; tmp_eID.BitAll = _rxMsg.eID.BitAll; - tmp_eID.Fields.Route = ROUTE_SLAVE; + tmp_eID.Fields.Route = PROTOCAN_ROUTE_FROM_DEVICE; TxHeader.ExtId = tmp_eID.BitAll; TxHeader.DLC = 8; - msgModbusType msg; + msgBodyModbusType msg; msg.Body = _rxMsg.eID.Fields.MsgBody; data[0] = 'M'; data[1] = 'I'; @@ -820,7 +825,7 @@ __weak HAL_StatusTypeDef ProtoCanMsgToModbusInput(struct RXMsg _rxMsg) data[5] = ' '; data[6] = 'C'; data[7] = msg.Fields.RegCount; - return HAL_CAN_AddTxMessage(_HCAN, &TxHeader, data, &TxMailBox); + return (PROTOCAN_StatusTypeDef)HAL_CAN_AddTxMessage(_HCAN, &TxHeader, data, &TxMailBox); } /** @@ -829,7 +834,7 @@ __weak HAL_StatusTypeDef ProtoCanMsgToModbusInput(struct RXMsg _rxMsg) * @param _rxMsg Структура входящего сообщения RXMsg, данными которого формируется ответ-ошибка. * @return HAL_StatusTypeDef Статус выполнения команды CAN. */ -__weak HAL_StatusTypeDef CanRequestError(struct RXMsg _rxMsg) +__weak PROTOCAN_StatusTypeDef CanRequestError(struct RXMsg _rxMsg) { CAN_TxHeaderTypeDef TxHeader; uint32_t TxMailBox = 0; @@ -837,17 +842,17 @@ __weak HAL_StatusTypeDef CanRequestError(struct RXMsg _rxMsg) TxHeader.IDE = CAN_ID_EXT; TxHeader.TransmitGlobalTime = DISABLE; TxHeader.RTR = CAN_RTR_DATA; - extID tmp_eID; + ProtoCanId_t tmp_eID; tmp_eID.BitAll = _rxMsg.eID.BitAll; - tmp_eID.Fields.Route = ROUTE_SLAVE; - tmp_eID.Fields.MsgType = DATA_TYPE_ERROR; - msgErrorType msg; + tmp_eID.Fields.Route = PROTOCAN_ROUTE_FROM_DEVICE; + tmp_eID.Fields.MsgType = PROTOCAN_MSGTYPE_ERROR; + msgBodyErrorType msg; msg.Fields.ErrorCode = 0xFF; msg.Fields.Info = 0; tmp_eID.Fields.MsgBody = msg.Body; TxHeader.ExtId = tmp_eID.BitAll; TxHeader.DLC = 0; - return HAL_CAN_AddTxMessage(_HCAN, &TxHeader, data, &TxMailBox); + return (PROTOCAN_StatusTypeDef)HAL_CAN_AddTxMessage(_HCAN, &TxHeader, data, &TxMailBox); } /** @@ -860,7 +865,7 @@ __weak HAL_StatusTypeDef CanRequestError(struct RXMsg _rxMsg) * @param tmp_DATA Указатель на массив данных, полученных из CAN. * @param tmp_LastStep Индекс позиции в буфере, куда записывать сообщение. */ -void TakeRxMsgToBuffer(extID tmp_eID, uint32_t tmp_IDE, uint32_t tmp_RTR, uint32_t tmp_DLC, uint8_t *tmp_DATA, uint16_t tmp_LastStep) +void TakeRxMsgToBuffer(ProtoCanId_t tmp_eID, uint32_t tmp_IDE, uint32_t tmp_RTR, uint32_t tmp_DLC, uint8_t *tmp_DATA, uint16_t tmp_LastStep) { rxMsg[tmp_LastStep].eID.BitAll = tmp_eID.BitAll; rxMsg[tmp_LastStep].info.EXT = tmp_IDE; @@ -888,19 +893,19 @@ void ProtoCanRxFifo0MsgPendingCallback(CAN_HandleTypeDef *hcan) //Расширенный ID if(RxHeader.IDE == CAN_ID_EXT) { - if(!((CAN_RX_BUFFER_SIZE + LastStep - (CurrentStep-1))&CAN_RX_BUFFER_SIZE)) + if(!((PROTOCAN_RX_BUFFER_SIZE + LastStep - (CurrentStep-1))&PROTOCAN_RX_BUFFER_SIZE)) { //Буффер переполнен return; } - uint16_t tmp_LastStep = (uint16_t)(LastStep + 1) % CAN_RX_BUFFER_SIZE; + uint16_t tmp_LastStep = (uint16_t)(LastStep + 1) % PROTOCAN_RX_BUFFER_SIZE; - extID ExtID_Of_RX_MSG; + ProtoCanId_t ExtID_Of_RX_MSG; ExtID_Of_RX_MSG.BitAll = RxHeader.ExtId; //Полученное сообщение - пульс устройств в сети - if(ExtID_Of_RX_MSG.Fields.MsgType == DATA_TYPE_PULSE) + if(ExtID_Of_RX_MSG.Fields.MsgType == PROTOCAN_MSGTYPE_PULSE) { Device_on_the_Network[ExtID_Of_RX_MSG.Fields.DeviceType][ExtID_Of_RX_MSG.Fields.DeviceID].Status = ONLINE; Device_on_the_Network[ExtID_Of_RX_MSG.Fields.DeviceType][ExtID_Of_RX_MSG.Fields.DeviceID].TimeFromLastPulse = 0; @@ -923,14 +928,14 @@ void ProtoCanPulseCallback(TIM_HandleTypeDef *htim) static unsigned PulseStage = 0; CAN_TxHeaderTypeDef TxHeader; uint32_t TxMailBox = 0; - extID currentID; + ProtoCanId_t currentID; currentID.BitAll = 0; - currentID.Fields.MsgBody = 0; - currentID.Fields.DeviceID = CURRENT_ID_DEVICE; + currentID.Fields.Priority = PROTOCAN_PRIORITY_STANDARD; + currentID.Fields.Route = PROTOCAN_ROUTE_FROM_DEVICE; currentID.Fields.DeviceType = CURRENT_TYPE_DEVICE; - currentID.Fields.MsgType = DATA_TYPE_PULSE; - currentID.Fields.Route = ROUTE_SLAVE; - currentID.Fields.Priority = PRIORITY_STANDARD; + currentID.Fields.DeviceID = CURRENT_ID_DEVICE; + currentID.Fields.MsgType = PROTOCAN_MSGTYPE_PULSE; + currentID.Fields.MsgBody = 0; TxHeader.ExtId = currentID.BitAll; uint8_t data[8]; TxHeader.IDE = CAN_ID_EXT; @@ -988,52 +993,54 @@ void PROTOCAN_RTC_SYNC(uint8_t *data) */ void PROTOCAN_CONFIG_FILTER(uint8_t filterBank, uint32_t idFilter, uint32_t idMask) { - CAN_FilterTypeDef canFilterConfig; - canFilterConfig.FilterBank = filterBank; - canFilterConfig.FilterMode = CAN_FILTERMODE_IDMASK; - canFilterConfig.FilterScale = CAN_FILTERSCALE_32BIT; - canFilterConfig.FilterFIFOAssignment = CAN_RX_FIFO0; - canFilterConfig.FilterActivation = ENABLE; - canFilterConfig.SlaveStartFilterBank = 14; + CAN_FilterTypeDef canFilterConfig; + canFilterConfig.FilterBank = filterBank; + canFilterConfig.FilterMode = CAN_FILTERMODE_IDMASK; + canFilterConfig.FilterScale = CAN_FILTERSCALE_32BIT; + canFilterConfig.FilterFIFOAssignment = CAN_RX_FIFO0; + canFilterConfig.FilterActivation = ENABLE; + canFilterConfig.SlaveStartFilterBank = 14; - // Разбиваем 32-битный ID и маску для фильтрации на High и Low 16 бит - canFilterConfig.FilterIdHigh = (uint16_t)(((idFilter) >> 13)); // верхние 16 бит - canFilterConfig.FilterIdLow = (uint16_t)((((idFilter) << 3)) | CAN_IDE_32); // низкие 16 бит, - canFilterConfig.FilterMaskIdHigh = (uint16_t)(((idMask) >> 13)); - canFilterConfig.FilterMaskIdLow = (uint16_t)((((idMask) << 3)) | CAN_IDE_32); + #define CAN_IDE_32 0b00000100 // Для 32-х битного масштаба + + // Разбиваем 32-битный ID и маску для фильтрации на High и Low 16 бит + canFilterConfig.FilterIdHigh = (uint16_t)(((idFilter) >> 13)); // верхние 16 бит + canFilterConfig.FilterIdLow = (uint16_t)((((idFilter) << 3)) | CAN_IDE_32); // низкие 16 бит, + canFilterConfig.FilterMaskIdHigh = (uint16_t)(((idMask) >> 13)); + canFilterConfig.FilterMaskIdLow = (uint16_t)((((idMask) << 3)) | CAN_IDE_32); - if(HAL_CAN_ConfigFilter(_HCAN, &canFilterConfig) != HAL_OK) - { - Error_Handler(); - } + if(HAL_CAN_ConfigFilter(_HCAN, &canFilterConfig) != HAL_OK) + { + Error_Handler(); + } } -#define BIT27 (1UL << 27) -#define BITS_20_23_MASK (0xFUL << 20) // 4 бита (20..23) -#define BITS_24_26_MASK (0x7UL << 24) // 3 бита (24..26) - -uint32_t filter1_id = BIT27 | (CURRENT_TYPE_DEVICE << 24) | (CURRENT_ID_DEVICE << 20); -uint32_t filter1_mask = BIT27 | BITS_24_26_MASK | BITS_20_23_MASK; // все проверяемые биты - -#define BITS_16_19_MASK (0xFUL << 16) - -uint32_t filter2_id = DATA_TYPE_BROADCAST << 16; -uint32_t filter2_mask = BITS_16_19_MASK; - -uint32_t filter3_id = DATA_TYPE_PULSE << 16; -uint32_t filter3_mask = BITS_16_19_MASK; - /** * @brief Конфигурирует три фильтра CAN для различных типов сообщений. */ void PROTOCAN_FILTERS() { - // Первый фильтр: проверяем 20-27 биты, где 27-й всегда 1 - PROTOCAN_CONFIG_FILTER(0, filter1_id, filter1_mask); + #define BIT27 (1UL << 27) + #define BITS_20_23_MASK (0xFUL << 20) // 4 бита (20..23) + #define BITS_24_26_MASK (0x7UL << 24) // 3 бита (24..26) + + uint32_t filter1_id = BIT27 | (CURRENT_TYPE_DEVICE << 24) | (CURRENT_ID_DEVICE << 20); + uint32_t filter1_mask = BIT27 | BITS_24_26_MASK | BITS_20_23_MASK; // все проверяемые биты - // Второй фильтр: проверяем 16-19 биты, равны DATA_TYPE_BROADCASTE - PROTOCAN_CONFIG_FILTER(1, filter2_id, filter2_mask); + #define BITS_16_19_MASK (0xFUL << 16) - // Третий фильтр: проверяем 16-19 биты, равны DATA_TYPE_PULSE - PROTOCAN_CONFIG_FILTER(2, filter3_id, filter3_mask); + uint32_t filter2_id = PROTOCAN_MSGTYPE_BROADCAST << 16; + uint32_t filter2_mask = BITS_16_19_MASK; + + uint32_t filter3_id = PROTOCAN_MSGTYPE_PULSE << 16; + uint32_t filter3_mask = BITS_16_19_MASK; + + // Первый фильтр: проверяем 20-27 биты, где 27-й всегда 1 + PROTOCAN_CONFIG_FILTER(0, filter1_id, filter1_mask); + + // Второй фильтр: проверяем 16-19 биты, равны PROTOCAN_MSGTYPE_BROADCASTE + PROTOCAN_CONFIG_FILTER(1, filter2_id, filter2_mask); + + // Третий фильтр: проверяем 16-19 биты, равны PROTOCAN_MSGTYPE_PULSE + PROTOCAN_CONFIG_FILTER(2, filter3_id, filter3_mask); } diff --git a/Core/Src/tim.c b/Core/Src/tim.c index bce7bc9..4a78080 100644 --- a/Core/Src/tim.c +++ b/Core/Src/tim.c @@ -21,7 +21,8 @@ #include "tim.h" /* USER CODE BEGIN 0 */ - +// TIM defines +#define TIM_PROTOCAN_Prescaler 64000 /* USER CODE END 0 */ TIM_HandleTypeDef htim4; diff --git a/MDK-ARM/F103C8T6.uvguix.Iurii b/MDK-ARM/F103C8T6.uvguix.Iurii index 570bcee..0405429 100644 --- a/MDK-ARM/F103C8T6.uvguix.Iurii +++ b/MDK-ARM/F103C8T6.uvguix.Iurii @@ -28,17 +28,17 @@ 38003 Registers - 140 90 + 140 100 346 Code Coverage - 1010 160 + 1010 309 204 Performance Analyzer - 1170 + 869 175 175 100 @@ -114,17 +114,17 @@ -1 - 60 - 229 - 1669 - 844 + 185 + 0 + 1440 + 969 0 2021 - 01000000040000000100000001000000010000000100000000000000020000000000000001000000010000000000000028000000280000000100000016000000020000000100000024443A5C576F726B5C4D43555C46313033433854365C436F72655C5372635C6D61696E2E6300000000066D61696E2E6300000000C5D4F200FFFFFFFF24443A5C576F726B5C4D43555C46313033433854365C436F72655C496E635C6D61696E2E6800000000066D61696E2E6800000000FFDC7800FFFFFFFF28443A5C576F726B5C4D43555C46313033433854365C436F72655C5372635C70726F746F63616E2E63000000000A70726F746F63616E2E6300000000BECEA100FFFFFFFF2C443A5C576F726B5C4D43555C46313033433854365C436F72655C5372635C73746D3332663178785F69742E63000000000E73746D3332663178785F69742E6300000000F0A0A100FFFFFFFF31443A5C576F726B5C4D43555C46313033433854365C436F72655C5372635C73746D3332663178785F68616C5F6D73702E63000000001373746D3332663178785F68616C5F6D73702E6300000000BCA8E100FFFFFFFF49443A5C576F726B5C4D43555C46313033433854365C447269766572735C53544D3332463178785F48414C5F4472697665725C5372635C73746D3332663178785F68616C5F63616E2E63000000001373746D3332663178785F68616C5F63616E2E63000000009CC1B600FFFFFFFF23443A5C576F726B5C4D43555C46313033433854365C436F72655C5372635C74696D2E63000000000574696D2E6300000000F7B88600FFFFFFFF23443A5C576F726B5C4D43555C46313033433854365C436F72655C5372635C7274632E6300000000057274632E6300000000D9ADC200FFFFFFFF45443A5C576F726B5C4D43555C46313033433854365C447269766572735C53544D3332463178785F48414C5F4472697665725C5372635C73746D3332663178785F68616C2E63000000000F73746D3332663178785F68616C2E6300000000A5C2D700FFFFFFFF23443A5C576F726B5C4D43555C46313033433854365C436F72655C5372635C63616E2E63000000000563616E2E6300000000B3A6BE00FFFFFFFF28443A5C576F726B5C4D43555C46313033433854365C436F72655C496E635C70726F746F63616E2E68000000000A70726F746F63616E2E6800000000EAD6A300FFFFFFFF32443A5C576F726B5C4D43555C46313033433854365C4D444B2D41524D5C737461727475705F73746D33326631303378622E730000000015737461727475705F73746D33326631303378622E7300000000F6FA7D00FFFFFFFF35443A5C576F726B5C4D43555C46313033433854365C447269766572735C434D5349535C496E636C7564655C636F72655F636D332E68000000000A636F72655F636D332E6800000000B5E99D00FFFFFFFF49443A5C576F726B5C4D43555C46313033433854365C447269766572735C53544D3332463178785F48414C5F4472697665725C5372635C73746D3332663178785F68616C5F74696D2E63000000001373746D3332663178785F68616C5F74696D2E63000000005FC3CF00FFFFFFFF4C443A5C576F726B5C4D43555C46313033433854365C447269766572735C53544D3332463178785F48414C5F4472697665725C5372635C73746D3332663178785F68616C5F74696D5F65782E63000000001673746D3332663178785F68616C5F74696D5F65782E6300000000C1838300FFFFFFFF49443A5C576F726B5C4D43555C46313033433854365C447269766572735C53544D3332463178785F48414C5F4472697665725C496E635C73746D3332663178785F68616C5F63616E2E68000000001373746D3332663178785F68616C5F63616E2E6800000000CACAD500FFFFFFFF4C443A5C576F726B5C4D43555C46313033433854365C447269766572735C434D5349535C4465766963655C53545C53544D3332463178785C496E636C7564655C73746D33326631303378622E68000000000D73746D33326631303378622E6800000000C5D4F200FFFFFFFF2B443A5C576F726B5C4D43555C46313033433854365C436F72655C5372635C63616E6572726F72626F782E63000000000D63616E6572726F72626F782E6300000000FFDC7800FFFFFFFF2B443A5C576F726B5C4D43555C46313033433854365C436F72655C496E635C63616E6572726F72626F782E68000000000D63616E6572726F72626F782E6800000000BECEA100FFFFFFFF49443A5C576F726B5C4D43555C46313033433854365C447269766572735C53544D3332463178785F48414C5F4472697665725C496E635C73746D3332663178785F68616C5F6465662E68000000001373746D3332663178785F68616C5F6465662E6800000000F0A0A100FFFFFFFF49443A5C576F726B5C4D43555C46313033433854365C447269766572735C53544D3332463178785F48414C5F4472697665725C496E635C73746D3332663178785F68616C5F74696D2E68000000001373746D3332663178785F68616C5F74696D2E6800000000BCA8E100FFFFFFFF27433A5C4B65696C5F76355C41524D5C41524D434C414E475C696E636C7564655C737464696F2E680000000007737464696F2E68000000009CC1B600FFFFFFFF0100000010000000C5D4F200FFDC7800BECEA100F0A0A100BCA8E1009CC1B600F7B88600D9ADC200A5C2D700B3A6BE00EAD6A300F6FA7D00B5E99D005FC3CF00C1838300CACAD500010000000000000002000000F40000006500000080070000E7030000 + 010000000400000001000000010000000100000001000000000000000200000000000000010000000100000000000000280000002800000001000000160000000A0000000100000024443A5C576F726B5C4D43555C46313033433854365C436F72655C5372635C6D61696E2E6300000000066D61696E2E6300000000C5D4F200FFFFFFFF24443A5C576F726B5C4D43555C46313033433854365C436F72655C496E635C6D61696E2E6800000000066D61696E2E6800000000FFDC7800FFFFFFFF28443A5C576F726B5C4D43555C46313033433854365C436F72655C5372635C70726F746F63616E2E63000000000A70726F746F63616E2E6300000000BECEA100FFFFFFFF2C443A5C576F726B5C4D43555C46313033433854365C436F72655C5372635C73746D3332663178785F69742E63000000000E73746D3332663178785F69742E6300000000F0A0A100FFFFFFFF31443A5C576F726B5C4D43555C46313033433854365C436F72655C5372635C73746D3332663178785F68616C5F6D73702E63000000001373746D3332663178785F68616C5F6D73702E6300000000BCA8E100FFFFFFFF49443A5C576F726B5C4D43555C46313033433854365C447269766572735C53544D3332463178785F48414C5F4472697665725C5372635C73746D3332663178785F68616C5F63616E2E63000000001373746D3332663178785F68616C5F63616E2E63000000009CC1B600FFFFFFFF23443A5C576F726B5C4D43555C46313033433854365C436F72655C5372635C74696D2E63000000000574696D2E6300000000F7B88600FFFFFFFF23443A5C576F726B5C4D43555C46313033433854365C436F72655C5372635C7274632E6300000000057274632E6300000000D9ADC200FFFFFFFF45443A5C576F726B5C4D43555C46313033433854365C447269766572735C53544D3332463178785F48414C5F4472697665725C5372635C73746D3332663178785F68616C2E63000000000F73746D3332663178785F68616C2E6300000000A5C2D700FFFFFFFF23443A5C576F726B5C4D43555C46313033433854365C436F72655C5372635C63616E2E63000000000563616E2E6300000000B3A6BE00FFFFFFFF28443A5C576F726B5C4D43555C46313033433854365C436F72655C496E635C70726F746F63616E2E68000000000A70726F746F63616E2E6800000000EAD6A300FFFFFFFF32443A5C576F726B5C4D43555C46313033433854365C4D444B2D41524D5C737461727475705F73746D33326631303378622E730000000015737461727475705F73746D33326631303378622E7300000000F6FA7D00FFFFFFFF35443A5C576F726B5C4D43555C46313033433854365C447269766572735C434D5349535C496E636C7564655C636F72655F636D332E68000000000A636F72655F636D332E6800000000B5E99D00FFFFFFFF49443A5C576F726B5C4D43555C46313033433854365C447269766572735C53544D3332463178785F48414C5F4472697665725C5372635C73746D3332663178785F68616C5F74696D2E63000000001373746D3332663178785F68616C5F74696D2E63000000005FC3CF00FFFFFFFF4C443A5C576F726B5C4D43555C46313033433854365C447269766572735C53544D3332463178785F48414C5F4472697665725C5372635C73746D3332663178785F68616C5F74696D5F65782E63000000001673746D3332663178785F68616C5F74696D5F65782E6300000000C1838300FFFFFFFF49443A5C576F726B5C4D43555C46313033433854365C447269766572735C53544D3332463178785F48414C5F4472697665725C496E635C73746D3332663178785F68616C5F63616E2E68000000001373746D3332663178785F68616C5F63616E2E6800000000CACAD500FFFFFFFF4C443A5C576F726B5C4D43555C46313033433854365C447269766572735C434D5349535C4465766963655C53545C53544D3332463178785C496E636C7564655C73746D33326631303378622E68000000000D73746D33326631303378622E6800000000C5D4F200FFFFFFFF2B443A5C576F726B5C4D43555C46313033433854365C436F72655C5372635C63616E6572726F72626F782E63000000000D63616E6572726F72626F782E6300000000FFDC7800FFFFFFFF2B443A5C576F726B5C4D43555C46313033433854365C436F72655C496E635C63616E6572726F72626F782E68000000000D63616E6572726F72626F782E6800000000BECEA100FFFFFFFF49443A5C576F726B5C4D43555C46313033433854365C447269766572735C53544D3332463178785F48414C5F4472697665725C496E635C73746D3332663178785F68616C5F6465662E68000000001373746D3332663178785F68616C5F6465662E6800000000F0A0A100FFFFFFFF49443A5C576F726B5C4D43555C46313033433854365C447269766572735C53544D3332463178785F48414C5F4472697665725C496E635C73746D3332663178785F68616C5F74696D2E68000000001373746D3332663178785F68616C5F74696D2E6800000000BCA8E100FFFFFFFF27433A5C4B65696C5F76355C41524D5C41524D434C414E475C696E636C7564655C737464696F2E680000000007737464696F2E68000000009CC1B600FFFFFFFF0100000010000000C5D4F200FFDC7800BECEA100F0A0A100BCA8E1009CC1B600F7B88600D9ADC200A5C2D700B3A6BE00EAD6A300F6FA7D00B5E99D005FC3CF00C1838300CACAD5000100000000000000020000000F0100006500000080070000E7030000 @@ -147,7 +147,7 @@ 16 - 74F9FFFF65000000FCFFFFFFFD030000 + F4000000650000007C070000FD030000 @@ -163,7 +163,7 @@ 0 16 - 0300000066000000ED000000B8030000 + 030000006600000008010000B8030000 16 @@ -183,7 +183,7 @@ 0 16 - 0300000066000000ED000000B8030000 + 030000006600000008010000B8030000 16 @@ -463,7 +463,7 @@ 0 16 - 0300000066000000ED000000B8030000 + 030000006600000008010000B8030000 16 @@ -483,7 +483,7 @@ 0 16 - 0300000066000000ED000000B8030000 + 030000006600000008010000B8030000 16 @@ -1163,7 +1163,7 @@ 0 16 - 0300000066000000ED000000B8030000 + 030000006600000008010000B8030000 16 @@ -1812,14 +1812,14 @@ 3315 - 000000000B000000000000000010000000000000FFFFFFFFFFFFFFFF7C0700004F00000080070000E7030000000000000200000004000000010000000000000000000000FFFFFFFF05000000C7000000B4010000D2010000CF01000077940000FFFF02000B004354616262656450616E65001000000000000074F9FFFF65000000FCFFFFFFFD030000F40000004F0000007C070000E70300000000000040820046050000000D46696E6420496E2046696C657300000000C700000001000000FFFFFFFFFFFFFFFF0A4572726F72204C69737400000000B401000001000000FFFFFFFFFFFFFFFF0E536F757263652042726F7773657200000000D201000001000000FFFFFFFFFFFFFFFF0E416C6C205265666572656E63657300000000CF01000001000000FFFFFFFFFFFFFFFF0742726F77736572000000007794000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFC700000001000000FFFFFFFFC7000000000000000020000000000000FFFFFFFFFFFFFFFFF4000000DF00000090050000E3000000000000000100000004000000010000000000000000000000FFFFFFFF08000000CB00000057010000CC000000F08B00005A01000079070000D6010000458900000180002000000000000074F9FFFF6500000010FEFFFFF5000000F40000004F00000090050000DF0000000000000040280046080000000B446973617373656D626C7900000000CB00000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A6572000000005701000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A657200000000CC00000001000000FFFFFFFFFFFFFFFF0E4C6F67696320416E616C797A657200000000F08B000001000000FFFFFFFFFFFFFFFF0D436F646520436F766572616765000000005A01000001000000FFFFFFFFFFFFFFFF11496E737472756374696F6E205472616365000000007907000001000000FFFFFFFFFFFFFFFF0F53797374656D20416E616C797A657200000000D601000001000000FFFFFFFFFFFFFFFF104576656E742053746174697374696373000000004589000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFCB00000001000000FFFFFFFFCB000000000000000040000000000000FFFFFFFFFFFFFFFF9C0400004F000000A00400002B020000000000000200000004000000010000000000000000000000FFFFFFFF2B000000E2050000CA0900002D8C00002E8C00002F8C0000308C0000318C0000328C0000338C0000348C0000358C0000368C0000378C0000388C0000398C00003A8C00003B8C00003C8C00003D8C00003E8C00003F8C0000408C0000418C000050C3000051C3000052C3000053C3000054C3000055C3000056C3000057C3000058C3000059C300005AC300005BC300005CC300005DC300005EC300005FC3000060C3000061C3000062C3000063C300000180004000000000000020FDFFFF6500000010FEFFFF41020000A00400004F000000900500002B02000000000000404100462B0000000753796D626F6C7300000000E205000001000000FFFFFFFFFFFFFFFF0A5472616365204461746100000000CA09000001000000FFFFFFFFFFFFFFFF00000000002D8C000001000000FFFFFFFFFFFFFFFF00000000002E8C000001000000FFFFFFFFFFFFFFFF00000000002F8C000001000000FFFFFFFFFFFFFFFF0000000000308C000001000000FFFFFFFFFFFFFFFF0000000000318C000001000000FFFFFFFFFFFFFFFF0000000000328C000001000000FFFFFFFFFFFFFFFF0000000000338C000001000000FFFFFFFFFFFFFFFF0000000000348C000001000000FFFFFFFFFFFFFFFF0000000000358C000001000000FFFFFFFFFFFFFFFF0000000000368C000001000000FFFFFFFFFFFFFFFF0000000000378C000001000000FFFFFFFFFFFFFFFF0000000000388C000001000000FFFFFFFFFFFFFFFF0000000000398C000001000000FFFFFFFFFFFFFFFF00000000003A8C000001000000FFFFFFFFFFFFFFFF00000000003B8C000001000000FFFFFFFFFFFFFFFF00000000003C8C000001000000FFFFFFFFFFFFFFFF00000000003D8C000001000000FFFFFFFFFFFFFFFF00000000003E8C000001000000FFFFFFFFFFFFFFFF00000000003F8C000001000000FFFFFFFFFFFFFFFF0000000000408C000001000000FFFFFFFFFFFFFFFF0000000000418C000001000000FFFFFFFFFFFFFFFF000000000050C3000001000000FFFFFFFFFFFFFFFF000000000051C3000001000000FFFFFFFFFFFFFFFF000000000052C3000001000000FFFFFFFFFFFFFFFF000000000053C3000001000000FFFFFFFFFFFFFFFF000000000054C3000001000000FFFFFFFFFFFFFFFF000000000055C3000001000000FFFFFFFFFFFFFFFF000000000056C3000001000000FFFFFFFFFFFFFFFF000000000057C3000001000000FFFFFFFFFFFFFFFF000000000058C3000001000000FFFFFFFFFFFFFFFF000000000059C3000001000000FFFFFFFFFFFFFFFF00000000005AC3000001000000FFFFFFFFFFFFFFFF00000000005BC3000001000000FFFFFFFFFFFFFFFF00000000005CC3000001000000FFFFFFFFFFFFFFFF00000000005DC3000001000000FFFFFFFFFFFFFFFF00000000005EC3000001000000FFFFFFFFFFFFFFFF00000000005FC3000001000000FFFFFFFFFFFFFFFF000000000060C3000001000000FFFFFFFFFFFFFFFF000000000061C3000001000000FFFFFFFFFFFFFFFF000000000062C3000001000000FFFFFFFFFFFFFFFF000000000063C3000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFE205000001000000FFFFFFFFE2050000000000000010000001000000FFFFFFFFFFFFFFFFF00000004F000000F4000000D1030000010000000200001004000000010000000000000000000000FFFFFFFF05000000ED0300006D000000C3000000C4000000739400000180001000000100000080F8FFFF6500000070F9FFFFE7030000000000004F000000F0000000D10300000000000040410056050000000750726F6A65637401000000ED03000001000000FFFFFFFFFFFFFFFF05426F6F6B73010000006D00000001000000FFFFFFFFFFFFFFFF0946756E6374696F6E7301000000C300000001000000FFFFFFFFFFFFFFFF0954656D706C6174657301000000C400000001000000FFFFFFFFFFFFFFFF09526567697374657273000000007394000001000000FFFFFFFFFFFFFFFF00000000000000000000000000000000000000000000000001000000FFFFFFFFED03000001000000FFFFFFFFED030000000000000080000000000000FFFFFFFFFFFFFFFF0000000017020000900500001B02000000000000010000000400000001000000000000000000000000000000000000000000000001000000C6000000FFFFFFFF0F0000008F070000930700009407000095070000960700009007000091070000B5010000B801000038030000B9050000BA050000BB050000BC050000CB0900000180008000000000000080F8FFFF3102000010FEFFFFD5020000000000001B02000090050000BF02000000000000404100460F0000001343616C6C20537461636B202B204C6F63616C73000000008F07000001000000FFFFFFFFFFFFFFFF0755415254202331000000009307000001000000FFFFFFFFFFFFFFFF0755415254202332000000009407000001000000FFFFFFFFFFFFFFFF0755415254202333000000009507000001000000FFFFFFFFFFFFFFFF15446562756720287072696E74662920566965776572000000009607000001000000FFFFFFFFFFFFFFFF0757617463682031000000009007000001000000FFFFFFFFFFFFFFFF0757617463682032000000009107000001000000FFFFFFFFFFFFFFFF10547261636520457863657074696F6E7300000000B501000001000000FFFFFFFFFFFFFFFF0E4576656E7420436F756E7465727300000000B801000001000000FFFFFFFFFFFFFFFF09554C494E4B706C7573000000003803000001000000FFFFFFFFFFFFFFFF084D656D6F7279203100000000B905000001000000FFFFFFFFFFFFFFFF084D656D6F7279203200000000BA05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203300000000BB05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203400000000BC05000001000000FFFFFFFFFFFFFFFF105472616365204E617669676174696F6E00000000CB09000001000000FFFFFFFFFFFFFFFFFFFFFFFF0000000001000000000000000000000001000000FFFFFFFFC80200001B020000CC020000BF02000000000000020000000400000000000000000000000000000000000000000000000000000002000000C6000000FFFFFFFF8F07000001000000FFFFFFFF8F07000001000000C60000000000000001000000C5000000008000000100000000000000E7030000800700005C04000001000000010000000100000000000000 + 000000000B000000000000000010000000000000FFFFFFFFFFFFFFFF7C0700004F00000080070000E7030000000000000200000004000000010000000000000000000000FFFFFFFF05000000C7000000B4010000D2010000CF01000077940000FFFF02000B004354616262656450616E650010000000000000F4000000650000007C070000FD030000F40000004F0000007C070000E70300000000000040820046050000000D46696E6420496E2046696C657300000000C700000001000000FFFFFFFFFFFFFFFF0A4572726F72204C69737400000000B401000001000000FFFFFFFFFFFFFFFF0E536F757263652042726F7773657200000000D201000001000000FFFFFFFFFFFFFFFF0E416C6C205265666572656E63657300000000CF01000001000000FFFFFFFFFFFFFFFF0742726F77736572000000007794000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFC700000001000000FFFFFFFFC7000000000000000020000000000000FFFFFFFFFFFFFFFFF4000000DF00000090050000E3000000000000000100000004000000010000000000000000000000FFFFFFFF08000000CB00000057010000CC000000F08B00005A01000079070000D60100004589000001800020000000000000F40000006500000090050000F5000000F40000004F00000090050000DF0000000000000040280046080000000B446973617373656D626C7900000000CB00000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A6572000000005701000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A657200000000CC00000001000000FFFFFFFFFFFFFFFF0E4C6F67696320416E616C797A657200000000F08B000001000000FFFFFFFFFFFFFFFF0D436F646520436F766572616765000000005A01000001000000FFFFFFFFFFFFFFFF11496E737472756374696F6E205472616365000000007907000001000000FFFFFFFFFFFFFFFF0F53797374656D20416E616C797A657200000000D601000001000000FFFFFFFFFFFFFFFF104576656E742053746174697374696373000000004589000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFCB00000001000000FFFFFFFFCB000000000000000040000000000000FFFFFFFFFFFFFFFF9C0400004F000000A00400002B020000000000000200000004000000010000000000000000000000FFFFFFFF2B000000E2050000CA0900002D8C00002E8C00002F8C0000308C0000318C0000328C0000338C0000348C0000358C0000368C0000378C0000388C0000398C00003A8C00003B8C00003C8C00003D8C00003E8C00003F8C0000408C0000418C000050C3000051C3000052C3000053C3000054C3000055C3000056C3000057C3000058C3000059C300005AC300005BC300005CC300005DC300005EC300005FC3000060C3000061C3000062C3000063C3000001800040000000000000A0040000650000009005000041020000A00400004F000000900500002B02000000000000404100462B0000000753796D626F6C7300000000E205000001000000FFFFFFFFFFFFFFFF0A5472616365204461746100000000CA09000001000000FFFFFFFFFFFFFFFF00000000002D8C000001000000FFFFFFFFFFFFFFFF00000000002E8C000001000000FFFFFFFFFFFFFFFF00000000002F8C000001000000FFFFFFFFFFFFFFFF0000000000308C000001000000FFFFFFFFFFFFFFFF0000000000318C000001000000FFFFFFFFFFFFFFFF0000000000328C000001000000FFFFFFFFFFFFFFFF0000000000338C000001000000FFFFFFFFFFFFFFFF0000000000348C000001000000FFFFFFFFFFFFFFFF0000000000358C000001000000FFFFFFFFFFFFFFFF0000000000368C000001000000FFFFFFFFFFFFFFFF0000000000378C000001000000FFFFFFFFFFFFFFFF0000000000388C000001000000FFFFFFFFFFFFFFFF0000000000398C000001000000FFFFFFFFFFFFFFFF00000000003A8C000001000000FFFFFFFFFFFFFFFF00000000003B8C000001000000FFFFFFFFFFFFFFFF00000000003C8C000001000000FFFFFFFFFFFFFFFF00000000003D8C000001000000FFFFFFFFFFFFFFFF00000000003E8C000001000000FFFFFFFFFFFFFFFF00000000003F8C000001000000FFFFFFFFFFFFFFFF0000000000408C000001000000FFFFFFFFFFFFFFFF0000000000418C000001000000FFFFFFFFFFFFFFFF000000000050C3000001000000FFFFFFFFFFFFFFFF000000000051C3000001000000FFFFFFFFFFFFFFFF000000000052C3000001000000FFFFFFFFFFFFFFFF000000000053C3000001000000FFFFFFFFFFFFFFFF000000000054C3000001000000FFFFFFFFFFFFFFFF000000000055C3000001000000FFFFFFFFFFFFFFFF000000000056C3000001000000FFFFFFFFFFFFFFFF000000000057C3000001000000FFFFFFFFFFFFFFFF000000000058C3000001000000FFFFFFFFFFFFFFFF000000000059C3000001000000FFFFFFFFFFFFFFFF00000000005AC3000001000000FFFFFFFFFFFFFFFF00000000005BC3000001000000FFFFFFFFFFFFFFFF00000000005CC3000001000000FFFFFFFFFFFFFFFF00000000005DC3000001000000FFFFFFFFFFFFFFFF00000000005EC3000001000000FFFFFFFFFFFFFFFF00000000005FC3000001000000FFFFFFFFFFFFFFFF000000000060C3000001000000FFFFFFFFFFFFFFFF000000000061C3000001000000FFFFFFFFFFFFFFFF000000000062C3000001000000FFFFFFFFFFFFFFFF000000000063C3000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFE205000001000000FFFFFFFFE2050000000000000010000001000000FFFFFFFFFFFFFFFF0B0100004F0000000F010000D10300000100000002000010040000000100000076FFFFFFEB060000FFFFFFFF05000000ED0300006D000000C3000000C4000000739400000180001000000100000000000000650000000B010000E7030000000000004F0000000B010000D10300000000000040410056050000000750726F6A65637401000000ED03000001000000FFFFFFFFFFFFFFFF05426F6F6B73010000006D00000001000000FFFFFFFFFFFFFFFF0946756E6374696F6E7301000000C300000001000000FFFFFFFFFFFFFFFF0954656D706C6174657301000000C400000001000000FFFFFFFFFFFFFFFF09526567697374657273000000007394000001000000FFFFFFFFFFFFFFFF00000000000000000000000000000000000000000000000001000000FFFFFFFFED03000001000000FFFFFFFFED030000000000000080000000000000FFFFFFFFFFFFFFFF0000000017020000900500001B02000000000000010000000400000001000000000000000000000000000000000000000000000001000000C6000000FFFFFFFF0F0000008F070000930700009407000095070000960700009007000091070000B5010000B801000038030000B9050000BA050000BB050000BC050000CB09000001800080000000000000000000003102000090050000D5020000000000001B02000090050000BF02000000000000404100460F0000001343616C6C20537461636B202B204C6F63616C73000000008F07000001000000FFFFFFFFFFFFFFFF0755415254202331000000009307000001000000FFFFFFFFFFFFFFFF0755415254202332000000009407000001000000FFFFFFFFFFFFFFFF0755415254202333000000009507000001000000FFFFFFFFFFFFFFFF15446562756720287072696E74662920566965776572000000009607000001000000FFFFFFFFFFFFFFFF0757617463682031000000009007000001000000FFFFFFFFFFFFFFFF0757617463682032000000009107000001000000FFFFFFFFFFFFFFFF10547261636520457863657074696F6E7300000000B501000001000000FFFFFFFFFFFFFFFF0E4576656E7420436F756E7465727300000000B801000001000000FFFFFFFFFFFFFFFF09554C494E4B706C7573000000003803000001000000FFFFFFFFFFFFFFFF084D656D6F7279203100000000B905000001000000FFFFFFFFFFFFFFFF084D656D6F7279203200000000BA05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203300000000BB05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203400000000BC05000001000000FFFFFFFFFFFFFFFF105472616365204E617669676174696F6E00000000CB09000001000000FFFFFFFFFFFFFFFFFFFFFFFF0000000001000000000000000000000001000000FFFFFFFFC80200001B020000CC020000BF02000000000000020000000400000000000000000000000000000000000000000000000000000002000000C6000000FFFFFFFF8F07000001000000FFFFFFFF8F07000001000000C60000000000000001000000C5000000008000000100000000000000E7030000800700005C04000001000000010000000100000000000000 59392 File - 2968 - 00200000010000002800FFFF01001100434D4643546F6F6C426172427574746F6E00E100000000000000000000000000000000000000000000000100000001000000018001E100000000000001000000000000000000000000000000000100000001000000018003E1000000000000020000000000000000000000000000000001000000010000000180CD7F0000000002000300000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018023E100000000040004000000000000000000000000000000000100000001000000018022E100000000040005000000000000000000000000000000000100000001000000018025E10000000000000600000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001802BE10000000000000700000000000000000000000000000000010000000100000001802CE10000000004000800000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001807A8A0000000000000900000000000000000000000000000000010000000100000001807B8A0000000004000A00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180D3B00000000000000B000000000000000000000000000000000100000001000000018015B10000000004000C0000000000000000000000000000000001000000010000000180F4B00000000004000D000000000000000000000000000000000100000001000000018036B10000000004000E00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FF88000000000400460000000000000000000000000000000001000000010000000180FE880000000004004500000000000000000000000000000000010000000100000001800B810000000004001300000000000000000000000000000000010000000100000001800C810000000004001400000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180F0880000020000000F000000000000000000000000000000000100000001000000FFFF0100120043555646696E64436F6D626F427574746F6EE8030000000000000000000000000000000000000000000000010000000100000096000000020020500000000012554152545F48616E646C65547970654465669600000000000000140012554152545F48616E646C65547970654465660E7374646F75745F707574636861720C49544D5F53656E64436861722350524F544F43414E5F47656E6572616C4164647265737353706163655F416E73776572055F4854494D1D48414C5F54494D5F506572696F64456C617073656443616C6C6261636B0C43616E52657175657374546F09524551554553544552055F4843414E2148414C5F43414E5F52784669666F304D736750656E64696E6743616C6C6261636B0863616C6C6261636B0C43414E5F52585F4649464F300C43414E5F49545F4552524F520E43414E5F496E74657272757074731A48414C5F43414E5F526567697374657243616C6C6261636B28290852656769737465721757616B65557046726F6D52784D736743616C6C6261636B0E43414E5F4572726F725F436F64651548414C5F43414E5F4572726F7243616C6C6261636B037278660000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000018024E10000000000001100000000000000000000000000000000010000000100000001800A810000000000001200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E2280000002000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B46350000000000000000000000000100000001000000000000000000000001000000020021802280000000000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B4635000000000000000000000000010000000100000000000000000000000100000000002180E0010000000000007500000021456E65726779204D6561737572656D656E742026776974686F75742044656275670000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C488000000000000160000000000000000000000000000000001000000010000000180C988000000000400180000000000000000000000000000000001000000010000000180C788000000000000190000000000000000000000000000000001000000010000002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000003002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000000002180E50100000000000078000000264B696C6C20416C6C20427265616B706F696E747320696E204163746976652050726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180E601000000000000790000002F4B696C6C20416C6C20427265616B706F696E747320696E204D756C74692D50726F6A65637420576F726B73706163650000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000021804C010000020001001A0000000F2650726F6A6563742057696E646F77000000000000000000000000010000000100000000000000000000000100000008002180DD880000000000001A0000000750726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180DC8B0000000000003A00000005426F6F6B73000000000000000000000000010000000100000000000000000000000100000000002180E18B0000000000003B0000000946756E6374696F6E73000000000000000000000000010000000100000000000000000000000100000000002180E28B000000000000400000000954656D706C6174657300000000000000000000000001000000010000000000000000000000010000000000218018890000000000003D0000000E536F757263652042726F777365720000000000000000000000000100000001000000000000000000000001000000000021800000000000000400FFFFFFFF00000000000000000001000000000000000100000000000000000000000100000000002180D988000000000000390000000C4275696C64204F7574707574000000000000000000000000010000000100000000000000000000000100000000002180E38B000000000000410000000B46696E64204F75747075740000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FB7F0000000000001B000000000000000000000000000000000100000001000000000000000446696C65C6030000 + 2928 + 00200000010000002800FFFF01001100434D4643546F6F6C426172427574746F6E00E100000000000000000000000000000000000000000000000100000001000000018001E100000000000001000000000000000000000000000000000100000001000000018003E1000000000000020000000000000000000000000000000001000000010000000180CD7F0000000002000300000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018023E100000000040004000000000000000000000000000000000100000001000000018022E100000000040005000000000000000000000000000000000100000001000000018025E10000000000000600000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001802BE10000000000000700000000000000000000000000000000010000000100000001802CE10000000004000800000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001807A8A0000000000000900000000000000000000000000000000010000000100000001807B8A0000000000000A00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180D3B00000000000000B000000000000000000000000000000000100000001000000018015B10000000004000C0000000000000000000000000000000001000000010000000180F4B00000000004000D000000000000000000000000000000000100000001000000018036B10000000004000E00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FF88000000000400460000000000000000000000000000000001000000010000000180FE880000000004004500000000000000000000000000000000010000000100000001800B810000000004001300000000000000000000000000000000010000000100000001800C810000000004001400000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180F0880000020000000F000000000000000000000000000000000100000001000000FFFF0100120043555646696E64436F6D626F427574746F6EE803000000000000000000000000000000000000000000000001000000010000009600000002002050000000000C50726F746F43616E49645F74960000000000000012000C50726F746F43616E49645F7404646174610D70726F746F43616E44617461200C70726F746F43616E446174610B70726F746F43616E4964200A70726F746F43616E49641243414E5F52585F4255464645525F53495A4506545F73656E73134E4F4E4558495354454E545F454C454D454E54154D4F444255535F53454354494F4E5F46494C544552134D4F444255535F53454354494F4E5F4D41534B18434F554E545F4F465F4D4F444255535F53454354494F4E530A43414E5F4944455F33322050524F544F43414E5F46494C5445525F444154415F545950455F46494C5445520565787449442050726F746F43616E4D7367546F47656E6572616C4164647265737353706163652350524F544F43414E5F47656E6572616C4164647265737353706163655F416E737765720647656E657261000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000018024E10000000000001100000000000000000000000000000000010000000100000001800A810000000000001200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E2280000002000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B46350000000000000000000000000100000001000000000000000000000001000000020021802280000000000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B4635000000000000000000000000010000000100000000000000000000000100000000002180E0010000000000007500000021456E65726779204D6561737572656D656E742026776974686F75742044656275670000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C488000000000000160000000000000000000000000000000001000000010000000180C988000000000400180000000000000000000000000000000001000000010000000180C788000000000000190000000000000000000000000000000001000000010000002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000003002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000000002180E50100000000000078000000264B696C6C20416C6C20427265616B706F696E747320696E204163746976652050726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180E601000000000000790000002F4B696C6C20416C6C20427265616B706F696E747320696E204D756C74692D50726F6A65637420576F726B73706163650000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000021804C010000020001001A0000000F2650726F6A6563742057696E646F77000000000000000000000000010000000100000000000000000000000100000008002180DD880000000000001A0000000750726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180DC8B0000000000003A00000005426F6F6B73000000000000000000000000010000000100000000000000000000000100000000002180E18B0000000000003B0000000946756E6374696F6E73000000000000000000000000010000000100000000000000000000000100000000002180E28B000000000000400000000954656D706C6174657300000000000000000000000001000000010000000000000000000000010000000000218018890000000000003D0000000E536F757263652042726F777365720000000000000000000000000100000001000000000000000000000001000000000021800000000000000400FFFFFFFF00000000000000000001000000000000000100000000000000000000000100000000002180D988000000000000390000000C4275696C64204F7574707574000000000000000000000000010000000100000000000000000000000100000000002180E38B000000000000410000000B46696E64204F75747075740000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FB7F0000000000001B000000000000000000000000000000000100000001000000000000000446696C65C6030000 1423 @@ -1835,7 +1835,7 @@ Build 976 - 00200000010000001000FFFF01001100434D4643546F6F6C426172427574746F6ECF7F0000000000001C0000000000000000000000000000000001000000010000000180D07F0000000000001D000000000000000000000000000000000100000001000000018030800000000000001E000000000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6EC7040000000000006A0000000C4261746368204275696C2664000000000000000000000000010000000100000000000000000000000100000004000580C7040000000000006A0000000C4261746368204275696C266400000000000000000000000001000000010000000000000000000000010000000000058046070000000000006B0000000D42617463682052656275696C640000000000000000000000000100000001000000000000000000000001000000000005804707000000000000FFFFFFFF0B426174636820436C65616E0100000000000000000000000100000001000000000000000000000001000000000005809E8A0000000000001F0000000F4261746326682053657475702E2E2E000000000000000000000000010000000100000000000000000000000100000000000180D17F0000000004002000000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001804C8A0000000000002100000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001900434D4643546F6F6C426172436F6D626F426F78427574746F6EBA000000000000000000000000000000000000000000000000010000000100000096000000030020500000000008463130334338543696000000000000000100084631303343385436000000000180EB880000000000002200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C07F000000000000230000000000000000000000000000000001000000010000000180B08A000000000400240000000000000000000000000000000001000000010000000180A8010000000000004E00000000000000000000000000000000010000000100000001807202000000000000530000000000000000000000000000000001000000010000000180BE010000000000005000000000000000000000000000000000010000000100000000000000054275696C64DC010000 + 00200000010000001000FFFF01001100434D4643546F6F6C426172427574746F6ECF7F0000000004001C0000000000000000000000000000000001000000010000000180D07F0000000000001D000000000000000000000000000000000100000001000000018030800000000000001E000000000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6EC7040000000000006A0000000C4261746368204275696C2664000000000000000000000000010000000100000000000000000000000100000004000580C7040000000000006A0000000C4261746368204275696C266400000000000000000000000001000000010000000000000000000000010000000000058046070000000000006B0000000D42617463682052656275696C640000000000000000000000000100000001000000000000000000000001000000000005804707000000000000FFFFFFFF0B426174636820436C65616E0100000000000000010000000000000001000000000000000000000001000000000005809E8A0000000000001F0000000F4261746326682053657475702E2E2E000000000000000000000000010000000100000000000000000000000100000000000180D17F0000000004002000000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001804C8A0000000000002100000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001900434D4643546F6F6C426172436F6D626F426F78427574746F6EBA000000000000000000000000000000000000000000000000010000000100000096000000030020500000000008463130334338543696000000000000000100084631303343385436000000000180EB880000000000002200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C07F000000000000230000000000000000000000000000000001000000010000000180B08A000000000400240000000000000000000000000000000001000000010000000180A8010000000000004E00000000000000000000000000000000010000000100000001807202000000000000530000000000000000000000000000000001000000010000000180BE010000000000005000000000000000000000000000000000010000000100000000000000054275696C64DC010000 583 @@ -1851,7 +1851,7 @@ Debug 2373 - 00200000000000001900FFFF01001100434D4643546F6F6C426172427574746F6ECC880000000000002500000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018017800000000000002600000000000000000000000000000000010000000100000001801D800000000000002700000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001801A800000000000002800000000000000000000000000000000010000000100000001801B80000000000000290000000000000000000000000000000001000000010000000180E57F0000000000002A00000000000000000000000000000000010000000100000001801C800000000000002B00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018000890000000000002C00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180E48B0000000000002D0000000000000000000000000000000001000000010000000180F07F0000000000002E0000000000000000000000000000000001000000010000000180E8880000000000003700000000000000000000000000000000010000000100000001803B010000000000002F0000000000000000000000000000000001000000010000000180BB8A00000000000030000000000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E0E01000000000000310000000D57617463682057696E646F7773000000000000000000000000010000000100000000000000000000000100000003001380D88B00000000000031000000085761746368202631000000000000000000000000010000000100000000000000000000000100000000001380D98B00000000000031000000085761746368202632000000000000000000000000010000000100000000000000000000000100000000001380CE01000000000000FFFFFFFF0C576174636820416E63686F720000000000000000010000000000000001000000000000000000000001000000000013800F01000000000000320000000E4D656D6F72792057696E646F7773000000000000000000000000010000000100000000000000000000000100000004001380D28B00000000000032000000094D656D6F7279202631000000000000000000000000010000000100000000000000000000000100000000001380D38B00000000000032000000094D656D6F7279202632000000000000000000000000010000000100000000000000000000000100000000001380D48B00000000000032000000094D656D6F7279202633000000000000000000000000010000000100000000000000000000000100000000001380D58B00000000000032000000094D656D6F72792026340000000000000000000000000100000001000000000000000000000001000000000013801001000000000000330000000E53657269616C2057696E646F77730000000000000000000000000100000001000000000000000000000001000000040013809307000000000000330000000855415254202326310000000000000000000000000100000001000000000000000000000001000000000013809407000000000000330000000855415254202326320000000000000000000000000100000001000000000000000000000001000000000013809507000000000000330000000855415254202326330000000000000000000000000100000001000000000000000000000001000000000013809607000000000000330000001626446562756720287072696E746629205669657765720000000000000000000000000100000001000000000000000000000001000000000013803C010000000000007200000010416E616C797369732057696E646F7773000000000000000000000000010000000100000000000000000000000100000004001380658A000000000000340000000F264C6F67696320416E616C797A6572000000000000000000000000010000000100000000000000000000000100000000001380DC7F0000000000003E0000001526506572666F726D616E636520416E616C797A6572000000000000000000000000010000000100000000000000000000000100000000001380E788000000000000380000000E26436F646520436F766572616765000000000000000000000000010000000100000000000000000000000100000000001380CD01000000000000FFFFFFFF0F416E616C7973697320416E63686F7200000000000000000100000000000000010000000000000000000000010000000000138053010000000000003F0000000D54726163652057696E646F77730000000000000000000000000100000001000000000000000000000001000000010013805401000000000000FFFFFFFF115472616365204D656E7520416E63686F720000000000000000010000000000000001000000000000000000000001000000000013802901000000000000350000001553797374656D205669657765722057696E646F77730000000000000000000000000100000001000000000000000000000001000000010013804B01000000000000FFFFFFFF1453797374656D2056696577657220416E63686F720000000000000000010000000000000001000000000000000000000001000000000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000013800189000000000000360000000F26546F6F6C626F782057696E646F7700000000000000000000000001000000010000000000000000000000010000000300138044C5000000000000FFFFFFFF0E5570646174652057696E646F77730000000000000000010000000000000001000000000000000000000001000000000013800000000000000400FFFFFFFF000000000000000000010000000000000001000000000000000000000001000000000013805B01000000000000FFFFFFFF12546F6F6C626F78204D656E75416E63686F72000000000000000001000000000000000100000000000000000000000100000000000000000005446562756764020000 + 00200000000000001900FFFF01001100434D4643546F6F6C426172427574746F6ECC880000000000002500000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018017800000000000002600000000000000000000000000000000010000000100000001801D800000000000002700000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001801A800000000000002800000000000000000000000000000000010000000100000001801B80000000000000290000000000000000000000000000000001000000010000000180E57F0000000000002A00000000000000000000000000000000010000000100000001801C800000000000002B00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018000890000000000002C00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180E48B0000000000002D0000000000000000000000000000000001000000010000000180F07F0000000000002E0000000000000000000000000000000001000000010000000180E8880000000000003700000000000000000000000000000000010000000100000001803B010000000000002F0000000000000000000000000000000001000000010000000180BB8A00000000000030000000000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E0E01000000000000310000000D57617463682057696E646F7773000000000000000000000000010000000100000000000000000000000100000003001380D88B00000000000031000000085761746368202631000000000000000000000000010000000100000000000000000000000100000000001380D98B00000000000031000000085761746368202632000000000000000000000000010000000100000000000000000000000100000000001380CE01000000000000FFFFFFFF0C576174636820416E63686F720100000000000000010000000000000001000000000000000000000001000000000013800F01000000000000320000000E4D656D6F72792057696E646F7773000000000000000000000000010000000100000000000000000000000100000004001380D28B00000000000032000000094D656D6F7279202631000000000000000000000000010000000100000000000000000000000100000000001380D38B00000000000032000000094D656D6F7279202632000000000000000000000000010000000100000000000000000000000100000000001380D48B00000000000032000000094D656D6F7279202633000000000000000000000000010000000100000000000000000000000100000000001380D58B00000000000032000000094D656D6F72792026340000000000000000000000000100000001000000000000000000000001000000000013801001000000000000330000000E53657269616C2057696E646F77730000000000000000000000000100000001000000000000000000000001000000040013809307000000000000330000000855415254202326310000000000000000000000000100000001000000000000000000000001000000000013809407000000000000330000000855415254202326320000000000000000000000000100000001000000000000000000000001000000000013809507000000000000330000000855415254202326330000000000000000000000000100000001000000000000000000000001000000000013809607000000000000330000001626446562756720287072696E746629205669657765720000000000000000000000000100000001000000000000000000000001000000000013803C010000000000007200000010416E616C797369732057696E646F7773000000000000000000000000010000000100000000000000000000000100000004001380658A000000000000340000000F264C6F67696320416E616C797A6572000000000000000000000000010000000100000000000000000000000100000000001380DC7F0000000000003E0000001526506572666F726D616E636520416E616C797A6572000000000000000000000000010000000100000000000000000000000100000000001380E788000000000000380000000E26436F646520436F766572616765000000000000000000000000010000000100000000000000000000000100000000001380CD01000000000000FFFFFFFF0F416E616C7973697320416E63686F7201000000000000000100000000000000010000000000000000000000010000000000138053010000000000003F0000000D54726163652057696E646F77730000000000000000000000000100000001000000000000000000000001000000010013805401000000000000FFFFFFFF115472616365204D656E7520416E63686F720100000000000000010000000000000001000000000000000000000001000000000013802901000000000000350000001553797374656D205669657765722057696E646F77730000000000000000000000000100000001000000000000000000000001000000010013804B01000000000000FFFFFFFF1453797374656D2056696577657220416E63686F720100000000000000010000000000000001000000000000000000000001000000000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000013800189000000000000360000000F26546F6F6C626F782057696E646F7700000000000000000000000001000000010000000000000000000000010000000300138044C5000000000000FFFFFFFF0E5570646174652057696E646F77730100000000000000010000000000000001000000000000000000000001000000000013800000000000000400FFFFFFFF000000000000000000010000000000000001000000000000000000000001000000000013805B01000000000000FFFFFFFF12546F6F6C626F78204D656E75416E63686F72010000000000000001000000000000000100000000000000000000000100000000000000000005446562756764020000 898 @@ -1884,11 +1884,11 @@ 0 16 - 0000000081000000E800000067030000 + 0000000081000000E80000003F030000 16 - 80F8FFFF9700000068F9FFFF7D030000 + 0000000097000000E800000055030000 @@ -1904,7 +1904,7 @@ 0 16 - 0300000098000000E50000004E030000 + 0300000098000000E500000026030000 16 @@ -1924,7 +1924,7 @@ 0 16 - 0300000098000000E50000004E030000 + 0300000098000000E500000026030000 16 @@ -1944,7 +1944,7 @@ 0 16 - 34050000660000007D0700004E030000 + 34050000660000007D07000026030000 16 @@ -1964,7 +1964,7 @@ 0 16 - 34050000660000007D0700004E030000 + 34050000660000007D07000026030000 16 @@ -1984,7 +1984,7 @@ 0 16 - 34050000660000007D0700004E030000 + 34050000660000007D07000026030000 16 @@ -2004,7 +2004,7 @@ 0 16 - 34050000660000007D0700004E030000 + 34050000660000007D07000026030000 16 @@ -2024,7 +2024,7 @@ 0 16 - 34050000660000007D0700004E030000 + 34050000660000007D07000026030000 16 @@ -2064,7 +2064,7 @@ 0 16 - 34050000660000007D0700004E030000 + 34050000660000007D07000026030000 16 @@ -2084,7 +2084,7 @@ 0 16 - 34050000660000007D0700004E030000 + 34050000660000007D07000026030000 16 @@ -2104,7 +2104,7 @@ 0 16 - 34050000660000007D0700004E030000 + 34050000660000007D07000026030000 16 @@ -2124,7 +2124,7 @@ 0 16 - 34050000660000007D0700004E030000 + 34050000660000007D07000026030000 16 @@ -2144,7 +2144,7 @@ 0 16 - 34050000660000007D0700004E030000 + 34050000660000007D07000026030000 16 @@ -2164,7 +2164,7 @@ 0 16 - 34050000660000007D0700004E030000 + 34050000660000007D07000026030000 16 @@ -2184,7 +2184,7 @@ 0 16 - 34050000660000007D0700004E030000 + 34050000660000007D07000026030000 16 @@ -2204,7 +2204,7 @@ 0 16 - 0300000098000000E50000004E030000 + 0300000098000000E500000026030000 16 @@ -2224,7 +2224,7 @@ 0 16 - 0300000098000000E50000004E030000 + 0300000098000000E500000026030000 16 @@ -2264,7 +2264,7 @@ 0 16 - 000000006B030000800700000F040000 + 000000004303000080070000E7030000 16 @@ -2364,7 +2364,7 @@ 0 16 - 34050000660000007D0700004E030000 + 34050000660000007D07000026030000 16 @@ -2384,7 +2384,7 @@ 0 16 - 34050000660000007D0700004E030000 + 34050000660000007D07000026030000 16 @@ -2484,7 +2484,7 @@ 0 16 - 34050000660000007D0700004E030000 + 34050000660000007D07000026030000 16 @@ -2504,7 +2504,7 @@ 0 16 - 34050000660000007D0700004E030000 + 34050000660000007D07000026030000 16 @@ -2524,7 +2524,7 @@ 0 16 - 34050000660000007D0700004E030000 + 34050000660000007D07000026030000 16 @@ -2544,7 +2544,7 @@ 0 16 - 34050000660000007D0700004E030000 + 34050000660000007D07000026030000 16 @@ -2564,7 +2564,7 @@ 0 16 - 34050000660000007D0700004E030000 + 34050000660000007D07000026030000 16 @@ -2584,7 +2584,7 @@ 0 16 - 34050000660000007D0700004E030000 + 34050000660000007D07000026030000 16 @@ -2604,7 +2604,7 @@ 0 16 - 34050000660000007D0700004E030000 + 34050000660000007D07000026030000 16 @@ -2624,7 +2624,7 @@ 0 16 - 34050000660000007D0700004E030000 + 34050000660000007D07000026030000 16 @@ -2644,7 +2644,7 @@ 0 16 - 34050000660000007D0700004E030000 + 34050000660000007D07000026030000 16 @@ -2664,7 +2664,7 @@ 0 16 - 34050000660000007D0700004E030000 + 34050000660000007D07000026030000 16 @@ -2684,7 +2684,7 @@ 0 16 - 34050000660000007D0700004E030000 + 34050000660000007D07000026030000 16 @@ -2704,7 +2704,7 @@ 0 16 - 34050000660000007D0700004E030000 + 34050000660000007D07000026030000 16 @@ -2724,7 +2724,7 @@ 0 16 - 34050000660000007D0700004E030000 + 34050000660000007D07000026030000 16 @@ -2744,7 +2744,7 @@ 0 16 - 34050000660000007D0700004E030000 + 34050000660000007D07000026030000 16 @@ -2764,7 +2764,7 @@ 0 16 - 34050000660000007D0700004E030000 + 34050000660000007D07000026030000 16 @@ -2784,7 +2784,7 @@ 0 16 - 34050000660000007D0700004E030000 + 34050000660000007D07000026030000 16 @@ -2804,7 +2804,7 @@ 0 16 - 34050000660000007D0700004E030000 + 34050000660000007D07000026030000 16 @@ -2824,7 +2824,7 @@ 0 16 - 34050000660000007D0700004E030000 + 34050000660000007D07000026030000 16 @@ -2844,7 +2844,7 @@ 0 16 - 34050000660000007D0700004E030000 + 34050000660000007D07000026030000 16 @@ -2864,7 +2864,7 @@ 0 16 - 34050000660000007D0700004E030000 + 34050000660000007D07000026030000 16 @@ -2884,7 +2884,7 @@ 0 16 - 34050000660000007D0700004E030000 + 34050000660000007D07000026030000 16 @@ -2904,7 +2904,7 @@ 0 16 - 0300000098000000E50000004E030000 + 0300000098000000E500000026030000 16 @@ -2964,7 +2964,7 @@ 0 16 - 34050000660000007D0700004E030000 + 34050000660000007D07000026030000 16 @@ -2984,7 +2984,7 @@ 0 16 - 34050000660000007D0700004E030000 + 34050000660000007D07000026030000 16 @@ -3064,7 +3064,7 @@ 0 16 - 34050000660000007D0700004E030000 + 34050000660000007D07000026030000 16 @@ -3084,7 +3084,7 @@ 0 16 - 34050000660000007D0700004E030000 + 34050000660000007D07000026030000 16 @@ -3104,7 +3104,7 @@ 0 16 - 34050000660000007D0700004E030000 + 34050000660000007D07000026030000 16 @@ -3124,7 +3124,7 @@ 0 16 - 34050000660000007D0700004E030000 + 34050000660000007D07000026030000 16 @@ -3144,7 +3144,7 @@ 0 16 - 34050000660000007D0700004E030000 + 34050000660000007D07000026030000 16 @@ -3164,7 +3164,7 @@ 0 16 - 34050000660000007D0700004E030000 + 34050000660000007D07000026030000 16 @@ -3184,7 +3184,7 @@ 0 16 - 34050000660000007D0700004E030000 + 34050000660000007D07000026030000 16 @@ -3204,7 +3204,7 @@ 0 16 - 34050000660000007D0700004E030000 + 34050000660000007D07000026030000 16 @@ -3224,7 +3224,7 @@ 0 16 - 34050000660000007D0700004E030000 + 34050000660000007D07000026030000 16 @@ -3244,7 +3244,7 @@ 0 16 - 34050000660000007D0700004E030000 + 34050000660000007D07000026030000 16 @@ -3264,7 +3264,7 @@ 0 16 - 34050000660000007D0700004E030000 + 34050000660000007D07000026030000 16 @@ -3284,7 +3284,7 @@ 0 16 - 34050000660000007D0700004E030000 + 34050000660000007D07000026030000 16 @@ -3304,7 +3304,7 @@ 0 16 - 34050000660000007D0700004E030000 + 34050000660000007D07000026030000 16 @@ -3324,7 +3324,7 @@ 0 16 - 34050000660000007D0700004E030000 + 34050000660000007D07000026030000 16 @@ -3344,7 +3344,7 @@ 0 16 - 34050000660000007D0700004E030000 + 34050000660000007D07000026030000 16 @@ -3364,7 +3364,7 @@ 0 16 - 34050000660000007D0700004E030000 + 34050000660000007D07000026030000 16 @@ -3384,7 +3384,7 @@ 0 16 - 34050000660000007D0700004E030000 + 34050000660000007D07000026030000 16 @@ -3404,7 +3404,7 @@ 0 16 - 34050000660000007D0700004E030000 + 34050000660000007D07000026030000 16 @@ -3424,7 +3424,7 @@ 0 16 - 34050000660000007D0700004E030000 + 34050000660000007D07000026030000 16 @@ -3444,7 +3444,7 @@ 0 16 - 34050000660000007D0700004E030000 + 34050000660000007D07000026030000 16 @@ -3484,7 +3484,7 @@ 0 16 - 000000000F0400008007000022040000 + 00000000E703000080070000FA030000 16 @@ -3544,7 +3544,7 @@ 0 16 - 34050000660000007D0700004E030000 + 34050000660000007D07000026030000 16 @@ -3553,14 +3553,14 @@ 3328 - 000000000A000000000000000010000001000000FFFFFFFFFFFFFFFFE800000081000000EC0000006703000001000000020000100400000001000000000000000000000000000000000000000000000001000000FFFFFFFF05000000ED0300006D000000C3000000C400000073940000FFFF02000B004354616262656450616E65001000000100000080F8FFFF9700000068F9FFFF7D0300000000000081000000E8000000670300000000000040410056050000000750726F6A65637401000000ED03000001000000FFFFFFFFFFFFFFFF05426F6F6B73000000006D00000001000000FFFFFFFFFFFFFFFF0946756E6374696F6E7300000000C300000001000000FFFFFFFFFFFFFFFF0954656D706C6174657300000000C400000001000000FFFFFFFFFFFFFFFF09526567697374657273010000007394000001000000FFFFFFFFFFFFFFFF0000000000000000000000000000000000000000000000000000000001000000FFFFFFFFED03000001000000FFFFFFFFED030000000000000020000001000000FFFFFFFFFFFFFFFF000000007D0000002D050000810000000100000001000010040000000100000072FFFFFF7F020000FFFFFFFF08000000CB00000057010000CC000000F08B00005A01000079070000D6010000458900000180002000000100000080F8FFFF65000000ADFDFFFF93000000000000004F0000002D0500007D0000000000000040280056080000000B446973617373656D626C7901000000CB00000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A6572000000005701000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A657200000000CC00000001000000FFFFFFFFFFFFFFFF0E4C6F67696320416E616C797A657200000000F08B000001000000FFFFFFFFFFFFFFFF0D436F646520436F766572616765000000005A01000001000000FFFFFFFFFFFFFFFF11496E737472756374696F6E205472616365000000007907000001000000FFFFFFFFFFFFFFFF0F53797374656D20416E616C797A657200000000D601000001000000FFFFFFFFFFFFFFFF104576656E742053746174697374696373000000004589000001000000FFFFFFFFFFFFFFFF00000000000000000000000000000000000000000000000001000000FFFFFFFFCB00000001000000FFFFFFFFCB000000000000000040000001000000FFFFFFFFFFFFFFFF2D0500004F000000310500006703000001000000020000100400000001000000C8FCFFFF510300000000000000000000000000000100000000000000FFFFFFFF3A0000008F070000930700009407000095070000960700009007000091070000B5010000B801000038030000B9050000BA050000BB050000BC050000CB090000E2050000CA0900002D8C00002E8C00002F8C0000308C0000318C0000328C0000338C0000348C0000358C0000368C0000378C0000388C0000398C00003A8C00003B8C00003C8C00003D8C00003E8C00003F8C0000408C0000418C000050C3000051C3000052C3000053C3000054C3000055C3000056C3000057C3000058C3000059C300005AC300005BC300005CC300005DC300005EC300005FC3000060C3000061C3000062C3000063C3000001800040000001000000B1FDFFFF65000000000000007D030000310500004F000000800700006703000000000000404100563A0000001343616C6C20537461636B202B204C6F63616C73010000008F07000001000000FFFFFFFFFFFFFFFF0755415254202331000000009307000001000000FFFFFFFFFFFFFFFF0755415254202332000000009407000001000000FFFFFFFFFFFFFFFF0755415254202333000000009507000001000000FFFFFFFFFFFFFFFF15446562756720287072696E74662920566965776572000000009607000001000000FFFFFFFFFFFFFFFF0757617463682031010000009007000001000000FFFFFFFFFFFFFFFF0757617463682032000000009107000001000000FFFFFFFFFFFFFFFF10547261636520457863657074696F6E7300000000B501000001000000FFFFFFFFFFFFFFFF0E4576656E7420436F756E7465727300000000B801000001000000FFFFFFFFFFFFFFFF09554C494E4B706C7573000000003803000001000000FFFFFFFFFFFFFFFF084D656D6F7279203101000000B905000001000000FFFFFFFFFFFFFFFF084D656D6F7279203200000000BA05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203300000000BB05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203400000000BC05000001000000FFFFFFFFFFFFFFFF105472616365204E617669676174696F6E00000000CB09000001000000FFFFFFFFFFFFFFFF0753796D626F6C7300000000E205000001000000FFFFFFFFFFFFFFFF0A5472616365204461746100000000CA09000001000000FFFFFFFFFFFFFFFF00000000002D8C000001000000FFFFFFFFFFFFFFFF00000000002E8C000001000000FFFFFFFFFFFFFFFF00000000002F8C000001000000FFFFFFFFFFFFFFFF0000000000308C000001000000FFFFFFFFFFFFFFFF0000000000318C000001000000FFFFFFFFFFFFFFFF0000000000328C000001000000FFFFFFFFFFFFFFFF0000000000338C000001000000FFFFFFFFFFFFFFFF0000000000348C000001000000FFFFFFFFFFFFFFFF0000000000358C000001000000FFFFFFFFFFFFFFFF0000000000368C000001000000FFFFFFFFFFFFFFFF0000000000378C000001000000FFFFFFFFFFFFFFFF0000000000388C000001000000FFFFFFFFFFFFFFFF0000000000398C000001000000FFFFFFFFFFFFFFFF00000000003A8C000001000000FFFFFFFFFFFFFFFF00000000003B8C000001000000FFFFFFFFFFFFFFFF00000000003C8C000001000000FFFFFFFFFFFFFFFF00000000003D8C000001000000FFFFFFFFFFFFFFFF00000000003E8C000001000000FFFFFFFFFFFFFFFF00000000003F8C000001000000FFFFFFFFFFFFFFFF0343414E01000000408C000001000000FFFFFFFFFFFFFFFF0454494D3401000000418C000001000000FFFFFFFFFFFFFFFF000000000050C3000001000000FFFFFFFFFFFFFFFF000000000051C3000001000000FFFFFFFFFFFFFFFF000000000052C3000001000000FFFFFFFFFFFFFFFF000000000053C3000001000000FFFFFFFFFFFFFFFF000000000054C3000001000000FFFFFFFFFFFFFFFF000000000055C3000001000000FFFFFFFFFFFFFFFF000000000056C3000001000000FFFFFFFFFFFFFFFF000000000057C3000001000000FFFFFFFFFFFFFFFF000000000058C3000001000000FFFFFFFFFFFFFFFF000000000059C3000001000000FFFFFFFFFFFFFFFF00000000005AC3000001000000FFFFFFFFFFFFFFFF00000000005BC3000001000000FFFFFFFFFFFFFFFF00000000005CC3000001000000FFFFFFFFFFFFFFFF00000000005DC3000001000000FFFFFFFFFFFFFFFF00000000005EC3000001000000FFFFFFFFFFFFFFFF00000000005FC3000001000000FFFFFFFFFFFFFFFF000000000060C3000001000000FFFFFFFFFFFFFFFF000000000061C3000001000000FFFFFFFFFFFFFFFF000000000062C3000001000000FFFFFFFFFFFFFFFF000000000063C3000001000000FFFFFFFFFFFFFFFF240000000000000002000000000000000000000002000000FFFFFFFF720600004F000000760600003F030000000000000200000004000000000000002BFFFFFFD200000000000000000000000000000001000000FFFFFFFF8F07000001000000FFFFFFFF8F070000000000000080000001000000FFFFFFFFFFFFFFFF0000000067030000800700006B03000001000000010000100400000001000000000000000000000000000000000000000000000001000000C60000000000000001000000000000000000000001000000FFFFFFFFC003000043030000C4030000E703000000000000020000000400000000000000000000000000000000000000000000000000000001000000C600000001000000C6000000000000000080000000000000FFFFFFFFFFFFFFFF000000002B020000900500002F020000000000000100000004000000010000000000000000000000FFFFFFFF06000000C5000000C7000000B4010000D2010000CF010000779400000180008000000000000080F8FFFF4502000010FEFFFFD5020000000000002F02000090050000BF0200000000000040820046060000000C4275696C64204F757470757400000000C500000001000000FFFFFFFFFFFFFFFF0D46696E6420496E2046696C657300000000C700000001000000FFFFFFFFFFFFFFFF0A4572726F72204C69737400000000B401000001000000FFFFFFFFFFFFFFFF0E536F757263652042726F7773657200000000D201000001000000FFFFFFFFFFFFFFFF0E416C6C205265666572656E63657300000000CF01000001000000FFFFFFFFFFFFFFFF0642726F777365000000007794000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFC500000001000000FFFFFFFFC5000000000000000000000000000000 + 000000000A000000000000000010000001000000FFFFFFFFFFFFFFFFE800000081000000EC0000003F03000001000000020000100400000001000000000000000000000000000000000000000000000001000000FFFFFFFF05000000ED0300006D000000C3000000C400000073940000FFFF02000B004354616262656450616E6500100000010000000000000097000000E8000000550300000000000081000000E80000003F0300000000000040410056050000000750726F6A65637401000000ED03000001000000FFFFFFFFFFFFFFFF05426F6F6B73000000006D00000001000000FFFFFFFFFFFFFFFF0946756E6374696F6E7300000000C300000001000000FFFFFFFFFFFFFFFF0954656D706C6174657300000000C400000001000000FFFFFFFFFFFFFFFF09526567697374657273010000007394000001000000FFFFFFFFFFFFFFFF0000000000000000000000000000000000000000000000000000000001000000FFFFFFFFED03000001000000FFFFFFFFED030000000000000020000001000000FFFFFFFFFFFFFFFF000000007D0000002D050000810000000100000001000010040000000100000072FFFFFF7F020000FFFFFFFF08000000CB00000057010000CC000000F08B00005A01000079070000D6010000458900000180002000000100000000000000650000002D05000093000000000000004F0000002D0500007D0000000000000040280056080000000B446973617373656D626C7901000000CB00000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A6572000000005701000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A657200000000CC00000001000000FFFFFFFFFFFFFFFF0E4C6F67696320416E616C797A657200000000F08B000001000000FFFFFFFFFFFFFFFF0D436F646520436F766572616765000000005A01000001000000FFFFFFFFFFFFFFFF11496E737472756374696F6E205472616365000000007907000001000000FFFFFFFFFFFFFFFF0F53797374656D20416E616C797A657200000000D601000001000000FFFFFFFFFFFFFFFF104576656E742053746174697374696373000000004589000001000000FFFFFFFFFFFFFFFF00000000000000000000000000000000000000000000000001000000FFFFFFFFCB00000001000000FFFFFFFFCB000000000000000040000001000000FFFFFFFFFFFFFFFF2D0500004F000000310500003F03000001000000020000100400000001000000C8FCFFFF510300000000000000000000000000000100000000000000FFFFFFFF3A0000008F070000930700009407000095070000960700009007000091070000B5010000B801000038030000B9050000BA050000BB050000BC050000CB090000E2050000CA0900002D8C00002E8C00002F8C0000308C0000318C0000328C0000338C0000348C0000358C0000368C0000378C0000388C0000398C00003A8C00003B8C00003C8C00003D8C00003E8C00003F8C0000408C0000418C000050C3000051C3000052C3000053C3000054C3000055C3000056C3000057C3000058C3000059C300005AC300005BC300005CC300005DC300005EC300005FC3000060C3000061C3000062C3000063C300000180004000000100000031050000650000008007000055030000310500004F000000800700003F03000000000000404100563A0000001343616C6C20537461636B202B204C6F63616C73010000008F07000001000000FFFFFFFFFFFFFFFF0755415254202331000000009307000001000000FFFFFFFFFFFFFFFF0755415254202332000000009407000001000000FFFFFFFFFFFFFFFF0755415254202333000000009507000001000000FFFFFFFFFFFFFFFF15446562756720287072696E74662920566965776572000000009607000001000000FFFFFFFFFFFFFFFF0757617463682031010000009007000001000000FFFFFFFFFFFFFFFF0757617463682032000000009107000001000000FFFFFFFFFFFFFFFF10547261636520457863657074696F6E7300000000B501000001000000FFFFFFFFFFFFFFFF0E4576656E7420436F756E7465727300000000B801000001000000FFFFFFFFFFFFFFFF09554C494E4B706C7573000000003803000001000000FFFFFFFFFFFFFFFF084D656D6F7279203101000000B905000001000000FFFFFFFFFFFFFFFF084D656D6F7279203200000000BA05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203300000000BB05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203400000000BC05000001000000FFFFFFFFFFFFFFFF105472616365204E617669676174696F6E00000000CB09000001000000FFFFFFFFFFFFFFFF0753796D626F6C7300000000E205000001000000FFFFFFFFFFFFFFFF0A5472616365204461746100000000CA09000001000000FFFFFFFFFFFFFFFF00000000002D8C000001000000FFFFFFFFFFFFFFFF00000000002E8C000001000000FFFFFFFFFFFFFFFF00000000002F8C000001000000FFFFFFFFFFFFFFFF0000000000308C000001000000FFFFFFFFFFFFFFFF0000000000318C000001000000FFFFFFFFFFFFFFFF0000000000328C000001000000FFFFFFFFFFFFFFFF0000000000338C000001000000FFFFFFFFFFFFFFFF0000000000348C000001000000FFFFFFFFFFFFFFFF0000000000358C000001000000FFFFFFFFFFFFFFFF0000000000368C000001000000FFFFFFFFFFFFFFFF0000000000378C000001000000FFFFFFFFFFFFFFFF0000000000388C000001000000FFFFFFFFFFFFFFFF0000000000398C000001000000FFFFFFFFFFFFFFFF00000000003A8C000001000000FFFFFFFFFFFFFFFF00000000003B8C000001000000FFFFFFFFFFFFFFFF00000000003C8C000001000000FFFFFFFFFFFFFFFF00000000003D8C000001000000FFFFFFFFFFFFFFFF00000000003E8C000001000000FFFFFFFFFFFFFFFF00000000003F8C000001000000FFFFFFFFFFFFFFFF0343414E01000000408C000001000000FFFFFFFFFFFFFFFF0454494D3401000000418C000001000000FFFFFFFFFFFFFFFF000000000050C3000001000000FFFFFFFFFFFFFFFF000000000051C3000001000000FFFFFFFFFFFFFFFF000000000052C3000001000000FFFFFFFFFFFFFFFF000000000053C3000001000000FFFFFFFFFFFFFFFF000000000054C3000001000000FFFFFFFFFFFFFFFF000000000055C3000001000000FFFFFFFFFFFFFFFF000000000056C3000001000000FFFFFFFFFFFFFFFF000000000057C3000001000000FFFFFFFFFFFFFFFF000000000058C3000001000000FFFFFFFFFFFFFFFF000000000059C3000001000000FFFFFFFFFFFFFFFF00000000005AC3000001000000FFFFFFFFFFFFFFFF00000000005BC3000001000000FFFFFFFFFFFFFFFF00000000005CC3000001000000FFFFFFFFFFFFFFFF00000000005DC3000001000000FFFFFFFFFFFFFFFF00000000005EC3000001000000FFFFFFFFFFFFFFFF00000000005FC3000001000000FFFFFFFFFFFFFFFF000000000060C3000001000000FFFFFFFFFFFFFFFF000000000061C3000001000000FFFFFFFFFFFFFFFF000000000062C3000001000000FFFFFFFFFFFFFFFF000000000063C3000001000000FFFFFFFFFFFFFFFF000000000000000002000000000000000000000002000000FFFFFFFF720600004F000000760600003F030000000000000200000004000000000000002BFFFFFFD200000000000000000000000000000001000000FFFFFFFF8F07000001000000FFFFFFFF8F070000000000000080000001000000FFFFFFFFFFFFFFFF000000003F030000800700004303000001000000010000100400000001000000000000000000000000000000000000000000000001000000C60000000000000001000000000000000000000001000000FFFFFFFFC003000043030000C4030000E703000000000000020000000400000000000000000000000000000000000000000000000000000001000000C600000001000000C6000000000000000080000000000000FFFFFFFFFFFFFFFF000000002B020000900500002F020000000000000100000004000000010000000000000000000000FFFFFFFF06000000C5000000C7000000B4010000D2010000CF0100007794000001800080000000000000000000004502000090050000D5020000000000002F02000090050000BF0200000000000040820046060000000C4275696C64204F757470757400000000C500000001000000FFFFFFFFFFFFFFFF0D46696E6420496E2046696C657300000000C700000001000000FFFFFFFFFFFFFFFF0A4572726F72204C69737400000000B401000001000000FFFFFFFFFFFFFFFF0E536F757263652042726F7773657200000000D201000001000000FFFFFFFFFFFFFFFF0E416C6C205265666572656E63657300000000CF01000001000000FFFFFFFFFFFFFFFF0642726F777365000000007794000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFC500000001000000FFFFFFFFC5000000000000000000000000000000 59392 File - 2789 - 00200000010000002800FFFF01001100434D4643546F6F6C426172427574746F6E00E100000000000000000000000000000000000000000000000100000001000000018001E100000000000001000000000000000000000000000000000100000001000000018003E1000000000000020000000000000000000000000000000001000000010000000180CD7F0000000000000300000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018023E100000000040004000000000000000000000000000000000100000001000000018022E100000000040005000000000000000000000000000000000100000001000000018025E10000000000000600000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001802BE10000000000000700000000000000000000000000000000010000000100000001802CE10000000004000800000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001807A8A0000000000000900000000000000000000000000000000010000000100000001807B8A0000000000000A00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180D3B00000000000000B000000000000000000000000000000000100000001000000018015B10000000004000C0000000000000000000000000000000001000000010000000180F4B00000000004000D000000000000000000000000000000000100000001000000018036B10000000004000E00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FF88000000000400460000000000000000000000000000000001000000010000000180FE880000000004004500000000000000000000000000000000010000000100000001800B810000000004001300000000000000000000000000000000010000000100000001800C810000000004001400000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180F0880000020000000F000000000000000000000000000000000100000001000000FFFF0100120043555646696E64436F6D626F427574746F6EE803000000000000000000000000000000000000000000000001000000010000009600000002002050000000000843616C6C6261636B96000000000000000C000843616C6C6261636B0011417661696C61626C6543616E52784D73671143414E5F43555252454E545F5350454544125245515545535445525F5254435F53594E431D43616E52657175657374546F42726F61646361737452746353657475701B5245515545535445525F50756C73655F54494D5F48616E646C65720C4D585F54494D375F496E69741245515545535445525F5072657363616C65722148414C5F43414E5F52784669666F304D736750656E64696E6743616C6C6261636B03527846025278000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000018024E10000000000001100000000000000000000000000000000010000000100000001800A810000000000001200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E2280000002000100150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B46350000000000000000000000000100000001000000000000000000000001000000020021802280000000000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B4635000000000000000000000000010000000100000000000000000000000100000000002180E0010000000000007500000021456E65726779204D6561737572656D656E742026776974686F75742044656275670000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C488000000000400160000000000000000000000000000000001000000010000000180C988000000000400180000000000000000000000000000000001000000010000000180C788000000000000190000000000000000000000000000000001000000010000002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000003002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000000002180E50100000000000078000000264B696C6C20416C6C20427265616B706F696E747320696E204163746976652050726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180E601000000000000790000002F4B696C6C20416C6C20427265616B706F696E747320696E204D756C74692D50726F6A65637420576F726B73706163650000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000021804C010000020001001A0000000F2650726F6A6563742057696E646F77000000000000000000000000010000000100000000000000000000000100000008002180DD880000000000001A0000000750726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180DC8B0000000000003A00000005426F6F6B73000000000000000000000000010000000100000000000000000000000100000000002180E18B0000000000003B0000000946756E6374696F6E73000000000000000000000000010000000100000000000000000000000100000000002180E28B000000000000400000000954656D706C6174657300000000000000000000000001000000010000000000000000000000010000000000218018890000000000003D0000000E536F757263652042726F777365720000000000000000000000000100000001000000000000000000000001000000000021800000000000000400FFFFFFFF00000000000000000001000000000000000100000000000000000000000100000000002180D988000000000000390000000C4275696C64204F7574707574000000000000000000000000010000000100000000000000000000000100000000002180E38B000000000000410000000B46696E64204F75747075740000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FB7F0000000000001B000000000000000000000000000000000100000001000000000000000446696C65C6030000 + 2928 + 00200000010000002800FFFF01001100434D4643546F6F6C426172427574746F6E00E100000000000000000000000000000000000000000000000100000001000000018001E100000000000001000000000000000000000000000000000100000001000000018003E1000000000000020000000000000000000000000000000001000000010000000180CD7F0000000000000300000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018023E100000000040004000000000000000000000000000000000100000001000000018022E100000000040005000000000000000000000000000000000100000001000000018025E10000000000000600000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001802BE10000000000000700000000000000000000000000000000010000000100000001802CE10000000004000800000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001807A8A0000000000000900000000000000000000000000000000010000000100000001807B8A0000000000000A00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180D3B00000000000000B000000000000000000000000000000000100000001000000018015B10000000004000C0000000000000000000000000000000001000000010000000180F4B00000000004000D000000000000000000000000000000000100000001000000018036B10000000004000E00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FF88000000000400460000000000000000000000000000000001000000010000000180FE880000000004004500000000000000000000000000000000010000000100000001800B810000000004001300000000000000000000000000000000010000000100000001800C810000000004001400000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180F0880000020000000F000000000000000000000000000000000100000001000000FFFF0100120043555646696E64436F6D626F427574746F6EE803000000000000000000000000000000000000000000000001000000010000009600000002002050000000000C50726F746F43616E49645F74960000000000000012000C50726F746F43616E49645F7404646174610D70726F746F43616E44617461200C70726F746F43616E446174610B70726F746F43616E4964200A70726F746F43616E49641243414E5F52585F4255464645525F53495A4506545F73656E73134E4F4E4558495354454E545F454C454D454E54154D4F444255535F53454354494F4E5F46494C544552134D4F444255535F53454354494F4E5F4D41534B18434F554E545F4F465F4D4F444255535F53454354494F4E530A43414E5F4944455F33322050524F544F43414E5F46494C5445525F444154415F545950455F46494C5445520565787449442050726F746F43616E4D7367546F47656E6572616C4164647265737353706163652350524F544F43414E5F47656E6572616C4164647265737353706163655F416E737765720647656E657261000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000018024E10000000000001100000000000000000000000000000000010000000100000001800A810000000000001200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E2280000002000300150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B46350000000000000000000000000100000001000000000000000000000001000000020021802280000000000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B4635000000000000000000000000010000000100000000000000000000000100000000002180E0010000000000007500000021456E65726779204D6561737572656D656E742026776974686F75742044656275670000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C488000000000000160000000000000000000000000000000001000000010000000180C988000000000400180000000000000000000000000000000001000000010000000180C788000000000000190000000000000000000000000000000001000000010000002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000003002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000000002180E50100000000000078000000264B696C6C20416C6C20427265616B706F696E747320696E204163746976652050726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180E601000000000000790000002F4B696C6C20416C6C20427265616B706F696E747320696E204D756C74692D50726F6A65637420576F726B73706163650000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000021804C010000020001001A0000000F2650726F6A6563742057696E646F77000000000000000000000000010000000100000000000000000000000100000008002180DD880000000000001A0000000750726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180DC8B0000000000003A00000005426F6F6B73000000000000000000000000010000000100000000000000000000000100000000002180E18B0000000000003B0000000946756E6374696F6E73000000000000000000000000010000000100000000000000000000000100000000002180E28B000000000000400000000954656D706C6174657300000000000000000000000001000000010000000000000000000000010000000000218018890000000000003D0000000E536F757263652042726F777365720000000000000000000000000100000001000000000000000000000001000000000021800000000000000400FFFFFFFF00000000000000000001000000000000000100000000000000000000000100000000002180D988000000000000390000000C4275696C64204F7574707574000000000000000000000000010000000100000000000000000000000100000000002180E38B000000000000410000000B46696E64204F75747075740000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FB7F0000000000001B000000000000000000000000000000000100000001000000000000000446696C65C6030000 1423 @@ -3592,7 +3592,7 @@ Debug 2362 - 00200000010000001900FFFF01001100434D4643546F6F6C426172427574746F6ECC880000000000002500000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018017800000000000002600000000000000000000000000000000010000000100000001801D800000000004002700000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001801A800000000000002800000000000000000000000000000000010000000100000001801B80000000000000290000000000000000000000000000000001000000010000000180E57F0000000000002A00000000000000000000000000000000010000000100000001801C800000000004002B00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018000890000000000002C00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180E48B0000020001002D0000000000000000000000000000000001000000010000000180F07F0000020001002E0000000000000000000000000000000001000000010000000180E8880000020000003700000000000000000000000000000000010000000100000001803B010000020001002F0000000000000000000000000000000001000000010000000180BB8A00000200010030000000000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E0E01000002000100310000000D57617463682057696E646F7773000000000000000000000000010000000100000000000000000000000100000003001380D88B00000000000031000000085761746368202631000000000000000000000000010000000100000000000000000000000100000000001380D98B00000000000031000000085761746368202632000000000000000000000000010000000100000000000000000000000100000000001380CE01000000000000FFFFFFFF0C576174636820416E63686F720100000000000000010000000000000001000000000000000000000001000000000013800F0100000200010032000000094D656D6F7279202631000000000000000000000000010000000100000000000000000000000100000004001380D28B00000000000032000000094D656D6F7279202631000000000000000000000000010000000100000000000000000000000100000000001380D38B00000000000032000000094D656D6F7279202632000000000000000000000000010000000100000000000000000000000100000000001380D48B00000000000032000000094D656D6F7279202633000000000000000000000000010000000100000000000000000000000100000000001380D58B00000000000032000000094D656D6F72792026340000000000000000000000000100000001000000000000000000000001000000000013801001000002000000330000000855415254202326310000000000000000000000000100000001000000000000000000000001000000040013809307000000000000330000000855415254202326310000000000000000000000000100000001000000000000000000000001000000000013809407000000000000330000000855415254202326320000000000000000000000000100000001000000000000000000000001000000000013809507000000000000330000000855415254202326330000000000000000000000000100000001000000000000000000000001000000000013809607000000000000330000001626446562756720287072696E746629205669657765720000000000000000000000000100000001000000000000000000000001000000000013803C010000000000007200000010416E616C797369732057696E646F7773000000000000000000000000010000000100000000000000000000000100000004001380658A000000000000340000000F264C6F67696320416E616C797A6572000000000000000000000000010000000100000000000000000000000100000000001380DC7F0000000000003E0000001526506572666F726D616E636520416E616C797A6572000000000000000000000000010000000100000000000000000000000100000000001380E788000000000000380000000E26436F646520436F766572616765000000000000000000000000010000000100000000000000000000000100000000001380CD01000000000000FFFFFFFF0F416E616C7973697320416E63686F7201000000000000000100000000000000010000000000000000000000010000000000138053010000000000003F0000000D54726163652057696E646F77730000000000000000000000000100000001000000000000000000000001000000010013805401000000000000FFFFFFFF115472616365204D656E7520416E63686F720100000000000000010000000000000001000000000000000000000001000000000013802901000000000000350000001553797374656D205669657765722057696E646F77730000000000000000000000000100000001000000000000000000000001000000010013804B01000000000000FFFFFFFF1453797374656D2056696577657220416E63686F720100000000000000010000000000000001000000000000000000000001000000000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000013800189000002000000360000000F26546F6F6C626F782057696E646F7700000000000000000000000001000000010000000000000000000000010000000300138044C5000000000000FFFFFFFF0E5570646174652057696E646F77730100000000000000010000000000000001000000000000000000000001000000000013800000000000000400FFFFFFFF000000000000000000010000000000000001000000000000000000000001000000000013805B01000000000000FFFFFFFF12546F6F6C626F78204D656E75416E63686F72010000000000000001000000000000000100000000000000000000000100000000000000000005446562756764020000 + 00200000010000001900FFFF01001100434D4643546F6F6C426172427574746F6ECC880000000000002500000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018017800000000000002600000000000000000000000000000000010000000100000001801D800000000004002700000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001801A800000000000002800000000000000000000000000000000010000000100000001801B80000000000000290000000000000000000000000000000001000000010000000180E57F0000000000002A00000000000000000000000000000000010000000100000001801C800000000000002B00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018000890000000000002C00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180E48B0000020001002D0000000000000000000000000000000001000000010000000180F07F0000020001002E0000000000000000000000000000000001000000010000000180E8880000020000003700000000000000000000000000000000010000000100000001803B010000020001002F0000000000000000000000000000000001000000010000000180BB8A00000200010030000000000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E0E01000002000100310000000D57617463682057696E646F7773000000000000000000000000010000000100000000000000000000000100000003001380D88B00000000000031000000085761746368202631000000000000000000000000010000000100000000000000000000000100000000001380D98B00000000000031000000085761746368202632000000000000000000000000010000000100000000000000000000000100000000001380CE01000000000000FFFFFFFF0C576174636820416E63686F720100000000000000010000000000000001000000000000000000000001000000000013800F0100000200010032000000094D656D6F7279202631000000000000000000000000010000000100000000000000000000000100000004001380D28B00000000000032000000094D656D6F7279202631000000000000000000000000010000000100000000000000000000000100000000001380D38B00000000000032000000094D656D6F7279202632000000000000000000000000010000000100000000000000000000000100000000001380D48B00000000000032000000094D656D6F7279202633000000000000000000000000010000000100000000000000000000000100000000001380D58B00000000000032000000094D656D6F72792026340000000000000000000000000100000001000000000000000000000001000000000013801001000002000000330000000855415254202326310000000000000000000000000100000001000000000000000000000001000000040013809307000000000000330000000855415254202326310000000000000000000000000100000001000000000000000000000001000000000013809407000000000000330000000855415254202326320000000000000000000000000100000001000000000000000000000001000000000013809507000000000000330000000855415254202326330000000000000000000000000100000001000000000000000000000001000000000013809607000000000000330000001626446562756720287072696E746629205669657765720000000000000000000000000100000001000000000000000000000001000000000013803C010000000000007200000010416E616C797369732057696E646F7773000000000000000000000000010000000100000000000000000000000100000004001380658A000000000000340000000F264C6F67696320416E616C797A6572000000000000000000000000010000000100000000000000000000000100000000001380DC7F0000000000003E0000001526506572666F726D616E636520416E616C797A6572000000000000000000000000010000000100000000000000000000000100000000001380E788000000000000380000000E26436F646520436F766572616765000000000000000000000000010000000100000000000000000000000100000000001380CD01000000000000FFFFFFFF0F416E616C7973697320416E63686F7201000000000000000100000000000000010000000000000000000000010000000000138053010000000000003F0000000D54726163652057696E646F77730000000000000000000000000100000001000000000000000000000001000000010013805401000000000000FFFFFFFF115472616365204D656E7520416E63686F720100000000000000010000000000000001000000000000000000000001000000000013802901000000000000350000001553797374656D205669657765722057696E646F77730000000000000000000000000100000001000000000000000000000001000000010013804B01000000000000FFFFFFFF1453797374656D2056696577657220416E63686F720100000000000000010000000000000001000000000000000000000001000000000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000013800189000002000000360000000F26546F6F6C626F782057696E646F7700000000000000000000000001000000010000000000000000000000010000000300138044C5000000000000FFFFFFFF0E5570646174652057696E646F77730100000000000000010000000000000001000000000000000000000001000000000013800000000000000400FFFFFFFF000000000000000000010000000000000001000000000000000000000001000000000013805B01000000000000FFFFFFFF12546F6F6C626F78204D656E75416E63686F72010000000000000001000000000000000100000000000000000000000100000000000000000005446562756764020000 898 @@ -3616,12 +3616,12 @@ 0 100 - 2 + 10 ../Core/Src/main.c - 14 - 76 - 98 + 0 + 63 + 76 1 0 @@ -3637,9 +3637,9 @@ ..\Core\Src\protocan.c - 20 - 58 - 85 + 46 + 1097 + 1121 1 0 @@ -3664,18 +3664,18 @@ ../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_can.c - 3 - 557 - 564 + 0 + 550 + 668 1 1709 0 ../Core/Src/tim.c - 17 - 16 - 27 + 21 + 10 + 26 1 0 @@ -3700,18 +3700,18 @@ ../Core/Src/can.c - 38 - 80 - 98 + 16 + 1 + 30 1 0 ..\Core\Inc\protocan.h - 1 - 266 - 268 + 18 + 1 + 12 1 0 @@ -3719,7 +3719,7 @@ startup_stm32f103xb.s 0 - 118 + 119 132 1 @@ -3727,9 +3727,9 @@ ..\Drivers\CMSIS\Include\core_cm3.h - 0 + 30 1 - 1 + 6 1 0 diff --git a/MDK-ARM/F103C8T6.uvoptx b/MDK-ARM/F103C8T6.uvoptx index e4be771..09343d6 100644 --- a/MDK-ARM/F103C8T6.uvoptx +++ b/MDK-ARM/F103C8T6.uvoptx @@ -145,78 +145,14 @@ 0 ST-LINKIII-KEIL_SWO - -U37FF71064E57343634C31443 -O2254 -SF10000 -C0 -A0 -I0 -HNlocalhost -HP7184 -P1 -N00("ARM CoreSight SW-DP (ARM Core") -D00(1BA01477) -L00(0) -TO131090 -TC10000000 -TT10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32F10x_128.FLM -FS08000000 -FL010000 -FP0($$Device:STM32F103C8$Flash\STM32F10x_128.FLM) -WA0 -WE0 -WVCE4 -WS2710 -WM0 -WP2 + -U37FF71064E57343634C31443 -O2254 -SF10000 -C0 -A0 -I0 -HNlocalhost -HP7184 -P1 -N00("ARM CoreSight SW-DP (ARM Core") -D00(2BA01477) -L00(0) -TO131090 -TC10000000 -TT10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32F10x_128.FLM -FS08000000 -FL010000 -FP0($$Device:STM32F103C8$Flash\STM32F10x_128.FLM) -WA0 -WE0 -WVCE4 -WS2710 -WM0 -WP2 0 0 - 55 - 1 -
134234964
- 0 - 0 - 0 - 0 - 0 - 1 - D:\Work\MCU\F103C8T6\Core\Src\requester.c - - \\F103C8T6\../Core/Src/requester.c\55 -
- - 1 - 0 - 690 - 1 -
134224302
- 0 - 0 - 0 - 0 - 0 - 1 - D:\Work\MCU\F103C8T6\Core\Src\requester.c - - \\F103C8T6\../Core/Src/requester.c\690 -
- - 2 - 0 - 56 - 1 -
0
- 0 - 0 - 0 - 0 - 0 - 0 - D:\Work\MCU\F103C8T6\Core\Src\requester.c - - -
- - 3 - 0 - 691 - 1 -
0
- 0 - 0 - 0 - 0 - 0 - 0 - D:\Work\MCU\F103C8T6\Core\Src\requester.c - - -
- - 4 - 0 - 63 + 135 1
0
0 @@ -229,10 +165,74 @@
+ + 1 + 0 + 158 + 1 +
134236802
+ 0 + 0 + 0 + 0 + 0 + 1 + ..\Core\Src\protocan.c + + \\F103C8T6\../Core/Src/protocan.c\158 +
+ + 2 + 0 + 76 + 1 +
134243560
+ 0 + 0 + 0 + 0 + 0 + 1 + ../Core/Src/main.c + + \\F103C8T6\../Core/Src/main.c\76 +
+ + 3 + 0 + 66 + 1 +
134235748
+ 0 + 0 + 0 + 0 + 0 + 1 + ..\Core\Src\protocan.c + + \\F103C8T6\../Core/Src/protocan.c\66 +
+ + 4 + 0 + 717 + 1 +
134237434
+ 0 + 0 + 0 + 0 + 0 + 1 + ..\Core\Src\protocan.c + + \\F103C8T6\../Core/Src/protocan.c\717 +
5 0 - 64 + 159 1
0
0 @@ -248,7 +248,7 @@ 6 0 - 695 + 160 1
0
0 @@ -264,7 +264,7 @@ 7 0 - 696 + 718 1
0
0 @@ -280,263 +280,7 @@ 8 0 - 100 - 1 -
0
- 0 - 0 - 0 - 0 - 0 - 0 - ..\Core\Src\protocan.c - - -
- - 9 - 0 - 101 - 1 -
0
- 0 - 0 - 0 - 0 - 0 - 0 - ..\Core\Src\protocan.c - - -
- - 10 - 0 - 733 - 1 -
0
- 0 - 0 - 0 - 0 - 0 - 0 - ..\Core\Src\protocan.c - - -
- - 11 - 0 - 734 - 1 -
0
- 0 - 0 - 0 - 0 - 0 - 0 - ..\Core\Src\protocan.c - - -
- - 12 - 0 - 700 - 1 -
0
- 0 - 0 - 0 - 0 - 0 - 0 - ..\Core\Src\protocan.c - - -
- - 13 - 0 - 701 - 1 -
0
- 0 - 0 - 0 - 0 - 0 - 0 - ..\Core\Src\protocan.c - - -
- - 14 - 0 - 738 - 1 -
0
- 0 - 0 - 0 - 0 - 0 - 0 - ..\Core\Src\protocan.c - - -
- - 15 - 0 - 739 - 1 -
0
- 0 - 0 - 0 - 0 - 0 - 0 - ..\Core\Src\protocan.c - - -
- - 16 - 0 - 61 - 1 -
0
- 0 - 0 - 0 - 0 - 0 - 0 - ..\Core\Src\protocan.c - - -
- - 17 - 0 - 104 - 1 -
0
- 0 - 0 - 0 - 0 - 0 - 0 - ..\Core\Src\protocan.c - - -
- - 18 - 0 - 105 - 1 -
0
- 0 - 0 - 0 - 0 - 0 - 0 - ..\Core\Src\protocan.c - - -
- - 19 - 0 - 699 - 1 -
0
- 0 - 0 - 0 - 0 - 0 - 0 - ..\Core\Src\protocan.c - - -
- - 20 - 0 - 704 - 1 -
0
- 0 - 0 - 0 - 0 - 0 - 0 - ..\Core\Src\protocan.c - - -
- - 21 - 0 - 705 - 1 -
0
- 0 - 0 - 0 - 0 - 0 - 0 - ..\Core\Src\protocan.c - - -
- - 22 - 0 - 737 - 1 -
0
- 0 - 0 - 0 - 0 - 0 - 0 - ..\Core\Src\protocan.c - - -
- - 23 - 0 - 742 - 1 -
0
- 0 - 0 - 0 - 0 - 0 - 0 - ..\Core\Src\protocan.c - - -
- - 24 - 0 - 743 + 719 1
0
0 @@ -596,6 +340,16 @@ 1 idFilter + + 9 + 1 + CAN_RC_RESULT + + + 10 + 1 + tmp_hcan + 0 @@ -737,7 +491,7 @@ 2 6 1 - 1 + 0 0 0 ../Core/Src/main.c diff --git a/MDK-ARM/F103C8T6/F103C8T6.axf b/MDK-ARM/F103C8T6/F103C8T6.axf index ecb422a..35c68aa 100644 Binary files a/MDK-ARM/F103C8T6/F103C8T6.axf and b/MDK-ARM/F103C8T6/F103C8T6.axf differ diff --git a/MDK-ARM/F103C8T6/F103C8T6.build_log.htm b/MDK-ARM/F103C8T6/F103C8T6.build_log.htm index 3ad01e8..2208b24 100644 --- a/MDK-ARM/F103C8T6/F103C8T6.build_log.htm +++ b/MDK-ARM/F103C8T6/F103C8T6.build_log.htm @@ -27,6 +27,10 @@ Project File Date: 05/29/2026

Output:

*** Using Compiler 'V6.19', folder: 'C:\Keil_v5\ARM\ARMCLANG\Bin' Build target 'F103C8T6' +compiling main.c... +linking... +Program Size: Code=25688 RO-data=424 RW-data=16 ZI-data=6656 +FromELF: creating hex file... "F103C8T6\F103C8T6.axf" - 0 Error(s), 0 Warning(s).

Software Packages used:

@@ -51,7 +55,7 @@ Package Vendor: Keil * Component: ARM::CMSIS:CORE:5.6.0 Include file: CMSIS/Core/Include/tz_context.h -Build Time Elapsed: 00:00:00 +Build Time Elapsed: 00:00:01 diff --git a/MDK-ARM/F103C8T6/F103C8T6.hex b/MDK-ARM/F103C8T6/F103C8T6.hex index 64fb7ce..78fedd6 100644 --- a/MDK-ARM/F103C8T6/F103C8T6.hex +++ b/MDK-ARM/F103C8T6/F103C8T6.hex @@ -1,33 +1,33 @@ :020000040800F2 -:10000000301A00208901000839420008E93F000841 -:100010003542000815030008E561000800000000F3 -:10002000000000000000000000000000315D00083A -:100030001505000800000000914C0008895D0008CB +:10000000101A00208901000835420008E53F000869 +:100010003142000815030008B96300080000000021 +:10002000000000000000000000000000055F000864 +:100030001105000800000000554D00085D5F000834 :10004000A3010008A3010008A3010008A301000800 :10005000A3010008A3010008A3010008A3010008F0 :10006000A3010008A3010008A3010008A3010008E0 :10007000A3010008A3010008A3010008A3010008D0 -:10008000A3010008A3010008A3010008C56100083E -:10009000D56100081903000829030008A30100081E +:10008000A3010008A3010008A30100089963000868 +:10009000A96300081903000829030008A301000848 :1000A000A3010008A3010008A3010008A3010008A0 -:1000B000A3010008A3010008315E0008A3010008A5 +:1000B000A3010008A301000805600008A3010008CF :1000C000A3010008A3010008A3010008A301000880 :1000D000A3010008A3010008A3010008A301000870 :1000E000A3010008A3010008A301000800F002F822 :1000F00000F03AF80AA090E8000C82448344AAF188 :100100000107DA4501D100F02FF8AFF2090EBAE885 :100110000F0013F0010F18BFFB1A43F0010318473B -:10012000EC6200000C630000103A24BF78C878C16C +:10012000C0640000E0640000103A24BF78C878C1C1 :10013000FAD8520724BF30C830C144BF04680C60ED :10014000704700000023002400250026103A28BF35 :1001500078C1FBD8520728BF30C148BF0B60704739 :100160001FB51FBD10B510BD00F08AF81146FFF78E -:10017000F7FF06F0C9F800F0A8F803B4FFF7F2FFA4 +:10017000F7FF06F0B3F900F0A8F803B4FFF7F2FFB9 :1001800003BC00F0AFF80000094880470948004769 :10019000FEE7FEE7FEE7FEE7FEE7FEE7FEE7FEE737 :1001A000FEE7FEE704480549054A064B7047000094 -:1001B0002D5E0008ED00000830140020301A0020E9 -:1001C000301600203016002010B5203AC0F00B8009 +:1001B00001600008ED00000810140020101A002053 +:1001C000101600201016002010B5203AC0F00B8049 :1001D000B1E81850A0E81850B1E81850A0E818503D :1001E000203ABFF4F5AF5FEA027C24BFB1E81850B3 :1001F000A0E8185044BF18C918C0BDE810405FEA15 @@ -45,1565 +45,1592 @@ :1002B000AC46ACE8C009ACE8C009ACE8C009ACE8A1 :1002C000C00921F007018D46704710B50446AFF311 :1002D00000802046BDE81040FFF74FBF0048704740 -:1002E0002800002001491820ABBEFEE726000200CE -:1002F0007047000040F6E400C2F20000007840F2CF +:1002E0001000002001491820ABBEFEE726000200E6 +:1002F0007047000040F6CC00C2F20000007840F2E7 :100300000001C2F200010978401A813000F07F003C -:1003100070470000FFE7FEE780B540F6FC00C2F240 -:10032000000000F06FFC80BD80B540F6FC00C2F21A -:10033000000000F067FC80BD40F28801C2F20001BD -:10034000486901304861704740F28801C2F20001FB -:10035000C8690130C861704740F28801C2F20001EB -:10036000886801308860704740F28801C2F200015D -:10037000886901308861704740F28801C2F200014B -:10038000086A01300862704740F28801C2F2000139 -:10039000486801304860704740F28801C2F20001AD -:1003A000086801300860704740F28801C2F200011D -:1003B000086901300861704740F28801C2F200010B -:1003C000886C01308864704740F28801C2F20001F5 -:1003D000C86C0130C864704740F28801C2F2000165 -:1003E000086D01300865704740F28801C2F20001D3 -:1003F000486D01304865704740F28801C2F2000143 -:10040000486A01304862704740F28801C2F2000138 -:10041000886A01308862704740F28801C2F20001A8 -:10042000C8680130C860704740F28801C2F200011C -:10043000486C01304864704740F28801C2F2000104 -:10044000C86A0130C862704740F28801C2F20001F8 -:10045000486B01304863704740F28801C2F20001E6 -:10046000C86B0130C863704740F28801C2F20001D6 -:10047000086B01300863704740F28801C2F2000146 -:10048000886B01308863704740F28801C2F2000136 +:1003100070470000FFE7FEE780B540F6E000C2F25C +:10032000000000F06DFC80BD80B540F6E000C2F238 +:10033000000000F065FC80BD40F27001C2F20001D7 +:10034000486901304861704740F27001C2F2000113 +:10035000C8690130C861704740F27001C2F2000103 +:10036000886801308860704740F27001C2F2000175 +:10037000886901308861704740F27001C2F2000163 +:10038000086A01300862704740F27001C2F2000151 +:10039000486801304860704740F27001C2F20001C5 +:1003A000086801300860704740F27001C2F2000135 +:1003B000086901300861704740F27001C2F2000123 +:1003C000886C01308864704740F27001C2F200010D +:1003D000C86C0130C864704740F27001C2F200017D +:1003E000086D01300865704740F27001C2F20001EB +:1003F000486D01304865704740F27001C2F200015B +:10040000486A01304862704740F27001C2F2000150 +:10041000886A01308862704740F27001C2F20001C0 +:10042000C8680130C860704740F27001C2F2000134 +:10043000486C01304864704740F27001C2F200011C +:10044000C86A0130C862704740F27001C2F2000110 +:10045000486B01304863704740F27001C2F20001FE +:10046000C86B0130C863704740F27001C2F20001EE +:10047000086B01300863704740F27001C2F200015E +:10048000886B01308863704740F27001C2F200014E :10049000086C01300864704780B590B0DDF848C042 :1004A000CDF83CC00E930D920C910B90002004905F :1004B000042107918DF8280008900C9A019962F3A5 -:1004C0001C0101919DF8071001F0F7018DF807104C +:1004C0001C0101919DF8071041F008018DF80710FB :1004D0009DF8061001F0F00108318DF80610FF219B -:1004E0008DF800108DF80100BDF80010ADF8041073 -:1004F000019921F060410691099040F6EC00C2F2AA -:100500000000006805A902AA04AB00F037F810B09B -:1005100080BD00007047000081B0EFF3108072B61C -:100520000090FFE7FEE7000084B00290019102987E -:1005300090F820008DF803009DF80300012805D0F5 -:10054000FFE79DF8030002280AD1FFE7019A02980D -:10055000016848691043486100208DF80F0008E0E9 -:100560000299486A40F48020486201208DF80F000B -:10057000FFE79DF80F0004B07047000088B00690B8 -:10058000059104920393069890F820008DF80700D7 -:1005900006980068806800900598806808B9FFE7B1 -:1005A00000E0FFE79DF80700012806D0FFE79DF86F -:1005B0000700022840F08080FFE79DF80300400715 -:1005C00000280CD4FFE79DF803000007002806D49C -:1005D000FFE79DF80300C006002864D5FFE70098F8 -:1005E000C0F30160029002990120884003990860DD -:1005F0000598806868B9FFE705980168C06840EA17 -:10060000415006990968029A01EB0211C1F8800174 -:100610000EE005994A688868C96840EAC200084344 -:1006200006990968029A01EB0211C1F88001FFE7FF -:100630000598006906990968029A01EB0211C1F850 -:1006400084010598007D01280CD1FFE70698006819 -:10065000029900EB0111D1F8840140F48070C1F8D7 -:100660008401FFE70498406806990968029A01EB43 -:100670000211C1F88C010498006806990968029A71 -:1006800001EB0211C1F8880106980068029900EB9D -:100690000111D1F8800140F00100C1F88001002073 -:1006A0008DF81F0011E00699486A40F40010486276 -:1006B00001208DF81F0008E00699486A40F4802068 -:1006C000486201208DF81F00FFE79DF81F0008B069 -:1006D0007047000086B00490039104980068019070 -:1006E000049890F820008DF803009DF8030001287D -:1006F00006D0FFE79DF80300022840F09B80FFE74B -:100700000199D1F8000240F00100C1F800020398FD -:10071000406900F01F01012088400290029A01996F -:10072000D1F81C029043C1F81C020398C069F0B9CB -:10073000FFE7029A0199D1F80C029043C1F80C022C -:10074000039A9088D168526940EA0140019901EB0F -:10075000C201C1F84002039A10889168526940EAC8 -:100760000140019901EBC201C1F84402FFE703987F -:10077000C06901281ED1FFE7029A0199D1F80C0245 -:100780001043C1F80C02039A90881168526940EA3C -:100790000140019901EBC201C1F84002039A90891E -:1007A0009168526940EA0140019901EBC201C1F828 -:1007B0004402FFE70398806940B9FFE7029A019974 -:1007C000D1F804029043C1F8040207E0029A0199AB -:1007D000D1F804021043C1F80402FFE7039800694E -:1007E00040B9FFE7029A0199D1F814029043C1F889 -:1007F000140207E0029A0199D1F814021043C1F8DB -:100800001402FFE70398006A012808D1FFE7029A63 -:100810000199D1F81C021043C1F81C02FFE70199AD -:10082000D1F8000220F00100C1F8000200208DF88C -:10083000170008E00499486A40F4802048620120CB -:100840008DF81700FFE79DF8170006B0704700000D -:1008500080B582B001900198406A08B9FFE7C4E012 -:100860000198406AC00718B1FFE7FFF795FDFFE761 -:100870000198406A8007002803D5FFE7FFF784FD51 -:10088000FFE70198406A4007002803D5FFE7FFF71C -:1008900063FDFFE70198406A0007002803D5FFE7E2 -:1008A000FFF7BAFDFFE70198406AC006002803D5AC -:1008B000FFE7FFF779FDFFE70198406A800600280F -:1008C00003D5FFE7FFF738FDFFE70198406A4006D0 -:1008D000002803D5FFE7FFF747FDFFE70198406ACF -:1008E0000006002803D5FFE7FFF72EFDFFE701987C -:1008F000406AC005002803D5FFE7FFF73DFDFFE78D -:100900000198406A8005002803D5FFE7FFF774FDD2 -:10091000FFE70198406A4005002803D5FFE7FFF78D -:1009200073FDFFE70198406A0005002803D5FFE743 -:10093000FFF782FDFFE70198406AC004002803D555 -:10094000FFE7FFF791FDFFE70198406A8004002868 -:1009500003D5FFE7FFF778FDFFE70198406A400401 -:10096000002803D5FFE7FFF787FDFFE70198406AFE -:100970000004002803D5FFE7FFF76EFDFFE70198AD -:10098000406AC003002803D5FFE7FFF77DFDFFE7BE -:100990000198406A8003002803D5FFE7FFF744FD74 -:1009A000FFE70198406A4003002803D5FFE7FFF7FF -:1009B00003FDFFE70198406A0003002803D5FFE725 -:1009C000FFF702FDFFE70198406AC002002803D547 -:1009D000FFE7FFF701FDFFE70198406A800200286A -:1009E00003D5FFE7FFF700FDFFE702B080BD000081 -:1009F00086B00490039102920193049890F820002D -:100A00008DF803009DF80300012806D0FFE79DF84C -:100A10000300022840F0E880FFE7039880B9FFE771 -:100A200004980068C068800748B9FFE70499486ADD -:100A300040F40010486201208DF81700DDE00FE05F -:100A4000049800680069800748B9FFE70499486A7C -:100A500040F40010486201208DF81700CDE0FFE758 -:100A600004980068039900EB0110D0F8B00100F081 -:100A70000400029988600298806858B9FFE70498DA -:100A80000068039900EB0110D0F8B001400D029905 -:100A900008600AE004980068039900EB0110D0F8A0 -:100AA000B001C00802994860FFE704980068039904 -:100AB00000EB0110D0F8B00100F002000299C8600C -:100AC00004980068039900EB0110D0F8B40100F01D -:100AD0000F00082804D3FFE70299082008610BE003 -:100AE00004980068039900EB0110D0F8B40100F0FD -:100AF0000F0002990861FFE704980068039900EB72 -:100B00000110D0F8B40180B2000A029988610498FB -:100B10000068039900EB0110D0F8B401000C0299B1 -:100B2000486104980068039900EB0110D0F8B801FF -:100B30000199087004980068039900EB0110D0F83F -:100B4000B801000A0199487004980068039900EB05 -:100B50000110D0F8B801000C019988700498006861 -:100B6000039900EB0110D0F8B801000E0199C8708C -:100B700004980068039900EB0110D0F8BC010199BA -:100B8000087104980068039900EB0110D0F8BC01CB -:100B9000000A0199487104980068039900EB01105C -:100BA000D0F8BC01000C0199887104980068039981 -:100BB00000EB0110D0F8BC01000E0199C871039838 -:100BC00038B9FFE704980168C86840F02000C860A1 -:100BD00006E004980168086940F020000861FFE71A -:100BE00000208DF8170008E00499486A40F480203E -:100BF000486201208DF81700FFE79DF8170006B046 -:100C00007047000080B58AB00990002008900998CC -:100C10000068406907900998006840680690099844 -:100C200000688068059009980068C0680490099879 -:100C300000680069039009980068806902909DF837 -:100C40001C00C007002800F09480FFE79DF8140006 -:100C5000C00758B3FFE709980168012088609DF834 -:100C600014008007002804D5FFE70998816A8847A7 -:100C70001BE09DF814004007002805D5FFE7089801 -:100C800040F4006008900FE09DF814000007002871 -:100C900005D5FFE7089840F48050089003E00998D4 -:100CA000416B8847FFE7FFE7FFE7FFE79DF8150087 -:100CB000C00760B3FFE7099801684FF4807088604F -:100CC0009DF815008007002804D5FFE70998C16A40 -:100CD00088471BE09DF815004007002805D5FFE771 -:100CE000089840F4005008900FE09DF815000007A8 -:100CF000002805D5FFE7089840F48040089003E0FD -:100D00000998816B8847FFE7FFE7FFE7FFE79DF85A -:100D10001600C00760B3FFE7099801684FF4803000 -:100D200088609DF816008007002804D5FFE7099821 -:100D3000016B88471BE09DF816004007002805D589 -:100D4000FFE7089840F4004008900FE09DF8160077 -:100D50000007002805D5FFE7089840F48030089088 -:100D600003E00998C16B8847FFE7FFE7FFE7FFE76C -:100D7000FFE79DF81C000007002810D5FFE79DF84D -:100D80001000C006002809D5FFE7089840F400705D -:100D90000890099801681020C860FFE7FFE79DF8F8 -:100DA0001C00400700280FD5FFE79DF81000000742 -:100DB000002808D5FFE7099801680820C86009984D -:100DC000416C8847FFE7FFE79DF81C00800700287B -:100DD0000BD5FFE709980068C068800720B1FFE7DE -:100DE0000998016C8847FFE7FFE79DF81C00400663 -:100DF000002810D5FFE79DF80C00C006002809D593 -:100E0000FFE7089840F48060089009980168102076 -:100E10000861FFE7FFE79DF81C00800600280FD55A -:100E2000FFE79DF80C000007002808D5FFE70998A8 -:100E30000168082008610998C16C8847FFE7FFE74F -:100E40009DF81C00C00600280BD5FFE70998006834 -:100E50000069800720B1FFE70998816C8847FFE7A8 -:100E6000FFE79DF81E00800700280FD5FFE79DF8DB -:100E70001800C006002808D5FFE70998016810206F -:100E800048600998016D8847FFE7FFE79DF81E005D -:100E9000C00778B1FFE79DF818000007002808D5C3 -:100EA000FFE709980168082048600998416D884764 -:100EB000FFE7FFE79DF81D000006002840F18D8048 -:100EC000FFE79DF818004007002840F18180FFE708 -:100ED0009DF81D00C00750B1FFE79DF80800C0074E -:100EE00028B1FFE7089840F001000890FFE79DF85F -:100EF0001D00800700280BD5FFE79DF8080080073C -:100F0000002805D5FFE7089840F002000890FFE7A9 -:100F10009DF81D00400700280BD5FFE79DF808004D -:100F20004007002805D5FFE7089840F00400089026 -:100F3000FFE79DF81D000007002848D5FFE79DF852 -:100F4000080010F0700F42D0FFE7029800F0700028 -:100F500001460191102814D0FFE70198202815D0F0 -:100F6000FFE70198302816D0FFE70198402817D0F6 -:100F7000FFE70198502818D0FFE70198602819D0A2 -:100F80001DE0089840F00800089019E0089840F02B -:100F90001000089014E0089840F0200008900FE03E -:100FA000089840F0400008900AE0089840F080005F -:100FB000089005E0089840F48070089000E0FFE792 -:100FC00009980168886920F070008861FFE7FFE7F1 -:100FD0000998016804204860FFE7089848B1FFE7D6 -:100FE000089A0999486A104348620998816D8847B0 -:100FF000FFE70AB080BD000080B584B0029002987F -:1010000020B9FFE701208DF80F003AE1029890F82F -:10101000200000285DD1FFE7029941F25150C0F64F -:1010200000000864029941F24950C0F6000048648B -:10103000029941F26150C0F600008864029941F2C1 -:101040005950C0F60000C864029941F20560C0F62C -:1010500000008862029941F21560C0F60000C86283 -:10106000029941F22560C0F600000863029941F23E -:10107000FD50C0F600004863029941F20D60C0F6D1 -:1010800000008863029941F21D60C0F60000C86349 -:10109000029941F26950C0F600000865029941F2D8 -:1010A000F570C0F600004865029940F65100C0F6A0 -:1010B000000088650298C06D38B9FFE7029941F2D7 -:1010C000E520C0F60000C865FFE70298C16D8847BB -:1010D000FFE702980168086840F00100086000F02E -:1010E000EDFD0190FFE7029800684068C007A8B9CD -:1010F000FFE700F0E3FD0199401A0B280DD3FFE74D -:101100000299486A40F4003048620299052081F84B -:10111000200001208DF80F00B3E0E4E70298016899 -:10112000086820F00200086000F0C8FD0190FFE7A9 -:101130000298006840688007002815D5FFE700F096 -:10114000BDFD0199401A0B280DD3FFE70299486AAB -:1011500040F4003048620299052081F82000012007 -:101160008DF80F008DE0E3E70298007E012807D19B -:10117000FFE702980168086840F08000086006E018 -:1011800002980168086820F080000860FFE7029874 -:10119000407E012807D1FFE702980168086840F007 -:1011A0004000086006E002980168086820F04000EE -:1011B0000860FFE70298807E012807D1FFE70298C8 -:1011C0000168086840F02000086006E002980168A5 -:1011D000086820F020000860FFE70298C07E012820 -:1011E00007D1FFE702980168086820F01000086046 -:1011F00006E002980168086840F010000860FFE708 -:101200000298007F012807D1FFE70298016808686B -:1012100040F00800086006E002980168086820F0C5 -:1012200008000860FFE70298407F012807D1FFE728 -:1012300002980168086840F00400086006E002981F -:101240000168086820F004000860FFE7029B196845 -:101250005A689868D3F80CC040EA0C00D3F810C064 -:1012600040EA0C005B691843013A1043C8610299D7 -:1012700000204862029A012182F820108DF80F00A8 -:10128000FFE79DF80F0004B080BD000080B582B07C -:1012900001900198006846F20041C4F200018842C2 -:1012A0001DD1FFE741F21C01C4F20201086820F0E1 -:1012B0000070086040F60000C4F201004FF4C05115 -:1012C00000F09CFA132000F07BFD142000F078FD64 -:1012D000152000F075FD162000F072FDFFE702B04A -:1012E00080BD000080B58EB00D9000200C900B905A -:1012F0000A9009900D98006846F20041C4F200017E -:1013000088425ED1FFE7FFE741F21C00C4F2020011 -:10131000016841F000710160006800F00070089001 -:101320000898FFE7FFE741F21800C4F202000168E5 -:1013300041F004010160006800F004000790079884 -:10134000FFE74FF400600990002005900A900B9091 -:1013500040F60000C4F20100009009A9019100F0DC -:101360001DFB009801994FF48052099202220A92C3 -:1013700003220C9200F012FB059A132002901146F2 -:1013800000F032FD029800F025FD059A142003902C -:10139000114600F029FD039800F01CFD059A152068 -:1013A0000490114600F020FD049800F013FD059A0A -:1013B00016200690114600F017FD069800F00AFD71 -:1013C000FFE70EB080BD000087B005908DF81310C8 -:1013D000039200208DF80B00039848B9FFE70599A8 -:1013E000486A40F48000486201208DF81B00A6E0A6 -:1013F000059890F82000012870D1FFE79DF81300B0 -:10140000014601910E285FD801990FF2080000EB08 -:101410008100874600F01CB800F01EB800F020B82C -:1014200000F022B800F024B800F026B800F028B888 -:1014300000F02AB800F02CB800F02EB800F030B858 -:1014400000F032B800F034B800F036B800F038B828 -:1014500003980599886240E003980599C8623CE0CA -:1014600003980599086338E003980599486334E0C8 -:1014700003980599886330E003980599C8632CE0C8 -:1014800003980599086428E003980599486424E0C6 -:1014900003980599886420E003980599C8641CE0C6 -:1014A00003980599086518E003980599486514E0C4 -:1014B00003980599886510E003980599C8650CE0C4 -:1014C00003980599086608E00599486A40F4800089 -:1014D000486201208DF80B00FFE72BE0059890F89B -:1014E0002000E8B9FFE79DF81300014600910D28A0 -:1014F00004D0FFE700980E2804D007E00398059970 -:10150000C8650CE003980599086608E00599486AE3 -:1015100040F48000486201208DF80B00FFE708E0EE -:101520000599486A40F48000486201208DF80B005C -:10153000FFE7FFE79DF80B008DF81B00FFE79DF824 -:101540001B0007B07047000081B0009001B07047E9 -:1015500081B0009001B0704781B0009001B0704739 -:1015600081B0009001B0704781B0009001B0704729 -:1015700080B584B00290029890F8200001282FD105 -:10158000FFE70299022081F82000029801680868AC -:1015900020F00100086000F091FB0190FFE7029845 -:1015A00000684068C007A8B1FFE700F087FB019919 -:1015B000401A0B280DD3FFE70299486A40F4003027 -:1015C00048620299052081F8200001208DF80F0063 -:1015D0000FE0E4E70299002048628DF80F0008E070 -:1015E0000299486A40F40020486201208DF80F00FB -:1015F000FFE79DF80F0004B080BD000081B00090AF -:1016000001B0704781B0009001B0704781B0009088 -:1016100001B0704781B0009001B0704781B0009078 -:1016200001B0704781B0009001B0704784B0039062 -:101630008DF80B1000208DF80A00039890F8200018 -:10164000012840F0A080FFE79DF80B0001460191C2 -:101650000E2800F28E8001990FF2080000EB810045 -:10166000874600BF00F01CB800F021B800F026B893 -:1016700000F02BB800F030B800F035B800F03AB800 -:1016800000F03FB800F044B800F049B800F04EB8A0 -:1016900000F053B800F058B800F05DB800F062B840 -:1016A000039941F20560C0F6000088626AE0039980 -:1016B00041F21560C0F60000C86263E0039941F290 -:1016C0002560C0F6000008635CE0039941F2FD501C -:1016D000C0F60000486355E0039941F20D60C0F682 -:1016E000000088634EE0039941F21D60C0F60000DF -:1016F000C86347E0039941F25150C0F60000086406 -:1017000040E0039941F24950C0F60000486439E0D6 -:10171000039941F26150C0F60000886432E00399F9 -:1017200041F25950C0F60000C8642BE0039941F221 -:101730006950C0F60000086524E0039941F2F57095 -:10174000C0F6000048651DE0039940F65100C0F660 -:101750000000886516E0039941F2E520C0F600001C -:10176000C8650FE0039941F28D20C0F600000866BD -:1017700008E00399486A40F48000486201208DF82F -:101780000A00FFE731E0039890F8200018BBFFE75C -:101790009DF80B00014600910D2804D0FFE700984A -:1017A0000E2807D00DE0039941F2E520C0F60000B5 -:1017B000C8650FE0039941F28D20C0F6000008666D -:1017C00008E00399486A40F48000486201208DF8DF -:1017D0000A00FFE708E00399486A40F48000486285 -:1017E00001208DF80A00FFE7FFE79DF80A0004B02A -:1017F0007047000081B0009001B070478DB00C9030 -:101800000B9100200A90FFE70B980A99C840002826 -:1018100000F0C180FFE70B980A9A0121914008402F -:1018200009900998002800F0B280FFE70A9820F09C -:1018300003000821C4F20101405808900A9800F002 -:10184000030081000F2000FA01F108980840089079 -:10185000089805900C9840F60001C4F201018842F6 -:1018600003D1FFE70020049026E00C9840F60041E9 -:10187000C4F20101884203D1FFE70120039018E080 -:101880000C9841F20001C4F20101884203D1FFE744 -:10189000022002900AE00C9941F20042C4F20102D7 -:1018A0000420914208BF03200290FFE702980390B2 -:1018B000FFE703980490FFE7059804990A9A02F05D -:1018C000030292009140884232D1FFE7099A40F228 -:1018D0000041C4F20101086890430860099A40F28F -:1018E0000441C4F20101086890430860099A40F27B -:1018F0000C41C4F20101086890430860099A40F263 -:101900000841C4F201010868904308600A9800F099 -:10191000030081000F2088400890089B0A9820F05F -:1019200003010822C4F20102885898438850FFE757 -:101930000998FF2803D8FFE70C98019003E00C9862 -:1019400004300190FFE7019807900998FF2804D818 -:10195000FFE70A988000009006E00A996FF01F00E8 -:1019600000EB81000090FFE7009806900798006860 -:10197000069A0F219140884304219140084307991A -:101980000860099A0C99C8689043C860FFE70A98F4 -:1019900001300A9038E70DB07047000090B00F900A -:1019A0000E9100200D900990FFE70E9800680D99A8 -:1019B000C840002800F07F81FFE70D990120884092 -:1019C0000C900E9800680C9908400B900B980C999D -:1019D000884240F06C81FFE70E984068059000282F -:1019E00051D0FFE7059801283AD0FFE70598022873 -:1019F0003FD0FFE7059803285FD0FFE7059811283F -:101A000032D0FFE70598122838D0FFE7059800216B -:101A1000C1F21101884236D0FFE705980021C1F2DA -:101A2000120188422FD0FFE705980021C1F2210161 -:101A3000884228D0FFE705980021C1F222018842A0 -:101A400021D0FFE705980021C1F2310188421AD068 -:101A5000FFE705980021C1F23201884213D02FE040 -:101A60000E98C06809902CE00E98C0680430099068 -:101A700027E00E98C0680830099022E00E98C068F0 -:101A80000C3009901DE00E98806818B9FFE704201B -:101A9000099011E00E988068012806D1FFE7082020 -:101AA00009900C980F99086105E0082009900C989E -:101AB0000F994861FFE7FFE703E00020099000E08D -:101AC000FFE70B98FF2803D8FFE70F98049003E087 -:101AD0000F9804300490FFE7049808900B98FF28B3 -:101AE00004D8FFE70D988000039006E00D996FF091 -:101AF0001F0000EB81000390FFE703980790089810 -:101B00000068079A0F219140884309999140084342 -:101B1000089908600E98C079C006002840F1C68078 -:101B2000FFE7FFE741F21800C4F20200016841F04C -:101B300001010160006800F0010006900698FFE7CF -:101B40000D9820F003000821C4F2010140580A90CA -:101B50000D9800F0030081000F2000FA01F10A98AF -:101B600088430A900F9840F60001C4F201018842B0 -:101B700003D1FFE70020029026E00F9840F60041D5 -:101B8000C4F20101884203D1FFE70120019018E06F -:101B90000F9841F20001C4F20101884203D1FFE72E -:101BA000022000900AE00F9941F20042C4F20102C3 -:101BB0000420914208BF03200090FFE700980190A5 -:101BC000FFE701980290FFE702980D9901F00301E9 -:101BD000890000FA01F10A9808430A900A980D99C1 -:101BE00021F003010822C4F2010288500E98807986 -:101BF000C006002809D5FFE70B9A40F20841C4F25D -:101C0000010108681043086008E00B9A40F208419F -:101C1000C4F20101086890430860FFE70E988079DC -:101C20008006002809D5FFE70B9A40F20C41C4F268 -:101C3000010108681043086008E00B9A40F20C416B -:101C4000C4F20101086890430860FFE70E988079AC -:101C50008007002809D5FFE70B9A40F20441C4F23F -:101C6000010108681043086008E00B9A40F2044143 -:101C7000C4F20101086890430860FFE70E9880797C -:101C8000C00748B1FFE70B9A40F20041C4F20101DE -:101C900008681043086008E00B9A40F20041C4F263 -:101CA0000101086890430860FFE7FFE7FFE70D9830 -:101CB00001300D9079E610B07047000041F22840E5 -:101CC000C2F200000068704740F21C00C2F200003F -:101CD000027841F22841C2F200010868104408600D -:101CE0007047000080B542F20001C4F202010868AA -:101CF00040F010000860032000F090F80F2000F082 -:101D000005F800F03BF8002080BD000080B582B0EF -:101D1000009040F20400C2F20000006840F21C0192 -:101D2000C2F200010A784FF47A71B1FBF2F1B0FB14 -:101D3000F1F001F0BDFA20B1FFE701208DF80700B6 -:101D400018E000980F280DD8FFE700994FF0FF30FA -:101D5000002200F049F8009840F22001C2F2000190 -:101D6000086003E001208DF8070003E000208DF8F3 -:101D70000700FFE79DF8070002B080BD82B0FFE7D3 -:101D800041F21800C4F20200016841F00101016053 -:101D9000006800F0010001900198FFE7FFE741F2C1 -:101DA0001C00C4F20200016841F08051016000682B -:101DB00000F0805000900098FFE702B070470000EC -:101DC00080B582B08DF807009DF9070004F00CFA89 -:101DD00002B080BD80B582B08DF807009DF9070084 -:101DE00004F01EFA02B080BD80B586B08DF81700F1 -:101DF000049103920020029004F02AFA02909DF9C7 -:101E00001700019002980499039A02F017FA01460C -:101E1000019804F025FA06B080BD000080B582B0BC -:101E20000190019804F03EFA02B080BD2021C4F276 -:101E30000E2101200860704780B588B0079000200F -:101E40000690059004900390029007980190012855 -:101E500066D0FFE70198022800F0A580FFE701980F -:101E6000102840F0B080FFE741F20400C4F2020005 -:101E70000068039041F20000C4F202000068C00153 -:101E800000284CD5FFE70398C0F3834146F2E830C1 -:101E9000C0F60000405C04909DF80E00C007F0B151 -:101EA000FFE741F20400C4F202000068C0F34041C1 -:101EB00046F2F830C0F60000405C06909DF80E0037 -:101EC000C00758B1FFE7069941F20020C0F27A003E -:101ED000B0FBF1F0049948430590FFE707E0049850 -:101EE00040F60011C0F23D0148430590FFE741F282 -:101EF0000400C4F2020000684002002803D5FFE796 -:101F0000059802900AE0059840004AF6AB21CAF60F -:101F1000AA21A0FB011040080290FFE7FFE753E071 -:101F200041F22000C4F2020000680390039800F41C -:101F30004070B0F5807F0AD1FFE79DF80C00800764 -:101F4000002804D5FFE74FF4004002902AE00398F0 -:101F500000F44070B0F5007F0DD1FFE741F224009E -:101F6000C4F2020000688007002804D5FFE749F6A4 -:101F70004040029015E0039800F44070B0F5407FB7 -:101F80000DD1FFE741F20000C4F2020000688003B7 -:101F9000002804D5FFE74FF22440029000E0FFE75D -:101FA000FFE7FFE710E000F029FA41F20401C4F274 -:101FB0000201096801F44042022101EB5231B0FBF9 -:101FC000F1F0029000E0FFE7029808B080BD000049 -:101FD00080B586B0049000200390029004980078A9 -:101FE000C007002800F0AC80FFE700208DF8070054 -:101FF00041F21C00C4F202000068C000002813D4A3 -:10200000FFE7FFE741F21C00C4F20200016841F063 -:1020100080510160006800F0805000900098FFE758 -:1020200001208DF80700FFE747F20000C4F200002E -:102030000068C005002822D4FFE747F20001C4F27F -:102040000001086840F480700860FFF737FE0390D5 -:10205000FFE747F20000C4F200000068C005002856 -:102060000CD4FFE7FFF72AFE0399401A652804D332 -:10207000FFE703208DF817008AE0EAE7FFE741F267 -:102080002000C4F20200006800F440700290029840 -:10209000E0B3FFE702980499496801F4407188426F -:1020A00034D0FFE741F22001C4F20201086820F4B5 -:1020B0004070029040F24042C4F24222012010607F -:1020C00000201060029808609DF80800C007E0B189 -:1020D000FFE7FFF7F3FD0390FFE741F22000C4F2B2 -:1020E00002000068800700280ED4FFE7FFF7E6FD36 -:1020F0000399401A41F28931884204D3FFE7032053 -:102100008DF8170044E0E8E7FFE7FFE741F2200120 -:10211000C4F20201086820F44070049A5268104327 -:1021200008609DF80700012809D1FFE741F21C0172 -:10213000C4F20201086820F080500860FFE7FFE762 -:1021400004980078800700280CD5FFE741F20401CD -:10215000C4F20201086820F44040049A92681043D7 -:102160000860FFE704980078C00600280CD5FFE758 -:1021700041F20401C4F20201086820F48000049ACC -:10218000D26810430860FFE700208DF81700FFE7D2 -:102190009DF8170006B080BD80B584B00290019113 -:1021A000029820B9FFE701208DF80F001BE101988C -:1021B00042F20001C4F20201096801F007018842FD -:1021C00016D9FFE742F20000C4F20200016821F0D4 -:1021D0000701019A11430160006800F007000199AE -:1021E000884204D0FFE701208DF80F00FBE0FFE7F5 -:1021F00002980078800700282AD5FFE70298007827 -:102200004007002809D5FFE741F20401C4F20201AA -:10221000086840F4E0600860FFE702980078000773 -:10222000002809D5FFE741F20401C4F20201086861 -:1022300040F460500860FFE741F20401C4F202017B -:10224000086820F0F000029A926810430860FFE7E7 -:1022500002980078C007002860D0FFE70298406825 -:1022600001280ED1FFE741F20000C4F2020000682D -:102270008003002804D4FFE701208DF80F00B2E0AE -:1022800021E00298406802280ED1FFE741F20000E9 -:10229000C4F2020000688001002804D4FFE7012096 -:1022A0008DF80F009FE00DE041F20000C4F2020043 -:1022B00000688007002804D4FFE701208DF80F0094 -:1022C00091E0FFE7FFE741F20401C4F20201086870 -:1022D00020F00300029A526810430860FFF7EEFCFA -:1022E0000090FFE741F20400C4F20200006800F031 -:1022F0000C0002994968B0EB810F0ED0FFE7FFF7A1 -:10230000DDFC0099401A41F28931884204D3FFE78D -:1023100003208DF80F0066E0E4E7FFE7019842F242 -:102320000001C4F20201096801F00701884216D2D7 -:10233000FFE742F20000C4F20200016821F0070149 -:10234000019A11430160006800F00700019988427A -:1023500004D0FFE701208DF80F0044E0FFE702986A -:102360000078400700280CD5FFE741F20401C4F2D1 -:102370000201086820F4E060029AD2681043086005 -:10238000FFE702980078000700280DD5FFE741F22B -:102390000401C4F20201086820F46050029A126934 -:1023A00040EAC2000860FFE700F03AF841F2040199 -:1023B000C4F202010968C9B20A0946F2D031C0F676 -:1023C0000001895CC84040F20401C2F200010860CB -:1023D00040F22000C2F200000068FFF797FC0020E6 -:1023E0008DF80F00FFE79DF80F0004B080BD0000DE -:1023F00040F20400C2F200000068704780B5FFF7A9 -:10240000F7FF41F20401C4F202010968C1F3C222DC -:1024100046F2E031C0F60001895CC84080BD000092 -:1024200086B000200590049003900290019041F244 -:102430000400C4F2020000680590059800F00C004A -:102440000146009100283FD0FFE70098042804D0FF -:10245000FFE70098082806D037E041F20020C0F2DC -:102460007A00019037E00598C0F3834146F2FA30D4 -:10247000C0F60000405C02909DF81600C007C0B195 -:10248000FFE741F20400C4F202000068C0F34041DB -:1024900046F20A40C0F60000405C0490029841F207 -:1024A0000021C0F27A0148430499B0FBF1F0039097 -:1024B00007E0029840F60011C0F23D014843039046 -:1024C000FFE70398019006E0FFE741F20020C0F229 -:1024D0007A000190FFE7019806B0704780B588B098 -:1024E00007900691059200200490039002900190BD -:1024F000022102910321049103904FF48070019016 -:10250000FFE741F21800C4F20200016841F0040143 -:102510000160006800F0040000900098FFE740F6BA -:102520000000C4F2010001A9FFF738FA41F20401EA -:10253000C4F20201086820F0E060069A10430860C7 -:1025400008B080BD80B586B00490049820B9FFE73C -:1025500001208DF817002EE304980078C0070028AA -:1025600000F0AE80FFE741F20400C4F20200006810 -:1025700000F00C00042813D0FFE741F20400C4F27D -:102580000200006800F00C0008281BD1FFE741F2B0 -:102590000400C4F202000068C003002812D5FFE75F -:1025A00041F20000C4F2020000688003002808D550 -:1025B000FFE70498406820B9FFE701208DF8170075 -:1025C000F9E27CE0FFE704984068B0F5803F09D16C -:1025D000FFE741F20001C4F20201086840F48030D4 -:1025E000086032E00498406868B9FFE741F20001F2 -:1025F000C4F20201086820F480300860086820F402 -:102600008020086020E004984068B0F5A02F0DD12C -:10261000FFE741F20001C4F20201086840F48020A3 -:102620000860086840F4803008600CE041F2000166 -:10263000C4F20201086820F480300860086820F4C1 -:1026400080200860FFE7FFE7FFE7FFE704984068A6 -:10265000D0B1FFE7FFF732FB0390FFE741F2000044 -:10266000C4F202000068800300280CD4FFE7FFF7E3 -:1026700025FB0399401A652804D3FFE703208DF852 -:10268000170098E2EAE719E0FFF718FB0390FFE76D -:1026900041F20000C4F202000068800300280CD55B -:1026A000FFE7FFF70BFB0399401A652804D3FFE708 -:1026B00003208DF817007EE2EAE7FFE7FFE7FFE778 -:1026C000049800788007002840F18D80FFE741F2F0 -:1026D0000400C4F20200006810F00C0F13D0FFE7F2 -:1026E00041F20400C4F20200006800F00C00082867 -:1026F00029D1FFE741F20400C4F202000068C003E0 -:10270000002820D4FFE741F20000C4F20200006874 -:102710008007002809D5FFE704980069012804D044 -:10272000FFE701208DF8170045E241F20001C4F2F5 -:102730000201086820F0F800049A526940EAC200D9 -:102740000860FFE74EE00498006958B3FFE70021F6 -:10275000C4F2422101200860FFF7B0FA0390FFE7BE -:1027600041F20000C4F202000068800700280CD487 -:10277000FFE7FFF7A3FA0399401A032804D3FFE702 -:1027800003208DF8170016E2EAE741F20001C4F2D7 -:102790000201086820F0F800049A526940EAC20079 -:1027A00008601EE00021C4F2422100200860FFF70B -:1027B00085FA0390FFE741F20000C4F202000068CE -:1027C000800700280CD5FFE7FFF778FA0399401A35 -:1027D000032804D3FFE703208DF81700EBE1EAE7B5 -:1027E000FFE7FFE7FFE7049800780007002848D5D7 -:1027F000FFE70498806918B3FFE740F28041C4F214 -:10280000422101200860FFF759FA0390FFE741F2E7 -:102810002400C4F202000068800700280CD4FFE7FF -:10282000FFF74CFA0399401A032804D3FFE703206B -:102830008DF81700BFE1EAE7012002F0C7FF1FE0B3 -:1028400040F28041C4F2422100200860FFF736FACE -:102850000390FFE741F22400C4F202000068800701 -:1028600000280CD5FFE7FFF729FA0399401A03283F -:1028700004D3FFE703208DF817009CE1EAE7FFE7A8 -:10288000FFE7049800784007002840F1D880FFE770 -:1028900000208DF8070041F21C00C4F2020000681D -:1028A000C000002813D4FFE7FFE741F21C00C4F288 -:1028B0000200016841F080510160006800F0805022 -:1028C00000900098FFE701208DF80700FFE747F22E -:1028D0000000C4F200000068C005002822D4FFE711 -:1028E00047F20001C4F20001086840F480700860FB -:1028F000FFF7E4F90390FFE747F20000C4F200009D -:102900000068C00500280CD4FFE7FFF7D7F903994A -:10291000401A652804D3FFE703208DF817004AE129 -:10292000EAE7FFE7FFE70498C068012809D1FFE75D -:1029300041F22001C4F20201086840F00100086081 -:1029400031E00498C06868B9FFE741F22001C4F2A1 -:102950000201086820F001000860086820F0040007 -:1029600008601FE00498C06805280DD1FFE741F218 -:102970002001C4F20201086840F004000860086801 -:1029800040F0010008600CE041F22001C4F20201B5 -:10299000086820F001000860086820F00400086062 -:1029A000FFE7FFE7FFE7FFE70498C068E0B1FFE754 -:1029B000FFF784F90390FFE741F22000C4F2020020 -:1029C0000068800700280ED4FFE7FFF777F9039926 -:1029D000401A41F28931884204D3FFE703208DF881 -:1029E0001700E8E0E8E71BE0FFF768F90390FFE76E -:1029F00041F22000C4F202000068800700280ED5D2 -:102A0000FFE7FFF75BF90399401A41F289318842E9 -:102A100004D3FFE703208DF81700CCE0E8E7FFE7D9 -:102A20009DF80700012809D1FFE741F21C01C4F21B -:102A30000201086820F080500860FFE7FFE7049873 -:102A4000C069002800F0B380FFE741F20400C4F23F -:102A50000200006800F00C00082800F08280FFE708 -:102A60000498C06902285CD1FFE76021C4F24221CA -:102A700000200860FFF722F90390FFE741F2000011 -:102A8000C4F202000068800100280CD5FFE7FFF7C0 -:102A900015F90399401A032804D3FFE703208DF8A2 -:102AA000170088E0EAE70498006AB0F5803F0CD18F -:102AB000FFE741F20401C4F20201086820F400308B -:102AC000049A926810430860FFE741F20401C4F2DF -:102AD0000201086820F47410049B1A6A5B6A1A43A6 -:102AE000104308606021C4F2422101200860FFF712 -:102AF000E5F80390FFE741F20000C4F2020000682D -:102B0000800100280CD4FFE7FFF7D8F80399401A9A -:102B1000032804D3FFE703208DF817004BE0EAE712 -:102B20001EE06021C4F2422100200860FFF7C6F8D1 -:102B30000390FFE741F20000C4F202000068800148 -:102B400000280CD5FFE7FFF7B9F80399401A0328CE -:102B500004D3FFE703208DF817002CE0EAE7FFE736 -:102B600024E00498C069012804D1FFE701208DF812 -:102B7000170020E041F20400C4F202000068029055 -:102B8000029800F480300499096A884208D1FFE76E -:102B9000029800F470100499496A884204D0FFE753 -:102BA00001208DF8170006E0FFE7FFE7FFE70020B0 -:102BB0008DF81700FFE79DF8170006B080BD0000F4 -:102BC00080B586B004900391029200208DF8060033 -:102BD000ADF80400049818B1FFE7039820B9FFE7A7 -:102BE00001208DF8170034E0049801A9002200F0BC -:102BF00035F820B1FFE701208DF8170029E004988F -:102C0000007B039908700498C07B0399C8700498EE -:102C1000407B039948700498807B039988700298E0 -:102C200098B1FFE70398C07802F004FE0399C870DA -:102C30000398407802F0FEFD03994870039880786D -:102C400002F0F8FD03998870FFE700208DF8170067 -:102C5000FFE79DF8170006B080BD000080B588B082 -:102C6000069005910492002003900290019000903C -:102C7000069818B1FFE7059820B9FFE701208DF805 -:102C80001F00C0E00698006840684007002803D590 -:102C9000FFE7012018B906E0012020B9FFE7012075 -:102CA0008DF81F00AFE0069802F04AFF03900399E9 -:102CB0004BF2C530C9F2A210A1FB0021C90A009154 -:102CC000039BA3FB0021C90A4FF4616201FB12338D -:102CD00048F68901C8F68801A3FB01C35B09DDF84A -:102CE00014C08CF80130039BA3FB00C0C00A00FB9A -:102CF0001230A0FB011251090901A1EB5211A0EB06 -:102D0000810005998870009818285ED3FFE7009825 -:102D10004AF6AB21CAF6AA21A0FB012000090190C6 -:102D20000098A0FB0121090901EB4101A0EBC100C2 -:102D300005990870069802F0E9FE029002980130A9 -:102D400050B1FFE702980399884205D9FFE703993C -:102D50000298401A029003E04FF0FF300290FFE724 -:102D6000019840F2A32141430398A0EBC1100390C6 -:102D70000698039902F0B4FF20B1FFE701208DF817 -:102D80001F0040E00298013078B1FFE703990298F4 -:102D9000084402900698029902F07AFF20B1FFE7FA -:102DA00001208DF81F002EE00AE00698029902F03B -:102DB0006FFF20B1FFE701208DF81F0023E0FFE740 -:102DC0000698019902F054FD03E0009805990870F7 -:102DD000FFE7049898B1FFE70598007802F02AFD14 -:102DE000059908700598407802F024FD059948700F -:102DF0000598807802F01EFD05998870FFE7002095 -:102E00008DF81F00FFE79DF81F0008B080BD00008F -:102E100080B584B0029000200190029820B9FFE7AD -:102E200001208DF80F0084E00298407C38B9FFE75C -:102E3000029900200874029800F080F8FFE70299D8 -:102E400002204874029800F001FA38B1FFE70299B5 -:102E50000420487401208DF80F006AE0029802F007 -:102E6000C1FD38B1FFE702990420487401208DF8B4 -:102E70000F005EE002980168486820F00700486093 -:102E80000298806848B1FFE746F63041C4F200017D -:102E9000086820F001000860FFE746F62C41C4F204 -:102EA0000001086820F46070029A9268104308607C -:102EB00002984068013020B1FFE702984068019015 -:102EC00012E00120FEF7B8FF0190019838B9FFE742 -:102ED00002990420487401208DF80F0029E0019820 -:102EE00001380190FFE7FFE7BDF8060000F00F0092 -:102EF000029909688860BDF8040002990968C860F1 -:102F0000029802F09BFD38B1FFE702990420487453 -:102F100001208DF80F000CE002990020C873029A7E -:102F200001215173029A9173029A51748DF80F0026 -:102F3000FFE79DF80F0004B080BD000080B582B0AF -:102F400001900198006842F60001C4F20001884235 -:102F500018D1FFE7FEF76AFFFFE741F21C00C4F259 -:102F60000200016841F000610160006800F000604B -:102F700000900098FFE740F23C41C4F2422101205A -:102F80000860FFE702B080BD80B588B0069005916B -:102F900004920020039002900190069818B1FFE778 -:102FA000059820B9FFE701208DF81F00A7E0FFE793 -:102FB0000698007C012804D1FFE702208DF81F004D -:102FC0009DE0069901200874FFE7FFE706990220BB -:102FD0004874049868B9FFE70598C0780699C873E3 -:102FE0000598407806994873059880780699887303 -:102FF00012E00598C07802F007FC0699C87305989E -:10300000407802F001FC069948730598807802F038 -:10301000FBFB06998873FFE70698417B827BC07BA8 -:1030200002F0C4FD069908730698007B05990870A4 -:10303000069802F085FD039003984BF2C531C9F262 -:10304000A211A0FB0110C00A0190019819284AD3CF -:10305000FFE701984AF6AB21CAF6AA21A0FB0110AE -:10306000000940F2A32141430398A0EBC110039053 -:103070000698039902F034FE60B1FFE70699042038 -:103080004874FFE7069900200874FFE701208DF8D7 -:103090001F0034E0069802F039FD029002980130DA -:1030A00000B3FFE70298039988421AD2FFE702981B -:1030B00045F28011C0F2010108440290069802997D -:1030C00002F0E6FD60B1FFE7069904204874FFE7CF -:1030D000069900200874FFE701208DF81F000EE01C -:1030E000FFE7FFE7FFE7069901204874FFE706992D -:1030F00000200874FFE700208DF81F00FFE79DF80F -:103100001F0008B080BD000080B588B00690059112 -:103110000492002003900290069818B1FFE70598EA -:1031200020B9FFE701208DF81F008AE0FFE706982D -:10313000007C012804D1FFE702208DF81F0080E009 -:10314000069901200874FFE7FFE7069902204874FA -:10315000049870B9FFE7059908784A7889784FF4A0 -:1031600061635843C2EB021200EB820008440390F3 -:103170001BE00598007802F047FB4FF4616148437B -:1031800000900598407802F03FFB01460098C1EBA3 -:10319000011100EB810001900598807802F034FB6A -:1031A0000146019808440390FFE70698039902F04E -:1031B00097FD60B1FFE7069904204874FFE7069980 -:1031C00000200874FFE701208DF81F0039E0069801 -:1031D0000168486820F005004860069802F096FCF7 -:1031E00002900298013000B3FFE7029803998842E9 -:1031F0001AD2FFE7029845F28011C0F2010108449B -:1032000002900698029902F043FD60B1FFE706992B -:1032100004204874FFE7069900200874FFE70120A6 -:103220008DF81F000DE0FFE7FFE7069901204874C5 -:10323000FFE7069900200874FFE700208DF81F00C3 -:10324000FFE79DF81F0008B080BD000080B584B086 -:10325000029000200190029820B9FFE701208DF82C -:103260000F0021E002980168486820F008004860DB -:10327000FEF724FD0190FFE7029800684068000710 -:1032800000280DD4FFE7FEF719FD0199401AB0F5AB -:103290007A7F04D9FFE703208DF80F0004E0EBE705 -:1032A00000208DF80F00FFE79DF80F0004B080BDEF -:1032B00080B582B00190019802F03CFD02B080BD63 -:1032C00081B0009001B0704781B0009001B07047AC -:1032D00081B0009001B0704781B0009001B070479C -:1032E00081B0009001B0704785B003900291FFE774 -:1032F000039890F83C00012804D1FFE702208DF8E4 -:1033000013005BE00399012081F83C00FFE7FFE731 -:103310000399022081F83D000398006840680190FD -:103320000398006880680090019820F07000019078 -:10333000029801680198084301900198039909686F -:1033400048600398006842F60041C4F201018842D7 -:1033500018D0FFE703980068B0F1804F12D0FFE764 -:103360000398006840F20041C4F20001884209D08D -:10337000FFE70398006840F60001C4F200018842AC -:103380000ED1FFE7009820F080000090029841687D -:103390000098084300900098039909688860FFE747 -:1033A0000399012081F83D00FFE70399002081F88F -:1033B0003C00FFE700208DF81300FFE79DF81300A5 -:1033C00005B0704780B582B00090009820B9FFE743 -:1033D00001208DF807004DE0009890F83D00B0B94D -:1033E000FFE70099002081F83C00009802F0D0FD32 -:1033F0000098806C38B9FFE7009943F2B140C0F6FD -:1034000000008864FFE70098816C8847FFE7009917 -:10341000022081F83D00009951F8040B02F010FDE4 -:103420000099012081F84600FFE70099012081F80A -:103430003E00009981F83F00009981F84000009912 -:1034400081F84100FFE7FFE70099012081F8420081 -:10345000009981F84300009981F84400009981F8AF -:103460004500FFE70099012081F83D0000208DF81C -:103470000700FFE79DF8070002B080BD80B582B06D -:1034800001900198006840F60001C4F200018842F2 -:103490000CD1FFE741F21C01C4F20201086820F0E0 -:1034A000040008601E20FEF78BFCFFE702B080BD21 -:1034B00080B584B003900398006840F60001C4F220 -:1034C0000001884219D1FFE7FFE741F21C00C4F276 -:1034D0000200016841F004010160006800F004008E -:1034E00002900298FFE71E20019000221146FEF78D -:1034F0007BFC0198FEF76EFCFFE704B080BD000086 -:1035000080B586B00490039100208DF80B00FFE792 -:10351000049890F83C00012804D1FFE702208DF8C0 -:103520001700ABE00499012081F83C00FFE7FFE7BA -:103530000499022081F83D00049800688068019099 -:10354000019820F077000190019820F47F400190CD -:103550000198049909688860039800680090002821 -:1035600072D0FFE7009810286ED0FFE7009820285F -:103570006AD0FFE70098302866D0FFE7009840281F -:1035800055D0FFE70098502837D0FFE70098602813 -:1035900040D0FFE7009870280BD0FFE70098B0F507 -:1035A000805F05D0FFE70098B0F5005F16D052E0CD -:1035B00055E004980068039B5A689968DB6802F03C -:1035C000B7FC0498006880680190019840F077008B -:1035D0000190019804990968886040E004980068A7 -:1035E000039B5A689968DB6802F0A2FC04980168A2 -:1035F000886840F48040886031E004980068039A4D -:103600005168D26802F024FD04980068502102F04D -:10361000A9FC24E004980068039A5168D26802F07B -:103620003FFD04980068602102F09CFC17E00498BC -:103630000068039A5168D26802F00AFD0498006895 -:10364000402102F08FFC0AE00498006803990968A1 -:1036500002F088FC03E001208DF80B00FFE70499DD -:10366000012081F83D00FFE70499002081F83C002B -:10367000FFE79DF80B008DF81700FFE79DF8170096 -:1036800006B080BD81B0009001B0704781B000905D -:1036900001B0704781B0009001B0704781B00090D8 -:1036A00001B0704781B0009001B0704781B00090C8 -:1036B00001B0704781B0009001B0704780B582B012 -:1036C000019001980068006900F002010020B0EB51 -:1036D000510F2BD0FFE701980068C06800F002018D -:1036E0000020B0EB510F20D0FFE7019801686FF088 -:1036F000020008610199012008770198006880693B -:10370000800728B1FFE70198D0F89010884708E0BB -:103710000198D0F8981088470198D0F89C108847F5 -:10372000FFE7019900200877FFE7FFE701980068AD -:10373000006900F004010020B0EB910F2CD0FFE7EE -:1037400001980068C06800F004010020B0EB910F00 -:1037500021D0FFE7019801686FF00400086101992A -:103760000220087701980068806910F4407F05D036 -:10377000FFE70198D0F89010884708E00198D0F84A -:10378000981088470198D0F89C108847FFE7019966 -:1037900000200877FFE7FFE701980068006900F064 -:1037A00008010020B0EBD10F2BD0FFE70198006893 -:1037B000C06800F008010020B0EBD10F20D0FFE777 -:1037C000019801686FF008000861019904200877EA -:1037D00001980068C069800728B1FFE70198D0F818 -:1037E0009010884708E00198D0F898108847019811 -:1037F000D0F89C108847FFE7019900200877FFE781 -:10380000FFE701980068006900F010010020B0EBAC -:10381000111F2CD0FFE701980068C06800F010016C -:103820000020B0EB111F21D0FFE7019801686FF075 -:103830001000086101990820087701980068C069A4 -:1038400010F4407F05D0FFE70198D0F8901088472A -:1038500008E00198D0F8981088470198D0F89C109B -:103860008847FFE7019900200877FFE7FFE7019805 -:1038700000680069C00788B1FFE701980068C06868 -:10388000C00750B1FFE7019801686FF001000861BF -:103890000198D0F880108847FFE7FFE7019800689B -:1038A0000069C1B20020B0EBD11F14D0FFE701982E -:1038B0000068C068C1B20020B0EBD11F0AD0FFE79A -:1038C000019801686FF0800008610198D0F8B0108D -:1038D0008847FFE7FFE701980068006900F04001B2 -:1038E0000020B0EB911F15D0FFE701980068C06879 -:1038F00000F040010020B0EB911F0AD0FFE70198D3 -:1039000001686FF0400008610198D0F8881088477E -:10391000FFE7FFE701980068006900F02001002040 -:10392000B0EB511F15D0FFE701980068C06800F0A8 -:1039300020010020B0EB511F0AD0FFE70198016879 -:103940006FF0200008610198D0F8A8108847FFE7C1 -:10395000FFE702B080BD000081B0009001B0704769 -:1039600081B0009001B0704781B0009001B0704705 -:1039700081B0009001B0704781B0009001B07047F5 -:1039800081B0009001B0704781B0009001B07047E5 -:1039900081B0009001B0704781B0009001B07047D5 -:1039A00081B0009001B0704781B0009001B07047C5 -:1039B00087B005908DF81310039200208DF80B004E -:1039C000039820B9FFE701208DF81B003DE1059821 -:1039D00090F83D00012840F0C380FFE79DF81300F8 -:1039E000014601911A2800F2B68001990FF20800F1 -:1039F00000EB8100874600BF00F034B800F036B815 -:103A000000F038B800F03AB800F03CB800F03EB82A -:103A100000F040B800F042B800F044B800F046B8FA -:103A200000F048B800F04AB800F04CB800F04EB8CA -:103A300000F050B800F053B800F056B800F059B894 -:103A400000F05CB800F05FB800F062B800F065B854 -:103A500000F068B800F06BB800F06EB800F071B814 -:103A600000F074B803980599886478E00398059984 -:103A7000C86474E003980599086570E00398059997 -:103A800048656CE003980599886568E00398059996 -:103A9000C86564E003980599086660E00398059995 -:103AA00048665CE003980599886658E00398059994 -:103AB000C86654E003980599086750E00398059993 -:103AC00048674CE003980599886748E00398059992 -:103AD000C86744E003980599C1F880003FE0039867 -:103AE0000599C1F884003AE003980599C1F8880067 -:103AF00035E003980599C1F88C0030E003980599EA -:103B0000C1F890002BE003980599C1F8940026E0D5 -:103B100003980599C1F8980021E003980599C1F828 -:103B20009C001CE003980599C1F8A00017E00398D9 -:103B30000599C1F8A40012E003980599C1F8A800FE -:103B40000DE003980599C1F8AC0008E003980599C9 -:103B5000C1F8B00003E001208DF80B00FFE76FE033 -:103B6000059890F83D00002865D1FFE79DF8130007 -:103B7000014600910D2859D800990FF2080000EB7A -:103B80008100874600F01AB800F01CB800F01EB89B -:103B900000F020B800F022B800F024B800F026B8F9 -:103BA00000F028B800F02AB800F02CB800F02EB8C9 -:103BB00000F030B800F032B800F034B8039805993E -:103BC000886437E003980599C86433E00398059941 -:103BD00008652FE00398059948652BE0039805993F -:103BE000886527E003980599C86523E0039805993F -:103BF00008661FE00398059948661BE0039805993D -:103C0000886617E003980599C86613E0039805993C -:103C100008670FE00398059948670BE0039805993A -:103C2000886707E003980599C86703E001208DF8CD -:103C30000B00FFE703E001208DF80B00FFE7FFE733 -:103C40009DF80B008DF81B00FFE79DF81B0007B0E7 -:103C50007047000081B0009001B0704781B00090C3 -:103C600001B0704784B003908DF80B1000208DF8E0 -:103C70000A00039890F83D00012840F01481FFE706 -:103C80009DF80B00014601911A2800F20781019965 -:103C90000FF2080000EB8100874600BF00F034B847 -:103CA00000F039B800F03EB800F043B800F048B872 -:103CB00000F04DB800F052B800F057B800F05CB812 -:103CC00000F061B800F066B800F06BB800F070B8B2 -:103CD00000F075B800F07AB800F080B800F086B84F -:103CE00000F08CB800F092B800F098B800F09EB8E0 -:103CF00000F0A4B800F0AAB800F0B0B800F0B6B870 -:103D000000F0BCB800F0C2B8039943F2B140C0F66D -:103D100000008864C6E0039943F27D40C0F60000CD -:103D2000C864BFE0039943F2B560C0F600000865BF -:103D3000B8E0039943F2AD60C0F600004865B1E019 -:103D4000039943F66910C0F600008865AAE003995C -:103D500043F66110C0F60000C865A3E0039943F67E -:103D60008910C0F6000008669CE0039943F68110B4 -:103D7000C0F60000486695E0039943F67910C0F656 -:103D8000000088668EE0039943F67110C0F60000CB -:103D9000C86687E0039943F28D60C0F600000867AB -:103DA00080E0039943F28560C0F60000486779E03F -:103DB000039943F2E120C0F60000886772E003999E -:103DC00043F2D920C0F60000C8676BE0039943F6C0 -:103DD000A110C0F60000C1F8800063E0039943F62B -:103DE000A910C0F60000C1F884005BE0039943F617 -:103DF0005540C0F60000C1F8880053E0039943F62F -:103E00005D40C0F60000C1F88C004BE0039943F21E -:103E10009D60C0F60000C1F8900043E0039943F2B2 -:103E2000A560C0F60000C1F894003BE0039943F69A -:103E30005910C0F60000C1F8980033E0039943F62A -:103E40009110C0F60000C1F89C002BE0039943F6E6 -:103E50009910C0F60000C1F8A00023E0039943F2D6 -:103E60009560C0F60000C1F8A4001BE0039943F27E -:103E7000C920C0F60000C1F8A80013E0039943F27E -:103E8000D120C0F60000C1F8AC000BE0039943F26A -:103E9000C120C0F60000C1F8B00003E001208DF899 -:103EA0000A00FFE79CE0039890F83D00002840F0EE -:103EB0009280FFE79DF80B00014600910D2800F26B -:103EC000858000990FF2080000EB8100874600BF53 -:103ED00000F01AB800F01FB800F024B800F029B8BC -:103EE00000F02EB800F033B800F038B800F03DB85C -:103EF00000F042B800F047B800F04CB800F051B8FC -:103F000000F056B800F05BB8039943F2B140C0F638 -:103F1000000088645EE0039943F27D40C0F6000033 -:103F2000C86457E0039943F2B560C0F60000086525 -:103F300050E0039943F2AD60C0F60000486549E0E7 -:103F4000039943F66910C0F60000886542E00399C2 -:103F500043F66110C0F60000C8653BE0039943F6E4 -:103F60008910C0F60000086634E0039943F681101A -:103F7000C0F6000048662DE0039943F67910C0F6BC -:103F80000000886626E0039943F67110C0F6000031 -:103F9000C8661FE0039943F28D60C0F60000086711 -:103FA00018E0039943F28560C0F60000486711E00D -:103FB000039943F2E120C0F6000088670AE0039904 -:103FC00043F2D920C0F60000C86703E001208DF855 -:103FD0000A00FFE703E001208DF80A00FFE7FFE792 -:103FE0009DF80A0004B07047FFE7FEE783B08DF844 -:103FF0000B009DF80B0000F5FA608DF80B009DF8A2 -:104000000B1001204BF65003C0F21E5345F6294217 -:10401000CCF28F2201FB02314FEA31114DF20B72CB -:10402000C0F2A3029142019022D3FFE79DF80B104A -:10403000002089070090C1B9FFE79DF80B004BF6FF -:104040005002C0F21E5245F62941CCF28F2100FBEE -:1040500001204FEAB00145F62842C0F28F2200202D -:10406000914288BF01200090FFE700980190FFE790 -:10407000019800F0010003B07047000080B582B0E5 -:1040800040F6FC00C2F20000019046F20041C4F28A -:10409000000101600821416000228260C2604FF48B -:1040A000402101614FF48011416102760121417686 -:1040B0008276C27602774177FCF79EFF18B1FFE760 -:1040C000FCF72AFAFFE702B080BD000080B586B099 -:1040D00000200590049003900290FFE741F2180041 -:1040E000C4F20200016841F004010160006800F0C0 -:1040F000040001900198FFE74FF4807002900220C5 -:104100000390059040F60000C4F2010002A9FDF7FB -:1041100045FC06B080BD000080B582B000208DF85F -:104120000600ADF80400009040F66010C2F20000F6 -:1041300042F60001C4F2000101604FF0FF3141601E -:104140004FF480718160FEF763FE18B1FFE7FCF762 -:10415000E3F9FFE700208DF804008DF805008DF8E5 -:10416000060040F66010C2F2000001A90122FEF72D -:10417000CBFF18B1FFE7FCF7CFF9FFE701228DF87D -:1041800000208DF801208DF8022000208DF803001A -:1041900040F66010C2F200006946FEF7F5FE18B165 -:1041A000FFE7FCF7B9F9FFE702B080BD80B588B042 -:1041B00000210191079106910591049103910291CB -:1041C00040F67410C2F2000040F60002C4F2000291 -:1041D00002604FF6FF12426081604FF47A72C26053 -:1041E00001618161FFF7EEF818B1FFE7FCF794F980 -:1041F000FFE74FF48050049040F67410C2F20000C4 -:1042000004A9FFF77DF918B1FFE7FCF785F9FFE78F -:1042100000200290039040F67410C2F2000002A940 -:10422000FFF762F818B1FFE7FCF776F9FFE708B08F -:1042300080BD0000FFE7FEE7FFE7FEE788B00790DC -:1042400006910592079800F0070004900498C0F1C9 -:104250000700052803D3FFE70420019004E0049839 -:10426000C0F107000190FFE7019803900498043023 -:10427000062803D8FFE70020009003E004980338E5 -:104280000090FFE70098029006980399012202FA35 -:1042900001F101390840029B984005999A40013A82 -:1042A0001140084308B0704780B58AB0DDF830C0CF -:1042B000CDF820C00793069205910490BDF8140034 -:1042C000ADF80C00BDF80C00000B0146029104286B -:1042D00056D802990FF2080000EB8100874600BF14 -:1042E00000F008B800F014B800F020B800F02CB8C6 -:1042F00000F038B804980599069A079BDDF820C0AD -:10430000EE46CEF800C000F09BFE8DF827003BE0A3 -:1043100004980599069A079BDDF820C0EE46CEF872 -:1043200000C000F0C3FD8DF827002DE0049805992A -:10433000069A079BDDF820C0EE46CEF800C000F0DC -:10434000F9FD8DF827001FE004980599069A079B50 -:10435000DDF820C0EE46CEF800C000F09BFC8DF8E2 -:10436000270011E004980599069A079BDDF820C004 -:10437000EE46CEF800C000F013FD8DF8270003E0F4 -:1043800001208DF82700FFE79DF827000AB080BDC7 -:1043900080B58AB0DDF830C0CDF820C00793069212 -:1043A00005910490BDF81400ADF80C00BDF80C00A8 -:1043B000000901460291032840D802990FF2080033 -:1043C00000EB8100874600BF00F006B800F012B88D -:1043D00000F01CB800F026B804980599069A079BCF -:1043E000DDF820C0EE46CEF800C000F01FFF8DF8CB -:1043F00027002BE004980599069A079BDDF820C05A -:10440000EE46CEF800C000F05BFE1BE00498059974 -:10441000069A079BDDF820C0EE46CEF800C000F0FB -:1044200067FE0FE004980599069A079BDDF820C007 -:10443000EE46CEF800C000F0A5FE03E001208DF8A6 -:10444000270003E000208DF82700FFE79DF82700F4 -:104450000AB080BD80B58EB08DF837000C910B92FC -:104460009DF83700069000210791012008900591E2 -:1044700009900E200A900C98C0F34F3001900C98D0 -:10448000C000043080B202900B98C0F34F3003900C -:104490000B98C000043080B2049040F6EC00C2F2E9 -:1044A0000000006801A9FCF715F918B1FFE7FCF757 -:1044B00033F8FFE70EB080BD80B582B08DF80700FD -:1044C0009DF80710481E009102280DD3FFE70098C1 -:1044D000032812D1FFE740F6F400C2F200000068A2 -:1044E0000E21FFF7BFFBFFE740F6EC00C2F2000031 -:1044F00000680621FDF79AF8FFE702B080BD0000D2 -:1045000080B58AB0DDF830C0CDF820C007930692A0 -:1045100005910490BDF81400ADF80C00BDF80C0036 -:10452000000B01460291062868D802990FF2080094 -:1045300000EB8100874600BF00F00CB800F016B811 -:1045400000F020B800F02AB800F034B800F03EB80F -:1045500000F048B804980599069A079BDDF820C03A -:10456000EE46CEF800C000F0CFFE4BE0049805996F -:10457000069A079BDDF820C0EE46CEF800C000F09A -:104580000BFF3FE004980599069A079BDDF820C0D1 -:10459000EE46CEF800C000F0CFFE33E00498059957 -:1045A000069A079BDDF820C0EE46CEF800C000F06A -:1045B000CFFE27E004980599069A079BDDF820C0F6 -:1045C000EE46CEF800C000F0DBFE1BE00498059933 -:1045D000069A079BDDF820C0EE46CEF800C000F03A -:1045E0009FFE0FE004980599069A079BDDF820C00E -:1045F000EE46CEF800C000F0B7FE03E001208DF8D3 -:10460000270003E000208DF82700FFE79DF8270032 -:104610000AB080BD80B540F20800C2F20000016817 -:1046200040F20C00C2F2000002680020FFF712FF07 -:1046300040F6F800C2F20000016840F21000C2F239 -:10464000000002680120FFF705FF40F21400C2F2EB -:104650000000016840F21800C2F200000268022067 -:10466000FFF7F8FE80BD000080B592B0DDF850C0C5 -:10467000CDF844C010930F920E910D90002006903B -:10468000042109918DF830000A900E9A039962F383 -:104690001C0103919DF80F1001F0F7018DF80F1028 -:1046A000039921F06041089108210B9147218DF871 -:1046B000101041218DF8111053218DF812102D2169 -:1046C0008DF813100290FFE7029803282CDCFFE717 -:1046D000BDF83800029A0C21A1EB8201C84000F01D -:1046E0000F00019001980A2812D3FFE701984CF6B9 -:1046F000CD41CCF6CC41A0FB0121C90801EB8101E1 -:10470000A0EB41004130029904AA1144087106E06F -:1047100001983030029904AA11440871FFE7FFE7BD -:10472000029801300290CFE740F6EC00C2F20000A0 -:10473000006807A904AA06ABFBF720FF12B080BDF2 -:1047400080B586B0049003910292002001900498F5 -:10475000E8B1FFE7049940F6EC00C2F20000016006 -:10476000006845F2F562C0F600020621FCF72CFE57 -:104770008DF803009DF8030040B1FFE79DF80400A9 -:10478000FFF79AFE02208DF8170059E007E09DF828 -:104790000400FFF791FE01208DF8170050E001980A -:1047A00001300190039838B1FFE7039840F6F0011B -:1047B000C2F20001086007E09DF80400FFF77CFEEC -:1047C00002208DF817003BE001980130019002981B -:1047D000E8B1FFE7029940F6F400C2F20000016080 -:1047E000006845F22162C0F600020E21FFF7E0F8F2 -:1047F0008DF802009DF8020040B1FFE79DF804002B -:10480000FFF75AFE02208DF8170019E007E09DF827 -:104810000400FFF751FE04208DF8170010E0019806 -:1048200001300190FFF7F6FE40F2E001C2F2000114 -:10483000087840F00100087000208DF81700FFE7AD -:104840009DF8170006B080BD80B582B0FFE7FBF78A -:1048500051FD002800F06781FFE740F20000C2F23E -:104860000000007800EB800140F62820C2F2000032 -:1048700000EB8100807900F00F0002281DD1FFE7D6 -:1048800040F20000C2F20000007800EB800140F628 -:104890002820C2F2000000EB810C50F82100DCF867 -:1048A0000410DCF80820DCF80C30DCF810C0EE4610 -:1048B000CEF800C0FFF7F8FC2BE140F20000C2F296 -:1048C0000000007800EB800140F62820C2F20000D2 -:1048D00000EB810080790007E8B9FFE740F20000B3 -:1048E000C2F20000007800EB800140F62820C2F2FE -:1048F000000000EB810C50F82100DCF80410DCF81B -:104900000820DCF80C30DCF810C0EE46CEF800C011 -:10491000FFF73EFDFCE040F20000C2F2000000782C -:1049200000EB800140F62820C2F2000000EB81007D -:10493000807900F00F0001281DD1FFE740F2000050 -:10494000C2F20000007800EB800140F62820C2F29D -:10495000000000EB810C50F82100DCF80410DCF8BA -:104960000820DCF80C30DCF810C0EE46CEF800C0B1 -:10497000FFF7C6FDCBE040F20000C2F20000007875 -:1049800000EB800140F62820C2F2000000EB81001D -:10499000807900F00F0003281DD1FFE740F20000EE -:1049A000C2F20000007800EB800140F62820C2F23D -:1049B000000000EB810C50F82100DCF80410DCF85A -:1049C0000820DCF80C30DCF810C0EE46CEF800C051 -:1049D000FFF74AFE9AE040F20000C2F200000078C1 -:1049E00000EB800140F62820C2F2000000EB8100BD -:1049F000807900F00F00042839D0FFE740F2000072 -:104A0000C2F20000007800EB800140F62820C2F2DC -:104A1000000000EB8100807900F00F00052826D00F -:104A2000FFE740F20000C2F20000007800EB8001D6 -:104A300040F62820C2F2000000EB8100807900F0EF -:104A40000F00062813D0FFE740F20000C2F200007A -:104A5000007800EB800140F62820C2F2000000EB55 -:104A60008100807900F00F0007281DD1FFE740F298 -:104A70000000C2F20000007800EB800140F6282020 -:104A8000C2F2000000EB810C50F82100DCF80410A9 -:104A9000DCF80820DCF80C30DCF810C0EE46CEF86C -:104AA00000C000F041F830E040F20000C2F2000027 -:104AB000007800EB800140F62820C2F2000000EBF5 -:104AC0008100807900F00F0008281DD1FFE740F237 -:104AD0000000C2F20000007800EB800140F62820C0 -:104AE000C2F2000000EB810C50F82100DCF8041049 -:104AF000DCF80820DCF80C30DCF810C0EE46CEF80C -:104B000000C0FBF7C9FCFFE7FFE7FFE7FFE7FFE7B0 -:104B1000FFE740F20001C2F200010878013000F026 -:104B20007F000870FFE792E680B588B0DDF828C006 -:104B3000CDF818C005930492039102909DF80E00E1 -:104B400000F00F00043801460191032846D801996E -:104B50000FF2080000EB8100874600BF00F006B8A6 -:104B600000F012B800F01EB800F02AB802980399BD -:104B7000049A059BDDF818C0EE46CEF800C000F0A0 -:104B800017FC8DF81F002DE002980399049A059BED -:104B9000DDF818C0EE46CEF800C000F057FC8DF8E6 -:104BA0001F001FE002980399049A059BDDF818C0C6 -:104BB000EE46CEF800C000F097FC8DF81F0011E023 -:104BC00002980399049A059BDDF818C0EE46CEF8CA -:104BD00000C000F0D7FC8DF81F0003E001208DF825 -:104BE0001F00FFE79DF81F0008B080BD80B584B0AE -:104BF000039040F6F000C2F2000001680A685168B4 -:104C000041F01001516000228DF80A20ADF8082013 -:104C10000192039909788DF80810039949788DF865 -:104C20000910039989788DF80A10006802A9FEF727 -:104C30006BFA18B1FFE7FBF76FFCFFE70398C0784A -:104C40008DF80700039800798DF8050003984079E6 -:104C50008DF80600039880798DF8040040F6F00086 -:104C6000C2F20000006801A90022FEF78DF918B118 -:104C7000FFE7FBF751FCFFE740F6F000C2F200004F -:104C800000680168486820F01000486004B080BDEA -:104C90007047000080B590B0DDF848C0CDF83CC04A -:104CA0000E930D920C910B9000200490042107911B -:104CB0008DF8280008900C99019861F31C00019070 -:104CC0009DF8070000F0F7008DF80700019820F02C -:104CD0006040069006200990BDF83000ADF8000055 -:104CE00049208DF8080053208DF80900BDF8000018 -:104CF0006FF31F3044F6D351C1F26201A0FB0101F2 -:104D00002F2000EB91108DF80A00BDF800006FF322 -:104D10001F3048F21F51C5F2EB11A0FB01104009F2 -:104D200046F26761C6F2666180FB012303F01C0254 -:104D300002EB9302A0EB42002F308DF80B00BDF880 -:104D400000006FF31F304CF6CD42CCF6CC42A0FBF6 -:104D50000230C00880FB011303F0FC0101EB93015A -:104D6000A0EB41002F308DF80C00BDF8000001468B -:104D70006FF31F31A1FB0221C90801EB8101A0EBF8 -:104D800041002F308DF80D0040F6EC00C2F200001B -:104D9000006805A902AA04ABFBF7F0FB10B080BDC8 -:104DA00080B590B0DDF848C0CDF83CC00E930D92B0 -:104DB0000C910B9000200490042107918DF828009D -:104DC00008900C99019861F31C0001909DF8070070 -:104DD00000F0F7008DF80700019820F06040069081 -:104DE00006200990BDF83000ADF8000054208DF881 -:104DF000080053208DF80900BDF800006FF31F3044 -:104E000044F6D351C1F26201A0FB01012F2000EB57 -:104E100091108DF80A00BDF800006FF31F3048F2C2 -:104E20001F51C5F2EB11A0FB0110400946F267616A -:104E3000C6F2666180FB012303F01C0202EB9302C1 -:104E4000A0EB42002F308DF80B00BDF800006FF38F -:104E50001F304CF6CD42CCF6CC42A0FB0230C0084D -:104E600080FB011303F0FC0101EB9301A0EB410077 -:104E70002F308DF80C00BDF8000001466FF31F3194 -:104E8000A1FB0221C90801EB8101A0EB41002F30F9 -:104E90008DF80D0040F6EC00C2F20000006805A994 -:104EA00002AA04ABFBF76AFB10B080BD80B590B0DE -:104EB000DDF848C0CDF83CC00E930D920C910B90DC -:104EC00000200490042107918DF8280008900C9987 -:104ED000019861F31C0001909DF8070000F0F700B5 -:104EE0008DF80700019820F0604006900720099097 -:104EF00055208DF8080053208DF8090054208DF8B6 -:104F00000A0041208DF80B0056208DF80C004B2034 -:104F10008DF80D0049208DF80E0040F6EC00C2F22D -:104F20000000006805A902AA04ABFBF727FB10B03C -:104F300080BD000080B590B0DDF848C0CDF83CC021 -:104F40000E930D920C910B90002004900421079178 -:104F50008DF8280008900C99019861F31C000190CD -:104F60009DF8070000F0F7008DF80700019820F089 -:104F70006040069006200990BDF83000ADF80000B2 -:104F800055208DF8080053208DF80900BDF8000069 -:104F90006FF31F3044F6D351C1F26201A0FB01014F -:104FA0002F2000EB91108DF80A00BDF800006FF380 -:104FB0001F3048F21F51C5F2EB11A0FB0110400950 -:104FC00046F26761C6F2666180FB012303F01C02B2 -:104FD00002EB9302A0EB42002F308DF80B00BDF8DE -:104FE00000006FF31F304CF6CD42CCF6CC42A0FB54 -:104FF0000230C00880FB011303F0FC0101EB9301B8 -:10500000A0EB41002F308DF80C00BDF800000146E8 -:105010006FF31F31A1FB0221C90801EB8101A0EB55 -:1050200041002F308DF80D0040F6EC00C2F2000078 -:10503000006805A902AA04ABFBF7A0FA10B080BD76 -:1050400080B590B0DDF848C0CDF83CC00E930D920D -:105050000C910B9000200490042107918DF82800FA -:1050600008900C99019861F31C0001909DF80700CD -:1050700000F0F7008DF80700019820F060400690DE -:105080000620099055208DF808004E208DF8090063 -:1050900049208DF80A0056208DF80B0045208DF828 -:1050A0000C0052208DF80D0040F6EC00C2F200001A -:1050B000006805A902AA04ABFBF760FA10B080BD36 -:1050C00080B585B0DDF81CC0CDF810C00393029206 -:1050D0000191009040F2E001C2F200010878012243 -:1050E000824300F0FE001044087005B080BD00004F -:1050F00080B58AB0DDF830C0CDF824C0089307929F -:1051000006910590BDF81C0008B9FFE737E0BDF82F -:105110001800ADF81000BDF8100000F00F00BDF849 -:105120001C10CA000221B1FBF2F1884226D1FFE730 -:105130000020039002900190FFE70198BDF81C1039 -:10514000884213DAFFE7019905A80844807AC9006C -:1051500000FA01F202990398891840EBE27002917B -:105160000390FFE7019801300190E6E7029880087C -:10517000C00710B1FFE701F0B3F8FFE7FFE70AB09F -:1051800080BD000080B59EB0DDF880C0CDF874C051 -:105190001C931B921A911990BDF86C00082801DB32 -:1051A000FFE741E046F27031C0F6000101A860223D -:1051B000FBF70AF89DF86E0017282EDCFFE79DF834 -:1051C0006F003B2829DCFFE79DF870003B2824DCBA -:1051D000FFE79DF8710063281FDCFFE79DF8720070 -:1051E0000C281ADCFFE79DF871009DF87310009100 -:1051F000FEF7FCFE0146009801EB410201A901EB1C -:1052000002119DF8722051F82210884205DCFFE758 -:105210009DF87400072801DBFFE704E019A80A30B5 -:10522000FFF7E4FCFFE7FFE71EB080BD80B594B058 -:10523000DDF858C0CDF84CC01293119210910F9028 -:1052400000220192089204200B9007200D908DF807 -:1052500038200C921099059861F31C0005909DF878 -:10526000170000F0F7008DF817009DF8170000F008 -:10527000F80001308DF817009DF81600022161F347 -:105280001F108DF81600059820F060400A908DF8E8 -:105290001220ADF8102040F6F000C2F2000002909B -:1052A000006804A9FDF7DAFC019A02989DF8101035 -:1052B0008DF818109DF811108DF819109DF8121026 -:1052C0008DF81A100392006803A9FDF779FC9DF888 -:1052D0000F008DF81B009DF80D008DF81C009DF847 -:1052E0000E008DF81D009DF80C008DF81E0040F694 -:1052F000EC00C2F20000006809A906AA08ABFBF79F -:105300003DF914B080BD000080B585B0DDF81CC04B -:10531000CDF810C0039302920191009005B080BDBA -:1053200080B585B0DDF81CC0CDF810C003930292A3 -:105330000191009005B080BD80B585B0DDF81CC03E -:10534000CDF810C0039302920191009005B080BD8A -:1053500080B585B0DDF81CC0CDF810C00393029273 -:105360000191009005B080BD80B585B0DDF81CC00E -:10537000CDF810C0039302920191009005B080BD5A -:1053800080B586B0DDF820C0CDF814C00493039238 -:105390000291019000F0A4FF80B585B0DDF81CC03B -:1053A000CDF810C0039302920191009005B080BD2A -:1053B00080B590B0DDF848C0CDF83CC00E930D929A -:1053C0000C910B9000200490042107918DF8280087 -:1053D00008900C99019861F31C0001909DF807005A -:1053E00000F0F7008DF80700019820F0604006906B -:1053F00008200990BDF83000ADF800004D208DF870 -:10540000080043208DF8090020218DF80A1053224E -:105410008DF80B20BDF8002012098DF80C208DF8B6 -:105420000D108DF80E009DF8000000F00F008DF8B3 -:105430000F0040F6EC00C2F20000006805A902AAC5 -:1054400004ABFBF79BF810B080BD000080B590B0B6 -:10545000DDF848C0CDF83CC00E930D920C910B9036 -:1054600000200490042107918DF8280008900C99E1 -:10547000019861F31C0001909DF8070000F0F7000F -:105480008DF80700019820F06040069008200990F0 -:10549000BDF83000ADF800004D208DF80800442024 -:1054A0008DF8090020208DF80A0053218DF80B108B -:1054B000BDF8001009098DF80C108DF80D0043207F -:1054C0008DF80E009DF8000000F00F008DF80F0021 -:1054D00040F6EC00C2F20000006805A902AA04AB85 -:1054E000FBF74CF810B080BD80B590B0DDF848C037 -:1054F000CDF83CC00E930D920C910B9000200490BF -:10550000042107918DF8280008900C99019861F307 -:105510001C0001909DF8070000F0F7008DF80700CF -:10552000019820F06040069008200990BDF83000F6 -:10553000ADF800004D208DF8080048208DF80900D6 -:1055400020208DF80A0053218DF80B10BDF80010B3 -:1055500009098DF80C108DF80D0043208DF80E0010 -:105560009DF8000000F00F008DF80F0040F6EC00F1 -:10557000C2F20000006805A902AA04ABFAF7FEFF18 -:1055800010B080BD80B590B0DDF848C0CDF83CC00B -:105590000E930D920C910B90002004900421079122 -:1055A0008DF8280008900C99019861F31C00019077 -:1055B0009DF8070000F0F7008DF80700019820F033 -:1055C0006040069008200990BDF83000ADF800005A -:1055D0004D208DF8080049208DF8090020208DF815 -:1055E0000A0053218DF80B10BDF8001009098DF841 -:1055F0000C108DF80D0043208DF80E009DF8000072 -:1056000000F00F008DF80F0040F6EC00C2F2000031 -:10561000006805A902AA04ABFAF7B0FF10B080BD7C -:1056200080B58CB00B9040F2E000C2F20000007830 -:10563000C00700285CD0FFE700200490039901F028 -:1056400060410391ADF80C009DF80E10022262F348 -:105650001F118DF80E109DF80F1001F0F8010131A7 -:105660008DF80F109DF80E1041F00F018DF80E10FF -:105670009DF80F1001F0F7018DF80F109DF80F1035 -:1056800041F010018DF80F10039921F0604106914F -:10569000042107918DF8280008900120099040F618 -:1056A000E800C2F20000016801310160039921F0B5 -:1056B000604100910068B0F5807F07D3FFE740F6B6 -:1056C000E801C2F2000100200860FFE740F6E800B0 -:1056D000C2F2000000688DF8040040F6EC00C2F24F -:1056E0000000006805A901AA04ABFAF747FFFFE72D -:1056F0000CB080BD80B58EB00D90FFE70D980021F5 -:1057000006AA04ABFBF774F900285CD1FFE7089800 -:10571000042857D1FFE740F6E400C2F20000007809 -:1057200040F20001C2F200010978401A81300006FF -:10573000002801D4FFE746E040F6E400C2F2000092 -:105740000078013000F07F00ADF80E000799029854 -:1057500061F31C0002909DF80A0000F00F000F2872 -:1057600020D1FFE79DF80A109DF80B0000F007021A -:1057700040F2E400C2F2000000EB022201F0F0036C -:10578000D15C41F00101D1549DF80A109DF80B2025 -:1057900002F0070200EB022001F0F00101440020BA -:1057A000886010E00899099A0A9BBDF80EC002981B -:1057B000EE46CEF804C00DF1100CCEF800C000F09B -:1057C00099FCFFE79AE70EB080BD000082B001901F -:1057D000019840F20401C2F200010968C90844F6C8 -:1057E000D352C1F26202A1FB022189094843009011 -:1057F000FFE700BFFFE70098411E00910028F8D1A5 -:10580000FFE702B07047000082B08DF8070000206B -:1058100000909DF80700000900EB80004000009018 -:1058200000989DF8071001F00F010844C0B202B0C3 -:105830007047000082B08DF8070000200090FFE75D -:105840009DF807000A2809D3FFE70098013000906F -:105850009DF807000A388DF80700F1E7009800F07E -:105860000F019DF8070040EA011002B070470000E8 -:1058700080B586B0059004910020039002900190BD -:1058800000900599C97B03910599497B029105997F -:10589000897B01910090FFE700980499884280F08D -:1058A0008C80FFE70298012818D0FFE702980328B0 -:1058B00014D0FFE70298052810D0FFE702980728C8 -:1058C0000CD0FFE70298082808D0FFE702980A28C2 -:1058D00004D0FFE702980C281BD1FFE701981E288F -:1058E00004D8FFE701980130019011E002980C28DC -:1058F00006D0FFE70298013002900120019006E0F7 -:10590000012002900190039801300390FFE7FFE728 -:105910004EE0029804280CD0FFE70298062808D031 -:10592000FFE70298092804D0FFE702980B280FD15F -:10593000FFE701981D2804D8FFE701980130019086 -:1059400005E002980130029001200190FFE72EE06F -:10595000029802282AD1FFE701981B2804D8FFE704 -:1059600001980130019020E001981C2811D1FFE737 -:10597000BDF80C0000F08EF820B1FFE7019801306F -:10598000019005E002980130029001200190FFE7AC -:105990000AE001981D2806D1FFE702980130029025 -:1059A00001200190FFE7FFE7FFE7FFE7FFE7FFE7E1 -:1059B000FFE70098013000906EE703980599C873DF -:1059C00002980599487301980599887303989DF882 -:1059D00008109DF8042000F0E9F80599087306B056 -:1059E00080BD000080B584B0029000200190FCF7DB -:1059F00065F90190FFE7029800684068800600287A -:105A00000DD4FFE7FCF75AF90199401AB0F57A7FF7 -:105A100004D9FFE703208DF80F000AE0EBE70298B6 -:105A20000168486840F01000486000208DF80F00C1 -:105A3000FFE79DF80F0004B080BD000080B584B082 -:105A400002900020019002980168486820F0100040 -:105A50004860FCF733F90190FFE70298006840685E -:105A6000800600280DD4FFE7FCF728F90199401AB9 -:105A7000B0F57A7F04D9FFE703208DF80F0004E02A -:105A8000EBE700208DF80F00FFE79DF80F0004B052 -:105A900080BD000081B0ADF80000BDF800008007B7 -:105AA00020B1FFE700208DF803002BE0BDF80000D7 -:105AB00045F62941CCF28F2148434FEAB00045F624 -:105AC0002941C0F28F21884204D3FFE701208DF8DD -:105AD000030017E0BDF8000045F62941CCF28F2104 -:105AE00048434FEA30104DF20A71C0F2A3018842D8 -:105AF00004D8FFE701208DF8030003E000208DF8B3 -:105B00000300FFE79DF8030001B0704782B00190E9 -:105B10000020ADF80200ADF8000001980068006AAE -:105B2000ADF8020001980068406AADF80000BDF8C9 -:105B30000210BDF8000040EA014002B070470000CA -:105B400084B003900020ADF80A00ADF80800ADF86D -:105B500006000090039800688069ADF80A00039879 -:105B60000068C069ADF80600039800688069ADF868 -:105B70000800BDF80A00BDF8081088420AD0FFE707 -:105B8000BDF8081003980068C06980B240EA01407F -:105B9000009007E0BDF80A10BDF8060040EA014099 -:105BA0000090FFE7009804B07047000084B00390B5 -:105BB0008DF80B108DF80A200020019000900398BA -:105BC00000F5FA6001909DF80B0002282ED8FFE73F -:105BD0009DF80B001721484348F63961C3F6E301ED -:105BE000A0FB01019DF80A0000EB51000199084457 -:105BF000013900EB910048F21F52C5F2EB12A1FBF4 -:105C00000221A0EB511000EBD110043044F6251115 -:105C1000C2F29241A0FB0121421A01EB520291080B -:105C2000C900A1EB9201401A00902CE09DF80B00F6 -:105C30001721484348F63961C3F6E301A0FB01018F -:105C40009DF80A0000EB51000199084400EB910017 -:105C500048F21F52C5F2EB12A1FB0221A0EB51103A -:105C600000EBD110023044F62511C2F29241A0FBA4 -:105C70000121421A01EB52029108C900A1EB9201E5 -:105C8000401A0090FFE79DF8000004B07047000044 -:105C900080B584B00390029100208DF8070003982E -:105CA000FFF7A0FE20B1FFE701208DF8070013E009 -:105CB000BDF80A00039909680862BDF80800039955 -:105CC000096848620398FFF7B9FE20B1FFE7012099 -:105CD0008DF80700FFE7FFE79DF8070004B080BDDF -:105CE00080B584B00390029100208DF807000398DE -:105CF000FFF778FE20B1FFE701208DF8070013E0E1 -:105D0000BDF80A00039909688861BDF80800039985 -:105D10000968C8610398FFF791FE20B1FFE70120F1 -:105D20008DF80700FFE7FFE79DF8070004B080BD8E -:105D30007047000080B582B0009000980138B0F143 -:105D4000807F03D3FFE70120019019E0009801381C -:105D50004EF21401CEF2000108604FF0FF300F2127 -:105D600000F07EFA4EF21801CEF200010020086029 -:105D70004EF21002CEF20002072111600190FFE7FF -:105D8000019802B080BD000080B5FBF79DFF80BD8B -:105D900080B596B00CA801902821FAF747FA01982F -:105DA000002102910B910A910991089107910691A6 -:105DB0000591049103910A220C9201221092102362 -:105DC000119312920222139214914FF460111591C3 -:105DD000FCF7B8FB18B1FFE7FAF79EFBFFE70F20CF -:105DE000079002210891002009904FF480620A92E6 -:105DF0000B9007A8FCF7D0F918B1FFE7FAF78CFB76 -:105E0000FFE7012003904FF40070049003A8FCF713 -:105E1000DFF818B1FFE7FAF77FFBFFE74FF0E0612B -:105E200000221046FCF75AFB16B080BD70470000F8 -:105E300080B540F67410C2F20000FDF73FFC80BD53 -:105E400083B002900191029800680090029842F697 -:105E50000041C4F20101884215D0FFE70298B0F179 -:105E6000804F10D0FFE7029840F20041C4F20001D9 -:105E7000884208D0FFE7029840F60001C4F2000112 -:105E800088420AD1FFE7009820F070000090019846 -:105E90004168009808430090FFE7029842F60041ED -:105EA000C4F20101884215D0FFE70298B0F1804F9B -:105EB00010D0FFE7029840F20041C4F2000188428E -:105EC00008D0FFE7029840F60001C4F200018842C2 -:105ED0000AD1FFE7009820F4407000900198C16853 -:105EE000009808430090FFE7009820F08000019997 -:105EF00049690843009000980299086001988068F9 -:105F00000299C8620198006802998862029842F674 -:105F10000041C4F20101884205D1FFE70198006900 -:105F200002990863FFE702990120486103B07047B6 -:105F300085B00490039102920193049880680090C8 -:105F4000009820F47F40009003980299019A41EA5A -:105F5000022101430098084300900098049988604A -:105F600005B0704783B0029001910298806800905C -:105F7000009820F07000009001980099084340F0CC -:105F80000700009000980299886003B070470000F5 -:105F900081B00090009943F6A110C0F60000C1F84E -:105FA0008000009943F6A910C0F60000C1F88400F3 -:105FB000009943F65540C0F60000C1F888000099EA -:105FC00043F65D40C0F60000C1F88C00009943F232 -:105FD0009D60C0F60000C1F89000009943F2A560F2 -:105FE000C0F60000C1F89400009943F65910C0F6BD -:105FF0000000C1F89800009943F69110C0F6000027 -:10600000C1F89C00009943F69910C0F60000C1F851 -:10601000A000009943F29560C0F60000C1F8A4000A -:10602000009943F2C920C0F60000C1F8A800009909 -:1060300043F2D120C0F60000C1F8AC00009943F251 -:10604000C120C0F60000C1F8B00001B070470000E8 -:1060500085B00490039102920498006A009004991C -:10606000086A20F001000862049880690190019894 -:1060700020F0F00001900299019840EA011001908F -:10608000009820F00A0000900399009808430090BF -:1060900001980499886100980499086205B07047D6 -:1060A00085B00490039102920498006A00900499CC -:1060B000086A20F010000862049880690190019835 -:1060C00020F4704001900299019840EA013001905B -:1060D000009820F0A00000900399009840EA011079 -:1060E000009001980499886100980499086205B0AD -:1060F0007047000080B586B084460998DDF820E03E -:10610000CDF814C0049103920293ADF80600059BEC -:10611000BDF8060000EB800040F62821C2F2000125 -:1061200001EB8002506863F31C0050609DF8103052 -:10613000BDF8060000EB800211F8220003F0010315 -:1061400000F0FE00184401F822009DF80C30BDF864 -:10615000060000EB800211F8220003F0010300F0BA -:10616000FD0040EA430001F822000298BDF8062035 -:1061700002EB820201EB8201088100200090FFE720 -:1061800000980299884214D2FFE70898009A805C30 -:10619000BDF8061001EB810340F62821C2F2000190 -:1061A00001EB830111448872FFE7009801300090F1 -:1061B000E6E79DF8060040F6E401C2F2000108702F -:1061C00006B080BD80B540F6FC00C2F20000FAF7D0 -:1061D00019FD80BD80B540F6FC00C2F20000FAF760 -:1061E00011FD80BDFFE7FEE781B08DF803009DF94A -:1061F0000300002812D4FFE79DF9031001F01F02ED -:10620000012090404A094EF28011CEF2000141F87F -:106210002200BFF34F8FBFF36F8FFFE701B07047CE -:1062200081B08DF803009DF9030000280ED4FFE72C -:106230009DF9031001F01F02012090404A094EF21F -:106240000011CEF2000141F82200FFE701B07047D3 -:106250004EF60C50CEF200000068C0F302207047EA -:1062600082B08DF8070000919DF9070000280AD43C -:10627000FFE7009800019DF907104EF20042CEF2B0 -:10628000000288540BE0009800019DF8071001F00F -:106290000F014EF61452CEF200028854FFE702B00E -:1062A0007047000083B00290029800F00700009051 -:1062B0004EF60C51CEF200010868019001984FF69D -:1062C000FF02104001900198009A40EA022000224B -:1062D000C0F2FA52104301900198086003B0704771 -:1062E000BFF34F8F4EF60C51CEF20001086800F458 -:1062F000E0600422C0F2FA5210430860BFF34F8FEF -:10630000FFE700BFFDE7000080B582B000200190EC -:10631000FFF73EFDFBF7E6FCFFF73AFDFDF7D6FE83 -:10632000FDF7ACFEFDF7F8FEFDF740FF40F6FC0080 -:10633000C2F200000090FBF71BF9009840F66011D4 -:10634000C2F2000140F67412C2F20002FEF7F8F940 -:1063500058B9FFE740F6FC00C2F2000048F60241DF -:10636000FAF7E2F8FEF770FAFFE7FFE7FEE7000052 -:106370001F0000001C0000001F0000001E000000A5 -:106380001F0000001E0000001F0000001F00000092 -:106390001E0000001F0000001E0000001F00000083 -:1063A0001F0000001D0000001F0000001E00000074 -:1063B0001F0000001E0000001F0000001F00000062 -:1063C0001E0000001F0000001E0000001F00000053 -:1063D0000000000000000000010203040607080995 -:1063E0000000000001020304020304050607080977 -:1063F0000A0B0C0D0E0F1010010202030405060714 -:1064000008090A0B0C0D0E0F101001023064000871 -:10641000000000202800000028010008586400083F -:1064200028000020081A00004401000800000000B5 -:10643000010000000024F400000020090000F00F1B -:1064400000000F0000000F0000000F00010000001E -:08645000100000000000000034 +:1004E0008DF800108DF801000099ADF80410019905 +:1004F00021F060410691099040F6D400C2F200005C +:10050000006805A902AA04AB00F036F810B080BD5F +:100510007047000081B0EFF3108072B60090FFE7E3 +:10052000FEE7000084B002900191029890F820004C +:100530008DF803009DF80300012805D0FFE79DF822 +:10054000030002280AD1FFE7019A0298016848696E +:100550001043486100208DF80F0008E00299486AB6 +:1005600040F48020486201208DF80F00FFE79DF8DD +:100570000F0004B07047000088B006900591049207 +:100580000393069890F820008DF8070006980068FD +:10059000806800900598806808B9FFE700E0FFE7F1 +:1005A0009DF80700012806D0FFE79DF80700022804 +:1005B00040F08080FFE79DF80300400700280CD43E +:1005C000FFE79DF803000007002806D4FFE79DF829 +:1005D0000300C006002864D5FFE70098C0F301605F +:1005E000029002990120884003990860059880686C +:1005F00068B9FFE705980168C06840EA415006996C +:100600000968029A01EB0211C1F880010EE0059918 +:100610004A688868C96840EAC200084306990968C0 +:10062000029A01EB0211C1F88001FFE70598006909 +:1006300006990968029A01EB0211C1F88401059834 +:10064000007D01280CD1FFE706980068029900EBB5 +:100650000111D1F8840140F48070C1F88401FFE7F2 +:100660000498406806990968029A01EB0211C1F8E2 +:100670008C010498006806990968029A01EB02113E +:10068000C1F8880106980068029900EB0111D1F8C1 +:10069000800140F00100C1F8800100208DF81F00AA +:1006A00011E00699486A40F40010486201208DF874 +:1006B0001F0008E00699486A40F480204862012043 +:1006C0008DF81F00FFE79DF81F0008B0704700007D +:1006D00086B004900391049800680190049890F803 +:1006E00020008DF803009DF80300012806D0FFE7E5 +:1006F0009DF80300022840F09B80FFE70199D1F8A4 +:10070000000240F00100C1F800020398406900F0C7 +:100710001F01012088400290029A0199D1F81C0221 +:100720009043C1F81C020398C069F0B9FFE7029A30 +:100730000199D1F80C029043C1F80C02039A9088F9 +:10074000D168526940EA0140019901EBC201C1F848 +:100750004002039A10889168526940EA0140019969 +:1007600001EBC201C1F84402FFE70398C069012808 +:100770001ED1FFE7029A0199D1F80C021043C1F88B +:100780000C02039A90881168526940EA014001996D +:1007900001EBC201C1F84002039A90899168526945 +:1007A00040EA0140019901EBC201C1F84402FFE7B0 +:1007B0000398806940B9FFE7029A0199D1F80402D1 +:1007C0009043C1F8040207E0029A0199D1F80402AB +:1007D0001043C1F80402FFE70398006940B9FFE73E +:1007E000029A0199D1F814029043C1F8140207E06B +:1007F000029A0199D1F814021043C1F81402FFE7DC +:100800000398006A012808D1FFE7029A0199D1F8FC +:100810001C021043C1F81C02FFE70199D1F8000245 +:1008200020F00100C1F8000200208DF8170008E058 +:100830000499486A40F48020486201208DF817002E +:10084000FFE79DF8170006B07047000080B582B042 +:1008500001900198406A08B9FFE7C4E00198406A36 +:10086000C00718B1FFE7FFF797FDFFE70198406A5F +:100870008007002803D5FFE7FFF786FDFFE7019813 +:10088000406A4007002803D5FFE7FFF765FDFFE753 +:100890000198406A0007002803D5FFE7FFF7BCFD79 +:1008A000FFE70198406AC006002803D5FFE7FFF77D +:1008B0007BFDFFE70198406A8006002803D5FFE72B +:1008C000FFF73AFDFFE70198406A4006002803D58C +:1008D000FFE7FFF749FDFFE70198406A000600289F +:1008E00003D5FFE7FFF730FDFFE70198406AC00539 +:1008F000002803D5FFE7FFF73FFDFFE70198406AB7 +:100900008005002803D5FFE7FFF776FDFFE7019894 +:10091000406A4005002803D5FFE7FFF775FDFFE7B4 +:100920000198406A0005002803D5FFE7FFF784FD22 +:10093000FFE70198406AC004002803D5FFE7FFF7EE +:1009400093FDFFE70198406A8004002803D5FFE784 +:10095000FFF77AFDFFE70198406A4004002803D5BD +:10096000FFE7FFF789FDFFE70198406A00040028D0 +:1009700003D5FFE7FFF770FDFFE70198406AC0036A +:10098000002803D5FFE7FFF77FFDFFE70198406AE6 +:100990008003002803D5FFE7FFF746FDFFE7019836 +:1009A000406A4003002803D5FFE7FFF705FDFFE796 +:1009B0000198406A0003002803D5FFE7FFF704FD14 +:1009C000FFE70198406AC002002803D5FFE7FFF760 +:1009D00003FDFFE70198406A8002002803D5FFE786 +:1009E000FFF702FDFFE702B080BD000086B0049073 +:1009F000039102920193049890F820008DF803006F +:100A00009DF80300012806D0FFE79DF803000228A7 +:100A100040F0E880FFE7039880B9FFE7049800689A +:100A2000C068800748B9FFE70499486A40F400109D +:100A3000486201208DF81700DDE00FE0049800689F +:100A40000069800748B9FFE70499486A40F400103C +:100A5000486201208DF81700CDE0FFE70498006898 +:100A6000039900EB0110D0F8B00100F004000299E6 +:100A700088600298806858B9FFE704980068039975 +:100A800000EB0110D0F8B001400D029908600AE0B7 +:100A900004980068039900EB0110D0F8B001C00879 +:100AA00002994860FFE704980068039900EB011081 +:100AB000D0F8B00100F002000299C8600498006804 +:100AC000039900EB0110D0F8B40100F00F000828E2 +:100AD00004D3FFE70299082008610BE0049800683E +:100AE000039900EB0110D0F8B40100F00F00029957 +:100AF0000861FFE704980068039900EB0110D0F843 +:100B0000B40180B2000A02998861049800680399D0 +:100B100000EB0110D0F8B401000C02994861049870 +:100B20000068039900EB0110D0F8B8010199087032 +:100B300004980068039900EB0110D0F8B801000A8E +:100B40000199487004980068039900EB0110D0F8EF +:100B5000B801000C0199887004980068039900EBB3 +:100B60000110D0F8B801000E0199C870049800680F +:100B7000039900EB0110D0F8BC01019908710498A9 +:100B80000068039900EB0110D0F8BC01000A01993C +:100B9000487104980068039900EB0110D0F8BC017B +:100BA000000C0199887104980068039900EB01100A +:100BB000D0F8BC01000E0199C871039838B9FFE75D +:100BC00004980168C86840F02000C86006E00498F6 +:100BD0000168086940F020000861FFE700208DF8F7 +:100BE000170008E00499486A40F480204862012018 +:100BF0008DF81700FFE79DF8170006B0704700005A +:100C000080B58AB009900020089009980068406972 +:100C10000790099800684068069009980068806805 +:100C2000059009980068C0680490099800680069F8 +:100C3000039009980068806902909DF81C00C00725 +:100C4000002800F09480FFE79DF81400C00758B317 +:100C5000FFE709980168012088609DF8140080076B +:100C6000002804D5FFE70998816A88471BE09DF8B2 +:100C700014004007002805D5FFE7089840F40060FD +:100C800008900FE09DF814000007002805D5FFE745 +:100C9000089840F48050089003E00998416B884719 +:100CA000FFE7FFE7FFE7FFE79DF81500C00760B328 +:100CB000FFE7099801684FF4807088609DF815007F +:100CC0008007002804D5FFE70998C16A88471BE020 +:100CD0009DF815004007002805D5FFE7089840F467 +:100CE000005008900FE09DF815000007002805D57A +:100CF000FFE7089840F48040089003E00998816B72 +:100D00008847FFE7FFE7FFE7FFE79DF81600C0070A +:100D100060B3FFE7099801684FF4803088609DF860 +:100D200016008007002804D5FFE70998016B884763 +:100D30001BE09DF816004007002805D5FFE708983E +:100D400040F4004008900FE09DF8160000070028CE +:100D500005D5FFE7089840F48030089003E0099833 +:100D6000C16B8847FFE7FFE7FFE7FFE7FFE79DF875 +:100D70001C000007002810D5FFE79DF81000C006F2 +:100D8000002809D5FFE7089840F4007008900998FA +:100D900001681020C860FFE7FFE79DF81C004007CE +:100DA00000280FD5FFE79DF810000007002808D5A0 +:100DB000FFE7099801680820C8600998416C8847D6 +:100DC000FFE7FFE79DF81C00800700280BD5FFE731 +:100DD00009980068C068800720B1FFE70998016C96 +:100DE0008847FFE7FFE79DF81C004006002810D564 +:100DF000FFE79DF80C00C006002809D5FFE708981A +:100E000040F4806008900998016810200861FFE7AD +:100E1000FFE79DF81C00800600280FD5FFE79DF82E +:100E20000C000007002808D5FFE709980168082092 +:100E300008610998C16C8847FFE7FFE79DF81C002F +:100E4000C00600280BD5FFE70998006800698007F5 +:100E500020B1FFE70998816C8847FFE7FFE79DF81D +:100E60001E00800700280FD5FFE79DF81800C00678 +:100E7000002808D5FFE70998016810204860099804 +:100E8000016D8847FFE7FFE79DF81E00C00778B1B6 +:100E9000FFE79DF818000007002808D5FFE709982C +:100EA0000168082048600998416D8847FFE7FFE71F +:100EB0009DF81D000006002840F18D80FFE79DF899 +:100EC00018004007002840F18180FFE79DF81D00D1 +:100ED000C00750B1FFE79DF80800C00728B1FFE741 +:100EE000089840F001000890FFE79DF81D0080077A +:100EF00000280BD5FFE79DF808008007002805D5DE +:100F0000FFE7089840F002000890FFE79DF81D00F9 +:100F1000400700280BD5FFE79DF808004007002890 +:100F200005D5FFE7089840F004000890FFE79DF81A +:100F30001D000007002848D5FFE79DF8080010F0C5 +:100F4000700F42D0FFE7029800F070000146019157 +:100F5000102814D0FFE70198202815D0FFE701984A +:100F6000302816D0FFE70198402817D0FFE70198F6 +:100F7000502818D0FFE70198602819D01DE0089884 +:100F800040F00800089019E0089840F01000089020 +:100F900014E0089840F0200008900FE0089840F016 +:100FA000400008900AE0089840F08000089005E0B2 +:100FB000089840F48070089000E0FFE70998016805 +:100FC000886920F070008861FFE7FFE709980168F1 +:100FD00004204860FFE7089848B1FFE7089A09999C +:100FE000486A104348620998816D8847FFE70AB054 +:100FF00080BD000080B584B00290029820B9FFE760 +:1010000001208DF80F003AE1029890F820000028A6 +:101010005DD1FFE7029941F24D50C0F6000008642F +:10102000029941F24550C0F600004864029941F22D +:101030005D50C0F600008864029941F25550C0F638 +:101040000000C864029941F20160C0F600008862A5 +:10105000029941F21160C0F60000C862029941F2A3 +:101060002160C0F600000863029941F2F950C0F611 +:1010700000004863029941F20960C0F600008863ED +:10108000029941F21960C0F60000C863029941F26A +:101090006550C0F600000865029941F2F170C0F693 +:1010A00000004865029940F64D00C0F600008865D2 +:1010B0000298C06D38B9FFE7029941F2E120C0F60D +:1010C0000000C865FFE70298C16D8847FFE70298F6 +:1010D0000168086840F00100086000F0EDFD019033 +:1010E000FFE7029800684068C007A8B9FFE700F072 +:1010F000E3FD0199401A0B280DD3FFE70299486AD6 +:1011000040F4003048620299052081F82000012057 +:101110008DF80F00B3E0E4E702980168086820F05A +:101120000200086000F0C8FD0190FFE70298006827 +:1011300040688007002815D5FFE700F0BDFD019944 +:10114000401A0B280DD3FFE70299486A40F400309B +:1011500048620299052081F8200001208DF80F00D7 +:101160008DE0E3E70298007E012807D1FFE70298AF +:101170000168086840F08000086006E00298016895 +:10118000086820F080000860FFE70298407E012890 +:1011900007D1FFE702980168086840F04000086046 +:1011A00006E002980168086820F040000860FFE748 +:1011B0000298807E012807D1FFE70298016808683D +:1011C00040F02000086006E002980168086820F0FE +:1011D00020000860FFE70298C07E012807D1FFE7E2 +:1011E00002980168086820F01000086006E0029884 +:1011F0000168086840F010000860FFE70298007F6F +:10120000012807D1FFE702980168086840F008004C +:10121000086006E002980168086820F0080008608D +:10122000FFE70298407F012807D1FFE70298016895 +:10123000086840F00400086006E002980168086849 +:1012400020F004000860FFE7029B19685A6898685C +:10125000D3F80CC040EA0C00D3F810C040EA0C00F0 +:101260005B691843013A1043C86102990020486243 +:10127000029A012182F820108DF80F00FFE79DF8F7 +:101280000F0004B080BD000080B582B001900198CD +:10129000006846F20041C4F2000188421DD1FFE718 +:1012A00041F21C01C4F20201086820F000700860DD +:1012B00040F60000C4F201004FF4C05100F09CFA67 +:1012C000132000F07BFD142000F078FD152000F0C5 +:1012D00075FD162000F072FDFFE702B080BD000032 +:1012E00080B58EB00D9000200C900B900A90099064 +:1012F0000D98006846F20041C4F2000188425ED1B8 +:10130000FFE7FFE741F21C00C4F20200016841F070 +:1013100000710160006800F0007008900898FFE715 +:10132000FFE741F21800C4F20200016841F0040135 +:101330000160006800F0040007900798FFE74FF491 +:1013400000600990002005900A900B9040F6000084 +:10135000C4F20100009009A9019100F01DFB009862 +:1013600001994FF48052099202220A9203220C92B0 +:1013700000F012FB059A13200290114600F032FD96 +:10138000029800F025FD059A14200390114600F004 +:1013900029FD039800F01CFD059A152004901146C4 +:1013A00000F020FD049800F013FD059A1620069029 +:1013B000114600F017FD069800F00AFDFFE70EB099 +:1013C00080BD000087B005908DF8131003920020B7 +:1013D0008DF80B00039848B9FFE70599486A40F477 +:1013E0008000486201208DF81B00A6E0059890F867 +:1013F0002000012870D1FFE79DF8130001460191FC +:101400000E285FD801990FF2080000EB8100874693 +:1014100000F01CB800F01EB800F020B800F022B8B0 +:1014200000F024B800F026B800F028B800F02AB880 +:1014300000F02CB800F02EB800F030B800F032B850 +:1014400000F034B800F036B800F038B803980599C9 +:10145000886240E003980599C8623CE003980599CA +:10146000086338E003980599486334E003980599C8 +:10147000886330E003980599C8632CE003980599C8 +:10148000086428E003980599486424E003980599C6 +:10149000886420E003980599C8641CE003980599C6 +:1014A000086518E003980599486514E003980599C4 +:1014B000886510E003980599C8650CE003980599C4 +:1014C000086608E00599486A40F4800048620120F7 +:1014D0008DF80B00FFE72BE0059890F82000E8B9A5 +:1014E000FFE79DF81300014600910D2804D0FFE7A7 +:1014F00000980E2804D007E003980599C8650CE011 +:1015000003980599086608E00599486A40F4800048 +:10151000486201208DF80B00FFE708E00599486A52 +:1015200040F48000486201208DF80B00FFE7FFE7E0 +:101530009DF80B008DF81B00FFE79DF81B0007B01E +:101540007047000081B0009001B0704781B00090FA +:1015500001B0704781B0009001B0704781B0009039 +:1015600001B0704781B0009001B0704780B584B081 +:101570000290029890F8200001282FD1FFE70299ED +:10158000022081F8200002980168086820F001001C +:10159000086000F091FB0190FFE702980068406846 +:1015A000C007A8B1FFE700F087FB0199401A0B289C +:1015B0000DD3FFE70299486A40F40030486202996F +:1015C000052081F8200001208DF80F000FE0E4E7EE +:1015D0000299002048628DF80F0008E00299486ADD +:1015E00040F40020486201208DF80F00FFE79DF8CD +:1015F0000F0004B080BD000081B0009001B07047C2 +:1016000081B0009001B0704781B0009001B0704788 +:1016100081B0009001B0704781B0009001B0704778 +:1016200081B0009001B0704784B003908DF80B102A +:1016300000208DF80A00039890F82000012840F05F +:10164000A080FFE79DF80B00014601910E2800F2F3 +:101650008E8001990FF2080000EB8100874600BFE1 +:1016600000F01CB800F021B800F026B800F02BB84C +:1016700000F030B800F035B800F03AB800F03FB8EC +:1016800000F044B800F049B800F04EB800F053B88C +:1016900000F058B800F05DB800F062B8039941F26C +:1016A0000160C0F6000088626AE0039941F21160AF +:1016B000C0F60000C86263E0039941F22160C0F601 +:1016C000000008635CE0039941F2F950C0F60000A5 +:1016D000486355E0039941F20960C0F60000886351 +:1016E0004EE0039941F21960C0F60000C86347E07C +:1016F000039941F24D50C0F60000086440E00399A0 +:1017000041F24550C0F60000486439E0039941F2C7 +:101710005D50C0F60000886432E0039941F25550F4 +:10172000C0F60000C8642BE0039941F26550C0F692 +:101730000000086524E0039941F2F170C0F6000052 +:1017400048651DE0039940F64D00C0F6000088652D +:1017500016E0039941F2E120C0F60000C8650FE0F1 +:10176000039941F28920C0F60000086608E0039959 +:10177000486A40F48000486201208DF80A00FFE7C3 +:1017800031E0039890F8200018BBFFE79DF80B00AC +:10179000014600910D2804D0FFE700980E2807D0DD +:1017A0000DE0039941F2E120C0F60000C8650FE0AA +:1017B000039941F28920C0F60000086608E0039909 +:1017C000486A40F48000486201208DF80A00FFE773 +:1017D00008E00399486A40F48000486201208DF8CF +:1017E0000A00FFE7FFE79DF80A0004B07047000019 +:1017F00081B0009001B070478DB00C900B9100202B +:101800000A90FFE70B980A99C840002800F0C180B1 +:10181000FFE70B980A9A0121914008400990099826 +:10182000002800F0B280FFE70A9820F003000821AA +:10183000C4F20101405808900A9800F003008100AA +:101840000F2000FA01F108980840089008980590C8 +:101850000C9840F60001C4F20101884203D1FFE771 +:101860000020049026E00C9840F60041C4F20101EB +:10187000884203D1FFE70120039018E00C9841F261 +:101880000001C4F20101884203D1FFE70220029067 +:101890000AE00C9941F20042C4F201020420914294 +:1018A00008BF03200290FFE702980390FFE7039828 +:1018B0000490FFE7059804990A9A02F00302920047 +:1018C0009140884232D1FFE7099A40F20041C4F2C8 +:1018D0000101086890430860099A40F20441C4F28B +:1018E0000101086890430860099A40F20C41C4F273 +:1018F0000101086890430860099A40F20841C4F267 +:1019000001010868904308600A9800F00300810014 +:101910000F2088400890089B0A9820F003010822B5 +:10192000C4F20102885898438850FFE70998FF28BD +:1019300003D8FFE70C98019003E00C980430019065 +:10194000FFE7019807900998FF2804D8FFE70A9855 +:101950008000009006E00A996FF01F0000EB810004 +:101960000090FFE70098069007980068069A0F21FC +:101970009140884304219140084307990860099ADF +:101980000C99C8689043C860FFE70A9801300A9034 +:1019900038E70DB07047000090B00F900E91002016 +:1019A0000D900990FFE70E9800680D99C840002837 +:1019B00000F07F81FFE70D99012088400C900E9880 +:1019C00000680C9908400B900B980C99884240F0E5 +:1019D0006C81FFE70E9840680590002851D0FFE722 +:1019E000059801283AD0FFE7059802283FD0FFE785 +:1019F000059803285FD0FFE70598112832D0FFE74C +:101A00000598122838D0FFE705980021C1F211018E +:101A1000884236D0FFE705980021C1F212018842C2 +:101A20002FD0FFE705980021C1F22101884228D07C +:101A3000FFE705980021C1F22201884221D0FFE78B +:101A400005980021C1F2310188421AD0FFE70598BC +:101A50000021C1F23201884213D02FE00E98C068F5 +:101A600009902CE00E98C0680430099027E00E9889 +:101A7000C0680830099022E00E98C0680C300990C8 +:101A80001DE00E98806818B9FFE70420099011E066 +:101A90000E988068012806D1FFE7082009900C986D +:101AA0000F99086105E0082009900C980F9948618A +:101AB000FFE7FFE703E00020099000E0FFE70B9855 +:101AC000FF2803D8FFE70F98049003E00F98043035 +:101AD0000490FFE7049808900B98FF2804D8FFE7CC +:101AE0000D988000039006E00D996FF01F0000EB49 +:101AF00081000390FFE70398079008980068079A11 +:101B00000F21914088430999914008430899086042 +:101B10000E98C079C006002840F1C680FFE7FFE7B5 +:101B200041F21800C4F20200016841F001010160B5 +:101B3000006800F0010006900698FFE70D9820F07D +:101B400003000821C4F2010140580A900D9800F0EA +:101B5000030081000F2000FA01F10A9888430A90DF +:101B60000F9840F60001C4F20101884203D1FFE75B +:101B70000020029026E00F9840F60041C4F20101D7 +:101B8000884203D1FFE70120019018E00F9841F24D +:101B90000001C4F20101884203D1FFE70220009056 +:101BA0000AE00F9941F20042C4F20102042091427E +:101BB00008BF03200090FFE700980190FFE701981D +:101BC0000290FFE702980D9901F00301890000FAE5 +:101BD00001F10A9808430A900A980D9921F003012F +:101BE0000822C4F2010288500E988079C0060028AD +:101BF00009D5FFE70B9A40F20841C4F201010868D9 +:101C00001043086008E00B9A40F20841C4F2010159 +:101C1000086890430860FFE70E98807980060028E6 +:101C200009D5FFE70B9A40F20C41C4F201010868A4 +:101C30001043086008E00B9A40F20C41C4F2010125 +:101C4000086890430860FFE70E98807980070028B5 +:101C500009D5FFE70B9A40F20441C4F2010108687C +:101C60001043086008E00B9A40F20441C4F20101FD +:101C7000086890430860FFE70E988079C00748B174 +:101C8000FFE70B9A40F20041C4F2010108681043DB +:101C9000086008E00B9A40F20041C4F201010868B4 +:101CA00090430860FFE7FFE7FFE70D9801300D90D4 +:101CB00079E610B07047000041F20C40C2F200001B +:101CC0000068704740F20800C2F20000027841F25A +:101CD0000C41C2F20001086810440860704700001F +:101CE00080B542F20001C4F20201086840F0100021 +:101CF0000860032000F090F80F2000F005F800F0D5 +:101D00003BF8002080BD000080B582B0009040F21A +:101D10000400C2F20000006840F20801C2F20001B3 +:101D20000A784FF47A71B1FBF2F1B0FBF1F001F0F7 +:101D3000BDFA20B1FFE701208DF8070018E00098F8 +:101D40000F280DD8FFE700994FF0FF30002200F078 +:101D500049F8009840F20C01C2F20001086003E06B +:101D600001208DF8070003E000208DF80700FFE751 +:101D70009DF8070002B080BD82B0FFE741F2180075 +:101D8000C4F20200016841F001010160006800F046 +:101D9000010001900198FFE7FFE741F21C00C4F247 +:101DA0000200016841F080510160006800F080503D +:101DB00000900098FFE702B07047000080B582B045 +:101DC0008DF807009DF9070004F0F8FA02B080BD15 +:101DD00080B582B08DF807009DF9070004F00AFB7A +:101DE00002B080BD80B586B08DF8170004910392D3 +:101DF0000020029004F016FB02909DF9170001905C +:101E000002980499039A02F017FA0146019804F027 +:101E100011FB06B080BD000080B582B00190019832 +:101E200004F02AFB02B080BD2021C4F20E21012063 +:101E30000860704780B588B0079000200690059034 +:101E400004900390029007980190012866D0FFE764 +:101E50000198022800F0A580FFE70198102840F0C3 +:101E6000B080FFE741F20400C4F202000068039072 +:101E700041F20000C4F202000068C00100284CD505 +:101E8000FFE70398C0F3834146F2BC50C0F6000060 +:101E9000405C04909DF80E00C007F0B1FFE741F2EE +:101EA0000400C4F202000068C0F3404146F2CC5086 +:101EB000C0F60000405C06909DF80E00C00758B1C7 +:101EC000FFE7069941F20020C0F27A00B0FBF1F082 +:101ED000049948430590FFE707E0049840F6001195 +:101EE000C0F23D0148430590FFE741F20400C4F20F +:101EF000020000684002002803D5FFE70598029021 +:101F00000AE0059840004AF6AB21CAF6AA21A0FBD8 +:101F1000011040080290FFE7FFE753E041F2200084 +:101F2000C4F2020000680390039800F44070B0F51A +:101F3000807F0AD1FFE79DF80C008007002804D5B8 +:101F4000FFE74FF4004002902AE0039800F440704D +:101F5000B0F5007F0DD1FFE741F22400C4F202008A +:101F600000688007002804D5FFE749F6404002904A +:101F700015E0039800F44070B0F5407F0DD1FFE705 +:101F800041F20000C4F2020000688003002804D57A +:101F9000FFE74FF22440029000E0FFE7FFE7FFE792 +:101FA00010E000F029FA41F20401C4F202010968CC +:101FB00001F44042022101EB5231B0FBF1F00290FA +:101FC00000E0FFE7029808B080BD000080B586B051 +:101FD000049000200390029004980078C007002825 +:101FE00000F0AC80FFE700208DF8070041F21C00F4 +:101FF000C4F202000068C000002813D4FFE7FFE726 +:1020000041F21C00C4F20200016841F080510160FD +:10201000006800F0805000900098FFE701208DF8E4 +:102020000700FFE747F20000C4F200000068C005A7 +:10203000002822D4FFE747F20001C4F2000108683B +:1020400040F480700860FFF737FE0390FFE747F227 +:102050000000C4F200000068C00500280CD4FFE7AF +:10206000FFF72AFE0399401A652804D3FFE70320EF +:102070008DF817008AE0EAE7FFE741F22000C4F29A +:102080000200006800F4407002900298E0B3FFE79D +:1020900002980499496801F44071884234D0FFE7FE +:1020A00041F22001C4F20201086820F4407002905D +:1020B00040F24042C4F24222012010600020106031 +:1020C000029808609DF80800C007E0B1FFE7FFF73D +:1020D000F3FD0390FFE741F22000C4F20200006824 +:1020E000800700280ED4FFE7FFF7E6FD0399401AAA +:1020F00041F28931884204D3FFE703208DF81700AD +:1021000044E0E8E7FFE7FFE741F22001C4F2020103 +:10211000086820F44070049A5268104308609DF8E3 +:102120000700012809D1FFE741F21C01C4F20201B6 +:10213000086820F080500860FFE7FFE70498007807 +:10214000800700280CD5FFE741F20401C4F2020128 +:10215000086820F44040049A926810430860FFE742 +:1021600004980078C00600280CD5FFE741F204016E +:10217000C4F20201086820F48000049AD268104377 +:102180000860FFE700208DF81700FFE79DF81700B3 +:1021900006B080BD80B584B002900191029820B94C +:1021A000FFE701208DF80F001BE1019842F20001CA +:1021B000C4F20201096801F00701884216D9FFE75D +:1021C00042F20000C4F20200016821F00701019A06 +:1021D00011430160006800F007000199884204D0B3 +:1021E000FFE701208DF80F00FBE0FFE70298007881 +:1021F000800700282AD5FFE70298007840070028CA +:1022000009D5FFE741F20401C4F20201086840F475 +:10221000E0600860FFE7029800780007002809D511 +:10222000FFE741F20401C4F20201086840F4605083 +:102230000860FFE741F20401C4F20201086820F0DF +:10224000F000029A926810430860FFE70298007855 +:10225000C007002860D0FFE70298406801280ED12F +:10226000FFE741F20000C4F202000068800300288A +:1022700004D4FFE701208DF80F00B2E021E00298BE +:10228000406802280ED1FFE741F20000C4F20200CC +:1022900000688001002804D4FFE701208DF80F00BA +:1022A0009FE00DE041F20000C4F2020000688007E8 +:1022B000002804D4FFE701208DF80F0091E0FFE72C +:1022C000FFE741F20401C4F20201086820F00300B4 +:1022D000029A526810430860FFF7EEFC0090FFE797 +:1022E00041F20400C4F20200006800F00C00029900 +:1022F0004968B0EB810F0ED0FFE7FFF7DDFC0099D6 +:10230000401A41F28931884204D3FFE703208DF857 +:102310000F0066E0E4E7FFE7019842F20001C4F233 +:102320000201096801F00701884216D2FFE742F274 +:102330000000C4F20200016821F00701019A114374 +:102340000160006800F007000199884204D0FFE7AF +:1023500001208DF80F0044E0FFE702980078400765 +:1023600000280CD5FFE741F20401C4F2020108681D +:1023700020F4E060029AD26810430860FFE70298F8 +:102380000078000700280DD5FFE741F20401C4F2F0 +:102390000201086820F46050029A126940EAC20003 +:1023A0000860FFE700F03AF841F20401C4F20201CC +:1023B0000968C9B20A0946F2A451C0F60001895C55 +:1023C000C84040F20401C2F20001086040F20C0073 +:1023D000C2F200000068FFF797FC00208DF80F00A4 +:1023E000FFE79DF80F0004B080BD000040F204003C +:1023F000C2F200000068704780B5FFF7F7FF41F2B6 +:102400000401C4F202010968C1F3C22246F2B451C8 +:10241000C0F60001895CC84080BD000086B0002085 +:102420000590049003900290019041F20400C4F2E0 +:10243000020000680590059800F00C00014600912C +:1024400000283FD0FFE70098042804D0FFE7009859 +:10245000082806D037E041F20020C0F27A0001904F +:1024600037E00598C0F3834146F2CE50C0F6000035 +:10247000405C02909DF81600C007C0B1FFE741F232 +:102480000400C4F202000068C0F3404146F2DE508E +:10249000C0F60000405C0490029841F20021C0F2B6 +:1024A0007A0148430499B0FBF1F0039007E00298E9 +:1024B00040F60011C0F23D0148430390FFE7039846 +:1024C000019006E0FFE741F20020C0F27A0001909F +:1024D000FFE7019806B0704780B588B00790069175 +:1024E0000592002004900390029001900221029135 +:1024F0000321049103904FF480700190FFE741F2B3 +:102500001800C4F20200016841F004010160006893 +:1025100000F0040000900098FFE740F60000C4F2CD +:10252000010001A9FFF738FA41F20401C4F20201E7 +:10253000086820F0E060069A1043086008B080BD8B +:1025400080B586B00490049820B9FFE701208DF88B +:1025500017002EE304980078C007002800F0AE8032 +:10256000FFE741F20400C4F20200006800F00C0032 +:10257000042813D0FFE741F20400C4F2020000680F +:1025800000F00C0008281BD1FFE741F20400C4F260 +:1025900002000068C003002812D5FFE741F20000E6 +:1025A000C4F2020000688003002808D5FFE7049801 +:1025B000406820B9FFE701208DF81700F9E27CE0C0 +:1025C000FFE704984068B0F5803F09D1FFE741F28A +:1025D0000001C4F20201086840F48030086032E073 +:1025E0000498406868B9FFE741F20001C4F20201B3 +:1025F000086820F480300860086820F480200860B3 +:1026000020E004984068B0F5A02F0DD1FFE741F21B +:102610000001C4F20201086840F4802008600868E4 +:1026200040F4803008600CE041F20001C4F2020185 +:10263000086820F480300860086820F48020086072 +:10264000FFE7FFE7FFE7FFE704984068D0B1FFE747 +:10265000FFF732FB0390FFE741F20000C4F20200F3 +:102660000068800300280CD4FFE7FFF725FB0399DF +:10267000401A652804D3FFE703208DF8170098E27D +:10268000EAE719E0FFF718FB0390FFE741F20000CB +:10269000C4F202000068800300280CD5FFE7FFF7B2 +:1026A0000BFB0399401A652804D3FFE703208DF83C +:1026B00017007EE2EAE7FFE7FFE7FFE7049800780C +:1026C0008007002840F18D80FFE741F20400C4F24A +:1026D0000200006810F00C0F13D0FFE741F2040075 +:1026E000C4F20200006800F00C00082829D1FFE7BE +:1026F00041F20400C4F202000068C003002820D4A4 +:10270000FFE741F20000C4F20200006880070028E1 +:1027100009D5FFE704980069012804D0FFE70120EC +:102720008DF8170045E241F20001C4F20201086889 +:1027300020F0F800049A526940EAC2000860FFE7FE +:102740004EE00498006958B3FFE70021C4F242212B +:1027500001200860FFF7B0FA0390FFE741F20000A4 +:10276000C4F202000068800700280CD4FFE7FFF7DE +:10277000A3FA0399401A032804D3FFE703208DF836 +:10278000170016E2EAE741F20001C4F2020108680C +:1027900020F0F800049A526940EAC20008601EE086 +:1027A0000021C4F2422100200860FFF785FA03905F +:1027B000FFE741F20000C4F2020000688007002831 +:1027C0000CD5FFE7FFF778FA0399401A032804D3E2 +:1027D000FFE703208DF81700EBE1EAE7FFE7FFE7EB +:1027E000FFE7049800780007002848D5FFE7049821 +:1027F000806918B3FFE740F28041C4F24221012012 +:102800000860FFF759FA0390FFE741F22400C4F291 +:1028100002000068800700280CD4FFE7FFF74CFA9D +:102820000399401A032804D3FFE703208DF817000B +:10283000BFE1EAE7012003F0B3F81FE040F2804176 +:10284000C4F2422100200860FFF736FA0390FFE748 +:1028500041F22400C4F202000068800700280CD571 +:10286000FFE7FFF729FA0399401A032804D3FFE78B +:1028700003208DF817009CE1EAE7FFE7FFE70498E3 +:1028800000784007002840F1D880FFE700208DF84D +:10289000070041F21C00C4F202000068C0000028DA +:1028A00013D4FFE7FFE741F21C00C4F20200016805 +:1028B00041F080510160006800F080500090009865 +:1028C000FFE701208DF80700FFE747F20000C4F2A0 +:1028D00000000068C005002822D4FFE747F200018D +:1028E000C4F20001086840F480700860FFF7E4F962 +:1028F0000390FFE747F20000C4F200000068C00543 +:1029000000280CD4FFE7FFF7D7F90399401A652890 +:1029100004D3FFE703208DF817004AE1EAE7FFE759 +:10292000FFE70498C068012809D1FFE741F22001C0 +:10293000C4F20201086840F00100086031E0049828 +:10294000C06868B9FFE741F22001C4F202010868DB +:1029500020F001000860086820F0040008601FE013 +:102960000498C06805280DD1FFE741F22001C4F2A8 +:102970000201086840F004000860086840F00100A7 +:1029800008600CE041F22001C4F20201086820F066 +:1029900001000860086820F004000860FFE7FFE716 +:1029A000FFE7FFE70498C068E0B1FFE7FFF784F9AD +:1029B0000390FFE741F22000C4F2020000688007A4 +:1029C00000280ED4FFE7FFF777F90399401A41F288 +:1029D0008931884204D3FFE703208DF81700E8E02F +:1029E000E8E71BE0FFF768F90390FFE741F22000FA +:1029F000C4F202000068800700280ED5FFE7FFF749 +:102A00005BF90399401A41F28931884204D3FFE708 +:102A100003208DF81700CCE0E8E7FFE79DF80700FA +:102A2000012809D1FFE741F21C01C4F20201086844 +:102A300020F080500860FFE7FFE70498C069002895 +:102A400000F0B380FFE741F20400C4F20200006826 +:102A500000F00C00082800F08280FFE70498C069AD +:102A600002285CD1FFE76021C4F242210020086007 +:102A7000FFF722F90390FFE741F20000C4F20200E1 +:102A80000068800100280CD5FFE7FFF715F90399CE +:102A9000401A032804D3FFE703208DF8170088E0CD +:102AA000EAE70498006AB0F5803F0CD1FFE741F2F5 +:102AB0000401C4F20201086820F40030049A92680C +:102AC00010430860FFE741F20401C4F20201086804 +:102AD00020F47410049B1A6A5B6A1A43104308605E +:102AE0006021C4F2422101200860FFF7E5F803905D +:102AF000FFE741F20000C4F20200006880010028F4 +:102B00000CD4FFE7FFF7D8F80399401A032804D341 +:102B1000FFE703208DF817004BE0EAE71EE0602195 +:102B2000C4F2422100200860FFF7C6F80390FFE7D7 +:102B300041F20000C4F202000068800100280CD5B8 +:102B4000FFE7FFF7B9F80399401A032804D3FFE71A +:102B500003208DF817002CE0EAE7FFE724E0049853 +:102B6000C069012804D1FFE701208DF8170020E09B +:102B700041F20400C4F2020000680290029800F4DE +:102B800080300499096A884208D1FFE7029800F46E +:102B900070100499496A884204D0FFE701208DF83B +:102BA000170006E0FFE7FFE7FFE700208DF81700BA +:102BB000FFE79DF8170006B080BD000080B586B025 +:102BC00004900391029200208DF80600ADF80400F5 +:102BD000049818B1FFE7039820B9FFE701208DF8AA +:102BE000170034E0049801A9002200F035F820B164 +:102BF000FFE701208DF8170029E00498007B039976 +:102C000008700498C07B0399C8700498407B0399AE +:102C100048700498807B03998870029898B1FFE708 +:102C20000398C07802F0F0FE0399C87003984078CA +:102C300002F0EAFE039948700398807802F0E4FEFF +:102C400003998870FFE700208DF81700FFE79DF8D3 +:102C5000170006B080BD000080B588B006900591D1 +:102C6000049200200390029001900090069818B101 +:102C7000FFE7059820B9FFE701208DF81F00C0E0AD +:102C80000698006840684007002803D5FFE7012048 +:102C900018B906E0012020B9FFE701208DF81F00D8 +:102CA000AFE0069803F036F8039003994BF2C53075 +:102CB000C9F2A210A1FB0021C90A0091039BA3FB4A +:102CC0000021C90A4FF4616201FB123348F6890101 +:102CD000C8F68801A3FB01C35B09DDF814C08CF8BA +:102CE0000130039BA3FB00C0C00A00FB1230A0FB15 +:102CF000011251090901A1EB5211A0EB81000599C4 +:102D00008870009818285ED3FFE700984AF6AB2138 +:102D1000CAF6AA21A0FB0120000901900098A0FB9F +:102D20000121090901EB4101A0EBC10005990870DF +:102D3000069802F0D5FF02900298013050B1FFE7EB +:102D400002980399884205D9FFE703990298401A2F +:102D5000029003E04FF0FF300290FFE7019840F24D +:102D6000A32141430398A0EBC11003900698039957 +:102D700003F0A0F820B1FFE701208DF81F0040E02C +:102D80000298013078B1FFE7039902980844029055 +:102D90000698029903F066F820B1FFE701208DF84C +:102DA0001F002EE00AE00698029903F05BF820B1BC +:102DB000FFE701208DF81F0023E0FFE70698019947 +:102DC00002F040FE03E0009805990870FFE70498C0 +:102DD00098B1FFE70598007802F016FE0599087093 +:102DE0000598407802F010FE0599487005988078A3 +:102DF00002F00AFE05998870FFE700208DF81F0099 +:102E0000FFE79DF81F0008B080BD000080B584B0CA +:102E1000029000200190029820B9FFE701208DF870 +:102E20000F0084E00298407C38B9FFE70299002047 +:102E30000874029800F080F8FFE7029902204874B5 +:102E4000029800F001FA38B1FFE7029904204874B3 +:102E500001208DF80F006AE0029802F0ADFE38B153 +:102E6000FFE702990420487401208DF80F005EE00E +:102E700002980168486820F007004860029880685E +:102E800048B1FFE746F63041C4F20001086820F07F +:102E900001000860FFE746F62C41C4F20001086813 +:102EA00020F46070029A92681043086002984068AB +:102EB000013020B1FFE702984068019012E0012044 +:102EC000FEF7B8FF0190019838B9FFE70299042096 +:102ED000487401208DF80F0029E001980138019015 +:102EE000FFE7FFE7BDF8060000F00F000299096850 +:102EF0008860BDF8040002990968C860029802F071 +:102F000087FE38B1FFE702990420487401208DF84C +:102F10000F000CE002990020C873029A012151733E +:102F2000029A9173029A51748DF80F00FFE79DF891 +:102F30000F0004B080BD000080B582B00190019800 +:102F4000006842F60001C4F20001884218D1FFE790 +:102F5000FEF76AFFFFE741F21C00C4F202000168BD +:102F600041F000610160006800F00060009000988E +:102F7000FFE740F23C41C4F2422101200860FFE734 +:102F800002B080BD80B588B0069005910492002003 +:102F9000039002900190069818B1FFE7059820B9B8 +:102FA000FFE701208DF81F00A7E0FFE70698007CEF +:102FB000012804D1FFE702208DF81F009DE006994B +:102FC00001200874FFE7FFE706990220487404987F +:102FD00068B9FFE70598C0780699C87305984078E6 +:102FE00006994873059880780699887312E00598C9 +:102FF000C07802F0F3FC0699C8730598407802F097 +:10300000EDFC069948730598807802F0E7FC069974 +:103010008873FFE70698417B827BC07B02F0B0FE9D +:10302000069908730698007B05990870069802F0C7 +:1030300071FE039003984BF2C531C9F2A211A0FBB7 +:103040000110C00A0190019819284AD3FFE701989E +:103050004AF6AB21CAF6AA21A0FB0110000940F2F2 +:10306000A32141430398A0EBC11003900698039954 +:1030700002F020FF60B1FFE7069904204874FFE7E3 +:10308000069900200874FFE701208DF81F0034E046 +:10309000069802F025FE02900298013000B3FFE787 +:1030A0000298039988421AD2FFE7029845F28011EC +:1030B000C0F20101084402900698029902F0D2FE83 +:1030C00060B1FFE7069904204874FFE706990020E5 +:1030D0000874FFE701208DF81F000EE0FFE7FFE70F +:1030E000FFE7069901204874FFE70699002008745D +:1030F000FFE700208DF81F00FFE79DF81F0008B0D4 +:1031000080BD000080B588B0069005910492002033 +:1031100003900290069818B1FFE7059820B9FFE7E1 +:1031200001208DF81F008AE0FFE70698007C012847 +:1031300004D1FFE702208DF81F0080E006990120EE +:103140000874FFE7FFE7069902204874049870B9F5 +:10315000FFE7059908784A7889784FF46163584306 +:10316000C2EB021200EB8200084403901BE00598BA +:10317000007802F033FC4FF46161484300900598F9 +:10318000407802F02BFC01460098C1EB011100EBE6 +:10319000810001900598807802F020FC014601989A +:1031A00008440390FFE70698039902F083FE60B19C +:1031B000FFE7069904204874FFE706990020087489 +:1031C000FFE701208DF81F0039E006980168486884 +:1031D00020F005004860069802F082FD02900298F7 +:1031E000013000B3FFE70298039988421AD2FFE743 +:1031F000029845F28011C0F201010844029006983D +:10320000029902F02FFE60B1FFE70699042048748E +:10321000FFE7069900200874FFE701208DF81F00E2 +:103220000DE0FFE7FFE7069901204874FFE70699E4 +:1032300000200874FFE700208DF81F00FFE79DF8CD +:103240001F0008B080BD000080B584B0029000204F +:103250000190029820B9FFE701208DF80F0021E0CE +:1032600002980168486820F008004860FEF724FDD5 +:103270000190FFE7029800684068000700280DD41D +:10328000FFE7FEF719FD0199401AB0F57A7F04D9DE +:10329000FFE703208DF80F0004E0EBE700208DF836 +:1032A0000F00FFE79DF80F0004B080BD80B582B02D +:1032B0000190019802F028FE02B080BD81B000901C +:1032C00001B0704781B0009001B0704781B00090AC +:1032D00001B0704781B0009001B0704781B000909C +:1032E00001B0704785B003900291FFE7039890F812 +:1032F0003C00012804D1FFE702208DF813005BE0B9 +:103300000399012081F83C00FFE7FFE703990220C1 +:1033100081F83D00039800684068019003980068B8 +:1033200080680090019820F0700001900298016878 +:10333000019808430190019803990968486003982F +:10334000006842F60041C4F20101884218D0FFE74C +:1033500003980068B0F1804F12D0FFE7039800682F +:1033600040F20041C4F20001884209D0FFE703980F +:10337000006840F60001C4F2000188420ED1FFE768 +:10338000009820F08000009002984168009808435F +:1033900000900098039909688860FFE7039901206D +:1033A00081F83D00FFE70399002081F83C00FFE72A +:1033B00000208DF81300FFE79DF8130005B070475B +:1033C00080B582B00090009820B9FFE701208DF809 +:1033D00007004DE0009890F83D00B0B9FFE7009974 +:1033E000002081F83C00009802F0BCFE0098806C40 +:1033F00038B9FFE7009943F2AD40C0F60000886499 +:10340000FFE70098816C8847FFE70099022081F868 +:103410003D00009951F8040B02F0FCFD00990120D9 +:1034200081F84600FFE70099012081F83E000099ED +:1034300081F83F00009981F84000009981F841002F +:10344000FFE7FFE70099012081F84200009981F829 +:103450004300009981F84400009981F84500FFE796 +:103460000099012081F83D0000208DF80700FFE75A +:103470009DF8070002B080BD80B582B00190019830 +:10348000006840F60001C4F2000188420CD1FFE759 +:1034900041F21C01C4F20201086820F00400086037 +:1034A0001E20FEF78BFCFFE702B080BD80B584B024 +:1034B00003900398006840F60001C4F200018842BE +:1034C00019D1FFE7FFE741F21C00C4F202000168D6 +:1034D00041F004010160006800F0040002900298CD +:1034E000FFE71E20019000221146FEF77BFC0198A9 +:1034F000FEF76EFCFFE704B080BD000080B586B02B +:103500000490039100208DF80B00FFE7049890F8D9 +:103510003C00012804D1FFE702208DF81700ABE042 +:103520000499012081F83C00FFE7FFE7049902209D +:1035300081F83D000498006880680190019820F0AF +:1035400077000190019820F47F4001900198049940 +:1035500009688860039800680090002872D0FFE72F +:10356000009810286ED0FFE7009820286AD0FFE767 +:103570000098302866D0FFE70098402855D0FFE734 +:103580000098502837D0FFE70098602840D0FFE728 +:10359000009870280BD0FFE70098B0F5805F05D049 +:1035A000FFE70098B0F5005F16D052E055E00498B0 +:1035B0000068039B5A689968DB6802F0A3FD0498D1 +:1035C000006880680190019840F0770001900198B0 +:1035D00004990968886040E004980068039B5A6871 +:1035E0009968DB6802F08EFD04980168886840F4F1 +:1035F0008040886031E004980068039A5168D2687E +:1036000002F010FE04980068502102F095FD24E0BD +:1036100004980068039A5168D26802F02BFE04985F +:103620000068602102F088FD17E004980068039AA2 +:103630005168D26802F0F6FD04980068402102F05B +:103640007BFD0AE0049800680399096802F074FDA4 +:1036500003E001208DF80B00FFE70499012081F8B9 +:103660003D00FFE70499002081F83C00FFE79DF84A +:103670000B008DF81700FFE79DF8170006B080BD1E +:1036800081B0009001B0704781B0009001B07047E8 +:1036900081B0009001B0704781B0009001B07047D8 +:1036A00081B0009001B0704781B0009001B07047C8 +:1036B00081B0009001B0704780B582B00190019850 +:1036C0000068006900F002010020B0EB510F2BD020 +:1036D000FFE701980068C06800F002010020B0EB2D +:1036E000510F20D0FFE7019801686FF002000861D8 +:1036F000019901200877019800688069800728B146 +:10370000FFE70198D0F89010884708E00198D0F8BA +:10371000981088470198D0F89C108847FFE70199D6 +:1037200000200877FFE7FFE701980068006900F0D4 +:1037300004010020B0EB910F2CD0FFE70198006846 +:10374000C06800F004010020B0EB910F21D0FFE72A +:10375000019801686FF00400086101990220087760 +:1037600001980068806910F4407F05D0FFE7019858 +:10377000D0F89010884708E00198D0F89810884752 +:103780000198D0F89C108847FFE70199002008773E +:10379000FFE7FFE701980068006900F008010020DA +:1037A000B0EBD10F2BD0FFE701980068C06800F0A4 +:1037B00008010020B0EBD10F20D0FFE7019801688D +:1037C0006FF00800086101990420087701980068EB +:1037D000C069800728B1FFE70198D0F890108847AA +:1037E00008E00198D0F8981088470198D0F89C100C +:1037F0008847FFE7019900200877FFE7FFE7019876 +:103800000068006900F010010020B0EB111F2CD0FF +:10381000FFE701980068C06800F010010020B0EBDD +:10382000111F21D0FFE7019801686FF010000861B7 +:1038300001990820087701980068C06910F4407F5A +:1038400005D0FFE70198D0F89010884708E001986C +:10385000D0F8981088470198D0F89C108847FFE767 +:10386000019900200877FFE7FFE7019800680069E9 +:10387000C00788B1FFE701980068C068C00750B171 +:10388000FFE7019801686FF0010008610198D0F826 +:1038900080108847FFE7FFE7019800680069C1B220 +:1038A0000020B0EBD11F14D0FFE701980068C0687A +:1038B000C1B20020B0EBD11F0AD0FFE70198016828 +:1038C0006FF0800008610198D0F8B0108847FFE7DA +:1038D000FFE701980068006900F040010020B0EBAC +:1038E000911F15D0FFE701980068C06800F0400103 +:1038F0000020B0EB911F0AD0FFE7019801686FF03C +:10390000400008610198D0F888108847FFE7FFE77A +:1039100001980068006900F020010020B0EB511F01 +:1039200015D0FFE701980068C06800F02001002072 +:10393000B0EB511F0AD0FFE7019801686FF020003B +:1039400008610198D0F8A8108847FFE7FFE702B0A8 +:1039500080BD000081B0009001B0704781B0009040 +:1039600001B0704781B0009001B0704781B0009005 +:1039700001B0704781B0009001B0704781B00090F5 +:1039800001B0704781B0009001B0704781B00090E5 +:1039900001B0704781B0009001B0704781B00090D5 +:1039A00001B0704781B0009001B0704787B00590BA +:1039B0008DF81310039200208DF80B00039820B9A6 +:1039C000FFE701208DF81B003DE1059890F83D00D0 +:1039D000012840F0C380FFE79DF8130001460191E4 +:1039E0001A2800F2B68001990FF2080000EB81005E +:1039F000874600BF00F034B800F036B800F038B8A1 +:103A000000F03AB800F03CB800F03EB800F040B822 +:103A100000F042B800F044B800F046B800F048B8F2 +:103A200000F04AB800F04CB800F04EB800F050B8C2 +:103A300000F053B800F056B800F059B800F05CB888 +:103A400000F05FB800F062B800F065B800F068B848 +:103A500000F06BB800F06EB800F071B800F074B808 +:103A600003980599886478E003980599C86474E020 +:103A700003980599086570E00398059948656CE01E +:103A800003980599886568E003980599C86564E01E +:103A900003980599086660E00398059948665CE01C +:103AA00003980599886658E003980599C86654E01C +:103AB00003980599086750E00398059948674CE01A +:103AC00003980599886748E003980599C86744E01A +:103AD00003980599C1F880003FE003980599C1F863 +:103AE00084003AE003980599C1F8880035E003980E +:103AF0000599C1F88C0030E003980599C1F8900051 +:103B00002BE003980599C1F8940026E003980599E5 +:103B1000C1F8980021E003980599C1F89C001CE0C9 +:103B200003980599C1F8A00017E003980599C1F81A +:103B3000A40012E003980599C1F8A8000DE00398CD +:103B40000599C1F8AC0008E003980599C1F8B000E8 +:103B500003E001208DF80B00FFE76FE0059890F877 +:103B60003D00002865D1FFE79DF813000146009154 +:103B70000D2859D800990FF2080000EB8100874604 +:103B800000F01AB800F01CB800F01EB800F020B821 +:103B900000F022B800F024B800F026B800F028B8F1 +:103BA00000F02AB800F02CB800F02EB800F030B8C1 +:103BB00000F032B800F034B803980599886437E013 +:103BC00003980599C86433E00398059908652FE0C8 +:103BD0000398059948652BE003980599886527E0C7 +:103BE00003980599C86523E00398059908661FE0C6 +:103BF0000398059948661BE003980599886617E0C5 +:103C000003980599C86613E00398059908670FE0C3 +:103C10000398059948670BE003980599886707E0C2 +:103C200003980599C86703E001208DF80B00FFE7B2 +:103C300003E001208DF80B00FFE7FFE79DF80B0084 +:103C40008DF81B00FFE79DF81B0007B070470000D0 +:103C500081B0009001B0704781B0009001B0704712 +:103C600084B003908DF80B1000208DF80A000398A3 +:103C700090F83D00012840F01481FFE79DF80B000B +:103C8000014601911A2800F2078101990FF20800FC +:103C900000EB8100874600BF00F034B800F039B86F +:103CA00000F03EB800F043B800F048B800F04DB85E +:103CB00000F052B800F057B800F05CB800F061B8FE +:103CC00000F066B800F06BB800F070B800F075B89E +:103CD00000F07AB800F080B800F086B800F08CB838 +:103CE00000F092B800F098B800F09EB800F0A4B8C8 +:103CF00000F0AAB800F0B0B800F0B6B800F0BCB858 +:103D000000F0C2B8039943F2AD40C0F600008864E9 +:103D1000C6E0039943F27940C0F60000C864BFE0F2 +:103D2000039943F2B160C0F600000865B8E003995A +:103D300043F2A960C0F600004865B1E0039943F67C +:103D40006510C0F600008865AAE0039943F65D108F +:103D5000C0F60000C865A3E0039943F68510C0F6DD +:103D6000000008669CE0039943F67D10C0F6000051 +:103D7000486695E0039943F67510C0F60000886622 +:103D80008EE0039943F66D10C0F60000C86687E028 +:103D9000039943F28960C0F60000086780E0039948 +:103DA00043F28160C0F60000486779E0039943F26E +:103DB000DD20C0F60000886772E0039943F2D52049 +:103DC000C0F60000C8676BE0039943F69D10C0F68B +:103DD0000000C1F8800063E0039943F6A510C0F627 +:103DE0000000C1F884005BE0039943F65140C0F63F +:103DF0000000C1F8880053E0039943F65940C0F62B +:103E00000000C1F88C004BE0039943F29960C0F6C2 +:103E10000000C1F8900043E0039943F2A160C0F6AE +:103E20000000C1F894003BE0039943F65510C0F63A +:103E30000000C1F8980033E0039943F68D10C0F6F6 +:103E40000000C1F89C002BE0039943F69510C0F6E2 +:103E50000000C1F8A00023E0039943F29160C0F68E +:103E60000000C1F8A4001BE0039943F2C520C0F68E +:103E70000000C1F8A80013E0039943F2CD20C0F67A +:103E80000000C1F8AC000BE0039943F2BD20C0F67E +:103E90000000C1F8B00003E001208DF80A00FFE740 +:103EA0009CE0039890F83D00002840F09280FFE7E6 +:103EB0009DF80B00014600910D2800F285800099C5 +:103EC0000FF2080000EB8100874600BF00F01AB82F +:103ED00000F01FB800F024B800F029B800F02EB8A8 +:103EE00000F033B800F038B800F03DB800F042B848 +:103EF00000F047B800F04CB800F051B800F056B8E8 +:103F000000F05BB8039943F2AD40C0F6000088644E +:103F10005EE0039943F27940C0F60000C86457E0C0 +:103F2000039943F2B160C0F60000086550E00399C0 +:103F300043F2A960C0F60000486549E0039943F6E2 +:103F40006510C0F60000886542E0039943F65D10F5 +:103F5000C0F60000C8653BE0039943F68510C0F643 +:103F60000000086634E0039943F67D10C0F60000B7 +:103F700048662DE0039943F67510C0F60000886688 +:103F800026E0039943F66D10C0F60000C8661FE0F6 +:103F9000039943F28960C0F60000086718E00399AE +:103FA00043F28160C0F60000486711E0039943F2D4 +:103FB000DD20C0F6000088670AE0039943F2D520AF +:103FC000C0F60000C86703E001208DF80A00FFE793 +:103FD00003E001208DF80A00FFE7FFE79DF80A00E3 +:103FE00004B07047FFE7FEE783B08DF80B009DF843 +:103FF0000B0000F5FA608DF80B009DF80B10012006 +:104000004BF65003C0F21E5345F62942CCF28F22E4 +:1040100001FB02314FEA31114DF20B72C0F2A302E3 +:104020009142019022D3FFE79DF80B1000208907F1 +:104030000090C1B9FFE79DF80B004BF65002C0F2AB +:104040001E5245F62941CCF28F2100FB01204FEA98 +:10405000B00145F62842C0F28F220020914288BF6D +:1040600001200090FFE700980190FFE7019800F021 +:10407000010003B07047000080B582B040F6E00058 +:10408000C2F20000019046F20041C4F2000101605A +:104090000821416000228260C2604FF4402101612A +:1040A0004FF4801141610276012141768276C27619 +:1040B00002774177FCF79EFF18B1FFE7FCF72AFA79 +:1040C000FFE702B080BD000080B586B000200590FB +:1040D000049003900290FFE741F21800C4F202003E +:1040E000016841F004010160006800F004000190E3 +:1040F0000198FFE74FF48070029002200390059032 +:1041000040F60000C4F2010002A9FDF745FC06B02C +:1041100080BD000080B582B000208DF80600ADF8AB +:104120000400009040F64410C2F2000042F6000184 +:10413000C4F2000101604FF0FF3141604FF4807123 +:104140008160FEF763FE18B1FFE7FCF7E3F9FFE7D4 +:1041500000208DF804008DF805008DF8060040F66B +:104160004410C2F2000001A90122FEF7CBFF18B1F2 +:10417000FFE7FCF7CFF9FFE701228DF800208DF86B +:1041800001208DF8022000208DF8030040F6441035 +:10419000C2F200006946FEF7F5FE18B1FFE7FCF732 +:1041A000B9F9FFE702B080BD80B588B00021019168 +:1041B00007910691059104910391029140F65810E0 +:1041C000C2F2000040F60002C4F2000202604FF6A4 +:1041D000FF12426081604FF47A72C26001618161B6 +:1041E000FFF7EEF818B1FFE7FCF794F9FFE74FF49B +:1041F0008050049040F65810C2F2000004A9FFF766 +:104200007DF918B1FFE7FCF785F9FFE70020029080 +:10421000039040F65810C2F2000002A9FFF762F8BE +:1042200018B1FFE7FCF776F9FFE708B080BD0000A2 +:10423000FFE7FEE7FFE7FEE788B0079006910592EB +:10424000079800F0070004900498C0F107000528C3 +:1042500003D3FFE70420019004E00498C0F10700B5 +:104260000190FFE70198039004980430062803D8D2 +:10427000FFE70020009003E0049803380090FFE778 +:104280000098029006980399012202FA01F101397F +:104290000840029B984005999A40013A1140084312 +:1042A00008B0704780B58AB0DDF830C0CDF820C0C6 +:1042B0000793069205910490BDF814000390BDF891 +:1042C0000C00000B01460291042855D802990FF208 +:1042D000080000EB8100874600F008B800F014B831 +:1042E00000F020B800F02CB800F038B80498059918 +:1042F000069A079BDDF820C0EE46CEF800C000F01D +:1043000001FF8DF827003BE004980599069A079B6A +:10431000DDF820C0EE46CEF800C000F0A3FD8DF819 +:1043200027002DE004980599069A079BDDF820C028 +:10433000EE46CEF800C000F05FFE8DF827001FE0CB +:1043400004980599069A079BDDF820C0EE46CEF842 +:1043500000C000F001FD8DF8270011E004980599D8 +:10436000069A079BDDF820C0EE46CEF800C000F0AC +:10437000BDFD8DF8270003E001208DF82700FFE741 +:104380009DF827000AB080BD80B58AB0DDF830C046 +:10439000CDF820C00793069205910490BDF8140053 +:1043A0000390BDF80C0000090146029103283FD894 +:1043B00002990FF2080000EB8100874600F006B872 +:1043C00000F012B800F01CB800F026B80498059967 +:1043D000069A079BDDF820C0EE46CEF800C000F03C +:1043E00099FF8DF827002BE004980599069A079B02 +:1043F000DDF820C0EE46CEF800C000F0C3FE1BE0A2 +:1044000004980599069A079BDDF820C0EE46CEF881 +:1044100000C000F0CFFE0FE004980599069A079BB4 +:10442000DDF820C0EE46CEF800C000F013FF03E038 +:1044300001208DF8270003E000208DF82700FFE71A +:104440009DF827000AB080BD80B58EB08DF837008A +:104450000C910B929DF837000690002107910120E6 +:104460000890059109900E200A900C98C0F34F30E7 +:1044700001900C98C000043080B202900B98C0F3F9 +:104480004F3003900B98C000043080B2049040F687 +:10449000D400C2F20000006801A9FCF719F918B1B4 +:1044A000FFE7FCF737F8FFE70EB080BD80B582B0BC +:1044B0008DF807009DF80710481E009102280DD3C3 +:1044C000FFE70098032812D1FFE740F6DC00C2F2B4 +:1044D000000000680E21FFF7C3FBFFE740F6D400A1 +:1044E000C2F2000000680621FDF79EF8FFE702B067 +:1044F00080BD000080B58AB0DDF830C0CDF820C0A6 +:104500000793069205910490BDF814000390BDF83E +:104510000C00000B01460291062867D802990FF2A1 +:10452000080000EB8100874600F00CB800F016B8D8 +:1045300000F020B800F02AB800F034B800F03EB81F +:1045400000F048B804980599069A079BDDF820C04A +:10455000EE46CEF800C000F04BFF4BE00498059902 +:10456000069A079BDDF820C0EE46CEF800C000F0AA +:1045700091FF3FE004980599069A079BDDF820C05B +:10458000EE46CEF800C000F04FFF33E004980599E6 +:10459000069A079BDDF820C0EE46CEF800C000F07A +:1045A00051FF27E004980599069A079BDDF820C083 +:1045B000EE46CEF800C000F061FF1BE004980599BC +:1045C000069A079BDDF820C0EE46CEF800C000F04A +:1045D0001DFF0FE004980599069A079BDDF820C09F +:1045E000EE46CEF800C000F03BFF03E001208DF85E +:1045F000270003E000208DF82700FFE79DF8270043 +:104600000AB080BD80B586B04FF0126005904FF0C3 +:104610007F600490002003904FF47021029101917B +:1046200000910599049AFFF70FFF0399029A012060 +:10463000FFF70AFF0199009A0220FFF705FF06B075 +:1046400080BD000080B586B00490039102920020E6 +:1046500001900498E8B1FFE7049940F6D400C2F253 +:1046600000000160006845F6C902C0F6000206219C +:10467000FCF7A8FE8DF803009DF8030040B1FFE7AA +:104680009DF80400FFF712FF02208DF8170059E093 +:1046900007E09DF80400FFF709FF01208DF81700DF +:1046A00050E0019801300190039838B1FFE703987A +:1046B00040F6D801C2F20001086007E09DF804004E +:1046C000FFF7F4FE02208DF817003BE0019801305F +:1046D00001900298E8B1FFE7029940F6DC00C2F2CF +:1046E00000000160006845F2F572C0F600020E217C +:1046F000FFF75CF98DF802009DF8020040B1FFE77A +:104700009DF80400FFF7D2FE02208DF8170019E093 +:1047100007E09DF80400FFF7C9FE04208DF817009C +:1047200010E0019801300190FFF76CFF40F2C801E2 +:10473000C2F20001087840F00100087000208DF8F6 +:104740001700FFE79DF8170006B080BD80B588B060 +:10475000079800F0604007909DF81F0040F010009F +:104760008DF81F009DF81F0040F008008DF81F0015 +:104770009DF81E0000F0F00003308DF81E0049F691 +:10478000F120ADF80C004AF6BF70C5F278600290D7 +:104790004AF6CD30C1F23420019001A805900520E1 +:1047A0000690FA20ADF81000FFE7FBF7A3FD002804 +:1047B00000F06781FFE740F20000C2F200000078DD +:1047C00000EB800140F60C20C2F2000000EB8100FB +:1047D000807900F00F0002281DD1FFE740F20000B1 +:1047E000C2F20000007800EB800140F60C20C2F21B +:1047F000000000EB810C50F82100DCF80410DCF81C +:104800000820DCF80C30DCF810C0EE46CEF800C012 +:10481000FFF748FD2BE140F20000C2F200000078F3 +:1048200000EB800140F60C20C2F2000000EB81009A +:1048300080790007E8B9FFE740F20000C2F200000B +:10484000007800EB800140F60C20C2F2000000EB83 +:10485000810C50F82100DCF80410DCF80820DCF8AA +:104860000C30DCF810C0EE46CEF800C0FFF78CFD2F +:10487000FCE040F20000C2F20000007800EB800192 +:1048800040F60C20C2F2000000EB8100807900F0BD +:104890000F0001281DD1FFE740F20000C2F2000026 +:1048A000007800EB800140F60C20C2F2000000EB23 +:1048B000810C50F82100DCF80410DCF80820DCF84A +:1048C0000C30DCF810C0EE46CEF800C0FFF712FE48 +:1048D000CBE040F20000C2F20000007800EB800163 +:1048E00040F60C20C2F2000000EB8100807900F05D +:1048F0000F0003281DD1FFE740F20000C2F20000C4 +:10490000007800EB800140F60C20C2F2000000EBC2 +:10491000810C50F82100DCF80410DCF80820DCF8E9 +:104920000C30DCF810C0EE46CEF800C000F0C0FD40 +:104930009AE040F20000C2F20000007800EB800133 +:1049400040F60C20C2F2000000EB8100807900F0FC +:104950000F00042839D0FFE740F20000C2F2000047 +:10496000007800EB800140F60C20C2F2000000EB62 +:104970008100807900F00F00052826D0FFE740F283 +:104980000000C2F20000007800EB800140F60C202D +:10499000C2F2000000EB8100807900F00F000628D1 +:1049A00013D0FFE740F20000C2F20000007800EBF5 +:1049B000800140F60C20C2F2000000EB81008079FB +:1049C00000F00F0007281DD1FFE740F20000C2F2FF +:1049D0000000007800EB800140F60C20C2F20000DD +:1049E00000EB810C50F82100DCF80410DCF8082002 +:1049F000DCF80C30DCF810C0EE46CEF800C000F059 +:104A000047F830E040F20000C2F20000007800EB0E +:104A1000800140F60C20C2F2000000EB810080799A +:104A200000F00F0008281DD1FFE740F20000C2F29D +:104A30000000007800EB800140F60C20C2F200007C +:104A400000EB810C50F82100DCF80410DCF80820A1 +:104A5000DCF80C30DCF810C0EE46CEF800C0FBF7F6 +:104A60001BFDFFE7FFE7FFE7FFE7FFE7FFE740F298 +:104A70000001C2F200010878013000F07F000870E8 +:104A8000FFE707980499059A069B00F0B5F88CE6B5 +:104A900080B588B0DDF828C0CDF818C00593049221 +:104AA000039102909DF80E0000F00F0004380146BB +:104AB0000191032846D801990FF2080000EB81000C +:104AC000874600BF00F006B800F012B800F01EB82C +:104AD00000F02AB802980399049A059BDDF818C0E3 +:104AE000EE46CEF800C000F04FFD8DF81F002DE01F +:104AF00002980399049A059BDDF818C0EE46CEF89B +:104B000000C000F08DFD8DF81F001FE00298039992 +:104B1000049A059BDDF818C0EE46CEF800C000F000 +:104B2000CDFD8DF81F0011E002980399049A059BB2 +:104B3000DDF818C0EE46CEF800C000F00DFE8DF88E +:104B40001F0003E001208DF81F00FFE79DF81F0004 +:104B500008B080BD80B584B0039040F6D800C2F2A2 +:104B6000000001680A68516841F01001516000229C +:104B70008DF80A20ADF808200192039909788DF884 +:104B80000810039949788DF80910039989788DF8F0 +:104B90000A10006802A9FEF7B5FA18B1FFE7FBF7A3 +:104BA000B9FCFFE70398C0788DF8070003980079F7 +:104BB0008DF80500039840798DF8060003988079F8 +:104BC0008DF8040040F6D800C2F20000006801A988 +:104BD0000022FEF7D7F918B1FFE7FBF79BFCFFE7D0 +:104BE00040F6D800C2F2000000680168486820F072 +:104BF0001000486004B080BD80B586B00490039377 +:104C0000029201919DF8120000F00F0003280BD1D1 +:104C1000FFE7BDF80410029A9DF80C30049800F0EC +:104C20000BF88DF8170003E001208DF81700FFE75F +:104C30009DF8170006B080BD80B594B01290ADF815 +:104C4000461010928DF83F300020089004210B91FF +:104C50008DF838000C90129A059962F31C010591A9 +:104C60009DF83F108DF813108DF81200FFE79DF8A6 +:104C70001300012865DBFFE79DF81300052803DB1F +:104C8000FFE70420019003E09DF813000190FFE787 +:104C900001988DF81100BDF846009DF812100844E7 +:104CA000ADF81400059820F060400A909DF81100BE +:104CB00040000D9000200390FFE703989DF811102D +:104CC00088421ADAFFE710989DF81210039A1144EF +:104CD00030F8110006A901EB4202507010989DF8BF +:104CE0001230039A134400EB4300407801F812009D +:104CF000FFE7039801300390DFE740F6D400C2F2EB +:104D00000000006809A906AA08ABFBF735FC8DF87E +:104D10000B009DF80B0028B1FFE79DF80B008DF804 +:104D20004F0012E09DF811109DF81300401A8DF805 +:104D300013009DF811109DF8120008448DF8120020 +:104D400095E700208DF84F00FFE79DF84F0014B065 +:104D500080BD00007047000080B590B0DDF848C00D +:104D6000CDF83CC00E930D920C910B900020049056 +:104D7000042107918DF8280008900C99019861F39F +:104D80001C0001909DF8070040F008008DF8070016 +:104D9000019820F06040069006200990BDF8300090 +:104DA000009049208DF8080053208DF80900BDF8C7 +:104DB00000006FF31F3044F6D351C1F26201A0FB33 +:104DC00001012F2000EB91108DF80A00BDF80000C2 +:104DD0006FF31F3048F21F51C5F2EB11A0FB011019 +:104DE000400946F26761C6F2666180FB012303F069 +:104DF0001C0202EB9302A0EB42002F308DF80B0057 +:104E0000BDF800006FF31F304CF6CD42CCF6CC421B +:104E1000A0FB0230C00880FB011303F0FC0101EB92 +:104E20009301A0EB41002F308DF80C00BDF800007D +:104E300001466FF31F31A1FB0221C90801EB81017B +:104E4000A0EB41002F308DF80D0040F6D400C2F2E7 +:104E50000000006805A902AA04ABFBF78DFB10B0A7 +:104E600080BD000080B590B0DDF848C0CDF83CC0F2 +:104E70000E930D920C910B90002004900421079149 +:104E80008DF8280008900C99019861F31C0001909E +:104E90009DF8070040F008008DF80700019820F009 +:104EA000604006900720099055208DF80800532097 +:104EB0008DF8090054208DF80A0041208DF80B0070 +:104EC00056208DF80C004B208DF80D0049208DF8F0 +:104ED0000E0040F6D400C2F20000006805A902AA44 +:104EE00004ABFBF749FB10B080BD000080B590B06B +:104EF000DDF848C0CDF83CC00E930D920C910B909C +:104F000000200490042107918DF8280008900C9946 +:104F1000019861F31C0001909DF8070040F0080023 +:104F20008DF80700019820F0604006900620099057 +:104F3000BDF83000009054208DF8080053208DF803 +:104F40000900BDF800006FF31F3044F6D351C1F2E1 +:104F50006201A0FB01012F2000EB91108DF80A00E7 +:104F6000BDF800006FF31F3048F21F51C5F2EB117E +:104F7000A0FB0110400946F26761C6F2666180FB42 +:104F8000012303F01C0202EB9302A0EB42002F303E +:104F90008DF80B00BDF800006FF31F304CF6CD42CA +:104FA000CCF6CC42A0FB0230C00880FB011303F01A +:104FB000FC0101EB9301A0EB41002F308DF80C00B8 +:104FC000BDF8000001466FF31F31A1FB0221C908A3 +:104FD00001EB8101A0EB41002F308DF80D0040F670 +:104FE000D400C2F20000006805A902AA04ABFBF7D6 +:104FF000C3FA10B080BD000080B590B0DDF848C0A5 +:10500000CDF83CC00E930D920C910B9000200490B3 +:10501000042107918DF8280008900C99019861F3FC +:105020001C0001909DF8070040F008008DF8070073 +:10503000019820F06040069006200990BDF83000ED +:10504000009055208DF8080053208DF80900BDF818 +:1050500000006FF31F3044F6D351C1F26201A0FB90 +:1050600001012F2000EB91108DF80A00BDF800001F +:105070006FF31F3048F21F51C5F2EB11A0FB011076 +:10508000400946F26761C6F2666180FB012303F0C6 +:105090001C0202EB9302A0EB42002F308DF80B00B4 +:1050A000BDF800006FF31F304CF6CD42CCF6CC4279 +:1050B000A0FB0230C00880FB011303F0FC0101EBF0 +:1050C0009301A0EB41002F308DF80C00BDF80000DB +:1050D00001466FF31F31A1FB0221C90801EB8101D9 +:1050E000A0EB41002F308DF80D0040F6D400C2F245 +:1050F0000000006805A902AA04ABFBF73DFA10B056 +:1051000080BD000080B590B0DDF848C0CDF83CC04F +:105110000E930D920C910B900020049004210791A6 +:105120008DF8280008900C99019861F31C000190FB +:105130009DF8070040F008008DF80700019820F066 +:10514000604006900620099055208DF808004E20FA +:105150008DF8090049208DF80A0056208DF80B00C3 +:1051600045208DF80C0052208DF80D0040F6D4003B +:10517000C2F20000006805A902AA04ABFBF7FCF923 +:1051800010B080BD80B585B0DDF81CC0CDF810C072 +:10519000039302920191009040F2C801C2F2000113 +:1051A00008780122824300F0FE00104408700020BD +:1051B00005B080BD80B58CB0DDF838C0CDF828C012 +:1051C0000993089207910690BDF8200020B9FFE7E7 +:1051D00001208DF82F0039E0BDF81C000590BDF8C6 +:1051E000140000F00F00BDF82010CA000221B1FB2E +:1051F000F2F1884226D1FFE700200390029001904F +:10520000FFE70198BDF82010884213DAFFE7019903 +:1052100006A80844807AC90000FA01F202990398AE +:10522000891840EBE27002910390FFE7019801308A +:105230000190E6E702988008C00710B1FFE701F08F +:1052400039F9FFE700208DF82F00FFE79DF82F00C8 +:105250000CB080BD80B5A0B0DDF888C0CDF878C0B6 +:105260001D931C921B911A90BDF87000082804DB56 +:10527000FFE701208DF87F0048E046F24451C0F678 +:10528000000102A86022FAF79FFF9DF8720017281C +:105290002EDCFFE79DF873003B2829DCFFE79DF833 +:1052A00074003B2824DCFFE79DF8750063281FDCB1 +:1052B000FFE79DF876000C281ADCFFE79DF87500E3 +:1052C0009DF877100191FEF78FFE0146019801EBE2 +:1052D000410202A901EB02119DF8762051F822103B +:1052E000884205DCFFE79DF87800072804DBFFE72C +:1052F00001208DF87F0009E01AA80A30FFF72AFC88 +:10530000FFE7FFE700208DF87F00FFE79DF87F00B3 +:1053100020B080BD80B594B0DDF858C0CDF84CC049 +:105320001293119210910F90002201920892042082 +:105330000B9007200D908DF838200C92109905984D +:1053400061F31C0005909DF8170040F008008DF8EF +:1053500017009DF8170000F0F80001308DF81700D5 +:105360009DF81600022161F31F108DF816000598B4 +:1053700020F060400A908DF81220ADF8102040F621 +:10538000D800C2F200000290006804A9FDF764FC96 +:10539000019A02989DF810108DF818109DF81110C0 +:1053A0008DF819109DF812108DF81A1003920068EC +:1053B00003A9FDF703FC9DF80F008DF81B009DF875 +:1053C0000D008DF81C009DF80E008DF81D009DF855 +:1053D0000C008DF81E0040F6D400C2F200000068F8 +:1053E00009A906AA08ABFBF7C7F814B080BD0000F6 +:1053F00080B585B0DDF81CC0CDF810C003930292D3 +:1054000001910090002005B080BD000080B585B0FE +:10541000DDF81CC0CDF810C00393029201910090FA +:10542000002005B080BD000080B585B0DDF81CC04F +:10543000CDF810C00393029201910090002005B0B6 +:1054400080BD000080B585B0DDF81CC0CDF810C06F +:105450000393029201910090002005B080BD0000EE +:1054600080B585B0DDF81CC0CDF810C00393029262 +:1054700001910090002005B080BD000080B586B08D +:10548000DDF820C0CDF814C004930392029101907E +:1054900001F010F880B585B0DDF81CC0CDF810C063 +:1054A0000393029201910090002005B080BD00009E +:1054B00080B592B0DDF850C0CDF844C010930F9283 +:1054C0000E910D9000200690042109918DF8300076 +:1054D0000A900E9A039962F31C0103919DF80F1034 +:1054E00041F008018DF80F10039921F060410891F7 +:1054F00008210B9147218DF8101041218DF81110D2 +:1055000053218DF812102D218DF813100290FFE712 +:10551000029803282CDCFFE7BDF83800029A0C2122 +:10552000A1EB8201C84000F00F00019001980A2809 +:1055300012D3FFE701984CF6CD41CCF6CC41A0FB4D +:105540000121C90801EB8101A0EB41004130029922 +:1055500004AA1144087106E001983030029904AAA7 +:1055600011440871FFE7FFE7029801300290CFE78E +:1055700040F6D400C2F20000006807A904AA06ABF6 +:10558000FAF7FAFF12B080BD80B590B0DDF848C0E0 +:10559000CDF83CC00E930D920C910B90002004901E +:1055A000042107918DF8280008900C99019861F367 +:1055B0001C0001909DF8070040F008008DF80700DE +:1055C000019820F06040069008200990BDF8300056 +:1055D00000904D208DF8080043208DF8090020210F +:1055E0008DF80A1053228DF80B20BDF80020120907 +:1055F0008DF80C208DF80D108DF80E009DF8000030 +:1056000000F00F008DF80F0040F6D400C2F2000049 +:10561000006805A902AA04ABFAF7AEFF10B080BD7E +:1056200080B590B0DDF848C0CDF83CC00E930D9227 +:105630000C910B9000200490042107918DF8280014 +:1056400008900C99019861F31C0001909DF80700E7 +:1056500040F008008DF80700019820F060400690A7 +:1056600008200990BDF8300000904D208DF808000A +:1056700044208DF8090020208DF80A0053218DF870 +:105680000B10BDF8001009098DF80C108DF80D00F5 +:1056900043208DF80E009DF8000000F00F008DF8FB +:1056A0000F0040F6D400C2F20000006805A902AA6B +:1056B00004ABFAF761FF10B080BD000080B590B078 +:1056C000DDF848C0CDF83CC00E930D920C910B90C4 +:1056D00000200490042107918DF8280008900C996F +:1056E000019861F31C0001909DF8070040F008004C +:1056F0008DF80700019820F060400690082009907E +:10570000BDF8300000904D208DF8080048208DF83D +:10571000090020208DF80A0053218DF80B10BDF8E8 +:10572000001009098DF80C108DF80D0043208DF83C +:105730000E009DF8000000F00F008DF80F0040F6FD +:10574000D400C2F20000006805A902AA04ABFAF76F +:1057500013FF10B080BD000080B590B0DDF848C0E8 +:10576000CDF83CC00E930D920C910B90002004904C +:10577000042107918DF8280008900C99019861F395 +:105780001C0001909DF8070040F008008DF807000C +:10579000019820F06040069008200990BDF8300084 +:1057A00000904D208DF8080049208DF80900202038 +:1057B0008DF80A0053218DF80B10BDF8001009096F +:1057C0008DF80C108DF80D0043208DF80E009DF81B +:1057D000000000F00F008DF80F0040F6D400C2F278 +:1057E0000000006805A902AA04ABFAF7C5FE10B0D4 +:1057F00080BD000080B58CB00B9040F2C800C2F2B2 +:1058000000000078C00700285CD0FFE7002004906B +:10581000039901F0604103919DF80F1041F01001D0 +:105820008DF80F109DF80F1041F008018DF80F1042 +:105830009DF80F1001F0F80101318DF80F109DF85F +:105840000E10022262F31F118DF80E109DF80E103B +:1058500041F00F018DF80E10ADF80C00039921F006 +:1058600060410691042107918DF8280008900120DD +:10587000099040F6D000C2F20000016801310160D9 +:10588000039921F0604100910068B0F5807F07D353 +:10589000FFE740F6D001C2F2000100200860FFE7F8 +:1058A00040F6D000C2F2000000688DF8040040F617 +:1058B000D400C2F20000006805A901AA04ABFAF7FF +:1058C0005BFEFFE70CB080BD80B58EB00D90FFE7AA +:1058D0000D98002106AA04ABFBF788F800285CD1DC +:1058E000FFE70898042857D1FFE740F6CC00C2F242 +:1058F0000000007840F20001C2F200010978401A6D +:1059000081300006002801D4FFE746E040F6CC00D5 +:10591000C2F200000078013000F07F00ADF80E0008 +:105920000799029861F31C0002909DF80A0000F0AC +:105930000F000F2820D1FFE79DF80A109DF80B00FB +:1059400000F0070240F2CC00C2F2000000EB02229D +:1059500001F0F003D15C41F00101D1549DF80A102F +:105960009DF80B2002F0070200EB022001F0F0018D +:1059700001440020886010E00899099A0A9BBDF84C +:105980000EC00298EE46CEF804C00DF1100CCEF811 +:1059900000C000F099FCFFE79AE70EB080BD000060 +:1059A00082B00190019840F20401C2F2000109683E +:1059B000C90844F6D352C1F26202A1FB022189094F +:1059C00048430090FFE700BFFFE70098411E0091A9 +:1059D0000028F8D1FFE702B07047000082B08DF8D0 +:1059E0000700002000909DF80700000900EB8000F0 +:1059F0004000009000989DF8071001F00F01084446 +:105A0000C0B202B07047000082B08DF807000020DD +:105A10000090FFE79DF807000A2809D3FFE70098E8 +:105A2000013000909DF807000A388DF80700F1E773 +:105A3000009800F00F019DF8070040EA011002B045 +:105A40007047000080B586B0059004910020039057 +:105A50000290019000900599C97B03910599497BBB +:105A600002910599897B01910090FFE700980499C4 +:105A7000884280F08C80FFE70298012818D0FFE769 +:105A80000298032814D0FFE70298052810D0FFE7FA +:105A9000029807280CD0FFE70298082808D0FFE7F3 +:105AA00002980A2804D0FFE702980C281BD1FFE7D0 +:105AB00001981E2804D8FFE701980130019011E0F9 +:105AC00002980C2806D0FFE70298013002900120CE +:105AD000019006E0012002900190039801300390AC +:105AE000FFE7FFE74EE0029804280CD0FFE702989A +:105AF000062808D0FFE70298092804D0FFE702989B +:105B00000B280FD1FFE701981D2804D8FFE7019863 +:105B10000130019005E002980130029001200190CF +:105B2000FFE72EE0029802282AD1FFE701981B2800 +:105B300004D8FFE701980130019020E001981C286B +:105B400011D1FFE7BDF80C0000F08EF820B1FFE79F +:105B500001980130019005E0029801300290012087 +:105B60000190FFE70AE001981D2806D1FFE702989F +:105B70000130029001200190FFE7FFE7FFE7FFE718 +:105B8000FFE7FFE7FFE70098013000906EE703981A +:105B90000599C87302980599487301980599887307 +:105BA00003989DF808109DF8042000F0E9F8059985 +:105BB000087306B080BD000080B584B0029000205C +:105BC0000190FCF779F80190FFE7029800684068BF +:105BD000800600280DD4FFE7FCF76EF80199401A03 +:105BE000B0F57A7F04D9FFE703208DF80F000AE0B3 +:105BF000EBE702980168486840F010004860002018 +:105C00008DF80F00FFE79DF80F0004B080BD000085 +:105C100080B584B002900020019002980168486825 +:105C200020F010004860FCF747F80190FFE7029869 +:105C300000684068800600280DD4FFE7FCF73CF8B8 +:105C40000199401AB0F57A7F04D9FFE703208DF857 +:105C50000F0004E0EBE700208DF80F00FFE79DF850 +:105C60000F0004B080BD000081B0ADF80000BDF8A9 +:105C70000000800720B1FFE700208DF803002BE033 +:105C8000BDF8000045F62941CCF28F2148434FEA88 +:105C9000B00045F62941C0F28F21884204D3FFE7C6 +:105CA00001208DF8030017E0BDF8000045F62941FA +:105CB000CCF28F2148434FEA30104DF20A71C0F206 +:105CC000A301884204D8FFE701208DF8030003E018 +:105CD00000208DF80300FFE79DF8030001B0704736 +:105CE00082B001900020ADF80200ADF800000198EC +:105CF0000068006AADF8020001980068406AADF8DB +:105D00000000BDF80210BDF8000040EA014002B0FA +:105D10007047000084B003900020ADF80A00ADF891 +:105D20000800ADF806000090039800688069ADF89F +:105D30000A0003980068C069ADF80600039800687F +:105D40008069ADF80800BDF80A00BDF80810884267 +:105D50000AD0FFE7BDF8081003980068C06980B258 +:105D600040EA0140009007E0BDF80A10BDF80600C7 +:105D700040EA01400090FFE7009804B0704700003F +:105D800084B003908DF80B108DF80A20002001904C +:105D90000090039800F5FA6001909DF80B0002282E +:105DA0002ED8FFE79DF80B001721484348F63961CC +:105DB000C3F6E301A0FB01019DF80A0000EB5100CE +:105DC00001990844013900EB910048F21F52C5F2D5 +:105DD000EB12A1FB0221A0EB511000EBD11004301B +:105DE00044F62511C2F29241A0FB0121421A01EBB7 +:105DF00052029108C900A1EB9201401A00902CE0D8 +:105E00009DF80B001721484348F63961C3F6E301BA +:105E1000A0FB01019DF80A0000EB51000199084424 +:105E200000EB910048F21F52C5F2EB12A1FB0221D8 +:105E3000A0EB511000EBD110023044F62511C2F254 +:105E40009241A0FB0121421A01EB52029108C900C4 +:105E5000A1EB9201401A0090FFE79DF8000004B00A +:105E60007047000080B584B00390029100208DF847 +:105E700007000398FFF7A0FE20B1FFE701208DF88F +:105E8000070013E0BDF80A00039909680862BDF82D +:105E900008000399096848620398FFF7B9FE20B12A +:105EA000FFE701208DF80700FFE7FFE79DF80700F7 +:105EB00004B080BD80B584B00390029100208DF8BD +:105EC00007000398FFF778FE20B1FFE701208DF867 +:105ED000070013E0BDF80A00039909688861BDF85E +:105EE000080003990968C8610398FFF791FE20B183 +:105EF000FFE701208DF80700FFE7FFE79DF80700A7 +:105F000004B080BD7047000080B582B0009000985A +:105F10000138B0F1807F03D3FFE70120019019E041 +:105F2000009801384EF21401CEF2000108604FF0E3 +:105F3000FF300F2100F07EFA4EF21801CEF2000180 +:105F4000002008604EF21002CEF20002072111601C +:105F50000190FFE7019802B080BD000080B5FBF71B +:105F6000B1FE80BD80B596B00CA801902821FAF74B +:105F70005DF90198002102910B910A910991089114 +:105F8000079106910591049103910A220C92012236 +:105F900010921023119312920222139214914FF433 +:105FA00060111591FCF7CCFA18B1FFE7FAF7B2FAD5 +:105FB000FFE70F20079002210891002009904FF47D +:105FC00080620A920B9007A8FCF7E4F818B1FFE78B +:105FD000FAF7A0FAFFE7012003904FF40070049055 +:105FE00003A8FBF7F3FF18B1FFE7FAF793FAFFE70F +:105FF0004FF0E06100221046FCF76EFA16B080BD4B +:106000007047000080B540F65810C2F20000FDF75E +:1060100053FB80BD83B0029001910298006800900C +:10602000029842F60041C4F20101884215D0FFE710 +:106030000298B0F1804F10D0FFE7029840F2004183 +:10604000C4F20001884208D0FFE7029840F6000140 +:10605000C4F2000188420AD1FFE7009820F07000E6 +:10606000009001984168009808430090FFE702986B +:1060700042F60041C4F20101884215D0FFE70298C0 +:10608000B0F1804F10D0FFE7029840F20041C4F217 +:106090000001884208D0FFE7029840F60001C4F2F0 +:1060A000000188420AD1FFE7009820F44070009078 +:1060B0000198C168009808430090FFE7009820F01D +:1060C000800001994969084300900098029908608E +:1060D000019880680299C8620198006802998862F4 +:1060E000029842F60041C4F20101884205D1FFE75F +:1060F0000198006902990863FFE70299012048614D +:1061000003B0704785B00490039102920193049804 +:1061100080680090009820F47F40009003980299D6 +:10612000019A41EA02210143009808430090009837 +:106130000499886005B0704783B00290019102987D +:1061400080680090009820F07000009001980099FD +:10615000084340F00700009000980299886003B05F +:106160007047000081B00090009943F69D10C0F682 +:106170000000C1F88000009943F6A510C0F60000A9 +:10618000C1F88400009943F65140C0F60000C1F800 +:106190008800009943F65940C0F60000C1F88C0011 +:1061A000009943F29960C0F60000C1F89000009990 +:1061B00043F2A160C0F60000C1F89400009943F6D4 +:1061C0005510C0F60000C1F89800009943F68D10F4 +:1061D000C0F60000C1F89C00009943F69510C0F687 +:1061E0000000C1F8A000009943F29160C0F60000E1 +:1061F000C1F8A400009943F2C520C0F60000C1F820 +:10620000A800009943F2CD20C0F60000C1F8AC0010 +:10621000009943F2BD20C0F60000C1F8B00001B003 +:106220007047000085B00490039102920498006AC0 +:1062300000900499086A20F00100086204988069BF +:106240000190019820F0F00001900299019840EA35 +:1062500001100190009820F00A0000900399009826 +:106260000843009001980499886100980499086295 +:1062700005B0704785B00490039102920498006ABB +:1062800000900499086A20F0100008620498806960 +:106290000190019820F4704001900299019840EA21 +:1062A00001300190009820F0A00000900399009820 +:1062B00040EA0110009001980499886100980499BF +:1062C000086205B07047000080B586B08446099822 +:1062D000DDF820E0CDF814C0049103920293ADF8EC +:1062E0000600059BBDF8060000EB800040F60C217F +:1062F000C2F2000101EB8002506863F31C005060A1 +:106300009DF81030BDF8060000EB800211F8220065 +:1063100003F0010300F0FE00184401F822009DF88C +:106320000C30BDF8060000EB800211F8220003F0EB +:10633000010300F0FD0040EA430001F8220002984A +:10634000BDF8062002EB820201EB820108810020E9 +:106350000090FFE700980299884214D2FFE708985E +:10636000009A805CBDF8061001EB810340F60C2119 +:10637000C2F2000101EB830111448872FFE700982B +:1063800001300090E6E79DF8060040F6CC01C2F22D +:106390000001087006B080BD80B540F6E000C2F292 +:1063A0000000FAF72DFC80BD80B540F6E000C2F297 +:1063B0000000FAF725FC80BDFFE7FEE781B08DF80D +:1063C00003009DF90300002812D4FFE79DF9031094 +:1063D00001F01F02012090404A094EF28011CEF2D6 +:1063E000000141F82200BFF34F8FBFF36F8FFFE72B +:1063F00001B0704781B08DF803009DF903000028BB +:106400000ED4FFE79DF9031001F01F020120904018 +:106410004A094EF20011CEF2000141F82200FFE7D6 +:1064200001B070474EF60C50CEF200000068C0F389 +:106430000220704782B08DF8070000919DF9070097 +:1064400000280AD4FFE7009800019DF907104EF2DA +:106450000042CEF2000288540BE0009800019DF843 +:10646000071001F00F014EF61452CEF200028854CC +:10647000FFE702B07047000083B00290029800F07E +:10648000070000904EF60C51CEF200010868019012 +:1064900001984FF6FF02104001900198009A40EADF +:1064A00002200022C0F2FA521043019001980860C5 +:1064B00003B07047BFF34F8F4EF60C51CEF2000180 +:1064C000086800F4E0600422C0F2FA521043086049 +:1064D000BFF34F8FFFE700BFFDE7000080B582B03C +:1064E00000200190FFF73EFDFBF7FAFBFFF73AFDB6 +:1064F000FDF7EAFDFDF7C0FDFDF70CFEFDF754FECC +:1065000040F6E000C2F2000040F64411C2F2000181 +:1065100040F65812C2F20002FEF794F878B9FFE78D +:1065200040F6E000C2F200000090FBF71FF8009870 +:1065300048F60241F9F7F6FFFEF708F9FFE7FFE733 +:10654000FEE700001F0000001C0000001F0000000C +:106550001E0000001F0000001E0000001F000000C1 +:106560001F0000001E0000001F0000001E000000B1 +:106570001F0000001F0000001D0000001F000000A1 +:106580001E0000001F0000001E0000001F00000091 +:106590001F0000001E0000001F0000001E00000081 +:1065A0001F000000000000000000000001020304C2 +:1065B00006070809000000000102030402030405A5 +:1065C000060708090A0B0C0D0E0F1010010202033A +:1065D0000405060708090A0B0C0D0E0F1010010226 +:1065E00000660008000000201000000028010008DC +:1065F0001066000810000020001A00004401000886 +:10660000010000000024F400010000001000000060 :04000005080000ED02 :00000001FF diff --git a/MDK-ARM/F103C8T6/F103C8T6.htm b/MDK-ARM/F103C8T6/F103C8T6.htm index 218f223..78e6539 100644 --- a/MDK-ARM/F103C8T6/F103C8T6.htm +++ b/MDK-ARM/F103C8T6/F103C8T6.htm @@ -3,9 +3,9 @@ Static Call Graph - [F103C8T6\F103C8T6.axf]

Static Call Graph for image F103C8T6\F103C8T6.axf


-

#<CALLGRAPH># ARM Linker, 6190004: Last Updated: Fri May 29 13:34:14 2026 +

#<CALLGRAPH># ARM Linker, 6190004: Last Updated: Mon Jun 1 14:47:33 2026

-

Maximum Stack Usage = 320 bytes + Unknown(Functions without stacksize, Cycles, Untraceable Function Pointers)

+

Maximum Stack Usage = 352 bytes + Unknown(Functions without stacksize, Cycles, Untraceable Function Pointers)

Call chain for Maximum Stack Depth:

__rt_entry_main ⇒ main ⇒ PROTOCAN_LOOP ⇒ PROTOCAN_BroadcastProcessing ⇒ ProtoCanMsgToBroadcastRtcSetup ⇒ PROTOCAN_RTC_SYNC ⇒ HAL_RTC_SetDate ⇒ RTC_WriteAlarmCounter ⇒ RTC_ExitInitMode

@@ -170,9 +170,9 @@ Global Symbols

[Calls]

  • >>   __rt_entry
-

__scatterload_rt2_thumb_only (Thumb, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED) +

__scatterload_rt2_thumb_only (Thumb, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED) -

__scatterload_null (Thumb, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED) +

__scatterload_null (Thumb, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED)

__scatterload_copy (Thumb, 26 bytes, Stack size unknown bytes, __scatter_copy.o(!!handler_copy), UNUSED)

[Calls]

  • >>   __scatterload_copy @@ -180,80 +180,80 @@ Global Symbols
    [Called By]
    • >>   __scatterload_copy
    -

    __scatterload_zeroinit (Thumb, 28 bytes, Stack size unknown bytes, __scatter_zi.o(!!handler_zi), UNUSED) +

    __scatterload_zeroinit (Thumb, 28 bytes, Stack size unknown bytes, __scatter_zi.o(!!handler_zi), UNUSED)

    __rt_lib_init (Thumb, 0 bytes, Stack size unknown bytes, libinit.o(.ARM.Collect$$libinit$$00000000))

    [Called By]

    • >>   __rt_entry_li
    -

    __rt_lib_init_alloca_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000030)) +

    __rt_lib_init_alloca_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000030)) -

    __rt_lib_init_argv_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000002E)) +

    __rt_lib_init_argv_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000002E)) -

    __rt_lib_init_atexit_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000001D)) +

    __rt_lib_init_atexit_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000001D)) -

    __rt_lib_init_clock_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000023)) +

    __rt_lib_init_clock_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000023)) -

    __rt_lib_init_cpp_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000034)) +

    __rt_lib_init_cpp_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000034)) -

    __rt_lib_init_exceptions_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000032)) +

    __rt_lib_init_exceptions_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000032)) -

    __rt_lib_init_fp_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000002)) +

    __rt_lib_init_fp_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000002)) -

    __rt_lib_init_fp_trap_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000021)) +

    __rt_lib_init_fp_trap_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000021)) -

    __rt_lib_init_getenv_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000025)) +

    __rt_lib_init_getenv_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000025)) -

    __rt_lib_init_heap_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000000C)) +

    __rt_lib_init_heap_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000000C)) -

    __rt_lib_init_lc_collate_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000013)) +

    __rt_lib_init_lc_collate_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000013)) -

    __rt_lib_init_lc_ctype_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000015)) +

    __rt_lib_init_lc_ctype_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000015)) -

    __rt_lib_init_lc_monetary_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000017)) +

    __rt_lib_init_lc_monetary_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000017)) -

    __rt_lib_init_lc_numeric_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000019)) +

    __rt_lib_init_lc_numeric_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000019)) -

    __rt_lib_init_lc_time_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000001B)) +

    __rt_lib_init_lc_time_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000001B)) -

    __rt_lib_init_preinit_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000006)) +

    __rt_lib_init_preinit_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000006)) -

    __rt_lib_init_rand_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000010)) +

    __rt_lib_init_rand_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000010)) -

    __rt_lib_init_relocate_pie_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000004)) +

    __rt_lib_init_relocate_pie_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000004)) -

    __rt_lib_init_return (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000035)) +

    __rt_lib_init_return (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000035)) -

    __rt_lib_init_signal_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000001F)) +

    __rt_lib_init_signal_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000001F)) -

    __rt_lib_init_stdio_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000027)) +

    __rt_lib_init_stdio_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000027)) -

    __rt_lib_init_user_alloc_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000000E)) +

    __rt_lib_init_user_alloc_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000000E))

    __rt_lib_shutdown (Thumb, 0 bytes, Stack size unknown bytes, libshutdown.o(.ARM.Collect$$libshutdown$$00000000))

    [Called By]

    • >>   __rt_exit_ls
    -

    __rt_lib_shutdown_cpp_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$00000002)) +

    __rt_lib_shutdown_cpp_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$00000002)) -

    __rt_lib_shutdown_fp_trap_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$00000007)) +

    __rt_lib_shutdown_fp_trap_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$00000007)) -

    __rt_lib_shutdown_heap_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$0000000F)) +

    __rt_lib_shutdown_heap_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$0000000F)) -

    __rt_lib_shutdown_return (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$00000010)) +

    __rt_lib_shutdown_return (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$00000010)) -

    __rt_lib_shutdown_signal_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$0000000A)) +

    __rt_lib_shutdown_signal_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$0000000A)) -

    __rt_lib_shutdown_stdio_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$00000004)) +

    __rt_lib_shutdown_stdio_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$00000004)) -

    __rt_lib_shutdown_user_alloc_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$0000000C)) +

    __rt_lib_shutdown_user_alloc_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$0000000C))

    __rt_entry (Thumb, 0 bytes, Stack size unknown bytes, __rtentry.o(.ARM.Collect$$rtentry$$00000000))

    [Called By]

    • >>   __scatterload_rt2
    • >>   __main
    -

    __rt_entry_presh_1 (Thumb, 0 bytes, Stack size unknown bytes, __rtentry2.o(.ARM.Collect$$rtentry$$00000002)) +

    __rt_entry_presh_1 (Thumb, 0 bytes, Stack size unknown bytes, __rtentry2.o(.ARM.Collect$$rtentry$$00000002))

    __rt_entry_sh (Thumb, 0 bytes, Stack size unknown bytes, __rtentry4.o(.ARM.Collect$$rtentry$$00000004))

    [Stack]

    • Max Depth = 8 + Unknown Stack Size @@ -266,17 +266,17 @@ Global Symbols

      [Calls]
      • >>   __rt_lib_init
      -

      __rt_entry_postsh_1 (Thumb, 0 bytes, Stack size unknown bytes, __rtentry2.o(.ARM.Collect$$rtentry$$00000009)) +

      __rt_entry_postsh_1 (Thumb, 0 bytes, Stack size unknown bytes, __rtentry2.o(.ARM.Collect$$rtentry$$00000009))

      __rt_entry_main (Thumb, 0 bytes, Stack size unknown bytes, __rtentry2.o(.ARM.Collect$$rtentry$$0000000D)) -

      [Stack]

      • Max Depth = 320 + Unknown Stack Size +

        [Stack]
        • Max Depth = 352 + Unknown Stack Size
        • Call Chain = __rt_entry_main ⇒ main ⇒ PROTOCAN_LOOP ⇒ PROTOCAN_BroadcastProcessing ⇒ ProtoCanMsgToBroadcastRtcSetup ⇒ PROTOCAN_RTC_SYNC ⇒ HAL_RTC_SetDate ⇒ RTC_WriteAlarmCounter ⇒ RTC_ExitInitMode

        [Calls]
        • >>   main
        • >>   exit
        -

        __rt_entry_postli_1 (Thumb, 0 bytes, Stack size unknown bytes, __rtentry2.o(.ARM.Collect$$rtentry$$0000000C)) +

        __rt_entry_postli_1 (Thumb, 0 bytes, Stack size unknown bytes, __rtentry2.o(.ARM.Collect$$rtentry$$0000000C))

        __rt_exit (Thumb, 0 bytes, Stack size unknown bytes, rtexit.o(.ARM.Collect$$rtexit$$00000000))

        [Called By]

        • >>   exit @@ -286,7 +286,7 @@ Global Symbols

          [Calls]
          • >>   __rt_lib_shutdown
          -

          __rt_exit_prels_1 (Thumb, 0 bytes, Stack size unknown bytes, rtexit2.o(.ARM.Collect$$rtexit$$00000002)) +

          __rt_exit_prels_1 (Thumb, 0 bytes, Stack size unknown bytes, rtexit2.o(.ARM.Collect$$rtexit$$00000002))

          __rt_exit_exit (Thumb, 0 bytes, Stack size unknown bytes, rtexit2.o(.ARM.Collect$$rtexit$$00000004))

          [Calls]

          • >>   _sys_exit @@ -417,33 +417,33 @@ Global Symbols

            [Called By]
            • >>   __user_setup_stackheap
            -

            __aeabi_memcpy4 (Thumb, 0 bytes, Stack size 8 bytes, rt_memcpy_w.o(.text)) +

            __aeabi_memcpy4 (Thumb, 0 bytes, Stack size 8 bytes, rt_memcpy_w.o(.text))

            [Stack]

            • Max Depth = 8
            • Call Chain = __aeabi_memcpy4

            [Called By]
            • >>   ProtoCanMsgToBroadcastRtcSetup
            -

            __aeabi_memcpy8 (Thumb, 0 bytes, Stack size 8 bytes, rt_memcpy_w.o(.text), UNUSED) +

            __aeabi_memcpy8 (Thumb, 0 bytes, Stack size 8 bytes, rt_memcpy_w.o(.text), UNUSED) -

            __rt_memcpy_w (Thumb, 100 bytes, Stack size 8 bytes, rt_memcpy_w.o(.text), UNUSED) +

            __rt_memcpy_w (Thumb, 100 bytes, Stack size 8 bytes, rt_memcpy_w.o(.text), UNUSED) -

            _memcpy_lastbytes_aligned (Thumb, 0 bytes, Stack size unknown bytes, rt_memcpy_w.o(.text), UNUSED) +

            _memcpy_lastbytes_aligned (Thumb, 0 bytes, Stack size unknown bytes, rt_memcpy_w.o(.text), UNUSED) -

            __aeabi_memclr4 (Thumb, 0 bytes, Stack size unknown bytes, rt_memclr_w.o(.text)) -

            [Called By]

            • >>   SystemClock_Config +

              __aeabi_memclr4 (Thumb, 0 bytes, Stack size unknown bytes, rt_memclr_w.o(.text)) +

              [Called By]

              • >>   SystemClock_Config
              -

              __aeabi_memclr8 (Thumb, 0 bytes, Stack size unknown bytes, rt_memclr_w.o(.text), UNUSED) +

              __aeabi_memclr8 (Thumb, 0 bytes, Stack size unknown bytes, rt_memclr_w.o(.text), UNUSED) -

              __rt_memclr_w (Thumb, 0 bytes, Stack size unknown bytes, rt_memclr_w.o(.text), UNUSED) +

              __rt_memclr_w (Thumb, 0 bytes, Stack size unknown bytes, rt_memclr_w.o(.text), UNUSED) -

              _memset_w (Thumb, 74 bytes, Stack size 4 bytes, rt_memclr_w.o(.text), UNUSED) +

              _memset_w (Thumb, 74 bytes, Stack size 4 bytes, rt_memclr_w.o(.text), UNUSED) -

              __use_two_region_memory (Thumb, 2 bytes, Stack size 0 bytes, heapauxi.o(.text), UNUSED) +

              __use_two_region_memory (Thumb, 2 bytes, Stack size 0 bytes, heapauxi.o(.text), UNUSED) -

              __rt_heap_escrow$2region (Thumb, 2 bytes, Stack size 0 bytes, heapauxi.o(.text), UNUSED) +

              __rt_heap_escrow$2region (Thumb, 2 bytes, Stack size 0 bytes, heapauxi.o(.text), UNUSED) -

              __rt_heap_expand$2region (Thumb, 2 bytes, Stack size 0 bytes, heapauxi.o(.text), UNUSED) +

              __rt_heap_expand$2region (Thumb, 2 bytes, Stack size 0 bytes, heapauxi.o(.text), UNUSED)

              __user_setup_stackheap (Thumb, 74 bytes, Stack size 8 bytes, sys_stackheap_outer.o(.text))

              [Stack]

              • Max Depth = 8 + Unknown Stack Size @@ -464,26 +464,26 @@ Global Symbols
                [Called By]
                • >>   __rt_entry_main
                -

                __user_libspace (Thumb, 8 bytes, Stack size 0 bytes, libspace.o(.text), UNUSED) +

                __user_libspace (Thumb, 8 bytes, Stack size 0 bytes, libspace.o(.text), UNUSED)

                __user_perproc_libspace (Thumb, 0 bytes, Stack size 0 bytes, libspace.o(.text))

                [Called By]

                • >>   __user_setup_stackheap
                -

                __user_perthread_libspace (Thumb, 0 bytes, Stack size 0 bytes, libspace.o(.text), UNUSED) +

                __user_perthread_libspace (Thumb, 0 bytes, Stack size 0 bytes, libspace.o(.text), UNUSED)

                _sys_exit (Thumb, 8 bytes, Stack size 0 bytes, sys_exit.o(.text))

                [Called By]

                • >>   __rt_exit_exit
                -

                __I$use$semihosting (Thumb, 0 bytes, Stack size 0 bytes, use_no_semi.o(.text), UNUSED) +

                __I$use$semihosting (Thumb, 0 bytes, Stack size 0 bytes, use_no_semi.o(.text), UNUSED) -

                __use_no_semihosting_swi (Thumb, 2 bytes, Stack size 0 bytes, use_no_semi.o(.text), UNUSED) +

                __use_no_semihosting_swi (Thumb, 2 bytes, Stack size 0 bytes, use_no_semi.o(.text), UNUSED) -

                __semihosting_library_function (Thumb, 0 bytes, Stack size unknown bytes, indicate_semi.o(.text), UNUSED) +

                __semihosting_library_function (Thumb, 0 bytes, Stack size unknown bytes, indicate_semi.o(.text), UNUSED) -

                AvailableCanRxMsg (Thumb, 30 bytes, Stack size 0 bytes, protocan.o(.text.AvailableCanRxMsg)) -

                [Called By]

                • >>   PROTOCAN_LOOP +

                  AvailableCanRxMsg (Thumb, 30 bytes, Stack size 0 bytes, protocan.o(.text.AvailableCanRxMsg)) +

                  [Called By]

                  • >>   PROTOCAN_LOOP

                  BusFault_Handler (Thumb, 4 bytes, Stack size 0 bytes, stm32f1xx_it.o(.text.BusFault_Handler)) @@ -591,12 +591,12 @@ Global Symbols

                  [Called By]

                  • >>   HAL_CAN_ErrorCallback
                  -

                  CanRequestError (Thumb, 122 bytes, Stack size 72 bytes, protocan.o(.text.CanRequestError)) +

                  CanRequestError (Thumb, 120 bytes, Stack size 72 bytes, protocan.o(.text.CanRequestError))

                  [Stack]

                  • Max Depth = 104
                  • Call Chain = CanRequestError ⇒ HAL_CAN_AddTxMessage

                  [Calls]
                  • >>   HAL_CAN_AddTxMessage
                  -
                  [Called By]
                  • >>   PROTOCAN_LOOP +
                    [Called By]
                    • >>   PROTOCAN_LOOP

                    DebugMon_Handler (Thumb, 2 bytes, Stack size 0 bytes, stm32f1xx_it.o(.text.DebugMon_Handler)) @@ -608,12 +608,12 @@ Global Symbols
                    [Called By]

                    • >>   MX_TIM4_Init
                    • >>   MX_RTC_Init
                    • >>   MX_CAN_Init -
                    • >>   SystemClock_Config -
                    • >>   PROTOCAN_RTC_SYNC +
                    • >>   SystemClock_Config +
                    • >>   PROTOCAN_RTC_SYNC
                    • >>   PROTOCAN_CONFIG_FILTER
                    -

                    HAL_CAN_ActivateNotification (Thumb, 82 bytes, Stack size 16 bytes, stm32f1xx_hal_can.o(.text.HAL_CAN_ActivateNotification)) +

                    HAL_CAN_ActivateNotification (Thumb, 82 bytes, Stack size 16 bytes, stm32f1xx_hal_can.o(.text.HAL_CAN_ActivateNotification))

                    [Stack]

                    • Max Depth = 16
                    • Call Chain = HAL_CAN_ActivateNotification

                    [Called By]
                    • >>   main @@ -622,18 +622,19 @@ Global Symbols

                      HAL_CAN_AddTxMessage (Thumb, 342 bytes, Stack size 32 bytes, stm32f1xx_hal_can.o(.text.HAL_CAN_AddTxMessage))

                      [Stack]

                      • Max Depth = 32
                      • Call Chain = HAL_CAN_AddTxMessage
                      -
                      [Called By]
                      • >>   ProtoCanMsgToModbusInput -
                      • >>   ProtoCanMsgToModbusHolding -
                      • >>   ProtoCanMsgToModbusDiscrete -
                      • >>   ProtoCanMsgToModbusCoil +
                        [Called By]
                        • >>   PROTOCAN_SEND_GENERAL_ADDRESS_SPACE +
                        • >>   ProtoCanMsgToModbusInput +
                        • >>   ProtoCanMsgToModbusHolding +
                        • >>   ProtoCanMsgToModbusDiscrete +
                        • >>   ProtoCanMsgToModbusCoil
                        • >>   ProtoCanMsgToBroadcastStatus
                        • >>   ProtoCanMsgToAnalogTSens
                        • >>   ProtoCanMsgToAnalogISens
                        • >>   ProtoCanMsgToAnalogUSens -
                        • >>   ProtoCanMsgToAnalogUSTAVKI +
                        • >>   ProtoCanMsgToAnalogSettings
                        • >>   ProtoCanMsgToAnalogUniversal
                        • >>   CanRequestError -
                        • >>   PROTOCAN_GeneralAddressSpace_Answer +
                        • >>   ProtoCanMsgToGeneralAddressSpace
                        • >>   ProtoCanPulseCallback
                        @@ -672,7 +673,7 @@ Global Symbols
                        [Address Reference Count : 2]
                        • stm32f1xx_hal_can.o(.text.HAL_CAN_Init)
                        • stm32f1xx_hal_can.o(.text.HAL_CAN_UnRegisterCallback)
                        -

                        HAL_CAN_GetRxMessage (Thumb, 530 bytes, Stack size 24 bytes, stm32f1xx_hal_can.o(.text.HAL_CAN_GetRxMessage)) +

                        HAL_CAN_GetRxMessage (Thumb, 530 bytes, Stack size 24 bytes, stm32f1xx_hal_can.o(.text.HAL_CAN_GetRxMessage))

                        [Stack]

                        • Max Depth = 24
                        • Call Chain = HAL_CAN_GetRxMessage

                        [Called By]
                        • >>   ProtoCanRxFifo0MsgPendingCallback @@ -713,10 +714,10 @@ Global Symbols
                          [Address Reference Count : 2]
                          • stm32f1xx_hal_can.o(.text.HAL_CAN_Init)
                          • stm32f1xx_hal_can.o(.text.HAL_CAN_UnRegisterCallback)
                          -

                          HAL_CAN_RegisterCallback (Thumb, 382 bytes, Stack size 28 bytes, stm32f1xx_hal_can.o(.text.HAL_CAN_RegisterCallback)) +

                          HAL_CAN_RegisterCallback (Thumb, 382 bytes, Stack size 28 bytes, stm32f1xx_hal_can.o(.text.HAL_CAN_RegisterCallback))

                          [Stack]

                          • Max Depth = 28
                          • Call Chain = HAL_CAN_RegisterCallback
                          -
                          [Called By]
                          • >>   PROTOCAN_INIT +
                            [Called By]
                            • >>   PROTOCAN_INIT

                            HAL_CAN_RxFifo0FullCallback (Thumb, 8 bytes, Stack size 4 bytes, stm32f1xx_hal_can.o(.text.HAL_CAN_RxFifo0FullCallback)) @@ -830,7 +831,7 @@ Global Symbols

                          • >>   HAL_CAN_Start
                          -

                          HAL_IncTick (Thumb, 26 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text.HAL_IncTick)) +

                          HAL_IncTick (Thumb, 26 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text.HAL_IncTick))

                          [Called By]

                          • >>   SysTick_Handler
                          @@ -915,7 +916,7 @@ Global Symbols

                        [Calls]
                        • >>   HAL_GetTick
                        -
                        [Called By]
                        • >>   SystemClock_Config +
                          [Called By]
                          • >>   SystemClock_Config

                          HAL_RCC_ClockConfig (Thumb, 598 bytes, Stack size 24 bytes, stm32f1xx_hal_rcc.o(.text.HAL_RCC_ClockConfig)) @@ -925,7 +926,7 @@ Global Symbols

                        • >>   HAL_InitTick
                        • >>   HAL_GetTick
                        -
                        [Called By]
                        • >>   SystemClock_Config +
                          [Called By]
                          • >>   SystemClock_Config

                          HAL_RCC_GetHCLKFreq (Thumb, 12 bytes, Stack size 0 bytes, stm32f1xx_hal_rcc.o(.text.HAL_RCC_GetHCLKFreq)) @@ -951,7 +952,7 @@ Global Symbols


                        [Calls]
                        • >>   HAL_GPIO_Init
                        -
                        [Called By]
                        • >>   SystemClock_Config +
                          [Called By]
                          • >>   SystemClock_Config

                          HAL_RCC_OscConfig (Thumb, 1658 bytes, Stack size 32 bytes, stm32f1xx_hal_rcc.o(.text.HAL_RCC_OscConfig)) @@ -960,7 +961,7 @@ Global Symbols
                          [Calls]

                          • >>   RCC_Delay
                          • >>   HAL_GetTick
                          -
                          [Called By]
                          • >>   SystemClock_Config +
                            [Called By]
                            • >>   SystemClock_Config

                            HAL_RTC_GetDate (Thumb, 154 bytes, Stack size 32 bytes, stm32f1xx_hal_rtc.o(.text.HAL_RTC_GetDate)) @@ -1017,7 +1018,7 @@ Global Symbols

                          • >>   RTC_Bcd2ToByte

                          [Called By]
                          • >>   MX_RTC_Init -
                          • >>   PROTOCAN_RTC_SYNC +
                          • >>   PROTOCAN_RTC_SYNC

                          HAL_RTC_SetTime (Thumb, 322 bytes, Stack size 40 bytes, stm32f1xx_hal_rtc.o(.text.HAL_RTC_SetTime)) @@ -1029,7 +1030,7 @@ Global Symbols

                        • >>   RTC_Bcd2ToByte

                        [Called By]
                        • >>   MX_RTC_Init -
                        • >>   PROTOCAN_RTC_SYNC +
                        • >>   PROTOCAN_RTC_SYNC

                        HAL_RTC_WaitForSynchro (Thumb, 100 bytes, Stack size 24 bytes, stm32f1xx_hal_rtc.o(.text.HAL_RTC_WaitForSynchro)) @@ -1156,7 +1157,7 @@ Global Symbols


                      [Address Reference Count : 1]
                      • stm32f1xx_hal_tim.o(.text.HAL_TIM_UnRegisterCallback)
                      -

                      HAL_TIM_IRQHandler (Thumb, 666 bytes, Stack size 16 bytes, stm32f1xx_hal_tim.o(.text.HAL_TIM_IRQHandler)) +

                      HAL_TIM_IRQHandler (Thumb, 666 bytes, Stack size 16 bytes, stm32f1xx_hal_tim.o(.text.HAL_TIM_IRQHandler))

                      [Stack]

                      • Max Depth = 16
                      • Call Chain = HAL_TIM_IRQHandler

                      [Called By]
                      • >>   TIM4_IRQHandler @@ -1222,10 +1223,10 @@ Global Symbols
                        [Address Reference Count : 2]
                        • stm32f1xx_hal_tim.o(.text.TIM_ResetCallback)
                        • stm32f1xx_hal_tim.o(.text.HAL_TIM_UnRegisterCallback)
                        -

                        HAL_TIM_RegisterCallback (Thumb, 674 bytes, Stack size 28 bytes, stm32f1xx_hal_tim.o(.text.HAL_TIM_RegisterCallback)) +

                        HAL_TIM_RegisterCallback (Thumb, 674 bytes, Stack size 28 bytes, stm32f1xx_hal_tim.o(.text.HAL_TIM_RegisterCallback))

                        [Stack]

                        • Max Depth = 28
                        • Call Chain = HAL_TIM_RegisterCallback
                        -
                        [Called By]
                        • >>   PROTOCAN_INIT +
                          [Called By]
                          • >>   PROTOCAN_INIT

                          HAL_TIM_TriggerCallback (Thumb, 8 bytes, Stack size 4 bytes, stm32f1xx_hal_tim.o(.text.HAL_TIM_TriggerCallback)) @@ -1249,7 +1250,7 @@ Global Symbols

                          HardFault_Handler (Thumb, 4 bytes, Stack size 0 bytes, stm32f1xx_it.o(.text.HardFault_Handler))
                          [Address Reference Count : 1]

                          • startup_stm32f103xb.o(RESET)
                          -

                          IsLeapYear (Thumb, 142 bytes, Stack size 12 bytes, protocan.o(.text.IsLeapYear)) +

                          IsLeapYear (Thumb, 142 bytes, Stack size 12 bytes, protocan.o(.text.IsLeapYear))

                          [Stack]

                          • Max Depth = 12
                          • Call Chain = IsLeapYear

                          [Called By]
                          • >>   ProtoCanMsgToBroadcastRtcSetup @@ -1300,27 +1301,27 @@ Global Symbols

                            NMI_Handler (Thumb, 4 bytes, Stack size 0 bytes, stm32f1xx_it.o(.text.NMI_Handler))
                            [Address Reference Count : 1]

                            • startup_stm32f103xb.o(RESET)
                            -

                            PROTOCAN_AnalogProcessing (Thumb, 232 bytes, Stack size 48 bytes, protocan.o(.text.PROTOCAN_AnalogProcessing)) +

                            PROTOCAN_AnalogProcessing (Thumb, 228 bytes, Stack size 48 bytes, protocan.o(.text.PROTOCAN_AnalogProcessing))

                            [Stack]

                            • Max Depth = 152
                            • Call Chain = PROTOCAN_AnalogProcessing ⇒ ProtoCanMsgToAnalogTSens ⇒ HAL_CAN_AddTxMessage

                            [Calls]
                            • >>   ProtoCanMsgToAnalogTSens
                            • >>   ProtoCanMsgToAnalogISens
                            • >>   ProtoCanMsgToAnalogUSens -
                            • >>   ProtoCanMsgToAnalogUSTAVKI +
                            • >>   ProtoCanMsgToAnalogSettings
                            • >>   ProtoCanMsgToAnalogUniversal
                            -
                            [Called By]
                            • >>   PROTOCAN_LOOP +
                              [Called By]
                              • >>   PROTOCAN_LOOP
                              -

                              PROTOCAN_BroadcastProcessing (Thumb, 196 bytes, Stack size 48 bytes, protocan.o(.text.PROTOCAN_BroadcastProcessing)) -

                              [Stack]

                              • Max Depth = 288
                              • Call Chain = PROTOCAN_BroadcastProcessing ⇒ ProtoCanMsgToBroadcastRtcSetup ⇒ PROTOCAN_RTC_SYNC ⇒ HAL_RTC_SetDate ⇒ RTC_WriteAlarmCounter ⇒ RTC_ExitInitMode +

                                PROTOCAN_BroadcastProcessing (Thumb, 192 bytes, Stack size 48 bytes, protocan.o(.text.PROTOCAN_BroadcastProcessing)) +

                                [Stack]

                                • Max Depth = 296
                                • Call Chain = PROTOCAN_BroadcastProcessing ⇒ ProtoCanMsgToBroadcastRtcSetup ⇒ PROTOCAN_RTC_SYNC ⇒ HAL_RTC_SetDate ⇒ RTC_WriteAlarmCounter ⇒ RTC_ExitInitMode

                                [Calls]
                                • >>   ProtoCanMsgToBroadcastRtcSetup
                                • >>   ProtoCanMsgToBroadcastRestart
                                • >>   ProtoCanMsgToBroadcastOnOff
                                • >>   ProtoCanMsgToBroadcastStatus
                                -
                                [Called By]
                                • >>   PROTOCAN_LOOP +
                                  [Called By]
                                  • >>   PROTOCAN_LOOP

                                  PROTOCAN_CONFIG_FILTER (Thumb, 100 bytes, Stack size 64 bytes, protocan.o(.text.PROTOCAN_CONFIG_FILTER)) @@ -1338,10 +1339,10 @@ Global Symbols
                                  [Calls]

                                  • >>   HAL_CAN_UnRegisterCallback
                                  • >>   HAL_TIM_UnRegisterCallback
                                  -
                                  [Called By]
                                  • >>   PROTOCAN_INIT +
                                    [Called By]
                                    • >>   PROTOCAN_INIT
                                    -

                                    PROTOCAN_DiscreticProcessing (Thumb, 276 bytes, Stack size 48 bytes, protocan.o(.text.PROTOCAN_DiscreticProcessing)) +

                                    PROTOCAN_DiscreticProcessing (Thumb, 272 bytes, Stack size 48 bytes, protocan.o(.text.PROTOCAN_DiscreticProcessing))

                                    [Stack]

                                    • Max Depth = 80
                                    • Call Chain = PROTOCAN_DiscreticProcessing ⇒ ProtoCanMsgToDiscreteReset

                                    [Calls]
                                    • >>   ProtoCanMsgToDiscreteRequestListOfParameters @@ -1352,46 +1353,39 @@ Global Symbols
                                    • >>   ProtoCanMsgToDiscreteWarning
                                    • >>   ProtoCanMsgToDiscreteAccident
                                    -
                                    [Called By]
                                    • >>   PROTOCAN_LOOP +
                                      [Called By]
                                      • >>   PROTOCAN_LOOP
                                      -

                                      PROTOCAN_FILTERS (Thumb, 82 bytes, Stack size 8 bytes, protocan.o(.text.PROTOCAN_FILTERS)) -

                                      [Stack]

                                      • Max Depth = 96
                                      • Call Chain = PROTOCAN_FILTERS ⇒ PROTOCAN_CONFIG_FILTER ⇒ HAL_CAN_ConfigFilter +

                                        PROTOCAN_FILTERS (Thumb, 62 bytes, Stack size 32 bytes, protocan.o(.text.PROTOCAN_FILTERS)) +

                                        [Stack]

                                        • Max Depth = 120
                                        • Call Chain = PROTOCAN_FILTERS ⇒ PROTOCAN_CONFIG_FILTER ⇒ HAL_CAN_ConfigFilter

                                        [Calls]
                                        • >>   PROTOCAN_CONFIG_FILTER
                                        -
                                        [Called By]
                                        • >>   PROTOCAN_INIT +
                                          [Called By]
                                          • >>   PROTOCAN_INIT
                                          -

                                          PROTOCAN_GeneralAddressSpace_Answer (Thumb, 216 bytes, Stack size 80 bytes, protocan.o(.text.PROTOCAN_GeneralAddressSpace_Answer)) -

                                          [Stack]

                                          • Max Depth = 112
                                          • Call Chain = PROTOCAN_GeneralAddressSpace_Answer ⇒ HAL_CAN_AddTxMessage -
                                          -
                                          [Calls]
                                          • >>   HAL_CAN_AddTxMessage -
                                          -
                                          [Called By]
                                          • >>   PROTOCAN_LOOP -
                                          - -

                                          PROTOCAN_INIT (Thumb, 264 bytes, Stack size 32 bytes, protocan.o(.text.PROTOCAN_INIT)) -

                                          [Stack]

                                          • Max Depth = 128
                                          • Call Chain = PROTOCAN_INIT ⇒ PROTOCAN_FILTERS ⇒ PROTOCAN_CONFIG_FILTER ⇒ HAL_CAN_ConfigFilter +

                                            PROTOCAN_INIT (Thumb, 264 bytes, Stack size 32 bytes, protocan.o(.text.PROTOCAN_INIT)) +

                                            [Stack]

                                            • Max Depth = 152
                                            • Call Chain = PROTOCAN_INIT ⇒ PROTOCAN_FILTERS ⇒ PROTOCAN_CONFIG_FILTER ⇒ HAL_CAN_ConfigFilter

                                            [Calls]
                                            • >>   PROTOCAN_FILTERS -
                                            • >>   HAL_TIM_RegisterCallback -
                                            • >>   HAL_CAN_RegisterCallback +
                                            • >>   HAL_TIM_RegisterCallback +
                                            • >>   HAL_CAN_RegisterCallback
                                            • >>   PROTOCAN_DEINIT

                                            [Called By]
                                            • >>   main
                                            -

                                            PROTOCAN_LOOP (Thumb, 736 bytes, Stack size 16 bytes, protocan.o(.text.PROTOCAN_LOOP)) -

                                            [Stack]

                                            • Max Depth = 304
                                            • Call Chain = PROTOCAN_LOOP ⇒ PROTOCAN_BroadcastProcessing ⇒ ProtoCanMsgToBroadcastRtcSetup ⇒ PROTOCAN_RTC_SYNC ⇒ HAL_RTC_SetDate ⇒ RTC_WriteAlarmCounter ⇒ RTC_ExitInitMode +

                                              PROTOCAN_LOOP (Thumb, 836 bytes, Stack size 40 bytes, protocan.o(.text.PROTOCAN_LOOP)) +

                                              [Stack]

                                              • Max Depth = 336
                                              • Call Chain = PROTOCAN_LOOP ⇒ PROTOCAN_BroadcastProcessing ⇒ ProtoCanMsgToBroadcastRtcSetup ⇒ PROTOCAN_RTC_SYNC ⇒ HAL_RTC_SetDate ⇒ RTC_WriteAlarmCounter ⇒ RTC_ExitInitMode
                                              -
                                              [Calls]
                                              • >>   CanRequestError +
                                                [Calls]
                                                • >>   PROTOCAN_SEND +
                                                • >>   CanRequestError
                                                • >>   PROTOCAN_ModbusProcessing -
                                                • >>   PROTOCAN_GeneralAddressSpace_Answer +
                                                • >>   ProtoCanMsgToGeneralAddressSpace
                                                • >>   PROTOCAN_DiscreticProcessing
                                                • >>   PROTOCAN_BroadcastProcessing
                                                • >>   PROTOCAN_AnalogProcessing -
                                                • >>   AvailableCanRxMsg +
                                                • >>   AvailableCanRxMsg

                                                [Called By]
                                                • >>   main
                                                @@ -1399,15 +1393,15 @@ Global Symbols

                                                PROTOCAN_ModbusProcessing (Thumb, 196 bytes, Stack size 40 bytes, protocan.o(.text.PROTOCAN_ModbusProcessing))

                                                [Stack]

                                                • Max Depth = 144
                                                • Call Chain = PROTOCAN_ModbusProcessing ⇒ ProtoCanMsgToModbusInput ⇒ HAL_CAN_AddTxMessage
                                                -
                                                [Calls]
                                                • >>   ProtoCanMsgToModbusInput -
                                                • >>   ProtoCanMsgToModbusHolding -
                                                • >>   ProtoCanMsgToModbusDiscrete -
                                                • >>   ProtoCanMsgToModbusCoil +
                                                  [Calls]
                                                  • >>   ProtoCanMsgToModbusInput +
                                                  • >>   ProtoCanMsgToModbusHolding +
                                                  • >>   ProtoCanMsgToModbusDiscrete +
                                                  • >>   ProtoCanMsgToModbusCoil
                                                  -
                                                  [Called By]
                                                  • >>   PROTOCAN_LOOP +
                                                    [Called By]
                                                    • >>   PROTOCAN_LOOP
                                                    -

                                                    PROTOCAN_RTC_SYNC (Thumb, 164 bytes, Stack size 24 bytes, protocan.o(.text.PROTOCAN_RTC_SYNC)) +

                                                    PROTOCAN_RTC_SYNC (Thumb, 164 bytes, Stack size 24 bytes, protocan.o(.text.PROTOCAN_RTC_SYNC))

                                                    [Stack]

                                                    • Max Depth = 112
                                                    • Call Chain = PROTOCAN_RTC_SYNC ⇒ HAL_RTC_SetDate ⇒ RTC_WriteAlarmCounter ⇒ RTC_ExitInitMode

                                                    [Calls]
                                                    • >>   HAL_RTC_SetDate @@ -1417,10 +1411,26 @@ Global Symbols
                                                      [Called By]
                                                      • >>   ProtoCanMsgToBroadcastRtcSetup
                                                      +

                                                      PROTOCAN_SEND (Thumb, 64 bytes, Stack size 32 bytes, protocan.o(.text.PROTOCAN_SEND)) +

                                                      [Stack]

                                                      • Max Depth = 152
                                                      • Call Chain = PROTOCAN_SEND ⇒ PROTOCAN_SEND_GENERAL_ADDRESS_SPACE ⇒ HAL_CAN_AddTxMessage +
                                                      +
                                                      [Calls]
                                                      • >>   PROTOCAN_SEND_GENERAL_ADDRESS_SPACE +
                                                      +
                                                      [Called By]
                                                      • >>   PROTOCAN_LOOP +
                                                      + +

                                                      PROTOCAN_SEND_GENERAL_ADDRESS_SPACE (Thumb, 282 bytes, Stack size 88 bytes, protocan.o(.text.PROTOCAN_SEND_GENERAL_ADDRESS_SPACE)) +

                                                      [Stack]

                                                      • Max Depth = 120
                                                      • Call Chain = PROTOCAN_SEND_GENERAL_ADDRESS_SPACE ⇒ HAL_CAN_AddTxMessage +
                                                      +
                                                      [Calls]
                                                      • >>   HAL_CAN_AddTxMessage +
                                                      +
                                                      [Called By]
                                                      • >>   PROTOCAN_SEND +
                                                      +

                                                      PendSV_Handler (Thumb, 2 bytes, Stack size 0 bytes, stm32f1xx_it.o(.text.PendSV_Handler))
                                                      [Address Reference Count : 1]

                                                      • startup_stm32f103xb.o(RESET)
                                                      -

                                                      ProtoCanMsgToAnalogISens (Thumb, 268 bytes, Stack size 72 bytes, protocan.o(.text.ProtoCanMsgToAnalogISens)) +

                                                      ProtoCanMsgToAnalogISens (Thumb, 266 bytes, Stack size 72 bytes, protocan.o(.text.ProtoCanMsgToAnalogISens))

                                                      [Stack]

                                                      • Max Depth = 104
                                                      • Call Chain = ProtoCanMsgToAnalogISens ⇒ HAL_CAN_AddTxMessage

                                                      [Calls]
                                                      • >>   HAL_CAN_AddTxMessage @@ -1428,7 +1438,15 @@ Global Symbols
                                                        [Called By]
                                                        • >>   PROTOCAN_AnalogProcessing
                                                        -

                                                        ProtoCanMsgToAnalogTSens (Thumb, 268 bytes, Stack size 72 bytes, protocan.o(.text.ProtoCanMsgToAnalogTSens)) +

                                                        ProtoCanMsgToAnalogSettings (Thumb, 134 bytes, Stack size 72 bytes, protocan.o(.text.ProtoCanMsgToAnalogSettings)) +

                                                        [Stack]

                                                        • Max Depth = 104
                                                        • Call Chain = ProtoCanMsgToAnalogSettings ⇒ HAL_CAN_AddTxMessage +
                                                        +
                                                        [Calls]
                                                        • >>   HAL_CAN_AddTxMessage +
                                                        +
                                                        [Called By]
                                                        • >>   PROTOCAN_AnalogProcessing +
                                                        + +

                                                        ProtoCanMsgToAnalogTSens (Thumb, 266 bytes, Stack size 72 bytes, protocan.o(.text.ProtoCanMsgToAnalogTSens))

                                                        [Stack]

                                                        • Max Depth = 104
                                                        • Call Chain = ProtoCanMsgToAnalogTSens ⇒ HAL_CAN_AddTxMessage

                                                        [Calls]
                                                        • >>   HAL_CAN_AddTxMessage @@ -1436,15 +1454,7 @@ Global Symbols
                                                          [Called By]
                                                          • >>   PROTOCAN_AnalogProcessing
                                                          -

                                                          ProtoCanMsgToAnalogUSTAVKI (Thumb, 134 bytes, Stack size 72 bytes, protocan.o(.text.ProtoCanMsgToAnalogUSTAVKI)) -

                                                          [Stack]

                                                          • Max Depth = 104
                                                          • Call Chain = ProtoCanMsgToAnalogUSTAVKI ⇒ HAL_CAN_AddTxMessage -
                                                          -
                                                          [Calls]
                                                          • >>   HAL_CAN_AddTxMessage -
                                                          -
                                                          [Called By]
                                                          • >>   PROTOCAN_AnalogProcessing -
                                                          - -

                                                          ProtoCanMsgToAnalogUSens (Thumb, 268 bytes, Stack size 72 bytes, protocan.o(.text.ProtoCanMsgToAnalogUSens)) +

                                                          ProtoCanMsgToAnalogUSens (Thumb, 266 bytes, Stack size 72 bytes, protocan.o(.text.ProtoCanMsgToAnalogUSens))

                                                          [Stack]

                                                          • Max Depth = 104
                                                          • Call Chain = ProtoCanMsgToAnalogUSens ⇒ HAL_CAN_AddTxMessage

                                                          [Calls]
                                                          • >>   HAL_CAN_AddTxMessage @@ -1460,26 +1470,26 @@ Global Symbols
                                                            [Called By]
                                                            • >>   PROTOCAN_AnalogProcessing
                                                            -

                                                            ProtoCanMsgToBroadcastOnOff (Thumb, 46 bytes, Stack size 28 bytes, protocan.o(.text.ProtoCanMsgToBroadcastOnOff)) +

                                                            ProtoCanMsgToBroadcastOnOff (Thumb, 48 bytes, Stack size 28 bytes, protocan.o(.text.ProtoCanMsgToBroadcastOnOff))

                                                            [Stack]

                                                            • Max Depth = 28
                                                            • Call Chain = ProtoCanMsgToBroadcastOnOff

                                                            [Called By]
                                                            • >>   PROTOCAN_BroadcastProcessing
                                                            -

                                                            ProtoCanMsgToBroadcastRestart (Thumb, 146 bytes, Stack size 48 bytes, protocan.o(.text.ProtoCanMsgToBroadcastRestart)) -

                                                            [Stack]

                                                            • Max Depth = 48
                                                            • Call Chain = ProtoCanMsgToBroadcastRestart +

                                                              ProtoCanMsgToBroadcastRestart (Thumb, 160 bytes, Stack size 56 bytes, protocan.o(.text.ProtoCanMsgToBroadcastRestart)) +

                                                              [Stack]

                                                              • Max Depth = 56
                                                              • Call Chain = ProtoCanMsgToBroadcastRestart
                                                              -
                                                              [Calls]
                                                              • >>   __NVIC_SystemReset +
                                                                [Calls]
                                                                • >>   __NVIC_SystemReset

                                                                [Called By]
                                                                • >>   PROTOCAN_BroadcastProcessing
                                                                -

                                                                ProtoCanMsgToBroadcastRtcSetup (Thumb, 168 bytes, Stack size 128 bytes, protocan.o(.text.ProtoCanMsgToBroadcastRtcSetup)) -

                                                                [Stack]

                                                                • Max Depth = 240
                                                                • Call Chain = ProtoCanMsgToBroadcastRtcSetup ⇒ PROTOCAN_RTC_SYNC ⇒ HAL_RTC_SetDate ⇒ RTC_WriteAlarmCounter ⇒ RTC_ExitInitMode +

                                                                  ProtoCanMsgToBroadcastRtcSetup (Thumb, 192 bytes, Stack size 136 bytes, protocan.o(.text.ProtoCanMsgToBroadcastRtcSetup)) +

                                                                  [Stack]

                                                                  • Max Depth = 248
                                                                  • Call Chain = ProtoCanMsgToBroadcastRtcSetup ⇒ PROTOCAN_RTC_SYNC ⇒ HAL_RTC_SetDate ⇒ RTC_WriteAlarmCounter ⇒ RTC_ExitInitMode
                                                                  -
                                                                  [Calls]
                                                                  • >>   PROTOCAN_RTC_SYNC -
                                                                  • >>   IsLeapYear -
                                                                  • >>   __aeabi_memcpy4 +
                                                                    [Calls]
                                                                    • >>   PROTOCAN_RTC_SYNC +
                                                                    • >>   IsLeapYear +
                                                                    • >>   __aeabi_memcpy4

                                                                    [Called By]
                                                                    • >>   PROTOCAN_BroadcastProcessing
                                                                    @@ -1494,31 +1504,31 @@ Global Symbols
                                                                    [Called By]
                                                                    • >>   PROTOCAN_BroadcastProcessing
                                                                    -

                                                                    ProtoCanMsgToDiscreteAccident (Thumb, 24 bytes, Stack size 28 bytes, protocan.o(.text.ProtoCanMsgToDiscreteAccident)) +

                                                                    ProtoCanMsgToDiscreteAccident (Thumb, 26 bytes, Stack size 28 bytes, protocan.o(.text.ProtoCanMsgToDiscreteAccident))

                                                                    [Stack]

                                                                    • Max Depth = 28
                                                                    • Call Chain = ProtoCanMsgToDiscreteAccident

                                                                    [Called By]
                                                                    • >>   PROTOCAN_DiscreticProcessing
                                                                    -

                                                                    ProtoCanMsgToDiscreteChangeMode (Thumb, 24 bytes, Stack size 28 bytes, protocan.o(.text.ProtoCanMsgToDiscreteChangeMode)) +

                                                                    ProtoCanMsgToDiscreteChangeMode (Thumb, 26 bytes, Stack size 28 bytes, protocan.o(.text.ProtoCanMsgToDiscreteChangeMode))

                                                                    [Stack]

                                                                    • Max Depth = 28
                                                                    • Call Chain = ProtoCanMsgToDiscreteChangeMode

                                                                    [Called By]
                                                                    • >>   PROTOCAN_DiscreticProcessing
                                                                    -

                                                                    ProtoCanMsgToDiscreteControlSignals (Thumb, 24 bytes, Stack size 28 bytes, protocan.o(.text.ProtoCanMsgToDiscreteControlSignals)) +

                                                                    ProtoCanMsgToDiscreteControlSignals (Thumb, 26 bytes, Stack size 28 bytes, protocan.o(.text.ProtoCanMsgToDiscreteControlSignals))

                                                                    [Stack]

                                                                    • Max Depth = 28
                                                                    • Call Chain = ProtoCanMsgToDiscreteControlSignals

                                                                    [Called By]
                                                                    • >>   PROTOCAN_DiscreticProcessing
                                                                    -

                                                                    ProtoCanMsgToDiscreteFlags (Thumb, 24 bytes, Stack size 28 bytes, protocan.o(.text.ProtoCanMsgToDiscreteFlags)) +

                                                                    ProtoCanMsgToDiscreteFlags (Thumb, 26 bytes, Stack size 28 bytes, protocan.o(.text.ProtoCanMsgToDiscreteFlags))

                                                                    [Stack]

                                                                    • Max Depth = 28
                                                                    • Call Chain = ProtoCanMsgToDiscreteFlags

                                                                    [Called By]
                                                                    • >>   PROTOCAN_DiscreticProcessing
                                                                    -

                                                                    ProtoCanMsgToDiscreteRequestListOfParameters (Thumb, 24 bytes, Stack size 28 bytes, protocan.o(.text.ProtoCanMsgToDiscreteRequestListOfParameters)) +

                                                                    ProtoCanMsgToDiscreteRequestListOfParameters (Thumb, 26 bytes, Stack size 28 bytes, protocan.o(.text.ProtoCanMsgToDiscreteRequestListOfParameters))

                                                                    [Stack]

                                                                    • Max Depth = 28
                                                                    • Call Chain = ProtoCanMsgToDiscreteRequestListOfParameters

                                                                    [Called By]
                                                                    • >>   PROTOCAN_DiscreticProcessing @@ -1527,18 +1537,26 @@ Global Symbols

                                                                      ProtoCanMsgToDiscreteReset (Thumb, 24 bytes, Stack size 32 bytes, protocan.o(.text.ProtoCanMsgToDiscreteReset))

                                                                      [Stack]

                                                                      • Max Depth = 32
                                                                      • Call Chain = ProtoCanMsgToDiscreteReset
                                                                      -
                                                                      [Calls]
                                                                      • >>   __NVIC_SystemReset +
                                                                        [Calls]
                                                                        • >>   __NVIC_SystemReset

                                                                        [Called By]
                                                                        • >>   PROTOCAN_DiscreticProcessing
                                                                        -

                                                                        ProtoCanMsgToDiscreteWarning (Thumb, 24 bytes, Stack size 28 bytes, protocan.o(.text.ProtoCanMsgToDiscreteWarning)) +

                                                                        ProtoCanMsgToDiscreteWarning (Thumb, 26 bytes, Stack size 28 bytes, protocan.o(.text.ProtoCanMsgToDiscreteWarning))

                                                                        [Stack]

                                                                        • Max Depth = 28
                                                                        • Call Chain = ProtoCanMsgToDiscreteWarning

                                                                        [Called By]
                                                                        • >>   PROTOCAN_DiscreticProcessing
                                                                        -

                                                                        ProtoCanMsgToModbusCoil (Thumb, 154 bytes, Stack size 72 bytes, protocan.o(.text.ProtoCanMsgToModbusCoil)) +

                                                                        ProtoCanMsgToGeneralAddressSpace (Thumb, 216 bytes, Stack size 80 bytes, protocan.o(.text.ProtoCanMsgToGeneralAddressSpace)) +

                                                                        [Stack]

                                                                        • Max Depth = 112
                                                                        • Call Chain = ProtoCanMsgToGeneralAddressSpace ⇒ HAL_CAN_AddTxMessage +
                                                                        +
                                                                        [Calls]
                                                                        • >>   HAL_CAN_AddTxMessage +
                                                                        +
                                                                        [Called By]
                                                                        • >>   PROTOCAN_LOOP +
                                                                        + +

                                                                        ProtoCanMsgToModbusCoil (Thumb, 152 bytes, Stack size 72 bytes, protocan.o(.text.ProtoCanMsgToModbusCoil))

                                                                        [Stack]

                                                                        • Max Depth = 104
                                                                        • Call Chain = ProtoCanMsgToModbusCoil ⇒ HAL_CAN_AddTxMessage

                                                                        [Calls]
                                                                        • >>   HAL_CAN_AddTxMessage @@ -1546,7 +1564,7 @@ Global Symbols
                                                                          [Called By]
                                                                          • >>   PROTOCAN_ModbusProcessing
                                                                          -

                                                                          ProtoCanMsgToModbusDiscrete (Thumb, 156 bytes, Stack size 72 bytes, protocan.o(.text.ProtoCanMsgToModbusDiscrete)) +

                                                                          ProtoCanMsgToModbusDiscrete (Thumb, 154 bytes, Stack size 72 bytes, protocan.o(.text.ProtoCanMsgToModbusDiscrete))

                                                                          [Stack]

                                                                          • Max Depth = 104
                                                                          • Call Chain = ProtoCanMsgToModbusDiscrete ⇒ HAL_CAN_AddTxMessage

                                                                          [Calls]
                                                                          • >>   HAL_CAN_AddTxMessage @@ -1554,7 +1572,7 @@ Global Symbols
                                                                            [Called By]
                                                                            • >>   PROTOCAN_ModbusProcessing
                                                                            -

                                                                            ProtoCanMsgToModbusHolding (Thumb, 156 bytes, Stack size 72 bytes, protocan.o(.text.ProtoCanMsgToModbusHolding)) +

                                                                            ProtoCanMsgToModbusHolding (Thumb, 154 bytes, Stack size 72 bytes, protocan.o(.text.ProtoCanMsgToModbusHolding))

                                                                            [Stack]

                                                                            • Max Depth = 104
                                                                            • Call Chain = ProtoCanMsgToModbusHolding ⇒ HAL_CAN_AddTxMessage

                                                                            [Calls]
                                                                            • >>   HAL_CAN_AddTxMessage @@ -1562,7 +1580,7 @@ Global Symbols
                                                                              [Called By]
                                                                              • >>   PROTOCAN_ModbusProcessing
                                                                              -

                                                                              ProtoCanMsgToModbusInput (Thumb, 156 bytes, Stack size 72 bytes, protocan.o(.text.ProtoCanMsgToModbusInput)) +

                                                                              ProtoCanMsgToModbusInput (Thumb, 154 bytes, Stack size 72 bytes, protocan.o(.text.ProtoCanMsgToModbusInput))

                                                                              [Stack]

                                                                              • Max Depth = 104
                                                                              • Call Chain = ProtoCanMsgToModbusInput ⇒ HAL_CAN_AddTxMessage

                                                                              [Calls]
                                                                              • >>   HAL_CAN_AddTxMessage @@ -1580,8 +1598,8 @@ Global Symbols

                                                                                ProtoCanRxFifo0MsgPendingCallback (Thumb, 214 bytes, Stack size 64 bytes, protocan.o(.text.ProtoCanRxFifo0MsgPendingCallback))

                                                                                [Stack]

                                                                                • Max Depth = 96
                                                                                • Call Chain = ProtoCanRxFifo0MsgPendingCallback ⇒ TakeRxMsgToBuffer
                                                                                -
                                                                                [Calls]
                                                                                • >>   TakeRxMsgToBuffer -
                                                                                • >>   HAL_CAN_GetRxMessage +
                                                                                  [Calls]
                                                                                  • >>   TakeRxMsgToBuffer +
                                                                                  • >>   HAL_CAN_GetRxMessage

                                                                                  [Address Reference Count : 1]
                                                                                  • protocan.o(.text.PROTOCAN_INIT)
                                                                                  @@ -1591,11 +1609,11 @@ Global Symbols

                                                                                  SysTick_Handler (Thumb, 8 bytes, Stack size 8 bytes, stm32f1xx_it.o(.text.SysTick_Handler))

                                                                                  [Stack]

                                                                                  • Max Depth = 8
                                                                                  • Call Chain = SysTick_Handler
                                                                                  -
                                                                                  [Calls]
                                                                                  • >>   HAL_IncTick +
                                                                                    [Calls]
                                                                                    • >>   HAL_IncTick

                                                                                    [Address Reference Count : 1]
                                                                                    • startup_stm32f103xb.o(RESET)
                                                                                    -

                                                                                    SystemClock_Config (Thumb, 156 bytes, Stack size 96 bytes, main.o(.text.SystemClock_Config)) +

                                                                                    SystemClock_Config (Thumb, 156 bytes, Stack size 96 bytes, main.o(.text.SystemClock_Config))

                                                                                    [Stack]

                                                                                    • Max Depth = 200 + Unknown Stack Size
                                                                                    • Call Chain = SystemClock_Config ⇒ HAL_RCC_MCOConfig ⇒ HAL_GPIO_Init
                                                                                    @@ -1604,7 +1622,7 @@ Global Symbols
                                                                                  • >>   HAL_RCC_ClockConfig
                                                                                  • >>   HAL_RCC_OscConfig
                                                                                  • >>   Error_Handler -
                                                                                  • >>   __aeabi_memclr4 +
                                                                                  • >>   __aeabi_memclr4

                                                                                  [Called By]
                                                                                  • >>   main
                                                                                  @@ -1615,7 +1633,7 @@ Global Symbols

                                                                                  TIM4_IRQHandler (Thumb, 16 bytes, Stack size 8 bytes, stm32f1xx_it.o(.text.TIM4_IRQHandler))

                                                                                  [Stack]

                                                                                  • Max Depth = 24
                                                                                  • Call Chain = TIM4_IRQHandler ⇒ HAL_TIM_IRQHandler
                                                                                  -
                                                                                  [Calls]
                                                                                  • >>   HAL_TIM_IRQHandler +
                                                                                    [Calls]
                                                                                    • >>   HAL_TIM_IRQHandler

                                                                                    [Address Reference Count : 1]
                                                                                    • startup_stm32f103xb.o(RESET)
                                                                                    @@ -1637,7 +1655,7 @@ Global Symbols
                                                                                    [Called By]
                                                                                    • >>   HAL_TIM_Base_Init
                                                                                    -

                                                                                    TakeRxMsgToBuffer (Thumb, 208 bytes, Stack size 32 bytes, protocan.o(.text.TakeRxMsgToBuffer)) +

                                                                                    TakeRxMsgToBuffer (Thumb, 208 bytes, Stack size 32 bytes, protocan.o(.text.TakeRxMsgToBuffer))

                                                                                    [Stack]

                                                                                    • Max Depth = 32
                                                                                    • Call Chain = TakeRxMsgToBuffer

                                                                                    [Called By]
                                                                                    • >>   ProtoCanRxFifo0MsgPendingCallback @@ -1661,19 +1679,19 @@ Global Symbols
                                                                                      [Address Reference Count : 1]
                                                                                      • startup_stm32f103xb.o(RESET)

                                                                                      main (Thumb, 102 bytes, Stack size 16 bytes, main.o(.text.main)) -

                                                                                      [Stack]

                                                                                      • Max Depth = 320 + Unknown Stack Size +

                                                                                        [Stack]
                                                                                        • Max Depth = 352 + Unknown Stack Size
                                                                                        • Call Chain = main ⇒ PROTOCAN_LOOP ⇒ PROTOCAN_BroadcastProcessing ⇒ ProtoCanMsgToBroadcastRtcSetup ⇒ PROTOCAN_RTC_SYNC ⇒ HAL_RTC_SetDate ⇒ RTC_WriteAlarmCounter ⇒ RTC_ExitInitMode
                                                                                        -
                                                                                        [Calls]
                                                                                        • >>   HAL_CAN_ActivateNotification +
                                                                                          [Calls]
                                                                                          • >>   HAL_CAN_ActivateNotification
                                                                                          • >>   HAL_CAN_Start
                                                                                          • >>   MX_TIM4_Init
                                                                                          • >>   MX_RTC_Init
                                                                                          • >>   MX_CAN_Init
                                                                                          • >>   MX_GPIO_Init
                                                                                          • >>   HAL_Init -
                                                                                          • >>   SystemClock_Config -
                                                                                          • >>   PROTOCAN_LOOP -
                                                                                          • >>   PROTOCAN_INIT +
                                                                                          • >>   SystemClock_Config +
                                                                                          • >>   PROTOCAN_LOOP +
                                                                                          • >>   PROTOCAN_INIT

                                                                                          [Called By]
                                                                                          • >>   __rt_entry_main
                                                                                          @@ -1681,7 +1699,7 @@ Global Symbols

                                                                                          Local Symbols

                                                                                          -

                                                                                          __NVIC_SystemReset (Thumb, 38 bytes, Stack size 0 bytes, protocan.o(.text.__NVIC_SystemReset)) +

                                                                                          __NVIC_SystemReset (Thumb, 38 bytes, Stack size 0 bytes, protocan.o(.text.__NVIC_SystemReset))

                                                                                          [Called By]

                                                                                          • >>   ProtoCanMsgToDiscreteReset
                                                                                          • >>   ProtoCanMsgToBroadcastRestart
                                                                                          @@ -1803,7 +1821,7 @@ Local Symbols

                                                                                          [Stack]
                                                                                          • Max Depth = 48
                                                                                          • Call Chain = RTC_DateUpdate ⇒ RTC_WeekDayNum

                                                                                          [Calls]
                                                                                          • >>   RTC_WeekDayNum -
                                                                                          • >>   RTC_IsLeapYear +
                                                                                          • >>   RTC_IsLeapYear

                                                                                          [Called By]
                                                                                          • >>   HAL_RTC_GetTime
                                                                                          @@ -1815,7 +1833,7 @@ Local Symbols
                                                                                        • >>   HAL_RTC_GetTime
                                                                                        -

                                                                                        RTC_IsLeapYear (Thumb, 120 bytes, Stack size 4 bytes, stm32f1xx_hal_rtc.o(.text.RTC_IsLeapYear)) +

                                                                                        RTC_IsLeapYear (Thumb, 120 bytes, Stack size 4 bytes, stm32f1xx_hal_rtc.o(.text.RTC_IsLeapYear))

                                                                                        [Stack]

                                                                                        • Max Depth = 4
                                                                                        • Call Chain = RTC_IsLeapYear

                                                                                        [Called By]
                                                                                        • >>   RTC_DateUpdate diff --git a/MDK-ARM/F103C8T6/F103C8T6.map b/MDK-ARM/F103C8T6/F103C8T6.map index 56b977e..66c99ce 100644 --- a/MDK-ARM/F103C8T6/F103C8T6.map +++ b/MDK-ARM/F103C8T6/F103C8T6.map @@ -126,13 +126,7 @@ Section Cross References protocan.o(.text.ProtoCanPulseCallback) refers to protocan.o(.bss._HCAN) for _HCAN protocan.o(.text.ProtoCanPulseCallback) refers to stm32f1xx_hal_can.o(.text.HAL_CAN_AddTxMessage) for HAL_CAN_AddTxMessage protocan.o(.ARM.exidx.text.ProtoCanPulseCallback) refers to protocan.o(.text.ProtoCanPulseCallback) for [Anonymous Symbol] - protocan.o(.text.PROTOCAN_FILTERS) refers to protocan.o(.data.filter1_id) for filter1_id - protocan.o(.text.PROTOCAN_FILTERS) refers to protocan.o(.data.filter1_mask) for filter1_mask protocan.o(.text.PROTOCAN_FILTERS) refers to protocan.o(.text.PROTOCAN_CONFIG_FILTER) for PROTOCAN_CONFIG_FILTER - protocan.o(.text.PROTOCAN_FILTERS) refers to protocan.o(.bss.filter2_id) for filter2_id - protocan.o(.text.PROTOCAN_FILTERS) refers to protocan.o(.data.filter2_mask) for filter2_mask - protocan.o(.text.PROTOCAN_FILTERS) refers to protocan.o(.data.filter3_id) for filter3_id - protocan.o(.text.PROTOCAN_FILTERS) refers to protocan.o(.data.filter3_mask) for filter3_mask protocan.o(.ARM.exidx.text.PROTOCAN_FILTERS) refers to protocan.o(.text.PROTOCAN_FILTERS) for [Anonymous Symbol] protocan.o(.text.PROTOCAN_LOOP) refers to protocan.o(.text.AvailableCanRxMsg) for AvailableCanRxMsg protocan.o(.text.PROTOCAN_LOOP) refers to protocan.o(.data.CurrentStep) for CurrentStep @@ -140,12 +134,13 @@ Section Cross References protocan.o(.text.PROTOCAN_LOOP) refers to protocan.o(.text.PROTOCAN_AnalogProcessing) for PROTOCAN_AnalogProcessing protocan.o(.text.PROTOCAN_LOOP) refers to protocan.o(.text.PROTOCAN_BroadcastProcessing) for PROTOCAN_BroadcastProcessing protocan.o(.text.PROTOCAN_LOOP) refers to protocan.o(.text.PROTOCAN_DiscreticProcessing) for PROTOCAN_DiscreticProcessing - protocan.o(.text.PROTOCAN_LOOP) refers to protocan.o(.text.PROTOCAN_GeneralAddressSpace_Answer) for PROTOCAN_GeneralAddressSpace_Answer + protocan.o(.text.PROTOCAN_LOOP) refers to protocan.o(.text.ProtoCanMsgToGeneralAddressSpace) for ProtoCanMsgToGeneralAddressSpace protocan.o(.text.PROTOCAN_LOOP) refers to protocan.o(.text.PROTOCAN_ModbusProcessing) for PROTOCAN_ModbusProcessing protocan.o(.text.PROTOCAN_LOOP) refers to protocan.o(.text.CanRequestError) for CanRequestError + protocan.o(.text.PROTOCAN_LOOP) refers to protocan.o(.text.PROTOCAN_SEND) for PROTOCAN_SEND protocan.o(.ARM.exidx.text.PROTOCAN_LOOP) refers to protocan.o(.text.PROTOCAN_LOOP) for [Anonymous Symbol] protocan.o(.text.PROTOCAN_AnalogProcessing) refers to protocan.o(.text.ProtoCanMsgToAnalogUniversal) for ProtoCanMsgToAnalogUniversal - protocan.o(.text.PROTOCAN_AnalogProcessing) refers to protocan.o(.text.ProtoCanMsgToAnalogUSTAVKI) for ProtoCanMsgToAnalogUSTAVKI + protocan.o(.text.PROTOCAN_AnalogProcessing) refers to protocan.o(.text.ProtoCanMsgToAnalogSettings) for ProtoCanMsgToAnalogSettings protocan.o(.text.PROTOCAN_AnalogProcessing) refers to protocan.o(.text.ProtoCanMsgToAnalogUSens) for ProtoCanMsgToAnalogUSens protocan.o(.text.PROTOCAN_AnalogProcessing) refers to protocan.o(.text.ProtoCanMsgToAnalogISens) for ProtoCanMsgToAnalogISens protocan.o(.text.PROTOCAN_AnalogProcessing) refers to protocan.o(.text.ProtoCanMsgToAnalogTSens) for ProtoCanMsgToAnalogTSens @@ -163,9 +158,9 @@ Section Cross References protocan.o(.text.PROTOCAN_DiscreticProcessing) refers to protocan.o(.text.ProtoCanMsgToDiscreteChangeMode) for ProtoCanMsgToDiscreteChangeMode protocan.o(.text.PROTOCAN_DiscreticProcessing) refers to protocan.o(.text.ProtoCanMsgToDiscreteRequestListOfParameters) for ProtoCanMsgToDiscreteRequestListOfParameters protocan.o(.ARM.exidx.text.PROTOCAN_DiscreticProcessing) refers to protocan.o(.text.PROTOCAN_DiscreticProcessing) for [Anonymous Symbol] - protocan.o(.text.PROTOCAN_GeneralAddressSpace_Answer) refers to protocan.o(.bss._HCAN) for _HCAN - protocan.o(.text.PROTOCAN_GeneralAddressSpace_Answer) refers to stm32f1xx_hal_can.o(.text.HAL_CAN_AddTxMessage) for HAL_CAN_AddTxMessage - protocan.o(.ARM.exidx.text.PROTOCAN_GeneralAddressSpace_Answer) refers to protocan.o(.text.PROTOCAN_GeneralAddressSpace_Answer) for [Anonymous Symbol] + protocan.o(.text.ProtoCanMsgToGeneralAddressSpace) refers to protocan.o(.bss._HCAN) for _HCAN + protocan.o(.text.ProtoCanMsgToGeneralAddressSpace) refers to stm32f1xx_hal_can.o(.text.HAL_CAN_AddTxMessage) for HAL_CAN_AddTxMessage + protocan.o(.ARM.exidx.text.ProtoCanMsgToGeneralAddressSpace) refers to protocan.o(.text.ProtoCanMsgToGeneralAddressSpace) for [Anonymous Symbol] protocan.o(.text.PROTOCAN_ModbusProcessing) refers to protocan.o(.text.ProtoCanMsgToModbusCoil) for ProtoCanMsgToModbusCoil protocan.o(.text.PROTOCAN_ModbusProcessing) refers to protocan.o(.text.ProtoCanMsgToModbusDiscrete) for ProtoCanMsgToModbusDiscrete protocan.o(.text.PROTOCAN_ModbusProcessing) refers to protocan.o(.text.ProtoCanMsgToModbusHolding) for ProtoCanMsgToModbusHolding @@ -174,21 +169,8 @@ Section Cross References protocan.o(.text.CanRequestError) refers to protocan.o(.bss._HCAN) for _HCAN protocan.o(.text.CanRequestError) refers to stm32f1xx_hal_can.o(.text.HAL_CAN_AddTxMessage) for HAL_CAN_AddTxMessage protocan.o(.ARM.exidx.text.CanRequestError) refers to protocan.o(.text.CanRequestError) for [Anonymous Symbol] - protocan.o(.text.ProtoCanMsgToAnalogUniversal) refers to protocan.o(.bss._HCAN) for _HCAN - protocan.o(.text.ProtoCanMsgToAnalogUniversal) refers to stm32f1xx_hal_can.o(.text.HAL_CAN_AddTxMessage) for HAL_CAN_AddTxMessage - protocan.o(.ARM.exidx.text.ProtoCanMsgToAnalogUniversal) refers to protocan.o(.text.ProtoCanMsgToAnalogUniversal) for [Anonymous Symbol] - protocan.o(.text.ProtoCanMsgToAnalogUSTAVKI) refers to protocan.o(.bss._HCAN) for _HCAN - protocan.o(.text.ProtoCanMsgToAnalogUSTAVKI) refers to stm32f1xx_hal_can.o(.text.HAL_CAN_AddTxMessage) for HAL_CAN_AddTxMessage - protocan.o(.ARM.exidx.text.ProtoCanMsgToAnalogUSTAVKI) refers to protocan.o(.text.ProtoCanMsgToAnalogUSTAVKI) for [Anonymous Symbol] - protocan.o(.text.ProtoCanMsgToAnalogUSens) refers to protocan.o(.bss._HCAN) for _HCAN - protocan.o(.text.ProtoCanMsgToAnalogUSens) refers to stm32f1xx_hal_can.o(.text.HAL_CAN_AddTxMessage) for HAL_CAN_AddTxMessage - protocan.o(.ARM.exidx.text.ProtoCanMsgToAnalogUSens) refers to protocan.o(.text.ProtoCanMsgToAnalogUSens) for [Anonymous Symbol] - protocan.o(.text.ProtoCanMsgToAnalogISens) refers to protocan.o(.bss._HCAN) for _HCAN - protocan.o(.text.ProtoCanMsgToAnalogISens) refers to stm32f1xx_hal_can.o(.text.HAL_CAN_AddTxMessage) for HAL_CAN_AddTxMessage - protocan.o(.ARM.exidx.text.ProtoCanMsgToAnalogISens) refers to protocan.o(.text.ProtoCanMsgToAnalogISens) for [Anonymous Symbol] - protocan.o(.text.ProtoCanMsgToAnalogTSens) refers to protocan.o(.bss._HCAN) for _HCAN - protocan.o(.text.ProtoCanMsgToAnalogTSens) refers to stm32f1xx_hal_can.o(.text.HAL_CAN_AddTxMessage) for HAL_CAN_AddTxMessage - protocan.o(.ARM.exidx.text.ProtoCanMsgToAnalogTSens) refers to protocan.o(.text.ProtoCanMsgToAnalogTSens) for [Anonymous Symbol] + protocan.o(.text.PROTOCAN_SEND) refers to protocan.o(.text.PROTOCAN_SEND_GENERAL_ADDRESS_SPACE) for PROTOCAN_SEND_GENERAL_ADDRESS_SPACE + protocan.o(.ARM.exidx.text.PROTOCAN_SEND) refers to protocan.o(.text.PROTOCAN_SEND) for [Anonymous Symbol] protocan.o(.text.ProtoCanMsgToBroadcastStatus) refers to protocan.o(.bss._HRTC) for _HRTC protocan.o(.text.ProtoCanMsgToBroadcastStatus) refers to stm32f1xx_hal_rtc.o(.text.HAL_RTC_GetTime) for HAL_RTC_GetTime protocan.o(.text.ProtoCanMsgToBroadcastStatus) refers to stm32f1xx_hal_rtc.o(.text.HAL_RTC_GetDate) for HAL_RTC_GetDate @@ -218,6 +200,24 @@ Section Cross References protocan.o(.ARM.exidx.text.ProtoCanMsgToDiscreteReset) refers to protocan.o(.text.ProtoCanMsgToDiscreteReset) for [Anonymous Symbol] protocan.o(.ARM.exidx.text.ProtoCanMsgToDiscreteChangeMode) refers to protocan.o(.text.ProtoCanMsgToDiscreteChangeMode) for [Anonymous Symbol] protocan.o(.ARM.exidx.text.ProtoCanMsgToDiscreteRequestListOfParameters) refers to protocan.o(.text.ProtoCanMsgToDiscreteRequestListOfParameters) for [Anonymous Symbol] + protocan.o(.text.ProtoCanMsgToAnalogUniversal) refers to protocan.o(.bss._HCAN) for _HCAN + protocan.o(.text.ProtoCanMsgToAnalogUniversal) refers to stm32f1xx_hal_can.o(.text.HAL_CAN_AddTxMessage) for HAL_CAN_AddTxMessage + protocan.o(.ARM.exidx.text.ProtoCanMsgToAnalogUniversal) refers to protocan.o(.text.ProtoCanMsgToAnalogUniversal) for [Anonymous Symbol] + protocan.o(.text.ProtoCanMsgToAnalogSettings) refers to protocan.o(.bss._HCAN) for _HCAN + protocan.o(.text.ProtoCanMsgToAnalogSettings) refers to stm32f1xx_hal_can.o(.text.HAL_CAN_AddTxMessage) for HAL_CAN_AddTxMessage + protocan.o(.ARM.exidx.text.ProtoCanMsgToAnalogSettings) refers to protocan.o(.text.ProtoCanMsgToAnalogSettings) for [Anonymous Symbol] + protocan.o(.text.ProtoCanMsgToAnalogUSens) refers to protocan.o(.bss._HCAN) for _HCAN + protocan.o(.text.ProtoCanMsgToAnalogUSens) refers to stm32f1xx_hal_can.o(.text.HAL_CAN_AddTxMessage) for HAL_CAN_AddTxMessage + protocan.o(.ARM.exidx.text.ProtoCanMsgToAnalogUSens) refers to protocan.o(.text.ProtoCanMsgToAnalogUSens) for [Anonymous Symbol] + protocan.o(.text.ProtoCanMsgToAnalogISens) refers to protocan.o(.bss._HCAN) for _HCAN + protocan.o(.text.ProtoCanMsgToAnalogISens) refers to stm32f1xx_hal_can.o(.text.HAL_CAN_AddTxMessage) for HAL_CAN_AddTxMessage + protocan.o(.ARM.exidx.text.ProtoCanMsgToAnalogISens) refers to protocan.o(.text.ProtoCanMsgToAnalogISens) for [Anonymous Symbol] + protocan.o(.text.ProtoCanMsgToAnalogTSens) refers to protocan.o(.bss._HCAN) for _HCAN + protocan.o(.text.ProtoCanMsgToAnalogTSens) refers to stm32f1xx_hal_can.o(.text.HAL_CAN_AddTxMessage) for HAL_CAN_AddTxMessage + protocan.o(.ARM.exidx.text.ProtoCanMsgToAnalogTSens) refers to protocan.o(.text.ProtoCanMsgToAnalogTSens) for [Anonymous Symbol] + protocan.o(.text.PROTOCAN_SEND_GENERAL_ADDRESS_SPACE) refers to protocan.o(.bss._HCAN) for _HCAN + protocan.o(.text.PROTOCAN_SEND_GENERAL_ADDRESS_SPACE) refers to stm32f1xx_hal_can.o(.text.HAL_CAN_AddTxMessage) for HAL_CAN_AddTxMessage + protocan.o(.ARM.exidx.text.PROTOCAN_SEND_GENERAL_ADDRESS_SPACE) refers to protocan.o(.text.PROTOCAN_SEND_GENERAL_ADDRESS_SPACE) for [Anonymous Symbol] protocan.o(.text.ProtoCanMsgToModbusCoil) refers to protocan.o(.bss._HCAN) for _HCAN protocan.o(.text.ProtoCanMsgToModbusCoil) refers to stm32f1xx_hal_can.o(.text.HAL_CAN_AddTxMessage) for HAL_CAN_AddTxMessage protocan.o(.ARM.exidx.text.ProtoCanMsgToModbusCoil) refers to protocan.o(.text.ProtoCanMsgToModbusCoil) for [Anonymous Symbol] @@ -244,10 +244,10 @@ Section Cross References main.o(.text.main) refers to rtc.o(.text.MX_RTC_Init) for MX_RTC_Init main.o(.text.main) refers to tim.o(.text.MX_TIM4_Init) for MX_TIM4_Init main.o(.text.main) refers to can.o(.bss.hcan) for hcan - main.o(.text.main) refers to stm32f1xx_hal_can.o(.text.HAL_CAN_Start) for HAL_CAN_Start main.o(.text.main) refers to rtc.o(.bss.hrtc) for hrtc main.o(.text.main) refers to tim.o(.bss.htim4) for htim4 main.o(.text.main) refers to protocan.o(.text.PROTOCAN_INIT) for PROTOCAN_INIT + main.o(.text.main) refers to stm32f1xx_hal_can.o(.text.HAL_CAN_Start) for HAL_CAN_Start main.o(.text.main) refers to stm32f1xx_hal_can.o(.text.HAL_CAN_ActivateNotification) for HAL_CAN_ActivateNotification main.o(.text.main) refers to protocan.o(.text.PROTOCAN_LOOP) for PROTOCAN_LOOP main.o(.ARM.exidx.text.main) refers to main.o(.text.main) for [Anonymous Symbol] @@ -1290,14 +1290,10 @@ Removing Unused input sections from the image. Removing protocan.o(.ARM.exidx.text.PROTOCAN_AnalogProcessing), (8 bytes). Removing protocan.o(.ARM.exidx.text.PROTOCAN_BroadcastProcessing), (8 bytes). Removing protocan.o(.ARM.exidx.text.PROTOCAN_DiscreticProcessing), (8 bytes). - Removing protocan.o(.ARM.exidx.text.PROTOCAN_GeneralAddressSpace_Answer), (8 bytes). + Removing protocan.o(.ARM.exidx.text.ProtoCanMsgToGeneralAddressSpace), (8 bytes). Removing protocan.o(.ARM.exidx.text.PROTOCAN_ModbusProcessing), (8 bytes). Removing protocan.o(.ARM.exidx.text.CanRequestError), (8 bytes). - Removing protocan.o(.ARM.exidx.text.ProtoCanMsgToAnalogUniversal), (8 bytes). - Removing protocan.o(.ARM.exidx.text.ProtoCanMsgToAnalogUSTAVKI), (8 bytes). - Removing protocan.o(.ARM.exidx.text.ProtoCanMsgToAnalogUSens), (8 bytes). - Removing protocan.o(.ARM.exidx.text.ProtoCanMsgToAnalogISens), (8 bytes). - Removing protocan.o(.ARM.exidx.text.ProtoCanMsgToAnalogTSens), (8 bytes). + Removing protocan.o(.ARM.exidx.text.PROTOCAN_SEND), (8 bytes). Removing protocan.o(.ARM.exidx.text.ProtoCanMsgToBroadcastStatus), (8 bytes). Removing protocan.o(.ARM.exidx.text.ProtoCanMsgToBroadcastOnOff), (8 bytes). Removing protocan.o(.ARM.exidx.text.ProtoCanMsgToBroadcastRestart), (8 bytes). @@ -1311,12 +1307,19 @@ Removing Unused input sections from the image. Removing protocan.o(.ARM.exidx.text.ProtoCanMsgToDiscreteReset), (8 bytes). Removing protocan.o(.ARM.exidx.text.ProtoCanMsgToDiscreteChangeMode), (8 bytes). Removing protocan.o(.ARM.exidx.text.ProtoCanMsgToDiscreteRequestListOfParameters), (8 bytes). + Removing protocan.o(.ARM.exidx.text.ProtoCanMsgToAnalogUniversal), (8 bytes). + Removing protocan.o(.ARM.exidx.text.ProtoCanMsgToAnalogSettings), (8 bytes). + Removing protocan.o(.ARM.exidx.text.ProtoCanMsgToAnalogUSens), (8 bytes). + Removing protocan.o(.ARM.exidx.text.ProtoCanMsgToAnalogISens), (8 bytes). + Removing protocan.o(.ARM.exidx.text.ProtoCanMsgToAnalogTSens), (8 bytes). + Removing protocan.o(.ARM.exidx.text.PROTOCAN_SEND_GENERAL_ADDRESS_SPACE), (8 bytes). Removing protocan.o(.ARM.exidx.text.ProtoCanMsgToModbusCoil), (8 bytes). Removing protocan.o(.ARM.exidx.text.ProtoCanMsgToModbusDiscrete), (8 bytes). Removing protocan.o(.ARM.exidx.text.ProtoCanMsgToModbusHolding), (8 bytes). Removing protocan.o(.ARM.exidx.text.ProtoCanMsgToModbusInput), (8 bytes). Removing protocan.o(.ARM.exidx.text.TakeRxMsgToBuffer), (8 bytes). Removing protocan.o(.ARM.exidx.text.PROTOCAN_CONFIG_FILTER), (8 bytes). + Removing protocan.o(.rodata..L__const.PROTOCAN_LOOP.massiv), (10 bytes). Removing protocan.o(.bss.CurrentDevice), (16 bytes). Removing main.o(.text), (0 bytes). Removing main.o(.ARM.exidx.text.main), (8 bytes). @@ -2068,7 +2071,7 @@ Removing Unused input sections from the image. Removing system_stm32f1xx.o(.text.SystemCoreClockUpdate), (290 bytes). Removing system_stm32f1xx.o(.ARM.exidx.text.SystemCoreClockUpdate), (8 bytes). -813 unused section(s) (total 51402 bytes) removed from the image. +816 unused section(s) (total 51428 bytes) removed from the image. ============================================================================== @@ -2244,211 +2247,213 @@ Image Symbol Table [Anonymous Symbol] 0x08000478 Section 0 canerrorbox.o(.text.CanErrorCallbackTXTERR1) [Anonymous Symbol] 0x08000488 Section 0 canerrorbox.o(.text.CanErrorCallbackTXTERR2) [Anonymous Symbol] 0x08000498 Section 0 protocan.o(.text.CanRequestError) - [Anonymous Symbol] 0x08000514 Section 0 stm32f1xx_it.o(.text.DebugMon_Handler) - [Anonymous Symbol] 0x08000518 Section 0 main.o(.text.Error_Handler) - [Anonymous Symbol] 0x08000528 Section 0 stm32f1xx_hal_can.o(.text.HAL_CAN_ActivateNotification) - [Anonymous Symbol] 0x0800057c Section 0 stm32f1xx_hal_can.o(.text.HAL_CAN_AddTxMessage) - [Anonymous Symbol] 0x080006d4 Section 0 stm32f1xx_hal_can.o(.text.HAL_CAN_ConfigFilter) - [Anonymous Symbol] 0x08000850 Section 0 canerrorbox.o(.text.HAL_CAN_ErrorCallback) - [Anonymous Symbol] 0x080009f0 Section 0 stm32f1xx_hal_can.o(.text.HAL_CAN_GetRxMessage) - [Anonymous Symbol] 0x08000c04 Section 0 stm32f1xx_hal_can.o(.text.HAL_CAN_IRQHandler) - [Anonymous Symbol] 0x08000ff8 Section 0 stm32f1xx_hal_can.o(.text.HAL_CAN_Init) - [Anonymous Symbol] 0x0800128c Section 0 can.o(.text.HAL_CAN_MspDeInit) - [Anonymous Symbol] 0x080012e4 Section 0 can.o(.text.HAL_CAN_MspInit) - [Anonymous Symbol] 0x080013c8 Section 0 stm32f1xx_hal_can.o(.text.HAL_CAN_RegisterCallback) - [Anonymous Symbol] 0x08001548 Section 0 stm32f1xx_hal_can.o(.text.HAL_CAN_RxFifo0FullCallback) - [Anonymous Symbol] 0x08001550 Section 0 stm32f1xx_hal_can.o(.text.HAL_CAN_RxFifo0MsgPendingCallback) - [Anonymous Symbol] 0x08001558 Section 0 stm32f1xx_hal_can.o(.text.HAL_CAN_RxFifo1FullCallback) - [Anonymous Symbol] 0x08001560 Section 0 stm32f1xx_hal_can.o(.text.HAL_CAN_RxFifo1MsgPendingCallback) - [Anonymous Symbol] 0x08001568 Section 0 stm32f1xx_hal_can.o(.text.HAL_CAN_SleepCallback) - [Anonymous Symbol] 0x08001570 Section 0 stm32f1xx_hal_can.o(.text.HAL_CAN_Start) - [Anonymous Symbol] 0x080015fc Section 0 stm32f1xx_hal_can.o(.text.HAL_CAN_TxMailbox0AbortCallback) - [Anonymous Symbol] 0x08001604 Section 0 stm32f1xx_hal_can.o(.text.HAL_CAN_TxMailbox0CompleteCallback) - [Anonymous Symbol] 0x0800160c Section 0 stm32f1xx_hal_can.o(.text.HAL_CAN_TxMailbox1AbortCallback) - [Anonymous Symbol] 0x08001614 Section 0 stm32f1xx_hal_can.o(.text.HAL_CAN_TxMailbox1CompleteCallback) - [Anonymous Symbol] 0x0800161c Section 0 stm32f1xx_hal_can.o(.text.HAL_CAN_TxMailbox2AbortCallback) - [Anonymous Symbol] 0x08001624 Section 0 stm32f1xx_hal_can.o(.text.HAL_CAN_TxMailbox2CompleteCallback) - [Anonymous Symbol] 0x0800162c Section 0 stm32f1xx_hal_can.o(.text.HAL_CAN_UnRegisterCallback) - [Anonymous Symbol] 0x080017f4 Section 0 stm32f1xx_hal_can.o(.text.HAL_CAN_WakeUpFromRxMsgCallback) - [Anonymous Symbol] 0x080017fc Section 0 stm32f1xx_hal_gpio.o(.text.HAL_GPIO_DeInit) - [Anonymous Symbol] 0x0800199c Section 0 stm32f1xx_hal_gpio.o(.text.HAL_GPIO_Init) - [Anonymous Symbol] 0x08001cbc Section 0 stm32f1xx_hal.o(.text.HAL_GetTick) - [Anonymous Symbol] 0x08001cc8 Section 0 stm32f1xx_hal.o(.text.HAL_IncTick) - [Anonymous Symbol] 0x08001ce4 Section 0 stm32f1xx_hal.o(.text.HAL_Init) - [Anonymous Symbol] 0x08001d0c Section 0 stm32f1xx_hal.o(.text.HAL_InitTick) - [Anonymous Symbol] 0x08001d7c Section 0 stm32f1xx_hal_msp.o(.text.HAL_MspInit) - [Anonymous Symbol] 0x08001dc0 Section 0 stm32f1xx_hal_cortex.o(.text.HAL_NVIC_DisableIRQ) - [Anonymous Symbol] 0x08001dd4 Section 0 stm32f1xx_hal_cortex.o(.text.HAL_NVIC_EnableIRQ) - [Anonymous Symbol] 0x08001de8 Section 0 stm32f1xx_hal_cortex.o(.text.HAL_NVIC_SetPriority) - [Anonymous Symbol] 0x08001e1c Section 0 stm32f1xx_hal_cortex.o(.text.HAL_NVIC_SetPriorityGrouping) - [Anonymous Symbol] 0x08001e2c Section 0 stm32f1xx_hal_pwr.o(.text.HAL_PWR_EnableBkUpAccess) - [Anonymous Symbol] 0x08001e38 Section 0 stm32f1xx_hal_rcc_ex.o(.text.HAL_RCCEx_GetPeriphCLKFreq) - [Anonymous Symbol] 0x08001fd0 Section 0 stm32f1xx_hal_rcc_ex.o(.text.HAL_RCCEx_PeriphCLKConfig) - [Anonymous Symbol] 0x08002198 Section 0 stm32f1xx_hal_rcc.o(.text.HAL_RCC_ClockConfig) - [Anonymous Symbol] 0x080023f0 Section 0 stm32f1xx_hal_rcc.o(.text.HAL_RCC_GetHCLKFreq) - [Anonymous Symbol] 0x080023fc Section 0 stm32f1xx_hal_rcc.o(.text.HAL_RCC_GetPCLK2Freq) - [Anonymous Symbol] 0x08002420 Section 0 stm32f1xx_hal_rcc.o(.text.HAL_RCC_GetSysClockFreq) - [Anonymous Symbol] 0x080024dc Section 0 stm32f1xx_hal_rcc.o(.text.HAL_RCC_MCOConfig) - [Anonymous Symbol] 0x08002544 Section 0 stm32f1xx_hal_rcc.o(.text.HAL_RCC_OscConfig) - [Anonymous Symbol] 0x08002bc0 Section 0 stm32f1xx_hal_rtc.o(.text.HAL_RTC_GetDate) - [Anonymous Symbol] 0x08002c5c Section 0 stm32f1xx_hal_rtc.o(.text.HAL_RTC_GetTime) - [Anonymous Symbol] 0x08002e10 Section 0 stm32f1xx_hal_rtc.o(.text.HAL_RTC_Init) - [Anonymous Symbol] 0x08002f3c Section 0 rtc.o(.text.HAL_RTC_MspInit) - [Anonymous Symbol] 0x08002f88 Section 0 stm32f1xx_hal_rtc.o(.text.HAL_RTC_SetDate) - [Anonymous Symbol] 0x08003108 Section 0 stm32f1xx_hal_rtc.o(.text.HAL_RTC_SetTime) - [Anonymous Symbol] 0x0800324c Section 0 stm32f1xx_hal_rtc.o(.text.HAL_RTC_WaitForSynchro) - [Anonymous Symbol] 0x080032b0 Section 0 stm32f1xx_hal_cortex.o(.text.HAL_SYSTICK_Config) - [Anonymous Symbol] 0x080032c0 Section 0 stm32f1xx_hal_tim_ex.o(.text.HAL_TIMEx_BreakCallback) - [Anonymous Symbol] 0x080032c8 Section 0 stm32f1xx_hal_tim_ex.o(.text.HAL_TIMEx_CommutCallback) - [Anonymous Symbol] 0x080032d0 Section 0 stm32f1xx_hal_tim_ex.o(.text.HAL_TIMEx_CommutHalfCpltCallback) - [Anonymous Symbol] 0x080032d8 Section 0 stm32f1xx_hal_tim_ex.o(.text.HAL_TIMEx_HallSensor_MspDeInit) - [Anonymous Symbol] 0x080032e0 Section 0 stm32f1xx_hal_tim_ex.o(.text.HAL_TIMEx_HallSensor_MspInit) - [Anonymous Symbol] 0x080032e8 Section 0 stm32f1xx_hal_tim_ex.o(.text.HAL_TIMEx_MasterConfigSynchronization) - [Anonymous Symbol] 0x080033c4 Section 0 stm32f1xx_hal_tim.o(.text.HAL_TIM_Base_Init) - [Anonymous Symbol] 0x0800347c Section 0 tim.o(.text.HAL_TIM_Base_MspDeInit) - [Anonymous Symbol] 0x080034b0 Section 0 tim.o(.text.HAL_TIM_Base_MspInit) - [Anonymous Symbol] 0x08003500 Section 0 stm32f1xx_hal_tim.o(.text.HAL_TIM_ConfigClockSource) - [Anonymous Symbol] 0x08003684 Section 0 stm32f1xx_hal_tim.o(.text.HAL_TIM_Encoder_MspDeInit) - [Anonymous Symbol] 0x0800368c Section 0 stm32f1xx_hal_tim.o(.text.HAL_TIM_Encoder_MspInit) - [Anonymous Symbol] 0x08003694 Section 0 stm32f1xx_hal_tim.o(.text.HAL_TIM_ErrorCallback) - [Anonymous Symbol] 0x0800369c Section 0 stm32f1xx_hal_tim.o(.text.HAL_TIM_IC_CaptureCallback) - [Anonymous Symbol] 0x080036a4 Section 0 stm32f1xx_hal_tim.o(.text.HAL_TIM_IC_CaptureHalfCpltCallback) - [Anonymous Symbol] 0x080036ac Section 0 stm32f1xx_hal_tim.o(.text.HAL_TIM_IC_MspDeInit) - [Anonymous Symbol] 0x080036b4 Section 0 stm32f1xx_hal_tim.o(.text.HAL_TIM_IC_MspInit) - [Anonymous Symbol] 0x080036bc Section 0 stm32f1xx_hal_tim.o(.text.HAL_TIM_IRQHandler) - [Anonymous Symbol] 0x08003958 Section 0 stm32f1xx_hal_tim.o(.text.HAL_TIM_OC_DelayElapsedCallback) - [Anonymous Symbol] 0x08003960 Section 0 stm32f1xx_hal_tim.o(.text.HAL_TIM_OC_MspDeInit) - [Anonymous Symbol] 0x08003968 Section 0 stm32f1xx_hal_tim.o(.text.HAL_TIM_OC_MspInit) - [Anonymous Symbol] 0x08003970 Section 0 stm32f1xx_hal_tim.o(.text.HAL_TIM_OnePulse_MspDeInit) - [Anonymous Symbol] 0x08003978 Section 0 stm32f1xx_hal_tim.o(.text.HAL_TIM_OnePulse_MspInit) - [Anonymous Symbol] 0x08003980 Section 0 stm32f1xx_hal_tim.o(.text.HAL_TIM_PWM_MspDeInit) - [Anonymous Symbol] 0x08003988 Section 0 stm32f1xx_hal_tim.o(.text.HAL_TIM_PWM_MspInit) - [Anonymous Symbol] 0x08003990 Section 0 stm32f1xx_hal_tim.o(.text.HAL_TIM_PWM_PulseFinishedCallback) - [Anonymous Symbol] 0x08003998 Section 0 stm32f1xx_hal_tim.o(.text.HAL_TIM_PWM_PulseFinishedHalfCpltCallback) - [Anonymous Symbol] 0x080039a0 Section 0 stm32f1xx_hal_tim.o(.text.HAL_TIM_PeriodElapsedCallback) - [Anonymous Symbol] 0x080039a8 Section 0 stm32f1xx_hal_tim.o(.text.HAL_TIM_PeriodElapsedHalfCpltCallback) - [Anonymous Symbol] 0x080039b0 Section 0 stm32f1xx_hal_tim.o(.text.HAL_TIM_RegisterCallback) - [Anonymous Symbol] 0x08003c54 Section 0 stm32f1xx_hal_tim.o(.text.HAL_TIM_TriggerCallback) - [Anonymous Symbol] 0x08003c5c Section 0 stm32f1xx_hal_tim.o(.text.HAL_TIM_TriggerHalfCpltCallback) - [Anonymous Symbol] 0x08003c64 Section 0 stm32f1xx_hal_tim.o(.text.HAL_TIM_UnRegisterCallback) - [Anonymous Symbol] 0x08003fe8 Section 0 stm32f1xx_it.o(.text.HardFault_Handler) - [Anonymous Symbol] 0x08003fec Section 0 protocan.o(.text.IsLeapYear) - [Anonymous Symbol] 0x0800407c Section 0 can.o(.text.MX_CAN_Init) - [Anonymous Symbol] 0x080040cc Section 0 gpio.o(.text.MX_GPIO_Init) - [Anonymous Symbol] 0x08004118 Section 0 rtc.o(.text.MX_RTC_Init) - [Anonymous Symbol] 0x080041ac Section 0 tim.o(.text.MX_TIM4_Init) - [Anonymous Symbol] 0x08004234 Section 0 stm32f1xx_it.o(.text.MemManage_Handler) - [Anonymous Symbol] 0x08004238 Section 0 stm32f1xx_it.o(.text.NMI_Handler) - NVIC_EncodePriority 0x0800423d Thumb Code 108 stm32f1xx_hal_cortex.o(.text.NVIC_EncodePriority) - [Anonymous Symbol] 0x0800423c Section 0 stm32f1xx_hal_cortex.o(.text.NVIC_EncodePriority) - [Anonymous Symbol] 0x080042a8 Section 0 protocan.o(.text.PROTOCAN_AnalogProcessing) - [Anonymous Symbol] 0x08004390 Section 0 protocan.o(.text.PROTOCAN_BroadcastProcessing) - [Anonymous Symbol] 0x08004454 Section 0 protocan.o(.text.PROTOCAN_CONFIG_FILTER) - [Anonymous Symbol] 0x080044b8 Section 0 protocan.o(.text.PROTOCAN_DEINIT) - [Anonymous Symbol] 0x08004500 Section 0 protocan.o(.text.PROTOCAN_DiscreticProcessing) - [Anonymous Symbol] 0x08004614 Section 0 protocan.o(.text.PROTOCAN_FILTERS) - [Anonymous Symbol] 0x08004668 Section 0 protocan.o(.text.PROTOCAN_GeneralAddressSpace_Answer) - [Anonymous Symbol] 0x08004740 Section 0 protocan.o(.text.PROTOCAN_INIT) - [Anonymous Symbol] 0x08004848 Section 0 protocan.o(.text.PROTOCAN_LOOP) - [Anonymous Symbol] 0x08004b28 Section 0 protocan.o(.text.PROTOCAN_ModbusProcessing) - [Anonymous Symbol] 0x08004bec Section 0 protocan.o(.text.PROTOCAN_RTC_SYNC) - [Anonymous Symbol] 0x08004c90 Section 0 stm32f1xx_it.o(.text.PendSV_Handler) - [Anonymous Symbol] 0x08004c94 Section 0 protocan.o(.text.ProtoCanMsgToAnalogISens) - [Anonymous Symbol] 0x08004da0 Section 0 protocan.o(.text.ProtoCanMsgToAnalogTSens) - [Anonymous Symbol] 0x08004eac Section 0 protocan.o(.text.ProtoCanMsgToAnalogUSTAVKI) - [Anonymous Symbol] 0x08004f34 Section 0 protocan.o(.text.ProtoCanMsgToAnalogUSens) - [Anonymous Symbol] 0x08005040 Section 0 protocan.o(.text.ProtoCanMsgToAnalogUniversal) - [Anonymous Symbol] 0x080050c0 Section 0 protocan.o(.text.ProtoCanMsgToBroadcastOnOff) - [Anonymous Symbol] 0x080050f0 Section 0 protocan.o(.text.ProtoCanMsgToBroadcastRestart) - [Anonymous Symbol] 0x08005184 Section 0 protocan.o(.text.ProtoCanMsgToBroadcastRtcSetup) - [Anonymous Symbol] 0x0800522c Section 0 protocan.o(.text.ProtoCanMsgToBroadcastStatus) - [Anonymous Symbol] 0x08005308 Section 0 protocan.o(.text.ProtoCanMsgToDiscreteAccident) - [Anonymous Symbol] 0x08005320 Section 0 protocan.o(.text.ProtoCanMsgToDiscreteChangeMode) - [Anonymous Symbol] 0x08005338 Section 0 protocan.o(.text.ProtoCanMsgToDiscreteControlSignals) - [Anonymous Symbol] 0x08005350 Section 0 protocan.o(.text.ProtoCanMsgToDiscreteFlags) - [Anonymous Symbol] 0x08005368 Section 0 protocan.o(.text.ProtoCanMsgToDiscreteRequestListOfParameters) - [Anonymous Symbol] 0x08005380 Section 0 protocan.o(.text.ProtoCanMsgToDiscreteReset) - [Anonymous Symbol] 0x08005398 Section 0 protocan.o(.text.ProtoCanMsgToDiscreteWarning) - [Anonymous Symbol] 0x080053b0 Section 0 protocan.o(.text.ProtoCanMsgToModbusCoil) - [Anonymous Symbol] 0x0800544c Section 0 protocan.o(.text.ProtoCanMsgToModbusDiscrete) - [Anonymous Symbol] 0x080054e8 Section 0 protocan.o(.text.ProtoCanMsgToModbusHolding) - [Anonymous Symbol] 0x08005584 Section 0 protocan.o(.text.ProtoCanMsgToModbusInput) - [Anonymous Symbol] 0x08005620 Section 0 protocan.o(.text.ProtoCanPulseCallback) - [Anonymous Symbol] 0x080056f4 Section 0 protocan.o(.text.ProtoCanRxFifo0MsgPendingCallback) - RCC_Delay 0x080057cd Thumb Code 58 stm32f1xx_hal_rcc.o(.text.RCC_Delay) - [Anonymous Symbol] 0x080057cc Section 0 stm32f1xx_hal_rcc.o(.text.RCC_Delay) - RTC_Bcd2ToByte 0x08005809 Thumb Code 42 stm32f1xx_hal_rtc.o(.text.RTC_Bcd2ToByte) - [Anonymous Symbol] 0x08005808 Section 0 stm32f1xx_hal_rtc.o(.text.RTC_Bcd2ToByte) - RTC_ByteToBcd2 0x08005835 Thumb Code 58 stm32f1xx_hal_rtc.o(.text.RTC_ByteToBcd2) - [Anonymous Symbol] 0x08005834 Section 0 stm32f1xx_hal_rtc.o(.text.RTC_ByteToBcd2) - RTC_DateUpdate 0x08005871 Thumb Code 370 stm32f1xx_hal_rtc.o(.text.RTC_DateUpdate) - [Anonymous Symbol] 0x08005870 Section 0 stm32f1xx_hal_rtc.o(.text.RTC_DateUpdate) - RTC_EnterInitMode 0x080059e5 Thumb Code 86 stm32f1xx_hal_rtc.o(.text.RTC_EnterInitMode) - [Anonymous Symbol] 0x080059e4 Section 0 stm32f1xx_hal_rtc.o(.text.RTC_EnterInitMode) - RTC_ExitInitMode 0x08005a3d Thumb Code 86 stm32f1xx_hal_rtc.o(.text.RTC_ExitInitMode) - [Anonymous Symbol] 0x08005a3c Section 0 stm32f1xx_hal_rtc.o(.text.RTC_ExitInitMode) - RTC_IsLeapYear 0x08005a95 Thumb Code 120 stm32f1xx_hal_rtc.o(.text.RTC_IsLeapYear) - [Anonymous Symbol] 0x08005a94 Section 0 stm32f1xx_hal_rtc.o(.text.RTC_IsLeapYear) - RTC_ReadAlarmCounter 0x08005b0d Thumb Code 50 stm32f1xx_hal_rtc.o(.text.RTC_ReadAlarmCounter) - [Anonymous Symbol] 0x08005b0c Section 0 stm32f1xx_hal_rtc.o(.text.RTC_ReadAlarmCounter) - RTC_ReadTimeCounter 0x08005b41 Thumb Code 106 stm32f1xx_hal_rtc.o(.text.RTC_ReadTimeCounter) - [Anonymous Symbol] 0x08005b40 Section 0 stm32f1xx_hal_rtc.o(.text.RTC_ReadTimeCounter) - RTC_WeekDayNum 0x08005bad Thumb Code 226 stm32f1xx_hal_rtc.o(.text.RTC_WeekDayNum) - [Anonymous Symbol] 0x08005bac Section 0 stm32f1xx_hal_rtc.o(.text.RTC_WeekDayNum) - RTC_WriteAlarmCounter 0x08005c91 Thumb Code 80 stm32f1xx_hal_rtc.o(.text.RTC_WriteAlarmCounter) - [Anonymous Symbol] 0x08005c90 Section 0 stm32f1xx_hal_rtc.o(.text.RTC_WriteAlarmCounter) - RTC_WriteTimeCounter 0x08005ce1 Thumb Code 80 stm32f1xx_hal_rtc.o(.text.RTC_WriteTimeCounter) - [Anonymous Symbol] 0x08005ce0 Section 0 stm32f1xx_hal_rtc.o(.text.RTC_WriteTimeCounter) - [Anonymous Symbol] 0x08005d30 Section 0 stm32f1xx_it.o(.text.SVC_Handler) - SysTick_Config 0x08005d35 Thumb Code 82 stm32f1xx_hal_cortex.o(.text.SysTick_Config) - [Anonymous Symbol] 0x08005d34 Section 0 stm32f1xx_hal_cortex.o(.text.SysTick_Config) - [Anonymous Symbol] 0x08005d88 Section 0 stm32f1xx_it.o(.text.SysTick_Handler) - [Anonymous Symbol] 0x08005d90 Section 0 main.o(.text.SystemClock_Config) - [Anonymous Symbol] 0x08005e2c Section 0 system_stm32f1xx.o(.text.SystemInit) - [Anonymous Symbol] 0x08005e30 Section 0 stm32f1xx_it.o(.text.TIM4_IRQHandler) - [Anonymous Symbol] 0x08005e40 Section 0 stm32f1xx_hal_tim.o(.text.TIM_Base_SetConfig) - [Anonymous Symbol] 0x08005f30 Section 0 stm32f1xx_hal_tim.o(.text.TIM_ETR_SetConfig) - TIM_ITRx_SetConfig 0x08005f65 Thumb Code 42 stm32f1xx_hal_tim.o(.text.TIM_ITRx_SetConfig) - [Anonymous Symbol] 0x08005f64 Section 0 stm32f1xx_hal_tim.o(.text.TIM_ITRx_SetConfig) - [Anonymous Symbol] 0x08005f90 Section 0 stm32f1xx_hal_tim.o(.text.TIM_ResetCallback) - TIM_TI1_ConfigInputStage 0x08006051 Thumb Code 80 stm32f1xx_hal_tim.o(.text.TIM_TI1_ConfigInputStage) - [Anonymous Symbol] 0x08006050 Section 0 stm32f1xx_hal_tim.o(.text.TIM_TI1_ConfigInputStage) - TIM_TI2_ConfigInputStage 0x080060a1 Thumb Code 82 stm32f1xx_hal_tim.o(.text.TIM_TI2_ConfigInputStage) - [Anonymous Symbol] 0x080060a0 Section 0 stm32f1xx_hal_tim.o(.text.TIM_TI2_ConfigInputStage) - [Anonymous Symbol] 0x080060f4 Section 0 protocan.o(.text.TakeRxMsgToBuffer) - [Anonymous Symbol] 0x080061c4 Section 0 stm32f1xx_it.o(.text.USB_HP_CAN1_TX_IRQHandler) - [Anonymous Symbol] 0x080061d4 Section 0 stm32f1xx_it.o(.text.USB_LP_CAN1_RX0_IRQHandler) - [Anonymous Symbol] 0x080061e4 Section 0 stm32f1xx_it.o(.text.UsageFault_Handler) - __NVIC_DisableIRQ 0x080061e9 Thumb Code 56 stm32f1xx_hal_cortex.o(.text.__NVIC_DisableIRQ) - [Anonymous Symbol] 0x080061e8 Section 0 stm32f1xx_hal_cortex.o(.text.__NVIC_DisableIRQ) - __NVIC_EnableIRQ 0x08006221 Thumb Code 48 stm32f1xx_hal_cortex.o(.text.__NVIC_EnableIRQ) - [Anonymous Symbol] 0x08006220 Section 0 stm32f1xx_hal_cortex.o(.text.__NVIC_EnableIRQ) - __NVIC_GetPriorityGrouping 0x08006251 Thumb Code 16 stm32f1xx_hal_cortex.o(.text.__NVIC_GetPriorityGrouping) - [Anonymous Symbol] 0x08006250 Section 0 stm32f1xx_hal_cortex.o(.text.__NVIC_GetPriorityGrouping) - __NVIC_SetPriority 0x08006261 Thumb Code 66 stm32f1xx_hal_cortex.o(.text.__NVIC_SetPriority) - [Anonymous Symbol] 0x08006260 Section 0 stm32f1xx_hal_cortex.o(.text.__NVIC_SetPriority) - __NVIC_SetPriorityGrouping 0x080062a5 Thumb Code 60 stm32f1xx_hal_cortex.o(.text.__NVIC_SetPriorityGrouping) - [Anonymous Symbol] 0x080062a4 Section 0 stm32f1xx_hal_cortex.o(.text.__NVIC_SetPriorityGrouping) - __NVIC_SystemReset 0x080062e1 Thumb Code 38 protocan.o(.text.__NVIC_SystemReset) - [Anonymous Symbol] 0x080062e0 Section 0 protocan.o(.text.__NVIC_SystemReset) - [Anonymous Symbol] 0x08006308 Section 0 main.o(.text.main) - .L__const.ProtoCanMsgToBroadcastRtcSetup.DaysCount_Normal 0x08006370 Data 96 protocan.o(.rodata..L__const.ProtoCanMsgToBroadcastRtcSetup.DaysCount_Normal) - HAL_RCCEx_GetPeriphCLKFreq.aPLLMULFactorTable 0x080063e8 Data 16 stm32f1xx_hal_rcc_ex.o(.rodata.HAL_RCCEx_GetPeriphCLKFreq.aPLLMULFactorTable) - [Anonymous Symbol] 0x080063e8 Section 0 stm32f1xx_hal_rcc_ex.o(.rodata.HAL_RCCEx_GetPeriphCLKFreq.aPLLMULFactorTable) - HAL_RCCEx_GetPeriphCLKFreq.aPredivFactorTable 0x080063f8 Data 2 stm32f1xx_hal_rcc_ex.o(.rodata.HAL_RCCEx_GetPeriphCLKFreq.aPredivFactorTable) - [Anonymous Symbol] 0x080063f8 Section 0 stm32f1xx_hal_rcc_ex.o(.rodata.HAL_RCCEx_GetPeriphCLKFreq.aPredivFactorTable) - HAL_RCC_GetSysClockFreq.aPLLMULFactorTable 0x080063fa Data 16 stm32f1xx_hal_rcc.o(.rodata.HAL_RCC_GetSysClockFreq.aPLLMULFactorTable) - [Anonymous Symbol] 0x080063fa Section 0 stm32f1xx_hal_rcc.o(.rodata.HAL_RCC_GetSysClockFreq.aPLLMULFactorTable) - HAL_RCC_GetSysClockFreq.aPredivFactorTable 0x0800640a Data 2 stm32f1xx_hal_rcc.o(.rodata.HAL_RCC_GetSysClockFreq.aPredivFactorTable) - [Anonymous Symbol] 0x0800640a Section 0 stm32f1xx_hal_rcc.o(.rodata.HAL_RCC_GetSysClockFreq.aPredivFactorTable) - .bss 0x20000028 Section 96 libspace.o(.bss) - ProtoCanPulseCallback.PulseStage 0x200008e8 Data 4 protocan.o(.bss.ProtoCanPulseCallback.PulseStage) - [Anonymous Symbol] 0x200008e8 Section 0 protocan.o(.bss.ProtoCanPulseCallback.PulseStage) - Heap_Mem 0x20001430 Data 512 startup_stm32f103xb.o(HEAP) - HEAP 0x20001430 Section 512 startup_stm32f103xb.o(HEAP) - Stack_Mem 0x20001630 Data 1024 startup_stm32f103xb.o(STACK) - STACK 0x20001630 Section 1024 startup_stm32f103xb.o(STACK) - __initial_sp 0x20001a30 Data 0 startup_stm32f103xb.o(STACK) + [Anonymous Symbol] 0x08000510 Section 0 stm32f1xx_it.o(.text.DebugMon_Handler) + [Anonymous Symbol] 0x08000514 Section 0 main.o(.text.Error_Handler) + [Anonymous Symbol] 0x08000524 Section 0 stm32f1xx_hal_can.o(.text.HAL_CAN_ActivateNotification) + [Anonymous Symbol] 0x08000578 Section 0 stm32f1xx_hal_can.o(.text.HAL_CAN_AddTxMessage) + [Anonymous Symbol] 0x080006d0 Section 0 stm32f1xx_hal_can.o(.text.HAL_CAN_ConfigFilter) + [Anonymous Symbol] 0x0800084c Section 0 canerrorbox.o(.text.HAL_CAN_ErrorCallback) + [Anonymous Symbol] 0x080009ec Section 0 stm32f1xx_hal_can.o(.text.HAL_CAN_GetRxMessage) + [Anonymous Symbol] 0x08000c00 Section 0 stm32f1xx_hal_can.o(.text.HAL_CAN_IRQHandler) + [Anonymous Symbol] 0x08000ff4 Section 0 stm32f1xx_hal_can.o(.text.HAL_CAN_Init) + [Anonymous Symbol] 0x08001288 Section 0 can.o(.text.HAL_CAN_MspDeInit) + [Anonymous Symbol] 0x080012e0 Section 0 can.o(.text.HAL_CAN_MspInit) + [Anonymous Symbol] 0x080013c4 Section 0 stm32f1xx_hal_can.o(.text.HAL_CAN_RegisterCallback) + [Anonymous Symbol] 0x08001544 Section 0 stm32f1xx_hal_can.o(.text.HAL_CAN_RxFifo0FullCallback) + [Anonymous Symbol] 0x0800154c Section 0 stm32f1xx_hal_can.o(.text.HAL_CAN_RxFifo0MsgPendingCallback) + [Anonymous Symbol] 0x08001554 Section 0 stm32f1xx_hal_can.o(.text.HAL_CAN_RxFifo1FullCallback) + [Anonymous Symbol] 0x0800155c Section 0 stm32f1xx_hal_can.o(.text.HAL_CAN_RxFifo1MsgPendingCallback) + [Anonymous Symbol] 0x08001564 Section 0 stm32f1xx_hal_can.o(.text.HAL_CAN_SleepCallback) + [Anonymous Symbol] 0x0800156c Section 0 stm32f1xx_hal_can.o(.text.HAL_CAN_Start) + [Anonymous Symbol] 0x080015f8 Section 0 stm32f1xx_hal_can.o(.text.HAL_CAN_TxMailbox0AbortCallback) + [Anonymous Symbol] 0x08001600 Section 0 stm32f1xx_hal_can.o(.text.HAL_CAN_TxMailbox0CompleteCallback) + [Anonymous Symbol] 0x08001608 Section 0 stm32f1xx_hal_can.o(.text.HAL_CAN_TxMailbox1AbortCallback) + [Anonymous Symbol] 0x08001610 Section 0 stm32f1xx_hal_can.o(.text.HAL_CAN_TxMailbox1CompleteCallback) + [Anonymous Symbol] 0x08001618 Section 0 stm32f1xx_hal_can.o(.text.HAL_CAN_TxMailbox2AbortCallback) + [Anonymous Symbol] 0x08001620 Section 0 stm32f1xx_hal_can.o(.text.HAL_CAN_TxMailbox2CompleteCallback) + [Anonymous Symbol] 0x08001628 Section 0 stm32f1xx_hal_can.o(.text.HAL_CAN_UnRegisterCallback) + [Anonymous Symbol] 0x080017f0 Section 0 stm32f1xx_hal_can.o(.text.HAL_CAN_WakeUpFromRxMsgCallback) + [Anonymous Symbol] 0x080017f8 Section 0 stm32f1xx_hal_gpio.o(.text.HAL_GPIO_DeInit) + [Anonymous Symbol] 0x08001998 Section 0 stm32f1xx_hal_gpio.o(.text.HAL_GPIO_Init) + [Anonymous Symbol] 0x08001cb8 Section 0 stm32f1xx_hal.o(.text.HAL_GetTick) + [Anonymous Symbol] 0x08001cc4 Section 0 stm32f1xx_hal.o(.text.HAL_IncTick) + [Anonymous Symbol] 0x08001ce0 Section 0 stm32f1xx_hal.o(.text.HAL_Init) + [Anonymous Symbol] 0x08001d08 Section 0 stm32f1xx_hal.o(.text.HAL_InitTick) + [Anonymous Symbol] 0x08001d78 Section 0 stm32f1xx_hal_msp.o(.text.HAL_MspInit) + [Anonymous Symbol] 0x08001dbc Section 0 stm32f1xx_hal_cortex.o(.text.HAL_NVIC_DisableIRQ) + [Anonymous Symbol] 0x08001dd0 Section 0 stm32f1xx_hal_cortex.o(.text.HAL_NVIC_EnableIRQ) + [Anonymous Symbol] 0x08001de4 Section 0 stm32f1xx_hal_cortex.o(.text.HAL_NVIC_SetPriority) + [Anonymous Symbol] 0x08001e18 Section 0 stm32f1xx_hal_cortex.o(.text.HAL_NVIC_SetPriorityGrouping) + [Anonymous Symbol] 0x08001e28 Section 0 stm32f1xx_hal_pwr.o(.text.HAL_PWR_EnableBkUpAccess) + [Anonymous Symbol] 0x08001e34 Section 0 stm32f1xx_hal_rcc_ex.o(.text.HAL_RCCEx_GetPeriphCLKFreq) + [Anonymous Symbol] 0x08001fcc Section 0 stm32f1xx_hal_rcc_ex.o(.text.HAL_RCCEx_PeriphCLKConfig) + [Anonymous Symbol] 0x08002194 Section 0 stm32f1xx_hal_rcc.o(.text.HAL_RCC_ClockConfig) + [Anonymous Symbol] 0x080023ec Section 0 stm32f1xx_hal_rcc.o(.text.HAL_RCC_GetHCLKFreq) + [Anonymous Symbol] 0x080023f8 Section 0 stm32f1xx_hal_rcc.o(.text.HAL_RCC_GetPCLK2Freq) + [Anonymous Symbol] 0x0800241c Section 0 stm32f1xx_hal_rcc.o(.text.HAL_RCC_GetSysClockFreq) + [Anonymous Symbol] 0x080024d8 Section 0 stm32f1xx_hal_rcc.o(.text.HAL_RCC_MCOConfig) + [Anonymous Symbol] 0x08002540 Section 0 stm32f1xx_hal_rcc.o(.text.HAL_RCC_OscConfig) + [Anonymous Symbol] 0x08002bbc Section 0 stm32f1xx_hal_rtc.o(.text.HAL_RTC_GetDate) + [Anonymous Symbol] 0x08002c58 Section 0 stm32f1xx_hal_rtc.o(.text.HAL_RTC_GetTime) + [Anonymous Symbol] 0x08002e0c Section 0 stm32f1xx_hal_rtc.o(.text.HAL_RTC_Init) + [Anonymous Symbol] 0x08002f38 Section 0 rtc.o(.text.HAL_RTC_MspInit) + [Anonymous Symbol] 0x08002f84 Section 0 stm32f1xx_hal_rtc.o(.text.HAL_RTC_SetDate) + [Anonymous Symbol] 0x08003104 Section 0 stm32f1xx_hal_rtc.o(.text.HAL_RTC_SetTime) + [Anonymous Symbol] 0x08003248 Section 0 stm32f1xx_hal_rtc.o(.text.HAL_RTC_WaitForSynchro) + [Anonymous Symbol] 0x080032ac Section 0 stm32f1xx_hal_cortex.o(.text.HAL_SYSTICK_Config) + [Anonymous Symbol] 0x080032bc Section 0 stm32f1xx_hal_tim_ex.o(.text.HAL_TIMEx_BreakCallback) + [Anonymous Symbol] 0x080032c4 Section 0 stm32f1xx_hal_tim_ex.o(.text.HAL_TIMEx_CommutCallback) + [Anonymous Symbol] 0x080032cc Section 0 stm32f1xx_hal_tim_ex.o(.text.HAL_TIMEx_CommutHalfCpltCallback) + [Anonymous Symbol] 0x080032d4 Section 0 stm32f1xx_hal_tim_ex.o(.text.HAL_TIMEx_HallSensor_MspDeInit) + [Anonymous Symbol] 0x080032dc Section 0 stm32f1xx_hal_tim_ex.o(.text.HAL_TIMEx_HallSensor_MspInit) + [Anonymous Symbol] 0x080032e4 Section 0 stm32f1xx_hal_tim_ex.o(.text.HAL_TIMEx_MasterConfigSynchronization) + [Anonymous Symbol] 0x080033c0 Section 0 stm32f1xx_hal_tim.o(.text.HAL_TIM_Base_Init) + [Anonymous Symbol] 0x08003478 Section 0 tim.o(.text.HAL_TIM_Base_MspDeInit) + [Anonymous Symbol] 0x080034ac Section 0 tim.o(.text.HAL_TIM_Base_MspInit) + [Anonymous Symbol] 0x080034fc Section 0 stm32f1xx_hal_tim.o(.text.HAL_TIM_ConfigClockSource) + [Anonymous Symbol] 0x08003680 Section 0 stm32f1xx_hal_tim.o(.text.HAL_TIM_Encoder_MspDeInit) + [Anonymous Symbol] 0x08003688 Section 0 stm32f1xx_hal_tim.o(.text.HAL_TIM_Encoder_MspInit) + [Anonymous Symbol] 0x08003690 Section 0 stm32f1xx_hal_tim.o(.text.HAL_TIM_ErrorCallback) + [Anonymous Symbol] 0x08003698 Section 0 stm32f1xx_hal_tim.o(.text.HAL_TIM_IC_CaptureCallback) + [Anonymous Symbol] 0x080036a0 Section 0 stm32f1xx_hal_tim.o(.text.HAL_TIM_IC_CaptureHalfCpltCallback) + [Anonymous Symbol] 0x080036a8 Section 0 stm32f1xx_hal_tim.o(.text.HAL_TIM_IC_MspDeInit) + [Anonymous Symbol] 0x080036b0 Section 0 stm32f1xx_hal_tim.o(.text.HAL_TIM_IC_MspInit) + [Anonymous Symbol] 0x080036b8 Section 0 stm32f1xx_hal_tim.o(.text.HAL_TIM_IRQHandler) + [Anonymous Symbol] 0x08003954 Section 0 stm32f1xx_hal_tim.o(.text.HAL_TIM_OC_DelayElapsedCallback) + [Anonymous Symbol] 0x0800395c Section 0 stm32f1xx_hal_tim.o(.text.HAL_TIM_OC_MspDeInit) + [Anonymous Symbol] 0x08003964 Section 0 stm32f1xx_hal_tim.o(.text.HAL_TIM_OC_MspInit) + [Anonymous Symbol] 0x0800396c Section 0 stm32f1xx_hal_tim.o(.text.HAL_TIM_OnePulse_MspDeInit) + [Anonymous Symbol] 0x08003974 Section 0 stm32f1xx_hal_tim.o(.text.HAL_TIM_OnePulse_MspInit) + [Anonymous Symbol] 0x0800397c Section 0 stm32f1xx_hal_tim.o(.text.HAL_TIM_PWM_MspDeInit) + [Anonymous Symbol] 0x08003984 Section 0 stm32f1xx_hal_tim.o(.text.HAL_TIM_PWM_MspInit) + [Anonymous Symbol] 0x0800398c Section 0 stm32f1xx_hal_tim.o(.text.HAL_TIM_PWM_PulseFinishedCallback) + [Anonymous Symbol] 0x08003994 Section 0 stm32f1xx_hal_tim.o(.text.HAL_TIM_PWM_PulseFinishedHalfCpltCallback) + [Anonymous Symbol] 0x0800399c Section 0 stm32f1xx_hal_tim.o(.text.HAL_TIM_PeriodElapsedCallback) + [Anonymous Symbol] 0x080039a4 Section 0 stm32f1xx_hal_tim.o(.text.HAL_TIM_PeriodElapsedHalfCpltCallback) + [Anonymous Symbol] 0x080039ac Section 0 stm32f1xx_hal_tim.o(.text.HAL_TIM_RegisterCallback) + [Anonymous Symbol] 0x08003c50 Section 0 stm32f1xx_hal_tim.o(.text.HAL_TIM_TriggerCallback) + [Anonymous Symbol] 0x08003c58 Section 0 stm32f1xx_hal_tim.o(.text.HAL_TIM_TriggerHalfCpltCallback) + [Anonymous Symbol] 0x08003c60 Section 0 stm32f1xx_hal_tim.o(.text.HAL_TIM_UnRegisterCallback) + [Anonymous Symbol] 0x08003fe4 Section 0 stm32f1xx_it.o(.text.HardFault_Handler) + [Anonymous Symbol] 0x08003fe8 Section 0 protocan.o(.text.IsLeapYear) + [Anonymous Symbol] 0x08004078 Section 0 can.o(.text.MX_CAN_Init) + [Anonymous Symbol] 0x080040c8 Section 0 gpio.o(.text.MX_GPIO_Init) + [Anonymous Symbol] 0x08004114 Section 0 rtc.o(.text.MX_RTC_Init) + [Anonymous Symbol] 0x080041a8 Section 0 tim.o(.text.MX_TIM4_Init) + [Anonymous Symbol] 0x08004230 Section 0 stm32f1xx_it.o(.text.MemManage_Handler) + [Anonymous Symbol] 0x08004234 Section 0 stm32f1xx_it.o(.text.NMI_Handler) + NVIC_EncodePriority 0x08004239 Thumb Code 108 stm32f1xx_hal_cortex.o(.text.NVIC_EncodePriority) + [Anonymous Symbol] 0x08004238 Section 0 stm32f1xx_hal_cortex.o(.text.NVIC_EncodePriority) + [Anonymous Symbol] 0x080042a4 Section 0 protocan.o(.text.PROTOCAN_AnalogProcessing) + [Anonymous Symbol] 0x08004388 Section 0 protocan.o(.text.PROTOCAN_BroadcastProcessing) + [Anonymous Symbol] 0x08004448 Section 0 protocan.o(.text.PROTOCAN_CONFIG_FILTER) + [Anonymous Symbol] 0x080044ac Section 0 protocan.o(.text.PROTOCAN_DEINIT) + [Anonymous Symbol] 0x080044f4 Section 0 protocan.o(.text.PROTOCAN_DiscreticProcessing) + [Anonymous Symbol] 0x08004604 Section 0 protocan.o(.text.PROTOCAN_FILTERS) + [Anonymous Symbol] 0x08004644 Section 0 protocan.o(.text.PROTOCAN_INIT) + [Anonymous Symbol] 0x0800474c Section 0 protocan.o(.text.PROTOCAN_LOOP) + [Anonymous Symbol] 0x08004a90 Section 0 protocan.o(.text.PROTOCAN_ModbusProcessing) + [Anonymous Symbol] 0x08004b54 Section 0 protocan.o(.text.PROTOCAN_RTC_SYNC) + [Anonymous Symbol] 0x08004bf8 Section 0 protocan.o(.text.PROTOCAN_SEND) + [Anonymous Symbol] 0x08004c38 Section 0 protocan.o(.text.PROTOCAN_SEND_GENERAL_ADDRESS_SPACE) + [Anonymous Symbol] 0x08004d54 Section 0 stm32f1xx_it.o(.text.PendSV_Handler) + [Anonymous Symbol] 0x08004d58 Section 0 protocan.o(.text.ProtoCanMsgToAnalogISens) + [Anonymous Symbol] 0x08004e64 Section 0 protocan.o(.text.ProtoCanMsgToAnalogSettings) + [Anonymous Symbol] 0x08004eec Section 0 protocan.o(.text.ProtoCanMsgToAnalogTSens) + [Anonymous Symbol] 0x08004ff8 Section 0 protocan.o(.text.ProtoCanMsgToAnalogUSens) + [Anonymous Symbol] 0x08005104 Section 0 protocan.o(.text.ProtoCanMsgToAnalogUniversal) + [Anonymous Symbol] 0x08005184 Section 0 protocan.o(.text.ProtoCanMsgToBroadcastOnOff) + [Anonymous Symbol] 0x080051b4 Section 0 protocan.o(.text.ProtoCanMsgToBroadcastRestart) + [Anonymous Symbol] 0x08005254 Section 0 protocan.o(.text.ProtoCanMsgToBroadcastRtcSetup) + [Anonymous Symbol] 0x08005314 Section 0 protocan.o(.text.ProtoCanMsgToBroadcastStatus) + [Anonymous Symbol] 0x080053f0 Section 0 protocan.o(.text.ProtoCanMsgToDiscreteAccident) + [Anonymous Symbol] 0x0800540c Section 0 protocan.o(.text.ProtoCanMsgToDiscreteChangeMode) + [Anonymous Symbol] 0x08005428 Section 0 protocan.o(.text.ProtoCanMsgToDiscreteControlSignals) + [Anonymous Symbol] 0x08005444 Section 0 protocan.o(.text.ProtoCanMsgToDiscreteFlags) + [Anonymous Symbol] 0x08005460 Section 0 protocan.o(.text.ProtoCanMsgToDiscreteRequestListOfParameters) + [Anonymous Symbol] 0x0800547c Section 0 protocan.o(.text.ProtoCanMsgToDiscreteReset) + [Anonymous Symbol] 0x08005494 Section 0 protocan.o(.text.ProtoCanMsgToDiscreteWarning) + [Anonymous Symbol] 0x080054b0 Section 0 protocan.o(.text.ProtoCanMsgToGeneralAddressSpace) + [Anonymous Symbol] 0x08005588 Section 0 protocan.o(.text.ProtoCanMsgToModbusCoil) + [Anonymous Symbol] 0x08005620 Section 0 protocan.o(.text.ProtoCanMsgToModbusDiscrete) + [Anonymous Symbol] 0x080056bc Section 0 protocan.o(.text.ProtoCanMsgToModbusHolding) + [Anonymous Symbol] 0x08005758 Section 0 protocan.o(.text.ProtoCanMsgToModbusInput) + [Anonymous Symbol] 0x080057f4 Section 0 protocan.o(.text.ProtoCanPulseCallback) + [Anonymous Symbol] 0x080058c8 Section 0 protocan.o(.text.ProtoCanRxFifo0MsgPendingCallback) + RCC_Delay 0x080059a1 Thumb Code 58 stm32f1xx_hal_rcc.o(.text.RCC_Delay) + [Anonymous Symbol] 0x080059a0 Section 0 stm32f1xx_hal_rcc.o(.text.RCC_Delay) + RTC_Bcd2ToByte 0x080059dd Thumb Code 42 stm32f1xx_hal_rtc.o(.text.RTC_Bcd2ToByte) + [Anonymous Symbol] 0x080059dc Section 0 stm32f1xx_hal_rtc.o(.text.RTC_Bcd2ToByte) + RTC_ByteToBcd2 0x08005a09 Thumb Code 58 stm32f1xx_hal_rtc.o(.text.RTC_ByteToBcd2) + [Anonymous Symbol] 0x08005a08 Section 0 stm32f1xx_hal_rtc.o(.text.RTC_ByteToBcd2) + RTC_DateUpdate 0x08005a45 Thumb Code 370 stm32f1xx_hal_rtc.o(.text.RTC_DateUpdate) + [Anonymous Symbol] 0x08005a44 Section 0 stm32f1xx_hal_rtc.o(.text.RTC_DateUpdate) + RTC_EnterInitMode 0x08005bb9 Thumb Code 86 stm32f1xx_hal_rtc.o(.text.RTC_EnterInitMode) + [Anonymous Symbol] 0x08005bb8 Section 0 stm32f1xx_hal_rtc.o(.text.RTC_EnterInitMode) + RTC_ExitInitMode 0x08005c11 Thumb Code 86 stm32f1xx_hal_rtc.o(.text.RTC_ExitInitMode) + [Anonymous Symbol] 0x08005c10 Section 0 stm32f1xx_hal_rtc.o(.text.RTC_ExitInitMode) + RTC_IsLeapYear 0x08005c69 Thumb Code 120 stm32f1xx_hal_rtc.o(.text.RTC_IsLeapYear) + [Anonymous Symbol] 0x08005c68 Section 0 stm32f1xx_hal_rtc.o(.text.RTC_IsLeapYear) + RTC_ReadAlarmCounter 0x08005ce1 Thumb Code 50 stm32f1xx_hal_rtc.o(.text.RTC_ReadAlarmCounter) + [Anonymous Symbol] 0x08005ce0 Section 0 stm32f1xx_hal_rtc.o(.text.RTC_ReadAlarmCounter) + RTC_ReadTimeCounter 0x08005d15 Thumb Code 106 stm32f1xx_hal_rtc.o(.text.RTC_ReadTimeCounter) + [Anonymous Symbol] 0x08005d14 Section 0 stm32f1xx_hal_rtc.o(.text.RTC_ReadTimeCounter) + RTC_WeekDayNum 0x08005d81 Thumb Code 226 stm32f1xx_hal_rtc.o(.text.RTC_WeekDayNum) + [Anonymous Symbol] 0x08005d80 Section 0 stm32f1xx_hal_rtc.o(.text.RTC_WeekDayNum) + RTC_WriteAlarmCounter 0x08005e65 Thumb Code 80 stm32f1xx_hal_rtc.o(.text.RTC_WriteAlarmCounter) + [Anonymous Symbol] 0x08005e64 Section 0 stm32f1xx_hal_rtc.o(.text.RTC_WriteAlarmCounter) + RTC_WriteTimeCounter 0x08005eb5 Thumb Code 80 stm32f1xx_hal_rtc.o(.text.RTC_WriteTimeCounter) + [Anonymous Symbol] 0x08005eb4 Section 0 stm32f1xx_hal_rtc.o(.text.RTC_WriteTimeCounter) + [Anonymous Symbol] 0x08005f04 Section 0 stm32f1xx_it.o(.text.SVC_Handler) + SysTick_Config 0x08005f09 Thumb Code 82 stm32f1xx_hal_cortex.o(.text.SysTick_Config) + [Anonymous Symbol] 0x08005f08 Section 0 stm32f1xx_hal_cortex.o(.text.SysTick_Config) + [Anonymous Symbol] 0x08005f5c Section 0 stm32f1xx_it.o(.text.SysTick_Handler) + [Anonymous Symbol] 0x08005f64 Section 0 main.o(.text.SystemClock_Config) + [Anonymous Symbol] 0x08006000 Section 0 system_stm32f1xx.o(.text.SystemInit) + [Anonymous Symbol] 0x08006004 Section 0 stm32f1xx_it.o(.text.TIM4_IRQHandler) + [Anonymous Symbol] 0x08006014 Section 0 stm32f1xx_hal_tim.o(.text.TIM_Base_SetConfig) + [Anonymous Symbol] 0x08006104 Section 0 stm32f1xx_hal_tim.o(.text.TIM_ETR_SetConfig) + TIM_ITRx_SetConfig 0x08006139 Thumb Code 42 stm32f1xx_hal_tim.o(.text.TIM_ITRx_SetConfig) + [Anonymous Symbol] 0x08006138 Section 0 stm32f1xx_hal_tim.o(.text.TIM_ITRx_SetConfig) + [Anonymous Symbol] 0x08006164 Section 0 stm32f1xx_hal_tim.o(.text.TIM_ResetCallback) + TIM_TI1_ConfigInputStage 0x08006225 Thumb Code 80 stm32f1xx_hal_tim.o(.text.TIM_TI1_ConfigInputStage) + [Anonymous Symbol] 0x08006224 Section 0 stm32f1xx_hal_tim.o(.text.TIM_TI1_ConfigInputStage) + TIM_TI2_ConfigInputStage 0x08006275 Thumb Code 82 stm32f1xx_hal_tim.o(.text.TIM_TI2_ConfigInputStage) + [Anonymous Symbol] 0x08006274 Section 0 stm32f1xx_hal_tim.o(.text.TIM_TI2_ConfigInputStage) + [Anonymous Symbol] 0x080062c8 Section 0 protocan.o(.text.TakeRxMsgToBuffer) + [Anonymous Symbol] 0x08006398 Section 0 stm32f1xx_it.o(.text.USB_HP_CAN1_TX_IRQHandler) + [Anonymous Symbol] 0x080063a8 Section 0 stm32f1xx_it.o(.text.USB_LP_CAN1_RX0_IRQHandler) + [Anonymous Symbol] 0x080063b8 Section 0 stm32f1xx_it.o(.text.UsageFault_Handler) + __NVIC_DisableIRQ 0x080063bd Thumb Code 56 stm32f1xx_hal_cortex.o(.text.__NVIC_DisableIRQ) + [Anonymous Symbol] 0x080063bc Section 0 stm32f1xx_hal_cortex.o(.text.__NVIC_DisableIRQ) + __NVIC_EnableIRQ 0x080063f5 Thumb Code 48 stm32f1xx_hal_cortex.o(.text.__NVIC_EnableIRQ) + [Anonymous Symbol] 0x080063f4 Section 0 stm32f1xx_hal_cortex.o(.text.__NVIC_EnableIRQ) + __NVIC_GetPriorityGrouping 0x08006425 Thumb Code 16 stm32f1xx_hal_cortex.o(.text.__NVIC_GetPriorityGrouping) + [Anonymous Symbol] 0x08006424 Section 0 stm32f1xx_hal_cortex.o(.text.__NVIC_GetPriorityGrouping) + __NVIC_SetPriority 0x08006435 Thumb Code 66 stm32f1xx_hal_cortex.o(.text.__NVIC_SetPriority) + [Anonymous Symbol] 0x08006434 Section 0 stm32f1xx_hal_cortex.o(.text.__NVIC_SetPriority) + __NVIC_SetPriorityGrouping 0x08006479 Thumb Code 60 stm32f1xx_hal_cortex.o(.text.__NVIC_SetPriorityGrouping) + [Anonymous Symbol] 0x08006478 Section 0 stm32f1xx_hal_cortex.o(.text.__NVIC_SetPriorityGrouping) + __NVIC_SystemReset 0x080064b5 Thumb Code 38 protocan.o(.text.__NVIC_SystemReset) + [Anonymous Symbol] 0x080064b4 Section 0 protocan.o(.text.__NVIC_SystemReset) + [Anonymous Symbol] 0x080064dc Section 0 main.o(.text.main) + .L__const.ProtoCanMsgToBroadcastRtcSetup.DaysCount_Normal 0x08006544 Data 96 protocan.o(.rodata..L__const.ProtoCanMsgToBroadcastRtcSetup.DaysCount_Normal) + HAL_RCCEx_GetPeriphCLKFreq.aPLLMULFactorTable 0x080065bc Data 16 stm32f1xx_hal_rcc_ex.o(.rodata.HAL_RCCEx_GetPeriphCLKFreq.aPLLMULFactorTable) + [Anonymous Symbol] 0x080065bc Section 0 stm32f1xx_hal_rcc_ex.o(.rodata.HAL_RCCEx_GetPeriphCLKFreq.aPLLMULFactorTable) + HAL_RCCEx_GetPeriphCLKFreq.aPredivFactorTable 0x080065cc Data 2 stm32f1xx_hal_rcc_ex.o(.rodata.HAL_RCCEx_GetPeriphCLKFreq.aPredivFactorTable) + [Anonymous Symbol] 0x080065cc Section 0 stm32f1xx_hal_rcc_ex.o(.rodata.HAL_RCCEx_GetPeriphCLKFreq.aPredivFactorTable) + HAL_RCC_GetSysClockFreq.aPLLMULFactorTable 0x080065ce Data 16 stm32f1xx_hal_rcc.o(.rodata.HAL_RCC_GetSysClockFreq.aPLLMULFactorTable) + [Anonymous Symbol] 0x080065ce Section 0 stm32f1xx_hal_rcc.o(.rodata.HAL_RCC_GetSysClockFreq.aPLLMULFactorTable) + HAL_RCC_GetSysClockFreq.aPredivFactorTable 0x080065de Data 2 stm32f1xx_hal_rcc.o(.rodata.HAL_RCC_GetSysClockFreq.aPredivFactorTable) + [Anonymous Symbol] 0x080065de Section 0 stm32f1xx_hal_rcc.o(.rodata.HAL_RCC_GetSysClockFreq.aPredivFactorTable) + .bss 0x20000010 Section 96 libspace.o(.bss) + ProtoCanPulseCallback.PulseStage 0x200008d0 Data 4 protocan.o(.bss.ProtoCanPulseCallback.PulseStage) + [Anonymous Symbol] 0x200008d0 Section 0 protocan.o(.bss.ProtoCanPulseCallback.PulseStage) + Heap_Mem 0x20001410 Data 512 startup_stm32f103xb.o(HEAP) + HEAP 0x20001410 Section 512 startup_stm32f103xb.o(HEAP) + Stack_Mem 0x20001610 Data 1024 startup_stm32f103xb.o(STACK) + STACK 0x20001610 Section 1024 startup_stm32f103xb.o(STACK) + __initial_sp 0x20001a10 Data 0 startup_stm32f103xb.o(STACK) Global Symbols @@ -2623,177 +2628,173 @@ Image Symbol Table CanErrorCallbackTXTERR0 0x08000469 Thumb Code 16 canerrorbox.o(.text.CanErrorCallbackTXTERR0) CanErrorCallbackTXTERR1 0x08000479 Thumb Code 16 canerrorbox.o(.text.CanErrorCallbackTXTERR1) CanErrorCallbackTXTERR2 0x08000489 Thumb Code 16 canerrorbox.o(.text.CanErrorCallbackTXTERR2) - CanRequestError 0x08000499 Thumb Code 122 protocan.o(.text.CanRequestError) - DebugMon_Handler 0x08000515 Thumb Code 2 stm32f1xx_it.o(.text.DebugMon_Handler) - Error_Handler 0x08000519 Thumb Code 14 main.o(.text.Error_Handler) - HAL_CAN_ActivateNotification 0x08000529 Thumb Code 82 stm32f1xx_hal_can.o(.text.HAL_CAN_ActivateNotification) - HAL_CAN_AddTxMessage 0x0800057d Thumb Code 342 stm32f1xx_hal_can.o(.text.HAL_CAN_AddTxMessage) - HAL_CAN_ConfigFilter 0x080006d5 Thumb Code 378 stm32f1xx_hal_can.o(.text.HAL_CAN_ConfigFilter) - HAL_CAN_ErrorCallback 0x08000851 Thumb Code 414 canerrorbox.o(.text.HAL_CAN_ErrorCallback) - HAL_CAN_GetRxMessage 0x080009f1 Thumb Code 530 stm32f1xx_hal_can.o(.text.HAL_CAN_GetRxMessage) - HAL_CAN_IRQHandler 0x08000c05 Thumb Code 1010 stm32f1xx_hal_can.o(.text.HAL_CAN_IRQHandler) - HAL_CAN_Init 0x08000ff9 Thumb Code 658 stm32f1xx_hal_can.o(.text.HAL_CAN_Init) - HAL_CAN_MspDeInit 0x0800128d Thumb Code 86 can.o(.text.HAL_CAN_MspDeInit) - HAL_CAN_MspInit 0x080012e5 Thumb Code 226 can.o(.text.HAL_CAN_MspInit) - HAL_CAN_RegisterCallback 0x080013c9 Thumb Code 382 stm32f1xx_hal_can.o(.text.HAL_CAN_RegisterCallback) - HAL_CAN_RxFifo0FullCallback 0x08001549 Thumb Code 8 stm32f1xx_hal_can.o(.text.HAL_CAN_RxFifo0FullCallback) - HAL_CAN_RxFifo0MsgPendingCallback 0x08001551 Thumb Code 8 stm32f1xx_hal_can.o(.text.HAL_CAN_RxFifo0MsgPendingCallback) - HAL_CAN_RxFifo1FullCallback 0x08001559 Thumb Code 8 stm32f1xx_hal_can.o(.text.HAL_CAN_RxFifo1FullCallback) - HAL_CAN_RxFifo1MsgPendingCallback 0x08001561 Thumb Code 8 stm32f1xx_hal_can.o(.text.HAL_CAN_RxFifo1MsgPendingCallback) - HAL_CAN_SleepCallback 0x08001569 Thumb Code 8 stm32f1xx_hal_can.o(.text.HAL_CAN_SleepCallback) - HAL_CAN_Start 0x08001571 Thumb Code 138 stm32f1xx_hal_can.o(.text.HAL_CAN_Start) - HAL_CAN_TxMailbox0AbortCallback 0x080015fd Thumb Code 8 stm32f1xx_hal_can.o(.text.HAL_CAN_TxMailbox0AbortCallback) - HAL_CAN_TxMailbox0CompleteCallback 0x08001605 Thumb Code 8 stm32f1xx_hal_can.o(.text.HAL_CAN_TxMailbox0CompleteCallback) - HAL_CAN_TxMailbox1AbortCallback 0x0800160d Thumb Code 8 stm32f1xx_hal_can.o(.text.HAL_CAN_TxMailbox1AbortCallback) - HAL_CAN_TxMailbox1CompleteCallback 0x08001615 Thumb Code 8 stm32f1xx_hal_can.o(.text.HAL_CAN_TxMailbox1CompleteCallback) - HAL_CAN_TxMailbox2AbortCallback 0x0800161d Thumb Code 8 stm32f1xx_hal_can.o(.text.HAL_CAN_TxMailbox2AbortCallback) - HAL_CAN_TxMailbox2CompleteCallback 0x08001625 Thumb Code 8 stm32f1xx_hal_can.o(.text.HAL_CAN_TxMailbox2CompleteCallback) - HAL_CAN_UnRegisterCallback 0x0800162d Thumb Code 454 stm32f1xx_hal_can.o(.text.HAL_CAN_UnRegisterCallback) - HAL_CAN_WakeUpFromRxMsgCallback 0x080017f5 Thumb Code 8 stm32f1xx_hal_can.o(.text.HAL_CAN_WakeUpFromRxMsgCallback) - HAL_GPIO_DeInit 0x080017fd Thumb Code 414 stm32f1xx_hal_gpio.o(.text.HAL_GPIO_DeInit) - HAL_GPIO_Init 0x0800199d Thumb Code 798 stm32f1xx_hal_gpio.o(.text.HAL_GPIO_Init) - HAL_GetTick 0x08001cbd Thumb Code 12 stm32f1xx_hal.o(.text.HAL_GetTick) - HAL_IncTick 0x08001cc9 Thumb Code 26 stm32f1xx_hal.o(.text.HAL_IncTick) - HAL_Init 0x08001ce5 Thumb Code 38 stm32f1xx_hal.o(.text.HAL_Init) - HAL_InitTick 0x08001d0d Thumb Code 112 stm32f1xx_hal.o(.text.HAL_InitTick) - HAL_MspInit 0x08001d7d Thumb Code 66 stm32f1xx_hal_msp.o(.text.HAL_MspInit) - HAL_NVIC_DisableIRQ 0x08001dc1 Thumb Code 20 stm32f1xx_hal_cortex.o(.text.HAL_NVIC_DisableIRQ) - HAL_NVIC_EnableIRQ 0x08001dd5 Thumb Code 20 stm32f1xx_hal_cortex.o(.text.HAL_NVIC_EnableIRQ) - HAL_NVIC_SetPriority 0x08001de9 Thumb Code 50 stm32f1xx_hal_cortex.o(.text.HAL_NVIC_SetPriority) - HAL_NVIC_SetPriorityGrouping 0x08001e1d Thumb Code 16 stm32f1xx_hal_cortex.o(.text.HAL_NVIC_SetPriorityGrouping) - HAL_PWR_EnableBkUpAccess 0x08001e2d Thumb Code 12 stm32f1xx_hal_pwr.o(.text.HAL_PWR_EnableBkUpAccess) - HAL_RCCEx_GetPeriphCLKFreq 0x08001e39 Thumb Code 406 stm32f1xx_hal_rcc_ex.o(.text.HAL_RCCEx_GetPeriphCLKFreq) - HAL_RCCEx_PeriphCLKConfig 0x08001fd1 Thumb Code 456 stm32f1xx_hal_rcc_ex.o(.text.HAL_RCCEx_PeriphCLKConfig) - HAL_RCC_ClockConfig 0x08002199 Thumb Code 598 stm32f1xx_hal_rcc.o(.text.HAL_RCC_ClockConfig) - HAL_RCC_GetHCLKFreq 0x080023f1 Thumb Code 12 stm32f1xx_hal_rcc.o(.text.HAL_RCC_GetHCLKFreq) - HAL_RCC_GetPCLK2Freq 0x080023fd Thumb Code 34 stm32f1xx_hal_rcc.o(.text.HAL_RCC_GetPCLK2Freq) - HAL_RCC_GetSysClockFreq 0x08002421 Thumb Code 188 stm32f1xx_hal_rcc.o(.text.HAL_RCC_GetSysClockFreq) - HAL_RCC_MCOConfig 0x080024dd Thumb Code 104 stm32f1xx_hal_rcc.o(.text.HAL_RCC_MCOConfig) - HAL_RCC_OscConfig 0x08002545 Thumb Code 1658 stm32f1xx_hal_rcc.o(.text.HAL_RCC_OscConfig) - HAL_RTC_GetDate 0x08002bc1 Thumb Code 154 stm32f1xx_hal_rtc.o(.text.HAL_RTC_GetDate) - HAL_RTC_GetTime 0x08002c5d Thumb Code 434 stm32f1xx_hal_rtc.o(.text.HAL_RTC_GetTime) - HAL_RTC_Init 0x08002e11 Thumb Code 298 stm32f1xx_hal_rtc.o(.text.HAL_RTC_Init) - HAL_RTC_MspInit 0x08002f3d Thumb Code 76 rtc.o(.text.HAL_RTC_MspInit) - HAL_RTC_SetDate 0x08002f89 Thumb Code 382 stm32f1xx_hal_rtc.o(.text.HAL_RTC_SetDate) - HAL_RTC_SetTime 0x08003109 Thumb Code 322 stm32f1xx_hal_rtc.o(.text.HAL_RTC_SetTime) - HAL_RTC_WaitForSynchro 0x0800324d Thumb Code 100 stm32f1xx_hal_rtc.o(.text.HAL_RTC_WaitForSynchro) - HAL_SYSTICK_Config 0x080032b1 Thumb Code 16 stm32f1xx_hal_cortex.o(.text.HAL_SYSTICK_Config) - HAL_TIMEx_BreakCallback 0x080032c1 Thumb Code 8 stm32f1xx_hal_tim_ex.o(.text.HAL_TIMEx_BreakCallback) - HAL_TIMEx_CommutCallback 0x080032c9 Thumb Code 8 stm32f1xx_hal_tim_ex.o(.text.HAL_TIMEx_CommutCallback) - HAL_TIMEx_CommutHalfCpltCallback 0x080032d1 Thumb Code 8 stm32f1xx_hal_tim_ex.o(.text.HAL_TIMEx_CommutHalfCpltCallback) - HAL_TIMEx_HallSensor_MspDeInit 0x080032d9 Thumb Code 8 stm32f1xx_hal_tim_ex.o(.text.HAL_TIMEx_HallSensor_MspDeInit) - HAL_TIMEx_HallSensor_MspInit 0x080032e1 Thumb Code 8 stm32f1xx_hal_tim_ex.o(.text.HAL_TIMEx_HallSensor_MspInit) - HAL_TIMEx_MasterConfigSynchronization 0x080032e9 Thumb Code 220 stm32f1xx_hal_tim_ex.o(.text.HAL_TIMEx_MasterConfigSynchronization) - HAL_TIM_Base_Init 0x080033c5 Thumb Code 184 stm32f1xx_hal_tim.o(.text.HAL_TIM_Base_Init) - HAL_TIM_Base_MspDeInit 0x0800347d Thumb Code 52 tim.o(.text.HAL_TIM_Base_MspDeInit) - HAL_TIM_Base_MspInit 0x080034b1 Thumb Code 78 tim.o(.text.HAL_TIM_Base_MspInit) - HAL_TIM_ConfigClockSource 0x08003501 Thumb Code 388 stm32f1xx_hal_tim.o(.text.HAL_TIM_ConfigClockSource) - HAL_TIM_Encoder_MspDeInit 0x08003685 Thumb Code 8 stm32f1xx_hal_tim.o(.text.HAL_TIM_Encoder_MspDeInit) - HAL_TIM_Encoder_MspInit 0x0800368d Thumb Code 8 stm32f1xx_hal_tim.o(.text.HAL_TIM_Encoder_MspInit) - HAL_TIM_ErrorCallback 0x08003695 Thumb Code 8 stm32f1xx_hal_tim.o(.text.HAL_TIM_ErrorCallback) - HAL_TIM_IC_CaptureCallback 0x0800369d Thumb Code 8 stm32f1xx_hal_tim.o(.text.HAL_TIM_IC_CaptureCallback) - HAL_TIM_IC_CaptureHalfCpltCallback 0x080036a5 Thumb Code 8 stm32f1xx_hal_tim.o(.text.HAL_TIM_IC_CaptureHalfCpltCallback) - HAL_TIM_IC_MspDeInit 0x080036ad Thumb Code 8 stm32f1xx_hal_tim.o(.text.HAL_TIM_IC_MspDeInit) - HAL_TIM_IC_MspInit 0x080036b5 Thumb Code 8 stm32f1xx_hal_tim.o(.text.HAL_TIM_IC_MspInit) - HAL_TIM_IRQHandler 0x080036bd Thumb Code 666 stm32f1xx_hal_tim.o(.text.HAL_TIM_IRQHandler) - HAL_TIM_OC_DelayElapsedCallback 0x08003959 Thumb Code 8 stm32f1xx_hal_tim.o(.text.HAL_TIM_OC_DelayElapsedCallback) - HAL_TIM_OC_MspDeInit 0x08003961 Thumb Code 8 stm32f1xx_hal_tim.o(.text.HAL_TIM_OC_MspDeInit) - HAL_TIM_OC_MspInit 0x08003969 Thumb Code 8 stm32f1xx_hal_tim.o(.text.HAL_TIM_OC_MspInit) - HAL_TIM_OnePulse_MspDeInit 0x08003971 Thumb Code 8 stm32f1xx_hal_tim.o(.text.HAL_TIM_OnePulse_MspDeInit) - HAL_TIM_OnePulse_MspInit 0x08003979 Thumb Code 8 stm32f1xx_hal_tim.o(.text.HAL_TIM_OnePulse_MspInit) - HAL_TIM_PWM_MspDeInit 0x08003981 Thumb Code 8 stm32f1xx_hal_tim.o(.text.HAL_TIM_PWM_MspDeInit) - HAL_TIM_PWM_MspInit 0x08003989 Thumb Code 8 stm32f1xx_hal_tim.o(.text.HAL_TIM_PWM_MspInit) - HAL_TIM_PWM_PulseFinishedCallback 0x08003991 Thumb Code 8 stm32f1xx_hal_tim.o(.text.HAL_TIM_PWM_PulseFinishedCallback) - HAL_TIM_PWM_PulseFinishedHalfCpltCallback 0x08003999 Thumb Code 8 stm32f1xx_hal_tim.o(.text.HAL_TIM_PWM_PulseFinishedHalfCpltCallback) - HAL_TIM_PeriodElapsedCallback 0x080039a1 Thumb Code 8 stm32f1xx_hal_tim.o(.text.HAL_TIM_PeriodElapsedCallback) - HAL_TIM_PeriodElapsedHalfCpltCallback 0x080039a9 Thumb Code 8 stm32f1xx_hal_tim.o(.text.HAL_TIM_PeriodElapsedHalfCpltCallback) - HAL_TIM_RegisterCallback 0x080039b1 Thumb Code 674 stm32f1xx_hal_tim.o(.text.HAL_TIM_RegisterCallback) - HAL_TIM_TriggerCallback 0x08003c55 Thumb Code 8 stm32f1xx_hal_tim.o(.text.HAL_TIM_TriggerCallback) - HAL_TIM_TriggerHalfCpltCallback 0x08003c5d Thumb Code 8 stm32f1xx_hal_tim.o(.text.HAL_TIM_TriggerHalfCpltCallback) - HAL_TIM_UnRegisterCallback 0x08003c65 Thumb Code 900 stm32f1xx_hal_tim.o(.text.HAL_TIM_UnRegisterCallback) - HardFault_Handler 0x08003fe9 Thumb Code 4 stm32f1xx_it.o(.text.HardFault_Handler) - IsLeapYear 0x08003fed Thumb Code 142 protocan.o(.text.IsLeapYear) - MX_CAN_Init 0x0800407d Thumb Code 78 can.o(.text.MX_CAN_Init) - MX_GPIO_Init 0x080040cd Thumb Code 74 gpio.o(.text.MX_GPIO_Init) - MX_RTC_Init 0x08004119 Thumb Code 148 rtc.o(.text.MX_RTC_Init) - MX_TIM4_Init 0x080041ad Thumb Code 134 tim.o(.text.MX_TIM4_Init) - MemManage_Handler 0x08004235 Thumb Code 4 stm32f1xx_it.o(.text.MemManage_Handler) - NMI_Handler 0x08004239 Thumb Code 4 stm32f1xx_it.o(.text.NMI_Handler) - PROTOCAN_AnalogProcessing 0x080042a9 Thumb Code 232 protocan.o(.text.PROTOCAN_AnalogProcessing) - PROTOCAN_BroadcastProcessing 0x08004391 Thumb Code 196 protocan.o(.text.PROTOCAN_BroadcastProcessing) - PROTOCAN_CONFIG_FILTER 0x08004455 Thumb Code 100 protocan.o(.text.PROTOCAN_CONFIG_FILTER) - PROTOCAN_DEINIT 0x080044b9 Thumb Code 70 protocan.o(.text.PROTOCAN_DEINIT) - PROTOCAN_DiscreticProcessing 0x08004501 Thumb Code 276 protocan.o(.text.PROTOCAN_DiscreticProcessing) - PROTOCAN_FILTERS 0x08004615 Thumb Code 82 protocan.o(.text.PROTOCAN_FILTERS) - PROTOCAN_GeneralAddressSpace_Answer 0x08004669 Thumb Code 216 protocan.o(.text.PROTOCAN_GeneralAddressSpace_Answer) - PROTOCAN_INIT 0x08004741 Thumb Code 264 protocan.o(.text.PROTOCAN_INIT) - PROTOCAN_LOOP 0x08004849 Thumb Code 736 protocan.o(.text.PROTOCAN_LOOP) - PROTOCAN_ModbusProcessing 0x08004b29 Thumb Code 196 protocan.o(.text.PROTOCAN_ModbusProcessing) - PROTOCAN_RTC_SYNC 0x08004bed Thumb Code 164 protocan.o(.text.PROTOCAN_RTC_SYNC) - PendSV_Handler 0x08004c91 Thumb Code 2 stm32f1xx_it.o(.text.PendSV_Handler) - ProtoCanMsgToAnalogISens 0x08004c95 Thumb Code 268 protocan.o(.text.ProtoCanMsgToAnalogISens) - ProtoCanMsgToAnalogTSens 0x08004da1 Thumb Code 268 protocan.o(.text.ProtoCanMsgToAnalogTSens) - ProtoCanMsgToAnalogUSTAVKI 0x08004ead Thumb Code 134 protocan.o(.text.ProtoCanMsgToAnalogUSTAVKI) - ProtoCanMsgToAnalogUSens 0x08004f35 Thumb Code 268 protocan.o(.text.ProtoCanMsgToAnalogUSens) - ProtoCanMsgToAnalogUniversal 0x08005041 Thumb Code 128 protocan.o(.text.ProtoCanMsgToAnalogUniversal) - ProtoCanMsgToBroadcastOnOff 0x080050c1 Thumb Code 46 protocan.o(.text.ProtoCanMsgToBroadcastOnOff) - ProtoCanMsgToBroadcastRestart 0x080050f1 Thumb Code 146 protocan.o(.text.ProtoCanMsgToBroadcastRestart) - ProtoCanMsgToBroadcastRtcSetup 0x08005185 Thumb Code 168 protocan.o(.text.ProtoCanMsgToBroadcastRtcSetup) - ProtoCanMsgToBroadcastStatus 0x0800522d Thumb Code 218 protocan.o(.text.ProtoCanMsgToBroadcastStatus) - ProtoCanMsgToDiscreteAccident 0x08005309 Thumb Code 24 protocan.o(.text.ProtoCanMsgToDiscreteAccident) - ProtoCanMsgToDiscreteChangeMode 0x08005321 Thumb Code 24 protocan.o(.text.ProtoCanMsgToDiscreteChangeMode) - ProtoCanMsgToDiscreteControlSignals 0x08005339 Thumb Code 24 protocan.o(.text.ProtoCanMsgToDiscreteControlSignals) - ProtoCanMsgToDiscreteFlags 0x08005351 Thumb Code 24 protocan.o(.text.ProtoCanMsgToDiscreteFlags) - ProtoCanMsgToDiscreteRequestListOfParameters 0x08005369 Thumb Code 24 protocan.o(.text.ProtoCanMsgToDiscreteRequestListOfParameters) - ProtoCanMsgToDiscreteReset 0x08005381 Thumb Code 24 protocan.o(.text.ProtoCanMsgToDiscreteReset) - ProtoCanMsgToDiscreteWarning 0x08005399 Thumb Code 24 protocan.o(.text.ProtoCanMsgToDiscreteWarning) - ProtoCanMsgToModbusCoil 0x080053b1 Thumb Code 154 protocan.o(.text.ProtoCanMsgToModbusCoil) - ProtoCanMsgToModbusDiscrete 0x0800544d Thumb Code 156 protocan.o(.text.ProtoCanMsgToModbusDiscrete) - ProtoCanMsgToModbusHolding 0x080054e9 Thumb Code 156 protocan.o(.text.ProtoCanMsgToModbusHolding) - ProtoCanMsgToModbusInput 0x08005585 Thumb Code 156 protocan.o(.text.ProtoCanMsgToModbusInput) - ProtoCanPulseCallback 0x08005621 Thumb Code 212 protocan.o(.text.ProtoCanPulseCallback) - ProtoCanRxFifo0MsgPendingCallback 0x080056f5 Thumb Code 214 protocan.o(.text.ProtoCanRxFifo0MsgPendingCallback) - SVC_Handler 0x08005d31 Thumb Code 2 stm32f1xx_it.o(.text.SVC_Handler) - SysTick_Handler 0x08005d89 Thumb Code 8 stm32f1xx_it.o(.text.SysTick_Handler) - SystemClock_Config 0x08005d91 Thumb Code 156 main.o(.text.SystemClock_Config) - SystemInit 0x08005e2d Thumb Code 2 system_stm32f1xx.o(.text.SystemInit) - TIM4_IRQHandler 0x08005e31 Thumb Code 16 stm32f1xx_it.o(.text.TIM4_IRQHandler) - TIM_Base_SetConfig 0x08005e41 Thumb Code 240 stm32f1xx_hal_tim.o(.text.TIM_Base_SetConfig) - TIM_ETR_SetConfig 0x08005f31 Thumb Code 52 stm32f1xx_hal_tim.o(.text.TIM_ETR_SetConfig) - TIM_ResetCallback 0x08005f91 Thumb Code 190 stm32f1xx_hal_tim.o(.text.TIM_ResetCallback) - TakeRxMsgToBuffer 0x080060f5 Thumb Code 208 protocan.o(.text.TakeRxMsgToBuffer) - USB_HP_CAN1_TX_IRQHandler 0x080061c5 Thumb Code 16 stm32f1xx_it.o(.text.USB_HP_CAN1_TX_IRQHandler) - USB_LP_CAN1_RX0_IRQHandler 0x080061d5 Thumb Code 16 stm32f1xx_it.o(.text.USB_LP_CAN1_RX0_IRQHandler) - UsageFault_Handler 0x080061e5 Thumb Code 4 stm32f1xx_it.o(.text.UsageFault_Handler) - main 0x08006309 Thumb Code 102 main.o(.text.main) - AHBPrescTable 0x080063d0 Data 16 system_stm32f1xx.o(.rodata.AHBPrescTable) - APBPrescTable 0x080063e0 Data 8 system_stm32f1xx.o(.rodata.APBPrescTable) - Region$$Table$$Base 0x0800640c Number 0 anon$$obj.o(Region$$Table) - Region$$Table$$Limit 0x0800642c Number 0 anon$$obj.o(Region$$Table) + CanRequestError 0x08000499 Thumb Code 120 protocan.o(.text.CanRequestError) + DebugMon_Handler 0x08000511 Thumb Code 2 stm32f1xx_it.o(.text.DebugMon_Handler) + Error_Handler 0x08000515 Thumb Code 14 main.o(.text.Error_Handler) + HAL_CAN_ActivateNotification 0x08000525 Thumb Code 82 stm32f1xx_hal_can.o(.text.HAL_CAN_ActivateNotification) + HAL_CAN_AddTxMessage 0x08000579 Thumb Code 342 stm32f1xx_hal_can.o(.text.HAL_CAN_AddTxMessage) + HAL_CAN_ConfigFilter 0x080006d1 Thumb Code 378 stm32f1xx_hal_can.o(.text.HAL_CAN_ConfigFilter) + HAL_CAN_ErrorCallback 0x0800084d Thumb Code 414 canerrorbox.o(.text.HAL_CAN_ErrorCallback) + HAL_CAN_GetRxMessage 0x080009ed Thumb Code 530 stm32f1xx_hal_can.o(.text.HAL_CAN_GetRxMessage) + HAL_CAN_IRQHandler 0x08000c01 Thumb Code 1010 stm32f1xx_hal_can.o(.text.HAL_CAN_IRQHandler) + HAL_CAN_Init 0x08000ff5 Thumb Code 658 stm32f1xx_hal_can.o(.text.HAL_CAN_Init) + HAL_CAN_MspDeInit 0x08001289 Thumb Code 86 can.o(.text.HAL_CAN_MspDeInit) + HAL_CAN_MspInit 0x080012e1 Thumb Code 226 can.o(.text.HAL_CAN_MspInit) + HAL_CAN_RegisterCallback 0x080013c5 Thumb Code 382 stm32f1xx_hal_can.o(.text.HAL_CAN_RegisterCallback) + HAL_CAN_RxFifo0FullCallback 0x08001545 Thumb Code 8 stm32f1xx_hal_can.o(.text.HAL_CAN_RxFifo0FullCallback) + HAL_CAN_RxFifo0MsgPendingCallback 0x0800154d Thumb Code 8 stm32f1xx_hal_can.o(.text.HAL_CAN_RxFifo0MsgPendingCallback) + HAL_CAN_RxFifo1FullCallback 0x08001555 Thumb Code 8 stm32f1xx_hal_can.o(.text.HAL_CAN_RxFifo1FullCallback) + HAL_CAN_RxFifo1MsgPendingCallback 0x0800155d Thumb Code 8 stm32f1xx_hal_can.o(.text.HAL_CAN_RxFifo1MsgPendingCallback) + HAL_CAN_SleepCallback 0x08001565 Thumb Code 8 stm32f1xx_hal_can.o(.text.HAL_CAN_SleepCallback) + HAL_CAN_Start 0x0800156d Thumb Code 138 stm32f1xx_hal_can.o(.text.HAL_CAN_Start) + HAL_CAN_TxMailbox0AbortCallback 0x080015f9 Thumb Code 8 stm32f1xx_hal_can.o(.text.HAL_CAN_TxMailbox0AbortCallback) + HAL_CAN_TxMailbox0CompleteCallback 0x08001601 Thumb Code 8 stm32f1xx_hal_can.o(.text.HAL_CAN_TxMailbox0CompleteCallback) + HAL_CAN_TxMailbox1AbortCallback 0x08001609 Thumb Code 8 stm32f1xx_hal_can.o(.text.HAL_CAN_TxMailbox1AbortCallback) + HAL_CAN_TxMailbox1CompleteCallback 0x08001611 Thumb Code 8 stm32f1xx_hal_can.o(.text.HAL_CAN_TxMailbox1CompleteCallback) + HAL_CAN_TxMailbox2AbortCallback 0x08001619 Thumb Code 8 stm32f1xx_hal_can.o(.text.HAL_CAN_TxMailbox2AbortCallback) + HAL_CAN_TxMailbox2CompleteCallback 0x08001621 Thumb Code 8 stm32f1xx_hal_can.o(.text.HAL_CAN_TxMailbox2CompleteCallback) + HAL_CAN_UnRegisterCallback 0x08001629 Thumb Code 454 stm32f1xx_hal_can.o(.text.HAL_CAN_UnRegisterCallback) + HAL_CAN_WakeUpFromRxMsgCallback 0x080017f1 Thumb Code 8 stm32f1xx_hal_can.o(.text.HAL_CAN_WakeUpFromRxMsgCallback) + HAL_GPIO_DeInit 0x080017f9 Thumb Code 414 stm32f1xx_hal_gpio.o(.text.HAL_GPIO_DeInit) + HAL_GPIO_Init 0x08001999 Thumb Code 798 stm32f1xx_hal_gpio.o(.text.HAL_GPIO_Init) + HAL_GetTick 0x08001cb9 Thumb Code 12 stm32f1xx_hal.o(.text.HAL_GetTick) + HAL_IncTick 0x08001cc5 Thumb Code 26 stm32f1xx_hal.o(.text.HAL_IncTick) + HAL_Init 0x08001ce1 Thumb Code 38 stm32f1xx_hal.o(.text.HAL_Init) + HAL_InitTick 0x08001d09 Thumb Code 112 stm32f1xx_hal.o(.text.HAL_InitTick) + HAL_MspInit 0x08001d79 Thumb Code 66 stm32f1xx_hal_msp.o(.text.HAL_MspInit) + HAL_NVIC_DisableIRQ 0x08001dbd Thumb Code 20 stm32f1xx_hal_cortex.o(.text.HAL_NVIC_DisableIRQ) + HAL_NVIC_EnableIRQ 0x08001dd1 Thumb Code 20 stm32f1xx_hal_cortex.o(.text.HAL_NVIC_EnableIRQ) + HAL_NVIC_SetPriority 0x08001de5 Thumb Code 50 stm32f1xx_hal_cortex.o(.text.HAL_NVIC_SetPriority) + HAL_NVIC_SetPriorityGrouping 0x08001e19 Thumb Code 16 stm32f1xx_hal_cortex.o(.text.HAL_NVIC_SetPriorityGrouping) + HAL_PWR_EnableBkUpAccess 0x08001e29 Thumb Code 12 stm32f1xx_hal_pwr.o(.text.HAL_PWR_EnableBkUpAccess) + HAL_RCCEx_GetPeriphCLKFreq 0x08001e35 Thumb Code 406 stm32f1xx_hal_rcc_ex.o(.text.HAL_RCCEx_GetPeriphCLKFreq) + HAL_RCCEx_PeriphCLKConfig 0x08001fcd Thumb Code 456 stm32f1xx_hal_rcc_ex.o(.text.HAL_RCCEx_PeriphCLKConfig) + HAL_RCC_ClockConfig 0x08002195 Thumb Code 598 stm32f1xx_hal_rcc.o(.text.HAL_RCC_ClockConfig) + HAL_RCC_GetHCLKFreq 0x080023ed Thumb Code 12 stm32f1xx_hal_rcc.o(.text.HAL_RCC_GetHCLKFreq) + HAL_RCC_GetPCLK2Freq 0x080023f9 Thumb Code 34 stm32f1xx_hal_rcc.o(.text.HAL_RCC_GetPCLK2Freq) + HAL_RCC_GetSysClockFreq 0x0800241d Thumb Code 188 stm32f1xx_hal_rcc.o(.text.HAL_RCC_GetSysClockFreq) + HAL_RCC_MCOConfig 0x080024d9 Thumb Code 104 stm32f1xx_hal_rcc.o(.text.HAL_RCC_MCOConfig) + HAL_RCC_OscConfig 0x08002541 Thumb Code 1658 stm32f1xx_hal_rcc.o(.text.HAL_RCC_OscConfig) + HAL_RTC_GetDate 0x08002bbd Thumb Code 154 stm32f1xx_hal_rtc.o(.text.HAL_RTC_GetDate) + HAL_RTC_GetTime 0x08002c59 Thumb Code 434 stm32f1xx_hal_rtc.o(.text.HAL_RTC_GetTime) + HAL_RTC_Init 0x08002e0d Thumb Code 298 stm32f1xx_hal_rtc.o(.text.HAL_RTC_Init) + HAL_RTC_MspInit 0x08002f39 Thumb Code 76 rtc.o(.text.HAL_RTC_MspInit) + HAL_RTC_SetDate 0x08002f85 Thumb Code 382 stm32f1xx_hal_rtc.o(.text.HAL_RTC_SetDate) + HAL_RTC_SetTime 0x08003105 Thumb Code 322 stm32f1xx_hal_rtc.o(.text.HAL_RTC_SetTime) + HAL_RTC_WaitForSynchro 0x08003249 Thumb Code 100 stm32f1xx_hal_rtc.o(.text.HAL_RTC_WaitForSynchro) + HAL_SYSTICK_Config 0x080032ad Thumb Code 16 stm32f1xx_hal_cortex.o(.text.HAL_SYSTICK_Config) + HAL_TIMEx_BreakCallback 0x080032bd Thumb Code 8 stm32f1xx_hal_tim_ex.o(.text.HAL_TIMEx_BreakCallback) + HAL_TIMEx_CommutCallback 0x080032c5 Thumb Code 8 stm32f1xx_hal_tim_ex.o(.text.HAL_TIMEx_CommutCallback) + HAL_TIMEx_CommutHalfCpltCallback 0x080032cd Thumb Code 8 stm32f1xx_hal_tim_ex.o(.text.HAL_TIMEx_CommutHalfCpltCallback) + HAL_TIMEx_HallSensor_MspDeInit 0x080032d5 Thumb Code 8 stm32f1xx_hal_tim_ex.o(.text.HAL_TIMEx_HallSensor_MspDeInit) + HAL_TIMEx_HallSensor_MspInit 0x080032dd Thumb Code 8 stm32f1xx_hal_tim_ex.o(.text.HAL_TIMEx_HallSensor_MspInit) + HAL_TIMEx_MasterConfigSynchronization 0x080032e5 Thumb Code 220 stm32f1xx_hal_tim_ex.o(.text.HAL_TIMEx_MasterConfigSynchronization) + HAL_TIM_Base_Init 0x080033c1 Thumb Code 184 stm32f1xx_hal_tim.o(.text.HAL_TIM_Base_Init) + HAL_TIM_Base_MspDeInit 0x08003479 Thumb Code 52 tim.o(.text.HAL_TIM_Base_MspDeInit) + HAL_TIM_Base_MspInit 0x080034ad Thumb Code 78 tim.o(.text.HAL_TIM_Base_MspInit) + HAL_TIM_ConfigClockSource 0x080034fd Thumb Code 388 stm32f1xx_hal_tim.o(.text.HAL_TIM_ConfigClockSource) + HAL_TIM_Encoder_MspDeInit 0x08003681 Thumb Code 8 stm32f1xx_hal_tim.o(.text.HAL_TIM_Encoder_MspDeInit) + HAL_TIM_Encoder_MspInit 0x08003689 Thumb Code 8 stm32f1xx_hal_tim.o(.text.HAL_TIM_Encoder_MspInit) + HAL_TIM_ErrorCallback 0x08003691 Thumb Code 8 stm32f1xx_hal_tim.o(.text.HAL_TIM_ErrorCallback) + HAL_TIM_IC_CaptureCallback 0x08003699 Thumb Code 8 stm32f1xx_hal_tim.o(.text.HAL_TIM_IC_CaptureCallback) + HAL_TIM_IC_CaptureHalfCpltCallback 0x080036a1 Thumb Code 8 stm32f1xx_hal_tim.o(.text.HAL_TIM_IC_CaptureHalfCpltCallback) + HAL_TIM_IC_MspDeInit 0x080036a9 Thumb Code 8 stm32f1xx_hal_tim.o(.text.HAL_TIM_IC_MspDeInit) + HAL_TIM_IC_MspInit 0x080036b1 Thumb Code 8 stm32f1xx_hal_tim.o(.text.HAL_TIM_IC_MspInit) + HAL_TIM_IRQHandler 0x080036b9 Thumb Code 666 stm32f1xx_hal_tim.o(.text.HAL_TIM_IRQHandler) + HAL_TIM_OC_DelayElapsedCallback 0x08003955 Thumb Code 8 stm32f1xx_hal_tim.o(.text.HAL_TIM_OC_DelayElapsedCallback) + HAL_TIM_OC_MspDeInit 0x0800395d Thumb Code 8 stm32f1xx_hal_tim.o(.text.HAL_TIM_OC_MspDeInit) + HAL_TIM_OC_MspInit 0x08003965 Thumb Code 8 stm32f1xx_hal_tim.o(.text.HAL_TIM_OC_MspInit) + HAL_TIM_OnePulse_MspDeInit 0x0800396d Thumb Code 8 stm32f1xx_hal_tim.o(.text.HAL_TIM_OnePulse_MspDeInit) + HAL_TIM_OnePulse_MspInit 0x08003975 Thumb Code 8 stm32f1xx_hal_tim.o(.text.HAL_TIM_OnePulse_MspInit) + HAL_TIM_PWM_MspDeInit 0x0800397d Thumb Code 8 stm32f1xx_hal_tim.o(.text.HAL_TIM_PWM_MspDeInit) + HAL_TIM_PWM_MspInit 0x08003985 Thumb Code 8 stm32f1xx_hal_tim.o(.text.HAL_TIM_PWM_MspInit) + HAL_TIM_PWM_PulseFinishedCallback 0x0800398d Thumb Code 8 stm32f1xx_hal_tim.o(.text.HAL_TIM_PWM_PulseFinishedCallback) + HAL_TIM_PWM_PulseFinishedHalfCpltCallback 0x08003995 Thumb Code 8 stm32f1xx_hal_tim.o(.text.HAL_TIM_PWM_PulseFinishedHalfCpltCallback) + HAL_TIM_PeriodElapsedCallback 0x0800399d Thumb Code 8 stm32f1xx_hal_tim.o(.text.HAL_TIM_PeriodElapsedCallback) + HAL_TIM_PeriodElapsedHalfCpltCallback 0x080039a5 Thumb Code 8 stm32f1xx_hal_tim.o(.text.HAL_TIM_PeriodElapsedHalfCpltCallback) + HAL_TIM_RegisterCallback 0x080039ad Thumb Code 674 stm32f1xx_hal_tim.o(.text.HAL_TIM_RegisterCallback) + HAL_TIM_TriggerCallback 0x08003c51 Thumb Code 8 stm32f1xx_hal_tim.o(.text.HAL_TIM_TriggerCallback) + HAL_TIM_TriggerHalfCpltCallback 0x08003c59 Thumb Code 8 stm32f1xx_hal_tim.o(.text.HAL_TIM_TriggerHalfCpltCallback) + HAL_TIM_UnRegisterCallback 0x08003c61 Thumb Code 900 stm32f1xx_hal_tim.o(.text.HAL_TIM_UnRegisterCallback) + HardFault_Handler 0x08003fe5 Thumb Code 4 stm32f1xx_it.o(.text.HardFault_Handler) + IsLeapYear 0x08003fe9 Thumb Code 142 protocan.o(.text.IsLeapYear) + MX_CAN_Init 0x08004079 Thumb Code 78 can.o(.text.MX_CAN_Init) + MX_GPIO_Init 0x080040c9 Thumb Code 74 gpio.o(.text.MX_GPIO_Init) + MX_RTC_Init 0x08004115 Thumb Code 148 rtc.o(.text.MX_RTC_Init) + MX_TIM4_Init 0x080041a9 Thumb Code 134 tim.o(.text.MX_TIM4_Init) + MemManage_Handler 0x08004231 Thumb Code 4 stm32f1xx_it.o(.text.MemManage_Handler) + NMI_Handler 0x08004235 Thumb Code 4 stm32f1xx_it.o(.text.NMI_Handler) + PROTOCAN_AnalogProcessing 0x080042a5 Thumb Code 228 protocan.o(.text.PROTOCAN_AnalogProcessing) + PROTOCAN_BroadcastProcessing 0x08004389 Thumb Code 192 protocan.o(.text.PROTOCAN_BroadcastProcessing) + PROTOCAN_CONFIG_FILTER 0x08004449 Thumb Code 100 protocan.o(.text.PROTOCAN_CONFIG_FILTER) + PROTOCAN_DEINIT 0x080044ad Thumb Code 70 protocan.o(.text.PROTOCAN_DEINIT) + PROTOCAN_DiscreticProcessing 0x080044f5 Thumb Code 272 protocan.o(.text.PROTOCAN_DiscreticProcessing) + PROTOCAN_FILTERS 0x08004605 Thumb Code 62 protocan.o(.text.PROTOCAN_FILTERS) + PROTOCAN_INIT 0x08004645 Thumb Code 264 protocan.o(.text.PROTOCAN_INIT) + PROTOCAN_LOOP 0x0800474d Thumb Code 836 protocan.o(.text.PROTOCAN_LOOP) + PROTOCAN_ModbusProcessing 0x08004a91 Thumb Code 196 protocan.o(.text.PROTOCAN_ModbusProcessing) + PROTOCAN_RTC_SYNC 0x08004b55 Thumb Code 164 protocan.o(.text.PROTOCAN_RTC_SYNC) + PROTOCAN_SEND 0x08004bf9 Thumb Code 64 protocan.o(.text.PROTOCAN_SEND) + PROTOCAN_SEND_GENERAL_ADDRESS_SPACE 0x08004c39 Thumb Code 282 protocan.o(.text.PROTOCAN_SEND_GENERAL_ADDRESS_SPACE) + PendSV_Handler 0x08004d55 Thumb Code 2 stm32f1xx_it.o(.text.PendSV_Handler) + ProtoCanMsgToAnalogISens 0x08004d59 Thumb Code 266 protocan.o(.text.ProtoCanMsgToAnalogISens) + ProtoCanMsgToAnalogSettings 0x08004e65 Thumb Code 134 protocan.o(.text.ProtoCanMsgToAnalogSettings) + ProtoCanMsgToAnalogTSens 0x08004eed Thumb Code 266 protocan.o(.text.ProtoCanMsgToAnalogTSens) + ProtoCanMsgToAnalogUSens 0x08004ff9 Thumb Code 266 protocan.o(.text.ProtoCanMsgToAnalogUSens) + ProtoCanMsgToAnalogUniversal 0x08005105 Thumb Code 128 protocan.o(.text.ProtoCanMsgToAnalogUniversal) + ProtoCanMsgToBroadcastOnOff 0x08005185 Thumb Code 48 protocan.o(.text.ProtoCanMsgToBroadcastOnOff) + ProtoCanMsgToBroadcastRestart 0x080051b5 Thumb Code 160 protocan.o(.text.ProtoCanMsgToBroadcastRestart) + ProtoCanMsgToBroadcastRtcSetup 0x08005255 Thumb Code 192 protocan.o(.text.ProtoCanMsgToBroadcastRtcSetup) + ProtoCanMsgToBroadcastStatus 0x08005315 Thumb Code 218 protocan.o(.text.ProtoCanMsgToBroadcastStatus) + ProtoCanMsgToDiscreteAccident 0x080053f1 Thumb Code 26 protocan.o(.text.ProtoCanMsgToDiscreteAccident) + ProtoCanMsgToDiscreteChangeMode 0x0800540d Thumb Code 26 protocan.o(.text.ProtoCanMsgToDiscreteChangeMode) + ProtoCanMsgToDiscreteControlSignals 0x08005429 Thumb Code 26 protocan.o(.text.ProtoCanMsgToDiscreteControlSignals) + ProtoCanMsgToDiscreteFlags 0x08005445 Thumb Code 26 protocan.o(.text.ProtoCanMsgToDiscreteFlags) + ProtoCanMsgToDiscreteRequestListOfParameters 0x08005461 Thumb Code 26 protocan.o(.text.ProtoCanMsgToDiscreteRequestListOfParameters) + ProtoCanMsgToDiscreteReset 0x0800547d Thumb Code 24 protocan.o(.text.ProtoCanMsgToDiscreteReset) + ProtoCanMsgToDiscreteWarning 0x08005495 Thumb Code 26 protocan.o(.text.ProtoCanMsgToDiscreteWarning) + ProtoCanMsgToGeneralAddressSpace 0x080054b1 Thumb Code 216 protocan.o(.text.ProtoCanMsgToGeneralAddressSpace) + ProtoCanMsgToModbusCoil 0x08005589 Thumb Code 152 protocan.o(.text.ProtoCanMsgToModbusCoil) + ProtoCanMsgToModbusDiscrete 0x08005621 Thumb Code 154 protocan.o(.text.ProtoCanMsgToModbusDiscrete) + ProtoCanMsgToModbusHolding 0x080056bd Thumb Code 154 protocan.o(.text.ProtoCanMsgToModbusHolding) + ProtoCanMsgToModbusInput 0x08005759 Thumb Code 154 protocan.o(.text.ProtoCanMsgToModbusInput) + ProtoCanPulseCallback 0x080057f5 Thumb Code 212 protocan.o(.text.ProtoCanPulseCallback) + ProtoCanRxFifo0MsgPendingCallback 0x080058c9 Thumb Code 214 protocan.o(.text.ProtoCanRxFifo0MsgPendingCallback) + SVC_Handler 0x08005f05 Thumb Code 2 stm32f1xx_it.o(.text.SVC_Handler) + SysTick_Handler 0x08005f5d Thumb Code 8 stm32f1xx_it.o(.text.SysTick_Handler) + SystemClock_Config 0x08005f65 Thumb Code 156 main.o(.text.SystemClock_Config) + SystemInit 0x08006001 Thumb Code 2 system_stm32f1xx.o(.text.SystemInit) + TIM4_IRQHandler 0x08006005 Thumb Code 16 stm32f1xx_it.o(.text.TIM4_IRQHandler) + TIM_Base_SetConfig 0x08006015 Thumb Code 240 stm32f1xx_hal_tim.o(.text.TIM_Base_SetConfig) + TIM_ETR_SetConfig 0x08006105 Thumb Code 52 stm32f1xx_hal_tim.o(.text.TIM_ETR_SetConfig) + TIM_ResetCallback 0x08006165 Thumb Code 190 stm32f1xx_hal_tim.o(.text.TIM_ResetCallback) + TakeRxMsgToBuffer 0x080062c9 Thumb Code 208 protocan.o(.text.TakeRxMsgToBuffer) + USB_HP_CAN1_TX_IRQHandler 0x08006399 Thumb Code 16 stm32f1xx_it.o(.text.USB_HP_CAN1_TX_IRQHandler) + USB_LP_CAN1_RX0_IRQHandler 0x080063a9 Thumb Code 16 stm32f1xx_it.o(.text.USB_LP_CAN1_RX0_IRQHandler) + UsageFault_Handler 0x080063b9 Thumb Code 4 stm32f1xx_it.o(.text.UsageFault_Handler) + main 0x080064dd Thumb Code 102 main.o(.text.main) + AHBPrescTable 0x080065a4 Data 16 system_stm32f1xx.o(.rodata.AHBPrescTable) + APBPrescTable 0x080065b4 Data 8 system_stm32f1xx.o(.rodata.APBPrescTable) + Region$$Table$$Base 0x080065e0 Number 0 anon$$obj.o(Region$$Table) + Region$$Table$$Limit 0x08006600 Number 0 anon$$obj.o(Region$$Table) CurrentStep 0x20000000 Data 1 protocan.o(.data.CurrentStep) SystemCoreClock 0x20000004 Data 4 system_stm32f1xx.o(.data.SystemCoreClock) - filter1_id 0x20000008 Data 4 protocan.o(.data.filter1_id) - filter1_mask 0x2000000c Data 4 protocan.o(.data.filter1_mask) - filter2_mask 0x20000010 Data 4 protocan.o(.data.filter2_mask) - filter3_id 0x20000014 Data 4 protocan.o(.data.filter3_id) - filter3_mask 0x20000018 Data 4 protocan.o(.data.filter3_mask) - uwTickFreq 0x2000001c Data 1 stm32f1xx_hal.o(.data.uwTickFreq) - uwTickPrio 0x20000020 Data 4 stm32f1xx_hal.o(.data.uwTickPrio) - __libspace_start 0x20000028 Data 96 libspace.o(.bss) - CanErrors 0x20000088 Data 88 canerrorbox.o(.bss.CanErrors) - __temporary_stack_top$libspace 0x20000088 Data 0 libspace.o(.bss) - ControlFlags 0x200000e0 Data 4 protocan.o(.bss.ControlFlags) - Device_on_the_Network 0x200000e4 Data 2048 protocan.o(.bss.Device_on_the_Network) - LastStep 0x200008e4 Data 1 protocan.o(.bss.LastStep) - _HCAN 0x200008ec Data 4 protocan.o(.bss._HCAN) - _HRTC 0x200008f0 Data 4 protocan.o(.bss._HRTC) - _HTIM 0x200008f4 Data 4 protocan.o(.bss._HTIM) - filter2_id 0x200008f8 Data 4 protocan.o(.bss.filter2_id) - hcan 0x200008fc Data 100 can.o(.bss.hcan) - hrtc 0x20000960 Data 20 rtc.o(.bss.hrtc) - htim4 0x20000974 Data 180 tim.o(.bss.htim4) - rxMsg 0x20000a28 Data 2560 protocan.o(.bss.rxMsg) - uwTick 0x20001428 Data 4 stm32f1xx_hal.o(.bss.uwTick) + uwTickFreq 0x20000008 Data 1 stm32f1xx_hal.o(.data.uwTickFreq) + uwTickPrio 0x2000000c Data 4 stm32f1xx_hal.o(.data.uwTickPrio) + __libspace_start 0x20000010 Data 96 libspace.o(.bss) + CanErrors 0x20000070 Data 88 canerrorbox.o(.bss.CanErrors) + __temporary_stack_top$libspace 0x20000070 Data 0 libspace.o(.bss) + ControlFlags 0x200000c8 Data 4 protocan.o(.bss.ControlFlags) + Device_on_the_Network 0x200000cc Data 2048 protocan.o(.bss.Device_on_the_Network) + LastStep 0x200008cc Data 1 protocan.o(.bss.LastStep) + _HCAN 0x200008d4 Data 4 protocan.o(.bss._HCAN) + _HRTC 0x200008d8 Data 4 protocan.o(.bss._HRTC) + _HTIM 0x200008dc Data 4 protocan.o(.bss._HTIM) + hcan 0x200008e0 Data 100 can.o(.bss.hcan) + hrtc 0x20000944 Data 20 rtc.o(.bss.hrtc) + htim4 0x20000958 Data 180 tim.o(.bss.htim4) + rxMsg 0x20000a0c Data 2560 protocan.o(.bss.rxMsg) + uwTick 0x2000140c Data 4 stm32f1xx_hal.o(.bss.uwTick) @@ -2803,77 +2804,77 @@ Memory Map of the image Image Entry point : 0x080000ed - Load Region LR_IROM1 (Base: 0x08000000, Size: 0x00006458, Max: 0x00010000, ABSOLUTE) + Load Region LR_IROM1 (Base: 0x08000000, Size: 0x00006610, Max: 0x00010000, ABSOLUTE) - Execution Region ER_IROM1 (Exec base: 0x08000000, Load base: 0x08000000, Size: 0x0000642c, Max: 0x00010000, ABSOLUTE) + Execution Region ER_IROM1 (Exec base: 0x08000000, Load base: 0x08000000, Size: 0x00006600, Max: 0x00010000, ABSOLUTE) Exec Addr Load Addr Size Type Attr Idx E Section Name Object 0x08000000 0x08000000 0x000000ec Data RO 3 RESET startup_stm32f103xb.o - 0x080000ec 0x080000ec 0x00000008 Code RO 1207 * !!!main c_w.l(__main.o) - 0x080000f4 0x080000f4 0x00000034 Code RO 1372 !!!scatter c_w.l(__scatter.o) - 0x08000128 0x08000128 0x0000001a Code RO 1374 !!handler_copy c_w.l(__scatter_copy.o) + 0x080000ec 0x080000ec 0x00000008 Code RO 1206 * !!!main c_w.l(__main.o) + 0x080000f4 0x080000f4 0x00000034 Code RO 1371 !!!scatter c_w.l(__scatter.o) + 0x08000128 0x08000128 0x0000001a Code RO 1373 !!handler_copy c_w.l(__scatter_copy.o) 0x08000142 0x08000142 0x00000002 PAD - 0x08000144 0x08000144 0x0000001c Code RO 1376 !!handler_zi c_w.l(__scatter_zi.o) - 0x08000160 0x08000160 0x00000002 Code RO 1234 .ARM.Collect$$libinit$$00000000 c_w.l(libinit.o) - 0x08000162 0x08000162 0x00000000 Code RO 1241 .ARM.Collect$$libinit$$00000002 c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 1243 .ARM.Collect$$libinit$$00000004 c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 1245 .ARM.Collect$$libinit$$00000006 c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 1248 .ARM.Collect$$libinit$$0000000C c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 1250 .ARM.Collect$$libinit$$0000000E c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 1252 .ARM.Collect$$libinit$$00000010 c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 1255 .ARM.Collect$$libinit$$00000013 c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 1257 .ARM.Collect$$libinit$$00000015 c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 1259 .ARM.Collect$$libinit$$00000017 c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 1261 .ARM.Collect$$libinit$$00000019 c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 1263 .ARM.Collect$$libinit$$0000001B c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 1265 .ARM.Collect$$libinit$$0000001D c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 1267 .ARM.Collect$$libinit$$0000001F c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 1269 .ARM.Collect$$libinit$$00000021 c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 1271 .ARM.Collect$$libinit$$00000023 c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 1273 .ARM.Collect$$libinit$$00000025 c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 1275 .ARM.Collect$$libinit$$00000027 c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 1279 .ARM.Collect$$libinit$$0000002E c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 1281 .ARM.Collect$$libinit$$00000030 c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 1283 .ARM.Collect$$libinit$$00000032 c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000000 Code RO 1285 .ARM.Collect$$libinit$$00000034 c_w.l(libinit2.o) - 0x08000162 0x08000162 0x00000002 Code RO 1286 .ARM.Collect$$libinit$$00000035 c_w.l(libinit2.o) - 0x08000164 0x08000164 0x00000002 Code RO 1308 .ARM.Collect$$libshutdown$$00000000 c_w.l(libshutdown.o) - 0x08000166 0x08000166 0x00000000 Code RO 1323 .ARM.Collect$$libshutdown$$00000002 c_w.l(libshutdown2.o) - 0x08000166 0x08000166 0x00000000 Code RO 1325 .ARM.Collect$$libshutdown$$00000004 c_w.l(libshutdown2.o) - 0x08000166 0x08000166 0x00000000 Code RO 1328 .ARM.Collect$$libshutdown$$00000007 c_w.l(libshutdown2.o) - 0x08000166 0x08000166 0x00000000 Code RO 1331 .ARM.Collect$$libshutdown$$0000000A c_w.l(libshutdown2.o) - 0x08000166 0x08000166 0x00000000 Code RO 1333 .ARM.Collect$$libshutdown$$0000000C c_w.l(libshutdown2.o) - 0x08000166 0x08000166 0x00000000 Code RO 1336 .ARM.Collect$$libshutdown$$0000000F c_w.l(libshutdown2.o) - 0x08000166 0x08000166 0x00000002 Code RO 1337 .ARM.Collect$$libshutdown$$00000010 c_w.l(libshutdown2.o) - 0x08000168 0x08000168 0x00000000 Code RO 1209 .ARM.Collect$$rtentry$$00000000 c_w.l(__rtentry.o) - 0x08000168 0x08000168 0x00000000 Code RO 1211 .ARM.Collect$$rtentry$$00000002 c_w.l(__rtentry2.o) - 0x08000168 0x08000168 0x00000006 Code RO 1223 .ARM.Collect$$rtentry$$00000004 c_w.l(__rtentry4.o) - 0x0800016e 0x0800016e 0x00000000 Code RO 1213 .ARM.Collect$$rtentry$$00000009 c_w.l(__rtentry2.o) - 0x0800016e 0x0800016e 0x00000004 Code RO 1214 .ARM.Collect$$rtentry$$0000000A c_w.l(__rtentry2.o) - 0x08000172 0x08000172 0x00000000 Code RO 1216 .ARM.Collect$$rtentry$$0000000C c_w.l(__rtentry2.o) - 0x08000172 0x08000172 0x00000008 Code RO 1217 .ARM.Collect$$rtentry$$0000000D c_w.l(__rtentry2.o) - 0x0800017a 0x0800017a 0x00000002 Code RO 1238 .ARM.Collect$$rtexit$$00000000 c_w.l(rtexit.o) - 0x0800017c 0x0800017c 0x00000000 Code RO 1288 .ARM.Collect$$rtexit$$00000002 c_w.l(rtexit2.o) - 0x0800017c 0x0800017c 0x00000004 Code RO 1289 .ARM.Collect$$rtexit$$00000003 c_w.l(rtexit2.o) - 0x08000180 0x08000180 0x00000006 Code RO 1290 .ARM.Collect$$rtexit$$00000004 c_w.l(rtexit2.o) + 0x08000144 0x08000144 0x0000001c Code RO 1375 !!handler_zi c_w.l(__scatter_zi.o) + 0x08000160 0x08000160 0x00000002 Code RO 1233 .ARM.Collect$$libinit$$00000000 c_w.l(libinit.o) + 0x08000162 0x08000162 0x00000000 Code RO 1240 .ARM.Collect$$libinit$$00000002 c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 1242 .ARM.Collect$$libinit$$00000004 c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 1244 .ARM.Collect$$libinit$$00000006 c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 1247 .ARM.Collect$$libinit$$0000000C c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 1249 .ARM.Collect$$libinit$$0000000E c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 1251 .ARM.Collect$$libinit$$00000010 c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 1254 .ARM.Collect$$libinit$$00000013 c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 1256 .ARM.Collect$$libinit$$00000015 c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 1258 .ARM.Collect$$libinit$$00000017 c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 1260 .ARM.Collect$$libinit$$00000019 c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 1262 .ARM.Collect$$libinit$$0000001B c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 1264 .ARM.Collect$$libinit$$0000001D c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 1266 .ARM.Collect$$libinit$$0000001F c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 1268 .ARM.Collect$$libinit$$00000021 c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 1270 .ARM.Collect$$libinit$$00000023 c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 1272 .ARM.Collect$$libinit$$00000025 c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 1274 .ARM.Collect$$libinit$$00000027 c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 1278 .ARM.Collect$$libinit$$0000002E c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 1280 .ARM.Collect$$libinit$$00000030 c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 1282 .ARM.Collect$$libinit$$00000032 c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 1284 .ARM.Collect$$libinit$$00000034 c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000002 Code RO 1285 .ARM.Collect$$libinit$$00000035 c_w.l(libinit2.o) + 0x08000164 0x08000164 0x00000002 Code RO 1307 .ARM.Collect$$libshutdown$$00000000 c_w.l(libshutdown.o) + 0x08000166 0x08000166 0x00000000 Code RO 1322 .ARM.Collect$$libshutdown$$00000002 c_w.l(libshutdown2.o) + 0x08000166 0x08000166 0x00000000 Code RO 1324 .ARM.Collect$$libshutdown$$00000004 c_w.l(libshutdown2.o) + 0x08000166 0x08000166 0x00000000 Code RO 1327 .ARM.Collect$$libshutdown$$00000007 c_w.l(libshutdown2.o) + 0x08000166 0x08000166 0x00000000 Code RO 1330 .ARM.Collect$$libshutdown$$0000000A c_w.l(libshutdown2.o) + 0x08000166 0x08000166 0x00000000 Code RO 1332 .ARM.Collect$$libshutdown$$0000000C c_w.l(libshutdown2.o) + 0x08000166 0x08000166 0x00000000 Code RO 1335 .ARM.Collect$$libshutdown$$0000000F c_w.l(libshutdown2.o) + 0x08000166 0x08000166 0x00000002 Code RO 1336 .ARM.Collect$$libshutdown$$00000010 c_w.l(libshutdown2.o) + 0x08000168 0x08000168 0x00000000 Code RO 1208 .ARM.Collect$$rtentry$$00000000 c_w.l(__rtentry.o) + 0x08000168 0x08000168 0x00000000 Code RO 1210 .ARM.Collect$$rtentry$$00000002 c_w.l(__rtentry2.o) + 0x08000168 0x08000168 0x00000006 Code RO 1222 .ARM.Collect$$rtentry$$00000004 c_w.l(__rtentry4.o) + 0x0800016e 0x0800016e 0x00000000 Code RO 1212 .ARM.Collect$$rtentry$$00000009 c_w.l(__rtentry2.o) + 0x0800016e 0x0800016e 0x00000004 Code RO 1213 .ARM.Collect$$rtentry$$0000000A c_w.l(__rtentry2.o) + 0x08000172 0x08000172 0x00000000 Code RO 1215 .ARM.Collect$$rtentry$$0000000C c_w.l(__rtentry2.o) + 0x08000172 0x08000172 0x00000008 Code RO 1216 .ARM.Collect$$rtentry$$0000000D c_w.l(__rtentry2.o) + 0x0800017a 0x0800017a 0x00000002 Code RO 1237 .ARM.Collect$$rtexit$$00000000 c_w.l(rtexit.o) + 0x0800017c 0x0800017c 0x00000000 Code RO 1287 .ARM.Collect$$rtexit$$00000002 c_w.l(rtexit2.o) + 0x0800017c 0x0800017c 0x00000004 Code RO 1288 .ARM.Collect$$rtexit$$00000003 c_w.l(rtexit2.o) + 0x08000180 0x08000180 0x00000006 Code RO 1289 .ARM.Collect$$rtexit$$00000004 c_w.l(rtexit2.o) 0x08000186 0x08000186 0x00000002 PAD 0x08000188 0x08000188 0x00000040 Code RO 4 .text startup_stm32f103xb.o - 0x080001c8 0x080001c8 0x00000064 Code RO 1201 .text c_w.l(rt_memcpy_w.o) - 0x0800022c 0x0800022c 0x0000004e Code RO 1203 .text c_w.l(rt_memclr_w.o) - 0x0800027a 0x0800027a 0x00000006 Code RO 1205 .text c_w.l(heapauxi.o) - 0x08000280 0x08000280 0x0000004a Code RO 1225 .text c_w.l(sys_stackheap_outer.o) - 0x080002ca 0x080002ca 0x00000012 Code RO 1227 .text c_w.l(exit.o) - 0x080002dc 0x080002dc 0x00000008 Code RO 1235 .text c_w.l(libspace.o) - 0x080002e4 0x080002e4 0x0000000c Code RO 1298 .text c_w.l(sys_exit.o) - 0x080002f0 0x080002f0 0x00000002 Code RO 1313 .text c_w.l(use_no_semi.o) - 0x080002f2 0x080002f2 0x00000000 Code RO 1315 .text c_w.l(indicate_semi.o) + 0x080001c8 0x080001c8 0x00000064 Code RO 1200 .text c_w.l(rt_memcpy_w.o) + 0x0800022c 0x0800022c 0x0000004e Code RO 1202 .text c_w.l(rt_memclr_w.o) + 0x0800027a 0x0800027a 0x00000006 Code RO 1204 .text c_w.l(heapauxi.o) + 0x08000280 0x08000280 0x0000004a Code RO 1224 .text c_w.l(sys_stackheap_outer.o) + 0x080002ca 0x080002ca 0x00000012 Code RO 1226 .text c_w.l(exit.o) + 0x080002dc 0x080002dc 0x00000008 Code RO 1234 .text c_w.l(libspace.o) + 0x080002e4 0x080002e4 0x0000000c Code RO 1297 .text c_w.l(sys_exit.o) + 0x080002f0 0x080002f0 0x00000002 Code RO 1312 .text c_w.l(use_no_semi.o) + 0x080002f2 0x080002f2 0x00000000 Code RO 1314 .text c_w.l(indicate_semi.o) 0x080002f2 0x080002f2 0x00000002 PAD 0x080002f4 0x080002f4 0x0000001e Code RO 67 .text.AvailableCanRxMsg protocan.o 0x08000312 0x08000312 0x00000002 PAD - 0x08000314 0x08000314 0x00000004 Code RO 235 .text.BusFault_Handler stm32f1xx_it.o - 0x08000318 0x08000318 0x00000010 Code RO 251 .text.CAN1_RX1_IRQHandler stm32f1xx_it.o - 0x08000328 0x08000328 0x00000010 Code RO 253 .text.CAN1_SCE_IRQHandler stm32f1xx_it.o + 0x08000314 0x08000314 0x00000004 Code RO 234 .text.BusFault_Handler stm32f1xx_it.o + 0x08000318 0x08000318 0x00000010 Code RO 250 .text.CAN1_RX1_IRQHandler stm32f1xx_it.o + 0x08000328 0x08000328 0x00000010 Code RO 252 .text.CAN1_SCE_IRQHandler stm32f1xx_it.o 0x08000338 0x08000338 0x00000010 Code RO 21 .text.CanErrorCallbackACK canerrorbox.o 0x08000348 0x08000348 0x00000010 Code RO 25 .text.CanErrorCallbackBD canerrorbox.o 0x08000358 0x08000358 0x00000010 Code RO 15 .text.CanErrorCallbackBOF canerrorbox.o @@ -2896,281 +2897,284 @@ Memory Map of the image 0x08000468 0x08000468 0x00000010 Code RO 35 .text.CanErrorCallbackTXTERR0 canerrorbox.o 0x08000478 0x08000478 0x00000010 Code RO 39 .text.CanErrorCallbackTXTERR1 canerrorbox.o 0x08000488 0x08000488 0x00000010 Code RO 43 .text.CanErrorCallbackTXTERR2 canerrorbox.o - 0x08000498 0x08000498 0x0000007a Code RO 91 .text.CanRequestError protocan.o + 0x08000498 0x08000498 0x00000078 Code RO 91 .text.CanRequestError protocan.o + 0x08000510 0x08000510 0x00000002 Code RO 240 .text.DebugMon_Handler stm32f1xx_it.o 0x08000512 0x08000512 0x00000002 PAD - 0x08000514 0x08000514 0x00000002 Code RO 241 .text.DebugMon_Handler stm32f1xx_it.o - 0x08000516 0x08000516 0x00000002 PAD - 0x08000518 0x08000518 0x0000000e Code RO 169 .text.Error_Handler main.o - 0x08000526 0x08000526 0x00000002 PAD - 0x08000528 0x08000528 0x00000052 Code RO 349 .text.HAL_CAN_ActivateNotification stm32f1xx_hal_can.o - 0x0800057a 0x0800057a 0x00000002 PAD - 0x0800057c 0x0800057c 0x00000156 Code RO 335 .text.HAL_CAN_AddTxMessage stm32f1xx_hal_can.o - 0x080006d2 0x080006d2 0x00000002 PAD - 0x080006d4 0x080006d4 0x0000017a Code RO 325 .text.HAL_CAN_ConfigFilter stm32f1xx_hal_can.o - 0x0800084e 0x0800084e 0x00000002 PAD - 0x08000850 0x08000850 0x0000019e Code RO 55 .text.HAL_CAN_ErrorCallback canerrorbox.o - 0x080009ee 0x080009ee 0x00000002 PAD - 0x080009f0 0x080009f0 0x00000212 Code RO 345 .text.HAL_CAN_GetRxMessage stm32f1xx_hal_can.o - 0x08000c02 0x08000c02 0x00000002 PAD - 0x08000c04 0x08000c04 0x000003f2 Code RO 353 .text.HAL_CAN_IRQHandler stm32f1xx_hal_can.o - 0x08000ff6 0x08000ff6 0x00000002 PAD - 0x08000ff8 0x08000ff8 0x00000292 Code RO 285 .text.HAL_CAN_Init stm32f1xx_hal_can.o - 0x0800128a 0x0800128a 0x00000002 PAD - 0x0800128c 0x0800128c 0x00000056 Code RO 191 .text.HAL_CAN_MspDeInit can.o - 0x080012e2 0x080012e2 0x00000002 PAD - 0x080012e4 0x080012e4 0x000000e2 Code RO 189 .text.HAL_CAN_MspInit can.o - 0x080013c6 0x080013c6 0x00000002 PAD - 0x080013c8 0x080013c8 0x0000017e Code RO 321 .text.HAL_CAN_RegisterCallback stm32f1xx_hal_can.o - 0x08001546 0x08001546 0x00000002 PAD - 0x08001548 0x08001548 0x00000008 Code RO 289 .text.HAL_CAN_RxFifo0FullCallback stm32f1xx_hal_can.o - 0x08001550 0x08001550 0x00000008 Code RO 287 .text.HAL_CAN_RxFifo0MsgPendingCallback stm32f1xx_hal_can.o - 0x08001558 0x08001558 0x00000008 Code RO 293 .text.HAL_CAN_RxFifo1FullCallback stm32f1xx_hal_can.o - 0x08001560 0x08001560 0x00000008 Code RO 291 .text.HAL_CAN_RxFifo1MsgPendingCallback stm32f1xx_hal_can.o - 0x08001568 0x08001568 0x00000008 Code RO 307 .text.HAL_CAN_SleepCallback stm32f1xx_hal_can.o - 0x08001570 0x08001570 0x0000008a Code RO 327 .text.HAL_CAN_Start stm32f1xx_hal_can.o - 0x080015fa 0x080015fa 0x00000002 PAD - 0x080015fc 0x080015fc 0x00000008 Code RO 301 .text.HAL_CAN_TxMailbox0AbortCallback stm32f1xx_hal_can.o - 0x08001604 0x08001604 0x00000008 Code RO 295 .text.HAL_CAN_TxMailbox0CompleteCallback stm32f1xx_hal_can.o - 0x0800160c 0x0800160c 0x00000008 Code RO 303 .text.HAL_CAN_TxMailbox1AbortCallback stm32f1xx_hal_can.o - 0x08001614 0x08001614 0x00000008 Code RO 297 .text.HAL_CAN_TxMailbox1CompleteCallback stm32f1xx_hal_can.o - 0x0800161c 0x0800161c 0x00000008 Code RO 305 .text.HAL_CAN_TxMailbox2AbortCallback stm32f1xx_hal_can.o - 0x08001624 0x08001624 0x00000008 Code RO 299 .text.HAL_CAN_TxMailbox2CompleteCallback stm32f1xx_hal_can.o - 0x0800162c 0x0800162c 0x000001c6 Code RO 323 .text.HAL_CAN_UnRegisterCallback stm32f1xx_hal_can.o - 0x080017f2 0x080017f2 0x00000002 PAD - 0x080017f4 0x080017f4 0x00000008 Code RO 309 .text.HAL_CAN_WakeUpFromRxMsgCallback stm32f1xx_hal_can.o - 0x080017fc 0x080017fc 0x0000019e Code RO 484 .text.HAL_GPIO_DeInit stm32f1xx_hal_gpio.o - 0x0800199a 0x0800199a 0x00000002 PAD - 0x0800199c 0x0800199c 0x0000031e Code RO 482 .text.HAL_GPIO_Init stm32f1xx_hal_gpio.o - 0x08001cba 0x08001cba 0x00000002 PAD - 0x08001cbc 0x08001cbc 0x0000000c Code RO 380 .text.HAL_GetTick stm32f1xx_hal.o - 0x08001cc8 0x08001cc8 0x0000001a Code RO 378 .text.HAL_IncTick stm32f1xx_hal.o - 0x08001ce2 0x08001ce2 0x00000002 PAD - 0x08001ce4 0x08001ce4 0x00000026 Code RO 368 .text.HAL_Init stm32f1xx_hal.o - 0x08001d0a 0x08001d0a 0x00000002 PAD - 0x08001d0c 0x08001d0c 0x00000070 Code RO 370 .text.HAL_InitTick stm32f1xx_hal.o - 0x08001d7c 0x08001d7c 0x00000042 Code RO 264 .text.HAL_MspInit stm32f1xx_hal_msp.o - 0x08001dbe 0x08001dbe 0x00000002 PAD - 0x08001dc0 0x08001dc0 0x00000014 Code RO 554 .text.HAL_NVIC_DisableIRQ stm32f1xx_hal_cortex.o - 0x08001dd4 0x08001dd4 0x00000014 Code RO 550 .text.HAL_NVIC_EnableIRQ stm32f1xx_hal_cortex.o - 0x08001de8 0x08001de8 0x00000032 Code RO 542 .text.HAL_NVIC_SetPriority stm32f1xx_hal_cortex.o - 0x08001e1a 0x08001e1a 0x00000002 PAD - 0x08001e1c 0x08001e1c 0x00000010 Code RO 538 .text.HAL_NVIC_SetPriorityGrouping stm32f1xx_hal_cortex.o - 0x08001e2c 0x08001e2c 0x0000000c Code RO 605 .text.HAL_PWR_EnableBkUpAccess stm32f1xx_hal_pwr.o - 0x08001e38 0x08001e38 0x00000196 Code RO 471 .text.HAL_RCCEx_GetPeriphCLKFreq stm32f1xx_hal_rcc_ex.o - 0x08001fce 0x08001fce 0x00000002 PAD - 0x08001fd0 0x08001fd0 0x000001c8 Code RO 467 .text.HAL_RCCEx_PeriphCLKConfig stm32f1xx_hal_rcc_ex.o - 0x08002198 0x08002198 0x00000256 Code RO 434 .text.HAL_RCC_ClockConfig stm32f1xx_hal_rcc.o - 0x080023ee 0x080023ee 0x00000002 PAD - 0x080023f0 0x080023f0 0x0000000c Code RO 444 .text.HAL_RCC_GetHCLKFreq stm32f1xx_hal_rcc.o - 0x080023fc 0x080023fc 0x00000022 Code RO 448 .text.HAL_RCC_GetPCLK2Freq stm32f1xx_hal_rcc.o - 0x0800241e 0x0800241e 0x00000002 PAD - 0x08002420 0x08002420 0x000000bc Code RO 436 .text.HAL_RCC_GetSysClockFreq stm32f1xx_hal_rcc.o - 0x080024dc 0x080024dc 0x00000068 Code RO 438 .text.HAL_RCC_MCOConfig stm32f1xx_hal_rcc.o - 0x08002544 0x08002544 0x0000067a Code RO 430 .text.HAL_RCC_OscConfig stm32f1xx_hal_rcc.o - 0x08002bbe 0x08002bbe 0x00000002 PAD - 0x08002bc0 0x08002bc0 0x0000009a Code RO 782 .text.HAL_RTC_GetDate stm32f1xx_hal_rtc.o - 0x08002c5a 0x08002c5a 0x00000002 PAD - 0x08002c5c 0x08002c5c 0x000001b2 Code RO 770 .text.HAL_RTC_GetTime stm32f1xx_hal_rtc.o - 0x08002e0e 0x08002e0e 0x00000002 PAD - 0x08002e10 0x08002e10 0x0000012a Code RO 746 .text.HAL_RTC_Init stm32f1xx_hal_rtc.o - 0x08002f3a 0x08002f3a 0x00000002 PAD - 0x08002f3c 0x08002f3c 0x0000004c Code RO 203 .text.HAL_RTC_MspInit rtc.o - 0x08002f88 0x08002f88 0x0000017e Code RO 778 .text.HAL_RTC_SetDate stm32f1xx_hal_rtc.o - 0x08003106 0x08003106 0x00000002 PAD - 0x08003108 0x08003108 0x00000142 Code RO 760 .text.HAL_RTC_SetTime stm32f1xx_hal_rtc.o - 0x0800324a 0x0800324a 0x00000002 PAD - 0x0800324c 0x0800324c 0x00000064 Code RO 750 .text.HAL_RTC_WaitForSynchro stm32f1xx_hal_rtc.o - 0x080032b0 0x080032b0 0x00000010 Code RO 562 .text.HAL_SYSTICK_Config stm32f1xx_hal_cortex.o - 0x080032c0 0x080032c0 0x00000008 Code RO 1173 .text.HAL_TIMEx_BreakCallback stm32f1xx_hal_tim_ex.o - 0x080032c8 0x080032c8 0x00000008 Code RO 1169 .text.HAL_TIMEx_CommutCallback stm32f1xx_hal_tim_ex.o - 0x080032d0 0x080032d0 0x00000008 Code RO 1171 .text.HAL_TIMEx_CommutHalfCpltCallback stm32f1xx_hal_tim_ex.o - 0x080032d8 0x080032d8 0x00000008 Code RO 1101 .text.HAL_TIMEx_HallSensor_MspDeInit stm32f1xx_hal_tim_ex.o - 0x080032e0 0x080032e0 0x00000008 Code RO 1097 .text.HAL_TIMEx_HallSensor_MspInit stm32f1xx_hal_tim_ex.o - 0x080032e8 0x080032e8 0x000000dc Code RO 1163 .text.HAL_TIMEx_MasterConfigSynchronization stm32f1xx_hal_tim_ex.o - 0x080033c4 0x080033c4 0x000000b8 Code RO 844 .text.HAL_TIM_Base_Init stm32f1xx_hal_tim.o - 0x0800347c 0x0800347c 0x00000034 Code RO 219 .text.HAL_TIM_Base_MspDeInit tim.o - 0x080034b0 0x080034b0 0x0000004e Code RO 217 .text.HAL_TIM_Base_MspInit tim.o - 0x080034fe 0x080034fe 0x00000002 PAD - 0x08003500 0x08003500 0x00000184 Code RO 1028 .text.HAL_TIM_ConfigClockSource stm32f1xx_hal_tim.o - 0x08003684 0x08003684 0x00000008 Code RO 966 .text.HAL_TIM_Encoder_MspDeInit stm32f1xx_hal_tim.o - 0x0800368c 0x0800368c 0x00000008 Code RO 962 .text.HAL_TIM_Encoder_MspInit stm32f1xx_hal_tim.o - 0x08003694 0x08003694 0x00000008 Code RO 1064 .text.HAL_TIM_ErrorCallback stm32f1xx_hal_tim.o - 0x0800369c 0x0800369c 0x00000008 Code RO 1052 .text.HAL_TIM_IC_CaptureCallback stm32f1xx_hal_tim.o - 0x080036a4 0x080036a4 0x00000008 Code RO 1054 .text.HAL_TIM_IC_CaptureHalfCpltCallback stm32f1xx_hal_tim.o - 0x080036ac 0x080036ac 0x00000008 Code RO 926 .text.HAL_TIM_IC_MspDeInit stm32f1xx_hal_tim.o - 0x080036b4 0x080036b4 0x00000008 Code RO 922 .text.HAL_TIM_IC_MspInit stm32f1xx_hal_tim.o - 0x080036bc 0x080036bc 0x0000029a Code RO 980 .text.HAL_TIM_IRQHandler stm32f1xx_hal_tim.o - 0x08003956 0x08003956 0x00000002 PAD - 0x08003958 0x08003958 0x00000008 Code RO 1050 .text.HAL_TIM_OC_DelayElapsedCallback stm32f1xx_hal_tim.o - 0x08003960 0x08003960 0x00000008 Code RO 880 .text.HAL_TIM_OC_MspDeInit stm32f1xx_hal_tim.o - 0x08003968 0x08003968 0x00000008 Code RO 876 .text.HAL_TIM_OC_MspInit stm32f1xx_hal_tim.o - 0x08003970 0x08003970 0x00000008 Code RO 950 .text.HAL_TIM_OnePulse_MspDeInit stm32f1xx_hal_tim.o - 0x08003978 0x08003978 0x00000008 Code RO 946 .text.HAL_TIM_OnePulse_MspInit stm32f1xx_hal_tim.o - 0x08003980 0x08003980 0x00000008 Code RO 906 .text.HAL_TIM_PWM_MspDeInit stm32f1xx_hal_tim.o - 0x08003988 0x08003988 0x00000008 Code RO 902 .text.HAL_TIM_PWM_MspInit stm32f1xx_hal_tim.o - 0x08003990 0x08003990 0x00000008 Code RO 1056 .text.HAL_TIM_PWM_PulseFinishedCallback stm32f1xx_hal_tim.o - 0x08003998 0x08003998 0x00000008 Code RO 1058 .text.HAL_TIM_PWM_PulseFinishedHalfCpltCallback stm32f1xx_hal_tim.o - 0x080039a0 0x080039a0 0x00000008 Code RO 1046 .text.HAL_TIM_PeriodElapsedCallback stm32f1xx_hal_tim.o - 0x080039a8 0x080039a8 0x00000008 Code RO 1048 .text.HAL_TIM_PeriodElapsedHalfCpltCallback stm32f1xx_hal_tim.o - 0x080039b0 0x080039b0 0x000002a2 Code RO 1066 .text.HAL_TIM_RegisterCallback stm32f1xx_hal_tim.o - 0x08003c52 0x08003c52 0x00000002 PAD - 0x08003c54 0x08003c54 0x00000008 Code RO 1060 .text.HAL_TIM_TriggerCallback stm32f1xx_hal_tim.o - 0x08003c5c 0x08003c5c 0x00000008 Code RO 1062 .text.HAL_TIM_TriggerHalfCpltCallback stm32f1xx_hal_tim.o - 0x08003c64 0x08003c64 0x00000384 Code RO 1068 .text.HAL_TIM_UnRegisterCallback stm32f1xx_hal_tim.o - 0x08003fe8 0x08003fe8 0x00000004 Code RO 231 .text.HardFault_Handler stm32f1xx_it.o - 0x08003fec 0x08003fec 0x0000008e Code RO 65 .text.IsLeapYear protocan.o - 0x0800407a 0x0800407a 0x00000002 PAD - 0x0800407c 0x0800407c 0x0000004e Code RO 187 .text.MX_CAN_Init can.o - 0x080040ca 0x080040ca 0x00000002 PAD - 0x080040cc 0x080040cc 0x0000004a Code RO 179 .text.MX_GPIO_Init gpio.o - 0x08004116 0x08004116 0x00000002 PAD - 0x08004118 0x08004118 0x00000094 Code RO 201 .text.MX_RTC_Init rtc.o - 0x080041ac 0x080041ac 0x00000086 Code RO 215 .text.MX_TIM4_Init tim.o - 0x08004232 0x08004232 0x00000002 PAD - 0x08004234 0x08004234 0x00000004 Code RO 233 .text.MemManage_Handler stm32f1xx_it.o - 0x08004238 0x08004238 0x00000004 Code RO 229 .text.NMI_Handler stm32f1xx_it.o - 0x0800423c 0x0800423c 0x0000006c Code RO 548 .text.NVIC_EncodePriority stm32f1xx_hal_cortex.o - 0x080042a8 0x080042a8 0x000000e8 Code RO 81 .text.PROTOCAN_AnalogProcessing protocan.o - 0x08004390 0x08004390 0x000000c4 Code RO 83 .text.PROTOCAN_BroadcastProcessing protocan.o - 0x08004454 0x08004454 0x00000064 Code RO 139 .text.PROTOCAN_CONFIG_FILTER protocan.o - 0x080044b8 0x080044b8 0x00000046 Code RO 69 .text.PROTOCAN_DEINIT protocan.o - 0x080044fe 0x080044fe 0x00000002 PAD - 0x08004500 0x08004500 0x00000114 Code RO 85 .text.PROTOCAN_DiscreticProcessing protocan.o - 0x08004614 0x08004614 0x00000052 Code RO 77 .text.PROTOCAN_FILTERS protocan.o - 0x08004666 0x08004666 0x00000002 PAD - 0x08004668 0x08004668 0x000000d8 Code RO 87 .text.PROTOCAN_GeneralAddressSpace_Answer protocan.o - 0x08004740 0x08004740 0x00000108 Code RO 71 .text.PROTOCAN_INIT protocan.o - 0x08004848 0x08004848 0x000002e0 Code RO 79 .text.PROTOCAN_LOOP protocan.o - 0x08004b28 0x08004b28 0x000000c4 Code RO 89 .text.PROTOCAN_ModbusProcessing protocan.o - 0x08004bec 0x08004bec 0x000000a4 Code RO 113 .text.PROTOCAN_RTC_SYNC protocan.o - 0x08004c90 0x08004c90 0x00000002 Code RO 243 .text.PendSV_Handler stm32f1xx_it.o - 0x08004c92 0x08004c92 0x00000002 PAD - 0x08004c94 0x08004c94 0x0000010c Code RO 99 .text.ProtoCanMsgToAnalogISens protocan.o - 0x08004da0 0x08004da0 0x0000010c Code RO 101 .text.ProtoCanMsgToAnalogTSens protocan.o - 0x08004eac 0x08004eac 0x00000086 Code RO 95 .text.ProtoCanMsgToAnalogUSTAVKI protocan.o - 0x08004f32 0x08004f32 0x00000002 PAD - 0x08004f34 0x08004f34 0x0000010c Code RO 97 .text.ProtoCanMsgToAnalogUSens protocan.o - 0x08005040 0x08005040 0x00000080 Code RO 93 .text.ProtoCanMsgToAnalogUniversal protocan.o - 0x080050c0 0x080050c0 0x0000002e Code RO 105 .text.ProtoCanMsgToBroadcastOnOff protocan.o - 0x080050ee 0x080050ee 0x00000002 PAD - 0x080050f0 0x080050f0 0x00000092 Code RO 107 .text.ProtoCanMsgToBroadcastRestart protocan.o - 0x08005182 0x08005182 0x00000002 PAD - 0x08005184 0x08005184 0x000000a8 Code RO 109 .text.ProtoCanMsgToBroadcastRtcSetup protocan.o - 0x0800522c 0x0800522c 0x000000da Code RO 103 .text.ProtoCanMsgToBroadcastStatus protocan.o - 0x08005306 0x08005306 0x00000002 PAD - 0x08005308 0x08005308 0x00000018 Code RO 115 .text.ProtoCanMsgToDiscreteAccident protocan.o - 0x08005320 0x08005320 0x00000018 Code RO 125 .text.ProtoCanMsgToDiscreteChangeMode protocan.o - 0x08005338 0x08005338 0x00000018 Code RO 119 .text.ProtoCanMsgToDiscreteControlSignals protocan.o - 0x08005350 0x08005350 0x00000018 Code RO 121 .text.ProtoCanMsgToDiscreteFlags protocan.o - 0x08005368 0x08005368 0x00000018 Code RO 127 .text.ProtoCanMsgToDiscreteRequestListOfParameters protocan.o - 0x08005380 0x08005380 0x00000018 Code RO 123 .text.ProtoCanMsgToDiscreteReset protocan.o - 0x08005398 0x08005398 0x00000018 Code RO 117 .text.ProtoCanMsgToDiscreteWarning protocan.o - 0x080053b0 0x080053b0 0x0000009a Code RO 129 .text.ProtoCanMsgToModbusCoil protocan.o - 0x0800544a 0x0800544a 0x00000002 PAD - 0x0800544c 0x0800544c 0x0000009c Code RO 131 .text.ProtoCanMsgToModbusDiscrete protocan.o - 0x080054e8 0x080054e8 0x0000009c Code RO 133 .text.ProtoCanMsgToModbusHolding protocan.o - 0x08005584 0x08005584 0x0000009c Code RO 135 .text.ProtoCanMsgToModbusInput protocan.o - 0x08005620 0x08005620 0x000000d4 Code RO 75 .text.ProtoCanPulseCallback protocan.o - 0x080056f4 0x080056f4 0x000000d6 Code RO 73 .text.ProtoCanRxFifo0MsgPendingCallback protocan.o - 0x080057ca 0x080057ca 0x00000002 PAD - 0x080057cc 0x080057cc 0x0000003a Code RO 432 .text.RCC_Delay stm32f1xx_hal_rcc.o - 0x08005806 0x08005806 0x00000002 PAD - 0x08005808 0x08005808 0x0000002a Code RO 762 .text.RTC_Bcd2ToByte stm32f1xx_hal_rtc.o - 0x08005832 0x08005832 0x00000002 PAD - 0x08005834 0x08005834 0x0000003a Code RO 776 .text.RTC_ByteToBcd2 stm32f1xx_hal_rtc.o - 0x0800586e 0x0800586e 0x00000002 PAD - 0x08005870 0x08005870 0x00000172 Code RO 774 .text.RTC_DateUpdate stm32f1xx_hal_rtc.o - 0x080059e2 0x080059e2 0x00000002 PAD - 0x080059e4 0x080059e4 0x00000056 Code RO 752 .text.RTC_EnterInitMode stm32f1xx_hal_rtc.o - 0x08005a3a 0x08005a3a 0x00000002 PAD - 0x08005a3c 0x08005a3c 0x00000056 Code RO 754 .text.RTC_ExitInitMode stm32f1xx_hal_rtc.o - 0x08005a92 0x08005a92 0x00000002 PAD - 0x08005a94 0x08005a94 0x00000078 Code RO 800 .text.RTC_IsLeapYear stm32f1xx_hal_rtc.o - 0x08005b0c 0x08005b0c 0x00000032 Code RO 766 .text.RTC_ReadAlarmCounter stm32f1xx_hal_rtc.o - 0x08005b3e 0x08005b3e 0x00000002 PAD - 0x08005b40 0x08005b40 0x0000006a Code RO 772 .text.RTC_ReadTimeCounter stm32f1xx_hal_rtc.o - 0x08005baa 0x08005baa 0x00000002 PAD - 0x08005bac 0x08005bac 0x000000e2 Code RO 780 .text.RTC_WeekDayNum stm32f1xx_hal_rtc.o - 0x08005c8e 0x08005c8e 0x00000002 PAD - 0x08005c90 0x08005c90 0x00000050 Code RO 768 .text.RTC_WriteAlarmCounter stm32f1xx_hal_rtc.o - 0x08005ce0 0x08005ce0 0x00000050 Code RO 764 .text.RTC_WriteTimeCounter stm32f1xx_hal_rtc.o - 0x08005d30 0x08005d30 0x00000002 Code RO 239 .text.SVC_Handler stm32f1xx_it.o - 0x08005d32 0x08005d32 0x00000002 PAD - 0x08005d34 0x08005d34 0x00000052 Code RO 564 .text.SysTick_Config stm32f1xx_hal_cortex.o - 0x08005d86 0x08005d86 0x00000002 PAD - 0x08005d88 0x08005d88 0x00000008 Code RO 245 .text.SysTick_Handler stm32f1xx_it.o - 0x08005d90 0x08005d90 0x0000009c Code RO 167 .text.SystemClock_Config main.o - 0x08005e2c 0x08005e2c 0x00000002 Code RO 1186 .text.SystemInit system_stm32f1xx.o - 0x08005e2e 0x08005e2e 0x00000002 PAD - 0x08005e30 0x08005e30 0x00000010 Code RO 255 .text.TIM4_IRQHandler stm32f1xx_it.o - 0x08005e40 0x08005e40 0x000000f0 Code RO 850 .text.TIM_Base_SetConfig stm32f1xx_hal_tim.o - 0x08005f30 0x08005f30 0x00000034 Code RO 1026 .text.TIM_ETR_SetConfig stm32f1xx_hal_tim.o - 0x08005f64 0x08005f64 0x0000002a Code RO 1032 .text.TIM_ITRx_SetConfig stm32f1xx_hal_tim.o - 0x08005f8e 0x08005f8e 0x00000002 PAD - 0x08005f90 0x08005f90 0x000000be Code RO 846 .text.TIM_ResetCallback stm32f1xx_hal_tim.o - 0x0800604e 0x0800604e 0x00000002 PAD - 0x08006050 0x08006050 0x00000050 Code RO 1030 .text.TIM_TI1_ConfigInputStage stm32f1xx_hal_tim.o - 0x080060a0 0x080060a0 0x00000052 Code RO 1034 .text.TIM_TI2_ConfigInputStage stm32f1xx_hal_tim.o - 0x080060f2 0x080060f2 0x00000002 PAD - 0x080060f4 0x080060f4 0x000000d0 Code RO 137 .text.TakeRxMsgToBuffer protocan.o - 0x080061c4 0x080061c4 0x00000010 Code RO 247 .text.USB_HP_CAN1_TX_IRQHandler stm32f1xx_it.o - 0x080061d4 0x080061d4 0x00000010 Code RO 249 .text.USB_LP_CAN1_RX0_IRQHandler stm32f1xx_it.o - 0x080061e4 0x080061e4 0x00000004 Code RO 237 .text.UsageFault_Handler stm32f1xx_it.o - 0x080061e8 0x080061e8 0x00000038 Code RO 556 .text.__NVIC_DisableIRQ stm32f1xx_hal_cortex.o - 0x08006220 0x08006220 0x00000030 Code RO 552 .text.__NVIC_EnableIRQ stm32f1xx_hal_cortex.o - 0x08006250 0x08006250 0x00000010 Code RO 544 .text.__NVIC_GetPriorityGrouping stm32f1xx_hal_cortex.o - 0x08006260 0x08006260 0x00000042 Code RO 546 .text.__NVIC_SetPriority stm32f1xx_hal_cortex.o - 0x080062a2 0x080062a2 0x00000002 PAD - 0x080062a4 0x080062a4 0x0000003c Code RO 540 .text.__NVIC_SetPriorityGrouping stm32f1xx_hal_cortex.o - 0x080062e0 0x080062e0 0x00000026 Code RO 111 .text.__NVIC_SystemReset protocan.o - 0x08006306 0x08006306 0x00000002 PAD - 0x08006308 0x08006308 0x00000066 Code RO 165 .text.main main.o - 0x0800636e 0x0800636e 0x00000002 PAD - 0x08006370 0x08006370 0x00000060 Data RO 148 .rodata..L__const.ProtoCanMsgToBroadcastRtcSetup.DaysCount_Normal protocan.o - 0x080063d0 0x080063d0 0x00000010 Data RO 1191 .rodata.AHBPrescTable system_stm32f1xx.o - 0x080063e0 0x080063e0 0x00000008 Data RO 1192 .rodata.APBPrescTable system_stm32f1xx.o - 0x080063e8 0x080063e8 0x00000010 Data RO 473 .rodata.HAL_RCCEx_GetPeriphCLKFreq.aPLLMULFactorTable stm32f1xx_hal_rcc_ex.o - 0x080063f8 0x080063f8 0x00000002 Data RO 474 .rodata.HAL_RCCEx_GetPeriphCLKFreq.aPredivFactorTable stm32f1xx_hal_rcc_ex.o - 0x080063fa 0x080063fa 0x00000010 Data RO 458 .rodata.HAL_RCC_GetSysClockFreq.aPLLMULFactorTable stm32f1xx_hal_rcc.o - 0x0800640a 0x0800640a 0x00000002 Data RO 459 .rodata.HAL_RCC_GetSysClockFreq.aPredivFactorTable stm32f1xx_hal_rcc.o - 0x0800640c 0x0800640c 0x00000020 Data RO 1371 Region$$Table anon$$obj.o + 0x08000514 0x08000514 0x0000000e Code RO 168 .text.Error_Handler main.o + 0x08000522 0x08000522 0x00000002 PAD + 0x08000524 0x08000524 0x00000052 Code RO 348 .text.HAL_CAN_ActivateNotification stm32f1xx_hal_can.o + 0x08000576 0x08000576 0x00000002 PAD + 0x08000578 0x08000578 0x00000156 Code RO 334 .text.HAL_CAN_AddTxMessage stm32f1xx_hal_can.o + 0x080006ce 0x080006ce 0x00000002 PAD + 0x080006d0 0x080006d0 0x0000017a Code RO 324 .text.HAL_CAN_ConfigFilter stm32f1xx_hal_can.o + 0x0800084a 0x0800084a 0x00000002 PAD + 0x0800084c 0x0800084c 0x0000019e Code RO 55 .text.HAL_CAN_ErrorCallback canerrorbox.o + 0x080009ea 0x080009ea 0x00000002 PAD + 0x080009ec 0x080009ec 0x00000212 Code RO 344 .text.HAL_CAN_GetRxMessage stm32f1xx_hal_can.o + 0x08000bfe 0x08000bfe 0x00000002 PAD + 0x08000c00 0x08000c00 0x000003f2 Code RO 352 .text.HAL_CAN_IRQHandler stm32f1xx_hal_can.o + 0x08000ff2 0x08000ff2 0x00000002 PAD + 0x08000ff4 0x08000ff4 0x00000292 Code RO 284 .text.HAL_CAN_Init stm32f1xx_hal_can.o + 0x08001286 0x08001286 0x00000002 PAD + 0x08001288 0x08001288 0x00000056 Code RO 190 .text.HAL_CAN_MspDeInit can.o + 0x080012de 0x080012de 0x00000002 PAD + 0x080012e0 0x080012e0 0x000000e2 Code RO 188 .text.HAL_CAN_MspInit can.o + 0x080013c2 0x080013c2 0x00000002 PAD + 0x080013c4 0x080013c4 0x0000017e Code RO 320 .text.HAL_CAN_RegisterCallback stm32f1xx_hal_can.o + 0x08001542 0x08001542 0x00000002 PAD + 0x08001544 0x08001544 0x00000008 Code RO 288 .text.HAL_CAN_RxFifo0FullCallback stm32f1xx_hal_can.o + 0x0800154c 0x0800154c 0x00000008 Code RO 286 .text.HAL_CAN_RxFifo0MsgPendingCallback stm32f1xx_hal_can.o + 0x08001554 0x08001554 0x00000008 Code RO 292 .text.HAL_CAN_RxFifo1FullCallback stm32f1xx_hal_can.o + 0x0800155c 0x0800155c 0x00000008 Code RO 290 .text.HAL_CAN_RxFifo1MsgPendingCallback stm32f1xx_hal_can.o + 0x08001564 0x08001564 0x00000008 Code RO 306 .text.HAL_CAN_SleepCallback stm32f1xx_hal_can.o + 0x0800156c 0x0800156c 0x0000008a Code RO 326 .text.HAL_CAN_Start stm32f1xx_hal_can.o + 0x080015f6 0x080015f6 0x00000002 PAD + 0x080015f8 0x080015f8 0x00000008 Code RO 300 .text.HAL_CAN_TxMailbox0AbortCallback stm32f1xx_hal_can.o + 0x08001600 0x08001600 0x00000008 Code RO 294 .text.HAL_CAN_TxMailbox0CompleteCallback stm32f1xx_hal_can.o + 0x08001608 0x08001608 0x00000008 Code RO 302 .text.HAL_CAN_TxMailbox1AbortCallback stm32f1xx_hal_can.o + 0x08001610 0x08001610 0x00000008 Code RO 296 .text.HAL_CAN_TxMailbox1CompleteCallback stm32f1xx_hal_can.o + 0x08001618 0x08001618 0x00000008 Code RO 304 .text.HAL_CAN_TxMailbox2AbortCallback stm32f1xx_hal_can.o + 0x08001620 0x08001620 0x00000008 Code RO 298 .text.HAL_CAN_TxMailbox2CompleteCallback stm32f1xx_hal_can.o + 0x08001628 0x08001628 0x000001c6 Code RO 322 .text.HAL_CAN_UnRegisterCallback stm32f1xx_hal_can.o + 0x080017ee 0x080017ee 0x00000002 PAD + 0x080017f0 0x080017f0 0x00000008 Code RO 308 .text.HAL_CAN_WakeUpFromRxMsgCallback stm32f1xx_hal_can.o + 0x080017f8 0x080017f8 0x0000019e Code RO 483 .text.HAL_GPIO_DeInit stm32f1xx_hal_gpio.o + 0x08001996 0x08001996 0x00000002 PAD + 0x08001998 0x08001998 0x0000031e Code RO 481 .text.HAL_GPIO_Init stm32f1xx_hal_gpio.o + 0x08001cb6 0x08001cb6 0x00000002 PAD + 0x08001cb8 0x08001cb8 0x0000000c Code RO 379 .text.HAL_GetTick stm32f1xx_hal.o + 0x08001cc4 0x08001cc4 0x0000001a Code RO 377 .text.HAL_IncTick stm32f1xx_hal.o + 0x08001cde 0x08001cde 0x00000002 PAD + 0x08001ce0 0x08001ce0 0x00000026 Code RO 367 .text.HAL_Init stm32f1xx_hal.o + 0x08001d06 0x08001d06 0x00000002 PAD + 0x08001d08 0x08001d08 0x00000070 Code RO 369 .text.HAL_InitTick stm32f1xx_hal.o + 0x08001d78 0x08001d78 0x00000042 Code RO 263 .text.HAL_MspInit stm32f1xx_hal_msp.o + 0x08001dba 0x08001dba 0x00000002 PAD + 0x08001dbc 0x08001dbc 0x00000014 Code RO 553 .text.HAL_NVIC_DisableIRQ stm32f1xx_hal_cortex.o + 0x08001dd0 0x08001dd0 0x00000014 Code RO 549 .text.HAL_NVIC_EnableIRQ stm32f1xx_hal_cortex.o + 0x08001de4 0x08001de4 0x00000032 Code RO 541 .text.HAL_NVIC_SetPriority stm32f1xx_hal_cortex.o + 0x08001e16 0x08001e16 0x00000002 PAD + 0x08001e18 0x08001e18 0x00000010 Code RO 537 .text.HAL_NVIC_SetPriorityGrouping stm32f1xx_hal_cortex.o + 0x08001e28 0x08001e28 0x0000000c Code RO 604 .text.HAL_PWR_EnableBkUpAccess stm32f1xx_hal_pwr.o + 0x08001e34 0x08001e34 0x00000196 Code RO 470 .text.HAL_RCCEx_GetPeriphCLKFreq stm32f1xx_hal_rcc_ex.o + 0x08001fca 0x08001fca 0x00000002 PAD + 0x08001fcc 0x08001fcc 0x000001c8 Code RO 466 .text.HAL_RCCEx_PeriphCLKConfig stm32f1xx_hal_rcc_ex.o + 0x08002194 0x08002194 0x00000256 Code RO 433 .text.HAL_RCC_ClockConfig stm32f1xx_hal_rcc.o + 0x080023ea 0x080023ea 0x00000002 PAD + 0x080023ec 0x080023ec 0x0000000c Code RO 443 .text.HAL_RCC_GetHCLKFreq stm32f1xx_hal_rcc.o + 0x080023f8 0x080023f8 0x00000022 Code RO 447 .text.HAL_RCC_GetPCLK2Freq stm32f1xx_hal_rcc.o + 0x0800241a 0x0800241a 0x00000002 PAD + 0x0800241c 0x0800241c 0x000000bc Code RO 435 .text.HAL_RCC_GetSysClockFreq stm32f1xx_hal_rcc.o + 0x080024d8 0x080024d8 0x00000068 Code RO 437 .text.HAL_RCC_MCOConfig stm32f1xx_hal_rcc.o + 0x08002540 0x08002540 0x0000067a Code RO 429 .text.HAL_RCC_OscConfig stm32f1xx_hal_rcc.o + 0x08002bba 0x08002bba 0x00000002 PAD + 0x08002bbc 0x08002bbc 0x0000009a Code RO 781 .text.HAL_RTC_GetDate stm32f1xx_hal_rtc.o + 0x08002c56 0x08002c56 0x00000002 PAD + 0x08002c58 0x08002c58 0x000001b2 Code RO 769 .text.HAL_RTC_GetTime stm32f1xx_hal_rtc.o + 0x08002e0a 0x08002e0a 0x00000002 PAD + 0x08002e0c 0x08002e0c 0x0000012a Code RO 745 .text.HAL_RTC_Init stm32f1xx_hal_rtc.o + 0x08002f36 0x08002f36 0x00000002 PAD + 0x08002f38 0x08002f38 0x0000004c Code RO 202 .text.HAL_RTC_MspInit rtc.o + 0x08002f84 0x08002f84 0x0000017e Code RO 777 .text.HAL_RTC_SetDate stm32f1xx_hal_rtc.o + 0x08003102 0x08003102 0x00000002 PAD + 0x08003104 0x08003104 0x00000142 Code RO 759 .text.HAL_RTC_SetTime stm32f1xx_hal_rtc.o + 0x08003246 0x08003246 0x00000002 PAD + 0x08003248 0x08003248 0x00000064 Code RO 749 .text.HAL_RTC_WaitForSynchro stm32f1xx_hal_rtc.o + 0x080032ac 0x080032ac 0x00000010 Code RO 561 .text.HAL_SYSTICK_Config stm32f1xx_hal_cortex.o + 0x080032bc 0x080032bc 0x00000008 Code RO 1172 .text.HAL_TIMEx_BreakCallback stm32f1xx_hal_tim_ex.o + 0x080032c4 0x080032c4 0x00000008 Code RO 1168 .text.HAL_TIMEx_CommutCallback stm32f1xx_hal_tim_ex.o + 0x080032cc 0x080032cc 0x00000008 Code RO 1170 .text.HAL_TIMEx_CommutHalfCpltCallback stm32f1xx_hal_tim_ex.o + 0x080032d4 0x080032d4 0x00000008 Code RO 1100 .text.HAL_TIMEx_HallSensor_MspDeInit stm32f1xx_hal_tim_ex.o + 0x080032dc 0x080032dc 0x00000008 Code RO 1096 .text.HAL_TIMEx_HallSensor_MspInit stm32f1xx_hal_tim_ex.o + 0x080032e4 0x080032e4 0x000000dc Code RO 1162 .text.HAL_TIMEx_MasterConfigSynchronization stm32f1xx_hal_tim_ex.o + 0x080033c0 0x080033c0 0x000000b8 Code RO 843 .text.HAL_TIM_Base_Init stm32f1xx_hal_tim.o + 0x08003478 0x08003478 0x00000034 Code RO 218 .text.HAL_TIM_Base_MspDeInit tim.o + 0x080034ac 0x080034ac 0x0000004e Code RO 216 .text.HAL_TIM_Base_MspInit tim.o + 0x080034fa 0x080034fa 0x00000002 PAD + 0x080034fc 0x080034fc 0x00000184 Code RO 1027 .text.HAL_TIM_ConfigClockSource stm32f1xx_hal_tim.o + 0x08003680 0x08003680 0x00000008 Code RO 965 .text.HAL_TIM_Encoder_MspDeInit stm32f1xx_hal_tim.o + 0x08003688 0x08003688 0x00000008 Code RO 961 .text.HAL_TIM_Encoder_MspInit stm32f1xx_hal_tim.o + 0x08003690 0x08003690 0x00000008 Code RO 1063 .text.HAL_TIM_ErrorCallback stm32f1xx_hal_tim.o + 0x08003698 0x08003698 0x00000008 Code RO 1051 .text.HAL_TIM_IC_CaptureCallback stm32f1xx_hal_tim.o + 0x080036a0 0x080036a0 0x00000008 Code RO 1053 .text.HAL_TIM_IC_CaptureHalfCpltCallback stm32f1xx_hal_tim.o + 0x080036a8 0x080036a8 0x00000008 Code RO 925 .text.HAL_TIM_IC_MspDeInit stm32f1xx_hal_tim.o + 0x080036b0 0x080036b0 0x00000008 Code RO 921 .text.HAL_TIM_IC_MspInit stm32f1xx_hal_tim.o + 0x080036b8 0x080036b8 0x0000029a Code RO 979 .text.HAL_TIM_IRQHandler stm32f1xx_hal_tim.o + 0x08003952 0x08003952 0x00000002 PAD + 0x08003954 0x08003954 0x00000008 Code RO 1049 .text.HAL_TIM_OC_DelayElapsedCallback stm32f1xx_hal_tim.o + 0x0800395c 0x0800395c 0x00000008 Code RO 879 .text.HAL_TIM_OC_MspDeInit stm32f1xx_hal_tim.o + 0x08003964 0x08003964 0x00000008 Code RO 875 .text.HAL_TIM_OC_MspInit stm32f1xx_hal_tim.o + 0x0800396c 0x0800396c 0x00000008 Code RO 949 .text.HAL_TIM_OnePulse_MspDeInit stm32f1xx_hal_tim.o + 0x08003974 0x08003974 0x00000008 Code RO 945 .text.HAL_TIM_OnePulse_MspInit stm32f1xx_hal_tim.o + 0x0800397c 0x0800397c 0x00000008 Code RO 905 .text.HAL_TIM_PWM_MspDeInit stm32f1xx_hal_tim.o + 0x08003984 0x08003984 0x00000008 Code RO 901 .text.HAL_TIM_PWM_MspInit stm32f1xx_hal_tim.o + 0x0800398c 0x0800398c 0x00000008 Code RO 1055 .text.HAL_TIM_PWM_PulseFinishedCallback stm32f1xx_hal_tim.o + 0x08003994 0x08003994 0x00000008 Code RO 1057 .text.HAL_TIM_PWM_PulseFinishedHalfCpltCallback stm32f1xx_hal_tim.o + 0x0800399c 0x0800399c 0x00000008 Code RO 1045 .text.HAL_TIM_PeriodElapsedCallback stm32f1xx_hal_tim.o + 0x080039a4 0x080039a4 0x00000008 Code RO 1047 .text.HAL_TIM_PeriodElapsedHalfCpltCallback stm32f1xx_hal_tim.o + 0x080039ac 0x080039ac 0x000002a2 Code RO 1065 .text.HAL_TIM_RegisterCallback stm32f1xx_hal_tim.o + 0x08003c4e 0x08003c4e 0x00000002 PAD + 0x08003c50 0x08003c50 0x00000008 Code RO 1059 .text.HAL_TIM_TriggerCallback stm32f1xx_hal_tim.o + 0x08003c58 0x08003c58 0x00000008 Code RO 1061 .text.HAL_TIM_TriggerHalfCpltCallback stm32f1xx_hal_tim.o + 0x08003c60 0x08003c60 0x00000384 Code RO 1067 .text.HAL_TIM_UnRegisterCallback stm32f1xx_hal_tim.o + 0x08003fe4 0x08003fe4 0x00000004 Code RO 230 .text.HardFault_Handler stm32f1xx_it.o + 0x08003fe8 0x08003fe8 0x0000008e Code RO 65 .text.IsLeapYear protocan.o + 0x08004076 0x08004076 0x00000002 PAD + 0x08004078 0x08004078 0x0000004e Code RO 186 .text.MX_CAN_Init can.o + 0x080040c6 0x080040c6 0x00000002 PAD + 0x080040c8 0x080040c8 0x0000004a Code RO 178 .text.MX_GPIO_Init gpio.o + 0x08004112 0x08004112 0x00000002 PAD + 0x08004114 0x08004114 0x00000094 Code RO 200 .text.MX_RTC_Init rtc.o + 0x080041a8 0x080041a8 0x00000086 Code RO 214 .text.MX_TIM4_Init tim.o + 0x0800422e 0x0800422e 0x00000002 PAD + 0x08004230 0x08004230 0x00000004 Code RO 232 .text.MemManage_Handler stm32f1xx_it.o + 0x08004234 0x08004234 0x00000004 Code RO 228 .text.NMI_Handler stm32f1xx_it.o + 0x08004238 0x08004238 0x0000006c Code RO 547 .text.NVIC_EncodePriority stm32f1xx_hal_cortex.o + 0x080042a4 0x080042a4 0x000000e4 Code RO 81 .text.PROTOCAN_AnalogProcessing protocan.o + 0x08004388 0x08004388 0x000000c0 Code RO 83 .text.PROTOCAN_BroadcastProcessing protocan.o + 0x08004448 0x08004448 0x00000064 Code RO 143 .text.PROTOCAN_CONFIG_FILTER protocan.o + 0x080044ac 0x080044ac 0x00000046 Code RO 69 .text.PROTOCAN_DEINIT protocan.o + 0x080044f2 0x080044f2 0x00000002 PAD + 0x080044f4 0x080044f4 0x00000110 Code RO 85 .text.PROTOCAN_DiscreticProcessing protocan.o + 0x08004604 0x08004604 0x0000003e Code RO 77 .text.PROTOCAN_FILTERS protocan.o + 0x08004642 0x08004642 0x00000002 PAD + 0x08004644 0x08004644 0x00000108 Code RO 71 .text.PROTOCAN_INIT protocan.o + 0x0800474c 0x0800474c 0x00000344 Code RO 79 .text.PROTOCAN_LOOP protocan.o + 0x08004a90 0x08004a90 0x000000c4 Code RO 89 .text.PROTOCAN_ModbusProcessing protocan.o + 0x08004b54 0x08004b54 0x000000a4 Code RO 105 .text.PROTOCAN_RTC_SYNC protocan.o + 0x08004bf8 0x08004bf8 0x00000040 Code RO 93 .text.PROTOCAN_SEND protocan.o + 0x08004c38 0x08004c38 0x0000011a Code RO 131 .text.PROTOCAN_SEND_GENERAL_ADDRESS_SPACE protocan.o + 0x08004d52 0x08004d52 0x00000002 PAD + 0x08004d54 0x08004d54 0x00000002 Code RO 242 .text.PendSV_Handler stm32f1xx_it.o + 0x08004d56 0x08004d56 0x00000002 PAD + 0x08004d58 0x08004d58 0x0000010a Code RO 127 .text.ProtoCanMsgToAnalogISens protocan.o + 0x08004e62 0x08004e62 0x00000002 PAD + 0x08004e64 0x08004e64 0x00000086 Code RO 123 .text.ProtoCanMsgToAnalogSettings protocan.o + 0x08004eea 0x08004eea 0x00000002 PAD + 0x08004eec 0x08004eec 0x0000010a Code RO 129 .text.ProtoCanMsgToAnalogTSens protocan.o + 0x08004ff6 0x08004ff6 0x00000002 PAD + 0x08004ff8 0x08004ff8 0x0000010a Code RO 125 .text.ProtoCanMsgToAnalogUSens protocan.o + 0x08005102 0x08005102 0x00000002 PAD + 0x08005104 0x08005104 0x00000080 Code RO 121 .text.ProtoCanMsgToAnalogUniversal protocan.o + 0x08005184 0x08005184 0x00000030 Code RO 97 .text.ProtoCanMsgToBroadcastOnOff protocan.o + 0x080051b4 0x080051b4 0x000000a0 Code RO 99 .text.ProtoCanMsgToBroadcastRestart protocan.o + 0x08005254 0x08005254 0x000000c0 Code RO 101 .text.ProtoCanMsgToBroadcastRtcSetup protocan.o + 0x08005314 0x08005314 0x000000da Code RO 95 .text.ProtoCanMsgToBroadcastStatus protocan.o + 0x080053ee 0x080053ee 0x00000002 PAD + 0x080053f0 0x080053f0 0x0000001a Code RO 107 .text.ProtoCanMsgToDiscreteAccident protocan.o + 0x0800540a 0x0800540a 0x00000002 PAD + 0x0800540c 0x0800540c 0x0000001a Code RO 117 .text.ProtoCanMsgToDiscreteChangeMode protocan.o + 0x08005426 0x08005426 0x00000002 PAD + 0x08005428 0x08005428 0x0000001a Code RO 111 .text.ProtoCanMsgToDiscreteControlSignals protocan.o + 0x08005442 0x08005442 0x00000002 PAD + 0x08005444 0x08005444 0x0000001a Code RO 113 .text.ProtoCanMsgToDiscreteFlags protocan.o + 0x0800545e 0x0800545e 0x00000002 PAD + 0x08005460 0x08005460 0x0000001a Code RO 119 .text.ProtoCanMsgToDiscreteRequestListOfParameters protocan.o + 0x0800547a 0x0800547a 0x00000002 PAD + 0x0800547c 0x0800547c 0x00000018 Code RO 115 .text.ProtoCanMsgToDiscreteReset protocan.o + 0x08005494 0x08005494 0x0000001a Code RO 109 .text.ProtoCanMsgToDiscreteWarning protocan.o + 0x080054ae 0x080054ae 0x00000002 PAD + 0x080054b0 0x080054b0 0x000000d8 Code RO 87 .text.ProtoCanMsgToGeneralAddressSpace protocan.o + 0x08005588 0x08005588 0x00000098 Code RO 133 .text.ProtoCanMsgToModbusCoil protocan.o + 0x08005620 0x08005620 0x0000009a Code RO 135 .text.ProtoCanMsgToModbusDiscrete protocan.o + 0x080056ba 0x080056ba 0x00000002 PAD + 0x080056bc 0x080056bc 0x0000009a Code RO 137 .text.ProtoCanMsgToModbusHolding protocan.o + 0x08005756 0x08005756 0x00000002 PAD + 0x08005758 0x08005758 0x0000009a Code RO 139 .text.ProtoCanMsgToModbusInput protocan.o + 0x080057f2 0x080057f2 0x00000002 PAD + 0x080057f4 0x080057f4 0x000000d4 Code RO 75 .text.ProtoCanPulseCallback protocan.o + 0x080058c8 0x080058c8 0x000000d6 Code RO 73 .text.ProtoCanRxFifo0MsgPendingCallback protocan.o + 0x0800599e 0x0800599e 0x00000002 PAD + 0x080059a0 0x080059a0 0x0000003a Code RO 431 .text.RCC_Delay stm32f1xx_hal_rcc.o + 0x080059da 0x080059da 0x00000002 PAD + 0x080059dc 0x080059dc 0x0000002a Code RO 761 .text.RTC_Bcd2ToByte stm32f1xx_hal_rtc.o + 0x08005a06 0x08005a06 0x00000002 PAD + 0x08005a08 0x08005a08 0x0000003a Code RO 775 .text.RTC_ByteToBcd2 stm32f1xx_hal_rtc.o + 0x08005a42 0x08005a42 0x00000002 PAD + 0x08005a44 0x08005a44 0x00000172 Code RO 773 .text.RTC_DateUpdate stm32f1xx_hal_rtc.o + 0x08005bb6 0x08005bb6 0x00000002 PAD + 0x08005bb8 0x08005bb8 0x00000056 Code RO 751 .text.RTC_EnterInitMode stm32f1xx_hal_rtc.o + 0x08005c0e 0x08005c0e 0x00000002 PAD + 0x08005c10 0x08005c10 0x00000056 Code RO 753 .text.RTC_ExitInitMode stm32f1xx_hal_rtc.o + 0x08005c66 0x08005c66 0x00000002 PAD + 0x08005c68 0x08005c68 0x00000078 Code RO 799 .text.RTC_IsLeapYear stm32f1xx_hal_rtc.o + 0x08005ce0 0x08005ce0 0x00000032 Code RO 765 .text.RTC_ReadAlarmCounter stm32f1xx_hal_rtc.o + 0x08005d12 0x08005d12 0x00000002 PAD + 0x08005d14 0x08005d14 0x0000006a Code RO 771 .text.RTC_ReadTimeCounter stm32f1xx_hal_rtc.o + 0x08005d7e 0x08005d7e 0x00000002 PAD + 0x08005d80 0x08005d80 0x000000e2 Code RO 779 .text.RTC_WeekDayNum stm32f1xx_hal_rtc.o + 0x08005e62 0x08005e62 0x00000002 PAD + 0x08005e64 0x08005e64 0x00000050 Code RO 767 .text.RTC_WriteAlarmCounter stm32f1xx_hal_rtc.o + 0x08005eb4 0x08005eb4 0x00000050 Code RO 763 .text.RTC_WriteTimeCounter stm32f1xx_hal_rtc.o + 0x08005f04 0x08005f04 0x00000002 Code RO 238 .text.SVC_Handler stm32f1xx_it.o + 0x08005f06 0x08005f06 0x00000002 PAD + 0x08005f08 0x08005f08 0x00000052 Code RO 563 .text.SysTick_Config stm32f1xx_hal_cortex.o + 0x08005f5a 0x08005f5a 0x00000002 PAD + 0x08005f5c 0x08005f5c 0x00000008 Code RO 244 .text.SysTick_Handler stm32f1xx_it.o + 0x08005f64 0x08005f64 0x0000009c Code RO 166 .text.SystemClock_Config main.o + 0x08006000 0x08006000 0x00000002 Code RO 1185 .text.SystemInit system_stm32f1xx.o + 0x08006002 0x08006002 0x00000002 PAD + 0x08006004 0x08006004 0x00000010 Code RO 254 .text.TIM4_IRQHandler stm32f1xx_it.o + 0x08006014 0x08006014 0x000000f0 Code RO 849 .text.TIM_Base_SetConfig stm32f1xx_hal_tim.o + 0x08006104 0x08006104 0x00000034 Code RO 1025 .text.TIM_ETR_SetConfig stm32f1xx_hal_tim.o + 0x08006138 0x08006138 0x0000002a Code RO 1031 .text.TIM_ITRx_SetConfig stm32f1xx_hal_tim.o + 0x08006162 0x08006162 0x00000002 PAD + 0x08006164 0x08006164 0x000000be Code RO 845 .text.TIM_ResetCallback stm32f1xx_hal_tim.o + 0x08006222 0x08006222 0x00000002 PAD + 0x08006224 0x08006224 0x00000050 Code RO 1029 .text.TIM_TI1_ConfigInputStage stm32f1xx_hal_tim.o + 0x08006274 0x08006274 0x00000052 Code RO 1033 .text.TIM_TI2_ConfigInputStage stm32f1xx_hal_tim.o + 0x080062c6 0x080062c6 0x00000002 PAD + 0x080062c8 0x080062c8 0x000000d0 Code RO 141 .text.TakeRxMsgToBuffer protocan.o + 0x08006398 0x08006398 0x00000010 Code RO 246 .text.USB_HP_CAN1_TX_IRQHandler stm32f1xx_it.o + 0x080063a8 0x080063a8 0x00000010 Code RO 248 .text.USB_LP_CAN1_RX0_IRQHandler stm32f1xx_it.o + 0x080063b8 0x080063b8 0x00000004 Code RO 236 .text.UsageFault_Handler stm32f1xx_it.o + 0x080063bc 0x080063bc 0x00000038 Code RO 555 .text.__NVIC_DisableIRQ stm32f1xx_hal_cortex.o + 0x080063f4 0x080063f4 0x00000030 Code RO 551 .text.__NVIC_EnableIRQ stm32f1xx_hal_cortex.o + 0x08006424 0x08006424 0x00000010 Code RO 543 .text.__NVIC_GetPriorityGrouping stm32f1xx_hal_cortex.o + 0x08006434 0x08006434 0x00000042 Code RO 545 .text.__NVIC_SetPriority stm32f1xx_hal_cortex.o + 0x08006476 0x08006476 0x00000002 PAD + 0x08006478 0x08006478 0x0000003c Code RO 539 .text.__NVIC_SetPriorityGrouping stm32f1xx_hal_cortex.o + 0x080064b4 0x080064b4 0x00000026 Code RO 103 .text.__NVIC_SystemReset protocan.o + 0x080064da 0x080064da 0x00000002 PAD + 0x080064dc 0x080064dc 0x00000066 Code RO 164 .text.main main.o + 0x08006542 0x08006542 0x00000002 PAD + 0x08006544 0x08006544 0x00000060 Data RO 153 .rodata..L__const.ProtoCanMsgToBroadcastRtcSetup.DaysCount_Normal protocan.o + 0x080065a4 0x080065a4 0x00000010 Data RO 1190 .rodata.AHBPrescTable system_stm32f1xx.o + 0x080065b4 0x080065b4 0x00000008 Data RO 1191 .rodata.APBPrescTable system_stm32f1xx.o + 0x080065bc 0x080065bc 0x00000010 Data RO 472 .rodata.HAL_RCCEx_GetPeriphCLKFreq.aPLLMULFactorTable stm32f1xx_hal_rcc_ex.o + 0x080065cc 0x080065cc 0x00000002 Data RO 473 .rodata.HAL_RCCEx_GetPeriphCLKFreq.aPredivFactorTable stm32f1xx_hal_rcc_ex.o + 0x080065ce 0x080065ce 0x00000010 Data RO 457 .rodata.HAL_RCC_GetSysClockFreq.aPLLMULFactorTable stm32f1xx_hal_rcc.o + 0x080065de 0x080065de 0x00000002 Data RO 458 .rodata.HAL_RCC_GetSysClockFreq.aPredivFactorTable stm32f1xx_hal_rcc.o + 0x080065e0 0x080065e0 0x00000020 Data RO 1370 Region$$Table anon$$obj.o - Execution Region RW_IRAM1 (Exec base: 0x20000000, Load base: 0x08006430, Size: 0x00001a30, Max: 0x00005000, ABSOLUTE) + Execution Region RW_IRAM1 (Exec base: 0x20000000, Load base: 0x08006600, Size: 0x00001a10, Max: 0x00005000, ABSOLUTE) Exec Addr Load Addr Size Type Attr Idx E Section Name Object - 0x20000000 0x08006430 0x00000001 Data RW 144 .data.CurrentStep protocan.o - 0x20000001 0x08006431 0x00000003 PAD - 0x20000004 0x08006434 0x00000004 Data RW 1190 .data.SystemCoreClock system_stm32f1xx.o - 0x20000008 0x08006438 0x00000004 Data RW 151 .data.filter1_id protocan.o - 0x2000000c 0x0800643c 0x00000004 Data RW 152 .data.filter1_mask protocan.o - 0x20000010 0x08006440 0x00000004 Data RW 154 .data.filter2_mask protocan.o - 0x20000014 0x08006444 0x00000004 Data RW 155 .data.filter3_id protocan.o - 0x20000018 0x08006448 0x00000004 Data RW 156 .data.filter3_mask protocan.o - 0x2000001c 0x0800644c 0x00000001 Data RW 419 .data.uwTickFreq stm32f1xx_hal.o - 0x2000001d 0x0800644d 0x00000003 PAD - 0x20000020 0x08006450 0x00000004 Data RW 418 .data.uwTickPrio stm32f1xx_hal.o - 0x20000024 0x08006454 0x00000004 PAD - 0x20000028 - 0x00000060 Zero RW 1236 .bss c_w.l(libspace.o) - 0x20000088 - 0x00000058 Zero RW 57 .bss.CanErrors canerrorbox.o - 0x200000e0 - 0x00000004 Zero RW 146 .bss.ControlFlags protocan.o - 0x200000e4 - 0x00000800 Zero RW 149 .bss.Device_on_the_Network protocan.o - 0x200008e4 - 0x00000001 Zero RW 145 .bss.LastStep protocan.o - 0x200008e5 0x08006454 0x00000003 PAD - 0x200008e8 - 0x00000004 Zero RW 150 .bss.ProtoCanPulseCallback.PulseStage protocan.o - 0x200008ec - 0x00000004 Zero RW 141 .bss._HCAN protocan.o - 0x200008f0 - 0x00000004 Zero RW 142 .bss._HRTC protocan.o - 0x200008f4 - 0x00000004 Zero RW 143 .bss._HTIM protocan.o - 0x200008f8 - 0x00000004 Zero RW 153 .bss.filter2_id protocan.o - 0x200008fc - 0x00000064 Zero RW 193 .bss.hcan can.o - 0x20000960 - 0x00000014 Zero RW 207 .bss.hrtc rtc.o - 0x20000974 - 0x000000b4 Zero RW 221 .bss.htim4 tim.o - 0x20000a28 - 0x00000a00 Zero RW 147 .bss.rxMsg protocan.o - 0x20001428 - 0x00000004 Zero RW 420 .bss.uwTick stm32f1xx_hal.o - 0x2000142c 0x08006454 0x00000004 PAD - 0x20001430 - 0x00000200 Zero RW 2 HEAP startup_stm32f103xb.o - 0x20001630 - 0x00000400 Zero RW 1 STACK startup_stm32f103xb.o + 0x20000000 0x08006600 0x00000001 Data RW 148 .data.CurrentStep protocan.o + 0x20000001 0x08006601 0x00000003 PAD + 0x20000004 0x08006604 0x00000004 Data RW 1189 .data.SystemCoreClock system_stm32f1xx.o + 0x20000008 0x08006608 0x00000001 Data RW 418 .data.uwTickFreq stm32f1xx_hal.o + 0x20000009 0x08006609 0x00000003 PAD + 0x2000000c 0x0800660c 0x00000004 Data RW 417 .data.uwTickPrio stm32f1xx_hal.o + 0x20000010 - 0x00000060 Zero RW 1235 .bss c_w.l(libspace.o) + 0x20000070 - 0x00000058 Zero RW 57 .bss.CanErrors canerrorbox.o + 0x200000c8 - 0x00000004 Zero RW 150 .bss.ControlFlags protocan.o + 0x200000cc - 0x00000800 Zero RW 154 .bss.Device_on_the_Network protocan.o + 0x200008cc - 0x00000001 Zero RW 149 .bss.LastStep protocan.o + 0x200008cd 0x08006610 0x00000003 PAD + 0x200008d0 - 0x00000004 Zero RW 155 .bss.ProtoCanPulseCallback.PulseStage protocan.o + 0x200008d4 - 0x00000004 Zero RW 145 .bss._HCAN protocan.o + 0x200008d8 - 0x00000004 Zero RW 146 .bss._HRTC protocan.o + 0x200008dc - 0x00000004 Zero RW 147 .bss._HTIM protocan.o + 0x200008e0 - 0x00000064 Zero RW 192 .bss.hcan can.o + 0x20000944 - 0x00000014 Zero RW 206 .bss.hrtc rtc.o + 0x20000958 - 0x000000b4 Zero RW 220 .bss.htim4 tim.o + 0x20000a0c - 0x00000a00 Zero RW 152 .bss.rxMsg protocan.o + 0x2000140c - 0x00000004 Zero RW 419 .bss.uwTick stm32f1xx_hal.o + 0x20001410 - 0x00000200 Zero RW 2 HEAP startup_stm32f103xb.o + 0x20001610 - 0x00000400 Zero RW 1 STACK startup_stm32f103xb.o ============================================================================== @@ -3180,11 +3184,11 @@ Image component sizes Code (inc. data) RO Data RW Data ZI Data Debug Object Name - 390 0 0 0 100 5234 can.o + 390 0 0 0 100 5235 can.o 766 0 0 0 88 5873 canerrorbox.o 74 0 0 0 0 1313 gpio.o - 272 0 0 0 0 2035 main.o - 5932 0 96 21 4633 21118 protocan.o + 272 0 0 0 0 2006 main.o + 6382 0 96 1 4629 23602 protocan.o 224 0 0 0 20 2491 rtc.o 64 26 236 0 1536 772 startup_stm32f103xb.o 188 0 0 5 4 5530 stm32f1xx_hal.o @@ -3203,9 +3207,9 @@ Image component sizes 264 0 0 0 180 6554 tim.o ---------------------------------------------------------------------- - 24764 26 424 36 6572 160526 Object Totals + 25232 26 424 16 6560 162982 Object Totals 0 0 32 0 0 0 (incl. Generated) - 130 0 0 6 11 0 (incl. Padding) + 148 0 0 6 3 0 (incl. Padding) ---------------------------------------------------------------------- @@ -3254,15 +3258,15 @@ Image component sizes Code (inc. data) RO Data RW Data ZI Data Debug - 25220 42 424 36 6668 160678 Grand Totals - 25220 42 424 36 6668 160678 ELF Image Totals - 25220 42 424 36 0 0 ROM Totals + 25688 42 424 16 6656 163134 Grand Totals + 25688 42 424 16 6656 163134 ELF Image Totals + 25688 42 424 16 0 0 ROM Totals ============================================================================== - Total RO Size (Code + RO Data) 25644 ( 25.04kB) - Total RW Size (RW Data + ZI Data) 6704 ( 6.55kB) - Total ROM Size (Code + RO Data + RW Data) 25680 ( 25.08kB) + Total RO Size (Code + RO Data) 26112 ( 25.50kB) + Total RW Size (RW Data + ZI Data) 6672 ( 6.52kB) + Total ROM Size (Code + RO Data + RW Data) 26128 ( 25.52kB) ============================================================================== diff --git a/MDK-ARM/F103C8T6/F103C8T6_F103C8T6.dep b/MDK-ARM/F103C8T6/F103C8T6_F103C8T6.dep index fdfb7e5..fa242b3 100644 --- a/MDK-ARM/F103C8T6/F103C8T6_F103C8T6.dep +++ b/MDK-ARM/F103C8T6/F103C8T6_F103C8T6.dep @@ -35,11 +35,11 @@ I (..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_rtc.h)(0x64AF9BDC) I (..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_rtc_ex.h)(0x64AF9BDC) I (..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_tim.h)(0x64AF9BDC) I (..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_tim_ex.h)(0x64AF9BDC) -I (..\Core\Inc\protocan.h)(0x6A16F637) +I (..\Core\Inc\protocan.h)(0x6A1D6DC0) I (..\Core\Inc\can.h)(0x6A16F637) F (..\Core\Inc\canerrorbox.h)(0x6A16F637)() -F (..\Core\Src\protocan.c)(0x6A196BA0)(-xc -std=c11 --target=arm-arm-none-eabi -mcpu=cortex-m3 -c -mexecute-only -fno-rtti -funsigned-char -fshort-enums -fshort-wchar -gdwarf-4 -O0 -ffunction-sections -Wno-packed -Wno-missing-variable-declarations -Wno-missing-prototypes -Wno-missing-noreturn -Wno-sign-conversion -Wno-nonportable-include-path -Wno-reserved-id-macro -Wno-unused-macros -Wno-documentation-unknown-command -Wno-documentation -Wno-license-management -Wno-parentheses-equality -Wno-reserved-identifier -I ../Core/Inc -I ../Drivers/STM32F1xx_HAL_Driver/Inc -I ../Drivers/STM32F1xx_HAL_Driver/Inc/Legacy -I ../Drivers/CMSIS/Device/ST/STM32F1xx/Include -I ../Drivers/CMSIS/Include -I./RTE/_F103C8T6 -IC:/Users/Iurii/AppData/Local/Arm/Packs/ARM/CMSIS/5.9.0/CMSIS/Core/Include -IC:/Users/Iurii/AppData/Local/Arm/Packs/Keil/STM32F1xx_DFP/2.4.0/Device/Include -D__UVISION_VERSION="538" -D_RTE_ -DSTM32F10X_MD -D_RTE_ -DUSE_HAL_DRIVER -DSTM32F103xB -o f103c8t6/protocan.o -MD) -I (..\Core\Inc\protocan.h)(0x6A16F637) +F (..\Core\Src\protocan.c)(0x6A1D7086)(-xc -std=c11 --target=arm-arm-none-eabi -mcpu=cortex-m3 -c -mexecute-only -fno-rtti -funsigned-char -fshort-enums -fshort-wchar -gdwarf-4 -O0 -ffunction-sections -Wno-packed -Wno-missing-variable-declarations -Wno-missing-prototypes -Wno-missing-noreturn -Wno-sign-conversion -Wno-nonportable-include-path -Wno-reserved-id-macro -Wno-unused-macros -Wno-documentation-unknown-command -Wno-documentation -Wno-license-management -Wno-parentheses-equality -Wno-reserved-identifier -I ../Core/Inc -I ../Drivers/STM32F1xx_HAL_Driver/Inc -I ../Drivers/STM32F1xx_HAL_Driver/Inc/Legacy -I ../Drivers/CMSIS/Device/ST/STM32F1xx/Include -I ../Drivers/CMSIS/Include -I./RTE/_F103C8T6 -IC:/Users/Iurii/AppData/Local/Arm/Packs/ARM/CMSIS/5.9.0/CMSIS/Core/Include -IC:/Users/Iurii/AppData/Local/Arm/Packs/Keil/STM32F1xx_DFP/2.4.0/Device/Include -D__UVISION_VERSION="538" -D_RTE_ -DSTM32F10X_MD -D_RTE_ -DUSE_HAL_DRIVER -DSTM32F103xB -o f103c8t6/protocan.o -MD) +I (..\Core\Inc\protocan.h)(0x6A1D6DC0) I (..\Core\Inc\main.h)(0x6A16F637) I (..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal.h)(0x64AF9BDC) I (..\Core\Inc\stm32f1xx_hal_conf.h)(0x6A16F637) @@ -74,8 +74,8 @@ I (..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_tim.h)(0x64AF9BDC) I (..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_tim_ex.h)(0x64AF9BDC) I (..\Core\Inc\canerrorbox.h)(0x6A16F637) I (..\Core\Inc\can.h)(0x6A16F637) -F (..\Core\Inc\protocan.h)(0x6A16F637)() -F (../Core/Src/main.c)(0x6A196BA0)(-xc -std=c11 --target=arm-arm-none-eabi -mcpu=cortex-m3 -c -mexecute-only -fno-rtti -funsigned-char -fshort-enums -fshort-wchar -gdwarf-4 -O0 -ffunction-sections -Wno-packed -Wno-missing-variable-declarations -Wno-missing-prototypes -Wno-missing-noreturn -Wno-sign-conversion -Wno-nonportable-include-path -Wno-reserved-id-macro -Wno-unused-macros -Wno-documentation-unknown-command -Wno-documentation -Wno-license-management -Wno-parentheses-equality -Wno-reserved-identifier -I ../Core/Inc -I ../Drivers/STM32F1xx_HAL_Driver/Inc -I ../Drivers/STM32F1xx_HAL_Driver/Inc/Legacy -I ../Drivers/CMSIS/Device/ST/STM32F1xx/Include -I ../Drivers/CMSIS/Include -I./RTE/_F103C8T6 -IC:/Users/Iurii/AppData/Local/Arm/Packs/ARM/CMSIS/5.9.0/CMSIS/Core/Include -IC:/Users/Iurii/AppData/Local/Arm/Packs/Keil/STM32F1xx_DFP/2.4.0/Device/Include -D__UVISION_VERSION="538" -D_RTE_ -DSTM32F10X_MD -D_RTE_ -DUSE_HAL_DRIVER -DSTM32F103xB -o f103c8t6/main.o -MD) +F (..\Core\Inc\protocan.h)(0x6A1D6DC0)() +F (../Core/Src/main.c)(0x6A1D7155)(-xc -std=c11 --target=arm-arm-none-eabi -mcpu=cortex-m3 -c -mexecute-only -fno-rtti -funsigned-char -fshort-enums -fshort-wchar -gdwarf-4 -O0 -ffunction-sections -Wno-packed -Wno-missing-variable-declarations -Wno-missing-prototypes -Wno-missing-noreturn -Wno-sign-conversion -Wno-nonportable-include-path -Wno-reserved-id-macro -Wno-unused-macros -Wno-documentation-unknown-command -Wno-documentation -Wno-license-management -Wno-parentheses-equality -Wno-reserved-identifier -I ../Core/Inc -I ../Drivers/STM32F1xx_HAL_Driver/Inc -I ../Drivers/STM32F1xx_HAL_Driver/Inc/Legacy -I ../Drivers/CMSIS/Device/ST/STM32F1xx/Include -I ../Drivers/CMSIS/Include -I./RTE/_F103C8T6 -IC:/Users/Iurii/AppData/Local/Arm/Packs/ARM/CMSIS/5.9.0/CMSIS/Core/Include -IC:/Users/Iurii/AppData/Local/Arm/Packs/Keil/STM32F1xx_DFP/2.4.0/Device/Include -D__UVISION_VERSION="538" -D_RTE_ -DSTM32F10X_MD -D_RTE_ -DUSE_HAL_DRIVER -DSTM32F103xB -o f103c8t6/main.o -MD) I (..\Core\Inc\main.h)(0x6A16F637) I (..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal.h)(0x64AF9BDC) I (..\Core\Inc\stm32f1xx_hal_conf.h)(0x6A16F637) @@ -108,7 +108,7 @@ I (..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_rtc.h)(0x64AF9BDC) I (..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_rtc_ex.h)(0x64AF9BDC) I (..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_tim.h)(0x64AF9BDC) I (..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_tim_ex.h)(0x64AF9BDC) -I (..\Core\Inc\protocan.h)(0x6A16F637) +I (..\Core\Inc\protocan.h)(0x6A1D6DC0) I (..\Core\Inc\can.h)(0x6A16F637) I (..\Core\Inc\canerrorbox.h)(0x6A16F637) I (..\Core\Inc\rtc.h)(0x6A16F637) @@ -148,10 +148,10 @@ I (..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_rtc.h)(0x64AF9BDC) I (..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_rtc_ex.h)(0x64AF9BDC) I (..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_tim.h)(0x64AF9BDC) I (..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_tim_ex.h)(0x64AF9BDC) -I (..\Core\Inc\protocan.h)(0x6A16F637) +I (..\Core\Inc\protocan.h)(0x6A1D6DC0) I (..\Core\Inc\can.h)(0x6A16F637) I (..\Core\Inc\canerrorbox.h)(0x6A16F637) -F (../Core/Src/can.c)(0x6A16F637)(-xc -std=c11 --target=arm-arm-none-eabi -mcpu=cortex-m3 -c -mexecute-only -fno-rtti -funsigned-char -fshort-enums -fshort-wchar -gdwarf-4 -O0 -ffunction-sections -Wno-packed -Wno-missing-variable-declarations -Wno-missing-prototypes -Wno-missing-noreturn -Wno-sign-conversion -Wno-nonportable-include-path -Wno-reserved-id-macro -Wno-unused-macros -Wno-documentation-unknown-command -Wno-documentation -Wno-license-management -Wno-parentheses-equality -Wno-reserved-identifier -I ../Core/Inc -I ../Drivers/STM32F1xx_HAL_Driver/Inc -I ../Drivers/STM32F1xx_HAL_Driver/Inc/Legacy -I ../Drivers/CMSIS/Device/ST/STM32F1xx/Include -I ../Drivers/CMSIS/Include -I./RTE/_F103C8T6 -IC:/Users/Iurii/AppData/Local/Arm/Packs/ARM/CMSIS/5.9.0/CMSIS/Core/Include -IC:/Users/Iurii/AppData/Local/Arm/Packs/Keil/STM32F1xx_DFP/2.4.0/Device/Include -D__UVISION_VERSION="538" -D_RTE_ -DSTM32F10X_MD -D_RTE_ -DUSE_HAL_DRIVER -DSTM32F103xB -o f103c8t6/can.o -MD) +F (../Core/Src/can.c)(0x6A1D6356)(-xc -std=c11 --target=arm-arm-none-eabi -mcpu=cortex-m3 -c -mexecute-only -fno-rtti -funsigned-char -fshort-enums -fshort-wchar -gdwarf-4 -O0 -ffunction-sections -Wno-packed -Wno-missing-variable-declarations -Wno-missing-prototypes -Wno-missing-noreturn -Wno-sign-conversion -Wno-nonportable-include-path -Wno-reserved-id-macro -Wno-unused-macros -Wno-documentation-unknown-command -Wno-documentation -Wno-license-management -Wno-parentheses-equality -Wno-reserved-identifier -I ../Core/Inc -I ../Drivers/STM32F1xx_HAL_Driver/Inc -I ../Drivers/STM32F1xx_HAL_Driver/Inc/Legacy -I ../Drivers/CMSIS/Device/ST/STM32F1xx/Include -I ../Drivers/CMSIS/Include -I./RTE/_F103C8T6 -IC:/Users/Iurii/AppData/Local/Arm/Packs/ARM/CMSIS/5.9.0/CMSIS/Core/Include -IC:/Users/Iurii/AppData/Local/Arm/Packs/Keil/STM32F1xx_DFP/2.4.0/Device/Include -D__UVISION_VERSION="538" -D_RTE_ -DSTM32F10X_MD -D_RTE_ -DUSE_HAL_DRIVER -DSTM32F103xB -o f103c8t6/can.o -MD) I (..\Core\Inc\can.h)(0x6A16F637) I (..\Core\Inc\main.h)(0x6A16F637) I (..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal.h)(0x64AF9BDC) @@ -185,7 +185,7 @@ I (..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_rtc.h)(0x64AF9BDC) I (..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_rtc_ex.h)(0x64AF9BDC) I (..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_tim.h)(0x64AF9BDC) I (..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_tim_ex.h)(0x64AF9BDC) -I (..\Core\Inc\protocan.h)(0x6A16F637) +I (..\Core\Inc\protocan.h)(0x6A1D6DC0) I (..\Core\Inc\canerrorbox.h)(0x6A16F637) F (../Core/Src/rtc.c)(0x6A16F637)(-xc -std=c11 --target=arm-arm-none-eabi -mcpu=cortex-m3 -c -mexecute-only -fno-rtti -funsigned-char -fshort-enums -fshort-wchar -gdwarf-4 -O0 -ffunction-sections -Wno-packed -Wno-missing-variable-declarations -Wno-missing-prototypes -Wno-missing-noreturn -Wno-sign-conversion -Wno-nonportable-include-path -Wno-reserved-id-macro -Wno-unused-macros -Wno-documentation-unknown-command -Wno-documentation -Wno-license-management -Wno-parentheses-equality -Wno-reserved-identifier -I ../Core/Inc -I ../Drivers/STM32F1xx_HAL_Driver/Inc -I ../Drivers/STM32F1xx_HAL_Driver/Inc/Legacy -I ../Drivers/CMSIS/Device/ST/STM32F1xx/Include -I ../Drivers/CMSIS/Include -I./RTE/_F103C8T6 -IC:/Users/Iurii/AppData/Local/Arm/Packs/ARM/CMSIS/5.9.0/CMSIS/Core/Include -IC:/Users/Iurii/AppData/Local/Arm/Packs/Keil/STM32F1xx_DFP/2.4.0/Device/Include -D__UVISION_VERSION="538" -D_RTE_ -DSTM32F10X_MD -D_RTE_ -DUSE_HAL_DRIVER -DSTM32F103xB -o f103c8t6/rtc.o -MD) I (..\Core\Inc\rtc.h)(0x6A16F637) @@ -221,10 +221,10 @@ I (..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_rtc.h)(0x64AF9BDC) I (..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_rtc_ex.h)(0x64AF9BDC) I (..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_tim.h)(0x64AF9BDC) I (..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_tim_ex.h)(0x64AF9BDC) -I (..\Core\Inc\protocan.h)(0x6A16F637) +I (..\Core\Inc\protocan.h)(0x6A1D6DC0) I (..\Core\Inc\can.h)(0x6A16F637) I (..\Core\Inc\canerrorbox.h)(0x6A16F637) -F (../Core/Src/tim.c)(0x6A16F637)(-xc -std=c11 --target=arm-arm-none-eabi -mcpu=cortex-m3 -c -mexecute-only -fno-rtti -funsigned-char -fshort-enums -fshort-wchar -gdwarf-4 -O0 -ffunction-sections -Wno-packed -Wno-missing-variable-declarations -Wno-missing-prototypes -Wno-missing-noreturn -Wno-sign-conversion -Wno-nonportable-include-path -Wno-reserved-id-macro -Wno-unused-macros -Wno-documentation-unknown-command -Wno-documentation -Wno-license-management -Wno-parentheses-equality -Wno-reserved-identifier -I ../Core/Inc -I ../Drivers/STM32F1xx_HAL_Driver/Inc -I ../Drivers/STM32F1xx_HAL_Driver/Inc/Legacy -I ../Drivers/CMSIS/Device/ST/STM32F1xx/Include -I ../Drivers/CMSIS/Include -I./RTE/_F103C8T6 -IC:/Users/Iurii/AppData/Local/Arm/Packs/ARM/CMSIS/5.9.0/CMSIS/Core/Include -IC:/Users/Iurii/AppData/Local/Arm/Packs/Keil/STM32F1xx_DFP/2.4.0/Device/Include -D__UVISION_VERSION="538" -D_RTE_ -DSTM32F10X_MD -D_RTE_ -DUSE_HAL_DRIVER -DSTM32F103xB -o f103c8t6/tim.o -MD) +F (../Core/Src/tim.c)(0x6A1D6356)(-xc -std=c11 --target=arm-arm-none-eabi -mcpu=cortex-m3 -c -mexecute-only -fno-rtti -funsigned-char -fshort-enums -fshort-wchar -gdwarf-4 -O0 -ffunction-sections -Wno-packed -Wno-missing-variable-declarations -Wno-missing-prototypes -Wno-missing-noreturn -Wno-sign-conversion -Wno-nonportable-include-path -Wno-reserved-id-macro -Wno-unused-macros -Wno-documentation-unknown-command -Wno-documentation -Wno-license-management -Wno-parentheses-equality -Wno-reserved-identifier -I ../Core/Inc -I ../Drivers/STM32F1xx_HAL_Driver/Inc -I ../Drivers/STM32F1xx_HAL_Driver/Inc/Legacy -I ../Drivers/CMSIS/Device/ST/STM32F1xx/Include -I ../Drivers/CMSIS/Include -I./RTE/_F103C8T6 -IC:/Users/Iurii/AppData/Local/Arm/Packs/ARM/CMSIS/5.9.0/CMSIS/Core/Include -IC:/Users/Iurii/AppData/Local/Arm/Packs/Keil/STM32F1xx_DFP/2.4.0/Device/Include -D__UVISION_VERSION="538" -D_RTE_ -DSTM32F10X_MD -D_RTE_ -DUSE_HAL_DRIVER -DSTM32F103xB -o f103c8t6/tim.o -MD) I (..\Core\Inc\tim.h)(0x6A16F637) I (..\Core\Inc\main.h)(0x6A16F637) I (..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal.h)(0x64AF9BDC) @@ -258,7 +258,7 @@ I (..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_rtc.h)(0x64AF9BDC) I (..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_rtc_ex.h)(0x64AF9BDC) I (..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_tim.h)(0x64AF9BDC) I (..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_tim_ex.h)(0x64AF9BDC) -I (..\Core\Inc\protocan.h)(0x6A16F637) +I (..\Core\Inc\protocan.h)(0x6A1D6DC0) I (..\Core\Inc\can.h)(0x6A16F637) I (..\Core\Inc\canerrorbox.h)(0x6A16F637) F (../Core/Src/stm32f1xx_it.c)(0x6A16F637)(-xc -std=c11 --target=arm-arm-none-eabi -mcpu=cortex-m3 -c -mexecute-only -fno-rtti -funsigned-char -fshort-enums -fshort-wchar -gdwarf-4 -O0 -ffunction-sections -Wno-packed -Wno-missing-variable-declarations -Wno-missing-prototypes -Wno-missing-noreturn -Wno-sign-conversion -Wno-nonportable-include-path -Wno-reserved-id-macro -Wno-unused-macros -Wno-documentation-unknown-command -Wno-documentation -Wno-license-management -Wno-parentheses-equality -Wno-reserved-identifier -I ../Core/Inc -I ../Drivers/STM32F1xx_HAL_Driver/Inc -I ../Drivers/STM32F1xx_HAL_Driver/Inc/Legacy -I ../Drivers/CMSIS/Device/ST/STM32F1xx/Include -I ../Drivers/CMSIS/Include -I./RTE/_F103C8T6 -IC:/Users/Iurii/AppData/Local/Arm/Packs/ARM/CMSIS/5.9.0/CMSIS/Core/Include -IC:/Users/Iurii/AppData/Local/Arm/Packs/Keil/STM32F1xx_DFP/2.4.0/Device/Include -D__UVISION_VERSION="538" -D_RTE_ -DSTM32F10X_MD -D_RTE_ -DUSE_HAL_DRIVER -DSTM32F103xB -o f103c8t6/stm32f1xx_it.o -MD) @@ -294,7 +294,7 @@ I (..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_rtc.h)(0x64AF9BDC) I (..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_rtc_ex.h)(0x64AF9BDC) I (..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_tim.h)(0x64AF9BDC) I (..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_tim_ex.h)(0x64AF9BDC) -I (..\Core\Inc\protocan.h)(0x6A16F637) +I (..\Core\Inc\protocan.h)(0x6A1D6DC0) I (..\Core\Inc\can.h)(0x6A16F637) I (..\Core\Inc\canerrorbox.h)(0x6A16F637) I (..\Core\Inc\stm32f1xx_it.h)(0x6A16F637) @@ -331,7 +331,7 @@ I (..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_rtc.h)(0x64AF9BDC) I (..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_rtc_ex.h)(0x64AF9BDC) I (..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_tim.h)(0x64AF9BDC) I (..\Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_tim_ex.h)(0x64AF9BDC) -I (..\Core\Inc\protocan.h)(0x6A16F637) +I (..\Core\Inc\protocan.h)(0x6A1D6DC0) I (..\Core\Inc\can.h)(0x6A16F637) I (..\Core\Inc\canerrorbox.h)(0x6A16F637) F (../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.c)(0x64AF9BDC)(-xc -std=c11 --target=arm-arm-none-eabi -mcpu=cortex-m3 -c -mexecute-only -fno-rtti -funsigned-char -fshort-enums -fshort-wchar -gdwarf-4 -O0 -ffunction-sections -Wno-packed -Wno-missing-variable-declarations -Wno-missing-prototypes -Wno-missing-noreturn -Wno-sign-conversion -Wno-nonportable-include-path -Wno-reserved-id-macro -Wno-unused-macros -Wno-documentation-unknown-command -Wno-documentation -Wno-license-management -Wno-parentheses-equality -Wno-reserved-identifier -I ../Core/Inc -I ../Drivers/STM32F1xx_HAL_Driver/Inc -I ../Drivers/STM32F1xx_HAL_Driver/Inc/Legacy -I ../Drivers/CMSIS/Device/ST/STM32F1xx/Include -I ../Drivers/CMSIS/Include -I./RTE/_F103C8T6 -IC:/Users/Iurii/AppData/Local/Arm/Packs/ARM/CMSIS/5.9.0/CMSIS/Core/Include -IC:/Users/Iurii/AppData/Local/Arm/Packs/Keil/STM32F1xx_DFP/2.4.0/Device/Include -D__UVISION_VERSION="538" -D_RTE_ -DSTM32F10X_MD -D_RTE_ -DUSE_HAL_DRIVER -DSTM32F103xB -o f103c8t6/stm32f1xx_hal_gpio_ex.o -MD) diff --git a/MDK-ARM/F103C8T6/can.o b/MDK-ARM/F103C8T6/can.o index 2b9c1c4..33eb84c 100644 Binary files a/MDK-ARM/F103C8T6/can.o and b/MDK-ARM/F103C8T6/can.o differ diff --git a/MDK-ARM/F103C8T6/main.o b/MDK-ARM/F103C8T6/main.o index e437f06..0854f37 100644 Binary files a/MDK-ARM/F103C8T6/main.o and b/MDK-ARM/F103C8T6/main.o differ diff --git a/MDK-ARM/F103C8T6/protocan.o b/MDK-ARM/F103C8T6/protocan.o index 63ddb99..5d0c4e4 100644 Binary files a/MDK-ARM/F103C8T6/protocan.o and b/MDK-ARM/F103C8T6/protocan.o differ diff --git a/MDK-ARM/F103C8T6/tim.o b/MDK-ARM/F103C8T6/tim.o index b8710de..103d240 100644 Binary files a/MDK-ARM/F103C8T6/tim.o and b/MDK-ARM/F103C8T6/tim.o differ