diff --git a/Doc/Doxyfile b/Doc/Doxyfile index 7df2dd5..e646dec 100644 --- a/Doc/Doxyfile +++ b/Doc/Doxyfile @@ -42,19 +42,19 @@ DOXYFILE_ENCODING = UTF-8 # title of most generated pages and in a few other places. # The default value is: My Project. -PROJECT_NAME = MyLibs +PROJECT_NAME = Modbus # The PROJECT_NUMBER tag can be used to enter a project or revision number. This # could be handy for archiving the generated documentation or if some version # control system is used. -PROJECT_NUMBER = 1.0 +PROJECT_NUMBER = 0.3 # Using the PROJECT_BRIEF tag one can provide an optional one line description # for a project that appears at the top of each page and should give viewers a # quick idea about the purpose of the project. Keep the description short. -PROJECT_BRIEF = "Расширенные библиотеки для STM32" +PROJECT_BRIEF = "Библиотека Modbus для STM" # With the PROJECT_LOGO tag one can specify a logo or an icon that is included # in the documentation. The maximum height of the logo should not exceed 55 @@ -273,7 +273,7 @@ SEPARATE_MEMBER_PAGES = NO # uses this value to replace tabs by spaces in code fragments. # Minimum value: 1, maximum value: 16, default value: 4. -TAB_SIZE = 4 +TAB_SIZE = 2 # This tag can be used to specify a number of aliases that act as commands in # the documentation. An alias has the form: @@ -991,7 +991,9 @@ WARN_LOGFILE = # spaces. See also FILE_PATTERNS and EXTENSION_MAPPING # Note: If this tag is empty the current directory is searched. -INPUT = E:\.WORK\STM32\STM32_Modbus\Modbus +INPUT = ../ \ + ../Modbus/Inc \ + ../Modbus/Src # This tag can be used to specify the character encoding of the source files # that Doxygen parses. Internally Doxygen uses the UTF-8 encoding. Doxygen uses @@ -1086,7 +1088,7 @@ FILE_PATTERNS = *.c \ # be searched for input files as well. # The default value is: NO. -RECURSIVE = YES +RECURSIVE = NO # The EXCLUDE tag can be used to specify files and/or directories that should be # excluded from the INPUT source files. This way you can easily exclude a @@ -1206,7 +1208,7 @@ FILTER_SOURCE_PATTERNS = # (index.html). This can be useful if you have a project on for instance GitHub # and want to reuse the introduction page also for the Doxygen output. -USE_MDFILE_AS_MAINPAGE = +USE_MDFILE_AS_MAINPAGE = ..\README.md # If the IMPLICIT_DIR_DOCS tag is set to YES, any README.md file found in sub- # directories of the project's root, is used as the documentation for that sub- @@ -1215,7 +1217,7 @@ USE_MDFILE_AS_MAINPAGE = # command in order to be used as directory documentation. # The default value is: YES. -IMPLICIT_DIR_DOCS = YES +IMPLICIT_DIR_DOCS = NO # The Fortran standard specifies that for fixed formatted Fortran code all # characters from position 72 are to be considered as comment. A common @@ -2498,7 +2500,7 @@ MACRO_EXPANSION = YES # The default value is: NO. # This tag requires that the tag ENABLE_PREPROCESSING is set to YES. -EXPAND_ONLY_PREDEF = NO +EXPAND_ONLY_PREDEF = YES # If the SEARCH_INCLUDES tag is set to YES, the include files in the # INCLUDE_PATH will be searched if a #include is found. @@ -2513,7 +2515,8 @@ SEARCH_INCLUDES = YES # RECURSIVE has no effect here. # This tag requires that the tag SEARCH_INCLUDES is set to YES. -INCLUDE_PATH = +INCLUDE_PATH = ../Modbus/Inc \ + ../ # You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard # patterns (like *.h and *.hpp) to filter out the header-files in the @@ -2531,11 +2534,7 @@ INCLUDE_FILE_PATTERNS = # recursively expanded use the := operator instead of the = operator. # This tag requires that the tag ENABLE_PREPROCESSING is set to YES. -PREDEFINED = RTT_TRACE_ENABLE \ - GPIO_TRACE_ENABLE \ - SERIAL_TRACE_ENABLE \ - HAL_MODULE_ENABLED \ - TRACKERS_ENABLE +PREDEFINED = # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then this # tag can be used to specify a list of macro names that should be expanded. The diff --git a/Modbus/Inc/modbus.h b/Modbus/Inc/modbus.h index e9af0ac..3781189 100644 --- a/Modbus/Inc/modbus.h +++ b/Modbus/Inc/modbus.h @@ -14,7 +14,7 @@ Подключает все необходимые модули: -@section Инструкция по подключению +@section init Инструкция по подключению Для корректной работы надо: - Подключить обработчики RS_UART_Handler(), RS_TIM_Handler(), в соответствубщие низкоуровневые прерывания UART_IRQHandler, TIM_IRQHandler вместо HAL'овского обработчика @@ -48,7 +48,7 @@ @endverbatim -@section Подключаемые модули: +@section Подключаемые модули: - rs_message.h - работа с uart - modbus_core.h - базовые определения - modbus_coils.h - работа с дискретными выходами @@ -58,7 +58,7 @@ - modbus_diag.h - диагностика modbus -@section Структура данных Modbus +@section Структура данных Modbus #### Holding/Input Registers: - Регистры — 16-битные слова. Доступ к регистрам осуществляется через указатель. diff --git a/Modbus/Inc/modbus_coils.h b/Modbus/Inc/modbus_coils.h index 1d5f36d..cecedd6 100644 --- a/Modbus/Inc/modbus_coils.h +++ b/Modbus/Inc/modbus_coils.h @@ -5,7 +5,6 @@ ****************************************************************************** @addtogroup MODBUS_COILS Coils Tools @ingroup MODBUS_INTERNAL -@{ ****************************************************************************** * @details Модуль предоставляет функции и макросы для работы с битовыми данными: @@ -14,11 +13,11 @@ - Запись множественных coils (0x0F) - распаковка байтов в биты - Макросы для локального доступа к coils -@section Организация битовых данных: +@section Организация битовых данных: Coils упакованы в 16-битные слова для эффективного использования памяти. Биты нумеруются от младшего к старшему внутри каждого слова. -@section Адресация: +@section Адресация: - Глобальная - абсолютный адрес в пространстве Modbus - Локальная - относительный адрес внутри массива coils - Макросы автоматически вычисляют смещения и маски @@ -31,16 +30,15 @@ Coils упакованы в 16-битные слова для эффективн ///////////////////////////////////////////////////////////////////// ////////////////////---MODBUS FUNCTION DEFINES---//////////////////// -/** @brief Structure for coils operation */ -typedef enum -{ - SET_COIL, - RESET_COIL, - TOOGLE_COIL, -}MB_CoilsOpTypeDef; + //-------------------------------------------------- +/** + * @addtogroup MODBUS_COILS + * @{ + */ + /** * @brief Макрос для установки указателя на регистр, содержащий запрашиваемый коил * @param _parr_ - массив коилов. @@ -77,17 +75,14 @@ typedef enum */ #define MB_Set_Coil_Mask(_coil_) (1 << ( _coil_ - (16*((_coil_)/16)) )) +/** MODBUS_COILS + * @} + */ + ///////////////////////////////////////////////////////////////////// /////////////////////////---FUNCTIONS---///////////////////////////// -/** -* @addtogroup MODBUS_DATA_ACCESS_FUNCTIONS API for Data Access -* @ingroup MODBUS_FUNCTIONS -* @brief Функции для доступа к данным модбас -@{ -*/ - /** * @addtogroup MODBUS_REQ_COILS_API API for Coils @@ -113,6 +108,7 @@ typedef enum * } * } * @endcode + * @{ */ int MB_RespGet_CoilState(RS_MsgTypeDef *modbus_msg, uint16_t coil_addr, int *coil_state); @@ -123,6 +119,22 @@ int MB_RespGet_CoilState(RS_MsgTypeDef *modbus_msg, uint16_t coil_addr, int *coi + +/** + * @addtogroup MODBUS_DATA_ACCESS_FUNCTIONS API for Data Access + * @ingroup MODBUS_FUNCTIONS + * @brief Функции для доступа к данным модбас + * @{ + */ + +/** @brief Structure for coils operation */ +typedef enum +{ + SET_COIL, + RESET_COIL, + TOOGLE_COIL, +}MB_CoilsOpTypeDef; + /** * @brief Считать коил по локальному адресу. * @param _parr_ - массив коилов. @@ -131,7 +143,7 @@ int MB_RespGet_CoilState(RS_MsgTypeDef *modbus_msg, uint16_t coil_addr, int *coi * * @details Позволяет обратиться к коилу по адресу относительно _arr_. */ -#define MB_Read_Coil_Local(_parr_, _coil_) (( *MB_Set_Coil_Reg_Ptr(_parr_, _coil_) & MB_Set_Coil_Mask(_coil_) ) >> (_coil_)) +#define MB_Coil_Read_Local(_parr_, _coil_) (( *MB_Set_Coil_Reg_Ptr(_parr_, _coil_) & MB_Set_Coil_Mask(_coil_) ) >> (_coil_)) /** * @brief Выставить коил по локальному адресу. * @param _parr_ Указатель на массив коилов. @@ -139,7 +151,7 @@ int MB_RespGet_CoilState(RS_MsgTypeDef *modbus_msg, uint16_t coil_addr, int *coi * * @details Позволяет обратиться к коилу по адресу относительно _arr_. */ -#define MB_Set_Coil_Local(_parr_, _coil_) *MB_Set_Coil_Reg_Ptr(_parr_, _coil_) |= MB_Set_Coil_Mask(_coil_) +#define MB_Coil_Set_Local(_parr_, _coil_) *MB_Set_Coil_Reg_Ptr(_parr_, _coil_) |= MB_Set_Coil_Mask(_coil_) /** * @brief Сбросить коил по локальному адресу. * @param _parr_ Указатель на массив коилов. @@ -147,7 +159,7 @@ int MB_RespGet_CoilState(RS_MsgTypeDef *modbus_msg, uint16_t coil_addr, int *coi * * @details Позволяет обратиться к коилу по адресу относительно _arr_. */ -#define MB_Reset_Coil_Local(_parr_, _coil_) *MB_Set_Coil_Reg_Ptr(_parr_, _coil_) &= ~(MB_Set_Coil_Mask(_coil_)) +#define MB_Coil_Reset_Local(_parr_, _coil_) *MB_Set_Coil_Reg_Ptr(_parr_, _coil_) &= ~(MB_Set_Coil_Mask(_coil_)) /** * @brief Переключить состояние коила по локальному адресу. * @param _parr_ Указатель на массив коилов. @@ -155,12 +167,12 @@ int MB_RespGet_CoilState(RS_MsgTypeDef *modbus_msg, uint16_t coil_addr, int *coi * * @details Позволяет обратиться к коилу по адресу относительно _arr_. */ -#define MB_Toogle_Coil_Local(_parr_, _coil_) *MB_Set_Coil_Reg_Ptr(_parr_, _coil_) ^= MB_Set_Coil_Mask(_coil_) +#define MB_Coil_Toogle_Local(_parr_, _coil_) *MB_Set_Coil_Reg_Ptr(_parr_, _coil_) ^= MB_Set_Coil_Mask(_coil_) /* Выставить/сбросить коил по глобальному адресу */ -MB_ExceptionTypeDef MB_Write_Coil_Global(uint16_t Addr, MB_CoilsOpTypeDef WriteVal); +MB_ExceptionTypeDef MB_Coil_Write_Global(uint16_t Addr, MB_CoilsOpTypeDef WriteVal); /* Считать коил по глобальному адресу */ -uint16_t MB_Read_Coil_Global(uint16_t Addr, MB_ExceptionTypeDef *Exception); +uint16_t MB_Coil_Read_Global(uint16_t Addr, MB_ExceptionTypeDef *Exception); /** MODBUS_DATA_ACCESS_FUNCTIONS * @} @@ -176,7 +188,7 @@ uint8_t MB_Process_Read_Coils(RS_MsgTypeDef *modbus_msg); /* Обработать функцию Write Single Coils (05 - 0x05) */ uint8_t MB_Process_Write_Single_Coil(RS_MsgTypeDef *modbus_msg); /* Обработать функцию Write Multiple Coils (15 - 0x0F) */ -uint8_t MB_Write_Miltuple_Coils(RS_MsgTypeDef *modbus_msg); +uint8_t MB_Process_Write_Miltuple_Coils(RS_MsgTypeDef *modbus_msg); /** MODBUS_CMD_PROCESS_FUNCTIONS * @} diff --git a/Modbus/Inc/modbus_config.h b/Modbus/Inc/modbus_config.h index ab7ce68..12ecb7f 100644 --- a/Modbus/Inc/modbus_config.h +++ b/Modbus/Inc/modbus_config.h @@ -19,8 +19,8 @@ #include "stm32f1xx_hal.h" // Общие параметры -#define MODBUS_DEVICE_ID 1 // Адрес устройства в сети Modbus -#define MODBUS_TIMEOUT 5000 // Таймаут в тиках таймера +#define MODBUS_DEVICE_ID 1 ///< Адрес устройства в сети Modbus +#define MODBUS_TIMEOUT 5000 ///< Таймаут в тиках таймера // Строковые идентификаторы устройства #define MODBUS_VENDOR_NAME "NIO-12" @@ -41,7 +41,7 @@ // Модули modbus #define MODBUS_ENABLE_SLAVE ///< Включить обработку СЛЕЙВ режима -//#define MODBUS_ENABLE_MASTER ///< Включить обработку МАСТЕР режима +#define MODBUS_ENABLE_MASTER ///< Включить обработку МАСТЕР режима #define MODBUS_ENABLE_COILS ///< Включить обработку коилов #define MODBUS_ENABLE_HOLDINGS ///< Включить обработку регистров хранения diff --git a/Modbus/Inc/modbus_core.h b/Modbus/Inc/modbus_core.h index 6a34751..8997477 100644 --- a/Modbus/Inc/modbus_core.h +++ b/Modbus/Inc/modbus_core.h @@ -14,7 +14,7 @@ Константы размеров полей Вспомогательные макросы -@section Структура сообщения: +@section Структура сообщения: [ADDR][FUNC][DATA...][CRC] - Адрес: 1 байт - Функция: 1 байт diff --git a/Modbus/Inc/modbus_data.h b/Modbus/Inc/modbus_data.h index cb6a321..d65dca4 100644 --- a/Modbus/Inc/modbus_data.h +++ b/Modbus/Inc/modbus_data.h @@ -13,7 +13,7 @@ - Input Registers (R/O) - входные регистры - Coils (R/W) - дискретные выходы -@section Базовая настройка под устройство: +@section Базовая настройка под устройство: 1. Настроить диапазоны адресов - @ref R_INPUT_ADDR и @ref R_INPUT_QNT для входных регистров - @ref R_HOLDING_ADDR и @ref R_HOLDING_QNT для регистров хранения @@ -24,7 +24,7 @@ - @ref MB_DataCoilsTypeDef -@section Расширенная настройка под устройство: +@section Расширенная настройка под устройство: 1. Добавить новый массив с нужными данными. 2. Добавить дефайны для определения его начального адреса и количества элементов 3. Добавить проверку адресов в MB_DefineRegistersAddress/MB_DefineCoilsAddress. diff --git a/Modbus/Inc/modbus_devid.h b/Modbus/Inc/modbus_devid.h index b14986b..c6fe850 100644 --- a/Modbus/Inc/modbus_devid.h +++ b/Modbus/Inc/modbus_devid.h @@ -5,7 +5,6 @@ ****************************************************************************** @addtogroup MODBUS_DEVID Device Identifications Tools @ingroup MODBUS_INTERNAL -@{ ****************************************************************************** * @details Модуль реализации функции Read Device Identifications (0x2B): @@ -13,7 +12,7 @@ - Расширенная идентификация (URL, Model, User fields) - Поддержка потоковой передачи больших объектов -@section Объекты идентификации: +@section Объекты идентификации: - VendorName, ProductCode, Revision - обязательные - VendorUrl, ProductName, ModelName - опциональные - User objects - пользовательские поля @@ -27,6 +26,11 @@ ///////////////////////////////////////////////////////////////////// ///////////////---DEVICE IDENTIVICATIONS DEFINES---////////////////// +/** + * @addtogroup MODBUS_DEVID + * @{ + */ + /** @brief Структура для объекта (идентификатора устройства модбас) */ typedef struct { @@ -61,15 +65,20 @@ void MB_DeviceInentificationInit(void); * @brief Инициализация объектов * @details С помозью этого дефайна инициализируются объекты в @ref MB_DeviceInentificationInit */ -#define MB_ObjectInit(_p_obj_, _userstring_) (_p_obj_)->length = sizeof(_userstring_);\ - (_p_obj_)->name = _userstring_; - /** +#define MB_ObjectInit(_p_obj_, _userstring_) \ +(_p_obj_)->length = sizeof(_userstring_);\ +(_p_obj_)->name = _userstring_; +/** * @brief Инициализация пользовательских объектов * @details С помозью этого дефайна инициализируются пользовательские объекты в MB_DeviceInentificationInit */ #define MB_UserObjectInit(_pinfostruct_, _user_numb_) MB_ObjectInit(&(_pinfostruct_)->User[_user_numb_], MODBUS_USEROBJECT##_user_numb_##_NAME) + +/** MODBUS_DEVID +* @} +*/ ////////////////////---MODBUS MESSAGE DEFINES---///////////////////// @@ -80,7 +89,7 @@ void MB_DeviceInentificationInit(void); /** * @addtogroup MODBUS_REQ_DEFID_API API for Device Identifications * @ingroup MODBUS_REQUEST_MSG - * @brief Макросы для чтения идентификторов из ответа в режиме мастер + * @brief API для чтения идентификторов из ответа в режиме мастер * @details Примеры использования: * * @code @@ -107,6 +116,7 @@ void MB_DeviceInentificationInit(void); * } * } * @endcode + * @{ */ /* Получить количество объектов в сообщении */ @@ -122,12 +132,19 @@ int MB_RespGet_ObjectByIndex(RS_MsgTypeDef *modbus_msg, int index, uint8_t *obj_ */ +/** + * @addtogroup MODBUS_DEVID + * @{ + */ /* Записать Один Объект Идентификатора в массив данных */ void MB_WriteSingleObjectToMessage(char *mbdata, unsigned *ind, MB_DeviceObjectTypeDef *obj); /* Записать Массив Объектов Идентификатора в массив данных */ void MB_WriteObjectsToMessage(RS_MsgTypeDef *modbus_msg, unsigned maxidofobj); +/** MODBUS_DEVID + * @} + */ //---------PROCESS MODBUS COMMAND FUNCTIONS--------- /** * @addtogroup MODBUS_CMD_PROCESS_FUNCTIONS @@ -142,7 +159,3 @@ uint8_t MB_Process_Read_Device_Identifications(RS_MsgTypeDef *modbus_msg); /////////////////////////---FUNCTIONS---///////////////////////////// #endif //__MODBUS_DEVID_H_ - -/** MODBUS_DEVID - * @} - */ \ No newline at end of file diff --git a/Modbus/Inc/modbus_diag.h b/Modbus/Inc/modbus_diag.h index b6d86c6..86d7ac4 100644 --- a/Modbus/Inc/modbus_diag.h +++ b/Modbus/Inc/modbus_diag.h @@ -5,7 +5,6 @@ ****************************************************************************** @addtogroup MODBUS_DIAG Diagnostics Tools @ingroup MODBUS_INTERNAL -@{ ****************************************************************************** * @details Модуль реализации Diagnostics (Serial Line only) (0x08): @@ -13,7 +12,7 @@ - Возможность выставить/сбросить любой бит в диагностическом регистре - Сбор статистики работы устройства - Управление режимами работы -******************************************************************************/ +****************************************** ************************************/ #ifndef __MODBUS_DIAG_H_ #define __MODBUS_DIAG_H_ #include "modbus_core.h" @@ -21,6 +20,11 @@ ///////////////////////////////////////////////////////////////////// /////////////////---DEVICE DIAGNOSTICS DEFINES---//////////////////// +/** + * @addtogroup MODBUS_DIAG + * @{ + */ + /** @brief Режимы работы устройства */ typedef enum { @@ -57,6 +61,10 @@ extern MB_DiagnosticsInfoTypeDef MB_DIAG; /* Инициализация диагностических счетчиков */ void MB_DiagnosticsInit(void); +/** MODBUS_DIAG + * @} + */ + /** * @addtogroup MODBUS_REQ_DIAG_API API for Diagnostics * @ingroup MODBUS_REQUEST_MSG @@ -64,17 +72,20 @@ void MB_DiagnosticsInit(void); * @details Примеры использования: * * @code - * Получить данные диагностики (значение счетчика) + * // Получить данные диагностики (значение счетчика) * uint16_t counter_value; * if(MB_RespGet_Diagnostic(&MODBUS_MSG, &counter_value)) * { * printf("Counter value: %d\n", counter_value); * } * @endcode + * @{ */ + int MB_RespGet_Diagnostic(RS_MsgTypeDef *modbus_msg, uint16_t *data); + /** MODBUS_REQ_DIAG_API - * @} + * @} */ @@ -95,6 +106,17 @@ int MB_Diagnostics_WriteBit(int bit_num, int bit_state); int MB_Diagnostics_GetBit(int bit_num); /* Получение текущего режима устройства */ MB_DeviceModeTypeDef MB_GetDeviceMode(void); + + +/* Функции для обновления счетчиков диагностики */ +void MB_Diagnostics_BusMessageCnt(void); +void MB_Diagnostics_CommunicationErrorCnt(void); +void MB_Diagnostics_ExceptionErrorCnt(void); +void MB_Diagnostics_CharacterOverrunCnt(void); +void MB_Diagnostics_SlaveMessageCnt(void); +void MB_Diagnostics_SlaveNoResponseCnt(void); +void MB_Diagnostics_SlaveNAKCnt(void); +void MB_Diagnostics_SlaveBusyCnt(void); /** MODBUS_CMD_PROCESS_FUNCTIONS * @} */ @@ -113,15 +135,6 @@ uint8_t MB_Process_Diagnostics(RS_MsgTypeDef *modbus_msg); */ -/* Функции для обновления счетчиков диагностики */ -void MB_Diagnostics_BusMessageCnt(void); -void MB_Diagnostics_CommunicationErrorCnt(void); -void MB_Diagnostics_ExceptionErrorCnt(void); -void MB_Diagnostics_CharacterOverrunCnt(void); -void MB_Diagnostics_SlaveMessageCnt(void); -void MB_Diagnostics_SlaveNoResponseCnt(void); -void MB_Diagnostics_SlaveNAKCnt(void); -void MB_Diagnostics_SlaveBusyCnt(void); /////////////////////////---FUNCTIONS---///////////////////////////// diff --git a/Modbus/Inc/modbus_holdregs.h b/Modbus/Inc/modbus_holdregs.h index 3a4e253..bfe3b81 100644 --- a/Modbus/Inc/modbus_holdregs.h +++ b/Modbus/Inc/modbus_holdregs.h @@ -5,7 +5,6 @@ ****************************************************************************** @addtogroup MODBUS_INS Input Register Tools @ingroup MODBUS_INTERNAL -@{ ****************************************************************************** * @details Модуль обработки команд для регистров хранения (Holding Registers): @@ -13,7 +12,7 @@ - Запись одиночного регистра (0x06) - Запись множества регистров (0x10) -@section Регистры хранения: +@section Регистры хранения: - Read/Write доступ - 16-битные значения (uint16_t) ******************************************************************************/ @@ -42,7 +41,3 @@ uint8_t MB_Process_Write_Miltuple_Regs(RS_MsgTypeDef *modbus_msg); /////////////////////////---FUNCTIONS---///////////////////////////// #endif //__MODBUS_HOLDREGS_H_ - -/** MODBUS_INS - * @} - */ \ No newline at end of file diff --git a/Modbus/Inc/modbus_inputregs.h b/Modbus/Inc/modbus_inputregs.h index 0aba2a6..9fa47e2 100644 --- a/Modbus/Inc/modbus_inputregs.h +++ b/Modbus/Inc/modbus_inputregs.h @@ -5,13 +5,12 @@ ****************************************************************************** @addtogroup MODBUS_HOLD Holding Registers Tools @ingroup MODBUS_INTERNAL -@{ ****************************************************************************** * @details Модуль обработки команд для входных регистров (Input Registers): - Чтение множества регистров (0x04) -@section Входные регистры: +@section Входные регистры: - Read-Only доступ - 16-битные значения ******************************************************************************/ @@ -25,7 +24,7 @@ //---------PROCESS MODBUS COMMAND FUNCTIONS--------- /** * @addtogroup MODBUS_CMD_PROCESS_FUNCTIONS Internal Process Functions - * @ingroup MODBUS_FUNCTIONS + * @ingroup MODBUS_INTERNAL * @brief Функции обработки запросов модбас @{ */ @@ -38,6 +37,3 @@ uint8_t MB_Process_Read_Input_Regs(RS_MsgTypeDef *modbus_msg); /////////////////////////---FUNCTIONS---///////////////////////////// #endif //__MODBUS_INPUTREGS_H_ -/** MODBUS_HOLD - * @} - */ \ No newline at end of file diff --git a/Modbus/Inc/modbus_master.h b/Modbus/Inc/modbus_master.h index b8f98e2..1852593 100644 --- a/Modbus/Inc/modbus_master.h +++ b/Modbus/Inc/modbus_master.h @@ -5,7 +5,6 @@ ****************************************************************************** @addtogroup MODBUS_MASTER Modbus master funtions @ingroup MODBUS_CMD_PROCESS_FUNCTIONS -@{ ****************************************************************************** * @details Модуль реализации обработки UART сообщение в режиме мастер @@ -24,7 +23,7 @@ * @ingroup MODBUS_FUNCTIONS * @brief Макросы для создания запросов в режиме мастер * @details Примеры использования: - * + * @code * // Чтение 10 holding registers начиная с адреса 0 * RS_MsgTypeDef read_msg = MB_REQUEST_READ_HOLDING_REGS(1, 0, 10); * @@ -36,6 +35,8 @@ * * // Идентификация устройства * RS_MsgTypeDef dev_id_msg = MB_REQUEST_READ_DEVICE_ID_BASIC(1); + * @endcode + * @{ */ //---------КЛАССИЧЕСКИЕ ДАННЫЕ----------- @@ -98,6 +99,7 @@ RS_MsgTypeDef MB_REQUEST_READ_DEVICE_ID_SPECIFIC(uint8_t slave_addr, uint8_t obj * } * } * @endcode + * @{ */ int MB_RespGet_RegisterValue(RS_MsgTypeDef *modbus_msg, uint16_t reg_addr, uint16_t *reg_value); @@ -107,15 +109,18 @@ int MB_RespGet_RegisterValue(RS_MsgTypeDef *modbus_msg, uint16_t reg_addr, uint1 * @} */ +/** + * @addtogroup MODBUS_MASTER + * @{ + */ /* Сбор сообщения в буфер UART в режиме мастер (фрейм мастера из msg -> uart) */ RS_StatusTypeDef MB_Master_Collect_Message(RS_HandleTypeDef *hmodbus, RS_MsgTypeDef *modbus_msg, uint8_t *modbus_uart_buff); /* Парс сообщения в режиме мастер (фрейм слейва из uart -> msg) */ RS_StatusTypeDef MB_Master_Parse_Message(RS_HandleTypeDef *hmodbus, RS_MsgTypeDef *modbus_msg, uint8_t *modbus_uart_buff); - -#endif //__MODBUS_MASTER_H_ - /** MODBUS_MASTER * @} - */ \ No newline at end of file + */ + +#endif //__MODBUS_MASTER_H_ diff --git a/Modbus/Inc/modbus_slave.h b/Modbus/Inc/modbus_slave.h index 810d7ef..89e18aa 100644 --- a/Modbus/Inc/modbus_slave.h +++ b/Modbus/Inc/modbus_slave.h @@ -5,7 +5,6 @@ ****************************************************************************** @addtogroup MODBUS_SLAVE Modbus slave funtions @ingroup MODBUS_CMD_PROCESS_FUNCTIONS -@{ ****************************************************************************** * @details Модуль реализации обработки UART сообщение в режиме слейв @@ -19,6 +18,10 @@ #ifdef MODBUS_ENABLE_SLAVE #define MODBUS_MODE_SLAVE 0 #endif +/** + * @addtogroup MODBUS_SLAVE + * @{ + */ /* Ответ на сообщение в режиме слейва */ RS_StatusTypeDef MB_Slave_Response(RS_HandleTypeDef *hmodbus, RS_MsgTypeDef *modbus_msg); @@ -27,8 +30,7 @@ RS_StatusTypeDef MB_Slave_Collect_Message(RS_HandleTypeDef *hmodbus, RS_MsgTypeD /* Парс сообщения в режиме слейв (фрейм мастера из uart -> msg) */ RS_StatusTypeDef MB_Slave_Parse_Message(RS_HandleTypeDef *hmodbus, RS_MsgTypeDef *modbus_msg, uint8_t *modbus_uart_buff); -#endif //__MODBUS_SLAVE_H_ - -/** MODBUS_MASTER +/** MODBUS_SLAVE * @} - */ \ No newline at end of file + */ +#endif //__MODBUS_SLAVE_H_ diff --git a/Modbus/Inc/rs_message.h b/Modbus/Inc/rs_message.h index 98b9ea5..6fcdc71 100644 --- a/Modbus/Inc/rs_message.h +++ b/Modbus/Inc/rs_message.h @@ -11,19 +11,19 @@ Универсальная библиотека для работы с последовательными протоколами (Modbus, Custom) через UART в режиме прерываний с поддержкой таймаутов. -@section Основные возможности: +@section Основные возможности: - Прием/передача в прерываниях - Обработка IDLE линии для определения конца фрейма - Таймауты приема через TIM - Гибкая настройка размера сообщений -@section Использование: +@section Использование: 1. Определить структуру сообщения и размеры буфера 2. Реализовать weak-функции обработки сообщений 3. Добавить вызовы RS_UART_Handler/RS_TIM_Handler в прерывания 4. Инициализировать через RS_Init() и запустить прием RS_Receive_IT() -@section Особенности: +@section Особенности: - Буфер: RS_Buffer[MSG_SIZE_MAX] Общий для приема/передачи - Состояния: отслеживается через флаги в RS_HandleTypeDef - Таймауты: контролируют максимальное время ожидания фрейма diff --git a/Modbus/Src/modbus.c b/Modbus/Src/modbus.c index a39cf08..72ba6eb 100644 --- a/Modbus/Src/modbus.c +++ b/Modbus/Src/modbus.c @@ -6,7 +6,7 @@ * @details Файл содержит реализацию функций работы с Modbus. -@section Функции и макросы +@section Функции и макросы ### Инициализация: - MODBUS_FirstInit() — Инициализация Modbus (подключение UART, TIM) diff --git a/Modbus/Src/modbus_coils.c b/Modbus/Src/modbus_coils.c index 1a6d195..529a5e1 100644 --- a/Modbus/Src/modbus_coils.c +++ b/Modbus/Src/modbus_coils.c @@ -23,7 +23,7 @@ * @details Позволяет обратиться к любому коилу по его глобальному адрессу. Вне зависимости от того как коилы размещены в памяти. */ -MB_ExceptionTypeDef MB_Write_Coil_Global(uint16_t Addr, MB_CoilsOpTypeDef WriteVal) +MB_ExceptionTypeDef MB_Coil_Write_Global(uint16_t Addr, MB_CoilsOpTypeDef WriteVal) { //---------CHECK FOR ERRORS---------- MB_ExceptionTypeDef Exception = NO_ERRORS; @@ -63,7 +63,7 @@ MB_ExceptionTypeDef MB_Write_Coil_Global(uint16_t Addr, MB_CoilsOpTypeDef WriteV * @details Позволяет обратиться к любому коилу по его глобальному адрессу. Вне зависимости от того как коилы размещены в памяти. */ -uint16_t MB_Read_Coil_Global(uint16_t Addr, MB_ExceptionTypeDef *Exception) +uint16_t MB_Coil_Read_Global(uint16_t Addr, MB_ExceptionTypeDef *Exception) { //---------CHECK FOR ERRORS---------- MB_ExceptionTypeDef Exception_tmp; @@ -221,7 +221,7 @@ uint8_t MB_Process_Write_Single_Coil(RS_MsgTypeDef *modbus_msg) * @return fMessageHandled Статус о результате обработки комманды. * @details Обработка команды Write Multiple Coils. */ -uint8_t MB_Write_Miltuple_Coils(RS_MsgTypeDef *modbus_msg) +uint8_t MB_Process_Write_Miltuple_Coils(RS_MsgTypeDef *modbus_msg) { //---------CHECK FOR ERRORS---------- if (modbus_msg->ByteCnt != Divide_Up(modbus_msg->Qnt, 8)) @@ -285,10 +285,10 @@ uint8_t MB_Write_Miltuple_Coils(RS_MsgTypeDef *modbus_msg) int MB_RespGet_CoilState(RS_MsgTypeDef *modbus_msg, uint16_t coil_addr, int *coil_state) {return 0;} -MB_ExceptionTypeDef MB_Write_Coil_Global(uint16_t Addr, MB_CoilsOpTypeDef WriteVal) {return ILLEGAL_FUNCTION;} -uint16_t MB_Read_Coil_Global(uint16_t Addr, MB_ExceptionTypeDef *Exception) {return 0;} +MB_ExceptionTypeDef MB_Coil_Write_Global(uint16_t Addr, MB_CoilsOpTypeDef WriteVal) {return ILLEGAL_FUNCTION;} +uint16_t MB_Coil_Read_Global(uint16_t Addr, MB_ExceptionTypeDef *Exception) {return 0;} uint8_t MB_Process_Read_Coils(RS_MsgTypeDef *modbus_msg) {return 0;} uint8_t MB_Process_Write_Single_Coil(RS_MsgTypeDef *modbus_msg) {return 0;} -uint8_t MB_Write_Miltuple_Coils(RS_MsgTypeDef *modbus_msg) {return 0;} +uint8_t MB_Process_Write_Miltuple_Coils(RS_MsgTypeDef *modbus_msg) {return 0;} #endif \ No newline at end of file diff --git a/Modbus/Src/modbus_data.c b/Modbus/Src/modbus_data.c index 7f1b00b..c242c49 100644 --- a/Modbus/Src/modbus_data.c +++ b/Modbus/Src/modbus_data.c @@ -9,7 +9,7 @@ - Определение указателей на реальные данные в памяти - Поддержка пользовательских массивов регистров и coils -@section Валидация адресов: +@section Валидация адресов: - MB_Check_Address_For_Arr() - проверка принадлежности адреса массиву - MB_DefineRegistersAddress() - получение указателя на регистры - MB_DefineCoilsAddress() - получение указателя на coils diff --git a/Modbus/Src/modbus_devid.c b/Modbus/Src/modbus_devid.c index 4a84891..7218bee 100644 --- a/Modbus/Src/modbus_devid.c +++ b/Modbus/Src/modbus_devid.c @@ -9,7 +9,7 @@ - Поддержка потоковой передачи при большом количестве объектов - Автоматический расчет MoreFollows флагов -@section Потоковая передача: +@section Потоковая передача: При большом количестве объектов идентификация разбивается на несколько сообщений с установкой флага MoreFollows и указанием NextObjId для продолжения чтения в следующем запросе. diff --git a/Modbus/Src/modbus_holdregs.c b/Modbus/Src/modbus_holdregs.c index 64760b7..786552a 100644 --- a/Modbus/Src/modbus_holdregs.c +++ b/Modbus/Src/modbus_holdregs.c @@ -9,12 +9,12 @@ - Запись одиночного регистра (0x06) - прямая запись значения - Запись множественных регистров (0x10) - пакетная запись из буфера -@section Валидация данных: +@section Валидация данных: - Проверка соответствия количества байт и регистров Валидация адресов через MB_DefineRegistersAddress() - Обработка исключений при некорректных запросах -@section Echo-ответы: +@section Echo-ответы: При успешной записи формируется echo-ответ с теми же данными, что были в запросе (для функций 0x05, 0x06, 0x0F, 0x10). ******************************************************************************/ diff --git a/Modbus/Src/modbus_master.c b/Modbus/Src/modbus_master.c index f0af8ba..d45b68a 100644 --- a/Modbus/Src/modbus_master.c +++ b/Modbus/Src/modbus_master.c @@ -6,7 +6,7 @@ * @details Файл содержит реализацию функций для работы Modbus в режиме мастера. -@section Функции и макросы +@section Функции и макросы - MB_Master_Collect_Message() — Сбор сообщения в режиме мастера - MB_Master_Parse_Message() — Парс сообщения в режиме мастера diff --git a/Modbus/Src/modbus_slave.c b/Modbus/Src/modbus_slave.c index 80311ba..982bc1a 100644 --- a/Modbus/Src/modbus_slave.c +++ b/Modbus/Src/modbus_slave.c @@ -6,7 +6,7 @@ * @details Файл содержит реализацию функций для работы Modbus в режиме слейва. -@section Функции и макросы +@section Функции и макросы - MB_Slave_Response() — Ответ на запрос - MB_Slave_Collect_Message() — Сбор сообщения в режиме слейва. @@ -78,7 +78,7 @@ RS_StatusTypeDef MB_Slave_Response(RS_HandleTypeDef *hmodbus, RS_MsgTypeDef *mod // Write Multiple Coils case MB_W_COILS: - hmodbus->f.MessageHandled = MB_Write_Miltuple_Coils(hmodbus->pMessagePtr); + hmodbus->f.MessageHandled = MB_Process_Write_Miltuple_Coils(hmodbus->pMessagePtr); if(hmodbus->f.MessageHandled) { hmodbus->f.DataUpdated = 1; diff --git a/Modbus/Src/rs_message.c b/Modbus/Src/rs_message.c index d186530..6572259 100644 --- a/Modbus/Src/rs_message.c +++ b/Modbus/Src/rs_message.c @@ -10,7 +10,7 @@ - Таймаутов через таймер - Двухстадийного приема (заголовок + данные) -@section Архитектура: +@section Архитектура: В режиме слейв: - Инициализация приема с сообщения с максимальным размером MSG_SIZE_MAX - При срабатывании прерывания IDLE - обработка полученного сообщения @@ -18,7 +18,7 @@ - Отправка запроса и переход в режим приема сообщения с максимальным размером MSG_SIZE_MAX - При срабатывании прерывания IDLE - обработка полученного ответа -@section Необходимые обработчики: +@section Необходимые обработчики: - RS_UART_Handler() в UARTx_IRQHandler вместо HAL_UART_IRQHandler() - RS_TIM_Handler() в TIMx_IRQHandler вместо HAL_TIM_IRQHandler() ******************************************************************************/ diff --git a/STM32F103_Example/MDK-ARM/Modbus_example.uvguix.wot89 b/STM32F103_Example/MDK-ARM/Modbus_example.uvguix.wot89 index c08db89..ee47f4b 100644 --- a/STM32F103_Example/MDK-ARM/Modbus_example.uvguix.wot89 +++ b/STM32F103_Example/MDK-ARM/Modbus_example.uvguix.wot89 @@ -78,11 +78,11 @@ - 1 - 1 + 0 + 0 0 - 0 - -1 + 50 + 16 @@ -93,25 +93,25 @@ 2 3 - -1 - -1 + -32000 + -32000 -1 -1 - 84 - -33 - 777 - 873 + 337 + 1912 + 2722 + 1126 0 - 668 - 0100000004000000010000000100000001000000010000000000000002000000000000000100000001000000000000002800000028000000010000000600000000000000010000003D453A5C2E574F524B5C53544D33325C53544D33325F4D6F646275735C53544D3332463130335F4578616D706C655C436F72655C5372635C6D61696E2E6300000000066D61696E2E6300000000C5D4F200FFFFFFFF2F453A5C2E574F524B5C53544D33325C53544D33325F4D6F646275735C4D6F646275735C5372635C6D6F646275732E6300000000086D6F646275732E6300000000FFDC7800FFFFFFFF34453A5C2E574F524B5C53544D33325C53544D33325F4D6F646275735C4D6F646275735C5372635C6D6F646275735F646174612E63000000000D6D6F646275735F646174612E6300000000BECEA100FFFFFFFF3D453A5C2E574F524B5C53544D33325C53544D33325F4D6F646275735C53544D3332463130335F4578616D706C655C436F72655C5372635C6770696F2E6300000000066770696F2E6300000000F0A0A100FFFFFFFF36453A5C2E574F524B5C53544D33325C53544D33325F4D6F646275735C4D6F646275735C496E635C6D6F646275735F636F6E6669672E68000000000F6D6F646275735F636F6E6669672E6800000000BCA8E100FFFFFFFF34453A5C2E574F524B5C53544D33325C53544D33325F4D6F646275735C4D6F646275735C496E635C6D6F646275735F636F72652E68000000000D6D6F646275735F636F72652E68000000009CC1B600FFFFFFFF0100000010000000C5D4F200FFDC7800BECEA100F0A0A100BCA8E1009CC1B600F7B88600D9ADC200A5C2D700B3A6BE00EAD6A300F6FA7D00B5E99D005FC3CF00C1838300CACAD500010000000000000002000000F4000000660000008007000080020000 + 2593 + 0100000004000000010000000100000001000000010000000000000002000000000000000100000001000000000000002800000028000000010000001C00000004000000010000003D453A5C2E574F524B5C53544D33325C53544D33325F4D6F646275735C53544D3332463130335F4578616D706C655C436F72655C5372635C6D61696E2E6300000000066D61696E2E6300000000C5D4F200FFFFFFFF2F453A5C2E574F524B5C53544D33325C53544D33325F4D6F646275735C4D6F646275735C5372635C6D6F646275732E6300000000086D6F646275732E6300000000FFDC7800FFFFFFFF34453A5C2E574F524B5C53544D33325C53544D33325F4D6F646275735C4D6F646275735C5372635C6D6F646275735F646174612E63000000000D6D6F646275735F646174612E6300000000BECEA100FFFFFFFF3D453A5C2E574F524B5C53544D33325C53544D33325F4D6F646275735C53544D3332463130335F4578616D706C655C436F72655C5372635C6770696F2E6300000000066770696F2E6300000000F0A0A100FFFFFFFF36453A5C2E574F524B5C53544D33325C53544D33325F4D6F646275735C4D6F646275735C496E635C6D6F646275735F636F6E6669672E68000000000F6D6F646275735F636F6E6669672E6800000000BCA8E100FFFFFFFF34453A5C2E574F524B5C53544D33325C53544D33325F4D6F646275735C4D6F646275735C496E635C6D6F646275735F636F72652E68000000000D6D6F646275735F636F72652E68000000009CC1B600FFFFFFFF36453A5C2E574F524B5C53544D33325C53544D33325F4D6F646275735C4D6F646275735C5372635C6D6F646275735F6D61737465722E63000000000F6D6F646275735F6D61737465722E6300000000F7B88600FFFFFFFF35453A5C2E574F524B5C53544D33325C53544D33325F4D6F646275735C4D6F646275735C5372635C6D6F646275735F636F696C732E63000000000E6D6F646275735F636F696C732E6300000000D9ADC200FFFFFFFF36453A5C2E574F524B5C53544D33325C53544D33325F4D6F646275735C4D6F646275735C496E635C6D6F646275735F6D61737465722E68000000000F6D6F646275735F6D61737465722E6800000000A5C2D700FFFFFFFF34453A5C2E574F524B5C53544D33325C53544D33325F4D6F646275735C4D6F646275735C496E635C6D6F646275735F646961672E68000000000D6D6F646275735F646961672E6800000000B3A6BE00FFFFFFFF34453A5C2E574F524B5C53544D33325C53544D33325F4D6F646275735C4D6F646275735C5372635C6D6F646275735F646961672E63000000000D6D6F646275735F646961672E6300000000EAD6A300FFFFFFFF35453A5C2E574F524B5C53544D33325C53544D33325F4D6F646275735C4D6F646275735C496E635C6D6F646275735F64657669642E68000000000E6D6F646275735F64657669642E6800000000F6FA7D00FFFFFFFF35453A5C2E574F524B5C53544D33325C53544D33325F4D6F646275735C4D6F646275735C5372635C6D6F646275735F64657669642E63000000000E6D6F646275735F64657669642E6300000000B5E99D00FFFFFFFF4B453A5C2E574F524B5C53544D33325C53544D33325F4D6F646275735C53544D3332463130335F4578616D706C655C4D444B2D41524D5C737461727475705F73746D33326631303378622E730000000015737461727475705F73746D33326631303378622E73000000005FC3CF00FFFFFFFF49453A5C2E574F524B5C53544D33325C53544D33325F4D6F646275735C53544D3332463130335F4578616D706C655C436F72655C5372635C73797374656D5F73746D3332663178782E63000000001273797374656D5F73746D3332663178782E6300000000C1838300FFFFFFFF35453A5C2E574F524B5C53544D33325C53544D33325F4D6F646275735C4D6F646275735C496E635C6D6F646275735F636F696C732E68000000000E6D6F646275735F636F696C732E6800000000CACAD500FFFFFFFF38453A5C2E574F524B5C53544D33325C53544D33325F4D6F646275735C4D6F646275735C5372635C6D6F646275735F686F6C64726567732E6300000000116D6F646275735F686F6C64726567732E6300000000C5D4F200FFFFFFFF35453A5C2E574F524B5C53544D33325C53544D33325F4D6F646275735C4D6F646275735C5372635C6D6F646275735F736C6176652E63000000000E6D6F646275735F736C6176652E6300000000FFDC7800FFFFFFFF3C453A5C2E574F524B5C53544D33325C53544D33325F4D6F646275735C53544D3332463130335F4578616D706C655C436F72655C5372635C74696D2E63000000000574696D2E6300000000BECEA100FFFFFFFF39453A5C2E574F524B5C53544D33325C53544D33325F4D6F646275735C4D6F646275735C496E635C6D6F646275735F696E707574726567732E6800000000126D6F646275735F696E707574726567732E6800000000F0A0A100FFFFFFFF2F453A5C2E574F524B5C53544D33325C53544D33325F4D6F646275735C4D6F646275735C496E635C6D6F646275732E6800000000086D6F646275732E6800000000BCA8E100FFFFFFFF35453A5C2E574F524B5C53544D33325C53544D33325F4D6F646275735C4D6F646275735C496E635C6D6F646275735F736C6176652E68000000000E6D6F646275735F736C6176652E68000000009CC1B600FFFFFFFF34453A5C2E574F524B5C53544D33325C53544D33325F4D6F646275735C4D6F646275735C5372635C6D6F646275735F636F72652E63000000000D6D6F646275735F636F72652E6300000000F7B88600FFFFFFFF38453A5C2E574F524B5C53544D33325C53544D33325F4D6F646275735C4D6F646275735C496E635C6D6F646275735F686F6C64726567732E6800000000116D6F646275735F686F6C64726567732E6800000000D9ADC200FFFFFFFF39453A5C2E574F524B5C53544D33325C53544D33325F4D6F646275735C4D6F646275735C5372635C6D6F646275735F696E707574726567732E6300000000126D6F646275735F696E707574726567732E6300000000A5C2D700FFFFFFFF33453A5C2E574F524B5C53544D33325C53544D33325F4D6F646275735C4D6F646275735C5372635C72735F6D6573736167652E63000000000C72735F6D6573736167652E6300000000B3A6BE00FFFFFFFF33453A5C2E574F524B5C53544D33325C53544D33325F4D6F646275735C4D6F646275735C496E635C72735F6D6573736167652E68000000000C72735F6D6573736167652E6800000000EAD6A300FFFFFFFF34453A5C2E574F524B5C53544D33325C53544D33325F4D6F646275735C4D6F646275735C496E635C6D6F646275735F646174612E68000000000D6D6F646275735F646174612E6800000000F6FA7D00FFFFFFFF0100000010000000C5D4F200FFDC7800BECEA100F0A0A100BCA8E1009CC1B600F7B88600D9ADC200A5C2D700B3A6BE00EAD6A300F6FA7D00B5E99D005FC3CF00C1838300CACAD5000100000000000000020000007408000071000000B80B0000D3050000 @@ -134,7 +134,7 @@ 16 - A4000000BB0000006C03000051010000 + F40000006600000090050000FC000000 @@ -150,7 +150,7 @@ 0 16 - 0300000066000000ED00000050020000 + 0300000066000000ED00000098050000 16 @@ -170,7 +170,7 @@ 0 16 - 0300000066000000ED00000050020000 + 0300000066000000ED00000098050000 16 @@ -190,7 +190,7 @@ 0 16 - 000000004502000090050000DB020000 + 03000000480200008D050000C2020000 16 @@ -210,7 +210,7 @@ 0 16 - 03000000480200008D050000AE020000 + 03000000480200008D050000C2020000 16 @@ -230,7 +230,7 @@ 0 16 - 03000000480200008D050000AE020000 + 03000000480200008D050000C2020000 16 @@ -250,7 +250,7 @@ 0 16 - 03000000480200008D050000AE020000 + 03000000480200008D050000C2020000 16 @@ -270,7 +270,7 @@ 0 16 - A3040000660000008D05000009010000 + A3040000660000008D05000028020000 16 @@ -330,7 +330,7 @@ 0 16 - 03000000480200008D050000AE020000 + 03000000480200008D050000C2020000 16 @@ -350,7 +350,7 @@ 0 16 - 03000000480200008D050000AE020000 + 03000000480200008D050000C2020000 16 @@ -370,7 +370,7 @@ 0 16 - 03000000480200008D050000AE020000 + 03000000480200008D050000C2020000 16 @@ -390,7 +390,7 @@ 0 16 - 03000000480200008D050000AE020000 + 03000000480200008D050000C2020000 16 @@ -410,7 +410,7 @@ 0 16 - 03000000480200008D050000AE020000 + 03000000480200008D050000C2020000 16 @@ -430,7 +430,7 @@ 0 16 - 03000000480200008D050000AE020000 + 03000000480200008D050000C2020000 16 @@ -450,7 +450,7 @@ 0 16 - 0300000066000000ED00000050020000 + 0300000066000000ED00000098050000 16 @@ -470,7 +470,7 @@ 0 16 - 0300000066000000ED00000050020000 + 0300000066000000ED00000098050000 16 @@ -490,7 +490,7 @@ 0 16 - 03000000840200007D070000F5030000 + 03000000CC050000350400003D070000 16 @@ -530,7 +530,7 @@ 0 16 - 03000000840200007D070000F5030000 + 03000000CC050000350400003D070000 16 @@ -550,7 +550,7 @@ 0 16 - F40000006300000090050000E5000000 + F7000000660000008D050000CC000000 16 @@ -610,7 +610,7 @@ 0 16 - A0040000630000009005000041020000 + A3040000660000008D05000028020000 16 @@ -630,7 +630,7 @@ 0 16 - 000000004502000090050000C7020000 + 03000000480200008D050000C2020000 16 @@ -690,7 +690,7 @@ 0 16 - F40000006300000090050000E5000000 + F7000000660000008D050000CC000000 16 @@ -730,7 +730,7 @@ 0 16 - A3040000660000008D0500008E010000 + A3040000660000008D05000028020000 16 @@ -750,7 +750,7 @@ 0 16 - A3040000660000008D0500008E010000 + A3040000660000008D05000028020000 16 @@ -770,7 +770,7 @@ 0 16 - A3040000660000008D0500008E010000 + A3040000660000008D05000028020000 16 @@ -790,7 +790,7 @@ 0 16 - A3040000660000008D0500008E010000 + A3040000660000008D05000028020000 16 @@ -810,7 +810,7 @@ 0 16 - A3040000660000008D0500008E010000 + A3040000660000008D05000028020000 16 @@ -830,7 +830,7 @@ 0 16 - A3040000660000008D0500008E010000 + A3040000660000008D05000028020000 16 @@ -850,7 +850,7 @@ 0 16 - A3040000660000008D0500008E010000 + A3040000660000008D05000028020000 16 @@ -870,7 +870,7 @@ 0 16 - A3040000660000008D0500008E010000 + A3040000660000008D05000028020000 16 @@ -890,7 +890,7 @@ 0 16 - A3040000660000008D0500008E010000 + A3040000660000008D05000028020000 16 @@ -910,7 +910,7 @@ 0 16 - A3040000660000008D0500008E010000 + A3040000660000008D05000028020000 16 @@ -930,7 +930,7 @@ 0 16 - A3040000660000008D0500008E010000 + A3040000660000008D05000028020000 16 @@ -950,7 +950,7 @@ 0 16 - A3040000660000008D0500008E010000 + A3040000660000008D05000028020000 16 @@ -970,7 +970,7 @@ 0 16 - A3040000660000008D0500008E010000 + A3040000660000008D05000028020000 16 @@ -990,7 +990,7 @@ 0 16 - A3040000660000008D0500008E010000 + A3040000660000008D05000028020000 16 @@ -1010,7 +1010,7 @@ 0 16 - A3040000660000008D0500008E010000 + A3040000660000008D05000028020000 16 @@ -1030,7 +1030,7 @@ 0 16 - A3040000660000008D0500008E010000 + A3040000660000008D05000028020000 16 @@ -1050,7 +1050,7 @@ 0 16 - A3040000660000008D0500008E010000 + A3040000660000008D05000028020000 16 @@ -1070,7 +1070,7 @@ 0 16 - A3040000660000008D0500008E010000 + A3040000660000008D05000028020000 16 @@ -1090,7 +1090,7 @@ 0 16 - A3040000660000008D0500008E010000 + A3040000660000008D05000028020000 16 @@ -1110,7 +1110,7 @@ 0 16 - A3040000660000008D0500008E010000 + A3040000660000008D05000028020000 16 @@ -1130,7 +1130,7 @@ 0 16 - A3040000660000008D0500008E010000 + A3040000660000008D05000028020000 16 @@ -1150,7 +1150,7 @@ 0 16 - 0300000066000000ED000000C2020000 + 0300000066000000ED00000050020000 16 @@ -1170,7 +1170,7 @@ 0 16 - 00000000810200009005000003030000 + 03000000CC0500007D0700003D070000 16 @@ -1190,7 +1190,7 @@ 0 16 - 03000000840200008D050000EA020000 + 03000000CC0500007D0700003D070000 16 @@ -1210,7 +1210,7 @@ 0 16 - 03000000480200008D050000AE020000 + 03000000480200008D050000C2020000 16 @@ -1230,7 +1230,7 @@ 0 16 - 03000000480200008D050000AE020000 + 03000000480200008D050000C2020000 16 @@ -1250,7 +1250,7 @@ 0 16 - 03000000840200008D050000EA020000 + 03000000CC0500007D0700003D070000 16 @@ -1270,7 +1270,7 @@ 0 16 - 03000000840200008D050000EA020000 + 03000000CC0500007D0700003D070000 16 @@ -1310,7 +1310,7 @@ 0 16 - A3040000660000008D0500008E010000 + A3040000660000008D05000028020000 16 @@ -1330,7 +1330,7 @@ 0 16 - A3040000660000008D0500008E010000 + A3040000660000008D05000028020000 16 @@ -1350,7 +1350,7 @@ 0 16 - A3040000660000008D0500008E010000 + A3040000660000008D05000028020000 16 @@ -1370,7 +1370,7 @@ 0 16 - A3040000660000008D0500008E010000 + A3040000660000008D05000028020000 16 @@ -1390,7 +1390,7 @@ 0 16 - A3040000660000008D0500008E010000 + A3040000660000008D05000028020000 16 @@ -1410,7 +1410,7 @@ 0 16 - A3040000660000008D0500008E010000 + A3040000660000008D05000028020000 16 @@ -1430,7 +1430,7 @@ 0 16 - A3040000660000008D0500008E010000 + A3040000660000008D05000028020000 16 @@ -1450,7 +1450,7 @@ 0 16 - A3040000660000008D0500008E010000 + A3040000660000008D05000028020000 16 @@ -1470,7 +1470,7 @@ 0 16 - A3040000660000008D0500008E010000 + A3040000660000008D05000028020000 16 @@ -1490,7 +1490,7 @@ 0 16 - A3040000660000008D0500008E010000 + A3040000660000008D05000028020000 16 @@ -1510,7 +1510,7 @@ 0 16 - A3040000660000008D0500008E010000 + A3040000660000008D05000028020000 16 @@ -1530,7 +1530,7 @@ 0 16 - A3040000660000008D0500008E010000 + A3040000660000008D05000028020000 16 @@ -1550,7 +1550,7 @@ 0 16 - A3040000660000008D0500008E010000 + A3040000660000008D05000028020000 16 @@ -1570,7 +1570,7 @@ 0 16 - A3040000660000008D0500008E010000 + A3040000660000008D05000028020000 16 @@ -1590,7 +1590,7 @@ 0 16 - A3040000660000008D0500008E010000 + A3040000660000008D05000028020000 16 @@ -1610,7 +1610,7 @@ 0 16 - A3040000660000008D0500008E010000 + A3040000660000008D05000028020000 16 @@ -1630,7 +1630,7 @@ 0 16 - A3040000660000008D0500008E010000 + A3040000660000008D05000028020000 16 @@ -1650,7 +1650,7 @@ 0 16 - A3040000660000008D0500008E010000 + A3040000660000008D05000028020000 16 @@ -1670,7 +1670,7 @@ 0 16 - A3040000660000008D0500008E010000 + A3040000660000008D05000028020000 16 @@ -1690,7 +1690,7 @@ 0 16 - A3040000660000008D0500008E010000 + A3040000660000008D05000028020000 16 @@ -1704,8 +1704,1749 @@ 0 0 0 + 966 + 0 + 8192 + 0 + + 16 + 0000000000000000D10300001C000000 + + + 16 + 0A0000000A0000006E0000006E000000 + + + + 59393 + 0 + 1 + 0 + 0 + 0 32767 0 + 4096 + 0 + + 16 + 00000000560700003804000069070000 + + + 16 + 0A0000000A0000006E0000006E000000 + + + + 59399 + 59399 + 1 + 0 + 0 + 0 + 476 + 0 + 8192 + 1 + + 16 + 000000001C000000E701000038000000 + + + 16 + 0A0000000A0000006E0000006E000000 + + + + 59400 + 59400 + 0 + 0 + 0 + 0 + 612 + 0 + 8192 + 2 + + 16 + 00000000380000006F02000054000000 + + + 16 + 0A0000000A0000006E0000006E000000 + + + + 824 + 824 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 03000000480200008D050000C2020000 + + + 16 + A4000000BB000000940100008E010000 + + + + 3312 + 000000000B000000000000000020000000000000FFFFFFFFFFFFFFFFF4000000E500000090050000E9000000000000000100000004000000010000000000000000000000FFFFFFFF08000000CB00000057010000CC000000F08B00005A01000079070000D601000045890000FFFF02000B004354616262656450616E650020000000000000F40000006600000090050000FC000000F40000004F00000090050000E50000000000000040280046080000000B446973617373656D626C7900000000CB00000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A6572000000005701000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A657200000000CC00000001000000FFFFFFFFFFFFFFFF0E4C6F67696320416E616C797A657200000000F08B000001000000FFFFFFFFFFFFFFFF0D436F646520436F766572616765000000005A01000001000000FFFFFFFFFFFFFFFF11496E737472756374696F6E205472616365000000007907000001000000FFFFFFFFFFFFFFFF0F53797374656D20416E616C797A657200000000D601000001000000FFFFFFFFFFFFFFFF104576656E742053746174697374696373000000004589000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFCB00000001000000FFFFFFFFCB000000000000000040000000000000FFFFFFFFFFFFFFFF9C0400004F000000A004000041020000000000000200000004000000010000000000000000000000FFFFFFFF2B000000E2050000CA0900002D8C00002E8C00002F8C0000308C0000318C0000328C0000338C0000348C0000358C0000368C0000378C0000388C0000398C00003A8C00003B8C00003C8C00003D8C00003E8C00003F8C0000408C0000418C000050C3000051C3000052C3000053C3000054C3000055C3000056C3000057C3000058C3000059C300005AC300005BC300005CC300005DC300005EC300005FC3000060C3000061C3000062C3000063C3000001800040000000000000A0040000660000009005000058020000A00400004F000000900500004102000000000000404100462B0000000753796D626F6C7300000000E205000001000000FFFFFFFFFFFFFFFF0A5472616365204461746100000000CA09000001000000FFFFFFFFFFFFFFFF00000000002D8C000001000000FFFFFFFFFFFFFFFF00000000002E8C000001000000FFFFFFFFFFFFFFFF00000000002F8C000001000000FFFFFFFFFFFFFFFF0000000000308C000001000000FFFFFFFFFFFFFFFF0000000000318C000001000000FFFFFFFFFFFFFFFF0000000000328C000001000000FFFFFFFFFFFFFFFF0000000000338C000001000000FFFFFFFFFFFFFFFF0000000000348C000001000000FFFFFFFFFFFFFFFF0000000000358C000001000000FFFFFFFFFFFFFFFF0000000000368C000001000000FFFFFFFFFFFFFFFF0000000000378C000001000000FFFFFFFFFFFFFFFF0000000000388C000001000000FFFFFFFFFFFFFFFF0000000000398C000001000000FFFFFFFFFFFFFFFF00000000003A8C000001000000FFFFFFFFFFFFFFFF00000000003B8C000001000000FFFFFFFFFFFFFFFF00000000003C8C000001000000FFFFFFFFFFFFFFFF00000000003D8C000001000000FFFFFFFFFFFFFFFF00000000003E8C000001000000FFFFFFFFFFFFFFFF00000000003F8C000001000000FFFFFFFFFFFFFFFF0000000000408C000001000000FFFFFFFFFFFFFFFF0000000000418C000001000000FFFFFFFFFFFFFFFF000000000050C3000001000000FFFFFFFFFFFFFFFF000000000051C3000001000000FFFFFFFFFFFFFFFF000000000052C3000001000000FFFFFFFFFFFFFFFF000000000053C3000001000000FFFFFFFFFFFFFFFF000000000054C3000001000000FFFFFFFFFFFFFFFF000000000055C3000001000000FFFFFFFFFFFFFFFF000000000056C3000001000000FFFFFFFFFFFFFFFF000000000057C3000001000000FFFFFFFFFFFFFFFF000000000058C3000001000000FFFFFFFFFFFFFFFF000000000059C3000001000000FFFFFFFFFFFFFFFF00000000005AC3000001000000FFFFFFFFFFFFFFFF00000000005BC3000001000000FFFFFFFFFFFFFFFF00000000005CC3000001000000FFFFFFFFFFFFFFFF00000000005DC3000001000000FFFFFFFFFFFFFFFF00000000005EC3000001000000FFFFFFFFFFFFFFFF00000000005FC3000001000000FFFFFFFFFFFFFFFF000000000060C3000001000000FFFFFFFFFFFFFFFF000000000061C3000001000000FFFFFFFFFFFFFFFF000000000062C3000001000000FFFFFFFFFFFFFFFF000000000063C3000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFE205000001000000FFFFFFFFE2050000000000000010000001000000FFFFFFFFFFFFFFFFF00000004F000000F4000000B1050000010000000200001004000000010000000000000000000000FFFFFFFF05000000ED0300006D000000C3000000C400000073940000018000100000010000000000000066000000F000000080020000000000004F000000F0000000B10500000000000040410056050000000750726F6A65637401000000ED03000001000000FFFFFFFFFFFFFFFF05426F6F6B73010000006D00000001000000FFFFFFFFFFFFFFFF0946756E6374696F6E7301000000C300000001000000FFFFFFFFFFFFFFFF0954656D706C6174657301000000C400000001000000FFFFFFFFFFFFFFFF09526567697374657273000000007394000001000000FFFFFFFFFFFFFFFF00000000000000000000000000000000000000000000000001000000FFFFFFFFED03000001000000FFFFFFFFED030000000000000080000000000000FFFFFFFFFFFFFFFF000000002D020000900500003102000000000000010000000400000001000000000000000000000000000000000000000000000001000000C6000000FFFFFFFF0F0000008F070000930700009407000095070000960700009007000091070000B5010000B801000038030000B9050000BA050000BB050000BC050000CB09000001800080000000000000000000004802000090050000F2020000000000003102000090050000DB02000000000000404100460F0000001343616C6C20537461636B202B204C6F63616C73000000008F07000001000000FFFFFFFFFFFFFFFF0755415254202331000000009307000001000000FFFFFFFFFFFFFFFF0755415254202332000000009407000001000000FFFFFFFFFFFFFFFF0755415254202333000000009507000001000000FFFFFFFFFFFFFFFF15446562756720287072696E74662920566965776572000000009607000001000000FFFFFFFFFFFFFFFF0757617463682031000000009007000001000000FFFFFFFFFFFFFFFF0757617463682032000000009107000001000000FFFFFFFFFFFFFFFF10547261636520457863657074696F6E7300000000B501000001000000FFFFFFFFFFFFFFFF0E4576656E7420436F756E7465727300000000B801000001000000FFFFFFFFFFFFFFFF09554C494E4B706C7573000000003803000001000000FFFFFFFFFFFFFFFF084D656D6F7279203100000000B905000001000000FFFFFFFFFFFFFFFF084D656D6F7279203200000000BA05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203300000000BB05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203400000000BC05000001000000FFFFFFFFFFFFFFFF105472616365204E617669676174696F6E00000000CB09000001000000FFFFFFFFFFFFFFFFFFFFFFFF0000000001000000000000000000000001000000FFFFFFFFC802000031020000CC020000DB02000000000000020000000400000000000000000000000000000000000000000000000000000002000000C6000000FFFFFFFF8F07000001000000FFFFFFFF8F07000001000000C6000000000000000080000001000000FFFFFFFFFFFFFFFF00000000B105000038040000B505000001000000010000100400000001000000E0FCFFFF94000000FFFFFFFF06000000C5000000C7000000B4010000D2010000CF01000077940000018000800000010000000000000084020000800700002504000000000000B505000038040000560700000000000040820056060000000C4275696C64204F757470757401000000C500000001000000FFFFFFFFFFFFFFFF0D46696E6420496E2046696C657301000000C700000001000000FFFFFFFFFFFFFFFF0A4572726F72204C69737400000000B401000001000000FFFFFFFFFFFFFFFF0E536F757263652042726F7773657200000000D201000001000000FFFFFFFFFFFFFFFF0E416C6C205265666572656E63657300000000CF01000001000000FFFFFFFFFFFFFFFF0742726F77736572000000007794000001000000FFFFFFFFFFFFFFFF00000000000000000000000000000000000000000000000001000000FFFFFFFFC500000001000000FFFFFFFFC5000000000000000000000000000000 + + + 59392 + File + + 2976 + 00200000010000002800FFFF01001100434D4643546F6F6C426172427574746F6E00E100000000000000000000000000000000000000000000000100000001000000018001E100000000000001000000000000000000000000000000000100000001000000018003E1000000000000020000000000000000000000000000000001000000010000000180CD7F0000000000000300000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018023E100000000040004000000000000000000000000000000000100000001000000018022E100000000040005000000000000000000000000000000000100000001000000018025E10000000000000600000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001802BE10000000000000700000000000000000000000000000000010000000100000001802CE10000000004000800000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001807A8A0000000000000900000000000000000000000000000000010000000100000001807B8A0000000000000A00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180D3B00000000000000B000000000000000000000000000000000100000001000000018015B10000000004000C0000000000000000000000000000000001000000010000000180F4B00000000004000D000000000000000000000000000000000100000001000000018036B10000000004000E00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FF88000000000400460000000000000000000000000000000001000000010000000180FE880000000004004500000000000000000000000000000000010000000100000001800B810000000004001300000000000000000000000000000000010000000100000001800C810000000004001400000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180F0880000020000000F000000000000000000000000000000000100000001000000FFFF0100120043555646696E64436F6D626F427574746F6EE803000000000000000000000000000000000000000000000001000000010000009600000002002050000000000446463030960000000000000014000E4D4F444255535F54494D454F5554174D425F57726974655F4D696C7475706C655F436F696C7300144D425F546F6F676C655F436F696C5F4C6F63616C134D425F52657365745F436F696C5F4C6F63616C114D425F5365745F436F696C5F4C6F63616C124D425F526561645F436F696C5F4C6F63616C074D425F436F696C144D425F526573704765745F436F696C5374617465144D425F436F696C5F57726974655F476C6F62616C144D425F57726974655F436F696C5F476C6F62616C134D425F526561645F436F696C5F476C6F62616C074D425F52656164154D425F526573704765745F446961676E6F737469630741504920666F721020666F7220446961676E6F73746963731741504920666F72204D61737465722052657175657374730ED0B4D0B5D184D0B0D0B9D0BDD0B01E41504920666F7220446576696365204964656E74696669636174696F6E7314D183D181D182D180D0BED0B9D181D182D0B2D0B00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000018024E10000000000001100000000000000000000000000000000010000000100000001800A810000000000001200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E2280000002000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B46350000000000000000000000000100000001000000000000000000000001000000020021802280000000000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B4635000000000000000000000000010000000100000000000000000000000100000000002180E0010000000000007500000021456E65726779204D6561737572656D656E742026776974686F75742044656275670000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C488000000000000160000000000000000000000000000000001000000010000000180C988000000000400180000000000000000000000000000000001000000010000000180C788000000000000190000000000000000000000000000000001000000010000002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000003002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000000002180E50100000000000078000000264B696C6C20416C6C20427265616B706F696E747320696E204163746976652050726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180E601000000000000790000002F4B696C6C20416C6C20427265616B706F696E747320696E204D756C74692D50726F6A65637420576F726B73706163650000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000021804C010000020001001A0000000F2650726F6A6563742057696E646F77000000000000000000000000010000000100000000000000000000000100000008002180DD880000000000001A0000000750726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180DC8B0000000000003A00000005426F6F6B73000000000000000000000000010000000100000000000000000000000100000000002180E18B0000000000003B0000000946756E6374696F6E73000000000000000000000000010000000100000000000000000000000100000000002180E28B000000000000400000000954656D706C6174657300000000000000000000000001000000010000000000000000000000010000000000218018890000000000003D0000000E536F757263652042726F777365720000000000000000000000000100000001000000000000000000000001000000000021800000000000000400FFFFFFFF00000000000000000001000000000000000100000000000000000000000100000000002180D988000000000000390000000C4275696C64204F7574707574000000000000000000000000010000000100000000000000000000000100000000002180E38B000000000000410000000B46696E64204F75747075740000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FB7F0000000000001B000000000000000000000000000000000100000001000000000000000446696C65C6030000 + + + 1423 + 2800FFFF01001100434D4643546F6F6C426172427574746F6E00E1000000000000FFFFFFFF000100000000000000010000000000000001000000018001E1000000000000FFFFFFFF000100000000000000010000000000000001000000018003E1000000000000FFFFFFFF0001000000000000000100000000000000010000000180CD7F000000000000FFFFFFFF00010000000000000001000000000000000100000001800000000000000000FFFFFFFF000000000000000000010000000000000001000000018023E1000000000000FFFFFFFF000100000000000000010000000000000001000000018022E1000000000000FFFFFFFF000100000000000000010000000000000001000000018025E1000000000000FFFFFFFF00010000000000000001000000000000000100000001800000000000000000FFFFFFFF00000000000000000001000000000000000100000001802BE1000000000000FFFFFFFF00010000000000000001000000000000000100000001802CE1000000000000FFFFFFFF00010000000000000001000000000000000100000001800000000000000000FFFFFFFF00000000000000000001000000000000000100000001807A8A000000000000FFFFFFFF00010000000000000001000000000000000100000001807B8A000000000000FFFFFFFF00010000000000000001000000000000000100000001800000000000000000FFFFFFFF0000000000000000000100000000000000010000000180D3B0000000000000FFFFFFFF000100000000000000010000000000000001000000018015B1000000000000FFFFFFFF0001000000000000000100000000000000010000000180F4B0000000000000FFFFFFFF000100000000000000010000000000000001000000018036B1000000000000FFFFFFFF00010000000000000001000000000000000100000001800000000000000000FFFFFFFF0000000000000000000100000000000000010000000180FF88000000000000FFFFFFFF0001000000000000000100000000000000010000000180FE88000000000000FFFFFFFF00010000000000000001000000000000000100000001800B81000000000000FFFFFFFF00010000000000000001000000000000000100000001800C81000000000000FFFFFFFF00010000000000000001000000000000000100000001800000000000000000FFFFFFFF0000000000000000000100000000000000010000000180F088000000000000FFFFFFFF0001000000000000000100000000000000010000000180EE7F000000000000FFFFFFFF000100000000000000010000000000000001000000018024E1000000000000FFFFFFFF00010000000000000001000000000000000100000001800A81000000000000FFFFFFFF00010000000000000001000000000000000100000001800000000000000000FFFFFFFF00000000000000000001000000000000000100000001802280000000000000FFFFFFFF00010000000000000001000000000000000100000001800000000000000000FFFFFFFF0000000000000000000100000000000000010000000180C488000000000000FFFFFFFF0001000000000000000100000000000000010000000180C988000000000000FFFFFFFF0001000000000000000100000000000000010000000180C788000000000000FFFFFFFF0001000000000000000100000000000000010000000180C888000000000000FFFFFFFF00010000000000000001000000000000000100000001800000000000000000FFFFFFFF0000000000000000000100000000000000010000000180DD88000000000000FFFFFFFF00010000000000000001000000000000000100000001800000000000000000FFFFFFFF0000000000000000000100000000000000010000000180FB7F000000000000FFFFFFFF000100000000000000010000000000000001000000 + + + 1423 + 2800FFFF01001100434D4643546F6F6C426172427574746F6E00E100000000000000000000000000000000000000000000000100000001000000018001E100000000000001000000000000000000000000000000000100000001000000018003E1000000000000020000000000000000000000000000000001000000010000000180CD7F0000000000000300000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018023E100000000000004000000000000000000000000000000000100000001000000018022E100000000000005000000000000000000000000000000000100000001000000018025E10000000000000600000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001802BE10000000000000700000000000000000000000000000000010000000100000001802CE10000000000000800000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001807A8A0000000000000900000000000000000000000000000000010000000100000001807B8A0000000000000A00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180D3B00000000000000B000000000000000000000000000000000100000001000000018015B10000000000000C0000000000000000000000000000000001000000010000000180F4B00000000000000D000000000000000000000000000000000100000001000000018036B10000000000000E00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FF880000000000000F0000000000000000000000000000000001000000010000000180FE880000000000001000000000000000000000000000000000010000000100000001800B810000000000001100000000000000000000000000000000010000000100000001800C810000000000001200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180F088000000000000130000000000000000000000000000000001000000010000000180EE7F00000000000014000000000000000000000000000000000100000001000000018024E10000000000001500000000000000000000000000000000010000000100000001800A810000000000001600000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018022800000000000001700000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C488000000000000180000000000000000000000000000000001000000010000000180C988000000000000190000000000000000000000000000000001000000010000000180C7880000000000001A0000000000000000000000000000000001000000010000000180C8880000000000001B00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180DD880000000000001C00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FB7F0000000000001D000000000000000000000000000000000100000001000000 + + + + 59399 + Build + + 988 + 00200000010000001000FFFF01001100434D4643546F6F6C426172427574746F6ECF7F0000000004001C0000000000000000000000000000000001000000010000000180D07F0000000000001D000000000000000000000000000000000100000001000000018030800000000000001E000000000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6EC7040000000000006A0000000C4261746368204275696C2664000000000000000000000000010000000100000000000000000000000100000004000580C7040000000000006A0000000C4261746368204275696C266400000000000000000000000001000000010000000000000000000000010000000000058046070000000000006B0000000D42617463682052656275696C640000000000000000000000000100000001000000000000000000000001000000000005804707000000000000FFFFFFFF0B426174636820436C65616E0100000000000000000000000100000001000000000000000000000001000000000005809E8A0000000000001F0000000F4261746326682053657475702E2E2E000000000000000000000000010000000100000000000000000000000100000000000180D17F0000000004002000000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001804C8A0000000000002100000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001900434D4643546F6F6C426172436F6D626F426F78427574746F6EBA00000000000000000000000000000000000000000000000001000000010000009600000003002050000000000E4D6F646275735F6578616D706C65960000000000000001000E4D6F646275735F6578616D706C65000000000180EB880000000000002200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C07F000000000000230000000000000000000000000000000001000000010000000180B08A000000000400240000000000000000000000000000000001000000010000000180A8010000000000004E00000000000000000000000000000000010000000100000001807202000000000000530000000000000000000000000000000001000000010000000180BE010000000000005000000000000000000000000000000000010000000100000000000000054275696C64DC010000 + + + 583 + 1000FFFF01001100434D4643546F6F6C426172427574746F6ECF7F000000000000FFFFFFFF0001000000000000000100000000000000010000000180D07F000000000000FFFFFFFF00010000000000000001000000000000000100000001803080000000000000FFFFFFFF00010000000000000001000000000000000100000001809E8A000000000000FFFFFFFF0001000000000000000100000000000000010000000180D17F000000000000FFFFFFFF00010000000000000001000000000000000100000001800000000000000000FFFFFFFF00000000000000000001000000000000000100000001804C8A000000000000FFFFFFFF00010000000000000001000000000000000100000001800000000000000000FFFFFFFF00000000000000000001000000000000000100000001806680000000000000FFFFFFFF0001000000000000000100000000000000010000000180EB88000000000000FFFFFFFF00010000000000000001000000000000000100000001800000000000000000FFFFFFFF0000000000000000000100000000000000010000000180C07F000000000000FFFFFFFF0001000000000000000100000000000000010000000180B08A000000000000FFFFFFFF0001000000000000000100000000000000010000000180A801000000000000FFFFFFFF00010000000000000001000000000000000100000001807202000000000000FFFFFFFF0001000000000000000100000000000000010000000180BE01000000000000FFFFFFFF000100000000000000010000000000000001000000 + + + 583 + 1000FFFF01001100434D4643546F6F6C426172427574746F6ECF7F000000000000000000000000000000000000000000000001000000010000000180D07F00000000000001000000000000000000000000000000000100000001000000018030800000000000000200000000000000000000000000000000010000000100000001809E8A000000000000030000000000000000000000000000000001000000010000000180D17F0000000000000400000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001804C8A0000000000000500000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001806680000000000000060000000000000000000000000000000001000000010000000180EB880000000000000700000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C07F000000000000080000000000000000000000000000000001000000010000000180B08A000000000000090000000000000000000000000000000001000000010000000180A8010000000000000A000000000000000000000000000000000100000001000000018072020000000000000B0000000000000000000000000000000001000000010000000180BE010000000000000C000000000000000000000000000000000100000001000000 + + + + 59400 + Debug + + 2373 + 00200000000000001900FFFF01001100434D4643546F6F6C426172427574746F6ECC880000000000002500000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018017800000000000002600000000000000000000000000000000010000000100000001801D800000000000002700000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001801A800000000000002800000000000000000000000000000000010000000100000001801B80000000000000290000000000000000000000000000000001000000010000000180E57F0000000000002A00000000000000000000000000000000010000000100000001801C800000000000002B00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018000890000000000002C00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180E48B0000000000002D0000000000000000000000000000000001000000010000000180F07F0000000000002E0000000000000000000000000000000001000000010000000180E8880000000000003700000000000000000000000000000000010000000100000001803B010000000000002F0000000000000000000000000000000001000000010000000180BB8A00000000000030000000000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E0E01000000000000310000000D57617463682057696E646F7773000000000000000000000000010000000100000000000000000000000100000003001380D88B00000000000031000000085761746368202631000000000000000000000000010000000100000000000000000000000100000000001380D98B00000000000031000000085761746368202632000000000000000000000000010000000100000000000000000000000100000000001380CE01000000000000FFFFFFFF0C576174636820416E63686F720000000000000000010000000000000001000000000000000000000001000000000013800F01000000000000320000000E4D656D6F72792057696E646F7773000000000000000000000000010000000100000000000000000000000100000004001380D28B00000000000032000000094D656D6F7279202631000000000000000000000000010000000100000000000000000000000100000000001380D38B00000000000032000000094D656D6F7279202632000000000000000000000000010000000100000000000000000000000100000000001380D48B00000000000032000000094D656D6F7279202633000000000000000000000000010000000100000000000000000000000100000000001380D58B00000000000032000000094D656D6F72792026340000000000000000000000000100000001000000000000000000000001000000000013801001000000000000330000000E53657269616C2057696E646F77730000000000000000000000000100000001000000000000000000000001000000040013809307000000000000330000000855415254202326310000000000000000000000000100000001000000000000000000000001000000000013809407000000000000330000000855415254202326320000000000000000000000000100000001000000000000000000000001000000000013809507000000000000330000000855415254202326330000000000000000000000000100000001000000000000000000000001000000000013809607000000000000330000001626446562756720287072696E746629205669657765720000000000000000000000000100000001000000000000000000000001000000000013803C010000000000007200000010416E616C797369732057696E646F7773000000000000000000000000010000000100000000000000000000000100000004001380658A000000000000340000000F264C6F67696320416E616C797A6572000000000000000000000000010000000100000000000000000000000100000000001380DC7F0000000000003E0000001526506572666F726D616E636520416E616C797A6572000000000000000000000000010000000100000000000000000000000100000000001380E788000000000000380000000E26436F646520436F766572616765000000000000000000000000010000000100000000000000000000000100000000001380CD01000000000000FFFFFFFF0F416E616C7973697320416E63686F7200000000000000000100000000000000010000000000000000000000010000000000138053010000000000003F0000000D54726163652057696E646F77730000000000000000000000000100000001000000000000000000000001000000010013805401000000000000FFFFFFFF115472616365204D656E7520416E63686F720000000000000000010000000000000001000000000000000000000001000000000013802901000000000000350000001553797374656D205669657765722057696E646F77730000000000000000000000000100000001000000000000000000000001000000010013804B01000000000000FFFFFFFF1453797374656D2056696577657220416E63686F720000000000000000010000000000000001000000000000000000000001000000000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000013800189000000000000360000000F26546F6F6C626F782057696E646F7700000000000000000000000001000000010000000000000000000000010000000300138044C5000000000000FFFFFFFF0E5570646174652057696E646F77730000000000000000010000000000000001000000000000000000000001000000000013800000000000000400FFFFFFFF000000000000000000010000000000000001000000000000000000000001000000000013805B01000000000000FFFFFFFF12546F6F6C626F78204D656E75416E63686F72000000000000000001000000000000000100000000000000000000000100000000000000000005446562756764020000 + + + 898 + 1900FFFF01001100434D4643546F6F6C426172427574746F6ECC88000000000000FFFFFFFF00010000000000000001000000000000000100000001800000000000000000FFFFFFFF00000000000000000001000000000000000100000001801780000000000000FFFFFFFF00010000000000000001000000000000000100000001801D80000000000000FFFFFFFF00010000000000000001000000000000000100000001800000000000000000FFFFFFFF00000000000000000001000000000000000100000001801A80000000000000FFFFFFFF00010000000000000001000000000000000100000001801B80000000000000FFFFFFFF0001000000000000000100000000000000010000000180E57F000000000000FFFFFFFF00010000000000000001000000000000000100000001801C80000000000000FFFFFFFF00010000000000000001000000000000000100000001800000000000000000FFFFFFFF00000000000000000001000000000000000100000001800089000000000000FFFFFFFF00010000000000000001000000000000000100000001800000000000000000FFFFFFFF0000000000000000000100000000000000010000000180E48B000000000000FFFFFFFF0001000000000000000100000000000000010000000180F07F000000000000FFFFFFFF0001000000000000000100000000000000010000000180E888000000000000FFFFFFFF00010000000000000001000000000000000100000001803B01000000000000FFFFFFFF0001000000000000000100000000000000010000000180BB8A000000000000FFFFFFFF0001000000000000000100000000000000010000000180D88B000000000000FFFFFFFF0001000000000000000100000000000000010000000180D28B000000000000FFFFFFFF00010000000000000001000000000000000100000001809307000000000000FFFFFFFF0001000000000000000100000000000000010000000180658A000000000000FFFFFFFF0001000000000000000100000000000000010000000180C18A000000000000FFFFFFFF0001000000000000000100000000000000010000000180EE8B000000000000FFFFFFFF00010000000000000001000000000000000100000001800000000000000000FFFFFFFF00000000000000000001000000000000000100000001800189000000000000FFFFFFFF000100000000000000010000000000000001000000 + + + 898 + 1900FFFF01001100434D4643546F6F6C426172427574746F6ECC880000000000000000000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018017800000000000000100000000000000000000000000000000010000000100000001801D800000000000000200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001801A800000000000000300000000000000000000000000000000010000000100000001801B80000000000000040000000000000000000000000000000001000000010000000180E57F0000000000000500000000000000000000000000000000010000000100000001801C800000000000000600000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018000890000000000000700000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180E48B000000000000080000000000000000000000000000000001000000010000000180F07F000000000000090000000000000000000000000000000001000000010000000180E8880000000000000A00000000000000000000000000000000010000000100000001803B010000000000000B0000000000000000000000000000000001000000010000000180BB8A0000000000000C0000000000000000000000000000000001000000010000000180D88B0000000000000D0000000000000000000000000000000001000000010000000180D28B0000000000000E000000000000000000000000000000000100000001000000018093070000000000000F0000000000000000000000000000000001000000010000000180658A000000000000100000000000000000000000000000000001000000010000000180C18A000000000000110000000000000000000000000000000001000000010000000180EE8B0000000000001200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180018900000000000013000000000000000000000000000000000100000001000000 + + + + 0 + 1920 + 1080 + + + + 1 + Debug + + -1 + -1 + 1 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + F40000004F000000DC040000E5000000 + + + 16 + F400000066000000DC040000FC000000 + + + + 1005 + 1005 + 1 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 0300000066000000ED000000AD020000 + + + 16 + A4000000BB000000940100008E010000 + + + + 109 + 109 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 0300000066000000ED000000AD020000 + + + 16 + A4000000BB000000C001000013030000 + + + + 1465 + 1465 + 1 + 0 + 0 + 0 + 32767 + 0 + 16384 + 0 + + 16 + E3040000660000007D070000AD020000 + + + 16 + 7F060000D70100004309000081020000 + + + + 1466 + 1466 + 0 + 0 + 0 + 0 + 32767 + 0 + 16384 + 0 + + 16 + E3040000660000007D070000AD020000 + + + 16 + 7F060000D70100004309000081020000 + + + + 1467 + 1467 + 0 + 0 + 0 + 0 + 32767 + 0 + 16384 + 0 + + 16 + E3040000660000007D070000AD020000 + + + 16 + 7F060000D70100004309000081020000 + + + + 1468 + 1468 + 0 + 0 + 0 + 0 + 32767 + 0 + 16384 + 0 + + 16 + E3040000660000007D070000AD020000 + + + 16 + 7F060000D70100004309000081020000 + + + + 1506 + 1506 + 0 + 0 + 0 + 0 + 32767 + 0 + 16384 + 0 + + 16 + 0F070000660000007D07000047030000 + + + 16 + A4000000BB000000940100008E010000 + + + + 1913 + 1913 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + F700000066000000D9040000CC000000 + + + 16 + A4000000BB0000006C03000051010000 + + + + 1935 + 1935 + 1 + 0 + 0 + 0 + 32767 + 0 + 16384 + 0 + + 16 + E3040000660000007D070000AD020000 + + + 16 + 7F060000D70100004309000081020000 + + + + 1936 + 1936 + 1 + 0 + 0 + 0 + 32767 + 0 + 16384 + 0 + + 16 + E3040000660000007D070000AD020000 + + + 16 + 7F060000D70100004309000081020000 + + + + 1937 + 1937 + 0 + 0 + 0 + 0 + 32767 + 0 + 16384 + 0 + + 16 + E3040000660000007D070000AD020000 + + + 16 + 7F060000D70100004309000081020000 + + + + 1939 + 1939 + 0 + 0 + 0 + 0 + 32767 + 0 + 16384 + 0 + + 16 + E3040000660000007D070000AD020000 + + + 16 + 7F060000D70100004309000081020000 + + + + 1940 + 1940 + 0 + 0 + 0 + 0 + 32767 + 0 + 16384 + 0 + + 16 + E3040000660000007D070000AD020000 + + + 16 + 7F060000D70100004309000081020000 + + + + 1941 + 1941 + 0 + 0 + 0 + 0 + 32767 + 0 + 16384 + 0 + + 16 + E3040000660000007D070000AD020000 + + + 16 + 7F060000D70100004309000081020000 + + + + 1942 + 1942 + 0 + 0 + 0 + 0 + 32767 + 0 + 16384 + 0 + + 16 + E3040000660000007D070000AD020000 + + + 16 + 7F060000D70100004309000081020000 + + + + 195 + 195 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 0300000066000000ED000000AD020000 + + + 16 + A4000000BB000000C001000013030000 + + + + 196 + 196 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 0300000066000000ED000000AD020000 + + + 16 + A4000000BB000000C001000013030000 + + + + 197 + 197 + 0 + 0 + 0 + 0 + 32767 + 0 + 32768 + 0 + + 16 + 030000008F0300007D070000F5030000 + + + 16 + A4000000BB0000006C03000051010000 + + + + 198 + 198 + 1 + 0 + 0 + 0 + 32767 + 0 + 32768 + 0 + + 16 + 00000000CA0200008007000074030000 + + + 16 + A4000000BB0000006C03000051010000 + + + + 199 + 199 + 1 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 000000008C030000800700000E040000 + + + 16 + A4000000BB0000006C03000051010000 + + + + 203 + 203 + 1 + 0 + 0 + 0 + 32767 + 0 + 8192 + 0 + + 16 + F400000063000000DC040000E5000000 + + + 16 + A4000000BB0000006C03000051010000 + + + + 204 + 204 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + F700000066000000D9040000CC000000 + + + 16 + A4000000BB0000006C03000051010000 + + + + 221 + 221 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 00000000000000000000000000000000 + + + 16 + 0A0000000A0000006E0000006E000000 + + + + 2506 + 2506 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 0F070000660000007D07000047030000 + + + 16 + A4000000BB000000940100008E010000 + + + + 2507 + 2507 + 0 + 0 + 0 + 0 + 32767 + 0 + 16384 + 0 + + 16 + E3040000660000007D070000AD020000 + + + 16 + 7F060000D70100004309000081020000 + + + + 343 + 343 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + F700000066000000D9040000CC000000 + + + 16 + A4000000BB0000006C03000051010000 + + + + 346 + 346 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + F700000066000000D9040000CC000000 + + + 16 + A4000000BB0000006C03000051010000 + + + + 35141 + 35141 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + F700000066000000D9040000CC000000 + + + 16 + A4000000BB000000940100008E010000 + + + + 35824 + 35824 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + F700000066000000D9040000CC000000 + + + 16 + A4000000BB0000006C03000051010000 + + + + 35885 + 35885 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 0F070000660000007D07000047030000 + + + 16 + A4000000BB000000940100008E010000 + + + + 35886 + 35886 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 0F070000660000007D07000047030000 + + + 16 + A4000000BB000000940100008E010000 + + + + 35887 + 35887 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 0F070000660000007D07000047030000 + + + 16 + A4000000BB000000940100008E010000 + + + + 35888 + 35888 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 0F070000660000007D07000047030000 + + + 16 + A4000000BB000000940100008E010000 + + + + 35889 + 35889 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 0F070000660000007D07000047030000 + + + 16 + A4000000BB000000940100008E010000 + + + + 35890 + 35890 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 0F070000660000007D07000047030000 + + + 16 + A4000000BB000000940100008E010000 + + + + 35891 + 35891 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 0F070000660000007D07000047030000 + + + 16 + A4000000BB000000940100008E010000 + + + + 35892 + 35892 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 0F070000660000007D07000047030000 + + + 16 + A4000000BB000000940100008E010000 + + + + 35893 + 35893 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 0F070000660000007D07000047030000 + + + 16 + A4000000BB000000940100008E010000 + + + + 35894 + 35894 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 0F070000660000007D07000047030000 + + + 16 + A4000000BB000000940100008E010000 + + + + 35895 + 35895 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 0F070000660000007D07000047030000 + + + 16 + A4000000BB000000940100008E010000 + + + + 35896 + 35896 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 0F070000660000007D07000047030000 + + + 16 + A4000000BB000000940100008E010000 + + + + 35897 + 35897 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 0F070000660000007D07000047030000 + + + 16 + A4000000BB000000940100008E010000 + + + + 35898 + 35898 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 0F070000660000007D07000047030000 + + + 16 + A4000000BB000000940100008E010000 + + + + 35899 + 35899 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 0F070000660000007D07000047030000 + + + 16 + A4000000BB000000940100008E010000 + + + + 35900 + 35900 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 0F070000660000007D07000047030000 + + + 16 + A4000000BB000000940100008E010000 + + + + 35901 + 35901 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 0F070000660000007D07000047030000 + + + 16 + A4000000BB000000940100008E010000 + + + + 35902 + 35902 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 0F070000660000007D07000047030000 + + + 16 + A4000000BB000000940100008E010000 + + + + 35903 + 35903 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 0F070000660000007D07000047030000 + + + 16 + A4000000BB000000940100008E010000 + + + + 35904 + 35904 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 0F070000660000007D07000047030000 + + + 16 + A4000000BB000000940100008E010000 + + + + 35905 + 35905 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 0F070000660000007D07000047030000 + + + 16 + A4000000BB000000940100008E010000 + + + + 38003 + 38003 + 1 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 0300000066000000ED000000AD020000 + + + 16 + A4000000BB000000C001000013030000 + + + + 38007 + 38007 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 030000008F0300007D070000F5030000 + + + 16 + A4000000BB0000006C03000051010000 + + + + 436 + 436 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 030000008F0300007D070000F5030000 + + + 16 + A4000000BB000000C001000013030000 + + + + 437 + 437 + 0 + 0 + 0 + 0 + 32767 + 0 + 16384 + 0 + + 16 + E3040000660000007D070000AD020000 + + + 16 + 7F060000D70100004309000081020000 + + + + 440 + 440 + 0 + 0 + 0 + 0 + 32767 + 0 + 16384 + 0 + + 16 + E3040000660000007D070000AD020000 + + + 16 + 7F060000D70100004309000081020000 + + + + 463 + 463 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 030000008F0300007D070000F5030000 + + + 16 + A4000000BB000000C001000013030000 + + + + 466 + 466 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 030000008F0300007D070000F5030000 + + + 16 + A4000000BB000000C001000013030000 + + + + 470 + 470 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + F700000066000000D9040000CC000000 + + + 16 + A4000000BB0000006C03000051010000 + + + + 50000 + 50000 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 0F070000660000007D07000047030000 + + + 16 + A4000000BB000000940100008E010000 + + + + 50001 + 50001 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 0F070000660000007D07000047030000 + + + 16 + A4000000BB000000940100008E010000 + + + + 50002 + 50002 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 0F070000660000007D07000047030000 + + + 16 + A4000000BB000000940100008E010000 + + + + 50003 + 50003 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 0F070000660000007D07000047030000 + + + 16 + A4000000BB000000940100008E010000 + + + + 50004 + 50004 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 0F070000660000007D07000047030000 + + + 16 + A4000000BB000000940100008E010000 + + + + 50005 + 50005 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 0F070000660000007D07000047030000 + + + 16 + A4000000BB000000940100008E010000 + + + + 50006 + 50006 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 0F070000660000007D07000047030000 + + + 16 + A4000000BB000000940100008E010000 + + + + 50007 + 50007 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 0F070000660000007D07000047030000 + + + 16 + A4000000BB000000940100008E010000 + + + + 50008 + 50008 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 0F070000660000007D07000047030000 + + + 16 + A4000000BB000000940100008E010000 + + + + 50009 + 50009 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 0F070000660000007D07000047030000 + + + 16 + A4000000BB000000940100008E010000 + + + + 50010 + 50010 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 0F070000660000007D07000047030000 + + + 16 + A4000000BB000000940100008E010000 + + + + 50011 + 50011 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 0F070000660000007D07000047030000 + + + 16 + A4000000BB000000940100008E010000 + + + + 50012 + 50012 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 0F070000660000007D07000047030000 + + + 16 + A4000000BB000000940100008E010000 + + + + 50013 + 50013 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 0F070000660000007D07000047030000 + + + 16 + A4000000BB000000940100008E010000 + + + + 50014 + 50014 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 0F070000660000007D07000047030000 + + + 16 + A4000000BB000000940100008E010000 + + + + 50015 + 50015 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 0F070000660000007D07000047030000 + + + 16 + A4000000BB000000940100008E010000 + + + + 50016 + 50016 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 0F070000660000007D07000047030000 + + + 16 + A4000000BB000000940100008E010000 + + + + 50017 + 50017 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 0F070000660000007D07000047030000 + + + 16 + A4000000BB000000940100008E010000 + + + + 50018 + 50018 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 0F070000660000007D07000047030000 + + + 16 + A4000000BB000000940100008E010000 + + + + 50019 + 50019 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 0F070000660000007D07000047030000 + + + 16 + A4000000BB000000940100008E010000 + + + + 59392 + 59392 + 1 + 0 + 0 + 0 + 966 + 0 8192 0 @@ -1740,11 +3481,11 @@ 59399 59399 - 1 + 0 0 0 0 - 32767 + 476 0 8192 1 @@ -1760,17 +3501,17 @@ 59400 59400 - 0 + 1 0 0 0 - 32767 + 612 0 8192 2 16 - 00000000380000006F02000054000000 + 000000001C0000006F02000038000000 16 @@ -1786,27 +3527,27 @@ 0 32767 0 - 4096 + 16384 0 16 - 03000000480200008D050000AE020000 + E3040000660000007D070000AD020000 16 - A4000000BB000000940100008E010000 + 7F060000D70100004309000081020000 - 3312 - 000000000B000000000000000020000000000000FFFFFFFFFFFFFFFFF4000000E500000090050000E9000000000000000100001004000000010000000000000000000000FFFFFFFF08000000CB00000057010000CC000000F08B00005A01000079070000D601000045890000FFFF02000B004354616262656450616E650020000000000000A4000000BB0000006C03000051010000F40000004F00000090050000E50000000000000040280046080000000B446973617373656D626C7900000000CB00000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A6572000000005701000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A657200000000CC00000001000000FFFFFFFFFFFFFFFF0E4C6F67696320416E616C797A657200000000F08B000001000000FFFFFFFFFFFFFFFF0D436F646520436F766572616765000000005A01000001000000FFFFFFFFFFFFFFFF11496E737472756374696F6E205472616365000000007907000001000000FFFFFFFFFFFFFFFF0F53797374656D20416E616C797A657200000000D601000001000000FFFFFFFFFFFFFFFF104576656E742053746174697374696373000000004589000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFCB00000001000000FFFFFFFFCB000000000000000040000000000000FFFFFFFFFFFFFFFF9C0400004F000000A004000041020000000000000200001004000000010000000000000000000000FFFFFFFF2B000000E2050000CA0900002D8C00002E8C00002F8C0000308C0000318C0000328C0000338C0000348C0000358C0000368C0000378C0000388C0000398C00003A8C00003B8C00003C8C00003D8C00003E8C00003F8C0000408C0000418C000050C3000051C3000052C3000053C3000054C3000055C3000056C3000057C3000058C3000059C300005AC300005BC300005CC300005DC300005EC300005FC3000060C3000061C3000062C3000063C3000001800040000000000000A4000000BB000000940100008E010000A00400004F000000900500004102000000000000404100462B0000000753796D626F6C7300000000E205000001000000FFFFFFFFFFFFFFFF0A5472616365204461746100000000CA09000001000000FFFFFFFFFFFFFFFF00000000002D8C000001000000FFFFFFFFFFFFFFFF00000000002E8C000001000000FFFFFFFFFFFFFFFF00000000002F8C000001000000FFFFFFFFFFFFFFFF0000000000308C000001000000FFFFFFFFFFFFFFFF0000000000318C000001000000FFFFFFFFFFFFFFFF0000000000328C000001000000FFFFFFFFFFFFFFFF0000000000338C000001000000FFFFFFFFFFFFFFFF0000000000348C000001000000FFFFFFFFFFFFFFFF0000000000358C000001000000FFFFFFFFFFFFFFFF0000000000368C000001000000FFFFFFFFFFFFFFFF0000000000378C000001000000FFFFFFFFFFFFFFFF0000000000388C000001000000FFFFFFFFFFFFFFFF0000000000398C000001000000FFFFFFFFFFFFFFFF00000000003A8C000001000000FFFFFFFFFFFFFFFF00000000003B8C000001000000FFFFFFFFFFFFFFFF00000000003C8C000001000000FFFFFFFFFFFFFFFF00000000003D8C000001000000FFFFFFFFFFFFFFFF00000000003E8C000001000000FFFFFFFFFFFFFFFF00000000003F8C000001000000FFFFFFFFFFFFFFFF0000000000408C000001000000FFFFFFFFFFFFFFFF0000000000418C000001000000FFFFFFFFFFFFFFFF000000000050C3000001000000FFFFFFFFFFFFFFFF000000000051C3000001000000FFFFFFFFFFFFFFFF000000000052C3000001000000FFFFFFFFFFFFFFFF000000000053C3000001000000FFFFFFFFFFFFFFFF000000000054C3000001000000FFFFFFFFFFFFFFFF000000000055C3000001000000FFFFFFFFFFFFFFFF000000000056C3000001000000FFFFFFFFFFFFFFFF000000000057C3000001000000FFFFFFFFFFFFFFFF000000000058C3000001000000FFFFFFFFFFFFFFFF000000000059C3000001000000FFFFFFFFFFFFFFFF00000000005AC3000001000000FFFFFFFFFFFFFFFF00000000005BC3000001000000FFFFFFFFFFFFFFFF00000000005CC3000001000000FFFFFFFFFFFFFFFF00000000005DC3000001000000FFFFFFFFFFFFFFFF00000000005EC3000001000000FFFFFFFFFFFFFFFF00000000005FC3000001000000FFFFFFFFFFFFFFFF000000000060C3000001000000FFFFFFFFFFFFFFFF000000000061C3000001000000FFFFFFFFFFFFFFFF000000000062C3000001000000FFFFFFFFFFFFFFFF000000000063C3000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFE205000001000000FFFFFFFFE2050000000000000010000001000000FFFFFFFFFFFFFFFFF00000004F000000F400000069020000010000000200001004000000010000000000000000000000FFFFFFFF05000000ED0300006D000000C3000000C40000007394000001800010000001000000A4000000BB000000940100008E010000000000004F000000F0000000690200000000000040410056050000000750726F6A65637401000000ED03000001000000FFFFFFFFFFFFFFFF05426F6F6B73010000006D00000001000000FFFFFFFFFFFFFFFF0946756E6374696F6E7301000000C300000001000000FFFFFFFFFFFFFFFF0954656D706C6174657301000000C400000001000000FFFFFFFFFFFFFFFF09526567697374657273000000007394000001000000FFFFFFFFFFFFFFFF00000000000000000000000000000000000000000000000001000000FFFFFFFFED03000001000000FFFFFFFFED030000000000000080000000000000FFFFFFFFFFFFFFFF000000002D020000900500003102000000000000010000100400000001000000000000000000000000000000000000000000000001000000C6000000FFFFFFFF0F0000008F070000930700009407000095070000960700009007000091070000B5010000B801000038030000B9050000BA050000BB050000BC050000CB09000001800080000000000000A4000000BB000000940100008E010000000000003102000090050000DB02000000000000404100460F0000001343616C6C20537461636B202B204C6F63616C73000000008F07000001000000FFFFFFFFFFFFFFFF0755415254202331000000009307000001000000FFFFFFFFFFFFFFFF0755415254202332000000009407000001000000FFFFFFFFFFFFFFFF0755415254202333000000009507000001000000FFFFFFFFFFFFFFFF15446562756720287072696E74662920566965776572000000009607000001000000FFFFFFFFFFFFFFFF0757617463682031000000009007000001000000FFFFFFFFFFFFFFFF0757617463682032000000009107000001000000FFFFFFFFFFFFFFFF10547261636520457863657074696F6E7300000000B501000001000000FFFFFFFFFFFFFFFF0E4576656E7420436F756E7465727300000000B801000001000000FFFFFFFFFFFFFFFF09554C494E4B706C7573000000003803000001000000FFFFFFFFFFFFFFFF084D656D6F7279203100000000B905000001000000FFFFFFFFFFFFFFFF084D656D6F7279203200000000BA05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203300000000BB05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203400000000BC05000001000000FFFFFFFFFFFFFFFF105472616365204E617669676174696F6E00000000CB09000001000000FFFFFFFFFFFFFFFFFFFFFFFF0000000001000000000000000000000001000000FFFFFFFFC802000031020000CC020000DB02000000000000020000000400000000000000000000000000000000000000000000000000000002000000C6000000FFFFFFFF8F07000001000000FFFFFFFF8F07000001000000C6000000000000000080000001000000FFFFFFFFFFFFFFFF0000000069020000800700006D02000001000000010000100400000001000000E0FCFFFF94000000FFFFFFFF06000000C5000000C7000000B4010000D2010000CF0100007794000001800080000001000000A4000000BB0000006C03000051010000000000006D020000800700000E0400000000000040820056060000000C4275696C64204F757470757401000000C500000001000000FFFFFFFFFFFFFFFF0D46696E6420496E2046696C657301000000C700000001000000FFFFFFFFFFFFFFFF0A4572726F72204C69737400000000B401000001000000FFFFFFFFFFFFFFFF0E536F757263652042726F7773657200000000D201000001000000FFFFFFFFFFFFFFFF0E416C6C205265666572656E63657300000000CF01000001000000FFFFFFFFFFFFFFFF0742726F77736572000000007794000001000000FFFFFFFFFFFFFFFF00000000000000000000000000000000000000000000000001000000FFFFFFFFC500000001000000FFFFFFFFC5000000000000000000000000000000 + 3391 + 000000000B000000000000000020000001000000FFFFFFFFFFFFFFFFF4000000E5000000DC040000E9000000010000000100001004000000010000000000000000000000FFFFFFFF08000000CB00000057010000CC000000F08B00005A01000079070000D601000045890000FFFF02000B004354616262656450616E650020000001000000F400000066000000DC040000FC000000F40000004F000000DC040000E50000000000000040280056080000000B446973617373656D626C7901000000CB00000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A6572000000005701000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A657200000000CC00000001000000FFFFFFFFFFFFFFFF0E4C6F67696320416E616C797A657200000000F08B000001000000FFFFFFFFFFFFFFFF0D436F646520436F766572616765000000005A01000001000000FFFFFFFFFFFFFFFF11496E737472756374696F6E205472616365000000007907000001000000FFFFFFFFFFFFFFFF0F53797374656D20416E616C797A657200000000D601000001000000FFFFFFFFFFFFFFFF104576656E742053746174697374696373000000004589000001000000FFFFFFFFFFFFFFFF00000000000000000000000000000000000000000000000001000000FFFFFFFFCB00000001000000FFFFFFFFCB000000000000000040000001000000FFFFFFFFFFFFFFFFDC0400004F000000E0040000C6020000010000000200001004000000010000006DFAFFFFEE00000000000000000000000000000001000000FFFFFFFF0F0000008F070000930700009407000095070000960700009007000091070000B5010000B801000038030000B9050000BA050000BB050000BC050000CB09000001800040000001000000E00400006600000080070000DD020000E00400004F00000080070000C602000000000000404100560F0000001343616C6C20537461636B202B204C6F63616C73010000008F07000001000000FFFFFFFFFFFFFFFF0755415254202331000000009307000001000000FFFFFFFFFFFFFFFF0755415254202332000000009407000001000000FFFFFFFFFFFFFFFF0755415254202333000000009507000001000000FFFFFFFFFFFFFFFF15446562756720287072696E74662920566965776572000000009607000001000000FFFFFFFFFFFFFFFF0757617463682031010000009007000001000000FFFFFFFFFFFFFFFF0757617463682032000000009107000001000000FFFFFFFFFFFFFFFF10547261636520457863657074696F6E7300000000B501000001000000FFFFFFFFFFFFFFFF0E4576656E7420436F756E7465727300000000B801000001000000FFFFFFFFFFFFFFFF09554C494E4B706C7573000000003803000001000000FFFFFFFFFFFFFFFF084D656D6F7279203101000000B905000001000000FFFFFFFFFFFFFFFF084D656D6F7279203200000000BA05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203300000000BB05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203400000000BC05000001000000FFFFFFFFFFFFFFFF105472616365204E617669676174696F6E00000000CB09000001000000FFFFFFFFFFFFFFFF0500000000000000FFFFFFFF2B000000E2050000CA0900002D8C00002E8C00002F8C0000308C0000318C0000328C0000338C0000348C0000358C0000368C0000378C0000388C0000398C00003A8C00003B8C00003C8C00003D8C00003E8C00003F8C0000408C0000418C000050C3000051C3000052C3000053C3000054C3000055C3000056C3000057C3000058C3000059C300005AC300005BC300005CC300005DC300005EC300005FC3000060C3000061C3000062C3000063C30000018000400000000000000C0700006600000080070000770300000C0700004F000000800700006003000000000000404100462B0000000753796D626F6C7300000000E205000001000000FFFFFFFFFFFFFFFF0A5472616365204461746100000000CA09000001000000FFFFFFFFFFFFFFFF00000000002D8C000001000000FFFFFFFFFFFFFFFF00000000002E8C000001000000FFFFFFFFFFFFFFFF00000000002F8C000001000000FFFFFFFFFFFFFFFF0000000000308C000001000000FFFFFFFFFFFFFFFF0000000000318C000001000000FFFFFFFFFFFFFFFF0000000000328C000001000000FFFFFFFFFFFFFFFF0000000000338C000001000000FFFFFFFFFFFFFFFF0000000000348C000001000000FFFFFFFFFFFFFFFF0000000000358C000001000000FFFFFFFFFFFFFFFF0000000000368C000001000000FFFFFFFFFFFFFFFF0000000000378C000001000000FFFFFFFFFFFFFFFF0000000000388C000001000000FFFFFFFFFFFFFFFF0000000000398C000001000000FFFFFFFFFFFFFFFF00000000003A8C000001000000FFFFFFFFFFFFFFFF00000000003B8C000001000000FFFFFFFFFFFFFFFF00000000003C8C000001000000FFFFFFFFFFFFFFFF00000000003D8C000001000000FFFFFFFFFFFFFFFF00000000003E8C000001000000FFFFFFFFFFFFFFFF00000000003F8C000001000000FFFFFFFFFFFFFFFF0000000000408C000001000000FFFFFFFFFFFFFFFF0454494D3200000000418C000001000000FFFFFFFFFFFFFFFF000000000050C3000001000000FFFFFFFFFFFFFFFF000000000051C3000001000000FFFFFFFFFFFFFFFF000000000052C3000001000000FFFFFFFFFFFFFFFF000000000053C3000001000000FFFFFFFFFFFFFFFF000000000054C3000001000000FFFFFFFFFFFFFFFF000000000055C3000001000000FFFFFFFFFFFFFFFF000000000056C3000001000000FFFFFFFFFFFFFFFF000000000057C3000001000000FFFFFFFFFFFFFFFF000000000058C3000001000000FFFFFFFFFFFFFFFF000000000059C3000001000000FFFFFFFFFFFFFFFF00000000005AC3000001000000FFFFFFFFFFFFFFFF00000000005BC3000001000000FFFFFFFFFFFFFFFF00000000005CC3000001000000FFFFFFFFFFFFFFFF00000000005DC3000001000000FFFFFFFFFFFFFFFF00000000005EC3000001000000FFFFFFFFFFFFFFFF00000000005FC3000001000000FFFFFFFFFFFFFFFF000000000060C3000001000000FFFFFFFFFFFFFFFF000000000061C3000001000000FFFFFFFFFFFFFFFF000000000062C3000001000000FFFFFFFFFFFFFFFF000000000063C3000001000000FFFFFFFFFFFFFFFFFFFFFFFF0000000002000000000000000000000002000000FFFFFFFF080700004F0000000C0700006003000000000000020000000400000000000000000000000000000000000000000000000000000002000000FFFFFFFF8F070000FFFFFFFFE205000001000000FFFFFFFF8F07000001000000FFFFFFFFE2050000000000000010000001000000FFFFFFFFFFFFFFFFF00000004F000000F4000000C6020000010000000200001004000000010000000000000000000000FFFFFFFF05000000ED0300006D000000C3000000C400000073940000018000100000010000000000000066000000F0000000DD020000000000004F000000F0000000C60200000000000040410056050000000750726F6A65637401000000ED03000001000000FFFFFFFFFFFFFFFF05426F6F6B73000000006D00000001000000FFFFFFFFFFFFFFFF0946756E6374696F6E7300000000C300000001000000FFFFFFFFFFFFFFFF0954656D706C6174657300000000C400000001000000FFFFFFFFFFFFFFFF09526567697374657273010000007394000001000000FFFFFFFFFFFFFFFF04000000000000000000000000000000000000000000000001000000FFFFFFFFED03000001000000FFFFFFFFED030000000000000080000001000000FFFFFFFFFFFFFFFF00000000C602000080070000CA02000001000000010000100400000001000000000000000000000000000000000000000000000001000000C60000000000000001000000000000000000000001000000FFFFFFFFC003000064030000C40300000E04000000000000020000000400000000000000000000000000000000000000000000000000000001000000C600000001000000C6000000000000000080000001000000FFFFFFFFFFFFFFFF00000000740300008007000078030000010000000100001004000000010000000000000000000000FFFFFFFF06000000C5000000C7000000B4010000D2010000CF0100007794000001800080000001000000000000008F03000080070000250400000000000078030000800700000E0400000000000040820056060000000C4275696C64204F757470757400000000C500000001000000FFFFFFFFFFFFFFFF0D46696E6420496E2046696C657301000000C700000001000000FFFFFFFFFFFFFFFF0A4572726F72204C69737400000000B401000001000000FFFFFFFFFFFFFFFF0E536F757263652042726F7773657200000000D201000001000000FFFFFFFFFFFFFFFF0E416C6C205265666572656E63657300000000CF01000001000000FFFFFFFFFFFFFFFF0642726F777365000000007794000001000000FFFFFFFFFFFFFFFF01000000000000000000000000000000000000000000000001000000FFFFFFFFC500000001000000FFFFFFFFC5000000000000000000000000000000 59392 File - 2612 - 00200000010000002800FFFF01001100434D4643546F6F6C426172427574746F6E00E100000000000000000000000000000000000000000000000100000001000000018001E100000000000001000000000000000000000000000000000100000001000000018003E1000000000000020000000000000000000000000000000001000000010000000180CD7F0000000000000300000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018023E100000000040004000000000000000000000000000000000100000001000000018022E100000000040005000000000000000000000000000000000100000001000000018025E10000000000000600000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001802BE10000000000000700000000000000000000000000000000010000000100000001802CE10000000004000800000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001807A8A0000000000000900000000000000000000000000000000010000000100000001807B8A0000000004000A00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180D3B00000000000000B000000000000000000000000000000000100000001000000018015B10000000004000C0000000000000000000000000000000001000000010000000180F4B00000000004000D000000000000000000000000000000000100000001000000018036B10000000004000E00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FF88000000000400460000000000000000000000000000000001000000010000000180FE880000000004004500000000000000000000000000000000010000000100000001800B810000000004001300000000000000000000000000000000010000000100000001800C810000000004001400000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180F0880000020000000F000000000000000000000000000000000100000001000000FFFF0100120043555646696E64436F6D626F427574746F6EE803000000000000000000000000000000000000000000000001000000010000009600000002002050000000000B52535F5365745F4672656596000000000000000300124D425F446961676E6F7374696373496E69740B52535F5365745F46726565144D4F444255535F4D617374657252657175657374000000000000000000000000018024E10000000000001100000000000000000000000000000000010000000100000001800A810000000000001200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E2280000002000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B46350000000000000000000000000100000001000000000000000000000001000000020021802280000000000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B4635000000000000000000000000010000000100000000000000000000000100000000002180E0010000000000007500000021456E65726779204D6561737572656D656E742026776974686F75742044656275670000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C488000000000000160000000000000000000000000000000001000000010000000180C988000000000400180000000000000000000000000000000001000000010000000180C788000000000000190000000000000000000000000000000001000000010000002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000003002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000000002180E50100000000000078000000264B696C6C20416C6C20427265616B706F696E747320696E204163746976652050726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180E601000000000000790000002F4B696C6C20416C6C20427265616B706F696E747320696E204D756C74692D50726F6A65637420576F726B73706163650000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000021804C010000020001001A0000000F2650726F6A6563742057696E646F77000000000000000000000000010000000100000000000000000000000100000008002180DD880000000000001A0000000750726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180DC8B0000000000003A00000005426F6F6B73000000000000000000000000010000000100000000000000000000000100000000002180E18B0000000000003B0000000946756E6374696F6E73000000000000000000000000010000000100000000000000000000000100000000002180E28B000000000000400000000954656D706C6174657300000000000000000000000001000000010000000000000000000000010000000000218018890000000000003D0000000E536F757263652042726F777365720000000000000000000000000100000001000000000000000000000001000000000021800000000000000400FFFFFFFF00000000000000000000000000010000000100000000000000000000000100000000002180D988000000000000390000000C4275696C64204F7574707574000000000000000000000000010000000100000000000000000000000100000000002180E38B000000000000410000000B46696E64204F75747075740000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FB7F0000000000001B000000000000000000000000000000000100000001000000000000000446696C65FF7F0000 + 2758 + 00200000010000002800FFFF01001100434D4643546F6F6C426172427574746F6E00E100000000000000000000000000000000000000000000000100000001000000018001E100000000000001000000000000000000000000000000000100000001000000018003E1000000000000020000000000000000000000000000000001000000010000000180CD7F0000000000000300000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018023E100000000040004000000000000000000000000000000000100000001000000018022E100000000040005000000000000000000000000000000000100000001000000018025E10000000000000600000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001802BE10000000000000700000000000000000000000000000000010000000100000001802CE10000000004000800000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001807A8A0000000000000900000000000000000000000000000000010000000100000001807B8A0000000000000A00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180D3B00000000000000B000000000000000000000000000000000100000001000000018015B10000000004000C0000000000000000000000000000000001000000010000000180F4B00000000004000D000000000000000000000000000000000100000001000000018036B10000000004000E00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FF88000000000400460000000000000000000000000000000001000000010000000180FE880000000004004500000000000000000000000000000000010000000100000001800B810000000004001300000000000000000000000000000000010000000100000001800C810000000004001400000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180F0880000020000000F000000000000000000000000000000000100000001000000FFFF0100120043555646696E64436F6D626F427574746F6EE80300000000000000000000000000000000000000000000000100000001000000960000000200205000000000044646303096000000000000000C000446463030000570617273650A627974655F696E646578154D425F4765744E756D6265724F664F626A65637473126D6F646275735F6D7367203D3D204E554C4C244D4F444255535F454E41424C455F4445564943455F4944454E54494649434154494F4E530A6D6F646275735F6D7367045F415049124D425F446961676E6F7374696373496E69740B52535F5365745F46726565144D4F444255535F4D617374657252657175657374000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000018024E10000000000001100000000000000000000000000000000010000000100000001800A810000000000001200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E2280000002000100150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B46350000000000000000000000000100000001000000000000000000000001000000020021802280000000000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B4635000000000000000000000000010000000100000000000000000000000100000000002180E0010000000000007500000021456E65726779204D6561737572656D656E742026776974686F75742044656275670000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C488000000000000160000000000000000000000000000000001000000010000000180C988000000000400180000000000000000000000000000000001000000010000000180C788000000000000190000000000000000000000000000000001000000010000002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000003002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000000002180E50100000000000078000000264B696C6C20416C6C20427265616B706F696E747320696E204163746976652050726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180E601000000000000790000002F4B696C6C20416C6C20427265616B706F696E747320696E204D756C74692D50726F6A65637420576F726B73706163650000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000021804C010000020001001A0000000F2650726F6A6563742057696E646F77000000000000000000000000010000000100000000000000000000000100000008002180DD880000000000001A0000000750726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180DC8B0000000000003A00000005426F6F6B73000000000000000000000000010000000100000000000000000000000100000000002180E18B0000000000003B0000000946756E6374696F6E73000000000000000000000000010000000100000000000000000000000100000000002180E28B000000000000400000000954656D706C6174657300000000000000000000000001000000010000000000000000000000010000000000218018890000000000003D0000000E536F757263652042726F777365720000000000000000000000000100000001000000000000000000000001000000000021800000000000000400FFFFFFFF00000000000000000001000000000000000100000000000000000000000100000000002180D988000000000000390000000C4275696C64204F7574707574000000000000000000000000010000000100000000000000000000000100000000002180E38B000000000000410000000B46696E64204F75747075740000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FB7F0000000000001B000000000000000000000000000000000100000001000000000000000446696C65C6030000 1423 @@ -1821,8 +3562,8 @@ 59399 Build - 988 - 00200000010000001000FFFF01001100434D4643546F6F6C426172427574746F6ECF7F0000000000001C0000000000000000000000000000000001000000010000000180D07F0000000000001D000000000000000000000000000000000100000001000000018030800000000000001E000000000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6EC7040000000000006A0000000C4261746368204275696C2664000000000000000000000000010000000100000000000000000000000100000004000580C7040000000000006A0000000C4261746368204275696C266400000000000000000000000001000000010000000000000000000000010000000000058046070000000000006B0000000D42617463682052656275696C640000000000000000000000000100000001000000000000000000000001000000000005804707000000000000FFFFFFFF0B426174636820436C65616E0100000000000000000000000100000001000000000000000000000001000000000005809E8A0000000000001F0000000F4261746326682053657475702E2E2E000000000000000000000000010000000100000000000000000000000100000000000180D17F0000000004002000000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001804C8A0000000000002100000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001900434D4643546F6F6C426172436F6D626F426F78427574746F6EBA00000000000000000000000000000000000000000000000001000000010000009600000003002050000000000E4D6F646275735F6578616D706C65960000000000000001000E4D6F646275735F6578616D706C65000000000180EB880000000000002200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C07F000000000000230000000000000000000000000000000001000000010000000180B08A000000000400240000000000000000000000000000000001000000010000000180A8010000000000004E00000000000000000000000000000000010000000100000001807202000000000000530000000000000000000000000000000001000000010000000180BE010000000000005000000000000000000000000000000000010000000100000000000000054275696C64FF7F0000 + 955 + 00200000000000001000FFFF01001100434D4643546F6F6C426172427574746F6ECF7F0000000000001C0000000000000000000000000000000001000000010000000180D07F0000000000001D000000000000000000000000000000000100000001000000018030800000000000001E000000000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6EC7040000000000006A0000000C4261746368204275696C2664000000000000000000000000010000000100000000000000000000000100000004000580C7040000000000006A0000000C4261746368204275696C266400000000000000000000000001000000010000000000000000000000010000000000058046070000000000006B0000000D42617463682052656275696C640000000000000000000000000100000001000000000000000000000001000000000005804707000000000000FFFFFFFF0B426174636820436C65616E0100000000000000010000000000000001000000000000000000000001000000000005809E8A0000000000001F0000000F4261746326682053657475702E2E2E000000000000000000000000010000000100000000000000000000000100000000000180D17F0000000000002000000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001804C8A0000000000002100000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001900434D4643546F6F6C426172436F6D626F426F78427574746F6EBA00000000000000000000000000000000000000000000000001000000010000009600000003002050FFFFFFFF00960000000000000000000180EB880000000000002200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C07F000000000000230000000000000000000000000000000001000000010000000180B08A000000000000240000000000000000000000000000000001000000010000000180A8010000000000004E00000000000000000000000000000000010000000100000001807202000000000000530000000000000000000000000000000001000000010000000180BE010000000000005000000000000000000000000000000000010000000100000000000000054275696C64DC010000 583 @@ -1837,8 +3578,8 @@ 59400 Debug - 2373 - 00200000000000001900FFFF01001100434D4643546F6F6C426172427574746F6ECC880000000000002500000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018017800000000000002600000000000000000000000000000000010000000100000001801D800000000000002700000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001801A800000000000002800000000000000000000000000000000010000000100000001801B80000000000000290000000000000000000000000000000001000000010000000180E57F0000000000002A00000000000000000000000000000000010000000100000001801C800000000000002B00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018000890000000000002C00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180E48B0000000000002D0000000000000000000000000000000001000000010000000180F07F0000000000002E0000000000000000000000000000000001000000010000000180E8880000000000003700000000000000000000000000000000010000000100000001803B010000000000002F0000000000000000000000000000000001000000010000000180BB8A00000000000030000000000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E0E01000000000000310000000D57617463682057696E646F7773000000000000000000000000010000000100000000000000000000000100000003001380D88B00000000000031000000085761746368202631000000000000000000000000010000000100000000000000000000000100000000001380D98B00000000000031000000085761746368202632000000000000000000000000010000000100000000000000000000000100000000001380CE01000000000000FFFFFFFF0C576174636820416E63686F720100000000000000000000000100000001000000000000000000000001000000000013800F01000000000000320000000E4D656D6F72792057696E646F7773000000000000000000000000010000000100000000000000000000000100000004001380D28B00000000000032000000094D656D6F7279202631000000000000000000000000010000000100000000000000000000000100000000001380D38B00000000000032000000094D656D6F7279202632000000000000000000000000010000000100000000000000000000000100000000001380D48B00000000000032000000094D656D6F7279202633000000000000000000000000010000000100000000000000000000000100000000001380D58B00000000000032000000094D656D6F72792026340000000000000000000000000100000001000000000000000000000001000000000013801001000000000000330000000E53657269616C2057696E646F77730000000000000000000000000100000001000000000000000000000001000000040013809307000000000000330000000855415254202326310000000000000000000000000100000001000000000000000000000001000000000013809407000000000000330000000855415254202326320000000000000000000000000100000001000000000000000000000001000000000013809507000000000000330000000855415254202326330000000000000000000000000100000001000000000000000000000001000000000013809607000000000000330000001626446562756720287072696E746629205669657765720000000000000000000000000100000001000000000000000000000001000000000013803C010000000000007200000010416E616C797369732057696E646F7773000000000000000000000000010000000100000000000000000000000100000004001380658A000000000000340000000F264C6F67696320416E616C797A6572000000000000000000000000010000000100000000000000000000000100000000001380DC7F0000000000003E0000001526506572666F726D616E636520416E616C797A6572000000000000000000000000010000000100000000000000000000000100000000001380E788000000000000380000000E26436F646520436F766572616765000000000000000000000000010000000100000000000000000000000100000000001380CD01000000000000FFFFFFFF0F416E616C7973697320416E63686F7201000000000000000000000001000000010000000000000000000000010000000000138053010000000000003F0000000D54726163652057696E646F77730000000000000000000000000100000001000000000000000000000001000000010013805401000000000000FFFFFFFF115472616365204D656E7520416E63686F720100000000000000000000000100000001000000000000000000000001000000000013802901000000000000350000001553797374656D205669657765722057696E646F77730000000000000000000000000100000001000000000000000000000001000000010013804B01000000000000FFFFFFFF1453797374656D2056696577657220416E63686F720100000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000013800189000000000000360000000F26546F6F6C626F782057696E646F7700000000000000000000000001000000010000000000000000000000010000000300138044C5000000000000FFFFFFFF0E5570646174652057696E646F77730100000000000000000000000100000001000000000000000000000001000000000013800000000000000400FFFFFFFF000000000000000000000000000100000001000000000000000000000001000000000013805B01000000000000FFFFFFFF12546F6F6C626F78204D656E75416E63686F720100000000000000000000000100000001000000000000000000000001000000000000000000054465627567FF7F0000 + 2362 + 00200000010000001900FFFF01001100434D4643546F6F6C426172427574746F6ECC880000000000002500000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018017800000000000002600000000000000000000000000000000010000000100000001801D800000000004002700000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001801A800000000000002800000000000000000000000000000000010000000100000001801B80000000000000290000000000000000000000000000000001000000010000000180E57F0000000000002A00000000000000000000000000000000010000000100000001801C800000000000002B00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018000890000000000002C00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180E48B0000020001002D0000000000000000000000000000000001000000010000000180F07F0000020001002E0000000000000000000000000000000001000000010000000180E8880000020000003700000000000000000000000000000000010000000100000001803B010000020001002F0000000000000000000000000000000001000000010000000180BB8A00000200010030000000000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E0E01000002000100310000000D57617463682057696E646F7773000000000000000000000000010000000100000000000000000000000100000003001380D88B00000000000031000000085761746368202631000000000000000000000000010000000100000000000000000000000100000000001380D98B00000000000031000000085761746368202632000000000000000000000000010000000100000000000000000000000100000000001380CE01000000000000FFFFFFFF0C576174636820416E63686F720100000000000000010000000000000001000000000000000000000001000000000013800F0100000200010032000000094D656D6F7279202631000000000000000000000000010000000100000000000000000000000100000004001380D28B00000000000032000000094D656D6F7279202631000000000000000000000000010000000100000000000000000000000100000000001380D38B00000000000032000000094D656D6F7279202632000000000000000000000000010000000100000000000000000000000100000000001380D48B00000000000032000000094D656D6F7279202633000000000000000000000000010000000100000000000000000000000100000000001380D58B00000000000032000000094D656D6F72792026340000000000000000000000000100000001000000000000000000000001000000000013801001000002000000330000000855415254202326310000000000000000000000000100000001000000000000000000000001000000040013809307000000000000330000000855415254202326310000000000000000000000000100000001000000000000000000000001000000000013809407000000000000330000000855415254202326320000000000000000000000000100000001000000000000000000000001000000000013809507000000000000330000000855415254202326330000000000000000000000000100000001000000000000000000000001000000000013809607000000000000330000001626446562756720287072696E746629205669657765720000000000000000000000000100000001000000000000000000000001000000000013803C010000000000007200000010416E616C797369732057696E646F7773000000000000000000000000010000000100000000000000000000000100000004001380658A000000000000340000000F264C6F67696320416E616C797A6572000000000000000000000000010000000100000000000000000000000100000000001380DC7F0000000000003E0000001526506572666F726D616E636520416E616C797A6572000000000000000000000000010000000100000000000000000000000100000000001380E788000000000000380000000E26436F646520436F766572616765000000000000000000000000010000000100000000000000000000000100000000001380CD01000000000000FFFFFFFF0F416E616C7973697320416E63686F7201000000000000000100000000000000010000000000000000000000010000000000138053010000000000003F0000000D54726163652057696E646F77730000000000000000000000000100000001000000000000000000000001000000010013805401000000000000FFFFFFFF115472616365204D656E7520416E63686F720100000000000000010000000000000001000000000000000000000001000000000013802901000000000000350000001553797374656D205669657765722057696E646F77730000000000000000000000000100000001000000000000000000000001000000010013804B01000000000000FFFFFFFF1453797374656D2056696577657220416E63686F720100000000000000010000000000000001000000000000000000000001000000000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000013800189000002000000360000000F26546F6F6C626F782057696E646F7700000000000000000000000001000000010000000000000000000000010000000300138044C5000000000000FFFFFFFF0E5570646174652057696E646F77730100000000000000010000000000000001000000000000000000000001000000000013800000000000000400FFFFFFFF000000000000000000010000000000000001000000000000000000000001000000000013805B01000000000000FFFFFFFF12546F6F6C626F78204D656E75416E63686F72010000000000000001000000000000000100000000000000000000000100000000000000000005446562756764020000 898 @@ -1862,30 +3603,30 @@ 0 100 - 0 + 4 ../Core/Src/main.c - 47 - 90 - 97 + 25 + 44 + 64 1 0 ..\..\Modbus\Src\modbus.c - 3 - 94 - 115 + 9 + 8 + 9 1 0 ..\..\Modbus\Src\modbus_data.c - 0 + 9 1 - 1 + 12 1 0 @@ -1901,18 +3642,216 @@ ..\..\Modbus\Inc\modbus_config.h - 16 - 28 - 42 + 10 + 1 + 10 1 0 ..\..\Modbus\Inc\modbus_core.h + 9 + 16 + 17 + 1 + + 0 + + + ..\..\Modbus\Src\modbus_master.c + 9 + 8 + 9 + 1 + + 0 + + + ..\..\Modbus\Src\modbus_coils.c + 39 + 211 + 292 + 1 + + 0 + + + ..\..\Modbus\Inc\modbus_master.h + 6 + 24 + 102 + 1 + + 0 + + + ..\..\Modbus\Inc\modbus_diag.h + 30 + 34 + 62 + 1 + + 0 + + + ..\..\Modbus\Src\modbus_diag.c + 1 + 250 + 281 + 1 + + 0 + + + ..\..\Modbus\Inc\modbus_devid.h + 6 + 41 + 119 + 1 + + 0 + + + ..\..\Modbus\Src\modbus_devid.c + 9 + 11 + 12 + 1 + 103 + 0 + + + startup_stm32f103xb.s 0 - 149 - 177 + 124 + 132 + 1 + + 0 + + + ../Core/Src/system_stm32f1xx.c + 0 + 217 + 225 + 1 + + 0 + + + ..\..\Modbus\Inc\modbus_coils.h + 39 + 120 + 191 + 1 + + 0 + + + ..\..\Modbus\Src\modbus_holdregs.c + 9 + 1 + 17 + 1 + 33,61 + 0 + + + ..\..\Modbus\Src\modbus_slave.c + 6 + 38 + 57 + 1 + + 0 + + + ../Core/Src/tim.c + 0 + 1 + 31 + 1 + + 0 + + + ..\..\Modbus\Inc\modbus_inputregs.h + 9 + 1 + 13 + 1 + + 0 + + + ..\..\Modbus\Inc\modbus.h + 0 + 1 + 8 + 1 + + 0 + + + ..\..\Modbus\Inc\modbus_slave.h + 3 + 1 + 21 + 1 + + 0 + + + ..\..\Modbus\Src\modbus_core.c + 24 + 1 + 10 + 1 + + 0 + + + ..\..\Modbus\Inc\modbus_holdregs.h + 9 + 1 + 15 + 1 + + 0 + + + ..\..\Modbus\Src\modbus_inputregs.c + 1 + 1 + 24 + 1 + + 0 + + + ..\..\Modbus\Src\rs_message.c + 9 + 1 + 21 + 1 + + 0 + + + ..\..\Modbus\Inc\rs_message.h + 9 + 1 + 26 + 1 + + 0 + + + ..\..\Modbus\Inc\modbus_data.h + 10 + 1 + 10 1 0