From 441f31b0ca5ac3888e9225462596c18da7afd4ef Mon Sep 17 00:00:00 2001 From: Auriane Lartigue Date: Fri, 29 May 2020 13:11:06 +0200 Subject: [PATCH] Ajout Objectif 4 --- Obj_4/Librairie/GFSSP72/GFSSP72.pdf | Bin 0 -> 91196 bytes Obj_4/Librairie/GFSSP72/gassp72.h | 115 + Obj_4/Librairie/GFSSP72/gfssp72.lib | Bin 0 -> 41156 bytes Obj_4/Librairie/etat/etat.h | 7 + Obj_4/Librairie/etat/etat.inc | 6 + Obj_4/Obj/CHTI.build_log.htm | 65 + Obj_4/Obj/CHTI.map | 634 +++ Obj_4/Obj/CHTI.sct | 15 + Obj_4/Obj/principal.crf | Bin 0 -> 240823 bytes Obj_4/Project.uvoptx | 396 ++ Obj_4/Project.uvprojx | 466 +++ Obj_4/Src/Fichiers_DFT/DFT.s | 61 + Obj_4/Src/Fichiers_DFT/TabSinCos.asm | 136 + Obj_4/Src/Fichiers_Son/Son.s | 63 + Obj_4/Src/Fichiers_Son/bruitverre.asm | 5527 +++++++++++++++++++++++++ Obj_4/Src/principal.c | 145 + Obj_4/Src/startup-rvds.s | 335 ++ 17 files changed, 7971 insertions(+) create mode 100644 Obj_4/Librairie/GFSSP72/GFSSP72.pdf create mode 100644 Obj_4/Librairie/GFSSP72/gassp72.h create mode 100644 Obj_4/Librairie/GFSSP72/gfssp72.lib create mode 100644 Obj_4/Librairie/etat/etat.h create mode 100644 Obj_4/Librairie/etat/etat.inc create mode 100644 Obj_4/Obj/CHTI.build_log.htm create mode 100644 Obj_4/Obj/CHTI.map create mode 100644 Obj_4/Obj/CHTI.sct create mode 100644 Obj_4/Obj/principal.crf create mode 100644 Obj_4/Project.uvoptx create mode 100644 Obj_4/Project.uvprojx create mode 100644 Obj_4/Src/Fichiers_DFT/DFT.s create mode 100644 Obj_4/Src/Fichiers_DFT/TabSinCos.asm create mode 100644 Obj_4/Src/Fichiers_Son/Son.s create mode 100644 Obj_4/Src/Fichiers_Son/bruitverre.asm create mode 100644 Obj_4/Src/principal.c create mode 100644 Obj_4/Src/startup-rvds.s diff --git a/Obj_4/Librairie/GFSSP72/GFSSP72.pdf b/Obj_4/Librairie/GFSSP72/GFSSP72.pdf new file mode 100644 index 0000000000000000000000000000000000000000..fc4f40c87e1c5111d78d285d3ea3e98b3498ebac GIT binary patch literal 91196 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

_>DT=_)lU)y`j%hN?2G}v+Y32Mz%%B%$WKs!l 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 literal 0 HcmV?d00001 diff --git a/Obj_4/Librairie/GFSSP72/gassp72.h b/Obj_4/Librairie/GFSSP72/gassp72.h new file mode 100644 index 0000000..6cfaee4 --- /dev/null +++ b/Obj_4/Librairie/GFSSP72/gassp72.h @@ -0,0 +1,115 @@ +/** + * Bibliotheque GASSP 2013-02-15 + * + * GPIO - ADC - Sequenceur - System Timer - PWM - 72 MHz + * + */ + +// STM32F10X_CL : pour le STM32F107 "Communication Line" +// STM32F10X_MD : pour le STM32F103 "Medium Density" + +//#define STM32F10X_MD // 2019 fix for Keil 5.23 + +#include "stm32f10x.h" + +// horloge systeme (config statique a 72 MHz pour le STM32F103) ------------ +void CLOCK_Configure(void); + +// Timers 1, 2, 3, 4 ------------------------------------------------------- +// la duree entre deux debordements successifs doit etre donnnee en periodes +// d'horloge CPU (typiquement 72 MHz) +void Timer_1234_Init_ff( TIM_TypeDef *Timer, u32 Duree_ticks ); + +// activation d'une fonction de traitement de l'interruption timer (callback) +void Active_IT_Debordement_Timer( TIM_TypeDef *Timer, char Prio, void (*IT_function)(void) ); + +// bloque le timer +#define Bloque_Timer(Timer) Timer->CR1=(Timer->CR1)&~(1<<0) + +// Lance timer +#define Run_Timer(Timer) Timer->CR1=(Timer->CR1)|(1<<0) + +// PWM (basee sur un des Timers 1, 2, 3, 4 --------------------------------- +// la periode doit etre donnee en periodes d'horloge CPU (typiquement 72 MHz) +// la fonction rend la pleine echelle ou resolution, c'est a dire la plage +// de valeurs acceptees pour moduler la largeur d'impulsion +vu16 PWM_Init_ff( TIM_TypeDef *Timer, char Voie, u32 Periode_ticks ); + +// Timer systeme "SysTick" ------------------------------------------------- + +// la periode doit etre donnee en periodes d'horloge CPU (typiquement 72 MHz) +void Systick_Period_ff( unsigned int Periode_ticks ); + +// activation d'une fonction de traitement de l'interruption timer (callback) +void Systick_Prio_IT( char Prio, void (*Systick_function)(void) ); + +#define SysTick_On ((SysTick->CTRL)=(SysTick->CTRL)|1<<0) +#define SysTick_Off ((SysTick->CTRL)=(SysTick->CTRL)& ~(1<<0)) +#define SysTick_Enable_IT ((SysTick->CTRL)=(SysTick->CTRL)|1<<1) +#define SysTick_Disable_IT ((SysTick->CTRL)=(SysTick->CTRL)& ~(1<<1)) + +// ADC - DMA --------------------------------------------------------------- +// Analog-to-Digital Conversion, Direct Memory Access + +// la duree d'echantillonnage doit etre donnee en periodes d'horloge CPU (typiquement 72 MHz) +// la fonction rend la duree totale de conversion (meme unites) +u32 Init_TimingADC_ActiveADC_ff( ADC_TypeDef * ADC, u32 Duree_Ech_ticks ); + +// choix d'un canal ADC unique +void Single_Channel_ADC( ADC_TypeDef * ADC, char Voie_ADC ); + +// la periode de repetition des acquisitions doit etre donnee en periodes d'horloge CPU +// Les sources de déclenchement possibles : +#define TIM1_CC1 0 +#define TIM1_CC2 1 +#define TIM1_CC3 2 +#define TIM2_CC2 3 +#define TIM4_CC4 5 +void Init_Conversion_On_Trig_Timer_ff( ADC_TypeDef * ADC, char Source, u32 Periode_ticks ); + +// initialisation d'acquisition en mode DMA +// Ptr_Table_DMA doit pointer sur un espace memoire suffisant pour le nombre d'ech. demande +void Init_ADC1_DMA1( char Circ, vu16 *Ptr_Table_DMA ); + + +// Lance une DMA sur le nombre de points spécifie. Les resultats seront stockes +// dans la zone de RAM écrite est indiquée lors de l'appel de la fonction Init_ADC1_DMA1 +void Start_DMA1( u16 NbEchDMA ); + +// arret DMA +#define Stop_DMA1 DMA1_Channel1->CCR =(DMA1_Channel1->CCR) &~0x1; + +// fonction d'attente (bloquante) +// la duree depend de la periode d'acquisition et du nombre d'echantillons +void Wait_On_End_Of_DMA1(void); + + +// GPIO -------------------------------------------------------------------- + +// Sens +#define INPUT 'i' +#define OUTPUT 'o' + +// Techno pour pin en entrée (INPUT) +#define ANALOG 0 +#define INPUT_FLOATING 1 +#define INPUT_PULL_DOWN_UP 2 + +// Techno pour pin en sortie (OUTPUT) +#define OUTPUT_PPULL 0 +#define OUTPUT_OPDRAIN 1 +#define ALT_PPULL 2 +#define ALT_OPDRAIN 3 + +// La fonction initialise n'importe quelle broche de port (entrée, sortie, techno....) +// Exemple : +// Port_IO_Init(GPIOB, 8, OUTPUT, OUTPUT_PPULL); +// Place le bit 8 du port B en sortie Push-pull +// Renvoie 0 si tout est OK, et 1 s'il y a un problème (plage d'entrée non respectée) +char GPIO_Configure(GPIO_TypeDef * Port, int Broche, int Sens, int Techno); + +// Spécifier le numéro de broche (0 à 15) +// exemple : Port_IO_Set(GPIOB,8); +#define GPIO_Set(GPIO,Broche) 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 literal 0 HcmV?d00001 diff --git a/Obj_4/Librairie/etat/etat.h b/Obj_4/Librairie/etat/etat.h new file mode 100644 index 0000000..0338b93 --- /dev/null +++ b/Obj_4/Librairie/etat/etat.h @@ -0,0 +1,7 @@ +typedef struct { +int position; // 0 +int taille; // 4 +void * son; // 8 +int resolution; // 12 +int periode_ticks; // 16 +} type_etat; diff --git a/Obj_4/Librairie/etat/etat.inc b/Obj_4/Librairie/etat/etat.inc new file mode 100644 index 0000000..d3c1335 --- /dev/null +++ b/Obj_4/Librairie/etat/etat.inc @@ -0,0 +1,6 @@ +E_POS equ 0 +E_TAI equ 4 +E_SON equ 8 +E_RES equ 12 +E_PER equ 16 + end \ No newline at end of file diff --git a/Obj_4/Obj/CHTI.build_log.htm b/Obj_4/Obj/CHTI.build_log.htm new file mode 100644 index 0000000..4976d32 --- /dev/null +++ b/Obj_4/Obj/CHTI.build_log.htm @@ -0,0 +1,65 @@ + + +

+

µVision Build Log

+

Tool Versions:

+IDE-Version: µVision V5.25.2.0 +Copyright (C) 2018 ARM Ltd and ARM Germany GmbH. All rights reserved. +License Information: CSN CSN, INSA de Toulouse, LIC=---- + +Tool Versions: +Toolchain: MDK-Lite Version: 5.25.2.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: SARMCM3.DLL V5.25.2.0 +Dialog DLL: DARMSTM.DLL V1.68.0.0 +Target DLL: STLink\ST-LINKIII-KEIL_SWO.dll V3.0.1.0 +Dialog DLL: TCM.DLL V1.35.1.0 + +

Project:

+U:\Windows\Bureau\BE_CHTI\Obj_4\Project.uvprojx +Project File Date: 05/29/2020 + +

Output:

+*** Using Compiler 'V5.06 update 6 (build 750)', folder: 'C:\Keil_v5\ARM\ARMCC\Bin' +Rebuild target 'Simu' +assembling startup-rvds.s... +assembling TabSinCos.asm... +assembling Son.s... +assembling DFT.s... +assembling bruitverre.asm... +compiling principal.c... +linking... +Program Size: Code=4164 RO-data=11556 RW-data=420 ZI-data=1560 +FromELF: creating hex file... +".\Obj\CHTI.axf" - 0 Error(s), 0 Warning(s). + +

Software Packages used:

+ +Package Vendor: ARM + http://www.keil.com/pack/ARM.CMSIS.5.3.0.pack + ARM.CMSIS.5.3.0 + CMSIS (Cortex Microcontroller Software Interface Standard) + * Component: CORE Version: 5.1.1 + +Package Vendor: Keil + http://www.keil.com/pack/Keil.STM32F1xx_DFP.2.2.0.pack + Keil.STM32F1xx_DFP.2.2.0 + STMicroelectronics STM32F1 Series Device Support, Drivers and Examples + +

Collection of Component include folders:

+ .\RTE\_Simu + C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.3.0\CMSIS\Include + C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\2.2.0\Device\Include + +

Collection of Component Files used:

+ + * Component: ARM::CMSIS:CORE:5.1.1 +Build Time Elapsed: 00:00:01 +
+ + diff --git a/Obj_4/Obj/CHTI.map b/Obj_4/Obj/CHTI.map new file mode 100644 index 0000000..1eb8292 --- /dev/null +++ b/Obj_4/Obj/CHTI.map @@ -0,0 +1,634 @@ +Component: ARM Compiler 5.06 update 6 (build 750) Tool: armlink [4d35ed] + +============================================================================== + +Section Cross References + + principal.o(i.main) refers to clock.o(i.CLOCK_Configure) for CLOCK_Configure + principal.o(i.main) refers to gpio.o(i.GPIO_Configure) for GPIO_Configure + principal.o(i.main) refers to timer_1234.o(i.PWM_Init_ff) for PWM_Init_ff + principal.o(i.main) refers to timer_1234.o(i.Timer_1234_Init_ff) for Timer_1234_Init_ff + principal.o(i.main) refers to timer_1234.o(i.Active_IT_Debordement_Timer) for Active_IT_Debordement_Timer + principal.o(i.main) refers to adc_fake.o(i.Init_TimingADC_ActiveADC_ff) for Init_TimingADC_ActiveADC_ff + principal.o(i.main) refers to adc_fake.o(i.Single_Channel_ADC) for Single_Channel_ADC + principal.o(i.main) refers to adc_fake.o(i.Init_Conversion_On_Trig_Timer_ff) for Init_Conversion_On_Trig_Timer_ff + principal.o(i.main) refers to adc_fake.o(i.Init_ADC1_DMA1) for Init_ADC1_DMA1 + principal.o(i.main) refers to timer_systick.o(i.Systick_Period_ff) for Systick_Period_ff + principal.o(i.main) refers to timer_systick.o(i.Systick_Prio_IT) for Systick_Prio_IT + principal.o(i.main) refers to bruitverre.o(SecSon) for PeriodeSonMicroSec + principal.o(i.main) refers to principal.o(.bss) for etat + principal.o(i.main) refers to son.o(moncode) for timer_callback + principal.o(i.main) refers to principal.o(i.sys_callback) for sys_callback + principal.o(i.sys_callback) refers to adc_fake.o(i.Start_DMA1) for Start_DMA1 + principal.o(i.sys_callback) refers to adc_fake.o(i.Wait_On_End_Of_DMA1) for Wait_On_End_Of_DMA1 + principal.o(i.sys_callback) refers to dft.o(moncode) for CalculM + principal.o(i.sys_callback) refers to principal.o(.bss) for dma_buf + startup-rvds.o(RESET) refers to startup-rvds.o(STACK) for __initial_sp + startup-rvds.o(RESET) refers to startup-rvds.o(.text) for Reset_Handler + startup-rvds.o(RESET) refers to timer_systick.o(i.SysTick_Handler) for SysTick_Handler + startup-rvds.o(RESET) refers to timer_1234.o(i.TIM1_UP_IRQHandler) for TIM1_UP_IRQHandler + startup-rvds.o(RESET) refers to timer_1234.o(i.TIM1_CC_IRQHandler) for TIM1_CC_IRQHandler + startup-rvds.o(RESET) refers to timer_1234.o(i.TIM2_IRQHandler) for TIM2_IRQHandler + startup-rvds.o(RESET) refers to timer_1234.o(i.TIM3_IRQHandler) for TIM3_IRQHandler + startup-rvds.o(RESET) refers to timer_1234.o(i.TIM4_IRQHandler) for TIM4_IRQHandler + startup-rvds.o(.text) refers to entry.o(.ARM.Collect$$$$00000000) for __main + dft.o(moncode) refers to tabsincos.o(Trigo) for TabCos + son.o(moncode) refers to principal.o(.bss) for etat + clock.o(i.CLOCK_Configure) refers to clock.o(i.CLOCK_HPRECompute) for CLOCK_HPRECompute + timer_1234.o(i.Active_IT_Compare_Timer) refers to timer_1234.o(.data) for .data + timer_1234.o(i.Active_IT_Debordement_Timer) refers to timer_1234.o(.data) for .data + timer_1234.o(i.Capture_Init) refers to clock.o(i.CLOCK_GetTIMCLK) for CLOCK_GetTIMCLK + timer_1234.o(i.Capture_Init) refers to dfltui.o(.text) for __aeabi_ui2d + timer_1234.o(i.Capture_Init) refers to f2d.o(.text) for __aeabi_f2d + timer_1234.o(i.Capture_Init) refers to dmul.o(.text) for __aeabi_dmul + timer_1234.o(i.Capture_Init) refers to ddiv.o(.text) for __aeabi_ddiv + timer_1234.o(i.Capture_Init) refers to d2f.o(.text) for __aeabi_d2f + timer_1234.o(i.Capture_Init) refers to ffltui.o(.text) for __aeabi_ui2f + timer_1234.o(i.Capture_Init) refers to fmul.o(.text) for __aeabi_fmul + timer_1234.o(i.Capture_Init) refers to ffixui.o(.text) for __aeabi_f2uiz + timer_1234.o(i.Capture_Init) refers to ffixi.o(.text) for __aeabi_f2iz + timer_1234.o(i.Lire_Duree_Pulse) refers to timer_1234.o(.data) for .data + timer_1234.o(i.PWM_Init) refers to f2d.o(.text) for __aeabi_f2d + timer_1234.o(i.PWM_Init) refers to ddiv.o(.text) for __aeabi_ddiv + timer_1234.o(i.PWM_Init) refers to d2f.o(.text) for __aeabi_d2f + timer_1234.o(i.PWM_Init) refers to timer_1234.o(i.Timer_1234_Init) for Timer_1234_Init + timer_1234.o(i.PWM_Init_ff) refers to timer_1234.o(i.Timer_1234_Init_ff) for Timer_1234_Init_ff + timer_1234.o(i.TIM1_CC_IRQHandler) refers to timer_1234.o(.data) for .data + timer_1234.o(i.TIM1_UP_IRQHandler) refers to timer_1234.o(.data) for .data + timer_1234.o(i.TIM2_IRQHandler) refers to timer_1234.o(.data) for .data + timer_1234.o(i.TIM3_IRQHandler) refers to timer_1234.o(.data) for .data + timer_1234.o(i.TIM4_IRQHandler) refers to timer_1234.o(.data) for .data + timer_1234.o(i.Timer_1234_Init) refers to clock.o(i.CLOCK_GetTIMCLK) for CLOCK_GetTIMCLK + timer_1234.o(i.Timer_1234_Init) refers to ffltui.o(.text) for __aeabi_ui2f + timer_1234.o(i.Timer_1234_Init) refers to fmul.o(.text) for __aeabi_fmul + timer_1234.o(i.Timer_1234_Init) refers to f2d.o(.text) for __aeabi_f2d + timer_1234.o(i.Timer_1234_Init) refers to ddiv.o(.text) for __aeabi_ddiv + timer_1234.o(i.Timer_1234_Init) refers to d2f.o(.text) for __aeabi_d2f + timer_1234.o(i.Timer_1234_Init) refers to fscalb.o(.text) for __ARM_scalbnf + timer_1234.o(i.Timer_1234_Init) refers to ffixui.o(.text) for __aeabi_f2uiz + timer_1234.o(i.Timer_1234_Init) refers to fdiv.o(.text) for __aeabi_fdiv + timer_1234.o(i.Timer_1234_Init) refers to dfltui.o(.text) for __aeabi_ui2d + timer_1234.o(i.Timer_1234_Init) refers to dadd.o(.text) for __aeabi_dadd + timer_1234.o(i.Timer_1234_Init) refers to dmul.o(.text) for __aeabi_dmul + timer_1234.o(i.Timer_1234_Init_ff) refers to clock.o(i.CLOCK_GetHCLK) for CLOCK_GetHCLK + timer_1234.o(i.Timer_1234_Init_ff) refers to clock.o(i.CLOCK_GetTIMCLK) for CLOCK_GetTIMCLK + timer_systick.o(i.SysTick_Handler) refers to timer_systick.o(.data) for .data + timer_systick.o(i.Systick_Period) refers to clock.o(i.CLOCK_GetHCLK) for CLOCK_GetHCLK + timer_systick.o(i.Systick_Period) refers to ffltui.o(.text) for __aeabi_ui2f + timer_systick.o(i.Systick_Period) refers to fmul.o(.text) for __aeabi_fmul + timer_systick.o(i.Systick_Period) refers to f2d.o(.text) for __aeabi_f2d + timer_systick.o(i.Systick_Period) refers to ddiv.o(.text) for __aeabi_ddiv + timer_systick.o(i.Systick_Period) refers to d2f.o(.text) for __aeabi_d2f + timer_systick.o(i.Systick_Period) refers to ffixui.o(.text) for __aeabi_f2uiz + timer_systick.o(i.Systick_Period) refers to fdiv.o(.text) for __aeabi_fdiv + timer_systick.o(i.Systick_Period) refers to dmul.o(.text) for __aeabi_dmul + timer_systick.o(i.Systick_Prio_IT) refers to timer_systick.o(.data) for .data + adc_fake.o(i.Init_ADC1_DMA1) refers to adc_fake.o(.bss) for .bss + adc_fake.o(i.Init_Conversion_On_Trig_Timer_ff) refers to clock.o(i.CLOCK_GetHCLK) for CLOCK_GetHCLK + adc_fake.o(i.Init_Conversion_On_Trig_Timer_ff) refers to timer_1234.o(i.Timer_1234_Init_ff) for Timer_1234_Init_ff + adc_fake.o(i.Init_Conversion_On_Trig_Timer_ff) refers to timer_1234.o(i.Active_IT_Debordement_Timer) for Active_IT_Debordement_Timer + adc_fake.o(i.Init_Conversion_On_Trig_Timer_ff) refers to adc_fake.o(.bss) for .bss + adc_fake.o(i.Init_Conversion_On_Trig_Timer_ff) refers to adc_fake.o(i.fake_timer_callback) for fake_timer_callback + adc_fake.o(i.Init_TimingADC_ActiveADC_ff) refers to clock.o(i.CLOCK_GetADCCLK) for CLOCK_GetADCCLK + adc_fake.o(i.Init_TimingADC_ActiveADC_ff) refers to clock.o(i.CLOCK_GetHCLK) for CLOCK_GetHCLK + adc_fake.o(i.Init_TimingADC_ActiveADC_ff) refers to adc_fake.o(.bss) for .bss + adc_fake.o(i.Start_DMA1) refers to adc_fake.o(.bss) for .bss + adc_fake.o(i.Wait_On_End_Of_DMA1) refers to adc_fake.o(.bss) for .bss + adc_fake.o(i.Wait_On_End_Of_DMA1) refers to libcos.o(FakeTab) for LibCos + adc_fake.o(i.fake_timer_callback) refers to adc_fake.o(.bss) for .bss + entry.o(.ARM.Collect$$$$00000000) refers (Special) to entry10a.o(.ARM.Collect$$$$0000000D) for __rt_final_cpp + entry.o(.ARM.Collect$$$$00000000) refers (Special) to entry11a.o(.ARM.Collect$$$$0000000F) for __rt_final_exit + entry.o(.ARM.Collect$$$$00000000) refers (Special) to entry7b.o(.ARM.Collect$$$$00000008) for _main_clock + entry.o(.ARM.Collect$$$$00000000) refers (Special) to entry8b.o(.ARM.Collect$$$$0000000A) for _main_cpp_init + entry.o(.ARM.Collect$$$$00000000) refers (Special) to entry9a.o(.ARM.Collect$$$$0000000B) for _main_init + entry.o(.ARM.Collect$$$$00000000) refers (Special) to entry5.o(.ARM.Collect$$$$00000004) for _main_scatterload + entry.o(.ARM.Collect$$$$00000000) refers (Special) to entry2.o(.ARM.Collect$$$$00000001) for _main_stk + fmul.o(.text) refers (Special) to iusefp.o(.text) for __I$use$fp + fdiv.o(.text) refers (Special) to iusefp.o(.text) for __I$use$fp + fdiv.o(.text) refers to fepilogue.o(.text) for _float_round + fscalb.o(.text) refers (Special) to iusefp.o(.text) for __I$use$fp + dadd.o(.text) refers (Special) to iusefp.o(.text) for __I$use$fp + dadd.o(.text) refers to llshl.o(.text) for __aeabi_llsl + dadd.o(.text) refers to llsshr.o(.text) for __aeabi_lasr + dadd.o(.text) refers to depilogue.o(.text) for _double_epilogue + dmul.o(.text) refers (Special) to iusefp.o(.text) for __I$use$fp + dmul.o(.text) refers to depilogue.o(.text) for _double_epilogue + ddiv.o(.text) refers (Special) to iusefp.o(.text) for __I$use$fp + ddiv.o(.text) refers to depilogue.o(.text) for _double_round + ffltui.o(.text) refers (Special) to iusefp.o(.text) for __I$use$fp + ffltui.o(.text) refers to fepilogue.o(.text) for _float_epilogue + dfltui.o(.text) refers (Special) to iusefp.o(.text) for __I$use$fp + dfltui.o(.text) refers to depilogue.o(.text) for _double_epilogue + ffixi.o(.text) refers (Special) to iusefp.o(.text) for __I$use$fp + ffixui.o(.text) refers (Special) to iusefp.o(.text) for __I$use$fp + f2d.o(.text) refers (Special) to iusefp.o(.text) for __I$use$fp + d2f.o(.text) refers (Special) to iusefp.o(.text) for __I$use$fp + d2f.o(.text) refers to fepilogue.o(.text) for _float_round + entry2.o(.ARM.Collect$$$$00000001) refers to entry2.o(.ARM.Collect$$$$00002712) for __lit__00000000 + entry2.o(.ARM.Collect$$$$00002712) refers to startup-rvds.o(STACK) for __initial_sp + entry2.o(__vectab_stack_and_reset_area) refers to startup-rvds.o(STACK) for __initial_sp + entry2.o(__vectab_stack_and_reset_area) refers to entry.o(.ARM.Collect$$$$00000000) for __main + entry5.o(.ARM.Collect$$$$00000004) refers to init.o(.text) for __scatterload + entry9a.o(.ARM.Collect$$$$0000000B) refers to principal.o(i.main) for main + entry9b.o(.ARM.Collect$$$$0000000C) refers to principal.o(i.main) for main + depilogue.o(.text) refers to llshl.o(.text) for __aeabi_llsl + depilogue.o(.text) refers to llushr.o(.text) for __aeabi_llsr + init.o(.text) refers to entry5.o(.ARM.Collect$$$$00000004) for __main_after_scatterload + + +============================================================================== + +Removing Unused input sections from the image. + + Removing principal.o(.rev16_text), (4 bytes). + Removing principal.o(.revsh_text), (4 bytes). + Removing principal.o(.rrx_text), (6 bytes). + Removing startup-rvds.o(HEAP), (512 bytes). + Removing son.o(madata), (4 bytes). + Removing clock.o(.rev16_text), (4 bytes). + Removing clock.o(.revsh_text), (4 bytes). + Removing clock.o(.rrx_text), (6 bytes). + Removing clock.o(i.CLOCK_GetPCLK1), (8 bytes). + Removing clock.o(i.CLOCK_GetPCLK2), (8 bytes). + Removing gpio.o(.rev16_text), (4 bytes). + Removing gpio.o(.revsh_text), (4 bytes). + Removing gpio.o(.rrx_text), (6 bytes). + Removing timer_1234.o(.rev16_text), (4 bytes). + Removing timer_1234.o(.revsh_text), (4 bytes). + Removing timer_1234.o(.rrx_text), (6 bytes). + Removing timer_1234.o(i.Active_IT_Compare_Timer), (492 bytes). + Removing timer_1234.o(i.Capture_Init), (484 bytes). + Removing timer_1234.o(i.Lire_Duree_Pulse), (96 bytes). + Removing timer_1234.o(i.PWM_Complementaire_Timer1), (60 bytes). + Removing timer_1234.o(i.PWM_Init), (200 bytes). + Removing timer_1234.o(i.Timer_1234_Init), (268 bytes). + Removing timer_1234.o(i.Timer_Inc_Init), (180 bytes). + Removing timer_systick.o(.rev16_text), (4 bytes). + Removing timer_systick.o(.revsh_text), (4 bytes). + Removing timer_systick.o(.rrx_text), (6 bytes). + Removing timer_systick.o(i.Systick_Period), (196 bytes). + Removing adc_fake.o(.rev16_text), (4 bytes). + Removing adc_fake.o(.revsh_text), (4 bytes). + Removing adc_fake.o(.rrx_text), (6 bytes). + Removing fmul.o(.text), (100 bytes). + Removing fdiv.o(.text), (124 bytes). + Removing fscalb.o(.text), (24 bytes). + Removing dadd.o(.text), (334 bytes). + Removing dmul.o(.text), (228 bytes). + Removing ddiv.o(.text), (222 bytes). + Removing ffltui.o(.text), (10 bytes). + Removing dfltui.o(.text), (26 bytes). + Removing ffixi.o(.text), (50 bytes). + Removing ffixui.o(.text), (40 bytes). + Removing f2d.o(.text), (38 bytes). + Removing d2f.o(.text), (56 bytes). + Removing fepilogue.o(.text), (110 bytes). + Removing depilogue.o(.text), (186 bytes). + +44 unused section(s) (total 4140 bytes) removed from the image. + +============================================================================== + +Adding Veneers to the image + + Adding TT veneer (10 bytes, Long) for call to 'CalculM' from principal.o(i.sys_callback). + +1 Veneer(s) (total 10 bytes) added to the image. + +============================================================================== + +Image Symbol Table + + Local Symbols + + Symbol Name Value Ov Type Size Object(Section) + + ../clib/../cmprslib/zerorunl2.c 0x00000000 Number 0 __dczerorl2.o ABSOLUTE + ../clib/microlib/init/entry.s 0x00000000 Number 0 entry11a.o ABSOLUTE + ../clib/microlib/init/entry.s 0x00000000 Number 0 entry10a.o ABSOLUTE + ../clib/microlib/init/entry.s 0x00000000 Number 0 entry9b.o ABSOLUTE + ../clib/microlib/init/entry.s 0x00000000 Number 0 entry9a.o ABSOLUTE + ../clib/microlib/init/entry.s 0x00000000 Number 0 entry8b.o ABSOLUTE + ../clib/microlib/init/entry.s 0x00000000 Number 0 entry8a.o ABSOLUTE + ../clib/microlib/init/entry.s 0x00000000 Number 0 entry7b.o ABSOLUTE + ../clib/microlib/init/entry.s 0x00000000 Number 0 entry7a.o ABSOLUTE + ../clib/microlib/init/entry.s 0x00000000 Number 0 entry5.o ABSOLUTE + ../clib/microlib/init/entry.s 0x00000000 Number 0 entry2.o ABSOLUTE + ../clib/microlib/init/entry.s 0x00000000 Number 0 entry11b.o ABSOLUTE + ../clib/microlib/init/entry.s 0x00000000 Number 0 entry.o ABSOLUTE + ../clib/microlib/init/entry.s 0x00000000 Number 0 entry10b.o ABSOLUTE + ../clib/microlib/longlong.c 0x00000000 Number 0 llushr.o ABSOLUTE + ../clib/microlib/longlong.c 0x00000000 Number 0 llsshr.o ABSOLUTE + ../clib/microlib/longlong.c 0x00000000 Number 0 llshl.o ABSOLUTE + ../clib/microlib/stubs.s 0x00000000 Number 0 iusefp.o ABSOLUTE + ../fplib/microlib/d2f.c 0x00000000 Number 0 d2f.o ABSOLUTE + ../fplib/microlib/f2d.c 0x00000000 Number 0 f2d.o ABSOLUTE + ../fplib/microlib/fpadd.c 0x00000000 Number 0 dadd.o ABSOLUTE + ../fplib/microlib/fpdiv.c 0x00000000 Number 0 fdiv.o ABSOLUTE + ../fplib/microlib/fpdiv.c 0x00000000 Number 0 ddiv.o ABSOLUTE + ../fplib/microlib/fpepilogue.c 0x00000000 Number 0 depilogue.o ABSOLUTE + ../fplib/microlib/fpepilogue.c 0x00000000 Number 0 fepilogue.o ABSOLUTE + ../fplib/microlib/fpfix.c 0x00000000 Number 0 ffixi.o ABSOLUTE + ../fplib/microlib/fpfix.c 0x00000000 Number 0 ffixui.o ABSOLUTE + ../fplib/microlib/fpflt.c 0x00000000 Number 0 ffltui.o ABSOLUTE + ../fplib/microlib/fpflt.c 0x00000000 Number 0 dfltui.o ABSOLUTE + ../fplib/microlib/fpmul.c 0x00000000 Number 0 fmul.o ABSOLUTE + ../fplib/microlib/fpmul.c 0x00000000 Number 0 dmul.o ABSOLUTE + ../fplib/microlib/fpscalb.c 0x00000000 Number 0 fscalb.o ABSOLUTE + Lib\ADC_FAKE.c 0x00000000 Number 0 adc_fake.o ABSOLUTE + Lib\GPIO.c 0x00000000 Number 0 gpio.o ABSOLUTE + Lib\Timer_1234.c 0x00000000 Number 0 timer_1234.o ABSOLUTE + Lib\Timer_Systick.c 0x00000000 Number 0 timer_systick.o ABSOLUTE + Lib\\ADC_FAKE.c 0x00000000 Number 0 adc_fake.o ABSOLUTE + Lib\\GPIO.c 0x00000000 Number 0 gpio.o ABSOLUTE + Lib\\Timer_1234.c 0x00000000 Number 0 timer_1234.o ABSOLUTE + Lib\\Timer_Systick.c 0x00000000 Number 0 timer_systick.o ABSOLUTE + Lib\\clock.c 0x00000000 Number 0 clock.o ABSOLUTE + Lib\clock.c 0x00000000 Number 0 clock.o ABSOLUTE + Lib\libcos.asm 0x00000000 Number 0 libcos.o ABSOLUTE + Src\Fichiers_DFT\DFT.s 0x00000000 Number 0 dft.o ABSOLUTE + Src\Fichiers_DFT\TabSinCos.asm 0x00000000 Number 0 tabsincos.o ABSOLUTE + Src\Fichiers_Son\Son.s 0x00000000 Number 0 son.o ABSOLUTE + Src\Fichiers_Son\bruitverre.asm 0x00000000 Number 0 bruitverre.o ABSOLUTE + Src\\principal.c 0x00000000 Number 0 principal.o ABSOLUTE + Src\principal.c 0x00000000 Number 0 principal.o ABSOLUTE + Src\startup-rvds.s 0x00000000 Number 0 startup-rvds.o ABSOLUTE + dc.s 0x00000000 Number 0 dc.o ABSOLUTE + handlers.s 0x00000000 Number 0 handlers.o ABSOLUTE + init.s 0x00000000 Number 0 init.o ABSOLUTE + RESET 0x08000000 Section 236 startup-rvds.o(RESET) + .ARM.Collect$$$$00000000 0x080000ec Section 0 entry.o(.ARM.Collect$$$$00000000) + .ARM.Collect$$$$00000001 0x080000ec Section 4 entry2.o(.ARM.Collect$$$$00000001) + .ARM.Collect$$$$00000004 0x080000f0 Section 4 entry5.o(.ARM.Collect$$$$00000004) + .ARM.Collect$$$$00000008 0x080000f4 Section 0 entry7b.o(.ARM.Collect$$$$00000008) + .ARM.Collect$$$$0000000A 0x080000f4 Section 0 entry8b.o(.ARM.Collect$$$$0000000A) + .ARM.Collect$$$$0000000B 0x080000f4 Section 8 entry9a.o(.ARM.Collect$$$$0000000B) + .ARM.Collect$$$$0000000D 0x080000fc Section 0 entry10a.o(.ARM.Collect$$$$0000000D) + .ARM.Collect$$$$0000000F 0x080000fc Section 0 entry11a.o(.ARM.Collect$$$$0000000F) + .ARM.Collect$$$$00002712 0x080000fc Section 4 entry2.o(.ARM.Collect$$$$00002712) + __lit__00000000 0x080000fc Data 4 entry2.o(.ARM.Collect$$$$00002712) + .text 0x08000100 Section 76 startup-rvds.o(.text) + .text 0x0800014c Section 36 init.o(.text) + .text 0x08000170 Section 0 __dczerorl2.o(.text) + i.Active_IT_Debordement_Timer 0x080001d0 Section 0 timer_1234.o(i.Active_IT_Debordement_Timer) + i.CLOCK_Configure 0x080002b4 Section 0 clock.o(i.CLOCK_Configure) + i.CLOCK_GetADCCLK 0x08000328 Section 0 clock.o(i.CLOCK_GetADCCLK) + i.CLOCK_GetHCLK 0x08000330 Section 0 clock.o(i.CLOCK_GetHCLK) + i.CLOCK_GetTIMCLK 0x08000338 Section 0 clock.o(i.CLOCK_GetTIMCLK) + i.CLOCK_HPRECompute 0x0800035c Section 0 clock.o(i.CLOCK_HPRECompute) + CLOCK_HPRECompute 0x0800035d Thumb Code 116 clock.o(i.CLOCK_HPRECompute) + i.GPIO_Configure 0x080003d0 Section 0 gpio.o(i.GPIO_Configure) + i.Init_ADC1_DMA1 0x080004d8 Section 0 adc_fake.o(i.Init_ADC1_DMA1) + i.Init_Conversion_On_Trig_Timer_ff 0x08000504 Section 0 adc_fake.o(i.Init_Conversion_On_Trig_Timer_ff) + i.Init_TimingADC_ActiveADC_ff 0x0800057c Section 0 adc_fake.o(i.Init_TimingADC_ActiveADC_ff) + i.PWM_Init_ff 0x08000668 Section 0 timer_1234.o(i.PWM_Init_ff) + i.Single_Channel_ADC 0x08000714 Section 0 adc_fake.o(i.Single_Channel_ADC) + i.Start_DMA1 0x08000718 Section 0 adc_fake.o(i.Start_DMA1) + i.SysTick_Handler 0x08000760 Section 0 timer_systick.o(i.SysTick_Handler) + i.Systick_Period_ff 0x0800076c Section 0 timer_systick.o(i.Systick_Period_ff) + i.Systick_Prio_IT 0x08000790 Section 0 timer_systick.o(i.Systick_Prio_IT) + i.TIM1_CC_IRQHandler 0x080007a4 Section 0 timer_1234.o(i.TIM1_CC_IRQHandler) + i.TIM1_UP_IRQHandler 0x080008b0 Section 0 timer_1234.o(i.TIM1_UP_IRQHandler) + i.TIM2_IRQHandler 0x080008c8 Section 0 timer_1234.o(i.TIM2_IRQHandler) + i.TIM3_IRQHandler 0x080009d8 Section 0 timer_1234.o(i.TIM3_IRQHandler) + i.TIM4_IRQHandler 0x08000b04 Section 0 timer_1234.o(i.TIM4_IRQHandler) + i.Timer_1234_Init_ff 0x08000c30 Section 0 timer_1234.o(i.Timer_1234_Init_ff) + i.Wait_On_End_Of_DMA1 0x08000cac Section 0 adc_fake.o(i.Wait_On_End_Of_DMA1) + i.__scatterload_copy 0x08000df8 Section 14 handlers.o(i.__scatterload_copy) + i.__scatterload_null 0x08000e06 Section 2 handlers.o(i.__scatterload_null) + i.__scatterload_zeroinit 0x08000e08 Section 14 handlers.o(i.__scatterload_zeroinit) + i.fake_timer_callback 0x08000e18 Section 0 adc_fake.o(i.fake_timer_callback) + i.main 0x08000e34 Section 0 principal.o(i.main) + i.sys_callback 0x08000f48 Section 0 principal.o(i.sys_callback) + moncode 0x08001080 Section 68 son.o(moncode) + FakeTab 0x080010c4 Section 256 libcos.o(FakeTab) + SecSon 0x080011e4 Section 11032 bruitverre.o(SecSon) + moncode 0x20000000 Section 108 dft.o(moncode) + calculReouIm 0x20000001 Thumb Code 62 dft.o(moncode) + .data 0x2000006c Section 160 timer_1234.o(.data) + Ptr_TIM1 0x2000007c Data 4 timer_1234.o(.data) + Ptr_TIM2 0x20000080 Data 4 timer_1234.o(.data) + Ptr_TIM3 0x20000084 Data 4 timer_1234.o(.data) + Ptr_TIM4 0x20000088 Data 4 timer_1234.o(.data) + Ptr_TIM1_Voie1 0x2000008c Data 4 timer_1234.o(.data) + Ptr_TIM1_Voie2 0x20000090 Data 4 timer_1234.o(.data) + Ptr_TIM1_Voie3 0x20000094 Data 4 timer_1234.o(.data) + Ptr_TIM1_Voie4 0x20000098 Data 4 timer_1234.o(.data) + Ptr_TIM2_Voie1 0x2000009c Data 4 timer_1234.o(.data) + Ptr_TIM2_Voie2 0x200000a0 Data 4 timer_1234.o(.data) + Ptr_TIM2_Voie3 0x200000a4 Data 4 timer_1234.o(.data) + Ptr_TIM2_Voie4 0x200000a8 Data 4 timer_1234.o(.data) + Ptr_TIM3_Voie1 0x200000ac Data 4 timer_1234.o(.data) + Ptr_TIM3_Voie2 0x200000b0 Data 4 timer_1234.o(.data) + Ptr_TIM3_Voie3 0x200000b4 Data 4 timer_1234.o(.data) + Ptr_TIM3_Voie4 0x200000b8 Data 4 timer_1234.o(.data) + Ptr_TIM4_Voie1 0x200000bc Data 4 timer_1234.o(.data) + Ptr_TIM4_Voie2 0x200000c0 Data 4 timer_1234.o(.data) + Ptr_TIM4_Voie3 0x200000c4 Data 4 timer_1234.o(.data) + Ptr_TIM4_Voie4 0x200000c8 Data 4 timer_1234.o(.data) + Duree_Pulse_T1 0x200000cc Data 8 timer_1234.o(.data) + Duree_Pulse_T2 0x200000d4 Data 8 timer_1234.o(.data) + Duree_Pulse_T3 0x200000dc Data 8 timer_1234.o(.data) + Duree_Pulse_T4 0x200000e4 Data 8 timer_1234.o(.data) + Date_T1 0x200000ec Data 8 timer_1234.o(.data) + Date_T2 0x200000f4 Data 8 timer_1234.o(.data) + Date_T3 0x200000fc Data 8 timer_1234.o(.data) + Date_T4 0x20000104 Data 8 timer_1234.o(.data) + .data 0x2000010c Section 4 timer_systick.o(.data) + Ptr_Systick 0x2000010c Data 4 timer_systick.o(.data) + Trigo 0x20000110 Section 256 tabsincos.o(Trigo) + .bss 0x20000210 Section 452 principal.o(.bss) + .bss 0x200003d4 Section 84 adc_fake.o(.bss) + F 0x200003d4 Data 84 adc_fake.o(.bss) + STACK 0x20000428 Section 1024 startup-rvds.o(STACK) + + Global Symbols + + Symbol Name Value Ov Type Size Object(Section) + + BuildAttributes$$THM_ISAv4$P$D$K$B$S$PE$A:L22UL41UL21$X:L11$S22US41US21$IEEE1$IW$USESV6$~STKCKD$USESV7$~SHL$OTIME$ROPI$EBA8$MICROLIB$REQ8$EABIv2 0x00000000 Number 0 anon$$obj.o ABSOLUTE + __ARM_use_no_argv 0x00000000 Number 0 principal.o ABSOLUTE + __cpp_initialize__aeabi_ - Undefined Weak Reference + __cxa_finalize - Undefined Weak Reference + _clock_init - Undefined Weak Reference + _microlib_exit - Undefined Weak Reference + __Vectors_Size 0x000000ec Number 0 startup-rvds.o ABSOLUTE + __Vectors 0x08000000 Data 4 startup-rvds.o(RESET) + __Vectors_End 0x080000ec Data 0 startup-rvds.o(RESET) + __main 0x080000ed Thumb Code 0 entry.o(.ARM.Collect$$$$00000000) + _main_stk 0x080000ed Thumb Code 0 entry2.o(.ARM.Collect$$$$00000001) + _main_scatterload 0x080000f1 Thumb Code 0 entry5.o(.ARM.Collect$$$$00000004) + __main_after_scatterload 0x080000f5 Thumb Code 0 entry5.o(.ARM.Collect$$$$00000004) + _main_clock 0x080000f5 Thumb Code 0 entry7b.o(.ARM.Collect$$$$00000008) + _main_cpp_init 0x080000f5 Thumb Code 0 entry8b.o(.ARM.Collect$$$$0000000A) + _main_init 0x080000f5 Thumb Code 0 entry9a.o(.ARM.Collect$$$$0000000B) + __rt_final_cpp 0x080000fd Thumb Code 0 entry10a.o(.ARM.Collect$$$$0000000D) + __rt_final_exit 0x080000fd Thumb Code 0 entry11a.o(.ARM.Collect$$$$0000000F) + Reset_Handler 0x08000101 Thumb Code 34 startup-rvds.o(.text) + SystemInit 0x08000123 Thumb Code 2 startup-rvds.o(.text) + NMI_Handler 0x08000125 Thumb Code 2 startup-rvds.o(.text) + HardFault_Handler 0x08000127 Thumb Code 2 startup-rvds.o(.text) + MemManage_Handler 0x08000129 Thumb Code 2 startup-rvds.o(.text) + BusFault_Handler 0x0800012b Thumb Code 2 startup-rvds.o(.text) + UsageFault_Handler 0x0800012d Thumb Code 2 startup-rvds.o(.text) + SVC_Handler 0x0800012f Thumb Code 2 startup-rvds.o(.text) + DebugMon_Handler 0x08000131 Thumb Code 2 startup-rvds.o(.text) + PendSV_Handler 0x08000133 Thumb Code 2 startup-rvds.o(.text) + ADC1_2_IRQHandler 0x08000137 Thumb Code 0 startup-rvds.o(.text) + CAN1_RX1_IRQHandler 0x08000137 Thumb Code 0 startup-rvds.o(.text) + CAN1_SCE_IRQHandler 0x08000137 Thumb Code 0 startup-rvds.o(.text) + DMA1_Channel1_IRQHandler 0x08000137 Thumb Code 0 startup-rvds.o(.text) + DMA1_Channel2_IRQHandler 0x08000137 Thumb Code 0 startup-rvds.o(.text) + DMA1_Channel3_IRQHandler 0x08000137 Thumb Code 0 startup-rvds.o(.text) + DMA1_Channel4_IRQHandler 0x08000137 Thumb Code 0 startup-rvds.o(.text) + DMA1_Channel5_IRQHandler 0x08000137 Thumb Code 0 startup-rvds.o(.text) + DMA1_Channel6_IRQHandler 0x08000137 Thumb Code 0 startup-rvds.o(.text) + DMA1_Channel7_IRQHandler 0x08000137 Thumb Code 0 startup-rvds.o(.text) + EXTI0_IRQHandler 0x08000137 Thumb Code 0 startup-rvds.o(.text) + EXTI15_10_IRQHandler 0x08000137 Thumb Code 0 startup-rvds.o(.text) + EXTI1_IRQHandler 0x08000137 Thumb Code 0 startup-rvds.o(.text) + EXTI2_IRQHandler 0x08000137 Thumb Code 0 startup-rvds.o(.text) + EXTI3_IRQHandler 0x08000137 Thumb Code 0 startup-rvds.o(.text) + EXTI4_IRQHandler 0x08000137 Thumb Code 0 startup-rvds.o(.text) + EXTI9_5_IRQHandler 0x08000137 Thumb Code 0 startup-rvds.o(.text) + FLASH_IRQHandler 0x08000137 Thumb Code 0 startup-rvds.o(.text) + I2C1_ER_IRQHandler 0x08000137 Thumb Code 0 startup-rvds.o(.text) + I2C1_EV_IRQHandler 0x08000137 Thumb Code 0 startup-rvds.o(.text) + I2C2_ER_IRQHandler 0x08000137 Thumb Code 0 startup-rvds.o(.text) + I2C2_EV_IRQHandler 0x08000137 Thumb Code 0 startup-rvds.o(.text) + PVD_IRQHandler 0x08000137 Thumb Code 0 startup-rvds.o(.text) + RCC_IRQHandler 0x08000137 Thumb Code 0 startup-rvds.o(.text) + RTCAlarm_IRQHandler 0x08000137 Thumb Code 0 startup-rvds.o(.text) + RTC_IRQHandler 0x08000137 Thumb Code 0 startup-rvds.o(.text) + SPI1_IRQHandler 0x08000137 Thumb Code 0 startup-rvds.o(.text) + SPI2_IRQHandler 0x08000137 Thumb Code 0 startup-rvds.o(.text) + TAMPER_IRQHandler 0x08000137 Thumb Code 0 startup-rvds.o(.text) + TIM1_BRK_IRQHandler 0x08000137 Thumb Code 0 startup-rvds.o(.text) + TIM1_TRG_COM_IRQHandler 0x08000137 Thumb Code 0 startup-rvds.o(.text) + USART1_IRQHandler 0x08000137 Thumb Code 0 startup-rvds.o(.text) + USART2_IRQHandler 0x08000137 Thumb Code 0 startup-rvds.o(.text) + USART3_IRQHandler 0x08000137 Thumb Code 0 startup-rvds.o(.text) + USBWakeUp_IRQHandler 0x08000137 Thumb Code 0 startup-rvds.o(.text) + USB_HP_CAN1_TX_IRQHandler 0x08000137 Thumb Code 0 startup-rvds.o(.text) + USB_LP_CAN1_RX0_IRQHandler 0x08000137 Thumb Code 0 startup-rvds.o(.text) + WWDG_IRQHandler 0x08000137 Thumb Code 0 startup-rvds.o(.text) + __scatterload 0x0800014d Thumb Code 28 init.o(.text) + __scatterload_rt2 0x0800014d Thumb Code 0 init.o(.text) + __decompress 0x08000171 Thumb Code 0 __dczerorl2.o(.text) + __decompress1 0x08000171 Thumb Code 86 __dczerorl2.o(.text) + Long Thumb to Thumb Veneer to CalculM 0x080001c7 Thumb Code 10 anon$$obj.o(Veneer$$Code) + Active_IT_Debordement_Timer 0x080001d1 Thumb Code 204 timer_1234.o(i.Active_IT_Debordement_Timer) + CLOCK_Configure 0x080002b5 Thumb Code 104 clock.o(i.CLOCK_Configure) + CLOCK_GetADCCLK 0x08000329 Thumb Code 4 clock.o(i.CLOCK_GetADCCLK) + CLOCK_GetHCLK 0x08000331 Thumb Code 4 clock.o(i.CLOCK_GetHCLK) + CLOCK_GetTIMCLK 0x08000339 Thumb Code 22 clock.o(i.CLOCK_GetTIMCLK) + GPIO_Configure 0x080003d1 Thumb Code 240 gpio.o(i.GPIO_Configure) + Init_ADC1_DMA1 0x080004d9 Thumb Code 38 adc_fake.o(i.Init_ADC1_DMA1) + Init_Conversion_On_Trig_Timer_ff 0x08000505 Thumb Code 104 adc_fake.o(i.Init_Conversion_On_Trig_Timer_ff) + Init_TimingADC_ActiveADC_ff 0x0800057d Thumb Code 230 adc_fake.o(i.Init_TimingADC_ActiveADC_ff) + PWM_Init_ff 0x08000669 Thumb Code 168 timer_1234.o(i.PWM_Init_ff) + Single_Channel_ADC 0x08000715 Thumb Code 2 adc_fake.o(i.Single_Channel_ADC) + Start_DMA1 0x08000719 Thumb Code 66 adc_fake.o(i.Start_DMA1) + SysTick_Handler 0x08000761 Thumb Code 6 timer_systick.o(i.SysTick_Handler) + Systick_Period_ff 0x0800076d Thumb Code 34 timer_systick.o(i.Systick_Period_ff) + Systick_Prio_IT 0x08000791 Thumb Code 12 timer_systick.o(i.Systick_Prio_IT) + TIM1_CC_IRQHandler 0x080007a5 Thumb Code 240 timer_1234.o(i.TIM1_CC_IRQHandler) + TIM1_UP_IRQHandler 0x080008b1 Thumb Code 16 timer_1234.o(i.TIM1_UP_IRQHandler) + TIM2_IRQHandler 0x080008c9 Thumb Code 266 timer_1234.o(i.TIM2_IRQHandler) + TIM3_IRQHandler 0x080009d9 Thumb Code 272 timer_1234.o(i.TIM3_IRQHandler) + TIM4_IRQHandler 0x08000b05 Thumb Code 272 timer_1234.o(i.TIM4_IRQHandler) + Timer_1234_Init_ff 0x08000c31 Thumb Code 106 timer_1234.o(i.Timer_1234_Init_ff) + Wait_On_End_Of_DMA1 0x08000cad Thumb Code 320 adc_fake.o(i.Wait_On_End_Of_DMA1) + __scatterload_copy 0x08000df9 Thumb Code 14 handlers.o(i.__scatterload_copy) + __scatterload_null 0x08000e07 Thumb Code 2 handlers.o(i.__scatterload_null) + __scatterload_zeroinit 0x08000e09 Thumb Code 14 handlers.o(i.__scatterload_zeroinit) + fake_timer_callback 0x08000e19 Thumb Code 22 adc_fake.o(i.fake_timer_callback) + main 0x08000e35 Thumb Code 224 principal.o(i.main) + sys_callback 0x08000f49 Thumb Code 280 principal.o(i.sys_callback) + timer_callback 0x08001081 Thumb Code 60 son.o(moncode) + LibCos 0x080010c4 Data 0 libcos.o(FakeTab) + LibNoise 0x08001144 Data 0 libcos.o(FakeTab) + Region$$Table$$Base 0x080011c4 Number 0 anon$$obj.o(Region$$Table) + LongueurSon 0x080011e4 Data 4 bruitverre.o(SecSon) + Region$$Table$$Limit 0x080011e4 Number 0 anon$$obj.o(Region$$Table) + PeriodeSonMicroSec 0x080011e8 Data 4 bruitverre.o(SecSon) + Son 0x080011ec Data 0 bruitverre.o(SecSon) + CalculM 0x2000003f Thumb Code 38 dft.o(moncode) + Enable_Fct_IT_Compare_Match_TIM1_Voie1 0x2000006c Data 1 timer_1234.o(.data) + Enable_Fct_IT_Compare_Match_TIM1_Voie2 0x2000006d Data 1 timer_1234.o(.data) + Enable_Fct_IT_Compare_Match_TIM1_Voie3 0x2000006e Data 1 timer_1234.o(.data) + Enable_Fct_IT_Compare_Match_TIM1_Voie4 0x2000006f Data 1 timer_1234.o(.data) + Enable_Fct_IT_Compare_Match_TIM2_Voie1 0x20000070 Data 1 timer_1234.o(.data) + Enable_Fct_IT_Compare_Match_TIM2_Voie2 0x20000071 Data 1 timer_1234.o(.data) + Enable_Fct_IT_Compare_Match_TIM2_Voie3 0x20000072 Data 1 timer_1234.o(.data) + Enable_Fct_IT_Compare_Match_TIM2_Voie4 0x20000073 Data 1 timer_1234.o(.data) + Enable_Fct_IT_Compare_Match_TIM3_Voie1 0x20000074 Data 1 timer_1234.o(.data) + Enable_Fct_IT_Compare_Match_TIM3_Voie2 0x20000075 Data 1 timer_1234.o(.data) + Enable_Fct_IT_Compare_Match_TIM3_Voie3 0x20000076 Data 1 timer_1234.o(.data) + Enable_Fct_IT_Compare_Match_TIM3_Voie4 0x20000077 Data 1 timer_1234.o(.data) + Enable_Fct_IT_Compare_Match_TIM4_Voie1 0x20000078 Data 1 timer_1234.o(.data) + Enable_Fct_IT_Compare_Match_TIM4_Voie2 0x20000079 Data 1 timer_1234.o(.data) + Enable_Fct_IT_Compare_Match_TIM4_Voie3 0x2000007a Data 1 timer_1234.o(.data) + Enable_Fct_IT_Compare_Match_TIM4_Voie4 0x2000007b Data 1 timer_1234.o(.data) + TabCos 0x20000110 Data 0 tabsincos.o(Trigo) + TabSin 0x20000190 Data 0 tabsincos.o(Trigo) + etat 0x20000210 Data 20 principal.o(.bss) + dma_buf 0x20000224 Data 128 principal.o(.bss) + compteur 0x200002a4 Data 24 principal.o(.bss) + point 0x200002bc Data 24 principal.o(.bss) + M2 0x200002d4 Data 256 principal.o(.bss) + __initial_sp 0x20000828 Data 0 startup-rvds.o(STACK) + + + +============================================================================== + +Memory Map of the image + + Image Entry point : 0x080000ed + + Load Region LR_IROM1 (Base: 0x08000000, Size: 0x00003f0c, Max: 0x00020000, ABSOLUTE, COMPRESSED[0x00003df4]) + + Execution Region ER_IROM1 (Exec base: 0x08000000, Load base: 0x08000000, Size: 0x00003cfc, Max: 0x00020000, ABSOLUTE) + + Exec Addr Load Addr Size Type Attr Idx E Section Name Object + + 0x08000000 0x08000000 0x000000ec Data RO 71 RESET startup-rvds.o + 0x080000ec 0x080000ec 0x00000000 Code RO 189 * .ARM.Collect$$$$00000000 mc_w.l(entry.o) + 0x080000ec 0x080000ec 0x00000004 Code RO 216 .ARM.Collect$$$$00000001 mc_w.l(entry2.o) + 0x080000f0 0x080000f0 0x00000004 Code RO 219 .ARM.Collect$$$$00000004 mc_w.l(entry5.o) + 0x080000f4 0x080000f4 0x00000000 Code RO 221 .ARM.Collect$$$$00000008 mc_w.l(entry7b.o) + 0x080000f4 0x080000f4 0x00000000 Code RO 223 .ARM.Collect$$$$0000000A mc_w.l(entry8b.o) + 0x080000f4 0x080000f4 0x00000008 Code RO 224 .ARM.Collect$$$$0000000B mc_w.l(entry9a.o) + 0x080000fc 0x080000fc 0x00000000 Code RO 226 .ARM.Collect$$$$0000000D mc_w.l(entry10a.o) + 0x080000fc 0x080000fc 0x00000000 Code RO 228 .ARM.Collect$$$$0000000F mc_w.l(entry11a.o) + 0x080000fc 0x080000fc 0x00000004 Code RO 217 .ARM.Collect$$$$00002712 mc_w.l(entry2.o) + 0x08000100 0x08000100 0x0000004c Code RO 72 .text startup-rvds.o + 0x0800014c 0x0800014c 0x00000024 Code RO 239 .text mc_w.l(init.o) + 0x08000170 0x08000170 0x00000056 Code RO 251 .text mc_w.l(__dczerorl2.o) + 0x080001c6 0x080001c6 0x0000000a Ven RO 253 Veneer$$Code anon$$obj.o + 0x080001d0 0x080001d0 0x000000e4 Code RO 119 i.Active_IT_Debordement_Timer gfssp72.lib(timer_1234.o) + 0x080002b4 0x080002b4 0x00000074 Code RO 90 i.CLOCK_Configure gfssp72.lib(clock.o) + 0x08000328 0x08000328 0x00000008 Code RO 91 i.CLOCK_GetADCCLK gfssp72.lib(clock.o) + 0x08000330 0x08000330 0x00000008 Code RO 92 i.CLOCK_GetHCLK gfssp72.lib(clock.o) + 0x08000338 0x08000338 0x00000024 Code RO 95 i.CLOCK_GetTIMCLK gfssp72.lib(clock.o) + 0x0800035c 0x0800035c 0x00000074 Code RO 96 i.CLOCK_HPRECompute gfssp72.lib(clock.o) + 0x080003d0 0x080003d0 0x00000108 Code RO 110 i.GPIO_Configure gfssp72.lib(gpio.o) + 0x080004d8 0x080004d8 0x0000002c Code RO 170 i.Init_ADC1_DMA1 gfssp72.lib(adc_fake.o) + 0x08000504 0x08000504 0x00000078 Code RO 171 i.Init_Conversion_On_Trig_Timer_ff gfssp72.lib(adc_fake.o) + 0x0800057c 0x0800057c 0x000000ec Code RO 172 i.Init_TimingADC_ActiveADC_ff gfssp72.lib(adc_fake.o) + 0x08000668 0x08000668 0x000000ac Code RO 124 i.PWM_Init_ff gfssp72.lib(timer_1234.o) + 0x08000714 0x08000714 0x00000002 Code RO 173 i.Single_Channel_ADC gfssp72.lib(adc_fake.o) + 0x08000716 0x08000716 0x00000002 PAD + 0x08000718 0x08000718 0x00000048 Code RO 174 i.Start_DMA1 gfssp72.lib(adc_fake.o) + 0x08000760 0x08000760 0x0000000c Code RO 155 i.SysTick_Handler gfssp72.lib(timer_systick.o) + 0x0800076c 0x0800076c 0x00000022 Code RO 157 i.Systick_Period_ff gfssp72.lib(timer_systick.o) + 0x0800078e 0x0800078e 0x00000002 PAD + 0x08000790 0x08000790 0x00000014 Code RO 158 i.Systick_Prio_IT gfssp72.lib(timer_systick.o) + 0x080007a4 0x080007a4 0x0000010c Code RO 125 i.TIM1_CC_IRQHandler gfssp72.lib(timer_1234.o) + 0x080008b0 0x080008b0 0x00000018 Code RO 126 i.TIM1_UP_IRQHandler gfssp72.lib(timer_1234.o) + 0x080008c8 0x080008c8 0x00000110 Code RO 127 i.TIM2_IRQHandler gfssp72.lib(timer_1234.o) + 0x080009d8 0x080009d8 0x0000012c Code RO 128 i.TIM3_IRQHandler gfssp72.lib(timer_1234.o) + 0x08000b04 0x08000b04 0x0000012c Code RO 129 i.TIM4_IRQHandler gfssp72.lib(timer_1234.o) + 0x08000c30 0x08000c30 0x0000007c Code RO 131 i.Timer_1234_Init_ff gfssp72.lib(timer_1234.o) + 0x08000cac 0x08000cac 0x0000014c Code RO 175 i.Wait_On_End_Of_DMA1 gfssp72.lib(adc_fake.o) + 0x08000df8 0x08000df8 0x0000000e Code RO 245 i.__scatterload_copy mc_w.l(handlers.o) + 0x08000e06 0x08000e06 0x00000002 Code RO 246 i.__scatterload_null mc_w.l(handlers.o) + 0x08000e08 0x08000e08 0x0000000e Code RO 247 i.__scatterload_zeroinit mc_w.l(handlers.o) + 0x08000e16 0x08000e16 0x00000002 PAD + 0x08000e18 0x08000e18 0x0000001c Code RO 176 i.fake_timer_callback gfssp72.lib(adc_fake.o) + 0x08000e34 0x08000e34 0x00000114 Code RO 4 i.main principal.o + 0x08000f48 0x08000f48 0x00000138 Code RO 5 i.sys_callback principal.o + 0x08001080 0x08001080 0x00000044 Code RO 83 moncode son.o + 0x080010c4 0x080010c4 0x00000100 Data RO 188 FakeTab gfssp72.lib(libcos.o) + 0x080011c4 0x080011c4 0x00000020 Data RO 243 Region$$Table anon$$obj.o + 0x080011e4 0x080011e4 0x00002b18 Data RO 81 SecSon bruitverre.o + + + Execution Region RW_IRAM1 (Exec base: 0x20000000, Load base: 0x08003cfc, Size: 0x00000828, Max: 0x00005000, ABSOLUTE, COMPRESSED[0x000000f8]) + + Exec Addr Load Addr Size Type Attr Idx E Section Name Object + + 0x20000000 COMPRESSED 0x0000006c Code RW 76 moncode dft.o + 0x2000006c COMPRESSED 0x000000a0 Data RW 133 .data gfssp72.lib(timer_1234.o) + 0x2000010c COMPRESSED 0x00000004 Data RW 159 .data gfssp72.lib(timer_systick.o) + 0x20000110 COMPRESSED 0x00000100 Data RW 80 Trigo tabsincos.o + 0x20000210 - 0x000001c4 Zero RW 6 .bss principal.o + 0x200003d4 - 0x00000054 Zero RW 177 .bss gfssp72.lib(adc_fake.o) + 0x20000428 - 0x00000400 Zero RW 69 STACK startup-rvds.o + + +============================================================================== + +Image component sizes + + + Code (inc. data) RO Data RW Data ZI Data Debug Object Name + + 0 0 11032 0 0 0 bruitverre.o + 108 8 0 0 0 384 dft.o + 588 100 0 0 452 3804 principal.o + 68 8 0 0 0 340 son.o + 76 20 236 0 1024 788 startup-rvds.o + 0 0 0 256 0 0 tabsincos.o + + ---------------------------------------------------------------------- + 850 136 11300 256 1476 5316 Object Totals + 10 0 32 0 0 0 (incl. Generated) + 0 0 0 0 0 0 (incl. Padding) + + ---------------------------------------------------------------------- + + Code (inc. data) RO Data RW Data ZI Data Debug Library Member Name + + 834 58 0 0 84 528 adc_fake.o + 284 34 0 0 0 352 clock.o + 264 24 0 0 0 84 gpio.o + 0 0 256 0 0 0 libcos.o + 1688 144 0 160 0 672 timer_1234.o + 66 14 0 4 0 204 timer_systick.o + 86 0 0 0 0 0 __dczerorl2.o + 0 0 0 0 0 0 entry.o + 0 0 0 0 0 0 entry10a.o + 0 0 0 0 0 0 entry11a.o + 8 4 0 0 0 0 entry2.o + 4 0 0 0 0 0 entry5.o + 0 0 0 0 0 0 entry7b.o + 0 0 0 0 0 0 entry8b.o + 8 4 0 0 0 0 entry9a.o + 30 0 0 0 0 0 handlers.o + 36 8 0 0 0 68 init.o + + ---------------------------------------------------------------------- + 3314 290 256 164 84 1908 Library Totals + 6 0 0 0 0 0 (incl. Padding) + + ---------------------------------------------------------------------- + + Code (inc. data) RO Data RW Data ZI Data Debug Library Name + + 3136 274 256 164 84 1840 gfssp72.lib + 172 16 0 0 0 68 mc_w.l + + ---------------------------------------------------------------------- + 3314 290 256 164 84 1908 Library Totals + + ---------------------------------------------------------------------- + +============================================================================== + + + Code (inc. data) RO Data RW Data ZI Data Debug + + 4164 426 11556 420 1560 6208 Grand Totals + 4164 426 11556 248 1560 6208 ELF Image Totals (compressed) + 4164 426 11556 248 0 0 ROM Totals + +============================================================================== + + Total RO Size (Code + RO Data) 15720 ( 15.35kB) + Total RW Size (RW Data + ZI Data) 1980 ( 1.93kB) + Total ROM Size (Code + RO Data + RW Data) 15968 ( 15.59kB) + +============================================================================== + diff --git a/Obj_4/Obj/CHTI.sct b/Obj_4/Obj/CHTI.sct new file mode 100644 index 0000000..c26b647 --- /dev/null +++ b/Obj_4/Obj/CHTI.sct @@ -0,0 +1,15 @@ +; ************************************************************* +; *** Scatter-Loading Description File generated by uVision *** +; ************************************************************* + +LR_IROM1 0x08000000 0x00020000 { ; load region size_region + ER_IROM1 0x08000000 0x00020000 { ; load address = execution address + *.o (RESET, +First) + *(InRoot$$Sections) + .ANY (+RO) + } + RW_IRAM1 0x20000000 0x00005000 { ; RW data + .ANY (+RW +ZI) + } +} + diff --git a/Obj_4/Obj/principal.crf b/Obj_4/Obj/principal.crf new file mode 100644 index 0000000000000000000000000000000000000000..840327ae003ad7eca6ece52a99fe526f9503cb5e GIT binary patch literal 240823 zcmbS!37A|*b?%j{Z6w*2cVipd7_%gRGxv7)EbP6`wADS`?(Uh9{FF4ZJQ&5YB(xYi z34tsS%n~33Y+`m25V^3wcc7zePJSs)~<=Rd}A{D%^jm??R@=_ySA_F-8a6rva34i?&??T+XZ3QaMUd& zt@yg@#*J2gS8_>m$>gra%C&pIGt6y}l@YRFv zI4@eWZFp$Uu7ihAM0*eJ-gn8K=$>OA{HcInddJ1l+OthrD@S%8*~Pyg<-Vu?i>ylb z9y>GYN70%nI%zysb$9Z*@qF~zW2XZ^osYJT$9oR$J9?OZqRq$7P~;O+?j7T9BieiH zBt_paX2p%pJa#`N_!Lo*d)GR)?4h%7BMYq2=?hl$n6khZvS*ec4 z3n&*L?cTW79u1=x9lJo~de(Tnw6g!o1Bb@L>kp6i?zy^tVE+^MUKQPY?8Ip1BG#$( z?ZIXHqu)Jt|LDBvBK$t%^o0ZaySooxz59xNEA9P9#sWVCi3&fnyK>EeL)UkA@85mZ z$~EW^CCC0_XQdn`)s7x+?LN9sA^!$VRoZQfhmpv@?t|G1+d5pT@7}jhO8d;Qb5r`M zjg>2oUe!IYfA0~PA+))_k*W{#hD(zEQ8-IUJ5kvyfrlSEEd@3&FE{2S^@FHqihZKL z)R4r}4cVh=7ZqL7f5%`RjOvnj2AZalu%*?h4(BELxh8L2@jlq#ZSEMgCnfI-a^zT& zpPwTqlKhuBa!Hb(mm`-Y`MGFkO1;w>-D*6pKWX>={VV%a9o|5oO1MswjZ}PR4P9ysLV`rn{vs!P<`ovCSywr*I80A`R)Z?+Ta=%gY z7l*a+e1BZ8F2v)}j#Sa}Qy-o|yrb~J4po3pG%CJGIoP56`}RCCMCU0g@Y{`w%DON+ zR&Kf5NP_M#9@hrjWs;kXBmzN)DP(=#Xet624d%x6URR=X`DAHz{Hf6-kW6{wPMfNV z`l~iomGD;#(d`5tZK`H?q5}-1GN;%;qEl>j0F`2!k@K+MR*p6G0afY#6{Ca~hZs^6 z_e`Fy_^0!9W$hFyk!m$3vvA_dI96r-S4Q!m6R7UPv_zVAzOUwWMa{bc`N&FX4Ak?D zXumJXyhw7Dp#m!1^6slw77xmd-i5y9Y*EEGv-roO>kqC(e~n5k=MHC#QT78&SG%S0 z{CKXpfPuOm-3T{Ie9IUU9?l-ePl{f4>>Ncsbv))ov(v7P)i4_EgQ-&MlgH!s!f2{I z9_{Qm$K&Wx$F`|tn-mhg9(7R4KP_dhkB5t`R(l5$M8{51=)`#3uMS7eBw8?q2wL=~ zuuKZstc67DOwAXi9(BwRbUT-t*R|ej%>zhD{r$E|okxB_j2Q3mjb_DYuo$#oV^-$y}WlfMI zg#FB>328sKX+qq+s7o^KiAXx$x3c@N(C=I{AW1(-(}m#gdH^B)dmcb!@vRJ?dRZQS z3m?inPR;<4$zdNNayjZlL^cO8WJzgTnadNEAqmM3aY_VvsTM&C2@nr zc+KwX!1z3yQ4-Gtqih)ysJJuZE@rrkS!)3eCXjfsMTGh!KG-5cbrK(t7g^mA4J}5B z1o0w^NRc4g`A{T?7i64ls8AEcUuDgaL?!eSHdRUeq)k;~KbkdN2pD&o=s=_ko-BF+ zHtKB}QI2@L2U6~+c_8JK$M~~?83#Oxlr4|-K*}JW7RsteWvS>FZ5Hx6JDb^Okjm^^ zK1}8I9UrE$`z9)}tU)I+x0d$ddu)>lC>K7@MU)4h?;^^9&-P{mo8IjvQ5HSNMU*`r z1(Y?<%F+lADRYp|O3tmRJ%Gv{Nae&4UwUVomZ!3cvpNaK^+yBIdS2vGk;4norAaYc zDMm1Z{78!#jY5cctxE;(t8Ed28RSbdGNd-zt(K6n$3q79?#w;I_T0ES>UHsX$X0)i zA3>U{v;JV%zPu^g?xV5>yo4hxneqQ5gIQ+bZ) zr^gK94!tOqI0tfJ(k}150kRotZt9)Fg4+tEPS?TS|VvsXs}oxMJHr! zl(S{Bj~5rPvW0eSICXKM+G)=%5JcT9aYk)a3>!sDSRS-TO{^vv_0!=QG^>s1*02~f z9w}x=SPXcCn2%*`2jw9(jW(L~2kTfPe4C7-8!%|BJAXZj4hx@GtsKDz%))5U>qNWY ziLINlD7EhPH7Ab8hgPn_>eZ1$2lhpr#pxu6jU;_!`*4xu3u`v*QQV)?a=wt0b21c? za`0WmtlRzJAZntlWxiirgHI9UE6D$nXReaDtC_#7m<9P=dFJcLe5Pjps$$+j@@t^A zR0G*jjsCD7{nfDtDlNXY22CAW^bZ}_vvTb9o^q1H1UyRa15JE z(HSP8J*-6!G6@Y3e%m5+YbX*!#sD(TG)E|m1kG-(*=V32=BV>$n3YJAu{HwkcnaG$ z+mxx#TD#%e-TRKNL|b!Q!};h{VLx9aRvU*~NF}{Pe z*s{>GKMcRa>IjoKgMu}?QS>3`FCB<+d@$Gn|EKPIY3i6?nxdgM%!#~q;#YRm(1qtbX-%JOt5jM$;)h0PzNf*{mwPthK!ds)+Z!R>d*r)mRv8^hH zb(n`l?=gS&qIX~)M&`dBXb%%~^LH2DoyPB8S8eX8I^PC?jd|uA&X+bn`sn`syRTWf z^0DGWe&)O!@iHt|TquUd*RS1zhI)AA(6uX9PNITr)%3NOMISeRE=3?ohkv)i2Fa zFBiPi4wbx*%~7#E2Du9kmAs2N>XP7nltU$NEl0gf@IKz5l6UTZP&Oy2GI;OWb#2TD zxC%CTCt=ArY4?X-M?P2_UO7w!v!Cqdt&JQid5sCOkSlBLSvg*O%Y*m)997m@W4&BRSQ5Nja=fzEPB>J`-6qC2)|XR- z1XW&%s5IXVflT?MoV<}pvcaK}_e8&-SR}bC1Ty74S-q9|srvjR51sr6{s;AWo2sVY zUAtjFW@<}V=rl;f{;=7JI=b3^*Qn$%KJ(IQ^c_~CC+TX0pHIQUlwP=3pEt55-I|%2 z(nU7H52u7c+I6-I3Y|sD?}R|6{2@K!4i6_s7d{$&_k}-MyS_ba4x%>ZXoB*DpRC=? zQwM{kW@8c`D<)$dj5|@nDdWUI^2O1&ExuuYfIitHFu~Nv5(vfxA7crdFeYQQHi&+Y zWkIFyTw~~1j?Tj@LePH*`U&kmCVqo?)E#)E)Lva z;fgbecdf?60{_6V^OdACGf7L;K^qf7A?1ff43zLQe5K2I;klUvu7hC}r;e4UrVw-8 zs$7)yv}|cBlhw!mI6huzQmFuE`bTDS+$=r5ZQA0v6(#(2AqQpLoUIs91}pb?q1)yp zd59H0IXBa5Q$7|-S+w&JQiO=5RLFA*IVj_=f*klr5sJK|kb^Q_9^x3KdOWX?gEDeH z%WN5?dfXJ0K@Q4zrN^t7-r#?rJOvT%i_HUcVX>CB4NqR!U;I zR2Q1Vp^$TRF$<;e44~|j&Z0l06wH$520ffbqD!7%$Uzw|@u@r9Ipp*L>kD#TdgE$L zl=O;Y7b|Vf%e0|?(Kw89zGQVaO5-x5wC!wLnovv_*Dq$Flx4d}F&2-p>eO3c8xS(? zEMlO9Z+RFx&1S!WKSIJUix?wkIpSvm-WxdF5AYuZC z-KRORzM6`9^J+|#^mZRpZE1_JOnxhl8t~ z4n2;QR#xKN+{eR3Sx-CmAl0t#&vq@jQu_>PpE(Xb$~)%cORY5IedRd#DDOXgd}&D< z^8W2O_$cplc1=`X*@^F!`gZh+!gF`8!b3SfwHt<%Lw$xzshI7>ER-_v<<#vhv@w*X zVt%v=59R!~FDqFiQZdHPW>(M{3#I(7ukxk7PUZaLYD|>$Rv%MZt5QjCS&fO3-r-|P z>r*PJuxXKrl0Inrh+lBJOHeB$GsP^F@;DDmYM7Gpm|_-6X?R#tqm-2SVirp2*|P~@ zQMX$i;0}rU?tWt-2W7l1H%`$jU5sSSft>3X8)SOh4<% z0n?k>&dZwv`BnbhLJrD!k%uEY)4?(Ft%V$v@y=|Wklm*6*Fvu@XIK}9K&E_Hwl%I( zwilNAa>@GBL6m9l@Dw%D@}ow6oqeTZl0)T>iWn&2zwJsdB#2`}a*}dW7-s5M+O3Zd*Yi0W+-;4qUMUy(A1X^~-JjMC!)!Xf&wG3iOZyoauQ?L4I|e z$~q*{b6;EJeNhNx%HQ%RHeba=Q~I4(m!#m+wO|D^_22pzWYyx~y0@$|77rh<7cbwk z4vVs*0p@@n#u!7VKF~g_?`O7R>G&k`15}VHgp0>Kk~Ume>HHFVs1A11vaD2nNP zWufPB(nb8k+V{p{7D{=W%YxDx*B1u^EVK*f z{Bbc0r98uB5k-v8>OoUhUyr&b3#I&DV~9+RWOuCDnBaZpbYc##FByU-mY9; zdre4L$wDc&_^ZA5c*lv+g&VNzwdV8dPB=P)={7ciPQvfCpI^7`D2^QQ!53q7CC!6;*tGkx zk1vV7X7OR`B}(~@81hOuEMmxOFAuNnH*&jgNDt+{bHMv z;BbviDMg<*DfKpXU%!>3#L<7{Cixz7ob~l2oYj+K>?tBWm-rTka&5a6z?iO^wWl=Q=+N#xE4VbSKI=YT$Uzxj$;S6o z#@uMwN*9o?3d2mj-y?t6$BC#tyK%mgo!H+Oa!|&bvI%ag!Em{ku5-O3h%)VaT@YK<)`wf49*1Ty7mu2ztcCcQO?GVQ!kPXNx%Bwft75aD+Sut&Z{jk&J{d3MqwC=Ot2sBo4FE)pV2S@Y z8$-Q3l=BPQx#&m6wd;?pRQK!=BJK>sO#Lm}M@)^BIL|E-8=q6m-$0o*aYeJfGWY_O z=Vf{|-AxmxFjK$UKeD8q#Et9agzAUrB;=@Zh?;M>I` zAY%Xi#`P0J?l+M0y(VX8xJVi=)uf!8IAKs`&7?+?RFebiHp`#o#|Vdq8E^S2c-P{O->UVsD|M z&i0k57+6wQ`btc;XmU`-%{f)Y7=*)F9EyZ3Un^pu1Y;45zLX!}gpoBZK zT^cf^<6HJ0l=8~em?-IWwz6_e#AwfOM|D#u{g+Y( z*<6n-98u(7On+JkWXf~w{vaK6ks6DJYWdArg%=8_fm!oV&ZcZJ$l_^KN7bcjqcM<2 zfh()CQQD(dW1AG-om!oZ(jJp7&A7UW>(O-6{Hk1()eHEmv#>o*TfvE|@KDa_MXC$u z3k#2fjndAwE2}O=w7pE$Evqq6(whTbXm;CJ2VR(yYfHmR&U;H8rW*LdXos%mrfj!yp27V8b-(@ic`By9n1LW@o-P#(5T@{%8hZ%IsJaP zXZ^g4RfcXFPa)K zGGPN3GShDhc!2XM1S}F!0c6CNiBZ2TC&VXY0~2X1P7zoStApyC@5>4~SjArJ;lL8W zFq2_S1$8bN2W7l48^_7P%7VaS-Cjesnqe4b>dS2nSb@f^BM9F&#GPN!8yM>tl%M0E zj5m2?jOyvvBiq|M3pps`{T`0i5h`(Tp zER^#2tZx%qu)X546apQ{^%9|qaRlAZL`fgWh6|hN3anV{IdD{&_0`qcDDA&|df^0| zrPq5`W1^&w_%fs4K3C89qLk6xkW9C2*3SSaNWi>KkA-msw|E}tFNb2*ag1I&c?=18~# zcAZ6PatH8_5CTKRB&;K(x(F34r+7y)hh>P!ZQQ8MrI#??v?>?P_!kidn^$5l$jcgH z?;BHBoQ@a1eZX;XQszUCJyfmPU+9yG3x*7gErfpl_*f~`ICtzy?eyx~)lH2%v-8A3 zKFa%6)&aYGVjVr9C$6Z3H97@f{)ThE=&J>jgy?46wJ;kXw;oI}Sd|`*zsL z2xYo}-~=NaKo<&bI6hWNJuzG#aElwOF4%{XCj|P(#YvgQw{*Ttpy^0m6nSRYi;9b~ zo>#=BOXQ`ia#7Z+vRLP?Uh-I-+-v*5@i0>2$GrKndqAt3Ti%b4Hq5J6R^_6seT7`O z*ezt;v?>>6z0%9Y4ha)}z1D23j2QkfxhU)H-likCa8e$2$~#eyT%C>5s@~eJrRm!7 z&Ew#syt|6|cq2gg?dQkAM|n}$bF{W8E6591<)W;cye&r9x>QGZf?GA}RPf4iaZ=_! zZ`Dj?a?@Cey!m(-De*OhjK-1SmmLoyCBC-M8gYnLDLH>!oRrxs%)CCY56r*$co-@1 z?S*;sjB)D9(Q$E7=Kl%TGL(3?n@aq_aqv;zPqLRB@+}nd7)Lw1{`dcmlb3Qogq1M4 zA3wp@E0PvM(?8ju;dcVMNgLLOBG?x;lyzEufboJDdVEdedbFSoG8!jnf;PfzNalNT zW{*HVjCDAP=!X#moxw3AeX|H`Ac!YtqIrx}(Dq^(QZjCor(2_MAi#yBAm~6%Y}m`6 zo7BNdYzyk(MHDWg)u))Dmkkb!dwEWLVi zD!aPp$lhyLut2R(XbFUJl|K-C$Hojl;5dnmp*-*(fXUGx|_o{I_ zT9ttjnm5gJX=M*y?m#>)M^A-3FJ~dIQ83v37+0;iEPN$~0~r(ST=mq6VTmr;zk&N@ zNV&IcJSnwPp!iBSJ=!FWbi8HbW`w94%P?%e3%{r2Q>+xDYYyTAB%iC{Bc1E(;47)y zDN47jLX6O69)1x{U9S1R8|5=AH{c^%awF<$T3T6xOLT&Fs04q33MUgFke^6k)GD6y zlk(rG*q;H5wuw-hh{Jz)&y!ZJJc<)-SL{B77mN;Jf&L_gBDUI~ znH}B{NcA)7+M9Ha?^QWI-AQ5BUPghWApDyxj?%#v8m9$!6+bXS|x8>t*`qxgL)0c=)fYEzlC;CommRUF zHcIThTI^Sq*e7TaU(H0^;nX~{2mYnmX!jpDh{MKbsfu?phihbq(9Gge0|SK0DtU5x z*+ISk#G`Q1od4Xo;RxP^I*g6RGoo#q(6g^QkrR)>byx~}B6^MMpp6_~P80MUxE#_# z2h9*8I}yp}43&jQHN?1uM}`hX&%xL)Gx*NN6ZSj_r^t0IP$6Yy&kBYp!P)`qrcJCI zcL~;uvLL8rtv_i6&sI^UaUBZ58gZ$)*~Ry+c;s(#2VzIR26=4TObfP2hjHRi-*;fo z)tIcDrnJQkM%|8?F`NTNVKc z8m0hba5NLZD*z8LeuDdgOn2NM=x1qPq$>f#Lv^;zzEOc1%%2+w_@Rji{gvD3E z7PW`3f~dI`-;}rx>DVzP0@$Wx*gGwQ0_N?VM)*Wa-VDxUdGei!uCn=NaT3hKH;Y)| zC`^^jdiZ%VI+aIL6lDv08HP6m{n4zcioOAld|{X21}|%jm#|PD6zd7#yUxp(;Anzj z3{ST|kc_;KwfRk(vb;;!?X$Iv@lET~vK-CiI1^N9A7=%7Lbl8js=AMJ3L&6v&N7;S zk8>I=)#j|AY4|v2#ET!Pi|F?$F=I$6neDUqGPh+;qnG!{OeW!Wn{!6Ih3d#mVmRLB zoJAl6pUeb@Gb~Qz;`Mw|%6lHUcs-w#^PW%G$@p@wAdHWi`Vm|nY`zb3*Y~BWzNb$GwbP) zi`Vnz$-L*0i`Vnz*zx=Mk&D;!<#OKh$i?gVas{5(12WAzh*c6pEI$3)WH1XZdP~20t(I|{>-M#4=|fNU(Er|#Ot5q z(RFy+VqfjRbvknqq1}zPn`ZvPiFE^H{%9@ug%j%s%=|8!g3NzxQ;_-3umvwCAZIgk zo&d^c|AAuLZ=6`iN!;Zep@gM^kl?P=1C``+h2*{a@Y={=<*L0{3OuB3`&zN^n^!Wb;RG)ZjwC z@F|AbJJ;Skp(j(5h-9eflQ&OnIjoBe5oOPk{1@IlapGaan_>k~NJ0uNC`Nc_L#I}E zAiKR(?N%3RZ{&PLQFO{gyiSmk*SCgXT;pRbVdkDroNu1k&}vn|`3WCq8L`gN+6tEm z#?#0sVmcdISMa35Ig)(v=80{GTUOEH@_=qaqCVr)2(ZE`j!7%{geuk3GY~sDmuVgxD zfA_=*n6!(Ts<=J>Zqy?X_%O4)PXF$#Y$q{OO(&8DImXFlLmVpi)rKmAOqCOgRr%lq z=ZjZ@Nm~BFiA}?09vU6sd&(d-<_B?t_W3Y}*oo28rw6V-II$6&Ghp1|Fb)ztYLXY( zNl**&sd@7-&p2q{7Ehjt?X2^i)C~lUOsm5OC)PK5(B`W-N`eC_x_Ti7mhMObpG>KS zpPty*Zq#us8VxLU|EGlu7tv&84|p<;^>pitTI2(vw&%Mztx30|uAvC{6pJi^+b1^E z7ufNxXr*sQtwx|^e9xwak%ACpxY>H1%Jy_Ttew8At@B=`U;Gj(9_slIwb(CBtZ(DI zGA{RI-ho&y;uSQ$RP#G0a2=M$9Mpw!=fp;kT8NVUAYFQQPHX~g9^od@2Gb%a9(`J9mZL)llqV+Oyw@Ruli~JLzpwjA4{cGyt86)o!!d+mjRHeFwymPG~75D~LX;b=E zN$(2auTwdv8*<86l`(6VkOL`CO_?8RFjpYltOd}zRd0e@eB0|9Msk&8{jPv1WD1*E zIU#e4Y-0~io&1i?MxN7A%XCT~uXpmU4PRzUt=t6Sa0s8iJVzW2QJ^jn1ULiw%=z#bSP%(FC~Br$N=cQgwvY9bg~As05O?23_YJ@_=N%v#J*K5SCZ> zzrTQM3WkzbZ(hd+#FxUPS|Bt*;A^KTVf}#f+)tR47Ac?CPJ8v{4Z~$R_*%*z{092H(!tko@>*YTwTu>>O8%q^SO+0y5l!qHJjFKC*if?*yPGnxr`5UVKWTB9k)O zPAUnMSVr41D2a^zV^G)~>Yaz4jPS;y==gO6W zp^s>-369vN4Vt9tXp|t9Y1*7VwAmQUv&b6YY+`sw&~v)BCR)oIi?zH>Xjwv4P3zNb z)UsqeTymS#vSf5SBtgrP994w5x0zaArtJYIwJf27cC{>NEd#em(^maip=BA7=u#~| zOD(zFlRECRQp++<0GT9cS;jp~Q&78C#th8WrmVGjvEOHD-e25|jhznOo3jY>_^vbv z{NB0GB=kVYwotx^IyOY8t=F0?H4w5r6|i*b+j+562hyACw|iR4*ZZ|hP5tKP_01(T zh1Y81LFrb}G4S}RK{GbGqF+uz} z4`T`aCc0n6$dA?;A6q$kILj$jaEN?=>f@{6^U>lV3l& zxiYdvi@yQlF^jxRkDxbfnW*+_$pDdS#rPt}T}h1v^>#gHx?#)4>U^!aFhDG?bQr&3 z%O<8L@i93fLJV+zoVGqFQ^WNd?0uzu0+oU1=1_X7mQaED?3)aZxX=odzSrCE1J}+%)tsG6s^th_K4@ zMm;tpmgOp(QgJ;PJNQ`hNUUJwHY6fe$2`6iJ&aRw5iXSo#!mDDALBFz1VduA12>A8 zges|a;|vBfn~|65Jz39+HOjOMM_C#2lh!kNO^2g5Y}wH7En^<_N4ir5sovR+YVtR_ zn!I7lI=sb>{fe~SfKcx?u!WFT!Z&Q$glS-(#GjdxNR07Xi;*8m2|k!|q!K=Ca-=fC zzog%}Z`iW2fe%$^TBAqA@cxD^>l+BmgUdTc!iI=E@B%BL2;+*mu%SKJ({Qd7qpT63Qt_4zUhZoc`jQt1FZJL#Y#5_eVDL=a z(firnINYS=|9(@Yow~gVK8`jXJ}wcaW6S%uaH>D>v2iWXV8al!+s9VIlk#xAsI~7$ zwLwU*0p7RvhckM3C6S3B7=`7 zK+*>Pxh?DQnJ|c6?_=Z<5QDM7Psexp7hI~gw%unouyb`a2OD~<2m07zIgJ!9zHiGqe%yS@$CqG} zDK#2=?00|U<11l*#NtbgIfS8JS?*$``SRoQZlAmg9+*#kc;A-wa}2F~osV$}AH#Yn z1#hPhWUxmrM=-{w--%*qd;V6=cVA4k)$et6EWLN>zLWvu0;3km`NWCK=4|>^n7GPQ zh+E_ej<_K7@5ob~O&kuY>f+K?C@zUxaowxkpO=@34nwjepD20NC8GyoGe^=-PT3Xm z>`ahY^g!fQUX0p}gPStJHq3zIG!dbzEGRLdCuZ4TE^Q)Q?v?U3qf#a^6K*7B#F8Xl zWD(1f$aU3>vm%KXTEryuwoIdk zm++;fTbSFNq~2=S&`ABvEfD2BoM%)d|JR$Pigp zs-iS9RhgBl65qF}ss(+|rm7}%S0)w`W~B<}*{qY2dXG(2dU5O{nYJMsRcUQQG^)(B4biAF(>6q-%FHii&64XCqLlV#G<;j6G(FPDv1%ac z=U`$g3vW}}{{A^j&b=QY@(I~MMH;r6B%OPRGWm&u&b53FI_KGRY}iTqdYg{=BIyso zNgOHX)NCz(taOx@T^V)6*ez(L=vq(GBn9U^U?~OXJYYEmTUm2e=P86?H(+ic6Z zmEeYl`MZRTAMl*qeMycqw>?Z~&sH0JgP52zq zvN$Z6KIe#p4N|SF7>rEq#W)1*Esi?E0$79w-gUJIO-vdsLJM1A7GVwt$}+Vu(uhS{ zE9e$a#d>v(d_MFiLs%fQ$S(~o7P$dO03|Xy+xS9K^coMjqL+1 z0!e1YVz4S{ikQS}&sK^U*Q<024ivZ;t$%YkFiRG{S+ZxU8h(;BT;RBo7f5i#!wZz6 zJ$|4ZUEv2Rm?wKhP2seR7nsJ*y$R^Q7Btfoul!AzGb z4`IrRvr+b+_#W4j2M$XOJl4g7yE=aou`S0x@Q5B)NJcyvZmo~RzLS)?m9tgQJN?EG zrfMmQ+;4!)A>raCDA5thK~}Pn+Cd5(n+Hd8zEq5R1fG!Hhbd#EQL-9-{;E z(Gx6yW?y>JpnhjKPL>kH`0yhooKf~8WgJ%aBNeQ5`jIItZ~BpGtZ4d?8LVLXky$KQ z=DpRZ_3?>q7X;!Ku^@Pu&Gb0PEQm+td<8N}qK7ycwhuvXE-&`QISwgiGe2u^xn|rD zch4+h0^+Gz6_lJM5KqYy%ODyvUCCJi@#H+`6o@C~iPIn&bzLT(0dZ@da~4G2;FNl9 zQOZw(`Zb42o9=X|H0rAkl~#Slq0+1`J5<{BC5KAGzUWYC*)fMo)9!GnwCxLdYC_u_ zD-zn~Sdq{+$BKluIaVaJ&9Ne(ZH^TQZF8(hXq#h2Lfc#`Xxr!Wwv}j`V?~L!IaZWt zn`1?ZwmDXmXq#h2iMBablxUk{MTxdKR+MO)YXxn)J#Sl?wmDXmX`5q3nYMi?8#P(0 z#qGf{0zzX-qK8uhsP}LjN_Qz4P#yM~xbf*nh8P~Lw!^4nh;#jltXH8VK}F7^92vbw zebhuJr~4qmEy!)`km$Z9B_kM5Q#=Bvx-3m^wlMNKQbz3-rj1$(zs{fvt}FKza9me= zA)_NuAJ(0uG1zmHxksvEy)-(-{%Kn%oX*rrXh$<#KL<3YNDU@LQoD* zYT5-NRT!dJZNDozbh|o$#JE49qXQYrA$}vYdutGD!vFqs)bF1>o|wmN5qvDTHW7e^ z(;+CvyeN<=!5yIhRKom7uXJd`L|!-;5aUB9j3)T%38Q5kD-EMFI1a2|?{f3yDt{QB zDr0PCKqjsdoZ+U%wac#-;7Mf)9a%Vi1s~#H_f!Ogsc*)({q7d1Ku|cp3Su!f;zH>X ze8alNN|~Y%j3C9@SPdtb(iEgFV;)lg&!FdUJ)wo;;_|V8ClWK5mZeq#PlT*Z#*Aj* z_e3&gTm!$d7-m=^&apKvEE_5L%5r$-{i``UE zLFHvn=b#3rtS$8Vw(43v%-}!m!E7KNdS_m9^$5wdN41atLj)Mu_{-3{&vija~!$F_JAL6_i!N;_|0LwM*MHWIO122 z&%iQf{yx#UjVcsYp8Qu{~jjR=k?AORj~ zQo@Z6&Sdyj#r~0B1C5u6|3e@>cXxiu3UKVbVaEZ*G`0&<4=lFqxukYd~-IYsHoZ^l$tq z+ZoX7{U}=*(5E;BC@hj~4ETTeQ?rEu%?;ns8Zu@3^5&ePC7?!7$Fy=WE!!5*U5;KN zt!!DqUA+X(b_Mixj@ANYs{;C0xr(K`e`>ZQpnvCA3+)Kt8||qL?^j?_z@@0C+QU+cV4%YV8f%Owts;4SPcJJ7H-63_{DA4h>aWgxH*x|kZXT6jsuo}p27IbO6dBjt ztG9lMQ;_)MAQt1Il3(I94*2>dPDA27L5%01bt}`guD;O1s*+oQL7&97h;B$`f=T4l z4nZ+aF?+?u*cI}MV-=kbK{2kldBr7I*Yk>F{hSLyF&4VK;!5V?m}x94XUi|Hgr&fy zUtAd*SYGW|Gn*lZcSyY2Rj~8r6~}7X2thG!ns~)cVG8XP$2wULK{4*5c*RX)#_AQv z3Rw$5G48G8#o?$PJI)U{RbK)#o(8WF048~Z14G86-jet-#qK}5b7+2l{LV4aJ zAe2q%)-V`jDL5dMM@0fc*`PiW24lQM84$`-CIO*rRv!+7F&3rsUFrOoUFoTwDh)bg zX}ekwKt^tNAY{#;cX7J|0nK{40|`K!+Z`x~-9dgx5fG~E8=YZ8ArN>@5Q}lw#xIdU zsPluAl*sCOzaSRlR*qjHV_5qovaX&T#A4jv@k=b>ex6?aX|USJ06G+tm9OCYu{mF1}AuMHqE&N2JbBsjL}M@l$r>PO0m@Z(1+ z_!hR6Mi`GV{%~0E0vr;&0Qc3rKnY!}7vN5t7pS1C^8(y^^8(W%8j#$*K1qy5$`0 zkT@PwqDqd(6i{|Nrhp1O=FMZuJbxmbuTo5#XO&H024A9HQL_kIY5PQpLaF4vl_D{` z-lsI$O1^?i)o{_%UtEaR;x8^-<;+)bC8``Ku0bVG zT!X1VaUoK^aa_nKmBCD)xCXP%!a-`_q*J?7Bo34pqL2p4YY>+LU9oJAO#uXZArJ%=%6kyMkBtI|F`{*Ui4Se)6MtC2+B4Wp=Q(#8EQy6W1{L>gS zee@ZOmp=L|Hk@*`P};?#(_VmQr@a6VPkVt<^k06Uj5sOY6cw!M*{z15oyPc!OG|!) zOGJKzOFe#sOE!LlOD}$eODKMXOCf%QOB#M;22p1G$SlIj*i-7%2k5+Zh9E}K2&7`< zi~z)F83BmlF#-_7Vfc05j+-sIV8vBb#@6D}COTv-%>ppn`|S`Eo6FL6ssw?Y0s>2s zaf{7P)!#9RI5+y+C=bS1ArFEH?ivKa5?&S$g5~HB!e9kkGQpHn*cSIT?bI0q(q zzvgo}w^)_2#%YC2R))jW(|ryzIARRY4^ryi-zy_E^TEe{Tk&1w<+F_ZN1ykMY%>#| z8!#~~@z(_mP&iCHZ556ft4e+oQyHm=4?6ZRW#R)Z6H`9Z#29_%@pC8WL_PHh9!X_q z9(hi{BWVr)yMVn}{XTUS4j!ZRdnA>SdgS6jp{IPNN3a~^H!)?-Oni30L|n%fZNxa@ zmK6jx(iMD9c1F_!qe_g68RF>ovO}Cc2|^2o@qeJI59bEC7}|ezu9A7)Jd@RLOr}lw zlfFI)^`lasFXK^Q;g%QqN{y#A#?8@SuDx)n^3Pl$-=I0C_%03bB{_MmLcUC1J2$Y% z5n}n$F@lp}{-JluGY1SMh$8#1A~?oOz94mi`MloecZJKlq|fmcQ=0!m?^49<$Kjx7 zX79Yaf-W6Z=hD{{zkTc?RX5IY8B?Y+^D_+*-WA1#eP(HX3MiW%vFj~S) zMIT}o$}vAga+3LSX7T&Q3^fdqg%au*9}5{8n7kA+G%VXayLWg;s!}wVD-kn39FfOlW3NS%9HdXayMRg;s!}QD_AinuS(? zp|zS7bGR=bHnSwB!-Wi-5*IRXT3pD$sc|6#r^kg1t<|iU!(De@%SD%qHd@AxVi>Jp zYcPyX;j2B2PUFMfr@6|P?)5uIGt>gk(G2x~b2LLE;2h1sz-EO?w$Nu5GR!$czwG*C z78RQ5FJjG5E3^U<>V;N-p;2fB7@CDvfT6XT6?5qS!+w~enf{6@%>+ZO&)Vh$sKK09yB z`=lr1N!nRig`{30n2siOw?a{l^)=z725)ida*6w zXcXH5j%Kkf;ApLC%Nz!X0&B}GTYpPb)`Fu}YzsK*#kPQ>QEUr1n#Hz&qqV9na~SUm zti{x;T5JnAYQ?sIqh4$aI2y&afTLM#3piS<+A@cIE#0h#*B>73-E%d9px}6YbD>)6 z@a+itZ+p>YgT-|J8lSpsN zEG)GVj0~@8jS+PW&cSw$7M#bhRyAFKG73jHEdz0cQ7aaQlW!S=RXA-0U2qtkLiZa+ zr_sd2=nR@f7@b9P&~A2g#sqX-5ga3`OhM`d!DtHL5*~RffXlcESpZjX(WL;MLX?;S zcp70S3*Z@q0x5uJ5g#KACzFM4N#a7cBuSxLl2V~tl5(M2l1iallBq(sB-4d%LD-f; zx6GPxQk=S0nk;lnDTZ5eEgtVJjO*BILyP~zj)wD>^*8Y7@+u6-D36GRscqb0i`;@1Z;auNThQVQ-7;&2fpSu##TU5+E&jZ0M@pu~+czBJ zap|^!O^{rH7$DmG=Zj#zZBme$51JIfe8r>y=F=qwa0TbX3*af75-)(KF|8|rXK-S? z0G>7P_d6~fqxJu7HmUUBF%FUINv8+r1DZv62?xrH@G_2-7vU8gE-%8TaKyX_pGFXX zB76q-k&EzIGlGU|Kl*_}|DYo%^bdN1LjRyEDD)5dfAdV@m$pgSn^5BdWm z!idK|vu1=57e|j!=pS?mug-S~h~LFYfansQk+1s(h%VutBA6FMb1lbA&G&H%U_Oge z0GIKeUIAP|bm#(jD*9d#JRRLt1kacuKcvr1!)9@mH&^9N7+u193-K7|wTsdxIMi8$ zm!fwU;$=j-EJ|NN_=O^T3Qxor;nUGO3h^0)fGkQsi^ot4aC8ZU{y~>e=pS?mh5kX8 zQ0O0Y35EVamr&>*bP0w2L6=bIA9M-D{+UH|fdc=bODOaYx`cP?9IVatK}K411I}E{ggI9$NS(M-STl9Wox+-M*`30gaK)X%n(&l6g*D-6cM5C5 zGwu}DglBO?Gi)~+f00|z_MMr%AskKLnc15#Z;KS<%}XN%Fz=2Oz`R0I0P`kE0n7^} z1u*ZGgkd!KBDbK$pOc;Hm-VvV9%|K;AL@<3XRr?3ScLT85O`u zhfN3MhW#ibkVcwLVI|CyLg~twB!#dFW=IZ(Wq;;3h51hio5tiPgw0^)6T)UO?Qt+H zydys}OOFi-i+wgIEb-Z(uo9+tPJTEh!TicT8x&UY*`Tl~pA8C|#=OnR59bw_-wZBW zg|Jzi)eK;0cpe+1OtiZ1XJhHGUK`i@i*0TMEVV^=qeo;?Gn5C67kYRBNRPr9RzI-+ z@R8m7k6?99UuekCrRtzv#TLR1+17ssw!8gK6CvG3cyM);^(16yGpNy0vp!N2fFIgf z3wY2Rje6pNsOfC#VI}6*M0;Tlmm+jGrSbMqd~6Ul=G_)NXg0h35tacgvqj#NJRISJ z#az6&Zjb7DrYjwhTVLceFqO|3O;%m7vuBv50ysfuTL703Po)4Zn_sT3 z>J{_L)rF_bFIN|yHosgmm<^!1&>Rl217tPNtYEh{cjC6ArS}k3V%TXm`@Mzcj`j$P za8_CkH^74Oa6w#ET3|iJdGl;*lAR3%FZ32z5l8a_L_g#!=vHx(V-b6RVCV`7FR@h< z_yV>U=N87JK_5$aR_=rmuzNfyz#}eLYt6UNh~^f|*dFv3Qw~Slg=7Sj)Az544H1c7 zbjb^5U=kbQbq+mQupvf74?ui{Ss#j$so3*%o84A*vBTaEN6S16wZ)-kxYWn6IGocA zP1}XTd1f(O!X9pi8Qg7`fP}lfg*JK=;^q#na0Zi$UTBH%H+{*`9dQ4e__MM*6`6sl zdKA;-F?Ag>JmX27pm?6*<4OIXc=p-V&9qc;oZ@p4H*`E45>Y2FfL%w zn0gEDYFF#^rFO4_g*Cgr62xC4Vx(S6P}a^vt8##`~YXS?A9r4>1MbQ?OfZc6~4-@^+I8#?@69qYpqn@9d?Bk z2^UdOT5b4ZfEz)s58De%!%-D)%RI$yx*{z=oCmo&yRNKtMf}M=Rwk@LT4g7C0@O|8 zbq$>iT}*A~<;_74-IwLsc{+&m7L3GLq_>85NO1cd0NBdi`-dI+GgJQ@vfH}ZWRd1(Ek`aEVJmL4J*PF*$!=wk8ooCS8# zCt*dV(ZE1I#0s#LAq!7q_u3g&Rjok*!T=qifTugh?Jjz|0S_qn=scO=qw`3DkIu6Q zJ~|H}_~<-+;G^@{fsfAf20l6u8u;iuVW98G8}{Op&Ilr80!`C%pgK0 zP(~0TZ{`)u+teX{wUms*H5}qaW z@t2*NB=fB}HA&K^oSG!*(@ss2^cklnN%|~mlI=Q4M@btYsf33V!1r0bDfm#U7buw_ zsZ3F2r#7iPDo$-uz?4&)6fo`7CI!qmwMhZ9PHh^D&|!_xsBg;Ip@10Cl57JNkRVu+ z7bxMYzzdWy{qzDAd;<^p>;<^b>;<^N>;<^9>;<@`>;<@&>;<@qZ2Lr6j?#Z}0EzMVuRl$KSAhLU$$X4Y z)R;7%a&%1~O$Cp>_@zymkE>bIrg0R*pJoPEIQ_^hZawNbf{->`Zu0;q|DJ?;K`@4f zK`?=mL9hfpgJ2n|2Ej^^wo~{B38tLJt;QfYgT@{NXVKpE>@x2m)RadSpm8)?fF{vQ z0a`N8$2$3z&GWGiS~1VZI_Q-7R-J=Ro9AO4bjCa%>!7ok7V9S+1u8zf8K>DpW{hSJ zIl%^)hg`x(kcV7G;8G8{g716}c?!WtJ>+S`2lkL>aJ1V)o{b)#o4E)pQ5TG8Uzzn- z;Wwgv8T7=A_GQpZ*p;zoMp8as>+{hoSh(=fr?6__qfcYW!bhJ$2yP#J77z1kIv)7I z5%0lxuHA}pW?6TvDScEYV7z3S0`qvN*a3nE{GIVkPW>Ge$mSz@Z zc+i(c1siUTBxX^8P7c5?U$+@TOBgOff4OH6Gm3F-&;zk%#pc{9 zONFeG=*`|l$cnKiJo1=TVg`=O@(qf%ojJrr=wDR?`R~9ms0hU-ryu8e43>RH%W|@U0%Gs0G%-5vF7TyLMJ{ z5@cA^#6E`$Ad@CG9$f%6uZg`4tHlaYjrIVShuj2p>`CEu4i`Xd!MZn#E`cA}{t{XA zhwaOo=DQ-=Jb_@l$#_>Jhgt86XsjzF{$;lMWh0PiJi400_~@$Z=zb@9y3bg?()oQq z5Su&EStiYHf~9PnKgef-tN068h|ha88H>`q#{-DcbaO`vmgWzg(&X!`1I%XKEJSJk z)B}jp^kpGR^M_7p;xvTtz44}tGF>6?m+_`c4zu2L(U>gF=Q*XBj0FOT#xuEgDnz#b zxyR8cP2=q#outpw{GQJX9SAbcKj;)FNl}^)a5BMF@&#!Lkl<5kAzl`^Ea+vj=j>cqZ8t)R> z2qYTs66G+yOO$Um(4>PHqOPMwY2M`rV)L{|mWe9O3!O}Gg?9lFukx9cWoiD<1BlXe zb4Lo6<`10GEQ`{d@kkP-d9Mc$rRmE;l;#hd(!>cMQJThEM#^-B!1u->rW_VyU)>t( z(07+*3-t8e3V}qo?@lrH-TBglCLIKQbsa5A^Sgc^HqYm1wbQnFfs;vvrTGj;Rz;TP z-5x-crkgubur$B#lx9Vg=CntWC{1^0#>plQkG?EKX@1}FJyM9$G~SU?rYi)#H;$d< zFzX#Djmfs@_T3fT)4F|kim~s`mnJmnAWCn(G)abbMqF#H0RYCe*4tJZNK5m4CzC0b z=AS#6Ov%!8Cp%MPQJQYQ7rqBMtdBbS46Uzl=A$a#)O0EBUrLrP`+3cPj)E-M%};*mvhk6FPPf!!=);Btw=Fj6Bnh zrD>dx(?D99_jfXxW@-MJlgYF!O?M_TElbnQ9Vu9vcR8gwElRWE$wHK-J2c}|9!t}g zg(%It9N!~_C{5%2G-bL%;4kCYXAa}_n0#qYtI~A)ZiPUi+jplJ`|f;cLX!^SVCPGd zWXLii$YsFD8c0jic->oI3yl%JQSf*4yqrNq5`h>|KDr3_^ zx3W|qtVHJ&xd0Rg@XM^dq$%haAaAo>LtBT4_lwnS-DRXHAZj?*G56(C6^k}j7pO$j4Wkh9^_0_VU8mlIL7qZu}djqeDkNNBm!NGZ~h#{Z+<<2%wY+> zM;zNzMP}V(mkyV4WDQ-9@j_`TGKI{CFGNMd0?cp;fpZu)$jWSpQ+a5w-99#w_So(+ zAQ<-_VKBz25X;eK%EUa+Mm;ky#sP&uI=++_6dI$o{98C>f+HsZ8xtIS2;|6@^nyYY zGuZ<~?e^!RO|97{M*5y+7*?FEJMebw8-DH9yI3fNf2c0wRWzQh+4T1Jka2&YVN zmMf5B1-lA?9QjgTP-q1?8c%}SUai2Z#*?5nIEBrHK#qLIH7IlnIU4VU=7b_gqQAV9CO`%)&QoFF4bk#bTSq(tNv1#;v4 z2!C#DiAL-lOClR$6ik=kY@5}MY72PV!k-&kVMrny;eEk$38q&5+)6mQ<dhj;zAPH;Bo`8)}QU|=Yia2@I~m)jqlWk zB=Vu!+|aIbn?Y{IqxF{Evv{k_pW7^Q3rUEIZjl?9yHfV>|wC;aUtI zuF@xpQWWzci6&S@anMqVmT)1*LCYyx#^HJEOKN_EgXg2@?`>)a)XvB}VJGyzjMIa>Gjsz#qA9oS}yJ)Q>$VX(+)rP5>(5SXKZk<4~6MWt8SsMuqdHVXF=(!A2cW zqKwiCC{Z4lphO_AGR}p0^{b$Ydeg8U2q?jBAfNc?4OKnYF?-R@V4L+QFbpMrd2fPy#%M+T6&WZu95Q zuUUWo3ED(%!3VX3)+A^XH+nTI;V7j~GtRvI`E%aw&%XrC{P~xlncH7dvl29WiC42S zPGI^p<9P1RpToI7e~#w<{5hDr{UtRkL$eoqHLGCM@oC19+@C)Oa)16D$Nl+p7rfm8{0Ljq6<8zKRyj6D&re$IkTsvp~EKnXU|fD&w_0VUW>D}MdhPRoA%O8MoT zR6n-VfD&w~0VUX014^*5mi_v%wU+$)mGg^1seWv)0VUXA14^*P29#ivE&26ho6W6+ zOEo$;Kx_xun+c?Z~%&^$wWgMillq`qQij zNy%8ux5iMD4o?|lsD)T#sD*G0)#IT;ma9w67-g$nXws3(s{=@kOJR9g-740_v8$Mu zCFqcKO8|+Ze+VE6zKZ?QO3~}GDx`GAjtN~EdCDWPj^t+DATUS}`* zx`4D2!vE+dZI%a@HFek%0>fqQ84c9GyoOQ$^9qTMjlk56`9YkZ>EplaF@9h(+{HTv zZiMAf>1WL3`#j0fe^7iv@sIJ~9Rsi1+9Sz~nf&)X$p?*0`-g{dk^RFwc*jVegmIBR z_NZqh-x-8O>K)k{zVKa7d#*RYDJ#9eufWtT0KaQj6C5Ex<6K0aZBB2POe37$=$2S- zq91LclHhTWqaHH0(TziCn!7f_x$LiG^)Lha0KT5}3j}%yrO>M)Af|3M85NDgSeh{C zvAHy1&=Z8d^T{b8HkED`C+>6WT$iRqfpy{vx_xCJ^j&?N0_=A8W7I^?N{vgV! zCgVk7aT0~+DW05Jo01oCGy<3R9QMV*5D`rsagFUGo`ltlXC z(7bDz(HlcFmYhO3?*xmDSz*c!G88gqg(kpRVa^002;9ZoP4?(dR5hY87ccUh} zX70OLJJ=^w7(EhR~(=x^o!QEgw++Xbw|IhgzF6zh?~u2406GaL5w^5FE1PcSzDj!}aLVt0#0wz-VAGj1Hws zqAdYM;E+AOWNj4Mu#O%<@7QMrDlsVYlmawHe`)n|($PrU!f{KFqC_C`+#tr7-Jx^| zT6732nZXN9D-v2b;kSVpw7IqbjWJX7T9~wOX4I=qLJI>{0EwWmLL|R28Pll zC_AU&2^~?XjnGt?ju;n*7-T&Hi9nHUK`h1xmN&C99Ad;M$TI8I%W%lh?~rmAlM{~~ zNJNJOj0P6N=uo;O+7!?c4tatvS-W0h8`$X9@&r+^i9wko1!x={_8Ew@Ed&biC`tq} zjc}rw#{?FmE{D=3_;LziB}A(6Vr5#m!EXaGXmhv#jiW<;3(GAWjQ8hA3j@ZET(8sLCCoJJrZ7nC8|G-lkmyk>D3qT`%bDz%;R_4`KU-sp`d3nT4 z0l)l}{Yh9~7>)7AjLO6WtWm6SRhzpyz)BOAV~iM1tMgjL#fbTyHpR zn`aQU4*(1>5x1u8BA*%-8I3hSodEH3%^;wfUhVO7%$3sx{Wo^iYM>4^YE_h$rKlpq zI3pGm<)=VwMsPBL#EiRS0wptAk_nWtT4Sx3$UHh&X7K354b6Y|1H6*qO~LCJUZ8|6 zdoNJN8n6xEq9E7XYvxMfV8pG-dAtb8OK2a;Qlvn&GXU_utSC~ThcJUU&Z&z?(mRyY zGK(&yLr@Fjkakl_?=82?&LSlbhAlI)TS~4kwD9Gi?Mlgm5uaZ82V0x|pfis}^$u?M zT3UkC5%h0n;}-=Xu=M;`{f9Y6SEP={jB!sWurQM8*d4l^oP18PMQauH8qCIT;2qmiY~Q; zslH1sW4`NBD_Br+sZ;nA*S<(~fYwzkzU8=EgYhyB)@z$3H>s1j;^HC4<|=>2ogh4w zhr5I|Zx6YQuv8v$#S9^p$(}Mlu`_aGZd5Z51l!1@d1}LkVw~E@xd#R}m)kgSXwy+A zKyG0#P!BjQEESJyyw%#pP_TdpqkYig4nT1>vKgsHJNx(=)osK^P`$qq#A0(!W29R~ zaDL+^hK)d?aT6nlSvN5ptoKa$>6%M za@ z`uw5_-Uv>TrBVg|9k<|16R{nPl$qF@Is>CjRV)II!MKWKkOPI z5fsy%K`h4eBu2qYR;#d4T+RV>3)!QamaiBb2 zRt5iZpID}3i#N_F8e-Yv|37Q*85qZLq=C*%&thegR&tV@G*0IWJ|8w9&>2LaU;zXS zfTDB`I7+5%+A?WNlzmQjRL(i)oO8}OOH|H;a?Ux&_f>W6?CezSlK0;GfkJP8)jb`m zdb+!6y0@^}MLIrnSzkSsbo?{AF(nSd>UmP*wmHJJc zvW6jFLv2&EWT|b6mZ7$)t|?lXmwPt#>Ji-ZQke4%2j6 zX>A=YLu*^W6}*~_4iu%%+>2Uo=2WQ-wZ)v1hXXX0p|&YnhT0m9C21=dTa7Y##f4G9 zNa-;&m7%uWMHmiHCPQsgv}_GhDO$lGWt2&jS}nUs;8LajgH>WdOSt1i<%{{9SL!!( z${L2c8gJVaEm>-tqGhP9YQ+?-U}&_}N~U)Esig8{sBLq!g87b7CQ<6A zt(2)!8)}O)ooh;MsBMatp|(buBy9zIpz2Lct4IH)-c0LV3ZkV9t*yhf3|3lOhs)5~ z7H}na&}uAE>gTO0rAlq6E!K)Pr8ZVFDO$ExGAUZY*lKqmO}~vL0e6B|YC~;P)Lasz zsJSFaQFBQEVfNE+wOulSQ?*m2USzdms??dQySy6U+o*I=eMr9VG9UzFS}T~mXL3EC zO-&9oE#L~YHz%>R)TG*HG)qhR*$(&DCRr0)f){KHxQtEp7H|b#b5_AbzxOcHrV9R1 zE0|7uu%0Zb>9B4G<_A%3@$`rMN>4Y-t$UDQf{&@S%=XFjR{aYJW4W z2ho*}6%s?}PpVDhZeS=UyWaEaH&s)4Apr8p^E zG8HF<%TSyanO9&IZ&EPQtJ9mM^?GF~4nNuJm8Cc-T!!K_DHx@$z*o~Mm=}H=nr5Z- zAX>~)oOBgSN2j$&O{b@|fGgOlw+beDwYQlz)hkPJ(iJ0pC~Q4B)vL^RtLfmJrmny_ z#VVK=epvsktVJ{E9_AJ>UB}!4rdyd?z;rpYRWQ-36V0@#UVW|=O#Xa2YhF;%Ch$Q< z+8PKcvEDc-OcxXDN~JK}Puv2gYl@o`jP&ZXW@)`%S&G9?_IhP0P70TyI86%X^-38I z@FJ}(24R%8(x!T4DNZddUZj@dq%fTm*dp@^EFo5liC*nxrcL$AQk-;IMyF0%Pfqp9 zdJU(kD;Q0zf{9-3Yi6D5m8Ce`Bs4)RnTnIbW%E6o!W9e`R>4HCPB06W>eXjk!F2be z&YD+Cq*n(TX=@<#%2J#ZE}4px!e#RfpTZRkR80y-dUa~Ef_c5N6o<3+dSxk23e#r} zT8L7ZzI3n(=2Ztae=BXOSC-=NWFICPNQtF5DNH9~w#dAKkGZUZiC*n#rcL$AQk-;U zMCYqoPfqp9dJU(k>A*;9{PN`CM>$WP{6_Dmx9FEmn!+eWqB+=nNtI54MrE{Vf^{4mLHFx-wYWMtl{#Z#vHM) z`()EREBNq6$q({`{A5nq&t%B*lR1X15o$Pwtr2QChOH55IEJkbdHMOF)zLNiF-8$? zVU{0LL~8PLV%^`CpE!=!*C5Up$((gkj~^P(et1!j9~j3+y^YQ1^MNN(=KPF$f*}Bz zPYUY50D#+b0!Ud6^be0tz`mY32TPI)7q-ocM`34J@hI$?s<4y~9-aAUq5c3W?2T3m zD(r2luoWrn67}#Z7dCUofjk58DC~5LAB9~*J(}{tqpz|6D(npwK!v?k6}Bpc&D%pp z>AtQ>5G)Vqgp2e9EG}{b3Vpn_B~Blrv`SCkqqM^5vy@gieVx(@??CUh!aLDmt?(|~ z7tuI5P3uqNY#DojUzRTuKHJzl45NLvZp~1FgKf(k$~e5QB|`-cdo3BNxSF^nLkG?u zY{}4x3shS&bYXtlq?y(o8R{$Jw3#O98Adbh*_xq*W1d^)P{uZ5ONI*eLs~Lav9N2& z&;h64mJFS64sFTMg_}?tEqSRltvmRiWlZ0i$ReR=q}y8Jbn{QE^mO@8E44XsDs@wzcflVYH7mj${~0<~WjJD4XL*hM{7PBN>LO zIgVr)Ixvp3tVJglGA$XpFjH;POf=L~a70&=^bDh!tZ{^k=ow1pIFex~o8w4^p<<3B z8HTDkj${}*FpjjWMJGPrYst_R?9fctpo?^RRTEhx6pdt!B)))z)BRkn($f`Pt?){7 zUF7Fio9iOu9nE!-@y_PD$aoiYQIACU0DwoLD*RS-=~EP~V~r$robK6bm7cEJYK2$K z(%18^nj=Xa@4!gXD*sN*+gssXm?~=(pSeXRLNhM{DRBN>LWIgVr) zD&{znVW^tpNQR*U<4DU|bYhj-lA#Ot^fYNE8cC}7SiVVmhS5yce1wbW8A|3jl3^&D z<4A^~VvZvjhN?M^WEeUyjrXRv*1hAtdM)muVF&2^FS&gQzvco%dr*E&5D6EM6_;J|1sKj!31pGDC+7q!Ic zX4PEn8`9I|s;%%!aDGd?8l2Y>@4)Bkt@7{02dS;_E_}C`Q?Xk4{p!r+Wv>B7`~0Cb z19>~=#Je$va&#l_P}ak3V-6KP+%_^)^>EwB(1GE$Wf?ky|8C9Dr9RslO&>w4vyo=9 z2u-Ec*~KmKQgdD8^yTKd$atl>E;3$iu8WL!G}lGOJDckw<6Y22JrcoHfk&bWPCV9{ znxbeOYb2@TCA0K(ylj@fj#tdm*YT=3lGO1Ij3lkf-x-|M67RzIlv>3&f4@2l4cV*1 zXdi1F$uN}6aU{b~Hph_+L&Y3NG7MF79LX?rU>wmZmSO0`K|?JWx^Ui5lV+lkq=M7o znxtnK&7_upkUuVgXDFHDNQR+ojw2Zcx?Ztm8LH+ulF6Y1<4DUKI`L6tONK7>H5rXW z{t>h~8*V0x&{SHTS#R|;HReQ3b&=DTo9iOumFBw0c(u7MGTzZ#7a8wtu8WL!K^OH% z1e-pOL{;2@qBS{1(K^h)&(%12_S^7F&F-u>^tL8{j$2%~Rv?_lm9Hd*}UCPmu zWQX(jtFw;{*{j27A8S66VJMm7NQR+ojw2a{iaCyC7^>ztl40n;IHENu!_bN2%UUvY z;p`ec5^)YRl2l>rYLcE|G?QBX)tcEel+1CY{s5RHt@%iXp<<3B8HTDkj${}*FpjjW zMJGO$Y01!~zLrU)3A$Jf)@vq+x zWW2MvE;8N)U2OcEWOQ%@7P=9v&8q6d&kTl^$$$8nMfHcDSyX@cnMLWt&)n!(FB7iJ z%6~7HP1~V9bIqci>U+5?+Jz5qa_$KJxqj3+Ca-N75UsIhE4YLON={d^smnNTwgpU+ ziWYDchhw*ZJ1`KmfIDGlZUJ|}vTHVqA7jq4)7D0qq!nDk0rBROed@CMP)0h-!xi_IPG*H1*v{I;GA)s3rB|N&bt$EUM2y$fEiTge*#D zAedUidR}d&Q;c>r(dcmhc%jw|+iWB$5%QSPxeIp1bgU8H-DAst-`j{11 zxz5^fv}b%A({>Ale-S=p#CC8h>6u4*5Y>616Rc7NaO{_MB9nY`DX zH_(fV_Hc+?+69dEjN$OX;XeGsJ(0N*5BCu?IH#|F1AGOfK^h2gKhtP-U)VnqDQh6A z^Hjb%S-6ySWNJt~h?602Z1ULA{yB7VQDa?D*hzRd4x^g?loJSoDD&~T0A2D z{yE_49T^@Sf&*{r0F=UW29fWzMtOSs@zE=iX5a0cirR)AEdSw|zK*z7d@jY?CwqIw z`o<@ECgzUQ5%8J=2fU;lB{*_x4t!;ka?nxOngibpq#SfywB~^4bIMW0+bf-sb4mMf zs4LWwT*4`Y14VNY!)5wJ3jcI{rIFfk)~hEWPp@jx+0cRaLI~T%Gfho!GkK; zHfvO0U(2z15Q4D@e5cx|XmxaC6h|dkZ7?>E&b7JNOh~mw17$pFr2ZpwaZWXLXfK6= zzFcY)hE9j>9q1Vx!jbfiWg-wK`Fb!vGH^=r6{y@62^P`W3L!i-PM!g-K*-~ub* zEL;$WgwN+>T^`ueJCVHuIxXkK283iT`ACs5Mm8|YF|onG;K0bb{a8Qgju`Xc0A8WG z=04>B&MDTIPdE@no*=tmCsyMES>sfyYpUG$l*ToT3G$3jMoSiwt zs2vZk)XazFv}TZA;39*)+2fVCJqfKzXm9qMmK5z3DeT3qJdOIuX;bvu23ix+UQ9Y0 zJA~4Tl=i~=NrNJ$y^vuOBsuMc9aMuNsJ%EzS(mpasl7N^*huO{wHG@njbcE>^^M;P zPgR|5t@V5HAxGngKio6EUfTXR@H%5*=O$*n)&qQkwv}F58Tg)7{`}g(FamrJ3$OJ9 z@TIvq20veV0&vFFs9rqj3&5E#UmIZR4ZyEhnM;2F{-jm5T8{wV#Z2z|1n{SF4ey&4 zb25l1-JH_cpN#S#0`Pwi;XH8}@S8jS&S0wX3)?M^i>k6~W2W($-y5>ky$ z)Amh_%%*(Lst>g(hS?TDnG;=8sDE^FJxun4JB%!W;d6?9OmTHl1w&E4)&eaBU#&ZA zr_aQ`(%jMP5q5Qi8fR<+9DlB#$PG8P0iO8j7AW0F)}(Qe?>S8x2ha!kE-Y~uX3h!o zr9^bC3y;p1qmH4JYqUV=Mx|USk+#-_XXZ-@Ou8_0Hfvg(S{L4KWLfLNjMX!nj=C2` z{i;#aS_hZl;gg;so2K<$m^rYljz||CYvft)!p!iOPYKJ;nnq2yanMhhdppvU)Hs0N z&v#*&yD)Pqluv=^S{ELbFJ&D=yR6;-!YQay6`p|V=X+} zC`_%B=+2Uy#^8Z9l&&qwbs<%gwJ>u$Rb%6zJ=G9JseJdManul%L5(2_Xsrv?5Cu%S z@V$H&R=5j)pKljL*She?e9h|^O1WAKw3NM3(AOSmYh8GHz6*g#7rt#2r`CnH+8B3X z#^RSguGUHI=%id1;(;}k_DOSHNY&&n{F(7Y=_cF)q4TVFp&FtnPw8M|hyq&cLN!DI zlP-KW--T7~!cFp}M0BkSkI0v@j-d-zZGkpi{OH>hX=`10TD}W`Nf*9l6sOjOx7ZkW z;h9EZYMs=MPRcbm9#}(5*vrm!Ayt#RFmrTmT8Ua0sv(L}rCO+ls0?ZhQ9x^5sD>zD z(uMEjyRd`1@OSxkL3FJP56{=Uj-d-b*#d32s?ygUX=`10YQ77BNf*9p6sOjOH`^F@ z;Tc9@YMn$UbLF}a53HedFjuY%shZq{nS)BxO4Pbg4N;UT?Lsv~Wl&>?0$S@rHADfE zE_^%Rg`M1mzs77jC{Lf&{Fo&#x!lM3s1>+AyP^gX71cblhwL# znNd{f2rOxHorElFoz#v_YL1q$7n$oqst9*s=2*(KG_@{NLsYH$JR?;@R0cJMD4?}2 zR6`Un>B6`2UD(B4xG>)?h^}?vq4}EEF?8Yd7HGrWn!ff(TkFD;^IZr`x-fHlMw+bF zg*O>Rt##pPMq%n*_{A1z33j_&7g9C33o{#tX=!R*sD`Lo<8T+MAu59!Lln?j7pfr& zm~>(0UOp-gmXu?Y1F#I>#--HOkOHH9^XB00>V`=rrx+TY{VeBjW~c3{1D) z((Lez^3L@hS~1&qbgT48xG5k$LOQ1@b-PIoMwv zhIvWXb#%CAWPM;K8i~-Tl&Il3gX3sY$PGU3@2h`)OpU+@85o{x%*v-gMPZsrKgLcI zP<-a1oHQP-iDQOl8Ch`${M`Vk_Slcn&!ElaM;hCh3+3yM13YySR2@mud$*`q19Kot zbF$Zt*J6jL60bIn9>hI_YY>GpA_mp$wyu8XhX~qd2IbK}h;=n(i1Kshe-46llj$ zVhuf%A|)I$Vk2doFk&MWoE>2!RU8~)BOMSP8|e&AXso6$TmJx-Pw9pmwc@Oao>@cv z@(+be4NU}66SQMLB@Lia6+@}UKmj-yDTZ>5fdavxX297W{t*-iW@`or^3pWb0aI4HWSh!i3h1+Fv`PaqH_{GL{ zft{B&54nxn(S=ReVC+rVO6W+<#!V=>`EYYK$&J}c=yjbNx3=Ww!_CqYBRB4D$<2qGvq^5uRtmmr!>kMz#7pyYYY^yMzpRP0|g+oda&V!5Oo5}ADgkvnTt!0`6A%I zEdQ!#@8>hxi{?yOFm--v#Z2VWvcjCoIHhNWOcmTGv_hsT+>}!5T4TXy4YB*fAB?)Q z7;y8j94v0elGYstW?dA{C1pYLST)ZvmCTywn963&b4(S~e1&DIVuGTZhjWtVvFgrB zz|F&2V7<+lC9OM*^SUUFENC99&vQ&Av*tObvRU&SQw23&VVSC!P3q?1oTPac8KS{M z05=bh0oI$GS?bO6C!;8hENC7}+H*{FhnB8Xj)`v4S|JnNr?o<+D((!>&BKqA=CMSB z2S9Ef9s#Xc471dmXLF+{jVx#$tL8Z-x{XLzD#t{360MMlZYEkGQx$h6=;q@jB9)9;*Gk0dGH_xUGSX*lqVTj;q|b-V<`cGh^R=7GtJ#_;ufb?5 zufb?5ufb?5ufb?5uP~<4XDKi9i1hiexw#~4_2w&K8$pjNnhniojZ_9Boi4FbInpr` zE5%6XO{^3n9Xz3>Ps*5%eFMhW$EyO7J|8xlPuS|s*KR7WW<&E?Zv=zUR$hbAR$hbA zR$hbAR$gIDrO#4c<`L=hVRJK5*y_z!!l^;JXEhs|&k`zwkGNT8^IF*I%~!$>sqR_LhUT+`%3!4PELJKZRIr>ZRIr>ZRHilRQfFCWgd|}A2y90 z!d7p-63!{oJ*(N!e3nodjC69*O65pL7_Af|on^FAjC81xmOd$CDt(q6i?<9!`h3`I zK4GgjU%RQinyrcQ8jQB`8jQB`8jQB`8jQB`3S%mLmhv)>NS_az#xY^5H(v=m3%X}D z8=B7&Duc0P3YEb~M`^6oqv=eIm13mBHMI1}qf_adWsH5iBO}u1!)EgdTfO<(P36^W zO_bMQw3XLjw3XLjw3XLjw3SyFQ|Ysmmw80`eAqOm3R}JTO4z^AJ*(N!eAY;1Fw$8` zE0rT1nzT}kbb8WCG14(gTKc4nsr2>KomP5#=1dOb`@O+AV?V)Hm8ow|Eq;8czkd`T zzNOAQH2@!Bjp9TF6+bpGG>q>YRQw$JEID)gL@l45d2@%eS8Js4vqpyT9f`_kVxo5# z*M+KrdVi{ma|y<&W#E%alK66b5KN#_FrW#ZgLp;2%2H^zN_+ZIr5KDse zgRNRd6B`T%-_g-yi2j~YoSxxP+;*3GWYuzk&3UKBhfd(3V?XH~ZO1pa4W%JqVuO+O z+HpRQ0(yqVC)%^OdC&tm1u9HS8l7U+*iYK=9hU;=;U#?3s{nd<35WkEfF54T-p-MI zIL)+l3Ou}ouSpd^4=-cuSON6#G8}moKo2jQZH1cC>`kY@!^^lqbco<1wH;>-99ra_V@`=OC}kR-*9Xu9Fkil?hRt$4cAv!S|U z1NgFVU>L&mM%~AaddCBEhlbkWTbg>m)e$&Vw&Nyajf@S947UeIIdO$DIyT(+#cAoKX% zH$-{ibLMuqai;#{jZg`vE;WJ5IB=;6RKbxTIcQyZR#iW%26gCX)u2xOtQypXXEip( zAOgZbq@j5 zJzM0PY>4vW?$Lc95FL7zYv@`kI?u8RL?>D1pmilfI@h}iL??PTf#@vnCJ>$Co$DTa z{mI>PM!tIhQ1?tT;;DPujf}W^?lA!Fo@F_pZ-Tx`MfW^p0n|NLs_voEQui#)*KmmP z;_gxHQiDpmU20HS_dyM+;2hC>Ys#~#Mjr^&p`W#`K%M$oHK+^EY8dp!XmF!m$W6&P zo_e9$*mNAvy|CN>xEFFS&are1dn}iNfq~&c9PiUGhWQlS3tKm~%vfd&TigsP;gsrz z_N=EW=SQPDRLN_?SYK_(sp5S7T!uBMLqDqqb?Rr;pe{Ts*9*``>V;1l@ze{IT+`7I z#=UUA0dOzengi0I>QM`zUbs*70v^J>uvNbLwLymt1kbfh4WgsKn?Q63coT?@|IR`6 zp-Mfg26gCX)u2xOtQypXXEh8}1H+h=4$i@$MOQXKsUbsGJ%=d&&;w9FSTO= z*r2?%VwFmm0oq78dx2&{Zk7BhZ(y8Sc)U0Gw_L#_z8zPQH$QmsgmCg7#QfGrXT2mq&8+&186hCMrfzNMravtBbDskpWMo|=TtE(w$pUv*Oh6Z zJ8|QVou&(S?bt{+mSZ+D6U(lKQ7L^6CaKC;sWyQs_yV#~M7SU5e7SdX z#j64BINzwT;5DSAWTb|am5kJoijt8UQq9k1eGj2%9r=k=igaRQ$}U?Mc8zSL8_r-h zG85ikjqO$|8#-d|W>6`}TyxK&m8L4=jIt&fR&YF7!%G@lGbOwQ+JjBa_!2%wvG~h4 zCd!JhU{+zpSMg4@;^`%4#nT(kil^6`72l1CqZL0hKXaG*qGf-WlStnX7~y|l17%oB z8f92gRI(onb596Rg>k@4(Se;d6X?X(R3^}+-qP}nZhTl}rkELYnn1a|Nd?RFHJX)G zx!k0JPT9KNnh&7k&Y> zYzUxbLjWxs0%+L~K+A>zS~djGvLS$$4FR-lcmP_F7k&XqHmtUSR^+u?QdE@i3s6zS~djG zvLS$$4FR-l2%u#{04*B=XxZ=pv?4DX0+4JpYJ~u0CHw+Zl<*5sRl+YohZ24PI+gGX z(4~Z5fNmxH0?f>BLP(!OE9?qFD{@w{fr@BFUiy7JZQL|Up^v9s8!Mi+Y^-?NHM8Pr z%glPkZf3Og?B}MUMDFkO85n+D&ZHPLkYhCol5ux=u*NjK(`Wp0cPfn zJR&2|3cG^PikUg-sft$QrQgTXMp~n^`FPqzv*KwB&5Eas^Q`y|CH+2sx+c%!r`z$Y z_-;tQ6+aW!y2hTCdTH4ZK+A>zS~djGvLS$$4FR-l2%u#{04*B=XxR`z%Z3M_6?xeZ zfMmmJD`-W2>rqlvl<*5sRl+YohZ24PI+gGX(4~Z5fNmxH0?f?Y)&@KPt*|Qyt?154 zPlsqlUiy7J87dp4&Bv3K(uyY&r4?UQ((m)>P}1+?JC*eN_%0>=KE4~$Z#{P=jMa@j z?fEf-%FBiTS~djGvLS$$4FR-l2%u#{04*B=XxR`z%Z312Haq~W$jgQRBpX&+K`Zhr zdPz}H!Y@Eo3BLdxO85onRKhPnmlA#fx|Q$?Ff(t`9Pj|N!mc2+qAMpoouUG$zu zA8wR3A5X?%E1oRFRyBT+pNZ=g8hcvmrDa0^EgJ%8 z*$_a>h5%YN1kkb}fR+sbv}_2VWkUch8y{{XU+|@{Q8wG$!SO8R|#my&)T-wo-vo;wpap)|IT=f}GuFB<}A*$_a>h5%YN1kkb} zfR+sbv}_2VWkUch8v zh5%YN1kkeK0cb^DHUuEqu-Xb*k@N2vkQ5aq`~p;!@C(qPgkOM8CHw+(Dd88OTM54a zGjU6dRS#%|T|sC?H77kYMJw`SzmG2|>G$zvCH+3WqNLx)SC#bp_zorgKE6{)zmM-y z((mKDA^nY7;p1lp|CMVY9}lg_%Z312HU!YJA%K<*0kmugpk+eh5%YN zJOHi8%Z30X8;#N=Kv@aD02L+t0#udo3(%p2Uw}>}`~q|-;TND=3BLd{aVMQs4`_v5 zL1;zJp=_Y!jilPvD}c833ZQMh0%%*W0NU0ofVTAtpl!VZXj`uU+SV%o*?Jp&3j~0I z%xHqp@%MI`GMra!q=Jv4Y@`aGd>iS&S0Xmj2?sM9>4JxujdUx=omx$2!pF=^1665K zQ&_y4)D*9fCN+i4yGc!9^lnm9SiPIn6lU)xHHF{A%FU=J9!U=J9!U=J9!U=J9!U=NTjIM-Sp zfYvC95yX%fK@5oz#E=+442coMkQhM>i4nw*7(on)5yX%fk3egb#0WwXW40T#M(Kv6 zsc790q^fm8kPfXIf^=%#5Tr}%h9KQqHw2jpUsJO_(3&PSh1RT+dpni9MN!*|1<xLj5S~mpg)Vd)^ zm(~qIy0vZyG82y2W__SFO==3Q$$kAjQ1TW>ZA%tF+mZ#)wqyacEm;6G5yX%fK@5oz#E=+442coMkQhM>i4nw*7(on)5yX%f zk3egb#0WwXW40T#M$M@tO-1X5AXTj!f^=xz5TsM~`T$$KXXpl754XzxS;^o&#hJtGxB&qxK(Gg1Ncj8p(UBNae@is}MkYpm_jlk@r9oKzk>aL@V;%i9TL?C;E8p zo#^AWccPEi-ibb5dnfvM?Vaf3wRfVA*WQUfUVA6{cxXjlHU!YJA%K<*0kmugpk+e< zEgJ%8*$_a>h5%YN1kkeK0cb^DHUuzc4J;dYY2^J7B!w|+@F|R0g9nURg9nURg9nUR zg9nURg9o$+nlCQ2BJY7Ffc8!-b5`w!Z!Wzh5%YN1kkb}fR+sbv}_2VWkUch8ySR^2buud15E(!f#v~dMP9oF(B6p^(Tcox zqL0_!i9TL?C;E8po#^AWccPEi-ibb5dnfvM?Vaf3wRfVA*WQUf9$Jx?4FR-l2%u#{ z04*B=XxR`z%Z312HU!YJA%K<*0kmv*09uik4FR+VngH4ZO#tnICV=)p6F_^Q37|dD z1kfI60%#930kj922cQ*s4>SR^cVbnvBJZ8(m<4Xb&_2v4 zYzUxbLjWxs0%+L~K+A>zS~djGvLS$$4G%yo^0Fa-_COOrd!PxRJSR^ z2buud15E(!fhK_VK=S~!BJX7+fc8%86s^d6C;E8po#^AWccPEi-ibb5dnfvM?Vaf3 zwRfVA*WQUfUVA6{ch5%YN1kkb}fR+sbv}_2VWkUch8vr3G_c9Vddna~@ zR^+`CeZ2Ng^zqs|(Z_4=L?5rc6Mek)PW18GJJH8$??fN3y%T-B_D=Ni(2Bfl2%u#{ z04*B=XxR`z%Z312HU!YJA%K<*0kmugpk>1Y(2Bfl2%tUC1kfI60%#930kj920NMjh z0PTS$fc8KWKzpDGpgqt$0IkS-pb4P86T3w#^4^I)UVA6{c4YzUxbLjWxs0%+L~K+A>zS~djG zvf%+}MP4=p(B6pxXzxS;w0EKa+B;DI?VTuq_D&Q)dnXE@y%Pn{-iaQ7R^+`C1t9Ol zyl<4YzUxb!voNYyle=d zJy!)N8?L$3i10$po%1>%DXNBRE~n@)Tyq)dG+c8T=rUY$8R#}#a~YVaPPFr-f>z{R za|I}=3c|~g^3t|m0ko}G0B!3PK-+o+(6(Lyw5?YFZR-_4+j<4iwq5}Y??Yd6D2Vbt z6vXg86vXg86vXg86vXg86vXg86vXg86vXg86vXg86vXg8^axZ%`H~4@_>u`?_>u`? z_>u`?_>u`?_>u`?_>u`?_>u`?_>u`?_>y@9N~1i31Tnl1z5UOy1$)4-1$)4-1&b+B zZHksWVAz5^VAz5^VAz5^VAz5^VAz5^V0a&T09vCYMi4_{1TiE=5JO@FF(gJ1Lt+Fm zBt{TJVgxZHMi4_{JOZsz5+jJ=OD2fnOD2fnOD2fnOD2fnOD2fnOD2fnOD2fnOD2fn zOXd-1jq)WE#PB}!_CakchOaBVgtV<#0BtK4K--E1(6(X$w5?bGZ7UW)+lmFywqgMc z??b7eAu)m&5+jHqF@hKpBZwg}f*2Abh#@h87!o6hAu)m&65|nQjglBa4DUlh4DUlh z4DUlh4DUlh4DUlh4DUlh4DUlh4DUlh4DUmaKx>rup&;aa*f@`eORJxu`@oO_Q3!XSYya6_1Y&PWIvh-QLl4dxCFT@gqao zds}M!!{azS|HJxqUA6dGW7$hv>an=dCegXi8k;Ny>zMK7;LG*PWor41kM;*YU%qyL zo5I2%Sfds_G(Kx!aBO@cdj(Dn8y_DG);Dq*9}dRqO;_U{+hAnQ(1yXdPSA%td^WEi zU0h4hJJvg=e}jqOpXviq2I`*^+@l{dYp`!{q#tJ_tBMdZOm}R3lz&ora%_XX;T~l8 z?;4sA=-=`!S)Lpp$CEPO1Np+0`Ia}j+$a^E8ZfrO9J)VhvwVHZxKo6HD;k>y*BDWX z;9nX=0nuO&{@j=gVtdyer|T8YRP1y6#)5xn_OV`E+=Sb-(tC!eoX7{QG!Xnq<$~+7 za4K|qiJUOc8s9MZ>+&^4Y^G6cAMO?z3m#wod5K)p*S~iZMI7rL9f1%mZ0w)04FFJW z@h>>35u5NB{|k<5%yh6k-a9axYCeSCJ7)P8q)Na>`ub4U z^a%4hFx)C@==}J_{7L4w$V~utmW3z zyIyd#jvgHu$E8b(n~HjnernH9Kc4!w2FB;n(7r5R9K8R=`hOD4st;klI6fXib6OLm z6r9=wDWf&g0kI*sN^o)$q>8b?PSX*bnD5>4@EMepLwQDC+Bp0S}3?4qZy-86mx z7lEnL(>r>TMxCM3V_2Z<4{mH_Lg-4Qk+~DFP&9N7K^R5-xbboRIpxXW@uA>P`8t;; zG3;&_d`YuUjP(S6%Rjt4IlF&OZ_f~QarzqZ)x+FscvfHkK+oKv37i<4z7aC$x)^1% zTa`74WM%+2)8v|_Ol=VC*cjc5IS2lN9U5yw(S36#HVoEoY<7wt7{|pb4ds~_8yxSS zWD0FbA3Jv(13k^A@Vfc75k1fkk0Q;D>0W!iG-)OyWBqs$r;3oq5B3f9XYWHz0hYck zjR#Eh!itj$Ysybjd7BYGG^;Oo*@*9*7!U5vXYW<;d&}36*~;g9_Or&&o`dU84s1Gq z<0T6hFTzbjO*n?!|Tr>*30jTq6)LHg7I&c+FLcfqv|a8u1hT zSjDCS?@LMi)SQ@yzhGf9dCy$_T2D7Y7o+~UE*BYuC-z^ct7IJ-rAPh6D&FWgmVZV) zM|=CTci_~sn%A>lf3PIq9aN)X%zKRnnA?vfY%0d}j7HY)AM4J(KWY$?hE+*|m6=&LsdWVAlu@GJ@|F4Z;rkxoL>P6@sS`TmVZ&`_WUNu*DD25n} z+&u4Bf*=^p`K?+F&cVYnFUDFqDwEWsnRQ)#Zs1Sd4bs=@J1 zu?{Rlo8{RV9NQG@!U{E~)m#=_-MMpp5!N?r_Hgf93`KMy_+(%I`UqlGlrG{L@iC8| zSszg?9L=}R3OGvG6G}&AGmkRf?5#N}xQV$nM>Y7u3OG7~&#!=^6Yu5LPw5KQS^-CQ z@VOOm%nUxeJdyXH6w;HOGPkvnF7z5SEelB4aJybPx} zuK`X{J<@=kGM&+JP(ftj#zo+cOh+j2dD)6Hw$my3hf;5?p zl{7ExTuuZ>)n_RwFf@W0=XLe@UJBqT^RPJ0xUQuT>W!J;pN#^b=0N_QuVfE;2b0t< z8h^DR&H@|AP>$}zNvE527= zB>UzsncqIi6dR7|u8S{*2N!wt0xM~Wla{daXe2F7a?(<8UcRuXbUW3&9loeJm1JlU zW0x7pN|dYwyPQsj$1!$^k*rL~%GgfV$;zCp99(21t5C8E8b&9paIy-zh$b-+ETo@7 z3qwZwpq7K9>tg$H5Nl^h`|9!%T4lU{Vv?3Sd)44>~K#~Rf*ds7XE(0rr28ebnvZd6fvU@3=1ZgEZq2an+5aG**=R;G2djV zT&YeDE?T%`@>jot602N38GNe^xrBw$O&2Z>`Y2a^%#6W_$zN^0$nODdxcuvq>lb?v z^QQ&azMt${u+id8f4SiI3l=Sz^kpj7$B0>*EdJx>3nc#edb5mezDOd!-l8n)FJ8C+ z+y9@H8m>CJ0EPQyt&U4kNMFYpqw|K-%3a=^|MSAX=J;PWqjs9~8B&wHygc6mYfB5P zQDaVgqjrx1*Pg* z1N#RxJs~n zLtGhY%elBJ;;O;c`9iKHg)ELQ-h9)I7r;c_R95~)`u;223ec!OE!cE3Y;2-`CMPys z_-ikY)D*ARMWJ`$rW>=7$t%OEqf0iOoZvpd{tG*BdI4OGGesj|upRCxVUrBaw<`20 z`ox@#&=0{-#Sj=P&CzF}`H+AABUe-#qK5=go)8qKN&AemObvD-VAI zD&svq+6L#0!VpkezM4c7VHcp7Tk0`Ab9#nGW(S|Fzo$6SPt!N$K?w3v6nq#I_B z4vu6-%Y*B3#mM-ACGa*%HPmx&vS9wEu$tC2bi?t9K@7Syb?Zk}y1$6x1k=8^`JzSh zf4|_DKY*$7Q$e!IS5d}g?VtF=;>{NF{`imatXgbw$^3;%W8wmc z@y5S{O(^Zm8bX7kp!Xx4G}RJ%eN1jVf0Io%nvZnrkaBY~e@fDgFJ3gfaN|uEk1yC5 z#^xEp>NC&|QH*HZ+>Vi#nP&_wUi9nD7i_*MMgIz2wK}!drwd$48WL9j9)2$kSNY}d z=TC05`LE#FAaQGbV&lcX|HBd_g#~R@&$m|F9~LiMv;;=-)uouL^v>U88@OVJmb-8WsHxUutE3{uY-lpv?TP zE&P7|!bQP%r#=ycVR>m7R+3Lm!Ld8+SQ^IP#NSR4$Q~f>>-hT<{&a3KQWB>vt3Pk1SK!Yfx_8qS_-3*vC$(y$%RDn!$khSBuo=Tn8C zEm|Xa8elQ}-O}*ire+1JgnvPr(;diE0p!|MK#uq%$h$<|SQX?!%Jw}Xk0S4I`!zsb z{xryS-=|Cp!6(AMCx1n*)52}SWDx?>!|lT4cL>Y~cMg*U2z)Z!B}_I(VAXKfFqx0Q zYT<5SGKs+I;qD;{_piYk;o($^t*9{j6hV&SXA(J%9{ePcOFp|ad~53K!J6SwVdCCF zaXonpm2^yAM8O@AFHg-5J{2AVw#R26>S-eH5&4M7-o(aa9||!!jY3RLrx249(FEU~ zT0Qu5cr0?-2fvs+kCJ~TJUL9hhrnmU)54@1fzO4fhe;;_YlUZoNfm*$!!yIAjKJr^ zv%;hufiHw-hsn1Q_+ofYn0#w$dhn(2Tx3lTdKS@N4lf9ke?nlL@WL?pIs!>}QJ8!c zfv= zz(0pqg~^%-{7ZOsn5>S#zlPU@$*KtaTX=1l%s}8<;dNm$4S|0TuMd+|5cqa@LzuK7 z@E_rgVG>UjgZ6M4I_fZlO5x)OZ3nO%z8fZYAW#Y43zORrsD|%{$t?(Ugdc>-G6Xuq z55wd}1iHeH!sL1cy2FpdFa3xOYn+eJwS0zKjOQBpx*R=7iylo03*cZ`z%K%g(&DN6nw zf&OskDET)82EtvU-$Y>DaJMM=1_FcO?oskJ)bPjQ-cZPk5n3-i6`>=h z)(D2eDTKm%NgmIJJf4jN!{HtgdgS}TobW-HxQC}hPF^9h6$#tEL{1=bK9L)UJWS+G zBA1h}-3sys)OEzIgI@{M^b^5o45^N%qlXH?PvRNLVR+D33_1DE)K`M>_)|&zUEn?V z`!W7T@wWl~eu2L;qaW>$L=*9+lfChOZv5F~5By(0{#>#f{?CioN_N5j4dS(vou+;q zY#4ujX;}P{{GAdbz~n*-F}aRHOzxo&lP4*}>XZ*z^{w)fDF(y7M`q7c7 z$xq|2;>XvLJEv9&einb@NAb5HTWbeDkGqrbB~tj;h`dGQJ&?syUkiQ_&rFJs;|G)Q zMZ#Vs@+OgYL3WxN4JPC7B<@ja=+}sBL+!agk&}pANaQ9Wj}m!@$W_$ZcM!Rpl=)F2 zj}v(kzohK_U+kd6>u}L>?vb7?H<`JVAtnBYcX;(?p&j@+^_(h&&JC zGkt-6zDVRHA}PMBXLx9+CG!e5N1J&ku=wMC4;4 zOR0&sAhIQqt%z(*WE&#e64{Q(_C$6dvLlh5KyK#h?@T{;A+jrx-H7Z?WDg>H64{H$ z-bD5xvM-VSi0n_~03rtxISAwi&h%aSc?`YsjwNy&k>iP+K;%RsClNWB$WHW%-kHcQ zM0O>z8;ZBKXSyf-+>6NGMD`)FFOmI->`&wXA_o#Vh{(Z2?j>>`k^6}(Co%={ zIp6#A^FbmH5qX%%BSao0@)(iFi9A8%Ng_`Xd78*GM4lz`9Fg5VK?5Gi>Fx-Hdl1=^ z$X-PDCbAEaeTnQxWPc(D5IK;@K|~HFatM(_i5vzp$eA8aKTjZXB9W7boJ`~tBBv5L zjmYUl&LDCok+X=LP2?OR=Mp&&$Yn$>CvpXmD~Vi1 zD3MMn7*Rau)_jPY#9J6p6Sykg2r_Y%3E$Qwl7B=R;0 zwfx3zTjb}qBeFe_9f<5mgl6JyXCk{0*_Fs{M0O{#Cy@(?Tu9_1BA0+1$eG?lKkp@S zACdcsEGIHW@)(hKh`dYWJtFUeJj9uPKtDeu@-dO6Xalzeku8bP zl-X@fWE&#e64{Q(_C$6dvLlh5i0lmVea@7IEJs6@qcO^zPvin37ZSOM$SXu%Bl0?t zH;BAR?@^}MTl{4kp=^F&p$#yhBsuP~J9!PO@ati&dlZ)vmk#^3MfAaM9W&-Mj zXS=)(t1rfQMaDB=UY0T8wHcFLF-1FsGo_HLlilejlRYT3Cz1MUF1MtsFYY+BKbSi? z(*r2k2?jZd;+ULFp;L&|7lygjVY*H{jx*(-XHtr@i15VzN(wQdDZaZsB@a<(E1G2< znUWJIw5&!>occ+y@haFJ2tR<*hD&J%vo(?Ji5x@ZSR%&}IiAP~L{21f5|NXM&`dr& zmB?uzF%>jCoqnD{bn#F?H+ zKhGj^F_BA%TubCSBG(hSfyj+SZX&Xb$jwA&!d4b4_L}<7QX=vhsKcsOdq;V&taVMm4C!}#Fq;V&taVMl9 zC!`@K+?mKOM0O>z8ksFEJL}VF}n~B^)&!d4b4_L|!8DGLct^yb9toeT{y;PUH4$j3yMVq6TjAhIQqt%&SQWEUd464{N&?nL$g;kQY+C;i-u$lgTGA#y2^>xf)W zz#u&LDCok&B32Oym+GmlC;* z$mK+?AaW(ha?bQB`gt{x*NMDAz) zKQ@!UCHPN&*r=TLH~jqre@iiio3;g!tw82uG5*WACz*%;3*y7P5k5J$N0Z69!>`E|F`j+q!0gp7mp;f@PCtdH2D$!|303Z(BghkygqjH3c=!d z9yas}!5`ucu%A~5{uuuhyLg3Q)A(oD#47}w#XrX$ULjZ#|04OY;OIE}Gzr{ISJ}ykoL+GF|K0Zv&LFnKxJ|Rrb zLgbVL|m8)B2J7#tbKH-y+8D+Wh} z@v<=40imPA`0gA#>>OxzY#hPZ`CmQ6GF#_@uOj~7@N8$gz?ki zkK&g?>_SctP7LE`@atvT`7H(~h4JfQ@}CHu9L8^i$p#3W62|X`5Zz*MY8Yd~bPhtN zg)w$ahY&hFjIm|(0*!q<5Z`NFX94ckQF)g?LQC^4g5|kI7yyoQPCa*LPq9^eBl9rY~n))JT$!kkqQSxGvHyLRic@oNeZCLC= zl5S}IXmDLv{0@G6R~E^EcW6@9|U4ra8pnE5SWOF-g~dVq_%ZAS(}J7B;t+le zV@R47+!7WsoEJwSJJW(&!{Qizj3;m7$8BK|hO6TGkeF$~?O_r7)Wr=k;!F$f2#Y_( zkDn!v;m4g}5xdvLNsK4cg1f@veEirbxeGt;4vW9Uj|Iuikm!3tY+59TK&bAeor|Qn zO&G3%`1@!J0~_4agZnvD+yieN{8~=C8VP5`IoeK1@GGi<>v`H&fznP7UZBmDr1)wWegW|>(k=_^1=E9=dWe6AL&b9>cz58fvwM2kh? zZxR0i?et(|oF070A#C)7WBBzES`1t_N6{SE6+RA&+rzZ-B+2xhkl*c)a%oiD%_WZ` zv_(|h&n3$d+A=C0>R^kS5o{F|k3)(buoOLU>a)StQSnUt+@4mZ4^S?Tf}D#K+eF1n zTyi=>+eXD3U2^2qn!$Ea@lGtdijNUF1cSpqfVYpJvdO*(?Z6?5+cAQHBB74oi9=f> zv~yH^%_U0^+9fJ};LxmiJx0at;^YB@c8iKf#Qb90Ju03a^UG-u6d_KI0=g%P5GR!L zUQzM>m~-AcDn1h@nB*G>cw%+*V=?)me#nM4jMQci#&LMfe zxEmgGbmZ{fJ_+;GVh}=QsE+Y33VPnd23OzvNAtH|ud5p*tM4lq@43XzR zzTk6xfquV4X5qX2iTSVCK@g9XfAo39rwr{X$gRL5D&|q5znK3@&b7d0-TQAsf zK^uVHTtT~l-bisEg<7uo!*sEKozM0EzT{6A`hI!OD|=ql(|Z0%pX*Aj>S+^_m-Z{M zsz2K2`hQv5hbvyzU*mIay|_=;^((uY-^1rxU(*}Q`H)xg^+i0d-|I_vUbQza*f;RG z(y~2lx?=x7E!Js?zLwAR|G$MguhH-Gxz<U@sIjk|G%#L!}^k+%zKaeT-m-iMUP^G9^3NR zjK>x{Hr}z_j!kyfRzc&A!2Leg`bGe+{K?AaZF_9iV~ZXe^Vp8ZCOo#@k>Spp>)2Aq zMmn<3z3y{m10CDu*epjDId6w!6C7LL*zk4*0c>u&hC*ay^QJYnsz^zXeZLqXyuI`Y}sH70~;4|b_J3>Z&D!3!8~|cAXhRSyg2nA!Eup0 z6{Th?6K#unHwE%I@HQSY;CN#VnHVlYJ&%vvX-L85EVg8^5sU3tY`S8PhelhKtDC7l z!ty3(tJ)0pM5dO-ifmGO`x6_S*w(~mCN?P<)}K>+t~ByxY(P2lPipybH1Or^J+wiY zGxcl%0YO=5@6OwL*v!Lr9k$ohO*JGXb&Cv5pH7I}t+c)<1}8@DcE49}QUn_%&$v&H zV5r3E7%Tn=)=HjSof^Sp$jBG@gH&48XB!FZYc5ur08hxNf?gwBj$%S?Wc&{>gN zPA+y>@kj2#F!?n?=S1!y^0vc@KXQ+R$wmmB7dh-l{1-y!NA7X*vnvJ{L=G#7pCWW& zHZn8T< z_e5^5DA^UEdn31RlWjaL=*nykvlL-Xk{}Mxq~C_^9Le#NR<2! z;vS6LVSbhMP~;AexX&Ms+>sIQ6g?8Tqat1+JQ_Kyu&AdWi`=mh_w?hDJ3dM_LEICV z5l0EFlAes*NfGz-Q;|D4;+}pQY8`P;KLd4*xTl|u+_@3&DLogt^P^-g(mo%-V9mYy zLIkTd_v(ugOxMW>(3c{2ag+=r^l}7CHr8=iBSsEuHR|(MBX>oV^dt0IM*n+}pl`w{v(iuu^aDV9AG4uNLg!V9rlq z10?Go7Mx!Qc66}qC+?c*p}P@{bT|G#4D_K-M$aSPog4;I7K5D~jQ&vg)q-6dyvq_e zu|{xTg{>LuNr&;3SC+duI0Ph5A#QgEuYlwUg!XV4XtAe)^`wJ;K=KGedpS4>Bo869 zw}YnuuSNH9a2McZ^S%x~1Ic|r_j7O@NbW&se+TaY?7v{U)xm`Ti)ySV9sCG*wRw<( zGXY#YtHHs}?Shr{HPnv)7Y**WYQ&CT03( z*tzQ*_G~^IT;kkKX!g3rpIWyU8y}ZCw@iRFkl$s_-QtqpAauENx4Pt42wmaa?G7&4 z7`2_d!@-j=39fPu+Z#T=8`5s%zN9YuFFf*U=kBhtq`=ql$ZMRt7r-OndmKNnb?!d- zNtT1_oLlaa352e9ZptNN2;Jb^gO10a8=ZT|@%VES^wjaFvkZFblG)(9*|{eiziDo9 z?n%dQnp>fI4(`Di=bd}T!9N(|ymQYx?5GukJDhvL!7;cP-09p)4u%_y^Ul5O;E9cK z-nmyDT!JyqJNKHyh=p<9xi=gPI2h-hd(&Y%6yrRU+F@+MI1ih%vuk9))%>>4Q&6>--!D%?!D4>DJmcK1F~47)h4#cer+5z96Z8A!d1z0}@0S;# zJu$yuUWE3<{C;@}+7t7@@-nn1=J(4h(4LszFRwy-Vt&882JP{iOs_k4Sj_L2H=su` zzhB;T?#P&D5^q6|VxCF7?c6ajzjNM!9>qM9co*6eb5Fkq?TOj8@jkRC=AQll+7t7e z=0j*tjQ!GL@Da2p=Gn!^(3zNfdTH#=j@kCJMeNRvS@*Y$-FY!A8nAH1?t++gf9u#? z7_;qXo7i0(v+i#jJ8Y_*4!-STcUjEyjO}B0d5j$xr4yBTkMv_toysi?&g^16nn(()|hpF&)D4-vn^?_ z*xeDc?(ZGDJ7a!r>=V0td{6HiyL)5S{rzHxt-h_0^Zv109<%Nr5W5F_Pahb&2jk@L zKo5%D!@j2vj@=_Mzi1AL-DAF|4~^a9G4JLc7P}{XPaht;r(&Kn9ud1|V}4;A8N26v zPahS#7h>#fW9Kb)FZ!N7CU!5!_%s8fXzX6`J$+p4UXPOv5qEs--iTpp#V8uPw_?`m z6Jv)>Nz&<)V)t&$I(>5N-t#?uO6)#}*>-hm>^}58eOm0Wc}a7M(_^=^z_zP1Vz+yN zH$%^i-5!PHG@xh2a8ToZJ3EG#8qW&PiQWDM?yYlUcTgcY0(|Gi?qI*6d4B8;FYx$$ zLF|qwa35V5yQBOj=S8tQy1;#OaqNyQ@c4X5?2apNA6*K$D!{h)h2XLn%aO#LylOOU z=P<-yG;J6B-zALtFz>h=QU~;eRig{=>k3F7ex0;xbPh^#WsG$nUi<$VTm?B~F1!y< zBA1?%L6B9A>_Q1eqJBDYw+_F zWcn5SyaAFcKi5HiH^%Pz0@QUza1+EAz^UL{8^AJ1ZUMH(8NtnvTmVM{_!59yAhZSU z&Rb)5dx5+2w%FZOU{mDnvAes#rpP-Wv;`ib?~L7j1s`TDt52>U&KjEkq2Tp zA>vz@>A`~#L}0hB3Li!cxDZB|GZA_?hF>BN$B#fP3v3#B6k-Y9TULe37Y5xJu8KT3 zKMo-+;L{jPt|6oad>ezwbquFPd>jMA48*m7uVaeA(-7AJj43e6#PDH+y{i~J3&Abm z1DRs*90a#5AtS`|F_!hbAb25$Un8sWi!q!VS&d(c;o-=y@RwsO^4WC!N{p4hH^9VL z?(@+7T8uS6EA;Cz7XG{(d?Uu{pO=Gg#@GVDApV8mt=R3{Mzw-O-Ad$kBJ`QTZ79pz zvD>YU7l!XZo!VI4-;Lc~ZMJhR)S;Ld8}F@4v9JG+f%cDohad2PIQ+`Zt=Z{ty7kAl0XjpuWF7Tm>cJf`ne zaF@36d~WZ8yR41J^nD8MiZ&iE_AR(8+jzX#ui)51#D(;*Pc*-2P=2&i3PZ^ zVm^n_xBy>P9?4HGz@e4j*{2k+)xn*7Y5}gT+{vdE+;eR_rk`GLFShYI@r;6dsg2i( zXBONmZ9E8^RdBDi@gQ(^!M)zbgTOfj_eL8J0_PUoTWvfDoL6vfxA7owe!;!l#`Clb z3huo&o~K<{a38e6$)*@wRB#`*@s7a71^00qzTm>HL%}UA^4t5;g4?plZ-L7SZmS}{ z1uieRZHnB}R}|c~MegY<3vT-&zYne|xE+dYM7z4+b}I7Q`kDp=BEP+FD7Za~JY&1D;Px)^+xw=1+o#Agwq*skUyuVz;0`LXl-vd-DJEMY=i3YJ&?3*+?tqdMSvKx0xFd=z8+R4l(M6VsyP+gS zmWX?x8by|ad!ZUdmV^7C5Jm3&`wQ-rBKQ7s=t7bEe5&BiC~}`a09`0@Pd`|2=M=f8 zAA&9vxqlxnxC@HhzmGr{irl}C7ThI8?%&6t3q|hV#|!TABKPkT(1jxR?~?_0RgwGm zse-$v$o>0t!ChPA{(Yw4t}k-`K3i}%6uEz&E4Z7A+`rEk+_EC~?+XQYOOgBc#e%!F zh)?ve>rimF7vW5WT?gn}kv(HxftD3v{l=~Xw5*671ME6Lo{KzizYcjW^1%HD6o*UF{1%wm=|pfe;tAg#^a3B_qqg1>piAkZm1{ z3k0aYoO8}O=bUrSIp>^n&WsvspPysS@!|NQw^n~0cfE5ybIkD0rah+w?vJ$Rl)(Lo z_M8&9KmW!7ZGrpCZ=BK=xWCfIQ@no03IlCC#k-B{K>x;h?ZzMZ^n=!(YW#suKWXi$ zMi-xc{l@Wa4mGgfoa79*POwjsgWU4&zDZ7V>n!^vS%1}8_D^!ITi!h&$>DCD>cAu? zymhLBk{t7vcMnb`zQyM|B*}qqo$t^jtG4p)VadeL_@sv?6MYON@gtInzJ`+ck;z1V zLz7pdl8FIE;|hPj(aFSMLz7oyl8GUPa6LAe7;ZF9@uTCCi4le-D8?rfqYU1~WJ5Wb z7;PvApO{RHHPk$wluV2>l!H%BCMFn~Cz_H>Of-~(PfaGK7*gNUl8LECV>7?Y^kibX zA@w~YnV4Z{@@i%>G24*;&Ppcc81moQ$;5m^nfIJzVu2y`JvW(HWQf%Bl8MEJNIgH9 zSZavW3zCUthDg0InOI?n)Qggdm4-;YIGI>&DDz&DOsp}a?3N}I>kKKoWy!>PL&|P> zGO^K6=Di}B*kma4UYSg6HRQFcl8J4G*uFZM*lCF9Ym$jwhP-xdGO@?t1!tqPNhTf|s^c9^ zCLSBSXv?Z=GV#PvMtwY)cxI?#dm@>5ZYZNZnM}MgTHoaoe{Py%mCVNZ)6#J^o=m(*^IkNw zasJ$NoQ?D6rdc7RK;+L&$Jsc4ZkqCs;*frsW<8MNkbaqNczn7|Z%m6Dcj%32apNw1 zFwK!mPVUeL(;T{_Fr??DMT-Z?#ILky@sK`fsy_3GK4^;akLiP^?Bxl4(3HJAO(q7J zvX^J{MpO3kJee43%3fY16T?i|%S(ErDSLU9OpG*TFRzn{F=m{N(;H3IY~Cgl<4y7Y z9lg;M@82gAlTBI42YRC!XXDAlG*eTBpXiNdoQ)?FGfmmcmtj{@t{vCvCI??`lb>qOig0;OC?sCs>$_F zC03hKZUa(@HKvr?z*J(Lsr+tGDzV-a83v~k8%@>ZhNKdkOhxvgsl*mjWEhr8Y&8|x zho=(TO_5YU6!?i!s++&BMHA@Xlp;#I-&|GkFNsah^! zBZ%MhU$0#<^P}YcYje6TD)lj`!~^~^e}z)NKoc9AN<1``tdC129>s<*K9zXfF@%4o zYeFjVgkSsr|AYR0mR~2P5>NTbf7AcX&i`SXUp6U~c=nfHtiQHuJBGjbT9!&I z$ViedPbC&+8k6{YtVku6@b~DX&?{4kRT=5eRrIV3^=GMTHT{X-;ZOJ35AgHWq&P%M z;$*tk>WTNlFo!S4x)iU8b^PKFtnRXY%!b1uJ|E4XGj+E<#m{Rbj$|;A-(y3HH^&r< zHm119fF%LDYm=UM(H^uiz5N+Kb2HB-!)*_V0FWPsPJ{n#k)+>1k9ip3VEyfS#uGJWk~8`2Dm0^pStc*Jx)-U(=}s z?@Dpc0u_MWwOdcz1JJp+rnjN|_#VETSyoQ%uDyEVihxe9NpJrNKfW);?F>|9cGrGA zaeF}LYMb6V+V4P$iyO#SyX&ByxLBZb!%c6Sd7_8-8fD`X1wZL<{O%oo!acq{%Hp4~ zws9o>*Wdr;zv8z&n&K7+21>i@n4Y+$fVTko#y-z?e*AcfqrJpjrt5^Bc=ZjB_}S&nqfbY1+@$LH|9OYwXB z%vtVblYwmP7-srs7dEM`( zI37)@lIyxhP80PSD(zI8?$cQF3hEE&xOs-zLf1n*u~^1SgLzJ;`CX6r8+5|J1OC$^ zzCF&f)1Aj519(GG#Qm1*j$M^eWZ49QeQR6JDnbPG0{* zKD|j9Tm3^6lXtqS0L*8nc{WD zM%wK~y3M!$`1iNJ+l#-?L->{Aii<}2AM~Q5(RvN;#!#1{kHPzm91rLGuEG5mjhB4t zXK-mo<2j%D8@%|)dGSKm0E6?N4SnbTyceA+^+1Eept`9t$l&Oynx2CVZq87?G{oQ# zD)S{4mkbR5V}ozK*v~H;rgyLMX}F#`>C*^3UFIi`G{80s-{R#jqx9~1e#&S)o#WFO z1Ec=P8!g$cu?E7P*VA!6O)$WA%waxFG%(?hs)|iAz{X7HcbRNp ze%!p6V(?z4(x<5gCtD?#rWw59DY-P=;5AQ$qZtP8dMX^vGm9%CN(1c0 zbh;j^4Bj$TO>MQobtiEKW^m_8oPil&f2K39zRtjbxc{-rDnXqA2U$Y;aCjS@#x$yHS*NZ#B3ZMOoQ4g9}oWm2EdTzpJc!hrv}T(%U-?j`K=y z?=rYFMKN)=!RcNp?>z?Br$~A4H8|`mIkC^+A{EJr{RU@$RdYFDaHWbg_(6lCz|!D{ z3@%qu_2sa^4J*ptju>3CqU`Oc!9iiE@nZ&etw@a@H#j#O_d^YCT~Qu)(%=}e^0-q5 z_pdM#r@BrXoGMmD=8VBjEUL(yH8^CfjP9Jloh-`e&Kr36NA*ZA7~IaH+RR0RBgm@F zTr#+)MaBEe1}Bo$ExlrJV~e__R}DP>qq4kf2G_PI%e!uHQkhGX*bgbhfasSD>gh+>0d&5ejp_YAIgQOt2&Nzp20a#z4Q{)OCAH`uwJh?j7m#n=-ohq|R^Zw0o0<&)6O9=)7&znn|FQETs5QmPv0~LxK;n@m*&zL-NEah=H?kyf(E3yenyp` zfoYC+>ki(aG#AmRCNwzBZ8WM04M}q)jY{}K(_lC42!GnJG}t-Y!>8eC4uq>*KO)V0 z;JSl1GR@22%KS#9c_W;eU$$#>8jF8x;1uTx|66|9m^4k znw#dubirs|nzz#hqxorGQ5TFBr1?K57%fcmw^RvmQJQzxRRUa`<^^^o`b*Nh#V!~v zO@m#uf63o!S(>x%g3AfUWk^Fq85{Y`1!idUk)InAr_D)DYf^M1Ta zL|fCmB(Dt}gT1u>fd95H4fey9@M(XV#C;H1FjrHXTp%a=v2Ii8OEMD>j`>^P0Y5)2TG?>MJ&#PV>UP zEaD8^C8@&wS(kR?|hLapQK~wx-QY=lMS=RYs-J= z6qGL0@RM@yD>VG1-1{mGKS}py|1u4Bw*LHvbCI8aJq`A?I%79C(p(H6=f0Wdb^x8{ zE&52@i@Tl1#-s{2chX!Npp(6u=I#KU?7cJ>2O05A>>}ih3XERY?`~KGCa^8n*dN zuS%-C_k~`SRC(_!y(-CGFJ&gZD%oi9={vnDsXp%ydR0<|zMu4}qzZk%=v7G#;Pjf@ zV<4;OV{(~+tfH^UjRvxcekRu%$SV4q+-)GM7+`Y2fjBYHRCACx)3^e;`f_H+h*toETwp2ZA^;(&QopablFoZ3yDTXp<`u#ECH` z_acZBV@)nc5GTf&+>jtnj5oO^L7bRia#w;lG12701aV@L$*l?E#AK7J6U2!rCif?Z z6H`qtQIKevW^$8)M9Xv&Z{tSb43p~=#EzLJcPdD<%rd!HL84{03AXS$!yR)>ur=37 zDCU~nxFA_F&*a(#$&&ddcP~iIE-=w2B{jRynl<*nFGLpRwKq+iTxTZm@Z6?>QX*_4U$=z!z{q8WqHe6qR=ba|la_h7OcA4BEAyKf~#Kx3F z!5$NAuXS1gdrdBvP}tvRf{nILy0+iM!IXUefXS^B3hW0>uAWdI{*cN26S~=V*yIul zm2{7o+(aQV95uO)LS#5*;zUYhIBtS%v;UIc`Gm8CEq_yUx-_H zXXp!Y3-2s_Atm2GM_)+E_s`RwQ}XT$wC9w(`y%Z*CGWmOdyX4-mub&&fG z25hG-;?vL!7m_H#56f^Xi6Z>)3|EsV!jH&sKZzpz$PAa1D8i4*a8rpQ{OAnVl_FCz2y3>UwM%sVo?%_}nR%y0#a$h<4VJuqtV?&fajv>G{k zG8mawJ9lq}%OKUxWwm;ATH_e|GrTn>f^$fIY+3|AnBi_n5uEkw@o5qKaE4nVMet7b zIxT{;sy!(!f*;FpX`~2#Jj2bABKV06*GG!rCo|k3DfM?M!$p!(f2T9tCMorICc~AI z;``YQ_ezTI=Q5a`77xy|uAUYTIK00&O^>&`F4AY%H2gE}uK9!cuei155B~#C?ox&u zDCPZ^Gh9O{6?i4XU6fLRS2J8lDeu3Q;Z{m{|Md)4Q_A~q(D%~v{+sl@w7mZoeJ?HV zzfIpu%llcEU!Ruu-_3AwrM#bY`i*IM|NRVCSW5jr$Y66?apGZy_vaKR9?@^piW86N zw`s+RC-mF2G~!eGZCV=f8T~e`IPsi*n^v57LBCB)Bfg~Hrj;AKqTi;K8@#69#*N=M z^xL@c%MQVTxbgcggM)G7mmPycapU(x28ZLu@5c=9?J0_U%5X2HG~(wBmt#sJe#vk{ zrZnQ$4A*2T#(c|gSEgdjcd{XF2LH%#YbImN-|709!I^Yil=S1m zomQk7oaHS;sl_2#uICi7hGw~=Q^XpU<)TgzYj~F1Iz_AzS+499u|{U`C@r-(DvOtC zF==#`*A&I1FLroYQR%*3o#G5xRnF_W@jpZpY`*nnZ5yi*9Bk_G$ZM_Co8v>=Od zaRYl{7HrP1;J+=(g3bBPVEN)KCYs86mt-+1Ze=gcf(`ox{3yFlY}n7^)AB5)nu>|+ zLQOLj6IW)z)_teku_}uhrefmiEZD@K!hc(n1)KPtitO4fW}AwM>#|@wzY`PJXTf&< z7(Q*tVxB3B-IxU%`y=>oo3dDFijSMKU}JwUi}72sU}L|tTI>Jj(XijOgzx=DRrUMA zt+)L8ZCSAO-%-BoiLv$H%cmV#EH}l?omp@Qpp!N4%7Q}x{|DP3yR%ru@7D{y+Bs+cYLt7j;B>(M&ZoUua5~^$@o8TcYvXqK{wz2r(3zt-kOk)iIwJaD78^{-szX_D zVxS|U4`;!NfzFX1$zro9upZ5VvjhJV|BcN#&JJ_{d_0S7rohT(9cKsrJO10rEOvEf zB??`qve?aE@^=I3^!ZL_vBwlv&t$RJ6jsk>vCkA%&t^->mxO=0zN7DwVaiYr+hjprz?W^v3ERCdv@AcDUkENGLYxeojkhJi!3-m@E6^w z(^-0%#dA}2*jHI_QlL|ZeN9-Is>8k^tW4Em-x5})>agz!D>m!-dG84;v%xf^>q8c7 z%>Uxk$1K>G|G}qES$r@X-}uBH=|@vL&c0;v$>fe9_NTJ=Y--!tw=BMx+IIFmi?61( zo&Ct-o7s59&+GJ6&BhBp{UQ)eZ9wbI;b&}1eRB8}+fv^gdNbNB(=UfUnZ_M{MgJW7 zX0!oqKo0#fs>2SmaXBD8Ld$plf$Tt zbpF^JMrWk+$K^04Bc0Et@YsxWK3l`%GSc}Ia~PjdF?Ui96EflNpLvndA-Qv5gkip^}xXVmW5lEaOR>MC2= zxX(!2Z_9yW7XJl5Z+i~6Gt%}ua=4q37TcM_y^OTjt{m=X1dZJ}Jje(ddvbW35h{4S z^hrhvjBW6z87Z*+IXufKk3W#Z^NgTzFozczLE}&kFEfJ1;T&FN1dSs(yveAwb2Nt! z8L6#fIeg4WZ5_|yQ$}j*L=K-bQd=kK99g~Mr|1aTxavyd&g#|Wh1a23y{2rtkI3qk zJV%Sn>h(KM>&r_2T%e_8rFt&XsC7sa>-Wj1qWTkbk^7ONM#jo+C zv&yxu^Hj3}{0*L9R(aJ;o>o@b6tCE>&*~Iz=ddZO*ZxipTeEt_@8+;0s~qZH4!g6; zobKnaFROg%K@JDA0`bEfI0o_`@ppNY!||+|WRH2~S+&NVorF_vO?$^o@G|xe9Lpo#<6$`HfJ^DSUn>z;X(j zKM1d!toSFPlv57!i)Wcr4$_;)u$f2{9_w?wI{?@Z(H9&{c%a^l9cJa*<} z4mW1z!P%6KZkm^%18q?_jCaUdt%G&hffIpv%4@;H=JzR7Wu!#N411$i9F zNhmGM<7iIxr$u?3$Vnb8&f{cG@`%GJoPFuYqosMAj?Z^l9%pm%l;wGx%PALFk;nO* zd}d`H7jmjktjgnJPTsRRk1IKO&zd|qCDW-0ug&9HPJXm5kLx+LvDfEuGp8JLLmszs z$}umz{th46vAt!Ghj@Z{{r?{33FbxWBRsc!TxZRLLp=XAzsoV6TVDUa$9Zmf5#$8VEiaDq zdfCCeSi(zbhw|e1X`WkNRN)=_j^$OOIiCmTfjW|ygFq+ps?l8J zS?2W`a4_gpUa!Gro@HLI!IeDDJcpQ`UR-<0Q_V{dzRKf8 zUW9wi^W_8-f7+WoUggEQw>;^*1mU|p-sDBS_j$a{OAvm@<7Zw&Lm%__mDkYFr#yNK ziWQv8>Qhi&{3VaR1^L3)Jo**n3*Yh>Sda&N&tphIcJL#Qp#^!sPqMBc5BQbG_<~Nl zw}7Pusi8gvEGtM2^(|m|L29U90V@hpL;VX_Sx|O3pnx?6QEFfT>kG;R2NkfPpiFRZ z0hrJ($8XaQRb(mBHl*j7;fH@tvd1y#jH6!5qpKOb4ZlY%%ts(_~jaeQLMIEDWvO0%s({&+RNCnR=2)stohe|RCF?v}zYE&WiOPt7aUwnX5!1)Q-&;CBU_wM5|e1)R6yYj6czu;OcQ z1zfb^Yj6czw#41f1zfSj-7f`PwZz@81zfju`R!W)H!NL#`(D6JOPAk%6mZ)TZGRSU z#}aLS6>!%QZF`HjZ>cibr-%oZ)Oz0{9$NCjenmXCRKV$9#1l&jWk3;6Eh&_NMLf4e z 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 literal 0 HcmV?d00001 diff --git a/Obj_4/Project.uvoptx b/Obj_4/Project.uvoptx new file mode 100644 index 0000000..5116d8a --- /dev/null +++ b/Obj_4/Project.uvoptx @@ -0,0 +1,396 @@ + + + + 1.0 + +
### uVision Project, (C) Keil Software
+ + + *.c + *.s*; *.src; *.a* + *.obj; *.o + *.lib + *.txt; *.h; *.inc + *.plm + *.cpp + 0 + + + + 0 + 0 + + + + Simu + 0x4 + ARM-ADS + + 8000000 + + 1 + 1 + 0 + 1 + 0 + + + 1 + 65535 + 0 + 0 + 0 + + + 79 + 66 + 8 + + + + 1 + 1 + 1 + 0 + 1 + 1 + 0 + 1 + 0 + 0 + 0 + 0 + + + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 0 + 0 + + + 1 + 0 + 1 + + 18 + + 1 + 0 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 0 + 0 + 1 + 0 + 0 + 5 + + + + + + + + + + + STLink\ST-LINKIII-KEIL_SWO.dll + + + + 0 + DLGDARM + (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(100=-1,-1,-1,-1,0)(110=-1,-1,-1,-1,0)(111=-1,-1,-1,-1,0)(1011=-1,-1,-1,-1,0)(180=-1,-1,-1,-1,0)(120=-1,-1,-1,-1,0)(121=719,154,1140,581,0)(122=-1,-1,-1,-1,0)(123=-1,-1,-1,-1,0)(140=-1,-1,-1,-1,0)(240=-1,-1,-1,-1,0)(190=-1,-1,-1,-1,0)(200=-1,-1,-1,-1,0)(170=-1,-1,-1,-1,0)(130=-1,-1,-1,-1,0)(131=-1,-1,-1,-1,0)(132=-1,-1,-1,-1,0)(133=-1,-1,-1,-1,0)(160=-1,-1,-1,-1,0)(161=-1,-1,-1,-1,0)(162=-1,-1,-1,-1,0)(210=-1,-1,-1,-1,0)(211=-1,-1,-1,-1,0)(220=-1,-1,-1,-1,0)(221=-1,-1,-1,-1,0)(230=-1,-1,-1,-1,0)(234=-1,-1,-1,-1,0)(231=-1,-1,-1,-1,0)(232=-1,-1,-1,-1,0)(233=-1,-1,-1,-1,0)(150=-1,-1,-1,-1,0)(151=-1,-1,-1,-1,0) + + + 0 + ARMRTXEVENTFLAGS + -L70 -Z18 -C0 -M0 -T1 + + + 0 + DLGTARM + (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0) + + + 0 + ARMDBGFLAGS + -T0 + + + 0 + DLGUARM + (105=-1,-1,-1,-1,0) + + + 0 + UL2CM3 + UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32F10x_128 -FS08000000 -FL020000 -FP0($$Device:STM32F103RB$Flash\STM32F10x_128.FLM)) + + + 0 + ST-LINKIII-KEIL_SWO + -U066CFF574857847167074929 -O2254 -S0 -C0 -A0 -N00("ARM CoreSight SW-DP") -D00(1BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32F10x_128.FLM -FS08000000 -FL020000 -FP0($$Device:STM32F103RB$Flash\STM32F10x_128.FLM) + + + + + + 0 + 1 + point + + + + 0 + + + 0 + 1 + 1 + 0 + 0 + 0 + 0 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + + + + 0 + 0 + 0 + + + + + + + + + + + 0 + `TIM3_CCR3 + 00008000000000000000000000000000000074400000000000000000000000000000000054494D335F4343523300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004100000001000000922449922449C23F1500000000000000000000000000000000000000340E0008 + + + 1 + `point[0] + 000000000000000000000000000000000000F03F00000000000000000000000000000000706F696E745B305D0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004100000002000000922449922449C23F1500000000000000000000000000000000000000340E0008 + + + 2 + `point[1] + FF0000000000000000000000000000000000004000000000000000000000000000000000706F696E745B315D0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004100000003000000922449922449C23F1500000000000000000000000000000000000000340E0008 + + + 3 + `point[2] + 008000000000C0FFFFFFDFC10000C0FFFFFFDF4100000000000000000000000000000000706F696E745B325D0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004100000004000000922449922449C23F1500000000000000000000000000000000000000340E0008 + + + 4 + `point[3] + 000080000000C0FFFFFFDFC10000C0FFFFFFDF4100000000000000000000000000000000706F696E745B335D0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004100000005000000922449922449C23F1500000000000000000000000000000000000000340E0008 + + + 5 + `point[4] + 000000000000C0FFFFFFDFC10000C0FFFFFFDF4100000000000000000000000000000000706F696E745B345D0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004100000006000000922449922449C23F1500000000000000000000000000000000000000340E0008 + + + 6 + `point[5] + FF0000000000000000000000000000000000084000000000000000000000000000000000706F696E745B355D0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004100000007000000922449922449C23F1500000000000000000000000000000000000000340E0008 + + + + 1 + 0 + 2 + 10000000 + + + + + + Sources + 1 + 0 + 0 + 0 + + 1 + 1 + 1 + 1 + 0 + 0 + .\Src\principal.c + principal.c + 0 + 0 + + + + + Sys + 1 + 0 + 0 + 0 + + 2 + 2 + 2 + 0 + 0 + 0 + .\Src\startup-rvds.s + startup-rvds.s + 0 + 0 + + + + + DFT + 1 + 0 + 0 + 0 + + 3 + 3 + 2 + 0 + 0 + 0 + .\Src\Fichiers_DFT\DFT.s + DFT.s + 0 + 0 + + + 3 + 4 + 2 + 0 + 0 + 0 + .\Src\Fichiers_DFT\TabSinCos.asm + TabSinCos.asm + 0 + 0 + + + + + Son + 1 + 0 + 0 + 0 + + 4 + 5 + 2 + 0 + 0 + 0 + .\Src\Fichiers_Son\bruitverre.asm + bruitverre.asm + 0 + 0 + + + 4 + 6 + 2 + 0 + 0 + 0 + .\Src\Fichiers_Son\Son.s + Son.s + 0 + 0 + + + + + Drivers + 1 + 0 + 0 + 0 + + 5 + 7 + 4 + 0 + 0 + 0 + .\Librairie\GFSSP72\gfssp72.lib + gfssp72.lib + 0 + 0 + + + 5 + 8 + 5 + 0 + 0 + 0 + .\Librairie\etat\etat.inc + etat.inc + 0 + 0 + + + + + ::CMSIS + 0 + 0 + 0 + 1 + + +
diff --git a/Obj_4/Project.uvprojx b/Obj_4/Project.uvprojx new file mode 100644 index 0000000..ff5c330 --- /dev/null +++ b/Obj_4/Project.uvprojx @@ -0,0 +1,466 @@ + + + + 2.1 + +
### uVision Project, (C) Keil Software
+ + + + Simu + 0x4 + ARM-ADS + 5060750::V5.06 update 6 (build 750)::ARMCC + 0 + + + STM32F103RB + STMicroelectronics + Keil.STM32F1xx_DFP.2.2.0 + http://www.keil.com/pack/ + IRAM(0x20000000-0x20004FFF) IROM(0x8000000-0x801FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3") + + + + + + + + + + + + + + + $$Device:STM32F103RB$SVD\STM32F103xx.svd + 0 + 0 + + + + + + + 0 + 0 + 0 + 0 + 1 + + .\Obj\ + CHTI + 1 + 0 + 1 + 1 + 1 + + 1 + 0 + 0 + + 0 + 0 + + + 0 + 0 + 0 + 0 + + + 0 + 0 + + + 0 + 0 + 0 + 0 + + + 0 + 0 + + + 0 + 0 + 0 + 0 + + 0 + + + + 0 + 0 + 0 + 0 + 0 + 1 + 0 + 0 + 0 + 0 + 3 + + + 0 + + + SARMCM3.DLL + -REMAP + DARMSTM.DLL + -pSTM32F103RB + SARMCM3.DLL + + TCM.DLL + -pCM3 + + + + 1 + 0 + 0 + 0 + 16 + + + + + 1 + 0 + 0 + 1 + 1 + 4100 + + 1 + STLink\ST-LINKIII-KEIL_SWO.dll + "" () + + + + + 0 + + + + 0 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 0 + 1 + 1 + 0 + 1 + 1 + 0 + 0 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 0 + 0 + "Cortex-M3" + + 0 + 0 + 0 + 1 + 1 + 0 + 0 + 0 + 0 + 0 + 8 + 1 + 0 + 0 + 0 + 3 + 3 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 1 + 0 + 0 + 0 + 0 + 1 + 0 + + + 0 + 0x0 + 0x0 + + + 0 + 0x0 + 0x0 + + + 0 + 0x0 + 0x0 + + + 0 + 0x0 + 0x0 + + + 0 + 0x0 + 0x0 + + + 0 + 0x0 + 0x0 + + + 0 + 0x20000000 + 0x5000 + + + 1 + 0x8000000 + 0x20000 + + + 0 + 0x0 + 0x0 + + + 1 + 0x0 + 0x0 + + + 1 + 0x0 + 0x0 + + + 1 + 0x0 + 0x0 + + + 1 + 0x8000000 + 0x20000 + + + 1 + 0x0 + 0x0 + + + 0 + 0x0 + 0x0 + + + 0 + 0x0 + 0x0 + + + 0 + 0x0 + 0x0 + + + 0 + 0x20000000 + 0x5000 + + + 0 + 0x0 + 0x0 + + + + + + 1 + 1 + 0 + 0 + 1 + 0 + 0 + 0 + 0 + 0 + 2 + 0 + 0 + 0 + 0 + 0 + 1 + 1 + 1 + 1 + 0 + 0 + 0 + + --C99 + STM32F103xB,USE_FULL_LL_DRIVER + + .\Librairie\GFSSP72;.\Librairie\etat + + + + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + + + + + + + + + 1 + 0 + 0 + 0 + 1 + 0 + 0x08000000 + 0x20000000 + + + + + + + + + + + + + Sources + + + principal.c + 1 + .\Src\principal.c + + + + + Sys + + + startup-rvds.s + 2 + .\Src\startup-rvds.s + + + + + DFT + + + DFT.s + 2 + .\Src\Fichiers_DFT\DFT.s + + + TabSinCos.asm + 2 + .\Src\Fichiers_DFT\TabSinCos.asm + + + + + Son + + + bruitverre.asm + 2 + .\Src\Fichiers_Son\bruitverre.asm + + + Son.s + 2 + .\Src\Fichiers_Son\Son.s + + + + + Drivers + + + gfssp72.lib + 4 + .\Librairie\GFSSP72\gfssp72.lib + + + etat.inc + 5 + .\Librairie\etat\etat.inc + + + + + ::CMSIS + + + + + + + + + + + + + + + + + + +
diff --git a/Obj_4/Src/Fichiers_DFT/DFT.s b/Obj_4/Src/Fichiers_DFT/DFT.s new file mode 100644 index 0000000..9cb1040 --- /dev/null +++ b/Obj_4/Src/Fichiers_DFT/DFT.s @@ -0,0 +1,61 @@ +; AFONSO Perrine LARTIGUE Auriane + thumb + area moncode, code, readwrite + + import TabSin + import TabCos + + export CalculM + + +calculReouIm proc ; procedure permettant de calculer imaginaire ou reel + ; ro contient la valeur de k + ; r1 contient adresse de TabSig + ; r2 contient adresse de TabCos ou Tabsin + mov r3 , #0x00 ; r3 va nous servir de compteur i + mov r12, #0x00 ; va contenir le resultat temporairement +comparaison cmp r3, #64 ; on compare i a 64 + bne loop + b fin +loop + push {r0} + push{r12}; on garde l'ancienne contenu dans r12 + mul r0, r0 , r3 ; i*k + and r0, #0x3F ; contient i*k modulo 64 + ldrsh r12 , [r2, r0 , LSL #0x01] ; cos(i*k*2 pi / N) + mov r0 , r12 + ldrsh r12 , [r1, r3 , LSL #0x01] ; x(i) + mul r12 , r12 , r0 ; x(i)* cos(i*k*2 pi / N) + add r3 , #0x01 ; on incremente le compteur i + mov r0, r12 + pop{r12} + add r12, r0 + pop {r0} + b comparaison ; on reboucle +fin + mov r0 , r12 ; on stocke le resultat final dans r0 + bx lr + endp + + +CalculM proc + ; k dans r0 + ; Signal dans r1 + ldr r2, =TabCos ; adresse de TabCos dans le registre r2 + push{LR,r0} + bl calculReouIm + mov r3, r0; Re dan r3 + pop{r0} + push {r3} + ldr r2, =TabSin ; adresse de TabSin dans le registre r2 + bl calculReouIm + mov r12 , r0 ; Im dans r12 + pop{r3} + smull r1, r2, r3 , r3 ; Re^2 + smlal r1, r2, r12 , r12; Re^2 +Im^2 + mov r0, r2 ; on stocke le resultat dans r2 + pop{PC} + bx lr + endp + + end \ No newline at end of file diff --git a/Obj_4/Src/Fichiers_DFT/TabSinCos.asm b/Obj_4/Src/Fichiers_DFT/TabSinCos.asm new file mode 100644 index 0000000..911dc4c --- /dev/null +++ b/Obj_4/Src/Fichiers_DFT/TabSinCos.asm @@ -0,0 +1,136 @@ + AREA Trigo, DATA, READWRITE + export TabSin + export TabCos + +TabCos + DCW 32767 ; 0 0x7fff 0.99997 + DCW 32610 ; 1 0x7f62 0.99518 + DCW 32138 ; 2 0x7d8a 0.98077 + DCW 31357 ; 3 0x7a7d 0.95694 + DCW 30274 ; 4 0x7642 0.92389 + DCW 28899 ; 5 0x70e3 0.88193 + DCW 27246 ; 6 0x6a6e 0.83148 + DCW 25330 ; 7 0x62f2 0.77301 + DCW 23170 ; 8 0x5a82 0.70709 + DCW 20788 ; 9 0x5134 0.63440 + DCW 18205 ; 10 0x471d 0.55557 + DCW 15447 ; 11 0x3c57 0.47141 + DCW 12540 ; 12 0x30fc 0.38269 + DCW 9512 ; 13 0x2528 0.29028 + DCW 6393 ; 14 0x18f9 0.19510 + DCW 3212 ; 15 0x0c8c 0.09802 + DCW 0 ; 16 0x0000 0.00000 + DCW -3212 ; 17 0xf374 -0.09802 + DCW -6393 ; 18 0xe707 -0.19510 + DCW -9512 ; 19 0xdad8 -0.29028 + DCW -12540 ; 20 0xcf04 -0.38269 + DCW -15447 ; 21 0xc3a9 -0.47141 + DCW -18205 ; 22 0xb8e3 -0.55557 + DCW -20788 ; 23 0xaecc -0.63440 + DCW -23170 ; 24 0xa57e -0.70709 + DCW -25330 ; 25 0x9d0e -0.77301 + DCW -27246 ; 26 0x9592 -0.83148 + DCW -28899 ; 27 0x8f1d -0.88193 + DCW -30274 ; 28 0x89be -0.92389 + DCW -31357 ; 29 0x8583 -0.95694 + DCW -32138 ; 30 0x8276 -0.98077 + DCW -32610 ; 31 0x809e -0.99518 + DCW -32768 ; 32 0x8000 -1.00000 + DCW -32610 ; 33 0x809e -0.99518 + DCW -32138 ; 34 0x8276 -0.98077 + DCW -31357 ; 35 0x8583 -0.95694 + DCW -30274 ; 36 0x89be -0.92389 + DCW -28899 ; 37 0x8f1d -0.88193 + DCW -27246 ; 38 0x9592 -0.83148 + DCW -25330 ; 39 0x9d0e -0.77301 + DCW -23170 ; 40 0xa57e -0.70709 + DCW -20788 ; 41 0xaecc -0.63440 + DCW -18205 ; 42 0xb8e3 -0.55557 + DCW -15447 ; 43 0xc3a9 -0.47141 + DCW -12540 ; 44 0xcf04 -0.38269 + DCW -9512 ; 45 0xdad8 -0.29028 + DCW -6393 ; 46 0xe707 -0.19510 + DCW -3212 ; 47 0xf374 -0.09802 + DCW 0 ; 48 0x0000 0.00000 + DCW 3212 ; 49 0x0c8c 0.09802 + DCW 6393 ; 50 0x18f9 0.19510 + DCW 9512 ; 51 0x2528 0.29028 + DCW 12540 ; 52 0x30fc 0.38269 + DCW 15447 ; 53 0x3c57 0.47141 + DCW 18205 ; 54 0x471d 0.55557 + DCW 20788 ; 55 0x5134 0.63440 + DCW 23170 ; 56 0x5a82 0.70709 + DCW 25330 ; 57 0x62f2 0.77301 + DCW 27246 ; 58 0x6a6e 0.83148 + DCW 28899 ; 59 0x70e3 0.88193 + DCW 30274 ; 60 0x7642 0.92389 + DCW 31357 ; 61 0x7a7d 0.95694 + DCW 32138 ; 62 0x7d8a 0.98077 + DCW 32610 ; 63 0x7f62 0.99518 +TabSin + DCW 0 ; 0 0x0000 0.00000 + DCW 3212 ; 1 0x0c8c 0.09802 + DCW 6393 ; 2 0x18f9 0.19510 + DCW 9512 ; 3 0x2528 0.29028 + DCW 12540 ; 4 0x30fc 0.38269 + DCW 15447 ; 5 0x3c57 0.47141 + DCW 18205 ; 6 0x471d 0.55557 + DCW 20788 ; 7 0x5134 0.63440 + DCW 23170 ; 8 0x5a82 0.70709 + DCW 25330 ; 9 0x62f2 0.77301 + DCW 27246 ; 10 0x6a6e 0.83148 + DCW 28899 ; 11 0x70e3 0.88193 + DCW 30274 ; 12 0x7642 0.92389 + DCW 31357 ; 13 0x7a7d 0.95694 + DCW 32138 ; 14 0x7d8a 0.98077 + DCW 32610 ; 15 0x7f62 0.99518 + DCW 32767 ; 16 0x7fff 0.99997 + DCW 32610 ; 17 0x7f62 0.99518 + DCW 32138 ; 18 0x7d8a 0.98077 + DCW 31357 ; 19 0x7a7d 0.95694 + DCW 30274 ; 20 0x7642 0.92389 + DCW 28899 ; 21 0x70e3 0.88193 + DCW 27246 ; 22 0x6a6e 0.83148 + DCW 25330 ; 23 0x62f2 0.77301 + DCW 23170 ; 24 0x5a82 0.70709 + DCW 20788 ; 25 0x5134 0.63440 + DCW 18205 ; 26 0x471d 0.55557 + DCW 15447 ; 27 0x3c57 0.47141 + DCW 12540 ; 28 0x30fc 0.38269 + DCW 9512 ; 29 0x2528 0.29028 + DCW 6393 ; 30 0x18f9 0.19510 + DCW 3212 ; 31 0x0c8c 0.09802 + DCW 0 ; 32 0x0000 0.00000 + DCW -3212 ; 33 0xf374 -0.09802 + DCW -6393 ; 34 0xe707 -0.19510 + DCW -9512 ; 35 0xdad8 -0.29028 + DCW -12540 ; 36 0xcf04 -0.38269 + DCW -15447 ; 37 0xc3a9 -0.47141 + DCW -18205 ; 38 0xb8e3 -0.55557 + DCW -20788 ; 39 0xaecc -0.63440 + DCW -23170 ; 40 0xa57e -0.70709 + DCW -25330 ; 41 0x9d0e -0.77301 + DCW -27246 ; 42 0x9592 -0.83148 + DCW -28899 ; 43 0x8f1d -0.88193 + DCW -30274 ; 44 0x89be -0.92389 + DCW -31357 ; 45 0x8583 -0.95694 + DCW -32138 ; 46 0x8276 -0.98077 + DCW -32610 ; 47 0x809e -0.99518 + DCW -32768 ; 48 0x8000 -1.00000 + DCW -32610 ; 49 0x809e -0.99518 + DCW -32138 ; 50 0x8276 -0.98077 + DCW -31357 ; 51 0x8583 -0.95694 + DCW -30274 ; 52 0x89be -0.92389 + DCW -28899 ; 53 0x8f1d -0.88193 + DCW -27246 ; 54 0x9592 -0.83148 + DCW -25330 ; 55 0x9d0e -0.77301 + DCW -23170 ; 56 0xa57e -0.70709 + DCW -20788 ; 57 0xaecc -0.63440 + DCW -18205 ; 58 0xb8e3 -0.55557 + DCW -15447 ; 59 0xc3a9 -0.47141 + DCW -12540 ; 60 0xcf04 -0.38269 + DCW -9512 ; 61 0xdad8 -0.29028 + DCW -6393 ; 62 0xe707 -0.19510 + DCW -3212 ; 63 0xf374 -0.09802 + + END \ No newline at end of file diff --git a/Obj_4/Src/Fichiers_Son/Son.s b/Obj_4/Src/Fichiers_Son/Son.s new file mode 100644 index 0000000..d7eb43d --- /dev/null +++ b/Obj_4/Src/Fichiers_Son/Son.s @@ -0,0 +1,63 @@ +; AFONSO Perrine LARTIGUE Auriane + thumb + area madata, data, readwrite +flag dcd 0 +TIM3_CCR3 equ 0x4000043C ; adresse registre PWM + + +E_POS equ 0 +E_TAI equ 4 +E_SON equ 8 +E_RES equ 12 +E_PER equ 16 + + area moncode, code, readonly + export timer_callback + + import etat + import Son + import LongueurSon + import PeriodeSonMicroSec + + + +;GPIOB_BSRR equ 0x40010C10 ; Bit Set/Reset registe + + +timer_callback proc + push{r4} + ldr r2, =etat ;r2= @etat + ldr r0, [r2 , #E_POS] ; r0 = position + ldr r1, [r2 , #E_TAI] ; r1 = taille + cmp r0, r1; on compare taille et position + + beq fin ; taille = position + +different + ldr r3 , [r2,#E_SON] ; r3 = @son + ldrsh r4 , [r3, r0, lsl #0x1] ; r4 = son + ; ajout composante continue: 2^15 + add r4, #0x8000 + + ldr r12 , [r2 ,#E_RES] ; r12 = resolution + + mul r4 , r12 ; on multiplie par le facteur d'échelle + mov r12,#0xFFFF + cmp r4, r12 ; la valeur échatillon doit etre compris entre 0 et 2^16 - 1 + blo registre + udiv r4, r12 + + +registre ; échantillon copié dans le registre TIM3_CCR3 + ldr r12 , =TIM3_CCR3 + str r4 , [r12] + + ; on incremente la position + add r0 , #0x1 ; + str r0 , [r2 , #E_POS] + +fin pop{r4} + bx lr + endp + + end \ No newline at end of file diff --git a/Obj_4/Src/Fichiers_Son/bruitverre.asm b/Obj_4/Src/Fichiers_Son/bruitverre.asm new file mode 100644 index 0000000..1f23ff8 --- /dev/null +++ b/Obj_4/Src/Fichiers_Son/bruitverre.asm @@ -0,0 +1,5527 @@ +;********************************************* + + AREA SecSon, DATA, READONLY + ;********************************************* + + + export LongueurSon + export PeriodeSonMicroSec + export Son + +LongueurSon DCD 5512 +PeriodeSonMicroSec DCD 9 +Son + DCW -6911 + DCW 20666 + DCW -1338 + DCW 10995 + DCW -23488 + DCW -18984 + DCW 29795 + DCW -21890 + DCW 12388 + DCW 16304 + DCW -32768 + DCW 13298 + DCW 22737 + DCW -20334 + DCW 4588 + DCW 5271 + DCW -27547 + DCW 19370 + DCW -4248 + DCW -7368 + DCW 24620 + DCW -21404 + DCW 14442 + DCW 4961 + DCW -7125 + DCW 21290 + DCW -22096 + DCW -6605 + DCW 6777 + DCW -14300 + DCW 8261 + DCW -2223 + DCW -6714 + DCW 15935 + DCW -13063 + DCW -3648 + DCW 19575 + DCW -15365 + DCW 7934 + DCW 23001 + DCW -10157 + DCW -5535 + DCW -7091 + DCW 3950 + DCW 7741 + DCW -8492 + DCW 1686 + DCW -6785 + DCW -6663 + DCW 5548 + DCW -15768 + DCW -2114 + DCW 18837 + DCW -13201 + DCW 3493 + DCW 21693 + DCW -2961 + DCW 8207 + DCW -12924 + DCW -10400 + DCW 16283 + DCW -22049 + DCW 2080 + DCW 21521 + DCW -12295 + DCW -3355 + DCW 3766 + DCW -1736 + DCW 243 + DCW -3078 + DCW 5452 + DCW 14019 + DCW -8475 + DCW 386 + DCW -12182 + DCW -13620 + DCW 20749 + DCW -1921 + DCW 4332 + DCW 11159 + DCW -17239 + DCW -9343 + DCW 9758 + DCW -11566 + DCW -294 + DCW 8244 + DCW -13503 + DCW 18862 + DCW 4927 + DCW -22662 + DCW -1355 + DCW -6030 + DCW -1854 + DCW 14325 + DCW -2709 + DCW -1665 + DCW 7607 + DCW -5997 + DCW 14191 + DCW -369 + DCW -14400 + DCW 19106 + DCW -8857 + DCW -2881 + DCW 5414 + DCW -12354 + DCW 16309 + DCW -1308 + DCW -9557 + DCW 9532 + DCW 3107 + DCW -1447 + DCW -7263 + DCW -15617 + DCW 8681 + DCW -4843 + DCW -13457 + DCW 31439 + DCW -13612 + DCW -4588 + DCW 3405 + DCW -23987 + DCW 32767 + DCW -289 + DCW -10215 + DCW 30843 + DCW -16631 + DCW -8412 + DCW -3242 + DCW -3221 + DCW 13516 + DCW -16531 + DCW -10689 + DCW 13306 + DCW -15306 + DCW -10861 + DCW 11322 + DCW -12702 + DCW 16518 + DCW 7024 + DCW -12572 + DCW 26193 + DCW -25496 + DCW 101 + DCW 18116 + DCW -20557 + DCW 20468 + DCW -14099 + DCW -12211 + DCW 18611 + DCW 1619 + DCW 8068 + DCW -10891 + DCW -7313 + DCW 10123 + DCW -570 + DCW 4290 + DCW 7582 + DCW -12287 + DCW -923 + DCW 5078 + DCW -6840 + DCW 17533 + DCW -7871 + DCW -13977 + DCW 2084 + DCW -9092 + DCW 11742 + DCW -4667 + DCW -365 + DCW 5552 + DCW -8580 + DCW 1166 + DCW 6215 + DCW 4592 + DCW -5636 + DCW -3627 + DCW -17856 + DCW 8047 + DCW 12723 + DCW -24196 + DCW 6399 + DCW 16589 + DCW -11700 + DCW -6102 + DCW 23366 + DCW -11679 + DCW -12132 + DCW 22477 + DCW -18841 + DCW 2550 + DCW 10048 + DCW -6823 + DCW 7502 + DCW -1166 + DCW 9234 + DCW -13864 + DCW -9263 + DCW 8848 + DCW -5632 + DCW 956 + DCW 2835 + DCW 3535 + DCW -1241 + DCW 4932 + DCW -3715 + DCW -2235 + DCW 6211 + DCW -9477 + DCW -4445 + DCW -12195 + DCW 9863 + DCW 15617 + DCW -14069 + DCW 5405 + DCW 9632 + DCW 323 + DCW -13247 + DCW -654 + DCW 14946 + DCW -12803 + DCW 1497 + DCW 2566 + DCW 1598 + DCW 9611 + DCW -14388 + DCW -1367 + DCW 14761 + DCW -1287 + DCW -26503 + DCW 18472 + DCW 18917 + DCW -25589 + DCW 16162 + DCW -19114 + DCW -4919 + DCW 20200 + DCW -18250 + DCW 11327 + DCW -1912 + DCW 3439 + DCW -21051 + DCW 6680 + DCW 32767 + DCW -20917 + DCW 13998 + DCW -12555 + DCW 566 + DCW 1241 + DCW -9293 + DCW 21731 + DCW -17290 + DCW 9033 + DCW -8106 + DCW -1065 + DCW 8458 + DCW -20229 + DCW 13398 + DCW -3208 + DCW -3518 + DCW 5456 + DCW -1208 + DCW -11159 + DCW 11289 + DCW 6303 + DCW -20586 + DCW 31736 + DCW -17302 + DCW -9909 + DCW 27702 + DCW -15419 + DCW 2311 + DCW -4344 + DCW -1103 + DCW -12170 + DCW 11348 + DCW 3317 + DCW -17634 + DCW 19781 + DCW -3745 + DCW -4064 + DCW -1774 + DCW 130 + DCW -6504 + DCW 3313 + DCW 2717 + DCW -7599 + DCW 14459 + DCW -3984 + DCW -1807 + DCW 1635 + DCW -2533 + DCW 2495 + DCW -6928 + DCW 2093 + DCW 1887 + DCW -2873 + DCW 12186 + DCW -13369 + DCW 2944 + DCW 13570 + DCW -16267 + DCW -872 + DCW -1522 + DCW -3451 + DCW -4495 + DCW 16216 + DCW 2449 + DCW 994 + DCW 10337 + DCW -17017 + DCW 356 + DCW -315 + DCW -2185 + DCW -4927 + DCW 2776 + DCW -1577 + DCW -4990 + DCW 12102 + DCW -9045 + DCW 4047 + DCW 4152 + DCW -23710 + DCW 4516 + DCW 9410 + DCW -12329 + DCW 3502 + DCW 11037 + DCW -8840 + DCW -2252 + DCW 15260 + DCW -19709 + DCW 3321 + DCW 16199 + DCW -20921 + DCW 3741 + DCW 9159 + DCW -2504 + DCW -3753 + DCW 10626 + DCW -2969 + DCW -5661 + DCW 4890 + DCW -11423 + DCW 11180 + DCW 4487 + DCW -11947 + DCW 4894 + DCW 3476 + DCW -6517 + DCW 10257 + DCW 5724 + DCW -14216 + DCW 10270 + DCW -2264 + DCW -14933 + DCW 18489 + DCW 990 + DCW -13281 + DCW 4906 + DCW 5200 + DCW -2814 + DCW -1669 + DCW 5632 + DCW -2306 + DCW -3753 + DCW -8655 + DCW 2088 + DCW 2659 + DCW -2537 + DCW 12392 + DCW -5414 + DCW 981 + DCW -2462 + DCW -3539 + DCW 2114 + DCW -2315 + DCW 8618 + DCW -17256 + DCW -1598 + DCW 7381 + DCW 92 + DCW 1631 + DCW -6722 + DCW 11696 + DCW -12874 + DCW -5758 + DCW 12132 + DCW -3892 + DCW 2273 + DCW 6596 + DCW -705 + DCW -8052 + DCW 15294 + DCW -11197 + DCW -8031 + DCW 18594 + DCW -14581 + DCW 2487 + DCW -1254 + DCW 4948 + DCW 11306 + DCW -7297 + DCW 1661 + DCW -1912 + DCW 5267 + DCW -9251 + DCW 3640 + DCW 7909 + DCW -14832 + DCW 4613 + DCW 2374 + DCW -8286 + DCW 4508 + DCW 7796 + DCW -14887 + DCW 4726 + DCW 5619 + DCW -16283 + DCW 14912 + DCW -2881 + DCW -117 + DCW 4579 + DCW -14514 + DCW 15029 + DCW -6127 + DCW 3774 + DCW 12446 + DCW -12933 + DCW 4051 + DCW -7079 + DCW 1254 + DCW 3980 + DCW -3233 + DCW 11561 + DCW 948 + DCW -13914 + DCW 5590 + DCW 7511 + DCW -13797 + DCW 15415 + DCW -5401 + DCW -14736 + DCW 12346 + DCW -5301 + DCW 7854 + DCW -2751 + DCW -1971 + DCW -440 + DCW -7838 + DCW 8240 + DCW -6026 + DCW 5548 + DCW 2554 + DCW 2738 + DCW 4110 + DCW -15986 + DCW 5246 + DCW 7330 + DCW -14941 + DCW 210 + DCW 10215 + DCW -15663 + DCW 12220 + DCW 8110 + DCW -10714 + DCW 13734 + DCW -14954 + DCW 3183 + DCW 4240 + DCW -8144 + DCW 16866 + DCW -9809 + DCW -4323 + DCW 13302 + DCW -4793 + DCW -4982 + DCW 9876 + DCW -4399 + DCW -4911 + DCW 3338 + DCW -403 + DCW 5162 + DCW -9532 + DCW 2613 + DCW 3749 + DCW -6458 + DCW 2684 + DCW -1916 + DCW 1736 + DCW 256 + DCW 7569 + DCW -1103 + DCW -17982 + DCW 9272 + DCW 6164 + DCW -15084 + DCW 14929 + DCW 3233 + DCW -19080 + DCW 10501 + DCW -3451 + DCW -2663 + DCW 8026 + DCW -11431 + DCW 7364 + DCW -4034 + DCW -5347 + DCW 16317 + DCW -7984 + DCW -243 + DCW 2914 + DCW -11406 + DCW -1124 + DCW 2344 + DCW 8215 + DCW 2449 + DCW -3611 + DCW 11650 + DCW -6504 + DCW -11532 + DCW 20330 + DCW -5766 + DCW -8307 + DCW 8211 + DCW -8198 + DCW 6458 + DCW 2361 + DCW 6185 + DCW 3640 + DCW -15990 + DCW 3577 + DCW -2495 + DCW -5443 + DCW 10647 + DCW -3434 + DCW -4189 + DCW 4118 + DCW -3237 + DCW 3535 + DCW -5087 + DCW -193 + DCW 11004 + DCW -21886 + DCW 449 + DCW 3791 + DCW -16258 + DCW 18149 + DCW 2021 + DCW -8291 + DCW -231 + DCW -8244 + DCW 7225 + DCW 4382 + DCW -809 + DCW 6546 + DCW -7376 + DCW -4512 + DCW 5766 + DCW -4122 + DCW -281 + DCW 1547 + DCW 910 + DCW -2680 + DCW -7108 + DCW 10131 + DCW 3174 + DCW -10408 + DCW 10823 + DCW -5611 + DCW -10467 + DCW 16074 + DCW -956 + DCW 1866 + DCW 1589 + DCW -4789 + DCW -348 + DCW -2743 + DCW 15575 + DCW 2847 + DCW -7116 + DCW 9553 + DCW -5015 + DCW -4223 + DCW 10706 + DCW -6752 + DCW 1459 + DCW -377 + DCW -15130 + DCW 12920 + DCW 2483 + DCW 46 + DCW 15126 + DCW -12639 + DCW -10446 + DCW 3233 + DCW -2386 + DCW 1942 + DCW 9687 + DCW 4235 + DCW -12564 + DCW -2185 + DCW 12442 + DCW -4592 + DCW -730 + DCW 4051 + DCW -14120 + DCW 2382 + DCW 6424 + DCW -3946 + DCW 7460 + DCW -2814 + DCW -2768 + DCW -1757 + DCW -4726 + DCW 5343 + DCW -5137 + DCW -1837 + DCW -407 + DCW -3606 + DCW 8303 + DCW -5217 + DCW 3548 + DCW 9880 + DCW -20695 + DCW 1925 + DCW 9632 + DCW -12597 + DCW 12677 + DCW 4848 + DCW -13797 + DCW 6588 + DCW 2059 + DCW -6869 + DCW 6324 + DCW 2088 + DCW -1614 + DCW 742 + DCW -2382 + DCW 4210 + DCW 71 + DCW -210 + DCW 3443 + DCW -1078 + DCW -3934 + DCW -3594 + DCW 8005 + DCW -319 + DCW -5493 + DCW 7682 + DCW -9066 + DCW -6169 + DCW 10241 + DCW -3921 + DCW -164 + DCW 5171 + DCW 897 + DCW -373 + DCW -4659 + DCW 151 + DCW 650 + DCW -3757 + DCW 9863 + DCW 7678 + DCW -5879 + DCW 5158 + DCW -4433 + DCW -5275 + DCW -264 + DCW -4680 + DCW 2696 + DCW -1724 + DCW 7309 + DCW 5946 + DCW -5821 + DCW -1975 + DCW 910 + DCW -482 + DCW -1677 + DCW 3070 + DCW 717 + DCW -4793 + DCW 1744 + DCW 3791 + DCW -1866 + DCW 2826 + DCW 1220 + DCW -3783 + DCW -776 + DCW -4495 + DCW -751 + DCW 2873 + DCW -2734 + DCW 8936 + DCW -2160 + DCW -9507 + DCW 9297 + DCW -4843 + DCW -4537 + DCW 6248 + DCW -176 + DCW -3757 + DCW 2864 + DCW 5175 + DCW -4017 + DCW 1044 + DCW -1090 + DCW -3166 + DCW -143 + DCW 1568 + DCW 1170 + DCW 8 + DCW 4177 + DCW -2944 + DCW -3133 + DCW -3028 + DCW 5187 + DCW 5200 + DCW -8697 + DCW 5883 + DCW -1166 + DCW -7053 + DCW 692 + DCW 2709 + DCW 7351 + DCW -7984 + DCW 88 + DCW 3636 + DCW -923 + DCW 5393 + DCW 2365 + DCW -7733 + DCW -4244 + DCW 6043 + DCW -8827 + DCW 3699 + DCW 5552 + DCW -1598 + DCW -5045 + DCW -3183 + DCW 8253 + DCW -5833 + DCW 470 + DCW 6328 + DCW 3434 + DCW -9142 + DCW 730 + DCW 583 + DCW -1447 + DCW 12027 + DCW -5833 + DCW 1786 + DCW -11029 + DCW -2147 + DCW 7909 + DCW -8253 + DCW 8995 + DCW -805 + DCW -3174 + DCW 3074 + DCW -55 + DCW -1355 + DCW -1967 + DCW 3636 + DCW -2491 + DCW 5401 + DCW -1556 + DCW -3904 + DCW 6542 + DCW -3279 + DCW 3229 + DCW -6047 + DCW -2420 + DCW 4114 + DCW 927 + DCW 1468 + DCW -2181 + DCW 3573 + DCW -9649 + DCW 2134 + DCW 4621 + DCW -956 + DCW 1623 + DCW -7351 + DCW 3900 + DCW 310 + DCW 1979 + DCW 2776 + DCW -3707 + DCW 1136 + DCW -566 + DCW 2080 + DCW -2558 + DCW 4563 + DCW 814 + DCW -7506 + DCW 4286 + DCW -2688 + DCW 1401 + DCW 1082 + DCW 3212 + DCW 2244 + DCW -1925 + DCW -814 + DCW -2340 + DCW 4986 + DCW -7825 + DCW 7183 + DCW 1996 + DCW -6055 + DCW 7938 + DCW -6798 + DCW 709 + DCW 1451 + DCW -1879 + DCW -1308 + DCW -159 + DCW 1002 + DCW -2550 + DCW 4843 + DCW 2294 + DCW 2231 + DCW -7997 + DCW -5066 + DCW 4827 + DCW -2466 + DCW 6462 + DCW -4315 + DCW -671 + DCW -277 + DCW 1162 + DCW 10194 + DCW -9226 + DCW 3154 + DCW -7414 + DCW -4043 + DCW 8223 + DCW 2575 + DCW 6349 + DCW -7636 + DCW 268 + DCW -113 + DCW -2671 + DCW -2239 + DCW 6362 + DCW 117 + DCW -5137 + DCW 8270 + DCW -8718 + DCW 4894 + DCW 1162 + DCW -4835 + DCW 7158 + DCW -9477 + DCW 558 + DCW -134 + DCW 1581 + DCW 7611 + DCW -876 + DCW -5053 + DCW -5254 + DCW 6127 + DCW -2562 + DCW 4286 + DCW 1342 + DCW -1036 + DCW 646 + DCW -6055 + DCW 6013 + DCW -3992 + DCW 6718 + DCW -2608 + DCW -4697 + DCW 5078 + DCW -5808 + DCW 9834 + DCW -2290 + DCW -260 + DCW 210 + DCW -13713 + DCW 4483 + DCW 8337 + DCW 2151 + DCW -457 + DCW -268 + DCW -4621 + DCW 1212 + DCW 839 + DCW -3099 + DCW 6533 + DCW -10823 + DCW 5691 + DCW 2621 + DCW -2889 + DCW 11616 + DCW -12325 + DCW 956 + DCW -1493 + DCW -138 + DCW 667 + DCW -348 + DCW 8228 + DCW -164 + DCW 369 + DCW -5473 + DCW 2126 + DCW -4667 + DCW 1942 + DCW 2432 + DCW -2634 + DCW 3263 + DCW -7322 + DCW 8924 + DCW 2285 + DCW -2206 + DCW 3149 + DCW -15306 + DCW 7829 + DCW -1640 + DCW -8 + DCW 8836 + DCW -7896 + DCW 9574 + DCW -13818 + DCW 5603 + DCW -331 + DCW 6315 + DCW 3409 + DCW -18900 + DCW 16606 + DCW -12648 + DCW 16820 + DCW -2038 + DCW -3154 + DCW 11826 + DCW -24704 + DCW 5749 + DCW -445 + DCW 8400 + DCW 4500 + DCW -461 + DCW -5883 + DCW -8207 + DCW 4990 + DCW 176 + DCW 15151 + DCW -1543 + DCW -7926 + DCW -5045 + DCW -4084 + DCW 3518 + DCW 6747 + DCW 8718 + DCW -4064 + DCW -344 + DCW -14421 + DCW -1476 + DCW 7540 + DCW 2592 + DCW 15700 + DCW -10761 + DCW -5561 + DCW -2923 + DCW 2478 + DCW 9721 + DCW 5242 + DCW -277 + DCW -11209 + DCW -1120 + DCW -9469 + DCW 6030 + DCW 5821 + DCW 2969 + DCW 3497 + DCW -10140 + DCW -159 + DCW -5615 + DCW 4701 + DCW 8060 + DCW 2139 + DCW 289 + DCW -12010 + DCW -2856 + DCW -1631 + DCW 7192 + DCW 7796 + DCW -2885 + DCW 3275 + DCW -12434 + DCW 575 + DCW 4374 + DCW 1652 + DCW 7615 + DCW -1526 + DCW -1833 + DCW -9733 + DCW 4357 + DCW -6471 + DCW 6500 + DCW 14300 + DCW -10987 + DCW 1535 + DCW -7863 + DCW -2696 + DCW 5556 + DCW 6840 + DCW 5359 + DCW -6034 + DCW -667 + DCW -8156 + DCW 3028 + DCW 4957 + DCW 2634 + DCW 5984 + DCW -7217 + DCW 1053 + DCW -7972 + DCW 1526 + DCW 7435 + DCW 2826 + DCW 5883 + DCW -9289 + DCW -3619 + DCW -5305 + DCW 5057 + DCW 6907 + DCW 4588 + DCW -327 + DCW -11725 + DCW 319 + DCW -4252 + DCW 5514 + DCW 9997 + DCW -465 + DCW -1778 + DCW -6957 + DCW -5053 + DCW -1015 + DCW 7670 + DCW 5347 + DCW 1111 + DCW -2940 + DCW -12430 + DCW 579 + DCW 4227 + DCW 8110 + DCW 5460 + DCW -5808 + DCW -7938 + DCW -7511 + DCW 5133 + DCW 3980 + DCW 10853 + DCW 612 + DCW -7846 + DCW -4885 + DCW -7242 + DCW 7167 + DCW 3338 + DCW 7804 + DCW -1283 + DCW -8584 + DCW -3795 + DCW -2944 + DCW 9146 + DCW 3380 + DCW 5946 + DCW -7662 + DCW -10773 + DCW 1422 + DCW 38 + DCW 12996 + DCW 3481 + DCW -721 + DCW -8249 + DCW -6907 + DCW 4806 + DCW 1132 + DCW 10165 + DCW -549 + DCW -2210 + DCW -5850 + DCW -4755 + DCW 5548 + DCW 1153 + DCW 9410 + DCW -1988 + DCW -5615 + DCW -4839 + DCW -3887 + DCW 6978 + DCW 3577 + DCW 6907 + DCW -4118 + DCW -4827 + DCW -4412 + DCW -1824 + DCW 10773 + DCW -428 + DCW 3292 + DCW -3091 + DCW -5124 + DCW -1883 + DCW 1174 + DCW 4751 + DCW 168 + DCW 7343 + DCW -7817 + DCW -3057 + DCW 1258 + DCW -3422 + DCW 7049 + DCW 3808 + DCW -549 + DCW -5363 + DCW -2814 + DCW -1069 + DCW 4269 + DCW 5351 + DCW -1833 + DCW 772 + DCW -5452 + DCW -1535 + DCW 1984 + DCW 96 + DCW 6546 + DCW -3187 + DCW -143 + DCW -3275 + DCW -2772 + DCW 2659 + DCW 604 + DCW 5309 + DCW -3443 + DCW -2629 + DCW -2625 + DCW 3485 + DCW -935 + DCW 369 + DCW 4403 + DCW -1040 + DCW 1816 + DCW -5359 + DCW 1069 + DCW -1245 + DCW 3552 + DCW 2227 + DCW -7037 + DCW 3770 + DCW -2420 + DCW -3112 + DCW 7162 + DCW 663 + DCW -3451 + DCW -159 + DCW -1338 + DCW -1258 + DCW 4277 + DCW 377 + DCW -549 + DCW 2394 + DCW -4751 + DCW 1266 + DCW -88 + DCW 3795 + DCW 2541 + DCW -34 + DCW -264 + DCW -5389 + DCW 2432 + DCW -407 + DCW 5934 + DCW 117 + DCW -2004 + DCW -2348 + DCW -4877 + DCW 3573 + DCW 1128 + DCW 4227 + DCW 1099 + DCW -5481 + DCW -5162 + DCW 507 + DCW 3200 + DCW 4575 + DCW 3711 + DCW -5556 + DCW -4424 + DCW 1178 + DCW -1501 + DCW 6131 + DCW 1401 + DCW -2768 + DCW -600 + DCW -3388 + DCW 226 + DCW 923 + DCW 5959 + DCW -2004 + DCW 1673 + DCW -3024 + DCW -5800 + DCW 4298 + DCW -348 + DCW 4483 + DCW 1107 + DCW -3053 + DCW -3141 + DCW -1476 + DCW 2516 + DCW 3711 + DCW 335 + DCW -2634 + DCW -3179 + DCW -1820 + DCW 2009 + DCW 5103 + DCW 214 + DCW -642 + DCW 17 + DCW -2994 + DCW 939 + DCW -960 + DCW 3351 + DCW 1950 + DCW 1208 + DCW -2818 + DCW -3011 + DCW 2151 + DCW -470 + DCW 2592 + DCW 382 + DCW -1392 + DCW -2608 + DCW -541 + DCW -763 + DCW 3439 + DCW 2151 + DCW -843 + DCW -952 + DCW -1975 + DCW 432 + DCW -252 + DCW 1329 + DCW 1132 + DCW 830 + DCW -1786 + DCW -784 + DCW -1757 + DCW 1652 + DCW 2973 + DCW 533 + DCW -486 + DCW -1115 + DCW -2717 + DCW -4 + DCW 3124 + DCW -1069 + DCW 2239 + DCW -1396 + DCW -927 + DCW -985 + DCW 1162 + DCW 159 + DCW 562 + DCW 2613 + DCW -3401 + DCW 8 + DCW -2080 + DCW 218 + DCW 3552 + DCW 1329 + DCW 252 + DCW -923 + DCW -3770 + DCW -386 + DCW 2420 + DCW 2013 + DCW 1879 + DCW -839 + DCW -1963 + DCW -579 + DCW -1254 + DCW 147 + DCW 4152 + DCW -700 + DCW 445 + DCW -1573 + DCW -2046 + DCW 1346 + DCW 3128 + DCW 1799 + DCW -197 + DCW -2956 + DCW -4781 + DCW 1837 + DCW 1996 + DCW 3938 + DCW 1153 + DCW -3489 + DCW -2692 + DCW 1371 + DCW -495 + DCW 2227 + DCW 3611 + DCW -3170 + DCW 151 + DCW -1401 + DCW -2139 + DCW 2424 + DCW 3133 + DCW 122 + DCW 201 + DCW -3191 + DCW -3682 + DCW 1195 + DCW 3346 + DCW 2675 + DCW 734 + DCW -2990 + DCW -1535 + DCW 960 + DCW -298 + DCW 2856 + DCW -1015 + DCW -411 + DCW -1115 + DCW -151 + DCW 1346 + DCW 361 + DCW 1166 + DCW 369 + DCW 721 + DCW -3812 + DCW -1732 + DCW 688 + DCW 2634 + DCW 4126 + DCW -348 + DCW -3325 + DCW -1120 + DCW -1434 + DCW 1225 + DCW 3325 + DCW -746 + DCW -1786 + DCW -1053 + DCW -633 + DCW 797 + DCW 2109 + DCW 189 + DCW 1610 + DCW -478 + DCW -1304 + DCW -1241 + DCW -315 + DCW 654 + DCW 2558 + DCW 1367 + DCW -2378 + DCW -1589 + DCW -2441 + DCW 3590 + DCW 2856 + DCW -92 + DCW -2084 + DCW -1061 + DCW 415 + DCW 1011 + DCW 432 + DCW -2290 + DCW -143 + DCW -4592 + DCW -4789 + DCW -130 + DCW 1552 + DCW 4164 + DCW 14208 + DCW 12434 + DCW 7733 + DCW 1728 + DCW -10396 + DCW -6307 + DCW -7259 + DCW -8437 + DCW -4420 + DCW -2680 + DCW 1854 + DCW 2688 + DCW 6911 + DCW 7611 + DCW -3304 + DCW -3128 + DCW 0 + DCW -2474 + DCW -25 + DCW 5204 + DCW -3837 + DCW -6596 + DCW 4495 + DCW -1703 + DCW 2000 + DCW 3384 + DCW -1774 + DCW 2269 + DCW 4131 + DCW -2625 + DCW -6022 + DCW 1178 + DCW -3309 + DCW 2281 + DCW 4013 + DCW -2789 + DCW 1006 + DCW 298 + DCW 1954 + DCW 881 + DCW -839 + DCW -2114 + DCW -4852 + DCW -2709 + DCW 1061 + DCW 2034 + DCW 3585 + DCW 5774 + DCW -1971 + DCW 4 + DCW -1078 + DCW -512 + DCW -2600 + DCW -1006 + DCW -2613 + DCW -4252 + DCW 8458 + DCW -7074 + DCW 15009 + DCW -327 + DCW -11809 + DCW 7846 + DCW -9213 + DCW 134 + DCW -1325 + DCW 1770 + DCW -839 + DCW 7498 + DCW 6466 + DCW -2231 + DCW -646 + DCW -8291 + DCW 1874 + DCW 9666 + DCW -11956 + DCW -5049 + DCW 3103 + DCW -6253 + DCW 18829 + DCW -415 + DCW -1623 + DCW 1803 + DCW -4315 + DCW -6974 + DCW -3590 + DCW -587 + DCW -1900 + DCW 12396 + DCW -4365 + DCW 8312 + DCW 2332 + DCW -3929 + DCW -2206 + DCW -3724 + DCW -2168 + DCW -1455 + DCW -717 + DCW -4470 + DCW 13654 + DCW 4072 + DCW -80 + DCW 587 + DCW -7733 + DCW -3158 + DCW 4651 + DCW -3346 + DCW 696 + DCW 2332 + DCW -2197 + DCW 4164 + DCW 570 + DCW -2042 + DCW 1619 + DCW 0 + DCW -3975 + DCW 2554 + DCW -6068 + DCW 2864 + DCW 5347 + DCW 2239 + DCW 3137 + DCW -2348 + DCW -6819 + DCW -2445 + DCW 5967 + DCW -2545 + DCW 5816 + DCW -474 + DCW -1812 + DCW 3917 + DCW 528 + DCW -2868 + DCW 1082 + DCW -918 + DCW -1501 + DCW 1719 + DCW -4458 + DCW 1413 + DCW 1338 + DCW 1954 + DCW -1040 + DCW 2499 + DCW -3581 + DCW 226 + DCW 1895 + DCW -969 + DCW 2420 + DCW -2202 + DCW 231 + DCW -1057 + DCW 1128 + DCW -2344 + DCW 1006 + DCW -1698 + DCW 4583 + DCW 147 + DCW -1979 + DCW 1916 + DCW -4365 + DCW 3166 + DCW 1027 + DCW -2315 + DCW -3460 + DCW 2592 + DCW 4097 + DCW 3325 + DCW -2365 + DCW -3007 + DCW -3154 + DCW -394 + DCW 315 + DCW -2428 + DCW 4122 + DCW 2617 + DCW 2483 + DCW 2147 + DCW -4793 + DCW -4596 + DCW 3246 + DCW -2055 + DCW 3996 + DCW -180 + DCW -4198 + DCW 2093 + DCW 1841 + DCW 2923 + DCW 608 + DCW -1329 + DCW -4630 + DCW -3317 + DCW -1095 + DCW 3497 + DCW 1908 + DCW 3216 + DCW 1308 + DCW 671 + DCW -3694 + DCW -1975 + DCW -2751 + DCW -1199 + DCW 7280 + DCW -1778 + DCW 923 + DCW -906 + DCW 424 + DCW 2839 + DCW 1594 + DCW -3103 + DCW -5322 + DCW -382 + DCW 1145 + DCW 2009 + DCW 5099 + DCW 2017 + DCW -2004 + DCW 168 + DCW -4462 + DCW -2227 + DCW -2780 + DCW 256 + DCW 545 + DCW 3887 + DCW 1673 + DCW -684 + DCW 2407 + DCW -168 + DCW 1199 + DCW -5062 + DCW -2508 + DCW -1229 + DCW 361 + DCW 5213 + DCW 2076 + DCW -1690 + DCW 3774 + DCW -3510 + DCW -784 + DCW 1078 + DCW -6957 + DCW 1841 + DCW 2432 + DCW 2218 + DCW -1199 + DCW 143 + DCW -960 + DCW 3552 + DCW -545 + DCW -3720 + DCW 1132 + DCW -893 + DCW 1334 + DCW 3795 + DCW 1635 + DCW -5355 + DCW 2566 + DCW -3233 + DCW -814 + DCW 2973 + DCW -3426 + DCW -621 + DCW 2160 + DCW -445 + DCW 449 + DCW 1212 + DCW -3510 + DCW 4764 + DCW -2449 + DCW 1216 + DCW 4168 + DCW -4927 + DCW -566 + DCW 4143 + DCW -1581 + DCW -1874 + DCW 4705 + DCW -7129 + DCW -302 + DCW 6844 + DCW -2025 + DCW -1338 + DCW 1724 + DCW 2059 + DCW -1099 + DCW -6219 + DCW 243 + DCW 4089 + DCW -3036 + DCW 2562 + DCW 5200 + DCW -5015 + DCW -3254 + DCW 7112 + DCW -2743 + DCW -1552 + DCW 1623 + DCW -4613 + DCW 562 + DCW 3384 + DCW 5175 + DCW -512 + DCW -4223 + DCW -3711 + DCW 5145 + DCW -4621 + DCW -4177 + DCW 9721 + DCW -5363 + DCW 1296 + DCW 7766 + DCW -2889 + DCW -4428 + DCW 252 + DCW -491 + DCW 2583 + DCW -3124 + DCW -1027 + DCW 5091 + DCW -5200 + DCW 4235 + DCW 6663 + DCW -3598 + DCW -8093 + DCW 2017 + DCW 1187 + DCW -3967 + DCW 2273 + DCW -92 + DCW 7091 + DCW -386 + DCW -4122 + DCW 4630 + DCW -7750 + DCW 1958 + DCW 3707 + DCW -3757 + DCW -667 + DCW -1191 + DCW 6513 + DCW -1807 + DCW 2927 + DCW -4206 + DCW -2956 + DCW -709 + DCW 445 + DCW 7993 + DCW -9758 + DCW 4286 + DCW 1942 + DCW 705 + DCW 2264 + DCW -3200 + DCW -1132 + DCW -2067 + DCW 3174 + DCW -3254 + DCW 1552 + DCW -2025 + DCW 923 + DCW 6500 + DCW -4386 + DCW -2197 + DCW -2189 + DCW 4827 + DCW 2021 + DCW -1245 + DCW 3430 + DCW -9318 + DCW 1233 + DCW 1363 + DCW 3099 + DCW -881 + DCW -7561 + DCW 6395 + DCW 1040 + DCW 4005 + DCW -2692 + DCW -1552 + DCW -3284 + DCW 1874 + DCW 5301 + DCW -6055 + DCW -1237 + DCW -4147 + DCW 6911 + DCW 2722 + DCW -499 + DCW 2235 + DCW -8387 + DCW 1518 + DCW 4915 + DCW -1761 + DCW -3426 + DCW 38 + DCW 2164 + DCW 2877 + DCW 4185 + DCW -8324 + DCW 1862 + DCW -1816 + DCW -512 + DCW 8710 + DCW -7737 + DCW 5506 + DCW -3770 + DCW 5238 + DCW -2160 + DCW -6198 + DCW 5020 + DCW -5233 + DCW 6118 + DCW -11721 + DCW 14245 + DCW -1522 + DCW -4936 + DCW 12715 + DCW -13189 + DCW 7691 + DCW -11637 + DCW 306 + DCW 6731 + DCW -524 + DCW 92 + DCW -3099 + DCW 15080 + DCW -5640 + DCW 2051 + DCW -16275 + DCW 2445 + DCW 9414 + DCW -12400 + DCW 20192 + DCW -13646 + DCW 6332 + DCW -1329 + DCW -4722 + DCW 6441 + DCW -16321 + DCW 16028 + DCW -13323 + DCW 14929 + DCW -80 + DCW -9431 + DCW 9037 + DCW -12270 + DCW 15013 + DCW -11742 + DCW 7263 + DCW -8538 + DCW 4416 + DCW 3015 + DCW -9171 + DCW 15814 + DCW -19336 + DCW 20716 + DCW -5414 + DCW -4441 + DCW -965 + DCW -8249 + DCW 13495 + DCW -12975 + DCW 7628 + DCW -13046 + DCW 6185 + DCW 8056 + DCW 9381 + DCW 19479 + DCW -28570 + DCW -1694 + DCW -12920 + DCW 1682 + DCW 15713 + DCW 2835 + DCW 12371 + DCW -17810 + DCW 3481 + DCW -13851 + DCW 4906 + DCW 9280 + DCW -7272 + DCW 13369 + DCW -18036 + DCW 10345 + DCW -1233 + DCW 474 + DCW 1577 + DCW -4382 + DCW -3070 + DCW -8194 + DCW 19378 + DCW -17214 + DCW 9628 + DCW -3007 + DCW -1996 + DCW 20313 + DCW -22305 + DCW 10291 + DCW -9934 + DCW -5196 + DCW 13855 + DCW 2940 + DCW 4638 + DCW -16153 + DCW 2948 + DCW -3195 + DCW 15466 + DCW 1711 + DCW -8014 + DCW 5213 + DCW -22305 + DCW 11700 + DCW -1044 + DCW 6584 + DCW -1610 + DCW -5074 + DCW 11205 + DCW -4433 + DCW 9075 + DCW -16166 + DCW 6202 + DCW -5477 + DCW 851 + DCW 9398 + DCW -18309 + DCW 9352 + DCW 2118 + DCW 13570 + DCW 2566 + DCW -10899 + DCW -8731 + DCW -13654 + DCW 11985 + DCW 3044 + DCW 4231 + DCW 1053 + DCW -3376 + DCW 12509 + DCW -5913 + DCW 1724 + DCW -5565 + DCW -8630 + DCW 927 + DCW 1707 + DCW 2537 + DCW -1879 + DCW 14677 + DCW 755 + DCW 4269 + DCW -13734 + DCW -8257 + DCW 4290 + DCW -6873 + DCW 11855 + DCW -4563 + DCW 239 + DCW -2319 + DCW 8555 + DCW 7112 + DCW -9733 + DCW -17 + DCW -8685 + DCW 4231 + DCW -3359 + DCW 386 + DCW 9628 + DCW -2776 + DCW 10786 + DCW -2143 + DCW -4361 + DCW -8379 + DCW -6479 + DCW 9347 + DCW -2738 + DCW 7200 + DCW -4391 + DCW 2122 + DCW 6026 + DCW -2919 + DCW -4131 + DCW -6563 + DCW 3824 + DCW -5192 + DCW 6789 + DCW -5384 + DCW 7313 + DCW 1749 + DCW -5892 + DCW 19135 + DCW -16959 + DCW -5510 + DCW 2302 + DCW -5737 + DCW 11385 + DCW -1573 + DCW -2164 + DCW 6429 + DCW -2675 + DCW -985 + DCW 4265 + DCW -7959 + DCW -6018 + DCW 9066 + DCW -8060 + DCW 10597 + DCW 3355 + DCW -19718 + DCW 17835 + DCW -2671 + DCW 700 + DCW 3871 + DCW -9695 + DCW -4407 + DCW -17 + DCW 872 + DCW 5464 + DCW 9574 + DCW -16841 + DCW 9192 + DCW 75 + DCW -9293 + DCW 8702 + DCW -2285 + DCW -5301 + DCW 7460 + DCW -1518 + DCW -9922 + DCW 15097 + DCW -5896 + DCW -2294 + DCW 10790 + DCW -12266 + DCW -474 + DCW 8110 + DCW -8748 + DCW 12337 + DCW -3690 + DCW -14430 + DCW 12643 + DCW -5309 + DCW -952 + DCW 14585 + DCW -8685 + DCW -5921 + DCW 9779 + DCW -15629 + DCW 6991 + DCW 5871 + DCW -7972 + DCW 8026 + DCW 92 + DCW -5221 + DCW 3590 + DCW 734 + DCW -7267 + DCW 10287 + DCW -11838 + DCW -2654 + DCW 13671 + DCW -7804 + DCW 3787 + DCW 14581 + DCW -15621 + DCW -5036 + DCW 8802 + DCW -14556 + DCW 10022 + DCW 4579 + DCW -6739 + DCW 7842 + DCW -4890 + DCW -4282 + DCW 13738 + DCW -9037 + DCW -1648 + DCW 7246 + DCW -15206 + DCW 4118 + DCW 11834 + DCW -7339 + DCW 5590 + DCW 6580 + DCW -19445 + DCW 8328 + DCW -4399 + DCW -1124 + DCW 9020 + DCW -12375 + DCW 6349 + DCW 3636 + DCW -2143 + DCW 2462 + DCW 10123 + DCW -14652 + DCW 1048 + DCW 7267 + DCW -18418 + DCW 11847 + DCW 2994 + DCW -3564 + DCW 13461 + DCW -6991 + DCW -6223 + DCW 2852 + DCW -6726 + DCW 6890 + DCW 4227 + DCW -12090 + DCW 2185 + DCW 8584 + DCW -10190 + DCW 11272 + DCW 2722 + DCW -16896 + DCW 9867 + DCW -923 + DCW 1044 + DCW 3908 + DCW -6596 + DCW -696 + DCW 5242 + DCW -5259 + DCW 2059 + DCW 5456 + DCW -11436 + DCW 10786 + DCW 340 + DCW -12367 + DCW 11209 + DCW -906 + DCW -7100 + DCW 10660 + DCW -4906 + DCW -8177 + DCW 8236 + DCW -2722 + DCW 5540 + DCW 2583 + DCW -15776 + DCW 8106 + DCW 2483 + DCW -3632 + DCW 13419 + DCW -7603 + DCW -8295 + DCW 4772 + DCW -595 + DCW -2852 + DCW 6970 + DCW -3355 + DCW -4697 + DCW 8651 + DCW -9758 + DCW 2227 + DCW 6701 + DCW -7691 + DCW 9670 + DCW -5682 + DCW -11318 + DCW 12954 + DCW -4588 + DCW 2214 + DCW 10794 + DCW -13558 + DCW -6429 + DCW 5623 + DCW 1614 + DCW 1187 + DCW 7435 + DCW -8517 + DCW -1635 + DCW 4399 + DCW -8664 + DCW 10421 + DCW -2856 + DCW -3711 + DCW 11285 + DCW -9851 + DCW -6655 + DCW 9305 + DCW -1296 + DCW 1799 + DCW 7116 + DCW -13629 + DCW -1535 + DCW 7381 + DCW -1786 + DCW 7137 + DCW -5137 + DCW -8005 + DCW 8391 + DCW -2550 + DCW 1602 + DCW 8349 + DCW -11566 + DCW -3338 + DCW 7586 + DCW -3476 + DCW 449 + DCW 4940 + DCW -10282 + DCW 6039 + DCW 6588 + DCW -13260 + DCW 4755 + DCW -3598 + DCW -1698 + DCW 7590 + DCW -4311 + DCW -2646 + DCW 6726 + DCW 11377 + DCW 2868 + DCW -3170 + DCW -10601 + DCW 667 + DCW -3657 + DCW -5347 + DCW 13453 + DCW -6550 + DCW -4235 + DCW 2512 + DCW -876 + DCW 6475 + DCW 1313 + DCW -3539 + DCW -55 + DCW 2759 + DCW -12539 + DCW 7221 + DCW 3858 + DCW -8685 + DCW 18896 + DCW -8517 + DCW -10102 + DCW 11423 + DCW -7125 + DCW -1854 + DCW 9913 + DCW -9800 + DCW -3460 + DCW 9897 + DCW -5309 + DCW 7997 + DCW 1002 + DCW -13977 + DCW 9846 + DCW 1086 + DCW -14451 + DCW 8140 + DCW 1195 + DCW -4877 + DCW 11612 + DCW -6257 + DCW -205 + DCW 12903 + DCW -13080 + DCW -3149 + DCW 5863 + DCW -10387 + DCW 5070 + DCW 4064 + DCW -3019 + DCW 11398 + DCW -2994 + DCW -18292 + DCW 12899 + DCW 4303 + DCW -12534 + DCW 11712 + DCW -8081 + DCW -59 + DCW 12572 + DCW -9536 + DCW 3996 + DCW 4500 + DCW -10203 + DCW 2164 + DCW 428 + DCW -9100 + DCW 9310 + DCW 5179 + DCW -6894 + DCW 8190 + DCW -5267 + DCW -8806 + DCW 11461 + DCW -5598 + DCW -608 + DCW 6567 + DCW -9242 + DCW 3552 + DCW 6923 + DCW -3237 + DCW 3388 + DCW -5238 + DCW -7611 + DCW 6970 + DCW -3065 + DCW 2118 + DCW 6970 + DCW -3711 + DCW -1128 + DCW 1950 + DCW -4470 + DCW -1443 + DCW 4533 + DCW -2160 + DCW 579 + DCW -96 + DCW -4412 + DCW 1933 + DCW 7821 + DCW 1505 + DCW -2692 + DCW -6894 + DCW -1929 + DCW 2176 + DCW -3049 + DCW 7066 + DCW 88 + DCW -6806 + DCW 6332 + DCW -2256 + DCW -2642 + DCW 8127 + DCW -6206 + DCW -1749 + DCW 3422 + DCW -3267 + DCW -977 + DCW 2575 + DCW -650 + DCW 1002 + DCW 3154 + DCW -8781 + DCW 5619 + DCW 2642 + DCW -7095 + DCW 6437 + DCW -3804 + DCW -5284 + DCW 6320 + DCW -394 + DCW 583 + DCW 1304 + DCW -2382 + DCW 734 + DCW -658 + DCW -1518 + DCW 319 + DCW 1614 + DCW -4617 + DCW 6060 + DCW -273 + DCW -5439 + DCW 6995 + DCW -4466 + DCW 746 + DCW 4273 + DCW -9024 + DCW -130 + DCW 9737 + DCW -5204 + DCW 126 + DCW 3816 + DCW -6999 + DCW 5015 + DCW 4843 + DCW -7825 + DCW 4340 + DCW -2701 + DCW -8890 + DCW 10945 + DCW -331 + DCW 952 + DCW 3242 + DCW -6173 + DCW 612 + DCW 1652 + DCW -4651 + DCW 1317 + DCW 3359 + DCW -3862 + DCW 2692 + DCW -503 + DCW 503 + DCW 5024 + DCW -1749 + DCW -3254 + DCW -524 + DCW -7125 + DCW 1287 + DCW 9301 + DCW -1032 + DCW 205 + DCW -201 + DCW -6714 + DCW 927 + DCW 4932 + DCW -4953 + DCW 4214 + DCW -1036 + DCW -5070 + DCW 5963 + DCW -1032 + DCW -864 + DCW 3137 + DCW -3325 + DCW -977 + DCW -914 + DCW -3866 + DCW 5816 + DCW 1816 + DCW -1489 + DCW -319 + DCW 273 + DCW -2889 + DCW 977 + DCW 1749 + DCW -96 + DCW 1321 + DCW -7142 + DCW 3036 + DCW 1371 + DCW -1560 + DCW 4785 + DCW 159 + DCW -1744 + DCW 1166 + DCW -5883 + DCW -4483 + DCW 9624 + DCW 1602 + DCW -3711 + DCW 2801 + DCW -2369 + DCW -2051 + DCW 4529 + DCW -1879 + DCW -4 + DCW -1522 + DCW -3632 + DCW 2621 + DCW 3497 + DCW -688 + DCW -285 + DCW -608 + DCW -3439 + DCW 2839 + DCW -2919 + DCW 1640 + DCW 3443 + DCW -3820 + DCW 1233 + DCW -1820 + DCW -2499 + DCW 6131 + DCW -419 + DCW -3443 + DCW 5108 + DCW -4315 + DCW -3804 + DCW 7871 + DCW -839 + DCW -5049 + DCW 4927 + DCW -7225 + DCW -512 + DCW 8769 + DCW -4835 + DCW 2143 + DCW 738 + DCW -3854 + DCW 2000 + DCW 1220 + DCW -4391 + DCW 1799 + DCW 2013 + DCW -1967 + DCW 1384 + DCW -985 + DCW -168 + DCW 3749 + DCW -650 + DCW -2826 + DCW 1199 + DCW -3606 + DCW 2348 + DCW 1359 + DCW -1858 + DCW 2705 + DCW -1740 + DCW 671 + DCW 3120 + DCW -4684 + DCW -3204 + DCW 4286 + DCW -2860 + DCW 1589 + DCW 5192 + DCW -3728 + DCW 1090 + DCW 1531 + DCW -6810 + DCW 2407 + DCW 3028 + DCW -3925 + DCW 3003 + DCW 1313 + DCW -2948 + DCW -210 + DCW 147 + DCW 3133 + DCW 3736 + DCW -4437 + DCW -2847 + DCW -2671 + DCW -625 + DCW 1279 + DCW 3187 + DCW 1283 + DCW -1132 + DCW 277 + DCW -1287 + DCW 4730 + DCW -2613 + DCW 600 + DCW 1199 + DCW -3082 + DCW -3766 + DCW -4399 + DCW 4458 + DCW 6756 + DCW 4529 + DCW -1082 + DCW 59 + DCW -6626 + DCW -8194 + DCW 3929 + DCW 4508 + DCW -3200 + DCW 554 + DCW 1367 + DCW 1170 + DCW 3892 + DCW 990 + DCW -1774 + DCW -5942 + DCW -4038 + DCW -1799 + DCW 5468 + DCW 4600 + DCW 3229 + DCW 1355 + DCW -985 + DCW -948 + DCW -7041 + DCW -2088 + DCW 860 + DCW -3770 + DCW 2223 + DCW 5548 + DCW -818 + DCW 6651 + DCW -495 + DCW -6647 + DCW 524 + DCW -5368 + DCW -2399 + DCW 5745 + DCW 122 + DCW -218 + DCW 6303 + DCW 679 + DCW -29 + DCW -1183 + DCW -6156 + DCW -3619 + DCW 1027 + DCW -600 + DCW 2801 + DCW 2877 + DCW 969 + DCW 6403 + DCW -985 + DCW -4223 + DCW -3896 + DCW -5246 + DCW 491 + DCW 3904 + DCW 453 + DCW 1099 + DCW 2852 + DCW 746 + DCW 1526 + DCW -201 + DCW -5770 + DCW -2143 + DCW -1426 + DCW -1245 + DCW 7599 + DCW -2600 + DCW -1690 + DCW 6517 + DCW -2696 + DCW 2088 + DCW 2554 + DCW -8953 + DCW 2692 + DCW 465 + DCW -9578 + DCW 6680 + DCW 5804 + DCW -1212 + DCW 2118 + DCW 2533 + DCW -7024 + DCW -1782 + DCW 3342 + DCW -3728 + DCW -168 + DCW -2466 + DCW 889 + DCW 1204 + DCW 2843 + DCW 7284 + DCW -1443 + DCW -5313 + DCW -608 + DCW -3875 + DCW -2927 + DCW 5896 + DCW 1174 + DCW -797 + DCW 2587 + DCW -1577 + DCW -1858 + DCW 1744 + DCW 1715 + DCW 1250 + DCW -3355 + DCW -5510 + DCW -818 + DCW 2365 + DCW 1413 + DCW 7393 + DCW 1279 + DCW -9981 + DCW 1002 + DCW 595 + DCW -4630 + DCW 2705 + DCW 3258 + DCW -1132 + DCW 4785 + DCW 4667 + DCW -2034 + DCW -2478 + DCW -2390 + DCW -1287 + DCW -5678 + DCW -6383 + DCW 4881 + DCW 5036 + DCW 717 + DCW 8207 + DCW -285 + DCW -6110 + DCW -1778 + DCW -2290 + DCW -738 + DCW -369 + DCW 977 + DCW 939 + DCW -520 + DCW 1468 + DCW 7355 + DCW -990 + DCW -4013 + DCW -197 + DCW -6957 + DCW -2638 + DCW 4168 + DCW 2638 + DCW 164 + DCW 3174 + DCW 2650 + DCW -2730 + DCW -155 + DCW -356 + DCW -981 + DCW -3300 + DCW -3128 + DCW 2940 + DCW -2650 + DCW 3137 + DCW 8282 + DCW 1216 + DCW -2994 + DCW -4462 + DCW -3296 + DCW -1103 + DCW 554 + DCW 55 + DCW 3107 + DCW -2717 + DCW 507 + DCW 2822 + DCW 2235 + DCW 3451 + DCW -3195 + DCW -2772 + DCW -2914 + DCW 411 + DCW -113 + DCW 1879 + DCW -927 + DCW -2504 + DCW 5301 + DCW 1958 + DCW -3145 + DCW -1929 + DCW -3422 + DCW -1526 + DCW 3984 + DCW -361 + DCW 742 + DCW 1325 + DCW -42 + DCW -8 + DCW 1480 + DCW -1757 + DCW -3263 + DCW 2218 + DCW -621 + DCW 994 + DCW 1933 + DCW -3418 + DCW -235 + DCW 3267 + DCW -3468 + DCW 147 + DCW -138 + DCW 256 + DCW -889 + DCW -3409 + DCW 6869 + DCW -4101 + DCW -3254 + DCW 7984 + DCW -2852 + DCW 185 + DCW 3242 + DCW -3208 + DCW -1703 + DCW -1933 + DCW 3489 + DCW -71 + DCW -1099 + DCW 3548 + DCW 1065 + DCW -4722 + DCW -1535 + DCW 4843 + DCW -1929 + DCW -1396 + DCW -1157 + DCW -994 + DCW -2126 + DCW 6257 + DCW 3271 + DCW -3162 + DCW 499 + DCW -1434 + DCW -1715 + DCW -38 + DCW 2315 + DCW -3258 + DCW 1002 + DCW -784 + DCW 2696 + DCW -453 + DCW -2545 + DCW 3745 + DCW -721 + DCW -1325 + DCW -2839 + DCW -2617 + DCW -2046 + DCW 5842 + DCW 5183 + DCW -717 + DCW -3036 + DCW 554 + DCW -1292 + DCW 1732 + DCW 1371 + DCW -2973 + DCW -2017 + DCW -2025 + DCW 7041 + DCW -415 + DCW -126 + DCW -59 + DCW 411 + DCW -1430 + DCW -3254 + DCW 1128 + DCW -2181 + DCW 1602 + DCW 3212 + DCW 1581 + DCW -3162 + DCW 2332 + DCW -512 + DCW 356 + DCW -1346 + DCW -5774 + DCW 386 + DCW 2407 + DCW 6131 + DCW 1812 + DCW 633 + DCW -3070 + DCW -2776 + DCW -3778 + DCW -1334 + DCW -717 + DCW 411 + DCW 4428 + DCW -361 + DCW 3887 + DCW -751 + DCW -2302 + DCW -1568 + DCW -1904 + DCW -1958 + DCW -860 + DCW 7414 + DCW 5292 + DCW -486 + DCW -675 + DCW -3657 + DCW -5657 + DCW -1770 + DCW -130 + DCW 3091 + DCW -1338 + DCW 2193 + DCW 6651 + DCW -1128 + DCW -2348 + DCW -3762 + DCW -461 + DCW -1044 + DCW -2365 + DCW 2361 + DCW 2881 + DCW 872 + DCW 2357 + DCW 876 + DCW -1652 + DCW -604 + DCW -7410 + DCW -2302 + DCW 4806 + DCW 2906 + DCW 486 + DCW 365 + DCW 4105 + DCW -352 + DCW -2034 + DCW -4013 + DCW -2281 + DCW -1577 + DCW -432 + DCW 4453 + DCW 1816 + DCW 2776 + DCW -1497 + DCW -1019 + DCW 193 + DCW -4399 + DCW 264 + DCW 579 + DCW -264 + DCW 2797 + DCW -742 + DCW 1560 + DCW 2910 + DCW -1426 + DCW -377 + DCW -3602 + DCW -2277 + DCW 138 + DCW -25 + DCW 1874 + DCW 1984 + DCW -881 + DCW 520 + DCW 1522 + DCW -1539 + DCW -797 + DCW -4269 + DCW 2663 + DCW 1598 + DCW -4139 + DCW -113 + DCW 2868 + DCW 3372 + DCW -1631 + DCW 1346 + DCW -3644 + DCW -3493 + DCW 2013 + DCW 3003 + DCW -2931 + DCW -5804 + DCW 10756 + DCW 7867 + DCW -9918 + DCW -11847 + DCW 11561 + DCW 11998 + DCW -9326 + DCW -6689 + DCW -2130 + DCW 4533 + DCW 5103 + DCW -3485 + DCW -1967 + DCW 1619 + DCW 1598 + DCW -3661 + DCW -3837 + DCW 7628 + DCW 2747 + DCW -3304 + DCW -1170 + DCW -4005 + DCW 1682 + DCW 5418 + DCW 633 + DCW -5531 + DCW -675 + DCW 419 + DCW 541 + DCW 2583 + DCW -3091 + DCW 3497 + DCW 2130 + DCW -1468 + DCW -4588 + DCW -5171 + DCW 8068 + DCW 2537 + DCW -2004 + DCW 1258 + DCW -3560 + DCW -4156 + DCW 2529 + DCW 6248 + DCW -201 + DCW 575 + DCW -4609 + DCW -306 + DCW -11905 + DCW -18430 + DCW 32767 + DCW 20728 + DCW -32768 + DCW -20229 + DCW 32767 + DCW 32767 + DCW -32768 + DCW -32768 + DCW 24939 + DCW 32767 + DCW 2868 + DCW -32768 + DCW 2332 + DCW 27904 + DCW -3300 + DCW 1992 + DCW -28763 + DCW -814 + DCW 32767 + DCW -7783 + DCW -13818 + DCW -9687 + DCW 5577 + DCW 21085 + DCW 16497 + DCW -28214 + DCW -32768 + DCW 32767 + DCW 13461 + DCW -28419 + DCW 4680 + DCW -11377 + DCW 15801 + DCW 9599 + DCW -7498 + DCW -19806 + DCW 8630 + DCW 24482 + DCW -32768 + DCW 10480 + DCW 12832 + DCW -17944 + DCW 13901 + DCW -2432 + DCW -1770 + DCW -8442 + DCW 13033 + DCW -2365 + DCW -20338 + DCW 32767 + DCW -13822 + DCW -16325 + DCW 11914 + DCW -10350 + DCW 12300 + DCW -340 + DCW 0 + DCW -13163 + DCW 7502 + DCW 10727 + DCW -19743 + DCW 24033 + DCW -11251 + DCW -16602 + DCW 18133 + DCW -2696 + DCW -1229 + DCW -7305 + DCW 8169 + DCW 2826 + DCW -780 + DCW 1308 + DCW -18565 + DCW 10362 + DCW 7502 + DCW -3112 + DCW 2495 + DCW -8001 + DCW -923 + DCW 2332 + DCW 12736 + DCW -4064 + DCW -11415 + DCW 9477 + DCW -8307 + DCW 67 + DCW 7418 + DCW -2575 + DCW 1111 + DCW -654 + DCW 2285 + DCW -11792 + DCW 9645 + DCW 6890 + DCW -16833 + DCW 16204 + DCW -7028 + DCW -10844 + DCW 11427 + DCW -2298 + DCW 3694 + DCW -851 + DCW 3917 + DCW -11528 + DCW -143 + DCW 16699 + DCW -17671 + DCW 9817 + DCW 1677 + DCW -12291 + DCW 9867 + DCW -3258 + DCW 3409 + DCW -2961 + DCW 3753 + DCW -3606 + DCW -5686 + DCW 7519 + DCW -9435 + DCW 12069 + DCW 3103 + DCW -10249 + DCW 1241 + DCW 2818 + DCW 507 + DCW -5254 + DCW 7301 + DCW -9549 + DCW 226 + DCW 10303 + DCW -7255 + DCW 5464 + DCW -520 + DCW -2415 + DCW -210 + DCW 994 + DCW -5716 + DCW -2747 + DCW 16208 + DCW -8362 + DCW -4093 + DCW 12476 + DCW -9712 + DCW -5053 + DCW 5066 + DCW -2508 + DCW 3183 + DCW 1799 + DCW -3946 + DCW -3187 + DCW 8156 + DCW 4890 + DCW -12107 + DCW 7573 + DCW -8454 + DCW -2873 + DCW 16183 + DCW -7712 + DCW 3279 + DCW -7267 + DCW 3200 + DCW 3493 + DCW -4751 + DCW 10433 + DCW -17671 + DCW 3409 + DCW 9003 + DCW -4625 + DCW 5665 + DCW -5368 + DCW 2269 + DCW -3393 + DCW 2558 + DCW 75 + DCW -6974 + DCW 8567 + DCW -5137 + DCW 579 + DCW 5795 + DCW -4047 + DCW -491 + DCW 2998 + DCW -3221 + DCW -3590 + DCW 6693 + DCW -5007 + DCW -3963 + DCW 8140 + DCW 2080 + DCW -5561 + DCW 2214 + DCW 730 + DCW -6898 + DCW 8722 + DCW 164 + DCW -5598 + DCW 5963 + DCW -3082 + DCW -4856 + DCW 3409 + DCW 2881 + DCW -1925 + DCW -323 + DCW -1497 + DCW -1858 + DCW 235 + DCW 4525 + DCW 264 + DCW -2831 + DCW 1929 + DCW -6831 + DCW 5867 + DCW 3304 + DCW -2822 + DCW 3535 + DCW -7204 + DCW 3162 + DCW -1552 + DCW 524 + DCW 1124 + DCW -4206 + DCW 8454 + DCW -4336 + DCW -1355 + DCW -159 + DCW -2831 + DCW 3980 + DCW 415 + DCW 1673 + DCW -5330 + DCW 2218 + DCW 1891 + DCW -3309 + DCW 6198 + DCW -4114 + DCW -2273 + DCW 3145 + DCW -6529 + DCW 4424 + DCW 12178 + DCW -13168 + DCW -5108 + DCW 13901 + DCW -6974 + DCW -612 + DCW -193 + DCW -7318 + DCW 9721 + DCW 1610 + DCW -8068 + DCW 445 + DCW 8387 + DCW -2910 + DCW -7272 + DCW 6622 + DCW -1598 + DCW -424 + DCW 3057 + DCW -7494 + DCW 1208 + DCW 8026 + DCW -1568 + DCW -3414 + DCW 2885 + DCW -4235 + DCW -3443 + DCW 6261 + DCW 981 + DCW -4336 + DCW 3732 + DCW 4453 + DCW -7104 + DCW 164 + DCW 3430 + DCW -3770 + DCW 4114 + DCW 3992 + DCW -8462 + DCW -1493 + DCW 3824 + DCW -5691 + DCW 6311 + DCW 1237 + DCW -10249 + DCW 3145 + DCW 4827 + DCW 3099 + DCW -2223 + DCW 3296 + DCW 1199 + DCW -6445 + DCW 4168 + DCW -5875 + DCW 663 + DCW 7351 + DCW -6156 + DCW 205 + DCW 3837 + DCW -4307 + DCW -7414 + DCW 7171 + DCW 3363 + DCW -6848 + DCW 5200 + DCW -2114 + DCW -2504 + DCW 6055 + DCW -2130 + DCW -2046 + DCW 2940 + DCW 587 + DCW -3606 + DCW 1484 + DCW 528 + DCW -516 + DCW 2478 + DCW -973 + DCW -1241 + DCW -2789 + DCW -918 + DCW -247 + DCW 5095 + DCW 1690 + DCW -7624 + DCW 956 + DCW 4013 + DCW -2273 + DCW 176 + DCW 3632 + DCW -2537 + DCW 1942 + DCW -1233 + DCW -3858 + DCW 4546 + DCW -361 + DCW -1455 + DCW -256 + DCW 1174 + DCW -2759 + DCW -2168 + DCW 6089 + DCW 994 + DCW -1795 + DCW -839 + DCW -3544 + DCW -1078 + DCW 6169 + DCW 1036 + DCW -4286 + DCW 2537 + DCW -256 + DCW 470 + DCW 3179 + DCW -2894 + DCW -3866 + DCW 688 + DCW 876 + DCW -923 + DCW 3221 + DCW -335 + DCW -1141 + DCW 1845 + DCW -243 + DCW -2407 + DCW -3263 + DCW 763 + DCW 470 + DCW 3439 + DCW 2453 + DCW -4617 + DCW 2705 + DCW 2206 + DCW -2797 + DCW 403 + DCW -3904 + DCW 168 + DCW 1086 + DCW 2160 + DCW 2118 + DCW -6093 + DCW 3107 + DCW -1002 + DCW -155 + DCW 5171 + DCW -5997 + DCW -2914 + DCW 2499 + DCW 4575 + DCW 13 + DCW 2285 + DCW -5041 + DCW -5196 + DCW 10111 + DCW -3061 + DCW -1648 + DCW -1300 + DCW 3967 + DCW 3690 + DCW -9406 + DCW 1300 + DCW 281 + DCW 7439 + DCW -4105 + DCW -4399 + DCW 1887 + DCW -3359 + DCW 6483 + DCW -6194 + DCW 8068 + DCW -2088 + DCW -4311 + DCW 4068 + DCW -10182 + DCW 9482 + DCW -830 + DCW -1770 + DCW 2487 + DCW 512 + DCW -3216 + DCW 474 + DCW 7590 + DCW -7913 + DCW 5137 + DCW -4139 + DCW -4860 + DCW 5183 + DCW 2013 + DCW -981 + DCW -1522 + DCW 5171 + DCW -7573 + DCW 4898 + DCW -13 + DCW -2466 + DCW -969 + DCW -1271 + DCW 6911 + DCW -5883 + DCW 5477 + DCW -4395 + DCW 1963 + DCW -356 + DCW -1791 + DCW -134 + DCW -7687 + DCW 14149 + DCW -8819 + DCW 8026 + DCW -348 + DCW -8546 + DCW 7561 + DCW -6986 + DCW 4474 + DCW -7045 + DCW 10513 + DCW -4831 + DCW -2923 + DCW 10643 + DCW -12929 + DCW 10001 + DCW -5703 + DCW -751 + DCW 4298 + DCW -5259 + DCW 2017 + DCW -6110 + DCW 11582 + DCW -3661 + DCW 84 + DCW 3284 + DCW -7884 + DCW 3862 + DCW -6936 + DCW 9171 + DCW -2520 + DCW 855 + DCW 3749 + DCW -7511 + DCW 5372 + DCW -5628 + DCW 4399 + DCW -2579 + DCW 3263 + DCW -1891 + DCW -3996 + DCW 4982 + DCW -7020 + DCW 8072 + DCW -2273 + DCW -2193 + DCW 1011 + DCW 461 + DCW 788 + DCW -2986 + DCW 5686 + DCW -2562 + DCW 164 + DCW -3812 + DCW 692 + DCW 6152 + DCW -4558 + DCW 4043 + DCW -2789 + DCW -2604 + DCW -1887 + DCW 2013 + DCW 3317 + DCW -4235 + DCW 8400 + DCW -6315 + DCW -3225 + DCW 205 + DCW 4277 + DCW 5514 + DCW -6336 + DCW 5774 + DCW -10211 + DCW 700 + DCW 4969 + DCW -3141 + DCW 4567 + DCW 4 + DCW 2998 + DCW -8148 + DCW 1355 + DCW 197 + DCW -948 + DCW 5900 + DCW -4353 + DCW 2894 + DCW -4445 + DCW -474 + DCW 315 + DCW 6039 + DCW -1858 + DCW -10618 + DCW 15231 + DCW -10131 + DCW -2294 + DCW 9913 + DCW -3502 + DCW 428 + DCW -3564 + DCW 4999 + DCW -4349 + DCW -277 + DCW 3388 + DCW -914 + DCW 155 + DCW 323 + DCW 315 + DCW -5984 + DCW 5984 + DCW 113 + DCW -1598 + DCW 4064 + DCW -7729 + DCW 705 + DCW 3745 + DCW -2629 + DCW 2340 + DCW 3237 + DCW -5896 + DCW -1631 + DCW 6680 + DCW -7251 + DCW 3036 + DCW 9507 + DCW -797 + DCW -10790 + DCW -6181 + DCW 14258 + DCW -11985 + DCW 3984 + DCW 15206 + DCW -15042 + DCW 629 + DCW -394 + DCW -3007 + DCW 10706 + DCW -1032 + DCW -5770 + DCW 7771 + DCW -12237 + DCW 243 + DCW 9762 + DCW -7322 + DCW 12723 + DCW -10756 + DCW -4248 + DCW 8026 + DCW -7297 + DCW 9310 + DCW -3757 + DCW -2030 + DCW 4776 + DCW -6643 + DCW -3024 + DCW 11901 + DCW -939 + DCW -9557 + DCW 7905 + DCW -7901 + DCW 6110 + DCW 1732 + DCW -7561 + DCW 8567 + DCW -9435 + DCW 3594 + DCW 5108 + DCW -3355 + DCW 2185 + DCW -3367 + DCW -3128 + DCW 5519 + DCW 105 + DCW -3544 + DCW 6827 + DCW -9813 + DCW 2948 + DCW 7674 + DCW -10136 + DCW 7871 + DCW 340 + DCW -9062 + DCW 2680 + DCW 3892 + DCW -960 + DCW 2873 + DCW 143 + DCW -5171 + DCW 2353 + DCW -4860 + DCW 3866 + DCW 3460 + DCW -2906 + DCW 1812 + DCW -8345 + DCW 6492 + DCW 2680 + DCW -1631 + DCW 3753 + DCW -7330 + DCW -1078 + DCW 5590 + DCW -2181 + DCW -4441 + DCW 7523 + DCW -4919 + DCW 96 + DCW 6177 + DCW -3787 + DCW 2223 + DCW -5951 + DCW 2877 + DCW 2038 + DCW -3787 + DCW 3984 + DCW -2504 + DCW 352 + DCW 2025 + DCW -4944 + DCW 2969 + DCW 3824 + DCW -7942 + DCW 3007 + DCW 147 + DCW -4357 + DCW 9754 + DCW -46 + DCW -5456 + DCW 2231 + DCW -4089 + DCW -440 + DCW 8844 + DCW -4378 + DCW -1640 + DCW -1262 + DCW -3850 + DCW 10320 + DCW -5435 + DCW -1388 + DCW 5393 + DCW -11218 + DCW 6777 + DCW 7532 + DCW -9385 + DCW 2881 + DCW 2743 + DCW -6529 + DCW 3309 + DCW 1904 + DCW -688 + DCW 533 + DCW -4047 + DCW 2290 + DCW -2399 + DCW 3418 + DCW 985 + DCW -4479 + DCW 8806 + DCW -11662 + DCW -1329 + DCW 10907 + DCW -5733 + DCW 155 + DCW 1724 + DCW -1069 + DCW -4298 + DCW 8177 + DCW -767 + DCW -7112 + DCW 8026 + DCW -4349 + DCW -562 + DCW 2843 + DCW -1124 + DCW -654 + DCW -2231 + DCW 4365 + DCW -746 + DCW -1296 + DCW 1833 + DCW -5305 + DCW 4416 + DCW 4126 + DCW -7611 + DCW 4583 + DCW 415 + DCW -5649 + DCW 4001 + DCW -138 + DCW -1791 + DCW 3028 + DCW -1614 + DCW -1728 + DCW 3200 + DCW -218 + DCW 881 + DCW -671 + DCW -1027 + DCW -973 + DCW -2449 + DCW 4994 + DCW -356 + DCW -4256 + DCW 4932 + DCW -2759 + DCW -1623 + DCW 4437 + DCW -5103 + DCW 2625 + DCW 3116 + DCW -4739 + DCW 1535 + DCW 3946 + DCW -4932 + DCW -2164 + DCW 5292 + DCW -1157 + DCW 2239 + DCW -2239 + DCW -2462 + DCW 2193 + DCW -3032 + DCW 3485 + DCW -3036 + DCW 2671 + DCW 2088 + DCW -9645 + DCW 9477 + DCW -92 + DCW -4760 + DCW 6039 + DCW -4856 + DCW -2365 + DCW 4424 + DCW 595 + DCW -3917 + DCW 6320 + DCW -2000 + DCW -7758 + DCW 7649 + DCW -1120 + DCW -2713 + DCW 3028 + DCW 256 + DCW -1749 + DCW -2059 + DCW 2885 + DCW -1074 + DCW -1103 + DCW 3778 + DCW -2248 + DCW 742 + DCW 449 + DCW -3351 + DCW 2839 + DCW 1107 + DCW -2768 + DCW -818 + DCW 3061 + DCW -3351 + DCW -1023 + DCW 4563 + DCW -2302 + DCW 457 + DCW -218 + DCW -1313 + DCW 939 + DCW 1178 + DCW 700 + DCW -2831 + DCW 2743 + DCW -432 + DCW -4655 + DCW 6722 + DCW -902 + DCW -3632 + DCW 4139 + DCW -2344 + DCW -1543 + DCW 1409 + DCW 331 + DCW -835 + DCW 2290 + DCW -2441 + DCW -2789 + DCW 5510 + DCW -1187 + DCW -927 + DCW 562 + DCW 952 + DCW 495 + DCW -3313 + DCW 4915 + DCW -2378 + DCW -2504 + DCW 3728 + DCW -4835 + DCW 5967 + DCW -436 + DCW -5653 + DCW 3682 + DCW -1455 + DCW 256 + DCW -377 + DCW 2680 + DCW -730 + DCW -3590 + DCW 2759 + DCW 554 + DCW 17 + DCW 294 + DCW -545 + DCW -1744 + DCW 1279 + DCW 340 + DCW -1300 + DCW 4441 + DCW -3095 + DCW -4902 + DCW 4604 + DCW -398 + DCW -671 + DCW 1627 + DCW -2046 + DCW -29 + DCW 608 + DCW -587 + DCW 2843 + DCW 1329 + DCW -2353 + DCW 457 + DCW 449 + DCW 1975 + DCW -4072 + DCW -5510 + DCW 3602 + DCW -637 + DCW 2663 + DCW 3661 + DCW -4101 + DCW 3866 + DCW 80 + DCW -5636 + DCW 3007 + DCW -1610 + DCW -3380 + DCW 914 + DCW 1602 + DCW 3158 + DCW 1036 + DCW 130 + DCW -2747 + DCW -1782 + DCW 2931 + DCW -2302 + DCW -3225 + DCW 5179 + DCW 1262 + DCW -5095 + DCW 5888 + DCW -637 + DCW -3183 + DCW 4621 + DCW -8387 + DCW 5795 + DCW 2084 + DCW -9964 + DCW 7125 + DCW 759 + DCW -1019 + DCW 839 + DCW 419 + DCW -352 + DCW -2646 + DCW -851 + DCW -75 + DCW 9880 + DCW -3363 + DCW -12191 + DCW 6395 + DCW 8391 + DCW -2688 + DCW -5238 + DCW 2759 + DCW -1484 + DCW -1023 + DCW 231 + DCW -5363 + DCW 11046 + DCW 1778 + DCW -10635 + DCW 6047 + DCW 847 + DCW -3615 + DCW 2042 + DCW -2684 + DCW 969 + DCW 3883 + DCW -7364 + DCW 1090 + DCW 10924 + DCW -8244 + DCW -1015 + DCW 6550 + DCW -7812 + DCW 3749 + DCW -4 + DCW -5594 + DCW 8777 + DCW -1111 + DCW -6475 + DCW 5674 + DCW 1011 + DCW -6223 + DCW 3082 + DCW 1904 + DCW -3653 + DCW 2214 + DCW -1812 + DCW -2323 + DCW 6437 + DCW -503 + DCW -4663 + DCW 6940 + DCW -1614 + DCW -8697 + DCW 7523 + DCW 1241 + DCW -3946 + DCW 4416 + DCW -4256 + DCW 143 + DCW 4449 + DCW -4906 + DCW 3556 + DCW 1967 + DCW -7666 + DCW 1187 + DCW 1359 + DCW 516 + DCW 3544 + DCW -3900 + DCW 143 + DCW 4034 + DCW -4709 + DCW -1405 + DCW 6370 + DCW -1048 + DCW -5233 + DCW 2302 + DCW 600 + DCW -759 + DCW -470 + DCW -2818 + DCW 4047 + DCW 2185 + DCW -5225 + DCW 1656 + DCW 4177 + DCW -5556 + DCW 952 + DCW 5825 + DCW -2814 + DCW 2722 + DCW -1535 + DCW -5493 + DCW 5200 + DCW -2407 + DCW -4571 + DCW 6181 + DCW -868 + DCW -4521 + DCW 3736 + DCW 1283 + DCW 449 + DCW 1837 + DCW -5011 + DCW -1770 + DCW 3879 + DCW -2952 + DCW 587 + DCW 6697 + DCW -3330 + DCW -2541 + DCW 3137 + DCW -1958 + DCW -629 + DCW 872 + DCW -1795 + DCW 1967 + DCW 2462 + DCW -3154 + DCW 1002 + DCW 1887 + DCW -4579 + DCW -558 + DCW 1300 + DCW 126 + DCW 893 + DCW -1124 + DCW 1573 + DCW 3837 + DCW -1434 + DCW -1929 + DCW 2097 + DCW -4525 + DCW -3154 + DCW 3632 + DCW -365 + DCW 3674 + DCW 176 + DCW -4936 + DCW 4173 + DCW 621 + DCW -5108 + DCW 738 + DCW 1292 + DCW -2432 + DCW 3007 + DCW 3212 + DCW -1095 + DCW 1078 + DCW -3351 + DCW -3095 + DCW 2810 + DCW -247 + DCW -3019 + DCW 2470 + DCW 2319 + DCW -1086 + DCW 2671 + DCW -545 + DCW -2860 + DCW -533 + DCW -2931 + DCW 2478 + DCW 4344 + DCW -3703 + DCW 700 + DCW 2445 + DCW -2738 + DCW 1975 + DCW 256 + DCW -2394 + DCW 1334 + DCW -3422 + DCW -763 + DCW 7389 + DCW -973 + DCW -4424 + DCW 2302 + DCW -470 + DCW -725 + DCW 1048 + DCW -1744 + DCW 1522 + DCW 1325 + DCW -3317 + DCW 784 + DCW 3636 + DCW -3296 + DCW -797 + DCW 3988 + DCW -2269 + DCW -1229 + DCW 533 + DCW -247 + DCW 1988 + DCW 239 + DCW -1229 + DCW 1132 + DCW -566 + DCW -3040 + DCW 1652 + DCW 1153 + DCW -562 + DCW 801 + DCW -1430 + DCW -17 + DCW 1069 + DCW -1581 + DCW 1518 + DCW 2097 + DCW -4877 + DCW 365 + DCW 3674 + DCW -3871 + DCW 2424 + DCW 2701 + DCW -4198 + DCW 1342 + DCW -365 + DCW -839 + DCW 4047 + DCW -315 + DCW -2914 + DCW 839 + DCW 302 + DCW -1505 + DCW 1296 + DCW -956 + DCW 1095 + DCW 956 + DCW -3573 + DCW 3715 + DCW 1963 + DCW -4915 + DCW 55 + DCW 2550 + DCW -361 + DCW 1023 + DCW 277 + DCW -2764 + DCW 1048 + DCW 67 + DCW -2277 + DCW 2575 + DCW 432 + DCW -2214 + DCW 935 + DCW 1078 + DCW 591 + DCW 931 + DCW -2051 + DCW -2545 + DCW 1740 + DCW -134 + DCW -63 + DCW 1849 + DCW -889 + DCW -50 + DCW 1220 + DCW 394 + DCW -935 + DCW -2407 + DCW -352 + DCW 2864 + DCW -868 + DCW -1409 + DCW 2264 + DCW -663 + DCW -1405 + DCW 1082 + DCW 843 + DCW 13 + DCW -1002 + DCW -2260 + DCW 876 + DCW 3443 + DCW -1988 + DCW 784 + DCW 3405 + DCW -6202 + DCW 17 + DCW 4508 + DCW -897 + DCW -1539 + DCW -5326 + DCW 4332 + DCW 8202 + DCW -6546 + DCW -6546 + DCW 8232 + DCW 2722 + DCW -9133 + DCW 218 + DCW 6705 + DCW 3430 + DCW -7125 + DCW -4760 + DCW 8974 + DCW 1728 + DCW -8756 + DCW 298 + DCW 8421 + DCW -2696 + DCW -6311 + DCW 1262 + DCW 8198 + DCW 1514 + DCW -14044 + DCW 1686 + DCW 11629 + DCW -5586 + DCW -5133 + DCW 5934 + DCW 2281 + DCW -4558 + DCW -721 + DCW 814 + DCW 4240 + DCW -2596 + DCW -8869 + DCW 9314 + DCW 3233 + DCW -5301 + DCW 3720 + DCW -2998 + DCW -2524 + DCW 5288 + DCW -1996 + DCW -6399 + DCW 7754 + DCW 3896 + DCW -11062 + DCW -147 + DCW 9129 + DCW 411 + DCW -8366 + DCW -1732 + DCW 9519 + DCW 1329 + DCW -10706 + DCW 2206 + DCW 10576 + DCW -5967 + DCW -7901 + DCW 5527 + DCW 8257 + DCW -5875 + DCW -11293 + DCW 7301 + DCW 13830 + DCW -5691 + DCW -13721 + DCW 9804 + DCW 6299 + DCW -13285 + DCW 889 + DCW 9712 + DCW 3057 + DCW -10052 + DCW -8538 + DCW 14304 + DCW 6072 + DCW -15168 + DCW 1648 + DCW 10446 + DCW -5259 + DCW -7716 + DCW 1275 + DCW 12547 + DCW -713 + DCW -14879 + DCW 3892 + DCW 10626 + DCW -3187 + DCW -7028 + DCW 2948 + DCW 6932 + DCW -6886 + DCW -8052 + DCW 9364 + DCW 7871 + DCW -8240 + DCW -6445 + DCW 6684 + DCW 5301 + DCW -5967 + DCW -4290 + DCW 7330 + DCW 755 + DCW -8832 + DCW 1459 + DCW 7984 + DCW 2134 + DCW -7871 + DCW -2931 + DCW 9473 + DCW -2038 + DCW -7137 + DCW 5204 + DCW 2466 + DCW -3489 + DCW -2789 + DCW 864 + DCW 8655 + DCW -1447 + DCW -11595 + DCW 6273 + DCW 5997 + DCW -8588 + DCW 382 + DCW 5573 + DCW -755 + DCW -5590 + DCW -1069 + DCW 7787 + DCW 1438 + DCW -6789 + DCW -990 + DCW 5447 + DCW 1199 + DCW -6085 + DCW -361 + DCW 6584 + DCW -2139 + DCW -4705 + DCW 3883 + DCW 2550 + DCW -3107 + DCW -3405 + DCW 1489 + DCW 6626 + DCW -4001 + DCW -5535 + DCW 6718 + DCW 1556 + DCW -3221 + DCW -1942 + DCW 2273 + DCW 4760 + DCW -6034 + DCW -4760 + DCW 8379 + DCW 1380 + DCW -6731 + DCW 2583 + DCW 2160 + DCW -1468 + DCW -1300 + DCW -952 + DCW 4932 + DCW -751 + DCW -7347 + DCW 2210 + DCW 7498 + DCW -1048 + DCW -6487 + DCW 176 + DCW 5858 + DCW -1820 + DCW -4076 + DCW 3460 + DCW 2185 + DCW -4051 + DCW -4269 + DCW 6148 + DCW 5959 + DCW -5774 + DCW -4340 + DCW 4282 + DCW 914 + DCW -3304 + DCW 612 + DCW 1254 + DCW 2420 + DCW -5561 + DCW -1103 + DCW 7884 + DCW -1833 + DCW -3065 + DCW -835 + DCW 1111 + DCW 1061 + DCW -1585 + DCW -193 + DCW 4495 + DCW -2545 + DCW -4948 + DCW 5489 + DCW 1929 + DCW -2424 + DCW -1988 + DCW 239 + DCW 3082 + DCW -814 + DCW -2608 + DCW 4240 + DCW -1082 + DCW -4403 + DCW 2596 + DCW 1895 + DCW 948 + DCW -3523 + DCW -1719 + DCW 4198 + DCW 17 + DCW -1313 + DCW 1493 + DCW 361 + DCW -1417 + DCW -4017 + DCW 2273 + DCW 5271 + DCW -3233 + DCW -3921 + DCW 1912 + DCW 2487 + DCW -931 + DCW -2164 + DCW 1614 + DCW 2885 + DCW -5477 + DCW -734 + DCW 5917 + DCW -973 + DCW -3837 + DCW 554 + DCW 1631 + DCW 2000 + DCW -2235 + DCW -1908 + DCW 4772 + DCW -2231 + DCW -2847 + DCW 931 + DCW 3166 + DCW 541 + DCW -3984 + DCW 935 + DCW 3187 + DCW -2768 + DCW -1556 + DCW 2625 + DCW 1199 + DCW -1929 + DCW -3036 + DCW 3472 + DCW 818 + DCW -3913 + DCW -189 + DCW 12081 + DCW 969 + DCW -13855 + DCW -3988 + DCW 7976 + DCW 9410 + DCW -8924 + DCW -4705 + DCW 4051 + DCW 3476 + DCW 1069 + DCW -9494 + DCW 2701 + DCW 9557 + DCW -8588 + DCW -2235 + DCW 7947 + DCW -5359 + DCW 608 + DCW 2034 + DCW -2290 + DCW 3405 + DCW -4940 + DCW 751 + DCW 6932 + DCW -4688 + DCW -3980 + DCW 486 + DCW 4458 + DCW 1011 + DCW -3527 + DCW 843 + DCW 130 + DCW -2919 + DCW 1782 + DCW 4009 + DCW -956 + DCW 130 + DCW -4701 + DCW 1539 + DCW 4856 + DCW -3107 + DCW 2139 + DCW -2046 + DCW -2864 + DCW 1497 + DCW -893 + DCW 6118 + DCW -1598 + DCW -6932 + DCW 5808 + DCW 260 + DCW -1237 + DCW 2600 + DCW -2923 + DCW -285 + DCW 1568 + DCW -4294 + DCW 5208 + DCW 2139 + DCW -6554 + DCW 1736 + DCW -80 + DCW 1023 + DCW 579 + DCW -231 + DCW 231 + DCW -998 + DCW -902 + DCW 2692 + DCW 340 + DCW -2319 + DCW -549 + DCW -1707 + DCW 3980 + DCW 377 + DCW -2260 + DCW 1698 + DCW -25 + DCW -3011 + DCW 1107 + DCW 3632 + DCW 524 + DCW -3372 + DCW -3082 + DCW 3741 + DCW 327 + DCW -159 + DCW 1518 + DCW -2646 + DCW 1510 + DCW -2109 + DCW 168 + DCW 6504 + DCW -4571 + DCW -4143 + DCW 2239 + DCW 2080 + DCW -147 + DCW 155 + DCW -453 + DCW -222 + DCW -566 + DCW -3485 + DCW 4869 + DCW 2873 + DCW -4583 + DCW -1245 + DCW 595 + DCW 2411 + DCW 273 + DCW -1770 + DCW 1946 + DCW -1765 + DCW -2105 + DCW 1325 + DCW 1547 + DCW 1531 + DCW -2772 + DCW -2210 + DCW 3485 + DCW 675 + DCW -3162 + DCW 2248 + DCW 1635 + DCW -2629 + DCW -684 + DCW 2176 + DCW 1870 + DCW -1744 + DCW -2575 + DCW 2512 + DCW -575 + DCW -1602 + DCW 1166 + DCW -663 + DCW 2940 + DCW -2873 + DCW -2097 + DCW 5623 + DCW -2374 + DCW -3564 + DCW 3154 + DCW 981 + DCW 226 + DCW -830 + DCW -1011 + DCW 2919 + DCW -1115 + DCW -2449 + DCW 2910 + DCW 872 + DCW -1967 + DCW -1464 + DCW 1040 + DCW 3892 + DCW -3644 + DCW -1698 + DCW 2504 + DCW -1061 + DCW 281 + DCW -122 + DCW 1422 + DCW 201 + DCW -3074 + DCW 407 + DCW 4244 + DCW -1241 + DCW -2944 + DCW 1715 + DCW 155 + DCW -84 + DCW -1141 + DCW 432 + DCW 3330 + DCW -3971 + DCW -1715 + DCW 3401 + DCW 1539 + DCW -386 + DCW -3824 + DCW 1753 + DCW 1422 + DCW -2969 + DCW 1640 + DCW 2420 + DCW -2747 + DCW -1883 + DCW 1921 + DCW 1895 + DCW 889 + DCW -2764 + DCW -1199 + DCW 3485 + DCW -1489 + DCW -1686 + DCW 3506 + DCW -910 + DCW -1740 + DCW -1518 + DCW 2390 + DCW 2495 + DCW -3560 + DCW -1128 + DCW 1086 + DCW 2202 + DCW -583 + DCW -826 + DCW 1325 + DCW -172 + DCW -3363 + DCW 1153 + DCW 4915 + DCW -1606 + DCW -3544 + DCW 180 + DCW 2508 + DCW -377 + DCW -637 + DCW 1296 + DCW 369 + DCW -3120 + DCW -637 + DCW 3963 + DCW 985 + DCW -1912 + DCW -4131 + DCW 2323 + DCW 3292 + DCW -1988 + DCW 1409 + DCW -814 + DCW -851 + DCW -725 + DCW 688 + DCW 2453 + DCW -981 + DCW -1069 + DCW -1728 + DCW 2516 + DCW 776 + DCW -2667 + DCW 734 + DCW 2172 + DCW -1086 + DCW -4315 + DCW 3355 + DCW 2810 + DCW -2738 + DCW 289 + DCW -1547 + DCW 1245 + DCW 2109 + DCW -2256 + DCW 1417 + DCW -218 + DCW -2252 + DCW 835 + DCW 2445 + DCW -1006 + DCW -2592 + DCW 1334 + DCW 1191 + DCW -164 + DCW -1560 + DCW 155 + DCW 1434 + DCW -1132 + DCW -13 + DCW -38 + DCW 2030 + DCW 436 + DCW -5087 + DCW 3711 + DCW 2101 + DCW -2717 + DCW 889 + DCW -709 + DCW 1472 + DCW -1053 + DCW -1438 + DCW 1690 + DCW 1916 + DCW -1937 + DCW -2415 + DCW 3086 + DCW -533 + DCW -1195 + DCW 1245 + DCW 382 + DCW -377 + DCW -1388 + DCW 1204 + DCW 247 + DCW -595 + DCW 470 + DCW -403 + DCW 1313 + DCW -1300 + DCW -1283 + DCW 2290 + DCW -893 + DCW -1556 + DCW 2063 + DCW 2520 + DCW -2189 + DCW -3309 + DCW 1845 + DCW 977 + DCW -486 + DCW 1396 + DCW 88 + DCW -1254 + DCW -872 + DCW -306 + DCW 1728 + DCW 1942 + DCW -2076 + DCW -1556 + DCW 566 + DCW 1166 + DCW 684 + DCW -1095 + DCW -50 + DCW -348 + DCW -1455 + DCW 1698 + DCW 1635 + DCW -1149 + DCW -491 + DCW -730 + DCW 2067 + DCW 973 + DCW -2654 + DCW 835 + DCW 1740 + DCW -2982 + DCW -1992 + DCW 3556 + DCW 2822 + DCW -1942 + DCW -4441 + DCW 931 + DCW 2621 + DCW 742 + DCW 516 + DCW -3028 + DCW -549 + DCW 1174 + DCW 470 + DCW 2558 + DCW -1371 + DCW -3699 + DCW 923 + DCW 2353 + DCW 281 + DCW -415 + DCW -1984 + DCW 2000 + DCW 3380 + DCW -7305 + DCW -126 + DCW 8513 + DCW -3380 + DCW -5762 + DCW 2491 + DCW 2952 + DCW -667 + DCW -130 + DCW -1837 + DCW -315 + DCW 1862 + DCW -1367 + DCW 1417 + DCW 2453 + DCW -3711 + DCW -1812 + DCW 1992 + DCW 956 + DCW 2344 + DCW -1858 + DCW -3942 + DCW 2533 + DCW 1564 + DCW -990 + DCW 2399 + DCW -2327 + DCW -3221 + DCW 2751 + DCW 528 + DCW 1526 + DCW -281 + DCW -4344 + DCW 2260 + DCW 2449 + DCW -2327 + DCW 1199 + DCW 1749 + DCW -3200 + DCW -759 + DCW 1522 + DCW 415 + DCW 3598 + DCW -2789 + DCW -4428 + DCW 3778 + DCW 923 + DCW -2675 + DCW 1992 + DCW 1145 + DCW -4554 + DCW 1677 + DCW 2084 + DCW -1136 + DCW 1225 + DCW -2738 + DCW 721 + DCW 3502 + DCW -2042 + DCW -264 + DCW 1665 + DCW -2273 + DCW -361 + DCW 1396 + DCW 482 + DCW 1355 + DCW -3137 + DCW -1401 + DCW 3678 + DCW -512 + DCW -650 + DCW 1032 + DCW -2571 + DCW -214 + DCW 1921 + DCW -474 + DCW 2512 + DCW -1040 + DCW -5057 + DCW 2256 + DCW 4957 + DCW -2466 + DCW -1837 + DCW 2524 + DCW -1690 + DCW 1107 + DCW -977 + DCW 549 + DCW 4164 + DCW -5057 + DCW -2474 + DCW 2185 + DCW 1765 + DCW -185 + DCW -906 + DCW -222 + DCW -1178 + DCW 1539 + DCW 1464 + DCW 1568 + DCW -1359 + DCW -6114 + DCW 2457 + DCW 9343 + DCW -876 + DCW -6601 + DCW -1157 + DCW 1355 + DCW 1568 + DCW -344 + DCW 327 + DCW 721 + DCW -4282 + DCW -864 + DCW 4529 + DCW 1187 + DCW -3137 + DCW -1124 + DCW 2529 + DCW -977 + DCW -281 + DCW 373 + DCW 449 + DCW 2634 + DCW -5644 + DCW 155 + DCW 6479 + DCW -3787 + DCW -923 + DCW 2235 + DCW -1141 + DCW -985 + DCW 4 + DCW 1480 + DCW 902 + DCW -2709 + DCW -1870 + DCW 3883 + DCW -92 + DCW -1220 + DCW 424 + DCW -675 + DCW 1883 + DCW -1493 + DCW -138 + DCW 1375 + DCW -1736 + DCW 1334 + DCW 1279 + DCW -2399 + DCW -306 + DCW 398 + DCW 654 + DCW 1900 + DCW -3116 + DCW -1422 + DCW 2877 + DCW 658 + DCW -793 + DCW -2202 + DCW 725 + DCW 3095 + DCW -1602 + DCW -461 + DCW 369 + DCW -516 + DCW 1518 + DCW -944 + DCW -67 + DCW 1170 + DCW -1208 + DCW -512 + DCW 1321 + DCW -822 + DCW -189 + DCW 449 + DCW -1166 + DCW 2105 + DCW -1296 + DCW -1547 + DCW 3409 + DCW -1661 + DCW -1346 + DCW 1430 + DCW -205 + DCW 1677 + DCW -994 + DCW -1510 + DCW 1929 + DCW 277 + DCW -969 + DCW -8 + DCW 1178 + DCW -465 + DCW -1417 + DCW 17 + DCW 935 + DCW 784 + DCW -1640 + DCW -822 + DCW 2847 + DCW 2151 + DCW -4965 + DCW -2327 + DCW 6185 + DCW 847 + DCW -3468 + DCW -1208 + DCW 1535 + DCW 1375 + DCW -1036 + DCW 25 + DCW 1237 + DCW -654 + DCW -1384 + DCW -80 + DCW 767 + DCW 327 + DCW -1170 + DCW 1912 + DCW -92 + DCW -3078 + DCW -218 + DCW 5284 + DCW 491 + DCW -8366 + DCW 4294 + DCW 6269 + DCW -6986 + DCW -3044 + DCW 9297 + DCW -767 + DCW -8760 + DCW 4181 + DCW 4189 + DCW -470 + DCW -5334 + DCW -1820 + DCW 9947 + DCW -3875 + DCW -9762 + DCW 9788 + DCW 4567 + DCW -9586 + DCW -516 + DCW 5573 + DCW 1476 + DCW -277 + DCW -5976 + DCW 3313 + DCW 3942 + DCW -8278 + DCW 6294 + DCW 1044 + DCW -5032 + DCW 2202 + DCW -621 + DCW 0 + DCW 1296 + DCW 583 + DCW -3674 + DCW 2688 + DCW -1099 + DCW -1552 + DCW 5959 + DCW -2097 + DCW -2793 + DCW 285 + DCW -122 + DCW 1996 + DCW 2294 + DCW -3409 + DCW -1803 + DCW 3363 + DCW -1115 + DCW 801 + DCW 755 + DCW -4512 + DCW 5028 + DCW 876 + DCW -7603 + DCW 4986 + DCW 2768 + DCW -3992 + DCW 2009 + DCW -814 + DCW -2269 + DCW 4915 + DCW -2764 + DCW -2696 + DCW 5724 + DCW -3795 + DCW -214 + DCW 1438 + DCW -1816 + DCW 2193 + DCW -1359 + DCW -101 + DCW 1392 + DCW -185 + DCW -2990 + DCW 3443 + DCW 1392 + DCW -4114 + DCW 2143 + DCW -1078 + DCW 1552 + DCW -612 + DCW -1065 + DCW 2642 + DCW -1292 + DCW -415 + DCW -461 + DCW 1589 + DCW -2348 + DCW 742 + DCW 3703 + DCW -4709 + DCW 591 + DCW 2462 + DCW -1317 + DCW -885 + DCW -315 + DCW 1719 + DCW 587 + DCW -1954 + DCW -1019 + DCW 4235 + DCW -1484 + DCW -5192 + DCW 5561 + DCW 784 + DCW -4013 + DCW 864 + DCW -801 + DCW 2814 + DCW 205 + DCW -2818 + DCW 1308 + DCW 1761 + DCW -575 + DCW -3036 + DCW 6114 + DCW -159 + DCW -8882 + DCW 2516 + DCW 5116 + DCW 1325 + DCW -2986 + DCW -2692 + DCW -243 + DCW 2730 + DCW -516 + DCW 331 + DCW 3661 + DCW -5959 + DCW -1099 + DCW 3112 + DCW 1635 + DCW 1497 + DCW -4885 + DCW -1061 + DCW 4282 + DCW -1669 + DCW 461 + DCW 4802 + DCW -4420 + DCW -4420 + DCW 1854 + DCW 3250 + DCW 3242 + DCW -2587 + DCW -4034 + DCW 1531 + DCW -247 + DCW 1854 + DCW 965 + DCW 1635 + DCW -1728 + DCW -9322 + DCW 9498 + DCW 2797 + DCW -3913 + DCW 1770 + DCW -3913 + DCW 2353 + DCW -1866 + DCW 2709 + DCW 1296 + DCW -1019 + DCW -956 + DCW -5766 + DCW 7636 + DCW 231 + DCW -2696 + DCW 277 + DCW -1329 + DCW 2982 + DCW -3573 + DCW 5447 + DCW -1895 + DCW -5368 + DCW 5229 + DCW -3854 + DCW 5095 + DCW 2776 + DCW -7896 + DCW -637 + DCW 2768 + DCW 2105 + DCW -558 + DCW 2030 + DCW -3757 + DCW -4781 + DCW 6261 + DCW 428 + DCW 2348 + DCW -2139 + DCW -6265 + DCW 4386 + DCW 323 + DCW 3057 + DCW -2998 + DCW 814 + DCW 2382 + DCW -7578 + DCW 6055 + DCW -445 + DCW -713 + DCW 398 + DCW -4068 + DCW 4089 + DCW -1807 + DCW 1258 + DCW 633 + DCW -323 + DCW 990 + DCW -4252 + DCW 4286 + DCW 1388 + DCW -2491 + DCW -629 + DCW -1916 + DCW 3879 + DCW -784 + DCW 2428 + DCW -2332 + DCW -5443 + DCW 6848 + DCW -3862 + DCW 3611 + DCW 1375 + DCW -6869 + DCW 3493 + DCW -323 + DCW 2139 + DCW -1296 + DCW 1111 + DCW -1824 + DCW -2231 + DCW 4734 + DCW -2025 + DCW 3187 + DCW -3560 + DCW -2411 + DCW 3866 + DCW -554 + DCW 1002 + DCW -1677 + DCW 2772 + DCW -3070 + DCW -1866 + DCW 3833 + DCW -1497 + DCW 2894 + DCW -3632 + DCW -1313 + DCW 3850 + DCW -1401 + DCW 218 + DCW -927 + DCW 2021 + DCW -1568 + DCW -1111 + DCW 3971 + DCW -1128 + DCW -1539 + DCW -1816 + DCW 2369 + DCW 742 + DCW -801 + DCW 1874 + DCW -4521 + DCW 839 + DCW 1447 + DCW -407 + DCW 3938 + DCW -3678 + DCW -1984 + DCW 688 + DCW 164 + DCW 2348 + DCW -273 + DCW 1199 + DCW -3690 + DCW -629 + DCW 3309 + DCW 138 + DCW 1048 + DCW -3246 + DCW 340 + DCW 164 + DCW 575 + DCW 1191 + DCW -1774 + DCW 1338 + DCW -2759 + DCW 2126 + DCW 2118 + DCW -3980 + DCW 2277 + DCW -600 + DCW -176 + DCW 2587 + DCW -1728 + DCW 533 + DCW -1258 + DCW -910 + DCW 1074 + DCW 830 + DCW 1703 + DCW -1996 + DCW -1984 + DCW -751 + DCW 2592 + DCW 302 + DCW 88 + DCW 608 + DCW -4621 + DCW 2843 + DCW 595 + DCW -235 + DCW 2759 + DCW -3879 + DCW -92 + DCW 1099 + DCW 1375 + DCW 403 + DCW -1979 + DCW 1065 + DCW -1006 + DCW 486 + DCW 1036 + DCW -1199 + DCW -38 + DCW 109 + DCW -491 + DCW -348 + DCW 1908 + DCW -1338 + DCW -952 + DCW 1434 + DCW -2415 + DCW 1879 + DCW 1464 + DCW -1703 + DCW 1157 + DCW -1694 + DCW 826 + DCW 717 + DCW 143 + DCW 1233 + DCW -3871 + DCW 2231 + DCW 1027 + DCW -1694 + DCW 2202 + DCW -285 + DCW -2990 + DCW -793 + DCW 4630 + DCW -1510 + DCW 264 + DCW -654 + DCW -3774 + DCW 4948 + DCW -893 + DCW -906 + DCW 2139 + DCW -1556 + DCW -1543 + DCW 516 + DCW 3887 + DCW -2629 + DCW -1841 + DCW 2143 + DCW -1279 + DCW 2017 + DCW -424 + DCW -1375 + DCW 843 + DCW -474 + DCW -570 + DCW 650 + DCW 2755 + DCW -3493 + DCW -713 + DCW 2294 + DCW -981 + DCW 1841 + DCW -985 + DCW -310 + DCW -1074 + DCW -59 + DCW 2202 + DCW -1371 + DCW 1459 + DCW 50 + DCW -3384 + DCW 1090 + DCW 2491 + DCW -1531 + DCW 478 + DCW 725 + DCW -2948 + DCW 1698 + DCW 1715 + DCW -2445 + DCW 1619 + DCW -583 + DCW -2025 + DCW 3237 + DCW -109 + DCW -1627 + DCW -478 + DCW 566 + DCW 1099 + DCW -382 + DCW 495 + DCW -1656 + DCW -226 + DCW 1220 + DCW -507 + DCW 1589 + DCW 38 + DCW -2139 + DCW -453 + DCW 2097 + DCW 457 + DCW -1510 + DCW 1103 + DCW -705 + DCW -474 + DCW 604 + DCW 520 + DCW 902 + DCW -1631 + DCW 55 + DCW -1241 + DCW 1187 + DCW 1359 + DCW -2449 + DCW 2378 + DCW -621 + DCW -2474 + DCW 801 + DCW 1895 + DCW -252 + DCW -470 + DCW -155 + DCW -2634 + DCW 1971 + DCW 1128 + DCW 1782 + DCW 63 + DCW -4760 + DCW 1053 + DCW 1967 + DCW -126 + DCW -419 + DCW -415 + DCW -75 + DCW -931 + DCW 1178 + DCW 2424 + DCW -2558 + DCW -1350 + DCW 1564 + DCW -197 + DCW 805 + DCW -872 + DCW -478 + DCW 1430 + DCW -818 + DCW -1204 + DCW 1984 + DCW 486 + DCW -1686 + DCW -134 + DCW 499 + DCW 1568 + DCW -1455 + DCW -1208 + DCW 1250 + DCW 327 + DCW -80 + DCW 143 + DCW -621 + DCW -1967 + DCW 2709 + DCW 2097 + DCW -671 + DCW -327 + DCW -4080 + DCW -889 + DCW 5217 + DCW 1250 + DCW 499 + DCW -3191 + DCW -6341 + DCW 6215 + DCW 1627 + DCW -700 + DCW 3854 + DCW -5296 + DCW -3669 + DCW 2441 + DCW 3128 + DCW 2210 + DCW 688 + DCW -6114 + DCW -1111 + DCW 2986 + DCW -595 + DCW 5024 + DCW -1820 + DCW -3133 + DCW -1489 + DCW -822 + DCW 6408 + DCW 88 + DCW -2831 + DCW -2298 + END + \ No newline at end of file diff --git a/Obj_4/Src/principal.c b/Obj_4/Src/principal.c new file mode 100644 index 0000000..4282b2f --- /dev/null +++ b/Obj_4/Src/principal.c @@ -0,0 +1,145 @@ +//AFONSO Perrine LARTIGUE Auriane +#include "gassp72.h" + +#define SYSTICK_PER 360000 // 72 MHz * 5ms +#include "etat.h" +#define Periode_en_Tck PeriodeSonMicroSec*72 +#define Periode_PWM_en_Tck 320 + +extern void timer_callback(void); +extern int PeriodeSonMicroSec; +extern short Son ; +extern int LongueurSon ; + +type_etat etat; + + +unsigned short dma_buf[64]; // buffer de 64 short ints pour le DMA +int compteur[6]; //compteur d'occurence en fonction de M2(k) et M2TIR +int point[6]; // contient les points des 6 joueurs +int CalculM(int,unsigned short *); +int M2[64]; + +void sys_callback(){ + + GPIO_Set(GPIOB, 1); // pour mesurer la durée réelle du traitement DMA+DFT+compteurs. + + // Démarrage DMA pour 64 points + Start_DMA1(64); + Wait_On_End_Of_DMA1(); + Stop_DMA1; + + int M2TIR=0x2A7138 ; //seuil à calculer + + for (int k=0; k<64; k++){ + M2[k]=CalculM(k,dma_buf); + if (M2[k] > M2TIR){ // incrémenté chaque fois que M2(k) dépasse le seuil fixé M2TIR + switch(k){ + case 17: + compteur[0]++; //tir à 85kHz + break; + case 18: + compteur[1]++; //tir à 90kHz + break; + case 19: + compteur[2]++; // tir à 95kHz + break ; + case 20: + compteur[3]++; // tir à 100kHz + break; + case 23: + compteur[4]++; // tir à 115kHz + break; + case 24: + compteur[5]++; // tir à 120kHz + break; + }} + else { + switch(k){ //remise à zéro + case 17: + compteur[0]=0; //tir à 85kHz + break; + case 18: + compteur[1]=0; //tir à 90kHz + break; + case 19: + compteur[2]=0; // tir à 95kHz + break ; + case 20: + compteur[3]=0; // tir à 100kHz + break; + case 23: + compteur[4]=0; // tir à 115kHz + break; + case 24: + compteur[5]=0; // tir à 120kHz + break; + } + } + GPIO_Clear(GPIOB, 1); + + } + for (int j = 0 ; j < 6 ; j++){ + if(compteur[j]==3){ + point[j]++; // on incremente le score du joueur j + + etat.position = 0; + + + } + } + } + + +int main(){ + //initialisation variable etat + etat.periode_ticks = PeriodeSonMicroSec ; + etat.taille = LongueurSon; + etat.son = &Son ; + etat.position = etat.taille; + // activation de la PLL qui multiplie la fréquence du quartz par 9 + CLOCK_Configure(); + // config port PB1 pour être utilisé en sortie + GPIO_Configure(GPIOB, 0, OUTPUT, ALT_PPULL); + etat.resolution = PWM_Init_ff( TIM3 , 3 , Periode_PWM_en_Tck ); + // initialisation du timer 4 + // Periode_en_Tck doit fournir la durée entre interruptions, + // exprimée en périodes Tck de l'horloge principale du STM32 (72 MHz) + + Timer_1234_Init_ff( TIM4, Periode_en_Tck ); + // enregistrement de la fonction de traitement de l'interruption timer + // ici le 2 est la priorité, timer_callback est l'adresse de cette fonction, a créér en asm, + // cette fonction doit être conforme à l'AAPCS + Active_IT_Debordement_Timer( TIM4, 2, timer_callback ); + // lancement du timer + Run_Timer( TIM4 ); + Run_Timer (TIM3) ; + + // activation de la PLL qui multiplie la fréquence du quartz par 9 + CLOCK_Configure(); + // PA2 (ADC voie 2) = entrée analog + GPIO_Configure(GPIOA, 2, INPUT, ANALOG); + // PB1 = sortie pour profilage à l'oscillo + GPIO_Configure(GPIOB, 1, OUTPUT, OUTPUT_PPULL); + // PB14 = sortie pour LED + GPIO_Configure(GPIOB, 14, OUTPUT, OUTPUT_PPULL); + + // activation ADC, sampling time 1us + Init_TimingADC_ActiveADC_ff( ADC1, 0x52 ); + Single_Channel_ADC( ADC1, 2 ); + // Déclenchement ADC par timer2, periode (72MHz/320kHz)ticks + Init_Conversion_On_Trig_Timer_ff( ADC1, TIM2_CC2, 225 ); + // Config DMA pour utilisation du buffer dma_buf (a créér) + Init_ADC1_DMA1( 0, dma_buf ); + + // Config Timer, période exprimée en périodes horloge CPU (72 MHz) + Systick_Period_ff( SYSTICK_PER ); + // enregistrement de la fonction de traitement de l'interruption timer + // ici le 3 est la priorité, sys_callback est l'adresse de cette fonction, a créér en C + Systick_Prio_IT( 3, sys_callback ); + SysTick_On; + SysTick_Enable_IT; + + while(1){ + } +} diff --git a/Obj_4/Src/startup-rvds.s b/Obj_4/Src/startup-rvds.s new file mode 100644 index 0000000..a7b631a --- /dev/null +++ b/Obj_4/Src/startup-rvds.s @@ -0,0 +1,335 @@ +;******************** (C) COPYRIGHT 2011 STMicroelectronics ******************** +;* File Name : startup_stm32f10x_md.s +;* Author : MCD Application Team +;* Version : V3.5.0 +;* Date : 11-March-2011 +;* Description : STM32F10x Medium Density Devices vector table for MDK-ARM +;* toolchain. +;* This module performs: +;* - Set the initial SP +;* - Set the initial PC == Reset_Handler +;* - Set the vector table entries with the exceptions ISR address +;* - Configure the clock system +;* - Branches to __main in the C library (which eventually +;* calls main()). +;* After Reset the CortexM3 processor is in Thread mode, +;* priority is Privileged, and the Stack is set to Main. +;* <<< Use Configuration Wizard in Context Menu >>> +;******************************************************************************* +; THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS +; WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME. +; AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT, +; INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE +; CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING +; INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. +;******************************************************************************* + +; Amount of memory (in bytes) allocated for Stack +; Tailor this value to your application needs +; Stack Configuration +; Stack Size (in Bytes) <0x0-0xFFFFFFFF:8> +; + +Stack_Size EQU 0x00000400 + + AREA STACK, NOINIT, READWRITE, ALIGN=3 +Stack_Mem SPACE Stack_Size +__initial_sp + + +; Heap Configuration +; Heap Size (in Bytes) <0x0-0xFFFFFFFF:8> +; + +Heap_Size EQU 0x00000200 + + 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 ; Reset Handler + DCD NMI_Handler ; NMI Handler + DCD HardFault_Handler ; Hard Fault Handler + DCD MemManage_Handler ; MPU Fault Handler + DCD BusFault_Handler ; Bus Fault Handler + DCD UsageFault_Handler ; Usage Fault Handler + DCD 0 ; Reserved + DCD 0 ; Reserved + DCD 0 ; Reserved + DCD 0 ; Reserved + DCD SVC_Handler ; SVCall Handler + DCD DebugMon_Handler ; Debug Monitor Handler + DCD 0 ; Reserved + DCD PendSV_Handler ; PendSV Handler + DCD SysTick_Handler ; SysTick Handler + + ; External Interrupts + DCD WWDG_IRQHandler ; Window Watchdog + DCD PVD_IRQHandler ; PVD through EXTI Line detect + DCD TAMPER_IRQHandler ; Tamper + DCD RTC_IRQHandler ; RTC + DCD FLASH_IRQHandler ; Flash + DCD RCC_IRQHandler ; RCC + DCD EXTI0_IRQHandler ; EXTI Line 0 + DCD EXTI1_IRQHandler ; EXTI Line 1 + DCD EXTI2_IRQHandler ; EXTI Line 2 + DCD EXTI3_IRQHandler ; EXTI Line 3 + DCD EXTI4_IRQHandler ; EXTI Line 4 + DCD DMA1_Channel1_IRQHandler ; DMA1 Channel 1 + DCD DMA1_Channel2_IRQHandler ; DMA1 Channel 2 + DCD DMA1_Channel3_IRQHandler ; DMA1 Channel 3 + DCD DMA1_Channel4_IRQHandler ; DMA1 Channel 4 + DCD DMA1_Channel5_IRQHandler ; DMA1 Channel 5 + DCD DMA1_Channel6_IRQHandler ; DMA1 Channel 6 + DCD DMA1_Channel7_IRQHandler ; DMA1 Channel 7 + DCD ADC1_2_IRQHandler ; ADC1_2 + DCD USB_HP_CAN1_TX_IRQHandler ; USB High Priority or CAN1 TX + DCD USB_LP_CAN1_RX0_IRQHandler ; USB Low Priority or CAN1 RX0 + DCD CAN1_RX1_IRQHandler ; CAN1 RX1 + DCD CAN1_SCE_IRQHandler ; CAN1 SCE + DCD EXTI9_5_IRQHandler ; EXTI Line 9..5 + DCD TIM1_BRK_IRQHandler ; TIM1 Break + DCD TIM1_UP_IRQHandler ; TIM1 Update + DCD TIM1_TRG_COM_IRQHandler ; TIM1 Trigger and Commutation + DCD TIM1_CC_IRQHandler ; TIM1 Capture Compare + DCD TIM2_IRQHandler ; TIM2 + DCD TIM3_IRQHandler ; TIM3 + DCD TIM4_IRQHandler ; TIM4 + DCD I2C1_EV_IRQHandler ; I2C1 Event + DCD I2C1_ER_IRQHandler ; I2C1 Error + DCD I2C2_EV_IRQHandler ; I2C2 Event + DCD I2C2_ER_IRQHandler ; I2C2 Error + DCD SPI1_IRQHandler ; SPI1 + DCD SPI2_IRQHandler ; SPI2 + DCD USART1_IRQHandler ; USART1 + DCD USART2_IRQHandler ; USART2 + DCD USART3_IRQHandler ; USART3 + DCD EXTI15_10_IRQHandler ; EXTI Line 15..10 + DCD RTCAlarm_IRQHandler ; RTC Alarm through EXTI Line + DCD USBWakeUp_IRQHandler ; USB Wakeup from suspend +__Vectors_End + +__Vectors_Size EQU __Vectors_End - __Vectors + + AREA |.text|, CODE, READONLY + +; Reset handler +Reset_Handler PROC + EXPORT Reset_Handler [WEAK] + IMPORT __main + + LDR R0, =SystemInit + BLX R0 + +; +; Enable UsageFault, MemFault and Busfault interrupts +; +_SHCSR EQU 0xE000ED24 ; SHCSR is located at address 0xE000ED24 + LDR.W R0, =_SHCSR + LDR R1, [R0] ; Read CPACR + ORR R1, R1, #(0x7 << 16) ; Set bits 16,17,18 to enable usagefault, busfault, memfault interrupts + STR R1, [R0] ; Write back the modified value to the CPACR + DSB ; Wait for store to complete + +; +; Set priority grouping (PRIGROUP) in AIRCR to 3 (16 levels for group priority and 0 for subpriority) +; +_AIRCR EQU 0xE000ED0C +_AIRCR_VAL EQU 0x05FA0300 + LDR.W R0, =_AIRCR + LDR.W R1, =_AIRCR_VAL + STR R1,[R0] + +; +; Finaly, jump to main function (void main (void)) +; + LDR R0, =__main + BX R0 + ENDP + +SystemInit PROC + EXPORT SystemInit [WEAK] + BX LR + 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 +MemManage_Handler\ + PROC + EXPORT MemManage_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 WWDG_IRQHandler [WEAK] + EXPORT PVD_IRQHandler [WEAK] + EXPORT TAMPER_IRQHandler [WEAK] + EXPORT RTC_IRQHandler [WEAK] + EXPORT FLASH_IRQHandler [WEAK] + EXPORT RCC_IRQHandler [WEAK] + EXPORT EXTI0_IRQHandler [WEAK] + EXPORT EXTI1_IRQHandler [WEAK] + EXPORT EXTI2_IRQHandler [WEAK] + EXPORT EXTI3_IRQHandler [WEAK] + EXPORT EXTI4_IRQHandler [WEAK] + EXPORT DMA1_Channel1_IRQHandler [WEAK] + EXPORT DMA1_Channel2_IRQHandler [WEAK] + EXPORT DMA1_Channel3_IRQHandler [WEAK] + EXPORT DMA1_Channel4_IRQHandler [WEAK] + EXPORT DMA1_Channel5_IRQHandler [WEAK] + EXPORT DMA1_Channel6_IRQHandler [WEAK] + EXPORT DMA1_Channel7_IRQHandler [WEAK] + EXPORT ADC1_2_IRQHandler [WEAK] + EXPORT USB_HP_CAN1_TX_IRQHandler [WEAK] + EXPORT USB_LP_CAN1_RX0_IRQHandler [WEAK] + EXPORT CAN1_RX1_IRQHandler [WEAK] + EXPORT CAN1_SCE_IRQHandler [WEAK] + EXPORT EXTI9_5_IRQHandler [WEAK] + EXPORT TIM1_BRK_IRQHandler [WEAK] + EXPORT TIM1_UP_IRQHandler [WEAK] + EXPORT TIM1_TRG_COM_IRQHandler [WEAK] + EXPORT TIM1_CC_IRQHandler [WEAK] + EXPORT TIM2_IRQHandler [WEAK] + EXPORT TIM3_IRQHandler [WEAK] + EXPORT TIM4_IRQHandler [WEAK] + EXPORT I2C1_EV_IRQHandler [WEAK] + EXPORT I2C1_ER_IRQHandler [WEAK] + EXPORT I2C2_EV_IRQHandler [WEAK] + EXPORT I2C2_ER_IRQHandler [WEAK] + EXPORT SPI1_IRQHandler [WEAK] + EXPORT SPI2_IRQHandler [WEAK] + EXPORT USART1_IRQHandler [WEAK] + EXPORT USART2_IRQHandler [WEAK] + EXPORT USART3_IRQHandler [WEAK] + EXPORT EXTI15_10_IRQHandler [WEAK] + EXPORT RTCAlarm_IRQHandler [WEAK] + EXPORT USBWakeUp_IRQHandler [WEAK] + +WWDG_IRQHandler +PVD_IRQHandler +TAMPER_IRQHandler +RTC_IRQHandler +FLASH_IRQHandler +RCC_IRQHandler +EXTI0_IRQHandler +EXTI1_IRQHandler +EXTI2_IRQHandler +EXTI3_IRQHandler +EXTI4_IRQHandler +DMA1_Channel1_IRQHandler +DMA1_Channel2_IRQHandler +DMA1_Channel3_IRQHandler +DMA1_Channel4_IRQHandler +DMA1_Channel5_IRQHandler +DMA1_Channel6_IRQHandler +DMA1_Channel7_IRQHandler +ADC1_2_IRQHandler +USB_HP_CAN1_TX_IRQHandler +USB_LP_CAN1_RX0_IRQHandler +CAN1_RX1_IRQHandler +CAN1_SCE_IRQHandler +EXTI9_5_IRQHandler +TIM1_BRK_IRQHandler +TIM1_UP_IRQHandler +TIM1_TRG_COM_IRQHandler +TIM1_CC_IRQHandler +TIM2_IRQHandler +TIM3_IRQHandler +TIM4_IRQHandler +I2C1_EV_IRQHandler +I2C1_ER_IRQHandler +I2C2_EV_IRQHandler +I2C2_ER_IRQHandler +SPI1_IRQHandler +SPI2_IRQHandler +USART1_IRQHandler +USART2_IRQHandler +USART3_IRQHandler +EXTI15_10_IRQHandler +RTCAlarm_IRQHandler +USBWakeUp_IRQHandler + + B . + + ENDP + + ALIGN + +;******************************************************************************* +; User Stack and Heap initialization +;******************************************************************************* + 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 + + LDR R0, = Heap_Mem + LDR R1, =(Stack_Mem + Stack_Size) + LDR R2, = (Heap_Mem + Heap_Size) + LDR R3, = Stack_Mem + BX LR + + ALIGN + + ENDIF + + END + +;******************* (C) COPYRIGHT 2011 STMicroelectronics *****END OF FILE*****