From 7a52944e1449da4fc10008063aba9f39e24f0662 Mon Sep 17 00:00:00 2001 From: cesare Date: Fri, 18 Aug 2023 17:58:24 -0700 Subject: [PATCH] v2.2.7 - Add support for IAR tools and C startup code (irq vector) - Fix standard CLINT vectored mode (jmp instr) - Fix various trap & emulation bugs (E21 CLIC) - Add vector table mtvec.s (CLINT/CLIC) - Minor changes to zones' code to comply with standard CLINT vector - hexfive-conf @29253d, hexfive-kern @3d13f6 --- .settings/language.settings.xml | 10 +- bsp/E21/multizone.cfg | 2 +- bsp/E21/newlib/crt0.S | 8 + bsp/E21/newlib/mtvec.s | 62 +++++++ bsp/E21/newlib/newlib.mk | 1 + bsp/E21/platform.h | 8 +- bsp/E31/newlib/crt0.S | 9 +- bsp/E31/newlib/mtvec.s | 55 ++++++ bsp/E31/newlib/newlib.mk | 1 + bsp/FE310/mtvec.s | 55 ++++++ bsp/FE310/newlib/crt0.S | 9 +- bsp/FE310/newlib/newlib.mk | 1 + bsp/S51/newlib/crt0.S | 9 +- bsp/S51/newlib/mtvec.s | 55 ++++++ bsp/S51/newlib/newlib.mk | 1 + bsp/X300/newlib/crt0.S | 15 +- bsp/X300/newlib/mtvec.s | 55 ++++++ bsp/X300/newlib/newlib.mk | 1 + multizone-sdk-FE310.launch | 5 +- multizone-sdk.launch | 9 +- multizone.jar | Bin 174288 -> 174788 bytes zone1/main.c | 312 +++++++++++++++----------------- zone2/main.c | 46 ++--- zone3.1/main.c | 4 - zone3/main.c | 16 +- zone4/main.c | 12 +- 26 files changed, 516 insertions(+), 245 deletions(-) create mode 100644 bsp/E21/newlib/mtvec.s create mode 100644 bsp/E31/newlib/mtvec.s create mode 100644 bsp/FE310/mtvec.s create mode 100644 bsp/S51/newlib/mtvec.s create mode 100644 bsp/X300/newlib/mtvec.s diff --git a/.settings/language.settings.xml b/.settings/language.settings.xml index 9d2f0d7..e2ee4c9 100644 --- a/.settings/language.settings.xml +++ b/.settings/language.settings.xml @@ -4,7 +4,7 @@ - + @@ -14,7 +14,7 @@ - + @@ -24,7 +24,7 @@ - + @@ -34,7 +34,7 @@ - + @@ -44,7 +44,7 @@ - + diff --git a/bsp/E21/multizone.cfg b/bsp/E21/multizone.cfg index 89327cf..af6b95d 100644 --- a/bsp/E21/multizone.cfg +++ b/bsp/E21/multizone.cfg @@ -11,7 +11,7 @@ Zone = 1 clic = 159 # UART base = 0x40408000; size = 32K; rwx = rx # FLASH base = 0x80003000; size = 4K; rwx = rw # RAM - base = 0x20000000; size = 0x100; rwx = rw # UART + base = 0x20000000; size = 0x100; rwx = rw # UART base = 0x02800000; size =0x1000; rwx = r # CLIC (ro) Zone = 2 diff --git a/bsp/E21/newlib/crt0.S b/bsp/E21/newlib/crt0.S index 7e77142..15e7d3d 100644 --- a/bsp/E21/newlib/crt0.S +++ b/bsp/E21/newlib/crt0.S @@ -7,6 +7,12 @@ _start: .cfi_startproc .cfi_undefined ra + + /* setup trap vector - CLIC vectored mode */ + la a0, _mtvec + csrw mtvec, a0 + csrs mtvec, 0b11 + .option push .option norelax la gp, __global_pointer$ @@ -64,3 +70,5 @@ _init: ret .type _fini, @function _fini: ret .size _fini, .-_fini + + .include "mtvec.s" diff --git a/bsp/E21/newlib/mtvec.s b/bsp/E21/newlib/mtvec.s new file mode 100644 index 0000000..805b55d --- /dev/null +++ b/bsp/E21/newlib/mtvec.s @@ -0,0 +1,62 @@ +/* Copyright(C) 2020 Hex Five Security, Inc. - All Rights Reserved */ + + .align 2 + +_mtvec: + +irq0: .word trp_isr +irq1: .word 1f +irq2: .word 1f +irq3: .word msi_isr +irq4: .word 1f +irq5: .word 1f +irq6: .word 1f +irq7: .word tmr_isr +irq8: .word 1f +irq9: .word 1f +irq10: .word 1f +irq11: .word 1f +irq12: .word 1f +irq13: .word 1f +irq14: .word 1f +irq15: .word 1f +irq16: .word 1f +irq17: .word 1f +irq18: .word 1f +irq19: .word dma_isr +irq20: .word btn0_isr +irq21: .word btn1_isr +irq22: .word btn2_isr +irq23: .word 1f +irq24: .word 1f +irq25: .word 1f +irq26: .word 1f +irq27: .word 1f +irq28: .word 1f +irq29: .word 1f +irq30: .word 1f +irq31: .word 1f + +.macro FILL from, to +.word 1f +.if \to-\from +FILL "(\from+1)",\to +.endif +.endm + +FILL 32, 99 +FILL 100, 158 + +irq159: .word uart_isr + + .weak trp_isr, msi_isr, tmr_isr, dma_isr, uart_isr, btn0_isr, btn1_isr, btn2_isr + +trp_isr: +msi_isr: +tmr_isr: +dma_isr: +uart_isr: +btn0_isr: +btn1_isr: +btn2_isr: +1: j . diff --git a/bsp/E21/newlib/newlib.mk b/bsp/E21/newlib/newlib.mk index 1188ad2..22b7867 100644 --- a/bsp/E21/newlib/newlib.mk +++ b/bsp/E21/newlib/newlib.mk @@ -6,6 +6,7 @@ all: $(TARGET) ASM_SRCS += $(NEWLIB_DIR)/crt0.S C_SRCS += $(NEWLIB_DIR)/newlib.c +INCLUDES += -I$(NEWLIB_DIR) INCLUDES += -I$(PLATFORM_DIR) LDFLAGS += -T $(PLATFORM_DIR)/memory.lds diff --git a/bsp/E21/platform.h b/bsp/E21/platform.h index 3f34499..7246b14 100644 --- a/bsp/E21/platform.h +++ b/bsp/E21/platform.h @@ -104,9 +104,9 @@ #define BTN2 6 #define BTN3 7 -#define BTN0_IRQ 16+4 -#define BTN1_IRQ 16+5 -#define BTN2_IRQ 16+6 +#define BTN0_IRQ 20 +#define BTN1_IRQ 21 +#define BTN2_IRQ 22 // ----------------------------------------------------------------------------- // LED0 (GPIO) @@ -140,7 +140,7 @@ #define _REG64(base, offset) (*(volatile uint64_t *)((base) + (offset))) #define _REG32(base, offset) (*(volatile uint32_t *)((base) + (offset))) -#define CLIC_REG(offset) _REG64(CLIC_BASE, offset) +#define CLIC_REG(offset) _REG32(CLIC_BASE, offset) #define GPIO_REG(offset) _REG32(GPIO_BASE, offset) #define PWM_REG(offset) _REG32(PWM_BASE, offset) #define UART_REG(offset) _REG32(UART_BASE, offset) diff --git a/bsp/E31/newlib/crt0.S b/bsp/E31/newlib/crt0.S index 97b61f2..43e5fa2 100644 --- a/bsp/E31/newlib/crt0.S +++ b/bsp/E31/newlib/crt0.S @@ -7,6 +7,12 @@ _start: .cfi_startproc .cfi_undefined ra + + /* setup trap vector */ + la a0, _mtvec + csrw mtvec, a0 + csrs mtvec, 1 + .option push .option norelax la gp, __global_pointer$ @@ -36,7 +42,6 @@ _start: bltu a0, a1, 1b 2: - /* Call global constructors */ la a0, __libc_fini_array call atexit @@ -65,3 +70,5 @@ _init: ret .type _fini, @function _fini: ret .size _fini, .-_fini + + .include "mtvec.s" diff --git a/bsp/E31/newlib/mtvec.s b/bsp/E31/newlib/mtvec.s new file mode 100644 index 0000000..95352de --- /dev/null +++ b/bsp/E31/newlib/mtvec.s @@ -0,0 +1,55 @@ +/* Copyright(C) 2020 Hex Five Security, Inc. - All Rights Reserved */ + + .align 2 + +_mtvec: + + .option push + .option norvc + +irq0: j trp_isr +irq1: j . +irq2: j . +irq3: j msi_isr +irq4: j . +irq5: j . +irq6: j . +irq7: j tmr_isr +irq8: j . +irq9: j . +irq10: j . +irq11: j uart_isr +irq12: j . +irq13: j . +irq14: j . +irq15: j . +irq16: j . +irq17: j . +irq18: j . +irq19: j dma_isr +irq20: j btn0_isr +irq21: j btn1_isr +irq22: j btn2_isr +irq23: j . +irq24: j . +irq25: j . +irq26: j . +irq27: j . +irq28: j . +irq29: j . +irq30: j . +irq31: j . + + .option pop + + .weak trp_isr, msi_isr, tmr_isr, dma_isr, uart_isr, btn0_isr, btn1_isr, btn2_isr + +trp_isr: +msi_isr: +tmr_isr: +dma_isr: +uart_isr: +btn0_isr: +btn1_isr: +btn2_isr: + j . diff --git a/bsp/E31/newlib/newlib.mk b/bsp/E31/newlib/newlib.mk index 1188ad2..22b7867 100644 --- a/bsp/E31/newlib/newlib.mk +++ b/bsp/E31/newlib/newlib.mk @@ -6,6 +6,7 @@ all: $(TARGET) ASM_SRCS += $(NEWLIB_DIR)/crt0.S C_SRCS += $(NEWLIB_DIR)/newlib.c +INCLUDES += -I$(NEWLIB_DIR) INCLUDES += -I$(PLATFORM_DIR) LDFLAGS += -T $(PLATFORM_DIR)/memory.lds diff --git a/bsp/FE310/mtvec.s b/bsp/FE310/mtvec.s new file mode 100644 index 0000000..84d1da2 --- /dev/null +++ b/bsp/FE310/mtvec.s @@ -0,0 +1,55 @@ +/* Copyright(C) 2020 Hex Five Security, Inc. - All Rights Reserved */ + + .align 2 + +_mtvec: + + .option push + .option norvc + +irq0: j trp_isr +irq1: j . +irq2: j . +irq3: j msi_isr +irq4: j . +irq5: j . +irq6: j . +irq7: j tmr_isr +irq8: j . +irq9: j . +irq10: j . +irq11: j uart_isr +irq12: j . +irq13: j . +irq14: j . +irq15: j . +irq16: j . +irq17: j . +irq18: j . +irq19: j dma_isr +irq20: j . +irq21: j . +irq22: j . +irq23: j . +irq24: j . +irq25: j . +irq26: j . +irq27: j . +irq28: j . +irq29: j . +irq30: j . +irq31: j . + + .option pop + + .weak trp_isr, msi_isr, tmr_isr, dma_isr, uart_isr, btn0_isr, btn1_isr, btn2_isr + +trp_isr: +msi_isr: +tmr_isr: +dma_isr: +uart_isr: +btn0_isr: +btn1_isr: +btn2_isr: + j . diff --git a/bsp/FE310/newlib/crt0.S b/bsp/FE310/newlib/crt0.S index 97b61f2..10d2d8d 100644 --- a/bsp/FE310/newlib/crt0.S +++ b/bsp/FE310/newlib/crt0.S @@ -7,6 +7,12 @@ _start: .cfi_startproc .cfi_undefined ra + + /* setup trap vector */ + la a0, _mtvec + csrw mtvec, a0 + csrs mtvec, 1 + .option push .option norelax la gp, __global_pointer$ @@ -36,7 +42,6 @@ _start: bltu a0, a1, 1b 2: - /* Call global constructors */ la a0, __libc_fini_array call atexit @@ -65,3 +70,5 @@ _init: ret .type _fini, @function _fini: ret .size _fini, .-_fini + + .include "mtvec.s" diff --git a/bsp/FE310/newlib/newlib.mk b/bsp/FE310/newlib/newlib.mk index 1188ad2..22b7867 100644 --- a/bsp/FE310/newlib/newlib.mk +++ b/bsp/FE310/newlib/newlib.mk @@ -6,6 +6,7 @@ all: $(TARGET) ASM_SRCS += $(NEWLIB_DIR)/crt0.S C_SRCS += $(NEWLIB_DIR)/newlib.c +INCLUDES += -I$(NEWLIB_DIR) INCLUDES += -I$(PLATFORM_DIR) LDFLAGS += -T $(PLATFORM_DIR)/memory.lds diff --git a/bsp/S51/newlib/crt0.S b/bsp/S51/newlib/crt0.S index 97b61f2..9145e3d 100644 --- a/bsp/S51/newlib/crt0.S +++ b/bsp/S51/newlib/crt0.S @@ -7,6 +7,12 @@ _start: .cfi_startproc .cfi_undefined ra + + /* setup trap vector */ + la a0, _mtvec + csrw mtvec, a0 + csrs mtvec, 1 + .option push .option norelax la gp, __global_pointer$ @@ -36,7 +42,6 @@ _start: bltu a0, a1, 1b 2: - /* Call global constructors */ la a0, __libc_fini_array call atexit @@ -65,3 +70,5 @@ _init: ret .type _fini, @function _fini: ret .size _fini, .-_fini + + .include "mtvec.s" diff --git a/bsp/S51/newlib/mtvec.s b/bsp/S51/newlib/mtvec.s new file mode 100644 index 0000000..95352de --- /dev/null +++ b/bsp/S51/newlib/mtvec.s @@ -0,0 +1,55 @@ +/* Copyright(C) 2020 Hex Five Security, Inc. - All Rights Reserved */ + + .align 2 + +_mtvec: + + .option push + .option norvc + +irq0: j trp_isr +irq1: j . +irq2: j . +irq3: j msi_isr +irq4: j . +irq5: j . +irq6: j . +irq7: j tmr_isr +irq8: j . +irq9: j . +irq10: j . +irq11: j uart_isr +irq12: j . +irq13: j . +irq14: j . +irq15: j . +irq16: j . +irq17: j . +irq18: j . +irq19: j dma_isr +irq20: j btn0_isr +irq21: j btn1_isr +irq22: j btn2_isr +irq23: j . +irq24: j . +irq25: j . +irq26: j . +irq27: j . +irq28: j . +irq29: j . +irq30: j . +irq31: j . + + .option pop + + .weak trp_isr, msi_isr, tmr_isr, dma_isr, uart_isr, btn0_isr, btn1_isr, btn2_isr + +trp_isr: +msi_isr: +tmr_isr: +dma_isr: +uart_isr: +btn0_isr: +btn1_isr: +btn2_isr: + j . diff --git a/bsp/S51/newlib/newlib.mk b/bsp/S51/newlib/newlib.mk index 6689ffd..9abf1ca 100644 --- a/bsp/S51/newlib/newlib.mk +++ b/bsp/S51/newlib/newlib.mk @@ -6,6 +6,7 @@ all: $(TARGET) ASM_SRCS += $(NEWLIB_DIR)/crt0.S C_SRCS += $(NEWLIB_DIR)/newlib.c +INCLUDES += -I$(NEWLIB_DIR) INCLUDES += -I$(PLATFORM_DIR) LDFLAGS += -T $(PLATFORM_DIR)/memory.lds diff --git a/bsp/X300/newlib/crt0.S b/bsp/X300/newlib/crt0.S index 97b61f2..ae3b2c4 100644 --- a/bsp/X300/newlib/crt0.S +++ b/bsp/X300/newlib/crt0.S @@ -7,10 +7,16 @@ _start: .cfi_startproc .cfi_undefined ra -.option push -.option norelax + + /* setup trap vector */ + la a0, _mtvec + csrw mtvec, a0 + csrs mtvec, 1 + + .option push + .option norelax la gp, __global_pointer$ -.option pop + .option pop la sp, _sp /* Load data section */ @@ -36,7 +42,6 @@ _start: bltu a0, a1, 1b 2: - /* Call global constructors */ la a0, __libc_fini_array call atexit @@ -65,3 +70,5 @@ _init: ret .type _fini, @function _fini: ret .size _fini, .-_fini + + .include "mtvec.s" diff --git a/bsp/X300/newlib/mtvec.s b/bsp/X300/newlib/mtvec.s new file mode 100644 index 0000000..3d83a53 --- /dev/null +++ b/bsp/X300/newlib/mtvec.s @@ -0,0 +1,55 @@ +/* Copyright(C) 2020 Hex Five Security, Inc. - All Rights Reserved */ + + .align 2 + +_mtvec: + + .option push + .option norvc + +irq0: j trp_isr +irq1: j . +irq2: j . +irq3: j msi_isr +irq4: j . +irq5: j . +irq6: j . +irq7: j tmr_isr +irq8: j . +irq9: j . +irq10: j . +irq11: j uart_isr +irq12: j . +irq13: j . +irq14: j . +irq15: j . +irq16: j btn0_isr +irq17: j btn1_isr +irq18: j btn2_isr +irq19: j dma_isr +irq20: j . +irq21: j . +irq22: j . +irq23: j . +irq24: j . +irq25: j . +irq26: j . +irq27: j . +irq28: j . +irq29: j . +irq30: j . +irq31: j . + + .option pop + + .weak trp_isr, msi_isr, tmr_isr, dma_isr, uart_isr, btn0_isr, btn1_isr, btn2_isr + +trp_isr: +msi_isr: +tmr_isr: +dma_isr: +uart_isr: +btn0_isr: +btn1_isr: +btn2_isr: + j . diff --git a/bsp/X300/newlib/newlib.mk b/bsp/X300/newlib/newlib.mk index eece7c1..637d3ad 100644 --- a/bsp/X300/newlib/newlib.mk +++ b/bsp/X300/newlib/newlib.mk @@ -6,6 +6,7 @@ all: $(TARGET) ASM_SRCS += $(NEWLIB_DIR)/crt0.S C_SRCS += $(NEWLIB_DIR)/newlib.c +INCLUDES += -I$(NEWLIB_DIR) INCLUDES += -I$(PLATFORM_DIR) LDFLAGS += -T $(PLATFORM_DIR)/memory.lds diff --git a/multizone-sdk-FE310.launch b/multizone-sdk-FE310.launch index fcd2713..39c1cee 100644 --- a/multizone-sdk-FE310.launch +++ b/multizone-sdk-FE310.launch @@ -34,7 +34,7 @@ - + @@ -68,12 +68,15 @@ + + + diff --git a/multizone-sdk.launch b/multizone-sdk.launch index d6981f9..5a9cdf1 100644 --- a/multizone-sdk.launch +++ b/multizone-sdk.launch @@ -33,8 +33,8 @@ - - + + @@ -50,6 +50,7 @@ + @@ -57,10 +58,10 @@ - + - + diff --git a/multizone.jar b/multizone.jar index 87623f66472f36c79797db38e64701119771feda..e9739890167e78603fa88bc2e16cfe62cd563686 100644 GIT binary patch delta 93539 zcmZU(Q*6&fVohw@PA1mG>Daby+s4FsV@zyLZ0_HGukUDoeNgBIEaNv5)xg4|%93i0>a!_J3PIiLUQ= z;6Z3NWMY%BY14CI*wCtZG3P>pGj7)pH!mWohhZ;vJU;1jXb&z}e(#?pa);@gnY^#X zSpe@$;@1G^8u#7pT}&_u4C!Mbg1cKsR@qSU@JqWW4<6&El+UmqEA`u%gOI=B?3LkS za>_2ve%zcp6zeTKMjo26=rak{J7i!U>F2xPzsMIkRl=bj&xV`O1+j# zX}FD}D9|e}=myBSU-*5!e#kyl(PSCP06t8`lbS-$eSkK^3%u#5BDHKT{nyKwTV_+F z>MCY+md-PRj*Z#netWk}ovxLnbFTC8RL4{7a(bL9x>&5+?A;wl-#52PzlSz?bB`(?XO8puB2Rvpx z1P4nNc+Jvj5oC$}Nh)M1oaH{PN}9;qBJ#w!pLF$iikNOc=! zj8Qa-tap6YaW)M%PE~D~UpA$5Fa7dsIpPRBG@WY8H@Z zwUJ?Fvev&E4Z>2l9%p73-nVkbgYL+wi*@|vCBc+jbek$$S=oO`_d9M904r7tUgRf~ zQe)NevB}BGU*{sN5C7HiAc;~Ix!9o_anq{!3fXA&a#u4ou!au z>3)|7;)RB{>*cSj-Ns{YAbc#!gGR44cKYxei)u$R*U{gGiE%iDju1*jA@m~cqB^%q zhBzg>!%xfYtK|s7?u$80t(S7q*0e;|vrBC#Ld*NsIlI~tbEg&f%lG9ccLAbd6~p;t z$0HvCbbTCD|4DEW7u*7CWhF4~(6)b}kWtgUjv++Ue$E+ji>iN_z(cb z=Sn6|W?W~B$BTE@jlMCKh0g!89-K!Izw^p`q;v3}rL5_VqYJYdw-(K$in%N{z4xD& z_Bf1$U611Qd|UgP0NNWN;m;-q;2Pb;8#;fC@SUkk+FB5)8Jm$t#A1fz8Ge_R;HZCp zzU3%Q)FPmI8BGe-ZHfq5Jf$Ae?A-~8VD5}(vr03lVzj(Hf^O^h zM`04p;s{RgCexQA#Z0cHx!ffg#^-8h5!fIE!B7G@R=*5hf^?#k;B?F|>5-DpPg_ zAT2~G0Or`up&I8jY~|kai*KnEi=9GQJk6VZ+$4%B)6a!q>W5~C6HT@~0kIIzdDRR> z;6|ty_mw9BP_J%V^v&+A;9#3zH> z(xo@1498s}3l?zu46&nDfxb=v$mRT|Pft2G^Zgm*kn+gHM6hr6^e6xLM{6oNH*SnG zu0$PQ{@wR18Jzaev{GF7eq$@v;?)w5NoxFXMZ|wq;s~R;JL`2i4I8o^>SgqUJevO(h zG<o*{j57BaDkf0kn0$TA`OLw`zWzR!iMLhSdnllI>(xI20VnF5H)VtTR zi}I#~iMh*NV3w)P9uq6Nm<~!TQVl@I^23Rfc_6zc1RxRU@bQs%1&S!az=rc5cg^KdFQp zSWNA5f+t`eG|Jt@&VoX|Vm+P@nt(Ku>u9?#wK80NtWTKa?7s5Ab!DBWT^FbwI-HGu zUR+NaVdKKaCZUd)g3ZX|hu*`9sDqIu)yhNOvU#@0V9+T}05KJ?6P=`ac!?$lb$SRm z#H^+Z{h5T{sQg!ca_5cQ_Qxqqpm2^BfceX_JW*kqz<22ok`-U-@f-0G@H7F&bSo4eT_?E%gSUy_k{nv5O+KU&D%#&{?AnQ z*6Ype^dv3F`FkVA~ zSk3hOTyDX<9pTz#3l@9TD*G|hLKmGG>?@d*6z7}jyktA7iMv04BP!Jc?Ke+GnGXVVf)7M6?{PHq?a;rD)t_0EWMSdf)^vV! zz=46aV}ODEzpO)$L+)d@R#|<3{%7Fldl2!wqfFBF;-}w@-yJT}$14kU zOl1AbXda*i@j@u!(3e53IC|QK@k9L4@A)k)0ouE{r?ge0xVr^lM4~T-Ri<2>R(?Vc zjh4FHge8|Z{{*R~KZ(x0Qi@vw9Y_6 ze(1hQOV6!8ZHW33zTQQV&+k79JdX)?J3hWg?|vP=SF&!$4QwBud!f#2Q(@AgKHlaw;1JbfL&PWEFsFm(>iG#N-9hyxO#*O2{ zRj!4(Ai~!qzl(wv_9TC*}rerIlDEt;>c$PG4Q7F&T6W~vbmjW$`?wSR0!jIAjievOkw_$V zCP|z9f2{IalQEX^b~MDg@`Lg5RtD};+w9&_&J9)?K<`D*_32V2R>}A>03CIM^y- z*x?ew_3apXv1*DpFZ};0oqf&K6k5rP_T)L~n*y|rQ9HZzQAm3L0ZvTcHm09y5SBP9_7&Am!rY^o-A3KMOKu*doPZGExEYGaq5 zwj7GY{Rm_LjU@CfZx~1D802x+6h}<_l#a4~N&ir=t_4%|Gwg^-uBWEYH7nQ(Y7(LI zyu@FrW9QHFIF@ux;?4A}ZP_{7m5blN5l`6N2Vb%$ge(;WGa9fhE7BouwReIS*u5Dh&Lv*PMsS1*HxR zVWN}9D7NkkeKU(_XV`t2`+!%Rr#GVCAO0UL0!l1w=hC4@pC|?`p|hk7-fJ3=hy{^0 zE@`o#ENI_{OCfyky&Oo~bqd~9Z-BY_N6hGt6p1$S^9-DGj7zxS5GhJ4)xYOu?$h=O z#(M(5^0wpmOz4Pm!)p~T2Yhn1c`Ye-@3C}WL$HNotgM0M;Ago7coAY#jz~)xa5pS^ zBBh_$S-NQBtLy^^YvN_qjsjYqiy}h-xNR*xpdRxLqK?J!BpI7#`ER-ubASv9zYLWE&o)b&4~)TI%EI&8SDn+@`FXlYMfd0~d`OG&x~1gAZ-!ISP==}jr$42B z&ifB;f(tqCo!Nn|XxP`;BQnkpqZx1@PA`j?Szp4ah0e#@aY^z5-A00GJM4zKi7X?o-{vmuV8Pa@|nlO6hn4JL}Bqm~38adZwY zevi=1I{E~e^_1CxwnIt|FctyBE1W;C>~$72V^E+}m)LLg`@Sub8JE3heBvUWUWIGT zrzJ#<<^B~=7d?}$p4;TM7drv}mZ0InTQ_iAYz<|vkebw6$sLBu9s&3{i&=ubPG3Q) zJ>3KZCxyhogfB!<5Hjj91l7G}5RA_YQ-SWIL>X|dRw*b&R4nJ*UXxW$AAQLiy{q)2 zJ@9KIi>ffc#t+fjR(;YZ@acne?>1o%{+Ksc+y?uBuB|zvt85j}(iph*ACOp;E(zby zNv>a`3WwK(HZ9X-l7O+}ewnO}WS5UZ@XYZ-0zXhs)jjiFb9x=dLFx2Mu6kS9mtfyD zKJK4yc=K?7T=82&sV%9XprksCXp36mCEbbM`(ug4TNytutt5u>rRyI?P%t>m z@I-g9&js9FDc%cB?DhTKb%q_i@+Lx5uRoW^6RC9R-QpBTsb)&z}CC{Jttxe^2ObJxW9i<`-<)azUyv$`&C|IMSgc&!i_eKm_9pCgIE}X^UPMk0l zcK(h001v&sMo& z0?vY-#Qg6BmG1<~rt)ABQ&)EL%53m)+uq2P5GT@-mU^#KcdT6P=f@??o;em0sQzBJm>dZ$N~cQIC=?C z`&j!N*)ls79z#@+H=NwR`x6zl*bAe@5(>_gcv@xl01%;`hol}k`fE~_^z>AZc_MUW zxnAC%fgd78pUQIKP|MYb_yr&2|Dvt6p0?XU0Pz3OiwH6UUc`U&BL4rQm!>K7G)RE; zZ%I{E-{5oAmqS;Ls$w4eeR^Tn#kJ>0$O?y?+9R*rghFp~YgOZcu0*kG27>!`aD?AD z6Q8|d6 zt5N^pCU?)@R|lXakCSSTIi`c+eX6Ev_A7xamgKHpp1fPj*wYEOrWO7!vkKPF`T;T* z^TM?~3BK{zopX|!|C`#BfqhRP6d2eE^#99zNpUzFi0kT`ORCtTOuB)zNz*t4fY9fy zyWBGgd!5i%`SmAvhyJ#m-P7l0F7e-{I0P1-P@ASJ;%yVduk03nU@pdNa36PYE%=Qk zI10Ya5Ka@bwhzsoTF;McL!SHVr$@TuYsfX{?la=9`QR?@;Ck=}OK=?g7g(4Bp!v)N z=i9BiyDbHax%H*{7(w0bN0u!I`^@DrL;X&eWP{6yNMjs+`P%@JG8b@8D#RrhK+Yw> z{6x;pLHNRSwbNheNJJnJ;BiukQw=%brmddwalqd4x;b&`v6lghN2p74^r}^wr=k2O zQ8}cO>yQMFM+ht4scT+*S=9pwi7`}5Paa!W_> zpN@VrI0lIIhRsQIF3OfEHo-_D=i`TE?;UpUb>>|*J{Lczzsx(Ir$P3|=3d_BgRB80 zl1}hlh3&y2=8-i$qetxQdAdNzTER;z&fn1(>zD|zw?N>8I(Ox)#^|?3tRh3%%5DEA z`1aDA)A6*g9YDf&->{Ewoc8F0#F?$Cwt5QYp4{t0lsn>UFZp#Ka)w=g|c$ywQChWBJz1tLN5bOxb>D`-GgKINpYFg+DQNJe-*0l$Z7}zKiJ9EW` z{=)i-j>xAih16(XS#kVMeXdKahAJJ~Ex&TDW**T*)F5NS}cNkGi{$fJ9_jqDf?O}*h zOZS|U=686W?>6;k$c~$#ennUf>^4e7B2<09Ga}u@uorA*wcXi*!J{he-*QA>g|Ti-YtxueSC(P7o+i3@193^)k}^U;AJLm33;LP@rVb|hg` zl6~Um3`r*$5n_X9C;cX*1Uh+Z3*^I+@+%gneijxnAtTM}qYCllAh8yL&`?bY`Q5Wh z>9t7sryg-~P=2!b3RXjjlnbI;=D>`LJj@9QQ5+lGqC7t*x*+uv%?!X#x2v^lH1L$e z0{=pPOl?JmGeh&5e?$6(U!*27b5iB{v!VH%k2bkXmb0k(*&KG31&~{~Nx4&e`m2fU z?P8n<&a%0fDY*xxD9D^0<4=rsw*PPWuG5;%4?S#$5bB|G5Qd+y-m3Kwl_g|sofy9kcgy82&1V*D1!A+o%Z6CEPF@Z-!ZvytrG3auv5y41&9?hiSk+o1S6#jNMU&vA#fb-j;pdW7sJLz>BNWC%ZBLBpI#m$ zb*qWEo@ZjZ!YA!ev>&J9LF8%H5XzPk!iDV*AvZw!a8Y)h9yw#{D^klTYN7q2FI6|u zyGiI}4qjYEu1~b~>A(bis?BD}m3?BV6MFm`g5Ujy*LR{11FV+b6WTAo>a)UhlHU8` z&# zA14<&$vlYRd+P_+`JSNI<~L~^yJ9&_QW6#TIV{vlVEf^UV4kU{ftV4ngAC(Lp+R0OhK0{LfZptU~>3x$U-P?!i`aTNu$x@jyi=hLbZc-kT|-6Q@LUx(!oT zZV5RJi3^k;!h0P%bBh%iX!GBq2R*s^tu!{Jl~=-#QJF|txLNMCw`+_R!jFw13#f{& zRAkAISJOxIelOZ{j>q+HlLsmQ@&Lk2fJuY*?gRJMCN{U6|`q0koRNO{A+thH5Z?UXEYX4*l1<92+H2 zxIjaKYb25p+1V+Mr!#_OHDNp+0B}l&|I%>Vv=T4)@R|NLQG`FN#;bjdeKbBC1?zhR zyR)6iADB|kdb44LKe5hQZrdWt$7~MWvhp;Z7dzQJ=SODiRKIKpM}o=B9>hpU+8-$j zgnw8hb43ILzn3gnqc|i3vrISmSS8mK5^wG|^!Nmh5Po3Il-M!P$+9eKRy6_+u zc65fD25;pFXCMS#r6@93C+I9|6Is&W1h+OD-N7Q z$_d#y`H=+>40!y=a>wHw8*a&?Xy1LuP#h_Ew$*}|RK9WNHi%-l#4QGXBBRx~Cd1EI zWLz(T|4<@U35O?}C(h_<47d`=`c;Hhr5(Iw{Zr&IAZ5fCB#rVHCSz}8ONz{$&x-azv zb=CvkZW&ubq8vCeszJkdsWN{6pDBj#axSVxDHl?2*(49|zjO%otl8rg=>&pCce2f| zGdvVj`jh4vNaWAA7P-Ji$et_)SA>SbnmD@#d#k?@#7{s{<1xV^XTIDX3p4&4lV^8% zJ)%b%1q;isr9=>Dj?J3&afSAiS5E5!o{?Lr|304} zoa;SxGZ7zUDFn&%b~;z7U}bu3RibD=|FMgJX1hnrmlJoCFF;*vbt}3w*y0Kg6QaAy{-~s0sdKS zFt2j_upWMny>QA`yB`8#0Kd+o)mnl1BxlnOJ`-Q_#q6y`0ouVN8r&df7xJto)5RXd z#_aFe{w-5VAK}#N=(#fEAdgFL&M?%ZvOv_vpu}r%ESG+os!91o)W?i(f;$-vJ56tJ z@Fekm_g>F6eiZQACr0bfU>d4j$;WTr?2A-;o(C)bDl1o6)+v4tz~5sr{vbqut{(fb z{z9KT=iCu??A%IZYAf9k-d>iEEe``rR&>yTU>2foM2a^zFF)8Cw(&Op$p2WDik~g_ zf>8J+i_Ue;=&@tUqLLyvL4>hF_~5n#N~sxYN3PwE+oixHTnS9TA2~IDtm##PJQsdQ z@gU{*N?rQLqJAP!qgvuacT;5oA#_zdJFFL?XnJTsWJ;cUEa{8i-DgcOAN|FJEF9s{ zYS!P-JdTD`W|R_+8GpJCChA+kv{8Ri7Hlj{UgQYq-boL0FwY7(LYvRw!$?ofA1EWB z5S%1+dF3Y1!D6_G&2^wB7-Q%B6^0y29F^jyXs00gE!PdCI>+IsnMnxLd;A(aZmeTY zd2%>1!)ccHI7brX4Z3`drwLpkt#z%CJ1HJ6N%|?l!h_)9k-`c8Ez5(h1 zC}I{3{?TVyV58{2^v85ibnLg+$gdqOncZj>qcUW=-)yObCB5K6(qwd;6-uMgjfCGs z7rF65gn%jl!er(*#zgCZg)VcHI+BLYPeT#UcaIKcW4PIxlKBJ=YW;X;oWUDS1lMy; z4T4B*(TulJG0vDk3 zx3Qtl@lFKeuO!S^6lE>>R3&`roXkUjhXy#8D~||3^Y(9%BIE(bemi&tO(#0O@H3-| zK5@}?*@%^rj#_;l2n&_KoU z+qxECRgA~|9p|pFH=x2sEyEy2O)JFQ4^9Mh72m1|-}^D2-nREl`#o(P|0?~xJFV48 zGvV3#phTjX%KDv`Wd~z|;2yJ_qyl$P7hq=H%PjSw9sk?xL2u&cjys}#8RBW_m%6d0 z+rZscJOZ-2K-)wJ^BD54&CdoTxI7+un3W&ZofDPwqIuD*HP!ujuYRs1_t@vuW|_KV z(&-vJH@dpLfx1vadBYQ>p2~gpk&<16ixZX&wpQmj)ZNv?#^i#;x+HGAVN3QfUO*0( zB0o^4l|Ri3@z8gMb_lqKdcp@LpfCs{cNce2%lD;IUH{V{xxdO_tIf zM#k!``z|7Rd_NxT`!G~Ou2OBE&iSM>>o&jH$&oi~{VY^QJ z)agrYZ9gW6>!!1Xr}e1q`A`#5qvzgTfJ*(jnWe@WlJ%#Os`-(^8K^+|D<7To-aNsef?Dcq2Du9@(db$d-$cz+9oGR!s+(ZaH`oTZcq}XJMM|7D5QuM z%?We_=8#;Ka)f4a5xf$(XH@0BeoUJ#u((|q2uOoEsSn9Xm~PPQ{svB<^Xrcs^fsyk<^_fS;TU1laxk){iOGB9rBj1UsbFu4)n1VCV~`0MzV1%uwKcv<)SwM`Szc>U5*!OuIB|kSN`P=v|I`d)7%|V zBnm1M&|xrgl6`dRaed$LTB&lYRImD#&+=e_By`%|=-;LOTwC^Dv5%7&9rEitA-^cT z>AT2iqtFP@Id|UYCf9PNv(A&|@Lp}YHH%$%d?ao8B|d7^Baf|~lW{6G%I^=4OyqbibsE3q$I}7Ldy99I%SfB`dv=|hS=h6EZoHdM zp#;a~v-DH)@}M%9$996}Z_O5V*FBjsEV~X@a(gbbo!ICc?(o>em#^HF;1v@0;25$% zQ)6fZlh6M8i4g1*_?i7$)A1-+Mz0SEspjMqgB`ne_6;hvT zNEq;W`Py~vjbYi==C}|g4`_bqf9DJJ>fb(2xqgy2&FFGSA)`g);+qIPv#s0pv2feaP{(XmbU4_WlrTI!1;j_( zWBBDpOk?A4N52NrEoqZkh`lY0U!CvrCYRoFXn}1|0=%AxEz$kGi`Z?Jqp4@wzuzFx z%e*Xx!X!(HVI%r?1raHs%YJcPvIke|yFll0=?#A$AOY(0D^KyR!xZ3kNn z)NZm3MF{{$Ta0EYBV{WB0x&3~ZqSz4F(k05bL#}lcKnr-Hbs6#eoksN+V2Q9;&+Nk z_G8v81=CptEq2ajxV!WnfIxN;h-ovxuLEexwGEKG;Q6ukqMg#yN6dRbecyE9C52EU z{;TS>LsNO(Ch;0l&4j~=&HG|oT(8RZpI_!2&2(QhzPRc+wxPs8yL+-8Fz>FkG~WAN z^;7ZHPp*AEQzxIn@#HDbYh`d1Up~OK>)PG-oX=?R?-%RG)$8vwJlLD}&HKJ{?}~wm z&_9YhS-qIs#7aJ9|2uu^ecECbgHA$YJX+8hHjc{Nd=%n)ecWJf-g$I4kO5ava_@3V ztFh?yl=v(0(-h#OK=KBbhi?=b^o9(FcHY!A!WyB0vG015goup4X&f(C8T0moR)Emu z-(mb8GBBq;!o_3$Bz)lBcV!{MvR64=dtEjp5I0&j!=>h=8O8F@!kHC-Hzb6a0E zONnG&vaJQ=D^Q1Mwp-@8#?Ru0_S-mb#pXcr?C@f6nHhMFV=l%P$orej?r2!+YW(7z zFuEMo1t&HiZjblut!ewr^@G2(Gw?kQ=@N-}#m##r!CbbS2s2<7wsuO!_PWIcrw50$ z$9^+$IPq#W3$Q_PcWob`-gLammHpcqDz@A<{ zdPuj`!}WJ_6@1m7T|G16IkTgP?;QUfp{r}7&qoxdow=3yG3p`2@X96+-p zsSB5r4UN=exWq);TZmg^v}qYVjApo|(RyeeDlF#a*W8Bf+vFn#_LXW0EIZN6X*tv$ zf*UU}1KeqQNzW)+GDB$zdq=V)M|p%d7h2r@aZ^5bAnX&5XG|CR?=FbH1eR}o8EoS< zE`bBK{Gmp|h;=->J#^N!5)NALlx)R~o+q=m+b=R<^RXC`$150+}8<217LC;YC z&tM4?DC01$b9>1+19?p9+yce;^9<1`Dgg@Tyc7oHQVCJ!)_d2??h7LF`S>Zd#+!%1 z)l5h`7y}Zez11vvt{Z+`@Wy<|=j`+Z31HyUeb?d@_8S2*?OA5`x5>1Ed5f|k7;H)^ z10|%i+q^0L()EC!yC&BMqg~?=;23B+C*yZmo3sO3bdi6GiG&JZraWZ9#Ptrw{ujE7TuY&c290RN+o(K;Uy%PZZ3UxXrv(IHUYPk}0J?(u5yjOk z6pFQzb1B0iL>N)fD!)7*hX5C$JGz&zkE^fj<4;{0(5S-a^%dTYkd@%qd(rTln^RZs z`rpg*ZUKR2OA;!BXTsX)UhjAEw@=X8*d4AdB?WOG>5Rk%AfgxD{t?(t;Pe6Q#KFFI zi@0Y${DM0?6u!U`UWPtuh{i&J(nq=_aRG? zhysF`#e!ec*x}pZzC;g%G#^2$pKgRNhObCJEKonhvW%Wb#ug+#V+4gH-U)qw%e*U= z*qnFHq$EF|j6_6vWy?^GikP?^c{AKBXGzAL-zfz`(A~VEl^tVH`HHIiP$Bwp`%Ydf zqnFa2`VjpbovJpI^{OZP4G#5#|MFQ~GG zpZ}k$BKyx(Z3ThP6JUZr78Pc_c5665S2a2N^gGoZ27HM6YLc9CJ6zhR=H2`)s3QWw z5!(7vf0N{fAsgoAw%ORqwyH>Cf9e$tPG`j(-$$+ov}peeIk&xD zCpk;$fG#P=RWpkeH&Mmpj6)&{Z+d&~a^khsGFuDofmZOVPsvwlvsG9J!&rqiocL;1hX1>g)b2_giOnU9s zP5W`?8-<5_DnbtVX&~Ml@$Qi#E*VRZM1OUM_h!$ z^oK5q2o{WJ7r{%|E&hldrk zP$=k5@Z*hfP+Jb53tF-t^cSK-o{P5O$%{!{8*6ryCOyF|Hg$`Rt?kC0exW#Sw5nJ~ z0!H$rMgY$MB_*U59{L8t!2~P68g`h6VK*Mk)<|%0j)wGq;>*L<&jaPa+N2`3ZV}w; z2_>pDZp^XL5qIc%{o3^#87}S&OfH--f%2NyMS(HG{_`*H;?kRJ>&Zi7B#m+^^AnrU6JGKxBv3L>~Eft#ZW`q7|!=1h-49 zee2f#kjqq&4$2ZdBkz4WHC7$wz`+az3<0aBM+x-rD=BHPe0Xu}; z9k6uM!LO)|*T^Yc{kkzexX0`4N|huX53=hluOlaHKs?SOI3PO-jRHKD=zMcaFSDw zSP3!szL7PzI|gq_nikkLhZ4pdDct#>jTLG}>pYIvXP?!ssW(>+iigM*B=P;R1%%!9 z#vtGP{6>VCu(uixd%N`=^USRHF3!D^wno3P! zW6oL58_?N;71ZT{l`R_fwLHw@0l=PeNJB_un{2RihR_H>g+gxGMk#}WCn}Bdg3dXc zMu}2BWn`1!4p?( zBgM3DR_YuS;k9^}+AkEj>B!pqmW7xuTKjJ2R4?;8jL>|85VKFU9kqTZ0Kf})p=En` ziG^~n5@Yls4L|!&b;?GJ2&H)kEyY)gF$S8M*OgD!h^|V715Ypv6o}og4Cipt|MF8+ zpf?88rGLWpN!^v*?xayvGsk;z{)A7L zl}X5;J_iYvmzxi1rBi$_0%`+#EksPE+GVMI_@R8`v~R*BoQf zw_?^n77w^L4?&H;7OmVEl=VROR)5E(F?L@|{E9+R*?e{bnLyA9yJvb^=#Becn%Ff4 ztB%)L@jQAs0(ATC!4aMke~C<29QAVWs-KU3j`zb+-j!IEygJj>0Mtqc5Li%|8cp2y zduPZpNbHW#p48LoQ9CgodFV8f2c+56o}Z28W~9ni1|1ZLk!IIq+wnpY$|h$nJz`-A zSO5G-LhKh-;~ABmzV-YegtI7ZGn2(FQOXP2>7-2>7z*%!KTbKWKGjO6U9{X1)4}G6 zgc$S~y1^$teN}3r2No?m>4jJ2^I*ei!TZ1=(8+``o1kA+MtlKoFLcYxApcA^)XY70mG~cn-qM(uJaVui#@^FeA&zscnD z$%Jb34JRSA3Az1VZlGi+FXv;5J#$BI_?6EbDj-gQSMPIP8?^NYUY(Q0t7)kk5 zLp48eRoz^Vtdoi*zW%Y;wdub@%1;h(kKTH+LIJMtThckpLE+fg6^h`BaAh2@?_`GZ zD1am7jk35*BI@2C%%0q{s03tf*cA~_0rhG1m3m#u*@E$Xm+>}ih4a=DW&9NuR^3YW$0~fEQ;<`4Mc%h)f zCbKltWtKDPn8Tn~KMC>o<`K!1JT7e~TD<>?Cvpm%M55ic8Y52M+PcU$zAjRLPh&eA z_gE6gV~8=l9GK;2kdZv&SVC(zVMt#6-1|UHuAd3!9)a;q`TGr%t(Rbwju1>|Uz0F; zpZYt~R&nWvoc*^X!j{Wb2m8T#v}(s8u=|Z?a^aC#&19c=DlG`i@%SRjAJ6ihE>Skx z&5@B@67g7^^2FMC0qK@z2yT0T-mjpWGmd`gS|Vl%4E<<{_MrDIr!-Ub2ST>(6dWs@ zmCZRgXRKgCYY|mn{p8m_BvTO#|LIo?x1+gh4$SxylF)X)CzitSEzq=+{gK&~C!W=%GYUFEh5*4&57(8~lZc2lYilAc<>t zl{WO*oqO=}Hof`+Hj?VpS?26^r5cF|o$-Rmdy$O!x>*1hme@y&jQS#sXqS2bpivP@ zuTq}r)m^351?C(CFlqq|%|3+MGK}O4d;VnnPrijGlIE|;p3|?KfzOuqNNe^mI3Y)0 zj)GP5`E4o4qMZS`T?L3-8B7l3C<2z;TdiH_drL7nS~;Ci3L8T!kZ6hjy<)(Itv@G{suSrluqMQ)1^;nP5$CJrLucJM0T+Zq>Ne^?hwEVx^k$ArC?k;Gg|(W zn^~ya9kSk53Cex_mWOiXSp_(Pp|%O{?Ta08K`^jAtQmvnThDghZwzJ#57`$HQa+wX zqP!!GKD_cYUXY$ZePp+m(7X`%QFJs*r+RNb?)Bs|WeCJWgl9KWjiGx&*J%eoEFM1- zd>nxh&qc;25CGvj#X84XV;(9K_Pc!_sRO%rP%&(Muk8>l&-j?h^hb#?pnT^3Xd`Wx zqCTo2YH$qn#);MkUw?>Tv37>i;l{i{JTaUprk%L4Z_AAgrqR+A*1?DN7`|aWnGze} zgEULR5p?jf(iud~2eR!fWHv{Cnht_qb#T01bSBbOUVsa)Rc8jjRAeOinf-J5l#E96 z(JkrRLO}?M55^_Iy;+uqeI|ty%gi=2Z!rQ6Fqr=e--Ye@?qlyvOL4U}WLqIX>h7Mb z3Zska$MZyR-pUNJ4+qVE-BoT+A4jLP8#OAIstrT@YF;PWJY@glL-{-whrf%R z`T#oU82IlFG>lG|qIHiy*$suM{&>n5km-*`6(-JYY(e#%LX}b$Ep}LF(_5f|CMk6I zEGa+M)R5-1b-lfpe1SV1&~B~SH`C!$yd==Ww3)T-WUKH@de<_Vg z#l5vb4`O-9x~UIl9mna0L`9JZGfkW#ckl4%%8|1qT-^r4#H%Pj)e4Fp*9U^jGZDVF+qQ!(iu)TJ2- z?OB{>xNIdo*yxO8KOd(*rcEhSd-W1!UCoL;BOHl#Yl>^A%qe$FG>HH9Quyx}kPYYr zbdtc3&`=dx4@(F7#AGhZ$3<_7Zs!F6(V_uWzq^Pc)WQybI!@hIbN(hR?oll@iKP6* z_fda%b_g?tCff8db_@OeUzHc~hj-<>3TU2Xu_h9+6}$U|G%6tYTJpCKhqu2gO4K@P zrBwBm@HEu9#DP`>y%z+@MI*NI+HG6Pb9tRn>r9-3KsED$pZuN?1`G!pRX=;^`j7410~x`#wMT}b%p z5CZd_6Xp5C;zcP?6H6gl9-D^W0qe3z*IGdemeH6zy6sgG}+iRb8UzgcYj@2*7es6Q^ms= zTKr2}b#2N*PVscH?CjQ&UUoN5-Yp+@u~McW^&nVS4-~I*BrRDpEg)Ip9w!M)*XZhz zB@pR!s`_{&E{mO`AEmL+lfTfLJS`s=sb?&WP(`kEUGI}Z7q+7s>LY#`k7#rpJQsRq zJ{+mS*R~&zKm_pb@ZTRt?DlUf`;WUI2HZ~zF0C&UtQ=ErO4dX>TQ~GRF8WOhN)#AA z`yj@50OUu7VmixyPB@8xTIK1&sf6OupRu3z_hKctp!#YTf*5g?gC)>Ma;38Yt=xy4 znI^$vc3mAvi_HFmy@rG0UZea6mgW?NkO!=$k%S_+Ksx#NPLbaAD{fwN@P z>`;0^$yTI&WfGA%qQvPOf|DOnU+M87H~~3lYg)e`ZjRntdgZzx|4jOHJcw6J$hhBp zt~#Wuya1U%+X%ueZEyD~Cj)QoiIAHJmAOgnJr~L*rwNPUqe+ZSHw9_GEoFj#s&t~ zNC^xl#D?DGxM&G0@owxM32!(Pd{j#Ky>WfKi?krn#m5rsTJq+kbi;ff%chNt`rV0d z`PN?U=)DZ+%KG`Owj(d_bi za(D?HmO}UPQ2##M{`M+sh3Sa{G7aU{JS3qrN>Di$_tO%lc}vB{WvR0-GY;up%~S7I zV?BuVbd`kUKvaYIAGmoh7Q16R9s|*FZBhjzC<4WO*^`?MH?evLhve<%%%;5+OSWeu zFS>5K=bNv0GZZl%@mbu85c}{Z;9UJiS^~bgf4O1kC&&B?2|3XUBQ*q6F$)JUiZ^3^ z+@*W7KT;;PGqKt_zOO~sb`wwGI|)z>wUGYfexU+p@SxU5y*zjDJdi!&o=34L@1>+p zzY0Fz<*}r<75d^<@ZznI1U0)7lO_G8e!_Zw40JGD6q@V?pAH3NFxbx2Qffayo(|gO z1`8)al6KFM5j3BKS10E%n3*tr(-l)}N4z<3+j1&(dECe1b?Rzu;*?q)ZFpI0jGY z;s>XROBgcc+qcV)lS#Zyyj3R=5!h-G*9q=9F**;cl`n6^5$Ax->nr5h2!&5c_4$P? zVK#9AhP~*nubd+p8wmG-fcZDg&mCV=yp&$t1MKH%v|URrlAm`4Hz3-RXR=-pqATpS zfu=V9t8W)h2ZvnDA2(i9Ru_+4^IyE-;IJ$mfTSkPNd?cY&=)~(XNHdZb*Vlqo%OC; zV8_Yyr;1koNDlznaimtbDGtbZR`aG1N_gIVNqffeHaMVrf;#sLdNVZmDvNU{%fIk{ z+bQyF!`@`r%|w>++7MWqJ2$3v92SB-Ib+TME{}S(kDb0Me+2Vi(*1cK`F#Hfu{=WO zk9woLw@Fb687ZKxYn+pc>u~}!E;QUBR0=aHh9E)XMgbSFm1aMckkOdRiQTEKC$~AW!anD$u*1pQa~|; z3QuhY0@AJi0Kxy0w)xs%!x_sCR_b3ElU zm9c#d4|d{YPko9)y}}} zu!89DW-6t8{F_49t=qdj#0<{+FArOZSrTB0NA8s6{+W8R-mF&Wr>(gXU$UHYbDJL5 zi-`I;_lb=Sj5v}xZ}3YWu))FL;rK|qD>C<6a1u7~!u;oaf69;w>JYD^iR^{c$oy)6 z)Erh&Gp=-qgZGKMT&$ANKJek^_+x=OHm{`grKGfIcUG}TlbOOdeq^jp0V&qcdJhn) zz+gnMWx{9SWr|)%nr4YGze%>h#fmXy=r>Vs<-H>^lAtBH;(m71T9n!RmxX(z%PO@$ zFN-Kb)hb?H_mQ=4HykrBU?r8@$^^tw=B9RO_mT1|(GPKazItREizpz?PJoC0SE2ke z`pYGxWHMf<0e|@zc=h;VVQC!|vt}}gLdAvt@BoJ|_xA-~9v&yHoiczK%ie&OfvpRs zP^OCD@VpTuNY;IjNyvrN4|~9wzY6Wc3^uzRP5R5T692rL?7}LzC&dA%Q>Hx@x-XE~ zS|j8L#xXv@G|F+YlL2S=YPS@fwbz)q;2VcXUdUj;psetz0Hlu zQ43zkf(LS`@hN5H-RN5F;rBj8Z~ z5pX#F2soO51RTPD2srNl5OAIUKLPhlo27im{SSa60g(_q3xax4NU%;Q8&0G^O)G!Y zKBFPVu3Yo~6Oo_fCYRi}Ig2V`wkeuUbSaOfOLE%t$4vIXGfBB$WdO9#-Q=a$U783s zNZ!tZl=vhH>2m?ajbH`z<;!kkWeCL_c9FR1WAR{#q#Grnst(uy(}0`$UFC0;eZA6M zf8(D07D)w2d_6@;#_rl*PD8EcQWws>_ukg;-os!c{mnpv(_PoWs>Dqfv9}`gU+qaD z*WLkWr|el(XJp_5fUE4)rKc~Nz(FI$T>FoC?7abkLfB=u`9@zZS90_v92|cMq3F>z zyM*!#Bn;XX7;Tv$`d)eJAAdlcV9wd9qYUNU`jI0HO?T~;!}4oIJxN3-fTG7q>Fl5v zXtgYCrO|vZ?v_v%>NF7h8~QB02OiDoIhxQizXWb*G>3 z^0@ET(eDp*LQWUm*>n1ZF0e+BqcNJL0k045L5{&LStb6)Bv6SFLpQ%a8QJ`A*HSKC zAI$ahQzKUcyF5iEEUEjs7=L_K!m0q{790|_pRSOMGz*$cpDKT2rMGy4Nl2(7*ENHm zG}kJimk0MTA#o*w*=k{X8O3ylx*q z4U>4I!p@P6?3toRrHn9CDy&~zDaxRbbkILeI5%i)j%J$w+)%oC#<#|jng%X~ts-yE z%Kz0LnZaB;>w=f0?y;g+;Y;(^AIvt>t&_Py!uEp>d^A{OAL|K;K0CiVZHL|=Y0`Wc zWh?0hIwS>)=Ht|9VYakeYPXG+S1vhCF1JRH(wZA{2Bf%7s#=1#2F>@xKK*J%(ri9j zdypoS*#X8JUM8O8_K%%tP=rc!#GE&#Tb_JY79G6NDLBl`I(s6=tq?;Ub;r>to7W%Z zjb%OwDS;k)KGwxCY1^#q1;-E^_LSfAkqMFmq3o2{y2ow|4LX9M&Y?lnr>j=2UONfB z3ocIHgX%N>DjU#2HIJ-{&sX2PN8jfoh>`N&@^$criN|s4lNN@(=NF~y#K6okTe!nh zD@yg(7tJ=Fg(8kmA6ym2T=m1Ye9^x*f2}J=GSl)dd34^P5dN_l#qZoW6`TA$YiffF zC@CoUE$P+&{Iz#UW+16)#x3hLzAF>=vm-0>APY^r`ctVnJ)g>r#a8nI4Q1-sx>f2~ zAXcEzD@xSZ2|?!D(JvNCi!rX1F8y&tgTWTvcoMvlB600evz#=_)$v0e+Xh@l9r!Sh z-6umbE{ltUHgx{^(0gS@MW}A4T1^xBiXY!*+=6Jjw8j24Maft3FA7Ijf4(E3hna=Z z(MT;sd~24*ESjTwq`V8jrTKpStE{Adur?geNhBJDzpcal%I2DyCdY#EEd`^$RU@WX z*pDtPXR;~bvZQ=2Hzq!IqR&VCyqds27;iON|9e%*k;ePf#)B4q_9_oGmhsjof)poOyPik_a$r6Sz<#lIr=-Vx{7aM#HgKtQHyQQoj*sq3` zwhsnFk)d61a!-2_uHO)u2B^mi7ic+mH;Qdl9bT>ukI9Uz;^DWAsLWV$#HpINStTOT zP{)Ior%mx}w9=plJYtO;-r+?U+>UU@qzXCaJ$kYTAIobBg;dY>`y;;+@DvGr;XPLc zB{|-9TTt{M&5?Vc?n=)CIEF631WiH`BAx_aIZoY?j{f}f*Ir;V60xc=15TW=~mt;>AvaJMd>cHRv{h^xT`YV zftJBr#u85JOI4A#r;b1upb(>g3!U8TYn5jFBV_PG~vYgi^hP zNa!LRTZI8f%rbxx`*ow``$4zjl_+bmaT}Q7D`6I^1U<0xLNsal!_iOCfp-S2i}9FQ zU6gJ+UWF4@%cmc*y$N1MfA+Qqg@u5Qtc4VxomS8mv59e~S~zPW)PFsVO9p#S{&9vY zUBoZsSQ?8ky!BOAvQ=$Okl=B@*7^Mp!h6S975ukuLYoK~8cz@A(E$6s#@GMdCe4Rd zMxnKtMD0rs?4n)Zh!a;FwBmmA&^+M&G}%na!NWgAep}vG_w6M>^i_7U$TO`&y45j& zYs|cCiK0g(@xZ1^``INnFAI_Jtog^ZQQ2KG$A%OA${d?^ zpF)Vb8Q3%?%y>nIDd#Uj)^|2c(An6}mFngFQO@oPU?0B}`!ZZ@t3PdP$35)%)n}of z4>9D2V|tve_$ox*?C`lVZMJ0Gj!2kSdx8d4xTQLK>t5&6DN0&Z+kI|xRUfh2unemf z;UaAq0*3t9ybW;=z9?g>NyYWd`N(=RDugvA(4EsO8GytsQJNF7pb_?XFMc4YP|G7~ zJ&qM!AkceKnAy5kq^s655IZ^i3ZAP;vNOqD2ZR58qzVH2+Hou)sdeff!}e&l2m zD&f$uIT+d>8hS_0tZVL`QS@;lxPVX_24LbSpyEq-g z-*aa=ZF-;b;)|K8fd}^d=%F0*ArI)j7Ofq zKs#Ij2HLH5H=o0k<}0PBFm6x~#0qylWXJ}@(0Tfqh;(_BRzlV#HR;ZRq@8M7T#_5> zws{?Yyc4XZC0I?BV#shv)DFZSEJRcu*<9~PcUhp_X;C*(vO~QK@X(lQ+qnBSoEoQW z+_5$Jp&>!GJxsKV04!bo0?z=TJWGQJc+T1lw$^Tx8^!FX;=XLn^tG-qcrsKY%q^!m zDVN}zG`f1wU{z3WlwdmkX~OnNK%W?MA++quh$=Gu}hDi{CLs% zTA6CC#JSR|+zL^7YF8w9`=jl}P%HclC~xN7mc11-9u!T_9X5RMlMmpJJ~CuXrGfAA z9x-uNP@ZnH)#{X1ZbK>9(;!9J*sxnX2ukMXfs%wv?pO$24|pwTCToVJ;~7yT&^02st_{qkeQ^0OOq%*Ma8boS z8)l%jB%Pi1blGJ)Bh);DDl|Qm>XyG(rKe@g$g(cu_5p98i=c3ttuo<17+rw`G%4Hp zSQfn6bDVjWcnP=p9T6)7$1NPu!!TtgzL+mUq~x*LYC(ElV|>#s*e;}tEC*%dL}h(w zu6Er!($?Dvz+!EkQZ|pN$AgMYAINV!*i407fLWoU(4sdba2u>Hy~bK3NYHf%rLqlY zs`lliNbwDC2zCzye(jV~ZW2kyZnK`LLjr{Pjk2Z#MXz##*zm7ykQiEymda5cB1dPF z!#)u2r!HSA7n;k@$TH5zJ5lZKqBO!5^!}nd^Y1zEI?PTRiR|*GZ6s;nK4eA^$yScI zn~Yu_iDW*2q%`^?^op{K%W0KDlFrkl)aNaflNI%%=O6IGbL~3kn6wfl=sE50k$NUie(*KF>icl=C|h zlLbq}{8G9dDUxZfjZg-=PPB_IMu!e~c<4RJkvmy(?sYK*N^Qn!q#{F_sRTSOjOIH6M-Hjn8D5HZz8nZVGX9kE7~Z8XD6S8>j#vG`m^H;=N8 z+r&1KPf>G+8kPl1pDlz-oRw!;(EUWcdQnxE?clW18n*`Upogth7~!?zVJ*ACJ=~60 zO=m}vT7Mr1Es1eGQC4=KMBcCfi8v0xUn4@P{=xUkZY36cvo4DXS6uE4vQ)e>MM z(Nn)v$Rh`G=kF$rV-&_1QLRZ1ogc!McaR9H(^i%E&X$C&J#XnB(7}Gu2zTJ%?-KTA zfrxR)H7+#T0h%f@>)d<@p^|O4Y>AUs%0jDoA8Fz2VAug)mZQF<@m&!e91#wf^L9@$ z$$>1cR5_Ps4fXip&Y-_sqG!JBu&UniFB7utT(sC+TH6IZt*EE^2TMX5Z3eUV1bW+fM^ z$UVG&fA^BtyT42bWHC&C_n-|>6jUwMIb^@r{nCfXP2m2ncp0bD%fqw0($YWWnvgNp zx4QXRE5f~V{a2z6%)Y-C%6!O+i=ja&%#fB-CPIdxRapobC2L>8Cy60`WmkM=bc%8( z{=lJ%_+ZU&7OVY3M6IJ|X{}N|lB1^K+dD7cK+A2%Ql(QdlkRHnnB82UOWv~eQg`G7 z)(yrS9Sk{D`X$n}r!2G#AM7)nmj`;7%T==-x{7bHb@HTs`O4}a>asKT=zWv3_dU_1JI&)9=9RuzZtjr8g!^Ay(#8na;mMFZkR z>r#bc^bbs_aXt#2PL*bP!B<{#-WB{}tpN?5Pj)s9-3;I_z(^4gB7J`T8_H{~$-bxI zZ7X%rJzUXn=1SM1gvNeLu2NyRV9k_L+=7nYH`{_res#NtuUX81Y3yrvgW-IsDRS;5;@qO@x3 zmA;o=7AN@mJ!022yW<5j2l%-Z9@o5SaPmFFFFPvq9PKPD$8krBr(1Z@LwB9U-bvsU zZk)4#L{(Dl(jZ*R)gV1VY{DSI`o$gjx)BW)lt{9cV^9S62=<#Hjq8&!Jo2e2bD4G* zmbDi)*(fC`!ytK=YN0XMJWVw2^Wm>yQqEdlgWs+5M+)_i8{c=`%IDmgdyKh#h(7yp z4LWfWKoQpyX|B=Yt9}-Pwm-SLVCG!QMc+_sfscKUQcHtw68uXpQZcxRa@Z(iF=)_d zd_IH~Vc-w}mCU1+*hJL-!S~Mi%r+?gp?hU6nr6;D8daJbg*{`TI^QJ=Q@XoX=lLj= z!nAlfT#zrm2+eWN%9Y9KKgrI!Y693opRRrUL(!XAFFlo>`1O~E-G~+rnLh6^VK+#0 zTKdP|6PC$NJ>b6gIUMQW6RN?$T$_&rrTFg<01p>+rxb<4Uk3F%4nr1jBz=GH7Ks;} z+Y~^mfP4PMx=otUn5=Rbay}U9-%j*fu9gO;Xo{b|S-@8fTR~EZwS>e-b$^F;CZ5U@ zCyaK_RK%d?-ou*|NI}NYhPab0*Ci*^(>{nV>|k%8s2OW$+`fepjVEA!#vZ;9F*NT2 z>XcwDtYFAkT>QZyDPMnn&KZzG1Wmpp-u3$cIv#iOZPk8>}H*K&aGUNU6_%njq)Q=pC^^f zN}FHaEj88c&<>sGb;pgtZI%oBDZ?rJvq9%|4E@RVHxljf&T9iN8&{e$-@wl6rKtik zE`F0aXD*w%sv|G#W!%AouNZ4j6xXx(&TXe;x(s3thhLJ&wlg`MagX<6HxPhE!f1S) zO<^S2$59>h`BMp#_t6f;_#49ZM4LQ0;yMsb7m19nlR%{07rvBoUj!&FNG^!UU+b+I z#v-k!@ZHd}4IPz|;yNE~>_(LAjE3dQWv}Ch!&|+X+p^drV4Mc+uPyO)LqEe`h&VEk zA+tgNmh~O`{=Y0AutvOS`BKOFBItj(Ig;=MMa;5&4`dr;dA|4+0pxPX1e&`>=Dp^IdO$`@e;8eK!Ijm0~7=&JU`7bW-QM zo`GI3?sqVLj~C6;m%AJ3=f%?T%a&hZygq}(T@7aH%{Y;U&=_xrQ!1!8SfzU zZot-fRVqG%>}OYzwkKaLOvRdCM1GkJtIvg)8?*TxLbo^o?u&UJSCSyES_+hag_qIv z3ugzgvZss)Ki?-%oB!{y7TCizOHGUTl^RFRzSjNQXVKp`GiA#`BmX&ipX&|F_Ewr* zk>+tN=9G+o!UOCIxisBfTH4=sy=Qp>R%+1~UO*XeD{t17PyGyHds^?@EMMI1z4UKe zda?+4^yAURN`#f{U@s|YaBPeGcS%O_IhbJ0)`42KFp2&zg#9HbsFP&-Cq@nX1$kMn z>W%owXiQZ|(i3u&?<`rtNAMi?blK1O!IQ05TyZ*Mk3-M9+&vc$QttaF7~;!7!*|ha zSfMm_m+x%nX1f>g&{y&6(Ef#VBiV0?t!f#Z*4h^^=)6xWU3VTL`Bz{3g0Cm_Hn#3G zEYDuOZy7zZvU$%t@cJ)A^S?;n#WE8N>1)(ZpxuD|hu6NeP&#D|nr11TEBJkTTd*-A zpHOv7d!q8&+B0T8a_#a}a+xZ4z zSM+}|eNh?zW%_6nb#!mUw-&O$X)#vEoN5jLbCjR>&%QEVMjEXF?_lrWYGe63qR?zw zLf=2C?W4YufG_u<}8PsN!^GSg+kmAsmVKM<`ap?*M2R>Q6(cOFJ846M*`7#V0@w>y zMdAJ36a<@XUvhbE2i1z<`B(8J5=bZ4x7DQa^X54J!c;Tinf(NSem-uSxUiR@-6r64 z@y!dYtbZP|<9K&sxBe+T3c;I0d)a|oB8f@;U(qa(%e%<{*>vs2DX4flRqAcO--!WM zO3ArQ#tZ5{t`AMnktFR32KFV&{J*MMT~*BN|B!qUWz?xp-U#G?mvRgTX0ALBI-|tU z|3G`bMGtE)f1%zvz0Nm7Nsw`$fG4j;49Hs5%NL2b;;3<$_ds2Ydvh+o-!Q6IjibNk7igLM#XOxg)mnR*hd}=Ytvf1bDzOS z#qtr46CDhVwCPlg?!8z0flc=}fEmVbi-*mHt1Iw)uO@G7B{`>jBD0!x9q^tC*w()6 z+FgnXt1N+Kb4gu)a;$!f79BZv9&sI=ZAEDm22+vl5;6VZQ@BchZHrPvHO#vCkr6~{ z#*ft1x?RuaXN+uMqfZXyg%5^5~JKJF+N72 zVv}kTYYVUI3-nbutJ_uXH2a0}>@zdF!o9Y~+dbUdIbvbvL$i8h;D4a`_5NhlX@ms~ zb?RzJ(O@v@IYL%*vphX8`?>Dj3rm=hTTY)#%@{pbWyqu93pvj3Jb~p>& z|MvTuBXST{_6Q+Zgo?%7?iUpTC;=3GUxPn>cH>0STx9GB+gpdOJBIo?Ay(B z(|ZCMNRoyYg`>jATf+9C!9O)y%yraL6W|%DChrd<|FSLd!T5=L`mE;Q zl-2B1c3=ewFB>ULC=7Roll>^PI{Vo3KFoV}ri@2fYEkM~7E`CWj7L}T6|NIow3@K0 z5$l)QNlwXQ(>N)?xwm$S5GOA!=;!l2#jLAB^fN}c|7ObaGV|K)who>QdHP<~=1bXv>~)#!j6qlkxr+N8kDEP;R{^-PHYV z;b&$cT&C|9^Y0Wfll$m% zPx}I_qL4YKQo8Zfln97*oFgd5gXlr}-4-~(Mo8OzSOnH_8efzz$D&xl(UhFb^+34o zB!#)14a>3Y9A`)~h3K7LfGnBqvH z>`oLkPQAS>SX>LHESGI|)UnEoii_tpT{`%glJw_g=v_YZzB`$c_EvVJP1^eJb@~Uk zWpi;p31iXHU0AW%&NZzkGd-I@fOb!*Gtd;AuO97(6ZBensae5omdtC;=1)#QK^p9lQ9cjy2+knBlvf^SXbyJwjfH7$1U}ti}uqEm~E! zd5xCt8K~9 zqb#Z1MVzI~h4(RtGl$3CS#>1Be1XdCEW7tvlzGRt!*Hj{PmXS1#!VAPNnevnmY_!& zMhfk-vM9L1+T{4>(Sd;N*HUSA_tyQa)NXSWo?Y4R_~%(_%q)u#{s}KD@%oFn_ndzEtVHyTV9?R%}mb||;*`vEKS9ahb9IXxDbE_>hO_BsT zUy-5Ux~knQ^k$DFwlbTgE=PHWfS(-{bV>X%rTye9;HG4kGy%eqQ>9!uNonQ>Ud;jMrGkH8OS(U@9c%@%MvhMb)y>(J8A4ERvDCI?+Zx)X;k;Bd^PmRT9p`$N2m z$uMww@L|W40jQwaDmR0rr84D)uKZy`Es|P(7D~K9=;uYNBXrBUM$sWx3tIIX(DHWw z{akz+D-~+et?exqT&Y46yQRTQUFAQ1A;&kBjPSOvN0vJYJ05((v@4fuBt{^Qm@adq zpzl5Ot`=5e926v`A}eEvbxFfrt|3Wi)OIsu(K`p}>IS&Pb#8&%&{f+?+Shj$#F~NE zJR~zjdw27j%*?;sqEYPy-xVpTig2=oRLQS)2YLQz1K5-t$ZF zmANBtgX}_!(g(!5$fJtlvr4Zdil^;7CIrGY1PatyGtkaAqE~&F*oU~w%5=2m>3t9y z7kOQNB?6Sqdqa)QeGP0-pORR$ChfYG76~I~v~GF4?GMpcImf^sehCDWyarI7suyie z$sMlYQ+}^&;oau+T#WXqHKsDasPigGW$?9uNVQyjmz1MX{HJp`Iwh=BLs0)n%m*hV z22D`7TQ|2b35P&4UHKI}3Tho@13IFwiX!nD%Z9UVc)H75u9$@uUoBX*2)nCMa?zR7 z6Sqn`Nxvn3R|(9)N{FQPn_3|lV!1uRo`ZP)I7|p^fG-O~y6f;eP|Q`vNC$m|)$JEb zn)o)uT`oMOW+}>Vx(T3v0%G9C?U$W@x%74)D4yFvSXl5jp7<`2e<(W!&b9?^H{B6J zUQ{Rs1RozHDTZ5lJ11mkkq-w+7ONLg*MP}^eU(i@fU7Q)ix{R=FRPZkLg0!1?a>XI z^6u%BuN`*CuF8$UNZMKd9Ga#4WoY~9**5l`OzFd2)ULfmbA{ZGJO#=C==ZMAT_9K} zTQfNx!c`G^3Zb=Rm*wYP79x~eKjAEj*qn(Ol{bg7Gqgs_=WqYy5JYJ8%c)q$Ho`no zR}A0Z0PCKbzZpR6hR8voRss&0D+JKAiq(yiwCxgh)BQ;*K@DZs;sxso+Y!P=`fbZU zdydC{fAH^7|47x5H^A3X{!zJR;IK2!6hx?)$Qb6jE^#QQ6FuBqQNAvwQGY&31pD}{ z{*qlT&F~9d3h>&|Kns9AnT$YNSXHOTmWWcQfa<&N7U;b9^E~VkZ)T`OYoNLsWWWFh z<7uvUK&2deh+7~3rAx-|-P{VBX>e=Wq?OC`r#Gv3P;?T4Jt+kLK&EJSe%N*j3#EsP zCd)Pi)~=xn6+X*+i1VQ!qp}Q`_gNcRXvtCRQ+pw+8 zzOer4Q(_mxzHJ%OWJ;4(@TU>Lz@qFj>!I?$#~fEQC-$)Z?@VS*uw<_C{9FI4+5=qM z6@BB{@{|6HfPY6h>?7|qSn;mSeQ@mbJ<*`;o?8PUx8~p`P=!e7E>o#XC#M=aky%Br zH7}wI`zl22vABA@rN1J*x%594M;Z@Uv`SB;sn+sGZ2E zsJCHYW`&6-4Ou4jyR3;RR>`cs?@p`Lj3{Pg%nBF#MQcp=MHDBRz<=XTl_`1zB_tS2 zRE_Jy)D!rzmnre?#?5-(;|ryt5p%?6+uJ~fzjvo=tZ{K=5^|fBBwslUJh?_%nFrz) zRd$>D!**HEKyj;_mejuHgrqT z3%E{L_gQzs5Z~TWHjeZ4quDr*===#+H{5*uYDN_mc%|06`Ambt`0e*v#Z{UM*cJF9 zqp>d;<*E!?tIE@dMHouY_bd4Pxc-53Y1s^FU*|4j0MxQGMg$Icesl05 zVWyvB&%i9`WGvee+nP~W2(|$w8tl1z&4LHMb1DoI=--aAS{rF+g1L@YM2bH#Fg-iy z)!CgXFY=+fH)-U>A5oC4oi?1IMj0T4ve#Q(1!P#ybE?Mva8i0E8@YzgH95TPDhq5D zIQ(){6z@&+N0O!Ci1>N!)Hp0T{1f@((Z{zov1AsB9?+jlI20fe{?<1pg(90|$;fel zy%L)phUSL()9cYUgwc%{;Uo8_t8g?>bEUN4K=B{9WyjWtSBbS?#_38bxT? z!7<0?y&TpZl%gE8%h7##sZEo0phdFFUE@^0D2l4C-ENkBw2kVt>`ywpyVzm2Qha^l zsB}mZeCi?^$~ViKTgS%ao;ogp_$37Y+`l0guflNOntsR4St={Sq@%#B_d3VjpK%-4Ru} zoJRO)ZF+@)F(U5>JF|6Ikg)QL^-WmM(ewCrgFnZS>iB{~09MxIO zO0mP~TUV~D3$X$#rWO!fRH%lhRyI!>hjlhzhUgv?*Uhg!TN5&XS=c}k0yh5C)Ei#| z%M!2Ldu>~h2|v}>Lxz7=oH5TZzxpVr6FVmgso@eR)MH$X`oSE?i2Qkx{((Q)xla*p zt7dORwVFz!6GMmNlxQy>Yg4%UK9<4_4S^GC()IPuNWiRQEgmQzj?MRO^d09N;!;vD zz$_of{rjk`H4u|U`U5xnrzdF~|12K#YyEEoo>^CDJTsl{h)k<%&xkX7JmVP=JGn`K zi{%*aSEZks^|de;?71SVLB4RGn7#TL&gXzbx*Ll{*n0J?5~sQe-NG{x>XEHdJ37Uh z%cYQAhy#fe2{GV2rNo8b^BZgR$%$3v+gWddX&soIf3_v91E)2?73G}c2TC3GA+h?I z)mKqgH7iJ-{`2$W~o$8$i0m3 zSrJLWm=kldUu^6B_Z|vW3*NR*^lgQFM$twvg==dVvmE#^WLJGBZSb33uG~11xw+LS z<%uQ`xuQ-8YgHQ*)V}W9+7|-O*M#fN$68V(Sk;YiCUUy=?^eun;>7oRr*O;VzUSe! zc|WHp{8D0|xywveoibw8@-lJUiX3W*IvuUdlCwpVcgm5P7I@cU_r_?Yw z7rT}E!v=uY83FI*KKRb~9dzxZET`*4Z)mS*@y18N=|Jp^%-p4Vx<@j&?$mFCQ|Nxw zPkDnS6c2>F8zLXUd)_cI?wilqz4JyPNoLMc(!oT^k~bzvyY3a}(7O?>__)bsDoO#G zmlN`~^vnknwVm{8`LIPWcIJ=4{JxB^6A~qe?*%9iBPhZqxY4mv-i)fIs$ok#Xz?Uk zWs9a=r`B4dEmLZOs@nf=wr7e;^S_MGA3aiGX4a_{C)yvu#jsq@%AT&X+O|(4|C8)# zhQ=|X-jEMd2REEHTCKfeZOuAPn;ZJ}-gNU5uj28u|3p({XHtA=O*Bb#$(g#VG3aC`cxh(g#U$>&BX~# z>uVBclFSc6GL{Q>PGs1ovZ;h;aO%6OkQ`cT!UXw)u4+*CB$U`jiTCRD6H_vVdC(uX zTlQR0@1U!+^Az(>#i(s}!yyK=55iU_+d&4Go(M+n8dx!05))y`Opqia;zc%y4vJK@ zle)s^4a+$#ostQWXq&E_?+G6Xg+tn>vETPn;q|$mU+crJ}Fk!~M5;)e~w05#pnyT<9hx_C+Q^61OAHZuuJEq8_uz2P;;bJxYcRm#rSD|brH+>757kVjPn0_4Or z1dKi$cx|UMQQu3=H5Cyn(5LCrbj1BX~~mmyxB`=c=$9M z@^J@d$w;l5Ag3pqWRJ9MV^2SYt7czF(NajfbMFf#B+KMMt`ODt{uP7!q=&9rSwDkF z^RnQThXu&MjH@f|`Y!@W`a_?;0&2hRmz0TN4frQDjz>IrUQb+w4k)*G!qptp- zn?dE$j;OhB5M_|NBI@4!+Lfayik{tr);&yWbfo@szh^KPq*T@r@LY16FY#;ZvlR1& z^Ft$5h~N36JK0mosd=d;=tWl+I9S@RP0ZaE2T~^?4~@$bTvf<_EsmciyqXj?2s189 zP7MO!Q!ax<_@niVW1lQMlaZAMqD^*19js_F2{+Tl6$3GU?Ylzed{$Dmda4O!m~(7o zv38#**KP9Z2)lw9goV6O6%S2YwC2~^Qtq70B3g%sIiuPnbC2r?Wm3+E>`!?@qvB+F zfT6D?o~mcjd}e!E6ntXCbv$1#F1|i*I5ROi{iXKio?3WTpf`46dMo(>;QqCQ2i7p+ zGH=kA*`92|-ImNLhfG=)Jm>^M1TI%1p@38Wua7^m);RPvdei#EnnasdR>{}Dy9Tff>T~IUflpoO ztLYR(Zx1|JHe24JSe9y{@gw(HB52Mk%zwjh@5uH*)XsCwE11-$Y*9#a@Rq@e1i*ic z(FRwyVQFe@r#7FFYt9$uc1HwXt$8hqqX;?yPp0LiJsWHjxquuBdzutehS*(IY@rl%%$yZP-3s1X*=Gd?-sz8B11P%tXZ?xO3E-5N$phm2 z8&mVZO2Vt9nn0AGIN=BIJ-@OGyyKU2I`l1S8yvcD-p5E`@56zynGwuiKsnKfGC$+m z%E|~0`ux(v+)!kndyMU0;dfX)T@Cw!)H|lQI+$vdH?@M)Jy!j#vD(=jywCjrILnudseY#aWuB5Ci1Oi?KMkC>&&R4P)VV2C%It$?;4 z%)!0OW0ax$hR*ugNlp19Tn`sl-J5QoBaH!desBd_X|XqVDs>XDN)N3i!D3JsxW5ctOIQpJLF zjQVpHU2|W1e%E(1c&-$pSLP724m~PC-Os7ErPEH1GV_hg{KGM@fxh!nKf@!zxne25 z$-+=_x26hJUa$s8nS8^*u*Ycb_AZyF!=`H`mk^KG^X!Y=Lbi*^4Ohf=H&IRoa|-cW zA?7r`^?3`2?vE_ozFXd_LCeG@@Yr)C^hjS$yRi#GD?2qj5Y9(As|GyobrJjg3&~BJ ze_Jb7T(%p$Z3zO$?n%z0m%Rzz>vpNcGR5wDPsJX^eOC%pw;dVzm5Mc^^Oyz+N}$3w zi`Ua~)XdS;F({dyz2!?5SkJ`6sl>!|>gCA5+#P?+E5W}-HU)pkr$3ek5Jmx!eP z2%&1L^+-A=l$pp74mGSSyAv1)yayqy)y7T!6KI-@LARNyKp4WVK#zFU=PN-Umt@7* zKSzmESOVvwpXiLm8(xHG{Yjm3vreHVYW4GN$moSm}6yJJ@1 zQMZk9ul5w#Cs$1ku%F3;_@&@iK|XPIDWPnC(Hf;aXuNmxKpCmWN9D>VU{d3YYV;lkDl{H|3^J)^-n!Yb^x#me-(6XE!M&0cBT-^*PoRUR(>9aY-CeSNq4`z#UsNE{Rh`*$p(`yE@({ln4epReuYq}KQC zYf@wIwd#NVwk=$*7j+tAI<_Bw*N-HESBZfa?W+A3=YsaHT6^7|#+U&y=|H@Y|MWBop$*NJ1hdy6;ilTUv<>v3&gZ<^#7 z_Przb%?JGrI5hp&f%}t-Bj9V-cFnqGH1yl_4X{Vu%pw`A*R}h;bWrhk!l46GoBt0N z7yVx@-cg-fZtwolPH!L5wt2-MPxWBJ*p1=>m@gCT>U~1_`N0qLY`LfA;=HJ3QJ@jE z0Io*pZrQKlZ;;vPV9u3wU-x!v75-QEOdijy-t{{wCV9;G-S68`PK%$)(ksQhd%?sX zJYQr2518mW!0rwb9?yt?MI+fy8|8@UXEaT!pi{~(yPrIJeOLR=EKy|$_fYCJZWFxw z`D%%dpb#J4p~ka;YiY$|F{?)>itj;of$bWhJ~qP|@vrF9@ohMCU+06pw4y=ZPEY*Q z9X<-d)8hLH>o($1o9v7#K1R1XUZAW%m*S~^Hgr=ffu`WSSV|IL7xqFg&O3BAZRf@j zw!W%qMrJN#5tYU<&Afxl`mRyY3Ekbi@6O4uvw;`b0cb7gi-bW%+v=VRm~=qel*|IDRs6cVa!<(k{#0HtiO{e+{O`2 zu&(x};jaAOGOTvBu0Ce0qdi}FKyi+7=b0Ky&_!1wb6GPQ8{aXZCaR!jq6}|mwRGlt z$>-D4x{=2Hs^{9w_C!l7N9VdD>`-ubz1YYU3VQugQ%{?H zIhXBZ&%WR!P~v8^v@d{q9rgIA`p9YWHfuyzuyzEUx&=b5V;${2Z1($8%elM>mL70i z+7WJaaE(?>OuT zIfr~F9J!!K5ZHEC<^BidniDd5pIk7iG5FWu0ukpX=IvxHzl;av6)2Dsu&yJj^v`>7 zd7g;yz}EMvs%R3UK_k9BPxyYxrZj)=U!LdIrgG=&f5dQ@1!ghG-{RsymFbffQRTy> z@9&E?Wp49fjfm{(Wsej4Ce(f%16@!y8Gf=woVWT(s4wZdKM8fuKu-yV3)^b#epp1p z+$A-zxr}!S(HnNmVnFCayP2!WOM3+B^E4YR`@5L=`j)58@fP1mkUM+&`z?Z8z#9hn z_r=wcxP)HR7hK8~V)vQLl!O$82s3>DJ;ZO*Abg>_hYKw?NJ7!Z}qO!<5VOxwnVJEy? zi2?HbK5EEwBh((O`Lm6CyM49S{B6A*fv1t8R@6K{%E0SfqoOTr;~qoxXefFs2fO6mwhO{IFXL0 zXV_%Tp_4sHUg~D_DG@EVuFL&By3Ft3c@Ly_juwvNB4L7_@*@(Jh_kFojl+m?+h9E4 zaw}iq@M_AMBNr?{f3ju#th48XJO_^s*P@Xi*n((!67iG9=Be;?7SMS=mm<;``PA&9 z$t?E+{Zdqy`utlrziA~!fvG9j2}QfNL0AAlid^>)@m5O6lpXv9*tCV4 zwQRfDqxxX_))C|8t|^B#Nwme8zN2Mgyxsi~Eoq0%mcYwpA45FMCK1>4`zhsRJZY9@ zlJGW+?F?=Z*{^9K>4;~@W5ob9ZT(3g{TZM@oT(>k<8A})A!7>qqD1YrmNrsU>_>rOpboI!}PB#CFwHvK67na*xQU%;BV$N7cu^P z1BjcPUgqaUP*pXeuXM{0ZDx(t;sScy_~3W#{s?zG_jFB3e0+-IZCa={J!uMu9e21t zDU<~~@KDD`ck!-eRi8+{4uOGgLVN3s6Df+B)|nQZN4Zl`3=Ll=C`s1>CH$u*1fO$% zXQGxx_IHvLw0;ADurdLr1J6qcXj5)Kkx>zV!K#zr}m~KG~E&a^uhGyo23C}G#6B0DYJG5`HwWtABqBt5r-W)mjvAc z#M+xmZJyVWI064^9SRMpmnt@sLS_`VsWxV_;zmD1@d^czX`{Sc76gB;BVmu3S%N05 zt-ClFsWwFu61Z|LFwfmodLyxpFOnwEH_K`NBq#A&m*8xgxrxmD(!(njM1;*Tb^ElEs5sHJP4=rF_XcwF>?-AyqdIoQpnaS%h2I`-z< zHNF(UZ2B2NIJm*T8wGjd{;X_3L(9`9K=;EuFYo2Ip&=lg^DMa%RL z%IF-_4yo_!nVicu@(PQi(i?Guq8$DO@=9uX)Z3dd{z1;|b6(VJM(sByfa0z>ODQlU zT=tXv^{8oE0U<;B0{&x34a8tI^us$j85!ENA|2ut0%pl;+A~fCD4*%?5&W+*Nzwy$ zs>Gqr4|VP^Gal{#8>;Sz&;>E3j1I7?k7a1+(gDt+v-g3P>l)HIk>3})J><9aBa~_$ zoclH`&L#((`YK&urg_rLX1&lPS=ia?K1yGK(fzi7fqV@e|7>EW<_S_=xF-MP3>WeU zBLs#u;o*^SRuILo#Xp2*rb!76XO)!U@)##CEM|>m2_uRHNr@FGD!kJ#RrHcu)_yxV zMVx;ICDeX3pK46dMF4__1@zqIO6Di`*pdTIt&BEs`|GI1>QI)ch!nE5`NdlbecbMV zFnEzkk7*1;fI2NrmJI1IqDMit+~KjIIJEGhp`pRrXHjc(GE0%rE!bT#Q_gl`cJf?z z;z20FANA4$w;)1<%SoUZ?l4|3{h%1g2G9oZHWojN{1!!)gx%}KTVEqYQW3$T;E+uq z8A$sv?T``2H=xlL{WGi0-mENZ!`-0(|3GTLAt4Z+Ko4WBeaV5_aYm1~ zz&ih0R|>x`?r-25)At8e!--*s#~I*dE)uWO;v~O|osgywU8LUFXJ|JvJ#UXZ=5HnX z9nk((au;l9dqyX7PbFB8ubZ1N+Ew9ej5%(|eOj9QwbZcX%1n^9WlAyV3iK=l!~_&{ z$iLBbawcuWcqo5QHt=~k`NlX8_;3pM!wq-@#GQ)?*zwrpN5YWj_MkMeL9~3^o3o^i zbN?uWNA5o}Xp18F1~;eAX<4h-PLDfa;Pai}8CSw+RQTe&VafqNcxjONYqcb4lYPwS zo<~)jN`KK-^nIC>is~^4`*lbcH zlNNMuSt3I|qb?L%>~WvO=@*uDX|0o#Eok;clrV?KSs>RXMT@0yXh(N;u1ws{ZawkeSJl ztff^TV`@HhDXw8ui&f>VC>1eJ09qU1XP zV{@aoChIs#c%F9hs3E}=vSqq~DxdXc1rC~_XJT$mw~)_s`XUZt*fLi1i`F&92H3*} z;zhuYk;Jm*%n1zXp~HJu3NdD(dXz&;=38E;q>ns0? zZ5LpE3g5Z41@uT+$Wd3=^!KRCab?`WKMUS55sa)&Ej;I{Fn7+KPLG0Zp9UF?6cWz; z61AmXtTX{^lhm<*ddRUbxbfMBJ zBFWs-s(jE%knp11>|-O_6iJq`5kpV*T$iY|Uf@I1^GaX@u049$*%|J|c8~<6L&n>y zq|YL-D0owIHq6(ZkE_tUDue);l z6MnKU*WPI0-bo0hOtcdV3e*;F%de}4HA*+P{ZhZ?too{b-DS08__>E~qt*aJN)riz z1dFpP28{&ZYY#K7G{`6Rlp;Ne6k;zVgtbViEl%*{hXui3{c+gDo3`HqbF42d3#b!X zG35M$vJsv|owC`$YtV95Q#vlF4PlRwR<$6Wcp zlSF=pz6d%kHe2KbS(in8tFF~uEc_M;>beaaG$lh$#dEpYa-qnVFj<==r=|d> zZ}L|R@XRslE!I}KE!9p5v`byzsP7NWI!!dvg(Q~Lx2ZVeWOaivr*3i>3w%A5Y1ftu zDPYl&*?Si=J}78a$6S~6&iMoG#wqQanHfFjQFEVvZqF(m1FpFprWj}fn zD}Q?KOwCG2{*v~^K5PQdroPH-wJr7k81}7asBuy<%iKYrR7-2tZ+d4j&`^M--3aKz z6K6y|PG8z>-@g@b^RYMjeyGJ&r?1qj*PREz=Sn2!P1toLp>^3NPgX06P6V~HII(n% zXbM4*|42B!aK|@{lKr8yO$9D60@WD1L1s9-kbvZ=&{F(aaPJll*{XF<)H^nP*#S`b z!BHR~R#aOKdshGL=s`kFp510o#;drMkuS-h+Ta&p2aELQM;0&r1dfpC02JjO*B2}x zh|=0pe2O42%@cb_k#gFbT;mcqd^!7o}(( zxA|KOp%(&)as)qyAy#__|F4}i6F12hHjRGW2E0dXM`$#3Y9h{RH@v^H$w=h@Yd6cm zK^s$gFg|``tQT*%L z`0dpWGjT52Vw?|H4R$>AqfMkFUYXXuY8`<0Q~lOci)}TU*c5EK3HXbF_58Ce+WkV? zG}L$OQ(S!8C&^TwWuGo=@w&aOuC!I`QG&!Ibj8Y&9~`>O9I8X}ZLkFRzd#+>qSian3;{h%dK| z(LxYD%rui`Mz+tYN_n(Nx5$|=y z8gvY&fkIGsP6$lpS5-orpjA%L#zrKyzeM3GnA|pBZiS$W>|jjVtWnm>e9IBU2)S(n zoRtwvyWoaAv$(V_8shdH#i&aWor6`v&*#a{zuREeY@8d5KFm&FO}6Juu7cQg%EQfG zFJzl+Cj`4H{2h7`Z%7UX?B-6jr=!5y1L_Zp1yWOlh9z*UYOc^eWH-il&?4l&tGSWh z9%W5YY-4d?Uwcn_@ZLp*BGfZbj=Jnh>hDQ|9b-uS91Z&`DOVsrN|xOWfxpr?BzLjZ zXDlKo7nE`ywr3ltrGBKHmYwYq)OZ}F&iaQ;N)ccCS9ZPz3(=A{@YS^ol*2sB>+CDz z5A`>v)-(t{O8($vmU|v+i$MOLe(`wHOBkks{UQW(c+XDfY*Rsjx zeWgv#@%yq>1sA+v^=D0K?^8%(3n8~O2Sw@AH#5|!-BS6Y>LrEk4}RM)6wGW~>$cr2 zjFu&sFVKI>*k-f0XI!)3BrZqTor? z+}P0-RIq{INp!bHY~|q#>(zODryZRUA%22$_}!qIBD}Vn4)F3!*&S4bhhJ;*2;RQC zki!gd*dV{N!7${))cp_OX3^B@52|nx{g3vQC<_u4lj)x*<{#kR2zSJs{9p0wHq^Fl zpHy%L95*^tGqeJhTX7@vh3Ni?w(~C#kbeHYW8<>RiyiQ!Bd$Q`$LHC-=3YGv=^7rGJfpn1Kdk4Fu#mj+2Ib7rYuaJ(?4j2DVC%kTm@R zm&|QcI8Zdy6_ouyuh*l1lA`pJZ(Du3cl;0Eey?LRe0l6g4$O~On|20133rxkgZh`g zb0;yl4dvUo8WA_cu$E*E7fAl^wa6Dmgs1}foA}iE*e~s3ENkMjr7Ya@u|hGctM#tj(RlMay-$C`fPmJT5`LS6?}?vkuY;rf zg4r_9`IUkGNBtWD>`4@Y9wlD+M9%qWYxlD7?p!h_aD&hHuiU=Wj$8v ziQ7j@dXXu+JL8Xnj}~GvZFYCsXN#Y+Vyp^C1wNZ*r{W%n4;kk^vu^cLq}g)MbC2s3 zFs`4N+bL2`Q1#h>(4;p3(iZ!1EvSRhEA|rmDUQU}{5?Rc|B`6&HO~U4|3y|{YMhxz z0A%;{=<3h1KYr_oah)4>6eJ5;EeT_tR%+fw?Utv7E~%8wSMcu%*WXj4?RlxAV=(|A z3mmOmqdTe`aT`Wy+~fkn0q%PBHw5WLtr?o}JmIK?i<#^Sj-518B=`Kj;VNWnJ=`WT z&mPpGG*!2{+3AIRWMZs~$-(fBVyh%N>14JGDd``EUlFRo%-KWM9~%g7&W+e5;MHd# zD#54j7jUU5F;%JAX9ugaN#ORYdj;(#KqTrKvlPY+M1?iaF zheEYgwJTp@X{>mo~ZyBwZcmp-^!99~bMvs&Pk(})8T`l1+`EA0JieXD`;SE_MBzF$5w zMXyx@;XA*oYb&u=^rv-NEe<(!3e9t)=@?{0x)uiHerfj||FWy@C-8z2Y{}BM%o*FC z+TnkCZrtS_>}{`eqRlN1ri7^gE-;>#+Oh2?N$KV1}D>3cPeAjWqSpm>N%xtEqe=n1>rXFu13X>pWm#jXUd zcFX8Lx3~A3SlB~0UN}DAI+yry)mtN=4OXpu2|^g!R~R4B;yy7sz}LkAU==4TY5sw3 z6%Mr8W*77c+RP+4%b&8N{iFzM8NRzJObFvBOKszX8g_ z+3f=uBS=cA7iTW*so^(xepJ}sVo2KgRs?V@cXgk?<^F8_(%%xbxdGemzQNo73%ZHQ z)?zxrHNN$YLoNg4eE&c<%&vHC8kTYkz#>=2g~CHXyG!Ib|>QW$XYvx z0vzeV>mz0^i2D~`cqJX-pasxTY9U_8(2%#K-CC#-M{E>K7ERT}3d((rf1JCl_H6oz zwZq$OJ6@uhkZLt8yWZMjWuDXt2}vsQ(3g%5mG_S|u)l{D;=Ao})0Xh-S?9G!cHqq~ zr|@MQV8IP!a zc*VNERDby{BZcwxl>O$~3}1^H*Q`p(`pQqq7RRaYS^wmKgYE;+C?I>R_J3gL0tE_? zM2f8er^sJ0h&#wJy_bXnzgSe&T5Yq)X7YVmqFzb}Bw+PzVCQ^l}g}TW_8WR}@8k55hmHvlx_w?Y$hC{3od&W|D{ZvsG ze9$EqwE$1UyXl3@hwFww<8YeHlmCkoo5>^IBKlMo-ZEr%BXR&AM5g14k2!Q8S$9`Ffq_{5fP?BIq&8_lYYlB81^n^29%F2g!7VWri%tat$XBgMJbFT$ zAb=&rD?3!FOY!7vy1yJFM&K0L$ht62aCzKM@;UgXC=aI@8Av@iP#?~2B|Vtj2pSUSCt*1*6sP|Lr4Rp#Ax)B|u=FBuXt*-?Av|fX?iCh5N!4ttS z^%Z2?$GBa2ar2NT%k~FZ8qRAa^Q-0htN$ZRv%VSqK>AZ4{tt2+IM!CdkkvZfzTFbl z)`@WM%Bg?gNI2t?3roXFXFx&mAE7>n6AO7oDD{BC%5}eAGdpa&$aT^tk2wQ=usk4J ze?k7~yU)zB$M}drKrH0{Pr%*m1_$~<@E^jRlE(x})to~O`td(CT$?|)ZNUEDT`4@Q zpaj5mi#5p;XcHyH7b$|l0~C^=AQPQW=uI}@i`N+^K0c1lZinGOd@y{@Q)d*2z8b5) zUyDx83(ghI?FDh^S#xF^-MQGleCCs*5gJr=;_)RuH7@X}xUKD@{Nm)I{KU88_Lh4C z%y0fl4)ia>mL9}gg&%-^bqV$%+5^BnF$17~8Mgq4w;I13m?t6s2ngS=TZaCRFdPs} zs4YLX*!&;iIuy3v!DJwk;k21*W%XNo;QWhwr2SREDj=&-T9mfv{3{>@N$jI~pdke* z?5lcQz!u@xNNUBm#QifMY_Zho?IU{l{Iwu$(VxP4sQf3uv>=+`))?($dgT3ez<_qh z3(O~Be`2(!)E**#aIi=CNSH`?Sr~8WtywT3>MLCTLr7her_7!y__u(bF|clitDilK z90(RTv(taEy2gl}=cAxQk*2NfhFr2|- zSyR?OX={W%Gzxo$Bz{tv0DceY!Yj)Zf8;H=JBlw>k7z1!Pd^X8pG57aO<5g@-%u)n z1fw4{3iuO46ZDlw3uX^?YDbtW2=h%xO6n`w8p2kJy%~sJp9d(xHm!vFH@#j9&^Njc z?4FwIJ>~+KE&7(&5m&0c_eE5&C&UhVznc7Ilz-9hz=&0(KSiMveLTN?{;W$ zQgOMD8yy`j2vL*?sI`J#H(smeXj&nq$8}i5tt74TTq+-O(8lA%h+ay1f2cLEHt;{Y ziNvi)MXyKY!ZD2nssiL0FfL>&AVqyb6uE_2dg-J&yu)NQ;0>}2#Fqqi)H_4wSMi(C zVeJg$?byumXYj?(TNLraH950qZlrme`v>J`2xZ&Q1#B}&hIzRyNGn;!!L5BsaGTb{ z&1&bvlUfFI5B)Lu%?r(PX)6$%hWW#Ys0|bZ!Wx>u*svOas(weU{+p%2tno?~g8Ch3 zL~h&PXsBaFP81a;&dH*x6l?T|2wqE#MmJ%i@@xFdcs~o#g5GBKqhMrYQa(+H%`u}0 z@?pwH85%7YS2%mK*7>y-$j7ORK&^($;rLaeSRHHDqgGWDW7{#&>I{8UTu|xb%#*$3 zQw3qITn&8yicEH?r3Ln{!bz0H+x<#j*=W@3_J!qt8h4XVW%0DYCNRz@v^k`B^nX`a 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 diff --git a/zone1/main.c b/zone1/main.c index c1019b0..5348d0c 100644 --- a/zone1/main.c +++ b/zone1/main.c @@ -12,36 +12,27 @@ #define MIN(a,b) (((a)<(b))?(a):(b)) -typedef enum {zone1=1, zone2, zone3, zone4} Zone; - #define BUFFER_SIZE 32 static volatile struct{ - char data[BUFFER_SIZE]; - int r; // read - int w; // write + char data[BUFFER_SIZE]; + int r; // read + int w; // write } buffer; int buffer_empty(void){ - return (buffer.w==0); + return (buffer.w==0); } +typedef enum {zone1=1, zone2, zone3, zone4} Zone; + static char inputline[BUFFER_SIZE+1]=""; static volatile char inbox[4][16] = { {'\0'}, {'\0'}, {'\0'}, {'\0'} }; -int inbox_empty(void){ - return (inbox[0][0]=='\0' && inbox[1][0]=='\0' && inbox[2][0]=='\0' && inbox[3][0]=='\0'); -} -// ------------------------------------------------------------------------ -#ifdef E21 - static void (*trap_vect[173])(void) = {}; -#else - static void (*trap_vect[__riscv_xlen])(void) = {}; -#endif __attribute__((interrupt())) void trp_isr(void) { // nmi traps (0) - const unsigned long mcause = MZONE_CSRR(CSR_MCAUSE); - const unsigned long mepc = MZONE_CSRR(CSR_MEPC); - const unsigned long mtval = MZONE_CSRR(CSR_MTVAL); + const unsigned long mcause = MZONE_CSRR(CSR_MCAUSE); + const unsigned long mepc = MZONE_CSRR(CSR_MEPC); + const unsigned long mtval = MZONE_CSRR(CSR_MTVAL); switch(mcause){ @@ -91,6 +82,7 @@ __attribute__((interrupt())) void trp_isr(void) { // nmi traps (0) asm ("j _start"); } + __attribute__((interrupt())) void msi_isr(void) { // msip/inbox (3) for (Zone zone = zone1; zone <= zone4; zone++) { @@ -100,19 +92,21 @@ __attribute__((interrupt())) void msi_isr(void) { // msip/inbox (3) } } + __attribute__((interrupt())) void tmr_isr(void) { // timer (7) const unsigned long mcause = MZONE_CSRR(CSR_MCAUSE); const unsigned long mepc = MZONE_CSRR(CSR_MEPC); const unsigned long mtval = MZONE_CSRR(CSR_MTVAL); - write(1, "\e7\e[2K", 6); // save curs pos & clear entire line + write(1, "\e7\e[2K", 6); // save curs pos & clear entire line printf("\rTimer interrupt : 0x%08x 0x%08x 0x%08x \n", mcause, mepc, mtval); write(1, "\nZ1 > %s", 6); write(1, inputline, strlen(inputline)); - write(1, "\e8\e[2B", 6); // restore curs pos & curs down +2 lines - CSRC(mie, 1<<7); // disable one-shot timer + write(1, "\e8\e[2B", 6); // restore curs pos & curs down +2 lines + CSRC(mie, 1<<7); // disable one-shot timer } + __attribute__((interrupt())) void uart_isr(void) { // uart #ifdef PLIC_BASE @@ -130,6 +124,7 @@ __attribute__((interrupt())) void uart_isr(void) { // uart #endif } + __attribute__((interrupt())) void dma_isr(void) { // dma #ifdef DMA_BASE @@ -146,9 +141,119 @@ __attribute__((interrupt())) void dma_isr(void) { // dma } -// ------------------------------------------------------------------------ +int inbox_empty(void){ + return (inbox[0][0]=='\0' && inbox[1][0]=='\0' && inbox[2][0]=='\0' && inbox[3][0]=='\0'); +} + +int readline() { + + static size_t p=0; + static int esc=0; + static char history[8][sizeof(inputline)]={"","","","","","","",""}; static int h=-1; + + int eol = 0; // end of line + + while ( !eol && buffer.w > buffer.r ) { + + CSRC(mstatus, 1<<3); // CSRC(mie, 1<<11); // PLIC_REG(PLIC_EN) &= ~(1 << PLIC_SRC_UART); + const char c = buffer.data[buffer.r++]; + if (buffer.r >= buffer.w) {buffer.r = 0; buffer.w = 0;} + CSRS(mstatus, 1<<3); // CSRS(mie, 1<<11); //PLIC_REG(PLIC_EN) |= 1 << PLIC_SRC_UART; + + if (c=='\e'){ + esc=1; + + } else if (esc==1 && c=='['){ + esc=2; + + } else if (esc==2 && c=='3'){ + esc=3; + + } else if (esc==3 && c=='~'){ // del key + for (size_t i=p; i0){ + p--; + write(1, "\e[D", 3); + } + + } else if (esc==2 && c=='A'){ // up arrow (history) + esc=0; + if (h<8-1 && strlen(history[h+1])>0){ + h++; + strcpy(inputline, history[h]); + write(1, "\e[2K", 4); // 2K clear entire line - cur pos dosn't change + write(1, "\rZ1 > ", 6); + write(1, inputline, strlen(inputline)); + p=strlen(inputline); + + } + + } else if (esc==2 && c=='B'){ // down arrow (history) + esc=0; + if (h>0 && strlen(history[h-1])>0){ + h--; + strcpy(inputline, history[h]); + write(1, "\e[2K", 4); // 2K clear entire line - cur pos dosn't change + write(1, "\rZ1 > ", 6); + write(1, inputline, strlen(inputline)); + p=strlen(inputline); + } + + } else if ((c=='\b' || c=='\x7f') && p>0 && esc==0){ // backspace + p--; + for (size_t i=p; i=' ' && c<='~' && p < sizeof(inputline)-1 && esc==0){ + for (size_t i = sizeof(inputline)-1-1; i > p; i--) inputline[i]=inputline[i-1]; // make room for 1 ch + inputline[p]=c; + write(1, "\e7", 2); // save curs pos + write(1, "\e[K", 3); // clear line from curs pos + write(1, &inputline[p], strlen(inputline)-p); p++; + write(1, "\e8", 2); // restore curs pos + write(1, "\e[C", 3); // move curs right 1 pos + + } else if (c=='\r') { + p=0; esc=0; eol = 1; + // trim + while (inputline[strlen(inputline)-1]==' ') inputline[strlen(inputline)-1]='\0'; + while (inputline[0]==' ') for (size_t i = 0; i < strlen(inputline); i++) inputline[i]=inputline[i+1]; + // save line to history + if (strlen(inputline)>0 && strcmp(inputline, history[0])!=0){ + for (int i = 8-1; i > 0; i--) strcpy(history[i], history[i-1]); + strcpy(history[0], inputline); + } h = -1; + write(1, "\n", 1); + + } else + esc=0; + + } + + return eol; + +} + void print_sys_info(void) { -// ------------------------------------------------------------------------ // misa unsigned long misa; asm volatile ("csrr %0, misa" : "=r"(misa) : ); @@ -218,7 +323,6 @@ void print_sys_info(void) { } -// ------------------------------------------------------------------------ int cmpfunc(const void* a, const void* b){ const int ai = *(const int* )a; @@ -226,7 +330,6 @@ int cmpfunc(const void* a, const void* b){ return ai < bi ? -1 : ai > bi ? 1 : 0; } -// ------------------------------------------------------------------------ void print_stats(void){ #define MHZ (CPU_FREQ/1000000) @@ -292,9 +395,7 @@ void print_stats(void){ } -// ------------------------------------------------------------------------ void print_pmp(void){ -// ------------------------------------------------------------------------ #define TOR 0b00001000 #define NA4 0b00010000 @@ -364,7 +465,6 @@ void print_pmp(void){ } -// ------------------------------------------------------------------------ void msg_handler() { CSRC(mie, 1 << 3); @@ -396,7 +496,6 @@ void msg_handler() { } -// ------------------------------------------------------------------------ void cmd_handler(){ char * tk[9]; tk[0] = strtok(inputline, " "); for (int i=1; i<9; i++) tk[i] = strtok(NULL, " "); @@ -530,122 +629,22 @@ void cmd_handler(){ } -// ------------------------------------------------------------------------ -int readline() { -// ------------------------------------------------------------------------ - - static size_t p=0; - static int esc=0; - static char history[8][sizeof(inputline)]={"","","","","","","",""}; static int h=-1; - - int eol = 0; // end of line - - while ( !eol && buffer.w > buffer.r ) { - - CSRC(mstatus, 1<<3); // CSRC(mie, 1<<11); // PLIC_REG(PLIC_EN) &= ~(1 << PLIC_SRC_UART); - const char c = buffer.data[buffer.r++]; - if (buffer.r >= buffer.w) {buffer.r = 0; buffer.w = 0;} - CSRS(mstatus, 1<<3); // CSRS(mie, 1<<11); //PLIC_REG(PLIC_EN) |= 1 << PLIC_SRC_UART; - - if (c=='\e'){ - esc=1; - - } else if (esc==1 && c=='['){ - esc=2; - - } else if (esc==2 && c=='3'){ - esc=3; - - } else if (esc==3 && c=='~'){ // del key - for (size_t i=p; i0){ - p--; - write(1, "\e[D", 3); - } - - } else if (esc==2 && c=='A'){ // up arrow (history) - esc=0; - if (h<8-1 && strlen(history[h+1])>0){ - h++; - strcpy(inputline, history[h]); - write(1, "\e[2K", 4); // 2K clear entire line - cur pos dosn't change - write(1, "\rZ1 > ", 6); - write(1, inputline, strlen(inputline)); - p=strlen(inputline); - - } - - } else if (esc==2 && c=='B'){ // down arrow (history) - esc=0; - if (h>0 && strlen(history[h-1])>0){ - h--; - strcpy(inputline, history[h]); - write(1, "\e[2K", 4); // 2K clear entire line - cur pos dosn't change - write(1, "\rZ1 > ", 6); - write(1, inputline, strlen(inputline)); - p=strlen(inputline); - } - - } else if ((c=='\b' || c=='\x7f') && p>0 && esc==0){ // backspace - p--; - for (size_t i=p; i=' ' && c<='~' && p < sizeof(inputline)-1 && esc==0){ - for (size_t i = sizeof(inputline)-1-1; i > p; i--) inputline[i]=inputline[i-1]; // make room for 1 ch - inputline[p]=c; - write(1, "\e7", 2); // save curs pos - write(1, "\e[K", 3); // clear line from curs pos - write(1, &inputline[p], strlen(inputline)-p); p++; - write(1, "\e8", 2); // restore curs pos - write(1, "\e[C", 3); // move curs right 1 pos - - } else if (c=='\r') { - p=0; esc=0; eol = 1; - // trim - while (inputline[strlen(inputline)-1]==' ') inputline[strlen(inputline)-1]='\0'; - while (inputline[0]==' ') for (size_t i = 0; i < strlen(inputline); i++) inputline[i]=inputline[i+1]; - // save line to history - if (strlen(inputline)>0 && strcmp(inputline, history[0])!=0){ - for (int i = 8-1; i > 0; i--) strcpy(history[i], history[i-1]); - strcpy(history[0], inputline); - } h = -1; - write(1, "\n", 1); - - } else - esc=0; - - } - - return eol; - -} - -// ------------------------------------------------------------------------ int main (void) { - //while(1) MZONE_WFI(); - //while(1) MZONE_YIELD(); - //while(1); + // enable interrupts + CSRS(mie, 1<<3); +#ifdef PLIC_BASE + CSRS(mie, 1L< ", 7); while(1){ @@ -711,5 +685,3 @@ int main (void) { } } - - diff --git a/zone2/main.c b/zone2/main.c index 84f2e8c..d140192 100644 --- a/zone2/main.c +++ b/zone2/main.c @@ -15,13 +15,8 @@ static volatile char inbox[16] = ""; -// ------------------------------------------------------------------------ -#ifdef E21 - static void (*trap_vect[173])(void) = {}; -#else - static void (*trap_vect[__riscv_xlen])(void) = {}; -#endif -__attribute__((interrupt())) void trp_handler(void) { // trap handler (0) +__attribute__((interrupt())) void trp_isr + (void) { // trap handler (0) const unsigned long mcause = MZONE_CSRR(CSR_MCAUSE); @@ -39,12 +34,14 @@ __attribute__((interrupt())) void trp_handler(void) { // trap handler (0) for(;;); } -__attribute__((interrupt())) void msi_handler(void) { // machine software interrupt (3) + +__attribute__((interrupt())) void msi_isr(void) { // machine software interrupt (3) MZONE_RECV(1, inbox); } -__attribute__((interrupt())) void tmr_handler(void) { // machine timer interrupt (7) + +__attribute__((interrupt())) void tmr_isr(void) { // machine timer interrupt (7) static uint16_t r=0x3F; static uint16_t g=0; @@ -68,7 +65,8 @@ __attribute__((interrupt())) void tmr_handler(void) { // machine timer interrup MZONE_ADTIMECMP((uint64_t)5*RTC_FREQ/1000); } -__attribute__((interrupt())) void btn0_handler(void) { + +__attribute__((interrupt())) void btn0_isr(void) { static uint64_t debounce = 0; const uint64_t T = MZONE_RDTIME(); @@ -81,7 +79,8 @@ __attribute__((interrupt())) void btn0_handler(void) { BITSET(GPIO_BASE+GPIO_HIGH_IP, 1< #include "multizone.h" -__attribute__(( interrupt())) void trap_handler(void){ +__attribute__(( interrupt())) void trap_isr(void){ for( ;; ); @@ -11,13 +11,9 @@ __attribute__(( interrupt())) void trap_handler(void){ int main (void){ - //while(1) MZONE_WFI(); - //while(1) MZONE_YIELD(); - //while(1); - - CSRW(mtvec, trap_handler); // register trap handler - CSRS(mie, 1<<3); // wake up on msip/inbox - CSRC(mstatus, 1<<3); // disable global interrupts - no irq taken + CSRW(mtvec, trap_isr); // register trap handler + CSRS(mie, 1<<3); // wake up on msip/inbox + CSRC(mstatus, 1<<3); // disable global interrupts - no irq taken while (1) {