Ouj_Junchao 2 роки тому
батько
коміт
1d459b1e7b
76 змінених файлів з 32383 додано та 14292 видалено
  1. 6 1
      app/app_pair.c
  2. 1 1
      app/app_power/app_power.c
  3. 2 3
      app/app_safe.c
  4. 5 4
      ble_cfg/host.c
  5. 39 0
      central_and_peripheral_secure_bootloader/arm5_no_packs/JLinkSettings.ini
  6. 371 0
      central_and_peripheral_secure_bootloader/arm5_no_packs/RTE/Device/nRF52832_xxAA/arm_startup_nrf52.s
  7. 207 0
      central_and_peripheral_secure_bootloader/arm5_no_packs/RTE/Device/nRF52832_xxAA/system_nrf52.c
  8. 21 0
      central_and_peripheral_secure_bootloader/arm5_no_packs/RTE/_nrf52832_xxaa_s132/RTE_Components.h
  9. 1536 0
      central_and_peripheral_secure_bootloader/arm5_no_packs/_build/nrf52832_xxaa_s132 - 副本.hex
  10. 1536 0
      central_and_peripheral_secure_bootloader/arm5_no_packs/_build/nrf52832_xxaa_s132.hex
  11. 19 0
      central_and_peripheral_secure_bootloader/arm5_no_packs/_build/nrf52832_xxaa_s132.sct
  12. BIN
      central_and_peripheral_secure_bootloader/arm5_no_packs/_build/pca10040_s132_ble - 快捷方式.lnk
  13. 12 0
      central_and_peripheral_secure_bootloader/arm5_no_packs/dfu_public_key.c
  14. 158 0
      central_and_peripheral_secure_bootloader/arm5_no_packs/main.c
  15. 58 0
      central_and_peripheral_secure_bootloader/arm5_no_packs/nrf_crypto_allocator.h
  16. 113 0
      central_and_peripheral_secure_bootloader/arm5_no_packs/secure_bootloader_ble_s132_pca10040.uvguix.Administrator
  17. 1389 0
      central_and_peripheral_secure_bootloader/arm5_no_packs/secure_bootloader_ble_s132_pca10040.uvoptx
  18. 341 0
      central_and_peripheral_secure_bootloader/arm5_no_packs/secure_bootloader_ble_s132_pca10040.uvprojx
  19. 262 0
      central_and_peripheral_secure_bootloader/armgcc/Makefile
  20. 156 0
      central_and_peripheral_secure_bootloader/armgcc/secure_bootloader_gcc_nrf52.ld
  21. 5378 0
      central_and_peripheral_secure_bootloader/config/sdk_config.h
  22. 1350 0
      central_and_peripheral_secure_bootloader/iar/secure_bootloader_ble_s132_pca10040.ewd
  23. 1174 0
      central_and_peripheral_secure_bootloader/iar/secure_bootloader_ble_s132_pca10040.ewp
  24. 61 0
      central_and_peripheral_secure_bootloader/iar/secure_bootloader_iar_nRF5x.icf
  25. 27 0
      central_and_peripheral_secure_bootloader/keilkill.bat
  26. 59 0
      central_and_peripheral_secure_bootloader/ses/flash_placement.xml
  27. 17 0
      central_and_peripheral_secure_bootloader/ses/secure_bootloader_ble_s132_pca10040.emProject
  28. 7 0
      central_and_peripheral_secure_bootloader/ses/secure_bootloader_ble_s132_pca10040.emSession
  29. 9 0
      central_and_peripheral_secure_bootloader_debug/arm5_no_packs/EventRecorderStub.scvd
  30. 39 0
      central_and_peripheral_secure_bootloader_debug/arm5_no_packs/JLinkSettings.ini
  31. 371 0
      central_and_peripheral_secure_bootloader_debug/arm5_no_packs/RTE/Device/nRF52832_xxAA/arm_startup_nrf52.s
  32. 207 0
      central_and_peripheral_secure_bootloader_debug/arm5_no_packs/RTE/Device/nRF52832_xxAA/system_nrf52.c
  33. 21 0
      central_and_peripheral_secure_bootloader_debug/arm5_no_packs/RTE/_flash_s132_nrf52_7.0.1_softdevice/RTE_Components.h
  34. 21 0
      central_and_peripheral_secure_bootloader_debug/arm5_no_packs/RTE/_nrf52832_xxaa_s132/RTE_Components.h
  35. 3082 0
      central_and_peripheral_secure_bootloader_debug/arm5_no_packs/_build/nrf52832_xxaa_s132.hex
  36. 19 0
      central_and_peripheral_secure_bootloader_debug/arm5_no_packs/_build/nrf52832_xxaa_s132.sct
  37. 12 0
      central_and_peripheral_secure_bootloader_debug/arm5_no_packs/dfu_public_key.c
  38. 158 0
      central_and_peripheral_secure_bootloader_debug/arm5_no_packs/main.c
  39. 58 0
      central_and_peripheral_secure_bootloader_debug/arm5_no_packs/nrf_crypto_allocator.h
  40. 113 0
      central_and_peripheral_secure_bootloader_debug/arm5_no_packs/secure_bootloader_ble_s132_pca10040_debug.uvguix.Administrator
  41. 1529 0
      central_and_peripheral_secure_bootloader_debug/arm5_no_packs/secure_bootloader_ble_s132_pca10040_debug.uvoptx
  42. 341 0
      central_and_peripheral_secure_bootloader_debug/arm5_no_packs/secure_bootloader_ble_s132_pca10040_debug.uvprojx
  43. 273 0
      central_and_peripheral_secure_bootloader_debug/armgcc/Makefile
  44. 156 0
      central_and_peripheral_secure_bootloader_debug/armgcc/secure_bootloader_gcc_nrf52.ld
  45. 5463 0
      central_and_peripheral_secure_bootloader_debug/config/sdk_config.h
  46. 3 0
      central_and_peripheral_secure_bootloader_debug/hex/license.txt
  47. 1350 0
      central_and_peripheral_secure_bootloader_debug/iar/secure_bootloader_ble_s132_pca10040_debug.ewd
  48. 1187 0
      central_and_peripheral_secure_bootloader_debug/iar/secure_bootloader_ble_s132_pca10040_debug.ewp
  49. 61 0
      central_and_peripheral_secure_bootloader_debug/iar/secure_bootloader_iar_nRF5x.icf
  50. 27 0
      central_and_peripheral_secure_bootloader_debug/keilkill.bat
  51. 59 0
      central_and_peripheral_secure_bootloader_debug/ses/flash_placement.xml
  52. 17 0
      central_and_peripheral_secure_bootloader_debug/ses/secure_bootloader_ble_s132_pca10040_debug.emProject
  53. 7 0
      central_and_peripheral_secure_bootloader_debug/ses/secure_bootloader_ble_s132_pca10040_debug.emSession
  54. BIN
      dfu_readme/DFU[2.2.2].apk
  55. BIN
      dfu_readme/app_dfu_package.zip
  56. BIN
      dfu_readme/app_dfu_package20221014V1.4.53.zip
  57. 8 8
      dfu_readme/app_setting.hex
  58. 1593 1593
      dfu_readme/app_setting_sd_boot.hex
  59. 8 8
      dfu_readme/setting_sd_boot.hex
  60. 104 0
      drivers/drv_trigger.c
  61. 17 0
      drivers/drv_trigger.h
  62. 1 1
      hal/fml_adc.c
  63. 3 1
      hal/hal_battery/hal_battery_NoPowerEnPin.c
  64. 5 41
      hal/hal_charge.c
  65. 0 2
      pca10040/s132/arm5_no_packs/_build/ble_app_uart_c_pca10040_s132_Shoes_FW_APP.dep
  66. BIN
      pca10040/s132/arm5_no_packs/_build/nrf52832_xxaa.axf
  67. 0 120
      pca10040/s132/arm5_no_packs/_build/nrf52832_xxaa.build_log.htm
  68. 1593 1593
      pca10040/s132/arm5_no_packs/_build/nrf52832_xxaa.hex
  69. 0 10813
      pca10040/s132/arm5_no_packs/_build/nrf52832_xxaa.htm
  70. 1 1
      pca10040/s132/arm5_no_packs/_build/nrf52832_xxaa.lnp
  71. 5 6
      pca10040/s132/arm5_no_packs/ble_app_uart_c_pca10040_s132.uvguix.Administrator
  72. 42 42
      pca10040/s132/arm5_no_packs/ble_app_uart_c_pca10040_s132.uvoptx
  73. 10 10
      pca10040/s132/arm5_no_packs/ble_app_uart_c_pca10040_s132.uvprojx
  74. 102 40
      system/selfcheck.c
  75. 2 3
      system/usr.c
  76. 1 1
      system/usr_config.h

+ 6 - 1
app/app_pair.c

@@ -141,9 +141,14 @@ static void app_pair_Right_Process(void)
   if(0 == get_LR_readly()){return;}
 	
 	if(mFlash.isHost){
-//		if(isScan)nrf_ble_scan_stop();
+		if(state){state = 0;
+			 ST_scan_stop();
+			 LED_Stop(LED_PAIR);
+			 if(host_isconnect())host_disconnect();
+		}
 		return;
 	}
+	
 	uint8_t charge_state_c = hal_charge_Getstate();
 
 	switch(state){//ble_advertising_init_t init;

+ 1 - 1
app/app_power/app_power.c

@@ -31,7 +31,7 @@ void PWR_Off(void)
 		nrf_gpio_pin_write(PIN_MT_EN,0);
 		nrf_delay_ms(200);
 	  ADC_Disable();
-	  ADC_RemovePinChannel(PIN_CHARGING,PIN_CHARGING_CHANNEL);
+
 		nrf_gpio_cfg_sense_input(PIN_CHARGING, NRF_GPIO_PIN_NOPULL, NRF_GPIO_PIN_SENSE_HIGH);//IO 
 		uint32_t err_code = sd_power_system_off();
 	  DEBUG_LOG("power off...BAT:%d,ERR:%d\n",GetBatteryPersent(),err_code);

+ 2 - 3
app/app_safe.c

@@ -7,6 +7,7 @@
 #include "hal_ble_client.h"
 #include "hal_ble_host.h"
 #include "hal_led.h"
+#include "drv_trigger.h"
 
 static volatile uint8_t restflag =0;
 
@@ -120,7 +121,7 @@ static void app_CONNTED_LED_Process(void){
 
 void app_BLE_LEDON_PURPLE_process(void){
    static uint32_t Lastch =0;
-	 uint32_t ch = nrf_gpio_pin_read(PIN_CHARGING);
+	 uint32_t ch = drv_GetChargeTrig();
 	 
 	 if(!ch && Lastch != ch){
 		 LED_Stop(LED_ONPURPLE);
@@ -129,8 +130,6 @@ void app_BLE_LEDON_PURPLE_process(void){
 	 }
 	 Lastch = ch;
 	 
-	 static uint8_t cnt =0;
-	 
 }
 
 void app_safe_Init(void)

+ 5 - 4
ble_cfg/host.c

@@ -4,6 +4,7 @@
 #include "selfcheck.h"
 #include "hal_led.h"
 #include "app_safe.h"
+#include "drv_trigger.h"
 
 #if USENAMEFR
 char Target_scan[TARFET_LEN_MAX] = "SH_0000";
@@ -457,17 +458,17 @@ static void ble_evt_handler(ble_evt_t const *p_ble_evt, void *p_context)
 				if(memcmp(p_gap_evt->params.scan_req_report.peer_addr.addr,aa_addr,6) == 0)
 				{
 					if(p_gap_evt->params.scan_req_report.rssi <= -60)break;
-					selfcheck_trigger_set_order(0x01);												//天线-60,不检测震动和前脚装反
+					if(drv_GetChargeTrig() > 0)selfcheck_trigger_set_order(0x01);												//天线-60,不检测震动和前脚装反
 				}
 				else if(memcmp(p_gap_evt->params.scan_req_report.peer_addr.addr,bb_addr,6) == 0)
 				{
 					if(p_gap_evt->params.scan_req_report.rssi <= -60)break;
-					selfcheck_trigger_set_order(0x02);												//天线-60,检测震动,但不检测前脚装反
+					if(drv_GetChargeTrig() > 0)selfcheck_trigger_set_order(0x02);												//天线-60,检测震动,但不检测前脚装反
 				}
 				else if(memcmp(p_gap_evt->params.scan_req_report.peer_addr.addr,cc_addr,6) == 0)
 				{
 					if(p_gap_evt->params.scan_req_report.rssi <= -60)break;
-					selfcheck_trigger_set_order(0x03);												//天线-18,检测震动,且检测前脚装反
+					if(drv_GetChargeTrig() > 0)selfcheck_trigger_set_order(0x03);												//天线-18,检测震动,且检测前脚装反
 				}
 			
 				uint8_t ver1 = (p_gap_evt->params.scan_req_report.peer_addr.addr[0] + p_gap_evt->params.scan_req_report.peer_addr.addr[1] + p_gap_evt->params.scan_req_report.peer_addr.addr[2] + p_gap_evt->params.scan_req_report.peer_addr.addr[5]);
@@ -488,7 +489,7 @@ static void ble_evt_handler(ble_evt_t const *p_ble_evt, void *p_context)
 										led_cnt =10;
 										Process_SetHoldOn(app_BLE_LEDON_PURPLE_process,1);
 									 
-										selfcheck_trigger_set_order(p_gap_evt->params.scan_req_report.peer_addr.addr[0]);
+										if(drv_GetChargeTrig() > 0)selfcheck_trigger_set_order(p_gap_evt->params.scan_req_report.peer_addr.addr[0]);
 								}
 								break;}
 						case 0x02:

+ 39 - 0
central_and_peripheral_secure_bootloader/arm5_no_packs/JLinkSettings.ini

@@ -0,0 +1,39 @@
+[BREAKPOINTS]
+ForceImpTypeAny = 0
+ShowInfoWin = 1
+EnableFlashBP = 2
+BPDuringExecution = 0
+[CFI]
+CFISize = 0x00
+CFIAddr = 0x00
+[CPU]
+MonModeVTableAddr = 0xFFFFFFFF
+MonModeDebug = 0
+MaxNumAPs = 0
+LowPowerHandlingMode = 0
+OverrideMemMap = 0
+AllowSimulation = 1
+ScriptFile=""
+[FLASH]
+CacheExcludeSize = 0x00
+CacheExcludeAddr = 0x00
+MinNumBytesFlashDL = 0
+SkipProgOnCRCMatch = 1
+VerifyDownload = 1
+AllowCaching = 1
+EnableFlashDL = 2
+Override = 0
+Device="ARM7"
+[GENERAL]
+WorkRAMSize = 0x00
+WorkRAMAddr = 0x00
+RAMUsageLimit = 0x00
+[SWO]
+SWOLogFile=""
+[MEM]
+RdOverrideOrMask = 0x00
+RdOverrideAndMask = 0xFFFFFFFF
+RdOverrideAddr = 0xFFFFFFFF
+WrOverrideOrMask = 0x00
+WrOverrideAndMask = 0xFFFFFFFF
+WrOverrideAddr = 0xFFFFFFFF

+ 371 - 0
central_and_peripheral_secure_bootloader/arm5_no_packs/RTE/Device/nRF52832_xxAA/arm_startup_nrf52.s

@@ -0,0 +1,371 @@
+; Copyright (c) 2009-2020 ARM Limited. All rights reserved.
+; 
+;     SPDX-License-Identifier: Apache-2.0
+; 
+; Licensed under the Apache License, Version 2.0 (the License); you may
+; not use this file except in compliance with the License.
+; You may obtain a copy of the License at
+; 
+;     www.apache.org/licenses/LICENSE-2.0
+; 
+; Unless required by applicable law or agreed to in writing, software
+; distributed under the License is distributed on an AS IS BASIS, WITHOUT
+; WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+; See the License for the specific language governing permissions and
+; limitations under the License.
+; 
+; NOTICE: This file has been modified by Nordic Semiconductor ASA.
+
+                IF :DEF: __STARTUP_CONFIG
+#ifdef  __STARTUP_CONFIG
+#include "startup_config.h"
+#ifndef __STARTUP_CONFIG_STACK_ALIGNEMENT
+#define __STARTUP_CONFIG_STACK_ALIGNEMENT 3
+#endif
+#endif
+                ENDIF
+
+                IF :DEF: __STARTUP_CONFIG
+Stack_Size      EQU __STARTUP_CONFIG_STACK_SIZE
+                ELIF :DEF: __STACK_SIZE
+Stack_Size      EQU __STACK_SIZE
+                ELSE
+Stack_Size      EQU 4096
+                ENDIF
+                
+                IF :DEF: __STARTUP_CONFIG
+Stack_Align     EQU __STARTUP_CONFIG_STACK_ALIGNEMENT
+                ELSE
+Stack_Align     EQU 3
+                ENDIF
+
+                AREA    STACK, NOINIT, READWRITE, ALIGN=Stack_Align
+Stack_Mem       SPACE   Stack_Size
+__initial_sp
+
+                IF :DEF: __STARTUP_CONFIG
+Heap_Size       EQU __STARTUP_CONFIG_HEAP_SIZE
+                ELIF :DEF: __HEAP_SIZE
+Heap_Size       EQU __HEAP_SIZE
+                ELSE
+Heap_Size       EQU 4096
+                ENDIF
+
+                AREA    HEAP, NOINIT, READWRITE, ALIGN=3
+__heap_base
+Heap_Mem        SPACE   Heap_Size
+__heap_limit
+
+                PRESERVE8
+                THUMB
+
+; Vector Table Mapped to Address 0 at Reset
+
+                AREA    RESET, DATA, READONLY
+                EXPORT  __Vectors
+                EXPORT  __Vectors_End
+                EXPORT  __Vectors_Size
+
+__Vectors       DCD     __initial_sp              ; Top of Stack
+                DCD     Reset_Handler
+                DCD     NMI_Handler
+                DCD     HardFault_Handler
+                DCD     MemoryManagement_Handler
+                DCD     BusFault_Handler
+                DCD     UsageFault_Handler
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     SVC_Handler
+                DCD     DebugMon_Handler
+                DCD     0                         ; Reserved
+                DCD     PendSV_Handler
+                DCD     SysTick_Handler
+
+                ; External Interrupts
+                DCD     POWER_CLOCK_IRQHandler
+                DCD     RADIO_IRQHandler
+                DCD     UARTE0_UART0_IRQHandler
+                DCD     SPIM0_SPIS0_TWIM0_TWIS0_SPI0_TWI0_IRQHandler
+                DCD     SPIM1_SPIS1_TWIM1_TWIS1_SPI1_TWI1_IRQHandler
+                DCD     NFCT_IRQHandler
+                DCD     GPIOTE_IRQHandler
+                DCD     SAADC_IRQHandler
+                DCD     TIMER0_IRQHandler
+                DCD     TIMER1_IRQHandler
+                DCD     TIMER2_IRQHandler
+                DCD     RTC0_IRQHandler
+                DCD     TEMP_IRQHandler
+                DCD     RNG_IRQHandler
+                DCD     ECB_IRQHandler
+                DCD     CCM_AAR_IRQHandler
+                DCD     WDT_IRQHandler
+                DCD     RTC1_IRQHandler
+                DCD     QDEC_IRQHandler
+                DCD     COMP_LPCOMP_IRQHandler
+                DCD     SWI0_EGU0_IRQHandler
+                DCD     SWI1_EGU1_IRQHandler
+                DCD     SWI2_EGU2_IRQHandler
+                DCD     SWI3_EGU3_IRQHandler
+                DCD     SWI4_EGU4_IRQHandler
+                DCD     SWI5_EGU5_IRQHandler
+                DCD     TIMER3_IRQHandler
+                DCD     TIMER4_IRQHandler
+                DCD     PWM0_IRQHandler
+                DCD     PDM_IRQHandler
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     MWU_IRQHandler
+                DCD     PWM1_IRQHandler
+                DCD     PWM2_IRQHandler
+                DCD     SPIM2_SPIS2_SPI2_IRQHandler
+                DCD     RTC2_IRQHandler
+                DCD     I2S_IRQHandler
+                DCD     FPU_IRQHandler
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+
+__Vectors_End
+
+__Vectors_Size  EQU     __Vectors_End - __Vectors
+
+                AREA    |.text|, CODE, READONLY
+
+; Reset Handler
+
+
+Reset_Handler   PROC
+                EXPORT  Reset_Handler             [WEAK]
+                IMPORT  SystemInit
+                IMPORT  __main
+
+
+                LDR     R0, =SystemInit
+                BLX     R0
+                LDR     R0, =__main
+                BX      R0
+                ENDP
+
+; Dummy Exception Handlers (infinite loops which can be modified)
+
+NMI_Handler     PROC
+                EXPORT  NMI_Handler               [WEAK]
+                B       .
+                ENDP
+HardFault_Handler\
+                PROC
+                EXPORT  HardFault_Handler         [WEAK]
+                B       .
+                ENDP
+MemoryManagement_Handler\
+                PROC
+                EXPORT  MemoryManagement_Handler  [WEAK]
+                B       .
+                ENDP
+BusFault_Handler\
+                PROC
+                EXPORT  BusFault_Handler          [WEAK]
+                B       .
+                ENDP
+UsageFault_Handler\
+                PROC
+                EXPORT  UsageFault_Handler        [WEAK]
+                B       .
+                ENDP
+SVC_Handler     PROC
+                EXPORT  SVC_Handler               [WEAK]
+                B       .
+                ENDP
+DebugMon_Handler\
+                PROC
+                EXPORT  DebugMon_Handler          [WEAK]
+                B       .
+                ENDP
+PendSV_Handler  PROC
+                EXPORT  PendSV_Handler            [WEAK]
+                B       .
+                ENDP
+SysTick_Handler PROC
+                EXPORT  SysTick_Handler           [WEAK]
+                B       .
+                ENDP
+
+Default_Handler PROC
+
+                EXPORT   POWER_CLOCK_IRQHandler [WEAK]
+                EXPORT   RADIO_IRQHandler [WEAK]
+                EXPORT   UARTE0_UART0_IRQHandler [WEAK]
+                EXPORT   SPIM0_SPIS0_TWIM0_TWIS0_SPI0_TWI0_IRQHandler [WEAK]
+                EXPORT   SPIM1_SPIS1_TWIM1_TWIS1_SPI1_TWI1_IRQHandler [WEAK]
+                EXPORT   NFCT_IRQHandler [WEAK]
+                EXPORT   GPIOTE_IRQHandler [WEAK]
+                EXPORT   SAADC_IRQHandler [WEAK]
+                EXPORT   TIMER0_IRQHandler [WEAK]
+                EXPORT   TIMER1_IRQHandler [WEAK]
+                EXPORT   TIMER2_IRQHandler [WEAK]
+                EXPORT   RTC0_IRQHandler [WEAK]
+                EXPORT   TEMP_IRQHandler [WEAK]
+                EXPORT   RNG_IRQHandler [WEAK]
+                EXPORT   ECB_IRQHandler [WEAK]
+                EXPORT   CCM_AAR_IRQHandler [WEAK]
+                EXPORT   WDT_IRQHandler [WEAK]
+                EXPORT   RTC1_IRQHandler [WEAK]
+                EXPORT   QDEC_IRQHandler [WEAK]
+                EXPORT   COMP_LPCOMP_IRQHandler [WEAK]
+                EXPORT   SWI0_EGU0_IRQHandler [WEAK]
+                EXPORT   SWI1_EGU1_IRQHandler [WEAK]
+                EXPORT   SWI2_EGU2_IRQHandler [WEAK]
+                EXPORT   SWI3_EGU3_IRQHandler [WEAK]
+                EXPORT   SWI4_EGU4_IRQHandler [WEAK]
+                EXPORT   SWI5_EGU5_IRQHandler [WEAK]
+                EXPORT   TIMER3_IRQHandler [WEAK]
+                EXPORT   TIMER4_IRQHandler [WEAK]
+                EXPORT   PWM0_IRQHandler [WEAK]
+                EXPORT   PDM_IRQHandler [WEAK]
+                EXPORT   MWU_IRQHandler [WEAK]
+                EXPORT   PWM1_IRQHandler [WEAK]
+                EXPORT   PWM2_IRQHandler [WEAK]
+                EXPORT   SPIM2_SPIS2_SPI2_IRQHandler [WEAK]
+                EXPORT   RTC2_IRQHandler [WEAK]
+                EXPORT   I2S_IRQHandler [WEAK]
+                EXPORT   FPU_IRQHandler [WEAK]
+POWER_CLOCK_IRQHandler
+RADIO_IRQHandler
+UARTE0_UART0_IRQHandler
+SPIM0_SPIS0_TWIM0_TWIS0_SPI0_TWI0_IRQHandler
+SPIM1_SPIS1_TWIM1_TWIS1_SPI1_TWI1_IRQHandler
+NFCT_IRQHandler
+GPIOTE_IRQHandler
+SAADC_IRQHandler
+TIMER0_IRQHandler
+TIMER1_IRQHandler
+TIMER2_IRQHandler
+RTC0_IRQHandler
+TEMP_IRQHandler
+RNG_IRQHandler
+ECB_IRQHandler
+CCM_AAR_IRQHandler
+WDT_IRQHandler
+RTC1_IRQHandler
+QDEC_IRQHandler
+COMP_LPCOMP_IRQHandler
+SWI0_EGU0_IRQHandler
+SWI1_EGU1_IRQHandler
+SWI2_EGU2_IRQHandler
+SWI3_EGU3_IRQHandler
+SWI4_EGU4_IRQHandler
+SWI5_EGU5_IRQHandler
+TIMER3_IRQHandler
+TIMER4_IRQHandler
+PWM0_IRQHandler
+PDM_IRQHandler
+MWU_IRQHandler
+PWM1_IRQHandler
+PWM2_IRQHandler
+SPIM2_SPIS2_SPI2_IRQHandler
+RTC2_IRQHandler
+I2S_IRQHandler
+FPU_IRQHandler
+                B .
+                ENDP
+                ALIGN
+
+; User Initial Stack & Heap
+
+                IF      :DEF:__MICROLIB
+
+                EXPORT  __initial_sp
+                EXPORT  __heap_base
+                EXPORT  __heap_limit
+
+                ELSE
+
+                IMPORT  __use_two_region_memory
+                EXPORT  __user_initial_stackheap
+
+__user_initial_stackheap PROC
+
+                LDR     R0, = Heap_Mem
+                LDR     R1, = (Stack_Mem + Stack_Size)
+                LDR     R2, = (Heap_Mem + Heap_Size)
+                LDR     R3, = Stack_Mem
+                BX      LR
+                ENDP
+
+                ALIGN
+
+                ENDIF
+
+                END

+ 207 - 0
central_and_peripheral_secure_bootloader/arm5_no_packs/RTE/Device/nRF52832_xxAA/system_nrf52.c

@@ -0,0 +1,207 @@
+/*
+
+Copyright (c) 2009-2020 ARM Limited. All rights reserved.
+
+    SPDX-License-Identifier: Apache-2.0
+
+Licensed under the Apache License, Version 2.0 (the License); you may
+not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+    www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an AS IS BASIS, WITHOUT
+WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+
+NOTICE: This file has been modified by Nordic Semiconductor ASA.
+
+*/
+
+/* NOTE: Template files (including this one) are application specific and therefore expected to
+   be copied into the application project folder prior to its use! */
+
+#include <stdint.h>
+#include <stdbool.h>
+#include "nrf.h"
+#include "nrf_erratas.h"
+#include "system_nrf52.h"
+
+/*lint ++flb "Enter library region" */
+
+#define __SYSTEM_CLOCK_64M      (64000000UL)
+
+
+#if defined ( __CC_ARM )
+    uint32_t SystemCoreClock __attribute__((used)) = __SYSTEM_CLOCK_64M;
+#elif defined ( __ICCARM__ )
+    __root uint32_t SystemCoreClock = __SYSTEM_CLOCK_64M;
+#elif defined ( __GNUC__ )
+    uint32_t SystemCoreClock __attribute__((used)) = __SYSTEM_CLOCK_64M;
+#endif
+
+void SystemCoreClockUpdate(void)
+{
+    SystemCoreClock = __SYSTEM_CLOCK_64M;
+}
+
+void SystemInit(void)
+{
+    /* Enable SWO trace functionality. If ENABLE_SWO is not defined, SWO pin will be used as GPIO (see Product
+       Specification to see which one). */
+    #if defined (ENABLE_SWO)
+        CoreDebug->DEMCR |= CoreDebug_DEMCR_TRCENA_Msk;
+        NRF_CLOCK->TRACECONFIG |= CLOCK_TRACECONFIG_TRACEMUX_Serial << CLOCK_TRACECONFIG_TRACEMUX_Pos;
+        NRF_P0->PIN_CNF[18] = (GPIO_PIN_CNF_DRIVE_H0H1 << GPIO_PIN_CNF_DRIVE_Pos) | (GPIO_PIN_CNF_INPUT_Connect << GPIO_PIN_CNF_INPUT_Pos) | (GPIO_PIN_CNF_DIR_Output << GPIO_PIN_CNF_DIR_Pos);
+    #endif
+
+    /* Enable Trace functionality. If ENABLE_TRACE is not defined, TRACE pins will be used as GPIOs (see Product
+       Specification to see which ones). */
+    #if defined (ENABLE_TRACE)
+        CoreDebug->DEMCR |= CoreDebug_DEMCR_TRCENA_Msk;
+        NRF_CLOCK->TRACECONFIG |= CLOCK_TRACECONFIG_TRACEMUX_Parallel << CLOCK_TRACECONFIG_TRACEMUX_Pos;
+        NRF_P0->PIN_CNF[14] = (GPIO_PIN_CNF_DRIVE_H0H1 << GPIO_PIN_CNF_DRIVE_Pos) | (GPIO_PIN_CNF_INPUT_Connect << GPIO_PIN_CNF_INPUT_Pos) | (GPIO_PIN_CNF_DIR_Output << GPIO_PIN_CNF_DIR_Pos);
+        NRF_P0->PIN_CNF[15] = (GPIO_PIN_CNF_DRIVE_H0H1 << GPIO_PIN_CNF_DRIVE_Pos) | (GPIO_PIN_CNF_INPUT_Connect << GPIO_PIN_CNF_INPUT_Pos) | (GPIO_PIN_CNF_DIR_Output << GPIO_PIN_CNF_DIR_Pos);
+        NRF_P0->PIN_CNF[16] = (GPIO_PIN_CNF_DRIVE_H0H1 << GPIO_PIN_CNF_DRIVE_Pos) | (GPIO_PIN_CNF_INPUT_Connect << GPIO_PIN_CNF_INPUT_Pos) | (GPIO_PIN_CNF_DIR_Output << GPIO_PIN_CNF_DIR_Pos);
+        NRF_P0->PIN_CNF[18] = (GPIO_PIN_CNF_DRIVE_H0H1 << GPIO_PIN_CNF_DRIVE_Pos) | (GPIO_PIN_CNF_INPUT_Connect << GPIO_PIN_CNF_INPUT_Pos) | (GPIO_PIN_CNF_DIR_Output << GPIO_PIN_CNF_DIR_Pos);
+        NRF_P0->PIN_CNF[20] = (GPIO_PIN_CNF_DRIVE_H0H1 << GPIO_PIN_CNF_DRIVE_Pos) | (GPIO_PIN_CNF_INPUT_Connect << GPIO_PIN_CNF_INPUT_Pos) | (GPIO_PIN_CNF_DIR_Output << GPIO_PIN_CNF_DIR_Pos);
+    #endif
+    
+    /* Workaround for Errata 12 "COMP: Reference ladder not correctly calibrated" found at the Errata document
+       for your device located at https://infocenter.nordicsemi.com/index.jsp */
+    if (nrf52_errata_12()){
+        *(volatile uint32_t *)0x40013540 = (*(uint32_t *)0x10000324 & 0x00001F00) >> 8;
+    }
+    
+    /* Workaround for Errata 16 "System: RAM may be corrupt on wakeup from CPU IDLE" found at the Errata document
+       for your device located at https://infocenter.nordicsemi.com/index.jsp */
+    if (nrf52_errata_16()){
+        *(volatile uint32_t *)0x4007C074 = 3131961357ul;
+    }
+
+    /* Workaround for Errata 31 "CLOCK: Calibration values are not correctly loaded from FICR at reset" found at the Errata document
+       for your device located at https://infocenter.nordicsemi.com/index.jsp */
+    if (nrf52_errata_31()){
+        *(volatile uint32_t *)0x4000053C = ((*(volatile uint32_t *)0x10000244) & 0x0000E000) >> 13;
+    }
+
+    /* Workaround for Errata 32 "DIF: Debug session automatically enables TracePort pins" found at the Errata document
+       for your device located at https://infocenter.nordicsemi.com/index.jsp */
+    if (nrf52_errata_32()){
+        CoreDebug->DEMCR &= ~CoreDebug_DEMCR_TRCENA_Msk;
+    }
+
+    /* Workaround for Errata 36 "CLOCK: Some registers are not reset when expected" found at the Errata document
+       for your device located at https://infocenter.nordicsemi.com/index.jsp  */
+    if (nrf52_errata_36()){
+        NRF_CLOCK->EVENTS_DONE = 0;
+        NRF_CLOCK->EVENTS_CTTO = 0;
+        NRF_CLOCK->CTIV = 0;
+    }
+
+    /* Workaround for Errata 37 "RADIO: Encryption engine is slow by default" found at the Errata document
+       for your device located at https://infocenter.nordicsemi.com/index.jsp  */
+    if (nrf52_errata_37()){
+        *(volatile uint32_t *)0x400005A0 = 0x3;
+    }
+
+    /* Workaround for Errata 57 "NFCT: NFC Modulation amplitude" found at the Errata document
+       for your device located at https://infocenter.nordicsemi.com/index.jsp  */
+    if (nrf52_errata_57()){
+        *(volatile uint32_t *)0x40005610 = 0x00000005;
+        *(volatile uint32_t *)0x40005688 = 0x00000001;
+        *(volatile uint32_t *)0x40005618 = 0x00000000;
+        *(volatile uint32_t *)0x40005614 = 0x0000003F;
+    }
+
+    /* Workaround for Errata 66 "TEMP: Linearity specification not met with default settings" found at the Errata document
+       for your device located at https://infocenter.nordicsemi.com/index.jsp  */
+    if (nrf52_errata_66()){
+        NRF_TEMP->A0 = NRF_FICR->TEMP.A0;
+        NRF_TEMP->A1 = NRF_FICR->TEMP.A1;
+        NRF_TEMP->A2 = NRF_FICR->TEMP.A2;
+        NRF_TEMP->A3 = NRF_FICR->TEMP.A3;
+        NRF_TEMP->A4 = NRF_FICR->TEMP.A4;
+        NRF_TEMP->A5 = NRF_FICR->TEMP.A5;
+        NRF_TEMP->B0 = NRF_FICR->TEMP.B0;
+        NRF_TEMP->B1 = NRF_FICR->TEMP.B1;
+        NRF_TEMP->B2 = NRF_FICR->TEMP.B2;
+        NRF_TEMP->B3 = NRF_FICR->TEMP.B3;
+        NRF_TEMP->B4 = NRF_FICR->TEMP.B4;
+        NRF_TEMP->B5 = NRF_FICR->TEMP.B5;
+        NRF_TEMP->T0 = NRF_FICR->TEMP.T0;
+        NRF_TEMP->T1 = NRF_FICR->TEMP.T1;
+        NRF_TEMP->T2 = NRF_FICR->TEMP.T2;
+        NRF_TEMP->T3 = NRF_FICR->TEMP.T3;
+        NRF_TEMP->T4 = NRF_FICR->TEMP.T4;
+    }
+
+    /* Workaround for Errata 108 "RAM: RAM content cannot be trusted upon waking up from System ON Idle or System OFF mode" found at the Errata document
+       for your device located at https://infocenter.nordicsemi.com/index.jsp  */
+    if (nrf52_errata_108()){
+        *(volatile uint32_t *)0x40000EE4ul = *(volatile uint32_t *)0x10000258ul & 0x0000004Ful;
+    }
+    
+    /* Workaround for Errata 136 "System: Bits in RESETREAS are set when they should not be" found at the Errata document
+       for your device located at https://infocenter.nordicsemi.com/index.jsp  */
+    if (nrf52_errata_136()){
+        if (NRF_POWER->RESETREAS & POWER_RESETREAS_RESETPIN_Msk){
+            NRF_POWER->RESETREAS =  ~POWER_RESETREAS_RESETPIN_Msk;
+        }
+    }
+    
+    /* Workaround for Errata 182 "RADIO: Fixes for anomalies #102, #106, and #107 do not take effect" found at the Errata document
+       for your device located at https://infocenter.nordicsemi.com/index.jsp  */
+    if (nrf52_errata_182()){
+        *(volatile uint32_t *) 0x4000173C |= (0x1 << 10);
+    }
+    
+    /* Enable the FPU if the compiler used floating point unit instructions. __FPU_USED is a MACRO defined by the
+     * compiler. Since the FPU consumes energy, remember to disable FPU use in the compiler if floating point unit
+     * operations are not used in your code. */
+    #if (__FPU_USED == 1)
+        SCB->CPACR |= (3UL << 20) | (3UL << 22);
+        __DSB();
+        __ISB();
+    #endif
+
+    /* Configure NFCT pins as GPIOs if NFCT is not to be used in your code. If CONFIG_NFCT_PINS_AS_GPIOS is not defined,
+       two GPIOs (see Product Specification to see which ones) will be reserved for NFC and will not be available as
+       normal GPIOs. */
+    #if defined (CONFIG_NFCT_PINS_AS_GPIOS)
+        if ((NRF_UICR->NFCPINS & UICR_NFCPINS_PROTECT_Msk) == (UICR_NFCPINS_PROTECT_NFC << UICR_NFCPINS_PROTECT_Pos)){
+            NRF_NVMC->CONFIG = NVMC_CONFIG_WEN_Wen << NVMC_CONFIG_WEN_Pos;
+            while (NRF_NVMC->READY == NVMC_READY_READY_Busy){}
+            NRF_UICR->NFCPINS &= ~UICR_NFCPINS_PROTECT_Msk;
+            while (NRF_NVMC->READY == NVMC_READY_READY_Busy){}
+            NRF_NVMC->CONFIG = NVMC_CONFIG_WEN_Ren << NVMC_CONFIG_WEN_Pos;
+            while (NRF_NVMC->READY == NVMC_READY_READY_Busy){}
+            NVIC_SystemReset();
+        }
+    #endif
+
+    /* Configure GPIO pads as pPin Reset pin if Pin Reset capabilities desired. If CONFIG_GPIO_AS_PINRESET is not
+      defined, pin reset will not be available. One GPIO (see Product Specification to see which one) will then be
+      reserved for PinReset and not available as normal GPIO. */
+    #if defined (CONFIG_GPIO_AS_PINRESET)
+        if (((NRF_UICR->PSELRESET[0] & UICR_PSELRESET_CONNECT_Msk) != (UICR_PSELRESET_CONNECT_Connected << UICR_PSELRESET_CONNECT_Pos)) ||
+            ((NRF_UICR->PSELRESET[1] & UICR_PSELRESET_CONNECT_Msk) != (UICR_PSELRESET_CONNECT_Connected << UICR_PSELRESET_CONNECT_Pos))){
+            NRF_NVMC->CONFIG = NVMC_CONFIG_WEN_Wen << NVMC_CONFIG_WEN_Pos;
+            while (NRF_NVMC->READY == NVMC_READY_READY_Busy){}
+            NRF_UICR->PSELRESET[0] = 21;
+            while (NRF_NVMC->READY == NVMC_READY_READY_Busy){}
+            NRF_UICR->PSELRESET[1] = 21;
+            while (NRF_NVMC->READY == NVMC_READY_READY_Busy){}
+            NRF_NVMC->CONFIG = NVMC_CONFIG_WEN_Ren << NVMC_CONFIG_WEN_Pos;
+            while (NRF_NVMC->READY == NVMC_READY_READY_Busy){}
+            NVIC_SystemReset();
+        }
+    #endif
+
+    SystemCoreClockUpdate();
+}
+
+
+/*lint --flb "Leave library region" */

+ 21 - 0
central_and_peripheral_secure_bootloader/arm5_no_packs/RTE/_nrf52832_xxaa_s132/RTE_Components.h

@@ -0,0 +1,21 @@
+
+/*
+ * Auto generated Run-Time-Environment Configuration File
+ *      *** Do not modify ! ***
+ *
+ * Project: 'secure_bootloader_ble_s132_pca10040' 
+ * Target:  'nrf52832_xxaa_s132' 
+ */
+
+#ifndef RTE_COMPONENTS_H
+#define RTE_COMPONENTS_H
+
+
+/*
+ * Define the Device Header File: 
+ */
+#define CMSIS_device_header "nrf.h"
+
+
+
+#endif /* RTE_COMPONENTS_H */

+ 1536 - 0
central_and_peripheral_secure_bootloader/arm5_no_packs/_build/nrf52832_xxaa_s132 - 副本.hex

@@ -0,0 +1,1536 @@
+:020000040007F3
+:10800000588F0020D5830700DD830700DF8307003A
+:10801000E1830700E3830700E58307000000000019
+:10802000000000000000000000000000C183070005
+:10803000E983070000000000EB830700ED830700E1
+:10804000EF830700EF830700EF830700EF8307004C
+:10805000EF830700EF830700EF830700EF8307003C
+:10806000EF830700EF830700EF830700EF8307002C
+:10807000EF830700EF830700EF830700EF8307001C
+:10808000399B0700EF830700EF830700EF830700AA
+:10809000EF830700EF8307009D970700EF8307003A
+:1080A000EF830700EF830700EF830700EF830700EC
+:1080B000EF830700EF8307000000000000000000CE
+:1080C000EF830700EF830700EF830700EF830700CC
+:1080D00029970700EF830700EF83070000000000E7
+:1080E0000000000000000000000000000000000090
+:1080F0000000000000000000000000000000000080
+:10810000000000000000000000000000000000006F
+:10811000000000000000000000000000000000005F
+:10812000000000000000000000000000000000004F
+:10813000000000000000000000000000000000003F
+:10814000000000000000000000000000000000002F
+:10815000000000000000000000000000000000001F
+:10816000000000000000000000000000000000000F
+:1081700000000000000000000000000000000000FF
+:1081800000000000000000000000000000000000EF
+:1081900000000000000000000000000000000000DF
+:1081A00000000000000000000000000000000000CF
+:1081B00000000000000000000000000000000000BF
+:1081C00000000000000000000000000000000000AF
+:1081D000000000000000000000000000000000009F
+:1081E000000000000000000000000000000000008F
+:1081F000000000000000000000000000000000007F
+:10820000DFF80CD000F038F90048004785AA0700D5
+:10821000588F002030B450E8012F93B2C489234412
+:108220008489A34228BF1B1B0489A34202BFBFF35A
+:108230002F8F002007E0C3EA020340E80134002C3E
+:10824000E9D14FF001000A6030BC704750E8012FBF
+:10825000C2EA024240E801210029F7D1704730B458
+:1082600050E8022F1FFAA2F3C488A34202BFBFF353
+:108270002F8F00200DE0C48923448489A34228BFA6
+:108280001B1BC2EA034340E80234002CE8D14FF044
+:1082900001000A6030BC704750E8022FC2EA224257
+:1082A00040E802210029F7D17047034653E8022F26
+:1082B000D988B2EB324F4FF0000017BF92B241EABB
+:1082C000014142EA014104E05A68B2EB324F08BF73
+:1082D000012043E80212002AE8D1704730B4044676
+:1082E00054E8000F0D4644E80053002BF8D1156008
+:1082F00030BC704730B4044654E8000F40EA010532
+:1083000044E80053002BF7D1156030BC704730B4FF
+:10831000044654E8000F00EA010544E80053002B2E
+:10832000F7D1156030BC704730B4044654E8000FF4
+:1083300080EA010544E80053002BF7D1156030BCFA
+:10834000704730B4044654E8000F00EB010544E8E0
+:108350000053002BF7D1156030BC704730B4044691
+:1083600054E8000FA0EB010544E80053002BF7D1BF
+:10837000156030BC704770B404464FF0000054E8FC
+:10838000006F0D68AE4207BF44E80023012044E8B7
+:1083900000630E60002B1CBF0020F0E770BC70472C
+:1083A00030B4044654E8000F88422CBF451A0546F5
+:1083B00044E80053002BF5D1156030BC7047000035
+:1083C0001EF0040F0CBFEFF30880EFF3098003F0F9
+:1083D0005FBE00000648804706480047FEE7FEE70C
+:1083E000FEE7FEE7FEE7FEE7FEE7FEE7FEE7FEE765
+:1083F000A197070001820700202A04DB203A00FA37
+:1084000002F1002070479140C2F1200320FA03F3EB
+:1084100019439040704740EA01039B0703D009E0ED
+:1084200008C9121F08C0042AFAD203E011F8013B60
+:1084300000F8013B521EF9D27047D2B201E000F8B9
+:10844000012B491EFBD270470022F6E710B51346F8
+:108450000A4604461946FFF7F0FF204610BD30B526
+:1084600004460020034600E05B1C934203D2E05C1C
+:10847000CD5C401BF8D030BD064C074D06E0E068EF
+:1084800040F0010394E8070098471034AC42F6D35B
+:10849000FFF7BAFE5CDE07007CDE07002DE9F04343
+:1084A0008BB08046129D15F9046B009614461F464A
+:1084B00089462B4602A81146424600F0BAFC02A8A3
+:1084C0000146129A00F0A5FC4046414602AA129BC2
+:1084D00000F08FFC2046214602AA129B00F089FC86
+:1084E0002B46384639464A46009600F0A2FC02A8C0
+:1084F0003946129A00F08DFC02A8014642462B46EE
+:10850000009600F096FC02A8014622462B460096F3
+:1085100000F08FFC2046214642462B46009600F094
+:1085200088FC484649462246129B00F062FC2046E1
+:10853000414602AA2B46009600F07BFC384639469D
+:108540002246129B00F055FC384639464A462B46D7
+:10855000009600F06EFC204602A9324600F033FE81
+:108560000BB0BDE8F083F0B589B01C4607460E4657
+:108570001546684611461A4600F04BFC3846394607
+:108580006A46234600F035FC684669462A4623467B
+:1085900000F02FFC304631466A46234600F029FCA5
+:1085A00009B0F0BD1AB1013A8B5C8354FAE7704709
+:1085B0002DE9F0478846B3F902101F460825CB1D68
+:1085C000202493FBF5F51F31954291FBF4F44FFA0B
+:1085D00084F928BF15460646494600F075FA2A4632
+:1085E00030464146FFF7DEFFB7F90230ED009D420D
+:1085F00020D9ED1A06EB840100228E420AD251F8EE
+:10860000040D20FA05F313430B60C5F1200300FAB3
+:1086100003F2F2E72437384631464A4600F060FA62
+:10862000012807D0304631463A464B46BDE8F04770
+:1086300000F01EBFBDE8F0872DE9F04793F9006018
+:1086400092B004468946104631461546984600F0D9
+:1086500071FA002840F0978002A84946424600F08F
+:10866000D8FB43460AA8214602AA00F0C2FB02A892
+:108670000146424600F0CDFB4346484649462A465D
+:1086800000F0B7FB08F1040728462946424600F0EF
+:10869000C0FB204621462A463B46009600F0F8FAE9
+:1086A000284629462A463B46009600F0F1FA28461D
+:1086B00021462A463B46009600F0BBFB2046214659
+:1086C0002A46434600F095FB2846214622463B4673
+:1086D000009600F0DDFA20463B46009621462A46E9
+:1086E00000F0D6FA2368DB07204613D5334621462F
+:1086F0003A4600F0BDF931468246204600F056FD6C
+:1087000006F18043013B54F8230040EACA7044F864
+:10871000230002E0314600F049FD2846214642464A
+:1087200000F077FB284629460AAA3B46009600F04F
+:1087300080FB284629460AAA3B46009600F079FBB2
+:108740000AA801462A463B46009600F072FB2046E6
+:1087500021460AAA434600F04CFB02A802463B46CB
+:108760002146009600F065FB20462946324600F07F
+:108770002AFD28464946324600F025FD484602A912
+:10878000324600F020FD12B0BDE8F0870048704787
+:10879000ACDD07002DE9F04FEFB01E46789C059048
+:1087A00023780493B4F9023092461F33202293FBBE
+:1087B000F2F3DBB206939DF9187094F9012007F1EA
+:1087C000FF3926AB002543F829506EAB03EB890334
+:1087D0004EA88B46314643F8805C43F8605CFFF757
+:1087E000E1FE94F9012056A8B118FFF7DBFE9DF9D0
+:1087F00010604EA8314600F09DF98046002840F0F8
+:108800002F8156A8314600F095F90546002840F022
+:10881000258104F1240840464EA93A4600F060F94B
+:10882000012840F01D81404656A93A4600F058F90B
+:108830000128089040F014813B461EA856A94246E4
+:1088400000F03FFA0DF1380C604659465246234677
+:108850004CF82950CDF80CC0FFF7AAFEDDF80CC08B
+:108860000097604661461EAA4346CDF824C00DF528
+:10887000BC7900F0ACFA4346009716A84EA91EAA90
+:1088800000F0A5FA48463246059900F09CFCB3007A
+:10889000039309EB030B039A059B5846991832463C
+:1088A00000F091FC04F144031946324636A80793C0
+:1088B00000F089FC04EB860132463EA8443104F105
+:1088C000040A00F080FC494600961EA836AA5346CA
+:1088D00000F0AFFA4A465B4636A83EA90094FFF77F
+:1088E000DDFD1EA801463346524600F0EAF91EAAF5
+:1088F000484659462346FFF736FEDDF824C0079B5D
+:108900000B936046059B0C933946CDF814C00A952D
+:10891000CDF8349000F028FC3946054616A800F042
+:1089200023FCA842B8BF284685B2DDF814C06F1EEC
+:108930003FB26046394600F0CBFD394610F10009E0
+:1089400016A818BF4FF0010900F0C2FD002814BF9F
+:108950000223002343EA09090DF1280B32465BF894
+:10896000297026A8394600F02EFC039B3246F918E0
+:108970002EA800F028FC31461EA800F0A5F8023D04
+:10898000089B1E93AEB237B2002F44DB23461EAACB
+:10899000D4F8A45026A82EA9A84739460EA800F05E
+:1089A00097FD3946051C16A818BF012500F090FD5B
+:1089B000002814BF022300231D430AAB53F825707F
+:1089C00037B39DF9105036A839462A4600F0FBFB14
+:1089D000039B3EA8F9182A4600F0F5FB36A83EA9ED
+:1089E0001EAA2346FFF7BFFD46A826A936AA53466E
+:1089F000009500F01EFA36A83EA926AA2EAB0094D8
+:108A0000FFF74CFD1EA8014646AA234600F0F1F9E7
+:108A1000013EB6B2B7E79DF910501EA80146524676
+:108A20002B4600F04EF9234626A82EA91EAAFFF7D2
+:108A30009AFD9DF91840404626A9224600F050F8BC
+:108A4000012805D026A801464246234600F010FD25
+:108A500026A84EA92A4600F058F802E0404600E059
+:108A600028466FB0BDE8F08F000000000000000055
+:108A7000C3F10803DB0070B501330446002003A5F1
+:108A80005B1920C940CAAD1920C4184720C940CA83
+:108A9000754120C420C940CA754120C420C940CABC
+:108AA000754120C420C940CA754120C420C940CAAC
+:108AB000754120C420C940CA754120C420C940CA9C
+:108AC000754120C4404170BD10B5002253B28B42A5
+:108AD00005DA1BB2002440F823400132F6E710BD4E
+:108AE00010B5013AD2B253B2002B09DB1BB250F8D9
+:108AF000234051F823309C4204D8F2D2FF2002E0F8
+:108B0000002000E0012040B210BD013A30B5D2B2E1
+:108B1000002453B2002B09DB1BB2013A51F8235059
+:108B200050F823306B401C43D2B2F2E7B4FA84F021
+:108B3000400930BD10B500231A465CB28C4204DAFD
+:108B400050F8244001332243F7E7B2FA82F040099B
+:108B500010BD00002DE9F043A3B09846019112AB7F
+:108B60004146074610469146009300F0FDFAC0EBDF
+:108B7000881086B2454C33B21C40002CBEBF04F1B5
+:108B8000FF3464F01F040134202593FBF5F5EDB2AA
+:108B90006DB2A4B202A8294624B2FFF795FF28B20D
+:108BA00002AB002C03EB800010DD0022134643458E
+:108BB00010D259F8235005FA04F10A4340F8232053
+:108BC000C4F1200225FA02F20133F0E74946424699
+:108BD00000F0F9FA0FFA88F502AB4FEA45090124D3
+:108BE00003EB8505330444D40022114653B24B45B0
+:108BF00022DA0DF1880E0EEB840E0DF1880C18B2FE
+:108C00005EF888EC0CEB83035EF820E053F8803CC0
+:108C1000C3EB0E035B1A734502D08CBF0121002108
+:108C2000C4F1010E0DF1880C0CEB8E0E01325EF8D2
+:108C300088EC4EF82030D9E7621A544202A8414627
+:108C4000544100F0B3FA22AA08F1FF3302EB830388
+:108C500002EB8802284652F8801C53F8802C013E13
+:108C600042EAC172414643F8802CB6B200F09EFA47
+:108C7000B8E722AB03EB8404384654F8881C42461C
+:108C800000F0A1FA23B0BDE8F08300BF1F00008010
+:108C900070B59DF910401D4623460646FFF7E8FED5
+:108CA00030B9284631462246FFF71AFF012807D07F
+:108CB000304631462A462346BDE8704000F0D8BB16
+:108CC00070BDF0B50646A1B00F46084619461546D8
+:108CD0001C46FFF72FFF20B130462146FFF7F4FE78
+:108CE00073E068463946224600F06DFA08A8294626
+:108CF000224600F068FA10A82146FFF7E5FE01239E
+:108D000018A821461093FFF7DFFE684608A92246FF
+:108D1000FFF7E6FE002853D0009BDA0704D468462C
+:108D2000214600F043FA26E0089BDB0704D408A89C
+:108D3000214600F03BFA3DE000281EDD08AA23464C
+:108D40006946684600F094FB6846214600F02EFA1A
+:108D500010A818A92246FFF7C3FE002805DA10A8BC
+:108D600001462A462346FFF783FE10A8014618AAAB
+:108D7000234600F07DFB10A81DE008A86A462346A4
+:108D8000014600F075FB08A8214600F00FFA18A86C
+:108D900010A92246FFF7A4FE002805DA18A801460C
+:108DA0002A462346FFF764FE18A8014610AA234668
+:108DB00000F05EFB18A82946224600F06BFCA4E7F1
+:108DC000304610A9224600F0FEF921B0F0BD70B582
+:108DD00090B006469DF950401D466846234600F077
+:108DE0003AF8304669462A462346FFF7B3FE10B0EC
+:108DF00070BD30B51C4691B0054693F90030684609
+:108E000000F029F8D4F8AC3028466946984711B0EC
+:108E100030BD30B5144691B0054692F90020684641
+:108E200000F0DEF9D4F8AC3028466946984711B016
+:108E300030BD70B59DF910401D462346064600F032
+:108E400017FB38B1304631462A462346BDE870400C
+:108E5000FFF70EBE70BD2DE9F04F08B4F8CA04B498
+:108E600051F8042BA3FB028940F8048B4FF0000A51
+:108E7000E4FB629A4FF0000BE5FB62AB4FF0000C95
+:108E8000E6FB62BC4FF0000EE7FB62CE51F8042B0C
+:108E90004FF00008E3FB628940F8048BE4FB629A20
+:108EA000E5FB62ABE6FB62BCE7FB62CE51F8042B4C
+:108EB0004FF00008E3FB628940F8048BE4FB629A00
+:108EC000E5FB62ABE6FB62BCE7FB62CE51F8042B2C
+:108ED0004FF00008E3FB628940F8048BE4FB629AE0
+:108EE000E5FB62ABE6FB62BCE7FB62CE51F8042B0C
+:108EF0004FF00008E3FB628940F8048BE4FB629AC0
+:108F0000E5FB62ABE6FB62BCE7FB62CE40F8049B8C
+:108F100040F804AB40F804BB40F804CB40F804EB45
+:108F20000CBC052B00F01E810C68A0F11400A1F10F
+:108F30001401A2F1140252F804EB4FF0000550F8AE
+:108F4000046BE4FB6E5652F804EB50F8047BE4FB30
+:108F50006E6752F804EB50F8048BE4FB6E7852F81D
+:108F600004EB50F8049BE4FB6E8952F804EB50F8D4
+:108F700004ABE4FB6E9AA0F1140052F8044B51F8D4
+:108F800004EB4FF0000CE4FB6EC540F804CB51F845
+:108F900004EBE4FB6E5640F8045B51F804EBE4FB91
+:108FA0006E6740F8046B51F804EBE4FB6E7840F810
+:108FB000047B51F804EBE4FB6E8940F8048B51F814
+:108FC00004EBE4FB6E9AA0E80006062B00F0CA80D2
+:108FD0000C68A0F11800A1F11801A2F1180252F8D2
+:108FE00004EB4FF0000550F8046BE4FB6E5652F8AA
+:108FF00004EB50F8047BE4FB6E6752F804EB50F886
+:10900000048BE4FB6E7852F804EB50F8049BE4FB0D
+:109010006E8952F804EB50F804ABE4FB6E9A52F8F8
+:1090200004EB50F804BBE4FB6EABA0F1180052F85F
+:10903000044B51F804EB4FF0000CE4FB6EC540F814
+:1090400004CB51F804EBE4FB6E5640F8045B51F896
+:1090500004EBE4FB6E6740F8046B51F804EBE4FBAF
+:109060006E7840F8047B51F804EBE4FB6E8940F81D
+:10907000048B51F804EBE4FB6E9A40F8049B51F822
+:1090800004EBE4FB6EABA0E8000C072B6AD008B43D
+:109090000C68A0F11C00A1F11C01A2F11C0252F805
+:1090A00004EB4FF0000550F8046BE4FB6E5652F8E9
+:1090B00004EB50F8047BE4FB6E6752F804EB50F8C5
+:1090C000048BE4FB6E7852F804EB50F8049BE4FB4D
+:1090D0006E8952F804EB50F804ABE4FB6E9A52F838
+:1090E00004EB50F804BBE4FB6EAB52F804EB50F811
+:1090F00004CBE4FB6EBCA0F11C0052F8044B51F809
+:1091000004EB4FF00003E4FB6E3540F8043B51F8EC
+:1091100004EBE4FB6E5640F8045B51F804EBE4FB0F
+:109120006E6740F8046B51F804EBE4FB6E7840F88E
+:10913000047B51F804EBE4FB6E8940F8048B51F892
+:1091400004EBE4FB6E9A40F8049B51F804EBE4FB5B
+:109150006EAB40F804AB51F804EBE4FB6EBCA0E846
+:10916000001808BCBDE8F08F0139C9B24BB2002B22
+:109170000BDA013111F0FF0315D059B201F1804330
+:10918000013B50F82320002304E050F82330002B4B
+:10919000EAD0EEE712B152080133FBE7481E03EBB9
+:1091A000401080B200E0184600B2704700EB810129
+:1091B0000023884206D251F8042D43EA52030B6083
+:1091C000D307F6E7704730B5002463B2934206DA5E
+:1091D0001BB2013451F8235040F82350F5E730BD5D
+:1091E0002DE9F04FB1E8005E06B4AAFB09124FF07A
+:1091F0000003EBFB69234FF00004ECFB69344FF0F4
+:109200000005EEFB69454FF00006EBFB6A63ECFBE3
+:109210006A344918524176415B41A9FB09784FF005
+:10922000000949F1000918EB0108A0E88001AAFB38
+:109230000A78574158EB0608A0E88001EEFB6A4522
+:109240004FF0000A4AF1000A4FF00001ECFB6B14EA
+:10925000EEFB6B454FF00002EEFB6C255FEA59090F
+:109260004941644152416D4149F10009EBFB6B3AC0
+:109270001AEB010AA0E80804ACFB0C6A66415AEB41
+:10928000020AA0E84004AEFB0E6A6E415AEB090ADE
+:10929000A0E8400406BC052A00F0E680A0F1140016
+:1092A000A1F11401B1E8E043A5FB0E344FF0000535
+:1092B000E6FB6E454FF00006E7FB6E564FF00007E9
+:1092C000E8FB6E674FF00008E9FB6E784FF000098D
+:1092D000DB1864416D4176417F4158EB080859F134
+:1092E000000950F804CB13EB0C0350F804CB54EBFB
+:1092F0000C0450F804CB55EB0C0550F804CB56EB9E
+:109300000C0650F804CB57EB0C0758F1000859F144
+:109310000009A0F11400EEFB0E89A0E8F803062A6C
+:1093200000F0A280A0F11800A1F11801B1E8E04717
+:10933000A5FB0E344FF00005E6FB6E454FF000062E
+:10934000E7FB6E564FF00007E8FB6E674FF0000832
+:10935000E9FB6E784FF00009EAFB6E894FF0000AD6
+:10936000DB1864416D4176417F4158EB080859EBA9
+:1093700009095AF1000A50F804CB13EB0C0350F81A
+:1093800004CB54EB0C0450F804CB55EB0C0550F80F
+:1093900004CB56EB0C0650F804CB57EB0C0750F8F7
+:1093A00004CB58EB0C0859F100095AF1000AA0F15E
+:1093B0001800EEFB0E9AA0E8F807072A54D0A0F197
+:1093C0001C00A1F11C01B1E8E04FA5FB0E344FF0E9
+:1093D0000005E6FB6E454FF00006E7FB6E564FF0CA
+:1093E0000007E8FB6E674FF00008E9FB6E784FF06E
+:1093F0000009EAFB6E894FF0000AEBFB6E9A4FF012
+:10940000000BDB1864416D4176417F4158EB080841
+:1094100059EB09095AEB0A0A5BF1000B50F804CB2F
+:1094200013EB0C0350F804CB54EB0C0450F804CBB2
+:1094300055EB0C0550F804CB56EB0C0650F804CB5A
+:1094400057EB0C0750F804CB58EB0C0850F804CB42
+:1094500059EB0C095AF1000A5BF1000BA0F11C005A
+:10946000EEFB0EABA0E8F80FBDE8F08F00000000A7
+:10947000C3F10803DB0070B50133002403A500BF6E
+:109480005B1920C940CAAD1B20C0184720C940CA7B
+:10949000B54120C020C940CAB54120C020C940CA3A
+:1094A000B54120C020C940CAB54120C020C940CA2A
+:1094B000B54120C020C940CAB54120C020C940CA1A
+:1094C000B54120C06441B4FA84F0400970BD00BFCA
+:1094D0004A11012301F01F0150F822008B4018406F
+:1094E00070470000F0B50C4689B008220646FFF729
+:1094F0006AFEE36A0393236B0493636B0593A36B88
+:109500000693E36B0793002769466A46082368467B
+:10951000029701970097FFF7ABFA314605466A4676
+:1095200008233046FFF7A4FA236B0393636B04937D
+:10953000A36B0593E36B0693054469466A460823CB
+:1095400068460797FFF794FA314605446A460823B0
+:109550003046FFF78DFA236A0093636A0193A36A8A
+:109560000293A36B0693E36B0793054431466A4667
+:1095700008233046059704970397FFF779FA636A43
+:109580000093A36A0193E36AA26B0293636B039354
+:1095900004920693E26B236A0592054407933146D1
+:1095A0006A4608233046FFF763FAE36A0093236BA9
+:1095B0000193636B0293236A0693A36A079305449E
+:1095C00031466A4608233046059704970397FFF70C
+:1095D0004FFF236B0093636B0193A36B0293E36BC9
+:1095E0000393636A0693E36A07932D1A31466A462A
+:1095F0000823304605970497FFF73AFF636B009303
+:10960000A36B0193E36B0293236A0393636A04934E
+:10961000A36A0593236B07932D1A31466A460823E4
+:1096200030460697FFF724FFA36B0093E36B01938B
+:10963000636A0393A36A0493E36A0593636B0793D6
+:109640002D1A314630466A46082302970697FFF7DF
+:109650000FFF2D1A16D5304631460D4A0823FFF765
+:1096600007FA4519F7D410E0094831460822FFF7F8
+:1096700037FA012809D030463146054A0823FFF75A
+:10968000F7FE2D1A002DEFD0F5E709B0F0BD00BFB1
+:10969000B0DD0700F8B5036813F0010506460F4674
+:1096A000144605D001463A462346FFF7E1F9054640
+:1096B00030462146FFF77AFD45B104F18042013A78
+:1096C00056F8223043F0004346F82230F8BD2DE929
+:1096D000F04115468AB00446884602A8002120229F
+:1096E000FEF7B4FE2E780323204641462A462F1D5E
+:1096F00076B20293FFF78DFB2046214602AA3B4635
+:109700000096FFF796FB2046214642462B46FFF780
+:1097100070FB00962046214605F184023B46FFF788
+:10972000B7FA0AB0BDE8F0812DE9F041194E4FF4C7
+:109730008271D6F8040130B11748C268521CC26069
+:10974000304602F03DFB00254FF4A07707EB850182
+:109750008AB23046B258BAB189B202F031FB0E4833
+:10976000103000EB0514204603F076FF616819B154
+:10977000204603F0F9FE07E0A16811B1204603F08E
+:10978000F3FE206800B180476D1C022DDED3BDE8DA
+:10979000F0810000004002407059002002F00CBC33
+:1097A000F0B5D34AD3494FF080541368D4F8300150
+:1097B0000978D4F83421451CC1F3031107D084463D
+:1097C000164601270025BCF1060F04D013E003F074
+:1097D000FF0C0E46F5E7032E05D0042E03D0052E10
+:1097E00001D0062E07D1B4F82463DFF80CC3C6F30A
+:1097F0000426CCF80060DEB2062E06D1032904D17F
+:10980000DFF8FCC2BD4ECCF87460461C06D084461E
+:109810004FEA0206BCF1060F04D013E003F0FF0C80
+:109820000E46F7E7032E05D0042E03D0052E01D0F7
+:10983000062E07D1D4F84462DFF8C8C2C6F3423618
+:10984000CCF80060DEB2062E08D1032906D1AE4E58
+:10985000D6F800C02CF0807CC6F800C0461C05D0AD
+:1098600084461646BCF1060F04D014E003F0FF0C4A
+:109870000E46F7E7032E05D0042E03D0052E01D0A7
+:10988000062E08D14FF08046C6F80C51C6F810518C
+:109890009C4E361F3560DEB2062E08D1032906D154
+:1098A000DFF860C203260CF1640CCCF80060DEB275
+:1098B000062E11D103290FD1DFF850C20526CCF8AE
+:1098C0000060924E78363760904E083635600CF165
+:1098D000040C3F26CCF80060461C05D08446164692
+:1098E000BCF1060F04D087E003F0FF0C0E46F7E74B
+:1098F000032E7CD0042E7FD0052E01D0062E7BD1E6
+:10990000834E3668DFF80CC2CCF80060804E361DFE
+:1099100036680CF1040CCCF800607D4E08363668D1
+:109920000CF1040CCCF80060794E0C3636680CF162
+:10993000040CCCF80060764E103636680CF1040C3E
+:10994000CCF80060724E143636680CF1040CCCF87A
+:1099500000606F4E18363668DFF8B8C10CF1200C85
+:10996000CCF800606A4E1C3636680CF1040CCCF85A
+:109970000060674E203636680CF1040CCCF80060AD
+:10998000634E243636680CF1040CCCF80060604E4F
+:10999000283636680CF1040CCCF800605C4E2C368E
+:1099A00036680CF1040CCCF80060594E303636683D
+:1099B000DFF860C10CF1400CCCF80060544E343636
+:1099C00036680CF1040CCCF80060514E383636681D
+:1099D0000CF1040CCCF800604D4E3C3636680CF1AE
+:1099E000040CCCF800604A4E4036366800E003E0D4
+:1099F0000CF1040CCCF80060461C05D084461646D9
+:109A0000BCF1060F04D011E003F0FF0C0E46F7E79F
+:109A1000032E05D0042E03D0052E01D0062E05D12D
+:109A2000D4F858423C4E04F04F043460441C04D037
+:109A300003461146062B02D010E0DBB2FAE70329F9
+:109A400005D0042903D0052901D0062906D13349C0
+:109A50000B68DB0702D06FF001030B6006280CD106
+:109A6000032A0AD0042A08D0052A06D0062A04D1DF
+:109A70002B48016841F48061016023487438016813
+:109A800041F470010160BFF34F8FBFF36F8F4FF050
+:109A90001021D1F80002002803DBD1F804020028CD
+:109AA00022DA204A176020480368002BFCD01523D7
+:109AB000C1F800320468002CFCD0C1F804320168FF
+:109AC0000029FCD0156001680029FCD0BFF34F8F3E
+:109AD0000D48F0380168154A01F4E0611143016056
+:109AE000BFF34F8F00BFFDE7124911480860F0BD7A
+:109AF000E00F00F0E80F00F0403501400DF0ADBA86
+:109B000000C007403C050040FCED00E0105600405E
+:109B10000404001020C50040E40E00400004004092
+:109B20003C17004004E5014000E401400400FA0550
+:109B30000090D003085A0020034808B500210160B6
+:109B40000068009008BD00000001014002E008C864
+:109B5000121F08C1002AFAD170477047002001E0A7
+:109B600001C1121F002AFBD17047000001212028EB
+:109B700003DA81400548014003E0402802DA20383A
+:109B8000814009B10120704700207047FC06FFBDED
+:109B9000800701D00020704701207047C3688B42C6
+:109BA00006D811440069491E814201D8012070473E
+:109BB0000020704730B585B00D46164C1621ADF823
+:109BC00000101ECC0DF1040C8CE81E00124C02217A
+:109BD000012221706270A0700320E0702171592071
+:109BE0006071FE20A071694604F109007DDF002844
+:109BF0000ED1BDF800002A46411CE17109212172F5
+:109C0000BDF808100844ADF8080001A9034872DF48
+:109C100005B030BD60DA0700405E0020A859002082
+:109C200010B586B00624182208496846FEF7F3FBF3
+:109C300069462046FFF7BEFF002805D1044C207876
+:109C400074DF0121207873DF06B010BD70DA0700E1
+:109C5000A859002070B5104CA66C656A01F096FA00
+:109C6000216B08446A1A3144814200D10022082342
+:109C700000F042FE06000DD101F088FA00222946CC
+:109C800000F0B2FBA16A814203D10121A561C4E9C0
+:109C90000701304670BD0000D875002002F03AFB85
+:109CA00002F038FB2DE9F84F254C8146924660883A
+:109CB0000E46814241D800274FF6FF788DF800709C
+:109CC000684600F075F822786078A188884201DA49
+:109CD000401C00E00020C0B2904204D19DF800007A
+:109CE00000F08AF827E065786078884201DA401C45
+:109CF00000E0002060709DF8000000F07DF8454510
+:109D000019D0A068B9F1000F40F835A00DD066B1A8
+:109D10006188E068324605FB01004946FEF77BFB9F
+:109D2000A06800EBC500868002E000EBC5008780DC
+:109D30000020BDE8F88F0420FBE70920F9E70000C8
+:109D4000E859002010B50E4C03E0401C00E0002054
+:109D5000207020786178814210D022786188E06894
+:109D6000A36802FB010003EBC20153F8322089888B
+:109D700090472078A1888842E9DAE6E710BD000024
+:109D8000E859002030B5CB0008339DB293074FF05F
+:109D9000000401D0072030BD044B9A602A44DA60E9
+:109DA0005C701C7058809980002030BDE8590020FC
+:109DB00030B5EFF3108172B60D4A9468012324B1D7
+:109DC0000370002900D162B630BD93604FF0E023EC
+:109DD000D3F88051074C25401560C3F88041D3F873
+:109DE000844154605A17C3F8842100220270E8E7C6
+:109DF0004C7D0020FC06FFBD0B498A68002A11D06B
+:109E000000280FD1EFF3108072B60B684FF0E022FC
+:109E1000C2F800314B68C2F8043100228A60002881
+:109E200000D162B6704700004C7D002070B5164E20
+:109E3000154856F8245F846CB168AC2901D024B170
+:109E400011E0406B04442D1A05E001F0B3F904461B
+:109E5000B068AC2807D12A46A4F580410B48FEF72C
+:109E6000FEFA00280ED02A4621460848FEF7F7FAE7
+:109E7000002807D001F004F829462046BDE87040CC
+:109E800001F0BCBA70BD0000D8750020008007004A
+:109E900030B504462C4995B04FF6FF70488001203C
+:109EA0008DF812004FF65960ADF81000224604A953
+:109EB0000120A8DF002844D1244B0FCB8DE80F00F0
+:109EC000A11C684662DF00283BD120491C22603972
+:109ED0000BA8FEF7A0FA1E4D142205F1C401A868D4
+:109EE0001290A0788DF84A002868139006A8FEF713
+:109EF00092FA12A8069013A807902088231D06AA9C
+:109F00000BA9AADF00281CD11C2205F1D8010BA83F
+:109F1000FEF781FAE8681290A0788DF84A00686828
+:109F20001390142205F1F40106A8FEF774FA12A8A2
+:109F3000069013A80790208804F10C0306AA0BA929
+:109F4000AADF15B030BD0000A859002038DB07009B
+:109F500030DA0700F0B585B0044614216846FEF7F4
+:109F600073FA2078032308280BD12748C188491E9B
+:109F700089B2C1808288002A3ED000293CD1C280AB
+:109F800023702178607860228DF800208DF8011010
+:109F90008DF802006078032101280AD00B2828D10F
+:109FA00000F058FC8DF80300002000F05BFC042159
+:109FB0001FE0207809281CD2DFE800F01B1B1B20C3
+:109FC0001B1B051B2000D4E902706D46E91C666866
+:109FD00003F04CFB044629193046C91C03F046FB2C
+:109FE000044429193846C91C03F040FB2044C01C16
+:109FF000C1B2684602F092FF05B0F0BDD4E901128B
+:10A00000684602F07AFFF2E7A85900202DE9F041F6
+:10A010001349034600208A68D4071ED0114CA3427E
+:10A020001BD04888A0F57F43FF3B10D042F00402CC
+:10A030008A60132176DF00280FD10B4EC8254FF41C
+:10A040007A47741C3846A0476D1EFAD101E00878A3
+:10A0500074DFBDE8F04101F04BBFBDE8F0810000C6
+:10A06000A85900207CDE070040DA070038B5214CF3
+:10A070000021227AD20701D0084638BDE0601E4890
+:10A0800000F0AAFD0020009001F0C4F988B91B4837
+:10A0900013DF70B901F056FF58B9684601F096FE1B
+:10A0A00038B96946012001F09BFE10B9684601F0FD
+:10A0B000E5FE0028E1D101F099FA30B1104801F035
+:10A0C00089FAA06840F00200A06000F0E1FB0028DF
+:10A0D000D3D10B481C30FFF7DBFE0028CDD1FFF7B2
+:10A0E0009FFD0028C9D1A06840F00100A0600020B9
+:10A0F00038BD0000A859002084DE0700008007005A
+:10A10000605E002070B50446011D008800226F4D7E
+:10A1100086B021287ED025DC13287CD018DC0128CD
+:10A120007AD010285BD011284AD14FF6FF70688092
+:10A13000287A400704D4FFF773FD08B1FFF7B0FD9C
+:10A14000E96800293CD006B00220BDE8704008470D
+:10A15000142878D01A2877D01F2831D16888091D93
+:10A1600075DF62E0512870D02CDC222828D023280B
+:10A1700062D0242824D0502822D1554D34F8060F1F
+:10A18000A98888421CD1534800F0ECFC060017D087
+:10A19000628904F10C01FEF73EF918224E49684627
+:10A1A000FEF739F9049601956089ADF81400684608
+:10A1B00001F064F9002803D03146464800F0F4FC71
+:10A1C00006B070BD52287BD0552813D05628F7D141
+:10A1D000A0790028F4D11321688876DF25E008886B
+:10A1E0006880E96809B1012088473B4968887A3965
+:10A1F00075DFE5E7E188F72914D28807B0F1404F11
+:10A2000011D0C91F89B2481EC21700EB927222F00A
+:10A21000030202E033E01CE036E0801A081A801DD9
+:10A2200081B200E0F7216888B5DF0028C8D006B009
+:10A23000BDE87040FFF734BD00920192A088002273
+:10A24000694690DF18E034E03AE021E0FFF728FDAE
+:10A25000B6E721486A46903842F60521806A0090A8
+:10A2600002A801906888ADDF08B1FFF719FD00234F
+:10A270001A46852168887FDF0028E7D1A0E7009291
+:10A28000088869468FDFF7E70021688866DFCCE73A
+:10A29000A079002894D021460D4802F053F80028F8
+:10A2A0008ED006B004F10801BDE87040084801F006
+:10A2B0003DBF0024088822462346214686DFB4E7B6
+:10A2C000002308881A461946B1DFAEE7A8590020D6
+:10A2D0007C5E002084DE0700C0DA0700007800F012
+:10A2E0000100704713B90378012B01D001F0A1BA26
+:10A2F000012070470022C32100F5187000F074B8E7
+:10A300002DE9F043A1B00446DDE9289520200F4651
+:10A31000209098461646782102A8FEF795F841212C
+:10A320002046FEF791F8B7F8940006EB061107EB0C
+:10A330008101B04201D991F8965025701DB3012DCD
+:10A3400004D0022D0AD0032D13D116E00022494675
+:10A35000404600F049F8C4F8010014E020A9601C50
+:10A36000CDE900014B4642460A4902A800F036FEFC
+:10A3700048B1002021B0BDE8F083B1F89820601CFE
+:10A380009A31FEF748F84A464146204601F051FA14
+:10A39000F0E7000058D8070010B500284FF0000083
+:10A3A00006D004490870BDE81040034801F04AB9DE
+:10A3B00000F0A8F96859002005A7070010B5436808
+:10A3C0009C18446021B905E013F8010B01F8010B5A
+:10A3D000521EF9D2012010BD0249CA6B4260096CBD
+:10A3E00081607047D8750020F0B54FF0FF3622B17C
+:10A3F0001268D24300230A4D0DE03246FAE7C45CEE
+:10A4000062400824D70700D037462F4087EA52021F
+:10A41000641EF7D15B1C8B42F1D3D043F0BD00002A
+:10A420002083B8ED10B504460068401C07D02046D4
+:10A4300002F04AFE2168814201D1012010BD0020B6
+:10A4400010BD000010B50B4C90B0607800280ED104
+:10A4500000F028FE20220849684600F043FE402311
+:10A460006A460649064800F079FD0120607010B088
+:10A4700010BD0000D859002004D80700847C0020BB
+:10A4800070D80700F0B5146906468DB020681546EF
+:10A49000271DE0B1022920D00A2000906B4609AAAE
+:10A4A000304602F0F9FC00280FD009A901A8009A53
+:10A4B00002F0E8FA01AE96E80F0005AE86E80F005C
+:10A4C000236869683A4605A898470DB0F0BD0DB0FD
+:10A4D0003046BDE8F04002F049BB6946304602F024
+:10A4E000DBFA0028F1D0236869683A466846984745
+:10A4F0000028EAD002980028F5D101987060012068
+:10A50000E3E753689B7813F0C00303D0402B03D0DC
+:10A510000020704700F002B8FFF7B4BF2DE9FF41FB
+:10A520000B465168064614468878334D00F00F02FA
+:10A5300010F0300055F8225006D0102806D0202800
+:10A5400008D0302856D13EE022694DE061690120F3
+:10A55000087047E0022B28D1042A26D84FF00108C2
+:10A5600069463046676902F097FA00281AD009E078
+:10A570000B89226903FB00226846A84770B138881E
+:10A58000401C3880029820B1616838884A8990421E
+:10A59000EED301987060029860BB02E04FF00008B3
+:10A5A000F7E7404604B0BDE8F081D4E904300F89F4
+:10A5B0000288498907FB02338A421BD2521C02805F
+:10A5C0001A46616810E008886169072A088009D185
+:10A5D000606801892069FDF737FF60682169C068FC
+:10A5E00002F075FA2269616804B03046AC46BDE8F5
+:10A5F000F04160470020D5E788DD070070B51C48B2
+:10A6000001240168C90301D581130CE019480168D0
+:10A610001522C9B2B2EBD10F07D10168C90704D026
+:10A62000016801F0560101600024134D286A0128D9
+:10A630001CD14FF4405011494068884208D123464C
+:10A640004FF4805105F518706A6BFFF74BFE68B147
+:10A6500000F09CFD014623460948AA69FFF742FE27
+:10A6600020B101F0A7FB10F0B10000D0012070BDB7
+:10A670000004004020050040D8750020DBE5B15102
+:10A68000797800204169002901D0C06808477047E7
+:10A690007047000010B50446801E062810D2DFE87F
+:10A6A00000F00D03030F09090A494FF4702000F070
+:10A6B000EDFA05E00120FFF76FFE01E000F0EAFF90
+:10A6C00005484168002903D02046BDE810400847EE
+:10A6D00010BD000089A907006859002010B5044684
+:10A6E000062801D0072C02D1002001F06BF80448A5
+:10A6F0000168002903D02046BDE81040084710BD7E
+:10A70000A4590020BFF34F8F05480168054A01F4A2
+:10A71000E06111430160BFF34F8F00BFFDE7000010
+:10A720000CED00E00400FA052DE9FC4180461F46CF
+:10A7300015460E4600240D4800F006FA38B11120E7
+:10A74000BDE8FC8106EB043001F0E2FA641CAC4287
+:10A75000F8D1064800F0F5F9CDE90057334600225C
+:10A760000221404600F02AF80020E9E7F8590020CD
+:10A770002DE9F843104D0F4680461E469146694626
+:10A78000286800F0B2F9040014D01C21FDF75CFE2B
+:10A7900001202071C4F81490380BC4F80080C4E97B
+:10A7A00002606946286800F0C1F902F055FB0020FC
+:10A7B000BDE8F8830420FBE7B4DB07002DE9F04394
+:10A7C00087B00446DDE90E8980681D4616460F46AF
+:10A7D00000280BD018216846FDF736FE02A88DF838
+:10A7E000007080E86003A1686846884707B0BDE84C
+:10A7F000F08330B50446006887B00D4680680028B5
+:10A800001FD018216846FDF71FFE0195A06805902E
+:10A81000207910B1012810D107E001208DF8000047
+:10A8200020690290E068039005E002208DF80000A6
+:10A83000E0680003029060690490206881686846BF
+:10A84000884707B030BD0B2803D30B38C0B200F0E7
+:10A8500009B870470249002208780A707047000062
+:10A86000C0590020014908700B207047C0590020D2
+:10A8700001490120087070476859002001490120F2
+:10A8800008707047A05900200123723000F0FABF11
+:10A890000EB59DF8080020F00F00401C20F0F000DD
+:10A8A00010308DF8080068466DDF002819D19DF83A
+:10A8B0000100401C8DF8010068466CDF002810D1B3
+:10A8C0000848007A800703D50748011D806901E028
+:10A8D00006A1072082B202A87CDF002801D105482A
+:10A8E0007ADF0EBDA8590020605E002044667554D2
+:10A8F0006172670046DA07002DE9F04781461D4680
+:10A9000016468846494502D10020BDE8F087A8EBED
+:10A910000900040B06F6FF704FF0000A070B00F069
+:10A92000C3FAA5422AD22C4628E0A74202D8BA464A
+:10A93000354601E0A246250300225146484600F074
+:10A9400023FD0028E1D1681E00F003002A1A00232D
+:10A9500041464846D21C00F02DFD0028D5D10948BB
+:10A96000A7EB0A07761B016BA94429440163A8449D
+:10A97000002000F013FF5FEA000AC6D1002ED4D1F8
+:10A980005046C2E7D87500200120FFF705BD000042
+:10A99000014941600020704788DB070010B50B4972
+:10A9A00041600B4800F0D0F868B901F017FB084986
+:10A9B0001C234FF4EE7208740448A1F5EE71001FD9
+:10A9C000006800F07FF8002010BD0000B8DB070031
+:10A9D000447F002002480068002800D00120704712
+:10A9E000F85900200248007A002800D00120704762
+:10A9F000447F002010B54FF44051144B4C6800F5D3
+:10AA000000509C4204D042689A4201D1012200E0E9
+:10AA100000229C4218D144689C4215D10A78142A1D
+:10AA200001D9496900E00021094A0378B1FBF2F13C
+:10AA3000142B01D9406900E00020B0FBF2F0814204
+:10AA400001D0012200E00022104610BDDBE5B1512B
+:10AA500040420F0070B5054608680C464A68866893
+:10AA60002846314601F054FF6068286104F10C006B
+:10AA70006861B0780221B1EB901F01D1241D2C61D7
+:10AA800070BD000000F0E4F94FF48051002000F0A8
+:10AA900011F940B90548C0F5FC2100F00BF910B9D7
+:10AAA000034800F073F901F035FC00000080070056
+:10AAB00091A6070010B5FDF7F8FB08B1002010BD06
+:10AAC000112010BD10B531B1B2FBF3F403FB142417
+:10AAD0001CB1092010BD0E2010BD01600021416095
+:10AAE00081608281C381084610BD70B50C46054661
+:10AAF000FDF790FB002802D021882868084470BD2B
+:10AB000010B50A8849888A4203D1FDF7C5FB0120A8
+:10AB100010BD002010BD70B50C460546FDF79FFB2B
+:10AB2000002802D061882868084470BD10B50A88E2
+:10AB300049888A4203D1FDF789FB012010BD00201E
+:10AB400010BD002100F003B8012100F006B808B5DF
+:10AB50006A46FDF7DCFB009808BD08B56A46FDF7BC
+:10AB6000C9FB08BD38B5044600258DF8005068467D
+:10AB7000FFF71EF921686268086890420ED9401EEE
+:10AB800008600178238AE26801FB0325227A2168A4
+:10AB9000101AC0B20A79824200D208719DF80000F2
+:10ABA000FFF72AF9284638BD38B5054600208DF84C
+:10ABB00000000C466846FFF7FBF8E868298A201A6F
+:10ABC000B0FBF1F12A681068431C136001709DF816
+:10ABD0000000FFF711F938BD10B530B1017A4268B5
+:10ABE0000368891AC9B21A6006E00E2010BD036816
+:10ABF0001A68541C1C601170491EC9B2F7D2006853
+:10AC000000210171084610BD10B54FF0E0224FF051
+:10AC1000FF314FF48054C2F88011C2F8801200F066
+:10AC200005FC2046BDE81040AFF3008010B5044697
+:10AC30001448C0F5FE2100F03DF808B1FFF730F8E8
+:10AC400000F0A4FA014610488069421EC2F30B02CC
+:10AC5000801A0144002001F6FF7100F02BF808B1C2
+:10AC6000FFF71EF8D4E90001002282F3148882F372
+:10AC7000108882F3118882F3138880F30888BDE876
+:10AC80001040084700800700D875002070B5084DB7
+:10AC900004460E46686802F0DFFC002C06D03246FF
+:10ACA00021466868BDE8704002F0C8BC70BD000075
+:10ACB00070590020F0B50A0502D1B0F5FE2F01D978
+:10ACC0000720F0BD134D000B491E124F01222E1D0F
+:10ACD000103700EB113407F1040C17E04309C3F1FE
+:10ACE000000100EB411E02FA0EF106D0012B06D046
+:10ACF000022B06D0032B08D105E0296005E0316066
+:10AD000003E0396001E0CCF80010401CA042E5D916
+:10AD10000020F0BD0006004070B5194D0024E86A1F
+:10AD20002435012807D0A52808D0AA2809D0AC28A6
+:10AD30000AD0002070BDFEF78DFF0BE002F00CF989
+:10AD400007E0FFF773F805E002F006F908B9FFF72E
+:10AD50006DF80124284600F03DFA0A4900200870E9
+:10AD6000094800F01BFD08B1032070BD0120002C34
+:10AD7000FBD00349096A0129F7D1022070BD000008
+:10AD8000D8750020A05900207DA8070070B52A4D75
+:10AD90006860002000F05CFC80BBFFF7BDFF20B1C5
+:10ADA000012828D002283CD105E04FF47024FFF799
+:10ADB00025FC10B932E04FF4A02400F075F81F4ACA
+:10ADC00020211820FEF7DEFF08B1FEF769FF00F032
+:10ADD000F1FF1621B1EBD00F09D100F0EBFFC00756
+:10ADE00005D000F0E7FF164920F0B100086000F040
+:10ADF00003FB18B903E00120FFF7CEFA11E0114977
+:10AE00002046FFF743FF104800F0E0FA48B900BFC2
+:10AE100000F036F8FEF796FF41DFF9E700F0C0FBDF
+:10AE200008B1032070BD00202870084800F00AFC1B
+:10AE3000FFF7EAFEF5E7000068590020205A0020DD
+:10AE40001C05004089A9070095A6070071A8070006
+:10AE500010B540F6F8700168491C02D1074900F0AE
+:10AE60006FFF40F6FC700168491C05D1BDE8104039
+:10AE70004FF4FC2100F064BF10BD0000008007000B
+:10AE800010B501F04BF9002803D0BDE8104002F0E6
+:10AE90004BBC10BD034A93680A46014698601846A9
+:10AEA00002F0CCBB7059002070B50E4D28780028F8
+:10AEB00017D101F033F9012690B10B480468A4F5CD
+:10AEC0004864962C00DC962402F02EFC07492046AC
+:10AED000FFF7E0FF4FF0E0214FF48030C1F80001B0
+:10AEE0002E7070BDA15900200405014065D70700F0
+:10AEF00040688068004710B542680830527900F019
+:10AF0000F1F8002010BD2DE9F04399B01C469046A1
+:10AF10000D460846DDF88090FFF7EAFF6E680746A9
+:10AF20007079A04200D804462246414611A800F09C
+:10AF300015F97279494601A800F0D4F801AB224610
+:10AF400011A905F108000097FDF724FC18B10020B5
+:10AF500019B0BDE8F08348F24250F9E770B51646E3
+:10AF60000C46054600F0E2F800280ED1AA791946F1
+:10AF7000304600F0E8F8002807D131462046FFF7B8
+:10AF8000BAFF002801D10149216070BD7052464DC1
+:10AF90002DE9F8430C46DDE90857814698461646E8
+:10AFA0000D49204600F0B6F8002810D160683946F7
+:10AFB00040794200284600F0C6F8002807D146B183
+:10AFC00043463246214648460095FFF79CFFBDE8C0
+:10AFD000F88348F21050FAE77052464D2DE9F041DF
+:10AFE0001D46DDE906871646044600F02DF80028C8
+:10AFF0000DD12A463146204600F03CF8002806D103
+:10B000003A4641462046BDE8F04100F002B8BDE8AE
+:10B01000F08170B515460E46044602F075FB002817
+:10B0200007D13EB160682968C268914205D248F2F2
+:10B03000145070BD48F2135070BD83682A463146E3
+:10B040002046BDE87040184710B550B161B141606D
+:10B05000096804468847002802D10548206000207E
+:10B0600010BD48F2015010BD48F2105010BD000054
+:10B070006E52464870B515460E46044602F044FB33
+:10B0800000280BD146B155B160682A463146436865
+:10B090002046BDE87040184748F2105070BD0020AF
+:10B0A00070BD00002DE9F0410B480C4D0C4F401BCA
+:10B0B000C60801203870002406E000BF55F83400AF
+:10B0C0008047002805D1641CB442F7D302203870B1
+:10B0D0000020BDE8F081000000000000000000003A
+:10B0E000A259002070B514460D46064600F036F809
+:10B0F000291930192246BDE8704000F02FB830B54C
+:10B100000C46054600F035F828192146BDE83040C8
+:10B1100000F02FB828B10068884205D048F24050AE
+:10B12000704748F2105070470020704728B139B17D
+:10B130000022C1E900201046704748F210507047C5
+:10B1400048F21350704720B1914205D048F2115097
+:10B15000704748F210507047002070470244521E5A
+:10B1600004E000BF11F8013B02F801398242F9D234
+:10B1700070470144491E05E002780B7800F8013B56
+:10B1800001F801298142F7D2704700004FF4405086
+:10B19000074A4168914207D18068411EC1F30B0103
+:10B1A000401A00F6FF7070474FF48050704700005F
+:10B1B000DBE5B15100B5FFF7E9FF054989690A18D8
+:10B1C000401E0844C0F30B00101A00F6FF7000BDCB
+:10B1D000D875002000210160416081600148016351
+:10B1E00070470000D87500202DE9F0419846214FA6
+:10B1F00016460C460546002301215BB1012B11D0F8
+:10B20000022B1ED00020381AA0F50040A8421BD205
+:10B2100001221AE0FFF7CEFF8EB11749096A012912
+:10B22000F1D00CE0FFF7B2FFB8F1000F05D14FF4F9
+:10B230004051124A4968914201D00121E3E70021BF
+:10B24000E1E74FF48050DEE7002242EA0400884341
+:10B2500005D0022B03D25B1CDBB2022BCCD912B17E
+:10B260000420BDE8F0811BB103481830FFF7B2FF9E
+:10B270000020F6E700800700D8750020DBE5B1511B
+:10B2800070B504460078092811D2DFE800F01005F7
+:10B2900010112510381013000D461D490320C968F0
+:10B2A0008847606900F056FBFFF7CDFA687070BD03
+:10B2B000084628E00D46A18A206900F027FBFFF729
+:10B2C000C2FA68702846FFF787F8E1680029EED0D7
+:10B2D0002069BDE8704008470C460D490831081F39
+:10B2E00000F052FBFFF7AFFA60700128DFD10020B9
+:10B2F00000F054FA0028DAD00A20607070BD0846C9
+:10B300004FF40071C160BDE87040FFF765B8000000
+:10B31000C459002070B51A4A05780124936C092D90
+:10B320002CD2DFE805F02B052B0B0F2B252B08006B
+:10B3300000F034FF22E000F0A7FF1FE08B60106DEB
+:10B3400048601BE0D2E91454566C2C1BA64203D073
+:10B3500008204870012411E00024556554642146FA
+:10B36000D36400F055FF07490420C968884705E009
+:10B370008B60106D48604FF48050C860204670BDEF
+:10B38000D8750020C459002013460A4601460148DA
+:10B3900000F0F0BB0C5A002008B1034900E003495B
+:10B3A0000022034800F0FCBBC4DB070094DB07006D
+:10B3B0000C5A002008B5009313460A46014602487D
+:10B3C00000F086FC08BD00000C5A0020084910B5AA
+:10B3D00008600020FFF782F9064800F00DFA002807
+:10B3E00004D1BDE81040034800F026B810BD0000AD
+:10B3F000A4590020DDA60700002070471FB589086A
+:10B40000002201AB009283E80700684618DF04B011
+:10B4100010BD00001FB5044B0FCB8DE80F00684630
+:10B4200018DF04B010BD000048DB07004FF4805067
+:10B43000410408600020704710B5040011D00120BD
+:10B44000FFF7AAFF00280BD100F04EFA00F0DEFA59
+:10B4500048B10949081F00F097FA012803D00320DA
+:10B4600010BD072010BD04480838C4600020FFF755
+:10B47000F9F9002010BD0000CC590020816819B1F5
+:10B48000024A1821FEF70EBC0720704791B407004E
+:10B49000AFF3008030B587B0044618221F496846D4
+:10B4A000FCF7B9FF20788DF8000022781C4D0D2A9A
+:10B4B00025D2DFE802F0240B270B0B240B240B24EE
+:10B4C00024240700E968072088471BE020466946D6
+:10B4D000062A01D0012A01D1027C2A702A78012A89
+:10B4E00005D0022A06D000202870052008E0FFF7CA
+:10B4F000C7FE07E0FFF70EFF20B907B030BD0220FE
+:10B500008DF80100D4E90112684690479DF80100CA
+:10B510000128F2D0E96805208847EEE770DB0700D4
+:10B52000C459002038B10549016005494160012135
+:10B530000172002070470E207047000045B50700DB
+:10B540007DB5070010B50C0001464FF0110007D083
+:10B550002278052A05D2DFE802F00F050D0F0F0053
+:10B560000E2010BD084600F051F80028F9D1022144
+:10B57000217010BD112010BD082010BD024608200A
+:10B5800041B10B78022B04D1022A05D0032A00D145
+:10B59000112070470E207047002003220A70704768
+:10B5A00070B50B480024D0F82413491C03D1D0F8FF
+:10B5B0006403401C09D04FF4FE25284600F0A8FB88
+:10B5C000C9220349284600F0D3FB204670BD000085
+:10B5D000D875002010B528B11C220349FCF71BFFC9
+:10B5E000002010BD0E2010BD64F3070010B5064CFE
+:10B5F00000221821201DFEF7F7FE2168814201D1AB
+:10B60000012010BD002010BD64F3070070B50C4D83
+:10B610000400D5F8640305F5597503D0401C03D028
+:10B62000082070BD0E2070BD00221821201DFEF7DD
+:10B63000DBFE206007222146284629DF70BD00007E
+:10B6400000F00700014901F035BD000000F00700DF
+:10B6500010B5FFF7A1FE30B900F01CF8002000F093
+:10B660009DF8002800D0032010BD000010B5FF2277
+:10B670004FF400710648FCF7E0FE0548202124380D
+:10B68000FCF7E2FE024900205C39086310BD0000AF
+:10B69000347600202DE9F0472E48FEF7C3FE2E4EEB
+:10B6A000074634682046FEF7BDFE4FF0010A4FF012
+:10B6B000000958B16068012806D02046FEF71AFE3E
+:10B6C000D4F85C12884201D1012500E00025234C0A
+:10B6D0004FF002084FF460719FB10A461D492046A1
+:10B6E000FCF799FE9DB1366825465422311D281D70
+:10B6F000FCF791FE4FF4327206F15C0105F15C003B
+:10B7000003E015B30A4615483168FCF784FE60680B
+:10B71000012818D11249402201F5E470FCF77BFEA4
+:10B720000F491C22403101F5E470FCF774FE84F8E7
+:10B73000609284F8A1A20B4884F8E292E169C0F813
+:10B740002210C4F80480BDE8F0870448FCF77CFEB2
+:10B75000F7E7000000F00700D4590020D87500205A
+:10B76000347700205878002070B50546094801F06C
+:10B77000ABFC084C20602046FEF7BCFDC4F85C0220
+:10B78000A4F5E0632A462146BDE87040024801F076
+:10B79000A0BC0000D875002000F0070070B5054679
+:10B7A0000020FFF7E1FF040003D10349284601F020
+:10B7B00081FC204670BD0000D87500204FF48050F9
+:10B7C000704700002DE9F04107460948094D401B2C
+:10B7D000C6080020044607E005EBC400416838466F
+:10B7E0008847002802D1641CB442F5D3BDE8F0813B
+:10B7F00084DE07007CDE07002DE9F041074609489A
+:10B80000094D401BC6080020044606E055F83410D8
+:10B8100038468847002802D1641CB442F6D3BDE8FC
+:10B82000F081000084DE07007CDE0700012201F0C9
+:10B83000CBB938B5144602780B467AB1012A04D048
+:10B84000022A0DD0032A1BD112E0D0F801500022A9
+:10B8500021461846FEF7C8FDA84211D1012038BD87
+:10B8600001B02246BDE830400023401C00F00AB879
+:10B87000411C40220020009400F0F2F80128EED094
+:10B88000002038BD2DE9F041AAB0054620208846A9
+:10B8900028901E4617460124782102A8FCF7D4FD03
+:10B8A000FEF7D0FD2EB12022294620A8FFF756FC36
+:10B8B00020AD28A90A48CDE900013B464246094986
+:10B8C00002A8FFF78BFB28B9202229460448FCF781
+:10B8D000C6FD00B100242AB02046BDE8F08100007A
+:10B8E0002C7D002058D8070010B50648064C806B08
+:10B8F00020B101F0D5FD08B1012000E0002020704A
+:10B9000010BD0000D8750020D85900202DE9F04165
+:10B910000F4C07460D46E06BA26B01264119914280
+:10B9200001D9032610E00A492A465C310844394609
+:10B93000FCF771FDE06B064A2844E063403229467B
+:10B940003846FEF751FD20643046BDE8F081000026
+:10B95000D875002070B504004FF0010504D0B4F58F
+:10B96000007F03D9042508E0032506E004490020F0
+:10B970000870FFF77BFE03488463284670BD000013
+:10B98000D8590020D87500202DE9F04106461D4801
+:10B990000F46C16B806B814201D008242FE01A4D05
+:10B9A000287840B1FFF706FC30603946E86801F0BE
+:10B9B0007FFE044623E001F073FDF8B100F02CF89F
+:10B9C0000446002030603860012C0FD13946E86809
+:10B9D00001F06EFE0446012808D1386801270021D5
+:10B9E0003B460A46FFF700FC18B10424FFF73EFE71
+:10B9F00005E0FFF7DFFB30602F7000E005242046F4
+:10BA0000BDE8F081D8750020D859002001480078A1
+:10BA100070470000D859002038B50F4C251D002074
+:10BA200094F86C31014602463BB194F8D802B4F860
+:10BA3000DA2204F5B87504F53771084B9C68009458
+:10BA40005B6800F00DF8012804D1281DBDE83840DE
+:10BA500000F050B838BD000058790020D8590020B7
+:10BA60002DE9F041A2B0064620200D4620901F4649
+:10BA70001446DDF8A080782102A8FCF7E5FC002040
+:10BA80002190FEF7DFFC25B12EB1162022B0BDE8D3
+:10BA9000F0811320FAE720A91448CDE900014346BC
+:10BAA0003A46134902A8FFF799FA08B9402C01D089
+:10BAB0000A20EBE70D48224629464038FCF7ABFC4C
+:10BAC0000A4820214038FFF71AFB08484021403837
+:10BAD000CDE90001A0F14801044A21A8209BFFF70D
+:10BAE00057FA08B10520D1E70120CFE70C7D0020EF
+:10BAF00058D8070070B5044690F85400012570B37B
+:10BB000094F8550028B1012803D0022801D0032859
+:10BB10002AD194F86E00032801D0142525E0207A5C
+:10BB2000E8B1E068342801D011251EE0204601F07C
+:10BB30005FFA68B1207898B194F855100C4849B173
+:10BB4000012907D06168C06881420ED810250CE039
+:10BB500012250AE061688068814206D2F6E703E0B8
+:10BB600094F85500012800D00F25284670BD00002C
+:10BB7000D87500202DE9F0410446406815461E4660
+:10BB800002680F466A432046FEF708F820683346ED
+:10BB90002A46D0F810C039462046BDE8F04160473B
+:10BBA00001600B68114618472DE9F04128B1016882
+:10BBB00019B1C969BDE8F04108470D4D0D48002491
+:10BBC000461B14270DE000BF04EB840005EB80004A
+:10BBD000016829B1C969884710B10120BDE8F08129
+:10BBE000641CB6FBF7F0A042EED80020F6E7000098
+:10BBF0000C5A0020205A0020044801214174007A88
+:10BC000008B100207047012070470000447F0020E9
+:10BC1000012801D0032808D10449002201284A74D0
+:10BC200000D00020087401F0C9B87047447F00209C
+:10BC300070B50146022801D0032943D1224C207A55
+:10BC400000283FD0012831D002282FD11F480023DF
+:10BC50000229006802D0032928D119E0E3600279A3
+:10BC600012B1012A22D10BE0D0E90565721B142A1A
+:10BC700000D314222A4482614569AA420ED015E0FD
+:10BC80000169491C0161426991420FD1237213E09D
+:10BC9000E268521CE260082A08D9E3602372022994
+:10BCA0000AD00D21FEF7A5FD01F07EF8607C28B1D9
+:10BCB000BDE8704000F098B90021F3E7BDE870409E
+:10BCC00001F07CB870BD0000447F0020FC590020CA
+:10BCD0002DE9F84304461D4616460F460846DDF892
+:10BCE0002080FDF755FF3046FDF752FF2A463946C2
+:10BCF0002046FDF753FFCDF8008020682B463246E2
+:10BD0000D0F80CC039462046E047BDE8F883000073
+:10BD1000094902220A60BFF36F8FBFF34F8F0A1DDC
+:10BD2000106006480268002AFCD000200860BFF3BB
+:10BD30006F8FBFF34F8F704704E5014000E401406F
+:10BD4000094A01231360BFF36F8FBFF34F8F016068
+:10BD5000064801680029FCD000201060BFF36F8FF7
+:10BD6000BFF34F8F7047000004E5014000E401403D
+:10BD700070B50E4C01232360BFF36F8FBFF34F8F5D
+:10BD800000230B4D08E000BF51F8236040F823600A
+:10BD90002E68002EFCD05B1C9342F5D3002020605F
+:10BDA000BFF36F8FBFF34F8F70BD000004E50140FC
+:10BDB00000E4014001480068C0B270471C05004023
+:10BDC00008B5002242504058009008BD20B10349F8
+:10BDD00009680160002070470E2070475CDD070095
+:10BDE000FEB507460C460846FFF7F0FF002844D191
+:10BDF000002500950195012606208DF80070ADF80C
+:10BE0000040002958DF8026069462020226869DFEF
+:10BE100000958DF801608DF80250019502958DF81E
+:10BE2000035069464020226869DF00958DF8007054
+:10BE3000F720ADF80200019502956946232022689B
+:10BE400069DF0095019502958DF800606946012033
+:10BE5000226869DF4FF4B060009001950295694651
+:10BE6000A120226869DF0095019502958DF8006098
+:10BE70006946A020226869DF0020FEBD60DF00283F
+:10BE800002D1024A0121117070470000075A0020B8
+:10BE900030B51548ADF5017D0078002821D04FF46C
+:10BEA000FA7500BFADF8005280A9684661DF38B16D
+:10BEB000052816D00DF5017DBDE83040FDF7F0BE38
+:10BEC0006C460A497DA800F0BBF806E0D0E90021E5
+:10BED000204690477DA800F0CAF87F980028E1D05E
+:10BEE000F4E70DF5017D30BD075A002060DD070045
+:10BEF000F8B5134C2078C0B10120A07001F0ACF867
+:10BF0000112814D0022001F0BFF800258DF8005050
+:10BF10006846FDF74DFF11DF064625709DF80000CD
+:10BF2000FDF76AFF2EB13046F8BD0820F8BD0020AD
+:10BF3000F8BDA57001F068FA032001F0A5F8F6E756
+:10BF4000045A00207CB5194C207808B108207CBD2B
+:10BF50000120A070002001F07FF8112819D00020E6
+:10BF600001F092F812480026006801908DF80060F8
+:10BF70006846FDF71DFF0F4901A810DF05000AD034
+:10BF8000002020709DF80000FDF736FF2DB12846F7
+:10BF90007CBD00207CBD0120F3E7A670667001F037
+:10BFA00053FA012001F070F8F3E70000045A002072
+:10BFB000F4DC07009D9C07000EB50749684600F0B9
+:10BFC0003FF805E0D0E900108847684600F04FF8D8
+:10BFD00002980028F6D10EBD10DD07000148007858
+:10BFE00070470000045A00200548817819B1007894
+:10BFF00018B1FFF77DBF08207047FFF7A3BF00000F
+:10C00000045A00201FB568464BDF30B1052814D014
+:10C0100004B0BDE81040FDF743BE084901A800F098
+:10C020000FF806E0D0E900210098904701A800F041
+:10C030001EF803980028E6D0F4E71FBD7CDD07005A
+:10C04000016009684160AFF3008010B5D0E90021BC
+:10C050005368994201D1002104E0D1E90034A342A0
+:10C0600002D01946816010BD08314160F0E7816857
+:10C0700000290BD0026892680A44826041684B68CC
+:10C080009A4203D108314160FFF7DFBF70470000DB
+:10C090002DE9F04104461348134BC01A0C21B0FBA4
+:10C0A000F1F6A0694FF0FF3110F8022C02B92169B6
+:10C0B000002011E000EB400503EB85052F68974257
+:10C0C00009D14F1C02D06F688F4204D194E80F0051
+:10C0D000AD68A84703E0401CB042EBD301202060CC
+:10C0E000BDE8F081D4DE0700C8DE070010B51446B5
+:10C0F00012680830202A02D248F2145010BD0022E3
+:10C1000001F00FF80028F9D120202060002010BD98
+:10C11000083001F08FB8083001F04CB902480068CF
+:10C12000002800D0012070470004014030B587B0DE
+:10C130000C460546182216496846FCF76CF9217B27
+:10C1400014488DF800100195012906D0022915D058
+:10C15000062917D1607B049014E08188C180607B40
+:10C160000490617CD4F80E0061F31F600590049880
+:10C17000012807D10848FFF725FB03E0B4F80D10AC
+:10C180008180C1806846FFF779F907B030BD0000B3
+:10C1900098DA0700A85900207CDE07002DE9F0415D
+:10C1A0000C460546FFF732FC0826B8B16969032042
+:10C1B00041B3154A154B0F0505D0576DD3F808C08C
+:10C1C0000F4467451ED1B1F5805F01D9042019E005
+:10C1D000506DD3F808C04718674502D96670BDE8AE
+:10C1E000F0815164D16C10659164106369695A687B
+:10C1F00001F6FF711044090B0022FFF7C5F8002873
+:10C20000EDD005206070EAE7D8750020C459002001
+:10C2100010B5044686B00020FFF7C6FC30B1154AC1
+:10C2200018212046FDF73EFD06B010BD1822124928
+:10C230006846FCF7F0F81148026D114881688A429F
+:10C2400010D14068FFF7F2FA8DF80100FEF7FBFA13
+:10C250008DF80100D4E90112684690470948FFF7BC
+:10C260009DFAE1E701208DF80100D4E9011268464A
+:10C270009047D9E711C2070058DB0700D8750020A6
+:10C28000C459002009C307002DE9F0410E460446B9
+:10C29000FFF7BCFB60B11A4DD5E91401401AA18A21
+:10C2A0006A6C0844904205D903207070BDE8F081A3
+:10C2B0000820FAE7134A286B52688718104A206949
+:10C2C0004832FEF791F8D4E903318046A28A384615
+:10C2D000FFF770F820B1D4E90310BDE8F04108473A
+:10C2E000A18A286B08442863A18A286DC5F8488074
+:10C2F00008442865C6F80880286D7060D6E70000FD
+:10C30000D8750020C459002001490620C968084793
+:10C31000C4590020BFF34F8F05480168054A01F456
+:10C32000E06111430160BFF34F8F00BFFDE70000E4
+:10C330000CED00E00400FA0501460148FEF734BCAC
+:10C3400084DE070030B58A1D8B79083187B0022B57
+:10C3500033D153888489A3422FD1127A012A2CD158
+:10C36000184C0DF1040C3CCC8CE83C000A89ADF86B
+:10C370000C204A890C3104911249ADF80E20803905
+:10C38000114C096A0591CDF818D0018A05AA608878
+:10C39000ADDF18B96846FDF7A1FF38B10020ADF850
+:10C3A000080001A96088B0DF50B106E040F2FD103E
+:10C3B000ADF8080001A96088B0DF002007B030BDEB
+:10C3C0000120FBE7B0DA0700A8590020F8B50D46B8
+:10C3D00014460646694600F057FA00280FD0009B25
+:10C3E000B3F5803F0AD2981C834207D8A97802226D
+:10C3F000B2EB911F02D02989814201D20020F8BD01
+:10C400002380A11C3046009A00F074FBF8BD114651
+:10C4100000F0D6B8114600F0E3B8F8B50C46154662
+:10C420000646694600F030FA00280CD0009A501CED
+:10C43000904207D3A1780223B3EB911F02D0218948
+:10C44000814201D20020F8BD2946304600F052FB5F
+:10C45000009A0021A954F8BD2DE9FF410C46CE6891
+:10C4600017460546694600F017FB00280ED0E06825
+:10C4700000280BD0A0783A46C0F3011002283146BC
+:10C48000684606D000F0DAF80199696004B0BDE8AA
+:10C49000F08100F086F8F7E77CB50D461446694652
+:10C4A00000F08FF9002820D02889082806D0042819
+:10C4B00009D002280AD001280CD015E0DDE90001DE
+:10C4C000C4E900010AE00098206006E0009800B28C
+:10C4D000208002E0009840B22070C117DDE90023FF
+:10C4E00050405940084301D000207CBD01207CBD54
+:10C4F0007CB50D461446694600F0A1F9002820D00D
+:10C500002889082807D00021042809D002280AD049
+:10C5100001280CD014E0DDE90001C4E9000109E0C4
+:10C520000098206006E0009880B2208002E0009829
+:10C53000C0B22070DDE9002350405940084301D0CB
+:10C5400000207CBD01207CBD7CB50D4614466946AB
+:10C5500000F075F9002821D02989082908D0009811
+:10C56000C21704290BD002290DD001290ED014E0E6
+:10C57000DDE90002C4E900020146134609E0C317E1
+:10C580000146206005E001B2218001E041B2217046
+:10C59000CB1741405340194301D000207CBD0120FE
+:10C5A0007CBD70B50D46064614461146284600F07F
+:10C5B0008EFA224629463046BDE8704000F03EB86B
+:10C5C00038B50C460422694600F094FA002806D0DB
+:10C5D0009DF80310009861F31F602060012038BDB2
+:10C5E0001CB50C460822694600F084FA002824D0C5
+:10C5F0009DF801109DF800209DF80230080E42EAD7
+:10C60000012242EA034240EA13409DF803309DF8BC
+:10C61000041040EA132008439DF8051042EA036223
+:10C6200040EA01209DF8061040EA01409DF80710FD
+:10C6300040EA0160C4E9002001201CBD2DE9F04F53
+:10C6400004469DB000200090064601904FF0FF3A4E
+:10C650000AA800F05DF94FF0010BE94682E012AB49
+:10C6600005AA06A9204600F0C9F850B10AA8059904
+:10C6700000F05FF960B10B98807810F0300F53D064
+:10C6800060E09DF84800002870D11DB0BDE8F08F33
+:10C690000598B04242D30B9D0AAE0B98807800F00B
+:10C6A0000F00082812D0304600F05AF90B98A84223
+:10C6B000F3D156460599B14230D3D4F80880099198
+:10C6C0009DF8181008910E990D6820E00B980688C7
+:10C6D000F0E729680F682FB1DDE9083229462046C6
+:10C6E000B84711E011948968DDE908720988914220
+:10C6F0000CD1294617A8FEF7ADF985F80CB017AA9A
+:10C7000039461198FDF7FDFE0028BED0AD6815B181
+:10C71000A1684145DDD0A168414523D19DF818109D
+:10C72000204600F023FA1BE00C9840280AD200F0C3
+:10C730001F010BFA01F00C994A0959F82230034302
+:10C7400049F82230E5682DB10AAB9DF81820204643
+:10C750000599A8470AAA9DF818102046FDF7D1FEB2
+:10C76000002892D0A06800287FF479AFDDE90B049F
+:10C7700085780AA800F0F4F80028F7D115F0300FFA
+:10C7800003D10B98008800B1641CC4B10020494655
+:10C7900005E000BF51F82020521C0ED1401CB0EB28
+:10C7A000541FF7D3600959F8201004F01F00C0F19E
+:10C7B00020022AFA02F0814201D0002065E7012020
+:10C7C00063E71CB50C46694600F039F8002814D020
+:10C7D000DDE90002C10709D051084FEA30006FEAD5
+:10C7E00000026FEA0100C4E9002004E051084FEAAA
+:10C7F0003000C4E900014FF001001CBDF8B5074648
+:10C800000020187008700E4610601C4615466946D8
+:10C81000384600F039F801004FF0010009D00099C6
+:10C8200059B1C8082860009800F007003070012056
+:10C83000F8BDB96809B10020F8BD2070FBE72DE90B
+:10C84000F8430026884681463446354604E0402EAB
+:10C8500002D30020BDE8F8836946484600F076F927
+:10C860000028F7D09DF80070324607F07F00C10F16
+:10C87000FBF7C2FD29430443F61D0D463806E6D4F6
+:10C88000C8E900410120E5E7F8B50E4607466946CC
+:10C8900000F05CF900280AD09DF80040200616D56B
+:10C8A000072504F07F0403E0202D01D30020F8BD0C
+:10C8B0006946384600F04AF90028F8D09DF8001083
+:10C8C00001F07F00A8400443ED1D0806ECD40120D0
+:10C8D0003460F8BD10B559680B4AC968914212D14D
+:10C8E0000A4AD0E90110D2E90134234301D00020E3
+:10C8F00008E011F8013BA0F101001B06F9D4C2E9E0
+:10C9000001100120907010BDE0D80700D859002018
+:10C91000C26000230160C0E901138B881A440261E0
+:10C92000B1F906301A4442610888002800D001207D
+:10C93000704770B545680E46044660680188B1428C
+:10C9400006D1807800F00F00082801D0012070BDCA
+:10C95000204600F005F86068A842EED1002070BDC6
+:10C9600030B541680A885AB101F1100343600A8A60
+:10C9700042B18C780A89C4F30115032D07D00BE06E
+:10C98000002030BDC2680168FFF7C2FFF8E79D785C
+:10C99000C5F30115032D06D00225B5EB141F08D1F0
+:10C9A0004C89624309E08D8804690022641B04619C
+:10C9B00003E0B5EB941F00D10422897811F0300F09
+:10C9C00002D18168491C81609C880169214411441D
+:10C9D0000161B3F9062011444161012030BD30B539
+:10C9E0004168002487B0897801F00F02082A11D02D
+:10C9F0008A091ED00222B2EB911F09D10269C1F34C
+:10CA000001110229146001D0032901D14069048079
+:10CA100007B030BD0069056808E02C7329466846F8
+:10CA2000FEF718F86846FFF7DAFFAD68002DF4D17D
+:10CA3000EEE7C1F30111012912D00229E6D0032942
+:10CA4000E4D04268917801F00F0107290BD0D1683A
+:10CA500081B11289006907B0BDE83040FBF7DBBC4B
+:10CA600041690C70EDE70169D06807B0BDE830405E
+:10CA700000F02DB81189006907B0BDE83040FBF720
+:10CA8000E3BC000010B5034B002408C080E816008A
+:10CA900010BD0000BDA3070038B50D460446694629
+:10CAA000FFF7F2FE00280BD0D4E90002D4E902130C
+:10CAB000C5E90002C5E902130098814201D20020B5
+:10CAC00038BDA860A168081AA060012038BD00B573
+:10CAD0000A4687B001466846FFF71AFF002807D0CC
+:10CAE0006846FFF77CFF6846FFF73AFF0028F7D15A
+:10CAF00007B000BD7FB514460546A9B9124A28689B
+:10CB0000904208D110E0102269462846FFF7F2FF54
+:10CB1000002807D0103C102CF5D82246694628463C
+:10CB2000FFF7E8FF04B070BDA868A04201D2002062
+:10CB3000F8E72B682246284698470028F2D0A868D4
+:10CB4000001BA8600120EDE7BDA3070010B5044657
+:10CB50008068002809D023680122204698470028D1
+:10CB600003D0A068401EA060012010BD38B500248D
+:10CB700039B1012912D0022912D005291DD0002077
+:10CB800038BD0546012269462846FFF7B3FF90B13C
+:10CB90009DF800000006F5D4012038BD08220DE004
+:10CBA00005466946FFF770FE28B100212846009A25
+:10CBB000FFF7A0FF38BD204638BD0422BDE838404D
+:10CBC0000021FFF797BF00002DE9F04F81462C4868
+:10CBD00017460E46C5680A4693B0012449462846C2
+:10CBE000FDF752FEDFF89C80A24670B195F8550023
+:10CBF00068B100F00101C0F340024B462846CDE980
+:10CC0000006700F043F8D8B11BE0172419E0CDE924
+:10CC1000006A4B460022294602A8FDF771FB4FF03F
+:10CC2000000B68B10FB3412202A91748FBF7F3FBD1
+:10CC3000C8F820B0C8F82CA06968C8F8081017E038
+:10CC400005246FB1012C13D00E482430FEF7C2FA30
+:10CC5000FEF70CFDC8F8489013B02046BDE8F08FF1
+:10CC6000012C02D0FEF702FDF6E7C8F814A0F3E7A6
+:10CC7000002231464846FDF7B7FBC8E90960E7E7FF
+:10CC8000D8590020D8750020797800202DE9F04788
+:10CC9000A4B08946DDE92C5A04469846164644213C
+:10CCA00002A8FBF7D1FB442113A8FBF7CDFB4746B5
+:10CCB000B9F1000F38D008F50050384A4368A16D2B
+:10CCC000934255D14B1EC3F30B03C91A41F6FF73B0
+:10CCD000D0F808C019448C454AD34FF440514B68F2
+:10CCE00093420DD10A78102A01D9096900E0002188
+:10CCF0000278102A01D9006900E00020814237D172
+:10CD00004046FDF777FE00B18EB30121A06DCDE95D
+:10CD1000000143460022214602A8FDF7F1FA00284F
+:10CD200027D0A06D07442D1A56B10020CDE9005040
+:10CD30003B464A46214613A8FDF7E2FA002818D0E0
+:10CD4000BAF1000F28D0164DB9F1000F19D04046A6
+:10CD5000FDF750FE18B105F11800FEF73BFA41222D
+:10CD600002A91048FBF757FB36B1AC2005E0FFE7FE
+:10CD7000002024B0BDE8F087A520E862A06D6863BC
+:10CD800001E0AA20E8623EB10648412213A98230A0
+:10CD9000FBF741FB6068E8600120EAE7DBE5B151A1
+:10CDA000D875002038780020034802490068FDF754
+:10CDB000A7BE0000005A0020B4DB07002DE9F041B7
+:10CDC000224C0025224E207A012730B92148311DFE
+:10CDD0000068FDF7A0FE306038B102202072316893
+:10CDE000087928B101281BD113E06560BDE8F08106
+:10CDF000D1E90503C01A142800D31420820806D0F4
+:10CE000082080869C9681844194429DF05E001222D
+:10CE1000F7E7D1E90301084428DF58B1112812D0FF
+:10CE200003213068FDF7E5FC25726560BDE8F0413F
+:10CE3000FFF7BABF207C0028D8D1BDE8F04100211F
+:10CE40000220FEF7F5BE2772D0E70000447F0020E5
+:10CE5000FC590020B4DB070010B5074C201DFDF77E
+:10CE600073FE002806D1607C002803D1BDE8104085
+:10CE7000FFF7A4BF10BD0000447F002010B510468E
+:10CE80001A46FBF7C8FA002010BD10B510461A4626
+:10CE9000FBF7C1FA002010BD2DE9F0411E681C46C9
+:10CEA0001546074621B1012918D0052923D119E0DB
+:10CEB00000202060401C2060B0421CD8012229467E
+:10CEC0003846FFF717FE002806D015F8010B0006BC
+:10CED00001D52068EEE70120BDE8F0810820024678
+:10CEE000186002E004200246186029463846BDE872
+:10CEF000F041FFF7FFBD0020EEE770B516460A4689
+:10CF00000446C11C104600F0B1FB054661193046CD
+:10CF1000C91C00F0ABFB284470BD000003B5094AF2
+:10CF200085B0D2E91612CDE9001207498989ADF81A
+:10CF3000001006A9CDE90210044869464088AEDF1A
+:10CF400007B000BD30DA07007C5E0020A859002041
+:10CF5000084670470846704770B5FEF72FFC114A27
+:10CF6000114E136B546B916CE21A551EC5F30B05F1
+:10CF7000521B42F2040518446D5802F6FF72B54286
+:10CF800001D0032070BD1944A34201D1002070BD1F
+:10CF90000823FDF7B1FC0028F9D1BDE87040FEF789
+:10CFA000FDBB0000D8750020DBE5B151F0B50546AA
+:10CFB000002003464FF440540C4E4FF6FE7712E02B
+:10CFC000D4F804C0B44505D155F823C0B4F80CE03A
+:10CFD000F44504D02AB155F823C0BC4501D1012045
+:10CFE000F0BD5B1CDBB28B42EAD3F0BDDBE5B15197
+:10CFF00010B54FF44051174B4A68018A9A4221D12B
+:10D0000071B100F11403426990F8550062B104282F
+:10D0100008D00022BDE81040C9B21846FFF7C6BFCD
+:10D02000002010BD0122F5E710B1012808D1F7E773
+:10D03000012905D9C9B200221846FFF7B7FFEFE76B
+:10D04000012010BD11B141690029E9D10078002803
+:10D05000F6D110BDDBE5B1513EB50446094968463D
+:10D06000FEF7EEFF08E000BFD0E900212046904720
+:10D0700030B16846FEF7FBFF02980028F4D13EBDB0
+:10D0800011203EBDF8DC07003EB50446084968465D
+:10D09000FEF7D6FF07E000BFD0E900212046904709
+:10D0A0006846FEF7E4FF02980028F5D13EBD000077
+:10D0B00004DD070002460348014B006800F009B890
+:10D0C00058720020D459002000225821001DFDF77D
+:10D0D0008BB92DE9F04114464FF460751E460F469A
+:10D0E00080462A46FBF7BBF930B1002201214046B9
+:10D0F000FEF74AF998B905E00CB10020A0470020DE
+:10D10000BDE8F0812A4639463046FBF784F92346CC
+:10D110002A4631464046FEF74DF90028F0D003205C
+:10D12000EEE770B516460D46040007D035B1206C09
+:10D13000802200213828225403D307E00E2070BD3E
+:10D140002154401C3828FBD30BE02154401C4028BC
+:10D15000FBD32146084600F097F838212046FBF71C
+:10D1600073F9216CD4E912304A0FC90038345918C8
+:10D170005041C4E90410227CE2710A0A42EA0062CA
+:10D18000A2710A0C42EA00426271020242EA116094
+:10D1900020716069E070010AA170010C6170000EDD
+:10D1A00004F838092146084600F06EF84FF00002F6
+:10D1B000EEB1E06ED100C840A854A36ECB40A818D1
+:10D1C0000371636ECB400372236ECB400373E36D38
+:10D1D000CB400374A36DCB400375636DCB400376E6
+:10D1E000236DCB40521C0377042AE2D31FE018239F
+:10D1F0005042216D03EBC000C140A954666DC6408A
+:10D20000A9180E71A66DC6400E72E66DC6400E736B
+:10D21000266EC6400E74666EC6400E75A66EC6407B
+:10D220000E76E66EC640521C0E77042AE0D300202C
+:10D2300070BD0000A8B100210164C0E912110A49C3
+:10D2400001650A4941650A4981650A49C1650A497A
+:10D2500001660A4941660A4981660A49C166002099
+:10D2600070470E207047000067E6096A85AE67BB0D
+:10D2700072F36E3C3AF54FA57F520E518C68059BB8
+:10D28000ABD9831F19CDE05B2DE9F04FC8B0002268
+:10D2900013466F46CC181B1D2568E4782DBA25F07F
+:10D2A000FF05254347F82250521C102AF2D31BE0F9
+:10D2B00007EB820151F8083C4FEA734484EAF344D7
+:10D2C00084EA932451F83C3C4FEAF31585EAB345D0
+:10D2D00085EAD303234451F81C4C51F8401C2144E7
+:10D2E000194447F82210521C402AE1D3036D47939A
+:10D2F000416D4691846D4594C26D44929246026E92
+:10D300004392456E4295A946856E4195C66E4096FC
+:10D31000B34600264FEAB21787EAF22787EA726C13
+:10D3200002EA090725EA020887EA0807BC44204FF9
+:10D3300057F8268008EB0B07BC445DF82670AB4617
+:10D340000CEB070E4FEAB30787EA733787EAB35C43
+:10D3500081EA04074D4601EA040891461F400AEBA2
+:10D360000E02A24687EA08070C46BC441946761C02
+:10D370000EEB0C03402ECDD3479E33440365469BF2
+:10D380001944416545992144816544995144C165D9
+:10D39000439911440166429949444166419929449F
+:10D3A000816640995944C16648B0BDE8F08F0000DD
+:10D3B000E4DB07002DE9F04116460F46040004D0D7
+:10D3C00006B317B10025A8461AE00E20BDE8F0818B
+:10D3D000216C785D6054206C401C206440280ED184
+:10D3E00021460846FFF750FFD4E912014FF40072BE
+:10D3F000801841F10001C4F84080C4E912016D1C9D
+:10D40000B542E5D30020E1E710B51620FCF7AEFBEE
+:10D4100048B10C4882684FF4800152B1016821F490
+:10D420008001016010BDBDE8104042F20100FCF730
+:10D4300037BC4FF0E020C0F88011BFF34F8FBFF32F
+:10D440006F8F10BD4C7D002010B51620FCF78EFBB1
+:10D45000A0B1114890F800044009082811D2012118
+:10D46000814011F0EC0F0CD00C4882684FF4800121
+:10D470006AB1016841F48001016010BD42F201000F
+:10D4800001E042F20200BDE81040FCF709BC4FF099
+:10D49000E020C0F8001110BD16E000E04C7D002037
+:10D4A0007FB52A4800F15C01826B6846FFF7EAFA13
+:10D4B000274E9DE8070006F11C03274C83E8070070
+:10D4C00019462448C8600020A0706060A0604FF436
+:10D4D0004771A6F54070FAF7B7FFA6F540721F49ED
+:10D4E00002F54770FFF75DF800282BD0A07858B3FD
+:10D4F000A6F5407090F86C11002901781CD019BB7A
+:10D5000090F8720100B3D4E90112A6F5C675684619
+:10D51000FFF7B8FA9DE80F001C3686E80F004FF4BD
+:10D52000B2712846FAF790FF2A460D493046FFF7B8
+:10D5300038F8002806D003E031B1807920B1094DD8
+:10D540000120E56004B070BD0020FBE7D875002025
+:10D55000587C0020D5C80700D859002000DA070001
+:10D56000E0D807006079002070B503466FF07F4077
+:10D57000814200D20846124DD5F804250244081A0B
+:10D58000411E22F07F425860952902D29630963A89
+:10D5900058601C7B05EB8400C0F8402509494FF416
+:10D5A000F86088474FF4A07000EB84012846FEF72E
+:10D5B00007FC4FF48030A040C5F8040370BD0000A4
+:10D5C0000040024051D8070070B5174E307800284F
+:10D5D00029D1164800680125C0F3004008B9144855
+:10D5E0000560144C4FF480712046FEF7E9FB4FF4C0
+:10D5F000A0712046FEF7E4FB4FF4A2712046FEF72F
+:10D60000DFFB0D49A02081F800040B4910202039D0
+:10D61000C1F800010020C4F80805A56025600220BB
+:10D62000C4F80403357070BD705900201804004020
+:10D63000080000400040024024E000E070B51546BC
+:10D640000E460446FFF7C0FF314620462560BDE880
+:10D650007040FFF789BF0000017B4FF480308840A5
+:10D660000149C1F808037047004002400870020AEF
+:10D670004A70020C8A70000EC870042070470000C7
+:10D6800010B50248FDF75DFA002010BDF8590020E2
+:10D6900010B514210448FAF7D7FE04480068FDF7D6
+:10D6A00009FA002010BD0000447F0020B4DB070011
+:10D6B00030B50F2490F8553000220BB1042B03D164
+:10D6C00090F86450012D06D0DD0707D090F8565031
+:10D6D000012D02D002E0826E0DE0826D9B070AD51B
+:10D6E00090F85C30012B06D1064B006EC3F5FC238D
+:10D6F000984205D802440AB101240A60204630BD90
+:10D700000424FBE70080070030B100680549884227
+:10D7100005D048F20250704748F20150704700208F
+:10D72000704700006E52464870B5FEF7F7FC0028BF
+:10D7300011D00020084A094B094C0121166801FA52
+:10D7400000F52E4203D004EB8005C5F80036401CDE
+:10D75000C0B20728F2D370BD080501403546526EAD
+:10D7600000000140FFF7E0BF002070470020704735
+:10D770002DE9FC4180461C4617460E460C48089D84
+:10D78000FDF7E2F910B11120BDE8FC81A20839468D
+:10D790003046FEF7EDFA0648FDF7D3F933463A4630
+:10D7A00001214046CDE90045FDF708F80020EBE7F0
+:10D7B000F85900202DE9F84F114D884681461E4644
+:10D7C00017466946DDF828A02868FDF78EF90400A1
+:10D7D00013D01C21FAF738FE00202071C4F8009005
+:10D7E000C4E90486C4E902A769462868FDF79EF9E2
+:10D7F000FFF732FB0020BDE8F88F0420FBE70000B4
+:10D80000B4DB07007EF8C9F6120F4CD79208C1713D
+:10D8100083F5768FE216ECBA29939A7403F32B06FC
+:10D820009BFC932EF7111725792DB9D6BE74B76CD2
+:10D830006731C8341D64FD04B795B1DC017F21F167
+:10D84000461AF08B000000000000000000000000FD
+:10D850000338FDD87047000011C1070017C1070049
+:10D86000EDC007002000000078000000000000006C
+:10D8700048002800002040008D87070000000000BD
+:10D880000100010000000000010000000000000095
+:10D89000020005000100000022000000000000005E
+:10D8A0000000000000000000000000000000000078
+:10D8B0000100010000000000010000000000000065
+:10D8C000020005000100000042000000000000000E
+:10D8D0000000000000000000000000000000000048
+:10D8E000010011000400FCFF040000000000000023
+:10D8F000020011000400FCFF040000000000000012
+:10D90000030021000400FCFF0400100000000000E0
+:10D91000040011000100FFFF0100000000000000F2
+:10D92000050011000200FEFF0400000000000000DE
+:10D93000060011000400FCFF0400000000000000CD
+:10D94000070011000400FCFF0400000000000000BC
+:10D95000080017000200FEFF2400000080D8070026
+:10D96000090010000100FFFF010000007CD8070043
+:10D970000A0027000200FEFF44000300B0D80700A1
+:10D980000000000000000000000000000000000097
+:10D99000010011000100FFFF010000000000000075
+:10D9A000020017000200FEFF64010000E0D807003B
+:10D9B0000000000000000000000000000000000067
+:10D9C00001000700000000006801000090D9070076
+:10D9D0000200010000000000010000000000000043
+:10D9E00003000500010000004200000000000000EC
+:10D9F0000000000000000000000000000000000027
+:10DA0000010017000400FCFF6801000090D9070026
+:10DA1000020017000400FCFFAC010000C0D90700A1
+:10DA200000000000000000000000000000000000F6
+:10DA300000110300001113000200000001000000AB
+:10DA40000338FDD870470C000C000000580200009D
+:10DA500002000000000000000200000000000000C2
+:10DA6000405E0020090000000000000000000000EF
+:10DA7000010000000000000028000000000000007D
+:10DA80000000000000010000000001000000000094
+:10DA90000000000000000000000000000000000086
+:10DAA000559F07000000000000000000000000007B
+:10DAB0000200000000000100000000000000000063
+:10DAC0000800000000000000559F070039C3070050
+:10DAD0000000000000000000040000000000000042
+:10DAE0000000000000000000000000000000000036
+:10DAF0000000000000000000000000000000000026
+:10DB0000F400000000000000180000000000000009
+:10DB10000000000000000000000000000000000005
+:10DB200000000000000000000000000000000000F5
+:10DB3000170000000000000050EADA308883B89F28
+:10DB4000604F15F30000C98E0200000000000000C5
+:10DB500000000000000000000400000000000000C1
+:10DB600000000000000000000000000000000000B5
+:10DB700000010000000000000000000000000000A4
+:10DB80000000000000000000001000000400000081
+:10DB90000100000091A9070081D607007DCE070093
+:10DBA00071D7070029A7070051CF070069D70700E1
+:10DBB000D5A90700587D00200010000004000000D7
+:10DBC000010000009DA9070091D607008BCE070039
+:10DBD000B5D7070071A7070055CF07006DD707001D
+:10DBE000E5A90700982F8A4291443771CFFBC0B551
+:10DBF000A5DBB5E95BC25639F111F159A4823F9218
+:10DC0000D55E1CAB98AA07D8015B8312BE85312470
+:10DC1000C37D0C55745DBE72FEB1DE80A706DC9B31
+:10DC200074F19BC1C1699BE48647BEEFC69DC10FDD
+:10DC3000CCA10C246F2CE92DAA84744ADCA9B05C19
+:10DC4000DA88F97652513E986DC631A8C82703B0DC
+:10DC5000C77F59BFF30BE0C64791A7D55163CA06EA
+:10DC600067292914850AB72738211B2EFC6D2C4DF6
+:10DC7000130D385354730A65BB0A6A762EC9C281E4
+:10DC8000852C7292A1E8BFA24B661AA8708B4BC27A
+:10DC9000A3516CC719E892D1240699D685350EF4A4
+:10DCA00070A06A1016C1A419086C371E4C7748275B
+:10DCB000B5BCB034B30C1C394AAAD84E4FCA9C5BD1
+:10DCC000F36F2E68EE828F746F63A5781478C88422
+:10DCD0000802C78CFAFFBE90EB6C50A4F7A3F9BE04
+:10DCE000F27871C6A0DE0700A8DE07000000000081
+:10DCF0000000000000100201E4DC0700F4DC070073
+:10DD0000080000001CDD07002CDD070008000000F3
+:10DD10002CDD07003CDD070008000000C0DE070026
+:10DD2000C8DE07000000000000000000B0DE0700B1
+:10DD3000C0DE07000000000000000000000000003E
+:10DD400000000000000000000000000098DE070056
+:10DD5000A0DE07000000000000000000685900205D
+:10DD60003CDD07005CDD070008000000A8DE0700BE
+:10DD7000B0DE070000000000000000006CDD0700BE
+:10DD80007CDD07000800000049C50700F1C407005A
+:10DD900099C407000FC4070015C40700CDC30700CE
+:10DDA0001BC4070059C40700000000000820000140
+:10DDB000FFFFFFFFFFFFFFFFFFFFFFFF000000006F
+:10DDC000000000000000000001000000FFFFFFFF56
+:10DDD000512563FCC2CAB9F3849E17A7ADFAE6BC0D
+:10DDE000FFFFFFFFFFFFFFFF00000000FFFFFFFF3F
+:10DDF00096C298D84539A1F4A033EB2D817D0377E5
+:10DE0000F240A463E5E6BCF847422CE1F2D1176B7F
+:10DE1000F551BF376840B6CBCE5E316B5733CE2B52
+:10DE2000169E0F7C4AEBE78E9B7F1AFEE242E34F81
+:10DE30004B60D2273E3CCE3BF6B053CCB0061D65BE
+:10DE4000BC86987655BDEBB3E7933AAAD835C65A47
+:10DE500039860700CF960700E5940700D4DE070057
+:10DE600068590020B80000004C9B07008CDF0700B9
+:10DE7000205A0020383500005C9B07006DA0070089
+:10DE80000DA00700B8590020905E0020A15E002080
+:10DE9000A45E0020F400000005A1070000000000BF
+:10DEA000F9BB07000000000031BC070000000000C3
+:10DEB00091BE07000000000005C007000000000040
+:10DEC00011BC07000000000000000000030000007B
+:10DED00025B5070000000000000000000000000061
+:10DEE0008059002090590020000000000000000030
+:10DEF0000000000000000000000000000000000022
+:10DF00000000000000000000010000000000000010
+:10DF100000000000FF00FFFF000000000000000004
+:10DF200000000000000000000000000000000000F1
+:10DF300001000000000000000000000000000000E0
+:10DF400000E00700000000000000000000000000EA
+:10DF500000000000000000000000000000000000C1
+:10DF600000000000000000000000000000000000B1
+:10DF7000000000000090D00300000000000000003E
+:0CDF800085A6070000100000000008004B
+:020000041000EA
+:041014000080070051
+:020000041000EA
+:0410180000E00700ED
+:04000005000782016D
+:00000001FF

+ 1536 - 0
central_and_peripheral_secure_bootloader/arm5_no_packs/_build/nrf52832_xxaa_s132.hex

@@ -0,0 +1,1536 @@
+:020000040007F3
+:10800000588F0020D5830700DD830700DF8307003A
+:10801000E1830700E3830700E58307000000000019
+:10802000000000000000000000000000C183070005
+:10803000E983070000000000EB830700ED830700E1
+:10804000EF830700EF830700EF830700EF8307004C
+:10805000EF830700EF830700EF830700EF8307003C
+:10806000EF830700EF830700EF830700EF8307002C
+:10807000EF830700EF830700EF830700EF8307001C
+:10808000399B0700EF830700EF830700EF830700AA
+:10809000EF830700EF8307009D970700EF8307003A
+:1080A000EF830700EF830700EF830700EF830700EC
+:1080B000EF830700EF8307000000000000000000CE
+:1080C000EF830700EF830700EF830700EF830700CC
+:1080D00029970700EF830700EF83070000000000E7
+:1080E0000000000000000000000000000000000090
+:1080F0000000000000000000000000000000000080
+:10810000000000000000000000000000000000006F
+:10811000000000000000000000000000000000005F
+:10812000000000000000000000000000000000004F
+:10813000000000000000000000000000000000003F
+:10814000000000000000000000000000000000002F
+:10815000000000000000000000000000000000001F
+:10816000000000000000000000000000000000000F
+:1081700000000000000000000000000000000000FF
+:1081800000000000000000000000000000000000EF
+:1081900000000000000000000000000000000000DF
+:1081A00000000000000000000000000000000000CF
+:1081B00000000000000000000000000000000000BF
+:1081C00000000000000000000000000000000000AF
+:1081D000000000000000000000000000000000009F
+:1081E000000000000000000000000000000000008F
+:1081F000000000000000000000000000000000007F
+:10820000DFF80CD000F038F90048004785AA0700D5
+:10821000588F002030B450E8012F93B2C489234412
+:108220008489A34228BF1B1B0489A34202BFBFF35A
+:108230002F8F002007E0C3EA020340E80134002C3E
+:10824000E9D14FF001000A6030BC704750E8012FBF
+:10825000C2EA024240E801210029F7D1704730B458
+:1082600050E8022F1FFAA2F3C488A34202BFBFF353
+:108270002F8F00200DE0C48923448489A34228BFA6
+:108280001B1BC2EA034340E80234002CE8D14FF044
+:1082900001000A6030BC704750E8022FC2EA224257
+:1082A00040E802210029F7D17047034653E8022F26
+:1082B000D988B2EB324F4FF0000017BF92B241EABB
+:1082C000014142EA014104E05A68B2EB324F08BF73
+:1082D000012043E80212002AE8D1704730B4044676
+:1082E00054E8000F0D4644E80053002BF8D1156008
+:1082F00030BC704730B4044654E8000F40EA010532
+:1083000044E80053002BF7D1156030BC704730B4FF
+:10831000044654E8000F00EA010544E80053002B2E
+:10832000F7D1156030BC704730B4044654E8000FF4
+:1083300080EA010544E80053002BF7D1156030BCFA
+:10834000704730B4044654E8000F00EB010544E8E0
+:108350000053002BF7D1156030BC704730B4044691
+:1083600054E8000FA0EB010544E80053002BF7D1BF
+:10837000156030BC704770B404464FF0000054E8FC
+:10838000006F0D68AE4207BF44E80023012044E8B7
+:1083900000630E60002B1CBF0020F0E770BC70472C
+:1083A00030B4044654E8000F88422CBF451A0546F5
+:1083B00044E80053002BF5D1156030BC7047000035
+:1083C0001EF0040F0CBFEFF30880EFF3098003F0F9
+:1083D0005FBE00000648804706480047FEE7FEE70C
+:1083E000FEE7FEE7FEE7FEE7FEE7FEE7FEE7FEE765
+:1083F000A197070001820700202A04DB203A00FA37
+:1084000002F1002070479140C2F1200320FA03F3EB
+:1084100019439040704740EA01039B0703D009E0ED
+:1084200008C9121F08C0042AFAD203E011F8013B60
+:1084300000F8013B521EF9D27047D2B201E000F8B9
+:10844000012B491EFBD270470022F6E710B51346F8
+:108450000A4604461946FFF7F0FF204610BD30B526
+:1084600004460020034600E05B1C934203D2E05C1C
+:10847000CD5C401BF8D030BD064C074D06E0E068EF
+:1084800040F0010394E8070098471034AC42F6D35B
+:10849000FFF7BAFE5CDE07007CDE07002DE9F04343
+:1084A0008BB08046129D15F9046B009614461F464A
+:1084B00089462B4602A81146424600F0BAFC02A8A3
+:1084C0000146129A00F0A5FC4046414602AA129BC2
+:1084D00000F08FFC2046214602AA129B00F089FC86
+:1084E0002B46384639464A46009600F0A2FC02A8C0
+:1084F0003946129A00F08DFC02A8014642462B46EE
+:10850000009600F096FC02A8014622462B460096F3
+:1085100000F08FFC2046214642462B46009600F094
+:1085200088FC484649462246129B00F062FC2046E1
+:10853000414602AA2B46009600F07BFC384639469D
+:108540002246129B00F055FC384639464A462B46D7
+:10855000009600F06EFC204602A9324600F033FE81
+:108560000BB0BDE8F083F0B589B01C4607460E4657
+:108570001546684611461A4600F04BFC3846394607
+:108580006A46234600F035FC684669462A4623467B
+:1085900000F02FFC304631466A46234600F029FCA5
+:1085A00009B0F0BD1AB1013A8B5C8354FAE7704709
+:1085B0002DE9F0478846B3F902101F460825CB1D68
+:1085C000202493FBF5F51F31954291FBF4F44FFA0B
+:1085D00084F928BF15460646494600F075FA2A4632
+:1085E00030464146FFF7DEFFB7F90230ED009D420D
+:1085F00020D9ED1A06EB840100228E420AD251F8EE
+:10860000040D20FA05F313430B60C5F1200300FAB3
+:1086100003F2F2E72437384631464A4600F060FA62
+:10862000012807D0304631463A464B46BDE8F04770
+:1086300000F01EBFBDE8F0872DE9F04793F9006018
+:1086400092B004468946104631461546984600F0D9
+:1086500071FA002840F0978002A84946424600F08F
+:10866000D8FB43460AA8214602AA00F0C2FB02A892
+:108670000146424600F0CDFB4346484649462A465D
+:1086800000F0B7FB08F1040728462946424600F0EF
+:10869000C0FB204621462A463B46009600F0F8FAE9
+:1086A000284629462A463B46009600F0F1FA28461D
+:1086B00021462A463B46009600F0BBFB2046214659
+:1086C0002A46434600F095FB2846214622463B4673
+:1086D000009600F0DDFA20463B46009621462A46E9
+:1086E00000F0D6FA2368DB07204613D5334621462F
+:1086F0003A4600F0BDF931468246204600F056FD6C
+:1087000006F18043013B54F8230040EACA7044F864
+:10871000230002E0314600F049FD2846214642464A
+:1087200000F077FB284629460AAA3B46009600F04F
+:1087300080FB284629460AAA3B46009600F079FBB2
+:108740000AA801462A463B46009600F072FB2046E6
+:1087500021460AAA434600F04CFB02A802463B46CB
+:108760002146009600F065FB20462946324600F07F
+:108770002AFD28464946324600F025FD484602A912
+:10878000324600F020FD12B0BDE8F0870048704787
+:10879000ACDD07002DE9F04FEFB01E46789C059048
+:1087A00023780493B4F9023092461F33202293FBBE
+:1087B000F2F3DBB206939DF9187094F9012007F1EA
+:1087C000FF3926AB002543F829506EAB03EB890334
+:1087D0004EA88B46314643F8805C43F8605CFFF757
+:1087E000E1FE94F9012056A8B118FFF7DBFE9DF9D0
+:1087F00010604EA8314600F09DF98046002840F0F8
+:108800002F8156A8314600F095F90546002840F022
+:10881000258104F1240840464EA93A4600F060F94B
+:10882000012840F01D81404656A93A4600F058F90B
+:108830000128089040F014813B461EA856A94246E4
+:1088400000F03FFA0DF1380C604659465246234677
+:108850004CF82950CDF80CC0FFF7AAFEDDF80CC08B
+:108860000097604661461EAA4346CDF824C00DF528
+:10887000BC7900F0ACFA4346009716A84EA91EAA90
+:1088800000F0A5FA48463246059900F09CFCB3007A
+:10889000039309EB030B039A059B5846991832463C
+:1088A00000F091FC04F144031946324636A80793C0
+:1088B00000F089FC04EB860132463EA8443104F105
+:1088C000040A00F080FC494600961EA836AA5346CA
+:1088D00000F0AFFA4A465B4636A83EA90094FFF77F
+:1088E000DDFD1EA801463346524600F0EAF91EAAF5
+:1088F000484659462346FFF736FEDDF824C0079B5D
+:108900000B936046059B0C933946CDF814C00A952D
+:10891000CDF8349000F028FC3946054616A800F042
+:1089200023FCA842B8BF284685B2DDF814C06F1EEC
+:108930003FB26046394600F0CBFD394610F10009E0
+:1089400016A818BF4FF0010900F0C2FD002814BF9F
+:108950000223002343EA09090DF1280B32465BF894
+:10896000297026A8394600F02EFC039B3246F918E0
+:108970002EA800F028FC31461EA800F0A5F8023D04
+:10898000089B1E93AEB237B2002F44DB23461EAACB
+:10899000D4F8A45026A82EA9A84739460EA800F05E
+:1089A00097FD3946051C16A818BF012500F090FD5B
+:1089B000002814BF022300231D430AAB53F825707F
+:1089C00037B39DF9105036A839462A4600F0FBFB14
+:1089D000039B3EA8F9182A4600F0F5FB36A83EA9ED
+:1089E0001EAA2346FFF7BFFD46A826A936AA53466E
+:1089F000009500F01EFA36A83EA926AA2EAB0094D8
+:108A0000FFF74CFD1EA8014646AA234600F0F1F9E7
+:108A1000013EB6B2B7E79DF910501EA80146524676
+:108A20002B4600F04EF9234626A82EA91EAAFFF7D2
+:108A30009AFD9DF91840404626A9224600F050F8BC
+:108A4000012805D026A801464246234600F010FD25
+:108A500026A84EA92A4600F058F802E0404600E059
+:108A600028466FB0BDE8F08F000000000000000055
+:108A7000C3F10803DB0070B501330446002003A5F1
+:108A80005B1920C940CAAD1920C4184720C940CA83
+:108A9000754120C420C940CA754120C420C940CABC
+:108AA000754120C420C940CA754120C420C940CAAC
+:108AB000754120C420C940CA754120C420C940CA9C
+:108AC000754120C4404170BD10B5002253B28B42A5
+:108AD00005DA1BB2002440F823400132F6E710BD4E
+:108AE00010B5013AD2B253B2002B09DB1BB250F8D9
+:108AF000234051F823309C4204D8F2D2FF2002E0F8
+:108B0000002000E0012040B210BD013A30B5D2B2E1
+:108B1000002453B2002B09DB1BB2013A51F8235059
+:108B200050F823306B401C43D2B2F2E7B4FA84F021
+:108B3000400930BD10B500231A465CB28C4204DAFD
+:108B400050F8244001332243F7E7B2FA82F040099B
+:108B500010BD00002DE9F043A3B09846019112AB7F
+:108B60004146074610469146009300F0FDFAC0EBDF
+:108B7000881086B2454C33B21C40002CBEBF04F1B5
+:108B8000FF3464F01F040134202593FBF5F5EDB2AA
+:108B90006DB2A4B202A8294624B2FFF795FF28B20D
+:108BA00002AB002C03EB800010DD0022134643458E
+:108BB00010D259F8235005FA04F10A4340F8232053
+:108BC000C4F1200225FA02F20133F0E74946424699
+:108BD00000F0F9FA0FFA88F502AB4FEA45090124D3
+:108BE00003EB8505330444D40022114653B24B45B0
+:108BF00022DA0DF1880E0EEB840E0DF1880C18B2FE
+:108C00005EF888EC0CEB83035EF820E053F8803CC0
+:108C1000C3EB0E035B1A734502D08CBF0121002108
+:108C2000C4F1010E0DF1880C0CEB8E0E01325EF8D2
+:108C300088EC4EF82030D9E7621A544202A8414627
+:108C4000544100F0B3FA22AA08F1FF3302EB830388
+:108C500002EB8802284652F8801C53F8802C013E13
+:108C600042EAC172414643F8802CB6B200F09EFA47
+:108C7000B8E722AB03EB8404384654F8881C42461C
+:108C800000F0A1FA23B0BDE8F08300BF1F00008010
+:108C900070B59DF910401D4623460646FFF7E8FED5
+:108CA00030B9284631462246FFF71AFF012807D07F
+:108CB000304631462A462346BDE8704000F0D8BB16
+:108CC00070BDF0B50646A1B00F46084619461546D8
+:108CD0001C46FFF72FFF20B130462146FFF7F4FE78
+:108CE00073E068463946224600F06DFA08A8294626
+:108CF000224600F068FA10A82146FFF7E5FE01239E
+:108D000018A821461093FFF7DFFE684608A92246FF
+:108D1000FFF7E6FE002853D0009BDA0704D468462C
+:108D2000214600F043FA26E0089BDB0704D408A89C
+:108D3000214600F03BFA3DE000281EDD08AA23464C
+:108D40006946684600F094FB6846214600F02EFA1A
+:108D500010A818A92246FFF7C3FE002805DA10A8BC
+:108D600001462A462346FFF783FE10A8014618AAAB
+:108D7000234600F07DFB10A81DE008A86A462346A4
+:108D8000014600F075FB08A8214600F00FFA18A86C
+:108D900010A92246FFF7A4FE002805DA18A801460C
+:108DA0002A462346FFF764FE18A8014610AA234668
+:108DB00000F05EFB18A82946224600F06BFCA4E7F1
+:108DC000304610A9224600F0FEF921B0F0BD70B582
+:108DD00090B006469DF950401D466846234600F077
+:108DE0003AF8304669462A462346FFF7B3FE10B0EC
+:108DF00070BD30B51C4691B0054693F90030684609
+:108E000000F029F8D4F8AC3028466946984711B0EC
+:108E100030BD30B5144691B0054692F90020684641
+:108E200000F0DEF9D4F8AC3028466946984711B016
+:108E300030BD70B59DF910401D462346064600F032
+:108E400017FB38B1304631462A462346BDE870400C
+:108E5000FFF70EBE70BD2DE9F04F08B4F8CA04B498
+:108E600051F8042BA3FB028940F8048B4FF0000A51
+:108E7000E4FB629A4FF0000BE5FB62AB4FF0000C95
+:108E8000E6FB62BC4FF0000EE7FB62CE51F8042B0C
+:108E90004FF00008E3FB628940F8048BE4FB629A20
+:108EA000E5FB62ABE6FB62BCE7FB62CE51F8042B4C
+:108EB0004FF00008E3FB628940F8048BE4FB629A00
+:108EC000E5FB62ABE6FB62BCE7FB62CE51F8042B2C
+:108ED0004FF00008E3FB628940F8048BE4FB629AE0
+:108EE000E5FB62ABE6FB62BCE7FB62CE51F8042B0C
+:108EF0004FF00008E3FB628940F8048BE4FB629AC0
+:108F0000E5FB62ABE6FB62BCE7FB62CE40F8049B8C
+:108F100040F804AB40F804BB40F804CB40F804EB45
+:108F20000CBC052B00F01E810C68A0F11400A1F10F
+:108F30001401A2F1140252F804EB4FF0000550F8AE
+:108F4000046BE4FB6E5652F804EB50F8047BE4FB30
+:108F50006E6752F804EB50F8048BE4FB6E7852F81D
+:108F600004EB50F8049BE4FB6E8952F804EB50F8D4
+:108F700004ABE4FB6E9AA0F1140052F8044B51F8D4
+:108F800004EB4FF0000CE4FB6EC540F804CB51F845
+:108F900004EBE4FB6E5640F8045B51F804EBE4FB91
+:108FA0006E6740F8046B51F804EBE4FB6E7840F810
+:108FB000047B51F804EBE4FB6E8940F8048B51F814
+:108FC00004EBE4FB6E9AA0E80006062B00F0CA80D2
+:108FD0000C68A0F11800A1F11801A2F1180252F8D2
+:108FE00004EB4FF0000550F8046BE4FB6E5652F8AA
+:108FF00004EB50F8047BE4FB6E6752F804EB50F886
+:10900000048BE4FB6E7852F804EB50F8049BE4FB0D
+:109010006E8952F804EB50F804ABE4FB6E9A52F8F8
+:1090200004EB50F804BBE4FB6EABA0F1180052F85F
+:10903000044B51F804EB4FF0000CE4FB6EC540F814
+:1090400004CB51F804EBE4FB6E5640F8045B51F896
+:1090500004EBE4FB6E6740F8046B51F804EBE4FBAF
+:109060006E7840F8047B51F804EBE4FB6E8940F81D
+:10907000048B51F804EBE4FB6E9A40F8049B51F822
+:1090800004EBE4FB6EABA0E8000C072B6AD008B43D
+:109090000C68A0F11C00A1F11C01A2F11C0252F805
+:1090A00004EB4FF0000550F8046BE4FB6E5652F8E9
+:1090B00004EB50F8047BE4FB6E6752F804EB50F8C5
+:1090C000048BE4FB6E7852F804EB50F8049BE4FB4D
+:1090D0006E8952F804EB50F804ABE4FB6E9A52F838
+:1090E00004EB50F804BBE4FB6EAB52F804EB50F811
+:1090F00004CBE4FB6EBCA0F11C0052F8044B51F809
+:1091000004EB4FF00003E4FB6E3540F8043B51F8EC
+:1091100004EBE4FB6E5640F8045B51F804EBE4FB0F
+:109120006E6740F8046B51F804EBE4FB6E7840F88E
+:10913000047B51F804EBE4FB6E8940F8048B51F892
+:1091400004EBE4FB6E9A40F8049B51F804EBE4FB5B
+:109150006EAB40F804AB51F804EBE4FB6EBCA0E846
+:10916000001808BCBDE8F08F0139C9B24BB2002B22
+:109170000BDA013111F0FF0315D059B201F1804330
+:10918000013B50F82320002304E050F82330002B4B
+:10919000EAD0EEE712B152080133FBE7481E03EBB9
+:1091A000401080B200E0184600B2704700EB810129
+:1091B0000023884206D251F8042D43EA52030B6083
+:1091C000D307F6E7704730B5002463B2934206DA5E
+:1091D0001BB2013451F8235040F82350F5E730BD5D
+:1091E0002DE9F04FB1E8005E06B4AAFB09124FF07A
+:1091F0000003EBFB69234FF00004ECFB69344FF0F4
+:109200000005EEFB69454FF00006EBFB6A63ECFBE3
+:109210006A344918524176415B41A9FB09784FF005
+:10922000000949F1000918EB0108A0E88001AAFB38
+:109230000A78574158EB0608A0E88001EEFB6A4522
+:109240004FF0000A4AF1000A4FF00001ECFB6B14EA
+:10925000EEFB6B454FF00002EEFB6C255FEA59090F
+:109260004941644152416D4149F10009EBFB6B3AC0
+:109270001AEB010AA0E80804ACFB0C6A66415AEB41
+:10928000020AA0E84004AEFB0E6A6E415AEB090ADE
+:10929000A0E8400406BC052A00F0E680A0F1140016
+:1092A000A1F11401B1E8E043A5FB0E344FF0000535
+:1092B000E6FB6E454FF00006E7FB6E564FF00007E9
+:1092C000E8FB6E674FF00008E9FB6E784FF000098D
+:1092D000DB1864416D4176417F4158EB080859F134
+:1092E000000950F804CB13EB0C0350F804CB54EBFB
+:1092F0000C0450F804CB55EB0C0550F804CB56EB9E
+:109300000C0650F804CB57EB0C0758F1000859F144
+:109310000009A0F11400EEFB0E89A0E8F803062A6C
+:1093200000F0A280A0F11800A1F11801B1E8E04717
+:10933000A5FB0E344FF00005E6FB6E454FF000062E
+:10934000E7FB6E564FF00007E8FB6E674FF0000832
+:10935000E9FB6E784FF00009EAFB6E894FF0000AD6
+:10936000DB1864416D4176417F4158EB080859EBA9
+:1093700009095AF1000A50F804CB13EB0C0350F81A
+:1093800004CB54EB0C0450F804CB55EB0C0550F80F
+:1093900004CB56EB0C0650F804CB57EB0C0750F8F7
+:1093A00004CB58EB0C0859F100095AF1000AA0F15E
+:1093B0001800EEFB0E9AA0E8F807072A54D0A0F197
+:1093C0001C00A1F11C01B1E8E04FA5FB0E344FF0E9
+:1093D0000005E6FB6E454FF00006E7FB6E564FF0CA
+:1093E0000007E8FB6E674FF00008E9FB6E784FF06E
+:1093F0000009EAFB6E894FF0000AEBFB6E9A4FF012
+:10940000000BDB1864416D4176417F4158EB080841
+:1094100059EB09095AEB0A0A5BF1000B50F804CB2F
+:1094200013EB0C0350F804CB54EB0C0450F804CBB2
+:1094300055EB0C0550F804CB56EB0C0650F804CB5A
+:1094400057EB0C0750F804CB58EB0C0850F804CB42
+:1094500059EB0C095AF1000A5BF1000BA0F11C005A
+:10946000EEFB0EABA0E8F80FBDE8F08F00000000A7
+:10947000C3F10803DB0070B50133002403A500BF6E
+:109480005B1920C940CAAD1B20C0184720C940CA7B
+:10949000B54120C020C940CAB54120C020C940CA3A
+:1094A000B54120C020C940CAB54120C020C940CA2A
+:1094B000B54120C020C940CAB54120C020C940CA1A
+:1094C000B54120C06441B4FA84F0400970BD00BFCA
+:1094D0004A11012301F01F0150F822008B4018406F
+:1094E00070470000F0B50C4689B008220646FFF729
+:1094F0006AFEE36A0393236B0493636B0593A36B88
+:109500000693E36B0793002769466A46082368467B
+:10951000029701970097FFF7ABFA314605466A4676
+:1095200008233046FFF7A4FA236B0393636B04937D
+:10953000A36B0593E36B0693054469466A460823CB
+:1095400068460797FFF794FA314605446A460823B0
+:109550003046FFF78DFA236A0093636A0193A36A8A
+:109560000293A36B0693E36B0793054431466A4667
+:1095700008233046059704970397FFF779FA636A43
+:109580000093A36A0193E36AA26B0293636B039354
+:1095900004920693E26B236A0592054407933146D1
+:1095A0006A4608233046FFF763FAE36A0093236BA9
+:1095B0000193636B0293236A0693A36A079305449E
+:1095C00031466A4608233046059704970397FFF70C
+:1095D0004FFF236B0093636B0193A36B0293E36BC9
+:1095E0000393636A0693E36A07932D1A31466A462A
+:1095F0000823304605970497FFF73AFF636B009303
+:10960000A36B0193E36B0293236A0393636A04934E
+:10961000A36A0593236B07932D1A31466A460823E4
+:1096200030460697FFF724FFA36B0093E36B01938B
+:10963000636A0393A36A0493E36A0593636B0793D6
+:109640002D1A314630466A46082302970697FFF7DF
+:109650000FFF2D1A16D5304631460D4A0823FFF765
+:1096600007FA4519F7D410E0094831460822FFF7F8
+:1096700037FA012809D030463146054A0823FFF75A
+:10968000F7FE2D1A002DEFD0F5E709B0F0BD00BFB1
+:10969000B0DD0700F8B5036813F0010506460F4674
+:1096A000144605D001463A462346FFF7E1F9054640
+:1096B00030462146FFF77AFD45B104F18042013A78
+:1096C00056F8223043F0004346F82230F8BD2DE929
+:1096D000F04115468AB00446884602A8002120229F
+:1096E000FEF7B4FE2E780323204641462A462F1D5E
+:1096F00076B20293FFF78DFB2046214602AA3B4635
+:109700000096FFF796FB2046214642462B46FFF780
+:1097100070FB00962046214605F184023B46FFF788
+:10972000B7FA0AB0BDE8F0812DE9F041194E4FF4C7
+:109730008271D6F8040130B11748C268521CC26069
+:10974000304602F03DFB00254FF4A07707EB850182
+:109750008AB23046B258BAB189B202F031FB0E4833
+:10976000103000EB0514204603F076FF616819B154
+:10977000204603F0F9FE07E0A16811B1204603F08E
+:10978000F3FE206800B180476D1C022DDED3BDE8DA
+:10979000F0810000004002407059002002F00CBC33
+:1097A000F0B5D34AD3494FF080541368D4F8300150
+:1097B0000978D4F83421451CC1F3031107D084463D
+:1097C000164601270025BCF1060F04D013E003F074
+:1097D000FF0C0E46F5E7032E05D0042E03D0052E10
+:1097E00001D0062E07D1B4F82463DFF80CC3C6F30A
+:1097F0000426CCF80060DEB2062E06D1032904D17F
+:10980000DFF8FCC2BD4ECCF87460461C06D084461E
+:109810004FEA0206BCF1060F04D013E003F0FF0C80
+:109820000E46F7E7032E05D0042E03D0052E01D0F7
+:10983000062E07D1D4F84462DFF8C8C2C6F3423618
+:10984000CCF80060DEB2062E08D1032906D1AE4E58
+:10985000D6F800C02CF0807CC6F800C0461C05D0AD
+:1098600084461646BCF1060F04D014E003F0FF0C4A
+:109870000E46F7E7032E05D0042E03D0052E01D0A7
+:10988000062E08D14FF08046C6F80C51C6F810518C
+:109890009C4E361F3560DEB2062E08D1032906D154
+:1098A000DFF860C203260CF1640CCCF80060DEB275
+:1098B000062E11D103290FD1DFF850C20526CCF8AE
+:1098C0000060924E78363760904E083635600CF165
+:1098D000040C3F26CCF80060461C05D08446164692
+:1098E000BCF1060F04D087E003F0FF0C0E46F7E74B
+:1098F000032E7CD0042E7FD0052E01D0062E7BD1E6
+:10990000834E3668DFF80CC2CCF80060804E361DFE
+:1099100036680CF1040CCCF800607D4E08363668D1
+:109920000CF1040CCCF80060794E0C3636680CF162
+:10993000040CCCF80060764E103636680CF1040C3E
+:10994000CCF80060724E143636680CF1040CCCF87A
+:1099500000606F4E18363668DFF8B8C10CF1200C85
+:10996000CCF800606A4E1C3636680CF1040CCCF85A
+:109970000060674E203636680CF1040CCCF80060AD
+:10998000634E243636680CF1040CCCF80060604E4F
+:10999000283636680CF1040CCCF800605C4E2C368E
+:1099A00036680CF1040CCCF80060594E303636683D
+:1099B000DFF860C10CF1400CCCF80060544E343636
+:1099C00036680CF1040CCCF80060514E383636681D
+:1099D0000CF1040CCCF800604D4E3C3636680CF1AE
+:1099E000040CCCF800604A4E4036366800E003E0D4
+:1099F0000CF1040CCCF80060461C05D084461646D9
+:109A0000BCF1060F04D011E003F0FF0C0E46F7E79F
+:109A1000032E05D0042E03D0052E01D0062E05D12D
+:109A2000D4F858423C4E04F04F043460441C04D037
+:109A300003461146062B02D010E0DBB2FAE70329F9
+:109A400005D0042903D0052901D0062906D13349C0
+:109A50000B68DB0702D06FF001030B6006280CD106
+:109A6000032A0AD0042A08D0052A06D0062A04D1DF
+:109A70002B48016841F48061016023487438016813
+:109A800041F470010160BFF34F8FBFF36F8F4FF050
+:109A90001021D1F80002002803DBD1F804020028CD
+:109AA00022DA204A176020480368002BFCD01523D7
+:109AB000C1F800320468002CFCD0C1F804320168FF
+:109AC0000029FCD0156001680029FCD0BFF34F8F3E
+:109AD0000D48F0380168154A01F4E0611143016056
+:109AE000BFF34F8F00BFFDE7124911480860F0BD7A
+:109AF000E00F00F0E80F00F0403501400DF0ADBA86
+:109B000000C007403C050040FCED00E0105600405E
+:109B10000404001020C50040E40E00400004004092
+:109B20003C17004004E5014000E401400400FA0550
+:109B30000090D003085A0020034808B500210160B6
+:109B40000068009008BD00000001014002E008C864
+:109B5000121F08C1002AFAD170477047002001E0A7
+:109B600001C1121F002AFBD17047000001212028EB
+:109B700003DA81400548014003E0402802DA20383A
+:109B8000814009B10120704700207047FC06FFBDED
+:109B9000800701D00020704701207047C3688B42C6
+:109BA00006D811440069491E814201D8012070473E
+:109BB0000020704730B585B00D46164C1621ADF823
+:109BC00000101ECC0DF1040C8CE81E00124C02217A
+:109BD000012221706270A0700320E0702171592071
+:109BE0006071FE20A071694604F109007DDF002844
+:109BF0000ED1BDF800002A46411CE17109212172F5
+:109C0000BDF808100844ADF8080001A9034872DF48
+:109C100005B030BD60DA0700405E0020A859002082
+:109C200010B586B00624182208496846FEF7F3FBF3
+:109C300069462046FFF7BEFF002805D1044C207876
+:109C400074DF0121207873DF06B010BD70DA0700E1
+:109C5000A859002070B5104CA66C656A01F096FA00
+:109C6000216B08446A1A3144814200D10022082342
+:109C700000F042FE06000DD101F088FA00222946CC
+:109C800000F0B2FBA16A814203D10121A561C4E9C0
+:109C90000701304670BD0000D875002002F03AFB85
+:109CA00002F038FB2DE9F84F254C8146924660883A
+:109CB0000E46814241D800274FF6FF788DF800709C
+:109CC000684600F075F822786078A188884201DA49
+:109CD000401C00E00020C0B2904204D19DF800007A
+:109CE00000F08AF827E065786078884201DA401C45
+:109CF00000E0002060709DF8000000F07DF8454510
+:109D000019D0A068B9F1000F40F835A00DD066B1A8
+:109D10006188E068324605FB01004946FEF77BFB9F
+:109D2000A06800EBC500868002E000EBC5008780DC
+:109D30000020BDE8F88F0420FBE70920F9E70000C8
+:109D4000E859002010B50E4C03E0401C00E0002054
+:109D5000207020786178814210D022786188E06894
+:109D6000A36802FB010003EBC20153F8322089888B
+:109D700090472078A1888842E9DAE6E710BD000024
+:109D8000E859002030B5CB0008339DB293074FF05F
+:109D9000000401D0072030BD044B9A602A44DA60E9
+:109DA0005C701C7058809980002030BDE8590020FC
+:109DB00030B5EFF3108172B60D4A9468012324B1D7
+:109DC0000370002900D162B630BD93604FF0E023EC
+:109DD000D3F88051074C25401560C3F88041D3F873
+:109DE000844154605A17C3F8842100220270E8E7C6
+:109DF0004C7D0020FC06FFBD0B498A68002A11D06B
+:109E000000280FD1EFF3108072B60B684FF0E022FC
+:109E1000C2F800314B68C2F8043100228A60002881
+:109E200000D162B6704700004C7D002070B5164E20
+:109E3000154856F8245F846CB168AC2901D024B170
+:109E400011E0406B04442D1A05E001F0B3F904461B
+:109E5000B068AC2807D12A46A4F580410B48FEF72C
+:109E6000FEFA00280ED02A4621460848FEF7F7FAE7
+:109E7000002807D001F004F829462046BDE87040CC
+:109E800001F0BCBA70BD0000D8750020008007004A
+:109E900030B504462C4995B04FF6FF70488001203C
+:109EA0008DF812004FF65960ADF81000224604A953
+:109EB0000120A8DF002844D1244B0FCB8DE80F00F0
+:109EC000A11C684662DF00283BD120491C22603972
+:109ED0000BA8FEF7A0FA1E4D142205F1C401A868D4
+:109EE0001290A0788DF84A002868139006A8FEF713
+:109EF00092FA12A8069013A807902088231D06AA9C
+:109F00000BA9AADF00281CD11C2205F1D8010BA83F
+:109F1000FEF781FAE8681290A0788DF84A00686828
+:109F20001390142205F1F40106A8FEF774FA12A8A2
+:109F3000069013A80790208804F10C0306AA0BA929
+:109F4000AADF15B030BD0000A859002038DB07009B
+:109F500030DA0700F0B585B0044614216846FEF7F4
+:109F600073FA2078032308280BD12748C188491E9B
+:109F700089B2C1808288002A3ED000293CD1C280AB
+:109F800023702178607860228DF800208DF8011010
+:109F90008DF802006078032101280AD00B2828D10F
+:109FA00000F058FC8DF80300002000F05BFC042159
+:109FB0001FE0207809281CD2DFE800F01B1B1B20C3
+:109FC0001B1B051B2000D4E902706D46E91C666866
+:109FD00003F04CFB044629193046C91C03F046FB2C
+:109FE000044429193846C91C03F040FB2044C01C16
+:109FF000C1B2684602F092FF05B0F0BDD4E901128B
+:10A00000684602F07AFFF2E7A85900202DE9F041F6
+:10A010001349034600208A68D4071ED0114CA3427E
+:10A020001BD04888A0F57F43FF3B10D042F00402CC
+:10A030008A60132176DF00280FD10B4EC8254FF41C
+:10A040007A47741C3846A0476D1EFAD101E00878A3
+:10A0500074DFBDE8F04101F04BBFBDE8F0810000C6
+:10A06000A85900207CDE070040DA070038B5214CF3
+:10A070000021227AD20701D0084638BDE0601E4890
+:10A0800000F0AAFD0020009001F0C4F988B91B4837
+:10A0900013DF70B901F056FF58B9684601F096FE1B
+:10A0A00038B96946012001F09BFE10B9684601F0FD
+:10A0B000E5FE0028E1D101F099FA30B1104801F035
+:10A0C00089FAA06840F00200A06000F0E1FB0028DF
+:10A0D000D3D10B481C30FFF7DBFE0028CDD1FFF7B2
+:10A0E0009FFD0028C9D1A06840F00100A0600020B9
+:10A0F00038BD0000A859002084DE0700008007005A
+:10A10000605E002070B50446011D008800226F4D7E
+:10A1100086B021287ED025DC13287CD018DC0128CD
+:10A120007AD010285BD011284AD14FF6FF70688092
+:10A13000287A400704D4FFF773FD08B1FFF7B0FD9C
+:10A14000E96800293CD006B00220BDE8704008470D
+:10A15000142878D01A2877D01F2831D16888091D93
+:10A1600075DF62E0512870D02CDC222828D023280B
+:10A1700062D0242824D0502822D1554D34F8060F1F
+:10A18000A98888421CD1534800F0ECFC060017D087
+:10A19000628904F10C01FEF73EF918224E49684627
+:10A1A000FEF739F9049601956089ADF81400684608
+:10A1B00001F064F9002803D03146464800F0F4FC71
+:10A1C00006B070BD52287BD0552813D05628F7D141
+:10A1D000A0790028F4D11321688876DF25E008886B
+:10A1E0006880E96809B1012088473B4968887A3965
+:10A1F00075DFE5E7E188F72914D28807B0F1404F11
+:10A2000011D0C91F89B2481EC21700EB927222F00A
+:10A21000030202E033E01CE036E0801A081A801DD9
+:10A2200081B200E0F7216888B5DF0028C8D006B009
+:10A23000BDE87040FFF734BD00920192A088002273
+:10A24000694690DF18E034E03AE021E0FFF728FDAE
+:10A25000B6E721486A46903842F60521806A0090A8
+:10A2600002A801906888ADDF08B1FFF719FD00234F
+:10A270001A46852168887FDF0028E7D1A0E7009291
+:10A28000088869468FDFF7E70021688866DFCCE73A
+:10A29000A079002894D021460D4802F053F80028F8
+:10A2A0008ED006B004F10801BDE87040084801F006
+:10A2B0003DBF0024088822462346214686DFB4E7B6
+:10A2C000002308881A461946B1DFAEE7A8590020D6
+:10A2D0007C5E002084DE0700C0DA0700007800F012
+:10A2E0000100704713B90378012B01D001F0A1BA26
+:10A2F000012070470022C32100F5187000F074B8E7
+:10A300002DE9F043A1B00446DDE9289520200F4651
+:10A31000209098461646782102A8FEF795F841212C
+:10A320002046FEF791F8B7F8940006EB061107EB0C
+:10A330008101B04201D991F8965025701DB3012DCD
+:10A3400004D0022D0AD0032D13D116E00022494675
+:10A35000404600F049F8C4F8010014E020A9601C50
+:10A36000CDE900014B4642460A4902A800F036FEFC
+:10A3700048B1002021B0BDE8F083B1F89820601CFE
+:10A380009A31FEF748F84A464146204601F051FA14
+:10A39000F0E7000058D8070010B500284FF0000083
+:10A3A00006D004490870BDE81040034801F04AB9DE
+:10A3B00000F0A8F96859002005A7070010B5436808
+:10A3C0009C18446021B905E013F8010B01F8010B5A
+:10A3D000521EF9D2012010BD0249CA6B4260096CBD
+:10A3E00081607047D8750020F0B54FF0FF3622B17C
+:10A3F0001268D24300230A4D0DE03246FAE7C45CEE
+:10A4000062400824D70700D037462F4087EA52021F
+:10A41000641EF7D15B1C8B42F1D3D043F0BD00002A
+:10A420002083B8ED10B504460068401C07D02046D4
+:10A4300002F04AFE2168814201D1012010BD0020B6
+:10A4400010BD000010B50B4C90B0607800280ED104
+:10A4500000F028FE20220849684600F043FE402311
+:10A460006A460649064800F079FD0120607010B088
+:10A4700010BD0000D859002004D80700847C0020BB
+:10A4800070D80700F0B5146906468DB020681546EF
+:10A49000271DE0B1022920D00A2000906B4609AAAE
+:10A4A000304602F0F9FC00280FD009A901A8009A53
+:10A4B00002F0E8FA01AE96E80F0005AE86E80F005C
+:10A4C000236869683A4605A898470DB0F0BD0DB0FD
+:10A4D0003046BDE8F04002F049BB6946304602F024
+:10A4E000DBFA0028F1D0236869683A466846984745
+:10A4F0000028EAD002980028F5D101987060012068
+:10A50000E3E753689B7813F0C00303D0402B03D0DC
+:10A510000020704700F002B8FFF7B4BF2DE9FF41FB
+:10A520000B465168064614468878334D00F00F02FA
+:10A5300010F0300055F8225006D0102806D0202800
+:10A5400008D0302856D13EE022694DE061690120F3
+:10A55000087047E0022B28D1042A26D84FF00108C2
+:10A5600069463046676902F097FA00281AD009E078
+:10A570000B89226903FB00226846A84770B138881E
+:10A58000401C3880029820B1616838884A8990421E
+:10A59000EED301987060029860BB02E04FF00008B3
+:10A5A000F7E7404604B0BDE8F081D4E904300F89F4
+:10A5B0000288498907FB02338A421BD2521C02805F
+:10A5C0001A46616810E008886169072A088009D185
+:10A5D000606801892069FDF737FF60682169C068FC
+:10A5E00002F075FA2269616804B03046AC46BDE8F5
+:10A5F000F04160470020D5E788DD070070B51C48B2
+:10A6000001240168C90301D581130CE019480168D0
+:10A610001522C9B2B2EBD10F07D10168C90704D026
+:10A62000016801F0560101600024134D286A0128D9
+:10A630001CD14FF4405011494068884208D123464C
+:10A640004FF4805105F518706A6BFFF74BFE68B147
+:10A6500000F09CFD014623460948AA69FFF742FE27
+:10A6600020B101F0A7FB10F0B10000D0012070BDB7
+:10A670000004004020050040D8750020DBE5B15102
+:10A68000797800204169002901D0C06808477047E7
+:10A690007047000010B50446801E062810D2DFE87F
+:10A6A00000F00D03030F09090A494FF4702000F070
+:10A6B000EDFA05E00120FFF76FFE01E000F0EAFF90
+:10A6C00005484168002903D02046BDE810400847EE
+:10A6D00010BD000089A907006859002010B5044684
+:10A6E000062801D0072C02D1002001F06BF80448A5
+:10A6F0000168002903D02046BDE81040084710BD7E
+:10A70000A4590020BFF34F8F05480168054A01F4A2
+:10A71000E06111430160BFF34F8F00BFFDE7000010
+:10A720000CED00E00400FA052DE9FC4180461F46CF
+:10A7300015460E4600240D4800F006FA38B11120E7
+:10A74000BDE8FC8106EB043001F0E2FA641CAC4287
+:10A75000F8D1064800F0F5F9CDE90057334600225C
+:10A760000221404600F02AF80020E9E7F8590020CD
+:10A770002DE9F843104D0F4680461E469146694626
+:10A78000286800F0B2F9040014D01C21FDF75CFE2B
+:10A7900001202071C4F81490380BC4F80080C4E97B
+:10A7A00002606946286800F0C1F902F055FB0020FC
+:10A7B000BDE8F8830420FBE7B4DB07002DE9F04394
+:10A7C00087B00446DDE90E8980681D4616460F46AF
+:10A7D00000280BD018216846FDF736FE02A88DF838
+:10A7E000007080E86003A1686846884707B0BDE84C
+:10A7F000F08330B50446006887B00D4680680028B5
+:10A800001FD018216846FDF71FFE0195A06805902E
+:10A81000207910B1012810D107E001208DF8000047
+:10A8200020690290E068039005E002208DF80000A6
+:10A83000E0680003029060690490206881686846BF
+:10A84000884707B030BD0B2803D30B38C0B200F0E7
+:10A8500009B870470249002208780A707047000062
+:10A86000C0590020014908700B207047C0590020D2
+:10A8700001490120087070476859002001490120F2
+:10A8800008707047A05900200123723000F0FABF11
+:10A890000EB59DF8080020F00F00401C20F0F000DD
+:10A8A00010308DF8080068466DDF002819D19DF83A
+:10A8B0000100401C8DF8010068466CDF002810D1B3
+:10A8C0000848007A800703D50748011D806901E028
+:10A8D00006A1072082B202A87CDF002801D105482A
+:10A8E0007ADF0EBDA8590020605E002044667554D2
+:10A8F0006172670046DA07002DE9F04781461D4680
+:10A9000016468846494502D10020BDE8F087A8EBED
+:10A910000900040B06F6FF704FF0000A070B00F069
+:10A92000C3FAA5422AD22C4628E0A74202D8BA464A
+:10A93000354601E0A246250300225146484600F074
+:10A9400023FD0028E1D1681E00F003002A1A00232D
+:10A9500041464846D21C00F02DFD0028D5D10948BB
+:10A96000A7EB0A07761B016BA94429440163A8449D
+:10A97000002000F013FF5FEA000AC6D1002ED4D1F8
+:10A980005046C2E7D87500200120FFF705BD000042
+:10A99000014941600020704788DB070010B50B4972
+:10A9A00041600B4800F0D0F868B901F017FB084986
+:10A9B0001C234FF4EE7208740448A1F5EE71001FD9
+:10A9C000006800F07FF8002010BD0000B8DB070031
+:10A9D000447F002002480068002800D00120704712
+:10A9E000F85900200248007A002800D00120704762
+:10A9F000447F002010B54FF44051144B4C6800F5D3
+:10AA000000509C4204D042689A4201D1012200E0E9
+:10AA100000229C4218D144689C4215D10A78142A1D
+:10AA200001D9496900E00021094A0378B1FBF2F13C
+:10AA3000142B01D9406900E00020B0FBF2F0814204
+:10AA400001D0012200E00022104610BDDBE5B1512B
+:10AA500040420F0070B5054608680C464A68866893
+:10AA60002846314601F054FF6068286104F10C006B
+:10AA70006861B0780221B1EB901F01D1241D2C61D7
+:10AA800070BD000000F0E4F94FF48051002000F0A8
+:10AA900011F940B90548C0F5FC2100F00BF910B9D7
+:10AAA000034800F073F901F035FC00000080070056
+:10AAB00091A6070010B5FDF7F8FB08B1002010BD06
+:10AAC000112010BD10B531B1B2FBF3F403FB142417
+:10AAD0001CB1092010BD0E2010BD01600021416095
+:10AAE00081608281C381084610BD70B50C46054661
+:10AAF000FDF790FB002802D021882868084470BD2B
+:10AB000010B50A8849888A4203D1FDF7C5FB0120A8
+:10AB100010BD002010BD70B50C460546FDF79FFB2B
+:10AB2000002802D061882868084470BD10B50A88E2
+:10AB300049888A4203D1FDF789FB012010BD00201E
+:10AB400010BD002100F003B8012100F006B808B5DF
+:10AB50006A46FDF7DCFB009808BD08B56A46FDF7BC
+:10AB6000C9FB08BD38B5044600258DF8005068467D
+:10AB7000FFF71EF921686268086890420ED9401EEE
+:10AB800008600178238AE26801FB0325227A2168A4
+:10AB9000101AC0B20A79824200D208719DF80000F2
+:10ABA000FFF72AF9284638BD38B5054600208DF84C
+:10ABB00000000C466846FFF7FBF8E868298A201A6F
+:10ABC000B0FBF1F12A681068431C136001709DF816
+:10ABD0000000FFF711F938BD10B530B1017A4268B5
+:10ABE0000368891AC9B21A6006E00E2010BD036816
+:10ABF0001A68541C1C601170491EC9B2F7D2006853
+:10AC000000210171084610BD10B54FF0E0224FF051
+:10AC1000FF314FF48054C2F88011C2F8801200F066
+:10AC200005FC2046BDE81040AFF3008010B5044697
+:10AC30001448C0F5FE2100F03DF808B1FFF730F8E8
+:10AC400000F0A4FA014610488069421EC2F30B02CC
+:10AC5000801A0144002001F6FF7100F02BF808B1C2
+:10AC6000FFF71EF8D4E90001002282F3148882F372
+:10AC7000108882F3118882F3138880F30888BDE876
+:10AC80001040084700800700D875002070B5084DB7
+:10AC900004460E46686802F0DFFC002C06D03246FF
+:10ACA00021466868BDE8704002F0C8BC70BD000075
+:10ACB00070590020F0B50A0502D1B0F5FE2F01D978
+:10ACC0000720F0BD134D000B491E124F01222E1D0F
+:10ACD000103700EB113407F1040C17E04309C3F1FE
+:10ACE000000100EB411E02FA0EF106D0012B06D046
+:10ACF000022B06D0032B08D105E0296005E0316066
+:10AD000003E0396001E0CCF80010401CA042E5D916
+:10AD10000020F0BD0006004070B5194D0024E86A1F
+:10AD20002435012807D0A52808D0AA2809D0AC28A6
+:10AD30000AD0002070BDFEF78DFF0BE002F00CF989
+:10AD400007E0FFF773F805E002F006F908B9FFF72E
+:10AD50006DF80124284600F03DFA0A4900200870E9
+:10AD6000094800F01BFD08B1032070BD0120002C34
+:10AD7000FBD00349096A0129F7D1022070BD000008
+:10AD8000D8750020A05900207DA8070070B52A4D75
+:10AD90006860002000F05CFC80BBFFF7BDFF20B1C5
+:10ADA000012828D002283CD105E04FF47024FFF799
+:10ADB00025FC10B932E04FF4A02400F075F81F4ACA
+:10ADC00020211820FEF7DEFF08B1FEF769FF00F032
+:10ADD000F1FF1621B1EBD00F09D100F0EBFFC00756
+:10ADE00005D000F0E7FF164920F0B100086000F040
+:10ADF00003FB18B903E00120FFF7CEFA11E0114977
+:10AE00002046FFF743FF104800F0E0FA48B900BFC2
+:10AE100000F036F8FEF796FF41DFF9E700F0C0FBDF
+:10AE200008B1032070BD00202870084800F00AFC1B
+:10AE3000FFF7EAFEF5E7000068590020205A0020DD
+:10AE40001C05004089A9070095A6070071A8070006
+:10AE500010B540F6F8700168491C02D1074900F0AE
+:10AE60006FFF40F6FC700168491C05D1BDE8104039
+:10AE70004FF4FC2100F064BF10BD0000008007000B
+:10AE800010B501F04BF9002803D0BDE8104002F0E6
+:10AE90004BBC10BD034A93680A46014698601846A9
+:10AEA00002F0CCBB7059002070B50E4D28780028F8
+:10AEB00017D101F033F9012690B10B480468A4F5CD
+:10AEC0004864962C00DC962402F02EFC07492046AC
+:10AED000FFF7E0FF4FF0E0214FF48030C1F80001B0
+:10AEE0002E7070BDA15900200405014065D70700F0
+:10AEF00040688068004710B542680830527900F019
+:10AF0000F1F8002010BD2DE9F04399B01C469046A1
+:10AF10000D460846DDF88090FFF7EAFF6E680746A9
+:10AF20007079A04200D804462246414611A800F09C
+:10AF300015F97279494601A800F0D4F801AB224610
+:10AF400011A905F108000097FDF724FC18B10020B5
+:10AF500019B0BDE8F08348F24250F9E770B51646E3
+:10AF60000C46054600F0E2F800280ED1AA791946F1
+:10AF7000304600F0E8F8002807D131462046FFF7B8
+:10AF8000BAFF002801D10149216070BD7052464DC1
+:10AF90002DE9F8430C46DDE90857814698461646E8
+:10AFA0000D49204600F0B6F8002810D160683946F7
+:10AFB00040794200284600F0C6F8002807D146B183
+:10AFC00043463246214648460095FFF79CFFBDE8C0
+:10AFD000F88348F21050FAE77052464D2DE9F041DF
+:10AFE0001D46DDE906871646044600F02DF80028C8
+:10AFF0000DD12A463146204600F03CF8002806D103
+:10B000003A4641462046BDE8F04100F002B8BDE8AE
+:10B01000F08170B515460E46044602F075FB002817
+:10B0200007D13EB160682968C268914205D248F2F2
+:10B03000145070BD48F2135070BD83682A463146E3
+:10B040002046BDE87040184710B550B161B141606D
+:10B05000096804468847002802D10548206000207E
+:10B0600010BD48F2015010BD48F2105010BD000054
+:10B070006E52464870B515460E46044602F044FB33
+:10B0800000280BD146B155B160682A463146436865
+:10B090002046BDE87040184748F2105070BD0020AF
+:10B0A00070BD00002DE9F0410B480C4D0C4F401BCA
+:10B0B000C60801203870002406E000BF55F83400AF
+:10B0C0008047002805D1641CB442F7D302203870B1
+:10B0D0000020BDE8F081000000000000000000003A
+:10B0E000A259002070B514460D46064600F036F809
+:10B0F000291930192246BDE8704000F02FB830B54C
+:10B100000C46054600F035F828192146BDE83040C8
+:10B1100000F02FB828B10068884205D048F24050AE
+:10B12000704748F2105070470020704728B139B17D
+:10B130000022C1E900201046704748F210507047C5
+:10B1400048F21350704720B1914205D048F2115097
+:10B15000704748F210507047002070470244521E5A
+:10B1600004E000BF11F8013B02F801398242F9D234
+:10B1700070470144491E05E002780B7800F8013B56
+:10B1800001F801298142F7D2704700004FF4405086
+:10B19000074A4168914207D18068411EC1F30B0103
+:10B1A000401A00F6FF7070474FF48050704700005F
+:10B1B000DBE5B15100B5FFF7E9FF054989690A18D8
+:10B1C000401E0844C0F30B00101A00F6FF7000BDCB
+:10B1D000D875002000210160416081600148016351
+:10B1E00070470000D87500202DE9F0419846214FA6
+:10B1F00016460C460546002301215BB1012B11D0F8
+:10B20000022B1ED00020381AA0F50040A8421BD205
+:10B2100001221AE0FFF7CEFF8EB11749096A012912
+:10B22000F1D00CE0FFF7B2FFB8F1000F05D14FF4F9
+:10B230004051124A4968914201D00121E3E70021BF
+:10B24000E1E74FF48050DEE7002242EA0400884341
+:10B2500005D0022B03D25B1CDBB2022BCCD912B17E
+:10B260000420BDE8F0811BB103481830FFF7B2FF9E
+:10B270000020F6E700800700D8750020DBE5B1511B
+:10B2800070B504460078092811D2DFE800F01005F7
+:10B2900010112510381013000D461D490320C968F0
+:10B2A0008847606900F056FBFFF7CDFA687070BD03
+:10B2B000084628E00D46A18A206900F027FBFFF729
+:10B2C000C2FA68702846FFF787F8E1680029EED0D7
+:10B2D0002069BDE8704008470C460D490831081F39
+:10B2E00000F052FBFFF7AFFA60700128DFD10020B9
+:10B2F00000F054FA0028DAD00A20607070BD0846C9
+:10B300004FF40071C160BDE87040FFF765B8000000
+:10B31000C459002070B51A4A05780124936C092D90
+:10B320002CD2DFE805F02B052B0B0F2B252B08006B
+:10B3300000F034FF22E000F0A7FF1FE08B60106DEB
+:10B3400048601BE0D2E91454566C2C1BA64203D073
+:10B3500008204870012411E00024556554642146FA
+:10B36000D36400F055FF07490420C968884705E009
+:10B370008B60106D48604FF48050C860204670BDEF
+:10B38000D8750020C459002013460A4601460148DA
+:10B3900000F0F0BB0C5A002008B1034900E003495B
+:10B3A0000022034800F0FCBBC4DB070094DB07006D
+:10B3B0000C5A002008B5009313460A46014602487D
+:10B3C00000F086FC08BD00000C5A0020084910B5AA
+:10B3D00008600020FFF782F9064800F00DFA002807
+:10B3E00004D1BDE81040034800F026B810BD0000AD
+:10B3F000A4590020DDA60700002070471FB589086A
+:10B40000002201AB009283E80700684618DF04B011
+:10B4100010BD00001FB5044B0FCB8DE80F00684630
+:10B4200018DF04B010BD000048DB07004FF4805067
+:10B43000410408600020704710B5040011D00120BD
+:10B44000FFF7AAFF00280BD100F04EFA00F0DEFA59
+:10B4500048B10949081F00F097FA012803D00320DA
+:10B4600010BD072010BD04480838C4600020FFF755
+:10B47000F9F9002010BD0000CC590020816819B1F5
+:10B48000024A1821FEF70EBC0720704791B407004E
+:10B49000AFF3008030B587B0044618221F496846D4
+:10B4A000FCF7B9FF20788DF8000022781C4D0D2A9A
+:10B4B00025D2DFE802F0240B270B0B240B240B24EE
+:10B4C00024240700E968072088471BE020466946D6
+:10B4D000062A01D0012A01D1027C2A702A78012A89
+:10B4E00005D0022A06D000202870052008E0FFF7CA
+:10B4F000C7FE07E0FFF70EFF20B907B030BD0220FE
+:10B500008DF80100D4E90112684690479DF80100CA
+:10B510000128F2D0E96805208847EEE770DB0700D4
+:10B52000C459002038B10549016005494160012135
+:10B530000172002070470E207047000045B50700DB
+:10B540007DB5070010B50C0001464FF0110007D083
+:10B550002278052A05D2DFE802F00F050D0F0F0053
+:10B560000E2010BD084600F051F80028F9D1022144
+:10B57000217010BD112010BD082010BD024608200A
+:10B5800041B10B78022B04D1022A05D0032A00D145
+:10B59000112070470E207047002003220A70704768
+:10B5A00070B50B480024D0F82413491C03D1D0F8FF
+:10B5B0006403401C09D04FF4FE25284600F0A8FB88
+:10B5C000C9220349284600F0D3FB204670BD000085
+:10B5D000D875002010B528B11C220349FCF71BFFC9
+:10B5E000002010BD0E2010BD64F3070010B5064CFE
+:10B5F00000221821201DFEF7F7FE2168814201D1AB
+:10B60000012010BD002010BD64F3070070B50C4D83
+:10B610000400D5F8640305F5597503D0401C03D028
+:10B62000082070BD0E2070BD00221821201DFEF7DD
+:10B63000DBFE206007222146284629DF70BD00007E
+:10B6400000F00700014901F035BD000000F00700DF
+:10B6500010B5FFF7A1FE30B900F01CF8002000F093
+:10B660009DF8002800D0032010BD000010B5FF2277
+:10B670004FF400710648FCF7E0FE0548202124380D
+:10B68000FCF7E2FE024900205C39086310BD0000AF
+:10B69000347600202DE9F0472E48FEF7C3FE2E4EEB
+:10B6A000074634682046FEF7BDFE4FF0010A4FF012
+:10B6B000000958B16068012806D02046FEF71AFE3E
+:10B6C000D4F85C12884201D1012500E00025234C0A
+:10B6D0004FF002084FF460719FB10A461D492046A1
+:10B6E000FCF799FE9DB1366825465422311D281D70
+:10B6F000FCF791FE4FF4327206F15C0105F15C003B
+:10B7000003E015B30A4615483168FCF784FE60680B
+:10B71000012818D11249402201F5E470FCF77BFEA4
+:10B720000F491C22403101F5E470FCF774FE84F8E7
+:10B73000609284F8A1A20B4884F8E292E169C0F813
+:10B740002210C4F80480BDE8F0870448FCF77CFEB2
+:10B75000F7E7000000F00700D4590020D87500205A
+:10B76000347700205878002070B50546094801F06C
+:10B77000ABFC084C20602046FEF7BCFDC4F85C0220
+:10B78000A4F5E0632A462146BDE87040024801F076
+:10B79000A0BC0000D875002000F0070070B5054679
+:10B7A0000020FFF7E1FF040003D10349284601F020
+:10B7B00081FC204670BD0000D87500204FF48050F9
+:10B7C000704700002DE9F04107460948094D401B2C
+:10B7D000C6080020044607E005EBC400416838466F
+:10B7E0008847002802D1641CB442F5D3BDE8F0813B
+:10B7F00084DE07007CDE07002DE9F041074609489A
+:10B80000094D401BC6080020044606E055F83410D8
+:10B8100038468847002802D1641CB442F6D3BDE8FC
+:10B82000F081000084DE07007CDE0700012201F0C9
+:10B83000CBB938B5144602780B467AB1012A04D048
+:10B84000022A0DD0032A1BD112E0D0F801500022A9
+:10B8500021461846FEF7C8FDA84211D1012038BD87
+:10B8600001B02246BDE830400023401C00F00AB879
+:10B87000411C40220020009400F0F2F80128EED094
+:10B88000002038BD2DE9F041AAB0054620208846A9
+:10B8900028901E4617460124782102A8FCF7D4FD03
+:10B8A000FEF7D0FD2EB12022294620A8FFF756FC36
+:10B8B00020AD28A90A48CDE900013B464246094986
+:10B8C00002A8FFF78BFB28B9202229460448FCF781
+:10B8D000C6FD00B100242AB02046BDE8F08100007A
+:10B8E0002C7D002058D8070010B50648064C806B08
+:10B8F00020B101F0D5FD08B1012000E0002020704A
+:10B9000010BD0000D8750020D85900202DE9F04165
+:10B910000F4C07460D46E06BA26B01264119914280
+:10B9200001D9032610E00A492A465C310844394609
+:10B93000FCF771FDE06B064A2844E063403229467B
+:10B940003846FEF751FD20643046BDE8F081000026
+:10B95000D875002070B504004FF0010504D0B4F58F
+:10B96000007F03D9042508E0032506E004490020F0
+:10B970000870FFF77BFE03488463284670BD000013
+:10B98000D8590020D87500202DE9F04106461D4801
+:10B990000F46C16B806B814201D008242FE01A4D05
+:10B9A000287840B1FFF706FC30603946E86801F0BE
+:10B9B0007FFE044623E001F073FDF8B100F02CF89F
+:10B9C0000446002030603860012C0FD13946E86809
+:10B9D00001F06EFE0446012808D1386801270021D5
+:10B9E0003B460A46FFF700FC18B10424FFF73EFE71
+:10B9F00005E0FFF7DFFB30602F7000E005242046F4
+:10BA0000BDE8F081D8750020D859002001480078A1
+:10BA100070470000D859002038B50F4C251D002074
+:10BA200094F86C31014602463BB194F8D802B4F860
+:10BA3000DA2204F5B87504F53771084B9C68009458
+:10BA40005B6800F00DF8012804D1281DBDE83840DE
+:10BA500000F050B838BD000058790020D8590020B7
+:10BA60002DE9F041A2B0064620200D4620901F4649
+:10BA70001446DDF8A080782102A8FCF7E5FC002040
+:10BA80002190FEF7DFFC25B12EB1162022B0BDE8D3
+:10BA9000F0811320FAE720A91448CDE900014346BC
+:10BAA0003A46134902A8FFF799FA08B9402C01D089
+:10BAB0000A20EBE70D48224629464038FCF7ABFC4C
+:10BAC0000A4820214038FFF71AFB08484021403837
+:10BAD000CDE90001A0F14801044A21A8209BFFF70D
+:10BAE00057FA08B10520D1E70120CFE70C7D0020EF
+:10BAF00058D8070070B5044690F85400012570B37B
+:10BB000094F8550028B1012803D0022801D0032859
+:10BB10002AD194F86E00032801D0142525E0207A5C
+:10BB2000E8B1E068342801D011251EE0204601F07C
+:10BB30005FFA68B1207898B194F855100C4849B173
+:10BB4000012907D06168C06881420ED810250CE039
+:10BB500012250AE061688068814206D2F6E703E0B8
+:10BB600094F85500012800D00F25284670BD00002C
+:10BB7000D87500202DE9F0410446406815461E4660
+:10BB800002680F466A432046FEF708F820683346ED
+:10BB90002A46D0F810C039462046BDE8F04160473B
+:10BBA00001600B68114618472DE9F04128B1016882
+:10BBB00019B1C969BDE8F04108470D4D0D48002491
+:10BBC000461B14270DE000BF04EB840005EB80004A
+:10BBD000016829B1C969884710B10120BDE8F08129
+:10BBE000641CB6FBF7F0A042EED80020F6E7000098
+:10BBF0000C5A0020205A0020044801214174007A88
+:10BC000008B100207047012070470000447F0020E9
+:10BC1000012801D0032808D10449002201284A74D0
+:10BC200000D00020087401F0C9B87047447F00209C
+:10BC300070B50146022801D0032943D1224C207A55
+:10BC400000283FD0012831D002282FD11F480023DF
+:10BC50000229006802D0032928D119E0E3600279A3
+:10BC600012B1012A22D10BE0D0E90565721B142A1A
+:10BC700000D314222A4482614569AA420ED015E0FD
+:10BC80000169491C0161426991420FD1237213E09D
+:10BC9000E268521CE260082A08D9E3602372022994
+:10BCA0000AD00D21FEF7A5FD01F07EF8607C28B1D9
+:10BCB000BDE8704000F098B90021F3E7BDE870409E
+:10BCC00001F07CB870BD0000447F0020FC590020CA
+:10BCD0002DE9F84304461D4616460F460846DDF892
+:10BCE0002080FDF755FF3046FDF752FF2A463946C2
+:10BCF0002046FDF753FFCDF8008020682B463246E2
+:10BD0000D0F80CC039462046E047BDE8F883000073
+:10BD1000094902220A60BFF36F8FBFF34F8F0A1DDC
+:10BD2000106006480268002AFCD000200860BFF3BB
+:10BD30006F8FBFF34F8F704704E5014000E401406F
+:10BD4000094A01231360BFF36F8FBFF34F8F016068
+:10BD5000064801680029FCD000201060BFF36F8FF7
+:10BD6000BFF34F8F7047000004E5014000E401403D
+:10BD700070B50E4C01232360BFF36F8FBFF34F8F5D
+:10BD800000230B4D08E000BF51F8236040F823600A
+:10BD90002E68002EFCD05B1C9342F5D3002020605F
+:10BDA000BFF36F8FBFF34F8F70BD000004E50140FC
+:10BDB00000E4014001480068C0B270471C05004023
+:10BDC00008B5002242504058009008BD20B10349F8
+:10BDD00009680160002070470E2070475CDD070095
+:10BDE000FEB507460C460846FFF7F0FF002844D191
+:10BDF000002500950195012606208DF80070ADF80C
+:10BE0000040002958DF8026069462020226869DFEF
+:10BE100000958DF801608DF80250019502958DF81E
+:10BE2000035069464020226869DF00958DF8007054
+:10BE3000F720ADF80200019502956946232022689B
+:10BE400069DF0095019502958DF800606946012033
+:10BE5000226869DF4FF4B060009001950295694651
+:10BE6000A120226869DF0095019502958DF8006098
+:10BE70006946A020226869DF0020FEBD60DF00283F
+:10BE800002D1024A0121117070470000075A0020B8
+:10BE900030B51548ADF5017D0078002821D04FF46C
+:10BEA000FA7500BFADF8005280A9684661DF38B16D
+:10BEB000052816D00DF5017DBDE83040FDF7F0BE38
+:10BEC0006C460A497DA800F0BBF806E0D0E90021E5
+:10BED000204690477DA800F0CAF87F980028E1D05E
+:10BEE000F4E70DF5017D30BD075A002060DD070045
+:10BEF000F8B5134C2078C0B10120A07001F0ACF867
+:10BF0000112814D0022001F0BFF800258DF8005050
+:10BF10006846FDF74DFF11DF064625709DF80000CD
+:10BF2000FDF76AFF2EB13046F8BD0820F8BD0020AD
+:10BF3000F8BDA57001F068FA032001F0A5F8F6E756
+:10BF4000045A00207CB5194C207808B108207CBD2B
+:10BF50000120A070002001F07FF8112819D00020E6
+:10BF600001F092F812480026006801908DF80060F8
+:10BF70006846FDF71DFF0F4901A810DF05000AD034
+:10BF8000002020709DF80000FDF736FF2DB12846F7
+:10BF90007CBD00207CBD0120F3E7A670667001F037
+:10BFA00053FA012001F070F8F3E70000045A002072
+:10BFB000F4DC07009D9C07000EB50749684600F0B9
+:10BFC0003FF805E0D0E900108847684600F04FF8D8
+:10BFD00002980028F6D10EBD10DD07000148007858
+:10BFE00070470000045A00200548817819B1007894
+:10BFF00018B1FFF77DBF08207047FFF7A3BF00000F
+:10C00000045A00201FB568464BDF30B1052814D014
+:10C0100004B0BDE81040FDF743BE084901A800F098
+:10C020000FF806E0D0E900210098904701A800F041
+:10C030001EF803980028E6D0F4E71FBD7CDD07005A
+:10C04000016009684160AFF3008010B5D0E90021BC
+:10C050005368994201D1002104E0D1E90034A342A0
+:10C0600002D01946816010BD08314160F0E7816857
+:10C0700000290BD0026892680A44826041684B68CC
+:10C080009A4203D108314160FFF7DFBF70470000DB
+:10C090002DE9F04104461348134BC01A0C21B0FBA4
+:10C0A000F1F6A0694FF0FF3110F8022C02B92169B6
+:10C0B000002011E000EB400503EB85052F68974257
+:10C0C00009D14F1C02D06F688F4204D194E80F0051
+:10C0D000AD68A84703E0401CB042EBD301202060CC
+:10C0E000BDE8F081D4DE0700C8DE070010B51446B5
+:10C0F00012680830202A02D248F2145010BD0022E3
+:10C1000001F00FF80028F9D120202060002010BD98
+:10C11000083001F08FB8083001F04CB902480068CF
+:10C12000002800D0012070470004014030B587B0DE
+:10C130000C460546182216496846FCF76CF9217B27
+:10C1400014488DF800100195012906D0022915D058
+:10C15000062917D1607B049014E08188C180607B40
+:10C160000490617CD4F80E0061F31F600590049880
+:10C17000012807D10848FFF725FB03E0B4F80D10AC
+:10C180008180C1806846FFF779F907B030BD0000B3
+:10C1900098DA0700A85900207CDE07002DE9F0415D
+:10C1A0000C460546FFF732FC0826B8B16969032042
+:10C1B00041B3154A154B0F0505D0576DD3F808C08C
+:10C1C0000F4467451ED1B1F5805F01D9042019E005
+:10C1D000506DD3F808C04718674502D96670BDE8AE
+:10C1E000F0815164D16C10659164106369695A687B
+:10C1F00001F6FF711044090B0022FFF7C5F8002873
+:10C20000EDD005206070EAE7D8750020C459002001
+:10C2100010B5044686B00020FFF7C6FC30B1154AC1
+:10C2200018212046FDF73EFD06B010BD1822124928
+:10C230006846FCF7F0F81148026D114881688A429F
+:10C2400010D14068FFF7F2FA8DF80100FEF7FBFA13
+:10C250008DF80100D4E90112684690470948FFF7BC
+:10C260009DFAE1E701208DF80100D4E9011268464A
+:10C270009047D9E711C2070058DB0700D8750020A6
+:10C28000C459002009C307002DE9F0410E460446B9
+:10C29000FFF7BCFB60B11A4DD5E91401401AA18A21
+:10C2A0006A6C0844904205D903207070BDE8F081A3
+:10C2B0000820FAE7134A286B52688718104A206949
+:10C2C0004832FEF791F8D4E903318046A28A384615
+:10C2D000FFF770F820B1D4E90310BDE8F04108473A
+:10C2E000A18A286B08442863A18A286DC5F8488074
+:10C2F00008442865C6F80880286D7060D6E70000FD
+:10C30000D8750020C459002001490620C968084793
+:10C31000C4590020BFF34F8F05480168054A01F456
+:10C32000E06111430160BFF34F8F00BFFDE70000E4
+:10C330000CED00E00400FA0501460148FEF734BCAC
+:10C3400084DE070030B58A1D8B79083187B0022B57
+:10C3500033D153888489A3422FD1127A012A2CD158
+:10C36000184C0DF1040C3CCC8CE83C000A89ADF86B
+:10C370000C204A890C3104911249ADF80E20803905
+:10C38000114C096A0591CDF818D0018A05AA608878
+:10C39000ADDF18B96846FDF7A1FF38B10020ADF850
+:10C3A000080001A96088B0DF50B106E040F2FD103E
+:10C3B000ADF8080001A96088B0DF002007B030BDEB
+:10C3C0000120FBE7B0DA0700A8590020F8B50D46B8
+:10C3D00014460646694600F057FA00280FD0009B25
+:10C3E000B3F5803F0AD2981C834207D8A97802226D
+:10C3F000B2EB911F02D02989814201D20020F8BD01
+:10C400002380A11C3046009A00F074FBF8BD114651
+:10C4100000F0D6B8114600F0E3B8F8B50C46154662
+:10C420000646694600F030FA00280CD0009A501CED
+:10C43000904207D3A1780223B3EB911F02D0218948
+:10C44000814201D20020F8BD2946304600F052FB5F
+:10C45000009A0021A954F8BD2DE9FF410C46CE6891
+:10C4600017460546694600F017FB00280ED0E06825
+:10C4700000280BD0A0783A46C0F3011002283146BC
+:10C48000684606D000F0DAF80199696004B0BDE8AA
+:10C49000F08100F086F8F7E77CB50D461446694652
+:10C4A00000F08FF9002820D02889082806D0042819
+:10C4B00009D002280AD001280CD015E0DDE90001DE
+:10C4C000C4E900010AE00098206006E0009800B28C
+:10C4D000208002E0009840B22070C117DDE90023FF
+:10C4E00050405940084301D000207CBD01207CBD54
+:10C4F0007CB50D461446694600F0A1F9002820D00D
+:10C500002889082807D00021042809D002280AD049
+:10C5100001280CD014E0DDE90001C4E9000109E0C4
+:10C520000098206006E0009880B2208002E0009829
+:10C53000C0B22070DDE9002350405940084301D0CB
+:10C5400000207CBD01207CBD7CB50D4614466946AB
+:10C5500000F075F9002821D02989082908D0009811
+:10C56000C21704290BD002290DD001290ED014E0E6
+:10C57000DDE90002C4E900020146134609E0C317E1
+:10C580000146206005E001B2218001E041B2217046
+:10C59000CB1741405340194301D000207CBD0120FE
+:10C5A0007CBD70B50D46064614461146284600F07F
+:10C5B0008EFA224629463046BDE8704000F03EB86B
+:10C5C00038B50C460422694600F094FA002806D0DB
+:10C5D0009DF80310009861F31F602060012038BDB2
+:10C5E0001CB50C460822694600F084FA002824D0C5
+:10C5F0009DF801109DF800209DF80230080E42EAD7
+:10C60000012242EA034240EA13409DF803309DF8BC
+:10C61000041040EA132008439DF8051042EA036223
+:10C6200040EA01209DF8061040EA01409DF80710FD
+:10C6300040EA0160C4E9002001201CBD2DE9F04F53
+:10C6400004469DB000200090064601904FF0FF3A4E
+:10C650000AA800F05DF94FF0010BE94682E012AB49
+:10C6600005AA06A9204600F0C9F850B10AA8059904
+:10C6700000F05FF960B10B98807810F0300F53D064
+:10C6800060E09DF84800002870D11DB0BDE8F08F33
+:10C690000598B04242D30B9D0AAE0B98807800F00B
+:10C6A0000F00082812D0304600F05AF90B98A84223
+:10C6B000F3D156460599B14230D3D4F80880099198
+:10C6C0009DF8181008910E990D6820E00B980688C7
+:10C6D000F0E729680F682FB1DDE9083229462046C6
+:10C6E000B84711E011948968DDE908720988914220
+:10C6F0000CD1294617A8FEF7ADF985F80CB017AA9A
+:10C7000039461198FDF7FDFE0028BED0AD6815B181
+:10C71000A1684145DDD0A168414523D19DF818109D
+:10C72000204600F023FA1BE00C9840280AD200F0C3
+:10C730001F010BFA01F00C994A0959F82230034302
+:10C7400049F82230E5682DB10AAB9DF81820204643
+:10C750000599A8470AAA9DF818102046FDF7D1FEB2
+:10C76000002892D0A06800287FF479AFDDE90B049F
+:10C7700085780AA800F0F4F80028F7D115F0300FFA
+:10C7800003D10B98008800B1641CC4B10020494655
+:10C7900005E000BF51F82020521C0ED1401CB0EB28
+:10C7A000541FF7D3600959F8201004F01F00C0F19E
+:10C7B00020022AFA02F0814201D0002065E7012020
+:10C7C00063E71CB50C46694600F039F8002814D020
+:10C7D000DDE90002C10709D051084FEA30006FEAD5
+:10C7E00000026FEA0100C4E9002004E051084FEAAA
+:10C7F0003000C4E900014FF001001CBDF8B5074648
+:10C800000020187008700E4610601C4615466946D8
+:10C81000384600F039F801004FF0010009D00099C6
+:10C8200059B1C8082860009800F007003070012056
+:10C83000F8BDB96809B10020F8BD2070FBE72DE90B
+:10C84000F8430026884681463446354604E0402EAB
+:10C8500002D30020BDE8F8836946484600F076F927
+:10C860000028F7D09DF80070324607F07F00C10F16
+:10C87000FBF7C2FD29430443F61D0D463806E6D4F6
+:10C88000C8E900410120E5E7F8B50E4607466946CC
+:10C8900000F05CF900280AD09DF80040200616D56B
+:10C8A000072504F07F0403E0202D01D30020F8BD0C
+:10C8B0006946384600F04AF90028F8D09DF8001083
+:10C8C00001F07F00A8400443ED1D0806ECD40120D0
+:10C8D0003460F8BD10B559680B4AC968914212D14D
+:10C8E0000A4AD0E90110D2E90134234301D00020E3
+:10C8F00008E011F8013BA0F101001B06F9D4C2E9E0
+:10C9000001100120907010BDE0D80700D859002018
+:10C91000C26000230160C0E901138B881A440261E0
+:10C92000B1F906301A4442610888002800D001207D
+:10C93000704770B545680E46044660680188B1428C
+:10C9400006D1807800F00F00082801D0012070BDCA
+:10C95000204600F005F86068A842EED1002070BDC6
+:10C9600030B541680A885AB101F1100343600A8A60
+:10C9700042B18C780A89C4F30115032D07D00BE06E
+:10C98000002030BDC2680168FFF7C2FFF8E79D785C
+:10C99000C5F30115032D06D00225B5EB141F08D1F0
+:10C9A0004C89624309E08D8804690022641B04619C
+:10C9B00003E0B5EB941F00D10422897811F0300F09
+:10C9C00002D18168491C81609C880169214411441D
+:10C9D0000161B3F9062011444161012030BD30B539
+:10C9E0004168002487B0897801F00F02082A11D02D
+:10C9F0008A091ED00222B2EB911F09D10269C1F34C
+:10CA000001110229146001D0032901D14069048079
+:10CA100007B030BD0069056808E02C7329466846F8
+:10CA2000FEF718F86846FFF7DAFFAD68002DF4D17D
+:10CA3000EEE7C1F30111012912D00229E6D0032942
+:10CA4000E4D04268917801F00F0107290BD0D1683A
+:10CA500081B11289006907B0BDE83040FBF7DBBC4B
+:10CA600041690C70EDE70169D06807B0BDE830405E
+:10CA700000F02DB81189006907B0BDE83040FBF720
+:10CA8000E3BC000010B5034B002408C080E816008A
+:10CA900010BD0000BDA3070038B50D460446694629
+:10CAA000FFF7F2FE00280BD0D4E90002D4E902130C
+:10CAB000C5E90002C5E902130098814201D20020B5
+:10CAC00038BDA860A168081AA060012038BD00B573
+:10CAD0000A4687B001466846FFF71AFF002807D0CC
+:10CAE0006846FFF77CFF6846FFF73AFF0028F7D15A
+:10CAF00007B000BD7FB514460546A9B9124A28689B
+:10CB0000904208D110E0102269462846FFF7F2FF54
+:10CB1000002807D0103C102CF5D82246694628463C
+:10CB2000FFF7E8FF04B070BDA868A04201D2002062
+:10CB3000F8E72B682246284698470028F2D0A868D4
+:10CB4000001BA8600120EDE7BDA3070010B5044657
+:10CB50008068002809D023680122204698470028D1
+:10CB600003D0A068401EA060012010BD38B500248D
+:10CB700039B1012912D0022912D005291DD0002077
+:10CB800038BD0546012269462846FFF7B3FF90B13C
+:10CB90009DF800000006F5D4012038BD08220DE004
+:10CBA00005466946FFF770FE28B100212846009A25
+:10CBB000FFF7A0FF38BD204638BD0422BDE838404D
+:10CBC0000021FFF797BF00002DE9F04F81462C4868
+:10CBD00017460E46C5680A4693B0012449462846C2
+:10CBE000FDF752FEDFF89C80A24670B195F8550023
+:10CBF00068B100F00101C0F340024B462846CDE980
+:10CC0000006700F043F8D8B11BE0172419E0CDE924
+:10CC1000006A4B460022294602A8FDF771FB4FF03F
+:10CC2000000B68B10FB3412202A91748FBF7F3FBD1
+:10CC3000C8F820B0C8F82CA06968C8F8081017E038
+:10CC400005246FB1012C13D00E482430FEF7C2FA30
+:10CC5000FEF70CFDC8F8489013B02046BDE8F08FF1
+:10CC6000012C02D0FEF702FDF6E7C8F814A0F3E7A6
+:10CC7000002231464846FDF7B7FBC8E90960E7E7FF
+:10CC8000D8590020D8750020797800202DE9F04788
+:10CC9000A4B08946DDE92C5A04469846164644213C
+:10CCA00002A8FBF7D1FB442113A8FBF7CDFB4746B5
+:10CCB000B9F1000F38D008F50050384A4368A16D2B
+:10CCC000934255D14B1EC3F30B03C91A41F6FF73B0
+:10CCD000D0F808C019448C454AD34FF440514B68F2
+:10CCE00093420DD10A78102A01D9096900E0002188
+:10CCF0000278102A01D9006900E00020814237D172
+:10CD00004046FDF777FE00B18EB30121A06DCDE95D
+:10CD1000000143460022214602A8FDF7F1FA00284F
+:10CD200027D0A06D07442D1A56B10020CDE9005040
+:10CD30003B464A46214613A8FDF7E2FA002818D0E0
+:10CD4000BAF1000F28D0164DB9F1000F19D04046A6
+:10CD5000FDF750FE18B105F11800FEF73BFA41222D
+:10CD600002A91048FBF757FB36B1AC2005E0FFE7FE
+:10CD7000002024B0BDE8F087A520E862A06D6863BC
+:10CD800001E0AA20E8623EB10648412213A98230A0
+:10CD9000FBF741FB6068E8600120EAE7DBE5B151A1
+:10CDA000D875002038780020034802490068FDF754
+:10CDB000A7BE0000005A0020B4DB07002DE9F041B7
+:10CDC000224C0025224E207A012730B92148311DFE
+:10CDD0000068FDF7A0FE306038B102202072316893
+:10CDE000087928B101281BD113E06560BDE8F08106
+:10CDF000D1E90503C01A142800D31420820806D0F4
+:10CE000082080869C9681844194429DF05E001222D
+:10CE1000F7E7D1E90301084428DF58B1112812D0FF
+:10CE200003213068FDF7E5FC25726560BDE8F0413F
+:10CE3000FFF7BABF207C0028D8D1BDE8F04100211F
+:10CE40000220FEF7F5BE2772D0E70000447F0020E5
+:10CE5000FC590020B4DB070010B5074C201DFDF77E
+:10CE600073FE002806D1607C002803D1BDE8104085
+:10CE7000FFF7A4BF10BD0000447F002010B510468E
+:10CE80001A46FBF7C8FA002010BD10B510461A4626
+:10CE9000FBF7C1FA002010BD2DE9F0411E681C46C9
+:10CEA0001546074621B1012918D0052923D119E0DB
+:10CEB00000202060401C2060B0421CD8012229467E
+:10CEC0003846FFF717FE002806D015F8010B0006BC
+:10CED00001D52068EEE70120BDE8F0810820024678
+:10CEE000186002E004200246186029463846BDE872
+:10CEF000F041FFF7FFBD0020EEE770B516460A4689
+:10CF00000446C11C104600F0B1FB054661193046CD
+:10CF1000C91C00F0ABFB284470BD000003B5094AF2
+:10CF200085B0D2E91612CDE9001207498989ADF81A
+:10CF3000001006A9CDE90210044869464088AEDF1A
+:10CF400007B000BD30DA07007C5E0020A859002041
+:10CF5000084670470846704770B5FEF72FFC114A27
+:10CF6000114E136B546B916CE21A551EC5F30B05F1
+:10CF7000521B42F2040518446D5802F6FF72B54286
+:10CF800001D0032070BD1944A34201D1002070BD1F
+:10CF90000823FDF7B1FC0028F9D1BDE87040FEF789
+:10CFA000FDBB0000D8750020DBE5B151F0B50546AA
+:10CFB000002003464FF440540C4E4FF6FE7712E02B
+:10CFC000D4F804C0B44505D155F823C0B4F80CE03A
+:10CFD000F44504D02AB155F823C0BC4501D1012045
+:10CFE000F0BD5B1CDBB28B42EAD3F0BDDBE5B15197
+:10CFF00010B54FF44051174B4A68018A9A4221D12B
+:10D0000071B100F11403426990F8550062B104282F
+:10D0100008D00022BDE81040C9B21846FFF7C6BFCD
+:10D02000002010BD0122F5E710B1012808D1F7E773
+:10D03000012905D9C9B200221846FFF7B7FFEFE76B
+:10D04000012010BD11B141690029E9D10078002803
+:10D05000F6D110BDDBE5B1513EB50446094968463D
+:10D06000FEF7EEFF08E000BFD0E900212046904720
+:10D0700030B16846FEF7FBFF02980028F4D13EBDB0
+:10D0800011203EBDF8DC07003EB50446084968465D
+:10D09000FEF7D6FF07E000BFD0E900212046904709
+:10D0A0006846FEF7E4FF02980028F5D13EBD000077
+:10D0B00004DD070002460348014B006800F009B890
+:10D0C00058720020D459002000225821001DFDF77D
+:10D0D0008BB92DE9F04114464FF460751E460F469A
+:10D0E00080462A46FBF7BBF930B1002201214046B9
+:10D0F000FEF74AF998B905E00CB10020A0470020DE
+:10D10000BDE8F0812A4639463046FBF784F92346CC
+:10D110002A4631464046FEF74DF90028F0D003205C
+:10D12000EEE770B516460D46040007D035B1206C09
+:10D13000802200213828225403D307E00E2070BD3E
+:10D140002154401C3828FBD30BE02154401C4028BC
+:10D15000FBD32146084600F097F838212046FBF71C
+:10D1600073F9216CD4E912304A0FC90038345918C8
+:10D170005041C4E90410227CE2710A0A42EA0062CA
+:10D18000A2710A0C42EA00426271020242EA116094
+:10D1900020716069E070010AA170010C6170000EDD
+:10D1A00004F838092146084600F06EF84FF00002F6
+:10D1B000EEB1E06ED100C840A854A36ECB40A818D1
+:10D1C0000371636ECB400372236ECB400373E36D38
+:10D1D000CB400374A36DCB400375636DCB400376E6
+:10D1E000236DCB40521C0377042AE2D31FE018239F
+:10D1F0005042216D03EBC000C140A954666DC6408A
+:10D20000A9180E71A66DC6400E72E66DC6400E736B
+:10D21000266EC6400E74666EC6400E75A66EC6407B
+:10D220000E76E66EC640521C0E77042AE0D300202C
+:10D2300070BD0000A8B100210164C0E912110A49C3
+:10D2400001650A4941650A4981650A49C1650A497A
+:10D2500001660A4941660A4981660A49C166002099
+:10D2600070470E207047000067E6096A85AE67BB0D
+:10D2700072F36E3C3AF54FA57F520E518C68059BB8
+:10D28000ABD9831F19CDE05B2DE9F04FC8B0002268
+:10D2900013466F46CC181B1D2568E4782DBA25F07F
+:10D2A000FF05254347F82250521C102AF2D31BE0F9
+:10D2B00007EB820151F8083C4FEA734484EAF344D7
+:10D2C00084EA932451F83C3C4FEAF31585EAB345D0
+:10D2D00085EAD303234451F81C4C51F8401C2144E7
+:10D2E000194447F82210521C402AE1D3036D47939A
+:10D2F000416D4691846D4594C26D44929246026E92
+:10D300004392456E4295A946856E4195C66E4096FC
+:10D31000B34600264FEAB21787EAF22787EA726C13
+:10D3200002EA090725EA020887EA0807BC44204FF9
+:10D3300057F8268008EB0B07BC445DF82670AB4617
+:10D340000CEB070E4FEAB30787EA733787EAB35C43
+:10D3500081EA04074D4601EA040891461F400AEBA2
+:10D360000E02A24687EA08070C46BC441946761C02
+:10D370000EEB0C03402ECDD3479E33440365469BF2
+:10D380001944416545992144816544995144C165D9
+:10D39000439911440166429949444166419929449F
+:10D3A000816640995944C16648B0BDE8F08F0000DD
+:10D3B000E4DB07002DE9F04116460F46040004D0D7
+:10D3C00006B317B10025A8461AE00E20BDE8F0818B
+:10D3D000216C785D6054206C401C206440280ED184
+:10D3E00021460846FFF750FFD4E912014FF40072BE
+:10D3F000801841F10001C4F84080C4E912016D1C9D
+:10D40000B542E5D30020E1E710B51620FCF7AEFBEE
+:10D4100048B10C4882684FF4800152B1016821F490
+:10D420008001016010BDBDE8104042F20100FCF730
+:10D4300037BC4FF0E020C0F88011BFF34F8FBFF32F
+:10D440006F8F10BD4C7D002010B51620FCF78EFBB1
+:10D45000A0B1114890F800044009082811D2012118
+:10D46000814011F0EC0F0CD00C4882684FF4800121
+:10D470006AB1016841F48001016010BD42F201000F
+:10D4800001E042F20200BDE81040FCF709BC4FF099
+:10D49000E020C0F8001110BD16E000E04C7D002037
+:10D4A0007FB52A4800F15C01826B6846FFF7EAFA13
+:10D4B000274E9DE8070006F11C03274C83E8070070
+:10D4C00019462448C8600020A0706060A0604FF436
+:10D4D0004771A6F54070FAF7B7FFA6F540721F49ED
+:10D4E00002F54770FFF75DF800282BD0A07858B3FD
+:10D4F000A6F5407090F86C11002901781CD019BB7A
+:10D5000090F8720100B3D4E90112A6F5C675684619
+:10D51000FFF7B8FA9DE80F001C3686E80F004FF4BD
+:10D52000B2712846FAF790FF2A460D493046FFF7B8
+:10D5300038F8002806D003E031B1807920B1094DD8
+:10D540000120E56004B070BD0020FBE7D875002025
+:10D55000587C0020D5C80700D859002000DA070001
+:10D56000E0D807006079002070B503466FF07F4077
+:10D57000814200D20846124DD5F804250244081A0B
+:10D58000411E22F07F425860952902D29630963A89
+:10D5900058601C7B05EB8400C0F8402509494FF416
+:10D5A000F86088474FF4A07000EB84012846FEF72E
+:10D5B00007FC4FF48030A040C5F8040370BD0000A4
+:10D5C0000040024051D8070070B5174E307800284F
+:10D5D00029D1164800680125C0F3004008B9144855
+:10D5E0000560144C4FF480712046FEF7E9FB4FF4C0
+:10D5F000A0712046FEF7E4FB4FF4A2712046FEF72F
+:10D60000DFFB0D49A02081F800040B4910202039D0
+:10D61000C1F800010020C4F80805A56025600220BB
+:10D62000C4F80403357070BD705900201804004020
+:10D63000080000400040024024E000E070B51546BC
+:10D640000E460446FFF7C0FF314620462560BDE880
+:10D650007040FFF789BF0000017B4FF480308840A5
+:10D660000149C1F808037047004002400870020AEF
+:10D670004A70020C8A70000EC870042070470000C7
+:10D6800010B50248FDF75DFA002010BDF8590020E2
+:10D6900010B514210448FAF7D7FE04480068FDF7D6
+:10D6A00009FA002010BD0000447F0020B4DB070011
+:10D6B00030B50F2490F8553000220BB1042B03D164
+:10D6C00090F86450012D06D0DD0707D090F8565031
+:10D6D000012D02D002E0826E0DE0826D9B070AD51B
+:10D6E00090F85C30012B06D1064B006EC3F5FC238D
+:10D6F000984205D802440AB101240A60204630BD90
+:10D700000424FBE70080070030B100680549884227
+:10D7100005D048F20250704748F20150704700208F
+:10D72000704700006E52464870B5FEF7F7FC0028BF
+:10D7300011D00020084A094B094C0121166801FA52
+:10D7400000F52E4203D004EB8005C5F80036401CDE
+:10D75000C0B20728F2D370BD080501403546526EAD
+:10D7600000000140FFF7E0BF002070470020704735
+:10D770002DE9FC4180461C4617460E460C48089D84
+:10D78000FDF7E2F910B11120BDE8FC81A20839468D
+:10D790003046FEF7EDFA0648FDF7D3F933463A4630
+:10D7A00001214046CDE90045FDF708F80020EBE7F0
+:10D7B000F85900202DE9F84F114D884681461E4644
+:10D7C00017466946DDF828A02868FDF78EF90400A1
+:10D7D00013D01C21FAF738FE00202071C4F8009005
+:10D7E000C4E90486C4E902A769462868FDF79EF9E2
+:10D7F000FFF732FB0020BDE8F88F0420FBE70000B4
+:10D80000B4DB07007EF8C9F6120F4CD79208C1713D
+:10D8100083F5768FE216ECBA29939A7403F32B06FC
+:10D820009BFC932EF7111725792DB9D6BE74B76CD2
+:10D830006731C8341D64FD04B795B1DC017F21F167
+:10D84000461AF08B000000000000000000000000FD
+:10D850000338FDD87047000011C1070017C1070049
+:10D86000EDC007002000000078000000000000006C
+:10D8700048002800002040008D87070000000000BD
+:10D880000100010000000000010000000000000095
+:10D89000020005000100000022000000000000005E
+:10D8A0000000000000000000000000000000000078
+:10D8B0000100010000000000010000000000000065
+:10D8C000020005000100000042000000000000000E
+:10D8D0000000000000000000000000000000000048
+:10D8E000010011000400FCFF040000000000000023
+:10D8F000020011000400FCFF040000000000000012
+:10D90000030021000400FCFF0400100000000000E0
+:10D91000040011000100FFFF0100000000000000F2
+:10D92000050011000200FEFF0400000000000000DE
+:10D93000060011000400FCFF0400000000000000CD
+:10D94000070011000400FCFF0400000000000000BC
+:10D95000080017000200FEFF2400000080D8070026
+:10D96000090010000100FFFF010000007CD8070043
+:10D970000A0027000200FEFF44000300B0D80700A1
+:10D980000000000000000000000000000000000097
+:10D99000010011000100FFFF010000000000000075
+:10D9A000020017000200FEFF64010000E0D807003B
+:10D9B0000000000000000000000000000000000067
+:10D9C00001000700000000006801000090D9070076
+:10D9D0000200010000000000010000000000000043
+:10D9E00003000500010000004200000000000000EC
+:10D9F0000000000000000000000000000000000027
+:10DA0000010017000400FCFF6801000090D9070026
+:10DA1000020017000400FCFFAC010000C0D90700A1
+:10DA200000000000000000000000000000000000F6
+:10DA300000110300001113000200000001000000AB
+:10DA40000338FDD870470C000C000000580200009D
+:10DA500002000000000000000200000000000000C2
+:10DA6000405E0020090000000000000000000000EF
+:10DA7000010000000000000028000000000000007D
+:10DA80000000000000010000000001000000000094
+:10DA90000000000000000000000000000000000086
+:10DAA000559F07000000000000000000000000007B
+:10DAB0000200000000000100000000000000000063
+:10DAC0000800000000000000559F070039C3070050
+:10DAD0000000000000000000040000000000000042
+:10DAE0000000000000000000000000000000000036
+:10DAF0000000000000000000000000000000000026
+:10DB0000F400000000000000180000000000000009
+:10DB10000000000000000000000000000000000005
+:10DB200000000000000000000000000000000000F5
+:10DB3000170000000000000050EADA308883B89F28
+:10DB4000604F15F30000C98E0200000000000000C5
+:10DB500000000000000000000400000000000000C1
+:10DB600000000000000000000000000000000000B5
+:10DB700000010000000000000000000000000000A4
+:10DB80000000000000000000001000000400000081
+:10DB90000100000091A9070081D607007DCE070093
+:10DBA00071D7070029A7070051CF070069D70700E1
+:10DBB000D5A90700587D00200010000004000000D7
+:10DBC000010000009DA9070091D607008BCE070039
+:10DBD000B5D7070071A7070055CF07006DD707001D
+:10DBE000E5A90700982F8A4291443771CFFBC0B551
+:10DBF000A5DBB5E95BC25639F111F159A4823F9218
+:10DC0000D55E1CAB98AA07D8015B8312BE85312470
+:10DC1000C37D0C55745DBE72FEB1DE80A706DC9B31
+:10DC200074F19BC1C1699BE48647BEEFC69DC10FDD
+:10DC3000CCA10C246F2CE92DAA84744ADCA9B05C19
+:10DC4000DA88F97652513E986DC631A8C82703B0DC
+:10DC5000C77F59BFF30BE0C64791A7D55163CA06EA
+:10DC600067292914850AB72738211B2EFC6D2C4DF6
+:10DC7000130D385354730A65BB0A6A762EC9C281E4
+:10DC8000852C7292A1E8BFA24B661AA8708B4BC27A
+:10DC9000A3516CC719E892D1240699D685350EF4A4
+:10DCA00070A06A1016C1A419086C371E4C7748275B
+:10DCB000B5BCB034B30C1C394AAAD84E4FCA9C5BD1
+:10DCC000F36F2E68EE828F746F63A5781478C88422
+:10DCD0000802C78CFAFFBE90EB6C50A4F7A3F9BE04
+:10DCE000F27871C6A0DE0700A8DE07000000000081
+:10DCF0000000000000100201E4DC0700F4DC070073
+:10DD0000080000001CDD07002CDD070008000000F3
+:10DD10002CDD07003CDD070008000000C0DE070026
+:10DD2000C8DE07000000000000000000B0DE0700B1
+:10DD3000C0DE07000000000000000000000000003E
+:10DD400000000000000000000000000098DE070056
+:10DD5000A0DE07000000000000000000685900205D
+:10DD60003CDD07005CDD070008000000A8DE0700BE
+:10DD7000B0DE070000000000000000006CDD0700BE
+:10DD80007CDD07000800000049C50700F1C407005A
+:10DD900099C407000FC4070015C40700CDC30700CE
+:10DDA0001BC4070059C40700000000000820000140
+:10DDB000FFFFFFFFFFFFFFFFFFFFFFFF000000006F
+:10DDC000000000000000000001000000FFFFFFFF56
+:10DDD000512563FCC2CAB9F3849E17A7ADFAE6BC0D
+:10DDE000FFFFFFFFFFFFFFFF00000000FFFFFFFF3F
+:10DDF00096C298D84539A1F4A033EB2D817D0377E5
+:10DE0000F240A463E5E6BCF847422CE1F2D1176B7F
+:10DE1000F551BF376840B6CBCE5E316B5733CE2B52
+:10DE2000169E0F7C4AEBE78E9B7F1AFEE242E34F81
+:10DE30004B60D2273E3CCE3BF6B053CCB0061D65BE
+:10DE4000BC86987655BDEBB3E7933AAAD835C65A47
+:10DE500039860700CF960700E5940700D4DE070057
+:10DE600068590020B80000004C9B07008CDF0700B9
+:10DE7000205A0020383500005C9B07006DA0070089
+:10DE80000DA00700B8590020905E0020A15E002080
+:10DE9000A45E0020F400000005A1070000000000BF
+:10DEA000F9BB07000000000031BC070000000000C3
+:10DEB00091BE07000000000005C007000000000040
+:10DEC00011BC07000000000000000000030000007B
+:10DED00025B5070000000000000000000000000061
+:10DEE0008059002090590020000000000000000030
+:10DEF0000000000000000000000000000000000022
+:10DF00000000000000000000010000000000000010
+:10DF100000000000FF00FFFF000000000000000004
+:10DF200000000000000000000000000000000000F1
+:10DF300001000000000000000000000000000000E0
+:10DF400000E00700000000000000000000000000EA
+:10DF500000000000000000000000000000000000C1
+:10DF600000000000000000000000000000000000B1
+:10DF7000000000000090D00300000000000000003E
+:0CDF800085A6070000100000000008004B
+:020000041000EA
+:041014000080070051
+:020000041000EA
+:0410180000E00700ED
+:04000005000782016D
+:00000001FF

+ 19 - 0
central_and_peripheral_secure_bootloader/arm5_no_packs/_build/nrf52832_xxaa_s132.sct

@@ -0,0 +1,19 @@
+; *************************************************************
+; *** Scatter-Loading Description File generated by uVision ***
+; *************************************************************
+
+LR_IROM1 0x00078000 0x00006000  {    ; load region size_region
+  ER_IROM1 0x00078000 0x00006000  {  ; load address = execution address
+   *.o (RESET, +First)
+   *(InRoot$$Sections)
+   .ANY (+RO)
+   .ANY (+XO)
+  }
+  RW_IRAM1 0x20005968 0x0000A634  {  ; RW data
+   .ANY (+RW +ZI)
+  }
+  RW_IRAM2 0x2000FFA0 UNINIT 0x00000400  {
+   .ANY (+RW +ZI)
+  }
+}
+

BIN
central_and_peripheral_secure_bootloader/arm5_no_packs/_build/pca10040_s132_ble - 快捷方式.lnk


+ 12 - 0
central_and_peripheral_secure_bootloader/arm5_no_packs/dfu_public_key.c

@@ -0,0 +1,12 @@
+
+/* This file was automatically generated by nrfutil on 2021-02-03 (YY-MM-DD) at 11:36:58 */
+
+#include "stdint.h"
+#include "compiler_abstraction.h"
+
+/** @brief Public key used to verify DFU images */
+__ALIGN(4) const uint8_t pk[64] =
+{
+    0x7e, 0xf8, 0xc9, 0xf6, 0x12, 0x0f, 0x4c, 0xd7, 0x92, 0x08, 0xc1, 0x71, 0x83, 0xf5, 0x76, 0x8f, 0xe2, 0x16, 0xec, 0xba, 0x29, 0x93, 0x9a, 0x74, 0x03, 0xf3, 0x2b, 0x06, 0x9b, 0xfc, 0x93, 0x2e,
+    0xf7, 0x11, 0x17, 0x25, 0x79, 0x2d, 0xb9, 0xd6, 0xbe, 0x74, 0xb7, 0x6c, 0x67, 0x31, 0xc8, 0x34, 0x1d, 0x64, 0xfd, 0x04, 0xb7, 0x95, 0xb1, 0xdc, 0x01, 0x7f, 0x21, 0xf1, 0x46, 0x1a, 0xf0, 0x8b
+};

+ 158 - 0
central_and_peripheral_secure_bootloader/arm5_no_packs/main.c

@@ -0,0 +1,158 @@
+/**
+ * Copyright (c) 2016 - 2020, Nordic Semiconductor ASA
+ *
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without modification,
+ * are permitted provided that the following conditions are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright notice, this
+ *    list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form, except as embedded into a Nordic
+ *    Semiconductor ASA integrated circuit in a product or a software update for
+ *    such product, must reproduce the above copyright notice, this list of
+ *    conditions and the following disclaimer in the documentation and/or other
+ *    materials provided with the distribution.
+ *
+ * 3. Neither the name of Nordic Semiconductor ASA nor the names of its
+ *    contributors may be used to endorse or promote products derived from this
+ *    software without specific prior written permission.
+ *
+ * 4. This software, with or without modification, must only be used with a
+ *    Nordic Semiconductor ASA integrated circuit.
+ *
+ * 5. Any software provided in binary form under this license must not be reverse
+ *    engineered, decompiled, modified and/or disassembled.
+ *
+ * THIS SOFTWARE IS PROVIDED BY NORDIC SEMICONDUCTOR ASA "AS IS" AND ANY EXPRESS
+ * OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+ * OF MERCHANTABILITY, NONINFRINGEMENT, AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED. IN NO EVENT SHALL NORDIC SEMICONDUCTOR ASA OR CONTRIBUTORS BE
+ * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+ * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ */
+/** @file
+ *
+ * @defgroup bootloader_secure_ble main.c
+ * @{
+ * @ingroup dfu_bootloader_api
+ * @brief Bootloader project main file for secure DFU.
+ *
+ */
+
+#include <stdint.h>
+#include "boards.h"
+#include "nrf_mbr.h"
+#include "nrf_bootloader.h"
+#include "nrf_bootloader_app_start.h"
+#include "nrf_bootloader_dfu_timers.h"
+#include "nrf_dfu.h"
+#include "nrf_log.h"
+#include "nrf_log_ctrl.h"
+#include "nrf_log_default_backends.h"
+#include "app_error.h"
+#include "app_error_weak.h"
+#include "nrf_bootloader_info.h"
+#include "nrf_delay.h"
+
+static void on_error(void)
+{
+    NRF_LOG_FINAL_FLUSH();
+
+#if NRF_MODULE_ENABLED(NRF_LOG_BACKEND_RTT)
+    // To allow the buffer to be flushed by the host.
+    nrf_delay_ms(100);
+#endif
+#ifdef NRF_DFU_DEBUG_VERSION
+    NRF_BREAKPOINT_COND;
+#endif
+    NVIC_SystemReset();
+}
+
+
+void app_error_handler(uint32_t error_code, uint32_t line_num, const uint8_t * p_file_name)
+{
+    NRF_LOG_ERROR("%s:%d", p_file_name, line_num);
+    on_error();
+}
+
+
+void app_error_fault_handler(uint32_t id, uint32_t pc, uint32_t info)
+{
+    NRF_LOG_ERROR("Received a fault! id: 0x%08x, pc: 0x%08x, info: 0x%08x", id, pc, info);
+    on_error();
+}
+
+
+void app_error_handler_bare(uint32_t error_code)
+{
+    NRF_LOG_ERROR("Received an error: 0x%08x!", error_code);
+    on_error();
+}
+
+/**
+ * @brief Function notifies certain events in DFU process.
+ */
+static void dfu_observer(nrf_dfu_evt_type_t evt_type)
+{
+    switch (evt_type)
+    {
+        case NRF_DFU_EVT_DFU_FAILED:
+        case NRF_DFU_EVT_DFU_ABORTED:
+        case NRF_DFU_EVT_DFU_INITIALIZED:
+//            bsp_board_init(BSP_INIT_LEDS);
+//            bsp_board_led_on(BSP_BOARD_LED_0);
+//            bsp_board_led_on(BSP_BOARD_LED_1);
+//            bsp_board_led_off(BSP_BOARD_LED_2);
+            break;
+        case NRF_DFU_EVT_TRANSPORT_ACTIVATED:
+//            bsp_board_led_off(BSP_BOARD_LED_1);
+//            bsp_board_led_on(BSP_BOARD_LED_2);
+            break;
+        case NRF_DFU_EVT_DFU_STARTED:
+            break;
+        default:
+            break;
+    }
+}
+
+
+/**@brief Function for application main entry. */
+int main(void)
+{
+    uint32_t ret_val;
+
+    // Must happen before flash protection is applied, since it edits a protected page.
+    nrf_bootloader_mbr_addrs_populate();
+
+    // Protect MBR and bootloader code from being overwritten.
+    ret_val = nrf_bootloader_flash_protect(0, MBR_SIZE);
+    APP_ERROR_CHECK(ret_val);
+    ret_val = nrf_bootloader_flash_protect(BOOTLOADER_START_ADDR, BOOTLOADER_SIZE);
+    APP_ERROR_CHECK(ret_val);
+
+    (void) NRF_LOG_INIT(nrf_bootloader_dfu_timer_counter_get);
+    NRF_LOG_DEFAULT_BACKENDS_INIT();
+
+    NRF_LOG_INFO("Inside main");
+
+    ret_val = nrf_bootloader_init(dfu_observer);
+    APP_ERROR_CHECK(ret_val);
+
+    NRF_LOG_FLUSH();
+
+    NRF_LOG_ERROR("After main, should never be reached.");
+    NRF_LOG_FLUSH();
+
+    APP_ERROR_CHECK_BOOL(false);
+}
+
+/**
+ * @}
+ */

+ 58 - 0
central_and_peripheral_secure_bootloader/arm5_no_packs/nrf_crypto_allocator.h

@@ -0,0 +1,58 @@
+/**
+ * Copyright (c) 2019 - 2020, Nordic Semiconductor ASA
+ *
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without modification,
+ * are permitted provided that the following conditions are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright notice, this
+ *    list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form, except as embedded into a Nordic
+ *    Semiconductor ASA integrated circuit in a product or a software update for
+ *    such product, must reproduce the above copyright notice, this list of
+ *    conditions and the following disclaimer in the documentation and/or other
+ *    materials provided with the distribution.
+ *
+ * 3. Neither the name of Nordic Semiconductor ASA nor the names of its
+ *    contributors may be used to endorse or promote products derived from this
+ *    software without specific prior written permission.
+ *
+ * 4. This software, with or without modification, must only be used with a
+ *    Nordic Semiconductor ASA integrated circuit.
+ *
+ * 5. Any software provided in binary form under this license must not be reverse
+ *    engineered, decompiled, modified and/or disassembled.
+ *
+ * THIS SOFTWARE IS PROVIDED BY NORDIC SEMICONDUCTOR ASA "AS IS" AND ANY EXPRESS
+ * OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+ * OF MERCHANTABILITY, NONINFRINGEMENT, AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED. IN NO EVENT SHALL NORDIC SEMICONDUCTOR ASA OR CONTRIBUTORS BE
+ * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+ * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ */
+#ifndef NRF_CRYPTO_ALLOCATOR_H__
+#define NRF_CRYPTO_ALLOCATOR_H__
+
+#include "nrf_assert.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* Crypto library in bootloader case does not use dynamic allocation */
+#define NRF_CRYPTO_ALLOC(size) NULL; ASSERT(0)
+#define NRF_CRYPTO_ALLOC_ON_STACK(size) NULL; ASSERT(0)
+#define NRF_CRYPTO_FREE(ptr) (void)ptr;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* NRF_CRYPTO_ALLOCATOR_H__ */

Різницю між файлами не показано, бо вона завелика
+ 113 - 0
central_and_peripheral_secure_bootloader/arm5_no_packs/secure_bootloader_ble_s132_pca10040.uvguix.Administrator


+ 1389 - 0
central_and_peripheral_secure_bootloader/arm5_no_packs/secure_bootloader_ble_s132_pca10040.uvoptx

@@ -0,0 +1,1389 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
+<ProjectOpt xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="project_optx.xsd">
+
+  <SchemaVersion>1.0</SchemaVersion>
+
+  <Header>### uVision Project, (C) Keil Software</Header>
+
+  <Extensions>
+    <cExt>*.c</cExt>
+    <aExt>*.s*; *.src; *.a*</aExt>
+    <oExt>*.obj; *.o</oExt>
+    <lExt>*.lib</lExt>
+    <tExt>*.txt; *.h; *.inc; *.md</tExt>
+    <pExt>*.plm</pExt>
+    <CppX>*.cpp</CppX>
+    <nMigrate>0</nMigrate>
+  </Extensions>
+
+  <DaveTm>
+    <dwLowDateTime>0</dwLowDateTime>
+    <dwHighDateTime>0</dwHighDateTime>
+  </DaveTm>
+
+  <Target>
+    <TargetName>nrf52832_xxaa_s132</TargetName>
+    <ToolsetNumber>0x4</ToolsetNumber>
+    <ToolsetName>ARM-ADS</ToolsetName>
+    <TargetOption>
+      <CLKADS>64000000</CLKADS>
+      <OPTTT>
+        <gFlags>1</gFlags>
+        <BeepAtEnd>1</BeepAtEnd>
+        <RunSim>0</RunSim>
+        <RunTarget>1</RunTarget>
+        <RunAbUc>0</RunAbUc>
+      </OPTTT>
+      <OPTHX>
+        <HexSelection>1</HexSelection>
+        <FlashByte>65535</FlashByte>
+        <HexRangeLowAddress>0</HexRangeLowAddress>
+        <HexRangeHighAddress>0</HexRangeHighAddress>
+        <HexOffset>0</HexOffset>
+      </OPTHX>
+      <OPTLEX>
+        <PageWidth>79</PageWidth>
+        <PageLength>66</PageLength>
+        <TabStop>8</TabStop>
+        <ListingPath>.\_build\</ListingPath>
+      </OPTLEX>
+      <ListingPage>
+        <CreateCListing>1</CreateCListing>
+        <CreateAListing>1</CreateAListing>
+        <CreateLListing>1</CreateLListing>
+        <CreateIListing>0</CreateIListing>
+        <AsmCond>1</AsmCond>
+        <AsmSymb>1</AsmSymb>
+        <AsmXref>0</AsmXref>
+        <CCond>1</CCond>
+        <CCode>0</CCode>
+        <CListInc>0</CListInc>
+        <CSymb>0</CSymb>
+        <LinkerCodeListing>0</LinkerCodeListing>
+      </ListingPage>
+      <OPTXL>
+        <LMap>1</LMap>
+        <LComments>1</LComments>
+        <LGenerateSymbols>1</LGenerateSymbols>
+        <LLibSym>1</LLibSym>
+        <LLines>1</LLines>
+        <LLocSym>1</LLocSym>
+        <LPubSym>1</LPubSym>
+        <LXref>0</LXref>
+        <LExpSel>0</LExpSel>
+      </OPTXL>
+      <OPTFL>
+        <tvExp>1</tvExp>
+        <tvExpOptDlg>0</tvExpOptDlg>
+        <IsCurrentTarget>1</IsCurrentTarget>
+      </OPTFL>
+      <CpuCode>5</CpuCode>
+      <DebugOpt>
+        <uSim>0</uSim>
+        <uTrg>1</uTrg>
+        <sLdApp>1</sLdApp>
+        <sGomain>1</sGomain>
+        <sRbreak>1</sRbreak>
+        <sRwatch>1</sRwatch>
+        <sRmem>1</sRmem>
+        <sRfunc>1</sRfunc>
+        <sRbox>1</sRbox>
+        <tLdApp>1</tLdApp>
+        <tGomain>1</tGomain>
+        <tRbreak>1</tRbreak>
+        <tRwatch>1</tRwatch>
+        <tRmem>1</tRmem>
+        <tRfunc>0</tRfunc>
+        <tRbox>1</tRbox>
+        <tRtrace>0</tRtrace>
+        <sRSysVw>1</sRSysVw>
+        <tRSysVw>1</tRSysVw>
+        <sRunDeb>0</sRunDeb>
+        <sLrtime>0</sLrtime>
+        <bEvRecOn>1</bEvRecOn>
+        <bSchkAxf>0</bSchkAxf>
+        <bTchkAxf>0</bTchkAxf>
+        <nTsel>4</nTsel>
+        <sDll></sDll>
+        <sDllPa></sDllPa>
+        <sDlgDll></sDlgDll>
+        <sDlgPa></sDlgPa>
+        <sIfile></sIfile>
+        <tDll></tDll>
+        <tDllPa></tDllPa>
+        <tDlgDll></tDlgDll>
+        <tDlgPa></tDlgPa>
+        <tIfile></tIfile>
+        <pMon>Segger\JL2CM3.dll</pMon>
+      </DebugOpt>
+      <TargetDriverDllRegistry>
+        <SetRegEntry>
+          <Number>0</Number>
+          <Key>JL2CM3</Key>
+          <Name>-U408001579 -O78 -S0 -A0 -C0 -JU1 -JI127.0.0.1 -JP0 -RST0 -N00("ARM CoreSight SW-DP") -D00(0BB11477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -TB1 -TFE0 -FO15 -FD20000000 -FC2000 -FN2 -FF0nrf52xxx.flm -FS00 -FL0200000 -FP0($$Device:nRF52832_xxAA$Flash\nrf52xxx.flm) -FF1nrf52xxx_uicr -FS110001000 -FL11000 -FP1($$Device:nRF52832_xxAA$Flash\nrf52xxx_uicr.flm)</Name>
+        </SetRegEntry>
+        <SetRegEntry>
+          <Number>0</Number>
+          <Key>UL2CM3</Key>
+          <Name>UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0nrf52xxx -FS00 -FL0200000 -FP0($$Device:nRF52832_xxAA$Flash\nrf52xxx))</Name>
+        </SetRegEntry>
+      </TargetDriverDllRegistry>
+      <Breakpoint/>
+      <Tracepoint>
+        <THDelay>0</THDelay>
+      </Tracepoint>
+      <DebugFlag>
+        <trace>0</trace>
+        <periodic>0</periodic>
+        <aLwin>0</aLwin>
+        <aCover>0</aCover>
+        <aSer1>0</aSer1>
+        <aSer2>0</aSer2>
+        <aPa>0</aPa>
+        <viewmode>0</viewmode>
+        <vrSel>0</vrSel>
+        <aSym>0</aSym>
+        <aTbox>0</aTbox>
+        <AscS1>0</AscS1>
+        <AscS2>0</AscS2>
+        <AscS3>0</AscS3>
+        <aSer3>0</aSer3>
+        <eProf>0</eProf>
+        <aLa>0</aLa>
+        <aPa1>0</aPa1>
+        <AscS4>0</AscS4>
+        <aSer4>0</aSer4>
+        <StkLoc>0</StkLoc>
+        <TrcWin>0</TrcWin>
+        <newCpu>0</newCpu>
+        <uProt>0</uProt>
+      </DebugFlag>
+      <LintExecutable></LintExecutable>
+      <LintConfigFile></LintConfigFile>
+      <bLintAuto>0</bLintAuto>
+      <bAutoGenD>0</bAutoGenD>
+      <LntExFlags>0</LntExFlags>
+      <pMisraName></pMisraName>
+      <pszMrule></pszMrule>
+      <pSingCmds></pSingCmds>
+      <pMultCmds></pMultCmds>
+      <pMisraNamep></pMisraNamep>
+      <pszMrulep></pszMrulep>
+      <pSingCmdsp></pSingCmdsp>
+      <pMultCmdsp></pMultCmdsp>
+      <DebugDescription>
+        <Enable>1</Enable>
+        <EnableFlashSeq>0</EnableFlashSeq>
+        <EnableLog>0</EnableLog>
+        <Protocol>2</Protocol>
+        <DbgClock>10000000</DbgClock>
+      </DebugDescription>
+    </TargetOption>
+  </Target>
+
+  <Target>
+    <TargetName>flash_s132_nrf52_7.0.1_softdevice</TargetName>
+    <ToolsetNumber>0x4</ToolsetNumber>
+    <ToolsetName>ARM-ADS</ToolsetName>
+    <TargetOption>
+      <CLKADS>64000000</CLKADS>
+      <OPTTT>
+        <gFlags>1</gFlags>
+        <BeepAtEnd>1</BeepAtEnd>
+        <RunSim>0</RunSim>
+        <RunTarget>1</RunTarget>
+        <RunAbUc>0</RunAbUc>
+      </OPTTT>
+      <OPTHX>
+        <HexSelection>1</HexSelection>
+        <FlashByte>65535</FlashByte>
+        <HexRangeLowAddress>0</HexRangeLowAddress>
+        <HexRangeHighAddress>0</HexRangeHighAddress>
+        <HexOffset>0</HexOffset>
+      </OPTHX>
+      <OPTLEX>
+        <PageWidth>79</PageWidth>
+        <PageLength>66</PageLength>
+        <TabStop>8</TabStop>
+        <ListingPath>.\_build\</ListingPath>
+      </OPTLEX>
+      <ListingPage>
+        <CreateCListing>1</CreateCListing>
+        <CreateAListing>1</CreateAListing>
+        <CreateLListing>1</CreateLListing>
+        <CreateIListing>0</CreateIListing>
+        <AsmCond>1</AsmCond>
+        <AsmSymb>1</AsmSymb>
+        <AsmXref>0</AsmXref>
+        <CCond>1</CCond>
+        <CCode>0</CCode>
+        <CListInc>0</CListInc>
+        <CSymb>0</CSymb>
+        <LinkerCodeListing>0</LinkerCodeListing>
+      </ListingPage>
+      <OPTXL>
+        <LMap>1</LMap>
+        <LComments>1</LComments>
+        <LGenerateSymbols>1</LGenerateSymbols>
+        <LLibSym>1</LLibSym>
+        <LLines>1</LLines>
+        <LLocSym>1</LLocSym>
+        <LPubSym>1</LPubSym>
+        <LXref>0</LXref>
+        <LExpSel>0</LExpSel>
+      </OPTXL>
+      <OPTFL>
+        <tvExp>0</tvExp>
+        <tvExpOptDlg>0</tvExpOptDlg>
+        <IsCurrentTarget>0</IsCurrentTarget>
+      </OPTFL>
+      <CpuCode>5</CpuCode>
+      <DebugOpt>
+        <uSim>0</uSim>
+        <uTrg>1</uTrg>
+        <sLdApp>1</sLdApp>
+        <sGomain>1</sGomain>
+        <sRbreak>1</sRbreak>
+        <sRwatch>1</sRwatch>
+        <sRmem>1</sRmem>
+        <sRfunc>1</sRfunc>
+        <sRbox>1</sRbox>
+        <tLdApp>1</tLdApp>
+        <tGomain>1</tGomain>
+        <tRbreak>1</tRbreak>
+        <tRwatch>1</tRwatch>
+        <tRmem>1</tRmem>
+        <tRfunc>0</tRfunc>
+        <tRbox>1</tRbox>
+        <tRtrace>0</tRtrace>
+        <sRSysVw>1</sRSysVw>
+        <tRSysVw>1</tRSysVw>
+        <sRunDeb>0</sRunDeb>
+        <sLrtime>0</sLrtime>
+        <bEvRecOn>1</bEvRecOn>
+        <bSchkAxf>0</bSchkAxf>
+        <bTchkAxf>0</bTchkAxf>
+        <nTsel>7</nTsel>
+        <sDll></sDll>
+        <sDllPa></sDllPa>
+        <sDlgDll></sDlgDll>
+        <sDlgPa></sDlgPa>
+        <sIfile></sIfile>
+        <tDll></tDll>
+        <tDllPa></tDllPa>
+        <tDlgDll></tDlgDll>
+        <tDlgPa></tDlgPa>
+        <tIfile></tIfile>
+        <pMon>Segger\JL2CM3.dll</pMon>
+      </DebugOpt>
+      <TargetDriverDllRegistry>
+        <SetRegEntry>
+          <Number>0</Number>
+          <Key>JL2CM3</Key>
+          <Name>-U408001579 -O78 -S0 -A0 -C0 -JU1 -JI127.0.0.1 -JP0 -RST0 -N00("ARM CoreSight SW-DP") -D00(0BB11477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -TB1 -TFE0 -FO15 -FD20000000 -FC2000 -FN2 -FF0nrf52xxx.flm -FS00 -FL0200000 -FP0($$Device:nRF52832_xxAA$Flash\nrf52xxx.flm) -FF1nrf52xxx_uicr -FS110001000 -FL11000 -FP1($$Device:nRF52832_xxAA$Flash\nrf52xxx_uicr.flm)</Name>
+        </SetRegEntry>
+        <SetRegEntry>
+          <Number>0</Number>
+          <Key>UL2CM3</Key>
+          <Name>UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0nrf52xxx -FS00 -FL0200000 -FP0($$Device:nRF52832_xxAA$Flash\nrf52xxx))</Name>
+        </SetRegEntry>
+      </TargetDriverDllRegistry>
+      <Breakpoint/>
+      <Tracepoint>
+        <THDelay>0</THDelay>
+      </Tracepoint>
+      <DebugFlag>
+        <trace>0</trace>
+        <periodic>0</periodic>
+        <aLwin>0</aLwin>
+        <aCover>0</aCover>
+        <aSer1>0</aSer1>
+        <aSer2>0</aSer2>
+        <aPa>0</aPa>
+        <viewmode>0</viewmode>
+        <vrSel>0</vrSel>
+        <aSym>0</aSym>
+        <aTbox>0</aTbox>
+        <AscS1>0</AscS1>
+        <AscS2>0</AscS2>
+        <AscS3>0</AscS3>
+        <aSer3>0</aSer3>
+        <eProf>0</eProf>
+        <aLa>0</aLa>
+        <aPa1>0</aPa1>
+        <AscS4>0</AscS4>
+        <aSer4>0</aSer4>
+        <StkLoc>0</StkLoc>
+        <TrcWin>0</TrcWin>
+        <newCpu>0</newCpu>
+        <uProt>0</uProt>
+      </DebugFlag>
+      <LintExecutable></LintExecutable>
+      <LintConfigFile></LintConfigFile>
+      <bLintAuto>0</bLintAuto>
+      <bAutoGenD>0</bAutoGenD>
+      <LntExFlags>0</LntExFlags>
+      <pMisraName></pMisraName>
+      <pszMrule></pszMrule>
+      <pSingCmds></pSingCmds>
+      <pMultCmds></pMultCmds>
+      <pMisraNamep></pMisraNamep>
+      <pszMrulep></pszMrulep>
+      <pSingCmdsp></pSingCmdsp>
+      <pMultCmdsp></pMultCmdsp>
+    </TargetOption>
+  </Target>
+
+  <Group>
+    <GroupName>Application</GroupName>
+    <tvExp>1</tvExp>
+    <tvExpOptDlg>0</tvExpOptDlg>
+    <cbSel>0</cbSel>
+    <RteFlg>0</RteFlg>
+    <File>
+      <GroupNumber>1</GroupNumber>
+      <FileNumber>1</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>.\main.c</PathWithFileName>
+      <FilenameWithoutPath>main.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>1</GroupNumber>
+      <FileNumber>2</FileNumber>
+      <FileType>5</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\config\sdk_config.h</PathWithFileName>
+      <FilenameWithoutPath>sdk_config.h</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>1</GroupNumber>
+      <FileNumber>3</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>.\dfu_public_key.c</PathWithFileName>
+      <FilenameWithoutPath>dfu_public_key.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+  </Group>
+
+  <Group>
+    <GroupName>Board Definition</GroupName>
+    <tvExp>1</tvExp>
+    <tvExpOptDlg>0</tvExpOptDlg>
+    <cbSel>0</cbSel>
+    <RteFlg>0</RteFlg>
+    <File>
+      <GroupNumber>2</GroupNumber>
+      <FileNumber>4</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\boards\boards.c</PathWithFileName>
+      <FilenameWithoutPath>boards.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+  </Group>
+
+  <Group>
+    <GroupName>nRF_BLE</GroupName>
+    <tvExp>1</tvExp>
+    <tvExpOptDlg>0</tvExpOptDlg>
+    <cbSel>0</cbSel>
+    <RteFlg>0</RteFlg>
+    <File>
+      <GroupNumber>3</GroupNumber>
+      <FileNumber>5</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\ble\common\ble_srv_common.c</PathWithFileName>
+      <FilenameWithoutPath>ble_srv_common.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+  </Group>
+
+  <Group>
+    <GroupName>nRF_Bootloader</GroupName>
+    <tvExp>1</tvExp>
+    <tvExpOptDlg>0</tvExpOptDlg>
+    <cbSel>0</cbSel>
+    <RteFlg>0</RteFlg>
+    <File>
+      <GroupNumber>4</GroupNumber>
+      <FileNumber>6</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\bootloader\nrf_bootloader.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_bootloader.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>4</GroupNumber>
+      <FileNumber>7</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\bootloader\nrf_bootloader_app_start.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_bootloader_app_start.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>4</GroupNumber>
+      <FileNumber>8</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\bootloader\nrf_bootloader_app_start_final.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_bootloader_app_start_final.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>4</GroupNumber>
+      <FileNumber>9</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\bootloader\nrf_bootloader_dfu_timers.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_bootloader_dfu_timers.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>4</GroupNumber>
+      <FileNumber>10</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\bootloader\nrf_bootloader_fw_activation.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_bootloader_fw_activation.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>4</GroupNumber>
+      <FileNumber>11</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\bootloader\nrf_bootloader_info.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_bootloader_info.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>4</GroupNumber>
+      <FileNumber>12</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\bootloader\nrf_bootloader_wdt.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_bootloader_wdt.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+  </Group>
+
+  <Group>
+    <GroupName>nRF_Crypto</GroupName>
+    <tvExp>0</tvExp>
+    <tvExpOptDlg>0</tvExpOptDlg>
+    <cbSel>0</cbSel>
+    <RteFlg>0</RteFlg>
+    <File>
+      <GroupNumber>5</GroupNumber>
+      <FileNumber>13</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\crypto\nrf_crypto_ecc.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_crypto_ecc.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>5</GroupNumber>
+      <FileNumber>14</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\crypto\nrf_crypto_ecdsa.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_crypto_ecdsa.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>5</GroupNumber>
+      <FileNumber>15</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\crypto\nrf_crypto_hash.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_crypto_hash.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>5</GroupNumber>
+      <FileNumber>16</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\crypto\nrf_crypto_init.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_crypto_init.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>5</GroupNumber>
+      <FileNumber>17</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\crypto\nrf_crypto_shared.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_crypto_shared.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+  </Group>
+
+  <Group>
+    <GroupName>nRF_Crypto backend Oberon</GroupName>
+    <tvExp>0</tvExp>
+    <tvExpOptDlg>0</tvExpOptDlg>
+    <cbSel>0</cbSel>
+    <RteFlg>0</RteFlg>
+    <File>
+      <GroupNumber>6</GroupNumber>
+      <FileNumber>18</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\crypto\backend\oberon\oberon_backend_chacha_poly_aead.c</PathWithFileName>
+      <FilenameWithoutPath>oberon_backend_chacha_poly_aead.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>6</GroupNumber>
+      <FileNumber>19</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\crypto\backend\oberon\oberon_backend_ecc.c</PathWithFileName>
+      <FilenameWithoutPath>oberon_backend_ecc.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>6</GroupNumber>
+      <FileNumber>20</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\crypto\backend\oberon\oberon_backend_ecdh.c</PathWithFileName>
+      <FilenameWithoutPath>oberon_backend_ecdh.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>6</GroupNumber>
+      <FileNumber>21</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\crypto\backend\oberon\oberon_backend_ecdsa.c</PathWithFileName>
+      <FilenameWithoutPath>oberon_backend_ecdsa.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>6</GroupNumber>
+      <FileNumber>22</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\crypto\backend\oberon\oberon_backend_eddsa.c</PathWithFileName>
+      <FilenameWithoutPath>oberon_backend_eddsa.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>6</GroupNumber>
+      <FileNumber>23</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\crypto\backend\oberon\oberon_backend_hash.c</PathWithFileName>
+      <FilenameWithoutPath>oberon_backend_hash.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>6</GroupNumber>
+      <FileNumber>24</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\crypto\backend\oberon\oberon_backend_hmac.c</PathWithFileName>
+      <FilenameWithoutPath>oberon_backend_hmac.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+  </Group>
+
+  <Group>
+    <GroupName>nRF_Crypto backend nRF sw</GroupName>
+    <tvExp>0</tvExp>
+    <tvExpOptDlg>0</tvExpOptDlg>
+    <cbSel>0</cbSel>
+    <RteFlg>0</RteFlg>
+    <File>
+      <GroupNumber>7</GroupNumber>
+      <FileNumber>25</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\crypto\backend\nrf_sw\nrf_sw_backend_hash.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_sw_backend_hash.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+  </Group>
+
+  <Group>
+    <GroupName>nRF_Crypto backend uECC</GroupName>
+    <tvExp>0</tvExp>
+    <tvExpOptDlg>0</tvExpOptDlg>
+    <cbSel>0</cbSel>
+    <RteFlg>0</RteFlg>
+    <File>
+      <GroupNumber>8</GroupNumber>
+      <FileNumber>26</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\crypto\backend\micro_ecc\micro_ecc_backend_ecc.c</PathWithFileName>
+      <FilenameWithoutPath>micro_ecc_backend_ecc.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>8</GroupNumber>
+      <FileNumber>27</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\crypto\backend\micro_ecc\micro_ecc_backend_ecdh.c</PathWithFileName>
+      <FilenameWithoutPath>micro_ecc_backend_ecdh.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>8</GroupNumber>
+      <FileNumber>28</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\crypto\backend\micro_ecc\micro_ecc_backend_ecdsa.c</PathWithFileName>
+      <FilenameWithoutPath>micro_ecc_backend_ecdsa.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+  </Group>
+
+  <Group>
+    <GroupName>nRF_DFU</GroupName>
+    <tvExp>0</tvExp>
+    <tvExpOptDlg>0</tvExpOptDlg>
+    <cbSel>0</cbSel>
+    <RteFlg>0</RteFlg>
+    <File>
+      <GroupNumber>9</GroupNumber>
+      <FileNumber>29</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\bootloader\dfu\dfu-cc.pb.c</PathWithFileName>
+      <FilenameWithoutPath>dfu-cc.pb.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>9</GroupNumber>
+      <FileNumber>30</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\bootloader\dfu\nrf_dfu.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_dfu.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>9</GroupNumber>
+      <FileNumber>31</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\bootloader\ble_dfu\nrf_dfu_ble.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_dfu_ble.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>9</GroupNumber>
+      <FileNumber>32</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\bootloader\dfu\nrf_dfu_flash.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_dfu_flash.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>9</GroupNumber>
+      <FileNumber>33</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\bootloader\dfu\nrf_dfu_handling_error.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_dfu_handling_error.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>9</GroupNumber>
+      <FileNumber>34</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\bootloader\dfu\nrf_dfu_mbr.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_dfu_mbr.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>9</GroupNumber>
+      <FileNumber>35</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\bootloader\dfu\nrf_dfu_req_handler.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_dfu_req_handler.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>9</GroupNumber>
+      <FileNumber>36</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\bootloader\dfu\nrf_dfu_settings.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_dfu_settings.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>9</GroupNumber>
+      <FileNumber>37</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\bootloader\dfu\nrf_dfu_settings_svci.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_dfu_settings_svci.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>9</GroupNumber>
+      <FileNumber>38</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\bootloader\dfu\nrf_dfu_transport.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_dfu_transport.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>9</GroupNumber>
+      <FileNumber>39</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\bootloader\dfu\nrf_dfu_utils.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_dfu_utils.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>9</GroupNumber>
+      <FileNumber>40</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\bootloader\dfu\nrf_dfu_validation.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_dfu_validation.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>9</GroupNumber>
+      <FileNumber>41</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\bootloader\dfu\nrf_dfu_ver_validation.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_dfu_ver_validation.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+  </Group>
+
+  <Group>
+    <GroupName>nRF_Drivers</GroupName>
+    <tvExp>0</tvExp>
+    <tvExpOptDlg>0</tvExpOptDlg>
+    <cbSel>0</cbSel>
+    <RteFlg>0</RteFlg>
+    <File>
+      <GroupNumber>10</GroupNumber>
+      <FileNumber>42</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\modules\nrfx\hal\nrf_nvmc.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_nvmc.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>10</GroupNumber>
+      <FileNumber>43</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\modules\nrfx\soc\nrfx_atomic.c</PathWithFileName>
+      <FilenameWithoutPath>nrfx_atomic.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+  </Group>
+
+  <Group>
+    <GroupName>nRF_Libraries</GroupName>
+    <tvExp>0</tvExp>
+    <tvExpOptDlg>0</tvExpOptDlg>
+    <cbSel>0</cbSel>
+    <RteFlg>0</RteFlg>
+    <File>
+      <GroupNumber>11</GroupNumber>
+      <FileNumber>44</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\util\app_error_weak.c</PathWithFileName>
+      <FilenameWithoutPath>app_error_weak.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>11</GroupNumber>
+      <FileNumber>45</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\scheduler\app_scheduler.c</PathWithFileName>
+      <FilenameWithoutPath>app_scheduler.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>11</GroupNumber>
+      <FileNumber>46</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\util\app_util_platform.c</PathWithFileName>
+      <FilenameWithoutPath>app_util_platform.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>11</GroupNumber>
+      <FileNumber>47</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\crc32\crc32.c</PathWithFileName>
+      <FilenameWithoutPath>crc32.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>11</GroupNumber>
+      <FileNumber>48</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\mem_manager\mem_manager.c</PathWithFileName>
+      <FilenameWithoutPath>mem_manager.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>11</GroupNumber>
+      <FileNumber>49</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\util\nrf_assert.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_assert.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>11</GroupNumber>
+      <FileNumber>50</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\atomic_fifo\nrf_atfifo.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_atfifo.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>11</GroupNumber>
+      <FileNumber>51</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\atomic\nrf_atomic.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_atomic.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>11</GroupNumber>
+      <FileNumber>52</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\balloc\nrf_balloc.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_balloc.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>11</GroupNumber>
+      <FileNumber>53</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\external\fprintf\nrf_fprintf.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_fprintf.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>11</GroupNumber>
+      <FileNumber>54</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\external\fprintf\nrf_fprintf_format.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_fprintf_format.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>11</GroupNumber>
+      <FileNumber>55</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\fstorage\nrf_fstorage.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_fstorage.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>11</GroupNumber>
+      <FileNumber>56</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\fstorage\nrf_fstorage_nvmc.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_fstorage_nvmc.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>11</GroupNumber>
+      <FileNumber>57</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\fstorage\nrf_fstorage_sd.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_fstorage_sd.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>11</GroupNumber>
+      <FileNumber>58</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\memobj\nrf_memobj.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_memobj.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>11</GroupNumber>
+      <FileNumber>59</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\queue\nrf_queue.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_queue.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>11</GroupNumber>
+      <FileNumber>60</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\ringbuf\nrf_ringbuf.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_ringbuf.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>11</GroupNumber>
+      <FileNumber>61</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\experimental_section_vars\nrf_section_iter.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_section_iter.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>11</GroupNumber>
+      <FileNumber>62</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\strerror\nrf_strerror.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_strerror.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>11</GroupNumber>
+      <FileNumber>63</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\sha256\sha256.c</PathWithFileName>
+      <FilenameWithoutPath>sha256.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+  </Group>
+
+  <Group>
+    <GroupName>nRF_Log</GroupName>
+    <tvExp>0</tvExp>
+    <tvExpOptDlg>0</tvExpOptDlg>
+    <cbSel>0</cbSel>
+    <RteFlg>0</RteFlg>
+    <File>
+      <GroupNumber>12</GroupNumber>
+      <FileNumber>64</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\log\src\nrf_log_frontend.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_log_frontend.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>12</GroupNumber>
+      <FileNumber>65</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\log\src\nrf_log_str_formatter.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_log_str_formatter.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+  </Group>
+
+  <Group>
+    <GroupName>nRF_Oberon_Crypto</GroupName>
+    <tvExp>1</tvExp>
+    <tvExpOptDlg>0</tvExpOptDlg>
+    <cbSel>0</cbSel>
+    <RteFlg>0</RteFlg>
+    <File>
+      <GroupNumber>13</GroupNumber>
+      <FileNumber>66</FileNumber>
+      <FileType>4</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\external\nrf_oberon\lib\cortex-m4\hard-float\short-wchar\oberon_3.0.5.lib</PathWithFileName>
+      <FilenameWithoutPath>oberon_3.0.5.lib</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+  </Group>
+
+  <Group>
+    <GroupName>nRF_SVC</GroupName>
+    <tvExp>1</tvExp>
+    <tvExpOptDlg>0</tvExpOptDlg>
+    <cbSel>0</cbSel>
+    <RteFlg>0</RteFlg>
+    <File>
+      <GroupNumber>14</GroupNumber>
+      <FileNumber>67</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\bootloader\dfu\nrf_dfu_svci.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_dfu_svci.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>14</GroupNumber>
+      <FileNumber>68</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\bootloader\dfu\nrf_dfu_svci_handler.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_dfu_svci_handler.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>14</GroupNumber>
+      <FileNumber>69</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\svc\nrf_svc_handler.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_svc_handler.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+  </Group>
+
+  <Group>
+    <GroupName>nRF_SoftDevice</GroupName>
+    <tvExp>1</tvExp>
+    <tvExpOptDlg>0</tvExpOptDlg>
+    <cbSel>0</cbSel>
+    <RteFlg>0</RteFlg>
+    <File>
+      <GroupNumber>15</GroupNumber>
+      <FileNumber>70</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\softdevice\common\nrf_sdh.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_sdh.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>15</GroupNumber>
+      <FileNumber>71</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\softdevice\common\nrf_sdh_ble.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_sdh_ble.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>15</GroupNumber>
+      <FileNumber>72</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\softdevice\common\nrf_sdh_soc.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_sdh_soc.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+  </Group>
+
+  <Group>
+    <GroupName>nRF_micro-ecc</GroupName>
+    <tvExp>1</tvExp>
+    <tvExpOptDlg>0</tvExpOptDlg>
+    <cbSel>0</cbSel>
+    <RteFlg>0</RteFlg>
+    <File>
+      <GroupNumber>16</GroupNumber>
+      <FileNumber>73</FileNumber>
+      <FileType>4</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\external\micro-ecc\nrf52hf_keil\armgcc\micro_ecc_lib_nrf52.lib</PathWithFileName>
+      <FilenameWithoutPath>micro_ecc_lib_nrf52.lib</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+  </Group>
+
+  <Group>
+    <GroupName>nano-pb</GroupName>
+    <tvExp>0</tvExp>
+    <tvExpOptDlg>0</tvExpOptDlg>
+    <cbSel>0</cbSel>
+    <RteFlg>0</RteFlg>
+    <File>
+      <GroupNumber>17</GroupNumber>
+      <FileNumber>74</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\external\nano-pb\pb_common.c</PathWithFileName>
+      <FilenameWithoutPath>pb_common.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>17</GroupNumber>
+      <FileNumber>75</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\external\nano-pb\pb_decode.c</PathWithFileName>
+      <FilenameWithoutPath>pb_decode.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+  </Group>
+
+  <Group>
+    <GroupName>::CMSIS</GroupName>
+    <tvExp>0</tvExp>
+    <tvExpOptDlg>0</tvExpOptDlg>
+    <cbSel>0</cbSel>
+    <RteFlg>1</RteFlg>
+  </Group>
+
+  <Group>
+    <GroupName>::Device</GroupName>
+    <tvExp>0</tvExp>
+    <tvExpOptDlg>0</tvExpOptDlg>
+    <cbSel>0</cbSel>
+    <RteFlg>1</RteFlg>
+  </Group>
+
+</ProjectOpt>

Різницю між файлами не показано, бо вона завелика
+ 341 - 0
central_and_peripheral_secure_bootloader/arm5_no_packs/secure_bootloader_ble_s132_pca10040.uvprojx


+ 262 - 0
central_and_peripheral_secure_bootloader/armgcc/Makefile

@@ -0,0 +1,262 @@
+PROJECT_NAME     := secure_bootloader_ble_s132_pca10040
+TARGETS          := nrf52832_xxaa_s132
+OUTPUT_DIRECTORY := _build
+
+SDK_ROOT := ../../../../..
+PROJ_DIR := ../..
+
+$(OUTPUT_DIRECTORY)/nrf52832_xxaa_s132.out: \
+  LINKER_SCRIPT  := secure_bootloader_gcc_nrf52.ld
+
+# Source files common to all targets
+SRC_FILES += \
+  $(SDK_ROOT)/modules/nrfx/mdk/gcc_startup_nrf52.S \
+  $(SDK_ROOT)/modules/nrfx/mdk/system_nrf52.c \
+  $(SDK_ROOT)/components/libraries/log/src/nrf_log_frontend.c \
+  $(SDK_ROOT)/components/libraries/log/src/nrf_log_str_formatter.c \
+  $(SDK_ROOT)/components/libraries/util/app_error_weak.c \
+  $(SDK_ROOT)/components/libraries/scheduler/app_scheduler.c \
+  $(SDK_ROOT)/components/libraries/util/app_util_platform.c \
+  $(SDK_ROOT)/components/libraries/crc32/crc32.c \
+  $(SDK_ROOT)/components/libraries/mem_manager/mem_manager.c \
+  $(SDK_ROOT)/components/libraries/util/nrf_assert.c \
+  $(SDK_ROOT)/components/libraries/atomic_fifo/nrf_atfifo.c \
+  $(SDK_ROOT)/components/libraries/atomic/nrf_atomic.c \
+  $(SDK_ROOT)/components/libraries/balloc/nrf_balloc.c \
+  $(SDK_ROOT)/external/fprintf/nrf_fprintf.c \
+  $(SDK_ROOT)/external/fprintf/nrf_fprintf_format.c \
+  $(SDK_ROOT)/components/libraries/fstorage/nrf_fstorage.c \
+  $(SDK_ROOT)/components/libraries/fstorage/nrf_fstorage_nvmc.c \
+  $(SDK_ROOT)/components/libraries/fstorage/nrf_fstorage_sd.c \
+  $(SDK_ROOT)/components/libraries/memobj/nrf_memobj.c \
+  $(SDK_ROOT)/components/libraries/queue/nrf_queue.c \
+  $(SDK_ROOT)/components/libraries/ringbuf/nrf_ringbuf.c \
+  $(SDK_ROOT)/components/libraries/experimental_section_vars/nrf_section_iter.c \
+  $(SDK_ROOT)/components/libraries/strerror/nrf_strerror.c \
+  $(SDK_ROOT)/components/libraries/sha256/sha256.c \
+  $(SDK_ROOT)/components/libraries/crypto/backend/micro_ecc/micro_ecc_backend_ecc.c \
+  $(SDK_ROOT)/components/libraries/crypto/backend/micro_ecc/micro_ecc_backend_ecdh.c \
+  $(SDK_ROOT)/components/libraries/crypto/backend/micro_ecc/micro_ecc_backend_ecdsa.c \
+  $(SDK_ROOT)/components/boards/boards.c \
+  $(SDK_ROOT)/modules/nrfx/hal/nrf_nvmc.c \
+  $(SDK_ROOT)/modules/nrfx/soc/nrfx_atomic.c \
+  $(SDK_ROOT)/components/libraries/crypto/nrf_crypto_ecc.c \
+  $(SDK_ROOT)/components/libraries/crypto/nrf_crypto_ecdsa.c \
+  $(SDK_ROOT)/components/libraries/crypto/nrf_crypto_hash.c \
+  $(SDK_ROOT)/components/libraries/crypto/nrf_crypto_init.c \
+  $(SDK_ROOT)/components/libraries/crypto/nrf_crypto_shared.c \
+  $(PROJ_DIR)/../dfu_public_key.c \
+  $(PROJ_DIR)/main.c \
+  $(SDK_ROOT)/components/ble/common/ble_srv_common.c \
+  $(SDK_ROOT)/components/libraries/bootloader/nrf_bootloader.c \
+  $(SDK_ROOT)/components/libraries/bootloader/nrf_bootloader_app_start.c \
+  $(SDK_ROOT)/components/libraries/bootloader/nrf_bootloader_app_start_final.c \
+  $(SDK_ROOT)/components/libraries/bootloader/nrf_bootloader_dfu_timers.c \
+  $(SDK_ROOT)/components/libraries/bootloader/nrf_bootloader_fw_activation.c \
+  $(SDK_ROOT)/components/libraries/bootloader/nrf_bootloader_info.c \
+  $(SDK_ROOT)/components/libraries/bootloader/nrf_bootloader_wdt.c \
+  $(SDK_ROOT)/external/nano-pb/pb_common.c \
+  $(SDK_ROOT)/external/nano-pb/pb_decode.c \
+  $(SDK_ROOT)/components/libraries/crypto/backend/nrf_sw/nrf_sw_backend_hash.c \
+  $(SDK_ROOT)/components/libraries/bootloader/dfu/dfu-cc.pb.c \
+  $(SDK_ROOT)/components/libraries/bootloader/dfu/nrf_dfu.c \
+  $(SDK_ROOT)/components/libraries/bootloader/ble_dfu/nrf_dfu_ble.c \
+  $(SDK_ROOT)/components/libraries/bootloader/dfu/nrf_dfu_flash.c \
+  $(SDK_ROOT)/components/libraries/bootloader/dfu/nrf_dfu_handling_error.c \
+  $(SDK_ROOT)/components/libraries/bootloader/dfu/nrf_dfu_mbr.c \
+  $(SDK_ROOT)/components/libraries/bootloader/dfu/nrf_dfu_req_handler.c \
+  $(SDK_ROOT)/components/libraries/bootloader/dfu/nrf_dfu_settings.c \
+  $(SDK_ROOT)/components/libraries/bootloader/dfu/nrf_dfu_settings_svci.c \
+  $(SDK_ROOT)/components/libraries/bootloader/dfu/nrf_dfu_transport.c \
+  $(SDK_ROOT)/components/libraries/bootloader/dfu/nrf_dfu_utils.c \
+  $(SDK_ROOT)/components/libraries/bootloader/dfu/nrf_dfu_validation.c \
+  $(SDK_ROOT)/components/libraries/bootloader/dfu/nrf_dfu_ver_validation.c \
+  $(SDK_ROOT)/components/libraries/bootloader/dfu/nrf_dfu_svci.c \
+  $(SDK_ROOT)/components/libraries/bootloader/dfu/nrf_dfu_svci_handler.c \
+  $(SDK_ROOT)/components/libraries/svc/nrf_svc_handler.c \
+  $(SDK_ROOT)/components/softdevice/common/nrf_sdh.c \
+  $(SDK_ROOT)/components/softdevice/common/nrf_sdh_ble.c \
+  $(SDK_ROOT)/components/softdevice/common/nrf_sdh_soc.c \
+  $(SDK_ROOT)/components/libraries/crypto/backend/oberon/oberon_backend_chacha_poly_aead.c \
+  $(SDK_ROOT)/components/libraries/crypto/backend/oberon/oberon_backend_ecc.c \
+  $(SDK_ROOT)/components/libraries/crypto/backend/oberon/oberon_backend_ecdh.c \
+  $(SDK_ROOT)/components/libraries/crypto/backend/oberon/oberon_backend_ecdsa.c \
+  $(SDK_ROOT)/components/libraries/crypto/backend/oberon/oberon_backend_eddsa.c \
+  $(SDK_ROOT)/components/libraries/crypto/backend/oberon/oberon_backend_hash.c \
+  $(SDK_ROOT)/components/libraries/crypto/backend/oberon/oberon_backend_hmac.c \
+
+# Include folders common to all targets
+INC_FOLDERS += \
+  $(SDK_ROOT)/components/libraries/crypto/backend/micro_ecc \
+  $(SDK_ROOT)/components/softdevice/s132/headers \
+  $(SDK_ROOT)/components/libraries/memobj \
+  $(SDK_ROOT)/components/libraries/sha256 \
+  $(SDK_ROOT)/components/libraries/crc32 \
+  $(SDK_ROOT)/components/libraries/experimental_section_vars \
+  $(SDK_ROOT)/components/libraries/mem_manager \
+  $(SDK_ROOT)/components/libraries/fstorage \
+  $(SDK_ROOT)/components/libraries/util \
+  $(SDK_ROOT)/modules/nrfx \
+  $(SDK_ROOT)/external/nrf_oberon/include \
+  $(SDK_ROOT)/components/libraries/crypto/backend/oberon \
+  $(SDK_ROOT)/components/libraries/crypto/backend/cifra \
+  $(SDK_ROOT)/components/libraries/atomic \
+  $(SDK_ROOT)/integration/nrfx \
+  $(SDK_ROOT)/components/libraries/crypto/backend/cc310_bl \
+  $(SDK_ROOT)/components/softdevice/s132/headers/nrf52 \
+  $(SDK_ROOT)/components/libraries/log/src \
+  $(SDK_ROOT)/components/libraries/bootloader/dfu \
+  $(SDK_ROOT)/components/ble/common \
+  $(SDK_ROOT)/components/libraries/delay \
+  $(SDK_ROOT)/components/libraries/svc \
+  $(SDK_ROOT)/components/libraries/stack_info \
+  $(SDK_ROOT)/components/libraries/crypto/backend/nrf_hw \
+  $(SDK_ROOT)/components/libraries/log \
+  $(SDK_ROOT)/external/nrf_oberon \
+  $(SDK_ROOT)/components/libraries/strerror \
+  $(SDK_ROOT)/components/libraries/crypto/backend/mbedtls \
+  $(SDK_ROOT)/components/boards \
+  $(SDK_ROOT)/components/libraries/crypto/backend/cc310 \
+  $(SDK_ROOT)/components/libraries/bootloader \
+  $(SDK_ROOT)/external/fprintf \
+  $(SDK_ROOT)/components/libraries/crypto \
+  ../config \
+  $(SDK_ROOT)/components/libraries/crypto/backend/optiga \
+  $(SDK_ROOT)/components/libraries/scheduler \
+  $(SDK_ROOT)/modules/nrfx/hal \
+  $(SDK_ROOT)/components/toolchain/cmsis/include \
+  $(SDK_ROOT)/components/libraries/balloc \
+  $(SDK_ROOT)/components/libraries/atomic_fifo \
+  $(SDK_ROOT)/external/micro-ecc/micro-ecc \
+  $(PROJ_DIR) \
+  $(SDK_ROOT)/components/libraries/crypto/backend/nrf_sw \
+  $(SDK_ROOT)/modules/nrfx/mdk \
+  $(SDK_ROOT)/components/libraries/bootloader/ble_dfu \
+  $(SDK_ROOT)/components/softdevice/common \
+  $(SDK_ROOT)/external/nano-pb \
+  $(SDK_ROOT)/components/libraries/queue \
+  $(SDK_ROOT)/components/libraries/ringbuf \
+
+# Libraries common to all targets
+LIB_FILES += \
+  $(SDK_ROOT)/external/nrf_oberon/lib/cortex-m4/hard-float/liboberon_3.0.5.a \
+  $(SDK_ROOT)/external/micro-ecc/nrf52hf_armgcc/armgcc/micro_ecc_lib_nrf52.a \
+
+# Optimization flags
+OPT = -Os -g3
+# Uncomment the line below to enable link time optimization
+#OPT += -flto
+
+# C flags common to all targets
+CFLAGS += $(OPT)
+CFLAGS += -DBLE_STACK_SUPPORT_REQD
+CFLAGS += -DBOARD_PCA10040
+CFLAGS += -DCONFIG_GPIO_AS_PINRESET
+CFLAGS += -DFLOAT_ABI_HARD
+CFLAGS += -DNRF52
+CFLAGS += -DNRF52832_XXAA
+CFLAGS += -DNRF52_PAN_74
+CFLAGS += -DNRF_DFU_SETTINGS_VERSION=2
+CFLAGS += -DNRF_DFU_SVCI_ENABLED
+CFLAGS += -DNRF_SD_BLE_API_VERSION=7
+CFLAGS += -DS132
+CFLAGS += -DSOFTDEVICE_PRESENT
+CFLAGS += -DSVC_INTERFACE_CALL_AS_NORMAL_FUNCTION
+CFLAGS += -DuECC_ENABLE_VLI_API=0
+CFLAGS += -DuECC_OPTIMIZATION_LEVEL=3
+CFLAGS += -DuECC_SQUARE_FUNC=0
+CFLAGS += -DuECC_SUPPORT_COMPRESSED_POINT=0
+CFLAGS += -DuECC_VLI_NATIVE_LITTLE_ENDIAN=1
+CFLAGS += -mcpu=cortex-m4
+CFLAGS += -mthumb -mabi=aapcs
+CFLAGS += -Wall -Werror
+CFLAGS += -mfloat-abi=hard -mfpu=fpv4-sp-d16
+# keep every function in a separate section, this allows linker to discard unused ones
+CFLAGS += -ffunction-sections -fdata-sections -fno-strict-aliasing
+CFLAGS += -fno-builtin -fshort-enums
+
+# C++ flags common to all targets
+CXXFLAGS += $(OPT)
+# Assembler flags common to all targets
+ASMFLAGS += -g3
+ASMFLAGS += -mcpu=cortex-m4
+ASMFLAGS += -mthumb -mabi=aapcs
+ASMFLAGS += -mfloat-abi=hard -mfpu=fpv4-sp-d16
+ASMFLAGS += -DBLE_STACK_SUPPORT_REQD
+ASMFLAGS += -DBOARD_PCA10040
+ASMFLAGS += -DCONFIG_GPIO_AS_PINRESET
+ASMFLAGS += -DFLOAT_ABI_HARD
+ASMFLAGS += -DNRF52
+ASMFLAGS += -DNRF52832_XXAA
+ASMFLAGS += -DNRF52_PAN_74
+ASMFLAGS += -DNRF_DFU_SETTINGS_VERSION=2
+ASMFLAGS += -DNRF_DFU_SVCI_ENABLED
+ASMFLAGS += -DNRF_SD_BLE_API_VERSION=7
+ASMFLAGS += -DS132
+ASMFLAGS += -DSOFTDEVICE_PRESENT
+ASMFLAGS += -DSVC_INTERFACE_CALL_AS_NORMAL_FUNCTION
+ASMFLAGS += -DuECC_ENABLE_VLI_API=0
+ASMFLAGS += -DuECC_OPTIMIZATION_LEVEL=3
+ASMFLAGS += -DuECC_SQUARE_FUNC=0
+ASMFLAGS += -DuECC_SUPPORT_COMPRESSED_POINT=0
+ASMFLAGS += -DuECC_VLI_NATIVE_LITTLE_ENDIAN=1
+
+# Linker flags
+LDFLAGS += $(OPT)
+LDFLAGS += -mthumb -mabi=aapcs -L$(SDK_ROOT)/modules/nrfx/mdk -T$(LINKER_SCRIPT)
+LDFLAGS += -mcpu=cortex-m4
+LDFLAGS += -mfloat-abi=hard -mfpu=fpv4-sp-d16
+# let linker dump unused sections
+LDFLAGS += -Wl,--gc-sections
+# use newlib in nano version
+LDFLAGS += --specs=nano.specs
+
+nrf52832_xxaa_s132: CFLAGS += -D__HEAP_SIZE=0
+nrf52832_xxaa_s132: ASMFLAGS += -D__HEAP_SIZE=0
+
+# Add standard libraries at the very end of the linker input, after all objects
+# that may need symbols provided by these libraries.
+LIB_FILES += -lc -lnosys -lm
+
+
+.PHONY: default help
+
+# Default target - first one defined
+default: nrf52832_xxaa_s132
+
+# Print all targets that can be built
+help:
+	@echo following targets are available:
+	@echo		nrf52832_xxaa_s132
+	@echo		flash_softdevice
+	@echo		sdk_config - starting external tool for editing sdk_config.h
+	@echo		flash      - flashing binary
+
+TEMPLATE_PATH := $(SDK_ROOT)/components/toolchain/gcc
+
+
+include $(TEMPLATE_PATH)/Makefile.common
+
+$(foreach target, $(TARGETS), $(call define_target, $(target)))
+
+.PHONY: flash flash_softdevice erase
+
+# Flash the program
+flash: default
+	@echo Flashing: $(OUTPUT_DIRECTORY)/nrf52832_xxaa_s132.hex
+	nrfjprog -f nrf52 --program $(OUTPUT_DIRECTORY)/nrf52832_xxaa_s132.hex --sectorerase
+	nrfjprog -f nrf52 --reset
+
+# Flash softdevice
+flash_softdevice:
+	@echo Flashing: s132_nrf52_7.0.1_softdevice.hex
+	nrfjprog -f nrf52 --program $(SDK_ROOT)/components/softdevice/s132/hex/s132_nrf52_7.0.1_softdevice.hex --sectorerase
+	nrfjprog -f nrf52 --reset
+
+erase:
+	nrfjprog -f nrf52 --eraseall
+
+SDK_CONFIG_FILE := ../config/sdk_config.h
+CMSIS_CONFIG_TOOL := $(SDK_ROOT)/external_tools/cmsisconfig/CMSIS_Configuration_Wizard.jar
+sdk_config:
+	java -jar $(CMSIS_CONFIG_TOOL) $(SDK_CONFIG_FILE)

+ 156 - 0
central_and_peripheral_secure_bootloader/armgcc/secure_bootloader_gcc_nrf52.ld

@@ -0,0 +1,156 @@
+/* Linker script to configure memory regions. */
+
+SEARCH_DIR(.)
+GROUP(-lgcc -lc -lnosys)
+
+MEMORY
+{
+  FLASH (rx) : ORIGIN = 0x78000, LENGTH = 0x6000
+  RAM (rwx) :  ORIGIN = 0x20005968, LENGTH = 0xa698
+  uicr_bootloader_start_address (r) : ORIGIN = 0x10001014, LENGTH = 0x4
+  bootloader_settings_page (r) : ORIGIN = 0x0007F000, LENGTH = 0x1000
+  uicr_mbr_params_page (r) : ORIGIN = 0x10001018, LENGTH = 0x4
+  mbr_params_page (r) : ORIGIN = 0x0007E000, LENGTH = 0x1000
+}
+
+SECTIONS
+{
+  . = ALIGN(4);
+  .uicr_bootloader_start_address :
+  {
+    PROVIDE(__start_uicr_bootloader_start_address = .);
+    KEEP(*(SORT(.uicr_bootloader_start_address*)))
+    PROVIDE(__stop_uicr_bootloader_start_address = .);
+  } > uicr_bootloader_start_address
+  . = ALIGN(4);
+  .bootloader_settings_page(NOLOAD) :
+  {
+    PROVIDE(__start_bootloader_settings_page = .);
+    KEEP(*(SORT(.bootloader_settings_page*)))
+    PROVIDE(__stop_bootloader_settings_page = .);
+  } > bootloader_settings_page
+  . = ALIGN(4);
+  .uicr_mbr_params_page :
+  {
+    PROVIDE(__start_uicr_mbr_params_page = .);
+    KEEP(*(SORT(.uicr_mbr_params_page*)))
+    PROVIDE(__stop_uicr_mbr_params_page = .);
+  } > uicr_mbr_params_page
+  . = ALIGN(4);
+  .mbr_params_page(NOLOAD) :
+  {
+    PROVIDE(__start_mbr_params_page = .);
+    KEEP(*(SORT(.mbr_params_page*)))
+    PROVIDE(__stop_mbr_params_page = .);
+  } > mbr_params_page
+}
+
+SECTIONS
+{
+  . = ALIGN(4);
+  .mem_section_dummy_ram :
+  {
+  }
+  .log_dynamic_data :
+  {
+    PROVIDE(__start_log_dynamic_data = .);
+    KEEP(*(SORT(.log_dynamic_data*)))
+    PROVIDE(__stop_log_dynamic_data = .);
+  } > RAM
+  .log_filter_data :
+  {
+    PROVIDE(__start_log_filter_data = .);
+    KEEP(*(SORT(.log_filter_data*)))
+    PROVIDE(__stop_log_filter_data = .);
+  } > RAM
+  .fs_data :
+  {
+    PROVIDE(__start_fs_data = .);
+    KEEP(*(.fs_data))
+    PROVIDE(__stop_fs_data = .);
+  } > RAM
+
+} INSERT AFTER .data;
+
+SECTIONS
+{
+  .mem_section_dummy_rom :
+  {
+  }
+  .crypto_data :
+  {
+    PROVIDE(__start_crypto_data = .);
+    KEEP(*(SORT(.crypto_data*)))
+    PROVIDE(__stop_crypto_data = .);
+  } > FLASH
+    .nrf_queue :
+  {
+    PROVIDE(__start_nrf_queue = .);
+    KEEP(*(.nrf_queue))
+    PROVIDE(__stop_nrf_queue = .);
+  } > FLASH
+  .dfu_trans :
+  {
+    PROVIDE(__start_dfu_trans = .);
+    KEEP(*(SORT(.dfu_trans*)))
+    PROVIDE(__stop_dfu_trans = .);
+  } > FLASH
+    .svc_data :
+  {
+    PROVIDE(__start_svc_data = .);
+    KEEP(*(.svc_data))
+    PROVIDE(__stop_svc_data = .);
+  } > FLASH
+  .log_const_data :
+  {
+    PROVIDE(__start_log_const_data = .);
+    KEEP(*(SORT(.log_const_data*)))
+    PROVIDE(__stop_log_const_data = .);
+  } > FLASH
+    .nrf_balloc :
+  {
+    PROVIDE(__start_nrf_balloc = .);
+    KEEP(*(.nrf_balloc))
+    PROVIDE(__stop_nrf_balloc = .);
+  } > FLASH
+  .sdh_ble_observers :
+  {
+    PROVIDE(__start_sdh_ble_observers = .);
+    KEEP(*(SORT(.sdh_ble_observers*)))
+    PROVIDE(__stop_sdh_ble_observers = .);
+  } > FLASH
+  .log_backends :
+  {
+    PROVIDE(__start_log_backends = .);
+    KEEP(*(SORT(.log_backends*)))
+    PROVIDE(__stop_log_backends = .);
+  } > FLASH
+  .sdh_req_observers :
+  {
+    PROVIDE(__start_sdh_req_observers = .);
+    KEEP(*(SORT(.sdh_req_observers*)))
+    PROVIDE(__stop_sdh_req_observers = .);
+  } > FLASH
+  .sdh_state_observers :
+  {
+    PROVIDE(__start_sdh_state_observers = .);
+    KEEP(*(SORT(.sdh_state_observers*)))
+    PROVIDE(__stop_sdh_state_observers = .);
+  } > FLASH
+  .sdh_stack_observers :
+  {
+    PROVIDE(__start_sdh_stack_observers = .);
+    KEEP(*(SORT(.sdh_stack_observers*)))
+    PROVIDE(__stop_sdh_stack_observers = .);
+  } > FLASH
+  .sdh_soc_observers :
+  {
+    PROVIDE(__start_sdh_soc_observers = .);
+    KEEP(*(SORT(.sdh_soc_observers*)))
+    PROVIDE(__stop_sdh_soc_observers = .);
+  } > FLASH
+
+} INSERT AFTER .text
+
+
+INCLUDE "nrf_common.ld"

+ 5378 - 0
central_and_peripheral_secure_bootloader/config/sdk_config.h

@@ -0,0 +1,5378 @@
+/**
+ * Copyright (c) 2017 - 2020, Nordic Semiconductor ASA
+ *
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without modification,
+ * are permitted provided that the following conditions are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright notice, this
+ *    list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form, except as embedded into a Nordic
+ *    Semiconductor ASA integrated circuit in a product or a software update for
+ *    such product, must reproduce the above copyright notice, this list of
+ *    conditions and the following disclaimer in the documentation and/or other
+ *    materials provided with the distribution.
+ *
+ * 3. Neither the name of Nordic Semiconductor ASA nor the names of its
+ *    contributors may be used to endorse or promote products derived from this
+ *    software without specific prior written permission.
+ *
+ * 4. This software, with or without modification, must only be used with a
+ *    Nordic Semiconductor ASA integrated circuit.
+ *
+ * 5. Any software provided in binary form under this license must not be reverse
+ *    engineered, decompiled, modified and/or disassembled.
+ *
+ * THIS SOFTWARE IS PROVIDED BY NORDIC SEMICONDUCTOR ASA "AS IS" AND ANY EXPRESS
+ * OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+ * OF MERCHANTABILITY, NONINFRINGEMENT, AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED. IN NO EVENT SHALL NORDIC SEMICONDUCTOR ASA OR CONTRIBUTORS BE
+ * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+ * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ */
+
+
+
+#ifndef SDK_CONFIG_H
+#define SDK_CONFIG_H
+// <<< Use Configuration Wizard in Context Menu >>>\n
+#ifdef USE_APP_CONFIG
+#include "app_config.h"
+#endif
+// <h> nRF_Bootloader 
+
+//==========================================================
+// <h> nrf_bootloader - Bootloader settings
+
+//==========================================================
+// <h> Application integrity checks 
+
+//==========================================================
+// <q> NRF_BL_APP_CRC_CHECK_SKIPPED_ON_GPREGRET2  - Skip CRC integrity check of the application when bit 1 (0-indexed) is set in the GPREGRET2 register.
+ 
+
+// <i> Only CRC checks can be skipped. For other boot validation types, the GPREGRET2 register is ignored.
+
+#ifndef NRF_BL_APP_CRC_CHECK_SKIPPED_ON_GPREGRET2
+#define NRF_BL_APP_CRC_CHECK_SKIPPED_ON_GPREGRET2 1
+#endif
+
+// <q> NRF_BL_APP_CRC_CHECK_SKIPPED_ON_SYSTEMOFF_RESET  - Skip integrity check of the application when waking up from the System Off state.
+ 
+
+// <i> Only CRC checks can be skipped. For other boot validation types, the reset state is ignored.
+
+#ifndef NRF_BL_APP_CRC_CHECK_SKIPPED_ON_SYSTEMOFF_RESET
+#define NRF_BL_APP_CRC_CHECK_SKIPPED_ON_SYSTEMOFF_RESET 1
+#endif
+
+// <q> NRF_BL_APP_SIGNATURE_CHECK_REQUIRED  - Perform signature check on the app. Requires the signature to be sent in the init packet.
+ 
+
+#ifndef NRF_BL_APP_SIGNATURE_CHECK_REQUIRED
+#define NRF_BL_APP_SIGNATURE_CHECK_REQUIRED 0
+#endif
+
+// <q> NRF_BL_DFU_ALLOW_UPDATE_FROM_APP  - Whether to allow the app to receive firmware updates for the bootloader to activate.
+ 
+
+// <i> Enable this to allow the app to instruct the bootloader to activate firmware.
+// <i> The bootloader will do its own postvalidation.
+
+#ifndef NRF_BL_DFU_ALLOW_UPDATE_FROM_APP
+#define NRF_BL_DFU_ALLOW_UPDATE_FROM_APP 0
+#endif
+
+// </h> 
+//==========================================================
+
+// <h> DFU mode enter method 
+
+//==========================================================
+// <e> NRF_BL_DFU_ENTER_METHOD_BUTTON - Enter DFU mode on button press.
+//==========================================================
+#ifndef NRF_BL_DFU_ENTER_METHOD_BUTTON
+#define NRF_BL_DFU_ENTER_METHOD_BUTTON 0
+#endif
+// <o> NRF_BL_DFU_ENTER_METHOD_BUTTON_PIN  - Button for entering DFU mode.
+ 
+// <0=> 0 (P0.0) 
+// <1=> 1 (P0.1) 
+// <2=> 2 (P0.2) 
+// <3=> 3 (P0.3) 
+// <4=> 4 (P0.4) 
+// <5=> 5 (P0.5) 
+// <6=> 6 (P0.6) 
+// <7=> 7 (P0.7) 
+// <8=> 8 (P0.8) 
+// <9=> 9 (P0.9) 
+// <10=> 10 (P0.10) 
+// <11=> 11 (P0.11) 
+// <12=> 12 (P0.12) 
+// <13=> 13 (P0.13) 
+// <14=> 14 (P0.14) 
+// <15=> 15 (P0.15) 
+// <16=> 16 (P0.16) 
+// <17=> 17 (P0.17) 
+// <18=> 18 (P0.18) 
+// <19=> 19 (P0.19) 
+// <20=> 20 (P0.20) 
+// <21=> 21 (P0.21) 
+// <22=> 22 (P0.22) 
+// <23=> 23 (P0.23) 
+// <24=> 24 (P0.24) 
+// <25=> 25 (P0.25) 
+// <26=> 26 (P0.26) 
+// <27=> 27 (P0.27) 
+// <28=> 28 (P0.28) 
+// <29=> 29 (P0.29) 
+// <30=> 30 (P0.30) 
+// <31=> 31 (P0.31) 
+
+#ifndef NRF_BL_DFU_ENTER_METHOD_BUTTON_PIN
+#define NRF_BL_DFU_ENTER_METHOD_BUTTON_PIN 16
+#endif
+
+// </e>
+
+// <q> NRF_BL_DFU_ENTER_METHOD_PINRESET  - Enter DFU mode on pin reset.
+ 
+
+#ifndef NRF_BL_DFU_ENTER_METHOD_PINRESET
+#define NRF_BL_DFU_ENTER_METHOD_PINRESET 0
+#endif
+
+// <q> NRF_BL_DFU_ENTER_METHOD_GPREGRET  - Enter DFU mode when bit 0 is set in the NRF_POWER_GPREGRET register.
+ 
+
+#ifndef NRF_BL_DFU_ENTER_METHOD_GPREGRET
+#define NRF_BL_DFU_ENTER_METHOD_GPREGRET 1
+#endif
+
+// <q> NRF_BL_DFU_ENTER_METHOD_BUTTONLESS  - Enter DFU mode when the Boolean enter_buttonless_dfu in DFU settings is true.
+ 
+
+#ifndef NRF_BL_DFU_ENTER_METHOD_BUTTONLESS
+#define NRF_BL_DFU_ENTER_METHOD_BUTTONLESS 0
+#endif
+
+// </h> 
+//==========================================================
+
+// <h> DFU timers 
+
+//==========================================================
+// <o> NRF_BL_DFU_CONTINUATION_TIMEOUT_MS - Timeout in ms when expecting an update immediately.  <100-60000000> 
+
+
+// <i> This timeout is used after updating the SoftDevice, when there is
+// <i> already a valid application present. The bootloader will enter DFU mode
+// <i> for a short time instead of booting the old application to allow the host
+// <i> to immediately transfer a new application if it wishes.
+
+#ifndef NRF_BL_DFU_CONTINUATION_TIMEOUT_MS
+#define NRF_BL_DFU_CONTINUATION_TIMEOUT_MS 10000
+#endif
+
+// <o> NRF_BL_DFU_INACTIVITY_TIMEOUT_MS - Timeout in ms before automatically starting a valid application due to inactivity.  <0-60000000> 
+
+
+// <i> If 0, no inactivity timer will be used. Values 1-99 are invalid.
+
+#ifndef NRF_BL_DFU_INACTIVITY_TIMEOUT_MS
+#define NRF_BL_DFU_INACTIVITY_TIMEOUT_MS 30000
+#endif
+
+// </h> 
+//==========================================================
+
+// <h> Watchdog timer 
+
+//==========================================================
+// <o> NRF_BL_WDT_MAX_SCHEDULER_LATENCY_MS - Maximum latency of the scheduler in miliseconds 
+// <i> Maximum latency of the scheduler is compared with
+// <i> watchdog counter reload value (CRV). If latency is big
+// <i> enough, the watchdog will be fed from internal timer
+// <i> handler along with feed from user function. If latency
+// <i> is smaller than CRV, the watchdog will not be internally fed once
+// <i> it will be externally fed. Maximum latency is mainly affected
+// <i> by flash operations.
+
+#ifndef NRF_BL_WDT_MAX_SCHEDULER_LATENCY_MS
+#define NRF_BL_WDT_MAX_SCHEDULER_LATENCY_MS 10000
+#endif
+
+// </h> 
+//==========================================================
+
+// <h> Misc Bootloader settings 
+
+//==========================================================
+// <q> NRF_BL_DEBUG_PORT_DISABLE  - Disable access to the chip via the debug port.
+ 
+
+// <i> Disable access to the chip via the debug port.
+// <i> This modifies the APPROTECT and DEBUGCTRL registers.
+// <i> Enable this option in production code if such
+// <i> access should be prohibited. Read about the registers
+// <i> for more details.
+
+#ifndef NRF_BL_DEBUG_PORT_DISABLE
+#define NRF_BL_DEBUG_PORT_DISABLE 0
+#endif
+
+// <o> NRF_BL_FW_COPY_PROGRESS_STORE_STEP - Number of pages copied after which progress in the settings page is updated. 
+// <i> Progress stored in the settings page allows the bootloader to resume
+// <i> copying the new firmware in case of interruption (reset).
+// <i> If the value is small, then the resume point is more accurate. However,
+// <i>  it also impacts negatively on flash wear.
+
+#ifndef NRF_BL_FW_COPY_PROGRESS_STORE_STEP
+#define NRF_BL_FW_COPY_PROGRESS_STORE_STEP 8
+#endif
+
+// <o> NRF_BL_RESET_DELAY_MS - Time to wait before resetting the bootloader. 
+// <i> Time (in ms) to wait before resetting the bootloader after DFU has been completed or aborted. This allows more time for e.g. disconnecting the BLE link or writing logs.
+
+#ifndef NRF_BL_RESET_DELAY_MS
+#define NRF_BL_RESET_DELAY_MS 0
+#endif
+
+// </h> 
+//==========================================================
+
+// </h> 
+//==========================================================
+
+// </h> 
+//==========================================================
+
+// <h> nRF_Crypto 
+
+//==========================================================
+// <e> NRF_CRYPTO_ENABLED - nrf_crypto - Cryptography library.
+//==========================================================
+#ifndef NRF_CRYPTO_ENABLED
+#define NRF_CRYPTO_ENABLED 1
+#endif
+// <o> NRF_CRYPTO_ALLOCATOR  - Memory allocator
+ 
+
+// <i> Choose memory allocator used by nrf_crypto. Default is alloca if possible or nrf_malloc otherwise. If 'User macros' are selected, the user has to create 'nrf_crypto_allocator.h' file that contains NRF_CRYPTO_ALLOC, NRF_CRYPTO_FREE, and NRF_CRYPTO_ALLOC_ON_STACK.
+// <0=> Default 
+// <1=> User macros 
+// <2=> On stack (alloca) 
+// <3=> C dynamic memory (malloc) 
+// <4=> SDK Memory Manager (nrf_malloc) 
+
+#ifndef NRF_CRYPTO_ALLOCATOR
+#define NRF_CRYPTO_ALLOCATOR 1
+#endif
+
+// <e> NRF_CRYPTO_BACKEND_CC310_BL_ENABLED - Enable the ARM Cryptocell CC310 reduced backend.
+
+// <i> The CC310 hardware-accelerated cryptography backend with reduced functionality and footprint (only available on nRF52840).
+//==========================================================
+#ifndef NRF_CRYPTO_BACKEND_CC310_BL_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_BL_ENABLED 0
+#endif
+// <q> NRF_CRYPTO_BACKEND_CC310_BL_ECC_SECP224R1_ENABLED  - Enable the secp224r1 elliptic curve support using CC310_BL.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_BL_ECC_SECP224R1_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_BL_ECC_SECP224R1_ENABLED 0
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_BL_ECC_SECP256R1_ENABLED  - Enable the secp256r1 elliptic curve support using CC310_BL.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_BL_ECC_SECP256R1_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_BL_ECC_SECP256R1_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_BL_HASH_SHA256_ENABLED  - CC310_BL SHA-256 hash functionality.
+ 
+
+// <i> CC310_BL backend implementation for hardware-accelerated SHA-256.
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_BL_HASH_SHA256_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_BL_HASH_SHA256_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_BL_HASH_AUTOMATIC_RAM_BUFFER_ENABLED  - nrf_cc310_bl buffers to RAM before running hash operation
+ 
+
+// <i> Enabling this makes hashing of addresses in FLASH range possible. Size of buffer allocated for hashing is set by NRF_CRYPTO_BACKEND_CC310_BL_HASH_AUTOMATIC_RAM_BUFFER_SIZE
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_BL_HASH_AUTOMATIC_RAM_BUFFER_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_BL_HASH_AUTOMATIC_RAM_BUFFER_ENABLED 0
+#endif
+
+// <o> NRF_CRYPTO_BACKEND_CC310_BL_HASH_AUTOMATIC_RAM_BUFFER_SIZE - nrf_cc310_bl hash outputs digests in little endian 
+// <i> Makes the nrf_cc310_bl hash functions output digests in little endian format. Only for use in nRF SDK DFU!
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_BL_HASH_AUTOMATIC_RAM_BUFFER_SIZE
+#define NRF_CRYPTO_BACKEND_CC310_BL_HASH_AUTOMATIC_RAM_BUFFER_SIZE 4096
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_BL_INTERRUPTS_ENABLED  - Enable Interrupts while support using CC310 bl.
+ 
+
+// <i> Select a library version compatible with the configuration. When interrupts are disable, a version named _noint must be used
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_BL_INTERRUPTS_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_BL_INTERRUPTS_ENABLED 1
+#endif
+
+// </e>
+
+// <e> NRF_CRYPTO_BACKEND_CC310_ENABLED - Enable the ARM Cryptocell CC310 backend.
+
+// <i> The CC310 hardware-accelerated cryptography backend (only available on nRF52840).
+//==========================================================
+#ifndef NRF_CRYPTO_BACKEND_CC310_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_ENABLED 0
+#endif
+// <q> NRF_CRYPTO_BACKEND_CC310_AES_CBC_ENABLED  - Enable the AES CBC mode using CC310.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_AES_CBC_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_AES_CBC_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_AES_CTR_ENABLED  - Enable the AES CTR mode using CC310.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_AES_CTR_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_AES_CTR_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_AES_ECB_ENABLED  - Enable the AES ECB mode using CC310.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_AES_ECB_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_AES_ECB_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_AES_CBC_MAC_ENABLED  - Enable the AES CBC_MAC mode using CC310.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_AES_CBC_MAC_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_AES_CBC_MAC_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_AES_CMAC_ENABLED  - Enable the AES CMAC mode using CC310.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_AES_CMAC_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_AES_CMAC_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_AES_CCM_ENABLED  - Enable the AES CCM mode using CC310.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_AES_CCM_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_AES_CCM_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_AES_CCM_STAR_ENABLED  - Enable the AES CCM* mode using CC310.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_AES_CCM_STAR_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_AES_CCM_STAR_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_CHACHA_POLY_ENABLED  - Enable the CHACHA-POLY mode using CC310.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_CHACHA_POLY_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_CHACHA_POLY_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_ECC_SECP160R1_ENABLED  - Enable the secp160r1 elliptic curve support using CC310.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_ECC_SECP160R1_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_ECC_SECP160R1_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_ECC_SECP160R2_ENABLED  - Enable the secp160r2 elliptic curve support using CC310.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_ECC_SECP160R2_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_ECC_SECP160R2_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_ECC_SECP192R1_ENABLED  - Enable the secp192r1 elliptic curve support using CC310.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_ECC_SECP192R1_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_ECC_SECP192R1_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_ECC_SECP224R1_ENABLED  - Enable the secp224r1 elliptic curve support using CC310.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_ECC_SECP224R1_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_ECC_SECP224R1_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_ECC_SECP256R1_ENABLED  - Enable the secp256r1 elliptic curve support using CC310.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_ECC_SECP256R1_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_ECC_SECP256R1_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_ECC_SECP384R1_ENABLED  - Enable the secp384r1 elliptic curve support using CC310.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_ECC_SECP384R1_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_ECC_SECP384R1_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_ECC_SECP521R1_ENABLED  - Enable the secp521r1 elliptic curve support using CC310.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_ECC_SECP521R1_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_ECC_SECP521R1_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_ECC_SECP160K1_ENABLED  - Enable the secp160k1 elliptic curve support using CC310.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_ECC_SECP160K1_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_ECC_SECP160K1_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_ECC_SECP192K1_ENABLED  - Enable the secp192k1 elliptic curve support using CC310.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_ECC_SECP192K1_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_ECC_SECP192K1_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_ECC_SECP224K1_ENABLED  - Enable the secp224k1 elliptic curve support using CC310.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_ECC_SECP224K1_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_ECC_SECP224K1_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_ECC_SECP256K1_ENABLED  - Enable the secp256k1 elliptic curve support using CC310.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_ECC_SECP256K1_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_ECC_SECP256K1_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_ECC_CURVE25519_ENABLED  - Enable the Curve25519 curve support using CC310.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_ECC_CURVE25519_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_ECC_CURVE25519_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_ECC_ED25519_ENABLED  - Enable the Ed25519 curve support using CC310.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_ECC_ED25519_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_ECC_ED25519_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_HASH_SHA256_ENABLED  - CC310 SHA-256 hash functionality.
+ 
+
+// <i> CC310 backend implementation for hardware-accelerated SHA-256.
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_HASH_SHA256_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_HASH_SHA256_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_HASH_SHA512_ENABLED  - CC310 SHA-512 hash functionality
+ 
+
+// <i> CC310 backend implementation for SHA-512 (in software).
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_HASH_SHA512_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_HASH_SHA512_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_HMAC_SHA256_ENABLED  - CC310 HMAC using SHA-256
+ 
+
+// <i> CC310 backend implementation for HMAC using hardware-accelerated SHA-256.
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_HMAC_SHA256_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_HMAC_SHA256_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_HMAC_SHA512_ENABLED  - CC310 HMAC using SHA-512
+ 
+
+// <i> CC310 backend implementation for HMAC using SHA-512 (in software).
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_HMAC_SHA512_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_HMAC_SHA512_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_RNG_ENABLED  - Enable RNG support using CC310.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_RNG_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_RNG_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_INTERRUPTS_ENABLED  - Enable Interrupts while support using CC310.
+ 
+
+// <i> Select a library version compatible with the configuration. When interrupts are disable, a version named _noint must be used
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_INTERRUPTS_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_INTERRUPTS_ENABLED 1
+#endif
+
+// </e>
+
+// <e> NRF_CRYPTO_BACKEND_CIFRA_ENABLED - Enable the Cifra backend.
+//==========================================================
+#ifndef NRF_CRYPTO_BACKEND_CIFRA_ENABLED
+#define NRF_CRYPTO_BACKEND_CIFRA_ENABLED 0
+#endif
+// <q> NRF_CRYPTO_BACKEND_CIFRA_AES_EAX_ENABLED  - Enable the AES EAX mode using Cifra.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_CIFRA_AES_EAX_ENABLED
+#define NRF_CRYPTO_BACKEND_CIFRA_AES_EAX_ENABLED 1
+#endif
+
+// </e>
+
+// <e> NRF_CRYPTO_BACKEND_MBEDTLS_ENABLED - Enable the mbed TLS backend.
+//==========================================================
+#ifndef NRF_CRYPTO_BACKEND_MBEDTLS_ENABLED
+#define NRF_CRYPTO_BACKEND_MBEDTLS_ENABLED 0
+#endif
+// <q> NRF_CRYPTO_BACKEND_MBEDTLS_AES_CBC_ENABLED  - Enable the AES CBC mode mbed TLS.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_MBEDTLS_AES_CBC_ENABLED
+#define NRF_CRYPTO_BACKEND_MBEDTLS_AES_CBC_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_MBEDTLS_AES_CTR_ENABLED  - Enable the AES CTR mode using mbed TLS.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_MBEDTLS_AES_CTR_ENABLED
+#define NRF_CRYPTO_BACKEND_MBEDTLS_AES_CTR_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_MBEDTLS_AES_CFB_ENABLED  - Enable the AES CFB mode using mbed TLS.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_MBEDTLS_AES_CFB_ENABLED
+#define NRF_CRYPTO_BACKEND_MBEDTLS_AES_CFB_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_MBEDTLS_AES_ECB_ENABLED  - Enable the AES ECB mode using mbed TLS.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_MBEDTLS_AES_ECB_ENABLED
+#define NRF_CRYPTO_BACKEND_MBEDTLS_AES_ECB_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_MBEDTLS_AES_CBC_MAC_ENABLED  - Enable the AES CBC MAC mode using mbed TLS.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_MBEDTLS_AES_CBC_MAC_ENABLED
+#define NRF_CRYPTO_BACKEND_MBEDTLS_AES_CBC_MAC_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_MBEDTLS_AES_CMAC_ENABLED  - Enable the AES CMAC mode using mbed TLS.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_MBEDTLS_AES_CMAC_ENABLED
+#define NRF_CRYPTO_BACKEND_MBEDTLS_AES_CMAC_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_MBEDTLS_AES_CCM_ENABLED  - Enable the AES CCM mode using mbed TLS.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_MBEDTLS_AES_CCM_ENABLED
+#define NRF_CRYPTO_BACKEND_MBEDTLS_AES_CCM_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_MBEDTLS_AES_GCM_ENABLED  - Enable the AES GCM mode using mbed TLS.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_MBEDTLS_AES_GCM_ENABLED
+#define NRF_CRYPTO_BACKEND_MBEDTLS_AES_GCM_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_MBEDTLS_ECC_SECP192R1_ENABLED  - Enable secp192r1 (NIST 192-bit) curve
+ 
+
+// <i> Enable this setting if you need secp192r1 (NIST 192-bit) support using MBEDTLS
+
+#ifndef NRF_CRYPTO_BACKEND_MBEDTLS_ECC_SECP192R1_ENABLED
+#define NRF_CRYPTO_BACKEND_MBEDTLS_ECC_SECP192R1_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_MBEDTLS_ECC_SECP224R1_ENABLED  - Enable secp224r1 (NIST 224-bit) curve
+ 
+
+// <i> Enable this setting if you need secp224r1 (NIST 224-bit) support using MBEDTLS
+
+#ifndef NRF_CRYPTO_BACKEND_MBEDTLS_ECC_SECP224R1_ENABLED
+#define NRF_CRYPTO_BACKEND_MBEDTLS_ECC_SECP224R1_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_MBEDTLS_ECC_SECP256R1_ENABLED  - Enable secp256r1 (NIST 256-bit) curve
+ 
+
+// <i> Enable this setting if you need secp256r1 (NIST 256-bit) support using MBEDTLS
+
+#ifndef NRF_CRYPTO_BACKEND_MBEDTLS_ECC_SECP256R1_ENABLED
+#define NRF_CRYPTO_BACKEND_MBEDTLS_ECC_SECP256R1_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_MBEDTLS_ECC_SECP384R1_ENABLED  - Enable secp384r1 (NIST 384-bit) curve
+ 
+
+// <i> Enable this setting if you need secp384r1 (NIST 384-bit) support using MBEDTLS
+
+#ifndef NRF_CRYPTO_BACKEND_MBEDTLS_ECC_SECP384R1_ENABLED
+#define NRF_CRYPTO_BACKEND_MBEDTLS_ECC_SECP384R1_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_MBEDTLS_ECC_SECP521R1_ENABLED  - Enable secp521r1 (NIST 521-bit) curve
+ 
+
+// <i> Enable this setting if you need secp521r1 (NIST 521-bit) support using MBEDTLS
+
+#ifndef NRF_CRYPTO_BACKEND_MBEDTLS_ECC_SECP521R1_ENABLED
+#define NRF_CRYPTO_BACKEND_MBEDTLS_ECC_SECP521R1_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_MBEDTLS_ECC_SECP192K1_ENABLED  - Enable secp192k1 (Koblitz 192-bit) curve
+ 
+
+// <i> Enable this setting if you need secp192k1 (Koblitz 192-bit) support using MBEDTLS
+
+#ifndef NRF_CRYPTO_BACKEND_MBEDTLS_ECC_SECP192K1_ENABLED
+#define NRF_CRYPTO_BACKEND_MBEDTLS_ECC_SECP192K1_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_MBEDTLS_ECC_SECP224K1_ENABLED  - Enable secp224k1 (Koblitz 224-bit) curve
+ 
+
+// <i> Enable this setting if you need secp224k1 (Koblitz 224-bit) support using MBEDTLS
+
+#ifndef NRF_CRYPTO_BACKEND_MBEDTLS_ECC_SECP224K1_ENABLED
+#define NRF_CRYPTO_BACKEND_MBEDTLS_ECC_SECP224K1_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_MBEDTLS_ECC_SECP256K1_ENABLED  - Enable secp256k1 (Koblitz 256-bit) curve
+ 
+
+// <i> Enable this setting if you need secp256k1 (Koblitz 256-bit) support using MBEDTLS
+
+#ifndef NRF_CRYPTO_BACKEND_MBEDTLS_ECC_SECP256K1_ENABLED
+#define NRF_CRYPTO_BACKEND_MBEDTLS_ECC_SECP256K1_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_MBEDTLS_ECC_BP256R1_ENABLED  - Enable bp256r1 (Brainpool 256-bit) curve
+ 
+
+// <i> Enable this setting if you need bp256r1 (Brainpool 256-bit) support using MBEDTLS
+
+#ifndef NRF_CRYPTO_BACKEND_MBEDTLS_ECC_BP256R1_ENABLED
+#define NRF_CRYPTO_BACKEND_MBEDTLS_ECC_BP256R1_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_MBEDTLS_ECC_BP384R1_ENABLED  - Enable bp384r1 (Brainpool 384-bit) curve
+ 
+
+// <i> Enable this setting if you need bp384r1 (Brainpool 384-bit) support using MBEDTLS
+
+#ifndef NRF_CRYPTO_BACKEND_MBEDTLS_ECC_BP384R1_ENABLED
+#define NRF_CRYPTO_BACKEND_MBEDTLS_ECC_BP384R1_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_MBEDTLS_ECC_BP512R1_ENABLED  - Enable bp512r1 (Brainpool 512-bit) curve
+ 
+
+// <i> Enable this setting if you need bp512r1 (Brainpool 512-bit) support using MBEDTLS
+
+#ifndef NRF_CRYPTO_BACKEND_MBEDTLS_ECC_BP512R1_ENABLED
+#define NRF_CRYPTO_BACKEND_MBEDTLS_ECC_BP512R1_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_MBEDTLS_ECC_CURVE25519_ENABLED  - Enable Curve25519 curve
+ 
+
+// <i> Enable this setting if you need Curve25519 support using MBEDTLS
+
+#ifndef NRF_CRYPTO_BACKEND_MBEDTLS_ECC_CURVE25519_ENABLED
+#define NRF_CRYPTO_BACKEND_MBEDTLS_ECC_CURVE25519_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_MBEDTLS_HASH_SHA256_ENABLED  - Enable mbed TLS SHA-256 hash functionality.
+ 
+
+// <i> mbed TLS backend implementation for SHA-256.
+
+#ifndef NRF_CRYPTO_BACKEND_MBEDTLS_HASH_SHA256_ENABLED
+#define NRF_CRYPTO_BACKEND_MBEDTLS_HASH_SHA256_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_MBEDTLS_HASH_SHA512_ENABLED  - Enable mbed TLS SHA-512 hash functionality.
+ 
+
+// <i> mbed TLS backend implementation for SHA-512.
+
+#ifndef NRF_CRYPTO_BACKEND_MBEDTLS_HASH_SHA512_ENABLED
+#define NRF_CRYPTO_BACKEND_MBEDTLS_HASH_SHA512_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_MBEDTLS_HMAC_SHA256_ENABLED  - Enable mbed TLS HMAC using SHA-256.
+ 
+
+// <i> mbed TLS backend implementation for HMAC using SHA-256.
+
+#ifndef NRF_CRYPTO_BACKEND_MBEDTLS_HMAC_SHA256_ENABLED
+#define NRF_CRYPTO_BACKEND_MBEDTLS_HMAC_SHA256_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_MBEDTLS_HMAC_SHA512_ENABLED  - Enable mbed TLS HMAC using SHA-512.
+ 
+
+// <i> mbed TLS backend implementation for HMAC using SHA-512.
+
+#ifndef NRF_CRYPTO_BACKEND_MBEDTLS_HMAC_SHA512_ENABLED
+#define NRF_CRYPTO_BACKEND_MBEDTLS_HMAC_SHA512_ENABLED 1
+#endif
+
+// </e>
+
+// <e> NRF_CRYPTO_BACKEND_MICRO_ECC_ENABLED - Enable the micro-ecc backend.
+//==========================================================
+#ifndef NRF_CRYPTO_BACKEND_MICRO_ECC_ENABLED
+#define NRF_CRYPTO_BACKEND_MICRO_ECC_ENABLED 1
+#endif
+// <q> NRF_CRYPTO_BACKEND_MICRO_ECC_ECC_SECP192R1_ENABLED  - Enable secp192r1 (NIST 192-bit) curve
+ 
+
+// <i> Enable this setting if you need secp192r1 (NIST 192-bit) support using micro-ecc
+
+#ifndef NRF_CRYPTO_BACKEND_MICRO_ECC_ECC_SECP192R1_ENABLED
+#define NRF_CRYPTO_BACKEND_MICRO_ECC_ECC_SECP192R1_ENABLED 0
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_MICRO_ECC_ECC_SECP224R1_ENABLED  - Enable secp224r1 (NIST 224-bit) curve
+ 
+
+// <i> Enable this setting if you need secp224r1 (NIST 224-bit) support using micro-ecc
+
+#ifndef NRF_CRYPTO_BACKEND_MICRO_ECC_ECC_SECP224R1_ENABLED
+#define NRF_CRYPTO_BACKEND_MICRO_ECC_ECC_SECP224R1_ENABLED 0
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_MICRO_ECC_ECC_SECP256R1_ENABLED  - Enable secp256r1 (NIST 256-bit) curve
+ 
+
+// <i> Enable this setting if you need secp256r1 (NIST 256-bit) support using micro-ecc
+
+#ifndef NRF_CRYPTO_BACKEND_MICRO_ECC_ECC_SECP256R1_ENABLED
+#define NRF_CRYPTO_BACKEND_MICRO_ECC_ECC_SECP256R1_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_MICRO_ECC_ECC_SECP256K1_ENABLED  - Enable secp256k1 (Koblitz 256-bit) curve
+ 
+
+// <i> Enable this setting if you need secp256k1 (Koblitz 256-bit) support using micro-ecc
+
+#ifndef NRF_CRYPTO_BACKEND_MICRO_ECC_ECC_SECP256K1_ENABLED
+#define NRF_CRYPTO_BACKEND_MICRO_ECC_ECC_SECP256K1_ENABLED 0
+#endif
+
+// </e>
+
+// <e> NRF_CRYPTO_BACKEND_NRF_HW_RNG_ENABLED - Enable the nRF HW RNG backend.
+
+// <i> The nRF HW backend provide access to RNG peripheral in nRF5x devices.
+//==========================================================
+#ifndef NRF_CRYPTO_BACKEND_NRF_HW_RNG_ENABLED
+#define NRF_CRYPTO_BACKEND_NRF_HW_RNG_ENABLED 0
+#endif
+// <q> NRF_CRYPTO_BACKEND_NRF_HW_RNG_MBEDTLS_CTR_DRBG_ENABLED  - Enable mbed TLS CTR-DRBG algorithm.
+ 
+
+// <i> Enable mbed TLS CTR-DRBG standardized by NIST (NIST SP 800-90A Rev. 1). The nRF HW RNG is used as an entropy source for seeding.
+
+#ifndef NRF_CRYPTO_BACKEND_NRF_HW_RNG_MBEDTLS_CTR_DRBG_ENABLED
+#define NRF_CRYPTO_BACKEND_NRF_HW_RNG_MBEDTLS_CTR_DRBG_ENABLED 1
+#endif
+
+// </e>
+
+// <e> NRF_CRYPTO_BACKEND_NRF_SW_ENABLED - Enable the legacy nRFx sw for crypto.
+
+// <i> The nRF SW cryptography backend (only used in bootloader context).
+//==========================================================
+#ifndef NRF_CRYPTO_BACKEND_NRF_SW_ENABLED
+#define NRF_CRYPTO_BACKEND_NRF_SW_ENABLED 1
+#endif
+// <q> NRF_CRYPTO_BACKEND_NRF_SW_HASH_SHA256_ENABLED  - nRF SW hash backend support for SHA-256
+ 
+
+// <i> The nRF SW backend provide access to nRF SDK legacy hash implementation of SHA-256.
+
+#ifndef NRF_CRYPTO_BACKEND_NRF_SW_HASH_SHA256_ENABLED
+#define NRF_CRYPTO_BACKEND_NRF_SW_HASH_SHA256_ENABLED 1
+#endif
+
+// </e>
+
+// <e> NRF_CRYPTO_BACKEND_OBERON_ENABLED - Enable the Oberon backend
+
+// <i> The Oberon backend
+//==========================================================
+#ifndef NRF_CRYPTO_BACKEND_OBERON_ENABLED
+#define NRF_CRYPTO_BACKEND_OBERON_ENABLED 0
+#endif
+// <q> NRF_CRYPTO_BACKEND_OBERON_CHACHA_POLY_ENABLED  - Enable the CHACHA-POLY mode using Oberon.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_OBERON_CHACHA_POLY_ENABLED
+#define NRF_CRYPTO_BACKEND_OBERON_CHACHA_POLY_ENABLED 0
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_OBERON_ECC_SECP256R1_ENABLED  - Enable secp256r1 curve
+ 
+
+// <i> Enable this setting if you need secp256r1 curve support using Oberon library
+
+#ifndef NRF_CRYPTO_BACKEND_OBERON_ECC_SECP256R1_ENABLED
+#define NRF_CRYPTO_BACKEND_OBERON_ECC_SECP256R1_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_OBERON_ECC_CURVE25519_ENABLED  - Enable Curve25519 ECDH
+ 
+
+// <i> Enable this setting if you need Curve25519 ECDH support using Oberon library
+
+#ifndef NRF_CRYPTO_BACKEND_OBERON_ECC_CURVE25519_ENABLED
+#define NRF_CRYPTO_BACKEND_OBERON_ECC_CURVE25519_ENABLED 0
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_OBERON_ECC_ED25519_ENABLED  - Enable Ed25519 signature scheme
+ 
+
+// <i> Enable this setting if you need Ed25519 support using Oberon library
+
+#ifndef NRF_CRYPTO_BACKEND_OBERON_ECC_ED25519_ENABLED
+#define NRF_CRYPTO_BACKEND_OBERON_ECC_ED25519_ENABLED 0
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_OBERON_HASH_SHA256_ENABLED  - Oberon SHA-256 hash functionality
+ 
+
+// <i> Oberon backend implementation for SHA-256.
+
+#ifndef NRF_CRYPTO_BACKEND_OBERON_HASH_SHA256_ENABLED
+#define NRF_CRYPTO_BACKEND_OBERON_HASH_SHA256_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_OBERON_HASH_SHA512_ENABLED  - Oberon SHA-512 hash functionality
+ 
+
+// <i> Oberon backend implementation for SHA-512.
+
+#ifndef NRF_CRYPTO_BACKEND_OBERON_HASH_SHA512_ENABLED
+#define NRF_CRYPTO_BACKEND_OBERON_HASH_SHA512_ENABLED 0
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_OBERON_HMAC_SHA256_ENABLED  - Oberon HMAC using SHA-256
+ 
+
+// <i> Oberon backend implementation for HMAC using SHA-256.
+
+#ifndef NRF_CRYPTO_BACKEND_OBERON_HMAC_SHA256_ENABLED
+#define NRF_CRYPTO_BACKEND_OBERON_HMAC_SHA256_ENABLED 0
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_OBERON_HMAC_SHA512_ENABLED  - Oberon HMAC using SHA-512
+ 
+
+// <i> Oberon backend implementation for HMAC using SHA-512.
+
+#ifndef NRF_CRYPTO_BACKEND_OBERON_HMAC_SHA512_ENABLED
+#define NRF_CRYPTO_BACKEND_OBERON_HMAC_SHA512_ENABLED 0
+#endif
+
+// </e>
+
+// <e> NRF_CRYPTO_BACKEND_OPTIGA_ENABLED - Enable the nrf_crypto Optiga Trust X backend.
+
+// <i> Enables the nrf_crypto backend for Optiga Trust X devices.
+//==========================================================
+#ifndef NRF_CRYPTO_BACKEND_OPTIGA_ENABLED
+#define NRF_CRYPTO_BACKEND_OPTIGA_ENABLED 0
+#endif
+// <q> NRF_CRYPTO_BACKEND_OPTIGA_RNG_ENABLED  - Optiga backend support for RNG
+ 
+
+// <i> The Optiga backend provide external chip RNG.
+
+#ifndef NRF_CRYPTO_BACKEND_OPTIGA_RNG_ENABLED
+#define NRF_CRYPTO_BACKEND_OPTIGA_RNG_ENABLED 0
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_OPTIGA_ECC_SECP256R1_ENABLED  - Optiga backend support for ECC secp256r1
+ 
+
+// <i> The Optiga backend provide external chip ECC using secp256r1.
+
+#ifndef NRF_CRYPTO_BACKEND_OPTIGA_ECC_SECP256R1_ENABLED
+#define NRF_CRYPTO_BACKEND_OPTIGA_ECC_SECP256R1_ENABLED 1
+#endif
+
+// </e>
+
+// <q> NRF_CRYPTO_CURVE25519_BIG_ENDIAN_ENABLED  - Big-endian byte order in raw Curve25519 data
+ 
+
+// <i> Enable big-endian byte order in Curve25519 API, if set to 1. Use little-endian, if set to 0.
+
+#ifndef NRF_CRYPTO_CURVE25519_BIG_ENDIAN_ENABLED
+#define NRF_CRYPTO_CURVE25519_BIG_ENDIAN_ENABLED 0
+#endif
+
+// </e>
+
+// <h> nrf_crypto_rng - RNG Configuration
+
+//==========================================================
+// <q> NRF_CRYPTO_RNG_STATIC_MEMORY_BUFFERS_ENABLED  - Use static memory buffers for context and temporary init buffer.
+ 
+
+// <i> Always recommended when using the nRF HW RNG as the context and temporary buffers are small. Consider disabling if using the CC310 RNG in a RAM constrained application. In this case, memory must be provided to nrf_crypto_rng_init, or it can be allocated internally provided that NRF_CRYPTO_ALLOCATOR does not allocate memory on the stack.
+
+#ifndef NRF_CRYPTO_RNG_STATIC_MEMORY_BUFFERS_ENABLED
+#define NRF_CRYPTO_RNG_STATIC_MEMORY_BUFFERS_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_RNG_AUTO_INIT_ENABLED  - Initialize the RNG module automatically when nrf_crypto is initialized.
+ 
+
+// <i> Automatic initialization is only supported with static or internally allocated context and temporary memory.
+
+#ifndef NRF_CRYPTO_RNG_AUTO_INIT_ENABLED
+#define NRF_CRYPTO_RNG_AUTO_INIT_ENABLED 1
+#endif
+
+// </h> 
+//==========================================================
+
+// </h> 
+//==========================================================
+
+// <h> nRF_DFU 
+
+//==========================================================
+// <h> DFU security - nrf_dfu_validation - DFU validation
+
+//==========================================================
+// <q> NRF_DFU_APP_ACCEPT_SAME_VERSION  - Whether to accept application upgrades with the same version as the current application.
+ 
+
+// <i> This applies to application updates, and possibly to SoftDevice updates.
+// <i> Bootloader upgrades always require higher versions. SoftDevice upgrades
+// <i> look at the sd_req field independently of this config.
+// <i> Disabling this protects against replay attacks wearing out the flash of the device.
+// <i> This config only has an effect when NRF_DFU_APP_DOWNGRADE_PREVENTION is enabled.
+
+#ifndef NRF_DFU_APP_ACCEPT_SAME_VERSION
+#define NRF_DFU_APP_ACCEPT_SAME_VERSION 1
+#endif
+
+// <q> NRF_DFU_APP_DOWNGRADE_PREVENTION  - Check the firmware version and SoftDevice requirements of application (and SoftDevice) updates.
+ 
+
+// <i> Whether to check the incoming version against the version of the existing app and/or
+// <i> the incoming SoftDevice requirements against the existing SoftDevice.
+// <i> This applies to application updates, and possibly to SoftDevice updates.
+// <i> Disabling this causes the checks to always ignore the incoming firmware version and
+// <i> to ignore the SoftDevice requirements if the first requirement is 0.
+// <i> This does not apply the bootloader updates. If the bootloader depends on the SoftDevice
+// <i> e.g. for BLE transport, this does not apply to SoftDevice updates.
+// <i> See @ref lib_bootloader_dfu_validation for more information.
+// <i> When signed updates are required, version checking should always be enabled.
+
+#ifndef NRF_DFU_APP_DOWNGRADE_PREVENTION
+#define NRF_DFU_APP_DOWNGRADE_PREVENTION 1
+#endif
+
+// <q> NRF_DFU_EXTERNAL_APP_VERSIONING  - Require versioning for external applications.
+ 
+
+// <i> This configuration is only used if NRF_DFU_SUPPORTS_EXTERNAL_APP is set to 1.
+// <i> Setting this will require that any FW images using the FW upgrade type 
+// <i> DFU_FW_TYPE_EXTERNAL_APPLICATION must follow a monotonic versioning scheme
+// <i> where the FW version of an upgrade must always be larger than the previously stored 
+// <i> FW version.
+
+#ifndef NRF_DFU_EXTERNAL_APP_VERSIONING
+#define NRF_DFU_EXTERNAL_APP_VERSIONING 1
+#endif
+
+// <q> NRF_DFU_FORCE_DUAL_BANK_APP_UPDATES  - Accept only dual-bank application updates.
+ 
+
+// <i> If not enabled then if there is not enough space to perform dual-bank update
+// <i> application is deleted and single-bank update is performed. In case it is considered
+// <i> security concern user can prefer to discard update request rather than overwrite
+// <i> current application.
+
+#ifndef NRF_DFU_FORCE_DUAL_BANK_APP_UPDATES
+#define NRF_DFU_FORCE_DUAL_BANK_APP_UPDATES 0
+#endif
+
+// <o> NRF_DFU_HW_VERSION - Device hardware version. 
+// <i> This is used to determine if given update is targeting the device.
+// <i> It is checked against the hw_version value in the init packet
+
+#ifndef NRF_DFU_HW_VERSION
+#define NRF_DFU_HW_VERSION 52
+#endif
+
+// <q> NRF_DFU_REQUIRE_SIGNED_APP_UPDATE  - Require a valid signature to update the application or SoftDevice.
+ 
+
+#ifndef NRF_DFU_REQUIRE_SIGNED_APP_UPDATE
+#define NRF_DFU_REQUIRE_SIGNED_APP_UPDATE 1
+#endif
+
+// <q> NRF_DFU_SINGLE_BANK_APP_UPDATES  - Place the application and the SoftDevice directly where they are supposed to be.
+ 
+
+// <i> Note that this creates security concerns when signing and  version checks
+// <i> are enabled. An attacker will be able to delete (but not replace)
+// <i> the current app or SoftDevice without knowing the signature key.
+
+#ifndef NRF_DFU_SINGLE_BANK_APP_UPDATES
+#define NRF_DFU_SINGLE_BANK_APP_UPDATES 0
+#endif
+
+// </h> 
+//==========================================================
+
+// <q> NRF_DFU_SETTINGS_COMPATIBILITY_MODE  - nrf_dfu_settings - DFU Settings
+ 
+
+#ifndef NRF_DFU_SETTINGS_COMPATIBILITY_MODE
+#define NRF_DFU_SETTINGS_COMPATIBILITY_MODE 1
+#endif
+
+// <h> nrf_dfu - Device Firmware Upgrade
+
+//==========================================================
+// <h> DFU transport 
+
+//==========================================================
+// <e> NRF_DFU_TRANSPORT_ANT - ANT transport settings
+//==========================================================
+#ifndef NRF_DFU_TRANSPORT_ANT
+#define NRF_DFU_TRANSPORT_ANT 0
+#endif
+// <o> NRF_DFU_ANT_MTU - MTU size used for firmware bursts. 
+// <i> Sets the maximum burst size used for DFU write commands.
+
+#ifndef NRF_DFU_ANT_MTU
+#define NRF_DFU_ANT_MTU 1024
+#endif
+
+// <h> ANT DFU buffers 
+
+//==========================================================
+// <e> NRF_DFU_ANT_BUFFERS_OVERRIDE 
+
+// <i> Check this option to override the default number of buffers.
+//==========================================================
+#ifndef NRF_DFU_ANT_BUFFERS_OVERRIDE
+#define NRF_DFU_ANT_BUFFERS_OVERRIDE 0
+#endif
+// <o> NRF_DFU_ANT_BUFFERS - Number of buffers in the ANT transport. 
+// <i> Number of buffers to store incoming data while it is being written to flash.
+// <i> Reduce this value to save RAM. If this value is too low, the DFU process will fail.
+
+#ifndef NRF_DFU_ANT_BUFFERS
+#define NRF_DFU_ANT_BUFFERS 8
+#endif
+
+// </e>
+
+// </h> 
+//==========================================================
+
+// <h> ANT DFU Channel Configuration 
+
+//==========================================================
+// <o> NRF_DFU_ANT_RF_FREQ - DFU RF channel. 
+#ifndef NRF_DFU_ANT_RF_FREQ
+#define NRF_DFU_ANT_RF_FREQ 66
+#endif
+
+// <o> NRF_DFU_ANT_DEV_TYPE - Device type field to use for DFU channel id. 
+#ifndef NRF_DFU_ANT_DEV_TYPE
+#define NRF_DFU_ANT_DEV_TYPE 10
+#endif
+
+// <o> NRF_DFU_ANT_CHANNEL_PERIOD - Channel period of DFU ANT channel. 
+#ifndef NRF_DFU_ANT_CHANNEL_PERIOD
+#define NRF_DFU_ANT_CHANNEL_PERIOD 2048
+#endif
+
+// </h> 
+//==========================================================
+
+// </e>
+
+// <e> NRF_DFU_TRANSPORT_BLE - BLE transport settings
+//==========================================================
+#ifndef NRF_DFU_TRANSPORT_BLE
+#define NRF_DFU_TRANSPORT_BLE 1
+#endif
+// <q> NRF_DFU_BLE_SKIP_SD_INIT  - Skip the SoftDevice and interrupt vector table initialization.
+ 
+
+#ifndef NRF_DFU_BLE_SKIP_SD_INIT
+#define NRF_DFU_BLE_SKIP_SD_INIT 0
+#endif
+
+// <s> NRF_DFU_BLE_ADV_NAME - Default advertising name.
+#ifndef NRF_DFU_BLE_ADV_NAME
+#define NRF_DFU_BLE_ADV_NAME "DfuTarg"
+#endif
+
+// <o> NRF_DFU_BLE_ADV_INTERVAL - Advertising interval (in units of 0.625 ms) 
+#ifndef NRF_DFU_BLE_ADV_INTERVAL
+#define NRF_DFU_BLE_ADV_INTERVAL 40
+#endif
+
+// <h> BLE DFU security 
+
+//==========================================================
+// <q> NRF_DFU_BLE_REQUIRES_BONDS  - Require bond with peer.
+ 
+
+#ifndef NRF_DFU_BLE_REQUIRES_BONDS
+#define NRF_DFU_BLE_REQUIRES_BONDS 0
+#endif
+
+// </h> 
+//==========================================================
+
+// <h> BLE DFU connection 
+
+//==========================================================
+// <o> NRF_DFU_BLE_MIN_CONN_INTERVAL - Minimum connection interval (units). 
+// <i> Minimum GAP connection interval, in 1.25 ms units.
+
+#ifndef NRF_DFU_BLE_MIN_CONN_INTERVAL
+#define NRF_DFU_BLE_MIN_CONN_INTERVAL 12
+#endif
+
+// <o> NRF_DFU_BLE_MAX_CONN_INTERVAL - Maximum connection interval (units). 
+// <i> Maximum GAP connection interval, in 1.25 ms units.
+
+#ifndef NRF_DFU_BLE_MAX_CONN_INTERVAL
+#define NRF_DFU_BLE_MAX_CONN_INTERVAL 12
+#endif
+
+// <o> NRF_DFU_BLE_CONN_SUP_TIMEOUT_MS - Supervision timeout (ms). 
+// <i> GAP connection supervision timeout, in milliseconds.
+
+#ifndef NRF_DFU_BLE_CONN_SUP_TIMEOUT_MS
+#define NRF_DFU_BLE_CONN_SUP_TIMEOUT_MS 6000
+#endif
+
+// </h> 
+//==========================================================
+
+// <h> BLE DFU buffers 
+
+//==========================================================
+// <e> NRF_DFU_BLE_BUFFERS_OVERRIDE 
+
+// <i> Check this option to override the default number of buffers.
+//==========================================================
+#ifndef NRF_DFU_BLE_BUFFERS_OVERRIDE
+#define NRF_DFU_BLE_BUFFERS_OVERRIDE 0
+#endif
+// <o> NRF_DFU_BLE_BUFFERS - Number of buffers in the BLE transport. 
+// <i> Number of buffers to store incoming data while it is being written to flash.
+// <i> Reduce this value to save RAM. If this value is too low, the DFU process will fail.
+
+#ifndef NRF_DFU_BLE_BUFFERS
+#define NRF_DFU_BLE_BUFFERS 8
+#endif
+
+// </e>
+
+// </h> 
+//==========================================================
+
+// </e>
+
+// </h> 
+//==========================================================
+
+// <h> DFU protocol 
+
+//==========================================================
+// <q> NRF_DFU_PROTOCOL_FW_VERSION_MSG  - Firmware version message support.
+ 
+
+// <i> Firmware version message support.
+// <i> If disabled, firmware version requests will return NRF_DFU_RES_CODE_OP_CODE_NOT_SUPPORTED.
+
+#ifndef NRF_DFU_PROTOCOL_FW_VERSION_MSG
+#define NRF_DFU_PROTOCOL_FW_VERSION_MSG 1
+#endif
+
+// <q> NRF_DFU_PROTOCOL_REDUCED  - Reduced protocol opcode selection.
+ 
+
+// <i> Only support a minimal set of opcodes; return NRF_DFU_RES_CODE_OP_CODE_NOT_SUPPORTED 
+// <i> for unsupported opcodes. The supported opcodes are:NRF_DFU_OP_OBJECT_CREATE, 
+// <i> NRF_DFU_OP_OBJECT_EXECUTE, NRF_DFU_OP_OBJECT_SELECT, NRF_DFU_OP_OBJECT_WRITE, 
+// <i> NRF_DFU_OP_CRC_GET, NRF_DFU_OP_RECEIPT_NOTIF_SET, and NRF_DFU_OP_ABORT. 
+// <i> This reduced feature set is used by the BLE transport to reduce flash usage.
+
+#ifndef NRF_DFU_PROTOCOL_REDUCED
+#define NRF_DFU_PROTOCOL_REDUCED 1
+#endif
+
+// <q> NRF_DFU_PROTOCOL_VERSION_MSG  - Protocol version message support.
+ 
+
+// <i> Protocol version message support.
+// <i> If disabled, protocol version requests will return NRF_DFU_RES_CODE_OP_CODE_NOT_SUPPORTED.
+
+#ifndef NRF_DFU_PROTOCOL_VERSION_MSG
+#define NRF_DFU_PROTOCOL_VERSION_MSG 1
+#endif
+
+// </h> 
+//==========================================================
+
+// <h> Misc DFU settings 
+
+//==========================================================
+// <o> NRF_DFU_APP_DATA_AREA_SIZE - The size (in bytes) of the flash area reserved for application data. 
+// <i> This area is found at the end of the application area, next to the start of
+// <i> the bootloader. This area will not be erased by the bootloader during a
+// <i> firmware upgrade. The size must be a multiple of the flash page size.
+
+#ifndef NRF_DFU_APP_DATA_AREA_SIZE
+#define NRF_DFU_APP_DATA_AREA_SIZE 32768
+#endif
+
+// <q> NRF_DFU_IN_APP  - Specifies that this code is in the app, not the bootloader, so some settings are off-limits.
+ 
+
+// <i> Enable this to disable writing to areas of the settings that are protected
+// <i> by the bootlader. If this is not enabled in the app, certain settings write
+// <i> operations will cause HardFaults or will be ignored. Enabling this option
+// <i> also causes postvalidation to be disabled since this is meant to be done
+// <i> in the bootloader. NRF_BL_DFU_ALLOW_UPDATE_FROM_APP must be enabled in the bootloader.
+
+#ifndef NRF_DFU_IN_APP
+#define NRF_DFU_IN_APP 0
+#endif
+
+// <q> NRF_DFU_SAVE_PROGRESS_IN_FLASH  - Save DFU progress in flash.
+ 
+
+// <i> Save DFU progress to flash so that it can be resumed if interrupted, instead of being restarted.
+// <i> Keep this setting disabled to maximize transfer speed and minimize flash wear.
+// <i> The init packet is always saved in flash, regardless of this setting.
+
+#ifndef NRF_DFU_SAVE_PROGRESS_IN_FLASH
+#define NRF_DFU_SAVE_PROGRESS_IN_FLASH 0
+#endif
+
+// <q> NRF_DFU_SUPPORTS_EXTERNAL_APP  - [Experimental] Support for external app.
+ 
+
+// <i> External apps are apps that will not be activated. They can 
+// <i> e.g. be apps to be sent to a third party. External app updates 
+// <i> are verified upon reception, but will remain in bank 1, and 
+// <i> will never be booted. An external app will be overwritten if 
+// <i> a new DFU procedure is performed. Note: This functionality is 
+// <i> experimental and not yet used in any examples.
+
+#ifndef NRF_DFU_SUPPORTS_EXTERNAL_APP
+#define NRF_DFU_SUPPORTS_EXTERNAL_APP 0
+#endif
+
+// </h> 
+//==========================================================
+
+// </h> 
+//==========================================================
+
+// </h> 
+//==========================================================
+
+// <h> nRF_Libraries 
+
+//==========================================================
+// <e> APP_SCHEDULER_ENABLED - app_scheduler - Events scheduler
+//==========================================================
+#ifndef APP_SCHEDULER_ENABLED
+#define APP_SCHEDULER_ENABLED 1
+#endif
+// <q> APP_SCHEDULER_WITH_PAUSE  - Enabling pause feature
+ 
+
+#ifndef APP_SCHEDULER_WITH_PAUSE
+#define APP_SCHEDULER_WITH_PAUSE 0
+#endif
+
+// <q> APP_SCHEDULER_WITH_PROFILER  - Enabling scheduler profiling
+ 
+
+#ifndef APP_SCHEDULER_WITH_PROFILER
+#define APP_SCHEDULER_WITH_PROFILER 0
+#endif
+
+// </e>
+
+// <q> CRC32_ENABLED  - crc32 - CRC32 calculation routines
+ 
+
+#ifndef CRC32_ENABLED
+#define CRC32_ENABLED 1
+#endif
+
+// <e> MEM_MANAGER_ENABLED - mem_manager - Dynamic memory allocator
+//==========================================================
+#ifndef MEM_MANAGER_ENABLED
+#define MEM_MANAGER_ENABLED 1
+#endif
+// <o> MEMORY_MANAGER_SMALL_BLOCK_COUNT - Size of each memory blocks identified as 'small' block.  <0-255> 
+
+
+#ifndef MEMORY_MANAGER_SMALL_BLOCK_COUNT
+#define MEMORY_MANAGER_SMALL_BLOCK_COUNT 1
+#endif
+
+// <o> MEMORY_MANAGER_SMALL_BLOCK_SIZE -  Size of each memory blocks identified as 'small' block. 
+// <i>  Size of each memory blocks identified as 'small' block. Memory block are recommended to be word-sized.
+
+#ifndef MEMORY_MANAGER_SMALL_BLOCK_SIZE
+#define MEMORY_MANAGER_SMALL_BLOCK_SIZE 32
+#endif
+
+// <o> MEMORY_MANAGER_MEDIUM_BLOCK_COUNT - Size of each memory blocks identified as 'medium' block.  <0-255> 
+
+
+#ifndef MEMORY_MANAGER_MEDIUM_BLOCK_COUNT
+#define MEMORY_MANAGER_MEDIUM_BLOCK_COUNT 0
+#endif
+
+// <o> MEMORY_MANAGER_MEDIUM_BLOCK_SIZE -  Size of each memory blocks identified as 'medium' block. 
+// <i>  Size of each memory blocks identified as 'medium' block. Memory block are recommended to be word-sized.
+
+#ifndef MEMORY_MANAGER_MEDIUM_BLOCK_SIZE
+#define MEMORY_MANAGER_MEDIUM_BLOCK_SIZE 256
+#endif
+
+// <o> MEMORY_MANAGER_LARGE_BLOCK_COUNT - Size of each memory blocks identified as 'large' block.  <0-255> 
+
+
+#ifndef MEMORY_MANAGER_LARGE_BLOCK_COUNT
+#define MEMORY_MANAGER_LARGE_BLOCK_COUNT 0
+#endif
+
+// <o> MEMORY_MANAGER_LARGE_BLOCK_SIZE -  Size of each memory blocks identified as 'large' block. 
+// <i>  Size of each memory blocks identified as 'large' block. Memory block are recommended to be word-sized.
+
+#ifndef MEMORY_MANAGER_LARGE_BLOCK_SIZE
+#define MEMORY_MANAGER_LARGE_BLOCK_SIZE 256
+#endif
+
+// <o> MEMORY_MANAGER_XLARGE_BLOCK_COUNT - Size of each memory blocks identified as 'extra large' block.  <0-255> 
+
+
+#ifndef MEMORY_MANAGER_XLARGE_BLOCK_COUNT
+#define MEMORY_MANAGER_XLARGE_BLOCK_COUNT 0
+#endif
+
+// <o> MEMORY_MANAGER_XLARGE_BLOCK_SIZE -  Size of each memory blocks identified as 'extra large' block. 
+// <i>  Size of each memory blocks identified as 'extra large' block. Memory block are recommended to be word-sized.
+
+#ifndef MEMORY_MANAGER_XLARGE_BLOCK_SIZE
+#define MEMORY_MANAGER_XLARGE_BLOCK_SIZE 1320
+#endif
+
+// <o> MEMORY_MANAGER_XXLARGE_BLOCK_COUNT - Size of each memory blocks identified as 'extra extra large' block.  <0-255> 
+
+
+#ifndef MEMORY_MANAGER_XXLARGE_BLOCK_COUNT
+#define MEMORY_MANAGER_XXLARGE_BLOCK_COUNT 0
+#endif
+
+// <o> MEMORY_MANAGER_XXLARGE_BLOCK_SIZE -  Size of each memory blocks identified as 'extra extra large' block. 
+// <i>  Size of each memory blocks identified as 'extra extra large' block. Memory block are recommended to be word-sized.
+
+#ifndef MEMORY_MANAGER_XXLARGE_BLOCK_SIZE
+#define MEMORY_MANAGER_XXLARGE_BLOCK_SIZE 3444
+#endif
+
+// <o> MEMORY_MANAGER_XSMALL_BLOCK_COUNT - Size of each memory blocks identified as 'extra small' block.  <0-255> 
+
+
+#ifndef MEMORY_MANAGER_XSMALL_BLOCK_COUNT
+#define MEMORY_MANAGER_XSMALL_BLOCK_COUNT 0
+#endif
+
+// <o> MEMORY_MANAGER_XSMALL_BLOCK_SIZE -  Size of each memory blocks identified as 'extra small' block. 
+// <i>  Size of each memory blocks identified as 'extra large' block. Memory block are recommended to be word-sized.
+
+#ifndef MEMORY_MANAGER_XSMALL_BLOCK_SIZE
+#define MEMORY_MANAGER_XSMALL_BLOCK_SIZE 64
+#endif
+
+// <o> MEMORY_MANAGER_XXSMALL_BLOCK_COUNT - Size of each memory blocks identified as 'extra extra small' block.  <0-255> 
+
+
+#ifndef MEMORY_MANAGER_XXSMALL_BLOCK_COUNT
+#define MEMORY_MANAGER_XXSMALL_BLOCK_COUNT 0
+#endif
+
+// <o> MEMORY_MANAGER_XXSMALL_BLOCK_SIZE -  Size of each memory blocks identified as 'extra extra small' block. 
+// <i>  Size of each memory blocks identified as 'extra extra small' block. Memory block are recommended to be word-sized.
+
+#ifndef MEMORY_MANAGER_XXSMALL_BLOCK_SIZE
+#define MEMORY_MANAGER_XXSMALL_BLOCK_SIZE 32
+#endif
+
+// <e> MEM_MANAGER_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef MEM_MANAGER_CONFIG_LOG_ENABLED
+#define MEM_MANAGER_CONFIG_LOG_ENABLED 0
+#endif
+// <o> MEM_MANAGER_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef MEM_MANAGER_CONFIG_LOG_LEVEL
+#define MEM_MANAGER_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> MEM_MANAGER_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef MEM_MANAGER_CONFIG_INFO_COLOR
+#define MEM_MANAGER_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> MEM_MANAGER_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef MEM_MANAGER_CONFIG_DEBUG_COLOR
+#define MEM_MANAGER_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <q> MEM_MANAGER_DISABLE_API_PARAM_CHECK  - Disable API parameter checks in the module.
+ 
+
+#ifndef MEM_MANAGER_DISABLE_API_PARAM_CHECK
+#define MEM_MANAGER_DISABLE_API_PARAM_CHECK 0
+#endif
+
+// </e>
+
+// <e> NRF_BALLOC_ENABLED - nrf_balloc - Block allocator module
+//==========================================================
+#ifndef NRF_BALLOC_ENABLED
+#define NRF_BALLOC_ENABLED 1
+#endif
+// <e> NRF_BALLOC_CONFIG_DEBUG_ENABLED - Enables debug mode in the module.
+//==========================================================
+#ifndef NRF_BALLOC_CONFIG_DEBUG_ENABLED
+#define NRF_BALLOC_CONFIG_DEBUG_ENABLED 0
+#endif
+// <o> NRF_BALLOC_CONFIG_HEAD_GUARD_WORDS - Number of words used as head guard.  <0-255> 
+
+
+#ifndef NRF_BALLOC_CONFIG_HEAD_GUARD_WORDS
+#define NRF_BALLOC_CONFIG_HEAD_GUARD_WORDS 1
+#endif
+
+// <o> NRF_BALLOC_CONFIG_TAIL_GUARD_WORDS - Number of words used as tail guard.  <0-255> 
+
+
+#ifndef NRF_BALLOC_CONFIG_TAIL_GUARD_WORDS
+#define NRF_BALLOC_CONFIG_TAIL_GUARD_WORDS 1
+#endif
+
+// <q> NRF_BALLOC_CONFIG_BASIC_CHECKS_ENABLED  - Enables basic checks in this module.
+ 
+
+#ifndef NRF_BALLOC_CONFIG_BASIC_CHECKS_ENABLED
+#define NRF_BALLOC_CONFIG_BASIC_CHECKS_ENABLED 0
+#endif
+
+// <q> NRF_BALLOC_CONFIG_DOUBLE_FREE_CHECK_ENABLED  - Enables double memory free check in this module.
+ 
+
+#ifndef NRF_BALLOC_CONFIG_DOUBLE_FREE_CHECK_ENABLED
+#define NRF_BALLOC_CONFIG_DOUBLE_FREE_CHECK_ENABLED 0
+#endif
+
+// <q> NRF_BALLOC_CONFIG_DATA_TRASHING_CHECK_ENABLED  - Enables free memory corruption check in this module.
+ 
+
+#ifndef NRF_BALLOC_CONFIG_DATA_TRASHING_CHECK_ENABLED
+#define NRF_BALLOC_CONFIG_DATA_TRASHING_CHECK_ENABLED 0
+#endif
+
+// <q> NRF_BALLOC_CLI_CMDS  - Enable CLI commands specific to the module
+ 
+
+#ifndef NRF_BALLOC_CLI_CMDS
+#define NRF_BALLOC_CLI_CMDS 0
+#endif
+
+// </e>
+
+// </e>
+
+// <e> NRF_FSTORAGE_ENABLED - nrf_fstorage - Flash abstraction library
+//==========================================================
+#ifndef NRF_FSTORAGE_ENABLED
+#define NRF_FSTORAGE_ENABLED 1
+#endif
+// <h> nrf_fstorage - Common settings
+
+// <i> Common settings to all fstorage implementations
+//==========================================================
+// <q> NRF_FSTORAGE_PARAM_CHECK_DISABLED  - Disable user input validation
+ 
+
+// <i> If selected, use ASSERT to validate user input.
+// <i> This effectively removes user input validation in production code.
+// <i> Recommended setting: OFF, only enable this setting if size is a major concern.
+
+#ifndef NRF_FSTORAGE_PARAM_CHECK_DISABLED
+#define NRF_FSTORAGE_PARAM_CHECK_DISABLED 1
+#endif
+
+// </h> 
+//==========================================================
+
+// <h> nrf_fstorage_sd - Implementation using the SoftDevice
+
+// <i> Configuration options for the fstorage implementation using the SoftDevice
+//==========================================================
+// <o> NRF_FSTORAGE_SD_QUEUE_SIZE - Size of the internal queue of operations 
+// <i> Increase this value if API calls frequently return the error @ref NRF_ERROR_NO_MEM.
+
+#ifndef NRF_FSTORAGE_SD_QUEUE_SIZE
+#define NRF_FSTORAGE_SD_QUEUE_SIZE 16
+#endif
+
+// <o> NRF_FSTORAGE_SD_MAX_RETRIES - Maximum number of attempts at executing an operation when the SoftDevice is busy 
+// <i> Increase this value if events frequently return the @ref NRF_ERROR_TIMEOUT error.
+// <i> The SoftDevice might fail to schedule flash access due to high BLE activity.
+
+#ifndef NRF_FSTORAGE_SD_MAX_RETRIES
+#define NRF_FSTORAGE_SD_MAX_RETRIES 8
+#endif
+
+// <o> NRF_FSTORAGE_SD_MAX_WRITE_SIZE - Maximum number of bytes to be written to flash in a single operation 
+// <i> This value must be a multiple of four.
+// <i> Lowering this value can increase the chances of the SoftDevice being able to execute flash operations in between radio activity.
+// <i> This value is bound by the maximum number of bytes that can be written to flash in a single call to @ref sd_flash_write.
+// <i> That is 1024 bytes for nRF51 ICs and 4096 bytes for nRF52 ICs.
+
+#ifndef NRF_FSTORAGE_SD_MAX_WRITE_SIZE
+#define NRF_FSTORAGE_SD_MAX_WRITE_SIZE 20
+#endif
+
+// </h> 
+//==========================================================
+
+// </e>
+
+// <q> NRF_MEMOBJ_ENABLED  - nrf_memobj - Linked memory allocator module
+ 
+
+#ifndef NRF_MEMOBJ_ENABLED
+#define NRF_MEMOBJ_ENABLED 1
+#endif
+
+// <e> NRF_QUEUE_ENABLED - nrf_queue - Queue module
+//==========================================================
+#ifndef NRF_QUEUE_ENABLED
+#define NRF_QUEUE_ENABLED 0
+#endif
+// <q> NRF_QUEUE_CLI_CMDS  - Enable CLI commands specific to the module
+ 
+
+#ifndef NRF_QUEUE_CLI_CMDS
+#define NRF_QUEUE_CLI_CMDS 0
+#endif
+
+// </e>
+
+// <q> NRF_SECTION_ITER_ENABLED  - nrf_section_iter - Section iterator
+ 
+
+#ifndef NRF_SECTION_ITER_ENABLED
+#define NRF_SECTION_ITER_ENABLED 1
+#endif
+
+// <q> NRF_STRERROR_ENABLED  - nrf_strerror - Library for converting error code to string.
+ 
+
+#ifndef NRF_STRERROR_ENABLED
+#define NRF_STRERROR_ENABLED 1
+#endif
+
+// <h> nrf_fprintf - fprintf function.
+
+//==========================================================
+// <q> NRF_FPRINTF_ENABLED  - Enable/disable fprintf module.
+ 
+
+#ifndef NRF_FPRINTF_ENABLED
+#define NRF_FPRINTF_ENABLED 1
+#endif
+
+// <q> NRF_FPRINTF_FLAG_AUTOMATIC_CR_ON_LF_ENABLED  - For each printed LF, function will add CR.
+ 
+
+#ifndef NRF_FPRINTF_FLAG_AUTOMATIC_CR_ON_LF_ENABLED
+#define NRF_FPRINTF_FLAG_AUTOMATIC_CR_ON_LF_ENABLED 1
+#endif
+
+// <q> NRF_FPRINTF_DOUBLE_ENABLED  - Enable IEEE-754 double precision formatting.
+ 
+
+#ifndef NRF_FPRINTF_DOUBLE_ENABLED
+#define NRF_FPRINTF_DOUBLE_ENABLED 0
+#endif
+
+// </h> 
+//==========================================================
+
+// </h> 
+//==========================================================
+
+// <h> nRF_Log 
+
+//==========================================================
+// <e> NRF_LOG_ENABLED - nrf_log - Logger
+//==========================================================
+#ifndef NRF_LOG_ENABLED
+#define NRF_LOG_ENABLED 0
+#endif
+// <h> Log message pool - Configuration of log message pool
+
+//==========================================================
+// <o> NRF_LOG_MSGPOOL_ELEMENT_SIZE - Size of a single element in the pool of memory objects. 
+// <i> If a small value is set, then performance of logs processing
+// <i> is degraded because data is fragmented. Bigger value impacts
+// <i> RAM memory utilization. The size is set to fit a message with
+// <i> a timestamp and up to 2 arguments in a single memory object.
+
+#ifndef NRF_LOG_MSGPOOL_ELEMENT_SIZE
+#define NRF_LOG_MSGPOOL_ELEMENT_SIZE 20
+#endif
+
+// <o> NRF_LOG_MSGPOOL_ELEMENT_COUNT - Number of elements in the pool of memory objects 
+// <i> If a small value is set, then it may lead to a deadlock
+// <i> in certain cases if backend has high latency and holds
+// <i> multiple messages for long time. Bigger value impacts
+// <i> RAM memory usage.
+
+#ifndef NRF_LOG_MSGPOOL_ELEMENT_COUNT
+#define NRF_LOG_MSGPOOL_ELEMENT_COUNT 8
+#endif
+
+// </h> 
+//==========================================================
+
+// <q> NRF_LOG_ALLOW_OVERFLOW  - Configures behavior when circular buffer is full.
+ 
+
+// <i> If set then oldest logs are overwritten. Otherwise a 
+// <i> marker is injected informing about overflow.
+
+#ifndef NRF_LOG_ALLOW_OVERFLOW
+#define NRF_LOG_ALLOW_OVERFLOW 1
+#endif
+
+// <o> NRF_LOG_BUFSIZE  - Size of the buffer for storing logs (in bytes).
+ 
+
+// <i> Must be power of 2 and multiple of 4.
+// <i> If NRF_LOG_DEFERRED = 0 then buffer size can be reduced to minimum.
+// <128=> 128 
+// <256=> 256 
+// <512=> 512 
+// <1024=> 1024 
+// <2048=> 2048 
+// <4096=> 4096 
+// <8192=> 8192 
+// <16384=> 16384 
+
+#ifndef NRF_LOG_BUFSIZE
+#define NRF_LOG_BUFSIZE 1024
+#endif
+
+// <q> NRF_LOG_CLI_CMDS  - Enable CLI commands for the module.
+ 
+
+#ifndef NRF_LOG_CLI_CMDS
+#define NRF_LOG_CLI_CMDS 0
+#endif
+
+// <o> NRF_LOG_DEFAULT_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef NRF_LOG_DEFAULT_LEVEL
+#define NRF_LOG_DEFAULT_LEVEL 3
+#endif
+
+// <q> NRF_LOG_DEFERRED  - Enable deffered logger.
+ 
+
+// <i> Log data is buffered and can be processed in idle.
+
+#ifndef NRF_LOG_DEFERRED
+#define NRF_LOG_DEFERRED 1
+#endif
+
+// <q> NRF_LOG_FILTERS_ENABLED  - Enable dynamic filtering of logs.
+ 
+
+#ifndef NRF_LOG_FILTERS_ENABLED
+#define NRF_LOG_FILTERS_ENABLED 0
+#endif
+
+// <q> NRF_LOG_NON_DEFFERED_CRITICAL_REGION_ENABLED  - Enable use of critical region for non deffered mode when flushing logs.
+ 
+
+// <i> When enabled NRF_LOG_FLUSH is called from critical section when non deffered mode is used.
+// <i> Log output will never be corrupted as access to the log backend is exclusive
+// <i> but system will spend significant amount of time in critical section
+
+#ifndef NRF_LOG_NON_DEFFERED_CRITICAL_REGION_ENABLED
+#define NRF_LOG_NON_DEFFERED_CRITICAL_REGION_ENABLED 0
+#endif
+
+// <o> NRF_LOG_STR_PUSH_BUFFER_SIZE  - Size of the buffer dedicated for strings stored using @ref NRF_LOG_PUSH.
+ 
+// <16=> 16 
+// <32=> 32 
+// <64=> 64 
+// <128=> 128 
+// <256=> 256 
+// <512=> 512 
+// <1024=> 1024 
+
+#ifndef NRF_LOG_STR_PUSH_BUFFER_SIZE
+#define NRF_LOG_STR_PUSH_BUFFER_SIZE 128
+#endif
+
+// <o> NRF_LOG_STR_PUSH_BUFFER_SIZE  - Size of the buffer dedicated for strings stored using @ref NRF_LOG_PUSH.
+ 
+// <16=> 16 
+// <32=> 32 
+// <64=> 64 
+// <128=> 128 
+// <256=> 256 
+// <512=> 512 
+// <1024=> 1024 
+
+#ifndef NRF_LOG_STR_PUSH_BUFFER_SIZE
+#define NRF_LOG_STR_PUSH_BUFFER_SIZE 128
+#endif
+
+// <e> NRF_LOG_USES_COLORS - If enabled then ANSI escape code for colors is prefixed to every string
+//==========================================================
+#ifndef NRF_LOG_USES_COLORS
+#define NRF_LOG_USES_COLORS 0
+#endif
+// <o> NRF_LOG_COLOR_DEFAULT  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_LOG_COLOR_DEFAULT
+#define NRF_LOG_COLOR_DEFAULT 0
+#endif
+
+// <o> NRF_LOG_ERROR_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_LOG_ERROR_COLOR
+#define NRF_LOG_ERROR_COLOR 2
+#endif
+
+// <o> NRF_LOG_WARNING_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_LOG_WARNING_COLOR
+#define NRF_LOG_WARNING_COLOR 4
+#endif
+
+// </e>
+
+// <e> NRF_LOG_USES_TIMESTAMP - Enable timestamping
+
+// <i> Function for getting the timestamp is provided by the user
+//==========================================================
+#ifndef NRF_LOG_USES_TIMESTAMP
+#define NRF_LOG_USES_TIMESTAMP 0
+#endif
+// <o> NRF_LOG_TIMESTAMP_DEFAULT_FREQUENCY - Default frequency of the timestamp (in Hz) or 0 to use app_timer frequency. 
+#ifndef NRF_LOG_TIMESTAMP_DEFAULT_FREQUENCY
+#define NRF_LOG_TIMESTAMP_DEFAULT_FREQUENCY 0
+#endif
+
+// </e>
+
+// <h> nrf_log module configuration 
+
+//==========================================================
+// <h> nrf_log in nRF_Core 
+
+//==========================================================
+// <e> NRF_MPU_LIB_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef NRF_MPU_LIB_CONFIG_LOG_ENABLED
+#define NRF_MPU_LIB_CONFIG_LOG_ENABLED 0
+#endif
+// <o> NRF_MPU_LIB_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef NRF_MPU_LIB_CONFIG_LOG_LEVEL
+#define NRF_MPU_LIB_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> NRF_MPU_LIB_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_MPU_LIB_CONFIG_INFO_COLOR
+#define NRF_MPU_LIB_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> NRF_MPU_LIB_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_MPU_LIB_CONFIG_DEBUG_COLOR
+#define NRF_MPU_LIB_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> NRF_STACK_GUARD_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef NRF_STACK_GUARD_CONFIG_LOG_ENABLED
+#define NRF_STACK_GUARD_CONFIG_LOG_ENABLED 0
+#endif
+// <o> NRF_STACK_GUARD_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef NRF_STACK_GUARD_CONFIG_LOG_LEVEL
+#define NRF_STACK_GUARD_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> NRF_STACK_GUARD_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_STACK_GUARD_CONFIG_INFO_COLOR
+#define NRF_STACK_GUARD_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> NRF_STACK_GUARD_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_STACK_GUARD_CONFIG_DEBUG_COLOR
+#define NRF_STACK_GUARD_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> TASK_MANAGER_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef TASK_MANAGER_CONFIG_LOG_ENABLED
+#define TASK_MANAGER_CONFIG_LOG_ENABLED 0
+#endif
+// <o> TASK_MANAGER_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef TASK_MANAGER_CONFIG_LOG_LEVEL
+#define TASK_MANAGER_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> TASK_MANAGER_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef TASK_MANAGER_CONFIG_INFO_COLOR
+#define TASK_MANAGER_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> TASK_MANAGER_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef TASK_MANAGER_CONFIG_DEBUG_COLOR
+#define TASK_MANAGER_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// </h> 
+//==========================================================
+
+// <h> nrf_log in nRF_Drivers 
+
+//==========================================================
+// <e> CLOCK_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef CLOCK_CONFIG_LOG_ENABLED
+#define CLOCK_CONFIG_LOG_ENABLED 0
+#endif
+// <o> CLOCK_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef CLOCK_CONFIG_LOG_LEVEL
+#define CLOCK_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> CLOCK_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef CLOCK_CONFIG_INFO_COLOR
+#define CLOCK_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> CLOCK_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef CLOCK_CONFIG_DEBUG_COLOR
+#define CLOCK_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> COMP_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef COMP_CONFIG_LOG_ENABLED
+#define COMP_CONFIG_LOG_ENABLED 0
+#endif
+// <o> COMP_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef COMP_CONFIG_LOG_LEVEL
+#define COMP_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> COMP_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef COMP_CONFIG_INFO_COLOR
+#define COMP_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> COMP_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef COMP_CONFIG_DEBUG_COLOR
+#define COMP_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> GPIOTE_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef GPIOTE_CONFIG_LOG_ENABLED
+#define GPIOTE_CONFIG_LOG_ENABLED 0
+#endif
+// <o> GPIOTE_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef GPIOTE_CONFIG_LOG_LEVEL
+#define GPIOTE_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> GPIOTE_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef GPIOTE_CONFIG_INFO_COLOR
+#define GPIOTE_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> GPIOTE_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef GPIOTE_CONFIG_DEBUG_COLOR
+#define GPIOTE_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> LPCOMP_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef LPCOMP_CONFIG_LOG_ENABLED
+#define LPCOMP_CONFIG_LOG_ENABLED 0
+#endif
+// <o> LPCOMP_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef LPCOMP_CONFIG_LOG_LEVEL
+#define LPCOMP_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> LPCOMP_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef LPCOMP_CONFIG_INFO_COLOR
+#define LPCOMP_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> LPCOMP_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef LPCOMP_CONFIG_DEBUG_COLOR
+#define LPCOMP_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> MAX3421E_HOST_CONFIG_LOG_ENABLED - Enable logging in the module
+//==========================================================
+#ifndef MAX3421E_HOST_CONFIG_LOG_ENABLED
+#define MAX3421E_HOST_CONFIG_LOG_ENABLED 0
+#endif
+// <o> MAX3421E_HOST_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef MAX3421E_HOST_CONFIG_LOG_LEVEL
+#define MAX3421E_HOST_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> MAX3421E_HOST_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef MAX3421E_HOST_CONFIG_INFO_COLOR
+#define MAX3421E_HOST_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> MAX3421E_HOST_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef MAX3421E_HOST_CONFIG_DEBUG_COLOR
+#define MAX3421E_HOST_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> NRFX_USBD_CONFIG_LOG_ENABLED - Enable logging in the module
+//==========================================================
+#ifndef NRFX_USBD_CONFIG_LOG_ENABLED
+#define NRFX_USBD_CONFIG_LOG_ENABLED 0
+#endif
+// <o> NRFX_USBD_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef NRFX_USBD_CONFIG_LOG_LEVEL
+#define NRFX_USBD_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> NRFX_USBD_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRFX_USBD_CONFIG_INFO_COLOR
+#define NRFX_USBD_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> NRFX_USBD_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRFX_USBD_CONFIG_DEBUG_COLOR
+#define NRFX_USBD_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> PDM_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef PDM_CONFIG_LOG_ENABLED
+#define PDM_CONFIG_LOG_ENABLED 0
+#endif
+// <o> PDM_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef PDM_CONFIG_LOG_LEVEL
+#define PDM_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> PDM_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef PDM_CONFIG_INFO_COLOR
+#define PDM_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> PDM_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef PDM_CONFIG_DEBUG_COLOR
+#define PDM_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> PPI_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef PPI_CONFIG_LOG_ENABLED
+#define PPI_CONFIG_LOG_ENABLED 0
+#endif
+// <o> PPI_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef PPI_CONFIG_LOG_LEVEL
+#define PPI_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> PPI_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef PPI_CONFIG_INFO_COLOR
+#define PPI_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> PPI_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef PPI_CONFIG_DEBUG_COLOR
+#define PPI_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> PWM_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef PWM_CONFIG_LOG_ENABLED
+#define PWM_CONFIG_LOG_ENABLED 0
+#endif
+// <o> PWM_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef PWM_CONFIG_LOG_LEVEL
+#define PWM_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> PWM_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef PWM_CONFIG_INFO_COLOR
+#define PWM_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> PWM_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef PWM_CONFIG_DEBUG_COLOR
+#define PWM_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> QDEC_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef QDEC_CONFIG_LOG_ENABLED
+#define QDEC_CONFIG_LOG_ENABLED 0
+#endif
+// <o> QDEC_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef QDEC_CONFIG_LOG_LEVEL
+#define QDEC_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> QDEC_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef QDEC_CONFIG_INFO_COLOR
+#define QDEC_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> QDEC_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef QDEC_CONFIG_DEBUG_COLOR
+#define QDEC_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> RNG_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef RNG_CONFIG_LOG_ENABLED
+#define RNG_CONFIG_LOG_ENABLED 0
+#endif
+// <o> RNG_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef RNG_CONFIG_LOG_LEVEL
+#define RNG_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> RNG_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef RNG_CONFIG_INFO_COLOR
+#define RNG_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> RNG_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef RNG_CONFIG_DEBUG_COLOR
+#define RNG_CONFIG_DEBUG_COLOR 0
+#endif
+
+// <q> RNG_CONFIG_RANDOM_NUMBER_LOG_ENABLED  - Enables logging of random numbers.
+ 
+
+#ifndef RNG_CONFIG_RANDOM_NUMBER_LOG_ENABLED
+#define RNG_CONFIG_RANDOM_NUMBER_LOG_ENABLED 0
+#endif
+
+// </e>
+
+// <e> RTC_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef RTC_CONFIG_LOG_ENABLED
+#define RTC_CONFIG_LOG_ENABLED 0
+#endif
+// <o> RTC_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef RTC_CONFIG_LOG_LEVEL
+#define RTC_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> RTC_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef RTC_CONFIG_INFO_COLOR
+#define RTC_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> RTC_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef RTC_CONFIG_DEBUG_COLOR
+#define RTC_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> SAADC_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef SAADC_CONFIG_LOG_ENABLED
+#define SAADC_CONFIG_LOG_ENABLED 0
+#endif
+// <o> SAADC_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef SAADC_CONFIG_LOG_LEVEL
+#define SAADC_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> SAADC_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef SAADC_CONFIG_INFO_COLOR
+#define SAADC_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> SAADC_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef SAADC_CONFIG_DEBUG_COLOR
+#define SAADC_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> SPIS_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef SPIS_CONFIG_LOG_ENABLED
+#define SPIS_CONFIG_LOG_ENABLED 0
+#endif
+// <o> SPIS_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef SPIS_CONFIG_LOG_LEVEL
+#define SPIS_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> SPIS_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef SPIS_CONFIG_INFO_COLOR
+#define SPIS_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> SPIS_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef SPIS_CONFIG_DEBUG_COLOR
+#define SPIS_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> SPI_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef SPI_CONFIG_LOG_ENABLED
+#define SPI_CONFIG_LOG_ENABLED 0
+#endif
+// <o> SPI_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef SPI_CONFIG_LOG_LEVEL
+#define SPI_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> SPI_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef SPI_CONFIG_INFO_COLOR
+#define SPI_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> SPI_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef SPI_CONFIG_DEBUG_COLOR
+#define SPI_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> TIMER_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef TIMER_CONFIG_LOG_ENABLED
+#define TIMER_CONFIG_LOG_ENABLED 0
+#endif
+// <o> TIMER_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef TIMER_CONFIG_LOG_LEVEL
+#define TIMER_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> TIMER_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef TIMER_CONFIG_INFO_COLOR
+#define TIMER_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> TIMER_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef TIMER_CONFIG_DEBUG_COLOR
+#define TIMER_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> TWIS_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef TWIS_CONFIG_LOG_ENABLED
+#define TWIS_CONFIG_LOG_ENABLED 0
+#endif
+// <o> TWIS_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef TWIS_CONFIG_LOG_LEVEL
+#define TWIS_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> TWIS_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef TWIS_CONFIG_INFO_COLOR
+#define TWIS_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> TWIS_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef TWIS_CONFIG_DEBUG_COLOR
+#define TWIS_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> TWI_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef TWI_CONFIG_LOG_ENABLED
+#define TWI_CONFIG_LOG_ENABLED 0
+#endif
+// <o> TWI_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef TWI_CONFIG_LOG_LEVEL
+#define TWI_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> TWI_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef TWI_CONFIG_INFO_COLOR
+#define TWI_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> TWI_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef TWI_CONFIG_DEBUG_COLOR
+#define TWI_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> UART_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef UART_CONFIG_LOG_ENABLED
+#define UART_CONFIG_LOG_ENABLED 0
+#endif
+// <o> UART_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef UART_CONFIG_LOG_LEVEL
+#define UART_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> UART_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef UART_CONFIG_INFO_COLOR
+#define UART_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> UART_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef UART_CONFIG_DEBUG_COLOR
+#define UART_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> USBD_CONFIG_LOG_ENABLED - Enable logging in the module
+//==========================================================
+#ifndef USBD_CONFIG_LOG_ENABLED
+#define USBD_CONFIG_LOG_ENABLED 0
+#endif
+// <o> USBD_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef USBD_CONFIG_LOG_LEVEL
+#define USBD_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> USBD_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef USBD_CONFIG_INFO_COLOR
+#define USBD_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> USBD_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef USBD_CONFIG_DEBUG_COLOR
+#define USBD_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> WDT_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef WDT_CONFIG_LOG_ENABLED
+#define WDT_CONFIG_LOG_ENABLED 0
+#endif
+// <o> WDT_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef WDT_CONFIG_LOG_LEVEL
+#define WDT_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> WDT_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef WDT_CONFIG_INFO_COLOR
+#define WDT_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> WDT_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef WDT_CONFIG_DEBUG_COLOR
+#define WDT_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// </h> 
+//==========================================================
+
+// <h> nrf_log in nRF_Libraries 
+
+//==========================================================
+// <e> APP_BUTTON_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef APP_BUTTON_CONFIG_LOG_ENABLED
+#define APP_BUTTON_CONFIG_LOG_ENABLED 0
+#endif
+// <o> APP_BUTTON_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef APP_BUTTON_CONFIG_LOG_LEVEL
+#define APP_BUTTON_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> APP_BUTTON_CONFIG_INITIAL_LOG_LEVEL  - Initial severity level if dynamic filtering is enabled.
+ 
+
+// <i> If module generates a lot of logs, initial log level can
+// <i> be decreased to prevent flooding. Severity level can be
+// <i> increased on instance basis.
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef APP_BUTTON_CONFIG_INITIAL_LOG_LEVEL
+#define APP_BUTTON_CONFIG_INITIAL_LOG_LEVEL 3
+#endif
+
+// <o> APP_BUTTON_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef APP_BUTTON_CONFIG_INFO_COLOR
+#define APP_BUTTON_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> APP_BUTTON_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef APP_BUTTON_CONFIG_DEBUG_COLOR
+#define APP_BUTTON_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> APP_TIMER_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef APP_TIMER_CONFIG_LOG_ENABLED
+#define APP_TIMER_CONFIG_LOG_ENABLED 0
+#endif
+// <o> APP_TIMER_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef APP_TIMER_CONFIG_LOG_LEVEL
+#define APP_TIMER_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> APP_TIMER_CONFIG_INITIAL_LOG_LEVEL  - Initial severity level if dynamic filtering is enabled.
+ 
+
+// <i> If module generates a lot of logs, initial log level can
+// <i> be decreased to prevent flooding. Severity level can be
+// <i> increased on instance basis.
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef APP_TIMER_CONFIG_INITIAL_LOG_LEVEL
+#define APP_TIMER_CONFIG_INITIAL_LOG_LEVEL 3
+#endif
+
+// <o> APP_TIMER_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef APP_TIMER_CONFIG_INFO_COLOR
+#define APP_TIMER_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> APP_TIMER_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef APP_TIMER_CONFIG_DEBUG_COLOR
+#define APP_TIMER_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> APP_USBD_CDC_ACM_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef APP_USBD_CDC_ACM_CONFIG_LOG_ENABLED
+#define APP_USBD_CDC_ACM_CONFIG_LOG_ENABLED 0
+#endif
+// <o> APP_USBD_CDC_ACM_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef APP_USBD_CDC_ACM_CONFIG_LOG_LEVEL
+#define APP_USBD_CDC_ACM_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> APP_USBD_CDC_ACM_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef APP_USBD_CDC_ACM_CONFIG_INFO_COLOR
+#define APP_USBD_CDC_ACM_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> APP_USBD_CDC_ACM_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef APP_USBD_CDC_ACM_CONFIG_DEBUG_COLOR
+#define APP_USBD_CDC_ACM_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> APP_USBD_CONFIG_LOG_ENABLED - Enable logging in the module.
+//==========================================================
+#ifndef APP_USBD_CONFIG_LOG_ENABLED
+#define APP_USBD_CONFIG_LOG_ENABLED 0
+#endif
+// <o> APP_USBD_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef APP_USBD_CONFIG_LOG_LEVEL
+#define APP_USBD_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> APP_USBD_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef APP_USBD_CONFIG_INFO_COLOR
+#define APP_USBD_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> APP_USBD_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef APP_USBD_CONFIG_DEBUG_COLOR
+#define APP_USBD_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> APP_USBD_DUMMY_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef APP_USBD_DUMMY_CONFIG_LOG_ENABLED
+#define APP_USBD_DUMMY_CONFIG_LOG_ENABLED 0
+#endif
+// <o> APP_USBD_DUMMY_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef APP_USBD_DUMMY_CONFIG_LOG_LEVEL
+#define APP_USBD_DUMMY_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> APP_USBD_DUMMY_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef APP_USBD_DUMMY_CONFIG_INFO_COLOR
+#define APP_USBD_DUMMY_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> APP_USBD_DUMMY_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef APP_USBD_DUMMY_CONFIG_DEBUG_COLOR
+#define APP_USBD_DUMMY_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> APP_USBD_MSC_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef APP_USBD_MSC_CONFIG_LOG_ENABLED
+#define APP_USBD_MSC_CONFIG_LOG_ENABLED 0
+#endif
+// <o> APP_USBD_MSC_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef APP_USBD_MSC_CONFIG_LOG_LEVEL
+#define APP_USBD_MSC_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> APP_USBD_MSC_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef APP_USBD_MSC_CONFIG_INFO_COLOR
+#define APP_USBD_MSC_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> APP_USBD_MSC_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef APP_USBD_MSC_CONFIG_DEBUG_COLOR
+#define APP_USBD_MSC_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> APP_USBD_NRF_DFU_TRIGGER_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef APP_USBD_NRF_DFU_TRIGGER_CONFIG_LOG_ENABLED
+#define APP_USBD_NRF_DFU_TRIGGER_CONFIG_LOG_ENABLED 0
+#endif
+// <o> APP_USBD_NRF_DFU_TRIGGER_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef APP_USBD_NRF_DFU_TRIGGER_CONFIG_LOG_LEVEL
+#define APP_USBD_NRF_DFU_TRIGGER_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> APP_USBD_NRF_DFU_TRIGGER_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef APP_USBD_NRF_DFU_TRIGGER_CONFIG_INFO_COLOR
+#define APP_USBD_NRF_DFU_TRIGGER_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> APP_USBD_NRF_DFU_TRIGGER_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef APP_USBD_NRF_DFU_TRIGGER_CONFIG_DEBUG_COLOR
+#define APP_USBD_NRF_DFU_TRIGGER_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> NRF_ATFIFO_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef NRF_ATFIFO_CONFIG_LOG_ENABLED
+#define NRF_ATFIFO_CONFIG_LOG_ENABLED 0
+#endif
+// <o> NRF_ATFIFO_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef NRF_ATFIFO_CONFIG_LOG_LEVEL
+#define NRF_ATFIFO_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> NRF_ATFIFO_CONFIG_LOG_INIT_FILTER_LEVEL  - Initial severity level if dynamic filtering is enabled
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef NRF_ATFIFO_CONFIG_LOG_INIT_FILTER_LEVEL
+#define NRF_ATFIFO_CONFIG_LOG_INIT_FILTER_LEVEL 3
+#endif
+
+// <o> NRF_ATFIFO_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_ATFIFO_CONFIG_INFO_COLOR
+#define NRF_ATFIFO_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> NRF_ATFIFO_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_ATFIFO_CONFIG_DEBUG_COLOR
+#define NRF_ATFIFO_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> NRF_BALLOC_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef NRF_BALLOC_CONFIG_LOG_ENABLED
+#define NRF_BALLOC_CONFIG_LOG_ENABLED 0
+#endif
+// <o> NRF_BALLOC_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef NRF_BALLOC_CONFIG_LOG_LEVEL
+#define NRF_BALLOC_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> NRF_BALLOC_CONFIG_INITIAL_LOG_LEVEL  - Initial severity level if dynamic filtering is enabled.
+ 
+
+// <i> If module generates a lot of logs, initial log level can
+// <i> be decreased to prevent flooding. Severity level can be
+// <i> increased on instance basis.
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef NRF_BALLOC_CONFIG_INITIAL_LOG_LEVEL
+#define NRF_BALLOC_CONFIG_INITIAL_LOG_LEVEL 3
+#endif
+
+// <o> NRF_BALLOC_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_BALLOC_CONFIG_INFO_COLOR
+#define NRF_BALLOC_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> NRF_BALLOC_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_BALLOC_CONFIG_DEBUG_COLOR
+#define NRF_BALLOC_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> NRF_BLOCK_DEV_EMPTY_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef NRF_BLOCK_DEV_EMPTY_CONFIG_LOG_ENABLED
+#define NRF_BLOCK_DEV_EMPTY_CONFIG_LOG_ENABLED 0
+#endif
+// <o> NRF_BLOCK_DEV_EMPTY_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef NRF_BLOCK_DEV_EMPTY_CONFIG_LOG_LEVEL
+#define NRF_BLOCK_DEV_EMPTY_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> NRF_BLOCK_DEV_EMPTY_CONFIG_LOG_INIT_FILTER_LEVEL  - Initial severity level if dynamic filtering is enabled
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef NRF_BLOCK_DEV_EMPTY_CONFIG_LOG_INIT_FILTER_LEVEL
+#define NRF_BLOCK_DEV_EMPTY_CONFIG_LOG_INIT_FILTER_LEVEL 3
+#endif
+
+// <o> NRF_BLOCK_DEV_EMPTY_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_BLOCK_DEV_EMPTY_CONFIG_INFO_COLOR
+#define NRF_BLOCK_DEV_EMPTY_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> NRF_BLOCK_DEV_EMPTY_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_BLOCK_DEV_EMPTY_CONFIG_DEBUG_COLOR
+#define NRF_BLOCK_DEV_EMPTY_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> NRF_BLOCK_DEV_QSPI_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef NRF_BLOCK_DEV_QSPI_CONFIG_LOG_ENABLED
+#define NRF_BLOCK_DEV_QSPI_CONFIG_LOG_ENABLED 0
+#endif
+// <o> NRF_BLOCK_DEV_QSPI_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef NRF_BLOCK_DEV_QSPI_CONFIG_LOG_LEVEL
+#define NRF_BLOCK_DEV_QSPI_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> NRF_BLOCK_DEV_QSPI_CONFIG_LOG_INIT_FILTER_LEVEL  - Initial severity level if dynamic filtering is enabled
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef NRF_BLOCK_DEV_QSPI_CONFIG_LOG_INIT_FILTER_LEVEL
+#define NRF_BLOCK_DEV_QSPI_CONFIG_LOG_INIT_FILTER_LEVEL 3
+#endif
+
+// <o> NRF_BLOCK_DEV_QSPI_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_BLOCK_DEV_QSPI_CONFIG_INFO_COLOR
+#define NRF_BLOCK_DEV_QSPI_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> NRF_BLOCK_DEV_QSPI_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_BLOCK_DEV_QSPI_CONFIG_DEBUG_COLOR
+#define NRF_BLOCK_DEV_QSPI_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> NRF_BLOCK_DEV_RAM_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef NRF_BLOCK_DEV_RAM_CONFIG_LOG_ENABLED
+#define NRF_BLOCK_DEV_RAM_CONFIG_LOG_ENABLED 0
+#endif
+// <o> NRF_BLOCK_DEV_RAM_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef NRF_BLOCK_DEV_RAM_CONFIG_LOG_LEVEL
+#define NRF_BLOCK_DEV_RAM_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> NRF_BLOCK_DEV_RAM_CONFIG_LOG_INIT_FILTER_LEVEL  - Initial severity level if dynamic filtering is enabled
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef NRF_BLOCK_DEV_RAM_CONFIG_LOG_INIT_FILTER_LEVEL
+#define NRF_BLOCK_DEV_RAM_CONFIG_LOG_INIT_FILTER_LEVEL 3
+#endif
+
+// <o> NRF_BLOCK_DEV_RAM_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_BLOCK_DEV_RAM_CONFIG_INFO_COLOR
+#define NRF_BLOCK_DEV_RAM_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> NRF_BLOCK_DEV_RAM_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_BLOCK_DEV_RAM_CONFIG_DEBUG_COLOR
+#define NRF_BLOCK_DEV_RAM_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> NRF_CLI_BLE_UART_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef NRF_CLI_BLE_UART_CONFIG_LOG_ENABLED
+#define NRF_CLI_BLE_UART_CONFIG_LOG_ENABLED 0
+#endif
+// <o> NRF_CLI_BLE_UART_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef NRF_CLI_BLE_UART_CONFIG_LOG_LEVEL
+#define NRF_CLI_BLE_UART_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> NRF_CLI_BLE_UART_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_CLI_BLE_UART_CONFIG_INFO_COLOR
+#define NRF_CLI_BLE_UART_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> NRF_CLI_BLE_UART_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_CLI_BLE_UART_CONFIG_DEBUG_COLOR
+#define NRF_CLI_BLE_UART_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> NRF_CLI_LIBUARTE_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef NRF_CLI_LIBUARTE_CONFIG_LOG_ENABLED
+#define NRF_CLI_LIBUARTE_CONFIG_LOG_ENABLED 0
+#endif
+// <o> NRF_CLI_LIBUARTE_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef NRF_CLI_LIBUARTE_CONFIG_LOG_LEVEL
+#define NRF_CLI_LIBUARTE_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> NRF_CLI_LIBUARTE_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_CLI_LIBUARTE_CONFIG_INFO_COLOR
+#define NRF_CLI_LIBUARTE_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> NRF_CLI_LIBUARTE_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_CLI_LIBUARTE_CONFIG_DEBUG_COLOR
+#define NRF_CLI_LIBUARTE_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> NRF_CLI_UART_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef NRF_CLI_UART_CONFIG_LOG_ENABLED
+#define NRF_CLI_UART_CONFIG_LOG_ENABLED 0
+#endif
+// <o> NRF_CLI_UART_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef NRF_CLI_UART_CONFIG_LOG_LEVEL
+#define NRF_CLI_UART_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> NRF_CLI_UART_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_CLI_UART_CONFIG_INFO_COLOR
+#define NRF_CLI_UART_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> NRF_CLI_UART_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_CLI_UART_CONFIG_DEBUG_COLOR
+#define NRF_CLI_UART_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> NRF_LIBUARTE_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef NRF_LIBUARTE_CONFIG_LOG_ENABLED
+#define NRF_LIBUARTE_CONFIG_LOG_ENABLED 0
+#endif
+// <o> NRF_LIBUARTE_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef NRF_LIBUARTE_CONFIG_LOG_LEVEL
+#define NRF_LIBUARTE_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> NRF_LIBUARTE_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_LIBUARTE_CONFIG_INFO_COLOR
+#define NRF_LIBUARTE_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> NRF_LIBUARTE_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_LIBUARTE_CONFIG_DEBUG_COLOR
+#define NRF_LIBUARTE_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> NRF_MEMOBJ_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef NRF_MEMOBJ_CONFIG_LOG_ENABLED
+#define NRF_MEMOBJ_CONFIG_LOG_ENABLED 0
+#endif
+// <o> NRF_MEMOBJ_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef NRF_MEMOBJ_CONFIG_LOG_LEVEL
+#define NRF_MEMOBJ_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> NRF_MEMOBJ_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_MEMOBJ_CONFIG_INFO_COLOR
+#define NRF_MEMOBJ_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> NRF_MEMOBJ_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_MEMOBJ_CONFIG_DEBUG_COLOR
+#define NRF_MEMOBJ_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> NRF_PWR_MGMT_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef NRF_PWR_MGMT_CONFIG_LOG_ENABLED
+#define NRF_PWR_MGMT_CONFIG_LOG_ENABLED 0
+#endif
+// <o> NRF_PWR_MGMT_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef NRF_PWR_MGMT_CONFIG_LOG_LEVEL
+#define NRF_PWR_MGMT_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> NRF_PWR_MGMT_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_PWR_MGMT_CONFIG_INFO_COLOR
+#define NRF_PWR_MGMT_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> NRF_PWR_MGMT_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_PWR_MGMT_CONFIG_DEBUG_COLOR
+#define NRF_PWR_MGMT_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> NRF_QUEUE_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef NRF_QUEUE_CONFIG_LOG_ENABLED
+#define NRF_QUEUE_CONFIG_LOG_ENABLED 0
+#endif
+// <o> NRF_QUEUE_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef NRF_QUEUE_CONFIG_LOG_LEVEL
+#define NRF_QUEUE_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> NRF_QUEUE_CONFIG_LOG_INIT_FILTER_LEVEL  - Initial severity level if dynamic filtering is enabled
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef NRF_QUEUE_CONFIG_LOG_INIT_FILTER_LEVEL
+#define NRF_QUEUE_CONFIG_LOG_INIT_FILTER_LEVEL 3
+#endif
+
+// <o> NRF_QUEUE_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_QUEUE_CONFIG_INFO_COLOR
+#define NRF_QUEUE_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> NRF_QUEUE_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_QUEUE_CONFIG_DEBUG_COLOR
+#define NRF_QUEUE_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> NRF_SDH_ANT_LOG_ENABLED - Enable logging in SoftDevice handler (ANT) module.
+//==========================================================
+#ifndef NRF_SDH_ANT_LOG_ENABLED
+#define NRF_SDH_ANT_LOG_ENABLED 0
+#endif
+// <o> NRF_SDH_ANT_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef NRF_SDH_ANT_LOG_LEVEL
+#define NRF_SDH_ANT_LOG_LEVEL 3
+#endif
+
+// <o> NRF_SDH_ANT_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_SDH_ANT_INFO_COLOR
+#define NRF_SDH_ANT_INFO_COLOR 0
+#endif
+
+// <o> NRF_SDH_ANT_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_SDH_ANT_DEBUG_COLOR
+#define NRF_SDH_ANT_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> NRF_SDH_BLE_LOG_ENABLED - Enable logging in SoftDevice handler (BLE) module.
+//==========================================================
+#ifndef NRF_SDH_BLE_LOG_ENABLED
+#define NRF_SDH_BLE_LOG_ENABLED 1
+#endif
+// <o> NRF_SDH_BLE_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef NRF_SDH_BLE_LOG_LEVEL
+#define NRF_SDH_BLE_LOG_LEVEL 3
+#endif
+
+// <o> NRF_SDH_BLE_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_SDH_BLE_INFO_COLOR
+#define NRF_SDH_BLE_INFO_COLOR 0
+#endif
+
+// <o> NRF_SDH_BLE_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_SDH_BLE_DEBUG_COLOR
+#define NRF_SDH_BLE_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> NRF_SDH_LOG_ENABLED - Enable logging in SoftDevice handler module.
+//==========================================================
+#ifndef NRF_SDH_LOG_ENABLED
+#define NRF_SDH_LOG_ENABLED 1
+#endif
+// <o> NRF_SDH_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef NRF_SDH_LOG_LEVEL
+#define NRF_SDH_LOG_LEVEL 3
+#endif
+
+// <o> NRF_SDH_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_SDH_INFO_COLOR
+#define NRF_SDH_INFO_COLOR 0
+#endif
+
+// <o> NRF_SDH_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_SDH_DEBUG_COLOR
+#define NRF_SDH_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> NRF_SDH_SOC_LOG_ENABLED - Enable logging in SoftDevice handler (SoC) module.
+//==========================================================
+#ifndef NRF_SDH_SOC_LOG_ENABLED
+#define NRF_SDH_SOC_LOG_ENABLED 1
+#endif
+// <o> NRF_SDH_SOC_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef NRF_SDH_SOC_LOG_LEVEL
+#define NRF_SDH_SOC_LOG_LEVEL 3
+#endif
+
+// <o> NRF_SDH_SOC_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_SDH_SOC_INFO_COLOR
+#define NRF_SDH_SOC_INFO_COLOR 0
+#endif
+
+// <o> NRF_SDH_SOC_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_SDH_SOC_DEBUG_COLOR
+#define NRF_SDH_SOC_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> NRF_SORTLIST_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef NRF_SORTLIST_CONFIG_LOG_ENABLED
+#define NRF_SORTLIST_CONFIG_LOG_ENABLED 0
+#endif
+// <o> NRF_SORTLIST_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef NRF_SORTLIST_CONFIG_LOG_LEVEL
+#define NRF_SORTLIST_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> NRF_SORTLIST_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_SORTLIST_CONFIG_INFO_COLOR
+#define NRF_SORTLIST_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> NRF_SORTLIST_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_SORTLIST_CONFIG_DEBUG_COLOR
+#define NRF_SORTLIST_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> NRF_TWI_SENSOR_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef NRF_TWI_SENSOR_CONFIG_LOG_ENABLED
+#define NRF_TWI_SENSOR_CONFIG_LOG_ENABLED 0
+#endif
+// <o> NRF_TWI_SENSOR_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef NRF_TWI_SENSOR_CONFIG_LOG_LEVEL
+#define NRF_TWI_SENSOR_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> NRF_TWI_SENSOR_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_TWI_SENSOR_CONFIG_INFO_COLOR
+#define NRF_TWI_SENSOR_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> NRF_TWI_SENSOR_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_TWI_SENSOR_CONFIG_DEBUG_COLOR
+#define NRF_TWI_SENSOR_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> PM_LOG_ENABLED - Enable logging in Peer Manager and its submodules.
+//==========================================================
+#ifndef PM_LOG_ENABLED
+#define PM_LOG_ENABLED 1
+#endif
+// <o> PM_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef PM_LOG_LEVEL
+#define PM_LOG_LEVEL 3
+#endif
+
+// <o> PM_LOG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef PM_LOG_INFO_COLOR
+#define PM_LOG_INFO_COLOR 0
+#endif
+
+// <o> PM_LOG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef PM_LOG_DEBUG_COLOR
+#define PM_LOG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// </h> 
+//==========================================================
+
+// <h> nrf_log in nRF_Serialization 
+
+//==========================================================
+// <e> SER_HAL_TRANSPORT_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef SER_HAL_TRANSPORT_CONFIG_LOG_ENABLED
+#define SER_HAL_TRANSPORT_CONFIG_LOG_ENABLED 0
+#endif
+// <o> SER_HAL_TRANSPORT_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef SER_HAL_TRANSPORT_CONFIG_LOG_LEVEL
+#define SER_HAL_TRANSPORT_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> SER_HAL_TRANSPORT_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef SER_HAL_TRANSPORT_CONFIG_INFO_COLOR
+#define SER_HAL_TRANSPORT_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> SER_HAL_TRANSPORT_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef SER_HAL_TRANSPORT_CONFIG_DEBUG_COLOR
+#define SER_HAL_TRANSPORT_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// </h> 
+//==========================================================
+
+// </h> 
+//==========================================================
+
+// </e>
+
+// <q> NRF_LOG_STR_FORMATTER_TIMESTAMP_FORMAT_ENABLED  - nrf_log_str_formatter - Log string formatter
+ 
+
+#ifndef NRF_LOG_STR_FORMATTER_TIMESTAMP_FORMAT_ENABLED
+#define NRF_LOG_STR_FORMATTER_TIMESTAMP_FORMAT_ENABLED 1
+#endif
+
+// </h> 
+//==========================================================
+
+// <h> nRF_SoftDevice 
+
+//==========================================================
+// <e> NRF_SDH_BLE_ENABLED - nrf_sdh_ble - SoftDevice BLE event handler
+//==========================================================
+#ifndef NRF_SDH_BLE_ENABLED
+#define NRF_SDH_BLE_ENABLED 1
+#endif
+// <h> BLE Stack configuration - Stack configuration parameters
+
+// <i> The SoftDevice handler will configure the stack with these parameters when calling @ref nrf_sdh_ble_default_cfg_set.
+// <i> Other libraries might depend on these values; keep them up-to-date even if you are not explicitely calling @ref nrf_sdh_ble_default_cfg_set.
+//==========================================================
+// <o> NRF_SDH_BLE_GAP_DATA_LENGTH   <27-251> 
+
+
+// <i> Requested BLE GAP data length to be negotiated.
+
+#ifndef NRF_SDH_BLE_GAP_DATA_LENGTH
+#define NRF_SDH_BLE_GAP_DATA_LENGTH 27
+#endif
+
+// <o> NRF_SDH_BLE_PERIPHERAL_LINK_COUNT - Maximum number of peripheral links. 
+#ifndef NRF_SDH_BLE_PERIPHERAL_LINK_COUNT
+#define NRF_SDH_BLE_PERIPHERAL_LINK_COUNT 1
+#endif
+
+// <o> NRF_SDH_BLE_CENTRAL_LINK_COUNT - Maximum number of central links. 
+#ifndef NRF_SDH_BLE_CENTRAL_LINK_COUNT
+#define NRF_SDH_BLE_CENTRAL_LINK_COUNT 0
+#endif
+
+// <o> NRF_SDH_BLE_TOTAL_LINK_COUNT - Total link count. 
+// <i> Maximum number of total concurrent connections using the default configuration.
+
+#ifndef NRF_SDH_BLE_TOTAL_LINK_COUNT
+#define NRF_SDH_BLE_TOTAL_LINK_COUNT 1
+#endif
+
+// <o> NRF_SDH_BLE_GAP_EVENT_LENGTH - GAP event length. 
+// <i> The time set aside for this connection on every connection interval in 1.25 ms units.
+
+#ifndef NRF_SDH_BLE_GAP_EVENT_LENGTH
+#define NRF_SDH_BLE_GAP_EVENT_LENGTH 6
+#endif
+
+// <o> NRF_SDH_BLE_GATT_MAX_MTU_SIZE - Static maximum MTU size. 
+#ifndef NRF_SDH_BLE_GATT_MAX_MTU_SIZE
+#define NRF_SDH_BLE_GATT_MAX_MTU_SIZE 247
+#endif
+
+// <o> NRF_SDH_BLE_GATTS_ATTR_TAB_SIZE - Attribute Table size in bytes. The size must be a multiple of 4. 
+#ifndef NRF_SDH_BLE_GATTS_ATTR_TAB_SIZE
+#define NRF_SDH_BLE_GATTS_ATTR_TAB_SIZE 1408
+#endif
+
+// <o> NRF_SDH_BLE_VS_UUID_COUNT - The number of vendor-specific UUIDs. 
+#ifndef NRF_SDH_BLE_VS_UUID_COUNT
+#define NRF_SDH_BLE_VS_UUID_COUNT 1
+#endif
+
+// <q> NRF_SDH_BLE_SERVICE_CHANGED  - Include the Service Changed characteristic in the Attribute Table.
+ 
+
+#ifndef NRF_SDH_BLE_SERVICE_CHANGED
+#define NRF_SDH_BLE_SERVICE_CHANGED 1
+#endif
+
+// </h> 
+//==========================================================
+
+// <h> BLE Observers - Observers and priority levels
+
+//==========================================================
+// <o> NRF_SDH_BLE_OBSERVER_PRIO_LEVELS - Total number of priority levels for BLE observers. 
+// <i> This setting configures the number of priority levels available for BLE event handlers.
+// <i> The priority level of a handler determines the order in which it receives events, with respect to other handlers.
+
+#ifndef NRF_SDH_BLE_OBSERVER_PRIO_LEVELS
+#define NRF_SDH_BLE_OBSERVER_PRIO_LEVELS 4
+#endif
+
+// <h> BLE Observers priorities - Invididual priorities
+
+//==========================================================
+// <o> BLE_ADV_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Advertising module.
+
+#ifndef BLE_ADV_BLE_OBSERVER_PRIO
+#define BLE_ADV_BLE_OBSERVER_PRIO 1
+#endif
+
+// <o> BLE_ANCS_C_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Apple Notification Service Client.
+
+#ifndef BLE_ANCS_C_BLE_OBSERVER_PRIO
+#define BLE_ANCS_C_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> BLE_ANS_C_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Alert Notification Service Client.
+
+#ifndef BLE_ANS_C_BLE_OBSERVER_PRIO
+#define BLE_ANS_C_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> BLE_BAS_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Battery Service.
+
+#ifndef BLE_BAS_BLE_OBSERVER_PRIO
+#define BLE_BAS_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> BLE_BAS_C_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Battery Service Client.
+
+#ifndef BLE_BAS_C_BLE_OBSERVER_PRIO
+#define BLE_BAS_C_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> BLE_BPS_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Blood Pressure Service.
+
+#ifndef BLE_BPS_BLE_OBSERVER_PRIO
+#define BLE_BPS_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> BLE_CONN_PARAMS_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Connection parameters module.
+
+#ifndef BLE_CONN_PARAMS_BLE_OBSERVER_PRIO
+#define BLE_CONN_PARAMS_BLE_OBSERVER_PRIO 1
+#endif
+
+// <o> BLE_CONN_STATE_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Connection State module.
+
+#ifndef BLE_CONN_STATE_BLE_OBSERVER_PRIO
+#define BLE_CONN_STATE_BLE_OBSERVER_PRIO 0
+#endif
+
+// <o> BLE_CSCS_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Cycling Speed and Cadence Service.
+
+#ifndef BLE_CSCS_BLE_OBSERVER_PRIO
+#define BLE_CSCS_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> BLE_CTS_C_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Current Time Service Client.
+
+#ifndef BLE_CTS_C_BLE_OBSERVER_PRIO
+#define BLE_CTS_C_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> BLE_DB_DISC_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Database Discovery module.
+
+#ifndef BLE_DB_DISC_BLE_OBSERVER_PRIO
+#define BLE_DB_DISC_BLE_OBSERVER_PRIO 1
+#endif
+
+// <o> BLE_DFU_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the DFU Service.
+
+#ifndef BLE_DFU_BLE_OBSERVER_PRIO
+#define BLE_DFU_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> BLE_DIS_C_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Device Information Client.
+
+#ifndef BLE_DIS_C_BLE_OBSERVER_PRIO
+#define BLE_DIS_C_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> BLE_GLS_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Glucose Service.
+
+#ifndef BLE_GLS_BLE_OBSERVER_PRIO
+#define BLE_GLS_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> BLE_HIDS_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Human Interface Device Service.
+
+#ifndef BLE_HIDS_BLE_OBSERVER_PRIO
+#define BLE_HIDS_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> BLE_HRS_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Heart Rate Service.
+
+#ifndef BLE_HRS_BLE_OBSERVER_PRIO
+#define BLE_HRS_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> BLE_HRS_C_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Heart Rate Service Client.
+
+#ifndef BLE_HRS_C_BLE_OBSERVER_PRIO
+#define BLE_HRS_C_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> BLE_HTS_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Health Thermometer Service.
+
+#ifndef BLE_HTS_BLE_OBSERVER_PRIO
+#define BLE_HTS_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> BLE_IAS_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Immediate Alert Service.
+
+#ifndef BLE_IAS_BLE_OBSERVER_PRIO
+#define BLE_IAS_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> BLE_IAS_C_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Immediate Alert Service Client.
+
+#ifndef BLE_IAS_C_BLE_OBSERVER_PRIO
+#define BLE_IAS_C_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> BLE_LBS_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the LED Button Service.
+
+#ifndef BLE_LBS_BLE_OBSERVER_PRIO
+#define BLE_LBS_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> BLE_LBS_C_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the LED Button Service Client.
+
+#ifndef BLE_LBS_C_BLE_OBSERVER_PRIO
+#define BLE_LBS_C_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> BLE_LLS_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Link Loss Service.
+
+#ifndef BLE_LLS_BLE_OBSERVER_PRIO
+#define BLE_LLS_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> BLE_LNS_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Location Navigation Service.
+
+#ifndef BLE_LNS_BLE_OBSERVER_PRIO
+#define BLE_LNS_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> BLE_NUS_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the UART Service.
+
+#ifndef BLE_NUS_BLE_OBSERVER_PRIO
+#define BLE_NUS_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> BLE_NUS_C_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the UART Central Service.
+
+#ifndef BLE_NUS_C_BLE_OBSERVER_PRIO
+#define BLE_NUS_C_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> BLE_OTS_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Object transfer service.
+
+#ifndef BLE_OTS_BLE_OBSERVER_PRIO
+#define BLE_OTS_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> BLE_OTS_C_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Object transfer service client.
+
+#ifndef BLE_OTS_C_BLE_OBSERVER_PRIO
+#define BLE_OTS_C_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> BLE_RSCS_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Running Speed and Cadence Service.
+
+#ifndef BLE_RSCS_BLE_OBSERVER_PRIO
+#define BLE_RSCS_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> BLE_RSCS_C_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Running Speed and Cadence Client.
+
+#ifndef BLE_RSCS_C_BLE_OBSERVER_PRIO
+#define BLE_RSCS_C_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> BLE_TPS_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the TX Power Service.
+
+#ifndef BLE_TPS_BLE_OBSERVER_PRIO
+#define BLE_TPS_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> BSP_BTN_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Button Control module.
+
+#ifndef BSP_BTN_BLE_OBSERVER_PRIO
+#define BSP_BTN_BLE_OBSERVER_PRIO 1
+#endif
+
+// <o> NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the NFC pairing library.
+
+#ifndef NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO
+#define NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO 1
+#endif
+
+// <o> NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the NFC pairing library.
+
+#ifndef NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO
+#define NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO 1
+#endif
+
+// <o> NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the NFC pairing library.
+
+#ifndef NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO
+#define NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO 1
+#endif
+
+// <o> NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the NFC pairing library.
+
+#ifndef NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO
+#define NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO 1
+#endif
+
+// <o> NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the NFC pairing library.
+
+#ifndef NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO
+#define NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO 1
+#endif
+
+// <o> NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the NFC pairing library.
+
+#ifndef NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO
+#define NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO 1
+#endif
+
+// <o> NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the NFC pairing library.
+
+#ifndef NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO
+#define NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO 1
+#endif
+
+// <o> NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the NFC pairing library.
+
+#ifndef NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO
+#define NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO 1
+#endif
+
+// <o> NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the NFC pairing library.
+
+#ifndef NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO
+#define NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO 1
+#endif
+
+// <o> NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the NFC pairing library.
+
+#ifndef NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO
+#define NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO 1
+#endif
+
+// <o> NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the NFC pairing library.
+
+#ifndef NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO
+#define NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO 1
+#endif
+
+// <o> NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the NFC pairing library.
+
+#ifndef NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO
+#define NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO 1
+#endif
+
+// <o> NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the NFC pairing library.
+
+#ifndef NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO
+#define NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO 1
+#endif
+
+// <o> NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the NFC pairing library.
+
+#ifndef NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO
+#define NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO 1
+#endif
+
+// <o> NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the NFC pairing library.
+
+#ifndef NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO
+#define NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO 1
+#endif
+
+// <o> NRF_BLE_BMS_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Bond Management Service.
+
+#ifndef NRF_BLE_BMS_BLE_OBSERVER_PRIO
+#define NRF_BLE_BMS_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> NRF_BLE_CGMS_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Contiuon Glucose Monitoring Service.
+
+#ifndef NRF_BLE_CGMS_BLE_OBSERVER_PRIO
+#define NRF_BLE_CGMS_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> NRF_BLE_ES_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Eddystone module.
+
+#ifndef NRF_BLE_ES_BLE_OBSERVER_PRIO
+#define NRF_BLE_ES_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> NRF_BLE_GATTS_C_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the GATT Service Client.
+
+#ifndef NRF_BLE_GATTS_C_BLE_OBSERVER_PRIO
+#define NRF_BLE_GATTS_C_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> NRF_BLE_GATT_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the GATT module.
+
+#ifndef NRF_BLE_GATT_BLE_OBSERVER_PRIO
+#define NRF_BLE_GATT_BLE_OBSERVER_PRIO 1
+#endif
+
+// <o> NRF_BLE_GQ_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the GATT Queue module.
+
+#ifndef NRF_BLE_GQ_BLE_OBSERVER_PRIO
+#define NRF_BLE_GQ_BLE_OBSERVER_PRIO 1
+#endif
+
+// <o> NRF_BLE_QWR_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Queued writes module.
+
+#ifndef NRF_BLE_QWR_BLE_OBSERVER_PRIO
+#define NRF_BLE_QWR_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> NRF_BLE_SCAN_OBSERVER_PRIO  
+// <i> Priority for dispatching the BLE events to the Scanning Module.
+
+#ifndef NRF_BLE_SCAN_OBSERVER_PRIO
+#define NRF_BLE_SCAN_OBSERVER_PRIO 1
+#endif
+
+// <o> PM_BLE_OBSERVER_PRIO - Priority with which BLE events are dispatched to the Peer Manager module. 
+#ifndef PM_BLE_OBSERVER_PRIO
+#define PM_BLE_OBSERVER_PRIO 1
+#endif
+
+// </h> 
+//==========================================================
+
+// </h> 
+//==========================================================
+
+
+// </e>
+
+// <e> NRF_SDH_ENABLED - nrf_sdh - SoftDevice handler
+//==========================================================
+#ifndef NRF_SDH_ENABLED
+#define NRF_SDH_ENABLED 1
+#endif
+// <h> Dispatch model 
+
+// <i> This setting configures how Stack events are dispatched to the application.
+//==========================================================
+// <o> NRF_SDH_DISPATCH_MODEL
+ 
+
+// <i> NRF_SDH_DISPATCH_MODEL_INTERRUPT: SoftDevice events are passed to the application from the interrupt context.
+// <i> NRF_SDH_DISPATCH_MODEL_APPSH: SoftDevice events are scheduled using @ref app_scheduler.
+// <i> NRF_SDH_DISPATCH_MODEL_POLLING: SoftDevice events are to be fetched manually.
+// <0=> NRF_SDH_DISPATCH_MODEL_INTERRUPT 
+// <1=> NRF_SDH_DISPATCH_MODEL_APPSH 
+// <2=> NRF_SDH_DISPATCH_MODEL_POLLING 
+
+#ifndef NRF_SDH_DISPATCH_MODEL
+#define NRF_SDH_DISPATCH_MODEL 0
+#endif
+
+// </h> 
+//==========================================================
+
+// <h> Clock - SoftDevice clock configuration
+
+//==========================================================
+// <o> NRF_SDH_CLOCK_LF_SRC  - SoftDevice clock source.
+ 
+// <0=> NRF_CLOCK_LF_SRC_RC 
+// <1=> NRF_CLOCK_LF_SRC_XTAL 
+// <2=> NRF_CLOCK_LF_SRC_SYNTH 
+
+#ifndef NRF_SDH_CLOCK_LF_SRC
+#define NRF_SDH_CLOCK_LF_SRC 0
+#endif
+
+// <o> NRF_SDH_CLOCK_LF_RC_CTIV - SoftDevice calibration timer interval. 
+#ifndef NRF_SDH_CLOCK_LF_RC_CTIV
+#define NRF_SDH_CLOCK_LF_RC_CTIV 16
+#endif
+
+// <o> NRF_SDH_CLOCK_LF_RC_TEMP_CTIV - SoftDevice calibration timer interval under constant temperature. 
+// <i> How often (in number of calibration intervals) the RC oscillator shall be calibrated
+// <i>  if the temperature has not changed.
+
+#ifndef NRF_SDH_CLOCK_LF_RC_TEMP_CTIV
+#define NRF_SDH_CLOCK_LF_RC_TEMP_CTIV 2
+#endif
+
+// <o> NRF_SDH_CLOCK_LF_ACCURACY  - External clock accuracy used in the LL to compute timing.
+ 
+// <0=> NRF_CLOCK_LF_ACCURACY_250_PPM 
+// <1=> NRF_CLOCK_LF_ACCURACY_500_PPM 
+// <2=> NRF_CLOCK_LF_ACCURACY_150_PPM 
+// <3=> NRF_CLOCK_LF_ACCURACY_100_PPM 
+// <4=> NRF_CLOCK_LF_ACCURACY_75_PPM 
+// <5=> NRF_CLOCK_LF_ACCURACY_50_PPM 
+// <6=> NRF_CLOCK_LF_ACCURACY_30_PPM 
+// <7=> NRF_CLOCK_LF_ACCURACY_20_PPM 
+// <8=> NRF_CLOCK_LF_ACCURACY_10_PPM 
+// <9=> NRF_CLOCK_LF_ACCURACY_5_PPM 
+// <10=> NRF_CLOCK_LF_ACCURACY_2_PPM 
+// <11=> NRF_CLOCK_LF_ACCURACY_1_PPM 
+
+#ifndef NRF_SDH_CLOCK_LF_ACCURACY
+#define NRF_SDH_CLOCK_LF_ACCURACY 1
+#endif
+
+// </h> 
+//==========================================================
+
+// <h> SDH Observers - Observers and priority levels
+
+//==========================================================
+// <o> NRF_SDH_REQ_OBSERVER_PRIO_LEVELS - Total number of priority levels for request observers. 
+// <i> This setting configures the number of priority levels available for the SoftDevice request event handlers.
+// <i> The priority level of a handler determines the order in which it receives events, with respect to other handlers.
+
+#ifndef NRF_SDH_REQ_OBSERVER_PRIO_LEVELS
+#define NRF_SDH_REQ_OBSERVER_PRIO_LEVELS 2
+#endif
+
+// <o> NRF_SDH_STATE_OBSERVER_PRIO_LEVELS - Total number of priority levels for state observers. 
+// <i> This setting configures the number of priority levels available for the SoftDevice state event handlers.
+// <i> The priority level of a handler determines the order in which it receives events, with respect to other handlers.
+
+#ifndef NRF_SDH_STATE_OBSERVER_PRIO_LEVELS
+#define NRF_SDH_STATE_OBSERVER_PRIO_LEVELS 2
+#endif
+
+// <o> NRF_SDH_STACK_OBSERVER_PRIO_LEVELS - Total number of priority levels for stack event observers. 
+// <i> This setting configures the number of priority levels available for the SoftDevice stack event handlers (ANT, BLE, SoC).
+// <i> The priority level of a handler determines the order in which it receives events, with respect to other handlers.
+
+#ifndef NRF_SDH_STACK_OBSERVER_PRIO_LEVELS
+#define NRF_SDH_STACK_OBSERVER_PRIO_LEVELS 2
+#endif
+
+
+// <h> State Observers priorities - Invididual priorities
+
+//==========================================================
+// <o> CLOCK_CONFIG_STATE_OBSERVER_PRIO  
+// <i> Priority with which state events are dispatched to the Clock driver.
+
+#ifndef CLOCK_CONFIG_STATE_OBSERVER_PRIO
+#define CLOCK_CONFIG_STATE_OBSERVER_PRIO 0
+#endif
+
+// <o> POWER_CONFIG_STATE_OBSERVER_PRIO  
+// <i> Priority with which state events are dispatched to the Power driver.
+
+#ifndef POWER_CONFIG_STATE_OBSERVER_PRIO
+#define POWER_CONFIG_STATE_OBSERVER_PRIO 0
+#endif
+
+// <o> RNG_CONFIG_STATE_OBSERVER_PRIO  
+// <i> Priority with which state events are dispatched to this module.
+
+#ifndef RNG_CONFIG_STATE_OBSERVER_PRIO
+#define RNG_CONFIG_STATE_OBSERVER_PRIO 0
+#endif
+
+// </h> 
+//==========================================================
+
+// <h> Stack Event Observers priorities - Invididual priorities
+
+//==========================================================
+// <o> NRF_SDH_ANT_STACK_OBSERVER_PRIO  
+// <i> This setting configures the priority with which ANT events are processed with respect to other events coming from the stack.
+// <i> Modify this setting if you need to have ANT events dispatched before or after other stack events, such as BLE or SoC.
+// <i> Zero is the highest priority.
+
+#ifndef NRF_SDH_ANT_STACK_OBSERVER_PRIO
+#define NRF_SDH_ANT_STACK_OBSERVER_PRIO 0
+#endif
+
+// <o> NRF_SDH_BLE_STACK_OBSERVER_PRIO  
+// <i> This setting configures the priority with which BLE events are processed with respect to other events coming from the stack.
+// <i> Modify this setting if you need to have BLE events dispatched before or after other stack events, such as ANT or SoC.
+// <i> Zero is the highest priority.
+
+#ifndef NRF_SDH_BLE_STACK_OBSERVER_PRIO
+#define NRF_SDH_BLE_STACK_OBSERVER_PRIO 0
+#endif
+
+// <o> NRF_SDH_SOC_STACK_OBSERVER_PRIO  
+// <i> This setting configures the priority with which SoC events are processed with respect to other events coming from the stack.
+// <i> Modify this setting if you need to have SoC events dispatched before or after other stack events, such as ANT or BLE.
+// <i> Zero is the highest priority.
+
+#ifndef NRF_SDH_SOC_STACK_OBSERVER_PRIO
+#define NRF_SDH_SOC_STACK_OBSERVER_PRIO 0
+#endif
+
+// </h> 
+//==========================================================
+
+// </h> 
+//==========================================================
+
+
+// </e>
+
+// <e> NRF_SDH_SOC_ENABLED - nrf_sdh_soc - SoftDevice SoC event handler
+//==========================================================
+#ifndef NRF_SDH_SOC_ENABLED
+#define NRF_SDH_SOC_ENABLED 1
+#endif
+// <h> SoC Observers - Observers and priority levels
+
+//==========================================================
+// <o> NRF_SDH_SOC_OBSERVER_PRIO_LEVELS - Total number of priority levels for SoC observers. 
+// <i> This setting configures the number of priority levels available for the SoC event handlers.
+// <i> The priority level of a handler determines the order in which it receives events, with respect to other handlers.
+
+#ifndef NRF_SDH_SOC_OBSERVER_PRIO_LEVELS
+#define NRF_SDH_SOC_OBSERVER_PRIO_LEVELS 2
+#endif
+
+// <h> SoC Observers priorities - Invididual priorities
+
+//==========================================================
+// <o> BLE_DFU_SOC_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the DFU Service.
+
+#ifndef BLE_DFU_SOC_OBSERVER_PRIO
+#define BLE_DFU_SOC_OBSERVER_PRIO 1
+#endif
+
+// <o> CLOCK_CONFIG_SOC_OBSERVER_PRIO  
+// <i> Priority with which SoC events are dispatched to the Clock driver.
+
+#ifndef CLOCK_CONFIG_SOC_OBSERVER_PRIO
+#define CLOCK_CONFIG_SOC_OBSERVER_PRIO 0
+#endif
+
+// <o> POWER_CONFIG_SOC_OBSERVER_PRIO  
+// <i> Priority with which SoC events are dispatched to the Power driver.
+
+#ifndef POWER_CONFIG_SOC_OBSERVER_PRIO
+#define POWER_CONFIG_SOC_OBSERVER_PRIO 0
+#endif
+
+// </h> 
+//==========================================================
+
+// </h> 
+//==========================================================
+
+
+// </e>
+
+// </h> 
+//==========================================================
+
+// <<< end of configuration section >>>
+#endif //SDK_CONFIG_H
+

+ 1350 - 0
central_and_peripheral_secure_bootloader/iar/secure_bootloader_ble_s132_pca10040.ewd

@@ -0,0 +1,1350 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+
+<project>
+  <fileVersion>2</fileVersion>  <configuration>
+    <name>nrf52832_xxaa_s132</name>
+    <toolchain>
+      <name>ARM</name>
+    </toolchain>
+    <debug>0</debug>
+    <settings>
+      <name>C-SPY</name>
+      <archiveVersion>2</archiveVersion>
+      <data>
+        <version>26</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>0</debug>
+        <option>
+          <name>CInput</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CEndian</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CProcessor</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>OCVariant</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>MacOverride</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>MacFile</name>
+          <state></state>
+        </option>
+        <option>
+          <name>MemOverride</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>MemFile</name>
+          <state>$TOOLKIT_DIR$\CONFIG\debugger\NordicSemiconductor\iar_nrf52832_xxaa.ddf</state>
+        </option>
+        <option>
+          <name>RunToEnable</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>RunToName</name>
+          <state>main</state>
+        </option>
+        <option>
+          <name>CExtraOptionsCheck</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CExtraOptions</name>
+          <state>--drv_vector_table_base=0x0</state>
+        </option>
+        <option>
+          <name>CFpuProcessor</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>OCDDFArgumentProducer</name>
+          <state></state>
+        </option>
+        <option>
+          <name>OCDownloadSuppressDownload</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>OCDownloadVerifyAll</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>OCProductVersion</name>
+          <state>7.20.2.7418</state>
+        </option>
+        <option>
+          <name>OCDynDriverList</name>
+          <state>JLINK_ID</state>
+        </option>
+        <option>
+          <name>OCLastSavedByProductVersion</name>
+          <state>7.20.2.7418</state>
+        </option>
+        <option>
+          <name>OCDownloadAttachToProgram</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>UseFlashLoader</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CLowLevel</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>OCBE8Slave</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>MacFile2</name>
+          <state></state>
+        </option>
+        <option>
+          <name>CDevice</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>FlashLoadersV3</name>
+          <state>$TOOLKIT_DIR$\config\flashloader\NordicSemiconductor\nrf52832_xxaa.board</state>
+        </option>
+        <option>
+          <name>OCImagesSuppressCheck1</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>OCImagesPath1</name>
+          <state></state>
+        </option>
+        <option>
+          <name>OCImagesSuppressCheck2</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>OCImagesPath2</name>
+          <state></state>
+        </option>
+        <option>
+          <name>OCImagesSuppressCheck3</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>OCImagesPath3</name>
+          <state></state>
+        </option>
+        <option>
+          <name>OverrideDefFlashBoard</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>OCImagesOffset1</name>
+          <state></state>
+        </option>
+        <option>
+          <name>OCImagesOffset2</name>
+          <state></state>
+        </option>
+        <option>
+          <name>OCImagesOffset3</name>
+          <state></state>
+        </option>
+        <option>
+          <name>OCImagesUse1</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>OCImagesUse2</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>OCImagesUse3</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>OCDeviceConfigMacroFile</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>OCDebuggerExtraOption</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>OCAllMTBOptions</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>OCMulticoreNrOfCores</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>OCMulticoreMaster</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>OCMulticorePort</name>
+          <state>53461</state>
+        </option>
+        <option>
+          <name>OCMulticoreWorkspace</name>
+          <state></state>
+        </option>
+        <option>
+          <name>OCMulticoreSlaveProject</name>
+          <state></state>
+        </option>
+        <option>
+          <name>OCMulticoreSlaveConfiguration</name>
+          <state></state>
+        </option>
+      </data>
+    </settings>
+    <settings>
+      <name>ARMSIM_ID</name>
+      <archiveVersion>2</archiveVersion>
+      <data>
+        <version>1</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>0</debug>
+        <option>
+          <name>OCSimDriverInfo</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>OCSimEnablePSP</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>OCSimPspOverrideConfig</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>OCSimPspConfigFile</name>
+          <state></state>
+        </option>
+      </data>
+    </settings>
+    <settings>
+      <name>ANGEL_ID</name>
+      <archiveVersion>2</archiveVersion>
+      <data>
+        <version>0</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>0</debug>
+        <option>
+          <name>CCAngelHeartbeat</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CAngelCommunication</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CAngelCommBaud</name>
+          <version>0</version>
+          <state>3</state>
+        </option>
+        <option>
+          <name>CAngelCommPort</name>
+          <version>0</version>
+          <state>0</state>
+        </option>
+        <option>
+          <name>ANGELTCPIP</name>
+          <state>aaa.bbb.ccc.ddd</state>
+        </option>
+        <option>
+          <name>DoAngelLogfile</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AngelLogFile</name>
+          <state>$PROJ_DIR$\cspycomm.log</state>
+        </option>
+        <option>
+          <name>OCDriverInfo</name>
+          <state>1</state>
+        </option>
+      </data>
+    </settings>
+    <settings>
+      <name>CMSISDAP_ID</name>
+      <archiveVersion>2</archiveVersion>
+      <data>
+        <version>2</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>0</debug>
+        <option>
+          <name>OCDriverInfo</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CMSISDAPAttachSlave</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>OCIarProbeScriptFile</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CMSISDAPResetList</name>
+          <version>1</version>
+          <state>10</state>
+        </option>
+        <option>
+          <name>CMSISDAPHWResetDuration</name>
+          <state>300</state>
+        </option>
+        <option>
+          <name>CMSISDAPHWResetDelay</name>
+          <state>200</state>
+        </option>
+        <option>
+          <name>CMSISDAPDoLogfile</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CMSISDAPLogFile</name>
+          <state>$PROJ_DIR$\cspycomm.log</state>
+        </option>
+        <option>
+          <name>CMSISDAPInterfaceRadio</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CMSISDAPInterfaceCmdLine</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CMSISDAPMultiTargetEnable</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CMSISDAPMultiTarget</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CMSISDAPJtagSpeedList</name>
+          <version>0</version>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CMSISDAPBreakpointRadio</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CMSISDAPRestoreBreakpointsCheck</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CMSISDAPUpdateBreakpointsEdit</name>
+          <state>_call_main</state>
+        </option>
+        <option>
+          <name>RDICatchReset</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>RDICatchUndef</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>RDICatchSWI</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>RDICatchData</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>RDICatchPrefetch</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>RDICatchIRQ</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>RDICatchFIQ</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CatchCORERESET</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CatchMMERR</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CatchNOCPERR</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CatchCHKERR</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CatchSTATERR</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CatchBUSERR</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CatchINTERR</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CatchHARDERR</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CatchDummy</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CMSISDAPMultiCPUEnable</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CMSISDAPMultiCPUNumber</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>OCProbeCfgOverride</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>OCProbeConfig</name>
+          <state></state>
+        </option>
+        <option>
+          <name>CMSISDAPProbeConfigRadio</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CMSISDAPSelectedCPUBehaviour</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>ICpuName</name>
+          <state></state>
+        </option>
+        <option>
+          <name>OCJetEmuParams</name>
+          <state>1</state>
+        </option>
+      </data>
+    </settings>
+    <settings>
+      <name>GDBSERVER_ID</name>
+      <archiveVersion>2</archiveVersion>
+      <data>
+        <version>0</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>0</debug>
+        <option>
+          <name>OCDriverInfo</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>TCPIP</name>
+          <state>aaa.bbb.ccc.ddd</state>
+        </option>
+        <option>
+          <name>DoLogfile</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>LogFile</name>
+          <state>$PROJ_DIR$\cspycomm.log</state>
+        </option>
+        <option>
+          <name>CCJTagBreakpointRadio</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCJTagDoUpdateBreakpoints</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCJTagUpdateBreakpoints</name>
+          <state>_call_main</state>
+        </option>
+      </data>
+    </settings>
+    <settings>
+      <name>IARROM_ID</name>
+      <archiveVersion>2</archiveVersion>
+      <data>
+        <version>1</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>0</debug>
+        <option>
+          <name>CRomLogFileCheck</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CRomLogFileEditB</name>
+          <state>$PROJ_DIR$\cspycomm.log</state>
+        </option>
+        <option>
+          <name>CRomCommPort</name>
+          <version>0</version>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CRomCommBaud</name>
+          <version>0</version>
+          <state>7</state>
+        </option>
+        <option>
+          <name>OCDriverInfo</name>
+          <state>1</state>
+        </option>
+      </data>
+    </settings>
+    <settings>
+      <name>IJET_ID</name>
+      <archiveVersion>2</archiveVersion>
+      <data>
+        <version>3</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>0</debug>
+        <option>
+          <name>OCDriverInfo</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IjetAttachSlave</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>OCIarProbeScriptFile</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IjetResetList</name>
+          <version>1</version>
+          <state>10</state>
+        </option>
+        <option>
+          <name>IjetHWResetDuration</name>
+          <state>300</state>
+        </option>
+        <option>
+          <name>IjetHWResetDelay</name>
+          <state>200</state>
+        </option>
+        <option>
+          <name>IjetPowerFromProbe</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IjetPowerRadio</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IjetDoLogfile</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IjetLogFile</name>
+          <state>$PROJ_DIR$\cspycomm.log</state>
+        </option>
+        <option>
+          <name>IjetInterfaceRadio</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IjetInterfaceCmdLine</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IjetMultiTargetEnable</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IjetMultiTarget</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IjetScanChainNonARMDevices</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IjetIRLength</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IjetJtagSpeedList</name>
+          <version>0</version>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IjetProtocolRadio</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IjetSwoPin</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IjetCpuClockEdit</name>
+          <state>72.0</state>
+        </option>
+        <option>
+          <name>IjetSwoPrescalerList</name>
+          <version>1</version>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IjetBreakpointRadio</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IjetRestoreBreakpointsCheck</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IjetUpdateBreakpointsEdit</name>
+          <state>_call_main</state>
+        </option>
+        <option>
+          <name>RDICatchReset</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>RDICatchUndef</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>RDICatchSWI</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>RDICatchData</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>RDICatchPrefetch</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>RDICatchIRQ</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>RDICatchFIQ</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CatchCORERESET</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CatchMMERR</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CatchNOCPERR</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CatchCHKERR</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CatchSTATERR</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CatchBUSERR</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CatchINTERR</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CatchHARDERR</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CatchDummy</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>OCProbeCfgOverride</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>OCProbeConfig</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IjetProbeConfigRadio</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IjetMultiCPUEnable</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IjetMultiCPUNumber</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IjetSelectedCPUBehaviour</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>ICpuName</name>
+          <state></state>
+        </option>
+        <option>
+          <name>OCJetEmuParams</name>
+          <state>1</state>
+        </option>
+      </data>
+    </settings>
+    <settings>
+      <name>JLINK_ID</name>
+      <archiveVersion>2</archiveVersion>
+      <data>
+        <version>15</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>0</debug>
+        <option>
+          <name>JLinkSpeed</name>
+          <state>1000</state>
+        </option>
+        <option>
+          <name>CCJLinkDoLogfile</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCJLinkLogFile</name>
+          <state>$PROJ_DIR$\cspycomm.log</state>
+        </option>
+        <option>
+          <name>CCJLinkHWResetDelay</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>OCDriverInfo</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>JLinkInitialSpeed</name>
+          <state>1000</state>
+        </option>
+        <option>
+          <name>CCDoJlinkMultiTarget</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCScanChainNonARMDevices</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCJLinkMultiTarget</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCJLinkIRLength</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCJLinkCommRadio</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCJLinkTCPIP</name>
+          <state>aaa.bbb.ccc.ddd</state>
+        </option>
+        <option>
+          <name>CCJLinkSpeedRadioV2</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCUSBDevice</name>
+          <version>1</version>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CCRDICatchReset</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCRDICatchUndef</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCRDICatchSWI</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCRDICatchData</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCRDICatchPrefetch</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCRDICatchIRQ</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCRDICatchFIQ</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCJLinkBreakpointRadio</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCJLinkDoUpdateBreakpoints</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCJLinkUpdateBreakpoints</name>
+          <state>_call_main</state>
+        </option>
+        <option>
+          <name>CCJLinkInterfaceRadio</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>OCJLinkAttachSlave</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CCJLinkResetList</name>
+          <version>6</version>
+          <state>7</state>
+        </option>
+        <option>
+          <name>CCJLinkInterfaceCmdLine</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCCatchCORERESET</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCCatchMMERR</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCCatchNOCPERR</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCCatchCHRERR</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCCatchSTATERR</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCCatchBUSERR</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCCatchINTERR</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCCatchHARDERR</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCCatchDummy</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>OCJLinkScriptFile</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CCJLinkUsbSerialNo</name>
+          <state></state>
+        </option>
+        <option>
+          <name>CCTcpIpAlt</name>
+          <version>0</version>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCJLinkTcpIpSerialNo</name>
+          <state></state>
+        </option>
+        <option>
+          <name>CCCpuClockEdit</name>
+          <state>72.0</state>
+        </option>
+        <option>
+          <name>CCSwoClockAuto</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCSwoClockEdit</name>
+          <state>2000</state>
+        </option>
+        <option>
+          <name>OCJLinkTraceSource</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>OCJLinkTraceSourceDummy</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>OCJLinkDeviceName</name>
+          <state>1</state>
+        </option>
+      </data>
+    </settings>
+    <settings>
+      <name>LMIFTDI_ID</name>
+      <archiveVersion>2</archiveVersion>
+      <data>
+        <version>2</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>0</debug>
+        <option>
+          <name>OCDriverInfo</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>LmiftdiSpeed</name>
+          <state>500</state>
+        </option>
+        <option>
+          <name>CCLmiftdiDoLogfile</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCLmiftdiLogFile</name>
+          <state>$PROJ_DIR$\cspycomm.log</state>
+        </option>
+        <option>
+          <name>CCLmiFtdiInterfaceRadio</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCLmiFtdiInterfaceCmdLine</name>
+          <state>0</state>
+        </option>
+      </data>
+    </settings>
+    <settings>
+      <name>MACRAIGOR_ID</name>
+      <archiveVersion>2</archiveVersion>
+      <data>
+        <version>3</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>0</debug>
+        <option>
+          <name>jtag</name>
+          <version>0</version>
+          <state>0</state>
+        </option>
+        <option>
+          <name>EmuSpeed</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>TCPIP</name>
+          <state>aaa.bbb.ccc.ddd</state>
+        </option>
+        <option>
+          <name>DoLogfile</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>LogFile</name>
+          <state>$PROJ_DIR$\cspycomm.log</state>
+        </option>
+        <option>
+          <name>DoEmuMultiTarget</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>EmuMultiTarget</name>
+          <state>0@ARM7TDMI</state>
+        </option>
+        <option>
+          <name>EmuHWReset</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CEmuCommBaud</name>
+          <version>0</version>
+          <state>4</state>
+        </option>
+        <option>
+          <name>CEmuCommPort</name>
+          <version>0</version>
+          <state>0</state>
+        </option>
+        <option>
+          <name>jtago</name>
+          <version>0</version>
+          <state>0</state>
+        </option>
+        <option>
+          <name>OCDriverInfo</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>UnusedAddr</name>
+          <state>0x00800000</state>
+        </option>
+        <option>
+          <name>CCMacraigorHWResetDelay</name>
+          <state></state>
+        </option>
+        <option>
+          <name>CCJTagBreakpointRadio</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCJTagDoUpdateBreakpoints</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCJTagUpdateBreakpoints</name>
+          <state>_call_main</state>
+        </option>
+        <option>
+          <name>CCMacraigorInterfaceRadio</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCMacraigorInterfaceCmdLine</name>
+          <state>0</state>
+        </option>
+      </data>
+    </settings>
+    <settings>
+      <name>PEMICRO_ID</name>
+      <archiveVersion>2</archiveVersion>
+      <data>
+        <version>1</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>0</debug>
+        <option>
+          <name>OCDriverInfo</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>OCPEMicroAttachSlave</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CCPEMicroInterfaceList</name>
+          <version>0</version>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCPEMicroResetDelay</name>
+          <state></state>
+        </option>
+        <option>
+          <name>CCPEMicroJtagSpeed</name>
+          <state>#UNINITIALIZED#</state>
+        </option>
+        <option>
+          <name>CCJPEMicroShowSettings</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>DoLogfile</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>LogFile</name>
+          <state>$PROJ_DIR$\cspycomm.log</state>
+        </option>
+        <option>
+          <name>CCPEMicroUSBDevice</name>
+          <version>0</version>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCPEMicroSerialPort</name>
+          <version>0</version>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCJPEMicroTCPIPAutoScanNetwork</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CCPEMicroTCPIP</name>
+          <state>10.0.0.1</state>
+        </option>
+        <option>
+          <name>CCPEMicroCommCmdLineProducer</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCSTLinkInterfaceRadio</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCSTLinkInterfaceCmdLine</name>
+          <state>0</state>
+        </option>
+      </data>
+    </settings>
+    <settings>
+      <name>RDI_ID</name>
+      <archiveVersion>2</archiveVersion>
+      <data>
+        <version>2</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>0</debug>
+        <option>
+          <name>CRDIDriverDll</name>
+          <state>###Uninitialized###</state>
+        </option>
+        <option>
+          <name>CRDILogFileCheck</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CRDILogFileEdit</name>
+          <state>$PROJ_DIR$\cspycomm.log</state>
+        </option>
+        <option>
+          <name>CCRDIHWReset</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCRDICatchReset</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCRDICatchUndef</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCRDICatchSWI</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCRDICatchData</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCRDICatchPrefetch</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCRDICatchIRQ</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCRDICatchFIQ</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>OCDriverInfo</name>
+          <state>1</state>
+        </option>
+      </data>
+    </settings>
+    <settings>
+      <name>STLINK_ID</name>
+      <archiveVersion>2</archiveVersion>
+      <data>
+        <version>2</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>0</debug>
+        <option>
+          <name>OCDriverInfo</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CCSTLinkInterfaceRadio</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCSTLinkInterfaceCmdLine</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCSTLinkResetList</name>
+          <version>1</version>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCCpuClockEdit</name>
+          <state>72.0</state>
+        </option>
+        <option>
+          <name>CCSwoClockAuto</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCSwoClockEdit</name>
+          <state>2000</state>
+        </option>
+      </data>
+    </settings>
+    <settings>
+      <name>THIRDPARTY_ID</name>
+      <archiveVersion>2</archiveVersion>
+      <data>
+        <version>0</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>0</debug>
+        <option>
+          <name>CThirdPartyDriverDll</name>
+          <state>###Uninitialized###</state>
+        </option>
+        <option>
+          <name>CThirdPartyLogFileCheck</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CThirdPartyLogFileEditB</name>
+          <state>$PROJ_DIR$\cspycomm.log</state>
+        </option>
+        <option>
+          <name>OCDriverInfo</name>
+          <state>1</state>
+        </option>
+      </data>
+    </settings>
+    <settings>
+      <name>XDS100_ID</name>
+      <archiveVersion>2</archiveVersion>
+      <data>
+        <version>2</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>0</debug>
+        <option>
+          <name>OCDriverInfo</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>OCXDS100AttachSlave</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>TIPackageOverride</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>TIPackage</name>
+          <state></state>
+        </option>
+        <option>
+          <name>CCXds100InterfaceList</name>
+          <version>2</version>
+          <state>0</state>
+        </option>
+        <option>
+          <name>BoardFile</name>
+          <state></state>
+        </option>
+        <option>
+          <name>DoLogfile</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>LogFile</name>
+          <state>$PROJ_DIR$\cspycomm.log</state>
+        </option>
+      </data>
+    </settings>
+    <debuggerPlugins>
+      <plugin>
+        <file>$TOOLKIT_DIR$\plugins\middleware\HCCWare\HCCWare.ewplugin</file>
+        <loadFlag>0</loadFlag>
+      </plugin>
+      <plugin>
+        <file>$TOOLKIT_DIR$\plugins\rtos\AVIX\AVIX.ENU.ewplugin</file>
+        <loadFlag>0</loadFlag>
+      </plugin>
+      <plugin>
+        <file>$TOOLKIT_DIR$\plugins\rtos\CMX\CmxArmPlugin.ENU.ewplugin</file>
+        <loadFlag>0</loadFlag>
+      </plugin>
+      <plugin>
+        <file>$TOOLKIT_DIR$\plugins\rtos\CMX\CmxTinyArmPlugin.ENU.ewplugin</file>
+        <loadFlag>0</loadFlag>
+      </plugin>
+      <plugin>
+        <file>$TOOLKIT_DIR$\plugins\rtos\embOS\embOSPlugin.ewplugin</file>
+        <loadFlag>0</loadFlag>
+      </plugin>
+      <plugin>
+        <file>$TOOLKIT_DIR$\plugins\rtos\MQX\MQXRtosPlugin.ewplugin</file>
+        <loadFlag>0</loadFlag>
+      </plugin>
+      <plugin>
+        <file>$TOOLKIT_DIR$\plugins\rtos\OpenRTOS\OpenRTOSPlugin.ewplugin</file>
+        <loadFlag>0</loadFlag>
+      </plugin>
+      <plugin>
+        <file>$TOOLKIT_DIR$\plugins\rtos\SafeRTOS\SafeRTOSPlugin.ewplugin</file>
+        <loadFlag>0</loadFlag>
+      </plugin>
+      <plugin>
+        <file>$TOOLKIT_DIR$\plugins\rtos\ThreadX\ThreadXArmPlugin.ENU.ewplugin</file>
+        <loadFlag>0</loadFlag>
+      </plugin>
+      <plugin>
+        <file>$TOOLKIT_DIR$\plugins\rtos\TI-RTOS\tirtosplugin.ewplugin</file>
+        <loadFlag>0</loadFlag>
+      </plugin>
+      <plugin>
+        <file>$TOOLKIT_DIR$\plugins\rtos\uCOS-II\uCOS-II-286-KA-CSpy.ewplugin</file>
+        <loadFlag>0</loadFlag>
+      </plugin>
+      <plugin>
+        <file>$TOOLKIT_DIR$\plugins\rtos\uCOS-II\uCOS-II-KA-CSpy.ewplugin</file>
+        <loadFlag>0</loadFlag>
+      </plugin>
+      <plugin>
+        <file>$TOOLKIT_DIR$\plugins\rtos\uCOS-III\uCOS-III-KA-CSpy.ewplugin</file>
+        <loadFlag>0</loadFlag>
+      </plugin>
+      <plugin>
+        <file>$EW_DIR$\common\plugins\CodeCoverage\CodeCoverage.ENU.ewplugin</file>
+        <loadFlag>1</loadFlag>
+      </plugin>
+      <plugin>
+        <file>$EW_DIR$\common\plugins\Orti\Orti.ENU.ewplugin</file>
+        <loadFlag>0</loadFlag>
+      </plugin>
+      <plugin>
+        <file>$EW_DIR$\common\plugins\SymList\SymList.ENU.ewplugin</file>
+        <loadFlag>1</loadFlag>
+      </plugin>
+      <plugin>
+        <file>$EW_DIR$\common\plugins\uCProbe\uCProbePlugin.ENU.ewplugin</file>
+        <loadFlag>0</loadFlag>
+      </plugin>
+    </debuggerPlugins>
+  </configuration></project>
+
+

+ 1174 - 0
central_and_peripheral_secure_bootloader/iar/secure_bootloader_ble_s132_pca10040.ewp

@@ -0,0 +1,1174 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+
+
+<project>
+  <fileVersion>2</fileVersion>  <configuration>
+    <name>nrf52832_xxaa_s132</name>
+    <toolchain>
+      <name>ARM</name>
+    </toolchain>
+    <debug>0</debug>
+    <settings>
+      <name>General</name>
+      <archiveVersion>3</archiveVersion>
+      <data>
+        <version>22</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>0</debug>
+        <option>
+          <name>ExePath</name>
+          <state>_build</state>
+        </option>
+        <option>
+          <name>ObjPath</name>
+          <state>_build</state>
+        </option>
+        <option>
+          <name>ListPath</name>
+          <state>_build</state>
+        </option>
+        <option>
+          <name>Variant</name>
+          <version>20</version>
+          <state>34</state>
+        </option>
+        <option>
+          <name>GEndianMode</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>Input variant</name>
+          <version>3</version>
+          <state>1</state>
+        </option>
+        <option>
+          <name>Input description</name>
+          <state>Full formatting.</state>
+        </option>
+        <option>
+          <name>Output variant</name>
+          <version>2</version>
+          <state>1</state>
+        </option>
+        <option>
+          <name>Output description</name>
+          <state>Full formatting.</state>
+        </option>
+        <option>
+          <name>GOutputBinary</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>FPU</name>
+          <version>2</version>
+          <state>5</state>
+        </option>
+        <option>
+          <name>OGCoreOrChip</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>GRuntimeLibSelect</name>
+          <version>0</version>
+          <state>2</state>
+        </option>
+        <option>
+          <name>GRuntimeLibSelectSlave</name>
+          <version>0</version>
+          <state>2</state>
+        </option>
+        <option>
+          <name>RTDescription</name>
+          <state>Use the full configuration of the C/C++ runtime library. Full locale interface, C locale, file descriptor support, multibytes in printf and scanf, and hex floats in strtod.</state>
+        </option>
+        <option>
+          <name>OGProductVersion</name>
+          <state>6.10.3.52260</state>
+        </option>
+        <option>
+          <name>OGLastSavedByProductVersion</name>
+          <state>7.20.2.7418</state>
+        </option>
+        <option>
+          <name>GeneralEnableMisra</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>GeneralMisraVerbose</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>OGChipSelectEditMenu</name>
+          <state>nrf52832_xxaa	nRF52832_xxAA</state>
+        </option>
+        <option>
+          <name>GenLowLevelInterface</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>GEndianModeBE</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>OGBufferedTerminalOutput</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>GenStdoutInterface</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>GeneralMisraRules98</name>
+          <version>0</version>
+          <state>1000111110110101101110011100111111101110011011000101110111101101100111111111111100110011111001110111001111111111111111111111111</state>
+        </option>
+        <option>
+          <name>GeneralMisraVer</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>GeneralMisraRules04</name>
+          <version>0</version>
+          <state>111101110010111111111000110111111111111111111111111110010111101111010101111111111111111111111111101111111011111001111011111011111111111111111</state>
+        </option>
+        <option>
+          <name>RTConfigPath2</name>
+          <state>$TOOLKIT_DIR$\INC\c\DLib_Config_Full.h</state>
+        </option>
+        <option>
+          <name>GFPUCoreSlave</name>
+          <version>20</version>
+          <state>39</state>
+        </option>
+        <option>
+          <name>GBECoreSlave</name>
+          <version>20</version>
+          <state>39</state>
+        </option>
+        <option>
+          <name>OGUseCmsis</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>OGUseCmsisDspLib</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>GRuntimeLibThreads</name>
+          <state>0</state>
+        </option>
+      </data>
+    </settings>
+    <settings>
+      <name>ICCARM</name>
+      <archiveVersion>2</archiveVersion>
+      <data>
+        <version>31</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>0</debug>
+        <option>
+          <name>CCGuardCalls</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CCOptimizationNoSizeConstraints</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCDefines</name>
+          <state>BLE_STACK_SUPPORT_REQD</state>
+          <state>BOARD_PCA10040</state>
+          <state>CONFIG_GPIO_AS_PINRESET</state>
+          <state>FLOAT_ABI_HARD</state>
+          <state>NRF52</state>
+          <state>NRF52832_XXAA</state>
+          <state>NRF52_PAN_74</state>
+          <state>NRF_DFU_SETTINGS_VERSION=2</state>
+          <state>NRF_DFU_SVCI_ENABLED</state>
+          <state>NRF_SD_BLE_API_VERSION=7</state>
+          <state>S132</state>
+          <state>SOFTDEVICE_PRESENT</state>
+          <state>SVC_INTERFACE_CALL_AS_NORMAL_FUNCTION</state>
+          <state>uECC_ENABLE_VLI_API=0</state>
+          <state>uECC_OPTIMIZATION_LEVEL=3</state>
+          <state>uECC_SQUARE_FUNC=0</state>
+          <state>uECC_SUPPORT_COMPRESSED_POINT=0</state>
+          <state>uECC_VLI_NATIVE_LITTLE_ENDIAN=1</state>
+        </option>
+        <option>
+          <name>CCPreprocFile</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCPreprocComments</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCPreprocLine</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCListCFile</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCListCMnemonics</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCListCMessages</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCListAssFile</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCListAssSource</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCEnableRemarks</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCDiagSuppress</name>
+          <state></state>
+        </option>
+        <option>
+          <name>CCDiagRemark</name>
+          <state></state>
+        </option>
+        <option>
+          <name>CCDiagWarning</name>
+          <state></state>
+        </option>
+        <option>
+          <name>CCDiagError</name>
+          <state></state>
+        </option>
+        <option>
+          <name>CCObjPrefix</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CCAllowList</name>
+          <version>1</version>
+          <state>11111110</state>
+        </option>
+        <option>
+          <name>CCDebugInfo</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IEndianMode</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IProcessor</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IExtraOptionsCheck</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IExtraOptions</name>
+          <state>--diag_suppress Pe111</state>
+        </option>
+        <option>
+          <name>CCLangConformance</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCSignedPlainChar</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CCRequirePrototypes</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCMultibyteSupport</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCDiagWarnAreErr</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CCCompilerRuntimeInfo</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IFpuProcessor</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>OutputFile</name>
+          <state>$FILE_BNAME$.o</state>
+        </option>
+        <option>
+          <name>CCLibConfigHeader</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>PreInclude</name>
+          <state></state>
+        </option>
+        <option>
+          <name>CompilerMisraOverride</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCIncludePath2</name>
+          <state>$PROJ_DIR$\..\..\config</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\ble\common</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\boards</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\atomic</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\atomic_fifo</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\balloc</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\bootloader</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\bootloader\ble_dfu</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\bootloader\dfu</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\crc32</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\backend\cc310</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\backend\cc310_bl</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\backend\cifra</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\backend\mbedtls</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\backend\micro_ecc</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\backend\nrf_hw</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\backend\nrf_sw</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\backend\oberon</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\backend\optiga</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\delay</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\experimental_section_vars</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\fstorage</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\log</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\log\src</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\mem_manager</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\memobj</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\queue</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\ringbuf</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\scheduler</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\sha256</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\stack_info</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\strerror</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\svc</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\util</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\softdevice\common</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\softdevice\s132\headers</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\softdevice\s132\headers\nrf52</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\toolchain\cmsis\include</state>
+          <state>$PROJ_DIR$\..\..</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\external\fprintf</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\external\micro-ecc\micro-ecc</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\external\nano-pb</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\external\nrf_oberon</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\external\nrf_oberon\include</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\integration\nrfx</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\modules\nrfx</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\modules\nrfx\hal</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\modules\nrfx\mdk</state>
+          <state>$PROJ_DIR$\..\config</state>
+        </option>
+        <option>
+          <name>CCStdIncCheck</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCCodeSection</name>
+          <state>.text</state>
+        </option>
+        <option>
+          <name>IInterwork2</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IProcessorMode2</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CCOptLevel</name>
+          <state>3</state>
+        </option>
+        <option>
+          <name>CCOptStrategy</name>
+          <version>0</version>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CCOptLevelSlave</name>
+          <state>3</state>
+        </option>
+        <option>
+          <name>CompilerMisraRules98</name>
+          <version>0</version>
+          <state>1000111110110101101110011100111111101110011011000101110111101101100111111111111100110011111001110111001111111111111111111111111</state>
+        </option>
+        <option>
+          <name>CompilerMisraRules04</name>
+          <version>0</version>
+          <state>111101110010111111111000110111111111111111111111111110010111101111010101111111111111111111111111101111111011111001111011111011111111111111111</state>
+        </option>
+        <option>
+          <name>CCPosIndRopi</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCPosIndRwpi</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCPosIndNoDynInit</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IccLang</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IccCDialect</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IccAllowVLA</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IccCppDialect</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IccExceptions</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IccRTTI</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IccStaticDestr</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IccCppInlineSemantics</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IccCmsis</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IccFloatSemantics</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCNoLiteralPool</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCOptStrategySlave</name>
+          <version>0</version>
+          <state>1</state>
+        </option>
+      </data>
+    </settings>
+    <settings>
+      <name>AARM</name>
+      <archiveVersion>2</archiveVersion>
+      <data>
+        <version>9</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>0</debug>
+        <option>
+          <name>AObjPrefix</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>AEndian</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>ACaseSensitivity</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>MacroChars</name>
+          <version>0</version>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AWarnEnable</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AWarnWhat</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AWarnOne</name>
+          <state></state>
+        </option>
+        <option>
+          <name>AWarnRange1</name>
+          <state></state>
+        </option>
+        <option>
+          <name>AWarnRange2</name>
+          <state></state>
+        </option>
+        <option>
+          <name>ADebug</name>
+          <state></state>
+        </option>
+        <option>
+          <name>AltRegisterNames</name>
+          <state>0</state>
+        </option>
+        <option>
+      <name>ADefines</name>
+          <state>BLE_STACK_SUPPORT_REQD</state>
+          <state>BOARD_PCA10040</state>
+          <state>CONFIG_GPIO_AS_PINRESET</state>
+          <state>FLOAT_ABI_HARD</state>
+          <state>NRF52</state>
+          <state>NRF52832_XXAA</state>
+          <state>NRF52_PAN_74</state>
+          <state>NRF_DFU_SETTINGS_VERSION=2</state>
+          <state>NRF_DFU_SVCI_ENABLED</state>
+          <state>NRF_SD_BLE_API_VERSION=7</state>
+          <state>S132</state>
+          <state>SOFTDEVICE_PRESENT</state>
+          <state>SVC_INTERFACE_CALL_AS_NORMAL_FUNCTION</state>
+          <state>uECC_ENABLE_VLI_API=0</state>
+          <state>uECC_OPTIMIZATION_LEVEL=3</state>
+          <state>uECC_SQUARE_FUNC=0</state>
+          <state>uECC_SUPPORT_COMPRESSED_POINT=0</state>
+          <state>uECC_VLI_NATIVE_LITTLE_ENDIAN=1</state>
+        </option>
+        <option>
+          <name>AList</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AListHeader</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>AListing</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>Includes</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>MacDefs</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>MacExps</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>MacExec</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>OnlyAssed</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>MultiLine</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>PageLengthCheck</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>PageLength</name>
+          <state>80</state>
+        </option>
+        <option>
+          <name>TabSpacing</name>
+          <state>8</state>
+        </option>
+        <option>
+          <name>AXRef</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AXRefDefines</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AXRefInternal</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AXRefDual</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AProcessor</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>AFpuProcessor</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>AOutputFile</name>
+          <state>$FILE_BNAME$.o</state>
+        </option>
+        <option>
+          <name>AMultibyteSupport</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>ALimitErrorsCheck</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>ALimitErrorsEdit</name>
+          <state>100</state>
+        </option>
+        <option>
+          <name>AIgnoreStdInclude</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AUserIncludes</name>
+          <state>$PROJ_DIR$\..\..\config</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\ble\common</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\boards</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\atomic</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\atomic_fifo</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\balloc</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\bootloader</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\bootloader\ble_dfu</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\bootloader\dfu</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\crc32</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\backend\cc310</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\backend\cc310_bl</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\backend\cifra</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\backend\mbedtls</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\backend\micro_ecc</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\backend\nrf_hw</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\backend\nrf_sw</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\backend\oberon</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\backend\optiga</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\delay</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\experimental_section_vars</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\fstorage</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\log</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\log\src</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\mem_manager</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\memobj</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\queue</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\ringbuf</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\scheduler</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\sha256</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\stack_info</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\strerror</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\svc</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\util</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\softdevice\common</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\softdevice\s132\headers</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\softdevice\s132\headers\nrf52</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\toolchain\cmsis\include</state>
+          <state>$PROJ_DIR$\..\..</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\external\fprintf</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\external\micro-ecc\micro-ecc</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\external\nano-pb</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\external\nrf_oberon</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\external\nrf_oberon\include</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\integration\nrfx</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\modules\nrfx</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\modules\nrfx\hal</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\modules\nrfx\mdk</state>
+          <state>$PROJ_DIR$\..\config</state>
+        </option>
+        <option>
+          <name>AExtraOptionsCheckV2</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AExtraOptionsV2</name>
+          <state></state>
+        </option>
+        <option>
+          <name>AsmNoLiteralPool</name>
+          <state>0</state>
+        </option>
+      </data>
+    </settings>
+    <settings>
+      <name>OBJCOPY</name>
+      <archiveVersion>0</archiveVersion>
+      <data>
+        <version>1</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>0</debug>
+        <option>
+          <name>OOCOutputFormat</name>
+          <version>2</version>
+          <state>1</state>
+        </option>
+        <option>
+          <name>OCOutputOverride</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>OOCOutputFile</name>
+          <state>secure_bootloader_ble_s132_pca10040.hex</state>
+        </option>
+        <option>
+          <name>OOCCommandLineProducer</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>OOCObjCopyEnable</name>
+          <state>1</state>
+        </option>
+      </data>
+    </settings>
+    <settings>
+      <name>CUSTOM</name>
+      <archiveVersion>3</archiveVersion>
+      <data>
+        <extensions></extensions>
+        <cmdline></cmdline>
+      </data>
+    </settings>
+    <settings>
+      <name>BICOMP</name>
+      <archiveVersion>0</archiveVersion>
+      <data/>
+    </settings>
+    <settings>
+      <name>BUILDACTION</name>
+      <archiveVersion>1</archiveVersion>
+      <data>
+        <prebuild></prebuild>
+        <postbuild></postbuild>
+      </data>
+    </settings>
+    <settings>
+      <name>ILINK</name>
+      <archiveVersion>0</archiveVersion>
+      <data>
+        <version>16</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>0</debug>
+        <option>
+          <name>IlinkLibIOConfig</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>XLinkMisraHandler</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkInputFileSlave</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkOutputFile</name>
+          <state>secure_bootloader_ble_s132_pca10040.out</state>
+        </option>
+        <option>
+          <name>IlinkDebugInfoEnable</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IlinkKeepSymbols</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IlinkRawBinaryFile</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IlinkRawBinarySymbol</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IlinkRawBinarySegment</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IlinkRawBinaryAlign</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IlinkDefines</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IlinkConfigDefines</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IlinkMapFile</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IlinkLogFile</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkLogInitialization</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkLogModule</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkLogSection</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkLogVeneer</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkIcfOverride</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IlinkIcfFile</name>
+      <state>$PROJ_DIR$\secure_bootloader_iar_nRF5x.icf</state>
+        </option>
+        <option>
+          <name>IlinkIcfFileSlave</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IlinkEnableRemarks</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkSuppressDiags</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IlinkTreatAsRem</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IlinkTreatAsWarn</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IlinkTreatAsErr</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IlinkWarningsAreErrors</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IlinkUseExtraOptions</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkExtraOptions</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IlinkLowLevelInterfaceSlave</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IlinkAutoLibEnable</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IlinkAdditionalLibs</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IlinkOverrideProgramEntryLabel</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkProgramEntryLabelSelect</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkProgramEntryLabel</name>
+          <state>__iar_program_start</state>
+        </option>
+        <option>
+          <name>DoFill</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>FillerByte</name>
+          <state>0xFF</state>
+        </option>
+        <option>
+          <name>FillerStart</name>
+          <state>0x0</state>
+        </option>
+        <option>
+          <name>FillerEnd</name>
+          <state>0x0</state>
+        </option>
+        <option>
+          <name>CrcSize</name>
+          <version>0</version>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CrcAlign</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CrcPoly</name>
+          <state>0x11021</state>
+        </option>
+        <option>
+          <name>CrcCompl</name>
+          <version>0</version>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CrcBitOrder</name>
+          <version>0</version>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CrcInitialValue</name>
+          <state>0x0</state>
+        </option>
+        <option>
+          <name>DoCrc</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkBE8Slave</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IlinkBufferedTerminalOutput</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IlinkStdoutInterfaceSlave</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CrcFullSize</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkIElfToolPostProcess</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkLogAutoLibSelect</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkLogRedirSymbols</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkLogUnusedFragments</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkCrcReverseByteOrder</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkCrcUseAsInput</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IlinkOptInline</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IlinkOptExceptionsAllow</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IlinkOptExceptionsForce</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkCmsis</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IlinkOptMergeDuplSections</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkOptUseVfe</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IlinkOptForceVfe</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkStackAnalysisEnable</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkStackControlFile</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IlinkStackCallGraphFile</name>
+          <state></state>
+        </option>
+        <option>
+          <name>CrcAlgorithm</name>
+          <version>0</version>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CrcUnitSize</name>
+          <version>0</version>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkThreadsSlave</name>
+          <state>1</state>
+        </option>
+      </data>
+    </settings>
+    <settings>
+      <name>IARCHIVE</name>
+      <archiveVersion>0</archiveVersion>
+      <data>
+        <version>0</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>0</debug>
+        <option>
+          <name>IarchiveInputs</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IarchiveOverride</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IarchiveOutput</name>
+          <state>###Unitialized###</state>
+        </option>
+      </data>
+    </settings>
+    <settings>
+      <name>BILINK</name>
+      <archiveVersion>0</archiveVersion>
+      <data/>
+    </settings>
+  </configuration>  <group>
+  <name>nRF_Log</name>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\log\src\nrf_log_frontend.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\log\src\nrf_log_str_formatter.c</name>    </file>  </group>  <group>
+  <name>nRF_Libraries</name>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\util\app_error_weak.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\scheduler\app_scheduler.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\util\app_util_platform.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\crc32\crc32.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\mem_manager\mem_manager.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\util\nrf_assert.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\atomic_fifo\nrf_atfifo.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\atomic\nrf_atomic.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\balloc\nrf_balloc.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\external\fprintf\nrf_fprintf.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\external\fprintf\nrf_fprintf_format.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\fstorage\nrf_fstorage.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\fstorage\nrf_fstorage_nvmc.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\fstorage\nrf_fstorage_sd.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\memobj\nrf_memobj.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\queue\nrf_queue.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\ringbuf\nrf_ringbuf.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\experimental_section_vars\nrf_section_iter.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\strerror\nrf_strerror.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\sha256\sha256.c</name>    </file>  </group>  <group>
+  <name>nRF_Crypto backend uECC</name>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\backend\micro_ecc\micro_ecc_backend_ecc.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\backend\micro_ecc\micro_ecc_backend_ecdh.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\backend\micro_ecc\micro_ecc_backend_ecdsa.c</name>    </file>  </group>  <group>
+  <name>nano-pb</name>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\external\nano-pb\pb_common.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\external\nano-pb\pb_decode.c</name>    </file>  </group>  <group>
+  <name>Board Definition</name>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\boards\boards.c</name>    </file>  </group>  <group>
+  <name>nRF_Drivers</name>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\modules\nrfx\hal\nrf_nvmc.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\modules\nrfx\soc\nrfx_atomic.c</name>    </file>  </group>  <group>
+  <name>nRF_Oberon_Crypto</name>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\external\nrf_oberon\lib\cortex-m4\hard-float\short-wchar\liboberon_3.0.5.a</name>    </file>  </group>  <group>
+  <name>nRF_Crypto</name>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\nrf_crypto_ecc.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\nrf_crypto_ecdsa.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\nrf_crypto_hash.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\nrf_crypto_init.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\nrf_crypto_shared.c</name>    </file>  </group>  <group>
+  <name>Application</name>    <file>
+    <name>$PROJ_DIR$\..\..\..\dfu_public_key.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\main.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\config\sdk_config.h</name>    </file>  </group>  <group>
+  <name>nRF_micro-ecc</name>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\external\micro-ecc\nrf52hf_iar\armgcc\micro_ecc_lib_nrf52.a</name>    </file>  </group>  <group>
+  <name>nRF_BLE</name>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\ble\common\ble_srv_common.c</name>    </file>  </group>  <group>
+  <name>nRF_Bootloader</name>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\bootloader\nrf_bootloader.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\bootloader\nrf_bootloader_app_start.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\bootloader\nrf_bootloader_app_start_final.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\bootloader\nrf_bootloader_dfu_timers.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\bootloader\nrf_bootloader_fw_activation.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\bootloader\nrf_bootloader_info.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\bootloader\nrf_bootloader_wdt.c</name>    </file>  </group>  <group>
+  <name>None</name>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\modules\nrfx\mdk\iar_startup_nrf52.s</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\modules\nrfx\mdk\system_nrf52.c</name>    </file>  </group>  <group>
+  <name>nRF_Crypto backend nRF sw</name>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\backend\nrf_sw\nrf_sw_backend_hash.c</name>    </file>  </group>  <group>
+  <name>nRF_DFU</name>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\bootloader\dfu\dfu-cc.pb.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\bootloader\dfu\nrf_dfu.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\bootloader\ble_dfu\nrf_dfu_ble.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\bootloader\dfu\nrf_dfu_flash.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\bootloader\dfu\nrf_dfu_handling_error.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\bootloader\dfu\nrf_dfu_mbr.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\bootloader\dfu\nrf_dfu_req_handler.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\bootloader\dfu\nrf_dfu_settings.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\bootloader\dfu\nrf_dfu_settings_svci.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\bootloader\dfu\nrf_dfu_transport.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\bootloader\dfu\nrf_dfu_utils.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\bootloader\dfu\nrf_dfu_validation.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\bootloader\dfu\nrf_dfu_ver_validation.c</name>    </file>  </group>  <group>
+  <name>nRF_SVC</name>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\bootloader\dfu\nrf_dfu_svci.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\bootloader\dfu\nrf_dfu_svci_handler.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\svc\nrf_svc_handler.c</name>    </file>  </group>  <group>
+  <name>nRF_SoftDevice</name>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\softdevice\common\nrf_sdh.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\softdevice\common\nrf_sdh_ble.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\softdevice\common\nrf_sdh_soc.c</name>    </file>  </group>  <group>
+  <name>nRF_Crypto backend Oberon</name>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\backend\oberon\oberon_backend_chacha_poly_aead.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\backend\oberon\oberon_backend_ecc.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\backend\oberon\oberon_backend_ecdh.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\backend\oberon\oberon_backend_ecdsa.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\backend\oberon\oberon_backend_eddsa.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\backend\oberon\oberon_backend_hash.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\backend\oberon\oberon_backend_hmac.c</name>    </file>  </group></project>
+
+

+ 61 - 0
central_and_peripheral_secure_bootloader/iar/secure_bootloader_iar_nRF5x.icf

@@ -0,0 +1,61 @@
+/*###ICF### Section handled by ICF editor, don't touch! ****/
+/*-Editor annotation file-*/
+/* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
+/*-Specials-*/
+define symbol __ICFEDIT_intvec_start__ = 0x78000;
+/*-Memory Regions-*/
+define symbol __ICFEDIT_region_ROM_start__   = 0x78000;
+define symbol __ICFEDIT_region_ROM_end__     = 0x7dfff;
+define symbol __ICFEDIT_region_RAM_start__   = 0x20005968;
+define symbol __ICFEDIT_region_RAM_end__     = 0x2000ffff;
+export symbol __ICFEDIT_region_RAM_start__;
+export symbol __ICFEDIT_region_RAM_end__;
+/*-Sizes-*/
+define symbol __ICFEDIT_size_cstack__   = 2048;
+define symbol __ICFEDIT_size_heap__     = 0;
+/**** End of ICF editor section. ###ICF###*/
+
+define memory mem with size = 4G;
+define region ROM_region   = mem:[from __ICFEDIT_region_ROM_start__   to __ICFEDIT_region_ROM_end__];
+define region RAM_region   = mem:[from __ICFEDIT_region_RAM_start__   to __ICFEDIT_region_RAM_end__];
+
+define symbol __region_uicr_bootloader_start_address_start = 0x10001014;
+define symbol __region_uicr_bootloader_start_address_length = 0x4;
+define symbol __start_uicr_bootloader_start_address = __region_uicr_bootloader_start_address_start;
+define symbol __stop_uicr_bootloader_start_address = __region_uicr_bootloader_start_address_start + __region_uicr_bootloader_start_address_length;
+export symbol __start_uicr_bootloader_start_address;
+export symbol __stop_uicr_bootloader_start_address;
+define symbol __region_bootloader_settings_page_start = 0x0007F000;
+define symbol __region_bootloader_settings_page_length = 0x1000;
+define symbol __start_bootloader_settings_page = __region_bootloader_settings_page_start;
+define symbol __stop_bootloader_settings_page = __region_bootloader_settings_page_start + __region_bootloader_settings_page_length;
+export symbol __start_bootloader_settings_page;
+export symbol __stop_bootloader_settings_page;
+define symbol __region_uicr_mbr_params_page_start = 0x10001018;
+define symbol __region_uicr_mbr_params_page_length = 0x4;
+define symbol __start_uicr_mbr_params_page = __region_uicr_mbr_params_page_start;
+define symbol __stop_uicr_mbr_params_page = __region_uicr_mbr_params_page_start + __region_uicr_mbr_params_page_length;
+export symbol __start_uicr_mbr_params_page;
+export symbol __stop_uicr_mbr_params_page;
+define symbol __region_mbr_params_page_start = 0x0007E000;
+define symbol __region_mbr_params_page_length = 0x1000;
+define symbol __start_mbr_params_page = __region_mbr_params_page_start;
+define symbol __stop_mbr_params_page = __region_mbr_params_page_start + __region_mbr_params_page_length;
+export symbol __start_mbr_params_page;
+export symbol __stop_mbr_params_page;
+
+define block CSTACK    with alignment = 8, size = __ICFEDIT_size_cstack__   { };
+define block HEAP      with alignment = 8, size = __ICFEDIT_size_heap__     { };
+define block RO_END    with alignment = 8, size = 0     { };
+
+initialize by copy { readwrite };
+do not initialize  { section .noinit };
+
+keep { section .intvec };
+place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
+place in ROM_region   { readonly,
+                        block RO_END };
+place in RAM_region   { readwrite,
+                        block CSTACK,
+                        block HEAP };
+

+ 27 - 0
central_and_peripheral_secure_bootloader/keilkill.bat

@@ -0,0 +1,27 @@
+del *.bak /s
+del *.ddk /s
+del *.edk /s
+del *.lst /s
+del *.lnp /s
+del *.mpf /s
+del *.mpj /s
+del *.obj /s
+del *.omf /s
+::del *.opt /s  ::²»ÔÊÐíɾ³ýJLINKµÄÉèÖÃ
+del *.plg /s
+del *.rpt /s
+del *.tmp /s
+del *.__i /s
+del *.crf /s
+del *.o /s
+del *.d /s
+del *.axf /s
+del *.tra /s
+del *.dep /s           
+del JLinkLog.txt /s
+
+del *.iex /s
+del *.htm /s
+::del *.sct /s
+del *.map /s
+exit

+ 59 - 0
central_and_peripheral_secure_bootloader/ses/flash_placement.xml

@@ -0,0 +1,59 @@
+<!DOCTYPE Linker_Placement_File>
+<Root name="Flash Section Placement">
+  <MemorySegment name="FLASH" start="$(FLASH_PH_START)" size="$(FLASH_PH_SIZE)">
+    <ProgramSection load="no" name=".reserved_flash" start="$(FLASH_PH_START)" size="$(FLASH_START)-$(FLASH_PH_START)" />
+    <ProgramSection alignment="0x100" load="Yes" name=".vectors" start="$(FLASH_START)" />
+    <ProgramSection alignment="4" load="Yes" name=".init" />
+    <ProgramSection alignment="4" load="Yes" name=".init_rodata" />
+    <ProgramSection alignment="4" load="Yes" name=".text" />
+    <ProgramSection alignment="4" keep="Yes" load="Yes" name=".crypto_data" inputsections="*(SORT(.crypto_data*))" address_symbol="__start_crypto_data" end_symbol="__stop_crypto_data" />
+    <ProgramSection alignment="4" keep="Yes" load="Yes" name=".nrf_queue" inputsections="*(.nrf_queue*)" address_symbol="__start_nrf_queue" end_symbol="__stop_nrf_queue" />
+    <ProgramSection alignment="4" keep="Yes" load="Yes" name=".dfu_trans" inputsections="*(SORT(.dfu_trans*))" address_symbol="__start_dfu_trans" end_symbol="__stop_dfu_trans" />
+    <ProgramSection alignment="4" keep="Yes" load="Yes" name=".svc_data" inputsections="*(.svc_data*)" address_symbol="__start_svc_data" end_symbol="__stop_svc_data" />
+    <ProgramSection alignment="4" keep="Yes" load="Yes" name=".log_const_data" inputsections="*(SORT(.log_const_data*))" address_symbol="__start_log_const_data" end_symbol="__stop_log_const_data" />
+    <ProgramSection alignment="4" keep="Yes" load="Yes" name=".nrf_balloc" inputsections="*(.nrf_balloc*)" address_symbol="__start_nrf_balloc" end_symbol="__stop_nrf_balloc" />
+    <ProgramSection alignment="4" keep="Yes" load="Yes" name=".sdh_ble_observers" inputsections="*(SORT(.sdh_ble_observers*))" address_symbol="__start_sdh_ble_observers" end_symbol="__stop_sdh_ble_observers" />
+    <ProgramSection alignment="4" keep="Yes" load="Yes" name=".log_backends" inputsections="*(SORT(.log_backends*))" address_symbol="__start_log_backends" end_symbol="__stop_log_backends" />
+    <ProgramSection alignment="4" keep="Yes" load="Yes" name=".sdh_req_observers" inputsections="*(SORT(.sdh_req_observers*))" address_symbol="__start_sdh_req_observers" end_symbol="__stop_sdh_req_observers" />
+    <ProgramSection alignment="4" keep="Yes" load="Yes" name=".sdh_state_observers" inputsections="*(SORT(.sdh_state_observers*))" address_symbol="__start_sdh_state_observers" end_symbol="__stop_sdh_state_observers" />
+    <ProgramSection alignment="4" keep="Yes" load="Yes" name=".sdh_stack_observers" inputsections="*(SORT(.sdh_stack_observers*))" address_symbol="__start_sdh_stack_observers" end_symbol="__stop_sdh_stack_observers" />
+    <ProgramSection alignment="4" keep="Yes" load="Yes" name=".sdh_soc_observers" inputsections="*(SORT(.sdh_soc_observers*))" address_symbol="__start_sdh_soc_observers" end_symbol="__stop_sdh_soc_observers" />
+    <ProgramSection alignment="4" keep="Yes" load="No" name=".nrf_sections" address_symbol="__start_nrf_sections" />
+    <ProgramSection alignment="4" keep="Yes" load="Yes" name=".log_dynamic_data"  inputsections="*(SORT(.log_dynamic_data*))" runin=".log_dynamic_data_run"/>
+    <ProgramSection alignment="4" keep="Yes" load="Yes" name=".log_filter_data"  inputsections="*(SORT(.log_filter_data*))" runin=".log_filter_data_run"/>
+    <ProgramSection alignment="4" keep="Yes" load="Yes" name=".fs_data"  inputsections="*(.fs_data*)" runin=".fs_data_run"/>
+    <ProgramSection alignment="4" load="Yes" name=".dtors" />
+    <ProgramSection alignment="4" load="Yes" name=".ctors" />
+    <ProgramSection alignment="4" load="Yes" name=".rodata" />
+    <ProgramSection alignment="4" load="Yes" name=".ARM.exidx" address_symbol="__exidx_start" end_symbol="__exidx_end" />
+    <ProgramSection alignment="4" load="Yes" runin=".fast_run" name=".fast" />
+    <ProgramSection alignment="4" load="Yes" runin=".data_run" name=".data" />
+    <ProgramSection alignment="4" load="Yes" runin=".tdata_run" name=".tdata" />
+    <ProgramSection alignment="4" keep="Yes" load="No" name=".mbr_params_page" address_symbol="__start_mbr_params_page" end_symbol="__stop_mbr_params_page" start = "0x0007E000" size="0x1000" />
+    <ProgramSection alignment="4" keep="Yes" load="No" name=".bootloader_settings_page" address_symbol="__start_bootloader_settings_page" end_symbol="__stop_bootloader_settings_page" start = "0x0007F000" size="0x1000" />
+  </MemorySegment>
+  <MemorySegment name="RAM" start="$(RAM_PH_START)" size="$(RAM_PH_SIZE)">
+    <ProgramSection load="no" name=".reserved_ram" start="$(RAM_PH_START)" size="$(RAM_START)-$(RAM_PH_START)" />
+    <ProgramSection alignment="0x100" load="No" name=".vectors_ram" start="$(RAM_START)" address_symbol="__app_ram_start__"/>
+    <ProgramSection alignment="4" keep="Yes" load="No" name=".nrf_sections_run" address_symbol="__start_nrf_sections_run" />
+    <ProgramSection alignment="4" keep="Yes" load="No" name=".log_dynamic_data_run" address_symbol="__start_log_dynamic_data" end_symbol="__stop_log_dynamic_data" />
+    <ProgramSection alignment="4" keep="Yes" load="No" name=".log_filter_data_run" address_symbol="__start_log_filter_data" end_symbol="__stop_log_filter_data" />
+    <ProgramSection alignment="4" keep="Yes" load="No" name=".fs_data_run" address_symbol="__start_fs_data" end_symbol="__stop_fs_data" />
+    <ProgramSection alignment="4" keep="Yes" load="No" name=".nrf_sections_run_end" address_symbol="__end_nrf_sections_run" />
+    <ProgramSection alignment="4" load="No" name=".fast_run" />
+    <ProgramSection alignment="4" load="No" name=".data_run" />
+    <ProgramSection alignment="4" load="No" name=".tdata_run" />
+    <ProgramSection alignment="4" load="No" name=".bss" />
+    <ProgramSection alignment="4" load="No" name=".tbss" />
+    <ProgramSection alignment="4" load="No" name=".non_init" />
+    <ProgramSection alignment="4" size="__HEAPSIZE__" load="No" name=".heap" />
+    <ProgramSection alignment="8" size="__STACKSIZE__" load="No" place_from_segment_end="Yes" name=".stack"  address_symbol="__StackLimit" end_symbol="__StackTop"/>
+    <ProgramSection alignment="8" size="__STACKSIZE_PROCESS__" load="No" name=".stack_process" />
+  </MemorySegment>
+  <MemorySegment name="uicr_bootloader_start_address" start="0x10001014" size="0x4">
+    <ProgramSection alignment="4" keep="Yes" load="Yes" name=".uicr_bootloader_start_address" address_symbol="__start_uicr_bootloader_start_address" end_symbol="__stop_uicr_bootloader_start_address" start = "0x10001014" size="0x4" />
+  </MemorySegment>
+  <MemorySegment name="uicr_mbr_params_page" start="0x10001018" size="0x4">
+    <ProgramSection alignment="4" keep="Yes" load="Yes" name=".uicr_mbr_params_page" address_symbol="__start_uicr_mbr_params_page" end_symbol="__stop_uicr_mbr_params_page" start = "0x10001018" size="0x4" />
+  </MemorySegment>
+</Root>

Різницю між файлами не показано, бо вона завелика
+ 17 - 0
central_and_peripheral_secure_bootloader/ses/secure_bootloader_ble_s132_pca10040.emProject


+ 7 - 0
central_and_peripheral_secure_bootloader/ses/secure_bootloader_ble_s132_pca10040.emSession

@@ -0,0 +1,7 @@
+<!DOCTYPE CrossStudio_Session_File>
+<session>
+  <ARMCrossStudioWindow activeProject="secure_bootloader_ble_s132_pca10040" buildConfiguration="Release"/>
+  <Files>
+    <SessionOpenFile codecName="Default" debugPath="../../main.c" left="0" name="unnamed" path="../../main.c" selected="1" top="0" useBinaryEdit="0" useTextEdit="1" x="0" y="0"/>
+  </Files>
+</session>

+ 9 - 0
central_and_peripheral_secure_bootloader_debug/arm5_no_packs/EventRecorderStub.scvd

@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="utf-8"?>
+
+<component_viewer schemaVersion="0.1" xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="Component_Viewer.xsd">
+
+<component name="EventRecorderStub" version="1.0.0"/>       <!--name and version of the component-->
+  <events>
+  </events>
+
+</component_viewer>

+ 39 - 0
central_and_peripheral_secure_bootloader_debug/arm5_no_packs/JLinkSettings.ini

@@ -0,0 +1,39 @@
+[BREAKPOINTS]
+ForceImpTypeAny = 0
+ShowInfoWin = 1
+EnableFlashBP = 2
+BPDuringExecution = 0
+[CFI]
+CFISize = 0x00
+CFIAddr = 0x00
+[CPU]
+MonModeVTableAddr = 0xFFFFFFFF
+MonModeDebug = 0
+MaxNumAPs = 0
+LowPowerHandlingMode = 0
+OverrideMemMap = 0
+AllowSimulation = 1
+ScriptFile=""
+[FLASH]
+CacheExcludeSize = 0x00
+CacheExcludeAddr = 0x00
+MinNumBytesFlashDL = 0
+SkipProgOnCRCMatch = 1
+VerifyDownload = 1
+AllowCaching = 1
+EnableFlashDL = 2
+Override = 0
+Device="ARM7"
+[GENERAL]
+WorkRAMSize = 0x00
+WorkRAMAddr = 0x00
+RAMUsageLimit = 0x00
+[SWO]
+SWOLogFile=""
+[MEM]
+RdOverrideOrMask = 0x00
+RdOverrideAndMask = 0xFFFFFFFF
+RdOverrideAddr = 0xFFFFFFFF
+WrOverrideOrMask = 0x00
+WrOverrideAndMask = 0xFFFFFFFF
+WrOverrideAddr = 0xFFFFFFFF

+ 371 - 0
central_and_peripheral_secure_bootloader_debug/arm5_no_packs/RTE/Device/nRF52832_xxAA/arm_startup_nrf52.s

@@ -0,0 +1,371 @@
+; Copyright (c) 2009-2020 ARM Limited. All rights reserved.
+; 
+;     SPDX-License-Identifier: Apache-2.0
+; 
+; Licensed under the Apache License, Version 2.0 (the License); you may
+; not use this file except in compliance with the License.
+; You may obtain a copy of the License at
+; 
+;     www.apache.org/licenses/LICENSE-2.0
+; 
+; Unless required by applicable law or agreed to in writing, software
+; distributed under the License is distributed on an AS IS BASIS, WITHOUT
+; WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+; See the License for the specific language governing permissions and
+; limitations under the License.
+; 
+; NOTICE: This file has been modified by Nordic Semiconductor ASA.
+
+                IF :DEF: __STARTUP_CONFIG
+#ifdef  __STARTUP_CONFIG
+#include "startup_config.h"
+#ifndef __STARTUP_CONFIG_STACK_ALIGNEMENT
+#define __STARTUP_CONFIG_STACK_ALIGNEMENT 3
+#endif
+#endif
+                ENDIF
+
+                IF :DEF: __STARTUP_CONFIG
+Stack_Size      EQU __STARTUP_CONFIG_STACK_SIZE
+                ELIF :DEF: __STACK_SIZE
+Stack_Size      EQU __STACK_SIZE
+                ELSE
+Stack_Size      EQU 4096
+                ENDIF
+                
+                IF :DEF: __STARTUP_CONFIG
+Stack_Align     EQU __STARTUP_CONFIG_STACK_ALIGNEMENT
+                ELSE
+Stack_Align     EQU 3
+                ENDIF
+
+                AREA    STACK, NOINIT, READWRITE, ALIGN=Stack_Align
+Stack_Mem       SPACE   Stack_Size
+__initial_sp
+
+                IF :DEF: __STARTUP_CONFIG
+Heap_Size       EQU __STARTUP_CONFIG_HEAP_SIZE
+                ELIF :DEF: __HEAP_SIZE
+Heap_Size       EQU __HEAP_SIZE
+                ELSE
+Heap_Size       EQU 4096
+                ENDIF
+
+                AREA    HEAP, NOINIT, READWRITE, ALIGN=3
+__heap_base
+Heap_Mem        SPACE   Heap_Size
+__heap_limit
+
+                PRESERVE8
+                THUMB
+
+; Vector Table Mapped to Address 0 at Reset
+
+                AREA    RESET, DATA, READONLY
+                EXPORT  __Vectors
+                EXPORT  __Vectors_End
+                EXPORT  __Vectors_Size
+
+__Vectors       DCD     __initial_sp              ; Top of Stack
+                DCD     Reset_Handler
+                DCD     NMI_Handler
+                DCD     HardFault_Handler
+                DCD     MemoryManagement_Handler
+                DCD     BusFault_Handler
+                DCD     UsageFault_Handler
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     SVC_Handler
+                DCD     DebugMon_Handler
+                DCD     0                         ; Reserved
+                DCD     PendSV_Handler
+                DCD     SysTick_Handler
+
+                ; External Interrupts
+                DCD     POWER_CLOCK_IRQHandler
+                DCD     RADIO_IRQHandler
+                DCD     UARTE0_UART0_IRQHandler
+                DCD     SPIM0_SPIS0_TWIM0_TWIS0_SPI0_TWI0_IRQHandler
+                DCD     SPIM1_SPIS1_TWIM1_TWIS1_SPI1_TWI1_IRQHandler
+                DCD     NFCT_IRQHandler
+                DCD     GPIOTE_IRQHandler
+                DCD     SAADC_IRQHandler
+                DCD     TIMER0_IRQHandler
+                DCD     TIMER1_IRQHandler
+                DCD     TIMER2_IRQHandler
+                DCD     RTC0_IRQHandler
+                DCD     TEMP_IRQHandler
+                DCD     RNG_IRQHandler
+                DCD     ECB_IRQHandler
+                DCD     CCM_AAR_IRQHandler
+                DCD     WDT_IRQHandler
+                DCD     RTC1_IRQHandler
+                DCD     QDEC_IRQHandler
+                DCD     COMP_LPCOMP_IRQHandler
+                DCD     SWI0_EGU0_IRQHandler
+                DCD     SWI1_EGU1_IRQHandler
+                DCD     SWI2_EGU2_IRQHandler
+                DCD     SWI3_EGU3_IRQHandler
+                DCD     SWI4_EGU4_IRQHandler
+                DCD     SWI5_EGU5_IRQHandler
+                DCD     TIMER3_IRQHandler
+                DCD     TIMER4_IRQHandler
+                DCD     PWM0_IRQHandler
+                DCD     PDM_IRQHandler
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     MWU_IRQHandler
+                DCD     PWM1_IRQHandler
+                DCD     PWM2_IRQHandler
+                DCD     SPIM2_SPIS2_SPI2_IRQHandler
+                DCD     RTC2_IRQHandler
+                DCD     I2S_IRQHandler
+                DCD     FPU_IRQHandler
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+                DCD     0                         ; Reserved
+
+__Vectors_End
+
+__Vectors_Size  EQU     __Vectors_End - __Vectors
+
+                AREA    |.text|, CODE, READONLY
+
+; Reset Handler
+
+
+Reset_Handler   PROC
+                EXPORT  Reset_Handler             [WEAK]
+                IMPORT  SystemInit
+                IMPORT  __main
+
+
+                LDR     R0, =SystemInit
+                BLX     R0
+                LDR     R0, =__main
+                BX      R0
+                ENDP
+
+; Dummy Exception Handlers (infinite loops which can be modified)
+
+NMI_Handler     PROC
+                EXPORT  NMI_Handler               [WEAK]
+                B       .
+                ENDP
+HardFault_Handler\
+                PROC
+                EXPORT  HardFault_Handler         [WEAK]
+                B       .
+                ENDP
+MemoryManagement_Handler\
+                PROC
+                EXPORT  MemoryManagement_Handler  [WEAK]
+                B       .
+                ENDP
+BusFault_Handler\
+                PROC
+                EXPORT  BusFault_Handler          [WEAK]
+                B       .
+                ENDP
+UsageFault_Handler\
+                PROC
+                EXPORT  UsageFault_Handler        [WEAK]
+                B       .
+                ENDP
+SVC_Handler     PROC
+                EXPORT  SVC_Handler               [WEAK]
+                B       .
+                ENDP
+DebugMon_Handler\
+                PROC
+                EXPORT  DebugMon_Handler          [WEAK]
+                B       .
+                ENDP
+PendSV_Handler  PROC
+                EXPORT  PendSV_Handler            [WEAK]
+                B       .
+                ENDP
+SysTick_Handler PROC
+                EXPORT  SysTick_Handler           [WEAK]
+                B       .
+                ENDP
+
+Default_Handler PROC
+
+                EXPORT   POWER_CLOCK_IRQHandler [WEAK]
+                EXPORT   RADIO_IRQHandler [WEAK]
+                EXPORT   UARTE0_UART0_IRQHandler [WEAK]
+                EXPORT   SPIM0_SPIS0_TWIM0_TWIS0_SPI0_TWI0_IRQHandler [WEAK]
+                EXPORT   SPIM1_SPIS1_TWIM1_TWIS1_SPI1_TWI1_IRQHandler [WEAK]
+                EXPORT   NFCT_IRQHandler [WEAK]
+                EXPORT   GPIOTE_IRQHandler [WEAK]
+                EXPORT   SAADC_IRQHandler [WEAK]
+                EXPORT   TIMER0_IRQHandler [WEAK]
+                EXPORT   TIMER1_IRQHandler [WEAK]
+                EXPORT   TIMER2_IRQHandler [WEAK]
+                EXPORT   RTC0_IRQHandler [WEAK]
+                EXPORT   TEMP_IRQHandler [WEAK]
+                EXPORT   RNG_IRQHandler [WEAK]
+                EXPORT   ECB_IRQHandler [WEAK]
+                EXPORT   CCM_AAR_IRQHandler [WEAK]
+                EXPORT   WDT_IRQHandler [WEAK]
+                EXPORT   RTC1_IRQHandler [WEAK]
+                EXPORT   QDEC_IRQHandler [WEAK]
+                EXPORT   COMP_LPCOMP_IRQHandler [WEAK]
+                EXPORT   SWI0_EGU0_IRQHandler [WEAK]
+                EXPORT   SWI1_EGU1_IRQHandler [WEAK]
+                EXPORT   SWI2_EGU2_IRQHandler [WEAK]
+                EXPORT   SWI3_EGU3_IRQHandler [WEAK]
+                EXPORT   SWI4_EGU4_IRQHandler [WEAK]
+                EXPORT   SWI5_EGU5_IRQHandler [WEAK]
+                EXPORT   TIMER3_IRQHandler [WEAK]
+                EXPORT   TIMER4_IRQHandler [WEAK]
+                EXPORT   PWM0_IRQHandler [WEAK]
+                EXPORT   PDM_IRQHandler [WEAK]
+                EXPORT   MWU_IRQHandler [WEAK]
+                EXPORT   PWM1_IRQHandler [WEAK]
+                EXPORT   PWM2_IRQHandler [WEAK]
+                EXPORT   SPIM2_SPIS2_SPI2_IRQHandler [WEAK]
+                EXPORT   RTC2_IRQHandler [WEAK]
+                EXPORT   I2S_IRQHandler [WEAK]
+                EXPORT   FPU_IRQHandler [WEAK]
+POWER_CLOCK_IRQHandler
+RADIO_IRQHandler
+UARTE0_UART0_IRQHandler
+SPIM0_SPIS0_TWIM0_TWIS0_SPI0_TWI0_IRQHandler
+SPIM1_SPIS1_TWIM1_TWIS1_SPI1_TWI1_IRQHandler
+NFCT_IRQHandler
+GPIOTE_IRQHandler
+SAADC_IRQHandler
+TIMER0_IRQHandler
+TIMER1_IRQHandler
+TIMER2_IRQHandler
+RTC0_IRQHandler
+TEMP_IRQHandler
+RNG_IRQHandler
+ECB_IRQHandler
+CCM_AAR_IRQHandler
+WDT_IRQHandler
+RTC1_IRQHandler
+QDEC_IRQHandler
+COMP_LPCOMP_IRQHandler
+SWI0_EGU0_IRQHandler
+SWI1_EGU1_IRQHandler
+SWI2_EGU2_IRQHandler
+SWI3_EGU3_IRQHandler
+SWI4_EGU4_IRQHandler
+SWI5_EGU5_IRQHandler
+TIMER3_IRQHandler
+TIMER4_IRQHandler
+PWM0_IRQHandler
+PDM_IRQHandler
+MWU_IRQHandler
+PWM1_IRQHandler
+PWM2_IRQHandler
+SPIM2_SPIS2_SPI2_IRQHandler
+RTC2_IRQHandler
+I2S_IRQHandler
+FPU_IRQHandler
+                B .
+                ENDP
+                ALIGN
+
+; User Initial Stack & Heap
+
+                IF      :DEF:__MICROLIB
+
+                EXPORT  __initial_sp
+                EXPORT  __heap_base
+                EXPORT  __heap_limit
+
+                ELSE
+
+                IMPORT  __use_two_region_memory
+                EXPORT  __user_initial_stackheap
+
+__user_initial_stackheap PROC
+
+                LDR     R0, = Heap_Mem
+                LDR     R1, = (Stack_Mem + Stack_Size)
+                LDR     R2, = (Heap_Mem + Heap_Size)
+                LDR     R3, = Stack_Mem
+                BX      LR
+                ENDP
+
+                ALIGN
+
+                ENDIF
+
+                END

+ 207 - 0
central_and_peripheral_secure_bootloader_debug/arm5_no_packs/RTE/Device/nRF52832_xxAA/system_nrf52.c

@@ -0,0 +1,207 @@
+/*
+
+Copyright (c) 2009-2020 ARM Limited. All rights reserved.
+
+    SPDX-License-Identifier: Apache-2.0
+
+Licensed under the Apache License, Version 2.0 (the License); you may
+not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+    www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an AS IS BASIS, WITHOUT
+WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+
+NOTICE: This file has been modified by Nordic Semiconductor ASA.
+
+*/
+
+/* NOTE: Template files (including this one) are application specific and therefore expected to
+   be copied into the application project folder prior to its use! */
+
+#include <stdint.h>
+#include <stdbool.h>
+#include "nrf.h"
+#include "nrf_erratas.h"
+#include "system_nrf52.h"
+
+/*lint ++flb "Enter library region" */
+
+#define __SYSTEM_CLOCK_64M      (64000000UL)
+
+
+#if defined ( __CC_ARM )
+    uint32_t SystemCoreClock __attribute__((used)) = __SYSTEM_CLOCK_64M;
+#elif defined ( __ICCARM__ )
+    __root uint32_t SystemCoreClock = __SYSTEM_CLOCK_64M;
+#elif defined ( __GNUC__ )
+    uint32_t SystemCoreClock __attribute__((used)) = __SYSTEM_CLOCK_64M;
+#endif
+
+void SystemCoreClockUpdate(void)
+{
+    SystemCoreClock = __SYSTEM_CLOCK_64M;
+}
+
+void SystemInit(void)
+{
+    /* Enable SWO trace functionality. If ENABLE_SWO is not defined, SWO pin will be used as GPIO (see Product
+       Specification to see which one). */
+    #if defined (ENABLE_SWO)
+        CoreDebug->DEMCR |= CoreDebug_DEMCR_TRCENA_Msk;
+        NRF_CLOCK->TRACECONFIG |= CLOCK_TRACECONFIG_TRACEMUX_Serial << CLOCK_TRACECONFIG_TRACEMUX_Pos;
+        NRF_P0->PIN_CNF[18] = (GPIO_PIN_CNF_DRIVE_H0H1 << GPIO_PIN_CNF_DRIVE_Pos) | (GPIO_PIN_CNF_INPUT_Connect << GPIO_PIN_CNF_INPUT_Pos) | (GPIO_PIN_CNF_DIR_Output << GPIO_PIN_CNF_DIR_Pos);
+    #endif
+
+    /* Enable Trace functionality. If ENABLE_TRACE is not defined, TRACE pins will be used as GPIOs (see Product
+       Specification to see which ones). */
+    #if defined (ENABLE_TRACE)
+        CoreDebug->DEMCR |= CoreDebug_DEMCR_TRCENA_Msk;
+        NRF_CLOCK->TRACECONFIG |= CLOCK_TRACECONFIG_TRACEMUX_Parallel << CLOCK_TRACECONFIG_TRACEMUX_Pos;
+        NRF_P0->PIN_CNF[14] = (GPIO_PIN_CNF_DRIVE_H0H1 << GPIO_PIN_CNF_DRIVE_Pos) | (GPIO_PIN_CNF_INPUT_Connect << GPIO_PIN_CNF_INPUT_Pos) | (GPIO_PIN_CNF_DIR_Output << GPIO_PIN_CNF_DIR_Pos);
+        NRF_P0->PIN_CNF[15] = (GPIO_PIN_CNF_DRIVE_H0H1 << GPIO_PIN_CNF_DRIVE_Pos) | (GPIO_PIN_CNF_INPUT_Connect << GPIO_PIN_CNF_INPUT_Pos) | (GPIO_PIN_CNF_DIR_Output << GPIO_PIN_CNF_DIR_Pos);
+        NRF_P0->PIN_CNF[16] = (GPIO_PIN_CNF_DRIVE_H0H1 << GPIO_PIN_CNF_DRIVE_Pos) | (GPIO_PIN_CNF_INPUT_Connect << GPIO_PIN_CNF_INPUT_Pos) | (GPIO_PIN_CNF_DIR_Output << GPIO_PIN_CNF_DIR_Pos);
+        NRF_P0->PIN_CNF[18] = (GPIO_PIN_CNF_DRIVE_H0H1 << GPIO_PIN_CNF_DRIVE_Pos) | (GPIO_PIN_CNF_INPUT_Connect << GPIO_PIN_CNF_INPUT_Pos) | (GPIO_PIN_CNF_DIR_Output << GPIO_PIN_CNF_DIR_Pos);
+        NRF_P0->PIN_CNF[20] = (GPIO_PIN_CNF_DRIVE_H0H1 << GPIO_PIN_CNF_DRIVE_Pos) | (GPIO_PIN_CNF_INPUT_Connect << GPIO_PIN_CNF_INPUT_Pos) | (GPIO_PIN_CNF_DIR_Output << GPIO_PIN_CNF_DIR_Pos);
+    #endif
+    
+    /* Workaround for Errata 12 "COMP: Reference ladder not correctly calibrated" found at the Errata document
+       for your device located at https://infocenter.nordicsemi.com/index.jsp */
+    if (nrf52_errata_12()){
+        *(volatile uint32_t *)0x40013540 = (*(uint32_t *)0x10000324 & 0x00001F00) >> 8;
+    }
+    
+    /* Workaround for Errata 16 "System: RAM may be corrupt on wakeup from CPU IDLE" found at the Errata document
+       for your device located at https://infocenter.nordicsemi.com/index.jsp */
+    if (nrf52_errata_16()){
+        *(volatile uint32_t *)0x4007C074 = 3131961357ul;
+    }
+
+    /* Workaround for Errata 31 "CLOCK: Calibration values are not correctly loaded from FICR at reset" found at the Errata document
+       for your device located at https://infocenter.nordicsemi.com/index.jsp */
+    if (nrf52_errata_31()){
+        *(volatile uint32_t *)0x4000053C = ((*(volatile uint32_t *)0x10000244) & 0x0000E000) >> 13;
+    }
+
+    /* Workaround for Errata 32 "DIF: Debug session automatically enables TracePort pins" found at the Errata document
+       for your device located at https://infocenter.nordicsemi.com/index.jsp */
+    if (nrf52_errata_32()){
+        CoreDebug->DEMCR &= ~CoreDebug_DEMCR_TRCENA_Msk;
+    }
+
+    /* Workaround for Errata 36 "CLOCK: Some registers are not reset when expected" found at the Errata document
+       for your device located at https://infocenter.nordicsemi.com/index.jsp  */
+    if (nrf52_errata_36()){
+        NRF_CLOCK->EVENTS_DONE = 0;
+        NRF_CLOCK->EVENTS_CTTO = 0;
+        NRF_CLOCK->CTIV = 0;
+    }
+
+    /* Workaround for Errata 37 "RADIO: Encryption engine is slow by default" found at the Errata document
+       for your device located at https://infocenter.nordicsemi.com/index.jsp  */
+    if (nrf52_errata_37()){
+        *(volatile uint32_t *)0x400005A0 = 0x3;
+    }
+
+    /* Workaround for Errata 57 "NFCT: NFC Modulation amplitude" found at the Errata document
+       for your device located at https://infocenter.nordicsemi.com/index.jsp  */
+    if (nrf52_errata_57()){
+        *(volatile uint32_t *)0x40005610 = 0x00000005;
+        *(volatile uint32_t *)0x40005688 = 0x00000001;
+        *(volatile uint32_t *)0x40005618 = 0x00000000;
+        *(volatile uint32_t *)0x40005614 = 0x0000003F;
+    }
+
+    /* Workaround for Errata 66 "TEMP: Linearity specification not met with default settings" found at the Errata document
+       for your device located at https://infocenter.nordicsemi.com/index.jsp  */
+    if (nrf52_errata_66()){
+        NRF_TEMP->A0 = NRF_FICR->TEMP.A0;
+        NRF_TEMP->A1 = NRF_FICR->TEMP.A1;
+        NRF_TEMP->A2 = NRF_FICR->TEMP.A2;
+        NRF_TEMP->A3 = NRF_FICR->TEMP.A3;
+        NRF_TEMP->A4 = NRF_FICR->TEMP.A4;
+        NRF_TEMP->A5 = NRF_FICR->TEMP.A5;
+        NRF_TEMP->B0 = NRF_FICR->TEMP.B0;
+        NRF_TEMP->B1 = NRF_FICR->TEMP.B1;
+        NRF_TEMP->B2 = NRF_FICR->TEMP.B2;
+        NRF_TEMP->B3 = NRF_FICR->TEMP.B3;
+        NRF_TEMP->B4 = NRF_FICR->TEMP.B4;
+        NRF_TEMP->B5 = NRF_FICR->TEMP.B5;
+        NRF_TEMP->T0 = NRF_FICR->TEMP.T0;
+        NRF_TEMP->T1 = NRF_FICR->TEMP.T1;
+        NRF_TEMP->T2 = NRF_FICR->TEMP.T2;
+        NRF_TEMP->T3 = NRF_FICR->TEMP.T3;
+        NRF_TEMP->T4 = NRF_FICR->TEMP.T4;
+    }
+
+    /* Workaround for Errata 108 "RAM: RAM content cannot be trusted upon waking up from System ON Idle or System OFF mode" found at the Errata document
+       for your device located at https://infocenter.nordicsemi.com/index.jsp  */
+    if (nrf52_errata_108()){
+        *(volatile uint32_t *)0x40000EE4ul = *(volatile uint32_t *)0x10000258ul & 0x0000004Ful;
+    }
+    
+    /* Workaround for Errata 136 "System: Bits in RESETREAS are set when they should not be" found at the Errata document
+       for your device located at https://infocenter.nordicsemi.com/index.jsp  */
+    if (nrf52_errata_136()){
+        if (NRF_POWER->RESETREAS & POWER_RESETREAS_RESETPIN_Msk){
+            NRF_POWER->RESETREAS =  ~POWER_RESETREAS_RESETPIN_Msk;
+        }
+    }
+    
+    /* Workaround for Errata 182 "RADIO: Fixes for anomalies #102, #106, and #107 do not take effect" found at the Errata document
+       for your device located at https://infocenter.nordicsemi.com/index.jsp  */
+    if (nrf52_errata_182()){
+        *(volatile uint32_t *) 0x4000173C |= (0x1 << 10);
+    }
+    
+    /* Enable the FPU if the compiler used floating point unit instructions. __FPU_USED is a MACRO defined by the
+     * compiler. Since the FPU consumes energy, remember to disable FPU use in the compiler if floating point unit
+     * operations are not used in your code. */
+    #if (__FPU_USED == 1)
+        SCB->CPACR |= (3UL << 20) | (3UL << 22);
+        __DSB();
+        __ISB();
+    #endif
+
+    /* Configure NFCT pins as GPIOs if NFCT is not to be used in your code. If CONFIG_NFCT_PINS_AS_GPIOS is not defined,
+       two GPIOs (see Product Specification to see which ones) will be reserved for NFC and will not be available as
+       normal GPIOs. */
+    #if defined (CONFIG_NFCT_PINS_AS_GPIOS)
+        if ((NRF_UICR->NFCPINS & UICR_NFCPINS_PROTECT_Msk) == (UICR_NFCPINS_PROTECT_NFC << UICR_NFCPINS_PROTECT_Pos)){
+            NRF_NVMC->CONFIG = NVMC_CONFIG_WEN_Wen << NVMC_CONFIG_WEN_Pos;
+            while (NRF_NVMC->READY == NVMC_READY_READY_Busy){}
+            NRF_UICR->NFCPINS &= ~UICR_NFCPINS_PROTECT_Msk;
+            while (NRF_NVMC->READY == NVMC_READY_READY_Busy){}
+            NRF_NVMC->CONFIG = NVMC_CONFIG_WEN_Ren << NVMC_CONFIG_WEN_Pos;
+            while (NRF_NVMC->READY == NVMC_READY_READY_Busy){}
+            NVIC_SystemReset();
+        }
+    #endif
+
+    /* Configure GPIO pads as pPin Reset pin if Pin Reset capabilities desired. If CONFIG_GPIO_AS_PINRESET is not
+      defined, pin reset will not be available. One GPIO (see Product Specification to see which one) will then be
+      reserved for PinReset and not available as normal GPIO. */
+    #if defined (CONFIG_GPIO_AS_PINRESET)
+        if (((NRF_UICR->PSELRESET[0] & UICR_PSELRESET_CONNECT_Msk) != (UICR_PSELRESET_CONNECT_Connected << UICR_PSELRESET_CONNECT_Pos)) ||
+            ((NRF_UICR->PSELRESET[1] & UICR_PSELRESET_CONNECT_Msk) != (UICR_PSELRESET_CONNECT_Connected << UICR_PSELRESET_CONNECT_Pos))){
+            NRF_NVMC->CONFIG = NVMC_CONFIG_WEN_Wen << NVMC_CONFIG_WEN_Pos;
+            while (NRF_NVMC->READY == NVMC_READY_READY_Busy){}
+            NRF_UICR->PSELRESET[0] = 21;
+            while (NRF_NVMC->READY == NVMC_READY_READY_Busy){}
+            NRF_UICR->PSELRESET[1] = 21;
+            while (NRF_NVMC->READY == NVMC_READY_READY_Busy){}
+            NRF_NVMC->CONFIG = NVMC_CONFIG_WEN_Ren << NVMC_CONFIG_WEN_Pos;
+            while (NRF_NVMC->READY == NVMC_READY_READY_Busy){}
+            NVIC_SystemReset();
+        }
+    #endif
+
+    SystemCoreClockUpdate();
+}
+
+
+/*lint --flb "Leave library region" */

+ 21 - 0
central_and_peripheral_secure_bootloader_debug/arm5_no_packs/RTE/_flash_s132_nrf52_7.0.1_softdevice/RTE_Components.h

@@ -0,0 +1,21 @@
+
+/*
+ * Auto generated Run-Time-Environment Configuration File
+ *      *** Do not modify ! ***
+ *
+ * Project: 'secure_bootloader_ble_s132_pca10040_debug' 
+ * Target:  'flash_s132_nrf52_7.0.1_softdevice' 
+ */
+
+#ifndef RTE_COMPONENTS_H
+#define RTE_COMPONENTS_H
+
+
+/*
+ * Define the Device Header File: 
+ */
+#define CMSIS_device_header "nrf.h"
+
+
+
+#endif /* RTE_COMPONENTS_H */

+ 21 - 0
central_and_peripheral_secure_bootloader_debug/arm5_no_packs/RTE/_nrf52832_xxaa_s132/RTE_Components.h

@@ -0,0 +1,21 @@
+
+/*
+ * Auto generated Run-Time-Environment Configuration File
+ *      *** Do not modify ! ***
+ *
+ * Project: 'secure_bootloader_ble_s132_pca10040_debug' 
+ * Target:  'nrf52832_xxaa_s132' 
+ */
+
+#ifndef RTE_COMPONENTS_H
+#define RTE_COMPONENTS_H
+
+
+/*
+ * Define the Device Header File: 
+ */
+#define CMSIS_device_header "nrf.h"
+
+
+
+#endif /* RTE_COMPONENTS_H */

+ 3082 - 0
central_and_peripheral_secure_bootloader_debug/arm5_no_packs/_build/nrf52832_xxaa_s132.hex

@@ -0,0 +1,3082 @@
+:020000040007F3
+:1010000000B20020D5130700DD130700DF1307002F
+:10101000E1130700E3130700E513070000000000D9
+:10102000000000000000000000000000C1130700E5
+:10103000E913070000000000EB130700ED130700A1
+:10104000EF130700EF130700EF130700EF1307007C
+:10105000EF130700EF130700EF130700EF1307006C
+:10106000EF130700EF130700EF130700EF1307005C
+:10107000EF130700EF130700EF130700EF1307004C
+:10108000F92B0700EF130700EF130700EF1307001A
+:10109000EF130700EF1307005D280700EF130700A9
+:1010A000EF130700EF130700EF130700EF1307001C
+:1010B000EF130700EF13070000000000000000001E
+:1010C000EF130700EF130700EF130700EF130700FC
+:1010D00059270700EF130700EF1307000000000077
+:1010E0000000000000000000000000000000000000
+:1010F00000000000000000000000000000000000F0
+:1011000000000000000000000000000000000000DF
+:1011100000000000000000000000000000000000CF
+:1011200000000000000000000000000000000000BF
+:1011300000000000000000000000000000000000AF
+:10114000000000000000000000000000000000009F
+:10115000000000000000000000000000000000008F
+:10116000000000000000000000000000000000007F
+:10117000000000000000000000000000000000006F
+:10118000000000000000000000000000000000005F
+:10119000000000000000000000000000000000004F
+:1011A000000000000000000000000000000000003F
+:1011B000000000000000000000000000000000002F
+:1011C000000000000000000000000000000000001F
+:1011D000000000000000000000000000000000000F
+:1011E00000000000000000000000000000000000FF
+:1011F00000000000000000000000000000000000EF
+:10120000DFF80CD000F04EF900480047254E0700EB
+:1012100000B2002030B450E8012F93B2C4892344B7
+:101220008489A34228BF1B1B0489A34202BFBFF3CA
+:101230002F8F002007E0C3EA020340E80134002CAE
+:10124000E9D14FF001000A6030BC704750E8012F2F
+:10125000C2EA024240E801210029F7D1704730B4C8
+:1012600050E8022F1FFAA2F3C488A34202BFBFF3C3
+:101270002F8F00200DE0C48923448489A34228BF16
+:101280001B1BC2EA034340E80234002CE8D14FF0B4
+:1012900001000A6030BC704750E8022FC2EA2242C7
+:1012A00040E802210029F7D17047034653E8022F96
+:1012B000D988B2EB324F4FF0000017BF92B241EA2B
+:1012C000014142EA014104E05A68B2EB324F08BFE3
+:1012D000012043E80212002AE8D1704730B40446E6
+:1012E00054E8000F0D4644E80053002BF8D1156078
+:1012F00030BC704730B4044654E8000F40EA0105A2
+:1013000044E80053002BF7D1156030BC704730B46F
+:10131000044654E8000F00EA010544E80053002B9E
+:10132000F7D1156030BC704730B4044654E8000F64
+:1013300080EA010544E80053002BF7D1156030BC6A
+:10134000704730B4044654E8000F00EB010544E850
+:101350000053002BF7D1156030BC704730B4044601
+:1013600054E8000FA0EB010544E80053002BF7D12F
+:10137000156030BC704770B404464FF0000054E86C
+:10138000006F0D68AE4207BF44E80023012044E827
+:1013900000630E60002B1CBF0020F0E770BC70479C
+:1013A00030B4044654E8000F88422CBF451A054665
+:1013B00044E80053002BF5D1156030BC70470000A5
+:1013C0001EF0040F0CBFEFF30880EFF3098007F065
+:1013D00005BC00000648804706480047FEE7FEE7D8
+:1013E000FEE7FEE7FEE7FEE7FEE7FEE7FEE7FEE7D5
+:1013F0006128070001120700202A04DB203A00FAC6
+:1014000002F1002070479140C2F1200320FA03F35B
+:1014100019439040704700000048704700BE070025
+:1014200040EA01039B0703D009E008C9121F08C066
+:10143000042AFAD203E011F8013B00F8013B521EE6
+:10144000F9D27047D2B201E000F8012B491EFBD25D
+:1014500070470022F6E710B513460A4604461946BF
+:10146000FFF7F0FF204610BD421C10F8011B0029B9
+:10147000FBD1801A704730B504460020034600E0D7
+:101480005B1C934203D2E05CCD5C401BF8D030BDC6
+:10149000034611F8012B00F8012B002AF9D1184658
+:1014A00070470000064C074D06E0E06840F001037D
+:1014B00094E8070098471034AC42F6D3FFF7A4FE37
+:1014C00000CE070020CE07002DE9F0438BB0804608
+:1014D000129D15F9046B009614461F4689462B464B
+:1014E00002A81146424600F0BCFC02A80146129A2E
+:1014F00000F0A7FC4046414602AA129B00F091FC76
+:101500002046214602AA129B00F08BFC2B4638464F
+:1015100039464A46009600F0A4FC02A83946129AC1
+:1015200000F08FFC02A8014642462B46009600F0D0
+:1015300098FC02A8014622462B46009600F091FC3A
+:101540002046214642462B46009600F08AFC48463B
+:1015500049462246129B00F064FC2046414602AAFE
+:101560002B46009600F07DFC384639462246129BF9
+:1015700000F057FC384639464A462B46009600F0A4
+:1015800070FC204602A9324600F035FE0BB0BDE8E3
+:10159000F083F0B589B01C4607460E4615466846EE
+:1015A00011461A4600F04DFC384639466A46234635
+:1015B00000F037FC684669462A46234600F031FCB5
+:1015C000304631466A46234600F02BFC09B0F0BD98
+:1015D0001AB1013A8B5C8354FAE770472DE9F04762
+:1015E0008846B3F902101F460825CB1D202493FB23
+:1015F000F5F51F31954291FBF4F44FFA84F928BFB9
+:1016000015460646494600F077FA2A4630464146D6
+:10161000FFF7DEFFB7F90230ED009D4220D9ED1A49
+:1016200006EB840100228E420AD251F8040D20FA02
+:1016300005F313430B60C5F1200300FA03F2F2E750
+:101640002437384631464A4600F062FA012807D06E
+:10165000304631463A464B46BDE8F04700F020BFE1
+:10166000BDE8F0872DE9F04793F9006092B0044699
+:101670008946104631461546984600F073FA002810
+:1016800040F0978002A84946424600F0DAFB434604
+:101690000AA8214602AA00F0C4FB02A8014642465D
+:1016A00000F0CFFB4346484649462A4600F0B9FBC6
+:1016B00008F1040728462946424600F0C2FB2046AE
+:1016C00021462A463B46009600F0FAFA284629466B
+:1016D0002A463B46009600F0F3FA284621462A4661
+:1016E0003B46009600F0BDFB204621462A46434675
+:1016F00000F097FB2846214622463B46009600F024
+:10170000DFFA20463B46009621462A4600F0D8FAEA
+:101710002368DB07204613D5334621463A4600F0BE
+:10172000BFF931468246204600F058FD06F180435D
+:10173000013B54F8230040EACA7044F8230002E059
+:10174000314600F04BFD28462146424600F079FB29
+:10175000284629460AAA3B46009600F082FB284606
+:1017600029460AAA3B46009600F07BFB0AA80146E0
+:101770002A463B46009600F074FB204621460AAA02
+:10178000434600F04EFB02A802463B462146009627
+:1017900000F067FB20462946324600F02CFD284623
+:1017A0004946324600F027FD484602A9324600F07D
+:1017B00022FD12B0BDE8F0870048704750CD070009
+:1017C0002DE9F04FEFB01E46789C059023780493E6
+:1017D000B4F9023092461F33202293FBF2F3DBB2BE
+:1017E00006939DF9187094F9012007F1FF3926AB93
+:1017F000002543F829506EAB03EB89034EA88B46B6
+:10180000314643F8805C43F8605CFFF7E1FE94F9F1
+:10181000012056A8B118FFF7DBFE9DF910604EA815
+:10182000314600F09FF98046002840F02F8156A8ED
+:10183000314600F097F90546002840F0258104F173
+:10184000240840464EA93A4600F062F9012840F0CB
+:101850001D81404656A93A4600F05AF901280890E1
+:1018600040F014813B461EA856A9424600F041FABA
+:101870000DF1380C60465946524623464CF8295023
+:10188000CDF80CC0FFF7AAFEDDF80CC0009760464B
+:1018900061461EAA4346CDF824C00DF5BC7900F080
+:1018A000AEFA4346009716A84EA91EAA00F0A7FA62
+:1018B00048463246059900F09EFCB300039309EBBD
+:1018C000030B039A059B58469918324600F093FC87
+:1018D00004F144031946324636A8079300F08BFC06
+:1018E00004EB860132463EA8443104F1040A00F0BC
+:1018F00082FC494600961EA836AA534600F0B1FA6B
+:101900004A465B4636A83EA90094FFF7DDFD1EA8B7
+:1019100001463346524600F0ECF91EAA48465946A5
+:101920002346FFF736FEDDF824C0079B0B93604685
+:10193000059B0C933946CDF814C00A95CDF8349028
+:1019400000F02AFC3946054616A800F025FCA842FE
+:10195000B8BF284685B2DDF814C06F1E3FB260469E
+:10196000394600F0CDFD394610F1000916A818BF20
+:101970004FF0010900F0C4FD002814BF022300232A
+:1019800043EA09090DF1280B32465BF8297026A8B5
+:10199000394600F030FC039B3246F9182EA800F0BF
+:1019A0002AFC31461EA800F0A7F8023D089B1E93B2
+:1019B000AEB237B2002F44DB23461EAAD4F8A4509F
+:1019C00026A82EA9A84739460EA800F099FD394649
+:1019D000051C16A818BF012500F092FD002814BFB1
+:1019E000022300231D430AAB53F8257037B39DF93A
+:1019F000105036A839462A4600F0FDFB039B3EA84E
+:101A0000F9182A4600F0F7FB36A83EA91EAA23467D
+:101A1000FFF7BFFD46A826A936AA5346009500F059
+:101A200020FA36A83EA926AA2EAB0094FFF74CFD5B
+:101A30001EA8014646AA234600F0F3F9013EB6B2BD
+:101A4000B7E79DF910501EA8014652462B4600F0FC
+:101A500050F9234626A82EA91EAAFFF79AFD9DF944
+:101A60001840404626A9224600F052F8012805D029
+:101A700026A801464246234600F012FD26A84EA99C
+:101A80002A4600F05AF802E0404600E028466FB0CF
+:101A9000BDE8F08F00000000000000000000000022
+:101AA000C3F10803DB0070B501330446002003A531
+:101AB0005B1920C940CAAD1920C4184720C940CAC3
+:101AC000754120C420C940CA754120C420C940CAFC
+:101AD000754120C420C940CA754120C420C940CAEC
+:101AE000754120C420C940CA754120C420C940CADC
+:101AF000754120C4404170BD10B5002253B28B42E5
+:101B000005DA1BB2002440F823400132F6E710BD8D
+:101B100010B5013AD2B253B2002B09DB1BB250F818
+:101B2000234051F823309C4204D8F2D2FF2002E037
+:101B3000002000E0012040B210BD013A30B5D2B221
+:101B4000002453B2002B09DB1BB2013A51F8235099
+:101B500050F823306B401C43D2B2F2E7B4FA84F061
+:101B6000400930BD10B500231A465CB28C4204DA3D
+:101B700050F8244001332243F7E7B2FA82F04009DB
+:101B800010BD00002DE9F043A3B09846019112ABBF
+:101B90004146074610469146009300F0FDFAC0EB1F
+:101BA000881086B2454C33B21C40002CBEBF04F1F5
+:101BB000FF3464F01F040134202593FBF5F5EDB2EA
+:101BC0006DB2A4B202A8294624B2FFF795FF28B24D
+:101BD00002AB002C03EB800010DD002213464345CE
+:101BE00010D259F8235005FA04F10A4340F8232093
+:101BF000C4F1200225FA02F20133F0E749464246D9
+:101C000000F0F9FA0FFA88F502AB4FEA4509012412
+:101C100003EB8505330444D40022114653B24B45EF
+:101C200022DA0DF1880E0EEB840E0DF1880C18B23D
+:101C30005EF888EC0CEB83035EF820E053F8803C00
+:101C4000C3EB0E035B1A734502D08CBF0121002148
+:101C5000C4F1010E0DF1880C0CEB8E0E01325EF812
+:101C600088EC4EF82030D9E7621A544202A8414667
+:101C7000544100F0B3FA22AA08F1FF3302EB8303C8
+:101C800002EB8802284652F8801C53F8802C013E53
+:101C900042EAC172414643F8802CB6B200F09EFA87
+:101CA000B8E722AB03EB8404384654F8881C42465C
+:101CB00000F0A1FA23B0BDE8F08300BF1F00008050
+:101CC00070B59DF910401D4623460646FFF7E8FE15
+:101CD00030B9284631462246FFF71AFF012807D0BF
+:101CE000304631462A462346BDE8704000F0D8BB56
+:101CF00070BDF0B50646A1B00F4608461946154618
+:101D00001C46FFF72FFF20B130462146FFF7F4FEB7
+:101D100073E068463946224600F06DFA08A8294665
+:101D2000224600F068FA10A82146FFF7E5FE0123DD
+:101D300018A821461093FFF7DFFE684608A922463F
+:101D4000FFF7E6FE002853D0009BDA0704D468466C
+:101D5000214600F043FA26E0089BDB0704D408A8DC
+:101D6000214600F03BFA3DE000281EDD08AA23468C
+:101D70006946684600F094FB6846214600F02EFA5A
+:101D800010A818A92246FFF7C3FE002805DA10A8FC
+:101D900001462A462346FFF783FE10A8014618AAEB
+:101DA000234600F07DFB10A81DE008A86A462346E4
+:101DB000014600F075FB08A8214600F00FFA18A8AC
+:101DC00010A92246FFF7A4FE002805DA18A801464C
+:101DD0002A462346FFF764FE18A8014610AA2346A8
+:101DE00000F05EFB18A82946224600F06BFCA4E731
+:101DF000304610A9224600F0FEF921B0F0BD70B5C2
+:101E000090B006469DF950401D466846234600F0B6
+:101E10003AF8304669462A462346FFF7B3FE10B02B
+:101E200070BD30B51C4691B0054693F90030684648
+:101E300000F029F8D4F8AC3028466946984711B02C
+:101E400030BD30B5144691B0054692F90020684681
+:101E500000F0DEF9D4F8AC3028466946984711B056
+:101E600030BD70B59DF910401D462346064600F072
+:101E700017FB38B1304631462A462346BDE870404C
+:101E8000FFF70EBE70BD2DE9F04F08B4F8CA04B4D8
+:101E900051F8042BA3FB028940F8048B4FF0000A91
+:101EA000E4FB629A4FF0000BE5FB62AB4FF0000CD5
+:101EB000E6FB62BC4FF0000EE7FB62CE51F8042B4C
+:101EC0004FF00008E3FB628940F8048BE4FB629A60
+:101ED000E5FB62ABE6FB62BCE7FB62CE51F8042B8C
+:101EE0004FF00008E3FB628940F8048BE4FB629A40
+:101EF000E5FB62ABE6FB62BCE7FB62CE51F8042B6C
+:101F00004FF00008E3FB628940F8048BE4FB629A1F
+:101F1000E5FB62ABE6FB62BCE7FB62CE51F8042B4B
+:101F20004FF00008E3FB628940F8048BE4FB629AFF
+:101F3000E5FB62ABE6FB62BCE7FB62CE40F8049BCC
+:101F400040F804AB40F804BB40F804CB40F804EB85
+:101F50000CBC052B00F01E810C68A0F11400A1F14F
+:101F60001401A2F1140252F804EB4FF0000550F8EE
+:101F7000046BE4FB6E5652F804EB50F8047BE4FB70
+:101F80006E6752F804EB50F8048BE4FB6E7852F85D
+:101F900004EB50F8049BE4FB6E8952F804EB50F814
+:101FA00004ABE4FB6E9AA0F1140052F8044B51F814
+:101FB00004EB4FF0000CE4FB6EC540F804CB51F885
+:101FC00004EBE4FB6E5640F8045B51F804EBE4FBD1
+:101FD0006E6740F8046B51F804EBE4FB6E7840F850
+:101FE000047B51F804EBE4FB6E8940F8048B51F854
+:101FF00004EBE4FB6E9AA0E80006062B00F0CA8012
+:102000000C68A0F11800A1F11801A2F1180252F811
+:1020100004EB4FF0000550F8046BE4FB6E5652F8E9
+:1020200004EB50F8047BE4FB6E6752F804EB50F8C5
+:10203000048BE4FB6E7852F804EB50F8049BE4FB4D
+:102040006E8952F804EB50F804ABE4FB6E9A52F838
+:1020500004EB50F804BBE4FB6EABA0F1180052F89F
+:10206000044B51F804EB4FF0000CE4FB6EC540F854
+:1020700004CB51F804EBE4FB6E5640F8045B51F8D6
+:1020800004EBE4FB6E6740F8046B51F804EBE4FBEF
+:102090006E7840F8047B51F804EBE4FB6E8940F85D
+:1020A000048B51F804EBE4FB6E9A40F8049B51F862
+:1020B00004EBE4FB6EABA0E8000C072B6AD008B47D
+:1020C0000C68A0F11C00A1F11C01A2F11C0252F845
+:1020D00004EB4FF0000550F8046BE4FB6E5652F829
+:1020E00004EB50F8047BE4FB6E6752F804EB50F805
+:1020F000048BE4FB6E7852F804EB50F8049BE4FB8D
+:102100006E8952F804EB50F804ABE4FB6E9A52F877
+:1021100004EB50F804BBE4FB6EAB52F804EB50F850
+:1021200004CBE4FB6EBCA0F11C0052F8044B51F848
+:1021300004EB4FF00003E4FB6E3540F8043B51F82C
+:1021400004EBE4FB6E5640F8045B51F804EBE4FB4F
+:102150006E6740F8046B51F804EBE4FB6E7840F8CE
+:10216000047B51F804EBE4FB6E8940F8048B51F8D2
+:1021700004EBE4FB6E9A40F8049B51F804EBE4FB9B
+:102180006EAB40F804AB51F804EBE4FB6EBCA0E886
+:10219000001808BCBDE8F08F0139C9B24BB2002B62
+:1021A0000BDA013111F0FF0315D059B201F1804370
+:1021B000013B50F82320002304E050F82330002B8B
+:1021C000EAD0EEE712B152080133FBE7481E03EBF9
+:1021D000401080B200E0184600B2704700EB810169
+:1021E0000023884206D251F8042D43EA52030B60C3
+:1021F000D307F6E7704730B5002463B2934206DA9E
+:102200001BB2013451F8235040F82350F5E730BD9C
+:102210002DE9F04FB1E8005E06B4AAFB09124FF0B9
+:102220000003EBFB69234FF00004ECFB69344FF033
+:102230000005EEFB69454FF00006EBFB6A63ECFB23
+:102240006A344918524176415B41A9FB09784FF045
+:10225000000949F1000918EB0108A0E88001AAFB78
+:102260000A78574158EB0608A0E88001EEFB6A4562
+:102270004FF0000A4AF1000A4FF00001ECFB6B142A
+:10228000EEFB6B454FF00002EEFB6C255FEA59094F
+:102290004941644152416D4149F10009EBFB6B3A00
+:1022A0001AEB010AA0E80804ACFB0C6A66415AEB81
+:1022B000020AA0E84004AEFB0E6A6E415AEB090A1E
+:1022C000A0E8400406BC052A00F0E680A0F1140056
+:1022D000A1F11401B1E8E043A5FB0E344FF0000575
+:1022E000E6FB6E454FF00006E7FB6E564FF0000729
+:1022F000E8FB6E674FF00008E9FB6E784FF00009CD
+:10230000DB1864416D4176417F4158EB080859F173
+:10231000000950F804CB13EB0C0350F804CB54EB3A
+:102320000C0450F804CB55EB0C0550F804CB56EBDD
+:102330000C0650F804CB57EB0C0758F1000859F184
+:102340000009A0F11400EEFB0E89A0E8F803062AAC
+:1023500000F0A280A0F11800A1F11801B1E8E04757
+:10236000A5FB0E344FF00005E6FB6E454FF000066E
+:10237000E7FB6E564FF00007E8FB6E674FF0000872
+:10238000E9FB6E784FF00009EAFB6E894FF0000A16
+:10239000DB1864416D4176417F4158EB080859EBE9
+:1023A00009095AF1000A50F804CB13EB0C0350F85A
+:1023B00004CB54EB0C0450F804CB55EB0C0550F84F
+:1023C00004CB56EB0C0650F804CB57EB0C0750F837
+:1023D00004CB58EB0C0859F100095AF1000AA0F19E
+:1023E0001800EEFB0E9AA0E8F807072A54D0A0F1D7
+:1023F0001C00A1F11C01B1E8E04FA5FB0E344FF029
+:102400000005E6FB6E454FF00006E7FB6E564FF009
+:102410000007E8FB6E674FF00008E9FB6E784FF0AD
+:102420000009EAFB6E894FF0000AEBFB6E9A4FF051
+:10243000000BDB1864416D4176417F4158EB080881
+:1024400059EB09095AEB0A0A5BF1000B50F804CB6F
+:1024500013EB0C0350F804CB54EB0C0450F804CBF2
+:1024600055EB0C0550F804CB56EB0C0650F804CB9A
+:1024700057EB0C0750F804CB58EB0C0850F804CB82
+:1024800059EB0C095AF1000A5BF1000BA0F11C009A
+:10249000EEFB0EABA0E8F80FBDE8F08F00000000E7
+:1024A000C3F10803DB0070B50133002403A500BFAE
+:1024B0005B1920C940CAAD1B20C0184720C940CABB
+:1024C000B54120C020C940CAB54120C020C940CA7A
+:1024D000B54120C020C940CAB54120C020C940CA6A
+:1024E000B54120C020C940CAB54120C020C940CA5A
+:1024F000B54120C06441B4FA84F0400970BD00BF0A
+:102500004A11012301F01F0150F822008B401840AE
+:1025100070470000F0B50C4689B008220646FFF768
+:102520006AFEE36A0393236B0493636B0593A36BC7
+:102530000693E36B0793002769466A4608236846BB
+:10254000029701970097FFF7ABFA314605466A46B6
+:1025500008233046FFF7A4FA236B0393636B0493BD
+:10256000A36B0593E36B0693054469466A4608230B
+:1025700068460797FFF794FA314605446A460823F0
+:102580003046FFF78DFA236A0093636A0193A36ACA
+:102590000293A36B0693E36B0793054431466A46A7
+:1025A00008233046059704970397FFF779FA636A83
+:1025B0000093A36A0193E36AA26B0293636B039394
+:1025C00004920693E26B236A059205440793314611
+:1025D0006A4608233046FFF763FAE36A0093236BE9
+:1025E0000193636B0293236A0693A36A07930544DE
+:1025F00031466A4608233046059704970397FFF74C
+:102600004FFF236B0093636B0193A36B0293E36B08
+:102610000393636A0693E36A07932D1A31466A4669
+:102620000823304605970497FFF73AFF636B009342
+:10263000A36B0193E36B0293236A0393636A04938E
+:10264000A36A0593236B07932D1A31466A46082324
+:1026500030460697FFF724FFA36B0093E36B0193CB
+:10266000636A0393A36A0493E36A0593636B079316
+:102670002D1A314630466A46082302970697FFF71F
+:102680000FFF2D1A16D5304631460D4A0823FFF7A5
+:1026900007FA4519F7D410E0094831460822FFF738
+:1026A00037FA012809D030463146054A0823FFF79A
+:1026B000F7FE2D1A002DEFD0F5E709B0F0BD00BFF1
+:1026C00054CD0700F8B5036813F0010506460F4620
+:1026D000144605D001463A462346FFF7E1F9054680
+:1026E00030462146FFF77AFD45B104F18042013AB8
+:1026F00056F8223043F0004346F82230F8BD2DE969
+:10270000F04115468AB00446884602A800212022DE
+:10271000FEF7A1FE2E780323204641462A462F1DB0
+:1027200076B20293FFF78DFB2046214602AA3B4674
+:102730000096FFF796FB2046214642462B46FFF7C0
+:1027400070FB00962046214605F184023B46FFF7C8
+:10275000B7FA0AB0BDE8F0812DE9F0411E4E4FF402
+:102760008271D6F8040130B11C48C268521CC260A4
+:10277000304605F057FF00254FF4A07707EB8501A1
+:102780008AB23046B25812B389B205F04BFF1348F3
+:10279000103000EB0514204608F074FD1048114974
+:1027A0002246401AC008042101EB00400EA105F0AA
+:1027B000F5FC616819B1204608F0BAFC07E0A16891
+:1027C00011B1204608F0B4FC206800B180476D1CB0
+:1027D000022DD3D3BDE8F0810040024070590020A3
+:1027E00088CE070038CE070074696D65725F666930
+:1027F00072652028307825782900000000F00CBA96
+:1028000070B50E46144900EB400001EBC0051446BC
+:10281000E86A183520B101280FD0022805D113E04D
+:10282000284600F02FFAA04201D2002411E02246EF
+:102830003146284600F060FA0BE0284600F022FA04
+:10284000A042F4D20446F2E73146284600F025FAC9
+:102850000446204670BD00007491002006F0BCB80C
+:10286000F0B5D34AD3494FF080541368D4F83001FF
+:102870000978D4F83421451CC1F3031107D08446EC
+:10288000164601270025BCF1060F04D013E003F023
+:10289000FF0C0E46F5E7032E05D0042E03D0052EBF
+:1028A00001D0062E07D1B4F82463DFF80CC3C6F3B9
+:1028B0000426CCF80060DEB2062E06D1032904D12E
+:1028C000DFF8FCC2BD4ECCF87460461C06D08446CE
+:1028D0004FEA0206BCF1060F04D013E003F0FF0C30
+:1028E0000E46F7E7032E05D0042E03D0052E01D0A7
+:1028F000062E07D1D4F84462DFF8C8C2C6F34236C8
+:10290000CCF80060DEB2062E08D1032906D1AE4E07
+:10291000D6F800C02CF0807CC6F800C0461C05D05C
+:1029200084461646BCF1060F04D014E003F0FF0CF9
+:102930000E46F7E7032E05D0042E03D0052E01D056
+:10294000062E08D14FF08046C6F80C51C6F810513B
+:102950009C4E361F3560DEB2062E08D1032906D103
+:10296000DFF860C203260CF1640CCCF80060DEB224
+:10297000062E11D103290FD1DFF850C20526CCF85D
+:102980000060924E78363760904E083635600CF114
+:10299000040C3F26CCF80060461C05D08446164641
+:1029A000BCF1060F04D087E003F0FF0C0E46F7E7FA
+:1029B000032E7CD0042E7FD0052E01D0062E7BD195
+:1029C000834E3668DFF80CC2CCF80060804E361DAE
+:1029D00036680CF1040CCCF800607D4E0836366881
+:1029E0000CF1040CCCF80060794E0C3636680CF112
+:1029F000040CCCF80060764E103636680CF1040CEE
+:102A0000CCF80060724E143636680CF1040CCCF829
+:102A100000606F4E18363668DFF8B8C10CF1200C34
+:102A2000CCF800606A4E1C3636680CF1040CCCF809
+:102A30000060674E203636680CF1040CCCF800605C
+:102A4000634E243636680CF1040CCCF80060604EFE
+:102A5000283636680CF1040CCCF800605C4E2C363D
+:102A600036680CF1040CCCF80060594E30363668EC
+:102A7000DFF860C10CF1400CCCF80060544E3436E5
+:102A800036680CF1040CCCF80060514E38363668CC
+:102A90000CF1040CCCF800604D4E3C3636680CF15D
+:102AA000040CCCF800604A4E4036366800E003E083
+:102AB0000CF1040CCCF80060461C05D08446164688
+:102AC000BCF1060F04D011E003F0FF0C0E46F7E74F
+:102AD000032E05D0042E03D0052E01D0062E05D1DD
+:102AE000D4F858423C4E04F04F043460441C04D0E7
+:102AF00003461146062B02D010E0DBB2FAE70329A9
+:102B000005D0042903D0052901D0062906D133496F
+:102B10000B68DB0702D06FF001030B6006280CD1B5
+:102B2000032A0AD0042A08D0052A06D0062A04D18E
+:102B30002B48016841F480610160234874380168C2
+:102B400041F470010160BFF34F8FBFF36F8F4FF0FF
+:102B50001021D1F80002002803DBD1F8040200287C
+:102B600022DA204A176020480368002BFCD0152386
+:102B7000C1F800320468002CFCD0C1F804320168AE
+:102B80000029FCD0156001680029FCD0BFF34F8FED
+:102B90000D48F0380168154A01F4E0611143016005
+:102BA000BFF34F8F00BFFDE7124911480860F0BD29
+:102BB000E00F00F0E80F00F0403501400DF0ADBA35
+:102BC00000C007403C050040FCED00E0105600400E
+:102BD0000404001020C50040E40E00400004004042
+:102BE0003C17004004E5014000E401400400FA0500
+:102BF0000090D0036C5A0020064808B500210160FF
+:102C00000068009005F07EFB05F054F90028FBD128
+:102C100008BD00000001014010B5124C02202061E7
+:102C2000606111A0A06104F17800E0614FF4805070
+:102C300020620020A06260620BA1A164E0620D49E5
+:102C4000E1641021A065C4E91410E0650AA1E01D4B
+:102C5000FEF71EFC09A12046FEF71AFC2020A071F9
+:102C600010BD0000749100205465726D696E616C36
+:102C700000000000ECA10020525454005345474787
+:102C8000455200000269C1688A4203D88068401A30
+:102C9000104400E0501A401E70472DE9F047C46808
+:102CA0001746894606464FF000083069A04201D910
+:102CB000051B02E0B168201A0D1A6D1E00D1012516
+:102CC000B068001BA84200D80546BD4200D33D466F
+:102CD00070682A4620444946FEF7A2FBB0687F1B75
+:102CE0002C44A844A944A04200D10024F460002F41
+:102CF000DBD14046BDE8F0872DE9F0410446884627
+:102D0000D4E90207C51BE168606816460844B5426D
+:102D100006D94146FEF784FBB819E060BDE8F081B2
+:102D20002A464146FEF77CFB761B08EB050132463E
+:102D30006068FEF775FBE660F0E702E008C8121F66
+:102D400008C1002AFAD170477047002001E001C194
+:102D5000121F002AFBD170470121202803DA81408D
+:102D60000548014003E0402802DA2038814009B1DB
+:102D70000120704700207047FC06FFBD800701D08E
+:102D8000002070470120704740680068401E0842DC
+:102D900001D10120704700207047C3688B4206D8DC
+:102DA00011440069491E814201D80120704700206A
+:102DB0007047000030B585B00D46164C1621ADF8B1
+:102DC00000101ECC0DF1040C8CE81E00124C0221E8
+:102DD000012221706270A0700320E07021715920DF
+:102DE0006071FE20A071694604F109007DDF0028B2
+:102DF0000ED1BDF800002A46411CE1710921217263
+:102E0000BDF808100844ADF8080001A9034872DFB6
+:102E100005B030BDC0B80700A45E0020A85900204E
+:102E200010B586B0062418220D496846FEF7F8FA58
+:102E30000C480D49401AC008042101EB00400BA1C9
+:102E400005F0A8F969462046FFF7B4FF002805D130
+:102E50000A4C207874DF0121207873DF06B010BDA2
+:102E6000D0B8070040CE070038CE07004164766531
+:102E700072746973696E672E2E2E0000A8590020A7
+:102E80002DE9F05FDFF89CB05C46DBF84890DBF89A
+:102E9000246002F08FFF216B4718751A22482349DE
+:102EA000401AC108042000EB0140804620A105F033
+:102EB00071F9216B4944B94200D1002508232A4603
+:102EC000384601F03DFD0700184817494FF0010A48
+:102ED000A1EB00004FEAD0010AEB014404D02046E8
+:102EE0001AA105F057F919E002F064FF00223146FB
+:102EF00001F070F9DBF828200546D946AA4208D12E
+:102F0000404619A105F046F9C9E9075AC9F8186001
+:102F100004E020462B461A4905F047F93846BDE83B
+:102F2000F09F00003C76002088CE070038CE0700D6
+:102F3000456E746572206E72665F6466755F61705F
+:102F4000705F636F6E74696E756500004661696CD1
+:102F5000656420746F20636F7079206669726D7785
+:102F60006172652E0000000053657474696E6720FD
+:102F70006170702061732076616C696400000000EC
+:102F8000F0BE070008B51346024600930648074BFB
+:102F9000C01AC008012303EB00400B4604A105F052
+:102FA0000CF906F0F5FA000088CE070038CE0700CD
+:102FB00052656365697665642061206661756C742D
+:102FC000212069643A203078253038782C207063CD
+:102FD0003A203078253038782C20696E666F3A2098
+:102FE0003078253038780000024606480649401AF5
+:102FF000C008012101EB004004A105F0CFF806F064
+:10300000C7FA000088CE070038CE07005265636516
+:103010006976656420616E206572726F723A203045
+:1030200078253038782100002DE9F04107461E4E02
+:103030001E481F49326A401AC508012A04D00320DD
+:1030400000EB05401BA12BE04FF44050184B174CF0
+:103050004168E31A234A0220DB0800EB0344914253
+:1030600006D1C1023B462048726B00F05DFF90B173
+:1030700002F0A0FE01461C483B464130B26900F018
+:1030800053FF58B1042000EB054018A105F082F869
+:103090000120BDE8F081204618A101E0204626A1CC
+:1030A00005F078F80020F4E73C76002088CE070091
+:1030B00038CE0700426F6F742076616C696461746A
+:1030C000696F6E206661696C65642E204E6F207694
+:1030D000616C69642061707020746F20626F6F741E
+:1030E0002E000000DBE5B1519C780020417070207B
+:1030F00069732076616C696400000000426F6F7430
+:103100002076616C69646174696F6E206661696CB8
+:1031100065642E20536F6674446576696365206923
+:10312000732070726573656E742062757420696EA9
+:1031300076616C69642E0000426F6F742076616C5A
+:1031400069646174696F6E206661696C65642E20C4
+:1031500041707020697320696E76616C69642E001D
+:103160002DE9F84F254C8146924660880E468142F3
+:1031700041D800274FF6FF788DF80070684600F0C0
+:1031800075F822786078A188884201DA401C00E056
+:103190000020C0B2904204D19DF8000000F0B2F8C7
+:1031A00027E065786078884201DA401C00E0002062
+:1031B00060709DF8000000F0A5F8454519D0A068A2
+:1031C000B9F1000F40F835A00DD066B16188E06814
+:1031D000324605FB01004946FEF722F9A06800EBE4
+:1031E000C500868002E000EBC50087800020BDE8B6
+:1031F000F88F0420FBE70920F9E70000EC590020D4
+:1032000010B50E4C03E0401C00E000202070207838
+:103210006178814210D022786188E068A36802FB5F
+:10322000010003EBC20153F83220898890472078CF
+:10323000A1888842E9DAE6E710BD0000EC590020D9
+:1032400030B5CB0008339DB293074FF0000401D096
+:10325000072030BD044B9A602A44DA605C701C7011
+:1032600058809980002030BDEC59002070B504468C
+:1032700007F050F8012803D010A1432000F086F891
+:10328000EFF3108172B61D4A9368012083B99060F4
+:103290004FF0E020D0F88051194B1D401560C0F868
+:1032A0008031D0F8843153604217C0F88421002067
+:1032B0002070002900D162B670BD00002E2E5C2E59
+:1032C0002E5C2E2E5C2E2E5C2E2E5C636F6D706F2E
+:1032D0006E656E74735C6C69627261726965735C51
+:1032E0007574696C5C6170705F7574696C5F706C2B
+:1032F0006174666F726D2E6300000000B07D002067
+:10330000FC06FFBD10B5044607F004F8012803D001
+:103310000DA1512000F03AF81B498868002811D00F
+:10332000002C0FD1EFF3108072B60B684FF0E02243
+:10333000C2F800314B68C2F8043100228A600028CC
+:1033400000D162B610BD00002E2E5C2E2E5C2E2EFB
+:103350005C2E2E5C2E2E5C636F6D706F6E656E74CE
+:10336000735C6C69627261726965735C7574696CB7
+:103370005C6170705F7574696C5F706C6174666FAE
+:10338000726D2E6300000000B07D00201CB56A46FF
+:10339000CDE90001002144F20200FFF7F3FD1CBD5E
+:1033A0002DE9F843274F274857F8246F846CB968F4
+:1033B000AC2901D024B106E0406B0444361A02E087
+:1033C00002F00CFD0446204820492346401A4FEAEB
+:1033D000D008042101EB084005461D4A1DA10096B6
+:1033E00004F0EBFEB868AC2806D13246A4F5804163
+:1033F0001748FEF740F800B3324621461448FEF75E
+:103400003AF8D0B128463346224620A104F0CDFE3A
+:1034100004F050FD0028FBD102F0A0FA314620460E
+:1034200003F0C4F8040005D0012101EB084023A1FA
+:1034300004F0B0FE2046BDE8F8830024284626A10B
+:10344000F6E700003C76002088CE070038CE070063
+:1034500000100700566572696679696E6720424CF4
+:103460003A20416464723A203078253038782C2034
+:103470005372633A203078253038782C204C656EB2
+:103480003A2030782530387800000000436F70799A
+:10349000696E6720626F6F746C6F616465723A2049
+:1034A0005372633A203078253038782C204C656E82
+:1034B0003A20307825303878000000005265717568
+:1034C00065737420746F20636F707920424C20669E
+:1034D00061696C65640000004E6F20626F6F746CF0
+:1034E0006F6164657220636F7079206E65656465D5
+:1034F000642C20626F6F746C6F61646572207570EC
+:103500006461746520636F6D706C6574652E000076
+:1035100030B595B0040004D12E4940F24F40FFF77A
+:1035200035FF2D494FF6FF702246488001208DF867
+:1035300012004FF65960ADF8100004A90120A8DF71
+:10354000002844D1254B0FCB8DE80F00A11C684605
+:1035500062DF00283BD121491C2260390BA8FDF70E
+:103560005FFF1F4D142205F1C401A8681290A078D6
+:103570008DF84A002868139006A8FDF751FF12A89D
+:10358000069013A807902088231D06AA0BA9AADF7E
+:1035900000281CD11C2205F1D8010BA8FDF740FF23
+:1035A000E8681290A0788DF84A0068681390142299
+:1035B00005F1F40106A8FDF733FF12A8069013A841
+:1035C0000790208804F10C0306AA0BA9AADF15B006
+:1035D00030BD0000DCBF0700A859002098B90700E3
+:1035E00090B80700F0B585B00D46040004D1374906
+:1035F00040F28710FFF7CAFE25B934494FF4C47072
+:10360000FFF7C4FE14216846FDF723FF207803234B
+:1036100008280BD12E48C188491E89B2C1808288F2
+:10362000002A4BD0002949D1C280237021786078CC
+:1036300060228DF800208DF801108DF8020063786B
+:103640000325012B16D0234823492278401AC008AD
+:10365000022101EB004021A104F0A7FD60780B28B6
+:1036600028D101F0ADF88DF80300002001F0B0F88A
+:1036700004251FE0207809281CD2DFE800F01B1B7E
+:103680001B211B1B051B2100D4E902706D46E91CA0
+:10369000666807F01DFE044629193046C91C07F06C
+:1036A00017FE044429193846C91C07F011FE2044AE
+:1036B000C01CC5B22946684606F0F4FE05B0F0BD50
+:1036C000D4E90112684606F0DCFEF1E7DCBF070032
+:1036D000A859002040CE070038CE070044465520A8
+:1036E00072657175657374202564206661696C6507
+:1036F000642077697468206572726F723A2030783E
+:10370000257800002DE9F0411D4C0026217AC907DB
+:1037100033D01C49884230D01B481C49401AC1088C
+:10372000042000EB0140054619A104F033FD608838
+:10373000A0F57F41FF3916D028461DA104F02AFDCF
+:10374000A068132140F00400A060608876DF0028A4
+:1037500014D11B4CC8264FF47A47611C3846884761
+:10376000761EFAD101E0207874DF05F0D1F806006A
+:1037700003D1284613A104F00DFD3046BDE8F081C9
+:10378000A859002020CE070040CE070038CE070001
+:103790005368757474696E6720646F776E20424C4D
+:1037A00045207472616E73706F72742E0000000099
+:1037B000446973636F6E6E656374696E672E000093
+:1037C000A0B80700424C45207472616E73706F722E
+:1037D00074207368757420646F776E2E000000008B
+:1037E00070B5204C06460020217AC90738D11E4802
+:1037F0001E49401AC108042000EB014005461CA1E7
+:1038000004F0C8FC2248E66001F012FD00F01CFB49
+:10381000002825D103F0A0F838B11E4803F090F835
+:10382000A06840F00200A06003E028461AA104F05E
+:10383000B1FC01F019F8002812D116481C30FFF72E
+:1038400067FE00280CD1FFF7EBFA002808D1A0682A
+:1038500018A140F00100A060284604F09BFC002065
+:1038600070BD0000A859002040CE070038CE0700E8
+:10387000496E697469616C697A696E6720424C456A
+:1038800020444655207472616E73706F727400002C
+:10389000A8CE0700C45E00204E6F2061647665727A
+:1038A000746973696E67206E616D6520666F756EF1
+:1038B00064000000424C4520444655207472616EFD
+:1038C00073706F727420696E697469616C697A656E
+:1038D000642E00002DE9FE439F49A04B0122591A96
+:1038E000C9080746051D02EB0148008804229C4ECA
+:1038F0004FF0000902EB014421286ED037DC132879
+:103900006CD01EDC01286AD0102854D0112868D051
+:10391000122879D1204693A104F03CFCEA88204685
+:103920009AA104F03BFCAA8820469EA104F036FC34
+:103930002A892046A1A104F031FC6A892046A4A16D
+:10394000ECE0142875D01A2874D01F285CD12046CA
+:10395000A5A104F01FFC291D708875DF040053D059
+:1039600040462246ACA104F019FC20461FE0512835
+:103970007AD00EDC222878D0232868D024287BD067
+:10398000502877D103B03946BDE8F043B04805F080
+:103990008FBE5228D8D0552837D056286AD1B8794A
+:1039A000002867D11321708876DF002862D0BDE837
+:1039B000FE43FFF719BB2046A6A104F0EBFB2888C5
+:1039C0007080F16809B101208847A549708875DFCA
+:1039D00002004FD04046A3A1A0E07FE055E087E081
+:1039E000FFE74FF6FF707080307A400704D4FFF78E
+:1039F00017FA08B1FFF7F8FAF16800293AD003B0D6
+:103A00000220BDE8F043084734E0FA88F72A14D2D0
+:103A10009007B0F1404F0ED0D01F81B2481EC3179F
+:103A200000EB937323F00303C01A081A801D85B2BC
+:103A300004E078E081E0154600E0F72520462B46BB
+:103A4000944904F0B2FB29467088B5DFADE7204603
+:103A500091A104F09FFBCDF80090CDF80490B888B8
+:103A60000022694690DF2DE046E02EE004E000BF32
+:103A7000FFF7BAFABDE8FE836B89EA8803B02046F7
+:103A8000BDE8F04391A104F090BB20469FA104F053
+:103A900081FB734801AA163842F60521806A01901D
+:103AA000CDF808D07088ADDF08B1FFF79DFA204649
+:103AB000BDF800209FA104F071FB00231A46852168
+:103AC00070887FDF0028D3D1D4E7287900906B7904
+:103AD000AA792046A0A104F070FBCBE72046ADA157
+:103AE00004F058FBCDF80090288869468FDFE9E79D
+:103AF0000021708866DF58E7B8790028BAD03946C7
+:103B0000534805F091FD0028B4D007F10801504852
+:103B100005F0ACF90200ADD04046A9A103B0BDE864
+:103B2000F04304F03BBB2046B2A104F033FB00217C
+:103B30000A4628880B4686DF37E7002328881A467E
+:103B40001946B1DF08B1FFF74FFA03B02046BDE8D0
+:103B5000F043B2A104F01EBB38CE070040CE0700F0
+:103B6000A8590020526563656976656420424C451A
+:103B70005F4741505F4556545F434F4E4E5F504143
+:103B800052414D5F55504441544500006D61785F8E
+:103B9000636F6E6E5F696E74657276616C3A202534
+:103BA000640000006D696E5F636F6E6E5F696E74B6
+:103BB000657276616C3A202564000000736C617652
+:103BC000655F6C6174656E63793A2025640000005E
+:103BD000636F6E6E5F7375705F74696D656F75741A
+:103BE0003A202564000000005265636569766564CB
+:103BF00020424C455F4741505F4556545F434F4E0E
+:103C00004E5F504152414D5F5550444154455F52C3
+:103C100045515545535400004661696C75726520E5
+:103C2000746F2075706461746520636F6E6E656378
+:103C300074696F6E20706172616D65746572207257
+:103C40006571756573743A2030782578000000003E
+:103C5000E05E0020436F6E6E656374656400000073
+:103C6000A6B807004661696C75726520746F20758F
+:103C7000706461746520636F6E6E656374696F6EE6
+:103C800020706172616D65746572733A20307825B9
+:103C90007800000094BF070052656365697665642B
+:103CA00020424C455F4741505F4556545F44415464
+:103CB000415F4C454E4754485F5550444154455F21
+:103CC000524551554553542E00000000526563651E
+:103CD0006976656420424C455F4741505F455654C4
+:103CE0005F444154415F4C454E4754485F555044F2
+:103CF000415445202825752C206D61785F72785FCE
+:103D000074696D65202575292E0000005265636574
+:103D10006976656420424C455F4741505F45565483
+:103D20005F5345435F504152414D535F524551559A
+:103D3000455354004343434420666F7220736572B9
+:103D400076696365206368616E67656420697320C6
+:103D50003078253034780000526563656976656493
+:103D600020424C455F4741505F4556545F5048598B
+:103D70005F555044415445202852583A25642C2020
+:103D800054583A25642C207374617475733A256411
+:103D900029000000526563656976656420424C45E0
+:103DA0005F4741505F4556545F5048595F555044F6
+:103DB0004154455F524551554553542E0000000073
+:103DC000436F756C64206E6F742068616E646C65FF
+:103DD000206F6E5F6374726C5F70745F777269746A
+:103DE000652E206572725F636F64653A20307825B6
+:103DF00030347800526563656976656420424C45CD
+:103E00005F4741505F4556545F5345435F494E46B7
+:103E10004F5F5245515545535400000046696E6945
+:103E2000736865642068616E646C696E6720636F97
+:103E30006E6E2073656320757064617465000000A8
+:103E4000007800F00100704738B50020009002F0C3
+:103E5000B9FB00282DD117481749184A401AC10844
+:103E6000042000EB0140044615A104F097F9134823
+:103E700013DF00281DD1204619A104F08BF904F0AE
+:103E800071FD002815D1684604F0D2FB002810D13E
+:103E9000204619A104F07EF96946012004F0D2FB06
+:103EA000002806D120461AA104F074F9684604F0EF
+:103EB00061FC38BD40CE070038CE07000010070077
+:103EC00053657474696E6720757020766563746FCE
+:103ED00072207461626C653A203078253038780041
+:103EE000456E61626C696E6720536F6674446576D7
+:103EF0006963652E00000000436F6E666967757226
+:103F0000696E6720424C4520737461636B2E00001C
+:103F1000456E61626C696E672074686520424C452D
+:103F200020737461636B2E0013B90378012B01D0E9
+:103F300002F084BF012070470022C32100F51870F1
+:103F400000F048B92DE9F043A1B00446DDE9289618
+:103F500020200F46209098461546782102A8FDF7AC
+:103F600078FA41212046FDF774FAB7F8940005EB82
+:103F7000051107EB8101A84201D991F896602670DE
+:103F8000320033D0012A0DD01B481C4D0123401BA9
+:103F9000C00803EB0045022A0CD0032A20D0284693
+:103FA00017A117E000224946404600F013F9C4F873
+:103FB00001001BE020A9601CCDE900014B464246F0
+:103FC000184902A801F0C8FD80B104F0FDFD0246C9
+:103FD000284615A104F0E2F8002021B0BDE8F083E6
+:103FE000B1F89820601C9A31FDF71AFA4A4641460A
+:103FF000204602F023FFF0E768CE070038CE070026
+:10400000496E76616C696420626F6F742076616CB2
+:1040100069646174696F6E20747970653A202564F3
+:1040200000000000B8B607006E72665F63727970B8
+:10403000746F5F686173685F63616C63756C6174F2
+:10404000652829206661696C656420776974682039
+:104050006572726F722025730000000010B504466F
+:104060000A480B49401AC008042101EB004009A18D
+:1040700004F090F84FF0000034B10C490870BDE82E
+:1040800010400B4802F094BC00F0E2FA88CE070022
+:1040900038CE0700526573657474696E6720626F6D
+:1040A0006F746C6F616465722E00000068590020A7
+:1040B000514607002DE9F84F0546861C00208DF873
+:1040C000000091460F464FF0010A6846FFF7CEF810
+:1040D0001C4C60683860D4E901011B4F401A3968F4
+:1040E000081A41F21C0104EB01080EE001214046D0
+:1040F00000F0C9FF00F01EFE0146404600F0C3FF7D
+:10410000D4E90101401A3968081A401C8642EDD8EA
+:10411000B9F1000F03D0052065F3891002E00620F5
+:1041200065F39F5061683A68114004EB8101C860F3
+:104130006068304460609DF80000FFF7E3F8504687
+:10414000BDE8F88F54810020145A002010B5436850
+:104150009C18446021B905E013F8010B01F8010B2C
+:10416000521EF9D2012010BD70B50D4604460A2931
+:1041700002D10D21FFF7F8FFA0682268411CA16061
+:104180001554D4E90101814204D32046BDE87040B2
+:1041900003F0A0BA70BD0000044881684068814205
+:1041A00001D1012070470020704700005481002099
+:1041B00010B5040003D10549F020FFF7E7F80448E3
+:1041C000C16B6160006CA06010BD0000DCC0070026
+:1041D0003C760020F0B54FF0FF3622B11268D24392
+:1041E00000230A4D0DE03246FAE7C45C6240082421
+:1041F000D70700D037462F4087EA5202641EF7D116
+:104200005B1C8B42F1D3D043F0BD00002083B8ED9E
+:1042100010B504460068401C07D0204606F0A2FBFB
+:104220002168814201D1012010BD002010BD000095
+:1042300010B5104C90B06078002818D101F0F0FC57
+:1042400018B10D49DB20FFF7A1F820220B49684681
+:1042500001F006FD40236A4609490A4801F03CFC8A
+:1042600018B10549E520FFF791F80120607010B002
+:1042700010BD0000DC590020BCC4070068B6070070
+:10428000E87C0020D0B60700F0B5146906468DB072
+:1042900020681546271DE0B1022920D00A20009091
+:1042A0006B4609AA304606F0BBF800280FD009A9D2
+:1042B00001A8009A05F0E0FD01AE96E80F0005AEFA
+:1042C00086E80F00236869683A4605A898470DB04C
+:1042D000F0BD0DB03046BDE8F04005F041BE694686
+:1042E000304605F0D3FD0028F1D0236869683A46CE
+:1042F000684698470028EAD002980028F5D101982E
+:1043000070600120E3E753689B7813F0C00303D08B
+:10431000402B03D00020704700F002B8FFF7B4BF75
+:104320002DE9FF410B465168064614468878334D07
+:1043300000F00F0210F0300055F8225006D010287F
+:1043400006D0202808D0302856D13EE022694DE022
+:1043500061690120087047E0022B28D1042A26D881
+:104360004FF0010869463046676905F08FFD002867
+:104370001AD009E00B89226903FB00226846A8478E
+:1043800070B13888401C3880029820B16168388844
+:104390004A899042EED301987060029860BB02E0B7
+:1043A0004FF00008F7E7404604B0BDE8F081D4E9DB
+:1043B00004300F890288498907FB02338A421BD2E5
+:1043C000521C02801A46616810E008886169072A59
+:1043D000088009D1606801892069FDF73AF86068B2
+:1043E0002169C06805F06DFD2269616804B030463E
+:1043F000AC46BDE8F04160470020D5E758BD070056
+:1044000038B51E4901200A68D20301D500040CE02A
+:104410001B490A681523D2B2B3EBD20F07D10A6841
+:10442000D20704D0086800F0560008600020FEF7AC
+:10443000FBFD1449144A891AC908042202EB0144FD
+:10444000B0B110200090684603F03CFCD0F8100595
+:104450000099C84010F0010F0DD004F0CFF810F013
+:10446000B10004D0204609A103F094FE012038BD1C
+:1044700020460FA1F8E7204616A1F5E7000400400A
+:104480002005004088CE070038CE0700444655205E
+:104490006D6F6465207265717565737465642076EF
+:1044A00069612047505245475245542E0000000094
+:1044B000444655206D6F6465206265636175736560
+:1044C00020617070206973206E6F742076616C6952
+:1044D000642E0000444655206D6F6465207265713E
+:1044E0007565737465642076696120627574746F94
+:1044F0006E2E0000FEB519490446086808B1401E3A
+:1045000008601748174AD4E90153801AC0080422EA
+:1045100002EB004022789DB10E6821690296CDE938
+:1045200000312B46012A16D00FA211A103F058FE2C
+:104530006169002911D0E06803B0BDE8F040084788
+:1045400009680091012A04D007A218A103F035FEE2
+:10455000EEE720A2F9E71FA2E7E7FEBDC059002061
+:1045600048CE070038CE0700657261736500000011
+:10457000466C617368202573206661696C656420F0
+:104580002830782578293A20616464723D25702CA2
+:10459000206C656E3D307825782062797465732CC7
+:1045A0002070656E64696E6720256400466C6173D7
+:1045B0006820257320737563636573733A206164A3
+:1045C00064723D25702C2070656E64696E672025CD
+:1045D0006400000077726974650000007047000095
+:1045E00010B50446801E062810D2DFE800F00D0347
+:1045F000030F09090A494FF4701000F087FF05E026
+:104600000120FFF72BFD01E002F05EFA054841684A
+:10461000002903D02046BDE81040084710BD000027
+:10462000B54A07006859002010B50446062801D095
+:10463000072C02D1002002F043FB04480168002946
+:1046400003D02046BDE81040084710BDA459002003
+:1046500003F058FE03F02EFC0028FBD1BFF34F8F70
+:1046600005480168054A01F4E06111430160BFF3A8
+:104670004F8F00BFFDE700000CED00E00400FA05DD
+:1046800010B50021024800F014FD80F3100010BDA9
+:10469000709100202DE9FC4180461F4615460E46CC
+:1046A00000240D4800F0ECFC38B11120BDE8FC817D
+:1046B00006EB043003F050FF641CAC42F8D106480E
+:1046C00000F0D5FCCDE900573346002202214046D8
+:1046D00000F02AF80020E9E7FC5900202DE9F84312
+:1046E000104D0F4680461E4691466946286800F0E8
+:1046F00092FC040014D01C21FCF7ABFE01202071B9
+:10470000C4F81490380BC4F80080C4E9026069460C
+:10471000286800F0A1FC05F063FE0020BDE8F883E6
+:104720000420FBE724BA07002DE9F04387B00446D4
+:10473000DDE90E8980681D4616460F4600280BD01D
+:1047400018216846FCF785FE02A88DF8007080E805
+:104750006003A1686846884707B0BDE8F08330B5BC
+:104760000446006887B00D46806800281FD01821D5
+:104770006846FCF76EFE0195A0680590207910B19F
+:10478000012810D107E001208DF800002069029077
+:10479000E068039005E002208DF80000E068000367
+:1047A000029060690490206881686846884707B075
+:1047B00030BD0B2803D30B38C0B200F009B87047E6
+:1047C0000249002208780A7070470000C45900208E
+:1047D000014908700B207047C4590020014901208D
+:1047E000087070476859002001490120087070471F
+:1047F000A059002070B515460E46040004D10749A3
+:104800004FF42C70FEF7C2FD2A46314604F17200C7
+:10481000BDE87040012302F063BB0000BCC4070088
+:1048200010B5040003D10E49DB20FEF7AFFD207860
+:1048300018B90B49DC20FEF7A9FD94F85500094989
+:1048400038B1012805D06068C968884205D90120BF
+:1048500010BD606889688842F9D24FF0000010BD31
+:1048600004C507003C7600203EB59DF8080020F006
+:104870000F00401C20F0F00010308DF80800684652
+:104880006DDF00282BD19DF80100401C8DF8010040
+:1048900068466CDF002822D111481349007A82074C
+:1048A0001048A0EB01004FEAD0004FF0040101EBEB
+:1048B000004008D50D4C0EA1221DA36903F075FC24
+:1048C000211DA06904E013A103F064FC19A10720D5
+:1048D00082B202A87CDF002801D118487ADF3EBDF1
+:1048E000A859002040CE070038CE0700C45E002043
+:1048F00053657474696E6720616476206E616D65BE
+:104900003A2025732C206C656E6774683A20256404
+:10491000000000005573696E672064656661756C00
+:1049200074206164766572746973696E67206E6164
+:104930006D6500004466755461726700A6B8070093
+:104940002DE9FC5F164607463A4A3B481D46101AB9
+:1049500004224FEAD00902EB09408B468246B94255
+:1049600005D136A103F016FC0020BDE8FC9F04D25F
+:1049700036494FF04F00FEF709FD1DB9334950206D
+:10498000FEF704FD2EB1380503D030495320FEF761
+:10499000FDFCABEB0700040B03D12C495720FEF7BD
+:1049A000F5FC0020009006F6FF704FEA103800F08A
+:1049B000E9FFA54239D22C4637E0A04503D8354659
+:1049C000CDF8048001E025030194002238460199C6
+:1049D00001F07AFC0028C8D150463B465A461CA13B
+:1049E000009503F0EAFB681E00F003002A1A00237A
+:1049F00059463846D21C01F01DFD0028B5D1019959
+:104A00001C48A8EB0108761B016B2F442944016365
+:104A1000AB44002002F040F9009030B1012101EBDD
+:104A2000094015A103F0B6FB01E0002EC5D10098A6
+:104A30009BE7000088CE070038CE07004E6F20634A
+:104A40006F7079206E65656465640000A0BE070024
+:104A5000436F7079696E67203078257820746F20F5
+:104A6000307825782C2073697A653A20307825785B
+:104A7000000000003C7600204661696C656420748B
+:104A80006F20777269746520696D61676520636F57
+:104A90007079696E672070726F67726573732074C6
+:104AA0006F2073657474696E677320706167652E1B
+:104AB000000000000748084910B5401AC00803214B
+:104AC00001EB004005A103F065FBBDE810400120AB
+:104AD000FFF7C4BA88CE070038CE0700496E61637D
+:104AE0007469766974792074696D656F75742E00C8
+:104AF0000149416000207047F8B9070010B50B4923
+:104B000041600B4800F0BCFA68B903F07DFF08492A
+:104B10001C234FF4EE7208740448A1F5EE71001FD7
+:104B2000006800F065FA002010BD000028BA0700F8
+:104B3000A87F00202DE9FC5F0E008346DDE90C47CD
+:104B4000C6F1000098469246814600D408460125E9
+:104B500003E000BF90FBFAF06D1C5045FADAA8455F
+:104B600000D9454624B1002E01DB780700D5641E2C
+:104B7000B80702D5B8F1000F0AD0F80708D13CB148
+:104B8000A54205D220215846641EFFF7EDFAF6E74C
+:104B9000002E02DA4E462D2102E0780703D52B21A4
+:104BA0005846FFF7E1FA07F0030002280BD1B8F1ED
+:104BB000000F08D13CB1A54205D230215846641EF1
+:104BC000FFF7D2FAF6E7CDE90047434652463146B1
+:104BD000584606F09FFBBDE8FC9F02460020126885
+:104BE000530713D502F00300012802D002280CD18C
+:104BF00005E0C2F383100B68801C184404E0022314
+:104C0000086803EB925210440860012070470000CE
+:104C100002480068002800D001207047FC5900209D
+:104C20000248007A002800D001207047A87F0020A9
+:104C300038B54FF440521B49536800F500508B4281
+:104C400004D044688C4201D1012400E000248B424E
+:104C500026D143688B4223D11178142901D9526996
+:104C600000E000221049B2FBF1F30278142A01D9C6
+:104C7000406900E00020B0FBF1F0834203D0012442
+:104C80000AA2009002E000240AA200900B480C49FE
+:104C9000401AC008032101EB00400AA103F08DFA7D
+:104CA000204638BDDBE5B15140420F006D616A6FAF
+:104CB000720000006D696E6F7200000068CE070020
+:104CC00038CE0700536F6674446576696365207556
+:104CD0007064617465206973206120257320766596
+:104CE0007273696F6E207570646174652E204375F0
+:104CF0007272656E743A2025642E204E65773A20D4
+:104D000025642E0070B5054608680C464A6886681A
+:104D10002846314604F0F6FF6068286104F10C0073
+:104D20006861B0780221B1EB901F01D1241D2C6184
+:104D300070BD00002DE9FF410026274800F09DF9D5
+:104D40002548001F074600F098F9244C2449A06824
+:104D500000900D6800E000986946284004EB800050
+:104D60000C30FFF73AFF0028F5D101AA009901EABB
+:104D7000050304EB8303491CDB6842F82030401C28
+:104D800000910228F2D3019800F0030001281AD004
+:104D900002280ED013A14FF4C270FEF7F7FA38467E
+:104DA00000F068F908B10098A06004B03046BDE892
+:104DB000F0810198032101EB90500099BDF80A6041
+:104DC00001EB900005E00198BDF80A60C0F3831084
+:104DD00008440090E3E700006C910020548100201B
+:104DE000145A00202E2E5C2E2E5C2E2E5C2E2E5C55
+:104DF0002E2E5C636F6D706F6E656E74735C6C6984
+:104E0000627261726965735C6C6F675C7372635C1C
+:104E10006E72665F6C6F675F66726F6E74656E64EC
+:104E20002E63000000F082FD4FF48051002000F05E
+:104E30008DFBC8B91548C0F5FC2100F087FB98B977
+:104E40000021134803F032FA03F01EF8114812490A
+:104E5000401AC408032000EB044010A103F09AF9A3
+:104E6000114800F08BFC08B1FEF7BEF803F022F801
+:104E70000028FBD1012000EB04400CA103F08AF9CB
+:104E800003F018F80028FBD1EEE70000001007003F
+:104E90003555070088CE070038CE0700496E736984
+:104EA0006465206D61696E00DD45070041667465CB
+:104EB00072206D61696E2C2073686F756C64206E52
+:104EC0006576657220626520726561636865642E2F
+:104ED000000000002DE9F05F1E46DDF828B0914685
+:104EE0008A46040003D124A1B620FEF74FFAB4F895
+:104EF0000680607908FB00F8A8F10408464503D352
+:104F00001DA1C420FEF742FAE788301DB0FBF7F17F
+:104F1000B0FBF7F207FB1200D9F80050AA1942457E
+:104F200001D9A8EB0605C9F8005001E02468491E24
+:104F30000029FBD13E1A8846AE4215D817E000BFC3
+:104F40002044001D0AEB0803BBF1000F324602D0DB
+:104F50000146184600E01946FCF762FA0020246872
+:104F6000AD1BB044AF4201D92E4600E03E46002DB5
+:104F7000E6D1BDE8F09F00002E2E5C2E2E5C2E2E7A
+:104F80005C2E2E5C2E2E5C636F6D706F6E656E7482
+:104F9000735C6C69627261726965735C6D656D6F7B
+:104FA000626A5C6E72665F6D656D6F626A2E630029
+:104FB00030B5024651B103F08DF90021074C08E0ED
+:104FC00034F821301568AB4202D11160002030BDA9
+:104FD000491C8142F4D3052030BD000000000000D0
+:104FE00010B5FCF762F908B1002010BD112010BD0A
+:104FF00010B531B1B2FBF3F403FB14241CB109204A
+:1050000010BD0E2010BD01600021416081608281D1
+:10501000C381084610BD70B50C460546FCF7FAF88A
+:10502000002802D021882868084470BD10B50A887D
+:1050300049888A4203D1FCF72FF9012010BD0020D6
+:1050400010BD70B50C460546FCF709F9002802D0E2
+:1050500061882868084470BD10B50A8849888A426A
+:1050600003D1FCF7F3F8012010BD002010BD002192
+:1050700000F00FB8002100F012B8012100F01EB8B6
+:10508000012100F011B808B56A46FCF75AF90098FA
+:1050900008BD08B56A46FCF73AF9009808BD08B59E
+:1050A0006A46FCF734F908BD08B56A46FCF722F9F0
+:1050B00008BD08B56A46FCF711F908BD08B56A468F
+:1050C000FCF718F9009808BD08B56A46FCF746F9E0
+:1050D000009808BD38B5040004D115A14FF49270B2
+:1050E000FEF754F900258DF800506846FEF7BEF82B
+:1050F000206862680168914214D9491E01600D78E8
+:105100001CB919A1E820FEF741F9208AE16805FBE6
+:1051100000152068217A0278891A0279C9B28A4278
+:1051200000D201719DF80000FEF7ECF8284638BD6A
+:105130002E2E5C2E2E5C2E2E5C2E2E5C2E2E5C6374
+:105140006F6D706F6E656E74735C6C6962726172A4
+:105150006965735C62616C6C6F635C6E72665F62E2
+:10516000616C6C6F632E63002E2E5C2E2E5C2E2ED7
+:105170005C2E2E5C2E2E5C636F6D706F6E656E7490
+:10518000735C6C69627261726965735C62616C6C9C
+:105190006F635C6E72665F62616C6C6F632E63003E
+:1051A00038B50C46050004D112A140F24710FEF7B5
+:1051B000EDF824B90FA14FF4A470FEF7E7F8002032
+:1051C0008DF800006846FEF751F81DB91749F52023
+:1051D000FEF7DCF8E8682A68211A288AB1FBF0F1AA
+:1051E0001068431C136001709DF80000FEF78AF8F8
+:1051F00038BD00002E2E5C2E2E5C2E2E5C2E2E5CDA
+:105200002E2E5C636F6D706F6E656E74735C6C696F
+:10521000627261726965735C62616C6C6F635C6E13
+:1052200072665F62616C6C6F632E63006851070089
+:1052300010B5040002D0206830B901E00E2010BD86
+:1052400019A1FF20FEF7A2F8606820B916A14FF45B
+:105250008070FEF79BF8A06820B913A140F20110FE
+:10526000FEF794F8E06820B90FA14FF48170FEF7C3
+:105270008DF8208A20B90CA140F20310FEF786F8C1
+:10528000207A61682268401AC0B2116004E0226886
+:1052900011684B1C13600870401EC0B2F7D2216821
+:1052A0000020087110BD00002E2E5C2E2E5C2E2ECC
+:1052B0005C2E2E5C2E2E5C636F6D706F6E656E744F
+:1052C000735C6C69627261726965735C62616C6C5B
+:1052D0006F635C6E72665F62616C6C6F632E6300FD
+:1052E0002DE9F041184819494FF48052401AC70877
+:1052F000042000EB0745164615A1284602F04EFF94
+:105300004FF0E024D4F8802128461FA104F5C07492
+:1053100002F044FF60172060C4F800016060C4F828
+:10532000040101F05BF928B1012000EB074021A145
+:1053300002F030FF02F0BEFD0028FBD13046BDE890
+:10534000F04100F053B8000088CE070038CE0700C7
+:1053500052756E6E696E67206E72665F626F6F74F3
+:105360006C6F616465725F6170705F737461727499
+:10537000207769746820616464726573733A2030C1
+:10538000782530387800000044697361626C696E7A
+:105390006720696E74657272757074732E204E5634
+:1053A00049432D3E494345525B305D3A20307825D4
+:1053B000780000004661696C65642072756E6E69E4
+:1053C0006E67206E72665F6466755F6D62725F699C
+:1053D00072715F666F72776172645F616464726537
+:1053E00073735F73657428290000000070B506466A
+:1053F0002648C0F5FE2100F0A9F8040024482549FC
+:10540000A0EB01004FEAD0004FF0010101EB004595
+:1054100007D02846224620A102F0C0FE2046FDF714
+:10542000E3FD00F0C7FC014629488069421EC2F333
+:105430000B02801A0144002001F6FF7100F086F88B
+:10544000040004D02846224622A102F0A7FE201E16
+:1054500001D0FDF7C9FDEFF30580C105D6E9004590
+:10546000C90D4FF0000080F3148880F3108880F39A
+:10547000118880F3138803D023495820FDF786FF55
+:1054800084F30888AC46BDE8704060470010070010
+:1054900088CE070038CE0700436F756C64206E6FAE
+:1054A000742070726F7465637420626F6F746C6FB8
+:1054B0006164657220616E642073657474696E67DF
+:1054C000732070616765732C20307825782E00007A
+:1054D0003C760020436F756C64206E6F7420707290
+:1054E0006F7465637420536F667444657669636591
+:1054F00020616E64206170706C69636174696F6EA5
+:105500002C20307825782E0004BE070070B5084D99
+:1055100004460E46686805F0B5FE002C06D03246FB
+:1055200021466868BDE8704005F09EBE70BD000071
+:10553000705900200348D0F804050349097B00EBAB
+:10554000016070470040024070590020F0B50A0524
+:1055500002D1B0F5FE2F01D90720F0BD134D000B8D
+:10556000491E124F01222E1D103700EB113407F196
+:10557000040C17E04309C3F1000100EB411E02FADD
+:105580000EF106D0012B06D0022B06D0032B08D13A
+:1055900005E0296005E0316003E0396001E0CCF806
+:1055A0000010401CA042E5D90020F0BD00060040DC
+:1055B0002DE9F0413A483B49384E401AC5080420CD
+:1055C00000EB05400027044637A102F0E3FDB06878
+:1055D00001280ED0A52813D0AA2818D0AC281ED098
+:1055E000032000EB054039A102F0D4FD0020BDE806
+:1055F000F08120463CA102F0CDFDFDF741FC0CE01E
+:1056000020463CA102F0C6FD04F06AFF0DE02046F2
+:105610003BA102F0BFFDFDF7C3FE024607E02046B6
+:105620003AA102F0B7FD05F029F8024601271D490D
+:105630001B4B0120591AC90800EB014522B128462D
+:1056400036A1B36802F0B1FD304600F0D7FBDFF8B9
+:105650000081002188F800103E4801F01DFB06463D
+:1056600098F8000020B93C4940F2A510FDF78EFEE5
+:105670002EB1284639A102F08DFD0320B7E70120A5
+:10568000002FB4D005492439096A0129AFD1204639
+:10569000394902F07FFD0220A9E700006076002072
+:1056A00088CE070038CE0700456E746572206E7292
+:1056B000665F626F6F746C6F616465725F66775F5F
+:1056C0006163746976617465000000004E6F206646
+:1056D00069726D7761726520746F20616374697699
+:1056E0006174652E0000000056616C696420417091
+:1056F0007000000056616C69642053440000000093
+:1057000056616C696420424C0000000056616C696F
+:1057100064205344202B20424C00000041637469F4
+:10572000766174696F6E206661696C656420776963
+:105730007468206572726F72202564202862616E21
+:105740006B20636F64653A2030782578290000006B
+:10575000A0590020E9470700A0BE0700436F756C01
+:1057600064206E6F74207772697465207365747439
+:10577000696E67732E00000038BF07002DE9F843FB
+:10578000044644484449401AC108042000EB014043
+:10579000054642A102F0FEFC464F10207C600090BE
+:1057A000684602F08FFA009A434900EB82004FF0FE
+:1057B0000008C0F80017404601F000F9002852D157
+:1057C000FFF7F6FE344A334B01219A1AD20801EB57
+:1057D000024420B1012828D0022844D105E04FF42A
+:1057E0007016FEF70DFE10B93AE04FF4A02600F057
+:1057F000C9F8324A20211820FDF722FD08B1FDF733
+:10580000F3FB02F0FBFE1621B1EBD00F09D102F041
+:10581000F5FEC00705D002F0F1FE294920F0B100E5
+:10582000086000F0A3FEF0B903E00120FEF716FCCB
+:105830002AE024493046FFF769FE234800F04AFE7B
+:1058400088B9284621A102F0A5FC00BF00F086F827
+:10585000FDF7D6FC02F02EFB0028F7D141DFF5E77B
+:1058600001F032F810B10320BDE8F88387F800801A
+:105870001A4801F09DF8387820B919A14FF4027048
+:10588000FDF784FDFFF72CFD204625A102F082FCE8
+:10589000E9E7000088CE070038CE0700496E206E89
+:1058A00072665F626F6F746C6F616465725F696E60
+:1058B00069740000685900200C000300845A00201D
+:1058C0001C050040B54A0700E1450700456E7465B8
+:1058D00072206D61696E206C6F6F7000DD4707008C
+:1058E0002E2E5C2E2E5C2E2E5C2E2E5C2E2E5C63BD
+:1058F0006F6D706F6E656E74735C6C6962726172ED
+:105900006965735C626F6F746C6F616465725C6E05
+:1059100072665F626F6F746C6F616465722E630094
+:10592000556E726561636861626C650010B540F622
+:10593000F8700168491C02D1074902F025FE40F6C3
+:10594000FC700168491C05D1BDE810404FF4FC21F2
+:1059500002F01ABE10BD00000010070010B503F0E1
+:1059600083F9002803D0BDE8104005F0EDBD10BD5F
+:10597000034A93680A4601469860184605F074BCCD
+:10598000705900202DE9F0411A4E307800282ED1B0
+:1059900003F06AF91849194A0127891AC90803222C
+:1059A00002EB014500281DD0154804682846224610
+:1059B00014A102F0F3FBA4F54864962C00DC9624B5
+:1059C00005F0C2FD2846224615A102F0E7FB214959
+:1059D0002046FFF7CDFF4FF0E0214FF48030C1F8B3
+:1059E000000103E028461CA102F0D4FB3770BDE89B
+:1059F000F0810000A159002038CE070038CE070002
+:105A00000405014057445420656E61626C65642052
+:105A10004352563A2564207469636B73000000009A
+:105A20005374617274696E6720612074696D657268
+:105A300020282564207469636B732920666F7220A7
+:105A400066656564696E67207761746368646F6713
+:105A50002E00000085B50700574454206973206E5E
+:105A60006F7420656E61626C6564000040688068D8
+:105A7000004710B542680830527900F0F1F8002074
+:105A800010BD2DE9F04399B01C4690460D460846DE
+:105A9000DDF88090FFF7EAFF6E6807467079A04254
+:105AA00000D804462246414611A800F015F9727943
+:105AB000494601A800F0D4F801AB224611A905F12E
+:105AC00008000097FBF77CFE18B1002019B0BDE874
+:105AD000F08348F24250F9E770B516460C46054689
+:105AE00000F0E2F800280ED1AA791946304600F0FD
+:105AF000E8F8002807D131462046FFF7BAFF002812
+:105B000001D10149216070BD7052464D2DE9F84325
+:105B10000C46DDE908578146984616460D49204651
+:105B200000F0B6F8002810D160683946407942008C
+:105B3000284600F0C6F8002807D146B14346324651
+:105B4000214648460095FFF79CFFBDE8F88348F2E0
+:105B50001050FAE77052464D2DE9F0411D46DDE93F
+:105B600006871646044600F02DF800280DD12A4677
+:105B70003146204600F03CF8002806D13A4641461E
+:105B80002046BDE8F04100F002B8BDE8F08170B5F4
+:105B900015460E46044605F0C7FC002807D13EB165
+:105BA00060682968C268914205D248F2145070BDFD
+:105BB00048F2135070BD83682A4631462046BDE83E
+:105BC0007040184710B550B161B141600968044692
+:105BD0008847002802D105482060002010BD48F207
+:105BE000015010BD48F2105010BD00006E524648E2
+:105BF00070B515460E46044605F096FC00280BD1FC
+:105C000046B155B160682A46314643682046BDE832
+:105C10007040184748F2105070BD002070BD000061
+:105C20002DE9F0410B480C4D0C4F401BC6080120DC
+:105C30003870002406E000BF55F834008047002883
+:105C400005D1641CB442F7D3022038700020BDE8AF
+:105C5000F08100000000000000000000A2590020B8
+:105C600070B514460D46064600F036F8291930196D
+:105C70002246BDE8704000F02FB870B50C460546CE
+:105C800000F064F828192146BDE8704000F05EB8C5
+:105C900028B10068884205D048F24050704748F269
+:105CA000105070470020704728B139B10022C1E977
+:105CB00000201046704748F21050704748F21350C9
+:105CC000704720B1914205D048F21150704748F218
+:105CD000105070470020704770B516460C460500FE
+:105CE00003D10AA14520FDF751FB1CB907A14620AD
+:105CF000FDF74CFBA919491E04E000BF14F8010B85
+:105D000001F80109A942F9D270BD00002E2E5C2EC7
+:105D10002E5C2E2E5C2E2E5C2E2E5C636F6D706FB3
+:105D20006E656E74735C6C69627261726965735CD6
+:105D300063727970746F5C6E72665F63727970748F
+:105D40006F5F7368617265642E63000070B50D4605
+:105D5000040003D107A13320FDF718FB6019401E92
+:105D600005E02178027804F8012B00F80119A0421F
+:105D7000F7D270BD2E2E5C2E2E5C2E2E5C2E2E5C4D
+:105D80002E2E5C636F6D706F6E656E74735C6C69E4
+:105D9000627261726965735C63727970746F5C6E54
+:105DA00072665F63727970746F5F73686172656445
+:105DB0002E6300004FF44050074A4168914207D1DA
+:105DC0008068411EC1F30B01401A00F6FF70704756
+:105DD0004FF4805070470000DBE5B15100B5FFF78C
+:105DE000E9FF054989690A18401E0844C0F30B0001
+:105DF000101A00F6FF7000BD3C7600200021016003
+:105E00004160816001480163704700003C760020DA
+:105E10002DE9FF4F8B466948694981B0401AC10896
+:105E2000042000EB0144009166A1204602F0B2F983
+:105E300020466CA1019A02F0B1F9BBF1000F01D02C
+:105E40006EA200E06FA2204670A102F0A7F90398AD
+:105E500008B16AA200E06BA2204671A102F09EF98F
+:105E6000049808B165A200E066A2204670A102F085
+:105E700095F94FF4405041687348814201D15FA2C7
+:105E800000E060A2204671A102F088F9204673A1CB
+:105E900002F080F9754D204675A1AB692A6A02F0BF
+:105EA00084F920467AA16B6AEA6A02F07EF94FF023
+:105EB0000009DFF8FCA10CE0012650B1012812D046
+:105EC000B9F1020F1ED07B49AC20FDF75FFA00202C
+:105ED0001AE0FFF783FF8046039888B16348006AA1
+:105EE00001280BD00CE0FFF765FF8046049828B925
+:105EF0004FF4405041685448814201D0012604E0EB
+:105F0000002602E04FF480508046D04503D969490D
+:105F1000B120FDF73BFA68490198A1EB0801A1F512
+:105F20000041814201D2012700E0002747EA0B052A
+:105F300020464A4661A102F031F92046424662A15C
+:105F400002F02CF90FB12DA200E02EA2204664A190
+:105F500002F024F90EB129A200E02AA2204666A18F
+:105F600002F01CF90DB125A200E026A2204667A18F
+:105F700002F014F9B54308D0B9F1020F05D209F1C6
+:105F80000100C0B28146022896D957B1009802217B
+:105F900001EB004062A102F0FDF8042005B0BDE86D
+:105FA000F08FB9F1000F07D0204668A102F0F2F897
+:105FB0002E481830FFF722FF0020EFE788CE0700B9
+:105FC00038CE0700456E746572206E72665F646637
+:105FD000755F63616368655F707265706172652883
+:105FE0002900000072657175697265645F73697A72
+:105FF000653A20307825782E0000000074727565AF
+:106000000000000066616C736500000073696E67D4
+:106010006C655F62616E6B3A2025732E0000000094
+:106020006B6565705F6170703A2025732E0000000B
+:106030006B6565705F736F66746465766963653AF6
+:106040002025732E00000000DBE5B15153445F5062
+:10605000524553454E543A2025732E0042616E6BD3
+:1060600020636F6E74656E74733A00003C76002096
+:1060700042616E6B203020636F64653A2030782572
+:106080003032783A2053697A653A203078257800A2
+:1060900042616E6B203120636F64653A2030782551
+:1060A0003032783A2053697A653A20307825780082
+:1060B000009006007CC20700001007007061737337
+:1060C0003A2025642E00000063616368655F6164A7
+:1060D00064726573733A20307825782E00000000D2
+:1060E00063616368655F746F6F5F736D616C6C3A59
+:1060F0002025732E000000006B6565705F66697275
+:106100006D776172653A2025732E000064656C65B9
+:1061100074655F6D6F72653A2025732E0000000074
+:1061200041626F7274696E672E2043616E6E6F7488
+:1061300020666974206E6577206669726D7761727A
+:1061400065206F6E2064657669636500496E7661CF
+:106150006C69646174696E67206170702E00000064
+:1061600070B50C46050004D121494FF4AC70FDF721
+:106170000DF924B91E4940F25910FDF707F91D48E1
+:106180001D4B2978C01A0422C00802EB00400929DF
+:1061900027D2DFE801F02605260B15261B260F0067
+:1061A00021462846BDE8704002F066BD13A101F00B
+:1061B000F1FF11E021462846BDE8704002F000BE24
+:1061C00021462846BDE8704002F098BD14A101F0B8
+:1061D000E1FF4FF40070E0602046BDE87040FDF73D
+:1061E000E7BFBDE8704002494FF4BC70FDF7CEB880
+:1061F000DCC0070050CE070038CE070048616E644F
+:106200006C65204E52465F4446555F4F505F435287
+:10621000435F4745542028636F6D6D616E642900AC
+:1062200048616E646C65204E52465F4446555F4F30
+:10623000505F4F424A4543545F53454C45435420B9
+:1062400028636F6D6D616E642900000070B50E46A5
+:10625000040004D11B4940F27520FDF797F826B9D8
+:10626000184940F27620FDF791F820780125092899
+:1062700020D2DFE800F01F051F0F141F1A1F0A00AD
+:106280003146204602F080FE19E03146204603F0F8
+:10629000D1F814E03146204602F038FE0FE03146D6
+:1062A000204602F07BFF054609E03146204603F018
+:1062B00075F804E0034940F29720FDF767F8284697
+:1062C00070BD0000DCC007002DE9F843134C074601
+:1062D0000D4620680090124812499046401AC608A0
+:1062E000042000EB06402B463A460FA101F065FF63
+:1062F00043462A4639461C4801F040FB050009D0B8
+:10630000022000EB06402A4618A101F047FF28466C
+:10631000BDE8F8832068401C2060F8E7C0590020E1
+:1063200048CE070038CE07006E72665F6673746FE2
+:10633000726167655F657261736528616464723D4F
+:10634000307825702C206C656E3D25642070616767
+:106350006573292C20717565756520757361676596
+:106360003A20256400000000705A00206E72665FBB
+:106370006673746F726167655F6572617365282902
+:10638000206661696C656420776974682065727243
+:106390006F7220307825782E000000000C490D4ADD
+:1063A00010B5891AC908042202EB014200281046E0
+:1063B00004D009A101F0EEFE114903E011A101F0A2
+:1063C000E9FE1A49BDE810400022194801F036BB29
+:1063D00048CE070038CE0700496E697469616C6960
+:1063E0007A696E67206E72665F6673746F7261673A
+:1063F000655F7364206261636B656E642E000000EC
+:1064000034BA0700496E697469616C697A696E67AC
+:10641000206E72665F6673746F726167655F6E7619
+:106420006D63206261636B656E642E0004BA0700C1
+:10643000705A00202DE9FC47154C80460F46206815
+:106440001549CDE9002013489946401AC60815465B
+:10645000042000EB06403B464246104901F0B6FEE0
+:106460002B463A4641460E48CDF8009001F0AEFB6F
+:10647000050009D0022000EB06402A4609A101F0E0
+:106480008DFE2846BDE8FC872068401C2060F8E7A8
+:10649000C059002048CE070038CE070024C00700AE
+:1064A000705A00206E72665F6673746F7261676502
+:1064B0005F77726974652829206661696C6564205C
+:1064C00077697468206572726F7220307825782E33
+:1064D0000000000070B51149086011481149401AC8
+:1064E000C508032000EB05400FA101F053FE00207A
+:1064F000FEF79AF8114800F041FC040008D0012092
+:1065000000EB054022460EA101F048FE204670BD7A
+:10651000BDE87040094800F0A7B80000A459002069
+:1065200088CE070038CE0700456E746572696E67C5
+:1065300020444655206D6F64652E000029460700F3
+:10654000436F756C64206E6F7420696E6974616C42
+:10655000697A6520444655207472616E73706F725B
+:10656000743A203078253038780000000648074912
+:1065700010B5401AC008042101EB004004A101F04D
+:1065800009FE002010BD000088CE070038CE0700AD
+:10659000696E207765616B206E72665F6466755FF9
+:1065A000696E69745F757365720000001FB58908B4
+:1065B000002201AB009283E80700684618DF04B0B0
+:1065C00010BD00001FB5044B0FCB8DE80F006846CF
+:1065D00018DF04B010BD0000A8B907004FF48050C8
+:1065E000410408600020704770B50E460178134CD6
+:1065F000062901D0012901D1017C217021780125D2
+:10660000012911D0022913D00D480E49401AC008A3
+:10661000012101EB00400CA101F0BCFD0020207025
+:1066200005207070284670BD3146FFF799FDF9E7E7
+:106630003146FFF70BFE0546F4E70000C85900207D
+:1066400050CE070038CE0700496E76616C69642031
+:106650006F626A656374207479706520696E207258
+:106660006571756573742E0010B5040011D001209A
+:10667000FFF794FE00280BD100F0EEFC00F0CEFDF9
+:1066800048B10949081F00F057FD012803D0032035
+:1066900010BD072010BD04480838C4600020FEF774
+:1066A00097F8002010BD0000D059002010B5816877
+:1066B00089B10A4A1821FCF753FD040009D00848A3
+:1066C0000849401AC008022101EB004006A101F070
+:1066D00061FD204610BD072010BD000005670700C2
+:1066E00050CE070038CE07005363686564756C654B
+:1066F000722072616E206F7574206F6620737061F6
+:1067000063652100AFF3008070B50546806886B0F0
+:1067100020B9284940F2CF20FCF738FE182226493C
+:106720006846FAF77DFE28788DF800002348244B50
+:106730002A78181A0421C008224E01EB00440D2AC1
+:106740001CD2DFE802F01B140714141B141B141BCB
+:106750001B1B0C0020461CA101F01CFD17E020466D
+:1067600022A101F017FDF168072088470FE0694674
+:106770002846FFF739FF50B906B070BD032101EB81
+:10678000004020A101F00AFD02208DF801009DF8D3
+:106790000120204623A101F001FDD5E90112684640
+:1067A00090479DF801000128E6D0F1680520884750
+:1067B000E2E70000DCC00700D0B9070038CE0700D0
+:1067C00050CE0700C859002048616E646C65204EA9
+:1067D00052465F4446555F4F505F524543454950CE
+:1067E000545F4E4F5449465F5345540048616E64B0
+:1067F0006C65204E52465F4446555F4F505F4142A4
+:106800004F525400496E76616C6964206F70636FFB
+:1068100064652072656365697665643A2030782521
+:10682000782E0000526571756573742068616E641E
+:106830006C696E6720636F6D706C6574652E205295
+:106840006573756C743A20307825780038B1054945
+:1068500001600549416001210172002070470E204E
+:10686000704700006D680700A568070010B50C00B0
+:1068700001464FF0110007D02278052A05D2DFE843
+:1068800002F00F050D0F0F000E2010BD084600F09E
+:1068900073F80028F9D10221217010BD112010BD1C
+:1068A000082010BD0246082041B10B78022B04D10C
+:1068B000022A05D0032A00D1112070470E2070470C
+:1068C000002003220A70704770B510480024D0F8E9
+:1068D0002413491C03D1D0F86403401C13D00C4886
+:1068E0000C49401AC008042101EB00400AA101F044
+:1068F00051FC4FF4FE25284601F02EFEC922034923
+:10690000284601F059FE204670BD00003C7600206C
+:1069100060CE070038CE070045726173696E67204C
+:1069200073657474696E6773207061676520616454
+:10693000646974696F6E616C20646174612E00001B
+:1069400010B528B11C220349FAF76AFD002010BDDA
+:106950000E2010BD64F3070010B5064C002218216C
+:10696000201DFDF737FC2168814201D1012010BDB7
+:10697000002010BD64F3070070B50C4D0400D5F87D
+:10698000640305F5597503D0401C03D0082070BD81
+:106990000E2070BD00221821201DFDF71BFC206079
+:1069A00007222146284629DF70BD000000F00700BD
+:1069B000014903F06BBF000000F0070070B5054609
+:1069C00012481349401AC408042000EB044011A1E6
+:1069D00001F0E0FB2846FFF7E1FC02004FF0010068
+:1069E00000EB044402D0204613A108E000F06CF84C
+:1069F000002000F051F9020005D0204619A101F055
+:106A0000CDFB032070BD002070BD000058CE0700F4
+:106A100038CE070043616C6C696E67206E72665FEA
+:106A20006466755F73657474696E67735F696E69B8
+:106A30007428292E2E2E00006E72665F6466755FC4
+:106A4000666C6173685F696E697428292066616984
+:106A50006C65642077697468206572726F723A2081
+:106A6000257800006E72665F6466755F7365747486
+:106A7000696E67735F77726974655F616E645F6288
+:106A800061636B75702829206661696C6564207785
+:106A9000697468206572726F723A20257800000070
+:106AA00010B5FF224FF400710648FAF7CBFC0548F9
+:106AB00020212438FAF7CDFC024900205C39086314
+:106AC00010BD0000987600202DE9F05F4048FDF7EA
+:106AD0009FFB404E074634682046FDF799FB4FF078
+:106AE000000A58B16068012806D02046FDF724FA54
+:106AF000D4F85C12884201D1012400E00024364819
+:106B00003649DFF8DC80401AC00803214FF0020943
+:106B10004FF4607B01EB0045F7B1042101EB00402D
+:106B2000074630A101F036FB5A4629494046FAF79C
+:106B300077FCDCB1384631A101F02CFB36684446C5
+:106B40005422311D201DFAF76BFC4FF4327206F10E
+:106B50005C0104F15C0007E06CB32846324901F0A7
+:106B600019FB5A461E483168FAF75AFCD8F8040057
+:106B7000444601281DD128462CA101F00BFB3649C3
+:106B8000402201F5E470FAF74BFC33491C224031F6
+:106B900001F5E470FAF744FC84F860A2012184F85E
+:106BA000A1122E4884F8E2A2E169C0F82210C4F8CC
+:106BB0000490BDE8F09F4C4609EB0040284901F0E5
+:106BC000E9FA59460648FAF744FCC8F80440F0E7E9
+:106BD00000F00700D859002058CE070038CE070033
+:106BE0003C7600205573696E672073657474696E16
+:106BF000677320706167652E00000000436F707935
+:106C0000696E6720666F7262696464656E20706188
+:106C10007274732066726F6D206261636B75702091
+:106C2000706167652E0000008CC107004F6C642006
+:106C300073657474696E677320706167652064653D
+:106C40007465637465642E20557067726164696E43
+:106C50006720696E666F2E0098770020BC78002050
+:106C600028C1070070B50546094803F07BFE084CB3
+:106C700020602046FDF760F9C4F85C02A4F5E063EB
+:106C80002A462146BDE87040024803F071BE00006C
+:106C90003C76002000F0070070B505460020FFF7A5
+:106CA000E1FF040003D10349284603F0EFFD20462D
+:106CB00070BD00003C7600204FF48050704700000B
+:106CC0002DE9F0471449DFF854808146A1EB080014
+:106CD000C708134813490026401AC108042000EBD6
+:106CE000014005463A4610A101F058FA00240EE092
+:106CF00008EBC400416848468847060006D028468D
+:106D00003346224612A101F050FA02E0641CBC4254
+:106D1000EED33046BDE8F08728CE070020CE07002E
+:106D200088CE070038CE07005368757474696E67A3
+:106D300020646F776E207472616E73706F727473FB
+:106D40002028666F756E643A2025642900000000D3
+:106D50004661696C656420746F2073687574646F34
+:106D6000776E207472616E73706F72742025642C5C
+:106D7000206572726F722025640000002DE9F047D3
+:106D80001449DFF854808146A1EB0800C708134876
+:106D900013490026401AC108042000EB01400546B3
+:106DA0003A4610A101F0FAF900240DE058F8341029
+:106DB00048468847060006D028463346224612A198
+:106DC00001F0F3F902E0641CBC42EFD33046BDE8A9
+:106DD000F087000028CE070020CE070088CE0700ED
+:106DE00038CE0700496E697469616C697A696E67AB
+:106DF000207472616E73706F7274732028666F7581
+:106E00006E643A20256429004661696C65642074CB
+:106E10006F20696E697469616C697A65207472614A
+:106E20006E73706F72742025642C206572726F729D
+:106E300020256400012203F0DFB8000038B51446B5
+:106E400002780B46FAB1012A09D0022A1DD0032A82
+:106E500023D0174940F2D930FCF798FA25E0D0F852
+:106E60000150002221461846FDF7B4F9A8420AD085
+:106E7000104811490122401AC008042101EB0040CA
+:106E80000EA101F08BF9012038BD01B02246BDE80A
+:106E900030400023401C00F023B8411C4022002059
+:106EA000009400F017FA0128EED0002038BD000051
+:106EB000BCC4070068CE070038CE07004352432009
+:106EC000636865636B206F6620617070206661691E
+:106ED0006C65642E2052657475726E202564000006
+:106EE0002DE9F043A9B007462020894628901C468A
+:106EF00090460125782102A8FAF7ABFAFDF798F938
+:106F00002CB12022394620A8FEF7E6FE20AF244807
+:106F100024494346401AC608042000EB06400446B4
+:106F20004A4621A101F041F928A92C48CDE90001E8
+:106F300043464A462A4902A8FEF70EFE020006D042
+:106F4000012000EB064027A101F028F922E02022D1
+:106F500039462248FAF78FFAE8B1022000EB0640E2
+:106F60002DA101F017F9204632A101F013F92046B6
+:106F70002022394601F0BAF8204633A101F00AF97F
+:106F800020462022154901F0B1F800BF00F092FF21
+:106F90000028FBD1002529B02846BDE8F083000079
+:106FA00068CE070038CE07004861736820766572A6
+:106FB000696669636174696F6E2E2073746172749F
+:106FC00020616464726573733A20307825782C20D0
+:106FD00073697A653A20307825780000907D00202A
+:106FE000B8B60700436F756C64206E6F74207275BD
+:106FF0006E20686173682076657269666963617482
+:10700000696F6E20286572725F636F6465203078E7
+:107010002578292E0000000048617368207665728B
+:10702000696669636174696F6E206661696C656425
+:107030002E00000045787065637465642046572013
+:10704000686173683A00000041637475616C2046A2
+:107050005720686173683A0010B50648064C806B8B
+:1070600020B103F0A3FF08B1012000E00020207050
+:1070700010BD00003C760020DC5900202DE9F041D5
+:10708000144C07460D46E06BA26B01264119914254
+:107090000BD911481149401AC008012101EB0040E9
+:1070A0000FA101F077F8032610E00A492A465C3167
+:1070B00008443946FAF7B4F9E06B064A2844E0631D
+:1070C000403229463846FDF785F820643046BDE851
+:1070D000F08100003C76002068CE070038CE070023
+:1070E000496E697420636F6D6D616E64206C6172AE
+:1070F000676572207468616E206578706563746579
+:10710000642E000070B504004FF0010504D0B4F502
+:10711000007F03D9042508E0032506E00449002088
+:107120000870FFF7BDFC03488463284670BD00006B
+:10713000DC5900203C7600202DE9F0410646244829
+:107140000F46254BD0E90E1222484FF00108C01A15
+:10715000C00808EB00448A4205D020461FA101F078
+:1071600019F8082430E0244D287840B1FEF736FEA7
+:1071700030603946E86804F06BF9044624E003F017
+:1071800015FFE0B100F050F8044600203060386090
+:10719000012C0ED13946E86804F05AF9044601285A
+:1071A00007D132463968E86804F00EF90446012830
+:1071B00002D0FFF775FC07E085F8008004E0204668
+:1071C0000EA100F0E7FF05242046BDE8F081000095
+:1071D0003C76002068CE070038CE0700457865630E
+:1071E0007574652077697468206661756C747920A0
+:1071F0006F66667365740000DC5900204661696C37
+:10720000656420746F206465636F646520696E69CE
+:1072100074207061636B65740000000001480078A1
+:1072200070470000DC590020F8B51C4C251D0020DB
+:1072300094F86C31014602463BB194F8D802B4F898
+:10724000DA2204F5B87504F53771154CA36800937C
+:10725000636800F03FF80646012805D1281D00F0BC
+:1072600043F90646012816D00E480F49401AC508B2
+:10727000022000EB05400DA100F08CFF042000EB84
+:10728000054510A1284600F085FF2089616882B27B
+:10729000284600F02BFF3046F8BD0000BC790020E6
+:1072A000DC59002068CE070038CE070050726576A2
+:1072B000616C69646174696F6E206661696C656494
+:1072C0002E000000496E697420636F6D6D616E64FD
+:1072D0003A0000002DE9F047A2B080462020DDF8FA
+:1072E000A8900F4620909A461646782102A8FAF7F1
+:1072F000B0F800202190FCF79BFF40484049401A1D
+:10730000C508032000EB054004463EA100F042FF03
+:1073100057B1B8F1000F20460ED044A100F03AFF5B
+:10732000162022B0BDE8F087022000EB054045A101
+:1073300000F030FF1320F4E74A4647A100F02EFF8B
+:1073400020A94C48CDE900014B4652464A4902A8C3
+:10735000FEF702FC08B9402E01D00A20E1E74548BB
+:10736000324639464038FAF75BF8204643A100F030
+:1073700011FF404820214038FEF77FFC3D48402166
+:107380004038CDE90001A0F148013A4A21A8209BEC
+:10739000FEF7BCFB02002BD0012000EB05403CA116
+:1073A00000F0FCFE042000EB054442A1204600F062
+:1073B000F1FE304920464022403900F097FE204639
+:1073C0003FA100F0E7FE20982A4982B2204600F053
+:1073D0008DFE20463CA100F0DDFE204640223D49C6
+:1073E00000F084FE00F066FD0028FBD1052098E740
+:1073F000204639A100F0CEFE012092E768CE0700BA
+:1074000038CE07005369676E6174757265207265C6
+:107410007175697265642E20436865636B696E6778
+:10742000207369676E61747572652E00496E7661AE
+:107430006C6964207369676E617475726520747914
+:10744000706500004E6F207369676E6174757265B8
+:1074500020666F756E642E0043616C63756C617499
+:10746000696E67206861736820286C656E3A202514
+:1074700064290000707D0020B8B607005665726967
+:107480006679207369676E6174757265000000002B
+:107490005369676E6174757265206661696C6564B5
+:1074A00020286572725F636F64653A2030782578B2
+:1074B000290000005369676E61747572653A0000B7
+:1074C000486173683A0000005075626C6963204B34
+:1074D00065793A0068B60700496D61676520766591
+:1074E00072696669656400002DE9F04104004FF09F
+:1074F000010603D13349C420FBF748FF3248334A21
+:1075000094F85410801AC008012202EB004541B1E2
+:1075100094F8550040B1012806D0022804D0032871
+:1075200002D028462AA147E01CB92649A320FBF730
+:107530002DFF94F86E00032805D028462AA100F0FC
+:1075400029FE14263BE094F8920018B194F89300B9
+:10755000002834D1207A78B11C4A1B4B02209A1A99
+:10756000D208E16800EB0247342908D0384623A14D
+:1075700000F010FE112622E0284625A11CE020463E
+:1075800003F0EAF830B1207880B12046FDF748F9E1
+:1075900030B114E0384622A100F0FCFD12260EE0C6
+:1075A000384623A100F0F6FD102608E094F85500B7
+:1075B000012804D0284623A100F0ECFD0F26304618
+:1075C000BDE8F08104C5070070CE070038CE070083
+:1075D000496E76616C6964206669726D7761726567
+:1075E00020747970652E0000496E76616C696420A4
+:1075F0006861736820747970652E00004661756C4F
+:1076000074792048572076657273696F6E2E00007A
+:107610004E6F2048572076657273696F6E2E00009A
+:10762000534420726571206E6F74206D65742E0056
+:1076300046572076657273696F6E20746F6F206C89
+:107640006F772E0046572076657273696F6E206DD6
+:10765000697373696E672E000FB438B5040003D1E7
+:1076600010A14220FBF792FE606918B90DA14320DA
+:10767000FBF78CFE206818B90AA14420FBF786FEB0
+:10768000606818B907A14520FBF780FE059900291D
+:1076900005D006A800906A46204600F045F838BCA0
+:1076A0005DF814FB2E2E5C2E2E5C2E2E5C2E2E5C96
+:1076B0002E2E5C65787465726E616C5C66707269A2
+:1076C0006E74665C6E72665F667072696E74662E4A
+:1076D0006300000010B5040003D107A13120FBF7BF
+:1076E00055FEA268002A05D0D4E904032168984712
+:1076F0000020A06010BD00002E2E5C2E2E5C2E2ED1
+:107700005C2E2E5C2E2E5C65787465726E616C5CEE
+:10771000667072696E74665C6E72665F66707269BE
+:107720006E74662E630000002DE9FC4791460C46FE
+:107730005FEA000804D183A140F25220FBF726FE45
+:10774000D8F8140020B97FA14FF41570FBF71EFE86
+:10775000D8F8000020B97BA140F25520FBF716FEB7
+:10776000D8F8040020B977A140F25620FBF70EFEAE
+:10777000002C76D014F8011B39B125290ED04046D3
+:10778000FCF7F2FC20780028F4D198F80C000028CF
+:1077900067D04046BDE8FC47FFF79CBF00200122B0
+:1077A00021782B291BD02D2902D0302908D102E0C5
+:1077B00040F0010001E040F00200641C002AEFD11B
+:1077C00000252A290ED02178A1F130020A2A11D2EF
+:1077D00005EB850201EB4205641C303DF1E740F00A
+:1077E0000400EAE7D9F800100B1DC9F80030096859
+:1077F000641C0D44217800232E290BD114F8011F9D
+:10780000A1F130020A2A05D203EB830201EB420305
+:10781000303BF3E76C290DD068290BD0692921D0C2
+:107820000BDC252918D0582931D063290ED06429C2
+:1078300015D117E014F8011FECE7702969D07329FE
+:1078400032D075291BD0782909D120E0D9F8000061
+:10785000011DC9F8001001784046FCF785FC641C46
+:1078600090E76CE0D9F800100A1DC9F800200968FB
+:10787000CDE900500A224046FDF75CF9EFE7D9F860
+:1078800000100A1DC9F8002009680A2206E0D9F88C
+:1078900000100A1DC9F8002009681022CDE9005027
+:1078A000404603F037FDDAE7D9F8001000270A1D3B
+:1078B000C9F800200E68C00705D112E04046761CCA
+:1078C0007F1CFCF751FC31780029F7D104E020211E
+:1078D00040466D1EFCF748FCBD42C0D9002DF6D1D4
+:1078E000BDE74EB13046F9F7BFFD074604E0202161
+:1078F00040466D1EFCF738FCBD4206D9002DF6D17E
+:1079000003E04046761CFCF72FFC31780029F8D1C3
+:10791000A5E7D9F80000011DC9F80010056830215D
+:107920004046FCF721FC78214046FCF71DFC08206E
+:107930000021CDE90001034610222946B0E7BDE849
+:10794000FC8700002E2E5C2E2E5C2E2E5C2E2E5CD4
+:107950002E2E5C65787465726E616C5C66707269FF
+:107960006E74665C6E72665F667072696E74665F76
+:10797000666F726D61742E63000000002DE9F041A6
+:107980001E4615460F46040003D11DA19E20FBF79D
+:10799000FDFC206818B91AA19F20FBF7F7FC1DB960
+:1079A00017A1A020FBF7F2FC39462046FBF7ECF9C3
+:1079B00040B939462046FBF7E7F918B910A1A320D2
+:1079C000FBF7E4FC60683946026820466A43FBF72F
+:1079D000E4F958B960683946026820466A43FBF703
+:1079E000DCF918B906A1A520FBF7D0FC20683346C6
+:1079F0002A46D0F810C039462046BDE8F04160471D
+:107A00002E2E5C2E2E5C2E2E5C2E2E5C2E2E5C637B
+:107A10006F6D706F6E656E74735C6C6962726172AB
+:107A20006965735C6673746F726167655C6E7266BC
+:107A30005F6673746F726167652E630070B516467A
+:107A40000C46050003D108A15520FBF79FFC1CB98B
+:107A500005A15620FBF79AFC2C6031462846226887
+:107A6000BDE87040104700002E2E5C2E2E5C2E2E9E
+:107A70005C2E2E5C2E2E5C636F6D706F6E656E7467
+:107A8000735C6C69627261726965735C6673746F52
+:107A9000726167655C6E72665F6673746F72616750
+:107AA000652E63002DE9F04128B1016819B1C9695B
+:107AB000BDE8F04108470D4D0D480024461B142732
+:107AC0000DE000BF04EB840005EB8000016829B1E4
+:107AD000C969884710B10120BDE8F081641CB6FB7C
+:107AE000F7F0A042EED80020F6E70000705A002020
+:107AF000845A0020044801214174007A08B1002012
+:107B00007047012070470000A87F0020012801D0A5
+:107B1000032808D10449002201284A7400D000201B
+:107B2000087402F00FBC7047A87F002070B50146B2
+:107B3000022801D0032943D1224C207A00283FD0CB
+:107B4000012831D002282FD11F48002302290068C4
+:107B500002D0032928D119E0E360027912B1012A89
+:107B600022D10BE0D0E90565721B142A00D3142240
+:107B70002A4482614569AA420ED015E00169491C78
+:107B80000161426991420FD1237213E0E268521CF5
+:107B9000E260082A08D9E360237202290AD00D2185
+:107BA000FCF7DDFD02F0C4FB607C28B1BDE870404D
+:107BB00000F030BF0021F3E7BDE8704002F0C2BB27
+:107BC00070BD0000A87F0020005A00202DE9F84376
+:107BD0001D46089F16468846040003D12AA1882026
+:107BE000FBF7D4FB1EB928A18920FBF7CFFB206847
+:107BF00018B925A18A20FBF7C9FB1DB922A18B204A
+:107C0000FBF7C4FB60684068B5FBF0F100FB115165
+:107C100041B1B5FBF0F100FB115018B11AA18E2053
+:107C2000FBF7B4FB4046FBF7A9F838B94046FBF731
+:107C3000A5F818B914A19120FBF7A8FB3046FBF773
+:107C40009DF838B93046FBF799F818B90EA1922083
+:107C5000FBF79CFB2A4641462046FBF79EF848B9B5
+:107C60002A4641462046FBF798F818B906A193200A
+:107C7000FBF78CFB009720682B463246C7684146CD
+:107C80002046B847BDE8F8832E2E5C2E2E5C2E2EA3
+:107C90005C2E2E5C2E2E5C636F6D706F6E656E7445
+:107CA000735C6C69627261726965735C6673746F30
+:107CB000726167655C6E72665F6673746F7261672E
+:107CC000652E630010B501684FF000004A0900D12D
+:107CD000401E01F01F0201219140014204D104A184
+:107CE0004FF4F670FBF752FB4FF0A04010BD0000C0
+:107CF0002E2E5C2E2E5C2E2E5C2E2E5C2E2E5C6D7F
+:107D00006F64756C65735C6E7266785C68616C5CE0
+:107D10006E72665F6770696F2E68000030B5134B36
+:107D2000014600201C6922460AE0D2681579854286
+:107D300005D1401C0A28F6DB4FF0FF3030BD126839
+:107D4000002AF2D1421CF9D0CA6810711A693AB1FE
+:107D5000D268CC68126822601A69D268116030BD9E
+:107D60001961C96800220A6030BD000054910020EA
+:107D70007047FAF743BD704708B5034A00924023A5
+:107D8000024A00F005F808BD3DA80700BC7F0020AE
+:107D9000F0B595B01C4615460F4608461A9E00F0F1
+:107DA0006BFB182109A8F9F754FB0E96CDE909548D
+:107DB0000023082203A9384600F074FB05980690BA
+:107DC000BDF81000ADF81C00BDF81200ADF81E00A3
+:107DD00000208DF821000398082600F003000128F8
+:107DE00002D0022818D032E003983346850AC0F347
+:107DF000C2008DF8200003980FA9C0F38314A200DD
+:107E0000384600F04FFB09A8009006AB22460FA9A8
+:107E1000284600F08DFA1AE00398840DC0F3C200E2
+:107E20008DF82000082C01D2254600E008253346B5
+:107E30002A460FA9384600F035FB2E44641B09ABD7
+:107E400006AA29460FA800F0D9F9002CEAD1384635
+:107E500000F018FB15B0F0BD0A4A012902EBC00082
+:107E600007D0022907D0032907D0042907D0002012
+:107E700070470220704704207047007970474079AE
+:107E80007047000038CE070010B5FFF772FF0421DD
+:107E90000648FFF743FF002803DA05494120FBF7B6
+:107EA00075FA02490120C968487110BD28CE070043
+:107EB00090C907002DE9F04F8DB0FCF76DF918B1AE
+:107EC00000200DB0BDE8F08F7D4E0020B061BFF303
+:107ED0004F8FA6F580547B49A06801900D684FF044
+:107EE0000009284004EB80000AE0B06970B96168BD
+:107EF0000198814201D8A160E2E7284004EB8000AC
+:107F00000C3001A9FCF769FE0028EED1002005AA7B
+:107F1000A046019901EA050308EB8303491CDB68CD
+:107F200042F82030401C01910228F2D3059800F05D
+:107F30000300022802D001284CD0A8E00598502266
+:107F4000810D8A46B2EB905F00D850210C4664F355
+:107F50009F50059008315C4800F045FA070075D045
+:107F600000F08AFA4B46082205A9384600F0C8FA04
+:107F7000019909F1080B2940681A8000001D84420C
+:107F800021D9524D30B1C2B208EB8101201A91467D
+:107F90000C3104E02946E2B2002591462846C4B2DD
+:107FA0005B46384600F0ACFA0BEB090325B12246DC
+:107FB0002946384600F0A4FA01990AF1030001EBC2
+:107FC000900001903BE008EB81015B462246384679
+:107FD0000C31EFE70598C0F38310062800D3062084
+:107FE000059960F38911C1F38310801C059181000C
+:107FF000354800F0F8F9070049D000F03DFA4B464B
+:10800000082205A9384600F07BFA09F10809002486
+:108010000FE001984B4600EA0501401C08EB810186
+:108020000190042238460C3100F06AFA09F1040983
+:10803000641C0598C0F38310A042EAD837B13469B4
+:10804000B06978B1384600F01DFA34E01FE0E0680E
+:108050004079012804D122682046394612689047A9
+:10806000E0680468002CF2D1384600F00BFA0020DA
+:108070008DF800006846FBF7F9F8B06910B901996E
+:10808000C8F808109DF80000FBF73CF913E03469CC
+:1080900005E02168204689688847E0680468002C6C
+:1080A000F7D10B480B49401AC008022101EB0040F0
+:1080B00009A100F06FF8FCF76FF880F0010000E70D
+:1080C00054910020145A0020BCCE0700608100208B
+:1080D00088CE070038CE07004261636B656E64731B
+:1080E00020666C7573686564000000002DE9F84F28
+:1080F0008146264FD01C15468A46800800226946D4
+:108100003E68FBF7D7FFDFF88880B0B3009CA01C67
+:10811000009039683040091A8F003F1DBD4208EBBE
+:10812000800002D82A46514608E03A4651460C30B3
+:10813000F9F776F91648EA1B0AEB07010C30F9F754
+:108140006FF94FEA1947FCF79BFA47EA0042601CB7
+:10815000304008EB8000344008EB8401C260C868FE
+:108160004FF6C07269F3C500904365F39F5020F04D
+:108170000300801C20F00400C86098F8000001E0B3
+:10818000FFF798FE0028FBD1BDE8F88F145A0020B5
+:108190005481002000231A4602F0D4BE08B5012302
+:1081A00000926A4602F0CEFE08BD1CB5CDE9002360
+:1081B00002236A4602F0C6FE1CBD3EB5069C8DE851
+:1081C0001C0003236A4602F0BDFE3EBD7FB5DDE91B
+:1081D00008458DE83C0004236A4602F0B3FE7FBDEB
+:1081E00070B586B00DF1280C9CE870008DE87C001D
+:1081F00005236A4602F0A6FE06B070BD2DE9F047E1
+:108200000E4680461C469246082940D894F80C90A9
+:10821000002020731946104602F030F80025B542C0
+:1082200006D218F805201BA12046FFF715FA03E037
+:108230001AA12046FFF710FA6D1C082DEFD318A1E4
+:108240002046FFF709FA0025B54212D218F805704A
+:108250007E2F08D8F9F7E0F80068C05D10F03E0FF7
+:1082600001D03A4600E02E220EA12046FFF7F4F995
+:1082700003E00DA12046FFF7EFF96D1C082DE3D3B5
+:1082800001222146504601F099FE84F80C90BDE889
+:10829000F0870000202530327800000020202000E8
+:1082A0007C0000002563000020000000064910B596
+:1082B00000200870054800F0E3F8002803D10448C6
+:1082C00000F0A2F9002010BD54810020BCCE0700B0
+:1082D000A8BC070002480349401AC00870470000C4
+:1082E000A8CE070038CE070013B56846FCF760FE3D
+:1082F00008B100201CBD0248009950F831001CBD97
+:1083000038CE070070B5094801250469A0F58050F2
+:10831000057007E0E0684571216820464968884794
+:10832000E0680468002CF5D170BD00005491002075
+:108330002DE9FF4781460C9D00200C462F7B2873BA
+:10834000984616462946184601F098FF072E42D255
+:10835000DFE806F004090F161F2A360049462846B2
+:10836000FFF77AF937E0494628462268FFF774F9A3
+:1083700031E0D4E9002349462846FFF76DF92AE0A9
+:10838000A0680090D4E9002349462846FFF764F925
+:1083900021E0D4E90201CDE90001D4E900234946F6
+:1083A0002846FFF759F916E004F1080007C88DE8E0
+:1083B0000700D4E9002349462846FFF74DF90AE0B3
+:1083C00004F108000FC88DE80F00D4E900234946E6
+:1083D0002846FFF741F900222946404601F0EEFD0C
+:1083E0002F73BDE8FF872DE9F041058A80462D1FD8
+:1083F0004819C01CB0FBF5F0C6B24046FCF76AFE57
+:10840000041E19D00020207101206071E580002732
+:108410002546761EC4F800800BE04046FCF75AFE65
+:1084200060B16179491C6171286005467F1CC0F804
+:108430000080B742F1D32046BDE8F081204600F02D
+:1084400002F80020F8E72DE9F041457901466B1E5E
+:10845000002201E00968521C9A42FBD30F680146D2
+:10846000002605E038460C68FCF79AFE2146761C8B
+:10847000AE42F7D3BDE8F0810121001DFCF703BE39
+:10848000FCF7D6BE10B504460121001DFCF71CFE0A
+:1084900010F0FF0F04D12046BDE81040FFF7D3BF16
+:1084A00010BD00001CB514460122CDE9002401AA2C
+:1084B000FCF710FD0198A04204D003A14FF4807096
+:1084C000FAF764FF1CBD00002E2E5C2E2E5C2E2EB3
+:1084D0005C2E2E5C2E2E5C636F6D706F6E656E74FD
+:1084E000735C6C69627261726965735C6D656D6FF6
+:1084F000626A5C6E72665F6D656D6F626A2E6300A4
+:108500001CB514460022CDE9002401AAFCF7E2FCC8
+:108510000198A04203D002A1F620FAF737FF1CBD54
+:108520002E2E5C2E2E5C2E2E5C2E2E5C2E2E5C6350
+:108530006F6D706F6E656E74735C6C696272617280
+:108540006965735C6D656D6F626A5C6E72665F6DA6
+:10855000656D6F626A2E6300094902220A60BFF3EB
+:108560006F8FBFF34F8F0A1D106006480268002A04
+:10857000FCD000200860BFF36F8FBFF34F8F7047B0
+:1085800004E5014000E40140094A01231360BFF300
+:108590006F8FBFF34F8F0160064801680029FCD040
+:1085A00000201060BFF36F8FBFF34F8F7047000044
+:1085B00004E5014000E4014070B50E4C0123236046
+:1085C000BFF36F8FBFF34F8F00230B4D08E000BF49
+:1085D00051F8236040F823602E68002EFCD05B1C0D
+:1085E0009342F5D300202060BFF36F8FBFF34F8F0E
+:1085F00070BD000004E5014000E40140014800684E
+:10860000C0B270471C0500408268002191608268FA
+:108610001161826851618268D160826851608068AE
+:108620000160704708B5002242504058009008BDD4
+:1086300020B1034909680160002070470E2070478F
+:108640002CBD07002DE9FE4307460E460846FFF7FE
+:10865000EFFF00287CD100240094019406208DF8BF
+:1086600000704FF00108ADF8040002948DF802800C
+:1086700069462020326869DF3649374A891AC908B5
+:10868000012202EB014530B100F09EFA0246284675
+:108690003249FFF783FD00948DF801808DF8024088
+:1086A000019402948DF8034069464020326869DFE6
+:1086B00030B100F089FA024628462949FFF76EFDDD
+:1086C00000948DF80070F720ADF802000194029438
+:1086D00069462320326869DF30B100F075FA02463E
+:1086E00028462049FFF75AFD0094019402948DF822
+:1086F000008069460120326869DF30B100F064FA19
+:10870000024628461849FFF749FD4FF4B060009033
+:10871000019402946946A120326869DF30B100F00B
+:1087200053FA024628461149FFF738FD0094019498
+:1087300002948DF800406946A020326869DF30B1AC
+:1087400000F042FA024628460949FFF727FD0020BB
+:10875000BDE8FE8398CE070038CE070088CB07001F
+:10876000D0CB07001CCC0700E8CA070034CB0700B9
+:1087700094CA07002DE9F0410546076860DF80468E
+:1087800019491A482A68081AC608BA4219D9022093
+:1087900000EB064416A12046FFF7FCFC20463A46B3
+:1087A0001FA12B68FFF701FD4FF08050D0F80C019E
+:1087B0002968800200F10050421A204625A1FFF7E7
+:1087C000EDFCB8F100004FF001040AD000F0FCF914
+:1087D000024604EB06402AA1FFF7E0FC4046BDE854
+:1087E000F0812F480470F9E798CE070038CE0700D3
+:1087F000496E73756666696369656E742052414D92
+:1088000020616C6C6F636174656420666F722074A4
+:10881000686520536F66744465766963652E000051
+:108820004368616E6765207468652052414D20730E
+:1088300074617274206C6F636174696F6E2066720C
+:108840006F6D203078257820746F20307825782E51
+:10885000000000004D6178696D756D2052414D201A
+:1088600073697A6520666F72206170706C696361EC
+:1088700074696F6E20697320307825782E000000AF
+:1088800073645F626C655F656E61626C6528292048
+:1088900072657475726E65642025732E0000000089
+:1088A0006B5A002030B51848ADF5017D00780028DE
+:1088B00026D04FF4FA7400BFADF8004280A9684694
+:1088C00061DF38B105281BD00DF5017DBDE83040D2
+:1088D000FAF78ABB6D460D497DA800F0F1F809E072
+:1088E0007DA800F0D5F8D0E90021284690477DA862
+:1088F00000F024F97DA800F0CBF80028DCD0EFE7E9
+:108900000DF5017D30BD00006B5A002030BD070021
+:10891000F8B5134C2078C0B10120A07001F058FFC9
+:10892000112814D0022001F06FFF00258DF80050AF
+:108930006846FAF79BFC11DF064625709DF800009B
+:10894000FAF7E0FC2EB13046F8BD0820F8BD002053
+:10895000F8BDA57002F016FA032001F055FFF6E706
+:10896000685A00207CB5194C207808B108207CBDDD
+:108970000120A070002001F02BFF112819D0002049
+:1089800001F042FF12480026006801908DF8006057
+:108990006846FAF76BFC0F4901A810DF05000AD002
+:1089A000002020709DF80000FAF7ACFC2DB128469D
+:1089B0007CBD00207CBD0120F3E7A670667002F04C
+:1089C00045FA012001F020FFF3E70000685A00207B
+:1089D000C4BC0700852F07000EB50A49684600F0A1
+:1089E0006FF808E0684600F047F8D0E900108847C3
+:1089F000684600F0A3F8684600F03EF80028F1D180
+:108A00000EBD0000E0BC0700014800787047000080
+:108A1000685A00200548817819B1007818B1FFF72D
+:108A200077BF08207047FFF79DBF0000685A0020FD
+:108A30001FB568464BDF30B1052819D004B0BDE83A
+:108A40001040FAF7D1BA0B4901A800F039F809E053
+:108A500001A800F029F8D0E900210098904701A86A
+:108A600000F06CF801A800F01FF80028E1D0EFE753
+:108A70001FBD00004CBD070010B5040003D1034921
+:108A8000C420FAF783FCA06810BD000040CA0700AC
+:108A900010B5040003D10349C420FAF777FCA0689D
+:108AA00010BD000040CA070010B5040003D10349FF
+:108AB000C420FAF76BFCA06810BD000040CA070094
+:108AC00070B50D46040003D108495020FAF75EFC4A
+:108AD0001DB906495120FAF759FC256028686060E5
+:108AE0002046BDE8704000F003B8000050C5070004
+:108AF00010B5040003D110493320FAF747FC206871
+:108B000018B90D493420FAF741FC606818B90A49D0
+:108B10003520FAF73BFCD4E900104A68904201D1B5
+:108B2000002004E0D0E900239A4202D01046A06061
+:108B300010BD08306060F0E750C5070010B50400B4
+:108B400003D112496320FAF721FC206818B90F49B4
+:108B50006420FAF71BFCA068002815D021688968FA
+:108B60000844A060606818B908497320FAF70EFC41
+:108B7000D4E901014268914206D108306060204684
+:108B8000BDE81040FFF7B4BF10BD000050C507009E
+:108B90000C4A10B502F594730EE0991AC91001EB56
+:108BA000D171491002EBC1010C68844201D90B4616
+:108BB00002E005D201F108029A42EED3002010BD76
+:108BC000486810BD68BA070000B5FFF7E1FF00284C
+:108BD00000D1014800BD000054BA07002DE9F04162
+:108BE00004461348134BC01A0C21B0FBF1F6A069E0
+:108BF0004FF0FF3110F8022C02B92169002011E07A
+:108C000000EB400503EB85052F68974209D14F1C07
+:108C100002D06F688F4204D194E80F00AD68A84776
+:108C200003E0401CB042EBD301202060BDE8F0819E
+:108C30000CCF070000CF070010B5144612680830AB
+:108C4000202A02D248F2145010BD002201F028FF61
+:108C50000028F9D120202060002010BD083001F04C
+:108C6000A7BF083002F064B802480068002800D0AE
+:108C7000012070470004014070B50C46050004D186
+:108C80000F494FF48270FAF781FB24B90C4940F286
+:108C90000510FAF77BFB0B480B49401AC00804216A
+:108CA00001EB004009A1FFF775FA13490320C968D9
+:108CB00088476869FEF726FAFBF77BFD607070BD98
+:108CC000DCC0070050CE070038CE070048616E6454
+:108CD0006C65204E52465F4446555F4F505F4F4291
+:108CE0004A4543545F4352454154452028636F6DC4
+:108CF0006D616E6429000000C859002070B50D46F2
+:108D000020B916494FF49670FAF740FB25B913497C
+:108D100040F22D10FAF73AFB11481249401AC108E7
+:108D2000042000EB014004460FA1FFF733FA194974
+:108D3000081FFEF701FAFBF73CFD6870012805D11A
+:108D40000020FDF7A9FF10B10A20687070BD204611
+:108D5000BDE8704010A1FFF71DBA0000DCC007009D
+:108D600050CE070038CE070048616E646C65204E17
+:108D700052465F4446555F4F505F4F424A45435409
+:108D80005F455845435554452028636F6D6D616EAE
+:108D900064290000D059002057726974696E6720F9
+:108DA00076616C696420696E697420636F6D6D61B2
+:108DB0006E6420746F20666C6173682E0000000082
+:108DC00070B50D46040004D11A494FF48970FAF7C2
+:108DD000DDFA206920B9174940F21310FAF7D6FAE4
+:108DE000A08A20B913494FF48A70FAF7CFFA25B94F
+:108DF000104940F21510FAF7C9FA0F480F49401A06
+:108E0000C008042101EB00400DA1FFF7C3F9A18ABE
+:108E10002069FEF733F9FBF7CCFC68702846FBF7B6
+:108E2000C7F9E168002903D02069BDE87040084710
+:108E300070BD0000DCC0070050CE070038CE070030
+:108E400048616E646C65204E52465F4446555F4FE4
+:108E5000505F4F424A4543545F575249544520287A
+:108E6000636F6D6D616E64290000000030B587B0DE
+:108E70000C46054618221B496846F8F7D1FA207BB4
+:108E80000195194D8DF80000012806D0022815D053
+:108E9000062821D1607B04901EE0A888E880607BD2
+:108EA0000490617CD4F80E0061F31F600590049873
+:108EB000012811D10D48FDF703FF0DE00C480D49C5
+:108EC000401AC008042101EB00400BA1FFF762F932
+:108ED000B4F80D00A880E8806846FDF7E7FB07B00E
+:108EE00030BD0000F8B80700A859002020CE0700C8
+:108EF00040CE070038CE0700536574207265636565
+:108F0000697074206E6F74696600000070B50E465B
+:108F10000B480C49401AC108042000EB01440AA187
+:108F20002046FFF737F9114D204611A1AB6C2A6D91
+:108F3000FFF73BF9A86CB060286D706070BD000051
+:108F400050CE070038CE070048616E646C65204E35
+:108F500052465F4446555F4F505F4352435F47451B
+:108F60005420286461746129000000003C760020D0
+:108F70004F66667365743A25642C204352433A3039
+:108F800078253038780000002DE9F84F0D46074667
+:108F9000374838494FF00409401AC40809EB044027
+:108FA000064635A1FFF7F6F8FEF738F9012101EB87
+:108FB00004444FF0080AA8B17A694FF00308B2B12F
+:108FC00037493848130515D0436DD1F808C013440C
+:108FD00063450FD0204634A1FFF7DCF885F8018007
+:108FE000BDE8F88F204639A1FFF7D4F819E02046F4
+:108FF00044A1F1E7B2F5805F06D9204648A1FFF70A
+:10900000C9F885F80190EBE7436DD1F808C003EB90
+:109010000208E04508D920464A49CDF800C0FFF7CC
+:10902000CCF885F801A0DBE74264C26C03650363FA
+:10903000804682647869002200F6FF70070B48685A
+:1090400039461844FDF740F930B120463EA1FFF7FC
+:10905000A1F805206870C3E7D8F8481000913046A1
+:109060003FA1D8F85030D8F84420FFF7A6F8B7E76A
+:1090700050CE070038CE070048616E646C65204E04
+:1090800052465F4446555F4F505F4F424A454354F6
+:109090005F435245415445202864617461290000B2
+:1090A000C85900203C7600204F626A6563742073C3
+:1090B000697A65206D7573742062652070616765DB
+:1090C00020616C69676E65640000000043616E6E2C
+:1090D0006F74206372656174652064617461206FD0
+:1090E000626A65637420776974686F75742076614D
+:1090F0006C696420696E697420636F6D6D616E6464
+:10910000000000004F626A6563742073697A65200D
+:1091100063616E6E6F7420626520302E0000000067
+:10912000496E76616C69642073697A6520666F7236
+:10913000206F626A6563742028746F6F206C61729F
+:109140006765290068C007004572617365206F700C
+:1091500065726174696F6E206661696C6564000098
+:109160004372656174696E67206F626A656374201B
+:10917000776974682073697A653A2025642E204FD8
+:1091800066667365743A203078253038782C204331
+:1091900052433A2030782530387800002DE9F041EC
+:1091A0000E46074615481649401AC508042000EB2C
+:1091B000054014A1FEF7EEFF1C4CD4E91401626CCB
+:1091C000431A9A420AD0012000EB054018A1FEF78D
+:1091D000ECFF082070700120BDE8F081002161647F
+:1091E000A16CE16460650021384600F035F819494A
+:1091F0000420C96888470020EEE7000050CE070031
+:1092000038CE070048616E646C65204E52465F445C
+:1092100046555F4F505F4F424A4543545F4558455E
+:109220004355544520286461746129003C76002030
+:10923000496E76616C696420646174612E20657882
+:109240007065637465643A2025642C20676F743AF6
+:1092500020256400C8590020F0B5044687B00020DE
+:10926000FEF720FC01002548254A4FF00107A0EB3E
+:1092700002004FEAD0050AD0224A18212046F9F709
+:109280006FFF020037D007EB05401FA131E0182225
+:1092900028496846F8F7C4F82748284E184B174D58
+:1092A000016DEB1A0420DB08B26800EB0345914224
+:1092B00015D1284622A1FEF76DFFD6E90101FDF781
+:1092C000B9FD8DF80100FBF774FA8DF80100D4E9BF
+:1092D0000112684690472648FDF7DEFC05E08DF850
+:1092E0000170D4E90112684690479DF80120284694
+:1092F00020A1FEF753FF07B0F0BD000050CE0700DD
+:1093000038CE0700599207004661696C6564207485
+:109310006F207363686564756C65206F626A65634E
+:109320007420657865637574653A20307825782EE9
+:1093300000000000B8B907003C760020C8590020A2
+:1093400057686F6C65206669726D77617265206918
+:109350006D6167652072656365697665642E20506E
+:109360006F737476616C69646174696E672E000056
+:109370002D950700526571756573742068616E6480
+:109380006C696E6720636F6D706C6574652E20521A
+:109390006573756C743A20307825780038B50D46C1
+:1093A0000C480D49401AC108042000EB0140044656
+:1093B0000AA1FEF7EFFE134813A1826CAA60036DA9
+:1093C0004FF480506B60E86000902046FEF7F5FE99
+:1093D00038BD000050CE070038CE070048616E64EB
+:1093E0006C65204E52465F4446555F4F505F4F427A
+:1093F0004A4543545F53454C4543542028646174A7
+:10940000612900003C760020637263203D203078A3
+:1094100025782C206F6666736574203D2030782592
+:10942000782C206D61785F73697A65203D203078F3
+:10943000257800002DE9F0410E46044626482749CC
+:10944000401AC708042000EB074025A1FEF7A2FE42
+:10945000FDF7E4FE90B12C4DD5E91401401AA18A24
+:109460006A6C084490420BD9012000EB074027A109
+:10947000FEF790FE03207070BDE8F0810820FAE747
+:10948000284A286B526800EB02081F4A20694832BC
+:10949000FAF7A0FE0746E06820B923494FF4F870B8
+:1094A000F9F774FFD4E90331A28A4046FCF7C2FF02
+:1094B00020B1D4E90310BDE8F0410847A18A286B28
+:1094C00008442863A18A286DAF6408442865B76002
+:1094D000286D7060D0E7000050CE070038CE07003E
+:1094E00048616E646C65204E52465F4446555F4F3E
+:1094F000505F4F424A4543545F57524954452028D4
+:1095000064617461290000003C7600205772697420
+:1095100065207265717565737420746F6F206C6F50
+:109520006E670000C8590020DCC0070008480949E0
+:1095300010B5401AC008042101EB004006A1FEF757
+:1095400029FE12490620C968BDE8104008470000FE
+:1095500050CE070038CE0700416C6C20666C6173FA
+:1095600068206F7065726174696F6E7320686176D0
+:109570006520636F6D706C657465642E204446557C
+:1095800020636F6D706C657465642E00C85900208F
+:10959000FEF7B8FEFEF78EFC0028FBD10D4E6425C9
+:1095A0004FF47A47741C3846A0476D1EFAD10A481A
+:1095B0000068C00700D000BEBFF34F8F0648E438F4
+:1095C0000168064A01F4E06111430160BFF34F8F67
+:1095D00000BFFDE760B60700F0ED00E00400FA050B
+:1095E00010B50446084809492246401AC00804211B
+:1095F00001EB004006A1FEF7D1FD2146BDE8104079
+:109600000848FBF7CDBD000040CE070038CE07006C
+:1096100046726565696E67206275666665722025AB
+:1096200070000000A8CE070030B58A1D8B79083184
+:1096300087B0022B33D153888489A3422FD1127A69
+:10964000012A2CD1184C0DF1040C3CCC8CE83C00C8
+:109650000A89ADF80C204A890C3104911249ADF801
+:109660000E208039114C096A0591CDF818D0018A75
+:1096700005AA6088ADDF18B96846FAF7E1FB38B192
+:109680000020ADF8080001A96088B0DF50B106E005
+:1096900040F2FD10ADF8080001A96088B0DF00209D
+:1096A00007B030BD0120FBE710B90700A859002022
+:1096B00070B506468C1DC888B18888B088422DD107
+:1096C0001B48FBF707FD05001A481B49A0EB0100EA
+:1096D0004FEAD00024D0F4210091042101EB004096
+:1096E00063892A4615A1FEF768FD628904F10C0121
+:1096F0002846F7F795FE1822184901A8F7F790FEBB
+:10970000029605956089ADF8180001A8FCF7CEFF18
+:10971000002803D029460648FBF742FD08B070BD7B
+:10972000022101EB00400EA1FEF734FDF6E7000038
+:10973000A8CE070040CE070038CE07004275666607
+:1097400065722025702061637175697265642C20D3
+:109750006C656E20256420282564290020B9070047
+:1097600063616E6E6F7420616C6C6F6361746520F1
+:109770006D656D6F72792062756666657221000095
+:10978000F8B50D4614460646694600F057FA00281B
+:109790000FD0009BB3F5803F0AD2981C834207D8B4
+:1097A000A9780222B2EB911F02D02989814201D20D
+:1097B0000020F8BD2380A11C3046009A00F094FBE5
+:1097C000F8BD114600F0D6B8114600F0E3B8F8B580
+:1097D0000C4615460646694600F030FA00280CD0C3
+:1097E000009A501C904207D3A1780223B3EB911F3B
+:1097F00002D02189814201D20020F8BD294630469D
+:1098000000F072FB009A0021A954F8BD2DE9FF4138
+:109810000C46CE6817460546694600F037FB00281F
+:109820000ED0E06800280BD0A0783A46C0F30110B3
+:1098300002283146684606D000F0DAF801996960DE
+:1098400004B0BDE8F08100F086F8F7E77CB50D467E
+:109850001446694600F08FF9002820D0288908288E
+:1098600006D0042809D002280AD001280CD015E01F
+:10987000DDE90001C4E900010AE00098206006E08B
+:10988000009800B2208002E0009840B22070C1171A
+:10989000DDE9002350405940084301D000207CBD41
+:1098A00001207CBD7CB50D461446694600F0A1F947
+:1098B000002820D02889082807D00021042809D0B2
+:1098C00002280AD001280CD014E0DDE90001C4E927
+:1098D000000109E00098206006E0009880B2208036
+:1098E00002E00098C0B22070DDE9002350405940EA
+:1098F000084301D000207CBD01207CBD7CB50D4615
+:109900001446694600F075F9002821D029890829F4
+:1099100008D00098C21704290BD002290DD00129C4
+:109920000ED014E0DDE90002C4E90002014613464E
+:1099300009E0C3170146206005E001B2218001E083
+:1099400041B22170CB1741405340194301D0002050
+:109950007CBD01207CBD70B50D46064614461146FF
+:10996000284600F0AEFA224629463046BDE870404F
+:1099700000F03EB838B50C460422694600F0B4FA4F
+:10998000002806D09DF80310009861F31F60206046
+:10999000012038BD1CB50C460822694600F0A4FA27
+:1099A000002824D09DF801109DF800209DF8023079
+:1099B000080E42EA012242EA034240EA13409DF8BF
+:1099C00003309DF8041040EA132008439DF8051069
+:1099D00042EA036240EA01209DF8061040EA014095
+:1099E0009DF8071040EA0160C4E9002001201CBD79
+:1099F0002DE9F04F04469DB00020009006460190EE
+:109A00004FF0FF3A0AA800F07DF94FF0010BE9464C
+:109A100082E012AB05AA06A9204600F0C9F850B1B1
+:109A20000AA8059900F07FF960B10B98807810F0D2
+:109A3000300F53D060E09DF84800002870D11DB071
+:109A4000BDE8F08F0598B04242D30B9D0AAE0B984B
+:109A5000807800F00F00082812D0304600F07AF924
+:109A60000B98A842F3D156460599B14230D3D4F8A9
+:109A7000088009919DF8181008910E990D6820E052
+:109A80000B980688F0E729680F682FB1DDE90832E6
+:109A900029462046B84711E011948968DDE908722B
+:109AA000098891420CD1294617A8FBF72BF985F8B4
+:109AB0000CB017AA39461198FAF725FC0028BED039
+:109AC000AD6815B1A1684145DDD0A168414523D1FC
+:109AD0009DF81810204600F043FA1BE00C9840282F
+:109AE0000AD200F01F010BFA01F00C994A0959F84B
+:109AF0002230034349F82230E5682DB10AAB9DF8C6
+:109B0000182020460599A8470AAA9DF81810204653
+:109B1000FAF7F9FB002892D0A06800287FF479AF0B
+:109B2000DDE90B0485780AA800F014F90028F7D1C4
+:109B300015F0300F03D10B98008800B1641CC4B13C
+:109B40000020494605E000BF51F82020521C0ED1EC
+:109B5000401CB0EB541FF7D3600959F8201004F0F3
+:109B60001F00C0F120022AFA02F0814201D0002039
+:109B700065E7012063E71CB50C46694600F039F83B
+:109B8000002814D0DDE90002C10709D051084FEACE
+:109B900030006FEA00026FEA0100C4E9002004E02F
+:109BA00051084FEA3000C4E900014FF001001CBD2C
+:109BB000F8B507460020187008700E4610601C4665
+:109BC00015466946384600F039F801004FF00100AB
+:109BD00009D0009959B1C8082860009800F0070022
+:109BE00030700120F8BDB96809B10020F8BD2070BF
+:109BF000FBE72DE9F8430026884681463446354682
+:109C000004E0402E02D30020BDE8F88369464846B0
+:109C100000F096F90028F7D09DF80070324607F062
+:109C20007F00C10FF7F7E8FB29430443F61D0D46FB
+:109C30003806E6D4C8E900410120E5E7F8B50E464C
+:109C40000746694600F07CF900280AD09DF80040DC
+:109C5000200616D5072504F07F0403E0202D01D34C
+:109C60000020F8BD6946384600F06AF90028F8D0AF
+:109C70009DF8001001F07F00A8400443ED1D080688
+:109C8000ECD401203460F8BD30B45968114AC96879
+:109C9000914208D1D0E901120F48D0E901342343A1
+:109CA00003D00021817030BC704711F8013BA2F154
+:109CB00001021B06F9D4C0E9011201218170074895
+:109CC000074930BC401AC008042101EB004005A13F
+:109CD000FEF764BA40B70700DC59002068CE0700E1
+:109CE00038CE070050423A20496E69742070616393
+:109CF0006B65742064617461206C656E3A20256424
+:109D000000000000C26000230160C0E901138B88DD
+:109D10001A440261B1F906301A44426108880028E9
+:109D200000D00120704770B545680E460446606853
+:109D30000188B14206D1807800F00F00082801D0D8
+:109D4000012070BD204600F005F86068A842EED101
+:109D5000002070BD30B541680A885AB101F1100386
+:109D600043600A8A42B18C780A89C4F30115032D35
+:109D700007D00BE0002030BDC2680168FFF7C2FFCA
+:109D8000F8E79D78C5F30115032D06D00225B5EB44
+:109D9000141F08D14C89624309E08D8804690022B0
+:109DA000641B046103E0B5EB941F00D104228978A1
+:109DB00011F0300F02D18168491C81609C880169D3
+:109DC000214411440161B3F906201144416101208D
+:109DD00030BD30B54168002487B0897801F00F02AA
+:109DE000082A11D08A091ED00222B2EB911F09D194
+:109DF0000269C1F301110229146001D0032901D1C4
+:109E00004069048007B030BD0069056808E02C7324
+:109E100029466846FAF776FF6846FFF7DAFFAD682D
+:109E2000002DF4D1EEE7C1F30111012912D002296E
+:109E3000E6D00329E4D04268917801F00F010729A8
+:109E40000BD0D16881B11289006907B0BDE83040FC
+:109E5000F7F7E6BA41690C70EDE70169D06807B021
+:109E6000BDE8304000F02DB81189006907B0BDE8A9
+:109E70003040F7F7EEBA000010B5034B002408C0DD
+:109E800080E8160010BD00004D41070038B50D46B2
+:109E900004466946FFF7D2FE00280BD0D4E9000241
+:109EA000D4E90213C5E90002C5E902130098814212
+:109EB00001D2002038BDA860A168081AA060012066
+:109EC00038BD00B50A4687B001466846FFF71AFF5D
+:109ED000002807D06846FFF77CFF6846FFF73AFF87
+:109EE0000028F7D107B000BD7FB514460546A9B9D3
+:109EF000124A2868904208D110E01022694628468C
+:109F0000FFF7F2FF002807D0103C102CF5D82246AE
+:109F100069462846FFF7E8FF04B070BDA868A04274
+:109F200001D20020F8E72B682246284698470028EF
+:109F3000F2D0A868001BA8600120EDE74D410700A2
+:109F400010B504468068002809D023680122204605
+:109F50009847002803D0A068401EA060012010BDD3
+:109F600038B5002439B1012912D0022912D00529AF
+:109F70001DD0002038BD0546012269462846FFF75E
+:109F8000B3FF90B19DF800000006F5D4012038BD64
+:109F900008220DE005466946FFF750FE28B1002172
+:109FA0002846009AFFF7A0FF38BD204638BD04229E
+:109FB000BDE838400021FFF797BF000010B50C4600
+:109FC000017A052908D0407A38B1084808A102680A
+:109FD0002046FDF741FB00E01AB106A12046FDF73F
+:109FE0003BFB2046BDE81040FDF774BB445A0020FF
+:109FF000257300000D0A00002DE9FC41804622482F
+:10A0000017460E46C5680A46012441462846FAF717
+:10A01000F1FB70B195F8550068B100F00101C0F393
+:10A02000400243462846CDE9006700F089F848B170
+:10A0300009E0172407E03B4632464146284600F037
+:10A0400027F8F4E70524114D6FB1012C13D005F169
+:10A050002400FBF7D3FE00BFFCF722FDC5F84880C3
+:10A060002046BDE8FC81012C02D0FCF719FDF7E782
+:10A0700001206861F4E7002231464046FAF7AAF869
+:10A08000C5E90960E8E70000DC5900203C760020C3
+:10A090002DE9F041044690F8550094B01D4617464E
+:10A0A000884620B1174940F22730F9F76FF90126A9
+:10A0B000CDE9007643460022214602A8F9F742FF87
+:10A0C00000281CD0D5B1412202A90F48F7F7A8F902
+:10A0D0000F4810490D4D401AC008042101EB004003
+:10A0E0000DA1EE62FEF756F80020286294F8920067
+:10A0F00010B194F8930008B96068A860012014B00A
+:10A10000BDE8F081BCC40700DD7800203C7600206B
+:10A1100068CE070038CE0700496E76616C696461CD
+:10A1200074696E67206F6C64206170706C69636124
+:10A1300074696F6E20696E2062616E6B20302E0034
+:10A140002DE9FF4FA5B0884604461546442113A8C3
+:10A15000329FF7F77EF9442102A8F7F77AF9DDF884
+:10A16000A09058EA050004D13C4940F26130F9F76B
+:10A170000DF93B483B4A801A02224FEAD00A02EB13
+:10A180000A46B8F1000F1ED0A16D289800F01AFE03
+:10A19000002848D02898FAF74BFD4FF0010B20B16A
+:10A1A00030463149FDF7F6FFB5B3A16DCDE9001B8F
+:10A1B0000022214613A8289BF9F7C4FE002832D0BC
+:10A1C000A06D81443F1A8DB10020CDE900704B464F
+:10A1D0004246214602A8F9F7B5FE002823D09DF893
+:10A1E000080018B130462149FDF7D4FF339898B3E1
+:10A1F0001F4EB8F1000F1ED02898FAF719FD18B1BC
+:10A2000006F11800FBF7FAFD412213A91948F7F7E8
+:10A2100007F95DB1AC200AE0FFE70BEB0A401649F5
+:10A22000FDF7B8FF002029B0BDE8F08FA520F0624F
+:10A23000A06D706301E0AA20F0626DB10D4841226B
+:10A2400002A98230F7F7ECF894F8920010B194F874
+:10A25000930008B96068F0600120E4E7BCC407001F
+:10A2600068CE070038CE070078C4070074C3070023
+:10A270003C7600209C780020C0C2070038B5C38817
+:10A280000D46044633B114A0009015A216A128462D
+:10A29000FDF7E2F9217A05291CD0607A48B1A0883F
+:10A2A000FDF7DAFD164951F8202016A12846FDF7E2
+:10A2B000D3F9A0880021FEF717F803461049207A49
+:10A2C000143951F8202001B02846BDE830400EA1D5
+:10A2D000FDF7C2B938BD00001B5B306D0000000007
+:10A2E0001B5B313B33316D0025734C6F677320640A
+:10A2F000726F70706564202825642925730D0A002B
+:10A30000445A0020257300003C25733E2025733AF3
+:10A3100020000000EFF30580C005C00D01D0012032
+:10A320007047EFF3148040F30000401C70470000BA
+:10A33000034802490068FAF779BE0000045A002079
+:10A3400024BA07002DE9F041224C0025224E207A44
+:10A35000012730B92148311D0068FAF772FE3060DC
+:10A3600038B1022020723168087928B101281BD148
+:10A3700013E06560BDE8F081D1E90503C01A142837
+:10A3800000D31420820806D082080869C9681844DE
+:10A39000194429DF05E00122F7E7D1E90301084468
+:10A3A00028DF58B1112812D003213068FAF7D7F905
+:10A3B00025726560BDE8F041FFF7BABF207C002838
+:10A3C000D8D1BDE8F04100210220FDF7AFBB2772D4
+:10A3D000D0E70000A87F0020005A002024BA070020
+:10A3E00010B5074C201DFAF74BFE002806D1607C03
+:10A3F000002803D1BDE81040FFF7A4BF10BD000046
+:10A40000A87F002010B510461A46F7F709F800207B
+:10A4100010BD10B510461A46F7F702F8002010BD1F
+:10A420002DE9F0411E681C461546074621B1012959
+:10A4300018D0052923D119E000202060401C20609D
+:10A44000B0421CD8012229463846FFF74DFD0028AE
+:10A4500006D015F8010B000601D52068EEE70120B3
+:10A46000BDE8F08108200246186002E004200246A0
+:10A47000186029463846BDE8F041FFF735BD002099
+:10A48000EEE770B516460A460446C11C104600F0B9
+:10A490001FFF054661193046C91C00F019FF28440A
+:10A4A00070BD000003B5094A85B0D2E91612CDE9A6
+:10A4B000001207498989ADF8001006A9CDE90210FC
+:10A4C000044869464088AEDF07B000BD90B8070079
+:10A4D000E05E0020A85900200846704708467047F3
+:10A4E0002DE9F047FCF7E8FBDFF8C480D8F830200E
+:10A4F000D8F8347000EB020AB81A411EC1F30B0100
+:10A50000401A00F6FF792B492B48D8F84860081A02
+:10A51000C508042000EB0540044628A1FDF73AFEDB
+:10A5200042F204002F4A8159012000EB0545914277
+:10A5300006D028462CA1FDF72DFE0320BDE8F087AC
+:10A54000D8F830000644B84205D1204633A1FDF7C3
+:10A5500021FE0020F2E7C0B906F500500178142969
+:10A5600001D9416900E000213148B1FBF0F34FF41B
+:10A5700040510A78142A01D9496900E00021B1FB51
+:10A58000F0F220462BA1FDF710FE08234A46314683
+:10A590005046FAF7D5F9040005D0284630A1FDF75A
+:10A5A000F9FD2046CAE7BDE8F0470020FCF774BB80
+:10A5B0003C76002088CE070038CE0700456E7465D3
+:10A5C00072206E72665F626F6F746C6F6164657229
+:10A5D0005F6466755F73645F636F6E74696E7565E3
+:10A5E00000000000DBE5B151536F757263652061B7
+:10A5F00064647265737320646F6573206E6F74207A
+:10A60000636F6E7461696E20612076616C6964208D
+:10A61000536F66744465766963652E005344206108
+:10A620006C726561647920636F7069656400000015
+:10A6300040420F005570646174696E672053442E68
+:10A64000204F6C64205344207665723A2025642C98
+:10A65000204E6577207665723A2025640000000060
+:10A660004661696C656420746F20636F7079206641
+:10A6700069726D776172652E0000000070B50F4839
+:10A680000F49401AC408042000EB04400DA1FDF757
+:10A6900081FDFFF725FF05004FF0010000EB0444AA
+:10A6A00002D020460FA105E0F8F77AFE050004D09D
+:10A6B000204612A1FDF76EFD284670BD88CE07002A
+:10A6C00038CE0700456E746572206E72665F6466F0
+:10A6D000755F73645F626C5F636F6E74696E7565DE
+:10A6E0000000000053442B424C3A20534420636F37
+:10A6F0007079206661696C656400000053442B42E8
+:10A700004C3A20424C20636F7079206661696C6519
+:10A7100064000000F0B50546002003464FF44054A5
+:10A720000C4E4FF6FE7712E0D4F804C0B44505D1C4
+:10A7300055F823C0B4F80CE0F44504D02AB155F81C
+:10A7400023C0BC4501D10120F0BD5B1CDBB28B42B4
+:10A75000EAD3F0BDDBE5B15110B5040003D11A49CD
+:10A760005320F8F713FE4FF44050184940688842D0
+:10A7700021D1218A71B1626904F11400002A94F890
+:10A7800055200BD0042A07D00022BDE81040C9B2E2
+:10A79000FFF7C0BF002010BD0122F6E712B1012A69
+:10A7A00007D1F7E7012904D9C9B20022FFF7B2FFA8
+:10A7B000F0E7012010BD208A10B160690028E9D1BE
+:10A7C00020780028F5D110BD04C50700DBE5B151A4
+:10A7D0003EB504460B496846FEF772F90AE0684642
+:10A7E000FEF74AF9D0E900212046904740B168467B
+:10A7F000FEF7A4F96846FEF73FF90028EFD13EBD09
+:10A8000011203EBDC8BC07003EB504460A49684653
+:10A81000FEF756F909E06846FEF72EF9D0E9002167
+:10A82000204690476846FEF789F96846FEF724F906
+:10A830000028F0D13EBD0000D4BC07002DE9F04156
+:10A840001400884618D000250E4F032608EB05019A
+:10A8500022460020F7F7D4FF0544241A40B938787F
+:10A86000002809D008494FF47A408847761E05D061
+:10A8700001203870002CE9D1BDE8F081002038704B
+:10A88000FAE70000085A0020A1BC07002DE9F041BA
+:10A890000E46074613481449144D401AC4080320B5
+:10A8A00000EB044012A12A68FDF778FC3046F9F766
+:10A8B000AFFC20B919494FF4C170F8F767FD184B88
+:10A8C0003A463146286800F053F8020007D00120CC
+:10A8D00000EB0440BDE8F04112A1FDF75FBCBDE80C
+:10A8E000F081000058CE070038CE0700D85900206C
+:10A8F0004261636B696E672075702073657474695B
+:10A900006E6773207061676520746F206164647284
+:10A9100065737320307825782E00000034C207005C
+:10A92000BC720020436F756C64206E6F742070657C
+:10A9300072666F726D206261636B7570206F662046
+:10A94000626F6F746C6F6164657220736574746993
+:10A950006E677321204572726F723A2030782578C5
+:10A960000000000000225821001DF9F733BC000050
+:10A970002DE9F04715464FF460771E46894680461C
+:10A980003A46F6F778FD224A224B0421D21AD20821
+:10A9900001EB02440028204617D01FA1FDF7FAFB67
+:10A9A0002046424621A1FDF7F9FB00220121404645
+:10A9B000FBF78AFC174A164B01219A1AD20801EBC1
+:10A9C000024458B1204621A11DE02949FDF7E2FBD0
+:10A9D0000DB10020A8470020BDE8F08726B9254921
+:10A9E00040F25D10F8F7D2FC3A4649463046F6F799
+:10A9F00017FD2B463A4631464046FBF71BFD002823
+:10AA0000EAD020461CA1FDF7C5FB0320E4E70000C7
+:10AA100058CE070038CE070057726974696E6720F8
+:10AA200073657474696E67732E2E2E0045726173A0
+:10AA3000696E67206F6C642073657474696E6773E8
+:10AA40002061743A2030782530387800436F756C77
+:10AA500064206E6F74206572617365207468652070
+:10AA600073657474696E6773207061676521000097
+:10AA7000E8C1070034C20700436F756C64206E6F35
+:10AA80007420777269746520746865204446552087
+:10AA900073657474696E6773207061676521000067
+:10AAA00070B516460D46040007D035B1206C8022E3
+:10AAB00000213828225403D307E00E2070BD215412
+:10AAC000401C3828FBD30BE02154401C4028FBD30A
+:10AAD0002146084600F096F838212046F6F7B9FCE2
+:10AAE000216CD4E912304A0FC9003834591850414A
+:10AAF000C4E90410227CE2710A0A42EA0062A271EF
+:10AB00000A0C42EA00426271020242EA11602071BC
+:10AB10006069E070010AA170010C6170000E04F818
+:10AB200038092146084600F06DF84FF00002EEB1FA
+:10AB3000E06ED100C840A854A36ECB40A8180371A2
+:10AB4000636ECB400372236ECB400373E36DCB4047
+:10AB50000374A36DCB400375636DCB400376236D07
+:10AB6000CB40521C0377042AE2D31FE01823504243
+:10AB7000216D03EBC000C140A954666DC640A91801
+:10AB80000E71A66DC6400E72E66DC6400E73266E3F
+:10AB9000C6400E74666EC6400E75A66EC6400E7632
+:10ABA000E66EC640521C0E77042AE0D3002070BD2A
+:10ABB000A8B100210164C0E912110A4901650A49DE
+:10ABC00041650A4981650A49C1650A4901660A4920
+:10ABD00041660A4981660A49C166002070470E2015
+:10ABE0007047000067E6096A85AE67BB72F36E3C8A
+:10ABF0003AF54FA57F520E518C68059BABD9831F48
+:10AC000019CDE05B2DE9F04FC8B0002213466F4626
+:10AC1000CC181B1D2568E4782DBA25F0FF052543C7
+:10AC200047F82250521C102AF2D31BE007EB820196
+:10AC300051F8083C4FEA734484EAF34484EA9324CD
+:10AC400051F83C3C4FEAF31585EAB34585EAD30356
+:10AC5000234451F81C4C51F8401C2144194447F836
+:10AC60002210521C402AE1D3036D4793416D469157
+:10AC7000846D4594C26D44929246026E4392456E35
+:10AC80004295A946856E4195C66E4096B34600260C
+:10AC90004FEAB21787EAF22787EA726C02EA0907DD
+:10ACA00025EA020887EA0807BC44204F57F82680A7
+:10ACB00008EB0B07BC445DF82670AB460CEB070EA7
+:10ACC0004FEAB30787EA733787EAB35C81EA040780
+:10ACD0004D4601EA040891461F400AEB0E02A246C7
+:10ACE00087EA08070C46BC441946761C0EEB0C0399
+:10ACF000402ECDD3479E33440365469B194441659E
+:10AD000045992144816544995144C1654399114451
+:10AD100001664299494441664199294481664099B6
+:10AD20005944C16648B0BDE8F08F000090BB0700F1
+:10AD30002DE9F04116460F46040004D006B317B1C2
+:10AD40000025A8461AE00E20BDE8F081216C785D50
+:10AD50006054206C401C206440280ED121460846D7
+:10AD6000FFF750FFD4E912014FF40072801841F14F
+:10AD70000001C4F84080C4E912016D1CB542E5D35E
+:10AD80000020E1E710B51620F7F7E6FF48B10C48C0
+:10AD900082684FF4800152B1016821F480010160A2
+:10ADA00010BDBDE8104042F20100F8F71DB94FF0A8
+:10ADB000E020C0F88011BFF34F8FBFF36F8F10BD3D
+:10ADC000B07D00202DE9F04100F500521A481B4FDC
+:10ADD0000123C01B174CC008556803EB0040A54277
+:10ADE00001D017491FE04D1EC5F30B05491B41F665
+:10ADF000FF75966829448E4201D2124913E04FF440
+:10AE000040514D68A54211D10C78102C01D9096927
+:10AE100000E000211478102C01D9126900E0002212
+:10AE2000914203D00849FDF7B5F900231846BDE863
+:10AE3000F0810000DBE5B15168CE070038CE070095
+:10AE400024C40700B8C3070004C3070010B51620C8
+:10AE5000F7F782FFA0B1114890F8000440090828D4
+:10AE600011D20121814011F0EC0F0CD00C48826806
+:10AE70004FF480016AB1016841F48001016010BDA6
+:10AE800042F2010001E042F20200BDE81040F8F792
+:10AE9000ABB84FF0E020C0F8001110BD16E000E0A4
+:10AEA000B07D00202DE9F0471E46924689460546B2
+:10AEB000040C089FF9F7E4FB8046FDF70BFAA0426B
+:10AEC00004D80FA140F2A910F8F760FA44EA08414B
+:10AED000741C1B483C4000EB84023E4000EB8600A3
+:10AEE000D160C16865F3C5016AF3891169F39F21D7
+:10AEF00021F00301491C21F00401C160BDE8F08785
+:10AF00002E2E5C2E2E5C2E2E5C2E2E5C2E2E5C6346
+:10AF10006F6D706F6E656E74735C6C696272617276
+:10AF20006965735C6C6F675C7372635C6E72665F9D
+:10AF30006C6F675F66726F6E74656E642E6300007F
+:10AF4000548100202DE9FC47814616481746884663
+:10AF500005681C46012201A91846F9F7ABF8124E04
+:10AF6000B8B101998B1C00200AE000BF57F82020DF
+:10AF700003EA050C06EB8C0C401C5B1CCCF80C2087
+:10AF8000A042F3D30B462246414648460095FFF7C0
+:10AF900089FF307802E000BFFCF78CFF0028FBD16E
+:10AFA000BDE8FC87145A0020548100202DE9FF41A0
+:10AFB000324800F15C01826B6846FEF75DFF304F5E
+:10AFC0009DE8070007F11C032F4C83E80700194692
+:10AFD0002C48C8600020A0706060A0604FF44771EA
+:10AFE000A7F54070F6F735FAA7F54072274902F544
+:10AFF0004770FEF7B0FC2649264A891AC908012283
+:10B0000002EB014578B1A07838B1A7F5407090F80F
+:10B010006C110029017826D041B128461EA100BF3D
+:10B02000FDF7B8F828E0284623A1F9E790F8720167
+:10B0300010B3D4E901122C4E6846FEF71DFF9DE8BF
+:10B040000F001C3787E80F004FF4B2713046F6F757
+:10B0500000FA3246254906F5D470FEF77CFC30B97B
+:10B06000284623A1DCE739B1807928B12F4E012091
+:10B07000E66004B0BDE8F0810020FAE73C760020ED
+:10B08000BC7C0020899C0700DC59002060B80700C8
+:10B0900068CE070038CE070048616E646C65723A6E
+:10B0A00020496E76616C696420696E697420636FF3
+:10B0B0006D6D616E642E000048616E646C65723A5D
+:10B0C00020496E76616C69642070726F746F636F73
+:10B0D0006C20627566666572206D5F70625F737466
+:10B0E0007265616D00000000307B002040B70700F2
+:10B0F00048616E646C65723A20496E76616C696471
+:10B100002070726F746F636F6C2062756666657213
+:10B11000206D5F70625F73747265616D2028696E67
+:10B12000697420636F6D6D616E642900C4790020BD
+:10B130002DE9F0410F460546234824492A46401A86
+:10B14000C008042101EB004021A1FDF727F8B7F169
+:10B15000807F03D324498F20F8F718F9962F03D264
+:10B1600021499020F8F712F96FF07F40874200D212
+:10B1700038461E4ED6F804150144381A21F07F4493
+:10B18000411E6860952902D29630963C68602D7BFE
+:10B19000042D03D314497720F8F7F8F806EB85005F
+:10B1A000C0F8404512494FF4F86088474FF4A0704A
+:10B1B00000EB85013046FDF735FA4FF48030A840AA
+:10B1C000C6F80403BDE8F08188CE070038CE07003A
+:10B1D00074696D65725F6163746976617465202856
+:10B1E000307825782900000054BE07000040024056
+:10B1F000B1B6070070B5174E3078002829D116482F
+:10B2000000680125C0F3004008B914480560144CDB
+:10B210004FF480712046FDF705FA4FF4A0712046E7
+:10B22000FDF700FA4FF4A2712046FDF7FBF90D4A35
+:10B230000020A02182F800140A4A1021203AC2F806
+:10B240000011C4F80805A56025600220C4F80403B5
+:10B25000357070BD7059002018040040080000408F
+:10B260000040024024E000E070B515460E4604465A
+:10B27000FFF7C0FF314620462560BDE87040FFF76C
+:10B2800057BF000010B5044609480A492246401A33
+:10B29000C008042101EB004007A1FCF77FFF217BE0
+:10B2A0004FF4803088400949C1F8080310BD000000
+:10B2B00088CE070038CE070074696D65725F7374BD
+:10B2C0006F70202830782578290000000040024067
+:10B2D0000870020A4A70020C8A70000EC8700420BE
+:10B2E0007047000010B50248F9F7C1FE002010BDFC
+:10B2F000FC59002010B514210448F6F7AAF80448B8
+:10B300000068F9F76DFE002010BD0000A87F002046
+:10B3100024BA07002DE9F05F8346DDE90A4A994621
+:10B3200090460D460846012703E000BFB0FBF8F049
+:10B330007F1C4045FAD2B94500D94F465FEACA7032
+:10B3400012D18CB15FEA8A7002D5B9F1000F01D039
+:10B35000202607E0302605E031465846641EF8F7FF
+:10B3600003FF0CB1A742F7D35FF00106B9F1010F5B
+:10B3700002D9A9F1010903E0B5FBF6F0404502D37B
+:10B3800006FB08F6F2E7DFF83C9000BFB5FBF6F0ED
+:10B3900000FB165519F800105846F8F7E5FEB6FB05
+:10B3A000F8F6002EF2D15FEACA7009D0002C07D05F
+:10B3B000A74205D220215846641EF8F7D5FEF5E7CE
+:10B3C000BDE8F09FE8B907002DE9F04108460124E7
+:10B3D0001646254600212B460A46FAF719FD0C4968
+:10B3E0000C4A891ACF0830B105EB07400AA1FCF7D7
+:10B3F000D1FE042409E0FAF7F1FC02463060042093
+:10B4000000EB07400BA1FCF7C9FE2046BDE8F08128
+:10B4100068CE070038CE070043616E277420666946
+:10B420006E6420726F6F6D20666F7220757064613C
+:10B430007465000057726974652061646472657395
+:10B44000732073657420746F20307825303878004D
+:10B450002DE9F0411C4B1D4F0F2600240125DB1B5D
+:10B4600090F85520DB0805EB03450AB1042A03D107
+:10B4700090F86430012B06D0D30707D090F85630EF
+:10B48000012B02D002E0846E0DE0846D92070AD594
+:10B4900090F85C20012A06D1026E0D48C0F5FC230D
+:10B4A0009A4204D814443CB101260C6008E02846B6
+:10B4B00008A1FCF77AFE042628460EA1FCF76AFED6
+:10B4C0003046BDE8F081000068CE070038CE0700A6
+:10B4D00000100700424C2073697A652028256429F2
+:10B4E000206F766572206C696D6974202825642947
+:10B4F00000000000496E6974207061636B65742000
+:10B50000646F6573206E6F7420636F6E7461696E13
+:10B510002076616C6964206669726D77617265205E
+:10B5200073697A650000000030B1006805498842FF
+:10B5300005D048F20250704748F201507047002091
+:10B54000704700006E52464870B5FDF78DFB00282D
+:10B5500011D00020084A094B094C0121166801FA54
+:10B5600000F52E4203D004EB8005C5F80036401CE0
+:10B57000C0B20728F2D370BD080501403546526EAF
+:10B58000000001400748084910B5401AC0080321CF
+:10B5900001EB004005A1FCF7FDFDBDE81040FFF701
+:10B5A000D3BF000038CE070038CE0700496E74655F
+:10B5B000726E616C20666565640000000020704753
+:10B5C000002070472DE9FC4180461C4617460E4678
+:10B5D0000C48089DF9F754FD10B11120BDE8FC811D
+:10B5E000A20839463046FCF7E7FF0648F9F73FFD69
+:10B5F00033463A4601214046CDE90045F9F794F833
+:10B600000020EBE7FC5900202DE9F84F114D88464A
+:10B6100081461E4617466946DDF828A02868F9F7D6
+:10B62000FAFC040013D01C21F5F713FF0020207151
+:10B63000C4F80090C4E90486C4E902A769462868F2
+:10B64000F9F70AFDFEF7CCFE0020BDE8F88F0420D4
+:10B65000FBE7000024BA0700000000000000000023
+:10B660000338FDD8704700007EF8C9F6120F4CD79A
+:10B670009208C17183F5768FE216ECBA29939A7419
+:10B6800003F32B069BFC932EF7111725792DB9D6C2
+:10B69000BE74B76C6731C8341D64FD04B795B1DC66
+:10B6A000017F21F1461AF08B00000000000000002D
+:10B6B0000338FDD8704700005D8C0700638C0700DD
+:10B6C000398C070020000000780000000000000016
+:10B6D0004800280000204000B917070000000000C3
+:10B6E0000100010000000000010000000000000057
+:10B6F0000200050001000000220000000000000020
+:10B700000000000000000000000000000000000039
+:10B710000100010000000000010000000000000026
+:10B7200002000500010000004200000000000000CF
+:10B730000000000000000000000000000000000009
+:10B74000010011000400FCFF0400000000000000E4
+:10B75000020011000400FCFF0400000000000000D3
+:10B76000030021000400FCFF0400100000000000A2
+:10B77000040011000100FFFF0100000000000000B4
+:10B78000050011000200FEFF0400000000000000A0
+:10B79000060011000400FCFF04000000000000008F
+:10B7A000070011000400FCFF04000000000000007E
+:10B7B000080017000200FEFF24000000E0B60700AA
+:10B7C000090010000100FFFF01000000DCB60700C7
+:10B7D0000A0027000200FEFF4400030010B7070024
+:10B7E0000000000000000000000000000000000059
+:10B7F000010011000100FFFF010000000000000037
+:10B80000020017000200FEFF6401000040B70700BD
+:10B810000000000000000000000000000000000028
+:10B82000010007000000000068010000F0B70700F9
+:10B830000200010000000000010000000000000004
+:10B8400003000500010000004200000000000000AD
+:10B8500000000000000000000000000000000000E8
+:10B86000010017000400FCFF68010000F0B70700AA
+:10B87000020017000400FCFFAC01000020B8070024
+:10B8800000000000000000000000000000000000B8
+:10B89000001103000011130002000000010000006D
+:10B8A0000338FDD870470C000C000000580200005F
+:10B8B0000200000000000000020000000000000084
+:10B8C000A45E00200900000000000000000000004D
+:10B8D000010000000000000028000000000000003F
+:10B8E0000000000000010000000001000000000056
+:10B8F0000000000000000000000000000000000048
+:10B90000E535070000000000000000000000000016
+:10B910000200000000000100000000000000000024
+:10B920000800000000000000E5350700E195070071
+:10B930000000000000000000040000000000000003
+:10B9400000000000000000000000000000000000F7
+:10B9500000000000000000000000000000000000E7
+:10B96000F4000000000000001800000000000000CB
+:10B9700000000000000000000000000000000000C7
+:10B9800000000000000000000000000000000000B7
+:10B99000170000000000000050EADA308883B89FEA
+:10B9A000604F15F30000C98E020000000000000087
+:10B9B0000000000000000000040000000000000083
+:10B9C0000000000000000000000000000000000077
+:10B9D0000001000000000000000000000000000066
+:10B9E00000000000000000003031323334353637BB
+:10B9F000383941424344454600100000040000002D
+:10BA000001000000F14A0700E5B2070005A40700A5
+:10BA1000C5B5070095460700D9A40700BDB50700C6
+:10BA2000114C0700BC7D0020001000000400000045
+:10BA300001000000FD4A0700F5B2070013A407004B
+:10BA400009B60700DD460700DDA40700C1B5070001
+:10BA5000214C0700556E6B6E6F776E206572726FAA
+:10BA60007220636F64650000000000001CC90700BD
+:10BA700001000000C8C7070002000000BCC50700A5
+:10BA8000030000003CC807000400000090C8070045
+:10BA90000500000070C70700060000000CC7070083
+:10BAA0000700000078C807000800000084C70700EE
+:10BAB00009000000E8C707000A00000004C90700E9
+:10BAC0000B000000A4C507000C0000009CC7070085
+:10BAD0000D0000006CC907000E00000068C80700D8
+:10BAE0000F000000A4C8070010000000D8C807001D
+:10BAF0001100000080C907001200000054C90700AF
+:10BB000013000000F0C807008000000024C70700F1
+:10BB10008100000060C607008200000020C6070008
+:10BB20008300000000C60700840000003CC6070038
+:10BB30008500000048C707008600000050C80700C5
+:10BB400090000000ECC6070091000000E0C507006F
+:10BB500092000000B0C7070000820000B8C80700CC
+:10BB60000182000004C807000282000020C807000C
+:10BB7000008400007CC607000184000028C907007B
+:10BB800002840000C4C6070003840000A0C60700AA
+:10BB9000982F8A4291443771CFFBC0B5A5DBB5E938
+:10BBA0005BC25639F111F159A4823F92D55E1CABAC
+:10BBB00098AA07D8015B8312BE853124C37D0C553A
+:10BBC000745DBE72FEB1DE80A706DC9B74F19BC182
+:10BBD000C1699BE48647BEEFC69DC10FCCA10C2472
+:10BBE0006F2CE92DAA84744ADCA9B05CDA88F97656
+:10BBF00052513E986DC631A8C82703B0C77F59BFC0
+:10BC0000F30BE0C64791A7D55163CA0667292914EB
+:10BC1000850AB72738211B2EFC6D2C4D130D385388
+:10BC200054730A65BB0A6A762EC9C281852C72924A
+:10BC3000A1E8BFA24B661AA8708B4BC2A3516CC778
+:10BC400019E892D1240699D685350EF470A06A10B1
+:10BC500016C1A419086C371E4C774827B5BCB03400
+:10BC6000B30C1C394AAAD84E4FCA9C5BF36F2E689E
+:10BC7000EE828F746F63A5781478C8840802C78C2D
+:10BC8000FAFFBE90EB6C50A4F7A3F9BEF27871C630
+:10BC9000797D0700777D0700717D070000000000B7
+:10BCA0000338FDD870470000BC8000207F000000F2
+:10BCB0003C810020D8CE0700E0CE07000000000045
+:10BCC0000000000000100201B4BC0700C4BC070063
+:10BCD00008000000ECBC0700FCBC070008000000E6
+:10BCE000FCBC07000CBD070008000000F8CE0700F0
+:10BCF00000CF07000000000000000000E8CE0700B1
+:10BD0000F8CE070000000000000000000000000066
+:10BD1000000000000000000000000000D0CE07007E
+:10BD2000D8CE070000000000000000006859002085
+:10BD30000CBD07002CBD070008000000E0CE070086
+:10BD4000E8CE070000000000000000003CBD070036
+:10BD50004CBD070008000000FD980700A5980700EB
+:10BD60004D980700C3970700C99707008197070000
+:10BD7000CF9707000D9807000000000000404040EA
+:10BD800040404040404041414141414040404040AE
+:10BD9000404040404040404040404040400502025A
+:10BDA0000202020202020202020202020220202019
+:10BDB0002020202020202002020202020202909075
+:10BDC0009090909010101010101010101010101073
+:10BDD00010101010101010100202020202028888C7
+:10BDE00088888888080808080808080808080808D3
+:10BDF00008080808080808080202020240000000BB
+:10BE00007DBD07002E2E5C2E2E5C2E2E5C2E2E5C11
+:10BE10002E2E5C636F6D706F6E656E74735C6C69F3
+:10BE2000627261726965735C626F6F746C6F61647A
+:10BE300065725C6E72665F626F6F746C6F61646571
+:10BE4000725F6170705F73746172745F66696E6156
+:10BE50006C2E63002E2E5C2E2E5C2E2E5C2E2E5C05
+:10BE60002E2E5C636F6D706F6E656E74735C6C69A3
+:10BE7000627261726965735C626F6F746C6F61642A
+:10BE800065725C6E72665F626F6F746C6F61646521
+:10BE9000725F6466755F74696D6572732E6300000E
+:10BEA0002E2E5C2E2E5C2E2E5C2E2E5C2E2E5C6397
+:10BEB0006F6D706F6E656E74735C6C6962726172C7
+:10BEC0006965735C626F6F746C6F616465725C6EE0
+:10BED00072665F626F6F746C6F616465725F6677C4
+:10BEE0005F61637469766174696F6E2E6300000030
+:10BEF00043524320636F6D7075746174696F6E2077
+:10BF00006661696C656420666F7220636F70696535
+:10BF100064206170703A20737263206372633A2008
+:10BF20003078253038782C20726573206372633A3C
+:10BF300020307825303878004120536F667444658E
+:10BF40007669636520686173206A75737420626521
+:10BF5000656E206163746976617465642E2049742E
+:10BF60002773206C696B656C79207468617420613B
+:10BF70006E206170706C69636174696F6E2077699F
+:10BF80006C6C20636F6D6520696D6D6564696174AB
+:10BF9000656C7900526563656976656420424C453D
+:10BFA0005F47415454535F4556545F455843484199
+:10BFB0004E47455F4D54555F5245515545535420AA
+:10BFC00028726571756573743A2025642C2072653A
+:10BFD000706C793A202564292E0000002E2E5C2EEC
+:10BFE0002E5C2E2E5C2E2E5C2E2E5C636F6D706F81
+:10BFF0006E656E74735C6C69627261726965735CA4
+:10C00000626F6F746C6F616465725C626C655F64B3
+:10C0100066755C6E72665F6466755F626C652E63E2
+:10C02000000000006E72665F6673746F7261676510
+:10C030005F777269746528616464723D25702C2095
+:10C040007372633D25702C206C656E3D2564206203
+:10C0500079746573292C2071756575652075736118
+:10C0600067653A20256400004372656174696E67F4
+:10C0700020746865206F626A6563742077697468EC
+:10C080002073697A652030782530387820776F758D
+:10C090006C64206F766572666C6F77206669726D6E
+:10C0A000776172652073697A652E204F66667365C5
+:10C0B000742069732030782530387820616E6420D0
+:10C0C0006669726D776172652073697A652069733C
+:10C0D000203078253038782E000000002E2E5C2E7F
+:10C0E0002E5C2E2E5C2E2E5C2E2E5C636F6D706F80
+:10C0F0006E656E74735C6C69627261726965735CA3
+:10C10000626F6F746C6F616465725C6466755C6E9F
+:10C1100072665F6466755F7265715F68616E646C9C
+:10C1200065722E6300000000526573657474696E59
+:10C130006720626F6F746C6F6164657220736574E1
+:10C1400074696E67732073696E6365206E656974C8
+:10C15000686572207468652073657474696E6773AE
+:10C160002070616765206E6F72207468652062615F
+:10C17000636B7570206172652076616C696420283C
+:10C18000435243206572726F72292E005265737498
+:10C190006F72696E672073657474696E6773206669
+:10C1A000726F6D206261636B75702073696E636579
+:10C1B000207468652073657474696E67732070619C
+:10C1C000676520636F6E74656E747320617265209D
+:10C1D000696E76616C6964202843524320657272EF
+:10C1E0006F72292E0000000044657374696E6174DB
+:10C1F000696F6E2073657474696E67732061726510
+:10C20000206964656E746963616C20746F20736F5C
+:10C21000757263652C207772697465206E6F742067
+:10C220006E65656465642E20536B697070696E6716
+:10C230002E0000002E2E5C2E2E5C2E2E5C2E2E5CF0
+:10C240002E2E5C636F6D706F6E656E74735C6C69BF
+:10C25000627261726965735C626F6F746C6F616446
+:10C2600065725C6466755C6E72665F6466755F734A
+:10C27000657474696E67732E630000002E2E5C2E49
+:10C280002E5C2E2E5C2E2E5C2E2E5C636F6D706FDE
+:10C290006E656E74735C6C69627261726965735C01
+:10C2A000626F6F746C6F616465725C6466755C6EFE
+:10C2B00072665F6466755F7574696C732E630000E7
+:10C2C0004D616A6F722053442075706461746520FB
+:10C2D000627574206E6F20424C2E2041626F727422
+:10C2E00020746F2061766F696420696E636170618C
+:10C2F0006369746174696E672074686520424C2EAE
+:10C3000000000000546865206E657720536F6674E6
+:10C31000446576696365206973206F6620612064D7
+:10C320006966666572656E742066616D696C7920F8
+:10C330007468616E207468652070726573656E74D0
+:10C3400020536F66744465766963652E20436F6D74
+:10C350007061746962696C6974792063616E6E6F73
+:10C36000742062652067756172616E746565642E04
+:10C3700000000000426F6F742076616C6964617424
+:10C38000696F6E206F6620626F6F746C6F61646599
+:10C3900072206973206E6F7420737570706F727481
+:10C3A000656420616E642077696C6C206265206929
+:10C3B000676E6F7265642E0054686520536F6674F3
+:10C3C0004465766963652073697A6520696E2074B7
+:10C3D000686520696E666F20737472756374206976
+:10C3E0007320746F6F20736D616C6C20636F6D7060
+:10C3F0006172656420776974682074686520736968
+:10C400007A65207265706F7274656420696E20743D
+:10C41000686520696E697420636F6D6D616E642E4E
+:10C420000000000054686520536F667444657669A7
+:10C43000636520646F6573206E6F7420636F6E7424
+:10C4400061696E20746865206D61676963206E752F
+:10C450006D626572206964656E74696679696E677C
+:10C46000206974206173206120536F66744465767F
+:10C470006963652E00000000496E76616C69646135
+:10C4800074696E67206170702062656361757365A1
+:10C4900020697420697320696E636F6D70617469BF
+:10C4A000626C6520776974682074686520536F66D4
+:10C4B000744465766963652E000000002E2E5C2EA4
+:10C4C0002E5C2E2E5C2E2E5C2E2E5C636F6D706F9C
+:10C4D0006E656E74735C6C69627261726965735CBF
+:10C4E000626F6F746C6F616465725C6466755C6EBC
+:10C4F00072665F6466755F76616C69646174696FAA
+:10C500006E2E63002E2E5C2E2E5C2E2E5C2E2E5C4C
+:10C510002E2E5C636F6D706F6E656E74735C6C69EC
+:10C52000627261726965735C626F6F746C6F616473
+:10C5300065725C6466755C6E72665F6466755F7674
+:10C5400065725F76616C69646174696F6E2E6300F9
+:10C550002E2E5C2E2E5C2E2E5C2E2E5C2E2E5C63E0
+:10C560006F6D706F6E656E74735C6C696272617210
+:10C570006965735C6578706572696D656E74616C10
+:10C580005F73656374696F6E5F766172735C6E7200
+:10C59000665F73656374696F6E5F697465722E633D
+:10C5A000000000004E52465F4552524F525F494EC6
+:10C5B00056414C49445F4441544100004E52465F4D
+:10C5C0004552524F525F534F465444455649434596
+:10C5D0005F4E4F545F454E41424C454400000000C1
+:10C5E0004E52465F4552524F525F46454154555256
+:10C5F000455F4E4F545F454E41424C45440000005C
+:10C600004E52465F4552524F525F4D555445585F0A
+:10C61000554E4C4F434B5F4641494C45440000004A
+:10C620004E52465F4552524F525F4D555445585FEA
+:10C630004C4F434B5F4641494C4544004E52465F88
+:10C640004552524F525F4D555445585F434F4E44EB
+:10C650005F494E49545F4641494C45440000000043
+:10C660004E52465F4552524F525F4D555445585FAA
+:10C67000494E49545F4641494C4544004E52465F3D
+:10C680004552524F525F424C455F495053505F52A2
+:10C69000585F504B545F5452554E434154454400EB
+:10C6A0004E52465F4552524F525F424C455F495091
+:10C6B00053505F504545525F52454A4543544544A7
+:10C6C000000000004E52465F4552524F525F424CAE
+:10C6D000455F495053505F4C494E4B5F444953436B
+:10C6E0004F4E4E4543544544000000004E52465FB5
+:10C6F0004552524F525F4150495F4E4F545F494D32
+:10C70000504C454D454E5445440000004E52465F46
+:10C710004552524F525F4E4F545F535550504F52F7
+:10C72000544544004E52465F4552524F525F4D4F62
+:10C7300044554C455F4E4F545F494E495449414C16
+:10C74000495A4544000000004E52465F4552524F40
+:10C75000525F4D4F44554C455F414C524541445901
+:10C760005F494E495449414C495A45440000000034
+:10C770004E52465F4552524F525F4E4F545F464FA6
+:10C78000554E44004E52465F4552524F525F494EFD
+:10C7900056414C49445F5354415445004E52465F04
+:10C7A0004552524F525F444154415F53495A4500EC
+:10C7B0004E52465F4552524F525F494F5F50454E71
+:10C7C00044494E47000000004E52465F4552524FCA
+:10C7D000525F5356435F48414E444C45525F4D496A
+:10C7E0005353494E470000004E52465F4552524F48
+:10C7F000525F494E56414C49445F4C454E47544860
+:10C80000000000004E52465F4552524F525F445264
+:10C81000565F5457495F4552525F414E41434B006A
+:10C820004E52465F4552524F525F4452565F5457E4
+:10C83000495F4552525F444E41434B004E52465F62
+:10C840004552524F525F494E5445524E414C0000A2
+:10C850004E52465F4552524F525F53544F524147DA
+:10C86000455F46554C4C00004E52465F4552524F74
+:10C87000525F4E554C4C00004E52465F4552524F4F
+:10C88000525F494E56414C49445F504152414D0020
+:10C890004E52465F4552524F525F4E4F5F4D454D8F
+:10C8A000000000004E52465F4552524F525F464FC5
+:10C8B0005242494444454E004E52465F4552524F03
+:10C8C000525F4452565F5457495F4552525F4F562C
+:10C8D000455252554E0000004E52465F4552524F4F
+:10C8E000525F494E56414C49445F41444452000016
+:10C8F0004E52465F4552524F525F5245534F55522A
+:10C90000434553004E52465F4552524F525F494E87
+:10C9100056414C49445F464C414753004E52465F96
+:10C9200053554343455353004E52465F4552524F71
+:10C93000525F424C455F495053505F4348414E4E11
+:10C94000454C5F414C52454144595F455849535409
+:10C95000530000004E52465F4552524F525F434FC4
+:10C960004E4E5F434F554E54000000004E52465FFE
+:10C970004552524F525F54494D454F5554000000A7
+:10C980004E52465F4552524F525F42555359000036
+:10C990002E2E5C2E2E5C2E2E5C2E2E5C2E2E5C639C
+:10C9A0006F6D706F6E656E74735C6C6962726172CC
+:10C9B0006965735C6C6F675C7372635C6E72665FF3
+:10C9C0006C6F675F64656661756C745F6261636BF1
+:10C9D000656E64732E6300007761726E696E670026
+:10C9E00064656275670000001B5B313B33306D008E
+:10C9F0001B5B306D000000001B5B313B33316D0071
+:10CA00001B5B313B33326D001B5B313B33336D00BD
+:10CA10001B5B313B33346D001B5B313B33356D00A9
+:10CA20001B5B313B33366D001B5B313B33376D0095
+:10CA3000696E666F000000006572726F7200000020
+:10CA40002E2E5C2E2E5C2E2E5C2E2E5C2E2E5C63EB
+:10CA50006F6D706F6E656E74735C6C69627261721B
+:10CA60006965735C6578706572696D656E74616C1B
+:10CA70005F73656374696F6E5F766172735C6E720B
+:10CA8000665F73656374696F6E5F697465722E6843
+:10CA90000000000073645F626C655F6366675F73CC
+:10CAA000657428292072657475726E65642025731B
+:10CAB000207768656E20617474656D7074696E6747
+:10CAC00020746F2073657420424C455F4741545475
+:10CAD000535F4346475F534552564943455F43487A
+:10CAE000414E4745442E000073645F626C655F638E
+:10CAF00066675F73657428292072657475726E6548
+:10CB000064202573207768656E20617474656D708C
+:10CB100074696E6720746F2073657420424C455FA2
+:10CB2000434F4D4D4F4E5F4346475F56535F5555FC
+:10CB300049442E0073645F626C655F6366675F7370
+:10CB4000657428292072657475726E65642025737A
+:10CB5000207768656E20617474656D7074696E67A6
+:10CB600020746F2073657420424C455F47415454D4
+:10CB7000535F4346475F415454525F5441425F53B1
+:10CB8000495A452E0000000073645F626C655F6364
+:10CB900066675F73657428292072657475726E65A7
+:10CBA00064202573207768656E20617474656D70EC
+:10CBB00074696E6720746F2073657420424C455F02
+:10CBC000434F4E4E5F4346475F4741502E000000A3
+:10CBD00073645F626C655F6366675F736574282961
+:10CBE0002072657475726E656420257320776865A0
+:10CBF0006E20617474656D7074696E6720746F2047
+:10CC000073657420424C455F4741505F4346475F20
+:10CC1000524F4C455F434F554E542E0073645F6234
+:10CC20006C655F6366675F7365742829207265743D
+:10CC300075726E6564202573207768656E20617457
+:10CC400074656D7074696E6720746F2073657420ED
+:10CC5000424C455F434F4E4E5F4346475F4741540A
+:10CC6000542E00006E72665F626F6F746C6F616449
+:10CC700065725F77647400006E72665F6466755FEC
+:10CC8000626C65006E72665F6466755F666C617388
+:10CC9000680000006E72665F6466755F7265715F42
+:10CCA00068616E646C6572006E72665F6466755F63
+:10CCB00073657474696E6773000000006E72665F5E
+:10CCC0006466755F73657474696E67735F737663AA
+:10CCD000690000006E72665F6466755F76616C69FC
+:10CCE000646174696F6E00006E72665F6466755F82
+:10CCF0007665725F76616C69646174696F6E00005D
+:10CD00006D656D5F6D6E6772000000006E72665F2C
+:10CD10006673746F72616765000000007274745FFF
+:10CD20006C6F675F6261636B656E64006170700059
+:10CD30006E72665F736468006E72665F7364685FCC
+:10CD4000626C65006E72665F7364685F736F630028
+:10CD500008200001FFFFFFFFFFFFFFFFFFFFFFFFB6
+:10CD600000000000000000000000000001000000C2
+:10CD7000FFFFFFFF512563FCC2CAB9F3849E17A7CA
+:10CD8000ADFAE6BCFFFFFFFFFFFFFFFF0000000062
+:10CD9000FFFFFFFF96C298D84539A1F4A033EB2DD1
+:10CDA000817D0377F240A463E5E6BCF847422CE1BD
+:10CDB000F2D1176BF551BF376840B6CBCE5E316B01
+:10CDC0005733CE2B169E0F7C4AEBE78E9B7F1AFEC5
+:10CDD000E242E34F4B60D2273E3CCE3BF6B053CC11
+:10CDE000B0061D65BC86987655BDEBB3E7933AAAAD
+:10CDF000D835C65A65160700FF2607001525070017
+:10CE00000CCF0700685900201C0100003A2D0700D4
+:10CE100028D00700845A00207C5700004A2D0700C4
+:10CE2000E13707000537070090BC0700000000004D
+:10CE30001CCD07000C5A002064CC0700000004043D
+:10CE400078CC07000000040484CC07000000040430
+:10CE500094CC070000000404A8CC070000000404E0
+:10CE6000BCCC070000000404D4CC0700000004047C
+:10CE7000E8CC07000000040400CD0700000000001B
+:10CE80000CCD0700000004042CCD070000000404B2
+:10CE900030CD07000000030338CD07000000030376
+:10CEA00044CD070000000303B8590020F45E0020C1
+:10CEB000055F0020085F0020F4000000205A0020D9
+:10CEC000185A0020205A0020FC7F00201800000083
+:10CED000D538070000000000F57A070000000000C8
+:10CEE0002D7B070000000000A5880700000000005F
+:10CEF000318A0700000000000D7B070000000000E1
+:10CF000000000000030000004D6807000000000062
+:10CF1000000000000000000080590020905900200F
+:10CF20000000000000000000000000000000000001
+:10CF300000000000000000000000000000000000F1
+:10CF4000010000000000000000000000FF00FFFFE3
+:10CF500000000000000000000000000000000000D1
+:10CF600000000000000000000000000001000000C0
+:10CF700000000000000000000000000000E00700CA
+:10CF800000000000000000000000000000000000A1
+:10CF90000000000000000000000000000000000091
+:10CFA0000000000000000000000000000000000081
+:10CFB00000000000FF000000FF0300000000000070
+:10CFC0000000000000000000000000000000000061
+:10CFD000000000000000000038CA0700D8C90700A0
+:10CFE00030CA0700E0C90700F0C90700E8C9070018
+:10CFF000F8C9070000CA070008CA070010CA0700DE
+:10D0000018CA070020CA070028CA0700000000004D
+:10D010000090D0030000000000000000F54407006D
+:08D020000010000000000800F0
+:020000041000EA
+:0410140000100700C1
+:020000041000EA
+:0410180000E00700ED
+:0400000500071201DD
+:00000001FF

+ 19 - 0
central_and_peripheral_secure_bootloader_debug/arm5_no_packs/_build/nrf52832_xxaa_s132.sct

@@ -0,0 +1,19 @@
+; *************************************************************
+; *** Scatter-Loading Description File generated by uVision ***
+; *************************************************************
+
+LR_IROM1 0x00071000 0x0000D000  {    ; load region size_region
+  ER_IROM1 0x00071000 0x0000D000  {  ; load address = execution address
+   *.o (RESET, +First)
+   *(InRoot$$Sections)
+   .ANY (+RO)
+   .ANY (+XO)
+  }
+  RW_IRAM1 0x20005968 0x0000A634  {  ; RW data
+   .ANY (+RW +ZI)
+  }
+  RW_IRAM2 0x2000FF9C UNINIT 0x00000064  {
+   .ANY (+RW +ZI)
+  }
+}
+

+ 12 - 0
central_and_peripheral_secure_bootloader_debug/arm5_no_packs/dfu_public_key.c

@@ -0,0 +1,12 @@
+
+/* This file was automatically generated by nrfutil on 2021-02-03 (YY-MM-DD) at 11:36:58 */
+
+#include "stdint.h"
+#include "compiler_abstraction.h"
+
+/** @brief Public key used to verify DFU images */
+__ALIGN(4) const uint8_t pk[64] =
+{
+    0x7e, 0xf8, 0xc9, 0xf6, 0x12, 0x0f, 0x4c, 0xd7, 0x92, 0x08, 0xc1, 0x71, 0x83, 0xf5, 0x76, 0x8f, 0xe2, 0x16, 0xec, 0xba, 0x29, 0x93, 0x9a, 0x74, 0x03, 0xf3, 0x2b, 0x06, 0x9b, 0xfc, 0x93, 0x2e,
+    0xf7, 0x11, 0x17, 0x25, 0x79, 0x2d, 0xb9, 0xd6, 0xbe, 0x74, 0xb7, 0x6c, 0x67, 0x31, 0xc8, 0x34, 0x1d, 0x64, 0xfd, 0x04, 0xb7, 0x95, 0xb1, 0xdc, 0x01, 0x7f, 0x21, 0xf1, 0x46, 0x1a, 0xf0, 0x8b
+};

+ 158 - 0
central_and_peripheral_secure_bootloader_debug/arm5_no_packs/main.c

@@ -0,0 +1,158 @@
+/**
+ * Copyright (c) 2016 - 2020, Nordic Semiconductor ASA
+ *
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without modification,
+ * are permitted provided that the following conditions are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright notice, this
+ *    list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form, except as embedded into a Nordic
+ *    Semiconductor ASA integrated circuit in a product or a software update for
+ *    such product, must reproduce the above copyright notice, this list of
+ *    conditions and the following disclaimer in the documentation and/or other
+ *    materials provided with the distribution.
+ *
+ * 3. Neither the name of Nordic Semiconductor ASA nor the names of its
+ *    contributors may be used to endorse or promote products derived from this
+ *    software without specific prior written permission.
+ *
+ * 4. This software, with or without modification, must only be used with a
+ *    Nordic Semiconductor ASA integrated circuit.
+ *
+ * 5. Any software provided in binary form under this license must not be reverse
+ *    engineered, decompiled, modified and/or disassembled.
+ *
+ * THIS SOFTWARE IS PROVIDED BY NORDIC SEMICONDUCTOR ASA "AS IS" AND ANY EXPRESS
+ * OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+ * OF MERCHANTABILITY, NONINFRINGEMENT, AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED. IN NO EVENT SHALL NORDIC SEMICONDUCTOR ASA OR CONTRIBUTORS BE
+ * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+ * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ */
+/** @file
+ *
+ * @defgroup bootloader_secure_ble main.c
+ * @{
+ * @ingroup dfu_bootloader_api
+ * @brief Bootloader project main file for secure DFU.
+ *
+ */
+
+#include <stdint.h>
+#include "boards.h"
+#include "nrf_mbr.h"
+#include "nrf_bootloader.h"
+#include "nrf_bootloader_app_start.h"
+#include "nrf_bootloader_dfu_timers.h"
+#include "nrf_dfu.h"
+#include "nrf_log.h"
+#include "nrf_log_ctrl.h"
+#include "nrf_log_default_backends.h"
+#include "app_error.h"
+#include "app_error_weak.h"
+#include "nrf_bootloader_info.h"
+#include "nrf_delay.h"
+
+static void on_error(void)
+{
+    NRF_LOG_FINAL_FLUSH();
+
+#if NRF_MODULE_ENABLED(NRF_LOG_BACKEND_RTT)
+    // To allow the buffer to be flushed by the host.
+    nrf_delay_ms(100);
+#endif
+#ifdef NRF_DFU_DEBUG_VERSION
+    NRF_BREAKPOINT_COND;
+#endif
+    NVIC_SystemReset();
+}
+
+
+void app_error_handler(uint32_t error_code, uint32_t line_num, const uint8_t * p_file_name)
+{
+    NRF_LOG_ERROR("%s:%d", p_file_name, line_num);
+    on_error();
+}
+
+
+void app_error_fault_handler(uint32_t id, uint32_t pc, uint32_t info)
+{
+    NRF_LOG_ERROR("Received a fault! id: 0x%08x, pc: 0x%08x, info: 0x%08x", id, pc, info);
+    on_error();
+}
+
+
+void app_error_handler_bare(uint32_t error_code)
+{
+    NRF_LOG_ERROR("Received an error: 0x%08x!", error_code);
+    on_error();
+}
+
+/**
+ * @brief Function notifies certain events in DFU process.
+ */
+static void dfu_observer(nrf_dfu_evt_type_t evt_type)
+{
+    switch (evt_type)
+    {
+        case NRF_DFU_EVT_DFU_FAILED:
+        case NRF_DFU_EVT_DFU_ABORTED:
+        case NRF_DFU_EVT_DFU_INITIALIZED:
+//            bsp_board_init(BSP_INIT_LEDS);
+//            bsp_board_led_on(BSP_BOARD_LED_0);
+//            bsp_board_led_on(BSP_BOARD_LED_1);
+//            bsp_board_led_off(BSP_BOARD_LED_2);
+            break;
+        case NRF_DFU_EVT_TRANSPORT_ACTIVATED:
+//            bsp_board_led_off(BSP_BOARD_LED_1);
+//            bsp_board_led_on(BSP_BOARD_LED_2);
+            break;
+        case NRF_DFU_EVT_DFU_STARTED:
+            break;
+        default:
+            break;
+    }
+}
+
+
+/**@brief Function for application main entry. */
+int main(void)
+{
+    uint32_t ret_val;
+
+    // Must happen before flash protection is applied, since it edits a protected page.
+    nrf_bootloader_mbr_addrs_populate();
+
+    // Protect MBR and bootloader code from being overwritten.
+    ret_val = nrf_bootloader_flash_protect(0, MBR_SIZE);
+    APP_ERROR_CHECK(ret_val);
+    ret_val = nrf_bootloader_flash_protect(BOOTLOADER_START_ADDR, BOOTLOADER_SIZE);
+    APP_ERROR_CHECK(ret_val);
+
+    (void) NRF_LOG_INIT(nrf_bootloader_dfu_timer_counter_get);
+    NRF_LOG_DEFAULT_BACKENDS_INIT();
+
+    NRF_LOG_INFO("Inside main");
+
+    ret_val = nrf_bootloader_init(dfu_observer);
+    APP_ERROR_CHECK(ret_val);
+
+    NRF_LOG_FLUSH();
+
+    NRF_LOG_ERROR("After main, should never be reached.");
+    NRF_LOG_FLUSH();
+
+    APP_ERROR_CHECK_BOOL(false);
+}
+
+/**
+ * @}
+ */

+ 58 - 0
central_and_peripheral_secure_bootloader_debug/arm5_no_packs/nrf_crypto_allocator.h

@@ -0,0 +1,58 @@
+/**
+ * Copyright (c) 2019 - 2020, Nordic Semiconductor ASA
+ *
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without modification,
+ * are permitted provided that the following conditions are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright notice, this
+ *    list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form, except as embedded into a Nordic
+ *    Semiconductor ASA integrated circuit in a product or a software update for
+ *    such product, must reproduce the above copyright notice, this list of
+ *    conditions and the following disclaimer in the documentation and/or other
+ *    materials provided with the distribution.
+ *
+ * 3. Neither the name of Nordic Semiconductor ASA nor the names of its
+ *    contributors may be used to endorse or promote products derived from this
+ *    software without specific prior written permission.
+ *
+ * 4. This software, with or without modification, must only be used with a
+ *    Nordic Semiconductor ASA integrated circuit.
+ *
+ * 5. Any software provided in binary form under this license must not be reverse
+ *    engineered, decompiled, modified and/or disassembled.
+ *
+ * THIS SOFTWARE IS PROVIDED BY NORDIC SEMICONDUCTOR ASA "AS IS" AND ANY EXPRESS
+ * OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+ * OF MERCHANTABILITY, NONINFRINGEMENT, AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED. IN NO EVENT SHALL NORDIC SEMICONDUCTOR ASA OR CONTRIBUTORS BE
+ * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+ * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ */
+#ifndef NRF_CRYPTO_ALLOCATOR_H__
+#define NRF_CRYPTO_ALLOCATOR_H__
+
+#include "nrf_assert.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* Crypto library in bootloader case does not use dynamic allocation */
+#define NRF_CRYPTO_ALLOC(size) NULL; ASSERT(0)
+#define NRF_CRYPTO_ALLOC_ON_STACK(size) NULL; ASSERT(0)
+#define NRF_CRYPTO_FREE(ptr) (void)ptr;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* NRF_CRYPTO_ALLOCATOR_H__ */

Різницю між файлами не показано, бо вона завелика
+ 113 - 0
central_and_peripheral_secure_bootloader_debug/arm5_no_packs/secure_bootloader_ble_s132_pca10040_debug.uvguix.Administrator


+ 1529 - 0
central_and_peripheral_secure_bootloader_debug/arm5_no_packs/secure_bootloader_ble_s132_pca10040_debug.uvoptx

@@ -0,0 +1,1529 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
+<ProjectOpt xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="project_optx.xsd">
+
+  <SchemaVersion>1.0</SchemaVersion>
+
+  <Header>### uVision Project, (C) Keil Software</Header>
+
+  <Extensions>
+    <cExt>*.c</cExt>
+    <aExt>*.s*; *.src; *.a*</aExt>
+    <oExt>*.obj; *.o</oExt>
+    <lExt>*.lib</lExt>
+    <tExt>*.txt; *.h; *.inc</tExt>
+    <pExt>*.plm</pExt>
+    <CppX>*.cpp</CppX>
+    <nMigrate>0</nMigrate>
+  </Extensions>
+
+  <DaveTm>
+    <dwLowDateTime>0</dwLowDateTime>
+    <dwHighDateTime>0</dwHighDateTime>
+  </DaveTm>
+
+  <Target>
+    <TargetName>nrf52832_xxaa_s132</TargetName>
+    <ToolsetNumber>0x4</ToolsetNumber>
+    <ToolsetName>ARM-ADS</ToolsetName>
+    <TargetOption>
+      <CLKADS>64000000</CLKADS>
+      <OPTTT>
+        <gFlags>1</gFlags>
+        <BeepAtEnd>1</BeepAtEnd>
+        <RunSim>0</RunSim>
+        <RunTarget>1</RunTarget>
+        <RunAbUc>0</RunAbUc>
+      </OPTTT>
+      <OPTHX>
+        <HexSelection>1</HexSelection>
+        <FlashByte>65535</FlashByte>
+        <HexRangeLowAddress>0</HexRangeLowAddress>
+        <HexRangeHighAddress>0</HexRangeHighAddress>
+        <HexOffset>0</HexOffset>
+      </OPTHX>
+      <OPTLEX>
+        <PageWidth>79</PageWidth>
+        <PageLength>66</PageLength>
+        <TabStop>8</TabStop>
+        <ListingPath>.\_build\</ListingPath>
+      </OPTLEX>
+      <ListingPage>
+        <CreateCListing>1</CreateCListing>
+        <CreateAListing>1</CreateAListing>
+        <CreateLListing>1</CreateLListing>
+        <CreateIListing>0</CreateIListing>
+        <AsmCond>1</AsmCond>
+        <AsmSymb>1</AsmSymb>
+        <AsmXref>0</AsmXref>
+        <CCond>1</CCond>
+        <CCode>0</CCode>
+        <CListInc>0</CListInc>
+        <CSymb>0</CSymb>
+        <LinkerCodeListing>0</LinkerCodeListing>
+      </ListingPage>
+      <OPTXL>
+        <LMap>1</LMap>
+        <LComments>1</LComments>
+        <LGenerateSymbols>1</LGenerateSymbols>
+        <LLibSym>1</LLibSym>
+        <LLines>1</LLines>
+        <LLocSym>1</LLocSym>
+        <LPubSym>1</LPubSym>
+        <LXref>0</LXref>
+        <LExpSel>0</LExpSel>
+      </OPTXL>
+      <OPTFL>
+        <tvExp>1</tvExp>
+        <tvExpOptDlg>0</tvExpOptDlg>
+        <IsCurrentTarget>1</IsCurrentTarget>
+      </OPTFL>
+      <CpuCode>5</CpuCode>
+      <DebugOpt>
+        <uSim>0</uSim>
+        <uTrg>1</uTrg>
+        <sLdApp>1</sLdApp>
+        <sGomain>1</sGomain>
+        <sRbreak>1</sRbreak>
+        <sRwatch>1</sRwatch>
+        <sRmem>1</sRmem>
+        <sRfunc>1</sRfunc>
+        <sRbox>1</sRbox>
+        <tLdApp>1</tLdApp>
+        <tGomain>1</tGomain>
+        <tRbreak>1</tRbreak>
+        <tRwatch>1</tRwatch>
+        <tRmem>1</tRmem>
+        <tRfunc>0</tRfunc>
+        <tRbox>1</tRbox>
+        <tRtrace>0</tRtrace>
+        <sRSysVw>1</sRSysVw>
+        <tRSysVw>1</tRSysVw>
+        <sRunDeb>0</sRunDeb>
+        <sLrtime>0</sLrtime>
+        <bEvRecOn>1</bEvRecOn>
+        <bSchkAxf>0</bSchkAxf>
+        <bTchkAxf>0</bTchkAxf>
+        <nTsel>4</nTsel>
+        <sDll></sDll>
+        <sDllPa></sDllPa>
+        <sDlgDll></sDlgDll>
+        <sDlgPa></sDlgPa>
+        <sIfile></sIfile>
+        <tDll></tDll>
+        <tDllPa></tDllPa>
+        <tDlgDll></tDlgDll>
+        <tDlgPa></tDlgPa>
+        <tIfile></tIfile>
+        <pMon>Segger\JL2CM3.dll</pMon>
+      </DebugOpt>
+      <TargetDriverDllRegistry>
+        <SetRegEntry>
+          <Number>0</Number>
+          <Key>ARMRTXEVENTFLAGS</Key>
+          <Name>-L70 -Z18 -C0 -M0 -T1</Name>
+        </SetRegEntry>
+        <SetRegEntry>
+          <Number>0</Number>
+          <Key>DLGTARM</Key>
+          <Name>(1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0)</Name>
+        </SetRegEntry>
+        <SetRegEntry>
+          <Number>0</Number>
+          <Key>ARMDBGFLAGS</Key>
+          <Name></Name>
+        </SetRegEntry>
+        <SetRegEntry>
+          <Number>0</Number>
+          <Key>DLGUARM</Key>
+          <Name>d</Name>
+        </SetRegEntry>
+        <SetRegEntry>
+          <Number>0</Number>
+          <Key>JL2CM3</Key>
+          <Name>-U408001579 -O78 -S2 -ZTIFSpeedSel5000 -A0 -C0 -JU1 -JI127.0.0.1 -JP0 -RST0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -TB1 -TFE0 -FO15 -FD20000000 -FC2000 -FN2 -FF0nrf52xxx.flm -FS00 -FL0200000 -FP0($$Device:nRF52832_xxAA$Flash\nrf52xxx.flm) -FF1nrf52xxx_uicr.flm -FS110001000 -FL11000 -FP1($$Device:nRF52832_xxAA$Flash\nrf52xxx_uicr.flm)</Name>
+        </SetRegEntry>
+        <SetRegEntry>
+          <Number>0</Number>
+          <Key>UL2CM3</Key>
+          <Name>UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0nrf52xxx -FS00 -FL0200000 -FP0($$Device:nRF52832_xxAA$Flash\nrf52xxx))</Name>
+        </SetRegEntry>
+      </TargetDriverDllRegistry>
+      <Breakpoint>
+        <Bp>
+          <Number>0</Number>
+          <Type>0</Type>
+          <LineNumber>146</LineNumber>
+          <EnabledFlag>1</EnabledFlag>
+          <Address>478396</Address>
+          <ByteObject>0</ByteObject>
+          <HtxType>0</HtxType>
+          <ManyObjects>0</ManyObjects>
+          <SizeOfObject>0</SizeOfObject>
+          <BreakByAccess>0</BreakByAccess>
+          <BreakIfRCount>1</BreakIfRCount>
+          <Filename>D:\Git_Project\shoes\smart_shoes\nRF5_SDK_17.0.0_9d13099\examples\Shoes_just_traj_20200126\secure_bootloader\main.c</Filename>
+          <ExecCommand></ExecCommand>
+          <Expression>\\nrf52832_xxaa_s132\../../main.c\146</Expression>
+        </Bp>
+        <Bp>
+          <Number>1</Number>
+          <Type>0</Type>
+          <LineNumber>85</LineNumber>
+          <EnabledFlag>1</EnabledFlag>
+          <Address>484162</Address>
+          <ByteObject>0</ByteObject>
+          <HtxType>0</HtxType>
+          <ManyObjects>0</ManyObjects>
+          <SizeOfObject>0</SizeOfObject>
+          <BreakByAccess>0</BreakByAccess>
+          <BreakIfRCount>1</BreakIfRCount>
+          <Filename>..\..\..\..\..\components\libraries\bootloader\dfu\nrf_dfu.c</Filename>
+          <ExecCommand></ExecCommand>
+          <Expression>\\nrf52832_xxaa_s132\../../../../../components/libraries/bootloader/dfu/nrf_dfu.c\85</Expression>
+        </Bp>
+      </Breakpoint>
+      <Tracepoint>
+        <THDelay>0</THDelay>
+      </Tracepoint>
+      <DebugFlag>
+        <trace>0</trace>
+        <periodic>0</periodic>
+        <aLwin>1</aLwin>
+        <aCover>0</aCover>
+        <aSer1>0</aSer1>
+        <aSer2>0</aSer2>
+        <aPa>0</aPa>
+        <viewmode>1</viewmode>
+        <vrSel>0</vrSel>
+        <aSym>0</aSym>
+        <aTbox>0</aTbox>
+        <AscS1>0</AscS1>
+        <AscS2>0</AscS2>
+        <AscS3>0</AscS3>
+        <aSer3>0</aSer3>
+        <eProf>0</eProf>
+        <aLa>0</aLa>
+        <aPa1>0</aPa1>
+        <AscS4>0</AscS4>
+        <aSer4>0</aSer4>
+        <StkLoc>0</StkLoc>
+        <TrcWin>0</TrcWin>
+        <newCpu>0</newCpu>
+        <uProt>0</uProt>
+      </DebugFlag>
+      <LintExecutable></LintExecutable>
+      <LintConfigFile></LintConfigFile>
+      <bLintAuto>0</bLintAuto>
+      <bAutoGenD>0</bAutoGenD>
+      <LntExFlags>0</LntExFlags>
+      <pMisraName></pMisraName>
+      <pszMrule></pszMrule>
+      <pSingCmds></pSingCmds>
+      <pMultCmds></pMultCmds>
+      <pMisraNamep></pMisraNamep>
+      <pszMrulep></pszMrulep>
+      <pSingCmdsp></pSingCmdsp>
+      <pMultCmdsp></pMultCmdsp>
+      <DebugDescription>
+        <Enable>1</Enable>
+        <EnableFlashSeq>1</EnableFlashSeq>
+        <EnableLog>0</EnableLog>
+        <Protocol>2</Protocol>
+        <DbgClock>10000000</DbgClock>
+      </DebugDescription>
+    </TargetOption>
+  </Target>
+
+  <Target>
+    <TargetName>flash_s132_nrf52_7.0.1_softdevice</TargetName>
+    <ToolsetNumber>0x4</ToolsetNumber>
+    <ToolsetName>ARM-ADS</ToolsetName>
+    <TargetOption>
+      <CLKADS>64000000</CLKADS>
+      <OPTTT>
+        <gFlags>1</gFlags>
+        <BeepAtEnd>1</BeepAtEnd>
+        <RunSim>0</RunSim>
+        <RunTarget>1</RunTarget>
+        <RunAbUc>0</RunAbUc>
+      </OPTTT>
+      <OPTHX>
+        <HexSelection>1</HexSelection>
+        <FlashByte>65535</FlashByte>
+        <HexRangeLowAddress>0</HexRangeLowAddress>
+        <HexRangeHighAddress>0</HexRangeHighAddress>
+        <HexOffset>0</HexOffset>
+      </OPTHX>
+      <OPTLEX>
+        <PageWidth>79</PageWidth>
+        <PageLength>66</PageLength>
+        <TabStop>8</TabStop>
+        <ListingPath>.\_build\</ListingPath>
+      </OPTLEX>
+      <ListingPage>
+        <CreateCListing>1</CreateCListing>
+        <CreateAListing>1</CreateAListing>
+        <CreateLListing>1</CreateLListing>
+        <CreateIListing>0</CreateIListing>
+        <AsmCond>1</AsmCond>
+        <AsmSymb>1</AsmSymb>
+        <AsmXref>0</AsmXref>
+        <CCond>1</CCond>
+        <CCode>0</CCode>
+        <CListInc>0</CListInc>
+        <CSymb>0</CSymb>
+        <LinkerCodeListing>0</LinkerCodeListing>
+      </ListingPage>
+      <OPTXL>
+        <LMap>1</LMap>
+        <LComments>1</LComments>
+        <LGenerateSymbols>1</LGenerateSymbols>
+        <LLibSym>1</LLibSym>
+        <LLines>1</LLines>
+        <LLocSym>1</LLocSym>
+        <LPubSym>1</LPubSym>
+        <LXref>0</LXref>
+        <LExpSel>0</LExpSel>
+      </OPTXL>
+      <OPTFL>
+        <tvExp>0</tvExp>
+        <tvExpOptDlg>0</tvExpOptDlg>
+        <IsCurrentTarget>0</IsCurrentTarget>
+      </OPTFL>
+      <CpuCode>5</CpuCode>
+      <DebugOpt>
+        <uSim>0</uSim>
+        <uTrg>1</uTrg>
+        <sLdApp>1</sLdApp>
+        <sGomain>1</sGomain>
+        <sRbreak>1</sRbreak>
+        <sRwatch>1</sRwatch>
+        <sRmem>1</sRmem>
+        <sRfunc>1</sRfunc>
+        <sRbox>1</sRbox>
+        <tLdApp>1</tLdApp>
+        <tGomain>1</tGomain>
+        <tRbreak>1</tRbreak>
+        <tRwatch>1</tRwatch>
+        <tRmem>1</tRmem>
+        <tRfunc>0</tRfunc>
+        <tRbox>1</tRbox>
+        <tRtrace>0</tRtrace>
+        <sRSysVw>1</sRSysVw>
+        <tRSysVw>1</tRSysVw>
+        <sRunDeb>0</sRunDeb>
+        <sLrtime>0</sLrtime>
+        <bEvRecOn>1</bEvRecOn>
+        <bSchkAxf>0</bSchkAxf>
+        <bTchkAxf>0</bTchkAxf>
+        <nTsel>4</nTsel>
+        <sDll></sDll>
+        <sDllPa></sDllPa>
+        <sDlgDll></sDlgDll>
+        <sDlgPa></sDlgPa>
+        <sIfile></sIfile>
+        <tDll></tDll>
+        <tDllPa></tDllPa>
+        <tDlgDll></tDlgDll>
+        <tDlgPa></tDlgPa>
+        <tIfile></tIfile>
+        <pMon>Segger\JL2CM3.dll</pMon>
+      </DebugOpt>
+      <TargetDriverDllRegistry>
+        <SetRegEntry>
+          <Number>0</Number>
+          <Key>JL2CM3</Key>
+          <Name>-U408001579 -O78 -S0 -A0 -C0 -JU1 -JI127.0.0.1 -JP0 -RST0 -N00("ARM CoreSight SW-DP") -D00(0BB11477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -TB1 -TFE0 -FO15 -FD20000000 -FC2000 -FN2 -FF0nrf52xxx.flm -FS00 -FL0200000 -FP0($$Device:nRF52832_xxAA$Flash\nrf52xxx.flm) -FF1nrf52xxx_uicr -FS110001000 -FL11000 -FP1($$Device:nRF52832_xxAA$Flash\nrf52xxx_uicr.flm)</Name>
+        </SetRegEntry>
+        <SetRegEntry>
+          <Number>0</Number>
+          <Key>UL2CM3</Key>
+          <Name>UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0nrf52xxx -FS00 -FL0200000 -FP0($$Device:nRF52832_xxAA$Flash\nrf52xxx))</Name>
+        </SetRegEntry>
+      </TargetDriverDllRegistry>
+      <Breakpoint/>
+      <Tracepoint>
+        <THDelay>0</THDelay>
+      </Tracepoint>
+      <DebugFlag>
+        <trace>0</trace>
+        <periodic>0</periodic>
+        <aLwin>0</aLwin>
+        <aCover>0</aCover>
+        <aSer1>0</aSer1>
+        <aSer2>0</aSer2>
+        <aPa>0</aPa>
+        <viewmode>0</viewmode>
+        <vrSel>0</vrSel>
+        <aSym>0</aSym>
+        <aTbox>0</aTbox>
+        <AscS1>0</AscS1>
+        <AscS2>0</AscS2>
+        <AscS3>0</AscS3>
+        <aSer3>0</aSer3>
+        <eProf>0</eProf>
+        <aLa>0</aLa>
+        <aPa1>0</aPa1>
+        <AscS4>0</AscS4>
+        <aSer4>0</aSer4>
+        <StkLoc>0</StkLoc>
+        <TrcWin>0</TrcWin>
+        <newCpu>0</newCpu>
+        <uProt>0</uProt>
+      </DebugFlag>
+      <LintExecutable></LintExecutable>
+      <LintConfigFile></LintConfigFile>
+      <bLintAuto>0</bLintAuto>
+      <bAutoGenD>0</bAutoGenD>
+      <LntExFlags>0</LntExFlags>
+      <pMisraName></pMisraName>
+      <pszMrule></pszMrule>
+      <pSingCmds></pSingCmds>
+      <pMultCmds></pMultCmds>
+      <pMisraNamep></pMisraNamep>
+      <pszMrulep></pszMrulep>
+      <pSingCmdsp></pSingCmdsp>
+      <pMultCmdsp></pMultCmdsp>
+      <DebugDescription>
+        <Enable>1</Enable>
+        <EnableFlashSeq>1</EnableFlashSeq>
+        <EnableLog>0</EnableLog>
+        <Protocol>2</Protocol>
+        <DbgClock>10000000</DbgClock>
+      </DebugDescription>
+    </TargetOption>
+  </Target>
+
+  <Group>
+    <GroupName>Application</GroupName>
+    <tvExp>1</tvExp>
+    <tvExpOptDlg>0</tvExpOptDlg>
+    <cbSel>0</cbSel>
+    <RteFlg>0</RteFlg>
+    <File>
+      <GroupNumber>1</GroupNumber>
+      <FileNumber>1</FileNumber>
+      <FileType>5</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\config\sdk_config.h</PathWithFileName>
+      <FilenameWithoutPath>sdk_config.h</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>1</GroupNumber>
+      <FileNumber>2</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>.\main.c</PathWithFileName>
+      <FilenameWithoutPath>main.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>1</GroupNumber>
+      <FileNumber>3</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>.\dfu_public_key.c</PathWithFileName>
+      <FilenameWithoutPath>dfu_public_key.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+  </Group>
+
+  <Group>
+    <GroupName>Board Definition</GroupName>
+    <tvExp>0</tvExp>
+    <tvExpOptDlg>0</tvExpOptDlg>
+    <cbSel>0</cbSel>
+    <RteFlg>0</RteFlg>
+    <File>
+      <GroupNumber>2</GroupNumber>
+      <FileNumber>4</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\boards\boards.c</PathWithFileName>
+      <FilenameWithoutPath>boards.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+  </Group>
+
+  <Group>
+    <GroupName>nRF_BLE</GroupName>
+    <tvExp>0</tvExp>
+    <tvExpOptDlg>0</tvExpOptDlg>
+    <cbSel>0</cbSel>
+    <RteFlg>0</RteFlg>
+    <File>
+      <GroupNumber>3</GroupNumber>
+      <FileNumber>5</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\ble\common\ble_srv_common.c</PathWithFileName>
+      <FilenameWithoutPath>ble_srv_common.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+  </Group>
+
+  <Group>
+    <GroupName>nRF_Bootloader</GroupName>
+    <tvExp>0</tvExp>
+    <tvExpOptDlg>0</tvExpOptDlg>
+    <cbSel>0</cbSel>
+    <RteFlg>0</RteFlg>
+    <File>
+      <GroupNumber>4</GroupNumber>
+      <FileNumber>6</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\bootloader\nrf_bootloader.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_bootloader.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>4</GroupNumber>
+      <FileNumber>7</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\bootloader\nrf_bootloader_app_start.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_bootloader_app_start.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>4</GroupNumber>
+      <FileNumber>8</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\bootloader\nrf_bootloader_app_start_final.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_bootloader_app_start_final.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>4</GroupNumber>
+      <FileNumber>9</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\bootloader\nrf_bootloader_dfu_timers.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_bootloader_dfu_timers.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>4</GroupNumber>
+      <FileNumber>10</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\bootloader\nrf_bootloader_fw_activation.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_bootloader_fw_activation.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>4</GroupNumber>
+      <FileNumber>11</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\bootloader\nrf_bootloader_info.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_bootloader_info.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>4</GroupNumber>
+      <FileNumber>12</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\bootloader\nrf_bootloader_wdt.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_bootloader_wdt.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+  </Group>
+
+  <Group>
+    <GroupName>nRF_Crypto</GroupName>
+    <tvExp>0</tvExp>
+    <tvExpOptDlg>0</tvExpOptDlg>
+    <cbSel>0</cbSel>
+    <RteFlg>0</RteFlg>
+    <File>
+      <GroupNumber>5</GroupNumber>
+      <FileNumber>13</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\crypto\nrf_crypto_ecc.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_crypto_ecc.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>5</GroupNumber>
+      <FileNumber>14</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\crypto\nrf_crypto_ecdsa.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_crypto_ecdsa.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>5</GroupNumber>
+      <FileNumber>15</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\crypto\nrf_crypto_hash.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_crypto_hash.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>5</GroupNumber>
+      <FileNumber>16</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\crypto\nrf_crypto_init.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_crypto_init.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>5</GroupNumber>
+      <FileNumber>17</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\crypto\nrf_crypto_shared.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_crypto_shared.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+  </Group>
+
+  <Group>
+    <GroupName>nRF_Crypto backend Oberon</GroupName>
+    <tvExp>0</tvExp>
+    <tvExpOptDlg>0</tvExpOptDlg>
+    <cbSel>0</cbSel>
+    <RteFlg>0</RteFlg>
+    <File>
+      <GroupNumber>6</GroupNumber>
+      <FileNumber>18</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\crypto\backend\oberon\oberon_backend_chacha_poly_aead.c</PathWithFileName>
+      <FilenameWithoutPath>oberon_backend_chacha_poly_aead.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>6</GroupNumber>
+      <FileNumber>19</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\crypto\backend\oberon\oberon_backend_ecc.c</PathWithFileName>
+      <FilenameWithoutPath>oberon_backend_ecc.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>6</GroupNumber>
+      <FileNumber>20</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\crypto\backend\oberon\oberon_backend_ecdh.c</PathWithFileName>
+      <FilenameWithoutPath>oberon_backend_ecdh.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>6</GroupNumber>
+      <FileNumber>21</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\crypto\backend\oberon\oberon_backend_ecdsa.c</PathWithFileName>
+      <FilenameWithoutPath>oberon_backend_ecdsa.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>6</GroupNumber>
+      <FileNumber>22</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\crypto\backend\oberon\oberon_backend_eddsa.c</PathWithFileName>
+      <FilenameWithoutPath>oberon_backend_eddsa.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>6</GroupNumber>
+      <FileNumber>23</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\crypto\backend\oberon\oberon_backend_hash.c</PathWithFileName>
+      <FilenameWithoutPath>oberon_backend_hash.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>6</GroupNumber>
+      <FileNumber>24</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\crypto\backend\oberon\oberon_backend_hmac.c</PathWithFileName>
+      <FilenameWithoutPath>oberon_backend_hmac.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+  </Group>
+
+  <Group>
+    <GroupName>nRF_Crypto backend nRF sw</GroupName>
+    <tvExp>0</tvExp>
+    <tvExpOptDlg>0</tvExpOptDlg>
+    <cbSel>0</cbSel>
+    <RteFlg>0</RteFlg>
+    <File>
+      <GroupNumber>7</GroupNumber>
+      <FileNumber>25</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\crypto\backend\nrf_sw\nrf_sw_backend_hash.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_sw_backend_hash.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+  </Group>
+
+  <Group>
+    <GroupName>nRF_Crypto backend uECC</GroupName>
+    <tvExp>0</tvExp>
+    <tvExpOptDlg>0</tvExpOptDlg>
+    <cbSel>0</cbSel>
+    <RteFlg>0</RteFlg>
+    <File>
+      <GroupNumber>8</GroupNumber>
+      <FileNumber>26</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\crypto\backend\micro_ecc\micro_ecc_backend_ecc.c</PathWithFileName>
+      <FilenameWithoutPath>micro_ecc_backend_ecc.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>8</GroupNumber>
+      <FileNumber>27</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\crypto\backend\micro_ecc\micro_ecc_backend_ecdh.c</PathWithFileName>
+      <FilenameWithoutPath>micro_ecc_backend_ecdh.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>8</GroupNumber>
+      <FileNumber>28</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\crypto\backend\micro_ecc\micro_ecc_backend_ecdsa.c</PathWithFileName>
+      <FilenameWithoutPath>micro_ecc_backend_ecdsa.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+  </Group>
+
+  <Group>
+    <GroupName>nRF_DFU</GroupName>
+    <tvExp>0</tvExp>
+    <tvExpOptDlg>0</tvExpOptDlg>
+    <cbSel>0</cbSel>
+    <RteFlg>0</RteFlg>
+    <File>
+      <GroupNumber>9</GroupNumber>
+      <FileNumber>29</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\bootloader\dfu\dfu-cc.pb.c</PathWithFileName>
+      <FilenameWithoutPath>dfu-cc.pb.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>9</GroupNumber>
+      <FileNumber>30</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\bootloader\dfu\nrf_dfu.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_dfu.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>9</GroupNumber>
+      <FileNumber>31</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\bootloader\ble_dfu\nrf_dfu_ble.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_dfu_ble.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>9</GroupNumber>
+      <FileNumber>32</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\bootloader\dfu\nrf_dfu_flash.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_dfu_flash.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>9</GroupNumber>
+      <FileNumber>33</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\bootloader\dfu\nrf_dfu_handling_error.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_dfu_handling_error.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>9</GroupNumber>
+      <FileNumber>34</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\bootloader\dfu\nrf_dfu_mbr.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_dfu_mbr.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>9</GroupNumber>
+      <FileNumber>35</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\bootloader\dfu\nrf_dfu_req_handler.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_dfu_req_handler.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>9</GroupNumber>
+      <FileNumber>36</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\bootloader\dfu\nrf_dfu_settings.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_dfu_settings.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>9</GroupNumber>
+      <FileNumber>37</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\bootloader\dfu\nrf_dfu_settings_svci.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_dfu_settings_svci.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>9</GroupNumber>
+      <FileNumber>38</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\bootloader\dfu\nrf_dfu_transport.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_dfu_transport.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>9</GroupNumber>
+      <FileNumber>39</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\bootloader\dfu\nrf_dfu_utils.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_dfu_utils.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>9</GroupNumber>
+      <FileNumber>40</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\bootloader\dfu\nrf_dfu_validation.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_dfu_validation.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>9</GroupNumber>
+      <FileNumber>41</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\bootloader\dfu\nrf_dfu_ver_validation.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_dfu_ver_validation.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+  </Group>
+
+  <Group>
+    <GroupName>nRF_Drivers</GroupName>
+    <tvExp>0</tvExp>
+    <tvExpOptDlg>0</tvExpOptDlg>
+    <cbSel>0</cbSel>
+    <RteFlg>0</RteFlg>
+    <File>
+      <GroupNumber>10</GroupNumber>
+      <FileNumber>42</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\modules\nrfx\hal\nrf_nvmc.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_nvmc.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>10</GroupNumber>
+      <FileNumber>43</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\modules\nrfx\soc\nrfx_atomic.c</PathWithFileName>
+      <FilenameWithoutPath>nrfx_atomic.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+  </Group>
+
+  <Group>
+    <GroupName>nRF_Libraries</GroupName>
+    <tvExp>0</tvExp>
+    <tvExpOptDlg>0</tvExpOptDlg>
+    <cbSel>0</cbSel>
+    <RteFlg>0</RteFlg>
+    <File>
+      <GroupNumber>11</GroupNumber>
+      <FileNumber>44</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\util\app_error_weak.c</PathWithFileName>
+      <FilenameWithoutPath>app_error_weak.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>11</GroupNumber>
+      <FileNumber>45</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\scheduler\app_scheduler.c</PathWithFileName>
+      <FilenameWithoutPath>app_scheduler.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>11</GroupNumber>
+      <FileNumber>46</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\util\app_util_platform.c</PathWithFileName>
+      <FilenameWithoutPath>app_util_platform.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>11</GroupNumber>
+      <FileNumber>47</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\crc32\crc32.c</PathWithFileName>
+      <FilenameWithoutPath>crc32.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>11</GroupNumber>
+      <FileNumber>48</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\mem_manager\mem_manager.c</PathWithFileName>
+      <FilenameWithoutPath>mem_manager.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>11</GroupNumber>
+      <FileNumber>49</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\util\nrf_assert.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_assert.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>11</GroupNumber>
+      <FileNumber>50</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\atomic_fifo\nrf_atfifo.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_atfifo.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>11</GroupNumber>
+      <FileNumber>51</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\atomic\nrf_atomic.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_atomic.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>11</GroupNumber>
+      <FileNumber>52</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\balloc\nrf_balloc.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_balloc.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>11</GroupNumber>
+      <FileNumber>53</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\external\fprintf\nrf_fprintf.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_fprintf.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>11</GroupNumber>
+      <FileNumber>54</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\external\fprintf\nrf_fprintf_format.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_fprintf_format.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>11</GroupNumber>
+      <FileNumber>55</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\fstorage\nrf_fstorage.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_fstorage.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>11</GroupNumber>
+      <FileNumber>56</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\fstorage\nrf_fstorage_nvmc.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_fstorage_nvmc.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>11</GroupNumber>
+      <FileNumber>57</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\fstorage\nrf_fstorage_sd.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_fstorage_sd.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>11</GroupNumber>
+      <FileNumber>58</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\memobj\nrf_memobj.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_memobj.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>11</GroupNumber>
+      <FileNumber>59</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\queue\nrf_queue.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_queue.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>11</GroupNumber>
+      <FileNumber>60</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\ringbuf\nrf_ringbuf.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_ringbuf.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>11</GroupNumber>
+      <FileNumber>61</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\experimental_section_vars\nrf_section_iter.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_section_iter.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>11</GroupNumber>
+      <FileNumber>62</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\strerror\nrf_strerror.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_strerror.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>11</GroupNumber>
+      <FileNumber>63</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\sha256\sha256.c</PathWithFileName>
+      <FilenameWithoutPath>sha256.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+  </Group>
+
+  <Group>
+    <GroupName>nRF_Log</GroupName>
+    <tvExp>0</tvExp>
+    <tvExpOptDlg>0</tvExpOptDlg>
+    <cbSel>0</cbSel>
+    <RteFlg>0</RteFlg>
+    <File>
+      <GroupNumber>12</GroupNumber>
+      <FileNumber>64</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\log\src\nrf_log_backend_rtt.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_log_backend_rtt.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>12</GroupNumber>
+      <FileNumber>65</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\log\src\nrf_log_backend_serial.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_log_backend_serial.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>12</GroupNumber>
+      <FileNumber>66</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\log\src\nrf_log_default_backends.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_log_default_backends.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>12</GroupNumber>
+      <FileNumber>67</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\log\src\nrf_log_frontend.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_log_frontend.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>12</GroupNumber>
+      <FileNumber>68</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\log\src\nrf_log_str_formatter.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_log_str_formatter.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+  </Group>
+
+  <Group>
+    <GroupName>nRF_Oberon_Crypto</GroupName>
+    <tvExp>0</tvExp>
+    <tvExpOptDlg>0</tvExpOptDlg>
+    <cbSel>0</cbSel>
+    <RteFlg>0</RteFlg>
+    <File>
+      <GroupNumber>13</GroupNumber>
+      <FileNumber>69</FileNumber>
+      <FileType>4</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\external\nrf_oberon\lib\cortex-m4\hard-float\short-wchar\oberon_3.0.5.lib</PathWithFileName>
+      <FilenameWithoutPath>oberon_3.0.5.lib</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+  </Group>
+
+  <Group>
+    <GroupName>nRF_SVC</GroupName>
+    <tvExp>0</tvExp>
+    <tvExpOptDlg>0</tvExpOptDlg>
+    <cbSel>0</cbSel>
+    <RteFlg>0</RteFlg>
+    <File>
+      <GroupNumber>14</GroupNumber>
+      <FileNumber>70</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\bootloader\dfu\nrf_dfu_svci.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_dfu_svci.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>14</GroupNumber>
+      <FileNumber>71</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\bootloader\dfu\nrf_dfu_svci_handler.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_dfu_svci_handler.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>14</GroupNumber>
+      <FileNumber>72</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\libraries\svc\nrf_svc_handler.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_svc_handler.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+  </Group>
+
+  <Group>
+    <GroupName>nRF_Segger_RTT</GroupName>
+    <tvExp>0</tvExp>
+    <tvExpOptDlg>0</tvExpOptDlg>
+    <cbSel>0</cbSel>
+    <RteFlg>0</RteFlg>
+    <File>
+      <GroupNumber>15</GroupNumber>
+      <FileNumber>73</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\external\segger_rtt\SEGGER_RTT.c</PathWithFileName>
+      <FilenameWithoutPath>SEGGER_RTT.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>15</GroupNumber>
+      <FileNumber>74</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\external\segger_rtt\SEGGER_RTT_Syscalls_KEIL.c</PathWithFileName>
+      <FilenameWithoutPath>SEGGER_RTT_Syscalls_KEIL.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>15</GroupNumber>
+      <FileNumber>75</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\external\segger_rtt\SEGGER_RTT_printf.c</PathWithFileName>
+      <FilenameWithoutPath>SEGGER_RTT_printf.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+  </Group>
+
+  <Group>
+    <GroupName>nRF_SoftDevice</GroupName>
+    <tvExp>0</tvExp>
+    <tvExpOptDlg>0</tvExpOptDlg>
+    <cbSel>0</cbSel>
+    <RteFlg>0</RteFlg>
+    <File>
+      <GroupNumber>16</GroupNumber>
+      <FileNumber>76</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\softdevice\common\nrf_sdh.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_sdh.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>16</GroupNumber>
+      <FileNumber>77</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\softdevice\common\nrf_sdh_ble.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_sdh_ble.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>16</GroupNumber>
+      <FileNumber>78</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\components\softdevice\common\nrf_sdh_soc.c</PathWithFileName>
+      <FilenameWithoutPath>nrf_sdh_soc.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+  </Group>
+
+  <Group>
+    <GroupName>nRF_micro-ecc</GroupName>
+    <tvExp>0</tvExp>
+    <tvExpOptDlg>0</tvExpOptDlg>
+    <cbSel>0</cbSel>
+    <RteFlg>0</RteFlg>
+    <File>
+      <GroupNumber>17</GroupNumber>
+      <FileNumber>79</FileNumber>
+      <FileType>4</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\external\micro-ecc\nrf52hf_keil\armgcc\micro_ecc_lib_nrf52.lib</PathWithFileName>
+      <FilenameWithoutPath>micro_ecc_lib_nrf52.lib</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+  </Group>
+
+  <Group>
+    <GroupName>nano-pb</GroupName>
+    <tvExp>0</tvExp>
+    <tvExpOptDlg>0</tvExpOptDlg>
+    <cbSel>0</cbSel>
+    <RteFlg>0</RteFlg>
+    <File>
+      <GroupNumber>18</GroupNumber>
+      <FileNumber>80</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\external\nano-pb\pb_common.c</PathWithFileName>
+      <FilenameWithoutPath>pb_common.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+    <File>
+      <GroupNumber>18</GroupNumber>
+      <FileNumber>81</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\..\..\external\nano-pb\pb_decode.c</PathWithFileName>
+      <FilenameWithoutPath>pb_decode.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
+  </Group>
+
+  <Group>
+    <GroupName>::CMSIS</GroupName>
+    <tvExp>0</tvExp>
+    <tvExpOptDlg>0</tvExpOptDlg>
+    <cbSel>0</cbSel>
+    <RteFlg>1</RteFlg>
+  </Group>
+
+  <Group>
+    <GroupName>::Device</GroupName>
+    <tvExp>0</tvExp>
+    <tvExpOptDlg>0</tvExpOptDlg>
+    <cbSel>0</cbSel>
+    <RteFlg>1</RteFlg>
+  </Group>
+
+</ProjectOpt>

Різницю між файлами не показано, бо вона завелика
+ 341 - 0
central_and_peripheral_secure_bootloader_debug/arm5_no_packs/secure_bootloader_ble_s132_pca10040_debug.uvprojx


+ 273 - 0
central_and_peripheral_secure_bootloader_debug/armgcc/Makefile

@@ -0,0 +1,273 @@
+PROJECT_NAME     := secure_bootloader_ble_s132_pca10040_debug
+TARGETS          := nrf52832_xxaa_s132
+OUTPUT_DIRECTORY := _build
+
+SDK_ROOT := ../../../../..
+PROJ_DIR := ../..
+
+$(OUTPUT_DIRECTORY)/nrf52832_xxaa_s132.out: \
+  LINKER_SCRIPT  := secure_bootloader_gcc_nrf52.ld
+
+# Source files common to all targets
+SRC_FILES += \
+  $(SDK_ROOT)/modules/nrfx/mdk/gcc_startup_nrf52.S \
+  $(SDK_ROOT)/modules/nrfx/mdk/system_nrf52.c \
+  $(SDK_ROOT)/components/libraries/log/src/nrf_log_backend_rtt.c \
+  $(SDK_ROOT)/components/libraries/log/src/nrf_log_backend_serial.c \
+  $(SDK_ROOT)/components/libraries/log/src/nrf_log_default_backends.c \
+  $(SDK_ROOT)/components/libraries/log/src/nrf_log_frontend.c \
+  $(SDK_ROOT)/components/libraries/log/src/nrf_log_str_formatter.c \
+  $(SDK_ROOT)/components/libraries/util/app_error_weak.c \
+  $(SDK_ROOT)/components/libraries/scheduler/app_scheduler.c \
+  $(SDK_ROOT)/components/libraries/util/app_util_platform.c \
+  $(SDK_ROOT)/components/libraries/crc32/crc32.c \
+  $(SDK_ROOT)/components/libraries/mem_manager/mem_manager.c \
+  $(SDK_ROOT)/components/libraries/util/nrf_assert.c \
+  $(SDK_ROOT)/components/libraries/atomic_fifo/nrf_atfifo.c \
+  $(SDK_ROOT)/components/libraries/atomic/nrf_atomic.c \
+  $(SDK_ROOT)/components/libraries/balloc/nrf_balloc.c \
+  $(SDK_ROOT)/external/fprintf/nrf_fprintf.c \
+  $(SDK_ROOT)/external/fprintf/nrf_fprintf_format.c \
+  $(SDK_ROOT)/components/libraries/fstorage/nrf_fstorage.c \
+  $(SDK_ROOT)/components/libraries/fstorage/nrf_fstorage_nvmc.c \
+  $(SDK_ROOT)/components/libraries/fstorage/nrf_fstorage_sd.c \
+  $(SDK_ROOT)/components/libraries/memobj/nrf_memobj.c \
+  $(SDK_ROOT)/components/libraries/queue/nrf_queue.c \
+  $(SDK_ROOT)/components/libraries/ringbuf/nrf_ringbuf.c \
+  $(SDK_ROOT)/components/libraries/experimental_section_vars/nrf_section_iter.c \
+  $(SDK_ROOT)/components/libraries/strerror/nrf_strerror.c \
+  $(SDK_ROOT)/components/libraries/sha256/sha256.c \
+  $(SDK_ROOT)/modules/nrfx/hal/nrf_nvmc.c \
+  $(SDK_ROOT)/modules/nrfx/soc/nrfx_atomic.c \
+  $(SDK_ROOT)/components/libraries/crypto/backend/micro_ecc/micro_ecc_backend_ecc.c \
+  $(SDK_ROOT)/components/libraries/crypto/backend/micro_ecc/micro_ecc_backend_ecdh.c \
+  $(SDK_ROOT)/components/libraries/crypto/backend/micro_ecc/micro_ecc_backend_ecdsa.c \
+  $(SDK_ROOT)/components/boards/boards.c \
+  $(SDK_ROOT)/components/libraries/bootloader/dfu/nrf_dfu_svci.c \
+  $(SDK_ROOT)/components/libraries/bootloader/dfu/nrf_dfu_svci_handler.c \
+  $(SDK_ROOT)/components/libraries/svc/nrf_svc_handler.c \
+  $(SDK_ROOT)/components/libraries/crypto/nrf_crypto_ecc.c \
+  $(SDK_ROOT)/components/libraries/crypto/nrf_crypto_ecdsa.c \
+  $(SDK_ROOT)/components/libraries/crypto/nrf_crypto_hash.c \
+  $(SDK_ROOT)/components/libraries/crypto/nrf_crypto_init.c \
+  $(SDK_ROOT)/components/libraries/crypto/nrf_crypto_shared.c \
+  $(PROJ_DIR)/../dfu_public_key.c \
+  $(PROJ_DIR)/main.c \
+  $(SDK_ROOT)/external/segger_rtt/SEGGER_RTT.c \
+  $(SDK_ROOT)/external/segger_rtt/SEGGER_RTT_Syscalls_GCC.c \
+  $(SDK_ROOT)/external/segger_rtt/SEGGER_RTT_printf.c \
+  $(SDK_ROOT)/components/libraries/bootloader/nrf_bootloader.c \
+  $(SDK_ROOT)/components/libraries/bootloader/nrf_bootloader_app_start.c \
+  $(SDK_ROOT)/components/libraries/bootloader/nrf_bootloader_app_start_final.c \
+  $(SDK_ROOT)/components/libraries/bootloader/nrf_bootloader_dfu_timers.c \
+  $(SDK_ROOT)/components/libraries/bootloader/nrf_bootloader_fw_activation.c \
+  $(SDK_ROOT)/components/libraries/bootloader/nrf_bootloader_info.c \
+  $(SDK_ROOT)/components/libraries/bootloader/nrf_bootloader_wdt.c \
+  $(SDK_ROOT)/external/nano-pb/pb_common.c \
+  $(SDK_ROOT)/external/nano-pb/pb_decode.c \
+  $(SDK_ROOT)/components/libraries/crypto/backend/nrf_sw/nrf_sw_backend_hash.c \
+  $(SDK_ROOT)/components/ble/common/ble_srv_common.c \
+  $(SDK_ROOT)/components/libraries/bootloader/dfu/dfu-cc.pb.c \
+  $(SDK_ROOT)/components/libraries/bootloader/dfu/nrf_dfu.c \
+  $(SDK_ROOT)/components/libraries/bootloader/ble_dfu/nrf_dfu_ble.c \
+  $(SDK_ROOT)/components/libraries/bootloader/dfu/nrf_dfu_flash.c \
+  $(SDK_ROOT)/components/libraries/bootloader/dfu/nrf_dfu_handling_error.c \
+  $(SDK_ROOT)/components/libraries/bootloader/dfu/nrf_dfu_mbr.c \
+  $(SDK_ROOT)/components/libraries/bootloader/dfu/nrf_dfu_req_handler.c \
+  $(SDK_ROOT)/components/libraries/bootloader/dfu/nrf_dfu_settings.c \
+  $(SDK_ROOT)/components/libraries/bootloader/dfu/nrf_dfu_settings_svci.c \
+  $(SDK_ROOT)/components/libraries/bootloader/dfu/nrf_dfu_transport.c \
+  $(SDK_ROOT)/components/libraries/bootloader/dfu/nrf_dfu_utils.c \
+  $(SDK_ROOT)/components/libraries/bootloader/dfu/nrf_dfu_validation.c \
+  $(SDK_ROOT)/components/libraries/bootloader/dfu/nrf_dfu_ver_validation.c \
+  $(SDK_ROOT)/components/softdevice/common/nrf_sdh.c \
+  $(SDK_ROOT)/components/softdevice/common/nrf_sdh_ble.c \
+  $(SDK_ROOT)/components/softdevice/common/nrf_sdh_soc.c \
+  $(SDK_ROOT)/components/libraries/crypto/backend/oberon/oberon_backend_chacha_poly_aead.c \
+  $(SDK_ROOT)/components/libraries/crypto/backend/oberon/oberon_backend_ecc.c \
+  $(SDK_ROOT)/components/libraries/crypto/backend/oberon/oberon_backend_ecdh.c \
+  $(SDK_ROOT)/components/libraries/crypto/backend/oberon/oberon_backend_ecdsa.c \
+  $(SDK_ROOT)/components/libraries/crypto/backend/oberon/oberon_backend_eddsa.c \
+  $(SDK_ROOT)/components/libraries/crypto/backend/oberon/oberon_backend_hash.c \
+  $(SDK_ROOT)/components/libraries/crypto/backend/oberon/oberon_backend_hmac.c \
+
+# Include folders common to all targets
+INC_FOLDERS += \
+  $(SDK_ROOT)/components/libraries/crypto/backend/micro_ecc \
+  $(SDK_ROOT)/components/softdevice/s132/headers \
+  $(SDK_ROOT)/components/libraries/memobj \
+  $(SDK_ROOT)/components/libraries/sha256 \
+  $(SDK_ROOT)/components/libraries/crc32 \
+  $(SDK_ROOT)/components/libraries/experimental_section_vars \
+  $(SDK_ROOT)/components/libraries/mem_manager \
+  $(SDK_ROOT)/components/libraries/fstorage \
+  $(SDK_ROOT)/components/libraries/util \
+  $(SDK_ROOT)/modules/nrfx \
+  $(SDK_ROOT)/external/nrf_oberon/include \
+  $(SDK_ROOT)/components/libraries/crypto/backend/oberon \
+  $(SDK_ROOT)/components/libraries/crypto/backend/cifra \
+  $(SDK_ROOT)/components/libraries/atomic \
+  $(SDK_ROOT)/integration/nrfx \
+  $(SDK_ROOT)/components/libraries/crypto/backend/cc310_bl \
+  $(SDK_ROOT)/components/softdevice/s132/headers/nrf52 \
+  $(SDK_ROOT)/components/libraries/log/src \
+  $(SDK_ROOT)/components/libraries/bootloader/dfu \
+  $(SDK_ROOT)/components/ble/common \
+  $(SDK_ROOT)/components/libraries/delay \
+  $(SDK_ROOT)/components/libraries/svc \
+  $(SDK_ROOT)/components/libraries/stack_info \
+  $(SDK_ROOT)/components/libraries/crypto/backend/nrf_hw \
+  $(SDK_ROOT)/components/libraries/log \
+  $(SDK_ROOT)/external/nrf_oberon \
+  $(SDK_ROOT)/components/libraries/strerror \
+  $(SDK_ROOT)/components/libraries/crypto/backend/mbedtls \
+  $(SDK_ROOT)/components/boards \
+  $(SDK_ROOT)/components/libraries/crypto/backend/cc310 \
+  $(SDK_ROOT)/components/libraries/bootloader \
+  $(SDK_ROOT)/external/fprintf \
+  $(SDK_ROOT)/components/libraries/crypto \
+  ../config \
+  $(SDK_ROOT)/components/libraries/crypto/backend/optiga \
+  $(SDK_ROOT)/components/libraries/scheduler \
+  $(SDK_ROOT)/external/segger_rtt \
+  $(SDK_ROOT)/modules/nrfx/hal \
+  $(SDK_ROOT)/components/toolchain/cmsis/include \
+  $(SDK_ROOT)/components/libraries/balloc \
+  $(SDK_ROOT)/components/libraries/atomic_fifo \
+  $(SDK_ROOT)/external/micro-ecc/micro-ecc \
+  $(PROJ_DIR) \
+  $(SDK_ROOT)/components/libraries/crypto/backend/nrf_sw \
+  $(SDK_ROOT)/modules/nrfx/mdk \
+  $(SDK_ROOT)/components/libraries/bootloader/ble_dfu \
+  $(SDK_ROOT)/components/softdevice/common \
+  $(SDK_ROOT)/external/nano-pb \
+  $(SDK_ROOT)/components/libraries/queue \
+  $(SDK_ROOT)/components/libraries/ringbuf \
+
+# Libraries common to all targets
+LIB_FILES += \
+  $(SDK_ROOT)/external/nrf_oberon/lib/cortex-m4/hard-float/liboberon_3.0.5.a \
+  $(SDK_ROOT)/external/micro-ecc/nrf52hf_armgcc/armgcc/micro_ecc_lib_nrf52.a \
+
+# Optimization flags
+OPT = -Os -g3
+# Uncomment the line below to enable link time optimization
+#OPT += -flto
+
+# C flags common to all targets
+CFLAGS += $(OPT)
+CFLAGS += -DBLE_STACK_SUPPORT_REQD
+CFLAGS += -DBOARD_PCA10040
+CFLAGS += -DCONFIG_GPIO_AS_PINRESET
+CFLAGS += -DDEBUG_NRF
+CFLAGS += -DFLOAT_ABI_HARD
+CFLAGS += -DNRF52
+CFLAGS += -DNRF52832_XXAA
+CFLAGS += -DNRF52_PAN_74
+CFLAGS += -DNRF_DFU_DEBUG_VERSION
+CFLAGS += -DNRF_DFU_SETTINGS_VERSION=2
+CFLAGS += -DNRF_DFU_SVCI_ENABLED
+CFLAGS += -DNRF_SD_BLE_API_VERSION=7
+CFLAGS += -DS132
+CFLAGS += -DSOFTDEVICE_PRESENT
+CFLAGS += -DSVC_INTERFACE_CALL_AS_NORMAL_FUNCTION
+CFLAGS += -DuECC_ENABLE_VLI_API=0
+CFLAGS += -DuECC_OPTIMIZATION_LEVEL=3
+CFLAGS += -DuECC_SQUARE_FUNC=0
+CFLAGS += -DuECC_SUPPORT_COMPRESSED_POINT=0
+CFLAGS += -DuECC_VLI_NATIVE_LITTLE_ENDIAN=1
+CFLAGS += -mcpu=cortex-m4
+CFLAGS += -mthumb -mabi=aapcs
+CFLAGS += -Wall -Werror
+CFLAGS += -mfloat-abi=hard -mfpu=fpv4-sp-d16
+# keep every function in a separate section, this allows linker to discard unused ones
+CFLAGS += -ffunction-sections -fdata-sections -fno-strict-aliasing
+CFLAGS += -fno-builtin -fshort-enums
+
+# C++ flags common to all targets
+CXXFLAGS += $(OPT)
+# Assembler flags common to all targets
+ASMFLAGS += -g3
+ASMFLAGS += -mcpu=cortex-m4
+ASMFLAGS += -mthumb -mabi=aapcs
+ASMFLAGS += -mfloat-abi=hard -mfpu=fpv4-sp-d16
+ASMFLAGS += -DBLE_STACK_SUPPORT_REQD
+ASMFLAGS += -DBOARD_PCA10040
+ASMFLAGS += -DCONFIG_GPIO_AS_PINRESET
+ASMFLAGS += -DDEBUG_NRF
+ASMFLAGS += -DFLOAT_ABI_HARD
+ASMFLAGS += -DNRF52
+ASMFLAGS += -DNRF52832_XXAA
+ASMFLAGS += -DNRF52_PAN_74
+ASMFLAGS += -DNRF_DFU_DEBUG_VERSION
+ASMFLAGS += -DNRF_DFU_SETTINGS_VERSION=2
+ASMFLAGS += -DNRF_DFU_SVCI_ENABLED
+ASMFLAGS += -DNRF_SD_BLE_API_VERSION=7
+ASMFLAGS += -DS132
+ASMFLAGS += -DSOFTDEVICE_PRESENT
+ASMFLAGS += -DSVC_INTERFACE_CALL_AS_NORMAL_FUNCTION
+ASMFLAGS += -DuECC_ENABLE_VLI_API=0
+ASMFLAGS += -DuECC_OPTIMIZATION_LEVEL=3
+ASMFLAGS += -DuECC_SQUARE_FUNC=0
+ASMFLAGS += -DuECC_SUPPORT_COMPRESSED_POINT=0
+ASMFLAGS += -DuECC_VLI_NATIVE_LITTLE_ENDIAN=1
+
+# Linker flags
+LDFLAGS += $(OPT)
+LDFLAGS += -mthumb -mabi=aapcs -L$(SDK_ROOT)/modules/nrfx/mdk -T$(LINKER_SCRIPT)
+LDFLAGS += -mcpu=cortex-m4
+LDFLAGS += -mfloat-abi=hard -mfpu=fpv4-sp-d16
+# let linker dump unused sections
+LDFLAGS += -Wl,--gc-sections
+# use newlib in nano version
+LDFLAGS += --specs=nano.specs
+
+nrf52832_xxaa_s132: CFLAGS += -D__HEAP_SIZE=0
+nrf52832_xxaa_s132: ASMFLAGS += -D__HEAP_SIZE=0
+
+# Add standard libraries at the very end of the linker input, after all objects
+# that may need symbols provided by these libraries.
+LIB_FILES += -lc -lnosys -lm
+
+
+.PHONY: default help
+
+# Default target - first one defined
+default: nrf52832_xxaa_s132
+
+# Print all targets that can be built
+help:
+	@echo following targets are available:
+	@echo		nrf52832_xxaa_s132
+	@echo		flash_softdevice
+	@echo		sdk_config - starting external tool for editing sdk_config.h
+	@echo		flash      - flashing binary
+
+TEMPLATE_PATH := $(SDK_ROOT)/components/toolchain/gcc
+
+
+include $(TEMPLATE_PATH)/Makefile.common
+
+$(foreach target, $(TARGETS), $(call define_target, $(target)))
+
+.PHONY: flash flash_softdevice erase
+
+# Flash the program
+flash: default
+	@echo Flashing: $(OUTPUT_DIRECTORY)/nrf52832_xxaa_s132.hex
+	nrfjprog -f nrf52 --program $(OUTPUT_DIRECTORY)/nrf52832_xxaa_s132.hex --sectorerase
+	nrfjprog -f nrf52 --reset
+
+# Flash softdevice
+flash_softdevice:
+	@echo Flashing: s132_nrf52_7.0.1_softdevice.hex
+	nrfjprog -f nrf52 --program $(SDK_ROOT)/components/softdevice/s132/hex/s132_nrf52_7.0.1_softdevice.hex --sectorerase
+	nrfjprog -f nrf52 --reset
+
+erase:
+	nrfjprog -f nrf52 --eraseall
+
+SDK_CONFIG_FILE := ../config/sdk_config.h
+CMSIS_CONFIG_TOOL := $(SDK_ROOT)/external_tools/cmsisconfig/CMSIS_Configuration_Wizard.jar
+sdk_config:
+	java -jar $(CMSIS_CONFIG_TOOL) $(SDK_CONFIG_FILE)

+ 156 - 0
central_and_peripheral_secure_bootloader_debug/armgcc/secure_bootloader_gcc_nrf52.ld

@@ -0,0 +1,156 @@
+/* Linker script to configure memory regions. */
+
+SEARCH_DIR(.)
+GROUP(-lgcc -lc -lnosys)
+
+MEMORY
+{
+  FLASH (rx) : ORIGIN = 0x71000, LENGTH = 0xd000
+  RAM (rwx) :  ORIGIN = 0x20005968, LENGTH = 0xa698
+  uicr_bootloader_start_address (r) : ORIGIN = 0x10001014, LENGTH = 0x4
+  bootloader_settings_page (r) : ORIGIN = 0x0007F000, LENGTH = 0x1000
+  uicr_mbr_params_page (r) : ORIGIN = 0x10001018, LENGTH = 0x4
+  mbr_params_page (r) : ORIGIN = 0x0007E000, LENGTH = 0x1000
+}
+
+SECTIONS
+{
+  . = ALIGN(4);
+  .uicr_bootloader_start_address :
+  {
+    PROVIDE(__start_uicr_bootloader_start_address = .);
+    KEEP(*(SORT(.uicr_bootloader_start_address*)))
+    PROVIDE(__stop_uicr_bootloader_start_address = .);
+  } > uicr_bootloader_start_address
+  . = ALIGN(4);
+  .bootloader_settings_page(NOLOAD) :
+  {
+    PROVIDE(__start_bootloader_settings_page = .);
+    KEEP(*(SORT(.bootloader_settings_page*)))
+    PROVIDE(__stop_bootloader_settings_page = .);
+  } > bootloader_settings_page
+  . = ALIGN(4);
+  .uicr_mbr_params_page :
+  {
+    PROVIDE(__start_uicr_mbr_params_page = .);
+    KEEP(*(SORT(.uicr_mbr_params_page*)))
+    PROVIDE(__stop_uicr_mbr_params_page = .);
+  } > uicr_mbr_params_page
+  . = ALIGN(4);
+  .mbr_params_page(NOLOAD) :
+  {
+    PROVIDE(__start_mbr_params_page = .);
+    KEEP(*(SORT(.mbr_params_page*)))
+    PROVIDE(__stop_mbr_params_page = .);
+  } > mbr_params_page
+}
+
+SECTIONS
+{
+  . = ALIGN(4);
+  .mem_section_dummy_ram :
+  {
+  }
+  .log_dynamic_data :
+  {
+    PROVIDE(__start_log_dynamic_data = .);
+    KEEP(*(SORT(.log_dynamic_data*)))
+    PROVIDE(__stop_log_dynamic_data = .);
+  } > RAM
+  .log_filter_data :
+  {
+    PROVIDE(__start_log_filter_data = .);
+    KEEP(*(SORT(.log_filter_data*)))
+    PROVIDE(__stop_log_filter_data = .);
+  } > RAM
+  .fs_data :
+  {
+    PROVIDE(__start_fs_data = .);
+    KEEP(*(.fs_data))
+    PROVIDE(__stop_fs_data = .);
+  } > RAM
+
+} INSERT AFTER .data;
+
+SECTIONS
+{
+  .mem_section_dummy_rom :
+  {
+  }
+  .crypto_data :
+  {
+    PROVIDE(__start_crypto_data = .);
+    KEEP(*(SORT(.crypto_data*)))
+    PROVIDE(__stop_crypto_data = .);
+  } > FLASH
+    .nrf_queue :
+  {
+    PROVIDE(__start_nrf_queue = .);
+    KEEP(*(.nrf_queue))
+    PROVIDE(__stop_nrf_queue = .);
+  } > FLASH
+  .dfu_trans :
+  {
+    PROVIDE(__start_dfu_trans = .);
+    KEEP(*(SORT(.dfu_trans*)))
+    PROVIDE(__stop_dfu_trans = .);
+  } > FLASH
+    .svc_data :
+  {
+    PROVIDE(__start_svc_data = .);
+    KEEP(*(.svc_data))
+    PROVIDE(__stop_svc_data = .);
+  } > FLASH
+  .log_const_data :
+  {
+    PROVIDE(__start_log_const_data = .);
+    KEEP(*(SORT(.log_const_data*)))
+    PROVIDE(__stop_log_const_data = .);
+  } > FLASH
+    .nrf_balloc :
+  {
+    PROVIDE(__start_nrf_balloc = .);
+    KEEP(*(.nrf_balloc))
+    PROVIDE(__stop_nrf_balloc = .);
+  } > FLASH
+  .log_backends :
+  {
+    PROVIDE(__start_log_backends = .);
+    KEEP(*(SORT(.log_backends*)))
+    PROVIDE(__stop_log_backends = .);
+  } > FLASH
+  .sdh_ble_observers :
+  {
+    PROVIDE(__start_sdh_ble_observers = .);
+    KEEP(*(SORT(.sdh_ble_observers*)))
+    PROVIDE(__stop_sdh_ble_observers = .);
+  } > FLASH
+  .sdh_req_observers :
+  {
+    PROVIDE(__start_sdh_req_observers = .);
+    KEEP(*(SORT(.sdh_req_observers*)))
+    PROVIDE(__stop_sdh_req_observers = .);
+  } > FLASH
+  .sdh_state_observers :
+  {
+    PROVIDE(__start_sdh_state_observers = .);
+    KEEP(*(SORT(.sdh_state_observers*)))
+    PROVIDE(__stop_sdh_state_observers = .);
+  } > FLASH
+  .sdh_stack_observers :
+  {
+    PROVIDE(__start_sdh_stack_observers = .);
+    KEEP(*(SORT(.sdh_stack_observers*)))
+    PROVIDE(__stop_sdh_stack_observers = .);
+  } > FLASH
+  .sdh_soc_observers :
+  {
+    PROVIDE(__start_sdh_soc_observers = .);
+    KEEP(*(SORT(.sdh_soc_observers*)))
+    PROVIDE(__stop_sdh_soc_observers = .);
+  } > FLASH
+
+} INSERT AFTER .text
+
+
+INCLUDE "nrf_common.ld"

+ 5463 - 0
central_and_peripheral_secure_bootloader_debug/config/sdk_config.h

@@ -0,0 +1,5463 @@
+/**
+ * Copyright (c) 2017 - 2020, Nordic Semiconductor ASA
+ *
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without modification,
+ * are permitted provided that the following conditions are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright notice, this
+ *    list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form, except as embedded into a Nordic
+ *    Semiconductor ASA integrated circuit in a product or a software update for
+ *    such product, must reproduce the above copyright notice, this list of
+ *    conditions and the following disclaimer in the documentation and/or other
+ *    materials provided with the distribution.
+ *
+ * 3. Neither the name of Nordic Semiconductor ASA nor the names of its
+ *    contributors may be used to endorse or promote products derived from this
+ *    software without specific prior written permission.
+ *
+ * 4. This software, with or without modification, must only be used with a
+ *    Nordic Semiconductor ASA integrated circuit.
+ *
+ * 5. Any software provided in binary form under this license must not be reverse
+ *    engineered, decompiled, modified and/or disassembled.
+ *
+ * THIS SOFTWARE IS PROVIDED BY NORDIC SEMICONDUCTOR ASA "AS IS" AND ANY EXPRESS
+ * OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+ * OF MERCHANTABILITY, NONINFRINGEMENT, AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED. IN NO EVENT SHALL NORDIC SEMICONDUCTOR ASA OR CONTRIBUTORS BE
+ * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+ * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ */
+
+
+
+#ifndef SDK_CONFIG_H
+#define SDK_CONFIG_H
+// <<< Use Configuration Wizard in Context Menu >>>\n
+#ifdef USE_APP_CONFIG
+#include "app_config.h"
+#endif
+// <h> nRF_Bootloader 
+
+//==========================================================
+// <h> nrf_bootloader - Bootloader settings
+
+//==========================================================
+// <h> Application integrity checks 
+
+//==========================================================
+// <q> NRF_BL_APP_CRC_CHECK_SKIPPED_ON_GPREGRET2  - Skip CRC integrity check of the application when bit 1 (0-indexed) is set in the GPREGRET2 register.
+ 
+
+// <i> Only CRC checks can be skipped. For other boot validation types, the GPREGRET2 register is ignored.
+
+#ifndef NRF_BL_APP_CRC_CHECK_SKIPPED_ON_GPREGRET2
+#define NRF_BL_APP_CRC_CHECK_SKIPPED_ON_GPREGRET2 1
+#endif
+
+// <q> NRF_BL_APP_CRC_CHECK_SKIPPED_ON_SYSTEMOFF_RESET  - Skip integrity check of the application when waking up from the System Off state.
+ 
+
+// <i> Only CRC checks can be skipped. For other boot validation types, the reset state is ignored.
+
+#ifndef NRF_BL_APP_CRC_CHECK_SKIPPED_ON_SYSTEMOFF_RESET
+#define NRF_BL_APP_CRC_CHECK_SKIPPED_ON_SYSTEMOFF_RESET 1
+#endif
+
+// <q> NRF_BL_APP_SIGNATURE_CHECK_REQUIRED  - Perform signature check on the app. Requires the signature to be sent in the init packet.
+ 
+
+#ifndef NRF_BL_APP_SIGNATURE_CHECK_REQUIRED
+#define NRF_BL_APP_SIGNATURE_CHECK_REQUIRED 0
+#endif
+
+// <q> NRF_BL_DFU_ALLOW_UPDATE_FROM_APP  - Whether to allow the app to receive firmware updates for the bootloader to activate.
+ 
+
+// <i> Enable this to allow the app to instruct the bootloader to activate firmware.
+// <i> The bootloader will do its own postvalidation.
+
+#ifndef NRF_BL_DFU_ALLOW_UPDATE_FROM_APP
+#define NRF_BL_DFU_ALLOW_UPDATE_FROM_APP 0
+#endif
+
+// </h> 
+//==========================================================
+
+// <h> DFU mode enter method 
+
+//==========================================================
+// <e> NRF_BL_DFU_ENTER_METHOD_BUTTON - Enter DFU mode on button press.
+//==========================================================
+#ifndef NRF_BL_DFU_ENTER_METHOD_BUTTON
+#define NRF_BL_DFU_ENTER_METHOD_BUTTON 1
+#endif
+// <o> NRF_BL_DFU_ENTER_METHOD_BUTTON_PIN  - Button for entering DFU mode.
+ 
+// <0=> 0 (P0.0) 
+// <1=> 1 (P0.1) 
+// <2=> 2 (P0.2) 
+// <3=> 3 (P0.3) 
+// <4=> 4 (P0.4) 
+// <5=> 5 (P0.5) 
+// <6=> 6 (P0.6) 
+// <7=> 7 (P0.7) 
+// <8=> 8 (P0.8) 
+// <9=> 9 (P0.9) 
+// <10=> 10 (P0.10) 
+// <11=> 11 (P0.11) 
+// <12=> 12 (P0.12) 
+// <13=> 13 (P0.13) 
+// <14=> 14 (P0.14) 
+// <15=> 15 (P0.15) 
+// <16=> 16 (P0.16) 
+// <17=> 17 (P0.17) 
+// <18=> 18 (P0.18) 
+// <19=> 19 (P0.19) 
+// <20=> 20 (P0.20) 
+// <21=> 21 (P0.21) 
+// <22=> 22 (P0.22) 
+// <23=> 23 (P0.23) 
+// <24=> 24 (P0.24) 
+// <25=> 25 (P0.25) 
+// <26=> 26 (P0.26) 
+// <27=> 27 (P0.27) 
+// <28=> 28 (P0.28) 
+// <29=> 29 (P0.29) 
+// <30=> 30 (P0.30) 
+// <31=> 31 (P0.31) 
+
+#ifndef NRF_BL_DFU_ENTER_METHOD_BUTTON_PIN
+#define NRF_BL_DFU_ENTER_METHOD_BUTTON_PIN 16
+#endif
+
+// </e>
+
+// <q> NRF_BL_DFU_ENTER_METHOD_PINRESET  - Enter DFU mode on pin reset.
+ 
+
+#ifndef NRF_BL_DFU_ENTER_METHOD_PINRESET
+#define NRF_BL_DFU_ENTER_METHOD_PINRESET 0
+#endif
+
+// <q> NRF_BL_DFU_ENTER_METHOD_GPREGRET  - Enter DFU mode when bit 0 is set in the NRF_POWER_GPREGRET register.
+ 
+
+#ifndef NRF_BL_DFU_ENTER_METHOD_GPREGRET
+#define NRF_BL_DFU_ENTER_METHOD_GPREGRET 1
+#endif
+
+// <q> NRF_BL_DFU_ENTER_METHOD_BUTTONLESS  - Enter DFU mode when the Boolean enter_buttonless_dfu in DFU settings is true.
+ 
+
+#ifndef NRF_BL_DFU_ENTER_METHOD_BUTTONLESS
+#define NRF_BL_DFU_ENTER_METHOD_BUTTONLESS 0
+#endif
+
+// </h> 
+//==========================================================
+
+// <h> DFU timers 
+
+//==========================================================
+// <o> NRF_BL_DFU_CONTINUATION_TIMEOUT_MS - Timeout in ms when expecting an update immediately.  <100-60000000> 
+
+
+// <i> This timeout is used after updating the SoftDevice, when there is
+// <i> already a valid application present. The bootloader will enter DFU mode
+// <i> for a short time instead of booting the old application to allow the host
+// <i> to immediately transfer a new application if it wishes.
+
+#ifndef NRF_BL_DFU_CONTINUATION_TIMEOUT_MS
+#define NRF_BL_DFU_CONTINUATION_TIMEOUT_MS 10000
+#endif
+
+// <o> NRF_BL_DFU_INACTIVITY_TIMEOUT_MS - Timeout in ms before automatically starting a valid application due to inactivity.  <0-60000000> 
+
+
+// <i> If 0, no inactivity timer will be used. Values 1-99 are invalid.
+
+#ifndef NRF_BL_DFU_INACTIVITY_TIMEOUT_MS
+#define NRF_BL_DFU_INACTIVITY_TIMEOUT_MS 120000
+#endif
+
+// </h> 
+//==========================================================
+
+// <h> Watchdog timer 
+
+//==========================================================
+// <o> NRF_BL_WDT_MAX_SCHEDULER_LATENCY_MS - Maximum latency of the scheduler in miliseconds 
+// <i> Maximum latency of the scheduler is compared with
+// <i> watchdog counter reload value (CRV). If latency is big
+// <i> enough, the watchdog will be fed from internal timer
+// <i> handler along with feed from user function. If latency
+// <i> is smaller than CRV, the watchdog will not be internally fed once
+// <i> it will be externally fed. Maximum latency is mainly affected
+// <i> by flash operations.
+
+#ifndef NRF_BL_WDT_MAX_SCHEDULER_LATENCY_MS
+#define NRF_BL_WDT_MAX_SCHEDULER_LATENCY_MS 10000
+#endif
+
+// </h> 
+//==========================================================
+
+// <h> Misc Bootloader settings 
+
+//==========================================================
+// <q> NRF_BL_DEBUG_PORT_DISABLE  - Disable access to the chip via the debug port.
+ 
+
+// <i> Disable access to the chip via the debug port.
+// <i> This modifies the APPROTECT and DEBUGCTRL registers.
+// <i> Enable this option in production code if such
+// <i> access should be prohibited. Read about the registers
+// <i> for more details.
+
+#ifndef NRF_BL_DEBUG_PORT_DISABLE
+#define NRF_BL_DEBUG_PORT_DISABLE 0
+#endif
+
+// <o> NRF_BL_FW_COPY_PROGRESS_STORE_STEP - Number of pages copied after which progress in the settings page is updated. 
+// <i> Progress stored in the settings page allows the bootloader to resume
+// <i> copying the new firmware in case of interruption (reset).
+// <i> If the value is small, then the resume point is more accurate. However,
+// <i>  it also impacts negatively on flash wear.
+
+#ifndef NRF_BL_FW_COPY_PROGRESS_STORE_STEP
+#define NRF_BL_FW_COPY_PROGRESS_STORE_STEP 8
+#endif
+
+// <o> NRF_BL_RESET_DELAY_MS - Time to wait before resetting the bootloader. 
+// <i> Time (in ms) to wait before resetting the bootloader after DFU has been completed or aborted. This allows more time for e.g. disconnecting the BLE link or writing logs.
+
+#ifndef NRF_BL_RESET_DELAY_MS
+#define NRF_BL_RESET_DELAY_MS 0
+#endif
+
+// </h> 
+//==========================================================
+
+// </h> 
+//==========================================================
+
+// </h> 
+//==========================================================
+
+// <h> nRF_Crypto 
+
+//==========================================================
+// <e> NRF_CRYPTO_ENABLED - nrf_crypto - Cryptography library.
+//==========================================================
+#ifndef NRF_CRYPTO_ENABLED
+#define NRF_CRYPTO_ENABLED 1
+#endif
+// <o> NRF_CRYPTO_ALLOCATOR  - Memory allocator
+ 
+
+// <i> Choose memory allocator used by nrf_crypto. Default is alloca if possible or nrf_malloc otherwise. If 'User macros' are selected, the user has to create 'nrf_crypto_allocator.h' file that contains NRF_CRYPTO_ALLOC, NRF_CRYPTO_FREE, and NRF_CRYPTO_ALLOC_ON_STACK.
+// <0=> Default 
+// <1=> User macros 
+// <2=> On stack (alloca) 
+// <3=> C dynamic memory (malloc) 
+// <4=> SDK Memory Manager (nrf_malloc) 
+
+#ifndef NRF_CRYPTO_ALLOCATOR
+#define NRF_CRYPTO_ALLOCATOR 1
+#endif
+
+// <e> NRF_CRYPTO_BACKEND_CC310_BL_ENABLED - Enable the ARM Cryptocell CC310 reduced backend.
+
+// <i> The CC310 hardware-accelerated cryptography backend with reduced functionality and footprint (only available on nRF52840).
+//==========================================================
+#ifndef NRF_CRYPTO_BACKEND_CC310_BL_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_BL_ENABLED 0
+#endif
+// <q> NRF_CRYPTO_BACKEND_CC310_BL_ECC_SECP224R1_ENABLED  - Enable the secp224r1 elliptic curve support using CC310_BL.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_BL_ECC_SECP224R1_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_BL_ECC_SECP224R1_ENABLED 0
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_BL_ECC_SECP256R1_ENABLED  - Enable the secp256r1 elliptic curve support using CC310_BL.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_BL_ECC_SECP256R1_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_BL_ECC_SECP256R1_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_BL_HASH_SHA256_ENABLED  - CC310_BL SHA-256 hash functionality.
+ 
+
+// <i> CC310_BL backend implementation for hardware-accelerated SHA-256.
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_BL_HASH_SHA256_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_BL_HASH_SHA256_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_BL_HASH_AUTOMATIC_RAM_BUFFER_ENABLED  - nrf_cc310_bl buffers to RAM before running hash operation
+ 
+
+// <i> Enabling this makes hashing of addresses in FLASH range possible. Size of buffer allocated for hashing is set by NRF_CRYPTO_BACKEND_CC310_BL_HASH_AUTOMATIC_RAM_BUFFER_SIZE
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_BL_HASH_AUTOMATIC_RAM_BUFFER_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_BL_HASH_AUTOMATIC_RAM_BUFFER_ENABLED 0
+#endif
+
+// <o> NRF_CRYPTO_BACKEND_CC310_BL_HASH_AUTOMATIC_RAM_BUFFER_SIZE - nrf_cc310_bl hash outputs digests in little endian 
+// <i> Makes the nrf_cc310_bl hash functions output digests in little endian format. Only for use in nRF SDK DFU!
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_BL_HASH_AUTOMATIC_RAM_BUFFER_SIZE
+#define NRF_CRYPTO_BACKEND_CC310_BL_HASH_AUTOMATIC_RAM_BUFFER_SIZE 4096
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_BL_INTERRUPTS_ENABLED  - Enable Interrupts while support using CC310 bl.
+ 
+
+// <i> Select a library version compatible with the configuration. When interrupts are disable, a version named _noint must be used
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_BL_INTERRUPTS_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_BL_INTERRUPTS_ENABLED 1
+#endif
+
+// </e>
+
+// <e> NRF_CRYPTO_BACKEND_CC310_ENABLED - Enable the ARM Cryptocell CC310 backend.
+
+// <i> The CC310 hardware-accelerated cryptography backend (only available on nRF52840).
+//==========================================================
+#ifndef NRF_CRYPTO_BACKEND_CC310_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_ENABLED 0
+#endif
+// <q> NRF_CRYPTO_BACKEND_CC310_AES_CBC_ENABLED  - Enable the AES CBC mode using CC310.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_AES_CBC_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_AES_CBC_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_AES_CTR_ENABLED  - Enable the AES CTR mode using CC310.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_AES_CTR_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_AES_CTR_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_AES_ECB_ENABLED  - Enable the AES ECB mode using CC310.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_AES_ECB_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_AES_ECB_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_AES_CBC_MAC_ENABLED  - Enable the AES CBC_MAC mode using CC310.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_AES_CBC_MAC_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_AES_CBC_MAC_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_AES_CMAC_ENABLED  - Enable the AES CMAC mode using CC310.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_AES_CMAC_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_AES_CMAC_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_AES_CCM_ENABLED  - Enable the AES CCM mode using CC310.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_AES_CCM_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_AES_CCM_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_AES_CCM_STAR_ENABLED  - Enable the AES CCM* mode using CC310.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_AES_CCM_STAR_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_AES_CCM_STAR_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_CHACHA_POLY_ENABLED  - Enable the CHACHA-POLY mode using CC310.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_CHACHA_POLY_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_CHACHA_POLY_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_ECC_SECP160R1_ENABLED  - Enable the secp160r1 elliptic curve support using CC310.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_ECC_SECP160R1_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_ECC_SECP160R1_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_ECC_SECP160R2_ENABLED  - Enable the secp160r2 elliptic curve support using CC310.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_ECC_SECP160R2_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_ECC_SECP160R2_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_ECC_SECP192R1_ENABLED  - Enable the secp192r1 elliptic curve support using CC310.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_ECC_SECP192R1_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_ECC_SECP192R1_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_ECC_SECP224R1_ENABLED  - Enable the secp224r1 elliptic curve support using CC310.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_ECC_SECP224R1_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_ECC_SECP224R1_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_ECC_SECP256R1_ENABLED  - Enable the secp256r1 elliptic curve support using CC310.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_ECC_SECP256R1_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_ECC_SECP256R1_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_ECC_SECP384R1_ENABLED  - Enable the secp384r1 elliptic curve support using CC310.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_ECC_SECP384R1_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_ECC_SECP384R1_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_ECC_SECP521R1_ENABLED  - Enable the secp521r1 elliptic curve support using CC310.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_ECC_SECP521R1_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_ECC_SECP521R1_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_ECC_SECP160K1_ENABLED  - Enable the secp160k1 elliptic curve support using CC310.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_ECC_SECP160K1_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_ECC_SECP160K1_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_ECC_SECP192K1_ENABLED  - Enable the secp192k1 elliptic curve support using CC310.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_ECC_SECP192K1_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_ECC_SECP192K1_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_ECC_SECP224K1_ENABLED  - Enable the secp224k1 elliptic curve support using CC310.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_ECC_SECP224K1_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_ECC_SECP224K1_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_ECC_SECP256K1_ENABLED  - Enable the secp256k1 elliptic curve support using CC310.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_ECC_SECP256K1_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_ECC_SECP256K1_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_ECC_CURVE25519_ENABLED  - Enable the Curve25519 curve support using CC310.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_ECC_CURVE25519_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_ECC_CURVE25519_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_ECC_ED25519_ENABLED  - Enable the Ed25519 curve support using CC310.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_ECC_ED25519_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_ECC_ED25519_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_HASH_SHA256_ENABLED  - CC310 SHA-256 hash functionality.
+ 
+
+// <i> CC310 backend implementation for hardware-accelerated SHA-256.
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_HASH_SHA256_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_HASH_SHA256_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_HASH_SHA512_ENABLED  - CC310 SHA-512 hash functionality
+ 
+
+// <i> CC310 backend implementation for SHA-512 (in software).
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_HASH_SHA512_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_HASH_SHA512_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_HMAC_SHA256_ENABLED  - CC310 HMAC using SHA-256
+ 
+
+// <i> CC310 backend implementation for HMAC using hardware-accelerated SHA-256.
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_HMAC_SHA256_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_HMAC_SHA256_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_HMAC_SHA512_ENABLED  - CC310 HMAC using SHA-512
+ 
+
+// <i> CC310 backend implementation for HMAC using SHA-512 (in software).
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_HMAC_SHA512_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_HMAC_SHA512_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_RNG_ENABLED  - Enable RNG support using CC310.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_RNG_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_RNG_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_CC310_INTERRUPTS_ENABLED  - Enable Interrupts while support using CC310.
+ 
+
+// <i> Select a library version compatible with the configuration. When interrupts are disable, a version named _noint must be used
+
+#ifndef NRF_CRYPTO_BACKEND_CC310_INTERRUPTS_ENABLED
+#define NRF_CRYPTO_BACKEND_CC310_INTERRUPTS_ENABLED 1
+#endif
+
+// </e>
+
+// <e> NRF_CRYPTO_BACKEND_CIFRA_ENABLED - Enable the Cifra backend.
+//==========================================================
+#ifndef NRF_CRYPTO_BACKEND_CIFRA_ENABLED
+#define NRF_CRYPTO_BACKEND_CIFRA_ENABLED 0
+#endif
+// <q> NRF_CRYPTO_BACKEND_CIFRA_AES_EAX_ENABLED  - Enable the AES EAX mode using Cifra.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_CIFRA_AES_EAX_ENABLED
+#define NRF_CRYPTO_BACKEND_CIFRA_AES_EAX_ENABLED 1
+#endif
+
+// </e>
+
+// <e> NRF_CRYPTO_BACKEND_MBEDTLS_ENABLED - Enable the mbed TLS backend.
+//==========================================================
+#ifndef NRF_CRYPTO_BACKEND_MBEDTLS_ENABLED
+#define NRF_CRYPTO_BACKEND_MBEDTLS_ENABLED 0
+#endif
+// <q> NRF_CRYPTO_BACKEND_MBEDTLS_AES_CBC_ENABLED  - Enable the AES CBC mode mbed TLS.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_MBEDTLS_AES_CBC_ENABLED
+#define NRF_CRYPTO_BACKEND_MBEDTLS_AES_CBC_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_MBEDTLS_AES_CTR_ENABLED  - Enable the AES CTR mode using mbed TLS.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_MBEDTLS_AES_CTR_ENABLED
+#define NRF_CRYPTO_BACKEND_MBEDTLS_AES_CTR_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_MBEDTLS_AES_CFB_ENABLED  - Enable the AES CFB mode using mbed TLS.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_MBEDTLS_AES_CFB_ENABLED
+#define NRF_CRYPTO_BACKEND_MBEDTLS_AES_CFB_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_MBEDTLS_AES_ECB_ENABLED  - Enable the AES ECB mode using mbed TLS.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_MBEDTLS_AES_ECB_ENABLED
+#define NRF_CRYPTO_BACKEND_MBEDTLS_AES_ECB_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_MBEDTLS_AES_CBC_MAC_ENABLED  - Enable the AES CBC MAC mode using mbed TLS.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_MBEDTLS_AES_CBC_MAC_ENABLED
+#define NRF_CRYPTO_BACKEND_MBEDTLS_AES_CBC_MAC_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_MBEDTLS_AES_CMAC_ENABLED  - Enable the AES CMAC mode using mbed TLS.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_MBEDTLS_AES_CMAC_ENABLED
+#define NRF_CRYPTO_BACKEND_MBEDTLS_AES_CMAC_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_MBEDTLS_AES_CCM_ENABLED  - Enable the AES CCM mode using mbed TLS.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_MBEDTLS_AES_CCM_ENABLED
+#define NRF_CRYPTO_BACKEND_MBEDTLS_AES_CCM_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_MBEDTLS_AES_GCM_ENABLED  - Enable the AES GCM mode using mbed TLS.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_MBEDTLS_AES_GCM_ENABLED
+#define NRF_CRYPTO_BACKEND_MBEDTLS_AES_GCM_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_MBEDTLS_ECC_SECP192R1_ENABLED  - Enable secp192r1 (NIST 192-bit) curve
+ 
+
+// <i> Enable this setting if you need secp192r1 (NIST 192-bit) support using MBEDTLS
+
+#ifndef NRF_CRYPTO_BACKEND_MBEDTLS_ECC_SECP192R1_ENABLED
+#define NRF_CRYPTO_BACKEND_MBEDTLS_ECC_SECP192R1_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_MBEDTLS_ECC_SECP224R1_ENABLED  - Enable secp224r1 (NIST 224-bit) curve
+ 
+
+// <i> Enable this setting if you need secp224r1 (NIST 224-bit) support using MBEDTLS
+
+#ifndef NRF_CRYPTO_BACKEND_MBEDTLS_ECC_SECP224R1_ENABLED
+#define NRF_CRYPTO_BACKEND_MBEDTLS_ECC_SECP224R1_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_MBEDTLS_ECC_SECP256R1_ENABLED  - Enable secp256r1 (NIST 256-bit) curve
+ 
+
+// <i> Enable this setting if you need secp256r1 (NIST 256-bit) support using MBEDTLS
+
+#ifndef NRF_CRYPTO_BACKEND_MBEDTLS_ECC_SECP256R1_ENABLED
+#define NRF_CRYPTO_BACKEND_MBEDTLS_ECC_SECP256R1_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_MBEDTLS_ECC_SECP384R1_ENABLED  - Enable secp384r1 (NIST 384-bit) curve
+ 
+
+// <i> Enable this setting if you need secp384r1 (NIST 384-bit) support using MBEDTLS
+
+#ifndef NRF_CRYPTO_BACKEND_MBEDTLS_ECC_SECP384R1_ENABLED
+#define NRF_CRYPTO_BACKEND_MBEDTLS_ECC_SECP384R1_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_MBEDTLS_ECC_SECP521R1_ENABLED  - Enable secp521r1 (NIST 521-bit) curve
+ 
+
+// <i> Enable this setting if you need secp521r1 (NIST 521-bit) support using MBEDTLS
+
+#ifndef NRF_CRYPTO_BACKEND_MBEDTLS_ECC_SECP521R1_ENABLED
+#define NRF_CRYPTO_BACKEND_MBEDTLS_ECC_SECP521R1_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_MBEDTLS_ECC_SECP192K1_ENABLED  - Enable secp192k1 (Koblitz 192-bit) curve
+ 
+
+// <i> Enable this setting if you need secp192k1 (Koblitz 192-bit) support using MBEDTLS
+
+#ifndef NRF_CRYPTO_BACKEND_MBEDTLS_ECC_SECP192K1_ENABLED
+#define NRF_CRYPTO_BACKEND_MBEDTLS_ECC_SECP192K1_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_MBEDTLS_ECC_SECP224K1_ENABLED  - Enable secp224k1 (Koblitz 224-bit) curve
+ 
+
+// <i> Enable this setting if you need secp224k1 (Koblitz 224-bit) support using MBEDTLS
+
+#ifndef NRF_CRYPTO_BACKEND_MBEDTLS_ECC_SECP224K1_ENABLED
+#define NRF_CRYPTO_BACKEND_MBEDTLS_ECC_SECP224K1_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_MBEDTLS_ECC_SECP256K1_ENABLED  - Enable secp256k1 (Koblitz 256-bit) curve
+ 
+
+// <i> Enable this setting if you need secp256k1 (Koblitz 256-bit) support using MBEDTLS
+
+#ifndef NRF_CRYPTO_BACKEND_MBEDTLS_ECC_SECP256K1_ENABLED
+#define NRF_CRYPTO_BACKEND_MBEDTLS_ECC_SECP256K1_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_MBEDTLS_ECC_BP256R1_ENABLED  - Enable bp256r1 (Brainpool 256-bit) curve
+ 
+
+// <i> Enable this setting if you need bp256r1 (Brainpool 256-bit) support using MBEDTLS
+
+#ifndef NRF_CRYPTO_BACKEND_MBEDTLS_ECC_BP256R1_ENABLED
+#define NRF_CRYPTO_BACKEND_MBEDTLS_ECC_BP256R1_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_MBEDTLS_ECC_BP384R1_ENABLED  - Enable bp384r1 (Brainpool 384-bit) curve
+ 
+
+// <i> Enable this setting if you need bp384r1 (Brainpool 384-bit) support using MBEDTLS
+
+#ifndef NRF_CRYPTO_BACKEND_MBEDTLS_ECC_BP384R1_ENABLED
+#define NRF_CRYPTO_BACKEND_MBEDTLS_ECC_BP384R1_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_MBEDTLS_ECC_BP512R1_ENABLED  - Enable bp512r1 (Brainpool 512-bit) curve
+ 
+
+// <i> Enable this setting if you need bp512r1 (Brainpool 512-bit) support using MBEDTLS
+
+#ifndef NRF_CRYPTO_BACKEND_MBEDTLS_ECC_BP512R1_ENABLED
+#define NRF_CRYPTO_BACKEND_MBEDTLS_ECC_BP512R1_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_MBEDTLS_ECC_CURVE25519_ENABLED  - Enable Curve25519 curve
+ 
+
+// <i> Enable this setting if you need Curve25519 support using MBEDTLS
+
+#ifndef NRF_CRYPTO_BACKEND_MBEDTLS_ECC_CURVE25519_ENABLED
+#define NRF_CRYPTO_BACKEND_MBEDTLS_ECC_CURVE25519_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_MBEDTLS_HASH_SHA256_ENABLED  - Enable mbed TLS SHA-256 hash functionality.
+ 
+
+// <i> mbed TLS backend implementation for SHA-256.
+
+#ifndef NRF_CRYPTO_BACKEND_MBEDTLS_HASH_SHA256_ENABLED
+#define NRF_CRYPTO_BACKEND_MBEDTLS_HASH_SHA256_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_MBEDTLS_HASH_SHA512_ENABLED  - Enable mbed TLS SHA-512 hash functionality.
+ 
+
+// <i> mbed TLS backend implementation for SHA-512.
+
+#ifndef NRF_CRYPTO_BACKEND_MBEDTLS_HASH_SHA512_ENABLED
+#define NRF_CRYPTO_BACKEND_MBEDTLS_HASH_SHA512_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_MBEDTLS_HMAC_SHA256_ENABLED  - Enable mbed TLS HMAC using SHA-256.
+ 
+
+// <i> mbed TLS backend implementation for HMAC using SHA-256.
+
+#ifndef NRF_CRYPTO_BACKEND_MBEDTLS_HMAC_SHA256_ENABLED
+#define NRF_CRYPTO_BACKEND_MBEDTLS_HMAC_SHA256_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_MBEDTLS_HMAC_SHA512_ENABLED  - Enable mbed TLS HMAC using SHA-512.
+ 
+
+// <i> mbed TLS backend implementation for HMAC using SHA-512.
+
+#ifndef NRF_CRYPTO_BACKEND_MBEDTLS_HMAC_SHA512_ENABLED
+#define NRF_CRYPTO_BACKEND_MBEDTLS_HMAC_SHA512_ENABLED 1
+#endif
+
+// </e>
+
+// <e> NRF_CRYPTO_BACKEND_MICRO_ECC_ENABLED - Enable the micro-ecc backend.
+//==========================================================
+#ifndef NRF_CRYPTO_BACKEND_MICRO_ECC_ENABLED
+#define NRF_CRYPTO_BACKEND_MICRO_ECC_ENABLED 1
+#endif
+// <q> NRF_CRYPTO_BACKEND_MICRO_ECC_ECC_SECP192R1_ENABLED  - Enable secp192r1 (NIST 192-bit) curve
+ 
+
+// <i> Enable this setting if you need secp192r1 (NIST 192-bit) support using micro-ecc
+
+#ifndef NRF_CRYPTO_BACKEND_MICRO_ECC_ECC_SECP192R1_ENABLED
+#define NRF_CRYPTO_BACKEND_MICRO_ECC_ECC_SECP192R1_ENABLED 0
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_MICRO_ECC_ECC_SECP224R1_ENABLED  - Enable secp224r1 (NIST 224-bit) curve
+ 
+
+// <i> Enable this setting if you need secp224r1 (NIST 224-bit) support using micro-ecc
+
+#ifndef NRF_CRYPTO_BACKEND_MICRO_ECC_ECC_SECP224R1_ENABLED
+#define NRF_CRYPTO_BACKEND_MICRO_ECC_ECC_SECP224R1_ENABLED 0
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_MICRO_ECC_ECC_SECP256R1_ENABLED  - Enable secp256r1 (NIST 256-bit) curve
+ 
+
+// <i> Enable this setting if you need secp256r1 (NIST 256-bit) support using micro-ecc
+
+#ifndef NRF_CRYPTO_BACKEND_MICRO_ECC_ECC_SECP256R1_ENABLED
+#define NRF_CRYPTO_BACKEND_MICRO_ECC_ECC_SECP256R1_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_MICRO_ECC_ECC_SECP256K1_ENABLED  - Enable secp256k1 (Koblitz 256-bit) curve
+ 
+
+// <i> Enable this setting if you need secp256k1 (Koblitz 256-bit) support using micro-ecc
+
+#ifndef NRF_CRYPTO_BACKEND_MICRO_ECC_ECC_SECP256K1_ENABLED
+#define NRF_CRYPTO_BACKEND_MICRO_ECC_ECC_SECP256K1_ENABLED 0
+#endif
+
+// </e>
+
+// <e> NRF_CRYPTO_BACKEND_NRF_HW_RNG_ENABLED - Enable the nRF HW RNG backend.
+
+// <i> The nRF HW backend provide access to RNG peripheral in nRF5x devices.
+//==========================================================
+#ifndef NRF_CRYPTO_BACKEND_NRF_HW_RNG_ENABLED
+#define NRF_CRYPTO_BACKEND_NRF_HW_RNG_ENABLED 0
+#endif
+// <q> NRF_CRYPTO_BACKEND_NRF_HW_RNG_MBEDTLS_CTR_DRBG_ENABLED  - Enable mbed TLS CTR-DRBG algorithm.
+ 
+
+// <i> Enable mbed TLS CTR-DRBG standardized by NIST (NIST SP 800-90A Rev. 1). The nRF HW RNG is used as an entropy source for seeding.
+
+#ifndef NRF_CRYPTO_BACKEND_NRF_HW_RNG_MBEDTLS_CTR_DRBG_ENABLED
+#define NRF_CRYPTO_BACKEND_NRF_HW_RNG_MBEDTLS_CTR_DRBG_ENABLED 1
+#endif
+
+// </e>
+
+// <e> NRF_CRYPTO_BACKEND_NRF_SW_ENABLED - Enable the legacy nRFx sw for crypto.
+
+// <i> The nRF SW cryptography backend (only used in bootloader context).
+//==========================================================
+#ifndef NRF_CRYPTO_BACKEND_NRF_SW_ENABLED
+#define NRF_CRYPTO_BACKEND_NRF_SW_ENABLED 1
+#endif
+// <q> NRF_CRYPTO_BACKEND_NRF_SW_HASH_SHA256_ENABLED  - nRF SW hash backend support for SHA-256
+ 
+
+// <i> The nRF SW backend provide access to nRF SDK legacy hash implementation of SHA-256.
+
+#ifndef NRF_CRYPTO_BACKEND_NRF_SW_HASH_SHA256_ENABLED
+#define NRF_CRYPTO_BACKEND_NRF_SW_HASH_SHA256_ENABLED 1
+#endif
+
+// </e>
+
+// <e> NRF_CRYPTO_BACKEND_OBERON_ENABLED - Enable the Oberon backend
+
+// <i> The Oberon backend
+//==========================================================
+#ifndef NRF_CRYPTO_BACKEND_OBERON_ENABLED
+#define NRF_CRYPTO_BACKEND_OBERON_ENABLED 0
+#endif
+// <q> NRF_CRYPTO_BACKEND_OBERON_CHACHA_POLY_ENABLED  - Enable the CHACHA-POLY mode using Oberon.
+ 
+
+#ifndef NRF_CRYPTO_BACKEND_OBERON_CHACHA_POLY_ENABLED
+#define NRF_CRYPTO_BACKEND_OBERON_CHACHA_POLY_ENABLED 0
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_OBERON_ECC_SECP256R1_ENABLED  - Enable secp256r1 curve
+ 
+
+// <i> Enable this setting if you need secp256r1 curve support using Oberon library
+
+#ifndef NRF_CRYPTO_BACKEND_OBERON_ECC_SECP256R1_ENABLED
+#define NRF_CRYPTO_BACKEND_OBERON_ECC_SECP256R1_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_OBERON_ECC_CURVE25519_ENABLED  - Enable Curve25519 ECDH
+ 
+
+// <i> Enable this setting if you need Curve25519 ECDH support using Oberon library
+
+#ifndef NRF_CRYPTO_BACKEND_OBERON_ECC_CURVE25519_ENABLED
+#define NRF_CRYPTO_BACKEND_OBERON_ECC_CURVE25519_ENABLED 0
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_OBERON_ECC_ED25519_ENABLED  - Enable Ed25519 signature scheme
+ 
+
+// <i> Enable this setting if you need Ed25519 support using Oberon library
+
+#ifndef NRF_CRYPTO_BACKEND_OBERON_ECC_ED25519_ENABLED
+#define NRF_CRYPTO_BACKEND_OBERON_ECC_ED25519_ENABLED 0
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_OBERON_HASH_SHA256_ENABLED  - Oberon SHA-256 hash functionality
+ 
+
+// <i> Oberon backend implementation for SHA-256.
+
+#ifndef NRF_CRYPTO_BACKEND_OBERON_HASH_SHA256_ENABLED
+#define NRF_CRYPTO_BACKEND_OBERON_HASH_SHA256_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_OBERON_HASH_SHA512_ENABLED  - Oberon SHA-512 hash functionality
+ 
+
+// <i> Oberon backend implementation for SHA-512.
+
+#ifndef NRF_CRYPTO_BACKEND_OBERON_HASH_SHA512_ENABLED
+#define NRF_CRYPTO_BACKEND_OBERON_HASH_SHA512_ENABLED 0
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_OBERON_HMAC_SHA256_ENABLED  - Oberon HMAC using SHA-256
+ 
+
+// <i> Oberon backend implementation for HMAC using SHA-256.
+
+#ifndef NRF_CRYPTO_BACKEND_OBERON_HMAC_SHA256_ENABLED
+#define NRF_CRYPTO_BACKEND_OBERON_HMAC_SHA256_ENABLED 0
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_OBERON_HMAC_SHA512_ENABLED  - Oberon HMAC using SHA-512
+ 
+
+// <i> Oberon backend implementation for HMAC using SHA-512.
+
+#ifndef NRF_CRYPTO_BACKEND_OBERON_HMAC_SHA512_ENABLED
+#define NRF_CRYPTO_BACKEND_OBERON_HMAC_SHA512_ENABLED 0
+#endif
+
+// </e>
+
+// <e> NRF_CRYPTO_BACKEND_OPTIGA_ENABLED - Enable the nrf_crypto Optiga Trust X backend.
+
+// <i> Enables the nrf_crypto backend for Optiga Trust X devices.
+//==========================================================
+#ifndef NRF_CRYPTO_BACKEND_OPTIGA_ENABLED
+#define NRF_CRYPTO_BACKEND_OPTIGA_ENABLED 0
+#endif
+// <q> NRF_CRYPTO_BACKEND_OPTIGA_RNG_ENABLED  - Optiga backend support for RNG
+ 
+
+// <i> The Optiga backend provide external chip RNG.
+
+#ifndef NRF_CRYPTO_BACKEND_OPTIGA_RNG_ENABLED
+#define NRF_CRYPTO_BACKEND_OPTIGA_RNG_ENABLED 0
+#endif
+
+// <q> NRF_CRYPTO_BACKEND_OPTIGA_ECC_SECP256R1_ENABLED  - Optiga backend support for ECC secp256r1
+ 
+
+// <i> The Optiga backend provide external chip ECC using secp256r1.
+
+#ifndef NRF_CRYPTO_BACKEND_OPTIGA_ECC_SECP256R1_ENABLED
+#define NRF_CRYPTO_BACKEND_OPTIGA_ECC_SECP256R1_ENABLED 1
+#endif
+
+// </e>
+
+// <q> NRF_CRYPTO_CURVE25519_BIG_ENDIAN_ENABLED  - Big-endian byte order in raw Curve25519 data
+ 
+
+// <i> Enable big-endian byte order in Curve25519 API, if set to 1. Use little-endian, if set to 0.
+
+#ifndef NRF_CRYPTO_CURVE25519_BIG_ENDIAN_ENABLED
+#define NRF_CRYPTO_CURVE25519_BIG_ENDIAN_ENABLED 0
+#endif
+
+// </e>
+
+// <h> nrf_crypto_rng - RNG Configuration
+
+//==========================================================
+// <q> NRF_CRYPTO_RNG_STATIC_MEMORY_BUFFERS_ENABLED  - Use static memory buffers for context and temporary init buffer.
+ 
+
+// <i> Always recommended when using the nRF HW RNG as the context and temporary buffers are small. Consider disabling if using the CC310 RNG in a RAM constrained application. In this case, memory must be provided to nrf_crypto_rng_init, or it can be allocated internally provided that NRF_CRYPTO_ALLOCATOR does not allocate memory on the stack.
+
+#ifndef NRF_CRYPTO_RNG_STATIC_MEMORY_BUFFERS_ENABLED
+#define NRF_CRYPTO_RNG_STATIC_MEMORY_BUFFERS_ENABLED 1
+#endif
+
+// <q> NRF_CRYPTO_RNG_AUTO_INIT_ENABLED  - Initialize the RNG module automatically when nrf_crypto is initialized.
+ 
+
+// <i> Automatic initialization is only supported with static or internally allocated context and temporary memory.
+
+#ifndef NRF_CRYPTO_RNG_AUTO_INIT_ENABLED
+#define NRF_CRYPTO_RNG_AUTO_INIT_ENABLED 1
+#endif
+
+// </h> 
+//==========================================================
+
+// </h> 
+//==========================================================
+
+// <h> nRF_DFU 
+
+//==========================================================
+// <h> DFU security - nrf_dfu_validation - DFU validation
+
+//==========================================================
+// <q> NRF_DFU_APP_ACCEPT_SAME_VERSION  - Whether to accept application upgrades with the same version as the current application.
+ 
+
+// <i> This applies to application updates, and possibly to SoftDevice updates.
+// <i> Bootloader upgrades always require higher versions. SoftDevice upgrades
+// <i> look at the sd_req field independently of this config.
+// <i> Disabling this protects against replay attacks wearing out the flash of the device.
+// <i> This config only has an effect when NRF_DFU_APP_DOWNGRADE_PREVENTION is enabled.
+
+#ifndef NRF_DFU_APP_ACCEPT_SAME_VERSION
+#define NRF_DFU_APP_ACCEPT_SAME_VERSION 1
+#endif
+
+// <q> NRF_DFU_APP_DOWNGRADE_PREVENTION  - Check the firmware version and SoftDevice requirements of application (and SoftDevice) updates.
+ 
+
+// <i> Whether to check the incoming version against the version of the existing app and/or
+// <i> the incoming SoftDevice requirements against the existing SoftDevice.
+// <i> This applies to application updates, and possibly to SoftDevice updates.
+// <i> Disabling this causes the checks to always ignore the incoming firmware version and
+// <i> to ignore the SoftDevice requirements if the first requirement is 0.
+// <i> This does not apply the bootloader updates. If the bootloader depends on the SoftDevice
+// <i> e.g. for BLE transport, this does not apply to SoftDevice updates.
+// <i> See @ref lib_bootloader_dfu_validation for more information.
+// <i> When signed updates are required, version checking should always be enabled.
+
+#ifndef NRF_DFU_APP_DOWNGRADE_PREVENTION
+#define NRF_DFU_APP_DOWNGRADE_PREVENTION 1
+#endif
+
+// <q> NRF_DFU_EXTERNAL_APP_VERSIONING  - Require versioning for external applications.
+ 
+
+// <i> This configuration is only used if NRF_DFU_SUPPORTS_EXTERNAL_APP is set to 1.
+// <i> Setting this will require that any FW images using the FW upgrade type 
+// <i> DFU_FW_TYPE_EXTERNAL_APPLICATION must follow a monotonic versioning scheme
+// <i> where the FW version of an upgrade must always be larger than the previously stored 
+// <i> FW version.
+
+#ifndef NRF_DFU_EXTERNAL_APP_VERSIONING
+#define NRF_DFU_EXTERNAL_APP_VERSIONING 1
+#endif
+
+// <q> NRF_DFU_FORCE_DUAL_BANK_APP_UPDATES  - Accept only dual-bank application updates.
+ 
+
+// <i> If not enabled then if there is not enough space to perform dual-bank update
+// <i> application is deleted and single-bank update is performed. In case it is considered
+// <i> security concern user can prefer to discard update request rather than overwrite
+// <i> current application.
+
+#ifndef NRF_DFU_FORCE_DUAL_BANK_APP_UPDATES
+#define NRF_DFU_FORCE_DUAL_BANK_APP_UPDATES 0
+#endif
+
+// <o> NRF_DFU_HW_VERSION - Device hardware version. 
+// <i> This is used to determine if given update is targeting the device.
+// <i> It is checked against the hw_version value in the init packet
+
+#ifndef NRF_DFU_HW_VERSION
+#define NRF_DFU_HW_VERSION 52
+#endif
+
+// <q> NRF_DFU_REQUIRE_SIGNED_APP_UPDATE  - Require a valid signature to update the application or SoftDevice.
+ 
+
+#ifndef NRF_DFU_REQUIRE_SIGNED_APP_UPDATE
+#define NRF_DFU_REQUIRE_SIGNED_APP_UPDATE 1
+#endif
+
+// <q> NRF_DFU_SINGLE_BANK_APP_UPDATES  - Place the application and the SoftDevice directly where they are supposed to be.
+ 
+
+// <i> Note that this creates security concerns when signing and  version checks
+// <i> are enabled. An attacker will be able to delete (but not replace)
+// <i> the current app or SoftDevice without knowing the signature key.
+
+#ifndef NRF_DFU_SINGLE_BANK_APP_UPDATES
+#define NRF_DFU_SINGLE_BANK_APP_UPDATES 0
+#endif
+
+// </h> 
+//==========================================================
+
+// <q> NRF_DFU_SETTINGS_COMPATIBILITY_MODE  - nrf_dfu_settings - DFU Settings
+ 
+
+#ifndef NRF_DFU_SETTINGS_COMPATIBILITY_MODE
+#define NRF_DFU_SETTINGS_COMPATIBILITY_MODE 1
+#endif
+
+// <h> nrf_dfu - Device Firmware Upgrade
+
+//==========================================================
+// <h> DFU transport 
+
+//==========================================================
+// <e> NRF_DFU_TRANSPORT_ANT - ANT transport settings
+//==========================================================
+#ifndef NRF_DFU_TRANSPORT_ANT
+#define NRF_DFU_TRANSPORT_ANT 0
+#endif
+// <o> NRF_DFU_ANT_MTU - MTU size used for firmware bursts. 
+// <i> Sets the maximum burst size used for DFU write commands.
+
+#ifndef NRF_DFU_ANT_MTU
+#define NRF_DFU_ANT_MTU 1024
+#endif
+
+// <h> ANT DFU buffers 
+
+//==========================================================
+// <e> NRF_DFU_ANT_BUFFERS_OVERRIDE 
+
+// <i> Check this option to override the default number of buffers.
+//==========================================================
+#ifndef NRF_DFU_ANT_BUFFERS_OVERRIDE
+#define NRF_DFU_ANT_BUFFERS_OVERRIDE 0
+#endif
+// <o> NRF_DFU_ANT_BUFFERS - Number of buffers in the ANT transport. 
+// <i> Number of buffers to store incoming data while it is being written to flash.
+// <i> Reduce this value to save RAM. If this value is too low, the DFU process will fail.
+
+#ifndef NRF_DFU_ANT_BUFFERS
+#define NRF_DFU_ANT_BUFFERS 8
+#endif
+
+// </e>
+
+// </h> 
+//==========================================================
+
+// <h> ANT DFU Channel Configuration 
+
+//==========================================================
+// <o> NRF_DFU_ANT_RF_FREQ - DFU RF channel. 
+#ifndef NRF_DFU_ANT_RF_FREQ
+#define NRF_DFU_ANT_RF_FREQ 66
+#endif
+
+// <o> NRF_DFU_ANT_DEV_TYPE - Device type field to use for DFU channel id. 
+#ifndef NRF_DFU_ANT_DEV_TYPE
+#define NRF_DFU_ANT_DEV_TYPE 10
+#endif
+
+// <o> NRF_DFU_ANT_CHANNEL_PERIOD - Channel period of DFU ANT channel. 
+#ifndef NRF_DFU_ANT_CHANNEL_PERIOD
+#define NRF_DFU_ANT_CHANNEL_PERIOD 2048
+#endif
+
+// </h> 
+//==========================================================
+
+// </e>
+
+// <e> NRF_DFU_TRANSPORT_BLE - BLE transport settings
+//==========================================================
+#ifndef NRF_DFU_TRANSPORT_BLE
+#define NRF_DFU_TRANSPORT_BLE 1
+#endif
+// <q> NRF_DFU_BLE_SKIP_SD_INIT  - Skip the SoftDevice and interrupt vector table initialization.
+ 
+
+#ifndef NRF_DFU_BLE_SKIP_SD_INIT
+#define NRF_DFU_BLE_SKIP_SD_INIT 0
+#endif
+
+// <s> NRF_DFU_BLE_ADV_NAME - Default advertising name.
+#ifndef NRF_DFU_BLE_ADV_NAME
+#define NRF_DFU_BLE_ADV_NAME "DfuTarg"
+#endif
+
+// <o> NRF_DFU_BLE_ADV_INTERVAL - Advertising interval (in units of 0.625 ms) 
+#ifndef NRF_DFU_BLE_ADV_INTERVAL
+#define NRF_DFU_BLE_ADV_INTERVAL 40
+#endif
+
+// <h> BLE DFU security 
+
+//==========================================================
+// <q> NRF_DFU_BLE_REQUIRES_BONDS  - Require bond with peer.
+ 
+
+#ifndef NRF_DFU_BLE_REQUIRES_BONDS
+#define NRF_DFU_BLE_REQUIRES_BONDS 0
+
+#endif
+
+// </h> 
+//==========================================================
+
+// <h> BLE DFU connection 
+
+//==========================================================
+// <o> NRF_DFU_BLE_MIN_CONN_INTERVAL - Minimum connection interval (units). 
+// <i> Minimum GAP connection interval, in 1.25 ms units.
+
+#ifndef NRF_DFU_BLE_MIN_CONN_INTERVAL
+#define NRF_DFU_BLE_MIN_CONN_INTERVAL 12
+#endif
+
+// <o> NRF_DFU_BLE_MAX_CONN_INTERVAL - Maximum connection interval (units). 
+// <i> Maximum GAP connection interval, in 1.25 ms units.
+
+#ifndef NRF_DFU_BLE_MAX_CONN_INTERVAL
+#define NRF_DFU_BLE_MAX_CONN_INTERVAL 12
+#endif
+
+// <o> NRF_DFU_BLE_CONN_SUP_TIMEOUT_MS - Supervision timeout (ms). 
+// <i> GAP connection supervision timeout, in milliseconds.
+
+#ifndef NRF_DFU_BLE_CONN_SUP_TIMEOUT_MS
+#define NRF_DFU_BLE_CONN_SUP_TIMEOUT_MS 6000
+#endif
+
+// </h> 
+//==========================================================
+
+// <h> BLE DFU buffers 
+
+//==========================================================
+// <e> NRF_DFU_BLE_BUFFERS_OVERRIDE 
+
+// <i> Check this option to override the default number of buffers.
+//==========================================================
+#ifndef NRF_DFU_BLE_BUFFERS_OVERRIDE
+#define NRF_DFU_BLE_BUFFERS_OVERRIDE 0
+#endif
+// <o> NRF_DFU_BLE_BUFFERS - Number of buffers in the BLE transport. 
+// <i> Number of buffers to store incoming data while it is being written to flash.
+// <i> Reduce this value to save RAM. If this value is too low, the DFU process will fail.
+
+#ifndef NRF_DFU_BLE_BUFFERS
+#define NRF_DFU_BLE_BUFFERS 8
+#endif
+
+// </e>
+
+// </h> 
+//==========================================================
+
+// </e>
+
+// </h> 
+//==========================================================
+
+// <h> DFU protocol 
+
+//==========================================================
+// <q> NRF_DFU_PROTOCOL_FW_VERSION_MSG  - Firmware version message support.
+ 
+
+// <i> Firmware version message support.
+// <i> If disabled, firmware version requests will return NRF_DFU_RES_CODE_OP_CODE_NOT_SUPPORTED.
+
+#ifndef NRF_DFU_PROTOCOL_FW_VERSION_MSG
+#define NRF_DFU_PROTOCOL_FW_VERSION_MSG 1
+#endif
+
+// <q> NRF_DFU_PROTOCOL_REDUCED  - Reduced protocol opcode selection.
+ 
+
+// <i> Only support a minimal set of opcodes; return NRF_DFU_RES_CODE_OP_CODE_NOT_SUPPORTED 
+// <i> for unsupported opcodes. The supported opcodes are:NRF_DFU_OP_OBJECT_CREATE, 
+// <i> NRF_DFU_OP_OBJECT_EXECUTE, NRF_DFU_OP_OBJECT_SELECT, NRF_DFU_OP_OBJECT_WRITE, 
+// <i> NRF_DFU_OP_CRC_GET, NRF_DFU_OP_RECEIPT_NOTIF_SET, and NRF_DFU_OP_ABORT. 
+// <i> This reduced feature set is used by the BLE transport to reduce flash usage.
+
+#ifndef NRF_DFU_PROTOCOL_REDUCED
+#define NRF_DFU_PROTOCOL_REDUCED 1
+#endif
+
+// <q> NRF_DFU_PROTOCOL_VERSION_MSG  - Protocol version message support.
+ 
+
+// <i> Protocol version message support.
+// <i> If disabled, protocol version requests will return NRF_DFU_RES_CODE_OP_CODE_NOT_SUPPORTED.
+
+#ifndef NRF_DFU_PROTOCOL_VERSION_MSG
+#define NRF_DFU_PROTOCOL_VERSION_MSG 1
+#endif
+
+// </h> 
+//==========================================================
+
+// <h> Misc DFU settings 
+
+//==========================================================
+// <o> NRF_DFU_APP_DATA_AREA_SIZE - The size (in bytes) of the flash area reserved for application data. 
+// <i> This area is found at the end of the application area, next to the start of
+// <i> the bootloader. This area will not be erased by the bootloader during a
+// <i> firmware upgrade. The size must be a multiple of the flash page size.
+
+#ifndef NRF_DFU_APP_DATA_AREA_SIZE
+#define NRF_DFU_APP_DATA_AREA_SIZE 32768
+#endif
+
+// <q> NRF_DFU_IN_APP  - Specifies that this code is in the app, not the bootloader, so some settings are off-limits.
+ 
+
+// <i> Enable this to disable writing to areas of the settings that are protected
+// <i> by the bootlader. If this is not enabled in the app, certain settings write
+// <i> operations will cause HardFaults or will be ignored. Enabling this option
+// <i> also causes postvalidation to be disabled since this is meant to be done
+// <i> in the bootloader. NRF_BL_DFU_ALLOW_UPDATE_FROM_APP must be enabled in the bootloader.
+
+#ifndef NRF_DFU_IN_APP
+#define NRF_DFU_IN_APP 0
+#endif
+
+// <q> NRF_DFU_SAVE_PROGRESS_IN_FLASH  - Save DFU progress in flash.
+ 
+
+// <i> Save DFU progress to flash so that it can be resumed if interrupted, instead of being restarted.
+// <i> Keep this setting disabled to maximize transfer speed and minimize flash wear.
+// <i> The init packet is always saved in flash, regardless of this setting.
+
+#ifndef NRF_DFU_SAVE_PROGRESS_IN_FLASH
+#define NRF_DFU_SAVE_PROGRESS_IN_FLASH 0
+#endif
+
+// <q> NRF_DFU_SUPPORTS_EXTERNAL_APP  - [Experimental] Support for external app.
+ 
+
+// <i> External apps are apps that will not be activated. They can 
+// <i> e.g. be apps to be sent to a third party. External app updates 
+// <i> are verified upon reception, but will remain in bank 1, and 
+// <i> will never be booted. An external app will be overwritten if 
+// <i> a new DFU procedure is performed. Note: This functionality is 
+// <i> experimental and not yet used in any examples.
+
+#ifndef NRF_DFU_SUPPORTS_EXTERNAL_APP
+#define NRF_DFU_SUPPORTS_EXTERNAL_APP 0
+#endif
+
+// </h> 
+//==========================================================
+
+// </h> 
+//==========================================================
+
+// </h> 
+//==========================================================
+
+// <h> nRF_Libraries 
+
+//==========================================================
+// <e> APP_SCHEDULER_ENABLED - app_scheduler - Events scheduler
+//==========================================================
+#ifndef APP_SCHEDULER_ENABLED
+#define APP_SCHEDULER_ENABLED 1
+#endif
+// <q> APP_SCHEDULER_WITH_PAUSE  - Enabling pause feature
+ 
+
+#ifndef APP_SCHEDULER_WITH_PAUSE
+#define APP_SCHEDULER_WITH_PAUSE 0
+#endif
+
+// <q> APP_SCHEDULER_WITH_PROFILER  - Enabling scheduler profiling
+ 
+
+#ifndef APP_SCHEDULER_WITH_PROFILER
+#define APP_SCHEDULER_WITH_PROFILER 0
+#endif
+
+// </e>
+
+// <q> CRC32_ENABLED  - crc32 - CRC32 calculation routines
+ 
+
+#ifndef CRC32_ENABLED
+#define CRC32_ENABLED 1
+#endif
+
+// <e> MEM_MANAGER_ENABLED - mem_manager - Dynamic memory allocator
+//==========================================================
+#ifndef MEM_MANAGER_ENABLED
+#define MEM_MANAGER_ENABLED 1
+#endif
+// <o> MEMORY_MANAGER_SMALL_BLOCK_COUNT - Size of each memory blocks identified as 'small' block.  <0-255> 
+
+
+#ifndef MEMORY_MANAGER_SMALL_BLOCK_COUNT
+#define MEMORY_MANAGER_SMALL_BLOCK_COUNT 1
+#endif
+
+// <o> MEMORY_MANAGER_SMALL_BLOCK_SIZE -  Size of each memory blocks identified as 'small' block. 
+// <i>  Size of each memory blocks identified as 'small' block. Memory block are recommended to be word-sized.
+
+#ifndef MEMORY_MANAGER_SMALL_BLOCK_SIZE
+#define MEMORY_MANAGER_SMALL_BLOCK_SIZE 32
+#endif
+
+// <o> MEMORY_MANAGER_MEDIUM_BLOCK_COUNT - Size of each memory blocks identified as 'medium' block.  <0-255> 
+
+
+#ifndef MEMORY_MANAGER_MEDIUM_BLOCK_COUNT
+#define MEMORY_MANAGER_MEDIUM_BLOCK_COUNT 0
+#endif
+
+// <o> MEMORY_MANAGER_MEDIUM_BLOCK_SIZE -  Size of each memory blocks identified as 'medium' block. 
+// <i>  Size of each memory blocks identified as 'medium' block. Memory block are recommended to be word-sized.
+
+#ifndef MEMORY_MANAGER_MEDIUM_BLOCK_SIZE
+#define MEMORY_MANAGER_MEDIUM_BLOCK_SIZE 256
+#endif
+
+// <o> MEMORY_MANAGER_LARGE_BLOCK_COUNT - Size of each memory blocks identified as 'large' block.  <0-255> 
+
+
+#ifndef MEMORY_MANAGER_LARGE_BLOCK_COUNT
+#define MEMORY_MANAGER_LARGE_BLOCK_COUNT 0
+#endif
+
+// <o> MEMORY_MANAGER_LARGE_BLOCK_SIZE -  Size of each memory blocks identified as 'large' block. 
+// <i>  Size of each memory blocks identified as 'large' block. Memory block are recommended to be word-sized.
+
+#ifndef MEMORY_MANAGER_LARGE_BLOCK_SIZE
+#define MEMORY_MANAGER_LARGE_BLOCK_SIZE 256
+#endif
+
+// <o> MEMORY_MANAGER_XLARGE_BLOCK_COUNT - Size of each memory blocks identified as 'extra large' block.  <0-255> 
+
+
+#ifndef MEMORY_MANAGER_XLARGE_BLOCK_COUNT
+#define MEMORY_MANAGER_XLARGE_BLOCK_COUNT 0
+#endif
+
+// <o> MEMORY_MANAGER_XLARGE_BLOCK_SIZE -  Size of each memory blocks identified as 'extra large' block. 
+// <i>  Size of each memory blocks identified as 'extra large' block. Memory block are recommended to be word-sized.
+
+#ifndef MEMORY_MANAGER_XLARGE_BLOCK_SIZE
+#define MEMORY_MANAGER_XLARGE_BLOCK_SIZE 1320
+#endif
+
+// <o> MEMORY_MANAGER_XXLARGE_BLOCK_COUNT - Size of each memory blocks identified as 'extra extra large' block.  <0-255> 
+
+
+#ifndef MEMORY_MANAGER_XXLARGE_BLOCK_COUNT
+#define MEMORY_MANAGER_XXLARGE_BLOCK_COUNT 0
+#endif
+
+// <o> MEMORY_MANAGER_XXLARGE_BLOCK_SIZE -  Size of each memory blocks identified as 'extra extra large' block. 
+// <i>  Size of each memory blocks identified as 'extra extra large' block. Memory block are recommended to be word-sized.
+
+#ifndef MEMORY_MANAGER_XXLARGE_BLOCK_SIZE
+#define MEMORY_MANAGER_XXLARGE_BLOCK_SIZE 3444
+#endif
+
+// <o> MEMORY_MANAGER_XSMALL_BLOCK_COUNT - Size of each memory blocks identified as 'extra small' block.  <0-255> 
+
+
+#ifndef MEMORY_MANAGER_XSMALL_BLOCK_COUNT
+#define MEMORY_MANAGER_XSMALL_BLOCK_COUNT 0
+#endif
+
+// <o> MEMORY_MANAGER_XSMALL_BLOCK_SIZE -  Size of each memory blocks identified as 'extra small' block. 
+// <i>  Size of each memory blocks identified as 'extra large' block. Memory block are recommended to be word-sized.
+
+#ifndef MEMORY_MANAGER_XSMALL_BLOCK_SIZE
+#define MEMORY_MANAGER_XSMALL_BLOCK_SIZE 64
+#endif
+
+// <o> MEMORY_MANAGER_XXSMALL_BLOCK_COUNT - Size of each memory blocks identified as 'extra extra small' block.  <0-255> 
+
+
+#ifndef MEMORY_MANAGER_XXSMALL_BLOCK_COUNT
+#define MEMORY_MANAGER_XXSMALL_BLOCK_COUNT 0
+#endif
+
+// <o> MEMORY_MANAGER_XXSMALL_BLOCK_SIZE -  Size of each memory blocks identified as 'extra extra small' block. 
+// <i>  Size of each memory blocks identified as 'extra extra small' block. Memory block are recommended to be word-sized.
+
+#ifndef MEMORY_MANAGER_XXSMALL_BLOCK_SIZE
+#define MEMORY_MANAGER_XXSMALL_BLOCK_SIZE 32
+#endif
+
+// <e> MEM_MANAGER_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef MEM_MANAGER_CONFIG_LOG_ENABLED
+#define MEM_MANAGER_CONFIG_LOG_ENABLED 0
+#endif
+// <o> MEM_MANAGER_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef MEM_MANAGER_CONFIG_LOG_LEVEL
+#define MEM_MANAGER_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> MEM_MANAGER_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef MEM_MANAGER_CONFIG_INFO_COLOR
+#define MEM_MANAGER_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> MEM_MANAGER_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef MEM_MANAGER_CONFIG_DEBUG_COLOR
+#define MEM_MANAGER_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <q> MEM_MANAGER_DISABLE_API_PARAM_CHECK  - Disable API parameter checks in the module.
+ 
+
+#ifndef MEM_MANAGER_DISABLE_API_PARAM_CHECK
+#define MEM_MANAGER_DISABLE_API_PARAM_CHECK 0
+#endif
+
+// </e>
+
+// <e> NRF_BALLOC_ENABLED - nrf_balloc - Block allocator module
+//==========================================================
+#ifndef NRF_BALLOC_ENABLED
+#define NRF_BALLOC_ENABLED 1
+#endif
+// <e> NRF_BALLOC_CONFIG_DEBUG_ENABLED - Enables debug mode in the module.
+//==========================================================
+#ifndef NRF_BALLOC_CONFIG_DEBUG_ENABLED
+#define NRF_BALLOC_CONFIG_DEBUG_ENABLED 0
+#endif
+// <o> NRF_BALLOC_CONFIG_HEAD_GUARD_WORDS - Number of words used as head guard.  <0-255> 
+
+
+#ifndef NRF_BALLOC_CONFIG_HEAD_GUARD_WORDS
+#define NRF_BALLOC_CONFIG_HEAD_GUARD_WORDS 1
+#endif
+
+// <o> NRF_BALLOC_CONFIG_TAIL_GUARD_WORDS - Number of words used as tail guard.  <0-255> 
+
+
+#ifndef NRF_BALLOC_CONFIG_TAIL_GUARD_WORDS
+#define NRF_BALLOC_CONFIG_TAIL_GUARD_WORDS 1
+#endif
+
+// <q> NRF_BALLOC_CONFIG_BASIC_CHECKS_ENABLED  - Enables basic checks in this module.
+ 
+
+#ifndef NRF_BALLOC_CONFIG_BASIC_CHECKS_ENABLED
+#define NRF_BALLOC_CONFIG_BASIC_CHECKS_ENABLED 0
+#endif
+
+// <q> NRF_BALLOC_CONFIG_DOUBLE_FREE_CHECK_ENABLED  - Enables double memory free check in this module.
+ 
+
+#ifndef NRF_BALLOC_CONFIG_DOUBLE_FREE_CHECK_ENABLED
+#define NRF_BALLOC_CONFIG_DOUBLE_FREE_CHECK_ENABLED 0
+#endif
+
+// <q> NRF_BALLOC_CONFIG_DATA_TRASHING_CHECK_ENABLED  - Enables free memory corruption check in this module.
+ 
+
+#ifndef NRF_BALLOC_CONFIG_DATA_TRASHING_CHECK_ENABLED
+#define NRF_BALLOC_CONFIG_DATA_TRASHING_CHECK_ENABLED 0
+#endif
+
+// <q> NRF_BALLOC_CLI_CMDS  - Enable CLI commands specific to the module
+ 
+
+#ifndef NRF_BALLOC_CLI_CMDS
+#define NRF_BALLOC_CLI_CMDS 0
+#endif
+
+// </e>
+
+// </e>
+
+// <e> NRF_FSTORAGE_ENABLED - nrf_fstorage - Flash abstraction library
+//==========================================================
+#ifndef NRF_FSTORAGE_ENABLED
+#define NRF_FSTORAGE_ENABLED 1
+#endif
+// <h> nrf_fstorage - Common settings
+
+// <i> Common settings to all fstorage implementations
+//==========================================================
+// <q> NRF_FSTORAGE_PARAM_CHECK_DISABLED  - Disable user input validation
+ 
+
+// <i> If selected, use ASSERT to validate user input.
+// <i> This effectively removes user input validation in production code.
+// <i> Recommended setting: OFF, only enable this setting if size is a major concern.
+
+#ifndef NRF_FSTORAGE_PARAM_CHECK_DISABLED
+#define NRF_FSTORAGE_PARAM_CHECK_DISABLED 1
+#endif
+
+// </h> 
+//==========================================================
+
+// <h> nrf_fstorage_sd - Implementation using the SoftDevice
+
+// <i> Configuration options for the fstorage implementation using the SoftDevice
+//==========================================================
+// <o> NRF_FSTORAGE_SD_QUEUE_SIZE - Size of the internal queue of operations 
+// <i> Increase this value if API calls frequently return the error @ref NRF_ERROR_NO_MEM.
+
+#ifndef NRF_FSTORAGE_SD_QUEUE_SIZE
+#define NRF_FSTORAGE_SD_QUEUE_SIZE 16
+#endif
+
+// <o> NRF_FSTORAGE_SD_MAX_RETRIES - Maximum number of attempts at executing an operation when the SoftDevice is busy 
+// <i> Increase this value if events frequently return the @ref NRF_ERROR_TIMEOUT error.
+// <i> The SoftDevice might fail to schedule flash access due to high BLE activity.
+
+#ifndef NRF_FSTORAGE_SD_MAX_RETRIES
+#define NRF_FSTORAGE_SD_MAX_RETRIES 8
+#endif
+
+// <o> NRF_FSTORAGE_SD_MAX_WRITE_SIZE - Maximum number of bytes to be written to flash in a single operation 
+// <i> This value must be a multiple of four.
+// <i> Lowering this value can increase the chances of the SoftDevice being able to execute flash operations in between radio activity.
+// <i> This value is bound by the maximum number of bytes that can be written to flash in a single call to @ref sd_flash_write.
+// <i> That is 1024 bytes for nRF51 ICs and 4096 bytes for nRF52 ICs.
+
+#ifndef NRF_FSTORAGE_SD_MAX_WRITE_SIZE
+#define NRF_FSTORAGE_SD_MAX_WRITE_SIZE 20
+#endif
+
+// </h> 
+//==========================================================
+
+// </e>
+
+// <q> NRF_MEMOBJ_ENABLED  - nrf_memobj - Linked memory allocator module
+ 
+
+#ifndef NRF_MEMOBJ_ENABLED
+#define NRF_MEMOBJ_ENABLED 1
+#endif
+
+// <e> NRF_QUEUE_ENABLED - nrf_queue - Queue module
+//==========================================================
+#ifndef NRF_QUEUE_ENABLED
+#define NRF_QUEUE_ENABLED 0
+#endif
+// <q> NRF_QUEUE_CLI_CMDS  - Enable CLI commands specific to the module
+ 
+
+#ifndef NRF_QUEUE_CLI_CMDS
+#define NRF_QUEUE_CLI_CMDS 0
+#endif
+
+// </e>
+
+// <q> NRF_SECTION_ITER_ENABLED  - nrf_section_iter - Section iterator
+ 
+
+#ifndef NRF_SECTION_ITER_ENABLED
+#define NRF_SECTION_ITER_ENABLED 1
+#endif
+
+// <q> NRF_STRERROR_ENABLED  - nrf_strerror - Library for converting error code to string.
+ 
+
+#ifndef NRF_STRERROR_ENABLED
+#define NRF_STRERROR_ENABLED 1
+#endif
+
+// <h> nrf_fprintf - fprintf function.
+
+//==========================================================
+// <q> NRF_FPRINTF_ENABLED  - Enable/disable fprintf module.
+ 
+
+#ifndef NRF_FPRINTF_ENABLED
+#define NRF_FPRINTF_ENABLED 1
+#endif
+
+// <q> NRF_FPRINTF_FLAG_AUTOMATIC_CR_ON_LF_ENABLED  - For each printed LF, function will add CR.
+ 
+
+#ifndef NRF_FPRINTF_FLAG_AUTOMATIC_CR_ON_LF_ENABLED
+#define NRF_FPRINTF_FLAG_AUTOMATIC_CR_ON_LF_ENABLED 1
+#endif
+
+// <q> NRF_FPRINTF_DOUBLE_ENABLED  - Enable IEEE-754 double precision formatting.
+ 
+
+#ifndef NRF_FPRINTF_DOUBLE_ENABLED
+#define NRF_FPRINTF_DOUBLE_ENABLED 0
+#endif
+
+// </h> 
+//==========================================================
+
+// </h> 
+//==========================================================
+
+// <h> nRF_Log 
+
+//==========================================================
+// <e> NRF_LOG_BACKEND_RTT_ENABLED - nrf_log_backend_rtt - Log RTT backend
+//==========================================================
+#ifndef NRF_LOG_BACKEND_RTT_ENABLED
+#define NRF_LOG_BACKEND_RTT_ENABLED 1
+#endif
+// <o> NRF_LOG_BACKEND_RTT_TEMP_BUFFER_SIZE - Size of buffer for partially processed strings. 
+// <i> Size of the buffer is a trade-off between RAM usage and processing.
+// <i> if buffer is smaller then strings will often be fragmented.
+// <i> It is recommended to use size which will fit typical log and only the
+// <i> longer one will be fragmented.
+
+#ifndef NRF_LOG_BACKEND_RTT_TEMP_BUFFER_SIZE
+#define NRF_LOG_BACKEND_RTT_TEMP_BUFFER_SIZE 64
+#endif
+
+// <o> NRF_LOG_BACKEND_RTT_TX_RETRY_DELAY_MS - Period before retrying writing to RTT 
+#ifndef NRF_LOG_BACKEND_RTT_TX_RETRY_DELAY_MS
+#define NRF_LOG_BACKEND_RTT_TX_RETRY_DELAY_MS 1
+#endif
+
+// <o> NRF_LOG_BACKEND_RTT_TX_RETRY_CNT - Writing to RTT retries. 
+// <i> If RTT fails to accept any new data after retries
+// <i> module assumes that host is not active and on next
+// <i> request it will perform only one write attempt.
+// <i> On successful writing, module assumes that host is active
+// <i> and scheme with retry is applied again.
+
+#ifndef NRF_LOG_BACKEND_RTT_TX_RETRY_CNT
+#define NRF_LOG_BACKEND_RTT_TX_RETRY_CNT 3
+#endif
+
+// </e>
+
+// <e> NRF_LOG_ENABLED - nrf_log - Logger
+//==========================================================
+#ifndef NRF_LOG_ENABLED
+#define NRF_LOG_ENABLED 1
+#endif
+// <h> Log message pool - Configuration of log message pool
+
+//==========================================================
+// <o> NRF_LOG_MSGPOOL_ELEMENT_SIZE - Size of a single element in the pool of memory objects. 
+// <i> If a small value is set, then performance of logs processing
+// <i> is degraded because data is fragmented. Bigger value impacts
+// <i> RAM memory utilization. The size is set to fit a message with
+// <i> a timestamp and up to 2 arguments in a single memory object.
+
+#ifndef NRF_LOG_MSGPOOL_ELEMENT_SIZE
+#define NRF_LOG_MSGPOOL_ELEMENT_SIZE 20
+#endif
+
+// <o> NRF_LOG_MSGPOOL_ELEMENT_COUNT - Number of elements in the pool of memory objects 
+// <i> If a small value is set, then it may lead to a deadlock
+// <i> in certain cases if backend has high latency and holds
+// <i> multiple messages for long time. Bigger value impacts
+// <i> RAM memory usage.
+
+#ifndef NRF_LOG_MSGPOOL_ELEMENT_COUNT
+#define NRF_LOG_MSGPOOL_ELEMENT_COUNT 8
+#endif
+
+// </h> 
+//==========================================================
+
+// <q> NRF_LOG_ALLOW_OVERFLOW  - Configures behavior when circular buffer is full.
+ 
+
+// <i> If set then oldest logs are overwritten. Otherwise a 
+// <i> marker is injected informing about overflow.
+
+#ifndef NRF_LOG_ALLOW_OVERFLOW
+#define NRF_LOG_ALLOW_OVERFLOW 1
+#endif
+
+// <o> NRF_LOG_BUFSIZE  - Size of the buffer for storing logs (in bytes).
+ 
+
+// <i> Must be power of 2 and multiple of 4.
+// <i> If NRF_LOG_DEFERRED = 0 then buffer size can be reduced to minimum.
+// <128=> 128 
+// <256=> 256 
+// <512=> 512 
+// <1024=> 1024 
+// <2048=> 2048 
+// <4096=> 4096 
+// <8192=> 8192 
+// <16384=> 16384 
+
+#ifndef NRF_LOG_BUFSIZE
+#define NRF_LOG_BUFSIZE 4096
+#endif
+
+// <q> NRF_LOG_CLI_CMDS  - Enable CLI commands for the module.
+ 
+
+#ifndef NRF_LOG_CLI_CMDS
+#define NRF_LOG_CLI_CMDS 0
+#endif
+
+// <o> NRF_LOG_DEFAULT_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef NRF_LOG_DEFAULT_LEVEL
+#define NRF_LOG_DEFAULT_LEVEL 4
+#endif
+
+// <q> NRF_LOG_DEFERRED  - Enable deffered logger.
+ 
+
+// <i> Log data is buffered and can be processed in idle.
+
+#ifndef NRF_LOG_DEFERRED
+#define NRF_LOG_DEFERRED 1
+#endif
+
+// <q> NRF_LOG_FILTERS_ENABLED  - Enable dynamic filtering of logs.
+ 
+
+#ifndef NRF_LOG_FILTERS_ENABLED
+#define NRF_LOG_FILTERS_ENABLED 0
+#endif
+
+// <q> NRF_LOG_NON_DEFFERED_CRITICAL_REGION_ENABLED  - Enable use of critical region for non deffered mode when flushing logs.
+ 
+
+// <i> When enabled NRF_LOG_FLUSH is called from critical section when non deffered mode is used.
+// <i> Log output will never be corrupted as access to the log backend is exclusive
+// <i> but system will spend significant amount of time in critical section
+
+#ifndef NRF_LOG_NON_DEFFERED_CRITICAL_REGION_ENABLED
+#define NRF_LOG_NON_DEFFERED_CRITICAL_REGION_ENABLED 0
+#endif
+
+// <o> NRF_LOG_STR_PUSH_BUFFER_SIZE  - Size of the buffer dedicated for strings stored using @ref NRF_LOG_PUSH.
+ 
+// <16=> 16 
+// <32=> 32 
+// <64=> 64 
+// <128=> 128 
+// <256=> 256 
+// <512=> 512 
+// <1024=> 1024 
+
+#ifndef NRF_LOG_STR_PUSH_BUFFER_SIZE
+#define NRF_LOG_STR_PUSH_BUFFER_SIZE 128
+#endif
+
+// <o> NRF_LOG_STR_PUSH_BUFFER_SIZE  - Size of the buffer dedicated for strings stored using @ref NRF_LOG_PUSH.
+ 
+// <16=> 16 
+// <32=> 32 
+// <64=> 64 
+// <128=> 128 
+// <256=> 256 
+// <512=> 512 
+// <1024=> 1024 
+
+#ifndef NRF_LOG_STR_PUSH_BUFFER_SIZE
+#define NRF_LOG_STR_PUSH_BUFFER_SIZE 128
+#endif
+
+// <e> NRF_LOG_USES_COLORS - If enabled then ANSI escape code for colors is prefixed to every string
+//==========================================================
+#ifndef NRF_LOG_USES_COLORS
+#define NRF_LOG_USES_COLORS 0
+#endif
+// <o> NRF_LOG_COLOR_DEFAULT  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_LOG_COLOR_DEFAULT
+#define NRF_LOG_COLOR_DEFAULT 0
+#endif
+
+// <o> NRF_LOG_ERROR_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_LOG_ERROR_COLOR
+#define NRF_LOG_ERROR_COLOR 2
+#endif
+
+// <o> NRF_LOG_WARNING_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_LOG_WARNING_COLOR
+#define NRF_LOG_WARNING_COLOR 4
+#endif
+
+// </e>
+
+// <e> NRF_LOG_USES_TIMESTAMP - Enable timestamping
+
+// <i> Function for getting the timestamp is provided by the user
+//==========================================================
+#ifndef NRF_LOG_USES_TIMESTAMP
+#define NRF_LOG_USES_TIMESTAMP 0
+#endif
+// <o> NRF_LOG_TIMESTAMP_DEFAULT_FREQUENCY - Default frequency of the timestamp (in Hz) or 0 to use app_timer frequency. 
+#ifndef NRF_LOG_TIMESTAMP_DEFAULT_FREQUENCY
+#define NRF_LOG_TIMESTAMP_DEFAULT_FREQUENCY 0
+#endif
+
+// </e>
+
+// <h> nrf_log module configuration 
+
+//==========================================================
+// <h> nrf_log in nRF_Core 
+
+//==========================================================
+// <e> NRF_MPU_LIB_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef NRF_MPU_LIB_CONFIG_LOG_ENABLED
+#define NRF_MPU_LIB_CONFIG_LOG_ENABLED 0
+#endif
+// <o> NRF_MPU_LIB_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef NRF_MPU_LIB_CONFIG_LOG_LEVEL
+#define NRF_MPU_LIB_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> NRF_MPU_LIB_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_MPU_LIB_CONFIG_INFO_COLOR
+#define NRF_MPU_LIB_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> NRF_MPU_LIB_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_MPU_LIB_CONFIG_DEBUG_COLOR
+#define NRF_MPU_LIB_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> NRF_STACK_GUARD_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef NRF_STACK_GUARD_CONFIG_LOG_ENABLED
+#define NRF_STACK_GUARD_CONFIG_LOG_ENABLED 0
+#endif
+// <o> NRF_STACK_GUARD_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef NRF_STACK_GUARD_CONFIG_LOG_LEVEL
+#define NRF_STACK_GUARD_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> NRF_STACK_GUARD_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_STACK_GUARD_CONFIG_INFO_COLOR
+#define NRF_STACK_GUARD_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> NRF_STACK_GUARD_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_STACK_GUARD_CONFIG_DEBUG_COLOR
+#define NRF_STACK_GUARD_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> TASK_MANAGER_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef TASK_MANAGER_CONFIG_LOG_ENABLED
+#define TASK_MANAGER_CONFIG_LOG_ENABLED 0
+#endif
+// <o> TASK_MANAGER_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef TASK_MANAGER_CONFIG_LOG_LEVEL
+#define TASK_MANAGER_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> TASK_MANAGER_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef TASK_MANAGER_CONFIG_INFO_COLOR
+#define TASK_MANAGER_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> TASK_MANAGER_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef TASK_MANAGER_CONFIG_DEBUG_COLOR
+#define TASK_MANAGER_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// </h> 
+//==========================================================
+
+// <h> nrf_log in nRF_Drivers 
+
+//==========================================================
+// <e> CLOCK_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef CLOCK_CONFIG_LOG_ENABLED
+#define CLOCK_CONFIG_LOG_ENABLED 0
+#endif
+// <o> CLOCK_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef CLOCK_CONFIG_LOG_LEVEL
+#define CLOCK_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> CLOCK_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef CLOCK_CONFIG_INFO_COLOR
+#define CLOCK_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> CLOCK_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef CLOCK_CONFIG_DEBUG_COLOR
+#define CLOCK_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> COMP_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef COMP_CONFIG_LOG_ENABLED
+#define COMP_CONFIG_LOG_ENABLED 0
+#endif
+// <o> COMP_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef COMP_CONFIG_LOG_LEVEL
+#define COMP_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> COMP_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef COMP_CONFIG_INFO_COLOR
+#define COMP_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> COMP_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef COMP_CONFIG_DEBUG_COLOR
+#define COMP_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> GPIOTE_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef GPIOTE_CONFIG_LOG_ENABLED
+#define GPIOTE_CONFIG_LOG_ENABLED 0
+#endif
+// <o> GPIOTE_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef GPIOTE_CONFIG_LOG_LEVEL
+#define GPIOTE_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> GPIOTE_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef GPIOTE_CONFIG_INFO_COLOR
+#define GPIOTE_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> GPIOTE_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef GPIOTE_CONFIG_DEBUG_COLOR
+#define GPIOTE_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> LPCOMP_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef LPCOMP_CONFIG_LOG_ENABLED
+#define LPCOMP_CONFIG_LOG_ENABLED 0
+#endif
+// <o> LPCOMP_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef LPCOMP_CONFIG_LOG_LEVEL
+#define LPCOMP_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> LPCOMP_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef LPCOMP_CONFIG_INFO_COLOR
+#define LPCOMP_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> LPCOMP_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef LPCOMP_CONFIG_DEBUG_COLOR
+#define LPCOMP_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> MAX3421E_HOST_CONFIG_LOG_ENABLED - Enable logging in the module
+//==========================================================
+#ifndef MAX3421E_HOST_CONFIG_LOG_ENABLED
+#define MAX3421E_HOST_CONFIG_LOG_ENABLED 0
+#endif
+// <o> MAX3421E_HOST_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef MAX3421E_HOST_CONFIG_LOG_LEVEL
+#define MAX3421E_HOST_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> MAX3421E_HOST_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef MAX3421E_HOST_CONFIG_INFO_COLOR
+#define MAX3421E_HOST_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> MAX3421E_HOST_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef MAX3421E_HOST_CONFIG_DEBUG_COLOR
+#define MAX3421E_HOST_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> NRFX_USBD_CONFIG_LOG_ENABLED - Enable logging in the module
+//==========================================================
+#ifndef NRFX_USBD_CONFIG_LOG_ENABLED
+#define NRFX_USBD_CONFIG_LOG_ENABLED 0
+#endif
+// <o> NRFX_USBD_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef NRFX_USBD_CONFIG_LOG_LEVEL
+#define NRFX_USBD_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> NRFX_USBD_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRFX_USBD_CONFIG_INFO_COLOR
+#define NRFX_USBD_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> NRFX_USBD_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRFX_USBD_CONFIG_DEBUG_COLOR
+#define NRFX_USBD_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> PDM_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef PDM_CONFIG_LOG_ENABLED
+#define PDM_CONFIG_LOG_ENABLED 0
+#endif
+// <o> PDM_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef PDM_CONFIG_LOG_LEVEL
+#define PDM_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> PDM_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef PDM_CONFIG_INFO_COLOR
+#define PDM_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> PDM_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef PDM_CONFIG_DEBUG_COLOR
+#define PDM_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> PPI_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef PPI_CONFIG_LOG_ENABLED
+#define PPI_CONFIG_LOG_ENABLED 0
+#endif
+// <o> PPI_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef PPI_CONFIG_LOG_LEVEL
+#define PPI_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> PPI_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef PPI_CONFIG_INFO_COLOR
+#define PPI_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> PPI_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef PPI_CONFIG_DEBUG_COLOR
+#define PPI_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> PWM_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef PWM_CONFIG_LOG_ENABLED
+#define PWM_CONFIG_LOG_ENABLED 0
+#endif
+// <o> PWM_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef PWM_CONFIG_LOG_LEVEL
+#define PWM_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> PWM_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef PWM_CONFIG_INFO_COLOR
+#define PWM_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> PWM_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef PWM_CONFIG_DEBUG_COLOR
+#define PWM_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> QDEC_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef QDEC_CONFIG_LOG_ENABLED
+#define QDEC_CONFIG_LOG_ENABLED 0
+#endif
+// <o> QDEC_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef QDEC_CONFIG_LOG_LEVEL
+#define QDEC_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> QDEC_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef QDEC_CONFIG_INFO_COLOR
+#define QDEC_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> QDEC_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef QDEC_CONFIG_DEBUG_COLOR
+#define QDEC_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> RNG_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef RNG_CONFIG_LOG_ENABLED
+#define RNG_CONFIG_LOG_ENABLED 0
+#endif
+// <o> RNG_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef RNG_CONFIG_LOG_LEVEL
+#define RNG_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> RNG_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef RNG_CONFIG_INFO_COLOR
+#define RNG_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> RNG_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef RNG_CONFIG_DEBUG_COLOR
+#define RNG_CONFIG_DEBUG_COLOR 0
+#endif
+
+// <q> RNG_CONFIG_RANDOM_NUMBER_LOG_ENABLED  - Enables logging of random numbers.
+ 
+
+#ifndef RNG_CONFIG_RANDOM_NUMBER_LOG_ENABLED
+#define RNG_CONFIG_RANDOM_NUMBER_LOG_ENABLED 0
+#endif
+
+// </e>
+
+// <e> RTC_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef RTC_CONFIG_LOG_ENABLED
+#define RTC_CONFIG_LOG_ENABLED 0
+#endif
+// <o> RTC_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef RTC_CONFIG_LOG_LEVEL
+#define RTC_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> RTC_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef RTC_CONFIG_INFO_COLOR
+#define RTC_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> RTC_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef RTC_CONFIG_DEBUG_COLOR
+#define RTC_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> SAADC_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef SAADC_CONFIG_LOG_ENABLED
+#define SAADC_CONFIG_LOG_ENABLED 0
+#endif
+// <o> SAADC_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef SAADC_CONFIG_LOG_LEVEL
+#define SAADC_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> SAADC_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef SAADC_CONFIG_INFO_COLOR
+#define SAADC_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> SAADC_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef SAADC_CONFIG_DEBUG_COLOR
+#define SAADC_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> SPIS_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef SPIS_CONFIG_LOG_ENABLED
+#define SPIS_CONFIG_LOG_ENABLED 0
+#endif
+// <o> SPIS_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef SPIS_CONFIG_LOG_LEVEL
+#define SPIS_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> SPIS_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef SPIS_CONFIG_INFO_COLOR
+#define SPIS_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> SPIS_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef SPIS_CONFIG_DEBUG_COLOR
+#define SPIS_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> SPI_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef SPI_CONFIG_LOG_ENABLED
+#define SPI_CONFIG_LOG_ENABLED 0
+#endif
+// <o> SPI_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef SPI_CONFIG_LOG_LEVEL
+#define SPI_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> SPI_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef SPI_CONFIG_INFO_COLOR
+#define SPI_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> SPI_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef SPI_CONFIG_DEBUG_COLOR
+#define SPI_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> TIMER_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef TIMER_CONFIG_LOG_ENABLED
+#define TIMER_CONFIG_LOG_ENABLED 0
+#endif
+// <o> TIMER_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef TIMER_CONFIG_LOG_LEVEL
+#define TIMER_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> TIMER_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef TIMER_CONFIG_INFO_COLOR
+#define TIMER_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> TIMER_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef TIMER_CONFIG_DEBUG_COLOR
+#define TIMER_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> TWIS_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef TWIS_CONFIG_LOG_ENABLED
+#define TWIS_CONFIG_LOG_ENABLED 0
+#endif
+// <o> TWIS_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef TWIS_CONFIG_LOG_LEVEL
+#define TWIS_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> TWIS_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef TWIS_CONFIG_INFO_COLOR
+#define TWIS_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> TWIS_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef TWIS_CONFIG_DEBUG_COLOR
+#define TWIS_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> TWI_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef TWI_CONFIG_LOG_ENABLED
+#define TWI_CONFIG_LOG_ENABLED 0
+#endif
+// <o> TWI_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef TWI_CONFIG_LOG_LEVEL
+#define TWI_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> TWI_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef TWI_CONFIG_INFO_COLOR
+#define TWI_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> TWI_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef TWI_CONFIG_DEBUG_COLOR
+#define TWI_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> UART_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef UART_CONFIG_LOG_ENABLED
+#define UART_CONFIG_LOG_ENABLED 0
+#endif
+// <o> UART_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef UART_CONFIG_LOG_LEVEL
+#define UART_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> UART_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef UART_CONFIG_INFO_COLOR
+#define UART_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> UART_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef UART_CONFIG_DEBUG_COLOR
+#define UART_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> USBD_CONFIG_LOG_ENABLED - Enable logging in the module
+//==========================================================
+#ifndef USBD_CONFIG_LOG_ENABLED
+#define USBD_CONFIG_LOG_ENABLED 0
+#endif
+// <o> USBD_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef USBD_CONFIG_LOG_LEVEL
+#define USBD_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> USBD_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef USBD_CONFIG_INFO_COLOR
+#define USBD_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> USBD_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef USBD_CONFIG_DEBUG_COLOR
+#define USBD_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> WDT_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef WDT_CONFIG_LOG_ENABLED
+#define WDT_CONFIG_LOG_ENABLED 0
+#endif
+// <o> WDT_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef WDT_CONFIG_LOG_LEVEL
+#define WDT_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> WDT_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef WDT_CONFIG_INFO_COLOR
+#define WDT_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> WDT_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef WDT_CONFIG_DEBUG_COLOR
+#define WDT_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// </h> 
+//==========================================================
+
+// <h> nrf_log in nRF_Libraries 
+
+//==========================================================
+// <e> APP_BUTTON_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef APP_BUTTON_CONFIG_LOG_ENABLED
+#define APP_BUTTON_CONFIG_LOG_ENABLED 0
+#endif
+// <o> APP_BUTTON_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef APP_BUTTON_CONFIG_LOG_LEVEL
+#define APP_BUTTON_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> APP_BUTTON_CONFIG_INITIAL_LOG_LEVEL  - Initial severity level if dynamic filtering is enabled.
+ 
+
+// <i> If module generates a lot of logs, initial log level can
+// <i> be decreased to prevent flooding. Severity level can be
+// <i> increased on instance basis.
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef APP_BUTTON_CONFIG_INITIAL_LOG_LEVEL
+#define APP_BUTTON_CONFIG_INITIAL_LOG_LEVEL 3
+#endif
+
+// <o> APP_BUTTON_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef APP_BUTTON_CONFIG_INFO_COLOR
+#define APP_BUTTON_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> APP_BUTTON_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef APP_BUTTON_CONFIG_DEBUG_COLOR
+#define APP_BUTTON_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> APP_TIMER_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef APP_TIMER_CONFIG_LOG_ENABLED
+#define APP_TIMER_CONFIG_LOG_ENABLED 0
+#endif
+// <o> APP_TIMER_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef APP_TIMER_CONFIG_LOG_LEVEL
+#define APP_TIMER_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> APP_TIMER_CONFIG_INITIAL_LOG_LEVEL  - Initial severity level if dynamic filtering is enabled.
+ 
+
+// <i> If module generates a lot of logs, initial log level can
+// <i> be decreased to prevent flooding. Severity level can be
+// <i> increased on instance basis.
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef APP_TIMER_CONFIG_INITIAL_LOG_LEVEL
+#define APP_TIMER_CONFIG_INITIAL_LOG_LEVEL 3
+#endif
+
+// <o> APP_TIMER_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef APP_TIMER_CONFIG_INFO_COLOR
+#define APP_TIMER_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> APP_TIMER_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef APP_TIMER_CONFIG_DEBUG_COLOR
+#define APP_TIMER_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> APP_USBD_CDC_ACM_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef APP_USBD_CDC_ACM_CONFIG_LOG_ENABLED
+#define APP_USBD_CDC_ACM_CONFIG_LOG_ENABLED 0
+#endif
+// <o> APP_USBD_CDC_ACM_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef APP_USBD_CDC_ACM_CONFIG_LOG_LEVEL
+#define APP_USBD_CDC_ACM_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> APP_USBD_CDC_ACM_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef APP_USBD_CDC_ACM_CONFIG_INFO_COLOR
+#define APP_USBD_CDC_ACM_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> APP_USBD_CDC_ACM_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef APP_USBD_CDC_ACM_CONFIG_DEBUG_COLOR
+#define APP_USBD_CDC_ACM_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> APP_USBD_CONFIG_LOG_ENABLED - Enable logging in the module.
+//==========================================================
+#ifndef APP_USBD_CONFIG_LOG_ENABLED
+#define APP_USBD_CONFIG_LOG_ENABLED 0
+#endif
+// <o> APP_USBD_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef APP_USBD_CONFIG_LOG_LEVEL
+#define APP_USBD_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> APP_USBD_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef APP_USBD_CONFIG_INFO_COLOR
+#define APP_USBD_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> APP_USBD_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef APP_USBD_CONFIG_DEBUG_COLOR
+#define APP_USBD_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> APP_USBD_DUMMY_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef APP_USBD_DUMMY_CONFIG_LOG_ENABLED
+#define APP_USBD_DUMMY_CONFIG_LOG_ENABLED 0
+#endif
+// <o> APP_USBD_DUMMY_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef APP_USBD_DUMMY_CONFIG_LOG_LEVEL
+#define APP_USBD_DUMMY_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> APP_USBD_DUMMY_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef APP_USBD_DUMMY_CONFIG_INFO_COLOR
+#define APP_USBD_DUMMY_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> APP_USBD_DUMMY_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef APP_USBD_DUMMY_CONFIG_DEBUG_COLOR
+#define APP_USBD_DUMMY_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> APP_USBD_MSC_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef APP_USBD_MSC_CONFIG_LOG_ENABLED
+#define APP_USBD_MSC_CONFIG_LOG_ENABLED 0
+#endif
+// <o> APP_USBD_MSC_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef APP_USBD_MSC_CONFIG_LOG_LEVEL
+#define APP_USBD_MSC_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> APP_USBD_MSC_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef APP_USBD_MSC_CONFIG_INFO_COLOR
+#define APP_USBD_MSC_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> APP_USBD_MSC_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef APP_USBD_MSC_CONFIG_DEBUG_COLOR
+#define APP_USBD_MSC_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> APP_USBD_NRF_DFU_TRIGGER_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef APP_USBD_NRF_DFU_TRIGGER_CONFIG_LOG_ENABLED
+#define APP_USBD_NRF_DFU_TRIGGER_CONFIG_LOG_ENABLED 0
+#endif
+// <o> APP_USBD_NRF_DFU_TRIGGER_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef APP_USBD_NRF_DFU_TRIGGER_CONFIG_LOG_LEVEL
+#define APP_USBD_NRF_DFU_TRIGGER_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> APP_USBD_NRF_DFU_TRIGGER_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef APP_USBD_NRF_DFU_TRIGGER_CONFIG_INFO_COLOR
+#define APP_USBD_NRF_DFU_TRIGGER_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> APP_USBD_NRF_DFU_TRIGGER_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef APP_USBD_NRF_DFU_TRIGGER_CONFIG_DEBUG_COLOR
+#define APP_USBD_NRF_DFU_TRIGGER_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> NRF_ATFIFO_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef NRF_ATFIFO_CONFIG_LOG_ENABLED
+#define NRF_ATFIFO_CONFIG_LOG_ENABLED 0
+#endif
+// <o> NRF_ATFIFO_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef NRF_ATFIFO_CONFIG_LOG_LEVEL
+#define NRF_ATFIFO_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> NRF_ATFIFO_CONFIG_LOG_INIT_FILTER_LEVEL  - Initial severity level if dynamic filtering is enabled
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef NRF_ATFIFO_CONFIG_LOG_INIT_FILTER_LEVEL
+#define NRF_ATFIFO_CONFIG_LOG_INIT_FILTER_LEVEL 3
+#endif
+
+// <o> NRF_ATFIFO_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_ATFIFO_CONFIG_INFO_COLOR
+#define NRF_ATFIFO_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> NRF_ATFIFO_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_ATFIFO_CONFIG_DEBUG_COLOR
+#define NRF_ATFIFO_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> NRF_BALLOC_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef NRF_BALLOC_CONFIG_LOG_ENABLED
+#define NRF_BALLOC_CONFIG_LOG_ENABLED 0
+#endif
+// <o> NRF_BALLOC_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef NRF_BALLOC_CONFIG_LOG_LEVEL
+#define NRF_BALLOC_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> NRF_BALLOC_CONFIG_INITIAL_LOG_LEVEL  - Initial severity level if dynamic filtering is enabled.
+ 
+
+// <i> If module generates a lot of logs, initial log level can
+// <i> be decreased to prevent flooding. Severity level can be
+// <i> increased on instance basis.
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef NRF_BALLOC_CONFIG_INITIAL_LOG_LEVEL
+#define NRF_BALLOC_CONFIG_INITIAL_LOG_LEVEL 3
+#endif
+
+// <o> NRF_BALLOC_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_BALLOC_CONFIG_INFO_COLOR
+#define NRF_BALLOC_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> NRF_BALLOC_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_BALLOC_CONFIG_DEBUG_COLOR
+#define NRF_BALLOC_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> NRF_BLOCK_DEV_EMPTY_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef NRF_BLOCK_DEV_EMPTY_CONFIG_LOG_ENABLED
+#define NRF_BLOCK_DEV_EMPTY_CONFIG_LOG_ENABLED 0
+#endif
+// <o> NRF_BLOCK_DEV_EMPTY_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef NRF_BLOCK_DEV_EMPTY_CONFIG_LOG_LEVEL
+#define NRF_BLOCK_DEV_EMPTY_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> NRF_BLOCK_DEV_EMPTY_CONFIG_LOG_INIT_FILTER_LEVEL  - Initial severity level if dynamic filtering is enabled
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef NRF_BLOCK_DEV_EMPTY_CONFIG_LOG_INIT_FILTER_LEVEL
+#define NRF_BLOCK_DEV_EMPTY_CONFIG_LOG_INIT_FILTER_LEVEL 3
+#endif
+
+// <o> NRF_BLOCK_DEV_EMPTY_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_BLOCK_DEV_EMPTY_CONFIG_INFO_COLOR
+#define NRF_BLOCK_DEV_EMPTY_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> NRF_BLOCK_DEV_EMPTY_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_BLOCK_DEV_EMPTY_CONFIG_DEBUG_COLOR
+#define NRF_BLOCK_DEV_EMPTY_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> NRF_BLOCK_DEV_QSPI_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef NRF_BLOCK_DEV_QSPI_CONFIG_LOG_ENABLED
+#define NRF_BLOCK_DEV_QSPI_CONFIG_LOG_ENABLED 0
+#endif
+// <o> NRF_BLOCK_DEV_QSPI_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef NRF_BLOCK_DEV_QSPI_CONFIG_LOG_LEVEL
+#define NRF_BLOCK_DEV_QSPI_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> NRF_BLOCK_DEV_QSPI_CONFIG_LOG_INIT_FILTER_LEVEL  - Initial severity level if dynamic filtering is enabled
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef NRF_BLOCK_DEV_QSPI_CONFIG_LOG_INIT_FILTER_LEVEL
+#define NRF_BLOCK_DEV_QSPI_CONFIG_LOG_INIT_FILTER_LEVEL 3
+#endif
+
+// <o> NRF_BLOCK_DEV_QSPI_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_BLOCK_DEV_QSPI_CONFIG_INFO_COLOR
+#define NRF_BLOCK_DEV_QSPI_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> NRF_BLOCK_DEV_QSPI_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_BLOCK_DEV_QSPI_CONFIG_DEBUG_COLOR
+#define NRF_BLOCK_DEV_QSPI_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> NRF_BLOCK_DEV_RAM_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef NRF_BLOCK_DEV_RAM_CONFIG_LOG_ENABLED
+#define NRF_BLOCK_DEV_RAM_CONFIG_LOG_ENABLED 0
+#endif
+// <o> NRF_BLOCK_DEV_RAM_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef NRF_BLOCK_DEV_RAM_CONFIG_LOG_LEVEL
+#define NRF_BLOCK_DEV_RAM_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> NRF_BLOCK_DEV_RAM_CONFIG_LOG_INIT_FILTER_LEVEL  - Initial severity level if dynamic filtering is enabled
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef NRF_BLOCK_DEV_RAM_CONFIG_LOG_INIT_FILTER_LEVEL
+#define NRF_BLOCK_DEV_RAM_CONFIG_LOG_INIT_FILTER_LEVEL 3
+#endif
+
+// <o> NRF_BLOCK_DEV_RAM_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_BLOCK_DEV_RAM_CONFIG_INFO_COLOR
+#define NRF_BLOCK_DEV_RAM_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> NRF_BLOCK_DEV_RAM_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_BLOCK_DEV_RAM_CONFIG_DEBUG_COLOR
+#define NRF_BLOCK_DEV_RAM_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> NRF_CLI_BLE_UART_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef NRF_CLI_BLE_UART_CONFIG_LOG_ENABLED
+#define NRF_CLI_BLE_UART_CONFIG_LOG_ENABLED 0
+#endif
+// <o> NRF_CLI_BLE_UART_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef NRF_CLI_BLE_UART_CONFIG_LOG_LEVEL
+#define NRF_CLI_BLE_UART_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> NRF_CLI_BLE_UART_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_CLI_BLE_UART_CONFIG_INFO_COLOR
+#define NRF_CLI_BLE_UART_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> NRF_CLI_BLE_UART_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_CLI_BLE_UART_CONFIG_DEBUG_COLOR
+#define NRF_CLI_BLE_UART_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> NRF_CLI_LIBUARTE_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef NRF_CLI_LIBUARTE_CONFIG_LOG_ENABLED
+#define NRF_CLI_LIBUARTE_CONFIG_LOG_ENABLED 0
+#endif
+// <o> NRF_CLI_LIBUARTE_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef NRF_CLI_LIBUARTE_CONFIG_LOG_LEVEL
+#define NRF_CLI_LIBUARTE_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> NRF_CLI_LIBUARTE_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_CLI_LIBUARTE_CONFIG_INFO_COLOR
+#define NRF_CLI_LIBUARTE_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> NRF_CLI_LIBUARTE_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_CLI_LIBUARTE_CONFIG_DEBUG_COLOR
+#define NRF_CLI_LIBUARTE_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> NRF_CLI_UART_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef NRF_CLI_UART_CONFIG_LOG_ENABLED
+#define NRF_CLI_UART_CONFIG_LOG_ENABLED 0
+#endif
+// <o> NRF_CLI_UART_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef NRF_CLI_UART_CONFIG_LOG_LEVEL
+#define NRF_CLI_UART_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> NRF_CLI_UART_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_CLI_UART_CONFIG_INFO_COLOR
+#define NRF_CLI_UART_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> NRF_CLI_UART_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_CLI_UART_CONFIG_DEBUG_COLOR
+#define NRF_CLI_UART_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> NRF_LIBUARTE_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef NRF_LIBUARTE_CONFIG_LOG_ENABLED
+#define NRF_LIBUARTE_CONFIG_LOG_ENABLED 0
+#endif
+// <o> NRF_LIBUARTE_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef NRF_LIBUARTE_CONFIG_LOG_LEVEL
+#define NRF_LIBUARTE_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> NRF_LIBUARTE_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_LIBUARTE_CONFIG_INFO_COLOR
+#define NRF_LIBUARTE_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> NRF_LIBUARTE_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_LIBUARTE_CONFIG_DEBUG_COLOR
+#define NRF_LIBUARTE_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> NRF_MEMOBJ_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef NRF_MEMOBJ_CONFIG_LOG_ENABLED
+#define NRF_MEMOBJ_CONFIG_LOG_ENABLED 0
+#endif
+// <o> NRF_MEMOBJ_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef NRF_MEMOBJ_CONFIG_LOG_LEVEL
+#define NRF_MEMOBJ_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> NRF_MEMOBJ_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_MEMOBJ_CONFIG_INFO_COLOR
+#define NRF_MEMOBJ_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> NRF_MEMOBJ_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_MEMOBJ_CONFIG_DEBUG_COLOR
+#define NRF_MEMOBJ_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> NRF_PWR_MGMT_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef NRF_PWR_MGMT_CONFIG_LOG_ENABLED
+#define NRF_PWR_MGMT_CONFIG_LOG_ENABLED 0
+#endif
+// <o> NRF_PWR_MGMT_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef NRF_PWR_MGMT_CONFIG_LOG_LEVEL
+#define NRF_PWR_MGMT_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> NRF_PWR_MGMT_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_PWR_MGMT_CONFIG_INFO_COLOR
+#define NRF_PWR_MGMT_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> NRF_PWR_MGMT_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_PWR_MGMT_CONFIG_DEBUG_COLOR
+#define NRF_PWR_MGMT_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> NRF_QUEUE_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef NRF_QUEUE_CONFIG_LOG_ENABLED
+#define NRF_QUEUE_CONFIG_LOG_ENABLED 0
+#endif
+// <o> NRF_QUEUE_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef NRF_QUEUE_CONFIG_LOG_LEVEL
+#define NRF_QUEUE_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> NRF_QUEUE_CONFIG_LOG_INIT_FILTER_LEVEL  - Initial severity level if dynamic filtering is enabled
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef NRF_QUEUE_CONFIG_LOG_INIT_FILTER_LEVEL
+#define NRF_QUEUE_CONFIG_LOG_INIT_FILTER_LEVEL 3
+#endif
+
+// <o> NRF_QUEUE_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_QUEUE_CONFIG_INFO_COLOR
+#define NRF_QUEUE_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> NRF_QUEUE_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_QUEUE_CONFIG_DEBUG_COLOR
+#define NRF_QUEUE_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> NRF_SDH_ANT_LOG_ENABLED - Enable logging in SoftDevice handler (ANT) module.
+//==========================================================
+#ifndef NRF_SDH_ANT_LOG_ENABLED
+#define NRF_SDH_ANT_LOG_ENABLED 0
+#endif
+// <o> NRF_SDH_ANT_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef NRF_SDH_ANT_LOG_LEVEL
+#define NRF_SDH_ANT_LOG_LEVEL 3
+#endif
+
+// <o> NRF_SDH_ANT_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_SDH_ANT_INFO_COLOR
+#define NRF_SDH_ANT_INFO_COLOR 0
+#endif
+
+// <o> NRF_SDH_ANT_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_SDH_ANT_DEBUG_COLOR
+#define NRF_SDH_ANT_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> NRF_SDH_BLE_LOG_ENABLED - Enable logging in SoftDevice handler (BLE) module.
+//==========================================================
+#ifndef NRF_SDH_BLE_LOG_ENABLED
+#define NRF_SDH_BLE_LOG_ENABLED 1
+#endif
+// <o> NRF_SDH_BLE_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef NRF_SDH_BLE_LOG_LEVEL
+#define NRF_SDH_BLE_LOG_LEVEL 3
+#endif
+
+// <o> NRF_SDH_BLE_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_SDH_BLE_INFO_COLOR
+#define NRF_SDH_BLE_INFO_COLOR 0
+#endif
+
+// <o> NRF_SDH_BLE_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_SDH_BLE_DEBUG_COLOR
+#define NRF_SDH_BLE_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> NRF_SDH_LOG_ENABLED - Enable logging in SoftDevice handler module.
+//==========================================================
+#ifndef NRF_SDH_LOG_ENABLED
+#define NRF_SDH_LOG_ENABLED 1
+#endif
+// <o> NRF_SDH_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef NRF_SDH_LOG_LEVEL
+#define NRF_SDH_LOG_LEVEL 3
+#endif
+
+// <o> NRF_SDH_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_SDH_INFO_COLOR
+#define NRF_SDH_INFO_COLOR 0
+#endif
+
+// <o> NRF_SDH_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_SDH_DEBUG_COLOR
+#define NRF_SDH_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> NRF_SDH_SOC_LOG_ENABLED - Enable logging in SoftDevice handler (SoC) module.
+//==========================================================
+#ifndef NRF_SDH_SOC_LOG_ENABLED
+#define NRF_SDH_SOC_LOG_ENABLED 1
+#endif
+// <o> NRF_SDH_SOC_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef NRF_SDH_SOC_LOG_LEVEL
+#define NRF_SDH_SOC_LOG_LEVEL 3
+#endif
+
+// <o> NRF_SDH_SOC_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_SDH_SOC_INFO_COLOR
+#define NRF_SDH_SOC_INFO_COLOR 0
+#endif
+
+// <o> NRF_SDH_SOC_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_SDH_SOC_DEBUG_COLOR
+#define NRF_SDH_SOC_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> NRF_SORTLIST_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef NRF_SORTLIST_CONFIG_LOG_ENABLED
+#define NRF_SORTLIST_CONFIG_LOG_ENABLED 0
+#endif
+// <o> NRF_SORTLIST_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef NRF_SORTLIST_CONFIG_LOG_LEVEL
+#define NRF_SORTLIST_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> NRF_SORTLIST_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_SORTLIST_CONFIG_INFO_COLOR
+#define NRF_SORTLIST_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> NRF_SORTLIST_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_SORTLIST_CONFIG_DEBUG_COLOR
+#define NRF_SORTLIST_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> NRF_TWI_SENSOR_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef NRF_TWI_SENSOR_CONFIG_LOG_ENABLED
+#define NRF_TWI_SENSOR_CONFIG_LOG_ENABLED 0
+#endif
+// <o> NRF_TWI_SENSOR_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef NRF_TWI_SENSOR_CONFIG_LOG_LEVEL
+#define NRF_TWI_SENSOR_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> NRF_TWI_SENSOR_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_TWI_SENSOR_CONFIG_INFO_COLOR
+#define NRF_TWI_SENSOR_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> NRF_TWI_SENSOR_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef NRF_TWI_SENSOR_CONFIG_DEBUG_COLOR
+#define NRF_TWI_SENSOR_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// <e> PM_LOG_ENABLED - Enable logging in Peer Manager and its submodules.
+//==========================================================
+#ifndef PM_LOG_ENABLED
+#define PM_LOG_ENABLED 1
+#endif
+// <o> PM_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef PM_LOG_LEVEL
+#define PM_LOG_LEVEL 3
+#endif
+
+// <o> PM_LOG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef PM_LOG_INFO_COLOR
+#define PM_LOG_INFO_COLOR 0
+#endif
+
+// <o> PM_LOG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef PM_LOG_DEBUG_COLOR
+#define PM_LOG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// </h> 
+//==========================================================
+
+// <h> nrf_log in nRF_Serialization 
+
+//==========================================================
+// <e> SER_HAL_TRANSPORT_CONFIG_LOG_ENABLED - Enables logging in the module.
+//==========================================================
+#ifndef SER_HAL_TRANSPORT_CONFIG_LOG_ENABLED
+#define SER_HAL_TRANSPORT_CONFIG_LOG_ENABLED 0
+#endif
+// <o> SER_HAL_TRANSPORT_CONFIG_LOG_LEVEL  - Default Severity level
+ 
+// <0=> Off 
+// <1=> Error 
+// <2=> Warning 
+// <3=> Info 
+// <4=> Debug 
+
+#ifndef SER_HAL_TRANSPORT_CONFIG_LOG_LEVEL
+#define SER_HAL_TRANSPORT_CONFIG_LOG_LEVEL 3
+#endif
+
+// <o> SER_HAL_TRANSPORT_CONFIG_INFO_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef SER_HAL_TRANSPORT_CONFIG_INFO_COLOR
+#define SER_HAL_TRANSPORT_CONFIG_INFO_COLOR 0
+#endif
+
+// <o> SER_HAL_TRANSPORT_CONFIG_DEBUG_COLOR  - ANSI escape code prefix.
+ 
+// <0=> Default 
+// <1=> Black 
+// <2=> Red 
+// <3=> Green 
+// <4=> Yellow 
+// <5=> Blue 
+// <6=> Magenta 
+// <7=> Cyan 
+// <8=> White 
+
+#ifndef SER_HAL_TRANSPORT_CONFIG_DEBUG_COLOR
+#define SER_HAL_TRANSPORT_CONFIG_DEBUG_COLOR 0
+#endif
+
+// </e>
+
+// </h> 
+//==========================================================
+
+// </h> 
+//==========================================================
+
+// </e>
+
+// <q> NRF_LOG_STR_FORMATTER_TIMESTAMP_FORMAT_ENABLED  - nrf_log_str_formatter - Log string formatter
+ 
+
+#ifndef NRF_LOG_STR_FORMATTER_TIMESTAMP_FORMAT_ENABLED
+#define NRF_LOG_STR_FORMATTER_TIMESTAMP_FORMAT_ENABLED 1
+#endif
+
+// </h> 
+//==========================================================
+
+// <h> nRF_Segger_RTT 
+
+//==========================================================
+// <h> segger_rtt - SEGGER RTT
+
+//==========================================================
+// <o> SEGGER_RTT_CONFIG_BUFFER_SIZE_UP - Size of upstream buffer. 
+// <i> Note that either @ref NRF_LOG_BACKEND_RTT_OUTPUT_BUFFER_SIZE
+// <i> or this value is actually used. It depends on which one is bigger.
+
+#ifndef SEGGER_RTT_CONFIG_BUFFER_SIZE_UP
+#define SEGGER_RTT_CONFIG_BUFFER_SIZE_UP 4096
+#endif
+
+// <o> SEGGER_RTT_CONFIG_MAX_NUM_UP_BUFFERS - Maximum number of upstream buffers. 
+#ifndef SEGGER_RTT_CONFIG_MAX_NUM_UP_BUFFERS
+#define SEGGER_RTT_CONFIG_MAX_NUM_UP_BUFFERS 2
+#endif
+
+// <o> SEGGER_RTT_CONFIG_BUFFER_SIZE_DOWN - Size of downstream buffer. 
+#ifndef SEGGER_RTT_CONFIG_BUFFER_SIZE_DOWN
+#define SEGGER_RTT_CONFIG_BUFFER_SIZE_DOWN 16
+#endif
+
+// <o> SEGGER_RTT_CONFIG_MAX_NUM_DOWN_BUFFERS - Maximum number of downstream buffers. 
+#ifndef SEGGER_RTT_CONFIG_MAX_NUM_DOWN_BUFFERS
+#define SEGGER_RTT_CONFIG_MAX_NUM_DOWN_BUFFERS 2
+#endif
+
+// <o> SEGGER_RTT_CONFIG_DEFAULT_MODE  - RTT behavior if the buffer is full.
+ 
+
+// <i> The following modes are supported:
+// <i> - SKIP  - Do not block, output nothing.
+// <i> - TRIM  - Do not block, output as much as fits.
+// <i> - BLOCK - Wait until there is space in the buffer.
+// <0=> SKIP 
+// <1=> TRIM 
+// <2=> BLOCK_IF_FIFO_FULL 
+
+#ifndef SEGGER_RTT_CONFIG_DEFAULT_MODE
+#define SEGGER_RTT_CONFIG_DEFAULT_MODE 0
+#endif
+
+// </h> 
+//==========================================================
+
+// </h> 
+//==========================================================
+
+// <h> nRF_SoftDevice 
+
+//==========================================================
+// <e> NRF_SDH_BLE_ENABLED - nrf_sdh_ble - SoftDevice BLE event handler
+//==========================================================
+#ifndef NRF_SDH_BLE_ENABLED
+#define NRF_SDH_BLE_ENABLED 1
+#endif
+// <h> BLE Stack configuration - Stack configuration parameters
+
+// <i> The SoftDevice handler will configure the stack with these parameters when calling @ref nrf_sdh_ble_default_cfg_set.
+// <i> Other libraries might depend on these values; keep them up-to-date even if you are not explicitely calling @ref nrf_sdh_ble_default_cfg_set.
+//==========================================================
+// <o> NRF_SDH_BLE_GAP_DATA_LENGTH   <27-251> 
+
+
+// <i> Requested BLE GAP data length to be negotiated.
+
+#ifndef NRF_SDH_BLE_GAP_DATA_LENGTH
+#define NRF_SDH_BLE_GAP_DATA_LENGTH 27
+#endif
+
+// <o> NRF_SDH_BLE_PERIPHERAL_LINK_COUNT - Maximum number of peripheral links. 
+#ifndef NRF_SDH_BLE_PERIPHERAL_LINK_COUNT
+#define NRF_SDH_BLE_PERIPHERAL_LINK_COUNT 1
+#endif
+
+// <o> NRF_SDH_BLE_CENTRAL_LINK_COUNT - Maximum number of central links. 
+#ifndef NRF_SDH_BLE_CENTRAL_LINK_COUNT
+#define NRF_SDH_BLE_CENTRAL_LINK_COUNT 0
+#endif
+
+// <o> NRF_SDH_BLE_TOTAL_LINK_COUNT - Total link count. 
+// <i> Maximum number of total concurrent connections using the default configuration.
+
+#ifndef NRF_SDH_BLE_TOTAL_LINK_COUNT
+#define NRF_SDH_BLE_TOTAL_LINK_COUNT 1
+#endif
+
+// <o> NRF_SDH_BLE_GAP_EVENT_LENGTH - GAP event length. 
+// <i> The time set aside for this connection on every connection interval in 1.25 ms units.
+
+#ifndef NRF_SDH_BLE_GAP_EVENT_LENGTH
+#define NRF_SDH_BLE_GAP_EVENT_LENGTH 6
+#endif
+
+// <o> NRF_SDH_BLE_GATT_MAX_MTU_SIZE - Static maximum MTU size. 
+#ifndef NRF_SDH_BLE_GATT_MAX_MTU_SIZE
+#define NRF_SDH_BLE_GATT_MAX_MTU_SIZE 247
+#endif
+
+// <o> NRF_SDH_BLE_GATTS_ATTR_TAB_SIZE - Attribute Table size in bytes. The size must be a multiple of 4. 
+#ifndef NRF_SDH_BLE_GATTS_ATTR_TAB_SIZE
+#define NRF_SDH_BLE_GATTS_ATTR_TAB_SIZE 1408
+#endif
+
+// <o> NRF_SDH_BLE_VS_UUID_COUNT - The number of vendor-specific UUIDs. 
+#ifndef NRF_SDH_BLE_VS_UUID_COUNT
+#define NRF_SDH_BLE_VS_UUID_COUNT 1
+#endif
+
+// <q> NRF_SDH_BLE_SERVICE_CHANGED  - Include the Service Changed characteristic in the Attribute Table.
+ 
+
+#ifndef NRF_SDH_BLE_SERVICE_CHANGED
+#define NRF_SDH_BLE_SERVICE_CHANGED 0
+
+#endif
+
+// </h> 
+//==========================================================
+
+// <h> BLE Observers - Observers and priority levels
+
+//==========================================================
+// <o> NRF_SDH_BLE_OBSERVER_PRIO_LEVELS - Total number of priority levels for BLE observers. 
+// <i> This setting configures the number of priority levels available for BLE event handlers.
+// <i> The priority level of a handler determines the order in which it receives events, with respect to other handlers.
+
+#ifndef NRF_SDH_BLE_OBSERVER_PRIO_LEVELS
+#define NRF_SDH_BLE_OBSERVER_PRIO_LEVELS 4
+#endif
+
+// <h> BLE Observers priorities - Invididual priorities
+
+//==========================================================
+// <o> BLE_ADV_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Advertising module.
+
+#ifndef BLE_ADV_BLE_OBSERVER_PRIO
+#define BLE_ADV_BLE_OBSERVER_PRIO 1
+#endif
+
+// <o> BLE_ANCS_C_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Apple Notification Service Client.
+
+#ifndef BLE_ANCS_C_BLE_OBSERVER_PRIO
+#define BLE_ANCS_C_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> BLE_ANS_C_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Alert Notification Service Client.
+
+#ifndef BLE_ANS_C_BLE_OBSERVER_PRIO
+#define BLE_ANS_C_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> BLE_BAS_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Battery Service.
+
+#ifndef BLE_BAS_BLE_OBSERVER_PRIO
+#define BLE_BAS_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> BLE_BAS_C_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Battery Service Client.
+
+#ifndef BLE_BAS_C_BLE_OBSERVER_PRIO
+#define BLE_BAS_C_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> BLE_BPS_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Blood Pressure Service.
+
+#ifndef BLE_BPS_BLE_OBSERVER_PRIO
+#define BLE_BPS_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> BLE_CONN_PARAMS_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Connection parameters module.
+
+#ifndef BLE_CONN_PARAMS_BLE_OBSERVER_PRIO
+#define BLE_CONN_PARAMS_BLE_OBSERVER_PRIO 1
+#endif
+
+// <o> BLE_CONN_STATE_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Connection State module.
+
+#ifndef BLE_CONN_STATE_BLE_OBSERVER_PRIO
+#define BLE_CONN_STATE_BLE_OBSERVER_PRIO 0
+#endif
+
+// <o> BLE_CSCS_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Cycling Speed and Cadence Service.
+
+#ifndef BLE_CSCS_BLE_OBSERVER_PRIO
+#define BLE_CSCS_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> BLE_CTS_C_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Current Time Service Client.
+
+#ifndef BLE_CTS_C_BLE_OBSERVER_PRIO
+#define BLE_CTS_C_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> BLE_DB_DISC_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Database Discovery module.
+
+#ifndef BLE_DB_DISC_BLE_OBSERVER_PRIO
+#define BLE_DB_DISC_BLE_OBSERVER_PRIO 1
+#endif
+
+// <o> BLE_DFU_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the DFU Service.
+
+#ifndef BLE_DFU_BLE_OBSERVER_PRIO
+#define BLE_DFU_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> BLE_DIS_C_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Device Information Client.
+
+#ifndef BLE_DIS_C_BLE_OBSERVER_PRIO
+#define BLE_DIS_C_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> BLE_GLS_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Glucose Service.
+
+#ifndef BLE_GLS_BLE_OBSERVER_PRIO
+#define BLE_GLS_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> BLE_HIDS_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Human Interface Device Service.
+
+#ifndef BLE_HIDS_BLE_OBSERVER_PRIO
+#define BLE_HIDS_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> BLE_HRS_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Heart Rate Service.
+
+#ifndef BLE_HRS_BLE_OBSERVER_PRIO
+#define BLE_HRS_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> BLE_HRS_C_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Heart Rate Service Client.
+
+#ifndef BLE_HRS_C_BLE_OBSERVER_PRIO
+#define BLE_HRS_C_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> BLE_HTS_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Health Thermometer Service.
+
+#ifndef BLE_HTS_BLE_OBSERVER_PRIO
+#define BLE_HTS_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> BLE_IAS_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Immediate Alert Service.
+
+#ifndef BLE_IAS_BLE_OBSERVER_PRIO
+#define BLE_IAS_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> BLE_IAS_C_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Immediate Alert Service Client.
+
+#ifndef BLE_IAS_C_BLE_OBSERVER_PRIO
+#define BLE_IAS_C_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> BLE_LBS_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the LED Button Service.
+
+#ifndef BLE_LBS_BLE_OBSERVER_PRIO
+#define BLE_LBS_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> BLE_LBS_C_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the LED Button Service Client.
+
+#ifndef BLE_LBS_C_BLE_OBSERVER_PRIO
+#define BLE_LBS_C_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> BLE_LLS_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Link Loss Service.
+
+#ifndef BLE_LLS_BLE_OBSERVER_PRIO
+#define BLE_LLS_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> BLE_LNS_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Location Navigation Service.
+
+#ifndef BLE_LNS_BLE_OBSERVER_PRIO
+#define BLE_LNS_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> BLE_NUS_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the UART Service.
+
+#ifndef BLE_NUS_BLE_OBSERVER_PRIO
+#define BLE_NUS_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> BLE_NUS_C_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the UART Central Service.
+
+#ifndef BLE_NUS_C_BLE_OBSERVER_PRIO
+#define BLE_NUS_C_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> BLE_OTS_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Object transfer service.
+
+#ifndef BLE_OTS_BLE_OBSERVER_PRIO
+#define BLE_OTS_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> BLE_OTS_C_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Object transfer service client.
+
+#ifndef BLE_OTS_C_BLE_OBSERVER_PRIO
+#define BLE_OTS_C_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> BLE_RSCS_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Running Speed and Cadence Service.
+
+#ifndef BLE_RSCS_BLE_OBSERVER_PRIO
+#define BLE_RSCS_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> BLE_RSCS_C_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Running Speed and Cadence Client.
+
+#ifndef BLE_RSCS_C_BLE_OBSERVER_PRIO
+#define BLE_RSCS_C_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> BLE_TPS_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the TX Power Service.
+
+#ifndef BLE_TPS_BLE_OBSERVER_PRIO
+#define BLE_TPS_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> BSP_BTN_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Button Control module.
+
+#ifndef BSP_BTN_BLE_OBSERVER_PRIO
+#define BSP_BTN_BLE_OBSERVER_PRIO 1
+#endif
+
+// <o> NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the NFC pairing library.
+
+#ifndef NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO
+#define NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO 1
+#endif
+
+// <o> NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the NFC pairing library.
+
+#ifndef NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO
+#define NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO 1
+#endif
+
+// <o> NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the NFC pairing library.
+
+#ifndef NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO
+#define NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO 1
+#endif
+
+// <o> NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the NFC pairing library.
+
+#ifndef NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO
+#define NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO 1
+#endif
+
+// <o> NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the NFC pairing library.
+
+#ifndef NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO
+#define NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO 1
+#endif
+
+// <o> NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the NFC pairing library.
+
+#ifndef NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO
+#define NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO 1
+#endif
+
+// <o> NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the NFC pairing library.
+
+#ifndef NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO
+#define NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO 1
+#endif
+
+// <o> NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the NFC pairing library.
+
+#ifndef NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO
+#define NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO 1
+#endif
+
+// <o> NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the NFC pairing library.
+
+#ifndef NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO
+#define NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO 1
+#endif
+
+// <o> NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the NFC pairing library.
+
+#ifndef NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO
+#define NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO 1
+#endif
+
+// <o> NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the NFC pairing library.
+
+#ifndef NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO
+#define NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO 1
+#endif
+
+// <o> NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the NFC pairing library.
+
+#ifndef NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO
+#define NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO 1
+#endif
+
+// <o> NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the NFC pairing library.
+
+#ifndef NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO
+#define NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO 1
+#endif
+
+// <o> NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the NFC pairing library.
+
+#ifndef NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO
+#define NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO 1
+#endif
+
+// <o> NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the NFC pairing library.
+
+#ifndef NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO
+#define NFC_BLE_PAIR_LIB_BLE_OBSERVER_PRIO 1
+#endif
+
+// <o> NRF_BLE_BMS_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Bond Management Service.
+
+#ifndef NRF_BLE_BMS_BLE_OBSERVER_PRIO
+#define NRF_BLE_BMS_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> NRF_BLE_CGMS_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Contiuon Glucose Monitoring Service.
+
+#ifndef NRF_BLE_CGMS_BLE_OBSERVER_PRIO
+#define NRF_BLE_CGMS_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> NRF_BLE_ES_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Eddystone module.
+
+#ifndef NRF_BLE_ES_BLE_OBSERVER_PRIO
+#define NRF_BLE_ES_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> NRF_BLE_GATTS_C_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the GATT Service Client.
+
+#ifndef NRF_BLE_GATTS_C_BLE_OBSERVER_PRIO
+#define NRF_BLE_GATTS_C_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> NRF_BLE_GATT_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the GATT module.
+
+#ifndef NRF_BLE_GATT_BLE_OBSERVER_PRIO
+#define NRF_BLE_GATT_BLE_OBSERVER_PRIO 1
+#endif
+
+// <o> NRF_BLE_GQ_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the GATT Queue module.
+
+#ifndef NRF_BLE_GQ_BLE_OBSERVER_PRIO
+#define NRF_BLE_GQ_BLE_OBSERVER_PRIO 1
+#endif
+
+// <o> NRF_BLE_QWR_BLE_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the Queued writes module.
+
+#ifndef NRF_BLE_QWR_BLE_OBSERVER_PRIO
+#define NRF_BLE_QWR_BLE_OBSERVER_PRIO 2
+#endif
+
+// <o> NRF_BLE_SCAN_OBSERVER_PRIO  
+// <i> Priority for dispatching the BLE events to the Scanning Module.
+
+#ifndef NRF_BLE_SCAN_OBSERVER_PRIO
+#define NRF_BLE_SCAN_OBSERVER_PRIO 1
+#endif
+
+// <o> PM_BLE_OBSERVER_PRIO - Priority with which BLE events are dispatched to the Peer Manager module. 
+#ifndef PM_BLE_OBSERVER_PRIO
+#define PM_BLE_OBSERVER_PRIO 1
+#endif
+
+// </h> 
+//==========================================================
+
+// </h> 
+//==========================================================
+
+
+// </e>
+
+// <e> NRF_SDH_ENABLED - nrf_sdh - SoftDevice handler
+//==========================================================
+#ifndef NRF_SDH_ENABLED
+#define NRF_SDH_ENABLED 1
+#endif
+// <h> Dispatch model 
+
+// <i> This setting configures how Stack events are dispatched to the application.
+//==========================================================
+// <o> NRF_SDH_DISPATCH_MODEL
+ 
+
+// <i> NRF_SDH_DISPATCH_MODEL_INTERRUPT: SoftDevice events are passed to the application from the interrupt context.
+// <i> NRF_SDH_DISPATCH_MODEL_APPSH: SoftDevice events are scheduled using @ref app_scheduler.
+// <i> NRF_SDH_DISPATCH_MODEL_POLLING: SoftDevice events are to be fetched manually.
+// <0=> NRF_SDH_DISPATCH_MODEL_INTERRUPT 
+// <1=> NRF_SDH_DISPATCH_MODEL_APPSH 
+// <2=> NRF_SDH_DISPATCH_MODEL_POLLING 
+
+#ifndef NRF_SDH_DISPATCH_MODEL
+#define NRF_SDH_DISPATCH_MODEL 0
+#endif
+
+// </h> 
+//==========================================================
+
+// <h> Clock - SoftDevice clock configuration
+
+//==========================================================
+// <o> NRF_SDH_CLOCK_LF_SRC  - SoftDevice clock source.
+ 
+// <0=> NRF_CLOCK_LF_SRC_RC 
+// <1=> NRF_CLOCK_LF_SRC_XTAL 
+// <2=> NRF_CLOCK_LF_SRC_SYNTH 
+
+#ifndef NRF_SDH_CLOCK_LF_SRC
+#define NRF_SDH_CLOCK_LF_SRC 0
+#endif
+
+// <o> NRF_SDH_CLOCK_LF_RC_CTIV - SoftDevice calibration timer interval. 
+#ifndef NRF_SDH_CLOCK_LF_RC_CTIV
+#define NRF_SDH_CLOCK_LF_RC_CTIV 16
+#endif
+
+// <o> NRF_SDH_CLOCK_LF_RC_TEMP_CTIV - SoftDevice calibration timer interval under constant temperature. 
+// <i> How often (in number of calibration intervals) the RC oscillator shall be calibrated
+// <i>  if the temperature has not changed.
+
+#ifndef NRF_SDH_CLOCK_LF_RC_TEMP_CTIV
+#define NRF_SDH_CLOCK_LF_RC_TEMP_CTIV 2
+#endif
+
+// <o> NRF_SDH_CLOCK_LF_ACCURACY  - External clock accuracy used in the LL to compute timing.
+ 
+// <0=> NRF_CLOCK_LF_ACCURACY_250_PPM 
+// <1=> NRF_CLOCK_LF_ACCURACY_500_PPM 
+// <2=> NRF_CLOCK_LF_ACCURACY_150_PPM 
+// <3=> NRF_CLOCK_LF_ACCURACY_100_PPM 
+// <4=> NRF_CLOCK_LF_ACCURACY_75_PPM 
+// <5=> NRF_CLOCK_LF_ACCURACY_50_PPM 
+// <6=> NRF_CLOCK_LF_ACCURACY_30_PPM 
+// <7=> NRF_CLOCK_LF_ACCURACY_20_PPM 
+// <8=> NRF_CLOCK_LF_ACCURACY_10_PPM 
+// <9=> NRF_CLOCK_LF_ACCURACY_5_PPM 
+// <10=> NRF_CLOCK_LF_ACCURACY_2_PPM 
+// <11=> NRF_CLOCK_LF_ACCURACY_1_PPM 
+
+#ifndef NRF_SDH_CLOCK_LF_ACCURACY
+#define NRF_SDH_CLOCK_LF_ACCURACY 1
+#endif
+
+// </h> 
+//==========================================================
+
+// <h> SDH Observers - Observers and priority levels
+
+//==========================================================
+// <o> NRF_SDH_REQ_OBSERVER_PRIO_LEVELS - Total number of priority levels for request observers. 
+// <i> This setting configures the number of priority levels available for the SoftDevice request event handlers.
+// <i> The priority level of a handler determines the order in which it receives events, with respect to other handlers.
+
+#ifndef NRF_SDH_REQ_OBSERVER_PRIO_LEVELS
+#define NRF_SDH_REQ_OBSERVER_PRIO_LEVELS 2
+#endif
+
+// <o> NRF_SDH_STATE_OBSERVER_PRIO_LEVELS - Total number of priority levels for state observers. 
+// <i> This setting configures the number of priority levels available for the SoftDevice state event handlers.
+// <i> The priority level of a handler determines the order in which it receives events, with respect to other handlers.
+
+#ifndef NRF_SDH_STATE_OBSERVER_PRIO_LEVELS
+#define NRF_SDH_STATE_OBSERVER_PRIO_LEVELS 2
+#endif
+
+// <o> NRF_SDH_STACK_OBSERVER_PRIO_LEVELS - Total number of priority levels for stack event observers. 
+// <i> This setting configures the number of priority levels available for the SoftDevice stack event handlers (ANT, BLE, SoC).
+// <i> The priority level of a handler determines the order in which it receives events, with respect to other handlers.
+
+#ifndef NRF_SDH_STACK_OBSERVER_PRIO_LEVELS
+#define NRF_SDH_STACK_OBSERVER_PRIO_LEVELS 2
+#endif
+
+
+// <h> State Observers priorities - Invididual priorities
+
+//==========================================================
+// <o> CLOCK_CONFIG_STATE_OBSERVER_PRIO  
+// <i> Priority with which state events are dispatched to the Clock driver.
+
+#ifndef CLOCK_CONFIG_STATE_OBSERVER_PRIO
+#define CLOCK_CONFIG_STATE_OBSERVER_PRIO 0
+#endif
+
+// <o> POWER_CONFIG_STATE_OBSERVER_PRIO  
+// <i> Priority with which state events are dispatched to the Power driver.
+
+#ifndef POWER_CONFIG_STATE_OBSERVER_PRIO
+#define POWER_CONFIG_STATE_OBSERVER_PRIO 0
+#endif
+
+// <o> RNG_CONFIG_STATE_OBSERVER_PRIO  
+// <i> Priority with which state events are dispatched to this module.
+
+#ifndef RNG_CONFIG_STATE_OBSERVER_PRIO
+#define RNG_CONFIG_STATE_OBSERVER_PRIO 0
+#endif
+
+// </h> 
+//==========================================================
+
+// <h> Stack Event Observers priorities - Invididual priorities
+
+//==========================================================
+// <o> NRF_SDH_ANT_STACK_OBSERVER_PRIO  
+// <i> This setting configures the priority with which ANT events are processed with respect to other events coming from the stack.
+// <i> Modify this setting if you need to have ANT events dispatched before or after other stack events, such as BLE or SoC.
+// <i> Zero is the highest priority.
+
+#ifndef NRF_SDH_ANT_STACK_OBSERVER_PRIO
+#define NRF_SDH_ANT_STACK_OBSERVER_PRIO 0
+#endif
+
+// <o> NRF_SDH_BLE_STACK_OBSERVER_PRIO  
+// <i> This setting configures the priority with which BLE events are processed with respect to other events coming from the stack.
+// <i> Modify this setting if you need to have BLE events dispatched before or after other stack events, such as ANT or SoC.
+// <i> Zero is the highest priority.
+
+#ifndef NRF_SDH_BLE_STACK_OBSERVER_PRIO
+#define NRF_SDH_BLE_STACK_OBSERVER_PRIO 0
+#endif
+
+// <o> NRF_SDH_SOC_STACK_OBSERVER_PRIO  
+// <i> This setting configures the priority with which SoC events are processed with respect to other events coming from the stack.
+// <i> Modify this setting if you need to have SoC events dispatched before or after other stack events, such as ANT or BLE.
+// <i> Zero is the highest priority.
+
+#ifndef NRF_SDH_SOC_STACK_OBSERVER_PRIO
+#define NRF_SDH_SOC_STACK_OBSERVER_PRIO 0
+#endif
+
+// </h> 
+//==========================================================
+
+// </h> 
+//==========================================================
+
+
+// </e>
+
+// <e> NRF_SDH_SOC_ENABLED - nrf_sdh_soc - SoftDevice SoC event handler
+//==========================================================
+#ifndef NRF_SDH_SOC_ENABLED
+#define NRF_SDH_SOC_ENABLED 1
+#endif
+// <h> SoC Observers - Observers and priority levels
+
+//==========================================================
+// <o> NRF_SDH_SOC_OBSERVER_PRIO_LEVELS - Total number of priority levels for SoC observers. 
+// <i> This setting configures the number of priority levels available for the SoC event handlers.
+// <i> The priority level of a handler determines the order in which it receives events, with respect to other handlers.
+
+#ifndef NRF_SDH_SOC_OBSERVER_PRIO_LEVELS
+#define NRF_SDH_SOC_OBSERVER_PRIO_LEVELS 2
+#endif
+
+// <h> SoC Observers priorities - Invididual priorities
+
+//==========================================================
+// <o> BLE_DFU_SOC_OBSERVER_PRIO  
+// <i> Priority with which BLE events are dispatched to the DFU Service.
+
+#ifndef BLE_DFU_SOC_OBSERVER_PRIO
+#define BLE_DFU_SOC_OBSERVER_PRIO 1
+#endif
+
+// <o> CLOCK_CONFIG_SOC_OBSERVER_PRIO  
+// <i> Priority with which SoC events are dispatched to the Clock driver.
+
+#ifndef CLOCK_CONFIG_SOC_OBSERVER_PRIO
+#define CLOCK_CONFIG_SOC_OBSERVER_PRIO 0
+#endif
+
+// <o> POWER_CONFIG_SOC_OBSERVER_PRIO  
+// <i> Priority with which SoC events are dispatched to the Power driver.
+
+#ifndef POWER_CONFIG_SOC_OBSERVER_PRIO
+#define POWER_CONFIG_SOC_OBSERVER_PRIO 0
+#endif
+
+// </h> 
+//==========================================================
+
+// </h> 
+//==========================================================
+
+
+// </e>
+
+// </h> 
+//==========================================================
+
+// <<< end of configuration section >>>
+#endif //SDK_CONFIG_H
+

+ 3 - 0
central_and_peripheral_secure_bootloader_debug/hex/license.txt

@@ -0,0 +1,3 @@
+The provided HEX files were compiled using the projects located in the folders for the respective boards (pca10xxx).
+
+For license and copyright information, see the individual .c and .h files that are included in the projects.

+ 1350 - 0
central_and_peripheral_secure_bootloader_debug/iar/secure_bootloader_ble_s132_pca10040_debug.ewd

@@ -0,0 +1,1350 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+
+<project>
+  <fileVersion>2</fileVersion>  <configuration>
+    <name>nrf52832_xxaa_s132</name>
+    <toolchain>
+      <name>ARM</name>
+    </toolchain>
+    <debug>0</debug>
+    <settings>
+      <name>C-SPY</name>
+      <archiveVersion>2</archiveVersion>
+      <data>
+        <version>26</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>0</debug>
+        <option>
+          <name>CInput</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CEndian</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CProcessor</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>OCVariant</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>MacOverride</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>MacFile</name>
+          <state></state>
+        </option>
+        <option>
+          <name>MemOverride</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>MemFile</name>
+          <state>$TOOLKIT_DIR$\CONFIG\debugger\NordicSemiconductor\iar_nrf52832_xxaa.ddf</state>
+        </option>
+        <option>
+          <name>RunToEnable</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>RunToName</name>
+          <state>main</state>
+        </option>
+        <option>
+          <name>CExtraOptionsCheck</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CExtraOptions</name>
+          <state>--drv_vector_table_base=0x0</state>
+        </option>
+        <option>
+          <name>CFpuProcessor</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>OCDDFArgumentProducer</name>
+          <state></state>
+        </option>
+        <option>
+          <name>OCDownloadSuppressDownload</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>OCDownloadVerifyAll</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>OCProductVersion</name>
+          <state>7.20.2.7418</state>
+        </option>
+        <option>
+          <name>OCDynDriverList</name>
+          <state>JLINK_ID</state>
+        </option>
+        <option>
+          <name>OCLastSavedByProductVersion</name>
+          <state>7.20.2.7418</state>
+        </option>
+        <option>
+          <name>OCDownloadAttachToProgram</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>UseFlashLoader</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CLowLevel</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>OCBE8Slave</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>MacFile2</name>
+          <state></state>
+        </option>
+        <option>
+          <name>CDevice</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>FlashLoadersV3</name>
+          <state>$TOOLKIT_DIR$\config\flashloader\NordicSemiconductor\nrf52832_xxaa.board</state>
+        </option>
+        <option>
+          <name>OCImagesSuppressCheck1</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>OCImagesPath1</name>
+          <state></state>
+        </option>
+        <option>
+          <name>OCImagesSuppressCheck2</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>OCImagesPath2</name>
+          <state></state>
+        </option>
+        <option>
+          <name>OCImagesSuppressCheck3</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>OCImagesPath3</name>
+          <state></state>
+        </option>
+        <option>
+          <name>OverrideDefFlashBoard</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>OCImagesOffset1</name>
+          <state></state>
+        </option>
+        <option>
+          <name>OCImagesOffset2</name>
+          <state></state>
+        </option>
+        <option>
+          <name>OCImagesOffset3</name>
+          <state></state>
+        </option>
+        <option>
+          <name>OCImagesUse1</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>OCImagesUse2</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>OCImagesUse3</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>OCDeviceConfigMacroFile</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>OCDebuggerExtraOption</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>OCAllMTBOptions</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>OCMulticoreNrOfCores</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>OCMulticoreMaster</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>OCMulticorePort</name>
+          <state>53461</state>
+        </option>
+        <option>
+          <name>OCMulticoreWorkspace</name>
+          <state></state>
+        </option>
+        <option>
+          <name>OCMulticoreSlaveProject</name>
+          <state></state>
+        </option>
+        <option>
+          <name>OCMulticoreSlaveConfiguration</name>
+          <state></state>
+        </option>
+      </data>
+    </settings>
+    <settings>
+      <name>ARMSIM_ID</name>
+      <archiveVersion>2</archiveVersion>
+      <data>
+        <version>1</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>0</debug>
+        <option>
+          <name>OCSimDriverInfo</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>OCSimEnablePSP</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>OCSimPspOverrideConfig</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>OCSimPspConfigFile</name>
+          <state></state>
+        </option>
+      </data>
+    </settings>
+    <settings>
+      <name>ANGEL_ID</name>
+      <archiveVersion>2</archiveVersion>
+      <data>
+        <version>0</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>0</debug>
+        <option>
+          <name>CCAngelHeartbeat</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CAngelCommunication</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CAngelCommBaud</name>
+          <version>0</version>
+          <state>3</state>
+        </option>
+        <option>
+          <name>CAngelCommPort</name>
+          <version>0</version>
+          <state>0</state>
+        </option>
+        <option>
+          <name>ANGELTCPIP</name>
+          <state>aaa.bbb.ccc.ddd</state>
+        </option>
+        <option>
+          <name>DoAngelLogfile</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AngelLogFile</name>
+          <state>$PROJ_DIR$\cspycomm.log</state>
+        </option>
+        <option>
+          <name>OCDriverInfo</name>
+          <state>1</state>
+        </option>
+      </data>
+    </settings>
+    <settings>
+      <name>CMSISDAP_ID</name>
+      <archiveVersion>2</archiveVersion>
+      <data>
+        <version>2</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>0</debug>
+        <option>
+          <name>OCDriverInfo</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CMSISDAPAttachSlave</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>OCIarProbeScriptFile</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CMSISDAPResetList</name>
+          <version>1</version>
+          <state>10</state>
+        </option>
+        <option>
+          <name>CMSISDAPHWResetDuration</name>
+          <state>300</state>
+        </option>
+        <option>
+          <name>CMSISDAPHWResetDelay</name>
+          <state>200</state>
+        </option>
+        <option>
+          <name>CMSISDAPDoLogfile</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CMSISDAPLogFile</name>
+          <state>$PROJ_DIR$\cspycomm.log</state>
+        </option>
+        <option>
+          <name>CMSISDAPInterfaceRadio</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CMSISDAPInterfaceCmdLine</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CMSISDAPMultiTargetEnable</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CMSISDAPMultiTarget</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CMSISDAPJtagSpeedList</name>
+          <version>0</version>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CMSISDAPBreakpointRadio</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CMSISDAPRestoreBreakpointsCheck</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CMSISDAPUpdateBreakpointsEdit</name>
+          <state>_call_main</state>
+        </option>
+        <option>
+          <name>RDICatchReset</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>RDICatchUndef</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>RDICatchSWI</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>RDICatchData</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>RDICatchPrefetch</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>RDICatchIRQ</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>RDICatchFIQ</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CatchCORERESET</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CatchMMERR</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CatchNOCPERR</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CatchCHKERR</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CatchSTATERR</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CatchBUSERR</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CatchINTERR</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CatchHARDERR</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CatchDummy</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CMSISDAPMultiCPUEnable</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CMSISDAPMultiCPUNumber</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>OCProbeCfgOverride</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>OCProbeConfig</name>
+          <state></state>
+        </option>
+        <option>
+          <name>CMSISDAPProbeConfigRadio</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CMSISDAPSelectedCPUBehaviour</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>ICpuName</name>
+          <state></state>
+        </option>
+        <option>
+          <name>OCJetEmuParams</name>
+          <state>1</state>
+        </option>
+      </data>
+    </settings>
+    <settings>
+      <name>GDBSERVER_ID</name>
+      <archiveVersion>2</archiveVersion>
+      <data>
+        <version>0</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>0</debug>
+        <option>
+          <name>OCDriverInfo</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>TCPIP</name>
+          <state>aaa.bbb.ccc.ddd</state>
+        </option>
+        <option>
+          <name>DoLogfile</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>LogFile</name>
+          <state>$PROJ_DIR$\cspycomm.log</state>
+        </option>
+        <option>
+          <name>CCJTagBreakpointRadio</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCJTagDoUpdateBreakpoints</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCJTagUpdateBreakpoints</name>
+          <state>_call_main</state>
+        </option>
+      </data>
+    </settings>
+    <settings>
+      <name>IARROM_ID</name>
+      <archiveVersion>2</archiveVersion>
+      <data>
+        <version>1</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>0</debug>
+        <option>
+          <name>CRomLogFileCheck</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CRomLogFileEditB</name>
+          <state>$PROJ_DIR$\cspycomm.log</state>
+        </option>
+        <option>
+          <name>CRomCommPort</name>
+          <version>0</version>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CRomCommBaud</name>
+          <version>0</version>
+          <state>7</state>
+        </option>
+        <option>
+          <name>OCDriverInfo</name>
+          <state>1</state>
+        </option>
+      </data>
+    </settings>
+    <settings>
+      <name>IJET_ID</name>
+      <archiveVersion>2</archiveVersion>
+      <data>
+        <version>3</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>0</debug>
+        <option>
+          <name>OCDriverInfo</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IjetAttachSlave</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>OCIarProbeScriptFile</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IjetResetList</name>
+          <version>1</version>
+          <state>10</state>
+        </option>
+        <option>
+          <name>IjetHWResetDuration</name>
+          <state>300</state>
+        </option>
+        <option>
+          <name>IjetHWResetDelay</name>
+          <state>200</state>
+        </option>
+        <option>
+          <name>IjetPowerFromProbe</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IjetPowerRadio</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IjetDoLogfile</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IjetLogFile</name>
+          <state>$PROJ_DIR$\cspycomm.log</state>
+        </option>
+        <option>
+          <name>IjetInterfaceRadio</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IjetInterfaceCmdLine</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IjetMultiTargetEnable</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IjetMultiTarget</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IjetScanChainNonARMDevices</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IjetIRLength</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IjetJtagSpeedList</name>
+          <version>0</version>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IjetProtocolRadio</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IjetSwoPin</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IjetCpuClockEdit</name>
+          <state>72.0</state>
+        </option>
+        <option>
+          <name>IjetSwoPrescalerList</name>
+          <version>1</version>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IjetBreakpointRadio</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IjetRestoreBreakpointsCheck</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IjetUpdateBreakpointsEdit</name>
+          <state>_call_main</state>
+        </option>
+        <option>
+          <name>RDICatchReset</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>RDICatchUndef</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>RDICatchSWI</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>RDICatchData</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>RDICatchPrefetch</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>RDICatchIRQ</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>RDICatchFIQ</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CatchCORERESET</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CatchMMERR</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CatchNOCPERR</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CatchCHKERR</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CatchSTATERR</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CatchBUSERR</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CatchINTERR</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CatchHARDERR</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CatchDummy</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>OCProbeCfgOverride</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>OCProbeConfig</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IjetProbeConfigRadio</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IjetMultiCPUEnable</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IjetMultiCPUNumber</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IjetSelectedCPUBehaviour</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>ICpuName</name>
+          <state></state>
+        </option>
+        <option>
+          <name>OCJetEmuParams</name>
+          <state>1</state>
+        </option>
+      </data>
+    </settings>
+    <settings>
+      <name>JLINK_ID</name>
+      <archiveVersion>2</archiveVersion>
+      <data>
+        <version>15</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>0</debug>
+        <option>
+          <name>JLinkSpeed</name>
+          <state>1000</state>
+        </option>
+        <option>
+          <name>CCJLinkDoLogfile</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCJLinkLogFile</name>
+          <state>$PROJ_DIR$\cspycomm.log</state>
+        </option>
+        <option>
+          <name>CCJLinkHWResetDelay</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>OCDriverInfo</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>JLinkInitialSpeed</name>
+          <state>1000</state>
+        </option>
+        <option>
+          <name>CCDoJlinkMultiTarget</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCScanChainNonARMDevices</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCJLinkMultiTarget</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCJLinkIRLength</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCJLinkCommRadio</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCJLinkTCPIP</name>
+          <state>aaa.bbb.ccc.ddd</state>
+        </option>
+        <option>
+          <name>CCJLinkSpeedRadioV2</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCUSBDevice</name>
+          <version>1</version>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CCRDICatchReset</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCRDICatchUndef</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCRDICatchSWI</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCRDICatchData</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCRDICatchPrefetch</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCRDICatchIRQ</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCRDICatchFIQ</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCJLinkBreakpointRadio</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCJLinkDoUpdateBreakpoints</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCJLinkUpdateBreakpoints</name>
+          <state>_call_main</state>
+        </option>
+        <option>
+          <name>CCJLinkInterfaceRadio</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>OCJLinkAttachSlave</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CCJLinkResetList</name>
+          <version>6</version>
+          <state>7</state>
+        </option>
+        <option>
+          <name>CCJLinkInterfaceCmdLine</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCCatchCORERESET</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCCatchMMERR</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCCatchNOCPERR</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCCatchCHRERR</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCCatchSTATERR</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCCatchBUSERR</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCCatchINTERR</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCCatchHARDERR</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCCatchDummy</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>OCJLinkScriptFile</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CCJLinkUsbSerialNo</name>
+          <state></state>
+        </option>
+        <option>
+          <name>CCTcpIpAlt</name>
+          <version>0</version>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCJLinkTcpIpSerialNo</name>
+          <state></state>
+        </option>
+        <option>
+          <name>CCCpuClockEdit</name>
+          <state>72.0</state>
+        </option>
+        <option>
+          <name>CCSwoClockAuto</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCSwoClockEdit</name>
+          <state>2000</state>
+        </option>
+        <option>
+          <name>OCJLinkTraceSource</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>OCJLinkTraceSourceDummy</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>OCJLinkDeviceName</name>
+          <state>1</state>
+        </option>
+      </data>
+    </settings>
+    <settings>
+      <name>LMIFTDI_ID</name>
+      <archiveVersion>2</archiveVersion>
+      <data>
+        <version>2</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>0</debug>
+        <option>
+          <name>OCDriverInfo</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>LmiftdiSpeed</name>
+          <state>500</state>
+        </option>
+        <option>
+          <name>CCLmiftdiDoLogfile</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCLmiftdiLogFile</name>
+          <state>$PROJ_DIR$\cspycomm.log</state>
+        </option>
+        <option>
+          <name>CCLmiFtdiInterfaceRadio</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCLmiFtdiInterfaceCmdLine</name>
+          <state>0</state>
+        </option>
+      </data>
+    </settings>
+    <settings>
+      <name>MACRAIGOR_ID</name>
+      <archiveVersion>2</archiveVersion>
+      <data>
+        <version>3</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>0</debug>
+        <option>
+          <name>jtag</name>
+          <version>0</version>
+          <state>0</state>
+        </option>
+        <option>
+          <name>EmuSpeed</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>TCPIP</name>
+          <state>aaa.bbb.ccc.ddd</state>
+        </option>
+        <option>
+          <name>DoLogfile</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>LogFile</name>
+          <state>$PROJ_DIR$\cspycomm.log</state>
+        </option>
+        <option>
+          <name>DoEmuMultiTarget</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>EmuMultiTarget</name>
+          <state>0@ARM7TDMI</state>
+        </option>
+        <option>
+          <name>EmuHWReset</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CEmuCommBaud</name>
+          <version>0</version>
+          <state>4</state>
+        </option>
+        <option>
+          <name>CEmuCommPort</name>
+          <version>0</version>
+          <state>0</state>
+        </option>
+        <option>
+          <name>jtago</name>
+          <version>0</version>
+          <state>0</state>
+        </option>
+        <option>
+          <name>OCDriverInfo</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>UnusedAddr</name>
+          <state>0x00800000</state>
+        </option>
+        <option>
+          <name>CCMacraigorHWResetDelay</name>
+          <state></state>
+        </option>
+        <option>
+          <name>CCJTagBreakpointRadio</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCJTagDoUpdateBreakpoints</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCJTagUpdateBreakpoints</name>
+          <state>_call_main</state>
+        </option>
+        <option>
+          <name>CCMacraigorInterfaceRadio</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCMacraigorInterfaceCmdLine</name>
+          <state>0</state>
+        </option>
+      </data>
+    </settings>
+    <settings>
+      <name>PEMICRO_ID</name>
+      <archiveVersion>2</archiveVersion>
+      <data>
+        <version>1</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>0</debug>
+        <option>
+          <name>OCDriverInfo</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>OCPEMicroAttachSlave</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CCPEMicroInterfaceList</name>
+          <version>0</version>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCPEMicroResetDelay</name>
+          <state></state>
+        </option>
+        <option>
+          <name>CCPEMicroJtagSpeed</name>
+          <state>#UNINITIALIZED#</state>
+        </option>
+        <option>
+          <name>CCJPEMicroShowSettings</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>DoLogfile</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>LogFile</name>
+          <state>$PROJ_DIR$\cspycomm.log</state>
+        </option>
+        <option>
+          <name>CCPEMicroUSBDevice</name>
+          <version>0</version>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCPEMicroSerialPort</name>
+          <version>0</version>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCJPEMicroTCPIPAutoScanNetwork</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CCPEMicroTCPIP</name>
+          <state>10.0.0.1</state>
+        </option>
+        <option>
+          <name>CCPEMicroCommCmdLineProducer</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCSTLinkInterfaceRadio</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCSTLinkInterfaceCmdLine</name>
+          <state>0</state>
+        </option>
+      </data>
+    </settings>
+    <settings>
+      <name>RDI_ID</name>
+      <archiveVersion>2</archiveVersion>
+      <data>
+        <version>2</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>0</debug>
+        <option>
+          <name>CRDIDriverDll</name>
+          <state>###Uninitialized###</state>
+        </option>
+        <option>
+          <name>CRDILogFileCheck</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CRDILogFileEdit</name>
+          <state>$PROJ_DIR$\cspycomm.log</state>
+        </option>
+        <option>
+          <name>CCRDIHWReset</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCRDICatchReset</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCRDICatchUndef</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCRDICatchSWI</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCRDICatchData</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCRDICatchPrefetch</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCRDICatchIRQ</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCRDICatchFIQ</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>OCDriverInfo</name>
+          <state>1</state>
+        </option>
+      </data>
+    </settings>
+    <settings>
+      <name>STLINK_ID</name>
+      <archiveVersion>2</archiveVersion>
+      <data>
+        <version>2</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>0</debug>
+        <option>
+          <name>OCDriverInfo</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CCSTLinkInterfaceRadio</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCSTLinkInterfaceCmdLine</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCSTLinkResetList</name>
+          <version>1</version>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCCpuClockEdit</name>
+          <state>72.0</state>
+        </option>
+        <option>
+          <name>CCSwoClockAuto</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCSwoClockEdit</name>
+          <state>2000</state>
+        </option>
+      </data>
+    </settings>
+    <settings>
+      <name>THIRDPARTY_ID</name>
+      <archiveVersion>2</archiveVersion>
+      <data>
+        <version>0</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>0</debug>
+        <option>
+          <name>CThirdPartyDriverDll</name>
+          <state>###Uninitialized###</state>
+        </option>
+        <option>
+          <name>CThirdPartyLogFileCheck</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CThirdPartyLogFileEditB</name>
+          <state>$PROJ_DIR$\cspycomm.log</state>
+        </option>
+        <option>
+          <name>OCDriverInfo</name>
+          <state>1</state>
+        </option>
+      </data>
+    </settings>
+    <settings>
+      <name>XDS100_ID</name>
+      <archiveVersion>2</archiveVersion>
+      <data>
+        <version>2</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>0</debug>
+        <option>
+          <name>OCDriverInfo</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>OCXDS100AttachSlave</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>TIPackageOverride</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>TIPackage</name>
+          <state></state>
+        </option>
+        <option>
+          <name>CCXds100InterfaceList</name>
+          <version>2</version>
+          <state>0</state>
+        </option>
+        <option>
+          <name>BoardFile</name>
+          <state></state>
+        </option>
+        <option>
+          <name>DoLogfile</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>LogFile</name>
+          <state>$PROJ_DIR$\cspycomm.log</state>
+        </option>
+      </data>
+    </settings>
+    <debuggerPlugins>
+      <plugin>
+        <file>$TOOLKIT_DIR$\plugins\middleware\HCCWare\HCCWare.ewplugin</file>
+        <loadFlag>0</loadFlag>
+      </plugin>
+      <plugin>
+        <file>$TOOLKIT_DIR$\plugins\rtos\AVIX\AVIX.ENU.ewplugin</file>
+        <loadFlag>0</loadFlag>
+      </plugin>
+      <plugin>
+        <file>$TOOLKIT_DIR$\plugins\rtos\CMX\CmxArmPlugin.ENU.ewplugin</file>
+        <loadFlag>0</loadFlag>
+      </plugin>
+      <plugin>
+        <file>$TOOLKIT_DIR$\plugins\rtos\CMX\CmxTinyArmPlugin.ENU.ewplugin</file>
+        <loadFlag>0</loadFlag>
+      </plugin>
+      <plugin>
+        <file>$TOOLKIT_DIR$\plugins\rtos\embOS\embOSPlugin.ewplugin</file>
+        <loadFlag>0</loadFlag>
+      </plugin>
+      <plugin>
+        <file>$TOOLKIT_DIR$\plugins\rtos\MQX\MQXRtosPlugin.ewplugin</file>
+        <loadFlag>0</loadFlag>
+      </plugin>
+      <plugin>
+        <file>$TOOLKIT_DIR$\plugins\rtos\OpenRTOS\OpenRTOSPlugin.ewplugin</file>
+        <loadFlag>0</loadFlag>
+      </plugin>
+      <plugin>
+        <file>$TOOLKIT_DIR$\plugins\rtos\SafeRTOS\SafeRTOSPlugin.ewplugin</file>
+        <loadFlag>0</loadFlag>
+      </plugin>
+      <plugin>
+        <file>$TOOLKIT_DIR$\plugins\rtos\ThreadX\ThreadXArmPlugin.ENU.ewplugin</file>
+        <loadFlag>0</loadFlag>
+      </plugin>
+      <plugin>
+        <file>$TOOLKIT_DIR$\plugins\rtos\TI-RTOS\tirtosplugin.ewplugin</file>
+        <loadFlag>0</loadFlag>
+      </plugin>
+      <plugin>
+        <file>$TOOLKIT_DIR$\plugins\rtos\uCOS-II\uCOS-II-286-KA-CSpy.ewplugin</file>
+        <loadFlag>0</loadFlag>
+      </plugin>
+      <plugin>
+        <file>$TOOLKIT_DIR$\plugins\rtos\uCOS-II\uCOS-II-KA-CSpy.ewplugin</file>
+        <loadFlag>0</loadFlag>
+      </plugin>
+      <plugin>
+        <file>$TOOLKIT_DIR$\plugins\rtos\uCOS-III\uCOS-III-KA-CSpy.ewplugin</file>
+        <loadFlag>0</loadFlag>
+      </plugin>
+      <plugin>
+        <file>$EW_DIR$\common\plugins\CodeCoverage\CodeCoverage.ENU.ewplugin</file>
+        <loadFlag>1</loadFlag>
+      </plugin>
+      <plugin>
+        <file>$EW_DIR$\common\plugins\Orti\Orti.ENU.ewplugin</file>
+        <loadFlag>0</loadFlag>
+      </plugin>
+      <plugin>
+        <file>$EW_DIR$\common\plugins\SymList\SymList.ENU.ewplugin</file>
+        <loadFlag>1</loadFlag>
+      </plugin>
+      <plugin>
+        <file>$EW_DIR$\common\plugins\uCProbe\uCProbePlugin.ENU.ewplugin</file>
+        <loadFlag>0</loadFlag>
+      </plugin>
+    </debuggerPlugins>
+  </configuration></project>
+
+

+ 1187 - 0
central_and_peripheral_secure_bootloader_debug/iar/secure_bootloader_ble_s132_pca10040_debug.ewp

@@ -0,0 +1,1187 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+
+
+<project>
+  <fileVersion>2</fileVersion>  <configuration>
+    <name>nrf52832_xxaa_s132</name>
+    <toolchain>
+      <name>ARM</name>
+    </toolchain>
+    <debug>0</debug>
+    <settings>
+      <name>General</name>
+      <archiveVersion>3</archiveVersion>
+      <data>
+        <version>22</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>0</debug>
+        <option>
+          <name>ExePath</name>
+          <state>_build</state>
+        </option>
+        <option>
+          <name>ObjPath</name>
+          <state>_build</state>
+        </option>
+        <option>
+          <name>ListPath</name>
+          <state>_build</state>
+        </option>
+        <option>
+          <name>Variant</name>
+          <version>20</version>
+          <state>34</state>
+        </option>
+        <option>
+          <name>GEndianMode</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>Input variant</name>
+          <version>3</version>
+          <state>1</state>
+        </option>
+        <option>
+          <name>Input description</name>
+          <state>Full formatting.</state>
+        </option>
+        <option>
+          <name>Output variant</name>
+          <version>2</version>
+          <state>1</state>
+        </option>
+        <option>
+          <name>Output description</name>
+          <state>Full formatting.</state>
+        </option>
+        <option>
+          <name>GOutputBinary</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>FPU</name>
+          <version>2</version>
+          <state>5</state>
+        </option>
+        <option>
+          <name>OGCoreOrChip</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>GRuntimeLibSelect</name>
+          <version>0</version>
+          <state>2</state>
+        </option>
+        <option>
+          <name>GRuntimeLibSelectSlave</name>
+          <version>0</version>
+          <state>2</state>
+        </option>
+        <option>
+          <name>RTDescription</name>
+          <state>Use the full configuration of the C/C++ runtime library. Full locale interface, C locale, file descriptor support, multibytes in printf and scanf, and hex floats in strtod.</state>
+        </option>
+        <option>
+          <name>OGProductVersion</name>
+          <state>6.10.3.52260</state>
+        </option>
+        <option>
+          <name>OGLastSavedByProductVersion</name>
+          <state>7.20.2.7418</state>
+        </option>
+        <option>
+          <name>GeneralEnableMisra</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>GeneralMisraVerbose</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>OGChipSelectEditMenu</name>
+          <state>nrf52832_xxaa	nRF52832_xxAA</state>
+        </option>
+        <option>
+          <name>GenLowLevelInterface</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>GEndianModeBE</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>OGBufferedTerminalOutput</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>GenStdoutInterface</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>GeneralMisraRules98</name>
+          <version>0</version>
+          <state>1000111110110101101110011100111111101110011011000101110111101101100111111111111100110011111001110111001111111111111111111111111</state>
+        </option>
+        <option>
+          <name>GeneralMisraVer</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>GeneralMisraRules04</name>
+          <version>0</version>
+          <state>111101110010111111111000110111111111111111111111111110010111101111010101111111111111111111111111101111111011111001111011111011111111111111111</state>
+        </option>
+        <option>
+          <name>RTConfigPath2</name>
+          <state>$TOOLKIT_DIR$\INC\c\DLib_Config_Full.h</state>
+        </option>
+        <option>
+          <name>GFPUCoreSlave</name>
+          <version>20</version>
+          <state>39</state>
+        </option>
+        <option>
+          <name>GBECoreSlave</name>
+          <version>20</version>
+          <state>39</state>
+        </option>
+        <option>
+          <name>OGUseCmsis</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>OGUseCmsisDspLib</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>GRuntimeLibThreads</name>
+          <state>0</state>
+        </option>
+      </data>
+    </settings>
+    <settings>
+      <name>ICCARM</name>
+      <archiveVersion>2</archiveVersion>
+      <data>
+        <version>31</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>0</debug>
+        <option>
+          <name>CCGuardCalls</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CCOptimizationNoSizeConstraints</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCDefines</name>
+          <state>BLE_STACK_SUPPORT_REQD</state>
+          <state>BOARD_PCA10040</state>
+          <state>CONFIG_GPIO_AS_PINRESET</state>
+          <state>DEBUG_NRF</state>
+          <state>FLOAT_ABI_HARD</state>
+          <state>NRF52</state>
+          <state>NRF52832_XXAA</state>
+          <state>NRF52_PAN_74</state>
+          <state>NRF_DFU_DEBUG_VERSION</state>
+          <state>NRF_DFU_SETTINGS_VERSION=2</state>
+          <state>NRF_DFU_SVCI_ENABLED</state>
+          <state>NRF_SD_BLE_API_VERSION=7</state>
+          <state>S132</state>
+          <state>SOFTDEVICE_PRESENT</state>
+          <state>SVC_INTERFACE_CALL_AS_NORMAL_FUNCTION</state>
+          <state>uECC_ENABLE_VLI_API=0</state>
+          <state>uECC_OPTIMIZATION_LEVEL=3</state>
+          <state>uECC_SQUARE_FUNC=0</state>
+          <state>uECC_SUPPORT_COMPRESSED_POINT=0</state>
+          <state>uECC_VLI_NATIVE_LITTLE_ENDIAN=1</state>
+        </option>
+        <option>
+          <name>CCPreprocFile</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCPreprocComments</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCPreprocLine</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCListCFile</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCListCMnemonics</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCListCMessages</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCListAssFile</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCListAssSource</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCEnableRemarks</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCDiagSuppress</name>
+          <state></state>
+        </option>
+        <option>
+          <name>CCDiagRemark</name>
+          <state></state>
+        </option>
+        <option>
+          <name>CCDiagWarning</name>
+          <state></state>
+        </option>
+        <option>
+          <name>CCDiagError</name>
+          <state></state>
+        </option>
+        <option>
+          <name>CCObjPrefix</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CCAllowList</name>
+          <version>1</version>
+          <state>11111110</state>
+        </option>
+        <option>
+          <name>CCDebugInfo</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IEndianMode</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IProcessor</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IExtraOptionsCheck</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IExtraOptions</name>
+          <state>--diag_suppress Pe111</state>
+        </option>
+        <option>
+          <name>CCLangConformance</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCSignedPlainChar</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CCRequirePrototypes</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCMultibyteSupport</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCDiagWarnAreErr</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CCCompilerRuntimeInfo</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IFpuProcessor</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>OutputFile</name>
+          <state>$FILE_BNAME$.o</state>
+        </option>
+        <option>
+          <name>CCLibConfigHeader</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>PreInclude</name>
+          <state></state>
+        </option>
+        <option>
+          <name>CompilerMisraOverride</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCIncludePath2</name>
+          <state>$PROJ_DIR$\..\..\config</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\ble\common</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\boards</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\atomic</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\atomic_fifo</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\balloc</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\bootloader</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\bootloader\ble_dfu</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\bootloader\dfu</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\crc32</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\backend\cc310</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\backend\cc310_bl</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\backend\cifra</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\backend\mbedtls</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\backend\micro_ecc</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\backend\nrf_hw</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\backend\nrf_sw</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\backend\oberon</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\backend\optiga</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\delay</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\experimental_section_vars</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\fstorage</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\log</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\log\src</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\mem_manager</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\memobj</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\queue</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\ringbuf</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\scheduler</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\sha256</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\stack_info</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\strerror</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\svc</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\util</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\softdevice\common</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\softdevice\s132\headers</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\softdevice\s132\headers\nrf52</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\toolchain\cmsis\include</state>
+          <state>$PROJ_DIR$\..\..</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\external\fprintf</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\external\micro-ecc\micro-ecc</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\external\nano-pb</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\external\nrf_oberon</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\external\nrf_oberon\include</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\external\segger_rtt</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\integration\nrfx</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\modules\nrfx</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\modules\nrfx\hal</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\modules\nrfx\mdk</state>
+          <state>$PROJ_DIR$\..\config</state>
+        </option>
+        <option>
+          <name>CCStdIncCheck</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCCodeSection</name>
+          <state>.text</state>
+        </option>
+        <option>
+          <name>IInterwork2</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IProcessorMode2</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CCOptLevel</name>
+          <state>3</state>
+        </option>
+        <option>
+          <name>CCOptStrategy</name>
+          <version>0</version>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CCOptLevelSlave</name>
+          <state>3</state>
+        </option>
+        <option>
+          <name>CompilerMisraRules98</name>
+          <version>0</version>
+          <state>1000111110110101101110011100111111101110011011000101110111101101100111111111111100110011111001110111001111111111111111111111111</state>
+        </option>
+        <option>
+          <name>CompilerMisraRules04</name>
+          <version>0</version>
+          <state>111101110010111111111000110111111111111111111111111110010111101111010101111111111111111111111111101111111011111001111011111011111111111111111</state>
+        </option>
+        <option>
+          <name>CCPosIndRopi</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCPosIndRwpi</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCPosIndNoDynInit</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IccLang</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IccCDialect</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IccAllowVLA</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IccCppDialect</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IccExceptions</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IccRTTI</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IccStaticDestr</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IccCppInlineSemantics</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IccCmsis</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IccFloatSemantics</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCNoLiteralPool</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CCOptStrategySlave</name>
+          <version>0</version>
+          <state>1</state>
+        </option>
+      </data>
+    </settings>
+    <settings>
+      <name>AARM</name>
+      <archiveVersion>2</archiveVersion>
+      <data>
+        <version>9</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>0</debug>
+        <option>
+          <name>AObjPrefix</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>AEndian</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>ACaseSensitivity</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>MacroChars</name>
+          <version>0</version>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AWarnEnable</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AWarnWhat</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AWarnOne</name>
+          <state></state>
+        </option>
+        <option>
+          <name>AWarnRange1</name>
+          <state></state>
+        </option>
+        <option>
+          <name>AWarnRange2</name>
+          <state></state>
+        </option>
+        <option>
+          <name>ADebug</name>
+          <state></state>
+        </option>
+        <option>
+          <name>AltRegisterNames</name>
+          <state>0</state>
+        </option>
+        <option>
+      <name>ADefines</name>
+          <state>BLE_STACK_SUPPORT_REQD</state>
+          <state>BOARD_PCA10040</state>
+          <state>CONFIG_GPIO_AS_PINRESET</state>
+          <state>DEBUG_NRF</state>
+          <state>FLOAT_ABI_HARD</state>
+          <state>NRF52</state>
+          <state>NRF52832_XXAA</state>
+          <state>NRF52_PAN_74</state>
+          <state>NRF_DFU_DEBUG_VERSION</state>
+          <state>NRF_DFU_SETTINGS_VERSION=2</state>
+          <state>NRF_DFU_SVCI_ENABLED</state>
+          <state>NRF_SD_BLE_API_VERSION=7</state>
+          <state>S132</state>
+          <state>SOFTDEVICE_PRESENT</state>
+          <state>SVC_INTERFACE_CALL_AS_NORMAL_FUNCTION</state>
+          <state>uECC_ENABLE_VLI_API=0</state>
+          <state>uECC_OPTIMIZATION_LEVEL=3</state>
+          <state>uECC_SQUARE_FUNC=0</state>
+          <state>uECC_SUPPORT_COMPRESSED_POINT=0</state>
+          <state>uECC_VLI_NATIVE_LITTLE_ENDIAN=1</state>
+        </option>
+        <option>
+          <name>AList</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AListHeader</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>AListing</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>Includes</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>MacDefs</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>MacExps</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>MacExec</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>OnlyAssed</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>MultiLine</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>PageLengthCheck</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>PageLength</name>
+          <state>80</state>
+        </option>
+        <option>
+          <name>TabSpacing</name>
+          <state>8</state>
+        </option>
+        <option>
+          <name>AXRef</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AXRefDefines</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AXRefInternal</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AXRefDual</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AProcessor</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>AFpuProcessor</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>AOutputFile</name>
+          <state>$FILE_BNAME$.o</state>
+        </option>
+        <option>
+          <name>AMultibyteSupport</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>ALimitErrorsCheck</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>ALimitErrorsEdit</name>
+          <state>100</state>
+        </option>
+        <option>
+          <name>AIgnoreStdInclude</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AUserIncludes</name>
+          <state>$PROJ_DIR$\..\..\config</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\ble\common</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\boards</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\atomic</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\atomic_fifo</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\balloc</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\bootloader</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\bootloader\ble_dfu</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\bootloader\dfu</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\crc32</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\backend\cc310</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\backend\cc310_bl</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\backend\cifra</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\backend\mbedtls</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\backend\micro_ecc</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\backend\nrf_hw</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\backend\nrf_sw</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\backend\oberon</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\backend\optiga</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\delay</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\experimental_section_vars</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\fstorage</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\log</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\log\src</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\mem_manager</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\memobj</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\queue</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\ringbuf</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\scheduler</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\sha256</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\stack_info</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\strerror</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\svc</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\libraries\util</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\softdevice\common</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\softdevice\s132\headers</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\softdevice\s132\headers\nrf52</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\components\toolchain\cmsis\include</state>
+          <state>$PROJ_DIR$\..\..</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\external\fprintf</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\external\micro-ecc\micro-ecc</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\external\nano-pb</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\external\nrf_oberon</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\external\nrf_oberon\include</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\external\segger_rtt</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\integration\nrfx</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\modules\nrfx</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\modules\nrfx\hal</state>
+          <state>$PROJ_DIR$\..\..\..\..\..\modules\nrfx\mdk</state>
+          <state>$PROJ_DIR$\..\config</state>
+        </option>
+        <option>
+          <name>AExtraOptionsCheckV2</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>AExtraOptionsV2</name>
+          <state></state>
+        </option>
+        <option>
+          <name>AsmNoLiteralPool</name>
+          <state>0</state>
+        </option>
+      </data>
+    </settings>
+    <settings>
+      <name>OBJCOPY</name>
+      <archiveVersion>0</archiveVersion>
+      <data>
+        <version>1</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>0</debug>
+        <option>
+          <name>OOCOutputFormat</name>
+          <version>2</version>
+          <state>1</state>
+        </option>
+        <option>
+          <name>OCOutputOverride</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>OOCOutputFile</name>
+          <state>secure_bootloader_ble_s132_pca10040_debug.hex</state>
+        </option>
+        <option>
+          <name>OOCCommandLineProducer</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>OOCObjCopyEnable</name>
+          <state>1</state>
+        </option>
+      </data>
+    </settings>
+    <settings>
+      <name>CUSTOM</name>
+      <archiveVersion>3</archiveVersion>
+      <data>
+        <extensions></extensions>
+        <cmdline></cmdline>
+      </data>
+    </settings>
+    <settings>
+      <name>BICOMP</name>
+      <archiveVersion>0</archiveVersion>
+      <data/>
+    </settings>
+    <settings>
+      <name>BUILDACTION</name>
+      <archiveVersion>1</archiveVersion>
+      <data>
+        <prebuild></prebuild>
+        <postbuild></postbuild>
+      </data>
+    </settings>
+    <settings>
+      <name>ILINK</name>
+      <archiveVersion>0</archiveVersion>
+      <data>
+        <version>16</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>0</debug>
+        <option>
+          <name>IlinkLibIOConfig</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>XLinkMisraHandler</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkInputFileSlave</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkOutputFile</name>
+          <state>secure_bootloader_ble_s132_pca10040_debug.out</state>
+        </option>
+        <option>
+          <name>IlinkDebugInfoEnable</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IlinkKeepSymbols</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IlinkRawBinaryFile</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IlinkRawBinarySymbol</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IlinkRawBinarySegment</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IlinkRawBinaryAlign</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IlinkDefines</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IlinkConfigDefines</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IlinkMapFile</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IlinkLogFile</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkLogInitialization</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkLogModule</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkLogSection</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkLogVeneer</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkIcfOverride</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IlinkIcfFile</name>
+      <state>$PROJ_DIR$\secure_bootloader_iar_nRF5x.icf</state>
+        </option>
+        <option>
+          <name>IlinkIcfFileSlave</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IlinkEnableRemarks</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkSuppressDiags</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IlinkTreatAsRem</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IlinkTreatAsWarn</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IlinkTreatAsErr</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IlinkWarningsAreErrors</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IlinkUseExtraOptions</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkExtraOptions</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IlinkLowLevelInterfaceSlave</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IlinkAutoLibEnable</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IlinkAdditionalLibs</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IlinkOverrideProgramEntryLabel</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkProgramEntryLabelSelect</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkProgramEntryLabel</name>
+          <state>__iar_program_start</state>
+        </option>
+        <option>
+          <name>DoFill</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>FillerByte</name>
+          <state>0xFF</state>
+        </option>
+        <option>
+          <name>FillerStart</name>
+          <state>0x0</state>
+        </option>
+        <option>
+          <name>FillerEnd</name>
+          <state>0x0</state>
+        </option>
+        <option>
+          <name>CrcSize</name>
+          <version>0</version>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CrcAlign</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CrcPoly</name>
+          <state>0x11021</state>
+        </option>
+        <option>
+          <name>CrcCompl</name>
+          <version>0</version>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CrcBitOrder</name>
+          <version>0</version>
+          <state>0</state>
+        </option>
+        <option>
+          <name>CrcInitialValue</name>
+          <state>0x0</state>
+        </option>
+        <option>
+          <name>DoCrc</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkBE8Slave</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IlinkBufferedTerminalOutput</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IlinkStdoutInterfaceSlave</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CrcFullSize</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkIElfToolPostProcess</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkLogAutoLibSelect</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkLogRedirSymbols</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkLogUnusedFragments</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkCrcReverseByteOrder</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkCrcUseAsInput</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IlinkOptInline</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IlinkOptExceptionsAllow</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IlinkOptExceptionsForce</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkCmsis</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IlinkOptMergeDuplSections</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkOptUseVfe</name>
+          <state>1</state>
+        </option>
+        <option>
+          <name>IlinkOptForceVfe</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkStackAnalysisEnable</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkStackControlFile</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IlinkStackCallGraphFile</name>
+          <state></state>
+        </option>
+        <option>
+          <name>CrcAlgorithm</name>
+          <version>0</version>
+          <state>1</state>
+        </option>
+        <option>
+          <name>CrcUnitSize</name>
+          <version>0</version>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IlinkThreadsSlave</name>
+          <state>1</state>
+        </option>
+      </data>
+    </settings>
+    <settings>
+      <name>IARCHIVE</name>
+      <archiveVersion>0</archiveVersion>
+      <data>
+        <version>0</version>
+        <wantNonLocal>1</wantNonLocal>
+        <debug>0</debug>
+        <option>
+          <name>IarchiveInputs</name>
+          <state></state>
+        </option>
+        <option>
+          <name>IarchiveOverride</name>
+          <state>0</state>
+        </option>
+        <option>
+          <name>IarchiveOutput</name>
+          <state>###Unitialized###</state>
+        </option>
+      </data>
+    </settings>
+    <settings>
+      <name>BILINK</name>
+      <archiveVersion>0</archiveVersion>
+      <data/>
+    </settings>
+  </configuration>  <group>
+  <name>nRF_Log</name>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\log\src\nrf_log_backend_rtt.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\log\src\nrf_log_backend_serial.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\log\src\nrf_log_default_backends.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\log\src\nrf_log_frontend.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\log\src\nrf_log_str_formatter.c</name>    </file>  </group>  <group>
+  <name>nRF_Libraries</name>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\util\app_error_weak.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\scheduler\app_scheduler.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\util\app_util_platform.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\crc32\crc32.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\mem_manager\mem_manager.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\util\nrf_assert.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\atomic_fifo\nrf_atfifo.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\atomic\nrf_atomic.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\balloc\nrf_balloc.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\external\fprintf\nrf_fprintf.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\external\fprintf\nrf_fprintf_format.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\fstorage\nrf_fstorage.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\fstorage\nrf_fstorage_nvmc.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\fstorage\nrf_fstorage_sd.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\memobj\nrf_memobj.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\queue\nrf_queue.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\ringbuf\nrf_ringbuf.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\experimental_section_vars\nrf_section_iter.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\strerror\nrf_strerror.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\sha256\sha256.c</name>    </file>  </group>  <group>
+  <name>nRF_Drivers</name>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\modules\nrfx\hal\nrf_nvmc.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\modules\nrfx\soc\nrfx_atomic.c</name>    </file>  </group>  <group>
+  <name>nRF_Crypto backend uECC</name>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\backend\micro_ecc\micro_ecc_backend_ecc.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\backend\micro_ecc\micro_ecc_backend_ecdh.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\backend\micro_ecc\micro_ecc_backend_ecdsa.c</name>    </file>  </group>  <group>
+  <name>nano-pb</name>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\external\nano-pb\pb_common.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\external\nano-pb\pb_decode.c</name>    </file>  </group>  <group>
+  <name>Board Definition</name>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\boards\boards.c</name>    </file>  </group>  <group>
+  <name>nRF_SVC</name>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\bootloader\dfu\nrf_dfu_svci.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\bootloader\dfu\nrf_dfu_svci_handler.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\svc\nrf_svc_handler.c</name>    </file>  </group>  <group>
+  <name>nRF_Oberon_Crypto</name>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\external\nrf_oberon\lib\cortex-m4\hard-float\short-wchar\liboberon_3.0.5.a</name>    </file>  </group>  <group>
+  <name>nRF_Crypto</name>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\nrf_crypto_ecc.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\nrf_crypto_ecdsa.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\nrf_crypto_hash.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\nrf_crypto_init.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\nrf_crypto_shared.c</name>    </file>  </group>  <group>
+  <name>Application</name>    <file>
+    <name>$PROJ_DIR$\..\..\..\dfu_public_key.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\main.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\config\sdk_config.h</name>    </file>  </group>  <group>
+  <name>nRF_micro-ecc</name>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\external\micro-ecc\nrf52hf_iar\armgcc\micro_ecc_lib_nrf52.a</name>    </file>  </group>  <group>
+  <name>nRF_Segger_RTT</name>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\external\segger_rtt\SEGGER_RTT.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\external\segger_rtt\SEGGER_RTT_Syscalls_IAR.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\external\segger_rtt\SEGGER_RTT_printf.c</name>    </file>  </group>  <group>
+  <name>nRF_Bootloader</name>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\bootloader\nrf_bootloader.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\bootloader\nrf_bootloader_app_start.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\bootloader\nrf_bootloader_app_start_final.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\bootloader\nrf_bootloader_dfu_timers.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\bootloader\nrf_bootloader_fw_activation.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\bootloader\nrf_bootloader_info.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\bootloader\nrf_bootloader_wdt.c</name>    </file>  </group>  <group>
+  <name>None</name>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\modules\nrfx\mdk\iar_startup_nrf52.s</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\modules\nrfx\mdk\system_nrf52.c</name>    </file>  </group>  <group>
+  <name>nRF_Crypto backend nRF sw</name>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\backend\nrf_sw\nrf_sw_backend_hash.c</name>    </file>  </group>  <group>
+  <name>nRF_BLE</name>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\ble\common\ble_srv_common.c</name>    </file>  </group>  <group>
+  <name>nRF_DFU</name>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\bootloader\dfu\dfu-cc.pb.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\bootloader\dfu\nrf_dfu.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\bootloader\ble_dfu\nrf_dfu_ble.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\bootloader\dfu\nrf_dfu_flash.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\bootloader\dfu\nrf_dfu_handling_error.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\bootloader\dfu\nrf_dfu_mbr.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\bootloader\dfu\nrf_dfu_req_handler.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\bootloader\dfu\nrf_dfu_settings.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\bootloader\dfu\nrf_dfu_settings_svci.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\bootloader\dfu\nrf_dfu_transport.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\bootloader\dfu\nrf_dfu_utils.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\bootloader\dfu\nrf_dfu_validation.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\bootloader\dfu\nrf_dfu_ver_validation.c</name>    </file>  </group>  <group>
+  <name>nRF_SoftDevice</name>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\softdevice\common\nrf_sdh.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\softdevice\common\nrf_sdh_ble.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\softdevice\common\nrf_sdh_soc.c</name>    </file>  </group>  <group>
+  <name>nRF_Crypto backend Oberon</name>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\backend\oberon\oberon_backend_chacha_poly_aead.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\backend\oberon\oberon_backend_ecc.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\backend\oberon\oberon_backend_ecdh.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\backend\oberon\oberon_backend_ecdsa.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\backend\oberon\oberon_backend_eddsa.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\backend\oberon\oberon_backend_hash.c</name>    </file>    <file>
+    <name>$PROJ_DIR$\..\..\..\..\..\components\libraries\crypto\backend\oberon\oberon_backend_hmac.c</name>    </file>  </group></project>
+
+

+ 61 - 0
central_and_peripheral_secure_bootloader_debug/iar/secure_bootloader_iar_nRF5x.icf

@@ -0,0 +1,61 @@
+/*###ICF### Section handled by ICF editor, don't touch! ****/
+/*-Editor annotation file-*/
+/* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
+/*-Specials-*/
+define symbol __ICFEDIT_intvec_start__ = 0x71000;
+/*-Memory Regions-*/
+define symbol __ICFEDIT_region_ROM_start__   = 0x71000;
+define symbol __ICFEDIT_region_ROM_end__     = 0x7dfff;
+define symbol __ICFEDIT_region_RAM_start__   = 0x20005968;
+define symbol __ICFEDIT_region_RAM_end__     = 0x2000ffff;
+export symbol __ICFEDIT_region_RAM_start__;
+export symbol __ICFEDIT_region_RAM_end__;
+/*-Sizes-*/
+define symbol __ICFEDIT_size_cstack__   = 2048;
+define symbol __ICFEDIT_size_heap__     = 0;
+/**** End of ICF editor section. ###ICF###*/
+
+define memory mem with size = 4G;
+define region ROM_region   = mem:[from __ICFEDIT_region_ROM_start__   to __ICFEDIT_region_ROM_end__];
+define region RAM_region   = mem:[from __ICFEDIT_region_RAM_start__   to __ICFEDIT_region_RAM_end__];
+
+define symbol __region_uicr_bootloader_start_address_start = 0x10001014;
+define symbol __region_uicr_bootloader_start_address_length = 0x4;
+define symbol __start_uicr_bootloader_start_address = __region_uicr_bootloader_start_address_start;
+define symbol __stop_uicr_bootloader_start_address = __region_uicr_bootloader_start_address_start + __region_uicr_bootloader_start_address_length;
+export symbol __start_uicr_bootloader_start_address;
+export symbol __stop_uicr_bootloader_start_address;
+define symbol __region_bootloader_settings_page_start = 0x0007F000;
+define symbol __region_bootloader_settings_page_length = 0x1000;
+define symbol __start_bootloader_settings_page = __region_bootloader_settings_page_start;
+define symbol __stop_bootloader_settings_page = __region_bootloader_settings_page_start + __region_bootloader_settings_page_length;
+export symbol __start_bootloader_settings_page;
+export symbol __stop_bootloader_settings_page;
+define symbol __region_uicr_mbr_params_page_start = 0x10001018;
+define symbol __region_uicr_mbr_params_page_length = 0x4;
+define symbol __start_uicr_mbr_params_page = __region_uicr_mbr_params_page_start;
+define symbol __stop_uicr_mbr_params_page = __region_uicr_mbr_params_page_start + __region_uicr_mbr_params_page_length;
+export symbol __start_uicr_mbr_params_page;
+export symbol __stop_uicr_mbr_params_page;
+define symbol __region_mbr_params_page_start = 0x0007E000;
+define symbol __region_mbr_params_page_length = 0x1000;
+define symbol __start_mbr_params_page = __region_mbr_params_page_start;
+define symbol __stop_mbr_params_page = __region_mbr_params_page_start + __region_mbr_params_page_length;
+export symbol __start_mbr_params_page;
+export symbol __stop_mbr_params_page;
+
+define block CSTACK    with alignment = 8, size = __ICFEDIT_size_cstack__   { };
+define block HEAP      with alignment = 8, size = __ICFEDIT_size_heap__     { };
+define block RO_END    with alignment = 8, size = 0     { };
+
+initialize by copy { readwrite };
+do not initialize  { section .noinit };
+
+keep { section .intvec };
+place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
+place in ROM_region   { readonly,
+                        block RO_END };
+place in RAM_region   { readwrite,
+                        block CSTACK,
+                        block HEAP };
+

+ 27 - 0
central_and_peripheral_secure_bootloader_debug/keilkill.bat

@@ -0,0 +1,27 @@
+del *.bak /s
+del *.ddk /s
+del *.edk /s
+del *.lst /s
+del *.lnp /s
+del *.mpf /s
+del *.mpj /s
+del *.obj /s
+del *.omf /s
+::del *.opt /s  ::²»ÔÊÐíɾ³ýJLINKµÄÉèÖÃ
+del *.plg /s
+del *.rpt /s
+del *.tmp /s
+del *.__i /s
+del *.crf /s
+del *.o /s
+del *.d /s
+del *.axf /s
+del *.tra /s
+del *.dep /s           
+del JLinkLog.txt /s
+
+del *.iex /s
+del *.htm /s
+::del *.sct /s
+del *.map /s
+exit

+ 59 - 0
central_and_peripheral_secure_bootloader_debug/ses/flash_placement.xml

@@ -0,0 +1,59 @@
+<!DOCTYPE Linker_Placement_File>
+<Root name="Flash Section Placement">
+  <MemorySegment name="FLASH" start="$(FLASH_PH_START)" size="$(FLASH_PH_SIZE)">
+    <ProgramSection load="no" name=".reserved_flash" start="$(FLASH_PH_START)" size="$(FLASH_START)-$(FLASH_PH_START)" />
+    <ProgramSection alignment="0x100" load="Yes" name=".vectors" start="$(FLASH_START)" />
+    <ProgramSection alignment="4" load="Yes" name=".init" />
+    <ProgramSection alignment="4" load="Yes" name=".init_rodata" />
+    <ProgramSection alignment="4" load="Yes" name=".text" />
+    <ProgramSection alignment="4" keep="Yes" load="Yes" name=".crypto_data" inputsections="*(SORT(.crypto_data*))" address_symbol="__start_crypto_data" end_symbol="__stop_crypto_data" />
+    <ProgramSection alignment="4" keep="Yes" load="Yes" name=".nrf_queue" inputsections="*(.nrf_queue*)" address_symbol="__start_nrf_queue" end_symbol="__stop_nrf_queue" />
+    <ProgramSection alignment="4" keep="Yes" load="Yes" name=".dfu_trans" inputsections="*(SORT(.dfu_trans*))" address_symbol="__start_dfu_trans" end_symbol="__stop_dfu_trans" />
+    <ProgramSection alignment="4" keep="Yes" load="Yes" name=".svc_data" inputsections="*(.svc_data*)" address_symbol="__start_svc_data" end_symbol="__stop_svc_data" />
+    <ProgramSection alignment="4" keep="Yes" load="Yes" name=".log_const_data" inputsections="*(SORT(.log_const_data*))" address_symbol="__start_log_const_data" end_symbol="__stop_log_const_data" />
+    <ProgramSection alignment="4" keep="Yes" load="Yes" name=".nrf_balloc" inputsections="*(.nrf_balloc*)" address_symbol="__start_nrf_balloc" end_symbol="__stop_nrf_balloc" />
+    <ProgramSection alignment="4" keep="Yes" load="Yes" name=".log_backends" inputsections="*(SORT(.log_backends*))" address_symbol="__start_log_backends" end_symbol="__stop_log_backends" />
+    <ProgramSection alignment="4" keep="Yes" load="Yes" name=".sdh_ble_observers" inputsections="*(SORT(.sdh_ble_observers*))" address_symbol="__start_sdh_ble_observers" end_symbol="__stop_sdh_ble_observers" />
+    <ProgramSection alignment="4" keep="Yes" load="Yes" name=".sdh_req_observers" inputsections="*(SORT(.sdh_req_observers*))" address_symbol="__start_sdh_req_observers" end_symbol="__stop_sdh_req_observers" />
+    <ProgramSection alignment="4" keep="Yes" load="Yes" name=".sdh_state_observers" inputsections="*(SORT(.sdh_state_observers*))" address_symbol="__start_sdh_state_observers" end_symbol="__stop_sdh_state_observers" />
+    <ProgramSection alignment="4" keep="Yes" load="Yes" name=".sdh_stack_observers" inputsections="*(SORT(.sdh_stack_observers*))" address_symbol="__start_sdh_stack_observers" end_symbol="__stop_sdh_stack_observers" />
+    <ProgramSection alignment="4" keep="Yes" load="Yes" name=".sdh_soc_observers" inputsections="*(SORT(.sdh_soc_observers*))" address_symbol="__start_sdh_soc_observers" end_symbol="__stop_sdh_soc_observers" />
+    <ProgramSection alignment="4" keep="Yes" load="No" name=".nrf_sections" address_symbol="__start_nrf_sections" />
+    <ProgramSection alignment="4" keep="Yes" load="Yes" name=".log_dynamic_data"  inputsections="*(SORT(.log_dynamic_data*))" runin=".log_dynamic_data_run"/>
+    <ProgramSection alignment="4" keep="Yes" load="Yes" name=".log_filter_data"  inputsections="*(SORT(.log_filter_data*))" runin=".log_filter_data_run"/>
+    <ProgramSection alignment="4" keep="Yes" load="Yes" name=".fs_data"  inputsections="*(.fs_data*)" runin=".fs_data_run"/>
+    <ProgramSection alignment="4" load="Yes" name=".dtors" />
+    <ProgramSection alignment="4" load="Yes" name=".ctors" />
+    <ProgramSection alignment="4" load="Yes" name=".rodata" />
+    <ProgramSection alignment="4" load="Yes" name=".ARM.exidx" address_symbol="__exidx_start" end_symbol="__exidx_end" />
+    <ProgramSection alignment="4" load="Yes" runin=".fast_run" name=".fast" />
+    <ProgramSection alignment="4" load="Yes" runin=".data_run" name=".data" />
+    <ProgramSection alignment="4" load="Yes" runin=".tdata_run" name=".tdata" />
+    <ProgramSection alignment="4" keep="Yes" load="No" name=".mbr_params_page" address_symbol="__start_mbr_params_page" end_symbol="__stop_mbr_params_page" start = "0x0007E000" size="0x1000" />
+    <ProgramSection alignment="4" keep="Yes" load="No" name=".bootloader_settings_page" address_symbol="__start_bootloader_settings_page" end_symbol="__stop_bootloader_settings_page" start = "0x0007F000" size="0x1000" />
+  </MemorySegment>
+  <MemorySegment name="RAM" start="$(RAM_PH_START)" size="$(RAM_PH_SIZE)">
+    <ProgramSection load="no" name=".reserved_ram" start="$(RAM_PH_START)" size="$(RAM_START)-$(RAM_PH_START)" />
+    <ProgramSection alignment="0x100" load="No" name=".vectors_ram" start="$(RAM_START)" address_symbol="__app_ram_start__"/>
+    <ProgramSection alignment="4" keep="Yes" load="No" name=".nrf_sections_run" address_symbol="__start_nrf_sections_run" />
+    <ProgramSection alignment="4" keep="Yes" load="No" name=".log_dynamic_data_run" address_symbol="__start_log_dynamic_data" end_symbol="__stop_log_dynamic_data" />
+    <ProgramSection alignment="4" keep="Yes" load="No" name=".log_filter_data_run" address_symbol="__start_log_filter_data" end_symbol="__stop_log_filter_data" />
+    <ProgramSection alignment="4" keep="Yes" load="No" name=".fs_data_run" address_symbol="__start_fs_data" end_symbol="__stop_fs_data" />
+    <ProgramSection alignment="4" keep="Yes" load="No" name=".nrf_sections_run_end" address_symbol="__end_nrf_sections_run" />
+    <ProgramSection alignment="4" load="No" name=".fast_run" />
+    <ProgramSection alignment="4" load="No" name=".data_run" />
+    <ProgramSection alignment="4" load="No" name=".tdata_run" />
+    <ProgramSection alignment="4" load="No" name=".bss" />
+    <ProgramSection alignment="4" load="No" name=".tbss" />
+    <ProgramSection alignment="4" load="No" name=".non_init" />
+    <ProgramSection alignment="4" size="__HEAPSIZE__" load="No" name=".heap" />
+    <ProgramSection alignment="8" size="__STACKSIZE__" load="No" place_from_segment_end="Yes" name=".stack"  address_symbol="__StackLimit" end_symbol="__StackTop"/>
+    <ProgramSection alignment="8" size="__STACKSIZE_PROCESS__" load="No" name=".stack_process" />
+  </MemorySegment>
+  <MemorySegment name="uicr_bootloader_start_address" start="0x10001014" size="0x4">
+    <ProgramSection alignment="4" keep="Yes" load="Yes" name=".uicr_bootloader_start_address" address_symbol="__start_uicr_bootloader_start_address" end_symbol="__stop_uicr_bootloader_start_address" start = "0x10001014" size="0x4" />
+  </MemorySegment>
+  <MemorySegment name="uicr_mbr_params_page" start="0x10001018" size="0x4">
+    <ProgramSection alignment="4" keep="Yes" load="Yes" name=".uicr_mbr_params_page" address_symbol="__start_uicr_mbr_params_page" end_symbol="__stop_uicr_mbr_params_page" start = "0x10001018" size="0x4" />
+  </MemorySegment>
+</Root>

Різницю між файлами не показано, бо вона завелика
+ 17 - 0
central_and_peripheral_secure_bootloader_debug/ses/secure_bootloader_ble_s132_pca10040_debug.emProject


+ 7 - 0
central_and_peripheral_secure_bootloader_debug/ses/secure_bootloader_ble_s132_pca10040_debug.emSession

@@ -0,0 +1,7 @@
+<!DOCTYPE CrossStudio_Session_File>
+<session>
+  <ARMCrossStudioWindow activeProject="secure_bootloader_ble_s132_pca10040_debug" buildConfiguration="Release"/>
+  <Files>
+    <SessionOpenFile codecName="Default" debugPath="../../main.c" left="0" name="unnamed" path="../../main.c" selected="1" top="0" useBinaryEdit="0" useTextEdit="1" x="0" y="0"/>
+  </Files>
+</session>

BIN
dfu_readme/DFU[2.2.2].apk


BIN
dfu_readme/app_dfu_package.zip


BIN
dfu_readme/app_dfu_package20221014V1.4.53.zip


+ 8 - 8
dfu_readme/app_setting.hex

@@ -1,6 +1,6 @@
 :020000040007F3
-:10E00000EECD5A2C020000000100000001000000CB
-:10E01000000000000000000068190200AEB5417762
+:10E00000F0FC7E080200000001000000010000009A
+:10E010000000000000000000881602000F22E13F0F
 :10E0200001000000000000000000000000000000EF
 :10E0300000000000000000000000000000000000E0
 :10E0400000000000000000000000000000000000D0
@@ -36,12 +36,12 @@
 :10E2200000000000000000000000000000000000EE
 :10E2300000000000000000000000000000000000DE
 :10E2400000000000000000000000000000000000CE
-:10E25000000000000000000000000000DEDFA4BAA3
+:10E250000000000000000000000000007E6AD608F8
 :10E2600000000000000000000000000000000000AE
 :10E27000000000000000000000000000000000009E
 :10E28000000000000000000000000000000000008E
 :10E29000000000000000000000000000000000007E
-:10E2A0000001AEB541770000000000000000000052
+:10E2A00000010F22E13F000000000000000000001C
 :10E2B000000000000000000000000000000000005E
 :10E2C000000000000000000000000000000000004E
 :10E2D000000000000000000000000000000000003E
@@ -50,8 +50,8 @@
 :10E30000000000000000000000000000000000000D
 :10E3100000000000000000000000000000000000FD
 :04E32000000000FFFA
-:10F00000EECD5A2C020000000100000001000000BB
-:10F01000000000000000000068190200AEB5417752
+:10F00000F0FC7E080200000001000000010000008A
+:10F010000000000000000000881602000F22E13FFF
 :10F0200001000000000000000000000000000000DF
 :10F0300000000000000000000000000000000000D0
 :10F0400000000000000000000000000000000000C0
@@ -87,12 +87,12 @@
 :10F2200000000000000000000000000000000000DE
 :10F2300000000000000000000000000000000000CE
 :10F2400000000000000000000000000000000000BE
-:10F25000000000000000000000000000DEDFA4BA93
+:10F250000000000000000000000000007E6AD608E8
 :10F26000000000000000000000000000000000009E
 :10F27000000000000000000000000000000000008E
 :10F28000000000000000000000000000000000007E
 :10F29000000000000000000000000000000000006E
-:10F2A0000001AEB541770000000000000000000042
+:10F2A00000010F22E13F000000000000000000000C
 :10F2B000000000000000000000000000000000004E
 :10F2C000000000000000000000000000000000003E
 :10F2D000000000000000000000000000000000002E

Різницю між файлами не показано, бо вона завелика
+ 1593 - 1593
dfu_readme/app_setting_sd_boot.hex


+ 8 - 8
dfu_readme/setting_sd_boot.hex

@@ -11063,8 +11063,8 @@
 :10DF600000000000000000000000000000000000B1
 :10DF7000000000000090D00300000000000000003E
 :0CDF800085A6070000100000000008004B
-:10E00000EECD5A2C020000000100000001000000CB
-:10E01000000000000000000068190200AEB5417762
+:10E00000F0FC7E080200000001000000010000009A
+:10E010000000000000000000881602000F22E13F0F
 :10E0200001000000000000000000000000000000EF
 :10E0300000000000000000000000000000000000E0
 :10E0400000000000000000000000000000000000D0
@@ -11100,12 +11100,12 @@
 :10E2200000000000000000000000000000000000EE
 :10E2300000000000000000000000000000000000DE
 :10E2400000000000000000000000000000000000CE
-:10E25000000000000000000000000000DEDFA4BAA3
+:10E250000000000000000000000000007E6AD608F8
 :10E2600000000000000000000000000000000000AE
 :10E27000000000000000000000000000000000009E
 :10E28000000000000000000000000000000000008E
 :10E29000000000000000000000000000000000007E
-:10E2A0000001AEB541770000000000000000000052
+:10E2A00000010F22E13F000000000000000000001C
 :10E2B000000000000000000000000000000000005E
 :10E2C000000000000000000000000000000000004E
 :10E2D000000000000000000000000000000000003E
@@ -11114,8 +11114,8 @@
 :10E30000000000000000000000000000000000000D
 :10E3100000000000000000000000000000000000FD
 :04E32000000000FFFA
-:10F00000EECD5A2C020000000100000001000000BB
-:10F01000000000000000000068190200AEB5417752
+:10F00000F0FC7E080200000001000000010000008A
+:10F010000000000000000000881602000F22E13FFF
 :10F0200001000000000000000000000000000000DF
 :10F0300000000000000000000000000000000000D0
 :10F0400000000000000000000000000000000000C0
@@ -11151,12 +11151,12 @@
 :10F2200000000000000000000000000000000000DE
 :10F2300000000000000000000000000000000000CE
 :10F2400000000000000000000000000000000000BE
-:10F25000000000000000000000000000DEDFA4BA93
+:10F250000000000000000000000000007E6AD608E8
 :10F26000000000000000000000000000000000009E
 :10F27000000000000000000000000000000000008E
 :10F28000000000000000000000000000000000007E
 :10F29000000000000000000000000000000000006E
-:10F2A0000001AEB541770000000000000000000042
+:10F2A00000010F22E13F000000000000000000000C
 :10F2B000000000000000000000000000000000004E
 :10F2C000000000000000000000000000000000003E
 :10F2D000000000000000000000000000000000002E

+ 104 - 0
drivers/drv_trigger.c

@@ -0,0 +1,104 @@
+#include "drv_trigger.h"
+#include "bsp_time.h"
+#include "selfcheck.h"
+
+static volatile uint32_t trg = 0;
+
+
+
+static uint16_t dat = 0;
+static uint8_t dat_dex = 15;
+
+void drv_TrigNBit(uint8_t cnt,uint8_t flag)
+{
+	int16_t _cnt = cnt-10;
+	while(_cnt>0){
+		_cnt = _cnt-30;
+		if(flag>0){
+			dat |= (0x0001<<dat_dex);
+		}else{
+			dat &= ~(0x0001<<dat_dex);
+		}
+		if(dat_dex>0) dat_dex--;
+	}
+//	SEGGER_RTT_printf(0,"dat=%04X(%d)\n",dat,dat_dex);
+}
+
+uint32_t drv_GetChargeTrig(void){
+	return trg;
+}
+
+void drv_TrigProcess(void* t)
+{
+	
+	static uint8_t state = 0;
+	static uint8_t cnt[2];
+	static uint32_t trg_b = 0;
+	static uint32_t dt_b = 0;
+	uint32_t dt = *((uint32_t*)t);
+	
+	trg = nrf_gpio_pin_read(PIN_CHARGING);
+	
+	if(dt - dt_b > 1)
+	{
+//		SEGGER_RTT_printf(0,"-------------------------------------------->\r\n");
+	}
+	
+	
+	if(dt-dt_b==1){
+
+	if(trg==0&&trg_b==0){ //低
+		cnt[0]++;
+	}else if(trg>0&&trg_b>0){ //高
+		cnt[1]++;
+	}else if(trg==0&&trg_b>0){ //高变低
+//		SEGGER_RTT_printf(0,"H->L:cnt[0]=%d,cnt[1]=%d \n",cnt[0],cnt[1]);
+		
+		if(cnt[1]>37&&cnt[1]<53 && state==2){ //结束
+			state = 0;
+			if(cnt[0]>50) drv_TrigNBit(cnt[0]-50,0);
+			
+			uint8_t trg_dat = (uint8_t)(dat>>8);
+			uint8_t trg_dat_f = ~((uint8_t)(dat>>0));
+			
+			//调用触发函数
+			if(trg_dat>0&&trg_dat<4&&trg_dat==trg_dat_f){
+				selfcheck_trigger_set_order(trg_dat);
+//				SEGGER_RTT_printf(0,"******** selfcheck_trigger_set_order **********\n");
+			}
+//			SEGGER_RTT_printf(0,"trg_dat=%02X,trg_dat_f=%02X \n\n",trg_dat,trg_dat_f);
+//			SEGGER_RTT_printf(0,"******** stop **********\n");
+		}
+		
+		if(state==2){ //接收数据
+			drv_TrigNBit(cnt[0],0);
+			drv_TrigNBit(cnt[1],1);
+//			SEGGER_RTT_printf(0,"******** data **********\n");
+		}
+		
+		if(cnt[0]>37&&cnt[0]<53&&cnt[1]>38&&cnt[1]<53 && state==1){ //开始
+			state = 2;
+			dat = 0;
+			dat_dex = 15;
+//			SEGGER_RTT_printf(0,"******** start **********\n");
+		}
+		
+		if(cnt[0]>90&&cnt[0]<110&&cnt[1]>10&&cnt[1]<180){ //准备开始
+			state = 1;
+//			SEGGER_RTT_printf(0,"******** ready **********\n");
+		}
+		
+		cnt[0] = 0;cnt[1] = 0;
+	}
+}
+	trg_b = trg;
+	dt_b = dt;
+}
+
+void drv_TriggerInit(void)
+{
+	nrf_gpio_cfg_input(PIN_CHARGING,NRF_GPIO_PIN_NOPULL);
+	
+	TIME_Regist(drv_TrigProcess);
+}
+

+ 17 - 0
drivers/drv_trigger.h

@@ -0,0 +1,17 @@
+#ifndef __drv_trigger_h__
+#define __drv_trigger_h__
+
+#include <stdbool.h>
+#include <stdint.h>
+#include <string.h>
+#include "sdk_common.h"
+#include "SEGGER_RTT.h"
+#include "usr_config.h"
+#include "nrf_gpio.h"
+#include "system.h"
+
+
+void drv_TriggerInit(void);
+uint32_t drv_GetChargeTrig(void);
+
+#endif

+ 1 - 1
hal/fml_adc.c

@@ -101,7 +101,7 @@ int	fml_adc_Init(void)
 
 	ADC_SetPinChannel(PIN_ADC_CHARGMEASURE, PIN_ADC_CHARGMEASURE_CHANNEL,NRF_GPIO_PIN_NOPULL);
 	ADC_SetPinChannel(PIN_ADC_BAT_IN, PIN_ADC_BAT_CHANNEL,NRF_GPIO_PIN_NOPULL);
-//	ADC_SetPinChannel(PIN_CHARGING, PIN_CHARGING_CHANNEL,NRF_GPIO_PIN_NOPULL);
+
 	Wakeup_Regist(cb_adcWakeup);
 	Sleep_Regist(cb_adcSleep);
 	

+ 3 - 1
hal/hal_battery/hal_battery_NoPowerEnPin.c

@@ -7,6 +7,8 @@
 #include "hal_charge.h"
 #include "fml_adc.h"
 #include "app_chargerpin_conn_detect.h"
+#include "drv_trigger.h"
+
 #define PRINTBLE 0
 
 #define IIDUAN 1
@@ -90,7 +92,7 @@ void cb_init(void)
 //返回5V信号,有5V的话返回1,没有的话返回0
 static char charge_in(void)
 {
-    if (nrf_gpio_pin_read(PIN_CHARGING))
+    if (drv_GetChargeTrig())
     {
         return 1;
     }

+ 5 - 41
hal/hal_charge.c

@@ -12,7 +12,8 @@
 #include "app_pair_chargerpin.h"
 #include "hal_charge.h"
 #include "fml_adc.h"
-#include "app_one_wire.h"
+#include "drv_trigger.h"
+
 /************************ 函数声明 ***********************************/
 
 /************************ 变量 ***********************************/
@@ -63,42 +64,6 @@ void cb_BLE_Host_R_CHARGE(void* handle)
 //	DEBUG_LOG("cb_BLE_Host_R_CHARGE:%d,%d,%d\n",target->pDat[0],target->pDat[1],target->datLen);
 }
 
-extern	void selfcheck_trigger_callback(char order);
-unsigned char recbuf[4];
-static char selfcheck_trigger_ok=0;
-static unsigned int ms_cnt=0;
-__IO char tsfd=0;
-void wait_times(void)
-{
-		ms_cnt++;
-		if(tsfd)
-		{
-			tsfd=0;
-			selfcheck_trigger_callback((char)recbuf[0]);	
-		}
-		if(ms_cnt<1000)return;
-//		SEGGER_RTT_printf(0,"wait_times out...\n");
-		Process_Stop(wait_times);
-		one_byte_receive_uninit();
-		ms_cnt=0;selfcheck_trigger_ok=0;
-//		fml_adc_set_pin_channel(PIN_CHARGING, PIN_CHARGING_CHANNEL, NRF_GPIO_PIN_NOPULL);
-}
-void Event_self_check(unsigned char *buf,int length)
-{
-	tsfd=1;
-//	SEGGER_RTT_printf(0,"Event_self_check out... %x\n",buf[0]);
-}
-
-void open_one_shel(void)
-{
-	if(selfcheck_trigger_ok)return;
-	selfcheck_trigger_ok=1;
-	one_byte_receive_init(recbuf,2,Event_self_check);
-//	SEGGER_RTT_printf(0,"open_one_shel in...\n");
-	Process_Start(1, "wait_times", wait_times);
-	Process_SetHoldOn(wait_times, 1);
-}
-
 
 static void hal_charge_Process(void)
 {
@@ -108,7 +73,7 @@ static void hal_charge_Process(void)
 	if(1 == pair_state)return;//配对不检测充电
 	#else
 	
-	uint32_t ch = nrf_gpio_pin_read(PIN_CHARGING);
+	uint32_t ch = drv_GetChargeTrig();
 	if(!ch){	//没充电	
 	#endif
 		if(hal_charge_state!=BLE_CHARGE_PULLOUT){ DEBUG_LOG("charge out...\n");
@@ -119,7 +84,7 @@ static void hal_charge_Process(void)
 		return;
 	}
 	
-	open_one_shel();
+//	open_one_shel();
 	if(GetBatteryPersent() >=100){
 			if(hal_charge_state!=BLE_CHARGE_DONE){ DEBUG_LOG("charge done:...\n");
 				hal_charge_state = BLE_CHARGE_DONE;
@@ -137,8 +102,7 @@ static void hal_charge_Process(void)
 }
 
 void hal_charge_init(void)
-{
-	nrf_gpio_cfg_input(PIN_CHARGING,NRF_GPIO_PIN_NOPULL); 
+{ 
 	BLE_Client_Rx_Regist(BLE_CHARGE,cb_BLE_Client_R_CHARGE);
 	BLE_Host_Rx_Regist(BLE_CHARGE,cb_BLE_Host_R_CHARGE);
 	Process_Start(1000,"charge",hal_charge_Process);

Різницю між файлами не показано, бо вона завелика
+ 0 - 2
pca10040/s132/arm5_no_packs/_build/ble_app_uart_c_pca10040_s132_Shoes_FW_APP.dep


BIN
pca10040/s132/arm5_no_packs/_build/nrf52832_xxaa.axf


+ 0 - 120
pca10040/s132/arm5_no_packs/_build/nrf52832_xxaa.build_log.htm

@@ -1,120 +0,0 @@
-<html>
-<body>
-<pre>
-<h1>µVision Build Log</h1>
-<h2>Tool Versions:</h2>
-IDE-Version: ¦ÌVision V5.30.0.0
-Copyright (C) 2020 ARM Ltd and ARM Germany GmbH. All rights reserved.
-License Information: Ou Administrator, 11, LIC=EXJT4-FD1MZ-JJG6S-L29G4-S14VJ-CPP65
- 
-Tool Versions:
-Toolchain:       MDK-ARM Plus  Version: 5.30.0.0
-Toolchain Path:  C:\Keil_v5\ARM\ARMCC\Bin
-C Compiler:      Armcc.exe V5.06 update 6 (build 750)
-Assembler:       Armasm.exe V5.06 update 6 (build 750)
-Linker/Locator:  ArmLink.exe V5.06 update 6 (build 750)
-Library Manager: ArmAr.exe V5.06 update 6 (build 750)
-Hex Converter:   FromElf.exe V5.06 update 6 (build 750)
-CPU DLL:         
-Dialog DLL:      
-Target DLL:      Segger\JL2CM3.dll V2.99.38.0
-Dialog DLL:      TCM.DLL V1.42.0.0
- 
-<h2>Project:</h2>
-D:\Git_Project\shoes\smart_shoes\nRF5_SDK_17.0.0_9d13099\examples\Shoes1.4\shoe_mcu\pca10040\s132\arm5_no_packs\ble_app_uart_c_pca10040_s132.uvprojx
-Project File Date:  10/11/2022
-
-<h2>Output:</h2>
-*** Using Compiler 'V5.06 update 6 (build 750)', folder: 'C:\Keil_v5\ARM\ARMCC\Bin'
-Build target 'Shoes_FW_APP'
-compiling system.c...
-compiling app_client_step.c...
-compiling exception.c...
-compiling app_host.c...
-compiling app_overturn.c...
-compiling usr.c...
-compiling selfcheck.c...
-compiling app_step.c...
-compiling app_switchimu.c...
-compiling app_game.c...
-compiling app_client.c...
-compiling app_ota.c...
-compiling app_losspack.c...
-compiling app_connect_manage.c...
-compiling app_math.c...
-compiling app_flash.c...
-compiling app_power.c...
-compiling app_Authen.c...
-compiling app_data_transfer.c...
-compiling app_charge.c...
-compiling app_detectIsHost.c...
-compiling app_safe.c...
-..\..\..\app\app_safe.c(132): warning:  #177-D: variable "cnt"  was declared but never referenced
-  	 static uint8_t cnt =0;
-..\..\..\app\app_safe.c: 1 warning, 0 errors
-compiling hal_mt.c...
-compiling bll_imu.c...
-compiling app_one_wire.c...
-compiling hal_wearshoes.c...
-compiling fml_imu.c...
-compiling app_pair.c...
-compiling hal_battery_NoPowerEnPin.c...
-compiling hal_qma.c...
-compiling bsp_wdt.c...
-compiling bsp_pwm.c...
-compiling bsp_time.c...
-compiling fml_adc.c...
-compiling bsp_adc.c...
-..\..\..\bsp\bsp_adc.c(89): warning:  #550-D: variable "ret"  was set but never used
-  	int 				ret = 0;
-..\..\..\bsp\bsp_adc.c: 1 warning, 0 errors
-compiling hal_charge.c...
-compiling bsp_flash.c...
-compiling drv_qmc6310_v2.c...
-compiling bsp_spi.c...
-compiling drv_lsm6ds3tr_c.c...
-compiling process_result.c...
-compiling slave.c...
-compiling host.c...
-..\..\..\ble_cfg\host.c(447): warning:  #177-D: variable "p_connected_evt"  was declared but never referenced
-  		ble_gap_evt_connected_t const * p_connected_evt = &p_gap_evt->params.connected;
-..\..\..\ble_cfg\host.c: 1 warning, 0 errors
-compiling ble_dfu_unbonded.c...
-compiling detect_zero_vel.c...
-linking...
-Program Size: Code=134016 RO-data=3184 RW-data=3388 ZI-data=27208  
-FromELF: creating hex file...
-".\_build\nrf52832_xxaa.axf" - 0 Error(s), 3 Warning(s).
-
-<h2>Software Packages used:</h2>
-
-Package Vendor: ARM
-                http://www.keil.com/pack/ARM.CMSIS.5.6.0.pack
-                ARM.CMSIS.5.6.0
-                CMSIS (Cortex Microcontroller Software Interface Standard)
-   * Component: CORE Version: 5.3.0
-
-Package Vendor: NordicSemiconductor
-                http://developer.nordicsemi.com/nRF5_SDK/pieces/nRF_DeviceFamilyPack/NordicSemiconductor.nRF_DeviceFamilyPack.8.32.1.pack
-                NordicSemiconductor.nRF_DeviceFamilyPack.8.32.1
-                Nordic Semiconductor nRF ARM devices Device Family Pack with BSD license.
-   * Component: Startup Version: 8.32.1
-
-<h2>Collection of Component include folders:</h2>
-  .\RTE\_Shoes_FW_APP
-  C:\Users\Administrator\AppData\Local\Arm\Packs\ARM\CMSIS\5.6.0\CMSIS\Core\Include
-  C:\Users\Administrator\AppData\Local\Arm\Packs\NordicSemiconductor\nRF_DeviceFamilyPack\8.32.1\Device\Include
-
-<h2>Collection of Component Files used:</h2>
-
-   * Component: ARM::CMSIS:CORE:5.3.0
-
-   * Component: NordicSemiconductor::Device:Startup:8.32.1
-      Include file:  Device\Include\system_nrf.h
-      Source file:   Device\Source\arm\arm_startup_nrf52.s
-      Include file:  Device\Include\system_nrf52.h
-      Source file:   Device\Source\system_nrf52.c
-Build Time Elapsed:  00:00:21
-</pre>
-</body>
-</html>

Різницю між файлами не показано, бо вона завелика
+ 1593 - 1593
pca10040/s132/arm5_no_packs/_build/nrf52832_xxaa.hex


+ 0 - 10813
pca10040/s132/arm5_no_packs/_build/nrf52832_xxaa.htm

@@ -1,10813 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html><head>
-<title>Static Call Graph - [.\_build\nrf52832_xxaa.axf]</title></head>
-<body><HR>
-<H1>Static Call Graph for image .\_build\nrf52832_xxaa.axf</H1><HR>
-<BR><P>#&#060CALLGRAPH&#062# ARM Linker, 5060750: Last Updated: Thu Oct 13 11:23:56 2022
-<BR><P>
-<H3>Maximum Stack Usage =       5240 bytes + Unknown(Cycles, Untraceable Function Pointers)</H3><H3>
-Call chain for Maximum Stack Depth:</H3>
-nrf_sdh_ble_evts_poll &rArr; app_error_handler &rArr; app_error_fault_handler &rArr; Flash_SaveLog &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-<P>
-<H3>
-Mutually Recursive functions
-</H3> <LI><a href="#[6]">NMI_Handler</a>&nbsp;&nbsp;&nbsp;&rArr;&nbsp;&nbsp;&nbsp;<a href="#[6]">NMI_Handler</a><BR>
- <LI><a href="#[8]">MemoryManagement_Handler</a>&nbsp;&nbsp;&nbsp;&rArr;&nbsp;&nbsp;&nbsp;<a href="#[8]">MemoryManagement_Handler</a><BR>
- <LI><a href="#[9]">BusFault_Handler</a>&nbsp;&nbsp;&nbsp;&rArr;&nbsp;&nbsp;&nbsp;<a href="#[9]">BusFault_Handler</a><BR>
- <LI><a href="#[a]">UsageFault_Handler</a>&nbsp;&nbsp;&nbsp;&rArr;&nbsp;&nbsp;&nbsp;<a href="#[a]">UsageFault_Handler</a><BR>
- <LI><a href="#[b]">SVC_Handler</a>&nbsp;&nbsp;&nbsp;&rArr;&nbsp;&nbsp;&nbsp;<a href="#[b]">SVC_Handler</a><BR>
- <LI><a href="#[c]">DebugMon_Handler</a>&nbsp;&nbsp;&nbsp;&rArr;&nbsp;&nbsp;&nbsp;<a href="#[c]">DebugMon_Handler</a><BR>
- <LI><a href="#[d]">PendSV_Handler</a>&nbsp;&nbsp;&nbsp;&rArr;&nbsp;&nbsp;&nbsp;<a href="#[d]">PendSV_Handler</a><BR>
- <LI><a href="#[e]">SysTick_Handler</a>&nbsp;&nbsp;&nbsp;&rArr;&nbsp;&nbsp;&nbsp;<a href="#[e]">SysTick_Handler</a><BR>
- <LI><a href="#[1e]">CCM_AAR_IRQHandler</a>&nbsp;&nbsp;&nbsp;&rArr;&nbsp;&nbsp;&nbsp;<a href="#[1e]">CCM_AAR_IRQHandler</a><BR>
- <LI><a href="#[d2]">__asm___12_nrf_atfifo_c_51f461e1__nrf_atfifo_wspace_close</a>&nbsp;&nbsp;&nbsp;&rArr;&nbsp;&nbsp;&nbsp;<a href="#[d2]">__asm___12_nrf_atfifo_c_51f461e1__nrf_atfifo_wspace_close</a><BR>
- <LI><a href="#[d3]">__asm___12_nrf_atfifo_c_51f461e1__nrf_atfifo_rspace_close</a>&nbsp;&nbsp;&nbsp;&rArr;&nbsp;&nbsp;&nbsp;<a href="#[d3]">__asm___12_nrf_atfifo_c_51f461e1__nrf_atfifo_rspace_close</a><BR>
-</UL>
-<P>
-<H3>
-Function Pointers
-</H3><UL>
- <LI><a href="#[b5]">BLE_Client_Push</a> from hal_ble_client.o(i.BLE_Client_Push) referenced from usr.o(i.usr1_Init)
- <LI><a href="#[38]">BLE_Client_Rx_Process</a> from hal_ble_client.o(i.BLE_Client_Rx_Process) referenced from hal_ble_client.o(i.BLE_Client_Initialize)
- <LI><a href="#[39]">BLE_Client_Tx_Process</a> from hal_ble_client.o(i.BLE_Client_Tx_Process) referenced from hal_ble_client.o(i.BLE_Client_Initialize)
- <LI><a href="#[39]">BLE_Client_Tx_Process</a> from hal_ble_client.o(i.BLE_Client_Tx_Process) referenced from hal_ble_client.o(i.BLE_Client_Tx_Process)
- <LI><a href="#[b6]">BLE_Host_Push</a> from hal_ble_host.o(i.BLE_Host_Push) referenced from usr.o(i.usr1_Init)
- <LI><a href="#[3a]">BLE_Host_Rx_Process</a> from hal_ble_host.o(i.BLE_Host_Rx_Process) referenced from hal_ble_host.o(i.BLE_Host_Initialize)
- <LI><a href="#[3b]">BLE_Host_Tx_Process</a> from hal_ble_host.o(i.BLE_Host_Tx_Process) referenced from hal_ble_host.o(i.BLE_Host_Initialize)
- <LI><a href="#[3b]">BLE_Host_Tx_Process</a> from hal_ble_host.o(i.BLE_Host_Tx_Process) referenced from hal_ble_host.o(i.BLE_Host_Tx_Process)
- <LI><a href="#[9]">BusFault_Handler</a> from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- <LI><a href="#[1e]">CCM_AAR_IRQHandler</a> from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- <LI><a href="#[22]">COMP_LPCOMP_IRQHandler</a> from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- <LI><a href="#[c]">DebugMon_Handler</a> from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- <LI><a href="#[61]">DetectLr_notify_cb</a> from app_detectishost.o(i.DetectLr_notify_cb) referenced from app_detectishost.o(i.app_detect_Init)
- <LI><a href="#[1d]">ECB_IRQHandler</a> from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- <LI><a href="#[a7]">Event_self_check</a> from hal_charge.o(i.Event_self_check) referenced from hal_charge.o(i.open_one_shel)
- <LI><a href="#[3c]">Exception_Led_Process</a> from exception.o(i.Exception_Led_Process) referenced from exception.o(i.Except_Led_Close)
- <LI><a href="#[3c]">Exception_Led_Process</a> from exception.o(i.Exception_Led_Process) referenced from exception.o(i.Except_Led_OpenOnce)
- <LI><a href="#[3c]">Exception_Led_Process</a> from exception.o(i.Exception_Led_Process) referenced from exception.o(i.Exception_Init)
- <LI><a href="#[3d]">Exception_UnkownReset_Info_Send_Process</a> from exception.o(i.Exception_UnkownReset_Info_Send_Process) referenced from exception.o(i.Exception_Init)
- <LI><a href="#[33]">FPU_IRQHandler</a> from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- <LI><a href="#[15]">GPIOTE_IRQHandler</a> from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- <LI><a href="#[7]">HardFault_Handler</a> from exception.o(i.HardFault_Handler) referenced from arm_startup_nrf52.o(RESET)
- <LI><a href="#[32]">I2S_IRQHandler</a> from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- <LI><a href="#[40]">LED_Process</a> from hal_led_ws2812.o(i.LED_Process) referenced from hal_led_ws2812.o(i.LED_Init)
- <LI><a href="#[67]">LossPack_process</a> from app_losspack.o(i.LossPack_process) referenced from app_losspack.o(i.app_losspack_Init)
- <LI><a href="#[43]">MT_TimerCounter</a> from hal_mt.o(i.MT_TimerCounter) referenced from hal_mt.o(i.MT_Init)
- <LI><a href="#[44]">MT_process</a> from hal_mt.o(i.MT_process) referenced from hal_mt.o(i.MT_Init)
- <LI><a href="#[44]">MT_process</a> from hal_mt.o(i.MT_process) referenced from hal_mt.o(i.MT_Run)
- <LI><a href="#[44]">MT_process</a> from hal_mt.o(i.MT_process) referenced from hal_mt.o(i.MT_TimerCounter)
- <LI><a href="#[2d]">MWU_IRQHandler</a> from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- <LI><a href="#[8]">MemoryManagement_Handler</a> from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- <LI><a href="#[14]">NFCT_IRQHandler</a> from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- <LI><a href="#[6]">NMI_Handler</a> from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- <LI><a href="#[2c]">PDM_IRQHandler</a> from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- <LI><a href="#[f]">POWER_CLOCK_IRQHandler</a> from nrfx_clock.o(i.POWER_CLOCK_IRQHandler) referenced from arm_startup_nrf52.o(RESET)
- <LI><a href="#[2b]">PWM0_IRQHandler</a> from nrfx_pwm.o(i.PWM0_IRQHandler) referenced from arm_startup_nrf52.o(RESET)
- <LI><a href="#[2e]">PWM1_IRQHandler</a> from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- <LI><a href="#[2f]">PWM2_IRQHandler</a> from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- <LI><a href="#[46]">PWR_Process</a> from app_power.o(i.PWR_Process) referenced from app_power.o(i.PWR_Init)
- <LI><a href="#[73]">Pair_adv_cb</a> from app_pair.o(i.Pair_adv_cb) referenced from app_pair.o(i.app_pair_Right_Process)
- <LI><a href="#[d]">PendSV_Handler</a> from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- <LI><a href="#[21]">QDEC_IRQHandler</a> from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- <LI><a href="#[10]">RADIO_IRQHandler</a> from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- <LI><a href="#[1c]">RNG_IRQHandler</a> from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- <LI><a href="#[1a]">RTC0_IRQHandler</a> from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- <LI><a href="#[20]">RTC1_IRQHandler</a> from drv_rtc.o(i.RTC1_IRQHandler) referenced from arm_startup_nrf52.o(RESET)
- <LI><a href="#[31]">RTC2_IRQHandler</a> from nrfx_rtc.o(i.RTC2_IRQHandler) referenced from arm_startup_nrf52.o(RESET)
- <LI><a href="#[5]">Reset_Handler</a> from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- <LI><a href="#[16]">SAADC_IRQHandler</a> from nrfx_saadc.o(i.SAADC_IRQHandler) referenced from arm_startup_nrf52.o(RESET)
- <LI><a href="#[12]">SPIM0_SPIS0_TWIM0_TWIS0_SPI0_TWI0_IRQHandler</a> from nrfx_spim.o(i.SPIM0_SPIS0_TWIM0_TWIS0_SPI0_TWI0_IRQHandler) referenced from nrfx_spim.o(.constdata)
- <LI><a href="#[12]">SPIM0_SPIS0_TWIM0_TWIS0_SPI0_TWI0_IRQHandler</a> from nrfx_spim.o(i.SPIM0_SPIS0_TWIM0_TWIS0_SPI0_TWI0_IRQHandler) referenced from arm_startup_nrf52.o(RESET)
- <LI><a href="#[13]">SPIM1_SPIS1_TWIM1_TWIS1_SPI1_TWI1_IRQHandler</a> from nrfx_spim.o(i.SPIM1_SPIS1_TWIM1_TWIS1_SPI1_TWI1_IRQHandler) referenced from nrfx_spim.o(.constdata)
- <LI><a href="#[13]">SPIM1_SPIS1_TWIM1_TWIS1_SPI1_TWI1_IRQHandler</a> from nrfx_spim.o(i.SPIM1_SPIS1_TWIM1_TWIS1_SPI1_TWI1_IRQHandler) referenced from arm_startup_nrf52.o(RESET)
- <LI><a href="#[30]">SPIM2_SPIS2_SPI2_IRQHandler</a> from nrfx_spim.o(i.SPIM2_SPIS2_SPI2_IRQHandler) referenced from nrfx_spim.o(.constdata)
- <LI><a href="#[30]">SPIM2_SPIS2_SPI2_IRQHandler</a> from nrfx_spim.o(i.SPIM2_SPIS2_SPI2_IRQHandler) referenced from arm_startup_nrf52.o(RESET)
- <LI><a href="#[b]">SVC_Handler</a> from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- <LI><a href="#[23]">SWI0_EGU0_IRQHandler</a> from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- <LI><a href="#[24]">SWI1_EGU1_IRQHandler</a> from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- <LI><a href="#[25]">SWI2_EGU2_IRQHandler</a> from nrf_sdh.o(i.SWI2_EGU2_IRQHandler) referenced from arm_startup_nrf52.o(RESET)
- <LI><a href="#[26]">SWI3_EGU3_IRQHandler</a> from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- <LI><a href="#[27]">SWI4_EGU4_IRQHandler</a> from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- <LI><a href="#[28]">SWI5_EGU5_IRQHandler</a> from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- <LI><a href="#[e]">SysTick_Handler</a> from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- <LI><a href="#[35]">SystemInit</a> from system_nrf52.o(i.SystemInit) referenced from arm_startup_nrf52.o(.text)
- <LI><a href="#[1b]">TEMP_IRQHandler</a> from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- <LI><a href="#[17]">TIMER0_IRQHandler</a> from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- <LI><a href="#[18]">TIMER1_IRQHandler</a> from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- <LI><a href="#[19]">TIMER2_IRQHandler</a> from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- <LI><a href="#[29]">TIMER3_IRQHandler</a> from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- <LI><a href="#[2a]">TIMER4_IRQHandler</a> from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- <LI><a href="#[11]">UARTE0_UART0_IRQHandler</a> from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- <LI><a href="#[a]">UsageFault_Handler</a> from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- <LI><a href="#[1f]">WDT_IRQHandler</a> from nrfx_wdt.o(i.WDT_IRQHandler) referenced from arm_startup_nrf52.o(RESET)
- <LI><a href="#[b8]">WatchDog_Process</a> from bsp_wdt.o(i.WatchDog_Process) referenced from bsp_wdt.o(i.watchdog_init)
- <LI><a href="#[36]">__main</a> from entry.o(.ARM.Collect$$$$00000000) referenced from arm_startup_nrf52.o(.text)
- <LI><a href="#[4e]">_sputc</a> from printfa.o(i._sputc) referenced from printfa.o(i.__0sprintf)
- <LI><a href="#[37]">adcCallbackFunc</a> from bsp_adc.o(i.adcCallbackFunc) referenced from bsp_adc.o(i.ADC_Init)
- <LI><a href="#[b1]">adc_callback</a> from selfcheck.o(i.adc_callback) referenced from selfcheck.o(i.selfcheck_trigger_callback)
- <LI><a href="#[50]">app_Authen_Process</a> from app_authen.o(i.app_Authen_Process) referenced from app_authen.o(i.app_Authen_Init)
- <LI><a href="#[64]">app_AutoOutgame_Process</a> from app_game.o(i.app_AutoOutgame_Process) referenced from app_game.o(i.app_game_Init)
- <LI><a href="#[76]">app_BLE_LEDON_PURPLE_process</a> from app_safe.o(i.app_BLE_LEDON_PURPLE_process) referenced from app_safe.o(i.app_BLE_LEDON_PURPLE_process)
- <LI><a href="#[76]">app_BLE_LEDON_PURPLE_process</a> from app_safe.o(i.app_BLE_LEDON_PURPLE_process) referenced from app_safe.o(i.app_safe_Init)
- <LI><a href="#[76]">app_BLE_LEDON_PURPLE_process</a> from app_safe.o(i.app_BLE_LEDON_PURPLE_process) referenced from host.o(i.ble_evt_handler)
- <LI><a href="#[76]">app_BLE_LEDON_PURPLE_process</a> from app_safe.o(i.app_BLE_LEDON_PURPLE_process) referenced from host.o(i.host_ledclose_process)
- <LI><a href="#[6d]">app_BatDispaly_Process</a> from app_overturn.o(i.app_BatDispaly_Process) referenced 3 times from app_overturn.o(i.app_BatDispaly_Process)
- <LI><a href="#[6d]">app_BatDispaly_Process</a> from app_overturn.o(i.app_BatDispaly_Process) referenced from app_overturn.o(i.app_overturn_Init)
- <LI><a href="#[52]">app_BatDispaly_Process_N</a> from app_overturn.o(i.app_BatDispaly_Process_N) referenced from app_overturn.o(i.app_BatDispaly_Process)
- <LI><a href="#[52]">app_BatDispaly_Process_N</a> from app_overturn.o(i.app_BatDispaly_Process_N) referenced 4 times from app_overturn.o(i.app_BatDispaly_Process_N)
- <LI><a href="#[52]">app_BatDispaly_Process_N</a> from app_overturn.o(i.app_BatDispaly_Process_N) referenced from app_overturn.o(i.app_overturn_Init)
- <LI><a href="#[53]">app_charge_Process</a> from app_charge.o(i.app_charge_Process) referenced from app_charge.o(i.app_charge_Init)
- <LI><a href="#[53]">app_charge_Process</a> from app_charge.o(i.app_charge_Process) referenced from app_charge.o(i.app_charge_Process)
- <LI><a href="#[55]">app_client_Process</a> from app_client.o(i.app_client_Process) referenced from app_client.o(i.app_client_Initialize)
- <LI><a href="#[56]">app_client_step_Process</a> from app_client_step.o(i.app_client_step_Process) referenced from app_client_step.o(i.app_client_step_Initialize)
- <LI><a href="#[5a]">app_connect_LED_Process</a> from app_connect_manage.o(i.app_connect_LED_Process) referenced 2 times from app_connect_manage.o(i.app_connect_LED_Process)
- <LI><a href="#[5a]">app_connect_LED_Process</a> from app_connect_manage.o(i.app_connect_LED_Process) referenced from app_connect_manage.o(i.app_connect_manage_Init)
- <LI><a href="#[5a]">app_connect_LED_Process</a> from app_connect_manage.o(i.app_connect_LED_Process) referenced from app_connect_manage.o(i.cb_BLE_BLINK_LED)
- <LI><a href="#[57]">app_connect_Process</a> from app_connect_manage.o(i.app_connect_Process) referenced 6 times from app_connect_manage.o(i.app_connect_Process)
- <LI><a href="#[57]">app_connect_Process</a> from app_connect_manage.o(i.app_connect_Process) referenced from app_connect_manage.o(i.app_connect_manage_Init)
- <LI><a href="#[5e]">app_data_transfer_Process</a> from app_data_transfer.o(i.app_data_transfer_Process) referenced from app_data_transfer.o(i.app_data_transfer_Init)
- <LI><a href="#[5e]">app_data_transfer_Process</a> from app_data_transfer.o(i.app_data_transfer_Process) referenced from app_data_transfer.o(i.app_data_transfer_Process)
- <LI><a href="#[5f]">app_data_transfer_set_SlaveData</a> from app_data_transfer.o(i.app_data_transfer_set_SlaveData) referenced from app_data_transfer.o(i.app_data_transfer_Init)
- <LI><a href="#[60]">app_detect_LR_Porcess</a> from app_detectishost.o(i.app_detect_LR_Porcess) referenced from app_detectishost.o(i.app_detect_Init)
- <LI><a href="#[60]">app_detect_LR_Porcess</a> from app_detectishost.o(i.app_detect_LR_Porcess) referenced from app_detectishost.o(i.app_detect_LR_process_stop)
- <LI><a href="#[a2]">app_error_fault_handler</a> from exception.o(i.app_error_fault_handler) referenced from nrf_sdh.o(i.nrf_sdh_enable_request)
- <LI><a href="#[62]">app_game_Process</a> from app_game.o(i.app_game_Process) referenced from app_game.o(i.app_game_Init)
- <LI><a href="#[62]">app_game_Process</a> from app_game.o(i.app_game_Process) referenced from app_game.o(i.app_game_Process)
- <LI><a href="#[62]">app_game_Process</a> from app_game.o(i.app_game_Process) referenced from app_game.o(i.cb_BLE_Client_R_GAMEMODE)
- <LI><a href="#[70]">app_led_blink_process</a> from app_pair.o(i.app_led_blink_process) referenced from app_pair.o(i.app_pair_Initialize)
- <LI><a href="#[7c]">app_math_DailyStep_Process</a> from app_step.o(i.app_math_DailyStep_Process) referenced from app_step.o(i.app_step_Init)
- <LI><a href="#[68]">app_math_Hour_process</a> from app_math.o(i.app_math_Hour_process) referenced from app_math.o(i.app_math_Init)
- <LI><a href="#[69]">app_ota_Process</a> from app_ota.o(i.app_ota_Process) referenced from app_ota.o(i.app_ota_Init)
- <LI><a href="#[69]">app_ota_Process</a> from app_ota.o(i.app_ota_Process) referenced from app_ota.o(i.app_ota_Process)
- <LI><a href="#[69]">app_ota_Process</a> from app_ota.o(i.app_ota_Process) referenced from app_ota.o(i.cb_BLE_Client_R_DFU)
- <LI><a href="#[69]">app_ota_Process</a> from app_ota.o(i.app_ota_Process) referenced from app_ota.o(i.cb_Client_BLE_DFU)
- <LI><a href="#[6c]">app_ota_clear_flash</a> from app_ota.o(i.app_ota_clear_flash) referenced from app_ota.o(i.app_ota_Init)
- <LI><a href="#[6f]">app_pair_Left_Process</a> from app_pair.o(i.app_pair_Left_Process) referenced from app_pair.o(i.app_pair_Initialize)
- <LI><a href="#[6e]">app_pair_Right_Process</a> from app_pair.o(i.app_pair_Right_Process) referenced from app_pair.o(i.app_pair_Initialize)
- <LI><a href="#[74]">app_safe_Process</a> from app_safe.o(i.app_safe_Process) referenced from app_safe.o(i.app_safe_Init)
- <LI><a href="#[bc]">app_shutdown_handler</a> from app_ota.o(i.app_shutdown_handler) referenced from app_ota.o(pwr_mgmt_data0)
- <LI><a href="#[79]">app_step_RealConnectProcess</a> from app_step.o(i.app_step_RealConnectProcess) referenced from app_step.o(i.app_step_Init)
- <LI><a href="#[77]">app_step_RealSendProcess</a> from app_step.o(i.app_step_RealSendProcess) referenced from app_step.o(i.app_step_Init)
- <LI><a href="#[be]">ble_advertising_on_ble_evt</a> from ble_advertising.o(i.ble_advertising_on_ble_evt) referenced from slave.o(sdh_ble_observers1)
- <LI><a href="#[c0]">ble_db_discovery_on_ble_evt</a> from ble_db_discovery.o(i.ble_db_discovery_on_ble_evt) referenced from host.o(sdh_ble_observers1)
- <LI><a href="#[c7]">ble_dfu_buttonless_on_ble_evt</a> from ble_dfu.o(i.ble_dfu_buttonless_on_ble_evt) referenced from ble_dfu.o(sdh_ble_observers2)
- <LI><a href="#[cb]">ble_dfu_buttonless_on_sys_evt</a> from ble_dfu_unbonded.o(i.ble_dfu_buttonless_on_sys_evt) referenced from ble_dfu_unbonded.o(sdh_soc_observers1)
- <LI><a href="#[9d]">ble_dfu_evt_handler</a> from hal_dfu.o(i.ble_dfu_evt_handler) referenced from hal_dfu.o(i.hal_dfu_server_init)
- <LI><a href="#[bd]">ble_evt_handler</a> from ble_conn_state.o(i.ble_evt_handler) referenced from ble_conn_state.o(sdh_ble_observers0)
- <LI><a href="#[c3]">ble_evt_handler</a> from ble_conn_params.o(i.ble_evt_handler) referenced from ble_conn_params.o(sdh_ble_observers1)
- <LI><a href="#[c8]">ble_evt_handler</a> from host.o(i.ble_evt_handler) referenced from host.o(sdh_ble_observers3)
- <LI><a href="#[a3]">ble_nus_c_evt_handler</a> from host.o(i.ble_nus_c_evt_handler) referenced from host.o(i.nus_c_init)
- <LI><a href="#[c6]">ble_nus_c_on_ble_evt</a> from ble_nus_c.o(i.ble_nus_c_on_ble_evt) referenced from host.o(sdh_ble_observers2)
- <LI><a href="#[c4]">ble_nus_on_ble_evt</a> from ble_nus.o(i.ble_nus_on_ble_evt) referenced from slave.o(sdh_ble_observers2)
- <LI><a href="#[84]">bll_imu_register_config_cb</a> from bll_imu.o(i.bll_imu_register_config_cb) referenced from bll_imu.o(i.bll_imu_start_config)
- <LI><a href="#[85]">bll_imu_register_data_notify_cb</a> from bll_imu.o(i.bll_imu_register_data_notify_cb) referenced from bll_imu.o(i.bll_imu_start_config)
- <LI><a href="#[81]">bsp_ble_dfu_process</a> from ble_dfu_unbonded.o(i.bsp_ble_dfu_process) referenced from ble_dfu_unbonded.o(i.ble_dfu_buttonless_on_ctrl_pt_write)
- <LI><a href="#[81]">bsp_ble_dfu_process</a> from ble_dfu_unbonded.o(i.bsp_ble_dfu_process) referenced from ble_dfu_unbonded.o(i.bsp_ble_dfu_process)
- <LI><a href="#[81]">bsp_ble_dfu_process</a> from ble_dfu_unbonded.o(i.bsp_ble_dfu_process) referenced from ble_dfu_unbonded.o(i.bsp_ble_dfu_process_Initialize)
- <LI><a href="#[47]">bsp_pwm_init_process</a> from bsp_pwm.o(i.bsp_pwm_init_process) referenced from bsp_pwm.o(i.Pwm_init)
- <LI><a href="#[47]">bsp_pwm_init_process</a> from bsp_pwm.o(i.bsp_pwm_init_process) referenced from bsp_pwm.o(i.bsp_pwm_init_process)
- <LI><a href="#[4b]">bsp_rtc_config_process</a> from bsp_time.o(i.bsp_rtc_config_process) referenced from bsp_time.o(i.TIME_Init)
- <LI><a href="#[4b]">bsp_rtc_config_process</a> from bsp_time.o(i.bsp_rtc_config_process) referenced from bsp_time.o(i.bsp_rtc_config_process)
- <LI><a href="#[4b]">bsp_rtc_config_process</a> from bsp_time.o(i.bsp_rtc_config_process) referenced from bsp_time.o(i.rtc_sleep)
- <LI><a href="#[4b]">bsp_rtc_config_process</a> from bsp_time.o(i.bsp_rtc_config_process) referenced from bsp_time.o(i.rtc_tick_handler)
- <LI><a href="#[4d]">bsp_rtc_init_process</a> from bsp_time.o(i.bsp_rtc_init_process) referenced from bsp_time.o(i.TIME_Init)
- <LI><a href="#[4d]">bsp_rtc_init_process</a> from bsp_time.o(i.bsp_rtc_init_process) referenced from bsp_time.o(i.bsp_rtc_init_process)
- <LI><a href="#[49]">bsp_spi0_init_process</a> from bsp_spi.o(i.bsp_spi0_init_process) referenced from bsp_spi.o(i.SPI0_Init)
- <LI><a href="#[49]">bsp_spi0_init_process</a> from bsp_spi.o(i.bsp_spi0_init_process) referenced from bsp_spi.o(i.bsp_spi0_init_process)
- <LI><a href="#[86]">bsp_wdt_init_process</a> from bsp_wdt.o(i.bsp_wdt_init_process) referenced from bsp_wdt.o(i.bsp_wdt_init_process)
- <LI><a href="#[86]">bsp_wdt_init_process</a> from bsp_wdt.o(i.bsp_wdt_init_process) referenced from bsp_wdt.o(i.watchdog_init)
- <LI><a href="#[5d]">cb_BLE_BLINK_LED</a> from app_connect_manage.o(i.cb_BLE_BLINK_LED) referenced from app_connect_manage.o(i.app_connect_manage_Init)
- <LI><a href="#[51]">cb_BLE_Client_BLE_AUTHEN</a> from app_authen.o(i.cb_BLE_Client_BLE_AUTHEN) referenced from app_authen.o(i.app_Authen_Init)
- <LI><a href="#[99]">cb_BLE_Client_ERR</a> from hal_battery_nopowerenpin.o(i.cb_BLE_Client_ERR) referenced from hal_battery_nopowerenpin.o(i.hal_battery_init)
- <LI><a href="#[9b]">cb_BLE_Client_R_CHARGE</a> from hal_charge.o(i.cb_BLE_Client_R_CHARGE) referenced from hal_charge.o(i.hal_charge_init)
- <LI><a href="#[6a]">cb_BLE_Client_R_DFU</a> from app_ota.o(i.cb_BLE_Client_R_DFU) referenced from app_ota.o(i.app_ota_Init)
- <LI><a href="#[63]">cb_BLE_Client_R_GAMEMODE</a> from app_game.o(i.cb_BLE_Client_R_GAMEMODE) referenced from app_game.o(i.app_game_Init)
- <LI><a href="#[78]">cb_BLE_Client_R_REALTIMESTEP</a> from app_step.o(i.cb_BLE_Client_R_REALTIMESTEP) referenced from app_step.o(i.app_step_Init)
- <LI><a href="#[45]">cb_BLE_Client_R_SHOCK</a> from hal_mt.o(i.cb_BLE_Client_R_SHOCK) referenced from hal_mt.o(i.MT_Init)
- <LI><a href="#[7d]">cb_BLE_Client_R_SWITCH_IMU</a> from app_switchimu.o(i.cb_BLE_Client_R_SWITCH_IMU) referenced from app_switchimu.o(i.app_switchimu_Init)
- <LI><a href="#[54]">cb_BLE_Client_R_UPDATE</a> from app_client.o(i.cb_BLE_Client_R_UPDATE) referenced from app_client.o(i.app_client_Initialize)
- <LI><a href="#[1]">cb_BLE_Client_T_UPDATE_STEPNUM</a> from app_client_step.o(i.cb_BLE_Client_T_UPDATE_STEPNUM) referenced 2 times from app_client_step.o(.data)
- <LI><a href="#[9c]">cb_BLE_Host_R_CHARGE</a> from hal_charge.o(i.cb_BLE_Host_R_CHARGE) referenced from hal_charge.o(i.hal_charge_init)
- <LI><a href="#[6b]">cb_BLE_Host_R_DFU</a> from app_ota.o(i.cb_BLE_Host_R_DFU) referenced from app_ota.o(i.app_ota_Init)
- <LI><a href="#[3e]">cb_BLE_Host_R_ERR</a> from exception.o(i.cb_BLE_Host_R_ERR) referenced from exception.o(i.Exception_Init)
- <LI><a href="#[7a]">cb_BLE_Host_R_REALTIMESTEP</a> from app_step.o(i.cb_BLE_Host_R_REALTIMESTEP) referenced from app_step.o(i.app_step_Init)
- <LI><a href="#[66]">cb_BLE_Host_R_UPDATE</a> from app_host.o(i.cb_BLE_Host_R_UPDATE) referenced from app_host.o(i.app_host_Initialize)
- <LI><a href="#[75]">cb_BLE_RESTSETTING</a> from app_safe.o(i.cb_BLE_RESTSETTING) referenced from app_safe.o(i.app_safe_Init)
- <LI><a href="#[5b]">cb_Client_BLE_CONNET_R</a> from app_connect_manage.o(i.cb_Client_BLE_CONNET_R) referenced from app_connect_manage.o(i.app_connect_manage_Init)
- <LI><a href="#[2]">cb_Client_BLE_DFU</a> from app_ota.o(i.cb_Client_BLE_DFU) referenced 2 times from app_ota.o(.data)
- <LI><a href="#[71]">cb_Client_BLE_PAIR</a> from app_pair.o(i.cb_Client_BLE_PAIR) referenced from app_pair.o(i.app_pair_Initialize)
- <LI><a href="#[5c]">cb_Host_BLE_CONNET_R</a> from app_connect_manage.o(i.cb_Host_BLE_CONNET_R) referenced from app_connect_manage.o(i.app_connect_manage_Init)
- <LI><a href="#[72]">cb_Host_BLE_PAIR</a> from app_pair.o(i.cb_Host_BLE_PAIR) referenced from app_pair.o(i.app_pair_Initialize)
- <LI><a href="#[59]">cb_Host_Connect</a> from app_connect_manage.o(i.cb_Host_Connect) referenced from app_connect_manage.o(i.app_connect_manage_Init)
- <LI><a href="#[41]">cb_LED_Sleep</a> from hal_led_ws2812.o(i.cb_LED_Sleep) referenced from hal_led_ws2812.o(i.LED_Init)
- <LI><a href="#[42]">cb_LED_Wakeup</a> from hal_led_ws2812.o(i.cb_LED_Wakeup) referenced from hal_led_ws2812.o(i.LED_Init)
- <LI><a href="#[58]">cb_Slave_Connect</a> from app_connect_manage.o(i.cb_Slave_Connect) referenced from app_connect_manage.o(i.app_connect_manage_Init)
- <LI><a href="#[95]">cb_adcSleep</a> from fml_adc.o(i.cb_adcSleep) referenced from fml_adc.o(i.fml_adc_Init)
- <LI><a href="#[94]">cb_adcWakeup</a> from fml_adc.o(i.cb_adcWakeup) referenced from fml_adc.o(i.fml_adc_Init)
- <LI><a href="#[4c]">cb_timeeWakeup</a> from bsp_time.o(i.cb_timeeWakeup) referenced from bsp_time.o(i.TIME_Init)
- <LI><a href="#[a0]">clock_irq_handler</a> from nrf_drv_clock.o(i.clock_irq_handler) referenced from nrf_drv_clock.o(i.nrf_drv_clock_init)
- <LI><a href="#[bb]">compare_func</a> from app_timer2.o(i.compare_func) referenced from app_timer2.o(.constdata)
- <LI><a href="#[8a]">conn_params_error_handler</a> from slave.o(i.conn_params_error_handler) referenced from slave.o(i.conn_params_init)
- <LI><a href="#[8b]">db_disc_handler</a> from host.o(i.db_disc_handler) referenced from host.o(i.db_discovery_init)
- <LI><a href="#[89]">discovery_error_handler</a> from ble_db_discovery.o(i.discovery_error_handler) referenced from ble_db_discovery.o(i.characteristics_discover)
- <LI><a href="#[89]">discovery_error_handler</a> from ble_db_discovery.o(i.discovery_error_handler) referenced from ble_db_discovery.o(i.descriptors_discover)
- <LI><a href="#[89]">discovery_error_handler</a> from ble_db_discovery.o(i.discovery_error_handler) referenced from ble_db_discovery.o(i.discovery_start)
- <LI><a href="#[89]">discovery_error_handler</a> from ble_db_discovery.o(i.discovery_error_handler) referenced from ble_db_discovery.o(i.on_srv_disc_completion)
- <LI><a href="#[8e]">drv_lsm_spi_error_report_process</a> from drv_lsm6ds3tr_c.o(i.drv_lsm_spi_error_report_process) referenced from drv_lsm6ds3tr_c.o(i.drv_lsm_Init)
- <LI><a href="#[91]">drv_qmc_iic_error_report_process</a> from drv_qmc6310_v2.o(i.drv_qmc_iic_error_report_process) referenced from drv_qmc6310_v2.o(i.drv_qmc6310_Init)
- <LI><a href="#[80]">dummy_evt_handler</a> from ble_dfu.o(i.dummy_evt_handler) referenced from ble_dfu.o(i.ble_dfu_buttonless_init)
- <LI><a href="#[b2]">fb_data_notify_cb</a> from selfcheck.o(i.fb_data_notify_cb) referenced from selfcheck.o(i.selfcheck_trigger_callback)
- <LI><a href="#[c9]">flash_evt_handler</a> from bsp_flash.o(i.flash_evt_handler) referenced from bsp_flash.o(sdh_soc_observers0)
- <LI><a href="#[88]">fml_adc_samplecallback</a> from fml_adc.o(i.fml_adc_samplecallback) referenced from fml_adc.o(i.cb_adcWakeup)
- <LI><a href="#[88]">fml_adc_samplecallback</a> from fml_adc.o(i.fml_adc_samplecallback) referenced from fml_adc.o(i.fml_adc_timecallback)
- <LI><a href="#[87]">fml_adc_timecallback</a> from fml_adc.o(i.fml_adc_timecallback) referenced from fml_adc.o(i.cb_adcSleep)
- <LI><a href="#[87]">fml_adc_timecallback</a> from fml_adc.o(i.fml_adc_timecallback) referenced from fml_adc.o(i.cb_adcWakeup)
- <LI><a href="#[96]">fml_imu_Process</a> from fml_imu.o(i.fml_imu_Process) referenced from fml_imu.o(i.fml_imu_Init)
- <LI><a href="#[96]">fml_imu_Process</a> from fml_imu.o(i.fml_imu_Process) referenced from fml_imu.o(i.fml_imu_Process)
- <LI><a href="#[96]">fml_imu_Process</a> from fml_imu.o(i.fml_imu_Process) referenced from fml_imu.o(i.fml_imu_start_config)
- <LI><a href="#[65]">gamemode_data_notify_cb</a> from app_game.o(i.gamemode_data_notify_cb) referenced from app_game.o(i.app_game_Init)
- <LI><a href="#[82]">gatt_error_handler</a> from ble_nus_c.o(i.gatt_error_handler) referenced from ble_nus_c.o(i.ble_nus_c_string_send)
- <LI><a href="#[82]">gatt_error_handler</a> from ble_nus_c.o(i.gatt_error_handler) referenced from ble_nus_c.o(i.cccd_configure)
- <LI><a href="#[97]">gatt_evt_handler</a> from host.o(i.gatt_evt_handler) referenced from host.o(i.gatt_init)
- <LI><a href="#[b9]">gattc_write_alloc</a> from nrf_ble_gq.o(i.gattc_write_alloc) referenced from nrf_ble_gq.o(.constdata)
- <LI><a href="#[ba]">gatts_hvx_alloc</a> from nrf_ble_gq.o(i.gatts_hvx_alloc) referenced from nrf_ble_gq.o(.constdata)
- <LI><a href="#[98]">hal_battery_Process</a> from hal_battery_nopowerenpin.o(i.hal_battery_Process) referenced from hal_battery_nopowerenpin.o(i.hal_battery_Process)
- <LI><a href="#[98]">hal_battery_Process</a> from hal_battery_nopowerenpin.o(i.hal_battery_Process) referenced from hal_battery_nopowerenpin.o(i.hal_battery_init)
- <LI><a href="#[9a]">hal_charge_Process</a> from hal_charge.o(i.hal_charge_Process) referenced from hal_charge.o(i.hal_charge_Process)
- <LI><a href="#[9a]">hal_charge_Process</a> from hal_charge.o(i.hal_charge_Process) referenced from hal_charge.o(i.hal_charge_init)
- <LI><a href="#[9e]">hal_qma_Porcess</a> from hal_qma.o(i.hal_qma_Porcess) referenced from hal_qma.o(i.hal_qma_Init)
- <LI><a href="#[9f]">hal_wearshoes_Process</a> from hal_wearshoes.o(i.hal_wearshoes_Process) referenced from hal_wearshoes.o(i.hal_wearshoes_Init)
- <LI><a href="#[9f]">hal_wearshoes_Process</a> from hal_wearshoes.o(i.hal_wearshoes_Process) referenced from hal_wearshoes.o(i.hal_wearshoes_Process)
- <LI><a href="#[83]">host_ledclose_process</a> from host.o(i.host_ledclose_process) referenced from host.o(i.ble_stack_init)
- <LI><a href="#[3f]">integrate_left_right</a> from special_motion.o(i.integrate_left_right) referenced from dtalige.o(i.IMU_Dtalige)
- <LI><a href="#[34]">main</a> from main.o(i.main) referenced from entry9a.o(.ARM.Collect$$$$0000000B)
- <LI><a href="#[bf]">nrf_ble_gatt_on_ble_evt</a> from nrf_ble_gatt.o(i.nrf_ble_gatt_on_ble_evt) referenced from host.o(sdh_ble_observers1)
- <LI><a href="#[c2]">nrf_ble_gq_on_ble_evt</a> from nrf_ble_gq.o(i.nrf_ble_gq_on_ble_evt) referenced from host.o(sdh_ble_observers1)
- <LI><a href="#[c5]">nrf_ble_qwr_on_ble_evt</a> from nrf_ble_qwr.o(i.nrf_ble_qwr_on_ble_evt) referenced 2 times from slave.o(sdh_ble_observers2)
- <LI><a href="#[c1]">nrf_ble_scan_on_ble_evt</a> from nrf_ble_scan.o(i.nrf_ble_scan_on_ble_evt) referenced from host.o(sdh_ble_observers1)
- <LI><a href="#[b3]">nrf_qwr_error_handler</a> from slave.o(i.nrf_qwr_error_handler) referenced from slave.o(i.services_init)
- <LI><a href="#[cc]">nrf_sdh_ble_evts_poll</a> from nrf_sdh_ble.o(i.nrf_sdh_ble_evts_poll) referenced from nrf_sdh_ble.o(sdh_stack_observers0)
- <LI><a href="#[cd]">nrf_sdh_soc_evts_poll</a> from nrf_sdh_soc.o(i.nrf_sdh_soc_evts_poll) referenced from nrf_sdh_soc.o(sdh_stack_observers0)
- <LI><a href="#[a5]">null_pcs</a> from app_one_wire.o(i.null_pcs) referenced from app_one_wire.o(i.one_byte_receive_init)
- <LI><a href="#[a5]">null_pcs</a> from app_one_wire.o(i.null_pcs) referenced from app_one_wire.o(i.one_byte_receive_uninit)
- <LI><a href="#[b4]">nus_data_handler</a> from slave.o(i.nus_data_handler) referenced from slave.o(i.services_init)
- <LI><a href="#[a4]">nus_error_handler</a> from host.o(i.nus_error_handler) referenced from host.o(i.nus_c_init)
- <LI><a href="#[4f]">on_adv_evt</a> from slave.o(i.on_adv_evt) referenced from slave.o(i.advertising_init)
- <LI><a href="#[a6]">one_byte_receive_pcs</a> from app_one_wire.o(i.one_byte_receive_pcs) referenced from app_one_wire.o(i.one_byte_receive_init)
- <LI><a href="#[a6]">one_byte_receive_pcs</a> from app_one_wire.o(i.one_byte_receive_pcs) referenced from app_one_wire.o(i.one_byte_receive_uninit)
- <LI><a href="#[8c]">platform_read</a> from drv_lsm6ds3tr_c.o(i.platform_read) referenced from drv_lsm6ds3tr_c.o(i.drv_lsm_Init)
- <LI><a href="#[92]">platform_read</a> from drv_qmc6310_v2.o(i.platform_read) referenced from drv_qmc6310_v2.o(i.drv_qmc6310_Init)
- <LI><a href="#[8d]">platform_write</a> from drv_lsm6ds3tr_c.o(i.platform_write) referenced from drv_lsm6ds3tr_c.o(i.drv_lsm_Init)
- <LI><a href="#[93]">platform_write</a> from drv_qmc6310_v2.o(i.platform_write) referenced from drv_qmc6310_v2.o(i.drv_qmc6310_Init)
- <LI><a href="#[8f]">qma7981_platform_read</a> from drv_qma7981.o(i.qma7981_platform_read) referenced from drv_qma7981.o(i.drv_qma_Init)
- <LI><a href="#[90]">qma7981_platform_write</a> from drv_qma7981.o(i.qma7981_platform_write) referenced from drv_qma7981.o(i.drv_qma_Init)
- <LI><a href="#[7b]">real_data_notify_cb</a> from app_step.o(i.real_data_notify_cb) referenced from app_step.o(i.app_step_Init)
- <LI><a href="#[7e]">rtc_irq</a> from app_timer2.o(i.rtc_irq) referenced from app_timer2.o(i.app_timer_init)
- <LI><a href="#[4a]">rtc_tick_handler</a> from bsp_time.o(i.rtc_tick_handler) referenced from bsp_time.o(i.TIME_Init)
- <LI><a href="#[a9]">scan_evt_handler</a> from host.o(i.scan_evt_handler) referenced from host.o(i.scan_init)
- <LI><a href="#[b0]">scan_report_cb</a> from selfcheck.o(i.scan_report_cb) referenced from selfcheck.o(i.selfcheck_trigger_callback)
- <LI><a href="#[ce]">sd_state_evt_handler</a> from nrf_drv_clock.o(i.sd_state_evt_handler) referenced from nrf_drv_clock.o(sdh_state_observers0)
- <LI><a href="#[4]">sdflash_page_erase</a> from bsp_flash.o(i.sdflash_page_erase) referenced 2 times from app_flash.o(.data)
- <LI><a href="#[3]">sdflash_write</a> from bsp_flash.o(i.sdflash_write) referenced 2 times from app_flash.o(.data)
- <LI><a href="#[aa]">selfcheck_continue_mt_process</a> from selfcheck.o(i.selfcheck_continue_mt_process) referenced from selfcheck.o(i.selfcheck_continue_mt_process)
- <LI><a href="#[aa]">selfcheck_continue_mt_process</a> from selfcheck.o(i.selfcheck_continue_mt_process) referenced from selfcheck.o(i.selfcheck_process)
- <LI><a href="#[ac]">selfcheck_led_process</a> from selfcheck.o(i.selfcheck_led_process) referenced from selfcheck.o(i.selfcheck_process)
- <LI><a href="#[ac]">selfcheck_led_process</a> from selfcheck.o(i.selfcheck_led_process) referenced from selfcheck.o(i.selfcheck_trigger_callback)
- <LI><a href="#[ab]">selfcheck_mt_process</a> from selfcheck.o(i.selfcheck_mt_process) referenced from selfcheck.o(i.selfcheck_process)
- <LI><a href="#[ab]">selfcheck_mt_process</a> from selfcheck.o(i.selfcheck_mt_process) referenced from selfcheck.o(i.selfcheck_trigger_callback)
- <LI><a href="#[af]">selfcheck_process</a> from selfcheck.o(i.selfcheck_process) referenced from selfcheck.o(i.selfcheck_trigger_callback)
- <LI><a href="#[ad]">selfcheck_result_display_process</a> from selfcheck.o(i.selfcheck_result_display_process) referenced from selfcheck.o(i.selfcheck_process)
- <LI><a href="#[ad]">selfcheck_result_display_process</a> from selfcheck.o(i.selfcheck_result_display_process) referenced from selfcheck.o(i.selfcheck_result_display_process)
- <LI><a href="#[ae]">selfcheck_trigger_Init_Porcess</a> from selfcheck.o(i.selfcheck_trigger_Init_Porcess) referenced from selfcheck.o(i.selfcheck_trigger_Init)
- <LI><a href="#[ca]">soc_evt_handler</a> from nrf_drv_clock.o(i.soc_evt_handler) referenced from nrf_drv_clock.o(sdh_soc_observers0)
- <LI><a href="#[48]">spi0CallbackFunc</a> from bsp_spi.o(i.spi0CallbackFunc) referenced from bsp_spi.o(i.SPI0_Init)
- <LI><a href="#[a1]">spim_evt_handler</a> from nrf_drv_spi.o(i.spim_evt_handler) referenced from nrf_drv_spi.o(i.nrf_drv_spi_init)
- <LI><a href="#[7f]">update_timeout_handler</a> from ble_conn_params.o(i.update_timeout_handler) referenced from ble_conn_params.o(i.ble_conn_params_init)
- <LI><a href="#[a8]">wait_times</a> from hal_charge.o(i.wait_times) referenced from hal_charge.o(i.open_one_shel)
- <LI><a href="#[a8]">wait_times</a> from hal_charge.o(i.wait_times) referenced from hal_charge.o(i.wait_times)
- <LI><a href="#[b7]">wdt_event_handler</a> from bsp_wdt.o(i.wdt_event_handler) referenced from bsp_wdt.o(i.watchdog_init)
-</UL>
-<P>
-<H3>
-Global Symbols
-</H3>
-<P><STRONG><a name="[36]"></a>__main</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry.o(.ARM.Collect$$$$00000000))
-<BR>[Address Reference Count : 1]<UL><LI> arm_startup_nrf52.o(.text)
-</UL>
-<P><STRONG><a name="[4a0]"></a>_main_stk</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry2.o(.ARM.Collect$$$$00000001))
-
-<P><STRONG><a name="[cf]"></a>_main_scatterload</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry5.o(.ARM.Collect$$$$00000004))
-<BR><BR>[Calls]<UL><LI><a href="#[d0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__scatterload
-</UL>
-
-<P><STRONG><a name="[ea]"></a>__main_after_scatterload</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry5.o(.ARM.Collect$$$$00000004))
-<BR><BR>[Called By]<UL><LI><a href="#[d0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__scatterload
-</UL>
-
-<P><STRONG><a name="[4a1]"></a>_main_clock</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry7b.o(.ARM.Collect$$$$00000008))
-
-<P><STRONG><a name="[4a2]"></a>_main_cpp_init</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry8b.o(.ARM.Collect$$$$0000000A))
-
-<P><STRONG><a name="[4a3]"></a>_main_init</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry9a.o(.ARM.Collect$$$$0000000B))
-
-<P><STRONG><a name="[4a4]"></a>__rt_final_cpp</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry10a.o(.ARM.Collect$$$$0000000D))
-
-<P><STRONG><a name="[4a5]"></a>__rt_final_exit</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry11a.o(.ARM.Collect$$$$0000000F))
-
-<P><STRONG><a name="[d1]"></a>app_error_handler</STRONG> (Thumb, 26 bytes, Stack size 0 bytes, app_error_handler_keil.o(.emb_text))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4816<LI>Call Chain = app_error_handler &rArr; app_error_fault_handler &rArr; Flash_SaveLog &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[a2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_error_fault_handler
-</UL>
-<BR>[Called By]<UL><LI><a href="#[3c2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_dfu_server_init
-<LI><a href="#[3c1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_dfu_init
-<LI><a href="#[25c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;host_set_scan_name
-<LI><a href="#[114]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Continuous_scan_start
-<LI><a href="#[2f1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;slave_update_conn_interval_request
-<LI><a href="#[255]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;scan_start
-<LI><a href="#[111]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Ble_update_conn_interval
-<LI><a href="#[236]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;advertising_stop
-<LI><a href="#[234]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;advertising_start
-<LI><a href="#[1d7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ST_scan_start
-<LI><a href="#[3c8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;scan_init
-<LI><a href="#[2c0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_ble_central_evt
-<LI><a href="#[a4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nus_error_handler
-<LI><a href="#[3c7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nus_c_init
-<LI><a href="#[2ff]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;db_discovery_init
-<LI><a href="#[a3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_nus_c_evt_handler
-<LI><a href="#[3c5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;timer_init
-<LI><a href="#[3c6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;power_management_init
-<LI><a href="#[3b3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;gatt_init
-<LI><a href="#[2db]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_stack_init
-<LI><a href="#[2bf]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_ble_peripheral_evt
-<LI><a href="#[48e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;services_init
-<LI><a href="#[4f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_adv_evt
-<LI><a href="#[b3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_qwr_error_handler
-<LI><a href="#[3ee]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;multi_qwr_conn_handle_assign
-<LI><a href="#[3b2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;gap_params_init
-<LI><a href="#[2fc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;conn_params_init
-<LI><a href="#[8a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;conn_params_error_handler
-<LI><a href="#[231]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;advertising_init
-<LI><a href="#[bd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_evt_handler
-<LI><a href="#[43a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;softdevices_evt_irq_enable
-<LI><a href="#[cd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_sdh_soc_evts_poll
-<LI><a href="#[cc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_sdh_ble_evts_poll
-</UL>
-
-<P><STRONG><a name="[3f1]"></a>__asm___12_nrf_atfifo_c_51f461e1__nrf_atfifo_wspace_req</STRONG> (Thumb, 56 bytes, Stack size 0 bytes, nrf_atfifo.o(.emb_text))
-<BR><BR>[Called By]<UL><LI><a href="#[3f0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_atfifo_item_alloc
-</UL>
-
-<P><STRONG><a name="[d2]"></a>__asm___12_nrf_atfifo_c_51f461e1__nrf_atfifo_wspace_close</STRONG> (Thumb, 18 bytes, Stack size 0 bytes, nrf_atfifo.o(.emb_text))
-<BR><BR>[Calls]<UL><LI><a href="#[d2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__asm___12_nrf_atfifo_c_51f461e1__nrf_atfifo_wspace_close
-</UL>
-<BR>[Called By]<UL><LI><a href="#[d2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__asm___12_nrf_atfifo_c_51f461e1__nrf_atfifo_wspace_close
-<LI><a href="#[3f5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_atfifo_item_put
-</UL>
-
-<P><STRONG><a name="[3f4]"></a>__asm___12_nrf_atfifo_c_51f461e1__nrf_atfifo_rspace_req</STRONG> (Thumb, 58 bytes, Stack size 0 bytes, nrf_atfifo.o(.emb_text))
-<BR><BR>[Called By]<UL><LI><a href="#[3f3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_atfifo_item_get
-</UL>
-
-<P><STRONG><a name="[d3]"></a>__asm___12_nrf_atfifo_c_51f461e1__nrf_atfifo_rspace_close</STRONG> (Thumb, 18 bytes, Stack size 0 bytes, nrf_atfifo.o(.emb_text))
-<BR><BR>[Calls]<UL><LI><a href="#[d3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__asm___12_nrf_atfifo_c_51f461e1__nrf_atfifo_rspace_close
-</UL>
-<BR>[Called By]<UL><LI><a href="#[d3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__asm___12_nrf_atfifo_c_51f461e1__nrf_atfifo_rspace_close
-<LI><a href="#[3f2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_atfifo_item_free
-</UL>
-
-<P><STRONG><a name="[4a6]"></a>__asm___12_nrf_atfifo_c_51f461e1__nrf_atfifo_space_clear</STRONG> (Thumb, 50 bytes, Stack size 0 bytes, nrf_atfifo.o(.emb_text), UNUSED)
-
-<P><STRONG><a name="[3fa]"></a>__asm___12_nrf_atomic_c_85ca2469__nrf_atomic_internal_mov</STRONG> (Thumb, 24 bytes, Stack size 0 bytes, nrf_atomic.o(.emb_text))
-<BR><BR>[Called By]<UL><LI><a href="#[3f9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_atomic_u32_fetch_store
-</UL>
-
-<P><STRONG><a name="[3fb]"></a>__asm___12_nrf_atomic_c_85ca2469__nrf_atomic_internal_orr</STRONG> (Thumb, 26 bytes, Stack size 0 bytes, nrf_atomic.o(.emb_text))
-<BR><BR>[Called By]<UL><LI><a href="#[3f7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_atomic_u32_or
-</UL>
-
-<P><STRONG><a name="[3f8]"></a>__asm___12_nrf_atomic_c_85ca2469__nrf_atomic_internal_and</STRONG> (Thumb, 26 bytes, Stack size 0 bytes, nrf_atomic.o(.emb_text))
-<BR><BR>[Called By]<UL><LI><a href="#[3f6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_atomic_u32_and
-</UL>
-
-<P><STRONG><a name="[4a7]"></a>__asm___12_nrf_atomic_c_85ca2469__nrf_atomic_internal_eor</STRONG> (Thumb, 26 bytes, Stack size 0 bytes, nrf_atomic.o(.emb_text), UNUSED)
-
-<P><STRONG><a name="[4a8]"></a>__asm___12_nrf_atomic_c_85ca2469__nrf_atomic_internal_add</STRONG> (Thumb, 26 bytes, Stack size 0 bytes, nrf_atomic.o(.emb_text), UNUSED)
-
-<P><STRONG><a name="[4a9]"></a>__asm___12_nrf_atomic_c_85ca2469__nrf_atomic_internal_sub</STRONG> (Thumb, 26 bytes, Stack size 0 bytes, nrf_atomic.o(.emb_text), UNUSED)
-
-<P><STRONG><a name="[4aa]"></a>__asm___12_nrf_atomic_c_85ca2469__nrf_atomic_internal_cmp_exch</STRONG> (Thumb, 42 bytes, Stack size 0 bytes, nrf_atomic.o(.emb_text), UNUSED)
-
-<P><STRONG><a name="[4ab]"></a>__asm___12_nrf_atomic_c_85ca2469__nrf_atomic_internal_sub_hs</STRONG> (Thumb, 30 bytes, Stack size 0 bytes, nrf_atomic.o(.emb_text), UNUSED)
-
-<P><STRONG><a name="[5]"></a>Reset_Handler</STRONG> (Thumb, 8 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
-<BR>[Address Reference Count : 1]<UL><LI> arm_startup_nrf52.o(RESET)
-</UL>
-<P><STRONG><a name="[6]"></a>NMI_Handler</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
-<BR><BR>[Calls]<UL><LI><a href="#[6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;NMI_Handler
-</UL>
-<BR>[Called By]<UL><LI><a href="#[6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;NMI_Handler
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> arm_startup_nrf52.o(RESET)
-</UL>
-<P><STRONG><a name="[8]"></a>MemoryManagement_Handler</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
-<BR><BR>[Calls]<UL><LI><a href="#[8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;MemoryManagement_Handler
-</UL>
-<BR>[Called By]<UL><LI><a href="#[8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;MemoryManagement_Handler
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> arm_startup_nrf52.o(RESET)
-</UL>
-<P><STRONG><a name="[9]"></a>BusFault_Handler</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
-<BR><BR>[Calls]<UL><LI><a href="#[9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BusFault_Handler
-</UL>
-<BR>[Called By]<UL><LI><a href="#[9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BusFault_Handler
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> arm_startup_nrf52.o(RESET)
-</UL>
-<P><STRONG><a name="[a]"></a>UsageFault_Handler</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
-<BR><BR>[Calls]<UL><LI><a href="#[a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;UsageFault_Handler
-</UL>
-<BR>[Called By]<UL><LI><a href="#[a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;UsageFault_Handler
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> arm_startup_nrf52.o(RESET)
-</UL>
-<P><STRONG><a name="[b]"></a>SVC_Handler</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
-<BR><BR>[Calls]<UL><LI><a href="#[b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SVC_Handler
-</UL>
-<BR>[Called By]<UL><LI><a href="#[b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SVC_Handler
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> arm_startup_nrf52.o(RESET)
-</UL>
-<P><STRONG><a name="[c]"></a>DebugMon_Handler</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
-<BR><BR>[Calls]<UL><LI><a href="#[c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;DebugMon_Handler
-</UL>
-<BR>[Called By]<UL><LI><a href="#[c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;DebugMon_Handler
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> arm_startup_nrf52.o(RESET)
-</UL>
-<P><STRONG><a name="[d]"></a>PendSV_Handler</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
-<BR><BR>[Calls]<UL><LI><a href="#[d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;PendSV_Handler
-</UL>
-<BR>[Called By]<UL><LI><a href="#[d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;PendSV_Handler
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> arm_startup_nrf52.o(RESET)
-</UL>
-<P><STRONG><a name="[e]"></a>SysTick_Handler</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
-<BR><BR>[Calls]<UL><LI><a href="#[e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SysTick_Handler
-</UL>
-<BR>[Called By]<UL><LI><a href="#[e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SysTick_Handler
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> arm_startup_nrf52.o(RESET)
-</UL>
-<P><STRONG><a name="[1e]"></a>CCM_AAR_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
-<BR><BR>[Calls]<UL><LI><a href="#[1e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;CCM_AAR_IRQHandler
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;CCM_AAR_IRQHandler
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> arm_startup_nrf52.o(RESET)
-</UL>
-<P><STRONG><a name="[22]"></a>COMP_LPCOMP_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
-<BR>[Address Reference Count : 1]<UL><LI> arm_startup_nrf52.o(RESET)
-</UL>
-<P><STRONG><a name="[1d]"></a>ECB_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
-<BR>[Address Reference Count : 1]<UL><LI> arm_startup_nrf52.o(RESET)
-</UL>
-<P><STRONG><a name="[33]"></a>FPU_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
-<BR>[Address Reference Count : 1]<UL><LI> arm_startup_nrf52.o(RESET)
-</UL>
-<P><STRONG><a name="[15]"></a>GPIOTE_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
-<BR>[Address Reference Count : 1]<UL><LI> arm_startup_nrf52.o(RESET)
-</UL>
-<P><STRONG><a name="[32]"></a>I2S_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
-<BR>[Address Reference Count : 1]<UL><LI> arm_startup_nrf52.o(RESET)
-</UL>
-<P><STRONG><a name="[2d]"></a>MWU_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
-<BR>[Address Reference Count : 1]<UL><LI> arm_startup_nrf52.o(RESET)
-</UL>
-<P><STRONG><a name="[14]"></a>NFCT_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
-<BR>[Address Reference Count : 1]<UL><LI> arm_startup_nrf52.o(RESET)
-</UL>
-<P><STRONG><a name="[2c]"></a>PDM_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
-<BR>[Address Reference Count : 1]<UL><LI> arm_startup_nrf52.o(RESET)
-</UL>
-<P><STRONG><a name="[2e]"></a>PWM1_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
-<BR>[Address Reference Count : 1]<UL><LI> arm_startup_nrf52.o(RESET)
-</UL>
-<P><STRONG><a name="[2f]"></a>PWM2_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
-<BR>[Address Reference Count : 1]<UL><LI> arm_startup_nrf52.o(RESET)
-</UL>
-<P><STRONG><a name="[21]"></a>QDEC_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
-<BR>[Address Reference Count : 1]<UL><LI> arm_startup_nrf52.o(RESET)
-</UL>
-<P><STRONG><a name="[10]"></a>RADIO_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
-<BR>[Address Reference Count : 1]<UL><LI> arm_startup_nrf52.o(RESET)
-</UL>
-<P><STRONG><a name="[1c]"></a>RNG_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
-<BR>[Address Reference Count : 1]<UL><LI> arm_startup_nrf52.o(RESET)
-</UL>
-<P><STRONG><a name="[1a]"></a>RTC0_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
-<BR>[Address Reference Count : 1]<UL><LI> arm_startup_nrf52.o(RESET)
-</UL>
-<P><STRONG><a name="[23]"></a>SWI0_EGU0_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
-<BR>[Address Reference Count : 1]<UL><LI> arm_startup_nrf52.o(RESET)
-</UL>
-<P><STRONG><a name="[24]"></a>SWI1_EGU1_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
-<BR>[Address Reference Count : 1]<UL><LI> arm_startup_nrf52.o(RESET)
-</UL>
-<P><STRONG><a name="[26]"></a>SWI3_EGU3_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
-<BR>[Address Reference Count : 1]<UL><LI> arm_startup_nrf52.o(RESET)
-</UL>
-<P><STRONG><a name="[27]"></a>SWI4_EGU4_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
-<BR>[Address Reference Count : 1]<UL><LI> arm_startup_nrf52.o(RESET)
-</UL>
-<P><STRONG><a name="[28]"></a>SWI5_EGU5_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
-<BR>[Address Reference Count : 1]<UL><LI> arm_startup_nrf52.o(RESET)
-</UL>
-<P><STRONG><a name="[1b]"></a>TEMP_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
-<BR>[Address Reference Count : 1]<UL><LI> arm_startup_nrf52.o(RESET)
-</UL>
-<P><STRONG><a name="[17]"></a>TIMER0_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
-<BR>[Address Reference Count : 1]<UL><LI> arm_startup_nrf52.o(RESET)
-</UL>
-<P><STRONG><a name="[18]"></a>TIMER1_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
-<BR>[Address Reference Count : 1]<UL><LI> arm_startup_nrf52.o(RESET)
-</UL>
-<P><STRONG><a name="[19]"></a>TIMER2_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
-<BR>[Address Reference Count : 1]<UL><LI> arm_startup_nrf52.o(RESET)
-</UL>
-<P><STRONG><a name="[29]"></a>TIMER3_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
-<BR>[Address Reference Count : 1]<UL><LI> arm_startup_nrf52.o(RESET)
-</UL>
-<P><STRONG><a name="[2a]"></a>TIMER4_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
-<BR>[Address Reference Count : 1]<UL><LI> arm_startup_nrf52.o(RESET)
-</UL>
-<P><STRONG><a name="[11]"></a>UARTE0_UART0_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
-<BR>[Address Reference Count : 1]<UL><LI> arm_startup_nrf52.o(RESET)
-</UL>
-<P><STRONG><a name="[d4]"></a>__aeabi_uldivmod</STRONG> (Thumb, 98 bytes, Stack size 40 bytes, uldiv.o(.text))
-<BR><BR>[Stack]<UL><LI>Max Depth = 40<LI>Call Chain = __aeabi_uldivmod
-</UL>
-<BR>[Calls]<UL><LI><a href="#[d5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_llsr
-<LI><a href="#[d6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_llsl
-</UL>
-<BR>[Called By]<UL><LI><a href="#[45b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_wdt_init
-<LI><a href="#[20e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_printf_core
-<LI><a href="#[227]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_fp_digits
-</UL>
-
-<P><STRONG><a name="[127]"></a>__aeabi_memcpy</STRONG> (Thumb, 36 bytes, Stack size 0 bytes, memcpya.o(.text))
-<BR><BR>[Called By]<UL><LI><a href="#[240]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;sort_silde_window
-<LI><a href="#[25c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;host_set_scan_name
-<LI><a href="#[13b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_SaveLog
-<LI><a href="#[124]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Except_TxError
-<LI><a href="#[16c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IMU_Rec_data
-<LI><a href="#[13a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;pm_update
-<LI><a href="#[135]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;pm_get_length
-<LI><a href="#[136]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;pm_find
-<LI><a href="#[138]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;pm_delete
-<LI><a href="#[137]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;pm_add
-<LI><a href="#[25d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;slave_set_adv_name
-<LI><a href="#[3e7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;minfds_record_find
-<LI><a href="#[1d2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI0_ReadWriteReg
-<LI><a href="#[304]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;detect_zero_vel
-<LI><a href="#[472]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;press_down_detect_new
-<LI><a href="#[16f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;get_game_package
-<LI><a href="#[164]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;get_foot_data
-<LI><a href="#[418]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_scan_init
-<LI><a href="#[30b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;discovery_complete_evt_trigger
-<LI><a href="#[290]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;service_data_encode
-<LI><a href="#[28f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;manuf_specific_data_encode
-<LI><a href="#[416]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_scan_name_filter_add
-<LI><a href="#[40e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_queue_push
-<LI><a href="#[432]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_queue_generic_pop
-<LI><a href="#[3df]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;memobj_op
-<LI><a href="#[2b9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_dfu_buttonless_on_ctrl_pt_write
-</UL>
-
-<P><STRONG><a name="[fb]"></a>__aeabi_memcpy4</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, memcpya.o(.text))
-<BR><BR>[Called By]<UL><LI><a href="#[123]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Except_NotOSHardFault_Handler
-<LI><a href="#[128]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Exception_Init
-<LI><a href="#[130]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;flash_Data_Read
-<LI><a href="#[af]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_process
-<LI><a href="#[a2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_error_fault_handler
-<LI><a href="#[46]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;PWR_Process
-<LI><a href="#[6c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_ota_clear_flash
-<LI><a href="#[172]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IsWearShoes
-<LI><a href="#[2e2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_get_data
-<LI><a href="#[29f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_conn_params_init
-<LI><a href="#[232]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_advertising_init
-<LI><a href="#[475]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;press_jump_detect
-<LI><a href="#[30e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;discovery_error_evt_trigger
-<LI><a href="#[170]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Initialize
-<LI><a href="#[f8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Att_matrix_corr
-<LI><a href="#[2fa]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;conn_handle_list_get
-<LI><a href="#[2c1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;record_purge_disconnected
-<LI><a href="#[405]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_data_length_update_evt
-</UL>
-
-<P><STRONG><a name="[4ac]"></a>__aeabi_memcpy8</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, memcpya.o(.text), UNUSED)
-
-<P><STRONG><a name="[d8]"></a>__aeabi_memset</STRONG> (Thumb, 14 bytes, Stack size 0 bytes, memseta.o(.text))
-<BR><BR>[Called By]<UL><LI><a href="#[af]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_process
-<LI><a href="#[d9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_memset$wrapper
-<LI><a href="#[d7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr
-</UL>
-
-<P><STRONG><a name="[4ad]"></a>__aeabi_memset4</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text), UNUSED)
-
-<P><STRONG><a name="[4ae]"></a>__aeabi_memset8</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text), UNUSED)
-
-<P><STRONG><a name="[d7]"></a>__aeabi_memclr</STRONG> (Thumb, 4 bytes, Stack size 0 bytes, memseta.o(.text))
-<BR><BR>[Calls]<UL><LI><a href="#[d8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memset
-</UL>
-<BR>[Called By]<UL><LI><a href="#[128]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Exception_Init
-<LI><a href="#[73]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Pair_adv_cb
-<LI><a href="#[315]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_get_fifo_data
-<LI><a href="#[3c9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_scan_all_filter_remove
-</UL>
-
-<P><STRONG><a name="[117]"></a>__aeabi_memclr4</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text))
-<BR><BR>[Called By]<UL><LI><a href="#[3d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Exception_UnkownReset_Info_Send_Process
-<LI><a href="#[1ee]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_adc_Init
-<LI><a href="#[1ef]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_Init
-<LI><a href="#[131]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_Initialize
-<LI><a href="#[128]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Exception_Init
-<LI><a href="#[1ba]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_All_Stop
-<LI><a href="#[65]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;gamemode_data_notify_cb
-<LI><a href="#[7b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;real_data_notify_cb
-<LI><a href="#[7c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_math_DailyStep_Process
-<LI><a href="#[24f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_client_infomation_Send
-<LI><a href="#[1b1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_client_DataUpdate_Send
-<LI><a href="#[52]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_BatDispaly_Process_N
-<LI><a href="#[6d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_BatDispaly_Process
-<LI><a href="#[25c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;host_set_scan_name
-<LI><a href="#[321]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_power_off
-<LI><a href="#[489]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_trigger_callback
-<LI><a href="#[b2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fb_data_notify_cb
-<LI><a href="#[13b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_SaveLog
-<LI><a href="#[a2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_error_fault_handler
-<LI><a href="#[61]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;DetectLr_notify_cb
-<LI><a href="#[1ab]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_close
-<LI><a href="#[74]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_safe_Process
-<LI><a href="#[3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;sdflash_write
-<LI><a href="#[4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;sdflash_page_erase
-<LI><a href="#[25d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;slave_set_adv_name
-<LI><a href="#[3c3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_wearshoes_determine
-<LI><a href="#[172]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IsWearShoes
-<LI><a href="#[26f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_pair_flash_save
-<LI><a href="#[322]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_power_on
-<LI><a href="#[30f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_Init
-<LI><a href="#[2df]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_Init
-<LI><a href="#[2d4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_nus_init
-<LI><a href="#[235]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_advertising_start
-<LI><a href="#[2fc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;conn_params_init
-<LI><a href="#[231]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;advertising_init
-<LI><a href="#[91]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qmc_iic_error_report_process
-<LI><a href="#[116]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_scan_start
-<LI><a href="#[418]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_scan_init
-<LI><a href="#[2d0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_nus_c_string_send
-<LI><a href="#[2cf]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_nus_c_on_db_disc_evt
-<LI><a href="#[8e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_spi_error_report_process
-<LI><a href="#[461]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_srv_disc_completion
-<LI><a href="#[2ab]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;discovery_start
-<LI><a href="#[30a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;discovery_available_evt_trigger
-<LI><a href="#[302]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;descriptors_discover
-<LI><a href="#[2f6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;characteristics_discover
-<LI><a href="#[286]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;attitude_matrix_update
-<LI><a href="#[170]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Initialize
-<LI><a href="#[41e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_scan_on_timeout
-<LI><a href="#[41f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_scan_on_connected_evt
-<LI><a href="#[41c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_scan_on_adv_report
-<LI><a href="#[415]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_scan_connect_with_target
-<LI><a href="#[2b2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;characteristic_add
-<LI><a href="#[2d6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_write
-<LI><a href="#[2d7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_hvx_tx_complete
-<LI><a href="#[2d5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_connect
-<LI><a href="#[2d2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cccd_configure
-<LI><a href="#[81]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bsp_ble_dfu_process
-<LI><a href="#[2b1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_dfu_buttonless_char_add
-</UL>
-
-<P><STRONG><a name="[4af]"></a>__aeabi_memclr8</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text), UNUSED)
-
-<P><STRONG><a name="[d9]"></a>_memset$wrapper</STRONG> (Thumb, 18 bytes, Stack size 8 bytes, memseta.o(.text), UNUSED)
-<BR><BR>[Calls]<UL><LI><a href="#[d8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memset
-</UL>
-
-<P><STRONG><a name="[125]"></a>strlen</STRONG> (Thumb, 14 bytes, Stack size 0 bytes, strlen.o(.text))
-<BR><BR>[Called By]<UL><LI><a href="#[1f4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_detect_Init
-<LI><a href="#[131]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_Initialize
-<LI><a href="#[13c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_SaveStep
-<LI><a href="#[139]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_SaveInfomation
-<LI><a href="#[af]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_process
-<LI><a href="#[124]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Except_TxError
-<LI><a href="#[69]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_ota_Process
-<LI><a href="#[72]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_Host_BLE_PAIR
-<LI><a href="#[6e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_pair_Right_Process
-<LI><a href="#[6f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_pair_Left_Process
-<LI><a href="#[3b2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;gap_params_init
-<LI><a href="#[230]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_advdata_name_find
-<LI><a href="#[416]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_scan_name_filter_add
-</UL>
-
-<P><STRONG><a name="[41b]"></a>strcmp</STRONG> (Thumb, 28 bytes, Stack size 8 bytes, strcmp.o(.text))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = strcmp
-</UL>
-<BR>[Called By]<UL><LI><a href="#[416]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_scan_name_filter_add
-</UL>
-
-<P><STRONG><a name="[293]"></a>memcmp</STRONG> (Thumb, 26 bytes, Stack size 12 bytes, memcmp.o(.text))
-<BR><BR>[Stack]<UL><LI>Max Depth = 12<LI>Call Chain = memcmp
-</UL>
-<BR>[Called By]<UL><LI><a href="#[2ea]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_start_config
-<LI><a href="#[3ea]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;minfds_record_update
-<LI><a href="#[3e8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;minfds_record_find_mem
-<LI><a href="#[3e6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;minfds_record_delete
-<LI><a href="#[c8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_evt_handler
-<LI><a href="#[230]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_advdata_name_find
-</UL>
-
-<P><STRONG><a name="[da]"></a>__aeabi_dadd</STRONG> (Thumb, 322 bytes, Stack size 48 bytes, dadd.o(.text))
-<BR><BR>[Stack]<UL><LI>Max Depth = 88<LI>Call Chain = __aeabi_dadd &rArr; _double_epilogue &rArr; _double_round
-</UL>
-<BR>[Calls]<UL><LI><a href="#[db]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_lasr
-<LI><a href="#[d6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_llsl
-<LI><a href="#[dd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_double_round
-<LI><a href="#[dc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_double_epilogue
-</UL>
-<BR>[Called By]<UL><LI><a href="#[af]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_process
-<LI><a href="#[df]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_drsub
-<LI><a href="#[de]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_dsub
-<LI><a href="#[a6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;one_byte_receive_pcs
-<LI><a href="#[224]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__kernel_sin
-<LI><a href="#[223]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__ieee754_rem_pio2
-<LI><a href="#[215]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__kernel_poly
-<LI><a href="#[21f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__mathlib_dbl_infnan2
-<LI><a href="#[210]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__mathlib_dbl_infnan
-<LI><a href="#[21d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_atan
-<LI><a href="#[227]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_fp_digits
-<LI><a href="#[20f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_asin
-</UL>
-
-<P><STRONG><a name="[de]"></a>__aeabi_dsub</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, dadd.o(.text))
-<BR><BR>[Stack]<UL><LI>Max Depth = 88<LI>Call Chain = __aeabi_dsub &rArr; __aeabi_dadd &rArr; _double_epilogue &rArr; _double_round
-</UL>
-<BR>[Calls]<UL><LI><a href="#[da]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_dadd
-</UL>
-<BR>[Called By]<UL><LI><a href="#[a6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;one_byte_receive_pcs
-<LI><a href="#[224]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__kernel_sin
-<LI><a href="#[223]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__ieee754_rem_pio2
-<LI><a href="#[225]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__kernel_cos
-<LI><a href="#[21d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_atan
-<LI><a href="#[21e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_atan2
-<LI><a href="#[20f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_asin
-</UL>
-
-<P><STRONG><a name="[df]"></a>__aeabi_drsub</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, dadd.o(.text))
-<BR><BR>[Stack]<UL><LI>Max Depth = 88<LI>Call Chain = __aeabi_drsub &rArr; __aeabi_dadd &rArr; _double_epilogue &rArr; _double_round
-</UL>
-<BR>[Calls]<UL><LI><a href="#[da]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_dadd
-</UL>
-<BR>[Called By]<UL><LI><a href="#[11d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Except_Get_Cur_Porcess_ID
-<LI><a href="#[224]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__kernel_sin
-<LI><a href="#[223]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__ieee754_rem_pio2
-<LI><a href="#[225]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__kernel_cos
-<LI><a href="#[21d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_atan
-<LI><a href="#[21e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_atan2
-<LI><a href="#[20f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_asin
-</UL>
-
-<P><STRONG><a name="[e0]"></a>__aeabi_dmul</STRONG> (Thumb, 228 bytes, Stack size 48 bytes, dmul.o(.text))
-<BR><BR>[Stack]<UL><LI>Max Depth = 88<LI>Call Chain = __aeabi_dmul &rArr; _double_epilogue &rArr; _double_round
-</UL>
-<BR>[Calls]<UL><LI><a href="#[dc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_double_epilogue
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1c3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RealTimeStep
-<LI><a href="#[a6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;one_byte_receive_pcs
-<LI><a href="#[224]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__kernel_sin
-<LI><a href="#[223]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__ieee754_rem_pio2
-<LI><a href="#[215]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__kernel_poly
-<LI><a href="#[214]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__mathlib_dbl_underflow
-<LI><a href="#[225]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__kernel_cos
-<LI><a href="#[21d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_atan
-<LI><a href="#[227]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_fp_digits
-<LI><a href="#[20f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_asin
-</UL>
-
-<P><STRONG><a name="[e1]"></a>__aeabi_ddiv</STRONG> (Thumb, 222 bytes, Stack size 32 bytes, ddiv.o(.text))
-<BR><BR>[Stack]<UL><LI>Max Depth = 40<LI>Call Chain = __aeabi_ddiv &rArr; _double_round
-</UL>
-<BR>[Calls]<UL><LI><a href="#[dd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_double_round
-</UL>
-<BR>[Called By]<UL><LI><a href="#[3d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Exception_UnkownReset_Info_Send_Process
-<LI><a href="#[208]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;rtc_sleep
-<LI><a href="#[11d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Except_Get_Cur_Porcess_ID
-<LI><a href="#[87]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_adc_timecallback
-<LI><a href="#[212]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__mathlib_dbl_invalid
-<LI><a href="#[21d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_atan
-<LI><a href="#[227]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_fp_digits
-<LI><a href="#[21e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_atan2
-<LI><a href="#[20f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_asin
-</UL>
-
-<P><STRONG><a name="[e2]"></a>__aeabi_i2d</STRONG> (Thumb, 34 bytes, Stack size 16 bytes, dflti.o(.text))
-<BR><BR>[Stack]<UL><LI>Max Depth = 56<LI>Call Chain = __aeabi_i2d &rArr; _double_epilogue &rArr; _double_round
-</UL>
-<BR>[Calls]<UL><LI><a href="#[dc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_double_epilogue
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1c3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RealTimeStep
-<LI><a href="#[af]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_process
-<LI><a href="#[223]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__ieee754_rem_pio2
-</UL>
-
-<P><STRONG><a name="[e3]"></a>__aeabi_ui2d</STRONG> (Thumb, 26 bytes, Stack size 16 bytes, dfltui.o(.text))
-<BR><BR>[Stack]<UL><LI>Max Depth = 56<LI>Call Chain = __aeabi_ui2d &rArr; _double_epilogue &rArr; _double_round
-</UL>
-<BR>[Calls]<UL><LI><a href="#[dc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_double_epilogue
-</UL>
-<BR>[Called By]<UL><LI><a href="#[3d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Exception_UnkownReset_Info_Send_Process
-<LI><a href="#[208]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;rtc_sleep
-<LI><a href="#[11d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Except_Get_Cur_Porcess_ID
-<LI><a href="#[a6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;one_byte_receive_pcs
-<LI><a href="#[87]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_adc_timecallback
-<LI><a href="#[223]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__ieee754_rem_pio2
-</UL>
-
-<P><STRONG><a name="[e4]"></a>__aeabi_d2iz</STRONG> (Thumb, 62 bytes, Stack size 16 bytes, dfixi.o(.text))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = __aeabi_d2iz
-</UL>
-<BR>[Calls]<UL><LI><a href="#[d5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_llsr
-</UL>
-<BR>[Called By]<UL><LI><a href="#[172]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IsWearShoes
-<LI><a href="#[a6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;one_byte_receive_pcs
-<LI><a href="#[223]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__ieee754_rem_pio2
-<LI><a href="#[225]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__kernel_cos
-</UL>
-
-<P><STRONG><a name="[e5]"></a>__aeabi_d2uiz</STRONG> (Thumb, 50 bytes, Stack size 8 bytes, dfixui.o(.text))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = __aeabi_d2uiz
-</UL>
-<BR>[Calls]<UL><LI><a href="#[d5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_llsr
-</UL>
-<BR>[Called By]<UL><LI><a href="#[208]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;rtc_sleep
-<LI><a href="#[11d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Except_Get_Cur_Porcess_ID
-<LI><a href="#[af]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_process
-</UL>
-
-<P><STRONG><a name="[112]"></a>__aeabi_f2d</STRONG> (Thumb, 38 bytes, Stack size 0 bytes, f2d.o(.text))
-<BR><BR>[Called By]<UL><LI><a href="#[2f1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;slave_update_conn_interval_request
-<LI><a href="#[111]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Ble_update_conn_interval
-<LI><a href="#[172]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IsWearShoes
-<LI><a href="#[98]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_battery_Process
-<LI><a href="#[335]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_self_check_5
-<LI><a href="#[32c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_self_check_3
-<LI><a href="#[301]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;dcm2angleTest
-<LI><a href="#[171]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;init_attitude_matrix
-</UL>
-
-<P><STRONG><a name="[4b0]"></a>__aeabi_cdcmpeq</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, cdcmple.o(.text), UNUSED)
-
-<P><STRONG><a name="[46f]"></a>__aeabi_cdcmple</STRONG> (Thumb, 48 bytes, Stack size 0 bytes, cdcmple.o(.text))
-<BR><BR>[Called By]<UL><LI><a href="#[a6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;one_byte_receive_pcs
-</UL>
-
-<P><STRONG><a name="[113]"></a>__aeabi_cdrcmple</STRONG> (Thumb, 48 bytes, Stack size 0 bytes, cdrcmple.o(.text))
-<BR><BR>[Called By]<UL><LI><a href="#[1c3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RealTimeStep
-<LI><a href="#[2f1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;slave_update_conn_interval_request
-<LI><a href="#[111]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Ble_update_conn_interval
-<LI><a href="#[a6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;one_byte_receive_pcs
-<LI><a href="#[87]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_adc_timecallback
-<LI><a href="#[227]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_fp_digits
-</UL>
-
-<P><STRONG><a name="[e6]"></a>__aeabi_d2f</STRONG> (Thumb, 56 bytes, Stack size 8 bytes, d2f.o(.text))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = __aeabi_d2f
-</UL>
-<BR>[Calls]<UL><LI><a href="#[e7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_float_round
-</UL>
-<BR>[Called By]<UL><LI><a href="#[335]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_self_check_5
-<LI><a href="#[32c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_self_check_3
-<LI><a href="#[301]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;dcm2angleTest
-<LI><a href="#[171]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;init_attitude_matrix
-</UL>
-
-<P><STRONG><a name="[4b1]"></a>__aeabi_uidiv</STRONG> (Thumb, 0 bytes, Stack size 12 bytes, uidiv.o(.text), UNUSED)
-
-<P><STRONG><a name="[22a]"></a>__aeabi_uidivmod</STRONG> (Thumb, 44 bytes, Stack size 12 bytes, uidiv.o(.text), UNUSED)
-<BR><BR>[Called By]<UL><LI><a href="#[20e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_printf_core
-</UL>
-
-<P><STRONG><a name="[d6]"></a>__aeabi_llsl</STRONG> (Thumb, 30 bytes, Stack size 0 bytes, llshl.o(.text))
-<BR><BR>[Called By]<UL><LI><a href="#[da]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_dadd
-<LI><a href="#[dc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_double_epilogue
-<LI><a href="#[e9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_d2ulz
-<LI><a href="#[d4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_uldivmod
-</UL>
-
-<P><STRONG><a name="[4b2]"></a>_ll_shift_l</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, llshl.o(.text), UNUSED)
-
-<P><STRONG><a name="[d5]"></a>__aeabi_llsr</STRONG> (Thumb, 32 bytes, Stack size 0 bytes, llushr.o(.text))
-<BR><BR>[Called By]<UL><LI><a href="#[e5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_d2uiz
-<LI><a href="#[e4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_d2iz
-<LI><a href="#[dc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_double_epilogue
-<LI><a href="#[e9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_d2ulz
-<LI><a href="#[d4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_uldivmod
-<LI><a href="#[e8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_dsqrt
-</UL>
-
-<P><STRONG><a name="[4b3]"></a>_ll_ushift_r</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, llushr.o(.text), UNUSED)
-
-<P><STRONG><a name="[db]"></a>__aeabi_lasr</STRONG> (Thumb, 36 bytes, Stack size 0 bytes, llsshr.o(.text))
-<BR><BR>[Called By]<UL><LI><a href="#[da]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_dadd
-</UL>
-
-<P><STRONG><a name="[4b4]"></a>_ll_sshift_r</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, llsshr.o(.text), UNUSED)
-
-<P><STRONG><a name="[4b5]"></a>__I$use$fp</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, iusefp.o(.text), UNUSED)
-
-<P><STRONG><a name="[e7]"></a>_float_round</STRONG> (Thumb, 18 bytes, Stack size 0 bytes, fepilogue.o(.text))
-<BR><BR>[Called By]<UL><LI><a href="#[e6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_d2f
-</UL>
-
-<P><STRONG><a name="[4b6]"></a>_float_epilogue</STRONG> (Thumb, 92 bytes, Stack size 4 bytes, fepilogue.o(.text), UNUSED)
-
-<P><STRONG><a name="[dd]"></a>_double_round</STRONG> (Thumb, 30 bytes, Stack size 8 bytes, depilogue.o(.text))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = _double_round
-</UL>
-<BR>[Called By]<UL><LI><a href="#[da]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_dadd
-<LI><a href="#[e1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_ddiv
-<LI><a href="#[dc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_double_epilogue
-<LI><a href="#[e8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_dsqrt
-</UL>
-
-<P><STRONG><a name="[dc]"></a>_double_epilogue</STRONG> (Thumb, 156 bytes, Stack size 32 bytes, depilogue.o(.text))
-<BR><BR>[Stack]<UL><LI>Max Depth = 40<LI>Call Chain = _double_epilogue &rArr; _double_round
-</UL>
-<BR>[Calls]<UL><LI><a href="#[d5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_llsr
-<LI><a href="#[d6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_llsl
-<LI><a href="#[dd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_double_round
-</UL>
-<BR>[Called By]<UL><LI><a href="#[e2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_i2d
-<LI><a href="#[da]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_dadd
-<LI><a href="#[e3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_ui2d
-<LI><a href="#[e0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_dmul
-</UL>
-
-<P><STRONG><a name="[e8]"></a>_dsqrt</STRONG> (Thumb, 162 bytes, Stack size 32 bytes, dsqrt.o(.text))
-<BR><BR>[Stack]<UL><LI>Max Depth = 40<LI>Call Chain = _dsqrt &rArr; _double_round
-</UL>
-<BR>[Calls]<UL><LI><a href="#[d5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_llsr
-<LI><a href="#[dd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_double_round
-</UL>
-<BR>[Called By]<UL><LI><a href="#[217]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;sqrt
-<LI><a href="#[173]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_sqrt
-</UL>
-
-<P><STRONG><a name="[e9]"></a>__aeabi_d2ulz</STRONG> (Thumb, 48 bytes, Stack size 0 bytes, dfixul.o(.text), UNUSED)
-<BR><BR>[Calls]<UL><LI><a href="#[d5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_llsr
-<LI><a href="#[d6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_llsl
-</UL>
-<BR>[Called By]<UL><LI><a href="#[227]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_fp_digits
-</UL>
-
-<P><STRONG><a name="[d0]"></a>__scatterload</STRONG> (Thumb, 28 bytes, Stack size 0 bytes, init.o(.text))
-<BR><BR>[Calls]<UL><LI><a href="#[ea]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__main_after_scatterload
-</UL>
-<BR>[Called By]<UL><LI><a href="#[cf]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_main_scatterload
-</UL>
-
-<P><STRONG><a name="[4b7]"></a>__scatterload_rt2</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, init.o(.text), UNUSED)
-
-<P><STRONG><a name="[4b8]"></a>__decompress</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, __dczerorl2.o(.text), UNUSED)
-
-<P><STRONG><a name="[4b9]"></a>__decompress1</STRONG> (Thumb, 86 bytes, Stack size unknown bytes, __dczerorl2.o(.text), UNUSED)
-
-<P><STRONG><a name="[eb]"></a>ADC_Disable</STRONG> (Thumb, 8 bytes, Stack size 8 bytes, bsp_adc.o(i.ADC_Disable))
-<BR><BR>[Stack]<UL><LI>Max Depth = 64<LI>Call Chain = ADC_Disable &rArr; nrfx_saadc_uninit &rArr; nrfx_saadc_channel_uninit &rArr; nrfx_saadc_limits_set
-</UL>
-<BR>[Calls]<UL><LI><a href="#[ec]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_saadc_uninit
-</UL>
-<BR>[Called By]<UL><LI><a href="#[f6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ADC_SetPinChannel
-<LI><a href="#[1aa]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;PWR_Off
-<LI><a href="#[f4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ADC_Sample
-<LI><a href="#[95]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_adcSleep
-</UL>
-
-<P><STRONG><a name="[ed]"></a>ADC_Enable</STRONG> (Thumb, 8 bytes, Stack size 8 bytes, bsp_adc.o(i.ADC_Enable))
-<BR><BR>[Stack]<UL><LI>Max Depth = 64<LI>Call Chain = ADC_Enable &rArr; ADC_Init &rArr; nrfx_saadc_init &rArr; nrf_saadc_event_clear
-</UL>
-<BR>[Calls]<UL><LI><a href="#[ee]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ADC_Init
-</UL>
-<BR>[Called By]<UL><LI><a href="#[f6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ADC_SetPinChannel
-<LI><a href="#[f4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ADC_Sample
-<LI><a href="#[94]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_adcWakeup
-</UL>
-
-<P><STRONG><a name="[f2]"></a>ADC_RemovePinChannel</STRONG> (Thumb, 108 bytes, Stack size 16 bytes, bsp_adc.o(i.ADC_RemovePinChannel))
-<BR><BR>[Stack]<UL><LI>Max Depth = 56<LI>Call Chain = ADC_RemovePinChannel &rArr; nrfx_saadc_channel_uninit &rArr; nrfx_saadc_limits_set
-</UL>
-<BR>[Calls]<UL><LI><a href="#[f3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_saadc_channel_uninit
-</UL>
-<BR>[Called By]<UL><LI><a href="#[f6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ADC_SetPinChannel
-<LI><a href="#[1aa]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;PWR_Off
-</UL>
-
-<P><STRONG><a name="[f4]"></a>ADC_Sample</STRONG> (Thumb, 48 bytes, Stack size 16 bytes, bsp_adc.o(i.ADC_Sample))
-<BR><BR>[Stack]<UL><LI>Max Depth = 80<LI>Call Chain = ADC_Sample &rArr; ADC_Disable &rArr; nrfx_saadc_uninit &rArr; nrfx_saadc_channel_uninit &rArr; nrfx_saadc_limits_set
-</UL>
-<BR>[Calls]<UL><LI><a href="#[eb]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ADC_Disable
-<LI><a href="#[ed]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ADC_Enable
-<LI><a href="#[f5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_saadc_sample
-</UL>
-<BR>[Called By]<UL><LI><a href="#[87]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_adc_timecallback
-<LI><a href="#[94]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_adcWakeup
-</UL>
-
-<P><STRONG><a name="[f6]"></a>ADC_SetPinChannel</STRONG> (Thumb, 450 bytes, Stack size 48 bytes, bsp_adc.o(i.ADC_SetPinChannel))
-<BR><BR>[Stack]<UL><LI>Max Depth = 112<LI>Call Chain = ADC_SetPinChannel &rArr; ADC_Disable &rArr; nrfx_saadc_uninit &rArr; nrfx_saadc_channel_uninit &rArr; nrfx_saadc_limits_set
-</UL>
-<BR>[Calls]<UL><LI><a href="#[f2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ADC_RemovePinChannel
-<LI><a href="#[eb]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ADC_Disable
-<LI><a href="#[ed]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ADC_Enable
-<LI><a href="#[f0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_saadc_channel_init
-<LI><a href="#[f7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_cfg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1ee]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_adc_Init
-<LI><a href="#[489]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_trigger_callback
-</UL>
-
-<P><STRONG><a name="[f8]"></a>Att_matrix_corr</STRONG> (Thumb, 234 bytes, Stack size 24 bytes, ekfpdr.o(i.Att_matrix_corr))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = Att_matrix_corr
-</UL>
-<BR>[Calls]<UL><LI><a href="#[fa]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;multiply3x3
-<LI><a href="#[f9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;invert3x3
-<LI><a href="#[fb]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy4
-</UL>
-<BR>[Called By]<UL><LI><a href="#[3a9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;footPDR
-</UL>
-
-<P><STRONG><a name="[fc]"></a>BLE_Client_Initialize</STRONG> (Thumb, 24 bytes, Stack size 8 bytes, hal_ble_client.o(i.BLE_Client_Initialize))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = BLE_Client_Initialize &rArr; Process_Start
-</UL>
-<BR>[Calls]<UL><LI><a href="#[fd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_Start
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1ed]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;USR_Init
-</UL>
-
-<P><STRONG><a name="[b5]"></a>BLE_Client_Push</STRONG> (Thumb, 70 bytes, Stack size 12 bytes, hal_ble_client.o(i.BLE_Client_Push))
-<BR><BR>[Stack]<UL><LI>Max Depth = 12<LI>Call Chain = BLE_Client_Push
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> usr.o(i.usr1_Init)
-</UL>
-<P><STRONG><a name="[38]"></a>BLE_Client_Rx_Process</STRONG> (Thumb, 210 bytes, Stack size 16 bytes, hal_ble_client.o(i.BLE_Client_Rx_Process))
-<BR><BR>[Stack]<UL><LI>Max Depth = 40<LI>Call Chain = BLE_Client_Rx_Process &rArr; Protocol
-</UL>
-<BR>[Calls]<UL><LI><a href="#[101]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Protocol
-<LI><a href="#[100]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Discard
-<LI><a href="#[fe]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;CheckLen
-<LI><a href="#[ff]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;CheckByte
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> hal_ble_client.o(i.BLE_Client_Initialize)
-</UL>
-<P><STRONG><a name="[199]"></a>BLE_Client_Rx_Regist</STRONG> (Thumb, 70 bytes, Stack size 8 bytes, hal_ble_client.o(i.BLE_Client_Rx_Regist))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = BLE_Client_Rx_Regist
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1f3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_charge_init
-<LI><a href="#[1f0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_battery_init
-<LI><a href="#[1fe]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_switchimu_Init
-<LI><a href="#[1f9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_step_Init
-<LI><a href="#[200]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_safe_Init
-<LI><a href="#[203]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_pair_Initialize
-<LI><a href="#[1fc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_ota_Init
-<LI><a href="#[1fa]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_game_Init
-<LI><a href="#[1fd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_connect_manage_Init
-<LI><a href="#[1f5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_client_Initialize
-<LI><a href="#[201]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_Authen_Init
-<LI><a href="#[195]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;MT_Init
-</UL>
-
-<P><STRONG><a name="[102]"></a>BLE_Client_Send</STRONG> (Thumb, 168 bytes, Stack size 288 bytes, hal_ble_client.o(i.BLE_Client_Send))
-<BR><BR>[Stack]<UL><LI>Max Depth = 408<LI>Call Chain = BLE_Client_Send &rArr; send_bytes_client &rArr; ble_nus_data_send &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[103]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;send_bytes_client
-</UL>
-<BR>[Called By]<UL><LI><a href="#[107]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Client_Tx_Send
-<LI><a href="#[124]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Except_TxError
-<LI><a href="#[39]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Client_Tx_Process
-</UL>
-
-<P><STRONG><a name="[105]"></a>BLE_Client_Tx_Clear</STRONG> (Thumb, 34 bytes, Stack size 0 bytes, hal_ble_client.o(i.BLE_Client_Tx_Clear))
-<BR><BR>[Called By]<UL><LI><a href="#[39]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Client_Tx_Process
-</UL>
-
-<P><STRONG><a name="[39]"></a>BLE_Client_Tx_Process</STRONG> (Thumb, 128 bytes, Stack size 16 bytes, hal_ble_client.o(i.BLE_Client_Tx_Process))
-<BR><BR>[Stack]<UL><LI>Max Depth = 424<LI>Call Chain = BLE_Client_Tx_Process &rArr; BLE_Client_Send &rArr; send_bytes_client &rArr; ble_nus_data_send &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[104]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;TIME_GetTicks
-<LI><a href="#[106]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_SetHoldOn
-<LI><a href="#[102]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Client_Send
-<LI><a href="#[105]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Client_Tx_Clear
-</UL>
-<BR>[Address Reference Count : 2]<UL><LI> hal_ble_client.o(i.BLE_Client_Tx_Process)
-<LI> hal_ble_client.o(i.BLE_Client_Initialize)
-</UL>
-<P><STRONG><a name="[107]"></a>BLE_Client_Tx_Send</STRONG> (Thumb, 92 bytes, Stack size 24 bytes, hal_ble_client.o(i.BLE_Client_Tx_Send))
-<BR><BR>[Stack]<UL><LI>Max Depth = 432<LI>Call Chain = BLE_Client_Tx_Send &rArr; BLE_Client_Send &rArr; send_bytes_client &rArr; ble_nus_data_send &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[102]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Client_Send
-</UL>
-<BR>[Called By]<UL><LI><a href="#[274]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_step_RealSendClient
-<LI><a href="#[24f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_client_infomation_Send
-<LI><a href="#[1b1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_client_DataUpdate_Send
-<LI><a href="#[24d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_client_SendStepN
-<LI><a href="#[24c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_client_SendStepAll
-<LI><a href="#[52]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_BatDispaly_Process_N
-<LI><a href="#[6d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_BatDispaly_Process
-<LI><a href="#[3e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_BLE_Host_R_ERR
-<LI><a href="#[16b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;send_protocol
-<LI><a href="#[67]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LossPack_process
-<LI><a href="#[5c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_Host_BLE_CONNET_R
-<LI><a href="#[5b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_Client_BLE_CONNET_R
-<LI><a href="#[54]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_BLE_Client_R_UPDATE
-<LI><a href="#[6b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_BLE_Host_R_DFU
-<LI><a href="#[6a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_BLE_Client_R_DFU
-<LI><a href="#[69]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_ota_Process
-<LI><a href="#[241]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_ble_send_mac
-<LI><a href="#[9c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_BLE_Host_R_CHARGE
-<LI><a href="#[2ee]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_send_charge
-</UL>
-
-<P><STRONG><a name="[108]"></a>BLE_Host_Initialize</STRONG> (Thumb, 24 bytes, Stack size 8 bytes, hal_ble_host.o(i.BLE_Host_Initialize))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = BLE_Host_Initialize &rArr; Process_Start
-</UL>
-<BR>[Calls]<UL><LI><a href="#[fd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_Start
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1ed]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;USR_Init
-</UL>
-
-<P><STRONG><a name="[b6]"></a>BLE_Host_Push</STRONG> (Thumb, 118 bytes, Stack size 24 bytes, hal_ble_host.o(i.BLE_Host_Push))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = BLE_Host_Push
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> usr.o(i.usr1_Init)
-</UL>
-<P><STRONG><a name="[3a]"></a>BLE_Host_Rx_Process</STRONG> (Thumb, 210 bytes, Stack size 16 bytes, hal_ble_host.o(i.BLE_Host_Rx_Process))
-<BR><BR>[Stack]<UL><LI>Max Depth = 888<LI>Call Chain = BLE_Host_Rx_Process &rArr; Protocol &rArr; BLE_Host_Tx_Send &rArr; BLE_Host_Send &rArr; send_bytes_server &rArr; ble_nus_c_string_send &rArr; nrf_ble_gq_item_add &rArr; queue_process &rArr; nrf_memobj_read &rArr; memobj_op
-</UL>
-<BR>[Calls]<UL><LI><a href="#[10c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Protocol
-<LI><a href="#[10b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Discard
-<LI><a href="#[109]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;CheckLen
-<LI><a href="#[10a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;CheckByte
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> hal_ble_host.o(i.BLE_Host_Initialize)
-</UL>
-<P><STRONG><a name="[129]"></a>BLE_Host_Rx_Regist</STRONG> (Thumb, 70 bytes, Stack size 8 bytes, hal_ble_host.o(i.BLE_Host_Rx_Regist))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = BLE_Host_Rx_Regist
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1f3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_charge_init
-<LI><a href="#[1f9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_step_Init
-<LI><a href="#[203]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_pair_Initialize
-<LI><a href="#[1fc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_ota_Init
-<LI><a href="#[1f6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_host_Initialize
-<LI><a href="#[1fd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_connect_manage_Init
-<LI><a href="#[128]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Exception_Init
-</UL>
-
-<P><STRONG><a name="[259]"></a>BLE_Host_Rx_Regist_Game</STRONG> (Thumb, 10 bytes, Stack size 0 bytes, hal_ble_host.o(i.BLE_Host_Rx_Regist_Game))
-<BR><BR>[Called By]<UL><LI><a href="#[1ff]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_data_transfer_Init
-</UL>
-
-<P><STRONG><a name="[10d]"></a>BLE_Host_Send</STRONG> (Thumb, 168 bytes, Stack size 288 bytes, hal_ble_host.o(i.BLE_Host_Send))
-<BR><BR>[Stack]<UL><LI>Max Depth = 568<LI>Call Chain = BLE_Host_Send &rArr; send_bytes_server &rArr; ble_nus_c_string_send &rArr; nrf_ble_gq_item_add &rArr; queue_process &rArr; nrf_memobj_read &rArr; memobj_op
-</UL>
-<BR>[Calls]<UL><LI><a href="#[10e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;send_bytes_server
-</UL>
-<BR>[Called By]<UL><LI><a href="#[110]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Host_Tx_Send
-<LI><a href="#[3b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Host_Tx_Process
-</UL>
-
-<P><STRONG><a name="[10f]"></a>BLE_Host_Tx_Clear</STRONG> (Thumb, 34 bytes, Stack size 0 bytes, hal_ble_host.o(i.BLE_Host_Tx_Clear))
-<BR><BR>[Called By]<UL><LI><a href="#[5a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_connect_LED_Process
-<LI><a href="#[3b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Host_Tx_Process
-</UL>
-
-<P><STRONG><a name="[3b]"></a>BLE_Host_Tx_Process</STRONG> (Thumb, 128 bytes, Stack size 16 bytes, hal_ble_host.o(i.BLE_Host_Tx_Process))
-<BR><BR>[Stack]<UL><LI>Max Depth = 584<LI>Call Chain = BLE_Host_Tx_Process &rArr; BLE_Host_Send &rArr; send_bytes_server &rArr; ble_nus_c_string_send &rArr; nrf_ble_gq_item_add &rArr; queue_process &rArr; nrf_memobj_read &rArr; memobj_op
-</UL>
-<BR>[Calls]<UL><LI><a href="#[104]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;TIME_GetTicks
-<LI><a href="#[106]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_SetHoldOn
-<LI><a href="#[10f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Host_Tx_Clear
-<LI><a href="#[10d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Host_Send
-</UL>
-<BR>[Address Reference Count : 2]<UL><LI> hal_ble_host.o(i.BLE_Host_Initialize)
-<LI> hal_ble_host.o(i.BLE_Host_Tx_Process)
-</UL>
-<P><STRONG><a name="[110]"></a>BLE_Host_Tx_Send</STRONG> (Thumb, 92 bytes, Stack size 24 bytes, hal_ble_host.o(i.BLE_Host_Tx_Send))
-<BR><BR>[Stack]<UL><LI>Max Depth = 592<LI>Call Chain = BLE_Host_Tx_Send &rArr; BLE_Host_Send &rArr; send_bytes_server &rArr; ble_nus_c_string_send &rArr; nrf_ble_gq_item_add &rArr; queue_process &rArr; nrf_memobj_read &rArr; memobj_op
-</UL>
-<BR>[Calls]<UL><LI><a href="#[10d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Host_Send
-</UL>
-<BR>[Called By]<UL><LI><a href="#[63]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_BLE_Client_R_GAMEMODE
-<LI><a href="#[266]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_game_notify_host
-<LI><a href="#[64]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_AutoOutgame_Process
-<LI><a href="#[78]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_BLE_Client_R_REALTIMESTEP
-<LI><a href="#[79]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_step_RealConnectProcess
-<LI><a href="#[268]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_host_GetClientInfo
-<LI><a href="#[250]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_host_GetClientData
-<LI><a href="#[51]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_BLE_Client_BLE_AUTHEN
-<LI><a href="#[50]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_Authen_Process
-<LI><a href="#[75]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_BLE_RESTSETTING
-<LI><a href="#[7d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_BLE_Client_R_SWITCH_IMU
-<LI><a href="#[5a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_connect_LED_Process
-<LI><a href="#[5b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_Client_BLE_CONNET_R
-<LI><a href="#[5d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_BLE_BLINK_LED
-<LI><a href="#[6a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_BLE_Client_R_DFU
-<LI><a href="#[45]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_BLE_Client_R_SHOCK
-<LI><a href="#[10c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Protocol
-<LI><a href="#[241]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_ble_send_mac
-<LI><a href="#[9b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_BLE_Client_R_CHARGE
-</UL>
-
-<P><STRONG><a name="[258]"></a>Ble_Host_Connectd_Evt_Regist</STRONG> (Thumb, 62 bytes, Stack size 0 bytes, host.o(i.Ble_Host_Connectd_Evt_Regist))
-<BR><BR>[Called By]<UL><LI><a href="#[1fd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_connect_manage_Init
-</UL>
-
-<P><STRONG><a name="[257]"></a>Ble_Slave_Connectd_Evt_Regist</STRONG> (Thumb, 62 bytes, Stack size 0 bytes, slave.o(i.Ble_Slave_Connectd_Evt_Regist))
-<BR><BR>[Called By]<UL><LI><a href="#[1fd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_connect_manage_Init
-</UL>
-
-<P><STRONG><a name="[111]"></a>Ble_update_conn_interval</STRONG> (Thumb, 214 bytes, Stack size 40 bytes, host.o(i.Ble_update_conn_interval))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4856<LI>Call Chain = Ble_update_conn_interval &rArr; app_error_handler &rArr; app_error_fault_handler &rArr; Flash_SaveLog &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[d1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_error_handler
-<LI><a href="#[112]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_f2d
-<LI><a href="#[113]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_cdrcmple
-</UL>
-<BR>[Called By]<UL><LI><a href="#[57]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_connect_Process
-</UL>
-
-<P><STRONG><a name="[114]"></a>Continuous_scan_start</STRONG> (Thumb, 64 bytes, Stack size 16 bytes, host.o(i.Continuous_scan_start))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4832<LI>Call Chain = Continuous_scan_start &rArr; app_error_handler &rArr; app_error_fault_handler &rArr; Flash_SaveLog &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[115]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_scan_stop
-<LI><a href="#[d1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_error_handler
-<LI><a href="#[116]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_scan_start
-</UL>
-<BR>[Called By]<UL><LI><a href="#[489]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_trigger_callback
-</UL>
-
-<P><STRONG><a name="[a7]"></a>Event_self_check</STRONG> (Thumb, 8 bytes, Stack size 0 bytes, hal_charge.o(i.Event_self_check))
-<BR>[Address Reference Count : 1]<UL><LI> hal_charge.o(i.open_one_shel)
-</UL>
-<P><STRONG><a name="[3ed]"></a>Except_ClearExceptype</STRONG> (Thumb, 36 bytes, Stack size 0 bytes, exception.o(i.Except_ClearExceptype))
-<BR><BR>[Called By]<UL><LI><a href="#[3a5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;monitor_sensor_data
-</UL>
-
-<P><STRONG><a name="[2f4]"></a>Except_Get_Battery_Record_Buff</STRONG> (Thumb, 4 bytes, Stack size 0 bytes, exception.o(i.Except_Get_Battery_Record_Buff))
-<BR><BR>[Called By]<UL><LI><a href="#[2f3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_init
-</UL>
-
-<P><STRONG><a name="[11d]"></a>Except_Get_Cur_Porcess_ID</STRONG> (Thumb, 98 bytes, Stack size 40 bytes, exception.o(i.Except_Get_Cur_Porcess_ID))
-<BR><BR>[Stack]<UL><LI>Max Depth = 128<LI>Call Chain = Except_Get_Cur_Porcess_ID &rArr; __aeabi_drsub &rArr; __aeabi_dadd &rArr; _double_epilogue &rArr; _double_round
-</UL>
-<BR>[Calls]<UL><LI><a href="#[e3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_ui2d
-<LI><a href="#[df]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_drsub
-<LI><a href="#[e1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_ddiv
-<LI><a href="#[e5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_d2uiz
-<LI><a href="#[11e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Get_FeedWatchDogTime
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1bb]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_App
-</UL>
-
-<P><STRONG><a name="[1bc]"></a>Except_Get_End_Porcess_ID</STRONG> (Thumb, 14 bytes, Stack size 0 bytes, exception.o(i.Except_Get_End_Porcess_ID))
-<BR><BR>[Called By]<UL><LI><a href="#[1bb]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_App
-</UL>
-
-<P><STRONG><a name="[3ec]"></a>Except_IsError</STRONG> (Thumb, 16 bytes, Stack size 0 bytes, exception.o(i.Except_IsError))
-<BR><BR>[Called By]<UL><LI><a href="#[3a5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;monitor_sensor_data
-</UL>
-
-<P><STRONG><a name="[3eb]"></a>Except_SetExceptype</STRONG> (Thumb, 28 bytes, Stack size 0 bytes, exception.o(i.Except_SetExceptype))
-<BR><BR>[Called By]<UL><LI><a href="#[3a5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;monitor_sensor_data
-</UL>
-
-<P><STRONG><a name="[124]"></a>Except_TxError</STRONG> (Thumb, 100 bytes, Stack size 272 bytes, exception.o(i.Except_TxError))
-<BR><BR>[Stack]<UL><LI>Max Depth = 680<LI>Call Chain = Except_TxError &rArr; BLE_Client_Send &rArr; send_bytes_client &rArr; ble_nus_data_send &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[126]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_Get_isHost
-<LI><a href="#[102]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Client_Send
-<LI><a href="#[125]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;strlen
-<LI><a href="#[127]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy
-</UL>
-<BR>[Called By]<UL><LI><a href="#[3d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Exception_UnkownReset_Info_Send_Process
-<LI><a href="#[200]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_safe_Init
-<LI><a href="#[131]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_Initialize
-<LI><a href="#[62]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_game_Process
-<LI><a href="#[24c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_client_SendStepAll
-<LI><a href="#[56]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_client_step_Process
-<LI><a href="#[13c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_SaveStep
-<LI><a href="#[af]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_process
-<LI><a href="#[51]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_BLE_Client_BLE_AUTHEN
-<LI><a href="#[46]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;PWR_Process
-<LI><a href="#[74]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_safe_Process
-<LI><a href="#[3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;sdflash_write
-<LI><a href="#[4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;sdflash_page_erase
-<LI><a href="#[7d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_BLE_Client_R_SWITCH_IMU
-<LI><a href="#[57]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_connect_Process
-<LI><a href="#[6c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_ota_clear_flash
-<LI><a href="#[69]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_ota_Process
-<LI><a href="#[98]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_battery_Process
-<LI><a href="#[26f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_pair_flash_save
-<LI><a href="#[4d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bsp_rtc_init_process
-<LI><a href="#[4b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bsp_rtc_config_process
-<LI><a href="#[9e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_qma_Porcess
-<LI><a href="#[3a4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;monitor_sensor_no_data
-<LI><a href="#[3a5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;monitor_sensor_data
-<LI><a href="#[96]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_Process
-<LI><a href="#[49]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bsp_spi0_init_process
-<LI><a href="#[86]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bsp_wdt_init_process
-<LI><a href="#[47]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bsp_pwm_init_process
-<LI><a href="#[91]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qmc_iic_error_report_process
-<LI><a href="#[8e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_spi_error_report_process
-<LI><a href="#[81]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bsp_ble_dfu_process
-</UL>
-
-<P><STRONG><a name="[49f]"></a>Except_Unkown_Reset_WDT_Set</STRONG> (Thumb, 28 bytes, Stack size 0 bytes, exception.o(i.Except_Unkown_Reset_WDT_Set))
-<BR><BR>[Called By]<UL><LI><a href="#[b7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;wdt_event_handler
-</UL>
-
-<P><STRONG><a name="[128]"></a>Exception_Init</STRONG> (Thumb, 92 bytes, Stack size 8 bytes, exception.o(i.Exception_Init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = Exception_Init &rArr; Process_Start
-</UL>
-<BR>[Calls]<UL><LI><a href="#[fd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_Start
-<LI><a href="#[129]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Host_Rx_Regist
-<LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
-<LI><a href="#[d7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr
-<LI><a href="#[fb]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy4
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1a5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;PRE_Init
-</UL>
-
-<P><STRONG><a name="[20a]"></a>FPS_process</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, system.o(i.FPS_process))
-<BR><BR>[Called By]<UL><LI><a href="#[205]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;USR_Process
-</UL>
-
-<P><STRONG><a name="[12c]"></a>Flash_DeleteAllBackup</STRONG> (Thumb, 44 bytes, Stack size 16 bytes, app_flash.o(i.Flash_DeleteAllBackup))
-<BR><BR>[Stack]<UL><LI>Max Depth = 752<LI>Call Chain = Flash_DeleteAllBackup &rArr; sdflash_page_erase &rArr; Except_TxError &rArr; BLE_Client_Send &rArr; send_bytes_client &rArr; ble_nus_data_send &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;sdflash_page_erase
-</UL>
-<BR>[Called By]<UL><LI><a href="#[af]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_process
-<LI><a href="#[75]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_BLE_RESTSETTING
-<LI><a href="#[74]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_safe_Process
-</UL>
-
-<P><STRONG><a name="[12d]"></a>Flash_DeleteAllInfor</STRONG> (Thumb, 44 bytes, Stack size 16 bytes, app_flash.o(i.Flash_DeleteAllInfor))
-<BR><BR>[Stack]<UL><LI>Max Depth = 752<LI>Call Chain = Flash_DeleteAllInfor &rArr; sdflash_page_erase &rArr; Except_TxError &rArr; BLE_Client_Send &rArr; send_bytes_client &rArr; ble_nus_data_send &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;sdflash_page_erase
-</UL>
-<BR>[Called By]<UL><LI><a href="#[131]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_Initialize
-<LI><a href="#[af]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_process
-<LI><a href="#[75]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_BLE_RESTSETTING
-<LI><a href="#[74]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_safe_Process
-</UL>
-
-<P><STRONG><a name="[12e]"></a>Flash_DeleteAllStep</STRONG> (Thumb, 44 bytes, Stack size 16 bytes, app_flash.o(i.Flash_DeleteAllStep))
-<BR><BR>[Stack]<UL><LI>Max Depth = 752<LI>Call Chain = Flash_DeleteAllStep &rArr; sdflash_page_erase &rArr; Except_TxError &rArr; BLE_Client_Send &rArr; send_bytes_client &rArr; ble_nus_data_send &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;sdflash_page_erase
-</UL>
-<BR>[Called By]<UL><LI><a href="#[131]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_Initialize
-<LI><a href="#[13c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_SaveStep
-<LI><a href="#[af]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_process
-<LI><a href="#[75]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_BLE_RESTSETTING
-<LI><a href="#[74]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_safe_Process
-<LI><a href="#[26f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_pair_flash_save
-<LI><a href="#[81]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bsp_ble_dfu_process
-</UL>
-
-<P><STRONG><a name="[12f]"></a>Flash_GetBackup</STRONG> (Thumb, 18 bytes, Stack size 8 bytes, app_flash.o(i.Flash_GetBackup))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = Flash_GetBackup &rArr; flash_Data_Read
-</UL>
-<BR>[Calls]<UL><LI><a href="#[130]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;flash_Data_Read
-</UL>
-<BR>[Called By]<UL><LI><a href="#[131]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_Initialize
-</UL>
-
-<P><STRONG><a name="[131]"></a>Flash_Initialize</STRONG> (Thumb, 890 bytes, Stack size 24 bytes, app_flash.o(i.Flash_Initialize))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4552<LI>Call Chain = Flash_Initialize &rArr; pm_add &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[132]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_SaveBackup
-<LI><a href="#[12e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_DeleteAllStep
-<LI><a href="#[12d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_DeleteAllInfor
-<LI><a href="#[124]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Except_TxError
-<LI><a href="#[135]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;pm_get_length
-<LI><a href="#[136]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;pm_find
-<LI><a href="#[138]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;pm_delete
-<LI><a href="#[137]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;pm_add
-<LI><a href="#[134]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;minfds_init
-<LI><a href="#[12f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_GetBackup
-<LI><a href="#[133]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__NVIC_SystemReset
-<LI><a href="#[125]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;strlen
-<LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1a5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;PRE_Init
-</UL>
-
-<P><STRONG><a name="[132]"></a>Flash_SaveBackup</STRONG> (Thumb, 70 bytes, Stack size 16 bytes, app_flash.o(i.Flash_SaveBackup))
-<BR><BR>[Stack]<UL><LI>Max Depth = 760<LI>Call Chain = Flash_SaveBackup &rArr; sdflash_write &rArr; Except_TxError &rArr; BLE_Client_Send &rArr; send_bytes_client &rArr; ble_nus_data_send &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;sdflash_write
-<LI><a href="#[4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;sdflash_page_erase
-</UL>
-<BR>[Called By]<UL><LI><a href="#[131]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_Initialize
-<LI><a href="#[af]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_process
-<LI><a href="#[51]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_BLE_Client_BLE_AUTHEN
-<LI><a href="#[46]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;PWR_Process
-<LI><a href="#[74]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_safe_Process
-<LI><a href="#[7d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_BLE_Client_R_SWITCH_IMU
-<LI><a href="#[6c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_ota_clear_flash
-<LI><a href="#[26f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_pair_flash_save
-<LI><a href="#[81]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bsp_ble_dfu_process
-</UL>
-
-<P><STRONG><a name="[139]"></a>Flash_SaveInfomation</STRONG> (Thumb, 86 bytes, Stack size 24 bytes, app_flash.o(i.Flash_SaveInfomation))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4584<LI>Call Chain = Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[13a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;pm_update
-<LI><a href="#[125]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;strlen
-</UL>
-<BR>[Called By]<UL><LI><a href="#[200]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_safe_Init
-<LI><a href="#[13c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_SaveStep
-<LI><a href="#[af]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_process
-<LI><a href="#[13b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_SaveLog
-<LI><a href="#[51]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_BLE_Client_BLE_AUTHEN
-<LI><a href="#[46]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;PWR_Process
-<LI><a href="#[6c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_ota_clear_flash
-<LI><a href="#[26f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_pair_flash_save
-<LI><a href="#[81]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bsp_ble_dfu_process
-</UL>
-
-<P><STRONG><a name="[13b]"></a>Flash_SaveLog</STRONG> (Thumb, 146 bytes, Stack size 24 bytes, app_flash.o(i.Flash_SaveLog))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4608<LI>Call Chain = Flash_SaveLog &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[139]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_SaveInfomation
-<LI><a href="#[12b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__2sprintf
-<LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
-<LI><a href="#[127]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy
-</UL>
-<BR>[Called By]<UL><LI><a href="#[a2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_error_fault_handler
-</UL>
-
-<P><STRONG><a name="[13c]"></a>Flash_SaveStep</STRONG> (Thumb, 294 bytes, Stack size 32 bytes, app_flash.o(i.Flash_SaveStep))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4616<LI>Call Chain = Flash_SaveStep &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[13e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_step_GetStep_R
-<LI><a href="#[13d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_step_GetStep_L
-<LI><a href="#[139]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_SaveInfomation
-<LI><a href="#[12e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_DeleteAllStep
-<LI><a href="#[124]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Except_TxError
-<LI><a href="#[3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;sdflash_write
-<LI><a href="#[135]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;pm_get_length
-<LI><a href="#[136]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;pm_find
-<LI><a href="#[125]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;strlen
-</UL>
-<BR>[Called By]<UL><LI><a href="#[56]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_client_step_Process
-<LI><a href="#[af]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_process
-<LI><a href="#[46]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;PWR_Process
-<LI><a href="#[6c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_ota_clear_flash
-</UL>
-
-<P><STRONG><a name="[1ae]"></a>GetBatteryPersent</STRONG> (Thumb, 54 bytes, Stack size 0 bytes, hal_battery_nopowerenpin.o(i.GetBatteryPersent))
-<BR><BR>[Called By]<UL><LI><a href="#[1b1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_client_DataUpdate_Send
-<LI><a href="#[52]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_BatDispaly_Process_N
-<LI><a href="#[6d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_BatDispaly_Process
-<LI><a href="#[46]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;PWR_Process
-<LI><a href="#[9a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_charge_Process
-</UL>
-
-<P><STRONG><a name="[11e]"></a>Get_FeedWatchDogTime</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, bsp_wdt.o(i.Get_FeedWatchDogTime))
-<BR><BR>[Called By]<UL><LI><a href="#[11d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Except_Get_Cur_Porcess_ID
-</UL>
-
-<P><STRONG><a name="[242]"></a>Get_MACaddr</STRONG> (Thumb, 38 bytes, Stack size 0 bytes, slave.o(i.Get_MACaddr))
-<BR><BR>[Called By]<UL><LI><a href="#[24f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_client_infomation_Send
-<LI><a href="#[69]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_ota_Process
-<LI><a href="#[72]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_Host_BLE_PAIR
-<LI><a href="#[71]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_Client_BLE_PAIR
-<LI><a href="#[241]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_ble_send_mac
-</UL>
-
-<P><STRONG><a name="[7]"></a>HardFault_Handler</STRONG> (Thumb, 60 bytes, Stack size 0 bytes, exception.o(i.HardFault_Handler))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = HardFault_Handler &rArr; Except_NotOSHardFault_Handler
-</UL>
-<BR>[Calls]<UL><LI><a href="#[13f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__NVIC_SystemReset
-<LI><a href="#[123]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Except_NotOSHardFault_Handler
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> arm_startup_nrf52.o(RESET)
-</UL>
-<P><STRONG><a name="[143]"></a>IIC_BACK_Init</STRONG> (Thumb, 64 bytes, Stack size 16 bytes, drv_iic_back.o(i.IIC_BACK_Init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 36<LI>Call Chain = IIC_BACK_Init &rArr; nrf_gpio_cfg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[146]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_set
-<LI><a href="#[145]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_cfg_watcher
-<LI><a href="#[144]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_cfg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[37c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qmc6310_power_on
-<LI><a href="#[374]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qmc6310_Init
-</UL>
-
-<P><STRONG><a name="[148]"></a>IIC_BACK_ReadBytes</STRONG> (Thumb, 118 bytes, Stack size 24 bytes, drv_iic_back.o(i.IIC_BACK_ReadBytes))
-<BR><BR>[Stack]<UL><LI>Max Depth = 56<LI>Call Chain = IIC_BACK_ReadBytes &rArr; IIC_BACK_WaitACK &rArr; IIC_BACK_Stop &rArr; nrfx_coredep_delay_us
-</UL>
-<BR>[Calls]<UL><LI><a href="#[14b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_BACK_WaitACK
-<LI><a href="#[14d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_BACK_Stop
-<LI><a href="#[149]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_BACK_Start
-<LI><a href="#[14a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_BACK_SendByte
-<LI><a href="#[14c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_BACK_RecByte
-<LI><a href="#[147]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_BACK_NoACK
-<LI><a href="#[140]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_BACK_ACK
-</UL>
-<BR>[Called By]<UL><LI><a href="#[92]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;platform_read
-</UL>
-
-<P><STRONG><a name="[14f]"></a>IIC_BACK_WriteBytes</STRONG> (Thumb, 88 bytes, Stack size 24 bytes, drv_iic_back.o(i.IIC_BACK_WriteBytes))
-<BR><BR>[Stack]<UL><LI>Max Depth = 56<LI>Call Chain = IIC_BACK_WriteBytes &rArr; IIC_BACK_WaitACK &rArr; IIC_BACK_Stop &rArr; nrfx_coredep_delay_us
-</UL>
-<BR>[Calls]<UL><LI><a href="#[14b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_BACK_WaitACK
-<LI><a href="#[14d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_BACK_Stop
-<LI><a href="#[149]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_BACK_Start
-<LI><a href="#[14a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_BACK_SendByte
-</UL>
-<BR>[Called By]<UL><LI><a href="#[93]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;platform_write
-</UL>
-
-<P><STRONG><a name="[153]"></a>IIC_MIDDLE_Init</STRONG> (Thumb, 64 bytes, Stack size 16 bytes, drv_iic_middle.o(i.IIC_MIDDLE_Init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 36<LI>Call Chain = IIC_MIDDLE_Init &rArr; nrf_gpio_cfg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[156]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_set
-<LI><a href="#[155]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_cfg_watcher
-<LI><a href="#[154]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_cfg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[363]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qma_Init
-<LI><a href="#[36c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qma_power_on
-</UL>
-
-<P><STRONG><a name="[158]"></a>IIC_MIDDLE_ReadBytes</STRONG> (Thumb, 118 bytes, Stack size 24 bytes, drv_iic_middle.o(i.IIC_MIDDLE_ReadBytes))
-<BR><BR>[Stack]<UL><LI>Max Depth = 56<LI>Call Chain = IIC_MIDDLE_ReadBytes &rArr; IIC_MIDDLE_WaitACK &rArr; IIC_MIDDLE_Stop &rArr; nrfx_coredep_delay_us
-</UL>
-<BR>[Calls]<UL><LI><a href="#[15b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_MIDDLE_WaitACK
-<LI><a href="#[15d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_MIDDLE_Stop
-<LI><a href="#[159]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_MIDDLE_Start
-<LI><a href="#[15a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_MIDDLE_SendByte
-<LI><a href="#[15c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_MIDDLE_RecByte
-<LI><a href="#[157]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_MIDDLE_NoACK
-<LI><a href="#[150]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_MIDDLE_ACK
-</UL>
-<BR>[Called By]<UL><LI><a href="#[8f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;qma7981_platform_read
-</UL>
-
-<P><STRONG><a name="[15f]"></a>IIC_MIDDLE_WriteBytes</STRONG> (Thumb, 88 bytes, Stack size 24 bytes, drv_iic_middle.o(i.IIC_MIDDLE_WriteBytes))
-<BR><BR>[Stack]<UL><LI>Max Depth = 56<LI>Call Chain = IIC_MIDDLE_WriteBytes &rArr; IIC_MIDDLE_WaitACK &rArr; IIC_MIDDLE_Stop &rArr; nrfx_coredep_delay_us
-</UL>
-<BR>[Calls]<UL><LI><a href="#[15b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_MIDDLE_WaitACK
-<LI><a href="#[15d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_MIDDLE_Stop
-<LI><a href="#[159]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_MIDDLE_Start
-<LI><a href="#[15a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_MIDDLE_SendByte
-</UL>
-<BR>[Called By]<UL><LI><a href="#[90]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;qma7981_platform_write
-</UL>
-
-<P><STRONG><a name="[160]"></a>IMU_Dtalige</STRONG> (Thumb, 22 bytes, Stack size 8 bytes, dtalige.o(i.IMU_Dtalige))
-<BR><BR>[Stack]<UL><LI>Max Depth = 488<LI>Call Chain = IMU_Dtalige &rArr; IMU_dtalige &rArr; send_protocol &rArr; BLE_Client_Tx_Send &rArr; BLE_Client_Send &rArr; send_bytes_client &rArr; ble_nus_data_send &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[161]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IMU_dtalige
-</UL>
-<BR>[Called By]<UL><LI><a href="#[5e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_data_transfer_Process
-</UL>
-
-<P><STRONG><a name="[2ef]"></a>IMU_Dtalige_Rowdata_OFF</STRONG> (Thumb, 8 bytes, Stack size 0 bytes, dtalige.o(i.IMU_Dtalige_Rowdata_OFF))
-<BR><BR>[Called By]<UL><LI><a href="#[63]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_BLE_Client_R_GAMEMODE
-</UL>
-
-<P><STRONG><a name="[2f0]"></a>IMU_Dtalige_Rowdata_ON</STRONG> (Thumb, 8 bytes, Stack size 0 bytes, dtalige.o(i.IMU_Dtalige_Rowdata_ON))
-<BR><BR>[Called By]<UL><LI><a href="#[63]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_BLE_Client_R_GAMEMODE
-</UL>
-
-<P><STRONG><a name="[162]"></a>IMU_Process_motion_queue</STRONG> (Thumb, 286 bytes, Stack size 48 bytes, dtalige.o(i.IMU_Process_motion_queue))
-<BR><BR>[Stack]<UL><LI>Max Depth = 504<LI>Call Chain = IMU_Process_motion_queue &rArr; send_protocol &rArr; BLE_Client_Tx_Send &rArr; BLE_Client_Send &rArr; send_bytes_client &rArr; ble_nus_data_send &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[16b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;send_protocol
-<LI><a href="#[163]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;process_motion
-<LI><a href="#[164]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;get_foot_data
-<LI><a href="#[167]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;need_send_data
-<LI><a href="#[165]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;d_process_motion
-<LI><a href="#[169]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;d_integrate_left_right
-<LI><a href="#[16a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;d_get_game_package
-<LI><a href="#[166]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;d_get_foot_data
-<LI><a href="#[168]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;queue_in
-</UL>
-<BR>[Called By]<UL><LI><a href="#[3b0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;process_imu_data_front
-</UL>
-
-<P><STRONG><a name="[16c]"></a>IMU_Rec_data</STRONG> (Thumb, 68 bytes, Stack size 16 bytes, dtalige.o(i.IMU_Rec_data))
-<BR><BR>[Stack]<UL><LI>Max Depth = 28<LI>Call Chain = IMU_Rec_data &rArr; queue_in
-</UL>
-<BR>[Calls]<UL><LI><a href="#[168]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;queue_in
-<LI><a href="#[127]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy
-</UL>
-<BR>[Called By]<UL><LI><a href="#[5f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_data_transfer_set_SlaveData
-</UL>
-
-<P><STRONG><a name="[161]"></a>IMU_dtalige</STRONG> (Thumb, 420 bytes, Stack size 24 bytes, dtalige.o(i.IMU_dtalige))
-<BR><BR>[Stack]<UL><LI>Max Depth = 480<LI>Call Chain = IMU_dtalige &rArr; send_protocol &rArr; BLE_Client_Tx_Send &rArr; BLE_Client_Send &rArr; send_bytes_client &rArr; ble_nus_data_send &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[16b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;send_protocol
-<LI><a href="#[16f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;get_game_package
-<LI><a href="#[16d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;queue_reset
-<LI><a href="#[16e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;queue_out
-</UL>
-<BR>[Called By]<UL><LI><a href="#[160]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IMU_Dtalige
-</UL>
-
-<P><STRONG><a name="[170]"></a>Initialize</STRONG> (Thumb, 164 bytes, Stack size 16 bytes, footpdr.o(i.Initialize))
-<BR><BR>[Stack]<UL><LI>Max Depth = 328<LI>Call Chain = Initialize &rArr; init_attitude_matrix &rArr; __hardfp_sin &rArr; __ieee754_rem_pio2 &rArr; __aeabi_dadd &rArr; _double_epilogue &rArr; _double_round
-</UL>
-<BR>[Calls]<UL><LI><a href="#[171]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;init_attitude_matrix
-<LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
-<LI><a href="#[fb]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy4
-</UL>
-<BR>[Called By]<UL><LI><a href="#[3a9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;footPDR
-</UL>
-
-<P><STRONG><a name="[174]"></a>LED_Close_Enforce</STRONG> (Thumb, 18 bytes, Stack size 8 bytes, hal_led_ws2812.o(i.LED_Close_Enforce))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = LED_Close_Enforce &rArr; nrf_gpio_pin_write
-</UL>
-<BR>[Calls]<UL><LI><a href="#[175]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_write
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1aa]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;PWR_Off
-<LI><a href="#[6c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_ota_clear_flash
-</UL>
-
-<P><STRONG><a name="[176]"></a>LED_Init</STRONG> (Thumb, 126 bytes, Stack size 24 bytes, hal_led_ws2812.o(i.LED_Init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 156<LI>Call Chain = LED_Init &rArr; Pwm_SetComSequence &rArr; Pwm_Initialize &rArr; Pwm_init &rArr; nrfx_pwm_init &rArr; configure_pins
-</UL>
-<BR>[Calls]<UL><LI><a href="#[17d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Wakeup_Regist
-<LI><a href="#[17c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Sleep_Regist
-<LI><a href="#[fd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_Start
-<LI><a href="#[175]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_write
-<LI><a href="#[179]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SetPwm_DutyCycleThreshold
-<LI><a href="#[178]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SetPwm_Channels
-<LI><a href="#[177]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SetPwm_BaseClock
-<LI><a href="#[17b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Pwm_SetComSequence
-<LI><a href="#[17a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Pwm_Initialize
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1a5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;PRE_Init
-</UL>
-
-<P><STRONG><a name="[40]"></a>LED_Process</STRONG> (Thumb, 134 bytes, Stack size 8 bytes, hal_led_ws2812.o(i.LED_Process))
-<BR><BR>[Stack]<UL><LI>Max Depth = 96<LI>Call Chain = LED_Process &rArr; SetSimplePwmPlayBack &rArr; nrfx_pwm_simple_playback &rArr; start_playback &rArr; nrf_pwm_event_clear
-</UL>
-<BR>[Calls]<UL><LI><a href="#[17e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;WS2812_DisplayDot
-<LI><a href="#[175]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_write
-<LI><a href="#[17f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SetSimplePwmPlayBack
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> hal_led_ws2812.o(i.LED_Init)
-</UL>
-<P><STRONG><a name="[269]"></a>LED_SetColor</STRONG> (Thumb, 24 bytes, Stack size 0 bytes, hal_led_ws2812.o(i.LED_SetColor))
-<BR><BR>[Called By]<UL><LI><a href="#[70]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_led_blink_process
-</UL>
-
-<P><STRONG><a name="[122]"></a>LED_Start</STRONG> (Thumb, 56 bytes, Stack size 0 bytes, hal_led_ws2812.o(i.LED_Start))
-<BR><BR>[Called By]<UL><LI><a href="#[121]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Except_Led_OpenOnce
-<LI><a href="#[200]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_safe_Init
-<LI><a href="#[52]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_BatDispaly_Process_N
-<LI><a href="#[6d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_BatDispaly_Process
-<LI><a href="#[53]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_charge_Process
-<LI><a href="#[5d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_BLE_BLINK_LED
-<LI><a href="#[72]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_Host_BLE_PAIR
-<LI><a href="#[71]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_Client_BLE_PAIR
-<LI><a href="#[c8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_evt_handler
-</UL>
-
-<P><STRONG><a name="[120]"></a>LED_Stop</STRONG> (Thumb, 34 bytes, Stack size 0 bytes, hal_led_ws2812.o(i.LED_Stop))
-<BR><BR>[Called By]<UL><LI><a href="#[11f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Except_Led_Close
-<LI><a href="#[52]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_BatDispaly_Process_N
-<LI><a href="#[6d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_BatDispaly_Process
-<LI><a href="#[53]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_charge_Process
-<LI><a href="#[76]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_BLE_LEDON_PURPLE_process
-<LI><a href="#[5a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_connect_LED_Process
-<LI><a href="#[70]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_led_blink_process
-<LI><a href="#[6e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_pair_Right_Process
-<LI><a href="#[6f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_pair_Left_Process
-<LI><a href="#[83]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;host_ledclose_process
-</UL>
-
-<P><STRONG><a name="[67]"></a>LossPack_process</STRONG> (Thumb, 84 bytes, Stack size 24 bytes, app_losspack.o(i.LossPack_process))
-<BR><BR>[Stack]<UL><LI>Max Depth = 456<LI>Call Chain = LossPack_process &rArr; BLE_Client_Tx_Send &rArr; BLE_Client_Send &rArr; send_bytes_client &rArr; ble_nus_data_send &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[194]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;host_get_rssi
-<LI><a href="#[193]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_game_GetGameMode
-<LI><a href="#[107]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Client_Tx_Send
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> app_losspack.o(i.app_losspack_Init)
-</UL>
-<P><STRONG><a name="[195]"></a>MT_Init</STRONG> (Thumb, 100 bytes, Stack size 24 bytes, hal_mt.o(i.MT_Init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = MT_Init &rArr; Process_Start
-</UL>
-<BR>[Calls]<UL><LI><a href="#[fd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_Start
-<LI><a href="#[106]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_SetHoldOn
-<LI><a href="#[199]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Client_Rx_Regist
-<LI><a href="#[197]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;MT_Run
-<LI><a href="#[196]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_write
-<LI><a href="#[198]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;TIME_Regist
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1a5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;PRE_Init
-</UL>
-
-<P><STRONG><a name="[197]"></a>MT_Run</STRONG> (Thumb, 28 bytes, Stack size 8 bytes, hal_mt.o(i.MT_Run))
-<BR><BR>[Stack]<UL><LI>Max Depth = 20<LI>Call Chain = MT_Run &rArr; Process_SetHoldOn
-</UL>
-<BR>[Calls]<UL><LI><a href="#[106]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_SetHoldOn
-<LI><a href="#[196]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_write
-</UL>
-<BR>[Called By]<UL><LI><a href="#[195]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;MT_Init
-<LI><a href="#[46]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;PWR_Process
-<LI><a href="#[45]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_BLE_Client_R_SHOCK
-</UL>
-
-<P><STRONG><a name="[43]"></a>MT_TimerCounter</STRONG> (Thumb, 148 bytes, Stack size 8 bytes, hal_mt.o(i.MT_TimerCounter))
-<BR><BR>[Stack]<UL><LI>Max Depth = 20<LI>Call Chain = MT_TimerCounter &rArr; Process_SetHoldOn
-</UL>
-<BR>[Calls]<UL><LI><a href="#[106]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_SetHoldOn
-<LI><a href="#[196]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_write
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> hal_mt.o(i.MT_Init)
-</UL>
-<P><STRONG><a name="[44]"></a>MT_process</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, hal_mt.o(i.MT_process))
-<BR>[Address Reference Count : 3]<UL><LI> hal_mt.o(i.MT_Init)
-<LI> hal_mt.o(i.MT_Run)
-<LI> hal_mt.o(i.MT_TimerCounter)
-</UL>
-<P><STRONG><a name="[25f]"></a>Mahony_Init</STRONG> (Thumb, 86 bytes, Stack size 0 bytes, hal_mahonyahrs.o(i.Mahony_Init))
-<BR><BR>[Called By]<UL><LI><a href="#[1f4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_detect_Init
-<LI><a href="#[489]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_trigger_callback
-</UL>
-
-<P><STRONG><a name="[3d9]"></a>Mahony_M_GetPitch</STRONG> (Thumb, 8 bytes, Stack size 0 bytes, app_detectishost.o(i.Mahony_M_GetPitch))
-<BR><BR>[Called By]<UL><LI><a href="#[af]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_process
-<LI><a href="#[11c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;isLeftOrRight
-</UL>
-
-<P><STRONG><a name="[487]"></a>Mahony_M_GetRoll</STRONG> (Thumb, 8 bytes, Stack size 0 bytes, app_detectishost.o(i.Mahony_M_GetRoll))
-<BR><BR>[Called By]<UL><LI><a href="#[af]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_process
-</UL>
-
-<P><STRONG><a name="[488]"></a>Mahony_M_GetYaw</STRONG> (Thumb, 8 bytes, Stack size 0 bytes, app_detectishost.o(i.Mahony_M_GetYaw))
-<BR><BR>[Called By]<UL><LI><a href="#[af]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_process
-</UL>
-
-<P><STRONG><a name="[19c]"></a>Mahony_invSqrt</STRONG> (Thumb, 76 bytes, Stack size 0 bytes, hal_mahonyahrs.o(i.Mahony_invSqrt))
-<BR><BR>[Called By]<UL><LI><a href="#[19b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Mahony_update
-</UL>
-
-<P><STRONG><a name="[19a]"></a>Mahony_send_ANO</STRONG> (Thumb, 156 bytes, Stack size 280 bytes, hal_mahonyahrs.o(i.Mahony_send_ANO))
-<BR><BR>[Stack]<UL><LI>Max Depth = 400<LI>Call Chain = Mahony_send_ANO &rArr; send_bytes_client &rArr; ble_nus_data_send &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[103]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;send_bytes_client
-</UL>
-<BR>[Called By]<UL><LI><a href="#[af]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_process
-</UL>
-
-<P><STRONG><a name="[19b]"></a>Mahony_update</STRONG> (Thumb, 1640 bytes, Stack size 168 bytes, hal_mahonyahrs.o(i.Mahony_update))
-<BR><BR>[Stack]<UL><LI>Max Depth = 200<LI>Call Chain = Mahony_update &rArr; __hardfp_asinf &rArr; sqrtf
-</UL>
-<BR>[Calls]<UL><LI><a href="#[19c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Mahony_invSqrt
-<LI><a href="#[1a0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;quaternProd
-<LI><a href="#[1a1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;quaternConj
-<LI><a href="#[19d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_sqrtf
-<LI><a href="#[19e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_atan2f
-<LI><a href="#[19f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_asinf
-</UL>
-<BR>[Called By]<UL><LI><a href="#[af]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_process
-<LI><a href="#[b2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fb_data_notify_cb
-<LI><a href="#[11c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;isLeftOrRight
-</UL>
-
-<P><STRONG><a name="[f]"></a>POWER_CLOCK_IRQHandler</STRONG> (Thumb, 156 bytes, Stack size 8 bytes, nrfx_clock.o(i.POWER_CLOCK_IRQHandler))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = POWER_CLOCK_IRQHandler &rArr; nrf_clock_event_clear
-</UL>
-<BR>[Calls]<UL><LI><a href="#[1a4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_clock_int_disable
-<LI><a href="#[1a3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_clock_event_clear
-<LI><a href="#[1a2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_clock_event_check
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> arm_startup_nrf52.o(RESET)
-</UL>
-<P><STRONG><a name="[1a5]"></a>PRE_Init</STRONG> (Thumb, 32 bytes, Stack size 8 bytes, usr.o(i.PRE_Init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 5048<LI>Call Chain = PRE_Init &rArr; usr1_Init &rArr; slave_init &rArr; advertising_init &rArr; app_error_handler &rArr; app_error_fault_handler &rArr; Flash_SaveLog &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[1a8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_trigger_Init
-<LI><a href="#[1a7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;PWR_Init
-<LI><a href="#[195]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;MT_Init
-<LI><a href="#[176]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LED_Init
-<LI><a href="#[131]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_Initialize
-<LI><a href="#[128]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Exception_Init
-<LI><a href="#[1a6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;usr1_Init
-</UL>
-<BR>[Called By]<UL><LI><a href="#[34]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main
-</UL>
-
-<P><STRONG><a name="[2b]"></a>PWM0_IRQHandler</STRONG> (Thumb, 12 bytes, Stack size 8 bytes, nrfx_pwm.o(i.PWM0_IRQHandler))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = PWM0_IRQHandler &rArr; irq_handler &rArr; nrf_pwm_event_clear
-</UL>
-<BR>[Calls]<UL><LI><a href="#[1a9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;irq_handler
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> arm_startup_nrf52.o(RESET)
-</UL>
-<P><STRONG><a name="[1a7]"></a>PWR_Init</STRONG> (Thumb, 16 bytes, Stack size 8 bytes, app_power.o(i.PWR_Init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = PWR_Init &rArr; Process_Start
-</UL>
-<BR>[Calls]<UL><LI><a href="#[fd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_Start
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1a5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;PRE_Init
-</UL>
-
-<P><STRONG><a name="[1aa]"></a>PWR_Off</STRONG> (Thumb, 150 bytes, Stack size 24 bytes, app_power.o(i.PWR_Off))
-<BR><BR>[Stack]<UL><LI>Max Depth = 264<LI>Call Chain = PWR_Off &rArr; bll_imu_close &rArr; fml_imu_close &rArr; drv_lsm_power_on &rArr; SPI0_Init &rArr; nrf_drv_spi_init &rArr; nrfx_spim_init &rArr; nrfx_prs_acquire &rArr; app_util_critical_region_enter &rArr; sd_nvic_critical_region_enter
-</UL>
-<BR>[Calls]<UL><LI><a href="#[1ac]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qma_power_off
-<LI><a href="#[1ab]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_close
-<LI><a href="#[f2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ADC_RemovePinChannel
-<LI><a href="#[eb]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ADC_Disable
-<LI><a href="#[1ad]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_delay_ms
-<LI><a href="#[174]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LED_Close_Enforce
-</UL>
-<BR>[Called By]<UL><LI><a href="#[46]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;PWR_Process
-</UL>
-
-<P><STRONG><a name="[73]"></a>Pair_adv_cb</STRONG> (Thumb, 98 bytes, Stack size 8 bytes, app_pair.o(i.Pair_adv_cb))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = Pair_adv_cb
-</UL>
-<BR>[Calls]<UL><LI><a href="#[d7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> app_pair.o(i.app_pair_Right_Process)
-</UL>
-<P><STRONG><a name="[1ba]"></a>Process_All_Stop</STRONG> (Thumb, 20 bytes, Stack size 8 bytes, system.o(i.Process_All_Stop))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = Process_All_Stop
-</UL>
-<BR>[Calls]<UL><LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
-</UL>
-<BR>[Called By]<UL><LI><a href="#[489]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_trigger_callback
-</UL>
-
-<P><STRONG><a name="[1bb]"></a>Process_App</STRONG> (Thumb, 214 bytes, Stack size 16 bytes, system.o(i.Process_App))
-<BR><BR>[Stack]<UL><LI>Max Depth = 144<LI>Call Chain = Process_App &rArr; Except_Get_Cur_Porcess_ID &rArr; __aeabi_drsub &rArr; __aeabi_dadd &rArr; _double_epilogue &rArr; _double_round
-</UL>
-<BR>[Calls]<UL><LI><a href="#[104]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;TIME_GetTicks
-<LI><a href="#[1bc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Except_Get_End_Porcess_ID
-<LI><a href="#[11d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Except_Get_Cur_Porcess_ID
-</UL>
-<BR>[Called By]<UL><LI><a href="#[205]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;USR_Process
-</UL>
-
-<P><STRONG><a name="[106]"></a>Process_SetHoldOn</STRONG> (Thumb, 68 bytes, Stack size 12 bytes, system.o(i.Process_SetHoldOn))
-<BR><BR>[Stack]<UL><LI>Max Depth = 12<LI>Call Chain = Process_SetHoldOn
-</UL>
-<BR>[Called By]<UL><LI><a href="#[121]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Except_Led_OpenOnce
-<LI><a href="#[11f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Except_Led_Close
-<LI><a href="#[200]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_safe_Init
-<LI><a href="#[1f4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_detect_Init
-<LI><a href="#[195]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;MT_Init
-<LI><a href="#[63]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_BLE_Client_R_GAMEMODE
-<LI><a href="#[62]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_game_Process
-<LI><a href="#[52]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_BatDispaly_Process_N
-<LI><a href="#[6d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_BatDispaly_Process
-<LI><a href="#[489]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_trigger_callback
-<LI><a href="#[af]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_process
-<LI><a href="#[aa]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_continue_mt_process
-<LI><a href="#[53]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_charge_Process
-<LI><a href="#[197]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;MT_Run
-<LI><a href="#[76]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_BLE_LEDON_PURPLE_process
-<LI><a href="#[5e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_data_transfer_Process
-<LI><a href="#[57]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_connect_Process
-<LI><a href="#[5a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_connect_LED_Process
-<LI><a href="#[5d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_BLE_BLINK_LED
-<LI><a href="#[6a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_BLE_Client_R_DFU
-<LI><a href="#[2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_Client_BLE_DFU
-<LI><a href="#[43]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;MT_TimerCounter
-<LI><a href="#[3b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Host_Tx_Process
-<LI><a href="#[39]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Client_Tx_Process
-<LI><a href="#[46a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;one_byte_receive_init
-<LI><a href="#[3c0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;open_one_shel
-<LI><a href="#[9a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_charge_Process
-<LI><a href="#[96]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_Process
-<LI><a href="#[2ea]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_start_config
-<LI><a href="#[83]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;host_ledclose_process
-<LI><a href="#[c8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_evt_handler
-<LI><a href="#[81]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bsp_ble_dfu_process
-<LI><a href="#[2b9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_dfu_buttonless_on_ctrl_pt_write
-</UL>
-
-<P><STRONG><a name="[fd]"></a>Process_Start</STRONG> (Thumb, 204 bytes, Stack size 24 bytes, system.o(i.Process_Start))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = Process_Start
-</UL>
-<BR>[Calls]<UL><LI><a href="#[104]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;TIME_GetTicks
-</UL>
-<BR>[Called By]<UL><LI><a href="#[204]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;watchdog_init
-<LI><a href="#[1a8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_trigger_Init
-<LI><a href="#[1f1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_wearshoes_Init
-<LI><a href="#[1f2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_qma_Init
-<LI><a href="#[1f3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_charge_init
-<LI><a href="#[1f0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_battery_init
-<LI><a href="#[1f9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_step_Init
-<LI><a href="#[200]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_safe_Init
-<LI><a href="#[203]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_pair_Initialize
-<LI><a href="#[1f7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_overturn_Init
-<LI><a href="#[1fc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_ota_Init
-<LI><a href="#[1fb]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_math_Init
-<LI><a href="#[202]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_losspack_Init
-<LI><a href="#[1fa]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_game_Init
-<LI><a href="#[1f4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_detect_Init
-<LI><a href="#[1ff]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_data_transfer_Init
-<LI><a href="#[1fd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_connect_manage_Init
-<LI><a href="#[1f5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_client_Initialize
-<LI><a href="#[1f8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_charge_Init
-<LI><a href="#[201]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_Authen_Init
-<LI><a href="#[1e8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;TIME_Init
-<LI><a href="#[1a7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;PWR_Init
-<LI><a href="#[195]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;MT_Init
-<LI><a href="#[176]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LED_Init
-<LI><a href="#[128]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Exception_Init
-<LI><a href="#[108]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Host_Initialize
-<LI><a href="#[fc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Client_Initialize
-<LI><a href="#[208]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;rtc_sleep
-<LI><a href="#[24a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_client_step_Initialize
-<LI><a href="#[489]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_trigger_callback
-<LI><a href="#[af]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_process
-<LI><a href="#[9f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_wearshoes_Process
-<LI><a href="#[2eb]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bsp_ble_dfu_process_Initialize
-<LI><a href="#[46a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;one_byte_receive_init
-<LI><a href="#[4a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;rtc_tick_handler
-<LI><a href="#[3c0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;open_one_shel
-<LI><a href="#[374]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qmc6310_Init
-<LI><a href="#[30f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_Init
-<LI><a href="#[2df]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_Init
-<LI><a href="#[1ce]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI0_Init
-<LI><a href="#[1bd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Pwm_init
-<LI><a href="#[2db]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_stack_init
-</UL>
-
-<P><STRONG><a name="[265]"></a>Process_Stop</STRONG> (Thumb, 64 bytes, Stack size 8 bytes, system.o(i.Process_Stop))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = Process_Stop
-</UL>
-<BR>[Called By]<UL><LI><a href="#[af]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_process
-<LI><a href="#[264]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_detect_LR_process_stop
-<LI><a href="#[470]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;one_byte_receive_uninit
-<LI><a href="#[4d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bsp_rtc_init_process
-<LI><a href="#[4b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bsp_rtc_config_process
-<LI><a href="#[a8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;wait_times
-<LI><a href="#[49]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bsp_spi0_init_process
-<LI><a href="#[86]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bsp_wdt_init_process
-<LI><a href="#[47]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bsp_pwm_init_process
-</UL>
-
-<P><STRONG><a name="[26c]"></a>Process_UpdatePeroid</STRONG> (Thumb, 52 bytes, Stack size 8 bytes, system.o(i.Process_UpdatePeroid))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = Process_UpdatePeroid
-</UL>
-<BR>[Called By]<UL><LI><a href="#[ad]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_result_display_process
-<LI><a href="#[aa]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_continue_mt_process
-<LI><a href="#[69]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_ota_Process
-<LI><a href="#[98]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_battery_Process
-</UL>
-
-<P><STRONG><a name="[17a]"></a>Pwm_Initialize</STRONG> (Thumb, 8 bytes, Stack size 8 bytes, bsp_pwm.o(i.Pwm_Initialize))
-<BR><BR>[Stack]<UL><LI>Max Depth = 108<LI>Call Chain = Pwm_Initialize &rArr; Pwm_init &rArr; nrfx_pwm_init &rArr; configure_pins
-</UL>
-<BR>[Calls]<UL><LI><a href="#[1bd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Pwm_init
-</UL>
-<BR>[Called By]<UL><LI><a href="#[176]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LED_Init
-<LI><a href="#[17b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Pwm_SetComSequence
-<LI><a href="#[42]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_LED_Wakeup
-</UL>
-
-<P><STRONG><a name="[17b]"></a>Pwm_SetComSequence</STRONG> (Thumb, 46 bytes, Stack size 24 bytes, bsp_pwm.o(i.Pwm_SetComSequence))
-<BR><BR>[Stack]<UL><LI>Max Depth = 132<LI>Call Chain = Pwm_SetComSequence &rArr; Pwm_Initialize &rArr; Pwm_init &rArr; nrfx_pwm_init &rArr; configure_pins
-</UL>
-<BR>[Calls]<UL><LI><a href="#[1bf]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Pwm_UnInitialize
-<LI><a href="#[17a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Pwm_Initialize
-<LI><a href="#[1be]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SetPwm_ChannelsLoadMode
-</UL>
-<BR>[Called By]<UL><LI><a href="#[176]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LED_Init
-</UL>
-
-<P><STRONG><a name="[1bf]"></a>Pwm_UnInitialize</STRONG> (Thumb, 10 bytes, Stack size 8 bytes, bsp_pwm.o(i.Pwm_UnInitialize))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = Pwm_UnInitialize &rArr; nrfx_pwm_uninit
-</UL>
-<BR>[Calls]<UL><LI><a href="#[1c0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_pwm_uninit
-</UL>
-<BR>[Called By]<UL><LI><a href="#[17b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Pwm_SetComSequence
-<LI><a href="#[41]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_LED_Sleep
-</UL>
-
-<P><STRONG><a name="[20]"></a>RTC1_IRQHandler</STRONG> (Thumb, 14 bytes, Stack size 8 bytes, drv_rtc.o(i.RTC1_IRQHandler))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = RTC1_IRQHandler
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> arm_startup_nrf52.o(RESET)
-</UL>
-<P><STRONG><a name="[31]"></a>RTC2_IRQHandler</STRONG> (Thumb, 14 bytes, Stack size 8 bytes, nrfx_rtc.o(i.RTC2_IRQHandler))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = RTC2_IRQHandler &rArr; irq_handler &rArr; nrf_rtc_event_clear
-</UL>
-<BR>[Calls]<UL><LI><a href="#[1c2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;irq_handler
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> arm_startup_nrf52.o(RESET)
-</UL>
-<P><STRONG><a name="[1c3]"></a>RealTimeStep</STRONG> (Thumb, 1038 bytes, Stack size 80 bytes, detect_step_by_mag.o(i.RealTimeStep))
-<BR><BR>[Stack]<UL><LI>Max Depth = 168<LI>Call Chain = RealTimeStep &rArr; __aeabi_dmul &rArr; _double_epilogue &rArr; _double_round
-</UL>
-<BR>[Calls]<UL><LI><a href="#[e2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_i2d
-<LI><a href="#[e0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_dmul
-<LI><a href="#[113]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_cdrcmple
-</UL>
-<BR>[Called By]<UL><LI><a href="#[7b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;real_data_notify_cb
-</UL>
-
-<P><STRONG><a name="[16]"></a>SAADC_IRQHandler</STRONG> (Thumb, 456 bytes, Stack size 32 bytes, nrfx_saadc.o(i.SAADC_IRQHandler))
-<BR><BR>[Stack]<UL><LI>Max Depth = 40<LI>Call Chain = SAADC_IRQHandler &rArr; nrf_saadc_event_clear
-</UL>
-<BR>[Calls]<UL><LI><a href="#[1c6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_saadc_task_trigger
-<LI><a href="#[1c5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_saadc_event_clear
-<LI><a href="#[1c4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_saadc_event_check
-<LI><a href="#[1c7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_saadc_buffer_init
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> arm_startup_nrf52.o(RESET)
-</UL>
-<P><STRONG><a name="[1cb]"></a>SPI0_Disable</STRONG> (Thumb, 58 bytes, Stack size 8 bytes, bsp_spi.o(i.SPI0_Disable))
-<BR><BR>[Stack]<UL><LI>Max Depth = 68<LI>Call Chain = SPI0_Disable &rArr; nrf_drv_spi_uninit &rArr; nrfx_spim_uninit &rArr; nrf_gpio_cfg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[1cc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_cfg_default
-<LI><a href="#[1cd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_drv_spi_uninit
-<LI><a href="#[1c8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI0_CsSet
-</UL>
-<BR>[Called By]<UL><LI><a href="#[321]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_power_off
-<LI><a href="#[322]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_power_on
-<LI><a href="#[471]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;predo_hub
-</UL>
-
-<P><STRONG><a name="[1ce]"></a>SPI0_Init</STRONG> (Thumb, 100 bytes, Stack size 32 bytes, bsp_spi.o(i.SPI0_Init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 200<LI>Call Chain = SPI0_Init &rArr; nrf_drv_spi_init &rArr; nrfx_spim_init &rArr; nrfx_prs_acquire &rArr; app_util_critical_region_enter &rArr; sd_nvic_critical_region_enter
-</UL>
-<BR>[Calls]<UL><LI><a href="#[fd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_Start
-<LI><a href="#[1cf]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_drv_spi_init
-<LI><a href="#[1d0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_cfg_output
-</UL>
-<BR>[Called By]<UL><LI><a href="#[322]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_power_on
-<LI><a href="#[30f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_Init
-<LI><a href="#[237]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;afterdo_hub
-</UL>
-
-<P><STRONG><a name="[1d1]"></a>SPI0_OnlyReadReg</STRONG> (Thumb, 26 bytes, Stack size 24 bytes, bsp_spi.o(i.SPI0_OnlyReadReg))
-<BR><BR>[Stack]<UL><LI>Max Depth = 216<LI>Call Chain = SPI0_OnlyReadReg &rArr; SPI0_ReadWriteReg &rArr; SPI0_ReadWriteData &rArr; nrf_drv_spi_transfer &rArr; nrfx_spim_xfer &rArr; spim_xfer &rArr; nrf_spim_event_clear
-</UL>
-<BR>[Calls]<UL><LI><a href="#[1d2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI0_ReadWriteReg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[8c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;platform_read
-</UL>
-
-<P><STRONG><a name="[1d3]"></a>SPI0_OnlyWriteReg</STRONG> (Thumb, 26 bytes, Stack size 24 bytes, bsp_spi.o(i.SPI0_OnlyWriteReg))
-<BR><BR>[Stack]<UL><LI>Max Depth = 216<LI>Call Chain = SPI0_OnlyWriteReg &rArr; SPI0_ReadWriteReg &rArr; SPI0_ReadWriteData &rArr; nrf_drv_spi_transfer &rArr; nrfx_spim_xfer &rArr; spim_xfer &rArr; nrf_spim_event_clear
-</UL>
-<BR>[Calls]<UL><LI><a href="#[1d2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI0_ReadWriteReg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[8d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;platform_write
-</UL>
-
-<P><STRONG><a name="[12]"></a>SPIM0_SPIS0_TWIM0_TWIS0_SPI0_TWI0_IRQHandler</STRONG> (Thumb, 12 bytes, Stack size 8 bytes, nrfx_spim.o(i.SPIM0_SPIS0_TWIM0_TWIS0_SPI0_TWI0_IRQHandler))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = SPIM0_SPIS0_TWIM0_TWIS0_SPI0_TWI0_IRQHandler &rArr; irq_handler &rArr; nrf_spim_event_clear
-</UL>
-<BR>[Calls]<UL><LI><a href="#[1d6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;irq_handler
-</UL>
-<BR>[Address Reference Count : 2]<UL><LI> nrfx_spim.o(.constdata)
-<LI> arm_startup_nrf52.o(RESET)
-</UL>
-<P><STRONG><a name="[13]"></a>SPIM1_SPIS1_TWIM1_TWIS1_SPI1_TWI1_IRQHandler</STRONG> (Thumb, 14 bytes, Stack size 8 bytes, nrfx_spim.o(i.SPIM1_SPIS1_TWIM1_TWIS1_SPI1_TWI1_IRQHandler))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = SPIM1_SPIS1_TWIM1_TWIS1_SPI1_TWI1_IRQHandler &rArr; irq_handler &rArr; nrf_spim_event_clear
-</UL>
-<BR>[Calls]<UL><LI><a href="#[1d6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;irq_handler
-</UL>
-<BR>[Address Reference Count : 2]<UL><LI> nrfx_spim.o(.constdata)
-<LI> arm_startup_nrf52.o(RESET)
-</UL>
-<P><STRONG><a name="[30]"></a>SPIM2_SPIS2_SPI2_IRQHandler</STRONG> (Thumb, 12 bytes, Stack size 8 bytes, nrfx_spim.o(i.SPIM2_SPIS2_SPI2_IRQHandler))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = SPIM2_SPIS2_SPI2_IRQHandler &rArr; irq_handler &rArr; nrf_spim_event_clear
-</UL>
-<BR>[Calls]<UL><LI><a href="#[1d6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;irq_handler
-</UL>
-<BR>[Address Reference Count : 2]<UL><LI> nrfx_spim.o(.constdata)
-<LI> arm_startup_nrf52.o(RESET)
-</UL>
-<P><STRONG><a name="[1d7]"></a>ST_scan_start</STRONG> (Thumb, 42 bytes, Stack size 16 bytes, host.o(i.ST_scan_start))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4832<LI>Call Chain = ST_scan_start &rArr; app_error_handler &rArr; app_error_fault_handler &rArr; Flash_SaveLog &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[d1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_error_handler
-<LI><a href="#[116]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_scan_start
-</UL>
-<BR>[Called By]<UL><LI><a href="#[6e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_pair_Right_Process
-</UL>
-
-<P><STRONG><a name="[1d8]"></a>ST_scan_stop</STRONG> (Thumb, 8 bytes, Stack size 8 bytes, host.o(i.ST_scan_stop))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = ST_scan_stop
-</UL>
-<BR>[Calls]<UL><LI><a href="#[115]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_scan_stop
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1f4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_detect_Init
-<LI><a href="#[af]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_process
-<LI><a href="#[72]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_Host_BLE_PAIR
-<LI><a href="#[71]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_Client_BLE_PAIR
-<LI><a href="#[6e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_pair_Right_Process
-</UL>
-
-<P><STRONG><a name="[25]"></a>SWI2_EGU2_IRQHandler</STRONG> (Thumb, 8 bytes, Stack size 8 bytes, nrf_sdh.o(i.SWI2_EGU2_IRQHandler))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = SWI2_EGU2_IRQHandler &rArr; nrf_sdh_evts_poll &rArr; nrf_section_iter_init
-</UL>
-<BR>[Calls]<UL><LI><a href="#[1d9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_sdh_evts_poll
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> arm_startup_nrf52.o(RESET)
-</UL>
-<P><STRONG><a name="[177]"></a>SetPwm_BaseClock</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, bsp_pwm.o(i.SetPwm_BaseClock))
-<BR><BR>[Called By]<UL><LI><a href="#[176]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LED_Init
-</UL>
-
-<P><STRONG><a name="[178]"></a>SetPwm_Channels</STRONG> (Thumb, 14 bytes, Stack size 12 bytes, bsp_pwm.o(i.SetPwm_Channels))
-<BR><BR>[Stack]<UL><LI>Max Depth = 12<LI>Call Chain = SetPwm_Channels
-</UL>
-<BR>[Called By]<UL><LI><a href="#[176]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LED_Init
-</UL>
-
-<P><STRONG><a name="[179]"></a>SetPwm_DutyCycleThreshold</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, bsp_pwm.o(i.SetPwm_DutyCycleThreshold))
-<BR><BR>[Called By]<UL><LI><a href="#[176]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LED_Init
-</UL>
-
-<P><STRONG><a name="[17f]"></a>SetSimplePwmPlayBack</STRONG> (Thumb, 22 bytes, Stack size 16 bytes, bsp_pwm.o(i.SetSimplePwmPlayBack))
-<BR><BR>[Stack]<UL><LI>Max Depth = 88<LI>Call Chain = SetSimplePwmPlayBack &rArr; nrfx_pwm_simple_playback &rArr; start_playback &rArr; nrf_pwm_event_clear
-</UL>
-<BR>[Calls]<UL><LI><a href="#[1da]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_pwm_simple_playback
-</UL>
-<BR>[Called By]<UL><LI><a href="#[20c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;WS2812_Pwm_Play
-<LI><a href="#[40]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LED_Process
-</UL>
-
-<P><STRONG><a name="[3b1]"></a>Slave_Get7_5ms_interval</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, slave.o(i.Slave_Get7_5ms_interval))
-<BR><BR>[Called By]<UL><LI><a href="#[65]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;gamemode_data_notify_cb
-</UL>
-
-<P><STRONG><a name="[206]"></a>Sleep_Event</STRONG> (Thumb, 40 bytes, Stack size 8 bytes, system.o(i.Sleep_Event))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = Sleep_Event
-</UL>
-<BR>[Called By]<UL><LI><a href="#[205]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;USR_Process
-</UL>
-
-<P><STRONG><a name="[17c]"></a>Sleep_Regist</STRONG> (Thumb, 64 bytes, Stack size 0 bytes, system.o(i.Sleep_Regist))
-<BR><BR>[Called By]<UL><LI><a href="#[1ee]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_adc_Init
-<LI><a href="#[176]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LED_Init
-</UL>
-
-<P><STRONG><a name="[3af]"></a>State_covariance_matrix_orthogonalization</STRONG> (Thumb, 96 bytes, Stack size 0 bytes, ekfpdr.o(i.State_covariance_matrix_orthogonalization))
-<BR><BR>[Called By]<UL><LI><a href="#[3a9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;footPDR
-</UL>
-
-<P><STRONG><a name="[3ab]"></a>State_covariance_matrix_update</STRONG> (Thumb, 2910 bytes, Stack size 0 bytes, ekfpdr.o(i.State_covariance_matrix_update))
-<BR><BR>[Called By]<UL><LI><a href="#[3a9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;footPDR
-</UL>
-
-<P><STRONG><a name="[1e7]"></a>SystemCoreClockUpdate</STRONG> (Thumb, 8 bytes, Stack size 0 bytes, system_nrf52.o(i.SystemCoreClockUpdate))
-<BR><BR>[Called By]<UL><LI><a href="#[35]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SystemInit
-</UL>
-
-<P><STRONG><a name="[35]"></a>SystemInit</STRONG> (Thumb, 608 bytes, Stack size 8 bytes, system_nrf52.o(i.SystemInit))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = SystemInit
-</UL>
-<BR>[Calls]<UL><LI><a href="#[1e5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf52_errata_182
-<LI><a href="#[1dc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf52_errata_16
-<LI><a href="#[1e4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf52_errata_136
-<LI><a href="#[1db]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf52_errata_12
-<LI><a href="#[1e3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf52_errata_108
-<LI><a href="#[1e6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__NVIC_SystemReset
-<LI><a href="#[1e2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf52_errata_66
-<LI><a href="#[1e1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf52_errata_57
-<LI><a href="#[1e0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf52_errata_37
-<LI><a href="#[1df]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf52_errata_36
-<LI><a href="#[1de]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf52_errata_32
-<LI><a href="#[1dd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf52_errata_31
-<LI><a href="#[1e7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SystemCoreClockUpdate
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> arm_startup_nrf52.o(.text)
-</UL>
-<P><STRONG><a name="[104]"></a>TIME_GetTicks</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, bsp_time.o(i.TIME_GetTicks))
-<BR><BR>[Called By]<UL><LI><a href="#[fd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_Start
-<LI><a href="#[1bb]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_App
-<LI><a href="#[56]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_client_step_Process
-<LI><a href="#[489]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_trigger_callback
-<LI><a href="#[af]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_process
-<LI><a href="#[5e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_data_transfer_Process
-<LI><a href="#[5a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_connect_LED_Process
-<LI><a href="#[5d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_BLE_BLINK_LED
-<LI><a href="#[3c3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_wearshoes_determine
-<LI><a href="#[98]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_battery_Process
-<LI><a href="#[3b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Host_Tx_Process
-<LI><a href="#[39]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Client_Tx_Process
-<LI><a href="#[3a4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;monitor_sensor_no_data
-<LI><a href="#[39e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_monitor_sensor_data_process
-<LI><a href="#[39f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_intergrated_setting
-<LI><a href="#[96]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_Process
-</UL>
-
-<P><STRONG><a name="[1e8]"></a>TIME_Init</STRONG> (Thumb, 116 bytes, Stack size 24 bytes, bsp_time.o(i.TIME_Init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 72<LI>Call Chain = TIME_Init &rArr; nrfx_rtc_cc_set &rArr; nrf_rtc_event_clear
-</UL>
-<BR>[Calls]<UL><LI><a href="#[17d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Wakeup_Regist
-<LI><a href="#[fd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_Start
-<LI><a href="#[1eb]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_rtc_counter_clear
-<LI><a href="#[1e9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_rtc_init
-<LI><a href="#[1ec]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_rtc_enable
-<LI><a href="#[1ea]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_rtc_cc_set
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1ed]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;USR_Init
-</UL>
-
-<P><STRONG><a name="[198]"></a>TIME_Regist</STRONG> (Thumb, 54 bytes, Stack size 0 bytes, bsp_time.o(i.TIME_Regist))
-<BR><BR>[Called By]<UL><LI><a href="#[195]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;MT_Init
-<LI><a href="#[46a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;one_byte_receive_init
-<LI><a href="#[94]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_adcWakeup
-</UL>
-
-<P><STRONG><a name="[2f2]"></a>TIME_UnRegist</STRONG> (Thumb, 62 bytes, Stack size 8 bytes, bsp_time.o(i.TIME_UnRegist))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = TIME_UnRegist
-</UL>
-<BR>[Called By]<UL><LI><a href="#[470]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;one_byte_receive_uninit
-<LI><a href="#[95]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_adcSleep
-</UL>
-
-<P><STRONG><a name="[1ed]"></a>USR_Init</STRONG> (Thumb, 112 bytes, Stack size 8 bytes, usr.o(i.USR_Init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 5080<LI>Call Chain = USR_Init &rArr; app_detect_Init &rArr; slave_adv_init &rArr; advertising_init &rArr; app_error_handler &rArr; app_error_fault_handler &rArr; Flash_SaveLog &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[204]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;watchdog_init
-<LI><a href="#[1f1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_wearshoes_Init
-<LI><a href="#[1f2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_qma_Init
-<LI><a href="#[1f3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_charge_init
-<LI><a href="#[1f0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_battery_init
-<LI><a href="#[1ee]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_adc_Init
-<LI><a href="#[1b0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;feed_watchdog
-<LI><a href="#[1ef]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_Init
-<LI><a href="#[1fe]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_switchimu_Init
-<LI><a href="#[1f9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_step_Init
-<LI><a href="#[200]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_safe_Init
-<LI><a href="#[203]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_pair_Initialize
-<LI><a href="#[1f7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_overturn_Init
-<LI><a href="#[1fc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_ota_Init
-<LI><a href="#[1fb]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_math_Init
-<LI><a href="#[202]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_losspack_Init
-<LI><a href="#[1f6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_host_Initialize
-<LI><a href="#[1fa]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_game_Init
-<LI><a href="#[1f4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_detect_Init
-<LI><a href="#[1ff]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_data_transfer_Init
-<LI><a href="#[1fd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_connect_manage_Init
-<LI><a href="#[1f5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_client_Initialize
-<LI><a href="#[1f8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_charge_Init
-<LI><a href="#[201]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_Authen_Init
-<LI><a href="#[1e8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;TIME_Init
-<LI><a href="#[108]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Host_Initialize
-<LI><a href="#[fc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Client_Initialize
-</UL>
-<BR>[Called By]<UL><LI><a href="#[34]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main
-</UL>
-
-<P><STRONG><a name="[205]"></a>USR_Process</STRONG> (Thumb, 36 bytes, Stack size 8 bytes, system.o(i.USR_Process))
-<BR><BR>[Stack]<UL><LI>Max Depth = 152<LI>Call Chain = USR_Process &rArr; Process_App &rArr; Except_Get_Cur_Porcess_ID &rArr; __aeabi_drsub &rArr; __aeabi_dadd &rArr; _double_epilogue &rArr; _double_round
-</UL>
-<BR>[Calls]<UL><LI><a href="#[208]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;rtc_sleep
-<LI><a href="#[207]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_wearshoes_is_wearshoes
-<LI><a href="#[209]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Wakeup_Event
-<LI><a href="#[206]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Sleep_Event
-<LI><a href="#[1bb]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_App
-<LI><a href="#[20a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;FPS_process
-</UL>
-<BR>[Called By]<UL><LI><a href="#[34]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main
-</UL>
-
-<P><STRONG><a name="[1f]"></a>WDT_IRQHandler</STRONG> (Thumb, 56 bytes, Stack size 8 bytes, nrfx_wdt.o(i.WDT_IRQHandler))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = WDT_IRQHandler
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> arm_startup_nrf52.o(RESET)
-</UL>
-<P><STRONG><a name="[17e]"></a>WS2812_DisplayDot</STRONG> (Thumb, 444 bytes, Stack size 24 bytes, hal_led_ws2812.o(i.WS2812_DisplayDot))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = WS2812_DisplayDot
-</UL>
-<BR>[Called By]<UL><LI><a href="#[ad]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_result_display_process
-<LI><a href="#[af]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_process
-<LI><a href="#[ac]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_led_process
-<LI><a href="#[40]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LED_Process
-</UL>
-
-<P><STRONG><a name="[20c]"></a>WS2812_Pwm_Play</STRONG> (Thumb, 16 bytes, Stack size 8 bytes, hal_led_ws2812.o(i.WS2812_Pwm_Play))
-<BR><BR>[Stack]<UL><LI>Max Depth = 96<LI>Call Chain = WS2812_Pwm_Play &rArr; SetSimplePwmPlayBack &rArr; nrfx_pwm_simple_playback &rArr; start_playback &rArr; nrf_pwm_event_clear
-</UL>
-<BR>[Calls]<UL><LI><a href="#[17f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SetSimplePwmPlayBack
-</UL>
-<BR>[Called By]<UL><LI><a href="#[ad]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_result_display_process
-<LI><a href="#[af]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_process
-<LI><a href="#[ac]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_led_process
-</UL>
-
-<P><STRONG><a name="[209]"></a>Wakeup_Event</STRONG> (Thumb, 40 bytes, Stack size 8 bytes, system.o(i.Wakeup_Event))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = Wakeup_Event
-</UL>
-<BR>[Called By]<UL><LI><a href="#[205]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;USR_Process
-</UL>
-
-<P><STRONG><a name="[17d]"></a>Wakeup_Regist</STRONG> (Thumb, 64 bytes, Stack size 0 bytes, system.o(i.Wakeup_Regist))
-<BR><BR>[Called By]<UL><LI><a href="#[1ee]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_adc_Init
-<LI><a href="#[1e8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;TIME_Init
-<LI><a href="#[176]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LED_Init
-</UL>
-
-<P><STRONG><a name="[20d]"></a>__0sprintf</STRONG> (Thumb, 34 bytes, Stack size 24 bytes, printfa.o(i.__0sprintf), UNUSED)
-<BR><BR>[Calls]<UL><LI><a href="#[4e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_sputc
-<LI><a href="#[20e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_printf_core
-</UL>
-
-<P><STRONG><a name="[4ba]"></a>__1sprintf</STRONG> (Thumb, 0 bytes, Stack size 24 bytes, printfa.o(i.__0sprintf), UNUSED)
-
-<P><STRONG><a name="[12b]"></a>__2sprintf</STRONG> (Thumb, 0 bytes, Stack size 24 bytes, printfa.o(i.__0sprintf))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = __2sprintf
-</UL>
-<BR>[Called By]<UL><LI><a href="#[3d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Exception_UnkownReset_Info_Send_Process
-<LI><a href="#[1f4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_detect_Init
-<LI><a href="#[af]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_process
-<LI><a href="#[13b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_SaveLog
-<LI><a href="#[a2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_error_fault_handler
-<LI><a href="#[74]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_safe_Process
-<LI><a href="#[3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;sdflash_write
-<LI><a href="#[4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;sdflash_page_erase
-<LI><a href="#[69]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_ota_Process
-<LI><a href="#[98]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_battery_Process
-<LI><a href="#[72]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_Host_BLE_PAIR
-<LI><a href="#[6f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_pair_Left_Process
-<LI><a href="#[3a4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;monitor_sensor_no_data
-<LI><a href="#[96]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_Process
-<LI><a href="#[3b2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;gap_params_init
-<LI><a href="#[91]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qmc_iic_error_report_process
-<LI><a href="#[8e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_spi_error_report_process
-</UL>
-
-<P><STRONG><a name="[4bb]"></a>__c89sprintf</STRONG> (Thumb, 0 bytes, Stack size 24 bytes, printfa.o(i.__0sprintf), UNUSED)
-
-<P><STRONG><a name="[4bc]"></a>sprintf</STRONG> (Thumb, 0 bytes, Stack size 24 bytes, printfa.o(i.__0sprintf), UNUSED)
-
-<P><STRONG><a name="[213]"></a>__ARM_fpclassify</STRONG> (Thumb, 48 bytes, Stack size 8 bytes, fpclassify.o(i.__ARM_fpclassify))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = __ARM_fpclassify
-</UL>
-<BR>[Called By]<UL><LI><a href="#[224]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__kernel_sin
-<LI><a href="#[21d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_atan
-<LI><a href="#[20f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_asin
-</UL>
-
-<P><STRONG><a name="[219]"></a>__ARM_fpclassifyf</STRONG> (Thumb, 38 bytes, Stack size 0 bytes, fpclassifyf.o(i.__ARM_fpclassifyf))
-<BR><BR>[Called By]<UL><LI><a href="#[19e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_atan2f
-<LI><a href="#[19f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_asinf
-</UL>
-
-<P><STRONG><a name="[20f]"></a>__hardfp_asin</STRONG> (Thumb, 770 bytes, Stack size 88 bytes, asin.o(i.__hardfp_asin))
-<BR><BR>[Stack]<UL><LI>Max Depth = 200<LI>Call Chain = __hardfp_asin &rArr; __kernel_poly &rArr; __aeabi_dadd &rArr; _double_epilogue &rArr; _double_round
-</UL>
-<BR>[Calls]<UL><LI><a href="#[da]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_dadd
-<LI><a href="#[df]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_drsub
-<LI><a href="#[e1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_ddiv
-<LI><a href="#[de]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_dsub
-<LI><a href="#[e0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_dmul
-<LI><a href="#[211]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__set_errno
-<LI><a href="#[215]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__kernel_poly
-<LI><a href="#[213]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__ARM_fpclassify
-<LI><a href="#[214]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__mathlib_dbl_underflow
-<LI><a href="#[212]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__mathlib_dbl_invalid
-<LI><a href="#[210]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__mathlib_dbl_infnan
-<LI><a href="#[217]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;sqrt
-<LI><a href="#[216]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fabs
-</UL>
-<BR>[Called By]<UL><LI><a href="#[301]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;dcm2angleTest
-<LI><a href="#[171]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;init_attitude_matrix
-</UL>
-
-<P><STRONG><a name="[19f]"></a>__hardfp_asinf</STRONG> (Thumb, 258 bytes, Stack size 16 bytes, asinf.o(i.__hardfp_asinf))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = __hardfp_asinf &rArr; sqrtf
-</UL>
-<BR>[Calls]<UL><LI><a href="#[211]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__set_errno
-<LI><a href="#[21a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__mathlib_flt_underflow
-<LI><a href="#[21c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__mathlib_flt_invalid
-<LI><a href="#[21b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__mathlib_flt_infnan
-<LI><a href="#[219]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__ARM_fpclassifyf
-<LI><a href="#[218]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;sqrtf
-</UL>
-<BR>[Called By]<UL><LI><a href="#[19b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Mahony_update
-</UL>
-
-<P><STRONG><a name="[21d]"></a>__hardfp_atan</STRONG> (Thumb, 622 bytes, Stack size 48 bytes, atan.o(i.__hardfp_atan))
-<BR><BR>[Stack]<UL><LI>Max Depth = 160<LI>Call Chain = __hardfp_atan &rArr; __kernel_poly &rArr; __aeabi_dadd &rArr; _double_epilogue &rArr; _double_round
-</UL>
-<BR>[Calls]<UL><LI><a href="#[da]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_dadd
-<LI><a href="#[df]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_drsub
-<LI><a href="#[e1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_ddiv
-<LI><a href="#[de]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_dsub
-<LI><a href="#[e0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_dmul
-<LI><a href="#[215]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__kernel_poly
-<LI><a href="#[213]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__ARM_fpclassify
-<LI><a href="#[214]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__mathlib_dbl_underflow
-<LI><a href="#[210]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__mathlib_dbl_infnan
-<LI><a href="#[216]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fabs
-</UL>
-<BR>[Called By]<UL><LI><a href="#[220]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;atan
-</UL>
-
-<P><STRONG><a name="[21e]"></a>__hardfp_atan2</STRONG> (Thumb, 432 bytes, Stack size 48 bytes, atan2.o(i.__hardfp_atan2))
-<BR><BR>[Stack]<UL><LI>Max Depth = 216<LI>Call Chain = __hardfp_atan2 &rArr; atan &rArr; __hardfp_atan &rArr; __kernel_poly &rArr; __aeabi_dadd &rArr; _double_epilogue &rArr; _double_round
-</UL>
-<BR>[Calls]<UL><LI><a href="#[df]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_drsub
-<LI><a href="#[e1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_ddiv
-<LI><a href="#[de]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_dsub
-<LI><a href="#[21f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__mathlib_dbl_infnan2
-<LI><a href="#[220]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;atan
-<LI><a href="#[216]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fabs
-</UL>
-<BR>[Called By]<UL><LI><a href="#[301]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;dcm2angleTest
-<LI><a href="#[171]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;init_attitude_matrix
-</UL>
-
-<P><STRONG><a name="[19e]"></a>__hardfp_atan2f</STRONG> (Thumb, 502 bytes, Stack size 16 bytes, atan2f.o(i.__hardfp_atan2f))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = __hardfp_atan2f
-</UL>
-<BR>[Calls]<UL><LI><a href="#[21a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__mathlib_flt_underflow
-<LI><a href="#[221]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__mathlib_flt_infnan2
-<LI><a href="#[219]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__ARM_fpclassifyf
-</UL>
-<BR>[Called By]<UL><LI><a href="#[19b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Mahony_update
-</UL>
-
-<P><STRONG><a name="[222]"></a>__hardfp_cos</STRONG> (Thumb, 180 bytes, Stack size 32 bytes, cos.o(i.__hardfp_cos))
-<BR><BR>[Stack]<UL><LI>Max Depth = 240<LI>Call Chain = __hardfp_cos &rArr; __ieee754_rem_pio2 &rArr; __aeabi_dadd &rArr; _double_epilogue &rArr; _double_round
-</UL>
-<BR>[Calls]<UL><LI><a href="#[211]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__set_errno
-<LI><a href="#[224]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__kernel_sin
-<LI><a href="#[223]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__ieee754_rem_pio2
-<LI><a href="#[212]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__mathlib_dbl_invalid
-<LI><a href="#[210]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__mathlib_dbl_infnan
-<LI><a href="#[225]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__kernel_cos
-</UL>
-<BR>[Called By]<UL><LI><a href="#[171]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;init_attitude_matrix
-</UL>
-
-<P><STRONG><a name="[32d]"></a>__hardfp_fabs</STRONG> (Thumb, 20 bytes, Stack size 8 bytes, fabs.o(i.__hardfp_fabs))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = __hardfp_fabs
-</UL>
-<BR>[Called By]<UL><LI><a href="#[335]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_self_check_5
-<LI><a href="#[32c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_self_check_3
-</UL>
-
-<P><STRONG><a name="[226]"></a>__hardfp_sin</STRONG> (Thumb, 180 bytes, Stack size 32 bytes, sin.o(i.__hardfp_sin))
-<BR><BR>[Stack]<UL><LI>Max Depth = 240<LI>Call Chain = __hardfp_sin &rArr; __ieee754_rem_pio2 &rArr; __aeabi_dadd &rArr; _double_epilogue &rArr; _double_round
-</UL>
-<BR>[Calls]<UL><LI><a href="#[211]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__set_errno
-<LI><a href="#[224]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__kernel_sin
-<LI><a href="#[223]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__ieee754_rem_pio2
-<LI><a href="#[212]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__mathlib_dbl_invalid
-<LI><a href="#[210]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__mathlib_dbl_infnan
-<LI><a href="#[225]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__kernel_cos
-</UL>
-<BR>[Called By]<UL><LI><a href="#[171]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;init_attitude_matrix
-</UL>
-
-<P><STRONG><a name="[173]"></a>__hardfp_sqrt</STRONG> (Thumb, 122 bytes, Stack size 32 bytes, sqrt.o(i.__hardfp_sqrt))
-<BR><BR>[Stack]<UL><LI>Max Depth = 72<LI>Call Chain = __hardfp_sqrt &rArr; _dsqrt &rArr; _double_round
-</UL>
-<BR>[Calls]<UL><LI><a href="#[211]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__set_errno
-<LI><a href="#[e8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_dsqrt
-</UL>
-<BR>[Called By]<UL><LI><a href="#[af]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_process
-<LI><a href="#[172]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IsWearShoes
-</UL>
-
-<P><STRONG><a name="[19d]"></a>__hardfp_sqrtf</STRONG> (Thumb, 58 bytes, Stack size 16 bytes, sqrtf.o(i.__hardfp_sqrtf))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = __hardfp_sqrtf
-</UL>
-<BR>[Calls]<UL><LI><a href="#[211]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__set_errno
-</UL>
-<BR>[Called By]<UL><LI><a href="#[19b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Mahony_update
-</UL>
-
-<P><STRONG><a name="[223]"></a>__ieee754_rem_pio2</STRONG> (Thumb, 938 bytes, Stack size 120 bytes, rred.o(i.__ieee754_rem_pio2))
-<BR><BR>[Stack]<UL><LI>Max Depth = 208<LI>Call Chain = __ieee754_rem_pio2 &rArr; __aeabi_dadd &rArr; _double_epilogue &rArr; _double_round
-</UL>
-<BR>[Calls]<UL><LI><a href="#[e2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_i2d
-<LI><a href="#[da]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_dadd
-<LI><a href="#[e3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_ui2d
-<LI><a href="#[df]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_drsub
-<LI><a href="#[de]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_dsub
-<LI><a href="#[e0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_dmul
-<LI><a href="#[e4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_d2iz
-<LI><a href="#[216]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fabs
-</UL>
-<BR>[Called By]<UL><LI><a href="#[226]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_sin
-<LI><a href="#[222]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_cos
-</UL>
-
-<P><STRONG><a name="[225]"></a>__kernel_cos</STRONG> (Thumb, 322 bytes, Stack size 64 bytes, cos_i.o(i.__kernel_cos))
-<BR><BR>[Stack]<UL><LI>Max Depth = 176<LI>Call Chain = __kernel_cos &rArr; __kernel_poly &rArr; __aeabi_dadd &rArr; _double_epilogue &rArr; _double_round
-</UL>
-<BR>[Calls]<UL><LI><a href="#[df]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_drsub
-<LI><a href="#[de]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_dsub
-<LI><a href="#[e0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_dmul
-<LI><a href="#[e4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_d2iz
-<LI><a href="#[215]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__kernel_poly
-</UL>
-<BR>[Called By]<UL><LI><a href="#[226]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_sin
-<LI><a href="#[222]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_cos
-</UL>
-
-<P><STRONG><a name="[215]"></a>__kernel_poly</STRONG> (Thumb, 248 bytes, Stack size 24 bytes, poly.o(i.__kernel_poly))
-<BR><BR>[Stack]<UL><LI>Max Depth = 112<LI>Call Chain = __kernel_poly &rArr; __aeabi_dadd &rArr; _double_epilogue &rArr; _double_round
-</UL>
-<BR>[Calls]<UL><LI><a href="#[da]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_dadd
-<LI><a href="#[e0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_dmul
-</UL>
-<BR>[Called By]<UL><LI><a href="#[224]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__kernel_sin
-<LI><a href="#[225]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__kernel_cos
-<LI><a href="#[21d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_atan
-<LI><a href="#[20f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_asin
-</UL>
-
-<P><STRONG><a name="[224]"></a>__kernel_sin</STRONG> (Thumb, 280 bytes, Stack size 72 bytes, sin_i.o(i.__kernel_sin))
-<BR><BR>[Stack]<UL><LI>Max Depth = 184<LI>Call Chain = __kernel_sin &rArr; __kernel_poly &rArr; __aeabi_dadd &rArr; _double_epilogue &rArr; _double_round
-</UL>
-<BR>[Calls]<UL><LI><a href="#[da]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_dadd
-<LI><a href="#[df]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_drsub
-<LI><a href="#[de]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_dsub
-<LI><a href="#[e0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_dmul
-<LI><a href="#[215]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__kernel_poly
-<LI><a href="#[213]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__ARM_fpclassify
-<LI><a href="#[214]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__mathlib_dbl_underflow
-</UL>
-<BR>[Called By]<UL><LI><a href="#[226]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_sin
-<LI><a href="#[222]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_cos
-</UL>
-
-<P><STRONG><a name="[210]"></a>__mathlib_dbl_infnan</STRONG> (Thumb, 20 bytes, Stack size 8 bytes, dunder.o(i.__mathlib_dbl_infnan))
-<BR><BR>[Stack]<UL><LI>Max Depth = 96<LI>Call Chain = __mathlib_dbl_infnan &rArr; __aeabi_dadd &rArr; _double_epilogue &rArr; _double_round
-</UL>
-<BR>[Calls]<UL><LI><a href="#[da]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_dadd
-</UL>
-<BR>[Called By]<UL><LI><a href="#[21d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_atan
-<LI><a href="#[226]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_sin
-<LI><a href="#[222]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_cos
-<LI><a href="#[20f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_asin
-</UL>
-
-<P><STRONG><a name="[21f]"></a>__mathlib_dbl_infnan2</STRONG> (Thumb, 20 bytes, Stack size 8 bytes, dunder.o(i.__mathlib_dbl_infnan2))
-<BR><BR>[Stack]<UL><LI>Max Depth = 96<LI>Call Chain = __mathlib_dbl_infnan2 &rArr; __aeabi_dadd &rArr; _double_epilogue &rArr; _double_round
-</UL>
-<BR>[Calls]<UL><LI><a href="#[da]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_dadd
-</UL>
-<BR>[Called By]<UL><LI><a href="#[21e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_atan2
-</UL>
-
-<P><STRONG><a name="[212]"></a>__mathlib_dbl_invalid</STRONG> (Thumb, 24 bytes, Stack size 8 bytes, dunder.o(i.__mathlib_dbl_invalid))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = __mathlib_dbl_invalid &rArr; __aeabi_ddiv &rArr; _double_round
-</UL>
-<BR>[Calls]<UL><LI><a href="#[e1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_ddiv
-</UL>
-<BR>[Called By]<UL><LI><a href="#[226]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_sin
-<LI><a href="#[222]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_cos
-<LI><a href="#[20f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_asin
-</UL>
-
-<P><STRONG><a name="[214]"></a>__mathlib_dbl_underflow</STRONG> (Thumb, 24 bytes, Stack size 8 bytes, dunder.o(i.__mathlib_dbl_underflow))
-<BR><BR>[Stack]<UL><LI>Max Depth = 96<LI>Call Chain = __mathlib_dbl_underflow &rArr; __aeabi_dmul &rArr; _double_epilogue &rArr; _double_round
-</UL>
-<BR>[Calls]<UL><LI><a href="#[e0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_dmul
-</UL>
-<BR>[Called By]<UL><LI><a href="#[224]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__kernel_sin
-<LI><a href="#[21d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_atan
-<LI><a href="#[20f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_asin
-</UL>
-
-<P><STRONG><a name="[21b]"></a>__mathlib_flt_infnan</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, funder.o(i.__mathlib_flt_infnan))
-<BR><BR>[Called By]<UL><LI><a href="#[19f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_asinf
-</UL>
-
-<P><STRONG><a name="[221]"></a>__mathlib_flt_infnan2</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, funder.o(i.__mathlib_flt_infnan2))
-<BR><BR>[Called By]<UL><LI><a href="#[19e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_atan2f
-</UL>
-
-<P><STRONG><a name="[21c]"></a>__mathlib_flt_invalid</STRONG> (Thumb, 10 bytes, Stack size 0 bytes, funder.o(i.__mathlib_flt_invalid))
-<BR><BR>[Called By]<UL><LI><a href="#[19f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_asinf
-</UL>
-
-<P><STRONG><a name="[21a]"></a>__mathlib_flt_underflow</STRONG> (Thumb, 10 bytes, Stack size 0 bytes, funder.o(i.__mathlib_flt_underflow))
-<BR><BR>[Called By]<UL><LI><a href="#[19e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_atan2f
-<LI><a href="#[19f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_asinf
-</UL>
-
-<P><STRONG><a name="[4bd]"></a>__scatterload_copy</STRONG> (Thumb, 14 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_copy), UNUSED)
-
-<P><STRONG><a name="[4be]"></a>__scatterload_null</STRONG> (Thumb, 2 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_null), UNUSED)
-
-<P><STRONG><a name="[4bf]"></a>__scatterload_zeroinit</STRONG> (Thumb, 14 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_zeroinit), UNUSED)
-
-<P><STRONG><a name="[211]"></a>__set_errno</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, errno.o(i.__set_errno))
-<BR><BR>[Called By]<UL><LI><a href="#[218]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;sqrtf
-<LI><a href="#[19d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_sqrtf
-<LI><a href="#[217]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;sqrt
-<LI><a href="#[173]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_sqrt
-<LI><a href="#[226]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_sin
-<LI><a href="#[222]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_cos
-<LI><a href="#[19f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_asinf
-<LI><a href="#[20f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_asin
-</UL>
-
-<P><STRONG><a name="[270]"></a>advdata_report_Evt_Regist</STRONG> (Thumb, 36 bytes, Stack size 0 bytes, host.o(i.advdata_report_Evt_Regist))
-<BR><BR>[Called By]<UL><LI><a href="#[489]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_trigger_callback
-<LI><a href="#[6e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_pair_Right_Process
-</UL>
-
-<P><STRONG><a name="[271]"></a>advdata_report_Evt_del</STRONG> (Thumb, 38 bytes, Stack size 0 bytes, host.o(i.advdata_report_Evt_del))
-<BR><BR>[Called By]<UL><LI><a href="#[6e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_pair_Right_Process
-</UL>
-
-<P><STRONG><a name="[234]"></a>advertising_start</STRONG> (Thumb, 40 bytes, Stack size 16 bytes, slave.o(i.advertising_start))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4832<LI>Call Chain = advertising_start &rArr; app_error_handler &rArr; app_error_fault_handler &rArr; Flash_SaveLog &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[d1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_error_handler
-<LI><a href="#[235]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_advertising_start
-</UL>
-<BR>[Called By]<UL><LI><a href="#[492]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;slave_init
-<LI><a href="#[1f4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_detect_Init
-<LI><a href="#[5e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_data_transfer_Process
-<LI><a href="#[69]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_ota_Process
-<LI><a href="#[72]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_Host_BLE_PAIR
-</UL>
-
-<P><STRONG><a name="[236]"></a>advertising_stop</STRONG> (Thumb, 40 bytes, Stack size 16 bytes, slave.o(i.advertising_stop))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4832<LI>Call Chain = advertising_stop &rArr; app_error_handler &rArr; app_error_fault_handler &rArr; Flash_SaveLog &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[d1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_error_handler
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1f4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_detect_Init
-<LI><a href="#[5e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_data_transfer_Process
-<LI><a href="#[69]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_ota_Process
-<LI><a href="#[72]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_Host_BLE_PAIR
-</UL>
-
-<P><STRONG><a name="[201]"></a>app_Authen_Init</STRONG> (Thumb, 22 bytes, Stack size 8 bytes, app_authen.o(i.app_Authen_Init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = app_Authen_Init &rArr; Process_Start
-</UL>
-<BR>[Calls]<UL><LI><a href="#[fd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_Start
-<LI><a href="#[199]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Client_Rx_Regist
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1ed]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;USR_Init
-</UL>
-
-<P><STRONG><a name="[76]"></a>app_BLE_LEDON_PURPLE_process</STRONG> (Thumb, 64 bytes, Stack size 8 bytes, app_safe.o(i.app_BLE_LEDON_PURPLE_process))
-<BR><BR>[Stack]<UL><LI>Max Depth = 20<LI>Call Chain = app_BLE_LEDON_PURPLE_process &rArr; Process_SetHoldOn
-</UL>
-<BR>[Calls]<UL><LI><a href="#[106]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_SetHoldOn
-<LI><a href="#[120]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LED_Stop
-</UL>
-<BR>[Address Reference Count : 4]<UL><LI> host.o(i.ble_evt_handler)
-<LI> app_safe.o(i.app_BLE_LEDON_PURPLE_process)
-<LI> app_safe.o(i.app_safe_Init)
-<LI> host.o(i.host_ledclose_process)
-</UL>
-<P><STRONG><a name="[6d]"></a>app_BatDispaly_Process</STRONG> (Thumb, 454 bytes, Stack size 40 bytes, app_overturn.o(i.app_BatDispaly_Process))
-<BR><BR>[Stack]<UL><LI>Max Depth = 472<LI>Call Chain = app_BatDispaly_Process &rArr; BLE_Client_Tx_Send &rArr; BLE_Client_Send &rArr; send_bytes_client &rArr; ble_nus_data_send &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[207]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_wearshoes_is_wearshoes
-<LI><a href="#[106]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_SetHoldOn
-<LI><a href="#[1ae]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;GetBatteryPersent
-<LI><a href="#[240]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;sort_silde_window
-<LI><a href="#[12a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_get_data_num
-<LI><a href="#[11b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_get_data
-<LI><a href="#[120]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LED_Stop
-<LI><a href="#[122]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LED_Start
-<LI><a href="#[107]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Client_Tx_Send
-<LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
-</UL>
-<BR>[Address Reference Count : 2]<UL><LI> app_overturn.o(i.app_BatDispaly_Process)
-<LI> app_overturn.o(i.app_overturn_Init)
-</UL>
-<P><STRONG><a name="[52]"></a>app_BatDispaly_Process_N</STRONG> (Thumb, 460 bytes, Stack size 40 bytes, app_overturn.o(i.app_BatDispaly_Process_N))
-<BR><BR>[Stack]<UL><LI>Max Depth = 472<LI>Call Chain = app_BatDispaly_Process_N &rArr; BLE_Client_Tx_Send &rArr; BLE_Client_Send &rArr; send_bytes_client &rArr; ble_nus_data_send &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[207]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_wearshoes_is_wearshoes
-<LI><a href="#[106]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_SetHoldOn
-<LI><a href="#[1ae]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;GetBatteryPersent
-<LI><a href="#[12a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_get_data_num
-<LI><a href="#[11b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_get_data
-<LI><a href="#[120]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LED_Stop
-<LI><a href="#[122]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LED_Start
-<LI><a href="#[107]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Client_Tx_Send
-<LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
-</UL>
-<BR>[Address Reference Count : 3]<UL><LI> app_overturn.o(i.app_BatDispaly_Process)
-<LI> app_overturn.o(i.app_BatDispaly_Process_N)
-<LI> app_overturn.o(i.app_overturn_Init)
-</UL>
-<P><STRONG><a name="[126]"></a>app_Get_isHost</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, app_detectishost.o(i.app_Get_isHost))
-<BR><BR>[Called By]<UL><LI><a href="#[1f4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_detect_Init
-<LI><a href="#[124]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Except_TxError
-</UL>
-
-<P><STRONG><a name="[1f8]"></a>app_charge_Init</STRONG> (Thumb, 14 bytes, Stack size 8 bytes, app_charge.o(i.app_charge_Init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = app_charge_Init &rArr; Process_Start
-</UL>
-<BR>[Calls]<UL><LI><a href="#[fd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_Start
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1ed]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;USR_Init
-</UL>
-
-<P><STRONG><a name="[1b1]"></a>app_client_DataUpdate_Send</STRONG> (Thumb, 300 bytes, Stack size 48 bytes, app_client.o(i.app_client_DataUpdate_Send))
-<BR><BR>[Stack]<UL><LI>Max Depth = 480<LI>Call Chain = app_client_DataUpdate_Send &rArr; BLE_Client_Tx_Send &rArr; BLE_Client_Send &rArr; send_bytes_client &rArr; ble_nus_data_send &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[243]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_host_GetVol_R
-<LI><a href="#[246]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_host_GetVolAdc_R
-<LI><a href="#[244]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_host_GetTemp_R
-<LI><a href="#[1ae]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;GetBatteryPersent
-<LI><a href="#[107]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Client_Tx_Send
-<LI><a href="#[245]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_GetBatttery_Adc
-<LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
-</UL>
-<BR>[Called By]<UL><LI><a href="#[66]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_BLE_Host_R_UPDATE
-<LI><a href="#[46]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;PWR_Process
-<LI><a href="#[54]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_BLE_Client_R_UPDATE
-<LI><a href="#[55]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_client_Process
-</UL>
-
-<P><STRONG><a name="[247]"></a>app_client_DeleteStep</STRONG> (Thumb, 58 bytes, Stack size 16 bytes, app_client_step.o(i.app_client_DeleteStep))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = app_client_DeleteStep
-</UL>
-<BR>[Calls]<UL><LI><a href="#[249]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;flash_SetClearStepFlag
-<LI><a href="#[248]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_math_calit_time
-</UL>
-<BR>[Called By]<UL><LI><a href="#[54]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_BLE_Client_R_UPDATE
-</UL>
-
-<P><STRONG><a name="[1f5]"></a>app_client_Initialize</STRONG> (Thumb, 28 bytes, Stack size 8 bytes, app_client.o(i.app_client_Initialize))
-<BR><BR>[Stack]<UL><LI>Max Depth = 40<LI>Call Chain = app_client_Initialize &rArr; app_client_step_Initialize &rArr; Process_Start
-</UL>
-<BR>[Calls]<UL><LI><a href="#[fd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_Start
-<LI><a href="#[199]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Client_Rx_Regist
-<LI><a href="#[24a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_client_step_Initialize
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1ed]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;USR_Init
-</UL>
-
-<P><STRONG><a name="[24b]"></a>app_client_SendStep</STRONG> (Thumb, 106 bytes, Stack size 16 bytes, app_client_step.o(i.app_client_SendStep))
-<BR><BR>[Stack]<UL><LI>Max Depth = 720<LI>Call Chain = app_client_SendStep &rArr; app_client_SendStepN &rArr; BLE_Client_Tx_Send &rArr; BLE_Client_Send &rArr; send_bytes_client &rArr; ble_nus_data_send &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[24d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_client_SendStepN
-<LI><a href="#[24c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_client_SendStepAll
-</UL>
-<BR>[Called By]<UL><LI><a href="#[54]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_BLE_Client_R_UPDATE
-</UL>
-
-<P><STRONG><a name="[24c]"></a>app_client_SendStepAll</STRONG> (Thumb, 370 bytes, Stack size 24 bytes, app_client_step.o(i.app_client_SendStepAll))
-<BR><BR>[Stack]<UL><LI>Max Depth = 704<LI>Call Chain = app_client_SendStepAll &rArr; Except_TxError &rArr; BLE_Client_Send &rArr; send_bytes_client &rArr; ble_nus_data_send &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[24e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;flash_GetStep_StartAddress
-<LI><a href="#[130]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;flash_Data_Read
-<LI><a href="#[13e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_step_GetStep_R
-<LI><a href="#[13d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_step_GetStep_L
-<LI><a href="#[107]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Client_Tx_Send
-<LI><a href="#[124]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Except_TxError
-</UL>
-<BR>[Called By]<UL><LI><a href="#[24b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_client_SendStep
-<LI><a href="#[1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_BLE_Client_T_UPDATE_STEPNUM
-</UL>
-
-<P><STRONG><a name="[24d]"></a>app_client_SendStepN</STRONG> (Thumb, 176 bytes, Stack size 272 bytes, app_client_step.o(i.app_client_SendStepN))
-<BR><BR>[Stack]<UL><LI>Max Depth = 704<LI>Call Chain = app_client_SendStepN &rArr; BLE_Client_Tx_Send &rArr; BLE_Client_Send &rArr; send_bytes_client &rArr; ble_nus_data_send &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[24e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;flash_GetStep_StartAddress
-<LI><a href="#[130]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;flash_Data_Read
-<LI><a href="#[107]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Client_Tx_Send
-</UL>
-<BR>[Called By]<UL><LI><a href="#[24b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_client_SendStep
-</UL>
-
-<P><STRONG><a name="[24f]"></a>app_client_infomation_Send</STRONG> (Thumb, 278 bytes, Stack size 144 bytes, app_client.o(i.app_client_infomation_Send))
-<BR><BR>[Stack]<UL><LI>Max Depth = 576<LI>Call Chain = app_client_infomation_Send &rArr; BLE_Client_Tx_Send &rArr; BLE_Client_Send &rArr; send_bytes_client &rArr; ble_nus_data_send &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[107]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Client_Tx_Send
-<LI><a href="#[242]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Get_MACaddr
-<LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
-</UL>
-<BR>[Called By]<UL><LI><a href="#[66]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_BLE_Host_R_UPDATE
-<LI><a href="#[54]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_BLE_Client_R_UPDATE
-</UL>
-
-<P><STRONG><a name="[252]"></a>app_client_step_GetIsScan</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, app_client_step.o(i.app_client_step_GetIsScan))
-<BR><BR>[Called By]<UL><LI><a href="#[57]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_connect_Process
-</UL>
-
-<P><STRONG><a name="[24a]"></a>app_client_step_Initialize</STRONG> (Thumb, 32 bytes, Stack size 8 bytes, app_client_step.o(i.app_client_step_Initialize))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = app_client_step_Initialize &rArr; Process_Start
-</UL>
-<BR>[Calls]<UL><LI><a href="#[fd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_Start
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1f5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_client_Initialize
-</UL>
-
-<P><STRONG><a name="[26b]"></a>app_client_step_SetIsScan</STRONG> (Thumb, 8 bytes, Stack size 0 bytes, app_client_step.o(i.app_client_step_SetIsScan))
-<BR><BR>[Called By]<UL><LI><a href="#[68]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_math_Hour_process
-</UL>
-
-<P><STRONG><a name="[5a]"></a>app_connect_LED_Process</STRONG> (Thumb, 202 bytes, Stack size 8 bytes, app_connect_manage.o(i.app_connect_LED_Process))
-<BR><BR>[Stack]<UL><LI>Max Depth = 600<LI>Call Chain = app_connect_LED_Process &rArr; BLE_Host_Tx_Send &rArr; BLE_Host_Send &rArr; send_bytes_server &rArr; ble_nus_c_string_send &rArr; nrf_ble_gq_item_add &rArr; queue_process &rArr; nrf_memobj_read &rArr; memobj_op
-</UL>
-<BR>[Calls]<UL><LI><a href="#[104]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;TIME_GetTicks
-<LI><a href="#[106]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_SetHoldOn
-<LI><a href="#[110]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Host_Tx_Send
-<LI><a href="#[23c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;host_isconnect
-<LI><a href="#[120]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LED_Stop
-<LI><a href="#[10f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Host_Tx_Clear
-<LI><a href="#[251]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_conneted_getRight
-<LI><a href="#[23d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;slave_isconnect
-</UL>
-<BR>[Address Reference Count : 3]<UL><LI> app_connect_manage.o(i.cb_BLE_BLINK_LED)
-<LI> app_connect_manage.o(i.app_connect_LED_Process)
-<LI> app_connect_manage.o(i.app_connect_manage_Init)
-</UL>
-<P><STRONG><a name="[57]"></a>app_connect_Process</STRONG> (Thumb, 528 bytes, Stack size 8 bytes, app_connect_manage.o(i.app_connect_Process))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4864<LI>Call Chain = app_connect_Process &rArr; Ble_update_conn_interval &rArr; app_error_handler &rArr; app_error_fault_handler &rArr; Flash_SaveLog &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[106]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_SetHoldOn
-<LI><a href="#[193]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_game_GetGameMode
-<LI><a href="#[252]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_client_step_GetIsScan
-<LI><a href="#[115]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_scan_stop
-<LI><a href="#[23c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;host_isconnect
-<LI><a href="#[256]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;host_disconnect
-<LI><a href="#[1af]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_charge_Getstate
-<LI><a href="#[124]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Except_TxError
-<LI><a href="#[255]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;scan_start
-<LI><a href="#[254]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_pair_UpdateScanNameFlag
-<LI><a href="#[111]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Ble_update_conn_interval
-<LI><a href="#[253]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_ota_host_state
-<LI><a href="#[23d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;slave_isconnect
-</UL>
-<BR>[Address Reference Count : 2]<UL><LI> app_connect_manage.o(i.app_connect_Process)
-<LI> app_connect_manage.o(i.app_connect_manage_Init)
-</UL>
-<P><STRONG><a name="[1fd]"></a>app_connect_manage_Init</STRONG> (Thumb, 60 bytes, Stack size 8 bytes, app_connect_manage.o(i.app_connect_manage_Init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = app_connect_manage_Init &rArr; Process_Start
-</UL>
-<BR>[Calls]<UL><LI><a href="#[fd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_Start
-<LI><a href="#[199]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Client_Rx_Regist
-<LI><a href="#[129]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Host_Rx_Regist
-<LI><a href="#[257]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Ble_Slave_Connectd_Evt_Regist
-<LI><a href="#[258]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Ble_Host_Connectd_Evt_Regist
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1ed]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;USR_Init
-</UL>
-
-<P><STRONG><a name="[251]"></a>app_conneted_getRight</STRONG> (Thumb, 30 bytes, Stack size 8 bytes, app_connect_manage.o(i.app_conneted_getRight))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = app_conneted_getRight
-</UL>
-<BR>[Calls]<UL><LI><a href="#[23c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;host_isconnect
-</UL>
-<BR>[Called By]<UL><LI><a href="#[5a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_connect_LED_Process
-<LI><a href="#[5b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_Client_BLE_CONNET_R
-</UL>
-
-<P><STRONG><a name="[1ff]"></a>app_data_transfer_Init</STRONG> (Thumb, 22 bytes, Stack size 8 bytes, app_data_transfer.o(i.app_data_transfer_Init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = app_data_transfer_Init &rArr; Process_Start
-</UL>
-<BR>[Calls]<UL><LI><a href="#[fd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_Start
-<LI><a href="#[259]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Host_Rx_Regist_Game
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1ed]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;USR_Init
-</UL>
-
-<P><STRONG><a name="[5f]"></a>app_data_transfer_set_SlaveData</STRONG> (Thumb, 26 bytes, Stack size 16 bytes, app_data_transfer.o(i.app_data_transfer_set_SlaveData))
-<BR><BR>[Stack]<UL><LI>Max Depth = 44<LI>Call Chain = app_data_transfer_set_SlaveData &rArr; IMU_Rec_data &rArr; queue_in
-</UL>
-<BR>[Calls]<UL><LI><a href="#[25b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_game_SetClientGameMode
-<LI><a href="#[16c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IMU_Rec_data
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> app_data_transfer.o(i.app_data_transfer_Init)
-</UL>
-<P><STRONG><a name="[1f4]"></a>app_detect_Init</STRONG> (Thumb, 312 bytes, Stack size 40 bytes, app_detectishost.o(i.app_detect_Init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 5072<LI>Call Chain = app_detect_Init &rArr; slave_adv_init &rArr; advertising_init &rArr; app_error_handler &rArr; app_error_fault_handler &rArr; Flash_SaveLog &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[fd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_Start
-<LI><a href="#[106]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_SetHoldOn
-<LI><a href="#[25c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;host_set_scan_name
-<LI><a href="#[23c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;host_isconnect
-<LI><a href="#[256]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;host_disconnect
-<LI><a href="#[262]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_register_data_notify_callback
-<LI><a href="#[261]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_Resume_config_param
-<LI><a href="#[1d8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ST_scan_stop
-<LI><a href="#[25f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Mahony_Init
-<LI><a href="#[126]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_Get_isHost
-<LI><a href="#[260]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_qma_setFrequency
-<LI><a href="#[25d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;slave_set_adv_name
-<LI><a href="#[23e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;slave_disconnect
-<LI><a href="#[25e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;slave_adv_init
-<LI><a href="#[236]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;advertising_stop
-<LI><a href="#[234]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;advertising_start
-<LI><a href="#[23d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;slave_isconnect
-<LI><a href="#[12b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__2sprintf
-<LI><a href="#[125]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;strlen
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1ed]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;USR_Init
-</UL>
-
-<P><STRONG><a name="[264]"></a>app_detect_LR_process_stop</STRONG> (Thumb, 22 bytes, Stack size 8 bytes, app_detectishost.o(i.app_detect_LR_process_stop))
-<BR><BR>[Stack]<UL><LI>Max Depth = 100<LI>Call Chain = app_detect_LR_process_stop &rArr; bll_imu_Resume_unregister_config_param &rArr; bll_imu_start_config &rArr; fml_imu_start_config &rArr; Process_SetHoldOn
-</UL>
-<BR>[Calls]<UL><LI><a href="#[265]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_Stop
-<LI><a href="#[23f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_Resume_unregister_config_param
-<LI><a href="#[260]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_qma_setFrequency
-</UL>
-<BR>[Called By]<UL><LI><a href="#[51]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_BLE_Client_BLE_AUTHEN
-</UL>
-
-<P><STRONG><a name="[a2]"></a>app_error_fault_handler</STRONG> (Thumb, 202 bytes, Stack size 208 bytes, exception.o(i.app_error_fault_handler))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4816<LI>Call Chain = app_error_fault_handler &rArr; Flash_SaveLog &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[13f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__NVIC_SystemReset
-<LI><a href="#[13b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_SaveLog
-<LI><a href="#[12b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__2sprintf
-<LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
-<LI><a href="#[fb]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy4
-</UL>
-<BR>[Called By]<UL><LI><a href="#[d1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_error_handler
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> nrf_sdh.o(i.nrf_sdh_enable_request)
-</UL>
-<P><STRONG><a name="[193]"></a>app_game_GetGameMode</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, app_game.o(i.app_game_GetGameMode))
-<BR><BR>[Called By]<UL><LI><a href="#[65]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;gamemode_data_notify_cb
-<LI><a href="#[64]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_AutoOutgame_Process
-<LI><a href="#[7c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_math_DailyStep_Process
-<LI><a href="#[5e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_data_transfer_Process
-<LI><a href="#[67]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LossPack_process
-<LI><a href="#[57]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_connect_Process
-<LI><a href="#[55]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_client_Process
-</UL>
-
-<P><STRONG><a name="[1fa]"></a>app_game_Init</STRONG> (Thumb, 42 bytes, Stack size 8 bytes, app_game.o(i.app_game_Init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = app_game_Init &rArr; Process_Start
-</UL>
-<BR>[Calls]<UL><LI><a href="#[fd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_Start
-<LI><a href="#[199]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Client_Rx_Regist
-<LI><a href="#[262]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_register_data_notify_callback
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1ed]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;USR_Init
-</UL>
-
-<P><STRONG><a name="[25b]"></a>app_game_SetClientGameMode</STRONG> (Thumb, 16 bytes, Stack size 0 bytes, app_game.o(i.app_game_SetClientGameMode))
-<BR><BR>[Called By]<UL><LI><a href="#[5f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_data_transfer_set_SlaveData
-</UL>
-
-<P><STRONG><a name="[250]"></a>app_host_GetClientData</STRONG> (Thumb, 42 bytes, Stack size 8 bytes, app_host.o(i.app_host_GetClientData))
-<BR><BR>[Stack]<UL><LI>Max Depth = 600<LI>Call Chain = app_host_GetClientData &rArr; BLE_Host_Tx_Send &rArr; BLE_Host_Send &rArr; send_bytes_server &rArr; ble_nus_c_string_send &rArr; nrf_ble_gq_item_add &rArr; queue_process &rArr; nrf_memobj_read &rArr; memobj_op
-</UL>
-<BR>[Calls]<UL><LI><a href="#[110]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Host_Tx_Send
-</UL>
-<BR>[Called By]<UL><LI><a href="#[56]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_client_step_Process
-<LI><a href="#[54]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_BLE_Client_R_UPDATE
-</UL>
-
-<P><STRONG><a name="[268]"></a>app_host_GetClientInfo</STRONG> (Thumb, 16 bytes, Stack size 8 bytes, app_host.o(i.app_host_GetClientInfo))
-<BR><BR>[Stack]<UL><LI>Max Depth = 600<LI>Call Chain = app_host_GetClientInfo &rArr; BLE_Host_Tx_Send &rArr; BLE_Host_Send &rArr; send_bytes_server &rArr; ble_nus_c_string_send &rArr; nrf_ble_gq_item_add &rArr; queue_process &rArr; nrf_memobj_read &rArr; memobj_op
-</UL>
-<BR>[Calls]<UL><LI><a href="#[110]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Host_Tx_Send
-</UL>
-<BR>[Called By]<UL><LI><a href="#[54]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_BLE_Client_R_UPDATE
-</UL>
-
-<P><STRONG><a name="[244]"></a>app_host_GetTemp_R</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, app_host.o(i.app_host_GetTemp_R))
-<BR><BR>[Called By]<UL><LI><a href="#[1b1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_client_DataUpdate_Send
-</UL>
-
-<P><STRONG><a name="[246]"></a>app_host_GetVolAdc_R</STRONG> (Thumb, 8 bytes, Stack size 0 bytes, app_host.o(i.app_host_GetVolAdc_R))
-<BR><BR>[Called By]<UL><LI><a href="#[1b1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_client_DataUpdate_Send
-</UL>
-
-<P><STRONG><a name="[243]"></a>app_host_GetVol_R</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, app_host.o(i.app_host_GetVol_R))
-<BR><BR>[Called By]<UL><LI><a href="#[1b1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_client_DataUpdate_Send
-</UL>
-
-<P><STRONG><a name="[1f6]"></a>app_host_Initialize</STRONG> (Thumb, 12 bytes, Stack size 8 bytes, app_host.o(i.app_host_Initialize))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = app_host_Initialize &rArr; BLE_Host_Rx_Regist
-</UL>
-<BR>[Calls]<UL><LI><a href="#[129]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Host_Rx_Regist
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1ed]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;USR_Init
-</UL>
-
-<P><STRONG><a name="[70]"></a>app_led_blink_process</STRONG> (Thumb, 78 bytes, Stack size 8 bytes, app_pair.o(i.app_led_blink_process))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = app_led_blink_process
-</UL>
-<BR>[Calls]<UL><LI><a href="#[120]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LED_Stop
-<LI><a href="#[269]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LED_SetColor
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> app_pair.o(i.app_pair_Initialize)
-</UL>
-<P><STRONG><a name="[202]"></a>app_losspack_Init</STRONG> (Thumb, 16 bytes, Stack size 8 bytes, app_losspack.o(i.app_losspack_Init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = app_losspack_Init &rArr; Process_Start
-</UL>
-<BR>[Calls]<UL><LI><a href="#[fd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_Start
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1ed]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;USR_Init
-</UL>
-
-<P><STRONG><a name="[1fb]"></a>app_math_Init</STRONG> (Thumb, 16 bytes, Stack size 8 bytes, app_math.o(i.app_math_Init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = app_math_Init &rArr; Process_Start
-</UL>
-<BR>[Calls]<UL><LI><a href="#[fd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_Start
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1ed]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;USR_Init
-</UL>
-
-<P><STRONG><a name="[248]"></a>app_math_calit_time</STRONG> (Thumb, 12 bytes, Stack size 0 bytes, app_math.o(i.app_math_calit_time))
-<BR><BR>[Called By]<UL><LI><a href="#[247]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_client_DeleteStep
-</UL>
-
-<P><STRONG><a name="[1fc]"></a>app_ota_Init</STRONG> (Thumb, 42 bytes, Stack size 8 bytes, app_ota.o(i.app_ota_Init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = app_ota_Init &rArr; Process_Start
-</UL>
-<BR>[Calls]<UL><LI><a href="#[fd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_Start
-<LI><a href="#[199]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Client_Rx_Regist
-<LI><a href="#[129]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Host_Rx_Regist
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1ed]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;USR_Init
-</UL>
-
-<P><STRONG><a name="[253]"></a>app_ota_host_state</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, app_ota.o(i.app_ota_host_state))
-<BR><BR>[Called By]<UL><LI><a href="#[57]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_connect_Process
-</UL>
-
-<P><STRONG><a name="[1f7]"></a>app_overturn_Init</STRONG> (Thumb, 26 bytes, Stack size 8 bytes, app_overturn.o(i.app_overturn_Init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = app_overturn_Init &rArr; Process_Start
-</UL>
-<BR>[Calls]<UL><LI><a href="#[fd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_Start
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1ed]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;USR_Init
-</UL>
-
-<P><STRONG><a name="[203]"></a>app_pair_Initialize</STRONG> (Thumb, 52 bytes, Stack size 8 bytes, app_pair.o(i.app_pair_Initialize))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = app_pair_Initialize &rArr; Process_Start
-</UL>
-<BR>[Calls]<UL><LI><a href="#[fd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_Start
-<LI><a href="#[199]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Client_Rx_Regist
-<LI><a href="#[129]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Host_Rx_Regist
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1ed]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;USR_Init
-</UL>
-
-<P><STRONG><a name="[254]"></a>app_pair_UpdateScanNameFlag</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, app_pair.o(i.app_pair_UpdateScanNameFlag))
-<BR><BR>[Called By]<UL><LI><a href="#[57]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_connect_Process
-</UL>
-
-<P><STRONG><a name="[200]"></a>app_safe_Init</STRONG> (Thumb, 110 bytes, Stack size 8 bytes, app_safe.o(i.app_safe_Init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4592<LI>Call Chain = app_safe_Init &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[fd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_Start
-<LI><a href="#[106]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_SetHoldOn
-<LI><a href="#[199]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Client_Rx_Regist
-<LI><a href="#[139]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_SaveInfomation
-<LI><a href="#[122]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LED_Start
-<LI><a href="#[124]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Except_TxError
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1ed]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;USR_Init
-</UL>
-
-<P><STRONG><a name="[13d]"></a>app_step_GetStep_L</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, app_step.o(i.app_step_GetStep_L))
-<BR><BR>[Called By]<UL><LI><a href="#[24c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_client_SendStepAll
-<LI><a href="#[13c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_SaveStep
-</UL>
-
-<P><STRONG><a name="[13e]"></a>app_step_GetStep_R</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, app_step.o(i.app_step_GetStep_R))
-<BR><BR>[Called By]<UL><LI><a href="#[24c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_client_SendStepAll
-<LI><a href="#[13c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_SaveStep
-</UL>
-
-<P><STRONG><a name="[1f9]"></a>app_step_Init</STRONG> (Thumb, 58 bytes, Stack size 8 bytes, app_step.o(i.app_step_Init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = app_step_Init &rArr; Process_Start
-</UL>
-<BR>[Calls]<UL><LI><a href="#[fd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_Start
-<LI><a href="#[199]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Client_Rx_Regist
-<LI><a href="#[262]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_register_data_notify_callback
-<LI><a href="#[129]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Host_Rx_Regist
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1ed]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;USR_Init
-</UL>
-
-<P><STRONG><a name="[79]"></a>app_step_RealConnectProcess</STRONG> (Thumb, 332 bytes, Stack size 16 bytes, app_step.o(i.app_step_RealConnectProcess))
-<BR><BR>[Stack]<UL><LI>Max Depth = 608<LI>Call Chain = app_step_RealConnectProcess &rArr; BLE_Host_Tx_Send &rArr; BLE_Host_Send &rArr; send_bytes_server &rArr; ble_nus_c_string_send &rArr; nrf_ble_gq_item_add &rArr; queue_process &rArr; nrf_memobj_read &rArr; memobj_op
-</UL>
-<BR>[Calls]<UL><LI><a href="#[23f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_Resume_unregister_config_param
-<LI><a href="#[110]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Host_Tx_Send
-<LI><a href="#[263]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_query_config_param_is_ready
-<LI><a href="#[261]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_Resume_config_param
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> app_step.o(i.app_step_Init)
-</UL>
-<P><STRONG><a name="[25a]"></a>app_step_Real_Get</STRONG> (Thumb, 14 bytes, Stack size 0 bytes, app_step.o(i.app_step_Real_Get))
-<BR><BR>[Called By]<UL><LI><a href="#[5e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_data_transfer_Process
-<LI><a href="#[54]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_BLE_Client_R_UPDATE
-</UL>
-
-<P><STRONG><a name="[1fe]"></a>app_switchimu_Init</STRONG> (Thumb, 12 bytes, Stack size 8 bytes, app_switchimu.o(i.app_switchimu_Init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = app_switchimu_Init &rArr; BLE_Client_Rx_Regist
-</UL>
-<BR>[Calls]<UL><LI><a href="#[199]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Client_Rx_Regist
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1ed]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;USR_Init
-</UL>
-
-<P><STRONG><a name="[275]"></a>app_timer_cnt_get</STRONG> (Thumb, 10 bytes, Stack size 8 bytes, app_timer2.o(i.app_timer_cnt_get))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = app_timer_cnt_get &rArr; drv_rtc_counter_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[276]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_rtc_counter_get
-</UL>
-<BR>[Called By]<UL><LI><a href="#[47d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;rtc_schedule
-</UL>
-
-<P><STRONG><a name="[2a0]"></a>app_timer_create</STRONG> (Thumb, 32 bytes, Stack size 8 bytes, app_timer2.o(i.app_timer_create))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = app_timer_create
-</UL>
-<BR>[Called By]<UL><LI><a href="#[29f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_conn_params_init
-</UL>
-
-<P><STRONG><a name="[277]"></a>app_timer_init</STRONG> (Thumb, 78 bytes, Stack size 16 bytes, app_timer2.o(i.app_timer_init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 56<LI>Call Chain = app_timer_init &rArr; drv_rtc_compare_set &rArr; nrf_rtc_event_clear
-</UL>
-<BR>[Calls]<UL><LI><a href="#[278]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_atfifo_init
-<LI><a href="#[27a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_rtc_overflow_enable
-<LI><a href="#[279]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_rtc_init
-<LI><a href="#[27b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_rtc_compare_set
-</UL>
-<BR>[Called By]<UL><LI><a href="#[3c5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;timer_init
-</UL>
-
-<P><STRONG><a name="[27c]"></a>app_timer_start</STRONG> (Thumb, 54 bytes, Stack size 24 bytes, app_timer2.o(i.app_timer_start))
-<BR><BR>[Stack]<UL><LI>Max Depth = 64<LI>Call Chain = app_timer_start &rArr; timer_req_schedule &rArr; nrf_atfifo_item_put
-</UL>
-<BR>[Calls]<UL><LI><a href="#[27e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;timer_req_schedule
-<LI><a href="#[27d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;get_now
-</UL>
-<BR>[Called By]<UL><LI><a href="#[2fd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;conn_params_negotiation
-</UL>
-
-<P><STRONG><a name="[27f]"></a>app_timer_stop</STRONG> (Thumb, 20 bytes, Stack size 16 bytes, app_timer2.o(i.app_timer_stop))
-<BR><BR>[Stack]<UL><LI>Max Depth = 56<LI>Call Chain = app_timer_stop &rArr; timer_req_schedule &rArr; nrf_atfifo_item_put
-</UL>
-<BR>[Calls]<UL><LI><a href="#[27e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;timer_req_schedule
-</UL>
-<BR>[Called By]<UL><LI><a href="#[2c8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_write
-<LI><a href="#[2c7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_disconnect
-</UL>
-
-<P><STRONG><a name="[280]"></a>app_util_critical_region_enter</STRONG> (Thumb, 12 bytes, Stack size 8 bytes, app_util_platform.o(i.app_util_critical_region_enter))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = app_util_critical_region_enter &rArr; sd_nvic_critical_region_enter
-</UL>
-<BR>[Calls]<UL><LI><a href="#[281]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;sd_nvic_critical_region_enter
-</UL>
-<BR>[Called By]<UL><LI><a href="#[441]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_prs_acquire
-<LI><a href="#[459]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_wdt_channel_alloc
-<LI><a href="#[42f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_pwr_mgmt_run
-<LI><a href="#[2dc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_sdh_enable_request
-<LI><a href="#[40e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_queue_push
-<LI><a href="#[432]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_queue_generic_pop
-<LI><a href="#[424]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_drv_clock_lfclk_release
-<LI><a href="#[ce]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;sd_state_evt_handler
-<LI><a href="#[3fe]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_balloc_free
-<LI><a href="#[3fc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_balloc_alloc
-</UL>
-
-<P><STRONG><a name="[282]"></a>app_util_critical_region_exit</STRONG> (Thumb, 62 bytes, Stack size 16 bytes, app_util_platform.o(i.app_util_critical_region_exit))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = app_util_critical_region_exit
-</UL>
-<BR>[Calls]<UL><LI><a href="#[283]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__sd_nvic_irq_disable
-</UL>
-<BR>[Called By]<UL><LI><a href="#[441]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_prs_acquire
-<LI><a href="#[459]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_wdt_channel_alloc
-<LI><a href="#[42f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_pwr_mgmt_run
-<LI><a href="#[2dc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_sdh_enable_request
-<LI><a href="#[40e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_queue_push
-<LI><a href="#[432]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_queue_generic_pop
-<LI><a href="#[424]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_drv_clock_lfclk_release
-<LI><a href="#[ce]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;sd_state_evt_handler
-<LI><a href="#[3fe]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_balloc_free
-<LI><a href="#[3fc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_balloc_alloc
-</UL>
-
-<P><STRONG><a name="[220]"></a>atan</STRONG> (Thumb, 16 bytes, Stack size 8 bytes, atan.o(i.atan))
-<BR><BR>[Stack]<UL><LI>Max Depth = 168<LI>Call Chain = atan &rArr; __hardfp_atan &rArr; __kernel_poly &rArr; __aeabi_dadd &rArr; _double_epilogue &rArr; _double_round
-</UL>
-<BR>[Calls]<UL><LI><a href="#[21d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_atan
-</UL>
-<BR>[Called By]<UL><LI><a href="#[21e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_atan2
-</UL>
-
-<P><STRONG><a name="[286]"></a>attitude_matrix_update</STRONG> (Thumb, 594 bytes, Stack size 32 bytes, footpdr.o(i.attitude_matrix_update))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = attitude_matrix_update
-</UL>
-<BR>[Calls]<UL><LI><a href="#[fa]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;multiply3x3
-<LI><a href="#[f9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;invert3x3
-<LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
-</UL>
-<BR>[Called By]<UL><LI><a href="#[3a9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;footPDR
-</UL>
-
-<P><STRONG><a name="[474]"></a>avoid_down_during_change_road_by_acc</STRONG> (Thumb, 110 bytes, Stack size 24 bytes, press_down_detect.o(i.avoid_down_during_change_road_by_acc))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = avoid_down_during_change_road_by_acc
-</UL>
-<BR>[Called By]<UL><LI><a href="#[472]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;press_down_detect_new
-</UL>
-
-<P><STRONG><a name="[287]"></a>blcm_link_ctx_get</STRONG> (Thumb, 108 bytes, Stack size 24 bytes, ble_link_ctx_manager.o(i.blcm_link_ctx_get))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[288]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_conn_state_conn_idx
-</UL>
-<BR>[Called By]<UL><LI><a href="#[2d3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_nus_data_send
-<LI><a href="#[2d6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_write
-<LI><a href="#[2d7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_hvx_tx_complete
-<LI><a href="#[2d5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_connect
-</UL>
-
-<P><STRONG><a name="[289]"></a>ble_advdata_encode</STRONG> (Thumb, 364 bytes, Stack size 32 bytes, ble_advdata.o(i.ble_advdata_encode))
-<BR><BR>[Stack]<UL><LI>Max Depth = 128<LI>Call Chain = ble_advdata_encode &rArr; uuid_list_encode &rArr; uuid_list_sized_encode
-</UL>
-<BR>[Calls]<UL><LI><a href="#[28d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;uuid_list_encode
-<LI><a href="#[28c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;tx_power_level_encode
-<LI><a href="#[290]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;service_data_encode
-<LI><a href="#[291]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;name_encode
-<LI><a href="#[28f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;manuf_specific_data_encode
-<LI><a href="#[28b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;flags_encode
-<LI><a href="#[28e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;conn_int_encode
-<LI><a href="#[28a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_device_addr_encode
-<LI><a href="#[284]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;appearance_encode
-</UL>
-<BR>[Called By]<UL><LI><a href="#[232]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_advertising_init
-</UL>
-
-<P><STRONG><a name="[230]"></a>ble_advdata_name_find</STRONG> (Thumb, 78 bytes, Stack size 32 bytes, ble_advdata.o(i.ble_advdata_name_find))
-<BR><BR>[Stack]<UL><LI>Max Depth = 52<LI>Call Chain = ble_advdata_name_find &rArr; ble_advdata_search
-</UL>
-<BR>[Calls]<UL><LI><a href="#[292]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_advdata_search
-<LI><a href="#[293]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;memcmp
-<LI><a href="#[125]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;strlen
-</UL>
-<BR>[Called By]<UL><LI><a href="#[22f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;adv_name_compare
-</UL>
-
-<P><STRONG><a name="[294]"></a>ble_advdata_parse</STRONG> (Thumb, 40 bytes, Stack size 24 bytes, ble_advdata.o(i.ble_advdata_parse))
-<BR><BR>[Stack]<UL><LI>Max Depth = 44<LI>Call Chain = ble_advdata_parse &rArr; ble_advdata_search
-</UL>
-<BR>[Calls]<UL><LI><a href="#[292]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_advdata_search
-</UL>
-<BR>[Called By]<UL><LI><a href="#[39a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;flags_set
-</UL>
-
-<P><STRONG><a name="[292]"></a>ble_advdata_search</STRONG> (Thumb, 92 bytes, Stack size 20 bytes, ble_advdata.o(i.ble_advdata_search))
-<BR><BR>[Stack]<UL><LI>Max Depth = 20<LI>Call Chain = ble_advdata_search
-</UL>
-<BR>[Called By]<UL><LI><a href="#[294]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_advdata_parse
-<LI><a href="#[230]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_advdata_name_find
-</UL>
-
-<P><STRONG><a name="[233]"></a>ble_advertising_conn_cfg_tag_set</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, ble_advertising.o(i.ble_advertising_conn_cfg_tag_set))
-<BR><BR>[Called By]<UL><LI><a href="#[231]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;advertising_init
-</UL>
-
-<P><STRONG><a name="[232]"></a>ble_advertising_init</STRONG> (Thumb, 264 bytes, Stack size 16 bytes, ble_advertising.o(i.ble_advertising_init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 144<LI>Call Chain = ble_advertising_init &rArr; ble_advdata_encode &rArr; uuid_list_encode &rArr; uuid_list_sized_encode
-</UL>
-<BR>[Calls]<UL><LI><a href="#[289]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_advdata_encode
-<LI><a href="#[295]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;config_is_valid
-<LI><a href="#[296]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;adv_set_data_size_max_get
-<LI><a href="#[fb]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy4
-</UL>
-<BR>[Called By]<UL><LI><a href="#[231]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;advertising_init
-</UL>
-
-<P><STRONG><a name="[be]"></a>ble_advertising_on_ble_evt</STRONG> (Thumb, 60 bytes, Stack size 16 bytes, ble_advertising.o(i.ble_advertising_on_ble_evt))
-<BR><BR>[Stack]<UL><LI>Max Depth = 132<LI>Call Chain = ble_advertising_on_ble_evt &rArr; on_terminated &rArr; ble_advertising_start &rArr; set_adv_mode_slow &rArr; flags_set &rArr; ble_advdata_parse &rArr; ble_advdata_search
-</UL>
-<BR>[Calls]<UL><LI><a href="#[299]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_terminated
-<LI><a href="#[298]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_disconnected
-<LI><a href="#[297]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_connected
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> slave.o(sdh_ble_observers1)
-</UL>
-<P><STRONG><a name="[235]"></a>ble_advertising_start</STRONG> (Thumb, 386 bytes, Stack size 16 bytes, ble_advertising.o(i.ble_advertising_start))
-<BR><BR>[Stack]<UL><LI>Max Depth = 92<LI>Call Chain = ble_advertising_start &rArr; set_adv_mode_slow &rArr; flags_set &rArr; ble_advdata_parse &rArr; ble_advdata_search
-</UL>
-<BR>[Calls]<UL><LI><a href="#[29e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;set_adv_mode_slow
-<LI><a href="#[29d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;set_adv_mode_fast
-<LI><a href="#[29b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;set_adv_mode_directed_high_duty
-<LI><a href="#[29c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;set_adv_mode_directed
-<LI><a href="#[29a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;phy_is_valid
-<LI><a href="#[22d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;adv_mode_next_avail_get
-<LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
-</UL>
-<BR>[Called By]<UL><LI><a href="#[234]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;advertising_start
-<LI><a href="#[4f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_adv_evt
-<LI><a href="#[299]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_terminated
-<LI><a href="#[298]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_disconnected
-</UL>
-
-<P><STRONG><a name="[29f]"></a>ble_conn_params_init</STRONG> (Thumb, 136 bytes, Stack size 24 bytes, ble_conn_params.o(i.ble_conn_params_init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = ble_conn_params_init &rArr; app_timer_create
-</UL>
-<BR>[Calls]<UL><LI><a href="#[2a0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_timer_create
-<LI><a href="#[fb]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy4
-</UL>
-<BR>[Called By]<UL><LI><a href="#[2fc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;conn_params_init
-</UL>
-
-<P><STRONG><a name="[288]"></a>ble_conn_state_conn_idx</STRONG> (Thumb, 20 bytes, Stack size 8 bytes, ble_conn_state.o(i.ble_conn_state_conn_idx))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[2a1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_conn_state_valid
-</UL>
-<BR>[Called By]<UL><LI><a href="#[287]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;blcm_link_ctx_get
-</UL>
-
-<P><STRONG><a name="[2a2]"></a>ble_conn_state_role</STRONG> (Thumb, 40 bytes, Stack size 16 bytes, ble_conn_state.o(i.ble_conn_state_role))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = ble_conn_state_role &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[2a3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_atflags_get
-<LI><a href="#[2a1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_conn_state_valid
-</UL>
-<BR>[Called By]<UL><LI><a href="#[c8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_evt_handler
-</UL>
-
-<P><STRONG><a name="[2a1]"></a>ble_conn_state_valid</STRONG> (Thumb, 22 bytes, Stack size 8 bytes, ble_conn_state.o(i.ble_conn_state_valid))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[2a3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_atflags_get
-</UL>
-<BR>[Called By]<UL><LI><a href="#[2a2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_conn_state_role
-<LI><a href="#[288]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_conn_state_conn_idx
-</UL>
-
-<P><STRONG><a name="[2a4]"></a>ble_db_discovery_evt_register</STRONG> (Thumb, 42 bytes, Stack size 8 bytes, ble_db_discovery.o(i.ble_db_discovery_evt_register))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = ble_db_discovery_evt_register &rArr; registered_handler_set
-</UL>
-<BR>[Calls]<UL><LI><a href="#[2a5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;registered_handler_set
-</UL>
-<BR>[Called By]<UL><LI><a href="#[2cd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_nus_c_init
-</UL>
-
-<P><STRONG><a name="[300]"></a>ble_db_discovery_init</STRONG> (Thumb, 66 bytes, Stack size 0 bytes, ble_db_discovery.o(i.ble_db_discovery_init))
-<BR><BR>[Called By]<UL><LI><a href="#[2ff]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;db_discovery_init
-</UL>
-
-<P><STRONG><a name="[c0]"></a>ble_db_discovery_on_ble_evt</STRONG> (Thumb, 106 bytes, Stack size 16 bytes, ble_db_discovery.o(i.ble_db_discovery_on_ble_evt))
-<BR><BR>[Stack]<UL><LI>Max Depth = 352<LI>Call Chain = ble_db_discovery_on_ble_evt &rArr; on_characteristic_discovery_rsp &rArr; descriptors_discover &rArr; nrf_ble_gq_item_add &rArr; queue_process &rArr; nrf_memobj_read &rArr; memobj_op
-</UL>
-<BR>[Calls]<UL><LI><a href="#[2a6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_primary_srv_discovery_rsp
-<LI><a href="#[2a9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_disconnected
-<LI><a href="#[2a8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_descriptor_discovery_rsp
-<LI><a href="#[2a7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_characteristic_discovery_rsp
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> host.o(sdh_ble_observers1)
-</UL>
-<P><STRONG><a name="[2aa]"></a>ble_db_discovery_start</STRONG> (Thumb, 62 bytes, Stack size 16 bytes, ble_db_discovery.o(i.ble_db_discovery_start))
-<BR><BR>[Stack]<UL><LI>Max Depth = 288<LI>Call Chain = ble_db_discovery_start &rArr; discovery_start &rArr; nrf_ble_gq_item_add &rArr; queue_process &rArr; nrf_memobj_read &rArr; memobj_op
-</UL>
-<BR>[Calls]<UL><LI><a href="#[2ab]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;discovery_start
-</UL>
-<BR>[Called By]<UL><LI><a href="#[2c0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_ble_central_evt
-</UL>
-
-<P><STRONG><a name="[2ac]"></a>ble_dfu_buttonless_async_svci_init</STRONG> (Thumb, 54 bytes, Stack size 16 bytes, ble_dfu_unbonded.o(i.ble_dfu_buttonless_async_svci_init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = ble_dfu_buttonless_async_svci_init &rArr; nrf_dfu_svci_vector_table_set
-</UL>
-<BR>[Calls]<UL><LI><a href="#[2ae]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_dfu_svci_vector_table_unset
-<LI><a href="#[2ad]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_dfu_svci_vector_table_set
-</UL>
-<BR>[Called By]<UL><LI><a href="#[3c1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_dfu_init
-</UL>
-
-<P><STRONG><a name="[2b4]"></a>ble_dfu_buttonless_backend_init</STRONG> (Thumb, 20 bytes, Stack size 0 bytes, ble_dfu_unbonded.o(i.ble_dfu_buttonless_backend_init))
-<BR><BR>[Called By]<UL><LI><a href="#[2b3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_dfu_buttonless_init
-</UL>
-
-<P><STRONG><a name="[2af]"></a>ble_dfu_buttonless_bootloader_start_finalize</STRONG> (Thumb, 58 bytes, Stack size 8 bytes, ble_dfu.o(i.ble_dfu_buttonless_bootloader_start_finalize))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = ble_dfu_buttonless_bootloader_start_finalize &rArr; nrf_pwr_mgmt_shutdown &rArr; nrf_atomic_u32_fetch_store
-</UL>
-<BR>[Calls]<UL><LI><a href="#[26d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_pwr_mgmt_shutdown
-</UL>
-<BR>[Called By]<UL><LI><a href="#[2b0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_dfu_buttonless_bootloader_start_prepare
-</UL>
-
-<P><STRONG><a name="[2b0]"></a>ble_dfu_buttonless_bootloader_start_prepare</STRONG> (Thumb, 22 bytes, Stack size 8 bytes, ble_dfu_unbonded.o(i.ble_dfu_buttonless_bootloader_start_prepare))
-<BR><BR>[Stack]<UL><LI>Max Depth = 56<LI>Call Chain = ble_dfu_buttonless_bootloader_start_prepare &rArr; ble_dfu_buttonless_bootloader_start_finalize &rArr; nrf_pwr_mgmt_shutdown &rArr; nrf_atomic_u32_fetch_store
-</UL>
-<BR>[Calls]<UL><LI><a href="#[2af]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_dfu_buttonless_bootloader_start_finalize
-</UL>
-<BR>[Called By]<UL><LI><a href="#[2b8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_hvc
-</UL>
-
-<P><STRONG><a name="[2b1]"></a>ble_dfu_buttonless_char_add</STRONG> (Thumb, 98 bytes, Stack size 40 bytes, ble_dfu_unbonded.o(i.ble_dfu_buttonless_char_add))
-<BR><BR>[Stack]<UL><LI>Max Depth = 120<LI>Call Chain = ble_dfu_buttonless_char_add &rArr; characteristic_add
-</UL>
-<BR>[Calls]<UL><LI><a href="#[2b2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;characteristic_add
-<LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
-</UL>
-<BR>[Called By]<UL><LI><a href="#[2b3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_dfu_buttonless_init
-</UL>
-
-<P><STRONG><a name="[2b3]"></a>ble_dfu_buttonless_init</STRONG> (Thumb, 150 bytes, Stack size 32 bytes, ble_dfu.o(i.ble_dfu_buttonless_init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 152<LI>Call Chain = ble_dfu_buttonless_init &rArr; ble_dfu_buttonless_char_add &rArr; characteristic_add
-</UL>
-<BR>[Calls]<UL><LI><a href="#[2b1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_dfu_buttonless_char_add
-<LI><a href="#[2b4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_dfu_buttonless_backend_init
-</UL>
-<BR>[Called By]<UL><LI><a href="#[3c2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_dfu_server_init
-</UL>
-
-<P><STRONG><a name="[c7]"></a>ble_dfu_buttonless_on_ble_evt</STRONG> (Thumb, 74 bytes, Stack size 16 bytes, ble_dfu.o(i.ble_dfu_buttonless_on_ble_evt))
-<BR><BR>[Stack]<UL><LI>Max Depth = 160<LI>Call Chain = ble_dfu_buttonless_on_ble_evt &rArr; on_rw_authorize_req &rArr; on_ctrlpt_write &rArr; ble_dfu_buttonless_on_ctrl_pt_write &rArr; enter_bootloader &rArr; ble_dfu_buttonless_resp_send
-</UL>
-<BR>[Calls]<UL><LI><a href="#[2b7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_rw_authorize_req
-<LI><a href="#[2b8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_hvc
-<LI><a href="#[2b6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_disconnect
-<LI><a href="#[2b5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_connect
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> ble_dfu.o(sdh_ble_observers2)
-</UL>
-<P><STRONG><a name="[2b9]"></a>ble_dfu_buttonless_on_ctrl_pt_write</STRONG> (Thumb, 160 bytes, Stack size 24 bytes, ble_dfu_unbonded.o(i.ble_dfu_buttonless_on_ctrl_pt_write))
-<BR><BR>[Stack]<UL><LI>Max Depth = 88<LI>Call Chain = ble_dfu_buttonless_on_ctrl_pt_write &rArr; enter_bootloader &rArr; ble_dfu_buttonless_resp_send
-</UL>
-<BR>[Calls]<UL><LI><a href="#[106]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_SetHoldOn
-<LI><a href="#[2bb]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;set_adv_name
-<LI><a href="#[2ba]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;enter_bootloader
-<LI><a href="#[2bc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_dfu_buttonless_resp_send
-<LI><a href="#[127]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy
-</UL>
-<BR>[Called By]<UL><LI><a href="#[468]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_ctrlpt_write
-</UL>
-
-<P><STRONG><a name="[cb]"></a>ble_dfu_buttonless_on_sys_evt</STRONG> (Thumb, 130 bytes, Stack size 16 bytes, ble_dfu_unbonded.o(i.ble_dfu_buttonless_on_sys_evt))
-<BR><BR>[Stack]<UL><LI>Max Depth = 64<LI>Call Chain = ble_dfu_buttonless_on_sys_evt &rArr; ble_dfu_buttonless_resp_send
-</UL>
-<BR>[Calls]<UL><LI><a href="#[2bc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_dfu_buttonless_resp_send
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> ble_dfu_unbonded.o(sdh_soc_observers1)
-</UL>
-<P><STRONG><a name="[2bc]"></a>ble_dfu_buttonless_resp_send</STRONG> (Thumb, 94 bytes, Stack size 48 bytes, ble_dfu.o(i.ble_dfu_buttonless_resp_send))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = ble_dfu_buttonless_resp_send
-</UL>
-<BR>[Called By]<UL><LI><a href="#[cb]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_dfu_buttonless_on_sys_evt
-<LI><a href="#[2ba]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;enter_bootloader
-<LI><a href="#[81]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bsp_ble_dfu_process
-<LI><a href="#[2b9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_dfu_buttonless_on_ctrl_pt_write
-</UL>
-
-<P><STRONG><a name="[2be]"></a>ble_evt_is_advertising_timeout</STRONG> (Thumb, 16 bytes, Stack size 0 bytes, slave.o(i.ble_evt_is_advertising_timeout))
-<BR><BR>[Called By]<UL><LI><a href="#[c8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_evt_handler
-</UL>
-
-<P><STRONG><a name="[45c]"></a>ble_host_connected_evt_pcs</STRONG> (Thumb, 34 bytes, Stack size 8 bytes, host.o(i.ble_host_connected_evt_pcs))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = ble_host_connected_evt_pcs
-</UL>
-<BR>[Called By]<UL><LI><a href="#[2c0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_ble_central_evt
-</UL>
-
-<P><STRONG><a name="[45d]"></a>ble_host_dicconn_evt_pcs</STRONG> (Thumb, 34 bytes, Stack size 8 bytes, host.o(i.ble_host_dicconn_evt_pcs))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = ble_host_dicconn_evt_pcs
-</UL>
-<BR>[Called By]<UL><LI><a href="#[2c0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_ble_central_evt
-</UL>
-
-<P><STRONG><a name="[2ca]"></a>ble_nus_c_handles_assign</STRONG> (Thumb, 44 bytes, Stack size 16 bytes, ble_nus_c.o(i.ble_nus_c_handles_assign))
-<BR><BR>[Stack]<UL><LI>Max Depth = 184<LI>Call Chain = ble_nus_c_handles_assign &rArr; nrf_ble_gq_conn_handle_register &rArr; queues_purge &rArr; nrf_memobj_free &rArr; nrf_balloc_free &rArr; app_util_critical_region_enter &rArr; sd_nvic_critical_region_enter
-</UL>
-<BR>[Calls]<UL><LI><a href="#[2cc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_gq_conn_handle_register
-</UL>
-<BR>[Called By]<UL><LI><a href="#[2c0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_ble_central_evt
-<LI><a href="#[a3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_nus_c_evt_handler
-</UL>
-
-<P><STRONG><a name="[2cd]"></a>ble_nus_c_init</STRONG> (Thumb, 114 bytes, Stack size 40 bytes, ble_nus_c.o(i.ble_nus_c_init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 64<LI>Call Chain = ble_nus_c_init &rArr; ble_db_discovery_evt_register &rArr; registered_handler_set
-</UL>
-<BR>[Calls]<UL><LI><a href="#[2a4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_db_discovery_evt_register
-</UL>
-<BR>[Called By]<UL><LI><a href="#[3c7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nus_c_init
-</UL>
-
-<P><STRONG><a name="[c6]"></a>ble_nus_c_on_ble_evt</STRONG> (Thumb, 102 bytes, Stack size 40 bytes, ble_nus_c.o(i.ble_nus_c_on_ble_evt))
-<BR><BR>[Stack]<UL><LI>Max Depth = 72<LI>Call Chain = ble_nus_c_on_ble_evt &rArr; on_hvx
-</UL>
-<BR>[Calls]<UL><LI><a href="#[2ce]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_hvx
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> host.o(sdh_ble_observers2)
-</UL>
-<P><STRONG><a name="[2cf]"></a>ble_nus_c_on_db_disc_evt</STRONG> (Thumb, 148 bytes, Stack size 40 bytes, ble_nus_c.o(i.ble_nus_c_on_db_disc_evt))
-<BR><BR>[Stack]<UL><LI>Max Depth = 40<LI>Call Chain = ble_nus_c_on_db_disc_evt
-</UL>
-<BR>[Calls]<UL><LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
-</UL>
-<BR>[Called By]<UL><LI><a href="#[8b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;db_disc_handler
-</UL>
-
-<P><STRONG><a name="[2d0]"></a>ble_nus_c_string_send</STRONG> (Thumb, 106 bytes, Stack size 48 bytes, ble_nus_c.o(i.ble_nus_c_string_send))
-<BR><BR>[Stack]<UL><LI>Max Depth = 264<LI>Call Chain = ble_nus_c_string_send &rArr; nrf_ble_gq_item_add &rArr; queue_process &rArr; nrf_memobj_read &rArr; memobj_op
-</UL>
-<BR>[Calls]<UL><LI><a href="#[2d1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_gq_item_add
-<LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
-</UL>
-<BR>[Called By]<UL><LI><a href="#[10e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;send_bytes_server
-</UL>
-
-<P><STRONG><a name="[2cb]"></a>ble_nus_c_tx_notif_enable</STRONG> (Thumb, 42 bytes, Stack size 8 bytes, ble_nus_c.o(i.ble_nus_c_tx_notif_enable))
-<BR><BR>[Stack]<UL><LI>Max Depth = 280<LI>Call Chain = ble_nus_c_tx_notif_enable &rArr; cccd_configure &rArr; nrf_ble_gq_item_add &rArr; queue_process &rArr; nrf_memobj_read &rArr; memobj_op
-</UL>
-<BR>[Calls]<UL><LI><a href="#[2d2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cccd_configure
-</UL>
-<BR>[Called By]<UL><LI><a href="#[a3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_nus_c_evt_handler
-</UL>
-
-<P><STRONG><a name="[2d3]"></a>ble_nus_data_send</STRONG> (Thumb, 122 bytes, Stack size 48 bytes, ble_nus.o(i.ble_nus_data_send))
-<BR><BR>[Stack]<UL><LI>Max Depth = 96<LI>Call Chain = ble_nus_data_send &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[287]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;blcm_link_ctx_get
-</UL>
-<BR>[Called By]<UL><LI><a href="#[103]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;send_bytes_client
-</UL>
-
-<P><STRONG><a name="[2d4]"></a>ble_nus_init</STRONG> (Thumb, 260 bytes, Stack size 72 bytes, ble_nus.o(i.ble_nus_init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 152<LI>Call Chain = ble_nus_init &rArr; characteristic_add
-</UL>
-<BR>[Calls]<UL><LI><a href="#[2b2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;characteristic_add
-<LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
-</UL>
-<BR>[Called By]<UL><LI><a href="#[48e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;services_init
-</UL>
-
-<P><STRONG><a name="[c4]"></a>ble_nus_on_ble_evt</STRONG> (Thumb, 68 bytes, Stack size 16 bytes, ble_nus.o(i.ble_nus_on_ble_evt))
-<BR><BR>[Stack]<UL><LI>Max Depth = 120<LI>Call Chain = ble_nus_on_ble_evt &rArr; on_connect &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[2d6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_write
-<LI><a href="#[2d7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_hvx_tx_complete
-<LI><a href="#[2d5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_connect
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> slave.o(sdh_ble_observers2)
-</UL>
-<P><STRONG><a name="[45e]"></a>ble_slave_connected_evt_pcs</STRONG> (Thumb, 34 bytes, Stack size 8 bytes, slave.o(i.ble_slave_connected_evt_pcs))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = ble_slave_connected_evt_pcs
-</UL>
-<BR>[Called By]<UL><LI><a href="#[2bf]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_ble_peripheral_evt
-</UL>
-
-<P><STRONG><a name="[45f]"></a>ble_slave_dicconn_evt_pcs</STRONG> (Thumb, 34 bytes, Stack size 8 bytes, slave.o(i.ble_slave_dicconn_evt_pcs))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = ble_slave_dicconn_evt_pcs
-</UL>
-<BR>[Called By]<UL><LI><a href="#[2bf]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_ble_peripheral_evt
-</UL>
-
-<P><STRONG><a name="[2d8]"></a>ble_srv_is_indication_enabled</STRONG> (Thumb, 18 bytes, Stack size 16 bytes, ble_srv_common.o(i.ble_srv_is_indication_enabled))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = ble_srv_is_indication_enabled
-</UL>
-<BR>[Calls]<UL><LI><a href="#[2d9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;uint16_decode
-</UL>
-<BR>[Called By]<UL><LI><a href="#[468]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_ctrlpt_write
-</UL>
-
-<P><STRONG><a name="[2da]"></a>ble_srv_is_notification_enabled</STRONG> (Thumb, 18 bytes, Stack size 16 bytes, ble_srv_common.o(i.ble_srv_is_notification_enabled))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = ble_srv_is_notification_enabled
-</UL>
-<BR>[Calls]<UL><LI><a href="#[2d9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;uint16_decode
-</UL>
-<BR>[Called By]<UL><LI><a href="#[2c8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_write
-<LI><a href="#[2d6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_write
-<LI><a href="#[2d5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_connect
-</UL>
-
-<P><STRONG><a name="[2db]"></a>ble_stack_init</STRONG> (Thumb, 116 bytes, Stack size 16 bytes, host.o(i.ble_stack_init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4864<LI>Call Chain = ble_stack_init &rArr; nrf_sdh_enable_request &rArr; softdevices_evt_irq_enable &rArr; app_error_handler &rArr; app_error_fault_handler &rArr; Flash_SaveLog &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[fd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_Start
-<LI><a href="#[d1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_error_handler
-<LI><a href="#[2dc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_sdh_enable_request
-<LI><a href="#[2de]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_sdh_ble_enable
-<LI><a href="#[2dd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_sdh_ble_default_cfg_set
-</UL>
-<BR>[Called By]<UL><LI><a href="#[492]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;slave_init
-<LI><a href="#[3c4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;host_init
-</UL>
-
-<P><STRONG><a name="[1ef]"></a>bll_imu_Init</STRONG> (Thumb, 44 bytes, Stack size 8 bytes, bll_imu.o(i.bll_imu_Init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 232<LI>Call Chain = bll_imu_Init &rArr; fml_imu_Init &rArr; drv_lsm_Init &rArr; SPI0_Init &rArr; nrf_drv_spi_init &rArr; nrfx_spim_init &rArr; nrfx_prs_acquire &rArr; app_util_critical_region_enter &rArr; sd_nvic_critical_region_enter
-</UL>
-<BR>[Calls]<UL><LI><a href="#[2df]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_Init
-<LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1ed]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;USR_Init
-<LI><a href="#[489]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_trigger_callback
-</UL>
-
-<P><STRONG><a name="[261]"></a>bll_imu_Resume_config_param</STRONG> (Thumb, 74 bytes, Stack size 16 bytes, bll_imu.o(i.bll_imu_Resume_config_param))
-<BR><BR>[Stack]<UL><LI>Max Depth = 92<LI>Call Chain = bll_imu_Resume_config_param &rArr; bll_imu_start_config &rArr; fml_imu_start_config &rArr; Process_SetHoldOn
-</UL>
-<BR>[Calls]<UL><LI><a href="#[2e0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_start_config
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1f1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_wearshoes_Init
-<LI><a href="#[1f4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_detect_Init
-<LI><a href="#[63]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_BLE_Client_R_GAMEMODE
-<LI><a href="#[62]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_game_Process
-<LI><a href="#[78]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_BLE_Client_R_REALTIMESTEP
-<LI><a href="#[79]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_step_RealConnectProcess
-<LI><a href="#[489]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_trigger_callback
-<LI><a href="#[af]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_process
-<LI><a href="#[60]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_detect_LR_Porcess
-<LI><a href="#[9f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_wearshoes_Process
-</UL>
-
-<P><STRONG><a name="[23f]"></a>bll_imu_Resume_unregister_config_param</STRONG> (Thumb, 54 bytes, Stack size 16 bytes, bll_imu.o(i.bll_imu_Resume_unregister_config_param))
-<BR><BR>[Stack]<UL><LI>Max Depth = 92<LI>Call Chain = bll_imu_Resume_unregister_config_param &rArr; bll_imu_start_config &rArr; fml_imu_start_config &rArr; Process_SetHoldOn
-</UL>
-<BR>[Calls]<UL><LI><a href="#[2e0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_start_config
-</UL>
-<BR>[Called By]<UL><LI><a href="#[63]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_BLE_Client_R_GAMEMODE
-<LI><a href="#[62]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_game_Process
-<LI><a href="#[64]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_AutoOutgame_Process
-<LI><a href="#[78]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_BLE_Client_R_REALTIMESTEP
-<LI><a href="#[79]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_step_RealConnectProcess
-<LI><a href="#[264]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_detect_LR_process_stop
-<LI><a href="#[9f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_wearshoes_Process
-</UL>
-
-<P><STRONG><a name="[1ab]"></a>bll_imu_close</STRONG> (Thumb, 58 bytes, Stack size 8 bytes, bll_imu.o(i.bll_imu_close))
-<BR><BR>[Stack]<UL><LI>Max Depth = 240<LI>Call Chain = bll_imu_close &rArr; fml_imu_close &rArr; drv_lsm_power_on &rArr; SPI0_Init &rArr; nrf_drv_spi_init &rArr; nrfx_spim_init &rArr; nrfx_prs_acquire &rArr; app_util_critical_region_enter &rArr; sd_nvic_critical_region_enter
-</UL>
-<BR>[Calls]<UL><LI><a href="#[2e1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_close
-<LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1aa]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;PWR_Off
-</UL>
-
-<P><STRONG><a name="[11b]"></a>bll_imu_get_data</STRONG> (Thumb, 20 bytes, Stack size 16 bytes, bll_imu.o(i.bll_imu_get_data))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = bll_imu_get_data &rArr; fml_imu_get_data
-</UL>
-<BR>[Calls]<UL><LI><a href="#[2e2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_get_data
-</UL>
-<BR>[Called By]<UL><LI><a href="#[3c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Exception_Led_Process
-<LI><a href="#[65]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;gamemode_data_notify_cb
-<LI><a href="#[7b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;real_data_notify_cb
-<LI><a href="#[7c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_math_DailyStep_Process
-<LI><a href="#[52]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_BatDispaly_Process_N
-<LI><a href="#[6d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_BatDispaly_Process
-<LI><a href="#[b2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fb_data_notify_cb
-<LI><a href="#[61]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;DetectLr_notify_cb
-<LI><a href="#[3c3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_wearshoes_determine
-</UL>
-
-<P><STRONG><a name="[12a]"></a>bll_imu_get_data_num</STRONG> (Thumb, 12 bytes, Stack size 8 bytes, bll_imu.o(i.bll_imu_get_data_num))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = bll_imu_get_data_num
-</UL>
-<BR>[Calls]<UL><LI><a href="#[2e3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_get_data_num
-</UL>
-<BR>[Called By]<UL><LI><a href="#[3c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Exception_Led_Process
-<LI><a href="#[65]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;gamemode_data_notify_cb
-<LI><a href="#[7b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;real_data_notify_cb
-<LI><a href="#[7c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_math_DailyStep_Process
-<LI><a href="#[52]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_BatDispaly_Process_N
-<LI><a href="#[6d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_BatDispaly_Process
-<LI><a href="#[b2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fb_data_notify_cb
-<LI><a href="#[119]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_get_Front_Number
-<LI><a href="#[3c3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_wearshoes_determine
-</UL>
-
-<P><STRONG><a name="[263]"></a>bll_imu_query_config_param_is_ready</STRONG> (Thumb, 364 bytes, Stack size 20 bytes, bll_imu.o(i.bll_imu_query_config_param_is_ready))
-<BR><BR>[Stack]<UL><LI>Max Depth = 20<LI>Call Chain = bll_imu_query_config_param_is_ready
-</UL>
-<BR>[Called By]<UL><LI><a href="#[62]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_game_Process
-<LI><a href="#[79]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_step_RealConnectProcess
-<LI><a href="#[af]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_process
-<LI><a href="#[119]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_get_Front_Number
-<LI><a href="#[60]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_detect_LR_Porcess
-<LI><a href="#[3c3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_wearshoes_determine
-<LI><a href="#[9f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_wearshoes_Process
-</UL>
-
-<P><STRONG><a name="[262]"></a>bll_imu_register_data_notify_callback</STRONG> (Thumb, 92 bytes, Stack size 0 bytes, bll_imu.o(i.bll_imu_register_data_notify_callback))
-<BR><BR>[Called By]<UL><LI><a href="#[1f9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_step_Init
-<LI><a href="#[1fa]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_game_Init
-<LI><a href="#[1f4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_detect_Init
-<LI><a href="#[489]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_trigger_callback
-</UL>
-
-<P><STRONG><a name="[2e0]"></a>bll_imu_start_config</STRONG> (Thumb, 238 bytes, Stack size 32 bytes, bll_imu.o(i.bll_imu_start_config))
-<BR><BR>[Stack]<UL><LI>Max Depth = 76<LI>Call Chain = bll_imu_start_config &rArr; fml_imu_start_config &rArr; Process_SetHoldOn
-</UL>
-<BR>[Calls]<UL><LI><a href="#[2ea]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_start_config
-<LI><a href="#[2e9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_register_data_notify_callback
-<LI><a href="#[2e8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_register_config_callback
-<LI><a href="#[2e5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_get_config_param
-<LI><a href="#[2e7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_config_param
-<LI><a href="#[2e6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_is_equal
-<LI><a href="#[2e4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_get_highest_priority_config_param
-</UL>
-<BR>[Called By]<UL><LI><a href="#[23f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_Resume_unregister_config_param
-<LI><a href="#[261]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_Resume_config_param
-</UL>
-
-<P><STRONG><a name="[2eb]"></a>bsp_ble_dfu_process_Initialize</STRONG> (Thumb, 14 bytes, Stack size 8 bytes, ble_dfu_unbonded.o(i.bsp_ble_dfu_process_Initialize))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = bsp_ble_dfu_process_Initialize &rArr; Process_Start
-</UL>
-<BR>[Calls]<UL><LI><a href="#[fd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_Start
-</UL>
-<BR>[Called By]<UL><LI><a href="#[3c2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_dfu_server_init
-</UL>
-
-<P><STRONG><a name="[3ac]"></a>calDeltaX9x4</STRONG> (Thumb, 80 bytes, Stack size 12 bytes, footpdr.o(i.calDeltaX9x4))
-<BR><BR>[Stack]<UL><LI>Max Depth = 12<LI>Call Chain = calDeltaX9x4
-</UL>
-<BR>[Called By]<UL><LI><a href="#[3a9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;footPDR
-</UL>
-
-<P><STRONG><a name="[2ec]"></a>calKafmanGain9x4</STRONG> (Thumb, 2072 bytes, Stack size 144 bytes, footpdr.o(i.calKafmanGain9x4))
-<BR><BR>[Stack]<UL><LI>Max Depth = 220<LI>Call Chain = calKafmanGain9x4 &rArr; matrix_inverse
-</UL>
-<BR>[Calls]<UL><LI><a href="#[2ed]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;matrix_inverse
-</UL>
-<BR>[Called By]<UL><LI><a href="#[3a9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;footPDR
-</UL>
-
-<P><STRONG><a name="[3ad]"></a>calStateCov9x4</STRONG> (Thumb, 198 bytes, Stack size 12 bytes, footpdr.o(i.calStateCov9x4))
-<BR><BR>[Stack]<UL><LI>Max Depth = 12<LI>Call Chain = calStateCov9x4
-</UL>
-<BR>[Called By]<UL><LI><a href="#[3a9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;footPDR
-</UL>
-
-<P><STRONG><a name="[496]"></a>cal_mean_val</STRONG> (Thumb, 30 bytes, Stack size 8 bytes, special_motion.o(i.cal_mean_val))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = cal_mean_val
-</UL>
-<BR>[Called By]<UL><LI><a href="#[3ce]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;special_motion
-</UL>
-
-<P><STRONG><a name="[493]"></a>cal_unsigned_D_value</STRONG> (Thumb, 22 bytes, Stack size 0 bytes, app_overturn.o(i.cal_unsigned_D_value))
-<BR><BR>[Called By]<UL><LI><a href="#[240]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;sort_silde_window
-</UL>
-
-<P><STRONG><a name="[99]"></a>cb_BLE_Client_ERR</STRONG> (Thumb, 8 bytes, Stack size 0 bytes, hal_battery_nopowerenpin.o(i.cb_BLE_Client_ERR))
-<BR>[Address Reference Count : 1]<UL><LI> hal_battery_nopowerenpin.o(i.hal_battery_init)
-</UL>
-<P><STRONG><a name="[9b]"></a>cb_BLE_Client_R_CHARGE</STRONG> (Thumb, 24 bytes, Stack size 16 bytes, hal_charge.o(i.cb_BLE_Client_R_CHARGE))
-<BR><BR>[Stack]<UL><LI>Max Depth = 608<LI>Call Chain = cb_BLE_Client_R_CHARGE &rArr; BLE_Host_Tx_Send &rArr; BLE_Host_Send &rArr; send_bytes_server &rArr; ble_nus_c_string_send &rArr; nrf_ble_gq_item_add &rArr; queue_process &rArr; nrf_memobj_read &rArr; memobj_op
-</UL>
-<BR>[Calls]<UL><LI><a href="#[110]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Host_Tx_Send
-<LI><a href="#[2ee]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_send_charge
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> hal_charge.o(i.hal_charge_init)
-</UL>
-<P><STRONG><a name="[6a]"></a>cb_BLE_Client_R_DFU</STRONG> (Thumb, 80 bytes, Stack size 16 bytes, app_ota.o(i.cb_BLE_Client_R_DFU))
-<BR><BR>[Stack]<UL><LI>Max Depth = 608<LI>Call Chain = cb_BLE_Client_R_DFU &rArr; BLE_Host_Tx_Send &rArr; BLE_Host_Send &rArr; send_bytes_server &rArr; ble_nus_c_string_send &rArr; nrf_ble_gq_item_add &rArr; queue_process &rArr; nrf_memobj_read &rArr; memobj_op
-</UL>
-<BR>[Calls]<UL><LI><a href="#[106]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_SetHoldOn
-<LI><a href="#[110]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Host_Tx_Send
-<LI><a href="#[107]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Client_Tx_Send
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> app_ota.o(i.app_ota_Init)
-</UL>
-<P><STRONG><a name="[78]"></a>cb_BLE_Client_R_REALTIMESTEP</STRONG> (Thumb, 56 bytes, Stack size 16 bytes, app_step.o(i.cb_BLE_Client_R_REALTIMESTEP))
-<BR><BR>[Stack]<UL><LI>Max Depth = 608<LI>Call Chain = cb_BLE_Client_R_REALTIMESTEP &rArr; BLE_Host_Tx_Send &rArr; BLE_Host_Send &rArr; send_bytes_server &rArr; ble_nus_c_string_send &rArr; nrf_ble_gq_item_add &rArr; queue_process &rArr; nrf_memobj_read &rArr; memobj_op
-</UL>
-<BR>[Calls]<UL><LI><a href="#[23f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_Resume_unregister_config_param
-<LI><a href="#[110]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Host_Tx_Send
-<LI><a href="#[261]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_Resume_config_param
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> app_step.o(i.app_step_Init)
-</UL>
-<P><STRONG><a name="[45]"></a>cb_BLE_Client_R_SHOCK</STRONG> (Thumb, 102 bytes, Stack size 16 bytes, hal_mt.o(i.cb_BLE_Client_R_SHOCK))
-<BR><BR>[Stack]<UL><LI>Max Depth = 608<LI>Call Chain = cb_BLE_Client_R_SHOCK &rArr; BLE_Host_Tx_Send &rArr; BLE_Host_Send &rArr; send_bytes_server &rArr; ble_nus_c_string_send &rArr; nrf_ble_gq_item_add &rArr; queue_process &rArr; nrf_memobj_read &rArr; memobj_op
-</UL>
-<BR>[Calls]<UL><LI><a href="#[110]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Host_Tx_Send
-<LI><a href="#[197]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;MT_Run
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> hal_mt.o(i.MT_Init)
-</UL>
-<P><STRONG><a name="[7d]"></a>cb_BLE_Client_R_SWITCH_IMU</STRONG> (Thumb, 144 bytes, Stack size 8 bytes, app_switchimu.o(i.cb_BLE_Client_R_SWITCH_IMU))
-<BR><BR>[Stack]<UL><LI>Max Depth = 768<LI>Call Chain = cb_BLE_Client_R_SWITCH_IMU &rArr; Flash_SaveBackup &rArr; sdflash_write &rArr; Except_TxError &rArr; BLE_Client_Send &rArr; send_bytes_client &rArr; ble_nus_data_send &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[110]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Host_Tx_Send
-<LI><a href="#[132]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_SaveBackup
-<LI><a href="#[124]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Except_TxError
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> app_switchimu.o(i.app_switchimu_Init)
-</UL>
-<P><STRONG><a name="[54]"></a>cb_BLE_Client_R_UPDATE</STRONG> (Thumb, 108 bytes, Stack size 16 bytes, app_client.o(i.cb_BLE_Client_R_UPDATE))
-<BR><BR>[Stack]<UL><LI>Max Depth = 736<LI>Call Chain = cb_BLE_Client_R_UPDATE &rArr; app_client_SendStep &rArr; app_client_SendStepN &rArr; BLE_Client_Tx_Send &rArr; BLE_Client_Send &rArr; send_bytes_client &rArr; ble_nus_data_send &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[25a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_step_Real_Get
-<LI><a href="#[24f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_client_infomation_Send
-<LI><a href="#[1b1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_client_DataUpdate_Send
-<LI><a href="#[268]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_host_GetClientInfo
-<LI><a href="#[250]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_host_GetClientData
-<LI><a href="#[24b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_client_SendStep
-<LI><a href="#[247]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_client_DeleteStep
-<LI><a href="#[107]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Client_Tx_Send
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> app_client.o(i.app_client_Initialize)
-</UL>
-<P><STRONG><a name="[9c]"></a>cb_BLE_Host_R_CHARGE</STRONG> (Thumb, 20 bytes, Stack size 16 bytes, hal_charge.o(i.cb_BLE_Host_R_CHARGE))
-<BR><BR>[Stack]<UL><LI>Max Depth = 448<LI>Call Chain = cb_BLE_Host_R_CHARGE &rArr; BLE_Client_Tx_Send &rArr; BLE_Client_Send &rArr; send_bytes_client &rArr; ble_nus_data_send &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[107]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Client_Tx_Send
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> hal_charge.o(i.hal_charge_init)
-</UL>
-<P><STRONG><a name="[6b]"></a>cb_BLE_Host_R_DFU</STRONG> (Thumb, 30 bytes, Stack size 16 bytes, app_ota.o(i.cb_BLE_Host_R_DFU))
-<BR><BR>[Stack]<UL><LI>Max Depth = 448<LI>Call Chain = cb_BLE_Host_R_DFU &rArr; BLE_Client_Tx_Send &rArr; BLE_Client_Send &rArr; send_bytes_client &rArr; ble_nus_data_send &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[107]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Client_Tx_Send
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> app_ota.o(i.app_ota_Init)
-</UL>
-<P><STRONG><a name="[3e]"></a>cb_BLE_Host_R_ERR</STRONG> (Thumb, 20 bytes, Stack size 16 bytes, exception.o(i.cb_BLE_Host_R_ERR))
-<BR><BR>[Stack]<UL><LI>Max Depth = 448<LI>Call Chain = cb_BLE_Host_R_ERR &rArr; BLE_Client_Tx_Send &rArr; BLE_Client_Send &rArr; send_bytes_client &rArr; ble_nus_data_send &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[107]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Client_Tx_Send
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> exception.o(i.Exception_Init)
-</UL>
-<P><STRONG><a name="[7a]"></a>cb_BLE_Host_R_REALTIMESTEP</STRONG> (Thumb, 66 bytes, Stack size 16 bytes, app_step.o(i.cb_BLE_Host_R_REALTIMESTEP))
-<BR><BR>[Stack]<UL><LI>Max Depth = 464<LI>Call Chain = cb_BLE_Host_R_REALTIMESTEP &rArr; app_step_RealSendClient &rArr; BLE_Client_Tx_Send &rArr; BLE_Client_Send &rArr; send_bytes_client &rArr; ble_nus_data_send &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[274]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_step_RealSendClient
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> app_step.o(i.app_step_Init)
-</UL>
-<P><STRONG><a name="[66]"></a>cb_BLE_Host_R_UPDATE</STRONG> (Thumb, 208 bytes, Stack size 24 bytes, app_host.o(i.cb_BLE_Host_R_UPDATE))
-<BR><BR>[Stack]<UL><LI>Max Depth = 600<LI>Call Chain = cb_BLE_Host_R_UPDATE &rArr; app_client_infomation_Send &rArr; BLE_Client_Tx_Send &rArr; BLE_Client_Send &rArr; send_bytes_client &rArr; ble_nus_data_send &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[24f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_client_infomation_Send
-<LI><a href="#[1b1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_client_DataUpdate_Send
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> app_host.o(i.app_host_Initialize)
-</UL>
-<P><STRONG><a name="[59]"></a>cb_Host_Connect</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, app_connect_manage.o(i.cb_Host_Connect))
-<BR>[Address Reference Count : 1]<UL><LI> app_connect_manage.o(i.app_connect_manage_Init)
-</UL>
-<P><STRONG><a name="[41]"></a>cb_LED_Sleep</STRONG> (Thumb, 18 bytes, Stack size 8 bytes, hal_led_ws2812.o(i.cb_LED_Sleep))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = cb_LED_Sleep &rArr; Pwm_UnInitialize &rArr; nrfx_pwm_uninit
-</UL>
-<BR>[Calls]<UL><LI><a href="#[175]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_write
-<LI><a href="#[1bf]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Pwm_UnInitialize
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> hal_led_ws2812.o(i.LED_Init)
-</UL>
-<P><STRONG><a name="[42]"></a>cb_LED_Wakeup</STRONG> (Thumb, 10 bytes, Stack size 8 bytes, hal_led_ws2812.o(i.cb_LED_Wakeup))
-<BR><BR>[Stack]<UL><LI>Max Depth = 116<LI>Call Chain = cb_LED_Wakeup &rArr; Pwm_Initialize &rArr; Pwm_init &rArr; nrfx_pwm_init &rArr; configure_pins
-</UL>
-<BR>[Calls]<UL><LI><a href="#[17a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Pwm_Initialize
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> hal_led_ws2812.o(i.LED_Init)
-</UL>
-<P><STRONG><a name="[58]"></a>cb_Slave_Connect</STRONG> (Thumb, 22 bytes, Stack size 8 bytes, app_connect_manage.o(i.cb_Slave_Connect))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4864<LI>Call Chain = cb_Slave_Connect &rArr; slave_update_conn_interval_request &rArr; app_error_handler &rArr; app_error_fault_handler &rArr; Flash_SaveLog &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[2f1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;slave_update_conn_interval_request
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> app_connect_manage.o(i.app_connect_manage_Init)
-</UL>
-<P><STRONG><a name="[2f3]"></a>cb_init</STRONG> (Thumb, 156 bytes, Stack size 8 bytes, hal_battery_nopowerenpin.o(i.cb_init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = cb_init
-</UL>
-<BR>[Calls]<UL><LI><a href="#[2f4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Except_Get_Battery_Record_Buff
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1f0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_battery_init
-</UL>
-
-<P><STRONG><a name="[2b2]"></a>characteristic_add</STRONG> (Thumb, 456 bytes, Stack size 80 bytes, ble_srv_common.o(i.characteristic_add))
-<BR><BR>[Stack]<UL><LI>Max Depth = 80<LI>Call Chain = characteristic_add
-</UL>
-<BR>[Calls]<UL><LI><a href="#[2f5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;set_security_req
-<LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
-</UL>
-<BR>[Called By]<UL><LI><a href="#[2d4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_nus_init
-<LI><a href="#[2b1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_dfu_buttonless_char_add
-</UL>
-
-<P><STRONG><a name="[2fa]"></a>conn_handle_list_get</STRONG> (Thumb, 60 bytes, Stack size 64 bytes, ble_conn_state.o(i.conn_handle_list_get))
-<BR><BR>[Stack]<UL><LI>Max Depth = 72<LI>Call Chain = conn_handle_list_get &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[2a3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_atflags_get
-<LI><a href="#[fb]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy4
-</UL>
-<BR>[Called By]<UL><LI><a href="#[2c1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;record_purge_disconnected
-</UL>
-
-<P><STRONG><a name="[301]"></a>dcm2angleTest</STRONG> (Thumb, 282 bytes, Stack size 56 bytes, footpdr.o(i.dcm2angleTest))
-<BR><BR>[Stack]<UL><LI>Max Depth = 272<LI>Call Chain = dcm2angleTest &rArr; __hardfp_atan2 &rArr; atan &rArr; __hardfp_atan &rArr; __kernel_poly &rArr; __aeabi_dadd &rArr; _double_epilogue &rArr; _double_round
-</UL>
-<BR>[Calls]<UL><LI><a href="#[112]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_f2d
-<LI><a href="#[e6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_d2f
-<LI><a href="#[21e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_atan2
-<LI><a href="#[20f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_asin
-</UL>
-<BR>[Called By]<UL><LI><a href="#[3a9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;footPDR
-</UL>
-
-<P><STRONG><a name="[3cd]"></a>decode_shoes_data_left</STRONG> (Thumb, 262 bytes, Stack size 0 bytes, special_motion.o(i.decode_shoes_data_left))
-<BR><BR>[Called By]<UL><LI><a href="#[3f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;integrate_left_right
-</UL>
-
-<P><STRONG><a name="[3cc]"></a>decode_shoes_data_right</STRONG> (Thumb, 262 bytes, Stack size 0 bytes, special_motion.o(i.decode_shoes_data_right))
-<BR><BR>[Called By]<UL><LI><a href="#[3f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;integrate_left_right
-</UL>
-
-<P><STRONG><a name="[26a]"></a>detect_step_by_mag</STRONG> (Thumb, 300 bytes, Stack size 20 bytes, detect_step_by_mag.o(i.detect_step_by_mag))
-<BR><BR>[Stack]<UL><LI>Max Depth = 20<LI>Call Chain = detect_step_by_mag
-</UL>
-<BR>[Called By]<UL><LI><a href="#[7c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_math_DailyStep_Process
-</UL>
-
-<P><STRONG><a name="[304]"></a>detect_zero_vel</STRONG> (Thumb, 1280 bytes, Stack size 96 bytes, detect_zero_vel.o(i.detect_zero_vel))
-<BR><BR>[Stack]<UL><LI>Max Depth = 128<LI>Call Chain = detect_zero_vel &rArr; isLongTimeDownTrend
-</UL>
-<BR>[Calls]<UL><LI><a href="#[308]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;setZeroStatus
-<LI><a href="#[309]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;setTouchFloorStatus
-<LI><a href="#[306]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;isLongTimeUpTrend
-<LI><a href="#[307]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;isLongTimeDownTrend
-<LI><a href="#[305]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;find_acc_max_and_min_val
-<LI><a href="#[127]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy
-</UL>
-<BR>[Called By]<UL><LI><a href="#[163]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;process_motion
-</UL>
-
-<P><STRONG><a name="[30f]"></a>drv_lsm_Init</STRONG> (Thumb, 212 bytes, Stack size 16 bytes, drv_lsm6ds3tr_c.o(i.drv_lsm_Init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 216<LI>Call Chain = drv_lsm_Init &rArr; SPI0_Init &rArr; nrf_drv_spi_init &rArr; nrfx_spim_init &rArr; nrfx_prs_acquire &rArr; app_util_critical_region_enter &rArr; sd_nvic_critical_region_enter
-</UL>
-<BR>[Calls]<UL><LI><a href="#[fd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_Start
-<LI><a href="#[1ce]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI0_Init
-<LI><a href="#[311]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;self_check
-<LI><a href="#[310]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;platform_delay_ms
-<LI><a href="#[181]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_write
-<LI><a href="#[187]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_cfg_output
-<LI><a href="#[184]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_cfg
-<LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
-</UL>
-<BR>[Called By]<UL><LI><a href="#[2df]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_Init
-</UL>
-
-<P><STRONG><a name="[312]"></a>drv_lsm_get_acc_data</STRONG> (Thumb, 82 bytes, Stack size 16 bytes, drv_lsm6ds3tr_c.o(i.drv_lsm_get_acc_data))
-<BR><BR>[Stack]<UL><LI>Max Depth = 64<LI>Call Chain = drv_lsm_get_acc_data &rArr; lsm6ds3tr_c_acceleration_raw_get &rArr; lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[313]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_status_reg_get
-<LI><a href="#[314]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_acceleration_raw_get
-</UL>
-<BR>[Called By]<UL><LI><a href="#[3a6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_read_data_lsm
-</UL>
-
-<P><STRONG><a name="[39b]"></a>drv_lsm_get_config_param</STRONG> (Thumb, 24 bytes, Stack size 0 bytes, drv_lsm6ds3tr_c.o(i.drv_lsm_get_config_param))
-<BR><BR>[Called By]<UL><LI><a href="#[96]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_Process
-<LI><a href="#[2ea]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_start_config
-<LI><a href="#[2e1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_close
-<LI><a href="#[2df]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_Init
-</UL>
-
-<P><STRONG><a name="[315]"></a>drv_lsm_get_fifo_data</STRONG> (Thumb, 294 bytes, Stack size 24 bytes, drv_lsm6ds3tr_c.o(i.drv_lsm_get_fifo_data))
-<BR><BR>[Stack]<UL><LI>Max Depth = 72<LI>Call Chain = drv_lsm_get_fifo_data &rArr; lsm6ds3tr_c_fifo_raw_data_get &rArr; lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[316]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_fifo_raw_data_get
-<LI><a href="#[d7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr
-</UL>
-<BR>[Called By]<UL><LI><a href="#[3a6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_read_data_lsm
-</UL>
-
-<P><STRONG><a name="[317]"></a>drv_lsm_get_fifo_group_num</STRONG> (Thumb, 146 bytes, Stack size 24 bytes, drv_lsm6ds3tr_c.o(i.drv_lsm_get_fifo_group_num))
-<BR><BR>[Stack]<UL><LI>Max Depth = 72<LI>Call Chain = drv_lsm_get_fifo_group_num &rArr; lsm6ds3tr_c_fifo_wtm_flag_get &rArr; lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[31b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;platform_delay_us
-<LI><a href="#[319]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_read_reg
-<LI><a href="#[318]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_fifo_wtm_flag_get
-<LI><a href="#[31a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_fifo_mode_set
-<LI><a href="#[31c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_fifo_data_level_get
-</UL>
-<BR>[Called By]<UL><LI><a href="#[3a6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_read_data_lsm
-</UL>
-
-<P><STRONG><a name="[31d]"></a>drv_lsm_get_lsm_id</STRONG> (Thumb, 28 bytes, Stack size 8 bytes, drv_lsm6ds3tr_c.o(i.drv_lsm_get_lsm_id))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = drv_lsm_get_lsm_id &rArr; lsm6ds3tr_c_device_id_get &rArr; lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[31e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_device_id_get
-</UL>
-<BR>[Called By]<UL><LI><a href="#[39f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_intergrated_setting
-</UL>
-
-<P><STRONG><a name="[31f]"></a>drv_lsm_get_mag_id</STRONG> (Thumb, 46 bytes, Stack size 16 bytes, drv_lsm6ds3tr_c.o(i.drv_lsm_get_mag_id))
-<BR><BR>[Stack]<UL><LI>Max Depth = 256<LI>Call Chain = drv_lsm_get_mag_id &rArr; read_hub &rArr; afterdo_hub &rArr; SPI0_Init &rArr; nrf_drv_spi_init &rArr; nrfx_spim_init &rArr; nrfx_prs_acquire &rArr; app_util_critical_region_enter &rArr; sd_nvic_critical_region_enter
-</UL>
-<BR>[Calls]<UL><LI><a href="#[320]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;read_hub
-</UL>
-<BR>[Called By]<UL><LI><a href="#[39f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_intergrated_setting
-</UL>
-
-<P><STRONG><a name="[3a0]"></a>drv_lsm_get_mag_odr_flow</STRONG> (Thumb, 4 bytes, Stack size 0 bytes, drv_lsm6ds3tr_c.o(i.drv_lsm_get_mag_odr_flow))
-<BR><BR>[Called By]<UL><LI><a href="#[39f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_intergrated_setting
-</UL>
-
-<P><STRONG><a name="[321]"></a>drv_lsm_power_off</STRONG> (Thumb, 152 bytes, Stack size 16 bytes, drv_lsm6ds3tr_c.o(i.drv_lsm_power_off))
-<BR><BR>[Stack]<UL><LI>Max Depth = 84<LI>Call Chain = drv_lsm_power_off &rArr; SPI0_Disable &rArr; nrf_drv_spi_uninit &rArr; nrfx_spim_uninit &rArr; nrf_gpio_cfg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[1cb]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI0_Disable
-<LI><a href="#[181]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_write
-<LI><a href="#[187]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_cfg_output
-<LI><a href="#[184]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_cfg
-<LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
-</UL>
-<BR>[Called By]<UL><LI><a href="#[489]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_trigger_callback
-<LI><a href="#[3a4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;monitor_sensor_no_data
-<LI><a href="#[3a5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;monitor_sensor_data
-<LI><a href="#[39f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_intergrated_setting
-<LI><a href="#[2e1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_close
-</UL>
-
-<P><STRONG><a name="[322]"></a>drv_lsm_power_on</STRONG> (Thumb, 124 bytes, Stack size 24 bytes, drv_lsm6ds3tr_c.o(i.drv_lsm_power_on))
-<BR><BR>[Stack]<UL><LI>Max Depth = 224<LI>Call Chain = drv_lsm_power_on &rArr; SPI0_Init &rArr; nrf_drv_spi_init &rArr; nrfx_spim_init &rArr; nrfx_prs_acquire &rArr; app_util_critical_region_enter &rArr; sd_nvic_critical_region_enter
-</UL>
-<BR>[Calls]<UL><LI><a href="#[1ce]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI0_Init
-<LI><a href="#[1cb]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI0_Disable
-<LI><a href="#[181]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_write
-<LI><a href="#[184]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_cfg
-<LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
-</UL>
-<BR>[Called By]<UL><LI><a href="#[3a4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;monitor_sensor_no_data
-<LI><a href="#[3a5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;monitor_sensor_data
-<LI><a href="#[39f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_intergrated_setting
-<LI><a href="#[2e1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_close
-</UL>
-
-<P><STRONG><a name="[323]"></a>drv_lsm_self_check_1</STRONG> (Thumb, 106 bytes, Stack size 8 bytes, drv_lsm6ds3tr_c.o(i.drv_lsm_self_check_1))
-<BR><BR>[Stack]<UL><LI>Max Depth = 56<LI>Call Chain = drv_lsm_self_check_1 &rArr; lsm6ds3tr_c_xl_full_scale_set &rArr; lsm6ds3tr_c_write_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[327]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_xl_full_scale_set
-<LI><a href="#[326]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_xl_data_rate_set
-<LI><a href="#[324]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_reset_set
-<LI><a href="#[325]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_reset_get
-<LI><a href="#[31e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_device_id_get
-</UL>
-<BR>[Called By]<UL><LI><a href="#[39f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_intergrated_setting
-<LI><a href="#[311]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;self_check
-</UL>
-
-<P><STRONG><a name="[328]"></a>drv_lsm_self_check_2</STRONG> (Thumb, 308 bytes, Stack size 8 bytes, drv_lsm6ds3tr_c.o(i.drv_lsm_self_check_2))
-<BR><BR>[Stack]<UL><LI>Max Depth = 56<LI>Call Chain = drv_lsm_self_check_2 &rArr; lsm6ds3tr_c_xl_self_test_set &rArr; lsm6ds3tr_c_write_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[32b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_xl_self_test_set
-<LI><a href="#[329]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_xl_flag_data_ready_get
-<LI><a href="#[32a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_from_fs4g_to_mg
-<LI><a href="#[314]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_acceleration_raw_get
-</UL>
-<BR>[Called By]<UL><LI><a href="#[39f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_intergrated_setting
-<LI><a href="#[311]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;self_check
-</UL>
-
-<P><STRONG><a name="[32c]"></a>drv_lsm_self_check_3</STRONG> (Thumb, 544 bytes, Stack size 24 bytes, drv_lsm6ds3tr_c.o(i.drv_lsm_self_check_3))
-<BR><BR>[Stack]<UL><LI>Max Depth = 72<LI>Call Chain = drv_lsm_self_check_3 &rArr; lsm6ds3tr_c_xl_self_test_set &rArr; lsm6ds3tr_c_write_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[112]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_f2d
-<LI><a href="#[e6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_d2f
-<LI><a href="#[32b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_xl_self_test_set
-<LI><a href="#[329]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_xl_flag_data_ready_get
-<LI><a href="#[326]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_xl_data_rate_set
-<LI><a href="#[32f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_gy_full_scale_set
-<LI><a href="#[32e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_gy_data_rate_set
-<LI><a href="#[32a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_from_fs4g_to_mg
-<LI><a href="#[314]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_acceleration_raw_get
-<LI><a href="#[32d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_fabs
-</UL>
-<BR>[Called By]<UL><LI><a href="#[39f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_intergrated_setting
-<LI><a href="#[311]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;self_check
-</UL>
-
-<P><STRONG><a name="[330]"></a>drv_lsm_self_check_4</STRONG> (Thumb, 308 bytes, Stack size 8 bytes, drv_lsm6ds3tr_c.o(i.drv_lsm_self_check_4))
-<BR><BR>[Stack]<UL><LI>Max Depth = 56<LI>Call Chain = drv_lsm_self_check_4 &rArr; lsm6ds3tr_c_gy_self_test_set &rArr; lsm6ds3tr_c_write_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[334]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_gy_self_test_set
-<LI><a href="#[331]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_gy_flag_data_ready_get
-<LI><a href="#[333]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_from_fs2000dps_to_mdps
-<LI><a href="#[332]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_angular_rate_raw_get
-</UL>
-<BR>[Called By]<UL><LI><a href="#[39f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_intergrated_setting
-<LI><a href="#[311]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;self_check
-</UL>
-
-<P><STRONG><a name="[335]"></a>drv_lsm_self_check_5</STRONG> (Thumb, 542 bytes, Stack size 24 bytes, drv_lsm6ds3tr_c.o(i.drv_lsm_self_check_5))
-<BR><BR>[Stack]<UL><LI>Max Depth = 72<LI>Call Chain = drv_lsm_self_check_5 &rArr; lsm6ds3tr_c_sh_pass_through_set &rArr; lsm6ds3tr_c_write_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[112]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_f2d
-<LI><a href="#[e6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_d2f
-<LI><a href="#[238]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_sh_pass_through_set
-<LI><a href="#[239]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_sh_pass_through_get
-<LI><a href="#[334]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_gy_self_test_set
-<LI><a href="#[331]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_gy_flag_data_ready_get
-<LI><a href="#[32e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_gy_data_rate_set
-<LI><a href="#[333]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_from_fs2000dps_to_mdps
-<LI><a href="#[332]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_angular_rate_raw_get
-<LI><a href="#[32d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_fabs
-</UL>
-<BR>[Called By]<UL><LI><a href="#[39f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_intergrated_setting
-<LI><a href="#[311]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;self_check
-</UL>
-
-<P><STRONG><a name="[336]"></a>drv_lsm_selfcheck_mag</STRONG> (Thumb, 494 bytes, Stack size 40 bytes, drv_lsm6ds3tr_c.o(i.drv_lsm_selfcheck_mag))
-<BR><BR>[Stack]<UL><LI>Max Depth = 280<LI>Call Chain = drv_lsm_selfcheck_mag &rArr; write_hub &rArr; afterdo_hub &rArr; SPI0_Init &rArr; nrf_drv_spi_init &rArr; nrfx_spim_init &rArr; nrfx_prs_acquire &rArr; app_util_critical_region_enter &rArr; sd_nvic_critical_region_enter
-</UL>
-<BR>[Calls]<UL><LI><a href="#[337]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;write_hub
-<LI><a href="#[320]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;read_hub
-<LI><a href="#[338]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_delay_ms
-</UL>
-<BR>[Called By]<UL><LI><a href="#[489]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_trigger_callback
-</UL>
-
-<P><STRONG><a name="[339]"></a>drv_lsm_set_acc_fs</STRONG> (Thumb, 88 bytes, Stack size 24 bytes, drv_lsm6ds3tr_c.o(i.drv_lsm_set_acc_fs))
-<BR><BR>[Stack]<UL><LI>Max Depth = 72<LI>Call Chain = drv_lsm_set_acc_fs &rArr; lsm6ds3tr_c_xl_full_scale_set &rArr; lsm6ds3tr_c_write_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[327]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_xl_full_scale_set
-<LI><a href="#[33a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_xl_full_scale_get
-</UL>
-<BR>[Called By]<UL><LI><a href="#[39f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_intergrated_setting
-</UL>
-
-<P><STRONG><a name="[33b]"></a>drv_lsm_set_acc_odr</STRONG> (Thumb, 112 bytes, Stack size 24 bytes, drv_lsm6ds3tr_c.o(i.drv_lsm_set_acc_odr))
-<BR><BR>[Stack]<UL><LI>Max Depth = 72<LI>Call Chain = drv_lsm_set_acc_odr &rArr; lsm6ds3tr_c_xl_data_rate_set &rArr; lsm6ds3tr_c_write_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[326]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_xl_data_rate_set
-<LI><a href="#[33c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_xl_data_rate_get
-</UL>
-<BR>[Called By]<UL><LI><a href="#[39f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_intergrated_setting
-</UL>
-
-<P><STRONG><a name="[33d]"></a>drv_lsm_set_acc_power_mode</STRONG> (Thumb, 88 bytes, Stack size 24 bytes, drv_lsm6ds3tr_c.o(i.drv_lsm_set_acc_power_mode))
-<BR><BR>[Stack]<UL><LI>Max Depth = 72<LI>Call Chain = drv_lsm_set_acc_power_mode &rArr; lsm6ds3tr_c_xl_power_mode_set &rArr; lsm6ds3tr_c_write_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[33e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_xl_power_mode_set
-<LI><a href="#[33f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_xl_power_mode_get
-</UL>
-<BR>[Called By]<UL><LI><a href="#[39f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_intergrated_setting
-</UL>
-
-<P><STRONG><a name="[340]"></a>drv_lsm_set_fifo_odr</STRONG> (Thumb, 596 bytes, Stack size 96 bytes, drv_lsm6ds3tr_c.o(i.drv_lsm_set_fifo_odr))
-<BR><BR>[Stack]<UL><LI>Max Depth = 144<LI>Call Chain = drv_lsm_set_fifo_odr &rArr; lsm6ds3tr_c_fifo_xl_batch_set &rArr; lsm6ds3tr_c_write_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[344]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_fifo_xl_batch_set
-<LI><a href="#[345]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_fifo_xl_batch_get
-<LI><a href="#[34c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_fifo_watermark_set
-<LI><a href="#[34d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_fifo_watermark_get
-<LI><a href="#[341]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_fifo_pedo_and_timestamp_batch_set
-<LI><a href="#[342]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_fifo_pedo_and_timestamp_batch_get
-<LI><a href="#[31a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_fifo_mode_set
-<LI><a href="#[343]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_fifo_mode_get
-<LI><a href="#[346]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_fifo_gy_batch_set
-<LI><a href="#[347]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_fifo_gy_batch_get
-<LI><a href="#[34a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_fifo_dataset_4_batch_set
-<LI><a href="#[34b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_fifo_dataset_4_batch_get
-<LI><a href="#[348]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_fifo_dataset_3_batch_set
-<LI><a href="#[349]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_fifo_dataset_3_batch_get
-<LI><a href="#[34e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_fifo_data_rate_set
-<LI><a href="#[34f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_fifo_data_rate_get
-</UL>
-<BR>[Called By]<UL><LI><a href="#[39f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_intergrated_setting
-</UL>
-
-<P><STRONG><a name="[350]"></a>drv_lsm_set_gry_fs</STRONG> (Thumb, 88 bytes, Stack size 24 bytes, drv_lsm6ds3tr_c.o(i.drv_lsm_set_gry_fs))
-<BR><BR>[Stack]<UL><LI>Max Depth = 72<LI>Call Chain = drv_lsm_set_gry_fs &rArr; lsm6ds3tr_c_gy_full_scale_set &rArr; lsm6ds3tr_c_write_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[32f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_gy_full_scale_set
-<LI><a href="#[351]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_gy_full_scale_get
-</UL>
-<BR>[Called By]<UL><LI><a href="#[39f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_intergrated_setting
-</UL>
-
-<P><STRONG><a name="[352]"></a>drv_lsm_set_gry_odr</STRONG> (Thumb, 112 bytes, Stack size 24 bytes, drv_lsm6ds3tr_c.o(i.drv_lsm_set_gry_odr))
-<BR><BR>[Stack]<UL><LI>Max Depth = 72<LI>Call Chain = drv_lsm_set_gry_odr &rArr; lsm6ds3tr_c_gy_data_rate_set &rArr; lsm6ds3tr_c_write_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[32e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_gy_data_rate_set
-<LI><a href="#[353]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_gy_data_rate_get
-</UL>
-<BR>[Called By]<UL><LI><a href="#[39f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_intergrated_setting
-</UL>
-
-<P><STRONG><a name="[354]"></a>drv_lsm_set_gry_power_mode</STRONG> (Thumb, 88 bytes, Stack size 24 bytes, drv_lsm6ds3tr_c.o(i.drv_lsm_set_gry_power_mode))
-<BR><BR>[Stack]<UL><LI>Max Depth = 72<LI>Call Chain = drv_lsm_set_gry_power_mode &rArr; lsm6ds3tr_c_gy_power_mode_set &rArr; lsm6ds3tr_c_write_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[355]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_gy_power_mode_set
-<LI><a href="#[356]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_gy_power_mode_get
-</UL>
-<BR>[Called By]<UL><LI><a href="#[39f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_intergrated_setting
-</UL>
-
-<P><STRONG><a name="[357]"></a>drv_lsm_set_mag_odr</STRONG> (Thumb, 298 bytes, Stack size 24 bytes, drv_lsm6ds3tr_c.o(i.drv_lsm_set_mag_odr))
-<BR><BR>[Stack]<UL><LI>Max Depth = 264<LI>Call Chain = drv_lsm_set_mag_odr &rArr; write_hub &rArr; afterdo_hub &rArr; SPI0_Init &rArr; nrf_drv_spi_init &rArr; nrfx_spim_init &rArr; nrfx_prs_acquire &rArr; app_util_critical_region_enter &rArr; sd_nvic_critical_region_enter
-</UL>
-<BR>[Calls]<UL><LI><a href="#[337]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;write_hub
-<LI><a href="#[320]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;read_hub
-<LI><a href="#[358]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_sh_slv0_cfg_read
-<LI><a href="#[23a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_sh_pin_mode_set
-<LI><a href="#[35a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_sh_num_of_dev_connected_set
-<LI><a href="#[35c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_sh_master_set
-<LI><a href="#[319]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_read_reg
-<LI><a href="#[359]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_mem_bank_set
-<LI><a href="#[35b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_func_en_set
-</UL>
-<BR>[Called By]<UL><LI><a href="#[39f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_intergrated_setting
-</UL>
-
-<P><STRONG><a name="[35d]"></a>drv_lsm_set_timestamp_resolution</STRONG> (Thumb, 88 bytes, Stack size 24 bytes, drv_lsm6ds3tr_c.o(i.drv_lsm_set_timestamp_resolution))
-<BR><BR>[Stack]<UL><LI>Max Depth = 72<LI>Call Chain = drv_lsm_set_timestamp_resolution &rArr; lsm6ds3tr_c_timestamp_res_set &rArr; lsm6ds3tr_c_write_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[35e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_timestamp_res_set
-<LI><a href="#[35f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_timestamp_res_get
-</UL>
-<BR>[Called By]<UL><LI><a href="#[39f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_intergrated_setting
-</UL>
-
-<P><STRONG><a name="[360]"></a>drv_lsm_set_timestamp_switch</STRONG> (Thumb, 86 bytes, Stack size 24 bytes, drv_lsm6ds3tr_c.o(i.drv_lsm_set_timestamp_switch))
-<BR><BR>[Stack]<UL><LI>Max Depth = 72<LI>Call Chain = drv_lsm_set_timestamp_switch &rArr; lsm6ds3tr_c_timestamp_set &rArr; lsm6ds3tr_c_write_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[361]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_timestamp_set
-<LI><a href="#[362]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_timestamp_get
-</UL>
-<BR>[Called By]<UL><LI><a href="#[39f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_intergrated_setting
-</UL>
-
-<P><STRONG><a name="[363]"></a>drv_qma_Init</STRONG> (Thumb, 128 bytes, Stack size 16 bytes, drv_qma7981.o(i.drv_qma_Init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 52<LI>Call Chain = drv_qma_Init &rArr; IIC_MIDDLE_Init &rArr; nrf_gpio_cfg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[153]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_MIDDLE_Init
-<LI><a href="#[368]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;soft_reset
-<LI><a href="#[366]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;platform_delay_ms
-<LI><a href="#[365]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_write
-<LI><a href="#[367]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_cfg_output
-<LI><a href="#[364]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_cfg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1f2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_qma_Init
-<LI><a href="#[489]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_trigger_callback
-</UL>
-
-<P><STRONG><a name="[11a]"></a>drv_qma_get_acc_data</STRONG> (Thumb, 104 bytes, Stack size 16 bytes, drv_qma7981.o(i.drv_qma_get_acc_data))
-<BR><BR>[Stack]<UL><LI>Max Depth = 56<LI>Call Chain = drv_qma_get_acc_data &rArr; get_accel_z &rArr; read_accel_axis
-</UL>
-<BR>[Calls]<UL><LI><a href="#[36b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;get_accel_z
-<LI><a href="#[36a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;get_accel_y
-<LI><a href="#[369]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;get_accel_x
-</UL>
-<BR>[Called By]<UL><LI><a href="#[af]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_process
-<LI><a href="#[ab]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_mt_process
-<LI><a href="#[61]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;DetectLr_notify_cb
-</UL>
-
-<P><STRONG><a name="[1ac]"></a>drv_qma_power_off</STRONG> (Thumb, 90 bytes, Stack size 16 bytes, drv_qma7981.o(i.drv_qma_power_off))
-<BR><BR>[Stack]<UL><LI>Max Depth = 52<LI>Call Chain = drv_qma_power_off &rArr; nrf_gpio_cfg_output &rArr; nrf_gpio_cfg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[365]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_write
-<LI><a href="#[367]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_cfg_output
-<LI><a href="#[364]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_cfg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1f2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_qma_Init
-<LI><a href="#[1aa]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;PWR_Off
-<LI><a href="#[9e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_qma_Porcess
-</UL>
-
-<P><STRONG><a name="[36c]"></a>drv_qma_power_on</STRONG> (Thumb, 100 bytes, Stack size 16 bytes, drv_qma7981.o(i.drv_qma_power_on))
-<BR><BR>[Stack]<UL><LI>Max Depth = 52<LI>Call Chain = drv_qma_power_on &rArr; IIC_MIDDLE_Init &rArr; nrf_gpio_cfg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[153]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_MIDDLE_Init
-<LI><a href="#[368]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;soft_reset
-<LI><a href="#[365]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_write
-<LI><a href="#[367]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_cfg_output
-<LI><a href="#[364]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_cfg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[9e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_qma_Porcess
-</UL>
-
-<P><STRONG><a name="[36d]"></a>drv_qma_set_acc_odr</STRONG> (Thumb, 404 bytes, Stack size 24 bytes, drv_qma7981.o(i.drv_qma_set_acc_odr))
-<BR><BR>[Stack]<UL><LI>Max Depth = 56<LI>Call Chain = drv_qma_set_acc_odr &rArr; set_mode &rArr; set_bit
-</UL>
-<BR>[Calls]<UL><LI><a href="#[36e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;set_mode
-<LI><a href="#[370]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;set_clock_freq
-<LI><a href="#[372]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;set_bandwidth
-<LI><a href="#[36f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;get_mode
-<LI><a href="#[371]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;get_clock_freq
-<LI><a href="#[373]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;get_bandwidth
-</UL>
-<BR>[Called By]<UL><LI><a href="#[489]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_trigger_callback
-<LI><a href="#[af]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_process
-<LI><a href="#[9e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_qma_Porcess
-</UL>
-
-<P><STRONG><a name="[374]"></a>drv_qmc6310_Init</STRONG> (Thumb, 144 bytes, Stack size 16 bytes, drv_qmc6310_v2.o(i.drv_qmc6310_Init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 52<LI>Call Chain = drv_qmc6310_Init &rArr; IIC_BACK_Init &rArr; nrf_gpio_cfg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[fd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_Start
-<LI><a href="#[143]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_BACK_Init
-<LI><a href="#[379]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;qmc6310_get_chipid
-<LI><a href="#[377]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_write
-<LI><a href="#[376]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_cfg_output
-<LI><a href="#[375]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_cfg
-<LI><a href="#[378]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_delay_ms
-</UL>
-<BR>[Called By]<UL><LI><a href="#[2df]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_Init
-</UL>
-
-<P><STRONG><a name="[39c]"></a>drv_qmc6310_get_config_param</STRONG> (Thumb, 12 bytes, Stack size 0 bytes, drv_qmc6310_v2.o(i.drv_qmc6310_get_config_param))
-<BR><BR>[Called By]<UL><LI><a href="#[96]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_Process
-<LI><a href="#[2ea]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_start_config
-<LI><a href="#[2e1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_close
-<LI><a href="#[2df]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_Init
-</UL>
-
-<P><STRONG><a name="[3a8]"></a>drv_qmc6310_get_mag_data</STRONG> (Thumb, 88 bytes, Stack size 24 bytes, drv_qmc6310_v2.o(i.drv_qmc6310_get_mag_data))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = drv_qmc6310_get_mag_data
-</UL>
-<BR>[Called By]<UL><LI><a href="#[3a7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_read_data_qmc
-</UL>
-
-<P><STRONG><a name="[37a]"></a>drv_qmc6310_get_mag_id</STRONG> (Thumb, 18 bytes, Stack size 8 bytes, drv_qmc6310_v2.o(i.drv_qmc6310_get_mag_id))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = drv_qmc6310_get_mag_id &rArr; qmc6310_get_chipid
-</UL>
-<BR>[Calls]<UL><LI><a href="#[379]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;qmc6310_get_chipid
-</UL>
-<BR>[Called By]<UL><LI><a href="#[39f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_intergrated_setting
-</UL>
-
-<P><STRONG><a name="[3a1]"></a>drv_qmc6310_get_mag_odr_flow</STRONG> (Thumb, 4 bytes, Stack size 0 bytes, drv_qmc6310_v2.o(i.drv_qmc6310_get_mag_odr_flow))
-<BR><BR>[Called By]<UL><LI><a href="#[39f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_intergrated_setting
-</UL>
-
-<P><STRONG><a name="[37b]"></a>drv_qmc6310_power_off</STRONG> (Thumb, 62 bytes, Stack size 16 bytes, drv_qmc6310_v2.o(i.drv_qmc6310_power_off))
-<BR><BR>[Stack]<UL><LI>Max Depth = 52<LI>Call Chain = drv_qmc6310_power_off &rArr; nrf_gpio_cfg_output &rArr; nrf_gpio_cfg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[377]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_write
-<LI><a href="#[376]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_cfg_output
-<LI><a href="#[375]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_cfg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[489]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_trigger_callback
-<LI><a href="#[3a4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;monitor_sensor_no_data
-<LI><a href="#[3a5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;monitor_sensor_data
-<LI><a href="#[39f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_intergrated_setting
-<LI><a href="#[2e1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_close
-</UL>
-
-<P><STRONG><a name="[37c]"></a>drv_qmc6310_power_on</STRONG> (Thumb, 32 bytes, Stack size 8 bytes, drv_qmc6310_v2.o(i.drv_qmc6310_power_on))
-<BR><BR>[Stack]<UL><LI>Max Depth = 44<LI>Call Chain = drv_qmc6310_power_on &rArr; IIC_BACK_Init &rArr; nrf_gpio_cfg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[143]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_BACK_Init
-<LI><a href="#[377]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_write
-</UL>
-<BR>[Called By]<UL><LI><a href="#[3a4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;monitor_sensor_no_data
-<LI><a href="#[3a5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;monitor_sensor_data
-<LI><a href="#[39f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_intergrated_setting
-<LI><a href="#[2e1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_close
-</UL>
-
-<P><STRONG><a name="[37d]"></a>drv_qmc6310_selfcheck_mag</STRONG> (Thumb, 512 bytes, Stack size 48 bytes, drv_qmc6310_v2.o(i.drv_qmc6310_selfcheck_mag))
-<BR><BR>[Stack]<UL><LI>Max Depth = 72<LI>Call Chain = drv_qmc6310_selfcheck_mag &rArr; nrf_delay_ms
-</UL>
-<BR>[Calls]<UL><LI><a href="#[378]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_delay_ms
-</UL>
-<BR>[Called By]<UL><LI><a href="#[489]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_trigger_callback
-</UL>
-
-<P><STRONG><a name="[3a3]"></a>drv_qmc6310_set_mag_odr</STRONG> (Thumb, 226 bytes, Stack size 24 bytes, drv_qmc6310_v2.o(i.drv_qmc6310_set_mag_odr))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = drv_qmc6310_set_mag_odr
-</UL>
-<BR>[Called By]<UL><LI><a href="#[39f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_intergrated_setting
-</UL>
-
-<P><STRONG><a name="[37e]"></a>drv_rtc_compare_disable</STRONG> (Thumb, 22 bytes, Stack size 16 bytes, drv_rtc.o(i.drv_rtc_compare_disable))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = drv_rtc_compare_disable &rArr; evt_disable
-</UL>
-<BR>[Calls]<UL><LI><a href="#[37f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;evt_disable
-</UL>
-<BR>[Called By]<UL><LI><a href="#[47d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;rtc_schedule
-</UL>
-
-<P><STRONG><a name="[380]"></a>drv_rtc_compare_pending</STRONG> (Thumb, 26 bytes, Stack size 16 bytes, drv_rtc.o(i.drv_rtc_compare_pending))
-<BR><BR>[Stack]<UL><LI>Max Depth = 40<LI>Call Chain = drv_rtc_compare_pending &rArr; evt_pending &rArr; nrf_rtc_event_clear
-</UL>
-<BR>[Calls]<UL><LI><a href="#[381]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;evt_pending
-</UL>
-<BR>[Called By]<UL><LI><a href="#[7e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;rtc_irq
-</UL>
-
-<P><STRONG><a name="[27b]"></a>drv_rtc_compare_set</STRONG> (Thumb, 92 bytes, Stack size 32 bytes, drv_rtc.o(i.drv_rtc_compare_set))
-<BR><BR>[Stack]<UL><LI>Max Depth = 40<LI>Call Chain = drv_rtc_compare_set &rArr; nrf_rtc_event_clear
-</UL>
-<BR>[Calls]<UL><LI><a href="#[387]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_rtc_int_enable
-<LI><a href="#[382]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_rtc_int_disable
-<LI><a href="#[386]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_rtc_event_enable
-<LI><a href="#[383]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_rtc_event_disable
-<LI><a href="#[384]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_rtc_event_clear
-<LI><a href="#[385]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_rtc_cc_set
-</UL>
-<BR>[Called By]<UL><LI><a href="#[277]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_timer_init
-</UL>
-
-<P><STRONG><a name="[276]"></a>drv_rtc_counter_get</STRONG> (Thumb, 12 bytes, Stack size 8 bytes, drv_rtc.o(i.drv_rtc_counter_get))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = drv_rtc_counter_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[388]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_rtc_counter_get
-</UL>
-<BR>[Called By]<UL><LI><a href="#[27d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;get_now
-<LI><a href="#[275]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_timer_cnt_get
-</UL>
-
-<P><STRONG><a name="[279]"></a>drv_rtc_init</STRONG> (Thumb, 176 bytes, Stack size 28 bytes, drv_rtc.o(i.drv_rtc_init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 28<LI>Call Chain = drv_rtc_init
-</UL>
-<BR>[Called By]<UL><LI><a href="#[277]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_timer_init
-</UL>
-
-<P><STRONG><a name="[49b]"></a>drv_rtc_irq_trigger</STRONG> (Thumb, 32 bytes, Stack size 8 bytes, drv_rtc.o(i.drv_rtc_irq_trigger))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = drv_rtc_irq_trigger
-</UL>
-<BR>[Called By]<UL><LI><a href="#[27e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;timer_req_schedule
-</UL>
-
-<P><STRONG><a name="[27a]"></a>drv_rtc_overflow_enable</STRONG> (Thumb, 18 bytes, Stack size 16 bytes, drv_rtc.o(i.drv_rtc_overflow_enable))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = drv_rtc_overflow_enable &rArr; evt_enable
-</UL>
-<BR>[Calls]<UL><LI><a href="#[389]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;evt_enable
-</UL>
-<BR>[Called By]<UL><LI><a href="#[277]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_timer_init
-</UL>
-
-<P><STRONG><a name="[38a]"></a>drv_rtc_overflow_pending</STRONG> (Thumb, 16 bytes, Stack size 8 bytes, drv_rtc.o(i.drv_rtc_overflow_pending))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = drv_rtc_overflow_pending &rArr; evt_pending &rArr; nrf_rtc_event_clear
-</UL>
-<BR>[Calls]<UL><LI><a href="#[381]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;evt_pending
-</UL>
-<BR>[Called By]<UL><LI><a href="#[7e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;rtc_irq
-</UL>
-
-<P><STRONG><a name="[38b]"></a>drv_rtc_start</STRONG> (Thumb, 14 bytes, Stack size 8 bytes, drv_rtc.o(i.drv_rtc_start))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = drv_rtc_start
-</UL>
-<BR>[Calls]<UL><LI><a href="#[38c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_rtc_task_trigger
-</UL>
-<BR>[Called By]<UL><LI><a href="#[47c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;rtc_update
-</UL>
-
-<P><STRONG><a name="[38d]"></a>drv_rtc_stop</STRONG> (Thumb, 14 bytes, Stack size 8 bytes, drv_rtc.o(i.drv_rtc_stop))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = drv_rtc_stop
-</UL>
-<BR>[Calls]<UL><LI><a href="#[38c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_rtc_task_trigger
-</UL>
-<BR>[Called By]<UL><LI><a href="#[47c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;rtc_update
-</UL>
-
-<P><STRONG><a name="[38e]"></a>drv_rtc_windowed_compare_set</STRONG> (Thumb, 252 bytes, Stack size 40 bytes, drv_rtc.o(i.drv_rtc_windowed_compare_set))
-<BR><BR>[Stack]<UL><LI>Max Depth = 56<LI>Call Chain = drv_rtc_windowed_compare_set &rArr; nrfx_coredep_delay_us
-</UL>
-<BR>[Calls]<UL><LI><a href="#[390]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ticks_sub
-<LI><a href="#[391]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_coredep_delay_us
-<LI><a href="#[386]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_rtc_event_enable
-<LI><a href="#[384]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_rtc_event_clear
-<LI><a href="#[388]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_rtc_counter_get
-<LI><a href="#[385]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_rtc_cc_set
-<LI><a href="#[38f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_rtc_cc_get
-<LI><a href="#[389]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;evt_enable
-<LI><a href="#[37f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;evt_disable
-</UL>
-<BR>[Called By]<UL><LI><a href="#[47d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;rtc_schedule
-</UL>
-
-<P><STRONG><a name="[473]"></a>dual_foot_detect_up_trend</STRONG> (Thumb, 558 bytes, Stack size 56 bytes, press_down_detect.o(i.dual_foot_detect_up_trend))
-<BR><BR>[Stack]<UL><LI>Max Depth = 56<LI>Call Chain = dual_foot_detect_up_trend
-</UL>
-<BR>[Called By]<UL><LI><a href="#[472]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;press_down_detect_new
-</UL>
-
-<P><STRONG><a name="[392]"></a>estimate_gyr_bias</STRONG> (Thumb, 320 bytes, Stack size 4 bytes, footpdr.o(i.estimate_gyr_bias))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4<LI>Call Chain = estimate_gyr_bias
-</UL>
-<BR>[Calls]<UL><LI><a href="#[393]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;isStandCon
-</UL>
-<BR>[Called By]<UL><LI><a href="#[3a9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;footPDR
-</UL>
-
-<P><STRONG><a name="[216]"></a>fabs</STRONG> (Thumb, 24 bytes, Stack size 8 bytes, fabs.o(i.fabs))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = fabs
-</UL>
-<BR>[Called By]<UL><LI><a href="#[223]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__ieee754_rem_pio2
-<LI><a href="#[21d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_atan
-<LI><a href="#[21e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_atan2
-<LI><a href="#[20f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_asin
-</UL>
-
-<P><STRONG><a name="[1b0]"></a>feed_watchdog</STRONG> (Thumb, 20 bytes, Stack size 8 bytes, bsp_wdt.o(i.feed_watchdog))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = feed_watchdog &rArr; nrfx_wdt_channel_feed
-</UL>
-<BR>[Calls]<UL><LI><a href="#[395]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_wdt_channel_feed
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1ed]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;USR_Init
-<LI><a href="#[489]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_trigger_callback
-<LI><a href="#[ad]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_result_display_process
-<LI><a href="#[af]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_process
-<LI><a href="#[ab]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_mt_process
-<LI><a href="#[ac]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_led_process
-<LI><a href="#[aa]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_continue_mt_process
-<LI><a href="#[46]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;PWR_Process
-<LI><a href="#[b8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;WatchDog_Process
-</UL>
-
-<P><STRONG><a name="[305]"></a>find_acc_max_and_min_val</STRONG> (Thumb, 72 bytes, Stack size 20 bytes, detect_zero_vel.o(i.find_acc_max_and_min_val))
-<BR><BR>[Stack]<UL><LI>Max Depth = 20<LI>Call Chain = find_acc_max_and_min_val
-</UL>
-<BR>[Called By]<UL><LI><a href="#[304]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;detect_zero_vel
-</UL>
-
-<P><STRONG><a name="[130]"></a>flash_Data_Read</STRONG> (Thumb, 42 bytes, Stack size 16 bytes, app_flash.o(i.flash_Data_Read))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = flash_Data_Read
-</UL>
-<BR>[Calls]<UL><LI><a href="#[fb]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy4
-</UL>
-<BR>[Called By]<UL><LI><a href="#[24d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_client_SendStepN
-<LI><a href="#[24c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_client_SendStepAll
-<LI><a href="#[12f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_GetBackup
-</UL>
-
-<P><STRONG><a name="[24e]"></a>flash_GetStep_StartAddress</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, app_flash.o(i.flash_GetStep_StartAddress))
-<BR><BR>[Called By]<UL><LI><a href="#[24d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_client_SendStepN
-<LI><a href="#[24c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_client_SendStepAll
-</UL>
-
-<P><STRONG><a name="[249]"></a>flash_SetClearStepFlag</STRONG> (Thumb, 8 bytes, Stack size 0 bytes, app_flash.o(i.flash_SetClearStepFlag))
-<BR><BR>[Called By]<UL><LI><a href="#[247]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_client_DeleteStep
-</UL>
-
-<P><STRONG><a name="[c9]"></a>flash_evt_handler</STRONG> (Thumb, 48 bytes, Stack size 0 bytes, bsp_flash.o(i.flash_evt_handler))
-<BR>[Address Reference Count : 1]<UL><LI> bsp_flash.o(sdh_soc_observers0)
-</UL>
-<P><STRONG><a name="[1ee]"></a>fml_adc_Init</STRONG> (Thumb, 52 bytes, Stack size 8 bytes, fml_adc.o(i.fml_adc_Init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 120<LI>Call Chain = fml_adc_Init &rArr; ADC_SetPinChannel &rArr; ADC_Disable &rArr; nrfx_saadc_uninit &rArr; nrfx_saadc_channel_uninit &rArr; nrfx_saadc_limits_set
-</UL>
-<BR>[Calls]<UL><LI><a href="#[17d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Wakeup_Regist
-<LI><a href="#[17c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Sleep_Regist
-<LI><a href="#[f6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ADC_SetPinChannel
-<LI><a href="#[94]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_adcWakeup
-<LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1ed]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;USR_Init
-</UL>
-
-<P><STRONG><a name="[22b]"></a>fml_adc_get_value</STRONG> (Thumb, 24 bytes, Stack size 0 bytes, fml_adc.o(i.fml_adc_get_value))
-<BR><BR>[Called By]<UL><LI><a href="#[b1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;adc_callback
-<LI><a href="#[98]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_battery_Process
-</UL>
-
-<P><STRONG><a name="[48c]"></a>fml_adc_sample_update_notify_register</STRONG> (Thumb, 18 bytes, Stack size 0 bytes, fml_adc.o(i.fml_adc_sample_update_notify_register))
-<BR><BR>[Called By]<UL><LI><a href="#[489]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_trigger_callback
-</UL>
-
-<P><STRONG><a name="[2df]"></a>fml_imu_Init</STRONG> (Thumb, 68 bytes, Stack size 8 bytes, fml_imu.o(i.fml_imu_Init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 224<LI>Call Chain = fml_imu_Init &rArr; drv_lsm_Init &rArr; SPI0_Init &rArr; nrf_drv_spi_init &rArr; nrfx_spim_init &rArr; nrfx_prs_acquire &rArr; app_util_critical_region_enter &rArr; sd_nvic_critical_region_enter
-</UL>
-<BR>[Calls]<UL><LI><a href="#[fd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_Start
-<LI><a href="#[39c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qmc6310_get_config_param
-<LI><a href="#[374]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qmc6310_Init
-<LI><a href="#[39b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_get_config_param
-<LI><a href="#[30f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_Init
-<LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1ef]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_Init
-</UL>
-
-<P><STRONG><a name="[2e1]"></a>fml_imu_close</STRONG> (Thumb, 112 bytes, Stack size 8 bytes, fml_imu.o(i.fml_imu_close))
-<BR><BR>[Stack]<UL><LI>Max Depth = 232<LI>Call Chain = fml_imu_close &rArr; drv_lsm_power_on &rArr; SPI0_Init &rArr; nrf_drv_spi_init &rArr; nrfx_spim_init &rArr; nrfx_prs_acquire &rArr; app_util_critical_region_enter &rArr; sd_nvic_critical_region_enter
-</UL>
-<BR>[Calls]<UL><LI><a href="#[37b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qmc6310_power_off
-<LI><a href="#[321]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_power_off
-<LI><a href="#[37c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qmc6310_power_on
-<LI><a href="#[39c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qmc6310_get_config_param
-<LI><a href="#[322]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_power_on
-<LI><a href="#[39b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_get_config_param
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1ab]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_close
-<LI><a href="#[96]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_Process
-</UL>
-
-<P><STRONG><a name="[2e7]"></a>fml_imu_config_param</STRONG> (Thumb, 46 bytes, Stack size 0 bytes, fml_imu.o(i.fml_imu_config_param))
-<BR><BR>[Called By]<UL><LI><a href="#[2e0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_start_config
-</UL>
-
-<P><STRONG><a name="[2e5]"></a>fml_imu_get_config_param</STRONG> (Thumb, 46 bytes, Stack size 0 bytes, fml_imu.o(i.fml_imu_get_config_param))
-<BR><BR>[Called By]<UL><LI><a href="#[2e0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_start_config
-</UL>
-
-<P><STRONG><a name="[2e2]"></a>fml_imu_get_data</STRONG> (Thumb, 54 bytes, Stack size 16 bytes, fml_imu.o(i.fml_imu_get_data))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = fml_imu_get_data
-</UL>
-<BR>[Calls]<UL><LI><a href="#[fb]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy4
-</UL>
-<BR>[Called By]<UL><LI><a href="#[11b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_get_data
-<LI><a href="#[39e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_monitor_sensor_data_process
-</UL>
-
-<P><STRONG><a name="[2e3]"></a>fml_imu_get_data_num</STRONG> (Thumb, 18 bytes, Stack size 0 bytes, fml_imu.o(i.fml_imu_get_data_num))
-<BR><BR>[Called By]<UL><LI><a href="#[12a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_get_data_num
-<LI><a href="#[39e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_monitor_sensor_data_process
-</UL>
-
-<P><STRONG><a name="[2e8]"></a>fml_imu_register_config_callback</STRONG> (Thumb, 20 bytes, Stack size 0 bytes, fml_imu.o(i.fml_imu_register_config_callback))
-<BR><BR>[Called By]<UL><LI><a href="#[2e0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_start_config
-</UL>
-
-<P><STRONG><a name="[2e9]"></a>fml_imu_register_data_notify_callback</STRONG> (Thumb, 20 bytes, Stack size 0 bytes, fml_imu.o(i.fml_imu_register_data_notify_callback))
-<BR><BR>[Called By]<UL><LI><a href="#[2e0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_start_config
-</UL>
-
-<P><STRONG><a name="[2ea]"></a>fml_imu_start_config</STRONG> (Thumb, 102 bytes, Stack size 32 bytes, fml_imu.o(i.fml_imu_start_config))
-<BR><BR>[Stack]<UL><LI>Max Depth = 44<LI>Call Chain = fml_imu_start_config &rArr; Process_SetHoldOn
-</UL>
-<BR>[Calls]<UL><LI><a href="#[106]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_SetHoldOn
-<LI><a href="#[39c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qmc6310_get_config_param
-<LI><a href="#[39b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_get_config_param
-<LI><a href="#[3a2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_macro_conversion
-<LI><a href="#[293]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;memcmp
-</UL>
-<BR>[Called By]<UL><LI><a href="#[3a4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;monitor_sensor_no_data
-<LI><a href="#[3a5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;monitor_sensor_data
-<LI><a href="#[2e0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_start_config
-</UL>
-
-<P><STRONG><a name="[3a9]"></a>footPDR</STRONG> (Thumb, 804 bytes, Stack size 56 bytes, footpdr.o(i.footPDR))
-<BR><BR>[Stack]<UL><LI>Max Depth = 384<LI>Call Chain = footPDR &rArr; Initialize &rArr; init_attitude_matrix &rArr; __hardfp_sin &rArr; __ieee754_rem_pio2 &rArr; __aeabi_dadd &rArr; _double_epilogue &rArr; _double_round
-</UL>
-<BR>[Calls]<UL><LI><a href="#[392]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;estimate_gyr_bias
-<LI><a href="#[301]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;dcm2angleTest
-<LI><a href="#[3ad]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;calStateCov9x4
-<LI><a href="#[2ec]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;calKafmanGain9x4
-<LI><a href="#[3ac]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;calDeltaX9x4
-<LI><a href="#[286]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;attitude_matrix_update
-<LI><a href="#[170]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Initialize
-<LI><a href="#[3ae]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;vel_n_corr
-<LI><a href="#[3aa]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;multiply3x1
-<LI><a href="#[3ab]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;State_covariance_matrix_update
-<LI><a href="#[3af]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;State_covariance_matrix_orthogonalization
-<LI><a href="#[f8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Att_matrix_corr
-</UL>
-<BR>[Called By]<UL><LI><a href="#[163]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;process_motion
-</UL>
-
-<P><STRONG><a name="[477]"></a>foot_data_to_package</STRONG> (Thumb, 776 bytes, Stack size 0 bytes, process_result.o(i.foot_data_to_package))
-<BR><BR>[Called By]<UL><LI><a href="#[163]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;process_motion
-</UL>
-
-<P><STRONG><a name="[3b3]"></a>gatt_init</STRONG> (Thumb, 100 bytes, Stack size 16 bytes, host.o(i.gatt_init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4832<LI>Call Chain = gatt_init &rArr; app_error_handler &rArr; app_error_fault_handler &rArr; Flash_SaveLog &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[d1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_error_handler
-<LI><a href="#[3b4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_gatt_init
-<LI><a href="#[3b6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_gatt_att_mtu_periph_set
-<LI><a href="#[3b5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_gatt_att_mtu_central_set
-</UL>
-<BR>[Called By]<UL><LI><a href="#[492]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;slave_init
-<LI><a href="#[3c4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;host_init
-</UL>
-
-<P><STRONG><a name="[26e]"></a>get_LR_readly</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, app_detectishost.o(i.get_LR_readly))
-<BR><BR>[Called By]<UL><LI><a href="#[6e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_pair_Right_Process
-<LI><a href="#[6f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_pair_Left_Process
-</UL>
-
-<P><STRONG><a name="[164]"></a>get_foot_data</STRONG> (Thumb, 26 bytes, Stack size 16 bytes, process_result.o(i.get_foot_data))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = get_foot_data
-</UL>
-<BR>[Calls]<UL><LI><a href="#[127]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy
-</UL>
-<BR>[Called By]<UL><LI><a href="#[162]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IMU_Process_motion_queue
-</UL>
-
-<P><STRONG><a name="[16f]"></a>get_game_package</STRONG> (Thumb, 26 bytes, Stack size 16 bytes, special_motion.o(i.get_game_package))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = get_game_package
-</UL>
-<BR>[Calls]<UL><LI><a href="#[127]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy
-</UL>
-<BR>[Called By]<UL><LI><a href="#[161]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IMU_dtalige
-</UL>
-
-<P><STRONG><a name="[3bb]"></a>get_record_hendaddr</STRONG> (Thumb, 78 bytes, Stack size 24 bytes, hal_minifds.o(i.get_record_hendaddr))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = get_record_hendaddr
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3bc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;jump
-</UL>
-<BR>[Called By]<UL><LI><a href="#[3ea]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;minfds_record_update
-<LI><a href="#[3e9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;minfds_record_get_length
-</UL>
-
-<P><STRONG><a name="[245]"></a>hal_GetBatttery_Adc</STRONG> (Thumb, 40 bytes, Stack size 0 bytes, hal_battery_nopowerenpin.o(i.hal_GetBatttery_Adc))
-<BR><BR>[Called By]<UL><LI><a href="#[1b1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_client_DataUpdate_Send
-</UL>
-
-<P><STRONG><a name="[1f0]"></a>hal_battery_init</STRONG> (Thumb, 78 bytes, Stack size 24 bytes, hal_battery_nopowerenpin.o(i.hal_battery_init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = hal_battery_init &rArr; Process_Start
-</UL>
-<BR>[Calls]<UL><LI><a href="#[fd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_Start
-<LI><a href="#[199]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Client_Rx_Regist
-<LI><a href="#[2f3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_init
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1ed]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;USR_Init
-</UL>
-
-<P><STRONG><a name="[1af]"></a>hal_charge_Getstate</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, hal_charge.o(i.hal_charge_Getstate))
-<BR><BR>[Called By]<UL><LI><a href="#[2bd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_trigger_set_order
-<LI><a href="#[53]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_charge_Process
-<LI><a href="#[46]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;PWR_Process
-<LI><a href="#[57]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_connect_Process
-<LI><a href="#[71]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_Client_BLE_PAIR
-<LI><a href="#[6e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_pair_Right_Process
-<LI><a href="#[6f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_pair_Left_Process
-<LI><a href="#[241]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_ble_send_mac
-</UL>
-
-<P><STRONG><a name="[1f3]"></a>hal_charge_init</STRONG> (Thumb, 88 bytes, Stack size 24 bytes, hal_charge.o(i.hal_charge_init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 480<LI>Call Chain = hal_charge_init &rArr; hal_charge_Process &rArr; hal_send_charge &rArr; BLE_Client_Tx_Send &rArr; BLE_Client_Send &rArr; send_bytes_client &rArr; ble_nus_data_send &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[fd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_Start
-<LI><a href="#[199]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Client_Rx_Regist
-<LI><a href="#[129]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Host_Rx_Regist
-<LI><a href="#[9a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_charge_Process
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1ed]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;USR_Init
-</UL>
-
-<P><STRONG><a name="[3c1]"></a>hal_dfu_init</STRONG> (Thumb, 32 bytes, Stack size 16 bytes, hal_dfu.o(i.hal_dfu_init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4832<LI>Call Chain = hal_dfu_init &rArr; app_error_handler &rArr; app_error_fault_handler &rArr; Flash_SaveLog &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[2ac]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_dfu_buttonless_async_svci_init
-<LI><a href="#[d1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_error_handler
-</UL>
-<BR>[Called By]<UL><LI><a href="#[34]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main
-</UL>
-
-<P><STRONG><a name="[3c2]"></a>hal_dfu_server_init</STRONG> (Thumb, 46 bytes, Stack size 16 bytes, hal_dfu.o(i.hal_dfu_server_init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4832<LI>Call Chain = hal_dfu_server_init &rArr; app_error_handler &rArr; app_error_fault_handler &rArr; Flash_SaveLog &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[2eb]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bsp_ble_dfu_process_Initialize
-<LI><a href="#[2b3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_dfu_buttonless_init
-<LI><a href="#[d1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_error_handler
-</UL>
-<BR>[Called By]<UL><LI><a href="#[34]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main
-</UL>
-
-<P><STRONG><a name="[118]"></a>hal_get_QmaFrequency</STRONG> (Thumb, 34 bytes, Stack size 0 bytes, hal_qma.o(i.hal_get_QmaFrequency))
-<BR><BR>[Called By]<UL><LI><a href="#[61]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;DetectLr_notify_cb
-</UL>
-
-<P><STRONG><a name="[1f2]"></a>hal_qma_Init</STRONG> (Thumb, 40 bytes, Stack size 8 bytes, hal_qma.o(i.hal_qma_Init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 60<LI>Call Chain = hal_qma_Init &rArr; drv_qma_Init &rArr; IIC_MIDDLE_Init &rArr; nrf_gpio_cfg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[fd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_Start
-<LI><a href="#[363]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qma_Init
-<LI><a href="#[1ac]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qma_power_off
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1ed]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;USR_Init
-</UL>
-
-<P><STRONG><a name="[260]"></a>hal_qma_setFrequency</STRONG> (Thumb, 48 bytes, Stack size 0 bytes, hal_qma.o(i.hal_qma_setFrequency))
-<BR><BR>[Called By]<UL><LI><a href="#[1f4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_detect_Init
-<LI><a href="#[264]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_detect_LR_process_stop
-</UL>
-
-<P><STRONG><a name="[1f1]"></a>hal_wearshoes_Init</STRONG> (Thumb, 44 bytes, Stack size 8 bytes, hal_wearshoes.o(i.hal_wearshoes_Init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 100<LI>Call Chain = hal_wearshoes_Init &rArr; bll_imu_Resume_config_param &rArr; bll_imu_start_config &rArr; fml_imu_start_config &rArr; Process_SetHoldOn
-</UL>
-<BR>[Calls]<UL><LI><a href="#[fd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_Start
-<LI><a href="#[261]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_Resume_config_param
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1ed]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;USR_Init
-</UL>
-
-<P><STRONG><a name="[207]"></a>hal_wearshoes_is_wearshoes</STRONG> (Thumb, 16 bytes, Stack size 0 bytes, hal_wearshoes.o(i.hal_wearshoes_is_wearshoes))
-<BR><BR>[Called By]<UL><LI><a href="#[205]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;USR_Process
-<LI><a href="#[7c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_math_DailyStep_Process
-<LI><a href="#[52]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_BatDispaly_Process_N
-<LI><a href="#[6d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_BatDispaly_Process
-</UL>
-
-<P><STRONG><a name="[256]"></a>host_disconnect</STRONG> (Thumb, 16 bytes, Stack size 0 bytes, host.o(i.host_disconnect))
-<BR><BR>[Called By]<UL><LI><a href="#[1f4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_detect_Init
-<LI><a href="#[489]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_trigger_callback
-<LI><a href="#[57]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_connect_Process
-<LI><a href="#[69]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_ota_Process
-<LI><a href="#[72]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_Host_BLE_PAIR
-<LI><a href="#[71]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_Client_BLE_PAIR
-<LI><a href="#[6e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_pair_Right_Process
-<LI><a href="#[6f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_pair_Left_Process
-</UL>
-
-<P><STRONG><a name="[194]"></a>host_get_rssi</STRONG> (Thumb, 30 bytes, Stack size 8 bytes, host.o(i.host_get_rssi))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = host_get_rssi
-</UL>
-<BR>[Called By]<UL><LI><a href="#[65]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;gamemode_data_notify_cb
-<LI><a href="#[67]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LossPack_process
-</UL>
-
-<P><STRONG><a name="[3c4]"></a>host_init</STRONG> (Thumb, 62 bytes, Stack size 8 bytes, host.o(i.host_init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4872<LI>Call Chain = host_init &rArr; ble_stack_init &rArr; nrf_sdh_enable_request &rArr; softdevices_evt_irq_enable &rArr; app_error_handler &rArr; app_error_fault_handler &rArr; Flash_SaveLog &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3c8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;scan_init
-<LI><a href="#[3c7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nus_c_init
-<LI><a href="#[2ff]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;db_discovery_init
-<LI><a href="#[3c5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;timer_init
-<LI><a href="#[3c6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;power_management_init
-<LI><a href="#[3b3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;gatt_init
-<LI><a href="#[2db]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_stack_init
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1a6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;usr1_Init
-</UL>
-
-<P><STRONG><a name="[23c]"></a>host_isconnect</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, host.o(i.host_isconnect))
-<BR><BR>[Called By]<UL><LI><a href="#[1f4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_detect_Init
-<LI><a href="#[62]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_game_Process
-<LI><a href="#[489]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_trigger_callback
-<LI><a href="#[50]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_Authen_Process
-<LI><a href="#[5e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_data_transfer_Process
-<LI><a href="#[251]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_conneted_getRight
-<LI><a href="#[57]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_connect_Process
-<LI><a href="#[5a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_connect_LED_Process
-<LI><a href="#[72]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_Host_BLE_PAIR
-<LI><a href="#[71]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_Client_BLE_PAIR
-<LI><a href="#[6e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_pair_Right_Process
-<LI><a href="#[6f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_pair_Left_Process
-</UL>
-
-<P><STRONG><a name="[25c]"></a>host_set_scan_name</STRONG> (Thumb, 172 bytes, Stack size 24 bytes, host.o(i.host_set_scan_name))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4840<LI>Call Chain = host_set_scan_name &rArr; app_error_handler &rArr; app_error_fault_handler &rArr; Flash_SaveLog &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[d1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_error_handler
-<LI><a href="#[3cb]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_scan_filters_enable
-<LI><a href="#[3ca]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_scan_filter_set
-<LI><a href="#[3c9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_scan_all_filter_remove
-<LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
-<LI><a href="#[127]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1f4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_detect_Init
-<LI><a href="#[489]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_trigger_callback
-<LI><a href="#[af]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_process
-<LI><a href="#[6e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_pair_Right_Process
-<LI><a href="#[6f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_pair_Left_Process
-</UL>
-
-<P><STRONG><a name="[171]"></a>init_attitude_matrix</STRONG> (Thumb, 414 bytes, Stack size 72 bytes, ekfpdr.o(i.init_attitude_matrix))
-<BR><BR>[Stack]<UL><LI>Max Depth = 312<LI>Call Chain = init_attitude_matrix &rArr; __hardfp_sin &rArr; __ieee754_rem_pio2 &rArr; __aeabi_dadd &rArr; _double_epilogue &rArr; _double_round
-</UL>
-<BR>[Calls]<UL><LI><a href="#[112]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_f2d
-<LI><a href="#[e6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_d2f
-<LI><a href="#[226]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_sin
-<LI><a href="#[222]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_cos
-<LI><a href="#[21e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_atan2
-<LI><a href="#[20f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_asin
-</UL>
-<BR>[Called By]<UL><LI><a href="#[170]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Initialize
-</UL>
-
-<P><STRONG><a name="[3f]"></a>integrate_left_right</STRONG> (Thumb, 186 bytes, Stack size 48 bytes, special_motion.o(i.integrate_left_right))
-<BR><BR>[Stack]<UL><LI>Max Depth = 268<LI>Call Chain = integrate_left_right &rArr; special_motion &rArr; press_jump_detect &rArr; max_min_window
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3ce]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;special_motion
-<LI><a href="#[3cf]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;inter_package_data
-<LI><a href="#[3cc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;decode_shoes_data_right
-<LI><a href="#[3cd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;decode_shoes_data_left
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> dtalige.o(i.IMU_Dtalige)
-</UL>
-<P><STRONG><a name="[3cf]"></a>inter_package_data</STRONG> (Thumb, 1522 bytes, Stack size 8 bytes, special_motion.o(i.inter_package_data))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = inter_package_data
-</UL>
-<BR>[Called By]<UL><LI><a href="#[3f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;integrate_left_right
-</UL>
-
-<P><STRONG><a name="[f9]"></a>invert3x3</STRONG> (Thumb, 430 bytes, Stack size 0 bytes, ekfpdr.o(i.invert3x3))
-<BR><BR>[Called By]<UL><LI><a href="#[286]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;attitude_matrix_update
-<LI><a href="#[f8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Att_matrix_corr
-</UL>
-
-<P><STRONG><a name="[307]"></a>isLongTimeDownTrend</STRONG> (Thumb, 138 bytes, Stack size 32 bytes, detect_zero_vel.o(i.isLongTimeDownTrend))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = isLongTimeDownTrend
-</UL>
-<BR>[Called By]<UL><LI><a href="#[304]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;detect_zero_vel
-</UL>
-
-<P><STRONG><a name="[306]"></a>isLongTimeUpTrend</STRONG> (Thumb, 122 bytes, Stack size 24 bytes, detect_zero_vel.o(i.isLongTimeUpTrend))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = isLongTimeUpTrend
-</UL>
-<BR>[Called By]<UL><LI><a href="#[304]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;detect_zero_vel
-</UL>
-
-<P><STRONG><a name="[393]"></a>isStandCon</STRONG> (Thumb, 88 bytes, Stack size 0 bytes, footpdr.o(i.isStandCon))
-<BR><BR>[Called By]<UL><LI><a href="#[392]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;estimate_gyr_bias
-</UL>
-
-<P><STRONG><a name="[41d]"></a>is_whitelist_used</STRONG> (Thumb, 34 bytes, Stack size 0 bytes, nrf_ble_scan.o(i.is_whitelist_used))
-<BR><BR>[Called By]<UL><LI><a href="#[116]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_scan_start
-<LI><a href="#[41c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_scan_on_adv_report
-</UL>
-
-<P><STRONG><a name="[314]"></a>lsm6ds3tr_c_acceleration_raw_get</STRONG> (Thumb, 84 bytes, Stack size 24 bytes, lsm6ds3tr-c_reg.o(i.lsm6ds3tr_c_acceleration_raw_get))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = lsm6ds3tr_c_acceleration_raw_get &rArr; lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[319]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[32c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_self_check_3
-<LI><a href="#[328]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_self_check_2
-<LI><a href="#[312]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_get_acc_data
-</UL>
-
-<P><STRONG><a name="[332]"></a>lsm6ds3tr_c_angular_rate_raw_get</STRONG> (Thumb, 84 bytes, Stack size 24 bytes, lsm6ds3tr-c_reg.o(i.lsm6ds3tr_c_angular_rate_raw_get))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = lsm6ds3tr_c_angular_rate_raw_get &rArr; lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[319]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[335]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_self_check_5
-<LI><a href="#[330]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_self_check_4
-</UL>
-
-<P><STRONG><a name="[31e]"></a>lsm6ds3tr_c_device_id_get</STRONG> (Thumb, 24 bytes, Stack size 16 bytes, lsm6ds3tr-c_reg.o(i.lsm6ds3tr_c_device_id_get))
-<BR><BR>[Stack]<UL><LI>Max Depth = 40<LI>Call Chain = lsm6ds3tr_c_device_id_get &rArr; lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[319]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[323]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_self_check_1
-<LI><a href="#[31d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_get_lsm_id
-</UL>
-
-<P><STRONG><a name="[31c]"></a>lsm6ds3tr_c_fifo_data_level_get</STRONG> (Thumb, 58 bytes, Stack size 24 bytes, lsm6ds3tr-c_reg.o(i.lsm6ds3tr_c_fifo_data_level_get))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = lsm6ds3tr_c_fifo_data_level_get &rArr; lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[319]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[317]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_get_fifo_group_num
-</UL>
-
-<P><STRONG><a name="[34f]"></a>lsm6ds3tr_c_fifo_data_rate_get</STRONG> (Thumb, 126 bytes, Stack size 24 bytes, lsm6ds3tr-c_reg.o(i.lsm6ds3tr_c_fifo_data_rate_get))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = lsm6ds3tr_c_fifo_data_rate_get &rArr; lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[319]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[340]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_set_fifo_odr
-<LI><a href="#[471]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;predo_hub
-</UL>
-
-<P><STRONG><a name="[34e]"></a>lsm6ds3tr_c_fifo_data_rate_set</STRONG> (Thumb, 50 bytes, Stack size 24 bytes, lsm6ds3tr-c_reg.o(i.lsm6ds3tr_c_fifo_data_rate_set))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = lsm6ds3tr_c_fifo_data_rate_set &rArr; lsm6ds3tr_c_write_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3dd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_write_reg
-<LI><a href="#[319]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[340]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_set_fifo_odr
-<LI><a href="#[471]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;predo_hub
-</UL>
-
-<P><STRONG><a name="[349]"></a>lsm6ds3tr_c_fifo_dataset_3_batch_get</STRONG> (Thumb, 104 bytes, Stack size 24 bytes, lsm6ds3tr-c_reg.o(i.lsm6ds3tr_c_fifo_dataset_3_batch_get))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = lsm6ds3tr_c_fifo_dataset_3_batch_get &rArr; lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[319]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[340]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_set_fifo_odr
-</UL>
-
-<P><STRONG><a name="[348]"></a>lsm6ds3tr_c_fifo_dataset_3_batch_set</STRONG> (Thumb, 50 bytes, Stack size 24 bytes, lsm6ds3tr-c_reg.o(i.lsm6ds3tr_c_fifo_dataset_3_batch_set))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = lsm6ds3tr_c_fifo_dataset_3_batch_set &rArr; lsm6ds3tr_c_write_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3dd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_write_reg
-<LI><a href="#[319]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[340]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_set_fifo_odr
-</UL>
-
-<P><STRONG><a name="[34b]"></a>lsm6ds3tr_c_fifo_dataset_4_batch_get</STRONG> (Thumb, 104 bytes, Stack size 24 bytes, lsm6ds3tr-c_reg.o(i.lsm6ds3tr_c_fifo_dataset_4_batch_get))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = lsm6ds3tr_c_fifo_dataset_4_batch_get &rArr; lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[319]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[340]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_set_fifo_odr
-</UL>
-
-<P><STRONG><a name="[34a]"></a>lsm6ds3tr_c_fifo_dataset_4_batch_set</STRONG> (Thumb, 50 bytes, Stack size 24 bytes, lsm6ds3tr-c_reg.o(i.lsm6ds3tr_c_fifo_dataset_4_batch_set))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = lsm6ds3tr_c_fifo_dataset_4_batch_set &rArr; lsm6ds3tr_c_write_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3dd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_write_reg
-<LI><a href="#[319]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[340]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_set_fifo_odr
-</UL>
-
-<P><STRONG><a name="[347]"></a>lsm6ds3tr_c_fifo_gy_batch_get</STRONG> (Thumb, 104 bytes, Stack size 24 bytes, lsm6ds3tr-c_reg.o(i.lsm6ds3tr_c_fifo_gy_batch_get))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = lsm6ds3tr_c_fifo_gy_batch_get &rArr; lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[319]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[340]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_set_fifo_odr
-</UL>
-
-<P><STRONG><a name="[346]"></a>lsm6ds3tr_c_fifo_gy_batch_set</STRONG> (Thumb, 50 bytes, Stack size 24 bytes, lsm6ds3tr-c_reg.o(i.lsm6ds3tr_c_fifo_gy_batch_set))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = lsm6ds3tr_c_fifo_gy_batch_set &rArr; lsm6ds3tr_c_write_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3dd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_write_reg
-<LI><a href="#[319]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[340]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_set_fifo_odr
-</UL>
-
-<P><STRONG><a name="[343]"></a>lsm6ds3tr_c_fifo_mode_get</STRONG> (Thumb, 86 bytes, Stack size 24 bytes, lsm6ds3tr-c_reg.o(i.lsm6ds3tr_c_fifo_mode_get))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = lsm6ds3tr_c_fifo_mode_get &rArr; lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[319]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[340]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_set_fifo_odr
-</UL>
-
-<P><STRONG><a name="[31a]"></a>lsm6ds3tr_c_fifo_mode_set</STRONG> (Thumb, 50 bytes, Stack size 24 bytes, lsm6ds3tr-c_reg.o(i.lsm6ds3tr_c_fifo_mode_set))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = lsm6ds3tr_c_fifo_mode_set &rArr; lsm6ds3tr_c_write_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3dd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_write_reg
-<LI><a href="#[319]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[340]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_set_fifo_odr
-<LI><a href="#[317]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_get_fifo_group_num
-</UL>
-
-<P><STRONG><a name="[342]"></a>lsm6ds3tr_c_fifo_pedo_and_timestamp_batch_get</STRONG> (Thumb, 32 bytes, Stack size 24 bytes, lsm6ds3tr-c_reg.o(i.lsm6ds3tr_c_fifo_pedo_and_timestamp_batch_get))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = lsm6ds3tr_c_fifo_pedo_and_timestamp_batch_get &rArr; lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[319]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[340]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_set_fifo_odr
-</UL>
-
-<P><STRONG><a name="[341]"></a>lsm6ds3tr_c_fifo_pedo_and_timestamp_batch_set</STRONG> (Thumb, 50 bytes, Stack size 24 bytes, lsm6ds3tr-c_reg.o(i.lsm6ds3tr_c_fifo_pedo_and_timestamp_batch_set))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = lsm6ds3tr_c_fifo_pedo_and_timestamp_batch_set &rArr; lsm6ds3tr_c_write_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3dd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_write_reg
-<LI><a href="#[319]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[340]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_set_fifo_odr
-</UL>
-
-<P><STRONG><a name="[316]"></a>lsm6ds3tr_c_fifo_raw_data_get</STRONG> (Thumb, 30 bytes, Stack size 24 bytes, lsm6ds3tr-c_reg.o(i.lsm6ds3tr_c_fifo_raw_data_get))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = lsm6ds3tr_c_fifo_raw_data_get &rArr; lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[319]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[315]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_get_fifo_data
-</UL>
-
-<P><STRONG><a name="[34d]"></a>lsm6ds3tr_c_fifo_watermark_get</STRONG> (Thumb, 58 bytes, Stack size 24 bytes, lsm6ds3tr-c_reg.o(i.lsm6ds3tr_c_fifo_watermark_get))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = lsm6ds3tr_c_fifo_watermark_get &rArr; lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[319]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[340]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_set_fifo_odr
-</UL>
-
-<P><STRONG><a name="[34c]"></a>lsm6ds3tr_c_fifo_watermark_set</STRONG> (Thumb, 72 bytes, Stack size 24 bytes, lsm6ds3tr-c_reg.o(i.lsm6ds3tr_c_fifo_watermark_set))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = lsm6ds3tr_c_fifo_watermark_set &rArr; lsm6ds3tr_c_write_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3dd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_write_reg
-<LI><a href="#[319]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[340]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_set_fifo_odr
-</UL>
-
-<P><STRONG><a name="[318]"></a>lsm6ds3tr_c_fifo_wtm_flag_get</STRONG> (Thumb, 32 bytes, Stack size 24 bytes, lsm6ds3tr-c_reg.o(i.lsm6ds3tr_c_fifo_wtm_flag_get))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = lsm6ds3tr_c_fifo_wtm_flag_get &rArr; lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[319]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[317]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_get_fifo_group_num
-</UL>
-
-<P><STRONG><a name="[345]"></a>lsm6ds3tr_c_fifo_xl_batch_get</STRONG> (Thumb, 104 bytes, Stack size 24 bytes, lsm6ds3tr-c_reg.o(i.lsm6ds3tr_c_fifo_xl_batch_get))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = lsm6ds3tr_c_fifo_xl_batch_get &rArr; lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[319]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[340]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_set_fifo_odr
-</UL>
-
-<P><STRONG><a name="[344]"></a>lsm6ds3tr_c_fifo_xl_batch_set</STRONG> (Thumb, 50 bytes, Stack size 24 bytes, lsm6ds3tr-c_reg.o(i.lsm6ds3tr_c_fifo_xl_batch_set))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = lsm6ds3tr_c_fifo_xl_batch_set &rArr; lsm6ds3tr_c_write_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3dd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_write_reg
-<LI><a href="#[319]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[340]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_set_fifo_odr
-</UL>
-
-<P><STRONG><a name="[333]"></a>lsm6ds3tr_c_from_fs2000dps_to_mdps</STRONG> (Thumb, 18 bytes, Stack size 0 bytes, lsm6ds3tr-c_reg.o(i.lsm6ds3tr_c_from_fs2000dps_to_mdps))
-<BR><BR>[Called By]<UL><LI><a href="#[335]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_self_check_5
-<LI><a href="#[330]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_self_check_4
-</UL>
-
-<P><STRONG><a name="[32a]"></a>lsm6ds3tr_c_from_fs4g_to_mg</STRONG> (Thumb, 18 bytes, Stack size 0 bytes, lsm6ds3tr-c_reg.o(i.lsm6ds3tr_c_from_fs4g_to_mg))
-<BR><BR>[Called By]<UL><LI><a href="#[32c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_self_check_3
-<LI><a href="#[328]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_self_check_2
-</UL>
-
-<P><STRONG><a name="[35b]"></a>lsm6ds3tr_c_func_en_set</STRONG> (Thumb, 50 bytes, Stack size 24 bytes, lsm6ds3tr-c_reg.o(i.lsm6ds3tr_c_func_en_set))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = lsm6ds3tr_c_func_en_set &rArr; lsm6ds3tr_c_write_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3dd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_write_reg
-<LI><a href="#[319]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[357]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_set_mag_odr
-<LI><a href="#[471]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;predo_hub
-</UL>
-
-<P><STRONG><a name="[353]"></a>lsm6ds3tr_c_gy_data_rate_get</STRONG> (Thumb, 124 bytes, Stack size 24 bytes, lsm6ds3tr-c_reg.o(i.lsm6ds3tr_c_gy_data_rate_get))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = lsm6ds3tr_c_gy_data_rate_get &rArr; lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[319]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[352]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_set_gry_odr
-<LI><a href="#[471]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;predo_hub
-</UL>
-
-<P><STRONG><a name="[32e]"></a>lsm6ds3tr_c_gy_data_rate_set</STRONG> (Thumb, 50 bytes, Stack size 24 bytes, lsm6ds3tr-c_reg.o(i.lsm6ds3tr_c_gy_data_rate_set))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = lsm6ds3tr_c_gy_data_rate_set &rArr; lsm6ds3tr_c_write_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3dd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_write_reg
-<LI><a href="#[319]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[352]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_set_gry_odr
-<LI><a href="#[335]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_self_check_5
-<LI><a href="#[32c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_self_check_3
-<LI><a href="#[471]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;predo_hub
-</UL>
-
-<P><STRONG><a name="[331]"></a>lsm6ds3tr_c_gy_flag_data_ready_get</STRONG> (Thumb, 34 bytes, Stack size 24 bytes, lsm6ds3tr-c_reg.o(i.lsm6ds3tr_c_gy_flag_data_ready_get))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = lsm6ds3tr_c_gy_flag_data_ready_get &rArr; lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[319]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[335]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_self_check_5
-<LI><a href="#[330]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_self_check_4
-</UL>
-
-<P><STRONG><a name="[351]"></a>lsm6ds3tr_c_gy_full_scale_get</STRONG> (Thumb, 86 bytes, Stack size 24 bytes, lsm6ds3tr-c_reg.o(i.lsm6ds3tr_c_gy_full_scale_get))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = lsm6ds3tr_c_gy_full_scale_get &rArr; lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[319]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[350]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_set_gry_fs
-</UL>
-
-<P><STRONG><a name="[32f]"></a>lsm6ds3tr_c_gy_full_scale_set</STRONG> (Thumb, 50 bytes, Stack size 24 bytes, lsm6ds3tr-c_reg.o(i.lsm6ds3tr_c_gy_full_scale_set))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = lsm6ds3tr_c_gy_full_scale_set &rArr; lsm6ds3tr_c_write_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3dd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_write_reg
-<LI><a href="#[319]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[350]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_set_gry_fs
-<LI><a href="#[32c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_self_check_3
-</UL>
-
-<P><STRONG><a name="[356]"></a>lsm6ds3tr_c_gy_power_mode_get</STRONG> (Thumb, 58 bytes, Stack size 24 bytes, lsm6ds3tr-c_reg.o(i.lsm6ds3tr_c_gy_power_mode_get))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = lsm6ds3tr_c_gy_power_mode_get &rArr; lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[319]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[354]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_set_gry_power_mode
-</UL>
-
-<P><STRONG><a name="[355]"></a>lsm6ds3tr_c_gy_power_mode_set</STRONG> (Thumb, 50 bytes, Stack size 24 bytes, lsm6ds3tr-c_reg.o(i.lsm6ds3tr_c_gy_power_mode_set))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = lsm6ds3tr_c_gy_power_mode_set &rArr; lsm6ds3tr_c_write_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3dd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_write_reg
-<LI><a href="#[319]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[354]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_set_gry_power_mode
-</UL>
-
-<P><STRONG><a name="[334]"></a>lsm6ds3tr_c_gy_self_test_set</STRONG> (Thumb, 50 bytes, Stack size 24 bytes, lsm6ds3tr-c_reg.o(i.lsm6ds3tr_c_gy_self_test_set))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = lsm6ds3tr_c_gy_self_test_set &rArr; lsm6ds3tr_c_write_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3dd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_write_reg
-<LI><a href="#[319]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[335]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_self_check_5
-<LI><a href="#[330]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_self_check_4
-</UL>
-
-<P><STRONG><a name="[359]"></a>lsm6ds3tr_c_mem_bank_set</STRONG> (Thumb, 50 bytes, Stack size 24 bytes, lsm6ds3tr-c_reg.o(i.lsm6ds3tr_c_mem_bank_set))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = lsm6ds3tr_c_mem_bank_set &rArr; lsm6ds3tr_c_write_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3dd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_write_reg
-<LI><a href="#[319]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[357]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_set_mag_odr
-<LI><a href="#[358]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_sh_slv0_cfg_read
-<LI><a href="#[35a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_sh_num_of_dev_connected_set
-</UL>
-
-<P><STRONG><a name="[319]"></a>lsm6ds3tr_c_read_reg</STRONG> (Thumb, 32 bytes, Stack size 24 bytes, lsm6ds3tr-c_reg.o(i.lsm6ds3tr_c_read_reg))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[357]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_set_mag_odr
-<LI><a href="#[317]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_get_fifo_group_num
-<LI><a href="#[471]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;predo_hub
-<LI><a href="#[32b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_xl_self_test_set
-<LI><a href="#[33e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_xl_power_mode_set
-<LI><a href="#[33f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_xl_power_mode_get
-<LI><a href="#[327]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_xl_full_scale_set
-<LI><a href="#[33a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_xl_full_scale_get
-<LI><a href="#[329]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_xl_flag_data_ready_get
-<LI><a href="#[326]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_xl_data_rate_set
-<LI><a href="#[33c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_xl_data_rate_get
-<LI><a href="#[361]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_timestamp_set
-<LI><a href="#[35e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_timestamp_res_set
-<LI><a href="#[35f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_timestamp_res_get
-<LI><a href="#[362]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_timestamp_get
-<LI><a href="#[313]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_status_reg_get
-<LI><a href="#[358]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_sh_slv0_cfg_read
-<LI><a href="#[23a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_sh_pin_mode_set
-<LI><a href="#[23b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_sh_pin_mode_get
-<LI><a href="#[238]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_sh_pass_through_set
-<LI><a href="#[239]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_sh_pass_through_get
-<LI><a href="#[35a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_sh_num_of_dev_connected_set
-<LI><a href="#[35c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_sh_master_set
-<LI><a href="#[3de]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_sh_master_get
-<LI><a href="#[324]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_reset_set
-<LI><a href="#[325]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_reset_get
-<LI><a href="#[359]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_mem_bank_set
-<LI><a href="#[334]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_gy_self_test_set
-<LI><a href="#[355]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_gy_power_mode_set
-<LI><a href="#[356]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_gy_power_mode_get
-<LI><a href="#[32f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_gy_full_scale_set
-<LI><a href="#[351]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_gy_full_scale_get
-<LI><a href="#[331]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_gy_flag_data_ready_get
-<LI><a href="#[32e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_gy_data_rate_set
-<LI><a href="#[353]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_gy_data_rate_get
-<LI><a href="#[35b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_func_en_set
-<LI><a href="#[344]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_fifo_xl_batch_set
-<LI><a href="#[345]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_fifo_xl_batch_get
-<LI><a href="#[318]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_fifo_wtm_flag_get
-<LI><a href="#[34c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_fifo_watermark_set
-<LI><a href="#[34d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_fifo_watermark_get
-<LI><a href="#[316]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_fifo_raw_data_get
-<LI><a href="#[341]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_fifo_pedo_and_timestamp_batch_set
-<LI><a href="#[342]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_fifo_pedo_and_timestamp_batch_get
-<LI><a href="#[31a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_fifo_mode_set
-<LI><a href="#[343]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_fifo_mode_get
-<LI><a href="#[346]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_fifo_gy_batch_set
-<LI><a href="#[347]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_fifo_gy_batch_get
-<LI><a href="#[34a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_fifo_dataset_4_batch_set
-<LI><a href="#[34b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_fifo_dataset_4_batch_get
-<LI><a href="#[348]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_fifo_dataset_3_batch_set
-<LI><a href="#[349]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_fifo_dataset_3_batch_get
-<LI><a href="#[34e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_fifo_data_rate_set
-<LI><a href="#[34f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_fifo_data_rate_get
-<LI><a href="#[31c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_fifo_data_level_get
-<LI><a href="#[31e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_device_id_get
-<LI><a href="#[332]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_angular_rate_raw_get
-<LI><a href="#[314]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_acceleration_raw_get
-</UL>
-
-<P><STRONG><a name="[325]"></a>lsm6ds3tr_c_reset_get</STRONG> (Thumb, 34 bytes, Stack size 24 bytes, lsm6ds3tr-c_reg.o(i.lsm6ds3tr_c_reset_get))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = lsm6ds3tr_c_reset_get &rArr; lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[319]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[323]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_self_check_1
-</UL>
-
-<P><STRONG><a name="[324]"></a>lsm6ds3tr_c_reset_set</STRONG> (Thumb, 50 bytes, Stack size 24 bytes, lsm6ds3tr-c_reg.o(i.lsm6ds3tr_c_reset_set))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = lsm6ds3tr_c_reset_set &rArr; lsm6ds3tr_c_write_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3dd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_write_reg
-<LI><a href="#[319]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[323]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_self_check_1
-</UL>
-
-<P><STRONG><a name="[3de]"></a>lsm6ds3tr_c_sh_master_get</STRONG> (Thumb, 34 bytes, Stack size 24 bytes, lsm6ds3tr-c_reg.o(i.lsm6ds3tr_c_sh_master_get))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = lsm6ds3tr_c_sh_master_get &rArr; lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[319]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[471]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;predo_hub
-</UL>
-
-<P><STRONG><a name="[35c]"></a>lsm6ds3tr_c_sh_master_set</STRONG> (Thumb, 50 bytes, Stack size 24 bytes, lsm6ds3tr-c_reg.o(i.lsm6ds3tr_c_sh_master_set))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = lsm6ds3tr_c_sh_master_set &rArr; lsm6ds3tr_c_write_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3dd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_write_reg
-<LI><a href="#[319]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[357]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_set_mag_odr
-<LI><a href="#[471]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;predo_hub
-</UL>
-
-<P><STRONG><a name="[35a]"></a>lsm6ds3tr_c_sh_num_of_dev_connected_set</STRONG> (Thumb, 74 bytes, Stack size 24 bytes, lsm6ds3tr-c_reg.o(i.lsm6ds3tr_c_sh_num_of_dev_connected_set))
-<BR><BR>[Stack]<UL><LI>Max Depth = 72<LI>Call Chain = lsm6ds3tr_c_sh_num_of_dev_connected_set &rArr; lsm6ds3tr_c_mem_bank_set &rArr; lsm6ds3tr_c_write_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3dd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_write_reg
-<LI><a href="#[319]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_read_reg
-<LI><a href="#[359]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_mem_bank_set
-</UL>
-<BR>[Called By]<UL><LI><a href="#[357]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_set_mag_odr
-</UL>
-
-<P><STRONG><a name="[239]"></a>lsm6ds3tr_c_sh_pass_through_get</STRONG> (Thumb, 34 bytes, Stack size 24 bytes, lsm6ds3tr-c_reg.o(i.lsm6ds3tr_c_sh_pass_through_get))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = lsm6ds3tr_c_sh_pass_through_get &rArr; lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[319]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[335]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_self_check_5
-<LI><a href="#[471]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;predo_hub
-<LI><a href="#[237]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;afterdo_hub
-</UL>
-
-<P><STRONG><a name="[238]"></a>lsm6ds3tr_c_sh_pass_through_set</STRONG> (Thumb, 50 bytes, Stack size 24 bytes, lsm6ds3tr-c_reg.o(i.lsm6ds3tr_c_sh_pass_through_set))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = lsm6ds3tr_c_sh_pass_through_set &rArr; lsm6ds3tr_c_write_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3dd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_write_reg
-<LI><a href="#[319]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[335]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_self_check_5
-<LI><a href="#[471]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;predo_hub
-<LI><a href="#[237]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;afterdo_hub
-</UL>
-
-<P><STRONG><a name="[23b]"></a>lsm6ds3tr_c_sh_pin_mode_get</STRONG> (Thumb, 60 bytes, Stack size 24 bytes, lsm6ds3tr-c_reg.o(i.lsm6ds3tr_c_sh_pin_mode_get))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = lsm6ds3tr_c_sh_pin_mode_get &rArr; lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[319]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[471]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;predo_hub
-<LI><a href="#[237]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;afterdo_hub
-</UL>
-
-<P><STRONG><a name="[23a]"></a>lsm6ds3tr_c_sh_pin_mode_set</STRONG> (Thumb, 50 bytes, Stack size 24 bytes, lsm6ds3tr-c_reg.o(i.lsm6ds3tr_c_sh_pin_mode_set))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = lsm6ds3tr_c_sh_pin_mode_set &rArr; lsm6ds3tr_c_write_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3dd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_write_reg
-<LI><a href="#[319]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[357]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_set_mag_odr
-<LI><a href="#[471]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;predo_hub
-<LI><a href="#[237]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;afterdo_hub
-</UL>
-
-<P><STRONG><a name="[358]"></a>lsm6ds3tr_c_sh_slv0_cfg_read</STRONG> (Thumb, 132 bytes, Stack size 24 bytes, lsm6ds3tr-c_reg.o(i.lsm6ds3tr_c_sh_slv0_cfg_read))
-<BR><BR>[Stack]<UL><LI>Max Depth = 72<LI>Call Chain = lsm6ds3tr_c_sh_slv0_cfg_read &rArr; lsm6ds3tr_c_mem_bank_set &rArr; lsm6ds3tr_c_write_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3dd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_write_reg
-<LI><a href="#[319]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_read_reg
-<LI><a href="#[359]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_mem_bank_set
-</UL>
-<BR>[Called By]<UL><LI><a href="#[357]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_set_mag_odr
-</UL>
-
-<P><STRONG><a name="[313]"></a>lsm6ds3tr_c_status_reg_get</STRONG> (Thumb, 24 bytes, Stack size 16 bytes, lsm6ds3tr-c_reg.o(i.lsm6ds3tr_c_status_reg_get))
-<BR><BR>[Stack]<UL><LI>Max Depth = 40<LI>Call Chain = lsm6ds3tr_c_status_reg_get &rArr; lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[319]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[312]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_get_acc_data
-</UL>
-
-<P><STRONG><a name="[362]"></a>lsm6ds3tr_c_timestamp_get</STRONG> (Thumb, 34 bytes, Stack size 24 bytes, lsm6ds3tr-c_reg.o(i.lsm6ds3tr_c_timestamp_get))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = lsm6ds3tr_c_timestamp_get &rArr; lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[319]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[360]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_set_timestamp_switch
-</UL>
-
-<P><STRONG><a name="[35f]"></a>lsm6ds3tr_c_timestamp_res_get</STRONG> (Thumb, 60 bytes, Stack size 24 bytes, lsm6ds3tr-c_reg.o(i.lsm6ds3tr_c_timestamp_res_get))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = lsm6ds3tr_c_timestamp_res_get &rArr; lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[319]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[35d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_set_timestamp_resolution
-</UL>
-
-<P><STRONG><a name="[35e]"></a>lsm6ds3tr_c_timestamp_res_set</STRONG> (Thumb, 50 bytes, Stack size 24 bytes, lsm6ds3tr-c_reg.o(i.lsm6ds3tr_c_timestamp_res_set))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = lsm6ds3tr_c_timestamp_res_set &rArr; lsm6ds3tr_c_write_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3dd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_write_reg
-<LI><a href="#[319]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[35d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_set_timestamp_resolution
-</UL>
-
-<P><STRONG><a name="[361]"></a>lsm6ds3tr_c_timestamp_set</STRONG> (Thumb, 62 bytes, Stack size 24 bytes, lsm6ds3tr-c_reg.o(i.lsm6ds3tr_c_timestamp_set))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = lsm6ds3tr_c_timestamp_set &rArr; lsm6ds3tr_c_write_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3dd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_write_reg
-<LI><a href="#[319]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[360]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_set_timestamp_switch
-</UL>
-
-<P><STRONG><a name="[3dd]"></a>lsm6ds3tr_c_write_reg</STRONG> (Thumb, 34 bytes, Stack size 24 bytes, lsm6ds3tr-c_reg.o(i.lsm6ds3tr_c_write_reg))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = lsm6ds3tr_c_write_reg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[32b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_xl_self_test_set
-<LI><a href="#[33e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_xl_power_mode_set
-<LI><a href="#[327]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_xl_full_scale_set
-<LI><a href="#[326]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_xl_data_rate_set
-<LI><a href="#[361]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_timestamp_set
-<LI><a href="#[35e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_timestamp_res_set
-<LI><a href="#[358]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_sh_slv0_cfg_read
-<LI><a href="#[23a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_sh_pin_mode_set
-<LI><a href="#[238]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_sh_pass_through_set
-<LI><a href="#[35a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_sh_num_of_dev_connected_set
-<LI><a href="#[35c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_sh_master_set
-<LI><a href="#[324]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_reset_set
-<LI><a href="#[359]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_mem_bank_set
-<LI><a href="#[334]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_gy_self_test_set
-<LI><a href="#[355]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_gy_power_mode_set
-<LI><a href="#[32f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_gy_full_scale_set
-<LI><a href="#[32e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_gy_data_rate_set
-<LI><a href="#[35b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_func_en_set
-<LI><a href="#[344]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_fifo_xl_batch_set
-<LI><a href="#[34c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_fifo_watermark_set
-<LI><a href="#[341]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_fifo_pedo_and_timestamp_batch_set
-<LI><a href="#[31a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_fifo_mode_set
-<LI><a href="#[346]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_fifo_gy_batch_set
-<LI><a href="#[34a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_fifo_dataset_4_batch_set
-<LI><a href="#[348]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_fifo_dataset_3_batch_set
-<LI><a href="#[34e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_fifo_data_rate_set
-</UL>
-
-<P><STRONG><a name="[33c]"></a>lsm6ds3tr_c_xl_data_rate_get</STRONG> (Thumb, 130 bytes, Stack size 24 bytes, lsm6ds3tr-c_reg.o(i.lsm6ds3tr_c_xl_data_rate_get))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = lsm6ds3tr_c_xl_data_rate_get &rArr; lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[319]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[33b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_set_acc_odr
-<LI><a href="#[471]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;predo_hub
-</UL>
-
-<P><STRONG><a name="[326]"></a>lsm6ds3tr_c_xl_data_rate_set</STRONG> (Thumb, 50 bytes, Stack size 24 bytes, lsm6ds3tr-c_reg.o(i.lsm6ds3tr_c_xl_data_rate_set))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = lsm6ds3tr_c_xl_data_rate_set &rArr; lsm6ds3tr_c_write_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3dd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_write_reg
-<LI><a href="#[319]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[33b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_set_acc_odr
-<LI><a href="#[32c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_self_check_3
-<LI><a href="#[323]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_self_check_1
-<LI><a href="#[471]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;predo_hub
-</UL>
-
-<P><STRONG><a name="[329]"></a>lsm6ds3tr_c_xl_flag_data_ready_get</STRONG> (Thumb, 34 bytes, Stack size 24 bytes, lsm6ds3tr-c_reg.o(i.lsm6ds3tr_c_xl_flag_data_ready_get))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = lsm6ds3tr_c_xl_flag_data_ready_get &rArr; lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[319]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[32c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_self_check_3
-<LI><a href="#[328]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_self_check_2
-</UL>
-
-<P><STRONG><a name="[33a]"></a>lsm6ds3tr_c_xl_full_scale_get</STRONG> (Thumb, 80 bytes, Stack size 24 bytes, lsm6ds3tr-c_reg.o(i.lsm6ds3tr_c_xl_full_scale_get))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = lsm6ds3tr_c_xl_full_scale_get &rArr; lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[319]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[339]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_set_acc_fs
-</UL>
-
-<P><STRONG><a name="[327]"></a>lsm6ds3tr_c_xl_full_scale_set</STRONG> (Thumb, 50 bytes, Stack size 24 bytes, lsm6ds3tr-c_reg.o(i.lsm6ds3tr_c_xl_full_scale_set))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = lsm6ds3tr_c_xl_full_scale_set &rArr; lsm6ds3tr_c_write_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3dd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_write_reg
-<LI><a href="#[319]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[339]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_set_acc_fs
-<LI><a href="#[323]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_self_check_1
-</UL>
-
-<P><STRONG><a name="[33f]"></a>lsm6ds3tr_c_xl_power_mode_get</STRONG> (Thumb, 60 bytes, Stack size 24 bytes, lsm6ds3tr-c_reg.o(i.lsm6ds3tr_c_xl_power_mode_get))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = lsm6ds3tr_c_xl_power_mode_get &rArr; lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[319]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[33d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_set_acc_power_mode
-</UL>
-
-<P><STRONG><a name="[33e]"></a>lsm6ds3tr_c_xl_power_mode_set</STRONG> (Thumb, 50 bytes, Stack size 24 bytes, lsm6ds3tr-c_reg.o(i.lsm6ds3tr_c_xl_power_mode_set))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = lsm6ds3tr_c_xl_power_mode_set &rArr; lsm6ds3tr_c_write_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3dd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_write_reg
-<LI><a href="#[319]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[33d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_set_acc_power_mode
-</UL>
-
-<P><STRONG><a name="[32b]"></a>lsm6ds3tr_c_xl_self_test_set</STRONG> (Thumb, 50 bytes, Stack size 24 bytes, lsm6ds3tr-c_reg.o(i.lsm6ds3tr_c_xl_self_test_set))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = lsm6ds3tr_c_xl_self_test_set &rArr; lsm6ds3tr_c_write_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3dd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_write_reg
-<LI><a href="#[319]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[32c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_self_check_3
-<LI><a href="#[328]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_self_check_2
-</UL>
-
-<P><STRONG><a name="[34]"></a>main</STRONG> (Thumb, 24 bytes, Stack size 0 bytes, main.o(i.main))
-<BR><BR>[Stack]<UL><LI>Max Depth = 5080<LI>Call Chain = main &rArr; USR_Init &rArr; app_detect_Init &rArr; slave_adv_init &rArr; advertising_init &rArr; app_error_handler &rArr; app_error_fault_handler &rArr; Flash_SaveLog &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3c2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_dfu_server_init
-<LI><a href="#[3c1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_dfu_init
-<LI><a href="#[205]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;USR_Process
-<LI><a href="#[1ed]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;USR_Init
-<LI><a href="#[1a5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;PRE_Init
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> entry9a.o(.ARM.Collect$$$$0000000B)
-</UL>
-<P><STRONG><a name="[2ed]"></a>matrix_inverse</STRONG> (Thumb, 568 bytes, Stack size 76 bytes, matrixoperations.o(i.matrix_inverse))
-<BR><BR>[Stack]<UL><LI>Max Depth = 76<LI>Call Chain = matrix_inverse
-</UL>
-<BR>[Called By]<UL><LI><a href="#[2ec]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;calKafmanGain9x4
-</UL>
-
-<P><STRONG><a name="[476]"></a>max_min_window</STRONG> (Thumb, 114 bytes, Stack size 20 bytes, press_down_detect.o(i.max_min_window))
-<BR><BR>[Stack]<UL><LI>Max Depth = 20<LI>Call Chain = max_min_window
-</UL>
-<BR>[Called By]<UL><LI><a href="#[475]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;press_jump_detect
-</UL>
-
-<P><STRONG><a name="[22c]"></a>middleFilter</STRONG> (Thumb, 142 bytes, Stack size 60 bytes, selfcheck.o(i.middleFilter))
-<BR><BR>[Stack]<UL><LI>Max Depth = 60<LI>Call Chain = middleFilter
-</UL>
-<BR>[Called By]<UL><LI><a href="#[b1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;adc_callback
-</UL>
-
-<P><STRONG><a name="[3e0]"></a>minfds_Scan</STRONG> (Thumb, 174 bytes, Stack size 16 bytes, hal_minifds.o(i.minfds_Scan))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = minfds_Scan &rArr; checkcec
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3bc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;jump
-<LI><a href="#[3e1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;checkcec
-</UL>
-<BR>[Called By]<UL><LI><a href="#[134]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;minfds_init
-</UL>
-
-<P><STRONG><a name="[3e2]"></a>minfds_gc</STRONG> (Thumb, 456 bytes, Stack size 4200 bytes, hal_minifds.o(i.minfds_gc))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4200<LI>Call Chain = minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3e3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;printctb
-<LI><a href="#[3bc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;jump
-</UL>
-<BR>[Called By]<UL><LI><a href="#[3e4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;minfds_record_add
-</UL>
-
-<P><STRONG><a name="[134]"></a>minfds_init</STRONG> (Thumb, 20 bytes, Stack size 8 bytes, hal_minifds.o(i.minfds_init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = minfds_init &rArr; minfds_Scan &rArr; checkcec
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3e3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;printctb
-<LI><a href="#[3e0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;minfds_Scan
-</UL>
-<BR>[Called By]<UL><LI><a href="#[131]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_Initialize
-</UL>
-
-<P><STRONG><a name="[3e4]"></a>minfds_record_add</STRONG> (Thumb, 454 bytes, Stack size 40 bytes, hal_minifds.o(i.minfds_record_add))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4240<LI>Call Chain = minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3e3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;printctb
-<LI><a href="#[3e5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;print_record
-<LI><a href="#[3e2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;minfds_gc
-<LI><a href="#[3bc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;jump
-<LI><a href="#[3e1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;checkcec
-</UL>
-<BR>[Called By]<UL><LI><a href="#[137]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;pm_add
-<LI><a href="#[3ea]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;minfds_record_update
-</UL>
-
-<P><STRONG><a name="[3e6]"></a>minfds_record_delete</STRONG> (Thumb, 204 bytes, Stack size 32 bytes, hal_minifds.o(i.minfds_record_delete))
-<BR><BR>[Stack]<UL><LI>Max Depth = 44<LI>Call Chain = minfds_record_delete &rArr; memcmp
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3bc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;jump
-<LI><a href="#[293]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;memcmp
-</UL>
-<BR>[Called By]<UL><LI><a href="#[138]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;pm_delete
-<LI><a href="#[3ea]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;minfds_record_update
-</UL>
-
-<P><STRONG><a name="[3e7]"></a>minfds_record_find</STRONG> (Thumb, 112 bytes, Stack size 32 bytes, hal_minifds.o(i.minfds_record_find))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = minfds_record_find
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3bc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;jump
-<LI><a href="#[127]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy
-</UL>
-<BR>[Called By]<UL><LI><a href="#[136]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;pm_find
-</UL>
-
-<P><STRONG><a name="[3e8]"></a>minfds_record_find_mem</STRONG> (Thumb, 146 bytes, Stack size 32 bytes, hal_minifds.o(i.minfds_record_find_mem))
-<BR><BR>[Stack]<UL><LI>Max Depth = 44<LI>Call Chain = minfds_record_find_mem &rArr; memcmp
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3bc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;jump
-<LI><a href="#[293]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;memcmp
-</UL>
-<BR>[Called By]<UL><LI><a href="#[13a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;pm_update
-<LI><a href="#[135]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;pm_get_length
-<LI><a href="#[136]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;pm_find
-<LI><a href="#[138]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;pm_delete
-<LI><a href="#[137]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;pm_add
-</UL>
-
-<P><STRONG><a name="[3e9]"></a>minfds_record_get_length</STRONG> (Thumb, 52 bytes, Stack size 32 bytes, hal_minifds.o(i.minfds_record_get_length))
-<BR><BR>[Stack]<UL><LI>Max Depth = 56<LI>Call Chain = minfds_record_get_length &rArr; get_record_hendaddr
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3bb]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;get_record_hendaddr
-</UL>
-<BR>[Called By]<UL><LI><a href="#[135]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;pm_get_length
-</UL>
-
-<P><STRONG><a name="[3ea]"></a>minfds_record_update</STRONG> (Thumb, 102 bytes, Stack size 32 bytes, hal_minifds.o(i.minfds_record_update))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4272<LI>Call Chain = minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3e6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;minfds_record_delete
-<LI><a href="#[3e4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;minfds_record_add
-<LI><a href="#[3bb]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;get_record_hendaddr
-<LI><a href="#[293]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;memcmp
-</UL>
-<BR>[Called By]<UL><LI><a href="#[13a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;pm_update
-</UL>
-
-<P><STRONG><a name="[3aa]"></a>multiply3x1</STRONG> (Thumb, 122 bytes, Stack size 0 bytes, ekfpdr.o(i.multiply3x1))
-<BR><BR>[Called By]<UL><LI><a href="#[3a9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;footPDR
-</UL>
-
-<P><STRONG><a name="[fa]"></a>multiply3x3</STRONG> (Thumb, 362 bytes, Stack size 0 bytes, ekfpdr.o(i.multiply3x3))
-<BR><BR>[Called By]<UL><LI><a href="#[286]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;attitude_matrix_update
-<LI><a href="#[f8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Att_matrix_corr
-</UL>
-
-<P><STRONG><a name="[167]"></a>need_send_data</STRONG> (Thumb, 76 bytes, Stack size 8 bytes, dtalige.o(i.need_send_data))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = need_send_data
-</UL>
-<BR>[Called By]<UL><LI><a href="#[162]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IMU_Process_motion_queue
-</UL>
-
-<P><STRONG><a name="[278]"></a>nrf_atfifo_init</STRONG> (Thumb, 40 bytes, Stack size 8 bytes, nrf_atfifo.o(i.nrf_atfifo_init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = nrf_atfifo_init
-</UL>
-<BR>[Called By]<UL><LI><a href="#[277]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_timer_init
-</UL>
-
-<P><STRONG><a name="[3f0]"></a>nrf_atfifo_item_alloc</STRONG> (Thumb, 28 bytes, Stack size 16 bytes, nrf_atfifo.o(i.nrf_atfifo_item_alloc))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = nrf_atfifo_item_alloc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3f1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__asm___12_nrf_atfifo_c_51f461e1__nrf_atfifo_wspace_req
-</UL>
-<BR>[Called By]<UL><LI><a href="#[27e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;timer_req_schedule
-</UL>
-
-<P><STRONG><a name="[3f2]"></a>nrf_atfifo_item_free</STRONG> (Thumb, 28 bytes, Stack size 16 bytes, nrf_atfifo.o(i.nrf_atfifo_item_free))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = nrf_atfifo_item_free
-</UL>
-<BR>[Calls]<UL><LI><a href="#[d3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__asm___12_nrf_atfifo_c_51f461e1__nrf_atfifo_rspace_close
-</UL>
-<BR>[Called By]<UL><LI><a href="#[47b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;timer_req_process
-</UL>
-
-<P><STRONG><a name="[3f3]"></a>nrf_atfifo_item_get</STRONG> (Thumb, 28 bytes, Stack size 16 bytes, nrf_atfifo.o(i.nrf_atfifo_item_get))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = nrf_atfifo_item_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3f4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__asm___12_nrf_atfifo_c_51f461e1__nrf_atfifo_rspace_req
-</UL>
-<BR>[Called By]<UL><LI><a href="#[47b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;timer_req_process
-</UL>
-
-<P><STRONG><a name="[3f5]"></a>nrf_atfifo_item_put</STRONG> (Thumb, 28 bytes, Stack size 16 bytes, nrf_atfifo.o(i.nrf_atfifo_item_put))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = nrf_atfifo_item_put
-</UL>
-<BR>[Calls]<UL><LI><a href="#[d2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__asm___12_nrf_atfifo_c_51f461e1__nrf_atfifo_wspace_close
-</UL>
-<BR>[Called By]<UL><LI><a href="#[27e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;timer_req_schedule
-</UL>
-
-<P><STRONG><a name="[399]"></a>nrf_atflags_clear</STRONG> (Thumb, 30 bytes, Stack size 16 bytes, nrf_atflags.o(i.nrf_atflags_clear))
-<BR><BR>[Stack]<UL><LI>Max Depth = 40<LI>Call Chain = nrf_atflags_clear &rArr; nrf_atomic_u32_and
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3f6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_atomic_u32_and
-</UL>
-<BR>[Called By]<UL><LI><a href="#[2c4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;record_set_disconnected
-<LI><a href="#[479]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;record_invalidate
-<LI><a href="#[2c5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;flag_toggle
-</UL>
-
-<P><STRONG><a name="[2a3]"></a>nrf_atflags_get</STRONG> (Thumb, 30 bytes, Stack size 8 bytes, nrf_atflags.o(i.nrf_atflags_get))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = nrf_atflags_get
-</UL>
-<BR>[Called By]<UL><LI><a href="#[2a2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_conn_state_role
-<LI><a href="#[2fa]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;conn_handle_list_get
-<LI><a href="#[2a1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_conn_state_valid
-</UL>
-
-<P><STRONG><a name="[2c3]"></a>nrf_atflags_set</STRONG> (Thumb, 30 bytes, Stack size 16 bytes, nrf_atflags.o(i.nrf_atflags_set))
-<BR><BR>[Stack]<UL><LI>Max Depth = 40<LI>Call Chain = nrf_atflags_set &rArr; nrf_atomic_u32_or
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3f7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_atomic_u32_or
-</UL>
-<BR>[Called By]<UL><LI><a href="#[2c2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;record_activate
-<LI><a href="#[2c5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;flag_toggle
-<LI><a href="#[bd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_evt_handler
-</UL>
-
-<P><STRONG><a name="[3f6]"></a>nrf_atomic_u32_and</STRONG> (Thumb, 22 bytes, Stack size 24 bytes, nrf_atomic.o(i.nrf_atomic_u32_and))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = nrf_atomic_u32_and
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3f8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__asm___12_nrf_atomic_c_85ca2469__nrf_atomic_internal_and
-</UL>
-<BR>[Called By]<UL><LI><a href="#[399]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_atflags_clear
-<LI><a href="#[2c1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;record_purge_disconnected
-</UL>
-
-<P><STRONG><a name="[3f9]"></a>nrf_atomic_u32_fetch_store</STRONG> (Thumb, 22 bytes, Stack size 24 bytes, nrf_atomic.o(i.nrf_atomic_u32_fetch_store))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = nrf_atomic_u32_fetch_store
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3fa]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__asm___12_nrf_atomic_c_85ca2469__nrf_atomic_internal_mov
-</UL>
-<BR>[Called By]<UL><LI><a href="#[26d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_pwr_mgmt_shutdown
-</UL>
-
-<P><STRONG><a name="[3f7]"></a>nrf_atomic_u32_or</STRONG> (Thumb, 22 bytes, Stack size 24 bytes, nrf_atomic.o(i.nrf_atomic_u32_or))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = nrf_atomic_u32_or
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3fb]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__asm___12_nrf_atomic_c_85ca2469__nrf_atomic_internal_orr
-</UL>
-<BR>[Called By]<UL><LI><a href="#[2c3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_atflags_set
-</UL>
-
-<P><STRONG><a name="[3fc]"></a>nrf_balloc_alloc</STRONG> (Thumb, 82 bytes, Stack size 24 bytes, nrf_balloc.o(i.nrf_balloc_alloc))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = nrf_balloc_alloc &rArr; app_util_critical_region_enter &rArr; sd_nvic_critical_region_enter
-</UL>
-<BR>[Calls]<UL><LI><a href="#[282]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_util_critical_region_exit
-<LI><a href="#[280]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_util_critical_region_enter
-<LI><a href="#[3fd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_balloc_idx2block
-</UL>
-<BR>[Called By]<UL><LI><a href="#[3b7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_memobj_alloc
-</UL>
-
-<P><STRONG><a name="[3fe]"></a>nrf_balloc_free</STRONG> (Thumb, 48 bytes, Stack size 24 bytes, nrf_balloc.o(i.nrf_balloc_free))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = nrf_balloc_free &rArr; app_util_critical_region_enter &rArr; sd_nvic_critical_region_enter
-</UL>
-<BR>[Calls]<UL><LI><a href="#[282]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_util_critical_region_exit
-<LI><a href="#[280]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_util_critical_region_enter
-<LI><a href="#[3ff]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_balloc_block2idx
-</UL>
-<BR>[Called By]<UL><LI><a href="#[40f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_memobj_free
-</UL>
-
-<P><STRONG><a name="[42b]"></a>nrf_balloc_init</STRONG> (Thumb, 60 bytes, Stack size 8 bytes, nrf_balloc.o(i.nrf_balloc_init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = nrf_balloc_init
-</UL>
-<BR>[Called By]<UL><LI><a href="#[40a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_memobj_pool_init
-</UL>
-
-<P><STRONG><a name="[3b5]"></a>nrf_ble_gatt_att_mtu_central_set</STRONG> (Thumb, 30 bytes, Stack size 0 bytes, nrf_ble_gatt.o(i.nrf_ble_gatt_att_mtu_central_set))
-<BR><BR>[Called By]<UL><LI><a href="#[3b3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;gatt_init
-</UL>
-
-<P><STRONG><a name="[3b6]"></a>nrf_ble_gatt_att_mtu_periph_set</STRONG> (Thumb, 30 bytes, Stack size 0 bytes, nrf_ble_gatt.o(i.nrf_ble_gatt_att_mtu_periph_set))
-<BR><BR>[Called By]<UL><LI><a href="#[3b3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;gatt_init
-</UL>
-
-<P><STRONG><a name="[3b4]"></a>nrf_ble_gatt_init</STRONG> (Thumb, 52 bytes, Stack size 16 bytes, nrf_ble_gatt.o(i.nrf_ble_gatt_init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = nrf_ble_gatt_init
-</UL>
-<BR>[Calls]<UL><LI><a href="#[400]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;link_init
-</UL>
-<BR>[Called By]<UL><LI><a href="#[3b3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;gatt_init
-</UL>
-
-<P><STRONG><a name="[bf]"></a>nrf_ble_gatt_on_ble_evt</STRONG> (Thumb, 174 bytes, Stack size 24 bytes, nrf_ble_gatt.o(i.nrf_ble_gatt_on_ble_evt))
-<BR><BR>[Stack]<UL><LI>Max Depth = 96<LI>Call Chain = nrf_ble_gatt_on_ble_evt &rArr; on_data_length_update_evt
-</UL>
-<BR>[Calls]<UL><LI><a href="#[403]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_exchange_mtu_rsp_evt
-<LI><a href="#[404]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_exchange_mtu_request_evt
-<LI><a href="#[402]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_disconnected_evt
-<LI><a href="#[406]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_data_length_update_request_evt
-<LI><a href="#[405]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_data_length_update_evt
-<LI><a href="#[401]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_connected_evt
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> host.o(sdh_ble_observers1)
-</UL>
-<P><STRONG><a name="[2cc]"></a>nrf_ble_gq_conn_handle_register</STRONG> (Thumb, 84 bytes, Stack size 24 bytes, nrf_ble_gq.o(i.nrf_ble_gq_conn_handle_register))
-<BR><BR>[Stack]<UL><LI>Max Depth = 168<LI>Call Chain = nrf_ble_gq_conn_handle_register &rArr; queues_purge &rArr; nrf_memobj_free &rArr; nrf_balloc_free &rArr; app_util_critical_region_enter &rArr; sd_nvic_critical_region_enter
-</UL>
-<BR>[Calls]<UL><LI><a href="#[40a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_memobj_pool_init
-<LI><a href="#[407]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;queues_purge
-<LI><a href="#[409]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;is_any_conn_handle_registered
-<LI><a href="#[40b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;conn_handle_register
-<LI><a href="#[408]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;conn_handle_id_find
-</UL>
-<BR>[Called By]<UL><LI><a href="#[2ca]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_nus_c_handles_assign
-<LI><a href="#[2ab]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;discovery_start
-</UL>
-
-<P><STRONG><a name="[2d1]"></a>nrf_ble_gq_item_add</STRONG> (Thumb, 208 bytes, Stack size 32 bytes, nrf_ble_gq.o(i.nrf_ble_gq_item_add))
-<BR><BR>[Stack]<UL><LI>Max Depth = 216<LI>Call Chain = nrf_ble_gq_item_add &rArr; queue_process &rArr; nrf_memobj_read &rArr; memobj_op
-</UL>
-<BR>[Calls]<UL><LI><a href="#[40e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_queue_push
-<LI><a href="#[40c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_queue_is_empty
-<LI><a href="#[40f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_memobj_free
-<LI><a href="#[40d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;request_process
-<LI><a href="#[407]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;queues_purge
-<LI><a href="#[410]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;queue_process
-<LI><a href="#[408]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;conn_handle_id_find
-</UL>
-<BR>[Called By]<UL><LI><a href="#[2d0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_nus_c_string_send
-<LI><a href="#[461]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_srv_disc_completion
-<LI><a href="#[2ab]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;discovery_start
-<LI><a href="#[302]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;descriptors_discover
-<LI><a href="#[2f6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;characteristics_discover
-<LI><a href="#[2d2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cccd_configure
-</UL>
-
-<P><STRONG><a name="[c2]"></a>nrf_ble_gq_on_ble_evt</STRONG> (Thumb, 134 bytes, Stack size 24 bytes, nrf_ble_gq.o(i.nrf_ble_gq_on_ble_evt))
-<BR><BR>[Stack]<UL><LI>Max Depth = 208<LI>Call Chain = nrf_ble_gq_on_ble_evt &rArr; queue_process &rArr; nrf_memobj_read &rArr; memobj_op
-</UL>
-<BR>[Calls]<UL><LI><a href="#[40e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_queue_push
-<LI><a href="#[410]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;queue_process
-<LI><a href="#[408]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;conn_handle_id_find
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> host.o(sdh_ble_observers1)
-</UL>
-<P><STRONG><a name="[3ef]"></a>nrf_ble_qwr_conn_handle_assign</STRONG> (Thumb, 32 bytes, Stack size 0 bytes, nrf_ble_qwr.o(i.nrf_ble_qwr_conn_handle_assign))
-<BR><BR>[Called By]<UL><LI><a href="#[3ee]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;multi_qwr_conn_handle_assign
-</UL>
-
-<P><STRONG><a name="[48f]"></a>nrf_ble_qwr_init</STRONG> (Thumb, 50 bytes, Stack size 0 bytes, nrf_ble_qwr.o(i.nrf_ble_qwr_init))
-<BR><BR>[Called By]<UL><LI><a href="#[48e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;services_init
-</UL>
-
-<P><STRONG><a name="[c5]"></a>nrf_ble_qwr_on_ble_evt</STRONG> (Thumb, 124 bytes, Stack size 16 bytes, nrf_ble_qwr.o(i.nrf_ble_qwr_on_ble_evt))
-<BR><BR>[Stack]<UL><LI>Max Depth = 56<LI>Call Chain = nrf_ble_qwr_on_ble_evt &rArr; on_rw_authorize_request
-</UL>
-<BR>[Calls]<UL><LI><a href="#[411]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;user_mem_reply
-<LI><a href="#[412]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_user_mem_request
-<LI><a href="#[413]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_user_mem_release
-<LI><a href="#[414]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_rw_authorize_request
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> slave.o(sdh_ble_observers2)
-</UL>
-<P><STRONG><a name="[3c9]"></a>nrf_ble_scan_all_filter_remove</STRONG> (Thumb, 22 bytes, Stack size 16 bytes, nrf_ble_scan.o(i.nrf_ble_scan_all_filter_remove))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = nrf_ble_scan_all_filter_remove
-</UL>
-<BR>[Calls]<UL><LI><a href="#[d7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr
-</UL>
-<BR>[Called By]<UL><LI><a href="#[25c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;host_set_scan_name
-</UL>
-
-<P><STRONG><a name="[3ca]"></a>nrf_ble_scan_filter_set</STRONG> (Thumb, 50 bytes, Stack size 24 bytes, nrf_ble_scan.o(i.nrf_ble_scan_filter_set))
-<BR><BR>[Stack]<UL><LI>Max Depth = 64<LI>Call Chain = nrf_ble_scan_filter_set &rArr; nrf_ble_scan_name_filter_add &rArr; strcmp
-</UL>
-<BR>[Calls]<UL><LI><a href="#[416]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_scan_name_filter_add
-</UL>
-<BR>[Called By]<UL><LI><a href="#[25c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;host_set_scan_name
-<LI><a href="#[3c8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;scan_init
-</UL>
-
-<P><STRONG><a name="[417]"></a>nrf_ble_scan_filters_disable</STRONG> (Thumb, 24 bytes, Stack size 0 bytes, nrf_ble_scan.o(i.nrf_ble_scan_filters_disable))
-<BR><BR>[Called By]<UL><LI><a href="#[3cb]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_scan_filters_enable
-</UL>
-
-<P><STRONG><a name="[3cb]"></a>nrf_ble_scan_filters_enable</STRONG> (Thumb, 82 bytes, Stack size 20 bytes, nrf_ble_scan.o(i.nrf_ble_scan_filters_enable))
-<BR><BR>[Stack]<UL><LI>Max Depth = 20<LI>Call Chain = nrf_ble_scan_filters_enable
-</UL>
-<BR>[Calls]<UL><LI><a href="#[417]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_scan_filters_disable
-</UL>
-<BR>[Called By]<UL><LI><a href="#[25c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;host_set_scan_name
-<LI><a href="#[3c8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;scan_init
-</UL>
-
-<P><STRONG><a name="[418]"></a>nrf_ble_scan_init</STRONG> (Thumb, 124 bytes, Stack size 16 bytes, nrf_ble_scan.o(i.nrf_ble_scan_init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = nrf_ble_scan_init
-</UL>
-<BR>[Calls]<UL><LI><a href="#[419]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_scan_default_param_set
-<LI><a href="#[41a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_scan_default_conn_param_set
-<LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
-<LI><a href="#[127]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy
-</UL>
-<BR>[Called By]<UL><LI><a href="#[3c8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;scan_init
-</UL>
-
-<P><STRONG><a name="[c1]"></a>nrf_ble_scan_on_ble_evt</STRONG> (Thumb, 70 bytes, Stack size 24 bytes, nrf_ble_scan.o(i.nrf_ble_scan_on_ble_evt))
-<BR><BR>[Stack]<UL><LI>Max Depth = 164<LI>Call Chain = nrf_ble_scan_on_ble_evt &rArr; nrf_ble_scan_on_adv_report &rArr; adv_name_compare &rArr; ble_advdata_name_find &rArr; ble_advdata_search
-</UL>
-<BR>[Calls]<UL><LI><a href="#[41e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_scan_on_timeout
-<LI><a href="#[41f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_scan_on_connected_evt
-<LI><a href="#[41c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_scan_on_adv_report
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> host.o(sdh_ble_observers1)
-</UL>
-<P><STRONG><a name="[116]"></a>nrf_ble_scan_start</STRONG> (Thumb, 80 bytes, Stack size 32 bytes, nrf_ble_scan.o(i.nrf_ble_scan_start))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = nrf_ble_scan_start
-</UL>
-<BR>[Calls]<UL><LI><a href="#[115]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_scan_stop
-<LI><a href="#[41d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;is_whitelist_used
-<LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
-</UL>
-<BR>[Called By]<UL><LI><a href="#[114]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Continuous_scan_start
-<LI><a href="#[255]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;scan_start
-<LI><a href="#[1d7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ST_scan_start
-</UL>
-
-<P><STRONG><a name="[115]"></a>nrf_ble_scan_stop</STRONG> (Thumb, 4 bytes, Stack size 0 bytes, nrf_ble_scan.o(i.nrf_ble_scan_stop))
-<BR><BR>[Called By]<UL><LI><a href="#[1d8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ST_scan_stop
-<LI><a href="#[114]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Continuous_scan_start
-<LI><a href="#[489]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_trigger_callback
-<LI><a href="#[57]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_connect_Process
-<LI><a href="#[69]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_ota_Process
-<LI><a href="#[116]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_scan_start
-<LI><a href="#[415]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_scan_connect_with_target
-</UL>
-
-<P><STRONG><a name="[2ad]"></a>nrf_dfu_svci_vector_table_set</STRONG> (Thumb, 52 bytes, Stack size 16 bytes, nrf_dfu_svci.o(i.nrf_dfu_svci_vector_table_set))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = nrf_dfu_svci_vector_table_set
-</UL>
-<BR>[Called By]<UL><LI><a href="#[2ac]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_dfu_buttonless_async_svci_init
-</UL>
-
-<P><STRONG><a name="[2ae]"></a>nrf_dfu_svci_vector_table_unset</STRONG> (Thumb, 18 bytes, Stack size 8 bytes, nrf_dfu_svci.o(i.nrf_dfu_svci_vector_table_unset))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = nrf_dfu_svci_vector_table_unset
-</UL>
-<BR>[Called By]<UL><LI><a href="#[2ac]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_dfu_buttonless_async_svci_init
-</UL>
-
-<P><STRONG><a name="[420]"></a>nrf_drv_clock_init</STRONG> (Thumb, 66 bytes, Stack size 8 bytes, nrf_drv_clock.o(i.nrf_drv_clock_init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 40<LI>Call Chain = nrf_drv_clock_init &rArr; nrfx_clock_enable &rArr; nrfx_power_clock_irq_init
-</UL>
-<BR>[Calls]<UL><LI><a href="#[421]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_clock_init
-<LI><a href="#[423]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_clock_enable
-<LI><a href="#[422]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_sdh_is_enabled
-<LI><a href="#[3db]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_wdt_started
-</UL>
-<BR>[Called By]<UL><LI><a href="#[ce]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;sd_state_evt_handler
-</UL>
-
-<P><STRONG><a name="[424]"></a>nrf_drv_clock_lfclk_release</STRONG> (Thumb, 42 bytes, Stack size 8 bytes, nrf_drv_clock.o(i.nrf_drv_clock_lfclk_release))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = nrf_drv_clock_lfclk_release &rArr; app_util_critical_region_enter &rArr; sd_nvic_critical_region_enter
-</UL>
-<BR>[Calls]<UL><LI><a href="#[282]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_util_critical_region_exit
-<LI><a href="#[280]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_util_critical_region_enter
-<LI><a href="#[3da]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lfclk_stop
-</UL>
-<BR>[Called By]<UL><LI><a href="#[ce]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;sd_state_evt_handler
-</UL>
-
-<P><STRONG><a name="[1cf]"></a>nrf_drv_spi_init</STRONG> (Thumb, 120 bytes, Stack size 48 bytes, nrf_drv_spi.o(i.nrf_drv_spi_init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 168<LI>Call Chain = nrf_drv_spi_init &rArr; nrfx_spim_init &rArr; nrfx_prs_acquire &rArr; app_util_critical_region_enter &rArr; sd_nvic_critical_region_enter
-</UL>
-<BR>[Calls]<UL><LI><a href="#[425]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_spim_init
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1ce]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI0_Init
-</UL>
-
-<P><STRONG><a name="[3b7]"></a>nrf_memobj_alloc</STRONG> (Thumb, 122 bytes, Stack size 40 bytes, nrf_memobj.o(i.nrf_memobj_alloc))
-<BR><BR>[Stack]<UL><LI>Max Depth = 128<LI>Call Chain = nrf_memobj_alloc &rArr; nrf_memobj_free &rArr; nrf_balloc_free &rArr; app_util_critical_region_enter &rArr; sd_nvic_critical_region_enter
-</UL>
-<BR>[Calls]<UL><LI><a href="#[40f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_memobj_free
-<LI><a href="#[3fc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_balloc_alloc
-</UL>
-<BR>[Called By]<UL><LI><a href="#[ba]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;gatts_hvx_alloc
-<LI><a href="#[b9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;gattc_write_alloc
-</UL>
-
-<P><STRONG><a name="[40f]"></a>nrf_memobj_free</STRONG> (Thumb, 64 bytes, Stack size 40 bytes, nrf_memobj.o(i.nrf_memobj_free))
-<BR><BR>[Stack]<UL><LI>Max Depth = 88<LI>Call Chain = nrf_memobj_free &rArr; nrf_balloc_free &rArr; app_util_critical_region_enter &rArr; sd_nvic_critical_region_enter
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3fe]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_balloc_free
-</UL>
-<BR>[Called By]<UL><LI><a href="#[3b7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_memobj_alloc
-<LI><a href="#[407]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;queues_purge
-<LI><a href="#[410]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;queue_process
-<LI><a href="#[2d1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_gq_item_add
-</UL>
-
-<P><STRONG><a name="[40a]"></a>nrf_memobj_pool_init</STRONG> (Thumb, 12 bytes, Stack size 8 bytes, nrf_memobj.o(i.nrf_memobj_pool_init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = nrf_memobj_pool_init &rArr; nrf_balloc_init
-</UL>
-<BR>[Calls]<UL><LI><a href="#[42b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_balloc_init
-</UL>
-<BR>[Called By]<UL><LI><a href="#[2cc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_gq_conn_handle_register
-</UL>
-
-<P><STRONG><a name="[42c]"></a>nrf_memobj_read</STRONG> (Thumb, 34 bytes, Stack size 32 bytes, nrf_memobj.o(i.nrf_memobj_read))
-<BR><BR>[Stack]<UL><LI>Max Depth = 112<LI>Call Chain = nrf_memobj_read &rArr; memobj_op
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3df]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;memobj_op
-</UL>
-<BR>[Called By]<UL><LI><a href="#[410]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;queue_process
-</UL>
-
-<P><STRONG><a name="[3b8]"></a>nrf_memobj_write</STRONG> (Thumb, 34 bytes, Stack size 32 bytes, nrf_memobj.o(i.nrf_memobj_write))
-<BR><BR>[Stack]<UL><LI>Max Depth = 112<LI>Call Chain = nrf_memobj_write &rArr; memobj_op
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3df]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;memobj_op
-</UL>
-<BR>[Called By]<UL><LI><a href="#[ba]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;gatts_hvx_alloc
-<LI><a href="#[b9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;gattc_write_alloc
-</UL>
-
-<P><STRONG><a name="[42d]"></a>nrf_pwr_mgmt_init</STRONG> (Thumb, 46 bytes, Stack size 8 bytes, nrf_pwr_mgmt.o(i.nrf_pwr_mgmt_init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = nrf_pwr_mgmt_init &rArr; nrf_section_iter_init
-</UL>
-<BR>[Calls]<UL><LI><a href="#[42e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_section_iter_init
-</UL>
-<BR>[Called By]<UL><LI><a href="#[3c6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;power_management_init
-</UL>
-
-<P><STRONG><a name="[42f]"></a>nrf_pwr_mgmt_run</STRONG> (Thumb, 104 bytes, Stack size 16 bytes, nrf_pwr_mgmt.o(i.nrf_pwr_mgmt_run))
-<BR><BR>[Stack]<UL><LI>Max Depth = 40<LI>Call Chain = nrf_pwr_mgmt_run &rArr; app_util_critical_region_enter &rArr; sd_nvic_critical_region_enter
-</UL>
-<BR>[Calls]<UL><LI><a href="#[282]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_util_critical_region_exit
-<LI><a href="#[280]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_util_critical_region_enter
-<LI><a href="#[422]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_sdh_is_enabled
-</UL>
-<BR>[Called By]<UL><LI><a href="#[208]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;rtc_sleep
-<LI><a href="#[484]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;waitForFlashReady
-</UL>
-
-<P><STRONG><a name="[26d]"></a>nrf_pwr_mgmt_shutdown</STRONG> (Thumb, 88 bytes, Stack size 16 bytes, nrf_pwr_mgmt.o(i.nrf_pwr_mgmt_shutdown))
-<BR><BR>[Stack]<UL><LI>Max Depth = 40<LI>Call Chain = nrf_pwr_mgmt_shutdown &rArr; nrf_atomic_u32_fetch_store
-</UL>
-<BR>[Calls]<UL><LI><a href="#[431]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;shutdown_process
-<LI><a href="#[430]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_mtx_unlock
-<LI><a href="#[3f9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_atomic_u32_fetch_store
-</UL>
-<BR>[Called By]<UL><LI><a href="#[6c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_ota_clear_flash
-<LI><a href="#[2af]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_dfu_buttonless_bootloader_start_finalize
-</UL>
-
-<P><STRONG><a name="[432]"></a>nrf_queue_generic_pop</STRONG> (Thumb, 156 bytes, Stack size 32 bytes, nrf_queue.o(i.nrf_queue_generic_pop))
-<BR><BR>[Stack]<UL><LI>Max Depth = 56<LI>Call Chain = nrf_queue_generic_pop &rArr; app_util_critical_region_enter &rArr; sd_nvic_critical_region_enter
-</UL>
-<BR>[Calls]<UL><LI><a href="#[282]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_util_critical_region_exit
-<LI><a href="#[280]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_util_critical_region_enter
-<LI><a href="#[40c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_queue_is_empty
-<LI><a href="#[433]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_queue_next_idx
-<LI><a href="#[127]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy
-</UL>
-<BR>[Called By]<UL><LI><a href="#[407]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;queues_purge
-<LI><a href="#[410]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;queue_process
-</UL>
-
-<P><STRONG><a name="[40c]"></a>nrf_queue_is_empty</STRONG> (Thumb, 22 bytes, Stack size 0 bytes, nrf_queue.o(i.nrf_queue_is_empty))
-<BR><BR>[Called By]<UL><LI><a href="#[432]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_queue_generic_pop
-<LI><a href="#[2d1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_gq_item_add
-</UL>
-
-<P><STRONG><a name="[434]"></a>nrf_queue_is_full</STRONG> (Thumb, 32 bytes, Stack size 16 bytes, nrf_queue.o(i.nrf_queue_is_full))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = nrf_queue_is_full
-</UL>
-<BR>[Calls]<UL><LI><a href="#[433]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_queue_next_idx
-</UL>
-<BR>[Called By]<UL><LI><a href="#[40e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_queue_push
-</UL>
-
-<P><STRONG><a name="[40e]"></a>nrf_queue_push</STRONG> (Thumb, 204 bytes, Stack size 32 bytes, nrf_queue.o(i.nrf_queue_push))
-<BR><BR>[Stack]<UL><LI>Max Depth = 56<LI>Call Chain = nrf_queue_push &rArr; app_util_critical_region_enter &rArr; sd_nvic_critical_region_enter
-</UL>
-<BR>[Calls]<UL><LI><a href="#[282]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_util_critical_region_exit
-<LI><a href="#[280]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_util_critical_region_enter
-<LI><a href="#[434]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_queue_is_full
-<LI><a href="#[435]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;queue_utilization_get
-<LI><a href="#[433]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_queue_next_idx
-<LI><a href="#[127]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy
-</UL>
-<BR>[Called By]<UL><LI><a href="#[c2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_gq_on_ble_evt
-<LI><a href="#[2d1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_gq_item_add
-</UL>
-
-<P><STRONG><a name="[436]"></a>nrf_sdh_ble_app_ram_start_get</STRONG> (Thumb, 18 bytes, Stack size 0 bytes, nrf_sdh_ble.o(i.nrf_sdh_ble_app_ram_start_get))
-<BR><BR>[Called By]<UL><LI><a href="#[2dd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_sdh_ble_default_cfg_set
-</UL>
-
-<P><STRONG><a name="[2dd]"></a>nrf_sdh_ble_default_cfg_set</STRONG> (Thumb, 188 bytes, Stack size 32 bytes, nrf_sdh_ble.o(i.nrf_sdh_ble_default_cfg_set))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = nrf_sdh_ble_default_cfg_set
-</UL>
-<BR>[Calls]<UL><LI><a href="#[436]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_sdh_ble_app_ram_start_get
-</UL>
-<BR>[Called By]<UL><LI><a href="#[2db]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_stack_init
-</UL>
-
-<P><STRONG><a name="[2de]"></a>nrf_sdh_ble_enable</STRONG> (Thumb, 32 bytes, Stack size 16 bytes, nrf_sdh_ble.o(i.nrf_sdh_ble_enable))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = nrf_sdh_ble_enable
-</UL>
-<BR>[Called By]<UL><LI><a href="#[2db]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_stack_init
-</UL>
-
-<P><STRONG><a name="[2dc]"></a>nrf_sdh_enable_request</STRONG> (Thumb, 112 bytes, Stack size 16 bytes, nrf_sdh.o(i.nrf_sdh_enable_request))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4848<LI>Call Chain = nrf_sdh_enable_request &rArr; softdevices_evt_irq_enable &rArr; app_error_handler &rArr; app_error_fault_handler &rArr; Flash_SaveLog &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[282]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_util_critical_region_exit
-<LI><a href="#[280]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_util_critical_region_enter
-<LI><a href="#[43a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;softdevices_evt_irq_enable
-<LI><a href="#[439]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;sdh_state_observer_notify
-<LI><a href="#[438]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;sdh_request_observer_notify
-</UL>
-<BR>[Called By]<UL><LI><a href="#[2db]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_stack_init
-</UL>
-
-<P><STRONG><a name="[1d9]"></a>nrf_sdh_evts_poll</STRONG> (Thumb, 44 bytes, Stack size 24 bytes, nrf_sdh.o(i.nrf_sdh_evts_poll))
-<BR><BR>[Stack]<UL><LI>Max Depth = 40<LI>Call Chain = nrf_sdh_evts_poll &rArr; nrf_section_iter_init
-</UL>
-<BR>[Calls]<UL><LI><a href="#[437]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_section_iter_next
-<LI><a href="#[42e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_section_iter_init
-<LI><a href="#[43b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_section_iter_get
-</UL>
-<BR>[Called By]<UL><LI><a href="#[25]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SWI2_EGU2_IRQHandler
-</UL>
-
-<P><STRONG><a name="[422]"></a>nrf_sdh_is_enabled</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, nrf_sdh.o(i.nrf_sdh_is_enabled))
-<BR><BR>[Called By]<UL><LI><a href="#[42f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_pwr_mgmt_run
-<LI><a href="#[420]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_drv_clock_init
-<LI><a href="#[431]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;shutdown_process
-</UL>
-
-<P><STRONG><a name="[42e]"></a>nrf_section_iter_init</STRONG> (Thumb, 20 bytes, Stack size 16 bytes, nrf_section_iter.o(i.nrf_section_iter_init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = nrf_section_iter_init
-</UL>
-<BR>[Calls]<UL><LI><a href="#[43c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_section_iter_item_set
-</UL>
-<BR>[Called By]<UL><LI><a href="#[42d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_pwr_mgmt_init
-<LI><a href="#[439]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;sdh_state_observer_notify
-<LI><a href="#[438]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;sdh_request_observer_notify
-<LI><a href="#[cd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_sdh_soc_evts_poll
-<LI><a href="#[cc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_sdh_ble_evts_poll
-<LI><a href="#[1d9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_sdh_evts_poll
-</UL>
-
-<P><STRONG><a name="[437]"></a>nrf_section_iter_next</STRONG> (Thumb, 46 bytes, Stack size 8 bytes, nrf_section_iter.o(i.nrf_section_iter_next))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = nrf_section_iter_next
-</UL>
-<BR>[Calls]<UL><LI><a href="#[43c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_section_iter_item_set
-</UL>
-<BR>[Called By]<UL><LI><a href="#[431]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;shutdown_process
-<LI><a href="#[439]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;sdh_state_observer_notify
-<LI><a href="#[438]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;sdh_request_observer_notify
-<LI><a href="#[cd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_sdh_soc_evts_poll
-<LI><a href="#[cc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_sdh_ble_evts_poll
-<LI><a href="#[1d9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_sdh_evts_poll
-</UL>
-
-<P><STRONG><a name="[480]"></a>nrf_sortlist_add</STRONG> (Thumb, 40 bytes, Stack size 16 bytes, nrf_sortlist.o(i.nrf_sortlist_add))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = nrf_sortlist_add
-</UL>
-<BR>[Called By]<UL><LI><a href="#[47b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;timer_req_process
-<LI><a href="#[464]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;timer_expire
-<LI><a href="#[47c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;rtc_update
-</UL>
-
-<P><STRONG><a name="[47f]"></a>nrf_sortlist_peek</STRONG> (Thumb, 8 bytes, Stack size 0 bytes, nrf_sortlist.o(i.nrf_sortlist_peek))
-<BR><BR>[Called By]<UL><LI><a href="#[47c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;rtc_update
-</UL>
-
-<P><STRONG><a name="[495]"></a>nrf_sortlist_pop</STRONG> (Thumb, 24 bytes, Stack size 0 bytes, nrf_sortlist.o(i.nrf_sortlist_pop))
-<BR><BR>[Called By]<UL><LI><a href="#[481]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;sortlist_pop
-</UL>
-
-<P><STRONG><a name="[49a]"></a>nrf_sortlist_remove</STRONG> (Thumb, 38 bytes, Stack size 8 bytes, nrf_sortlist.o(i.nrf_sortlist_remove))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = nrf_sortlist_remove
-</UL>
-<BR>[Called By]<UL><LI><a href="#[47b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;timer_req_process
-</UL>
-
-<P><STRONG><a name="[423]"></a>nrfx_clock_enable</STRONG> (Thumb, 16 bytes, Stack size 8 bytes, nrfx_clock.o(i.nrfx_clock_enable))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = nrfx_clock_enable &rArr; nrfx_power_clock_irq_init
-</UL>
-<BR>[Calls]<UL><LI><a href="#[43d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_power_clock_irq_init
-</UL>
-<BR>[Called By]<UL><LI><a href="#[420]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_drv_clock_init
-<LI><a href="#[ce]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;sd_state_evt_handler
-</UL>
-
-<P><STRONG><a name="[421]"></a>nrfx_clock_init</STRONG> (Thumb, 34 bytes, Stack size 0 bytes, nrfx_clock.o(i.nrfx_clock_init))
-<BR><BR>[Called By]<UL><LI><a href="#[420]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_drv_clock_init
-</UL>
-
-<P><STRONG><a name="[3dc]"></a>nrfx_clock_lfclk_stop</STRONG> (Thumb, 34 bytes, Stack size 8 bytes, nrfx_clock.o(i.nrfx_clock_lfclk_stop))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = nrfx_clock_lfclk_stop &rArr; nrf_clock_event_clear
-</UL>
-<BR>[Calls]<UL><LI><a href="#[43e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_clock_task_trigger
-<LI><a href="#[43f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_clock_lf_is_running
-<LI><a href="#[1a4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_clock_int_disable
-<LI><a href="#[1a3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_clock_event_clear
-</UL>
-<BR>[Called By]<UL><LI><a href="#[3da]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lfclk_stop
-</UL>
-
-<P><STRONG><a name="[441]"></a>nrfx_prs_acquire</STRONG> (Thumb, 78 bytes, Stack size 32 bytes, nrfx_prs.o(i.nrfx_prs_acquire))
-<BR><BR>[Stack]<UL><LI>Max Depth = 56<LI>Call Chain = nrfx_prs_acquire &rArr; app_util_critical_region_enter &rArr; sd_nvic_critical_region_enter
-</UL>
-<BR>[Calls]<UL><LI><a href="#[282]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_util_critical_region_exit
-<LI><a href="#[280]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_util_critical_region_enter
-<LI><a href="#[442]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;prs_box_get
-</UL>
-<BR>[Called By]<UL><LI><a href="#[425]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_spim_init
-</UL>
-
-<P><STRONG><a name="[443]"></a>nrfx_prs_release</STRONG> (Thumb, 22 bytes, Stack size 16 bytes, nrfx_prs.o(i.nrfx_prs_release))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = nrfx_prs_release
-</UL>
-<BR>[Calls]<UL><LI><a href="#[442]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;prs_box_get
-</UL>
-<BR>[Called By]<UL><LI><a href="#[427]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_spim_uninit
-</UL>
-
-<P><STRONG><a name="[1c1]"></a>nrfx_pwm_init</STRONG> (Thumb, 264 bytes, Stack size 32 bytes, nrfx_pwm.o(i.nrfx_pwm_init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 84<LI>Call Chain = nrfx_pwm_init &rArr; configure_pins
-</UL>
-<BR>[Calls]<UL><LI><a href="#[447]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_get_irq_number
-<LI><a href="#[445]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_pwm_shorts_set
-<LI><a href="#[446]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_pwm_int_set
-<LI><a href="#[3d6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_pwm_event_clear
-<LI><a href="#[444]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;configure_pins
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1bd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Pwm_init
-</UL>
-
-<P><STRONG><a name="[1da]"></a>nrfx_pwm_simple_playback</STRONG> (Thumb, 128 bytes, Stack size 40 bytes, nrfx_pwm.o(i.nrfx_pwm_simple_playback))
-<BR><BR>[Stack]<UL><LI>Max Depth = 72<LI>Call Chain = nrfx_pwm_simple_playback &rArr; start_playback &rArr; nrf_pwm_event_clear
-</UL>
-<BR>[Calls]<UL><LI><a href="#[44a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;start_playback
-<LI><a href="#[445]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_pwm_shorts_set
-<LI><a href="#[448]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_pwm_sequence_set
-<LI><a href="#[449]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_pwm_loop_set
-</UL>
-<BR>[Called By]<UL><LI><a href="#[17f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SetSimplePwmPlayBack
-</UL>
-
-<P><STRONG><a name="[1c0]"></a>nrfx_pwm_uninit</STRONG> (Thumb, 94 bytes, Stack size 16 bytes, nrfx_pwm.o(i.nrfx_pwm_uninit))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = nrfx_pwm_uninit
-</UL>
-<BR>[Calls]<UL><LI><a href="#[447]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_get_irq_number
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1bf]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Pwm_UnInitialize
-</UL>
-
-<P><STRONG><a name="[1ea]"></a>nrfx_rtc_cc_set</STRONG> (Thumb, 170 bytes, Stack size 40 bytes, nrfx_rtc.o(i.nrfx_rtc_cc_set))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = nrfx_rtc_cc_set &rArr; nrf_rtc_event_clear
-</UL>
-<BR>[Calls]<UL><LI><a href="#[44c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_rtc_int_enable
-<LI><a href="#[3d3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_rtc_int_disable
-<LI><a href="#[44d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_rtc_event_enable
-<LI><a href="#[3d2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_rtc_event_disable
-<LI><a href="#[3d4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_rtc_event_clear
-<LI><a href="#[44b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_rtc_cc_set
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1e8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;TIME_Init
-<LI><a href="#[208]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;rtc_sleep
-<LI><a href="#[4a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;rtc_tick_handler
-</UL>
-
-<P><STRONG><a name="[1ec]"></a>nrfx_rtc_enable</STRONG> (Thumb, 26 bytes, Stack size 8 bytes, nrfx_rtc.o(i.nrfx_rtc_enable))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = nrfx_rtc_enable
-</UL>
-<BR>[Calls]<UL><LI><a href="#[44e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_rtc_task_trigger
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1e8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;TIME_Init
-</UL>
-
-<P><STRONG><a name="[1e9]"></a>nrfx_rtc_init</STRONG> (Thumb, 190 bytes, Stack size 28 bytes, nrfx_rtc.o(i.nrfx_rtc_init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 28<LI>Call Chain = nrfx_rtc_init
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1e8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;TIME_Init
-</UL>
-
-<P><STRONG><a name="[f1]"></a>nrfx_saadc_buffer_convert</STRONG> (Thumb, 186 bytes, Stack size 16 bytes, nrfx_saadc.o(i.nrfx_saadc_buffer_convert))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = nrfx_saadc_buffer_convert &rArr; nrf_saadc_event_clear
-</UL>
-<BR>[Calls]<UL><LI><a href="#[1c6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_saadc_task_trigger
-<LI><a href="#[450]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_saadc_int_enable
-<LI><a href="#[44f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_saadc_int_disable
-<LI><a href="#[1c5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_saadc_event_clear
-<LI><a href="#[1c4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_saadc_event_check
-<LI><a href="#[1c7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_saadc_buffer_init
-</UL>
-<BR>[Called By]<UL><LI><a href="#[37]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;adcCallbackFunc
-<LI><a href="#[ee]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ADC_Init
-</UL>
-
-<P><STRONG><a name="[f0]"></a>nrfx_saadc_channel_init</STRONG> (Thumb, 208 bytes, Stack size 16 bytes, nrfx_saadc.o(i.nrfx_saadc_channel_init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = nrfx_saadc_channel_init
-</UL>
-<BR>[Calls]<UL><LI><a href="#[451]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_saadc_channel_input_set
-</UL>
-<BR>[Called By]<UL><LI><a href="#[f6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ADC_SetPinChannel
-<LI><a href="#[ee]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ADC_Init
-</UL>
-
-<P><STRONG><a name="[f3]"></a>nrfx_saadc_channel_uninit</STRONG> (Thumb, 84 bytes, Stack size 16 bytes, nrfx_saadc.o(i.nrfx_saadc_channel_uninit))
-<BR><BR>[Stack]<UL><LI>Max Depth = 40<LI>Call Chain = nrfx_saadc_channel_uninit &rArr; nrfx_saadc_limits_set
-</UL>
-<BR>[Calls]<UL><LI><a href="#[451]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_saadc_channel_input_set
-<LI><a href="#[452]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_saadc_limits_set
-</UL>
-<BR>[Called By]<UL><LI><a href="#[f2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ADC_RemovePinChannel
-<LI><a href="#[ec]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_saadc_uninit
-</UL>
-
-<P><STRONG><a name="[ef]"></a>nrfx_saadc_init</STRONG> (Thumb, 232 bytes, Stack size 24 bytes, nrfx_saadc.o(i.nrfx_saadc_init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = nrfx_saadc_init &rArr; nrf_saadc_event_clear
-</UL>
-<BR>[Calls]<UL><LI><a href="#[450]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_saadc_int_enable
-<LI><a href="#[44f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_saadc_int_disable
-<LI><a href="#[1c5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_saadc_event_clear
-</UL>
-<BR>[Called By]<UL><LI><a href="#[ee]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ADC_Init
-</UL>
-
-<P><STRONG><a name="[452]"></a>nrfx_saadc_limits_set</STRONG> (Thumb, 168 bytes, Stack size 24 bytes, nrfx_saadc.o(i.nrfx_saadc_limits_set))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = nrfx_saadc_limits_set
-</UL>
-<BR>[Calls]<UL><LI><a href="#[453]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_saadc_limit_int_get
-<LI><a href="#[450]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_saadc_int_enable
-<LI><a href="#[44f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_saadc_int_disable
-</UL>
-<BR>[Called By]<UL><LI><a href="#[f3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_saadc_channel_uninit
-</UL>
-
-<P><STRONG><a name="[f5]"></a>nrfx_saadc_sample</STRONG> (Thumb, 42 bytes, Stack size 8 bytes, nrfx_saadc.o(i.nrfx_saadc_sample))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = nrfx_saadc_sample
-</UL>
-<BR>[Calls]<UL><LI><a href="#[1c6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_saadc_task_trigger
-</UL>
-<BR>[Called By]<UL><LI><a href="#[f4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ADC_Sample
-</UL>
-
-<P><STRONG><a name="[ec]"></a>nrfx_saadc_uninit</STRONG> (Thumb, 170 bytes, Stack size 16 bytes, nrfx_saadc.o(i.nrfx_saadc_uninit))
-<BR><BR>[Stack]<UL><LI>Max Depth = 56<LI>Call Chain = nrfx_saadc_uninit &rArr; nrfx_saadc_channel_uninit &rArr; nrfx_saadc_limits_set
-</UL>
-<BR>[Calls]<UL><LI><a href="#[f3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_saadc_channel_uninit
-<LI><a href="#[454]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_coredep_delay_us
-<LI><a href="#[1c6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_saadc_task_trigger
-<LI><a href="#[44f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_saadc_int_disable
-<LI><a href="#[1c4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_saadc_event_check
-</UL>
-<BR>[Called By]<UL><LI><a href="#[eb]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ADC_Disable
-</UL>
-
-<P><STRONG><a name="[425]"></a>nrfx_spim_init</STRONG> (Thumb, 444 bytes, Stack size 64 bytes, nrfx_spim.o(i.nrfx_spim_init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 120<LI>Call Chain = nrfx_spim_init &rArr; nrfx_prs_acquire &rArr; app_util_critical_region_enter &rArr; sd_nvic_critical_region_enter
-</UL>
-<BR>[Calls]<UL><LI><a href="#[441]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_prs_acquire
-<LI><a href="#[455]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_get_irq_number
-<LI><a href="#[398]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_set
-<LI><a href="#[397]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_clear
-<LI><a href="#[429]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_cfg_output
-<LI><a href="#[42a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_cfg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1cf]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_drv_spi_init
-</UL>
-
-<P><STRONG><a name="[427]"></a>nrfx_spim_uninit</STRONG> (Thumb, 204 bytes, Stack size 32 bytes, nrfx_spim.o(i.nrfx_spim_uninit))
-<BR><BR>[Stack]<UL><LI>Max Depth = 52<LI>Call Chain = nrfx_spim_uninit &rArr; nrf_gpio_cfg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[443]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_prs_release
-<LI><a href="#[455]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_get_irq_number
-<LI><a href="#[457]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_spim_task_trigger
-<LI><a href="#[456]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_spim_int_disable
-<LI><a href="#[3d7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_spim_event_check
-<LI><a href="#[42a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_cfg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1cd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_drv_spi_uninit
-</UL>
-
-<P><STRONG><a name="[426]"></a>nrfx_spim_xfer</STRONG> (Thumb, 104 bytes, Stack size 24 bytes, nrfx_spim.o(i.nrfx_spim_xfer))
-<BR><BR>[Stack]<UL><LI>Max Depth = 64<LI>Call Chain = nrfx_spim_xfer &rArr; spim_xfer &rArr; nrf_spim_event_clear
-</UL>
-<BR>[Calls]<UL><LI><a href="#[458]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;spim_xfer
-<LI><a href="#[398]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_set
-<LI><a href="#[397]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_clear
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1d5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_drv_spi_transfer
-</UL>
-
-<P><STRONG><a name="[459]"></a>nrfx_wdt_channel_alloc</STRONG> (Thumb, 74 bytes, Stack size 16 bytes, nrfx_wdt.o(i.nrfx_wdt_channel_alloc))
-<BR><BR>[Stack]<UL><LI>Max Depth = 40<LI>Call Chain = nrfx_wdt_channel_alloc &rArr; app_util_critical_region_enter &rArr; sd_nvic_critical_region_enter
-</UL>
-<BR>[Calls]<UL><LI><a href="#[282]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_util_critical_region_exit
-<LI><a href="#[280]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_util_critical_region_enter
-</UL>
-<BR>[Called By]<UL><LI><a href="#[204]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;watchdog_init
-</UL>
-
-<P><STRONG><a name="[395]"></a>nrfx_wdt_channel_feed</STRONG> (Thumb, 12 bytes, Stack size 8 bytes, nrfx_wdt.o(i.nrfx_wdt_channel_feed))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = nrfx_wdt_channel_feed
-</UL>
-<BR>[Calls]<UL><LI><a href="#[45a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_wdt_reload_request_set
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1b0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;feed_watchdog
-</UL>
-
-<P><STRONG><a name="[49e]"></a>nrfx_wdt_enable</STRONG> (Thumb, 24 bytes, Stack size 0 bytes, nrfx_wdt.o(i.nrfx_wdt_enable))
-<BR><BR>[Called By]<UL><LI><a href="#[204]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;watchdog_init
-</UL>
-
-<P><STRONG><a name="[45b]"></a>nrfx_wdt_init</STRONG> (Thumb, 178 bytes, Stack size 32 bytes, nrfx_wdt.o(i.nrfx_wdt_init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 72<LI>Call Chain = nrfx_wdt_init &rArr; __aeabi_uldivmod
-</UL>
-<BR>[Calls]<UL><LI><a href="#[d4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_uldivmod
-</UL>
-<BR>[Called By]<UL><LI><a href="#[204]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;watchdog_init
-</UL>
-
-<P><STRONG><a name="[2bf]"></a>on_ble_peripheral_evt</STRONG> (Thumb, 540 bytes, Stack size 32 bytes, slave.o(i.on_ble_peripheral_evt))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4872<LI>Call Chain = on_ble_peripheral_evt &rArr; multi_qwr_conn_handle_assign &rArr; app_error_handler &rArr; app_error_fault_handler &rArr; Flash_SaveLog &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[d1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_error_handler
-<LI><a href="#[45f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_slave_dicconn_evt_pcs
-<LI><a href="#[45e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_slave_connected_evt_pcs
-<LI><a href="#[3ee]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;multi_qwr_conn_handle_assign
-</UL>
-<BR>[Called By]<UL><LI><a href="#[c8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_evt_handler
-</UL>
-
-<P><STRONG><a name="[46a]"></a>one_byte_receive_init</STRONG> (Thumb, 98 bytes, Stack size 24 bytes, app_one_wire.o(i.one_byte_receive_init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = one_byte_receive_init &rArr; Process_Start
-</UL>
-<BR>[Calls]<UL><LI><a href="#[fd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_Start
-<LI><a href="#[106]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_SetHoldOn
-<LI><a href="#[198]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;TIME_Regist
-<LI><a href="#[46e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_read
-<LI><a href="#[46d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_clear
-<LI><a href="#[46c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_cfg_watcher
-<LI><a href="#[46b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_cfg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[3c0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;open_one_shel
-</UL>
-
-<P><STRONG><a name="[a6]"></a>one_byte_receive_pcs</STRONG> (Thumb, 920 bytes, Stack size 48 bytes, app_one_wire.o(i.one_byte_receive_pcs))
-<BR><BR>[Stack]<UL><LI>Max Depth = 136<LI>Call Chain = one_byte_receive_pcs &rArr; __aeabi_dadd &rArr; _double_epilogue &rArr; _double_round
-</UL>
-<BR>[Calls]<UL><LI><a href="#[da]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_dadd
-<LI><a href="#[e3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_ui2d
-<LI><a href="#[de]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_dsub
-<LI><a href="#[e0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_dmul
-<LI><a href="#[e4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_d2iz
-<LI><a href="#[113]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_cdrcmple
-<LI><a href="#[46f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_cdcmple
-<LI><a href="#[46e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_read
-</UL>
-<BR>[Address Reference Count : 2]<UL><LI> app_one_wire.o(i.one_byte_receive_init)
-<LI> app_one_wire.o(i.one_byte_receive_uninit)
-</UL>
-<P><STRONG><a name="[470]"></a>one_byte_receive_uninit</STRONG> (Thumb, 16 bytes, Stack size 8 bytes, app_one_wire.o(i.one_byte_receive_uninit))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = one_byte_receive_uninit &rArr; Process_Stop
-</UL>
-<BR>[Calls]<UL><LI><a href="#[265]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_Stop
-<LI><a href="#[2f2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;TIME_UnRegist
-</UL>
-<BR>[Called By]<UL><LI><a href="#[a8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;wait_times
-</UL>
-
-<P><STRONG><a name="[3c0]"></a>open_one_shel</STRONG> (Thumb, 48 bytes, Stack size 8 bytes, hal_charge.o(i.open_one_shel))
-<BR><BR>[Stack]<UL><LI>Max Depth = 56<LI>Call Chain = open_one_shel &rArr; one_byte_receive_init &rArr; Process_Start
-</UL>
-<BR>[Calls]<UL><LI><a href="#[fd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_Start
-<LI><a href="#[106]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_SetHoldOn
-<LI><a href="#[46a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;one_byte_receive_init
-</UL>
-<BR>[Called By]<UL><LI><a href="#[9a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_charge_Process
-</UL>
-
-<P><STRONG><a name="[137]"></a>pm_add</STRONG> (Thumb, 138 bytes, Stack size 288 bytes, hal_minifds.o(i.pm_add))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4528<LI>Call Chain = pm_add &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3e8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;minfds_record_find_mem
-<LI><a href="#[3e4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;minfds_record_add
-<LI><a href="#[127]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy
-</UL>
-<BR>[Called By]<UL><LI><a href="#[131]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_Initialize
-</UL>
-
-<P><STRONG><a name="[138]"></a>pm_delete</STRONG> (Thumb, 76 bytes, Stack size 280 bytes, hal_minifds.o(i.pm_delete))
-<BR><BR>[Stack]<UL><LI>Max Depth = 324<LI>Call Chain = pm_delete &rArr; minfds_record_find_mem &rArr; memcmp
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3e8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;minfds_record_find_mem
-<LI><a href="#[3e6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;minfds_record_delete
-<LI><a href="#[127]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy
-</UL>
-<BR>[Called By]<UL><LI><a href="#[131]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_Initialize
-</UL>
-
-<P><STRONG><a name="[136]"></a>pm_find</STRONG> (Thumb, 124 bytes, Stack size 296 bytes, hal_minifds.o(i.pm_find))
-<BR><BR>[Stack]<UL><LI>Max Depth = 340<LI>Call Chain = pm_find &rArr; minfds_record_find_mem &rArr; memcmp
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3e8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;minfds_record_find_mem
-<LI><a href="#[3e7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;minfds_record_find
-<LI><a href="#[127]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy
-</UL>
-<BR>[Called By]<UL><LI><a href="#[131]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_Initialize
-<LI><a href="#[13c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_SaveStep
-</UL>
-
-<P><STRONG><a name="[135]"></a>pm_get_length</STRONG> (Thumb, 92 bytes, Stack size 288 bytes, hal_minifds.o(i.pm_get_length))
-<BR><BR>[Stack]<UL><LI>Max Depth = 344<LI>Call Chain = pm_get_length &rArr; minfds_record_get_length &rArr; get_record_hendaddr
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3e9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;minfds_record_get_length
-<LI><a href="#[3e8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;minfds_record_find_mem
-<LI><a href="#[127]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy
-</UL>
-<BR>[Called By]<UL><LI><a href="#[131]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_Initialize
-<LI><a href="#[13c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_SaveStep
-</UL>
-
-<P><STRONG><a name="[13a]"></a>pm_update</STRONG> (Thumb, 114 bytes, Stack size 288 bytes, hal_minifds.o(i.pm_update))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4560<LI>Call Chain = pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3e3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;printctb
-<LI><a href="#[3ea]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;minfds_record_update
-<LI><a href="#[3e8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;minfds_record_find_mem
-<LI><a href="#[127]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy
-</UL>
-<BR>[Called By]<UL><LI><a href="#[139]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_SaveInfomation
-</UL>
-
-<P><STRONG><a name="[497]"></a>pos_jump_detect</STRONG> (Thumb, 308 bytes, Stack size 12 bytes, press_down_detect.o(i.pos_jump_detect))
-<BR><BR>[Stack]<UL><LI>Max Depth = 12<LI>Call Chain = pos_jump_detect
-</UL>
-<BR>[Called By]<UL><LI><a href="#[3ce]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;special_motion
-</UL>
-
-<P><STRONG><a name="[3c6]"></a>power_management_init</STRONG> (Thumb, 32 bytes, Stack size 16 bytes, host.o(i.power_management_init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4832<LI>Call Chain = power_management_init &rArr; app_error_handler &rArr; app_error_fault_handler &rArr; Flash_SaveLog &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[d1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_error_handler
-<LI><a href="#[42d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_pwr_mgmt_init
-</UL>
-<BR>[Called By]<UL><LI><a href="#[492]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;slave_init
-<LI><a href="#[3c4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;host_init
-</UL>
-
-<P><STRONG><a name="[472]"></a>press_down_detect_new</STRONG> (Thumb, 422 bytes, Stack size 56 bytes, press_down_detect.o(i.press_down_detect_new))
-<BR><BR>[Stack]<UL><LI>Max Depth = 112<LI>Call Chain = press_down_detect_new &rArr; dual_foot_detect_up_trend
-</UL>
-<BR>[Calls]<UL><LI><a href="#[473]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;dual_foot_detect_up_trend
-<LI><a href="#[474]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;avoid_down_during_change_road_by_acc
-<LI><a href="#[127]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy
-</UL>
-<BR>[Called By]<UL><LI><a href="#[3ce]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;special_motion
-</UL>
-
-<P><STRONG><a name="[475]"></a>press_jump_detect</STRONG> (Thumb, 556 bytes, Stack size 104 bytes, press_down_detect.o(i.press_jump_detect))
-<BR><BR>[Stack]<UL><LI>Max Depth = 124<LI>Call Chain = press_jump_detect &rArr; max_min_window
-</UL>
-<BR>[Calls]<UL><LI><a href="#[476]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;max_min_window
-<LI><a href="#[fb]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy4
-</UL>
-<BR>[Called By]<UL><LI><a href="#[3ce]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;special_motion
-</UL>
-
-<P><STRONG><a name="[3e5]"></a>print_record</STRONG> (Thumb, 16 bytes, Stack size 0 bytes, hal_minifds.o(i.print_record))
-<BR><BR>[Called By]<UL><LI><a href="#[3e4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;minfds_record_add
-</UL>
-
-<P><STRONG><a name="[3e3]"></a>printctb</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, hal_minifds.o(i.printctb))
-<BR><BR>[Called By]<UL><LI><a href="#[13a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;pm_update
-<LI><a href="#[134]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;minfds_init
-<LI><a href="#[3e4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;minfds_record_add
-<LI><a href="#[3e2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;minfds_gc
-</UL>
-
-<P><STRONG><a name="[163]"></a>process_motion</STRONG> (Thumb, 348 bytes, Stack size 56 bytes, process_result.o(i.process_motion))
-<BR><BR>[Stack]<UL><LI>Max Depth = 440<LI>Call Chain = process_motion &rArr; footPDR &rArr; Initialize &rArr; init_attitude_matrix &rArr; __hardfp_sin &rArr; __ieee754_rem_pio2 &rArr; __aeabi_dadd &rArr; _double_epilogue &rArr; _double_round
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3a9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;footPDR
-<LI><a href="#[304]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;detect_zero_vel
-<LI><a href="#[477]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;foot_data_to_package
-</UL>
-<BR>[Called By]<UL><LI><a href="#[162]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IMU_Process_motion_queue
-</UL>
-
-<P><STRONG><a name="[168]"></a>queue_in</STRONG> (Thumb, 64 bytes, Stack size 12 bytes, queue.o(i.queue_in))
-<BR><BR>[Stack]<UL><LI>Max Depth = 12<LI>Call Chain = queue_in
-</UL>
-<BR>[Called By]<UL><LI><a href="#[162]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IMU_Process_motion_queue
-<LI><a href="#[16c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IMU_Rec_data
-</UL>
-
-<P><STRONG><a name="[16e]"></a>queue_out</STRONG> (Thumb, 62 bytes, Stack size 12 bytes, queue.o(i.queue_out))
-<BR><BR>[Stack]<UL><LI>Max Depth = 12<LI>Call Chain = queue_out
-</UL>
-<BR>[Called By]<UL><LI><a href="#[161]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IMU_dtalige
-</UL>
-
-<P><STRONG><a name="[16d]"></a>queue_reset</STRONG> (Thumb, 10 bytes, Stack size 0 bytes, queue.o(i.queue_reset))
-<BR><BR>[Called By]<UL><LI><a href="#[161]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IMU_dtalige
-</UL>
-
-<P><STRONG><a name="[3be]"></a>ringframe_in</STRONG> (Thumb, 96 bytes, Stack size 16 bytes, ringframe.o(i.ringframe_in))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = ringframe_in
-</UL>
-<BR>[Called By]<UL><LI><a href="#[98]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_battery_Process
-</UL>
-
-<P><STRONG><a name="[3bf]"></a>ringframe_peek</STRONG> (Thumb, 70 bytes, Stack size 16 bytes, ringframe.o(i.ringframe_peek))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = ringframe_peek
-</UL>
-<BR>[Called By]<UL><LI><a href="#[98]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_battery_Process
-</UL>
-
-<P><STRONG><a name="[3bd]"></a>ringframe_throw</STRONG> (Thumb, 58 bytes, Stack size 0 bytes, ringframe.o(i.ringframe_throw))
-<BR><BR>[Called By]<UL><LI><a href="#[98]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_battery_Process
-</UL>
-
-<P><STRONG><a name="[208]"></a>rtc_sleep</STRONG> (Thumb, 308 bytes, Stack size 56 bytes, bsp_time.o(i.rtc_sleep))
-<BR><BR>[Stack]<UL><LI>Max Depth = 112<LI>Call Chain = rtc_sleep &rArr; __aeabi_ui2d &rArr; _double_epilogue &rArr; _double_round
-</UL>
-<BR>[Calls]<UL><LI><a href="#[fd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_Start
-<LI><a href="#[e3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_ui2d
-<LI><a href="#[e1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_ddiv
-<LI><a href="#[e5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_d2uiz
-<LI><a href="#[47e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_rtc_counter_get
-<LI><a href="#[1eb]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_rtc_counter_clear
-<LI><a href="#[1ea]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_rtc_cc_set
-<LI><a href="#[42f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_pwr_mgmt_run
-</UL>
-<BR>[Called By]<UL><LI><a href="#[205]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;USR_Process
-</UL>
-
-<P><STRONG><a name="[255]"></a>scan_start</STRONG> (Thumb, 44 bytes, Stack size 16 bytes, host.o(i.scan_start))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4832<LI>Call Chain = scan_start &rArr; app_error_handler &rArr; app_error_fault_handler &rArr; Flash_SaveLog &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[d1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_error_handler
-<LI><a href="#[116]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_scan_start
-</UL>
-<BR>[Called By]<UL><LI><a href="#[5e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_data_transfer_Process
-<LI><a href="#[57]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_connect_Process
-<LI><a href="#[a9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;scan_evt_handler
-</UL>
-
-<P><STRONG><a name="[4]"></a>sdflash_page_erase</STRONG> (Thumb, 102 bytes, Stack size 56 bytes, bsp_flash.o(i.sdflash_page_erase))
-<BR><BR>[Stack]<UL><LI>Max Depth = 736<LI>Call Chain = sdflash_page_erase &rArr; Except_TxError &rArr; BLE_Client_Send &rArr; send_bytes_client &rArr; ble_nus_data_send &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[124]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Except_TxError
-<LI><a href="#[484]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;waitForFlashReady
-<LI><a href="#[12b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__2sprintf
-<LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
-</UL>
-<BR>[Called By]<UL><LI><a href="#[132]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_SaveBackup
-<LI><a href="#[12e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_DeleteAllStep
-<LI><a href="#[12d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_DeleteAllInfor
-<LI><a href="#[12c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_DeleteAllBackup
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> app_flash.o(.data)
-</UL>
-<P><STRONG><a name="[3]"></a>sdflash_write</STRONG> (Thumb, 116 bytes, Stack size 64 bytes, bsp_flash.o(i.sdflash_write))
-<BR><BR>[Stack]<UL><LI>Max Depth = 744<LI>Call Chain = sdflash_write &rArr; Except_TxError &rArr; BLE_Client_Send &rArr; send_bytes_client &rArr; ble_nus_data_send &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[124]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Except_TxError
-<LI><a href="#[484]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;waitForFlashReady
-<LI><a href="#[12b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__2sprintf
-<LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
-</UL>
-<BR>[Called By]<UL><LI><a href="#[13c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_SaveStep
-<LI><a href="#[132]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_SaveBackup
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> app_flash.o(.data)
-</UL>
-<P><STRONG><a name="[1a8]"></a>selfcheck_trigger_Init</STRONG> (Thumb, 20 bytes, Stack size 8 bytes, selfcheck.o(i.selfcheck_trigger_Init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = selfcheck_trigger_Init &rArr; Process_Start
-</UL>
-<BR>[Calls]<UL><LI><a href="#[fd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_Start
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1a5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;PRE_Init
-</UL>
-
-<P><STRONG><a name="[489]"></a>selfcheck_trigger_callback</STRONG> (Thumb, 444 bytes, Stack size 32 bytes, selfcheck.o(i.selfcheck_trigger_callback))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4872<LI>Call Chain = selfcheck_trigger_callback &rArr; host_set_scan_name &rArr; app_error_handler &rArr; app_error_fault_handler &rArr; Flash_SaveLog &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[1b0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;feed_watchdog
-<LI><a href="#[1ef]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_Init
-<LI><a href="#[104]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;TIME_GetTicks
-<LI><a href="#[fd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_Start
-<LI><a href="#[106]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_SetHoldOn
-<LI><a href="#[1ba]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_All_Stop
-<LI><a href="#[115]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_scan_stop
-<LI><a href="#[25c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;host_set_scan_name
-<LI><a href="#[23c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;host_isconnect
-<LI><a href="#[256]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;host_disconnect
-<LI><a href="#[48c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_adc_sample_update_notify_register
-<LI><a href="#[37d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qmc6310_selfcheck_mag
-<LI><a href="#[37b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qmc6310_power_off
-<LI><a href="#[36d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qma_set_acc_odr
-<LI><a href="#[363]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qma_Init
-<LI><a href="#[336]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_selfcheck_mag
-<LI><a href="#[321]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_power_off
-<LI><a href="#[262]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_register_data_notify_callback
-<LI><a href="#[261]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_Resume_config_param
-<LI><a href="#[270]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;advdata_report_Evt_Regist
-<LI><a href="#[25f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Mahony_Init
-<LI><a href="#[114]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Continuous_scan_start
-<LI><a href="#[f6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ADC_SetPinChannel
-<LI><a href="#[485]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_write
-<LI><a href="#[48b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_cfg
-<LI><a href="#[48a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_delay_ms
-<LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
-</UL>
-<BR>[Called By]<UL><LI><a href="#[ae]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_trigger_Init_Porcess
-<LI><a href="#[a8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;wait_times
-</UL>
-
-<P><STRONG><a name="[2bd]"></a>selfcheck_trigger_set_order</STRONG> (Thumb, 28 bytes, Stack size 8 bytes, selfcheck.o(i.selfcheck_trigger_set_order))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = selfcheck_trigger_set_order
-</UL>
-<BR>[Calls]<UL><LI><a href="#[1af]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_charge_Getstate
-</UL>
-<BR>[Called By]<UL><LI><a href="#[c8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_evt_handler
-</UL>
-
-<P><STRONG><a name="[103]"></a>send_bytes_client</STRONG> (Thumb, 40 bytes, Stack size 24 bytes, slave.o(i.send_bytes_client))
-<BR><BR>[Stack]<UL><LI>Max Depth = 120<LI>Call Chain = send_bytes_client &rArr; ble_nus_data_send &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[2d3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_nus_data_send
-</UL>
-<BR>[Called By]<UL><LI><a href="#[19a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Mahony_send_ANO
-<LI><a href="#[102]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Client_Send
-<LI><a href="#[98]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_battery_Process
-</UL>
-
-<P><STRONG><a name="[10e]"></a>send_bytes_server</STRONG> (Thumb, 42 bytes, Stack size 16 bytes, host.o(i.send_bytes_server))
-<BR><BR>[Stack]<UL><LI>Max Depth = 280<LI>Call Chain = send_bytes_server &rArr; ble_nus_c_string_send &rArr; nrf_ble_gq_item_add &rArr; queue_process &rArr; nrf_memobj_read &rArr; memobj_op
-</UL>
-<BR>[Calls]<UL><LI><a href="#[2d0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_nus_c_string_send
-</UL>
-<BR>[Called By]<UL><LI><a href="#[10d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Host_Send
-</UL>
-
-<P><STRONG><a name="[16b]"></a>send_protocol</STRONG> (Thumb, 28 bytes, Stack size 24 bytes, app_data_transfer.o(i.send_protocol))
-<BR><BR>[Stack]<UL><LI>Max Depth = 456<LI>Call Chain = send_protocol &rArr; BLE_Client_Tx_Send &rArr; BLE_Client_Send &rArr; send_bytes_client &rArr; ble_nus_data_send &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[107]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Client_Tx_Send
-</UL>
-<BR>[Called By]<UL><LI><a href="#[162]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IMU_Process_motion_queue
-<LI><a href="#[161]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IMU_dtalige
-</UL>
-
-<P><STRONG><a name="[309]"></a>setTouchFloorStatus</STRONG> (Thumb, 132 bytes, Stack size 24 bytes, detect_zero_vel.o(i.setTouchFloorStatus))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = setTouchFloorStatus
-</UL>
-<BR>[Called By]<UL><LI><a href="#[304]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;detect_zero_vel
-</UL>
-
-<P><STRONG><a name="[308]"></a>setZeroStatus</STRONG> (Thumb, 28 bytes, Stack size 0 bytes, detect_zero_vel.o(i.setZeroStatus))
-<BR><BR>[Called By]<UL><LI><a href="#[304]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;detect_zero_vel
-</UL>
-
-<P><STRONG><a name="[267]"></a>set_pdr_status</STRONG> (Thumb, 8 bytes, Stack size 0 bytes, footpdr.o(i.set_pdr_status))
-<BR><BR>[Called By]<UL><LI><a href="#[62]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_game_Process
-</UL>
-
-<P><STRONG><a name="[25e]"></a>slave_adv_init</STRONG> (Thumb, 16 bytes, Stack size 8 bytes, slave.o(i.slave_adv_init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 5032<LI>Call Chain = slave_adv_init &rArr; advertising_init &rArr; app_error_handler &rArr; app_error_fault_handler &rArr; Flash_SaveLog &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3b2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;gap_params_init
-<LI><a href="#[2fc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;conn_params_init
-<LI><a href="#[231]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;advertising_init
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1f4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_detect_Init
-<LI><a href="#[69]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_ota_Process
-<LI><a href="#[72]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_Host_BLE_PAIR
-</UL>
-
-<P><STRONG><a name="[23e]"></a>slave_disconnect</STRONG> (Thumb, 16 bytes, Stack size 0 bytes, slave.o(i.slave_disconnect))
-<BR><BR>[Called By]<UL><LI><a href="#[1f4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_detect_Init
-<LI><a href="#[50]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_Authen_Process
-<LI><a href="#[69]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_ota_Process
-</UL>
-
-<P><STRONG><a name="[492]"></a>slave_init</STRONG> (Thumb, 76 bytes, Stack size 8 bytes, slave.o(i.slave_init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 5032<LI>Call Chain = slave_init &rArr; advertising_init &rArr; app_error_handler &rArr; app_error_fault_handler &rArr; Flash_SaveLog &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[234]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;advertising_start
-<LI><a href="#[3c5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;timer_init
-<LI><a href="#[3c6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;power_management_init
-<LI><a href="#[3b3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;gatt_init
-<LI><a href="#[2db]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_stack_init
-<LI><a href="#[48e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;services_init
-<LI><a href="#[3b2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;gap_params_init
-<LI><a href="#[2fc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;conn_params_init
-<LI><a href="#[231]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;advertising_init
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1a6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;usr1_Init
-</UL>
-
-<P><STRONG><a name="[23d]"></a>slave_isconnect</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, slave.o(i.slave_isconnect))
-<BR><BR>[Called By]<UL><LI><a href="#[1f4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_detect_Init
-<LI><a href="#[62]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_game_Process
-<LI><a href="#[50]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_Authen_Process
-<LI><a href="#[5e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_data_transfer_Process
-<LI><a href="#[57]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_connect_Process
-<LI><a href="#[5a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_connect_LED_Process
-<LI><a href="#[55]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_client_Process
-<LI><a href="#[69]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_ota_Process
-</UL>
-
-<P><STRONG><a name="[25d]"></a>slave_set_adv_name</STRONG> (Thumb, 42 bytes, Stack size 16 bytes, slave.o(i.slave_set_adv_name))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = slave_set_adv_name
-</UL>
-<BR>[Calls]<UL><LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
-<LI><a href="#[127]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1f4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_detect_Init
-<LI><a href="#[69]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_ota_Process
-<LI><a href="#[72]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_Host_BLE_PAIR
-</UL>
-
-<P><STRONG><a name="[2f1]"></a>slave_update_conn_interval_request</STRONG> (Thumb, 220 bytes, Stack size 40 bytes, slave.o(i.slave_update_conn_interval_request))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4856<LI>Call Chain = slave_update_conn_interval_request &rArr; app_error_handler &rArr; app_error_fault_handler &rArr; Flash_SaveLog &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[d1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_error_handler
-<LI><a href="#[112]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_f2d
-<LI><a href="#[113]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_cdrcmple
-</UL>
-<BR>[Called By]<UL><LI><a href="#[58]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_Slave_Connect
-</UL>
-
-<P><STRONG><a name="[240]"></a>sort_silde_window</STRONG> (Thumb, 204 bytes, Stack size 24 bytes, app_overturn.o(i.sort_silde_window))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = sort_silde_window
-</UL>
-<BR>[Calls]<UL><LI><a href="#[493]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cal_unsigned_D_value
-<LI><a href="#[127]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy
-</UL>
-<BR>[Called By]<UL><LI><a href="#[6d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_BatDispaly_Process
-</UL>
-
-<P><STRONG><a name="[3ce]"></a>special_motion</STRONG> (Thumb, 622 bytes, Stack size 96 bytes, special_motion.o(i.special_motion))
-<BR><BR>[Stack]<UL><LI>Max Depth = 220<LI>Call Chain = special_motion &rArr; press_jump_detect &rArr; max_min_window
-</UL>
-<BR>[Calls]<UL><LI><a href="#[475]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;press_jump_detect
-<LI><a href="#[472]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;press_down_detect_new
-<LI><a href="#[497]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;pos_jump_detect
-<LI><a href="#[496]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cal_mean_val
-</UL>
-<BR>[Called By]<UL><LI><a href="#[3f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;integrate_left_right
-</UL>
-
-<P><STRONG><a name="[217]"></a>sqrt</STRONG> (Thumb, 110 bytes, Stack size 32 bytes, sqrt.o(i.sqrt))
-<BR><BR>[Stack]<UL><LI>Max Depth = 72<LI>Call Chain = sqrt &rArr; _dsqrt &rArr; _double_round
-</UL>
-<BR>[Calls]<UL><LI><a href="#[211]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__set_errno
-<LI><a href="#[e8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_dsqrt
-</UL>
-<BR>[Called By]<UL><LI><a href="#[20f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_asin
-</UL>
-
-<P><STRONG><a name="[218]"></a>sqrtf</STRONG> (Thumb, 62 bytes, Stack size 16 bytes, sqrtf.o(i.sqrtf))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = sqrtf
-</UL>
-<BR>[Calls]<UL><LI><a href="#[211]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__set_errno
-</UL>
-<BR>[Called By]<UL><LI><a href="#[19f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_asinf
-</UL>
-
-<P><STRONG><a name="[3c5]"></a>timer_init</STRONG> (Thumb, 32 bytes, Stack size 16 bytes, host.o(i.timer_init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4832<LI>Call Chain = timer_init &rArr; app_error_handler &rArr; app_error_fault_handler &rArr; Flash_SaveLog &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[d1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_error_handler
-<LI><a href="#[277]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_timer_init
-</UL>
-<BR>[Called By]<UL><LI><a href="#[492]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;slave_init
-<LI><a href="#[3c4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;host_init
-</UL>
-
-<P><STRONG><a name="[1a6]"></a>usr1_Init</STRONG> (Thumb, 16 bytes, Stack size 8 bytes, usr.o(i.usr1_Init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 5040<LI>Call Chain = usr1_Init &rArr; slave_init &rArr; advertising_init &rArr; app_error_handler &rArr; app_error_fault_handler &rArr; Flash_SaveLog &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[492]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;slave_init
-<LI><a href="#[3c4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;host_init
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1a5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;PRE_Init
-</UL>
-
-<P><STRONG><a name="[3ae]"></a>vel_n_corr</STRONG> (Thumb, 50 bytes, Stack size 0 bytes, ekfpdr.o(i.vel_n_corr))
-<BR><BR>[Called By]<UL><LI><a href="#[3a9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;footPDR
-</UL>
-
-<P><STRONG><a name="[a8]"></a>wait_times</STRONG> (Thumb, 70 bytes, Stack size 8 bytes, hal_charge.o(i.wait_times))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4880<LI>Call Chain = wait_times &rArr; selfcheck_trigger_callback &rArr; host_set_scan_name &rArr; app_error_handler &rArr; app_error_fault_handler &rArr; Flash_SaveLog &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[265]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_Stop
-<LI><a href="#[489]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_trigger_callback
-<LI><a href="#[470]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;one_byte_receive_uninit
-</UL>
-<BR>[Address Reference Count : 2]<UL><LI> hal_charge.o(i.open_one_shel)
-<LI> hal_charge.o(i.wait_times)
-</UL>
-<P><STRONG><a name="[204]"></a>watchdog_init</STRONG> (Thumb, 96 bytes, Stack size 32 bytes, bsp_wdt.o(i.watchdog_init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 104<LI>Call Chain = watchdog_init &rArr; nrfx_wdt_init &rArr; __aeabi_uldivmod
-</UL>
-<BR>[Calls]<UL><LI><a href="#[fd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_Start
-<LI><a href="#[45b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_wdt_init
-<LI><a href="#[49e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_wdt_enable
-<LI><a href="#[459]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_wdt_channel_alloc
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1ed]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;USR_Init
-</UL>
-
-<P><STRONG><a name="[b7]"></a>wdt_event_handler</STRONG> (Thumb, 8 bytes, Stack size 8 bytes, bsp_wdt.o(i.wdt_event_handler))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = wdt_event_handler
-</UL>
-<BR>[Calls]<UL><LI><a href="#[49f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Except_Unkown_Reset_WDT_Set
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> bsp_wdt.o(i.watchdog_init)
-</UL><P>
-<H3>
-Local Symbols
-</H3>
-<P><STRONG><a name="[11f]"></a>Except_Led_Close</STRONG> (Thumb, 32 bytes, Stack size 8 bytes, exception.o(i.Except_Led_Close))
-<BR><BR>[Stack]<UL><LI>Max Depth = 20<LI>Call Chain = Except_Led_Close &rArr; Process_SetHoldOn
-</UL>
-<BR>[Calls]<UL><LI><a href="#[106]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_SetHoldOn
-<LI><a href="#[120]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LED_Stop
-</UL>
-<BR>[Called By]<UL><LI><a href="#[3c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Exception_Led_Process
-</UL>
-
-<P><STRONG><a name="[121]"></a>Except_Led_OpenOnce</STRONG> (Thumb, 106 bytes, Stack size 8 bytes, exception.o(i.Except_Led_OpenOnce))
-<BR><BR>[Stack]<UL><LI>Max Depth = 20<LI>Call Chain = Except_Led_OpenOnce &rArr; Process_SetHoldOn
-</UL>
-<BR>[Calls]<UL><LI><a href="#[106]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_SetHoldOn
-<LI><a href="#[122]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LED_Start
-</UL>
-<BR>[Called By]<UL><LI><a href="#[3c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Exception_Led_Process
-</UL>
-
-<P><STRONG><a name="[123]"></a>Except_NotOSHardFault_Handler</STRONG> (Thumb, 60 bytes, Stack size 16 bytes, exception.o(i.Except_NotOSHardFault_Handler))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = Except_NotOSHardFault_Handler
-</UL>
-<BR>[Calls]<UL><LI><a href="#[fb]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy4
-</UL>
-<BR>[Called By]<UL><LI><a href="#[7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HardFault_Handler
-</UL>
-
-<P><STRONG><a name="[3c]"></a>Exception_Led_Process</STRONG> (Thumb, 98 bytes, Stack size 40 bytes, exception.o(i.Exception_Led_Process))
-<BR><BR>[Stack]<UL><LI>Max Depth = 72<LI>Call Chain = Exception_Led_Process &rArr; bll_imu_get_data &rArr; fml_imu_get_data
-</UL>
-<BR>[Calls]<UL><LI><a href="#[121]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Except_Led_OpenOnce
-<LI><a href="#[11f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Except_Led_Close
-<LI><a href="#[12a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_get_data_num
-<LI><a href="#[11b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_get_data
-</UL>
-<BR>[Address Reference Count : 3]<UL><LI> exception.o(i.Except_Led_Close)
-<LI> exception.o(i.Except_Led_OpenOnce)
-<LI> exception.o(i.Exception_Init)
-</UL>
-<P><STRONG><a name="[3d]"></a>Exception_UnkownReset_Info_Send_Process</STRONG> (Thumb, 366 bytes, Stack size 320 bytes, exception.o(i.Exception_UnkownReset_Info_Send_Process))
-<BR><BR>[Stack]<UL><LI>Max Depth = 1000<LI>Call Chain = Exception_UnkownReset_Info_Send_Process &rArr; Except_TxError &rArr; BLE_Client_Send &rArr; send_bytes_client &rArr; ble_nus_data_send &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[e3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_ui2d
-<LI><a href="#[e1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_ddiv
-<LI><a href="#[124]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Except_TxError
-<LI><a href="#[12b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__2sprintf
-<LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> exception.o(i.Exception_Init)
-</UL>
-<P><STRONG><a name="[13f]"></a>__NVIC_SystemReset</STRONG> (Thumb, 56 bytes, Stack size 0 bytes, exception.o(i.__NVIC_SystemReset))
-<BR><BR>[Called By]<UL><LI><a href="#[a2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_error_fault_handler
-<LI><a href="#[7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HardFault_Handler
-</UL>
-
-<P><STRONG><a name="[b1]"></a>adc_callback</STRONG> (Thumb, 176 bytes, Stack size 16 bytes, selfcheck.o(i.adc_callback))
-<BR><BR>[Stack]<UL><LI>Max Depth = 76<LI>Call Chain = adc_callback &rArr; middleFilter
-</UL>
-<BR>[Calls]<UL><LI><a href="#[22b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_adc_get_value
-<LI><a href="#[22c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;middleFilter
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> selfcheck.o(i.selfcheck_trigger_callback)
-</UL>
-<P><STRONG><a name="[b2]"></a>fb_data_notify_cb</STRONG> (Thumb, 246 bytes, Stack size 16 bytes, selfcheck.o(i.fb_data_notify_cb))
-<BR><BR>[Stack]<UL><LI>Max Depth = 216<LI>Call Chain = fb_data_notify_cb &rArr; Mahony_update &rArr; __hardfp_asinf &rArr; sqrtf
-</UL>
-<BR>[Calls]<UL><LI><a href="#[19b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Mahony_update
-<LI><a href="#[394]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;monitor_sensor_data
-<LI><a href="#[12a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_get_data_num
-<LI><a href="#[11b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_get_data
-<LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> selfcheck.o(i.selfcheck_trigger_callback)
-</UL>
-<P><STRONG><a name="[394]"></a>monitor_sensor_data</STRONG> (Thumb, 410 bytes, Stack size 12 bytes, selfcheck.o(i.monitor_sensor_data))
-<BR><BR>[Stack]<UL><LI>Max Depth = 12<LI>Call Chain = monitor_sensor_data
-</UL>
-<BR>[Called By]<UL><LI><a href="#[b2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fb_data_notify_cb
-</UL>
-
-<P><STRONG><a name="[48a]"></a>nrf_delay_ms</STRONG> (Thumb, 42 bytes, Stack size 24 bytes, selfcheck.o(i.nrf_delay_ms))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = nrf_delay_ms
-</UL>
-<BR>[Called By]<UL><LI><a href="#[489]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_trigger_callback
-</UL>
-
-<P><STRONG><a name="[48b]"></a>nrf_gpio_cfg</STRONG> (Thumb, 40 bytes, Stack size 20 bytes, selfcheck.o(i.nrf_gpio_cfg))
-<BR><BR>[Stack]<UL><LI>Max Depth = 20<LI>Call Chain = nrf_gpio_cfg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[489]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_trigger_callback
-</UL>
-
-<P><STRONG><a name="[485]"></a>nrf_gpio_pin_write</STRONG> (Thumb, 58 bytes, Stack size 8 bytes, selfcheck.o(i.nrf_gpio_pin_write))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = nrf_gpio_pin_write
-</UL>
-<BR>[Called By]<UL><LI><a href="#[489]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_trigger_callback
-<LI><a href="#[af]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_process
-<LI><a href="#[aa]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_continue_mt_process
-</UL>
-
-<P><STRONG><a name="[b0]"></a>scan_report_cb</STRONG> (Thumb, 32 bytes, Stack size 0 bytes, selfcheck.o(i.scan_report_cb))
-<BR>[Address Reference Count : 1]<UL><LI> selfcheck.o(i.selfcheck_trigger_callback)
-</UL>
-<P><STRONG><a name="[aa]"></a>selfcheck_continue_mt_process</STRONG> (Thumb, 88 bytes, Stack size 8 bytes, selfcheck.o(i.selfcheck_continue_mt_process))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = selfcheck_continue_mt_process &rArr; feed_watchdog &rArr; nrfx_wdt_channel_feed
-</UL>
-<BR>[Calls]<UL><LI><a href="#[1b0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;feed_watchdog
-<LI><a href="#[26c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_UpdatePeroid
-<LI><a href="#[106]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_SetHoldOn
-<LI><a href="#[485]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_write
-</UL>
-<BR>[Address Reference Count : 2]<UL><LI> selfcheck.o(i.selfcheck_continue_mt_process)
-<LI> selfcheck.o(i.selfcheck_process)
-</UL>
-<P><STRONG><a name="[486]"></a>selfcheck_get_result_led</STRONG> (Thumb, 56 bytes, Stack size 0 bytes, selfcheck.o(i.selfcheck_get_result_led))
-<BR><BR>[Called By]<UL><LI><a href="#[af]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_process
-</UL>
-
-<P><STRONG><a name="[ac]"></a>selfcheck_led_process</STRONG> (Thumb, 80 bytes, Stack size 8 bytes, selfcheck.o(i.selfcheck_led_process))
-<BR><BR>[Stack]<UL><LI>Max Depth = 104<LI>Call Chain = selfcheck_led_process &rArr; WS2812_Pwm_Play &rArr; SetSimplePwmPlayBack &rArr; nrfx_pwm_simple_playback &rArr; start_playback &rArr; nrf_pwm_event_clear
-</UL>
-<BR>[Calls]<UL><LI><a href="#[1b0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;feed_watchdog
-<LI><a href="#[20c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;WS2812_Pwm_Play
-<LI><a href="#[17e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;WS2812_DisplayDot
-</UL>
-<BR>[Address Reference Count : 2]<UL><LI> selfcheck.o(i.selfcheck_process)
-<LI> selfcheck.o(i.selfcheck_trigger_callback)
-</UL>
-<P><STRONG><a name="[ab]"></a>selfcheck_mt_process</STRONG> (Thumb, 230 bytes, Stack size 8 bytes, selfcheck.o(i.selfcheck_mt_process))
-<BR><BR>[Stack]<UL><LI>Max Depth = 64<LI>Call Chain = selfcheck_mt_process &rArr; drv_qma_get_acc_data &rArr; get_accel_z &rArr; read_accel_axis
-</UL>
-<BR>[Calls]<UL><LI><a href="#[1b0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;feed_watchdog
-<LI><a href="#[11a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qma_get_acc_data
-</UL>
-<BR>[Address Reference Count : 2]<UL><LI> selfcheck.o(i.selfcheck_process)
-<LI> selfcheck.o(i.selfcheck_trigger_callback)
-</UL>
-<P><STRONG><a name="[af]"></a>selfcheck_process</STRONG> (Thumb, 2518 bytes, Stack size 392 bytes, selfcheck.o(i.selfcheck_process))
-<BR><BR>[Stack]<UL><LI>Max Depth = 5232<LI>Call Chain = selfcheck_process &rArr; host_set_scan_name &rArr; app_error_handler &rArr; app_error_fault_handler &rArr; Flash_SaveLog &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[1b0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;feed_watchdog
-<LI><a href="#[104]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;TIME_GetTicks
-<LI><a href="#[265]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_Stop
-<LI><a href="#[fd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_Start
-<LI><a href="#[106]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_SetHoldOn
-<LI><a href="#[25c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;host_set_scan_name
-<LI><a href="#[36d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qma_set_acc_odr
-<LI><a href="#[11a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qma_get_acc_data
-<LI><a href="#[263]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_query_config_param_is_ready
-<LI><a href="#[261]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_Resume_config_param
-<LI><a href="#[e2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_i2d
-<LI><a href="#[da]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_dadd
-<LI><a href="#[20c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;WS2812_Pwm_Play
-<LI><a href="#[17e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;WS2812_DisplayDot
-<LI><a href="#[1d8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ST_scan_stop
-<LI><a href="#[19b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Mahony_update
-<LI><a href="#[19a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Mahony_send_ANO
-<LI><a href="#[488]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Mahony_M_GetYaw
-<LI><a href="#[487]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Mahony_M_GetRoll
-<LI><a href="#[3d9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Mahony_M_GetPitch
-<LI><a href="#[13c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_SaveStep
-<LI><a href="#[139]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_SaveInfomation
-<LI><a href="#[132]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_SaveBackup
-<LI><a href="#[12e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_DeleteAllStep
-<LI><a href="#[12d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_DeleteAllInfor
-<LI><a href="#[12c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_DeleteAllBackup
-<LI><a href="#[486]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_get_result_led
-<LI><a href="#[485]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_write
-<LI><a href="#[e5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_d2uiz
-<LI><a href="#[124]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Except_TxError
-<LI><a href="#[12b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__2sprintf
-<LI><a href="#[125]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;strlen
-<LI><a href="#[d8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memset
-<LI><a href="#[fb]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy4
-<LI><a href="#[173]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_sqrt
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> selfcheck.o(i.selfcheck_trigger_callback)
-</UL>
-<P><STRONG><a name="[ad]"></a>selfcheck_result_display_process</STRONG> (Thumb, 154 bytes, Stack size 8 bytes, selfcheck.o(i.selfcheck_result_display_process))
-<BR><BR>[Stack]<UL><LI>Max Depth = 104<LI>Call Chain = selfcheck_result_display_process &rArr; WS2812_Pwm_Play &rArr; SetSimplePwmPlayBack &rArr; nrfx_pwm_simple_playback &rArr; start_playback &rArr; nrf_pwm_event_clear
-</UL>
-<BR>[Calls]<UL><LI><a href="#[1b0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;feed_watchdog
-<LI><a href="#[26c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_UpdatePeroid
-<LI><a href="#[20c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;WS2812_Pwm_Play
-<LI><a href="#[17e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;WS2812_DisplayDot
-</UL>
-<BR>[Address Reference Count : 2]<UL><LI> selfcheck.o(i.selfcheck_process)
-<LI> selfcheck.o(i.selfcheck_result_display_process)
-</UL>
-<P><STRONG><a name="[ae]"></a>selfcheck_trigger_Init_Porcess</STRONG> (Thumb, 22 bytes, Stack size 8 bytes, selfcheck.o(i.selfcheck_trigger_Init_Porcess))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4880<LI>Call Chain = selfcheck_trigger_Init_Porcess &rArr; selfcheck_trigger_callback &rArr; host_set_scan_name &rArr; app_error_handler &rArr; app_error_fault_handler &rArr; Flash_SaveLog &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[489]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_trigger_callback
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> selfcheck.o(i.selfcheck_trigger_Init)
-</UL>
-<P><STRONG><a name="[56]"></a>app_client_step_Process</STRONG> (Thumb, 116 bytes, Stack size 8 bytes, app_client_step.o(i.app_client_step_Process))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4624<LI>Call Chain = app_client_step_Process &rArr; Flash_SaveStep &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[104]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;TIME_GetTicks
-<LI><a href="#[250]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_host_GetClientData
-<LI><a href="#[13c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_SaveStep
-<LI><a href="#[124]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Except_TxError
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> app_client_step.o(i.app_client_step_Initialize)
-</UL>
-<P><STRONG><a name="[1]"></a>cb_BLE_Client_T_UPDATE_STEPNUM</STRONG> (Thumb, 62 bytes, Stack size 8 bytes, app_client_step.o(i.cb_BLE_Client_T_UPDATE_STEPNUM))
-<BR><BR>[Stack]<UL><LI>Max Depth = 712<LI>Call Chain = cb_BLE_Client_T_UPDATE_STEPNUM &rArr; app_client_SendStepAll &rArr; Except_TxError &rArr; BLE_Client_Send &rArr; send_bytes_client &rArr; ble_nus_data_send &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[24c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_client_SendStepAll
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> app_client_step.o(.data)
-</UL>
-<P><STRONG><a name="[7c]"></a>app_math_DailyStep_Process</STRONG> (Thumb, 146 bytes, Stack size 56 bytes, app_step.o(i.app_math_DailyStep_Process))
-<BR><BR>[Stack]<UL><LI>Max Depth = 88<LI>Call Chain = app_math_DailyStep_Process &rArr; bll_imu_get_data &rArr; fml_imu_get_data
-</UL>
-<BR>[Calls]<UL><LI><a href="#[207]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_wearshoes_is_wearshoes
-<LI><a href="#[26a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;detect_step_by_mag
-<LI><a href="#[193]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_game_GetGameMode
-<LI><a href="#[12a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_get_data_num
-<LI><a href="#[11b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_get_data
-<LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> app_step.o(i.app_step_Init)
-</UL>
-<P><STRONG><a name="[274]"></a>app_step_RealSendClient</STRONG> (Thumb, 190 bytes, Stack size 16 bytes, app_step.o(i.app_step_RealSendClient))
-<BR><BR>[Stack]<UL><LI>Max Depth = 448<LI>Call Chain = app_step_RealSendClient &rArr; BLE_Client_Tx_Send &rArr; BLE_Client_Send &rArr; send_bytes_client &rArr; ble_nus_data_send &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[107]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Client_Tx_Send
-</UL>
-<BR>[Called By]<UL><LI><a href="#[7a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_BLE_Host_R_REALTIMESTEP
-<LI><a href="#[77]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_step_RealSendProcess
-</UL>
-
-<P><STRONG><a name="[77]"></a>app_step_RealSendProcess</STRONG> (Thumb, 18 bytes, Stack size 8 bytes, app_step.o(i.app_step_RealSendProcess))
-<BR><BR>[Stack]<UL><LI>Max Depth = 456<LI>Call Chain = app_step_RealSendProcess &rArr; app_step_RealSendClient &rArr; BLE_Client_Tx_Send &rArr; BLE_Client_Send &rArr; send_bytes_client &rArr; ble_nus_data_send &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[274]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_step_RealSendClient
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> app_step.o(i.app_step_Init)
-</UL>
-<P><STRONG><a name="[7b]"></a>real_data_notify_cb</STRONG> (Thumb, 220 bytes, Stack size 40 bytes, app_step.o(i.real_data_notify_cb))
-<BR><BR>[Stack]<UL><LI>Max Depth = 208<LI>Call Chain = real_data_notify_cb &rArr; RealTimeStep &rArr; __aeabi_dmul &rArr; _double_epilogue &rArr; _double_round
-</UL>
-<BR>[Calls]<UL><LI><a href="#[1c3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RealTimeStep
-<LI><a href="#[12a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_get_data_num
-<LI><a href="#[11b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_get_data
-<LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> app_step.o(i.app_step_Init)
-</UL>
-<P><STRONG><a name="[64]"></a>app_AutoOutgame_Process</STRONG> (Thumb, 58 bytes, Stack size 8 bytes, app_game.o(i.app_AutoOutgame_Process))
-<BR><BR>[Stack]<UL><LI>Max Depth = 600<LI>Call Chain = app_AutoOutgame_Process &rArr; BLE_Host_Tx_Send &rArr; BLE_Host_Send &rArr; send_bytes_server &rArr; ble_nus_c_string_send &rArr; nrf_ble_gq_item_add &rArr; queue_process &rArr; nrf_memobj_read &rArr; memobj_op
-</UL>
-<BR>[Calls]<UL><LI><a href="#[23f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_Resume_unregister_config_param
-<LI><a href="#[193]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_game_GetGameMode
-<LI><a href="#[110]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Host_Tx_Send
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> app_game.o(i.app_game_Init)
-</UL>
-<P><STRONG><a name="[62]"></a>app_game_Process</STRONG> (Thumb, 436 bytes, Stack size 16 bytes, app_game.o(i.app_game_Process))
-<BR><BR>[Stack]<UL><LI>Max Depth = 696<LI>Call Chain = app_game_Process &rArr; Except_TxError &rArr; BLE_Client_Send &rArr; send_bytes_client &rArr; ble_nus_data_send &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[106]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_SetHoldOn
-<LI><a href="#[267]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;set_pdr_status
-<LI><a href="#[266]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_game_notify_host
-<LI><a href="#[23f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_Resume_unregister_config_param
-<LI><a href="#[23c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;host_isconnect
-<LI><a href="#[263]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_query_config_param_is_ready
-<LI><a href="#[261]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_Resume_config_param
-<LI><a href="#[124]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Except_TxError
-<LI><a href="#[23d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;slave_isconnect
-</UL>
-<BR>[Address Reference Count : 3]<UL><LI> app_game.o(i.app_game_Init)
-<LI> app_game.o(i.app_game_Process)
-<LI> app_game.o(i.cb_BLE_Client_R_GAMEMODE)
-</UL>
-<P><STRONG><a name="[266]"></a>app_game_notify_host</STRONG> (Thumb, 20 bytes, Stack size 16 bytes, app_game.o(i.app_game_notify_host))
-<BR><BR>[Stack]<UL><LI>Max Depth = 608<LI>Call Chain = app_game_notify_host &rArr; BLE_Host_Tx_Send &rArr; BLE_Host_Send &rArr; send_bytes_server &rArr; ble_nus_c_string_send &rArr; nrf_ble_gq_item_add &rArr; queue_process &rArr; nrf_memobj_read &rArr; memobj_op
-</UL>
-<BR>[Calls]<UL><LI><a href="#[110]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Host_Tx_Send
-</UL>
-<BR>[Called By]<UL><LI><a href="#[62]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_game_Process
-</UL>
-
-<P><STRONG><a name="[63]"></a>cb_BLE_Client_R_GAMEMODE</STRONG> (Thumb, 96 bytes, Stack size 16 bytes, app_game.o(i.cb_BLE_Client_R_GAMEMODE))
-<BR><BR>[Stack]<UL><LI>Max Depth = 608<LI>Call Chain = cb_BLE_Client_R_GAMEMODE &rArr; BLE_Host_Tx_Send &rArr; BLE_Host_Send &rArr; send_bytes_server &rArr; ble_nus_c_string_send &rArr; nrf_ble_gq_item_add &rArr; queue_process &rArr; nrf_memobj_read &rArr; memobj_op
-</UL>
-<BR>[Calls]<UL><LI><a href="#[106]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_SetHoldOn
-<LI><a href="#[2f0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IMU_Dtalige_Rowdata_ON
-<LI><a href="#[2ef]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IMU_Dtalige_Rowdata_OFF
-<LI><a href="#[23f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_Resume_unregister_config_param
-<LI><a href="#[110]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Host_Tx_Send
-<LI><a href="#[261]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_Resume_config_param
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> app_game.o(i.app_game_Init)
-</UL>
-<P><STRONG><a name="[65]"></a>gamemode_data_notify_cb</STRONG> (Thumb, 282 bytes, Stack size 40 bytes, app_game.o(i.gamemode_data_notify_cb))
-<BR><BR>[Stack]<UL><LI>Max Depth = 576<LI>Call Chain = gamemode_data_notify_cb &rArr; process_imu_data_front &rArr; IMU_Process_motion_queue &rArr; send_protocol &rArr; BLE_Client_Tx_Send &rArr; BLE_Client_Send &rArr; send_bytes_client &rArr; ble_nus_data_send &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[194]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;host_get_rssi
-<LI><a href="#[3b1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Slave_Get7_5ms_interval
-<LI><a href="#[3b0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;process_imu_data_front
-<LI><a href="#[193]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_game_GetGameMode
-<LI><a href="#[12a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_get_data_num
-<LI><a href="#[11b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_get_data
-<LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> app_game.o(i.app_game_Init)
-</UL>
-<P><STRONG><a name="[3b0]"></a>process_imu_data_front</STRONG> (Thumb, 154 bytes, Stack size 32 bytes, app_game.o(i.process_imu_data_front))
-<BR><BR>[Stack]<UL><LI>Max Depth = 536<LI>Call Chain = process_imu_data_front &rArr; IMU_Process_motion_queue &rArr; send_protocol &rArr; BLE_Client_Tx_Send &rArr; BLE_Client_Send &rArr; send_bytes_client &rArr; ble_nus_data_send &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[162]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IMU_Process_motion_queue
-</UL>
-<BR>[Called By]<UL><LI><a href="#[65]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;gamemode_data_notify_cb
-</UL>
-
-<P><STRONG><a name="[69]"></a>app_ota_Process</STRONG> (Thumb, 406 bytes, Stack size 56 bytes, app_ota.o(i.app_ota_Process))
-<BR><BR>[Stack]<UL><LI>Max Depth = 5088<LI>Call Chain = app_ota_Process &rArr; slave_adv_init &rArr; advertising_init &rArr; app_error_handler &rArr; app_error_fault_handler &rArr; Flash_SaveLog &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[26c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_UpdatePeroid
-<LI><a href="#[115]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_scan_stop
-<LI><a href="#[256]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;host_disconnect
-<LI><a href="#[107]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Client_Tx_Send
-<LI><a href="#[124]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Except_TxError
-<LI><a href="#[25d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;slave_set_adv_name
-<LI><a href="#[23e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;slave_disconnect
-<LI><a href="#[25e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;slave_adv_init
-<LI><a href="#[236]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;advertising_stop
-<LI><a href="#[234]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;advertising_start
-<LI><a href="#[242]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Get_MACaddr
-<LI><a href="#[23d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;slave_isconnect
-<LI><a href="#[12b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__2sprintf
-<LI><a href="#[125]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;strlen
-</UL>
-<BR>[Address Reference Count : 4]<UL><LI> app_ota.o(i.cb_BLE_Client_R_DFU)
-<LI> app_ota.o(i.cb_Client_BLE_DFU)
-<LI> app_ota.o(i.app_ota_Init)
-<LI> app_ota.o(i.app_ota_Process)
-</UL>
-<P><STRONG><a name="[6c]"></a>app_ota_clear_flash</STRONG> (Thumb, 96 bytes, Stack size 8 bytes, app_ota.o(i.app_ota_clear_flash))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4624<LI>Call Chain = app_ota_clear_flash &rArr; Flash_SaveStep &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[13c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_SaveStep
-<LI><a href="#[139]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_SaveInfomation
-<LI><a href="#[132]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_SaveBackup
-<LI><a href="#[124]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Except_TxError
-<LI><a href="#[26d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_pwr_mgmt_shutdown
-<LI><a href="#[174]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LED_Close_Enforce
-<LI><a href="#[fb]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy4
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> app_ota.o(i.app_ota_Init)
-</UL>
-<P><STRONG><a name="[bc]"></a>app_shutdown_handler</STRONG> (Thumb, 48 bytes, Stack size 0 bytes, app_ota.o(i.app_shutdown_handler))
-<BR>[Address Reference Count : 1]<UL><LI> app_ota.o(pwr_mgmt_data0)
-</UL>
-<P><STRONG><a name="[2]"></a>cb_Client_BLE_DFU</STRONG> (Thumb, 20 bytes, Stack size 8 bytes, app_ota.o(i.cb_Client_BLE_DFU))
-<BR><BR>[Stack]<UL><LI>Max Depth = 20<LI>Call Chain = cb_Client_BLE_DFU &rArr; Process_SetHoldOn
-</UL>
-<BR>[Calls]<UL><LI><a href="#[106]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_SetHoldOn
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> app_ota.o(.data)
-</UL>
-<P><STRONG><a name="[55]"></a>app_client_Process</STRONG> (Thumb, 58 bytes, Stack size 8 bytes, app_client.o(i.app_client_Process))
-<BR><BR>[Stack]<UL><LI>Max Depth = 488<LI>Call Chain = app_client_Process &rArr; app_client_DataUpdate_Send &rArr; BLE_Client_Tx_Send &rArr; BLE_Client_Send &rArr; send_bytes_client &rArr; ble_nus_data_send &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[193]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_game_GetGameMode
-<LI><a href="#[1b1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_client_DataUpdate_Send
-<LI><a href="#[23d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;slave_isconnect
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> app_client.o(i.app_client_Initialize)
-</UL>
-<P><STRONG><a name="[5d]"></a>cb_BLE_BLINK_LED</STRONG> (Thumb, 80 bytes, Stack size 16 bytes, app_connect_manage.o(i.cb_BLE_BLINK_LED))
-<BR><BR>[Stack]<UL><LI>Max Depth = 608<LI>Call Chain = cb_BLE_BLINK_LED &rArr; BLE_Host_Tx_Send &rArr; BLE_Host_Send &rArr; send_bytes_server &rArr; ble_nus_c_string_send &rArr; nrf_ble_gq_item_add &rArr; queue_process &rArr; nrf_memobj_read &rArr; memobj_op
-</UL>
-<BR>[Calls]<UL><LI><a href="#[104]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;TIME_GetTicks
-<LI><a href="#[106]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_SetHoldOn
-<LI><a href="#[110]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Host_Tx_Send
-<LI><a href="#[122]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LED_Start
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> app_connect_manage.o(i.app_connect_manage_Init)
-</UL>
-<P><STRONG><a name="[5b]"></a>cb_Client_BLE_CONNET_R</STRONG> (Thumb, 74 bytes, Stack size 16 bytes, app_connect_manage.o(i.cb_Client_BLE_CONNET_R))
-<BR><BR>[Stack]<UL><LI>Max Depth = 608<LI>Call Chain = cb_Client_BLE_CONNET_R &rArr; BLE_Host_Tx_Send &rArr; BLE_Host_Send &rArr; send_bytes_server &rArr; ble_nus_c_string_send &rArr; nrf_ble_gq_item_add &rArr; queue_process &rArr; nrf_memobj_read &rArr; memobj_op
-</UL>
-<BR>[Calls]<UL><LI><a href="#[110]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Host_Tx_Send
-<LI><a href="#[107]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Client_Tx_Send
-<LI><a href="#[251]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_conneted_getRight
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> app_connect_manage.o(i.app_connect_manage_Init)
-</UL>
-<P><STRONG><a name="[5c]"></a>cb_Host_BLE_CONNET_R</STRONG> (Thumb, 22 bytes, Stack size 16 bytes, app_connect_manage.o(i.cb_Host_BLE_CONNET_R))
-<BR><BR>[Stack]<UL><LI>Max Depth = 448<LI>Call Chain = cb_Host_BLE_CONNET_R &rArr; BLE_Client_Tx_Send &rArr; BLE_Client_Send &rArr; send_bytes_client &rArr; ble_nus_data_send &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[107]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Client_Tx_Send
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> app_connect_manage.o(i.app_connect_manage_Init)
-</UL>
-<P><STRONG><a name="[68]"></a>app_math_Hour_process</STRONG> (Thumb, 80 bytes, Stack size 16 bytes, app_math.o(i.app_math_Hour_process))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = app_math_Hour_process
-</UL>
-<BR>[Calls]<UL><LI><a href="#[26b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_client_step_SetIsScan
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> app_math.o(i.app_math_Init)
-</UL>
-<P><STRONG><a name="[133]"></a>__NVIC_SystemReset</STRONG> (Thumb, 56 bytes, Stack size 0 bytes, app_flash.o(i.__NVIC_SystemReset))
-<BR><BR>[Called By]<UL><LI><a href="#[131]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_Initialize
-</UL>
-
-<P><STRONG><a name="[5e]"></a>app_data_transfer_Process</STRONG> (Thumb, 140 bytes, Stack size 8 bytes, app_data_transfer.o(i.app_data_transfer_Process))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4840<LI>Call Chain = app_data_transfer_Process &rArr; scan_start &rArr; app_error_handler &rArr; app_error_fault_handler &rArr; Flash_SaveLog &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[104]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;TIME_GetTicks
-<LI><a href="#[106]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_SetHoldOn
-<LI><a href="#[193]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_game_GetGameMode
-<LI><a href="#[25a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_step_Real_Get
-<LI><a href="#[23c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;host_isconnect
-<LI><a href="#[160]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IMU_Dtalige
-<LI><a href="#[255]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;scan_start
-<LI><a href="#[236]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;advertising_stop
-<LI><a href="#[234]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;advertising_start
-<LI><a href="#[23d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;slave_isconnect
-</UL>
-<BR>[Address Reference Count : 2]<UL><LI> app_data_transfer.o(i.app_data_transfer_Init)
-<LI> app_data_transfer.o(i.app_data_transfer_Process)
-</UL>
-<P><STRONG><a name="[273]"></a>__NVIC_SystemReset</STRONG> (Thumb, 56 bytes, Stack size 0 bytes, app_safe.o(i.__NVIC_SystemReset))
-<BR><BR>[Called By]<UL><LI><a href="#[75]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_BLE_RESTSETTING
-<LI><a href="#[74]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_safe_Process
-</UL>
-
-<P><STRONG><a name="[74]"></a>app_safe_Process</STRONG> (Thumb, 164 bytes, Stack size 48 bytes, app_safe.o(i.app_safe_Process))
-<BR><BR>[Stack]<UL><LI>Max Depth = 808<LI>Call Chain = app_safe_Process &rArr; Flash_SaveBackup &rArr; sdflash_write &rArr; Except_TxError &rArr; BLE_Client_Send &rArr; send_bytes_client &rArr; ble_nus_data_send &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[132]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_SaveBackup
-<LI><a href="#[12e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_DeleteAllStep
-<LI><a href="#[12d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_DeleteAllInfor
-<LI><a href="#[12c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_DeleteAllBackup
-<LI><a href="#[124]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Except_TxError
-<LI><a href="#[272]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_delay_ms
-<LI><a href="#[273]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__NVIC_SystemReset
-<LI><a href="#[12b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__2sprintf
-<LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> app_safe.o(i.app_safe_Init)
-</UL>
-<P><STRONG><a name="[75]"></a>cb_BLE_RESTSETTING</STRONG> (Thumb, 48 bytes, Stack size 8 bytes, app_safe.o(i.cb_BLE_RESTSETTING))
-<BR><BR>[Stack]<UL><LI>Max Depth = 760<LI>Call Chain = cb_BLE_RESTSETTING &rArr; Flash_DeleteAllStep &rArr; sdflash_page_erase &rArr; Except_TxError &rArr; BLE_Client_Send &rArr; send_bytes_client &rArr; ble_nus_data_send &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[110]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Host_Tx_Send
-<LI><a href="#[12e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_DeleteAllStep
-<LI><a href="#[12d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_DeleteAllInfor
-<LI><a href="#[12c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_DeleteAllBackup
-<LI><a href="#[272]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_delay_ms
-<LI><a href="#[273]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__NVIC_SystemReset
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> app_safe.o(i.app_safe_Init)
-</UL>
-<P><STRONG><a name="[272]"></a>nrf_delay_ms</STRONG> (Thumb, 42 bytes, Stack size 24 bytes, app_safe.o(i.nrf_delay_ms))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = nrf_delay_ms
-</UL>
-<BR>[Called By]<UL><LI><a href="#[75]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_BLE_RESTSETTING
-<LI><a href="#[74]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_safe_Process
-</UL>
-
-<P><STRONG><a name="[46]"></a>PWR_Process</STRONG> (Thumb, 116 bytes, Stack size 8 bytes, app_power.o(i.PWR_Process))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4624<LI>Call Chain = PWR_Process &rArr; Flash_SaveStep &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[1b0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;feed_watchdog
-<LI><a href="#[1b1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_client_DataUpdate_Send
-<LI><a href="#[1ae]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;GetBatteryPersent
-<LI><a href="#[1af]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_charge_Getstate
-<LI><a href="#[13c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_SaveStep
-<LI><a href="#[139]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_SaveInfomation
-<LI><a href="#[132]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_SaveBackup
-<LI><a href="#[124]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Except_TxError
-<LI><a href="#[197]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;MT_Run
-<LI><a href="#[1aa]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;PWR_Off
-<LI><a href="#[1ad]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_delay_ms
-<LI><a href="#[fb]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy4
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> app_power.o(i.PWR_Init)
-</UL>
-<P><STRONG><a name="[1ad]"></a>nrf_delay_ms</STRONG> (Thumb, 42 bytes, Stack size 24 bytes, app_power.o(i.nrf_delay_ms))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = nrf_delay_ms
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1aa]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;PWR_Off
-<LI><a href="#[46]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;PWR_Process
-</UL>
-
-<P><STRONG><a name="[53]"></a>app_charge_Process</STRONG> (Thumb, 92 bytes, Stack size 8 bytes, app_charge.o(i.app_charge_Process))
-<BR><BR>[Stack]<UL><LI>Max Depth = 20<LI>Call Chain = app_charge_Process &rArr; Process_SetHoldOn
-</UL>
-<BR>[Calls]<UL><LI><a href="#[106]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_SetHoldOn
-<LI><a href="#[1af]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_charge_Getstate
-<LI><a href="#[120]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LED_Stop
-<LI><a href="#[122]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LED_Start
-</UL>
-<BR>[Address Reference Count : 2]<UL><LI> app_charge.o(i.app_charge_Init)
-<LI> app_charge.o(i.app_charge_Process)
-</UL>
-<P><STRONG><a name="[61]"></a>DetectLr_notify_cb</STRONG> (Thumb, 144 bytes, Stack size 56 bytes, app_detectishost.o(i.DetectLr_notify_cb))
-<BR><BR>[Stack]<UL><LI>Max Depth = 280<LI>Call Chain = DetectLr_notify_cb &rArr; isLeftOrRight &rArr; Mahony_update &rArr; __hardfp_asinf &rArr; sqrtf
-</UL>
-<BR>[Calls]<UL><LI><a href="#[11a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qma_get_acc_data
-<LI><a href="#[11b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_get_data
-<LI><a href="#[118]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_get_QmaFrequency
-<LI><a href="#[11c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;isLeftOrRight
-<LI><a href="#[119]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_get_Front_Number
-<LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> app_detectishost.o(i.app_detect_Init)
-</UL>
-<P><STRONG><a name="[60]"></a>app_detect_LR_Porcess</STRONG> (Thumb, 38 bytes, Stack size 16 bytes, app_detectishost.o(i.app_detect_LR_Porcess))
-<BR><BR>[Stack]<UL><LI>Max Depth = 108<LI>Call Chain = app_detect_LR_Porcess &rArr; bll_imu_Resume_config_param &rArr; bll_imu_start_config &rArr; fml_imu_start_config &rArr; Process_SetHoldOn
-</UL>
-<BR>[Calls]<UL><LI><a href="#[263]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_query_config_param_is_ready
-<LI><a href="#[261]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_Resume_config_param
-</UL>
-<BR>[Address Reference Count : 2]<UL><LI> app_detectishost.o(i.app_detect_LR_process_stop)
-<LI> app_detectishost.o(i.app_detect_Init)
-</UL>
-<P><STRONG><a name="[119]"></a>app_get_Front_Number</STRONG> (Thumb, 58 bytes, Stack size 16 bytes, app_detectishost.o(i.app_get_Front_Number))
-<BR><BR>[Stack]<UL><LI>Max Depth = 36<LI>Call Chain = app_get_Front_Number &rArr; bll_imu_query_config_param_is_ready
-</UL>
-<BR>[Calls]<UL><LI><a href="#[263]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_query_config_param_is_ready
-<LI><a href="#[12a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_get_data_num
-</UL>
-<BR>[Called By]<UL><LI><a href="#[61]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;DetectLr_notify_cb
-</UL>
-
-<P><STRONG><a name="[11c]"></a>isLeftOrRight</STRONG> (Thumb, 406 bytes, Stack size 24 bytes, app_detectishost.o(i.isLeftOrRight))
-<BR><BR>[Stack]<UL><LI>Max Depth = 224<LI>Call Chain = isLeftOrRight &rArr; Mahony_update &rArr; __hardfp_asinf &rArr; sqrtf
-</UL>
-<BR>[Calls]<UL><LI><a href="#[19b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Mahony_update
-<LI><a href="#[3d9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Mahony_M_GetPitch
-</UL>
-<BR>[Called By]<UL><LI><a href="#[61]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;DetectLr_notify_cb
-</UL>
-
-<P><STRONG><a name="[50]"></a>app_Authen_Process</STRONG> (Thumb, 116 bytes, Stack size 8 bytes, app_authen.o(i.app_Authen_Process))
-<BR><BR>[Stack]<UL><LI>Max Depth = 600<LI>Call Chain = app_Authen_Process &rArr; BLE_Host_Tx_Send &rArr; BLE_Host_Send &rArr; send_bytes_server &rArr; ble_nus_c_string_send &rArr; nrf_ble_gq_item_add &rArr; queue_process &rArr; nrf_memobj_read &rArr; memobj_op
-</UL>
-<BR>[Calls]<UL><LI><a href="#[110]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Host_Tx_Send
-<LI><a href="#[23c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;host_isconnect
-<LI><a href="#[23e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;slave_disconnect
-<LI><a href="#[23d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;slave_isconnect
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> app_authen.o(i.app_Authen_Init)
-</UL>
-<P><STRONG><a name="[51]"></a>cb_BLE_Client_BLE_AUTHEN</STRONG> (Thumb, 122 bytes, Stack size 16 bytes, app_authen.o(i.cb_BLE_Client_BLE_AUTHEN))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4600<LI>Call Chain = cb_BLE_Client_BLE_AUTHEN &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[110]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Host_Tx_Send
-<LI><a href="#[139]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_SaveInfomation
-<LI><a href="#[132]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_SaveBackup
-<LI><a href="#[124]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Except_TxError
-<LI><a href="#[264]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_detect_LR_process_stop
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> app_authen.o(i.app_Authen_Init)
-</UL>
-<P><STRONG><a name="[46b]"></a>nrf_gpio_cfg</STRONG> (Thumb, 40 bytes, Stack size 20 bytes, app_one_wire.o(i.nrf_gpio_cfg))
-<BR><BR>[Stack]<UL><LI>Max Depth = 20<LI>Call Chain = nrf_gpio_cfg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[46a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;one_byte_receive_init
-</UL>
-
-<P><STRONG><a name="[46c]"></a>nrf_gpio_cfg_watcher</STRONG> (Thumb, 30 bytes, Stack size 0 bytes, app_one_wire.o(i.nrf_gpio_cfg_watcher))
-<BR><BR>[Called By]<UL><LI><a href="#[46a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;one_byte_receive_init
-</UL>
-
-<P><STRONG><a name="[46d]"></a>nrf_gpio_pin_clear</STRONG> (Thumb, 22 bytes, Stack size 0 bytes, app_one_wire.o(i.nrf_gpio_pin_clear))
-<BR><BR>[Called By]<UL><LI><a href="#[46a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;one_byte_receive_init
-</UL>
-
-<P><STRONG><a name="[46e]"></a>nrf_gpio_pin_read</STRONG> (Thumb, 24 bytes, Stack size 0 bytes, app_one_wire.o(i.nrf_gpio_pin_read))
-<BR><BR>[Called By]<UL><LI><a href="#[a6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;one_byte_receive_pcs
-<LI><a href="#[46a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;one_byte_receive_init
-</UL>
-
-<P><STRONG><a name="[a5]"></a>null_pcs</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, app_one_wire.o(i.null_pcs))
-<BR>[Address Reference Count : 2]<UL><LI> app_one_wire.o(i.one_byte_receive_init)
-<LI> app_one_wire.o(i.one_byte_receive_uninit)
-</UL>
-<P><STRONG><a name="[241]"></a>app_ble_send_mac</STRONG> (Thumb, 162 bytes, Stack size 48 bytes, app_pair.o(i.app_ble_send_mac))
-<BR><BR>[Stack]<UL><LI>Max Depth = 640<LI>Call Chain = app_ble_send_mac &rArr; BLE_Host_Tx_Send &rArr; BLE_Host_Send &rArr; send_bytes_server &rArr; ble_nus_c_string_send &rArr; nrf_ble_gq_item_add &rArr; queue_process &rArr; nrf_memobj_read &rArr; memobj_op
-</UL>
-<BR>[Calls]<UL><LI><a href="#[110]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Host_Tx_Send
-<LI><a href="#[1af]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_charge_Getstate
-<LI><a href="#[107]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Client_Tx_Send
-<LI><a href="#[242]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Get_MACaddr
-</UL>
-<BR>[Called By]<UL><LI><a href="#[71]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_Client_BLE_PAIR
-<LI><a href="#[6e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_pair_Right_Process
-</UL>
-
-<P><STRONG><a name="[6f]"></a>app_pair_Left_Process</STRONG> (Thumb, 156 bytes, Stack size 48 bytes, app_pair.o(i.app_pair_Left_Process))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4888<LI>Call Chain = app_pair_Left_Process &rArr; host_set_scan_name &rArr; app_error_handler &rArr; app_error_fault_handler &rArr; Flash_SaveLog &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[25c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;host_set_scan_name
-<LI><a href="#[23c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;host_isconnect
-<LI><a href="#[256]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;host_disconnect
-<LI><a href="#[1af]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_charge_Getstate
-<LI><a href="#[120]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LED_Stop
-<LI><a href="#[26e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;get_LR_readly
-<LI><a href="#[26f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_pair_flash_save
-<LI><a href="#[12b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__2sprintf
-<LI><a href="#[125]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;strlen
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> app_pair.o(i.app_pair_Initialize)
-</UL>
-<P><STRONG><a name="[6e]"></a>app_pair_Right_Process</STRONG> (Thumb, 194 bytes, Stack size 16 bytes, app_pair.o(i.app_pair_Right_Process))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4856<LI>Call Chain = app_pair_Right_Process &rArr; host_set_scan_name &rArr; app_error_handler &rArr; app_error_fault_handler &rArr; Flash_SaveLog &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[25c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;host_set_scan_name
-<LI><a href="#[23c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;host_isconnect
-<LI><a href="#[256]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;host_disconnect
-<LI><a href="#[1af]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_charge_Getstate
-<LI><a href="#[270]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;advdata_report_Evt_Regist
-<LI><a href="#[1d8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ST_scan_stop
-<LI><a href="#[120]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LED_Stop
-<LI><a href="#[26e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;get_LR_readly
-<LI><a href="#[271]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;advdata_report_Evt_del
-<LI><a href="#[1d7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ST_scan_start
-<LI><a href="#[241]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_ble_send_mac
-<LI><a href="#[125]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;strlen
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> app_pair.o(i.app_pair_Initialize)
-</UL>
-<P><STRONG><a name="[26f]"></a>app_pair_flash_save</STRONG> (Thumb, 122 bytes, Stack size 8 bytes, app_pair.o(i.app_pair_flash_save))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4592<LI>Call Chain = app_pair_flash_save &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[139]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_SaveInfomation
-<LI><a href="#[132]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_SaveBackup
-<LI><a href="#[12e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_DeleteAllStep
-<LI><a href="#[124]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Except_TxError
-<LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
-</UL>
-<BR>[Called By]<UL><LI><a href="#[72]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_Host_BLE_PAIR
-<LI><a href="#[6f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_pair_Left_Process
-</UL>
-
-<P><STRONG><a name="[71]"></a>cb_Client_BLE_PAIR</STRONG> (Thumb, 230 bytes, Stack size 48 bytes, app_pair.o(i.cb_Client_BLE_PAIR))
-<BR><BR>[Stack]<UL><LI>Max Depth = 688<LI>Call Chain = cb_Client_BLE_PAIR &rArr; app_ble_send_mac &rArr; BLE_Host_Tx_Send &rArr; BLE_Host_Send &rArr; send_bytes_server &rArr; ble_nus_c_string_send &rArr; nrf_ble_gq_item_add &rArr; queue_process &rArr; nrf_memobj_read &rArr; memobj_op
-</UL>
-<BR>[Calls]<UL><LI><a href="#[23c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;host_isconnect
-<LI><a href="#[256]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;host_disconnect
-<LI><a href="#[1af]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_charge_Getstate
-<LI><a href="#[1d8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ST_scan_stop
-<LI><a href="#[122]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LED_Start
-<LI><a href="#[242]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Get_MACaddr
-<LI><a href="#[241]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_ble_send_mac
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> app_pair.o(i.app_pair_Initialize)
-</UL>
-<P><STRONG><a name="[72]"></a>cb_Host_BLE_PAIR</STRONG> (Thumb, 312 bytes, Stack size 80 bytes, app_pair.o(i.cb_Host_BLE_PAIR))
-<BR><BR>[Stack]<UL><LI>Max Depth = 5112<LI>Call Chain = cb_Host_BLE_PAIR &rArr; slave_adv_init &rArr; advertising_init &rArr; app_error_handler &rArr; app_error_fault_handler &rArr; Flash_SaveLog &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[23c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;host_isconnect
-<LI><a href="#[256]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;host_disconnect
-<LI><a href="#[1d8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ST_scan_stop
-<LI><a href="#[122]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LED_Start
-<LI><a href="#[25d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;slave_set_adv_name
-<LI><a href="#[25e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;slave_adv_init
-<LI><a href="#[236]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;advertising_stop
-<LI><a href="#[234]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;advertising_start
-<LI><a href="#[242]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Get_MACaddr
-<LI><a href="#[26f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_pair_flash_save
-<LI><a href="#[12b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__2sprintf
-<LI><a href="#[125]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;strlen
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> app_pair.o(i.app_pair_Initialize)
-</UL>
-<P><STRONG><a name="[ff]"></a>CheckByte</STRONG> (Thumb, 22 bytes, Stack size 0 bytes, hal_ble_client.o(i.CheckByte))
-<BR><BR>[Called By]<UL><LI><a href="#[38]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Client_Rx_Process
-<LI><a href="#[101]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Protocol
-</UL>
-
-<P><STRONG><a name="[fe]"></a>CheckLen</STRONG> (Thumb, 24 bytes, Stack size 0 bytes, hal_ble_client.o(i.CheckLen))
-<BR><BR>[Called By]<UL><LI><a href="#[38]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Client_Rx_Process
-</UL>
-
-<P><STRONG><a name="[100]"></a>Discard</STRONG> (Thumb, 60 bytes, Stack size 0 bytes, hal_ble_client.o(i.Discard))
-<BR><BR>[Called By]<UL><LI><a href="#[38]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Client_Rx_Process
-</UL>
-
-<P><STRONG><a name="[101]"></a>Protocol</STRONG> (Thumb, 118 bytes, Stack size 24 bytes, hal_ble_client.o(i.Protocol))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = Protocol
-</UL>
-<BR>[Calls]<UL><LI><a href="#[ff]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;CheckByte
-</UL>
-<BR>[Called By]<UL><LI><a href="#[38]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Client_Rx_Process
-</UL>
-
-<P><STRONG><a name="[10a]"></a>CheckByte</STRONG> (Thumb, 22 bytes, Stack size 0 bytes, hal_ble_host.o(i.CheckByte))
-<BR><BR>[Called By]<UL><LI><a href="#[3a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Host_Rx_Process
-<LI><a href="#[10c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Protocol
-</UL>
-
-<P><STRONG><a name="[109]"></a>CheckLen</STRONG> (Thumb, 24 bytes, Stack size 0 bytes, hal_ble_host.o(i.CheckLen))
-<BR><BR>[Called By]<UL><LI><a href="#[3a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Host_Rx_Process
-</UL>
-
-<P><STRONG><a name="[10b]"></a>Discard</STRONG> (Thumb, 60 bytes, Stack size 0 bytes, hal_ble_host.o(i.Discard))
-<BR><BR>[Called By]<UL><LI><a href="#[3a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Host_Rx_Process
-</UL>
-
-<P><STRONG><a name="[10c]"></a>Protocol</STRONG> (Thumb, 160 bytes, Stack size 280 bytes, hal_ble_host.o(i.Protocol))
-<BR><BR>[Stack]<UL><LI>Max Depth = 872<LI>Call Chain = Protocol &rArr; BLE_Host_Tx_Send &rArr; BLE_Host_Send &rArr; send_bytes_server &rArr; ble_nus_c_string_send &rArr; nrf_ble_gq_item_add &rArr; queue_process &rArr; nrf_memobj_read &rArr; memobj_op
-</UL>
-<BR>[Calls]<UL><LI><a href="#[110]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Host_Tx_Send
-<LI><a href="#[10a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;CheckByte
-</UL>
-<BR>[Called By]<UL><LI><a href="#[3a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Host_Rx_Process
-</UL>
-
-<P><STRONG><a name="[196]"></a>nrf_gpio_pin_write</STRONG> (Thumb, 58 bytes, Stack size 8 bytes, hal_mt.o(i.nrf_gpio_pin_write))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = nrf_gpio_pin_write
-</UL>
-<BR>[Called By]<UL><LI><a href="#[195]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;MT_Init
-<LI><a href="#[197]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;MT_Run
-<LI><a href="#[43]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;MT_TimerCounter
-</UL>
-
-<P><STRONG><a name="[1b8]"></a>Charge</STRONG> (Thumb, 58 bytes, Stack size 0 bytes, hal_battery_nopowerenpin.o(i.Charge))
-<BR><BR>[Called By]<UL><LI><a href="#[1b2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Power_management
-</UL>
-
-<P><STRONG><a name="[1b2]"></a>Power_management</STRONG> (Thumb, 844 bytes, Stack size 24 bytes, hal_battery_nopowerenpin.o(i.Power_management))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = Power_management &rArr; chargeV2P_f
-</UL>
-<BR>[Calls]<UL><LI><a href="#[1b4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;mah2Voltage
-<LI><a href="#[1b6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;interp1
-<LI><a href="#[1b7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;charge_in
-<LI><a href="#[1b3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;chargeV2P_f
-<LI><a href="#[1b5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Voltage2power
-<LI><a href="#[1b9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Voltage2mah
-<LI><a href="#[1b8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Charge
-</UL>
-<BR>[Called By]<UL><LI><a href="#[98]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_battery_Process
-</UL>
-
-<P><STRONG><a name="[1b9]"></a>Voltage2mah</STRONG> (Thumb, 18 bytes, Stack size 0 bytes, hal_battery_nopowerenpin.o(i.Voltage2mah))
-<BR><BR>[Called By]<UL><LI><a href="#[1b2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Power_management
-</UL>
-
-<P><STRONG><a name="[1b5]"></a>Voltage2power</STRONG> (Thumb, 164 bytes, Stack size 24 bytes, hal_battery_nopowerenpin.o(i.Voltage2power))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = Voltage2power
-</UL>
-<BR>[Calls]<UL><LI><a href="#[1b6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;interp1
-<LI><a href="#[20b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;filter
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1b2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Power_management
-</UL>
-
-<P><STRONG><a name="[1b3]"></a>chargeV2P_f</STRONG> (Thumb, 166 bytes, Stack size 24 bytes, hal_battery_nopowerenpin.o(i.chargeV2P_f))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = chargeV2P_f
-</UL>
-<BR>[Calls]<UL><LI><a href="#[2f7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;interp1_chargeV2P
-<LI><a href="#[20b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;filter
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1b2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Power_management
-</UL>
-
-<P><STRONG><a name="[1b7]"></a>charge_in</STRONG> (Thumb, 32 bytes, Stack size 0 bytes, hal_battery_nopowerenpin.o(i.charge_in))
-<BR><BR>[Called By]<UL><LI><a href="#[1b2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Power_management
-</UL>
-
-<P><STRONG><a name="[20b]"></a>filter</STRONG> (Thumb, 38 bytes, Stack size 0 bytes, hal_battery_nopowerenpin.o(i.filter))
-<BR><BR>[Called By]<UL><LI><a href="#[1b3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;chargeV2P_f
-<LI><a href="#[1b5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Voltage2power
-</UL>
-
-<P><STRONG><a name="[98]"></a>hal_battery_Process</STRONG> (Thumb, 680 bytes, Stack size 104 bytes, hal_battery_nopowerenpin.o(i.hal_battery_Process))
-<BR><BR>[Stack]<UL><LI>Max Depth = 784<LI>Call Chain = hal_battery_Process &rArr; Except_TxError &rArr; BLE_Client_Send &rArr; send_bytes_client &rArr; ble_nus_data_send &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[104]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;TIME_GetTicks
-<LI><a href="#[26c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_UpdatePeroid
-<LI><a href="#[22b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_adc_get_value
-<LI><a href="#[124]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Except_TxError
-<LI><a href="#[3bd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ringframe_throw
-<LI><a href="#[3bf]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ringframe_peek
-<LI><a href="#[3be]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ringframe_in
-<LI><a href="#[112]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_f2d
-<LI><a href="#[1b2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Power_management
-<LI><a href="#[103]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;send_bytes_client
-<LI><a href="#[12b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__2sprintf
-</UL>
-<BR>[Address Reference Count : 2]<UL><LI> hal_battery_nopowerenpin.o(i.hal_battery_Process)
-<LI> hal_battery_nopowerenpin.o(i.hal_battery_init)
-</UL>
-<P><STRONG><a name="[1b6]"></a>interp1</STRONG> (Thumb, 610 bytes, Stack size 0 bytes, hal_battery_nopowerenpin.o(i.interp1))
-<BR><BR>[Called By]<UL><LI><a href="#[1b5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Voltage2power
-<LI><a href="#[1b2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Power_management
-</UL>
-
-<P><STRONG><a name="[2f7]"></a>interp1_chargeV2P</STRONG> (Thumb, 610 bytes, Stack size 0 bytes, hal_battery_nopowerenpin.o(i.interp1_chargeV2P))
-<BR><BR>[Called By]<UL><LI><a href="#[1b3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;chargeV2P_f
-</UL>
-
-<P><STRONG><a name="[1b4]"></a>mah2Voltage</STRONG> (Thumb, 18 bytes, Stack size 0 bytes, hal_battery_nopowerenpin.o(i.mah2Voltage))
-<BR><BR>[Called By]<UL><LI><a href="#[1b2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Power_management
-</UL>
-
-<P><STRONG><a name="[9d]"></a>ble_dfu_evt_handler</STRONG> (Thumb, 36 bytes, Stack size 0 bytes, hal_dfu.o(i.ble_dfu_evt_handler))
-<BR>[Address Reference Count : 1]<UL><LI> hal_dfu.o(i.hal_dfu_server_init)
-</UL>
-<P><STRONG><a name="[172]"></a>IsWearShoes</STRONG> (Thumb, 270 bytes, Stack size 72 bytes, hal_wearshoes.o(i.IsWearShoes))
-<BR><BR>[Stack]<UL><LI>Max Depth = 144<LI>Call Chain = IsWearShoes &rArr; __hardfp_sqrt &rArr; _dsqrt &rArr; _double_round
-</UL>
-<BR>[Calls]<UL><LI><a href="#[112]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_f2d
-<LI><a href="#[e4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_d2iz
-<LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
-<LI><a href="#[fb]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy4
-<LI><a href="#[173]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__hardfp_sqrt
-</UL>
-<BR>[Called By]<UL><LI><a href="#[3c3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_wearshoes_determine
-</UL>
-
-<P><STRONG><a name="[9f]"></a>hal_wearshoes_Process</STRONG> (Thumb, 438 bytes, Stack size 16 bytes, hal_wearshoes.o(i.hal_wearshoes_Process))
-<BR><BR>[Stack]<UL><LI>Max Depth = 208<LI>Call Chain = hal_wearshoes_Process &rArr; hal_wearshoes_determine &rArr; IsWearShoes &rArr; __hardfp_sqrt &rArr; _dsqrt &rArr; _double_round
-</UL>
-<BR>[Calls]<UL><LI><a href="#[fd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_Start
-<LI><a href="#[23f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_Resume_unregister_config_param
-<LI><a href="#[263]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_query_config_param_is_ready
-<LI><a href="#[261]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_Resume_config_param
-<LI><a href="#[3c3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_wearshoes_determine
-</UL>
-<BR>[Address Reference Count : 2]<UL><LI> hal_wearshoes.o(i.hal_wearshoes_Init)
-<LI> hal_wearshoes.o(i.hal_wearshoes_Process)
-</UL>
-<P><STRONG><a name="[3c3]"></a>hal_wearshoes_determine</STRONG> (Thumb, 252 bytes, Stack size 48 bytes, hal_wearshoes.o(i.hal_wearshoes_determine))
-<BR><BR>[Stack]<UL><LI>Max Depth = 192<LI>Call Chain = hal_wearshoes_determine &rArr; IsWearShoes &rArr; __hardfp_sqrt &rArr; _dsqrt &rArr; _double_round
-</UL>
-<BR>[Calls]<UL><LI><a href="#[104]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;TIME_GetTicks
-<LI><a href="#[263]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_query_config_param_is_ready
-<LI><a href="#[12a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_get_data_num
-<LI><a href="#[11b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_get_data
-<LI><a href="#[172]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IsWearShoes
-<LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
-</UL>
-<BR>[Called By]<UL><LI><a href="#[9f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_wearshoes_Process
-</UL>
-
-<P><STRONG><a name="[175]"></a>nrf_gpio_pin_write</STRONG> (Thumb, 58 bytes, Stack size 8 bytes, hal_led_ws2812.o(i.nrf_gpio_pin_write))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = nrf_gpio_pin_write
-</UL>
-<BR>[Called By]<UL><LI><a href="#[176]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LED_Init
-<LI><a href="#[174]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LED_Close_Enforce
-<LI><a href="#[41]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_LED_Sleep
-<LI><a href="#[40]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LED_Process
-</UL>
-
-<P><STRONG><a name="[3e1]"></a>checkcec</STRONG> (Thumb, 42 bytes, Stack size 8 bytes, hal_minifds.o(i.checkcec))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = checkcec
-</UL>
-<BR>[Called By]<UL><LI><a href="#[3e4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;minfds_record_add
-<LI><a href="#[3e0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;minfds_Scan
-</UL>
-
-<P><STRONG><a name="[3bc]"></a>jump</STRONG> (Thumb, 36 bytes, Stack size 0 bytes, hal_minifds.o(i.jump))
-<BR><BR>[Called By]<UL><LI><a href="#[3e8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;minfds_record_find_mem
-<LI><a href="#[3e7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;minfds_record_find
-<LI><a href="#[3e6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;minfds_record_delete
-<LI><a href="#[3e4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;minfds_record_add
-<LI><a href="#[3e2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;minfds_gc
-<LI><a href="#[3e0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;minfds_Scan
-<LI><a href="#[3bb]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;get_record_hendaddr
-</UL>
-
-<P><STRONG><a name="[2e4]"></a>bll_imu_get_highest_priority_config_param</STRONG> (Thumb, 748 bytes, Stack size 8 bytes, bll_imu.o(i.bll_imu_get_highest_priority_config_param))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = bll_imu_get_highest_priority_config_param
-</UL>
-<BR>[Called By]<UL><LI><a href="#[2e0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_start_config
-</UL>
-
-<P><STRONG><a name="[2e6]"></a>bll_imu_is_equal</STRONG> (Thumb, 118 bytes, Stack size 8 bytes, bll_imu.o(i.bll_imu_is_equal))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = bll_imu_is_equal
-</UL>
-<BR>[Called By]<UL><LI><a href="#[2e0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bll_imu_start_config
-</UL>
-
-<P><STRONG><a name="[84]"></a>bll_imu_register_config_cb</STRONG> (Thumb, 98 bytes, Stack size 0 bytes, bll_imu.o(i.bll_imu_register_config_cb))
-<BR>[Address Reference Count : 1]<UL><LI> bll_imu.o(i.bll_imu_start_config)
-</UL>
-<P><STRONG><a name="[85]"></a>bll_imu_register_data_notify_cb</STRONG> (Thumb, 58 bytes, Stack size 16 bytes, bll_imu.o(i.bll_imu_register_data_notify_cb))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = bll_imu_register_data_notify_cb
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> bll_imu.o(i.bll_imu_start_config)
-</UL>
-<P><STRONG><a name="[96]"></a>fml_imu_Process</STRONG> (Thumb, 302 bytes, Stack size 16 bytes, fml_imu.o(i.fml_imu_Process))
-<BR><BR>[Stack]<UL><LI>Max Depth = 768<LI>Call Chain = fml_imu_Process &rArr; fml_imu_monitor_sensor_data_process &rArr; monitor_sensor_data &rArr; Except_TxError &rArr; BLE_Client_Send &rArr; send_bytes_client &rArr; ble_nus_data_send &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[104]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;TIME_GetTicks
-<LI><a href="#[106]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_SetHoldOn
-<LI><a href="#[124]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Except_TxError
-<LI><a href="#[39c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qmc6310_get_config_param
-<LI><a href="#[39b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_get_config_param
-<LI><a href="#[39d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_ser_imu_read_data
-<LI><a href="#[39e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_monitor_sensor_data_process
-<LI><a href="#[39f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_intergrated_setting
-<LI><a href="#[2e1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_close
-<LI><a href="#[12b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__2sprintf
-</UL>
-<BR>[Address Reference Count : 3]<UL><LI> fml_imu.o(i.fml_imu_Init)
-<LI> fml_imu.o(i.fml_imu_Process)
-<LI> fml_imu.o(i.fml_imu_start_config)
-</UL>
-<P><STRONG><a name="[39f]"></a>fml_imu_intergrated_setting</STRONG> (Thumb, 1274 bytes, Stack size 48 bytes, fml_imu.o(i.fml_imu_intergrated_setting))
-<BR><BR>[Stack]<UL><LI>Max Depth = 312<LI>Call Chain = fml_imu_intergrated_setting &rArr; drv_lsm_set_mag_odr &rArr; write_hub &rArr; afterdo_hub &rArr; SPI0_Init &rArr; nrf_drv_spi_init &rArr; nrfx_spim_init &rArr; nrfx_prs_acquire &rArr; app_util_critical_region_enter &rArr; sd_nvic_critical_region_enter
-</UL>
-<BR>[Calls]<UL><LI><a href="#[104]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;TIME_GetTicks
-<LI><a href="#[37b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qmc6310_power_off
-<LI><a href="#[321]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_power_off
-<LI><a href="#[3a3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qmc6310_set_mag_odr
-<LI><a href="#[37c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qmc6310_power_on
-<LI><a href="#[3a1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qmc6310_get_mag_odr_flow
-<LI><a href="#[37a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qmc6310_get_mag_id
-<LI><a href="#[360]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_set_timestamp_switch
-<LI><a href="#[35d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_set_timestamp_resolution
-<LI><a href="#[357]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_set_mag_odr
-<LI><a href="#[354]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_set_gry_power_mode
-<LI><a href="#[352]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_set_gry_odr
-<LI><a href="#[350]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_set_gry_fs
-<LI><a href="#[340]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_set_fifo_odr
-<LI><a href="#[33d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_set_acc_power_mode
-<LI><a href="#[33b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_set_acc_odr
-<LI><a href="#[339]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_set_acc_fs
-<LI><a href="#[335]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_self_check_5
-<LI><a href="#[330]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_self_check_4
-<LI><a href="#[32c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_self_check_3
-<LI><a href="#[328]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_self_check_2
-<LI><a href="#[323]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_self_check_1
-<LI><a href="#[322]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_power_on
-<LI><a href="#[3a0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_get_mag_odr_flow
-<LI><a href="#[31f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_get_mag_id
-<LI><a href="#[31d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_get_lsm_id
-<LI><a href="#[3a2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_macro_conversion
-</UL>
-<BR>[Called By]<UL><LI><a href="#[96]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_Process
-</UL>
-
-<P><STRONG><a name="[3a2]"></a>fml_imu_macro_conversion</STRONG> (Thumb, 440 bytes, Stack size 8 bytes, fml_imu.o(i.fml_imu_macro_conversion))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = fml_imu_macro_conversion
-</UL>
-<BR>[Called By]<UL><LI><a href="#[39f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_intergrated_setting
-<LI><a href="#[2ea]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_start_config
-</UL>
-
-<P><STRONG><a name="[39e]"></a>fml_imu_monitor_sensor_data_process</STRONG> (Thumb, 486 bytes, Stack size 48 bytes, fml_imu.o(i.fml_imu_monitor_sensor_data_process))
-<BR><BR>[Stack]<UL><LI>Max Depth = 752<LI>Call Chain = fml_imu_monitor_sensor_data_process &rArr; monitor_sensor_data &rArr; Except_TxError &rArr; BLE_Client_Send &rArr; send_bytes_client &rArr; ble_nus_data_send &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[104]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;TIME_GetTicks
-<LI><a href="#[3a4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;monitor_sensor_no_data
-<LI><a href="#[3a5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;monitor_sensor_data
-<LI><a href="#[2e3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_get_data_num
-<LI><a href="#[2e2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_get_data
-</UL>
-<BR>[Called By]<UL><LI><a href="#[96]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_Process
-</UL>
-
-<P><STRONG><a name="[3a6]"></a>fml_imu_read_data_lsm</STRONG> (Thumb, 312 bytes, Stack size 40 bytes, fml_imu.o(i.fml_imu_read_data_lsm))
-<BR><BR>[Stack]<UL><LI>Max Depth = 112<LI>Call Chain = fml_imu_read_data_lsm &rArr; drv_lsm_get_fifo_group_num &rArr; lsm6ds3tr_c_fifo_wtm_flag_get &rArr; lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[317]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_get_fifo_group_num
-<LI><a href="#[315]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_get_fifo_data
-<LI><a href="#[312]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_get_acc_data
-</UL>
-<BR>[Called By]<UL><LI><a href="#[39d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_ser_imu_read_data
-</UL>
-
-<P><STRONG><a name="[3a7]"></a>fml_imu_read_data_qmc</STRONG> (Thumb, 54 bytes, Stack size 16 bytes, fml_imu.o(i.fml_imu_read_data_qmc))
-<BR><BR>[Stack]<UL><LI>Max Depth = 40<LI>Call Chain = fml_imu_read_data_qmc &rArr; drv_qmc6310_get_mag_data
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3a8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qmc6310_get_mag_data
-</UL>
-<BR>[Called By]<UL><LI><a href="#[39d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_ser_imu_read_data
-</UL>
-
-<P><STRONG><a name="[39d]"></a>hal_ser_imu_read_data</STRONG> (Thumb, 38 bytes, Stack size 16 bytes, fml_imu.o(i.hal_ser_imu_read_data))
-<BR><BR>[Stack]<UL><LI>Max Depth = 128<LI>Call Chain = hal_ser_imu_read_data &rArr; fml_imu_read_data_lsm &rArr; drv_lsm_get_fifo_group_num &rArr; lsm6ds3tr_c_fifo_wtm_flag_get &rArr; lsm6ds3tr_c_read_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3a7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_read_data_qmc
-<LI><a href="#[3a6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_read_data_lsm
-</UL>
-<BR>[Called By]<UL><LI><a href="#[96]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_Process
-</UL>
-
-<P><STRONG><a name="[3a5]"></a>monitor_sensor_data</STRONG> (Thumb, 688 bytes, Stack size 24 bytes, fml_imu.o(i.monitor_sensor_data))
-<BR><BR>[Stack]<UL><LI>Max Depth = 704<LI>Call Chain = monitor_sensor_data &rArr; Except_TxError &rArr; BLE_Client_Send &rArr; send_bytes_client &rArr; ble_nus_data_send &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[37b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qmc6310_power_off
-<LI><a href="#[321]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_power_off
-<LI><a href="#[124]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Except_TxError
-<LI><a href="#[3eb]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Except_SetExceptype
-<LI><a href="#[3ec]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Except_IsError
-<LI><a href="#[3ed]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Except_ClearExceptype
-<LI><a href="#[37c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qmc6310_power_on
-<LI><a href="#[322]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_power_on
-<LI><a href="#[2ea]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_start_config
-</UL>
-<BR>[Called By]<UL><LI><a href="#[39e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_monitor_sensor_data_process
-</UL>
-
-<P><STRONG><a name="[3a4]"></a>monitor_sensor_no_data</STRONG> (Thumb, 186 bytes, Stack size 16 bytes, fml_imu.o(i.monitor_sensor_no_data))
-<BR><BR>[Stack]<UL><LI>Max Depth = 696<LI>Call Chain = monitor_sensor_no_data &rArr; Except_TxError &rArr; BLE_Client_Send &rArr; send_bytes_client &rArr; ble_nus_data_send &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[104]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;TIME_GetTicks
-<LI><a href="#[37b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qmc6310_power_off
-<LI><a href="#[321]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_power_off
-<LI><a href="#[124]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Except_TxError
-<LI><a href="#[37c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qmc6310_power_on
-<LI><a href="#[322]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_power_on
-<LI><a href="#[2ea]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_start_config
-<LI><a href="#[12b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__2sprintf
-</UL>
-<BR>[Called By]<UL><LI><a href="#[39e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_imu_monitor_sensor_data_process
-</UL>
-
-<P><STRONG><a name="[9e]"></a>hal_qma_Porcess</STRONG> (Thumb, 152 bytes, Stack size 8 bytes, hal_qma.o(i.hal_qma_Porcess))
-<BR><BR>[Stack]<UL><LI>Max Depth = 688<LI>Call Chain = hal_qma_Porcess &rArr; Except_TxError &rArr; BLE_Client_Send &rArr; send_bytes_client &rArr; ble_nus_data_send &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[36d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qma_set_acc_odr
-<LI><a href="#[124]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Except_TxError
-<LI><a href="#[1ac]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qma_power_off
-<LI><a href="#[36c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qma_power_on
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> hal_qma.o(i.hal_qma_Init)
-</UL>
-<P><STRONG><a name="[9a]"></a>hal_charge_Process</STRONG> (Thumb, 126 bytes, Stack size 8 bytes, hal_charge.o(i.hal_charge_Process))
-<BR><BR>[Stack]<UL><LI>Max Depth = 456<LI>Call Chain = hal_charge_Process &rArr; hal_send_charge &rArr; BLE_Client_Tx_Send &rArr; BLE_Client_Send &rArr; send_bytes_client &rArr; ble_nus_data_send &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[106]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_SetHoldOn
-<LI><a href="#[1ae]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;GetBatteryPersent
-<LI><a href="#[3c0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;open_one_shel
-<LI><a href="#[2ee]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_send_charge
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1f3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_charge_init
-</UL>
-<BR>[Address Reference Count : 2]<UL><LI> hal_charge.o(i.hal_charge_Process)
-<LI> hal_charge.o(i.hal_charge_init)
-</UL>
-<P><STRONG><a name="[2ee]"></a>hal_send_charge</STRONG> (Thumb, 68 bytes, Stack size 16 bytes, hal_charge.o(i.hal_send_charge))
-<BR><BR>[Stack]<UL><LI>Max Depth = 448<LI>Call Chain = hal_send_charge &rArr; BLE_Client_Tx_Send &rArr; BLE_Client_Send &rArr; send_bytes_client &rArr; ble_nus_data_send &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[107]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;BLE_Client_Tx_Send
-</UL>
-<BR>[Called By]<UL><LI><a href="#[9b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;cb_BLE_Client_R_CHARGE
-<LI><a href="#[9a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;hal_charge_Process
-</UL>
-
-<P><STRONG><a name="[95]"></a>cb_adcSleep</STRONG> (Thumb, 16 bytes, Stack size 8 bytes, fml_adc.o(i.cb_adcSleep))
-<BR><BR>[Stack]<UL><LI>Max Depth = 72<LI>Call Chain = cb_adcSleep &rArr; ADC_Disable &rArr; nrfx_saadc_uninit &rArr; nrfx_saadc_channel_uninit &rArr; nrfx_saadc_limits_set
-</UL>
-<BR>[Calls]<UL><LI><a href="#[eb]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ADC_Disable
-<LI><a href="#[2f2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;TIME_UnRegist
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> fml_adc.o(i.fml_adc_Init)
-</UL>
-<P><STRONG><a name="[94]"></a>cb_adcWakeup</STRONG> (Thumb, 40 bytes, Stack size 8 bytes, fml_adc.o(i.cb_adcWakeup))
-<BR><BR>[Stack]<UL><LI>Max Depth = 88<LI>Call Chain = cb_adcWakeup &rArr; ADC_Sample &rArr; ADC_Disable &rArr; nrfx_saadc_uninit &rArr; nrfx_saadc_channel_uninit &rArr; nrfx_saadc_limits_set
-</UL>
-<BR>[Calls]<UL><LI><a href="#[198]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;TIME_Regist
-<LI><a href="#[f4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ADC_Sample
-<LI><a href="#[ed]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ADC_Enable
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1ee]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fml_adc_Init
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> fml_adc.o(i.fml_adc_Init)
-</UL>
-<P><STRONG><a name="[88]"></a>fml_adc_samplecallback</STRONG> (Thumb, 112 bytes, Stack size 32 bytes, fml_adc.o(i.fml_adc_samplecallback))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = fml_adc_samplecallback
-</UL>
-<BR>[Address Reference Count : 2]<UL><LI> fml_adc.o(i.cb_adcWakeup)
-<LI> fml_adc.o(i.fml_adc_timecallback)
-</UL>
-<P><STRONG><a name="[87]"></a>fml_adc_timecallback</STRONG> (Thumb, 120 bytes, Stack size 40 bytes, fml_adc.o(i.fml_adc_timecallback))
-<BR><BR>[Stack]<UL><LI>Max Depth = 120<LI>Call Chain = fml_adc_timecallback &rArr; ADC_Sample &rArr; ADC_Disable &rArr; nrfx_saadc_uninit &rArr; nrfx_saadc_channel_uninit &rArr; nrfx_saadc_limits_set
-</UL>
-<BR>[Calls]<UL><LI><a href="#[e3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_ui2d
-<LI><a href="#[e1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_ddiv
-<LI><a href="#[113]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_cdrcmple
-<LI><a href="#[f4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ADC_Sample
-</UL>
-<BR>[Address Reference Count : 2]<UL><LI> fml_adc.o(i.cb_adcSleep)
-<LI> fml_adc.o(i.cb_adcWakeup)
-</UL>
-<P><STRONG><a name="[1a1]"></a>quaternConj</STRONG> (Thumb, 38 bytes, Stack size 0 bytes, hal_mahonyahrs.o(i.quaternConj))
-<BR><BR>[Called By]<UL><LI><a href="#[19b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Mahony_update
-</UL>
-
-<P><STRONG><a name="[1a0]"></a>quaternProd</STRONG> (Thumb, 210 bytes, Stack size 0 bytes, hal_mahonyahrs.o(i.quaternProd))
-<BR><BR>[Called By]<UL><LI><a href="#[19b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Mahony_update
-</UL>
-
-<P><STRONG><a name="[4b]"></a>bsp_rtc_config_process</STRONG> (Thumb, 20 bytes, Stack size 8 bytes, bsp_time.o(i.bsp_rtc_config_process))
-<BR><BR>[Stack]<UL><LI>Max Depth = 688<LI>Call Chain = bsp_rtc_config_process &rArr; Except_TxError &rArr; BLE_Client_Send &rArr; send_bytes_client &rArr; ble_nus_data_send &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[265]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_Stop
-<LI><a href="#[124]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Except_TxError
-</UL>
-<BR>[Address Reference Count : 4]<UL><LI> bsp_time.o(i.rtc_sleep)
-<LI> bsp_time.o(i.rtc_tick_handler)
-<LI> bsp_time.o(i.TIME_Init)
-<LI> bsp_time.o(i.bsp_rtc_config_process)
-</UL>
-<P><STRONG><a name="[4d]"></a>bsp_rtc_init_process</STRONG> (Thumb, 20 bytes, Stack size 8 bytes, bsp_time.o(i.bsp_rtc_init_process))
-<BR><BR>[Stack]<UL><LI>Max Depth = 688<LI>Call Chain = bsp_rtc_init_process &rArr; Except_TxError &rArr; BLE_Client_Send &rArr; send_bytes_client &rArr; ble_nus_data_send &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[265]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_Stop
-<LI><a href="#[124]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Except_TxError
-</UL>
-<BR>[Address Reference Count : 2]<UL><LI> bsp_time.o(i.TIME_Init)
-<LI> bsp_time.o(i.bsp_rtc_init_process)
-</UL>
-<P><STRONG><a name="[4c]"></a>cb_timeeWakeup</STRONG> (Thumb, 12 bytes, Stack size 0 bytes, bsp_time.o(i.cb_timeeWakeup))
-<BR>[Address Reference Count : 1]<UL><LI> bsp_time.o(i.TIME_Init)
-</UL>
-<P><STRONG><a name="[1eb]"></a>nrfx_rtc_counter_clear</STRONG> (Thumb, 12 bytes, Stack size 0 bytes, bsp_time.o(i.nrfx_rtc_counter_clear))
-<BR><BR>[Called By]<UL><LI><a href="#[1e8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;TIME_Init
-<LI><a href="#[208]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;rtc_sleep
-<LI><a href="#[4a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;rtc_tick_handler
-</UL>
-
-<P><STRONG><a name="[47e]"></a>nrfx_rtc_counter_get</STRONG> (Thumb, 12 bytes, Stack size 0 bytes, bsp_time.o(i.nrfx_rtc_counter_get))
-<BR><BR>[Called By]<UL><LI><a href="#[208]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;rtc_sleep
-</UL>
-
-<P><STRONG><a name="[4a]"></a>rtc_tick_handler</STRONG> (Thumb, 106 bytes, Stack size 16 bytes, bsp_time.o(i.rtc_tick_handler))
-<BR><BR>[Stack]<UL><LI>Max Depth = 64<LI>Call Chain = rtc_tick_handler &rArr; nrfx_rtc_cc_set &rArr; nrf_rtc_event_clear
-</UL>
-<BR>[Calls]<UL><LI><a href="#[fd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_Start
-<LI><a href="#[1eb]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_rtc_counter_clear
-<LI><a href="#[1ea]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_rtc_cc_set
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> bsp_time.o(i.TIME_Init)
-</UL>
-<P><STRONG><a name="[1bd]"></a>Pwm_init</STRONG> (Thumb, 38 bytes, Stack size 16 bytes, bsp_pwm.o(i.Pwm_init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 100<LI>Call Chain = Pwm_init &rArr; nrfx_pwm_init &rArr; configure_pins
-</UL>
-<BR>[Calls]<UL><LI><a href="#[fd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_Start
-<LI><a href="#[1c1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_pwm_init
-</UL>
-<BR>[Called By]<UL><LI><a href="#[17a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Pwm_Initialize
-</UL>
-
-<P><STRONG><a name="[1be]"></a>SetPwm_ChannelsLoadMode</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, bsp_pwm.o(i.SetPwm_ChannelsLoadMode))
-<BR><BR>[Called By]<UL><LI><a href="#[17b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Pwm_SetComSequence
-</UL>
-
-<P><STRONG><a name="[47]"></a>bsp_pwm_init_process</STRONG> (Thumb, 20 bytes, Stack size 8 bytes, bsp_pwm.o(i.bsp_pwm_init_process))
-<BR><BR>[Stack]<UL><LI>Max Depth = 688<LI>Call Chain = bsp_pwm_init_process &rArr; Except_TxError &rArr; BLE_Client_Send &rArr; send_bytes_client &rArr; ble_nus_data_send &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[265]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_Stop
-<LI><a href="#[124]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Except_TxError
-</UL>
-<BR>[Address Reference Count : 2]<UL><LI> bsp_pwm.o(i.bsp_pwm_init_process)
-<LI> bsp_pwm.o(i.Pwm_init)
-</UL>
-<P><STRONG><a name="[b8]"></a>WatchDog_Process</STRONG> (Thumb, 8 bytes, Stack size 8 bytes, bsp_wdt.o(i.WatchDog_Process))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = WatchDog_Process &rArr; feed_watchdog &rArr; nrfx_wdt_channel_feed
-</UL>
-<BR>[Calls]<UL><LI><a href="#[1b0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;feed_watchdog
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> bsp_wdt.o(i.watchdog_init)
-</UL>
-<P><STRONG><a name="[86]"></a>bsp_wdt_init_process</STRONG> (Thumb, 20 bytes, Stack size 8 bytes, bsp_wdt.o(i.bsp_wdt_init_process))
-<BR><BR>[Stack]<UL><LI>Max Depth = 688<LI>Call Chain = bsp_wdt_init_process &rArr; Except_TxError &rArr; BLE_Client_Send &rArr; send_bytes_client &rArr; ble_nus_data_send &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[265]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_Stop
-<LI><a href="#[124]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Except_TxError
-</UL>
-<BR>[Address Reference Count : 2]<UL><LI> bsp_wdt.o(i.watchdog_init)
-<LI> bsp_wdt.o(i.bsp_wdt_init_process)
-</UL>
-<P><STRONG><a name="[ee]"></a>ADC_Init</STRONG> (Thumb, 124 bytes, Stack size 24 bytes, bsp_adc.o(i.ADC_Init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 56<LI>Call Chain = ADC_Init &rArr; nrfx_saadc_init &rArr; nrf_saadc_event_clear
-</UL>
-<BR>[Calls]<UL><LI><a href="#[ef]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_saadc_init
-<LI><a href="#[f0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_saadc_channel_init
-<LI><a href="#[f1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_saadc_buffer_convert
-</UL>
-<BR>[Called By]<UL><LI><a href="#[ed]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ADC_Enable
-</UL>
-
-<P><STRONG><a name="[37]"></a>adcCallbackFunc</STRONG> (Thumb, 118 bytes, Stack size 32 bytes, bsp_adc.o(i.adcCallbackFunc))
-<BR><BR>[Stack]<UL><LI>Max Depth = 56<LI>Call Chain = adcCallbackFunc &rArr; nrfx_saadc_buffer_convert &rArr; nrf_saadc_event_clear
-</UL>
-<BR>[Calls]<UL><LI><a href="#[f1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_saadc_buffer_convert
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> bsp_adc.o(i.ADC_Init)
-</UL>
-<P><STRONG><a name="[f7]"></a>nrf_gpio_cfg</STRONG> (Thumb, 40 bytes, Stack size 20 bytes, bsp_adc.o(i.nrf_gpio_cfg))
-<BR><BR>[Stack]<UL><LI>Max Depth = 20<LI>Call Chain = nrf_gpio_cfg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[f6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ADC_SetPinChannel
-</UL>
-
-<P><STRONG><a name="[442]"></a>prs_box_get</STRONG> (Thumb, 16 bytes, Stack size 0 bytes, nrfx_prs.o(i.prs_box_get))
-<BR><BR>[Called By]<UL><LI><a href="#[443]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_prs_release
-<LI><a href="#[441]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_prs_acquire
-</UL>
-
-<P><STRONG><a name="[484]"></a>waitForFlashReady</STRONG> (Thumb, 48 bytes, Stack size 8 bytes, bsp_flash.o(i.waitForFlashReady))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = waitForFlashReady &rArr; nrf_pwr_mgmt_run &rArr; app_util_critical_region_enter &rArr; sd_nvic_critical_region_enter
-</UL>
-<BR>[Calls]<UL><LI><a href="#[42f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_pwr_mgmt_run
-</UL>
-<BR>[Called By]<UL><LI><a href="#[3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;sdflash_write
-<LI><a href="#[4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;sdflash_page_erase
-</UL>
-
-<P><STRONG><a name="[1c9]"></a>SPI0_CsCheck</STRONG> (Thumb, 28 bytes, Stack size 0 bytes, bsp_spi.o(i.SPI0_CsCheck))
-<BR><BR>[Called By]<UL><LI><a href="#[1d2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI0_ReadWriteReg
-<LI><a href="#[1d4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI0_ReadWriteData
-<LI><a href="#[1c8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI0_CsSet
-</UL>
-
-<P><STRONG><a name="[1c8]"></a>SPI0_CsSet</STRONG> (Thumb, 48 bytes, Stack size 16 bytes, bsp_spi.o(i.SPI0_CsSet))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = SPI0_CsSet &rArr; nrf_gpio_pin_write
-</UL>
-<BR>[Calls]<UL><LI><a href="#[1ca]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_write
-<LI><a href="#[1c9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI0_CsCheck
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1cb]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI0_Disable
-<LI><a href="#[1d4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI0_ReadWriteData
-</UL>
-
-<P><STRONG><a name="[1d4]"></a>SPI0_ReadWriteData</STRONG> (Thumb, 118 bytes, Stack size 40 bytes, bsp_spi.o(i.SPI0_ReadWriteData))
-<BR><BR>[Stack]<UL><LI>Max Depth = 152<LI>Call Chain = SPI0_ReadWriteData &rArr; nrf_drv_spi_transfer &rArr; nrfx_spim_xfer &rArr; spim_xfer &rArr; nrf_spim_event_clear
-</UL>
-<BR>[Calls]<UL><LI><a href="#[1d5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_drv_spi_transfer
-<LI><a href="#[1c8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI0_CsSet
-<LI><a href="#[1c9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI0_CsCheck
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1d2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI0_ReadWriteReg
-</UL>
-
-<P><STRONG><a name="[1d2]"></a>SPI0_ReadWriteReg</STRONG> (Thumb, 134 bytes, Stack size 40 bytes, bsp_spi.o(i.SPI0_ReadWriteReg))
-<BR><BR>[Stack]<UL><LI>Max Depth = 192<LI>Call Chain = SPI0_ReadWriteReg &rArr; SPI0_ReadWriteData &rArr; nrf_drv_spi_transfer &rArr; nrfx_spim_xfer &rArr; spim_xfer &rArr; nrf_spim_event_clear
-</UL>
-<BR>[Calls]<UL><LI><a href="#[1d4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI0_ReadWriteData
-<LI><a href="#[1c9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI0_CsCheck
-<LI><a href="#[127]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1d3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI0_OnlyWriteReg
-<LI><a href="#[1d1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI0_OnlyReadReg
-</UL>
-
-<P><STRONG><a name="[49]"></a>bsp_spi0_init_process</STRONG> (Thumb, 20 bytes, Stack size 8 bytes, bsp_spi.o(i.bsp_spi0_init_process))
-<BR><BR>[Stack]<UL><LI>Max Depth = 688<LI>Call Chain = bsp_spi0_init_process &rArr; Except_TxError &rArr; BLE_Client_Send &rArr; send_bytes_client &rArr; ble_nus_data_send &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[265]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_Stop
-<LI><a href="#[124]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Except_TxError
-</UL>
-<BR>[Address Reference Count : 2]<UL><LI> bsp_spi.o(i.SPI0_Init)
-<LI> bsp_spi.o(i.bsp_spi0_init_process)
-</UL>
-<P><STRONG><a name="[1d5]"></a>nrf_drv_spi_transfer</STRONG> (Thumb, 50 bytes, Stack size 48 bytes, bsp_spi.o(i.nrf_drv_spi_transfer))
-<BR><BR>[Stack]<UL><LI>Max Depth = 112<LI>Call Chain = nrf_drv_spi_transfer &rArr; nrfx_spim_xfer &rArr; spim_xfer &rArr; nrf_spim_event_clear
-</UL>
-<BR>[Calls]<UL><LI><a href="#[426]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_spim_xfer
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1d4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI0_ReadWriteData
-</UL>
-
-<P><STRONG><a name="[1cd]"></a>nrf_drv_spi_uninit</STRONG> (Thumb, 12 bytes, Stack size 8 bytes, bsp_spi.o(i.nrf_drv_spi_uninit))
-<BR><BR>[Stack]<UL><LI>Max Depth = 60<LI>Call Chain = nrf_drv_spi_uninit &rArr; nrfx_spim_uninit &rArr; nrf_gpio_cfg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[427]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_spim_uninit
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1cb]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI0_Disable
-</UL>
-
-<P><STRONG><a name="[428]"></a>nrf_gpio_cfg</STRONG> (Thumb, 40 bytes, Stack size 20 bytes, bsp_spi.o(i.nrf_gpio_cfg))
-<BR><BR>[Stack]<UL><LI>Max Depth = 20<LI>Call Chain = nrf_gpio_cfg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1d0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_cfg_output
-<LI><a href="#[1cc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_cfg_default
-</UL>
-
-<P><STRONG><a name="[1cc]"></a>nrf_gpio_cfg_default</STRONG> (Thumb, 24 bytes, Stack size 16 bytes, bsp_spi.o(i.nrf_gpio_cfg_default))
-<BR><BR>[Stack]<UL><LI>Max Depth = 36<LI>Call Chain = nrf_gpio_cfg_default &rArr; nrf_gpio_cfg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[428]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_cfg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1cb]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI0_Disable
-</UL>
-
-<P><STRONG><a name="[1d0]"></a>nrf_gpio_cfg_output</STRONG> (Thumb, 24 bytes, Stack size 16 bytes, bsp_spi.o(i.nrf_gpio_cfg_output))
-<BR><BR>[Stack]<UL><LI>Max Depth = 36<LI>Call Chain = nrf_gpio_cfg_output &rArr; nrf_gpio_cfg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[428]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_cfg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1ce]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI0_Init
-</UL>
-
-<P><STRONG><a name="[1ca]"></a>nrf_gpio_pin_write</STRONG> (Thumb, 58 bytes, Stack size 8 bytes, bsp_spi.o(i.nrf_gpio_pin_write))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = nrf_gpio_pin_write
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1c8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI0_CsSet
-</UL>
-
-<P><STRONG><a name="[48]"></a>spi0CallbackFunc</STRONG> (Thumb, 8 bytes, Stack size 0 bytes, bsp_spi.o(i.spi0CallbackFunc))
-<BR>[Address Reference Count : 1]<UL><LI> bsp_spi.o(i.SPI0_Init)
-</UL>
-<P><STRONG><a name="[140]"></a>IIC_BACK_ACK</STRONG> (Thumb, 54 bytes, Stack size 8 bytes, drv_iic_back.o(i.IIC_BACK_ACK))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = IIC_BACK_ACK &rArr; nrfx_coredep_delay_us
-</UL>
-<BR>[Calls]<UL><LI><a href="#[142]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_coredep_delay_us
-<LI><a href="#[141]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_write
-</UL>
-<BR>[Called By]<UL><LI><a href="#[148]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_BACK_ReadBytes
-</UL>
-
-<P><STRONG><a name="[147]"></a>IIC_BACK_NoACK</STRONG> (Thumb, 48 bytes, Stack size 8 bytes, drv_iic_back.o(i.IIC_BACK_NoACK))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = IIC_BACK_NoACK &rArr; nrfx_coredep_delay_us
-</UL>
-<BR>[Calls]<UL><LI><a href="#[142]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_coredep_delay_us
-<LI><a href="#[141]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_write
-</UL>
-<BR>[Called By]<UL><LI><a href="#[148]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_BACK_ReadBytes
-</UL>
-
-<P><STRONG><a name="[14c]"></a>IIC_BACK_RecByte</STRONG> (Thumb, 80 bytes, Stack size 16 bytes, drv_iic_back.o(i.IIC_BACK_RecByte))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = IIC_BACK_RecByte &rArr; nrfx_coredep_delay_us
-</UL>
-<BR>[Calls]<UL><LI><a href="#[142]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_coredep_delay_us
-<LI><a href="#[141]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_write
-<LI><a href="#[14e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_read
-</UL>
-<BR>[Called By]<UL><LI><a href="#[148]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_BACK_ReadBytes
-</UL>
-
-<P><STRONG><a name="[14a]"></a>IIC_BACK_SendByte</STRONG> (Thumb, 84 bytes, Stack size 16 bytes, drv_iic_back.o(i.IIC_BACK_SendByte))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = IIC_BACK_SendByte &rArr; nrfx_coredep_delay_us
-</UL>
-<BR>[Calls]<UL><LI><a href="#[142]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_coredep_delay_us
-<LI><a href="#[141]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_write
-</UL>
-<BR>[Called By]<UL><LI><a href="#[14f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_BACK_WriteBytes
-<LI><a href="#[148]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_BACK_ReadBytes
-</UL>
-
-<P><STRONG><a name="[149]"></a>IIC_BACK_Start</STRONG> (Thumb, 48 bytes, Stack size 8 bytes, drv_iic_back.o(i.IIC_BACK_Start))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = IIC_BACK_Start &rArr; nrfx_coredep_delay_us
-</UL>
-<BR>[Calls]<UL><LI><a href="#[142]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_coredep_delay_us
-<LI><a href="#[141]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_write
-</UL>
-<BR>[Called By]<UL><LI><a href="#[14f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_BACK_WriteBytes
-<LI><a href="#[148]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_BACK_ReadBytes
-</UL>
-
-<P><STRONG><a name="[14d]"></a>IIC_BACK_Stop</STRONG> (Thumb, 48 bytes, Stack size 8 bytes, drv_iic_back.o(i.IIC_BACK_Stop))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = IIC_BACK_Stop &rArr; nrfx_coredep_delay_us
-</UL>
-<BR>[Calls]<UL><LI><a href="#[142]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_coredep_delay_us
-<LI><a href="#[141]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_write
-</UL>
-<BR>[Called By]<UL><LI><a href="#[14f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_BACK_WriteBytes
-<LI><a href="#[148]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_BACK_ReadBytes
-<LI><a href="#[14b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_BACK_WaitACK
-</UL>
-
-<P><STRONG><a name="[14b]"></a>IIC_BACK_WaitACK</STRONG> (Thumb, 74 bytes, Stack size 8 bytes, drv_iic_back.o(i.IIC_BACK_WaitACK))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = IIC_BACK_WaitACK &rArr; IIC_BACK_Stop &rArr; nrfx_coredep_delay_us
-</UL>
-<BR>[Calls]<UL><LI><a href="#[142]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_coredep_delay_us
-<LI><a href="#[141]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_write
-<LI><a href="#[14e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_read
-<LI><a href="#[14d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_BACK_Stop
-</UL>
-<BR>[Called By]<UL><LI><a href="#[14f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_BACK_WriteBytes
-<LI><a href="#[148]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_BACK_ReadBytes
-</UL>
-
-<P><STRONG><a name="[144]"></a>nrf_gpio_cfg</STRONG> (Thumb, 40 bytes, Stack size 20 bytes, drv_iic_back.o(i.nrf_gpio_cfg))
-<BR><BR>[Stack]<UL><LI>Max Depth = 20<LI>Call Chain = nrf_gpio_cfg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[143]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_BACK_Init
-</UL>
-
-<P><STRONG><a name="[145]"></a>nrf_gpio_cfg_watcher</STRONG> (Thumb, 30 bytes, Stack size 0 bytes, drv_iic_back.o(i.nrf_gpio_cfg_watcher))
-<BR><BR>[Called By]<UL><LI><a href="#[143]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_BACK_Init
-</UL>
-
-<P><STRONG><a name="[14e]"></a>nrf_gpio_pin_read</STRONG> (Thumb, 24 bytes, Stack size 0 bytes, drv_iic_back.o(i.nrf_gpio_pin_read))
-<BR><BR>[Called By]<UL><LI><a href="#[14b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_BACK_WaitACK
-<LI><a href="#[14c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_BACK_RecByte
-</UL>
-
-<P><STRONG><a name="[146]"></a>nrf_gpio_pin_set</STRONG> (Thumb, 22 bytes, Stack size 0 bytes, drv_iic_back.o(i.nrf_gpio_pin_set))
-<BR><BR>[Called By]<UL><LI><a href="#[143]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_BACK_Init
-<LI><a href="#[141]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_write
-</UL>
-
-<P><STRONG><a name="[141]"></a>nrf_gpio_pin_write</STRONG> (Thumb, 42 bytes, Stack size 16 bytes, drv_iic_back.o(i.nrf_gpio_pin_write))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = nrf_gpio_pin_write
-</UL>
-<BR>[Calls]<UL><LI><a href="#[146]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_set
-</UL>
-<BR>[Called By]<UL><LI><a href="#[14b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_BACK_WaitACK
-<LI><a href="#[14d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_BACK_Stop
-<LI><a href="#[149]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_BACK_Start
-<LI><a href="#[14a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_BACK_SendByte
-<LI><a href="#[14c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_BACK_RecByte
-<LI><a href="#[147]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_BACK_NoACK
-<LI><a href="#[140]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_BACK_ACK
-</UL>
-
-<P><STRONG><a name="[142]"></a>nrfx_coredep_delay_us</STRONG> (Thumb, 20 bytes, Stack size 16 bytes, drv_iic_back.o(i.nrfx_coredep_delay_us))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = nrfx_coredep_delay_us
-</UL>
-<BR>[Called By]<UL><LI><a href="#[14b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_BACK_WaitACK
-<LI><a href="#[14d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_BACK_Stop
-<LI><a href="#[149]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_BACK_Start
-<LI><a href="#[14a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_BACK_SendByte
-<LI><a href="#[14c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_BACK_RecByte
-<LI><a href="#[147]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_BACK_NoACK
-<LI><a href="#[140]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_BACK_ACK
-</UL>
-
-<P><STRONG><a name="[180]"></a>LSM_IIC_ACK</STRONG> (Thumb, 54 bytes, Stack size 8 bytes, drv_lsm6ds3tr_c.o(i.LSM_IIC_ACK))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = LSM_IIC_ACK &rArr; nrfx_coredep_delay_us
-</UL>
-<BR>[Calls]<UL><LI><a href="#[182]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_coredep_delay_us
-<LI><a href="#[181]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_write
-</UL>
-<BR>[Called By]<UL><LI><a href="#[189]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LSM_IIC_ReadBytes
-</UL>
-
-<P><STRONG><a name="[183]"></a>LSM_IIC_Init</STRONG> (Thumb, 86 bytes, Stack size 16 bytes, drv_lsm6ds3tr_c.o(i.LSM_IIC_Init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 52<LI>Call Chain = LSM_IIC_Init &rArr; nrf_gpio_cfg_output &rArr; nrf_gpio_cfg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[181]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_write
-<LI><a href="#[186]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_set
-<LI><a href="#[185]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_cfg_watcher
-<LI><a href="#[187]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_cfg_output
-<LI><a href="#[184]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_cfg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[471]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;predo_hub
-</UL>
-
-<P><STRONG><a name="[188]"></a>LSM_IIC_NoACK</STRONG> (Thumb, 48 bytes, Stack size 8 bytes, drv_lsm6ds3tr_c.o(i.LSM_IIC_NoACK))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = LSM_IIC_NoACK &rArr; nrfx_coredep_delay_us
-</UL>
-<BR>[Calls]<UL><LI><a href="#[182]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_coredep_delay_us
-<LI><a href="#[181]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_write
-</UL>
-<BR>[Called By]<UL><LI><a href="#[189]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LSM_IIC_ReadBytes
-</UL>
-
-<P><STRONG><a name="[189]"></a>LSM_IIC_ReadBytes</STRONG> (Thumb, 118 bytes, Stack size 24 bytes, drv_lsm6ds3tr_c.o(i.LSM_IIC_ReadBytes))
-<BR><BR>[Stack]<UL><LI>Max Depth = 56<LI>Call Chain = LSM_IIC_ReadBytes &rArr; LSM_IIC_WaitACK &rArr; LSM_IIC_Stop &rArr; nrfx_coredep_delay_us
-</UL>
-<BR>[Calls]<UL><LI><a href="#[18c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LSM_IIC_WaitACK
-<LI><a href="#[18e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LSM_IIC_Stop
-<LI><a href="#[18a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LSM_IIC_Start
-<LI><a href="#[18b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LSM_IIC_SendByte
-<LI><a href="#[18d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LSM_IIC_RecByte
-<LI><a href="#[188]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LSM_IIC_NoACK
-<LI><a href="#[180]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LSM_IIC_ACK
-</UL>
-<BR>[Called By]<UL><LI><a href="#[320]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;read_hub
-</UL>
-
-<P><STRONG><a name="[18d]"></a>LSM_IIC_RecByte</STRONG> (Thumb, 80 bytes, Stack size 16 bytes, drv_lsm6ds3tr_c.o(i.LSM_IIC_RecByte))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = LSM_IIC_RecByte &rArr; nrfx_coredep_delay_us
-</UL>
-<BR>[Calls]<UL><LI><a href="#[182]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_coredep_delay_us
-<LI><a href="#[181]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_write
-<LI><a href="#[18f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_read
-</UL>
-<BR>[Called By]<UL><LI><a href="#[189]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LSM_IIC_ReadBytes
-</UL>
-
-<P><STRONG><a name="[18b]"></a>LSM_IIC_SendByte</STRONG> (Thumb, 84 bytes, Stack size 16 bytes, drv_lsm6ds3tr_c.o(i.LSM_IIC_SendByte))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = LSM_IIC_SendByte &rArr; nrfx_coredep_delay_us
-</UL>
-<BR>[Calls]<UL><LI><a href="#[182]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_coredep_delay_us
-<LI><a href="#[181]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_write
-</UL>
-<BR>[Called By]<UL><LI><a href="#[192]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LSM_IIC_WriteBytes
-<LI><a href="#[189]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LSM_IIC_ReadBytes
-</UL>
-
-<P><STRONG><a name="[18a]"></a>LSM_IIC_Start</STRONG> (Thumb, 48 bytes, Stack size 8 bytes, drv_lsm6ds3tr_c.o(i.LSM_IIC_Start))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = LSM_IIC_Start &rArr; nrfx_coredep_delay_us
-</UL>
-<BR>[Calls]<UL><LI><a href="#[182]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_coredep_delay_us
-<LI><a href="#[181]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_write
-</UL>
-<BR>[Called By]<UL><LI><a href="#[192]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LSM_IIC_WriteBytes
-<LI><a href="#[189]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LSM_IIC_ReadBytes
-</UL>
-
-<P><STRONG><a name="[18e]"></a>LSM_IIC_Stop</STRONG> (Thumb, 48 bytes, Stack size 8 bytes, drv_lsm6ds3tr_c.o(i.LSM_IIC_Stop))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = LSM_IIC_Stop &rArr; nrfx_coredep_delay_us
-</UL>
-<BR>[Calls]<UL><LI><a href="#[182]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_coredep_delay_us
-<LI><a href="#[181]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_write
-</UL>
-<BR>[Called By]<UL><LI><a href="#[192]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LSM_IIC_WriteBytes
-<LI><a href="#[18c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LSM_IIC_WaitACK
-<LI><a href="#[189]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LSM_IIC_ReadBytes
-</UL>
-
-<P><STRONG><a name="[190]"></a>LSM_IIC_UnInit</STRONG> (Thumb, 28 bytes, Stack size 8 bytes, drv_lsm6ds3tr_c.o(i.LSM_IIC_UnInit))
-<BR><BR>[Stack]<UL><LI>Max Depth = 44<LI>Call Chain = LSM_IIC_UnInit &rArr; nrf_gpio_cfg_default &rArr; nrf_gpio_cfg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[191]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_cfg_default
-</UL>
-<BR>[Called By]<UL><LI><a href="#[237]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;afterdo_hub
-</UL>
-
-<P><STRONG><a name="[18c]"></a>LSM_IIC_WaitACK</STRONG> (Thumb, 74 bytes, Stack size 8 bytes, drv_lsm6ds3tr_c.o(i.LSM_IIC_WaitACK))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = LSM_IIC_WaitACK &rArr; LSM_IIC_Stop &rArr; nrfx_coredep_delay_us
-</UL>
-<BR>[Calls]<UL><LI><a href="#[182]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_coredep_delay_us
-<LI><a href="#[181]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_write
-<LI><a href="#[18f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_read
-<LI><a href="#[18e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LSM_IIC_Stop
-</UL>
-<BR>[Called By]<UL><LI><a href="#[192]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LSM_IIC_WriteBytes
-<LI><a href="#[189]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LSM_IIC_ReadBytes
-</UL>
-
-<P><STRONG><a name="[192]"></a>LSM_IIC_WriteBytes</STRONG> (Thumb, 88 bytes, Stack size 24 bytes, drv_lsm6ds3tr_c.o(i.LSM_IIC_WriteBytes))
-<BR><BR>[Stack]<UL><LI>Max Depth = 56<LI>Call Chain = LSM_IIC_WriteBytes &rArr; LSM_IIC_WaitACK &rArr; LSM_IIC_Stop &rArr; nrfx_coredep_delay_us
-</UL>
-<BR>[Calls]<UL><LI><a href="#[18c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LSM_IIC_WaitACK
-<LI><a href="#[18e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LSM_IIC_Stop
-<LI><a href="#[18a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LSM_IIC_Start
-<LI><a href="#[18b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LSM_IIC_SendByte
-</UL>
-<BR>[Called By]<UL><LI><a href="#[337]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;write_hub
-</UL>
-
-<P><STRONG><a name="[237]"></a>afterdo_hub</STRONG> (Thumb, 74 bytes, Stack size 16 bytes, drv_lsm6ds3tr_c.o(i.afterdo_hub))
-<BR><BR>[Stack]<UL><LI>Max Depth = 216<LI>Call Chain = afterdo_hub &rArr; SPI0_Init &rArr; nrf_drv_spi_init &rArr; nrfx_spim_init &rArr; nrfx_prs_acquire &rArr; app_util_critical_region_enter &rArr; sd_nvic_critical_region_enter
-</UL>
-<BR>[Calls]<UL><LI><a href="#[1ce]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI0_Init
-<LI><a href="#[190]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LSM_IIC_UnInit
-<LI><a href="#[23a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_sh_pin_mode_set
-<LI><a href="#[23b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_sh_pin_mode_get
-<LI><a href="#[238]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_sh_pass_through_set
-<LI><a href="#[239]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_sh_pass_through_get
-</UL>
-<BR>[Called By]<UL><LI><a href="#[337]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;write_hub
-<LI><a href="#[320]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;read_hub
-</UL>
-
-<P><STRONG><a name="[8e]"></a>drv_lsm_spi_error_report_process</STRONG> (Thumb, 78 bytes, Stack size 40 bytes, drv_lsm6ds3tr_c.o(i.drv_lsm_spi_error_report_process))
-<BR><BR>[Stack]<UL><LI>Max Depth = 720<LI>Call Chain = drv_lsm_spi_error_report_process &rArr; Except_TxError &rArr; BLE_Client_Send &rArr; send_bytes_client &rArr; ble_nus_data_send &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[124]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Except_TxError
-<LI><a href="#[12b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__2sprintf
-<LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> drv_lsm6ds3tr_c.o(i.drv_lsm_Init)
-</UL>
-<P><STRONG><a name="[338]"></a>nrf_delay_ms</STRONG> (Thumb, 28 bytes, Stack size 8 bytes, drv_lsm6ds3tr_c.o(i.nrf_delay_ms))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = nrf_delay_ms &rArr; nrfx_coredep_delay_us
-</UL>
-<BR>[Calls]<UL><LI><a href="#[182]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_coredep_delay_us
-</UL>
-<BR>[Called By]<UL><LI><a href="#[336]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_selfcheck_mag
-<LI><a href="#[310]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;platform_delay_ms
-</UL>
-
-<P><STRONG><a name="[184]"></a>nrf_gpio_cfg</STRONG> (Thumb, 40 bytes, Stack size 20 bytes, drv_lsm6ds3tr_c.o(i.nrf_gpio_cfg))
-<BR><BR>[Stack]<UL><LI>Max Depth = 20<LI>Call Chain = nrf_gpio_cfg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[321]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_power_off
-<LI><a href="#[322]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_power_on
-<LI><a href="#[30f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_Init
-<LI><a href="#[187]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_cfg_output
-<LI><a href="#[191]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_cfg_default
-<LI><a href="#[183]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LSM_IIC_Init
-</UL>
-
-<P><STRONG><a name="[191]"></a>nrf_gpio_cfg_default</STRONG> (Thumb, 24 bytes, Stack size 16 bytes, drv_lsm6ds3tr_c.o(i.nrf_gpio_cfg_default))
-<BR><BR>[Stack]<UL><LI>Max Depth = 36<LI>Call Chain = nrf_gpio_cfg_default &rArr; nrf_gpio_cfg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[184]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_cfg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[190]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LSM_IIC_UnInit
-</UL>
-
-<P><STRONG><a name="[187]"></a>nrf_gpio_cfg_output</STRONG> (Thumb, 24 bytes, Stack size 16 bytes, drv_lsm6ds3tr_c.o(i.nrf_gpio_cfg_output))
-<BR><BR>[Stack]<UL><LI>Max Depth = 36<LI>Call Chain = nrf_gpio_cfg_output &rArr; nrf_gpio_cfg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[184]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_cfg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[321]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_power_off
-<LI><a href="#[30f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_Init
-<LI><a href="#[183]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LSM_IIC_Init
-</UL>
-
-<P><STRONG><a name="[185]"></a>nrf_gpio_cfg_watcher</STRONG> (Thumb, 30 bytes, Stack size 0 bytes, drv_lsm6ds3tr_c.o(i.nrf_gpio_cfg_watcher))
-<BR><BR>[Called By]<UL><LI><a href="#[183]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LSM_IIC_Init
-</UL>
-
-<P><STRONG><a name="[18f]"></a>nrf_gpio_pin_read</STRONG> (Thumb, 24 bytes, Stack size 0 bytes, drv_lsm6ds3tr_c.o(i.nrf_gpio_pin_read))
-<BR><BR>[Called By]<UL><LI><a href="#[18c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LSM_IIC_WaitACK
-<LI><a href="#[18d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LSM_IIC_RecByte
-</UL>
-
-<P><STRONG><a name="[186]"></a>nrf_gpio_pin_set</STRONG> (Thumb, 22 bytes, Stack size 0 bytes, drv_lsm6ds3tr_c.o(i.nrf_gpio_pin_set))
-<BR><BR>[Called By]<UL><LI><a href="#[181]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_write
-<LI><a href="#[183]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LSM_IIC_Init
-</UL>
-
-<P><STRONG><a name="[181]"></a>nrf_gpio_pin_write</STRONG> (Thumb, 42 bytes, Stack size 16 bytes, drv_lsm6ds3tr_c.o(i.nrf_gpio_pin_write))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = nrf_gpio_pin_write
-</UL>
-<BR>[Calls]<UL><LI><a href="#[186]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_set
-</UL>
-<BR>[Called By]<UL><LI><a href="#[321]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_power_off
-<LI><a href="#[322]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_power_on
-<LI><a href="#[30f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_Init
-<LI><a href="#[18c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LSM_IIC_WaitACK
-<LI><a href="#[18e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LSM_IIC_Stop
-<LI><a href="#[18a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LSM_IIC_Start
-<LI><a href="#[18b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LSM_IIC_SendByte
-<LI><a href="#[18d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LSM_IIC_RecByte
-<LI><a href="#[188]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LSM_IIC_NoACK
-<LI><a href="#[183]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LSM_IIC_Init
-<LI><a href="#[180]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LSM_IIC_ACK
-</UL>
-
-<P><STRONG><a name="[182]"></a>nrfx_coredep_delay_us</STRONG> (Thumb, 20 bytes, Stack size 16 bytes, drv_lsm6ds3tr_c.o(i.nrfx_coredep_delay_us))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = nrfx_coredep_delay_us
-</UL>
-<BR>[Called By]<UL><LI><a href="#[31b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;platform_delay_us
-<LI><a href="#[338]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_delay_ms
-<LI><a href="#[18c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LSM_IIC_WaitACK
-<LI><a href="#[18e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LSM_IIC_Stop
-<LI><a href="#[18a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LSM_IIC_Start
-<LI><a href="#[18b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LSM_IIC_SendByte
-<LI><a href="#[18d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LSM_IIC_RecByte
-<LI><a href="#[188]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LSM_IIC_NoACK
-<LI><a href="#[180]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LSM_IIC_ACK
-</UL>
-
-<P><STRONG><a name="[310]"></a>platform_delay_ms</STRONG> (Thumb, 12 bytes, Stack size 8 bytes, drv_lsm6ds3tr_c.o(i.platform_delay_ms))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = platform_delay_ms &rArr; nrf_delay_ms &rArr; nrfx_coredep_delay_us
-</UL>
-<BR>[Calls]<UL><LI><a href="#[338]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_delay_ms
-</UL>
-<BR>[Called By]<UL><LI><a href="#[30f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_Init
-<LI><a href="#[311]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;self_check
-</UL>
-
-<P><STRONG><a name="[31b]"></a>platform_delay_us</STRONG> (Thumb, 12 bytes, Stack size 8 bytes, drv_lsm6ds3tr_c.o(i.platform_delay_us))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = platform_delay_us &rArr; nrfx_coredep_delay_us
-</UL>
-<BR>[Calls]<UL><LI><a href="#[182]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_coredep_delay_us
-</UL>
-<BR>[Called By]<UL><LI><a href="#[317]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_get_fifo_group_num
-</UL>
-
-<P><STRONG><a name="[8c]"></a>platform_read</STRONG> (Thumb, 52 bytes, Stack size 32 bytes, drv_lsm6ds3tr_c.o(i.platform_read))
-<BR><BR>[Stack]<UL><LI>Max Depth = 248<LI>Call Chain = platform_read &rArr; SPI0_OnlyReadReg &rArr; SPI0_ReadWriteReg &rArr; SPI0_ReadWriteData &rArr; nrf_drv_spi_transfer &rArr; nrfx_spim_xfer &rArr; spim_xfer &rArr; nrf_spim_event_clear
-</UL>
-<BR>[Calls]<UL><LI><a href="#[1d1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI0_OnlyReadReg
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> drv_lsm6ds3tr_c.o(i.drv_lsm_Init)
-</UL>
-<P><STRONG><a name="[8d]"></a>platform_write</STRONG> (Thumb, 46 bytes, Stack size 24 bytes, drv_lsm6ds3tr_c.o(i.platform_write))
-<BR><BR>[Stack]<UL><LI>Max Depth = 240<LI>Call Chain = platform_write &rArr; SPI0_OnlyWriteReg &rArr; SPI0_ReadWriteReg &rArr; SPI0_ReadWriteData &rArr; nrf_drv_spi_transfer &rArr; nrfx_spim_xfer &rArr; spim_xfer &rArr; nrf_spim_event_clear
-</UL>
-<BR>[Calls]<UL><LI><a href="#[1d3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI0_OnlyWriteReg
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> drv_lsm6ds3tr_c.o(i.drv_lsm_Init)
-</UL>
-<P><STRONG><a name="[471]"></a>predo_hub</STRONG> (Thumb, 242 bytes, Stack size 32 bytes, drv_lsm6ds3tr_c.o(i.predo_hub))
-<BR><BR>[Stack]<UL><LI>Max Depth = 100<LI>Call Chain = predo_hub &rArr; SPI0_Disable &rArr; nrf_drv_spi_uninit &rArr; nrfx_spim_uninit &rArr; nrf_gpio_cfg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[1cb]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI0_Disable
-<LI><a href="#[183]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LSM_IIC_Init
-<LI><a href="#[326]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_xl_data_rate_set
-<LI><a href="#[33c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_xl_data_rate_get
-<LI><a href="#[23a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_sh_pin_mode_set
-<LI><a href="#[23b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_sh_pin_mode_get
-<LI><a href="#[238]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_sh_pass_through_set
-<LI><a href="#[239]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_sh_pass_through_get
-<LI><a href="#[35c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_sh_master_set
-<LI><a href="#[3de]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_sh_master_get
-<LI><a href="#[319]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_read_reg
-<LI><a href="#[32e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_gy_data_rate_set
-<LI><a href="#[353]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_gy_data_rate_get
-<LI><a href="#[35b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_func_en_set
-<LI><a href="#[34e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_fifo_data_rate_set
-<LI><a href="#[34f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lsm6ds3tr_c_fifo_data_rate_get
-</UL>
-<BR>[Called By]<UL><LI><a href="#[337]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;write_hub
-<LI><a href="#[320]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;read_hub
-</UL>
-
-<P><STRONG><a name="[320]"></a>read_hub</STRONG> (Thumb, 64 bytes, Stack size 24 bytes, drv_lsm6ds3tr_c.o(i.read_hub))
-<BR><BR>[Stack]<UL><LI>Max Depth = 240<LI>Call Chain = read_hub &rArr; afterdo_hub &rArr; SPI0_Init &rArr; nrf_drv_spi_init &rArr; nrfx_spim_init &rArr; nrfx_prs_acquire &rArr; app_util_critical_region_enter &rArr; sd_nvic_critical_region_enter
-</UL>
-<BR>[Calls]<UL><LI><a href="#[471]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;predo_hub
-<LI><a href="#[237]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;afterdo_hub
-<LI><a href="#[189]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LSM_IIC_ReadBytes
-</UL>
-<BR>[Called By]<UL><LI><a href="#[336]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_selfcheck_mag
-<LI><a href="#[357]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_set_mag_odr
-<LI><a href="#[31f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_get_mag_id
-</UL>
-
-<P><STRONG><a name="[311]"></a>self_check</STRONG> (Thumb, 106 bytes, Stack size 8 bytes, drv_lsm6ds3tr_c.o(i.self_check))
-<BR><BR>[Stack]<UL><LI>Max Depth = 80<LI>Call Chain = self_check &rArr; drv_lsm_self_check_5 &rArr; lsm6ds3tr_c_sh_pass_through_set &rArr; lsm6ds3tr_c_write_reg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[335]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_self_check_5
-<LI><a href="#[330]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_self_check_4
-<LI><a href="#[32c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_self_check_3
-<LI><a href="#[328]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_self_check_2
-<LI><a href="#[323]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_self_check_1
-<LI><a href="#[310]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;platform_delay_ms
-</UL>
-<BR>[Called By]<UL><LI><a href="#[30f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_Init
-</UL>
-
-<P><STRONG><a name="[337]"></a>write_hub</STRONG> (Thumb, 64 bytes, Stack size 24 bytes, drv_lsm6ds3tr_c.o(i.write_hub))
-<BR><BR>[Stack]<UL><LI>Max Depth = 240<LI>Call Chain = write_hub &rArr; afterdo_hub &rArr; SPI0_Init &rArr; nrf_drv_spi_init &rArr; nrfx_spim_init &rArr; nrfx_prs_acquire &rArr; app_util_critical_region_enter &rArr; sd_nvic_critical_region_enter
-</UL>
-<BR>[Calls]<UL><LI><a href="#[471]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;predo_hub
-<LI><a href="#[237]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;afterdo_hub
-<LI><a href="#[192]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LSM_IIC_WriteBytes
-</UL>
-<BR>[Called By]<UL><LI><a href="#[336]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_selfcheck_mag
-<LI><a href="#[357]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_lsm_set_mag_odr
-</UL>
-
-<P><STRONG><a name="[91]"></a>drv_qmc_iic_error_report_process</STRONG> (Thumb, 78 bytes, Stack size 40 bytes, drv_qmc6310_v2.o(i.drv_qmc_iic_error_report_process))
-<BR><BR>[Stack]<UL><LI>Max Depth = 720<LI>Call Chain = drv_qmc_iic_error_report_process &rArr; Except_TxError &rArr; BLE_Client_Send &rArr; send_bytes_client &rArr; ble_nus_data_send &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[124]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Except_TxError
-<LI><a href="#[12b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__2sprintf
-<LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> drv_qmc6310_v2.o(i.drv_qmc6310_Init)
-</UL>
-<P><STRONG><a name="[378]"></a>nrf_delay_ms</STRONG> (Thumb, 42 bytes, Stack size 24 bytes, drv_qmc6310_v2.o(i.nrf_delay_ms))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = nrf_delay_ms
-</UL>
-<BR>[Called By]<UL><LI><a href="#[37d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qmc6310_selfcheck_mag
-<LI><a href="#[374]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qmc6310_Init
-</UL>
-
-<P><STRONG><a name="[375]"></a>nrf_gpio_cfg</STRONG> (Thumb, 40 bytes, Stack size 20 bytes, drv_qmc6310_v2.o(i.nrf_gpio_cfg))
-<BR><BR>[Stack]<UL><LI>Max Depth = 20<LI>Call Chain = nrf_gpio_cfg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[37b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qmc6310_power_off
-<LI><a href="#[374]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qmc6310_Init
-<LI><a href="#[376]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_cfg_output
-</UL>
-
-<P><STRONG><a name="[376]"></a>nrf_gpio_cfg_output</STRONG> (Thumb, 24 bytes, Stack size 16 bytes, drv_qmc6310_v2.o(i.nrf_gpio_cfg_output))
-<BR><BR>[Stack]<UL><LI>Max Depth = 36<LI>Call Chain = nrf_gpio_cfg_output &rArr; nrf_gpio_cfg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[375]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_cfg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[37b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qmc6310_power_off
-<LI><a href="#[374]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qmc6310_Init
-</UL>
-
-<P><STRONG><a name="[377]"></a>nrf_gpio_pin_write</STRONG> (Thumb, 58 bytes, Stack size 8 bytes, drv_qmc6310_v2.o(i.nrf_gpio_pin_write))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = nrf_gpio_pin_write
-</UL>
-<BR>[Called By]<UL><LI><a href="#[37b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qmc6310_power_off
-<LI><a href="#[37c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qmc6310_power_on
-<LI><a href="#[374]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qmc6310_Init
-</UL>
-
-<P><STRONG><a name="[92]"></a>platform_read</STRONG> (Thumb, 44 bytes, Stack size 24 bytes, drv_qmc6310_v2.o(i.platform_read))
-<BR><BR>[Stack]<UL><LI>Max Depth = 80<LI>Call Chain = platform_read &rArr; IIC_BACK_ReadBytes &rArr; IIC_BACK_WaitACK &rArr; IIC_BACK_Stop &rArr; nrfx_coredep_delay_us
-</UL>
-<BR>[Calls]<UL><LI><a href="#[148]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_BACK_ReadBytes
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> drv_qmc6310_v2.o(i.drv_qmc6310_Init)
-</UL>
-<P><STRONG><a name="[93]"></a>platform_write</STRONG> (Thumb, 44 bytes, Stack size 24 bytes, drv_qmc6310_v2.o(i.platform_write))
-<BR><BR>[Stack]<UL><LI>Max Depth = 80<LI>Call Chain = platform_write &rArr; IIC_BACK_WriteBytes &rArr; IIC_BACK_WaitACK &rArr; IIC_BACK_Stop &rArr; nrfx_coredep_delay_us
-</UL>
-<BR>[Calls]<UL><LI><a href="#[14f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_BACK_WriteBytes
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> drv_qmc6310_v2.o(i.drv_qmc6310_Init)
-</UL>
-<P><STRONG><a name="[379]"></a>qmc6310_get_chipid</STRONG> (Thumb, 44 bytes, Stack size 16 bytes, drv_qmc6310_v2.o(i.qmc6310_get_chipid))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = qmc6310_get_chipid
-</UL>
-<BR>[Called By]<UL><LI><a href="#[37a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qmc6310_get_mag_id
-<LI><a href="#[374]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qmc6310_Init
-</UL>
-
-<P><STRONG><a name="[369]"></a>get_accel_x</STRONG> (Thumb, 34 bytes, Stack size 16 bytes, drv_qma7981.o(i.get_accel_x))
-<BR><BR>[Stack]<UL><LI>Max Depth = 40<LI>Call Chain = get_accel_x &rArr; read_accel_axis
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3b9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;read_accel_axis
-</UL>
-<BR>[Called By]<UL><LI><a href="#[11a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qma_get_acc_data
-</UL>
-
-<P><STRONG><a name="[36a]"></a>get_accel_y</STRONG> (Thumb, 34 bytes, Stack size 16 bytes, drv_qma7981.o(i.get_accel_y))
-<BR><BR>[Stack]<UL><LI>Max Depth = 40<LI>Call Chain = get_accel_y &rArr; read_accel_axis
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3b9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;read_accel_axis
-</UL>
-<BR>[Called By]<UL><LI><a href="#[11a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qma_get_acc_data
-</UL>
-
-<P><STRONG><a name="[36b]"></a>get_accel_z</STRONG> (Thumb, 34 bytes, Stack size 16 bytes, drv_qma7981.o(i.get_accel_z))
-<BR><BR>[Stack]<UL><LI>Max Depth = 40<LI>Call Chain = get_accel_z &rArr; read_accel_axis
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3b9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;read_accel_axis
-</UL>
-<BR>[Called By]<UL><LI><a href="#[11a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qma_get_acc_data
-</UL>
-
-<P><STRONG><a name="[373]"></a>get_bandwidth</STRONG> (Thumb, 50 bytes, Stack size 24 bytes, drv_qma7981.o(i.get_bandwidth))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = get_bandwidth
-</UL>
-<BR>[Called By]<UL><LI><a href="#[36d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qma_set_acc_odr
-</UL>
-
-<P><STRONG><a name="[3ba]"></a>get_bit</STRONG> (Thumb, 24 bytes, Stack size 8 bytes, drv_qma7981.o(i.get_bit))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = get_bit
-</UL>
-<BR>[Called By]<UL><LI><a href="#[36f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;get_mode
-</UL>
-
-<P><STRONG><a name="[371]"></a>get_clock_freq</STRONG> (Thumb, 44 bytes, Stack size 24 bytes, drv_qma7981.o(i.get_clock_freq))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = get_clock_freq
-</UL>
-<BR>[Called By]<UL><LI><a href="#[36d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qma_set_acc_odr
-</UL>
-
-<P><STRONG><a name="[36f]"></a>get_mode</STRONG> (Thumb, 60 bytes, Stack size 24 bytes, drv_qma7981.o(i.get_mode))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = get_mode &rArr; get_bit
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3ba]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;get_bit
-</UL>
-<BR>[Called By]<UL><LI><a href="#[36d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qma_set_acc_odr
-</UL>
-
-<P><STRONG><a name="[364]"></a>nrf_gpio_cfg</STRONG> (Thumb, 40 bytes, Stack size 20 bytes, drv_qma7981.o(i.nrf_gpio_cfg))
-<BR><BR>[Stack]<UL><LI>Max Depth = 20<LI>Call Chain = nrf_gpio_cfg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[363]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qma_Init
-<LI><a href="#[1ac]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qma_power_off
-<LI><a href="#[36c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qma_power_on
-<LI><a href="#[367]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_cfg_output
-</UL>
-
-<P><STRONG><a name="[367]"></a>nrf_gpio_cfg_output</STRONG> (Thumb, 24 bytes, Stack size 16 bytes, drv_qma7981.o(i.nrf_gpio_cfg_output))
-<BR><BR>[Stack]<UL><LI>Max Depth = 36<LI>Call Chain = nrf_gpio_cfg_output &rArr; nrf_gpio_cfg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[364]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_cfg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[363]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qma_Init
-<LI><a href="#[1ac]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qma_power_off
-<LI><a href="#[36c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qma_power_on
-</UL>
-
-<P><STRONG><a name="[365]"></a>nrf_gpio_pin_write</STRONG> (Thumb, 58 bytes, Stack size 8 bytes, drv_qma7981.o(i.nrf_gpio_pin_write))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = nrf_gpio_pin_write
-</UL>
-<BR>[Called By]<UL><LI><a href="#[363]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qma_Init
-<LI><a href="#[1ac]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qma_power_off
-<LI><a href="#[36c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qma_power_on
-</UL>
-
-<P><STRONG><a name="[366]"></a>platform_delay_ms</STRONG> (Thumb, 46 bytes, Stack size 24 bytes, drv_qma7981.o(i.platform_delay_ms))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = platform_delay_ms
-</UL>
-<BR>[Called By]<UL><LI><a href="#[363]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qma_Init
-</UL>
-
-<P><STRONG><a name="[8f]"></a>qma7981_platform_read</STRONG> (Thumb, 36 bytes, Stack size 24 bytes, drv_qma7981.o(i.qma7981_platform_read))
-<BR><BR>[Stack]<UL><LI>Max Depth = 80<LI>Call Chain = qma7981_platform_read &rArr; IIC_MIDDLE_ReadBytes &rArr; IIC_MIDDLE_WaitACK &rArr; IIC_MIDDLE_Stop &rArr; nrfx_coredep_delay_us
-</UL>
-<BR>[Calls]<UL><LI><a href="#[158]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_MIDDLE_ReadBytes
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> drv_qma7981.o(i.drv_qma_Init)
-</UL>
-<P><STRONG><a name="[90]"></a>qma7981_platform_write</STRONG> (Thumb, 36 bytes, Stack size 24 bytes, drv_qma7981.o(i.qma7981_platform_write))
-<BR><BR>[Stack]<UL><LI>Max Depth = 80<LI>Call Chain = qma7981_platform_write &rArr; IIC_MIDDLE_WriteBytes &rArr; IIC_MIDDLE_WaitACK &rArr; IIC_MIDDLE_Stop &rArr; nrfx_coredep_delay_us
-</UL>
-<BR>[Calls]<UL><LI><a href="#[15f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_MIDDLE_WriteBytes
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> drv_qma7981.o(i.drv_qma_Init)
-</UL>
-<P><STRONG><a name="[3b9]"></a>read_accel_axis</STRONG> (Thumb, 68 bytes, Stack size 24 bytes, drv_qma7981.o(i.read_accel_axis))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = read_accel_axis
-</UL>
-<BR>[Called By]<UL><LI><a href="#[36b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;get_accel_z
-<LI><a href="#[36a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;get_accel_y
-<LI><a href="#[369]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;get_accel_x
-</UL>
-
-<P><STRONG><a name="[372]"></a>set_bandwidth</STRONG> (Thumb, 50 bytes, Stack size 24 bytes, drv_qma7981.o(i.set_bandwidth))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = set_bandwidth
-</UL>
-<BR>[Called By]<UL><LI><a href="#[36d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qma_set_acc_odr
-</UL>
-
-<P><STRONG><a name="[491]"></a>set_bit</STRONG> (Thumb, 20 bytes, Stack size 8 bytes, drv_qma7981.o(i.set_bit))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = set_bit
-</UL>
-<BR>[Called By]<UL><LI><a href="#[36e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;set_mode
-</UL>
-
-<P><STRONG><a name="[370]"></a>set_clock_freq</STRONG> (Thumb, 82 bytes, Stack size 24 bytes, drv_qma7981.o(i.set_clock_freq))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = set_clock_freq
-</UL>
-<BR>[Called By]<UL><LI><a href="#[36d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qma_set_acc_odr
-</UL>
-
-<P><STRONG><a name="[36e]"></a>set_mode</STRONG> (Thumb, 78 bytes, Stack size 24 bytes, drv_qma7981.o(i.set_mode))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = set_mode &rArr; set_bit
-</UL>
-<BR>[Calls]<UL><LI><a href="#[491]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;set_bit
-</UL>
-<BR>[Called By]<UL><LI><a href="#[36d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qma_set_acc_odr
-</UL>
-
-<P><STRONG><a name="[368]"></a>soft_reset</STRONG> (Thumb, 62 bytes, Stack size 16 bytes, drv_qma7981.o(i.soft_reset))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = soft_reset
-</UL>
-<BR>[Called By]<UL><LI><a href="#[363]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qma_Init
-<LI><a href="#[36c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_qma_power_on
-</UL>
-
-<P><STRONG><a name="[150]"></a>IIC_MIDDLE_ACK</STRONG> (Thumb, 54 bytes, Stack size 8 bytes, drv_iic_middle.o(i.IIC_MIDDLE_ACK))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = IIC_MIDDLE_ACK &rArr; nrfx_coredep_delay_us
-</UL>
-<BR>[Calls]<UL><LI><a href="#[152]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_coredep_delay_us
-<LI><a href="#[151]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_write
-</UL>
-<BR>[Called By]<UL><LI><a href="#[158]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_MIDDLE_ReadBytes
-</UL>
-
-<P><STRONG><a name="[157]"></a>IIC_MIDDLE_NoACK</STRONG> (Thumb, 48 bytes, Stack size 8 bytes, drv_iic_middle.o(i.IIC_MIDDLE_NoACK))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = IIC_MIDDLE_NoACK &rArr; nrfx_coredep_delay_us
-</UL>
-<BR>[Calls]<UL><LI><a href="#[152]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_coredep_delay_us
-<LI><a href="#[151]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_write
-</UL>
-<BR>[Called By]<UL><LI><a href="#[158]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_MIDDLE_ReadBytes
-</UL>
-
-<P><STRONG><a name="[15c]"></a>IIC_MIDDLE_RecByte</STRONG> (Thumb, 80 bytes, Stack size 16 bytes, drv_iic_middle.o(i.IIC_MIDDLE_RecByte))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = IIC_MIDDLE_RecByte &rArr; nrfx_coredep_delay_us
-</UL>
-<BR>[Calls]<UL><LI><a href="#[152]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_coredep_delay_us
-<LI><a href="#[151]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_write
-<LI><a href="#[15e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_read
-</UL>
-<BR>[Called By]<UL><LI><a href="#[158]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_MIDDLE_ReadBytes
-</UL>
-
-<P><STRONG><a name="[15a]"></a>IIC_MIDDLE_SendByte</STRONG> (Thumb, 84 bytes, Stack size 16 bytes, drv_iic_middle.o(i.IIC_MIDDLE_SendByte))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = IIC_MIDDLE_SendByte &rArr; nrfx_coredep_delay_us
-</UL>
-<BR>[Calls]<UL><LI><a href="#[152]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_coredep_delay_us
-<LI><a href="#[151]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_write
-</UL>
-<BR>[Called By]<UL><LI><a href="#[15f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_MIDDLE_WriteBytes
-<LI><a href="#[158]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_MIDDLE_ReadBytes
-</UL>
-
-<P><STRONG><a name="[159]"></a>IIC_MIDDLE_Start</STRONG> (Thumb, 48 bytes, Stack size 8 bytes, drv_iic_middle.o(i.IIC_MIDDLE_Start))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = IIC_MIDDLE_Start &rArr; nrfx_coredep_delay_us
-</UL>
-<BR>[Calls]<UL><LI><a href="#[152]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_coredep_delay_us
-<LI><a href="#[151]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_write
-</UL>
-<BR>[Called By]<UL><LI><a href="#[15f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_MIDDLE_WriteBytes
-<LI><a href="#[158]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_MIDDLE_ReadBytes
-</UL>
-
-<P><STRONG><a name="[15d]"></a>IIC_MIDDLE_Stop</STRONG> (Thumb, 48 bytes, Stack size 8 bytes, drv_iic_middle.o(i.IIC_MIDDLE_Stop))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = IIC_MIDDLE_Stop &rArr; nrfx_coredep_delay_us
-</UL>
-<BR>[Calls]<UL><LI><a href="#[152]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_coredep_delay_us
-<LI><a href="#[151]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_write
-</UL>
-<BR>[Called By]<UL><LI><a href="#[15b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_MIDDLE_WaitACK
-<LI><a href="#[15f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_MIDDLE_WriteBytes
-<LI><a href="#[158]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_MIDDLE_ReadBytes
-</UL>
-
-<P><STRONG><a name="[15b]"></a>IIC_MIDDLE_WaitACK</STRONG> (Thumb, 74 bytes, Stack size 8 bytes, drv_iic_middle.o(i.IIC_MIDDLE_WaitACK))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = IIC_MIDDLE_WaitACK &rArr; IIC_MIDDLE_Stop &rArr; nrfx_coredep_delay_us
-</UL>
-<BR>[Calls]<UL><LI><a href="#[152]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_coredep_delay_us
-<LI><a href="#[151]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_write
-<LI><a href="#[15e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_read
-<LI><a href="#[15d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_MIDDLE_Stop
-</UL>
-<BR>[Called By]<UL><LI><a href="#[15f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_MIDDLE_WriteBytes
-<LI><a href="#[158]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_MIDDLE_ReadBytes
-</UL>
-
-<P><STRONG><a name="[154]"></a>nrf_gpio_cfg</STRONG> (Thumb, 40 bytes, Stack size 20 bytes, drv_iic_middle.o(i.nrf_gpio_cfg))
-<BR><BR>[Stack]<UL><LI>Max Depth = 20<LI>Call Chain = nrf_gpio_cfg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[153]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_MIDDLE_Init
-</UL>
-
-<P><STRONG><a name="[155]"></a>nrf_gpio_cfg_watcher</STRONG> (Thumb, 30 bytes, Stack size 0 bytes, drv_iic_middle.o(i.nrf_gpio_cfg_watcher))
-<BR><BR>[Called By]<UL><LI><a href="#[153]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_MIDDLE_Init
-</UL>
-
-<P><STRONG><a name="[15e]"></a>nrf_gpio_pin_read</STRONG> (Thumb, 24 bytes, Stack size 0 bytes, drv_iic_middle.o(i.nrf_gpio_pin_read))
-<BR><BR>[Called By]<UL><LI><a href="#[15b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_MIDDLE_WaitACK
-<LI><a href="#[15c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_MIDDLE_RecByte
-</UL>
-
-<P><STRONG><a name="[156]"></a>nrf_gpio_pin_set</STRONG> (Thumb, 22 bytes, Stack size 0 bytes, drv_iic_middle.o(i.nrf_gpio_pin_set))
-<BR><BR>[Called By]<UL><LI><a href="#[151]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_write
-<LI><a href="#[153]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_MIDDLE_Init
-</UL>
-
-<P><STRONG><a name="[151]"></a>nrf_gpio_pin_write</STRONG> (Thumb, 42 bytes, Stack size 16 bytes, drv_iic_middle.o(i.nrf_gpio_pin_write))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = nrf_gpio_pin_write
-</UL>
-<BR>[Calls]<UL><LI><a href="#[156]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_set
-</UL>
-<BR>[Called By]<UL><LI><a href="#[15b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_MIDDLE_WaitACK
-<LI><a href="#[15d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_MIDDLE_Stop
-<LI><a href="#[159]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_MIDDLE_Start
-<LI><a href="#[15a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_MIDDLE_SendByte
-<LI><a href="#[15c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_MIDDLE_RecByte
-<LI><a href="#[157]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_MIDDLE_NoACK
-<LI><a href="#[150]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_MIDDLE_ACK
-</UL>
-
-<P><STRONG><a name="[152]"></a>nrfx_coredep_delay_us</STRONG> (Thumb, 20 bytes, Stack size 16 bytes, drv_iic_middle.o(i.nrfx_coredep_delay_us))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = nrfx_coredep_delay_us
-</UL>
-<BR>[Called By]<UL><LI><a href="#[15b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_MIDDLE_WaitACK
-<LI><a href="#[15d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_MIDDLE_Stop
-<LI><a href="#[159]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_MIDDLE_Start
-<LI><a href="#[15a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_MIDDLE_SendByte
-<LI><a href="#[15c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_MIDDLE_RecByte
-<LI><a href="#[157]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_MIDDLE_NoACK
-<LI><a href="#[150]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IIC_MIDDLE_ACK
-</UL>
-
-<P><STRONG><a name="[231]"></a>advertising_init</STRONG> (Thumb, 158 bytes, Stack size 208 bytes, slave.o(i.advertising_init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 5024<LI>Call Chain = advertising_init &rArr; app_error_handler &rArr; app_error_fault_handler &rArr; Flash_SaveLog &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[d1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_error_handler
-<LI><a href="#[232]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_advertising_init
-<LI><a href="#[233]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_advertising_conn_cfg_tag_set
-<LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
-</UL>
-<BR>[Called By]<UL><LI><a href="#[492]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;slave_init
-<LI><a href="#[25e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;slave_adv_init
-</UL>
-
-<P><STRONG><a name="[8a]"></a>conn_params_error_handler</STRONG> (Thumb, 20 bytes, Stack size 8 bytes, slave.o(i.conn_params_error_handler))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4824<LI>Call Chain = conn_params_error_handler &rArr; app_error_handler &rArr; app_error_fault_handler &rArr; Flash_SaveLog &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[d1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_error_handler
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> slave.o(i.conn_params_init)
-</UL>
-<P><STRONG><a name="[2fc]"></a>conn_params_init</STRONG> (Thumb, 90 bytes, Stack size 40 bytes, slave.o(i.conn_params_init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4856<LI>Call Chain = conn_params_init &rArr; app_error_handler &rArr; app_error_fault_handler &rArr; Flash_SaveLog &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[d1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_error_handler
-<LI><a href="#[29f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_conn_params_init
-<LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
-</UL>
-<BR>[Called By]<UL><LI><a href="#[492]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;slave_init
-<LI><a href="#[25e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;slave_adv_init
-</UL>
-
-<P><STRONG><a name="[3b2]"></a>gap_params_init</STRONG> (Thumb, 216 bytes, Stack size 32 bytes, slave.o(i.gap_params_init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4848<LI>Call Chain = gap_params_init &rArr; app_error_handler &rArr; app_error_fault_handler &rArr; Flash_SaveLog &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[d1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_error_handler
-<LI><a href="#[12b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__2sprintf
-<LI><a href="#[125]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;strlen
-</UL>
-<BR>[Called By]<UL><LI><a href="#[492]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;slave_init
-<LI><a href="#[25e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;slave_adv_init
-</UL>
-
-<P><STRONG><a name="[3ee]"></a>multi_qwr_conn_handle_assign</STRONG> (Thumb, 84 bytes, Stack size 24 bytes, slave.o(i.multi_qwr_conn_handle_assign))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4840<LI>Call Chain = multi_qwr_conn_handle_assign &rArr; app_error_handler &rArr; app_error_fault_handler &rArr; Flash_SaveLog &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[d1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_error_handler
-<LI><a href="#[3ef]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_qwr_conn_handle_assign
-</UL>
-<BR>[Called By]<UL><LI><a href="#[2bf]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_ble_peripheral_evt
-</UL>
-
-<P><STRONG><a name="[b3]"></a>nrf_qwr_error_handler</STRONG> (Thumb, 20 bytes, Stack size 8 bytes, slave.o(i.nrf_qwr_error_handler))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4824<LI>Call Chain = nrf_qwr_error_handler &rArr; app_error_handler &rArr; app_error_fault_handler &rArr; Flash_SaveLog &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[d1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_error_handler
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> slave.o(i.services_init)
-</UL>
-<P><STRONG><a name="[b4]"></a>nus_data_handler</STRONG> (Thumb, 20 bytes, Stack size 8 bytes, slave.o(i.nus_data_handler))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = nus_data_handler
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> slave.o(i.services_init)
-</UL>
-<P><STRONG><a name="[4f]"></a>on_adv_evt</STRONG> (Thumb, 52 bytes, Stack size 16 bytes, slave.o(i.on_adv_evt))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4832<LI>Call Chain = on_adv_evt &rArr; app_error_handler &rArr; app_error_fault_handler &rArr; Flash_SaveLog &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[d1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_error_handler
-<LI><a href="#[235]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_advertising_start
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> slave.o(i.advertising_init)
-</UL>
-<P><STRONG><a name="[48e]"></a>services_init</STRONG> (Thumb, 102 bytes, Stack size 24 bytes, slave.o(i.services_init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4840<LI>Call Chain = services_init &rArr; app_error_handler &rArr; app_error_fault_handler &rArr; Flash_SaveLog &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[d1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_error_handler
-<LI><a href="#[48f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_qwr_init
-<LI><a href="#[2d4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_nus_init
-</UL>
-<BR>[Called By]<UL><LI><a href="#[492]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;slave_init
-</UL>
-
-<P><STRONG><a name="[c8]"></a>ble_evt_handler</STRONG> (Thumb, 378 bytes, Stack size 64 bytes, host.o(i.ble_evt_handler))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4936<LI>Call Chain = ble_evt_handler &rArr; on_ble_peripheral_evt &rArr; multi_qwr_conn_handle_assign &rArr; app_error_handler &rArr; app_error_fault_handler &rArr; Flash_SaveLog &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[106]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_SetHoldOn
-<LI><a href="#[2bd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;selfcheck_trigger_set_order
-<LI><a href="#[122]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LED_Start
-<LI><a href="#[2c0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_ble_central_evt
-<LI><a href="#[2bf]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_ble_peripheral_evt
-<LI><a href="#[2be]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_evt_is_advertising_timeout
-<LI><a href="#[2a2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_conn_state_role
-<LI><a href="#[293]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;memcmp
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> host.o(sdh_ble_observers3)
-</UL>
-<P><STRONG><a name="[a3]"></a>ble_nus_c_evt_handler</STRONG> (Thumb, 110 bytes, Stack size 24 bytes, host.o(i.ble_nus_c_evt_handler))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4840<LI>Call Chain = ble_nus_c_evt_handler &rArr; app_error_handler &rArr; app_error_fault_handler &rArr; Flash_SaveLog &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[d1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_error_handler
-<LI><a href="#[2cb]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_nus_c_tx_notif_enable
-<LI><a href="#[2ca]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_nus_c_handles_assign
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> host.o(i.nus_c_init)
-</UL>
-<P><STRONG><a name="[8b]"></a>db_disc_handler</STRONG> (Thumb, 14 bytes, Stack size 8 bytes, host.o(i.db_disc_handler))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = db_disc_handler &rArr; ble_nus_c_on_db_disc_evt
-</UL>
-<BR>[Calls]<UL><LI><a href="#[2cf]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_nus_c_on_db_disc_evt
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> host.o(i.db_discovery_init)
-</UL>
-<P><STRONG><a name="[2ff]"></a>db_discovery_init</STRONG> (Thumb, 48 bytes, Stack size 24 bytes, host.o(i.db_discovery_init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4840<LI>Call Chain = db_discovery_init &rArr; app_error_handler &rArr; app_error_fault_handler &rArr; Flash_SaveLog &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[d1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_error_handler
-<LI><a href="#[300]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_db_discovery_init
-</UL>
-<BR>[Called By]<UL><LI><a href="#[3c4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;host_init
-</UL>
-
-<P><STRONG><a name="[97]"></a>gatt_evt_handler</STRONG> (Thumb, 22 bytes, Stack size 0 bytes, host.o(i.gatt_evt_handler))
-<BR>[Address Reference Count : 1]<UL><LI> host.o(i.gatt_init)
-</UL>
-<P><STRONG><a name="[83]"></a>host_ledclose_process</STRONG> (Thumb, 48 bytes, Stack size 8 bytes, host.o(i.host_ledclose_process))
-<BR><BR>[Stack]<UL><LI>Max Depth = 20<LI>Call Chain = host_ledclose_process &rArr; Process_SetHoldOn
-</UL>
-<BR>[Calls]<UL><LI><a href="#[106]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_SetHoldOn
-<LI><a href="#[120]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;LED_Stop
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> host.o(i.ble_stack_init)
-</UL>
-<P><STRONG><a name="[3c7]"></a>nus_c_init</STRONG> (Thumb, 48 bytes, Stack size 24 bytes, host.o(i.nus_c_init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4840<LI>Call Chain = nus_c_init &rArr; app_error_handler &rArr; app_error_fault_handler &rArr; Flash_SaveLog &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[d1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_error_handler
-<LI><a href="#[2cd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_nus_c_init
-</UL>
-<BR>[Called By]<UL><LI><a href="#[3c4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;host_init
-</UL>
-
-<P><STRONG><a name="[a4]"></a>nus_error_handler</STRONG> (Thumb, 34 bytes, Stack size 8 bytes, host.o(i.nus_error_handler))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4824<LI>Call Chain = nus_error_handler &rArr; app_error_handler &rArr; app_error_fault_handler &rArr; Flash_SaveLog &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[d1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_error_handler
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> host.o(i.nus_c_init)
-</UL>
-<P><STRONG><a name="[2c0]"></a>on_ble_central_evt</STRONG> (Thumb, 444 bytes, Stack size 32 bytes, host.o(i.on_ble_central_evt))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4848<LI>Call Chain = on_ble_central_evt &rArr; app_error_handler &rArr; app_error_fault_handler &rArr; Flash_SaveLog &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[d1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_error_handler
-<LI><a href="#[2ca]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_nus_c_handles_assign
-<LI><a href="#[2aa]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_db_discovery_start
-<LI><a href="#[45d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_host_dicconn_evt_pcs
-<LI><a href="#[45c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_host_connected_evt_pcs
-</UL>
-<BR>[Called By]<UL><LI><a href="#[c8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_evt_handler
-</UL>
-
-<P><STRONG><a name="[a9]"></a>scan_evt_handler</STRONG> (Thumb, 46 bytes, Stack size 8 bytes, host.o(i.scan_evt_handler))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4840<LI>Call Chain = scan_evt_handler &rArr; scan_start &rArr; app_error_handler &rArr; app_error_fault_handler &rArr; Flash_SaveLog &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[255]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;scan_start
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> host.o(i.scan_init)
-</UL>
-<P><STRONG><a name="[3c8]"></a>scan_init</STRONG> (Thumb, 132 bytes, Stack size 32 bytes, host.o(i.scan_init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4848<LI>Call Chain = scan_init &rArr; app_error_handler &rArr; app_error_fault_handler &rArr; Flash_SaveLog &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[d1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_error_handler
-<LI><a href="#[418]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_scan_init
-<LI><a href="#[3cb]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_scan_filters_enable
-<LI><a href="#[3ca]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_scan_filter_set
-</UL>
-<BR>[Called By]<UL><LI><a href="#[3c4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;host_init
-</UL>
-
-<P><STRONG><a name="[166]"></a>d_get_foot_data</STRONG> (Thumb, 30 bytes, Stack size 0 bytes, dtalige.o(i.d_get_foot_data))
-<BR><BR>[Called By]<UL><LI><a href="#[162]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IMU_Process_motion_queue
-</UL>
-
-<P><STRONG><a name="[16a]"></a>d_get_game_package</STRONG> (Thumb, 30 bytes, Stack size 0 bytes, dtalige.o(i.d_get_game_package))
-<BR><BR>[Called By]<UL><LI><a href="#[162]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IMU_Process_motion_queue
-</UL>
-
-<P><STRONG><a name="[169]"></a>d_integrate_left_right</STRONG> (Thumb, 66 bytes, Stack size 20 bytes, dtalige.o(i.d_integrate_left_right))
-<BR><BR>[Stack]<UL><LI>Max Depth = 20<LI>Call Chain = d_integrate_left_right
-</UL>
-<BR>[Called By]<UL><LI><a href="#[162]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IMU_Process_motion_queue
-</UL>
-
-<P><STRONG><a name="[165]"></a>d_process_motion</STRONG> (Thumb, 340 bytes, Stack size 24 bytes, dtalige.o(i.d_process_motion))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = d_process_motion
-</UL>
-<BR>[Called By]<UL><LI><a href="#[162]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IMU_Process_motion_queue
-</UL>
-
-<P><STRONG><a name="[22e]"></a>addr_is_valid</STRONG> (Thumb, 24 bytes, Stack size 0 bytes, ble_advertising.o(i.addr_is_valid))
-<BR><BR>[Called By]<UL><LI><a href="#[22d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;adv_mode_next_avail_get
-</UL>
-
-<P><STRONG><a name="[22d]"></a>adv_mode_next_avail_get</STRONG> (Thumb, 88 bytes, Stack size 16 bytes, ble_advertising.o(i.adv_mode_next_avail_get))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = adv_mode_next_avail_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[22e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;addr_is_valid
-</UL>
-<BR>[Called By]<UL><LI><a href="#[235]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_advertising_start
-</UL>
-
-<P><STRONG><a name="[469]"></a>adv_mode_next_get</STRONG> (Thumb, 18 bytes, Stack size 0 bytes, ble_advertising.o(i.adv_mode_next_get))
-<BR><BR>[Called By]<UL><LI><a href="#[299]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_terminated
-</UL>
-
-<P><STRONG><a name="[296]"></a>adv_set_data_size_max_get</STRONG> (Thumb, 18 bytes, Stack size 0 bytes, ble_advertising.o(i.adv_set_data_size_max_get))
-<BR><BR>[Called By]<UL><LI><a href="#[232]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_advertising_init
-</UL>
-
-<P><STRONG><a name="[295]"></a>config_is_valid</STRONG> (Thumb, 40 bytes, Stack size 0 bytes, ble_advertising.o(i.config_is_valid))
-<BR><BR>[Called By]<UL><LI><a href="#[232]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_advertising_init
-</UL>
-
-<P><STRONG><a name="[39a]"></a>flags_set</STRONG> (Thumb, 44 bytes, Stack size 16 bytes, ble_advertising.o(i.flags_set))
-<BR><BR>[Stack]<UL><LI>Max Depth = 60<LI>Call Chain = flags_set &rArr; ble_advdata_parse &rArr; ble_advdata_search
-</UL>
-<BR>[Calls]<UL><LI><a href="#[294]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_advdata_parse
-</UL>
-<BR>[Called By]<UL><LI><a href="#[29e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;set_adv_mode_slow
-<LI><a href="#[29d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;set_adv_mode_fast
-</UL>
-
-<P><STRONG><a name="[297]"></a>on_connected</STRONG> (Thumb, 14 bytes, Stack size 0 bytes, ble_advertising.o(i.on_connected))
-<BR><BR>[Called By]<UL><LI><a href="#[be]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_advertising_on_ble_evt
-</UL>
-
-<P><STRONG><a name="[298]"></a>on_disconnected</STRONG> (Thumb, 50 bytes, Stack size 16 bytes, ble_advertising.o(i.on_disconnected))
-<BR><BR>[Stack]<UL><LI>Max Depth = 108<LI>Call Chain = on_disconnected &rArr; ble_advertising_start &rArr; set_adv_mode_slow &rArr; flags_set &rArr; ble_advdata_parse &rArr; ble_advdata_search
-</UL>
-<BR>[Calls]<UL><LI><a href="#[235]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_advertising_start
-</UL>
-<BR>[Called By]<UL><LI><a href="#[be]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_advertising_on_ble_evt
-</UL>
-
-<P><STRONG><a name="[299]"></a>on_terminated</STRONG> (Thumb, 64 bytes, Stack size 24 bytes, ble_advertising.o(i.on_terminated))
-<BR><BR>[Stack]<UL><LI>Max Depth = 116<LI>Call Chain = on_terminated &rArr; ble_advertising_start &rArr; set_adv_mode_slow &rArr; flags_set &rArr; ble_advdata_parse &rArr; ble_advdata_search
-</UL>
-<BR>[Calls]<UL><LI><a href="#[235]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_advertising_start
-<LI><a href="#[469]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;adv_mode_next_get
-</UL>
-<BR>[Called By]<UL><LI><a href="#[be]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_advertising_on_ble_evt
-</UL>
-
-<P><STRONG><a name="[29a]"></a>phy_is_valid</STRONG> (Thumb, 22 bytes, Stack size 0 bytes, ble_advertising.o(i.phy_is_valid))
-<BR><BR>[Called By]<UL><LI><a href="#[235]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_advertising_start
-</UL>
-
-<P><STRONG><a name="[29c]"></a>set_adv_mode_directed</STRONG> (Thumb, 48 bytes, Stack size 0 bytes, ble_advertising.o(i.set_adv_mode_directed))
-<BR><BR>[Called By]<UL><LI><a href="#[235]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_advertising_start
-</UL>
-
-<P><STRONG><a name="[29b]"></a>set_adv_mode_directed_high_duty</STRONG> (Thumb, 36 bytes, Stack size 0 bytes, ble_advertising.o(i.set_adv_mode_directed_high_duty))
-<BR><BR>[Called By]<UL><LI><a href="#[235]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_advertising_start
-</UL>
-
-<P><STRONG><a name="[29d]"></a>set_adv_mode_fast</STRONG> (Thumb, 92 bytes, Stack size 16 bytes, ble_advertising.o(i.set_adv_mode_fast))
-<BR><BR>[Stack]<UL><LI>Max Depth = 76<LI>Call Chain = set_adv_mode_fast &rArr; flags_set &rArr; ble_advdata_parse &rArr; ble_advdata_search
-</UL>
-<BR>[Calls]<UL><LI><a href="#[490]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;use_whitelist
-<LI><a href="#[39a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;flags_set
-</UL>
-<BR>[Called By]<UL><LI><a href="#[235]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_advertising_start
-</UL>
-
-<P><STRONG><a name="[29e]"></a>set_adv_mode_slow</STRONG> (Thumb, 92 bytes, Stack size 16 bytes, ble_advertising.o(i.set_adv_mode_slow))
-<BR><BR>[Stack]<UL><LI>Max Depth = 76<LI>Call Chain = set_adv_mode_slow &rArr; flags_set &rArr; ble_advdata_parse &rArr; ble_advdata_search
-</UL>
-<BR>[Calls]<UL><LI><a href="#[490]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;use_whitelist
-<LI><a href="#[39a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;flags_set
-</UL>
-<BR>[Called By]<UL><LI><a href="#[235]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_advertising_start
-</UL>
-
-<P><STRONG><a name="[490]"></a>use_whitelist</STRONG> (Thumb, 30 bytes, Stack size 8 bytes, ble_advertising.o(i.use_whitelist))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = use_whitelist
-</UL>
-<BR>[Calls]<UL><LI><a href="#[49c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;whitelist_has_entries
-</UL>
-<BR>[Called By]<UL><LI><a href="#[29e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;set_adv_mode_slow
-<LI><a href="#[29d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;set_adv_mode_fast
-</UL>
-
-<P><STRONG><a name="[49c]"></a>whitelist_has_entries</STRONG> (Thumb, 8 bytes, Stack size 0 bytes, ble_advertising.o(i.whitelist_has_entries))
-<BR><BR>[Called By]<UL><LI><a href="#[490]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;use_whitelist
-</UL>
-
-<P><STRONG><a name="[284]"></a>appearance_encode</STRONG> (Thumb, 82 bytes, Stack size 24 bytes, ble_advdata.o(i.appearance_encode))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = appearance_encode
-</UL>
-<BR>[Calls]<UL><LI><a href="#[285]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;uint16_encode
-</UL>
-<BR>[Called By]<UL><LI><a href="#[289]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_advdata_encode
-</UL>
-
-<P><STRONG><a name="[28a]"></a>ble_device_addr_encode</STRONG> (Thumb, 118 bytes, Stack size 32 bytes, ble_advdata.o(i.ble_device_addr_encode))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = ble_device_addr_encode
-</UL>
-<BR>[Called By]<UL><LI><a href="#[289]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_advdata_encode
-</UL>
-
-<P><STRONG><a name="[2fb]"></a>conn_int_check</STRONG> (Thumb, 90 bytes, Stack size 0 bytes, ble_advdata.o(i.conn_int_check))
-<BR><BR>[Called By]<UL><LI><a href="#[28e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;conn_int_encode
-</UL>
-
-<P><STRONG><a name="[28e]"></a>conn_int_encode</STRONG> (Thumb, 104 bytes, Stack size 24 bytes, ble_advdata.o(i.conn_int_encode))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = conn_int_encode
-</UL>
-<BR>[Calls]<UL><LI><a href="#[285]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;uint16_encode
-<LI><a href="#[2fb]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;conn_int_check
-</UL>
-<BR>[Called By]<UL><LI><a href="#[289]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_advdata_encode
-</UL>
-
-<P><STRONG><a name="[28b]"></a>flags_encode</STRONG> (Thumb, 54 bytes, Stack size 12 bytes, ble_advdata.o(i.flags_encode))
-<BR><BR>[Stack]<UL><LI>Max Depth = 12<LI>Call Chain = flags_encode
-</UL>
-<BR>[Called By]<UL><LI><a href="#[289]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_advdata_encode
-</UL>
-
-<P><STRONG><a name="[28f]"></a>manuf_specific_data_encode</STRONG> (Thumb, 118 bytes, Stack size 24 bytes, ble_advdata.o(i.manuf_specific_data_encode))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = manuf_specific_data_encode
-</UL>
-<BR>[Calls]<UL><LI><a href="#[285]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;uint16_encode
-<LI><a href="#[127]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy
-</UL>
-<BR>[Called By]<UL><LI><a href="#[289]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_advdata_encode
-</UL>
-
-<P><STRONG><a name="[291]"></a>name_encode</STRONG> (Thumb, 200 bytes, Stack size 40 bytes, ble_advdata.o(i.name_encode))
-<BR><BR>[Stack]<UL><LI>Max Depth = 40<LI>Call Chain = name_encode
-</UL>
-<BR>[Called By]<UL><LI><a href="#[289]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_advdata_encode
-</UL>
-
-<P><STRONG><a name="[290]"></a>service_data_encode</STRONG> (Thumb, 150 bytes, Stack size 32 bytes, ble_advdata.o(i.service_data_encode))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = service_data_encode
-</UL>
-<BR>[Calls]<UL><LI><a href="#[285]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;uint16_encode
-<LI><a href="#[127]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy
-</UL>
-<BR>[Called By]<UL><LI><a href="#[289]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_advdata_encode
-</UL>
-
-<P><STRONG><a name="[28c]"></a>tx_power_level_encode</STRONG> (Thumb, 54 bytes, Stack size 12 bytes, ble_advdata.o(i.tx_power_level_encode))
-<BR><BR>[Stack]<UL><LI>Max Depth = 12<LI>Call Chain = tx_power_level_encode
-</UL>
-<BR>[Called By]<UL><LI><a href="#[289]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_advdata_encode
-</UL>
-
-<P><STRONG><a name="[285]"></a>uint16_encode</STRONG> (Thumb, 12 bytes, Stack size 0 bytes, ble_advdata.o(i.uint16_encode))
-<BR><BR>[Called By]<UL><LI><a href="#[290]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;service_data_encode
-<LI><a href="#[28f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;manuf_specific_data_encode
-<LI><a href="#[28e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;conn_int_encode
-<LI><a href="#[284]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;appearance_encode
-</UL>
-
-<P><STRONG><a name="[28d]"></a>uuid_list_encode</STRONG> (Thumb, 78 bytes, Stack size 40 bytes, ble_advdata.o(i.uuid_list_encode))
-<BR><BR>[Stack]<UL><LI>Max Depth = 96<LI>Call Chain = uuid_list_encode &rArr; uuid_list_sized_encode
-</UL>
-<BR>[Calls]<UL><LI><a href="#[49d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;uuid_list_sized_encode
-</UL>
-<BR>[Called By]<UL><LI><a href="#[289]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_advdata_encode
-</UL>
-
-<P><STRONG><a name="[49d]"></a>uuid_list_sized_encode</STRONG> (Thumb, 214 bytes, Stack size 56 bytes, ble_advdata.o(i.uuid_list_sized_encode))
-<BR><BR>[Stack]<UL><LI>Max Depth = 56<LI>Call Chain = uuid_list_sized_encode
-</UL>
-<BR>[Called By]<UL><LI><a href="#[28d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;uuid_list_encode
-</UL>
-
-<P><STRONG><a name="[2f6]"></a>characteristics_discover</STRONG> (Thumb, 134 bytes, Stack size 56 bytes, ble_db_discovery.o(i.characteristics_discover))
-<BR><BR>[Stack]<UL><LI>Max Depth = 272<LI>Call Chain = characteristics_discover &rArr; nrf_ble_gq_item_add &rArr; queue_process &rArr; nrf_memobj_read &rArr; memobj_op
-</UL>
-<BR>[Calls]<UL><LI><a href="#[2d1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_gq_item_add
-<LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
-</UL>
-<BR>[Called By]<UL><LI><a href="#[2a6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_primary_srv_discovery_rsp
-<LI><a href="#[2a7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_characteristic_discovery_rsp
-</UL>
-
-<P><STRONG><a name="[302]"></a>descriptors_discover</STRONG> (Thumb, 216 bytes, Stack size 72 bytes, ble_db_discovery.o(i.descriptors_discover))
-<BR><BR>[Stack]<UL><LI>Max Depth = 288<LI>Call Chain = descriptors_discover &rArr; nrf_ble_gq_item_add &rArr; queue_process &rArr; nrf_memobj_read &rArr; memobj_op
-</UL>
-<BR>[Calls]<UL><LI><a href="#[303]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;is_desc_discovery_reqd
-<LI><a href="#[2d1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_gq_item_add
-<LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
-</UL>
-<BR>[Called By]<UL><LI><a href="#[2a8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_descriptor_discovery_rsp
-<LI><a href="#[2a7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_characteristic_discovery_rsp
-</UL>
-
-<P><STRONG><a name="[30a]"></a>discovery_available_evt_trigger</STRONG> (Thumb, 46 bytes, Stack size 136 bytes, ble_db_discovery.o(i.discovery_available_evt_trigger))
-<BR><BR>[Stack]<UL><LI>Max Depth = 136<LI>Call Chain = discovery_available_evt_trigger
-</UL>
-<BR>[Calls]<UL><LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
-</UL>
-<BR>[Called By]<UL><LI><a href="#[461]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_srv_disc_completion
-<LI><a href="#[89]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;discovery_error_handler
-</UL>
-
-<P><STRONG><a name="[30b]"></a>discovery_complete_evt_trigger</STRONG> (Thumb, 162 bytes, Stack size 24 bytes, ble_db_discovery.o(i.discovery_complete_evt_trigger))
-<BR><BR>[Stack]<UL><LI>Max Depth = 40<LI>Call Chain = discovery_complete_evt_trigger &rArr; pending_user_evts_send
-</UL>
-<BR>[Calls]<UL><LI><a href="#[30c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;registered_handler_get
-<LI><a href="#[30d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;pending_user_evts_send
-<LI><a href="#[127]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy
-</UL>
-<BR>[Called By]<UL><LI><a href="#[2a6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_primary_srv_discovery_rsp
-<LI><a href="#[2a8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_descriptor_discovery_rsp
-<LI><a href="#[2a7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_characteristic_discovery_rsp
-</UL>
-
-<P><STRONG><a name="[30e]"></a>discovery_error_evt_trigger</STRONG> (Thumb, 66 bytes, Stack size 152 bytes, ble_db_discovery.o(i.discovery_error_evt_trigger))
-<BR><BR>[Stack]<UL><LI>Max Depth = 152<LI>Call Chain = discovery_error_evt_trigger
-</UL>
-<BR>[Calls]<UL><LI><a href="#[30c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;registered_handler_get
-<LI><a href="#[fb]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy4
-</UL>
-<BR>[Called By]<UL><LI><a href="#[89]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;discovery_error_handler
-</UL>
-
-<P><STRONG><a name="[89]"></a>discovery_error_handler</STRONG> (Thumb, 40 bytes, Stack size 24 bytes, ble_db_discovery.o(i.discovery_error_handler))
-<BR><BR>[Stack]<UL><LI>Max Depth = 176<LI>Call Chain = discovery_error_handler &rArr; discovery_error_evt_trigger
-</UL>
-<BR>[Calls]<UL><LI><a href="#[30e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;discovery_error_evt_trigger
-<LI><a href="#[30a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;discovery_available_evt_trigger
-</UL>
-<BR>[Called By]<UL><LI><a href="#[461]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_srv_disc_completion
-<LI><a href="#[2a6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_primary_srv_discovery_rsp
-<LI><a href="#[2a8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_descriptor_discovery_rsp
-<LI><a href="#[2a7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_characteristic_discovery_rsp
-</UL>
-<BR>[Address Reference Count : 4]<UL><LI> ble_db_discovery.o(i.characteristics_discover)
-<LI> ble_db_discovery.o(i.descriptors_discover)
-<LI> ble_db_discovery.o(i.discovery_start)
-<LI> ble_db_discovery.o(i.on_srv_disc_completion)
-</UL>
-<P><STRONG><a name="[2ab]"></a>discovery_start</STRONG> (Thumb, 152 bytes, Stack size 56 bytes, ble_db_discovery.o(i.discovery_start))
-<BR><BR>[Stack]<UL><LI>Max Depth = 272<LI>Call Chain = discovery_start &rArr; nrf_ble_gq_item_add &rArr; queue_process &rArr; nrf_memobj_read &rArr; memobj_op
-</UL>
-<BR>[Calls]<UL><LI><a href="#[2d1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_gq_item_add
-<LI><a href="#[2cc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_gq_conn_handle_register
-<LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
-</UL>
-<BR>[Called By]<UL><LI><a href="#[2aa]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_db_discovery_start
-</UL>
-
-<P><STRONG><a name="[460]"></a>is_char_discovery_reqd</STRONG> (Thumb, 36 bytes, Stack size 8 bytes, ble_db_discovery.o(i.is_char_discovery_reqd))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = is_char_discovery_reqd
-</UL>
-<BR>[Called By]<UL><LI><a href="#[2a7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_characteristic_discovery_rsp
-</UL>
-
-<P><STRONG><a name="[303]"></a>is_desc_discovery_reqd</STRONG> (Thumb, 94 bytes, Stack size 16 bytes, ble_db_discovery.o(i.is_desc_discovery_reqd))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = is_desc_discovery_reqd
-</UL>
-<BR>[Called By]<UL><LI><a href="#[302]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;descriptors_discover
-</UL>
-
-<P><STRONG><a name="[2a7]"></a>on_characteristic_discovery_rsp</STRONG> (Thumb, 348 bytes, Stack size 48 bytes, ble_db_discovery.o(i.on_characteristic_discovery_rsp))
-<BR><BR>[Stack]<UL><LI>Max Depth = 336<LI>Call Chain = on_characteristic_discovery_rsp &rArr; descriptors_discover &rArr; nrf_ble_gq_item_add &rArr; queue_process &rArr; nrf_memobj_read &rArr; memobj_op
-</UL>
-<BR>[Calls]<UL><LI><a href="#[461]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_srv_disc_completion
-<LI><a href="#[460]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;is_char_discovery_reqd
-<LI><a href="#[89]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;discovery_error_handler
-<LI><a href="#[30b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;discovery_complete_evt_trigger
-<LI><a href="#[302]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;descriptors_discover
-<LI><a href="#[2f6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;characteristics_discover
-</UL>
-<BR>[Called By]<UL><LI><a href="#[c0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_db_discovery_on_ble_evt
-</UL>
-
-<P><STRONG><a name="[2a8]"></a>on_descriptor_discovery_rsp</STRONG> (Thumb, 282 bytes, Stack size 32 bytes, ble_db_discovery.o(i.on_descriptor_discovery_rsp))
-<BR><BR>[Stack]<UL><LI>Max Depth = 320<LI>Call Chain = on_descriptor_discovery_rsp &rArr; descriptors_discover &rArr; nrf_ble_gq_item_add &rArr; queue_process &rArr; nrf_memobj_read &rArr; memobj_op
-</UL>
-<BR>[Calls]<UL><LI><a href="#[461]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_srv_disc_completion
-<LI><a href="#[89]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;discovery_error_handler
-<LI><a href="#[30b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;discovery_complete_evt_trigger
-<LI><a href="#[302]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;descriptors_discover
-</UL>
-<BR>[Called By]<UL><LI><a href="#[c0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_db_discovery_on_ble_evt
-</UL>
-
-<P><STRONG><a name="[2a9]"></a>on_disconnected</STRONG> (Thumb, 26 bytes, Stack size 0 bytes, ble_db_discovery.o(i.on_disconnected))
-<BR><BR>[Called By]<UL><LI><a href="#[c0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_db_discovery_on_ble_evt
-</UL>
-
-<P><STRONG><a name="[2a6]"></a>on_primary_srv_discovery_rsp</STRONG> (Thumb, 132 bytes, Stack size 32 bytes, ble_db_discovery.o(i.on_primary_srv_discovery_rsp))
-<BR><BR>[Stack]<UL><LI>Max Depth = 304<LI>Call Chain = on_primary_srv_discovery_rsp &rArr; on_srv_disc_completion &rArr; nrf_ble_gq_item_add &rArr; queue_process &rArr; nrf_memobj_read &rArr; memobj_op
-</UL>
-<BR>[Calls]<UL><LI><a href="#[461]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_srv_disc_completion
-<LI><a href="#[89]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;discovery_error_handler
-<LI><a href="#[30b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;discovery_complete_evt_trigger
-<LI><a href="#[2f6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;characteristics_discover
-</UL>
-<BR>[Called By]<UL><LI><a href="#[c0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_db_discovery_on_ble_evt
-</UL>
-
-<P><STRONG><a name="[461]"></a>on_srv_disc_completion</STRONG> (Thumb, 162 bytes, Stack size 56 bytes, ble_db_discovery.o(i.on_srv_disc_completion))
-<BR><BR>[Stack]<UL><LI>Max Depth = 272<LI>Call Chain = on_srv_disc_completion &rArr; nrf_ble_gq_item_add &rArr; queue_process &rArr; nrf_memobj_read &rArr; memobj_op
-</UL>
-<BR>[Calls]<UL><LI><a href="#[89]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;discovery_error_handler
-<LI><a href="#[30a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;discovery_available_evt_trigger
-<LI><a href="#[2d1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_gq_item_add
-<LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
-</UL>
-<BR>[Called By]<UL><LI><a href="#[2a6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_primary_srv_discovery_rsp
-<LI><a href="#[2a8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_descriptor_discovery_rsp
-<LI><a href="#[2a7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_characteristic_discovery_rsp
-</UL>
-
-<P><STRONG><a name="[30d]"></a>pending_user_evts_send</STRONG> (Thumb, 42 bytes, Stack size 16 bytes, ble_db_discovery.o(i.pending_user_evts_send))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = pending_user_evts_send
-</UL>
-<BR>[Called By]<UL><LI><a href="#[30b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;discovery_complete_evt_trigger
-</UL>
-
-<P><STRONG><a name="[30c]"></a>registered_handler_get</STRONG> (Thumb, 52 bytes, Stack size 0 bytes, ble_db_discovery.o(i.registered_handler_get))
-<BR><BR>[Called By]<UL><LI><a href="#[2a5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;registered_handler_set
-<LI><a href="#[30e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;discovery_error_evt_trigger
-<LI><a href="#[30b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;discovery_complete_evt_trigger
-</UL>
-
-<P><STRONG><a name="[2a5]"></a>registered_handler_set</STRONG> (Thumb, 58 bytes, Stack size 16 bytes, ble_db_discovery.o(i.registered_handler_set))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = registered_handler_set
-</UL>
-<BR>[Calls]<UL><LI><a href="#[30c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;registered_handler_get
-</UL>
-<BR>[Called By]<UL><LI><a href="#[2a4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_db_discovery_evt_register
-</UL>
-
-<P><STRONG><a name="[2f5]"></a>set_security_req</STRONG> (Thumb, 190 bytes, Stack size 0 bytes, ble_srv_common.o(i.set_security_req))
-<BR><BR>[Called By]<UL><LI><a href="#[2b2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;characteristic_add
-</UL>
-
-<P><STRONG><a name="[2d9]"></a>uint16_decode</STRONG> (Thumb, 12 bytes, Stack size 0 bytes, ble_srv_common.o(i.uint16_decode))
-<BR><BR>[Called By]<UL><LI><a href="#[2da]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_srv_is_notification_enabled
-<LI><a href="#[2d8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_srv_is_indication_enabled
-</UL>
-
-<P><STRONG><a name="[467]"></a>data_length_update</STRONG> (Thumb, 44 bytes, Stack size 32 bytes, nrf_ble_gatt.o(i.data_length_update))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = data_length_update
-</UL>
-<BR>[Called By]<UL><LI><a href="#[406]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_data_length_update_request_evt
-<LI><a href="#[401]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_connected_evt
-</UL>
-
-<P><STRONG><a name="[400]"></a>link_init</STRONG> (Thumb, 24 bytes, Stack size 0 bytes, nrf_ble_gatt.o(i.link_init))
-<BR><BR>[Called By]<UL><LI><a href="#[3b4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_gatt_init
-<LI><a href="#[402]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_disconnected_evt
-</UL>
-
-<P><STRONG><a name="[401]"></a>on_connected_evt</STRONG> (Thumb, 102 bytes, Stack size 24 bytes, nrf_ble_gatt.o(i.on_connected_evt))
-<BR><BR>[Stack]<UL><LI>Max Depth = 56<LI>Call Chain = on_connected_evt &rArr; data_length_update
-</UL>
-<BR>[Calls]<UL><LI><a href="#[467]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;data_length_update
-</UL>
-<BR>[Called By]<UL><LI><a href="#[bf]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_gatt_on_ble_evt
-</UL>
-
-<P><STRONG><a name="[405]"></a>on_data_length_update_evt</STRONG> (Thumb, 78 bytes, Stack size 72 bytes, nrf_ble_gatt.o(i.on_data_length_update_evt))
-<BR><BR>[Stack]<UL><LI>Max Depth = 72<LI>Call Chain = on_data_length_update_evt
-</UL>
-<BR>[Calls]<UL><LI><a href="#[fb]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy4
-</UL>
-<BR>[Called By]<UL><LI><a href="#[bf]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_gatt_on_ble_evt
-</UL>
-
-<P><STRONG><a name="[406]"></a>on_data_length_update_request_evt</STRONG> (Thumb, 48 bytes, Stack size 32 bytes, nrf_ble_gatt.o(i.on_data_length_update_request_evt))
-<BR><BR>[Stack]<UL><LI>Max Depth = 64<LI>Call Chain = on_data_length_update_request_evt &rArr; data_length_update
-</UL>
-<BR>[Calls]<UL><LI><a href="#[467]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;data_length_update
-</UL>
-<BR>[Called By]<UL><LI><a href="#[bf]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_gatt_on_ble_evt
-</UL>
-
-<P><STRONG><a name="[402]"></a>on_disconnected_evt</STRONG> (Thumb, 20 bytes, Stack size 16 bytes, nrf_ble_gatt.o(i.on_disconnected_evt))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = on_disconnected_evt
-</UL>
-<BR>[Calls]<UL><LI><a href="#[400]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;link_init
-</UL>
-<BR>[Called By]<UL><LI><a href="#[bf]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_gatt_on_ble_evt
-</UL>
-
-<P><STRONG><a name="[404]"></a>on_exchange_mtu_request_evt</STRONG> (Thumb, 104 bytes, Stack size 40 bytes, nrf_ble_gatt.o(i.on_exchange_mtu_request_evt))
-<BR><BR>[Stack]<UL><LI>Max Depth = 40<LI>Call Chain = on_exchange_mtu_request_evt
-</UL>
-<BR>[Called By]<UL><LI><a href="#[bf]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_gatt_on_ble_evt
-</UL>
-
-<P><STRONG><a name="[403]"></a>on_exchange_mtu_rsp_evt</STRONG> (Thumb, 94 bytes, Stack size 32 bytes, nrf_ble_gatt.o(i.on_exchange_mtu_rsp_evt))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = on_exchange_mtu_rsp_evt
-</UL>
-<BR>[Called By]<UL><LI><a href="#[bf]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_gatt_on_ble_evt
-</UL>
-
-<P><STRONG><a name="[408]"></a>conn_handle_id_find</STRONG> (Thumb, 32 bytes, Stack size 0 bytes, nrf_ble_gq.o(i.conn_handle_id_find))
-<BR><BR>[Called By]<UL><LI><a href="#[c2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_gq_on_ble_evt
-<LI><a href="#[2d1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_gq_item_add
-<LI><a href="#[2cc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_gq_conn_handle_register
-</UL>
-
-<P><STRONG><a name="[40b]"></a>conn_handle_register</STRONG> (Thumb, 48 bytes, Stack size 8 bytes, nrf_ble_gq.o(i.conn_handle_register))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = conn_handle_register
-</UL>
-<BR>[Called By]<UL><LI><a href="#[2cc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_gq_conn_handle_register
-</UL>
-
-<P><STRONG><a name="[b9]"></a>gattc_write_alloc</STRONG> (Thumb, 54 bytes, Stack size 16 bytes, nrf_ble_gq.o(i.gattc_write_alloc))
-<BR><BR>[Stack]<UL><LI>Max Depth = 144<LI>Call Chain = gattc_write_alloc &rArr; nrf_memobj_alloc &rArr; nrf_memobj_free &rArr; nrf_balloc_free &rArr; app_util_critical_region_enter &rArr; sd_nvic_critical_region_enter
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3b8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_memobj_write
-<LI><a href="#[3b7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_memobj_alloc
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> nrf_ble_gq.o(.constdata)
-</UL>
-<P><STRONG><a name="[ba]"></a>gatts_hvx_alloc</STRONG> (Thumb, 74 bytes, Stack size 16 bytes, nrf_ble_gq.o(i.gatts_hvx_alloc))
-<BR><BR>[Stack]<UL><LI>Max Depth = 144<LI>Call Chain = gatts_hvx_alloc &rArr; nrf_memobj_alloc &rArr; nrf_memobj_free &rArr; nrf_balloc_free &rArr; app_util_critical_region_enter &rArr; sd_nvic_critical_region_enter
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3b8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_memobj_write
-<LI><a href="#[3b7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_memobj_alloc
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> nrf_ble_gq.o(.constdata)
-</UL>
-<P><STRONG><a name="[409]"></a>is_any_conn_handle_registered</STRONG> (Thumb, 38 bytes, Stack size 0 bytes, nrf_ble_gq.o(i.is_any_conn_handle_registered))
-<BR><BR>[Called By]<UL><LI><a href="#[2cc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_gq_conn_handle_register
-</UL>
-
-<P><STRONG><a name="[410]"></a>queue_process</STRONG> (Thumb, 232 bytes, Stack size 72 bytes, nrf_ble_gq.o(i.queue_process))
-<BR><BR>[Stack]<UL><LI>Max Depth = 184<LI>Call Chain = queue_process &rArr; nrf_memobj_read &rArr; memobj_op
-</UL>
-<BR>[Calls]<UL><LI><a href="#[432]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_queue_generic_pop
-<LI><a href="#[42c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_memobj_read
-<LI><a href="#[40f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_memobj_free
-<LI><a href="#[478]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;request_err_code_handle
-</UL>
-<BR>[Called By]<UL><LI><a href="#[c2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_gq_on_ble_evt
-<LI><a href="#[2d1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_gq_item_add
-</UL>
-
-<P><STRONG><a name="[407]"></a>queues_purge</STRONG> (Thumb, 104 bytes, Stack size 56 bytes, nrf_ble_gq.o(i.queues_purge))
-<BR><BR>[Stack]<UL><LI>Max Depth = 144<LI>Call Chain = queues_purge &rArr; nrf_memobj_free &rArr; nrf_balloc_free &rArr; app_util_critical_region_enter &rArr; sd_nvic_critical_region_enter
-</UL>
-<BR>[Calls]<UL><LI><a href="#[432]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_queue_generic_pop
-<LI><a href="#[40f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_memobj_free
-</UL>
-<BR>[Called By]<UL><LI><a href="#[2d1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_gq_item_add
-<LI><a href="#[2cc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_gq_conn_handle_register
-</UL>
-
-<P><STRONG><a name="[478]"></a>request_err_code_handle</STRONG> (Thumb, 26 bytes, Stack size 16 bytes, nrf_ble_gq.o(i.request_err_code_handle))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = request_err_code_handle
-</UL>
-<BR>[Called By]<UL><LI><a href="#[40d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;request_process
-<LI><a href="#[410]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;queue_process
-</UL>
-
-<P><STRONG><a name="[40d]"></a>request_process</STRONG> (Thumb, 144 bytes, Stack size 24 bytes, nrf_ble_gq.o(i.request_process))
-<BR><BR>[Stack]<UL><LI>Max Depth = 40<LI>Call Chain = request_process &rArr; request_err_code_handle
-</UL>
-<BR>[Calls]<UL><LI><a href="#[478]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;request_err_code_handle
-</UL>
-<BR>[Called By]<UL><LI><a href="#[2d1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_gq_item_add
-</UL>
-
-<P><STRONG><a name="[22f]"></a>adv_name_compare</STRONG> (Thumb, 54 bytes, Stack size 32 bytes, nrf_ble_scan.o(i.adv_name_compare))
-<BR><BR>[Stack]<UL><LI>Max Depth = 84<LI>Call Chain = adv_name_compare &rArr; ble_advdata_name_find &rArr; ble_advdata_search
-</UL>
-<BR>[Calls]<UL><LI><a href="#[230]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_advdata_name_find
-</UL>
-<BR>[Called By]<UL><LI><a href="#[41c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_scan_on_adv_report
-</UL>
-
-<P><STRONG><a name="[415]"></a>nrf_ble_scan_connect_with_target</STRONG> (Thumb, 84 bytes, Stack size 56 bytes, nrf_ble_scan.o(i.nrf_ble_scan_connect_with_target))
-<BR><BR>[Stack]<UL><LI>Max Depth = 56<LI>Call Chain = nrf_ble_scan_connect_with_target
-</UL>
-<BR>[Calls]<UL><LI><a href="#[115]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_scan_stop
-<LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
-</UL>
-<BR>[Called By]<UL><LI><a href="#[41c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_scan_on_adv_report
-</UL>
-
-<P><STRONG><a name="[41a]"></a>nrf_ble_scan_default_conn_param_set</STRONG> (Thumb, 20 bytes, Stack size 0 bytes, nrf_ble_scan.o(i.nrf_ble_scan_default_conn_param_set))
-<BR><BR>[Called By]<UL><LI><a href="#[418]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_scan_init
-</UL>
-
-<P><STRONG><a name="[419]"></a>nrf_ble_scan_default_param_set</STRONG> (Thumb, 46 bytes, Stack size 0 bytes, nrf_ble_scan.o(i.nrf_ble_scan_default_param_set))
-<BR><BR>[Called By]<UL><LI><a href="#[418]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_scan_init
-</UL>
-
-<P><STRONG><a name="[416]"></a>nrf_ble_scan_name_filter_add</STRONG> (Thumb, 108 bytes, Stack size 32 bytes, nrf_ble_scan.o(i.nrf_ble_scan_name_filter_add))
-<BR><BR>[Stack]<UL><LI>Max Depth = 40<LI>Call Chain = nrf_ble_scan_name_filter_add &rArr; strcmp
-</UL>
-<BR>[Calls]<UL><LI><a href="#[41b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;strcmp
-<LI><a href="#[125]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;strlen
-<LI><a href="#[127]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy
-</UL>
-<BR>[Called By]<UL><LI><a href="#[3ca]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_scan_filter_set
-</UL>
-
-<P><STRONG><a name="[41c]"></a>nrf_ble_scan_on_adv_report</STRONG> (Thumb, 208 bytes, Stack size 56 bytes, nrf_ble_scan.o(i.nrf_ble_scan_on_adv_report))
-<BR><BR>[Stack]<UL><LI>Max Depth = 140<LI>Call Chain = nrf_ble_scan_on_adv_report &rArr; adv_name_compare &rArr; ble_advdata_name_find &rArr; ble_advdata_search
-</UL>
-<BR>[Calls]<UL><LI><a href="#[41d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;is_whitelist_used
-<LI><a href="#[415]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_scan_connect_with_target
-<LI><a href="#[22f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;adv_name_compare
-<LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
-</UL>
-<BR>[Called By]<UL><LI><a href="#[c1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_scan_on_ble_evt
-</UL>
-
-<P><STRONG><a name="[41f]"></a>nrf_ble_scan_on_connected_evt</STRONG> (Thumb, 52 bytes, Stack size 32 bytes, nrf_ble_scan.o(i.nrf_ble_scan_on_connected_evt))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = nrf_ble_scan_on_connected_evt
-</UL>
-<BR>[Calls]<UL><LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
-</UL>
-<BR>[Called By]<UL><LI><a href="#[c1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_scan_on_ble_evt
-</UL>
-
-<P><STRONG><a name="[41e]"></a>nrf_ble_scan_on_timeout</STRONG> (Thumb, 56 bytes, Stack size 40 bytes, nrf_ble_scan.o(i.nrf_ble_scan_on_timeout))
-<BR><BR>[Stack]<UL><LI>Max Depth = 40<LI>Call Chain = nrf_ble_scan_on_timeout
-</UL>
-<BR>[Calls]<UL><LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
-</UL>
-<BR>[Called By]<UL><LI><a href="#[c1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_scan_on_ble_evt
-</UL>
-
-<P><STRONG><a name="[bd]"></a>ble_evt_handler</STRONG> (Thumb, 184 bytes, Stack size 24 bytes, ble_conn_state.o(i.ble_evt_handler))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4840<LI>Call Chain = ble_evt_handler &rArr; app_error_handler &rArr; app_error_fault_handler &rArr; Flash_SaveLog &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[d1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_error_handler
-<LI><a href="#[2c3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_atflags_set
-<LI><a href="#[2c4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;record_set_disconnected
-<LI><a href="#[2c1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;record_purge_disconnected
-<LI><a href="#[2c2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;record_activate
-<LI><a href="#[2c5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;flag_toggle
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> ble_conn_state.o(sdh_ble_observers0)
-</UL>
-<P><STRONG><a name="[2c5]"></a>flag_toggle</STRONG> (Thumb, 30 bytes, Stack size 16 bytes, ble_conn_state.o(i.flag_toggle))
-<BR><BR>[Stack]<UL><LI>Max Depth = 56<LI>Call Chain = flag_toggle &rArr; nrf_atflags_set &rArr; nrf_atomic_u32_or
-</UL>
-<BR>[Calls]<UL><LI><a href="#[2c3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_atflags_set
-<LI><a href="#[399]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_atflags_clear
-</UL>
-<BR>[Called By]<UL><LI><a href="#[bd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_evt_handler
-</UL>
-
-<P><STRONG><a name="[2c2]"></a>record_activate</STRONG> (Thumb, 34 bytes, Stack size 8 bytes, ble_conn_state.o(i.record_activate))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = record_activate &rArr; nrf_atflags_set &rArr; nrf_atomic_u32_or
-</UL>
-<BR>[Calls]<UL><LI><a href="#[2c3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_atflags_set
-</UL>
-<BR>[Called By]<UL><LI><a href="#[bd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_evt_handler
-</UL>
-
-<P><STRONG><a name="[479]"></a>record_invalidate</STRONG> (Thumb, 28 bytes, Stack size 16 bytes, ble_conn_state.o(i.record_invalidate))
-<BR><BR>[Stack]<UL><LI>Max Depth = 56<LI>Call Chain = record_invalidate &rArr; nrf_atflags_clear &rArr; nrf_atomic_u32_and
-</UL>
-<BR>[Calls]<UL><LI><a href="#[399]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_atflags_clear
-</UL>
-<BR>[Called By]<UL><LI><a href="#[2c1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;record_purge_disconnected
-</UL>
-
-<P><STRONG><a name="[2c1]"></a>record_purge_disconnected</STRONG> (Thumb, 66 bytes, Stack size 104 bytes, ble_conn_state.o(i.record_purge_disconnected))
-<BR><BR>[Stack]<UL><LI>Max Depth = 176<LI>Call Chain = record_purge_disconnected &rArr; conn_handle_list_get &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3f6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_atomic_u32_and
-<LI><a href="#[2fa]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;conn_handle_list_get
-<LI><a href="#[479]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;record_invalidate
-<LI><a href="#[fb]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy4
-</UL>
-<BR>[Called By]<UL><LI><a href="#[bd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_evt_handler
-</UL>
-
-<P><STRONG><a name="[2c4]"></a>record_set_disconnected</STRONG> (Thumb, 14 bytes, Stack size 8 bytes, ble_conn_state.o(i.record_set_disconnected))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = record_set_disconnected &rArr; nrf_atflags_clear &rArr; nrf_atomic_u32_and
-</UL>
-<BR>[Calls]<UL><LI><a href="#[399]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_atflags_clear
-</UL>
-<BR>[Called By]<UL><LI><a href="#[bd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_evt_handler
-</UL>
-
-<P><STRONG><a name="[c3]"></a>ble_evt_handler</STRONG> (Thumb, 64 bytes, Stack size 16 bytes, ble_conn_params.o(i.ble_evt_handler))
-<BR><BR>[Stack]<UL><LI>Max Depth = 128<LI>Call Chain = ble_evt_handler &rArr; on_write &rArr; conn_params_negotiation &rArr; app_timer_start &rArr; timer_req_schedule &rArr; nrf_atfifo_item_put
-</UL>
-<BR>[Calls]<UL><LI><a href="#[2c8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_write
-<LI><a href="#[2c7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_disconnect
-<LI><a href="#[2c6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_connect
-<LI><a href="#[2c9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_conn_params_update
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> ble_conn_params.o(sdh_ble_observers1)
-</UL>
-<P><STRONG><a name="[2fd]"></a>conn_params_negotiation</STRONG> (Thumb, 78 bytes, Stack size 24 bytes, ble_conn_params.o(i.conn_params_negotiation))
-<BR><BR>[Stack]<UL><LI>Max Depth = 88<LI>Call Chain = conn_params_negotiation &rArr; app_timer_start &rArr; timer_req_schedule &rArr; nrf_atfifo_item_put
-</UL>
-<BR>[Calls]<UL><LI><a href="#[27c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_timer_start
-<LI><a href="#[2fe]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;send_error_evt
-</UL>
-<BR>[Called By]<UL><LI><a href="#[2c8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_write
-<LI><a href="#[2c6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_connect
-<LI><a href="#[2c9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_conn_params_update
-</UL>
-
-<P><STRONG><a name="[465]"></a>instance_get</STRONG> (Thumb, 40 bytes, Stack size 0 bytes, ble_conn_params.o(i.instance_get))
-<BR><BR>[Called By]<UL><LI><a href="#[7f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;update_timeout_handler
-<LI><a href="#[2c8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_write
-<LI><a href="#[2c7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_disconnect
-<LI><a href="#[2c6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_connect
-<LI><a href="#[2c9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_conn_params_update
-</UL>
-
-<P><STRONG><a name="[466]"></a>is_conn_params_ok</STRONG> (Thumb, 114 bytes, Stack size 24 bytes, ble_conn_params.o(i.is_conn_params_ok))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = is_conn_params_ok
-</UL>
-<BR>[Called By]<UL><LI><a href="#[2c6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_connect
-<LI><a href="#[2c9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_conn_params_update
-</UL>
-
-<P><STRONG><a name="[2c9]"></a>on_conn_params_update</STRONG> (Thumb, 48 bytes, Stack size 16 bytes, ble_conn_params.o(i.on_conn_params_update))
-<BR><BR>[Stack]<UL><LI>Max Depth = 104<LI>Call Chain = on_conn_params_update &rArr; conn_params_negotiation &rArr; app_timer_start &rArr; timer_req_schedule &rArr; nrf_atfifo_item_put
-</UL>
-<BR>[Calls]<UL><LI><a href="#[466]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;is_conn_params_ok
-<LI><a href="#[465]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;instance_get
-<LI><a href="#[2fd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;conn_params_negotiation
-</UL>
-<BR>[Called By]<UL><LI><a href="#[c3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_evt_handler
-</UL>
-
-<P><STRONG><a name="[2c6]"></a>on_connect</STRONG> (Thumb, 102 bytes, Stack size 24 bytes, ble_conn_params.o(i.on_connect))
-<BR><BR>[Stack]<UL><LI>Max Depth = 112<LI>Call Chain = on_connect &rArr; conn_params_negotiation &rArr; app_timer_start &rArr; timer_req_schedule &rArr; nrf_atfifo_item_put
-</UL>
-<BR>[Calls]<UL><LI><a href="#[2fe]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;send_error_evt
-<LI><a href="#[466]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;is_conn_params_ok
-<LI><a href="#[465]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;instance_get
-<LI><a href="#[2fd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;conn_params_negotiation
-</UL>
-<BR>[Called By]<UL><LI><a href="#[c3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_evt_handler
-</UL>
-
-<P><STRONG><a name="[2c7]"></a>on_disconnect</STRONG> (Thumb, 50 bytes, Stack size 24 bytes, ble_conn_params.o(i.on_disconnect))
-<BR><BR>[Stack]<UL><LI>Max Depth = 80<LI>Call Chain = on_disconnect &rArr; app_timer_stop &rArr; timer_req_schedule &rArr; nrf_atfifo_item_put
-</UL>
-<BR>[Calls]<UL><LI><a href="#[27f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_timer_stop
-<LI><a href="#[2fe]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;send_error_evt
-<LI><a href="#[465]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;instance_get
-</UL>
-<BR>[Called By]<UL><LI><a href="#[c3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_evt_handler
-</UL>
-
-<P><STRONG><a name="[2c8]"></a>on_write</STRONG> (Thumb, 82 bytes, Stack size 24 bytes, ble_conn_params.o(i.on_write))
-<BR><BR>[Stack]<UL><LI>Max Depth = 112<LI>Call Chain = on_write &rArr; conn_params_negotiation &rArr; app_timer_start &rArr; timer_req_schedule &rArr; nrf_atfifo_item_put
-</UL>
-<BR>[Calls]<UL><LI><a href="#[27f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_timer_stop
-<LI><a href="#[2fe]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;send_error_evt
-<LI><a href="#[465]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;instance_get
-<LI><a href="#[2fd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;conn_params_negotiation
-<LI><a href="#[2da]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_srv_is_notification_enabled
-</UL>
-<BR>[Called By]<UL><LI><a href="#[c3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_evt_handler
-</UL>
-
-<P><STRONG><a name="[2fe]"></a>send_error_evt</STRONG> (Thumb, 20 bytes, Stack size 8 bytes, ble_conn_params.o(i.send_error_evt))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = send_error_evt
-</UL>
-<BR>[Called By]<UL><LI><a href="#[7f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;update_timeout_handler
-<LI><a href="#[48d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;send_update_request
-<LI><a href="#[2c8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_write
-<LI><a href="#[2c7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_disconnect
-<LI><a href="#[2c6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_connect
-<LI><a href="#[2fd]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;conn_params_negotiation
-</UL>
-
-<P><STRONG><a name="[48d]"></a>send_update_request</STRONG> (Thumb, 36 bytes, Stack size 16 bytes, ble_conn_params.o(i.send_update_request))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = send_update_request &rArr; send_error_evt
-</UL>
-<BR>[Calls]<UL><LI><a href="#[2fe]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;send_error_evt
-</UL>
-<BR>[Called By]<UL><LI><a href="#[7f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;update_timeout_handler
-</UL>
-
-<P><STRONG><a name="[7f]"></a>update_timeout_handler</STRONG> (Thumb, 110 bytes, Stack size 24 bytes, ble_conn_params.o(i.update_timeout_handler))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = update_timeout_handler &rArr; send_update_request &rArr; send_error_evt
-</UL>
-<BR>[Calls]<UL><LI><a href="#[48d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;send_update_request
-<LI><a href="#[2fe]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;send_error_evt
-<LI><a href="#[465]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;instance_get
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> ble_conn_params.o(i.ble_conn_params_init)
-</UL>
-<P><STRONG><a name="[414]"></a>on_rw_authorize_request</STRONG> (Thumb, 106 bytes, Stack size 40 bytes, nrf_ble_qwr.o(i.on_rw_authorize_request))
-<BR><BR>[Stack]<UL><LI>Max Depth = 40<LI>Call Chain = on_rw_authorize_request
-</UL>
-<BR>[Called By]<UL><LI><a href="#[c5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_qwr_on_ble_evt
-</UL>
-
-<P><STRONG><a name="[413]"></a>on_user_mem_release</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, nrf_ble_qwr.o(i.on_user_mem_release))
-<BR><BR>[Called By]<UL><LI><a href="#[c5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_qwr_on_ble_evt
-</UL>
-
-<P><STRONG><a name="[412]"></a>on_user_mem_request</STRONG> (Thumb, 32 bytes, Stack size 16 bytes, nrf_ble_qwr.o(i.on_user_mem_request))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = on_user_mem_request &rArr; user_mem_reply
-</UL>
-<BR>[Calls]<UL><LI><a href="#[411]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;user_mem_reply
-</UL>
-<BR>[Called By]<UL><LI><a href="#[c5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_qwr_on_ble_evt
-</UL>
-
-<P><STRONG><a name="[411]"></a>user_mem_reply</STRONG> (Thumb, 44 bytes, Stack size 16 bytes, nrf_ble_qwr.o(i.user_mem_reply))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = user_mem_reply
-</UL>
-<BR>[Called By]<UL><LI><a href="#[c5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_qwr_on_ble_evt
-<LI><a href="#[412]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_user_mem_request
-</UL>
-
-<P><STRONG><a name="[2d2]"></a>cccd_configure</STRONG> (Thumb, 90 bytes, Stack size 56 bytes, ble_nus_c.o(i.cccd_configure))
-<BR><BR>[Stack]<UL><LI>Max Depth = 272<LI>Call Chain = cccd_configure &rArr; nrf_ble_gq_item_add &rArr; queue_process &rArr; nrf_memobj_read &rArr; memobj_op
-</UL>
-<BR>[Calls]<UL><LI><a href="#[2d1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_ble_gq_item_add
-<LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
-</UL>
-<BR>[Called By]<UL><LI><a href="#[2cb]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_nus_c_tx_notif_enable
-</UL>
-
-<P><STRONG><a name="[82]"></a>gatt_error_handler</STRONG> (Thumb, 26 bytes, Stack size 24 bytes, ble_nus_c.o(i.gatt_error_handler))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = gatt_error_handler
-</UL>
-<BR>[Address Reference Count : 2]<UL><LI> ble_nus_c.o(i.cccd_configure)
-<LI> ble_nus_c.o(i.ble_nus_c_string_send)
-</UL>
-<P><STRONG><a name="[2ce]"></a>on_hvx</STRONG> (Thumb, 56 bytes, Stack size 32 bytes, ble_nus_c.o(i.on_hvx))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = on_hvx
-</UL>
-<BR>[Called By]<UL><LI><a href="#[c6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_nus_c_on_ble_evt
-</UL>
-
-<P><STRONG><a name="[2d5]"></a>on_connect</STRONG> (Thumb, 116 bytes, Stack size 56 bytes, ble_nus.o(i.on_connect))
-<BR><BR>[Stack]<UL><LI>Max Depth = 104<LI>Call Chain = on_connect &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[287]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;blcm_link_ctx_get
-<LI><a href="#[2da]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_srv_is_notification_enabled
-<LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
-</UL>
-<BR>[Called By]<UL><LI><a href="#[c4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_nus_on_ble_evt
-</UL>
-
-<P><STRONG><a name="[2d7]"></a>on_hvx_tx_complete</STRONG> (Thumb, 72 bytes, Stack size 48 bytes, ble_nus.o(i.on_hvx_tx_complete))
-<BR><BR>[Stack]<UL><LI>Max Depth = 96<LI>Call Chain = on_hvx_tx_complete &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[287]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;blcm_link_ctx_get
-<LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
-</UL>
-<BR>[Called By]<UL><LI><a href="#[c4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_nus_on_ble_evt
-</UL>
-
-<P><STRONG><a name="[2d6]"></a>on_write</STRONG> (Thumb, 148 bytes, Stack size 48 bytes, ble_nus.o(i.on_write))
-<BR><BR>[Stack]<UL><LI>Max Depth = 96<LI>Call Chain = on_write &rArr; blcm_link_ctx_get &rArr; ble_conn_state_conn_idx &rArr; ble_conn_state_valid &rArr; nrf_atflags_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[287]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;blcm_link_ctx_get
-<LI><a href="#[2da]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_srv_is_notification_enabled
-<LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
-</UL>
-<BR>[Called By]<UL><LI><a href="#[c4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_nus_on_ble_evt
-</UL>
-
-<P><STRONG><a name="[2f8]"></a>clock_clk_started_notify</STRONG> (Thumb, 42 bytes, Stack size 16 bytes, nrf_drv_clock.o(i.clock_clk_started_notify))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = clock_clk_started_notify
-</UL>
-<BR>[Calls]<UL><LI><a href="#[2f9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;item_dequeue
-</UL>
-<BR>[Called By]<UL><LI><a href="#[ca]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;soc_evt_handler
-<LI><a href="#[a0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;clock_irq_handler
-</UL>
-
-<P><STRONG><a name="[a0]"></a>clock_irq_handler</STRONG> (Thumb, 34 bytes, Stack size 8 bytes, nrf_drv_clock.o(i.clock_irq_handler))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = clock_irq_handler &rArr; clock_clk_started_notify
-</UL>
-<BR>[Calls]<UL><LI><a href="#[2f8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;clock_clk_started_notify
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> nrf_drv_clock.o(i.nrf_drv_clock_init)
-</UL>
-<P><STRONG><a name="[2f9]"></a>item_dequeue</STRONG> (Thumb, 12 bytes, Stack size 0 bytes, nrf_drv_clock.o(i.item_dequeue))
-<BR><BR>[Called By]<UL><LI><a href="#[2f8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;clock_clk_started_notify
-</UL>
-
-<P><STRONG><a name="[3da]"></a>lfclk_stop</STRONG> (Thumb, 20 bytes, Stack size 8 bytes, nrf_drv_clock.o(i.lfclk_stop))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = lfclk_stop &rArr; nrfx_clock_lfclk_stop &rArr; nrf_clock_event_clear
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3dc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_clock_lfclk_stop
-<LI><a href="#[3db]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_wdt_started
-</UL>
-<BR>[Called By]<UL><LI><a href="#[424]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_drv_clock_lfclk_release
-</UL>
-
-<P><STRONG><a name="[3db]"></a>nrf_wdt_started</STRONG> (Thumb, 14 bytes, Stack size 0 bytes, nrf_drv_clock.o(i.nrf_wdt_started))
-<BR><BR>[Called By]<UL><LI><a href="#[420]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_drv_clock_init
-<LI><a href="#[3da]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;lfclk_stop
-</UL>
-
-<P><STRONG><a name="[ce]"></a>sd_state_evt_handler</STRONG> (Thumb, 136 bytes, Stack size 16 bytes, nrf_drv_clock.o(i.sd_state_evt_handler))
-<BR><BR>[Stack]<UL><LI>Max Depth = 56<LI>Call Chain = sd_state_evt_handler &rArr; nrf_drv_clock_init &rArr; nrfx_clock_enable &rArr; nrfx_power_clock_irq_init
-</UL>
-<BR>[Calls]<UL><LI><a href="#[282]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_util_critical_region_exit
-<LI><a href="#[280]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_util_critical_region_enter
-<LI><a href="#[423]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_clock_enable
-<LI><a href="#[424]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_drv_clock_lfclk_release
-<LI><a href="#[420]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_drv_clock_init
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> nrf_drv_clock.o(sdh_state_observers0)
-</UL>
-<P><STRONG><a name="[ca]"></a>soc_evt_handler</STRONG> (Thumb, 22 bytes, Stack size 16 bytes, nrf_drv_clock.o(i.soc_evt_handler))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = soc_evt_handler &rArr; clock_clk_started_notify
-</UL>
-<BR>[Calls]<UL><LI><a href="#[2f8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;clock_clk_started_notify
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> nrf_drv_clock.o(sdh_soc_observers0)
-</UL>
-<P><STRONG><a name="[1a2]"></a>nrf_clock_event_check</STRONG> (Thumb, 18 bytes, Stack size 0 bytes, nrfx_clock.o(i.nrf_clock_event_check))
-<BR><BR>[Called By]<UL><LI><a href="#[f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;POWER_CLOCK_IRQHandler
-</UL>
-
-<P><STRONG><a name="[1a3]"></a>nrf_clock_event_clear</STRONG> (Thumb, 18 bytes, Stack size 8 bytes, nrfx_clock.o(i.nrf_clock_event_clear))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = nrf_clock_event_clear
-</UL>
-<BR>[Called By]<UL><LI><a href="#[f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;POWER_CLOCK_IRQHandler
-<LI><a href="#[3dc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_clock_lfclk_stop
-</UL>
-
-<P><STRONG><a name="[1a4]"></a>nrf_clock_int_disable</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, nrfx_clock.o(i.nrf_clock_int_disable))
-<BR><BR>[Called By]<UL><LI><a href="#[f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;POWER_CLOCK_IRQHandler
-<LI><a href="#[3dc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_clock_lfclk_stop
-</UL>
-
-<P><STRONG><a name="[43f]"></a>nrf_clock_lf_is_running</STRONG> (Thumb, 10 bytes, Stack size 0 bytes, nrfx_clock.o(i.nrf_clock_lf_is_running))
-<BR><BR>[Called By]<UL><LI><a href="#[3dc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_clock_lfclk_stop
-</UL>
-
-<P><STRONG><a name="[43e]"></a>nrf_clock_task_trigger</STRONG> (Thumb, 8 bytes, Stack size 0 bytes, nrfx_clock.o(i.nrf_clock_task_trigger))
-<BR><BR>[Called By]<UL><LI><a href="#[3dc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_clock_lfclk_stop
-</UL>
-
-<P><STRONG><a name="[440]"></a>nrfx_get_irq_number</STRONG> (Thumb, 8 bytes, Stack size 0 bytes, nrfx_clock.o(i.nrfx_get_irq_number))
-<BR><BR>[Called By]<UL><LI><a href="#[43d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_power_clock_irq_init
-</UL>
-
-<P><STRONG><a name="[43d]"></a>nrfx_power_clock_irq_init</STRONG> (Thumb, 168 bytes, Stack size 24 bytes, nrfx_clock.o(i.nrfx_power_clock_irq_init))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = nrfx_power_clock_irq_init
-</UL>
-<BR>[Calls]<UL><LI><a href="#[440]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_get_irq_number
-</UL>
-<BR>[Called By]<UL><LI><a href="#[423]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_clock_enable
-</UL>
-
-<P><STRONG><a name="[1c2]"></a>irq_handler</STRONG> (Thumb, 180 bytes, Stack size 32 bytes, nrfx_rtc.o(i.irq_handler))
-<BR><BR>[Stack]<UL><LI>Max Depth = 40<LI>Call Chain = irq_handler &rArr; nrf_rtc_event_clear
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3d0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_rtc_int_is_enabled
-<LI><a href="#[3d3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_rtc_int_disable
-<LI><a href="#[3d1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_rtc_event_pending
-<LI><a href="#[3d2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_rtc_event_disable
-<LI><a href="#[3d4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_rtc_event_clear
-</UL>
-<BR>[Called By]<UL><LI><a href="#[31]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RTC2_IRQHandler
-</UL>
-
-<P><STRONG><a name="[44b]"></a>nrf_rtc_cc_set</STRONG> (Thumb, 10 bytes, Stack size 0 bytes, nrfx_rtc.o(i.nrf_rtc_cc_set))
-<BR><BR>[Called By]<UL><LI><a href="#[1ea]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_rtc_cc_set
-</UL>
-
-<P><STRONG><a name="[3d4]"></a>nrf_rtc_event_clear</STRONG> (Thumb, 14 bytes, Stack size 8 bytes, nrfx_rtc.o(i.nrf_rtc_event_clear))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = nrf_rtc_event_clear
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1ea]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_rtc_cc_set
-<LI><a href="#[1c2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;irq_handler
-</UL>
-
-<P><STRONG><a name="[3d2]"></a>nrf_rtc_event_disable</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, nrfx_rtc.o(i.nrf_rtc_event_disable))
-<BR><BR>[Called By]<UL><LI><a href="#[1ea]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_rtc_cc_set
-<LI><a href="#[1c2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;irq_handler
-</UL>
-
-<P><STRONG><a name="[44d]"></a>nrf_rtc_event_enable</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, nrfx_rtc.o(i.nrf_rtc_event_enable))
-<BR><BR>[Called By]<UL><LI><a href="#[1ea]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_rtc_cc_set
-</UL>
-
-<P><STRONG><a name="[3d1]"></a>nrf_rtc_event_pending</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, nrfx_rtc.o(i.nrf_rtc_event_pending))
-<BR><BR>[Called By]<UL><LI><a href="#[1c2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;irq_handler
-</UL>
-
-<P><STRONG><a name="[3d3]"></a>nrf_rtc_int_disable</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, nrfx_rtc.o(i.nrf_rtc_int_disable))
-<BR><BR>[Called By]<UL><LI><a href="#[1ea]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_rtc_cc_set
-<LI><a href="#[1c2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;irq_handler
-</UL>
-
-<P><STRONG><a name="[44c]"></a>nrf_rtc_int_enable</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, nrfx_rtc.o(i.nrf_rtc_int_enable))
-<BR><BR>[Called By]<UL><LI><a href="#[1ea]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_rtc_cc_set
-</UL>
-
-<P><STRONG><a name="[3d0]"></a>nrf_rtc_int_is_enabled</STRONG> (Thumb, 10 bytes, Stack size 0 bytes, nrfx_rtc.o(i.nrf_rtc_int_is_enabled))
-<BR><BR>[Called By]<UL><LI><a href="#[1c2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;irq_handler
-</UL>
-
-<P><STRONG><a name="[44e]"></a>nrf_rtc_task_trigger</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, nrfx_rtc.o(i.nrf_rtc_task_trigger))
-<BR><BR>[Called By]<UL><LI><a href="#[1ec]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_rtc_enable
-</UL>
-
-<P><STRONG><a name="[1c7]"></a>nrf_saadc_buffer_init</STRONG> (Thumb, 10 bytes, Stack size 0 bytes, nrfx_saadc.o(i.nrf_saadc_buffer_init))
-<BR><BR>[Called By]<UL><LI><a href="#[f1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_saadc_buffer_convert
-<LI><a href="#[16]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SAADC_IRQHandler
-</UL>
-
-<P><STRONG><a name="[451]"></a>nrf_saadc_channel_input_set</STRONG> (Thumb, 18 bytes, Stack size 0 bytes, nrfx_saadc.o(i.nrf_saadc_channel_input_set))
-<BR><BR>[Called By]<UL><LI><a href="#[f3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_saadc_channel_uninit
-<LI><a href="#[f0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_saadc_channel_init
-</UL>
-
-<P><STRONG><a name="[1c4]"></a>nrf_saadc_event_check</STRONG> (Thumb, 16 bytes, Stack size 0 bytes, nrfx_saadc.o(i.nrf_saadc_event_check))
-<BR><BR>[Called By]<UL><LI><a href="#[ec]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_saadc_uninit
-<LI><a href="#[f1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_saadc_buffer_convert
-<LI><a href="#[16]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SAADC_IRQHandler
-</UL>
-
-<P><STRONG><a name="[1c5]"></a>nrf_saadc_event_clear</STRONG> (Thumb, 18 bytes, Stack size 8 bytes, nrfx_saadc.o(i.nrf_saadc_event_clear))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = nrf_saadc_event_clear
-</UL>
-<BR>[Called By]<UL><LI><a href="#[ef]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_saadc_init
-<LI><a href="#[f1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_saadc_buffer_convert
-<LI><a href="#[16]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SAADC_IRQHandler
-</UL>
-
-<P><STRONG><a name="[44f]"></a>nrf_saadc_int_disable</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, nrfx_saadc.o(i.nrf_saadc_int_disable))
-<BR><BR>[Called By]<UL><LI><a href="#[ec]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_saadc_uninit
-<LI><a href="#[ef]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_saadc_init
-<LI><a href="#[f1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_saadc_buffer_convert
-<LI><a href="#[452]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_saadc_limits_set
-</UL>
-
-<P><STRONG><a name="[450]"></a>nrf_saadc_int_enable</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, nrfx_saadc.o(i.nrf_saadc_int_enable))
-<BR><BR>[Called By]<UL><LI><a href="#[ef]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_saadc_init
-<LI><a href="#[f1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_saadc_buffer_convert
-<LI><a href="#[452]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_saadc_limits_set
-</UL>
-
-<P><STRONG><a name="[453]"></a>nrf_saadc_limit_int_get</STRONG> (Thumb, 20 bytes, Stack size 0 bytes, nrfx_saadc.o(i.nrf_saadc_limit_int_get))
-<BR><BR>[Called By]<UL><LI><a href="#[452]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_saadc_limits_set
-</UL>
-
-<P><STRONG><a name="[1c6]"></a>nrf_saadc_task_trigger</STRONG> (Thumb, 8 bytes, Stack size 0 bytes, nrfx_saadc.o(i.nrf_saadc_task_trigger))
-<BR><BR>[Called By]<UL><LI><a href="#[ec]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_saadc_uninit
-<LI><a href="#[f5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_saadc_sample
-<LI><a href="#[f1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_saadc_buffer_convert
-<LI><a href="#[16]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SAADC_IRQHandler
-</UL>
-
-<P><STRONG><a name="[454]"></a>nrfx_coredep_delay_us</STRONG> (Thumb, 20 bytes, Stack size 16 bytes, nrfx_saadc.o(i.nrfx_coredep_delay_us))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = nrfx_coredep_delay_us
-</UL>
-<BR>[Called By]<UL><LI><a href="#[ec]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_saadc_uninit
-</UL>
-
-<P><STRONG><a name="[444]"></a>configure_pins</STRONG> (Thumb, 194 bytes, Stack size 52 bytes, nrfx_pwm.o(i.configure_pins))
-<BR><BR>[Stack]<UL><LI>Max Depth = 52<LI>Call Chain = configure_pins
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1c1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_pwm_init
-</UL>
-
-<P><STRONG><a name="[1a9]"></a>irq_handler</STRONG> (Thumb, 164 bytes, Stack size 16 bytes, nrfx_pwm.o(i.irq_handler))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = irq_handler &rArr; nrf_pwm_event_clear
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3d6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_pwm_event_clear
-<LI><a href="#[3d5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_pwm_event_check
-</UL>
-<BR>[Called By]<UL><LI><a href="#[2b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;PWM0_IRQHandler
-</UL>
-
-<P><STRONG><a name="[3d5]"></a>nrf_pwm_event_check</STRONG> (Thumb, 14 bytes, Stack size 0 bytes, nrfx_pwm.o(i.nrf_pwm_event_check))
-<BR><BR>[Called By]<UL><LI><a href="#[1a9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;irq_handler
-</UL>
-
-<P><STRONG><a name="[3d6]"></a>nrf_pwm_event_clear</STRONG> (Thumb, 14 bytes, Stack size 8 bytes, nrfx_pwm.o(i.nrf_pwm_event_clear))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = nrf_pwm_event_clear
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1c1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_pwm_init
-<LI><a href="#[44a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;start_playback
-<LI><a href="#[1a9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;irq_handler
-</UL>
-
-<P><STRONG><a name="[446]"></a>nrf_pwm_int_set</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, nrfx_pwm.o(i.nrf_pwm_int_set))
-<BR><BR>[Called By]<UL><LI><a href="#[1c1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_pwm_init
-<LI><a href="#[44a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;start_playback
-</UL>
-
-<P><STRONG><a name="[449]"></a>nrf_pwm_loop_set</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, nrfx_pwm.o(i.nrf_pwm_loop_set))
-<BR><BR>[Called By]<UL><LI><a href="#[1da]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_pwm_simple_playback
-</UL>
-
-<P><STRONG><a name="[448]"></a>nrf_pwm_sequence_set</STRONG> (Thumb, 60 bytes, Stack size 8 bytes, nrfx_pwm.o(i.nrf_pwm_sequence_set))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = nrf_pwm_sequence_set
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1da]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_pwm_simple_playback
-</UL>
-
-<P><STRONG><a name="[445]"></a>nrf_pwm_shorts_set</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, nrfx_pwm.o(i.nrf_pwm_shorts_set))
-<BR><BR>[Called By]<UL><LI><a href="#[1da]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_pwm_simple_playback
-<LI><a href="#[1c1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_pwm_init
-</UL>
-
-<P><STRONG><a name="[499]"></a>nrf_pwm_task_trigger</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, nrfx_pwm.o(i.nrf_pwm_task_trigger))
-<BR><BR>[Called By]<UL><LI><a href="#[44a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;start_playback
-</UL>
-
-<P><STRONG><a name="[447]"></a>nrfx_get_irq_number</STRONG> (Thumb, 8 bytes, Stack size 0 bytes, nrfx_pwm.o(i.nrfx_get_irq_number))
-<BR><BR>[Called By]<UL><LI><a href="#[1c0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_pwm_uninit
-<LI><a href="#[1c1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_pwm_init
-</UL>
-
-<P><STRONG><a name="[44a]"></a>start_playback</STRONG> (Thumb, 106 bytes, Stack size 24 bytes, nrfx_pwm.o(i.start_playback))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = start_playback &rArr; nrf_pwm_event_clear
-</UL>
-<BR>[Calls]<UL><LI><a href="#[499]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_pwm_task_trigger
-<LI><a href="#[446]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_pwm_int_set
-<LI><a href="#[3d6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_pwm_event_clear
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1da]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_pwm_simple_playback
-</UL>
-
-<P><STRONG><a name="[45a]"></a>nrf_wdt_reload_request_set</STRONG> (Thumb, 10 bytes, Stack size 0 bytes, nrfx_wdt.o(i.nrf_wdt_reload_request_set))
-<BR><BR>[Called By]<UL><LI><a href="#[395]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_wdt_channel_feed
-</UL>
-
-<P><STRONG><a name="[a1]"></a>spim_evt_handler</STRONG> (Thumb, 56 bytes, Stack size 40 bytes, nrf_drv_spi.o(i.spim_evt_handler))
-<BR><BR>[Stack]<UL><LI>Max Depth = 40<LI>Call Chain = spim_evt_handler
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> nrf_drv_spi.o(i.nrf_drv_spi_init)
-</UL>
-<P><STRONG><a name="[396]"></a>finish_transfer</STRONG> (Thumb, 46 bytes, Stack size 8 bytes, nrfx_spim.o(i.finish_transfer))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = finish_transfer
-</UL>
-<BR>[Calls]<UL><LI><a href="#[398]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_set
-<LI><a href="#[397]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_clear
-</UL>
-<BR>[Called By]<UL><LI><a href="#[1d6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;irq_handler
-</UL>
-
-<P><STRONG><a name="[1d6]"></a>irq_handler</STRONG> (Thumb, 36 bytes, Stack size 16 bytes, nrfx_spim.o(i.irq_handler))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = irq_handler &rArr; nrf_spim_event_clear
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3d8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_spim_event_clear
-<LI><a href="#[3d7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_spim_event_check
-<LI><a href="#[396]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;finish_transfer
-</UL>
-<BR>[Called By]<UL><LI><a href="#[30]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPIM2_SPIS2_SPI2_IRQHandler
-<LI><a href="#[13]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPIM1_SPIS1_TWIM1_TWIS1_SPI1_TWI1_IRQHandler
-<LI><a href="#[12]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPIM0_SPIS0_TWIM0_TWIS0_SPI0_TWI0_IRQHandler
-</UL>
-
-<P><STRONG><a name="[42a]"></a>nrf_gpio_cfg</STRONG> (Thumb, 40 bytes, Stack size 20 bytes, nrfx_spim.o(i.nrf_gpio_cfg))
-<BR><BR>[Stack]<UL><LI>Max Depth = 20<LI>Call Chain = nrf_gpio_cfg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[427]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_spim_uninit
-<LI><a href="#[429]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_cfg_output
-<LI><a href="#[425]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_spim_init
-</UL>
-
-<P><STRONG><a name="[429]"></a>nrf_gpio_cfg_output</STRONG> (Thumb, 24 bytes, Stack size 16 bytes, nrfx_spim.o(i.nrf_gpio_cfg_output))
-<BR><BR>[Stack]<UL><LI>Max Depth = 36<LI>Call Chain = nrf_gpio_cfg_output &rArr; nrf_gpio_cfg
-</UL>
-<BR>[Calls]<UL><LI><a href="#[42a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_cfg
-</UL>
-<BR>[Called By]<UL><LI><a href="#[425]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_spim_init
-</UL>
-
-<P><STRONG><a name="[397]"></a>nrf_gpio_pin_clear</STRONG> (Thumb, 22 bytes, Stack size 0 bytes, nrfx_spim.o(i.nrf_gpio_pin_clear))
-<BR><BR>[Called By]<UL><LI><a href="#[426]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_spim_xfer
-<LI><a href="#[458]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;spim_xfer
-<LI><a href="#[396]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;finish_transfer
-<LI><a href="#[425]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_spim_init
-</UL>
-
-<P><STRONG><a name="[398]"></a>nrf_gpio_pin_set</STRONG> (Thumb, 22 bytes, Stack size 0 bytes, nrfx_spim.o(i.nrf_gpio_pin_set))
-<BR><BR>[Called By]<UL><LI><a href="#[426]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_spim_xfer
-<LI><a href="#[458]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;spim_xfer
-<LI><a href="#[396]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;finish_transfer
-<LI><a href="#[425]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_spim_init
-</UL>
-
-<P><STRONG><a name="[3d7]"></a>nrf_spim_event_check</STRONG> (Thumb, 14 bytes, Stack size 0 bytes, nrfx_spim.o(i.nrf_spim_event_check))
-<BR><BR>[Called By]<UL><LI><a href="#[427]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_spim_uninit
-<LI><a href="#[458]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;spim_xfer
-<LI><a href="#[1d6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;irq_handler
-</UL>
-
-<P><STRONG><a name="[3d8]"></a>nrf_spim_event_clear</STRONG> (Thumb, 14 bytes, Stack size 8 bytes, nrfx_spim.o(i.nrf_spim_event_clear))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = nrf_spim_event_clear
-</UL>
-<BR>[Called By]<UL><LI><a href="#[458]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;spim_xfer
-<LI><a href="#[1d6]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;irq_handler
-</UL>
-
-<P><STRONG><a name="[456]"></a>nrf_spim_int_disable</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, nrfx_spim.o(i.nrf_spim_int_disable))
-<BR><BR>[Called By]<UL><LI><a href="#[427]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_spim_uninit
-<LI><a href="#[458]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;spim_xfer
-</UL>
-
-<P><STRONG><a name="[457]"></a>nrf_spim_task_trigger</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, nrfx_spim.o(i.nrf_spim_task_trigger))
-<BR><BR>[Called By]<UL><LI><a href="#[427]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_spim_uninit
-<LI><a href="#[458]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;spim_xfer
-</UL>
-
-<P><STRONG><a name="[455]"></a>nrfx_get_irq_number</STRONG> (Thumb, 8 bytes, Stack size 0 bytes, nrfx_spim.o(i.nrfx_get_irq_number))
-<BR><BR>[Called By]<UL><LI><a href="#[427]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_spim_uninit
-<LI><a href="#[425]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_spim_init
-</UL>
-
-<P><STRONG><a name="[498]"></a>nrfx_is_in_ram</STRONG> (Thumb, 20 bytes, Stack size 0 bytes, nrfx_spim.o(i.nrfx_is_in_ram))
-<BR><BR>[Called By]<UL><LI><a href="#[458]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;spim_xfer
-</UL>
-
-<P><STRONG><a name="[458]"></a>spim_xfer</STRONG> (Thumb, 272 bytes, Stack size 32 bytes, nrfx_spim.o(i.spim_xfer))
-<BR><BR>[Stack]<UL><LI>Max Depth = 40<LI>Call Chain = spim_xfer &rArr; nrf_spim_event_clear
-</UL>
-<BR>[Calls]<UL><LI><a href="#[498]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_is_in_ram
-<LI><a href="#[457]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_spim_task_trigger
-<LI><a href="#[456]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_spim_int_disable
-<LI><a href="#[3d8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_spim_event_clear
-<LI><a href="#[3d7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_spim_event_check
-<LI><a href="#[398]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_set
-<LI><a href="#[397]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_gpio_pin_clear
-</UL>
-<BR>[Called By]<UL><LI><a href="#[426]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrfx_spim_xfer
-</UL>
-
-<P><STRONG><a name="[283]"></a>__sd_nvic_irq_disable</STRONG> (Thumb, 12 bytes, Stack size 0 bytes, app_util_platform.o(i.__sd_nvic_irq_disable))
-<BR><BR>[Called By]<UL><LI><a href="#[282]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_util_critical_region_exit
-<LI><a href="#[281]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;sd_nvic_critical_region_enter
-</UL>
-
-<P><STRONG><a name="[281]"></a>sd_nvic_critical_region_enter</STRONG> (Thumb, 90 bytes, Stack size 16 bytes, app_util_platform.o(i.sd_nvic_critical_region_enter))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = sd_nvic_critical_region_enter
-</UL>
-<BR>[Calls]<UL><LI><a href="#[283]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__sd_nvic_irq_disable
-</UL>
-<BR>[Called By]<UL><LI><a href="#[280]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_util_critical_region_enter
-</UL>
-
-<P><STRONG><a name="[3ff]"></a>nrf_balloc_block2idx</STRONG> (Thumb, 16 bytes, Stack size 0 bytes, nrf_balloc.o(i.nrf_balloc_block2idx))
-<BR><BR>[Called By]<UL><LI><a href="#[3fe]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_balloc_free
-</UL>
-
-<P><STRONG><a name="[3fd]"></a>nrf_balloc_idx2block</STRONG> (Thumb, 12 bytes, Stack size 0 bytes, nrf_balloc.o(i.nrf_balloc_idx2block))
-<BR><BR>[Called By]<UL><LI><a href="#[3fc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_balloc_alloc
-</UL>
-
-<P><STRONG><a name="[3df]"></a>memobj_op</STRONG> (Thumb, 202 bytes, Stack size 80 bytes, nrf_memobj.o(i.memobj_op))
-<BR><BR>[Stack]<UL><LI>Max Depth = 80<LI>Call Chain = memobj_op
-</UL>
-<BR>[Calls]<UL><LI><a href="#[127]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy
-</UL>
-<BR>[Called By]<UL><LI><a href="#[3b8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_memobj_write
-<LI><a href="#[42c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_memobj_read
-</UL>
-
-<P><STRONG><a name="[430]"></a>nrf_mtx_unlock</STRONG> (Thumb, 22 bytes, Stack size 0 bytes, nrf_pwr_mgmt.o(i.nrf_mtx_unlock))
-<BR><BR>[Called By]<UL><LI><a href="#[26d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_pwr_mgmt_shutdown
-</UL>
-
-<P><STRONG><a name="[431]"></a>shutdown_process</STRONG> (Thumb, 162 bytes, Stack size 8 bytes, nrf_pwr_mgmt.o(i.shutdown_process))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = shutdown_process &rArr; nrf_section_iter_next
-</UL>
-<BR>[Calls]<UL><LI><a href="#[422]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_sdh_is_enabled
-<LI><a href="#[437]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_section_iter_next
-</UL>
-<BR>[Called By]<UL><LI><a href="#[26d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_pwr_mgmt_shutdown
-</UL>
-
-<P><STRONG><a name="[433]"></a>nrf_queue_next_idx</STRONG> (Thumb, 16 bytes, Stack size 0 bytes, nrf_queue.o(i.nrf_queue_next_idx))
-<BR><BR>[Called By]<UL><LI><a href="#[40e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_queue_push
-<LI><a href="#[432]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_queue_generic_pop
-<LI><a href="#[434]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_queue_is_full
-</UL>
-
-<P><STRONG><a name="[435]"></a>queue_utilization_get</STRONG> (Thumb, 30 bytes, Stack size 0 bytes, nrf_queue.o(i.queue_utilization_get))
-<BR><BR>[Called By]<UL><LI><a href="#[40e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_queue_push
-</UL>
-
-<P><STRONG><a name="[43c]"></a>nrf_section_iter_item_set</STRONG> (Thumb, 46 bytes, Stack size 0 bytes, nrf_section_iter.o(i.nrf_section_iter_item_set))
-<BR><BR>[Called By]<UL><LI><a href="#[437]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_section_iter_next
-<LI><a href="#[42e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_section_iter_init
-</UL>
-
-<P><STRONG><a name="[bb]"></a>compare_func</STRONG> (Thumb, 38 bytes, Stack size 32 bytes, app_timer2.o(i.compare_func))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = compare_func
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> app_timer2.o(.constdata)
-</UL>
-<P><STRONG><a name="[27d]"></a>get_now</STRONG> (Thumb, 46 bytes, Stack size 16 bytes, app_timer2.o(i.get_now))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = get_now &rArr; drv_rtc_counter_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[276]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_rtc_counter_get
-</UL>
-<BR>[Called By]<UL><LI><a href="#[27c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_timer_start
-<LI><a href="#[464]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;timer_expire
-<LI><a href="#[47d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;rtc_schedule
-<LI><a href="#[462]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_compare1_evt
-</UL>
-
-<P><STRONG><a name="[462]"></a>on_compare1_evt</STRONG> (Thumb, 14 bytes, Stack size 8 bytes, app_timer2.o(i.on_compare1_evt))
-<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = on_compare1_evt &rArr; get_now &rArr; drv_rtc_counter_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[27d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;get_now
-</UL>
-<BR>[Called By]<UL><LI><a href="#[7e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;rtc_irq
-</UL>
-
-<P><STRONG><a name="[463]"></a>on_compare_evt</STRONG> (Thumb, 26 bytes, Stack size 8 bytes, app_timer2.o(i.on_compare_evt))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = on_compare_evt &rArr; timer_expire &rArr; get_now &rArr; drv_rtc_counter_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[464]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;timer_expire
-</UL>
-<BR>[Called By]<UL><LI><a href="#[7e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;rtc_irq
-</UL>
-
-<P><STRONG><a name="[47a]"></a>on_overflow_evt</STRONG> (Thumb, 24 bytes, Stack size 0 bytes, app_timer2.o(i.on_overflow_evt))
-<BR><BR>[Called By]<UL><LI><a href="#[7e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;rtc_irq
-</UL>
-
-<P><STRONG><a name="[7e]"></a>rtc_irq</STRONG> (Thumb, 62 bytes, Stack size 8 bytes, app_timer2.o(i.rtc_irq))
-<BR><BR>[Stack]<UL><LI>Max Depth = 120<LI>Call Chain = rtc_irq &rArr; rtc_update &rArr; rtc_schedule &rArr; drv_rtc_windowed_compare_set &rArr; nrfx_coredep_delay_us
-</UL>
-<BR>[Calls]<UL><LI><a href="#[47b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;timer_req_process
-<LI><a href="#[47c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;rtc_update
-<LI><a href="#[47a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_overflow_evt
-<LI><a href="#[463]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_compare_evt
-<LI><a href="#[462]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_compare1_evt
-<LI><a href="#[38a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_rtc_overflow_pending
-<LI><a href="#[380]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_rtc_compare_pending
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> app_timer2.o(i.app_timer_init)
-</UL>
-<P><STRONG><a name="[47d]"></a>rtc_schedule</STRONG> (Thumb, 116 bytes, Stack size 32 bytes, app_timer2.o(i.rtc_schedule))
-<BR><BR>[Stack]<UL><LI>Max Depth = 88<LI>Call Chain = rtc_schedule &rArr; drv_rtc_windowed_compare_set &rArr; nrfx_coredep_delay_us
-</UL>
-<BR>[Calls]<UL><LI><a href="#[464]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;timer_expire
-<LI><a href="#[27d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;get_now
-<LI><a href="#[38e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_rtc_windowed_compare_set
-<LI><a href="#[37e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_rtc_compare_disable
-<LI><a href="#[275]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_timer_cnt_get
-</UL>
-<BR>[Called By]<UL><LI><a href="#[47c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;rtc_update
-</UL>
-
-<P><STRONG><a name="[47c]"></a>rtc_update</STRONG> (Thumb, 154 bytes, Stack size 24 bytes, app_timer2.o(i.rtc_update))
-<BR><BR>[Stack]<UL><LI>Max Depth = 112<LI>Call Chain = rtc_update &rArr; rtc_schedule &rArr; drv_rtc_windowed_compare_set &rArr; nrfx_coredep_delay_us
-</UL>
-<BR>[Calls]<UL><LI><a href="#[481]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;sortlist_pop
-<LI><a href="#[47d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;rtc_schedule
-<LI><a href="#[47f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_sortlist_peek
-<LI><a href="#[480]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_sortlist_add
-<LI><a href="#[38d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_rtc_stop
-<LI><a href="#[38b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_rtc_start
-</UL>
-<BR>[Called By]<UL><LI><a href="#[7e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;rtc_irq
-</UL>
-
-<P><STRONG><a name="[494]"></a>sorted_list_stop_all</STRONG> (Thumb, 20 bytes, Stack size 8 bytes, app_timer2.o(i.sorted_list_stop_all))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = sorted_list_stop_all &rArr; sortlist_pop
-</UL>
-<BR>[Calls]<UL><LI><a href="#[481]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;sortlist_pop
-</UL>
-<BR>[Called By]<UL><LI><a href="#[47b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;timer_req_process
-</UL>
-
-<P><STRONG><a name="[481]"></a>sortlist_pop</STRONG> (Thumb, 20 bytes, Stack size 8 bytes, app_timer2.o(i.sortlist_pop))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = sortlist_pop
-</UL>
-<BR>[Calls]<UL><LI><a href="#[495]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_sortlist_pop
-</UL>
-<BR>[Called By]<UL><LI><a href="#[494]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;sorted_list_stop_all
-<LI><a href="#[47c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;rtc_update
-</UL>
-
-<P><STRONG><a name="[464]"></a>timer_expire</STRONG> (Thumb, 98 bytes, Stack size 16 bytes, app_timer2.o(i.timer_expire))
-<BR><BR>[Stack]<UL><LI>Max Depth = 40<LI>Call Chain = timer_expire &rArr; get_now &rArr; drv_rtc_counter_get
-</UL>
-<BR>[Calls]<UL><LI><a href="#[27d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;get_now
-<LI><a href="#[480]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_sortlist_add
-</UL>
-<BR>[Called By]<UL><LI><a href="#[47d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;rtc_schedule
-<LI><a href="#[463]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_compare_evt
-</UL>
-
-<P><STRONG><a name="[47b]"></a>timer_req_process</STRONG> (Thumb, 130 bytes, Stack size 24 bytes, app_timer2.o(i.timer_req_process))
-<BR><BR>[Stack]<UL><LI>Max Depth = 40<LI>Call Chain = timer_req_process &rArr; sorted_list_stop_all &rArr; sortlist_pop
-</UL>
-<BR>[Calls]<UL><LI><a href="#[494]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;sorted_list_stop_all
-<LI><a href="#[49a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_sortlist_remove
-<LI><a href="#[480]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_sortlist_add
-<LI><a href="#[3f3]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_atfifo_item_get
-<LI><a href="#[3f2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_atfifo_item_free
-</UL>
-<BR>[Called By]<UL><LI><a href="#[7e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;rtc_irq
-</UL>
-
-<P><STRONG><a name="[27e]"></a>timer_req_schedule</STRONG> (Thumb, 56 bytes, Stack size 24 bytes, app_timer2.o(i.timer_req_schedule))
-<BR><BR>[Stack]<UL><LI>Max Depth = 40<LI>Call Chain = timer_req_schedule &rArr; nrf_atfifo_item_put
-</UL>
-<BR>[Calls]<UL><LI><a href="#[3f5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_atfifo_item_put
-<LI><a href="#[3f0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_atfifo_item_alloc
-<LI><a href="#[49b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_rtc_irq_trigger
-</UL>
-<BR>[Called By]<UL><LI><a href="#[27f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_timer_stop
-<LI><a href="#[27c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_timer_start
-</UL>
-
-<P><STRONG><a name="[37f]"></a>evt_disable</STRONG> (Thumb, 24 bytes, Stack size 16 bytes, drv_rtc.o(i.evt_disable))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = evt_disable
-</UL>
-<BR>[Calls]<UL><LI><a href="#[382]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_rtc_int_disable
-<LI><a href="#[383]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_rtc_event_disable
-</UL>
-<BR>[Called By]<UL><LI><a href="#[38e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_rtc_windowed_compare_set
-<LI><a href="#[37e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_rtc_compare_disable
-</UL>
-
-<P><STRONG><a name="[389]"></a>evt_enable</STRONG> (Thumb, 28 bytes, Stack size 16 bytes, drv_rtc.o(i.evt_enable))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = evt_enable
-</UL>
-<BR>[Calls]<UL><LI><a href="#[387]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_rtc_int_enable
-<LI><a href="#[386]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_rtc_event_enable
-</UL>
-<BR>[Called By]<UL><LI><a href="#[38e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_rtc_windowed_compare_set
-<LI><a href="#[27a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_rtc_overflow_enable
-</UL>
-
-<P><STRONG><a name="[381]"></a>evt_pending</STRONG> (Thumb, 28 bytes, Stack size 16 bytes, drv_rtc.o(i.evt_pending))
-<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = evt_pending &rArr; nrf_rtc_event_clear
-</UL>
-<BR>[Calls]<UL><LI><a href="#[384]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_rtc_event_clear
-</UL>
-<BR>[Called By]<UL><LI><a href="#[38a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_rtc_overflow_pending
-<LI><a href="#[380]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_rtc_compare_pending
-</UL>
-
-<P><STRONG><a name="[38f]"></a>nrf_rtc_cc_get</STRONG> (Thumb, 12 bytes, Stack size 0 bytes, drv_rtc.o(i.nrf_rtc_cc_get))
-<BR><BR>[Called By]<UL><LI><a href="#[38e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_rtc_windowed_compare_set
-</UL>
-
-<P><STRONG><a name="[385]"></a>nrf_rtc_cc_set</STRONG> (Thumb, 10 bytes, Stack size 0 bytes, drv_rtc.o(i.nrf_rtc_cc_set))
-<BR><BR>[Called By]<UL><LI><a href="#[38e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_rtc_windowed_compare_set
-<LI><a href="#[27b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_rtc_compare_set
-</UL>
-
-<P><STRONG><a name="[388]"></a>nrf_rtc_counter_get</STRONG> (Thumb, 8 bytes, Stack size 0 bytes, drv_rtc.o(i.nrf_rtc_counter_get))
-<BR><BR>[Called By]<UL><LI><a href="#[38e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_rtc_windowed_compare_set
-<LI><a href="#[276]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_rtc_counter_get
-</UL>
-
-<P><STRONG><a name="[384]"></a>nrf_rtc_event_clear</STRONG> (Thumb, 14 bytes, Stack size 8 bytes, drv_rtc.o(i.nrf_rtc_event_clear))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = nrf_rtc_event_clear
-</UL>
-<BR>[Called By]<UL><LI><a href="#[381]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;evt_pending
-<LI><a href="#[38e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_rtc_windowed_compare_set
-<LI><a href="#[27b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_rtc_compare_set
-</UL>
-
-<P><STRONG><a name="[383]"></a>nrf_rtc_event_disable</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, drv_rtc.o(i.nrf_rtc_event_disable))
-<BR><BR>[Called By]<UL><LI><a href="#[37f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;evt_disable
-<LI><a href="#[27b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_rtc_compare_set
-</UL>
-
-<P><STRONG><a name="[386]"></a>nrf_rtc_event_enable</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, drv_rtc.o(i.nrf_rtc_event_enable))
-<BR><BR>[Called By]<UL><LI><a href="#[389]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;evt_enable
-<LI><a href="#[38e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_rtc_windowed_compare_set
-<LI><a href="#[27b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_rtc_compare_set
-</UL>
-
-<P><STRONG><a name="[382]"></a>nrf_rtc_int_disable</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, drv_rtc.o(i.nrf_rtc_int_disable))
-<BR><BR>[Called By]<UL><LI><a href="#[37f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;evt_disable
-<LI><a href="#[27b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_rtc_compare_set
-</UL>
-
-<P><STRONG><a name="[387]"></a>nrf_rtc_int_enable</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, drv_rtc.o(i.nrf_rtc_int_enable))
-<BR><BR>[Called By]<UL><LI><a href="#[389]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;evt_enable
-<LI><a href="#[27b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_rtc_compare_set
-</UL>
-
-<P><STRONG><a name="[38c]"></a>nrf_rtc_task_trigger</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, drv_rtc.o(i.nrf_rtc_task_trigger))
-<BR><BR>[Called By]<UL><LI><a href="#[38d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_rtc_stop
-<LI><a href="#[38b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_rtc_start
-</UL>
-
-<P><STRONG><a name="[391]"></a>nrfx_coredep_delay_us</STRONG> (Thumb, 20 bytes, Stack size 16 bytes, drv_rtc.o(i.nrfx_coredep_delay_us))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = nrfx_coredep_delay_us
-</UL>
-<BR>[Called By]<UL><LI><a href="#[38e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_rtc_windowed_compare_set
-</UL>
-
-<P><STRONG><a name="[390]"></a>ticks_sub</STRONG> (Thumb, 10 bytes, Stack size 0 bytes, drv_rtc.o(i.ticks_sub))
-<BR><BR>[Called By]<UL><LI><a href="#[38e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;drv_rtc_windowed_compare_set
-</UL>
-
-<P><STRONG><a name="[483]"></a>__sd_nvic_app_accessible_irq</STRONG> (Thumb, 52 bytes, Stack size 0 bytes, nrf_sdh.o(i.__sd_nvic_app_accessible_irq))
-<BR><BR>[Called By]<UL><LI><a href="#[482]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;sd_nvic_EnableIRQ
-</UL>
-
-<P><STRONG><a name="[43b]"></a>nrf_section_iter_get</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, nrf_sdh.o(i.nrf_section_iter_get))
-<BR><BR>[Called By]<UL><LI><a href="#[439]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;sdh_state_observer_notify
-<LI><a href="#[438]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;sdh_request_observer_notify
-<LI><a href="#[1d9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_sdh_evts_poll
-</UL>
-
-<P><STRONG><a name="[482]"></a>sd_nvic_EnableIRQ</STRONG> (Thumb, 150 bytes, Stack size 8 bytes, nrf_sdh.o(i.sd_nvic_EnableIRQ))
-<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = sd_nvic_EnableIRQ
-</UL>
-<BR>[Calls]<UL><LI><a href="#[483]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__sd_nvic_app_accessible_irq
-</UL>
-<BR>[Called By]<UL><LI><a href="#[43a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;softdevices_evt_irq_enable
-</UL>
-
-<P><STRONG><a name="[438]"></a>sdh_request_observer_notify</STRONG> (Thumb, 56 bytes, Stack size 32 bytes, nrf_sdh.o(i.sdh_request_observer_notify))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = sdh_request_observer_notify &rArr; nrf_section_iter_init
-</UL>
-<BR>[Calls]<UL><LI><a href="#[437]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_section_iter_next
-<LI><a href="#[42e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_section_iter_init
-<LI><a href="#[43b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_section_iter_get
-</UL>
-<BR>[Called By]<UL><LI><a href="#[2dc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_sdh_enable_request
-</UL>
-
-<P><STRONG><a name="[439]"></a>sdh_state_observer_notify</STRONG> (Thumb, 48 bytes, Stack size 32 bytes, nrf_sdh.o(i.sdh_state_observer_notify))
-<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = sdh_state_observer_notify &rArr; nrf_section_iter_init
-</UL>
-<BR>[Calls]<UL><LI><a href="#[437]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_section_iter_next
-<LI><a href="#[42e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_section_iter_init
-<LI><a href="#[43b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_section_iter_get
-</UL>
-<BR>[Called By]<UL><LI><a href="#[2dc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_sdh_enable_request
-</UL>
-
-<P><STRONG><a name="[43a]"></a>softdevices_evt_irq_enable</STRONG> (Thumb, 34 bytes, Stack size 16 bytes, nrf_sdh.o(i.softdevices_evt_irq_enable))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4832<LI>Call Chain = softdevices_evt_irq_enable &rArr; app_error_handler &rArr; app_error_fault_handler &rArr; Flash_SaveLog &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[d1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_error_handler
-<LI><a href="#[482]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;sd_nvic_EnableIRQ
-</UL>
-<BR>[Called By]<UL><LI><a href="#[2dc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_sdh_enable_request
-</UL>
-
-<P><STRONG><a name="[cc]"></a>nrf_sdh_ble_evts_poll</STRONG> (Thumb, 110 bytes, Stack size 424 bytes, nrf_sdh_ble.o(i.nrf_sdh_ble_evts_poll))
-<BR><BR>[Stack]<UL><LI>Max Depth = 5240<LI>Call Chain = nrf_sdh_ble_evts_poll &rArr; app_error_handler &rArr; app_error_fault_handler &rArr; Flash_SaveLog &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[d1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_error_handler
-<LI><a href="#[437]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_section_iter_next
-<LI><a href="#[42e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_section_iter_init
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> nrf_sdh_ble.o(sdh_stack_observers0)
-</UL>
-<P><STRONG><a name="[cd]"></a>nrf_sdh_soc_evts_poll</STRONG> (Thumb, 84 bytes, Stack size 40 bytes, nrf_sdh_soc.o(i.nrf_sdh_soc_evts_poll))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4856<LI>Call Chain = nrf_sdh_soc_evts_poll &rArr; app_error_handler &rArr; app_error_fault_handler &rArr; Flash_SaveLog &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[d1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;app_error_handler
-<LI><a href="#[437]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_section_iter_next
-<LI><a href="#[42e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;nrf_section_iter_init
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> nrf_sdh_soc.o(sdh_stack_observers0)
-</UL>
-<P><STRONG><a name="[80]"></a>dummy_evt_handler</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, ble_dfu.o(i.dummy_evt_handler))
-<BR>[Address Reference Count : 1]<UL><LI> ble_dfu.o(i.ble_dfu_buttonless_init)
-</UL>
-<P><STRONG><a name="[2b5]"></a>on_connect</STRONG> (Thumb, 14 bytes, Stack size 0 bytes, ble_dfu.o(i.on_connect))
-<BR><BR>[Called By]<UL><LI><a href="#[c7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_dfu_buttonless_on_ble_evt
-</UL>
-
-<P><STRONG><a name="[468]"></a>on_ctrlpt_write</STRONG> (Thumb, 114 bytes, Stack size 40 bytes, ble_dfu.o(i.on_ctrlpt_write))
-<BR><BR>[Stack]<UL><LI>Max Depth = 128<LI>Call Chain = on_ctrlpt_write &rArr; ble_dfu_buttonless_on_ctrl_pt_write &rArr; enter_bootloader &rArr; ble_dfu_buttonless_resp_send
-</UL>
-<BR>[Calls]<UL><LI><a href="#[2d8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_srv_is_indication_enabled
-<LI><a href="#[2b9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_dfu_buttonless_on_ctrl_pt_write
-</UL>
-<BR>[Called By]<UL><LI><a href="#[2b7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_rw_authorize_req
-</UL>
-
-<P><STRONG><a name="[2b6]"></a>on_disconnect</STRONG> (Thumb, 24 bytes, Stack size 0 bytes, ble_dfu.o(i.on_disconnect))
-<BR><BR>[Called By]<UL><LI><a href="#[c7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_dfu_buttonless_on_ble_evt
-</UL>
-
-<P><STRONG><a name="[2b8]"></a>on_hvc</STRONG> (Thumb, 40 bytes, Stack size 16 bytes, ble_dfu.o(i.on_hvc))
-<BR><BR>[Stack]<UL><LI>Max Depth = 72<LI>Call Chain = on_hvc &rArr; ble_dfu_buttonless_bootloader_start_prepare &rArr; ble_dfu_buttonless_bootloader_start_finalize &rArr; nrf_pwr_mgmt_shutdown &rArr; nrf_atomic_u32_fetch_store
-</UL>
-<BR>[Calls]<UL><LI><a href="#[2b0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_dfu_buttonless_bootloader_start_prepare
-</UL>
-<BR>[Called By]<UL><LI><a href="#[c7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_dfu_buttonless_on_ble_evt
-</UL>
-
-<P><STRONG><a name="[2b7]"></a>on_rw_authorize_req</STRONG> (Thumb, 62 bytes, Stack size 16 bytes, ble_dfu.o(i.on_rw_authorize_req))
-<BR><BR>[Stack]<UL><LI>Max Depth = 144<LI>Call Chain = on_rw_authorize_req &rArr; on_ctrlpt_write &rArr; ble_dfu_buttonless_on_ctrl_pt_write &rArr; enter_bootloader &rArr; ble_dfu_buttonless_resp_send
-</UL>
-<BR>[Calls]<UL><LI><a href="#[468]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;on_ctrlpt_write
-</UL>
-<BR>[Called By]<UL><LI><a href="#[c7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_dfu_buttonless_on_ble_evt
-</UL>
-
-<P><STRONG><a name="[81]"></a>bsp_ble_dfu_process</STRONG> (Thumb, 150 bytes, Stack size 16 bytes, ble_dfu_unbonded.o(i.bsp_ble_dfu_process))
-<BR><BR>[Stack]<UL><LI>Max Depth = 4600<LI>Call Chain = bsp_ble_dfu_process &rArr; Flash_SaveInfomation &rArr; pm_update &rArr; minfds_record_update &rArr; minfds_record_add &rArr; minfds_gc
-</UL>
-<BR>[Calls]<UL><LI><a href="#[106]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Process_SetHoldOn
-<LI><a href="#[139]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_SaveInfomation
-<LI><a href="#[132]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_SaveBackup
-<LI><a href="#[12e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Flash_DeleteAllStep
-<LI><a href="#[124]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Except_TxError
-<LI><a href="#[2ba]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;enter_bootloader
-<LI><a href="#[2bc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_dfu_buttonless_resp_send
-<LI><a href="#[117]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
-</UL>
-<BR>[Address Reference Count : 3]<UL><LI> ble_dfu_unbonded.o(i.bsp_ble_dfu_process)
-<LI> ble_dfu_unbonded.o(i.bsp_ble_dfu_process_Initialize)
-<LI> ble_dfu_unbonded.o(i.ble_dfu_buttonless_on_ctrl_pt_write)
-</UL>
-<P><STRONG><a name="[2ba]"></a>enter_bootloader</STRONG> (Thumb, 70 bytes, Stack size 16 bytes, ble_dfu_unbonded.o(i.enter_bootloader))
-<BR><BR>[Stack]<UL><LI>Max Depth = 64<LI>Call Chain = enter_bootloader &rArr; ble_dfu_buttonless_resp_send
-</UL>
-<BR>[Calls]<UL><LI><a href="#[2bc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_dfu_buttonless_resp_send
-</UL>
-<BR>[Called By]<UL><LI><a href="#[81]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;bsp_ble_dfu_process
-<LI><a href="#[2b9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_dfu_buttonless_on_ctrl_pt_write
-</UL>
-
-<P><STRONG><a name="[2bb]"></a>set_adv_name</STRONG> (Thumb, 52 bytes, Stack size 16 bytes, ble_dfu_unbonded.o(i.set_adv_name))
-<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = set_adv_name
-</UL>
-<BR>[Called By]<UL><LI><a href="#[2b9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ble_dfu_buttonless_on_ctrl_pt_write
-</UL>
-
-<P><STRONG><a name="[1e6]"></a>__NVIC_SystemReset</STRONG> (Thumb, 56 bytes, Stack size 0 bytes, system_nrf52.o(i.__NVIC_SystemReset))
-<BR><BR>[Called By]<UL><LI><a href="#[35]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SystemInit
-</UL>
-
-<P><STRONG><a name="[1e3]"></a>nrf52_errata_108</STRONG> (Thumb, 78 bytes, Stack size 0 bytes, system_nrf52.o(i.nrf52_errata_108))
-<BR><BR>[Called By]<UL><LI><a href="#[35]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SystemInit
-</UL>
-
-<P><STRONG><a name="[1db]"></a>nrf52_errata_12</STRONG> (Thumb, 78 bytes, Stack size 0 bytes, system_nrf52.o(i.nrf52_errata_12))
-<BR><BR>[Called By]<UL><LI><a href="#[35]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SystemInit
-</UL>
-
-<P><STRONG><a name="[1e4]"></a>nrf52_errata_136</STRONG> (Thumb, 78 bytes, Stack size 0 bytes, system_nrf52.o(i.nrf52_errata_136))
-<BR><BR>[Called By]<UL><LI><a href="#[35]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SystemInit
-</UL>
-
-<P><STRONG><a name="[1dc]"></a>nrf52_errata_16</STRONG> (Thumb, 56 bytes, Stack size 0 bytes, system_nrf52.o(i.nrf52_errata_16))
-<BR><BR>[Called By]<UL><LI><a href="#[35]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SystemInit
-</UL>
-
-<P><STRONG><a name="[1e5]"></a>nrf52_errata_182</STRONG> (Thumb, 54 bytes, Stack size 0 bytes, system_nrf52.o(i.nrf52_errata_182))
-<BR><BR>[Called By]<UL><LI><a href="#[35]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SystemInit
-</UL>
-
-<P><STRONG><a name="[1dd]"></a>nrf52_errata_31</STRONG> (Thumb, 78 bytes, Stack size 0 bytes, system_nrf52.o(i.nrf52_errata_31))
-<BR><BR>[Called By]<UL><LI><a href="#[35]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SystemInit
-</UL>
-
-<P><STRONG><a name="[1de]"></a>nrf52_errata_32</STRONG> (Thumb, 56 bytes, Stack size 0 bytes, system_nrf52.o(i.nrf52_errata_32))
-<BR><BR>[Called By]<UL><LI><a href="#[35]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SystemInit
-</UL>
-
-<P><STRONG><a name="[1df]"></a>nrf52_errata_36</STRONG> (Thumb, 78 bytes, Stack size 0 bytes, system_nrf52.o(i.nrf52_errata_36))
-<BR><BR>[Called By]<UL><LI><a href="#[35]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SystemInit
-</UL>
-
-<P><STRONG><a name="[1e0]"></a>nrf52_errata_37</STRONG> (Thumb, 56 bytes, Stack size 0 bytes, system_nrf52.o(i.nrf52_errata_37))
-<BR><BR>[Called By]<UL><LI><a href="#[35]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SystemInit
-</UL>
-
-<P><STRONG><a name="[1e1]"></a>nrf52_errata_57</STRONG> (Thumb, 56 bytes, Stack size 0 bytes, system_nrf52.o(i.nrf52_errata_57))
-<BR><BR>[Called By]<UL><LI><a href="#[35]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SystemInit
-</UL>
-
-<P><STRONG><a name="[1e2]"></a>nrf52_errata_66</STRONG> (Thumb, 78 bytes, Stack size 0 bytes, system_nrf52.o(i.nrf52_errata_66))
-<BR><BR>[Called By]<UL><LI><a href="#[35]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SystemInit
-</UL>
-
-<P><STRONG><a name="[227]"></a>_fp_digits</STRONG> (Thumb, 366 bytes, Stack size 64 bytes, printfa.o(i._fp_digits), UNUSED)
-<BR><BR>[Calls]<UL><LI><a href="#[da]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_dadd
-<LI><a href="#[e1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_ddiv
-<LI><a href="#[e0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_dmul
-<LI><a href="#[113]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_cdrcmple
-<LI><a href="#[e9]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_d2ulz
-<LI><a href="#[d4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_uldivmod
-</UL>
-<BR>[Called By]<UL><LI><a href="#[20e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_printf_core
-</UL>
-
-<P><STRONG><a name="[20e]"></a>_printf_core</STRONG> (Thumb, 1744 bytes, Stack size 136 bytes, printfa.o(i._printf_core), UNUSED)
-<BR><BR>[Calls]<UL><LI><a href="#[22a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_uidivmod
-<LI><a href="#[228]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_printf_pre_padding
-<LI><a href="#[229]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_printf_post_padding
-<LI><a href="#[227]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_fp_digits
-<LI><a href="#[d4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_uldivmod
-</UL>
-<BR>[Called By]<UL><LI><a href="#[20d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__0sprintf
-</UL>
-
-<P><STRONG><a name="[229]"></a>_printf_post_padding</STRONG> (Thumb, 36 bytes, Stack size 24 bytes, printfa.o(i._printf_post_padding), UNUSED)
-<BR><BR>[Called By]<UL><LI><a href="#[20e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_printf_core
-</UL>
-
-<P><STRONG><a name="[228]"></a>_printf_pre_padding</STRONG> (Thumb, 46 bytes, Stack size 24 bytes, printfa.o(i._printf_pre_padding), UNUSED)
-<BR><BR>[Called By]<UL><LI><a href="#[20e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_printf_core
-</UL>
-
-<P><STRONG><a name="[4e]"></a>_sputc</STRONG> (Thumb, 10 bytes, Stack size 0 bytes, printfa.o(i._sputc))
-<BR><BR>[Called By]<UL><LI><a href="#[20d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__0sprintf
-</UL>
-<BR>[Address Reference Count : 1]<UL><LI> printfa.o(i.__0sprintf)
-</UL><P>
-<H3>
-Undefined Global Symbols
-</H3><HR></body></html>

+ 1 - 1
pca10040/s132/arm5_no_packs/_build/nrf52832_xxaa.lnp

@@ -22,7 +22,6 @@
 ".\_build\app_charge.o"
 ".\_build\app_detectishost.o"
 ".\_build\app_authen.o"
-".\_build\app_one_wire.o"
 ".\_build\app_pair.o"
 ".\_build\hal_ble_client.o"
 ".\_build\hal_ble_host.o"
@@ -53,6 +52,7 @@
 "..\..\..\..\..\..\components\toolchain\cmsis\dsp\ARM\arm_cortexM4lf_math.lib"
 ".\_build\drv_qma7981.o"
 ".\_build\drv_iic_middle.o"
+".\_build\drv_trigger.o"
 ".\_build\slave.o"
 ".\_build\host.o"
 ".\_build\queue.o"

Різницю між файлами не показано, бо вона завелика
+ 5 - 6
pca10040/s132/arm5_no_packs/ble_app_uart_c_pca10040_s132.uvguix.Administrator


+ 42 - 42
pca10040/s132/arm5_no_packs/ble_app_uart_c_pca10040_s132.uvoptx

@@ -717,18 +717,6 @@
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
       <bDave2>0</bDave2>
-      <PathWithFileName>..\..\..\app\app_one_wire.c</PathWithFileName>
-      <FilenameWithoutPath>app_one_wire.c</FilenameWithoutPath>
-      <RteFlg>0</RteFlg>
-      <bShared>0</bShared>
-    </File>
-    <File>
-      <GroupNumber>2</GroupNumber>
-      <FileNumber>27</FileNumber>
-      <FileType>1</FileType>
-      <tvExp>0</tvExp>
-      <tvExpOptDlg>0</tvExpOptDlg>
-      <bDave2>0</bDave2>
       <PathWithFileName>..\..\..\app\app_pair.c</PathWithFileName>
       <FilenameWithoutPath>app_pair.c</FilenameWithoutPath>
       <RteFlg>0</RteFlg>
@@ -744,7 +732,7 @@
     <RteFlg>0</RteFlg>
     <File>
       <GroupNumber>3</GroupNumber>
-      <FileNumber>28</FileNumber>
+      <FileNumber>27</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -756,7 +744,7 @@
     </File>
     <File>
       <GroupNumber>3</GroupNumber>
-      <FileNumber>29</FileNumber>
+      <FileNumber>28</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -768,7 +756,7 @@
     </File>
     <File>
       <GroupNumber>3</GroupNumber>
-      <FileNumber>30</FileNumber>
+      <FileNumber>29</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -780,7 +768,7 @@
     </File>
     <File>
       <GroupNumber>3</GroupNumber>
-      <FileNumber>31</FileNumber>
+      <FileNumber>30</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -792,7 +780,7 @@
     </File>
     <File>
       <GroupNumber>3</GroupNumber>
-      <FileNumber>32</FileNumber>
+      <FileNumber>31</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -804,7 +792,7 @@
     </File>
     <File>
       <GroupNumber>3</GroupNumber>
-      <FileNumber>33</FileNumber>
+      <FileNumber>32</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -816,7 +804,7 @@
     </File>
     <File>
       <GroupNumber>3</GroupNumber>
-      <FileNumber>34</FileNumber>
+      <FileNumber>33</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -828,7 +816,7 @@
     </File>
     <File>
       <GroupNumber>3</GroupNumber>
-      <FileNumber>35</FileNumber>
+      <FileNumber>34</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -840,7 +828,7 @@
     </File>
     <File>
       <GroupNumber>3</GroupNumber>
-      <FileNumber>36</FileNumber>
+      <FileNumber>35</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -852,7 +840,7 @@
     </File>
     <File>
       <GroupNumber>3</GroupNumber>
-      <FileNumber>37</FileNumber>
+      <FileNumber>36</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -864,7 +852,7 @@
     </File>
     <File>
       <GroupNumber>3</GroupNumber>
-      <FileNumber>38</FileNumber>
+      <FileNumber>37</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -876,7 +864,7 @@
     </File>
     <File>
       <GroupNumber>3</GroupNumber>
-      <FileNumber>39</FileNumber>
+      <FileNumber>38</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -888,7 +876,7 @@
     </File>
     <File>
       <GroupNumber>3</GroupNumber>
-      <FileNumber>40</FileNumber>
+      <FileNumber>39</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -900,7 +888,7 @@
     </File>
     <File>
       <GroupNumber>3</GroupNumber>
-      <FileNumber>41</FileNumber>
+      <FileNumber>40</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -912,7 +900,7 @@
     </File>
     <File>
       <GroupNumber>3</GroupNumber>
-      <FileNumber>42</FileNumber>
+      <FileNumber>41</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -932,7 +920,7 @@
     <RteFlg>0</RteFlg>
     <File>
       <GroupNumber>4</GroupNumber>
-      <FileNumber>43</FileNumber>
+      <FileNumber>42</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -944,7 +932,7 @@
     </File>
     <File>
       <GroupNumber>4</GroupNumber>
-      <FileNumber>44</FileNumber>
+      <FileNumber>43</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -956,7 +944,7 @@
     </File>
     <File>
       <GroupNumber>4</GroupNumber>
-      <FileNumber>45</FileNumber>
+      <FileNumber>44</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -968,7 +956,7 @@
     </File>
     <File>
       <GroupNumber>4</GroupNumber>
-      <FileNumber>46</FileNumber>
+      <FileNumber>45</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -980,7 +968,7 @@
     </File>
     <File>
       <GroupNumber>4</GroupNumber>
-      <FileNumber>47</FileNumber>
+      <FileNumber>46</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -992,7 +980,7 @@
     </File>
     <File>
       <GroupNumber>4</GroupNumber>
-      <FileNumber>48</FileNumber>
+      <FileNumber>47</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -1004,7 +992,7 @@
     </File>
     <File>
       <GroupNumber>4</GroupNumber>
-      <FileNumber>49</FileNumber>
+      <FileNumber>48</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -1024,7 +1012,7 @@
     <RteFlg>0</RteFlg>
     <File>
       <GroupNumber>5</GroupNumber>
-      <FileNumber>50</FileNumber>
+      <FileNumber>49</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -1036,7 +1024,7 @@
     </File>
     <File>
       <GroupNumber>5</GroupNumber>
-      <FileNumber>51</FileNumber>
+      <FileNumber>50</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -1048,7 +1036,7 @@
     </File>
     <File>
       <GroupNumber>5</GroupNumber>
-      <FileNumber>52</FileNumber>
+      <FileNumber>51</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -1060,7 +1048,7 @@
     </File>
     <File>
       <GroupNumber>5</GroupNumber>
-      <FileNumber>53</FileNumber>
+      <FileNumber>52</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -1072,7 +1060,7 @@
     </File>
     <File>
       <GroupNumber>5</GroupNumber>
-      <FileNumber>54</FileNumber>
+      <FileNumber>53</FileNumber>
       <FileType>4</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -1084,7 +1072,7 @@
     </File>
     <File>
       <GroupNumber>5</GroupNumber>
-      <FileNumber>55</FileNumber>
+      <FileNumber>54</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -1096,7 +1084,7 @@
     </File>
     <File>
       <GroupNumber>5</GroupNumber>
-      <FileNumber>56</FileNumber>
+      <FileNumber>55</FileNumber>
       <FileType>1</FileType>
       <tvExp>0</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
@@ -1106,6 +1094,18 @@
       <RteFlg>0</RteFlg>
       <bShared>0</bShared>
     </File>
+    <File>
+      <GroupNumber>5</GroupNumber>
+      <FileNumber>56</FileNumber>
+      <FileType>1</FileType>
+      <tvExp>0</tvExp>
+      <tvExpOptDlg>0</tvExpOptDlg>
+      <bDave2>0</bDave2>
+      <PathWithFileName>..\..\..\drivers\drv_trigger.c</PathWithFileName>
+      <FilenameWithoutPath>drv_trigger.c</FilenameWithoutPath>
+      <RteFlg>0</RteFlg>
+      <bShared>0</bShared>
+    </File>
   </Group>
 
   <Group>
@@ -1190,7 +1190,7 @@
 
   <Group>
     <GroupName>motion</GroupName>
-    <tvExp>0</tvExp>
+    <tvExp>1</tvExp>
     <tvExpOptDlg>0</tvExpOptDlg>
     <cbSel>0</cbSel>
     <RteFlg>0</RteFlg>

+ 10 - 10
pca10040/s132/arm5_no_packs/ble_app_uart_c_pca10040_s132.uvprojx

@@ -514,11 +514,6 @@
               <FilePath>..\..\..\app\app_Authen.c</FilePath>
             </File>
             <File>
-              <FileName>app_one_wire.c</FileName>
-              <FileType>1</FileType>
-              <FilePath>..\..\..\app\app_one_wire.c</FilePath>
-            </File>
-            <File>
               <FileName>app_pair.c</FileName>
               <FileType>1</FileType>
               <FilePath>..\..\..\app\app_pair.c</FilePath>
@@ -683,6 +678,11 @@
               <FileType>1</FileType>
               <FilePath>..\..\..\drivers\drv_iic_middle.c</FilePath>
             </File>
+            <File>
+              <FileName>drv_trigger.c</FileName>
+              <FileType>1</FileType>
+              <FilePath>..\..\..\drivers\drv_trigger.c</FilePath>
+            </File>
           </Files>
         </Group>
         <Group>
@@ -3350,11 +3350,6 @@
               <FilePath>..\..\..\app\app_Authen.c</FilePath>
             </File>
             <File>
-              <FileName>app_one_wire.c</FileName>
-              <FileType>1</FileType>
-              <FilePath>..\..\..\app\app_one_wire.c</FilePath>
-            </File>
-            <File>
               <FileName>app_pair.c</FileName>
               <FileType>1</FileType>
               <FilePath>..\..\..\app\app_pair.c</FilePath>
@@ -3519,6 +3514,11 @@
               <FileType>1</FileType>
               <FilePath>..\..\..\drivers\drv_iic_middle.c</FilePath>
             </File>
+            <File>
+              <FileName>drv_trigger.c</FileName>
+              <FileType>1</FileType>
+              <FilePath>..\..\..\drivers\drv_trigger.c</FilePath>
+            </File>
           </Files>
         </Group>
         <Group>

+ 102 - 40
system/selfcheck.c

@@ -22,11 +22,11 @@
 #include "system.h"
 #include "hal_mahonyAHRS.h"
 #include "app_detectIsHost.h"
-
+#include "drv_trigger.h"
 
 /*Private macro ------------------------------------------------------------------------------------------------------------------------------------*/
 
-#define	SELFCHECK_SCAN_DEVICE_RSSI_MIN_THRESHOLD					                     -18																								//需要扫描的设备的RSSI最小阈值,-76
+#define	SELFCHECK_SCAN_DEVICE_RSSI_MIN_THRESHOLD_3					                    -18																								//需要扫描的设备的RSSI最小阈值,-76
 
 #define	SELFCHECK_SCAN_DEVICE_RSSI_MIN_THRESHOLD_2					                   -60																								//需要扫描的设备的RSSI最小阈值,-76
 
@@ -46,9 +46,11 @@
 
 #define SELFCHECK_SENSOR_MAG_NO_WELDING_CAPACITOR_MIN_THRESHOLD								 200																								//地磁传感器没焊接电容的最小阈值
 
-#define	SELFCHECK_LED_DISPLAY_CYCLE_THRESHOLD																	 200																								//自检灯显示周期时间,单位ms
+#define	SELFCHECK_LED_DISPLAY_CYCLE_THRESHOLD																	 300																								//自检灯显示周期时间,单位ms
+
+#define	SELFCHECK_MIDDLE_ACC_CHECK_MT_MIN_THRESHOLD_2													 3000																								//中间加速度检测电机最小差值,不震动的差值是129,有个能震动的差值是1800+
 
-#define	SELFCHECK_MIDDLE_ACC_CHECK_MT_MIN_THRESHOLD														 800																								//中间加速度检测电机最小差值,不震动的差值是129,有个能震动的差值是1800+
+#define	SELFCHECK_MIDDLE_ACC_CHECK_MT_MIN_THRESHOLD_3													 1000																								//中间加速度检测电机最小差值,不震动的差值是129,有个能震动的差值是1800+
 
 #define SELFCHECK_IMU_MONITOR_DATA_ERR_SUM_MAX																 416																								//数据监测错误累计最大值
 
@@ -97,10 +99,10 @@ typedef enum {
 	
 	SELFCHECK_RESULT_ERR_BATTERY_PIN_ADC,																																														//自检失败——电池分压电阻ADC
 	
-	SELFCHECK_RESULT_ERR_MT,																																																				//自检失败——震动电机
-	
 	SELFCHECK_RESULT_ERR_RSSI,																																																			//自检失败——RSSI
 	
+	SELFCHECK_RESULT_ERR_MT,																																																				//自检失败——震动电机
+	
 } SELFCHECK_RESULT_e;
 
 typedef struct _selfcheck
@@ -349,12 +351,25 @@ static void selfcheck_result_display_process(void)
 	//天线如果没有检测到可以持续检测
 	if(ob_selfcheck.selfcheck_result_flash_num == SELFCHECK_RESULT_ERR_RSSI && (ob_selfcheck.selfcheck_result & (1 << SELFCHECK_RESULT_ERR_RSSI)) == 0)
 	{
-		//重新根据自检结果设置灯
-		ob_selfcheck.selfcheck_result_led_color = COLOR_GREEN;
-		ob_selfcheck.selfcheck_result_flash_num = 1;
-		led_display_count = 0;
-		WS2812_DisplayDot(COLOR_BLACK);WS2812_Pwm_Play();
-		return;
+		//检测震动电机是否通过
+		if((ob_selfcheck.selfcheck_result & (1 << SELFCHECK_RESULT_ERR_MT)) == 0)
+		{
+			//重新根据自检结果设置灯
+			ob_selfcheck.selfcheck_result_led_color = COLOR_GREEN;
+			ob_selfcheck.selfcheck_result_flash_num = 1;
+			led_display_count = 0;
+			WS2812_DisplayDot(COLOR_BLACK);WS2812_Pwm_Play();
+			return;
+		}
+		else
+		{
+			//重新根据自检结果设置灯
+			ob_selfcheck.selfcheck_result_led_color = COLOR_RED;
+			ob_selfcheck.selfcheck_result_flash_num = SELFCHECK_RESULT_ERR_MT;
+			led_display_count = 0;
+			WS2812_DisplayDot(COLOR_BLACK);WS2812_Pwm_Play();
+			return;
+		}
 	}	
 	
 	Process_UpdatePeroid(selfcheck_result_display_process,SELFCHECK_LED_DISPLAY_CYCLE_THRESHOLD);
@@ -373,7 +388,7 @@ static void selfcheck_result_display_process(void)
 	{
 		led_display_count = 0;
 		WS2812_DisplayDot(COLOR_BLACK);WS2812_Pwm_Play();
-		Process_UpdatePeroid(selfcheck_result_display_process,SELFCHECK_LED_DISPLAY_CYCLE_THRESHOLD * 3);
+		if(ob_selfcheck.selfcheck_result_led_color != COLOR_GREEN)Process_UpdatePeroid(selfcheck_result_display_process,SELFCHECK_LED_DISPLAY_CYCLE_THRESHOLD * 3);
 	}
 }
 
@@ -403,9 +418,8 @@ static void selfcheck_led_process(void)
 
 static void selfcheck_mt_process(void)
 {
-	static int16_t	max_acc_z = 0;
-	static int16_t	min_acc_z = 32767;
-	int16_t	acc_z = 0;
+	static int16_t max_acc_z	=	-32767;
+	static int16_t min_acc_z	=	32767;
 	
 	//喂狗
 	feed_watchdog();	
@@ -419,18 +433,40 @@ static void selfcheck_mt_process(void)
 		{
 			if(ob_selfcheck.m_data.acc[0]==0 && ob_selfcheck.m_data.acc[1]==0 && ob_selfcheck.m_data.acc[2]==0)return;
 			if(ob_selfcheck.m_data.acc[0]==-1 && ob_selfcheck.m_data.acc[1]==-1 && ob_selfcheck.m_data.acc[2]==-1)return;
-
-			if(ob_selfcheck.m_data.acc[2] < 0)acc_z = ob_selfcheck.m_data.acc[2]*-1;
-			else acc_z = ob_selfcheck.m_data.acc[2];
-			
-			max_acc_z = (max_acc_z > acc_z)?max_acc_z:acc_z;
 			
-			min_acc_z = (min_acc_z > acc_z)?acc_z:min_acc_z;
-
-			if((max_acc_z - min_acc_z) < SELFCHECK_MIDDLE_ACC_CHECK_MT_MIN_THRESHOLD)ob_selfcheck.selfcheck_result |= (1 << SELFCHECK_RESULT_ERR_MT);
-			else ob_selfcheck.selfcheck_result &= ~(1 << SELFCHECK_RESULT_ERR_MT);
-
-//			SEGGER_RTT_printf(0,"middle acc %d,%d,%d acc_z:%d,max:%d,min:%d,%d\r\n",ob_selfcheck.m_data.acc[0],ob_selfcheck.m_data.acc[1],ob_selfcheck.m_data.acc[2],acc_z,max_acc_z,min_acc_z,max_acc_z-min_acc_z);
+			max_acc_z = (max_acc_z > ob_selfcheck.m_data.acc[2])?max_acc_z:ob_selfcheck.m_data.acc[2];
+			min_acc_z = (min_acc_z > ob_selfcheck.m_data.acc[2])?ob_selfcheck.m_data.acc[2]:min_acc_z;
+			if(max_acc_z > min_acc_z)
+			{
+				if(ob_selfcheck.order == 0x02)
+				{
+					if((max_acc_z - min_acc_z) < SELFCHECK_MIDDLE_ACC_CHECK_MT_MIN_THRESHOLD_2)
+					{
+						ob_selfcheck.selfcheck_result |= (1 << SELFCHECK_RESULT_ERR_MT);
+					}
+					else 
+					{
+						ob_selfcheck.selfcheck_result &= ~(1 << SELFCHECK_RESULT_ERR_MT);
+					}
+				}
+				
+				if(ob_selfcheck.order == 0x03)
+				{
+					if((max_acc_z - min_acc_z) < SELFCHECK_MIDDLE_ACC_CHECK_MT_MIN_THRESHOLD_3)
+					{
+						ob_selfcheck.selfcheck_result |= (1 << SELFCHECK_RESULT_ERR_MT);
+					}
+					else 
+					{
+						ob_selfcheck.selfcheck_result &= ~(1 << SELFCHECK_RESULT_ERR_MT);
+					}
+				}
+			}
+			else
+			{
+				ob_selfcheck.selfcheck_result |= (1 << SELFCHECK_RESULT_ERR_MT);
+			}
+//			SEGGER_RTT_printf(0,"max_acc_z-min_acc_z:%d\r\n",max_acc_z-min_acc_z);
 		}
 	}
 }
@@ -439,6 +475,20 @@ static void selfcheck_continue_mt_process(void)
 {
 	static uint8_t flow = 0;
 	
+	static uint32_t	shake_ms = 0;
+	static uint32_t	shake2_ms = 0;
+	
+	if((ob_selfcheck.selfcheck_result & (1 << SELFCHECK_RESULT_ERR_MT)) == 0)
+	{
+		shake_ms = 300;
+		shake2_ms = 700;
+	}
+	else
+	{
+		shake_ms = 1000;
+		shake2_ms = 1000;
+	}
+	
 	//喂狗
 	feed_watchdog();	
 	
@@ -448,13 +498,13 @@ static void selfcheck_continue_mt_process(void)
 			nrf_gpio_pin_write(PIN_MT_EN,1);
 			flow = 1;
 			Process_SetHoldOn(selfcheck_continue_mt_process,1);
-			Process_UpdatePeroid(selfcheck_continue_mt_process,100);
+			Process_UpdatePeroid(selfcheck_continue_mt_process,shake_ms);
 			break;
 		case 1:
 			nrf_gpio_pin_write(PIN_MT_EN,0);
 			flow = 0;
 			Process_SetHoldOn(selfcheck_continue_mt_process,0);
-			Process_UpdatePeroid(selfcheck_continue_mt_process,900);
+			Process_UpdatePeroid(selfcheck_continue_mt_process,shake2_ms);
 			break;
 	}
 }
@@ -659,13 +709,16 @@ static void selfcheck_process(void)
 	if(t_count == (3000/100))
 	{
 		nrf_gpio_pin_write(PIN_MT_EN,1);
+		//初始化震动电机自检线程
+		Process_Start(30,"selfcheck_mt_process",selfcheck_mt_process);	
+		Process_SetHoldOn(selfcheck_mt_process,1);
 	}
 
 	//查看能否读取到任意广播名字,且最小的RSSI是否满足条件,设置自检结果。
 	
 	if(ob_selfcheck.order == 0x03)
 	{
-		if(SELFCHECK_SCAN_DEVICE_RSSI_MIN_THRESHOLD >= ob_selfcheck.max_rssi)ob_selfcheck.selfcheck_result |= (1 << SELFCHECK_RESULT_ERR_RSSI);
+		if(SELFCHECK_SCAN_DEVICE_RSSI_MIN_THRESHOLD_3 >= ob_selfcheck.max_rssi)ob_selfcheck.selfcheck_result |= (1 << SELFCHECK_RESULT_ERR_RSSI);
 		else ob_selfcheck.selfcheck_result &= ~(1 << SELFCHECK_RESULT_ERR_RSSI);
 		
 //		SEGGER_RTT_printf(0,"SELFCHECK_SCAN_DEVICE_RSSI_MIN_THRESHOLD\r\n");
@@ -759,6 +812,17 @@ static void selfcheck_process(void)
 	{
 		last_tim = TIME_GetTicks();
 		
+		if(ob_selfcheck.max_rssi == -120)
+		{
+			nrf_ble_scan_stop();
+			host_disconnect();
+			if(host_isconnect() == 0)
+			{
+				host_set_scan_name((char *)"***********",sizeof("***********"));
+				advdata_report_Evt_Regist(scan_report_cb);
+				Continuous_scan_start();
+			}
+		}
 		ob_selfcheck.max_rssi = -120;
 	}
 	L=0;
@@ -786,7 +850,7 @@ static void selfcheck_process(void)
 	
 	
 	//退出开关
-	uint32_t ch = nrf_gpio_pin_read(PIN_CHARGING);
+	uint32_t ch = drv_GetChargeTrig();
 	if(ch > 0)
 	{
 		if(continue_trigger <= 10)continue_trigger = 10;
@@ -796,6 +860,8 @@ static void selfcheck_process(void)
 		if(continue_trigger != 0)continue_trigger--;
 	}
 	
+//	SEGGER_RTT_printf(0,"ch:%d\r\n",ch);
+	
 
 //	SEGGER_RTT_printf(0,"continue_trigger:%d,%d,%d\r\n",continue_trigger,adc_value,ch);
 //	SEGGER_RTT_printf(0,"front mag:%d,%d,%d,%d\r\n",ob_selfcheck.f_data.mag[0],ob_selfcheck.f_data.mag[1],ob_selfcheck.f_data.mag[2],front_mag_norm);
@@ -894,7 +960,7 @@ void selfcheck_trigger_Init(void)
 void selfcheck_trigger_set_order(char order)
 {
 //	SEGGER_RTT_printf(0,"order:0x%x,0x%x\r\n",order,ob_selfcheck.order);
-	if(ob_selfcheck.order == 0 && BLE_CHARGE_PULLOUT != hal_charge_Getstate())ob_selfcheck.order	=	order;
+	if(ob_selfcheck.order == 0)ob_selfcheck.order	=	order;
 }
 
 
@@ -933,17 +999,17 @@ void selfcheck_trigger_callback(char order)
 	nrf_delay_ms(200);
 	feed_watchdog();
 
+
 	//关闭扫描,设置任意设备扫描回调,开启扫描
 	while(TIME_GetTicks() - last_tim <= 1000)
 	{
+		nrf_ble_scan_stop();
 		host_disconnect();
 		if(host_isconnect() == 0)break;
 	}
-	nrf_ble_scan_stop();
 	host_set_scan_name((char *)"***********",sizeof("***********"));
 	advdata_report_Evt_Regist(scan_report_cb);
-	error = Continuous_scan_start();
-	if(error != APP_SUCCESS)ob_selfcheck.selfcheck_result |= (1 << SELFCHECK_RESULT_ERR_RSSI);
+	Continuous_scan_start();
 
 	//配置LED电源引脚为输出SOD1
 	nrf_gpio_cfg(
@@ -992,12 +1058,8 @@ void selfcheck_trigger_callback(char order)
 //		SEGGER_RTT_printf(0,"drv_qmc6310_selfcheck_mag() != 0!!!!!!!!!!!!!!\r\n");
 	}
 	
-	//初始化震动电机自检线程
-	Process_Start(0,"selfcheck_mt_process",selfcheck_mt_process);	
-	Process_SetHoldOn(selfcheck_mt_process,1);
-	
 	//初始化LED自检线程
-	Process_Start(SELFCHECK_LED_DISPLAY_CYCLE_THRESHOLD,"selfcheck_led_process",selfcheck_led_process);	
+	Process_Start(300,"selfcheck_led_process",selfcheck_led_process);	
 	Process_SetHoldOn(selfcheck_led_process,1);
 	
 

+ 2 - 3
system/usr.c

@@ -40,6 +40,7 @@
 #include "fml_adc.h"
 #include "app_pair.h"
 #include "selfcheck.h"
+#include "drv_trigger.h"
 
 void usr1_Init(void)
 {
@@ -92,9 +93,7 @@ void USR_Init(void)
 	#endif
 	
 	#if !BleNameHoldOn_ENANBLE
-	#if ONE_WIRE_ENABLE
-	app_pair_chargerpin_Init();		
-	#endif
+  drv_TriggerInit();
 	app_pair_Initialize();	
 	#endif
 	

+ 1 - 1
system/usr_config.h

@@ -5,7 +5,7 @@
 #define SHOES_NAME "FUN SHOE"
 #define SHOES_NAME_LEN  64
 #define HARDWARE_VERSION	0x00010401
-#define SOFTWARE_VERSION	0x0031
+#define SOFTWARE_VERSION	0x0035
 
 #if SOFTWARE_VERSION <= 0x0000
 #error "SOFTWARE VERSION must be > 0"

Деякі файли не було показано, через те що забагато файлів було змінено